/*
This file is part of Ext JS 5.0.0.970

Copyright (c) 2011-2014 Sencha Inc

Contact:  http://www.sencha.com/contact

GNU General Public License Usage
This file may be used under the terms of the GNU General Public License version 3.0 as
published by the Free Software Foundation and appearing in the file LICENSE included in the
packaging of this file.

Please review the following information to ensure the GNU General Public License version 3.0
requirements will be met: http://www.gnu.org/copyleft/gpl.html.

If you are unsure which license is appropriate for your use, please contact the sales department
at http://www.sencha.com/contact.

Version: 5.0.0.970 Build date: 2014-06-01 15:45:20 (660862da42511e0f769c1d37b9fd8e156edd73eb)

*/
var Ext=Ext||{};if(!Ext.Direct){Ext.Direct={}}if(!Ext.Toolbar){Ext.Toolbar={}}if(!Ext.app){Ext.app={}}if(!Ext.app.bind){Ext.app.bind={}}if(!Ext.app.bindinspector){Ext.app.bindinspector={}}if(!Ext.app.bindinspector.noconflict){Ext.app.bindinspector.noconflict={}}if(!Ext.app.domain){Ext.app.domain={}}if(!Ext.app.route){Ext.app.route={}}if(!Ext.button){Ext.button={}}if(!Ext.container){Ext.container={}}if(!Ext.core){Ext.core={}}if(!Ext.dashboard){Ext.dashboard={}}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.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.dd){Ext.dd={}}if(!Ext.direct){Ext.direct={}}if(!Ext.dom){Ext.dom={}}if(!Ext.dom.Element){Ext.dom.Element={}}if(!Ext.event){Ext.event={}}if(!Ext.event.gesture){Ext.event.gesture={}}if(!Ext.event.publisher){Ext.event.publisher={}}if(!Ext.flash){Ext.flash={}}if(!Ext.form){Ext.form={}}if(!Ext.form.Action){Ext.form.Action={}}if(!Ext.form.action){Ext.form.action={}}if(!Ext.form.field){Ext.form.field={}}if(!Ext.form.trigger){Ext.form.trigger={}}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.fx.target){Ext.fx.target={}}if(!Ext.grid){Ext.grid={}}if(!Ext.grid.column){Ext.grid.column={}}if(!Ext.grid.feature){Ext.grid.feature={}}if(!Ext.grid.filters){Ext.grid.filters={}}if(!Ext.grid.filters.filter){Ext.grid.filters.filter={}}if(!Ext.grid.header){Ext.grid.header={}}if(!Ext.grid.locking){Ext.grid.locking={}}if(!Ext.grid.plugin){Ext.grid.plugin={}}if(!Ext.grid.property){Ext.grid.property={}}if(!Ext.layout){Ext.layout={}}if(!Ext.layout.boxOverflow){Ext.layout.boxOverflow={}}if(!Ext.layout.component){Ext.layout.component={}}if(!Ext.layout.component.field){Ext.layout.component.field={}}if(!Ext.layout.container){Ext.layout.container={}}if(!Ext.layout.container.border){Ext.layout.container.border={}}if(!Ext.layout.container.boxOverflow){Ext.layout.container.boxOverflow={}}if(!Ext.list){Ext.list={}}if(!Ext.menu){Ext.menu={}}if(!Ext.mixin){Ext.mixin={}}if(!Ext.overrides){Ext.overrides={}}if(!Ext.overrides.app){Ext.overrides.app={}}if(!Ext.overrides.dom){Ext.overrides.dom={}}if(!Ext.overrides.event){Ext.overrides.event={}}if(!Ext.overrides.event.publisher){Ext.overrides.event.publisher={}}if(!Ext.overrides.util){Ext.overrides.util={}}if(!Ext.panel){Ext.panel={}}if(!Ext.perf){Ext.perf={}}if(!Ext.picker){Ext.picker={}}if(!Ext.plugin){Ext.plugin={}}if(!Ext.resizer){Ext.resizer={}}if(!Ext.scroll){Ext.scroll={}}if(!Ext.selection){Ext.selection={}}if(!Ext.slider){Ext.slider={}}if(!Ext.sparkline){Ext.sparkline={}}if(!Ext.state){Ext.state={}}if(!Ext.tab){Ext.tab={}}if(!Ext.tip){Ext.tip={}}if(!Ext.toolbar){Ext.toolbar={}}if(!Ext.tree){Ext.tree={}}if(!Ext.tree.plugin){Ext.tree.plugin={}}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.ux){Ext.ux={}}if(!Ext.ux.form){Ext.ux.form={}}if(!Ext.ux.layout){Ext.ux.layout={}}if(!Ext.view){Ext.view={}}if(!Ext.window){Ext.window={}}(function(j){var l,n=["constructor","toString","valueOf","toLocaleString"],k={},q={},b=0,h,c,p,g,m,a=function(){var s,r;c=Ext.Base;p=Ext.ClassManager;for(s=n.length;s-->0;){r=(1<<s);q[k[r]=n[s]]=r}for(s in q){b|=q[s]}b=~b;Function.prototype.$isFunction=1;g=Ext.Class.getPreprocessor("config").fn;m=Ext.Class.getPreprocessor("cachedConfig")&&Ext.Class.getPreprocessor("cachedConfig").fn;l=c.$staticMembers;if(!l){l=[];for(h in c){if(c.hasOwnProperty(h)){l.push(h)}}}j.derive=d;return d.apply(this,arguments)},e=function(z,v,y){var s=y.enumerableMembers,w=z.prototype,u,x,t,r;if(!v){return}z.addMembers(v)},o=function(v){var r=function u(){return v.apply(this,arguments)||null},t,s;r.prototype=Ext.Object.chain(v.prototype);for(t=l.length;t-->0;){s=l[t];r[s]=c[s]}return r},d=function(w,z,V,r,y,J,x,S,u,L,D){var s=function C(){return this.constructor.apply(this,arguments)||null},U=s,t={enumerableMembers:r&b,onCreated:D,onBeforeCreated:e,aliases:S},H=V.alternateClassName||[],Q=Ext.global,G=!!(p&&p.addAlias),M,P,R,F,O,Y,X,v,N,B,T,K,E,W,I=p.alternateToName||p.maps.alternateToName,A=p.nameToAlternates||p.maps.nameToAlternates;for(R=l.length;R-->0;){X=l[R];s[X]=c[X]}if(V.$isFunction){V=V(s)}t.data=V;B=V.statics;V.$className=w;if("$className" in V){s.$className=V.$className}s.extend(z);N=s.prototype;s.xtype=V.xtype=y[0];if(y){N.xtypes=y}N.xtypesChain=J;N.xtypesMap=x;V.alias=S;U.triggerExtended(s,V,t);if(V.onClassExtended){s.onExtended(V.onClassExtended,s);delete V.onClassExtended}if(B){for(T in B){if(B.hasOwnProperty(T)){W=B[T];if(W&&W.$isFunction&&!W.$isClass&&W!==Ext.emptyFn&&W!==Ext.identityFn){s[T]=E=W;E.$owner=s;E.$name=T}s[T]=W}}}delete V.statics;if(V.inheritableStatics){s.addInheritableStatics(V.inheritableStatics)}if(N.onClassExtended){U.onExtended(N.onClassExtended,U);delete N.onClassExtended}if(V.config){g.call(Ext.Class,s,V)}if(V.cachedConfig&&m){m.call(Ext.Class,s,V)}t.onBeforeCreated(s,t.data,t);for(R=0,O=u&&u.length;R<O;++R){s.mixin.apply(s,u[R])}for(R=0,O=S.length;R<O;R++){M=S[R];p.setAlias?p.setAlias(s,M):p.addAlias(s,M)}if(V.singleton){U=new s()}if(!(H instanceof Array)){H=[H]}for(R=0,F=H.length;R<F;R++){P=H[R];p.classes[P]=U;if(G){p.addAlternate(s,P)}else{K=p.getName(U);if(K&&K!==P){I[P]=K;H=I[K]||(I[K]=[]);H.push(P)}}}for(R=0,O=L.length;R<O;R+=2){Y=L[R];if(!Y){Y=Q}Y[L[R+1]]=U}p.classes[w]=U;if(!G){K=p.getName(U);if(K&&K!==w){A[w]=K;H=A[K]||(A[K]=[]);H.push(w)}}delete N.alternateClassName;if(t.onCreated){t.onCreated.call(U,U)}if(w){p.triggerCreated(w)}return U};j.derive=a}(Ext.cmd={}));var Ext=Ext||window.Ext||{};Ext.Boot=Ext.Boot||(function(h){var o=document,m={disableCaching:(/[?&](?:cache|disableCacheBuster)\b/i.test(location.search)||/(^|[ ;])ext-cache=1/.test(o.cookie))?false:true,disableCachingParam:"_dc",loadDelay:false,preserveScripts:true,charset:undefined},e,a=[],p={},g=/\.css(?:\?|$)/i,b=/\/[^\/]*$/,n=o.createElement("a"),l=typeof window!=="undefined",j={browser:l,node:!l&&(typeof require==="function"),phantom:(typeof phantom!=="undefined"&&phantom.fs)},k=[],d=0,q=0;var c={loading:0,loaded:0,env:j,config:m,scripts:p,currentFile:null,canonicalUrl:function(u){n.href=u;var t=n.href,s=m.disableCachingParam,w=s?t.indexOf(s+"="):-1,v,r;if(w>0&&((v=t.charAt(w-1))==="?"||v==="&")){r=t.indexOf("&",w);r=(r<0)?"":t.substring(r);if(r&&v==="?"){++w;r=r.substring(1)}t=t.substring(0,w-1)+r}return t},init:function(){var u=o.getElementsByTagName("script"),v=u.length,A=/\/ext(\-[a-z\-]+)?\.js$/,y,x,r,s,w,z,t;for(t=0;t<v;t++){r=(x=u[t]).src;if(!r){continue}s=x.readyState||null;if(!w){if(A.test(r)){c.hasAsync=("async" in x)||!("readyState" in x);w=r}}if(!p[z=c.canonicalUrl(r)]){p[z]=y={key:z,url:r,done:s===null||s==="loaded"||s==="complete",el:x,prop:"src"};if(!y.done){c.watch(y)}}}if(!w){x=u[u.length-1];w=x.src;c.hasAsync=("async" in x)||!("readyState" in x)}c.baseUrl=w.substring(0,w.lastIndexOf("/")+1)},create:function(r,t){var s=r&&g.test(r),u=o.createElement(s?"link":"script"),v;if(s){u.rel="stylesheet";v="href"}else{u.type="text/javascript";if(!r){return u}v="src";if(c.hasAsync){u.async=false}}t=t||r;return p[t]={key:t,url:r,css:s,done:false,el:u,prop:v,loaded:false,evaluated:false}},getConfig:function(r){return r?m[r]:m},setConfig:function(r,u){if(typeof r==="string"){m[r]=u}else{for(var t in r){c.setConfig(t,r[t])}}return c},getHead:function(){return c.docHead||(c.docHead=o.head||o.getElementsByTagName("head")[0])},inject:function(w,r,u){var x=c.getHead(),s,t,v=false,z=c.canonicalUrl(r),y;if(g.test(r)){v=true;t=o.createElement("style");t.type="text/css";t.textContent=w;if(u){if("id" in u){t.id=u.id}if("disabled" in u){t.disabled=u.disabled}}s=o.createElement("base");s.href=z.replace(b,"/");x.appendChild(s);x.appendChild(t);x.removeChild(s)}else{if(r){w+="\n//@ sourceURL="+z}Ext.globalEval(w)}y=p[z]||(p[z]={key:z,css:v,url:r,el:t});y.done=true;return y},load:function(u){if(u.sync||q){return this.loadSync(u)}if(!u.url){u={url:u}}if(e){a.push(u)}else{c.expandLoadOrder(u);var r=u.url,v=r.charAt?[r]:r,t=v.length,s;u.urls=v;u.loaded=0;u.loading=t;u.charset=u.charset||m.charset;u.buster=(("cache" in u)?!u.cache:m.disableCaching)&&(m.disableCachingParam+"="+(+new Date()));e=u;u.sequential=false;for(s=0;s<t;++s){c.loadUrl(v[s],u)}}return this},loadUrl:function(s,w){var z,r=w.buster,v=w.charset,x=c.getHead(),u,A;if(w.prependBaseUrl){s=c.baseUrl+s}if(w.sequential){c.currentFile=s}else{c.currentFile=null}A=c.canonicalUrl(s);if(!(z=p[A])){d++;z=c.create(s,A);u=z.el;if(!z.css&&v){u.charset=v}z.requests=[w];c.watch(z);if(r){s+=(s.indexOf("?")===-1?"?":"&")+r}if(!c.hasAsync&&!z.css){z.loaded=false;z.evaluated=false;var t,y=function(){z.loaded=true;var F=w.urls,E=F.length,C,D,B;for(C=0;C<E;C++){B=c.canonicalUrl(F[C]);D=p[B];if(D){if(!D.loaded){return}else{if(!D.evaluated){x.appendChild(D.el);D.evaluated=true;D.onLoadWas.apply(D.el,arguments)}}}}};if(!("readyState" in u)){t=u.onload;u.onload=y}else{t=u.onreadystatechange;u.onreadystatechange=function(){if(this.readyState==="loaded"||this.readyState==="complete"){y.apply(this,arguments)}}}z.onLoadWas=t;u[z.prop]=s}else{u[z.prop]=s;x.appendChild(u)}}else{if(z.done){c.notify(z,w)}else{if(z.requests){z.requests.push(w)}else{z.requests=[w]}}}},loadSequential:function(r){if(!r.url){r={url:r}}r.sequential=true;c.load(r)},loadSequentialBasePrefix:function(r){if(!r.url){r={url:r}}r.prependBaseUrl=true;c.loadSequential(r)},fetchSync:function(s){var t,w,r,u;t=false;w=new XMLHttpRequest();try{w.open("GET",s,false);w.send(null)}catch(v){t=true}r=(w.status===1223)?204:(w.status===0&&((self.location||{}).protocol==="file:"||(self.location||{}).protocol==="ionp:"))?200:w.status;u=w.responseText;w=null;return{content:u,exception:t,status:r}},loadSync:function(w){q++;var w=c.expandLoadOrder(w.url?w:{url:w}),s=w.url,z=s.charAt?[s]:s,t=z.length,r=m.disableCaching&&("?"+m.disableCachingParam+"="+(+new Date())),y,A,x,B,v,u;w.loading=t;w.urls=z;w.loaded=0;d++;for(x=0;x<t;++x){s=z[x];if(w.prependBaseUrl){s=c.baseUrl+s}c.currentFile=s;B=c.canonicalUrl(s);if(!(A=p[B])){d++;p[B]=A={key:B,url:s,done:false,requests:[w],el:null}}else{if(A.done){c.notify(A,w);continue}if(A.el){A.preserve=false;c.cleanup(A)}if(A.requests){A.requests.push(w)}else{A.requests=[w]}}A.sync=true;if(r){s+=r}++c.loading;y=c.fetchSync(s);A.done=true;u=y.exception;v=y.status;y=y.content||"";if((u||v===0)&&!j.phantom){A.error=true}else{if((v>=200&&v<300)||v===304||j.phantom||(v===0&&y.length>0)){c.inject(y,s)}else{A.error=true}}c.notifyAll(A)}q--;d--;c.fireListeners();c.currentFile=null;return this},loadSyncBasePrefix:function(r){if(!r.url){r={url:r}}r.prependBaseUrl=true;c.loadSync(r)},notify:function(v,u){if(u.preserve){v.preserve=true}++u.loaded;if(v.error){(u.errors||(u.errors=[])).push(v)}if(!--u.loading){e=null;var w=u.errors,t=u[w?"failure":"success"],r=("delay" in u)?u.delay:(w?1:m.chainDelay),s=u.scope||u;if(a.length){c.load(a.shift())}if(t){if(r===0||r>0){setTimeout(function(){t.call(s,u)},r)}else{t.call(s,u)}}}else{if(!q&&u.sequential&&(u.loaded<u.urls.length)){c.loadUrl(u.urls[u.loaded],u)}}},notifyAll:function(t){var u=t.requests,s=u&&u.length,r;t.done=true;t.requests=null;--c.loading;++c.loaded;for(r=0;r<s;++r){c.notify(t,u[r])}if(!s){t.preserve=true}c.cleanup(t);d--;c.fireListeners()},watch:function(t){var s=t.el,v=t.requests,u=v&&v[0],r=function(){if(!t.done){c.notifyAll(t)}};s.onerror=function(){t.error=true;c.notifyAll(t)};t.preserve=(u&&("preserve" in u))?u.preserve:m.preserveScripts;if(!("readyState" in s)){s.onload=r}else{s.onreadystatechange=function(){if(this.readyState==="loaded"||this.readyState==="complete"){r()}}}++c.loading},cleanup:function(t){var s=t.el,u;if(!s){return}if(!t.preserve){t.el=null;s.parentNode.removeChild(s);for(u in s){try{if(u!==t.prop){s[u]=null}delete s[u]}catch(r){}}}s.onload=s.onerror=s.onreadystatechange=h},fireListeners:function(){var r;while(!d&&(r=k.shift())){r()}},onBootReady:function(r){if(!d){r()}else{k.push(r)}},createLoadOrderMap:function(s){var r=s.length,t={},v,u;for(v=0;v<r;v++){u=s[v];t[u.path]=u}return t},getLoadIndexes:function(v,x,s,t,E){var F=s[v],w,u,D,C,B,z,y,A,r;if(x[v]){return x}x[v]=true;z=false;while(!z){y=false;for(A in x){if(x.hasOwnProperty(A)){F=s[A];if(!F){continue}C=c.canonicalUrl(F.path);B=p[C];if(!E||!B||!B.done){D=F.requires;if(t&&F.uses){D=D.concat(F.uses)}for(w=D.length,u=0;u<w;u++){r=D[u];if(!x[r]){x[r]=true;y=true}}}}}if(!y){z=true}}return x},getPathsFromIndexes:function(w,s){var u=[],x=[],t,r,v;for(t in w){if(w.hasOwnProperty(t)&&w[t]){u.push(t)}}u.sort(function(z,y){return z-y});for(r=u.length,v=0;v<r;v++){x.push(s[u[v]].path)}return x},expandUrl:function(r,s,y,x,u,z){if(typeof r=="string"){r=[r]}if(s){y=y||c.createLoadOrderMap(s);x=x||{};var w=r.length,t=[],v,A;for(v=0;v<w;v++){A=y[r[v]];if(A){c.getLoadIndexes(A.idx,x,s,u,z)}else{t.push(r[v])}}return c.getPathsFromIndexes(x,s).concat(t)}return r},expandUrls:function(x,s,t,v){if(typeof x=="string"){x=[x]}var u=[],r=x.length,w;for(w=0;w<r;w++){u=u.concat(c.expandUrl(x[w],s,t,{},v,true))}if(u.length==0){u=x}return u},expandLoadOrder:function(u){var v=u.url,r=u.loadOrder,s=u.loadOrderMap,t;if(!u.expanded){t=c.expandUrls(v,r,s);u.expanded=true}else{t=v}u.url=t;if(v.length!=t.length){u.sequential=true}return u}};Ext.disableCacheBuster=function(s,t){var r=new Date();r.setTime(r.getTime()+(s?10*365:-1)*24*60*60*1000);r=r.toGMTString();o.cookie="ext-cache=1; expires="+r+"; path="+(t||"/")};c.init();return c}(function(){}));Ext.globalEval=this.execScript?function(a){execScript(a)}:function($$code){(function(){var Ext=this.Ext;eval($$code)}())};if(!Function.prototype.bind){(function(){var a=Array.prototype.slice,b=function(d){var c=a.call(arguments,1),e=this;if(c.length){return function(){var g=arguments;return e.apply(d,g.length?c.concat(a.call(g)):c)}}c=null;return function(){return e.apply(d,arguments)}};Function.prototype.bind=b;b.$extjs=true}())}var Ext=Ext||{};Ext._startTime=Date.now?Date.now():(+new Date());(function(){var b=this,h=Object.prototype,c=h.toString,n=["valueOf","toLocaleString","toString","constructor"],l=function(){},g=function(){},j=function(p){return p},m=function(){var o=m.caller.caller;return o.$owner.prototype[o.$name].apply(this,arguments)},a=Ext.manifest||{},k,d=/\[object\s*(?:Array|Arguments|\w*Collection|\w*List|HTML\s+document\.all\s+class)\]/,e=/^\\?\/Date\(([-+])?(\d+)(?:[+-]\d{4})?\)\\?\/$/;Ext.global=b;l.$nullFn=j.$nullFn=l.$emptyFn=j.$identityFn=g.$nullFn=true;g.$privacy="framework";Ext.suspendLayouts=Ext.resumeLayouts=l;for(k in {toString:1}){n=null}Ext.enumerables=n;Ext.apply=function(r,q,t){if(t){Ext.apply(r,t)}if(r&&q&&typeof q==="object"){var s,p,o;for(s in q){r[s]=q[s]}if(n){for(p=n.length;p--;){o=n[p];if(q.hasOwnProperty(o)){r[o]=q[o]}}}}return r};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:g,emptyFn:l,identityFn:j,frameStartTime:+new Date(),manifest:a,validIdRe:/^[a-z_][a-z0-9\-_]*$/i,makeIdSelector:function(o){return"#"+o},id:function(q,p){if(q&&q.id){return q.id}var r=(p||Ext.idPrefix)+(++Ext.idSeed);if(q){q.id=r}return r},returnId:function(p){return p.getId()},returnTrue:function(){return true},emptyString:new String(),baseCSSPrefix:Ext.buildSettings.baseCSSPrefix,$eventNameMap:{},applyIf:function(p,o){var q;if(p){for(q in o){if(p[q]===undefined){p[q]=o[q]}}}return p},now:(b.performance&&b.performance.now)?function(){return performance.now()}:(Date.now||(Date.now=function(){return +new Date()})),destroy:function(){var q=arguments.length,p,o;for(p=0;p<q;p++){o=arguments[p];if(o){if(Ext.isArray(o)){this.destroy.apply(this,o)}else{if(Ext.isFunction(o.destroy)){o.destroy()}}}}return null},destroyMembers:function(r){for(var t,q,s=1,p=arguments,o=p.length;s<o;s++){t=r[q=p[s]];if(t!=null){r[q]=Ext.destroy(t)}}},override:function(r,s){if(r.$isClass){r.override(s)}else{if(typeof r=="function"){Ext.apply(r.prototype,s)}else{var o=r.self,p,q;if(o&&o.$isClass){for(p in s){if(s.hasOwnProperty(p)){q=s[p];if(typeof q==="function"){q.$name=p;q.$owner=o;q.$previous=r.hasOwnProperty(p)?r[p]:m}r[p]=q}}}else{Ext.apply(r,s)}}}return r},valueFrom:function(q,o,p){return Ext.isEmpty(q,p)?o:q},isEmpty:function(o,p){return(o==null)||(!p?o==="":false)||(Ext.isArray(o)&&o.length===0)},isArray:("isArray" in Array)?Array.isArray:function(o){return c.call(o)==="[object Array]"},isDate:function(o){return c.call(o)==="[object Date]"},isMSDate:function(o){if(!Ext.isString(o)){return false}return e.test(o)},isObject:(c.call(null)==="[object Object]")?function(o){return o!==null&&o!==undefined&&c.call(o)==="[object Object]"&&o.ownerDocument===undefined}:function(o){return c.call(o)==="[object Object]"},isSimpleObject:function(o){return o instanceof Object&&o.constructor===Object},isPrimitive:function(p){var o=typeof p;return o==="string"||o==="number"||o==="boolean"},isFunction:(typeof document!=="undefined"&&typeof document.getElementsByTagName("body")==="function")?function(o){return !!o&&c.call(o)==="[object Function]"}:function(o){return !!o&&typeof o==="function"},isNumber:function(o){return typeof o==="number"&&isFinite(o)},isNumeric:function(o){return !isNaN(parseFloat(o))&&isFinite(o)},isString:function(o){return typeof o==="string"},isBoolean:function(o){return typeof o==="boolean"},isElement:function(o){return o?o.nodeType===1:false},isTextNode:function(o){return o?o.nodeName==="#text":false},isDefined:function(o){return typeof o!=="undefined"},isIterable:function(o){if(!o||typeof o.length!=="number"||typeof o==="string"||Ext.isFunction(o)){return false}if(!o.propertyIsEnumerable){return !!o.item}if(o.hasOwnProperty("length")&&!o.propertyIsEnumerable("length")){return true}return d.test(c.call(o))},isDebugEnabled:l,clone:function(t){if(t===null||t===undefined){return t}if(t.nodeType&&t.cloneNode){return t.cloneNode(true)}var s=c.call(t),r,p,o,u,q;if(s==="[object Date]"){return new Date(t.getTime())}if(s==="[object Array]"){r=t.length;u=[];while(r--){u[r]=Ext.clone(t[r])}}else{if(s==="[object Object]"&&t.constructor===Object){u={};for(q in t){u[q]=Ext.clone(t[q])}if(n){for(p=n.length;p--;){o=n[p];if(t.hasOwnProperty(o)){u[o]=t[o]}}}}}return u||t},getUniqueGlobalNamespace:function(){var p=this.uniqueGlobalNamespace,o;if(p===undefined){o=0;do{p="ExtBox"+(++o)}while(b[p]!==undefined);b[p]=Ext;this.uniqueGlobalNamespace=p}return p},functionFactoryCache:{},cacheableFunctionFactory:function(){var t=this,q=Array.prototype.slice.call(arguments),p=t.functionFactoryCache,o,r,s;if(Ext.isSandboxed){s=q.length;if(s>0){s--;q[s]="var Ext=window."+Ext.name+";"+q[s]}}o=q.join("");r=p[o];if(!r){r=Function.prototype.constructor.apply(Function.prototype,q);p[o]=r}return r},functionFactory:function(){var o=Array.prototype.slice.call(arguments),p;if(Ext.isSandboxed){p=o.length;if(p>0){p--;o[p]="var Ext=window."+Ext.name+";"+o[p]}}return Function.prototype.constructor.apply(Function.prototype,o)},Logger:{log:function(p,o){if(p&&b.console){if(!o||!(o in b.console)){o="log"}p="["+o.toUpperCase()+"] "+p;b.console[o](p)}},verbose:function(o){this.log(o,"verbose")},info:function(o){this.log(o,"info")},warn:function(o){this.log(o,"warn")},error:function(o){throw new Error(o)},deprecate:function(o){this.log(o,"warn")}}||{verbose:l,log:l,info:l,warn:l,error:function(o){throw new Error(o)},deprecate:l},getElementById:function(o){return document.getElementById(o)},splitAndUnescape:(function(){var o={};return function(r,q){if(!r){return[]}else{if(!q){return[r]}}var t=o[q]||(o[q]=new RegExp("\\\\"+q,"g")),p=[],u,s;u=r.split(q);while((s=u.shift())!==undefined){while(s.charAt(s.length-1)==="\\"&&u.length>0){s=s+q+u.shift()}s=s.replace(t,q);p.push(s)}return p}})()});Ext.returnTrue.$nullFn=Ext.returnId.$nullFn=true}());(function(){function a(){var c=this,b=c.sourceClass,e=c.sourceMethod,d=c.msg;if(e){if(d){e+="(): ";e+=d}else{e+="()"}}if(b){e=e?(b+"."+e):b}return e||d||""}Ext.Error=function(c){if(Ext.isString(c)){c={msg:c}}var b=new Error();Ext.apply(b,c);b.message=b.message||b.msg;b.toString=a;return b};Ext.apply(Ext.Error,{ignore:false,raise:function(d){d=d||{};if(Ext.isString(d)){d={msg:d}}var c=this,g=c.raise.caller,e,b;if(g){if(!d.sourceMethod&&(b=g.$name)){d.sourceMethod=b}if(!d.sourceClass&&(b=g.$owner)&&(b=b.$className)){d.sourceClass=b}}if(c.handle(d)!==true){e=a.call(d);throw new Ext.Error(d)}},handle:function(){return this.ignore}})})();Ext.deprecated=function(a){return Ext.emptyFn};Ext.Array=new (function(){var c=Array.prototype,m=c.slice,o=(function(){var w=[],e,v=20;if(!w.splice){return false}while(v--){w.push("A")}w.splice(15,0,"F","F","F","F","F","F","F","F","F","F","F","F","F","F","F","F","F","F","F","F","F");e=w.length;w.splice(13,0,"XXX");if(e+1!==w.length){return false}return true}()),n="indexOf" in c,h=true;function l(z,w){var v=z.length,y=new Array(v),e=new Array(v),x;for(x=0;x<v;x++){y[x]=x}y.sort(function(B,A){return w(z[B],z[A])||(B-A)});for(x=0;x<v;x++){e[x]=z[y[x]]}for(x=0;x<v;x++){z[x]=e[x]}return z}try{if(typeof document!=="undefined"){m.call(document.getElementsByTagName("body"))}}catch(q){h=false}var k=function(v,e){return(e<0)?Math.max(0,v.length+e):Math.min(v.length,e)},u=function(C,B,v,F){var G=F?F.length:0,x=C.length,D=k(C,B);if(D===x){if(G){C.push.apply(C,F)}}else{var A=Math.min(v,x-D),E=D+A,w=E+G-A,e=x-E,y=x-A,z;if(w<E){for(z=0;z<e;++z){C[w+z]=C[E+z]}}else{if(w>E){for(z=e;z--;){C[w+z]=C[E+z]}}}if(G&&D===y){C.length=y;C.push.apply(C,F)}else{C.length=y+G;for(z=0;z<G;++z){C[D+z]=F[z]}}}return C},g=function(x,e,w,v){if(v&&v.length){if(e===0&&!w){x.unshift.apply(x,v)}else{if(e<x.length){x.splice.apply(x,[e,w].concat(v))}else{x.push.apply(x,v)}}}else{x.splice(e,w)}return x},b=function(w,e,v){return u(w,e,v)},p=function(w,e,v){w.splice(e,v);return w},j=function(y,e,w){var x=k(y,e),v=y.slice(e,k(y,x+w));if(arguments.length<4){u(y,x,w)}else{u(y,x,w,m.call(arguments,3))}return v},d=function(e){return e.splice.apply(e,m.call(arguments,1))},t=o?p:b,r=o?g:u,s=o?d:j,a={binarySearch:function(B,y,w,e,A){var x=B.length,v,z;if(w instanceof Function){A=w;w=0;e=x}else{if(e instanceof Function){A=e;e=x}else{if(w===undefined){w=0}if(e===undefined){e=x}A=A||a.lexicalCompare}}--e;while(w<=e){v=(w+e)>>1;z=A(y,B[v]);if(z>=0){w=v+1}else{if(z<0){e=v-1}}}return w},defaultCompare:function(e,v){return(e<v)?-1:((e>v)?1:0)},lexicalCompare:function(e,v){e=String(e);v=String(v);return(e<v)?-1:((e>v)?1:0)},each:function(z,x,w,e){z=a.from(z);var v,y=z.length;if(e!==true){for(v=0;v<y;v++){if(x.call(w||z[v],z[v],v,z)===false){return v}}}else{for(v=y-1;v>-1;v--){if(x.call(w||z[v],z[v],v,z)===false){return v}}}return true},forEach:("forEach" in c)?function(w,v,e){return w.forEach(v,e)}:function(y,w,v){for(var e=0,x=y.length;e<x;e++){w.call(v,y[e],e,y)}},indexOf:n?function(w,e,v){return c.indexOf.call(w,e,v)}:function(y,w,x){var e,v=y.length;for(e=(x<0)?Math.max(0,v+x):x||0;e<v;e++){if(y[e]===w){return e}}return -1},contains:n?function(v,e){return c.indexOf.call(v,e)!==-1}:function(x,w){var e,v;for(e=0,v=x.length;e<v;e++){if(x[e]===w){return true}}return false},toArray:function(w,y,e){if(!w||!w.length){return[]}if(typeof w==="string"){w=w.split("")}if(h){return m.call(w,y||0,e||w.length)}var x=[],v;y=y||0;e=e?((e<0)?w.length+e:e):w.length;for(v=y;v<e;v++){x.push(w[v])}return x},pluck:function(z,e){var v=[],w,y,x;for(w=0,y=z.length;w<y;w++){x=z[w];v.push(x[e])}return v},map:("map" in c)?function(w,v,e){return w.map(v,e)}:function(z,y,x){var w=[],v=0,e=z.length;for(;v<e;v++){w[v]=y.call(x,z[v],v,z)}return w},every:("every" in c)?function(w,v,e){return w.every(v,e)}:function(y,w,v){var e=0,x=y.length;for(;e<x;++e){if(!w.call(v,y[e],e,y)){return false}}return true},some:("some" in c)?function(w,v,e){return w.some(v,e)}:function(y,w,v){var e=0,x=y.length;for(;e<x;++e){if(w.call(v,y[e],e,y)){return true}}return false},equals:function(y,x){var v=y.length,e=x.length,w;if(y===x){return true}if(v!==e){return false}for(w=0;w<v;++w){if(y[w]!==x[w]){return false}}return true},clean:function(y){var v=[],e=0,x=y.length,w;for(;e<x;e++){w=y[e];if(!Ext.isEmpty(w)){v.push(w)}}return v},unique:function(y){var x=[],e=0,w=y.length,v;for(;e<w;e++){v=y[e];if(a.indexOf(x,v)===-1){x.push(v)}}return x},filter:("filter" in c)?function(w,v,e){return w.filter(v,e)}:function(z,x,w){var v=[],e=0,y=z.length;for(;e<y;e++){if(x.call(w,z[e],e,z)){v.push(z[e])}}return v},findBy:function(y,x,w){var v=0,e=y.length;for(;v<e;v++){if(x.call(w||y,y[v],v)){return y[v]}}return null},from:function(w,v){if(w===undefined||w===null){return[]}if(Ext.isArray(w)){return(v)?m.call(w):w}var e=typeof w;if(w&&w.length!==undefined&&e!=="string"&&(e!=="function"||!w.apply)){return a.toArray(w)}return[w]},remove:function(w,v){var e=a.indexOf(w,v);if(e!==-1){t(w,e,1)}return w},include:function(v,e){if(!a.contains(v,e)){v.push(e)}},clone:function(e){return m.call(e)},merge:function(){var e=m.call(arguments),x=[],v,w;for(v=0,w=e.length;v<w;v++){x=x.concat(e[v])}return a.unique(x)},intersect:function(){var e=[],w=m.call(arguments),H,F,B,E,I,x,v,D,G,y,C,A,z;if(!w.length){return e}H=w.length;for(C=I=0;C<H;C++){x=w[C];if(!E||x.length<E.length){E=x;I=C}}E=a.unique(E);t(w,I,1);v=E.length;H=w.length;for(C=0;C<v;C++){D=E[C];y=0;for(A=0;A<H;A++){F=w[A];B=F.length;for(z=0;z<B;z++){G=F[z];if(D===G){y++;break}}}if(y===H){e.push(D)}}return e},difference:function(v,e){var A=m.call(v),y=A.length,x,w,z;for(x=0,z=e.length;x<z;x++){for(w=0;w<y;w++){if(A[w]===e[x]){t(A,w,1);w--;y--}}}return A},slice:([1,2].slice(1,undefined).length?function(w,v,e){return m.call(w,v,e)}:function(w,v,e){if(typeof v==="undefined"){return m.call(w)}if(typeof e==="undefined"){return m.call(w,v)}return m.call(w,v,e)}),sort:function(v,e){return l(v,e||a.lexicalCompare)},flatten:function(w){var v=[];function e(x){var z,A,y;for(z=0,A=x.length;z<A;z++){y=x[z];if(Ext.isArray(y)){e(y)}else{v.push(y)}}return v}return e(w)},min:function(z,y){var v=z[0],e,x,w;for(e=0,x=z.length;e<x;e++){w=z[e];if(y){if(y(v,w)===1){v=w}}else{if(w<v){v=w}}}return v},max:function(z,y){var e=z[0],v,x,w;for(v=0,x=z.length;v<x;v++){w=z[v];if(y){if(y(e,w)===-1){e=w}}else{if(w>e){e=w}}}return e},mean:function(e){return e.length>0?a.sum(e)/e.length:undefined},sum:function(y){var v=0,e,x,w;for(e=0,x=y.length;e<x;e++){w=y[e];v+=w}return v},toMap:function(y,e,w){var x={},v=y.length;if(!e){while(v--){x[y[v]]=v+1}}else{if(typeof e==="string"){while(v--){x[y[v][e]]=v+1}}else{while(v--){x[e.call(w,y[v])]=v+1}}}return x},toValueMap:function(A,x,F,z){var e={},w=A.length,v,y,D,B,E,C;if(!x){while(w--){C=A[w];e[C]=C}}else{if(!(B=(typeof x!=="string"))){z=F}y=z===1;v=z===2;while(w--){C=A[w];E=B?x.call(F,C):C[x];if(y){if(E in e){e[E].push(C)}else{e[E]=[C]}}else{if(v&&(E in e)){if((D=e[E]) instanceof Array){D.push(C)}else{e[E]=[D,C]}}else{e[E]=C}}}}return e},erase:t,insert:function(w,v,e){return r(w,v,0,e)},replace:r,splice:s,push:function(x){var e=arguments.length,w=1,v;if(x===undefined){x=[]}else{if(!Ext.isArray(x)){x=[x]}}for(;w<e;w++){v=arguments[w];Array.prototype.push[Ext.isIterable(v)?"apply":"call"](x,v)}return x},numericSortFn:function(v,e){return v-e}};Ext.each=a.each;a.union=a.merge;Ext.min=a.min;Ext.max=a.max;Ext.sum=a.sum;Ext.mean=a.mean;Ext.flatten=a.flatten;Ext.clean=a.clean;Ext.unique=a.unique;Ext.pluck=a.pluck;Ext.toArray=function(){return a.toArray.apply(a,arguments)};return a})();Ext.String=(function(){var n=/^[\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,g=/('|\\)/g,t=/\{\d+\}/,k=/([-.*+?\^${}()|\[\]\/\\])/g,c=/^\s+|\s+$/g,b=/\s+/,q=/(^[^a-z]*|[^\w])/gi,e,s,o,p,d=function(v,u){return e[u]},a=function(v,u){return(u in s)?s[u]:String.fromCharCode(parseInt(u.substr(2),10))},r=function(v,u){if(v===null||v===undefined||u===null||u===undefined){return false}return u.length<=v.length},l={useFormat:false,compiled:true,stringFormat:true},h={},j=function(u){if(t.test(u)){u=new Ext.Template(u,l);return function(){return u.apply(arguments)}}else{return function(){return u}}},m;return m={insert:function(w,x,v){if(!w){return x}if(!x){return w}var u=w.length;if(!v&&v!==0){v=u}if(v<0){v*=-1;if(v>=u){v=0}else{v=u-v}}if(v===0){w=x+w}else{if(v>=w.length){w+=x}else{w=w.substr(0,v)+x+w.substr(v)}}return w},startsWith:function(w,x,v){var u=r(w,x);if(u){if(v){w=w.toLowerCase();x=x.toLowerCase()}u=w.lastIndexOf(x,0)===0}return u},endsWith:function(x,v,w){var u=r(x,v);if(u){if(w){x=x.toLowerCase();v=v.toLowerCase()}u=x.indexOf(v,x.length-v.length)!==-1}return u},createVarName:function(u){return u.replace(q,"")},htmlEncode:function(u){return(!u)?u:String(u).replace(o,d)},htmlDecode:function(u){return(!u)?u:String(u).replace(p,a)},hasHtmlCharacters:function(u){return o.test(u)},addCharacterEntities:function(v){var u=[],y=[],w,x;for(w in v){x=v[w];s[w]=x;e[x]=w;u.push(x);y.push(w)}o=new RegExp("("+u.join("|")+")","g");p=new RegExp("("+y.join("|")+"|&#[0-9]{1,5};)","g")},resetCharacterEntities:function(){e={};s={};this.addCharacterEntities({"&amp;":"&","&gt;":">","&lt;":"<","&quot;":'"',"&#39;":"'"})},urlAppend:function(v,u){if(!Ext.isEmpty(u)){return v+(v.indexOf("?")===-1?"?":"&")+u}return v},trim:function(u){if(u){u=u.replace(n,"")}return u||""},capitalize:function(u){if(u){u=u.charAt(0).toUpperCase()+u.substr(1)}return u||""},uncapitalize:function(u){if(u){u=u.charAt(0).toLowerCase()+u.substr(1)}return u||""},ellipsis:function(w,v,x){if(w&&w.length>v){if(x){var y=w.substr(0,v-2),u=Math.max(y.lastIndexOf(" "),y.lastIndexOf("."),y.lastIndexOf("!"),y.lastIndexOf("?"));if(u!==-1&&u>=(v-15)){return y.substr(0,u)+"..."}}return w.substr(0,v-3)+"..."}return w},escapeRegex:function(u){return u.replace(k,"\\$1")},createRegex:function(y,x,v,u){var w=y;if(y!=null&&!y.exec){w=m.escapeRegex(String(y));if(x!==false){w="^"+w}if(v!==false){w+="$"}w=new RegExp(w,(u!==false)?"i":"")}return w},escape:function(u){return u.replace(g,"\\$1")},toggle:function(v,w,u){return v===w?u:w},leftPad:function(v,w,x){var u=String(v);x=x||" ";while(u.length<w){u=x+u}return u},format:function(v){var u=h[v]||(h[v]=j(v));return u.apply(this,arguments)},repeat:function(y,x,v){if(x<1){x=0}for(var u=[],w=x;w--;){u.push(y)}return u.join(v||"")},splitWords:function(u){if(u&&typeof u=="string"){return u.replace(c,"").split(b)}return u||[]}}}());Ext.String.resetCharacterEntities();Ext.htmlEncode=Ext.String.htmlEncode;Ext.htmlDecode=Ext.String.htmlDecode;Ext.urlAppend=Ext.String.urlAppend;Ext.Date=(function(){var d,k=/(\\.)/g,a=/([gGhHisucUOPZ]|MS)/,e=/([djzmnYycU]|MS)/,j=/\\/gi,c=/\{(\d+)\}/g,g=new RegExp("\\/Date\\(([-+])?(\\d+)(?:[+-]\\d{4})?\\)\\/"),b=["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;"].join("\n");function h(m){var l=Array.prototype.slice.call(arguments,1);return m.replace(c,function(n,o){return l[o]})}return d={now:Date.now,toString:function(l){if(!l){l=new Date()}var m=Ext.String.leftPad;return l.getFullYear()+"-"+m(l.getMonth()+1,2,"0")+"-"+m(l.getDate(),2,"0")+"T"+m(l.getHours(),2,"0")+":"+m(l.getMinutes(),2,"0")+":"+m(l.getSeconds(),2,"0")},getElapsed:function(m,l){return Math.abs(m-(l||d.now()))},useStrict:false,formatCodeToRegex:function(m,l){var n=d.parseCodes[m];if(n){n=typeof n=="function"?n():n;d.parseCodes[m]=n}return n?Ext.applyIf({c:n.c?h(n.c,l||"{0}"):n.c},n):{g:0,c:null,s:Ext.String.escapeRegex(m)}},parseFunctions:{MS:function(m,l){var n=(m||"").match(g);return n?new Date(((n[1]||"")+n[2])*1):null},time:function(m,l){var n=parseInt(m,10);if(n||n===0){return new Date(n)}return null},timestamp:function(m,l){var n=parseInt(m,10);if(n||n===0){return new Date(n*1000)}return null}},parseRegexes:[],formatFunctions:{MS:function(){return"\\/Date("+this.getTime()+")\\/"},time:function(){return this.getTime().toString()},timestamp:function(){return d.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(l){return Ext.Date.monthNames[l].substring(0,3)},getShortDayName:function(l){return Ext.Date.dayNames[l].substring(0,3)},getMonthNumber:function(l){return Ext.Date.monthNumbers[l.substring(0,1).toUpperCase()+l.substring(1,3).toLowerCase()]},formatContainsHourInfo:function(l){return a.test(l.replace(k,""))},formatContainsDateInfo:function(l){return e.test(l.replace(k,""))},unescapeFormat:function(l){return l.replace(j,"")},formatCodes:{d:"Ext.String.leftPad(this.getDate(), 2, '0')",D:"Ext.Date.getShortDayName(this.getDay())",j:"this.getDate()",l:"Ext.Date.dayNames[this.getDay()]",N:"(this.getDay() ? this.getDay() : 7)",S:"Ext.Date.getSuffix(this)",w:"this.getDay()",z:"Ext.Date.getDayOfYear(this)",W:"Ext.String.leftPad(Ext.Date.getWeekOfYear(this), 2, '0')",F:"Ext.Date.monthNames[this.getMonth()]",m:"Ext.String.leftPad(this.getMonth() + 1, 2, '0')",M:"Ext.Date.getShortMonthName(this.getMonth())",n:"(this.getMonth() + 1)",t:"Ext.Date.getDaysInMonth(this)",L:"(Ext.Date.isLeapYear(this) ? 1 : 0)",o:"(this.getFullYear() + (Ext.Date.getWeekOfYear(this) == 1 && this.getMonth() > 0 ? +1 : (Ext.Date.getWeekOfYear(this) >= 52 && this.getMonth() < 11 ? -1 : 0)))",Y:"Ext.String.leftPad(this.getFullYear(), 4, '0')",y:"('' + this.getFullYear()).substring(2, 4)",a:"(this.getHours() < 12 ? 'am' : 'pm')",A:"(this.getHours() < 12 ? 'AM' : 'PM')",g:"((this.getHours() % 12) ? this.getHours() % 12 : 12)",G:"this.getHours()",h:"Ext.String.leftPad((this.getHours() % 12) ? this.getHours() % 12 : 12, 2, '0')",H:"Ext.String.leftPad(this.getHours(), 2, '0')",i:"Ext.String.leftPad(this.getMinutes(), 2, '0')",s:"Ext.String.leftPad(this.getSeconds(), 2, '0')",u:"Ext.String.leftPad(this.getMilliseconds(), 3, '0')",O:"Ext.Date.getGMTOffset(this)",P:"Ext.Date.getGMTOffset(this, true)",T:"Ext.Date.getTimezone(this)",Z:"(this.getTimezoneOffset() * -60)",c:function(){var q,o,n,m,p;for(q="Y-m-dTH:i:sP",o=[],n=0,m=q.length;n<m;++n){p=q.charAt(n);o.push(p=="T"?"'T'":d.getFormatCode(p))}return o.join(" + ")},U:"Math.round(this.getTime() / 1000)"},isValid:function(u,l,t,q,o,p,n){q=q||0;o=o||0;p=p||0;n=n||0;var r=d.add(new Date(u<100?100:u,l-1,t,q,o,p,n),d.YEAR,u<100?u-100:0);return u==r.getFullYear()&&l==r.getMonth()+1&&t==r.getDate()&&q==r.getHours()&&o==r.getMinutes()&&p==r.getSeconds()&&n==r.getMilliseconds()},parse:function(m,o,l){var n=d.parseFunctions;if(n[o]==null){d.createParser(o)}return n[o].call(d,m,Ext.isDefined(l)?l:d.useStrict)},parseDate:function(m,n,l){return d.parse(m,n,l)},getFormatCode:function(m){var l=d.formatCodes[m];if(l){l=typeof l=="function"?l():l;d.formatCodes[m]=l}return l||("'"+Ext.String.escape(m)+"'")},createFormat:function(p){var o=[],l=false,n="",m;for(m=0;m<p.length;++m){n=p.charAt(m);if(!l&&n=="\\"){l=true}else{if(l){l=false;o.push("'"+Ext.String.escape(n)+"'")}else{if(n=="\n"){o.push("'\\n'")}else{o.push(d.getFormatCode(n))}}}}d.formatFunctions[p]=Ext.functionFactory("return "+o.join("+"))},createParser:function(u){var m=d.parseRegexes.length,v=1,n=[],t=[],r=false,l="",p=0,q=u.length,s=[],o;for(;p<q;++p){l=u.charAt(p);if(!r&&l=="\\"){r=true}else{if(r){r=false;t.push(Ext.String.escape(l))}else{o=d.formatCodeToRegex(l,v);v+=o.g;t.push(o.s);if(o.g&&o.c){if(o.calcAtEnd){s.push(o.c)}else{n.push(o.c)}}}}}n=n.concat(s);d.parseRegexes[m]=new RegExp("^"+t.join("")+"$","i");d.parseFunctions[u]=Ext.functionFactory("input","strict",h(b,m,n.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 l=[],m=0;m<7;l.push(d.getShortDayName(m)),++m){}return{g:0,c:null,s:"(?:"+l.join("|")+")"}},l:function(){return{g:0,c:null,s:"(?:"+d.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:"("+d.monthNames.join("|")+")"}},M:function(){for(var l=[],m=0;m<12;l.push(d.getShortMonthName(m)),++m){}return Ext.applyIf({s:"("+l.join("|")+")"},d.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{1,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 o=[],m=[d.formatCodeToRegex("Y",1),d.formatCodeToRegex("m",2),d.formatCodeToRegex("d",3),d.formatCodeToRegex("H",4),d.formatCodeToRegex("i",5),d.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){",d.formatCodeToRegex("P",8).c,"}else{",d.formatCodeToRegex("O",8).c,"}","}"].join("\n")}],p,n;for(p=0,n=m.length;p<n;++p){o.push(m[p].c)}return{g:1,c:o.join(""),s:[m[0].s,"(?:","-",m[1].s,"(?:","-",m[2].s,"(?:","(?:T| )?",m[3].s,":",m[4].s,"(?::",m[5].s,")?","(?:(?:\\.|,)(\\d+))?","(Z|(?:[-+]\\d{2}(?::)?\\d{2}))?",")?",")?",")?"].join("")}},U:{g:1,c:"u = parseInt(results[{0}], 10);\n",s:"(-?\\d+)"}},dateFormat:function(l,m){return d.format(l,m)},isEqual:function(m,l){if(m&&l){return(m.getTime()===l.getTime())}return !(m||l)},format:function(m,n){var l=d.formatFunctions;if(!Ext.isDate(m)){return""}if(l[n]==null){d.createFormat(n)}return l[n].call(m)+""},getTimezone:function(l){return l.toString().replace(/^.* (?:\((.*)\)|([A-Z]{1,5})(?:[\-+][0-9]{4})?(?: -?\d+)?)$/,"$1$2").replace(/[^A-Z]/g,"")},getGMTOffset:function(l,m){var n=l.getTimezoneOffset();return(n>0?"-":"+")+Ext.String.leftPad(Math.floor(Math.abs(n)/60),2,"0")+(m?":":"")+Ext.String.leftPad(Math.abs(n%60),2,"0")},getDayOfYear:function(o){var n=0,q=Ext.Date.clone(o),l=o.getMonth(),p;for(p=0,q.setDate(1),q.setMonth(0);p<l;q.setMonth(++p)){n+=d.getDaysInMonth(q)}return n+o.getDate()-1},getWeekOfYear:(function(){var l=86400000,m=7*l;return function(o){var p=Date.UTC(o.getFullYear(),o.getMonth(),o.getDate()+3)/l,n=Math.floor(p/7),q=new Date(n*m).getUTCFullYear();return n-Math.floor(Date.UTC(q,0,7)/m)+1}}()),isLeapYear:function(l){var m=l.getFullYear();return !!((m&3)==0&&(m%100||(m%400==0&&m)))},getFirstDayOfMonth:function(m){var l=(m.getDay()-(m.getDate()-1))%7;return(l<0)?(l+7):l},getLastDayOfMonth:function(l){return d.getLastDateOfMonth(l).getDay()},getFirstDateOfMonth:function(l){return new Date(l.getFullYear(),l.getMonth(),1)},getLastDateOfMonth:function(l){return new Date(l.getFullYear(),l.getMonth(),d.getDaysInMonth(l))},getDaysInMonth:(function(){var l=[31,28,31,30,31,30,31,31,30,31,30,31];return function(o){var n=o.getMonth();return n==1&&d.isLeapYear(o)?29:l[n]}}()),getSuffix:function(l){switch(l.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(l){return new Date(l.getTime())},isDST:function(l){return new Date(l.getFullYear(),0,1).getTimezoneOffset()!=l.getTimezoneOffset()},clearTime:function(l,p){if(p){return Ext.Date.clearTime(Ext.Date.clone(l))}var n=l.getDate(),m,o;l.setHours(0);l.setMinutes(0);l.setSeconds(0);l.setMilliseconds(0);if(l.getDate()!=n){for(m=1,o=d.add(l,Ext.Date.HOUR,m);o.getDate()!=n;m++,o=d.add(l,Ext.Date.HOUR,m)){}l.setDate(n);l.setHours(o.getHours())}return l},add:function(o,n,r){var s=Ext.Date.clone(o),l=Ext.Date,m,q,p=0;if(!n||r===0){return s}q=r-parseInt(r,10);r=parseInt(r,10);if(r){switch(n.toLowerCase()){case Ext.Date.MILLI:s.setTime(s.getTime()+r);break;case Ext.Date.SECOND:s.setTime(s.getTime()+r*1000);break;case Ext.Date.MINUTE:s.setTime(s.getTime()+r*60*1000);break;case Ext.Date.HOUR:s.setTime(s.getTime()+r*60*60*1000);break;case Ext.Date.DAY:s.setDate(s.getDate()+r);break;case Ext.Date.MONTH:m=o.getDate();if(m>28){m=Math.min(m,Ext.Date.getLastDateOfMonth(Ext.Date.add(Ext.Date.getFirstDateOfMonth(o),Ext.Date.MONTH,r)).getDate())}s.setDate(m);s.setMonth(o.getMonth()+r);break;case Ext.Date.YEAR:m=o.getDate();if(m>28){m=Math.min(m,Ext.Date.getLastDateOfMonth(Ext.Date.add(Ext.Date.getFirstDateOfMonth(o),Ext.Date.YEAR,r)).getDate())}s.setDate(m);s.setFullYear(o.getFullYear()+r);break}}if(q){switch(n.toLowerCase()){case Ext.Date.MILLI:p=1;break;case Ext.Date.SECOND:p=1000;break;case Ext.Date.MINUTE:p=1000*60;break;case Ext.Date.HOUR:p=1000*60*60;break;case Ext.Date.DAY:p=1000*60*60*24;break;case Ext.Date.MONTH:m=d.getDaysInMonth(s);p=1000*60*60*24*m;break;case Ext.Date.YEAR:m=(d.isLeapYear(s)?366:365);p=1000*60*60*24*m;break}if(p){s.setTime(s.getTime()+p*q)}}return s},subtract:function(m,l,n){return d.add(m,l,-n)},between:function(m,o,l){var n=m.getTime();return o.getTime()<=n&&n<=l.getTime()},compat:function(){var m=window.Date,l,t=["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"],q=["dateFormat","format","getTimezone","getGMTOffset","getDayOfYear","getWeekOfYear","isLeapYear","getFirstDayOfMonth","getLastDayOfMonth","getDaysInMonth","getSuffix","clone","isDST","clearTime","add","between"],r=t.length,n=q.length,o,u,v;for(v=0;v<r;v++){o=t[v];m[o]=d[o]}for(l=0;l<n;l++){u=q[l];m.prototype[u]=function(){var p=Array.prototype.slice.call(arguments);p.unshift(this);return d[u].apply(d,p)}}},diff:function(n,l,p){var m=Ext.Date,o,q=+l-n;switch(p){case m.MILLI:return q;case m.SECOND:return Math.floor(q/1000);case m.MINUTE:return Math.floor(q/60000);case m.HOUR:return Math.floor(q/3600000);case m.DAY:return Math.floor(q/86400000);case"w":return Math.floor(q/604800000);case m.MONTH:o=(l.getFullYear()*12+l.getMonth())-(n.getFullYear()*12+n.getMonth());if(Ext.Date.add(n,p,o)>l){return o-1}else{return o}case m.YEAR:o=l.getFullYear()-n.getFullYear();if(Ext.Date.add(n,p,o)>l){return o-1}else{return o}}},align:function(m,o,n){var l=new Date(+m);switch(o.toLowerCase()){case Ext.Date.MILLI:return l;break;case Ext.Date.SECOND:l.setUTCSeconds(l.getUTCSeconds()-l.getUTCSeconds()%n);l.setUTCMilliseconds(0);return l;break;case Ext.Date.MINUTE:l.setUTCMinutes(l.getUTCMinutes()-l.getUTCMinutes()%n);l.setUTCSeconds(0);l.setUTCMilliseconds(0);return l;break;case Ext.Date.HOUR:l.setUTCHours(l.getUTCHours()-l.getUTCHours()%n);l.setUTCMinutes(0);l.setUTCSeconds(0);l.setUTCMilliseconds(0);return l;break;case Ext.Date.DAY:if(n==7||n==14){l.setUTCDate(l.getUTCDate()-l.getUTCDay()+1)}l.setUTCHours(0);l.setUTCMinutes(0);l.setUTCSeconds(0);l.setUTCMilliseconds(0);return l;break;case Ext.Date.MONTH:l.setUTCMonth(l.getUTCMonth()-(l.getUTCMonth()-1)%n,1);l.setUTCHours(0);l.setUTCMinutes(0);l.setUTCSeconds(0);l.setUTCMilliseconds(0);return l;break;case Ext.Date.YEAR:l.setUTCFullYear(l.getUTCFullYear()-l.getUTCFullYear()%n,1,1);l.setUTCHours(0);l.setUTCMinutes(0);l.setUTCSeconds(0);l.setUTCMilliseconds(0);return m;break}}}}());Ext.Function={flexSetter:function(a){return function(c,e){var b,d;if(c!==null){if(typeof c!=="string"){for(b in c){if(c.hasOwnProperty(b)){a.call(this,b,c[b])}}if(Ext.enumerables){for(d=Ext.enumerables.length;d--;){b=Ext.enumerables[d];if(c.hasOwnProperty(b)){a.call(this,b,c[b])}}}}else{a.call(this,c,e)}}return this}},bind:function(d,c,b,a){if(arguments.length===2){return function(){return d.apply(c,arguments)}}var g=d,e=Array.prototype.slice;return function(){var h=b||arguments;if(a===true){h=e.call(arguments,0);h=h.concat(b)}else{if(typeof a=="number"){h=e.call(arguments,0);Ext.Array.insert(h,a,b)}}return g.apply(c||Ext.global,h)}},bindCallback:function(e,d,c,b,a){return function(){var g=Ext.Array.slice(arguments);return Ext.callback(e,d,c?c.concat(g):g,b,a)}},pass:function(c,a,b){if(!Ext.isArray(a)){if(Ext.isIterable(a)){a=Ext.Array.clone(a)}else{a=a!==undefined?[a]:[]}}return function(){var d=a.slice();d.push.apply(d,arguments);return c.apply(b||this,d)}},alias:function(b,a){return function(){return b[a].apply(b,arguments)}},clone:function(a){return function(){return a.apply(this,arguments)}},createInterceptor:function(d,c,b,a){if(!Ext.isFunction(c)){return d}else{a=Ext.isDefined(a)?a:null;return function(){var g=this,e=arguments;c.target=g;c.method=d;return(c.apply(b||g||Ext.global,e)!==false)?d.apply(g||Ext.global,e):a}}},createDelayed:function(e,c,d,b,a){if(d||b){e=Ext.Function.bind(e,d,b,a)}return function(){var h=this,g=Array.prototype.slice.call(arguments);setTimeout(function(){e.apply(h,g)},c)}},defer:function(e,c,d,b,a){e=Ext.Function.bind(e,d,b,a);if(c>0){return setTimeout(Ext.supports.TimeoutActualLateness?function(){e()}:e,c)}e();return 0},createSequence:function(b,c,a){if(!c){return b}else{return function(){var d=b.apply(this,arguments);c.apply(a||this,arguments);return d}}},createBuffered:function(e,b,d,c){var a;return function(){var h=c||Array.prototype.slice.call(arguments,0),g=d||this;if(a){clearTimeout(a)}a=setTimeout(function(){e.apply(g,h)},b)}},createAnimationFrame:function(e,d,c,g){var b=Ext.Function,a;g=g||3;return function(){var h=c||Array.prototype.slice.call(arguments,0);d=d||this;if(g===3){b.cancelAnimationFrame(a)}if((g&1)||!a){a=b.requestAnimationFrame(function(){a=null;e.apply(d,h)})}}},requestAnimationFrame:(function(){var c=0,b=window,a=b.requestAnimationFrame||b.webkitRequestAnimationFrame||b.mozRequestAnimationFrame||b.oRequestAnimationFrame||function(h){var d=Ext.now(),e=Math.max(0,16-(d-c)),g=window.setTimeout(function(){h(d+e)},e);c=d+e;return g};return function(d){return a(d)}})(),cancelAnimationFrame:(function(){var b=window,a=b.cancelAnimationFrame||b.webkitCancelAnimationFrame||b.mozCancelAnimationFrame||b.oCancelAnimationFrame||function(c){clearTimeout(c)};return function(c){a(c)}})(),createThrottled:function(e,b,d){var g=0,a,c,j,h=function(){e.apply(d,c);g=Ext.now();j=null};return function(){if(!d){d=this}a=Ext.now()-g;c=arguments;if(a>=b){clearTimeout(j);h()}else{if(!j){j=setTimeout(h,b-a)}}}},createBarrier:function(c,b,a){return function(){if(!--c){b.apply(a,arguments)}}},interceptBefore:function(b,a,d,c){var e=b[a]||Ext.emptyFn;return(b[a]=function(){var g=d.apply(c||this,arguments);e.apply(this,arguments);return g})},interceptAfter:function(b,a,d,c){var e=b[a]||Ext.emptyFn;return(b[a]=function(){e.apply(this,arguments);return d.apply(c||this,arguments)})},makeCallback:function(b,a){return function(){return a[b].apply(a,arguments)}}};Ext.defer=Ext.Function.defer;Ext.pass=Ext.Function.pass;Ext.bind=Ext.Function.bind;Ext.Number=new function(){var d=this,c=(0.9).toFixed()!=="1",b=Math,a={count:false,inclusive:false,wrap:true};Ext.apply(d,{Clip:{DEFAULT:a,COUNT:Ext.applyIf({count:true},a),INCLUSIVE:Ext.applyIf({inclusive:true},a),NOWRAP:Ext.applyIf({wrap:false},a)},clipIndices:function(m,n,h){h=h||a;var g=0,l=h.wrap,k,e,j;n=n||[];for(j=0;j<2;++j){k=e;e=n[j];if(e==null){e=g}else{if(j&&h.count){e+=k;e=(e>m)?m:e}else{if(l){e=(e<0)?(m+e):e}if(j&&h.inclusive){++e}e=(e<0)?0:((e>m)?m:e)}}g=m}n[0]=k;n[1]=(e<k)?k:e;return n},constrain:function(j,h,g){var e=parseFloat(j);return(e<h)?h:((e>g)?g:e)},snap:function(j,g,h,k){var e;if(j===undefined||j<h){return h||0}if(g){e=j%g;if(e!==0){j-=e;if(e*2>=g){j+=g}else{if(e*2<-g){j-=g}}}}return d.constrain(j,h,k)},snapInRange:function(j,e,h,k){var g;h=(h||0);if(j===undefined||j<h){return h}if(e&&(g=((j-h)%e))){j-=g;g*=2;if(g>=e){j+=e}}if(k!==undefined){if(j>(k=d.snapInRange(k,e,h))){j=k}}return j},toFixed:c?function(h,e){e=e||0;var g=b.pow(10,e);return(b.round(h*g)/g).toFixed(e)}:function(g,e){return g.toFixed(e)},from:function(g,e){if(isFinite(g)){g=parseFloat(g)}return !isNaN(g)?g:e},randomInt:function(g,e){return b.floor(b.random()*(e-g+1)+g)},correctFloat:function(e){return parseFloat(e.toPrecision(14))}});Ext.num=function(){return d.from.apply(this,arguments)}}();(function(){var a=function(){},b=Ext.Object={chain:Object.create||function(d){a.prototype=d;var c=new a();a.prototype=null;return c},clear:function(c){for(var d in c){delete c[d]}return c},freeze:Object.freeze?function(e,c){if(e&&typeof e==="object"&&!Object.isFrozen(e)){Object.freeze(e);if(c){for(var d in e){b.freeze(e[d],c)}}}return e}:Ext.identityFn,toQueryObjects:function(e,k,d){var c=b.toQueryObjects,j=[],g,h;if(Ext.isArray(k)){for(g=0,h=k.length;g<h;g++){if(d){j=j.concat(c(e+"["+g+"]",k[g],true))}else{j.push({name:e,value:k[g]})}}}else{if(Ext.isObject(k)){for(g in k){if(k.hasOwnProperty(g)){if(d){j=j.concat(c(e+"["+g+"]",k[g],true))}else{j.push({name:e,value:k[g]})}}}}else{j.push({name:e,value:k})}}return j},toQueryString:function(g,d){var h=[],e=[],l,k,m,c,n;for(l in g){if(g.hasOwnProperty(l)){h=h.concat(b.toQueryObjects(l,g[l],d))}}for(k=0,m=h.length;k<m;k++){c=h[k];n=c.value;if(Ext.isEmpty(n)){n=""}else{if(Ext.isDate(n)){n=Ext.Date.toString(n)}}e.push(encodeURIComponent(c.name)+"="+encodeURIComponent(String(n)))}return e.join("&")},fromQueryString:function(d,r){var m=d.replace(/^\?/,"").split("&"),u={},s,k,w,n,q,g,o,p,c,h,t,l,v,e;for(q=0,g=m.length;q<g;q++){o=m[q];if(o.length>0){k=o.split("=");w=decodeURIComponent(k[0]);n=(k[1]!==undefined)?decodeURIComponent(k[1]):"";if(!r){if(u.hasOwnProperty(w)){if(!Ext.isArray(u[w])){u[w]=[u[w]]}u[w].push(n)}else{u[w]=n}}else{h=w.match(/(\[):?([^\]]*)\]/g);t=w.match(/^([^\[]+)/);w=t[0];l=[];if(h===null){u[w]=n;continue}for(p=0,c=h.length;p<c;p++){v=h[p];v=(v.length===2)?"":v.substring(1,v.length-1);l.push(v)}l.unshift(w);s=u;for(p=0,c=l.length;p<c;p++){v=l[p];if(p===c-1){if(Ext.isArray(s)&&v===""){s.push(n)}else{s[v]=n}}else{if(s[v]===undefined||typeof s[v]==="string"){e=l[p+1];s[v]=(Ext.isNumeric(e)||e==="")?[]:{}}s=s[v]}}}}}return u},each:function(d,h,g){var c=Ext.enumerables,e,j;g=g||d;for(j in d){if(d.hasOwnProperty(j)){if(h.call(g,j,d[j],d)===false){return}}}if(c){for(e=c.length;e--;){if(d.hasOwnProperty(j=c[e])){if(h.call(g,j,d[j],d)===false){return}}}}},eachValue:function(d,h,g){var c=Ext.enumerables,e,j;g=g||d;for(j in d){if(d.hasOwnProperty(j)){if(h.call(g,d[j])===false){return}}}if(c){for(e=c.length;e--;){if(d.hasOwnProperty(j=c[e])){if(h.call(g,d[j])===false){return}}}}},merge:function(k){var h=1,j=arguments.length,c=b.merge,e=Ext.clone,g,m,l,d;for(;h<j;h++){g=arguments[h];for(m in g){l=g[m];if(l&&l.constructor===Object){d=k[m];if(d&&d.constructor===Object){c(d,l)}else{k[m]=e(l)}}else{k[m]=l}}}return k},mergeIf:function(c){var h=1,j=arguments.length,e=Ext.clone,d,g,k;for(;h<j;h++){d=arguments[h];for(g in d){if(!(g in c)){k=d[g];if(k&&k.constructor===Object){c[g]=e(k)}else{c[g]=k}}}}return c},getKey:function(c,e){for(var d in c){if(c.hasOwnProperty(d)&&c[d]===e){return d}}return null},getValues:function(d){var c=[],e;for(e in d){if(d.hasOwnProperty(e)){c.push(d[e])}}return c},getKeys:(typeof Object.keys=="function")?function(c){if(!c){return[]}return Object.keys(c)}:function(c){var d=[],e;for(e in c){if(c.hasOwnProperty(e)){d.push(e)}}return d},getSize:function(c){var d=0,e;for(e in c){if(c.hasOwnProperty(e)){d++}}return d},isEmpty:function(c){for(var d in c){if(c.hasOwnProperty(d)){return false}}return true},equals:(function(){var c=function(g,e){var d;for(d in g){if(g.hasOwnProperty(d)){if(g[d]!==e[d]){return false}}}return true};return function(e,d){if(e===d){return true}if(e&&d){return c(e,d)&&c(d,e)}else{if(!e&&!d){return e===d}else{return false}}}})(),fork:function(h){var g=Ext.Array,c,d,e;if(h&&h.constructor===Object){c=b.chain(h);for(d in h){e=h[d];if(e){if(e.constructor===Object){c[d]=b.fork(e)}else{if(e instanceof Array){c[d]=Ext.Array.clone(e)}}}}}else{c=h}return c},defineProperty:("defineProperty" in Object)?Object.defineProperty:function(d,c,e){if(!Object.prototype.__defineGetter__){return}if(e.get){d.__defineGetter__(c,e.get)}if(e.set){d.__defineSetter__(c,e.set)}},classify:function(g){var e=g,j=[],d={},c=function(){var l=0,m=j.length,n;for(;l<m;l++){n=j[l];this[n]=new d[n]()}},h,k;for(h in g){if(g.hasOwnProperty(h)){k=g[h];if(k&&k.constructor===Object){j.push(h);d[h]=b.classify(k)}}}c.prototype=e;return c}};Ext.merge=Ext.Object.merge;Ext.mergeIf=Ext.Object.mergeIf}());Ext.apply(Ext,{escapeId:(function(){var c=/^[a-zA-Z_][a-zA-Z0-9_\-]*$/i,d=/([\W]{1})/g,b=/^(\d)/g,a=function(h,g){return"\\"+g},e=function(h,g){return"\\00"+g.charCodeAt(0).toString(16)+" "};return function(g){return c.test(g)?g:g.replace(d,a).replace(b,e)}}()),callback:function(j,e,d,c,b,h){if(!j){return}var g=e==="this"||e==="controller";if(j.charAt){if((!e||g)&&b){e=b.resolveListenerScope(g?e:h)}j=e[j]}else{if(g){e=h||b}else{if(!e){e=b}}}var a;if(j&&Ext.isFunction(j)){e=e||Ext.global;if(c){Ext.defer(j,c,e,d)}else{if(d){a=j.apply(e,d)}else{a=j.call(e)}}}return a},coerce:function(e,d){var c=Ext.typeOf(e),b=Ext.typeOf(d),a=typeof e==="string";if(c!==b){switch(b){case"string":return String(e);case"number":return Number(e);case"boolean":return a&&(!e||e==="false")?false:Boolean(e);case"null":return a&&(!e||e==="null")?null:e;case"undefined":return a&&(!e||e==="undefined")?undefined:e;case"date":return a&&isNaN(e)?Ext.Date.parse(e,Ext.Date.defaultFormat):Date(Number(e))}}return e},copyTo:function(b,d,g,e){if(typeof g=="string"){g=g.split(/[,;\s]/)}var h,c=g?g.length:0,a;for(h=0;h<c;h++){a=g[h];if(e||d.hasOwnProperty(a)){b[a]=d[a]}}return b},extend:(function(){var a=Object.prototype.constructor,b=function(d){for(var c in d){if(!d.hasOwnProperty(c)){continue}this[c]=d[c]}};return function(c,j,g){if(Ext.isObject(j)){g=j;j=c;c=g.constructor!==a?g.constructor:function(){j.apply(this,arguments)}}var e=function(){},d,h=j.prototype;e.prototype=h;d=c.prototype=new e();d.constructor=c;c.superclass=h;if(h.constructor===a){h.constructor=j}c.override=function(k){Ext.override(c,k)};d.override=b;d.proto=d;c.override(g);c.extend=function(k){return Ext.extend(c,k)};return c}}()),iterate:function(a,c,b){if(Ext.isEmpty(a)){return}if(b===undefined){b=a}if(Ext.isIterable(a)){Ext.Array.each.call(Ext.Array,a,c,b)}else{Ext.Object.each.call(Ext.Object,a,c,b)}},urlEncode:function(){var a=Ext.Array.from(arguments),b="";if(Ext.isString(a[1])){b=a[1]+"&";a[1]=false}return b+Ext.Object.toQueryString.apply(Ext.Object,a)},urlDecode:function(){return Ext.Object.fromQueryString.apply(Ext.Object,arguments)},getScrollbarSize:function(c){if(!Ext.isReady){return{}}var b=Ext._scrollbarSize;if(c||!b){var a=document.body,d=document.createElement("div");d.style.width=d.style.height="100px";d.style.overflow="scroll";d.style.position="absolute";a.appendChild(d);Ext._scrollbarSize=b={width:d.offsetWidth-d.clientWidth,height:d.offsetHeight-d.clientHeight};a.removeChild(d)}return b},typeOf:(function(){var a=/\S/,c=Object.prototype.toString,d={number:1,string:1,"boolean":1,"undefined":1},b={"[object Array]":"array","[object Date]":"date","[object Boolean]":"boolean","[object Number]":"number","[object RegExp]":"regexp"};return function(h){if(h===null){return"null"}var g=typeof h,e,j;if(d[g]){return g}e=b[j=c.call(h)];if(e){return e}if(g==="function"){return"function"}if(g==="object"){if(h.nodeType!==undefined){if(h.nodeType===3){return a.test(h.nodeValue)?"textnode":"whitespace"}else{return"element"}}return"object"}return j}}()),factory:function(b,e,a,g){var d=Ext.ClassManager,c;if(!b||b.isInstance){if(a&&a!==b){a.destroy()}return b}if(g){if(typeof b=="string"){return d.instantiateByAlias(g+"."+b)}else{if(Ext.isObject(b)&&"type" in b){return d.instantiateByAlias(g+"."+b.type,b)}}}if(b===true){return a||Ext.create(e)}if("xtype" in b){c=d.instantiateByAlias("widget."+b.xtype,b)}else{if("xclass" in b){c=Ext.create(b.xclass,b)}}if(c){if(a){a.destroy()}return c}if(a){return a.setConfig(b)}return Ext.create(e,b)},log:(function(){var a=function(){};a.info=a.warn=a.error=Ext.emptyFn;return a}())});(function(){var d=[""],h=/([^\d\.])/,b=/[^\d]/g,a=/[\-+]/g,g=/\s/g,c=/_/g,e;Ext.Version=e=function(r,n){var s=this,l=s.padModes,j,p,m,o,t,k,q;if(r.isVersion){r=r.version}s.version=q=String(r).toLowerCase().replace(c,".").replace(a,"");j=q.charAt(0);if(j in l){q=q.substring(1);m=l[j]}else{m=n?l[n]:0}s.pad=m;k=q.search(h);s.shortVersion=q;if(k!==-1){s.release=t=q.substr(k,r.length);s.shortVersion=q.substr(0,k);t=e.releaseValueMap[t]||t}s.releaseValue=t||m;s.shortVersion=s.shortVersion.replace(b,"");s.parts=o=q.split(".");for(p=o.length;p--;){o[p]=parseInt(o[p],10)}if(m===Infinity){o.push(m)}s.major=o[0]||m;s.minor=o[1]||m;s.patch=o[2]||m;s.build=o[3]||m;return s};e.prototype={isVersion:true,padModes:{"~":NaN,"^":Infinity},release:"",compareTo:function(t){var u=this,n=u.pad,r=u.parts,v=r.length,m=t.isVersion?t:new e(t),k=m.pad,q=m.parts,p=q.length,j=Math.max(v,p),o,l,s;for(o=0;o<j;o++){l=(o<v)?r[o]:n;s=(o<p)?q[o]:k;if(l<s){return -1}if(l>s){return 1}}l=u.releaseValue;s=m.releaseValue;if(l<s){return -1}if(l>s){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(j){return this.compareTo(j)>0},isGreaterThanOrEqual:function(j){return this.compareTo(j)>=0},isLessThan:function(j){return this.compareTo(j)<0},isLessThanOrEqual:function(j){return this.compareTo(j)<=0},equals:function(j){return this.compareTo(j)===0},match:function(j){j=String(j);return this.version.substr(0,j.length)===j},toArray:function(){var j=this;return[j.getMajor(),j.getMinor(),j.getPatch(),j.getBuild(),j.getRelease()]},getShortVersion:function(){return this.shortVersion},gt:function(j){return this.compareTo(j)>0},lt:function(j){return this.compareTo(j)<0},gtEq:function(j){return this.compareTo(j)>=0},ltEq:function(j){return this.compareTo(j)<=0}};Ext.apply(e,{aliases:{from:{extjs:"ext",core:"sencha-core"},to:{ext:["extjs"],"sencha-core":["core"]}},releaseValueMap:{dev:-6,alpha:-5,a:-5,beta:-4,b:-4,rc:-3,"#":-2,p:-1,pl:-1},getComponentValue:function(j){return !j?0:(isNaN(j)?this.releaseValueMap[j]||j:parseInt(j,10))},compare:function(l,k){var j=l.isVersion?l:new e(l);return j.compareTo(k)},set:function(o,m,l){var k=e.aliases.to[m],j=l.isVersion?l:new e(l),n;o[m]=j;if(k){for(n=k.length;n-->0;){o[k[n]]=j}}return j}});Ext.apply(Ext,{compatVersions:{},versions:{},lastRegisteredVersion:null,getCompatVersion:function(k){var j=Ext.compatVersions,l;if(!k){l=j.ext||j.touch||j.core}else{l=j[e.aliases.from[k]||k]}return l||Ext.getVersion(k)},setCompatVersion:function(k,j){e.set(Ext.compatVersions,k,j)},setVersion:function(k,j){Ext.lastRegisteredVersion=e.set(Ext.versions,k,j);return this},getVersion:function(k){var j=Ext.versions;if(!k){return j.ext||j.touch||j.core}return j[e.aliases.from[k]||k]},checkVersion:function(p,x){var t=Ext.isArray(p),l=e.aliases.from,y=t?p:d,k=y.length,m=Ext.versions,w=m.ext||m.touch,q,v,s,n,o,j,z,r,u;if(!t){d[0]=p}for(q=0;q<k;++q){if(!Ext.isString(z=y[q])){s=Ext.checkVersion(z.and||z.or,!z.or);if(z.not){s=!s}}else{if(z.indexOf(" ")>=0){z=z.replace(g,"")}v=z.indexOf("@");if(v<0){r=z;u=w}else{j=z.substring(0,v);if(!(u=m[l[j]||j])){if(x){return false}continue}r=z.substring(v+1)}v=r.indexOf("-");if(v<0){if(r.charAt(v=r.length-1)==="+"){n=r.substring(0,v);o=null}else{n=o=r}}else{if(v>0){n=r.substring(0,v);o=r.substring(v+1)}else{n=null;o=r.substring(v+1)}}s=true;if(n){n=new e(n,"~");s=n.ltEq(u)}if(s&&o){o=new e(o,"~");s=o.gtEq(u)}}if(s){if(!x){return true}}else{if(x){return false}}}return !!x},deprecate:function(j,l,m,k){if(e.compare(Ext.getVersion(j),l)<1){m.call(k)}}})}());(function(d){var e=(d&&d.packages)||{},c=d&&d.compatibility,b,a;for(b in e){a=e[b];Ext.setVersion(b,a.version)}if(c){if(Ext.isString(c)){Ext.setCompatVersion("core",c)}else{for(b in c){Ext.setCompatVersion(b,c[b])}}}if(!e.ext&&!e.touch){Ext.setVersion('ext','5.0.0.970');Ext.setVersion('sencha-core','5.0.0.970');}})(Ext.manifest);Ext.Config=function(b){var c=this,a=b.charAt(0).toUpperCase()+b.substr(1);c.name=b;c.names={internal:"_"+b,initializing:"is"+a+"Initializing",apply:"apply"+a,update:"update"+a,get:"get"+a,set:"set"+a,initGet:"initGet"+a,doSet:"doSet"+a,changeEvent:b.toLowerCase()+"change"};c.root=c};Ext.Config.map={};Ext.Config.get=function(b){var c=Ext.Config.map,a=c[b]||(c[b]=new Ext.Config(b));return a};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())},getInternalName:function(a){return a.$configPrefixed?this.names.internal:this.name},mergeSets:function(e,c,a){var b=c?Ext.Object.chain(c):{},d,g;if(e instanceof Array){for(d=e.length;d--;){g=e[d];if(!a||!(g in b)){b[g]=true}}}else{if(e){if(e.constructor===Object){for(d in e){g=e[d];if(!a||!(d in b)){b[d]=g}}}else{if(!a||!(e in b)){b[e]=true}}}}return b},makeGetter:function(){var a=this.name,b=this.names.internal;return function(){var c=this.$configPrefixed?b:a;return this[c]}},makeInitGetter:function(){var a=this.name,e=this.names,d=e.set,b=e.get,c=e.initializing;return function(){var g=this;g[c]=true;delete g[b];g[d](g.config[a]);delete g[c];return g[b].apply(g,arguments)}},makeSetter:function(){var a=this.name,e=this.names,c=e.internal,d=e.get,b=e.apply,h=e.update,g;g=function(m){var l=this,k=l.$configPrefixed?c:a,j=l[k];delete l[d];if(!l[b]||(m=l[b](m,j))!==undefined){if(m!==(j=l[k])){l[k]=m;if(l[h]){l[h](m,j)}}}return l};g.$isDefault=true;return g}};(function(){var b=Ext.Config,c=b.map,a=Ext.Object;Ext.Configurator=function(d){var g=this,e=d.prototype,h=d.superclass?d.superclass.self.$config:null;g.cls=d;if(h){g.configs=a.chain(h.configs);g.cachedConfigs=a.chain(h.cachedConfigs);g.initMap=a.chain(h.initMap);g.values=a.chain(h.values)}else{g.configs={};g.cachedConfigs={};g.initMap={};g.values={}}e.config=e.defaultConfig=g.values;d.$config=g};Ext.Configurator.prototype={self:Ext.Configurator,initList:null,add:function(v,d){var w=this,j=w.cls,m=w.configs,x=w.cachedConfigs,o=w.initMap,r=j.prototype,y=d&&d.$config.configs,e=w.values,l,n,u,g,h,k,z,q,p,t;for(z in v){t=v[z];l=t&&t.constructor===Object;n=l&&"$value" in t?t:null;if(n){u=!!n.cached;t=n.$value}g=n&&n.merge;h=m[z];if(h){if(d){g=h.merge;if(!g){continue}n=null}else{g=g||h.merge}k=e[z];if(g){t=g.call(h,t,k,j,d)}else{if(l){if(k&&k.constructor===Object){t=a.merge({},k,t)}}}}else{if(y){h=y[z];n=null}else{h=b.get(z)}m[z]=h;if(h.cached||u){x[z]=true}q=h.names;if(!r[p=q.get]){r[p]=h.getGetter()}if(!r[p=q.set]){r[p]=h.getSetter()}}if(n){if(h.owner!==j){m[z]=h=Ext.Object.chain(h);h.owner=j}Ext.apply(h,n);delete h.$value}if(t!==null){o[z]=true}else{if(r.$configPrefixed){r[m[z].names.internal]=null}else{r[m[z].name]=null}if(z in o){o[z]=false}}e[z]=t}},configure:function(z,m){var B=this,l=B.configs,n=B.initMap,p=B.initListMap,x=B.initList,q=B.cls.prototype,d=a.fork(B.values),w=!z.$configStrict,r=0,t=!x,e,h,j,D,v,u,k,o,C,s,A,g,y;if(t){B.initList=x=[];B.initListMap=p={};z.isFirstInstance=true;for(C in n){D=n[C];h=l[C];A=h.cached;if(D){o=h.names;s=d[C];if(!q[o.set].$isDefault||q[o.apply]||q[o.update]||typeof s==="object"){if(A){(e||(e=[])).push(h)}else{x.push(h);p[C]=true}z[o.get]=h.initGetter||h.getInitGetter()}else{q[h.getInternalName(q)]=s}}else{if(A){q[h.getInternalName(q)]=undefined}}}}k=e&&e.length;if(k){for(v=0;v<k;++v){u=e[v].getInternalName(q);z[u]=null}for(v=0;v<k;++v){o=(h=e[v]).names;j=o.get;if(z.hasOwnProperty(j)){z[o.set](d[h.name]);delete z[j]}}for(v=0;v<k;++v){u=e[v].getInternalName(q);q[u]=z[u];delete z[u]}}if(t){if(z.afterCachedConfig&&!z.afterCachedConfig.$nullFn){z.afterCachedConfig(m)}}z.isConfiguring=true;z.config=d;for(v=0,k=x.length;v<k;++v){h=x[v];z[h.names.get]=h.initGetter||h.getInitGetter()}if(z.transformInstanceConfig){m=z.transformInstanceConfig(m)}if(m){for(C in m){s=m[C];h=l[C];if(!h){if(w){z[C]=s}}else{if(!h.lazy){++r}if(!p[C]){z[h.names.get]=h.initGetter||h.getInitGetter()}g=h.merge;if(g){s=g.call(h,s,d[C],z)}else{if(s&&s.constructor===Object){y=d[C];if(y&&y.constructor===Object){s=a.merge(d[C],s)}else{s=Ext.clone(s)}}}}d[C]=s}}if(z.beforeInitConfig&&!z.beforeInitConfig.$nullFn){if(z.beforeInitConfig(m)===false){return}}if(m){for(C in m){if(!r){break}h=l[C];if(h&&!h.lazy){--r;o=h.names;j=o.get;if(z.hasOwnProperty(j)){z[o.set](d[C]);delete z[o.get]}}}}for(v=0,k=x.length;v<k;++v){h=x[v];o=h.names;j=o.get;if(!h.lazy&&z.hasOwnProperty(j)){z[o.set](d[h.name]);delete z[j]}}delete z.isConfiguring},getCurrentConfig:function(e){var d=e.defaultConfig,h={},g;for(g in d){h[g]=e[c[g].names.get]()}return h},reconfigure:function(r,n,e){var j=r.config,s=r.initialConfig,k=[],q=r.$configStrict,m,p,h,l,d,o,g;for(d in n){if(e&&(d in s)){continue}j[d]=n[d];m=c[d];if(m){r[m.names.get]=m.initGetter||m.getInitGetter()}else{if(q){continue}}k.push(d)}for(h=0,l=k.length;h<l;h++){d=k[h];m=c[d];if(m){o=m.names;p=o.get;if(r.hasOwnProperty(p)){r[o.set](n[d]);delete r[p]}}else{if(!q){m=Ext.Config.get(d);o=m.names;if(r[o.set]){r[o.set](n[d])}}}}}}}());Ext.Base=(function(c){var b=[],k,m=[],n=function(r,q){var t=this,p,o,s;if(r){o=Ext.Config.map[r];s=o.names.get;if(q&&t.hasOwnProperty(s)){p=t.config[r]}else{p=t[s]()}}else{p=t.getCurrentConfig()}return p},g=function(o){return function(){return this[o].apply(this,arguments)}},a=Ext.Version,j=/^\d/,l={},e={},h=function(){},d=h.prototype;Ext.apply(h,{$className:"Ext.Base",$isClass:true,create:function(){return Ext.create.apply(Ext,[this].concat(Array.prototype.slice.call(arguments,0)))},addDeprecations:function(u){var D=this,p=[],r=Ext.getCompatVersion(u.name),C,y,t,z,E,w,B,v,A,F,x,o,s,q;for(y in u){if(j.test(y)){q=new Ext.Version(y);q.deprecations=u[y];p.push(q)}}p.sort(a.compare);for(t=p.length;t--;){C=(q=p[t]).deprecations;E=D.prototype;s=C.statics;w=r&&r.lt(q);if(!w){break}while(C){A=C.methods;if(A){for(F in A){o=A[F];v=null;if(!o){}else{if(Ext.isString(o)){if(w){v=g(o)}}else{z="";if(o.message||o.fn){o=o.fn}B=E.hasOwnProperty(F)&&E[F];if(w&&o){o.$owner=D;o.$name=F;if(B){o.$previous=B}v=o}}}if(v){E[F]=v}}}C=s;s=null;E=D}}},extend:function(s){var u=this,o=s.prototype,q,r,t,p,v;q=u.prototype=Ext.Object.chain(o);q.self=u;u.superclass=q.superclass=o;if(!s.$isClass){for(r in d){if(r in q){q[r]=d[r]}}}v=o.$inheritableStatics;if(v){for(r=0,t=v.length;r<t;r++){p=v[r];if(!u.hasOwnProperty(p)){u[p]=s[p]}}}if(s.$onExtended){u.$onExtended=s.$onExtended.slice()}u.getConfigurator()},$onExtended:[],triggerExtended:function(){var q=this.$onExtended,p=q.length,o,r;if(p>0){for(o=0;o<p;o++){r=q[o];r.fn.apply(r.scope||this,arguments)}}},onExtended:function(p,o){this.$onExtended.push({fn:p,scope:o});return this},addStatics:function(o){this.addMembers(o,true);return this},addInheritableStatics:function(p){var s,o,r=this.prototype,q,t;s=r.$inheritableStatics;o=r.$hasInheritableStatics;if(!s){s=r.$inheritableStatics=[];o=r.$hasInheritableStatics={}}for(q in p){if(p.hasOwnProperty(q)){t=p[q];this[q]=t;if(!o[q]){o[q]=true;s.push(q)}}}return this},addMembers:function(r,C,p){var A=this,v=Ext.Function.clone,y=C?A:A.prototype,s=!C&&y.defaultConfig,B=Ext.enumerables,w=r.privates,x,u,z,t,o,q;if(w){delete r.privates;A.addMembers(w,C,q);w=w.statics;if(w&&!C){A.addMembers(w,true,q)}}for(o in r){if(r.hasOwnProperty(o)){t=r[o];if(typeof t==="function"&&!t.$isClass&&!t.$nullFn){if(t.$owner){t=v(t)}if(y.hasOwnProperty(o)){t.$previous=y[o]}t.$owner=A;t.$name=o}else{if(s&&(o in s)&&!y.config.hasOwnProperty(o)){(x||(x={}))[o]=t;continue}}y[o]=t}}if(x){A.addConfig(x)}if(B){for(u=0,z=B.length;u<z;++u){if(r.hasOwnProperty(o=B[u])){t=r[o];if(t&&!t.$nullFn){if(t.$owner){t=v(t)}t.$owner=A;t.$name=o;if(y.hasOwnProperty(o)){t.$previous=y[o]}}y[o]=t}}}return this},addMember:function(o,p){l[o]=p;this.addMembers(l);delete l[o];return this},borrow:function(u,o){var q=u.prototype,s={},r,t,p;o=Ext.Array.from(o);for(r=0,t=o.length;r<t;r++){p=o[r];s[p]=q[p]}return this.addMembers(s)},override:function(p){var r=this,u=p.statics,t=p.inheritableStatics,q=p.config,o=p.mixins,s=p.cachedConfig;if(u||t||q){p=Ext.apply({},p)}if(u){r.addMembers(u,true);delete p.statics}if(t){r.addInheritableStatics(t);delete p.inheritableStatics}if(q){r.addConfig(q);delete p.config}if(s){r.addCachedConfig(s);delete p.cachedConfig}delete p.mixins;r.addMembers(p);if(o){r.mixin(o)}return r},callParent:function(o){var p;return(p=this.callParent.caller)&&(p.$previous||((p=p.$owner?p:p.caller)&&p.$owner.superclass.self[p.$name])).apply(this,o||b)},callSuper:function(o){var p;return(p=this.callSuper.caller)&&((p=p.$owner?p:p.caller)&&p.$owner.superclass.self[p.$name]).apply(this,o||b)},mixin:function(o,p){var u=this,A,w,z,v,q,t,y,x,s;if(typeof o!=="string"){s=o;if(s instanceof Array){for(q=0,t=s.length;q<t;q++){A=s[q];u.mixin(A.prototype.mixinId||A.$className,A)}}else{for(var r in s){u.mixin(r,s[r])}}return}A=p.prototype;w=u.prototype;if(A.onClassMixedIn){A.onClassMixedIn.call(p,u)}if(!w.hasOwnProperty("mixins")){if("mixins" in w){w.mixins=Ext.Object.chain(w.mixins)}else{w.mixins={}}}for(z in A){x=A[z];if(z==="mixins"){Ext.applyIf(w.mixins,x)}else{if(!(z==="mixinId"||z==="config")&&(w[z]===undefined)){w[z]=x}}}v=A.$inheritableStatics;if(v){for(q=0,t=v.length;q<t;q++){y=v[q];if(!u.hasOwnProperty(y)){u[y]=p[y]}}}if("config" in A){u.addConfig(A.config,p)}w.mixins[o]=A;if(A.afterClassMixedIn){A.afterClassMixedIn.call(p,u)}return u},addConfig:function(p,q){var o=this.$config||this.getConfigurator();o.add(p,q)},addCachedConfig:function(o,q){var r={},p;for(p in o){r[p]={cached:true,$value:o[p]}}this.addConfig(r,q)},getConfigurator:function(){return this.$config||new Ext.Configurator(this)},getName:function(){return Ext.getClassName(this)},createAlias:c(function(p,o){e[p]=function(){return this[o].apply(this,arguments)};this.override(e);delete e[p]})});for(k in h){if(h.hasOwnProperty(k)){m.push(k)}}h.$staticMembers=m;h.getConfigurator();h.addMembers({$className:"Ext.Base",isInstance:true,$configPrefixed:true,$configStrict:true,isConfiguring:false,isFirstInstance:false,statics:function(){var p=this.statics.caller,o=this.self;if(!p){return o}return p.$owner},callParent:function(p){var q,o=(q=this.callParent.caller)&&(q.$previous||((q=q.$owner?q:q.caller)&&q.$owner.superclass[q.$name]));return o.apply(this,p||b)},callSuper:function(p){var q,o=(q=this.callSuper.caller)&&((q=q.$owner?q:q.caller)&&q.$owner.superclass[q.$name]);return o.apply(this,p||b)},self:h,constructor:function(){return this},getConfigurator:function(){return this.$config||this.self.getConfigurator()},initConfig:function(q){var p=this,o=p.getConfigurator();p.initConfig=Ext.emptyFn;p.initialConfig=q||{};o.configure(p,q);return p},beforeInitConfig:Ext.emptyFn,getConfig:n,setConfig:function(p,r){var q=this,o;if(typeof p==="string"){o=Ext.Config.map[p];if(!o){Ext.Logger.error("Invalid property name for setter: '"+p+"' for '"+this.$className+"'.")}this[o.names.set](r)}else{if(p){q.getConfigurator().reconfigure(q,p)}}return q},getCurrentConfig:function(){var o=this.getConfigurator();return o.getCurrentConfig(this)},hasConfig:function(o){return o in this.defaultConfig},getInitialConfig:function(p){var o=this.config;if(!p){return o}return o[p]},$links:null,link:function(p,r){var q=this,o=q.$links||(q.$links={});o[p]=true;q[p]=r;return r},unlink:function(t){var r=this,o,q,p,s;for(o=0,q=t.length;o<q;o++){p=t[o];s=r[p];if(s){if(s.isInstance&&!s.isDestroyed){s.destroy()}else{if(s.parentNode&&"nodeType" in s){s.parentNode.removeChild(s)}}}r[p]=null}return r},destroy:function(){var p=this,o=p.$links;p.destroy=Ext.emptyFn;p.isDestroyed=true;if(o){p.$links=null;p.unlink(Ext.Object.getKeys(o))}}});d.callOverridden=d.callParent;return h}(Ext.Function.flexSetter));(function(){var c,b=Ext.Base,d=b.$staticMembers;function a(g){function e(){return this.constructor.apply(this,arguments)||null}return e}Ext.Class=c=function(g,h,e){if(typeof g!="function"){e=h;h=g;g=null}if(!h){h={}}g=c.create(g,h);c.process(g,h,e);return g};Ext.apply(c,{makeCtor:a,onBeforeCreated:function(g,h,e){g.addMembers(h);e.onCreated.call(g,g)},create:function(e,j){var h=d.length,g;if(!e){e=a()}while(h--){g=d[h];e[g]=b[g]}return e},process:function(e,n,h){var g=n.preprocessors||c.defaultPreprocessors,q=this.preprocessors,t={onBeforeCreated:this.onBeforeCreated},s=[],u,m,l,r,k,p,o;delete n.preprocessors;e._classHooks=t;for(l=0,r=g.length;l<r;l++){u=g[l];if(typeof u=="string"){u=q[u];m=u.properties;if(m===true){s.push(u.fn)}else{if(m){for(k=0,p=m.length;k<p;k++){o=m[k];if(n.hasOwnProperty(o)){s.push(u.fn);break}}}}}else{s.push(u)}}t.onCreated=h?h:Ext.emptyFn;t.preprocessors=s;this.doProcess(e,n,t)},doProcess:function(g,l,e){var k=this,m=e.preprocessors,h=m.shift(),j=k.doProcess;for(;h;h=m.shift()){if(h.call(k,g,l,e,j)===false){return}}e.onBeforeCreated.apply(k,arguments)},preprocessors:{},registerPreprocessor:function(g,k,h,e,j){if(!e){e="last"}if(!h){h=[g]}this.preprocessors[g]={name:g,properties:h||false,fn:k};this.setDefaultPreprocessorPosition(g,e,j);return this},getPreprocessor:function(e){return this.preprocessors[e]},getPreprocessors:function(){return this.preprocessors},defaultPreprocessors:[],getDefaultPreprocessors:function(){return this.defaultPreprocessors},setDefaultPreprocessors:function(e){this.defaultPreprocessors=Ext.Array.from(e);return this},setDefaultPreprocessorPosition:function(h,k,j){var e=this.defaultPreprocessors,g;if(typeof k=="string"){if(k==="first"){e.unshift(h);return this}else{if(k==="last"){e.push(h);return this}}k=(k==="after")?1:-1}g=Ext.Array.indexOf(e,j);if(g!==-1){Ext.Array.splice(e,Math.max(0,g+k),0,h)}return this}});c.registerPreprocessor("extend",function(g,j,o){var k=Ext.Base,l=k.prototype,m=j.extend,e,n,h;delete j.extend;if(m&&m!==Object){e=m}else{e=k}n=e.prototype;if(!e.$isClass){for(h in l){if(!n[h]){n[h]=l[h]}}}g.extend(e);g.triggerExtended.apply(g,arguments);if(j.onClassExtended){g.onExtended(j.onClassExtended,g);delete j.onClassExtended}},true);c.registerPreprocessor("privates",function(e,j){var h=j.privates,k=h.statics,g=h.privacy||true;delete j.privates;delete h.statics;e.addMembers(h,false,g);if(k){e.addMembers(k,true,g)}});c.registerPreprocessor("statics",function(e,g){e.addStatics(g.statics);delete g.statics});c.registerPreprocessor("inheritableStatics",function(e,g){e.addInheritableStatics(g.inheritableStatics);delete g.inheritableStatics});c.registerPreprocessor("platformConfig",function(h,p,t){var q=p.platformConfig,l=p.config||{},r=Ext.theme||(Ext.theme={name:"Default"}),k,o,g,n,s,m,e;delete p.platformConfig;r=r&&r.name;if(!Ext.filterPlatform){Ext.filterPlatform=function(x){var G=false,v=navigator.userAgent,z,D;x=[].concat(x);function C(H){var j=/Mobile(\/|\s)/.test(H);return/(iPhone|iPod)/.test(H)||(!/(Silk)/.test(H)&&(/(Android)/.test(H)&&(/(Android 2)/.test(H)||j)))||(/(BlackBerry|BB)/.test(H)&&j)||/(Windows Phone)/.test(H)}function B(j){return !C(j)&&(/iPad/.test(j)||/Android/.test(j)||/(RIM Tablet OS)/.test(j)||(/MSIE 10/.test(j)&&/; Touch/.test(j)))}var u=window.location.search.substr(1),w=u.split("&"),y={},E,A;for(A=0;A<w.length;A++){var F=w[A].split("=");y[F[0]]=F[1]}E=y.platform;if(E){return x.indexOf(E)!=-1}for(z=0,D=x.length;z<D;z++){switch(x[z]){case"phone":G=C(v);break;case"tablet":G=B(v);break;case"desktop":G=!C(v)&&!B(v);break;case"ios":G=/(iPad|iPhone|iPod)/.test(v);break;case"android":G=/(Android|Silk)/.test(v);break;case"blackberry":G=/(BlackBerry|BB)/.test(v);break;case"safari":G=/Safari/.test(v)&&!(/(BlackBerry|BB)/.test(v));break;case"chrome":G=/Chrome/.test(v);break;case"ie10":G=/MSIE 10/.test(v);break}if(G){return true}}return false}}for(n=0,s=q.length;n<s;n++){g=q[n];k=g.platform;delete g.platform;o=[].concat(g.theme);e=o.length;delete g.theme;if(k&&Ext.filterPlatform(k)){Ext.merge(l,g)}if(e){for(m=0;m<e;m++){if(Ext.theme.name==o[m]){Ext.merge(l,g)}}}}});c.registerPreprocessor("config",function(e,g){if(g.hasOwnProperty("$configPrefixed")){e.prototype.$configPrefixed=g.$configPrefixed}e.addConfig(g.config);delete g.config});c.registerPreprocessor("cachedConfig",function(e,g){if(g.hasOwnProperty("$configPrefixed")){e.prototype.$configPrefixed=g.$configPrefixed}e.addCachedConfig(g.cachedConfig);delete g.cachedConfig});c.registerPreprocessor("mixins",function(j,k,e){var h=k.mixins,g=e.onCreated;delete k.mixins;e.onCreated=function(){e.onCreated=g;j.mixin(h);return e.onCreated.apply(this,arguments)}});Ext.extend=function(h,j,g){if(arguments.length===2&&Ext.isObject(j)){g=j;j=h;h=null}var e;if(!j){throw new Error("[Ext.extend] Attempting to extend from a class which has not been loaded on the page.")}g.extend=j;g.preprocessors=["extend","statics","inheritableStatics","mixins","platformConfig","config"];if(h){e=new c(h,g);e.prototype.constructor=h}else{e=new c(g)}e.prototype.override=function(l){for(var k in l){if(l.hasOwnProperty(k)){this[k]=l[k]}}};return e}}());Ext.Inventory=function(){var a=this;a.names=[];a.paths={};a.alternateToName={};a.aliasToName={};a.nameToAliases={};a.nameToAlternates={}};Ext.Inventory.prototype={_array1:[0],prefixes:null,dotRe:/\./g,wildcardRe:/\*/g,addAlias:function(b,a){return this.addMapping(b,a,this.aliasToName,this.nameToAliases)},addAlternate:function(a,b){return this.addMapping(a,b,this.alternateToName,this.nameToAlternates)},addMapping:function(l,e,g,n){var b=l.$className||l,j=b,k=this._array1,o,d,p,h,c,m;if(Ext.isString(b)){j={};j[b]=e}for(p in j){d=j[p];if(Ext.isString(d)){k[0]=d;d=k}c=d.length;m=n[p]||(n[p]=[]);for(h=0;h<c;++h){if(!(o=d[h])){continue}if(g[o]!==p){g[o]=p;m.push(o)}}}},getAliasesByName:function(a){return this.nameToAliases[a]||null},getAlternatesByName:function(a){return this.nameToAliases[a]||null},getNameByAlias:function(a){return this.aliasToName[a]||""},getNameByAlternate:function(a){return this.alternateToName[a]||""},getNamesByExpression:function(m,a,j){var v=this,s=v.aliasToName,p=v.alternateToName,b=v.nameToAliases,d=v.nameToAlternates,u=j?a:{},l=[],t=Ext.isString(m)?[m]:m,h=t.length,e=v.wildcardRe,c,q,r,k,o,w,g;for(q=0;q<h;++q){if((c=t[q]).indexOf("*")<0){if(!(w=s[c])){if(!(w=p[c])){w=c}}if(!(w in u)&&!(a&&(w in a))){u[w]=1;l.push(w)}}else{g=new RegExp("^"+c.replace(e,"(.*?)")+"$");for(w in b){if(!(w in u)&&!(a&&(w in a))){if(!(k=g.test(w))){o=(r=b[w]).length;while(!k&&o-->0){k=g.test(r[o])}r=d[w];if(r&&!k){o=r.length;while(!k&&o-->0){k=g.test(r[o])}}}if(k){u[w]=1;l.push(w)}}}}}return l},getPath:function(b){var c=this,e=c.paths,a="",d;if(b in e){a=e[b]}else{d=c.getPrefix(b);if(d){b=b.substring(d.length+1);a=e[d];if(a){a+="/"}}a+=b.replace(c.dotRe,"/")+".js"}return a},getPrefix:function(b){if(b in this.paths){return b}var e=this.getPrefixes(),a=e.length,c,d;while(a-->0){c=(d=e[a]).length;if(c<b.length&&b.charAt(c)==="."&&d===b.substring(0,c)){return d}}return""},getPrefixes:function(){var a=this,b=a.prefixes;if(!b){a.prefixes=b=a.names.slice(0);b.sort(a._compareNames)}return b},removeName:function(b){var g=this,k=g.aliasToName,m=g.alternateToName,l=g.nameToAliases,e=g.nameToAlternates,c=l[b],h=e[b],d,j;delete l[b];delete e[b];if(c){for(d=c.length;d--;){if(b===(j=c[d])){delete k[j]}}}if(h){for(d=h.length;d--;){if(b===(j=h[d])){delete m[j]}}}},resolveName:function(a){var b=this,c;if(!(a in b.nameToAliases)){if(!(c=b.aliasToName[a])){c=b.alternateToName[a]}}return c||a},select:function(e,c){var d=this,g={},b={excludes:g,exclude:function(){d.getNamesByExpression(arguments,g,true);return this}},a;for(a in e){b[a]=d.selectMethod(g,e[a],c||e)}return b},selectMethod:function(d,b,a){var c=this;return function(e){var g=Ext.Array.slice(arguments,1);g.unshift(c.getNamesByExpression(e,d));return b.apply(a,g)}},setPath:Ext.Function.flexSetter(function(a,c){var b=this;b.paths[a]=c;b.names.push(a);b.prefixes=null;return b}),_compareNames:function(a,c){var b=a.length-c.length;if(!b){b=(a<c)?-1:1}return b}};Ext.ClassManager=(function(e,m,c,p,g){var k=Ext.Class.makeCtor,a=Ext.apply(new Ext.Inventory(),{classes:{},classState:{},existCache:{},namespaceRewrites:[{from:"Ext.",to:Ext}],enableNamespaceParseCache:true,namespaceParseCache:{},instantiators:[],isCreated:function(u){var t,v,s,r,w;if(a.classes[u]||a.existCache[u]){return true}r=g;w=a.parseNamespace(u);for(t=0,v=w.length;t<v;t++){s=w[t];if(typeof s!=="string"){r=s}else{if(!r||!r[s]){return false}r=r[s]}}a.triggerCreated(u);return true},createdListeners:[],nameCreatedListeners:{},existsListeners:[],nameExistsListeners:{},triggerCreated:function(r){if(!a.existCache[r]){a.triggerExists(r)}a.classState[r]+=20;a.notify(r,a.createdListeners,a.nameCreatedListeners)},onCreated:function(t,s,r){a.addListener(t,s,r,a.createdListeners,a.nameCreatedListeners)},triggerExists:function(r,s){a.existCache[r]=s||1;a.classState[r]+=20;a.notify(r,a.existsListeners,a.nameExistsListeners)},onExists:function(t,s,r){a.addListener(t,s,r,a.existsListeners,a.nameExistsListeners)},notify:function(z,B,t){var u=a.getAlternatesByName(z),A=[z],w,y,v,x,s,r;for(w=0,y=B.length;w<y;w++){s=B[w];s.fn.call(s.scope,z)}while(A){for(w=0,y=A.length;w<y;w++){r=A[w];B=t[r];if(B){for(v=0,x=B.length;v<x;v++){s=B[v];s.fn.call(s.scope,r)}delete t[r]}}A=u;u=null}},addListener:function(w,v,u,t,s){if(Ext.isArray(u)){w=Ext.Function.createBarrier(u.length,w,v);for(r=0;r<u.length;r++){this.addListener(w,null,u[r],t,s)}return}var r,x={fn:w,scope:v};if(u){if(this.isCreated(u)){w.call(v,u);return}if(!s[u]){s[u]=[]}s[u].push(x)}else{t.push(x)}},parseNamespace:function(t){var r=this.namespaceParseCache,u,w,y,s,B,A,z,v,x;if(this.enableNamespaceParseCache){if(r.hasOwnProperty(t)){return r[t]}}u=[];w=this.namespaceRewrites;y=g;s=t;for(v=0,x=w.length;v<x;v++){B=w[v];A=B.from;z=B.to;if(s===A||s.substring(0,A.length)===A){s=s.substring(A.length);if(typeof z!=="string"){y=z}else{u=u.concat(z.split("."))}break}}u.push(y);u=u.concat(s.split("."));if(this.enableNamespaceParseCache){r[t]=u}return u},setNamespace:function(u,x){var s=g,y=this.parseNamespace(u),w=y.length-1,r=y[w],v,t;for(v=0;v<w;v++){t=y[v];if(typeof t!=="string"){s=t}else{if(!s[t]){s[t]={}}s=s[t]}}s[r]=x;return s[r]},createNamespaces:function(){var r=g,w,t,u,s,v,x;for(u=0,v=arguments.length;u<v;u++){w=this.parseNamespace(arguments[u]);for(s=0,x=w.length;s<x;s++){t=w[s];if(typeof t!=="string"){r=t}else{if(!r[t]){r[t]={}}r=r[t]}}}return r},set:function(r,u){var t=this,s=t.getName(u);t.classes[r]=t.setNamespace(r,u);if(s&&s!==r){t.addAlternate(s,r)}return this},get:function(t){var v=this.classes,r,x,s,u,w;if(v[t]){return v[t]}r=g;x=this.parseNamespace(t);for(u=0,w=x.length;u<w;u++){s=x[u];if(typeof s!=="string"){r=s}else{if(!r||!r[s]){return null}r=r[s]}}return r},addNameAliasMappings:function(r){this.addAlias(r)},addNameAlternateMappings:function(r){this.addAlternate(r)},getByAlias:function(r){return this.get(this.getNameByAlias(r))},getName:function(r){return r&&r.$className||""},getClass:function(r){return r&&r.self||null},create:function(s,u,r){var t=k(s);if(typeof u==="function"){u=u(t)}u.$className=s;return new e(t,u,function(){var v=u.postprocessors||a.defaultPostprocessors,C=a.postprocessors,D=[],B,x,A,w,z,y,E;delete u.postprocessors;for(x=0,A=v.length;x<A;x++){B=v[x];if(typeof B==="string"){B=C[B];y=B.properties;if(y===true){D.push(B.fn)}else{if(y){for(w=0,z=y.length;w<z;w++){E=y[w];if(u.hasOwnProperty(E)){D.push(B.fn);break}}}}}else{D.push(B)}}u.postprocessors=D;u.createdFn=r;a.processCreate(s,this,u)})},processCreate:function(u,s,w){var v=this,r=w.postprocessors.shift(),t=w.createdFn;if(!r){if(u){v.set(u,s)}delete s._classHooks;if(t){t.call(s,s)}if(u){v.triggerCreated(u)}return}if(r.call(v,u,s,w,v.processCreate)!==false){v.processCreate(u,s,w)}},createOverride:function(x,v,t){var z=this,A=v.override,C=v.requires,u=v.uses,w=v.mixins,r,B=v.compatibility,y,s=function(){var D,H,G,F,E;if(!y){H=C?C.slice(0):[];if(w){if(!(r=w instanceof Array)){for(F in w){if(Ext.isString(D=w[F])){H.push(D)}}}else{for(G=0,E=w.length;G<E;++G){if(Ext.isString(D=w[G])){H.push(D)}}}}y=true;if(H.length){Ext.require(H,s);return}}if(r){for(G=0,E=w.length;G<E;++G){if(Ext.isString(D=w[G])){w[G]=Ext.ClassManager.get(D)}}}else{if(w){for(F in w){if(Ext.isString(D=w[F])){w[F]=Ext.ClassManager.get(D)}}}}D=z.get(A);delete v.override;delete v.compatibility;delete v.requires;delete v.uses;Ext.override(D,v);z.triggerCreated(x);if(u){Ext.Loader.addUsedClasses(u)}if(t){t.call(D,D)}};z.triggerExists(x,2);if(!B||Ext.checkVersion(B)){z.onCreated(s,z,A)}return z},instantiateByAlias:function(){var s=arguments[0],r=c.call(arguments),t=this.getNameByAlias(s);r[0]=t;return Ext.create.apply(Ext,r)},instantiate:function(){return Ext.create.apply(Ext,arguments)},dynInstantiate:function(s,r){r=p(r,true);r.unshift(s);return Ext.create.apply(Ext,r)},getInstantiator:function(u){var t=this.instantiators,v,s,r;v=t[u];if(!v){s=u;r=[];for(s=0;s<u;s++){r.push("a["+s+"]")}v=t[u]=new Function("c","a","return new c("+r.join(",")+")")}return v},postprocessors:{},defaultPostprocessors:[],registerPostprocessor:function(s,v,t,r,u){if(!r){r="last"}if(!t){t=[s]}this.postprocessors[s]={name:s,properties:t||false,fn:v};this.setDefaultPostprocessorPosition(s,r,u);return this},setDefaultPostprocessors:function(r){this.defaultPostprocessors=p(r);return this},setDefaultPostprocessorPosition:function(s,v,u){var t=this.defaultPostprocessors,r;if(typeof v==="string"){if(v==="first"){t.unshift(s);return this}else{if(v==="last"){t.push(s);return this}}v=(v==="after")?1:-1}r=Ext.Array.indexOf(t,u);if(r!==-1){Ext.Array.splice(t,Math.max(0,r+v),0,s)}return this}});a.registerPostprocessor("alias",function(t,s,w){var r=Ext.Array.from(w.alias),u,v;for(u=0,v=r.length;u<v;u++){m=r[u];this.addAlias(s,m)}},["xtype","alias"]);a.registerPostprocessor("singleton",function(s,r,u,t){if(u.singleton){t.call(this,s,new r(),u)}else{return true}return false});a.registerPostprocessor("alternateClassName",function(s,r,w){var u=w.alternateClassName,t,v,x;if(!(u instanceof Array)){u=[u]}for(t=0,v=u.length;t<v;t++){x=u[t];this.set(x,r)}});a.registerPostprocessor("debugHooks",function(s,r,t){var u=r.isInstance?r.self:r;delete u.prototype.debugHooks});a.registerPostprocessor("deprecated",function(s,r,t){var u=r.isInstance?r.self:r;u.addDeprecations(t.deprecated);delete u.prototype.deprecated});Ext.apply(Ext,{create:function(){var t=arguments[0],u=typeof t,s=c.call(arguments,1),r;if(u==="function"){r=t}else{if(u!=="string"&&s.length===0){s=[t];if(!(t=t.xclass)){t=s[0].xtype;if(t){t="widget."+t}}}t=a.resolveName(t);r=a.get(t)}if(!r){Ext.syncRequire(t);r=a.get(t)}return a.getInstantiator(s.length)(r,s)},widget:function(t,s){var w=t,u,v,r;if(typeof w!=="string"){s=t;w=s.xtype;v=s.xclass}else{s=s||{}}if(s.isComponent){return s}if(!v){u="widget."+w;v=a.getNameByAlias(u)}if(v){r=a.get(v)}if(!r){return Ext.create(v||u,s)}return new r(s)},createByAlias:m(a,"instantiateByAlias"),define:function(s,t,r){if(t.override){a.classState[s]=20;return a.createOverride.apply(a,arguments)}a.classState[s]=10;return a.create.apply(a,arguments)},undefine:function(u){var s=a.classes,w,x,t,r;delete a.namespaceParseCache[u];delete s[u];delete a.existCache[u];delete a.classState[u];a.removeName(u);w=a.parseNamespace(u);x=w.length-1;t=w[0];for(r=1;r<x;r++){t=t[w[r]];if(!t){return}}try{delete t[w[x]]}catch(v){t[w[x]]=undefined}},getClassName:m(a,"getName"),getDisplayName:function(r){if(r){if(r.displayName){return r.displayName}if(r.$name&&r.$class){return Ext.getClassName(r.$class)+"#"+r.$name}if(r.$className){return r.$className}}return"Anonymous"},getClass:m(a,"getClass"),namespace:m(a,"createNamespaces")});Ext.createWidget=Ext.widget;Ext.ns=Ext.namespace;e.registerPreprocessor("className",function(r,s){if("$className" in s){r.$className=s.$className}},true,"first");e.registerPreprocessor("alias",function(C,w){var A=C.prototype,t=p(w.xtype),r=p(w.alias),D="widget.",B=D.length,x=Array.prototype.slice.call(A.xtypesChain||[]),u=Ext.merge({},A.xtypesMap||{}),v,z,y,s;for(v=0,z=r.length;v<z;v++){y=r[v];if(y.substring(0,B)===D){s=y.substring(B);Ext.Array.include(t,s)}}C.xtype=w.xtype=t[0];w.xtypes=t;for(v=0,z=t.length;v<z;v++){s=t[v];if(!u[s]){u[s]=true;x.push(s)}}w.xtypesChain=x;w.xtypesMap=u;Ext.Function.interceptAfter(w,"onClassCreated",function(){var E=A.mixins,G,F;for(G in E){if(E.hasOwnProperty(G)){F=E[G];t=F.xtypes;if(t){for(v=0,z=t.length;v<z;v++){s=t[v];if(!u[s]){u[s]=true;x.push(s)}}}}}});for(v=0,z=t.length;v<z;v++){s=t[v];Ext.Array.include(r,D+s)}w.alias=r},["xtype","alias"]);if(Ext.manifest){var d=Ext.manifest,j=d.classes,q=d.paths,h={},o={},n,l,b;if(q){if(d.bootRelative){baseUrl=Ext.Boot.baseUrl;for(path in q){if(q.hasOwnProperty(path)){q[path]=baseUrl+q[path]}}}a.setPath(q)}if(j){for(n in j){o[n]=[];h[n]=[];l=j[n];if(l.alias){h[n]=l.alias}if(l.alternates){o[n]=l.alternates}}}a.addAlias(h);a.addAlternate(o)}return a}(Ext.Class,Ext.Function.alias,Array.prototype.slice,Ext.Array.from,Ext.global));Ext.env||(Ext.env={});Ext.env.Browser=function(s,n){var t=this,a=t.browserPrefixes,b=t.enginePrefixes,q=s.match(new RegExp("((?:"+Ext.Object.getValues(a).join(")|(?:")+"))([\\w\\._]+)")),h=s.match(new RegExp("((?:"+Ext.Object.getValues(b).join(")|(?:")+"))([\\w\\._]+)")),c=t.browserNames,p=c.other,k=t.engineNames,r=k.other,m="",g="",d="",j=false,o,l,u;t.userAgent=s;if(q){p=c[Ext.Object.getKey(a,q[1])];if(p==="Safari"&&/^Opera/.test(s)){p="Opera"}m=new Ext.Version(q[2])}if(h){r=k[Ext.Object.getKey(b,h[1])];g=new Ext.Version(h[2])}if(r=="Trident"&&p!="IE"){p="IE";var e=s.match(/.*rv:(\d+.\d+)/);if(e&&e.length){e=e[1];m=new Ext.Version(e)}}if(s.match(/FB/)&&p=="Other"){p=c.safari;r=k.webkit}if(s.match(/Android.*Chrome/g)){p="ChromeMobile"}if(s.match(/OPR/)){p="Opera";q=s.match(/OPR\/(\d+.\d+)/);m=new Ext.Version(q[1])}Ext.apply(this,{engineName:r,engineVersion:g,name:p,version:m});this.setFlag(p,true,n);if(m){d=m.getMajor()||"";if(t.is.IE){d=parseInt(d,10);l=document.documentMode;if(l==7||(d==7&&l!=8&&l!=9&&l!=10)){d=7}else{if(l==8||(d==8&&l!=8&&l!=9&&l!=10)){d=8}else{if(l==9||(d==9&&l!=7&&l!=8&&l!=10)){d=9}else{if(l==10||(d==10&&l!=7&&l!=8&&l!=9)){d=10}}}}if(d<=7){Ext.isIE7m=true}if(d<=8){Ext.isIE8m=true}if(d<=9){Ext.isIE9m=true}if(d>=7){Ext.isIE7p=true}if(d>=8){Ext.isIE8p=true}if(d>=9){Ext.isIE9p=true}if(d>=10){Ext.isIE10p=true}}if(t.is.Opera&&parseInt(d,10)<=12){Ext.isOpera12m=true}Ext.chromeVersion=Ext.isChrome?d:0;Ext.firefoxVersion=Ext.isFirefox?d:0;Ext.ieVersion=Ext.isIE?d:0;Ext.operaVersion=Ext.isOpera?d:0;Ext.safariVersion=Ext.isSafari?d:0;Ext.webKitVersion=Ext.isWebKit?d:0;this.setFlag(p+d,true,n);this.setFlag(p+m.getShortVersion())}for(o in c){if(c.hasOwnProperty(o)){u=c[o];this.setFlag(u,p===u)}}this.setFlag(u);if(g){this.setFlag(r+(g.getMajor()||""));this.setFlag(r+g.getShortVersion())}for(o in k){if(k.hasOwnProperty(o)){u=k[o];this.setFlag(u,r===u,n)}}this.setFlag("Standalone",!!navigator.standalone);this.setFlag("Ripple",!!document.getElementById("tinyhippos-injected")&&!Ext.isEmpty(window.top.ripple));this.setFlag("WebWorks",!!window.blackberry);if(typeof window.PhoneGap!="undefined"||typeof window.Cordova!="undefined"||typeof window.cordova!="undefined"){j=true;this.setFlag("PhoneGap");this.setFlag("Cordova")}else{if(!!window.isNK){j=true;this.setFlag("Sencha")}}if(/(Glass)/i.test(s)){this.setFlag("GoogleGlass")}if(/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)(?!.*FBAN)/i.test(s)){j=true}this.setFlag("WebView",j);this.isStrict=Ext.isStrict=document.compatMode=="CSS1Compat";this.isSecure=/^https/i.test(window.location.protocol);this.identity=p+d+(this.isStrict?"Strict":"Quirks")};Ext.env.Browser.prototype={constructor:Ext.env.Browser,browserNames:{ie:"IE",firefox:"Firefox",safari:"Safari",chrome:"Chrome",opera:"Opera",dolfin:"Dolfin",webosbrowser:"webOSBrowser",chromeMobile:"ChromeMobile",chromeiOS:"ChromeiOS",silk:"Silk",other:"Other"},engineNames:{webkit:"WebKit",gecko:"Gecko",presto:"Presto",trident:"Trident",other:"Other"},enginePrefixes:{webkit:"AppleWebKit/",gecko:"Gecko/",presto:"Presto/",trident:"Trident/"},browserPrefixes:{ie:"MSIE ",firefox:"Firefox/",chrome:"Chrome/",safari:"Version/",opera:"OPR/",dolfin:"Dolfin/",webosbrowser:"wOSBrowser/",chromeMobile:"CrMo/",chromeiOS:"CriOS/",silk:"Silk/"},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(a){return !!this.is[a]},name:null,version:null,engineName:null,engineVersion:null,setFlag:function(a,c,b){if(typeof c=="undefined"){c=true}this.is[a]=c;this.is[a.toLowerCase()]=c;if(b){Ext["is"+a]=c}return this},getStyleDashPrefix:function(){return this.styleDashPrefixes[this.engineName]},getStylePrefix:function(){return this.stylePrefixes[this.engineName]},getVendorProperyName:function(a){var b=this.propertyPrefixes[this.engineName];if(b.length>0){return b+Ext.String.capitalize(a)}return a},getPreferredTranslationMethod:function(a){if(typeof a=="object"&&"translationMethod" in a&&a.translationMethod!=="auto"){return a.translationMethod}else{if(this.is.AndroidStock2||this.is.IE){return"scrollposition"}else{return"csstransform"}}}};(function(a){Ext.browser=new Ext.env.Browser(a,true);Ext.userAgent=a.toLowerCase()}(Ext.global.navigator.userAgent));Ext.env.OS=function(p,b,m){var l=this,k=l.names,d=l.prefixes,a,j="",g=l.is,c,h,e,o,n;m=m||Ext.browser;for(c in d){if(d.hasOwnProperty(c)){h=d[c];e=p.match(new RegExp("(?:"+h+")([^\\s;]+)"));if(e){a=k[c];n=e[1];if(n&&n=="HTC_"){j=new Ext.Version("2.3")}else{if(n&&n=="Silk/"){j=new Ext.Version("2.3")}else{j=new Ext.Version(e[e.length-1])}}break}}}if(!a){a=k[(p.toLowerCase().match(/mac|win|linux/)||["other"])[0]];j=new Ext.Version("")}this.name=a;this.version=j;if(b){this.setFlag(b.replace(/ simulator$/i,""))}this.setFlag(a);if(j){this.setFlag(a+(j.getMajor()||""));this.setFlag(a+j.getShortVersion())}for(c in k){if(k.hasOwnProperty(c)){o=k[c];if(!g.hasOwnProperty(a)){this.setFlag(o,(a===o))}}}if(this.name=="iOS"&&window.screen.height==568){this.setFlag("iPhone5")}if(m.is.Safari||m.is.Silk){if(this.is.Android2||this.is.Android3||m.version.shortVersion==501){m.setFlag("AndroidStock");m.setFlag("AndroidStock2")}if(this.is.Android4){m.setFlag("AndroidStock");m.setFlag("AndroidStock4")}}};Ext.env.OS.prototype={constructor:Ext.env.OS,names:{ios:"iOS",android:"Android",windowsPhone:"WindowsPhone",webos:"webOS",blackberry:"BlackBerry",rimTablet:"RIMTablet",mac:"MacOS",win:"Windows",tizen:"Tizen",linux:"Linux",bada:"Bada",chrome:"ChromeOS",other:"Other"},prefixes:{tizen:"(Tizen )",ios:"i(?:Pad|Phone|Pod)(?:.*)CPU(?: iPhone)? OS ",android:"(Android |HTC_|Silk/)",windowsPhone:"Windows Phone ",blackberry:"(?:BlackBerry|BB)(?:.*)Version/",rimTablet:"RIM Tablet OS ",webos:"(?:webOS|hpwOS)/",bada:"Bada/",chrome:"CrOS "},is:function(a){return !!this[a]},name:null,version:null,setFlag:function(a,b){if(typeof b=="undefined"){b=true}if(this.flags){this.flags[a]=b}this.is[a]=b;this.is[a.toLowerCase()]=b;return this}};(function(){var a=Ext.global.navigator,h=a.userAgent,g=Ext.env.OS,e=(Ext.is||(Ext.is={})),j,d,b;g.prototype.flags=e;Ext.os=j=new g(h,a.platform);d=j.name;Ext["is"+d]=true;Ext.isMac=e.Mac=e.MacOS;var k=window.location.search.match(/deviceType=(Tablet|Phone)/),c=window.deviceType;if(k&&k[1]){b=k[1]}else{if(c==="iPhone"){b="Phone"}else{if(c==="iPad"){b="Tablet"}else{if(!j.is.Android&&!j.is.iOS&&!j.is.WindowsPhone&&/Windows|Linux|MacOS/.test(d)){b="Desktop";Ext.browser.is.WebView=!!Ext.browser.is.Ripple}else{if(j.is.iPad||j.is.RIMTablet||j.is.Android3||Ext.browser.is.Silk||(j.is.Android4&&h.search(/mobile/i)==-1)){b="Tablet"}else{b="Phone"}}}}}j.setFlag(b,true);j.deviceType=b;delete g.prototype.flags}());Ext.feature={has:function(a){return !!this.has[a]},testElements:{},getTestElement:function(a,b){if(a===undefined){a="div"}else{if(typeof a!=="string"){return a}}if(b){return document.createElement(a)}if(!this.testElements[a]){this.testElements[a]=document.createElement(a)}return this.testElements[a]},isStyleSupported:function(c,b){var d=this.getTestElement(b).style,a=Ext.String.capitalize(c);if(typeof d[c]!=="undefined"||typeof d[Ext.browser.getStylePrefix(c)+a]!=="undefined"){return true}return false},isStyleSupportedWithoutPrefix:function(b,a){var c=this.getTestElement(a).style;if(typeof c[b]!=="undefined"){return true}return false},isEventSupported:function(c,a){if(a===undefined){a=window}var e=this.getTestElement(a),b="on"+c.toLowerCase(),d=(b in e);if(!d){if(e.setAttribute&&e.removeAttribute){e.setAttribute(b,"");d=typeof e[b]==="function";if(typeof e[b]!=="undefined"){e[b]=undefined}e.removeAttribute(b)}}return d},getStyle:function(c,b){var a=c.ownerDocument.defaultView,d=(a?a.getComputedStyle(c,null):c.currentStyle)||c.style;return d[b]},getSupportedPropertyName:function(b,a){var c=Ext.browser.getVendorProperyName(a);if(c in b){return c}else{if(a in b){return a}}return null},detect:function(j){var k=this,m=document,g=k.toRun||k.tests,e=g.length,b=m.createElement("div"),c=[],p=Ext.supports,o=k.has,a,h,d,l;if(!Ext.theme){Ext.theme={name:"Default"}}Ext.theme.is={};Ext.theme.is[Ext.theme.name]=true;b.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(j){m.body.appendChild(b)}d=k.preDetected[Ext.browser.identity]||[];while(e--){h=g[e];l=d[e];a=h.name;if(l===undefined){if(!j&&h.ready){c.push(h);continue}l=h.fn.call(k,m,b)}p[a]=o[a]=l}if(j){m.body.removeChild(b)}k.toRun=c},report:function(){var b=[],a=this.tests.length,c;for(c=0;c<a;++c){b.push(this.has[this.tests[c].name]?1:0)}Ext.log(Ext.browser.identity+": ["+b.join(",")+"]")},preDetected:{},tests:[{name:"CSSPointerEvents",fn:function(a){return"pointerEvents" in a.documentElement.style}},{name:"CSS3BoxShadow",fn:function(a){return"boxShadow" in a.documentElement.style||"WebkitBoxShadow" in a.documentElement.style||"MozBoxShadow" in a.documentElement.style}},{name:"ClassList",fn:function(a){return !!a.documentElement.classList}},{name:"TimeoutActualLateness",fn:function(){setTimeout(function(){Ext.supports.TimeoutActualLateness=arguments.length!==0},0)}},{name:"Canvas",fn:function(){var a=this.getTestElement("canvas");return !!(a&&a.getContext&&a.getContext("2d"))}},{name:"Svg",fn:function(a){return !!(a.createElementNS&&!!a.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect)}},{name:"Vml",fn:function(){var b=this.getTestElement(),a=false;b.innerHTML="<!--[if vml]><br><![endif]-->";a=(b.childNodes.length===1);b.innerHTML="";return a}},{name:"TouchEvents",fn:function(){return this.isEventSupported("touchend")}},{name:"Touch",fn:function(){var a=navigator.msMaxTouchPoints||navigator.maxTouchPoints;return(this.isEventSupported("touchend")&&a!==1)||a>1}},{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 a=!!document.createRange?document.createRange():false;return a&&!!a.createContextualFragment}},{name:"History",fn:function(){return("history" in window&&"pushState" in window.history)}},{name:"CssTransforms",fn:function(){return this.isStyleSupported("transform")}},{name:"CssTransformNoPrefix",fn:function(){return this.isStyleSupportedWithoutPrefix("transform")}},{name:"Css3dTransforms",fn:function(){return this.has("CssTransforms")&&this.isStyleSupported("perspective")&&!Ext.browser.is.AndroidStock2}},{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(a){}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 a=new XMLHttpRequest();return a&&("upload" in a)&&("onprogress" in a.upload)}return false}},{name:"NumericInputPlaceHolder",fn:function(){return !(Ext.browser.is.AndroidStock4&&Ext.os.version.getMinor()<2)}},{name:"ProperHBoxStretching",ready:true,fn:function(){var b=document.createElement("div"),c=b.appendChild(document.createElement("div")),d=c.appendChild(document.createElement("div")),a;b.setAttribute("style","width: 100px; height: 100px; position: relative;");c.setAttribute("style","position: absolute; display: -ms-flexbox; display: -webkit-flex; display: -moz-flexbox; display: flex; -ms-flex-direction: row; -webkit-flex-direction: row; -moz-flex-direction: row; flex-direction: row; min-width: 100%;");d.setAttribute("style","width: 200px; height: 50px;");document.body.appendChild(b);a=c.offsetWidth;document.body.removeChild(b);return(a>100)}},{name:"matchesSelector",fn:function(){var b=document.documentElement,e="matches",d="webkitMatchesSelector",a="msMatchesSelector",c="mozMatchesSelector";return b[e]?e:b[d]?d:b[a]?a:b[c]?c:null}},{name:"RightMargin",ready:true,fn:function(b,c){var a=b.defaultView;return !(a&&a.getComputedStyle(c.firstChild.firstChild,null).marginRight!="0px")}},{name:"DisplayChangeInputSelectionBug",fn:function(){var a=Ext.webKitVersion;return 0<a&&a<533}},{name:"DisplayChangeTextAreaSelectionBug",fn:function(){var a=Ext.webKitVersion;return 0<a&&a<534.24}},{name:"TransparentColor",ready:true,fn:function(b,c,a){a=b.defaultView;return !(a&&a.getComputedStyle(c.lastChild,null).backgroundColor!="transparent")}},{name:"ComputedStyle",ready:true,fn:function(b,c,a){a=b.defaultView;return a&&a.getComputedStyle}},{name:"Float",fn:function(a){return"cssFloat" in a.documentElement.style}},{name:"CSS3BorderRadius",ready:true,fn:function(d){var b=["borderRadius","BorderRadius","MozBorderRadius","WebkitBorderRadius","OBorderRadius","KhtmlBorderRadius"],c=false,a;for(a=0;a<b.length;a++){if(d.documentElement.style[b[a]]!==undefined){return true}}return c}},{name:"CSS3LinearGradient",fn:function(g,a){var j="background-image:",h="-webkit-gradient(linear, left top, right bottom, from(black), to(white))",e="linear-gradient(left top, black, white)",d="-moz-"+e,b="-ms-"+e,c="-o-"+e,k=[j+h,j+e,j+d,j+b,j+c];a.style.cssText=k.join(";");return((""+a.style.backgroundImage).indexOf("gradient")!==-1)&&!Ext.isIE9}},{name:"MouseEnterLeave",fn:function(a){return("onmouseenter" in a.documentElement&&"onmouseleave" in a.documentElement)}},{name:"MouseWheel",fn:function(a){return("onmousewheel" in a.documentElement)}},{name:"Opacity",fn:function(a,b){if(Ext.isIE8){return false}b.firstChild.style.cssText="opacity:0.73";return b.firstChild.style.opacity=="0.73"}},{name:"Placeholder",fn:function(a){return"placeholder" in a.createElement("input")}},{name:"Direct2DBug",fn:function(a){return Ext.isString(a.documentElement.style.msTransformOrigin)&&Ext.isIE10m}},{name:"BoundingClientRect",fn:function(a){return"getBoundingClientRect" in a.documentElement}},{name:"RotatedBoundingClientRect",ready:true,fn:function(e){var a=e.body,b=false,d=this.getTestElement(),c=d.style;if(d.getBoundingClientRect){c.WebkitTransform=c.MozTransform=c.msTransform=c.OTransform=c.transform="rotate(90deg)";c.width="100px";c.height="30px";a.appendChild(d);b=d.getBoundingClientRect().height!==100;a.removeChild(d)}return b}},{name:"IncludePaddingInWidthCalculation",ready:true,fn:function(a,b){return b.childNodes[1].firstChild.offsetWidth==210}},{name:"IncludePaddingInHeightCalculation",ready:true,fn:function(a,b){return b.childNodes[1].firstChild.offsetHeight==210}},{name:"TextAreaMaxLength",fn:function(a){return("maxlength" in a.createElement("textarea"))}},{name:"GetPositionPercentage",ready:true,fn:function(a,b){return Ext.feature.getStyle(b.childNodes[2],"left")=="10%"}},{name:"PercentageHeightOverflowBug",ready:true,fn:function(d){var a=false,c,b;if(Ext.getScrollbarSize().height){b=this.getTestElement();c=b.style;c.height="50px";c.width="50px";c.overflow="auto";c.position="absolute";b.innerHTML=['<div style="display:table;height:100%;">','<div style="width:51px;"></div>',"</div>"].join("");d.body.appendChild(b);if(b.firstChild.offsetHeight===50){a=true}d.body.removeChild(b)}return a}},{name:"xOriginBug",ready:true,fn:function(d,e){e.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 c=document.getElementById("b1").getBoundingClientRect(),b=document.getElementById("b2").getBoundingClientRect(),a=document.getElementById("b3").getBoundingClientRect();return(b.left!==c.left&&a.right!==c.right)}},{name:"ScrollWidthInlinePaddingBug",ready:true,fn:function(d){var a=false,c,b;b=d.createElement("div");c=b.style;c.height="50px";c.width="50px";c.padding="10px";c.overflow="hidden";c.position="absolute";b.innerHTML='<span style="display:inline-block;zoom:1;height:60px;width:60px;"></span>';d.body.appendChild(b);if(b.scrollWidth===70){a=true}d.body.removeChild(b);return a}},{name:"rtlVertScrollbarOnRight",ready:true,fn:function(c,d){d.innerHTML='<div style="height:100px;width:100px;direction:rtl;overflow:scroll"><div style="width:20px;height:200px;"></div></div>';var b=d.firstChild,a=b.firstChild;return(a.offsetLeft+a.offsetWidth!==b.offsetLeft+b.offsetWidth)}},{name:"rtlVertScrollbarOverflowBug",ready:true,fn:function(b,c){c.innerHTML='<div style="height:100px;width:100px;direction:rtl;overflow:auto"><div style="width:95px;height:200px;"></div></div>';var a=c.firstChild;return a.clientHeight===a.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(a){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 a=document.documentMode;return"onhashchange" in window&&(a===undefined||a>7)}},{name:"FixedTableWidthBug",ready:true,fn:function(){if(Ext.isIE8){return false}var b=document.createElement("div"),a=document.createElement("div"),c;b.setAttribute("style","display:table;table-layout:fixed;");a.setAttribute("style","display:table-cell;min-width:50px;");b.appendChild(a);document.body.appendChild(b);b.offsetWidth;b.style.width="25px";c=b.offsetWidth;document.body.removeChild(b);return c===50}}]};Ext.supports={};Ext.feature.detect();Ext.env.Ready={blocks:0,bound:0,delay:1,firing:false,generation:0,listeners:[],nextId:0,sortGeneration:0,state:0,timer:null,bind:function(){var a=Ext.env.Ready,b=document;if(!a.bound){if(b.readyState=="complete"){a.onReadyEvent({type:b.readyState||"body"})}else{a.bound=1;if(Ext.browser.is.PhoneGap&&!Ext.os.is.Desktop){a.bound=2;b.addEventListener("deviceready",a.onReadyEvent,false)}b.addEventListener("DOMContentLoaded",a.onReadyEvent,false);window.addEventListener("load",a.onReadyEvent,false)}}},block:function(){++this.blocks},fireReady:function(){var a=Ext.env.Ready;if(!a.state){Ext._readyTime=Ext.now();Ext.isDomReady=true;a.state=1;Ext.feature.detect(true);if(!a.delay){a.handleReady()}else{if(navigator.standalone){a.timer=setTimeout(function(){a.timer=null;a.handleReadySoon()},1)}else{a.handleReadySoon()}}}},handleReady:function(){var a=this;if(a.state===1){if(a.isPaused()){a.handleReadySoon(250)}else{a.state=2;Ext._beforeReadyTime=Ext.now();a.invokeAll();Ext._afterReadytime=Ext.now()}}},handleReadySoon:function(a){var b=this;if(!b.timer){b.timer=setTimeout(function(){b.timer=null;b.handleReady()},a||b.delay)}},invoke:function(b){var a=b.delay;if(a){setTimeout(function(){b.fn.call(b.scope)},a)}else{b.fn.call(b.scope)}},invokeAll:function(){var b=this,a=b.listeners,c;if(!b.blocks){Ext.isReady=true}b.firing=true;while(a.length){if(b.sortGeneration!==b.generation){b.sortGeneration=b.generation;a.sort(b.sortFn)}c=a.pop();if(b.blocks&&!c.dom){a.push(c);break}b.invoke(c)}b.firing=false},isPaused:function(){return(location.search||"").indexOf("ext-pauseReadyFire")>0&&!Ext._continueFireReady},makeListener:function(d,c,b){var a={fn:d,id:++this.nextId,scope:c,dom:false,priority:0};if(b){Ext.apply(a,b)}a.phase=a.dom?0:1;return a},on:function(c,b,a){var d=Ext.env.Ready,e=d.makeListener(c,b,a);if(d.state===2&&!d.firing&&(e.dom||!d.blocks)){d.invoke(e)}else{d.listeners.push(e);++d.generation;if(!d.bound){d.bind()}}},onReadyEvent:function(b){var a=Ext.env.Ready;if(a.bound>0){a.unbind();a.bound=-1}if(!a.state){a.fireReady()}},sortFn:function(d,c){return -((d.phase-c.phase)||(c.priority-d.priority)||(d.id-c.id))},unblock:function(){var a=this;if(a.blocks){if(!--a.blocks){if(a.state===2&&!a.firing){a.invokeAll()}}}},unbind:function(){var a=this,b=document;if(a.bound>1){b.removeEventListener("deviceready",a.onReadyEvent,false)}b.removeEventListener("DOMContentLoaded",a.onReadyEvent,false);window.removeEventListener("load",a.onReadyEvent,false)}};(function(){var a=Ext.env.Ready;if(Ext.isIE8){Ext.apply(a,{scrollTimer:null,readyStatesRe:/complete/i,pollScroll:function(){var b=true;try{document.documentElement.doScroll("left")}catch(c){b=false}if(b&&document.body){a.onReadyEvent({type:"doScroll"})}else{a.scrollTimer=setTimeout(a.pollScroll,20)}return b},bind:function(){if(a.bound){return}var d=document,b;try{b=window.frameElement===undefined}catch(c){}if(!b||!d.documentElement.doScroll){a.pollScroll=Ext.emptyFn}else{if(a.pollScroll()){return}}if(d.readyState=="complete"){a.onReadyEvent({type:"already "+(d.readyState||"body")})}else{d.attachEvent("onreadystatechange",a.onReadyStateChange);window.attachEvent("onload",a.onReadyEvent);a.bound=1}},unbind:function(){document.detachEvent("onreadystatechange",a.onReadyStateChange);window.detachEvent("onload",a.onReadyEvent);if(Ext.isNumber(a.scrollTimer)){clearTimeout(a.scrollTimer);a.scrollTimer=null}},onReadyStateChange:function(){var b=document.readyState;if(a.readyStatesRe.test(b)){a.onReadyEvent({type:b})}}})}Ext.onDocumentReady=function(e,d,b){var c={dom:true};if(b){Ext.apply(c,b)}a.on(e,d,c)};Ext.onReady=function(d,c,b){a.on(d,c,b)};a.bind()}());Ext.Loader=new function(){var c=this,a=Ext.ClassManager,h=Ext.Boot,d=Ext.Class,k=Ext.env.Ready,j=Ext.Function.alias,g=["extend","mixins","requires"],o={},l=[],b=[],e=[],p={},n={},m={enabled:true,scriptChainDelay:false,disableCaching:true,disableCachingParam:"_dc",paths:a.paths,preserveScripts:true,scriptCharset:undefined},q={disableCaching:true,disableCachingParam:true,preserveScripts:true,scriptChainDelay:"loadDelay"};Ext.apply(c,{isInHistory:o,isLoading:false,history:l,config:m,readyListeners:b,optionalRequires:e,requiresMap:p,hasFileLoadError:false,scriptsLoading:0,syncModeEnabled:false,missingQueue:n,init:function(){var w=document.getElementsByTagName("script"),r=w[w.length-1].src,B=r.substring(0,r.lastIndexOf("/")+1),z=Ext._classPathMetadata,A=Ext.Microloader,t=Ext.manifest,u,x,y,v,s;if(!a.getPath("Ext")){a.setPath("Ext",B+"src")}if(z){Ext._classPathMetadata=null;c.addClassPathMappings(z)}if(t){u=t.loadOrder;x=Ext.Boot.baseUrl;if(u&&t.bootRelative){for(y=u.length,v=0;v<y;v++){s=u[v];s.path=x+s.path}}}if(A){k.block();A.onMicroloaderReady(function(){k.unblock()})}},setConfig:Ext.Function.flexSetter(function(r,s){if(r==="paths"){c.setPath(s)}else{m[r]=s;var t=q[r];if(t){h.setConfig((t===true)?r:t,s)}}return c}),getConfig:function(r){return r?m[r]:m},setPath:function(){a.setPath.apply(a,arguments);return c},addClassPathMappings:function(r){a.setPath(r);return c},addBaseUrlClassPathMappings:function(r){for(var s in r){r[s]=h.baseUrl+r[s]}Ext.Loader.addClassPathMappings(r)},getPath:function(r){return a.getPath(r)},require:function(t,s,r,v){if(v){return c.exclude(v).require(t,s,r)}var u=a.getNamesByExpression(t);return c.load(u,s,r)},syncRequire:function(){var s=c.syncModeEnabled;c.syncModeEnabled=true;var r=c.require.apply(c,arguments);c.syncModeEnabled=s;return r},exclude:function(s){var r=a.select({require:function(v,u,t){return c.load(v,u,t)},syncRequire:function(x,v,u){var w=c.syncModeEnabled;c.syncModeEnabled=true;var t=c.load(x,v,u);c.syncModeEnabled=w;return t}});r.exclude(s);return r},load:function(r,z,A){if(z){if(z.length){z=c.makeLoadCallback(r,z)}z=z.bind(A||Ext.global)}var u=[],t=r.length,x,w,v,y=[],s=a.classState;for(w=0;w<t;++w){x=a.resolveName(r[w]);if(!a.isCreated(x)){u.push(x);n[x]=c.getPath(x);if(!s[x]){y.push(n[x])}}}v=u.length;if(v){c.missingCount+=v;Ext.each(u,function(C,B){a.onExists(function(){var D=Ext.Boot.canonicalUrl(y[B]),E=Ext.Boot.scripts[D];if(E&&!E.done){Ext.Boot.notifyAll(E)}},c,C)});a.onExists(function(){if(z){Ext.callback(z,A,arguments)}c.checkReady()},c,u);if(!m.enabled){Ext.Error.raise("Ext.Loader is not enabled, so dependencies cannot be resolved dynamically. Missing required class"+((u.length>1)?"es":"")+": "+u.join(", "))}if(y.length){c.loadScripts({url:y,_classNames:u})}else{c.checkReady()}}else{if(z){z.call(A)}c.checkReady()}if(c.syncModeEnabled){if(t===1){return a.get(r[0])}}return c},makeLoadCallback:function(r,s){return function(){var u=[],t=r.length;while(t-->0){u[t]=a.get(r[t])}return s.apply(this,u)}},onLoadFailure:function(){var r=this,s=r.onError;c.hasFileLoadError=true;--c.scriptsLoading;if(s){s.call(r.userScope,r)}c.checkReady()},onLoadSuccess:function(){var r=this,s=r.onLoad;--c.scriptsLoading;if(s){s.call(r.userScope,r)}c.checkReady()},onReady:function(t,s,v,r){if(v){k.on(t,s,r)}else{var u=k.makeListener(t,s,r);if(c.isLoading){b.push(u)}else{k.invoke(u)}}},addUsedClasses:function(t){var r,s,u;if(t){t=(typeof t==="string")?[t]:t;for(s=0,u=t.length;s<u;s++){r=t[s];if(typeof r==="string"&&!Ext.Array.contains(e,r)){e.push(r)}}}return c},triggerReady:function(){var r,s=e;if(c.isLoading&&s.length){e=[];c.require(s)}else{c.isLoading=false;b.sort(k.sortFn);while(b.length&&!c.isLoading){r=b.pop();k.invoke(r)}k.unblock()}},historyPush:function(r){if(r&&!o[r]){o[r]=true;l.push(r)}return c},loadScripts:function(v){var u=Ext.manifest,r=u&&u.loadOrder,s=u&&u.loadOrderMap,t;++c.scriptsLoading;if(r&&!s){u.loadOrderMap=s=h.createLoadOrderMap(r)}c.checkReady();t=Ext.apply({loadOrder:r,loadOrderMap:s,charset:m.scriptCharset,success:c.onLoadSuccess,failure:c.onLoadFailure,sync:c.syncModeEnabled,_classNames:[]},v);t.userScope=t.scope;t.scope=t;h.load(t)},loadScriptsSync:function(s){var r=c.syncModeEnabled;c.syncModeEnabled=true;c.loadScripts({url:s});c.syncModeEnabled=r},loadScriptsSyncBasePrefix:function(s){var r=c.syncModeEnabled;c.syncModeEnabled=true;c.loadScripts({url:s,prependBaseUrl:true});c.syncModeEnabled=r},loadScript:function(z){var s=typeof z==="string",v=z instanceof Array,y=!v&&!s,r=y?z.url:z,u=y&&z.onError,w=y&&z.onLoad,x=y&&z.scope,t={url:r,scope:x,onLoad:w,onError:u,_classNames:[]};c.loadScripts(t)},flushMissingQueue:function(){var r,u,t=0,s=0;for(r in n){t++;u=n[r];if(a.isCreated(r)){delete n[r]}else{if(a.existCache[r]===2){delete n[r]}else{++s}}}this.missingCount=s},checkReady:function(){var s=c.isLoading,r;c.flushMissingQueue();r=c.missingCount+c.scriptsLoading;if(r&&!s){k.block();c.isLoading=!!r}else{if(!r&&s){c.triggerReady()}}}});Ext.require=j(c,"require");Ext.syncRequire=j(c,"syncRequire");Ext.exclude=j(c,"exclude");d.registerPreprocessor("loader",function(G,v,F,E){var B=this,z=[],r,A=a.getName(G),u,t,y,x,D,w,s,C;for(u=0,y=g.length;u<y;u++){w=g[u];if(v.hasOwnProperty(w)){s=v[w];if(typeof s=="string"){z.push(s)}else{if(s instanceof Array){for(t=0,x=s.length;t<x;t++){D=s[t];if(typeof D=="string"){z.push(D)}}}else{if(typeof s!="function"){for(t in s){if(s.hasOwnProperty(t)){D=s[t];if(typeof D=="string"){z.push(D)}}}}}}}}if(z.length===0){return}if(A){p[A]=z}(A?c.exclude(A):c).require(z,function(){for(u=0,y=g.length;u<y;u++){w=g[u];if(v.hasOwnProperty(w)){s=v[w];if(typeof s=="string"){v[w]=a.get(s)}else{if(s instanceof Array){for(t=0,x=s.length;t<x;t++){D=s[t];if(typeof D=="string"){v[w][t]=a.get(D)}}}else{if(typeof s!="function"){for(var H in s){if(s.hasOwnProperty(H)){D=s[H];if(typeof D=="string"){v[w][H]=a.get(D)}}}}}}}}E.call(B,G,v,F)});return false},true,"after","className");a.registerPostprocessor("uses",function(s,C,x){var r=Ext.manifest,t=r&&r.loadOrder,u=r&&r.classes,v,z,B,y,w,A;if(t){z=u[s];if(z&&!isNaN(w=z.idx)){B=t[w];v=B.uses;A={};for(y=v.length,w=0;w<y;w++){A[v[w]]=true}v=Ext.Boot.getPathsFromIndexes(A,t,true);if(v.length>0){c.loadScripts({url:v,sequential:true})}}}if(x.uses){v=x.uses;c.addUsedClasses(v)}});a.onCreated(c.historyPush);c.init()}();Ext._endTime=new Date().getTime();if(Ext._beforereadyhandler){Ext._beforereadyhandler()}(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 g=this.id,b,d,e,a,c;if(!(g||g===0)){b=this.self.prototype;d=this.defaultIdSeparator;a=Ext.mixin.Identifiable.uniqueIds;if(!b.hasOwnProperty("identifiablePrefix")){e=this.xtype;if(e){c=this.defaultIdPrefix+e.replace(this.idCleanRegex,d)+d}else{if(!(c=b.$className)){c=this.defaultIdPrefix+"anonymous"+d}else{c=c.replace(this.idCleanRegex,d).toLowerCase()+d}}b.identifiablePrefix=c}c=this.identifiablePrefix;if(!a.hasOwnProperty(c)){a[c]=0}g=this.id=c+(++a[c])}this.getUniqueId=this.getOptimizedId;return g},setId:function(a){this.id=a},getId:function(){var a=this.id;if(!a){a=this.getUniqueId()}this.getId=this.getOptimizedId;return a}},0,0,0,0,0,0,[Ext.mixin,"Identifiable"],0));(Ext.cmd.derive("Ext.event.gesture.Recognizer",Ext.Base,{handledEvents:[],config:{onRecognized:Ext.emptyFn,callbackScope:null},constructor:function(a){this.initConfig(a);return this},getHandledEvents:function(){return this.handledEvents},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)},debugHooks:{$enabled:false,fail:function(a){Ext.log.info(this.$className+" Gesture Failed: "+a);return false}}},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(a){if(a.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,{inheritableStatics:{DIFFERENT_TARGET:"Different Target"},config:{moveDistance:8,tapDistance:24,maxDuration:300},handledEvents:["singletap","doubletap"],singleTapTimer:null,startTime:0,lastTapTime:0,onTouchStart:function(c){var b=this,a;if(Ext.event.gesture.SingleTouch.prototype.onTouchStart.apply(this,arguments)===false){return false}a=b.lastStartPoint=c.changedTouches[0].point;b.startPoint=b.startPoint||a;b.startTime=c.time;clearTimeout(b.singleTapTimer)},onTouchMove:function(c){var b=this,a=c.changedTouches[0].point;if(Math.abs(a.getDistanceTo(b.lastStartPoint))>=b.getMoveDistance()){b.startPoint=null;return b.fail(b.self.TOUCH_MOVED)}},onTouchEnd:function(g){var j=this,d=j.getMaxDuration(),a=g.time,h=g.target,k=j.lastTapTime,b=j.lastTarget,l=g.changedTouches[0].point,c;j.lastTapTime=a;j.lastTarget=h;if(k){c=a-k;if(c<=d&&Math.abs(l.getDistanceTo(j.startPoint))<=j.getTapDistance()){if(h!==b){return j.fail(j.self.DIFFERENT_TARGET)}j.lastTarget=null;j.lastTapTime=0;j.fire("doubletap",g,{touch:g.changedTouches[0],duration:c});j.startPoint=null;return}}if(a-j.startTime>d){j.fireSingleTap(g)}else{j.setSingleTapTimer(g)}},setSingleTapTimer:function(b){var a=this;a.singleTapTimer=setTimeout(function(){a.fireSingleTap(b)},a.getMaxDuration())},fireSingleTap:function(a,b){this.fire("singletap",a,{touch:b});this.startPoint=null}},0,0,0,0,0,0,[Ext.event.gesture,"DoubleTap"],0));(Ext.cmd.derive("Ext.event.gesture.Drag",Ext.event.gesture.SingleTouch,{isStarted:false,startPoint:null,previousPoint:null,lastPoint:null,handledEvents:["dragstart","drag","dragend","dragcancel"],config:{minDistance:8},constructor:function(){Ext.event.gesture.Recognizer.prototype.constructor.apply(this,arguments);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(a){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=a.time;this.startPoint=a.changedTouches[0].point},tryDragStart:function(d){var b=this.startPoint,h=d.changedTouches[0],a=h.point,g=this.getMinDistance(),c=this.info;if(Math.abs(a.getDistanceTo(b))>=g){this.isStarted=true;this.previousPoint=this.lastPoint=a;this.resetInfo("x",d,h);this.resetInfo("y",d,h);c.time=d.time;this.fire("dragstart",d,c)}},onTouchMove:function(b){if(!this.isStarted){this.tryDragStart(b)}if(!this.isStarted){return}var c=b.changedTouches[0],a=c.point;if(this.lastPoint){this.previousPoint=this.lastPoint}this.lastPoint=a;this.lastMoveEvent=b;this.updateInfo("x",b,c);this.updateInfo("y",b,c);this.info.time=b.time;this.fire("drag",b,this.info)},onAxisDragEnd:function(a,c){var b=c.time-c.previousTime[a];if(b>0){c.flick.velocity[a]=(c[a]-c.previous[a])/b}},resetInfo:function(c,h,k){var d=this.lastPoint[c],b=this.startPoint[c],j=d-b,a=c.toUpperCase(),g=this.info;g.touch=k;g.delta[c]=j;g.absDelta[c]=Math.abs(j);g.previousTime[c]=this.startTime;g.previous[c]=b;g[c]=d;g.direction[c]=0;g["start"+a]=this.startPoint[c];g["previous"+a]=g.previous[c];g["page"+a]=g[c];g["delta"+a]=g.delta[c];g["absDelta"+a]=g.absDelta[c];g["previousDelta"+a]=0;g.startTime=this.startTime},updateInfo:function(d,k,j){var l=this,n=l.lastPoint[d],g=l.previousPoint[d],a=l.startPoint[d],o=n-a,c=l.info,m=c.direction,h=d.toUpperCase(),b=c.previous[d];c.touch=j;c.delta[d]=o;c.absDelta[d]=Math.abs(o);if(n!==b&&n!==c[d]){c.previous[d]=c[d];c.previousTime[d]=c.time}c[d]=n;if(n>g){m[d]=1}else{if(n<g){m[d]=-1}}c["start"+h]=a;c["previous"+h]=c.previous[d];c["page"+h]=c[d];c["delta"+h]=c.delta[d];c["absDelta"+h]=c.absDelta[d];c["previousDelta"+h]=c.previous[d]-a;c.startTime=l.startTime},onTouchEnd:function(a){this.doEnd(a)},onTouchCancel:function(a){this.doEnd(a,true);return false},doEnd:function(d,b){if(!this.isStarted){this.tryDragStart(d)}if(this.isStarted){var g=d.changedTouches[0],a=g.point,c=this.info;this.isStarted=false;this.lastPoint=a;this.updateInfo("x",d,g);this.updateInfo("y",d,g);c.time=d.time;this.onAxisDragEnd("x",c);this.onAxisDragEnd("y",c);this.fire(b?"dragcancel":"dragend",d,c);this.startPoint=null;this.previousPoint=null;this.lastPoint=null;this.lastMoveEvent=null}}},1,0,0,0,0,0,[Ext.event.gesture,"Drag"],0));(Ext.cmd.derive("Ext.event.gesture.Swipe",Ext.event.gesture.SingleTouch,{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(a){if(Ext.event.gesture.SingleTouch.prototype.onTouchStart.apply(this,arguments)===false){return false}var b=a.changedTouches[0];this.startTime=a.time;this.isHorizontal=true;this.isVertical=true;this.startX=b.pageX;this.startY=b.pageY},onTouchMove:function(l){var k=l.changedTouches[0],o=k.pageX,m=k.pageY,j=o-this.startX,h=m-this.startY,d=Math.abs(o-this.startX),c=Math.abs(m-this.startY),g=l.time-this.startTime,p=this.getMinDistance(),b=l.time,n,a;if(b-this.startTime>this.getMaxDuration()){return this.fail(this.self.MAX_DURATION_EXCEEDED)}if(this.isHorizontal&&c>this.getMaxOffset()){this.isHorizontal=false}if(this.isVertical&&d>this.getMaxOffset()){this.isVertical=false}if(!this.isVertical||!this.isHorizontal){if(this.isHorizontal&&d<p){n=(j<0)?"left":"right";a=d}else{if(this.isVertical&&c<p){n=(h<0)?"up":"down";a=c}}}if(n&&!this.started){this.started=true;this.fire("swipestart",l,{touch:k,direction:n,distance:a,duration:g})}if(!this.isHorizontal&&!this.isVertical){return this.fail(this.self.MAX_OFFSET_EXCEEDED)}},onTouchEnd:function(k){if(this.onTouchMove(k)===false){return false}var j=k.changedTouches[0],n=j.pageX,l=j.pageY,h=n-this.startX,g=l-this.startY,c=Math.abs(h),b=Math.abs(g),o=this.getMinDistance(),d=k.time-this.startTime,m,a;if(this.isVertical&&b<o){this.isVertical=false}if(this.isHorizontal&&c<o){this.isHorizontal=false}if(this.isHorizontal){m=(h<0)?"left":"right";a=c}else{if(this.isVertical){m=(g<0)?"up":"down";a=b}else{return this.fail(this.self.DISTANCE_NOT_ENOUGH)}}this.started=false;this.fire("swipe",k,{touch:j,direction:m,distance:a,duration:d})},onTouchCancel:function(a){this.fire("swipecancel",a);return false}},0,0,0,0,0,0,[Ext.event.gesture,"Swipe"],0));(Ext.cmd.derive("Ext.event.gesture.EdgeSwipe",Ext.event.gesture.Swipe,{handledEvents:["edgeswipe","edgeswipestart","edgeswipeend","edgeswipecancel"],inheritableStatics:{NOT_NEAR_EDGE:"Not Near Edge"},config:{minDistance:60},onTouchStart:function(a){if(Ext.event.gesture.Swipe.prototype.onTouchStart.apply(this,arguments)===false){return false}var b=a.changedTouches[0];this.started=false;this.direction=null;this.isHorizontal=true;this.isVertical=true;this.startX=b.pageX;this.startY=b.pageY},onTouchMove:function(m){var k=m.changedTouches[0],q=k.pageX,n=k.pageY,j=q-this.startX,h=n-this.startY,b=Math.abs(n-this.startY),c=Math.abs(q-this.startX),r=this.getMinDistance(),g=this.getMaxOffset(),d=m.time-this.startTime,p=Ext.Viewport&&Ext.Element.getViewportWidth(),l=Ext.Viewport&&Ext.Element.getViewportHeight(),o,a;if(this.isVertical&&c>g){this.isVertical=false}if(this.isHorizontal&&b>g){this.isHorizontal=false}if(this.isVertical&&this.isHorizontal){if(b>c){this.isHorizontal=false}else{this.isVertical=false}}if(this.isHorizontal){o=(j<0)?"left":"right";a=j}else{if(this.isVertical){o=(h<0)?"up":"down";a=h}}this.direction=this.direction||o;if(this.direction=="up"){a=h*-1}else{if(this.direction=="left"){a=j*-1}}this.distance=a;if(a==0){return this.fail(this.self.DISTANCE_NOT_ENOUGH)}if(!this.started){if(this.direction=="right"&&this.startX>r){return this.fail(this.self.NOT_NEAR_EDGE)}else{if(this.direction=="down"&&this.startY>r){return this.fail(this.self.NOT_NEAR_EDGE)}else{if(this.direction=="left"&&(p-this.startX)>r){return this.fail(this.self.NOT_NEAR_EDGE)}else{if(this.direction=="up"&&(l-this.startY)>r){return this.fail(this.self.NOT_NEAR_EDGE)}}}}this.started=true;this.startTime=m.time;this.fire("edgeswipestart",m,{touch:k,direction:this.direction,distance:this.distance,duration:d})}else{this.fire("edgeswipe",m,{touch:k,direction:this.direction,distance:this.distance,duration:d})}},onTouchEnd:function(b){var a;if(this.onTouchMove(b)!==false){a=b.time-this.startTime;this.fire("edgeswipeend",b,{touch:b.changedTouches[0],direction:this.direction,distance:this.distance,duration:a})}},onTouchCancel:function(a){this.fire("edgeswipecancel",a,{touch:a.changedTouches[0]});return false}},0,0,0,0,0,0,[Ext.event.gesture,"EdgeSwipe"],0));(Ext.cmd.derive("Ext.event.gesture.LongPress",Ext.event.gesture.SingleTouch,{inheritableStatics:{DURATION_NOT_ENOUGH:"Duration Not Enough"},config:{moveDistance:8,minDuration:1000},handledEvents:["longpress"],fireLongPress:function(a){this.fire("longpress",a,{touch:a.changedTouches[0],duration:this.getMinDuration()});this.isLongPress=true},onTouchStart:function(a){if(Ext.event.gesture.SingleTouch.prototype.onTouchStart.apply(this,arguments)===false){return false}this.startPoint=a.changedTouches[0].point;this.isLongPress=false;this.setLongPressTimer(a)},setLongPressTimer:function(b){var a=this;a.timer=setTimeout(function(){a.fireLongPress(b)},a.getMinDuration())},onTouchMove:function(b){var a=b.changedTouches[0].point;if(Math.abs(a.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.Recognizer.prototype.fail.apply(this,arguments)}},0,0,0,0,0,0,[Ext.event.gesture,"LongPress"],function(){this.override({handledEvents:["longpress","taphold"],fire:function(a){if(a==="longpress"){var b=Array.prototype.slice.call(arguments);b[0]="taphold";this.fire.apply(this,b)}return this.callOverridden(arguments)}})}));(Ext.cmd.derive("Ext.event.gesture.MultiTouch",Ext.event.gesture.Recognizer,{requiredTouchesCount:2,isTracking:false,isStarted:false,onTouchStart:function(d){var a=this.requiredTouchesCount,c=d.touches,b=c.length;if(b===a){this.start(d)}else{if(b>a){this.end(d)}}},onTouchEnd:function(a){this.end(a)},onTouchCancel:function(a){this.end(a,true);return false},start:function(){if(!this.isTracking){this.isTracking=true;this.isStarted=false}},end:function(b,a){if(this.isTracking){this.isTracking=false;if(this.isStarted){this.isStarted=false;this[a?"fireCancel":"fireEnd"](b)}}}},0,0,0,0,0,0,[Ext.event.gesture,"MultiTouch"],0));(Ext.cmd.derive("Ext.event.gesture.Pinch",Ext.event.gesture.MultiTouch,{handledEvents:["pinchstart","pinch","pinchend","pinchcancel"],startDistance:0,lastTouches:null,onTouchMove:function(c){if(!this.isTracking){return}var b=c.touches,d,a,g;d=b[0].point;a=b[1].point;g=d.getDistanceTo(a);if(g===0){return}if(!this.isStarted){this.isStarted=true;this.startDistance=g;this.fire("pinchstart",c,{touches:b,distance:g,scale:1})}else{this.fire("pinch",c,{touches:b,distance:g,scale:g/this.startDistance})}},fireEnd:function(a){this.fire("pinchend",a)},fireCancel:function(a){this.fire("pinchcancel",a)},fail:function(){return Ext.event.gesture.Recognizer.prototype.fail.apply(this,arguments)}},0,0,0,0,0,0,[Ext.event.gesture,"Pinch"],0));(Ext.cmd.derive("Ext.event.gesture.Rotate",Ext.event.gesture.MultiTouch,{handledEvents:["rotatestart","rotate","rotateend","rotatecancel"],startAngle:0,lastTouches:null,lastAngle:null,onTouchMove:function(j){if(!this.isTracking){return}var h=j.touches,b=this.lastAngle,d,g,c,a,k,l;d=h[0].point;g=h[1].point;c=d.getAngleTo(g);if(b!==null){l=Math.abs(b-c);a=c+360;k=c-360;if(Math.abs(a-b)<l){c=a}else{if(Math.abs(k-b)<l){c=k}}}this.lastAngle=c;if(!this.isStarted){this.isStarted=true;this.startAngle=c;this.fire("rotatestart",j,{touches:h,angle:c,rotation:0})}else{this.fire("rotate",j,{touches:h,angle:c,rotation:c-this.startAngle})}this.lastTouches=Ext.Array.clone(h)},fireEnd:function(a){this.lastAngle=null;this.fire("rotateend",a)},fireCancel:function(a){this.lastAngle=null;this.fire("rotatecancel",a)}},0,0,0,0,0,0,[Ext.event.gesture,"Rotate"],0));(Ext.cmd.derive("Ext.event.gesture.Tap",Ext.event.gesture.SingleTouch,{handledEvents:["tap","tapcancel"],config:{moveDistance:8},onTouchStart:function(a){if(Ext.event.gesture.SingleTouch.prototype.onTouchStart.apply(this,[a])===false){return false}this.startPoint=a.changedTouches[0].point},onTouchMove:function(b){var c=b.changedTouches[0],a=c.point;if(Math.abs(a.getDistanceTo(this.startPoint))>=this.getMoveDistance()){this.fire("tapcancel",b,{touch:c});return this.fail(this.self.TOUCH_MOVED)}},onTouchEnd:function(a){this.fire("tap",a,{touch:a.changedTouches[0]})},onTouchCancel:function(a){this.fire("tapcancel",a,{touch:a.changedTouches[0]});return false}},0,0,0,0,0,0,[Ext.event.gesture,"Tap"],0));(Ext.cmd.derive("Ext.event.publisher.Publisher",Ext.Base,{targetType:"",idSelectorRegex:/^#([\w\-]+)$/i,constructor:function(){var b=this.handledEvents||[],a,c,e,d;a=this.handledEventsMap={};for(c=0,e=b.length;c<e;c++){d=b[c];a[d]=true}this.subscribers={};return this},handles:function(a){var b=this.handledEventsMap;return !!b[a]||!!b["*"]||a==="*"},getHandledEvents:function(){return this.handledEvents},setDispatcher:function(a){this.dispatcher=a},subscribe:function(){return false},unsubscribe:function(){return false},unsubscribeAll:function(){delete this.subscribers;this.subscribers={};return this},notify:function(){return false},getTargetType:function(){return this.targetType},dispatch:function(d,b,c,a){this.dispatcher.doDispatchEvent(this.targetType,d,b,c,null,null,a)},destroy:Ext.emptyFn},1,0,0,0,0,0,[Ext.event.publisher,"Publisher"],0));(Ext.cmd.derive("Ext.util.Offset",Ext.Base,{statics:{fromObject:function(a){return new this(a.x,a.y)}},constructor:function(a,b){this.x=(a!=null&&!isNaN(a))?a:0;this.y=(b!=null&&!isNaN(b))?b:0;return this},copy:function(){return new Ext.util.Offset(this.x,this.y)},copyFrom:function(a){this.x=a.x;this.y=a.y},toString:function(){return"Offset["+this.x+","+this.y+"]"},equals:function(a){return(this.x==a.x&&this.y==a.y)},round:function(b){if(!isNaN(b)){var a=Math.pow(10,b);this.x=Math.round(this.x*a)/a;this.y=Math.round(this.y*a)/a}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(a){return Ext.fly(a).getRegion()},from:function(a){return new this(a.top,a.right,a.bottom,a.left)}},constructor:function(d,g,a,c){var e=this;e.y=e.top=e[1]=d;e.right=g;e.bottom=a;e.x=e.left=e[0]=c},contains:function(b){var a=this;return(b.x>=a.x&&b.right<=a.right&&b.y>=a.y&&b.bottom<=a.bottom)},intersect:function(h){var g=this,d=Math.max(g.y,h.y),e=Math.min(g.right,h.right),a=Math.min(g.bottom,h.bottom),c=Math.max(g.x,h.x);if(a>d&&e>c){return new this.self(d,e,a,c)}else{return false}},union:function(h){var g=this,d=Math.min(g.y,h.y),e=Math.max(g.right,h.right),a=Math.max(g.bottom,h.bottom),c=Math.min(g.x,h.x);return new this.self(d,e,a,c)},constrainTo:function(b){var a=this,c=Ext.Number.constrain;a.top=a.y=c(a.top,b.y,b.bottom);a.bottom=c(a.bottom,b.y,b.bottom);a.left=a.x=c(a.left,b.x,b.right);a.right=c(a.right,b.x,b.right);return a},adjust:function(d,g,a,c){var e=this;e.top=e.y+=d;e.left=e.x+=c;e.right+=g;e.bottom+=a;return e},getOutOfBoundOffset:function(a,b){if(!Ext.isObject(a)){if(a=="x"){return this.getOutOfBoundOffsetX(b)}else{return this.getOutOfBoundOffsetY(b)}}else{b=a;var c=new Ext.util.Offset();c.x=this.getOutOfBoundOffsetX(b.x);c.y=this.getOutOfBoundOffsetY(b.y);return c}},getOutOfBoundOffsetX:function(a){if(a<=this.x){return this.x-a}else{if(a>=this.right){return this.right-a}}return 0},getOutOfBoundOffsetY:function(a){if(a<=this.y){return this.y-a}else{if(a>=this.bottom){return this.bottom-a}}return 0},isOutOfBound:function(a,b){if(!Ext.isObject(a)){if(a=="x"){return this.isOutOfBoundX(b)}else{return this.isOutOfBoundY(b)}}else{b=a;return(this.isOutOfBoundX(b.x)||this.isOutOfBoundY(b.y))}},isOutOfBoundX:function(a){return(a<this.x||a>this.right)},isOutOfBoundY:function(a){return(a<this.y||a>this.bottom)},restrict:function(b,d,a){if(Ext.isObject(b)){var c;a=d;d=b;if(d.copy){c=d.copy()}else{c={x:d.x,y:d.y}}c.x=this.restrictX(d.x,a);c.y=this.restrictY(d.y,a);return c}else{if(b=="x"){return this.restrictX(d,a)}else{return this.restrictY(d,a)}}},restrictX:function(b,a){if(!a){a=1}if(b<=this.x){b-=(b-this.x)*a}else{if(b>=this.right){b-=(b-this.right)*a}}return b},restrictY:function(b,a){if(!a){a=1}if(b<=this.y){b-=(b-this.y)*a}else{if(b>=this.bottom){b-=(b-this.bottom)*a}}return b},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(b){var a=this;a.top=a.y=a[1]=b.y;a.right=b.right;a.bottom=b.bottom;a.left=a.x=a[0]=b.x;return this},toString:function(){return"Region["+this.top+","+this.right+","+this.bottom+","+this.left+"]"},translateBy:function(a,c){if(arguments.length==1){c=a.y;a=a.x}var b=this;b.top=b.y+=c;b.right+=a;b.bottom+=c;b.left=b.x+=a;return b},round:function(){var a=this;a.top=a.y=Math.round(a.y);a.right=Math.round(a.right);a.bottom=Math.round(a.bottom);a.left=a.x=Math.round(a.x);return a},equals:function(a){return(this.top===a.top&&this.right===a.right&&this.bottom===a.bottom&&this.left===a.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(b){var a=b.changedTouches,c=(a&&a.length>0)?a[0]:b;return this.fromTouch(c)},fromTouch:function(a){return new this(a.pageX,a.pageY)},from:function(a){if(!a){return new this(0,0)}if(!(a instanceof this)){return new this(a.x,a.y)}return a}},constructor:function(a,b){if(a==null){a=0}if(b==null){b=0}Ext.util.Region.prototype.constructor.apply(this,[b,a,b,a])},clone:function(){return new this.self(this.x,this.y)},copy:function(){return this.clone.apply(this,arguments)},copyFrom:function(a){this.x=a.x;this.y=a.y;return this},toString:function(){return"Point["+this.x+","+this.y+"]"},isCloseTo:function(c,b){if(typeof b=="number"){return this.getDistanceTo(c)<=b}var a=c.x,g=c.y,e=b.x,d=b.y;return(this.x<=a+e&&this.x>=a-e&&this.y<=g+d&&this.y>=g-d)},isWithin:function(){return this.isCloseTo.apply(this,arguments)},isContainedBy:function(a){if(!(a instanceof Ext.util.Region)){a=Ext.get(a.el||a).getRegion()}return a.contains(this)},roundedEquals:function(a){if(typeof a!="object"){a=this.origin}return(Math.round(this.x)===Math.round(a.x)&&Math.round(this.y)===Math.round(a.y))},getDistanceTo:function(b){if(typeof b!="object"){b=this.origin}var c=this.x-b.x,a=this.y-b.y;return Math.sqrt(c*c+a*a)},getAngleTo:function(b){if(typeof b!="object"){b=this.origin}var c=this.x-b.x,a=this.y-b.y;return Math.atan2(a,c)*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,isEvent:true,statics:{resolveTextNode:function(a){return(a&&a.nodeType===3)?a.parentNode:a},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},touchEvents:{touchstart:1,touchmove:1,touchend:1,touchcancel:1},pointerTypes:{2:"touch",3:"pen",4:"mouse",touch:"touch",pen:"pen",mouse:"mouse"}},constructor:function(b){var g=this,k=g.self,e=g.self.resolveTextNode,j=b.changedTouches,c=j?j[0]:b,h=b.type,a,d;g.pageX=c.pageX;g.pageY=c.pageY;g.target=g.delegatedTarget=e(b.target);d=b.relatedTarget;if(d){g.relatedTarget=e(d)}g.browserEvent=g.event=b;g.type=h;g.button=b.button||0;g.shiftKey=b.shiftKey;g.ctrlKey=b.ctrlKey||b.metaKey||false;g.altKey=b.altKey;g.charCode=b.charCode;g.keyCode=b.keyCode;if(k.mouseEvents[h]){a="mouse"}else{if(k.pointerEvents[h]){a=k.pointerTypes[b.pointerType]}else{if(k.touchEvents[h]){a="touch"}}}if(a){g.pointerType=a}g.timeStamp=g.time=+(b.timeStamp||new Date())},chain:function(a){var b=Ext.Object.chain(this);b.parentEvent=this;return Ext.apply(b,a)},correctWheelDelta:function(c){var b=this.WHEEL_SCALE,a=Math.round(c/b);if(!a&&c){a=(c<0)?-1:1}return a},getCharCode:function(){return this.charCode||this.keyCode},getKey:function(){return this.keyCode||this.charCode},getPoint:function(){var a=this.getXY();return new Ext.util.Point(a[0],a[1])},getRelatedTarget:function(b,e,a){var c=this.relatedTarget,d=null;if(c){if(b){d=Ext.fly(c).findParent(b,e,a)}else{d=a?Ext.get(c):c}}return d},getTarget:function(b,c,a){return b?Ext.fly(this.target).findParent(b,c,a):(a?Ext.get(this.target):this.target)},getTime:function(){return this.time},getWheelDelta:function(){var a=this.getWheelDeltas();return a.y},getWheelDeltas:function(){var d=this,c=d.browserEvent,b=0,a=0;if(Ext.isDefined(c.wheelDeltaX)){b=c.wheelDeltaX;a=c.wheelDeltaY}else{if(c.wheelDelta){a=c.wheelDelta}else{if(c.detail){a=-c.detail;if(a>100){a=3}else{if(a<-100){a=-3}}if(Ext.isDefined(c.axis)&&c.axis===c.HORIZONTAL_AXIS){b=a;a=0}}}}return{x:d.correctWheelDelta(b),y:d.correctWheelDelta(a)}},getX:function(){return this.getXY()[0]},getXY:function(){if(!this.xy){this.xy=[this.pageX,this.pageY]}return this.xy},getY:function(){return this.getXY()[1]},hasModifier:function(){var a=this;return !!(a.ctrlKey||a.altKey||a.shiftKey||a.metaKey)},isNavKeyPress:function(){var b=this,a=b.keyCode;return(a>=33&&a<=40)||a===b.RETURN||a===b.TAB||a===b.ESC},isSpecialKey:function(){var a=this.keyCode;return(this.type==="keypress"&&this.ctrlKey)||this.isNavKeyPress()||(a===this.BACKSPACE)||(a>=16&&a<=20)||(a>=44&&a<=46)},makeUnpreventable:function(){this.browserEvent.preventDefault=Ext.emptyFn},preventDefault:function(){this.browserEvent.preventDefault();return this},setCurrentTarget:function(a){this.currentTarget=this.delegatedTarget=a},stopEvent:function(){return this.preventDefault().stopPropagation()},stopPropagation:function(){var b=this,c=b.browserEvent,a=b.parentEvent;b.isStopped=true;if(a){a.isStopped=true}if(!c.stopPropagation){c.cancelBubble=true;return b}c.stopPropagation();return b},within:function(d,e,b){if(d){var c=e?this.getRelatedTarget():this.getTarget(),a;if(c){a=Ext.fly(d).contains(c);if(!a&&b){a=(c===Ext.getDom(d))}return a}}return false},deprecated:{"4.0":{methods:{getPageX:"getX",getPageY:"getY"}}}},1,0,0,0,0,0,[Ext.event,"Event",Ext,"EventObjectImpl"],function(a){var b={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 c;if(Ext.isGecko){c=3}else{if(Ext.isMac){if(Ext.isSafari&&Ext.webKitVersion>=532){c=120}else{c=12}c*=3}else{c=120}}return c}())};Ext.apply(a,b);Ext.apply(a.prototype,b)}));Ext.define("Ext.overrides.event.Event",{override:"Ext.event.Event",mousedownEvents:{mousedown:1,pointerdown:1,touchstart:1},getXY:function(){var c=this,e=c.xy,b,h,d,g,a;if(!e){e=c.callParent();b=e[0];if(!b&&b!==0){h=c.browserEvent;d=document;g=d.documentElement;a=d.body;e[0]=h.clientX+(g&&g.scrollLeft||a&&a.scrollLeft||0)-(g&&g.clientLeft||a&&a.clientLeft||0);e[1]=h.clientY+(g&&g.scrollTop||a&&a.scrollTop||0)-(g&&g.clientTop||a&&a.clientTop||0)}}return e},injectEvent:(function(){var d,e={},c;if(!Ext.isIE9m&&document.createEvent){d={createHtmlEvent:function(l,j,h,g){var k=l.createEvent("HTMLEvents");k.initEvent(j,h,g);return k},createMouseEvent:function(v,t,n,m,p,l,j,k,g,s,r,o,q){var h=v.createEvent("MouseEvents"),u=v.defaultView||window;if(h.initMouseEvent){h.initMouseEvent(t,n,m,u,p,l,j,l,j,k,g,s,r,o,q)}else{h=v.createEvent("UIEvents");h.initEvent(t,n,m);h.view=u;h.detail=p;h.screenX=l;h.screenY=j;h.clientX=l;h.clientY=j;h.ctrlKey=k;h.altKey=g;h.metaKey=r;h.shiftKey=s;h.button=o;h.relatedTarget=q}return h},createUIEvent:function(n,l,j,h,k){var m=n.createEvent("UIEvents"),g=n.defaultView||window;m.initUIEvent(l,j,h,g,k);return m},fireEvent:function(j,g,h){j.dispatchEvent(h)}}}else{if(document.createEventObject){c={0:1,1:4,2:2};d={createHtmlEvent:function(l,j,h,g){var k=l.createEventObject();k.bubbles=h;k.cancelable=g;return k},createMouseEvent:function(u,t,n,m,p,l,j,k,g,s,r,o,q){var h=u.createEventObject();h.bubbles=n;h.cancelable=m;h.detail=p;h.screenX=l;h.screenY=j;h.clientX=l;h.clientY=j;h.ctrlKey=k;h.altKey=g;h.shiftKey=s;h.metaKey=r;h.button=c[o]||o;h.relatedTarget=q;return h},createUIEvent:function(m,k,h,g,j){var l=m.createEventObject();l.bubbles=h;l.cancelable=g;return l},fireEvent:function(j,g,h){j.fireEvent("on"+g,h)}}}}Ext.Object.each({load:[false,false],unload:[false,false],select:[true,false],change:[true,false],submit:[true,true],reset:[true,false],resize:[true,false],scroll:[true,false]},function(j,k){var h=k[0],g=k[1];e[j]=function(n,l){var m=d.createHtmlEvent(j,h,g);d.fireEvent(n,j,m)}});function b(j,h){var g=(j!="mousemove");return function(n,k){var m=k.getXY(),l=d.createMouseEvent(n.ownerDocument,j,true,g,h,m[0],m[1],k.ctrlKey,k.altKey,k.shiftKey,k.metaKey,k.button,k.relatedTarget);d.fireEvent(n,j,l)}}Ext.each(["click","dblclick","mousedown","mouseup","mouseover","mousemove","mouseout"],function(g){e[g]=b(g,1)});Ext.Object.each({focusin:[true,false],focusout:[true,false],activate:[true,true],focus:[false,false],blur:[false,false]},function(j,k){var h=k[0],g=k[1];e[j]=function(n,l){var m=d.createUIEvent(n.ownerDocument,j,h,g,1);d.fireEvent(n,j,m)}});if(!d){e={};d={}}function a(h,g){}return function(k){var j=this,h=e[j.type]||a,g=k?(k.dom||k):j.getTarget();h(g,j)}}()),preventDefault:function(){var b=this,a=b.browserEvent;if(a.preventDefault){a.preventDefault()}else{a.returnValue=false;if(a.ctrlKey||a.keyCode>111&&a.keyCode<124){a.keyCode=-1}}return b},stopPropagation:function(){var a=this;if(a.mousedownEvents[a.type]){Ext.GlobalEvents.fireMouseDown(a)}return a.callParent()},deprecated:{"5.0":{methods:{clone:function(){return new this.self(this.browserEvent,this)}}}}},function(){var a=this,b;if(Ext.isIE9m){b={1:0,4:1,2:2};a.override({statics:{enableIEAsync:function(e){var c,d={};for(c in e){d[c]=e[c]}return d}},constructor:function(g,h,d,c){var e=this;e.callParent([g,h,d,c]);e.button=b[g.button];e.toElement=g.toElement;e.fromElement=g.fromElement},mouseLeaveRe:/(mouseout|mouseleave)/,mouseEnterRe:/(mouseover|mouseenter)/,enableIEAsync:function(c){this.browserEvent=this.self.enableIEAsync(c)},getRelatedTarget:function(d,j,c){var g=this,e,h;if(!g.relatedTarget){e=g.type;if(g.mouseLeaveRe.test(e)){h=g.toElement}else{if(g.mouseEnterRe.test(e)){h=g.fromElement}}if(h){g.relatedTarget=g.self.resolveTextNode(h)}}return g.callParent([d,j,c])}})}});(Ext.cmd.derive("Ext.event.ListenerStack",Ext.Base,{currentOrder:"current",length:0,constructor:function(){this.listeners={before:[],current:[],after:[]};this.lateBindingMap={};return this},add:function(l,m,n,g,c){var b=this.lateBindingMap,k=this.getAll(g),h=k.length,j=typeof l==="string",a,e,d;if(j&&m&&m.isIdentifiable){d=m.getId();a=b[d];if(a){if(a[l]){return false}else{a[l]=true}}else{b[d]=a={};a[l]=true}}else{if(h>0){while(h--){e=k[h];if(e.fn===l&&e.scope===m){e.options=n;return false}}}}e=this.create(l,m,n,g,c);if(j&&(!m||m==="this"||m==="controller")){e.boundFn=this.bindDynamicScope(c,l,m);e.isLateBinding=false}if(n&&n.prepend){delete n.prepend;k.unshift(e)}else{k.push(e)}this.length++;return true},bindDynamicScope:function(c,b,a){return function(){var d=c.resolveListenerScope(a);return d[b].apply(d,arguments)}},getAt:function(b,a){return this.getAll(a)[b]},getAll:function(a){return this.listeners[a||this.currentOrder]},count:function(a){return this.getAll(a).length},create:function(d,c,b,a,e){b=b||{};return{stack:this,fn:d,firingFn:false,boundFn:false,isLateBinding:typeof d==="string",scope:c,options:b,order:a,observable:e,type:b.type}},remove:function(j,k,e){var h=this.getAll(e),g=h.length,b=false,a=this.lateBindingMap,d,c;if(g>0){while(g--){d=h[g];if(d.fn===j&&d.scope===k){h.splice(g,1);b=true;this.length--;if(k&&k.isIdentifiable&&typeof j==="string"){c=k.getId();if(a[c]&&a[c][j]){delete a[c][j]}}break}}}return b}},1,0,0,0,0,0,[Ext.event,"ListenerStack"],0));(Ext.cmd.derive("Ext.event.Controller",Ext.Base,{isFiring:false,listenerStack:null,constructor:function(a){this.firingListeners=[];this.firingArguments=[];this.dispatcher=a;return this},setInfo:function(a){this.info=a},getInfo:function(){return this.info},setListenerStacks:function(a){this.listenerStacks=a},fire:function(j,e){var o=this.listenerStacks,n=this.firingListeners,d=this.firingArguments,l=n.push,h=o.length,k,m,c,p,a=false,b=false,g;n.length=0;if(e){if(e.order!=="after"){a=true}else{b=true}}if(h===1){k=o[0].listeners;m=k.before;c=k.current;p=k.after;if(m.length>0){l.apply(n,m)}if(a){l.call(n,e)}if(c.length>0){l.apply(n,c)}if(b){l.call(n,e)}if(p.length>0){l.apply(n,p)}}else{for(g=0;g<h;g++){m=o[g].listeners.before;if(m.length>0){l.apply(n,m)}}if(a){l.call(n,e)}for(g=0;g<h;g++){c=o[g].listeners.current;if(c.length>0){l.apply(n,c)}}if(b){l.call(n,e)}for(g=0;g<h;g++){p=o[g].listeners.after;if(p.length>0){l.apply(n,p)}}}if(n.length===0){return this}if(!j){j=[]}d.length=0;d.push.apply(d,j);d.push(null,this);this.doFire();return this},doFire:function(){var w=this,k=w.firingListeners,s=w.firingArguments,o=s[1],p=s.length-2,n=k[0].observable,v=w.info,q,r,l,g,e,j,t,c,u,a,b,m,d,h;if(n&&n.isElement){q=s[0]}w.isPausing=w.isPaused=w.isStopped=false;w.isFiring=true;for(r=0,l=k.length;r<l;r++){g=k[r];e=g.options;j=g.fn;t=g.firingFn;c=g.boundFn;u=g.isLateBinding;a=g.scope;if(u&&c&&c!==a[j]){c=false;t=false}if(!c){if(u){c=a[j];if(!c){continue}}else{c=j}g.boundFn=c}if(q){d=g.type;if(d){s[0]=q.chain({type:d})}Ext.EventObject=s[0]}if(!t){t=c;if(e.delay){t=Ext.Function.createDelayed(t,e.delay,a)}else{if(e.buffer){t=Ext.Function.createBuffered(t,e.buffer,a)}else{if(e.onFrame){t=Ext.Function.createAnimationFrame(t,a)}}}g.firingFn=t}s[p]=e;b=s;if(e.args){b=e.args.concat(b)}if(e.delegate&&w.info.targetType==="element"){s[1]=Ext.fly(o).findParent(e.delegate,o)}if(e.single){w.dispatcher.removeListener(v.targetType,v.target,v.eventName,j,a,e,g.order,g.observable)}h=e.beforeFn;if(h){m=h.apply(Ext.global,b)!==false;if(m!==false){m=t.apply(a,b)}}else{m=t.apply(a,b)}if(e.delegate){s[1]=o}if(m===false){w.stop()}if(w.isStopped){break}if(w.isPausing){w.isPaused=true;k.splice(0,r+1);return}if(q){s[0]=q}}w.isFiring=false;w.listenerStacks=null;k.length=s.length=0;w.connectingController=null},connect:function(a){this.connectingController=a},resume:function(){var a=this.connectingController;this.isPausing=false;if(this.isPaused&&this.firingListeners.length>0){this.isPaused=false;this.doFire()}if(a){a.resume()}return this},isInterrupted:function(){return this.isStopped||this.isPaused},stop:function(){var a=this.connectingController;this.isStopped=true;if(a){this.connectingController=null;a.stop()}this.isFiring=false;this.listenerStacks=null;return this},pause:function(){var a=this.connectingController;this.isPausing=true;if(a){a.pause()}return this}},1,0,0,0,0,0,[Ext.event,"Controller"],0));(Ext.cmd.derive("Ext.event.Dispatcher",Ext.Base,{statics:{getInstance:function(){if(!this.instance){this.instance=new this()}return this.instance},setInstance:function(a){this.instance=a;return this}},baseHasListeners:{_decr_:function(a){if(!--this[a]){delete this[a]}},_incr_:function(a){if(this.hasOwnProperty(a)){++this[a]}else{this[a]=1}}},hasListeners:{},config:{publishers:{}},wildcard:"*",constructor:function(a){this.listenerStacks={};this.captureListenerStacks={};this.directListenerStacks={};this.activePublishers={};this.publishersCache={};this.noActivePublishers=[];this.controller=null;this.initConfig(a);return this},getListenerStack:function(c,d,b,a){return this.doGetListenerStack(this.listenerStacks,c,d,b,a)},getCaptureListenerStack:function(c,d,b,a){return this.doGetListenerStack(this.captureListenerStacks,c,d,b,a)},getDirectListenerStack:function(c,d,b,a){return this.doGetListenerStack(this.directListenerStacks,c,d,b,a)},doGetListenerStack:function(d,e,h,c,b){var g=d[e],a;if(!g){if(b){d[e]=g={}}else{return null}}g=g[h];if(!g){if(b){d[e][h]=g={}}else{return null}}a=g[c];if(!a){if(b){g[c]=a=new Ext.event.ListenerStack()}else{return null}}return a},getController:function(e,h,c,b){var d=this,a=d.controller,g={targetType:e,target:h,eventName:c};if(!a){d.controller=a=new Ext.event.Controller(d)}if(a.isFiring){a=new Ext.event.Controller(d)}a.setInfo(g);if(b&&a!==b){a.connect(b)}return a},applyPublishers:function(c){var a,b;this.publishersCache={};for(a in c){if(c.hasOwnProperty(a)){b=c[a];this.registerPublisher(b)}}return c},registerPublisher:function(b){var a=this.activePublishers,c=b.getTargetType(),d=a[c];if(!d){a[c]=d=[]}d.push(b);b.setDispatcher(this);return this},getCachedActivePublishers:function(c,b){var a=this.publishersCache,d;if((d=a[c])&&(d=d[b])){return d}return null},cacheActivePublishers:function(c,b,d){var a=this.publishersCache;if(!a[c]){a[c]={}}a[c][b]=d;return d},getActivePublishers:function(h,b){var j=this.getCachedActivePublishers(h,b),a,g,c,e,d;if(j){return j}a=this.activePublishers[h];if(a){j=[];for(c=0,e=a.length;c<e;c++){d=a[c];if(d.handles(b)){j.push(d)}}if(!j.length&&h==="element"){g=this.getPublisher("dom");if(g){j.push(g)}}}else{j=this.noActivePublishers}return this.cacheActivePublishers(h,b,j)},hasListener:function(e,g,c){var a=this.getListenerStack(e,g,c),d=this.getCaptureListenerStack(e,g,c),b=false;if(a){b=a.count()>0}if(!b&&e==="element"){b=d.count()>0}return b},getHasListeners:function(c,d){var b=this.hasListeners,a=d&&d.hasListeners;if(!a){a=b[c]||(b[c]=Ext.Object.chain(this.baseHasListeners));if(d){d.hasListeners=a=Ext.Object.chain(a)}}return a},addListener:function(b,g,e,j,l,n,c,a){n=n||{};var k=this.getActivePublishers(b,e),h=k.length,d,m;m=this.doAddListener(b,g,e,j,l,n,c,a);if(m){for(d=0;d<h;d++){k[d].subscribe(g,e,n,a)}}return m},doAddListener:function(b,h,e,k,l,m,c,a){m=m||{};var j=this,g,d;if(b==="element"){if(m.capture){g=j.getCaptureListenerStack(b,h,e,true)}else{d=j.getPublisher("dom");if(m.delegated===false||d.directEvents[e]||(!d.isTargetWin&&h==="#ext-window")){g=j.getDirectListenerStack(b,h,e,true)}}}if(!g){g=j.getListenerStack(b,h,e,true)}j.getHasListeners(b,a)._incr_(e);return g.add(k,l,m,c,a)},removeListener:function(b,g,e,j,l,n,c,a){n=n||{};var k=this.getActivePublishers(b,e),h=k.length,d,m;m=this.doRemoveListener(b,g,e,j,l,n,c,a);if(m){for(d=0;d<h;d++){k[d].unsubscribe(g,e,null,n,a)}}return m},doRemoveListener:function(b,h,e,k,l,m,c,a){m=m||{};var j=this,g,d;if(b==="element"){if(m.capture){g=j.getCaptureListenerStack(b,h,e)}else{d=j.getPublisher("dom");if(m.delegated===false||d.directEvents[e]||(!d.isTargetWin&&h==="#ext-window")){g=j.getDirectListenerStack(b,h,e)}}}if(!g){g=j.getListenerStack(b,h,e)}if(g&&g.remove(k,l,c)){j.getHasListeners(b,a)._decr_(e);return true}return false},clearListeners:function(e,h,g){var c=this,b=c.listenerStacks[e],d=c.captureListenerStacks[e],a;if(b){c.doClearListeners(b,e,h,{},g)}if(d){c.doClearListeners(d,e,h,{capture:true},g)}if(g){a=c.directListenerStacks[e];if(a){c.doClearListeners(a,e,h,{delegated:false},g)}}},doClearListeners:function(m,b,g,n,a){var k=this,c=m[g],j=k.getHasListeners(b,a),e,d,h,l;if(c){for(e in c){l=k.getActivePublishers(b,e);for(d=0,h=l.length;d<h;d++){l[d].unsubscribe(g,e,true,n,a)}if(!(j[e]-=c[e].length)){delete j[e]}}delete m[g]}},dispatchEvent:function(d,e,a){var g=this.getActivePublishers(d,a),c=g.length,b;if(c>0){for(b=0;b<c;b++){g[b].notify(e,a)}}return this.doDispatchEvent.apply(this,arguments)},doDispatchEvent:function(a,h,g,k,c,b,l){var j=l?this.getCaptureListenerStack(a,h,g):this.getListenerStack(a,h,g,l),d=this.getWildcardListenerStacks(a,h,g,l),e;if(!j||!j.length){if(!d.length&&!c){return}}else{d.push(j)}e=this.getController(a,h,g,b);e.setListenerStacks(d);e.fire(k,c);return !e.isInterrupted()},dispatchDirectEvent:function(e,g,c,d){var b=this.getDirectListenerStack(e,g,c),a;if(b&&b.length){a=this.getController(e,g,c);a.setListenerStacks([b]);a.fire(d);return !a.isInterrupted()}},getWildcardListenerStacks:function(a,g,e,k){var c=[],d=this.wildcard,b=e!==d,j=g!==d,h;if(b&&(h=this.getListenerStack(a,g,d,k))){c.push(h)}if(j&&(h=this.getListenerStack(a,d,e,k))){c.push(h)}return c},getPublisher:function(a){return this.getPublishers()[a]},destroy:function(){var b=this.getPublishers(),a;for(a in b){b[a].destroy()}}},1,0,0,0,0,0,[Ext.event,"Dispatcher"],0));(Ext.cmd.derive("Ext.Mixin",Ext.Base,function(a){return{statics:{addHook:function(j,e,c,d){var h=Ext.isFunction(j),g=function(){var l=arguments,m=h?j:d[j],k=this.callParent(l);m.apply(this,l);return k},b=e.hasOwnProperty(c)&&e[c];if(h){j.$previous=Ext.emptyFn}g.$name=c;g.$owner=e.self;if(b){g.$previous=b.$previous;b.$previous=g}else{e[c]=g}}},onClassExtended:function(m,d){var g=d.mixinConfig,k=d.xhooks,j=m.superclass,e=d.onClassMixedIn,b,h,l,c;if(k){delete d.xhooks;(g||(d.mixinConfig=g={})).on=k}if(g){b=j.mixinConfig;if(b){d.mixinConfig=g=Ext.merge({},b,g)}d.mixinId=g.id;h=g.before;l=g.after;k=g.on;c=g.extended}if(h||l||k||c){d.onClassMixedIn=function(q){var n=this.prototype,p=q.prototype,o;if(h){Ext.Object.each(h,function(r,s){q.addMember(r,function(){if(n[s].apply(this,arguments)!==false){return this.callParent(arguments)}})})}if(l){Ext.Object.each(l,function(r,s){q.addMember(r,function(){var t=this.callParent(arguments);n[s].apply(this,arguments);return t})})}if(k){for(o in k){a.addHook(k[o],p,o,n)}}if(c){q.onExtended(function(){var r=Ext.Array.slice(arguments,0);r.unshift(q);return c.apply(this,r)},this)}if(e){e.apply(this,arguments)}}}}}},0,0,0,0,0,0,[Ext,"Mixin"],0));(Ext.cmd.derive("Ext.mixin.Observable",Ext.Mixin,{mixinConfig:{id:"observable",after:{destroy:"destroy"}},isObservable:true,observableType:"observable",validIdRe:Ext.validIdRe,observableIdPrefix:"#",listenerOptionsRegex:/^(?:delegate|delegated|single|delay|buffer|args|prepend|capture|destroyable|translate)$/,eventFiringSuspended:0,config:{listeners:{$value:null,merge:function(d,a,c){var b=d;if(c.isInstance){if(c._hasDeclaredListeners){b=[c.self.getDeclaredListeners(),d]}}else{if(!c.listeners){c.listeners=c.getDeclaredListeners()}if(d){c.prototype._hasDeclaredListeners=true;c.listeners.push(d)}}return b}},bubbleEvents:null},inheritableStatics:{getDeclaredListeners:function(){var g=this,h=g.superclass,d=g.listeners,e=g.prototype,a,c,b;if(!d){d=g.listeners=[];if(h.isObservable){d.push(h.self.getDeclaredListeners())}if(e.hasOwnProperty("mixins")){a=e.mixins;for(c in a){b=a[c];if(b.isObservable){d.push(b.self.getDeclaredListeners())}}}}return d}},afterClassMixedIn:function(b){var a=b.prototype,c=a.listeners;if(c){delete a.listeners;b.getConfigurator().add({listeners:c})}},constructor:function(a){var b=this;b.initConfig(a);b.getEventDispatcher().getHasListeners(b.observableType,b)},applyListeners:function(a){if(a){if(a instanceof Array){Ext.each(a,this.applyListeners,this)}else{this.addListener(a)}}return a},resolveListenerScope:function(a){if(a==="this"){a=null}return a||this},applyBubbleEvents:function(a){if(a){this.enableBubble(a)}},getOptimizedObservableId:function(){return this.observableId},getObservableId:function(){var a=this,c,b;if(!a.observableId){c=a.getUniqueId();b=a.validIdRe;a.observableId=a.observableIdPrefix+c;a.getObservableId=a.getOptimizedObservableId}return a.observableId},getOptimizedEventDispatcher:function(){return this.eventDispatcher},createEventDispatcher:function(){var b=this,a;b.eventDispatcher=a=Ext.event.Dispatcher.getInstance();b.getEventDispatcher=b.getOptimizedEventDispatcher;b.getListeners();b.getBubbleEvents();return a},getEventDispatcher:function(){var a=this.eventDispatcher;if(!a){a=this.createEventDispatcher()}return a},getManagedListeners:function(c,b){var d=c.getUniqueId(),a=this.managedListeners;if(!a){this.managedListeners=a={}}if(!a[d]){a[d]={};c.doAddListener("destroy","clearManagedListeners",this,{single:true,args:[c]})}if(!a[d][b]){a[d][b]=[]}return a[d][b]},getUsedSelectors:function(){var a=this.usedSelectors;if(!a){a=this.usedSelectors=[];a.$map={}}return a},fireEvent:function(a){var b=Array.prototype.slice.call(arguments,1);return this.doFireEvent(a,b)},fireEventArgs:function(a,b){return this.doFireEvent(a,b)},fireAction:function(c,e,h,g,d,a){var b=typeof h,j;if(e===undefined){e=[]}if(b!=="undefined"){j={fn:h,isLateBinding:b==="string",scope:g||this,options:d||{},order:a}}return this.doFireEvent(c,e,j)},doFireEvent:function(d,h,c,b){var j=this,k=j.eventQueue,a=Ext.$eventNameMap,g=j.suspendedEvents,e=true;d=a[d]||(a[d]=d.toLowerCase());if(j.eventFiringSuspended||(g&&g[d])){if(k){k.push([d,h,c,b])}}else{e=j.getEventDispatcher().dispatchEvent(j.observableType,j.getObservableId(),d,h,c,b)}return e},doAddListener:function(a,l,n,o,c){var k=this,e=(n&&n!==k&&n.isIdentifiable),b=k.getUsedSelectors(),g=b.$map,d=k.getObservableId(),h,m,j;if(!o){o={}}if(!n&&typeof l==="function"){n=k}if(o.delegate){j=o.delegate;d+=" "+j}if(!(d in g)){g[d]=true;b.push(d)}h=k.addDispatcherListener(d,a,l,n,o,c);if(h&&e){m=k.getManagedListeners(n,a);m.push({delegate:j,scope:n,fn:l,order:c})}return h},addDispatcherListener:function(b,d,g,e,c,a){return this.getEventDispatcher().addListener(this.observableType,b,d,g,e,c,a,this)},doRemoveListener:function(b,m,o,p,d){var l=this,h=(o&&o!==l&&o.isIdentifiable),e=l.getObservableId(),a,n,g,j,c,k;if(!p){p={}}if(!o&&typeof m==="function"){o=l}if(p.delegate){k=p.delegate;e+=" "+k}a=l.removeDispatcherListener(e,b,m,o,p,d);if(a&&h){n=l.getManagedListeners(o,b);for(g=0,j=n.length;g<j;g++){c=n[g];if(c.fn===m&&c.scope===o&&c.delegate===k&&c.order===d){n.splice(g,1);break}}}return a},removeDispatcherListener:function(b,d,g,e,c,a){return this.getEventDispatcher().removeListener(this.observableType,b,d,g,e,c,a,this)},clearManagedListeners:function(d){var j=this,l=j.managedListeners,a,c,k,g,e,h,b,m;if(!l){return j}if(d){if(typeof d!=="string"){a=d.getUniqueId()}else{a=d}c=l[a];for(g in c){if(c.hasOwnProperty(g)){k=c[g];for(e=0,h=k.length;e<h;e++){b=k[e];m={};if(b.delegate){m.delegate=b.delegate}if(j.doRemoveListener(g,b.fn,b.scope,m,b.order)){e--;h--}}}}delete l[a];return j}for(a in l){if(l.hasOwnProperty(a)){j.clearManagedListeners(a)}}},changeListener:function(k,g,h,b,d,o){var s=this,r=Ext.$eventNameMap,l,m,a,c,t,n,p,j,e,q;if(typeof h!=="undefined"){if(typeof g!=="string"){for(p=0,j=g.length;p<j;p++){t=g[p];t=r[t]||(r[t]=t.toLowerCase());k.call(s,t,h,b,d,o)}return s}g=r[g]||(r[g]=g.toLowerCase());k.call(s,g,h,b,d,o)}else{if(Ext.isArray(g)){m=g;for(p=0,j=m.length;p<j;p++){e=m[p];g=e.event;g=r[g]||(r[g]=g.toLowerCase());k.call(s,g,e.fn,e.scope,e,e.order)}}else{a=s.listenerOptionsRegex;d=g;l=[];m=[];c={};for(t in d){n=d[t];if(t==="scope"){b=n;continue}else{if(t==="order"){o=n;continue}}if(!a.test(t)){t=r[t]||(r[t]=t.toLowerCase());q=typeof n;if(q!=="string"&&q!=="function"){k.call(this,t,n.fn,n.scope||b,n,n.order||o);continue}l.push(t);m.push(n)}else{c[t]=n}}for(p=0,j=l.length;p<j;p++){k.call(s,l[p],m[p],b,c,o)}}}return s},addListener:function(b,h,g,d,a){var j=this,e,c;if(d){e=d.destroyable}else{if(typeof b==="object"){e=b.destroyable}}c=j.changeListener(j.doAddListener,b,h,g,d,a);if(e){c=new Ext.mixin.Observable.$ListenerRemover(j,b,h,g,d,a)}return c},toggleListener:function(b,c,g,e,d,a){return this.changeListener(b?this.doAddListener:this.doRemoveListener,c,g,e,d,a)},addBeforeListener:function(a,d,c,b){return this.addListener(a,d,c,b,"before")},addAfterListener:function(a,d,c,b){return this.addListener(a,d,c,b,"after")},removeListener:function(b,e,d,c,a){return this.changeListener(this.doRemoveListener,b,e,d,c,a)},removeBeforeListener:function(a,d,c,b){return this.removeListener(a,d,c,b,"before")},removeAfterListener:function(a,d,c,b){return this.removeListener(a,d,c,b,"after")},clearListeners:function(){var e=this,g=e.getUsedSelectors(),c=e.getEventDispatcher(),b,d,a;for(b=0,d=g.length;b<d;b++){a=g[b];c.clearListeners(e.observableType,a,e)}},hasListener:function(a){return this.getEventDispatcher().hasListener(this.observableType,this.getObservableId(),a)},isSuspended:function(a){var c=Ext.$eventNameMap,b=this.suspendedEvents;if(a){a=c[a]||(c[a]=a.toLowerCase())}return !!(this.eventFiringSuspended||(b&&b[a]))},suspendEvents:function(a){++this.eventFiringSuspended;if(a&&!this.eventQueue){this.eventQueue=[]}},suspendEvent:function(){var b=arguments,e=this.suspendedEvents,g=Ext.$eventNameMap,d=b.length,c,a;if(!e){e=this.suspendedEvents={}}for(c=0;c<d;c++){a=b[c];a=g[a]||(g[a]=a.toLowerCase());if(!(a in e)){e[a]=0}++e[a]}},resumeEvents:function(h){var g=this,a=g.eventQueue||[],e=g.suspendedEvents,b,c,d;if(g.eventFiringSuspended&&!--g.eventFiringSuspended){if(!h){for(c=0,d=a.length;c<d;c++){b=a[c];if(!(e&&e[b[0]])){g.doFireEvent.apply(g,b)}}}g.eventQueue=null}},resumeEvent:function(){var g=this,b=arguments,e=g.suspendedEvents,h=Ext.$eventNameMap,d=b.length,c,a;for(c=0;c<d;c++){a=b[c];a=h[a]||(h[a]=a.toLowerCase());if(e&&e[a]){--e[a]}}if(!g.eventFiringSuspended){g.resumeEvents()}},relayEvents:function(b,d,h){var j=Ext.$eventNameMap,c,g,e,a;if(typeof h==="undefined"){h=""}h=h.toLowerCase();if(typeof d==="string"){d=[d]}if(Ext.isArray(d)){for(c=0,g=d.length;c<g;c++){e=d[c];e=j[e]||(j[e]=e.toLowerCase());a=h+e;b.addListener(e,this.createEventRelayer(a),this)}}else{for(e in d){if(d.hasOwnProperty(e)){e=j[e]||(j[e]=e.toLowerCase());a=h+d[e];b.addListener(e,this.createEventRelayer(a),this)}}}return this},relayEvent:function(e,g,j,k,a){var h=typeof g,c=e[e.length-1],d=c.getInfo().eventName,b;e=Array.prototype.slice.call(e,0,-2);e[0]=this;if(h!=="undefined"){b={fn:g,scope:j||this,options:k||{},order:a,isLateBinding:h==="string"}}return this.doFireEvent(d,e,b,c)},createEventRelayer:function(a){return function(){return this.doFireEvent(a,Array.prototype.slice.call(arguments,0,-2))}},enableBubble:function(d){var b=this.isBubblingEnabled,g=Ext.$eventNameMap,c,e,a;if(!b){b=this.isBubblingEnabled={}}if(typeof d==="string"){d=Ext.Array.clone(arguments)}for(c=0,e=d.length;c<e;c++){a=d[c];a=g[a]||(g[a]=a.toLowerCase());if(!b[a]){b[a]=true;this.addListener(a,this.createEventBubbler(a),this)}}},createEventBubbler:function(a){return function b(){var c=("getBubbleTarget" in this)?this.getBubbleTarget():null;if(c&&c!==this&&c.isObservable){c.fireAction(a,Array.prototype.slice.call(arguments,0,-2),b,c,null,"after")}}},getBubbleTarget:function(){return false},destroy:function(){var a=this;if(a.observableId){a.fireEvent("destroy",a);a.clearListeners();a.clearManagedListeners()}},deprecated:{"2.0":{methods:{addEvents:null,addManagedListener:function(){var a=arguments[0];a.addListener.apply(a,Ext.Array.slice(arguments,1))},removeManagedListener:function(){var a=arguments[0];a.removeListener.apply(a,Ext.Array.slice(arguments,1))},mon:function(){var a=arguments[0];a.addListener.apply(a,Ext.Array.slice(arguments,1))},mun:function(){var a=arguments[0];a.removeListener.apply(a,Ext.Array.slice(arguments,1))}}}}},1,0,0,0,0,[[Ext.mixin.Identifiable.prototype.mixinId||Ext.mixin.Identifiable.$className,Ext.mixin.Identifiable]],[Ext.mixin,"Observable"],function(b){var a=function(c){if(c instanceof a){return c}this.observable=c;this.args=Array.prototype.slice.call(arguments,1)};a.prototype.destroy=function(){var c=this.observable;c.un.apply(c,this.args)};b.$ListenerRemover=a;b.createAlias({on:"addListener",un:"removeListener",onBefore:"addBeforeListener",onAfter:"addAfterListener",unBefore:"removeBeforeListener",unAfter:"removeAfterListener"})}));(Ext.cmd.derive("Ext.util.Positionable",Ext.Base,{mixinId:"positionable",_positionTopLeft:["position","top","left"],_alignRe:/^([a-z]+)-([a-z]+)(\?)?$/,afterSetPosition:Ext.emptyFn,adjustForConstraints:function(c,b){var a=this.getConstrainVector(b,c);if(a){c[0]+=a[0];c[1]+=a[1]}return c},alignTo:function(c,a,g,b){var e=this,d=e.el;return e.setXY(e.getAlignToXY(c,a,g),d.anim&&!!b?d.anim(b):false)},calculateAnchorXY:function(g,j,h,d){var k=this,c=k.el,l=document,e=(c.dom===l.body||c.dom===l),m=Math.round,n,b,a;g=(g||"tl").toLowerCase();d=d||{};b=d.width||(e?Ext.Element.getViewportWidth():k.getWidth());a=d.height||(e?Ext.Element.getViewportHeight():k.getHeight());switch(g){case"tl":n=[0,0];break;case"bl":n=[0,a];break;case"tr":n=[b,0];break;case"c":n=[m(b*0.5),m(a*0.5)];break;case"t":n=[m(b*0.5),0];break;case"l":n=[0,m(a*0.5)];break;case"r":n=[b,m(a*0.5)];break;case"b":n=[m(b*0.5),a];break;case"tc":n=[m(b*0.5),0];break;case"bc":n=[m(b*0.5),a];break;case"br":n=[b,a]}return[n[0]+j,n[1]+h]},convertPositionSpec:Ext.identityFn,getAlignToXY:function(k,z,e){var A=this,d,w,a,h,s,g,t,u,q,r,v,p,o,b,c,j,m,n,l;k=Ext.get(k.el||k);if(!k||!k.dom){}e=e||[0,0];z=(!z||z=="?"?"tl-bl?":(!(/-/).test(z)&&z!==""?"tl-"+z:z||"tl-bl")).toLowerCase();z=A.convertPositionSpec(z);a=z.match(A._alignRe);p=a[1];o=a[2];v=!!a[3];h=A.getAnchorXY(p,true);s=A.getAnchorToXY(k,o,false);n=s[0]-h[0]+e[0];l=s[1]-h[1]+e[1];if(v){d=A.constrainTo||A.container||A.el.parent();d=Ext.get(d.el||d);w=d.getViewRegion();w.right=w.left+d.el.dom.clientWidth;g=A.getWidth();t=A.getHeight();u=k.getRegion();b=p.charAt(0);c=p.charAt(p.length-1);j=o.charAt(0);m=o.charAt(o.length-1);q=(n<u.right&&n+g>=u.left)&&((b=="t"&&j=="b")||(b=="b"&&j=="t"));r=(l<u.bottom&&l+t>=u.top)&&((c=="r"&&m=="l")||(c=="l"&&m=="r"));if(n+g>w.right){if(r){n=u.left-g;r=false}else{n=w.right-g}}if(n<w.left){n=r?u.right:w.left}if(l+t>w.bottom){if(q){l=u.top-t;q=false}else{l=w.bottom-t}}if(l<w.top){l=q?u.bottom:w.top}}return[n,l]},getAnchorXY:function(d,j,b){var h=this,k=h.getXY(),a=h.el,m=document,c=a.dom==m.body||a.dom==m,l=a.getScroll(),g=c?l.left:j?0:k[0],e=c?l.top:j?0:k[1];return h.calculateAnchorXY(d,g,e,b)},getBox:function(d,j){var e=this,n=j?e.getLocalXY():e.getXY(),k=n[0],g=n[1],l=e.getWidth(),b=e.getHeight(),c,a,m;if(d){c=e.getBorderPadding();a=c.beforeX;m=c.beforeY;k+=a;g+=m;l-=(a+c.afterX);b-=(m+c.afterY)}return{x:k,left:k,0:k,y:g,top:g,1:g,width:l,height:b,right:k+l,bottom:g+b}},calculateConstrainedPosition:function(h,b,m,d){var l=this,c,j=l.floatParent,e=j?j.getTargetEl():null,a,g,k,n=false;if(m&&j){a=e.getXY();g=e.getBorderPadding();a[0]+=g.beforeX;a[1]+=g.beforeY;if(b){k=[b[0]+a[0],b[1]+a[1]]}}else{k=b}h=h||l.constrainTo||e||l.container||l.el.parent();c=l.getConstrainVector(h,k,d);n=b||l.getPosition(m);if(c){n[0]+=c[0];n[1]+=c[1]}return n},getConstrainVector:function(h,c,e){var a=this.getRegion(),d=[0,0],b=(this.shadow&&this.constrainShadow&&!this.shadowDisabled)?this.shadow.getShadowSize():undefined,k=false,j,g=this.constraintInsets;if(!(h instanceof Ext.util.Region)){h=Ext.get(h.el||h);j=h.getViewSize();h=h.getViewRegion();h.right=h.left+j.width;h.bottom=h.top+j.height}if(g){g=Ext.isObject(g)?g:Ext.Element.parseBox(g);h.adjust(g.top,g.right,g.bottom,g.length)}if(c){a.translateBy(c[0]-a.x,c[1]-a.y)}if(e){a.right=a.left+e[0];a.bottom=a.top+e[1]}if(b){h.adjust(b[0],-b[1],-b[2],b[3])}if(a.right>h.right){k=true;d[0]=(h.right-a.right)}if(a.left+d[0]<h.left){k=true;d[0]=(h.left-a.left)}if(a.bottom>h.bottom){k=true;d[1]=(h.bottom-a.bottom)}if(a.top+d[1]<h.top){k=true;d[1]=(h.top-a.top)}return k?d:false},getOffsetsTo:function(a){var c=this.getXY(),b=Ext.fly(a.el||a).getXY();return[c[0]-b[0],c[1]-b[1]]},getRegion:function(){var a=this.getBox();return new Ext.util.Region(a.top,a.right,a.bottom,a.left)},getViewRegion:function(){var g=this,c=g.el,a=c.dom.nodeName==="BODY",e,k,h,j,d,b,l;if(a){k=c.getScroll();d=k.left;j=k.top;b=Ext.Element.getViewportWidth();l=Ext.Element.getViewportHeight()}else{e=g.getBorderPadding();h=g.getXY();d=h[0]+e.beforeX;j=h[1]+e.beforeY;b=g.getWidth(true);l=g.getHeight(true)}return new Ext.util.Region(j,d+b,j+l,d)},move:function(k,b,c){var g=this,n=g.getXY(),l=n[0],j=n[1],d=[l-b,j],m=[l+b,j],h=[l,j-b],a=[l,j+b],e={l:d,left:d,r:m,right:m,t:h,top:h,up:h,b:a,bottom:a,down:a};k=k.toLowerCase();g.setXY([e[k][0],e[k][1]],c)},setBox:function(c){var b=this,a,d;if(c.isRegion){c={x:c.left,y:c.top,width:c.right-c.left,height:c.bottom-c.top}}b.constrainBox(c);a=c.x;d=c.y;b.setSize(c.width,c.height);b.setXY([a,d]);b.afterSetPosition(a,d);return b},constrainBox:function(c){var b=this,a;if(b.constrain||b.constrainHeader){a=b.calculateConstrainedPosition(null,[(c.x||c.left),(c.y||c.top)],false,[c.width,c.height]);if(a){c.x=a[0];c.y=a[1]}}},translatePoints:function(a,c){var b=this.translateXY(a,c);return{left:b.x,top:b.y}},translateXY:function(h,e){var d=this,b=d.el,j=b.getStyle(d._positionTopLeft),a=j.position==="relative",c=parseFloat(j.left),g=parseFloat(j.top),k=d.getXY();if(Ext.isArray(h)){e=h[1];h=h[0]}if(isNaN(c)){c=a?0:b.dom.offsetLeft}if(isNaN(g)){g=a?0:b.dom.offsetTop}c=(typeof h==="number")?h-k[0]+c:undefined;g=(typeof e==="number")?e-k[1]+g:undefined;return{x:c,y:g}}},0,0,0,0,0,0,[Ext.util,"Positionable"],0));Ext.define("Ext.overrides.util.Positionable",{override:"Ext.util.Positionable",anchorTo:function(h,e,b,a,k,l){var g=this,j=!Ext.isEmpty(k),c=function(){g.alignTo(h,e,b,a);Ext.callback(l,g)},d=g.getAnchor();g.removeAnchor();Ext.apply(d,{fn:c,scroll:j});Ext.on("resize",c,null);if(j){Ext.getWin().on("scroll",c,null,{buffer:!isNaN(k)?k:50})}c();return g},getAnchor:function(){var b=this.el,c,a;if(!b.dom){return}c=b.getData();a=c._anchor;if(!a){a=c._anchor={}}return a},removeAnchor:function(){var a=this.getAnchor();if(a&&a.fn){Ext.un("resize",a.fn);if(a.scroll){Ext.getWin().on("scroll",a.fn)}delete a.fn}return this},setBox:function(c,a){var b=this;if(c.isRegion){c={x:c.left,y:c.top,width:c.right-c.left,height:c.bottom-c.top}}if(a){b.constrainBox(c);b.animate(Ext.applyIf({to:c,listeners:{afteranimate:Ext.Function.bind(b.afterSetPosition,b,[c.x,c.y])}},a))}else{b.callParent([c])}return b}});(Ext.cmd.derive("Ext.dom.Helper",Ext.Base,function(){var a="afterbegin",g="afterend",h="beforebegin",d="beforeend",j=["BeforeBegin","previousSibling"],e=["AfterEnd","nextSibling"],c={beforebegin:j,afterend:e},b={beforebegin:j,afterend:e,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 m=/([a-z])([A-Z])/g,l={};function k(n,p,o){return p+"-"+o.toLowerCase()}return function(n){return l[n]||(l[n]=n.replace(m,k))}}(),generateMarkup:function(r,l){var q=this,p=typeof r,o,k,s,n,m;if(p==="string"||p==="number"){l.push(r)}else{if(Ext.isArray(r)){for(n=0;n<r.length;n++){if(r[n]){q.generateMarkup(r[n],l)}}}else{s=r.tag||"div";l.push("<",s);for(o in r){if(r.hasOwnProperty(o)){k=r[o];if(k!==undefined&&!q.confRe.test(o)){if(typeof k==="object"){l.push(" ",o,'="');q.generateStyles(k,l,true).push('"')}else{l.push(" ",q.attributeTransform[o]||o,'="',k,'"')}}}}if(q.emptyTags.test(s)){l.push("/>")}else{l.push(">");if((k=r.tpl)){k.applyOut(r.tplData,l)}if((k=r.html)){l.push(k)}if((k=r.cn||r.children)){q.generateMarkup(k,l)}m=q.closeTags;l.push(m[s]||(m[s]="</"+s+">"))}}}return l},generateStyles:function(o,l,n){var k=l||[],m,p;for(m in o){if(o.hasOwnProperty(m)){p=o[m];m=this.decamelizeName(m);if(n&&Ext.String.hasHtmlCharacters(p)){p=Ext.String.htmlEncode(p)}k.push(m,":",p,";")}}return l||k.join("")},markup:function(k){if(typeof k==="string"){return k}var l=this.generateMarkup(k,[]);return l.join("")},applyStyles:function(k,l){Ext.fly(k).applyStyles(l)},createContextualFragment:function(l){var o=this.detachedDiv,k=document.createDocumentFragment(),m,n;o.innerHTML=l;n=o.childNodes;m=n.length;while(m--){k.appendChild(n[0])}return k},createDom:function(n,k){var m=this,l=m.markup(n),p=m.detachedDiv;p.innerHTML=l;return p.firstChild},insertHtml:function(n,k,o){var s=this,l,p,m,r,t;n=n.toLowerCase();if(k.insertAdjacentHTML){if(s.ieInsertHtml){t=s.ieInsertHtml(n,k,o);if(t){return t}}l=b[n];if(l){if(Ext.global.MSApp&&Ext.global.MSApp.execUnsafeLocalFunction){MSApp.execUnsafeLocalFunction(function(){k.insertAdjacentHTML(l[0],o)})}else{k.insertAdjacentHTML(l[0],o)}return k[l[1]]}}else{if(k.nodeType===3){n=n===a?h:n;n=n===d?g:n}p=Ext.supports.CreateContextualFragment?k.ownerDocument.createRange():undefined;r="setStart"+(this.endRe.test(n)?"After":"Before");if(c[n]){if(p){p[r](k);t=p.createContextualFragment(o)}else{t=this.createContextualFragment(o)}k.parentNode.insertBefore(t,n===h?k:k.nextSibling);return k[(n===h?"previous":"next")+"Sibling"]}else{m=(n===a?"first":"last")+"Child";if(k.firstChild){if(p){try{p[r](k[m]);t=p.createContextualFragment(o)}catch(q){t=this.createContextualFragment(o)}}else{t=this.createContextualFragment(o)}if(n===a){k.insertBefore(t,k.firstChild)}else{k.appendChild(t)}}else{k.innerHTML=o}return k[m]}}},insertBefore:function(k,m,l){return this.doInsert(k,m,l,h)},insertAfter:function(k,m,l){return this.doInsert(k,m,l,g)},insertFirst:function(k,m,l){return this.doInsert(k,m,l,a)},append:function(k,m,l){return this.doInsert(k,m,l,d)},overwrite:function(m,l,o){var n=this,k;m=Ext.getDom(m);l=n.markup(l);if(n.ieOverwrite){k=n.ieOverwrite(m,l)}if(!k){m.innerHTML=l;k=m.firstChild}return o?Ext.get(k):k},doInsert:function(m,q,p,k){var n=this,l;m=m.dom||Ext.getDom(m);if("innerHTML" in m){l=n.insertHtml(k,m,n.markup(q))}else{l=n.createDom(q,null);if(m.nodeType===3){k=k===a?h:k;k=k===d?g:k}if(c[k]){m.parentNode.insertBefore(l,k===h?m:m.nextSibling)}else{if(m.firstChild&&k===a){m.insertBefore(l,m.firstChild)}else{m.appendChild(l)}}}return p?Ext.get(l):l},createTemplate:function(l){var k=this.markup(l);return new Ext.Template(k)},createHtml:function(k){return this.markup(k)}}},0,0,0,0,0,0,[Ext.dom,"Helper",Ext,"DomHelper",Ext.core,"DomHelper"],0));Ext.define("Ext.overrides.dom.Helper",(function(){var c=/^(?:table|thead|tbody|tr|td)$/i,h=/td|tr|tbody|thead/i,g="<table>",j="</table>",b=g+"<tbody>",e="</tbody>"+j,a=b+"<tr>",d="</tr>"+e;return{override:"Ext.dom.Helper",ieInsertHtml:function(k,m,l){var n=null;if(Ext.isIE9m&&c.test(m.tagName)){n=this.insertIntoTable(m.tagName.toLowerCase(),k,m,l)}return n},ieOverwrite:function(l,k){if(Ext.isIE9m&&c.test(l.tagName)){while(l.firstChild){l.removeChild(l.firstChild)}if(k){return this.insertHtml("afterbegin",l,k)}}},ieTable:function(q,l,r,p){var m=-1,o=this.detachedDiv,n,k;o.innerHTML=[l,r,p].join("");while(++m<q){o=o.firstChild}n=o.nextSibling;if(n){n=o;o=document.createDocumentFragment();while(n){k=n.nextSibling;o.appendChild(n);n=k}}return o},insertIntoTable:function(t,m,l,n){var k,q,p=m==="beforebegin",s=m==="afterbegin",o=m==="beforeend",r=m==="afterend";if(t==="td"&&(s||o)||!h.test(t)&&(p||r)){return null}q=p?l:r?l.nextSibling:s?l.firstChild:null;if(p||r){l=l.parentNode}if(t==="td"||(t==="tr"&&(o||s))){k=this.ieTable(4,a,n,d)}else{if(((t==="tbody"||t==="thead")&&(o||s))||(t==="tr"&&(p||r))){k=this.ieTable(3,b,n,e)}else{k=this.ieTable(2,g,n,j)}}l.insertBefore(k,q);return k}}})());(Ext.cmd.derive("Ext.dom.Element",Ext.Base,function(o){var t=window,K=document,W="ext-window",F="ext-document",e="width",I="height",T="min-width",c="min-height",p="max-width",z="max-height",L="top",X="right",G="bottom",C="left",h="visibility",U="hidden",b="display",M="none",m="z-index",O="position",r="relative",s="static",x="-",v=/\w/g,E=/\s+/,V=/[\s]+/,a=/^(?:transparent|(?:rgba[(](?:\s*\d+\s*[,]){3}\s*0\s*[)]))$/i,D=/table-row|table-.*-group/,u={t:"border-top-width",r:"border-right-width",b:"border-bottom-width",l:"border-left-width"},S={t:"padding-top",r:"padding-right",b:"padding-bottom",l:"padding-left"},k={t:"margin-top",r:"margin-right",b:"margin-bottom",l:"margin-left"},B=[S.l,S.r,S.t,S.b],d=[u.l,u.r,u.t,u.b],R=/\d+$/,g=/\d+(px|em|%|en|ex|pt|in|cm|mm|pc)$/i,J="px",H=/(-[a-z])/gi,Y=/([a-z0-9-]+)\s*:\s*([^;\s]+(?:\s*[^;\s]+)*);?/gi,q=/^\d+(?:\.\d*)?px$/i,w={},N=function(Z,aa){return aa.charAt(1).toUpperCase()},l=null,A=Ext.baseCSSPrefix+"hidden-visibility",y=Ext.baseCSSPrefix+"hidden-display",j=Ext.baseCSSPrefix+"hidden-offsets",Q=Ext.baseCSSPrefix+"no-touch-scroll",n={style:"style",className:"className",cls:"cls",classList:"classList",text:"text",hidden:"hidden",html:"html",children:"children"},P;if(!("activeElement" in K)&&K.addEventListener){K.addEventListener("focus",function(Z){if(Z&&Z.target){l=(Z.target===K)?null:Z.target}},true)}return{alternateClassName:"Ext.Element",observableType:"element",isElement:true,isSynchronized:false,skipGarbageCollection:true,identifiablePrefix:"ext-element-",styleHooks:{},validIdRe:Ext.validIdRe,blockedEvents:Ext.supports.EmulatedMouseOver?{mouseover:1}:{},longpressEvents:{longpress:1,taphold:1},constructor:function(ab,Z){var aa=this,ac;if(typeof ab==="string"){ab=K.getElementById(ab)}if(!ab){return null}aa.dom=ab;ac=ab.id;if(ac){aa.id=ac}else{ac=ab.id=aa.getUniqueId()}aa.el=aa;if(!Z){Ext.cache[ac]=aa}aa.mixins.observable.constructor.call(aa)},inheritableStatics:{cache:Ext.cache={},VISIBILITY:1,DISPLAY:2,OFFSETS:3,unitRe:g,useDelegatedEvents:true,validNodeTypes:{1:1,9:1,11:1},addUnits:function(aa,Z){if(typeof aa==="number"){return aa+(Z||J)}if(aa===""||aa==="auto"||aa==null){return aa||""}if(R.test(aa)){return aa+(Z||J)}if(!g.test(aa)){return aa||""}return aa},create:function(ab,aa){var ah=this,ae=n.hidden,ad,ai,ak,aj,Z,ac,ag,af;if(!ab){ab={}}if(ab.isElement){return aa?ab.dom:ab}else{if("nodeType" in ab){return aa?ab:Ext.get(ab)}}if(typeof ab==="string"){return K.createTextNode(ab)}ak=ab.tag;if(!ak){ak="div"}if(ab.namespace){ad=K.createElementNS(ab.namespace,ak)}else{ad=K.createElement(ak)}ai=ad.style;if(ab[ae]){af=ab.className;af=(af==null)?"":af+" ";ab.className=af+y;delete ab[ae]}for(Z in ab){if(Z!=="tag"){aj=ab[Z];switch(Z){case n.style:if(typeof aj==="string"){ad.setAttribute(Z,aj)}else{for(ac in aj){if(aj.hasOwnProperty(ac)){ai[ac]=aj[ac]}}}break;case n.className:case n.cls:ad.className=aj;break;case n.classList:ad.className=aj.join(" ");break;case n.text:ad.textContent=aj;break;case n.html:ad.innerHTML=aj;break;case n.children:for(ac=0,ag=aj.length;ac<ag;ac++){ad.appendChild(ah.create(aj[ac],true))}break;default:if(aj!=null){ad.setAttribute(Z,aj)}}}}if(aa){return ad}else{return ah.get(ad)}},detach:function(){var Z=this.dom;if(Z&&Z.parentNode&&Z.tagName!=="BODY"){Z.parentNode.removeChild(Z)}return this},fly:function(aa,Z){return Ext.fly(aa,Z)},fromPoint:function(Z,aa){return Ext.get(K.elementFromPoint(Z,aa))},get:function(ac){var ah=this,Z=Ext.cache,ae,ad,aa,ai,af,ab,ag;if(!ac){return null}if(ac.isFly){ac=ac.dom;af=ac._extData}if(typeof ac==="string"){aa=ac;if(Z.hasOwnProperty(aa)){ai=Z[aa];if(ai.skipGarbageCollection||!Ext.isGarbage(ai.dom)){return ai}else{ai.destroy()}}if(aa===W){return o.get(t)}else{if(aa===F){return o.get(K)}}ad=Ext.getElementById?Ext.getElementById(aa):K.getElementById(aa);if(ad){return new o(ad)}}if(ac===K){if(!ah.docEl){K.id=F;ah.docEl=new o(K,true)}return ah.docEl}else{if(ac==t){if(!ah.winEl){t.id=W;ah.winEl=new o(t,true)}return ah.winEl}}ae=ac.nodeType;if(ah.validNodeTypes[ae]||(!ae&&(ac.window===ac))){aa=ac.id;if(Z.hasOwnProperty(aa)){ai=Z[aa];if(ai.skipGarbageCollection||ac===ai.dom||!Ext.isGarbage(ai.dom)){return ai}else{ai.destroy()}}return new o(ac)}if(ac.isElement){return ac}if(ac.isComposite){return ac}if(Ext.isIterable(ac)){return ah.select(ac)}return null},getActiveElement:function(){var Z=K.activeElement;Z=Z||l;if(!Z){Z=l=K.body}return Z},getDocumentHeight:function(){return Math.max(!Ext.isStrict?K.body.scrollHeight:K.documentElement.scrollHeight,this.getViewportHeight())},getDocumentWidth:function(){return Math.max(!Ext.isStrict?K.body.scrollWidth:K.documentElement.scrollWidth,this.getViewportWidth())},getOrientation:function(){if(Ext.supports.OrientationChange){return(t.orientation==0)?"portrait":"landscape"}return(t.innerHeight>t.innerWidth)?"portrait":"landscape"},getViewportHeight:function(){return t.innerHeight},getViewportWidth:function(){return t.innerWidth},getViewSize:function(){return{width:o.getViewportWidth(),height:o.getViewportHeight()}},normalize:function(Z){return w[Z]||(w[Z]=Z.replace(H,N))},parseBox:function(ab){ab=ab||0;var Z=typeof ab,ac,aa;if(Z==="number"){return{top:ab,right:ab,bottom:ab,left:ab}}else{if(Z!=="string"){return ab}}ac=ab.split(" ");aa=ac.length;if(aa===1){ac[1]=ac[2]=ac[3]=ac[0]}else{if(aa===2){ac[2]=ac[0];ac[3]=ac[1]}else{if(aa===3){ac[3]=ac[1]}}}return{top:parseFloat(ac[0])||0,right:parseFloat(ac[1])||0,bottom:parseFloat(ac[2])||0,left:parseFloat(ac[3])||0}},parseStyles:function(aa){var Z={},ab;if(aa){Y.lastIndex=0;while((ab=Y.exec(aa))){Z[ab[1]]=ab[2]||""}}return Z},select:function(Z,ab,aa){return Ext.fly(aa||K).select(Z,ab)},query:function(aa,Z,ab){return Ext.fly(ab||K).query(aa,Z)},unitizeBox:function(ab,Z){var aa=this;ab=aa.parseBox(ab);return aa.addUnits(ab.top,Z)+" "+aa.addUnits(ab.right,Z)+" "+aa.addUnits(ab.bottom,Z)+" "+aa.addUnits(ab.left,Z)},serializeForm:function(ab){var ac=ab.elements||(K.forms[ab]||Ext.getDom(ab)).elements,al=false,ak=encodeURIComponent,af="",ae=ac.length,ag,Z,aj,an,am,ah,ad,ai,aa;for(ah=0;ah<ae;ah++){ag=ac[ah];Z=ag.name;aj=ag.type;an=ag.options;if(!ag.disabled&&Z){if(/select-(one|multiple)/i.test(aj)){ai=an.length;for(ad=0;ad<ai;ad++){aa=an[ad];if(aa.selected){am=aa.hasAttribute?aa.hasAttribute("value"):aa.getAttributeNode("value").specified;af+=Ext.String.format("{0}={1}&",ak(Z),ak(am?aa.value:aa.text))}}}else{if(!(/file|undefined|reset|button/i.test(aj))){if(!(/radio|checkbox/i.test(aj)&&!ag.checked)&&!(aj=="submit"&&al)){af+=ak(Z)+"="+ak(ag.value)+"&";al=/submit/i.test(aj)}}}}}return af.substr(0,af.length-1)}},addCls:function(ag,ae,ai){var ah=this,aj,ac,aa,ab,ad,af,Z;if(!ag){return ah}if(!ah.isSynchronized){ah.synchronize()}ac=ah.dom;aa=ah.hasClassMap;ab=ah.classList;ae=ae?ae+x:"";ai=ai?x+ai:"";if(typeof ag==="string"){ag=ag.split(E)}for(ad=0,af=ag.length;ad<af;ad++){Z=ae+ag[ad]+ai;if(!aa[Z]){aa[Z]=true;ab.push(Z);aj=true}}if(aj){ac.className=ab.join(" ")}return ah},addStyles:function(ag,af){var ab=0,ae=(ag||"").match(v),ad,Z=ae.length,ac,aa=[];if(Z===1){ab=Math.abs(parseFloat(this.getStyle(af[ae[0]]))||0)}else{if(Z){for(ad=0;ad<Z;ad++){ac=ae[ad];aa.push(af[ac])}aa=this.getStyle(aa);for(ad=0;ad<Z;ad++){ac=ae[ad];ab+=parseFloat(aa[af[ac]])||0}}}return ab},addUnits:function(aa,Z){return o.addUnits(aa,Z)},adjustDirect2DDimension:function(ab){var ag=this,aa=ag.dom,ae=ag.getStyle("display"),ad=aa.style.display,ah=aa.style.position,af=ab===e?0:1,Z=aa.currentStyle,ac;if(ae==="inline"){aa.style.display="inline-block"}aa.style.position=ae.match(D)?"absolute":"static";ac=(parseFloat(Z[ab])||parseFloat(Z.msTransformOrigin.split(" ")[af])*2)%1;aa.style.position=ah;if(ae==="inline"){aa.style.display=ad}return ac},append:function(){this.appendChild.apply(this,arguments)},appendChild:function(ab,aa){var ac=this,ae,Z,ad;if(ab.nodeType||ab.dom||typeof ab==="string"){ab=Ext.getDom(ab);ac.dom.appendChild(ab);return !aa?Ext.get(ab):ab}else{if(ab.length){ae=Ext.fly(document.createDocumentFragment());Z=ab.length;for(ad=0;ad<Z;ad++){ae.appendChild(ab[ad],aa)}ac.dom.appendChild(ae.dom);return aa?ae.dom:ae}else{return ac.createChild(ab,null,aa)}}},appendTo:function(Z){Ext.getDom(Z).appendChild(this.dom);return this},applyStyles:function(Z){if(Z){if(typeof Z==="function"){Z=Z.call()}if(typeof Z==="string"){Z=o.parseStyles(Z)}if(typeof Z==="object"){this.setStyle(Z)}}return this},blur:function(){var Z=this,ab=Z.dom;if(ab!==K.body){try{ab.blur()}catch(aa){}return Z}else{return Z.focus(undefined,ab)}},center:function(Z){return this.alignTo(Z||K,"c-c")},child:function(Z,aa){var ab=this,ac=Ext.get(ab).id;return ab.selectNode(Ext.makeIdSelector(ac)+" > "+Z,!!aa)},createChild:function(aa,Z,ab){aa=aa||{tag:"div"};if(Z){return Ext.DomHelper.insertBefore(Z,aa,ab!==true)}else{return Ext.DomHelper.append(this.dom,aa,ab!==true)}},createShim:function(){var Z=K.createElement("iframe"),aa;Z.frameBorder="0";Z.className=Ext.baseCSSPrefix+"shim";Z.src=Ext.SSL_SECURE_URL;Z.setAttribute("role","presentation");aa=Ext.get(this.dom.parentNode.insertBefore(Z,this.dom));return aa},contains:function(Z){if(!Z){return false}var aa=this,ab=Ext.getDom(Z);return(ab===aa.dom)||aa.isAncestor(ab)},destroy:function(){var Z=this,aa=Z.dom;if(!Z.isFly){Z.clearListeners();delete Ext.cache[Z.id];Z.isDestroyed=true}if(aa){if(aa.parentNode){aa.parentNode.removeChild(aa)}aa._extData=Z.dom=null}},detach:function(){var Z=this.dom;if(Z&&Z.parentNode&&Z.tagName!=="BODY"){Z.parentNode.removeChild(Z)}return this},disableTouchContextMenu:function(){this._contextMenuListenerRemover=this.on({MSHoldVisual:function(Z){Z.preventDefault()},destroyable:true,delegated:false})},disableTouchScroll:function(){this.addCls(Q);this.on({touchmove:function(Z){Z.preventDefault()},translate:false})},doAddListener:function(ac,af,ag,ah){var ae=this,Z,aa,ab,ad;if(!ae.blockedEvents[ac]){aa=ae.mixins.observable.doAddListener;ah=ah||{};if(ae.longpressEvents[ac]){ae.disableTouchContextMenu()}if(ae.normalizeEvent){Z=ae.normalizeEvent(ac);if(Z){ac=Z.eventName;ah.beforeFn=Z.normalizeFn}}if(o.useDelegatedEvents===false){ah.delegated=ah.delegated||false}if(ah.translate!==false){ab=ae.additiveEvents[ac];if(ab){ah.type=ac;ac=ab;aa.apply(ae,arguments)}ad=ae.eventMap[ac];if(ad){ah.type=ah.type||ac;ac=ad}}aa.apply(ae,arguments);delete ah.type}return ae},doRemoveListener:function(ac,af,ag,ah){var ae=this,Z,aa,ab,ad;if(!ae.blockedEvents[ac]){aa=ae.mixins.observable.doRemoveListener;ah=ah||{};if(ae.longpressEvents[ac]){ad=this._contextMenuListenerRemover;if(ad){ad.destroy()}}if(ae.normalizeEvent){Z=ae.normalizeEvent(ac);if(Z){ac=Z.eventName}}if(o.useDelegatedEvents===false){ah.delegated=ah.delegated||false}if(ah.translate!==false){ab=ae.additiveEvents[ac];if(ab){ac=ab;aa.apply(ae,arguments)}ac=ae.eventMap[ac]||ac}aa.apply(ae,arguments)}return ae},doReplaceWith:function(Z){var aa=this.dom;aa.parentNode.replaceChild(Ext.getDom(Z),aa)},down:function(Z,aa){return this.selectNode(Z,!!aa)},findParent:function(af,aa,Z){var ac=this,ad=ac.dom,ab=K.documentElement,ae=0;aa=aa||50;if(isNaN(aa)){aa=Number.MAX_VALUE}while(ad&&ad.nodeType===1&&ae<aa&&ad!==ab){if(Ext.fly(ad).is(af)){return Z?Ext.get(ad):ad}ae++;ad=ad.parentNode}return null},findParentNode:function(ac,aa,Z){var ab=Ext.fly(this.dom.parentNode);return ab?ab.findParent(ac,aa,Z):null},first:function(Z,aa){return this.matchNode("nextSibling","firstChild",Z,aa)},focus:function(ac,ab){var Z=this;ab=ab||Z.dom;try{if(Number(ac)){Ext.defer(Z.focus,ac,Z,[null,ab])}else{Ext.GlobalEvents.fireEvent("beforefocus",ab);ab.focus()}}catch(aa){}return Z},getAnchorToXY:function(ac,Z,ab,aa){return ac.getAnchorXY(Z,ab,aa)},getAttribute:function(Z,aa){var ab=this.dom;return aa?(ab.getAttributeNS(aa,Z)||ab.getAttribute(aa+":"+Z)):(ab.getAttribute(Z)||ab[Z]||null)},getBottom:function(Z){return(Z?this.getLocalY():this.getY())+this.getHeight()},getById:function(ab,Z){var aa=K.getElementById(ab)||this.dom.querySelector(Ext.makeIdSelector(ab));return Z?aa:(aa?Ext.get(aa):null)},getBorderPadding:function(){var Z=this.getStyle(B),aa=this.getStyle(d);return{beforeX:(parseFloat(aa[u.l])||0)+(parseFloat(Z[S.l])||0),afterX:(parseFloat(aa[u.r])||0)+(parseFloat(Z[S.r])||0),beforeY:(parseFloat(aa[u.t])||0)+(parseFloat(Z[S.t])||0),afterY:(parseFloat(aa[u.b])||0)+(parseFloat(Z[S.b])||0)}},getBorderWidth:function(Z){return this.addStyles(Z,u)},getData:function(){var Z=this.dom;return(Z._extData||(Z._extData={}))},getFirstChild:function(){return Ext.get(this.dom.firstElementChild)},getHeight:function(ac,aa){var ab=this,ad=ab.isStyle("display","none"),Z,ae;if(ad){return 0}Z=ab.dom.offsetHeight;if(Ext.supports.Direct2DBug){ae=ab.adjustDirect2DDimension(I);if(aa){Z+=ae}else{if(ae>0&&ae<0.5){Z++}}}if(ac){Z-=ab.getBorderWidth("tb")+ab.getPadding("tb")}return(Z<0)?0:Z},getHtml:function(){return this.dom?this.dom.innerHTML:""},getLeft:function(Z){return Z?this.getLocalX():this.getX()},getLocalX:function(){var ab=this,aa,Z=ab.getStyle("left");if(!Z||Z==="auto"){Z=0}else{if(q.test(Z)){Z=parseFloat(Z)}else{Z=ab.getX();aa=ab.dom.offsetParent;if(aa){Z-=Ext.fly(aa).getX()}}}return Z},getLocalXY:function(){var ac=this,ab,aa=ac.getStyle(["left","top"]),Z=aa.left,ad=aa.top;if(!Z||Z==="auto"){Z=0}else{if(q.test(Z)){Z=parseFloat(Z)}else{Z=ac.getX();ab=ac.dom.offsetParent;if(ab){Z-=Ext.fly(ab).getX()}}}if(!ad||ad==="auto"){ad=0}else{if(q.test(ad)){ad=parseFloat(ad)}else{ad=ac.getY();ab=ac.dom.offsetParent;if(ab){ad-=Ext.fly(ab).getY()}}}return[Z,ad]},getLocalY:function(){var aa=this,Z,ab=aa.getStyle("top");if(!ab||ab==="auto"){ab=0}else{if(q.test(ab)){ab=parseFloat(ab)}else{ab=aa.getY();Z=aa.dom.offsetParent;if(Z){ab-=Ext.fly(Z).getY()}}}return ab},getMargin:function(ab){var ac=this,ad={t:"top",l:"left",r:"right",b:"bottom"},aa,ae,Z;if(!ab){Z=[];for(aa in k){Z.push(k[aa])}ae=ac.getStyle(k);if(ae&&typeof ae==="object"){for(aa in k){ae[ad[aa]]=parseFloat(ae[k[aa]])||0}}return ae}else{return ac.addStyles(ab,k)}},getPadding:function(Z){return this.addStyles(Z,S)},getParent:function(){return Ext.get(this.dom.parentNode)},getRight:function(Z){return(Z?this.getLocalX():this.getX())+this.getWidth()},getSize:function(Z){return{width:this.getWidth(Z),height:this.getHeight(Z)}},getStyle:function(al,ag){var ah=this,ac=ah.dom,ao=typeof al!=="string",am=ah.styleHooks,aa=al,ai=aa,af=1,ae,an,ak,aj,ab,Z,ad;if(ao){ak={};aa=ai[0];ad=0;if(!(af=ai.length)){return ak}}if(!ac||ac.documentElement){return ak||""}ae=ac.style;if(ag){Z=ae}else{Z=ac.ownerDocument.defaultView.getComputedStyle(ac,null);if(!Z){ag=true;Z=ae}}do{aj=am[aa];if(!aj){am[aa]=aj={name:o.normalize(aa)}}if(aj.get){ab=aj.get(ac,ah,ag,Z)}else{an=aj.name;ab=Z[an]}if(!ao){return ab}ak[aa]=ab;aa=ai[++ad]}while(ad<af);return ak},getStyleValue:function(Z){return this.dom.style.getPropertyValue(Z)},getTop:function(Z){return Z?this.getLocalY():this.getY()},getValue:function(aa){var Z=this.dom.value;return aa?parseInt(Z,10):Z},getViewSize:function(){var Z=this.dom;if(Z===K||Z===K.body){return{width:o.getViewportWidth(),height:o.getViewportHeight()}}else{return{width:Z.clientWidth,height:Z.clientHeight}}},getVisibilityMode:function(){var Z=this,aa=Z.getData(),ab=aa.visibilityMode;if(ab===undefined){aa.visibilityMode=ab=o.DISPLAY}return ab},getWidth:function(Z,ae){var ac=this,af=ac.dom,ad=ac.isStyle("display","none"),ab,aa,ag;if(ad){return 0}if(Ext.supports.BoundingClientRect){ab=af.getBoundingClientRect();aa=(ac.vertical&&!Ext.supports.RotatedBoundingClientRect)?(ab.bottom-ab.top):(ab.right-ab.left);aa=ae?aa:Math.ceil(aa)}else{aa=af.offsetWidth}if(Ext.supports.Direct2DBug&&!ac.vertical){ag=ac.adjustDirect2DDimension(e);if(ae){aa+=ag}else{if(ag>0&&ag<0.5){aa++}}}if(Z){aa-=ac.getBorderWidth("lr")+ac.getPadding("lr")}return(aa<0)?0:aa},getX:function(){return this.getXY()[0]},getXY:function(){var aa=Math.round,ad=this.dom,Z=0,ae=0,ac;if(ad!==K&&ad!==K.body){try{ac=ad.getBoundingClientRect()}catch(ab){ac={left:0,top:0}}Z=aa(ac.left);ae=aa(ac.top)}return[Z,ae]},getY:function(){return this.getXY()[1]},hasCls:function(Z){if(!this.isSynchronized){this.synchronize()}return this.hasClassMap.hasOwnProperty(Z)},hide:function(){this.setVisible(false);return this},insertAfter:function(Z){Z=Ext.getDom(Z);Z.parentNode.insertBefore(this.dom,Z.nextSibling);return this},insertBefore:function(Z){Z=Ext.getDom(Z);Z.parentNode.insertBefore(this.dom,Z);return this},insertFirst:function(aa,Z){aa=aa||{};if(aa.nodeType||aa.dom||typeof aa==="string"){aa=Ext.getDom(aa);this.dom.insertBefore(aa,this.dom.firstChild);return !Z?Ext.get(aa):aa}else{return this.createChild(aa,this.dom.firstChild,Z)}},insertHtml:function(aa,ab,Z){var ac=Ext.DomHelper.insertHtml(aa,this.dom,ab);return Z?Ext.get(ac):ac},insertSibling:function(aa,ad,ag){var af=this,ah=Ext.DomHelper,ai=(ad||"before").toLowerCase()==="after",ac,Z,ab,ae;if(Ext.isIterable(aa)){ab=aa.length;Z=Ext.fly(document.createDocumentFragment());if(Ext.isArray(aa)){for(ae=0;ae<ab;ae++){ac=Z.appendChild(aa[ae],ag)}}else{for(ae=0;ae<ab;ae++){Z.dom.appendChild(ac=aa[0])}if(ag===false){ac=Ext.get(ac)}}af.dom.parentNode.insertBefore(Z.dom,ai?af.dom.nextSibling:af.dom);return ac}aa=aa||{};if(aa.nodeType||aa.dom){ac=af.dom.parentNode.insertBefore(Ext.getDom(aa),ai?af.dom.nextSibling:af.dom);if(!ag){ac=Ext.get(ac)}}else{if(ai&&!af.dom.nextSibling){ac=ah.append(af.dom.parentNode,aa,!ag)}else{ac=ah[ai?"insertAfter":"insertBefore"](af.dom,aa,!ag)}}return ac},is:function(Z){var ab=this.dom,aa;if(!Z){aa=true}else{if(!ab.tagName){aa=false}else{if(Ext.isFunction(Z)){aa=Z(ab)}else{aa=ab[Ext.supports.matchesSelector](Z)}}}return aa},isAncestor:function(aa){var Z=false,ab=this.dom,ac=Ext.getDom(aa);if(ab&&ac){if(ab.contains){return ab.contains(ac)}else{if(ab.compareDocumentPosition){return !!(ab.compareDocumentPosition(ac)&16)}else{while((ac=ac.parentNode)){Z=ac===ab||Z}}}}return Z},isPainted:(function(){return !Ext.browser.is.IE?function(){var Z=this.dom;return Boolean(Z&&Z.offsetParent)}:function(){var Z=this.dom;return Boolean(Z&&(Z.offsetHeight!==0&&Z.offsetWidth!==0))}})(),isStyle:function(Z,aa){return this.getStyle(Z)===aa},isVisible:function(aa){var ab=this.dom,Z;if(!ab){return false}if(!P){P=new Ext.dom.Fly()}for(Z=ab.ownerDocument.documentElement;ab!==Z;ab=ab.parentNode){if(!ab||ab.nodeType===11||(P.attach(ab)).isStyle(h,U)||P.isStyle(b,M)){return false}if(!aa){break}}return true},last:function(Z,aa){return this.matchNode("previousSibling","lastChild",Z,aa)},matchNode:function(aa,ae,Z,ab){var ac=this.dom,ad;if(!ac){return null}ad=ac[ae];while(ad){if(ad.nodeType===1&&(!Z||Ext.fly(ad,"_matchNode").is(Z))){return !ab?Ext.get(ad):ad}ad=ad[aa]}return null},next:function(Z,aa){return this.matchNode("nextSibling","nextSibling",Z,aa)},parent:function(Z,aa){return this.matchNode("parentNode","parentNode",Z,aa)},position:function(ad,ac,Z,ab){var aa=this;if(!ad&&aa.isStyle(O,s)){aa.setStyle(O,r)}else{if(ad){aa.setStyle(O,ad)}}if(ac){aa.setStyle(m,ac)}if(Z||ab){aa.setXY([Z||false,ab||false])}},prev:function(Z,aa){return this.matchNode("previousSibling","previousSibling",Z,aa)},query:function(ab,aj,ah){var ad=this.dom,af,ag,ai,aa,Z,ae,ac;if(!ad){return null}aj=(aj!==false);ab=ab.split(",");if(!ah){af=[]}for(ae=0,ag=ab.length;ae<ag;ae++){if(typeof ab[ae]==="string"){if(ah){aa=ad.querySelector(ab[ae]);return aj?aa:Ext.get(aa)}Z=ad.querySelectorAll(ab[ae]);for(ac=0,ai=Z.length;ac<ai;ac++){af.push(aj?Z[ac]:Ext.get(Z[ac]))}}}return af},radioCls:function(ac){var ad=this.dom.parentNode.childNodes,aa;ac=Ext.isArray(ac)?ac:[ac];for(var ab=0,Z=ad.length;ab<Z;ab++){aa=ad[ab];if(aa&&aa.nodeType===1){Ext.fly(aa).removeCls(ac)}}return this.addCls(ac)},redraw:function(){var aa=this.dom,Z=aa.style;Z.display="none";aa.offsetHeight;Z.display=""},remove:function(){this.destroy()},removeChild:function(Z){this.dom.removeChild(Ext.getDom(Z));return this},removeCls:function(ag,ae,ai){var ah=this,aj,ac,aa,ab,ad,af,Z;if(!ag){return ah}if(!ah.isSynchronized){ah.synchronize()}if(!ai){ai=""}ac=ah.dom;aa=ah.hasClassMap;ab=ah.classList;ae=ae?ae+x:"";ai=ai?x+ai:"";if(typeof ag==="string"){ag=ag.split(E)}for(ad=0,af=ag.length;ad<af;ad++){Z=ae+ag[ad]+ai;if(aa[Z]){delete aa[Z];Ext.Array.remove(ab,Z);aj=true}}if(aj){ac.className=ab.join(" ")}return ah},repaint:function(){var Z=this;Z.addCls(Ext.baseCSSPrefix+"repaint");setTimeout(function(){if(Z.dom){Ext.fly(Z.dom).removeCls(Ext.baseCSSPrefix+"repaint")}},1);return Z},replace:function(ab,aa){ab=Ext.getDom(ab);var Z=ab.parentNode,ad=ab.id,ac=this.dom;if(aa!==false&&ad&&Ext.cache[ad]){Z.insertBefore(ac,ab);Ext.get(ab).destroy()}else{Z.replaceChild(ac,ab)}return this},replaceCls:function(ab,ah,af,aj){var ai=this,ad,aa,ac,ae,ag,Z;if(!ab&&!ah){return ai}ab=ab||[];ah=ah||[];if(!ai.isSynchronized){ai.synchronize()}if(!aj){aj=""}ad=ai.dom;aa=ai.hasClassMap;ac=ai.classList;af=af?af+x:"";aj=aj?x+aj:"";if(typeof ab==="string"){ab=ab.split(E)}if(typeof ah==="string"){ah=ah.split(E)}for(ae=0,ag=ab.length;ae<ag;ae++){Z=af+ab[ae]+aj;if(aa[Z]){delete aa[Z];Ext.Array.remove(ac,Z)}}for(ae=0,ag=ah.length;ae<ag;ae++){Z=af+ah[ae]+aj;if(!aa[Z]){aa[Z]=true;ac.push(Z)}}ad.className=ac.join(" ");return ai},replaceWith:function(ac){var ad=this,ae=ad.dom,ab=ae.parentNode,Z=Ext.cache,aa;ad.clearListeners();if(ac.nodeType||ac.dom||typeof ac==="string"){ac=Ext.get(ac);aa=ab.insertBefore(ac.dom,ae)}else{aa=Ext.DomHelper.insertBefore(ae,ac)}ab.removeChild(ae);ad.dom=aa;if(!ad.isFly){delete Z[ad.id];Z[ad.id=Ext.id(aa)]=ad}return ad},resolveListenerScope:function(aa){var Z=this.component;return Z?Z.resolveListenerScope(aa):this},select:function(aa,ac){var Z,ab;if(typeof aa==="string"){ab=this.query(aa,!ac)}else{ab=aa;Z=true}return ac?new Ext.CompositeElement(ab,!Z):new Ext.CompositeElementLite(ab,true)},selectNode:function(aa,Z){return this.query(aa,Z,true)},set:function(Z,aa){var ac=this,ae=ac.dom,ab,ad;for(ab in Z){if(Z.hasOwnProperty(ab)){ad=Z[ab];if(ab==="style"){ac.applyStyles(ad)}else{if(ab==="cls"){ae.className=ad}else{if(aa!==false){if(ad===undefined){ae.removeAttribute(ab)}else{ae.setAttribute(ab,ad)}}else{ae[ab]=ad}}}}}return ac},setBottom:function(Z){this.dom.style[G]=o.addUnits(Z);return this},setBorder:function(Z){var ab=this,aa=ab.dom.style;if(Z||Z===0){Z=ab.self.unitizeBox((Z===true)?1:Z);aa.setProperty("border-width",Z,"important")}else{aa.removeProperty("border-top-width");aa.removeProperty("border-right-width");aa.removeProperty("border-bottom-width");aa.removeProperty("border-left-width")}},setCls:function(ab){var ad=this,ae=ad.hasClassMap,aa,ac,Z;if(typeof ab==="string"){ab=ab.split(E)}for(aa=0,ac=ab.length;aa<ac;aa++){Z=ab[aa];if(!ae[Z]){ae[Z]=true}}ad.classList=ab.slice();ad.dom.className=ab.join(" ")},setHeight:function(Z){this.dom.style[I]=o.addUnits(Z);return this},setHtml:function(Z){if(this.dom){this.dom.innerHTML=Z}},setId:function(ac){var ab=this,Z=ab.id,aa=Ext.cache;if(Z){delete aa[Z]}ab.dom.id=ac;ab.id=ac;aa[ac]=ab;return ab},setLeft:function(Z){this.dom.style[C]=o.addUnits(Z);return this},setLocalX:function(Z){var aa=this.dom.style;aa.right="auto";aa.left=(Z===null)?"auto":Z+"px"},setLocalXY:function(Z,ab){var aa=this.dom.style;aa.right="auto";if(Z&&Z.length){ab=Z[1];Z=Z[0]}if(Z===null){aa.left="auto"}else{if(Z!==undefined){aa.left=Z+"px"}}if(ab===null){aa.top="auto"}else{if(ab!==undefined){aa.top=ab+"px"}}},setLocalY:function(Z){this.dom.style.top=(Z===null)?"auto":Z+"px"},setMargin:function(ab){var aa=this,Z=aa.dom.style;if(ab||ab===0){ab=aa.self.unitizeBox((ab===true)?5:ab);Z.setProperty("margin",ab,"important")}else{Z.removeProperty("margin-top");Z.removeProperty("margin-right");Z.removeProperty("margin-bottom");Z.removeProperty("margin-left")}},setMaxHeight:function(Z){this.dom.style[z]=o.addUnits(Z);return this},setMaxWidth:function(Z){this.dom.style[p]=o.addUnits(Z);return this},setMinHeight:function(Z){this.dom.style[c]=o.addUnits(Z);return this},setMinWidth:function(Z){this.dom.style[T]=o.addUnits(Z);return this},setPadding:function(ab){var aa=this,Z=aa.dom.style;if(ab||ab===0){ab=aa.self.unitizeBox((ab===true)?5:ab);Z.setProperty("padding",ab,"important")}else{Z.removeProperty("padding-top");Z.removeProperty("padding-right");Z.removeProperty("padding-bottom");Z.removeProperty("padding-left")}},setRight:function(Z){this.dom.style[X]=o.addUnits(Z);return this},setSize:function(ab,Z){var ac=this,aa=ac.dom.style;if(Ext.isObject(ab)){Z=ab.height;ab=ab.width}aa.width=o.addUnits(ab);aa.height=o.addUnits(Z);return ac},setSizeState:function(ad){var ac=this,ab=["x-sized","x-unsized","x-stretched"],Z=[true,false,null],aa=Z.indexOf(ad),ae;if(aa!==-1){ae=ab[aa];ab.splice(aa,1);ac.addCls(ae)}ac.removeCls(ab);return ac},setStyle:function(ag,ae){var ac=this,af=ac.dom,Z=ac.styleHooks,ab=af.style,aa=ag,ad;if(typeof aa==="string"){ad=Z[aa];if(!ad){Z[aa]=ad={name:o.normalize(aa)}}ae=(ae==null)?"":ae;if(ad.set){ad.set(af,ae,ac)}else{ab[ad.name]=ae}if(ad.afterSet){ad.afterSet(af,ae,ac)}}else{for(aa in ag){if(ag.hasOwnProperty(aa)){ad=Z[aa];if(!ad){Z[aa]=ad={name:o.normalize(aa)}}ae=ag[aa];ae=(ae==null)?"":ae;if(ad.set){ad.set(af,ae,ac)}else{ab[ad.name]=ae}if(ad.afterSet){ad.afterSet(af,ae,ac)}}}}return ac},setText:function(Z){this.dom.textContent=Z},setTop:function(Z){this.dom.style[L]=o.addUnits(Z);return this},setVisibility:function(Z){var aa=this.dom.style;if(Z){aa.removeProperty("visibility")}else{aa.setProperty("visibility","hidden","important")}},setVisibilityMode:function(Z){this.getData().visibilityMode=Z;return this},setVisible:function(ab){var Z=this,aa=Z.getVisibilityMode(),ac=ab?"removeCls":"addCls";switch(aa){case o.DISPLAY:Z.removeCls([A,j]);Z[ac](y);break;case o.VISIBILITY:Z.removeCls([y,j]);Z[ac](A);break;case o.OFFSETS:Z.removeCls([A,y]);Z[ac](j);break}return Z},setWidth:function(Z){this.dom.style[e]=o.addUnits(Z);return this},setX:function(Z){return this.setXY([Z,false])},setXY:function(ab){var aa=this,ac=aa.translatePoints(ab),Z=aa.dom.style,ad;aa.position();Z.right="auto";for(ad in ac){if(!isNaN(ac[ad])){Z[ad]=ac[ad]+"px"}}return aa},setY:function(Z){return this.setXY([false,Z])},show:function(){this.setVisible(true);return this},swapCls:function(aa,af,Z,ad){if(Z===undefined){Z=true}var ac=this,ae=Z?aa:af,ab=Z?af:aa;if(ab){ac.removeCls(ad?ad+"-"+ab:ab)}if(ae){ac.addCls(ad?ad+"-"+ae:ae)}return ac},synchronize:function(){var ae=this,ag=ae.dom,Z={},ac=ag.className,af,ab,ad,aa;if(ac&&ac.length>0){af=ag.className.split(V);for(ab=0,ad=af.length;ab<ad;ab++){aa=af[ab];Z[aa]=true}}else{af=[]}ae.classList=af;ae.hasClassMap=Z;ae.isSynchronized=true;return ae},toggleCls:function(Z,aa){if(typeof aa!=="boolean"){aa=!this.hasCls(Z)}return(aa)?this.addCls(Z):this.removeCls(Z)},toggle:function(){this.setVisible(!this.isVisible());return this},translate:function(){var Z="webkitTransform" in K.createElement("div").style?"webkitTransform":"transform";return function(aa,ac,ab){this.dom.style[Z]="translate3d("+(aa||0)+"px, "+(ac||0)+"px, "+(ab||0)+"px)"}}(),unwrap:function(){var ab=this.dom,Z=ab.parentNode,aa;if(Z){aa=Z.parentNode;aa.insertBefore(ab,Z);aa.removeChild(Z)}else{aa=document.createDocumentFragment();aa.appendChild(ab)}return this},up:function(ab,Z,aa){return this.findParentNode(ab,Z,!aa)},update:function(Z){return this.setHtml(Z)},wrap:function(aa,ab,Z){var ac=this,af=ac.dom,ae=Ext.DomHelper.insertBefore(af,aa||{tag:"div"},true),ad=ae;if(Z){ad=ae.selectNode(Z)}ad.appendChild(af);return ab?ae.dom:ae},deprecated:{"5.0":{methods:{cssTranslate:null,getHTML:"getHtml",getOuterHeight:null,getOuterWidth:null,getPageBox:function(ab){var ae=this,ac=ae.dom,ag=ac.nodeName==="BODY",ah=ag?o.getViewportWidth():ac.offsetWidth,ad=ag?o.getViewportHeight():ac.offsetHeight,aj=ae.getXY(),ai=aj[1],Z=aj[0]+ah,af=aj[1]+ad,aa=aj[0];if(ab){return new Ext.util.Region(ai,Z,af,aa)}else{return{left:aa,top:ai,width:ah,height:ad,right:Z,bottom:af}}},getScrollParent:null,isDescendent:null,isTransparent:function(aa){var Z=this.getStyle(aa);return Z?a.test(Z):false},purgeAllListeners:"clearListeners",removeAllListeners:"clearListeners",setHTML:"setHtml",setTopLeft:null}}}}},1,0,0,0,0,[["positionable",Ext.util.Positionable],["observable",Ext.mixin.Observable]],[Ext.dom,"Element",Ext,"Element"],function(r){var b=document,n=r.prototype,y=Ext.supports,E="pointerdown",e="pointermove",c="pointerup",d="pointercancel",j="MSPointerDown",o="MSPointerMove",A="MSPointerUp",a="MSPointerCancel",u="mousedown",z="mousemove",v="mouseup",F="mouseover",D="mouseout",q="mouseenter",g="mouseleave",x="touchstart",m="touchmove",B="touchend",h="touchcancel",s="click",k="dblclick",w="tap",C="doubletap",l=n.eventMap={},t=n.additiveEvents={},p=Ext.id;Ext.id=function(I,H){var G=Ext.getDom(I,true),J,K;if(!G){K=p(I,H)}else{if(!(K=G.id)){K=p(null,H||r.prototype.identifiablePrefix);if(Ext.isSandboxed){J=Ext.sandboxPrefix||(Ext.sandboxPrefix=Ext.sandboxName.toLowerCase()+"-");K=J+K}G.id=K}}return K};if(y.PointerEvents){l[u]=E;l[z]=e;l[v]=c;l[x]=E;l[m]=e;l[B]=c;l[h]=d;l[s]=w;l[k]=C;l[F]="pointerover";l[D]="pointerout";l[q]="pointerenter";l[g]="pointerleave"}else{if(y.MSPointerEvents){l[E]=j;l[e]=o;l[c]=A;l[d]=a;l[u]=j;l[z]=o;l[v]=A;l[x]=j;l[m]=o;l[B]=A;l[h]=a;l[s]=w;l[k]=C;l[F]="MSPointerOver";l[D]="MSPointerOut"}else{if(y.TouchEvents){l[E]=x;l[e]=m;l[c]=B;l[d]=h;l[u]=x;l[z]=m;l[v]=B;l[s]=w;l[k]=C;if(Ext.isWebKit&&Ext.os.is.Desktop){l[x]=u;l[m]=z;l[B]=v;l[h]=v;t[u]=u;t[z]=z;t[v]=v;t[x]=x;t[m]=m;t[B]=B;t[h]=h;t[E]=u;t[e]=z;t[c]=v;t[d]=v}}else{l[E]=u;l[e]=z;l[c]=v;l[d]=v;l[x]=u;l[m]=z;l[B]=v;l[h]=v}}}n.getTrueXY=n.getXY;Ext.select=r.select;Ext.query=r.query;Ext.apply(Ext,{get:function(G){return r.get(G)},getDom:function(G){if(!G||!b){return null}return G.dom||(typeof G==="string"?Ext.getElementById(G):G)},getBody:function(){if(!Ext._bodyEl){if(!b.body){throw new Error("[Ext.getBody] document.body does not yet exist")}Ext._bodyEl=Ext.get(b.body)}return Ext._bodyEl},getHead:function(){if(!Ext._headEl){Ext._headEl=Ext.get(b.head||b.getElementsByTagName("head")[0])}return Ext._headEl},getDoc:function(){if(!Ext._docEl){Ext._docEl=Ext.get(b)}return Ext._docEl},getWin:function(){if(!Ext._winEl){Ext._winEl=Ext.get(window)}return Ext._winEl},removeNode:function(I){var J=I&&I.id,H=Ext.cache[J],G;if(H){H.destroy()}else{if(I&&I.tagName.toUpperCase()!=="BODY"){G=I.parentNode;if(G){G.removeChild(I)}}}}});Ext.isGarbage=function(G){return G&&G.nodeType===1&&(!G.parentNode||(!G.offsetParent&&!(Ext.isIE8?b.all[G.id]:b.getElementById(G.id))&&!(Ext.detachedBodyEl&&Ext.detachedBodyEl.isAncestor(G))))}}));(Ext.cmd.derive("Ext.dom.Fly",Ext.dom.Element,{alternateClassName:"Ext.dom.Element.Fly",isFly:true,constructor:function(a){this.dom=a;this.el=this},attach:function(c){if(!c){return this.detach()}var a=this,b=Ext.cache[c.id];a.dom=c;a.isSynchronized=false;if(b){b.isSynchronized=false}return this},detach:function(){this.dom=this.classList=this.hasClassMap=null},addListener:null,removeListener:null},1,0,0,0,0,0,[Ext.dom,"Fly",Ext.dom.Element,"Fly"],function(a){var b={};a.cache=b;Ext.fly=function(h,d){var g=null,e=Ext.fly,c;d=d||(e.caller&&e.caller.$name)||"_global";h=Ext.getDom(h);if(h){c=h.nodeType;if(Ext.Element.validNodeTypes[c]||(!c&&(h.window===h))){g=Ext.cache[h.id];if(!g||g.dom!==h){g=b[d]||(b[d]=new a());g.dom=h;g.isSynchronized=false}}}return g}}));(Ext.cmd.derive("Ext.dom.CompositeElementLite",Ext.Base,{alternateClassName:["Ext.CompositeElementLite"],isComposite:true,isLite:true,statics:{importElementMethods:function(){var a=Ext.dom.Element,b=this.prototype;Ext.Object.each(a.prototype,function(c,d){if(typeof d==="function"&&!b[c]){b[c]=function(){return this.invoke(c,arguments)}}})}},constructor:function(b,a){if(a){this.elements=b||[]}else{this.elements=[];this.add(b)}},getElement:function(b){var a=this._fly||(this._fly=new Ext.dom.Fly());return a.attach(b)},transformElement:function(a){return Ext.getDom(a)},getCount:function(){return this.elements.length},add:function(c,a){var e=this.elements,b,d;if(!c){return this}if(typeof c=="string"){c=Ext.fly(a||document).query(c)}else{if(c.isComposite){c=c.elements}else{if(!Ext.isIterable(c)){c=[c]}}}for(b=0,d=c.length;b<d;++b){e.push(this.transformElement(c[b]))}return this},invoke:function(e,b){var h=this,j=h.elements,g=j.length,a,d,c;if(c!==0){a=(h.isLite?Ext.dom.Fly:Ext.dom.Element).prototype;for(c=0;c<g;c++){d=j[c];if(d){a[e].apply(h.getElement(d),b)}}}return h},item:function(b){var c=this.elements[b],a=null;if(c){a=this.getElement(c)}return a},slice:function(){return this.elements.slice.apply(this.elements,arguments)},each:function(g,d){var h=this,c=h.elements,a=c.length,b,j;for(b=0;b<a;b++){j=c[b];if(j){j=this.getElement(j);if(g.call(d||j,j,h,b)===false){break}}}return h},fill:function(a){var b=this;b.elements=[];b.add(a);return b},insert:function(b,a){Ext.Array.insert(this.elements,b,a)},filter:function(b){var h=this,c=h.elements,g=c.length,d=[],e=0,j=typeof b=="function",k,a;for(;e<g;e++){a=c[e];k=false;if(a){a=h.getElement(a);if(j){k=b.call(a,a,h,e)!==false}else{k=a.is(b)}if(k){d.push(h.transformElement(a))}}}h.elements=d;return h},indexOf:function(a){return Ext.Array.indexOf(this.elements,this.transformElement(a))},replaceElement:function(e,c,a){var b=!isNaN(e)?e:this.indexOf(e),g;if(b>-1){c=Ext.getDom(c);if(a){g=this.elements[b];g.parentNode.insertBefore(c,g);Ext.removeNode(g)}Ext.Array.splice(this.elements,b,1,c)}return this},clear:function(d){var c=this,b=c.elements,a=b.length-1;if(d){for(;a>=0;a--){Ext.removeNode(b[a])}}this.elements=[]},addElements:function(d,b){if(!d){return this}if(typeof d==="string"){d=Ext.dom.Element.selectorFunction(d,b)}var c=this.elements,a=d.length,g;for(g=0;g<a;g++){c.push(Ext.get(d[g]))}return this},first:function(){return this.item(0)},last:function(){return this.item(this.getCount()-1)},contains:function(a){return this.indexOf(a)!=-1},removeElement:function(e,j){e=[].concat(e);var d=this,g=d.elements,c=e.length,h,b,a;for(a=0;a<c;a++){h=e[a];if((b=(g[h]||g[h=d.indexOf(h)]))){if(j){if(b.dom){b.destroy()}else{Ext.removeNode(b)}}Ext.Array.erase(g,h,1)}}return d},destroy:function(){return this.invoke("destroy",arguments)}},1,0,0,0,0,0,[Ext.dom,"CompositeElementLite",Ext,"CompositeElementLite"],function(b){var a=b.prototype;b.importElementMethods();a.on=a.addListener}));(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,operator:null,root:null},scope:null,$configStrict:false,statics:{createFilterFn:function(a){if(!a){return Ext.returnTrue}return function(g){var b=a.isCollection?a.items:a,h=b.length,c=true,d,e;for(d=0;c&&d<h;d++){e=b[d];if(!e.getDisabled()){c=e.filter(g)}}return c}},isInvalid:function(a){var b=a.value;if(!a.filterFn){if(!a.property){return"A Filter requires either a property or a filterFn to be set"}if(!(b||b===0||b===false||(b===""&&a.exatchMatch))){if(!a.operator){return"A Filter requires either a property and value, or a filterFn to be set"}}}return false}},constructor:function(a){this.initConfig(a)},filter:function(b){var a=this,c=a._filterFn||a.getFilterFn();return c.call(a.scope||a,b)},getId:function(){var a=this._id;if(!a){a=this.getProperty();if(!a){a=Ext.id(null,"ext-filter-")}this._id=a}return a},getFilterFn:function(){var b=this,c=b._filterFn,a;if(!c){a=b.getOperator();if(a){c=b.operatorFns[a]}else{c=b.createRegexFilter()}b._filterFn=c}return c},createRegexFilter:function(){var b=this,e=!!b.getAnyMatch(),a=!!b.getExactMatch(),c=b.getValue(),d=Ext.String.createRegex(c,!e,!e&&a,!b.getCaseSensitive());return function(g){var h=b.getPropertyValue(g);return d?d.test(h):(h==null)}},getPropertyValue:function(b){var a=this._root,c=(a==null)?b:b[a];return c[this._property]},getState:function(){var c=this.getInitialConfig(),a={},b;for(b in c){if(c.hasOwnProperty(b)){a[b]=c[b]}}delete a.root;a.value=this.getValue();return a},getScope:function(){return this.scope},serialize:function(){var a=this.getState();delete a.id;return a}},1,0,0,0,0,0,[Ext.util,"Filter"],function(){var a=this.prototype,e=(a.operatorFns={"<":function(h){var g=this._value;return Ext.coerce(this.getPropertyValue(h),g)<g},"<=":function(h){var g=this._value;return Ext.coerce(this.getPropertyValue(h),g)<=g},"=":function(h){var g=this._value;return Ext.coerce(this.getPropertyValue(h),g)==g},">=":function(h){var g=this._value;return Ext.coerce(this.getPropertyValue(h),g)>=g},">":function(h){var g=this._value;return Ext.coerce(this.getPropertyValue(h),g)>g},"!=":function(h){var g=this._value;return Ext.coerce(this.getPropertyValue(h),g)!=g},"in":function(h){var g=this._value;return Ext.Array.contains(g,Ext.coerce(this.getPropertyValue(h),g))},like:function(h){var g=this._value;return g&&Ext.coerce(this.getPropertyValue(h),g).toLowerCase().indexOf(g.toLowerCase())>-1}}),d=function(){this._filterFn=null},c=["updateOperator","updateValue"],b;e["=="]=e["="];e.gt=e[">"];e.ge=e[">="];e.lt=e["<"];e.le=e["<="];e.eq=e["="];e.ne=e["!="];for(b=c.length;b-->0;){a[c[b]]=d}}));Ext.util=Ext.util||{};Ext.util.DelayedTask=function(e,d,b,h){var g=this,a,c=function(){var j=Ext.GlobalEvents;clearInterval(g.id);g.id=null;e.apply(d,b||[]);if(j.hasListeners.idle){j.fireEvent("idle")}};h=typeof h==="boolean"?h:true;g.id=null;g.delay=function(k,m,l,j){if(h){g.cancel()}if(typeof k==="number"){a=k}e=m||e;d=l||d;b=j||b;if(!g.id){g.id=setInterval(c,a)}};g.cancel=function(){if(g.id){clearInterval(g.id);g.id=null}}};(Ext.cmd.derive("Ext.util.Event",Ext.Base,function(){var d=Array.prototype.slice,a=Ext.Array.insert,c=Ext.Array.toArray,b={};return{isEvent:true,suspended:0,noOptions:{},constructor:function(g,e){this.name=e;this.observable=g;this.listeners=[]},addListener:function(q,s,u,j){var o=this,p,k,r,e,t,n,h,m,l,g;if(typeof q!=="string"){s=s||o.observable}if(!o.isListening(q,s)){k=o.createListener(q,s,u,j);if(o.firing){o.listeners=o.listeners.slice(0)}p=o.listeners;m=h=p.length;r=u&&u.priority;t=o._highestNegativePriorityIndex;n=(t!==undefined);if(r){e=(r<0);if(!e||n){for(l=(e?t:0);l<h;l++){g=p[l].o?p[l].o.priority||0:0;if(g<r){m=l;break}}}else{o._highestNegativePriorityIndex=m}}else{if(n){m=t}}if(!e&&m<=t){o._highestNegativePriorityIndex++}if(m===h){o.listeners[h]=k}else{a(o.listeners,m,[k])}}return k},createListener:function(m,n,e,g){var k=this,j=n==="this"||n==="controller",h={fn:m,scope:n,ev:k,caller:g,preventClimb:j,defaultScope:j?n:undefined,lateBound:(typeof m==="string"&&(!n||j))},p=m,l=true;if(e){h.o=e;if(e.single){p=k.createSingle(p,h,e,n);l=false}if(e.target){p=k.createTargeted(p,h,e,n,l);l=false}if(e.delay){p=k.createDelayed(p,h,e,n,l);l=false}if(e.buffer){p=k.createBuffered(p,h,e,n,l);l=false}}h.fireFn=p;h.allowLookup=l;return h},findListener:function(l,k){var j=this.listeners,g=j.length,m,h,e;while(g--){m=j[g];if(m){h=m.scope;e=(m.lateBound&&!m.preventClimb)?undefined:(k||this.observable);if(m.fn==l&&h==e){return g}}}return -1},isListening:function(g,e){return this.findListener(g,e)!==-1},removeListener:function(j,h){var l=this,g,n,m,e;if(j.fireFn){g=Ext.Array.indexOf(listeners,j)}else{g=l.findListener(j,h)}if(g!=-1){n=l.listeners[g];m=l._highestNegativePriorityIndex;if(l.firing){l.listeners=l.listeners.slice(0)}if(n.task){n.task.cancel();delete n.task}e=n.tasks&&n.tasks.length;if(e){while(e--){n.tasks[e].cancel()}delete n.tasks}l.listeners.splice(g,1);if(m){if(g<m){l._highestNegativePriorityIndex--}else{if(g===m&&g===l.listeners.length){delete l._highestNegativePriorityIndex}}}return true}return false},clearListeners:function(){var g=this.listeners,e=g.length;while(e--){this.removeListener(g[e].fn,g[e].scope)}},suspend:function(){++this.suspended},resume:function(){if(this.suspended){--this.suspended}},isSuspended:function(){return this.suspended>0},fire:function(){var l=this,j=l.listeners,k=j.length,n,h,g,m,e;if(!l.suspended&&k>0){l.firing=true;g=arguments.length?d.call(arguments,0):[];e=g.length;for(h=0;h<k;h++){m=j[h];if(m.o){g[e]=m.o}if(m){n=l.getFireInfo(m);if(n.fn.apply(n.scope,g)===false){return(l.firing=false)}}}}l.firing=false;return true},getFireInfo:function(k,e){var l=this.observable,j=e?k.fn:k.fireFn,h=k.scope,g=k.caller;if((e||k.allowLookup)&&k.lateBound){h=(g||l).resolveListenerScope(k.defaultScope);j=h[j]}else{h=h||l}b.fn=j;b.scope=h;return b},createTargeted:function(h,j,k,g,e){return function(){if(k.target===arguments[0]){var l;if(e){l=j.ev.getFireInfo(j,true);h=l.fn;g=l.scope}h.apply(g,arguments)}}},createBuffered:function(h,j,k,g,e){j.task=new Ext.util.DelayedTask();return function(){var l;if(e){l=j.ev.getFireInfo(j,true);h=l.fn;g=l.scope}j.task.delay(k.buffer,h,g,c(arguments))}},createDelayed:function(h,j,k,g,e){return function(){var l=new Ext.util.DelayedTask(),m;if(e){m=j.ev.getFireInfo(j,true);h=m.fn;g=m.scope}if(!j.tasks){j.tasks=[]}j.tasks.push(l);l.delay(k.delay||10,h,g,c(arguments))}},createSingle:function(g,h,j,e){return function(){var k=h.ev,l=k.getFireInfo(h,true);if(k.removeListener(h.fn,e)&&k.observable){k.observable.hasListeners[k.name]--}l.fn.apply(l.scope,arguments)}}}},1,0,0,0,0,0,[Ext.util,"Event"],0));(Ext.cmd.derive("Ext.util.Observable",Ext.Base,function(a){var d=Ext.emptyFn,c=[],e=Array.prototype,g=e.slice,h=Ext.$eventNameMap,b=function(j){if(j instanceof b){return j}this.observable=j;if(arguments[1].isObservable){this.managedListeners=true}this.args=g.call(arguments,1)};b.prototype.destroy=function(){var j=this.observable;j[this.managedListeners?"mun":"un"].apply(j,this.args)};return{mixinId:"observable",statics:{releaseCapture:function(j){j.fireEventArgs=this.prototype.fireEventArgs},capture:function(m,k,j){var l=function(n,o){return k.apply(j,[n].concat(o))};this.captureArgs(m,l,j)},captureArgs:function(l,k,j){l.fireEventArgs=Ext.Function.createInterceptor(l.fireEventArgs,k,j)},observe:function(j,k){if(j){if(!j.isObservable){Ext.applyIf(j,new this());this.captureArgs(j.prototype,j.fireEventArgs,j)}if(Ext.isObject(k)){j.on(k)}}return j},prepareClass:function(m,k,p){var o=m.listeners=[],q=p?p.listeners:m.prototype.listeners,l,k;if(k){o.push(k.listeners)}else{o.push(m.superclass.self.listeners)}if(q){o.push(q)}if(!m.HasListeners){var n=function(){},j=m.superclass.HasListeners||(k&&k.HasListeners)||a.HasListeners;m.prototype.HasListeners=m.HasListeners=n;n.prototype=m.hasListeners=new j()}}},isObservable:true,isUtilObservable:true,eventsSuspended:0,constructor:function(l){var m=this,k=m.self,j;if(l){Ext.apply(m,l)}m.hasListeners=new m.HasListeners();m.events=m.events||{};j=k.listeners;if(j&&!m._addDeclaredListeners(j)){k.listeners=null}if(m.listeners){m.on(m.listeners);m.listeners=null}if(m.bubbleEvents){m.enableBubble(m.bubbleEvents)}},onClassExtended:function(j){if(!j.HasListeners){a.prepareClass(j)}},eventOptionsRe:/^(?:scope|delay|buffer|onFrame|single|stopEvent|preventDefault|stopPropagation|normalized|args|delegate|element|destroyable|vertical|horizontal|priority)$/,_addDeclaredListeners:function(j){var k=this;if(j instanceof Array){Ext.each(j,k._addDeclaredListeners,k)}else{k._addedDeclaredListeners=true;k.addListener(j)}return k._addedDeclaredListeners},addManagedListener:function(q,m,o,r,s,l){var n=this,p=n.managedListeners=n.managedListeners||[],k,j;if(typeof m!=="string"){j=arguments.length>4?s:m;s=m;for(m in s){if(s.hasOwnProperty(m)){k=s[m];if(!n.eventOptionsRe.test(m)){n.addManagedListener(q,m,k.fn||k,k.scope||s.scope||r,k.fn?k:j,true)}}}if(s&&s.destroyable){return new b(n,q,s)}}else{if(o!==d){p.push({item:q,ename:m,fn:o,scope:r,options:s});if(q.isUtilObservable){q.on(m,o,r,s,n)}else{q.on(m,o,r,s)}if(!l&&s&&s.destroyable){return new b(n,q,m,o,r)}}}},removeManagedListener:function(q,l,o,r){var n=this,s,k,p,j,m;if(typeof l!=="string"){s=l;for(l in s){if(s.hasOwnProperty(l)){k=s[l];if(!n.eventOptionsRe.test(l)){n.removeManagedListener(q,l,k.fn||k,k.scope||s.scope||r)}}}}else{p=n.managedListeners?n.managedListeners.slice():[];for(m=0,j=p.length;m<j;m++){n.removeManagedListenerItem(false,p[m],q,l,o,r)}}},fireEvent:function(j){return this.fireEventArgs(j,g.call(arguments,1))},resolveListenerScope:function(j){if(j==="this"){j=null}return j||this},fireEventArgs:function(j,l){j=h[j]||(h[j]=j.toLowerCase());var o=this,m=o.events,n=m&&m[j],k=true;if(o.hasListeners[j]){k=o.doFireEvent(j,l||c,n?n.bubble:false)}return k},doFireEvent:function(l,n,k){var p=this,j,o,m=true;do{if(p.eventsSuspended){if((j=p.eventQueue)){j.push([l,n])}return m}else{o=p.events&&p.events[l];if(o&&o!==true){if((m=o.fire.apply(o,n))===false){break}}}}while(k&&(p=p.getBubbleParent()));return m},getBubbleParent:function(){var k=this,j=k.getBubbleTarget&&k.getBubbleTarget();if(j&&j.isObservable){return j}return null},addListener:function(m,o,q,r,k){var n=this,l,j,p=0;if(typeof m!=="string"){r=m;for(m in r){l=r[m];if(!n.eventOptionsRe.test(m)){n.addListener(m,l.fn||l,l.scope||r.scope,l.fn?l:r,k)}}if(r&&r.destroyable){return new b(n,r)}}else{m=h[m]||(h[m]=m.toLowerCase());j=(n.events||(n.events={}))[m];if(j&&j.isEvent){p=j.listeners.length}else{n.events[m]=j=new Ext.util.Event(n,m)}if(typeof o==="string"&&q&&q!=="this"&&q!=="controller"){o=n.resolveMethod(o,q)}if(o!==d){j.addListener(o,q,r,k);if(j.listeners.length!==p){n.hasListeners._incr_(m)}if(r&&r.destroyable){return new b(n,m,o,q,r)}}}},removeListener:function(m,o,n){var q=this,l=q.events,k,p,j;if(typeof m!=="string"){j=m;for(m in j){if(j.hasOwnProperty(m)){k=j[m];if(!q.eventOptionsRe.test(m)){q.removeListener(m,k.fn||k,k.scope||j.scope)}}}}else{m=h[m]||(h[m]=m.toLowerCase());p=l&&l[m];if(p&&p.isEvent){if(typeof o==="string"&&n&&n!=="this"&&n!=="controller"){o=q.resolveMethod(o,n)}if(p.removeListener(o,n)){q.hasListeners._decr_(m)}}}},clearListeners:function(){var n=this,l=n.events,j=n.hasListeners,m,k;if(l){for(k in l){if(l.hasOwnProperty(k)){m=l[k];if(m.isEvent){delete j[k];m.clearListeners()}}}}n.clearManagedListeners()},clearManagedListeners:function(){var m=this,k=m.managedListeners||[],l=0,j=k.length;for(;l<j;l++){m.removeManagedListenerItem(true,k[l])}m.managedListeners=[]},removeManagedListenerItem:function(k,j,o,l,n,m){if(k||(j.item===o&&j.ename===l&&(!n||j.fn===n)&&(!m||j.scope===m))){j.item.un(j.ename,j.fn,j.scope);if(!k){Ext.Array.remove(this.managedListeners,j)}}},resolveMethod:function(k,j){return j[k]},hasListener:function(j){j=h[j]||(h[j]=j.toLowerCase());return !!this.hasListeners[j]},isSuspended:function(l){var k=this.eventsSuspended>0,j=this.events;if(!k&&l&&j){l=j[l];if(l&&l.isEvent){return l.isSuspended()}}return k},suspendEvents:function(j){++this.eventsSuspended;if(j&&!this.eventQueue){this.eventQueue=[]}},suspendEvent:function(){var o=this,m=o.events||(o.events={}),j=arguments.length,l,n,k;for(l=0;l<j;l++){k=arguments[l];k=h[k]||(h[k]=k.toLowerCase());n=m[k];if(!n||!n.isEvent){m[k]=n=new Ext.util.Event(o,k)}n.suspend()}},resumeEvent:function(){var l=this.events||0,j=l&&arguments.length,k,m;for(k=0;k<j;k++){m=l[arguments[k]];if(m&&m.resume){m.resume()}}},resumeEvents:function(j){var k=this,n=k.eventQueue,m,l;if(k.eventsSuspended&&!--k.eventsSuspended){delete k.eventQueue;if(!j&&n){m=n.length;for(l=0;l<m;l++){k.fireEventArgs.apply(k,n[l])}}}},relayEvents:function(k,m,p){var o=this,j=m.length,l=0,n,q={};for(;l<j;l++){n=m[l];q[n]=o.createRelayer(p?p+n:n)}o.mon(k,q,null,null,undefined);return new b(o,k,q)},createRelayer:function(j,k){var l=this;return function(){return l.fireEventArgs.call(l,j,k?g.apply(arguments,k):arguments)}},enableBubble:function(q){if(q){var o=this,p=(typeof q=="string")?arguments:q,l=o.events||(o.events={}),n=l&&p.length,k,m,j;for(j=0;j<n;++j){k=p[j];k=h[k]||(h[k]=k.toLowerCase());m=l[k];if(!m||!m.isEvent){l[k]=m=new Ext.util.Event(o,k)}o.hasListeners._incr_(k);m.bubble=true}}},deprecated:{"5.0":{methods:{addEvents:null}}}}},1,0,0,0,0,0,[Ext.util,"Observable"],function(){var a=this,d=a.prototype,b=function(){},e=function(g){if(!g.HasListeners){var h=g.prototype;a.prepareClass(g,this);g.onExtended(function(j,k){a.prepareClass(j,null,k)});if(h.onClassMixedIn){Ext.override(g,{onClassMixedIn:function(j){e.call(this,j);this.callParent(arguments)}})}else{h.onClassMixedIn=function(j){e.call(this,j)}}}};b.prototype={_decr_:function(g){if(!--this[g]){delete this[g]}},_incr_:function(g){if(this.hasOwnProperty(g)){++this[g]}else{this[g]=1}}};d.HasListeners=a.HasListeners=b;a.createAlias({on:"addListener",un:"removeListener",mon:"addManagedListener",mun:"removeManagedListener"});a.observeClass=a.observe;function c(n){var m=(this.methodEvents=this.methodEvents||{})[n],j,h,k,l=this,g;if(!m){this.methodEvents[n]=m={};m.originalFn=this[n];m.methodName=n;m.before=[];m.after=[];g=function(q,p,o){if((h=q.apply(p||l,o))!==undefined){if(typeof h=="object"){if(h.returnValue!==undefined){j=h.returnValue}else{j=h}k=!!h.cancel}else{if(h===false){k=true}else{j=h}}}};this[n]=function(){var q=Array.prototype.slice.call(arguments,0),p,r,o;j=h=undefined;k=false;for(r=0,o=m.before.length;r<o;r++){p=m.before[r];g(p.fn,p.scope,q);if(k){return j}}if((h=m.originalFn.apply(l,q))!==undefined){j=h}for(r=0,o=m.after.length;r<o;r++){p=m.after[r];g(p.fn,p.scope,q);if(k){return j}}return j}}return m}Ext.apply(d,{onClassMixedIn:e,beforeMethod:function(j,h,g){c.call(this,j).before.push({fn:h,scope:g})},afterMethod:function(j,h,g){c.call(this,j).after.push({fn:h,scope:g})},removeMethodListener:function(m,k,j){var l=this.getMethodEvent(m),h,g;for(h=0,g=l.before.length;h<g;h++){if(l.before[h].fn==k&&l.before[h].scope==j){Ext.Array.erase(l.before,h,1);return}}for(h=0,g=l.after.length;h<g;h++){if(l.after[h].fn==k&&l.after[h].scope==j){Ext.Array.erase(l.after,h,1);return}}},toggleEventLogging:function(g){Ext.util.Observable[g?"capture":"releaseCapture"](this,function(h){if(Ext.isDefined(Ext.global.console)){Ext.global.console.log(h,arguments)}})}})}));(Ext.cmd.derive("Ext.util.AbstractMixedCollection",Ext.Base,{isMixedCollection:true,generation:0,indexGeneration:0,constructor:function(b,a){var c=this;if(arguments.length===1&&Ext.isObject(b)){c.initialConfig=b;Ext.apply(c,b)}else{c.allowFunctions=b===true;if(a){c.getKey=a}c.initialConfig={allowFunctions:c.allowFunctions,getKey:c.getKey}}c.items=[];c.map={};c.keys=[];c.indexMap={};c.length=0;c.mixins.observable.constructor.call(c)},allowFunctions:false,add:function(c,d){var a=this.length,b;if(arguments.length===1){b=this.insert(a,c)}else{b=this.insert(a,c,d)}return b},getKey:function(a){return a.id},replace:function(c,e){var d=this,a,b;if(arguments.length==1){e=arguments[0];c=d.getKey(e)}a=d.map[c];if(typeof c=="undefined"||c===null||typeof a=="undefined"){return d.add(c,e)}d.generation++;b=d.indexOfKey(c);d.items[b]=e;d.map[c]=e;if(d.hasListeners.replace){d.fireEvent("replace",c,a,e)}return e},updateKey:function(g,h){var d=this,e=d.map,a=d.indexOfKey(g),c=d.indexMap,b;if(a>-1){b=e[g];delete e[g];delete c[g];e[h]=b;c[h]=a;d.keys[a]=h;d.indexGeneration=++d.generation}},addAll:function(c){var b=this,a;if(arguments.length>1||Ext.isArray(c)){b.insert(b.length,arguments.length>1?arguments:c)}else{for(a in c){if(c.hasOwnProperty(a)){if(b.allowFunctions||typeof c[a]!="function"){b.add(a,c[a])}}}}},each:function(e,d){var b=Ext.Array.push([],this.items),c=0,a=b.length,g;for(;c<a;c++){g=b[c];if(e.call(d||g,g,c,a)===false){break}}},eachKey:function(e,d){var g=this.keys,b=this.items,c=0,a=g.length;for(;c<a;c++){e.call(d||window,g[c],b[c],c,a)}},findBy:function(e,d){var g=this.keys,b=this.items,c=0,a=b.length;for(;c<a;c++){if(e.call(d||window,b[c],g[c])){return b[c]}}return null},find:function(){if(Ext.isDefined(Ext.global.console)){Ext.global.console.warn("Ext.util.MixedCollection: find has been deprecated. Use findBy instead.")}return this.findBy.apply(this,arguments)},insert:function(b,c,d){var a;if(Ext.isIterable(c)){a=this.doInsert(b,c,d)}else{if(arguments.length>2){a=this.doInsert(b,[c],[d])}else{a=this.doInsert(b,[c])}a=a[0]}return a},doInsert:function(j,o,n){var l=this,b,c,g,k=o.length,a=k,e=l.hasListeners.add,d,h={},m,q,p;if(n!=null){l.useLinearSearch=true}else{n=o;o=new Array(k);for(g=0;g<k;g++){o[g]=this.getKey(n[g])}}l.suspendEvents();for(g=0;g<k;g++){b=o[g];c=l.indexOfKey(b);if(c!==-1){if(c<j){j--}l.removeAt(c)}if(b!=null){if(h[b]!=null){m=true;a--}h[b]=g}}l.resumeEvents();if(m){q=o;p=n;o=new Array(a);n=new Array(a);g=0;for(b in h){o[g]=q[h[b]];n[g]=p[h[b]];g++}k=a}d=j===l.length&&l.indexGeneration===l.generation;Ext.Array.insert(l.items,j,n);Ext.Array.insert(l.keys,j,o);l.length+=k;l.generation++;if(d){l.indexGeneration=l.generation}for(g=0;g<k;g++,j++){b=o[g];if(b!=null){l.map[b]=n[g];if(d){l.indexMap[b]=j}}if(e){l.fireEvent("add",j,n[g],b)}}return n},remove:function(d){var c=this,b,a;if(!c.useLinearSearch&&(b=c.getKey(d))){a=c.indexOfKey(b)}else{a=Ext.Array.indexOf(c.items,d)}return(a===-1)?false:c.removeAt(a)},removeAll:function(a){var c=this,b;if(a||c.hasListeners.remove){if(a){for(b=a.length-1;b>=0;--b){c.remove(a[b])}}else{while(c.length){c.removeAt(0)}}}else{c.length=c.items.length=c.keys.length=0;c.map={};c.indexMap={};c.generation++;c.indexGeneration=c.generation}},removeAt:function(a){var c=this,d,b;if(a<c.length&&a>=0){c.length--;d=c.items[a];Ext.Array.erase(c.items,a,1);b=c.keys[a];if(typeof b!="undefined"){delete c.map[b]}Ext.Array.erase(c.keys,a,1);if(c.hasListeners.remove){c.fireEvent("remove",d,b)}c.generation++;return d}return false},removeRange:function(h,a){var j=this,b,k,g,e,c,d;if(h<j.length&&h>=0){if(!a){a=1}e=Math.min(h+a,j.length);a=e-h;d=e===j.length;c=d&&j.indexGeneration===j.generation;for(g=h;g<e;g++){k=j.keys[g];if(k!=null){delete j.map[k];if(c){delete j.indexMap[k]}}}b=j.items[g-1];j.length-=a;j.generation++;if(c){j.indexGeneration=j.generation}if(d){j.items.length=j.keys.length=j.length}else{j.items.splice(h,a);j.keys.splice(h,a)}return b}return false},removeAtKey:function(b){var d=this,c=d.keys,a;if(b==null){for(a=c.length-1;a>=0;a--){if(c[a]==null){d.removeAt(a)}}}else{return d.removeAt(d.indexOfKey(b))}},getCount:function(){return this.length},indexOf:function(c){var b=this,a;if(c!=null){if(!b.useLinearSearch&&(a=b.getKey(c))){return this.indexOfKey(a)}return Ext.Array.indexOf(b.items,c)}return -1},indexOfKey:function(a){if(!this.map.hasOwnProperty(a)){return -1}if(this.indexGeneration!==this.generation){this.rebuildIndexMap()}return this.indexMap[a]},rebuildIndexMap:function(){var e=this,d=e.indexMap={},c=e.keys,a=c.length,b;for(b=0;b<a;b++){d[c[b]]=b}e.indexGeneration=e.generation},get:function(b){var d=this,a=d.map[b],c=a!==undefined?a:(typeof b=="number")?d.items[b]:undefined;return typeof c!="function"||d.allowFunctions?c:null},getAt:function(a){return this.items[a]},getByKey:function(a){return this.map[a]},contains:function(c){var b=this,a;if(c!=null){if(!b.useLinearSearch&&(a=b.getKey(c))){return this.map[a]!=null}return Ext.Array.indexOf(this.items,c)!==-1}return false},containsKey:function(a){return this.map.hasOwnProperty(a)},clear:function(){var a=this;if(a.generation){a.length=0;a.items=[];a.keys=[];a.map={};a.indexMap={};a.generation++;a.indexGeneration=a.generation}if(a.hasListeners.clear){a.fireEvent("clear")}},first:function(){return this.items[0]},last:function(){return this.items[this.length-1]},sum:function(h,b,j,a){var c=this.extractValues(h,b),g=c.length,e=0,d;j=j||0;a=(a||a===0)?a:g-1;for(d=j;d<=a;d++){e+=c[d]}return e},collect:function(k,e,h){var l=this.extractValues(k,e),a=l.length,b={},c=[],j,g,d;for(d=0;d<a;d++){j=l[d];g=String(j);if((h||!Ext.isEmpty(j))&&!b[g]){b[g]=true;c.push(j)}}return c},extractValues:function(c,a){var b=this.items;if(a){b=Ext.Array.pluck(b,a)}return Ext.Array.pluck(b,c)},hasRange:function(b,a){return(a<this.length)},getRange:function(j,b){var h=this,d=h.items,c=[],a=d.length,g,e;if(a<1){return c}if(j>b){e=true;g=j;j=b;b=g}if(j<0){j=0}if(b==null||b>=a){b=a-1}c=d.slice(j,b+1);if(e&&c.length){c.reverse()}return c},filter:function(d,c,e,a){var b=[];if(Ext.isString(d)){b.push(new Ext.util.Filter({property:d,value:c,anyMatch:e,caseSensitive:a}))}else{if(Ext.isArray(d)||d instanceof Ext.util.Filter){b=b.concat(d)}}return this.filterBy(Ext.util.Filter.createFilterFn(b))},filterBy:function(e,d){var j=this,a=new j.self(j.initialConfig),h=j.keys,b=j.items,g=b.length,c;a.getKey=j.getKey;for(c=0;c<g;c++){if(e.call(d||j,b[c],h[c])){a.add(h[c],b[c])}}a.useLinearSearch=j.useLinearSearch;return a},findIndex:function(c,b,e,d,a){if(Ext.isEmpty(b,false)){return -1}b=this.createValueMatcher(b,d,a);return this.findIndexBy(function(g){return g&&b.test(g[c])},null,e)},findIndexBy:function(e,d,j){var h=this,g=h.keys,b=h.items,c=j||0,a=b.length;for(;c<a;c++){if(e.call(d||h,b[c],g[c])){return c}}return -1},createValueMatcher:function(c,e,a,b){if(!c.exec){var d=Ext.String.escapeRegex;c=String(c);if(e===true){c=d(c)}else{c="^"+d(c);if(b===true){c+="$"}}c=new RegExp(c,a?"":"i")}return c},clone:function(){var a=this,b=new a.self(a.initialConfig);b.add(a.keys,a.items);b.useLinearSearch=a.useLinearSearch;return b}},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(b,a){a=a||0;return function(c,j){var e=b.isCollection?b.items:b,h=e.length,d,g;for(g=0;g<h;++g){d=e[g].sort(c,j);if(d){return d}}return a&&a(c,j)}}},multiplier:1,constructor:function(a){this.initConfig(a)},getId:function(){var a=this._id;if(!a){a=this.getProperty();if(!a){a=Ext.id(null,"ext-sorter-")}this._id=a}return a},sort:function(a,b){return this.multiplier*this.sortFn(a,b)},sortFn:function(d,c){var g=this,e=g._transform,b=g._root,h=g._property,a,j;if(b){d=d[b];c=c[b]}a=d[h];j=c[h];if(e){a=e(a);j=e(j)}return(a>j)?1:(a<j?-1:0)},applyDirection:function(a){return a?a:"ASC"},updateDirection:function(a){this.multiplier=(a.toUpperCase()==="DESC")?-1:1},updateProperty:function(a){if(a){delete this.sortFn}},updateSorterFn:function(a){this.sortFn=a},toggle:function(){this.setDirection(Ext.String.toggle(this.getDirection(),"ASC","DESC"))},getState:function(){return{root:this.getRoot(),property:this.getProperty(),direction:this.getDirection()}},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(a){return a&&a.length?function(d,c){var b=a[0].sort(d,c),g=a.length,e=1;for(;!b&&e<g;e++){b=a[e].sort.call(this,d,c)}return b}:function(){return 0}}},applySorters:function(c){var b=this,a=b.getSorters()||new Ext.util.MixedCollection(false,Ext.returnId);if(c){a.addAll(b.decodeSorters(c))}return a},sort:function(h,g,a,e){var b=this,j,d,c=b.getSorters();if(!c){b.setSorters(null);c=b.getSorters()}if(Ext.isArray(h)){e=a;a=g}else{if(Ext.isObject(h)){h=[h];e=a;a=g}else{if(Ext.isString(h)){j=c.get(h);if(!j){j={property:h,direction:g}}else{if(g==null){j.toggle()}else{j.setDirection(g)}}h=[j]}}}if(h&&h.length){h=b.decodeSorters(h);switch(a){case"multi":c.insert(0,h[0]);d=c.getCount()-b.multiSortLimit;if(d>0){c.removeRange(b.multiSortLimit,d)}break;case"prepend":c.insert(0,h);break;case"append":c.addAll(h);break;case undefined:case null:case"replace":c.clear();c.addAll(h);break;default:}}if(e!==false){b.fireEvent("beforesort",b,h);b.onBeforeSort(h);if(b.getSorterCount()){b.doSort(b.generateComparator())}}return h},getSorterCount:function(){return this.getSorters().items.length},generateComparator:function(){var a=this.getSorters().getRange();return a.length?this.createComparator(a):this.emptyComparator},emptyComparator:function(){return 0},onBeforeSort:Ext.emptyFn,decodeSorters:function(g){if(!Ext.isArray(g)){if(g===undefined){g=[]}else{g=[g]}}var d=g.length,h=Ext.util.Sorter,b=this.getModel?this.getModel():this.model,e,a,c;for(c=0;c<d;c++){a=g[c];if(!(a instanceof h)){if(Ext.isString(a)){a={property:a}}Ext.applyIf(a,{root:this.sortRoot,direction:"ASC"});if(a.fn){a.sorterFn=a.fn}if(typeof a=="function"){a={sorterFn:a}}if(b&&!a.transform){e=b.getField(a.property);a.transform=e&&e.sortType!==Ext.identityFn?e.sortType:undefined}g[c]=new Ext.util.Sorter(a)}}return g},getFirstSorter:function(){var c=this.getSorters().items,a=c.length,b=0,d;for(;b<a;++b){d=c[b];if(!d.isGrouper){return d}}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(){var a=this;a.initConfig();Ext.util.AbstractMixedCollection.prototype.constructor.apply(this,arguments)},doSort:function(a){this.sortBy(a)},_sort:function(m,b,l){var k=this,e,g,d=String(b).toUpperCase()=="DESC"?-1:1,j=[],n=k.keys,h=k.items,a;l=l||function(o,c){return o-c};for(e=0,g=h.length;e<g;e++){j[j.length]={key:n[e],value:h[e],index:e}}Ext.Array.sort(j,function(o,c){return l(o[m],c[m])*d||(o.index<c.index?-1:1)});for(e=0,g=j.length;e<g;e++){a=j[e];h[e]=a.value;n[e]=a.key;k.indexMap[a.key]=e}k.generation++;k.indexGeneration=k.generation;k.fireEvent("sort",k)},sortBy:function(b){var j=this,a=j.items,h,g=j.keys,d,e=a.length,c;for(c=0;c<e;c++){a[c].$extCollectionIndex=c}Ext.Array.sort(a,function(l,k){return b(l,k)||(l.$extCollectionIndex<k.$extCollectionIndex?-1:1)});for(c=0;c<e;c++){h=a[c];d=j.getKey(h);g[c]=d;j.indexMap[d]=c;delete a.$extCollectionIndex}j.generation++;j.indexGeneration=j.generation;j.fireEvent("sort",j,a,g)},findInsertionIndex:function(e,d){var g=this,b=g.items,j=0,a=b.length-1,c,h;if(!d){d=g.generateComparator()}while(j<=a){c=(j+a)>>1;h=d(e,b[c]);if(h>=0){j=c+1}else{if(h<0){a=c-1}}}return j},reorder:function(d){var h=this,b=h.items,c=0,g=b.length,a=[],e=[],j;h.suspendEvents();for(j in d){a[d[j]]=b[j]}for(c=0;c<g;c++){if(d[c]==undefined){e.push(b[c])}}for(c=0;c<g;c++){if(a[c]==undefined){a[c]=e.shift()}}h.clear();h.addAll(a);h.resumeEvents();h.fireEvent("sort",h)},sortByKey:function(a,b){this._sort("key",a,b||function(d,c){var g=String(d).toUpperCase(),e=String(c).toUpperCase();return g>e?1:(g<e?-1:0)})}},1,0,0,0,0,[["sortable",Ext.util.Sortable]],[Ext.util,"MixedCollection"],0));(Ext.cmd.derive("Ext.util.TaskRunner",Ext.Base,{interval:10,timerId:null,constructor:function(a){var b=this;if(typeof a=="number"){b.interval=a}else{if(a){Ext.apply(b,a)}}b.tasks=[];b.timerFn=Ext.Function.bind(b.onTick,b)},newTask:function(b){var a=new Ext.util.TaskRunner.Task(b);a.manager=this;return a},start:function(a){var c=this,b=Ext.Date.now();if(!a.pending){c.tasks.push(a);a.pending=true}a.stopped=false;a.taskStartTime=b;a.taskRunTime=a.fireOnStart!==false?0:a.taskStartTime;a.taskRunCount=0;if(!c.firing){if(a.fireOnStart!==false){c.startTimer(0,b)}else{c.startTimer(a.interval,b)}}return a},stop:function(a){if(!a.stopped){a.stopped=true;if(a.onStop){a.onStop.call(a.scope||a,a)}}return a},stopAll:function(){Ext.each(this.tasks,this.stop,this)},firing:false,nextExpires:1e+99,onTick:function(){var n=this,g=n.tasks,a=Ext.Date.now(),o=1e+99,l=g.length,d=Ext.GlobalEvents,c,p,j,b,e,h,q;n.timerId=null;n.firing=true;for(j=0;j<l||j<(l=g.length);++j){b=g[j];if(!(h=b.stopped)){c=b.taskRunTime+b.interval;if(c<=a){e=1;if(b.hasOwnProperty("fireIdleEvent")){q=b.fireIdleEvent}else{q=n.fireIdleEvent}try{e=b.run.apply(b.scope||b,b.args||[++b.taskRunCount])}catch(k){try{if(b.onError){e=b.onError.call(b.scope||b,b,k)}}catch(m){}}b.taskRunTime=a;if(e===false||b.taskRunCount===b.repeat){n.stop(b);h=true}else{h=b.stopped;c=a+b.interval}}if(!h&&b.duration&&b.duration<=(a-b.taskStartTime)){n.stop(b);h=true}}if(h){b.pending=false;if(!p){p=g.slice(0,j)}}else{if(p){p.push(b)}if(o>c){o=c}}}if(p){n.tasks=p}n.firing=false;if(n.tasks.length){n.startTimer(o-a,Ext.Date.now())}if(q!==false&&d.hasListeners.idle){d.fireEvent("idle")}},startTimer:function(e,c){var d=this,b=c+e,a=d.timerId;if(a&&d.nextExpires-b>d.interval){clearTimeout(a);a=null}if(!a){if(e<d.interval){e=d.interval}d.timerId=setTimeout(d.timerFn,e);d.nextExpires=b}}},1,0,0,0,0,0,[Ext.util,"TaskRunner"],function(){var b=this,a=b.prototype;a.destroy=a.stopAll;b.Task=new Ext.Class({isTask:true,stopped:true,fireOnStart:false,constructor:function(c){Ext.apply(this,c)},restart:function(c){if(c!==undefined){this.interval=c}this.manager.start(this)},start:function(c){if(this.stopped){this.restart(c)}},stop:function(){this.manager.stop(this)}});a=b.Task.prototype;a.destroy=a.stop}));(Ext.cmd.derive("Ext.fx.target.Target",Ext.Base,{isAnimTarget:true,constructor:function(a){this.target=a;this.id=this.getId()},getId:function(){return this.target.id},remove:function(){Ext.destroy(this.target)}},1,0,0,0,0,0,[Ext.fx.target,"Target"],0));(Ext.cmd.derive("Ext.fx.target.Element",Ext.fx.target.Target,{type:"element",getElVal:function(b,a,c){if(c==undefined){if(a==="x"){c=b.getX()}else{if(a==="y"){c=b.getY()}else{if(a==="scrollTop"){c=b.getScroll().top}else{if(a==="scrollLeft"){c=b.getScroll().left}else{if(a==="height"){c=b.getHeight()}else{if(a==="width"){c=b.getWidth()}else{c=b.getStyle(a)}}}}}}}return c},getAttr:function(a,c){var b=this.target;return[[b,this.getElVal(b,a,c)]]},setAttr:function(k){var e=this.target,h=k.length,l,g,b,d,c,a;for(d=0;d<h;d++){l=k[d].attrs;for(g in l){if(l.hasOwnProperty(g)){a=l[g].length;for(c=0;c<a;c++){b=l[g][c];this.setElVal(b[0],g,b[1])}}}}},setElVal:function(b,a,c){if(a==="x"){b.setX(c)}else{if(a==="y"){b.setY(c)}else{if(a==="scrollTop"){b.scrollTo("top",c)}else{if(a==="scrollLeft"){b.scrollTo("left",c)}else{if(a==="width"){b.setWidth(c)}else{if(a==="height"){b.setHeight(c)}else{b.setStyle(a,c)}}}}}}}},0,0,0,0,0,0,[Ext.fx.target,"Element"],0));(Ext.cmd.derive("Ext.fx.target.ElementCSS",Ext.fx.target.Element,{setAttr:function(n,e){var q={attrs:[],duration:[],easing:[]},m=n.length,g,p,k,l,c,b,h,d,a;for(h=0;h<m;h++){p=n[h];c=p.duration;l=p.easing;p=p.attrs;for(k in p){if(Ext.Array.indexOf(q.attrs,k)==-1){q.attrs.push(k.replace(/[A-Z]/g,function(j){return"-"+j.toLowerCase()}));q.duration.push(c+"ms");q.easing.push(l)}}}g=q.attrs.join(",");c=q.duration.join(",");l=q.easing.join(", ");for(h=0;h<m;h++){p=n[h].attrs;for(k in p){a=p[k].length;for(d=0;d<a;d++){b=p[k][d];b[0].setStyle(Ext.supports.CSS3Prefix+"TransitionProperty",e?"":g);b[0].setStyle(Ext.supports.CSS3Prefix+"TransitionDuration",e?"":c);b[0].setStyle(Ext.supports.CSS3Prefix+"TransitionTimingFunction",e?"":l);b[0].setStyle(k,b[1]);if(e){b=b[0].dom.offsetWidth}else{b[0].on(Ext.supports.CSS3TransitionEnd,function(){this.setStyle(Ext.supports.CSS3Prefix+"TransitionProperty",null);this.setStyle(Ext.supports.CSS3Prefix+"TransitionDuration",null);this.setStyle(Ext.supports.CSS3Prefix+"TransitionTimingFunction",null)},b[0],{single:true})}}}}}},0,0,0,0,0,0,[Ext.fx.target,"ElementCSS"],0));(Ext.cmd.derive("Ext.fx.target.CompositeElement",Ext.fx.target.Element,{isComposite:true,constructor:function(a){a.id=a.id||Ext.id(null,"ext-composite-");Ext.fx.target.Target.prototype.constructor.apply(this,[a])},getAttr:function(a,j){var b=[],h=this.target,g=h.elements,e=g.length,c,d;for(c=0;c<e;c++){d=g[c];if(d){d=h.getElement(d);b.push([d,this.getElVal(d,a,j)])}}return b},setAttr:function(n){var l=this.target,m=n.length,b=l.elements,r=b.length,p,d,q,h,c,g,e,a;for(g=0;g<m;g++){q=n[g].attrs;for(h in q){if(q.hasOwnProperty(h)){a=q[h].length;for(e=0;e<a;e++){p=q[h][e][1];for(d=0;d<r;++d){el=b[d];if(el){el=l.getElement(el);this.setElVal(el,h,p)}}}}}}},remove:function(){this.target.destroy()}},1,0,0,0,0,0,[Ext.fx.target,"CompositeElement"],0));(Ext.cmd.derive("Ext.fx.target.CompositeElementCSS",Ext.fx.target.CompositeElement,{setAttr:function(){return Ext.fx.target.ElementCSS.prototype.setAttr.apply(this,arguments)}},0,0,0,0,0,0,[Ext.fx.target,"CompositeElementCSS"],0));(Ext.cmd.derive("Ext.fx.target.Sprite",Ext.fx.target.Target,{type:"draw",getFromPrim:function(b,a){var c;switch(a){case"rotate":case"rotation":c=b.attr.rotation;return{x:c.x||0,y:c.y||0,degrees:c.degrees||0};case"scale":case"scaling":c=b.attr.scaling;return{x:c.x||1,y:c.y||1,cx:c.cx||0,cy:c.cy||0};case"translate":case"translation":c=b.attr.translation;return{x:c.x||0,y:c.y||0};default:return b.attr[a]}},getAttr:function(a,b){return[[this.target,b!=undefined?b:this.getFromPrim(this.target,a)]]},setAttr:function(m){var g=m.length,k=[],b,e,p,r,q,o,n,d,c,l,h,a;for(d=0;d<g;d++){b=m[d].attrs;for(e in b){p=b[e];a=p.length;for(c=0;c<a;c++){q=p[c][0];r=p[c][1];if(e==="translate"||e==="translation"){n={x:r.x,y:r.y}}else{if(e==="rotate"||e==="rotation"){l=r.x;if(isNaN(l)){l=null}h=r.y;if(isNaN(h)){h=null}n={degrees:r.degrees,x:l,y:h}}else{if(e==="scale"||e==="scaling"){l=r.x;if(isNaN(l)){l=null}h=r.y;if(isNaN(h)){h=null}n={x:l,y:h,cx:r.cx,cy:r.cy}}else{if(e==="width"||e==="height"||e==="x"||e==="y"){n=parseFloat(r)}else{n=r}}}}o=Ext.Array.indexOf(k,q);if(o==-1){k.push([q,{}]);o=k.length-1}k[o][1][e]=n}}}g=k.length;for(d=0;d<g;d++){k[d][0].setAttributes(k[d][1])}this.target.redraw()}},0,0,0,0,0,0,[Ext.fx.target,"Sprite"],0));(Ext.cmd.derive("Ext.fx.target.CompositeSprite",Ext.fx.target.Sprite,{getAttr:function(a,h){var b=[],g=[].concat(this.target.items),e=g.length,d,c;for(d=0;d<e;d++){c=g[d];b.push([c,h!=undefined?h:this.getFromPrim(c,a)])}return b}},0,0,0,0,0,0,[Ext.fx.target,"CompositeSprite"],0));(Ext.cmd.derive("Ext.fx.target.Component",Ext.fx.target.Target,{type:"component",getPropMethod:{top:function(){return this.getPosition(true)[1]},left:function(){return this.getPosition(true)[0]},x:function(){return this.getPosition()[0]},y:function(){return this.getPosition()[1]},height:function(){return this.getHeight()},width:function(){return this.getWidth()},opacity:function(){return this.el.getStyle("opacity")}},setMethods:{top:"setPosition",left:"setPosition",x:"setPagePosition",y:"setPagePosition",height:"setSize",width:"setSize",opacity:"setOpacity"},getAttr:function(a,b){return[[this.target,b!==undefined?b:this.getPropMethod[a].call(this.target)]]},setAttr:function(s,g,b){var q=this,p=s.length,v,n,c,k,e,m,d,r,u,l,a={},t;for(k=0;k<p;k++){v=s[k].attrs;for(n in v){m=v[n].length;for(e=0;e<m;e++){c=v[n][e];t=a[q.setMethods[n]]||(a[q.setMethods[n]]={});t.target=c[0];t[n]=c[1]}}if(a.setPosition){c=a.setPosition;d=(c.left===undefined)?undefined:parseFloat(c.left);r=(c.top===undefined)?undefined:parseFloat(c.top);c.target.setPosition(d,r)}if(a.setPagePosition){c=a.setPagePosition;c.target.setPagePosition(c.x,c.y)}if(a.setSize){c=a.setSize;u=(c.width===undefined)?c.target.getWidth():parseFloat(c.width);l=(c.height===undefined)?c.target.getHeight():parseFloat(c.height);c.target.el.setSize(u,l);if(b||q.dynamic){Ext.GlobalEvents.on({idle:Ext.Function.bind(c.target.setSize,c.target,[u,l]),single:true})}}if(a.setOpacity){c=a.setOpacity;c.target.el.setStyle("opacity",c.opacity)}}}},0,0,0,0,0,0,[Ext.fx.target,"Component"],0));(Ext.cmd.derive("Ext.util.HashMap",Ext.Base,{generation:0,config:{keyFn:null},constructor:function(a){var c=this,b;c.mixins.observable.constructor.call(c,a);c.clear(true);b=c.getKeyFn();if(b){c.getKey=b}},getCount:function(){return this.length},getData:function(a,b){if(b===undefined){b=a;a=this.getKey(b)}return[a,b]},getKey:function(a){return a.id},add:function(a,c){var b=this;if(arguments.length===1){c=a;a=b.getKey(c)}if(b.containsKey(a)){return b.replace(a,c)}b.map[a]=c;++b.length;b.generation++;if(b.hasListeners.add){b.fireEvent("add",b,a,c)}return c},replace:function(b,d){var c=this,e=c.map,a;if(arguments.length===1){d=b;b=c.getKey(d)}if(!c.containsKey(b)){c.add(b,d)}a=e[b];e[b]=d;c.generation++;if(c.hasListeners.replace){c.fireEvent("replace",c,b,d,a)}return d},remove:function(b){var a=this.findKey(b);if(a!==undefined){return this.removeAtKey(a)}return false},removeAtKey:function(a){var b=this,c;if(b.containsKey(a)){c=b.map[a];delete b.map[a];--b.length;b.generation++;if(b.hasListeners.remove){b.fireEvent("remove",b,a,c)}return true}return false},get:function(a){var b=this.map;return b.hasOwnProperty(a)?b[a]:undefined},clear:function(a){var b=this;if(a||b.generation){b.map={};b.length=0;b.generation=a?0:b.generation+1}if(a!==true&&b.hasListeners.clear){b.fireEvent("clear",b)}return b},containsKey:function(a){var b=this.map;return b.hasOwnProperty(a)&&b[a]!==undefined},contains:function(a){return this.containsKey(this.findKey(a))},getKeys:function(){return this.getArray(true)},getValues:function(){return this.getArray(false)},getArray:function(d){var a=[],b,c=this.map;for(b in c){if(c.hasOwnProperty(b)){a.push(d?b:c[b])}}return a},each:function(d,c){var a=Ext.apply({},this.map),b,e=this.length;c=c||this;for(b in a){if(a.hasOwnProperty(b)){if(d.call(c,b,a[b],e)===false){break}}}return this},clone:function(){var c=new this.self(this.initialConfig),b=this.map,a;c.suspendEvents();for(a in b){if(b.hasOwnProperty(a)){c.add(a,b[a])}}c.resumeEvents();return c},findKey:function(b){var a,c=this.map;for(a in c){if(c.hasOwnProperty(a)&&c[a]===b){return a}}return undefined}},1,0,0,0,0,[[Ext.mixin.Observable.prototype.mixinId||Ext.mixin.Observable.$className,Ext.mixin.Observable]],[Ext.util,"HashMap"],0));(Ext.cmd.derive("Ext.fx.Queue",Ext.Base,{constructor:function(){this.targets=new Ext.util.HashMap();this.fxQueue={}},getFxDefaults:function(a){var b=this.targets.get(a);if(b){return b.fxDefaults}return{}},setFxDefaults:function(a,c){var b=this.targets.get(a);if(b){b.fxDefaults=Ext.apply(b.fxDefaults||{},c)}},stopAnimation:function(b){var d=this,a=d.getFxQueue(b),c=a.length;while(c){a[c-1].end();c--}},getActiveAnimation:function(b){var a=this.getFxQueue(b);return(a&&!!a.length)?a[0]:false},hasFxBlock:function(b){var a=this.getFxQueue(b);return a&&a[0]&&a[0].block},getFxQueue:function(b){if(!b){return false}var c=this,a=c.fxQueue[b],d=c.targets.get(b);if(!d){return false}if(!a){c.fxQueue[b]=[];if(d.type!="element"){d.target.on("destroy",function(){c.fxQueue[b]=[]})}}return c.fxQueue[b]},queueFx:function(d){var c=this,e=d.target,a,b;if(!e){return}a=c.getFxQueue(e.getId());b=a.length;if(b){if(d.concurrent){d.paused=false}else{a[b-1].on("afteranimate",function(){d.paused=false})}}else{d.paused=false}d.on("afteranimate",function(){Ext.Array.remove(a,d);if(a.length===0){c.targets.remove(d.target)}if(d.remove){if(e.type=="element"){var g=Ext.get(e.id);if(g){g.destroy()}}}},c,{single:true});a.push(d)}},1,0,0,0,0,0,[Ext.fx,"Queue"],0));(Ext.cmd.derive("Ext.fx.Manager",Ext.Base,{singleton:true,constructor:function(){var a=this;a.items=new Ext.util.MixedCollection();a.targetArr={};a.mixins.queue.constructor.call(a);a.taskRunner=new Ext.util.TaskRunner()},interval:16,forceJS:true,createTarget:function(d){var b=this,c=!b.forceJS&&Ext.supports.Transitions,a;b.useCSS3=c;if(d){if(d.tagName||Ext.isString(d)||d.isFly){d=Ext.get(d);a=new Ext.fx.target["Element"+(c?"CSS":"")](d)}else{if(d.dom){a=new Ext.fx.target["Element"+(c?"CSS":"")](d)}else{if(d.isComposite){a=new Ext.fx.target["CompositeElement"+(c?"CSS":"")](d)}else{if(d.isSprite){a=new Ext.fx.target.Sprite(d)}else{if(d.isCompositeSprite){a=new Ext.fx.target.CompositeSprite(d)}else{if(d.isComponent){a=new Ext.fx.target.Component(d)}else{if(d.isAnimTarget){return d}else{return null}}}}}}}b.targets.add(a);return a}else{return null}},addAnim:function(d){var c=this,b=c.items,a=c.task;b.add(d.id,d);if(!a&&b.length){a=c.task={run:c.runner,interval:c.interval,scope:c};c.taskRunner.start(a)}},removeAnim:function(d){var c=this,b=c.items,a=c.task;b.removeAtKey(d.id);if(a&&!b.length){c.taskRunner.stop(a);delete c.task}},runner:function(){var d=this,b=d.items.getRange(),c=0,a=b.length,e;d.targetArr={};d.timestamp=new Date();for(;c<a;c++){e=b[c];if(e.isReady()){d.startAnim(e)}}for(c=0;c<a;c++){e=b[c];if(e.isRunning()){d.runAnim(e)}}d.applyPendingAttrs()},startAnim:function(a){a.start(this.timestamp)},runAnim:function(e,a){if(!e){return}var d=this,h=d.useCSS3&&e.target.type=="element",b=d.timestamp-e.startTime,c=(b>=e.duration),g,j;if(a){b=e.duration;c=true}g=this.collectTargetData(e,b,h,c);if(h){e.target.setAttr(g.anims[e.id].attributes,true);d.collectTargetData(e,e.duration,h,c);e.paused=true;g=e.target.target;if(e.target.isComposite){g=e.target.target.last()}j={};j[Ext.supports.CSS3TransitionEnd]=e.lastFrame;j.scope=e;j.single=true;g.on(j)}return g},jumpToEnd:function(a){var b=this.runAnim(a,true);this.applyAnimAttrs(b,b.anims[a.id])},collectTargetData:function(c,a,e,g){var b=c.target.getId(),d=this.targetArr[b];if(!d){d=this.targetArr[b]={id:b,el:c.target,anims:{}}}d.anims[c.id]={id:c.id,anim:c,elapsed:a,isLastFrame:g,attributes:[{duration:c.duration,easing:(e&&c.reverse)?c.easingFn.reverse().toCSS3():c.easing,attrs:c.runAnim(a)}]};return d},applyAnimAttrs:function(c,a){var b=a.anim;if(a.attributes&&b.isRunning()){c.el.setAttr(a.attributes,false,a.isLastFrame);if(a.isLastFrame){b.lastFrame()}}},applyPendingAttrs:function(){var e=this.targetArr,g,c,b,d,a;for(c in e){if(e.hasOwnProperty(c)){g=e[c];for(a in g.anims){if(g.anims.hasOwnProperty(a)){b=g.anims[a];d=b.anim;if(b.attributes&&d.isRunning()){g.el.setAttr(b.attributes,false,b.isLastFrame);if(b.isLastFrame){d.lastFrame()}}}}}}}},1,0,0,0,0,[["queue",Ext.fx.Queue]],[Ext.fx,"Manager"],0));(Ext.cmd.derive("Ext.fx.Animator",Ext.Base,{isAnimator:true,duration:250,delay:0,delayStart:0,dynamic:false,easing:"ease",running:false,paused:false,damper:1,iterations:1,currentIteration:0,keyframeStep:0,animKeyFramesRE:/^(from|to|\d+%?)$/,constructor:function(a){var b=this;a=Ext.apply(b,a||{});b.config=a;b.id=Ext.id(null,"ext-animator-");b.mixins.observable.constructor.call(b,a);b.timeline=[];b.createTimeline(b.keyframes);if(b.target){b.applyAnimator(b.target);Ext.fx.Manager.addAnim(b)}},sorter:function(d,c){return d.pct-c.pct},createTimeline:function(d){var h=this,l=[],j=h.to||{},b=h.duration,m,a,c,g,k,e;for(k in d){if(d.hasOwnProperty(k)&&h.animKeyFramesRE.test(k)){e={attrs:Ext.apply(d[k],j)};if(k=="from"){k=0}else{if(k=="to"){k=100}}e.pct=parseInt(k,10);l.push(e)}}Ext.Array.sort(l,h.sorter);g=l.length;for(c=0;c<g;c++){m=(l[c-1])?b*(l[c-1].pct/100):0;a=b*(l[c].pct/100);h.timeline.push({duration:a-m,attrs:l[c].attrs})}},applyAnimator:function(d){var h=this,j=[],l=h.timeline,g=l.length,b,e,a,k,c;if(h.fireEvent("beforeanimate",h)!==false){for(c=0;c<g;c++){b=l[c];k=b.attrs;e=k.easing||h.easing;a=k.damper||h.damper;delete k.easing;delete k.damper;b=new Ext.fx.Anim({target:d,easing:e,damper:a,duration:b.duration,paused:true,to:k});j.push(b)}h.animations=j;h.target=b.target;for(c=0;c<g-1;c++){b=j[c];b.nextAnim=j[c+1];b.on("afteranimate",function(){this.nextAnim.paused=false});b.on("afteranimate",function(){this.fireEvent("keyframe",this,++this.keyframeStep)},h)}j[g-1].on("afteranimate",function(){this.lastFrame()},h)}},start:function(d){var e=this,c=e.delay,b=e.delayStart,a;if(c){if(!b){e.delayStart=d;return}else{a=d-b;if(a<c){return}else{d=new Date(b.getTime()+c)}}}if(e.fireEvent("beforeanimate",e)!==false){e.startTime=d;e.running=true;e.animations[e.keyframeStep].paused=false}},lastFrame:function(){var c=this,a=c.iterations,b=c.currentIteration;b++;if(b<a){c.startTime=new Date();c.currentIteration=b;c.keyframeStep=0;c.applyAnimator(c.target);c.animations[c.keyframeStep].paused=false}else{c.currentIteration=0;c.end()}},end:function(){var a=this;a.fireEvent("afteranimate",a,a.startTime,new Date()-a.startTime)},isReady:function(){return this.paused===false&&this.running===false&&this.iterations>0},isRunning:function(){return false}},1,0,0,0,0,[["observable",Ext.util.Observable]],[Ext.fx,"Animator"],0));(Ext.cmd.derive("Ext.fx.CubicBezier",Ext.Base,{singleton:true,cubicBezierAtTime:function(p,d,b,o,n,j){var k=3*d,m=3*(o-d)-k,a=1-k-m,h=3*b,l=3*(n-b)-h,q=1-h-l;function g(r){return((a*r+m)*r+k)*r}function c(r,u){var s=e(r,u);return((q*s+l)*s+h)*s}function e(r,z){var y,w,u,s,v,t;for(u=r,t=0;t<8;t++){s=g(u)-r;if(Math.abs(s)<z){return u}v=(3*a*u+2*m)*u+k;if(Math.abs(v)<0.000001){break}u=u-s/v}y=0;w=1;u=r;if(u<y){return y}if(u>w){return w}while(y<w){s=g(u);if(Math.abs(s-r)<z){return u}if(r>s){y=u}else{w=u}u=(w-y)/2+y}return u}return c(p,1/(200*j))},cubicBezier:function(b,e,a,c){var d=function(g){return Ext.fx.CubicBezier.cubicBezierAtTime(g,b,e,a,c,1)};d.toCSS3=function(){return"cubic-bezier("+[b,e,a,c].join(",")+")"};d.reverse=function(){return Ext.fx.CubicBezier.cubicBezier(1-a,1-c,1-b,1-e)};return d}},0,0,0,0,0,0,[Ext.fx,"CubicBezier"],0));Ext.require("Ext.fx.CubicBezier",function(){var e=Math,h=e.PI,d=e.pow,b=e.sin,g=e.sqrt,a=e.abs,c=1.70158;Ext.define("Ext.fx.Easing",{singleton:true,linear:Ext.identityFn,ease:function(m){var j=0.07813-m/2,o=-0.25,p=g(0.0066+j*j),s=p-j,l=d(a(s),1/3)*(s<0?-1:1),r=-p-j,k=d(a(r),1/3)*(r<0?-1:1),u=l+k+0.25;return d(1-u,2)*3*u*0.1+(1-u)*3*u*u+u*u*u},easeIn:function(j){return d(j,1.7)},easeOut:function(j){return d(j,0.48)},easeInOut:function(s){var m=0.48-s/1.04,l=g(0.1734+m*m),j=l-m,r=d(a(j),1/3)*(j<0?-1:1),p=-l-m,o=d(a(p),1/3)*(p<0?-1:1),k=r+o+0.5;return(1-k)*3*k*k+k*k*k},backIn:function(j){return j*j*((c+1)*j-c)},backOut:function(j){j=j-1;return j*j*((c+1)*j+c)+1},elasticIn:function(l){if(l===0||l===1){return l}var k=0.3,j=k/4;return d(2,-10*l)*b((l-j)*(2*h)/k)+1},elasticOut:function(j){return 1-Ext.fx.Easing.elasticIn(1-j)},bounceIn:function(j){return 1-Ext.fx.Easing.bounceOut(1-j)},bounceOut:function(o){var k=7.5625,m=2.75,j;if(o<(1/m)){j=k*o*o}else{if(o<(2/m)){o-=(1.5/m);j=k*o*o+0.75}else{if(o<(2.5/m)){o-=(2.25/m);j=k*o*o+0.9375}else{o-=(2.625/m);j=k*o*o+0.984375}}}return j}},function(){var k=Ext.fx.Easing.self,j=k.prototype;k.addMembers({"back-in":j.backIn,"back-out":j.backOut,"ease-in":j.easeIn,"ease-out":j.easeOut,"elastic-in":j.elasticIn,"elastic-out":j.elasticOut,"bounce-in":j.bounceIn,"bounce-out":j.bounceOut,"ease-in-out":j.easeInOut})})});(Ext.cmd.derive("Ext.fx.DrawPath",Ext.Base,{singleton:true,pathToStringRE:/,?([achlmqrstvxz]),?/gi,pathCommandRE:/([achlmqstvz])[\s,]*((-?\d*\.?\d*(?:e[-+]?\d+)?\s*,?\s*)+)/ig,pathValuesRE:/(-?\d*\.?\d*(?:e[-+]?\d+)?)\s*,?\s*/ig,stopsRE:/^(\d+%?)$/,radian:Math.PI/180,is:function(b,a){a=String(a).toLowerCase();return(a=="object"&&b===Object(b))||(a=="undefined"&&typeof b==a)||(a=="null"&&b===null)||(a=="array"&&Array.isArray&&Array.isArray(b))||(Object.prototype.toString.call(b).toLowerCase().slice(8,-1))==a},path2string:function(){return this.join(",").replace(Ext.fx.DrawPath.pathToStringRE,"$1")},pathToString:function(a){return a.join(",").replace(Ext.fx.DrawPath.pathToStringRE,"$1")},parsePathString:function(a){if(!a){return null}var d={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},c=[],b=this;if(b.is(a,"array")&&b.is(a[0],"array")){c=b.pathClone(a)}if(!c.length){String(a).replace(b.pathCommandRE,function(g,e,k){var j=[],h=e.toLowerCase();k.replace(b.pathValuesRE,function(m,l){l&&j.push(+l)});if(h=="m"&&j.length>2){c.push([e].concat(Ext.Array.splice(j,0,2)));h="l";e=(e=="m")?"l":"L"}while(j.length>=d[h]){c.push([e].concat(Ext.Array.splice(j,0,d[h])));if(!d[h]){break}}})}c.toString=b.path2string;return c},pathClone:function(g){var c=[],a,e,b,d;if(!this.is(g,"array")||!this.is(g&&g[0],"array")){g=this.parsePathString(g)}for(b=0,d=g.length;b<d;b++){c[b]=[];for(a=0,e=g[b].length;a<e;a++){c[b][a]=g[b][a]}}c.toString=this.path2string;return c},pathToAbsolute:function(c){if(!this.is(c,"array")||!this.is(c&&c[0],"array")){c=this.parsePathString(c)}var k=[],m=0,l=0,o=0,n=0,g=0,h=c.length,b,d,e,a;if(h&&c[0][0]=="M"){m=+c[0][1];l=+c[0][2];o=m;n=l;g++;k[0]=["M",m,l]}for(;g<h;g++){b=k[g]=[];d=c[g];if(d[0]!=d[0].toUpperCase()){b[0]=d[0].toUpperCase();switch(b[0]){case"A":b[1]=d[1];b[2]=d[2];b[3]=d[3];b[4]=d[4];b[5]=d[5];b[6]=+(d[6]+m);b[7]=+(d[7]+l);break;case"V":b[1]=+d[1]+l;break;case"H":b[1]=+d[1]+m;break;case"M":o=+d[1]+m;n=+d[2]+l;default:e=1;a=d.length;for(;e<a;e++){b[e]=+d[e]+((e%2)?m:l)}}}else{e=0;a=d.length;for(;e<a;e++){k[g][e]=d[e]}}switch(b[0]){case"Z":m=o;l=n;break;case"H":m=b[1];break;case"V":l=b[1];break;case"M":d=k[g];a=d.length;o=d[a-2];n=d[a-1];default:d=k[g];a=d.length;m=d[a-2];l=d[a-1]}}k.toString=this.path2string;return k},interpolatePaths:function(r,l){var j=this,d=j.pathToAbsolute(r),m=j.pathToAbsolute(l),n={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},a={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},b=function(p,s){if(p[s].length>7){p[s].shift();var t=p[s];while(t.length){Ext.Array.splice(p,s++,0,["C"].concat(Ext.Array.splice(t,0,6)))}Ext.Array.erase(p,s,1);o=Math.max(d.length,m.length||0)}},c=function(v,u,s,p,t){if(v&&u&&v[t][0]=="M"&&u[t][0]!="M"){Ext.Array.splice(u,t,0,["M",p.x,p.y]);s.bx=0;s.by=0;s.x=v[t][1];s.y=v[t][2];o=Math.max(d.length,m.length||0)}},h,o,g,q,e,k;for(h=0,o=Math.max(d.length,m.length||0);h<o;h++){d[h]=j.command2curve(d[h],n);b(d,h);(m[h]=j.command2curve(m[h],a));b(m,h);c(d,m,n,a,h);c(m,d,a,n,h);g=d[h];q=m[h];e=g.length;k=q.length;n.x=g[e-2];n.y=g[e-1];n.bx=parseFloat(g[e-4])||n.x;n.by=parseFloat(g[e-3])||n.y;a.bx=(parseFloat(q[k-4])||a.x);a.by=(parseFloat(q[k-3])||a.y);a.x=q[k-2];a.y=q[k-1]}return[d,m]},command2curve:function(c,b){var a=this;if(!c){return["C",b.x,b.y,b.x,b.y,b.x,b.y]}if(c[0]!="T"&&c[0]!="Q"){b.qx=b.qy=null}switch(c[0]){case"M":b.X=c[1];b.Y=c[2];break;case"A":c=["C"].concat(a.arc2curve.apply(a,[b.x,b.y].concat(c.slice(1))));break;case"S":c=["C",b.x+(b.x-(b.bx||b.x)),b.y+(b.y-(b.by||b.y))].concat(c.slice(1));break;case"T":b.qx=b.x+(b.x-(b.qx||b.x));b.qy=b.y+(b.y-(b.qy||b.y));c=["C"].concat(a.quadratic2curve(b.x,b.y,b.qx,b.qy,c[1],c[2]));break;case"Q":b.qx=c[1];b.qy=c[2];c=["C"].concat(a.quadratic2curve(b.x,b.y,c[1],c[2],c[3],c[4]));break;case"L":c=["C"].concat(b.x,b.y,c[1],c[2],c[1],c[2]);break;case"H":c=["C"].concat(b.x,b.y,c[1],b.y,c[1],b.y);break;case"V":c=["C"].concat(b.x,b.y,b.x,c[1],b.x,c[1]);break;case"Z":c=["C"].concat(b.x,b.y,b.X,b.Y,b.X,b.Y);break}return c},quadratic2curve:function(b,d,h,e,a,c){var g=1/3,j=2/3;return[g*b+j*h,g*d+j*e,g*a+j*h,g*c+j*e,a,c]},rotate:function(b,h,a){var d=Math.cos(a),c=Math.sin(a),g=b*d-h*c,e=b*c+h*d;return{x:g,y:e}},arc2curve:function(s,af,H,F,z,n,g,r,ae,A){var v=this,d=Math.PI,w=v.radian,E=d*120/180,b=w*(+z||0),M=[],J=Math,T=J.cos,a=J.sin,V=J.sqrt,u=J.abs,o=J.asin,I,O,N,aa,c,R,U,C,B,m,l,q,j,ad,e,ac,P,S,Q,ab,Z,Y,W,L,X,K,D,G,p;if(!A){I=v.rotate(s,af,-b);s=I.x;af=I.y;I=v.rotate(r,ae,-b);r=I.x;ae=I.y;O=(s-r)/2;N=(af-ae)/2;aa=(O*O)/(H*H)+(N*N)/(F*F);if(aa>1){aa=V(aa);H=aa*H;F=aa*F}c=H*H;R=F*F;U=(n==g?-1:1)*V(u((c*R-c*N*N-R*O*O)/(c*N*N+R*O*O)));C=U*H*N/F+(s+r)/2;B=U*-F*O/H+(af+ae)/2;m=o(((af-B)/F).toFixed(7));l=o(((ae-B)/F).toFixed(7));m=s<C?d-m:m;l=r<C?d-l:l;if(m<0){m=d*2+m}if(l<0){l=d*2+l}if(g&&m>l){m=m-d*2}if(!g&&l>m){l=l-d*2}}else{m=A[0];l=A[1];C=A[2];B=A[3]}q=l-m;if(u(q)>E){D=l;G=r;p=ae;l=m+E*(g&&l>m?1:-1);r=C+H*T(l);ae=B+F*a(l);M=v.arc2curve(r,ae,H,F,z,0,g,G,p,[l,D,C,B])}q=l-m;j=T(m);ad=a(m);e=T(l);ac=a(l);P=J.tan(q/4);S=4/3*H*P;Q=4/3*F*P;ab=[s,af];Z=[s+S*ad,af-Q*j];Y=[r+S*ac,ae-Q*e];W=[r,ae];Z[0]=2*ab[0]-Z[0];Z[1]=2*ab[1]-Z[1];if(A){return[Z,Y,W].concat(M)}else{M=[Z,Y,W].concat(M).join().split(",");L=[];K=M.length;for(X=0;X<K;X++){L[X]=X%2?v.rotate(M[X-1],M[X],b).y:v.rotate(M[X],M[X+1],b).x}return L}}},0,0,0,0,0,0,[Ext.fx,"DrawPath"],0));(Ext.cmd.derive("Ext.fx.PropertyHandler",Ext.Base,{statics:{defaultHandler:{pixelDefaultsRE:/width|height|top$|bottom$|left$|right$/i,unitRE:/^(-?\d*\.?\d*){1}(em|ex|px|in|cm|mm|pt|pc|%)*$/,scrollRE:/^scroll/i,computeDelta:function(k,c,a,g,j){a=(typeof a=="number")?a:1;var h=this.unitRE,d=h.exec(k),b,e;if(d){k=d[1];e=d[2];if(!this.scrollRE.test(j)&&!e&&this.pixelDefaultsRE.test(j)){e="px"}}k=+k||0;d=h.exec(c);if(d){c=d[1];e=d[2]||e}c=+c||0;b=(g!=null)?g:k;return{from:k,delta:(c-b)*a,units:e}},get:function(o,b,a,n,k){var m=o.length,d=[],e,h,l,c,g;for(e=0;e<m;e++){if(n){h=n[e][1].from}if(Ext.isArray(o[e][1])&&Ext.isArray(b)){l=[];c=0;g=o[e][1].length;for(;c<g;c++){l.push(this.computeDelta(o[e][1][c],b[c],a,h,k))}d.push([o[e][0],l])}else{d.push([o[e][0],this.computeDelta(o[e][1],b,a,h,k)])}}return d},set:function(l,g){var h=l.length,c=[],d,a,k,e,b;for(d=0;d<h;d++){a=l[d][1];if(Ext.isArray(a)){k=[];b=0;e=a.length;for(;b<e;b++){k.push(a[b].from+a[b].delta*g+(a[b].units||0))}c.push([l[d][0],k])}else{c.push([l[d][0],a.from+a.delta*g+(a.units||0)])}}return c}},stringHandler:{computeDelta:function(e,b,d,c,a){return{from:e,delta:b}},get:function(o,b,a,n,k){var m=o.length,d=[],e,h,l,c,g;for(e=0;e<m;e++){d.push([o[e][0],this.computeDelta(o[e][1],b,a,h,k)])}return d},set:function(l,g){var h=l.length,c=[],d,a,k,e,b;for(d=0;d<h;d++){a=l[d][1];c.push([l[d][0],a.delta])}return c}},color:{rgbRE:/^rgb\(([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\)$/i,hexRE:/^#?([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})$/i,hex3RE:/^#?([0-9A-F]{1})([0-9A-F]{1})([0-9A-F]{1})$/i,parseColor:function(e,a){a=(typeof a=="number")?a:1;var g=false,c=[this.hexRE,this.rgbRE,this.hex3RE],d=c.length,j,b,k,h;for(h=0;h<d;h++){k=c[h];b=(h%2===0)?16:10;j=k.exec(e);if(j&&j.length===4){if(h===2){j[1]+=j[1];j[2]+=j[2];j[3]+=j[3]}g={red:parseInt(j[1],b),green:parseInt(j[2],b),blue:parseInt(j[3],b)};break}}return g||e},computeDelta:function(h,a,e,c){h=this.parseColor(h);a=this.parseColor(a,e);var g=c?c:h,b=typeof g,d=typeof a;if(b=="string"||b=="undefined"||d=="string"||d=="undefined"){return a||g}return{from:h,delta:{red:Math.round((a.red-g.red)*e),green:Math.round((a.green-g.green)*e),blue:Math.round((a.blue-g.blue)*e)}}},get:function(j,a,g,d){var h=j.length,c=[],e,b;for(e=0;e<h;e++){if(d){b=d[e][1].from}c.push([j[e][0],this.computeDelta(j[e][1],a,g,b)])}return c},set:function(k,e){var g=k.length,c=[],d,b,a,h,j;for(d=0;d<g;d++){b=k[d][1];if(b){h=b.from;j=b.delta;b=(typeof b=="object"&&"red" in b)?"rgb("+b.red+", "+b.green+", "+b.blue+")":b;b=(typeof b=="object"&&b.length)?b[0]:b;if(typeof b=="undefined"){return[]}a=typeof b=="string"?b:"rgb("+[(h.red+Math.round(j.red*e))%256,(h.green+Math.round(j.green*e))%256,(h.blue+Math.round(j.blue*e))%256].join(",")+")";c.push([k[d][0],a])}}return c}},object:{interpolate:function(d,b){b=(typeof b=="number")?b:1;var a={},c;for(c in d){a[c]=parseFloat(d[c])*b}return a},computeDelta:function(h,a,c,b){h=this.interpolate(h);a=this.interpolate(a,c);var g=b?b:h,e={},d;for(d in a){e[d]=a[d]-g[d]}return{from:h,delta:e}},get:function(j,a,g,d){var h=j.length,c=[],e,b;for(e=0;e<h;e++){if(d){b=d[e][1].from}c.push([j[e][0],this.computeDelta(j[e][1],a,g,b)])}return c},set:function(l,g){var h=l.length,c=[],e={},d,j,k,b,a;for(d=0;d<h;d++){b=l[d][1];j=b.from;k=b.delta;for(a in j){e[a]=j[a]+k[a]*g}c.push([l[d][0],e])}return c}},path:{computeDelta:function(e,a,c,b){c=(typeof c=="number")?c:1;var d;e=+e||0;a=+a||0;d=(b!=null)?b:e;return{from:e,delta:(a-d)*c}},forcePath:function(a){if(!Ext.isArray(a)&&!Ext.isArray(a[0])){a=Ext.fx.DrawPath.parsePathString(a)}return a},get:function(b,l,a,q){var c=this.forcePath(l),n=[],s=b.length,d,h,o,g,p,m,e,t,r;for(o=0;o<s;o++){r=this.forcePath(b[o][1]);g=Ext.fx.DrawPath.interpolatePaths(r,c);r=g[0];c=g[1];d=r.length;t=[];for(m=0;m<d;m++){g=[r[m][0]];h=r[m].length;for(e=1;e<h;e++){p=q&&q[0][1][m][e].from;g.push(this.computeDelta(r[m][e],c[m][e],a,p))}t.push(g)}n.push([b[o][0],t])}return n},set:function(p,n){var o=p.length,e=[],h,g,d,l,m,c,a,b;for(h=0;h<o;h++){c=p[h][1];l=[];a=c.length;for(g=0;g<a;g++){m=[c[g][0]];b=c[g].length;for(d=1;d<b;d++){m.push(c[g][d].from+c[g][d].delta*n)}l.push(m.join(","))}e.push([p[h][0],l.join(",")])}return e}}}},0,0,0,0,0,0,[Ext.fx,"PropertyHandler"],function(){var b=["outlineColor","backgroundColor","borderColor","borderTopColor","borderRightColor","borderBottomColor","borderLeftColor","fill","stroke"],c=b.length,a=0,d;for(;a<c;a++){d=b[a];this[d]=this.color}b=["cursor"];c=b.length;a=0;for(;a<c;a++){d=b[a];this[d]=this.stringHandler}}));(Ext.cmd.derive("Ext.fx.Anim",Ext.Base,{isAnimation:true,duration:250,delay:0,delayStart:0,dynamic:false,easing:"ease",damper:1,bezierRE:/^(?:cubic-)?bezier\(([^,]+),([^,]+),([^,]+),([^\)]+)\)/,reverse:false,running:false,paused:false,iterations:1,autoEnd:false,alternate:false,currentIteration:0,startTime:0,frameCount:0,constructor:function(a){var b=this,c;a=a||{};if(a.keyframes){return new Ext.fx.Animator(a)}Ext.apply(b,a);if(b.from===undefined){b.from={}}b.propHandlers={};b.config=a;b.target=Ext.fx.Manager.createTarget(b.target);b.easingFn=Ext.fx.Easing[b.easing];b.target.dynamic=b.dynamic;if(!b.easingFn){b.easingFn=String(b.easing).match(b.bezierRE);if(b.easingFn&&b.easingFn.length==5){c=b.easingFn;b.easingFn=Ext.fx.CubicBezier.cubicBezier(+c[1],+c[2],+c[3],+c[4])}}b.id=Ext.id(null,"ext-anim-");b.mixins.observable.constructor.call(b);Ext.fx.Manager.addAnim(b);if(a.autoEnd){b.running=true;b.jumpToEnd()}},setAttr:function(a,b){return Ext.fx.Manager.items.get(this.id).setAttr(this.target,a,b)},initAttrs:function(){var e=this,h=e.from,j=e.to,g=e.initialFrom||{},c={},a,b,k,d;for(d in j){if(j.hasOwnProperty(d)){a=e.target.getAttr(d,h[d]);b=j[d];if(!Ext.fx.PropertyHandler[d]){if(Ext.isObject(b)){k=e.propHandlers[d]=Ext.fx.PropertyHandler.object}else{k=e.propHandlers[d]=Ext.fx.PropertyHandler.defaultHandler}}else{k=e.propHandlers[d]=Ext.fx.PropertyHandler[d]}c[d]=k.get(a,b,e.damper,g[d],d)}}e.currentAttrs=c},start:function(d){var e=this,c=e.delay,b=e.delayStart,a;if(c){if(!b){e.delayStart=d;return}else{a=d-b;if(a<c){return}else{d=new Date(b.getTime()+c)}}}if(e.fireEvent("beforeanimate",e)!==false){e.startTime=d;if(!e.paused&&!e.currentAttrs){e.initAttrs()}e.running=true;e.frameCount=0}},jumpToEnd:function(){var a=this;if(!a.endWasCalled){if(!a.currentAttrs){a.initAttrs()}Ext.fx.Manager.jumpToEnd(a);a.end()}},runAnim:function(m){var j=this,l=j.currentAttrs,d=j.duration,c=j.easingFn,b=j.propHandlers,g={},h,k,e,a;if(m>=d){m=d;a=true}if(j.reverse){m=d-m}for(e in l){if(l.hasOwnProperty(e)){k=l[e];h=a?1:c(m/d);g[e]=b[e].set(k,h)}}j.frameCount++;return g},lastFrame:function(){var c=this,a=c.iterations,b=c.currentIteration;b++;if(b<a){if(c.alternate){c.reverse=!c.reverse}c.startTime=new Date();c.currentIteration=b;c.paused=false}else{c.currentIteration=0;c.end();c.fireEvent("lastframe",c,c.startTime)}},endWasCalled:0,end:function(){var a=this;if(a.endWasCalled++){return}a.startTime=0;a.paused=false;a.running=false;Ext.fx.Manager.removeAnim(a);a.fireEvent("afteranimate",a,a.startTime);Ext.callback(a.callback,a.scope,[a,a.startTime]);if(a.remove){a.target.destroy()}},isReady:function(){return this.paused===false&&this.running===false&&this.iterations>0},isRunning:function(){return this.paused===false&&this.running===true&&this.isAnimator!==true}},1,0,0,0,0,[["observable",Ext.util.Observable]],[Ext.fx,"Anim"],0));Ext.enableFx=true;(Ext.cmd.derive("Ext.util.Animate",Ext.Base,{mixinId:"animate",isAnimate:true,animate:function(a){var b=this;if(Ext.fx.Manager.hasFxBlock(b.id)){return b}Ext.fx.Manager.queueFx(new Ext.fx.Anim(b.anim(a)));return this},anim:function(a){if(!Ext.isObject(a)){return(a)?{}:false}var b=this;if(a.stopAnimation){b.stopAnimation()}Ext.applyIf(a,Ext.fx.Manager.getFxDefaults(b.id));return Ext.apply({target:b,paused:true},a)},getAnimationProps:function(){var b=this,a=b.layout;return a&&a.animate?a.animate:{}},stopFx:Ext.Function.alias(Ext.util.Animate,"stopAnimation"),stopAnimation:function(){Ext.fx.Manager.stopAnimation(this.id);return this},syncFx:function(){Ext.fx.Manager.setFxDefaults(this.id,{concurrent:true});return this},sequenceFx:function(){Ext.fx.Manager.setFxDefaults(this.id,{concurrent:false});return this},hasActiveFx:Ext.Function.alias(Ext.util.Animate,"getActiveAnimation"),getActiveAnimation:function(){return Ext.fx.Manager.getActiveAnimation(this.id)}},0,0,0,0,0,0,[Ext.util,"Animate"],0));(Ext.cmd.derive("Ext.dom.GarbageCollector",Ext.Base,{singleton:true,interval:30000,constructor:function(){var a=this;a.collect=Ext.Function.bind(a.collect,a);a.resume()},collect:function(){var e=this,b=Ext.cache,a,g,d,c;if(!Ext.enableGarbageCollector){e.pause()}else{for(a in b){if(!b.hasOwnProperty(a)){continue}d=b[a];if(d.skipGarbageCollection){continue}g=d.dom;if(Ext.isGarbage(g)){d.clearListeners();delete b[a]}}if(Ext.isIE9m){c={};for(a in b){if(b.hasOwnProperty(a)){c[a]=b[a]}}b=Ext.cache=c}e.lastTime=Ext.now()}},pause:function(){clearTimeout(this.timerId)},resume:function(){var a=this,b=a.lastTime;if(b&&(Ext.now()-b>a.interval)){a.collect()}a.timerId=setInterval(a.collect,a.interval)}},1,0,0,0,0,0,[Ext.dom,"GarbageCollector"],0));Ext.define("Ext.overrides.dom.Element",(function(){var Element,WIN=window,DOC=document,HIDDEN="hidden",ISCLIPPED="isClipped",OVERFLOW="overflow",OVERFLOWX="overflow-x",OVERFLOWY="overflow-y",ORIGINALCLIP="originalClip",HEIGHT="height",WIDTH="width",VISIBILITY="visibility",DISPLAY="display",NONE="none",HIDDEN="hidden",OFFSETS="offsets",ORIGINALDISPLAY="originalDisplay",VISMODE="visibilityMode",ISVISIBLE="isVisible",OFFSETCLASS=Ext.baseCSSPrefix+"hidden-offsets",boxMarkup=['<div class="{0}-tl" role="presentation">','<div class="{0}-tr" role="presentation">','<div class="{0}-tc" role="presentation"></div>',"</div>","</div>",'<div class="{0}-ml" role="presentation">','<div class="{0}-mr" role="presentation">','<div class="{0}-mc" role="presentation"></div>',"</div>","</div>",'<div class="{0}-bl" role="presentation">','<div class="{0}-br" role="presentation">','<div class="{0}-bc" role="presentation"></div>',"</div>","</div>"].join(""),scriptTagRe=/(?:<script([^>]*)?>)((\n|\r|.)*?)(?:<\/script>)/ig,replaceScriptTagRe=/(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)/ig,srcRe=/\ssrc=([\'\"])(.*?)\1/i,focusRe=/^a|button|embed|iframe|input|object|select|textarea$/i,nonSpaceRe=/\S/,typeRe=/\stype=([\'\"])(.*?)\1/i,msRe=/^-ms-/,camelRe=/(-[a-z])/gi,camelReplaceFn=function(m,a){return a.charAt(1).toUpperCase()},XMASKED=Ext.baseCSSPrefix+"masked",XMASKEDRELATIVE=Ext.baseCSSPrefix+"masked-relative",EXTELMASKMSG=Ext.baseCSSPrefix+"mask-msg",mouseEnterLeaveRe=/^(?:mouseenter|mouseleave)$/,bodyRe=/^body/i,scrollFly,propertyCache={},getDisplay=function(el){var data=el.getData(),display=data[ORIGINALDISPLAY];if(display===undefined){data[ORIGINALDISPLAY]=display=""}return display},getVisMode=function(el){var data=el.getData(),visMode=data[VISMODE];if(visMode===undefined){data[VISMODE]=visMode=Element.VISIBILITY}return visMode},garbageBin,emptyRange=DOC.createRange?DOC.createRange():null;return{override:"Ext.dom.Element",mixins:["Ext.util.Animate"],skipGarbageCollection:false,_init:function(E){Element=E},statics:{selectableCls:Ext.baseCSSPrefix+"selectable",unselectableCls:Ext.baseCSSPrefix+"unselectable",normalize:function(prop){if(prop==="float"){prop=Ext.supports.Float?"cssFloat":"styleFloat"}return propertyCache[prop]||(propertyCache[prop]=prop.replace(msRe,"ms-").replace(camelRe,camelReplaceFn))},getViewportHeight:function(){return Ext.isIE9m?DOC.documentElement.clientHeight:WIN.innerHeight},getViewportWidth:function(){return(!Ext.isStrict&&!Ext.isOpera)?document.body.clientWidth:Ext.isIE9m?DOC.documentElement.clientWidth:WIN.innerWidth},addListener:function(element,eventName,handler){element=Ext.getDom(element);if(element.addEventListener){element.addEventListener(eventName,handler,false)}else{element.attachEvent("on"+eventName,handler)}}},addClsOnClick:function(className,testFn,scope){var me=this,dom=me.dom,hasTest=Ext.isFunction(testFn);me.on("mousedown",function(){if(hasTest&&testFn.call(scope||me,me)===false){return false}Ext.fly(dom).addCls(className);var d=Ext.getDoc(),fn=function(){Ext.fly(dom).removeCls(className);d.removeListener("mouseup",fn)};d.on("mouseup",fn)});return me},addClsOnFocus:function(className,testFn,scope){var me=this,dom=me.dom,hasTest=Ext.isFunction(testFn);me.on("focus",function(){if(hasTest&&testFn.call(scope||me,me)===false){return false}Ext.fly(dom).addCls(className)});me.on("blur",function(){Ext.fly(dom).removeCls(className)});return me},addClsOnOver:function(className,testFn,scope){var me=this,dom=me.dom,hasTest=Ext.isFunction(testFn);me.hover(function(){if(hasTest&&testFn.call(scope||me,me)===false){return}Ext.fly(dom).addCls(className)},function(){Ext.fly(dom).removeCls(className)});return me},addKeyListener:function(key,fn,scope){var config;if(typeof key!=="object"||Ext.isArray(key)){config={target:this,key:key,fn:fn,scope:scope}}else{config={target:this,key:key.key,shift:key.shift,ctrl:key.ctrl,alt:key.alt,fn:fn,scope:scope}}return new Ext.util.KeyMap(config)},addKeyMap:function(config){return new Ext.util.KeyMap(Ext.apply({target:this},config))},anchorAnimX:function(anchor){var xName=(anchor==="l")?"right":"left";this.dom.style[xName]="0px"},anim:function(config){if(!Ext.isObject(config)){return(config)?{}:false}var me=this,duration=config.duration||Ext.fx.Anim.prototype.duration,easing=config.easing||"ease",animConfig;if(config.stopAnimation){me.stopAnimation()}Ext.applyIf(config,Ext.fx.Manager.getFxDefaults(me.id));Ext.fx.Manager.setFxDefaults(me.id,{delay:0});animConfig={target:me.dom,remove:config.remove,alternate:config.alternate||false,duration:duration,easing:easing,callback:config.callback,listeners:config.listeners,iterations:config.iterations||1,scope:config.scope,block:config.block,concurrent:config.concurrent,delay:config.delay||0,paused:true,keyframes:config.keyframes,from:config.from||{},to:Ext.apply({},config)};Ext.apply(animConfig.to,config.to);delete animConfig.to.to;delete animConfig.to.from;delete animConfig.to.remove;delete animConfig.to.alternate;delete animConfig.to.keyframes;delete animConfig.to.iterations;delete animConfig.to.listeners;delete animConfig.to.target;delete animConfig.to.paused;delete animConfig.to.callback;delete animConfig.to.scope;delete animConfig.to.duration;delete animConfig.to.easing;delete animConfig.to.concurrent;delete animConfig.to.block;delete animConfig.to.stopAnimation;delete animConfig.to.delay;return animConfig},animate:function(config){var me=this,animId=me.dom.id||Ext.id(me.dom),listeners,anim,end;if(!Ext.fx.Manager.hasFxBlock(animId)){if(config.listeners){listeners=config.listeners;delete config.listeners}if(config.internalListeners){config.listeners=config.internalListeners;delete config.internalListeners}end=config.autoEnd;delete config.autoEnd;anim=new Ext.fx.Anim(me.anim(config));if(listeners){anim.on(listeners)}Ext.fx.Manager.queueFx(anim);if(end){anim.jumpToEnd()}}return me},boxWrap:function(cls){cls=cls||Ext.baseCSSPrefix+"box";var el=Ext.get(this.insertHtml("beforeBegin","<div class='"+cls+"' role='presentation'>"+Ext.String.format(boxMarkup,cls)+"</div>"));el.selectNode("."+cls+"-mc").appendChild(this.dom);return el},cacheScrollValues:function(){var me=this,scrollValues=[],scrolledDescendants=[],descendants,descendant,i,len;scrollFly=scrollFly||new Ext.dom.Fly();descendants=me.query("*");for(i=0,len=descendants.length;i<len;i++){descendant=descendants[i];if(descendant.scrollTop>0||descendant.scrollLeft!==0){scrolledDescendants.push(descendant);scrollValues.push(scrollFly.attach(descendant).getScroll())}}return function(){var scroll,i,len;for(i=0,len=scrolledDescendants.length;i<len;i++){scroll=scrollValues[i];scrollFly.attach(scrolledDescendants[i]);scrollFly.setScrollLeft(scroll.left);scrollFly.setScrollTop(scroll.top)}}},clean:function(forceReclean){var me=this,dom=me.dom,data=me.getData(),n=dom.firstChild,ni=-1,nx;if(data.isCleaned&&forceReclean!==true){return me}while(n){nx=n.nextSibling;if(n.nodeType===3){if(!(nonSpaceRe.test(n.nodeValue))){dom.removeChild(n)}else{if(nx&&nx.nodeType===3){n.appendData(Ext.String.trim(nx.data));dom.removeChild(nx);nx=n.nextSibling;n.nodeIndex=++ni}}}else{Ext.fly(n,"_clean").clean();n.nodeIndex=++ni}n=nx}data.isCleaned=true;return me},empty:emptyRange?function(){var dom=this.dom;if(dom.firstChild){emptyRange.setStartBefore(dom.firstChild);emptyRange.setEndAfter(dom.lastChild);emptyRange.deleteContents()}}:function(){var dom=this.dom;while(dom.lastChild){dom.removeChild(dom.lastChild)}},clearListeners:function(){this.removeAnchor();this.callParent()},clearPositioning:function(value){value=value||"";return this.setStyle({left:value,right:value,top:value,bottom:value,"z-index":"",position:"static"})},createProxy:function(config,renderTo,matchBox){config=(typeof config==="object")?config:{tag:"div",role:"presentation",cls:config};var me=this,proxy=renderTo?Ext.DomHelper.append(renderTo,config,true):Ext.DomHelper.insertBefore(me.dom,config,true);proxy.setVisibilityMode(Element.DISPLAY);proxy.hide();if(matchBox&&me.setBox&&me.getBox){proxy.setBox(me.getBox())}return proxy},clearOpacity:function(){return this.setOpacity("")},clip:function(){var me=this,data=me.getData(),style;if(!data[ISCLIPPED]){data[ISCLIPPED]=true;style=me.getStyle([OVERFLOW,OVERFLOWX,OVERFLOWY]);data[ORIGINALCLIP]={o:style[OVERFLOW],x:style[OVERFLOWX],y:style[OVERFLOWY]};me.setStyle(OVERFLOW,HIDDEN);me.setStyle(OVERFLOWX,HIDDEN);me.setStyle(OVERFLOWY,HIDDEN)}return me},constrainScrollLeft:function(left){var dom=this.dom;return Math.max(Math.min(left,dom.scrollWidth-dom.clientWidth),0)},constrainScrollTop:function(top){var dom=this.dom;return Math.max(Math.min(top,dom.scrollHeight-dom.clientHeight),0)},destroy:function(){var me=this,dom=me.dom;if(dom&&me.isAnimate){me.stopAnimation()}me.callParent();if(dom&&Ext.isIE8){garbageBin=garbageBin||DOC.createElement("div");garbageBin.appendChild(dom);garbageBin.innerHTML=""}},doScrollIntoView:function(container,hscroll,animate,highlight,getScrollX,scrollTo){scrollFly=scrollFly||new Ext.dom.Fly();var me=this,dom=me.dom,scrollX=scrollFly.attach(container)[getScrollX](),scrollY=container.scrollTop,position=me.getScrollIntoViewXY(container,scrollX,scrollY),newScrollX=position.x,newScrollY=position.y;if(highlight){if(animate){animate=Ext.apply({listeners:{afteranimate:function(){scrollFly.attach(dom).highlight()}}},animate)}else{scrollFly.attach(dom).highlight()}}if(newScrollY!==scrollY){scrollFly.attach(container).scrollTo("top",newScrollY,animate)}if(hscroll!==false&&(newScrollX!==scrollX)){scrollFly.attach(container)[scrollTo]("left",newScrollX,animate)}return me},enableDisplayMode:function(display){var me=this;me.setVisibilityMode(Element.DISPLAY);if(display!==undefined){me.getData()[ORIGINALDISPLAY]=display}return me},fadeIn:function(o){var me=this,dom=me.dom;me.animate(Ext.apply({},o,{opacity:1,internalListeners:{beforeanimate:function(anim){var el=Ext.fly(dom,"_anim");if(el.isStyle("display","none")){el.setDisplayed("")}else{el.show()}}}}));return this},fadeOut:function(o){var me=this,dom=me.dom;o=Ext.apply({opacity:0,internalListeners:{afteranimate:function(anim){if(dom&&anim.to.opacity===0){var el=Ext.fly(dom,"_anim");if(o.useDisplay){el.setDisplayed(false)}else{el.hide()}}}}},o);me.animate(o);return me},fixDisplay:function(){var me=this;if(me.isStyle(DISPLAY,NONE)){me.setStyle(VISIBILITY,HIDDEN);me.setStyle(DISPLAY,getDisplay(me));if(me.isStyle(DISPLAY,NONE)){me.setStyle(DISPLAY,"block")}}},frame:function(color,count,obj){var me=this,dom=me.dom,beforeAnim;color=color||"#C3DAF9";count=count||1;obj=obj||{};beforeAnim=function(){var el=Ext.fly(dom,"_anim"),animScope=this,box,proxy,proxyAnim;el.show();box=el.getBox();proxy=Ext.getBody().createChild({role:"presentation",id:el.dom.id+"-anim-proxy",style:{position:"absolute","pointer-events":"none","z-index":35000,border:"0px solid "+color}});proxyAnim=new Ext.fx.Anim({target:proxy,duration:obj.duration||1000,iterations:count,from:{top:box.y,left:box.x,borderWidth:0,opacity:1,height:box.height,width:box.width},to:{top:box.y-20,left:box.x-20,borderWidth:10,opacity:0,height:box.height+40,width:box.width+40}});proxyAnim.on("afteranimate",function(){proxy.destroy();animScope.end()})};me.animate({duration:(Math.max(obj.duration,500)*2)||2000,listeners:{beforeanimate:{fn:beforeAnim}},callback:obj.callback,scope:obj.scope});return me},getColor:function(attr,defaultValue,prefix){var v=this.getStyle(attr),color=prefix||prefix===""?prefix:"#",h,len,i=0;if(!v||(/transparent|inherit/.test(v))){return defaultValue}if(/^r/.test(v)){v=v.slice(4,v.length-1).split(",");len=v.length;for(;i<len;i++){h=parseInt(v[i],10);color+=(h<16?"0":"")+h.toString(16)}}else{v=v.replace("#","");color+=v.length===3?v.replace(/^(\w)(\w)(\w)$/,"$1$1$2$2$3$3"):v}return(color.length>5?color.toLowerCase():defaultValue)},getLoader:function(){var me=this,data=me.getData(),loader=data.loader;if(!loader){data.loader=loader=new Ext.ElementLoader({target:me})}return loader},getPositioning:function(autoPx){var styles=this.getStyle(["left","top","position","z-index"]),dom=this.dom;if(autoPx){if(styles.left==="auto"){styles.left=dom.offsetLeft+"px"}if(styles.top==="auto"){styles.top=dom.offsetTop+"px"}}return styles},getScroll:function(){var me=this,dom=me.dom,docElement=DOC.documentElement,left,top,body=document.body;if(dom===DOC||dom===body){left=docElement.scrollLeft||(body?body.scrollLeft:0);top=docElement.scrollTop||(body?body.scrollTop:0)}else{left=dom.scrollLeft;top=dom.scrollTop}return{left:left,top:top}},getScrollIntoViewXY:function(container,scrollX,scrollY){var me=this,dom=me.dom,ct=Ext.getDom(container),offsets=me.getOffsetsTo(ct),width=dom.offsetWidth,height=dom.offsetHeight,left=offsets[0]+scrollX,top=offsets[1]+scrollY,bottom=top+height,right=left+width,ctClientHeight=ct.clientHeight,ctClientWidth=ct.clientWidth,ctBottom=scrollY+ctClientHeight,ctRight=scrollX+ctClientWidth,scrollX,scrollY;if(height>ctClientHeight||top<scrollY){scrollY=top}else{if(bottom>ctBottom){scrollY=bottom-ctClientHeight}}if(width>ctClientWidth||left<scrollX){scrollX=left}else{if(right>ctRight){scrollX=right-ctClientWidth}}return{x:scrollX,y:scrollY}},getScrollLeft:function(){var dom=this.dom;if(dom===DOC||dom===document.body){return this.getScroll().left}else{return dom.scrollLeft}},getScrollTop:function(){var dom=this.dom;if(dom===DOC||dom===document.body){return this.getScroll().top}else{return dom.scrollTop}},getXY:function(){var xy=this.callParent(),scroll=Ext.getDoc().getScroll();xy[0]+=scroll.left;xy[1]+=scroll.top;return xy},ghost:function(anchor,obj){var me=this,dom=me.dom,beforeAnim;anchor=anchor||"b";beforeAnim=function(){var el=Ext.fly(dom,"_anim"),width=el.getWidth(),height=el.getHeight(),xy=el.getXY(),position=el.getPositioning(),to={opacity:0};switch(anchor){case"t":to.y=xy[1]-height;break;case"l":to.x=xy[0]-width;break;case"r":to.x=xy[0]+width;break;case"b":to.y=xy[1]+height;break;case"tl":to.x=xy[0]-width;to.y=xy[1]-height;break;case"bl":to.x=xy[0]-width;to.y=xy[1]+height;break;case"br":to.x=xy[0]+width;to.y=xy[1]+height;break;case"tr":to.x=xy[0]+width;to.y=xy[1]-height;break}this.to=to;this.on("afteranimate",function(){var el=Ext.fly(dom,"_anim");if(el){el.hide();el.clearOpacity();el.setPositioning(position)}})};me.animate(Ext.applyIf(obj||{},{duration:500,easing:"ease-out",listeners:{beforeanimate:beforeAnim}}));return me},hide:function(animate){if(typeof animate==="string"){this.setVisible(false,animate);return this}this.setVisible(false,this.anim(animate));return this},highlight:function(color,o){var me=this,dom=me.dom,from={},restore,to,attr,lns,event,fn;o=o||{};lns=o.listeners||{};attr=o.attr||"backgroundColor";from[attr]=color||"ffff9c";if(!o.to){to={};to[attr]=o.endColor||me.getColor(attr,"ffffff","")}else{to=o.to}o.listeners=Ext.apply(Ext.apply({},lns),{beforeanimate:function(){restore=dom.style[attr];var el=Ext.fly(dom,"_anim");el.clearOpacity();el.show();event=lns.beforeanimate;if(event){fn=event.fn||event;return fn.apply(event.scope||lns.scope||WIN,arguments)}},afteranimate:function(){if(dom){dom.style[attr]=restore}event=lns.afteranimate;if(event){fn=event.fn||event;fn.apply(event.scope||lns.scope||WIN,arguments)}}});me.animate(Ext.apply({},o,{duration:1000,easing:"ease-in",from:from,to:to}));return me},hover:function(overFn,outFn,scope,options){var me=this;me.on("mouseenter",overFn,scope||me.dom,options);me.on("mouseleave",outFn,scope||me.dom,options);return me},initDD:function(group,config,overrides){var dd=new Ext.dd.DD(Ext.id(this.dom),group,config);return Ext.apply(dd,overrides)},initDDProxy:function(group,config,overrides){var dd=new Ext.dd.DDProxy(Ext.id(this.dom),group,config);return Ext.apply(dd,overrides)},initDDTarget:function(group,config,overrides){var dd=new Ext.dd.DDTarget(Ext.id(this.dom),group,config);return Ext.apply(dd,overrides)},isFocusable:function(asFocusEl){var me=this,dom=me.dom,tabIndexAttr=dom.getAttributeNode("tabIndex"),tabIndex,nodeName=dom.nodeName,canFocus=false;if(tabIndexAttr&&tabIndexAttr.specified){tabIndex=tabIndexAttr.value}if(dom&&!dom.disabled){if(tabIndex==-1){canFocus=Ext.enableFocusManager&&asFocusEl}else{if(focusRe.test(nodeName)){if((nodeName!=="a")||dom.href){canFocus=true}}else{canFocus=tabIndex!=null&&tabIndex>=0}}canFocus=canFocus&&me.isVisible(true)}return canFocus},isMasked:function(){var me=this,data=me.getData(),maskEl=data.maskEl,maskMsg=data.maskMsg,hasMask=false;if(maskEl&&maskEl.isVisible()){if(maskMsg){maskMsg.center(me)}hasMask=true}return hasMask},isScrollable:function(){var dom=this.dom;return dom.scrollHeight>dom.clientHeight||dom.scrollWidth>dom.clientWidth},load:function(options){this.getLoader().load(options);return this},mask:function(msg,msgCls,elHeight){var me=this,dom=me.dom,data=me.getData(),maskEl=data.maskEl,maskMsg=data.maskMsg;if(!(bodyRe.test(dom.tagName)&&me.getStyle("position")=="static")){me.addCls(XMASKEDRELATIVE)}if(maskEl){maskEl.destroy()}if(maskMsg){maskMsg.destroy()}Ext.DomHelper.append(dom,[{role:"presentation",cls:Ext.baseCSSPrefix+"mask",style:"top:0;left:0;"},{role:"presentation",cls:msgCls?EXTELMASKMSG+" "+msgCls:EXTELMASKMSG,cn:{tag:"div",role:"presentation",cls:Ext.baseCSSPrefix+"mask-msg-inner",cn:{tag:"div",role:"presentation",cls:Ext.baseCSSPrefix+"mask-msg-text",html:msg||""}}}]);maskMsg=Ext.get(dom.lastChild);maskEl=Ext.get(maskMsg.dom.previousSibling);data.maskMsg=maskMsg;data.maskEl=maskEl;me.addCls(XMASKED);maskEl.setDisplayed(true);if(typeof msg==="string"){maskMsg.setDisplayed(true);maskMsg.center(me)}else{maskMsg.setDisplayed(false)}if(dom===DOC.body){maskEl.addCls(Ext.baseCSSPrefix+"mask-fixed")}if(Ext.isIE9m&&dom!==DOC.body&&me.isStyle("height","auto")){maskEl.setSize(undefined,elHeight||me.getHeight())}return maskEl},monitorMouseLeave:function(delay,handler,scope){var me=this,timer,listeners={mouseleave:function(e){if(Ext.isIE9m){e.enableIEAsync()}timer=setTimeout(Ext.Function.bind(handler,scope||me,[e]),delay)},mouseenter:function(){clearTimeout(timer)}};me.on(listeners);return listeners},needsTabIndex:function(){var me=this;if(me.dom){if((me.dom.nodeName==="a")&&(!me.dom.href)){return true}return !focusRe.test(me.dom.nodeName)}},normalizeEvent:function(eventName){var fn,newName;if(!Ext.supports.MouseEnterLeave&&mouseEnterLeaveRe.test(eventName)){fn=this.normalizeWithin;newName=eventName=="mouseenter"?"mouseover":"mouseout"}else{if(eventName=="mousewheel"&&!Ext.supports.MouseWheel&&!Ext.isOpera){newName="DOMMouseScroll"}}return newName?{eventName:newName,normalizeFn:fn}:null},normalizeWithin:function(event){var parent=event.currentTarget,child=event.getRelatedTarget();if(parent&&parent.firstChild){while(child){if(child===parent){return false}child=child.parentNode;if(child&&(child.nodeType!==1)){child=null}}}return true},puff:function(obj){var me=this,dom=me.dom,beforeAnim,box=me.getBox(),originalStyles=me.getStyle(["width","height","left","right","top","bottom","position","z-index","font-size","opacity"],true);obj=Ext.applyIf(obj||{},{easing:"ease-out",duration:500,useDisplay:false});beforeAnim=function(){var el=Ext.fly(dom,"_anim");el.clearOpacity();el.show();this.to={width:box.width*2,height:box.height*2,x:box.x-(box.width/2),y:box.y-(box.height/2),opacity:0,fontSize:"200%"};this.on("afteranimate",function(){var el=Ext.fly(dom,"_anim");if(el){if(obj.useDisplay){el.setDisplayed(false)}else{el.hide()}el.setStyle(originalStyles);Ext.callback(obj.callback,obj.scope)}})};me.animate({duration:obj.duration,easing:obj.easing,listeners:{beforeanimate:{fn:beforeAnim}}});return me},scroll:function(direction,distance,animate){if(!this.isScrollable()){return false}direction=direction.charAt(0);var me=this,dom=me.dom,side=direction==="r"||direction==="l"?"left":"top",scrolled=false,currentScroll,constrainedScroll;if(direction==="l"||direction==="t"||direction==="u"){distance=-distance}if(side==="left"){currentScroll=dom.scrollLeft;constrainedScroll=me.constrainScrollLeft(currentScroll+distance)}else{currentScroll=dom.scrollTop;constrainedScroll=me.constrainScrollTop(currentScroll+distance)}if(constrainedScroll!==currentScroll){this.scrollTo(side,constrainedScroll,animate);scrolled=true}return scrolled},scrollBy:function(deltaX,deltaY,animate){var me=this,dom=me.dom;if(deltaX.length){animate=deltaY;deltaY=deltaX[1];deltaX=deltaX[0]}else{if(typeof deltaX!="number"){animate=deltaY;deltaY=deltaX.y;deltaX=deltaX.x}}if(deltaX){me.scrollTo("left",me.constrainScrollLeft(dom.scrollLeft+deltaX),animate)}if(deltaY){me.scrollTo("top",me.constrainScrollTop(dom.scrollTop+deltaY),animate)}return me},scrollChildIntoView:function(child,hscroll){scrollFly=scrollFly||new Ext.dom.Fly();scrollFly.attach(Ext.getDom(child)).scrollIntoView(this,hscroll)},scrollIntoView:function(container,hscroll,animate,highlight){container=Ext.getDom(container)||Ext.getBody().dom;return this.doScrollIntoView(container,hscroll,animate,highlight,"getScrollLeft","scrollTo")},scrollTo:function(side,value,animate){var top=/top/i.test(side),me=this,prop=top?"scrollTop":"scrollLeft",dom=me.dom,animCfg;if(!animate||!me.anim){dom[prop]=value;dom[prop]=value}else{animCfg={to:{}};animCfg.to[prop]=value;if(Ext.isObject(animate)){Ext.applyIf(animCfg,animate)}me.animate(animCfg)}return me},selectable:function(){var me=this;me.dom.unselectable="";me.removeCls(Element.unselectableCls);me.addCls(Element.selectableCls);return me},setCapture:function(){var dom=this.dom;if(Ext.isIE9m&&dom.setCapture){dom.setCapture()}},setDisplayed:function(value){if(typeof value==="boolean"){value=value?getDisplay(this):NONE}this.setStyle(DISPLAY,value);return this},setHeight:function(height,animate){var me=this;if(!animate||!me.anim){me.callParent(arguments)}else{if(!Ext.isObject(animate)){animate={}}me.animate(Ext.applyIf({to:{height:height}},animate))}return me},setHorizontal:function(){var me=this,cls=me.verticalCls;delete me.vertical;if(cls){delete me.verticalCls;me.removeCls(cls)}delete me.setWidth;delete me.setHeight;if(!Ext.isIE8){delete me.getWidth;delete me.getHeight}delete me.styleHooks},updateText:function(text){var me=this,dom,textNode;if(dom){textNode=dom.firstChild;if(!textNode||(textNode.nodeType!==3||textNode.nextSibling)){textNode=DOC.createTextNode();me.empty();dom.appendChild(textNode)}if(text){textNode.data=text}}},setHtml:function(html,loadScripts,callback){var me=this,id,dom,interval;if(!me.dom){return me}html=html||"";dom=me.dom;if(loadScripts!==true){dom.innerHTML=html;Ext.callback(callback,me);return me}id=Ext.id();html+='<span id="'+id+'" role="presentation"></span>';interval=setInterval(function(){var hd,match,attrs,srcMatch,typeMatch,el,s;if(!(el=DOC.getElementById(id))){return false}clearInterval(interval);Ext.removeNode(el);hd=Ext.getHead().dom;while((match=scriptTagRe.exec(html))){attrs=match[1];srcMatch=attrs?attrs.match(srcRe):false;if(srcMatch&&srcMatch[2]){s=DOC.createElement("script");s.src=srcMatch[2];typeMatch=attrs.match(typeRe);if(typeMatch&&typeMatch[2]){s.type=typeMatch[2]}hd.appendChild(s)}else{if(match[2]&&match[2].length>0){if(WIN.execScript){WIN.execScript(match[2])}else{WIN.eval(match[2])}}}}Ext.callback(callback,me)},20);dom.innerHTML=html.replace(replaceScriptTagRe,"");return me},setOpacity:function(opacity,animate){var me=this;if(!me.dom){return me}if(!animate||!me.anim){me.setStyle("opacity",opacity)}else{if(typeof animate!="object"){animate={duration:350,easing:"ease-in"}}me.animate(Ext.applyIf({to:{opacity:opacity}},animate))}return me},setPositioning:function(pc){return this.setStyle(pc)},setScrollLeft:function(left){this.dom.scrollLeft=left;return this},setScrollTop:function(top){this.dom.scrollTop=top;return this},setVertical:function(angle,cls){var me=this,proto=Element.prototype;me.vertical=true;if(cls){me.addCls(me.verticalCls=cls)}me.setWidth=proto.setHeight;me.setHeight=proto.setWidth;if(!Ext.isIE8){me.getWidth=proto.getHeight;me.getHeight=proto.getWidth}me.styleHooks=(angle===270)?proto.verticalStyleHooks270:proto.verticalStyleHooks90},setSize:function(width,height,animate){var me=this;if(Ext.isObject(width)){animate=height;height=width.height;width=width.width}if(!animate||!me.anim){me.dom.style.width=Element.addUnits(width);me.dom.style.height=Element.addUnits(height)}else{if(animate===true){animate={}}me.animate(Ext.applyIf({to:{width:width,height:height}},animate))}return me},setVisible:function(visible,animate){var me=this,dom=me.dom,visMode=getVisMode(me);if(typeof animate==="string"){switch(animate){case DISPLAY:visMode=Element.DISPLAY;break;case VISIBILITY:visMode=Element.VISIBILITY;break;case OFFSETS:visMode=Element.OFFSETS;break}me.setVisibilityMode(visMode);animate=false}if(!animate||!me.anim){if(visMode===Element.DISPLAY){return me.setDisplayed(visible)}else{if(visMode===Element.OFFSETS){me[visible?"removeCls":"addCls"](OFFSETCLASS)}else{if(visMode===Element.VISIBILITY){me.fixDisplay();dom.style.visibility=visible?"":HIDDEN}}}}else{if(visible){me.setOpacity(0.01);me.setVisible(true)}if(!Ext.isObject(animate)){animate={duration:350,easing:"ease-in"}}me.animate(Ext.applyIf({callback:function(){if(!visible){Ext.fly(dom).setVisible(false).setOpacity(1)}},to:{opacity:(visible)?1:0}},animate))}me.getData()[ISVISIBLE]=visible;return me},setWidth:function(width,animate){var me=this;if(!animate||!me.anim){me.callParent(arguments)}else{if(!Ext.isObject(animate)){animate={}}me.animate(Ext.applyIf({to:{width:width}},animate))}return me},setX:function(x,animate){return this.setXY([x,this.getY()],animate)},setXY:function(xy,animate){var me=this;if(!animate||!me.anim){me.callParent([xy])}else{if(!Ext.isObject(animate)){animate={}}me.animate(Ext.applyIf({to:{x:xy[0],y:xy[1]}},animate))}return this},setY:function(y,animate){return this.setXY([this.getX(),y],animate)},show:function(animate){if(typeof animate==="string"){this.setVisible(true,animate);return this}this.setVisible(true,this.anim(animate));return this},slideIn:function(anchor,obj,slideOut){var me=this,dom=me.dom,elStyle=dom.style,beforeAnim,wrapAnim,restoreScroll,wrapDomParentNode;anchor=anchor||"t";obj=obj||{};beforeAnim=function(){var animScope=this,listeners=obj.listeners,el=Ext.fly(dom,"_anim"),box,originalStyles,anim,wrap;if(!slideOut){el.fixDisplay()}box=el.getBox();if((anchor=="t"||anchor=="b")&&box.height===0){box.height=dom.scrollHeight}else{if((anchor=="l"||anchor=="r")&&box.width===0){box.width=dom.scrollWidth}}originalStyles=el.getStyle(["width","height","left","right","top","bottom","position","z-index"],true);el.setSize(box.width,box.height);if(obj.preserveScroll){restoreScroll=el.cacheScrollValues()}wrap=el.wrap({role:"presentation",id:Ext.id()+"-anim-wrap-for-"+el.dom.id,style:{visibility:slideOut?"visible":"hidden"}});wrapDomParentNode=wrap.dom.parentNode;wrap.setPositioning(el.getPositioning(true));if(wrap.isStyle("position","static")){wrap.position("relative")}el.clearPositioning("auto");wrap.clip();if(restoreScroll){restoreScroll()}el.setStyle({visibility:"",position:"absolute"});if(slideOut){wrap.setSize(box.width,box.height)}switch(anchor){case"t":anim={from:{width:box.width+"px",height:"0px"},to:{width:box.width+"px",height:box.height+"px"}};elStyle.bottom="0px";break;case"l":anim={from:{width:"0px",height:box.height+"px"},to:{width:box.width+"px",height:box.height+"px"}};me.anchorAnimX(anchor);break;case"r":anim={from:{x:box.x+box.width,width:"0px",height:box.height+"px"},to:{x:box.x,width:box.width+"px",height:box.height+"px"}};me.anchorAnimX(anchor);break;case"b":anim={from:{y:box.y+box.height,width:box.width+"px",height:"0px"},to:{y:box.y,width:box.width+"px",height:box.height+"px"}};break;case"tl":anim={from:{x:box.x,y:box.y,width:"0px",height:"0px"},to:{width:box.width+"px",height:box.height+"px"}};elStyle.bottom="0px";me.anchorAnimX("l");break;case"bl":anim={from:{y:box.y+box.height,width:"0px",height:"0px"},to:{y:box.y,width:box.width+"px",height:box.height+"px"}};me.anchorAnimX("l");break;case"br":anim={from:{x:box.x+box.width,y:box.y+box.height,width:"0px",height:"0px"},to:{x:box.x,y:box.y,width:box.width+"px",height:box.height+"px"}};me.anchorAnimX("r");break;case"tr":anim={from:{x:box.x+box.width,width:"0px",height:"0px"},to:{x:box.x,width:box.width+"px",height:box.height+"px"}};elStyle.bottom="0px";me.anchorAnimX("r");break}wrap.show();wrapAnim=Ext.apply({},obj);delete wrapAnim.listeners;wrapAnim=new Ext.fx.Anim(Ext.applyIf(wrapAnim,{target:wrap,duration:500,easing:"ease-out",from:slideOut?anim.to:anim.from,to:slideOut?anim.from:anim.to}));wrapAnim.on("afteranimate",function(){var el=Ext.fly(dom,"_anim");el.setStyle(originalStyles);if(slideOut){if(obj.useDisplay){el.setDisplayed(false)}else{el.hide()}}if(wrap.dom){if(wrap.dom.parentNode){wrap.dom.parentNode.insertBefore(el.dom,wrap.dom)}else{wrapDomParentNode.appendChild(el.dom)}wrap.destroy()}if(restoreScroll){restoreScroll()}animScope.end()});if(listeners){wrapAnim.on(listeners)}};me.animate({duration:obj.duration?Math.max(obj.duration,500)*2:1000,listeners:{beforeanimate:beforeAnim}});return me},slideOut:function(anchor,o){return this.slideIn(anchor,o,true)},swallowEvent:function(eventName,preventDefault){var me=this,e,eLen,fn=function(e){e.stopPropagation();if(preventDefault){e.preventDefault()}};if(Ext.isArray(eventName)){eLen=eventName.length;for(e=0;e<eLen;e++){me.on(eventName[e],fn)}return me}me.on(eventName,fn);return me},switchOff:function(obj){var me=this,dom=me.dom,beforeAnim;obj=Ext.applyIf(obj||{},{easing:"ease-in",duration:500,remove:false,useDisplay:false});beforeAnim=function(){var el=Ext.fly(dom,"_anim"),animScope=this,size=el.getSize(),xy=el.getXY(),keyframe,position;el.clearOpacity();el.clip();position=el.getPositioning();keyframe=new Ext.fx.Animator({target:dom,duration:obj.duration,easing:obj.easing,keyframes:{33:{opacity:0.3},66:{height:1,y:xy[1]+size.height/2},100:{width:1,x:xy[0]+size.width/2}}});keyframe.on("afteranimate",function(){var el=Ext.fly(dom,"_anim");if(obj.useDisplay){el.setDisplayed(false)}else{el.hide()}el.clearOpacity();el.setPositioning(position);el.setSize(size);animScope.end()})};me.animate({duration:(Math.max(obj.duration,500)*2),listeners:{beforeanimate:{fn:beforeAnim}},callback:obj.callback,scope:obj.scope});return me},syncContent:function(source){source=Ext.getDom(source);var sourceNodes=source.childNodes,sourceLen=sourceNodes.length,dest=this.dom,destNodes=dest.childNodes,destLen=destNodes.length,i,destNode,sourceNode,nodeType,newAttrs,attLen,attName;if(Ext.isIE9m&&dest.mergeAttributes){dest.mergeAttributes(source,true);dest.src=source.src}else{newAttrs=source.attributes;attLen=newAttrs.length;for(i=0;i<attLen;i++){attName=newAttrs[i].name;if(attName!=="id"){dest.setAttribute(attName,newAttrs[i].value)}}}if(sourceLen!==destLen){dest.innerHTML=source.innerHTML;return}for(i=0;i<sourceLen;i++){sourceNode=sourceNodes[i];destNode=destNodes[i];nodeType=sourceNode.nodeType;if(nodeType!==destNode.nodeType||(nodeType===1&&sourceNode.tagName!==destNode.tagName)){dest.innerHTML=source.innerHTML;return}if(nodeType===3){destNode.data=sourceNode.data}else{if(sourceNode.id&&destNode.id!==sourceNode.id){destNode.id=sourceNode.id}destNode.style.cssText=sourceNode.style.cssText;destNode.className=sourceNode.className;Ext.fly(destNode,"_syncContent").syncContent(sourceNode)}}},toggle:function(animate){var me=this;me.setVisible(!me.isVisible(),me.anim(animate));return me},unmask:function(){var me=this,data=me.getData(),maskEl=data.maskEl,maskMsg=data.maskMsg,style;if(maskEl){style=maskEl.dom.style;if(style.clearExpression){style.clearExpression("width");style.clearExpression("height")}if(maskEl){maskEl.destroy();delete data.maskEl}if(maskMsg){maskMsg.destroy();delete data.maskMsg}me.removeCls([XMASKED,XMASKEDRELATIVE])}},unclip:function(){var me=this,data=me.getData(),clip;if(data[ISCLIPPED]){data[ISCLIPPED]=false;clip=data[ORIGINALCLIP];if(clip.o){me.setStyle(OVERFLOW,clip.o)}if(clip.x){me.setStyle(OVERFLOWX,clip.x)}if(clip.y){me.setStyle(OVERFLOWY,clip.y)}}return me},translate:function(x,y,z){if(Ext.supports.CssTransforms&&!Ext.isIE9m){this.callParent(arguments)}else{if(x!=null){this.dom.style.left=x+"px"}if(y!=null){this.dom.style.top=y+"px"}this.dom.style.position="absolute"}},unselectable:function(){var me=this;if(Ext.isOpera){me.dom.unselectable="on"}me.removeCls(Element.selectableCls);me.addCls(Element.unselectableCls);return me},deprecated:{"4.0":{methods:{pause:function(ms){var me=this;Ext.fx.Manager.setFxDefaults(me.id,{delay:ms});return me},scale:function(w,h,o){this.animate(Ext.apply({},o,{width:w,height:h}));return this},shift:function(config){this.animate(config);return this}}},"4.2":{methods:{moveTo:function(x,y,animate){return this.setXY([x,y],animate)},setBounds:function(x,y,width,height,animate){return this.setBox({x:x,y:y,width:width,height:height},animate)},setLeftTop:function(left,top){var me=this,style=me.dom.style;style.left=Element.addUnits(left);style.top=Element.addUnits(top);return me},setLocation:function(x,y,animate){return this.setXY([x,y],animate)}}},"5.0":{methods:{getAttributeNS:function(namespace,name){return this.getAttribute(name,namespace)},getCenterXY:function(){return this.getAlignToXY(DOC,"c-c")},getComputedHeight:function(){return Math.max(this.dom.offsetHeight,this.dom.clientHeight)||parseFloat(this.getStyle(HEIGHT))||0},getComputedWidth:function(){return Math.max(this.dom.offsetWidth,this.dom.clientWidth)||parseFloat(this.getStyle(WIDTH))||0},getStyleSize:function(){var me=this,d=this.dom,isDoc=(d===DOC||d===DOC.body),s,w,h;if(isDoc){return{width:Element.getViewportWidth(),height:Element.getViewportHeight()}}s=me.getStyle(["height","width"],true);if(s.width&&s.width!=="auto"){w=parseFloat(s.width)}if(s.height&&s.height!=="auto"){h=parseFloat(s.height)}return{width:w||me.getWidth(true),height:h||me.getHeight(true)}},isBorderBox:function(){return true},isDisplayed:function(){return !this.isStyle("display","none")},focusable:"isFocusable"}}}}})(),function(){var s=Ext.dom.Element,r=s.prototype,z=!Ext.isIE8,b=document,o=b.defaultView,y=/alpha\(opacity=(.*)\)/i,l=/^\s+|\s+$/g,A=r.styleHooks,w=Ext.supports,d=0,v,h,g,q,e,u,j,B;r._init(s);delete r._init;s.on=s.addListener;if(Ext.os.is.iOS||Ext.os.is.Android){d=2}else{if(navigator.msMaxTouchPoints||(Ext.isWebKit&&w.TouchEvents&&Ext.os.is.Desktop)){d=1}}Ext.apply(w,{touchScroll:d});Ext.plainTableCls=Ext.baseCSSPrefix+"table-plain";Ext.plainListCls=Ext.baseCSSPrefix+"list-plain";if(Ext.CompositeElementLite){Ext.CompositeElementLite.importElementMethods()}A.opacity={name:"opacity",afterSet:function(D,C,k){if(k.isLayer){k.onOpacitySet(C)}}};if(!w.Opacity&&Ext.isIE){Ext.apply(A.opacity,{get:function(E){var D=E.style.filter,C,k;if(D.match){C=D.match(y);if(C){k=parseFloat(C[1]);if(!isNaN(k)){return k?k/100:0}}}return 1},set:function(E,C){var k=E.style,D=k.filter.replace(y,"").replace(l,"");k.zoom=1;if(typeof(C)==="number"&&C>=0&&C<1){C*=100;k.filter=D+(D.length?" ":"")+"alpha(opacity="+C+")"}else{k.filter=D}}})}if(!w.matchesSelector){var m=/^([a-z]+|\*)?(?:\.([a-z][a-z\-_0-9]*))?$/i,n=/\-/g,a,x=function(k,C){var D=new RegExp("(?:^|\\s+)"+C.replace(n,"\\-")+"(?:\\s+|$)");if(k&&k!=="*"){k=k.toUpperCase();return function(E){return E.tagName===k&&D.test(E.className)}}return function(E){return D.test(E.className)}},t=function(k){k=k.toUpperCase();return function(C){return C.tagName===k}},p={};r.matcherCache=p;r.is=function(k){if(!k){return true}var C=this.dom,I,E,H,G,F,D,J;if(C.nodeType!==1){return false}if(!(H=Ext.isFunction(k)?k:p[k])){if(!(E=k.match(m))){G=C.parentNode;if(!G){F=true;G=a||(a=b.createDocumentFragment());a.appendChild(C)}D=Ext.Array.indexOf(Ext.fly(G,"_is").query(k),C)!==-1;if(F){a.removeChild(C)}return D}J=E[1];I=E[2];p[k]=H=I?x(J,I):t(J)}return H(C)}}if(!o||!o.getComputedStyle){r.getStyle=function(P,K){var L=this,G=L.dom,R=typeof P!=="string",D=P,M=D,J=1,E=K,C=L.styleHooks,Q,I,O,N,F,k,H;if(R){O={};D=M[0];H=0;if(!(J=M.length)){return O}}if(!G||G.documentElement){return O||""}I=G.style;if(K){k=I}else{k=G.currentStyle;if(!k){E=true;k=I}}do{N=C[D];if(!N){C[D]=N={name:s.normalize(D)}}if(N.get){F=N.get(G,L,E,k)}else{Q=N.name;F=k[Q]}if(!R){return F}O[D]=F;D=M[++H]}while(H<J);return O}}if(Ext.isIE8){function c(E,C,D,k){if(k[this.styleName]==="none"){return"0px"}return k[this.name]}e=["Top","Right","Bottom","Left"];u=e.length;while(u--){j=e[u];B="border"+j+"Width";A["border-"+j.toLowerCase()+"-width"]=A[B]={name:B,styleName:"border"+j+"Style",get:c}}}Ext.apply(Ext,{enableGarbageCollector:true,isBorderBox:true,getDetachedBody:function(){var k=Ext.detachedBodyEl;if(!k){k=b.createElement("div");Ext.detachedBodyEl=k=new Ext.dom.Fly(k);k.isDetachedBody=true}return k},getElementById:function(D){var C=b.getElementById(D),k;if(!C&&(k=Ext.detachedBodyEl)){C=k.dom.querySelector(Ext.makeIdSelector(D))}return C},addBehaviors:function(F){if(!Ext.isReady){Ext.onReady(function(){Ext.addBehaviors(F)})}else{var C={},E,k,D;for(k in F){if((E=k.split("@"))[1]){D=E[0];if(!C[D]){C[D]=Ext.fly(document).select(D,true)}C[D].on(E[1],F[k])}}C=null}}});if(Ext.isIE8){v=Ext.removeNode;Ext.removeNode=function(k){v(k);h=h||b.createElement("div");h.appendChild(k);h.innerHTML=""}}if(Ext.isIE9m){Ext.getElementById=function(D){var C=b.getElementById(D),k;if(!C&&(k=Ext.detachedBodyEl)){C=k.dom.all[D]}return C};r.getById=function(G,k){var F=this.dom,C=null,E,D;if(F){D=(z&&b.getElementById(G))||F.all[G];if(D){if(k){C=D}else{E=Ext.cache[G];if(E){if(E.skipGarbageCollection||!Ext.isGarbage(E.dom)){C=E}else{E.destroy()}}C=C||new Ext.Element(D)}}}return C}}else{if(!b.querySelector){Ext.getDetachedBody=Ext.getBody;Ext.getElementById=function(k){return b.getElementById(k)};r.getById=function(D,k){var C=b.getElementById(D);return k?C:(C?Ext.get(C):null)}}}if(Ext.isIE&&!(Ext.isIE9p&&b.documentMode>=9)){r.getAttribute=function(k,D){var E=this.dom,C;if(D){C=typeof E[D+":"+k];if(C!="undefined"&&C!="unknown"){return E[D+":"+k]||null}return null}if(k==="for"){k="htmlFor"}return E[k]||null}}Ext.onReady(function(){var E=/^(?:transparent|(?:rgba[(](?:\s*\d+\s*[,]){3}\s*0\s*[)]))$/i,C=[],J=r.setWidth,K=r.setHeight,O=r.setSize,P=/^\d+(?:\.\d*)?px$/i,I,G,k,N;if(w.FixedTableWidthBug){A.width={name:"width",set:function(V,U,S){var R=V.style,Q=S._needsTableWidthFix,T=R.display;if(Q){R.display="none"}R.width=U;if(Q){V.scrollWidth;R.display=T}}};r.setWidth=function(T,R){var V=this,W=V.dom,S=W.style,Q=V._needsTableWidthFix,U=S.display;if(Q&&!R){S.display="none"}J.call(V,T,R);if(Q&&!R){W.scrollWidth;S.display=U}return V};r.setSize=function(U,R,S){var W=this,X=W.dom,T=X.style,Q=W._needsTableWidthFix,V=T.display;if(Q&&!S){T.display="none"}O.call(W,U,R,S);if(Q&&!S){X.scrollWidth;T.display=V}return W}}if(Ext.isIE8){A.height={name:"height",set:function(V,U,S){var R=S.component,T,Q;if(R&&R._syncFrameHeight&&this===R.el){Q=R.frameBody.dom.style;if(P.test(U)){T=R.getFrameInfo();if(T){Q.height=(parseInt(U,10)-T.height)+"px"}}else{if(!U||U==="auto"){Q.height=""}}}V.style.height=U}};r.setHeight=function(Q,S){var T=this.component,U,R;if(T&&T._syncFrameHeight&&this===T.el){R=T.frameBody.dom.style;if(!Q||Q==="auto"){R.height=""}else{U=T.getFrameInfo();if(U){R.height=(Q-U.height)+"px"}}}return K.call(this,Q,S)};r.setSize=function(U,Q,S){var T=this.component,V,R;if(T&&T._syncFrameHeight&&this===T.el){R=T.frameBody.dom.style;if(!Q||Q==="auto"){R.height=""}else{V=T.getFrameInfo();if(V){R.height=(Q-V.height)+"px"}}}return O.call(this,U,Q,S)}}Ext.getDoc().on("selectstart",function(U,V){var T=s.selectableCls,S=s.unselectableCls,Q=V&&V.tagName;Q=Q&&Q.toLowerCase();if(Q==="input"||Q==="textarea"){return}while(V&&V.nodeType===1&&V!==b.documentElement){var R=Ext.fly(V);if(R.hasCls(T)){return}if(R.hasCls(S)){U.stopEvent();return}V=V.parentNode}});function H(U,R,T,Q){var S=Q[this.name]||"";return E.test(S)?"transparent":S}function M(R,S,Q){return function(){R.selectionStart=S;R.selectionEnd=Q}}function L(U){var S=w.DisplayChangeInputSelectionBug,T=w.DisplayChangeTextAreaSelectionBug,V,Q,W,R;if(S||T){V=s.getActiveElement();Q=V&&V.tagName;if((T&&Q==="TEXTAREA")||(S&&Q==="INPUT"&&V.type==="text")){if(Ext.fly(U).isAncestor(V)){W=V.selectionStart;R=V.selectionEnd;if(Ext.isNumber(W)&&Ext.isNumber(R)){return M(V,W,R)}}}}return Ext.emptyFn}function F(W,T,V,S){var Q=S.marginRight,R,U;if(Q!=="0px"){R=W.style;U=R.display;R.display="inline-block";Q=(V?S:W.ownerDocument.defaultView.getComputedStyle(W,null)).marginRight;R.display=U}return Q}function D(X,U,W,T){var Q=T.marginRight,S,R,V;if(Q!=="0px"){S=X.style;R=L(X);V=S.display;S.display="inline-block";Q=(W?T:X.ownerDocument.defaultView.getComputedStyle(X,"")).marginRight;S.display=V;R()}return Q}if(!w.RightMargin){A.marginRight=A["margin-right"]={name:"marginRight",get:(w.DisplayChangeInputSelectionBug||w.DisplayChangeTextAreaSelectionBug)?D:F}}if(!w.TransparentColor){I=["background-color","border-color","color","outline-color"];for(G=I.length;G--;){k=I[G];N=s.normalize(k);A[k]=A[N]={name:N,get:H}}}r.verticalStyleHooks90=g=Ext.Object.chain(A);r.verticalStyleHooks270=q=Ext.Object.chain(A);g.width=A.height||{name:"height"};g.height=A.width||{name:"width"};g["margin-top"]={name:"marginLeft"};g["margin-right"]={name:"marginTop"};g["margin-bottom"]={name:"marginRight"};g["margin-left"]={name:"marginBottom"};g["padding-top"]={name:"paddingLeft"};g["padding-right"]={name:"paddingTop"};g["padding-bottom"]={name:"paddingRight"};g["padding-left"]={name:"paddingBottom"};g["border-top"]={name:"borderLeft"};g["border-right"]={name:"borderTop"};g["border-bottom"]={name:"borderRight"};g["border-left"]={name:"borderBottom"};q.width=A.height||{name:"height"};q.height=A.width||{name:"width"};q["margin-top"]={name:"marginRight"};q["margin-right"]={name:"marginBottom"};q["margin-bottom"]={name:"marginLeft"};q["margin-left"]={name:"marginTop"};q["padding-top"]={name:"paddingRight"};q["padding-right"]={name:"paddingBottom"};q["padding-bottom"]={name:"paddingLeft"};q["padding-left"]={name:"paddingTop"};q["border-top"]={name:"borderRight"};q["border-right"]={name:"borderBottom"};q["border-bottom"]={name:"borderLeft"};q["border-left"]={name:"borderTop"};if(!Ext.scopeCss){C.push(Ext.baseCSSPrefix+"body")}if(w.Touch){C.push(Ext.baseCSSPrefix+"touch")}if(Ext.isIE&&Ext.isIE9m){C.push(Ext.baseCSSPrefix+"ie",Ext.baseCSSPrefix+"ie9m");C.push(Ext.baseCSSPrefix+"ie8p");if(Ext.isIE8){C.push(Ext.baseCSSPrefix+"ie8")}else{C.push(Ext.baseCSSPrefix+"ie9",Ext.baseCSSPrefix+"ie9p")}if(Ext.isIE8m){C.push(Ext.baseCSSPrefix+"ie8m")}}if(Ext.isIE10){C.push(Ext.baseCSSPrefix+"ie10")}if(Ext.isGecko){C.push(Ext.baseCSSPrefix+"gecko")}if(Ext.isOpera){C.push(Ext.baseCSSPrefix+"opera")}if(Ext.isOpera12m){C.push(Ext.baseCSSPrefix+"opera12m")}if(Ext.isWebKit){C.push(Ext.baseCSSPrefix+"webkit")}if(Ext.isSafari){C.push(Ext.baseCSSPrefix+"safari")}if(Ext.isChrome){C.push(Ext.baseCSSPrefix+"chrome")}if(Ext.isMac){C.push(Ext.baseCSSPrefix+"mac")}if(Ext.isLinux){C.push(Ext.baseCSSPrefix+"linux")}if(!w.CSS3BorderRadius){C.push(Ext.baseCSSPrefix+"nbr")}if(!w.CSS3LinearGradient){C.push(Ext.baseCSSPrefix+"nlg")}if(w.Touch){C.push(Ext.baseCSSPrefix+"touch")}Ext.getBody().addCls(C)},null,{priority:1500})});(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 a=this;Ext.mixin.Observable.prototype.constructor.call(this);Ext.onReady(function(){a.attachListeners()})},attachListeners:function(){Ext.get(window).on("resize",this.fireResize,this,{buffer:this.resizeBuffer})},fireResize:function(){var d=this,b=Ext.Element,a=b.getViewportWidth(),c=b.getViewportHeight();if(d.curHeight!==c||d.curWidth!==a){d.curHeight=c;d.curWidth=a;d.fireEvent("resize",a,c)}}},1,0,0,0,0,0,[Ext,"GlobalEvents",Ext,"globalEvents"],function(a){Ext.on=function(){return a.addListener.apply(a,arguments)};Ext.un=function(){return a.removeListener.apply(a,arguments)}}));Ext.define("Ext.overrides.GlobalEvents",{override:"Ext.GlobalEvents",attachListeners:function(){this.callParent();Ext.getDoc().on("mousedown",this.fireMouseDown,this)},fireMouseDown:function(a){this.fireEvent("mousedown",a)},deprecated:{5:{methods:{addListener:function(c,e,d,b){var a,g;if(c==="ready"){g=e}else{if(typeof c!=="string"){for(a in c){if(a==="ready"){g=c[a]}}}}if(g){Ext.onReady(g)}this.callParent([c,e,d,b])}}}}});(Ext.cmd.derive("Ext.event.publisher.Dom",Ext.event.publisher.Publisher,{targetType:"element",idOrClassSelectorRegex:/^([#|\.])([\w\-]+)$/,classNameSplitRegex:/\s+/,SELECTOR_ALL:"*",captureEvents:{resize:1,focus:1,blur:1,paste:1,input:1,change:1,animationstart:1,animationend: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},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 j=this,k=document,g=k.defaultView,l=j.eventToVendorMap={},e=j.vendorToEventMap={},a=j.handledEvents,d=Ext.browser,c,h,b;j.captureSubscribers={};j.directSubscribers={};j.globalListeners={};if((Ext.os.is.iOS&&Ext.os.version.getMajor()<5)||!(g&&g.addEventListener)){j.target=k;j.isTargetWin=false}else{j.target=g;j.isTargetWin=true}j.initHandlers();if(a){for(c=0,h=a.length;c<h;c++){this.addDelegatedListener(a[c])}}else{if(d.is.WebKit){l.transitionend=d.getVendorProperyName("transitionEnd");l.animationstart=d.getVendorProperyName("animationStart");l.animationend=d.getVendorProperyName("animationEnd");for(b in l){e[l[b]]=b}}}return Ext.event.publisher.Publisher.prototype.constructor.call(this)},initHandlers:function(){var a=this;a.onDelegatedEvent=Ext.bind(a.onDelegatedEvent,a);a.onDirectEvent=Ext.bind(a.onDirectEvent,a)},handles:function(){return false},getSubscribers:function(b,a){var d=a?this.captureSubscribers:this.subscribers,c=d[b];if(!c){c=d[b]={id:{$length:0},className:{$length:0},selector:[],all:0,$length:0}}return c},getDirectSubscribers:function(e,a){var c=this.directSubscribers,d=c[e]||(c[e]={}),b=d[a]||(d[a]={$length:0});return b},addDelegatedListener:function(a){this.target.addEventListener(a,this.onDelegatedEvent,this.captureEvents[a])},removeDelegatedListener:function(a){this.target.removeEventListener(a,this.onDelegatedEvent,this.captureEvents[a])},addDirectListener:function(b,c,a){c.addEventListener(b,this.onDirectEvent,a)},removeDirectListener:function(b,c,a){c.removeEventListener(b,this.onDirectEvent,a)},subscribe:function(l,j,q,a){var n=this,p=!!q.capture,h=l.match(n.idOrClassSelectorRegex),b,d,e,c,k,g,m,o;if(q.delegated!==false&&!n.directEvents[j]&&!(l==="#ext-window"&&!n.isTargetWin)){if(!n.handledEvents&&!n.globalListeners[j]){n.addDelegatedListener(n.eventToVendorMap[j]||j);this.globalListeners[j]=1}}else{g=a.dom;k=this.getDirectSubscribers(g.id,j);if(++k.$length===1){n.addDirectListener(j,g,p)}if(!h){(k.selector||(k.selector=[])).push(l)}return}b=n.getSubscribers(j,p);d=b.id;e=b.className;c=b.selector;if(h){m=h[1];o=h[2];if(m==="#"){if(d.hasOwnProperty(o)){d[o]++;return}d[o]=1;d.$length++}else{if(e.hasOwnProperty(o)){e[o]++;return}e[o]=1;e.$length++}}else{if(l===this.SELECTOR_ALL){b.all++}else{if(c.hasOwnProperty(l)){c[l]++;return}c[l]=1;c.push(l)}}b.$length++},unsubscribe:function(m,k,q,s,b){var o=this,r=!!s.capture,j=m.match(o.idOrClassSelectorRegex),a,e,g,c,l,n,p,h,d;if(s.delegated===false||o.directEvents[k]||(m===Ext.windowId&&!o.isTargetWin)){h=b.dom;d=h.id;l=o.getDirectSubscribers(d,k);if(q){if(l.$length){o.removeDirectListener(k,h,r)}delete o.directSubscribers[d]}else{if(!--l.$length){o.removeDirectListener(k,h,r);delete o.directSubscribers[d][k]}else{if(!j){Ext.Array.remove(l.selector,m)}}}return}a=o.getSubscribers(k,r);e=a.id;g=a.className;c=a.selector;if(j){n=j[1];p=j[2];if(n==="#"){if(!e.hasOwnProperty(p)||(!q&&--e[p]>0)){return}delete e[p];e.$length--}else{if(!g.hasOwnProperty(p)||(!q&&--g[p]>0)){return}delete g[p];g.$length--}}else{if(m===o.SELECTOR_ALL){if(q){a.all=0}else{a.all--}}else{if(!c.hasOwnProperty(m)||(!q&&--c[m]>0)){return}delete c[m];Ext.Array.remove(c,m)}}a.$length--},getPropagatingTargets:function(b){var a=[];if(!b){return a}do{a[a.length]=b;b=b.parentNode}while(b);return a},dispatch:function(c,a,b){b.push(b[0].target);Ext.event.publisher.Publisher.prototype.dispatch.apply(this,arguments)},publish:function(g,j,a){var l=this.getSubscribers(g,true),c=this.getSubscribers(g),b=this.getSubscribers("*",true),n=this.getSubscribers("*"),k=l.$length,e=c.$length,d=b.$length,m=n.$length,h;if(!k&&!e&&!d&&!m){return}if(Ext.isArray(j)){h=j}else{if(this.captureEvents[g]){h=[j]}else{h=this.getPropagatingTargets(j)}}if(!k||!this.doPublish(l,g,h,a,true)){if(d){this.doPublish(b,g,h,a,true)}}if(!a.isStopped&&(!e||!this.doPublish(c,g,h,a))){if(m){this.doPublish(n,g,h,a)}}return this},doPublish:function(g,m,C,y,v){var u=g.id,k=g.className,b=g.selector,s=u.$length>0,a=k.$length>0,o=b.length>0,r=g.all>0,D={},e=[y],t=false,p=this.classNameSplitRegex,l=0,h=C.length,B=1,z,n,x,d,E,q,c,A,w;if(v){l=h-1;h=B=-1}for(z=l;z!==h;z+=B){E=C[z];y.setCurrentTarget(E);if(s){q=(E.tagName==="FORM")?E.getAttribute("id"):(E===window)?"ext-window":E.id;if(q){if(u.hasOwnProperty(q)){t=true;this.dispatch("#"+q,m,e,v)}}}if(a){c=E.className;if(c){A=c.split(p);for(x=0,d=A.length;x<d;x++){c=A[x];if(!D[c]){D[c]=true;if(k.hasOwnProperty(c)){t=true;this.dispatch("."+c,m,e)}}}}}if(y.isStopped){return t}}if(r&&!t){y.setCurrentTarget(y.browserEvent.target);t=true;this.dispatch(this.SELECTOR_ALL,m,e);if(y.isStopped){return t}}if(o){for(x=0,d=C.length;x<d;x++){E=C[x];for(z=0,n=b.length;z<n;z++){w=b[z];if(Ext.fly(E).is(w)){y.setCurrentTarget(E);t=true;this.dispatch(w,m,e)}if(y.isStopped){return t}}}}return t},onDelegatedEvent:function(g,d){var c=this,a=g.type,b;b=new Ext.event.Event(g);if(c.isEventBlocked(b)){return false}c.beforeEvent(b);a=b.type=c.vendorToEventMap[a]||a;Ext.frameStartTime=g.timeStamp;c.publish(a,b.target,b);if(d!==false){c.afterEvent(b)}return b},onDirectEvent:function(n){var o=this,p=n.type,b=new Ext.event.Event(n),k,g,c,q,r,a,m,d,j,l,h;if(o.isEventBlocked(b)){return}o.beforeEvent(b);k=b.type=this.vendorToEventMap[p]||p;g=n.currentTarget;c=g.id;q=o.getDirectSubscribers(c,k).selector;r=o.dispatcher;a=o.targetType;m=n.target;d=m;Ext.frameStartTime=n.timeStamp;if(m.navigator){c="ext-window"}b.setCurrentTarget(g);if(q){l=q.length;while(d!==g){for(j=0;j<l;j++){h=q[j];if(Ext.fly(d).is(h)){r.dispatchDirectEvent(a,h,k,[b,m])}}d=d.parentNode}}r.dispatchDirectEvent(a,"#"+c,k,[b,m]);o.afterEvent(b)},beforeEvent:function(c){var g=c.browserEvent,a=Ext.event.publisher.Dom,b,d;if(g.type==="touchstart"){b=g.touches;if(b.length===1){d=b[0];a.lastTouchStartX=d.pageX;a.lastTouchStartY=d.pageY}}},afterEvent:function(d){var g=d.browserEvent,c=g.type,b=Ext.event.publisher.Dom,a=Ext.GlobalEvents;if(a.hasListeners.idle&&!a.idleEventMask[c]){a.fireEvent("idle")}if(d.self.pointerEvents[c]&&d.pointerType!=="mouse"){b.lastScreenPointerEventTime=Ext.now()}if(c==="touchend"){b.lastTouchEndTime=Ext.now()}},isEventBlocked:function(g){var d=this,c=g.type,a=Ext.event.publisher.Dom,b=Ext.now();return(d.blockedPointerEvents[c]&&g.pointerType!=="mouse")||(d.blockedCompatibilityMouseEvents[c]&&(b-a.lastScreenPointerEventTime<1000))||(Ext.supports.TouchEvents&&g.self.mouseEvents[g.type]&&Math.abs(g.pageX-a.lastTouchStartX)<15&&Math.abs(g.pageY-a.lastTouchStartY)<15&&(Ext.now()-a.lastTouchEndTime)<1000)},getSubscribersCount:function(a){return this.getSubscribers(a).$length+this.getSubscribers("*").$length},destroy:function(){var e=this,b=e.handledEvents,c,d,a;if(b){for(c=0,d=b.length;c<d;c++){e.removeDelegatedListener(b[c])}}else{for(a in e.globalListeners){e.removeDelegatedListener(a)}}}},1,0,0,0,0,0,[Ext.event.publisher,"Dom"],0));Ext.define("Ext.overrides.event.publisher.Dom",{override:"Ext.event.publisher.Dom"},function(){var b=Ext.event.publisher.Dom,a=b.prototype;if(Ext.isIE9m){b.override({initHandlers:function(){var d=this,e,c;d.callParent();e=d.onDelegatedEvent;c=d.onDirectEvent;d.target=document;d.targetIsWin=false;d.onDelegatedEvent=function(g){g.target=g.srcElement||window;e.call(d,g)};d.onDirectEvent=function(g){g.target=g.srcElement||window;g.currentTarget=this;c.call(d,g)}},addDelegatedListener:function(c){this.target.attachEvent("on"+c,this.onDelegatedEvent)},removeDelegatedListener:function(c){this.target.detachEvent("on"+c,this.onDelegatedEvent)},addDirectListener:function(c,d){var g=this,e=Ext.Function.bind(g.onDirectEvent,d);g.directSubscribers[d.id][c].fn=e;if(d.attachEvent){d.attachEvent("on"+c,e)}else{g.callParent(arguments)}},removeDirectListener:function(c,d){if(d.detachEvent){d.detachEvent("on"+c,this.directSubscribers[d.id][c].fn)}else{this.callParent(arguments)}}});Ext.apply(a.directEvents,a.captureEvents);a.captureEvents={}}});(Ext.cmd.derive("Ext.AnimationQueue",Ext.Base,{singleton:true,constructor:function(){var a=Ext.Function.bind;this.queue=[];this.taskQueue=[];this.runningQueue=[];this.idleQueue=[];this.isRunning=false;this.isIdle=true;this.run=a(this.run,this);this.whenIdle=a(this.whenIdle,this);this.processIdleQueueItem=a(this.processIdleQueueItem,this);this.processTaskQueueItem=a(this.processTaskQueueItem,this);if(Ext.os.is.iOS){setInterval(this.watch,500)}},start:function(c,b,a){this.queue.push(arguments);if(!this.isRunning){if(this.hasOwnProperty("idleTimer")){clearTimeout(this.idleTimer);delete this.idleTimer}if(this.hasOwnProperty("idleQueueTimer")){clearTimeout(this.idleQueueTimer);delete this.idleQueueTimer}this.isIdle=false;this.isRunning=true;this.doStart()}},watch:function(){if(this.isRunning&&Ext.now()-this.lastRunTime>=500){this.run()}},run:function(){if(!this.isRunning){return}var a=this.runningQueue,b,c;this.lastRunTime=Ext.now();this.frameStartTime=Ext.now();a.push.apply(a,this.queue);for(b=0,c=a.length;b<c;b++){this.invoke(a[b])}a.length=0;this.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(e,d,b){if(!this.isRunning){return}var a=this.queue,h=a.length,c,g;for(c=0;c<h;c++){g=a[c];if(g[0]===e&&g[1]===d&&g[2]===b){a.splice(c,1);c--;h--}}if(h===0){this.doStop();this.isRunning=false;this.idleTimer=setTimeout(this.whenIdle,100)}},onIdle:function(e,d,a){var c=this.idleQueue,b,g,h;for(b=0,g=c.length;b<g;b++){h=c[b];if(e===h[0]&&d===h[1]&&a===h[2]){return}}c.push(arguments);if(this.isIdle){this.processIdleQueue()}},unIdle:function(e,d,a){var c=this.idleQueue,b,g,h;for(b=0,g=c.length;b<g;b++){h=c[b];if(e===h[0]&&d===h[1]&&a===h[2]){c.splice(b,1);return true}}return false},queueTask:function(c,b,a){this.taskQueue.push(arguments);this.processTaskQueue()},dequeueTask:function(e,d,a){var c=this.taskQueue,b,g,h;for(b=0,g=c.length;b<g;b++){h=c[b];if(e===h[0]&&d===h[1]&&a===h[2]){c.splice(b,1);b--;g--}}},invoke:function(d){var c=d[0],b=d[1],a=d[2];c=(typeof c=="string"?b[c]:c);if(Ext.isArray(a)){c.apply(b,a)}else{c.call(b,a)}},whenIdle:function(){this.isIdle=true;this.processIdleQueue()},processIdleQueue:function(){if(!this.hasOwnProperty("idleQueueTimer")){this.idleQueueTimer=setTimeout(this.processIdleQueueItem,1)}},processIdleQueueItem:function(){delete this.idleQueueTimer;if(!this.isIdle){return}var a=this.idleQueue,b;if(a.length>0){b=a.shift();this.invoke(b);this.processIdleQueue()}},processTaskQueue:function(){if(!this.hasOwnProperty("taskQueueTimer")){this.taskQueueTimer=setTimeout(this.processTaskQueueItem,15)}},processTaskQueueItem:function(){delete this.taskQueueTimer;var a=this.taskQueue,b;if(a.length>0){b=a.shift();this.invoke(b);this.processTaskQueue()}},showFps:function(){Ext.onReady(function(){Ext.Viewport.add([{xtype:"component",bottom:50,left:0,width:50,height:20,html:"Average",style:"background-color: black; color: white; text-align: center; line-height: 20px; font-size: 8px;"},{id:"__averageFps",xtype:"component",bottom:0,left:0,width:50,height:50,html:"0",style:"background-color: red; color: white; text-align: center; line-height: 50px;"},{xtype:"component",bottom:50,left:50,width:50,height:20,html:"Min (Last 1k)",style:"background-color: black; color: white; text-align: center; line-height: 20px; font-size: 8px;"},{id:"__minFps",xtype:"component",bottom:0,left:50,width:50,height:50,html:"0",style:"background-color: orange; color: white; text-align: center; line-height: 50px;"},{xtype:"component",bottom:50,left:100,width:50,height:20,html:"Max (Last 1k)",style:"background-color: black; color: white; text-align: center; line-height: 20px; font-size: 8px;"},{id:"__maxFps",xtype:"component",bottom:0,left:100,width:50,height:50,html:"0",style:"background-color: yellow; color: black; text-align: center; line-height: 50px;"},{xtype:"component",bottom:50,left:150,width:50,height:20,html:"Current",style:"background-color: black; color: white; text-align: center; line-height: 20px; font-size: 8px;"},{id:"__currentFps",xtype:"component",bottom:0,left:150,width:50,height:50,html:"0",style:"background-color: green; color: white; text-align: center; line-height: 50px;"}]);Ext.AnimationQueue.resetFps()})},resetFps:function(){var c=Ext.getCmp("__currentFps"),b=Ext.getCmp("__averageFps"),j=Ext.getCmp("__minFps"),h=Ext.getCmp("__maxFps"),d=1000,a=0,g=0,e=0;Ext.AnimationQueue.onFpsChanged=function(k){g++;if(!(g%10)){d=1000;a=0}e+=k;d=Math.min(d,k);a=Math.max(a,k);c.setHtml(Math.round(k));b.setHtml(Math.round(e/g));j.setHtml(Math.round(d));h.setHtml(Math.round(a))}}},1,0,0,0,0,0,[Ext,"AnimationQueue"],function(){}));(Ext.cmd.derive("Ext.event.publisher.Gesture",Ext.event.publisher.Dom,{alternateClassName:"Ext.event.publisher.TouchGesture",config:{recognizers:{}},isCancelEvent:{touchcancel:1,pointercancel:1,MSPointerCancel:1},constructor:function(a){var c=this,d=c.onTouchStart,b=c.onTouchMove=Ext.Function.createAnimationFrame(c.onTouchMove,c),e=c.onTouchEnd=Ext.Function.createAnimationFrame(c.onTouchEnd,c,null,1);c.handlers={touchstart:d,touchmove:b,touchend:e,touchcancel:e,pointerdown:d,pointermove:b,pointerup:e,pointercancel:e,MSPointerDown:d,MSPointerMove:b,MSPointerUp:e,MSPointerCancel:e,mousedown:d,mousemove:b,mouseup:e};c.recognizedEvents={};c.activeTouchesMap={};c.activeTouches=[];c.changedTouches=[];if(Ext.supports.TouchEvents){c.onTargetTouchMove=c.onTargetTouchMove.bind(c);c.onTargetTouchEnd=c.onTargetTouchEnd.bind(c)}c.initConfig(a);return Ext.event.publisher.Dom.prototype.constructor.call(this)},applyRecognizers:function(b){var c,a;for(c in b){a=b[c];if(a){this.registerRecognizer(a)}}return b},handles:function(a){var b=this.handledEventsMap;return !!b[a]||!!b["*"]||a==="*"||this.recognizedEvents.hasOwnProperty(a)},registerRecognizer:function(a){var e=this,g=e.recognizedEvents,b=a.getHandledEvents(),c,d;a.setOnRecognized(e.onRecognized);a.setCallbackScope(e);for(c=0,d=b.length;c<d;c++){g[b[c]]=1}},onRecognized:function(d,h,a){var k=this,l=h.changedTouches,j=l.length,m,g,c,b;a=a||{};a.type=d;a.target=l[0].target;a.isStopped=false;h=h.chain(a);if(j>1){m=[];for(c=0;c<j;c++){b=l[c];m.push(b.targets)}g=k.getCommonTargets(m)}else{g=l[0].targets}k.publish(d,g,h)},getCommonTargets:function(a){var k=a[0],g=a.length;if(g===1){return k}var d=[],e=1,h,b,c;while(true){h=k[k.length-e];if(!h){return d}for(c=1;c<g;c++){b=a[c];if(b[b.length-e]!==h){return d}}d.unshift(h);e++}return d},invokeRecognizers:function(c,g){var b=this.getRecognizers(),d,a;if(c==="onStart"){for(d in b){b[d].isActive=true}}for(d in b){a=b[d];if(a.isActive&&a[c].call(a,g)===false){a.isActive=false}}},updateTouches:function(k,b){var o=this,s=k.browserEvent,g=s.changedTouches||[s],a=o.activeTouches,l=o.activeTouchesMap,q=[],n,j,d,h,c,m,r,p;for(c=0,m=g.length;c<m;c++){n=g[c];if("identifier" in n){j=n.identifier}else{if("pointerId" in n){j=n.pointerId}else{j=1}}d=l[j];if(b){delete l[j];Ext.Array.remove(a,d)}else{if(!d){h=Ext.event.Event.resolveTextNode(n.target);d=l[j]={identifier:j,target:h,targets:o.getPropagatingTargets(h)};a.push(d)}}r=n.pageX;p=n.pageY;d.pageX=r;d.pageY=p;d.point=new Ext.util.Point(r,p);q.push(d)}k.touches=Ext.Array.clone(a);k.changedTouches=q},onDelegatedEvent:function(b){var a=this;b=Ext.event.publisher.Dom.prototype.onDelegatedEvent.apply(this,[b,false]);if(b){if(!b.button||b.button<1){a.handlers[b.type].call(a,b)}a.afterEvent(b)}},onTouchStart:function(c){var a=this,b=c.target;if(c.browserEvent.type==="touchstart"){b.addEventListener("touchmove",a.onTargetTouchMove);b.addEventListener("touchend",a.onTargetTouchEnd);b.addEventListener("touchcancel",a.onTargetTouchEnd)}a.updateTouches(c);if(!a.isStarted){a.isStarted=true;a.invokeRecognizers("onStart",c);if(Ext.enableGarbageCollector){Ext.dom.GarbageCollector.pause()}}a.invokeRecognizers("onTouchStart",c)},onTouchMove:function(a){if(this.isStarted){this.updateTouches(a);if(a.changedTouches.length>0){this.invokeRecognizers("onTouchMove",a)}}},onTouchEnd:function(b){var a=this;if(!a.isStarted){return}a.updateTouches(b,true);a.invokeRecognizers(a.isCancelEvent[b.type]?"onTouchCancel":"onTouchEnd",b);if(!a.activeTouches.length){a.isStarted=false;a.invokeRecognizers("onEnd",b);if(Ext.enableGarbageCollector){Ext.dom.GarbageCollector.resume()}}},onTargetTouchMove:function(a){if(!Ext.getBody().contains(a.target)){this.onTouchMove(new Ext.event.Event(a))}},onTargetTouchEnd:function(c){var a=this,b=c.target;b.removeEventListener("touchmove",a.onTargetTouchMove);b.removeEventListener("touchend",a.onTargetTouchEnd);b.removeEventListener("touchcancel",a.onTargetTouchEnd);if(!Ext.getBody().contains(b)){a.onTouchEnd(new Ext.event.Event(c))}}},1,0,0,0,0,0,[Ext.event.publisher,"Gesture",Ext.event.publisher,"TouchGesture"],function(){var b=[],a=Ext.supports,c=a.TouchEvents;if(a.PointerEvents){b.push("pointerdown","pointermove","pointerup","pointercancel")}else{if(a.MSPointerEvents){b.push("MSPointerDown","MSPointerMove","MSPointerUp","MSPointerCancel")}else{if(c){b.push("touchstart","touchmove","touchend","touchcancel")}}}if(!b.length||(c&&Ext.isWebKit&&Ext.os.is.Desktop)){b.push("mousedown","mousemove","mouseup")}this.prototype.handledEvents=b}));Ext.define("Ext.overrides.event.publisher.Gesture",{override:"Ext.event.publisher.Gesture"},function(){if(Ext.isIE9m){this.override({updateTouches:function(c,a){var d=c.browserEvent,b=c.getXY();d.pageX=b[0];d.pageY=b[1];this.callParent([c,a])},initHandlers:function(){var a=this,b;a.callParent();b=a.onDelegatedEvent;a.onDelegatedEvent=function(c){b.call(a,Ext.event.Event.enableIEAsync(c))}}})}});Ext.require(["Ext.event.gesture.*","Ext.event.publisher.Dom","Ext.event.publisher.Gesture","Ext.event.Dispatcher"]);Ext.onReady(function(){var a=Ext.event.Dispatcher.getInstance();a.setPublishers({dom:new Ext.event.publisher.Dom(),gesture:new Ext.event.publisher.Gesture({recognizers:{drag:new Ext.event.gesture.Drag(),tap:new Ext.event.gesture.Tap(),doubleTap:new Ext.event.gesture.DoubleTap(),longPress:new Ext.event.gesture.LongPress(),swipe:new Ext.event.gesture.Swipe(),pinch:new Ext.event.gesture.Pinch(),rotate:new Ext.event.gesture.Rotate(),edgeSwipe:new Ext.event.gesture.EdgeSwipe()}})});Ext.get(window).on("unload",a.destroy,a)},null,{priority:2000});Ext.apply(Ext,{SSL_SECURE_URL:Ext.isSecure&&Ext.isIE?"javascript:''":"about:blank",BLANK_IMAGE_URL:"data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="});(Ext.cmd.derive("Ext.AbstractManager",Ext.Base,{typeName:"type",constructor:function(a){Ext.apply(this,a||{});this.all=new Ext.util.HashMap();this.types={}},get:function(a){return this.all.get(a)},register:function(a){this.all.add(a)},unregister:function(a){this.all.remove(a)},registerType:function(b,a){this.types[b]=a;a[this.typeName]=b},isRegistered:function(a){return this.types[a]!==undefined},create:function(a,d){var b=a[this.typeName]||a.type||d,c=this.types[b];return new c(a)},onAvailable:function(g,c,b){var a=this.all,d,e;if(a.containsKey(g)){d=a.get(g);c.call(b||d,d)}else{e=function(k,h,j){if(h==g){c.call(b||j,j);a.un("add",e)}};a.on("add",e)}},each:function(b,a){this.all.each(b,a||this)},getCount:function(){return this.all.getCount()}},1,0,0,0,0,0,[Ext,"AbstractManager"],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(d,c,b){var a;a=this.liveConnections[Number(d)];if(a){a.onFlashStateChange(c,b)}},registerConnection:function(b){var a=this.connectionIndex;this.conectionIndex=this.connectionIndex+1;this.liveConnections[a]=b;return a},injectFlashPlugin:function(){var b=this,a,c;b.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"}]}]});a=[Ext.Loader.getPath("Ext.data.Connection"),"../../../plugins/flash/swfobject.js"].join("/");c="/plugins/flash/FlashPlugin.swf";if(Ext.flashPluginPath){c=Ext.flashPluginPath}Ext.Loader.loadScript({url:a,onLoad:function(){var e="11.4.0";var h="playerProductInstall.swf";var d={};var j={};j.quality="high";j.bgcolor="#ffffff";j.allowscriptaccess="sameDomain";j.allowfullscreen="true";var g={};g.id="ext-flash-polyfill";g.name="polyfill";g.align="middle";swfobject.embedSWF(c,"ext-flash-polyfill","0","0",e,h,d,j,g)},onError:function(){},scope:b});Ext.data.flash.BinaryXhr.flashPluginInjected=true}},readyState:0,status:0,statusText:"",responseBytes:null,javascriptId:null,constructor:function(a){if(!Ext.data.flash.BinaryXhr.flashPluginInjected){Ext.data.flash.BinaryXhr.injectFlashPlugin()}var b=this;Ext.apply(b,a);b.requestHeaders={}},abort:function(){var a=this;if(a.readyState==4){return}a.aborted=true;if(!Ext.data.flash.BinaryXhr.flashPluginActive){Ext.GlobalEvents.removeListener("flashready",a.onFlashReady,a);return}Ext.data.flash.BinaryXhr.flashPlugin.abortRequest(a.javascriptId);delete Ext.data.flash.BinaryXhr.liveConnections[a.javascriptId]},getAllResponseHeaders:function(){var a=[];Ext.Object.each(this.responseHeaders,function(b,c){a.push(b+": "+c)});return a.join("\r\n")},getResponseHeader:function(b){var a=this.responseHeaders;return(a&&a[b])||null},open:function(g,c,d,a,b){var e=this;e.method=g;e.url=c;e.async=d!==false;e.user=a;e.password=b},overrideMimeType:function(a){this.mimeType=a},send:function(a){var b=this;b.body=a;if(!Ext.data.flash.BinaryXhr.flashPluginActive){Ext.GlobalEvents.addListener("flashready",b.onFlashReady,b)}else{this.onFlashReady()}},onFlashReady:function(){var c=this,b,a;c.javascriptId=Ext.data.flash.BinaryXhr.registerConnection(c);b={method:c.method,url:c.url,user:c.user,password:c.password,mimeType:c.mimeType,requestHeaders:c.requestHeaders,body:c.body,javascriptId:c.javascriptId};a=Ext.data.flash.BinaryXhr.flashPlugin.postBinary(b)},setReadyState:function(b){var a=this;if(a.readyState!=b){a.readyState=b;a.onreadystatechange()}},setRequestHeader:function(b,a){this.requestHeaders[b]=a},onreadystatechange:Ext.emptyFn,parseData:function(b){var a=this;this.status=b.status||0;a.responseHeaders={};if(a.mimeType){a.responseHeaders["content-type"]=a.mimeType}if(b.reason=="complete"){this.responseBytes=b.data;a.responseHeaders["content-length"]=b.data.length}else{if(b.reason=="error"||b.reason=="securityError"){this.statusText=b.text;a.responseHeaders["content-length"]=0}}},onFlashStateChange:function(c,b){var a=this;if(c==4){a.parseData(b);delete Ext.data.flash.BinaryXhr.liveConnections[a.javascriptId]}a.setReadyState(c)}},1,0,0,0,0,0,[Ext.data.flash,"BinaryXhr"],0));(Ext.cmd.derive("Ext.data.Connection",Ext.Base,{statics:{requestId:0},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(a){this.mixins.observable.constructor.call(this,a);this.requests={}},request:function(m){m=m||{};var h=this,l=m.scope||window,g=m.username||h.getUsername(),j=m.password||h.getPassword()||"",b,d,e,a,c,k;if(h.fireEvent("beforerequest",h,m)!==false){d=h.setOptions(m,l);if(h.isFormUpload(m)){h.upload(m.form,d.url,d.data,m);return null}if(m.autoAbort||h.getAutoAbort()){h.abort()}b=m.async!==false?(m.async||h.getAsync()):false;k=h.openRequest(m,d,b,g,j);c=h.getIsXdr();if(!c){a=h.setupHeaders(k,m,d.data,d.params)}e={id:++Ext.data.Connection.requestId,xhr:k,headers:a,options:m,async:b,binary:m.binary||h.getBinary(),timeout:setTimeout(function(){e.timedout=true;h.abort(e)},m.timeout||h.getTimeout())};h.requests[e.id]=e;h.latestId=e.id;if(b){if(!c){k.onreadystatechange=Ext.Function.bind(h.onStateChange,h,[e])}}if(c){h.processXdrRequest(e,k)}k.send(d.data);if(!b){return h.onComplete(e)}return e}else{Ext.callback(m.callback,m.scope,[m,undefined,undefined]);return null}},processXdrRequest:function(b,c){var a=this;delete b.headers;b.contentType=b.options.contentType||a.getDefaultXdrContentType();c.onload=Ext.Function.bind(a.onStateChange,a,[b,true]);c.onerror=c.ontimeout=Ext.Function.bind(a.onStateChange,a,[b,false])},processXdrResponse:function(a,b){a.getAllResponseHeaders=function(){return[]};a.getResponseHeader=function(){return""};a.contentType=b.contentType||this.getDefaultXdrContentType()},upload:function(b,g,t,e){b=Ext.getDom(b);e=e||{};var o=Ext.id(),m=document.createElement("iframe"),c=[],d="multipart/form-data",s={target:b.target,method:b.method,encoding:b.encoding,enctype:b.enctype,action:b.action},a=function(h,v){j=document.createElement("input");Ext.fly(j).set({type:"hidden",value:v,name:h});b.appendChild(j);c.push(j)},j,l,q,u,p,k,n,r;Ext.fly(m).set({id:o,name:o,cls:Ext.baseCSSPrefix+"hidden-display",src:Ext.SSL_SECURE_URL});document.body.appendChild(m);if(document.frames){document.frames[o].name=o}Ext.fly(b).set({target:o,method:"POST",enctype:d,encoding:d,action:g||s.action});if(t){l=Ext.Object.fromQueryString(t)||{};for(u in l){if(l.hasOwnProperty(u)){q=l[u];if(Ext.isArray(q)){p=q.length;for(k=0;k<p;k++){a(u,q[k])}}else{a(u,q)}}}}Ext.get(m).on({load:Ext.Function.bind(this.onUploadComplete,this,[m,e]),single:!Ext.isOpera});b.submit();Ext.fly(b).set(s);for(n=c.length,r=0;r<n;r++){Ext.removeNode(c[r])}},onUploadComplete:function(a,l){var g=this,b={responseText:"",responseXML:null},j,k,h,c;try{h=(a&&(a.contentWindow.document||a.contentDocument))||(window.frames[a.id]||{}).document;if(h){if(Ext.isOpera&&h.location==Ext.SSL_SECURE_URL){return}if(h.body){if((c=h.body.firstChild)&&/pre/i.test(c.tagName)){b.responseText=c.textContent||c.innerText}else{if((c=h.getElementsByTagName("textarea")[0])){b.responseText=c.value}else{b.responseText=h.body.textContent||h.body.innerText}}}b.responseXML=h.XMLDocument||h;j=l.success;k=true}else{Ext.Error.raise("Could not acquire a suitable connection for the file upload service.")}}catch(d){b.responseText='{success:false,message:"'+Ext.String.trim(d.message||d.description)+'"}';j=l.failure;k=false}g.fireEvent(k?"requestcomplete":"requestexception",g,b,l);Ext.callback(j,l.scope,[b,l]);Ext.callback(l.callback,l.scope,[l,k,b]);Ext.defer(Ext.removeNode,100,Ext,[a])},isFormUpload:function(a){var b=this.getForm(a);if(b){return(a.isUpload||(/multipart\/form-data/i).test(b.getAttribute("enctype")))}return false},getForm:function(a){var b=a.form||null;if(b){b=Ext.getDom(b)}return b},setOptions:function(m,l){var j=this,e=m.params||{},h=j.getExtraParams(),d=m.urlParams,c=m.url||j.getUrl(),k=m.jsonData,b,a,g;if(Ext.isFunction(e)){e=e.call(l,m)}if(Ext.isFunction(c)){c=c.call(l,m)}c=this.setupUrl(m,c);g=m.rawData||m.binaryData||m.xmlData||k||null;if(k&&!Ext.isPrimitive(k)){g=Ext.encode(g)}if(m.binaryData){if(j.nativeBinaryPostSupport()){g=(new Uint8Array(m.binaryData));if((Ext.isChrome&&Ext.chromeVersion<22)||Ext.isSafari||Ext.isGecko){g=g.buffer}}}if(Ext.isObject(e)){e=Ext.Object.toQueryString(e)}if(Ext.isObject(h)){h=Ext.Object.toQueryString(h)}e=e+((h)?((e)?"&":"")+h:"");d=Ext.isObject(d)?Ext.Object.toQueryString(d):d;e=this.setupParams(m,e);b=(m.method||j.getMethod()||((e||g)?"POST":"GET")).toUpperCase();this.setupMethod(m,b);a=m.disableCaching!==false?(m.disableCaching||j.getDisableCaching()):false;if(b==="GET"&&a){c=Ext.urlAppend(c,(m.disableCachingParam||j.getDisableCachingParam())+"="+(new Date().getTime()))}if((b=="GET"||g)&&e){c=Ext.urlAppend(c,e);e=null}if(d){c=Ext.urlAppend(c,d)}return{url:c,method:b,data:g||e||null}},setupUrl:function(b,a){var c=this.getForm(b);if(c){a=a||c.action}return a},setupParams:function(a,d){var c=this.getForm(a),b;if(c&&!this.isFormUpload(a)){b=Ext.Element.serializeForm(c);d=d?(d+"&"+b):b}return d},setupMethod:function(a,b){if(this.isFormUpload(a)){return"POST"}return b},setupHeaders:function(o,p,d,c){var k=this,b=Ext.apply({},p.headers||{},k.getDefaultHeaders()||{}),n=k.getDefaultPostHeader(),l=p.jsonData,a=p.xmlData,j="Content-Type",m,g;if(!b.hasOwnProperty(j)&&(d||c)){if(d){if(p.rawData){n="text/plain"}else{if(a&&Ext.isDefined(a)){n="text/xml"}else{if(l&&Ext.isDefined(l)){n="application/json"}}}}b[j]=n}if(k.getUseDefaultXhrHeader()&&!b["X-Requested-With"]){b["X-Requested-With"]=k.getDefaultXhrHeader()}if(b[j]===undefined||b[j]===null){delete b[j]}try{for(m in b){if(b.hasOwnProperty(m)){g=b[m];o.setRequestHeader(m,g)}}}catch(h){k.fireEvent("exception",m,g)}return b},newRequest:function(a){var b=this,c;if(a.binaryData){if(b.nativeBinaryPostSupport()){c=b.getXhrInstance()}else{c=new Ext.data.flash.BinaryXhr()}}else{if((a.cors||b.getCors())&&Ext.isIE&&Ext.ieVersion<=9){c=b.getXdrInstance();b.setIsXdr(true)}else{c=b.getXhrInstance()}}return c},openRequest:function(c,a,d,h,b){var e=this,g=e.newRequest(c);if(h){g.open(a.method,a.url,d,h,b)}else{if(e.getIsXdr()){g.open(a.method,a.url)}else{g.open(a.method,a.url,d)}}if(c.binary||e.getBinary()){if(window.Uint8Array){g.responseType="arraybuffer"}else{if(g.overrideMimeType){g.overrideMimeType("text/plain; charset=x-user-defined")}}}if(c.withCredentials||e.getWithCredentials()){g.withCredentials=true}return g},getXdrInstance:function(){var a;if(Ext.ieVersion>=8){a=new XDomainRequest()}else{Ext.Error.raise({msg:"Your browser does not support CORS"})}return a},getXhrInstance:(function(){var b=[function(){return new XMLHttpRequest()},function(){return new ActiveXObject("MSXML2.XMLHTTP.3.0")},function(){return new ActiveXObject("MSXML2.XMLHTTP")},function(){return new ActiveXObject("Microsoft.XMLHTTP")}],c=0,a=b.length,g;for(;c<a;++c){try{g=b[c];g();break}catch(d){}}return g}()),isLoading:function(a){if(!a){a=this.getLatest()}if(!(a&&a.xhr)){return false}var b=a.xhr.readyState,c=Ext.data.flash&&Ext.data.flash.BinaryXhr;return((a.xhr instanceof c)&&b!=4)||!(b===0||b==4)},abort:function(b){var a=this,d;if(!b){b=a.getLatest()}if(b&&a.isLoading(b)){d=b.xhr;try{d.onreadystatechange=null}catch(c){d.onreadystatechange=Ext.emptyFn}d.abort();a.clearTimeout(b);if(!b.timedout){b.aborted=true}a.onComplete(b);a.cleanup(b)}},abortAll:function(){var b=this.requests,a;for(a in b){if(b.hasOwnProperty(a)){this.abort(b[a])}}},getLatest:function(){var b=this.latestId,a;if(b){a=this.requests[b]}return a||null},onStateChange:function(d,b){var c=this,a=Ext.GlobalEvents;if((d.xhr&&d.xhr.readyState==4)||c.isXdr){c.clearTimeout(d);c.onComplete(d,b);c.cleanup(d);if(a.hasListeners.idle){a.fireEvent("idle")}}},clearTimeout:function(a){clearTimeout(a.timeout);delete a.timeout},cleanup:function(a){a.xhr=null;delete a.xhr},onComplete:function(b,j){var d=this,k=b.options,h,l,g,a;try{h=b.xhr;l=d.parseStatus(h.status);if(l.success){l.success=h.readyState===4}}catch(c){l={success:false,isException:false}}g=d.isXdr?j:l.success;if(g){a=d.createResponse(b);d.fireEvent("requestcomplete",d,a,k);Ext.callback(k.success,k.scope,[a,k])}else{if(l.isException||b.aborted||b.timedout){a=d.createException(b)}else{a=d.createResponse(b)}d.fireEvent("requestexception",d,a,k);Ext.callback(k.failure,k.scope,[a,k])}Ext.callback(k.callback,k.scope,[k,g,a]);delete d.requests[b.id];return a},parseStatus:function(a){a=a==1223?204:a;var c=(a>=200&&a<300)||a==304,b=false;if(!c){switch(a){case 12002:case 12029:case 12030:case 12031:case 12152:case 13030:b=true;break}}return{success:c,isException:b}},createResponse:function(e){var j=this,l=e.xhr,c=j.getIsXdr(),b={},m=c?[]:l.getAllResponseHeaders().replace(/\r\n/g,"\n").split("\n"),h=m.length,n,g,k,d,a;while(h--){n=m[h];g=n.indexOf(":");if(g>=0){k=n.substr(0,g).toLowerCase();if(n.charAt(g+1)==" "){++g}b[k]=n.substr(g+1)}}e.xhr=null;delete e.xhr;d={request:e,requestId:e.id,status:l.status,statusText:l.statusText,getResponseHeader:function(o){return b[o.toLowerCase()]},getAllResponseHeaders:function(){return b}};if(c){j.processXdrResponse(d,l)}if(e.binary){d.responseBytes=j.getByteArray(l)}else{d.responseText=l.responseText;d.responseXML=l.responseXML}l=null;return d},createException:function(a){return{request:a,requestId:a.id,status:a.aborted?-1:0,statusText:a.aborted?"transaction aborted":"communication failure",aborted:a.aborted,timedout:a.timedout}},getByteArray:function(k){var c=k.response,b=k.responseBody,l=Ext.data.flash&&Ext.data.flash.BinaryXhr,a,j,g,d;if(k instanceof l){a=k.responseBytes}else{if(window.Uint8Array){a=c?new Uint8Array(c):[]}else{if(Ext.isIE9p){try{a=new VBArray(b).toArray()}catch(h){a=[]}}else{if(Ext.isIE){if(!this.self.vbScriptInjected){this.injectVBScript()}getIEByteArray(k.responseBody,a=[])}else{a=[];j=k.responseText;g=j.length;for(d=0;d<g;d++){a.push(j.charCodeAt(d)&255)}}}}}return a},injectVBScript:function(){var a=document.createElement("script");a.type="text/vbscript";a.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(a);this.self.vbScriptInjected=true},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.ComponentManager",Ext.Base,{alternateClassName:"Ext.ComponentMgr",singleton:true,count:0,typeName:"xtype",constructor:function(a){Ext.apply(this,a||{});this.all={};this.references={};this.onAvailableCallbacks={}},create:function(a,b){if(typeof a=="string"){return Ext.widget(a)}if(a.isComponent){return a}if("xclass" in a){return Ext.create(a.xclass,a)}return Ext.widget(a.xtype||b,a)},get:function(a){return this.all[a]},register:function(a){var c=this.all,b=a.getId();c[b]=a;if(a.reference){this.references[b]=a}this.count++;if((this.onAvailableCallbacks[b]||[]).length){this.notifyAvailable(a)}},unregister:function(a){var b=a.getId();if(a.reference){delete this.references[b]}delete this.all[b];this.count--},markReferencesDirty:function(){this.referencesDirty=true},fixReferences:function(){var c=this,b=c.references,a;if(c.referencesDirty){for(a in b){if(b.hasOwnProperty(a)){b[a].fixReference()}}c.referencesDirty=false}},onAvailable:function(h,c,b){var g=this,e=g.onAvailableCallbacks,a=g.all,d;if(h in a){d=a[h];c.call(b||d,d)}else{if(h){if(!Ext.isArray(e[h])){e[h]=[]}e[h].push(function(j){c.call(b||j,j)})}}},notifyAvailable:function(b){var a=this.onAvailableCallbacks[b&&b.getId()]||[];while(a.length){(a.shift())(b)}},each:function(b,a){return Ext.Object.each(this.all,b,a)},getCount:function(){return this.count},getAll:function(){return Ext.Object.getValues(this.all)},deprecated:{5:{methods:{isRegistered:null,registerType:null}}}},1,0,0,0,0,0,[Ext,"ComponentManager",Ext,"ComponentMgr"],function(){Ext.getCmp=function(a){return Ext.ComponentManager.get(a)}}));Ext.ns("Ext.util").Operators={"=":function(b,c){return b==c},"!=":function(b,c){return b!=c},"^=":function(b,c){return b&&b.substr(0,c.length)==c},"$=":function(b,c){return b&&b.substr(b.length-c.length)==c},"*=":function(b,c){return b&&b.indexOf(c)!==-1},"%=":function(b,c){return(b%c)===0},"|=":function(b,c){return b&&(b==c||b.substr(0,c.length+1)==c+"-")},"~=":function(b,c){return b&&(" "+b+" ").indexOf(" "+c+" ")!=-1}};(Ext.cmd.derive("Ext.util.LruCache",Ext.util.HashMap,{config:{maxSize:null},add:function(b,e){var d=this,a=d.findKey(e),c;if(a){d.unlinkEntry(c=d.map[a]);c.prev=d.last;c.next=null}else{c={prev:d.last,next:null,key:b,value:e}}if(d.last){d.last.next=c}else{d.first=c}d.last=c;Ext.util.HashMap.prototype.add.apply(this,[b,c]);d.prune();return e},insertBefore:function(b,g,c){var e=this,a,d;if(c=this.map[this.findKey(c)]){a=e.findKey(g);if(a){e.unlinkEntry(d=e.map[a])}else{d={prev:c.prev,next:c,key:b,value:g}}if(c.prev){d.prev.next=d}else{e.first=d}d.next=c;c.prev=d;e.prune();return g}else{return e.add(b,g)}},get:function(a){var b=this.map[a];if(b){if(b.next){this.moveToEnd(b)}return b.value}},removeAtKey:function(a){this.unlinkEntry(this.map[a]);return Ext.util.HashMap.prototype.removeAtKey.apply(this,arguments)},clear:function(a){this.first=this.last=null;return Ext.util.HashMap.prototype.clear.apply(this,arguments)},unlinkEntry:function(a){if(a){if(a.next){a.next.prev=a.prev}else{this.last=a.prev}if(a.prev){a.prev.next=a.next}else{this.first=a.next}a.prev=a.next=null}},moveToEnd:function(a){this.unlinkEntry(a);if(a.prev=this.last){this.last.next=a}else{this.first=a}this.last=a},getArray:function(c){var a=[],b=this.first;while(b){a.push(c?b.key:b.value);b=b.next}return a},each:function(c,b,a){var g=this,e=a?g.last:g.first,d=g.length;b=b||g;while(e){if(c.call(b,e.key,e.value,d)===false){break}e=a?e.prev:e.next}return g},findKey:function(b){var a,c=this.map;for(a in c){if(c.hasOwnProperty(a)&&c[a].value===b){return a}}return undefined},clone:function(){var a=new this.self(this.initialConfig),c=this.map,b;a.suspendEvents();for(b in c){if(c.hasOwnProperty(b)){a.add(b,c[b].value)}}a.resumeEvents();return a},prune:function(){var b=this,a=b.getMaxSize(),c=a?(b.length-a):0;if(c>0){for(;b.first&&c;c--){b.removeAtKey(b.first.key)}}}},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 g=this,t=Ext.util.Operators,l=/(\d*)n\+?(\d*)/,e=/\D/,n=/^(\s)+/,m=/\\(.)/g,o=new Ext.util.LruCache({maxSize:100}),p=["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(""),q=function(v,u){return u.method.apply(this,[v].concat(u.args))},a=function(w,A){var u=[],x=0,z=w.length,y,v=A!==">";for(;x<z;x++){y=w[x];if(y.getRefItems){u=u.concat(y.getRefItems(v))}}return u},h=function(v){var u=[],w=0,y=v.length,x;for(;w<y;w++){x=v[w];while(!!(x=x.getRefOwner())){u.push(x)}}return u},d=function(v,A,z){if(A==="*"){return v.slice()}else{var u=[],w=0,y=v.length,x;for(;w<y;w++){x=v[w];if(x.isXType(A,z)){u.push(x)}}return u}},b=function(C,D,x,w){var G=[],B=0,v=C.length,F,y,E,u,A,z;if(D.charAt(0)==="@"){F=true;D=D.substr(1)}if(D.charAt(0)==="?"){F=true;y=true;D=D.substr(1)}for(;B<v;B++){E=C[B];if(!F||E.hasOwnProperty(D)){u=E[D];if(y){G.push(E)}else{if(x==="~="){if(u){if(!Ext.isArray(u)){u=u.split(" ")}for(A=0,z=u.length;A<z;A++){if(t[x](Ext.coerce(u[A],w),w)){G.push(E);break}}}}else{if(x==="/="){if(E[D]!==undefined&&w.test(E[D])){G.push(E)}}else{if(!w?!!E[D]:t[x](Ext.coerce(u,w),w)){G.push(E)}}}}}}return G},j=function(v,z){var u=[],w=0,y=v.length,x;for(;w<y;w++){x=v[w];if(x.getItemId()===z){u.push(x)}}return u},s=function(u,v,w){return g.pseudos[v](u,w)},k=/^(\s?([>\^])\s?|\s|$)/,r=/^(#)?((?:\\\.|[\w\-])+|\*)(?:\((true|false)\))?/,c=[{re:/^\.((?:\\\.|[\w\-])+)(?:\((true|false)\))?/,method:d,argTransform:function(u){if(u[1]!==undefined){u[1]=u[1].replace(m,"$1")}return u.slice(1)}},{re:/^(?:\[((?:[@?$])?[\w\-]*)\s*(?:([\^$*~%!\/]?=)\s*(['"])?((?:\\\]|.)*?)\3)?(?!\\)\])/,method:b,argTransform:function(y){var u=y[0],z=y[1],w=y[2],v=y[3],x=y[4],A;if(x!==undefined){x=x.replace(m,"$1")}if(w==="/="){A=o.get(x);if(A){x=A}else{x=o.add(x,new RegExp(x))}}return[z,w,x]}},{re:/^#((?:\\\.|[\w\-])+)/,method:j},{re:/^\:([\w\-]+)(?:\(((?:\{[^\}]+\})|(?:(?!\{)[^\s>\/]*?(?!\})))\))?/,method:s,argTransform:function(u){if(u[2]!==undefined){u[2]=u[2].replace(m,"$1")}return u.slice(1)}},{re:/^(?:\{([^\}]+)\})/,method:p}];g.Query=Ext.extend(Object,{constructor:function(u){u=u||{};Ext.apply(this,u)},execute:function(w){var x=this.operations,v=[],z,y,u;for(y=0,u=x.length;y<u;y++){z=x[y];v=v.concat(this._execute(w,z))}return v},_execute:function(v,x){var y=0,z=x.length,w,u;if(!v){u=Ext.ComponentManager.getAll()}else{if(Ext.isIterable(v)){u=v}else{if(v.isMixedCollection){u=v.items}}}for(;y<z;y++){w=x[y];if(w.mode==="^"){u=h(u||[v])}else{if(w.mode){u=a(u||[v],w.mode)}else{u=q(u||a([v]),w)}}if(y===z-1){return u}}return[]},is:function(x){var w=this.operations,v=false,u=w.length,z,y;if(u===0){return true}for(y=0;y<u;y++){z=w[y];v=this._is(x,z);if(v){return v}}return false},_is:function(D,u){var B=u.length,v=[D],w,y,x,A,z,C,E;for(y=B-1;y>=0;--y){w=u[y];A=w.mode;if(A){if(A==="^"){v=a(v," ")}else{if(A===">"){C=[];for(x=0,B=v.length;x<B;++x){E=v[x].getRefOwner();if(E){C.push(E)}}v=C}else{v=h(v)}}if(v.length===0){return false}}else{v=q(v,w);if(v.length===0){return false}}}return true},getMatches:function(x,v){var u=v.length,w;for(w=0;w<u;++w){x=q(x,v[w]);if(x.length===0){break}}return x},isMultiMatch:function(){return this.operations.length>1}});Ext.apply(this,{cache:new Ext.util.LruCache({maxSize:100}),pseudos:{not:function(A,u){var B=Ext.ComponentQuery,y=0,z=A.length,x=[],w=-1,v;for(;y<z;++y){v=A[y];if(!B.is(v,u)){x[++w]=v}}return x},first:function(v){var u=[];if(v.length>0){u.push(v[0])}return u},last:function(w){var u=w.length,v=[];if(u>0){v.push(w[u-1])}return v},focusable:function(v){var u=v.length,x=[],w=0,y;for(;w<u;w++){y=v[w];if(y.isFocusable()){x.push(y)}}return x},"nth-child":function(A,B){var C=[],v=l.exec(B=="even"&&"2n"||B=="odd"&&"2n+1"||!e.test(B)&&"n+"+B||B),z=(v[1]||1)-0,x=v[2]-0,y,u,w;for(y=0;u=A[y];y++){w=y+1;if(z==1){if(x==0||w==x){C.push(u)}}else{if((w+x)%z==0){C.push(u)}}}return C}},query:function(u,B){if(!u){return Ext.ComponentManager.all.getArray()}var w=[],C=[],z={},y=this.cache.get(u),x,A,v;if(!y){y=this.cache.add(u,this.parse(u))}w=y.execute(B);if(y.isMultiMatch()){x=w.length;for(v=0;v<x;v++){A=w[v];if(!z[A.id]){C.push(A);z[A.id]=true}}w=C}return w},visitPreOrder:function(u,w,y,x,v){this._visit(true,u,w,y,x,v)},visitPostOrder:function(u,w,y,x,v){this._visit(false,u,w,y,x,v)},_visit:function(F,v,E,D,G,z){var C=this,B=C.cache.get(v),y=[E],u,A=0,x,w;if(!B){B=C.cache.add(v,C.parse(v))}w=B.is(E);if(E.getRefItems){u=E.getRefItems();A=u.length}if(z){Ext.Array.push(y,z)}if(F){if(w){if(D.apply(G||E,y)===false){return false}}}for(x=0;x<A;x++){if(C._visit.call(C,F,v,u[x],D,G,z)===false){return false}}if(!F){if(w){if(D.apply(G||E,y)===false){return false}}}},is:function(v,u){if(!u){return true}var w=this.cache.get(u);if(!w){w=this.cache.add(u,this.parse(u))}return w.is(v)},parse:function(v){var w=[],y,z,x,u;y=Ext.splitAndUnescape(v,",");for(x=0,u=y.length;x<u;x++){z=Ext.String.trim(y[x]);w.push(this._parse(z))}return new g.Query({operations:w})},_parse:function(A){var v=[],y=Ext.String.trim,w=c.length,F,B,z,G,H,I,x,C,D,u,E;while(A&&F!==A){F=A;B=A.match(r);if(B){G=B[1];z=y(B[2]).replace(m,"$1");if(G==="#"){v.push({method:j,args:[z]})}else{v.push({method:d,args:[z,Boolean(B[3])]})}A=A.replace(B[0],"").replace(n,"$1")}while(!(H=A.match(k))){for(C=0;A&&C<w;C++){D=c[C];I=A.match(D.re);u=D.method;x=D.argTransform;if(I){if(x){E=x(I)}else{E=I.slice(1)}v.push({method:Ext.isString(D.method)?Ext.functionFactory("items",Ext.String.format.apply(Ext.String,[u].concat(I.slice(1)))):D.method,args:E});A=A.replace(I[0],"").replace(n,"$1");break}if(C===(w-1)){Ext.Error.raise('Invalid ComponentQuery selector: "'+arguments[0]+'"')}}}if(H[1]){v.push({mode:H[2]||H[1]});A=A.replace(H[0],"").replace(n,"")}}return v}})}));(Ext.cmd.derive("Ext.Evented",Ext.Base,{alternateClassName:"Ext.EventedBase",statics:{generateSetter:function(a){var h=a.names,b=a.name,e=h.internal,d=h.apply,c=h.changeEvent,g=h.doSet;return function(n){var m=this,l=m.$configPrefixed?e:b,o=m.initialized,k,j=m[d];if(j){n=j.call(m,n,m[l]);if(n===undefined){return m}}k=m[l];if(n!==k){if(o){m.fireAction(c,[m,n,k],m.doSet,m,{nameMap:h})}else{m[l]=n;if(m[g]){m[g](n,k)}}}return this}}},initialized:false,constructor:function(a){this.mixins.observable.constructor.call(this,a);this.initialized=true},doSet:function(c,d,b,a){var e=a.nameMap;c[e.internal]=d;if(c[e.doSet]){c[e.doSet].call(this,d,b)}},onClassExtended:function(b,e){if(!e.hasOwnProperty("eventedConfig")){return}var d=e.config,h=e.eventedConfig,g="eventedSetter",c,a;if(d){Ext.applyIf(d,h)}else{b.addConfig(h)}for(c in h){if(h.hasOwnProperty(c)){a=Ext.Config.get(c);e[a.names.set]=a[g]||(a[g]=this.generateSetter(a))}}}},1,0,0,0,0,[[Ext.mixin.Observable.prototype.mixinId||Ext.mixin.Observable.$className,Ext.mixin.Observable]],[Ext,"Evented",Ext,"EventedBase"],0));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.Error.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.TaskQueue",Ext.Base,{singleton:true,pending:false,mode:true,constructor:function(){this.readQueue=[];this.writeQueue=[];this.run=Ext.Function.bind(this.run,this);this.watch=Ext.Function.bind(this.watch,this);if(Ext.os.is.iOS){setInterval(this.watch,500)}},requestRead:function(c,b,a){this.request(true);this.readQueue.push(arguments)},requestWrite:function(c,b,a){this.request(false);this.writeQueue.push(arguments)},request:function(a){if(!this.pending){this.pendingTime=Date.now();this.pending=true;this.mode=a;if(a){setTimeout(this.run,1)}else{Ext.Function.requestAnimationFrame(this.run)}}},watch:function(){if(this.pending&&Date.now()-this.pendingTime>=500){this.run()}},run:function(){this.pending=false;var k=this.readQueue,e=this.writeQueue,c=null,g;if(this.mode){g=k;if(e.length>0){c=false}}else{g=e;if(k.length>0){c=true}}var b=g.slice(),d,h,a,j,l;g.length=0;for(d=0,h=b.length;d<h;d++){a=b[d];j=a[0];l=a[1];if(typeof j=="string"){j=l[j]}if(a.length>2){j.apply(l,a[2])}else{j.call(l)}}b.length=0;if(c!==null){this.request(c)}}},1,0,0,0,0,0,[Ext,"TaskQueue"],0));(Ext.cmd.derive("Ext.util.Format",Ext.Base,function(){var a;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(){a=this},undef:function(b){return b!==undefined?b:""},defaultValue:function(c,b){return c!==undefined&&c!==""?c:b},substr:"ab".substr(-1)!="b"?function(c,e,b){var d=String(c);return(e<0)?d.substr(Math.max(d.length+e,0),b):d.substr(e,b)}:function(c,d,b){return String(c).substr(d,b)},lowercase:function(b){return String(b).toLowerCase()},uppercase:function(b){return String(b).toUpperCase()},usMoney:function(b){return a.currency(b,"$",2)},currency:function(d,g,c,b){var j="",h=",0",e=0;d=d-0;if(d<0){d=-d;j="-"}c=Ext.isDefined(c)?c:a.currencyPrecision;h+=(c>0?".":"");for(;e<c;e++){h+="0"}d=a.number(d,h);if((b||a.currencyAtEnd)===true){return Ext.String.format("{0}{1}{2}",j,d,g||a.currencySign)}else{return Ext.String.format("{0}{1}{2}",j,g||a.currencySign,d)}},date:function(b,c){if(!b){return""}if(!Ext.isDate(b)){b=new Date(Date.parse(b))}return Ext.Date.dateFormat(b,c||Ext.Date.defaultFormat)},dateRenderer:function(b){return function(c){return a.date(c,b)}},hex:function(d,c){var b=parseInt(d||0,10).toString(16);if(c){if(c<0){c=-c;if(b.length>c){b=b.substring(b.length-c)}}while(b.length<c){b="0"+b}}return b},or:function(c,b){return c||b},pick:function(d,c,e){if(Ext.isNumber(d)){var b=arguments[d+1];if(b){return b}}return d?e:c},stripTags:function(b){return !b?b:String(b).replace(a.stripTagsRe,"")},stripScripts:function(b){return !b?b:String(b).replace(a.stripScriptsRe,"")},fileSize:(function(){var b=1024,c=1048576,d=1073741824;return function(g){var e;if(g<b){if(g===1){e="1 byte"}else{e=g+" bytes"}}else{if(g<c){e=(Math.round(((g*10)/b))/10)+" KB"}else{if(g<d){e=(Math.round(((g*10)/c))/10)+" MB"}else{e=(Math.round(((g*10)/d))/10)+" GB"}}}return e}})(),math:(function(){var b={};return function(d,c){if(!b[c]){b[c]=Ext.functionFactory("v","return v "+c+";")}return b[c](d)}}()),round:function(d,c){var b=Number(d);if(typeof c==="number"){c=Math.pow(10,c);b=Math.round(d*c)/c}else{if(c===undefined){b=Math.round(b)}}return b},number:function(n,g){if(!g){return n}if(isNaN(n)){return""}var e=a.formatFns[g];if(!e){var k=g,q=a.thousandSeparator,o=a.decimalSeparator,h=0,d="",c,l,m,p,b,j;if(g.substr(g.length-2)==="/i"){if(!a.I18NFormatCleanRe||a.lastDecimalSeparator!==o){a.I18NFormatCleanRe=new RegExp("[^\\d\\"+o+"]","g");a.lastDecimalSeparator=o}g=g.substr(0,g.length-2);c=g.indexOf(q)!==-1;l=g.replace(a.I18NFormatCleanRe,"").split(o)}else{c=g.indexOf(",")!==-1;l=g.replace(a.formatCleanRe,"").split(".")}m=g.replace(a.formatPattern,"");if(l.length>2){}else{if(l.length===2){h=l[1].length;p=l[1].match(a.hashRe);if(p){j=p[0].length;d='trailingZeroes=new RegExp(Ext.String.escapeRegex(utilFormat.decimalSeparator) + "*0{0,'+j+'}$")'}}}b=["var utilFormat=Ext.util.Format,extNumber=Ext.Number,neg,absVal,fnum,parts"+(c?",thousandSeparator,thousands=[],j,n,i":"")+(m?',formatString="'+g+'",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, "+h+");",d,";"];if(c){if(h){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(h){b[b.length]="fnum += utilFormat.decimalSeparator+parts[1];"}}else{if(h){b[b.length]='if(utilFormat.decimalSeparator!=="."){parts=fnum.split(".");fnum=parts[0]+utilFormat.decimalSeparator+parts[1];}'}}if(p){b[b.length]='fnum=fnum.replace(trailingZeroes,"");'}b[b.length]='if(neg&&fnum!=="'+(h?"0."+Ext.String.repeat("0",h):"0")+'")fnum="-"+fnum;';b[b.length]="return ";if(m){b[b.length]="formatString.replace(formatPattern, fnum);"}else{b[b.length]="fnum;"}b[b.length]="};";e=a.formatFns[k]=Ext.functionFactory("Ext",b.join(""))(Ext)}return e(n)},numberRenderer:function(b){return function(c){return a.number(c,b)}},percent:function(c,b){return a.number(c*100,b||"0")+a.percentSign},attributes:function(c){if(typeof c==="object"){var b=[],d;for(d in c){if(c.hasOwnProperty(d)){b.push(d,'="',d==="style"?Ext.DomHelper.generateStyles(c[d],null,true):Ext.htmlEncode(c[d]),'" ')}}c=b.join("")}return c||""},plural:function(b,c,d){return b+" "+(b===1?c:(d?d:c+"s"))},nl2br:function(b){return Ext.isEmpty(b)?"":b.replace(a.nl2brRe,"<br/>")},capitalize:Ext.String.capitalize,uncapitalize:Ext.String.uncapitalize,ellipsis:Ext.String.ellipsis,escape:Ext.String.escape,escapeRegex:Ext.String.escapeRegex,format:Ext.String.format,htmlDecode:Ext.String.htmlDecode,htmlEncode:Ext.String.htmlEncode,leftPad:Ext.String.leftPad,toggle:Ext.String.toggle,trim:Ext.String.trim,parseBox:function(c){c=c||0;if(typeof c==="number"){return{top:c,right:c,bottom:c,left:c}}var d=c.split(" "),b=d.length;if(b===1){d[1]=d[2]=d[3]=d[0]}else{if(b===2){d[2]=d[0];d[3]=d[1]}else{if(b===3){d[3]=d[1]}}}return{top:parseInt(d[0],10)||0,right:parseInt(d[1],10)||0,bottom:parseInt(d[2],10)||0,left:parseInt(d[3],10)||0}}}},1,0,0,0,0,0,[Ext.util,"Format"],0));(Ext.cmd.derive("Ext.Template",Ext.Base,{inheritableStatics:{from:function(b,a){b=Ext.getDom(b);return new this(b.value||b.innerHTML,a||"")}},useEval:Ext.isGecko,constructor:function(d){var g=this,b=arguments,a=[],c,e=b.length,h;g.initialConfig={};if(e===1&&Ext.isArray(d)){b=d;e=b.length}if(e>1){for(c=0;c<e;c++){h=b[c];if(typeof h=="object"){Ext.apply(g.initialConfig,h);Ext.apply(g,h)}else{a.push(h)}}}else{a.push(d)}g.html=a.join("")},isTemplate:true,disableFormats:false,tokenRe:/\{(?:(?:(\d+)|([a-z_][\w\-]*))(?::([a-z_\.]+)(?:\(([^\)]*?)?\))?)?)\}/gi,apply:function(a){var b=this;if(b.compiled){if(!b.fn){b.compile()}return b.fn(a).join("")}return b.evaluate(a)},evaluate:function(a){var g=this,c=!g.disableFormats,e=Ext.util.Format,b=g;function d(l,k,j,m,h){if(j==null||j==""){j=k}if(m&&c){if(h){h=[a[j]].concat(Ext.functionFactory("return ["+h+"];")())}else{h=[a[j]]}if(m.substr(0,5)==="this."){return b[m.substr(5)].apply(b,h)}else{if(e[m]){return e[m].apply(e,h)}else{return l}}}else{return a[j]!==undefined?a[j]:""}}return g.html.replace(g.tokenRe,d)},applyOut:function(a,b){var c=this;if(c.compiled){if(!c.fn){c.compile()}b.push.apply(b,c.fn(a))}else{b.push(c.apply(a))}return b},applyTemplate:function(){return this.apply.apply(this,arguments)},set:function(a,c){var b=this;b.html=a;b.compiled=!!c;b.fn=null;return b},compileARe:/\\/g,compileBRe:/(\r\n|\n)/g,compileCRe:/'/g,compile:function(){var b=this,a;a=b.html.replace(b.compileARe,"\\\\").replace(b.compileBRe,"\\n").replace(b.compileCRe,"\\'").replace(b.tokenRe,b.regexReplaceFn.bind(b));a=(this.disableFormats!==true?"var fm=Ext.util.Format;":"")+(b.useEval?"$=":"return")+" function(v){return ['"+a+"'];};";b.fn=b.useEval?b.evalCompiled(a):(new Function("Ext",a))(Ext);b.compiled=true;return b},evalCompiled:function($){eval($);return $},regexReplaceFn:function(d,c,b,e,a){if(c==null||c==""){c='"'+b+'"'}else{if(this.stringFormat){c=parseInt(c)+1}}if(e&&this.disableFormats!==true){a=a?","+a:"";if(e.substr(0,5)==="this."){e=e+"("}else{if(Ext.util.Format[e]){e="fm."+e+"("}else{return d}}return"',"+e+"v["+c+"]"+a+"),'"}else{return"',v["+c+"] == undefined ? '' : v["+c+"],'"}},insertFirst:function(b,a,c){return this.doInsert("afterBegin",b,a,c)},insertBefore:function(b,a,c){return this.doInsert("beforeBegin",b,a,c)},insertAfter:function(b,a,c){return this.doInsert("afterEnd",b,a,c)},append:function(b,a,c){return this.doInsert("beforeEnd",b,a,c)},doInsert:function(b,d,a,e){var c=Ext.DomHelper.insertHtml(b,Ext.getDom(d),this.apply(a));return e?Ext.get(c):c},overwrite:function(c,a,d){var b=Ext.DomHelper.overwrite(Ext.getDom(c),this.apply(a));return d?Ext.get(b):b}},1,0,0,0,0,0,[Ext,"Template"],0));(Ext.cmd.derive("Ext.mixin.Inheritable",Ext.Mixin,{mixinConfig:{id:"inheritable"},getInherited:function(b){var h=this,g=(b&&h.inheritedStateInner)||h.inheritedState,e=h.ownerCt||h.initOwnerCt,d=h.isContainer,c,a,j;if(!g||g.invalid){c=h.getRefOwner();if(e){j=h.ownerLayout===e.layout}h.inheritedState=g=Ext.Object.chain(c?c.getInherited(j):Ext.rootInheritedState);if(d){h.inheritedStateInner=a=Ext.Object.chain(g)}h.initInheritedState(g,a);g=(d&&b)?h.inheritedStateInner:h.inheritedState}return g},getInheritedConfig:function(e,a){var d=this.inheritedState,b,c;if(!d||d.invalid){d=this.getInherited()}c=d[e];if(a&&d.hasOwnProperty(e)){b=c;delete d[e];c=d[e];d[e]=b}return c},fixReference:function(){var a=this,b;if(a.reference){b=a.lookupReferenceHolder();if(b){b.attachReference(a)}}},resolveListenerScope:function(d){var b,a=d==="this",c=a||d==="controller";if(c){if(a){b=this}else{b=this.getController()}}else{b=this.getInheritedConfig("defaultListenerScope",true)||d}return b||null},lookupReferenceHolder:function(a){return this.getInheritedConfig("referenceHolder",a!==false)||null},getRefOwner:function(){return this.ownerCt||this.initOwnerCt||this.floatParent},initInheritedState:Ext.emptyFn,invalidateInheritedState:function(){var a=this.inheritedState;if(a){a.invalid=true;delete this.inheritedState}}},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(b,a){return this.mergeSets(b,a)}},reference:null,session:{$value:null,lazy:true},twoWayBindable:{$value:null,lazy:true,merge:function(b,a){return this.mergeSets(b,a)}},viewModel:{$value:null,lazy:true}},defaultBindProperty:null,validRefRe:/^[a-z_][a-z0-9_]*$/i,initInheritedState:function(d){var e=this,a=e.getReference(),b=e.getController(),c=e.getConfig("viewModel",true),g=e.getConfig("session",true);if(b){d.defaultListenerScope=b}else{if(e.defaultListenerScope||e._defaultListenerScope){d.defaultListenerScope=e}}if(c){if(!c.isViewModel){c=e}d.viewModel=c}if(g){if(!g.isSession){g=e}d.session=g}if(a){e.referenceKey=(d.referencePath||"")+a;e.viewModelKey=(d.viewModelPath||"")+a}},lookupSession:function(a){var b=a?null:this.getSession();if(!b){b=this.getInheritedConfig("session",a);if(b&&!b.isSession){b=b.getInherited().session=b.getSession()}}return b||null},lookupViewModel:function(a){var b=a?null:this.getViewModel();if(!b){b=this.getInheritedConfig("viewModel",a);if(b&&!b.isViewModel){b=b.getInherited().viewModel=b.getViewModel()}}return b||null},publishState:function(l,k){var j=this,m=j.viewModelKey,c=j.publishedState,e=j.getBind(),h=e&&l&&e[l],g=0,b,a,d;if(h&&!h.syncing&&!h.isReadOnly()){h.setValue(k)}if(!m||!(a=j.getPublishes())){return}if(!(d=j.lookupViewModel())){return}if(l&&c){if(!a[l]){return}if(!(k&&k.constructor===Object)&&!(k instanceof Array)){if(c[l]===k){return}}m+=".";m+=l}else{c=c||(j.publishedState={});for(b in a){++g;if(b===l){c[b]=k}else{c[b]=j[b]}}if(!g){return}k=c}d.set(m,k)},privates:{addBindableUpdater:function(c){var b=this,d=b.self.$config.configs,a=d[c],e;if(a&&!b.hasOwnProperty(e=a.names.update)){b[e]=a.bindableUpdater||(a.root.bindableUpdater=b.makeBindableUpdater(a))}},applyBind:function(d,l){var g=this,j=g.lookupViewModel(),e=g.getTwoWayBindable(),a=g._getBindTemplateScope,h,k,c;if(!l||typeof l==="string"){l={}}if(Ext.isString(d)){h=d;d={};d[g.defaultBindProperty]=h}for(k in d){c=d[k];h=l[k];if(h&&typeof h!=="string"){h.destroy();h=null}if(c){h=j.bind(c,g.onBindNotify,g);h._config=Ext.Config.get(k);h.getTemplateScope=a}l[k]=h;if(e&&e[k]&&!h.isReadOnly()){g.addBindableUpdater(k)}}return l},applyController:function(a){a=Ext.Factory.controller(a);a.setView(this);return a},applyPublishes:function(a){if(this.lookupViewModel()){for(var b in a){this.addBindableUpdater(b)}}return a},applySession:function(c){if(!c){return null}if(!c.isSession){var b=this.lookupSession(true),a=(c===true)?{}:c;if(b){c=b.spawn(a)}else{c=new Ext.data.Session(a)}}return c},applyViewModel:function(b){var c=this,a,d;if(!(b&&b.isViewModel)){a={parent:c.lookupViewModel(true)};a.session=c.getSession();if(!d&&!a.parent){a.session=c.lookupSession()}if(b){if(b.constructor===Object){Ext.apply(a,b)}else{if(typeof b==="string"){a.type=b}}}b=Ext.Factory.viewModel(a)}return b},_getBindTemplateScope:function(){return this.scope.resolveListenerScope()},initBindable:function(){this.initBindable=Ext.emptyFn;this.getBind();this.getPublishes()},makeBindableUpdater:function(a){var b=a.names.update;return function(e,c){var d=this,g=d.self.prototype[b];if(g){g.call(d,e,c)}d.publishState(a.name,e)}},onBindNotify:function(b,a,c){c.syncing=(c.syncing+1)||1;this[c._config.names.set](b);--c.syncing},removeBindings:function(){var c=this.bind,a,b;if(c&&typeof c!=="string"){for(a in c){b=c[a];b.destroy();b._config=b.getTemplateScope=null}}this.bind=null},updateSession:function(b){var a=this.getInherited();if(b){a.session=b}else{delete a.session}},updateViewModel:function(b){var c=this.getInherited(),a=this.getController();if(b){c.viewModel=b;b.setView(this);if(a){a.initViewModel(b)}}else{delete c.viewModel}}}},0,0,0,0,0,0,[Ext.mixin,"Bindable"],0));(Ext.cmd.derive("Ext.Widget",Ext.Evented,{isWidget:true,element:{reference:"element"},eventedConfig:{width:null,height:null},template:[],constructor:function(a){var b=this;b.initId(a);b.initElement();b.mixins.observable.constructor.call(b,a);Ext.ComponentManager.register(b)},addElementReferenceOnDemand:function(a,b){if(this._elementListeners[a]){this.addElementReference(a,b)}else{Ext.Object.defineProperty(this,a,{get:function(){delete this[a];return this.addElementReference(a,b)},configurable:true})}},addElementReference:function(c,e){var g=this,b=g[c]=Ext.get(e),d=g._elementListeners[c],a,h;b.skipGarbageCollection=true;b.component=g;if(d){d=Ext.clone(d);d.scope=g;for(a in d){h=d[a];if(typeof h==="object"){h.scope=g}}b.on(d)}return b},afterCachedConfig:function(){var j=this,k=j.self.prototype,l=j.referenceList,c=j.renderElement.dom,g,d,e,h,b,a;k.renderTemplate=g=document.createDocumentFragment();g.appendChild(c.cloneNode(true));a=g.querySelectorAll("[id]");for(e=0,h=a.length;e<h;e++){d=a[e];d.removeAttribute("id")}for(e=0,h=l.length;e<h;e++){b=l[e];j[b].dom.removeAttribute("reference")}},applyWidth:function(a){return this.filterLengthValue(a)},applyHeight:function(a){return this.filterLengthValue(a)},destroy:function(){var e=this,b=e.referenceList,c,d,a;for(c=0,d=b.length;c<d;c++){a=b[c];if(e.hasOwnProperty(a)){e[a].destroy();e[a]=null}}Ext.mixin.Observable.prototype.destroy.call(this);Ext.ComponentManager.unregister(e)},doSetWidth:function(a){this.element.setWidth(a)},doSetHeight:function(a){this.element.setHeight(a)},filterLengthValue:function(a){if(a==="auto"||(!a&&a!==0)){return null}return a},getElementConfig:function(){var b=this,a=b.element;if(!("children" in a)){a=Ext.apply({children:b.getTemplate()},a)}return a},getSize:function(){return{width:this.getWidth(),height:this.getHeight()}},getTemplate:function(){return this.template},initElement:function(){var m=this,n=m.self.prototype,a=m.getId(),p=m.referenceList=[],c=true,j,e,h,b,g,l,k,d,o;if(n.hasOwnProperty("renderTemplate")){j=m.renderTemplate.cloneNode(true);e=j.firstChild}else{c=false;j=document.createDocumentFragment();o=m.getElementConfig();m.initElementListeners(o);e=Ext.Element.create(o,true);j.appendChild(e)}b=j.querySelectorAll("[reference]");for(g=0,l=b.length;g<l;g++){k=b[g];d=k.getAttribute("reference");if(c){k.removeAttribute("reference")}if(d==="element"){k.id=a;h=m.el=m.addElementReference(d,k)}else{m.addElementReferenceOnDemand(d,k)}p.push(d)}if(e===h.dom){m.renderElement=h}else{m.addElementReferenceOnDemand("renderElement",e)}},initElementListeners:function(j){var h=this,g=h._elementListeners||(h.self.prototype._elementListeners={}),a=j.reference,c=j.children,d,e,b;if(a){d=j.listeners;if(d){g[a]=d;j.listeners=null}}if(c){for(b=0,e=c.length;b<e;b++){h.initElementListeners(c[b])}}},initId:function(b){var c=this,a=c.config,d=(b&&b.id)||(a&&a.id);if(d){c.setId(d);c.id=d}else{c.getId()}},is:function(a){return Ext.ComponentQuery.is(this,a)},isXType:function(b,a){return a?(Ext.Array.indexOf(this.xtypes,b)!==-1):!!this.xtypesMap[b]},setSize:function(b,a){if(b!==undefined){this.setWidth(b)}if(a!==undefined){this.setHeight(a)}}},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,"Widget"],0));Ext.define("Ext.overrides.Widget",{override:"Ext.Widget",$configStrict:false,isComponent:true,liquidLayout:true,rendered:true,rendering:true,cachedConfig:{baseCls:Ext.baseCSSPrefix+"widget"},constructor:function(a){this.callParent([a]);this.getComponentLayout()},addCls:function(a){this.el.addCls(a)},addClsWithUI:function(a){this.el.addCls(a)},afterComponentLayout:Ext.emptyFn,finishRender:function(){this.rendering=false;this.initBindable()},getComponentLayout:function(){var b=this,a=b.componentLayout;if(!a){a=b.componentLayout=new Ext.layout.component.Auto();a.setOwner(b)}return a},getTdCls:function(){return Ext.baseCSSPrefix+this.getTdType()+"-"+(this.ui||"default")+"-cell"},getTdType:function(){return this.xtype},getItemId:function(){return this.itemId||this.id},getSizeModel:function(){return Ext.Component.prototype.getSizeModel.apply(this,arguments)},onAdded:function(b,e,a){var d=this,c=d.inheritedState;d.ownerCt=b;if(c&&a){d.invalidateInheritedState()}if(d.reference){d.fixReference()}},onRemoved:function(b){var a=this,c;if(a.reference){c=a.lookupReferenceHolder();if(c){c.clearReference(a)}}if(!b){a.removeBindings()}if(a.inheritedState&&!b){a.invalidateInheritedState()}a.ownerCt=a.ownerLayout=null},parseBox:function(a){return Ext.Element.parseBox(a)},render:function(b,a){var c=this.element,d;if(a){nextSibiling=b.childNodes[a];if(d){b.insertBefore(c,d);return}}b.appendChild(c)},setPosition:function(a,b){this.el.setLocalXY(a,b)}},function(){var a;if(Ext.isIE8){a=Ext.Widget.prototype;a.addElementReferenceOnDemand=a.addElementReference}});(Ext.cmd.derive("Ext.util.XTemplateParser",Ext.Base,{constructor:function(a){Ext.apply(this,a)},doTpl:Ext.emptyFn,parse:function(o){var x=this,r=o.length,q={elseif:"elif"},u=x.topRe,c=x.actionsRe,e,d,k,p,h,l,j,w,v,b,g,a,n;x.level=0;x.stack=d=[];for(e=0;e<r;e=b){u.lastIndex=e;p=u.exec(o);if(!p){x.doText(o.substring(e,r));break}v=p.index;b=u.lastIndex;if(e<v){k=o.substring(e,v);if(!(n&&Ext.String.trim(k)==="")){x.doText(k)}}n=false;if(p[1]){b=o.indexOf("%}",v+2);x.doEval(o.substring(v+2,b));b+=2}else{if(p[2]){b=o.indexOf("]}",v+2);x.doExpr(o.substring(v+2,b));b+=2}else{if(p[3]){x.doTag(p[3])}else{if(p[4]){g=null;while((w=c.exec(p[4]))!==null){k=w[2]||w[3];if(k){k=Ext.String.htmlDecode(k);h=w[1];h=q[h]||h;g=g||{};l=g[h];if(typeof l=="string"){g[h]=[l,k]}else{if(l){g[h].push(k)}else{g[h]=k}}}}if(!g){if(x.elseRe.test(p[4])){x.doElse()}else{if(x.defaultRe.test(p[4])){x.doDefault()}else{x.doTpl();d.push({type:"tpl"})}}}else{if(g["if"]){x.doIf(g["if"],g);d.push({type:"if"})}else{if(g["switch"]){x.doSwitch(g["switch"],g);d.push({type:"switch"});n=true}else{if(g["case"]){x.doCase(g["case"],g)}else{if(g.elif){x.doElseIf(g.elif,g)}else{if(g["for"]){++x.level;if(a=x.propRe.exec(p[4])){g.propName=a[1]||a[2]}x.doFor(g["for"],g);d.push({type:"for",actions:g})}else{if(g.foreach){++x.level;if(a=x.propRe.exec(p[4])){g.propName=a[1]||a[2]}x.doForEach(g.foreach,g);d.push({type:"foreach",actions:g})}else{if(g.exec){x.doExec(g.exec,g);d.push({type:"exec",actions:g})}}}}}}}}}else{if(p[0].length===5){d.push({type:"tpl"})}else{j=d.pop();x.doEnd(j.type,j.actions);if(j.type=="for"||j.type=="foreach"){--x.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(a){var c=this,b=c.generate(a);return c.useEval?c.evalTpl(b):(new Function("Ext",b))(Ext)},generate:function(a){var d=this,b="var fm=Ext.util.Format,ts=Object.prototype.toString;",c;d.maxLevel=0;d.body=["var c0=values, a0="+d.createArrayTest(0)+", p0=parent, n0=xcount, i0=xindex, k0, v;\n"];if(d.definitions){if(typeof d.definitions==="string"){d.definitions=[d.definitions,b]}else{d.definitions.push(b)}}else{d.definitions=[b]}d.switches=[];d.parse(a);d.definitions.push((d.useEval?"$=":"return")+" function ("+d.fnArgs+") {",d.body.join(""),"}");c=d.definitions.join("\n");d.definitions.length=d.body.length=d.switches.length=0;delete d.definitions;delete d.body;delete d.switches;return c},doText:function(c){var b=this,a=b.body;c=c.replace(b.aposRe,"\\'").replace(b.newLineRe,"\\n");if(b.useIndex){a.push("out[out.length]='",c,"'\n")}else{a.push("out.push('",c,"')\n")}},doExpr:function(b){var a=this.body;a.push("if ((v="+b+") != null) out");if(this.useIndex){a.push("[out.length]=v+''\n")}else{a.push(".push(v+'')\n")}},doTag:function(a){var b=this.parseTag(a);if(b){this.doExpr(b)}else{this.doText("{"+a+"}")}},doElse:function(){this.body.push("} else {\n")},doEval:function(a){this.body.push(a,"\n")},doIf:function(b,c){var a=this;if(b==="."){a.body.push("if (values) {\n")}else{if(a.propNameRe.test(b)){a.body.push("if (",a.parseTag(b),") {\n")}else{a.body.push("if (",a.addFn(b),a.callFn,") {\n")}}if(c.exec){a.doExec(c.exec)}},doElseIf:function(b,c){var a=this;if(b==="."){a.body.push("else if (values) {\n")}else{if(a.propNameRe.test(b)){a.body.push("} else if (",a.parseTag(b),") {\n")}else{a.body.push("} else if (",a.addFn(b),a.callFn,") {\n")}}if(c.exec){a.doExec(c.exec)}},doSwitch:function(c){var b=this,a;if(c==="."||c==="#"){a=c==="."?"values":"xindex";b.body.push("switch (",a,") {\n")}else{if(b.propNameRe.test(c)){b.body.push("switch (",b.parseTag(c),") {\n")}else{b.body.push("switch (",b.addFn(c),b.callFn,") {\n")}}b.switches.push(0)},doCase:function(e){var d=this,c=Ext.isArray(e)?e:[e],g=d.switches.length-1,a,b;if(d.switches[g]){d.body.push("break;\n")}else{d.switches[g]++}for(b=0,g=c.length;b<g;++b){a=d.intRe.exec(c[b]);c[b]=a?a[1]:("'"+c[b].replace(d.aposRe,"\\'")+"'")}d.body.push("case ",c.join(": case "),":\n")},doDefault:function(){var a=this,b=a.switches.length-1;if(a.switches[b]){a.body.push("break;\n")}else{a.switches[b]++}a.body.push("default:\n")},doEnd:function(b,d){var c=this,a=c.level-1;if(b=="for"||b=="foreach"){if(d.exec){c.doExec(d.exec)}c.body.push("}\n");c.body.push("parent=p",a,";values=r",a+1,";xcount=n"+a+";xindex=i",a,"+1;xkey=k",a,";\n")}else{if(b=="if"||b=="switch"){c.body.push("}\n")}}},doFor:function(e,h){var d=this,c,b=d.level,a=b-1,g;if(e==="."){c="values"}else{if(d.propNameRe.test(e)){c=d.parseTag(e)}else{c=d.addFn(e)+d.callFn}}if(d.maxLevel<b){d.maxLevel=b;d.body.push("var ")}if(e=="."){g="c"+b}else{g="a"+a+"?c"+a+"[i"+a+"]:c"+a}d.body.push("i",b,"=0,n",b,"=0,c",b,"=",c,",a",b,"=",d.createArrayTest(b),",r",b,"=values,p",b,",k",b,";\n","p",b,"=parent=",g,"\n","if (c",b,"){if(a",b,"){n",b,"=c",b,".length;}else if (c",b,".isMixedCollection){c",b,"=c",b,".items;n",b,"=c",b,".length;}else if(c",b,".isStore){c",b,"=c",b,".data.items;n",b,"=c",b,".length;}else{c",b,"=[c",b,"];n",b,"=1;}}\n","for (xcount=n",b,";i",b,"<n"+b+";++i",b,"){\n","values=c",b,"[i",b,"]");if(h.propName){d.body.push(".",h.propName)}d.body.push("\n","xindex=i",b,"+1\n");if(h.between){d.body.push('if(xindex>1){ out.push("',h.between,'"); } \n')}},doForEach:function(e,h){var d=this,c,b=d.level,a=b-1,g;if(e==="."){c="values"}else{if(d.propNameRe.test(e)){c=d.parseTag(e)}else{c=d.addFn(e)+d.callFn}}if(d.maxLevel<b){d.maxLevel=b;d.body.push("var ")}if(e=="."){g="c"+b}else{g="a"+a+"?c"+a+"[i"+a+"]:c"+a}d.body.push("i",b,"=-1,n",b,"=0,c",b,"=",c,",a",b,"=",d.createArrayTest(b),",r",b,"=values,p",b,",k",b,";\n","p",b,"=parent=",g,"\n","for(k",b," in c",b,"){\n","xindex=++i",b,"+1;\n","xkey=k",b,";\n","values=c",b,"[k",b,"];");if(h.propName){d.body.push(".",h.propName)}if(h.between){d.body.push('if(xindex>1){ out.push("',h.between,'"); } \n')}},createArrayTest:("isArray" in Array)?function(a){return"Array.isArray(c"+a+")"}:function(a){return"ts.call(c"+a+')==="[object Array]"'},doExec:function(d,e){var c=this,a="f"+c.definitions.length,b=c.guards[c.strict?0:1];c.definitions.push("function "+a+"("+c.fnArgs+") {",b.doTry," var $v = values; with($v) {","  "+d," }",b.doCatch,"}");c.body.push(a+c.callFn+"\n")},guards:[{doTry:"",doCatch:""},{doTry:"try { ",doCatch:" } catch(e) {\n}"}],addFn:function(a){var d=this,b="f"+d.definitions.length,c=d.guards[d.strict?0:1];if(a==="."){d.definitions.push("function "+b+"("+d.fnArgs+") {"," return values","}")}else{if(a===".."){d.definitions.push("function "+b+"("+d.fnArgs+") {"," return parent","}")}else{d.definitions.push("function "+b+"("+d.fnArgs+") {",c.doTry," var $v = values; with($v) {","  return("+a+")"," }",c.doCatch,"}")}}return b},parseTag:function(b){var h=this,a=h.tagRe.exec(b),e,j,d,g,c;if(!a){return null}e=a[1];j=a[2];d=a[3];g=a[4];if(e=="."){if(!h.validTypes){h.definitions.push("var validTypes={string:1,number:1,boolean:1};");h.validTypes=true}c='validTypes[typeof values] || ts.call(values) === "[object Date]" ? values : ""'}else{if(e=="#"){c="xindex"}else{if(e=="$"){c="xkey"}else{if(e.substr(0,7)=="parent."){c=e}else{if(isNaN(e)&&e.indexOf("-")==-1&&e.indexOf(".")!=-1){c="values."+e}else{c="values['"+e+"']"}}}}}if(g){c="("+c+g+")"}if(j&&h.useFormat){d=d?","+d:"";if(j.substr(0,5)!="this."){j="fm."+j+"("}else{j+="("}}else{return c}return j+c+d+")"},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 a=this.prototype;a.fnArgs="out,values,parent,xindex,xcount,xkey";a.callFn=".call(this,"+a.fnArgs+")"}));(Ext.cmd.derive("Ext.XTemplate",Ext.Template,{emptyObj:{},fn:null,strict:false,apply:function(a,b){return this.applyOut(a,[],b).join("")},applyOut:function(a,b,d){var g=this,c;if(!g.fn){c=new Ext.util.XTemplateCompiler({useFormat:g.disableFormats!==true,definitions:g.definitions,strict:g.strict});g.fn=c.compile(g.html)}if(g.strict){g.fn(b,a,d||g.emptyObj,1,1)}else{try{g.fn(b,a,d||g.emptyObj,1,1)}catch(h){}}return b},compile:function(){return this},statics:{getTpl:function(b,d){var c=b[d],a;if(c&&!c.isTemplate){c=Ext.ClassManager.dynInstantiate("Ext.XTemplate",c);if(b.hasOwnProperty(d)){a=b}else{for(a=b.self.prototype;a&&!a.hasOwnProperty(d);a=a.superclass){}}a[d]=c;c.owner=a}return c||null}}},0,0,0,0,0,0,[Ext,"XTemplate"],0));Ext.Factory=function(a){var b=this;b.aliasPrefix=a+".";b.cache={};b.name=a.replace(b.fixNameRe,b.fixNameFn);b.type=a};Ext.Factory.prototype={defaultProperty:"type",instanceProp:"isInstance",create:function(c,e){var j=this,a=Ext.ClassManager,b=j.cache,d,h,g,k;if(c){if(c[j.instanceProp]){return c}if(typeof c==="string"){k=c;c={};c[j.defaultProperty]=k}h=c.xclass;k=c.type}if(h){if(!(g=a.get(h))){return a.instantiate(h,c)}}else{if(!(k=k||e||j.defaultType)){g=j.defaultClass}if(!g&&!(g=b[k])){d=j.aliasPrefix+k;h=a.getNameByAlias(d);if(!(g=h&&a.get(h))){return a.instantiateByAlias(d,c)}b[k]=g}}return new g(c)},fixNameRe:/\.[a-z]/ig,fixNameFn:function(a){return a.substring(1).toUpperCase()},clearCache:function(){this.cache={}}};Ext.Factory.define=function(g,d){var a=Ext.Factory,b,c,e;if(g.constructor===Object){Ext.Object.each(g,a.define,a)}else{c=new Ext.Factory(g);if(d){if(d.constructor===Object){Ext.apply(c,d);if(typeof(b=c.xclass)==="string"){c.defaultClass=Ext.ClassManager.get(b)}}else{c.defaultType=d}}a[c.name]=e=c.create.bind(c);e.instance=c}return e};(Ext.cmd.derive("Ext.mixin.Factoryable",Ext.Base,{mixinId:"factoryable",onClassMixedIn:function(e){var d=e.prototype,g=d.factoryConfig,c=d.alias,b={},a;c=c&&c.length&&c[0];if(c&&(a=c.lastIndexOf("."))>0){b.type=c.substring(0,a);b.defaultType=c.substring(a+1)}if(g){delete d.factoryConfig;Ext.apply(b,g)}e.create=Ext.Factory.define(b.type,b)}},0,0,0,0,0,0,[Ext.mixin,"Factoryable"],0));(Ext.cmd.derive("Ext.util.CollectionKey",Ext.Base,{config:{collection:null,keyFn:null,property:null,rootProperty:null,unique:true},generation:0,map:null,mapRebuilds:0,constructor:function(a){this.initConfig(a)},get:function(a){var b=this.map||this.getMap();return b[a]||null},getRootProperty:function(){var b=this,a=this.callParent();return a!==null?a:b.getCollection().getRootProperty()},indexOf:function(k,e){var a=this.map||this.getMap(),l=a[k],g=this.getCollection(),b=g.length,d,h,j,c;if(!l){return -1}if(e===undefined){e=-1}if(l instanceof Array){j=l;h=b;for(c=j.length;c-->0;){d=g.indexOf(j[c]);if(d<h&&d>e){h=d}}if(h===b){return -1}}else{h=g.indexOf(l)}return(h>e)?h:-1},updateKey:function(c,e){var b=this,d=b.map,g,a;if(d){g=d[e];if(g instanceof Array){a=Ext.Array.indexOf(g,c);if(a>=0){if(g.length>2){g.splice(a,1)}else{d[e]=g[1-a]}}}else{if(g){delete d[e]}}b.add([c])}},onCollectionAdd:function(b,a){if(this.map){this.add(a.items)}},onCollectionItemChange:function(b,a){this.map=null},onCollectionRefresh:function(){this.map=null},onCollectionRemove:function(e,d){var h=this,a=h.map,g=d.items,b=g.length,c,k,j;if(a){if(h.getUnique()&&b<e.length/2){for(c=0;c<b;++c){j=h.getKey(k=g[c]);delete a[j]}}else{h.map=null}}},add:function(g){var h=this,a=h.map,b,e,k,j,c,d;c=g.length;d=h.getUnique();for(e=0;e<c;++e){j=h.getKey(k=g[e]);if(d||!(j in a)){a[j]=k}else{if(!((b=a[j]) instanceof Array)){a[j]=b=[b]}b.push(k)}}},applyKeyFn:function(a){if(Ext.isString(a)){this.getKey=function(b){return b[a]()}}else{this.getKey=a}},applyProperty:function(b){var a=this.getRootProperty();this.getKey=function(c){return(a?c[a]:c)[b]}},getMap:function(){var a=this,b=a.map;if(!b){a.map=b={};a.keysByItemKey={};++a.mapRebuilds;a.add(a.getCollection().items)}return b},updateCollection:function(a){a.addObserver(this)}},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(a){Ext.util.Sorter.prototype.constructor.apply(this,arguments)},getGroupString:function(a){var b=this._groupFn(a);return(b!=null)?String(b):""},sortFn:function(d,c){var g=this,b=g._groupFn(d),e=g._groupFn(c),k=g._sortProperty,j=g._root,h=g._sorterFn,a=g._transform;if(b===e){return 0}if(k||h){if(h){return h.call(this,d,c)}if(j){d=d[j];c=c[j]}b=d[k];e=c[k];if(a){b=a(b);e=a(e)}}return(b>e)?1:(b<e?-1:0)},standardGroupFn:function(b){var a=this._root;return(a?b[a]:b)[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,decoder:null,extraKeys:null,filters:null,grouper:null,groups:null,rootProperty:null,sorters:null,multiSortLimit:3,defaultSortDirection:"ASC",source:null},generation:0,indices:null,indexRebuilds:0,updating:0,grouped:false,sorted:false,filtered:false,constructor:function(a){var b=this;b.items=[];b.map={};b.length=0;if(a&&a.keyFn){b.getKey=a.keyFn}b.mixins.observable.constructor.call(b,a)},destroy:function(){var c=this,b=c._filters,d=c._sorters,a=c._groups;if(b){b.destroy();c._filters=null}if(d){d.destroy();c._sorters=null}if(a){a.destroy();c._groups=null}c.setSource(null);c.observers=c.items=c.map=null},add:function(d){var c=this,a=c.decodeItems(arguments,0),b=a;if(a.length){c.splice(c.length,0,a);b=(a.length===1)?a[0]:a}return b},replaceAll:function(){var d=this,a=d.length,c,b;if(a===0){return d.add.apply(d,arguments)}b=d.decodeItems(arguments,0);c=b;if(b.length){d.splice(0,d.length,b);c=(b.length===1)?b[0]:b}else{d.removeAll()}return c},aggregate:function(h,b,e,a,d){var g=this,c=Ext.Array.slice(arguments);c.unshift(g.items);return g.aggregateItems.apply(g,c)},aggregateByGroup:function(d,b,c){var a=this.getGroups();return this.aggregateGroups(a,d,b,c)},aggregateItems:function(l,r,d,a,e,s){var m=this,k=Ext.Number.clipIndices(l.length,[a,e]),b=(a!==0&&e!==l.length),h,g,c,n,p,q,o;a=k[0];e=k[1];if(!Ext.isFunction(d)){d=m._aggregators[d];return d.call(m,l,a,e,r,m.getRootProperty())}n=m.getRootProperty();q=new Array(c);o=b?new Array(c):l;for(h=a,g=0;h<e;++h,g++){if(b){o[g]=p=l[h]}q[g]=(n?p[n]:p)[r]}return d.call(s||m,l,q,0)},aggregateGroups:function(a,k,c,l){var h=a.items,g=h.length,b=!Ext.isFunction(c),d={},e,j,m;for(e=0;e<g;++e){j=h[e];if(!b){m=this.aggregateItems(j.items,k,c,null,null,l)}else{m=j[c](k)}d[j.getGroupKey()]=m}return d},beginUpdate:function(){if(!this.updating++){this.notify("beginupdate")}},clear:function(){var b=this,c=b.generation,a=c?b.items:[];if(c){b.items=[];b.length=0;b.map={};b.indices={};b.generation++}return a},clone:function(){var a=this,b=new a.self(a.initialConfig);b.add(a.items);return b},collect:function(l,g,j){var e=this.items,b=e.length,a={},d=[],c,h,k;for(c=0;c<b;++c){k=e[c];k=(g?k[g]:k)[l];h=String(k);if((j||!Ext.isEmpty(k))&&!a[h]){a[h]=1;d.push(k)}}return d},contains:function(c){var a=false,b;if(c!=null){b=this.getKey(c);a=this.map[b]===c}return a},containsKey:function(a){return a in this.map},createFiltered:function(o,n,e,k,d){var j=this,g=new j.self(j.initialConfig),m=j.getRootProperty(),h=j.items,b,c,a,l,p;if(Ext.isFunction(o)){l=o;p=n}else{if(Ext.isString(o)){a=[new Ext.util.Filter({property:o,value:n,root:m,anyMatch:e,caseSensitive:k,exactMatch:d})]}else{if(o instanceof Ext.util.Filter){a=[o];o.setRoot(m)}else{if(Ext.isArray(o)){a=o.slice(0);for(c=0,b=a.length;c<b;++c){a[c].setRoot(m)}}}}l=Ext.util.Filter.createFilterFn(a)}p=p||j;for(c=0,b=h.length;c<b;c++){if(l.call(p,h[c])){g.add(h[c])}}return g},filterBy:function(b,a){return this.createFiltered(b,a)},each:function(g,e){var b=this.items,a=b.length,d,c;if(a){e=e||this;b=b.slice(0);for(d=0;d<a;d++){c=g.call(e,b[d],d,a);if(c===false){break}}}return c},eachKey:function(g,k){var e=this,d=e.items,b=d.length,a,j,h,c;if(b){k=k||e;d=d.slice(0);for(a=0;a<b;a++){h=e.getKey(j=d[a]);c=g.call(k,h,j,a,b);if(c===false){break}}}return c},endUpdate:function(){if(!--this.updating){this.notify("endupdate")}},find:function(h,g,j,d,c,b){if(Ext.isEmpty(g,false)){return null}var e=Ext.String.createRegex(g,d,c,b),a=this.getRootProperty();return this.findBy(function(k){return k&&e.test((a?k[a]:k)[h])},null,j)},findBy:function(g,k,a){var e=this,d=e.items,c=d.length,b,j,h;k=k||e;for(b=a||0;b<c;b++){h=e.getKey(j=d[b]);if(g.call(k,j,h)){return d[b]}}return null},findIndex:function(g,e,h,c,b,a){var d=this.find(g,e,h,c,b,a);return d?this.indexOf(d):-1},findIndexBy:function(b,a,d){var c=this.findBy(b,a,d);return c?this.indexOf(c):-1},first:function(b){var a=b?this.getGroups():undefined;return a?this.aggregateGroups(a,null,"first"):this.items[0]},last:function(b){var a=b?this.getGroups():undefined;return a?this.aggregateGroups(a,null,"last"):this.items[this.length-1]},get:function(a){return this.map[a]},getAt:function(a){return this.items[a]},getByKey:function(a){return this.map[a]},getCount:function(){return this.length},getKey:function(a){var b=a.id;return(b===0||b)?b:((b=a._id)===0||b)?b:a.getId()},getRange:function(d,a){var c=this.items,e=c.length,b;if(!e){b=[]}else{b=Ext.Number.clipIndices(e,[d,a]);b=c.slice(b[0],b[1])}return b},getValues:function(k,h,a,b){var g=this.items,d=Ext.Number.clipIndices(g.length,[a,b]),e=[],c,j;for(c=d[0],b=d[1];c<b;++c){j=g[c];j=(h?j[h]:j)[k];e.push(j)}return e},indexOf:function(b){if(!b){return -1}var a=this.getKey(b);return this.indexOfKey(a)},indexOfKey:function(a){var b=this,c=b.indices;if(a in b.map){if(!c){c=b.getIndices()}return c[a]}return -1},insert:function(c,e){var d=this,a=d.decodeItems(arguments,1),b=a;if(a.length){d.splice(c,0,a);b=(a.length===1)?a[0]:a}return b},itemChanged:function(u,h,n){var v=this,c=n===0||!!n,k=v.filtered&&v.getAutoFilter(),e=false,d=0,p=v.items,m=v.length-1,a=v.sorted&&m,r=v.getSource(),w,q=0,j,l=false,b,o=false,t,s,g;if(r&&!r.updating){r.itemChanged(u,n)}else{s=v.getKey(u);if(k){j=v.indexOfKey(c?n:s);o=(j<0);l=v.isItemFiltered(u);e=(o!==l)}if(e){if(l){q=[u];b=-1}else{w=[u];b=v.length}}else{if(a&&!l){if(!k){j=v.indexOfKey(c?n:s)}g=v.getSortFn();if(j&&g(p[j-1],p[j])>0){d=-1;b=Ext.Array.binarySearch(p,u,0,j,g)}else{if(j<m&&g(p[j],p[j+1])>0){d=1;b=Ext.Array.binarySearch(p,u,j+1,g)}}if(d){w=[u]}}}t={item:u,key:s,index:b,filterChanged:e,keyChanged:c,indexChanged:!!d,filtered:l,oldIndex:j,newIndex:b,wasFiltered:o};if(c){t.oldKey=n}if(h){t.modified=h}v.beginUpdate();v.notify("beforeitemchange",[t]);if(c){v.updateKey(u,n)}if(w||q){v.splice(b,q,w)}if(d>0){t.newIndex--}else{if(d<0){t.oldIndex++}}v.notify("itemchange",[t]);v.endUpdate()}},remove:function(d){var c=this,a=c.decodeRemoveItems(arguments,0),b=c.length;c.splice(0,a);return b-c.length},removeAll:function(){var b=this,a=b.length;if(b.generation&&a){b.splice(0,a)}return b},removeAt:function(j,h){var k=this,b=k.length,e=Ext.Number,d=e.clipIndices(b,[j,(h===undefined)?1:h],e.Clip.COUNT),c=d[0],a=d[1]-c,l=(a===1)&&k.getAt(c),g;k.splice(c,a);g=k.length-b;return(l&&g)?l:g},removeByKey:function(a){var b=this.getByKey(a);if(!b||!this.remove(b)){return false}return b},splice:function(E,o,C){var m=this,d=m.sorted&&m.getAutoSort(),A=m.map,s=m.items,q=m.length,w=(o instanceof Array)?m.decodeRemoveItems(o):null,x=!w,F=Ext.Number,e=F.clipIndices(q,[E,x?o:0],F.Clip.COUNT),h=e[0],l=e[1],L=l-h,u=m.decodeItems(arguments,2),K=u?u.length:0,D,y,v,c=h,b=m.indices||((K||w)?m.getIndices():null),r=null,j=L?[h]:null,g=null,t=m.getSource(),a,H,I,N,B,G,M,p,z,J,P,O;if(t&&!t.updating){if(x){w=[];for(N=0;N<L;++N){w.push(s[h+N])}}if(h<q){N=t.indexOf(s[h])}else{N=t.length}t.splice(N,w,u);return m}if(K){D=u;g=[];y={};if(d){O=m.getSorters();if(K>1){if(!D.$cloned){u=D=D.slice(0)}m.sortData(D)}}for(N=0;N<K;++N){p=m.getKey(B=u[N]);if((M=y[p])!==undefined){(P||(P={}))[M]=1}else{G=b[p];if(G<h||l<=G){(j||(j=[])).push(G)}}y[p]=N;g.push(p)}if(P){z=g;D=[];g=[];D.$cloned=true;for(N=0;N<K;++N){if(!P[N]){B=u[N];D.push(B);g.push(z[N])}}K=D.length}r={items:D,keys:g}}for(N=w?w.length:0;N-->0;){p=m.getKey(w[N]);if((G=b[p])!==undefined){(j||(j=[])).push(G)}}if(!r&&!j){return m}m.beginUpdate();if(j){a=null;I=[];v={};if(j.length>1){j.sort(Ext.Array.numericSortFn)}for(N=0,J=j.length;N<J;++N){p=m.getKey(B=s[G=j[N]]);if(!(p in A)){continue}delete A[p];if(!a||G>(a.at+H.length)){I.push(a={at:G,items:(H=[]),keys:(z=[]),map:v,next:a,replacement:r});if(r){r.replaced=a}}H.push(v[p]=B);z.push(p);if(G<c){--c}if(L>1&&G===h){--L;j[N--]=++h}}if(r){r.at=c}for(M=I.length;M-->0;){a=I[M];N=a.at;J=a.items.length;if(N+J<q){m.indices=b=null}m.length=q-=J;s.splice(N,J);if(b){z=a.keys;for(N=0;N<J;++N){delete b[z[N]]}}++m.generation;m.notify("remove",[a])}}if(r){if(d&&K>1&&q){m.spliceMerge(D)}else{if(d){if(K>1){c=0;m.indices=b=null}else{c=O.findInsertionIndex(r.items[0],s,m.getSortFn())}}if(c===q){s.push.apply(s,D);if(b){for(N=0;N<K;++N){b[g[N]]=c+N}}}else{m.indices=null;Ext.Array.insert(s,c,D)}for(N=0;N<K;++N){A[g[N]]=D[N]}m.length+=K;r.at=c;++m.generation;m.notify("add",[r])}}m.endUpdate();return m},update:function(b,a){var c=this;c.beginUpdate();try{return b.call(a||c,c)}catch(d){throw d}finally{c.endUpdate()}},updateKey:function(b,e){var a=this,d=a.map,h=a.indices,c=a.getSource(),g;if(c&&!c.updating){c.updateKey(b,e)}else{if((g=a.getKey(b))!==e){if(e in d||d[g]!==b){if(e in d){delete d[e]}a.updating++;a.generation++;d[g]=b;if(h){h[g]=h[e];delete h[e]}a.notify("updatekey",[{item:b,newKey:g,oldKey:e}]);a.updating--}}}},onCollectionAdd:function(a,b){var k=this,m=a.getAt(b.at),g=m?k.indexOf(m):-1,j=b.items,h,c,e,l,d;if(k.getAutoFilter()&&k.filtered){for(e=0,d=j.length;e<d;++e){l=j[e];if(k.isItemFiltered(l)){if(!c){c=j.slice(0,e)}if(!h){h=[]}h.push(l)}else{if(c){c.push(l)}}}}k.splice((g<0)?k.length:g,0,c||j);if(h){k.notify("filteradd",[h])}},onCollectionBeforeItemChange:function(b,a){this.onCollectionUpdateKey=null},onCollectionBeginUpdate:function(){this.beginUpdate()},onCollectionEndUpdate:function(){this.endUpdate()},onCollectionItemChange:function(b,a){delete this.onCollectionUpdateKey;this.itemChanged(a.item,a.modified,a.oldKey)},onCollectionRefresh:function(a){var g=this,b={},j={},d,k,e,h,c;e=a.items;e=g.filtered&&g.getAutoFilter()?Ext.Array.filter(e,g.getFilterFn()):e.slice(0);if(g.sorted){g.sortData(e)}g.items=e;g.length=c=e.length;g.map=b;g.indices=j;for(d=0;d<c;++d){h=g.getKey(k=e[d]);b[h]=k;j[h]=d}g.notify("refresh")},onCollectionRemove:function(b,a){this.splice(0,a.items)},onCollectionUpdateKey:function(b,a){this.updateKey(a.item,a.oldKey)},_aggregators:{average:function(c,d,b,e,a){var g=b-d;return g&&this._aggregators.sum.call(this,c,d,b,e,a)/g},bounds:function(e,a,b,k,g){for(var j,h,c,d=a;d<b;++d){j=e[d];j=(g?j[g]:j)[k];if(!(j<h)){h=j}if(!(j>c)){c=j}}return[c,h]},count:function(a){return a.length},extremes:function(g,a,c,m,k){var h=null,b=null,e,n,j,d,l;for(e=a;e<c;++e){n=g[e];l=(k?n[k]:n)[m];if(!(l<j)){j=l;h=n}if(!(l>d)){d=l;b=n}}return[b,h]},max:function(e,g,d,h,c){var a=this._aggregators.bounds.call(this,e,g,d,h,c);return a[1]},maxItem:function(e,g,d,h,c){var a=this._aggregators.extremes.call(this,e,g,d,h,c);return a[1]},min:function(e,g,d,h,c){var a=this._aggregators.bounds.call(this,e,g,d,h,c);return a[0]},minItem:function(e,g,d,h,c){var a=this._aggregators.extremes.call(this,e,g,d,h,c);return a[0]},sum:function(c,g,b,j,a){for(var h,e=0,d=g;d<b;++d){h=c[d];h=(a?h[a]:h)[j];e+=h}return e}},_eventToMethodMap:{add:"onCollectionAdd",beforeitemchange:"onCollectionBeforeItemChange",beginupdate:"onCollectionBeginUpdate",endupdate:"onCollectionEndUpdate",itemchange:"onCollectionItemChange",refresh:"onCollectionRefresh",remove:"onCollectionRemove",sort:"onCollectionSort",filter:"onCollectionFilter",filteradd:"onCollectionFilterAdd",updatekey:"onCollectionUpdateKey"},addObserver:function(a){var d=this.observers,b,c=a.getId();if(!d){d=this.observers=[];this.observerMap={}}b=this.observerMap;if(!b[c]){d.push(a);b[c]=a;Ext.Array.sort(d,this.prioritySortFn)}},prioritySortFn:function(g,e){var d=g.observerPriority||0,c=e.observerPriority||0;return d-c},applyExtraKeys:function(e){var g=this,c={},b,d,a,h;for(a in e){b={collection:g};if(Ext.isString(h=e[a])){b.property=h}else{Ext.apply(b,h)}c[a]=g[a]=d=new Ext.util.CollectionKey(b);d.name=a}return c},applyGrouper:function(a){if(a){a=this.getSorters().decodeSorter(a,"Ext.util.Grouper")}return a},decodeItems:function(d,c){var g=this,b=(c===undefined)?d:d[c],a,h,e;if(!b||!b.$cloned){a=d.length>c+1||!Ext.isIterable(b);if(a){b=Ext.Array.slice(d,c);if(b.length===1&&b[0]===undefined){b.length=0}}h=g.getDecoder();if(h){if(!a){b=b.slice(0);a=true}for(e=b.length;e-->0;){if((b[e]=h.call(g,b[e]))===false){b.splice(e,1)}}}if(a){b.$cloned=true}}return b},getIndices:function(){var d=this,e=d.indices,a=d.items,g=a.length,c,b;if(!e){d.indices=e={};++d.indexRebuilds;for(c=0;c<g;++c){b=d.getKey(a[c]);e[b]=c}}return e},notify:function(d,h){var j=this,c=j.observers,l=j._eventToMethodMap[d],k=0,e,b,a,g;h=h||[];if(c&&l){for(e=0,b=c.length;e<b;++e){a=(g=c[e])[l];if(a){if(!k++){h.unshift(j)}a.apply(g,h)}}}if(!j.hasListeners){return}if(j.hasListeners[d]){if(!k){h.unshift(j)}j.fireEventArgs(d,h)}},getFilterFn:function(){return this.getFilters().getFilterFn()},getFilters:function(b){var a=this._filters;if(!a&&b!==false){a=new Ext.util.FilterCollection();this.setFilters(a)}return a},isItemFiltered:function(a){return !this.getFilters().filterFn(a)},onFilterChange:function(b){var a=this,c=a.getSource();if(!c){c=new Ext.util.Collection({keyFn:a.getKey,extraKeys:a.getInitialConfig().extraKeys,rootProperty:a.getRootProperty()});if(a.length){c.add(a.items)}a.setSource(c);a.autoSource=c}else{if(c.length||a.length){a.onCollectionRefresh(c)}}a.notify("filter")},applyFilters:function(a,b){if(a==null||(a&&a.isFilterCollection)){return a}if(a){if(!b){b=this.getFilters()}b.splice(0,b.length,a)}return b},updateFilters:function(a,b){var c=this;if(b){b.un("endupdate","onEndUpdateFilters",c)}if(a){a.on("endupdate","onEndUpdateFilters",c,{prepend:true});a.$filterable=c}c.onEndUpdateFilters(a)},onEndUpdateFilters:function(c){var b=this,d=b.filtered,a=!!c&&(c.length>0);if(d||a){b.filtered=a;b.onFilterChange(c)}},getSortFn:function(){return this._sortFn||this.createSortFn()},getSorters:function(b){var a=this._sorters;if(!a&&b!==false){a=new Ext.util.SorterCollection();this.setSorters(a)}return a},onSortChange:function(){if(this.sorted){this.sortItems()}},sort:function(a,c,d){var b=this.getSorters();b.addSort.apply(b,arguments);return this},sortData:function(a){Ext.Array.sort(a,this.getSortFn());return a},sortItems:function(b){var a=this;if(a.sorted){b=a.getSortFn()}a.indices=null;if(a.length){Ext.Array.sort(a.items,b)}a.notify("sort")},sortBy:function(a){return this.sortItems(a)},findInsertionIndex:function(c,a,b){if(!a){a=this.items}if(!b){b=this.getSortFn()}return Ext.Array.binarySearch(a,c,b)},applySorters:function(a,b){if(a==null||(a&&a.isSorterCollection)){return a}if(a){if(!b){b=this.getSorters()}b.splice(0,b.length,a)}return b},createSortFn:function(){var c=this,a=c.getGrouper(),b=c.getSorters().getSortFn();if(!a){return b}return function(d,e){return a.sort(d,e)||b(d,e)}},updateGrouper:function(b){var d=this,a=d.getGroups(),g=d.getSorters(),e,c;d.onSorterChange();d.grouped=!!b;if(b){if(!a){a=new Ext.util.GroupCollection({itemRoot:d.getRootProperty()});d.addObserver(a);d.setGroups(a)}c=a.getSorters();c.splice(0,c.length,{property:"_groupKey",direction:b.getDirection()});e=true}else{if(a){d.removeObserver(a);a.destroy()}d.setGroups(null)}if(!g.updating){d.onEndUpdateSorters(g)}if(e){a.onCollectionRefresh(d)}},updateSorters:function(a,b){var c=this;if(b){b.un("endupdate","onEndUpdateSorters",c)}if(a){a.on("endupdate","onEndUpdateSorters",c,{prepend:true});a.$sortable=c}c.onSorterChange();c.onEndUpdateSorters(a)},onSorterChange:function(){this._sortFn=null},onEndUpdateSorters:function(c){var b=this,d=b.sorted,a=b.grouped||(!!c&&(c.length>0));if(d||a){b.sorted=a;b.onSortChange(c)}},removeObserver:function(a){var b=this.observers;if(b){Ext.Array.remove(b,a);delete this.observerMap[a.getId()]}},spliceMerge:function(q){var l=this,o,b=q.length,m=0,n=l.items,a=n.length,j=[],g=0,h=[],k=l.getSorters(),p,c,d,e,r;l.items=h;for(o=0;o<b;o=c){e=q[o];for(;m<a;++m){if(k.sortFn(e,r=n[m])<0){break}h.push(r)}if(m===a){j[g++]={at:h.length,items:(p=[])};if(g>1){j[g-2].next=j[g-1]}for(;o<b;++o){p.push(e=q[o]);h.push(e)}break}j[g++]={at:h.length,items:(p=[e])};if(g>1){j[g-2].next=j[g-1]}h.push(e);for(c=o+1;c<b;++c){if(k.sortFn(e=q[c],r)>=0){break}h.push(e);p.push(e)}}for(;m<a;++m){h.push(n[m])}l.length=h.length;++l.generation;for(d=0;d<g;++d){l.notify("add",[j[d]])}},getGroups:function(){return this.callParent()||null},updateGroups:function(a,b){if(b){this.removeObserver(b)}if(a){this.addObserver(a)}},updateSource:function(b,a){var c=this.autoSource;if(a){a.removeObserver(this);if(a===c){c.destroy();this.autoSource=null}}if(b){b.addObserver(this);if(b.length||this.length){this.onCollectionRefresh(b)}}}},1,0,0,0,0,[[Ext.mixin.Observable.prototype.mixinId||Ext.mixin.Observable.$className,Ext.mixin.Observable]],[Ext.util,"Collection"],function(){var a=this.prototype;a.removeAtKey=a.removeByKey;a.decodeRemoveItems=a.decodeItems;Ext.Object.each(a._aggregators,function(b){a[b]=function(e,d,c){return this.aggregate(e,b,d,c)};a[b+"ByGroup"]=function(c){return this.aggregateByGroup(c,b)}})}));(Ext.cmd.derive("Ext.util.Scheduler",Ext.Base,{busyCounter:0,lastBusyCounter:0,destroyed:false,firing:null,notifyIndex:-1,nextId:0,orderedItems:null,passes:0,scheduledCount:0,validIdRe:null,config:{cycleLimit:5,preSort:null,tickDelay:5},constructor:function(a){this.mixins.observable.constructor.call(this,a);this.items=new Ext.util.Collection()},destroy:function(){var a=this,b=a.timer;if(b){window.clearTimeout(b);a.timer=null}a.destroyed=true;a.items=a.orderedItems=null;a.destroy=Ext.emptyFn},add:function(c){var b=this,a=b.items;if(a===b.firing){b.items=a=a.clone()}c.id=c.id||++b.nextId;c.scheduler=b;a.add(c);if(!b.sortMap){b.orderedItems=null}},remove:function(c){var b=this,a=b.items;if(b.destroyed){return}if(a===b.firing){b.items=a=a.clone()}if(c.scheduled){b.unscheduleItem(c);c.scheduled=false}a.remove(c);b.orderedItems=null},sort:function(){var d=this,a=d.items,e={},g=d.getPreSort(),b,c;d.orderedItems=[];d.sortMap=e;if(g){a.sortItems(g)}a=a.items;for(b=0;b<a.length;++b){c=a[b];if(!e[c.id]){d.sortItem(c)}}d.sortMap=null},sortItem:function(c){var b=this,d=b.sortMap,a=b.orderedItems,e;if(!c.scheduler){b.add(c)}e=c.id;if(!(e in d)){d[e]=0;if(!c.sort.$nullFn){c.sort()}d[e]=1;c.order=b.orderedItems.length;a.push(c)}return b},sortItems:function(a){var b=this,c=b.sortItem;if(a){if(a instanceof Array){Ext.each(a,c,b)}else{Ext.Object.eachValue(a,c,b)}}return b},applyPreSort:function(h){if(typeof h==="function"){return h}var g=h.split(","),e=[],d=g.length,j,a,b;for(a=0;a<d;++a){e[a]=1;b=g[a];if((j=b.charAt(0))==="-"){e[a]=-1}else{if(j!=="+"){j=0}}if(j){g[a]=b.substring(1)}}return function(c,p){var k=0,l,o,n,m;for(l=0;!k&&l<d;++l){o=g[l];n=c[o];m=p[o];k=e[l]*((n<m)?-1:((m<n)?1:0))}return k}},notify:function(){var g=this,j=g.timer,d=g.getCycleLimit(),h,c,e,b,a;if(j){window.clearTimeout(j);g.timer=null}while(g.scheduledCount){if(d){--d}else{g.firing=null;break}++g.passes;if(!(a=g.orderedItems)){g.sort();a=g.orderedItems}b=a.length;if(b){g.firing=g.items;for(c=0;c<b;++c){e=a[c];if(e.scheduled){e.scheduled=false;--g.scheduledCount;g.notifyIndex=c;e.react();if(!g.scheduledCount){break}}}}}g.firing=null;g.notifyIndex=-1;if((h=g.busyCounter)!==g.lastBusyCounter){if(!(g.lastBusyCounter=h)){g.fireEvent("idle",g)}}},onTick:function(){this.timer=null;this.notify()},scheduleItem:function(b){var a=this;++a.scheduledCount;if(!a.timer&&!a.firing){a.scheduleTick()}},scheduleTick:function(){var a=this;if(!a.destroyed&&!a.timer){a.timer=Ext.Function.defer(a.onTick,a.getTickDelay(),a)}},unscheduleItem:function(a){if(this.scheduledCount){--this.scheduledCount}},adjustBusy:function(a){var b=this,c=b.busyCounter+a;b.busyCounter=c;if(c){if(!b.lastBusyCounter){b.lastBusyCounter=c;b.fireEvent("busy",b)}}else{if(b.lastBusyCounter&&!b.timer){b.scheduleTick()}}},isBusy:function(){return !this.isIdle()},isIdle:function(){return !(this.busyCounter+this.lastBusyCounter)},debugHooks:{$enabled:false,onCycleLimitExceeded:function(){Ext.Error.raise("Exceeded cycleLimit "+this.getCycleLimit())},scheduleItem:function(a){if(!a){Ext.Error.raise("scheduleItem: Invalid argument")}Ext.log("Schedule item: "+a.getFullName()+" - "+(this.scheduledCount+1));if(a.order<=this.notifyIndex){Ext.log.warn("Suboptimal order: "+a.order+" < "+this.notifyIndex)}this.callParent([a])},unscheduleItem:function(a){if(!this.scheduledCount){Ext.Error.raise("Invalid scheduleCount")}this.callParent([a]);Ext.log("Unschedule item: "+a.getFullName()+" - "+this.scheduledCount)}}},1,0,0,0,0,[[Ext.mixin.Observable.prototype.mixinId||Ext.mixin.Observable.$className,Ext.mixin.Observable]],[Ext.util,"Scheduler"],0));(Ext.cmd.derive("Ext.util.ObjectTemplate",Ext.Base,{isObjectTemplate:true,excludeProperties:{},valueRe:/^[{][a-z\.]+[}]$/i,statics:{create:function(b,a){return b.isObjectTemplate?b:new Ext.util.ObjectTemplate(b,a)}},constructor:function(b,a){Ext.apply(this,a);this.template=b},apply:function(a){var b=this;delete b.apply;b.apply=b.compile(b.template);return b.apply(a)},privates:{compile:function(e){var g=this,b=g.excludeProperties,h,c,a,d;if(Ext.isString(e)){if(e.indexOf("{")<0){d=function(){return e}}else{if(g.valueRe.test(e)){e=e.substring(1,e.length-1).split(".");d=function(l){for(var j=l,k=0;j&&k<e.length;++k){j=j[e[k]]}return j}}else{e=new Ext.XTemplate(e);d=function(j){return e.apply(j)}}}}else{if(Ext.isPrimitive(e)){d=function(){return e}}else{if(e instanceof Array){h=[];for(c=0,a=e.length;c<a;++c){h[c]=g.compile(e[c])}d=function(l){var j=[],k;for(k=0;k<a;++k){j[k]=h[k](l)}return j}}else{h={};for(c in e){if(!b[c]){h[c]=g.compile(e[c])}}d=function(m){var k={},l,j;for(l in e){j=b[l]?e[l]:h[l](m);if(j!==undefined){k[l]=j}}return k}}}}return d}}},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",constructor:function(b,c){var d=this,a=c.extra;Ext.apply(d,c);if(a){delete a.type;Ext.apply(d,a);delete d.extra}d.association=b;if(b.owner===d.side){b.owner=d;d.owner=true}},processUpdate:function(){Ext.Error.raise('Only the "many" for an association may be processed. "'+this.role+'" is not valid.')},validateAssociationRecords:function(c,b,a){return a},createAssociationStore:function(g,n,e,o){var j=this,d=j.association,h=d.getFieldName(),k=d.isManyToMany,b=j.storeConfig,a=n.getId(),c={model:j.cls,data:e,role:j,session:g,associatedEntity:n,disableMetaChangeEvent:true,pageSize:null,remoteFilter:true,trackRemoved:!g},l,m;if(k){c.filters=[{property:j.inverse.field,value:a,exactMatch:true}]}else{if(h){c.filters=[{property:h,value:a,exactMatch:true}];c.foreignKeyName=h}}if(b){Ext.apply(c,b)}m=Ext.Factory.store(c);if(e){m.complete=!!o}if(k){if(g){l=g.getMatrixSlice(j.inverse,a);l.attach(m);l.notify=j.onMatrixUpdate;l.scope=j}}if(h||(k&&g)){m.on({add:"onAddToMany",remove:"onRemoveFromMany",clear:"onRemoveFromMany",scope:j});if(e){j.onAddToMany(m,m.getData().items,true)}}return m},getAssociatedStore:function(g,s,r,b,q){var l=this,h=l.storeName||l.getStoreName(),n=g[h],p=s&&s.reload,a=g.$source,k=g.session,j,d,e,o,c,m;if(!n){if(!b&&a){a=a[h];if(a&&!a.isLoading()){m=a;b=[];o=a.getData().items;for(d=0,e=o.length;d<e;++d){c=o[d];b.push(k.getRecord(c.self,c.id))}q=true}}n=l.createAssociationStore(k,g,b,q);n.$source=m;if(!b&&(l.autoLoad||s)){p=true}g[h]=n}if(s){if(p||n.isLoading()){n.on("load",function(v,u,w,t){j=[v,t];r=r||s.scope||g;if(w){Ext.callback(s.success,r,j)}else{Ext.callback(s.failure,r,j)}j.push(w);Ext.callback(s,r,j);Ext.callback(s.callback,r,j)},null,{single:true})}else{j=[n,null];r=r||s.scope||g;Ext.callback(s.success,r,j);j.push(true);Ext.callback(s,r,j);Ext.callback(s.callback,r,j)}}if(p&&!n.isLoading()){n.load()}return n},getAssociatedItem:function(b){var a=this.isMany?this.getStoreName():this.role;return b[a]||null},getReaderRoot:function(){var a=this;return a.associationKey||(a.associationKey=a.association.schema.getNamer().readerRoot(a.role))},getReader:function(){var c=this,a=c.reader,d=c.cls,e=!c.associationKey,b=this.getReaderRoot();if(a){if(Ext.isString(a)){a={type:a,rootProperty:b,useSimpleAccessors:e}}if(a.isReader){a.setModel(d);a.setRootProperty(b);a.setUseSimpleAccessors(e)}else{Ext.applyIf(a,{model:d,rootProperty:b,useSimpleAccessors:e,type:c.defaultReaderType})}a=c.reader=Ext.createByAlias("reader."+a.type,a)}return a},getStoreName:function(){var a=this;return a.storeName||(a.storeName=a.association.schema.getNamer().storeName(a.role))},constructReader:function(d){var e=this,a=e.getReader(),g=e.cls,h=!e.associationKey,b=e.getReaderRoot(),c;if(!a){c=g.getProxy();if(c){a=c.getReader();e.savedRoot=a.getRootProperty();a.setRootProperty(b)}else{a=new d.self({model:g,useSimpleAccessors:h,rootProperty:b})}}return a},read:function(c,j,d,h){var g=this,b=this.constructReader(d),a=b.read(j,h),e=g.savedRoot;if(e!==undefined){b.setRootProperty(e);delete g.savedRoot}return a},getCallbackOptions:function(a,b,c){if(typeof a==="function"){a={callback:a,scope:b||c}}else{if(a){a=Ext.apply({},a);a.scope=b||a.scope||c}}return a},doGetFK:function(b,o,m){var k=this,n=k.cls,g=k.association.getFieldName(),e=k.role,l=b[e],a=o&&o.reload,d=l!==undefined&&!a,j=b.session,c,h;if(!d){if(j){c=b.get(g);if(c||c===0){d=j.peekRecord(n,c,true)&&!a;l=j.getRecord(n,c,false)}else{d=true;b[e]=l=null}}else{if(g){c=b.get(g);if(!c&&c!==0){d=true;b[e]=l=null}else{if(!l){l=n.createWithId(c)}}}else{d=true}}}else{if(l){d=!l.isLoading()}}if(d){if(o){h=[l,null];m=m||o.scope||b;Ext.callback(o.success,m,h);h.push(true);Ext.callback(o,m,h);Ext.callback(o.callback,m,h)}}else{b[e]=l;o=k.getCallbackOptions(o,m,b);l.load(o)}return l},doSetFK:function(a,k,n,m){var j=this,e=j.association.getFieldName(),d=j.role,g=a[d],b=j.inverse,c=b.setterName,h=a.session,l;if(k&&k.isEntity){if(g!==k){a[d]=k;if(e){a.set(e,k.getId())}if(c){k[c](a)}}}else{l=(a.changingKey&&!b.isMany)||a.set(e,k);if(l&&g&&g.isEntity&&!g.isEqual(g.getId(),k)){g[b.role]=a[d]=undefined}}if(n){if(Ext.isFunction(n)){n={callback:n,scope:m||a}}return a.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(a){var c=this,d,b;Ext.apply(c,a);c.left=d=new c.Left(c,c.left);c.right=b=new c.Right(c,c.right);d.inverse=b;b.inverse=d},hasField:function(){return !!this.field},getFieldName:function(){var a=this.field;return a?a.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",createGetter:function(){var a=this;return function(){return a.doGet(this)}},createSetter:function(){var a=this;return function(b){return a.doSet(this,b)}},doGet:function(a){var b=this.role,c=a[b],d=a.session;if(!c&&d){}return c},doSet:function(a,e){var b=this.role,d=a[b],c=this.inverse.setterName;if(d!==e){a[b]=e;if(c){e[c](a)}}return d},read:function(c,g,d,h){var e=this,b=e.callParent([c,g,d,h]),a=b.getRecords()[0];if(a){c[e.role]=a;a[e.inverse.role]=c}}}),Right:Ext.define(null,{extend:"Ext.data.schema.Role",left:false,side:"right",createGetter:function(){var a=this;return function(b,c){return a.doGetFK(this,b,c)}},createSetter:function(){var a=this;return function(d,b,c){return a.doSetFK(this,d,b,c)}},onValueChange:function(c,b,a){c.changingKey=true;this.doSetFK(c,a);c.changingKey=false},read:function(c,g,d,h){var e=this,b=e.callParent([c,g,d,h]),a=b.getRecords()[0];if(a){c[e.role]=a;a[e.inverse.role]=c}}})},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,processUpdate:function(h,d){var g=this,e=g.inverse.cls,c=d.R,j,a,b;if(c){for(j in c){a=h.peekRecord(e,j);if(a){records=h.getEntityList(g.cls,c[j]);b=g.getAssociatedItem(a);if(b){records=g.validateAssociationRecords(h,a,records);b.loadRecords(records);b.complete=true}else{a[g.getterName](null,null,records)}}else{h.onInvalidAssociationEntity(e,j)}}}},validateAssociationRecords:function(h,g,c){var j=h.getEntry(g.self,g.id).refs,e=[],k=this.association.getFieldName(),a,d,b;j=j&&j[this.role];if(j){if(c){a={};for(i=0,len=c.length;i<len;++i){d=c[i];b=d.id;if(j[b]){e.push(d)}a[b]=true}}for(b in j){if(!a||!a[b]){e.push(j[b])}}}return e},createGetter:function(){var a=this;return function(d,e,b){var g=this.session,c;if(g){c=!!b;b=a.validateAssociationRecords(g,this,b);if(!c&&!b.length){b=null}}return a.getAssociatedStore(this,d,e,b,c)}},createSetter:null,onAddToMany:function(b,a){this.syncFK(a,b.associatedEntity,false)},onRemoveFromMany:function(b,a){this.syncFK(a,b.associatedEntity,true)},read:function(d,a,l,b){var h=this,k=h.inverse.role,m=h.callParent([d,a,l,b]),j,g,e,c;if(m.getReadRoot()){j=d[h.getterName](null,null,m.getRecords());g=j.data.items;e=g.length;for(c=0;c<e;++c){g[c][k]=d}}},syncFK:function(c,k,j){var h=this.association.getFieldName(),e=this.inverse.setterName,g=c.length,b=j?null:k.getId(),a,d;while(g-->0){d=c[g];a=!d.isEqual(k.getId(),d.get(h));if(a!==j){d.changingKey=true;if(e){d[e](b)}else{d.set(h,b)}d.changingKey=false}}}}),Right:Ext.define(null,{extend:"Ext.data.schema.Role",left:false,side:"right",createGetter:function(){var a=this;return function(b,c){return a.doGetFK(this,b,c)}},createSetter:function(){var a=this;return function(b,c,d){return a.doSetFK(this,b,c,d)}},onValueChange:function(c,g,b,a){var k,j,d,e,h;if(c.changingKey){return}if(g){j=this.getSessionStore(g,a);if(j){j.remove(c)}if(b||b===0){j=this.getSessionStore(g,b);if(j&&!j.isLoading()){j.add(c)}}}else{k=c.joined;if(k){for(d=0,e=k.length;d<e;++d){j=k[d];if(j.isStore){h=j.getAssociatedEntity();if(h&&h.self===this.cls&&h.getId()===a){j.remove(c)}}}}}},getSessionStore:function(b,a){var c=b.peekRecord(this.cls,a);if(c){return this.inverse.getAssociatedItem(c)}},read:function(c,e,d,g){var b=this.callParent([c,e,d,g]),a=b.getRecords()[0];if(a){c[this.role]=a}}})},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+$/,validateAssociationRecords:function(l,k,c){var m=l.getMatrixSlice(this.inverse,k.id),d=m.members,n=this.cls,j=[],a,g,h,b,e;if(c){a={};for(g=0,h=c.length;g<h;++g){rec=c[g];b=rec.id;e=d[b];if(!(e&&e[2]===-1)){j.push(rec)}a[b]=true}}for(b in d){e=d[b];if(!a||!a[b]&&(e&&e[2]!==-1)){rec=l.peekRecord(n,b);if(rec){j.push(rec)}}}return j},processUpdate:function(h,d){var g=this,e=g.inverse.cls,c=d.R,j,a,b;if(c){for(j in c){a=h.peekRecord(e,j);if(a){records=h.getEntityList(g.cls,c[j]);b=g.getAssociatedItem(a);if(b){records=g.validateAssociationRecords(h,a,records);b.loadRecords(records);b.complete=true;g.onAddToMany(b,records,true)}else{a[g.getterName](null,null,records)}}else{h.onInvalidAssociationEntity(e,j)}}}g.processMatrixBlock(h,d.C,1);g.processMatrixBlock(h,d.D,-1)},checkMembership:function(k,g,l){var j=this.left?l.right:l.left,c=j.inverse.role.cls,d=this.inverse,n=j.slices,m,a,b,e,h;if(n){m=n[g.id];if(m){b=m.members;for(a in b){e=b[a];if(e[2]!==-1){h=k.peekRecord(c,a);if(h){store=d.getAssociatedItem(h);if(store){store.matrixUpdate=1;store.add(g);store.matrixUpdate=0}}}}}}},processMatrixBlock:function(e,b,d){var a=this.inverse,c=this.digitRe,g,h;if(b){for(h in b){if(c.test(h)){h=parseInt(h,10)}g=e.getMatrixSlice(a,h);g.update(b[h],d)}}},createGetter:function(){var a=this;return function(d,e,b){var g=this.session,c;if(g){c=!!b;b=a.validateAssociationRecords(g,this,b);if(!c&&!b.length){b=null}}return a.getAssociatedStore(this,d,e,b,c)}},onAddToMany:function(b,a,c){if(!b.matrixUpdate){b.matrixUpdate=1;b.matrix.update(a,c===true?0:1);b.matrixUpdate=0}},onRemoveFromMany:function(b,a){if(!b.matrixUpdate){b.matrixUpdate=1;b.matrix.update(a,-1);b.matrixUpdate=0}},read:function(b,g,d,h){var e=this,c=e.inverse.role,a=e.callParent([b,g,d,h]);if(a.getReadRoot()){b[e.getterName](null,null,a.getRecords())}},onMatrixUpdate:function(g,h,e){var b=g.store,c,a,d;if(b&&!b.loading&&!b.matrixUpdate){b.matrixUpdate=1;c=b.indexOfId(h);if(e<0){if(c>=0){b.remove([c])}}else{if(c<0){d=b.getSession().getEntry(this.type,h);a=d&&d.record;if(a){b.add(a)}}}b.matrixUpdate=0}}},function(){var a=this;Ext.ClassManager.onCreated(function(){Ext.data.schema.ManyToMany.prototype.Right=Ext.define(null,{extend:a,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(b,a){this.singulars.unshift([b,a])},plural:function(b,a){this.plurals.unshift([b,a])},clearSingulars:function(){this.singulars=[]},clearPlurals:function(){this.plurals=[]},isTransnumeral:function(a){return Ext.Array.indexOf(this.uncountable,a)!=-1},pluralize:function(g){if(this.isTransnumeral(g)){return g}var e=this.plurals,d=e.length,a,c,b;for(b=0;b<d;b++){a=e[b];c=a[0];if(c==g||(c.test&&c.test(g))){return g.replace(c,a[1])}}return g},singularize:function(g){if(this.isTransnumeral(g)){return g}var e=this.singulars,d=e.length,a,c,b;for(b=0;b<d;b++){a=e[b];c=a[0];if(c==g||(c.test&&c.test(g))){return g.replace(c,a[1])}}return g},classify:function(a){return Ext.String.capitalize(this.singularize(a))},ordinalize:function(d){var b=parseInt(d,10),c=b%10,a=b%100;if(11<=a&&a<=13){return d+"th"}else{switch(c){case 1:return d+"st";case 2:return d+"nd";case 3:return d+"rd";default:return d+"th"}}}},0,0,0,0,0,0,[Ext.util,"Inflector"],function(){var b={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"},a;for(a in b){if(b.hasOwnProperty(a)){this.plural(a,b[a]);this.singular(b[a],a)}}}));(Ext.cmd.derive("Ext.data.schema.Namer",Ext.Base,{isNamer:true,capitalize:function(a){return Ext.String.capitalize(a)},fieldRole:function(b){var a=b.match(this.endsWithIdRe,"");if(a){b=b.substr(0,b.length-(a[1]||a[2]).length)}return this.apply("uncapitalize",b)},idField:function(a){return this.apply("uncapitalize,singularize",a)+"Id"},multiRole:function(a){return this.apply("undotted,uncapitalize,pluralize",a)},pluralize:function(a){return Ext.util.Inflector.pluralize(a)},readerRoot:function(a){return this.apply("uncapitalize",a)},singularize:function(a){return Ext.util.Inflector.singularize(a)},storeName:function(a){return this.apply("underscore",a)},uncapitalize:function(a){return Ext.String.uncapitalize(a)},underscore:function(a){return"_"+a},uniRole:function(a){return this.apply("undotted,uncapitalize,singularize",a)},undotted:function(b){if(b.indexOf(".")<0){return b}var c=b.split("."),a=c.length;while(a-->1){c[a]=this.apply("capitalize",c[a])}return c.join("")},getterName:function(b){var a=b.role;if(b&&b.isMany){return a}return"get"+this.apply("capitalize",a)},inverseFieldRole:function(h,j,e,b){var g=this,a=g.apply(j?"uniRole":"multiRole",h),d=g.apply("pluralize",e),c=g.apply("undotted,pluralize",b);if(d.toLowerCase()!==c.toLowerCase()){a=e+g.apply("capitalize",a)}return a},manyToMany:function(e,d,a){var c=this,b=c.apply("undotted,capitalize,singularize",d)+c.apply("undotted,capitalize,pluralize",a);if(e){b=c.apply("capitalize",e+b)}return b},manyToOne:function(d,b,a,c){return this.apply("capitalize,singularize",a)+this.apply("capitalize",b)},matrixRole:function(c,b){var a=this.apply(c?"multiRole,capitalize":"multiRole",b);return c?c+a:a},oneToOne:function(d,b,a,c){return this.apply("undotted,capitalize,singularize",a)+this.apply("capitalize",b)},setterName:function(a){return"set"+this.apply("capitalize",a.role)},endsWithIdRe:/(?:(_id)|[^A-Z](Id))$/,cache:{},apply:function(e,c){var j=this,b=j.cache,k=b[c]||(b[c]={}),h=k[e],g,d,a;if(!h){if(e.indexOf(",")<0){h=j[e](c)}else{d=(a=e.split(",")).length;h=c;for(g=0;g<d;++g){h=j.apply(a[g],h)}}k[e]=h}return h}},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(d){var g=this,c=g.instances,h="default",b=d&&Ext.isString(d),a,e;if(d){if(d.isSchema){return d}h=b?d:(d.id||h)}if(!(a=c[h])){c[h]=a=g.create(d);a.id=h}else{if(d&&!b){e=Ext.merge({},a.config);Ext.merge(e,d);a.setConfig(e);a.config=e}}return a},lookupEntity:function(a){var d=null,g=this.instances,c,b,e;if(a){if(a.isEntity){d=a.self}else{if(Ext.isFunction(a)){d=a}else{if(Ext.isString(a)){for(b in g){e=g[b];c=e.getEntity(a);if(c){if(d){Ext.Error.raise('Ambiguous entity name "'+a+'". Defined by schema "'+d.schema.type+'" and "'+b+'"')}d=c}}if(!d){Ext.Error.raise('No such Entity "'+a+'".')}}}}}return d}},assocCount:0,entityCount:0,config:{defaultIdentifier:null,namer:"default",namespace:null,proxy:{type:"ajax",url:"{prefix}/{entityName}",reader:{type:"json"}},urlPrefix:""},onClassExtended:function(a,c){var b=c.alias;if(b&&!c.type){if(!Ext.isString(b)){b=b[0]}a.prototype.type=b.substring(this.prototype.aliasPrefix.length)}},constructor:function(a){this.initConfig(a);this.clear()},applyDefaultIdentifier:function(a){return a&&Ext.Factory.dataIdentifier(a)},applyNamer:function(b){var a=Ext.data.schema.Namer.create(b);a.schema=this;return a},applyNamespace:function(b){if(b){var a=b.length-1;if(b.charAt(a)!=="."){b+="."}}return b},applyProxy:function(a){return Ext.util.ObjectTemplate.create(a)},eachAssociation:function(d,c){var b=this.associations,a;for(a in b){if(b.hasOwnProperty(a)){if(d.call(c,a,b[a])===false){break}}}},eachEntity:function(c,b){var d=this.entities,a;for(a in d){if(d.hasOwnProperty(a)){if(c.call(b,a,d[a].cls)===false){break}}}},getAssociation:function(a){var b=this.associations[a];return b||null},getEntity:function(a){var b=this.entityClasses[a]||this.entities[a];return(b&&b.cls)||null},getEntityName:function(a){var d=this.getNamespace(),c,b;if(typeof a==="string"){b=a}else{b=a.$className||null}if(b){if(d){c=d.length;if(b.substring(0,c)!==d){return b}}if(c){b=b.substring(c)}}return b},hasAssociations:function(a){a=a.entityName||a;return !!this.associationEntityMap[a]},hasEntity:function(a){var b=this.getEntityName(a);return !!(this.entities[b]||this.entityClasses[b])},addMatrix:function(o,h,d,c,s){var t=this,m=t.getNamer(),q=t.associations,a=t.entities,g=c.type,r=s.type,e=c.field||m.apply("idField",g),k=s.field||m.apply("idField",r),b=c.role||m.matrixRole(d,g),n=s.role||m.matrixRole(d,r),p,j,l;j=a[g]||(a[g]={cls:null,name:g,associations:{}});l=a[r]||(a[r]={cls:null,name:r,associations:{}});++t.assocCount;q[h]=p=new Ext.data.schema.ManyToMany({name:h,schema:t,definedBy:o,left:{cls:j.cls,type:g,role:b,field:e},right:{cls:l.cls,type:r,role:n,field:k}});j.associations[p.right.role]=p.right;l.associations[p.left.role]=p.left;t.associationEntityMap[o.entityName]=true;t.decorateModel(p)},addReference:function(s,a,q,b){var v=this,o=v.getNamer(),d=v.entities,t=v.associations,n=s.entityName,e=q.association,r=!!q.legacy,k=q.child,m=q.parent,p=q.role,u=q.type||m||k,l=q.inverse,j=Ext.isString(l)?{role:l}:l,h=j&&j.role,c,g;if(!p){if(r){p=o.apply("uncapitalize",u)}else{p=o.apply("fieldRole",a.name)}}if(!h){h=o.inverseFieldRole(n,b,p,u)}if(!e){if(b){e=o.oneToOne(s,h,u,p)}else{e=o.manyToOne(s,h,u,p)}}c=d[u]||(d[u]={cls:null,name:u,associations:{}});g=b?Ext.data.schema.OneToOne:Ext.data.schema.ManyToOne;e=new g({name:e,owner:k?"left":(m?"right":null),definedBy:s,schema:v,field:a,nullable:a?!!a.allowBlank:true,legacy:q.legacy,left:{cls:s,type:n,role:h,extra:j},right:{cls:c.cls,type:u,role:p,extra:q}});s.associations[p]=e.right;c.associations[h]=e.left;if(a){a.reference=e.right;s.references.push(a)}++v.assocCount;v.associationEntityMap[n]=true;if(c.cls){v.associationEntityMap[c.cls.entityName]=true}t[e.name]=e;if(e.right.cls){v.decorateModel(e)}},privates:{addEntity:function(d){var j=this,h=j.entities,l=d.entityName,m=h[l],g=d.fields,c,k,e,b,a;if(!m){h[l]=m={name:l,associations:{}}}else{c=m.associations;for(a in c){c[a].inverse.cls=d;j.associationEntityMap[l]=true;j.decorateModel(c[a].association)}}m.cls=d;d.prototype.associations=d.associations=m.associations;j.entityClasses[d.$className]=m;++j.entityCount;for(e=0,b=g.length;e<b;++e){k=g[e];if(k.reference){j.addReferenceDescr(d,k)}}},addMatrices:function(g,a){var e=this,b,d,c;if(Ext.isString(a)){e.addMatrixDescr(g,null,a)}else{if(a[0]){for(b=0,d=a.length;b<d;++b){e.addMatrixDescr(g,null,a[b])}}else{for(c in a){e.addMatrixDescr(g,c,a[c])}}}},addMatrixDescr:function(e,a,g){var h=this,k=e.entityName,d=h.associations,j=h.getNamer(),c=g.left,m=g.right,l,b;if(Ext.isString(g)){if(g.charAt(0)==="#"){c={type:k};m={type:g.substring(1)}}else{if(g.charAt(l=g.length-1)==="#"){c={type:g.substring(0,l)};m={type:k}}else{if(j.apply("multiRole",k)<j.apply("multiRole",g)){c={type:k};m={type:g}}else{c={type:g};m={type:k}}}}}else{b=g.relation;if(c||(!m&&j.apply("multiRole",k)<j.apply("multiRole",g.type))){if(!c||c===true){c={type:k}}else{c=Ext.apply({type:k},c)}m=g}else{if(!m||m===true){m={type:k}}else{m=Ext.apply({type:k},m)}c=g}}if(!a){a=j.manyToMany(b,c.type,m.type)}if(!(a in d)){h.addMatrix(e,a,b,c,m)}},addReferenceDescr:function(b,d){var a=this,c=d.$reference;if(Ext.isString(c)){c={type:c}}else{c=Ext.apply({},c)}if(c.legacy){if(c.single){a.addLegacySingle(b,c)}else{a.addLegacyHasMany(b,c)}}else{a.addReference(b,d,c,d.unique)}},addPending:function(a,c,e,b){var d=this.pending;if(!d[a]){d[a]=[]}d[a].push([c,e,b])},addLegacyBelongsTo:function(a,b){this.addLegacySingle(a,b)},addLegacyHasOne:function(a,b){this.addLegacySingle(a,b)},addLegacySingle:function(c,e){var b,a,d;e=this.constructLegacyAssociation(c,e);e.single=true;a=e.type;b=e.foreignKey||(a.toLowerCase()+"_id");d=c.getField(b);if(d){d.$reference=e}this.addReference(c,d,e,true)},addLegacyHasMany:function(d,k){var l=this,g=l.entities,c=l.pending,a=k.associationKey,n,b,m,j,h,e;k=this.constructLegacyAssociation(d,k);b=k.type;j=g[b];if(j&&j.cls){k.type=d.entityName;h=k.foreignKey||(k.type.toLowerCase()+"_id");n=j.cls;m=n.getField(h);k.inverse=k;e=k.name;if(e||a){k.inverse={};if(e){k.inverse.role=e}if(a){k.inverse.associationKey=a}}if(m){m.$reference=k}l.addReference(n,m,k,false)}else{if(!c[b]){c[b]=[]}c[b].push([d,k])}},constructLegacyAssociation:function(a,b){if(Ext.isString(b)){b={model:b}}b.legacy=true;b.type=this.getEntityName(b.model);if(b.associatedName){b.role=b.associatedName}return b},afterLegacyAssociations:function(b){var g=this.pending,c=b.entityName,e=g[c],d,a;if(e){for(d=0,a=e.length;d<a;++d){this.addLegacyHasMany.apply(this,e[d])}delete g[c]}},clear:function(b){var a=this;delete a.setConfig;a.associations={};a.associationEntityMap={};a.entities={};a.entityClasses={};a.pending={};a.assocCount=a.entityCount=0;if(b){a.setNamespace(null)}},constructProxy:function(d){var b=this,c=Ext.Object.chain(d),a=b.getProxy();c.schema=b;c.prefix=b.getUrlPrefix();return a.apply(c)},applyDecoration:function(h){var e=this,a=h.inverse.cls,g=e.getNamer(),c,b,d;if(a&&!h.decorated){h.decorated=true;d=a.prototype;if(!(c=h.getterName)){h.getterName=c=g.getterName(h)}d[c]=h.createGetter();if(h.createSetter){if(!(b=h.setterName)){h.setterName=b=g.setterName(h)}d[b]=h.createSetter()}}},decorateModel:function(a){this.applyDecoration(a.left);this.applyDecoration(a.right)},rankEntities:function(){var e=this,g=e.entities,a=Ext.Object.getKeys(g),d=a.length,c,b;e.nextRank=1;a.sort();for(b=0;b<d;++b){c=g[a[b]].cls;if(!c.rank){e.rankEntity(c)}}},rankEntity:function(c){var b=c.associations,e,d,a;for(a in b){d=b[a];if(!d.left&&d.association.field){e=d.cls;if(!e.rank){this.rankEntity(e)}}}c.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.Batch",Ext.Base,{config:{pauseOnException:false},current:-1,total:0,running:false,complete:false,exception:false,constructor:function(a){var b=this;b.mixins.observable.constructor.call(b,a);b.operations=[];b.exceptions=[]},add:function(b){var d=this,c,a;if(Ext.isArray(b)){for(c=0,a=b.length;c<a;++c){d.add(b[c])}}else{d.total++;b.setBatch(d);d.operations.push(b)}return d},sort:function(){this.operations.sort(this.sortFn)},sortFn:function(c,a){var b=c.order-a.order;if(b){return b}var g=c.entityType,d=a.entityType,e;if(!g||!d){return 0}if(!(e=g.rank)){g.schema.rankEntities();e=g.rank}return(e-d.rank)*c.foreignKeyDirection},start:function(a){var b=this;if(!b.operations.length||b.running){return b}b.exceptions.length=0;b.exception=false;b.running=true;return b.runOperation(Ext.isDefined(a)?a:b.current+1)},retry:function(){return this.start(this.current)},runNextOperation:function(){var a=this;if(a.running){a.runOperation(a.current+1)}return a},pause:function(){this.running=false;return this},getOperations:function(){return this.operations},getExceptions:function(){return this.exceptions},getCurrent:function(){var a=null,b=this.current;if(!(b===-1||this.complete)){a=this.operations[b]}return a},getTotal:function(){return this.total},isRunning:function(){return this.running},isComplete:function(){return this.complete},hasException:function(){return this.exception},runOperation:function(c){var d=this,b=d.operations,a=b[c];if(a===undefined){d.running=false;d.complete=true;d.fireEvent("complete",d,b[b.length-1])}else{d.current=c;a.setInternalCallback(d.onOperationComplete);a.setInternalScope(d);a.execute()}return d},onOperationComplete:function(a){var c=this,b=a.hasException();if(b){c.exception=true;c.exceptions.push(a);c.fireEvent("exception",c,a)}if(b&&c.getPauseOnException()){c.pause()}else{c.fireEvent("operationcomplete",c,a);c.runNextOperation()}}},1,0,0,0,0,[["observable",Ext.mixin.Observable]],[Ext.data,"Batch"],0));(Ext.cmd.derive("Ext.data.matrix.Slice",Ext.Base,{stub:null,constructor:function(a,b){this.id=b;this.side=a;this.members={}},attach:function(a){var b=this;b.store=a;a.matrix=b;a.on("load",b.onStoreLoad,b,{single:true})},changeId:function(b){var k=this,a=k.id,j=k.side,n=j.slices,m=n[a],c=m.members,g=j.index,d=j.inverse.slices,h,e,l;k.id=b;n[b]=m;delete n[a];for(e in c){h=c[e];h[g]=b;l=d[e].members;l[b]=l[a];delete l[a]}},onStoreLoad:function(a){this.update(a.getData().items,0)},update:function(n,g){var t=this,j=Ext.data.matrix.Slice,c=t.side,k=c.index,e=n.length,m=t.id,s=t.members,b=c.inverse,h,p,o,q,a,r,l,d;for(o=0;o<e;++o){p=d=null;q=n[o];a=q.isEntity?(d=q).id:q;h=s[a];if(g<0&&h&&h[2]===1){delete s[a];l=b[a];if(l){delete l.members[m]}p=1}else{if(!h){h=[a,a,g];h[k]=m;s[a]=h;if(!(l=(r=b.slices)[a])){r[a]=l=new j(b,a)}l.members[m]=h;p=1}else{if(g!==h[2]&&g!==0){h[2]=g;l=b.slices[a];p=1}}}if(p){if(t.notify){t.notify.call(t.scope,t,a,g)}if(l&&l.notify){l.notify.call(l.scope,l,m,g)}}}},destroy:function(){var b=this,a=b.store;if(a){a.matrix=null;a.un("load",b.onStoreLoad,b)}b.notify=b.scope=b.store=b.side=b.members=null;b.callParent()}},1,0,0,0,0,0,[Ext.data.matrix,"Slice"],0));(Ext.cmd.derive("Ext.data.matrix.Side",Ext.Base,{constructor:function(a,b,d){var c=this;c.matrix=a;c.index=b;c.role=d;c.slices={}},get:function(b,a){var c=this,e=c.slices,d=e[b]||(e[b]=new Ext.data.matrix.Slice(c,b));return(a||a===0)?d.members[a]:d},update:function(b,a,c){var d=this.get(b);return d.update(a,c)},destroy:function(){var a=this,b=a.slices,c;for(c in b){b[c].destroy()}a.inverse=a.matrix=a.role=a.slices=null;a.callParent()}},1,0,0,0,0,0,[Ext.data.matrix,"Side"],0));(Ext.cmd.derive("Ext.data.matrix.Matrix",Ext.Base,{constructor:function(h,c){var e=this,b=c.isManyToMany?c:h.getSchema().getAssociation(c),a=Ext.data.matrix.Side,g=new a(e,0,b.left),d=new a(e,1,b.right);e.association=b;e.session=h;e.left=g;e.right=d;g.inverse=d;d.inverse=g},update:function(b,a,c){return this.left.update(b,a,c)},destroy:function(){var a=this;a.left.destroy();a.right.destroy();a.association=a.session=a.left=a.right=null;a.callParent()}},1,0,0,0,0,0,[Ext.data.matrix,"Matrix"],0));(Ext.cmd.derive("Ext.data.session.ChangesVisitor",Ext.Base,{constructor:function(c){var a=this,b;a.session=c;b=c.getCrudProperties();a.result=null;a.writerOptions={};a.createKey=b.create;a.readKey=b.read;a.updateKey=b.update;a.dropKey=b.drop},onDirtyRecord:function(g){var k=this,n=k.crud,e=g.phantom,c=g.dropped,h=!e&&!c,l=g.$className,b=(e||c)?"allDataOptions":"partialDataOptions",j=k.writerOptions,a=g.entityName,p,d,m,o;if(e&&c){return false}n=e?k.createKey:(c?k.dropKey:k.updateKey);j=j[l]||(j[l]={});if(c){if(!(p=j.drop)){j.drop=p={all:g.getProxy().getWriter().getWriteAllFields()}}if(!p.all){m=g.id}}if(!m){if(!(p=j[b])){p=g.getProxy().getWriter().getConfig(b);j[b]=p=Ext.Object.chain(p);p.serialize=true}m=g.getData(p)}o=k.result||(k.result={});d=o[a]||(o[a]={});d=d[n]||(d[n]=[]);d.push(m)},onMatrixChange:function(d,k,j,a){var h=this,b=d.left.type,g=d.right.role,e=a<0?h.dropKey:h.createKey,c,l;l=h.result||(h.result={});c=l[b]||(l[b]={});c=c[g]||(c[g]={});c=c[e]||(c[e]={});c=c[k]||(c[k]=[]);c.push(j)}},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)},onDirtyRecord:function(a){if(Ext.data.session.ChangesVisitor.prototype.onDirtyRecord.apply(this,arguments)!==false){if(!a.$source&&(a.dropped||!a.phantom)){this.readEntity(a)}}},readEntity:function(g){var h=this,e=h.readKey,b=g.entityName,c=g.id,a=h.seen,j=b+c,k,d;if(a[j]){return}a[j]=true;k=h.result||(h.result={});d=k[b]||(k[b]={});d=d[e]||(d[e]=[]);d.push(Ext.apply({},g.modified,g.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(a){this.batch=a},getBatch:function(g){var h=this.map,d=this.batch,j,b,c,a,e;if(h){if(!d){d=new Ext.data.Batch()}for(c in h){j=h[c];b=j.entity;e=b.getProxy();delete j.entity;for(a in j){a=e.createOperation(a,{records:j[a]});a.entityType=b;d.add(a)}}}if(d&&g!==false){d.sort()}return d},onDirtyRecord:function(a){var d=this,b=a.phantom?"create":(a.dropped?"destroy":"update"),c=a.$className,e=(d.map||(d.map={})),g=(e[c]||(e[c]={entity:a.self}));g=g[b]||(g[b]=[]);g.push(a)}},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,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(a){var b=this;b.data={};b.matrices={};b.identifierCache={};b.recordCreator=b.recordCreator.bind(b);b.initConfig(a)},destroy:function(){var d=this,b=d.matrices,e=d.data,c,g,a,h;for(h in b){b[h].destroy()}for(c in e){g=e[c];for(h in g){a=g[h].record;if(a){a.$source=a.session=null}}}d.recordCreator=d.matrices=d.data=null;d.setSchema(null);d.callParent()},adopt:function(a){if(a.session!==this){a.session=this;this.add(a)}},commit:function(){},createRecord:function(b,c){var d=b.$isClass?b:this.getSchema().getEntity(b),a=this.getParent(),e;if(a){e=d.getIdFromData(c);if(a.peekRecord(d,e)){Ext.Error.raise("A parent session already contains an entry for "+d.entityName+": "+e)}}return new d(c,this)},getChanges:function(){var a=new Ext.data.session.ChangesVisitor(this);this.visitData(a);return a.result},getChangesForParent:function(){var a=new Ext.data.session.ChildChangesVisitor(this);this.visitData(a);return a.result},getRecord:function(d,j,b){var e=this,a=e.peekRecord(d,j),h,c,g;if(!a){h=d.$isClass?d:e.getSchema().getEntity(d);c=e.getParent();if(c){g=c.peekRecord(h,j)}if(g&&!g.isLoading()){a=g.copy(undefined,e);a.$source=g}else{a=h.createWithId(j,null,e);if(b!==false){a.load(Ext.isObject(b)?b:undefined)}}}return a},getSaveBatch:function(a){var b=new Ext.data.session.BatchVisitor();this.visitData(b);return b.getBatch(a)},onInvalidAssociationEntity:function(a,b){Ext.Error.raise("Unable to read association entity: "+this.getModelIdentifier(a,b))},onInvalidEntityCreate:function(a,b){Ext.Error.raise("Cannot create, record already not exists: "+this.getModelIdentifier(a,b))},onInvalidEntityDrop:function(a,b){Ext.Error.raise("Cannot drop, record does not exist: "+this.getModelIdentifier(a,b))},onInvalidEntityRead:function(a,b){Ext.Error.raise("Cannot read, record already not exists: "+this.getModelIdentifier(a,b))},onInvalidEntityUpdate:function(a,c,b){if(b){Ext.Error.raise("Cannot update, record dropped: "+this.getModelIdentifier(a,c))}else{Ext.Error.raise("Cannot update, record does not exist: "+this.getModelIdentifier(a,c))}},peekRecord:function(e,j,a){var h=e.$isClass?e:this.getSchema().getEntity(e),c=h.entityName,g=this.data[c],b,d;g=g&&g[j];b=g&&g.record;if(!b&&a){d=this.getParent();b=d&&d.peekRecord(e,j,a)}return b||null},save:function(){var a=new Ext.data.session.ChildChangesVisitor(this);this.visitData(a);this.getParent().update(a.result)},spawn:function(){return new this.self({schema:this.getSchema(),parent:this})},update:function(k){var m=this,e=m.getSchema(),a=m.crudOperations,l=a.length,n=m.crudKeys,o,g,q,j,d,r,c,p,h,b;for(o in k){g=e.getEntity(o);q=k[o];for(j=0;j<l;++j){d=a[j];r=q[d.type];if(r){m[d.entityMethod](g,r)}}}for(o in k){g=e.getEntity(o);c=g.associations;q=k[o];for(p in q){if(n[p]){continue}h=c[p];b=q[h.role];h.processUpdate(m,b)}}},privates:{add:function(b){var g=this,j=b.id,c=g.matrices,e=g.getEntry(b.self,j),d,a,h;e.record=b;g.registerReferences(b);d=b.associations;for(a in d){h=d[a];association=h.association;matrix=c[association.name];if(association.isManyToMany&&matrix){h.checkMembership(g,b,matrix)}}},applySchema:function(a){return Ext.data.schema.Schema.get(a)},createEntities:function(d,b){var a=b.length,c,e,g,h;for(c=0;c<a;++c){e=b[c];h=d.getIdFromData(e);g=this.peekRecord(d,h);if(!g){g=this.createRecord(d,e)}else{this.onInvalidEntityCreate(d,h)}g.phantom=true}},dropEntities:function(d,c){var a=c.length,b,e,g;for(b=0;b<a;++b){g=c[b];e=this.peekRecord(d,g);if(e){e.drop()}else{this.onInvalidEntityDrop(d,g)}}},getEntityList:function(d,c){var a=c.length,b,h,g,e;for(b=0;b<a;++b){h=c[b];g=this.peekRecord(d,h);if(g){c[b]=g}else{e=true;c[b]=null;this.onInvalidAssociationEntity(d,h)}}if(e){c=Ext.Array.clean(c)}return c},getEntry:function(b,g){var d=b.$isClass?b:this.getSchema().getEntity(b),a=d.entityName,e=this.data,c;c=e[a]||(e[a]={});c=c[g]||(c[g]={});return c},getIdentifier:function(e){var a=this.identifierCache,c=e.identifier,d=c.id||e.entityName,b=a[d];if(!b){if(c.clone){b=c.clone({cache:a})}else{b=c}a[d]=b}return b},getMatrix:function(a){var c=a.isManyToMany?a.name:a,b=this.matrices;return b[c]||(b[c]=new Ext.data.matrix.Matrix(this,a))},getMatrixSlice:function(d,c){var a=this.getMatrix(d.association),b=a[d.side];return b.get(c)},getModelIdentifier:function(a,b){return b+"@"+a.entityName},onIdChanged:function(e,n,j){var s=this,k=e.entityName,o=e.id,u=s.data[k],b=u[n],r=e.associations,c=b.refs,a=s._setNoRefs,g,d,q,l,t,m,p,h;delete u[n];u[j]=b;for(m in r){t=r[m];if(t.isMany){h=t.getAssociatedItem(e);if(h){q=h.matrix;if(q){q.changeId(j)}}}}if(c){for(m in c){p=c[m];t=r[m];g=t.association;if(g.isManyToMany){}else{d=g.field.name;for(l in p){p[l].set(d,o,a)}}}}s.registerReferences(e,n)},processManyBlock:function(g,j,c,d){var e=this,h,a,b;if(c){for(h in c){a=e.peekRecord(g,h);if(a){records=e.getEntityList(j.cls,c[h]);b=j.getAssociatedItem(a);e[d](j,b,a,records)}else{e.onInvalidAssociationEntity(g,h)}}}},processManyCreate:function(d,c,a,b){if(c){c.add(b)}else{a[d.getterName](null,null,b)}},processManyDrop:function(d,c,a,b){if(c){c.remove(b)}},processManyRead:function(d,c,a,b){if(c){c.setRecords(b)}else{a[d.getterName](null,null,b)}},readEntities:function(d,b){var a=b.length,c,e,g,h;for(c=0;c<a;++c){e=b[c];h=d.getIdFromData(e);g=this.peekRecord(d,h);if(!g){g=this.createRecord(d,e)}else{this.onInvalidEntityRead(d,h)}g.phantom=false}},recordCreator:function(c,d){var b=this,e=d.getIdFromData(c),a=b.peekRecord(d,e,true);if(!a){a=new d(c,b)}else{a=b.getRecord(d,e)}return a},registerReferences:function(j,c){var m=j.entityName,b=j.id,a=j.data,h=c||c===0,n,g,p,k,d,o,l,e;k=(o=j.references).length;for(g=0;g<k;++g){d=o[g];p=a[d.name];if(p||p===0){d=d.reference;m=d.type;e=d.inverse.role;n=this.getEntry(d.cls,p);l=n.refs||(n.refs={});l=l[e]||(l[e]={});l[b]=j;if(h){delete l[c]}}}},updateEntities:function(e,b){var a=b.length,d,g,h,j,c;if(Ext.isArray(b)){for(d=0;d<a;++d){g=b[d];j=e.getIdFromData(g);h=this.peekRecord(e,j);if(h){h.set(g)}else{this.onInvalidEntityUpdate(e,j)}}}else{for(j in b){g=b[j];h=this.peekRecord(e,j);if(h&&!h.dropped){c=h.set(g)}else{this.onInvalidEntityUpdate(e,j,!!h)}}}},updateReference:function(g,j,c,a){var d=j.reference,k=d.type,e=d.inverse.role,b=g.id,l,h;if(a||a===0){h=this.getEntry(k,a).refs[e];delete h[b]}if(c||c===0){l=this.getEntry(k,c);h=l.refs||(l.refs={});h=h[e]||(h[e]={});h[b]=g}},visitData:function(h){var k=this,e=k.data,o=k.matrices,n,j,c,q,l,d,b,g,m,p,a;for(b in e){n=e[b];for(c in n){g=n[c].record;if(g){if(g.phantom||g.dirty||g.dropped){if(h.onDirtyRecord){h.onDirtyRecord(g)}}else{if(h.onCleanRecord){h.onCleanRecord(g)}}}}}if(h.onMatrixChange){for(b in o){l=o[b].left;p=l.slices;j=l.role.association;for(c in p){m=p[c];d=m.members;for(q in d){a=(g=d[q])[2];if(a){h.onMatrixChange(j,g[0],g[1],a)}}}}}return h},_setNoRefs:{refs:false}}},1,0,0,0,0,0,[Ext.data,"Session"],0));(Ext.cmd.derive("Ext.util.Schedulable",Ext.Base,{"abstract":true,isSchedulable:true,scheduled:false,constructor:function(){this.getScheduler().add(this)},destroy:function(){var b=this,a=b.getScheduler();if(a){a.remove(b)}b.destroyed=true;b.scheduler=null;b.schedule=b.destroy=b.react=Ext.emptyFn},getFullName:function(){return this.name||this.id},privates:{getScheduler:function(){return this.scheduler},schedule:function(){var b=this,a;if(!b.scheduled){a=b.getScheduler();if(a){b.scheduled=true;if(b.onSchedule){b.onSchedule()}a.scheduleItem(b)}}},unschedule:function(){var b=this,a;if(b.scheduled){a=b.getScheduler();if(a){a.unscheduleItem(b)}b.scheduled=false}},sort:function(){}}},1,0,0,0,0,0,[Ext.util,"Schedulable"],0));(Ext.cmd.derive("Ext.app.bind.BaseBinding",Ext.util.Schedulable,{calls:0,kind:20,defaultOptions:{},lastValue:undefined,constructor:function(a,e,c,b){var d=this;d.options=b;d.owner=a;d.scope=c;d.callback=e;d.lateBound=Ext.isString(e);if(b&&b.deep){d.deep=true}Ext.util.Schedulable.prototype.constructor.call(this)},destroy:function(){var a=this;Ext.util.Schedulable.prototype.destroy.call(this);a.scope=a.callback=a.owner=null},privates:{getScheduler:function(){var a=this.owner;return a&&a.getScheduler()},getSession:function(){var a=this.owner;return a.isSession?a:a.getSession()},notify:function(d){var c=this,a=c.options||c.defaultOptions,b=c.lastValue;if(!c.calls||c.deep||b!==d||Ext.isArray(d)){++c.calls;c.lastValue=d;if(c.lateBound){c.scope[c.callback](d,b,c)}else{c.callback.call(c.scope,d,b,c)}if(a.single){c.destroy()}}}}},1,0,0,0,0,0,[Ext.app.bind,"BaseBinding"],0));(Ext.cmd.derive("Ext.app.bind.Binding",Ext.app.bind.BaseBinding,{constructor:function(d,e,b,a){var c=this;Ext.app.bind.BaseBinding.prototype.constructor.apply(this,[d.owner,e,b,a]);c.stub=d;c.depth=d.depth;if(!d.isLoading()&&!d.scheduled){c.schedule()}},destroy:function(c){var a=this,b=a.stub;if(b&&!c){b.unbind(a);a.stub=null}Ext.app.bind.BaseBinding.prototype.destroy.call(this)},bindValidation:function(c,a){var b=this.stub;return b&&b.bindValidation(c,a)},getFullName:function(){return this.fullName||(this.fullName="@("+this.stub.getFullName()+")")},getValue:function(){var b=this,c=b.stub,a=c&&c.getValue();if(b.transform){a=b.transform(a)}return a},isLoading:function(){var a=this.stub;return a&&a.isLoading()},isReadOnly:function(){var b=this.stub,a=this.options,c;if(b&&b.set&&!(a&&a.twoWay===false)){c=b.formula;if(!c||c.set){return false}}return true},refresh:function(){},setValue:function(a){var b=this.stub,c=b.formula;if(c){c.set.call(b.owner,a)}else{b.set(a)}},privates:{getDataObject:function(){var a=this.stub;return a&&a.getDataObject()},getRawValue:function(){var b=this,c=b.stub,a=c&&c.getRawValue();if(b.transform){a=b.transform(a)}return a},isDescendantOf:function(a){var b=this.stub;return b?(a===b)||b.isDescendantOf(a):false},react:function(){this.notify(this.getValue())},schedule:function(){if(!this.stub.scheduled){this.callParent()}},sort:function(){var a=this.stub;a.scheduler.sortItem(a)}}},1,0,0,0,0,0,[Ext.app.bind,"Binding"],0));(Ext.cmd.derive("Ext.app.bind.AbstractStub",Ext.util.Schedulable,{children:null,depth:0,generation:1,kind:10,parent:null,constructor:function(a,b){var c=this;c.owner=a;c.name=b;Ext.util.Schedulable.prototype.constructor.call(this)},destroy:function(){var e=this,d=e.children,g=e.bindings,a,c,b;if(g){for(c=0,a=g.length;c<a;++c){g[c].destroy(true)}}for(b in d){d[b].destroy()}Ext.util.Schedulable.prototype.destroy.call(this);e.bindings=e.children=e.owner=null},add:function(b){var a=this;(a.children||(a.children={}))[b.name]=b;b.depth=a.depth+1;b.parent=a},getChild:function(b){var a=Ext.isString(b)?b.split("."):b;if(a&&a.length){return this.descend(a,0)}return this},getFullName:function(){var d=this,a=d.fullName,c=d.parent,b;if(!a){a=d.name||d.id;if(c&&(b=c.getFullName())){a=((b.charAt(b.length-1)!==":")?b+".":b)+a}d.fullName=a}return a},getSession:function(){var a=this.owner;return a.isSession?a:a.getSession()},bind:function(g,b,a){var c=this,d=new Ext.app.bind.Binding(c,g,b,a),e=(c.bindings||(c.bindings=[]));d.depth=c.depth;e.push(d);return d},getValue:function(){return this.isLoading()?null:this.getRawValue()},graft:function(c){var d=this,e=d.bindings,a=d.name,b;d.parent=d.bindings=null;d.destroy();c.depth=d.depth;c.bindings=e;c.generation=d.generation+1;c.name=a;c.id=d.id;c.path=d.path;if(e){for(b=e.length;b-->0;){e[b].stub=c}}return c},isDescendantOf:function(b){for(var a=this;a=a.parent;){if(a===b){return true}}return false},onSchedule:function(){for(var b,a,d,e,c=this.parent;c;c=c.parent){e=c.bindings;if(e){for(b=0,a=e.length;b<a;++b){d=e[b];if(d.deep&&!d.scheduled){d.schedule()}}}}},react:function(){var d=this.bindings,c,b,a;if(d){for(b=0,a=d.length;b<a;++b){c=d[b];if(!c.scheduled){c.schedule()}}}},unbind:function(a){var b=this.bindings;if(b&&b.length){Ext.Array.remove(b,a)}},collect:function(){var c=this.children,g=this.bindings,a=0,d=0,e,b;if(c){for(b in c){e=c[b];d=e.collect();if(d===0){e.destroy();delete c[b]}a+=d}}if(g){a+=g.length}return a},privates:{getScheduler:function(){var a=this.owner;return a&&a.getScheduler()},sort:function(){var a=this.parent;if(a){this.scheduler.sortItem(a)}}}},1,0,0,0,0,0,[Ext.app.bind,"AbstractStub"],0));(Ext.cmd.derive("Ext.app.bind.Stub",Ext.app.bind.AbstractStub,{isStub:true,dirty:true,formula:null,validationKey:"validation",statics:{populateValues:function(d,a,g,e){var c=e&&e.children,h,b;a.hadValue[g]=true;if(e){e.hadValue=true}if(d&&d.constructor===Object){for(b in d){Ext.app.bind.Stub.populateValues(d[b],a,g+"."+b,c&&c[b])}}}},constructor:function(a,b,c){var d=this,e=b;Ext.app.bind.AbstractStub.prototype.constructor.apply(this,[a,b]);d.boundValue=null;if(c){c.add(d);if(!c.isRootStub){e=c.path+"."+b}}d.hadValue=a.hadValue[e];d.path=b},destroy:function(){var c=this,d=c.formula,a=c.parent,b=c.storeBinding;if(d){d.destroy()}if(b){b.destroy()}c.detachBound();c.parentValue=c.formula=c.storeBinding=null;Ext.app.bind.AbstractStub.prototype.destroy.call(this)},collect:function(){var c=this,a=Ext.app.bind.AbstractStub.prototype.collect.call(this),b=c.storeBinding?1:0;return a+b},bindValidation:function(c,b){var a=this.parent;return a&&a.descend([this.validationKey,this.name]).bind(c,b)},descend:function(g,c){var e=this,d=e.children||(e.children={}),h=c||0,b=g[h++],a;if(!(a=d[b])){a=new Ext.app.bind.Stub(e.owner,b,e)}if(h<g.length){a=a.descend(g,h)}return a},getChildValue:function(a){var d=this,c=d.name,b;if(!a&&!Ext.isString(a)){b=d.hadValue?null:undefined}else{b=d.inspectValue(a);if(!b){if(a.isEntity){b=a.data[c]}else{b=a[c]}}}return b},getDataObject:function(){var d=this,a=d.parent.getDataObject(),c=d.name,b=a?a[c]:null;if(!b||!(b.$className||Ext.isObject(b))){if(b){}a[c]=b={};d.hadValue=d.owner.hadValue[d.path]=true}return b},getRawValue:function(){return this.getChildValue(this.getParentValue())},graft:function(e){var g=this,d=g.parent,c=g.children,a=g.name,b;e.parent=d;e.children=c;if(d){d.children[a]=e}if(c){for(b in c){c[b].parent=e}}g.children=null;return Ext.app.bind.AbstractStub.prototype.graft.apply(this,[e])},isLoading:function(){var b=this,a=b.parent,d=false,c;if(a&&!(d=a.isLoading())){c=b.inspectValue(b.getParentValue());if(c){d=c.isLoading()}else{d=!b.hadValue&&b.getRawValue()===undefined}}return d},invalidate:function(a){var d=this,c=d.children,b;d.dirty=true;if(!d.isLoading()){if(!d.scheduled){d.schedule()}}if(a&&c){for(b in c){c[b].invalidate(a)}}},set:function(g){var e=this,d=e.parent,b=e.name,a=d.getDataObject(),c;if(a.isEntity){c=a.associations;if(c&&(b in c)){}else{a.set(b,g)}}else{if((g&&g.constructor===Object)||g!==a[b]){if(!e.setByLink(g)){if(g===undefined){delete a[b]}else{a[b]=g;Ext.app.bind.Stub.populateValues(g,e.owner,e.path,e)}e.inspectValue(a);e.invalidate(true)}}}},onStoreLoad:function(){this.invalidate(true)},afterLoad:function(a){this.invalidate(true)},afterEdit:function(h,e){var c=this.children,j=e&&e.length,d=h.associations,k,g,b,a;if(c){if(j){for(g=0;g<j;++g){b=c[e[g]];if(b){b.invalidate()}}}else{for(k in c){if(!(d&&k in d)){c[k].invalidate()}}}}this.invalidate()},afterReject:function(a){this.afterEdit(a,null)},setByLink:function(d){var c=this,h=0,a,b,g,e;for(e=c;e;e=e.parent){if(e.isLinkStub){b=e;if(h){for(g=[],a=0,e=c;e!==b;e=e.parent){++a;g[h-a]=e.name}}break}++h}if(!b||!(e=b.getTargetStub())){return false}if(g){e=e.descend(g)}e.set(d);return true},setFormula:function(c){var a=this,b=a.formula;if(b){b.destroy()}a.formula=new Ext.app.bind.Formula(a,c)},react:function(){var c=this,b=this.boundValue,a=c.children,d;if(b){if(b.isValidation){b.refresh();d=b.generation;if(c.lastValidationGeneration===d){return}c.lastValidationGeneration=d}else{if(b.isModel){if(a&&a[c.validationKey]){b.isValid()}}else{if(b.isStore){if(b.isLoading()&&!b.loadCount){return}}}}}Ext.app.bind.AbstractStub.prototype.react.call(this)},privates:{getParentValue:function(){var a=this;if(a.dirty){a.parentValue=a.parent.getValue();a.dirty=false}return a.parentValue},setStore:function(a){this.storeBinding=a},inspectValue:function(h){var j=this,a=j.name,g=j.boundValue,c=null,d,b,k,e;if(h&&h.isEntity){d=h.associations;if(d&&(a in d)){b=d[a];c=h[b.getterName]();if(c&&c.isStore){c.$associatedStore=true}}else{if(a===j.validationKey){c=h.getValidation(true);j.lastValidationGeneration=null}}}else{if(h){k=h[a];if(k&&(k.isModel||k.isStore)){c=k}}}e=g!==c;if(e){if(g){j.detachBound()}if(c){if(c.isModel){c.join(j)}else{if(c.$associatedStore&&!c.getCount()&&!c.loadCount&&!c.hasPendingLoad()){c.load()}c.on("load",j.onStoreLoad,j,{single:true})}}j.boundValue=c}return c},detachBound:function(){var a=this,b=a.boundValue;if(b){if(b.isModel){b.unjoin(a)}else{b.un("load",a.onStoreLoad,a)}}},sort:function(){var c=this,d=c.formula,a=c.scheduler,b=c.storeBinding;c.callParent();if(b){a.sortItem(b)}if(d){a.sortItem(d)}}}},1,0,0,0,0,0,[Ext.app.bind,"Stub"],0));(Ext.cmd.derive("Ext.app.bind.LinkStub",Ext.app.bind.Stub,{isLinkStub:true,binding:null,destroy:function(){var b=this,c=b.binding,a=b.owner;if(c){b.binding=null;c.destroy();if(a){delete a.linkData[b.name]}}b.target=null;Ext.app.bind.Stub.prototype.destroy.call(this)},getFullName:function(){var a=this;return a.fullName||(a.fullName="("+Ext.app.bind.AbstractStub.prototype.getFullName.call(this)+" -> "+a.binding.getFullName()+")")},getDataObject:function(){var a=this.binding;return a&&a.getDataObject()},getRawValue:function(){var a=this.binding;return a&&a.getRawValue()},getValue:function(){var a=this.binding;return a&&a.getValue()},getTargetStub:function(){var a=this.binding;return a&&a.stub},isLoading:function(){var a=this.binding;return a?a.isLoading():false},link:function(d,b){var a=this,c=a.binding;if(c){c.destroy()}b=a.target=b||a.owner;a.linkDescriptor=d;a.binding=b.bind(d,a.onChange,a);a.binding.deep=true},onChange:function(){this.invalidate(true)},react:function(){var b=this,a=b.owner.linkData;a[b.name]=b.getValue();Ext.app.bind.Stub.prototype.react.call(this)},privates:{sort:function(){var a=this.binding;if(a){this.scheduler.sortItem(a)}}}},0,0,0,0,0,0,[Ext.app.bind,"LinkStub"],0));(Ext.cmd.derive("Ext.app.bind.RootStub",Ext.app.bind.AbstractStub,{isRootStub:true,depth:0,createRootChild:function(a,e){var k=this,b=k.owner,g=b.getData(),c=k.children,j=c&&c[a],h=j?null:k,l,d;if(e||g.hasOwnProperty(a)||!(l=b.getParent())){d=new Ext.app.bind.Stub(b,a,h)}else{d=new Ext.app.bind.LinkStub(b,a,j?null:h);d.link("{"+a+"}",l)}if(j){j.graft(d)}return d},createStubChild:function(a){return this.createRootChild(a,true)},descend:function(g,c){var e=this,d=e.children,h=c||0,b=g[h++],a=(d&&d[b])||e.createRootChild(b);if(h<g.length){a=a.descend(g,h)}return a},getFullName:function(){return this.fullName||(this.fullName=this.owner.id+":")},getDataObject:function(){return this.owner.data},getRawValue:function(){return this.owner.data},getValue:function(){return this.owner.data},isDescendantOf:function(){return false},isLoading:function(){return false},set:function(h){var g=this,b=g.children||(g.children={}),a=g.owner,d=a.data,l=a.getParent(),e,c,k,j;for(j in h){if((k=h[j])!==undefined){if(!(c=b[j])){c=new Ext.app.bind.Stub(a,j,g)}else{if(c.isLinkStub){e=c;c=new Ext.app.bind.Stub(a,j);e.graft(c)}}c.set(k)}else{if(d.hasOwnProperty(j)){delete d[j];c=b[j];if(c&&!c.isLinkStub&&l){c=g.createRootChild(j)}c.invalidate(true)}}}},schedule:Ext.emptyFn,unschedule:Ext.emptyFn},0,0,0,0,0,0,[Ext.app.bind,"RootStub"],0));(Ext.cmd.derive("Ext.app.bind.Multi",Ext.app.bind.BaseBinding,{isMultiBinding:true,missing:1,deep:true,constructor:function(e,a,g,c,b){var d=this;Ext.app.bind.BaseBinding.prototype.constructor.apply(this,[a,g,c,b]);d.bindings=[];d.literal=e.$literal;if(e.constructor===Object){d.addObject(e,d.lastValue={})}else{d.addArray(e,d.lastValue=[])}if(!--d.missing&&!d.scheduled){d.schedule()}},destroy:function(){var a=this;a.bindings=Ext.destroy(a.bindings);Ext.app.bind.BaseBinding.prototype.destroy.call(this)},add:function(b,g,k){var j=this,d=j.owner,c=j.bindings,a=j.literal?(b.reference?"bindEntity":"bindExpression"):"bind",h,e;++j.missing;h=d[a](b,function(l){g[k]=l;if(h.calls===1){--j.missing}if(!j.missing&&!j.scheduled){j.schedule()}},j,null);e=h.depth;if(!c.length||e<j.depth){j.depth=e}c.push(h)},addArray:function(c,h){var e=this,g=c.length,a,d;for(d=0;d<g;++d){a=c[d];if(a&&(a.reference||Ext.isString(a))){e.add(a,h,d)}else{if(Ext.isArray(a)){e.addArray(a,h[d]=[])}else{if(a&&a.constructor===Object){e.addObject(a,h[d]={})}else{h[d]=a}}}}},addObject:function(c,e){var g=this,a,d;for(d in c){a=c[d];if(a&&(a.reference||Ext.isString(a))){g.add(a,e,d)}else{if(Ext.isArray(a)){g.addArray(a,e[d]=[])}else{if(a&&a.constructor===Object){g.addObject(a,e[d]={})}else{e[d]=a}}}}},getFullName:function(){var c=this,d=c.fullName,e=c.bindings,b=e.length,a;if(!d){d="@[";for(a=0;a<b;++a){if(a){d+=","}d+=e[a].getFullName()}d+="]";c.fullName=d}return d},getRawValue:function(){return this.lastValue},isDescendantOf:function(){return false},isLoading:function(){for(var b=this.bindings,a=b.length;a-->0;){if(b[a].isLoading()){return true}}return false},isStatic:function(){var d=this.bindings,a=d.length,b,c;for(b=0;b<a;++b){c=d[b];if(!(c.isTemplateBinding&&c.isStatic)){return false}}return true},react:function(){this.notify(this.lastValue)},refresh:function(){},privates:{sort:function(){this.scheduler.sortItems(this.bindings)}}},1,0,0,0,0,0,[Ext.app.bind,"Multi"],0));(Ext.cmd.derive("Ext.app.bind.Formula",Ext.util.Schedulable,{statics:{getFormulaParser:function(b){var a=this.formulaCache,d,c;if(!a){a=this.formulaCache=new Ext.util.LruCache({maxSize:20})}d=a.get(b);if(!d){c="[^\\.a-z0-9_]"+b+"\\((['\"])(.*?)\\1\\)";d=new RegExp(c,"gi");a.add(b,d)}return d}},isFormula:true,calculation:null,explicit:false,set:null,single:false,argumentNamesRe:/^function\s*\(\s*([^,\)\s]+)/,constructor:function(h,j){var g=this,b=h.owner,d,e,a,c;g.owner=b;g.stub=h;Ext.util.Schedulable.prototype.constructor.call(this);if(j instanceof Function){g.get=a=j}else{g.get=a=j.get;g.set=j.set;e=j.bind;if(j.single){g.single=j.single}if(e){d=e.bindTo;if(d){c=Ext.apply({},e);delete c.bindTo;e=d}}}if(e){g.explicit=true}else{e=a.$expressions||g.parseFormula(a)}g.binding=b.bind(e,g.onChange,g,c)},destroy:function(){var a=this,c=a.binding,b=a.stub;if(c){c.destroy();a.binding=null}if(b){b.formula=null}Ext.util.Schedulable.prototype.destroy.call(this);a.getterFn=a.owner=null},getFullName:function(){return this.fullName||(this.fullName=this.stub.getFullName()+"="+Ext.util.Schedulable.prototype.getFullName.call(this)+")")},getRawValue:function(){return this.calculation},onChange:function(){if(!this.scheduled){this.schedule()}},parseFormula:function(h){var g=h.toString(),d={$literal:true},c,b,a,e;c=this.argumentNamesRe.exec(g);b=c?c[1]:"get";a=Ext.app.bind.Formula.getFormulaParser(b);while((c=a.exec(g))){e=c[2];d[e]=e}d.$literal=true;h.$expressions=d;return d},react:function(){var c=this,b=c.owner,d=c.binding.lastValue,e=c.getterFn,a;if(c.explicit){a=d}else{a=b.getFormulaFn(d)}c.settingValue=true;c.stub.set(c.calculation=c.get.call(b,a));c.settingValue=false;if(c.single){c.destroy()}},privates:{getScheduler:function(){var a=this.owner;return a&&a.getScheduler()},sort:function(){var a=this,b=a.binding;if(!b.destroyed){a.scheduler.sortItem(b)}}}},1,0,0,0,0,0,[Ext.app.bind,"Formula"],0));(Ext.cmd.derive("Ext.app.bind.Template",Ext.Base,{numberRe:/^(?:\d+(?:\.\d*)?)$/,stringRe:/^(?:["][^"]*["])$/,tokenRe:/\{[!]?(?:(?:(\d+)|([a-z_][\w\-\.]*))(?::([a-z_\.]+)(?:\(([^\)]*?)?\))?)?)\}/gi,formatRe:/^([a-z_]+)(?:\(([^\)]*?)?\))?$/i,buffer:null,slots:null,tokens:null,constructor:function(d){var c=this,b=c._initters,a;c.text=d;for(a in b){c[a]=b[a]}},_initters:{apply:function(a,b){return this.parse().apply(a,b)},getTokens:function(){return this.parse().getTokens()}},apply:function(j,k){var e=this,d=e.slots,b=e.buffer,a=d.length,c,h,g;for(c=0;c<a;++c){h=d[c];if(h){if((g=j[h.pos])==null){g=""}if(h.not){g=!g}if(h.format){g=h.format(g,k)}b[c]=g}}return b.join("")},getTokens:function(){return this.tokens},parse:function(){var l=this,q=l.text,e=[],j=[],k=[],p={},o=0,d=l.tokenRe,m=0,b,g,a,h,r,n,c;for(g in l._initters){delete l[g]}l.buffer=e;l.slots=j;l.tokens=k;while((h=d.exec(q))){a=h.index-o;if(a){e[m++]=q.substring(o,o+a);o+=a}o+=(r=h[0]).length;n={fmt:(b=h[3]||null),index:h[1]?parseInt(h[1],10):null,not:r.charAt(1)==="!",token:h[2]||null};c=n.token||String(n.index);if(c in p){n.pos=p[c]}else{p[c]=n.pos=k.length;k.push(c)}if(b){if(b.substring(0,5)==="this."){n.fmt=b.substring(5)}else{n.scope=Ext.util.Format}l.parseArgs(h[4],n)}j[m++]=n}if(o<q.length){e[m++]=q.substring(o)}return l},parseArgs:function(g,h){var e=this,b=e.numberRe,j=e.stringRe,k,d,c,a;if(!g){d=[]}else{if(g.indexOf(",")<0){d=[g]}else{d=g.split(",")}}h=h||{};a=d.length;h.args=d;for(c=0;c<a;++c){k=d[c];if(k==="true"){d[c]=true}else{if(k==="false"){d[c]=false}else{if(k==="null"){d[c]=null}else{if(b.test(k)){d[c]=parseFloat(k)}else{if(j.test(k)){d[c]=k.substring(1,k.length-1)}else{h.fn=Ext.functionFactory("return ["+g+"];");h.format=e._formatEval;break}}}}}}if(!h.format){d.unshift(0);h.format=e._formatArgs}return h},parseFormat:function(a){var d=this,c=d.formatRe.exec(a),e={fmt:a,scope:Ext.util.Format},b;b=c[2];if(b){e.fmt=c[1];d.parseArgs(b,e)}else{e.args=[0];e.format=d._formatArgs}return e},_formatArgs:function(b,a){a=this.scope||a;this.args[0]=b;return a[this.fmt].apply(a,this.args)},_formatEval:function(c,b){var a=this.fn();a.unshift(c);b=this.scope||b;return b[this.fmt].apply(b,a)}},1,0,0,0,0,0,[Ext.app.bind,"Template"],0));(Ext.cmd.derive("Ext.app.bind.TemplateBinding",Ext.app.bind.BaseBinding,{isTemplateBinding:true,lastValue:undefined,value:undefined,constructor:function(e,a,j,d,c){var g=this,b=new Ext.app.bind.Template(e),h=b.getTokens();Ext.app.bind.BaseBinding.prototype.constructor.apply(this,[a,j,d,c]);g.tpl=b;g.tokens=h;h.$literal=true;if(h.length){g.multiBinding=new Ext.app.bind.Multi(h,a,g.onBindData,g)}else{g.isStatic=true;g.onData(b.text)}},destroy:function(){var a=this;Ext.destroy(a.multiBinding);a.tpl=a.multiBinding=null;Ext.app.bind.BaseBinding.prototype.destroy.call(this)},getFullName:function(){var a=this.multiBinding;return this.fullName||(this.fullName="$"+(a?a.getFullName():Ext.util.Schedulable.prototype.getFullName.call(this)))},getRawValue:function(){return this.value},getTemplateScope:function(){return null},isDescendantOf:function(){return false},isLoading:function(){var a=this.multiBinding;return a?a.isLoading():false},onBindData:function(a){this.onData(this.tpl.apply(a,this.getTemplateScope()))},onData:function(c){var b=this,a=b.value;if(a!==(b.value=c)){b.lastValue=a;b.schedule()}},react:function(){this.notify(this.value)},refresh:function(){var a=this.multiBinding;if(a){a.refresh()}},privates:{sort:function(){var a=this.multiBinding;if(a){this.scheduler.sortItem(a)}}}},1,0,0,0,0,0,[Ext.app.bind,"TemplateBinding"],0));(Ext.cmd.derive("Ext.data.AbstractStore",Ext.Base,{factoryConfig:{defaultType:"store",type:"store"},$configPrefixed:false,$configStrict:false,config:{autoFilter:true,autoSort:true,filters:undefined,autoDestroy:undefined,storeId:null,statefulFilters:false,sorters:undefined,remoteSort:false,remoteFilter:false,groupField:undefined,groupDir:"ASC",grouper:null,pageSize:25},currentPage:1,loading:false,isDestroyed:false,isStore:true,updating:0,constructor:function(b){var c=this,a;c.isInitializing=true;c.mixins.observable.constructor.call(c,b);c.isInitializing=false;a=c.getStoreId();if(!a&&(b&&b.id)){c.setStoreId(a=b.id)}if(a){Ext.data.StoreManager.register(c)}},getId:function(){return this.getObservableId()},getCount:function(){return this.getData().getCount()},rangeCached:function(b,a){return this.getData().getCount()>=Math.max(b,a)},find:function(g,e,h,j,a,d){var c=!j,b=c&&d;return this.getData().findIndex(g,e,h,c,b,!a)},findRecord:function(){var b=this,a=b.find.apply(b,arguments);return a!==-1?b.getAt(a):null},findExact:function(b,a,c){return this.getData().findIndexBy(function(d){return d.isEqual(d.get(b),a)},this,c)},findBy:function(b,a,c){return this.getData().findIndexBy(b,a,c)},getAt:function(a){return this.getData().getAt(a)||null},getRange:function(d,b,c){var a=this.getData().getRange(d,Ext.isNumber(b)?b+1:b);if(c&&c.callback){c.callback.call(c.scope||this,a,d,b,c)}return a},applyFilters:function(b,a){if(!a){a=this.createFiltersCollection();a.setRootProperty("data")}a.add(b);return a},applySorters:function(b,a){if(!a){a=this.createSortersCollection();a.setRootProperty("data")}a.add(b);return a},updateAutoFilter:function(b){var a=this.getData();if(a.setAutoFilter){a.setAutoFilter(b)}},updateAutoSort:function(a){var b=this.getData();if(b.setAutoSort){b.setAutoSort(a)}},filter:function(a,b){if(Ext.isString(a)){a={property:a,value:b}}this.getFilters().add(a)},removeFilter:function(a){var c=this,b=c.getFilters();if(a instanceof Ext.util.Filter){b.remove(a)}else{b.removeByKey(a)}},updateRemoteSort:function(a){var b=this.getSorters();if(a){b.on("endupdate",this.onSorterEndUpdate,this)}else{b.un("endupdate",this.onSorterEndUpdate,this)}},updateRemoteFilter:function(b){var a=this.getFilters();if(b){a.on("endupdate",this.onFilterEndUpdate,this)}else{a.un("endupdate",this.onFilterEndUpdate,this)}},addFilter:function(a){this.getFilters().add(a)},filterBy:function(b,a){this.getFilters().add({filterFn:b,scope:a||this})},clearFilter:function(c){var b=this,a=b.getFilters(false);if(!a||a.getCount()===0){return}b.suppressNextFilter=!!c;a.removeAll();b.suppressNextFilter=false},isFiltered:function(){return this.getFilters().getCount()>0},isSorted:function(){return this.getSorters().getCount()>0||this.isGrouped()},addFieldTransform:function(e){if(e.getTransform()){return}var d=e.getProperty(),c=this.getModel(),a,b;if(c){a=c.getField(d);b=a?a.getSortType():null}if(b&&b!==Ext.identityFn){e.setTransform(b)}},beginUpdate:function(){if(!this.updating++){this.fireEvent("beginupdate")}},endUpdate:function(){if(this.updating&&!--this.updating){this.fireEvent("endupdate");this.onEndUpdate()}},getState:function(){var g=this,h=[],e=g.getFilters(),b=g.getGrouper(),j,d,c,a;g.getSorters().each(function(k){h[h.length]=k.getState();d=true});if(g.statefulFilters&&g.saveStatefulFilters){d=true;j=[];e.each(function(k){j[j.length]=k.getState()})}if(b){d=true}if(d){a={};if(h.length){a.sorters=h}if(j){a.filters=j}if(b){a.grouper=b.getState()}}return a},applyState:function(g){var d=this,h=d.getSorters(),c=d.getFilters(),b=g.sorters,a=g.filters,e=g.grouper;if(b){h.replaceAll(b)}if(a){d.saveStatefulFilters=true;c.replaceAll(a)}if(e){this.setGrouper(e)}},hasPendingLoad:Ext.emptyFn,isLoading:Ext.emptyFn,destroy:function(){var a=this;if(a.isDestroyed){return}a.isDestroyed=true;a.clearListeners();if(a.getStoreId()){Ext.data.StoreManager.unregister(a)}a.onDestroy()},sort:function(c,b,d){var a=this;if(arguments.length===0){if(a.getRemoteSort()){a.attemptLoad()}else{a.forceLocalSort()}}else{a.getSorters().addSort(c,b,d)}},onSorterEndUpdate:function(){var a=this,b=a.getSorters().getRange();if(b.length){if(a.getRemoteSort()){a.attemptLoad({callback:function(){a.fireEvent("sort",a,b)}})}else{a.fireEvent("datachanged",a);a.fireEvent("refresh",a);a.fireEvent("sort",a,b)}}else{a.fireEvent("sort",a,b)}},onFilterEndUpdate:function(){var b=this,a=b.suppressNextFilter;if(b.getAutoFilter()){if(b.getRemoteFilter()){b.currentPage=1;if(!a){b.attemptLoad()}}else{if(!a){b.fireEvent("datachanged",b);b.fireEvent("refresh",b)}}}if(b.trackStateChanges){b.saveStatefulFilters=true}b.fireEvent("filterchange",b,b.getFilters().getRange())},updateGroupField:function(b){var a=this.getData();if(b){a.setGrouper({property:b,direction:this.getGroupDir()})}else{a.setGrouper(null)}},getGrouper:function(){return this.getData().getGrouper()},group:function(a,d,b){var c=this,e=a||c.getSorters().getCount()>0;if(a&&typeof a==="string"){a={property:a,direction:d||c.getGroupDir()}}c.getData().setGrouper(a);if(c.isLoadBlocked()){return}if(e){if(c.getRemoteSort()){c.attemptLoad({callback:function(){c.fireEvent("groupchange",c,c.getGrouper())}})}else{c.fireEvent("datachanged",c);c.fireEvent("refresh",c);c.fireEvent("groupchange",c,c.getGrouper())}}else{c.fireEvent("groupchange",c,c.getGrouper())}},clearGrouping:function(){this.group(null)},getGroupField:function(){var a=this.getGrouper(),b="";if(a){b=a.getProperty()}return b},isGrouped:function(){return !!this.getGrouper()},applyGrouper:function(a){this.group(a);return this.getData().getGrouper()},getGroups:function(){return this.getData().getGroups()},onEndUpdate:Ext.emptyFn,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.LocalStore",Ext.Mixin,{mixinConfig:{id:"localstore"},constructDataCollection:function(){var a=new Ext.util.Collection({rootProperty:"data",extraKeys:{byInternalId:{property:"internalId",rootProperty:""}}}),b;b=a.getSorters();b.setSorterConfigure(this.addFieldTransform,this);return a},createFiltersCollection:function(){return this.getData().getFilters()},createSortersCollection:function(){return this.getData().getSorters()},onCollectionSort:function(){this.onSorterEndUpdate()},onCollectionFilter:function(){this.onFilterEndUpdate()},notifySorterChange:function(){this.getData().onSorterChange()},forceLocalSort:function(){this.getData().onSortChange()},contains:function(a){return this.indexOf(a)>-1},each:function(e,d){var g=this.data.items,a=g.length,b,c;for(c=0;c<a;++c){b=g[c];if(e.call(d||b,b,c,a)===false){break}}},collect:function(b,a,c){var d=this,e=d.getData();if(c===true&&e.filtered){e=e.getSource()}return e.collect(b,"data",a)},getById:function(b){var a=this.getData();if(a.filtered){a=a.getSource()}return a.get(b)||null},getByInternalId:function(a){var b=this.getData();if(b.filtered){b=b.getSource()}return b.byInternalId.get(a)||null},indexOf:function(a){return this.getData().indexOf(a)},indexOfId:function(a){return this.indexOf(this.getById(a))},queryBy:function(b,a){var c=this.getData();return(c.getSource()||c).createFiltered(b,a)},query:function(e,d,g,a,b){var c=this.getData();return(c.getSource()||c).createFiltered(e,d,g,a,b)},first:function(a){return this.getData().first(a)||null},last:function(a){return this.getData().last(a)||null},sum:function(c,a){var b=this.getData();return(a&&this.isGrouped())?b.sumByGroup(c):b.sum(c)},count:function(a){var b=this.getData();return(a&&this.isGrouped())?b.countByGroup():b.count()},min:function(c,a){var b=this.getData();return(a&&this.isGrouped())?b.minByGroup(c):b.min(c)},max:function(c,a){var b=this.getData();return(a&&this.isGrouped())?b.maxByGroup(c):b.max(c)},average:function(c,a){var b=this.getData();return(a&&this.isGrouped())?b.averageByGroup(c):b.average(c)},aggregate:function(h,l,e,j){var g=this,a,d,b,k,c;if(e&&g.isGrouped()){a=g.getGroups().items;d=a.length;b={};for(c=0;c<d;++c){k=a[c];b[k.getGroupKey()]=g.getAggregate(h,l||g,k.items,j)}return b}else{return g.getAggregate(h,l,g.getData().items,j)}},getAggregate:function(g,e,c,h){var b=[],a=c.length,d;for(d=0;d<a;++d){b[d]=c[d].get(h)}return g.call(e||this,c,b)},addObserver:function(a){var b=this.observers;if(!b){this.observers=b=new Ext.util.Collection()}b.add(a)},removeObserver:function(a){var b=this.observers;if(b){b.remove(a)}},callObservers:function(h,d){var j=this.observers,a,c,e,b,g;if(j){c=j.items;if(d){d.unshift(this)}else{d=[this]}for(e=0,a=c.length;e<a;++e){g=c[e];b="onSource"+h;if(g[b]){g[b].apply(g,d)}}}}},0,0,0,0,0,0,[Ext.data,"LocalStore"],0));(Ext.cmd.derive("Ext.data.ChainedStore",Ext.data.AbstractStore,{config:{source:null,remoteFilter:false,remoteSort:false},constructor:function(){Ext.data.AbstractStore.prototype.constructor.apply(this,arguments);this.getData().addObserver(this)},add:function(){var a=this.getSource();return a.add.apply(a,arguments)},remove:function(){var a=this.getSource();return a.remove.apply(a,arguments)},getData:function(){var a=this,b=a.data;if(!b){a.data=b=a.constructDataCollection()}return b},applySource:function(a){if(a){a=Ext.data.StoreManager.lookup(a)}return a},updateSource:function(d,b){var a=this,c;if(b){b.removeObserver(a)}if(d){c=a.getData();c.setSource(d.getData());if(!a.isInitializing){a.fireEvent("refresh",a);a.fireEvent("datachanged",a)}d.addObserver(a)}},getModel:function(){return this.getSource().getModel()},getProxy:function(){return null},onCollectionAdd:function(d,c){var b=this,a=c.items,e=!c.next;if(b.ignoreCollectionAdd){return}b.fireEvent("add",b,a,c.at);if(e){b.fireEvent("datachanged",b)}},onCollectionItemChange:function(d,c){var a=c.item,b=c.modified;if(this.contains(a)){this.fireEvent("update",this,a,"edit",b)}},onCollectionRemove:function(d,c){var b=this,a=c.items,e=!c.next;if(b.ignoreCollectionRemove){return}b.fireEvent("remove",b,a,c.at,false);if(e){b.fireEvent("datachanged",b)}},onSourceBeforeLoad:function(){this.ignoreCollectionAdd=true;this.callObservers("BeforeLoad")},onSourceAfterLoad:function(){var a=this;a.ignoreCollectionAdd=false;a.fireEvent("datachanged",a);a.fireEvent("refresh",a);this.callObservers("AfterLoad")},onSourceBeforeClear:function(){this.ignoreCollectionRemove=true;this.callObservers("BeforeClear")},onSourceAfterClear:function(){this.ignoreCollectionRemove=false;this.callObservers("AfterClear")},onSourceBeforeRemoveAll:function(){this.ignoreCollectionRemove=true;this.callObservers("BeforeRemoveAll")},onSourceAfterRemoveAll:function(c,a){var b=this;b.ignoreCollectionRemove=false;if(!a){b.fireEvent("clear",b);b.fireEvent("datachanged",b)}this.callObservers("AfterRemoveAll",[a])},onSourceFilter:function(){var a=this;a.fireEvent("refresh",a);a.fireEvent("datachanged",a)},hasPendingLoad:function(){return false},isLoading:function(){return false},onDestroy:function(){var a=this,b=a.data;a.observers=null;a.setSource(null);if(b){b.destroy();a.data=null}}},1,0,0,0,["store.chained"],[[Ext.data.LocalStore.prototype.mixinId||Ext.data.LocalStore.$className,Ext.data.LocalStore]],[Ext.data,"ChainedStore"],0));(Ext.cmd.derive("Ext.app.ViewModel",Ext.Base,{isViewModel:true,factoryConfig:{name:"viewModel"},destroyed:false,expressionRe:/^(?:\{[!]?(?:(\d+)|([a-z_][\w\-\.]*))\})$/i,$configStrict:false,config:{data:true,formulas:{$value:null,merge:function(g,c,e,d){var a,b;if(!c){a=g}else{if(!g){a=c}else{a=Ext.apply({},c);for(b in g){if(!d||!a[b]){a[b]=g[b]}}}}return a}},links:null,parent:null,root:true,scheduler:null,schema:"default",session:null,stores:null,view:null},constructor:function(a){this.hadValue={};this.initConfig(a)},destroy:function(){var h=this,e=h._scheduler,a=h.storeInfo,g=h.getParent(),d,b,c;h.destroy=Ext.emptyFn;if(a){for(d in a){b=a[d];c=b.autoDestroy;if(c||(!b.$wasInstance&&c!==false)){b.destroy()}Ext.destroy(b.$binding)}}if(g){g.unregisterChild(h)}h.getRoot().destroy();if(e&&e.$owner===h){e.$owner=null;e.destroy()}h.hadValue=h.children=h.storeInfo=h._session=h._view=h._scheduler=h._root=h._parent=h.formulaFn=h.$formulaData=null},bind:function(d,g,b,a){var c=this,e;b=b||c;if(!a&&d.bindTo!==undefined&&!Ext.isString(d)){a=d;d=a.bindTo}if(!Ext.isString(d)){e=new Ext.app.bind.Multi(d,c,g,b,a)}else{if(c.expressionRe.test(d)){d=d.substring(1,d.length-1);e=c.bindExpression(d,g,b,a)}else{e=new Ext.app.bind.TemplateBinding(d,c,g,b,a)}}return e},getSession:function(){var b=this,c=b._session,a;if(!c&&(a=b.getParent())){b.setSession(c=a.getSession())}return c||null},getStore:function(b){var c=this.storeInfo,a;if(c){a=c[b]}return a||null},linkTo:function(d,a){var e=this,g=e.getStub(d),c,b;if(a.isModel){a={reference:a.entityName,id:a.id}}c=a.reference;if(c){g.set(e.getRecord(c,a.id))}else{if(!g.isLinkStub){b=new Ext.app.bind.LinkStub(e,g.name);g.graft(b);g=b}g.link(a)}},notify:function(){this.getScheduler().notify()},get:function(a){return this.getStub(a).getValue()},set:function(e,b){var a=this,d,c;a.getData();if(b===undefined&&e&&e.constructor===Object){c=a.getRoot();b=e}else{if(e&&e.indexOf(".")<0){d={};d[e]=b;b=d;c=a.getRoot()}else{c=a.getStub(e)}}c.set(b)},privates:{registerChild:function(b){var a=this.children;if(!a){this.children=a={}}a[b.getId()]=b},unregisterChild:function(b){var a=this.children;if(a){delete a[b.getId()]}},getRecord:function(b,e){var c=this.getSession(),d=b,a;if(c){a=c.getRecord(b,e)}else{if(!d.$isClass){d=this.getSchema().getEntity(d)}a=d.createWithId(e);a.load()}return a},notFn:function(a){return !a},bindExpression:function(b,g,h,k){var a=b.charAt(0),d=(a==="!"),j=d?b.substring(1):b,c=this.getStub(j),e;e=c.bind(g,h,k);if(d){e.transform=this.notFn}return e},applyScheduler:function(a){if(a&&!a.isInstance){a=new Ext.util.Scheduler(a);a.$owner=this}return a},getScheduler:function(){var c=this,a=c._scheduler,b,d;if(!a){if(!(b=c.getParent())){a=new Ext.util.Scheduler({preSort:"kind,-depth"});a.$owner=c}else{a=b.getScheduler()}c.setScheduler(a)}return a},getStub:function(b){var a=this.getRoot();return b?a.getChild(b):a},collect:function(){var b=this.children,a;if(b){for(a in b){b[a].collect()}}this.getRoot().collect()},applyData:function(c,e){var d=this,a,b;d.getSession();if(!e){b=d.getParent();d.linkData=a=b?Ext.Object.chain(b.getData()):{};d.data=d._data=Ext.Object.chain(a)}if(c&&c.constructor===Object){d.getRoot().set(c)}},applyParent:function(a){if(a){a.registerChild(this)}return a},applyStores:function(k){var d=this,g=d.getRoot(),j,c,a,b,e,h;d.storeInfo={};d.listenerScopeFn=function(){return d.getView().getInheritedConfig("defaultListenerScope")};for(j in k){c=k[j];if(c.isStore){c.$wasInstance=true;d.setupStore(c,j);continue}else{if(Ext.isString(c)){c={source:c}}else{c=Ext.apply({},c)}}e=c.listeners;delete c.listeners;a=d.bind(c,d.onStoreBind,d);if(a.isStatic()){a.destroy();d.createStore(j,c,e)}else{a.$storeKey=j;a.$listeners=e;b=g.createStubChild(j);b.setStore(a)}}},onStoreBind:function(a,c,h){var g=this.storeInfo,e=h.$storeKey,b=g[e],d;if(!b){this.createStore(e,a,h.$listeners,h)}else{a=Ext.merge({},a);d=a.proxy;delete a.type;delete a.model;delete a.fields;delete a.proxy;delete a.listeners;if(d){delete d.reader;delete d.writer;b.getProxy().setConfig(d)}b.setConfig(a)}},createStore:function(c,a,d,g){var e=this.getSession(),b;a=Ext.apply({},a);if(a.session){a.session=e}if(a.source){a.type=a.type||"chained"}a.listeners=d;b=Ext.Factory.store(a);b.$binding=g;this.setupStore(b,c)},setupStore:function(a,b){a.resolveListenerScope=this.listenerScopeFn;this.storeInfo[b]=a;this.set(b,a)},applyFormulas:function(c){var d=this,a=d.getRoot(),b,e;d.getData();for(b in c){a.createStubChild(b);e=d.getStub(b);e.setFormula(c[b])}return c},applyLinks:function(a){for(var b in a){this.linkTo(b,a[b])}},applySchema:function(a){return Ext.data.schema.Schema.get(a)},applyRoot:function(){var a=new Ext.app.bind.RootStub(this),b=this.getParent();if(b){a.depth=b.getRoot().depth-1000}return a},getFormulaFn:function(c){var b=this,a=b.formulaFn;if(!a){a=b.formulaFn=function(d){return b.$formulaData[d]}}b.$formulaData=c;return a}}},1,0,0,0,["viewmodel.default"],[[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable],[Ext.mixin.Identifiable.prototype.mixinId||Ext.mixin.Identifiable.$className,Ext.mixin.Identifiable]],[Ext.app,"ViewModel"],0));(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,readRoot:false},constructor:function(a){this.initConfig(a)},applyCount:function(a){if(!a&&a!==0){return this.getRecords().length}return a},updateRecords:function(a){this.setCount(a.length)}},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},isReader:true,constructor:function(a){if(a&&a.hasOwnProperty("root")){a=Ext.apply({},a);a.rootProperty=a.root;delete a.root}var b=this;b.duringInit=true;b.mixins.observable.constructor.call(b,a);delete b.duringInit;b.buildExtractors()},applyModel:function(a){return Ext.data.schema.Schema.lookupEntity(a)},applyTransform:function(a){if(a){if(Ext.isFunction(a)){a={fn:a}}return a.fn.bind(a.scope||this)}return a},forceBuildExtractors:function(){if(!this.duringInit){this.buildExtractors(true)}},updateTotalProperty:function(){this.forceBuildExtractors()},updateMessageProperty:function(){this.forceBuildExtractors()},updateSuccessProperty:function(){this.forceBuildExtractors()},read:function(b,d){var c,a;if(b){if(b.responseText){a=this.getResponseData(b);if(a&&a.__$isError){return new Ext.data.ResultSet({total:0,count:0,records:[],success:false,message:a.msg})}else{c=this.readRecords(a,d)}}else{c=this.readRecords(b,d)}}return c||this.nullResultSet},createReadError:function(a){return{__$isError:true,msg:a}},readRecords:function(e,c){var g=this,l,d,b,j,h,k,m,a;a=this.getTransform();if(a){e=a(e)}g.buildExtractors();g.rawData=e;e=g.getData(e);l=true;d=0;b=[];if(g.getSuccessProperty()){k=g.getSuccess(e);if(k===false||k==="false"){l=false}}if(g.getMessageProperty()){m=g.getMessage(e)}if(g.getReadRecordsOnFailure()||l){j=Ext.isArray(e)?e:g.getRoot(e);if(j){h=j.length}if(g.getTotalProperty()){k=parseInt(g.getTotal(e),10);if(!isNaN(k)){h=k}}if(j){b=g.extractData(j,c);d=b.length}}return new Ext.data.ResultSet({total:h||d,count:d,records:b,success:l,message:m,readRoot:!!j})},extractData:function(p,g){var n=this,h=g&&g.model?Ext.data.schema.Schema.lookupEntity(g.model):n.getModel(),d=h.schema,q=d.hasAssociations(h)&&n.getImplicitIncludes(),o=n.getFieldExtractorInfo(h.fieldExtractors),a=p.length,c=new Array(a),l=n.getTypeProperty(),m,b,e,k,j;if(!a&&Ext.isObject(p)){p=[p];a=1}for(j=0;j<a;j++){k=p[j];if(!k.isModel){b=k;if(l&&(e=n.getChildType(d,b,l))){m=e.getProxy().getReader();k=m.extractRecord(b,g,e,d.hasAssociations(e)&&m.getImplicitIncludes(),m.getFieldExtractorInfo(e.fieldExtractors))}else{k=n.extractRecord(b,g,h,q,o)}}if(k.onLoad){k.onLoad()}c[j]=k}return c},getChildType:function(b,c,d){var a;switch(typeof d){case"string":return b.getEntity(c[d]);case"object":a=d.namespace;return b.getEntity((a?a+".":"")+c[d.name]);case"function":return b.getEntity(d(c))}},extractRecordData:function(c,d){var b=d&&d.model?Ext.data.schema.Schema.lookupEntity(d.model):this.getModel(),a=this.getFieldExtractorInfo(b.fieldExtractors);return this.extractRecord(c,d,b,false,a)},extractRecord:function(a,b,c,k,h){var g=this,e=(b&&b.recordCreator)||g.defaultRecordCreator,j,d;j=g.extractModelData(a,h);d=e.call(g,j,c||g.getModel(),b);if(k&&d.isModel){g.readAssociated(d,a,b)}return d},getFieldExtractorInfo:function(c){var a=this.$className,b=c[a];if(b===undefined){c[a]=b=this.buildFieldExtractors()}return b},buildFieldExtractors:function(){var h=this.getFields(),j=h.length,e=[],l=[],d=null,b=0,k,a,g,c;for(g=0;g<j;++g){k=h[g];c=this.createFieldAccessor(k);if(c){a=k.name;e.push("data['"+a+"'] = extractors["+b+"](raw);");l.push(c);++b}}if(e.length){d={extractors:l,fn:new Function("raw","data","extractors",e.join(""))}}return d},defaultRecordCreator:function(b,c){var a=new c(b);a.phantom=false;return a},getModelData:function(a){return{}},extractModelData:function(b,a){var d=this.getModelData(b),c;if(a){c=a.fn;c(b,d,a.extractors)}return d},readAssociated:function(a,e,d){var c=a.associations,b,g;for(b in c){if(c.hasOwnProperty(b)){g=c[b];if(g.cls){g.read(a,e,this,d)}}}},getFields:function(){return this.getModel().fields},getData:Ext.identityFn,getRoot:Ext.identityFn,getResponseData:function(a){},onMetaChange:function(h){var g=this,b=h.fields||g.getFields(),c,e,a,d;g.metaData=h;if(h.root){g.setRootProperty(h.root)}if(h.totalProperty){g.setTotalProperty(h.totalProperty)}if(h.successProperty){g.setSuccessProperty(h.successProperty)}if(h.messageProperty){g.setMessageProperty(h.messageProperty)}a=h.clientIdProperty;e=Ext.define(null,{extend:"Ext.data.Model",fields:b,clientIdProperty:a});g.setModel(e);d=g.getProxy();if(d){d.setModel(e)}g.buildExtractors(true)},buildExtractors:function(d){var b=this,c=b.getTotalProperty(),a=b.getSuccessProperty(),e=b.getMessageProperty();if(d||!b.hasExtractors){if(c){b.getTotal=b.createAccessor(c)}if(a){b.getSuccess=b.createAccessor(a)}if(e){b.getMessage=b.createAccessor(e)}b.hasExtractors=true;return true}},createAccessor:Ext.emptyFn,createFieldAccessor:Ext.emptyFn,destroy:function(){var a=this;delete a.model;delete a.getTotal;delete a.getSuccess;delete a.getMessage}},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(){var a=this.prototype;Ext.apply(a,{nullResultSet:new Ext.data.ResultSet({total:0,count:0,records:[],success:true,message:""})})}));(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(a){this.initConfig(a)},applyTransform:function(a){if(a){if(Ext.isFunction(a)){a={fn:a}}return a.fn.bind(a.scope||this)}return a},write:function(e){var c=e.getOperation(),b=c.getRecords()||[],a=b.length,g=[],d;for(d=0;d<a;d++){g.push(this.getRecordData(b[d],c))}return this.writeRecords(e,g)},writeRecords:Ext.emptyFn,getRecordData:function(k,h){var n=this,e=n.getNameProperty(),a=e!=="name",c=k.self.idField,r=c.name,q=k.id,d=n.getWriteAllFields(),m;if(c.serialize){q=c.serialize(q)}if(!d&&h&&h.isDestroyOperation){m={};m[e?c[e]:r]=q}else{var b=n.getDateFormat(),g=k.phantom,s=(g||d)?n.getAllDataOptions():n.getPartialDataOptions(),p=g&&n.getClientIdProperty(),l=k.getFieldsMap(),j,o;s.serialize=false;j=k.getData(s);m=a?{}:j;if(p){m[p]=q;delete j[r]}else{if(!n.getWriteRecordId()){delete j[r]}}for(r in j){q=j[r];if(!(o=l[r])){if(a){m[r]=q}}else{if(o.isDateField&&b&&Ext.isDate(q)){q=Ext.Date.format(q,b)}else{if(o.serialize){q=o.serialize(q,k)}}if(a){r=o[e]||r}m[r]=q}}}return m}},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(a){this.mixins.observable.constructor.call(this,a)},applyModel:function(a){return Ext.data.schema.Schema.lookupEntity(a)},updateModel:function(b){if(b){var a=this.getReader();if(a&&!a.getModel()){a.setModel(b)}}},applyReader:function(a){return Ext.Factory.reader(a)},updateReader:function(a){if(a){var c=this,b=c.getModel();if(!b){b=a.getModel();if(b){c.setModel(b)}}else{a.setModel(b)}if(a.onMetaChange){a.onMetaChange=Ext.Function.createSequence(a.onMetaChange,c.onMetaChange,c)}}},applyWriter:function(a){return Ext.Factory.writer(a)},abort:Ext.emptyFn,onMetaChange:function(a){this.fireEvent("metachange",this,a)},create:Ext.emptyFn,read:Ext.emptyFn,update:Ext.emptyFn,erase:Ext.emptyFn,batch:function(p,m){var l=this,k=l.getBatchActions(),h,c,g,d,e,n,b,o,j;if(p.operations===undefined){p={operations:p,listeners:m}}if(p.batch){if(Ext.isDefined(p.batch.runOperation)){h=Ext.applyIf(p.batch,{proxy:l,listeners:{}})}}else{p.batch={proxy:l,listeners:p.listeners||{}}}if(!h){h=new Ext.data.Batch(p.batch)}h.on("complete",Ext.bind(l.onBatchComplete,l,[p],0));g=l.getBatchOrder().split(",");d=g.length;for(n=0;n<d;n++){e=g[n];c=p.operations[e];if(c){if(k){h.add(l.createOperation(e,{records:c,params:p.params}))}else{o=c.length;for(b=0;b<o;b++){j=c[b];h.add(l.createOperation(e,{records:[j],params:p.params}))}}}}h.start();return h},onBatchComplete:function(a,b){var c=a.scope||this;if(b.hasException()){if(Ext.isFunction(a.failure)){Ext.callback(a.failure,c,[b,a])}}else{if(Ext.isFunction(a.success)){Ext.callback(a.success,c,[b,a])}}if(Ext.isFunction(a.callback)){Ext.callback(a.callback,c,[b,a])}},createOperation:function(c,b){var a=Ext.createByAlias("data.operation."+c,b);a.setProxy(this);return a},clone:function(){return new this.self(this.getInitialConfig())}},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:null},finishOperation:function(b){var c=0,d=b.getRecords(),a=d.length;for(c;c<a;c++){d[c].commit()}b.setSuccessful(true)},create:function(a){this.finishOperation(a)},update:function(a){this.finishOperation(a)},erase:function(a){this.finishOperation(a)},read:function(g){var j=this,k=j.getReader().read(j.getData()),d=k.getRecords(),h=g.getSorters(),a=g.getGrouper(),c=g.getFilters(),b=g.getStart(),e=g.getLimit();if(g.process(k,null,null,false)!==false){if(c&&c.length){k.setRecords(d=Ext.Array.filter(d,Ext.util.Filter.createFilterFn(c)));k.setTotal(d.length)}if(a){h=h?h.concat(a):h}if(h&&h.length){k.setRecords(d=Ext.Array.sort(d,Ext.util.Sortable.createComparator(h)))}if(j.getEnablePaging()&&b!==undefined&&e!==undefined){if(b>=k.getTotal()){k.setConfig({success:false,records:[],total:0})}else{k.setRecords(Ext.Array.slice(d,b,b+e))}}g.setCompleted()}},clear:Ext.emptyFn},0,0,0,0,["proxy.memory"],0,[Ext.data.proxy,"Memory",Ext.data,"MemoryProxy"],0));(Ext.cmd.derive("Ext.data.operation.Operation",Ext.Base,{alternateClassName:"Ext.data.Operation",isOperation:true,config:{synchronous:false,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,constructor:function(a){var b=a&&a.scope;this.initConfig(a);if(a){a.scope=b}if(b){this.setScope(b);this.initialConfig.scope=b}},getAction:function(){return this.action},execute:function(){var a=this;delete a.error;delete a.success;a.complete=a.exception=false;a.setStarted();return a.request=a.doExecute()},doExecute:Ext.emptyFn,abort:function(){var b=this,a=b.request;if(b.running&&a){b.getProxy().abort(a);b.request=null}},process:function(b,d,a,e){var c=this;e=e!==false;c.setResponse(a);c.setResultSet(b);if(b.getSuccess()){c.doProcess(b,d,a);c.setSuccessful(e)}else{if(e){c.setException(b.getMessage())}}},_commitSetOptions:{convert:true,commit:true},doProcess:function(n,g,e){var l=this,d=l._commitSetOptions,a=l.getRecords(),c=a.length,o=a[0].clientIdProperty,p=n.getRecords(),k=p?p.length:0,m,j,b,h;if(k&&o){m=Ext.Array.toValueMap(a,"id");for(h=0;h<k;++h){j=p[h];b=m[j[o]];if(b){delete m[b.id];delete j[o];b.set(j,d)}}for(h in m){m[h].commit()}}else{for(h=0;h<c;++h){b=a[h];if(k===0||!(j=p[h])){b.commit()}else{b.set(j,d)}}}},setStarted:function(){this.started=this.running=true},setCompleted:function(){this.complete=true;this.running=false;this.triggerCallbacks()},setSuccessful:function(a){this.success=true;if(a){this.setCompleted()}},setException:function(a){var b=this;b.exception=true;b.success=b.running=false;b.error=a;b.setCompleted()},triggerCallbacks:function(){var a=this,b=a.getInternalCallback();if(b){b.call(a.getInternalScope()||a,a);a.setInternalCallback(null);a.setInternalScope(null)}if(b=a.getCallback()){b.call(a.getScope()||a,a.getRecords(),a,a.wasSuccessful());a.setCallback(null);a.setScope(null)}},hasException:function(){return this.exception},getError:function(){return this.error},getRecords:function(){var a;return this._records||((a=this.getResultSet())?a.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 c=this.getRecords(),a=c.length,b;for(b=0;b<a;++b){c[b].setErased()}},doExecute:function(){return this.getProxy().erase(this)},getRecordData:function(a,c){var e={},d=a.idField,b=this.getNameProperty()||"name";e[d[b]]=a.id;return e}},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.ProxyStore",Ext.data.AbstractStore,{config:{model:undefined,fields:null,proxy:undefined,autoLoad:undefined,autoSync:false,batchUpdateMode:"operation",sortOnLoad:true,trackRemoved:true,session:undefined},onClassExtended:function(b,d,a){var c=d.model,e;if(typeof c==="string"){e=a.onBeforeCreated;a.onBeforeCreated=function(){var h=this,g=arguments;Ext.require(c,function(){e.apply(h,g)})}}},implicitModel:false,blockLoadCounter:0,autoSyncSuspended:0,constructor:function(a){var b=this;b.removed=[];b.blockLoad();Ext.data.AbstractStore.prototype.constructor.apply(this,arguments);b.unblockLoad()},updateAutoLoad:function(b){var c=this,a;c.getData();if(b){a=c.loadTask||(c.loadTask=new Ext.util.DelayedTask());a.delay(1,c.attemptLoad,c,Ext.isObject(b)?[b]:undefined)}},getTotalCount:function(){return this.totalCount||0},applyFields:function(a){var d=this,b,c;if(a){d.implicitModel=true;d.setModel(b=Ext.define(null,{extend:"Ext.data.Model",fields:a,proxy:(c=d.getProxy())}));if(c&&!c.getModel()){c.setModel(b)}}},applyModel:function(a){if(a){a=Ext.data.schema.Schema.lookupEntity(a)}else{this.getFields();return this.getModel()}return a},applyProxy:function(b){var c=this,a=c.getModel();if(b){if(b.isProxy){b.setModel(a)}else{if(Ext.isString(b)){b={type:b,model:a}}else{if(!b.model){b=Ext.apply({model:a},b)}}b=Ext.createByAlias("proxy."+b.type,b)}}else{if(a){b=a.getProxy()}}if(!b){b=Ext.createByAlias("proxy.memory")}if(!c.disableMetaChangeEvent){b.on("metachange",c.onMetaChange,c)}return b},updateTrackRemoved:function(a){this.removed=a?[]:null},onMetaChange:function(a,b){this.fireEvent("metachange",this,b)},create:function(g,c){var e=this,a=new e.model(g),d=e.getProxy(),b;c=Ext.apply({},c);if(!c.records){c.records=[a]}c.internalScope=e;c.internalCallback=e.onProxyWrite;b=d.createOperation("create",c);return b.execute()},read:function(){return this.load.apply(this,arguments)},update:function(b){var d=this,c=d.getProxy(),a;b=Ext.apply({},b);if(!b.records){b.records=d.getUpdatedRecords()}b.internalScope=d;b.internalCallback=d.onProxyWrite;a=c.createOperation("update",b);return a.execute()},onProxyWrite:function(b){var c=this,d=b.wasSuccessful(),a=b.getRecords();switch(b.getAction()){case"create":c.onCreateRecords(a,b,d);break;case"update":c.onUpdateRecords(a,b,d);break;case"destroy":c.onDestroyRecords(a,b,d);break}if(d){c.fireEvent("write",c,b);c.fireEvent("datachanged",c);c.fireEvent("refresh",c)}},onCreateRecords:Ext.emptyFn,onUpdateRecords:Ext.emptyFn,onDestroyRecords:function(b,a,c){if(c){this.removed.length=0}},erase:function(b){var d=this,c=d.getProxy(),a;b=Ext.apply({},b);if(!b.records){b.records=d.getRemovedRecords()}b.internalScope=d;b.internalCallback=d.onProxyWrite;a=c.createOperation("destroy",b);return a.execute()},onBatchOperationComplete:function(b,a){return this.onProxyWrite(a)},onBatchComplete:function(c,a){var g=this,b=c.operations,e=b.length,d;if(g.batchUpdateMode!="operation"){g.suspendEvents();for(d=0;d<e;d++){g.onProxyWrite(b[d])}g.resumeEvents()}g.isSyncing=false;g.fireEvent("datachanged",g);g.fireEvent("refresh",g)},onBatchException:function(b,a){},filterNew:function(a){return a.phantom===true&&a.isValid()},getNewRecords:function(){return[]},getUpdatedRecords:function(){return[]},getModifiedRecords:function(){return[].concat(this.getNewRecords(),this.getUpdatedRecords())},filterUpdated:function(a){return a.dirty===true&&a.phantom!==true&&a.isValid()},getRemovedRecords:function(){return this.removed},sync:function(c){var e=this,b={},g=e.getNewRecords(),d=e.getUpdatedRecords(),a=e.getRemovedRecords(),h=false;e.needsSync=false;if(g.length>0){b.create=g;h=true}if(d.length>0){b.update=d;h=true}if(a.length>0){b.destroy=a;h=true}if(h&&e.fireEvent("beforesync",b)!==false){e.isSyncing=true;c=c||{};e.proxy.batch(Ext.apply(c,{operations:b,listeners:e.getBatchListeners()}))}return e},getBatchListeners:function(){var b=this,a={scope:b,exception:b.onBatchException,complete:b.onBatchComplete};if(b.batchUpdateMode=="operation"){a.operationcomplete=b.onBatchOperationComplete}return a},save:function(){return this.sync.apply(this,arguments)},blockLoad:function(a){if(a!==undefined){this.blockLoadCounter=a}else{++this.blockLoadCounter}},unblockLoad:function(b){var c=this,a=c.blockLoadCounter;if(b){c.blockLoadCounter=0}else{if(a){--c.blockLoadCounter}}return a},isLoadBlocked:function(){return !!this.blockLoadCounter},attemptLoad:function(a){if(!this.isLoadBlocked()){this.load(a)}},load:function(b){if(this.isLoadBlocked()){return}var g=this,c=g.getProxy(),e=g.loadTask,a={internalScope:g,internalCallback:g.onProxyLoad},d,j,h;if(g.getRemoteFilter()){d=g.getFilters();if(d.getCount()){a.filters=d.getRange()}}if(g.getRemoteSort()){j=g.getSorters();if(j.getCount()){a.sorters=j.getRange()}}Ext.apply(a,b);a.scope=a.scope||g;if(!a.recordCreator){h=g.getSession();if(h){a.recordCreator=h.recordCreator}}g.lastOptions=a;a=c.createOperation("read",a);if(g.fireEvent("beforeload",g,a)!==false){g.loading=true;if(e){e.cancel();g.loadTask=null}a.execute()}return g},reload:function(a){var b=Ext.apply({},a,this.lastOptions);return this.load(b)},onEndUpdate:function(){var a=this;if(a.needsSync&&a.autoSync&&!a.autoSyncSuspended){a.sync()}},afterReject:function(a){var b=this;if(b.contains(a)){b.onUpdate(a,Ext.data.Model.REJECT,null);b.fireEvent("update",b,a,Ext.data.Model.REJECT,null)}},afterCommit:function(a,c){var b=this;if(!c){c=null}if(b.contains(a)){b.onUpdate(a,Ext.data.Model.COMMIT,c);b.fireEvent("update",b,a,Ext.data.Model.COMMIT,c)}},afterErase:function(a){this.onErase(a)},onErase:Ext.emptyFn,onUpdate:Ext.emptyFn,onDestroy:function(){var a=this;a.blockLoad();a.clearData();a.setProxy(null);a.setModel(null);a.setSession(null)},hasPendingLoad:function(){return !!this.loadTask||this.isLoading()},isLoading:function(){return !!this.loading},isLoaded:function(){return this.loadCount>0},suspendAutoSync:function(){++this.autoSyncSuspended},resumeAutoSync:function(b){var a=this;if(a.autoSyncSuspended&&!--a.autoSyncSuspended){if(b){a.sync()}}},removeAll:Ext.emptyFn,clearData:Ext.emptyFn},1,0,0,0,0,0,[Ext.data,"ProxyStore"],0));(Ext.cmd.derive("Ext.data.Error",Ext.Base,{isError:true,$configPrefixed:false,config:{field:null,message:""},constructor:function(a){this.initConfig(a);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(k){var n=this,l=k.fields,d=k.validators,h=k.data,p,o,r,g,e,q,m,c,b,a;for(g=0,m=l.length;g<m;++g){o=l[g];a=o.name;b=h[a];if(o.validate&&!o.validate.$nullFn){p=n.length;c=o.validate(b,null,n);if(p===n.length&&c!==true){n.add(a,c)}}if(d){r=d[a];if(r){for(e=0,q=r.length;e<q;++e){c=r[e].validate(b,k);if(c!==true){n.add(a,c)}}}}}return n},add:function(b,d){var c=this,a=Ext.data.field.Field.defaultInvalidMessage,g=b,e;if(Ext.isString(b)){g=new Ext.data.Error({field:b,message:d||a})}else{if(!(g.isError)){g=new Ext.data.Error({field:g.field||g.name,message:g.error||g.message||g.msg||a})}b=g.field}e=c.get(b);if(e){if(Ext.isArray(e)){e.push(g);return e}c.removeAtKey(b);g=[e,g];g.field=b;g=[g]}return Ext.util.AbstractMixedCollection.prototype.add.apply(this,[g])},getKey:function(a){return a.field},isValid:function(){return this.length===0},getByField:function(b){var a=this.get(b);if(a&&!Ext.isArray(a)){a=[a]}return a||[]}},0,0,0,0,0,0,[Ext.data,"ErrorCollection",Ext.data,"Errors"],0));(Ext.cmd.derive("Ext.data.SortTypes",Ext.Base,{singleton:true,none:Ext.identityFn,stripTagsRE:/<\/?[^>]+>/gi,asText:function(a){return String(a).replace(this.stripTagsRE,"")},asUCText:function(a){return String(a).toUpperCase().replace(this.stripTagsRE,"")},asUCString:function(a){return String(a).toUpperCase()},asDate:function(a){if(!a){return 0}if(Ext.isDate(a)){return a.getTime()}return Date.parse(String(a))},asFloat:function(a){var b=parseFloat(String(a).replace(/,/g,""));return isNaN(b)?0:b},asInt:function(a){var b=parseInt(String(a).replace(/,/g,""),10);return isNaN(b)?0:b}},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(b,a){var c=this.all;c[b.toUpperCase()]=c[b.toLowerCase()]=c[b]=a.prototype}},onClassExtended:function(a,b){if(b.type){Ext.data.validator.Validator.register(b.type,a)}},constructor:function(a){if(typeof a==="function"){this.fnOnly=true;this.validate=a}else{this.initConfig(a)}},validate:function(){return true},clone:function(){var a=this;if(a.fnOnly){return new Ext.data.validator.Validator(a.validate)}return new a.self(a.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,sortDir:"ASC",unique:false,rank:null,stripRe:/[\$,%]/g,calculated:false,evil:false,identifier:false,onClassExtended:function(k,e){var g=this,j=g.prototype,h=j.aliasPrefix.length,b=e.validators,a=e.alias,d=e.sortType,c;if(a){if(Ext.isString(a)){g.register(a.substring(h),k)}else{for(c=a.length;c--;){g.register(a[c].substring(h),k)}}}if(d&&Ext.isString(d)){k.prototype.sortType=Ext.data.SortTypes[d]}if(b){delete e.validators;e.validate=g.compileValidators(b)}},statics:{all:{},compileValidators:function(a){if(!(a instanceof Array)){a=[a]}var c=a.length,b;for(b=0;b<c;++b){a[b]=Ext.Factory.dataValidator(a[b])}return function(j,k,l){var h=this,e="",d,g;for(b=-1;b<c;++b){if(b<0){d=h.callParent([j,k,l])}else{g=a[b];d=g.validate(j)}if(d!==true){d=d||h.defaultInvalidMessage;if(l){l.add(h.name,d);e=e||d}else{if(k){if(e){e+=k}e+=d}else{e=d;break}}}}return d||true}},register:function(b,a){var c=this.all;c[b.toUpperCase()]=c[b]=a.prototype}},argumentNamesRe:/^function\s+\(\s*([^,\)\s]+)/,calculateRe:/[^\.a-z0-9_]([a-z_][a-z_0-9]*)\.([a-z_][a-z_0-9]*)/gi,constructor:function(d){var l=this,n=l.calculateRe,g,o,m,h,c,a,j,b,k,e;if(d){if(Ext.isString(d)){l.name=d}else{Ext.apply(l,d)}}if(!l.allowNull){l.allowNull=!!l.reference}g=l.calculate;c=l.depends;if(g){l.convert=l.doCalculate;if(!c){if(!(c=g.$depends)){a={};k=g.toString();g.$depends=c=[];j=l.argumentNamesRe.exec(k);b=j?j[1]:"data";while((j=n.exec(k))){if(b===j[1]&&!a[e=j[2]]){a[e]=1;c.push(e)}}}l.depends=c}}m=l.defaultValue;if(l.convert){if(m!==undefined){l.defaultValue=m=l.convert(m)}l.calculated=o=l.convert.length>1;l.evil=o&&!c}if(l.persist===null){l.persist=!o}h=l.sortType;if(!l.sortType){l.sortType=Ext.data.SortTypes.none}else{if(Ext.isString(h)){l.sortType=Ext.data.SortTypes[h]}}if(l.validators){Ext.override(l,{validate:Ext.data.field.Field.compileValidators(l.validators)})}if(c&&typeof c==="string"){l.depends=[c]}l.cloneDefaultValue=m!==undefined&&(Ext.isDate(m)||Ext.isArray(m)||Ext.isObject(m))},collate:function(c,b){var d=this,a=c,e=b;if(d.sortType){a=d.sortType(a);e=d.sortType(e)}return(a<e)?-1:((a>e)?1:0)},compare:function(a,b){return(a===b)?0:((a<b)?-1:1)},isEqual:function(a,b){return !this.compare(a,b)},convert:null,serialize:null,validate:Ext.returnTrue,doCalculate:function(a,b){return b?this.calculate(b.data):a},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 a=this.mapping;return !!(a||a===0)},getPersist:function(){return this.persist},getSortDir:function(){return this.sortDir},getSortType:function(){return this.sortType},getType:function(){return"auto"}},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"],function(){this.register(this.prototype.type,this)}));(Ext.cmd.derive("Ext.data.field.Boolean",Ext.data.field.Field,{isBooleanField:true,trueRe:/^\s*(?:true|yes|on|1)\s*$/i,convert:function(a){if(typeof a==="boolean"){return a}if(this.allowNull&&(a===undefined||a===null||a==="")){return null}return this.trueRe.test(String(a))},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(b,e){var d=b instanceof Date,c=e instanceof Date,a;if(c&&d){a=b.getTime()-e.getTime();if(a===0){a=0}else{a=a<0?-1:1}}else{if(d===c){a=0}else{a=d?1:-1}}return a},convert:function(c){if(!c){return null}if(c instanceof Date){return c}var a=this.dateReadFormat||this.dateFormat,b;if(a){return Ext.Date.parse(c,a)}b=Date.parse(c);return b?new Date(b):null},serialize:function(b){var a=null,c;if(Ext.isDate(b)){c=this.getDateWriteFormat();a=c?Ext.Date.format(b,c):b}return a},getDateFormat:function(){return this.dateFormat},getDateReadFormat:function(){return this.dateReadFormat},getDateWriteFormat:function(){var a=this;if(a.hasOwnProperty("dateWriteFormat")){return a.dateWriteFormat}if(a.hasOwnProperty("dateFormat")){return a.dateFormat}return a.dateWriteFormat||a.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,convert:function(b){if(typeof b=="number"){return parseInt(b)}var d=b===undefined||b===null||b==="",a=this.allowNull,c;if(d){c=a?null:0}else{c=parseInt(String(b).replace(this.stripRe,""),10);if(a&&isNaN(c)){c=null}}return c},getType:function(){return"int"}},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.Field,{isNumeric:true,isNumberField:true,convert:function(b){if(typeof b==="number"){return b}var d=b===undefined||b===null||b==="",a=this.allowNull,c;if(d){c=a?null:0}else{c=parseFloat(String(b).replace(this.stripRe,""));if(a&&isNaN(c)){c=null}}return c},getType:function(){return"float"}},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(b){var a=this.allowNull?null:"";return(b===undefined||b===null)?a:String(b)},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(b){var c=this,a,d;c.initConfig(b);d=c.getId();if(d){a=(b&&b.cache)||Ext.data.identifier.Generator.all;a[d]=c}},privates:{clone:function(b){var a=this.getInitialConfig();a=b?Ext.apply({},b,a):a;return new this.self(a)},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 c=this,a=Ext.Factory,b=a.dataIdentifier;a.dataIdentifier=function(d){var g=Ext.isString(d)?d:(d&&d.id),e=g&&((d&&d.cache)||c.all)[g];return e||b(d)}}));(Ext.cmd.derive("Ext.data.identifier.Sequential",Ext.data.identifier.Generator,{config:{increment:1,prefix:null,seed:1},generate:function(){var b=this,a=b._seed,c=b._prefix;b._seed+=b._increment;return(c!==null)?c+a:a}},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,observableType:"record",constructor:function(e,m){var n=this,q=n.self,l=q.identifier,c=Ext.data.Model,o=c.identifier,p=n.idField.name,k,a,b,j,h,d,g;n.data=e||(e={});n.session=m||null;n.internalId=j=o.generate();if((k=e) instanceof Array){n.data=e={};g=n.getFields();h=Math.min(g.length,k.length);for(d=0;d<h;++d){e[g[d].name]=k[d]}}if(!(b=q.initializeFn)){q.initializeFn=b=c.makeInitializeFn(q)}if(!b.$nullFn){q.initializeFn(n)}if(!(n.id=a=e[p])&&a!==0){if(m){l=m.getIdentifier(q);a=l.generate()}else{if(o===l){a=j}else{a=l.generate()}}e[p]=n.id=a;n.phantom=true}if(m){m.add(n)}if(n.init&&Ext.isFunction(n.init)){n.init()}},editing:false,dirty:false,session:null,dropped:false,erased:false,clientIdProperty:null,evented:false,phantom:false,idProperty:"id",identifier:null,previousValues:undefined,proxy:undefined,schema:"default",versionProperty:null,generation:1,validationSeparator:null,convertOnSet:true,beginEdit:function(){var c=this,b=c.modified,a=c.previousValues;if(!c.editing){c.editing=true;c.editMemento={dirty:c.dirty,data:Ext.apply({},c.data),generation:c.generation,modified:b&&Ext.apply({},b),previousValues:a&&Ext.apply({},a)}}},cancelEdit:function(){var b=this,a=b.editMemento;if(a){b.editing=false;Ext.apply(b,a);b.editMemento=null}},endEdit:function(b,d){var c=this,a=c.editMemento;if(a){c.editing=false;c.editMemento=null;c.previousValues=a.previousValues;if(!b){if(!d){d=c.getModifiedFieldNames(a.data)}if(c.dirty||(d&&d.length)){c.callJoined("afterEdit",[d])}}}},getField:function(a){return this.self.getField(a)},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(a){this.set(this.idProperty,a)},getPrevious:function(b){var a=this.previousValues;return a&&a[b]},isModified:function(b){var a=this.modified;return !!(a&&a.hasOwnProperty(b))},getModified:function(b){var a;if(this.isModified(b)){a=this.modified[b]}return a},get:function(a){return this.data[a]},_singleProp:{},_rejectOptions:{convert:false,commit:true,silent:true},set:function(g,v,h){var H=this,d=H.self,I=H.data,o=H.modified,w=H.previousValues,a=H.session,G=Ext.isString(g),b=(G?h:v),r=b?b.convert!==false:H.convertOnSet,k=H.fieldsMap,E=b&&b.silent,s=b&&b.commit,q=!(b&&b.refs===false)&&a,p=!(b&&b.dirty===false&&!s),B=null,t,c,D,K,J,y,j,n,x,C,z=0,F,u,m,l,A,e;if(G){e=H._singleProp;e[g]=v}else{e=g}if(!(m=d.rankedFields)){m=d.rankFields()}F=m.length;do{for(J in e){A=e[J];t=I[J];j=H;c=k[J];if(c){if(r&&c.convert){A=c.convert(A,H)}j=c;l=c.reference}else{l=null}if(j.isEqual(t,A)){continue}I[J]=A;(B||(B=[])).push(J);(w||(H.previousValues=w={}))[J]=t;if(l&&l.cls){if(q){a.updateReference(H,c,A,t)}l.onValueChange(H,a,A,t)}C=(x=c&&c.dependents)&&x.length;while(C-->0){(n=x[C]).dirty=true;z=z?Math.min(z,n.rank):n.rank}if(!c||c.persist){if(o&&o.hasOwnProperty(J)){if(!p||j.isEqual(o[J],A)){delete o[J];H.dirty=-1}}else{if(p){if(!o){H.modified=o={}}H.dirty=true;o[J]=t}}}if(J===H.idField.name){D=true;y=t;u=A}}if(!z){break}c=m[z-1];c.dirty=false;if(G){delete e[g]}else{e=H._singleProp;G=true}g=c.name;e[g]=I[g];r=true;for(;z<F;++z){if(m[z].dirty){break}}if(z<F){++z}else{z=0}}while(1);if(H.dirty<0){H.dirty=false;for(K in o){if(o.hasOwnProperty(K)){H.dirty=true;break}}}if(G){delete e[g]}++H.generation;if(D){H.id=u;H.callJoined("onIdChanged",[y,u])}if(s){H.commit(E,B)}else{if(!E&&!H.editing&&B){H.callJoined("afterEdit",[B])}}return B},reject:function(a){var c=this,b=c.modified;if(b){c.set(b,c._rejectOptions)}c.clearState();if(!a){c.callJoined("afterReject")}},commit:function(b,d){var c=this,a;c.clearState();c.phantom=false;if(c.dropped){c.erased=a=true}if(!b){if(a){c.callJoined("afterErase")}else{c.callJoined("afterCommit",[d])}}},clearState:function(){var a=this;a.dirty=a.editing=false;a.editMemento=a.modified=null},drop:function(a){this.dropped=true;this.callJoined("afterDrop")},join:function(b){var a=this,c=a.joined;if(!c){c=a.joined=[b]}else{if(!c.length){c[0]=b}else{Ext.Array.include(c,b)}}if(b.isStore){a.store=a.store||b}},unjoin:function(e){var d=this,g=d.joined,a=g.length,b=d.store,c;if(g.length===1&&g[0]===e){g.length=0}else{if(a){Ext.Array.remove(g,e)}}if(b===e){b=null;for(c=0,a=g.length;c<a;++c){e=g[c];if(e.isStore){b=e;break}}d.store=b}},clone:function(d){var c=this,b=c.modified,a=c.copy(c.id,d);if(b){a.modified=Ext.apply({},b)}a.dirty=c.dirty;a.dropped=c.dropped;a.phantom=c.phantom;return a},copy:function(c,g){var d=this,e=Ext.apply({},d.data),b=d.idProperty,a=d.self;if(c||c===0){e[b]=c}else{if(c===null){delete e[b]}}return new a(e,g)},getProxy:function(){return this.self.getProxy()},getValidation:function(b){var c=this,a=c.validation;if(!a){c.validation=a=new Ext.data.Validation();a.attach(c)}if(b===true||(b!==false&&a.syncGeneration!==c.generation)){a.refresh(b)}return a},validate:function(){return new Ext.data.ErrorCollection().init(this)},isValid:function(){var a=this.getValidation();return !a.dirty},erase:function(a){this.drop();return this.save(a)},setErased:function(){this.erased=true;this.callJoined("afterErase")},getChanges:function(){return this.getData(this._getChangesOptions)},getCriticalFields:function(){var a=this.self,b=a.criticalFields;if(!b){a.rankFields();b=a.criticalFields}return b},getAssociatedData:function(m){var k=this,b=k.associations,g,l,j,c,a,h,e,d;m=m||{};k.$gathering=1;for(d in b){e=b[d];l=e.getAssociatedItem(k);if(!l||l.$gathering){continue}if(l.isStore){l.$gathering=1;j=l.getData().items;a=j.length;c=[];for(g=0;g<a;++g){h=j[g];h.$gathering=1;c.push(h.getData(!h.$gathering));delete h.$gathering}delete l.$gathering}else{c=l.getData(true)}m[d]=c}delete k.$gathering;return m},getData:function(t){var l=this,k={},a=(t===true)?l._getAssociatedOptions:(t||k),e=l.data,m=a.associated,q=a.changes,p=q&&a.critical,j=q?l.modified:e,h=l.fieldsMap,g=a.persist,s=a.serialize,c,o,d,b,r;if(j){for(b in j){r=e[b];o=h[b];if(o){if(g&&!o.persist){continue}if(s&&o.serialize){r=o.serialize(r,l)}}k[b]=r}}if(p){c=l.self.criticalFields||l.getCriticalFields();for(d=c.length;d-->0;){b=(o=c[d]).name;if(!(b in k)){r=e[b];if(s&&o.serialize){r=o.serialize(r,l)}k[b]=r}}}if(m){l.getAssociatedData(k)}return k},getTransientFields:function(){var a=this.self,b=a.transientFields;if(!b){a.rankFields();b=a.transientFields}return b},isLoading:function(){return !!this.loadOperation},abort:function(){var a=this.loadOperation;if(a){a.abort()}},load:function(b){b=Ext.apply({},b);var g=this,e=b.scope||g,c=g.getProxy(),j=b.callback,a=g.loadOperation,h=g.getId(),d;if(a){d=a.extraCalls;if(!d){d=a.extraCalls=[]}d.push(b);return a}b.id=h;b.recordCreator=function(m,k,l){var n=g.session;l.recordCreator=n?n.recordCreator:null;g.set(m,g._commitOptions);return g};b.internalCallback=function(m){var q=m.wasSuccessful()&&m.getRecords().length>0,r=g.loadOperation,o=r.extraCalls,l=[g,m],p=[g,m,q],n,k;g.loadOperation=null;if(q){Ext.callback(b.success,e,l)}else{Ext.callback(b.failure,e,l)}Ext.callback(j,e,p);if(o){for(n=0,k=o.length;n<k;++n){b=o[n];if(q){Ext.callback(b.success,e,l)}else{Ext.callback(b.failure,e,l)}Ext.callback(b.callback,e,p)}}g.callJoined("afterLoad")};delete b.callback;g.loadOperation=a=c.createOperation("read",b);a.execute();return a},save:function(k){k=Ext.apply({},k);var g=this,d=g.phantom,a=g.dropped,c=a?"destroy":(d?"create":"update"),j=k.scope||g,h=k.callback,e=g.getProxy(),b;k.records=[g];k.internalCallback=function(l){var m=[g,l],n=l.wasSuccessful();if(n){Ext.callback(k.success,j,m)}else{Ext.callback(k.failure,j,m)}m.push(n);Ext.callback(h,j,m)};delete k.callback;b=e.createOperation(c,k);if(a&&d){b.setResultSet(Ext.data.reader.Reader.prototype.nullResultSet);g.setErased();b.setSuccessful(true)}else{b.execute()}return b},inheritableStatics:{addFields:function(a){this.replaceFields(a)},replaceFields:function(n,k){var o=this,e=o.prototype,j=Ext.data.field.Field,g=o.fields,m=o.fieldsMap,c=o.fieldOrdinals,p,d,b,h,a,l;if(k===true){g.length=0;o.fieldsMap=m={};o.fieldOrdinals=c={}}else{if(k){for(d=k.length;d-->0;){a=k[d];if(a in c){delete c[a];delete m[a]}}for(d=0,h=g.length;d<h;++d){a=(p=g[d]).name;if(a in c){c[a]=d}else{g.splice(d,1);--d;--h}}}}for(d=0,h=n?n.length:0;d<h;d++){a=(p=n[d]).name;if(!(a in c)){c[a]=l=g.length;g.push(p=j.create(p));m[a]=p;p.ordinal=l;p.definedBy=p.owner=this}}o.idField=e.idField=b=m[e.idProperty];b.allowNull=b.critical=b.identifier=true;b.defaultValue=null;o.initializeFn=o.rankedFields=o.transientFields=o.criticalFields=null},removeFields:function(a){this.replaceFields(null,a)},getIdFromData:function(c){var b=this,a=b.idField;id=a.calculated?(new b(c)).id:c[a.name];return id},createWithId:function(g,b,c){var e=b,a=this;if(g||g===0){e={};if(b){Ext.apply(e,b)}e[a.idField.name]=g}return new a(e,c)},getFields:function(){return this.fields},getFieldsMap:function(){return this.fieldsMap},getField:function(a){return this.fieldsMap[a]||null},getProxy:function(){var b=this,a=b.proxy,c;if(!a){a=b.proxyConfig;if(!a||!a.isProxy){c=b.schema.constructProxy(b);a=a?Ext.merge(c,a):c}a=b.setProxy(a)}return a},setProxy:function(b){var c=this,a;if(b){if(!b.isProxy){b=Ext.Factory.proxy(b)}else{a=b.getModel();if(a&&a!==c){b=b.clone()}}b.setModel(c)}return(c.prototype.proxy=c.proxy=b)},load:function(d,a,b){var c=new this({id:d},b);c.load(a);return c}},deprecated:{5:{methods:{hasId:null,markDirty:null,setDirty:null,eachStore:function(g,d){var e=this,b=e.stores,a=b.length,c;for(c=0;c<a;++c){g.call(d,b[c])}},join:function(c){var b=this,a=b.stores,d=b.joined;if(!d){d=b.joined=[c]}else{d.push(c)}if(c.isStore){b.store=b.store||c;if(!a){a=b.stores=[]}a.push(c)}},unjoin:function(c){var b=this,a=b.stores,d=b.joined;if(d.length===1){d.length=0}else{Ext.Array.remove(d,c)}if(c.isStore){Ext.Array.remove(a,c);b.store=a[0]||null}}},properties:{persistenceProperty:null},inheritableStatics:{methods:{setFields:null}}}},privates:{_commitOptions:{commit:true},_getChangesOptions:{changes:true},_getAssociatedOptions:{associated:true},copyFrom:function(j){var h=this,e=h.fields,m=e.length,b=[],k,c=0,g,d,n=h.idProperty,a,l;if(j){g=h.data;d=j.data;for(;c<m;c++){k=e[c];a=k.name;if(a!=n){l=d[a];if(l!==undefined&&!h.isEqual(g[a],l)){g[a]=l;b.push(a)}}}if(h.phantom&&!j.phantom){h.beginEdit();h.setId(j.getId());h.endEdit(true);h.commit(true)}}return b},callJoined:function(d,c){var g=this,j=g.joined,e=g.session,a,b,h,k;if(!j&&!e){return}if(c){c.unshift(g)}else{c=[g]}if(e&&(h=e[d])){h.apply(e,c)}if(j){for(a=0,b=j.length;a<b;++a){k=j[a];if(k&&(h=k[d])){h.apply(k,c)}}}},setSession:function(a){this.session=a;if(a){a.add(this)}},getModifiedFieldNames:function(a){var d=this,e=d.data,b=[],g=a||d.editMemento.data,c;for(c in e){if(e.hasOwnProperty(c)){if(!d.isEqual(e[c],g[c],c)){b.push(c)}}}return b},isEqual:function(a,d,c){var b;if(c){b=c.isField?c:this.fieldsMap[c];if(b){return b.compare(a,d)===0}}if(a instanceof Date&&d instanceof Date){return a.getTime()===d.getTime()}return a===d},statics:{EDIT:"edit",REJECT:"reject",COMMIT:"commit",rankFields:function(){var k=this,j=k.prototype,d=k.fields,b=d.length,g=[],a=[],e=[],l,h,c;k.rankedFields=j.rankedFields=g;k.criticalFields=j.criticalFields=a;k.transientFields=j.transientFields=e;for(c=0;c<b;++c){h=d[c];if(h.critical){a.push(h)}if(!h.persist){e.push(h)}if(h.evil){(l||(l=[])).push(h)}else{if(!h.depends){g.push(h);h.rank=g.length}}}for(c=0;c<b;++c){if(!(h=d[c]).rank&&!h.evil){k.topoAdd(h)}}if(l){for(c=0,b=l.length;c<b;++c){g.push(h=l[c]);h.rank=g.length}}return g},topoAdd:function(h){var b=this,g=h.depends,a=g?g.length:0,d=b.rankedFields,c,e;for(c=0;c<a;++c){e=b.fieldsMap[g[c]];(e.dependents||(e.dependents=[])).push(h);if(!e.rank){b.topoAdd(e)}}d.push(h);h.rank=d.length},initFields:function(t,b,o){var k=Ext.data.field.Field,d=t.fields,p=[],l={},g={},a=[],s=o.fields,m=t.versionProperty||o.versionProperty,n=t.idProperty||o.idProperty,h,c,r,e,u,q,j;b.fields=o.fields=p;b.fieldOrdinals=o.fieldOrdinals=l;b.fieldsMap=o.fieldsMap=g;b.references=o.references=a;if(s){for(r=0,e=s.length;r<e;++r){p[r]=c=Ext.Object.chain(s[r]);c.dependents=null;c.owner=b;l[u=c.name]=r;g[u]=c}}if(d){delete t.fields;for(r=0,e=d.length;r<e;++r){c=d[r];j=c.reference;if(j&&typeof j!=="string"){j=Ext.merge({},j)}c.$reference=j;c=k.create(d[r]);u=c.name;q=l[u];if(q===undefined){l[u]=q=p.length}g[u]=c;p[q]=c;c.definedBy=c.owner=b;c.ordinal=q;if(u===m){c.critical=true}}}if(!(h=g[n])){h=new k(n);q=p.length;p[q]=h;l[n]=q;g[n]=h;h.definedBy=b;h.ordinal=q}h.allowNull=h.critical=h.identifier=true;h.defaultValue=null;b.idField=o.idField=h},initAssociations:function(c,g,l){var b=g.associations,d=g.belongsTo,j=g.hasMany,m=g.hasOne,k=g.manyToMany,e,a,h;delete g.manyToMany;if(k){c.addMatrices(l,k)}delete g.associations;delete g.belongsTo;delete g.hasMany;delete g.hasOne;if(b){b=Ext.isArray(b)?b:[b];for(e=0,a=b.length;e<a;++e){h=b[e];switch(h.type){case"belongsTo":c.addLegacyBelongsTo(l,h);break;case"hasMany":c.addLegacyHasMany(l,h);break;case"hasOne":c.addLegacyHasOne(l,h);break}}}if(d){d=Ext.isArray(d)?d:[d];for(e=0,a=d.length;e<a;++e){c.addLegacyBelongsTo(l,d[e])}}if(j){j=Ext.isArray(j)?j:[j];for(e=0,a=j.length;e<a;++e){c.addLegacyHasMany(l,j[e])}}if(m){m=Ext.isArray(m)?m:[m];for(e=0,a=m.length;e<a;++e){c.addLegacyHasOne(l,m[e])}}c.afterLegacyAssociations(l)},initIdentifier:function(g,a,e){var b=g.identifier||g.idgen,d=e.identifier||a.schema._defaultIdentifier,c;if(b){delete g.identifier;delete g.idgen;b=Ext.Factory.dataIdentifier(b)}else{if(d){if(d.clone&&!d.getId()){b=d.clone()}else{if(d.isGenerator){b=d}else{b=Ext.Factory.dataIdentifier(d)}}}}a.identifier=e.identifier=b;if(!b){c=a.entityName;if(!c){c=Ext.id(null,"extModel")}a.identifier=Ext.Factory.dataIdentifier({type:"sequential",prefix:c+"-"})}},findValidator:function(c,d,b){var g=b.type||b,j=c[d],a,e,h;if(j){for(e=0,a=j.length;e<a;++e){h=j[e];if(h.type===g){return h}}}return null},initValidators:function(k,s,m){var g=Ext.data.validator.Validator,q=m.validators,h,p,c,n,j,e,d,b,l,a,r,o;if(q){h={};for(p in q){if(q.hasOwnProperty(p)){l=q[p];c=[];for(j=0,e=l.length;j<e;++j){c[j]=l[j].clone()}h[p]=c}}}n=k.validators||k.validations;if(n){delete k.validators;h=h||{};if(Ext.isArray(n)){c={};for(j=0,e=n.length;j<e;++j){r=n[j];a=r.field;if(!c[a]){c[a]=[]}r=r.fn||r;c[a].push(r)}n=c}for(a in n){if(n.hasOwnProperty(a)){r=n[a];if(!Ext.isArray(r)){r=[r]}for(j=0,e=r.length;j<e;++j){b=r[j];o=typeof b;if(o==="function"){b=new g(b)}else{if(q){d=this.findValidator(h,a,b)}if(o==="string"){if(!d){b=g.create({type:b})}else{b=null}}else{if(!d){b=g.create(b)}else{d.setConfig(b);b=null}}}if(b){l=h[a];if(!l){l=h[a]=[]}l.push(b)}}}}}s.validators=m.validators=h},makeInitializeFn:function(r){var a=["var "],j=["\nreturn function (e) {\n    var data = e.data, v;\n"],e=[],o=0,l,k,m,q,d,n,h,g,p,c,b;if(!(h=r.rankedFields)){h=r.rankFields()}for(c=0,b=h.length;c<b;++c){n=h[c];e[c]=g="f"+c;m=n.convert;if(c){a.push(",  \n    ")}a.push(g," = $fields["+c+"]");if((p=(n.defaultValue!==undefined))||m){q='data["'+n.name+'"]';++o;l=k="";if(n.cloneDefaultValue){l="Ext.clone(";k=")"}j.push("\n");if(m&&p){j.push("    v = ",q,";\n    if (v !== undefined) {\n        v = ",g,".convert(v, e);\n    }\n    if (v === undefined) {\n        v = ",l,g,".defaultValue",k,";\n    }\n    ",q," = v;")}else{if(m){j.push("    v = ",g,".convert(",q,",e);\n    if (v !== undefined) {\n        ",q," = v;\n    }\n")}else{if(p){j.push("    if (",q," === undefined) {\n        ",q," = ",l,g,".defaultValue",k,";\n    }\n")}}}}}if(!o){return Ext.emptyFn}a.push(";\n");a.push.apply(a,j);a.push("}");a=a.join("");d=new Function("$fields",a);return d(h)}}}},1,0,0,0,0,0,[Ext.data,"Model",Ext.data,"Record"],function(){var d=this,c=d.prototype,b=Ext.data.schema.Schema,a;d.proxyConfig=c.proxy;delete c.proxy;d.schema=c.schema=b.get(c.schema);c.idField=new Ext.data.field.Field(c.idProperty);d.identifier=new Ext.data.identifier.Sequential();d.onExtended(function(e,l){var k=e.prototype,n=l.schema,m=k.superclass.self,j,h,g;e.idProperty=k.idProperty;if(n){delete l.schema;j=b.get(n)}else{if(!(j=k.schema)){j=a||(a=b.get("default"))}}e.rankFields=d.rankFields;e.topoAdd=d.topoAdd;k.schema=e.schema=j;if(!(h=l.entityName)){k.entityName=h=j.getEntityName(e)}e.entityName=h;e.fieldExtractors={};d.initIdentifier(l,e,k);d.initFields(l,e,k);e.fields.items=e.fields;if(h){j.addEntity(e);d.initAssociations(j,l,e)}d.initValidators(l,e,k);g=l.proxy;if(g){delete l.proxy}else{g=m.proxyConfig||m.proxy}e.proxyConfig=g})}));(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(a,b){this.getExtraParams()[a]=b},buildRequest:function(a){var g=this,b=Ext.apply({},a.getParams()),h=Ext.applyIf(b,g.getExtraParams()||{}),e,d,c;Ext.applyIf(h,g.getParams(a));d=a.getId();c=g.getIdParam();if(d!==undefined&&h[c]===undefined){h[c]=d}e=new Ext.data.Request({params:h,action:a.getAction(),records:a.getRecords(),operation:a,proxy:g});e.setUrl(g.buildUrl(e));a.setRequest(e);return e},processResponse:function(j,c,h,b){var g=this,d,a,e;if(j===true){a=g.getReader();e=a.read(g.extractResponseData(b),{recordCreator:c.getRecordCreator()});c.process(e,h,b);d=!c.wasSuccessful()}else{g.setException(c,b);d=true}if(d){g.fireEvent("exception",g,b,c)}g.afterRequest(h,j)},setException:function(b,a){b.setException({status:a.status,statusText:a.statusText,response:a})},extractResponseData:Ext.identityFn,applyEncoding:function(a){return Ext.encode(a)},encodeSorters:function(e,c){var a=[],d=e.length,b;for(b=0;b<d;b++){a[b]=e[b].serialize()}return this.applyEncoding(c?a[0]:a)},encodeFilters:function(d){var a=[],c=d.length,b,e;for(b=0;b<c;b++){a[b]=d[b].serialize()}return this.applyEncoding(a)},getParams:function(q){if(!q.isReadOperation){return{}}var w=this,v={},t=q.getGrouper(),a=q.getSorters(),o=q.getFilters(),j=q.getPage(),h=q.getStart(),u=q.getLimit(),m=w.getSimpleSortMode(),d=w.getSimpleGroupMode(),s=w.getPageParam(),e=w.getStartParam(),b=w.getLimitParam(),c=w.getGroupParam(),n=w.getGroupDirectionParam(),g=w.getSortParam(),r=w.getFilterParam(),p=w.getDirectionParam(),l,k;if(s&&j){v[s]=j}if(e&&(h||h===0)){v[e]=h}if(b&&u){v[b]=u}l=c&&t;if(l){if(d){v[c]=t.getProperty();v[n]=t.getDirection()}else{v[c]=w.encodeSorters([t],true)}}if(g&&a&&a.length>0){if(m){k=0;if(a.length>1&&l){k=1}v[g]=a[k].getProperty();v[p]=a[k].getDirection()}else{v[g]=w.encodeSorters(a)}}if(r&&o&&o.length>0){v[r]=w.encodeFilters(o)}return v},buildUrl:function(c){var b=this,a=b.getUrl(c);if(b.getNoCache()){a=Ext.urlAppend(a,Ext.String.format("{0}={1}",b.getCacheString(),Ext.Date.now()))}return a},getUrl:function(b){var a;if(b){a=b.getUrl()||this.getApi()[b.getAction()]}return a?a:this.callParent()},doRequest:function(a){},afterRequest:Ext.emptyFn,onDestroy:function(){Ext.destroy(this.getReader(),this.getWriter())}},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"],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(a){var d=this,e=d.getWriter(),c=d.buildRequest(a),h=d.getMethod(c),b,g;if(e&&a.allowWrite()){c=e.write(c)}c.setConfig({binary:d.getBinary(),headers:d.getHeaders(),timeout:d.getTimeout(),scope:d,callback:d.createRequestCallback(c,a),method:h,useDefaultXhrHeader:d.getUseDefaultXhrHeader(),disableCaching:false});if(h.toUpperCase()!=="GET"&&d.getParamsAsJson()){g=c.getParams();if(g){b=c.getJsonData();if(b){b=Ext.Object.merge({},b,g)}else{b=g}c.setJsonData(b);c.setParams(undefined)}}if(d.getWithCredentials()){c.setWithCredentials(true);c.setUsername(d.getUsername());c.setPassword(d.getPassword())}return d.sendRequest(c)},sendRequest:function(a){a.setRawRequest(Ext.Ajax.request(a.getCurrentConfig()));this.lastRequest=a;return a},abort:function(a){a=a||this.lastRequest;if(a){Ext.Ajax.abort(a.getRawRequest())}},getMethod:function(a){var c=this.getActionMethods(),b=a.getAction(),d;if(c){d=c[b]}return d||this.defaultActionMethods[b]},createRequestCallback:function(c,a){var b=this;return function(e,g,d){if(c===b.lastRequest){b.lastRequest=null}b.processResponse(g,a,c,d)}}},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(c,b){var a=this,d;if(a.getMeta){d=a.getMeta(c);if(d){a.onMetaChange(d)}}else{if(c.metaData){a.onMetaChange(c.metaData)}}return Ext.data.reader.Reader.prototype.readRecords.apply(this,arguments)},getResponseData:function(a){try{return Ext.decode(a.responseText)}catch(b){Ext.Logger.warn("Unable to parse the JSON returned by the server");return this.createReadError(b.message)}},buildExtractors:function(){var c=this,b=c.getMetaProperty(),a=c.getRootProperty();if(c.callParent(arguments)){if(a){c.getRoot=c.createAccessor(a)}else{c.getRoot=Ext.identityFn}if(b){c.getMeta=c.createAccessor(b)}}},extractData:function(a,e){var g=this.getRecord(),d=[],c,b;if(g){c=a.length;if(!c&&Ext.isObject(a)){c=1;a=[a]}for(b=0;b<c;b++){d[b]=a[b][g]}}else{d=a}return Ext.data.reader.Reader.prototype.extractData.apply(this,[d,e])},getModelData:function(a){return this.getPreserveRawData()?Ext.apply({},a):a},createAccessor:(function(){var a=/[\[\.]/,b=/^\[(?:\'|\")?([^\'\"]*)(?:\'|\")?\]$/;return function(m){var k=this,c=k.getUseSimpleAccessors(),d=0,n,g,j,h,l,e;if(!(m||m===0)){return}if(typeof m==="function"){return m}if(!c){d=String(m).search(a)}if(c===true||d<=0){if(d===0){m=m.replace(b,"$1")}n=function(o){return o[m]}}else{g=m.split(".");j=g.length;l="raw."+g[0];e=[l];for(h=1;h<j;h++){l+="."+g[h];e.push(l)}n=e.join(" && ");n=Ext.functionFactory("raw","return "+n)}return n}}()),createFieldAccessor:function(e){var b=this,a=e.mapping,c=a||a===0,d=c?a:e.name;if(c){if(typeof d==="function"){return function(g){return e.mapping(g,b)}}else{return b.createAccessor(d)}}}},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(d){var b=d.length,e=0,k,a,g,c,h,l=function(j,m){var n={};n[j]=m;return n};for(;e<b;e++){k=d[e];for(a in k){if(k.hasOwnProperty(a)){g=a.split(".");c=g.length-1;if(c>0){h=k[a];for(;c>0;c--){h=l(g[c],h)}k[g[0]]=k[g[0]]||{};Ext.Object.merge(k[g[0]],h);delete k[a]}}}}return d},writeRecords:function(e,g){var d=this,a=d.getRootProperty(),c,h,b;if(d.getExpandData()){g=d.getExpandedData(g)}if(d.getAllowSingle()&&g.length===1){g=g[0];h=true}b=this.getTransform();if(b){g=b(g,e);e.setJsonData(g)}if(d.getEncode()){if(a){e.setParam(a,Ext.encode(g))}else{}}else{if(h||(g&&g.length)){c=e.getJsonData()||{};if(a){c[a]=g}else{c=g}e.setJsonData(c)}}return e}},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}},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(a){var b=this;b.sortFn=Ext.util.Sorter.createComparator(b);Ext.util.Collection.prototype.constructor.apply(this,[a]);b.setDecoder(b.decodeSorter)},addSort:function(k,j,c){var h=this,d,e,b,m,a,l,g;if(!k){h.beginUpdate();h.endUpdate()}else{m=h.getOptions();if(k instanceof Array){g=k;c=j;j=null}else{if(Ext.isString(k)){if(!(l=h.get(k))){g=[{property:k,direction:j||m.getDefaultSortDirection()}]}else{g=[l]}}else{if(Ext.isFunction(k)){g=[{sorterFn:k,direction:j||m.getDefaultSortDirection()}]}else{g=[k];c=j;j=null}}}c=h._sortModes[c||"replace"];a=h.getAt(0);d=h.length;e=c.append?d:0;h.beginUpdate();h.splice(e,c.replace?d:0,g);if(c.multi){d=h.length;b=m.getMultiSortLimit();if(d>b){h.removeAt(b,d)}}if(l&&j){l.setDirection(j)}else{if(e===0&&a&&a===h.getAt(0)){a.toggle()}}h.endUpdate()}},getSortFn:function(){return this.sortFn},getByProperty:function(e){var b=this.items,a=b.length,c,d;for(c=0;c<a;++c){d=b[c];if(d.getProperty()===e){return d}}return null},_sortModes:{append:{append:1},multi:{multi:1},prepend:{prepend:1},replace:{replace:1}},decodeSorter:function(j,a){var g=this,k=g.getOptions(),h=k.getRootProperty(),b=g.getSorterOptionsFn(),c,e,d;if(j.isSorter){if(!j.getRoot()){j.setRoot(h)}}else{e={direction:k.getDefaultSortDirection(),root:h};d=typeof j;if(d==="string"){c=g.get(j);if(c){return c}e.property=j}else{if(d==="function"){e.sorterFn=j}else{e=Ext.apply(e,j);if(e.fn){e.sorterFn=e.fn;delete e.fn}}}j=Ext.create(a||"Ext.util.Sorter",e)}if(b){b.call(g.getSorterOptionsScope()||g,j)}return j},setSorterConfigure:function(b,a){this.setSorterOptionsFn(b);this.setSorterOptionsScope(a)},decodeRemoveItems:function(h,d){var k=this,e=(d===undefined)?h:h[d];if(!e||!e.$cloned){if(h.length>d+1||!Ext.isIterable(e)){e=Ext.Array.slice(h,d)}var l=k.items,g=e.length,c=[],b,m,a,o,j;for(b=0;b<g;b++){o=e[b];if(o&&o.isFilter){c.push(o)}else{j=typeof o;if(j==="string"){o=k.get(o);if(o){c.push(o)}}else{if(j==="function"){for(a=l.length;a-->0;){m=l[a];if(m.getSorterFn()===o){c.push(m)}}}}}}e=c;e.$cloned=true}return e},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(a){var b=this;b.filterFn=Ext.util.Filter.createFilterFn(b);Ext.util.Collection.prototype.constructor.apply(this,[a]);b.setDecoder(b.decodeFilter)},filterData:function(a){return this.filtered?Ext.Array.filter(a,this.filterFn):a},getFilterFn:function(){return this.filterFn},isItemFiltered:function(a){return !this.filterFn(a)},decodeFilter:function(c){var b=this.getOptions(),a=b.getRootProperty(),d;if(c.isFilter){if(!c.getRoot()){c.setRoot(a)}}else{d={root:a};if(Ext.isFunction(c)){d.filterFn=c}else{d=Ext.apply(d,c);if(d.fn){d.filterFn=d.fn;delete d.fn}if(Ext.util.Filter.isInvalid(d)){return false}}c=new Ext.util.Filter(d)}return c},decodeRemoveItems:function(p,k){var r=this,l=(k===undefined)?p:p[k];if(!l.$cloned){if(p.length>k+1||!Ext.isIterable(l)){l=Ext.Array.slice(p,k)}var e=r.items,o=l.length,h=[],b,g,c,m,a,s,j,d,q;for(g=0;g<o;g++){b=l[g];if(b&&b.isFilter){h.push(b)}else{q=typeof b;c=q==="function";m=b.property!==undefined&&b.value!==undefined;a=q==="string";for(d=e.length;d-->0;){s=e[d];j=false;if(a){j=s.getProperty()===b}else{if(c){j=s.getFilterFn()===b}else{if(m){j=s.getProperty()===b.property&&s.getValue()===b.value}}}if(j){h.push(s)}}}}l=h;l.$cloned=true}return l},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:{itemRoot:null},observerPriority:-100,onCollectionAdd:function(b,a){this.addItemsToGroups(b,a.items)},onCollectionBeforeItemChange:function(d,a){var c=this,b=a.item,e=d.getKey(b);c.onCollectionAdd=c.onCollectionRemove=c.onCollectionUpdateKey=null;c.syncItemGrouping(d,b,e,a.oldKey)},onCollectionBeginUpdate:function(){this.beginUpdate()},onCollectionEndUpdate:function(){this.endUpdate()},onCollectionItemChange:function(b,a){delete this.onCollectionAdd;delete this.onCollectionRemove;delete this.onCollectionUpdateKey},onCollectionRefresh:function(a){this.removeAll();this.addItemsToGroups(a,a.items)},onCollectionRemove:function(a,b){var h=this,g=h.groupItems(a,b.items,false),j,k,e,c,d;for(e=0,c=g.length;e<c;++e){k=(j=g[e]).group;if(k){k.remove(j.items);if(!k.length){(d||(d=[])).push(k)}}}if(d){h.remove(d)}},onCollectionSort:function(e){var d=this,h=e.getSorters(),a=d.items,c=d.length,b,g;for(b=0;b<c;++b){g=a[b];if(g.getSorters()!==h){g.setSorters(h)}}},onCollectionUpdateKey:function(b,a){this.syncItemGrouping(b,a.item,a.newKey,a.oldKey)},addItemsToGroups:function(g,b){var e=this,a=e.groupItems(g,b,true),d,c,h;for(c=0,h=a.length;c<h;++c){d=a[c];d.group.add(d.items)}},groupItems:function(b,l,d){var m=this,a={},k=[],c=b.getGrouper(),p=m.itemGroupKeys,o,q,s,j,r,e,g,h;for(j=0,g=l.length;j<g;++j){s=c.getGroupString(r=l[j]);e=b.getKey(r);if(d){(p||(m.itemGroupKeys=p={}))[e]=s}else{if(p){delete p[e]}}if(!(o=a[s])){if(!(q=m.getByKey(s))&&d){(h||(h=[])).push(q=m.createGroup(b,s))}k.push(a[s]=o={group:q,items:[]})}o.items.push(r)}if(h){m.add(h)}return k},syncItemGrouping:function(a,n,d,h){var l=this,j=l.itemGroupKeys||(l.itemGroupKeys={}),b=a.getGrouper(),o=b.getGroupString(n),e=0,k,m,c,g;if(h){g=j[h];delete j[h]}else{g=j[d]}j[d]=o;if(!(m=l.get(o))){m=l.createGroup(a,o);k=[m]}if(m.get(d)!==n){m.add(n)}else{m.itemChanged(n)}if(o!==g&&(g===0||g)){c=l.get(g);if(c){c.remove(n);if(!c.length){e=[c]}}}if(k){l.splice(0,e,k)}else{if(e){l.splice(0,e)}}},createGroup:function(b,a){var c=new Ext.util.Group({groupKey:a,rootProperty:this.getItemRoot(),sorters:b.getSorters()});return c},getKey:function(a){return a.getGroupKey()},getGroupByRecord:function(b){var c=this.items,a=c.length,e,d;for(d=0;d<a;d++){e=c[d];if(e.indexOf(b)){return e}}return null}},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},addRecordsOptions:{addRecords:true},loadCount:0,complete:false,constructor:function(a){var b=this,c;if(a){if(a.buffered){return new Ext.data.BufferedStore(a)}}Ext.data.ProxyStore.prototype.constructor.apply(this,arguments);c=b.inlineData;if(c){delete b.inlineData;b.loadInlineData(c)}b.getData().addObserver(this)},onCollectionBeginUpdate:function(){this.beginUpdate()},onCollectionEndUpdate:function(){this.endUpdate()},applyData:function(c,a){var b=this;b.getFields();b.getModel();if(!a){a=b.constructDataCollection()}if(c){if(b.isInitializing){b.inlineData=c}else{b.loadData(c)}}return a},loadInlineData:function(d){var c=this,b=c.getProxy(),a;if(b&&b.isMemoryProxy){b.setData(d);a=c.unblockLoad(true);c.suspendEvents();c.read();c.resumeEvents();c.blockLoad(a)}else{c.removeAll(true);c.suspendEvents();c.fireEvent("clear",c);c.loadData(d);c.resumeEvents()}},updateRemoteFilter:function(c){var b=this.getData(),a=this.getFilters();if(c){b.setFilters(null)}else{b.setFilters(a)}Ext.data.AbstractStore.prototype.updateRemoteFilter.apply(this,arguments)},updateRemoteSort:function(b){var a=this.getData(),c=this.getSorters();if(b){a.setSorters(null)}else{a.setSorters(c)}Ext.data.AbstractStore.prototype.updateRemoteSort.apply(this,arguments)},insert:function(c,b){var e=this,a,d;if(b){if(!Ext.isIterable(b)){b=[b]}else{b=Ext.Array.clone(b)}a=b.length}if(!a){return[]}for(d=0;d<a;++d){b[d]=e.createModel(b[d])}e.getData().insert(c,b);return b},onCollectionAdd:function(e,a){var j=this,b=a.items,h=b.length,k=!a.next,c,l,d,g=j.getRemovedRecords();if(j.ignoreCollectionAdd){return}for(c=0;c<h;++c){d=b[c];d.join(j);if(g&&g.length){Ext.Array.remove(g,d)}l=l||d.phantom||d.dirty}j.fireEvent("add",j,b,a.at);if(k){j.fireEvent("datachanged",j)}j.needsSync=j.needsSync||l},onCollectionItemChange:function(e,d){var c=this,a=d.item,b=d.modified;if(c.contains(a)){c.onUpdate(a,"edit",b);c.fireEvent("update",c,a,"edit",b)}},afterEdit:function(a,b){this.needsSync=this.needsSync||a.dirty;this.getData().itemChanged(a,b)},afterDrop:function(a){this.getData().remove(a)},onCollectionFilterAdd:function(d,b){var a=b.length,c;for(c=0;c<a;++c){b[c].join(this)}},add:function(a){return this.insert(this.getCount(),arguments.length===1?a:arguments)},addSorted:function(a){var c=this,e=c.getRemoteSort(),d=c.getData(),b;if(e){d.setSorters(c.getSorters())}b=d.findInsertionIndex(a);if(e){d.setSorters(null)}return c.insert(b,a)},createModel:function(a){if(!a.isModel){var b=this.getModel();a=new b(a,this.getSession())}return a},remove:function(b,k,h){var j=this,c=j.getData(),g,d,a,e;if(b){if(b.isModel){if(j.indexOf(b)>-1){a=[b];g=1}else{g=0}}else{a=[];for(d=0,g=b.length;d<g;++d){e=b[d];if(e&&e.isEntity){if(!c.contains(e)){continue}}else{if(!(e=c.getAt(e))){continue}}a.push(e)}g=a.length}}if(!g){return[]}j.removeIsMove=k===true;j.removeIsSilent=h;c.remove(a);j.removeIsSilent=false;return a},onCollectionRemove:function(g,a){var m=this,h=m.removed,b=a.items,j=a.at,k=b.length,p=m.removeIsMove,l=m.removeIsSilent,o=!a.next,c,d,n,e;if(m.ignoreCollectionRemove){return}for(c=0;c<k;++c){d=b[c];d.unjoin(m);e=!d.phantom;if(h&&!p&&e){d.removedFrom=j+c;h.push(d)}n=n||e}if(!l){m.fireEvent("remove",m,b,j,p);if(o){m.fireEvent("datachanged",m)}}m.needsSync=m.needsSync||(n&&!p)},onFilterEndUpdate:function(){Ext.data.AbstractStore.prototype.onFilterEndUpdate.apply(this,arguments);this.callObservers("Filter")},removeAt:function(a,b){var c=this.getData();a=Math.max(a,0);if(a<c.length){if(arguments.length===1){b=1}else{if(!b){return}}c.removeAt(a,b)}},removeAll:function(b){var c=this,d=c.getData(),e=c.hasListeners.clear,a;if(d.length){c.removeIsSilent=true;c.callObservers("BeforeRemoveAll");if(e){a=d.getRange()}d.removeAll();if(!b){c.fireEvent("clear",c,a);c.fireEvent("datachanged",c)}c.callObservers("AfterRemoveAll",[!!b])}},setRecords:function(a){var b=this.getCount();++this.loadCount;if(b){this.getData().splice(0,b,a)}else{this.add(a)}},splice:function(a,c,b){return this.getData().splice(a,c,b)},load:function(b){var c=this,a=c.getPageSize();if(typeof b==="function"){b={callback:b}}else{b=Ext.apply({},b)}if(c.getRemoteSort()&&!b.grouper&&c.getGrouper()){b.grouper=c.getGrouper()}if(a||"start" in b||"limit" in b||"page" in b){b.page=b.page||c.currentPage;b.start=(b.start!==undefined)?b.start:(b.page-1)*a;b.limit=b.limit||a}b.addRecords=b.addRecords||false;return Ext.data.ProxyStore.prototype.load.apply(this,[b])},onProxyLoad:function(b){var e=this,d=b.getResultSet(),a=b.getRecords(),h=b.wasSuccessful(),g,c;if(e.isDestroyed){return}if(d){e.totalCount=d.getTotal()}e.loading=false;if(h){g=e.getSession();c=e.getAssociatedEntity();if(g&&c&&!c.phantom){a=e.getRole().validateAssociationRecords(g,c,a)}e.loadRecords(a,b.getAddRecords()?{addRecords:true}:undefined)}if(e.hasListeners.load){e.fireEvent("load",e,a,h,b)}},getNewRecords:function(){return this.getData().createFiltered(this.filterNew).getRange()},getUpdatedRecords:function(){return this.getData().createFiltered(this.filterUpdated).getRange()},loadData:function(e,a){var d=e.length,c=[],b;for(b=0;b<d;b++){c.push(this.createModel(e[b]))}this.loadRecords(c,a?this.addRecordsOptions:undefined)},loadRawData:function(e,b){var d=this,g=d.getSession(),a=d.getProxy().getReader().read(e,g?{recordCreator:g.recordCreator}:undefined),c=a.getRecords(),h=a.getSuccess();if(h){d.totalCount=a.getTotal();d.loadRecords(c,b?d.addRecordsOptions:undefined)}return h},loadRecords:function(c,k){var h=this,b=c.length,e=h.getData(),a,j,g,d;if(k){a=k.addRecords}g=h.getRemoteSort()||!h.getSortOnLoad();if(g){j=e.getAutoSort();e.setAutoSort(false)}if(!a){h.clearData(true)}h.ignoreCollectionAdd=true;h.callObservers("BeforeLoad");e.add(c);h.ignoreCollectionAdd=false;for(d=0;d<b;d++){c[d].join(h)}if(g){e.setAutoSort(j)}++h.loadCount;h.complete=true;h.fireEvent("datachanged",h);h.fireEvent("refresh",h);h.callObservers("AfterLoad")},loadPage:function(d,a){var c=this,b=c.getPageSize();c.currentPage=d;a=Ext.apply({page:d,start:(d-1)*b,limit:b,addRecords:!c.getClearOnPageLoad()},a);c.read(a)},nextPage:function(a){this.loadPage(this.currentPage+1,a)},previousPage:function(a){this.loadPage(this.currentPage-1,a)},clearData:function(h){var d=this,e=d.getData(),g=d.removed,b,c,a;if(e){b=e.items;for(c=0,a=b.length;c<a;++c){b[c].unjoin(d)}d.ignoreCollectionRemove=true;d.callObservers("BeforeClear");e.removeAll();d.ignoreCollectionRemove=false;d.callObservers("AfterClear")}if(g&&(h!==true||d.getClearRemovedOnLoad())){g.length=0}},onIdChanged:function(c,b,a){this.getData().updateKey(c,b)},commitChanges:function(){var c=this,d=c.getModifiedRecords(),a=d.length,e=c.removed,b=0;for(;b<a;b++){d[b].commit()}if(e){e.length=0}},filterNewOnly:function(a){return a.phantom===true},getRejectRecords:function(){var a=this.getData().createFiltered(this.filterNew).getRange();return Ext.Array.push(a,this.getUpdatedRecords())},rejectChanges:function(){var c=this,d=c.getRejectRecords(),a=d.length,b=0,e;for(;b<a;b++){e=d[b];e.reject();if(e.phantom){c.remove(e)}}d=c.removed;if(d){a=d.length;for(b=a-1;b>=0;b--){e=d[b];c.insert(e.removedFrom||0,e);e.reject()}d.length=0}},onDestroy:function(){var b=this,a=b.loadTask;Ext.data.ProxyStore.prototype.onDestroy.call(this);b.observers=null;if(a){a.cancel();b.loadTask=null}b.getData().destroy();b.setData(null)}},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(d){var b=d.mapping,c=d.hasMapping()?b:d.ordinal,a;d.mapping=c;a=Ext.data.reader.Json.prototype.createFieldAccessor.apply(this,arguments);d.mapping=b;return a},getModelData:function(a){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(e,a){if(this.expandData){var d=[],b=0,c=e.length;for(;b<c;b++){d[d.length]=[e[b]]}e=d}Ext.data.Store.prototype.loadData.apply(this,[e,a])}},0,0,0,0,["store.array"],0,[Ext.data,"ArrayStore",Ext.data,"SimpleStore"],0));(Ext.cmd.derive("Ext.data.PageMap",Ext.util.LruCache,{config:{pageSize:0,rootProperty:""},clear:function(a){var b=this;b.pageMapGeneration=(b.pageMapGeneration||0)+1;Ext.util.LruCache.prototype.clear.apply(this,arguments)},forEach:function(l,n){var h=this,d=Ext.Object.getKeys(h.map),a=d.length,k=h.getPageSize(),c,b,m,g,e;for(c=0;c<a;c++){d[c]=Number(d[c])}Ext.Array.sort(d);n=n||h;for(c=0;c<a;c++){m=d[c];g=h.getPage(m);e=g.length;for(b=0;b<e;b++){if(l.call(n,g[b],(m-1)*k+b)===false){return}}}},findBy:function(c,b){var d=this,a=null;b=b||d;d.forEach(function(g,e){if(c.call(b,g,e)){a=g;return false}});return a},findIndexBy:function(c,b){var d=this,a=-1;b=b||d;d.forEach(function(g,e){if(c.call(b,g)){a=e;return false}});return a},find:function(h,g,j,d,c,b){if(Ext.isEmpty(g,false)){return null}var e=Ext.String.createRegex(g,d,c,b),a=this.getRootProperty();return this.findBy(function(k){return k&&e.test((a?k[a]:k)[h])},null,j)},findIndex:function(h,g,j,d,c,b){if(Ext.isEmpty(g,false)){return null}var e=Ext.String.createRegex(g,d,c,b),a=this.getRootProperty();return this.findIndexBy(function(k){return k&&e.test((a?k[a]:k)[h])},null,j)},getPageFromRecordIndex:function(a){return Math.floor(a/this.getPageSize())+1},addAll:function(a){this.addPage(1,a)},addPage:function(b,c){var e=this,a=e.getPageSize(),h=b+Math.floor((c.length-1)/a),d,g;for(d=0;b<=h;b++,d+=a){g=Ext.Array.slice(c,d,d+a);e.add(b,g);e.fireEvent("pageadded",b,g)}},getCount:function(){var a=Ext.util.HashMap.prototype.getCount.call(this);if(a){a=(a-1)*this.getPageSize()+this.last.value.length}return a},indexOf:function(a){return a?a.index:-1},insert:function(){},remove:function(){},removeAt:function(){},removeAtKey:function(b){var a=this.getPage(b);if(a&&a.value){a.value.length=0}return Ext.util.LruCache.prototype.removeAtKey.apply(this,arguments)},getPage:function(a){return this.get(a)},hasRange:function(d,b){var a=this.getPageFromRecordIndex(d),c=this.getPageFromRecordIndex(b);for(;a<=c;a++){if(!this.hasPage(a)){return false}}return true},hasPage:function(a){return !!this.get(a)},getAt:function(a){return this.getRange(a,a+1)[0]},getRange:function(a,b){b--;if(!this.hasRange(a,b)){Ext.Error.raise("PageMap asked for range which it does not have")}var j=this,k=j.getPageSize(),n=j.getPageFromRecordIndex(a),e=j.getPageFromRecordIndex(b),c=(n-1)*k,p=(e*k)-1,l=n,q=[],o,h,m,d=0,g;for(;l<=e;l++){if(l===n){o=a-c;m=true}else{o=0;m=false}if(l===e){h=k-(p-b);m=true}if(m){Ext.Array.push(q,Ext.Array.slice(j.getPage(l),o,h))}else{Ext.Array.push(q,j.getPage(l))}}for(g=q.length;d<g;d++){q[d].index=a++}return q}},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},applyData:function(b){var a=this.data||(this.data=this.createDataCollection());return a},createFiltersCollection:function(){return new Ext.util.FilterCollection()},createSortersCollection:function(){return new Ext.util.SorterCollection()},updateGroupField:function(a){if(this.isInitializing){this.blockLoad()}this.group(a);if(this.isInitializing){this.unblockLoad()}},getGrouper:function(){return this.grouper},isGrouped:function(){return !!this.grouper},createDataCollection:function(){var b=this,a=new Ext.data.PageMap({store:b,rootProperty:"data",pageSize:b.getPageSize(),maxSize:b.getPurgePageCount(),listeners:{clear:b.onPageMapClear,scope:b}});b.pageRequests={};return a},updateGroupsOnUpdate:function(b,d){var c=this,a=c.getGroupField();if(d&&Ext.Array.contains(d,a)){Ext.Error.raise("Cannot move records between groups in a buffered store record - the store is a map of remote data")}c.callParent(arguments)},add:function(a){this.callParent(arguments)},removeAll:function(a){var b=this,c=b.getData();if(c){if(a){b.suspendEvent("clear")}c.clear();if(a){b.resumeEvent("clear")}}},load:function(a){var b=this;a=a||{};b.getData().clear();a.page=1;a.start=0;a.limit=b.getViewSize()||b.getDefaultViewSize();a.loadCallback=a.callback;delete a.callback;return b.loadToPrefetch(a)},reload:function(m){var h=this,j,b,g,l,e,a,k,c,d=h.getData();if(!m){m={}}delete h.totalCount;d.clear(true);a=function(){if(h.rangeCached(j,b)){h.loading=false;d.un("pageadded",a);c=d.getRange(j,b+1);h.fireEvent("load",h,c,true)}};k=Math.ceil((h.getLeadingBufferZone()+h.getTrailingBufferZone())/2);if(!h.lastRequestStart){j=m.start||0;b=j+(m.count||h.getPageSize())-1}else{j=h.lastRequestStart;b=h.lastRequestEnd}g=h.getPageFromRecordIndex(Math.max(j-k,0));l=h.getPageFromRecordIndex(b+k);if(h.fireEvent("beforeload",h,m)!==false){h.loading=true;d.on("pageadded",a);for(e=g;e<=l;e++){h.prefetchPage(e,m)}}},filter:function(){if(this.remoteSort){this.getData().clear();Ext.data.AbstractStore.prototype.filter.apply(this,arguments)}Ext.data.AbstractStore.prototype.filter.apply(this,arguments)},clearFilter:function(){this.getData().clear();Ext.data.AbstractStore.prototype.clearFilter.apply(this,arguments)},filterBy:function(b,a){},loadData:function(b,a){},loadPage:function(c,a){var b=this;a=a||{};a.page=b.currentPage=c;a.start=(c-1)*b.getPageSize();a.limit=b.getViewSize()||b.getDefaultViewSize();a.loadCallback=a.callback;delete a.callback;return b.loadToPrefetch(a)},clearData:function(c){var a=this,b=a.getData();if(b){b.clear()}if(c!==true||a.clearRemovedOnLoad){a.removed.length=0}},doSort:function(){if(this.remoteSort){this.callParent(arguments)}},getRange:function(c,g,l){var k=this,d=k.totalCount-1,e=k.lastRequestStart,m=[],h=k.getData(),b,j,a;l=Ext.apply({prefetchStart:c,prefetchEnd:g},l);g=(g>=k.totalCount)?d:g;j=c===0?0:c-1;a=g===d?g:g+1;k.lastRequestStart=c;k.lastRequestEnd=g;if(k.rangeCached(j,a)){k.onRangeAvailable(l);m=h.getRange(c,g+1)}else{k.fireEvent("cachemiss",k,c,g);b=function(o,n){if(k.rangeCached(j,a)){k.fireEvent("cachefilled",k,c,g);h.un("pageadded",b);k.onRangeAvailable(l)}};h.on("pageadded",b);k.prefetchRange(c,g)}k.primeCache(c,g,c<e?-1:1);return m},getById:function(b){var a=this.data.findBy(function(c){return c.getId()===b});return a},getByInternalId:function(b){var a;a=this.data.findBy(function(c){return c.internalId===b});return a},indexOf:function(a){return this.getData().indexOf(a)},indexOfId:function(a){return this.indexOf(this.getById(a))},group:function(b,d){var c=this,a;if(b&&typeof b==="string"){a=c.grouper;if(!a){c.grouper=new Ext.util.Grouper({property:b,direction:d||"ASC",root:"data"})}else{if(d===undefined){a.toggle()}else{a.setDirection(d)}}}else{c.grouper=b?c.getSorters().decodeSorter(b,"Ext.util.Grouper"):null}if(c.isLoadBlocked()){return}c.getData().clear();c.loadPage(1,{callback:function(){c.fireEvent("groupchange",c,c.getGrouper())}})},getPageFromRecordIndex:function(a){return Math.floor(a/this.getPageSize())+1},loadToPrefetch:function(q){var m=this,c=q,h=m.getPurgePageCount(),j,b,o,n=q.start,a=q.start+q.limit-1,k=Math.min(a,q.start+(m.getViewSize()||q.limit)-1),l=m.getPageFromRecordIndex(Math.max(n-m.getTrailingBufferZone(),0)),p=m.getPageFromRecordIndex(a+m.getLeadingBufferZone()),g=m.getData(),d=function(){if(m.rangeCached(n,k)){m.loading=false;b=g.getRange(n,k+1);g.un("pageadded",d);if(m.hasListeners.guaranteedrange){m.guaranteeRange(n,k,q.callback,q.scope)}if(q.loadCallback){q.loadCallback.call(q.scope||m,b,e,true)}if(q.callback){q.callback.call(q.scope||m,b,n,a,q)}m.fireEvent("datachanged",m);m.fireEvent("refresh",m);m.fireEvent("load",m,b,true)}},e;if(h){g.setMaxSize(h=Math.max(h,p-l+1))}if(m.fireEvent("beforeload",m,q)!==false){delete m.totalCount;m.loading=true;if(q.callback){c=Ext.apply({},q);delete c.callback}m.on("prefetch",function(s,r,u,t){if(u){e=t;if((o=m.getTotalCount())){g.on("pageadded",d);k=Math.min(k,o-1);p=m.getPageFromRecordIndex(Math.min(k+m.getLeadingBufferZone(),o-1));for(j=l+1;j<=p;++j){m.prefetchPage(j,c)}}else{m.fireEvent("datachanged",m);m.fireEvent("refresh",m);m.fireEvent("load",m,r,true)}}else{m.fireEvent("load",m,r,false)}},null,{single:true});m.prefetchPage(l,c)}},prefetch:function(c){var e=this,a=e.getPageSize(),g=e.getData(),d,b;if(a){if(e.lastPageSize&&a!=e.lastPageSize){Ext.Error.raise("pageSize cannot be dynamically altered")}if(!g.pageSize){g.pageSize=a}}else{e.pageSize=g.pageSize=a=c.limit}e.lastPageSize=a;if(!c.page){c.page=e.getPageFromRecordIndex(c.start);c.start=(c.page-1)*a;c.limit=Math.ceil(c.limit/a)*a}if(!e.pageRequests[c.page]){d=e.proxy;c=Ext.apply({action:"read",filters:e.getFilters().items,sorters:e.getSorters().items,grouper:e.getGrouper(),internalCallback:e.onProxyPrefetch,internalScope:e},c);b=d.createOperation("read",c);b.pageMapGeneration=g.pageMapGeneration;if(e.fireEvent("beforeprefetch",e,b)!==false){e.pageRequests[c.page]=b.execute();if(d.isSynchronous){delete e.pageRequests[c.page]}}}return e},onPageMapClear:function(){var d=this,c=d.wasLoading,a=d.pageRequests,g=d.getData(),b,e;g.clearListeners();g.on("clear",d.onPageMapClear,d);d.loading=true;d.totalCount=0;for(e in a){if(a.hasOwnProperty(e)){b=a[e];delete a[e];delete b.callback}}d.fireEvent("clear",d);d.loading=c},prefetchPage:function(e,b){var d=this,a=d.getPageSize(),g=(e-1)*a,c=d.totalCount;if(c!==undefined&&d.getCount()===c){return}d.prefetch(Ext.applyIf({page:e,start:g,limit:a},b))},onProxyPrefetch:function(c){var e=this,d=c.getResultSet(),b=c.getRecords(),h=c.wasSuccessful(),g=c.getPage(),a=e.totalCount;if(c.pageMapGeneration===e.getData().pageMapGeneration){if(d){e.totalCount=d.getTotal();if(e.totalCount!==a){e.fireEvent("totalcountchange",e.totalCount)}}if(g!==undefined){delete e.pageRequests[g]}e.loading=false;e.fireEvent("prefetch",e,b,h,c);if(h){e.cachePage(b,c.getPage())}Ext.callback(c.getCallback(),c.getScope()||e,[b,c,h])}},cachePage:function(b,e){var d=this,a=b.length,c;if(!Ext.isDefined(d.totalCount)){d.totalCount=b.length;d.fireEvent("totalcountchange",d.totalCount)}for(c=0;c<a;c++){b[c].join(d)}d.getData().addPage(e,b)},rangeCached:function(b,a){return this.getData().hasRange(b,a)},pageCached:function(a){return this.getData().hasPage(a)},pagePending:function(a){return !!this.pageRequests[a]},rangeSatisfied:function(b,a){return this.rangeCached(b,a)},onRangeAvailable:function(d){var e=this,b=e.getTotalCount(),g=d.prefetchStart,a=(d.prefetchEnd>b-1)?b-1:d.prefetchEnd,c;a=Math.max(0,a);c=e.getData().getRange(g,a+1);if(d.fireEvent!==false){e.fireEvent("guaranteedrange",c,g,a,d)}if(d.callback){d.callback.call(d.scope||e,c,g,a,d)}},guaranteeRange:function(e,a,d,c,b){b=Ext.apply({callback:d,scope:c},b);this.getRange(e,a+1,b)},prefetchRange:function(h,b){var e=this,d=e.getPurgePageCount(),c,a,g;if(!e.rangeCached(h,b)){c=e.getPageFromRecordIndex(h);a=e.getPageFromRecordIndex(b);e.getData().setMaxSize(d?(a-c+1)+d:0);for(g=c;g<=a;g++){if(!e.pageCached(g)){e.prefetchPage(g)}}}},primeCache:function(j,c,h){var g=this,e=g.getLeadingBufferZone(),d=g.getTrailingBufferZone(),b=g.getPageSize(),a=g.totalCount;if(h===-1){j=Math.max(j-e,0);c=Math.min(c+d,a-1)}else{if(h===1){j=Math.max(Math.min(j-d,a-b),0);c=Math.min(c+e,a-1)}else{j=Math.min(Math.max(Math.floor(j-((e+d)/2)),0),a-g.pageSize);c=Math.min(Math.max(Math.ceil(c+((e+d)/2)),0),a-1)}}g.prefetchRange(j,c)},sort:function(){this.getData().clear();this.loadPage(1)}},0,0,0,0,["store.buffered"],0,[Ext.data,"BufferedStore"],0));(Ext.cmd.derive("Ext.direct.Manager",Ext.Base,{singleton:true,exceptions:{TRANSPORT:"xhr",PARSE:"parse",DATA:"data",LOGIN:"login",SERVER:"exception"},constructor:function(){var a=this;a.transactions=new Ext.util.MixedCollection();a.providers=new Ext.util.MixedCollection();a.mixins.observable.constructor.call(a)},addProvider:function(g){var d=this,b=arguments,e=d.relayers||(d.relayers={}),c,a;if(b.length>1){for(c=0,a=b.length;c<a;++c){d.addProvider(b[c])}return}if(!g.isProvider){g=Ext.create("direct."+g.type+"provider",g)}d.providers.add(g);g.on("data",d.onProviderData,d);if(g.relayedEvents){e[g.id]=d.relayEvents(g,g.relayedEvents)}if(!g.isConnected()){g.connect()}return g},getProvider:function(a){return a.isProvider?a:this.providers.get(a)},removeProvider:function(d){var b=this,a=b.providers,c=b.relayers,e;d=d.isProvider?d:a.get(d);if(d){d.un("data",b.onProviderData,b);e=d.id;if(c[e]){c[e].destroy();delete c[e]}a.remove(d);return d}return null},addTransaction:function(a){this.transactions.add(a);return a},removeTransaction:function(b){var a=this;b=a.getTransaction(b);a.transactions.remove(b);return b},getTransaction:function(a){return typeof a==="object"?a:this.transactions.get(a)},onProviderData:function(e,d){var c=this,b,a;if(Ext.isArray(d)){for(b=0,a=d.length;b<a;++b){c.onProviderData(e,d[b])}return}if(d.name&&d.name!="event"&&d.name!="exception"){c.fireEvent(d.name,d)}else{if(d.status===false){c.fireEvent("exception",d)}}c.fireEvent("event",d,e)},parseMethod:function(c){if(Ext.isString(c)){var e=c.split("."),b=0,a=e.length,d=Ext.global;while(d&&b<a){d=d[e[b]];++b}c=Ext.isFunction(d)?d:null}return c||null}},1,0,0,0,0,[["observable",Ext.util.Observable]],[Ext.direct,"Manager"],function(){Ext.Direct=Ext.direct.Manager}));(Ext.cmd.derive("Ext.data.proxy.Direct",Ext.data.proxy.Server,{alternateClassName:"Ext.data.DirectProxy",config:{paramOrder:undefined,paramsAsHash:true,directFn:undefined,api:undefined},paramOrderRe:/[\s,|]/,applyParamOrder:function(a){if(Ext.isString(a)){a=a.split(this.paramOrderRe)}return a},resolveMethods:function(){var d=this,c=d.getDirectFn(),b=d.getApi(),a=Ext.direct.Manager,e;if(c){d.setDirectFn(e=a.parseMethod(c));if(!Ext.isFunction(e)){Ext.Error.raise("Cannot resolve directFn "+c)}}else{if(b){for(c in b){if(b.hasOwnProperty(c)){e=b[c];b[c]=a.parseMethod(e);if(!Ext.isFunction(b[c])){Ext.Error.raise("Cannot resolve Direct api "+c+" method "+e)}}}}}d.methodsResolved=true},doRequest:function(e){var k=this,b=k.getWriter(),g=k.buildRequest(e),c=g.getParams(),j=[],d=g.getAction(),h=k.getApi(),l,a;if(!k.methodsResolved){k.resolveMethods()}if(h){l=h[d]}l=l||k.getDirectFn();if(b&&e.allowWrite()){g=b.write(g)}if(d==="read"){a=l.directCfg.method;j=a.getArgs(c,k.getParamOrder(),k.getParamsAsHash())}else{j.push(g.getJsonData())}j.push(k.createRequestCallback(g,e),k);g.setConfig({args:j,directFn:l});l.apply(window,j);return g},applyEncoding:Ext.identityFn,createRequestCallback:function(c,a){var b=this;return function(e,d){b.processResponse(d.status,a,c,d)}},extractResponseData:function(a){return Ext.isDefined(a.result)?a.result:a.data},setException:function(b,a){b.setException(a.message)},buildUrl:function(){return""}},0,0,0,0,["proxy.direct"],0,[Ext.data.proxy,"Direct",Ext.data,"DirectProxy"],0));(Ext.cmd.derive("Ext.data.DirectStore",Ext.data.Store,{constructor:function(a){a=Ext.apply({},a);if(!a.proxy){var b={type:"direct",reader:{type:"json"}};Ext.copyTo(b,a,"paramOrder,paramsAsHash,directFn,api,simpleSortMode");Ext.copyTo(b.reader,a,"totalProperty,root,idProperty");a.proxy=b}Ext.data.Store.prototype.constructor.apply(this,[a])}},1,0,0,0,["store.direct"],0,[Ext.data,"DirectStore"],0));(Ext.cmd.derive("Ext.data.JsonP",Ext.Base,{singleton:true,requestCount:0,requests:{},timeout:30000,disableCaching:true,disableCachingParam:"_dc",callbackKey:"callback",request:function(o){o=Ext.apply({},o);var k=this,d=Ext.isDefined(o.disableCaching)?o.disableCaching:k.disableCaching,h=o.disableCachingParam||k.disableCachingParam,c=++k.requestCount,m=o.callbackName||"callback"+c,j=o.callbackKey||k.callbackKey,n=Ext.isDefined(o.timeout)?o.timeout:k.timeout,e=Ext.apply({},o.params),b=o.url,a=Ext.name,g,l;if(d&&!e[h]){e[h]=Ext.Date.now()}o.params=e;e[j]=a+".data.JsonP."+m;l=k.createScript(b,e,o);k.requests[c]=g={url:b,params:e,script:l,id:c,scope:o.scope,success:o.success,failure:o.failure,callback:o.callback,callbackKey:j,callbackName:m};if(n>0){g.timeout=setTimeout(Ext.bind(k.handleTimeout,k,[g]),n)}k.setupErrorHandling(g);k[m]=Ext.bind(k.handleResponse,k,[g],true);k.loadScript(g);return g},abort:function(c){var b=this,d=b.requests,a;if(c){if(!c.id){c=d[c]}b.handleAbort(c)}else{for(a in d){if(d.hasOwnProperty(a)){b.abort(d[a])}}}},setupErrorHandling:function(a){a.script.onerror=Ext.bind(this.handleError,this,[a])},handleAbort:function(a){a.errorType="abort";this.handleResponse(null,a)},handleError:function(a){a.errorType="error";this.handleResponse(null,a)},cleanupErrorHandling:function(a){a.script.onerror=null},handleTimeout:function(a){a.errorType="timeout";this.handleResponse(null,a)},handleResponse:function(b,c){var d=true,a=Ext.GlobalEvents;if(c.timeout){clearTimeout(c.timeout)}delete this[c.callbackName];delete this.requests[c.id];this.cleanupErrorHandling(c);Ext.fly(c.script).destroy();if(c.errorType){d=false;Ext.callback(c.failure,c.scope,[c.errorType])}else{Ext.callback(c.success,c.scope,[b])}Ext.callback(c.callback,c.scope,[d,b,c.errorType]);if(a.hasListeners.idle){a.fireEvent("idle")}},createScript:function(c,d,b){var a=document.createElement("script");a.setAttribute("src",Ext.urlAppend(c,Ext.Object.toQueryString(d)));a.setAttribute("async",true);a.setAttribute("type","text/javascript");return a},loadScript:function(a){Ext.getHead().appendChild(a.script)}},0,0,0,0,0,0,[Ext.data,"JsonP"],0));(Ext.cmd.derive("Ext.data.proxy.JsonP",Ext.data.proxy.Server,{alternateClassName:"Ext.data.ScriptTagProxy",config:{callbackKey:"callback",recordParam:"records",autoAppendParams:true},doRequest:function(a){var c=this,b=c.buildRequest(a),d=b.getParams();b.setConfig({callbackKey:c.callbackKey,timeout:c.timeout,scope:c,disableCaching:false,callback:c.createRequestCallback(b,a)});if(c.getAutoAppendParams()){b.setParams({})}b.setRawRequest(Ext.data.JsonP.request(b.getCurrentConfig()));b.setParams(d);c.lastRequest=b;return b},createRequestCallback:function(c,a){var b=this;return function(g,d,e){if(c===b.lastRequest){b.lastRequest=null}b.processResponse(g,a,c,d)}},setException:function(b,a){b.setException(b.getRequest().getRawRequest().errorType)},buildUrl:function(h){var k=this,a=Ext.data.proxy.Server.prototype.buildUrl.apply(this,arguments),d=h.getRecords(),e=k.getWriter(),g,c,b,j,l;if(e&&h.getOperation().allowWrite()){h=e.write(h)}g=h.getParams();c=g.filters;delete g.filters;if(c&&c.length){for(j=0;j<c.length;j++){b=c[j];l=b.getValue();if(l){g[b.getProperty()]=l}}}if(Ext.isArray(d)&&d.length>0&&(!e||!e.getEncode())){g[k.getRecordParam()]=k.encodeRecords(d)}if(k.getAutoAppendParams()){a=Ext.urlAppend(a,Ext.Object.toQueryString(g))}return a},abort:function(a){a=a||this.lastRequest;if(a){Ext.data.JsonP.abort(a.getRawRequest())}},encodeRecords:function(b){var d=[],c=0,a=b.length;for(;c<a;c++){d.push(Ext.encode(b[c].getData()))}return d}},0,0,0,0,["proxy.jsonp","proxy.scripttag"],0,[Ext.data.proxy,"JsonP",Ext.data,"ScriptTagProxy"],0));(Ext.cmd.derive("Ext.data.JsonPStore",Ext.data.Store,{constructor:function(a){a=Ext.apply({proxy:{type:"jsonp",reader:"json"}},a);Ext.data.Store.prototype.constructor.apply(this,[a])}},1,0,0,0,["store.jsonp"],0,[Ext.data,"JsonPStore"],0));(Ext.cmd.derive("Ext.data.JsonStore",Ext.data.Store,{constructor:function(a){a=Ext.apply({proxy:{type:"ajax",reader:"json",writer:"json"}},a);Ext.data.Store.prototype.constructor.apply(this,[a])}},1,0,0,0,["store.json"],0,[Ext.data,"JsonStore"],0));(Ext.cmd.derive("Ext.data.ModelManager",Ext.Base,{alternateClassName:"Ext.ModelMgr",singleton:true,deprecated:{5:{methods:{clear:null,create:function(c,b,d){var a=b;if(!a.isEntity){a=this.getModel(b||c.name)}return a.createWithId(d,c)},each:function(b,a){Ext.data.Model.schema.eachEntity(b,a)},get:function(a){return this.getModel(a)},getCount:function(){return Ext.data.Model.schema.entityCount},getModel:function(a){return Ext.data.schema.Schema.lookupEntity(a)},isRegistered:function(a){return !!this.getModel(a)}}}}},0,0,0,0,0,0,[Ext.data,"ModelManager",Ext,"ModelMgr"],0));(Ext.cmd.derive("Ext.data.NodeInterface",Ext.Base,{statics:{decorate:function(b){var d=Ext.data.schema.Schema.lookupEntity(b),g=d.prototype,a,c,e;if(!d.prototype.isObservable){d.mixin(Ext.mixin.Observable.prototype.mixinId,Ext.mixin.Observable)}if(g.isNode){return}a=g.idProperty;c=d.getField(a);e=c.type;d.override(this.getPrototypeBody());d.addFields([{name:"parentId",type:e,defaultValue:null,allowNull:c.allowNull},{name:"index",type:"int",defaultValue:-1,persist:false,convert:null},{name:"depth",type:"int",defaultValue:0,persist:false,convert:null},{name:"expanded",type:"bool",defaultValue:false,persist:false,convert:null},{name:"expandable",type:"bool",defaultValue:true,persist:false,convert:null},{name:"checked",type:"auto",defaultValue:null,persist:false,convert:null},{name:"leaf",type:"bool",defaultValue:false},{name:"cls",type:"string",defaultValue:"",persist:false,convert:null},{name:"iconCls",type:"string",defaultValue:"",persist:false,convert:null},{name:"icon",type:"string",defaultValue:"",persist:false,convert:null},{name:"root",type:"boolean",defaultValue:false,persist:false,convert:null},{name:"isLast",type:"boolean",defaultValue:false,persist:false,convert:null},{name:"isFirst",type:"boolean",defaultValue:false,persist:false,convert:null},{name:"allowDrop",type:"boolean",defaultValue:true,persist:false,convert:null},{name:"allowDrag",type:"boolean",defaultValue:true,persist:false,convert:null},{name:"loaded",type:"boolean",defaultValue:false,persist:false,convert:null},{name:"loading",type:"boolean",defaultValue:false,persist:false,convert:null},{name:"href",type:"string",defaultValue:"",persist:false,convert:null},{name:"hrefTarget",type:"string",defaultValue:"",persist:false,convert:null},{name:"qtip",type:"string",defaultValue:"",persist:false,convert:null},{name:"qtitle",type:"string",defaultValue:"",persist:false,convert:null},{name:"qshowDelay",type:"int",defaultValue:0,persist:false,convert:null},{name:"children",type:"auto",defaultValue:null,persist:false,convert:null},{name:"visible",type:"boolean",defaultValue:true,persist:false},{name:"text",type:"string",persist:false}])},getPrototypeBody:function(){var a={idchanged:true,append:true,remove:true,move:true,insert:true,beforeappend:true,beforeremove:true,beforemove:true,beforeinsert:true,expand:true,collapse:true,beforeexpand:true,beforecollapse:true,sort:true};return{isNode:true,constructor:function(){var b=this;b.mixins.observable.constructor.call(b);b.callParent(arguments);b.firstChild=b.lastChild=b.parentNode=b.previousSibling=b.nextSibling=null;b.childNodes=[];return b},createNode:function(b){var j=this,g=j.childType,m,k,d,l,h,e,c=j.self;if(!b.isModel){if(g){c=j.schema.getEntity(g)}else{m=j.getTreeStore();k=m&&m.getProxy().getReader();d=j.getProxy();l=d?d.getReader():null;h=!k||(l&&l.initialConfig.typeProperty)?l:k;if(h){e=h.typeProperty;if(e){c=j.schema.getEntity(b[e])}}}b=new c(b)}if(!b.childNodes){b.firstChild=b.lastChild=b.parentNode=b.previousSibling=b.nextSibling=null;b.childNodes=[]}return b},isLeaf:function(){return this.get("leaf")===true},setFirstChild:function(b){this.firstChild=b},setLastChild:function(b){this.lastChild=b},updateInfo:function(h,t){var v=this,u=v.data.depth,e={},d=v.childNodes,s=d.length,r,j=v.phantom,c=v.data,q=v.fields,g=v.modified||(v.modified={}),o,n,b,l,w,k=t.parentId,m,p;if(!t){Ext.Error.raise("NodeInterface expects update info to be passed")}for(o in t){b=q[v.fieldOrdinals[o]];n=t[o];p=b&&b.persist;l=c[o];m=p&&(o==="index")&&(l!==-1)&&(k&&k!==g.parentId);if(!m&&v.isEqual(l,n)){continue}c[o]=n;if(p){if(!m&&g.hasOwnProperty(o)){if(v.isEqual(g[o],n)){delete g[o];v.dirty=false;for(w in g){if(g.hasOwnProperty(w)){v.dirty=true;break}}}}else{v.dirty=true;g[o]=l}}}if(h){v.commit();v.phantom=j}if(v.data.depth!==u){e={depth:v.data.depth+1};for(r=0;r<s;r++){d[r].updateInfo(h,e)}}},isLast:function(){return this.get("isLast")},isFirst:function(){return this.get("isFirst")},hasChildNodes:function(){return !this.isLeaf()&&this.childNodes.length>0},isExpandable:function(){var b=this;if(b.get("expandable")){return !(b.isLeaf()||(b.isLoaded()&&!b.phantom&&!b.hasChildNodes()))}return false},triggerUIUpdate:function(){this.callJoined("afterEdit",[])},appendChild:function(c,l,d){var j=this,e,h,g,k,b,n={isLast:true,parentId:j.getId(),depth:(j.data.depth||0)+1},m;Ext.suspendLayouts();if(Ext.isArray(c)){h=c.length;m=new Array(h);j.callJoined("beginFill");for(e=0;e<h;e++){m[e]=j.appendChild(c[e],l,d)}j.callJoined("endFill",[m])}else{c=j.createNode(c);if(l!==true&&j.fireEventArgs("beforeappend",[j,c])===false){return false}g=j.childNodes.length;k=c.parentNode;if(k){if(l!==true&&c.fireEventArgs("beforemove",[c,k,j,g])===false){return false}k.removeChild(c,false,false,k.getTreeStore()===j.getTreeStore())}g=j.childNodes.length;if(g===0){j.setFirstChild(c)}j.childNodes[g]=c;c.parentNode=j;c.nextSibling=null;j.setLastChild(c);b=j.childNodes[g-1];if(b){c.previousSibling=b;b.nextSibling=c;b.updateInfo(d,{isLast:false});b.triggerUIUpdate()}else{c.previousSibling=null}n.isFirst=g===0;n.index=g;c.updateInfo(d,n);if(j.isLeaf()){j.set("leaf",false)}if(!j.isLoaded()){j.set("loaded",true)}else{if(j.childNodes.length===1){j.triggerUIUpdate()}}if(g&&j.childNodes[g-1].isExpanded()){j.childNodes[g-1].cascadeBy(j.triggerUIUpdate)}if(!c.isLeaf()&&c.phantom){c.set("loaded",true)}if(l!==true){j.fireEventArgs("append",[j,c,g]);if(k){c.fireEventArgs("move",[c,k,j,g])}}j.callJoined("onNodeAppend",[c,g]);m=c}Ext.resumeLayouts(true);return m},getOwnerTree:function(){var b=this.getTreeStore();if(b){return b.ownerTree}},getTreeStore:function(){return this.store},removeChild:function(d,c,l,k){var j=this,h=j.indexOf(d),g,e,b;if(h===-1||(l!==true&&j.fireEventArgs("beforeremove",[j,d,!!k])===false)){return false}Ext.suspendLayouts();Ext.Array.erase(j.childNodes,h,1);if(j.firstChild===d){j.setFirstChild(d.nextSibling)}if(j.lastChild===d){j.setLastChild(d.previousSibling)}b=d.previousSibling;if(b){d.previousSibling.nextSibling=d.nextSibling}if(d.nextSibling){d.nextSibling.previousSibling=d.previousSibling;if(h===0){d.nextSibling.updateInfo(false,{isFirst:true})}for(g=h,e=j.childNodes.length;g<e;g++){j.childNodes[g].updateInfo(false,{index:g})}}else{if(b){b.updateInfo(false,{isLast:true});if(b.isExpanded()){b.cascadeBy(j.triggerUIUpdate)}else{b.triggerUIUpdate()}}}if(!j.childNodes.length){j.triggerUIUpdate()}Ext.resumeLayouts(true);if(l!==true){j.callJoined("beforeNodeRemove",[[d],!!k]);d.previousSibling=d.nextSibling=d.parentNode=null;j.fireEventArgs("remove",[j,d,!!k]);j.callJoined("onNodeRemove",[[d],!!k])}if(c){d.erase(true)}else{d.clear()}return d},copy:function(e,d){var h=this,c=h.callParent(arguments),b=h.childNodes?h.childNodes.length:0,g;if(d){for(g=0;g<b;g++){c.appendChild(h.childNodes[g].copy(undefined,true))}}return c},clear:function(b){var c=this;c.parentNode=c.previousSibling=c.nextSibling=null;if(b){c.firstChild=c.lastChild=null}},erase:function(c){var e=this,d=e.destroyOptions,b=e.childNodes,g=b.length,h;if(c===true){e.clear(true);for(h=0;h<g;h++){b[h].erase(true)}e.childNodes=null;delete e.destroyOptions;e.callParent([d])}else{e.destroyOptions=c;e.remove(true)}},insertBefore:function(c,h,m){var j=this,g=j.indexOf(h),k=c.parentNode,l=g,d,b,e;if(!h){return j.appendChild(c)}if(c===h){return false}c=j.createNode(c);if(m!==true&&j.fireEventArgs("beforeinsert",[j,c,h])===false){return false}if(k===j&&j.indexOf(c)<g){l--}if(k){if(m!==true&&c.fireEventArgs("beforemove",[c,k,j,g,h])===false){return false}k.removeChild(c,false,false,k.getTreeStore()===j.getTreeStore())}if(l===0){j.setFirstChild(c)}Ext.Array.splice(j.childNodes,l,0,c);c.parentNode=j;c.nextSibling=h;h.previousSibling=c;b=j.childNodes[l-1];if(b){c.previousSibling=b;b.nextSibling=c}else{c.previousSibling=null}c.updateInfo(false,{parentId:j.getId(),index:l,isFirst:l===0,isLast:false,depth:(j.data.depth||0)+1});for(e=l+1,d=j.childNodes.length;e<d;e++){j.childNodes[e].updateInfo(false,{index:e})}if(!j.isLoaded()){j.set("loaded",true)}else{if(j.childNodes.length===1){j.triggerUIUpdate()}}if(!c.isLeaf()&&c.phantom){c.set("loaded",true)}if(m!==true){j.fireEventArgs("insert",[j,c,h]);if(k){c.fireEventArgs("move",[c,k,j,l,h])}}j.callJoined("onNodeInsert",[c,l]);return c},insertChild:function(b,d){var c=this.childNodes[b];if(c){return this.insertBefore(d,c)}else{return this.appendChild(d)}},isLastVisible:function(){var d=this,b=d.data.isLast,c=d.nextSibling;if(!b&&d.getTreeStore().isFiltered()){while(c){if(c.data.visible){return false}c=c.nextSibling}return true}return b},remove:function(c,d){var e=this,b=e.parentNode;if(b){b.removeChild(e,c,d)}else{if(c){e.erase(true)}}return e},removeAll:function(d,e,k){var h=this,j=h.childNodes,c=0,b=j.length,g;if(!b){return}h.callJoined("beforeNodeRemove",[j,false]);for(;c<b;++c){g=j[c];g.previousSibling=g.nextSibling=g.parentNode=null;h.fireEventArgs("remove",[h,g,false]);if(d){g.erase(true)}else{g.removeAll(false,e,true)}}h.callJoined("onNodeRemove",[j,false]);h.firstChild=h.lastChild=null;h.childNodes.length=0;if(!k){h.triggerUIUpdate()}return h},getChildAt:function(b){return this.childNodes[b]},replaceChild:function(b,e,d){var c=e?e.nextSibling:null;this.removeChild(e,false,d);this.insertBefore(b,c,d);return e},indexOf:function(b){return Ext.Array.indexOf(this.childNodes,b)},indexOfId:function(e){var d=this.childNodes,b=d.length,c=0;for(;c<b;++c){if(d[c].getId()===e){return c}}return -1},getPath:function(e,d){e=e||this.idProperty;d=d||"/";var c=[this.get(e)],b=this.parentNode;while(b){c.unshift(b.get(e));b=b.parentNode}return d+c.join(d)},getDepth:function(){return this.get("depth")},bubble:function(d,c,b){var e=this;while(e){if(d.apply(c||e,b||[e])===false){break}e=e.parentNode}},cascade:function(){if(Ext.isDefined(Ext.global.console)){Ext.global.console.warn("Ext.data.Node: cascade has been deprecated. Please use cascadeBy instead.")}return this.cascadeBy.apply(this,arguments)},cascadeBy:function(h,d,b,k){var g=this;if(arguments.length===1&&!Ext.isFunction(h)){k=h.after;d=h.scope;b=h.args;h=h.before}if(!h||h.apply(d||g,b||[g])!==false){var j=g.childNodes,e=j.length,c;for(c=0;c<e;c++){j[c].cascadeBy.call(j[c],h,d,b,k)}if(k){k.apply(d||g,b||[g])}}},eachChild:function(e,d,b){var h=this.childNodes,g=h.length,c;for(c=0;c<g;c++){if(e.apply(d||this,b||[h[c]])===false){break}}},findChild:function(c,d,b){return this.findChildBy(function(){return this.get(c)==d},null,b)},findChildBy:function(j,h,c){var g=this.childNodes,b=g.length,e=0,k,d;for(;e<b;e++){k=g[e];if(j.call(h||k,k)===true){return k}else{if(c){d=k.findChildBy(j,h,c);if(d!==null){return d}}}}return null},contains:function(b){return b.isAncestor(this)},isAncestor:function(b){var c=this.parentNode;while(c){if(c===b){return true}c=c.parentNode}return false},sort:function(l,d,k){var h=this,j=h.childNodes,g=j.length,e,c,b={isFirst:true};if(g>0){if(!l){l=h.getTreeStore().getSortFn()}Ext.Array.sort(j,l);h.setFirstChild(j[0]);h.setLastChild(j[g-1]);for(e=0;e<g;e++){c=j[e];c.previousSibling=j[e-1];c.nextSibling=j[e+1];b.isLast=(e===g-1);b.index=e;c.updateInfo(false,b);b.isFirst=false;if(d&&!c.isLeaf()){c.sort(l,true,true)}}if(k!==true){h.fireEventArgs("sort",[h,j]);h.callJoined("onNodeSort",[j])}}},isExpanded:function(){return this.get("expanded")},isLoaded:function(){return this.get("loaded")},isLoading:function(){return this.get("loading")},isRoot:function(){return !this.parentNode},isVisible:function(){var b=this.parentNode;while(b){if(!b.isExpanded()){return false}b=b.parentNode}return true},expand:function(b,e,c){var d=this;if(!d.isLeaf()){if(d.isLoading()){d.on("expand",function(){d.expand(b,e,c)},d,{single:true})}else{if(!d.isExpanded()){if(d.fireEventArgs("beforeexpand",[d])!==false){d.callJoined("onBeforeNodeExpand",[d.onChildNodesAvailable,d,[b,e,c]])}}else{if(b){d.expandChildren(true,e,c)}else{Ext.callback(e,c||d,[d.childNodes])}}}}else{Ext.callback(e,c||d)}},onChildNodesAvailable:function(b,c,g,d){var e=this;Ext.suspendLayouts();e.set("expanded",true);e.callJoined("onNodeExpand",[b,false]);e.fireEventArgs("expand",[e,b]);if(c){e.expandChildren(true,g,d)}else{Ext.callback(g,d||e,[e.childNodes])}Ext.resumeLayouts(true)},expandChildren:function(e,m,n,g){var k=this,l,h,c,b,j,d;if(Ext.isBoolean(m)){l=m;m=n;n=g;g=l}if(g===undefined){g=k.getTreeStore().singleExpand}c=k.childNodes;b=[];j=g?Math.min(c.length,1):c.length;for(h=0;h<j;++h){d=c[h];if(!d.isLeaf()){b[b.length]=d}}j=b.length;for(h=0;h<j;++h){b[h].expand(e)}if(m){Ext.callback(m,n||k,[k.childNodes])}},collapse:function(d,k,g){var h=this,c=h.isExpanded(),b=h.childNodes.length,e,j;if(!h.isLeaf()&&((!c&&d)||h.fireEventArgs("beforecollapse",[h])!==false)){Ext.suspendLayouts();if(h.isExpanded()){if(d){j=function(){for(e=0;e<b;e++){h.childNodes[e].setCollapsed(true)}};if(k){k=Ext.Function.createSequence(j,Ext.Function.bind(k,g,[h.childNodes]))}else{k=j}}else{if(k){k=Ext.Function.bind(k,g,[h.childNodes])}}h.set("expanded",false);h.callJoined("onNodeCollapse",[h.childNodes,k,g]);h.fireEventArgs("collapse",[h,h.childNodes]);k=null}else{if(d){for(e=0;e<b;e++){h.childNodes[e].setCollapsed(true)}}}Ext.resumeLayouts(true)}Ext.callback(k,g||h,[h.childNodes])},setCollapsed:function(c){var e=this,b=e.childNodes.length,d;if(!e.isLeaf()&&e.fireEventArgs("beforecollapse",[e])!==false){e.data.expanded=false;e.fireEventArgs("collapse",[e,e.childNodes]);if(c){for(d=0;d<b;d++){e.childNodes[d].setCollapsed(true)}}}},collapseChildren:function(d,k,l){var j=this,g,b=j.childNodes,h=b.length,e=[],c;for(g=0;g<h;++g){c=b[g];if(!c.isLeaf()&&c.isLoaded()&&c.isExpanded()){e.push(c)}}h=e.length;if(h){for(g=0;g<h;++g){c=e[g];if(g===h-1){c.collapse(d,k,l)}else{c.collapse(d)}}}else{Ext.callback(k,l)}},fireEvent:function(b){return this.fireEventArgs(b,Ext.Array.slice(arguments,1))},fireEventArgs:function(c,d){var g=Ext.mixin.Observable.prototype.fireEventArgs,b,e;if(a[c]){for(e=this;b!==false&&e;e=e.parentNode){if(e.hasListeners&&e.hasListeners[c]){b=g.call(e,c,d)}}return b}else{return g.apply(this,arguments)}},serialize:function(){var c=Ext.data.writer.Json.prototype.getRecordData(this),g=this.childNodes,b=g.length,e,d;if(b>0){e=[];for(d=0;d<b;d++){e.push(g[d].serialize())}c.children=e}return c}}}}},0,0,0,0,0,0,[Ext.data,"NodeInterface"],0));(Ext.cmd.derive("Ext.data.NodeStore",Ext.data.Store,{isNodeStore:true,config:{node:null,recursive:false,rootVisible:false,folderSort:false},isExpandingOrCollapsing:0,getTotalCount:function(){return this.getCount()},afterEdit:function(a,b){if(this.getNode()&&b){if(b.indexOf("loaded")!==-1){return this.add(this.retrieveChildNodes(a))}if(b.indexOf("expanded")!==-1){return this.filter()}if(b.indexOf("sorted")!==-1){return this.sort()}}Ext.data.Store.prototype.afterEdit.apply(this,arguments)},onNodeAppend:function(a,b){this.add([b].concat(this.retrieveChildNodes(b)))},onNodeInsert:function(a,b){this.add([b].concat(this.retrieveChildNodes(b)))},onNodeRemove:function(a,b){this.remove([b].concat(this.retrieveChildNodes(b)))},onNodeExpand:function(b,a){this.loadRecords(a)},applyNode:function(a){if(a){Ext.data.NodeInterface.decorate(a)}return a},updateNode:function(b,d){var a=this,c;if(d&&!d.isDestroyed){d.un({append:"onNodeAppend",insert:"onNodeInsert",remove:"onNodeRemove",load:"onNodeLoad",scope:a});d.unjoin(a)}if(b){b.on({scope:a,append:"onNodeAppend",insert:"onNodeInsert",remove:"onNodeRemove",load:"onNodeLoad"});b.join(a);c=[];if(b.childNodes.length){c=c.concat(a.retrieveChildNodes(b))}if(a.getRootVisible()){c.push(b)}else{if(b.isLoaded()||b.isLoading()){b.set("expanded",true)}}a.getData().clear();a.fireEvent("clear",a);a.suspendEvents();a.add(c);a.resumeEvents();if(c.length===0){a.loaded=b.loaded=true}a.fireEvent("refresh",a,a.data)}},retrieveChildNodes:function(a){var d=this.getNode(),b=this.getRecursive(),c=[],e=a;if(!a.childNodes.length||(!b&&a!==d)){return c}if(!b){return a.childNodes}while(e){if(e._added){delete e._added;if(e===a){break}else{e=e.nextSibling||e.parentNode}}else{if(e!==a){c.push(e)}if(e.firstChild){e._added=true;e=e.firstChild}else{e=e.nextSibling||e.parentNode}}}return c},isVisible:function(b){var a=b.parentNode;if(!this.getRecursive()&&a!==this.getNode()){return false}while(a){if(!a.isExpanded()){return false}if(a===this.getNode()){break}a=a.parentNode}return true}},0,0,0,0,["store.node"],0,[Ext.data,"NodeStore"],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(a){this.initConfig(a)},getParam:function(a){var c=this.getParams(),b;if(c){return c[a]}return b},setParam:function(a,b){var c=this.getParams()||{};c[a]=b;this.setParams(c)}},1,0,0,0,0,0,[Ext.data,"Request"],0));(Ext.cmd.derive("Ext.data.StoreManager",Ext.util.MixedCollection,{alternateClassName:["Ext.StoreMgr","Ext.data.StoreMgr","Ext.StoreManager"],singleton:true,register:function(){for(var a=0,b;(b=arguments[a]);a++){this.add(b)}},unregister:function(){for(var a=0,b;(b=arguments[a]);a++){this.remove(this.lookup(b))}},lookup:function(c){if(Ext.isArray(c)){var b=["field1"],e=!Ext.isArray(c[0]),g=c,d,a;if(e){g=[];for(d=0,a=c.length;d<a;++d){g.push([c[d]])}}else{for(d=2,a=c[0].length;d<=a;++d){b.push("field"+d)}}return new Ext.data.ArrayStore({data:g,fields:b,autoDestroy:true,autoCreated:true,expanded:e})}if(Ext.isString(c)){return this.get(c)}else{return Ext.Factory.store(c)}},getKey:function(a){return a.storeId}},0,0,0,0,0,0,[Ext.data,"StoreManager",Ext,"StoreMgr",Ext.data,"StoreMgr",Ext,"StoreManager"],function(){Ext.regStore=function(d,c){var b;if(Ext.isObject(d)){c=d}else{if(Ext.data.StoreManager.containsKey(d)){return Ext.data.StoreManager.lookup(d)}c.storeId=d}if(c instanceof Ext.data.Store){b=c}else{b=new Ext.data.Store(c)}Ext.data.StoreManager.register(b);return b};Ext.getStore=function(b){return Ext.data.StoreManager.lookup(b)};var a=Ext.regStore("ext-empty-store",{proxy:"memory",useModelWarning:false});a.isEmptyStore=true}));(Ext.cmd.derive("Ext.mixin.Queryable",Ext.Base,{mixinId:"queryable",isQueryable:true,query:function(a){a=a||"*";return Ext.ComponentQuery.query(a,this.getQueryRoot())},queryBy:function(g,e){var c=[],b=this.getQueryRoot().getRefItems(true),d=0,a=b.length,h;for(;d<a;++d){h=b[d];if(g.call(e||h,h)!==false){c.push(h)}}return c},queryById:function(a){return this.down(Ext.makeIdSelector(a))},child:function(a){var b=this.getQueryRoot().getRefItems();if(a&&a.isComponent){return this.matchById(b,a.getItemId())}if(a){b=Ext.ComponentQuery.query(a,b)}if(b.length){return b[0]}return null},down:function(a){if(a&&a.isComponent){return this.matchById(this.getRefItems(true),a.getItemId())}a=a||"";return this.query(a)[0]||null},visitPreOrder:function(a,d,c,b){Ext.ComponentQuery._visit(true,a,this.getQueryRoot(),d,c,b)},visitPostOrder:function(a,d,c,b){Ext.ComponentQuery._visit(false,a,this.getQueryRoot(),d,c,b)},getRefItems:function(){return[]},getQueryRoot:function(){return this},privates:{matchById:function(b,e){var a=b.length,c,d;for(c=0;c<a;++c){d=b[c];if(d.getItemId()===e){return d}}return null}}},0,0,0,0,0,0,[Ext.mixin,"Queryable"],0));(Ext.cmd.derive("Ext.data.TreeModel",Ext.data.Model,{getRefItems:function(){return this.childNodes},getRefOwner:function(){return this.parentNode}},0,0,0,0,0,[[Ext.mixin.Queryable.prototype.mixinId||Ext.mixin.Queryable.$className,Ext.mixin.Queryable]],[Ext.data,"TreeModel"],function(){Ext.data.NodeInterface.decorate(this)}));(Ext.cmd.derive("Ext.data.TreeStore",Ext.data.NodeStore,{isTreeStore:true,config:{root:null,rootVisible:false,recursive:true,defaultRootProperty:"children"},clearOnLoad:true,clearRemovedOnLoad:true,nodeParam:"node",defaultRootId:"root",defaultRootText:"Root",fillCount:0,folderSort:false,constructor:function(a){var b=this;b.byIdMap={};b.byInternalIdMap={};Ext.data.Store.prototype.constructor.apply(this,[a]);if(Ext.isDefined(b.nodeParameter)){if(Ext.isDefined(Ext.global.console)){Ext.global.console.warn("Ext.data.TreeStore: nodeParameter has been deprecated. Please use nodeParam instead.")}b.nodeParam=b.nodeParameter;delete b.nodeParameter}},applyFields:function(a){var b=this;if(a){if(b.defaultRootProperty!==b.self.prototype.config.defaultRootProperty){a=a.concat({name:b.defaultRootProperty,type:"auto",defaultValue:null,persist:false})}b.setModel(Ext.define(null,{extend:"Ext.data.TreeModel",fields:a,proxy:b.getProxy()}));b.implicitModel=true}},onSorterEndUpdate:function(){var c=this,a=c.getSorters(),d=a.getRange(),b=c.getRoot();if(b&&d.length){if(c.getRemoteSort()){c.attemptLoad({callback:function(){c.fireEvent("sort",c,d)}})}else{b.sort(this.getSortFn(),true);c.fireEvent("datachanged",c);c.fireEvent("refresh",c);c.fireEvent("sort",c,d)}}else{c.fireEvent("sort",c,d)}},updateRemoteFilter:function(){var b=this.getData(),a=this.getFilters();b.setFilters(null);a.on("endupdate",this.onFilterEndUpdate,this)},updateRemoteSort:function(){var a=this.getData(),b=this.getSorters();a.setSorters(null);b.on("endupdate",this.onSorterEndUpdate,this)},getSortFn:function(){return this._sortFn||(this._sortFn=this.createSortFn())},createSortFn:function(){var b=this.sorters.getSortFn(),a=b;if(this.getFolderSort()){a=function(d,c){var e=d.get("leaf")?1:0,g=c.get("leaf")?1:0;return(e-g)||b(d,c)}}return a},updateRootVisible:function(b){var a=this.getRoot(),c;if(a){c=this.getData();if(b){c.insert(0,a)}else{c.remove(a)}}},updateTrackRemoved:function(a){Ext.data.ProxyStore.prototype.updateTrackRemoved.apply(this,arguments);this.removedNodes=this.removed;this.removed=null},getRemovedRecords:function(){return this.removedNodes},onDestroyRecords:function(b,a,c){if(c){this.removedNodes.length=0}},applyProxy:function(b){var a;b=Ext.data.ProxyStore.prototype.applyProxy.apply(this,arguments);if(b.setIdParam){b.setIdParam(this.nodeParam)}if(Ext.isEmpty(b.getReader().getRootProperty())){a=b.getReader();a.setRootProperty(this.defaultRootProperty);a.buildExtractors(true)}return b},applyModel:function(a){a=Ext.data.ProxyStore.prototype.applyModel.apply(this,arguments);if(!a){a=Ext.data.TreeModel}return a},updateModel:function(a){var b=a.prototype.isNode;Ext.data.NodeInterface.decorate(a);if(!b){this.getProxy().getReader().buildExtractors(true)}},onFilterEndUpdate:function(e){var d=this,b,c=e.length,h=e.getFilterFn(),a=d.getRoot(),g;if(c){g=[];a.cascadeBy({after:function(j){j.set("visible",h(j))}});for(b=0,c=a.childNodes.length;b<c;b++){if(a.childNodes[b].get("visible")){g.push(a.childNodes[b])}}}else{g=a.childNodes}d.onNodeFilter(a,g);a.fireEvent("filterchange",a,g);d.fireEvent("filterchange",d,e)},clearFilter:function(){var b=this,a=b.getRoot();Ext.data.AbstractStore.prototype.clearFilter.call(this);b.filterFn=null;a.cascadeBy(function(c){c.set("visible",true)});b.onNodeFilter(a,a.childNodes);a.fireEvent("filterchange",a,a.childNodes);b.fireEvent("filterchange",b,[])},onNodeFilter:function(a,e){var c=this,d=c.getData(),b=[];c.handleNodeExpand(a,e,b);c.suspendEvents();d.splice(0,d.getCount(),b);c.resumeEvents();c.fireEvent("datachanged",c);c.fireEvent("refresh",c)},onBeforeNodeExpand:function(b,m,n,h){var j=this,k,d,l,g,a,c,e;if(b.isLoaded()){c=[b.childNodes];if(h){c.push.apply(c,h)}Ext.callback(m,n||b,c)}else{if(b.isLoading()){j.on("load",function(){c=[b.childNodes];if(h){c.push.apply(c,h)}Ext.callback(m,n||b,c)},j,{single:true,priority:1001})}else{k=j.getProxy().getReader();d=b.getProxy();l=d?d.getReader():null;g=l&&l.initialConfig.rootProperty?l:k;if(a=g.getRoot(b.raw||b.data)){e=b.childType;j.fillNode(b,g.extractData(a,e?{model:e}:undefined));c=[b.childNodes];if(h){c.push.apply(c,h)}Ext.callback(m,n||b,c)}else{j.read({node:b,onChildNodesAvailable:function(){delete j.lastOptions.onChildNodesAvailable;c=[b.childNodes];if(h){c.push.apply(c,h)}Ext.callback(m,n||b,c)}})}}}},onNodeExpand:function(d,b){var e=this,a=e.indexOf(d)+1,c=[];e.handleNodeExpand(d,b,c);if(!e.refreshCounter&&d.isRoot()&&!d.get("visible")){e.loadRecords(c)}else{e.insert(a,c)}},handleNodeExpand:function(e,b,d){var h=this,g=b?b.length:0,c,a;if(e!==this.getRoot()&&!h.isVisible(e)){return}if(g){for(c=0;c<g;c++){a=b[c];if(a.get("visible")){d.push(a);if(a.isExpanded()){if(a.isLoaded()){h.handleNodeExpand(a,a.childNodes,d)}else{a.set("expanded",false);a.expand()}}}}}},onNodeCollapse:function(e,c,j,k){var d=this,h=d.indexOf(e)+1,b,a,g,l;if(!d.recursive&&e!==d.getRoot()){return}if(!d.remoteFilter&&d.getFilters().getCount()){c=Ext.Array.filter(c,d.filterVisible)}if(c.length&&d.data.contains(c[0])){b=e;while(b.parentNode){for(g=b.nextSibling;g&&!g.get("visible");g=g.nextSibling){}if(g){l=true;a=d.indexOf(g);break}else{b=b.parentNode}}if(!l){a=d.getCount()}d.removeAt(h,a-h)}Ext.callback(j,k)},getNewRecords:function(){return Ext.Array.filter(Ext.Object.getValues(this.byIdMap),this.filterNew)},getUpdatedRecords:function(){return Ext.Array.filter(Ext.Object.getValues(this.byIdMap),this.filterUpdated)},beforeNodeRemove:function(b,e){if(!Ext.isArray(e)){e=[e]}var d,a=e.length,c;for(d=0;d<a;d++){c=e[d];if(!c.isLeaf()&&c.isExpanded()){this.onNodeCollapse(c,c.childNodes)}}},onNodeRemove:function(c,k,j){var h=this,e=h.removedNodes,g=k.length,b,a,d;h.remove(k,j);for(b=0;b<g;b++){a=k[b];d=!a.phantom;if(e&&!j&&d&&!h.loading){a.removedFrom=h.indexOf(a);e.push(a)}h.unregisterNode(a,true)}},onNodeAppend:function(b,c,a){this.onNodeInsert(b,c,a)},onNodeInsert:function(o,a,h){var k=this,j,p,l,b,m,g,c=a.raw||a.data,n,e,d;if(k.filterFn){e=k.filterFn(a);a.set("visible",e);if(e){o.set("visible",k.filterFn(o))}}k.registerNode(a,true);a.join(k);k.beginUpdate();if(k.isVisible(a)){if(h===0||!a.previousSibling){j=o}else{for(p=a.previousSibling;p&&!p.get("visible");p=p.previousSibling){}while(p.isExpanded()&&p.lastChild){p=p.lastChild}j=p}k.insert(k.indexOf(j)+1,a);if(!a.isLeaf()&&a.isExpanded()){if(a.isLoaded()){k.onNodeExpand(a,a.childNodes)}else{if(!k.fillCount){a.set("expanded",false);a.expand()}}}}else{k.needsSync=k.needsSync||a.phantom||a.dirty}if(!a.isLeaf()&&!a.isLoaded()&&!k.lazyFill){l=k.getProxy().getReader();b=a.getProxy();m=b?b.getReader():null;g=m&&m.initialConfig.rootProperty?m:l;n=g.getRoot(c);if(n){d=a.childType;k.fillNode(a,g.extractData(n,d?{model:d}:undefined))}}k.endUpdate()},afterEdit:function(b,a){if(this.getData().indexOf(b)!==-1){Ext.data.NodeStore.prototype.afterEdit.apply(this,arguments)}},registerNode:function(g,a){var e=this,c,d,b;e.byIdMap[g.id]=g;e.byInternalIdMap[g.internalId]=g;if(a===true){c=g.childNodes;d=c.length;for(b=0;b<d;b++){e.registerNode(c[b],true)}}},unregisterNode:function(g,a){var e=this,c,d,b;delete e.byIdMap[g.id];delete e.byInternalIdMap[g.internalId];if(a===true){c=g.childNodes;d=c.length;for(b=0;b<d;b++){e.unregisterNode(c[b],true)}}},onNodeSort:function(b,c){var a=this;a.suspendAutoSync();if((a.indexOf(b)!==-1||(b===a.getRoot()&&!a.rootVisible)&&b.isExpanded())){Ext.suspendLayouts();a.onNodeCollapse(b,c);a.onNodeExpand(b,c);Ext.resumeLayouts(true)}a.resumeAutoSync(a.autoSync)},applyRoot:function(d){var b=this,c=b.getModel(),a=c.prototype.idProperty;if(d&&!d.isNode){d=Ext.apply({text:b.defaultRootText,root:true,isFirst:true,isLast:true,depth:0,index:0,parentId:null,allowDrag:false},d);if(b.defaultRootId&&d[a]===undefined){d[a]=b.defaultRootId}d=new c(d)}return d},updateRoot:function(d,a){var b=this,c;b.byIdMap={};b.byInternalIdMap={};b.getTrackRemoved();b.suspendEvents();b.getData().clear();if(d){if(d.fireEventArgs("beforeappend",[null,d])===false){d=null}else{if(c=d.parentNode){if(!c.removeChild(d,false,false,c.getTreeStore()===b)){return}}else{if((c=d.getTreeStore())&&c!==b&&d===c.getRoot()){c.setRoot(null)}}d.set("root",true);d.updateInfo(true,{isFirst:true,isLast:true,depth:0,index:0,parentId:null});d.fireEvent("append",null,d,false);d.fireEvent("rootchange",d);b.onNodeAppend(null,d,0)}}b.fireEvent("rootchange",d,a);if(a&&a.isModel){a.set("root",false);b.remove(a);a.fireEvent("remove",null,a,false);a.fireEvent("rootchange",null);a.unjoin(b)}b.resumeEvents();if(d&&!d.isLoaded()&&(b.autoLoad===true||d.isExpanded())){d.data.expanded=false;d.expand()}else{b.fireEvent("datachanged",b);b.fireEvent("refresh",b)}return d},getNodeById:function(b){var a=this.byIdMap[b];if(a&&a.data.visible){return a}},load:function(b){b=b||{};b.params=b.params||{};var g=this,e=b.node||g.getRoot(),c=g.getProxy(),h=b.callback,d=b.scope,a;if(!e){g.setRoot({expanded:true});return}if(e.data.expanded){e.data.loaded=false;if(g.clearOnLoad){e.data.expanded=false}b.callback=function(){if(!g.clearOnLoad){e.collapse()}e.expand();Ext.callback(h,d,arguments)}}b.id=e.getId();b=Ext.apply({filters:g.getFilters().items,sorters:g.getSorters().items,node:b.node||e,internalScope:g,internalCallback:g.onProxyLoad},b);g.lastOptions=Ext.apply({},b);a=c.createOperation("read",b);if(g.fireEvent("beforeload",g,a)!==false){g.loading=true;if(g.clearOnLoad){if(g.clearRemovedOnLoad){g.clearRemoved(e)}e.removeAll(false)}a.execute()}if(g.loading&&e){e.set("loading",true)}return g},clearRemoved:function(b){var k=this,e=k.removedNodes,a=b.getId(),d=e.length,c=d,n={},h=[],m={},j,g,l;if(b===k.getRoot()){k.removedNodes=[];return}for(;c--;){j=e[c];m[j.getId()]=j}for(c=d;c--;){j=e[c];g=j;while(g&&g.getId()!==a){l=g.get("parentId");g=g.parentNode||k.getNodeById(l)||m[l]}if(g){n[j.getId()]=j}}for(c=0;c<d;c++){j=e[c];if(!n[j.getId()]){h.push(j)}}k.removedNodes=h},fillNode:function(c,d){var h=this,b=d?d.length:0,g=h.getSorters(),e,j=false,a=h.sortOnLoad&&b>1&&!h.remoteSort&&g&&g.items&&g.items.length,l,k;if(b){if(!h.remoteFilter&&h.getFilters().getCount()){d[0].set("visible",h.filterFn(d[0]))}for(e=1;!j&&e<b;e++){l=d[e];k=d[e-1];if(h.filterFn){l.set("visible",h.filterFn(l))}j=l.data.index!==k.data.index}if(a){if(j){h.indexSorter=g.insert(0,h.indexSorter)}Ext.Array.sort(d,g.getSortFn());if(j){g.remove(h.indexSorter)}}else{if(j){Ext.Array.sort(d,h.sortByIndex)}}}c.set("loaded",true);if(d.length){c.appendChild(d,undefined,true)}return d},beginFill:function(){var a=this;if(!a.fillCount++){a.beginUpdate();a.suspendEvents();a.suspendAutoSync();a.fillArray=[]}},endFill:function(e,b){var g=this,d,a,c;g.fillArray.push(b);if(!--g.fillCount){g.resumeAutoSync();g.resumeEvents();for(d=0,a=g.fillArray.length;d<a;d++){c=g.indexOf(g.fillArray[d][0]);if(c!==-1){g.fireEvent("add",g,g.fillArray[d],c)}}g.fillArray=null;g.endUpdate()}},sortByIndex:function(b,a){return b.data.index-a.data.index},onIdChanged:function(d,g,b){var e=d.childNodes,a=e&&e.length,c;Ext.data.Store.prototype.onIdChanged.apply(this,arguments);delete this.byIdMap[g];this.byIdMap[b]=d;for(c=0;c<a;c++){e[c].set("parentId",b)}},onProxyLoad:function(b){var h=this,d=b.initialConfig,j=b.wasSuccessful(),a=b.getRecords(),g=d.node,e=b.getScope()||h,c=[a,b,j];if(h.isDestroyed){return}h.loading=false;g.set("loading",false);if(j){if(!h.clearOnLoad){a=h.cleanRecords(g,a)}a=h.fillNode(g,a)}Ext.callback(d.onChildNodesAvailable,e,c);h.fireEvent("load",h,b.node,a,j)},cleanRecords:function(g,b){var e={},j=g.childNodes,d=0,a=j.length,c=[],h;for(;d<a;++d){e[j[d].getId()]=true}for(d=0,a=b.length;d<a;++d){h=b[d];if(!e[h.getId()]){c.push(h)}}return c},removeAll:function(){this.suspendEvents();this.setRoot(null);this.resumeEvents();Ext.data.Store.prototype.removeAll.call(this)},doSort:function(a){var b=this;if(b.remoteSort){b.load()}else{b.tree.sort(a,true);b.fireEvent("datachanged",b);b.fireEvent("refresh",b)}b.fireEvent("sort",b,b.sorters.getRange())},filterVisible:function(a){return a.get("visible")},isVisible:function(c){var a=c.parentNode,d=c.data.visible,b=this.getRoot();while(d&&a){d=a.data.expanded&&a.data.visible;a=a.parentNode}return d&&!(c===b&&!this.rootVisible)},getRootNode:function(){return this.getRoot()},setRootNode:function(a){this.setRoot(a);return this.getRoot()},deprecated:{5:{properties:{tree:null}}}},1,0,0,0,["store.tree"],0,[Ext.data,"TreeStore"],function(){var a=this.prototype;a.indexSorter=new Ext.util.Sorter({sorterFn:a.sortByIndex})}));(Ext.cmd.derive("Ext.data.Types",Ext.Base,{singleton:true},0,0,0,0,0,0,[Ext.data,"Types"],function(b){var a=Ext.data.SortTypes;Ext.apply(b,{stripRe:/[\$,%]/g,AUTO:{sortType:a.none,type:"auto"},STRING:{convert:function(d){var c=this.getAllowNull()?null:"";return(d===undefined||d===null)?c:String(d)},sortType:a.asUCString,type:"string"},INT:{convert:function(c){if(typeof c=="number"){return parseInt(c)}return c!==undefined&&c!==null&&c!==""?parseInt(String(c).replace(b.stripRe,""),10):(this.getAllowNull()?null:0)},sortType:a.none,type:"int"},FLOAT:{convert:function(c){if(typeof c==="number"){return c}return c!==undefined&&c!==null&&c!==""?parseFloat(String(c).replace(b.stripRe,""),10):(this.getAllowNull()?null:0)},sortType:a.none,type:"float"},BOOL:{convert:function(c){if(typeof c==="boolean"){return c}if(this.getAllowNull()&&(c===undefined||c===null||c==="")){return null}return c==="true"||c==1},sortType:a.none,type:"bool"},DATE:{convert:function(d){var e=this.getDateReadFormat()||this.getDateFormat(),c;if(!d){return null}if(d instanceof Date){return d}if(e){return Ext.Date.parse(d,e)}c=Date.parse(d);return c?new Date(c):null},sortType:a.asDate,type:"date"}});b.BOOLEAN=b.BOOL;b.INTEGER=b.INT;b.NUMBER=b.FLOAT}));(Ext.cmd.derive("Ext.data.Validation",Ext.data.Model,{isValidation:true,syncGeneration:0,attach:function(a){this.record=a;delete this.data.id},getValidation:function(){return null},isValid:function(){var a=this;if(a.syncGeneration!==a.record.generation){a.refresh()}return a.dirty},refresh:function(b){var v=this,w=v.data,d=v.record,l=d.fields,p=d.generation,n=d.validators,u=d.data,e,k=d.validationSeparator,c=null,h,m,a,t,q,o,s,r,g,y,x;if(b||v.syncGeneration!==p){v.syncGeneration=p;for(q=0,r=l.length;q<r;++q){a=l[q];x=a.name;y=u[x];e=a.defaultInvalidMessage;m=0;if(!(x in w)){w[x]=h=true}else{h=w[x]}if(a.validate!==Ext.emptyFn){g=a.validate(y,k);if(g!==true){m=g||e}}if((k||!m)&&n){t=n[x];if(t){for(o=0,s=t.length;o<s;++o){g=t[o].validate(y,v);if(g!==true){if(m){m+=k;m+=g||e}else{m=g||e;if(!k){break}}}}}}if(!m){m=true}if(m!==h){(c||(c={}))[x]=m}}if(c){v.set(c)}}}},0,0,0,0,0,0,[Ext.data,"Validation"],0));(Ext.cmd.derive("Ext.dom.Query",Ext.Base,function(){var DQ,doc=document,cache,simpleCache,valueCache,useClassList=!!doc.documentElement.classList,useElementPointer=!!doc.documentElement.firstElementChild,useChildrenCollection=(function(){var d=doc.createElement("div");d.innerHTML="<!-- -->text<!-- -->";return d.children&&(d.children.length===0)})(),nonSpace=/\S/,trimRe=/^\s+|\s+$/g,tplRe=/\{(\d+)\}/g,modeRe=/^(\s?[\/>+~]\s?|\s|$)/,tagTokenRe=/^(#)?([\w\-\*\|\\]+)/,nthRe=/(\d*)n\+?(\d*)/,nthRe2=/\D/,startIdRe=/^\s*#/,isIE=window.ActiveXObject?true:false,key=30803,longHex=/\\([0-9a-fA-F]{6})/g,shortHex=/\\([0-9a-fA-F]{1,6})\s{0,1}/g,nonHex=/\\([^0-9a-fA-F]{1})/g,escapes=/\\/g,num,hasEscapes,supportsColonNsSeparator=(function(){var xmlDoc,xmlString='<r><a:b xmlns:a="n"></a:b></r>';if(window.DOMParser){xmlDoc=(new DOMParser()).parseFromString(xmlString,"application/xml")}else{xmlDoc=new ActiveXObject("Microsoft.XMLDOM");xmlDoc.loadXML(xmlString)}return !!xmlDoc.getElementsByTagName("a:b").length})(),longHexToChar=function($0,$1){return String.fromCharCode(parseInt($1,16))},shortToLongHex=function($0,$1){while($1.length<6){$1="0"+$1}return"\\"+$1},charToLongHex=function($0,$1){num=$1.charCodeAt(0).toString(16);if(num.length===1){num="0"+num}return"\\0000"+num},unescapeCssSelector=function(selector){return(hasEscapes)?selector.replace(longHex,longHexToChar):selector},setupEscapes=function(path){hasEscapes=(path.indexOf("\\")>-1);if(hasEscapes){path=path.replace(shortHex,shortToLongHex).replace(nonHex,charToLongHex).replace(escapes,"\\\\")}return path};eval("var batch = 30803, child, next, prev, byClassName;");child=useChildrenCollection?function child(parent,index){return parent.children[index]}:function child(parent,index){var i=0,n=parent.firstChild;while(n){if(n.nodeType==1){if(++i==index){return n}}n=n.nextSibling}return null};next=useElementPointer?function(n){return n.nextElementSibling}:function(n){while((n=n.nextSibling)&&n.nodeType!=1){}return n};prev=useElementPointer?function(n){return n.previousElementSibling}:function(n){while((n=n.previousSibling)&&n.nodeType!=1){}return n};function children(parent){var n=parent.firstChild,nodeIndex=-1,nextNode;while(n){nextNode=n.nextSibling;if(n.nodeType==3&&!nonSpace.test(n.nodeValue)){parent.removeChild(n)}else{n.nodeIndex=++nodeIndex}n=nextNode}return this}byClassName=useClassList?function(nodeSet,cls){cls=unescapeCssSelector(cls);if(!cls){return nodeSet}var result=[],ri=-1,i,ci,classList;for(i=0;ci=nodeSet[i];i++){classList=ci.classList;if(classList){if(classList.contains(cls)){result[++ri]=ci}}else{if((" "+ci.className+" ").indexOf(cls)!==-1){result[++ri]=ci}}}return result}:function(nodeSet,cls){cls=unescapeCssSelector(cls);if(!cls){return nodeSet}var result=[],ri=-1,i,ci;for(i=0;ci=nodeSet[i];i++){if((" "+ci.className+" ").indexOf(cls)!==-1){result[++ri]=ci}}return result};function attrValue(n,attr){if(!n.tagName&&typeof n.length!="undefined"){n=n[0]}if(!n){return null}if(attr=="for"){return n.htmlFor}if(attr=="class"||attr=="className"){return n.className}return n.getAttribute(attr)||n[attr]}function getNodes(ns,mode,tagName){var result=[],ri=-1,cs,i,ni,j,ci,cn,utag,n,cj;if(!ns){return result}tagName=tagName.replace("|",":")||"*";if(typeof ns.getElementsByTagName!="undefined"){ns=[ns]}if(!mode){tagName=unescapeCssSelector(tagName);if(!supportsColonNsSeparator&&DQ.isXml(ns[0])&&tagName.indexOf(":")!==-1){for(i=0;ni=ns[i];i++){cs=ni.getElementsByTagName(tagName.split(":").pop());for(j=0;ci=cs[j];j++){if(ci.tagName===tagName){result[++ri]=ci}}}}else{for(i=0;ni=ns[i];i++){cs=ni.getElementsByTagName(tagName);for(j=0;ci=cs[j];j++){result[++ri]=ci}}}}else{if(mode=="/"||mode==">"){utag=tagName.toUpperCase();for(i=0;ni=ns[i];i++){cn=ni.childNodes;for(j=0;cj=cn[j];j++){if(cj.nodeName==utag||cj.nodeName==tagName||tagName=="*"){result[++ri]=cj}}}}else{if(mode=="+"){utag=tagName.toUpperCase();for(i=0;n=ns[i];i++){while((n=n.nextSibling)&&n.nodeType!=1){}if(n&&(n.nodeName==utag||n.nodeName==tagName||tagName=="*")){result[++ri]=n}}}else{if(mode=="~"){utag=tagName.toUpperCase();for(i=0;n=ns[i];i++){while((n=n.nextSibling)){if(n.nodeName==utag||n.nodeName==tagName||tagName=="*"){result[++ri]=n}}}}}}}return result}function concat(a,b){a.push.apply(a,b);return a}function byTag(cs,tagName){if(cs.tagName||cs===doc){cs=[cs]}if(!tagName){return cs}var result=[],ri=-1,i,ci;tagName=tagName.toLowerCase();for(i=0;ci=cs[i];i++){if(ci.nodeType==1&&ci.tagName.toLowerCase()==tagName){result[++ri]=ci}}return result}function byId(cs,id){id=unescapeCssSelector(id);if(cs.tagName||cs===doc){cs=[cs]}if(!id){return cs}var result=[],ri=-1,i,ci;for(i=0;ci=cs[i];i++){if(ci&&ci.id==id){result[++ri]=ci;return result}}return result}function byAttribute(cs,attr,value,op,custom){var result=[],ri=-1,useGetStyle=custom=="{",fn=DQ.operators[op],a,xml,hasXml,i,ci;value=unescapeCssSelector(value);for(i=0;ci=cs[i];i++){if(ci.nodeType===1){if(!hasXml){xml=DQ.isXml(ci);hasXml=true}if(!xml){if(useGetStyle){a=DQ.getStyle(ci,attr)}else{if(attr=="class"||attr=="className"){a=ci.className}else{if(attr=="for"){a=ci.htmlFor}else{if(attr=="href"){a=ci.getAttribute("href",2)}else{a=ci.getAttribute(attr)}}}}}else{a=ci.getAttribute(attr)}if((fn&&fn(a,value))||(!fn&&a)){result[++ri]=ci}}}return result}function byPseudo(cs,name,value){value=unescapeCssSelector(value);return DQ.pseudos[name](cs,value)}function nodupIEXml(cs){var d=++key,r,i,len,c;cs[0].setAttribute("_nodup",d);r=[cs[0]];for(i=1,len=cs.length;i<len;i++){c=cs[i];if(!c.getAttribute("_nodup")!=d){c.setAttribute("_nodup",d);r[r.length]=c}}for(i=0,len=cs.length;i<len;i++){cs[i].removeAttribute("_nodup")}return r}function nodup(cs){if(!cs){return[]}var len=cs.length,c,i,r=cs,cj,ri=-1,d,j;if(!len||typeof cs.nodeType!="undefined"||len==1){return cs}if(isIE&&typeof cs[0].selectSingleNode!="undefined"){return nodupIEXml(cs)}d=++key;cs[0]._nodup=d;for(i=1;c=cs[i];i++){if(c._nodup!=d){c._nodup=d}else{r=[];for(j=0;j<i;j++){r[++ri]=cs[j]}for(j=i+1;cj=cs[j];j++){if(cj._nodup!=d){cj._nodup=d;r[++ri]=cj}}return r}}return r}function quickDiffIEXml(c1,c2){var d=++key,r=[],i,len;for(i=0,len=c1.length;i<len;i++){c1[i].setAttribute("_qdiff",d)}for(i=0,len=c2.length;i<len;i++){if(c2[i].getAttribute("_qdiff")!=d){r[r.length]=c2[i]}}for(i=0,len=c1.length;i<len;i++){c1[i].removeAttribute("_qdiff")}return r}function quickDiff(c1,c2){var len1=c1.length,d=++key,r=[],i,len;if(!len1){return c2}if(isIE&&typeof c1[0].selectSingleNode!="undefined"){return quickDiffIEXml(c1,c2)}for(i=0;i<len1;i++){c1[i]._qdiff=d}for(i=0,len=c2.length;i<len;i++){if(c2[i]._qdiff!=d){r[r.length]=c2[i]}}return r}function quickId(ns,mode,root,id){if(ns==root){id=unescapeCssSelector(id);var d=root.ownerDocument||root;return d.getElementById(id)}ns=getNodes(ns,mode,"*");return byId(ns,id)}return{singleton:true,alternateClassName:["Ext.core.DomQuery","Ext.DomQuery"],_init:function(){DQ=this;DQ.operators=Ext.Object.chain(Ext.util.Operators);DQ._cache=cache=new Ext.util.LruCache({maxSize:200});DQ._valueCache=valueCache=new Ext.util.LruCache({maxSize:200});DQ._simpleCache=simpleCache=new Ext.util.LruCache({maxSize:200})},clearCache:function(){cache.clear();valueCache.clear();simpleCache.clear()},getStyle:function(el,name){return Ext.fly(el,"_DomQuery").getStyle(name)},compile:function(path,type){type=type||"select";var fn=["var f = function(root) {\n var mode; ++batch; var n = root || document;\n"],lastPath,matchers=DQ.matchers,matchersLn=matchers.length,modeMatch,lmode=path.match(modeRe),tokenMatch,matched,j,t,m;path=setupEscapes(path);if(lmode&&lmode[1]){fn[fn.length]='mode="'+lmode[1].replace(trimRe,"")+'";';path=path.replace(lmode[1],"")}while(path.substr(0,1)=="/"){path=path.substr(1)}while(path&&lastPath!=path){lastPath=path;tokenMatch=path.match(tagTokenRe);if(type=="select"){if(tokenMatch){if(tokenMatch[1]=="#"){fn[fn.length]='n = quickId(n, mode, root, "'+tokenMatch[2]+'");'}else{fn[fn.length]='n = getNodes(n, mode, "'+tokenMatch[2]+'");'}path=path.replace(tokenMatch[0],"")}else{if(path.substr(0,1)!="@"){fn[fn.length]='n = getNodes(n, mode, "*");'}}}else{if(tokenMatch){if(tokenMatch[1]=="#"){fn[fn.length]='n = byId(n, "'+tokenMatch[2]+'");'}else{fn[fn.length]='n = byTag(n, "'+tokenMatch[2]+'");'}path=path.replace(tokenMatch[0],"")}}while(!(modeMatch=path.match(modeRe))){matched=false;for(j=0;j<matchersLn;j++){t=matchers[j];m=path.match(t.re);if(m){fn[fn.length]=t.select.replace(tplRe,function(x,i){return m[i]});path=path.replace(m[0],"");matched=true;break}}if(!matched){Ext.Error.raise({sourceClass:"Ext.DomQuery",sourceMethod:"compile",msg:'Error parsing selector. Parsing failed at "'+path+'"'})}}if(modeMatch[1]){fn[fn.length]='mode="'+modeMatch[1].replace(trimRe,"")+'";';path=path.replace(modeMatch[1],"")}}fn[fn.length]="return nodup(n);\n}";eval(fn.join(""));return f},jsSelect:function(path,root,type){root=root||doc;if(typeof root=="string"){root=doc.getElementById(root)}var paths=Ext.splitAndUnescape(path,","),results=[],query,i,len,subPath,result;for(i=0,len=paths.length;i<len;i++){subPath=paths[i].replace(trimRe,"");query=cache.get(subPath);if(!query){query=DQ.compile(subPath,type);if(!query){Ext.Error.raise({sourceClass:"Ext.DomQuery",sourceMethod:"jsSelect",msg:subPath+" is not a valid selector"})}cache.add(subPath,query)}else{setupEscapes(subPath)}result=query(root);if(result&&result!==doc){results=results.concat(result)}}if(paths.length>1){return nodup(results)}return results},isXml:function(el){var docEl=(el?el.ownerDocument||el:0).documentElement;return docEl?docEl.nodeName!=="HTML":false},select:doc.querySelectorAll?function(path,root,type,single){root=root||doc;if(!DQ.isXml(root)){try{if(root.parentNode&&(root.nodeType!==9)&&path.indexOf(",")===-1&&!startIdRe.test(path)){path=Ext.makeIdSelector(Ext.id(root))+" "+path;root=root.parentNode}return single?[root.querySelector(path)]:Ext.Array.toArray(root.querySelectorAll(path))}catch(e){}}return DQ.jsSelect.call(this,path,root,type)}:function(path,root,type){return DQ.jsSelect.call(this,path,root,type)},selectNode:function(path,root){return Ext.DomQuery.select(path,root,null,true)[0]},selectValue:function(path,root,defaultValue){path=path.replace(trimRe,"");var query=valueCache.get(path),n,v;if(!query){query=DQ.compile(path,"select");valueCache.add(path,query)}else{setupEscapes(path)}n=query(root);return DQ.getNodeValue(n[0]?n[0]:n)},getNodeValue:function(node,defaultValue){if(typeof node.normalize=="function"){node.normalize()}var v=(node&&node.firstChild?node.firstChild.nodeValue:null);return((v===null||v===undefined||v==="")?defaultValue:v)},selectNumber:function(path,root,defaultValue){var v=DQ.selectValue(path,root,defaultValue||0);return parseFloat(v)},is:function(el,ss){if(typeof el=="string"){el=doc.getElementById(el)}var isArray=Ext.isArray(el),result=DQ.filter(isArray?el:[el],ss);return isArray?(result.length==el.length):(result.length>0)},filter:function(els,ss,nonMatches){ss=ss.replace(trimRe,"");var query=simpleCache.get(ss),result;if(!query){query=DQ.compile(ss,"simple");simpleCache.add(ss,query)}else{setupEscapes(ss)}result=query(els);return nonMatches?quickDiff(result,els):result},matchers:[{re:/^\.([\w\-\\]+)/,select:useClassList?'n = byClassName(n, "{1}");':'n = byClassName(n, " {1} ");'},{re:/^\:([\w\-]+)(?:\(((?:[^\s>\/]*|.*?))\))?/,select:'n = byPseudo(n, "{1}", "{2}");'},{re:/^(?:([\[\{])(?:@)?([\w\-]+)\s?(?:(=|.=)\s?['"]?(.*?)["']?)?[\]\}])/,select:'n = byAttribute(n, "{2}", "{4}", "{3}", "{1}");'},{re:/^#([\w\-\\]+)/,select:'n = byId(n, "{1}");'},{re:/^@([\w\-\.]+)/,select:'return {firstChild:{nodeValue:attrValue(n, "{1}")}};'}],pseudos:{"first-child":function(c){var r=[],ri=-1,n,i,ci;for(i=0;(ci=n=c[i]);i++){while((n=n.previousSibling)&&n.nodeType!=1){}if(!n){r[++ri]=ci}}return r},"last-child":function(c){var r=[],ri=-1,n,i,ci;for(i=0;(ci=n=c[i]);i++){while((n=n.nextSibling)&&n.nodeType!=1){}if(!n){r[++ri]=ci}}return r},"nth-child":function(c,a){var r=[],ri=-1,m=nthRe.exec(a=="even"&&"2n"||a=="odd"&&"2n+1"||!nthRe2.test(a)&&"n+"+a||a),f=(m[1]||1)-0,l=m[2]-0,i,n,j,cn,pn;for(i=0;n=c[i];i++){pn=n.parentNode;if(batch!=pn._batch){j=0;for(cn=pn.firstChild;cn;cn=cn.nextSibling){if(cn.nodeType==1){cn.nodeIndex=++j}}pn._batch=batch}if(f==1){if(l===0||n.nodeIndex==l){r[++ri]=n}}else{if((n.nodeIndex+l)%f===0){r[++ri]=n}}}return r},"only-child":function(c){var r=[],ri=-1,i,ci;for(i=0;ci=c[i];i++){if(!prev(ci)&&!next(ci)){r[++ri]=ci}}return r},empty:function(c){var r=[],ri=-1,i,ci,cns,j,cn,empty;for(i=0;ci=c[i];i++){cns=ci.childNodes;j=0;empty=true;while(cn=cns[j]){++j;if(cn.nodeType==1||cn.nodeType==3){empty=false;break}}if(empty){r[++ri]=ci}}return r},contains:function(c,v){var r=[],ri=-1,i,ci;for(i=0;ci=c[i];i++){if((ci.textContent||ci.innerText||ci.text||"").indexOf(v)!=-1){r[++ri]=ci}}return r},nodeValue:function(c,v){var r=[],ri=-1,i,ci;for(i=0;ci=c[i];i++){if(ci.firstChild&&ci.firstChild.nodeValue==v){r[++ri]=ci}}return r},checked:function(c){var r=[],ri=-1,i,ci;for(i=0;ci=c[i];i++){if(ci.checked===true){r[++ri]=ci}}return r},not:function(c,ss){return DQ.filter(c,ss,true)},any:function(c,selectors){var ss=selectors.split("|"),r=[],ri=-1,s,i,ci,j;for(i=0;ci=c[i];i++){for(j=0;s=ss[j];j++){if(DQ.is(ci,s)){r[++ri]=ci;break}}}return r},odd:function(c){return this["nth-child"](c,"odd")},even:function(c){return this["nth-child"](c,"even")},nth:function(c,a){return c[a-1]||[]},first:function(c){return c[0]||[]},last:function(c){return c[c.length-1]||[]},has:function(c,ss){var s=DQ.select,r=[],ri=-1,i,ci;for(i=0;ci=c[i];i++){if(s(ss,ci).length>0){r[++ri]=ci}}return r},next:function(c,ss){var is=DQ.is,r=[],ri=-1,i,ci,n;for(i=0;ci=c[i];i++){n=next(ci);if(n&&is(n,ss)){r[++ri]=ci}}return r},prev:function(c,ss){var is=DQ.is,r=[],ri=-1,i,ci,n;for(i=0;ci=c[i];i++){n=prev(ci);if(n&&is(n,ss)){r[++ri]=ci}}return r},focusable:function(candidates){var len=candidates.length,results=[],i=0,c;for(;i<len;i++){c=candidates[i];if(Ext.fly(c,"_DomQuery").isFocusable()){results.push(c)}}return results},visible:function(candidates,deep){var len=candidates.length,results=[],i=0,c;for(;i<len;i++){c=candidates[i];if(Ext.fly(c,"_DomQuery").isVisible(deep)){results.push(c)}}return results},isScrolled:function(c){var r=[],ri=-1,i,ci,s;for(i=0;ci=c[i];i++){s=Ext.fly(ci,"_DomQuery").getScroll();if(s.top>0||s.left>0){r[++ri]=ci}}return r}}}},0,0,0,0,0,0,[Ext.dom,"Query",Ext.core,"DomQuery",Ext,"DomQuery"],function(){this._init()}));(Ext.cmd.derive("Ext.data.reader.Xml",Ext.data.reader.Reader,{alternateClassName:"Ext.data.XmlReader",config:{record:"",namespace:""},createAccessor:function(b){var a=this;if(Ext.isEmpty(b)){return Ext.emptyFn}if(Ext.isFunction(b)){return b}return function(c){return a.getNodeValue(Ext.DomQuery.selectNode(b,c))}},getNodeValue:function(a){if(a){if(typeof a.normalize==="function"){a.normalize()}a=a.firstChild;if(a){return a.nodeValue}}return undefined},getResponseData:function(a){var c=a.responseXML,b="XML data not found in the response";if(!c){Ext.Logger.warn(b);return this.createReadError(b)}return c},getData:function(a){return a.documentElement||a},getRoot:function(b){var c=b.nodeName,a=this.getRootProperty();if(!a||(c&&c==a)){return b}else{if(Ext.DomQuery.isXml(b)){return Ext.DomQuery.selectNode(a,b)}}},extractData:function(a,b){var c=this.getRecord();if(c!==a.nodeName){a=Ext.DomQuery.select(c,a)}else{a=[a]}return Ext.data.reader.Reader.prototype.extractData.apply(this,[a,b])},readRecords:function(b,a){if(Ext.isArray(b)){b=b[0]}this.xmlData=b;return Ext.data.reader.Reader.prototype.readRecords.apply(this,[b,a])},createFieldAccessor:function(e){var d=this,c=d.getNamespace(),b,a;b=e.mapping||((c?c+"|":"")+e.name);if(typeof b==="function"){a=function(g){return e.mapping(g,d)}}else{a=function(g){return d.getNodeValue(Ext.DomQuery.selectNode(b,g))}}return a}},0,0,0,0,["reader.xml"],0,[Ext.data.reader,"Xml",Ext.data,"XmlReader"],0));(Ext.cmd.derive("Ext.data.writer.Xml",Ext.data.writer.Writer,{alternateClassName:"Ext.data.XmlWriter",config:{documentRoot:"xmlData",defaultDocumentRoot:"xmlData",header:"",record:"record"},writeRecords:function(b,c){var j=this,e=[],d=0,h=c.length,k=j.getDocumentRoot(),g=j.getRecord(),n=c.length!==1,m,l,a;a=this.getTransform();if(a){c=a(c,b)}e.push(j.getHeader()||"");if(!k&&n){k=j.getDefaultDocumentRoot()}if(k){e.push("<",k,">")}for(;d<h;++d){m=c[d];e.push("<",g,">");for(l in m){if(m.hasOwnProperty(l)){e.push("<",l,">",m[l],"</",l,">")}}e.push("</",g,">")}if(k){e.push("</",k,">")}b.setXmlData(e.join(""));return b}},0,0,0,0,["writer.xml"],0,[Ext.data.writer,"Xml",Ext.data,"XmlWriter"],0));(Ext.cmd.derive("Ext.data.XmlStore",Ext.data.Store,{constructor:function(a){a=Ext.apply({proxy:{type:"ajax",reader:"xml",writer:"xml"}},a);Ext.data.Store.prototype.constructor.apply(this,[a])}},1,0,0,0,["store.xml"],0,[Ext.data,"XmlStore"],0));(Ext.cmd.derive("Ext.data.identifier.Negative",Ext.data.identifier.Sequential,{config:{increment:-1,seed:-1}},0,0,0,0,["data.identifier.negative"],0,[Ext.data.identifier,"Negative"],0));(Ext.cmd.derive("Ext.data.identifier.Uuid",Ext.data.identifier.Generator,{isUnique:true,config:{id:null},constructor:function(a){Ext.data.identifier.Generator.prototype.constructor.apply(this,[a]);this.reconfigure(a)},reconfigure:function(b){var a=this.self;this.generate=(b&&b.version===1)?a.createSequential(b.salt,b.timestamp,b.clockSeq):a.createRandom()},clone:null,statics:{createRandom:function(){var c="xxxxxxxx-xxxx-4xxx-Rxxx-xMxxxxxxxxxx".split(""),b="0123456789abcdef".split(""),a=c.length,d=[];return function(){for(var g,h,e=0;e<a;++e){h=c[e];if(h!=="-"&&h!=="4"){g=Math.random()*16;g=(h==="R")?(g&3|8):(g|((h==="M")?1:0));h=b[g]}d[e]=h}return d.join("")}},createSequential:function(h,b,e){var g=[],l=Math.pow(2,32),j=h.lo,c=h.hi,k=b.lo,d=b.hi,a=function(o,n){var m=o.toString(16).toLowerCase();if(m.length>n){m=m.substring(m.length-n)}else{if(m.length<n){m=Ext.String.leftPad(m,n,"0")}}return m};if(typeof h==="number"){c=Math.floor(h/l);j=Math.floor(h-c*l)}if(typeof b==="number"){d=Math.floor(b/l);k=Math.floor(b-d*l)}c|=256;g[3]=a(128|((e>>>8)&63),2)+a(e&255,2);g[4]=a(c,4)+a(j,8);return function(){g[0]=a(k,8);g[1]=a(d&65535,4);g[2]=a(((d>>>16)&4095)|(1<<12),4);++k;if(k>=l){k=0;++d}return g.join("-")}}}},1,0,0,0,["data.identifier.uuid"],0,[Ext.data.identifier,"Uuid"],function(){this.Global=new this({id:"uuid"})}));(Ext.cmd.derive("Ext.data.proxy.WebStorage",Ext.data.proxy.Client,{alternateClassName:"Ext.data.WebStorageProxy",config:{id:undefined},constructor:function(a){Ext.data.proxy.Proxy.prototype.constructor.apply(this,arguments);this.cache={};this.initialize()},create:function(c){var h=this,b=c.getRecords(),g=b.length,e=h.getIds(),j,a,d;c.setStarted();if(h.isHierarchical===undefined){h.isHierarchical=!!b[0].isNode;if(h.isHierarchical){h.getStorageObject().setItem(h.getTreeKey(),true)}}for(d=0;d<g;d++){a=b[d];if(a.phantom){a.phantom=false;j=h.getNextId()}else{j=a.getId()}h.setRecord(a,j);a.commit();e.push(j)}h.setIds(e);c.setSuccessful(true)},read:function(k){var u=this,t,r=[],d=true,h=u.getModel(),e=0,g,a,s,n,m,b,o,c,v,l,q,p;k.setStarted();if(u.isHierarchical){r=u.getTreeData()}else{o=u.getIds();c=o.length;l=k.getId();if(l){v=u.getRecord(l);if(v!==null){b=new h(v)}if(b){r.push(b)}else{d=false}}else{a=k.getSorters();g=k.getFilters();s=k.getLimit();t=[];for(q=0;q<c;q++){t.push(new h(u.getRecord(o[q])))}if(a){Ext.Array.sort(t,Ext.util.Sorter.createComparator(a))}for(q=k.getStart()||0;q<c;q++){b=t[q];m=true;if(g){for(p=0,n=g.length;p<n;p++){m=g[p].filter(b)}}if(m){r.push(b);e++}if(s&&e===s){break}}}}if(d){k.setResultSet(new Ext.data.ResultSet({records:r,total:r.length,loaded:true}));k.setSuccessful(true)}else{k.setException("Unable to load records")}},update:function(c){var b=c.getRecords(),g=b.length,e=this.getIds(),a,h,d;c.setStarted();for(d=0;d<g;d++){a=b[d];this.setRecord(a);a.commit();h=a.getId();if(h!==undefined&&Ext.Array.indexOf(e,h)===-1){e.push(h)}}this.setIds(e);c.setSuccessful(true)},erase:function(d){var g=this,c=d.getRecords(),a=g.getIds(),h=a.length,k=[],j={},e=c.length,b;d.setStarted();for(;e--;){Ext.apply(j,g.removeRecord(c[e]))}for(e=0;e<h;e++){b=a[e];if(!j[b]){k.push(b)}}g.setIds(k);d.setSuccessful(true)},getRecord:function(d){var b=this,a=b.cache,c=!a[d]?Ext.decode(b.getStorageObject().getItem(b.getRecordKey(d))):a[d];if(!c){return null}a[d]=c;c[b.getModel().prototype.idProperty]=d;return Ext.merge({},c)},setRecord:function(k,c){if(c){k.set("id",c,{commit:true})}else{c=k.getId()}var m=this,a=k.getData(),h={},j=m.getModel(),l=j.getFields(),d=l.length,g=0,n,b,e,o;for(;g<d;g++){n=l[g];b=n.name;if(n.persist){h[b]=a[b]}}delete h[j.prototype.idProperty];if(k.isNode&&k.get("depth")===1){delete h.parentId}e=m.getStorageObject();o=m.getRecordKey(c);m.cache[c]=h;e.removeItem(o);e.setItem(o,Ext.encode(h))},removeRecord:function(a){var d=this,g=a.getId(),b={},c,e;b[g]=a;d.getStorageObject().removeItem(d.getRecordKey(g));delete d.cache[g];if(a.childNodes){e=a.childNodes;for(c=e.length;c--;){Ext.apply(b,d.removeRecord(e[c]))}}return b},getRecordKey:function(a){if(a.isModel){a=a.getId()}return Ext.String.format("{0}-{1}",this.getId(),a)},getRecordCounterKey:function(){return Ext.String.format("{0}-counter",this.getId())},getTreeKey:function(){return Ext.String.format("{0}-tree",this.getId())},getIds:function(){var e=this,c=(e.getStorageObject().getItem(e.getId())||"").split(","),d=c.length,a=this.getIdField().isStringField,b;if(d===1&&c[0]===""){c=[]}else{for(b=0;b<d;b++){c[b]=a?c[b]:+c[b]}}return c},getIdField:function(){return this.getModel().prototype.idField},setIds:function(a){var b=this.getStorageObject(),c=a.join(","),d=this.getId();b.removeItem(d);if(!Ext.isEmpty(c)){b.setItem(d,c)}},getNextId:function(){var c=this,d=c.getStorageObject(),b=c.getRecordCounterKey(),a=c.getIdField().isStringField,e;e=c.idGenerator.generate();d.setItem(b,e);if(a){e=e+""}return e},getTreeData:function(){var n=this,a=n.getIds(),e=a.length,j=[],b={},o=[],k=0,h=n.getModel(),q=h.prototype.idProperty,g,m,p,l,d,c;for(;k<e;k++){c=a[k];m=n.getRecord(c);j.push(m);b[c]=m;if(!m.parentId){o.push(m)}}g=o.length;Ext.Array.sort(j,n.sortByParentId);for(k=g;k<e;k++){m=j[k];l=m.parentId;if(!p||p[q]!==l){p=b[l];p.children=d=[]}d.push(m)}for(k=e;k--;){m=j[k];if(!m.children&&!m.leaf){m.loaded=true}}for(k=g;k--;){m=o[k];o[k]=new h(m)}return o},sortByParentId:function(b,a){return(b.parentId||0)-(a.parentId||0)},initialize:function(){var b=this,a=b.getStorageObject(),c=+a.getItem(b.getRecordCounterKey()),d=b.getId();a.setItem(d,a.getItem(d)||"");if(a.getItem(b.getTreeKey())){b.isHierarchical=true}b.idGenerator=new Ext.data.identifier.Sequential({seed:c?c+1:1})},clear:function(){var d=this,e=d.getStorageObject(),c=d.getIds(),a=c.length,b;for(b=0;b<a;b++){e.removeItem(d.getRecordKey(c[b]))}e.removeItem(d.getRecordCounterKey());e.removeItem(d.getTreeKey());e.removeItem(d.getId());d.cache={}},getStorageObject:function(){}},1,0,0,0,0,0,[Ext.data.proxy,"WebStorage",Ext.data,"WebStorageProxy"],0));(Ext.cmd.derive("Ext.data.proxy.LocalStorage",Ext.data.proxy.WebStorage,{alternateClassName:"Ext.data.LocalStorageProxy",getStorageObject:function(){return window.localStorage}},0,0,0,0,["proxy.localstorage"],0,[Ext.data.proxy,"LocalStorage",Ext.data,"LocalStorageProxy"],0));(Ext.cmd.derive("Ext.data.proxy.Rest",Ext.data.proxy.Ajax,{alternateClassName:"Ext.data.RestProxy",defaultActionMethods:{create:"POST",read:"GET",update:"PUT",destroy:"DELETE"},slashRe:/\/$/,periodRe:/\.$/,config:{appendId:true,format:null,batchActions:false,actionMethods:{create:"POST",read:"GET",update:"PUT",destroy:"DELETE"}},buildUrl:function(g){var j=this,e=g.getOperation(),c=e.getRecords(),h=c?c[0]:null,k=j.getFormat(),a=j.getUrl(g),b,d;if(h&&!h.phantom){b=h.getId()}else{b=e.getId()}if(j.getAppendId()&&j.isValidId(b)){if(!a.match(j.slashRe)){a+="/"}a+=b;d=g.getParams();if(d){delete d[j.getIdParam()]}}if(k){if(!a.match(j.periodRe)){a+="."}a+=k}g.setUrl(a);return Ext.data.proxy.Server.prototype.buildUrl.apply(this,[g])},isValidId:function(a){return a||a===0}},0,0,0,0,["proxy.rest"],0,[Ext.data.proxy,"Rest",Ext.data,"RestProxy"],0));(Ext.cmd.derive("Ext.data.proxy.SessionStorage",Ext.data.proxy.WebStorage,{alternateClassName:"Ext.data.SessionStorageProxy",getStorageObject:function(){return window.sessionStorage}},0,0,0,0,["proxy.sessionstorage"],0,[Ext.data.proxy,"SessionStorage",Ext.data,"SessionStorageProxy"],0));(Ext.cmd.derive("Ext.data.proxy.Sql",Ext.data.proxy.Client,{alternateClassName:"Ext.data.proxy.SQL",isSQLProxy:true,config:{reader:null,writer:null,table:null,database:"Sencha",columns:"",uniqueIdStrategy:false,tableExists:false,defaultDateFormat:"Y-m-d H:i:s.u"},updateModel:function(b){if(b){var a=b.modelName,d=this.getDefaultDateFormat(),c=a.slice(a.lastIndexOf(".")+1);b.getFields().each(function(e){if(e.isDateField&&!e.getDateFormat()){e.dateFormat=d}});this.setUniqueIdStrategy(b.getIdentifier().isUnique);if(!this.getTable()){this.setTable(c)}this.setColumns(this.getPersistedModelColumns(b))}Ext.data.proxy.Proxy.prototype.updateModel.apply(this,arguments)},setException:function(a,b){a.setException(b)},create:function(c,h,d){var e=this,b=e.getDatabaseObject(),a=c.getRecords(),g=e.getTableExists();c.setStarted();b.transaction(function(j){if(!g){e.createTable(j)}e.insertRecords(a,j,function(l,k){if(c.process(c.getAction(),l)===false){e.fireEvent("exception",e,c)}if(k){c.setException(k)}},e)},function(k,j){e.setException(c,j);if(typeof h=="function"){h.call(d||e,c)}},function(j){if(typeof h=="function"){h.call(d||e,c)}})},read:function(n,g,b){var t=this,s=t.getDatabaseObject(),d=t.getModel(),k=d.getIdProperty(),c=t.getTableExists(),r=n.getParams()||{},o=r[k],a=n.getSorters(),m=n.getFilters(),h=n.getPage(),e=n.getStart(),q=n.getLimit(),j,p,l;r=Ext.apply(r,{page:h,start:e,limit:q,sorters:a,filters:m});n.setStarted();s.transaction(function(u){if(!c){t.createTable(u)}t.selectRecords(u,o!==undefined?o:r,function(w,v){if(n.process(n.getAction(),w)===false){t.fireEvent("exception",t,n)}if(v){n.setException(v)}if(m&&m.length){j=Ext.create("Ext.util.Collection",function(x){return x.getId()});j.setFilterRoot("data");for(p=0,l=m.length;p<l;p++){if(m[p].getProperty()===null){j.addFilter(m[p])}}j.addAll(n.getRecords());n.setRecords(j.items.slice());w.setRecords(n.getRecords());w.setCount(j.items.length);w.setTotal(j.items.length)}})},function(v,u){t.setException(n,u);if(typeof g=="function"){g.call(b||t,n)}},function(u){if(typeof g=="function"){g.call(b||t,n)}})},update:function(c,h,d){var e=this,b=c.getRecords(),a=e.getDatabaseObject(),g=e.getTableExists();c.setStarted();a.transaction(function(j){if(!g){e.createTable(j)}e.updateRecords(j,b,function(k,l){if(c.process(c.getAction(),k)===false){e.fireEvent("exception",e,c)}if(l){c.setException(l)}})},function(k,j){e.setException(c,j);if(typeof h=="function"){h.call(d||e,c)}},function(j){if(typeof h=="function"){h.call(d||e,c)}})},erase:function(c,h,d){var e=this,b=c.getRecords(),a=e.getDatabaseObject(),g=e.getTableExists();c.setStarted();a.transaction(function(j){if(!g){e.createTable(j)}e.destroyRecords(j,b,function(l,k){if(c.process(c.getAction(),l)===false){e.fireEvent("exception",e,c)}if(k){c.setException(k)}})},function(k,j){e.setException(c,j);if(typeof h=="function"){h.call(d||e,c)}},function(j){if(typeof h=="function"){h.call(d||e,c)}})},createTable:function(a){a.executeSql("CREATE TABLE IF NOT EXISTS "+this.getTable()+" ("+this.getSchemaString()+")");this.setTableExists(true)},insertRecords:function(b,a,p,r){var n=this,q=n.getTable(),c=n.getColumns(),m=b.length,g=0,e=[],j=[],o=[],h=n.getUniqueIdStrategy(),d,k,l,s;s=new Ext.data.ResultSet({records:j,success:true});for(d=0,k=c.length;d<k;d++){e.push("?")}l=e.join(", ");Ext.each(b,function(t){var w=t.getId(),v=n.getRecordData(t),u=n.getColumnValues(c,v);a.executeSql("INSERT INTO "+q+" ("+c.join(", ")+") VALUES ("+l+")",u,function(y,x){g++;j.push({clientId:w,id:h?w:x.insertId,data:v,node:v});if(g===m&&typeof p=="function"){p.call(r||n,s,o.length>0?o:null)}},function(y,x){g++;o.push({clientId:w,error:x});if(g===m&&typeof p=="function"){p.call(r||n,s,o)}})})},selectRecords:function(q,u,c,b){var v=this,t=v.getTable(),g=v.getModel().getIdProperty(),s="SELECT * FROM "+t,r=[],a=" WHERE ",m=" ORDER BY ",p,h,w,l,e,j,k,o,d,n;l=new Ext.data.ResultSet({records:r,success:true});if(!Ext.isObject(u)){s+=a+g+" = "+u}else{h=u.filters&&u.filters.length;if(h){for(p=0;p<h;p++){k=u.filters[p];d=k.getProperty();n=k.getValue();if(d!==null){s+=a+d+" "+(k.getAnyMatch()?("LIKE '%"+n+"%'"):("= '"+n+"'"));a=" AND "}}}h=u.sorters&&u.sorters.length;if(h){for(p=0;p<h;p++){o=u.sorters[p];d=o.getProperty();if(d!==null){s+=m+d+" "+o.getDirection();m=", "}}}if(u.page!==undefined){s+=" LIMIT "+parseInt(u.start,10)+", "+parseInt(u.limit,10)}}q.executeSql(s,null,function(y,x){j=x.rows;e=j.length;for(p=0,h=e;p<h;p++){w=j.item(p);r.push({clientId:null,id:w[g],data:w,node:w})}l.setSuccess(true);l.setTotal(e);l.setCount(e);if(typeof c=="function"){c.call(b||v,l)}},function(y,x){l.setSuccess(false);l.setTotal(0);l.setCount(0);if(typeof c=="function"){c.call(b||v,l,x)}})},updateRecords:function(a,b,m,p){var k=this,o=k.getTable(),d=k.getColumns(),j=b.length,n=k.getModel().getIdProperty(),g=0,c=[],l=[],e,h,q;q=new Ext.data.ResultSet({records:c,success:true});Ext.each(b,function(r){var v=r.getId(),t=k.getRecordData(r),s=k.getColumnValues(d,t),u=[];for(e=0,h=d.length;e<h;e++){u.push(d[e]+" = ?")}a.executeSql("UPDATE "+o+" SET "+u.join(", ")+" WHERE "+n+" = ?",s.concat(v),function(x,w){g++;c.push({clientId:v,id:v,data:t,node:t});if(g===j&&typeof m=="function"){m.call(p||k,q,l.length>0?l:null)}},function(x,w){g++;l.push({clientId:v,error:w});if(g===j&&typeof m=="function"){m.call(p||k,q,l)}})})},destroyRecords:function(b,c,l,n){var j=this,m=j.getTable(),o=j.getModel().getIdProperty(),a=[],k=[],d=[],e,h,p,g;for(e=0,h=c.length;e<h;e++){a.push(o+" = ?");k.push(c[e].getId())}p=new Ext.data.ResultSet({records:d,success:true});b.executeSql("DELETE FROM "+m+" WHERE "+a.join(" OR "),k,function(r,q){for(e=0,h=c.length;e<h;e++){g=c[e];d.push({id:g.getId()})}if(typeof l=="function"){l.call(n||j,p)}},function(r,q){if(typeof l=="function"){l.call(n||j,p,q)}})},getRecordData:function(b){var g=this,a=b.getFields(),d=b.getIdProperty(),e=g.getUniqueIdStrategy(),j={},c,h;a.each(function(k){if(k.persist){c=k.name;if(c===d&&!e){return}h=b.get(c);if(k.isDateField){h=g.writeDate(k,h)}j[c]=h}},g);return j},getColumnValues:function(c,h){var e=c.length,a=[],b,d,g;for(b=0;b<e;b++){d=c[b];g=h[d];if(g!==undefined){a.push(g)}}return a},getSchemaString:function(){var k=this,b=[],d=k.getModel(),m=d.getIdProperty(),g=d.getFields().items,e=k.getUniqueIdStrategy(),h=g.length,c,l,j,a;for(c=0;c<h;c++){l=g[c];j=l.getType();a=l.name;if(a===m){if(e){j=k.convertToSqlType(j);b.unshift(m+" "+j)}else{b.unshift(m+" INTEGER PRIMARY KEY AUTOINCREMENT")}}else{j=k.convertToSqlType(j);b.push(a+" "+j)}}return b.join(", ")},getPersistedModelColumns:function(d){var g=d.getFields().items,e=this.getUniqueIdStrategy(),k=d.getIdProperty(),b=[],h=g.length,c,j,a;for(c=0;c<h;c++){j=g[c];a=j.name;if(a===k&&!e){continue}if(j.persist){b.push(j.name)}}return b},convertToSqlType:function(a){switch(a.toLowerCase()){case"date":case"string":case"auto":return"TEXT";case"int":return"INTEGER";case"float":return"REAL";case"bool":return"NUMERIC"}},writeDate:function(c,b){if(Ext.isEmpty(b)){return null}var a=c.getDateFormat()||this.getDefaultDateFormat();switch(a){case"timestamp":return b.getTime()/1000;case"time":return b.getTime();default:return Ext.Date.format(b,a)}},dropTable:function(b){var e=this,d=e.getTable(),g=b?b.callback:null,c=b?b.scope||e:null,a=e.getDatabaseObject();a.transaction(function(h){h.executeSql("DROP TABLE "+d)},function(j,h){if(typeof g=="function"){g.call(c||e,false,d,h)}},function(h){if(typeof g=="function"){g.call(c||e,true,d)}});e.setTableExists(false)},getDatabaseObject:function(){return openDatabase(this.getDatabase(),"1.0","Sencha Database",5*1024*1024)}},0,0,0,0,["proxy.sql"],0,[Ext.data.proxy,"Sql",Ext.data.proxy,"SQL"],0));(Ext.cmd.derive("Ext.data.validator.Bound",Ext.data.validator.Validator,{type:"bound",config:{min:undefined,max:undefined,emptyMessage:"Must be present",minOnlyMessage:null,maxOnlyMessage:null,bothOnlyMessage:null},constructor:function(){var a=this;a.preventConfigure=true;Ext.data.validator.Validator.prototype.constructor.apply(this,arguments);delete a.preventConfigure;a.configure()},setConfig:function(){var a=this;a.preventConfigure=true;a.callParent(arguments);delete a.preventConfigure;a.configure()},configure:function(){var d=this,b,e,c,a;if(d.preventConfigure){return}c=d.getMin();a=d.getMax();b=d.hasMin=c!==undefined;e=d.hasMax=a!==undefined;if(b&&e){d._bothMsg=Ext.String.format(d.getBothMessage(),c,a)}else{if(b){d._minMsg=Ext.String.format(d.getMinOnlyMessage(),c)}else{if(e){d._maxMsg=Ext.String.format(d.getMaxOnlyMessage(),a)}}}},updateMin:function(){this.configure()},updateMax:function(){this.configure()},updateMinOnlyMessage:function(a){this.configure()},updateMaxOnlyMessage:function(){this.configure()},updateBothMessage:function(){this.configure()},validate:function(g){var e=this,c=e.hasMin,j=e.hasMax,d=e.getMin(),b=e.getMax(),h=true,a;if(g===undefined||g===null){return e.getEmptyMessage()}g=e.getValue(g);if(c&&j){if(g<d||g>b){h=e._bothMsg}}else{if(c){if(g<d){h=e._minMsg}}else{if(j){if(g>b){h=e._maxMsg}}}}return h},getValue:Ext.identityFn},1,0,0,0,["data.validator.bound"],0,[Ext.data.validator,"Bound"],0));(Ext.cmd.derive("Ext.data.validator.Format",Ext.data.validator.Validator,{type:"format",config:{message:"Is in the wrong format",matcher:undefined},validate:function(b){var c=this.getMatcher(),a=c&&c.test(b);return a?a:this.getMessage()}},0,0,0,0,["data.validator.format"],0,[Ext.data.validator,"Format"],0));(Ext.cmd.derive("Ext.data.validator.Email",Ext.data.validator.Format,{type:"email",config:{message:"Is not a valid email address",matcher:/^(")?(?:[^\."])(?:(?:[\.])?(?:[\w\-!#$%&'*+\/=?\^_`{|}~]))*\1@(\w[\-\w]*\.){1,5}([A-Za-z]){2,6}$/}},0,0,0,0,["data.validator.email"],0,[Ext.data.validator,"Email"],0));(Ext.cmd.derive("Ext.data.validator.List",Ext.data.validator.Validator,{type:"list",config:{list:null},inclusion:null,validate:function(c){var b=Ext.Array.contains(this.getList(),c),e=this.inclusion,d=!e,a;a=(e&&b)||(d&&!b);return a||this.getMessage()}},0,0,0,0,["data.validator.list"],0,[Ext.data.validator,"List"],0));(Ext.cmd.derive("Ext.data.validator.Exclusion",Ext.data.validator.List,{type:"exclusion",config:{message:"Is a value that has been excluded"},inclusion:false},0,0,0,0,["data.validator.exclusion"],0,[Ext.data.validator,"Exclusion"],0));(Ext.cmd.derive("Ext.data.validator.Inclusion",Ext.data.validator.List,{type:"inclusion",config:{message:"Is not in the list of acceptable values"},inclusion:true},0,0,0,0,["data.validator.inclusion"],0,[Ext.data.validator,"Inclusion"],0));(Ext.cmd.derive("Ext.data.validator.Length",Ext.data.validator.Bound,{type:"length",config:{minOnlyMessage:"Length must be greater than {0}",maxOnlyMessage:"Length must be less than {0}",bothMessage:"Length must be between {0} and {1}"},getValue:function(a){return String(a).length}},0,0,0,0,["data.validator.length"],0,[Ext.data.validator,"Length"],0));(Ext.cmd.derive("Ext.data.validator.Presence",Ext.data.validator.Validator,{type:"presence",config:{message:"Must be present"},validate:function(b){var a=!(b===undefined||b===null);return a?true:this.getMessage()}},0,0,0,0,["data.validator.presence"],0,[Ext.data.validator,"Presence"],0));(Ext.cmd.derive("Ext.data.validator.Range",Ext.data.validator.Bound,{type:"range",config:{minOnlyMessage:"Must be greater than {0}",maxOnlyMessage:"Must be less than {0}",bothMessage:"Must be between {0} and {1}"}},0,0,0,0,["data.validator.range"],0,[Ext.data.validator,"Range"],0));(Ext.cmd.derive("Ext.direct.Event",Ext.Base,{status:true,constructor:function(a){Ext.apply(this,a)},getName:function(){return this.name},getData:function(){return this.data}},1,0,0,0,["direct.event"],0,[Ext.direct,"Event"],0));(Ext.cmd.derive("Ext.direct.RemotingEvent",Ext.direct.Event,{getTransaction:function(){var a=this;return a.transaction||Ext.direct.Manager.getTransaction(a.tid)}},0,0,0,0,["direct.rpc"],0,[Ext.direct,"RemotingEvent"],0));(Ext.cmd.derive("Ext.direct.ExceptionEvent",Ext.direct.RemotingEvent,{status:false},0,0,0,0,["direct.exception"],0,[Ext.direct,"ExceptionEvent"],0));(Ext.cmd.derive("Ext.direct.Provider",Ext.Base,{isProvider:true,constructor:function(a){var b=this;Ext.apply(b,a);Ext.applyIf(b,{id:Ext.id(null,"provider-")});b.mixins.observable.constructor.call(b,a)},isConnected:function(){return false},connect:Ext.emptyFn,disconnect:Ext.emptyFn},1,0,0,0,["direct.provider"],[["observable",Ext.util.Observable]],[Ext.direct,"Provider"],0));(Ext.cmd.derive("Ext.direct.JsonProvider",Ext.direct.Provider,{parseResponse:function(a){if(!Ext.isEmpty(a.responseText)){if(Ext.isObject(a.responseText)){return a.responseText}return Ext.decode(a.responseText)}return null},createEvents:function(b){var h=this,j=null,d=[],g,c,a;try{j=h.parseResponse(b)}catch(k){g=new Ext.direct.ExceptionEvent({data:k,xhr:b,code:Ext.direct.Manager.exceptions.PARSE,message:"Error parsing json response: \n\n "+k});return[g]}if(Ext.isArray(j)){for(c=0,a=j.length;c<a;++c){d.push(h.createEvent(j[c]))}}else{if(Ext.isObject(j)){d.push(h.createEvent(j))}}return d},createEvent:function(a){if(typeof a!=="object"||!("type" in a)){return new Ext.direct.ExceptionEvent({data:a,code:Ext.direct.Manager.exceptions.DATA,message:"Invalid data: event type is not specified"})}return Ext.create("direct."+a.type,a)}},0,0,0,0,["direct.jsonprovider"],0,[Ext.direct,"JsonProvider"],0));(Ext.cmd.derive("Ext.direct.PollingProvider",Ext.direct.JsonProvider,{interval:3000,isConnected:function(){return !!this.pollTask},connect:function(){var b=this,a=b.url;if(a&&!b.pollTask){b.pollTask=Ext.TaskManager.start({run:b.runPoll,interval:b.interval,scope:b});b.fireEvent("connect",b)}},disconnect:function(){var a=this;if(a.pollTask){Ext.TaskManager.stop(a.pollTask);delete a.pollTask;a.fireEvent("disconnect",a)}},runPoll:function(){var b=this,a=b.url;if(b.fireEvent("beforepoll",b)!==false){if(Ext.isFunction(a)){a(b.baseParams)}else{Ext.Ajax.request({url:a,callback:b.onData,scope:b,params:b.baseParams})}b.fireEvent("poll",b)}},onData:function(e,h,b){var g=this,d,a,c;if(h){c=g.createEvents(b);for(d=0,a=c.length;d<a;++d){g.fireEvent("data",g,c[d])}}else{c=new Ext.direct.ExceptionEvent({data:null,code:Ext.direct.Manager.exceptions.TRANSPORT,message:"Unable to connect to the server.",xhr:b});g.fireEvent("data",g,c)}}},0,0,0,0,["direct.pollingprovider"],0,[Ext.direct,"PollingProvider"],0));(Ext.cmd.derive("Ext.direct.RemotingMethod",Ext.Base,{constructor:function(c){var d=this,h=Ext.isDefined(c.params)?c.params:c.len,b,a,e,g;d.name=c.name;d.formHandler=c.formHandler;if(Ext.isNumeric(h)){d.len=h;d.ordered=true}else{d.strict=c.strict!==undefined?c.strict:true;d.params={};a=h.length;for(e=0;e<a;e++){g=h[e];b=Ext.isObject(g)?g.name:g;d.params[b]=true}}},getArgs:function(g,b,h){var e=this,c=[],d,a;if(e.ordered){if(e.len>0){if(b){for(d=0,a=b.length;d<a;d++){c.push(g[b[d]])}}else{if(h){c.push(g)}}}}else{c.push(g)}return c},getCallData:function(e){var g=this,c=null,d=g.len,b=g.params,h=g.strict,j,k,a,l;if(g.ordered){j=e[d];k=e[d+1];l=e[d+2];if(d!==0){c=e.slice(0,d)}}else{c=Ext.apply({},e[0]);j=e[1];k=e[2];l=e[3];if(h){for(a in c){if(c.hasOwnProperty(a)&&!b[a]){delete c[a]}}}}return{data:c,callback:j,scope:k,options:l}}},1,0,0,0,0,0,[Ext.direct,"RemotingMethod"],0));(Ext.cmd.derive("Ext.direct.Transaction",Ext.Base,{alternateClassName:"Ext.Direct.Transaction",statics:{TRANSACTION_ID:0},constructor:function(a){var b=this;Ext.apply(b,a);b.id=b.tid=++b.self.TRANSACTION_ID;b.retryCount=0},send:function(){var a=this;a.provider.queueTransaction(a)},retry:function(){var a=this;a.retryCount++;a.send()},getProvider:function(){return this.provider}},1,0,0,0,["direct.transaction"],0,[Ext.direct,"Transaction",Ext.Direct,"Transaction"],0));(Ext.cmd.derive("Ext.direct.RemotingProvider",Ext.direct.JsonProvider,{enableBuffer:10,maxRetries:1,constructor:function(a){var b=this;Ext.direct.Provider.prototype.constructor.apply(this,arguments);b.namespace=(Ext.isString(b.namespace))?Ext.ns(b.namespace):b.namespace||Ext.global;b.transactions=new Ext.util.MixedCollection();b.callBuffer=[]},getNamespace:function(b,e){var g,d,c,a;b=b||Ext.global;g=e.toString().split(".");for(c=0,a=g.length;c<a;c++){d=g[c];b=b[d];if(typeof b==="undefined"){return b}}return b},createNamespaces:function(b,e){var g,d;b=b||Ext.global;g=e.toString().split(".");for(var c=0,a=g.length;c<a;c++){d=g[c];b[d]=b[d]||{};b=b[d]}return b},initAPI:function(){var j=this,e=j.actions,c=j.namespace,d,k,b,g,h,a;for(d in e){if(e.hasOwnProperty(d)){if(j.disableNestedActions){k=c[d];if(!k){k=c[d]={}}}else{k=j.getNamespace(c,d);if(!k){k=j.createNamespaces(c,d)}}b=e[d];for(g=0,h=b.length;g<h;++g){a=new Ext.direct.RemotingMethod(b[g]);k[a.name]=j.createHandler(d,a)}}}},createHandler:function(c,e){var b=this,d=Array.prototype.slice,a;if(!e.formHandler){a=function(){b.configureRequest(c,e,d.call(arguments,0))}}else{a=function(h,j,g){b.configureFormRequest(c,e,d.call(arguments,0))}}a.directCfg={action:c,method:e};return a},isConnected:function(){return !!this.connected},connect:function(){var a=this;if(a.url){a.initAPI();a.connected=true;a.fireEvent("connect",a)}},disconnect:function(){var a=this;if(a.connected){a.connected=false;a.fireEvent("disconnect",a)}},runCallback:function(g,c){var e=!!c.status,d=e?"success":"failure",h,b,a;if(g&&g.callback){h=g.callback;b=g.callbackOptions;a=typeof c.result!=="undefined"?c.result:c.data;if(Ext.isFunction(h)){h(a,c,e,b)}else{Ext.callback(h[d],h.scope,[a,c,e,b]);Ext.callback(h.callback,h.scope,[a,c,e,b])}}},onData:function(l,j,c){var g=this,d,e,k,a,b,h;if(j){k=g.createEvents(c);for(d=0,e=k.length;d<e;++d){a=k[d];b=g.getTransaction(a);g.fireEvent("data",g,a);if(b&&g.fireEvent("beforecallback",g,a,b)!==false){g.runCallback(b,a,true);Ext.direct.Manager.removeTransaction(b)}}}else{h=[].concat(l.transaction);for(d=0,e=h.length;d<e;++d){b=g.getTransaction(h[d]);if(b&&b.retryCount<g.maxRetries){b.retry()}else{a=new Ext.direct.ExceptionEvent({data:null,transaction:b,code:Ext.direct.Manager.exceptions.TRANSPORT,message:"Unable to connect to the server.",xhr:c});g.fireEvent("data",g,a);if(b&&g.fireEvent("beforecallback",g,b)!==false){g.runCallback(b,a,false);Ext.direct.Manager.removeTransaction(b)}}}}},getTransaction:function(a){return a&&a.tid?Ext.direct.Manager.getTransaction(a.tid):null},configureRequest:function(g,b,j){var k=this,d,h,l,m,a,c,e;d=b.getCallData(j);h=d.data;l=d.callback;m=d.scope;a=d.options||{};e=Ext.apply({},{provider:k,args:j,action:g,method:b.name,data:h,callbackOptions:a,callback:m&&Ext.isFunction(l)?Ext.Function.bind(l,m):l});if(a.timeout){Ext.applyIf(e,{timeout:a.timeout})}c=new Ext.direct.Transaction(e);if(k.fireEvent("beforecall",k,c,b)!==false){Ext.direct.Manager.addTransaction(c);k.queueTransaction(c);k.fireEvent("call",k,c,b)}},getCallData:function(a){return{action:a.action,method:a.method,data:a.data,type:"rpc",tid:a.id}},sendRequest:function(h){var g=this,e,b,j,d=g.enableUrlEncode,c,a;e={url:g.url,callback:g.onData,scope:g,transaction:h,timeout:g.timeout};if(h.timeout){e.timeout=h.timeout}if(Ext.isArray(h)){b=[];for(c=0,a=h.length;c<a;++c){b.push(g.getCallData(h[c]))}}else{b=g.getCallData(h)}if(d){j={};j[Ext.isString(d)?d:"data"]=Ext.encode(b);e.params=j}else{e.jsonData=b}Ext.Ajax.request(e)},queueTransaction:function(c){var b=this,a=b.enableBuffer;if(c.form){b.sendFormRequest(c);return}if(a===false||typeof c.timeout!=="undefined"){b.sendRequest(c);return}b.callBuffer.push(c);if(a){if(!b.callTask){b.callTask=new Ext.util.DelayedTask(b.combineAndSend,b)}b.callTask.delay(Ext.isNumber(a)?a:10)}else{b.combineAndSend()}},combineAndSend:function(){var c=this,b=c.callBuffer,a=b.length;if(a>0){c.sendRequest(a==1?b[0]:b);c.callBuffer=[]}},configureFormRequest:function(e,a,h){var j=this,b=h[0],k=h[1],l=h[2],c,g,d;c=new Ext.direct.Transaction({provider:j,action:e,method:a.name,args:[b,k,l],callback:l&&Ext.isFunction(k)?Ext.Function.bind(k,l):k,isForm:true});if(j.fireEvent("beforecall",j,c,a)!==false){Ext.direct.Manager.addTransaction(c);g=String(b.getAttribute("enctype")).toLowerCase()=="multipart/form-data";d={extTID:c.id,extAction:e,extMethod:a.name,extType:"rpc",extUpload:String(g)};Ext.apply(c,{form:Ext.getDom(b),isUpload:g,params:k&&Ext.isObject(k.params)?Ext.apply(d,k.params):d});j.fireEvent("call",j,c,a);j.sendFormRequest(c)}},sendFormRequest:function(b){var a=this;Ext.Ajax.request({url:a.url,params:b.params,callback:a.onData,scope:a,form:b.form,isUpload:b.isUpload,transaction:b})}},1,0,0,0,["direct.remotingprovider"],0,[Ext.direct,"RemotingProvider"],0));(Ext.cmd.derive("Ext.dom.CompositeElement",Ext.dom.CompositeElementLite,{alternateClassName:"Ext.CompositeElement",isLite:false,getElement:function(a){return a},transformElement:function(a){return Ext.get(a)}},0,0,0,0,0,0,[Ext.dom,"CompositeElement",Ext,"CompositeElement"],0));(Ext.cmd.derive("Ext.util.paintmonitor.Abstract",Ext.Base,{config:{element:null,callback:Ext.emptyFn,scope:null,args:[]},eventName:"",monitorClass:"",constructor:function(a){this.onElementPainted=Ext.Function.bind(this.onElementPainted,this);this.initConfig(a)},bindListeners:function(a){this.monitorElement[a?"addEventListener":"removeEventListener"](this.eventName,this.onElementPainted,true)},applyElement:function(a){if(a){return Ext.get(a)}},updateElement:function(a){this.monitorElement=Ext.Element.create({classList:["x-paint-monitor",this.monitorClass]},true);a.appendChild(this.monitorElement);a.addCls("x-paint-monitored");this.bindListeners(true)},onElementPainted:function(){},destroy:function(){var b=this.monitorElement,a=b.parentNode,c=this.getElement();this.bindListeners(false);delete this.monitorElement;if(c&&!c.isDestroyed){c.removeCls("x-paint-monitored");delete this._element}if(a){a.removeChild(b)}this.callSuper()}},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(a){if(a.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.OverflowChange",Ext.util.paintmonitor.Abstract,{eventName:Ext.browser.is.Firefox?"overflow":"overflowchanged",monitorClass:"overflowchange",onElementPainted:function(a){this.getCallback().apply(this.getScope(),this.getArgs())}},0,0,0,0,0,0,[Ext.util.paintmonitor,"OverflowChange"],0));(Ext.cmd.derive("Ext.util.PaintMonitor",Ext.Base,{constructor:function(a){if(Ext.browser.is.Firefox||(Ext.browser.is.WebKit&&Ext.browser.engineVersion.gtEq("536")&&!Ext.os.is.Blackberry)){return new Ext.util.paintmonitor.OverflowChange(a)}else{return new Ext.util.paintmonitor.CssAnimation(a)}}},1,0,0,0,0,0,[Ext.util,"PaintMonitor"],0));(Ext.cmd.derive("Ext.event.publisher.ElementPaint",Ext.event.publisher.Publisher,{targetType:"element",handledEvents:["painted"],constructor:function(){this.monitors={};Ext.event.publisher.Publisher.prototype.constructor.apply(this,arguments)},subscribe:function(d){var a=d.match(this.idSelectorRegex),c=this.subscribers,e,b;if(!a){return false}e=a[1];if(c.hasOwnProperty(e)){c[e]++;return true}c[e]=1;b=Ext.get(e);this.monitors[e]=new Ext.util.PaintMonitor({element:b,callback:this.onElementPainted,scope:this,args:[d,b]});return true},unsubscribe:function(e,a,c){var b=e.match(this.idSelectorRegex),d=this.subscribers,g;if(!b){return false}g=b[1];if(!d.hasOwnProperty(g)||(!c&&--d[g]>0)){return true}delete d[g];this.monitors[g].destroy();delete this.monitors[g];return true},onElementPainted:function(b,a){Ext.TaskQueue.requestRead("dispatch",this,[b,"painted",[a]])}},1,0,0,0,0,0,[Ext.event.publisher,"ElementPaint"],0));(Ext.cmd.derive("Ext.mixin.Templatable",Ext.Mixin,{mixinConfig:{id:"templatable"},referenceAttributeName:"reference",referenceSelector:"[reference]",getElementConfig:function(){return{reference:"element"}},getElementTemplate:function(){var a=document.createDocumentFragment();a.appendChild(Ext.Element.create(this.getElementConfig(),true));return a},initElement:function(){var a=this.self.prototype;a.elementTemplate=this.getElementTemplate();a.initElement=a.doInitElement;this.initElement.apply(this,arguments)},linkElement:function(a,b){this.link(a,b)},doInitElement:function(){var h=this.referenceAttributeName,c,d,e,g,b,a;c=this.elementTemplate.cloneNode(true);d=c.querySelectorAll(this.referenceSelector);for(e=0,g=d.length;e<g;e++){b=d[e];a=b.getAttribute(h);b.removeAttribute(h);this.linkElement(a,b)}}},0,0,0,0,0,0,[Ext.mixin,"Templatable"],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(a){this.refresh=Ext.Function.bind(this.refresh,this);this.info={width:0,height:0,contentWidth:0,contentHeight:0,flag:0};this.initElement();this.initConfig(a);this.bindListeners(true)},bindListeners:Ext.emptyFn,applyElement:function(a){if(a){return Ext.get(a)}},updateElement:function(a){a.append(this.detectorsContainer);a.addCls("x-size-monitored")},applyArgs:function(a){return a.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 d=this.getElement();if(!d||d.isDestroyed){return false}var b=d.getWidth(),l=d.getHeight(),a=this.getContentWidth(),k=this.getContentHeight(),j=this.contentWidth,g=this.contentHeight,c=this.info,e=false,h;this.width=b;this.height=l;this.contentWidth=a;this.contentHeight=k;h=((j!==a?1:0)+(g!==k?2:0));if(h>0){c.width=b;c.height=l;c.contentWidth=a;c.contentHeight=k;c.flag=h;e=true;this.getCallback().apply(this.getScope(),this.getArgs())}return e},refresh:function(a){if(this.refreshSize()||a){Ext.TaskQueue.requestWrite("refreshMonitors",this)}},destroy:function(){var a=this.getElement();this.bindListeners(false);if(a&&!a.isDestroyed){a.removeCls("x-size-monitored")}delete this._element;this.callSuper()}},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.Default",Ext.util.sizemonitor.Abstract,{updateElement:function(a){},bindListeners:function(b){var a=this.getElement().dom;if(!a){return}if(b){a.onresize=this.refresh}else{delete a.onresize}},getContentBounds:function(){return this.getElement().dom.getBoundingClientRect()},getContentWidth:function(){return this.getElement().getWidth()},getContentHeight:function(){return this.getElement().getHeight()}},0,0,0,0,0,0,[Ext.util.sizemonitor,"Default"],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(a){this.onScroll=Ext.Function.bind(this.onScroll,this);Ext.util.sizemonitor.Abstract.prototype.constructor.apply(this,arguments)},bindListeners:function(b){var a=b?"addEventListener":"removeEventListener";this.expandMonitor[a]("scroll",this.onScroll,true);this.shrinkMonitor[a]("scroll",this.onScroll,true)},forceRefresh:function(){Ext.TaskQueue.requestRead("refresh",this,[true])},onScroll:function(){Ext.TaskQueue.requestRead("refresh",this)},refreshMonitors:function(){var b=this.expandMonitor,c=this.shrinkMonitor,a=1000000;if(b&&!b.isDestroyed){b.scrollLeft=a;b.scrollTop=a}if(c&&!c.isDestroyed){c.scrollLeft=a;c.scrollTop=a}}},1,0,0,0,0,0,[Ext.util.sizemonitor,"Scroll"],0));(Ext.cmd.derive("Ext.util.sizemonitor.OverflowChange",Ext.util.sizemonitor.Abstract,{constructor:function(a){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(b){var a=b?"addEventListener":"removeEventListener";this.expandMonitor[a](Ext.browser.is.Firefox?"underflow":"overflowchanged",this.onExpand,true);this.shrinkMonitor[a](Ext.browser.is.Firefox?"overflow":"overflowchanged",this.onShrink,true)},onExpand:function(a){if(Ext.browser.is.Webkit&&a.horizontalOverflow&&a.verticalOverflow){return}Ext.TaskQueue.requestRead("refresh",this)},onShrink:function(a){if(Ext.browser.is.Webkit&&!a.horizontalOverflow&&!a.verticalOverflow){return}Ext.TaskQueue.requestRead("refresh",this)},refreshMonitors:function(){if(this.isDestroyed){return}var g=this.expandHelper,e=this.shrinkHelper,b=this.getContentBounds(),d=b.width,a=b.height,c;if(g&&!g.isDestroyed){c=g.style;c.width=(d+1)+"px";c.height=(a+1)+"px"}if(e&&!e.isDestroyed){c=e.style;c.width=d+"px";c.height=a+"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(a){var b=Ext.util.sizemonitor;if(Ext.browser.is.Firefox){return new b.OverflowChange(a)}else{if(Ext.browser.is.WebKit){if(!Ext.browser.is.Silk&&Ext.browser.engineVersion.gtEq("535")){return new b.OverflowChange(a)}else{return new b.Scroll(a)}}else{if(Ext.browser.is.IE11){return new b.Scroll(a)}else{return new b.Default(a)}}}}},1,0,0,0,0,0,[Ext.util,"SizeMonitor"],0));(Ext.cmd.derive("Ext.event.publisher.ElementSize",Ext.event.publisher.Publisher,{targetType:"element",handledEvents:["resize"],constructor:function(){this.monitors={};Ext.event.publisher.Publisher.prototype.constructor.apply(this,arguments)},subscribe:function(e){var b=e.match(this.idSelectorRegex),d=this.subscribers,g,c,a;if(!b||e==="#ext-window"){return false}g=b[1];if(d.hasOwnProperty(g)){d[g]++;return true}d[g]=1;c=Ext.get(g);this.monitors[g]=a=new Ext.util.SizeMonitor({element:c,callback:this.onElementResize,scope:this,args:[e,c]});this.dispatcher.addListener("element",e,"painted","forceRefresh",a);return true},unsubscribe:function(h,a,e){var c=h.match(this.idSelectorRegex),g=this.subscribers,d=this.monitors,j,b;if(!c){return false}j=c[1];if(!g.hasOwnProperty(j)||(!e&&--g[j]>0)){return true}delete g[j];b=d[j];this.dispatcher.removeListener("element",h,"painted","forceRefresh",b);b.destroy();delete d[j];return true},onElementResize:function(c,a,b){Ext.TaskQueue.requestRead("dispatch",this,[c,"resize",[a,b]])}},1,0,0,0,0,0,[Ext.event.publisher,"ElementSize"],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(a){this.data={};this.set(a)},setConfig:function(a){this.set(a);return this},setRaw:function(a){this.data=a;return this},clear:function(){return this.setRaw({})},setTransform:function(c,h){var g=this.data,a=Ext.isArray(h),b=g.transform,e,d;if(!b){b=g.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 c=="string"){switch(c){case"translate":if(a){e=h.length;if(e==0){break}b.translateX=h[0];if(e==1){break}b.translateY=h[1];if(e==2){break}b.translateZ=h[2]}else{b.translateX=h}break;case"rotate":if(a){e=h.length;if(e==0){break}b.rotateX=h[0];if(e==1){break}b.rotateY=h[1];if(e==2){break}b.rotateZ=h[2]}else{b.rotate=h}break;case"scale":if(a){e=h.length;if(e==0){break}b.scaleX=h[0];if(e==1){break}b.scaleY=h[1];if(e==2){break}b.scaleZ=h[2]}else{b.scaleX=h;b.scaleY=h}break;case"skew":if(a){e=h.length;if(e==0){break}b.skewX=h[0];if(e==1){break}b.skewY=h[1]}else{b.skewX=h}break;default:b[c]=h}}else{for(d in c){if(c.hasOwnProperty(d)){h=c[d];this.setTransform(d,h)}}}},set:function(a,d){var c=this.data,b;if(typeof a!="string"){for(b in a){d=a[b];if(b==="transform"){this.setTransform(d)}else{c[b]=d}}}else{if(a==="transform"){this.setTransform(d)}else{c[a]=d}}return this},unset:function(a){var b=this.data;if(b.hasOwnProperty(a)){delete b[a]}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,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(a){return Ext.get(a)},applyBefore:function(a,b){if(a){return Ext.factory(a,Ext.fx.State,b)}},applyAfter:function(b,a){if(b){return Ext.factory(b,Ext.fx.State,a)}},setFrom:function(a){return this.setState(this.STATE_FROM,a)},setTo:function(a){return this.setState(this.STATE_TO,a)},getFrom:function(){return this.getState(this.STATE_FROM)},getTo:function(){return this.getState(this.STATE_TO)},setStates:function(a){var c=this.stateNameRegex,b;for(b in a){if(c.test(b)){this.setState(b,a[b])}}return this},getStates:function(){return this.states},stop:function(){this.fireEvent("stop",this)},destroy:function(){this.stop();Ext.mixin.Observable.prototype.destroy.call(this)},setState:function(b,d){var a=this.getStates(),c;c=Ext.factory(d,Ext.fx.State,a[b]);if(c){a[b]=c}return this},getState:function(a){return this.getStates()[a]},getData:function(){var m=this.getStates(),e={},h=this.getBefore(),c=this.getAfter(),j=m[this.STATE_FROM],k=m[this.STATE_TO],l=j.getData(),g=k.getData(),d,b,a;for(b in m){if(m.hasOwnProperty(b)){a=m[b];d=a.getData();e[b]=d}}if(Ext.browser.is.AndroidStock2){e["0.0001%"]=l}return{before:h?h.getData():{},after:c?c.getData():{},states:e,from:l,to:g,duration:this.getDuration(),iteration:this.getIteration(),direction:this.getDirection(),easing:this.getEasing(),delay:this.getDelay(),onEnd:this.getOnEnd(),onBeforeEnd:this.getOnBeforeEnd(),onBeforeStart:this.getOnBeforeStart(),scope:this.getScope(),preserveEndState:this.getPreserveEndState(),replacePrevious:this.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(a){if(a==="auto"){return"ease-"+((this.getOut())?"in":"out")}return a},getContainerBox:function(){var a=this._containerBox;if(a==="auto"){a=this.getElement().getParent().getBox()}return a},getElementBox:function(){var a=this._elementBox;if(this.getIsElementBoxFit()){return this.getContainerBox()}if(a==="auto"){a=this.getElement().getBox()}return a},getData:function(){var r=this.getElementBox(),c=this.getContainerBox(),h=r?r:c,p=this.getFrom(),q=this.getTo(),g=this.getOut(),e=this.getOffset(),o=this.getDirection(),b=this.getUseCssTransform(),j=this.getReverse(),d=0,a=0,n,l,m,k;if(j){o=this.reverseDirectionMap[o]}switch(o){case this.DIRECTION_UP:if(g){a=c.top-h.top-h.height-e}else{a=c.bottom-h.bottom+h.height+e}break;case this.DIRECTION_DOWN:if(g){a=c.bottom-h.bottom+h.height+e}else{a=c.top-h.height-h.top-e}break;case this.DIRECTION_RIGHT:if(g){d=c.right-h.right+h.width+e}else{d=c.left-h.left-h.width-e}break;case this.DIRECTION_LEFT:if(g){d=c.left-h.left-h.width-e}else{d=c.right-h.right+h.width+e}break}n=(g)?0:d;l=(g)?0:a;if(b){p.setTransform({translateX:n,translateY:l})}else{p.set("left",n);p.set("top",l)}m=(g)?d:0;k=(g)?a:0;if(b){q.setTransform({translateX:m,translateY:k})}else{q.set("left",m);q.set("top",k)}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(a){var c=this.getTo(),b=this.getFrom();if(a){b.set("opacity",1);c.set("opacity",0)}else{b.set("opacity",0);c.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 j=this.getFrom(),k=this.getTo(),h=this.getDirection(),b=this.getOut(),n=this.getHalf(),c=(n)?90:180,e=1,a=1,m=0,l=0,g=0,d=0;if(b){a=0.8}else{e=0.8}switch(h){case this.DIRECTION_UP:if(b){g=c}else{m=-c}break;case this.DIRECTION_DOWN:if(b){g=-c}else{m=c}break;case this.DIRECTION_RIGHT:if(b){d=c}else{l=-c}break;case this.DIRECTION_LEFT:if(b){d=-c}else{l=c}break}j.setTransform({rotateX:m,rotateY:l,scale:e});k.setTransform({rotateX:g,rotateY:d,scale:a});return Ext.fx.animation.Abstract.prototype.getData.apply(this,arguments)}},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 c=this.getTo(),b=this.getFrom(),a=this.getOut();if(a){b.set("opacity",1);b.setTransform({scale:1});c.set("opacity",0);c.setTransform({scale:0})}else{b.set("opacity",0);b.setTransform({scale:0});c.set("opacity",1);c.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(b){var a=Ext.fx.animation.Abstract,c;if(typeof b=="string"){c=b;b={}}else{if(b&&b.type){c=b.type}}if(c){if(Ext.browser.is.AndroidStock2){if(c=="pop"){c="fade"}if(c=="popIn"){c="fadeIn"}if(c=="popOut"){c="fadeOut"}}a=Ext.ClassManager.getByAlias("animation."+c)}return Ext.factory(b,a)}},1,0,0,0,0,0,[Ext.fx,"Animation"],0));(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:{},constructor:function(){var a=Ext.feature.has.Css3dTransforms;if(a){this.transformMethods=["translateX","translateY","translateZ","rotate","rotateX","rotateY","rotateZ","skewX","skewY","scaleX","scaleY","scaleZ"]}else{this.transformMethods=["translateX","translateY","rotate","skewX","skewY","scaleX","scaleY"]}this.vendorPrefix=Ext.browser.getStyleDashPrefix();this.ruleStylesCache={};return this},getStyleSheet:function(){var c=this.styleSheet,a,b;if(!c){a=document.createElement("style");a.type="text/css";(document.head||document.getElementsByTagName("head")[0]).appendChild(a);b=document.styleSheets;this.styleSheet=c=b[b.length-1]}return c},applyRules:function(k){var h=this.getStyleSheet(),m=this.ruleStylesCache,l=h.cssRules,c,e,j,b,d,a,g;for(c in k){e=k[c];j=m[c];if(j===undefined){d=l.length;h.insertRule(c+"{}",d);j=m[c]=l.item(d).style}b=j.$cache;if(!b){b=j.$cache={}}for(a in e){g=this.formatValue(e[a],a);a=this.formatName(a);if(b[a]!==g){b[a]=g;if(g===null){j.removeProperty(a)}else{j.setProperty(a,g,"important")}}}}return this},applyStyles:function(d){var h,c,g,b,a,e;for(h in d){if(d.hasOwnProperty(h)){c=document.getElementById(h);if(!c){return this}g=c.style;b=d[h];for(a in b){if(b.hasOwnProperty(a)){e=this.formatValue(b[a],a);a=this.formatName(a);if(e===null){g.removeProperty(a)}else{g.setProperty(a,e,"important")}}}}}return this},formatName:function(b){var a=this.formattedNameCache,c=a[b];if(!c){if((Ext.os.is.Tizen||!Ext.feature.has.CssTransformNoPrefix)&&this.prefixedProperties[b]){c=this.vendorPrefix+b}else{c=b}a[b]=c}return c},formatValue:function(k,b){var h=typeof k,m=this.DEFAULT_UNIT_LENGTH,e,a,d,g,c,l,j;if(k===null){return""}if(h=="string"){if(this.lengthProperties[b]){j=k.match(this.lengthUnitRegex)[1];if(j.length>0){}else{return k+m}}return k}else{if(h=="number"){if(k==0){return"0"}if(this.lengthProperties[b]){return k+m}if(this.angleProperties[b]){return k+this.DEFAULT_UNIT_ANGLE}if(this.durationProperties[b]){return k+this.DEFAULT_UNIT_DURATION}}else{if(b==="transform"){e=this.transformMethods;c=[];for(d=0,g=e.length;d<g;d++){a=e[d];c.push(a+"("+this.formatValue(k[a],a)+")")}return c.join(" ")}else{if(Ext.isArray(k)){l=[];for(d=0,g=k.length;d<g;d++){l.push(this.formatValue(k[d],b))}return(l.length>0)?l.join(", "):"none"}}}}return k}},1,0,0,0,0,0,[Ext.fx.runner,"Css"],0));(Ext.cmd.derive("Ext.fx.runner.CssTransition",Ext.fx.runner.Css,{listenersAttached:false,constructor:function(){this.runningAnimationsData={};return Ext.fx.runner.Css.prototype.constructor.apply(this,arguments)},attachListeners:function(){this.listenersAttached=true;this.getEventDispatcher().addListener("element","*","transitionend","onTransitionEnd",this)},onTransitionEnd:function(b){var a=b.target,c=a.id;if(c&&this.runningAnimationsData.hasOwnProperty(c)){this.refreshRunningAnimationsData(Ext.get(a),[b.browserEvent.propertyName])}},onAnimationEnd:function(h,g,d,k,o){var c=h.getId(),l=this.runningAnimationsData[c],p={},n={},b,j,e,m,a;d.un("stop","onAnimationStop",this);if(l){b=l.nameMap}p[c]=n;if(g.onBeforeEnd){g.onBeforeEnd.call(g.scope||this,h,k)}d.fireEvent("animationbeforeend",d,h,k);this.fireEvent("animationbeforeend",this,d,h,k);if(o||(!k&&!g.preserveEndState)){j=g.toPropertyNames;for(e=0,m=j.length;e<m;e++){a=j[e];if(b&&!b.hasOwnProperty(a)){n[a]=null}}}if(g.after){Ext.merge(n,g.after)}this.applyStyles(p);if(g.onEnd){g.onEnd.call(g.scope||this,h,k)}d.fireEvent("animationend",d,h,k);this.fireEvent("animationend",this,d,h,k);Ext.AnimationQueue.stop(Ext.emptyFn,d)},onAllAnimationsEnd:function(b){var c=b.getId(),a={};delete this.runningAnimationsData[c];a[c]={"transition-property":null,"transition-duration":null,"transition-timing-function":null,"transition-delay":null};this.applyStyles(a);this.fireEvent("animationallend",this,b)},hasRunningAnimations:function(a){var c=a.getId(),b=this.runningAnimationsData;return b.hasOwnProperty(c)&&b[c].sessions.length>0},refreshRunningAnimationsData:function(d,l,u,q){var h=d.getId(),r=this.runningAnimationsData,a=r[h];if(!a){return}var n=a.nameMap,t=a.nameList,b=a.sessions,g,k,e,v,m,c,s,p,o=false;u=Boolean(u);q=Boolean(q);if(!b){return this}g=b.length;if(g===0){return this}if(q){a.nameMap={};t.length=0;for(m=0;m<g;m++){c=b[m];this.onAnimationEnd(d,c.data,c.animation,u,q)}b.length=0}else{for(m=0;m<g;m++){c=b[m];s=c.map;p=c.list;for(k=0,e=l.length;k<e;k++){v=l[k];if(s[v]){delete s[v];Ext.Array.remove(p,v);c.length--;if(--n[v]==0){delete n[v];Ext.Array.remove(t,v)}}}if(c.length==0){b.splice(m,1);m--;g--;o=true;this.onAnimationEnd(d,c.data,c.animation,u)}}}if(!q&&!u&&b.length==0&&o){this.onAllAnimationsEnd(d)}},getRunningData:function(b){var a=this.runningAnimationsData;if(!a.hasOwnProperty(b)){a[b]={nameMap:{},nameList:[],sessions:[]}}return a[b]},getTestElement:function(){var c=this.testElement,b,d,a;if(!c){b=document.createElement("iframe");a=b.style;a.setProperty("visibility","hidden","important");a.setProperty("width","0px","important");a.setProperty("height","0px","important");a.setProperty("position","absolute","important");a.setProperty("border","0px","important");a.setProperty("zIndex","-1000","important");document.body.appendChild(b);d=b.contentDocument;d.open();d.writeln("</body>");d.close();this.testElement=c=d.createElement("div");c.style.setProperty("position","absolute","important");d.body.appendChild(c);this.testElementComputedStyle=window.getComputedStyle(c)}return c},getCssStyleValue:function(b,e){var d=this.getTestElement(),a=this.testElementComputedStyle,c=d.style;c.setProperty(b,e);if(Ext.browser.is.Firefox){d.offsetHeight}e=a.getPropertyValue(b);c.removeProperty(b);return e},run:function(r){var H=this,k=this.lengthProperties,z={},G={},I={},d,u,A,e,w,K,x,s,t,a,o,C,B,q,D,m,v,h,E,J,l,g,y,p,c,F,b,n;if(!this.listenersAttached){this.attachListeners()}r=Ext.Array.from(r);for(C=0,q=r.length;C<q;C++){D=r[C];D=Ext.factory(D,Ext.fx.Animation);d=D.getElement();Ext.AnimationQueue.start(Ext.emptyFn,D);h=window.getComputedStyle(d.dom);u=d.getId();I=Ext.merge({},D.getData());if(D.onBeforeStart){D.onBeforeStart.call(D.scope||this,d)}D.fireEvent("animationstart",D);this.fireEvent("animationstart",this,D);I[u]=I;w=I.before;A=I.from;e=I.to;I.fromPropertyNames=K=[];I.toPropertyNames=x=[];for(J in e){if(e.hasOwnProperty(J)){e[J]=l=this.formatValue(e[J],J);E=this.formatName(J);p=k.hasOwnProperty(J);if(!p){l=this.getCssStyleValue(E,l)}if(A.hasOwnProperty(J)){A[J]=y=this.formatValue(A[J],J);if(!p){y=this.getCssStyleValue(E,y)}if(l!==y){K.push(E);x.push(E)}}else{g=h.getPropertyValue(E);if(l!==g){x.push(E)}}}}m=x.length;if(m===0){this.onAnimationEnd(d,I,D);continue}a=this.getRunningData(u);b=a.sessions;if(b.length>0){this.refreshRunningAnimationsData(d,Ext.Array.merge(K,x),true,I.replacePrevious)}c=a.nameMap;F=a.nameList;v={};for(B=0;B<m;B++){J=x[B];v[J]=true;if(!c.hasOwnProperty(J)){c[J]=1;F.push(J)}else{c[J]++}}n={element:d,map:v,list:x.slice(),length:m,data:I,animation:D};b.push(n);D.on("stop","onAnimationStop",this);o=Ext.apply({},w);Ext.apply(o,A);if(F.length>0){K=Ext.Array.difference(F,K);x=Ext.Array.merge(K,x);o["transition-property"]=K}z[u]=o;G[u]=Ext.apply({},e);G[u]["transition-property"]=x;G[u]["transition-duration"]=I.duration;G[u]["transition-timing-function"]=I.easing;G[u]["transition-delay"]=I.delay;D.startTime=Date.now()}t=this.$className;this.applyStyles(z);s=function(j){if(j.data===t&&j.source===window){window.removeEventListener("message",s,false);H.applyStyles(G)}};if(Ext.browser.is.IE){Ext.Function.requestAnimationFrame(function(){window.addEventListener("message",s,false);window.postMessage(t,"*")})}else{window.addEventListener("message",s,false);window.postMessage(t,"*")}},onAnimationStop:function(d){var g=this.runningAnimationsData,j,a,h,b,c,e;for(j in g){if(g.hasOwnProperty(j)){a=g[j];h=a.sessions;for(b=0,c=h.length;b<c;b++){e=h[b];if(e.animation===d){this.refreshRunningAnimationsData(e.element,e.list.slice(),false)}}}}}},1,0,0,0,0,0,[Ext.fx.runner,"CssTransition"],0));(Ext.cmd.derive("Ext.fx.Runner",Ext.Base,{constructor:function(){return new Ext.fx.runner.CssTransition()}},1,0,0,0,0,0,[Ext.fx,"Runner"],0));(Ext.cmd.derive("Ext.fx.animation.Cube",Ext.fx.animation.Abstract,{config:{before:{},after:{},direction:"right",out:false},getData:function(){var o=this.getTo(),p=this.getFrom(),m=this.getBefore(),a=this.getAfter(),e=this.getOut(),l=this.getDirection(),b=this.getElement(),h=b.getWidth(),c=b.getHeight(),n=e?"100% 100%":"0% 0%",k=1,d=1,g={rotateY:0,translateZ:0},j={rotateY:0,translateZ:0};if(l=="left"||l=="right"){if(e){d=0.5;j.translateZ=h;j.rotateY=-90}else{k=0.5;g.translateZ=h;g.rotateY=90}}m["transform-origin"]=n;a["transform-origin"]=null;o.set("transform",j);p.set("transform",g);p.set("opacity",k);o.set("opacity",d);return Ext.fx.animation.Abstract.prototype.getData.apply(this,arguments)}},0,0,0,0,["animation.cube"],0,[Ext.fx.animation,"Cube"],0));(Ext.cmd.derive("Ext.fx.animation.Wipe",Ext.fx.Animation,{alternateClassName:"Ext.fx.animation.WipeIn",config:{easing:"ease-out",direction:"right",out:false},refresh:function(){var j=this,a=j.getElement(),h=a.dom.getBoundingClientRect(),p=h.width,g=h.height,n=j.getFrom(),o=j.getTo(),d=j.getOut(),l=j.getDirection(),c=0,b=0,m=0,k=0,q,e;switch(l){case"up":if(d){q="-webkit-gradient(linear, left top, left bottom, from(#000), to(transparent), color-stop(33%, #000), color-stop(66%, transparent))";b=g*3+"px";k=g+"px"}else{q="-webkit-gradient(linear, left top, left bottom, from(transparent), to(#000), color-stop(66%, #000), color-stop(33%, transparent))";b=-g*2+"px";k=0}break;case"down":if(d){q="-webkit-gradient(linear, left top, left bottom, from(transparent), to(#000), color-stop(66%, #000), color-stop(33%, transparent))";b=-g*2+"px";k=0}else{q="-webkit-gradient(linear, left top, left bottom, from(#000), to(transparent), color-stop(33%, #000), color-stop(66%, transparent))";b=g*3+"px";k=g+"px"}break;case"right":if(d){q="-webkit-gradient(linear, right top, left top, from(#000), to(transparent), color-stop(33%, #000), color-stop(66%, transparent))";c=-p*2+"px";m=0}else{q="-webkit-gradient(linear, right top, left top, from(transparent), to(#000), color-stop(66%, #000), color-stop(33%, transparent))";m=-p*2+"px"}break;case"left":if(d){q="-webkit-gradient(linear, right top, left top, from(transparent), to(#000), color-stop(66%, #000), color-stop(33%, transparent))";m=-p*2+"px"}else{q="-webkit-gradient(linear, right top, left top, from(#000), to(transparent), color-stop(33%, #000), color-stop(66%, transparent))";c=-p*2+"px";m=0}break}if(!d){e=b;b=k;k=e;e=c;c=m;m=e}n.set("mask-image",q);n.set("mask-size",p*3+"px "+g*3+"px");n.set("mask-position-x",c);n.set("mask-position-y",b);o.set("mask-position-x",m);o.set("mask-position-y",k)},getData:function(){this.refresh();return this.callParent(arguments)}},0,0,0,0,0,0,[Ext.fx.animation,"Wipe",Ext.fx.animation,"WipeIn"],0));(Ext.cmd.derive("Ext.fx.animation.WipeOut",Ext.fx.animation.Wipe,{config:{out:true}},0,0,0,0,0,0,[Ext.fx.animation,"WipeOut"],0));(Ext.cmd.derive("Ext.fx.easing.Abstract",Ext.Base,{config:{startTime:0,startValue:0},isEasing:true,isEnded:false,constructor:function(a){this.initConfig(a);return this},applyStartTime:function(a){if(!a){a=Ext.Date.now()}return a},updateStartTime:function(a){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.Bounce",Ext.fx.easing.Abstract,{config:{springTension:0.3,acceleration:30,startVelocity:0},getValue:function(){var b=Ext.Date.now()-this.getStartTime(),c=(b/this.getAcceleration()),a=c*Math.pow(Math.E,-this.getSpringTension()*c);return this.getStartValue()+(this.getStartVelocity()*a)}},0,0,0,0,0,0,[Ext.fx.easing,"Bounce"],0));(Ext.cmd.derive("Ext.fx.easing.Momentum",Ext.fx.easing.Abstract,{config:{acceleration:30,friction:0,startVelocity:0},alpha:0,updateFriction:function(b){var a=Math.log(1-(b/10));this.theta=a;this.alpha=a/this.getAcceleration()},updateStartVelocity:function(a){this.velocity=a*this.getAcceleration()},updateAcceleration:function(a){this.velocity=this.getStartVelocity()*a;this.alpha=this.theta/a},getValue:function(){return this.getStartValue()-this.velocity*(1-this.getFrictionFactor())/this.theta},getFrictionFactor:function(){var a=Ext.Date.now()-this.getStartTime();return Math.exp(a*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.BoundMomentum",Ext.fx.easing.Abstract,{config:{momentum:null,bounce:null,minMomentumValue:0,maxMomentumValue:0,minVelocity:0.01,startVelocity:0},applyMomentum:function(a,b){return Ext.factory(a,Ext.fx.easing.Momentum,b)},applyBounce:function(a,b){return Ext.factory(a,Ext.fx.easing.Bounce,b)},updateStartTime:function(a){this.getMomentum().setStartTime(a);Ext.fx.easing.Abstract.prototype.updateStartTime.apply(this,arguments)},updateStartVelocity:function(a){this.getMomentum().setStartVelocity(a)},updateStartValue:function(a){this.getMomentum().setStartValue(a)},reset:function(){this.lastValue=null;this.isBouncingBack=false;this.isOutOfBound=false;return Ext.fx.easing.Abstract.prototype.reset.apply(this,arguments)},getValue:function(){var a=this.getMomentum(),l=this.getBounce(),e=a.getStartVelocity(),g=e>0?1:-1,h=this.getMinMomentumValue(),d=this.getMaxMomentumValue(),c=(g==1)?d:h,j=this.lastValue,k,b;if(e===0){return this.getStartValue()}if(!this.isOutOfBound){k=a.getValue();b=a.getVelocity();if(Math.abs(b)<this.getMinVelocity()){this.isEnded=true}if(k>=h&&k<=d){return k}this.isOutOfBound=true;l.setStartTime(Ext.Date.now()).setStartVelocity(b).setStartValue(c)}k=l.getValue();if(!this.isEnded){if(!this.isBouncingBack){if(j!==null){if((g==1&&k<j)||(g==-1&&k>j)){this.isBouncingBack=true}}}else{if(Math.round(k)==c){this.isEnded=true}}}this.lastValue=k;return k}},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(a){this.distance=this.getEndValue()-a},updateEndValue:function(a){this.distance=a-this.getStartValue()},getValue:function(){var a=Ext.Date.now()-this.getStartTime(),b=this.getDuration();if(a>b){this.isEnded=true;return this.getEndValue()}else{return this.getStartValue()+((a/b)*this.distance)}}},0,0,0,0,["easing.linear"],0,[Ext.fx.easing,"Linear"],0));(Ext.cmd.derive("Ext.fx.easing.EaseIn",Ext.fx.easing.Linear,{config:{exponent:4,duration:1500},getValue:function(){var c=Ext.Date.now()-this.getStartTime(),h=this.getDuration(),b=this.getStartValue(),a=this.getEndValue(),j=this.distance,e=c/h,d=Math.pow(e,this.getExponent()),g=b+(d*j);if(c>=h){this.isEnded=true;return a}return g}},0,0,0,0,["easing.ease-in"],0,[Ext.fx.easing,"EaseIn"],0));(Ext.cmd.derive("Ext.fx.easing.EaseOut",Ext.fx.easing.Linear,{config:{exponent:4,duration:1500},getValue:function(){var g=Ext.Date.now()-this.getStartTime(),d=this.getDuration(),b=this.getStartValue(),j=this.getEndValue(),a=this.distance,c=g/d,h=1-c,e=1-Math.pow(h,this.getExponent()),k=b+(e*a);if(g>=d){this.isEnded=true;return j}return k}},0,0,0,0,["easing.ease-out"],0,[Ext.fx.easing,"EaseOut"],0));(Ext.cmd.derive("Ext.fx.easing.Easing",Ext.Base,{constructor:function(a){return Ext.factory(a,Ext.fx.easing.Linear,null,"easing")}},1,0,0,0,0,0,[Ext.fx.easing,"Easing"],0));(Ext.cmd.derive("Ext.fx.layout.card.Abstract",Ext.Evented,{isAnimation:true,config:{direction:"left",duration:null,reverse:null,layout:null},updateLayout:function(){this.enable()},enable:function(){var a=this.getLayout();if(a){a.onBefore("activeitemchange","onActiveItemChange",this)}},disable:function(){var a=this.getLayout();if(this.isAnimating){this.stopAnimation()}if(a){a.unBefore("activeitemchange","onActiveItemChange",this)}},onActiveItemChange:Ext.emptyFn,destroy:function(){var a=this.getLayout();if(this.isAnimating){this.stopAnimation()}if(a){a.unBefore("activeitemchange","onActiveItemChange",this)}this.setLayout(null);if(this.observableId){this.fireEvent("destroy",this);this.clearListeners();this.clearManagedListeners()}}},0,0,0,0,0,0,[Ext.fx.layout.card,"Abstract"],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(b){var c,a;Ext.Evented.prototype.constructor.apply(this,[b]);this.endAnimationCounter=0;c=this.getInAnimation();a=this.getOutAnimation();c.on("animationend","incrementEnd",this);a.on("animationend","incrementEnd",this)},updateDirection:function(a){this.getInAnimation().setDirection(a);this.getOutAnimation().setDirection(a)},updateDuration:function(a){this.getInAnimation().setDuration(a);this.getOutAnimation().setDuration(a)},updateReverse:function(a){this.getInAnimation().setReverse(a);this.getOutAnimation().setReverse(a)},incrementEnd:function(){this.endAnimationCounter++;if(this.endAnimationCounter>1){this.endAnimationCounter=0;this.fireEvent("animationend",this)}},applyInAnimation:function(b,a){return Ext.factory(b,Ext.fx.Animation,a)},applyOutAnimation:function(b,a){return Ext.factory(b,Ext.fx.Animation,a)},updateInAnimation:function(a){a.setScope(this)},updateOutAnimation:function(a){a.setScope(this)},onActiveItemChange:function(a,e,j,k,d){var b=this.getInAnimation(),h=this.getOutAnimation(),g,c;if(e&&j&&j.isPainted()){g=e.renderElement;c=j.renderElement;b.setElement(g);h.setElement(c);h.setOnBeforeEnd(function(l,m){if(m||Ext.Animator.hasRunningAnimations(l)){d.firingArguments[1]=null;d.firingArguments[2]=null}});h.setOnEnd(function(){d.resume()});g.dom.style.setProperty("visibility","hidden","important");e.show();Ext.Animator.run([h,b]);d.pause()}},destroy:function(){Ext.destroy(this.getInAnimation(),this.getOutAnimation());Ext.fx.layout.card.Abstract.prototype.destroy.apply(this,arguments)}},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(a){this.getInAnimation().setReverse(a);this.getOutAnimation().setReverse(a)}},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(a){this.getInAnimation().setReverse(a);this.getOutAnimation().setReverse(a)}},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(a){this.getInAnimation().setReverse(a);this.getOutAnimation().setReverse(a)}},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(e,c,g,b,a){var d=c.element.getParent();d.addCls("x-layout-card-perspective");this.on("animationend",function(){d.removeCls("x-layout-card-perspective")},this,{single:true});Ext.fx.layout.card.Style.prototype.onActiveItemChange.apply(this,arguments)},updateDuration:function(d){var c=d/2,b=this.getInAnimation(),a=this.getOutAnimation();b.setDelay(c);b.setDuration(c);a.setDuration(c)}},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(d){var c=d/2,b=this.getInAnimation(),a=this.getOutAnimation();b.setDelay(c);b.setDuration(c);a.setDuration(c)}},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(a){this.initConfig(a)},getEasing:function(){var a=this.easing;if(!a){this.easing=a=new Ext.fx.easing.Linear()}return a},updateDuration:function(a){this.getEasing().setDuration(a)},onActiveItemChange:function(a,d,n,o,c){var k=this.getDirection(),h=this.getEasing(),m,e,b,j,l,g;if(d&&n){if(this.isAnimating){this.stopAnimation()}d.setWidth("100%");d.setHeight("100%");m=this.getLayout().container.innerElement;j=m.getWidth();l=m.getHeight();e=d.renderElement;b=n.renderElement;this.oldItem=n;this.newItem=d;this.currentEventController=c;this.containerElement=m;this.isReverse=g=this.getReverse();d.show();if(k=="right"){k="left";this.isReverse=g=!g}else{if(k=="down"){k="up";this.isReverse=g=!g}}if(k=="left"){if(g){h.setConfig({startValue:j,endValue:0});m.dom.scrollLeft=j;b.setLeft(j)}else{h.setConfig({startValue:0,endValue:j});e.setLeft(j)}}else{if(g){h.setConfig({startValue:l,endValue:0});m.dom.scrollTop=l;b.setTop(l)}else{h.setConfig({startValue:0,endValue:l});e.setTop(l)}}this.startAnimation();c.pause()}},startAnimation:function(){this.isAnimating=true;this.getEasing().setStartTime(Date.now());Ext.AnimationQueue.start(this.doAnimationFrame,this)},doAnimationFrame:function(){var d=this.getEasing(),c=this.getDirection(),a="scrollTop",b;if(c=="left"||c=="right"){a="scrollLeft"}if(d.isEnded){this.stopAnimation()}else{b=d.getValue();this.containerElement.dom[a]=b}},stopAnimation:function(){var c=this,e=c.getDirection(),a="setTop",d=c.oldItem,b=c.newItem;if(e=="left"||e=="right"){a="setLeft"}c.currentEventController.resume();if(c.isReverse&&d&&d.renderElement&&d.renderElement.dom){d.renderElement[a](null)}else{if(b&&b.renderElement&&b.renderElement.dom){b.renderElement[a](null)}}Ext.AnimationQueue.stop(this.doAnimationFrame,this);c.isAnimating=false;c.fireEvent("animationend",c)}},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(b){var a=Ext.fx.layout.card.Abstract,c;if(!b){return null}if(typeof b=="string"){c=b;b={}}else{if(b.type){c=b.type}}b.elementBox=false;if(c){if(Ext.browser.is.AndroidStock2){if(c!="fade"){c="scroll"}}a=Ext.ClassManager.getByAlias("fx.layout.card."+c)}return Ext.factory(b,a)}},1,0,0,0,0,0,[Ext.fx.layout,"Card"],0));(Ext.cmd.derive("Ext.fx.layout.card.Cube",Ext.fx.layout.card.Style,{config:{reverse:null,inAnimation:{type:"cube"},outAnimation:{type:"cube",out:true}}},0,0,0,0,["fx.layout.card.cube"],0,[Ext.fx.layout.card,"Cube"],0));(Ext.cmd.derive("Ext.fx.layout.card.ScrollCover",Ext.fx.layout.card.Scroll,{onActiveItemChange:function(c,h,d,m,e){var k,a,l,j,b,g;this.lastController=e;this.inItem=h;if(h&&d){k=this.getLayout().container.innerElement;a=k.getSize();l=this.calculateXY(a);j={easing:this.getEasing(),duration:this.getDuration()};h.renderElement.dom.style.setProperty("visibility","hidden","important");b=h.setTranslatable(true).getTranslatable();g=d.setTranslatable(true).getTranslatable();g.translate({x:0,y:0});b.translate({x:l.left,y:l.top});b.getWrapper().dom.style.setProperty("z-index","100","important");h.show();b.on({animationstart:"onInAnimationStart",animationend:"onInAnimationEnd",scope:this});b.translateAnimated({x:0,y:0},j);e.pause()}},onInAnimationStart:function(){this.inItem.renderElement.dom.style.removeProperty("visibility")},onInAnimationEnd:function(){this.inItem.getTranslatable().getWrapper().dom.style.removeProperty("z-index");this.lastController.resume()}},0,0,0,0,["fx.layout.card.scrollcover"],0,[Ext.fx.layout.card,"ScrollCover"],0));(Ext.cmd.derive("Ext.fx.layout.card.ScrollReveal",Ext.fx.layout.card.Scroll,{onActiveItemChange:function(c,h,d,m,e){var k,a,l,j,g,b;this.lastController=e;this.outItem=d;this.inItem=h;if(h&&d){k=this.getLayout().container.innerElement;a=k.getSize();l=this.calculateXY(a);j={easing:this.getEasing(),duration:this.getDuration()};g=d.setTranslatable(true).getTranslatable();b=h.setTranslatable(true).getTranslatable();g.getWrapper().dom.style.setProperty("z-index","100","important");g.translate({x:0,y:0});b.translate({x:0,y:0});h.show();g.on({animationend:"onOutAnimationEnd",scope:this});g.translateAnimated({x:l.x,y:l.y},j);e.pause()}},onOutAnimationEnd:function(){this.outItem.getTranslatable().getWrapper().dom.style.removeProperty("z-index");this.lastController.resume()}},0,0,0,0,["fx.layout.card.scrollreveal"],0,[Ext.fx.layout.card,"ScrollReveal"],0));(Ext.cmd.derive("Ext.fx.runner.CssAnimation",Ext.fx.runner.Css,{constructor:function(){this.runningAnimationsMap={};this.elementEndStates={};this.animationElementMap={};this.keyframesRulesCache={};this.uniqueId=0;return Ext.fx.runner.Css.prototype.constructor.apply(this,arguments)},attachListeners:function(){var a=this.getEventDispatcher();this.listenersAttached=true;a.addListener("element","*","animationstart","onAnimationStart",this);a.addListener("element","*","animationend","onAnimationEnd",this)},onAnimationStart:function(h){var b=h.browserEvent.animationName,a=this.animationElementMap[b],g=this.runningAnimationsMap[a][b],j=this.elementEndStates,c=j[a],d={};console.log("START============= "+b);if(c){delete j[a];d[a]=c;this.applyStyles(d)}if(g.before){d[a]=g.before;this.applyStyles(d)}},onAnimationEnd:function(k){var c=k.target,b=k.browserEvent.animationName,d=this.animationElementMap,a=d[b],g=this.runningAnimationsMap,j=g[a],h=j[b];console.log("END============= "+b);if(h.onBeforeEnd){h.onBeforeEnd.call(h.scope||this,c)}if(h.onEnd){h.onEnd.call(h.scope||this,c)}delete d[b];delete j[b];this.removeKeyframesRule(b)},generateAnimationId:function(){return"animation-"+(++this.uniqueId)},run:function(g){var t={},u=this.elementEndStates,p=this.animationElementMap,s=this.runningAnimationsMap,b,d,j,l,q,h,r,v,n,m,c,e,a,k,o;if(!this.listenersAttached){this.attachListeners()}g=Ext.Array.from(g);for(q=0,h=g.length;q<h;q++){r=g[q];r=Ext.factory(r,Ext.fx.Animation);j=r.getElement().getId();l=r.getName()||this.generateAnimationId();p[l]=j;r=r.getData();d=r.states;this.addKeyframesRule(l,d);b=s[j];if(!b){b=s[j]={}}b[l]=r;m=[];c=[];e=[];a=[];k=[];o=[];for(v in b){if(b.hasOwnProperty(v)){n=b[v];m.push(v);c.push(n.duration);e.push(n.easing);a.push(n.delay);k.push(n.direction);o.push(n.iteration)}}t[j]={"animation-name":m,"animation-duration":c,"animation-timing-function":e,"animation-delay":a,"animation-direction":k,"animation-iteration-count":o};if(r.preserveEndState){u[j]=d["100%"]}}this.applyStyles(t)},addKeyframesRule:function(a,c){var m,e,b,h,k,l,d,j,g;h=this.getStyleSheet();k=h.cssRules;d=k.length;h.insertRule("@"+this.vendorPrefix+"keyframes "+a+"{}",d);b=k[d];for(m in c){e=c[m];k=b.cssRules;d=k.length;l=[];for(j in e){g=this.formatValue(e[j],j);j=this.formatName(j);l.push(j+":"+g)}b.insertRule(m+"{"+l.join(";")+"}",d)}return this},removeKeyframesRule:function(a){var g=this.getStyleSheet(),e=g.cssRules,b,c,d;for(b=0,c=e.length;b<c;b++){d=e[b];if(d.name===a){g.removeRule(b);break}}return this}},1,0,0,0,0,0,[Ext.fx.runner,"CssAnimation"],0));(Ext.cmd.derive("Ext.mixin.Hookable",Ext.Mixin,{mixinConfig:{id:"hookable"},bind:function(a,d,j,c,b){if(!j){j=d}var g=a[d],e,h;if(g&&g.hasOwnProperty("$binding")){h=g.$binding;if(h.bindingMethod===j&&h.bindingScope===this){return this}}a[d]=e=function(){var m=e.$binding,l=m.bindingScope,k=Array.prototype.slice.call(arguments);k.push(arguments);if(b){k.push.apply(k,b)}if(!m.preventDefault&&l[m.bindingMethod].apply(l,k)!==false){return m.boundFn.apply(this,arguments)}};e.$binding={preventDefault:!!c,boundFn:g,bindingMethod:j,bindingScope:this};return this},unbind:function(a,b,h){if(!h){h=b}var d=a[b],e=d.$binding,c,g;while(e){c=e.boundFn;if(e.bindingMethod===h&&e.bindingScope===this){if(g){g.boundFn=c}else{a[b]=c}return this}g=e;e=c.$binding}return this}},0,0,0,0,0,0,[Ext.mixin,"Hookable"],0));(Ext.cmd.derive("Ext.mixin.Mashup",Ext.Mixin,function(a){return{mixinConfig:{id:"mashup",extended:function(c,b){a.process(b)}},statics:{process:function(e){var c=e.prototype,g=c.requiredScripts,b=e._classHooks,d=b.onCreated;if(g){delete c.requiredScripts;b.onCreated=function(){var j=this,h=Ext.Array.slice(arguments);Ext.Loader.loadScripts({url:g,cache:true,onLoad:function(){b.onCreated=d;b.onCreated.call(j,h)}})}}}},onClassMixedIn:function(b){a.process(b)}}},0,0,0,0,0,0,[Ext.mixin,"Mashup"],0));(Ext.cmd.derive("Ext.mixin.Responsive",Ext.Mixin,function(a){return{mixinConfig:{id:"responsive",after:{destroy:"destroy"}},config:{responsiveConfig:{$value:0,merge:function(h,c,g,e){if(!h){return c}var b=c?Ext.Object.chain(c):{},d;for(d in h){if(!e||!(d in b)){b[d]={config:h[d]}}}return b}}},destroy:function(){a.unregister(this);this.callParent()},privates:{statics:{active:false,all:{},count:0,nextId:0,argNames:"landscape,portrait,tall,wide,height,width,platform",state:{platform:{desktop:true}},stateArgs:[],activate:function(){a.active=true;a.updateState();Ext.on("resize",a.onResize,a)},deactivate:function(){a.active=false;Ext.un("resize",a.onResize,a)},notify:function(){var b=a.all,d=a.timer,c;if(d){a.timer=null;Ext.Function.cancelAnimationFrame(d)}a.updateState();Ext.suspendLayouts();for(c in b){b[c].updateResponsiveState()}Ext.resumeLayouts(true)},onResize:function(){if(!a.timer){a.timer=Ext.Function.requestAnimationFrame(a.onTimer)}},onTimer:function(){a.timer=null;a.notify()},register:function(b){var c=b.$responsiveId;if(!c){b.$responsiveId=c=++a.nextId;a.all[c]=b;if(++a.count===1){a.activate()}}},unregister:function(b){var c=b.$responsiveId;if(c in a.all){b.$responsiveId=null;delete a.all[c];if(--a.count===0){a.deactivate()}}},updateState:function(){var d=a.argNamesArray,j=Ext.Element,e=j.getViewportWidth(),b=j.getViewportHeight(),h=a.state,g=a.stateArgs,c;if(!d){a.argNamesArray=d=a.argNames.split(",")}h.width=e;h.height=b;h.tall=e<b;h.wide=!h.tall;h.landscape=h.portrait=false;if(!h.platform.desktop||Ext.supports.OrientationChange){h[Ext.dom.Element.getOrientation()]=true}else{h.landscape=true}for(c=d.length;c--;){g[c]=h[d[c]]}}},afterClassMixedIn:function(d){var c=d.prototype,b=c.responsiveConfig;if(b){delete c.responsiveConfig;d.getConfigurator().add({responsiveConfig:b})}},applyResponsiveConfig:function(b){return b},getResponsiveState:function(){var g=this.getResponsiveConfig(),d=a.stateArgs,b={},c,e;for(e in g){c=g[e];if(!c.fn){c.fn=new Function(a.argNames,"return "+e)}if(c.fn.apply(this,d)){Ext.merge(b,c.config)}}return b},transformInstanceConfig:function(e){var g=this,c=e&&e.responsiveConfig,b,d;a.register(g);if(c){b=g.getConfigurator();b=b.configs.responsiveConfig;g.config.responsiveConfig=b.merge(c,g.config.responsiveConfig,g)}d=g.getResponsiveState();if(e){d=Ext.merge({},e,d);delete d.responsiveConfig}return d},updateResponsiveState:function(){var b=this.getResponsiveState();this.setConfig(b)}}}},0,0,0,0,0,0,[Ext.mixin,"Responsive"],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},modes:{SINGLE:true,SIMPLE:true,MULTI:true},selectableEventHooks:{addrecords:"onSelectionStoreAdd",removerecords:"onSelectionStoreRemove",updaterecord:"onSelectionStoreUpdate",load:"refreshSelection",refresh:"refreshSelection"},constructor:function(){this.selected=new Ext.util.MixedCollection();this.callParent(arguments)},applyMode:function(a){a=a?a.toUpperCase():"SINGLE";return this.modes[a]?a:"SINGLE"},updateStore:function(a,c){var b=this,d=Ext.apply({},b.selectableEventHooks,{scope:b});if(c&&Ext.isObject(c)&&c.isStore){if(c.autoDestroy){c.destroy()}else{c.un(d);if(a){a.un("clear","onSelectionStoreClear",this)}}}if(a){a.on(d);a.onBefore("clear","onSelectionStoreClear",this);b.refreshSelection()}},selectAll:function(a){var c=this,b=c.getStore().getRange();c.select(b,true,a)},deselectAll:function(c){var b=this,a=b.getStore().getRange();b.deselect(a,c);b.selected.clear();b.setLastSelected(null);b.setLastFocused(null)},selectWithEvent:function(a){var c=this,b=c.isSelected(a);switch(c.getMode()){case"MULTI":case"SIMPLE":if(b){c.deselect(a)}else{c.select(a,true)}break;case"SINGLE":if(c.getAllowDeselect()&&b){c.deselect(a)}else{c.select(a,false)}break}},selectRange:function(c,h,j){var g=this,b=g.getStore(),a=[],e,d;if(g.getDisableSelection()){return}if(c>h){e=h;h=c;c=e}for(d=c;d<=h;d++){a.push(b.getAt(d))}this.doMultiSelect(a,j)},select:function(c,e,b){var d=this,a;if(d.getDisableSelection()){return}if(typeof c==="number"){c=[d.getStore().getAt(c)]}if(!c){return}if(d.getMode()=="SINGLE"&&c){a=c.length?c[0]:c;d.doSingleSelect(a,b)}else{d.doMultiSelect(c,e,b)}},doSingleSelect:function(a,b){var d=this,c=d.selected;if(d.getDisableSelection()){return}if(d.isSelected(a)){return}if(c.getCount()>0){d.deselect(d.getLastSelected(),b)}c.add(a);d.setLastSelected(a);d.onItemSelect(a,b);d.setLastFocused(a);if(!b){d.fireSelectionChange([a])}},doMultiSelect:function(a,k,j){if(a===null||this.getDisableSelection()){return}a=!Ext.isArray(a)?[a]:a;var g=this,b=g.selected,e=a.length,h=false,c=0,d;if(!k&&b.getCount()>0){h=true;g.deselect(g.getSelection(),true)}for(;c<e;c++){d=a[c];if(k&&g.isSelected(d)){continue}h=true;g.setLastSelected(d);b.add(d);if(!j){g.setLastFocused(d)}g.onItemSelect(d,j)}if(h&&!j){this.fireSelectionChange(a)}},deselect:function(a,k){var g=this;if(g.getDisableSelection()){return}a=Ext.isArray(a)?a:[a];var b=g.selected,h=false,c=0,j=g.getStore(),e=a.length,d;for(;c<e;c++){d=a[c];if(typeof d==="number"){d=j.getAt(d)}if(b.remove(d)){if(g.getLastSelected()==d){g.setLastSelected(b.last())}h=true}if(d){g.onItemDeselect(d,k)}}if(h&&!k){g.fireSelectionChange(a)}},updateLastFocused:function(b,a){this.onLastFocusChanged(a,b)},fireSelectionChange:function(a){var b=this;b.fireAction("beforeselectionchange",[b],function(){b.fireAction("selectionchange",[b,a],"getSelection")})},getSelection:function(){return this.selected.getRange()},isSelected:function(a){a=Ext.isNumber(a)?this.getStore().getAt(a):a;return this.selected.indexOf(a)!==-1},hasSelection:function(){return this.selected.getCount()>0},refreshSelection:function(){var b=this,a=b.getSelection();b.deselectAll(true);if(a.length){b.select(a,false,true)}},onSelectionStoreRemove:function(c,b){var h=this,e=h.selected,g=b.length,a,d;if(h.getDisableSelection()){return}for(d=0;d<g;d++){a=b[d];if(e.remove(a)){if(h.getLastSelected()==a){h.setLastSelected(null)}if(h.getLastFocused()==a){h.setLastFocused(null)}h.fireSelectionChange([a])}}},onSelectionStoreClear:function(b){var a=b.getData().items;this.onSelectionStoreRemove(b,a)},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.mixin.Traversable",Ext.Mixin,{mixinConfig:{id:"traversable"},setParent:function(a){this.parent=a;return this},hasParent:function(){return Boolean(this.parent)},getParent:function(){return this.parent},getAncestors:function(){var b=[],a=this.getParent();while(a){b.push(a);a=a.getParent()}return b},getAncestorIds:function(){var b=[],a=this.getParent();while(a){b.push(a.getId());a=a.getParent()}return b}},0,0,0,0,0,0,[Ext.mixin,"Traversable"],0));(Ext.cmd.derive("Ext.perf.Accumulator",Ext.Base,function(){var c=null,h=Ext.global.chrome,d,b=function(){b=Ext.now;var m,n;if(Ext.isChrome&&h&&h.Interval){m=new h.Interval();m.start();b=function(){return m.microseconds()/1000}}else{if(window.ActiveXObject){try{n=new ActiveXObject("SenchaToolbox.Toolbox");Ext.senchaToolbox=n;b=function(){return n.milliseconds}}catch(o){}}}Ext.perf.getTimestamp=Ext.perf.Accumulator.getTimestamp=b;return b()};function j(n,m){n.sum+=m;n.min=Math.min(n.min,m);n.max=Math.max(n.max,m)}function e(p){var n=p?p:(b()-this.time),o=this,m=o.accum;++m.count;if(!--m.depth){j(m.total,n)}j(m.pure,n-o.childTime);c=o.parent;if(c){++c.accum.childCount;c.childTime+=n}}function a(){return{min:Number.MAX_VALUE,max:0,sum:0}}function k(n,m){return function(){var p=n.enter(),o=m.apply(this,arguments);p.leave();return o}}function l(m){return Math.round(m*100)/100}function g(o,n,m,q){var p={avg:0,min:q.min,max:q.max,sum:0};if(o){m=m||0;p.sum=q.sum-n*m;p.avg=p.sum/o}return p}return{constructor:function(m){var n=this;n.count=n.childCount=n.depth=n.maxDepth=0;n.pure=a();n.total=a();n.name=m},statics:{getTimestamp:b},format:function(m){if(!d){d=new Ext.XTemplate(["{name} - {count} call(s)",'<tpl if="count">','<tpl if="childCount">'," ({childCount} children)","</tpl>",'<tpl if="depth - 1">'," ({depth} deep)","</tpl>",'<tpl for="times">',", {type}: {[this.time(values.sum)]} msec (","avg={[this.time(values.sum / parent.count)]}",")","</tpl>","</tpl>"].join(""),{time:function(o){return Math.round(o*100)/100}})}var n=this.getData(m);n.name=this.name;n.pure.type="Pure";n.total.type="Total";n.times=[n.pure,n.total];return d.apply(n)},getData:function(m){var n=this;return{count:n.count,childCount:n.childCount,depth:n.maxDepth,pure:g(n.count,n.childCount,m,n.pure),total:g(n.count,n.childCount,m,n.total)}},enter:function(){var m=this,n={accum:m,leave:e,childTime:0,parent:c};++m.depth;if(m.maxDepth<m.depth){m.maxDepth=m.depth}c=n;n.time=b();return n},monitor:function(o,n,m){var p=this.enter();if(m){o.apply(n,m)}else{o.call(n)}p.leave()},report:function(){Ext.log(this.format())},tap:function(u,w){var v=this,p=typeof w=="string"?[w]:w,t,x,r,q,o,n,m,s;s=function(){if(typeof u=="string"){t=Ext.global;q=u.split(".");for(r=0,o=q.length;r<o;++r){t=t[q[r]]}}else{t=u}for(r=0,o=p.length;r<o;++r){n=p[r];x=n.charAt(0)=="!";if(x){n=n.substring(1)}else{x=!(n in t.prototype)}m=x?t:t.prototype;m[n]=k(v,m[n])}};Ext.ClassManager.onCreated(s,v,u);return v}}},1,0,0,0,0,0,[Ext.perf,"Accumulator"],function(){Ext.perf.getTimestamp=this.getTimestamp}));(Ext.cmd.derive("Ext.perf.Monitor",Ext.Base,{singleton:true,alternateClassName:"Ext.Perf",constructor:function(){this.accumulators=[];this.accumulatorsByName={}},calibrate:function(){var b=new Ext.perf.Accumulator("$"),g=b.total,c=Ext.perf.Accumulator.getTimestamp,e=0,h,a,d;d=c();do{h=b.enter();h.leave();++e}while(g.sum<100);a=c();return(a-d)/e},get:function(b){var c=this,a=c.accumulatorsByName[b];if(!a){c.accumulatorsByName[b]=a=new Ext.perf.Accumulator(b);c.accumulators.push(a)}return a},enter:function(a){return this.get(a).enter()},monitor:function(a,c,b){this.get(a).monitor(c,b)},report:function(){var c=this,b=c.accumulators,a=c.calibrate();b.sort(function(e,d){return(e.name<d.name)?-1:((d.name<e.name)?1:0)});c.updateGC();Ext.log("Calibration: "+Math.round(a*100)/100+" msec/sample");Ext.each(b,function(d){Ext.log(d.format(a))})},getData:function(c){var b={},a=this.accumulators;Ext.each(a,function(d){if(c||d.count){b[d.name]=d.getData()}});return b},reset:function(){Ext.each(this.accumulators,function(a){var b=a;b.count=b.childCount=b.depth=b.maxDepth=0;b.pure={min:Number.MAX_VALUE,max:0,sum:0};b.total={min:Number.MAX_VALUE,max:0,sum:0}})},updateGC:function(){var a=this.accumulatorsByName.GC,b=Ext.senchaToolbox,c;if(a){a.count=b.garbageCollectionCounter||0;if(a.count){c=a.pure;a.total.sum=c.sum=b.garbageCollectionMilliseconds;c.min=c.max=c.sum/a.count;c=a.total;c.min=c.max=c.sum/a.count}}},watchGC:function(){Ext.perf.getTimestamp();var a=Ext.senchaToolbox;if(a){this.get("GC");a.watchGarbageCollector(false)}},setup:function(c){if(!c){c={render:{"Ext.Component":"render"},layout:{"Ext.layout.Context":"run"}}}this.currentConfig=c;var d,g,b,e,a;for(d in c){if(c.hasOwnProperty(d)){g=c[d];b=Ext.Perf.get(d);for(e in g){if(g.hasOwnProperty(e)){a=g[e];b.tap(e,a)}}}}this.watchGC()}},1,0,0,0,0,0,[Ext.perf,"Monitor",Ext,"Perf"],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(a){this.mixins.observable.constructor.call(this,a);this.position={x:0,y:0}},factoryEasing:function(a){return Ext.factory(a,Ext.fx.easing.Linear,null,"easing")},applyEasing:function(a){if(!this.getEasingX()){this.setEasingX(this.factoryEasing(a))}if(!this.getEasingY()){this.setEasingY(this.factoryEasing(a))}},applyEasingX:function(a){return this.factoryEasing(a)},applyEasingY:function(a){return this.factoryEasing(a)},doTranslate:Ext.emptyFn,translate:function(a,c,b){if(b){return this.translateAnimated(a,c,b)}if(this.isAnimating){this.stopAnimation()}if(!isNaN(a)&&typeof a=="number"){this.x=a}if(!isNaN(c)&&typeof c=="number"){this.y=c}this.doTranslate(a,c)},translateAxis:function(b,d,c){var a,e;if(b=="x"){a=d}else{e=d}return this.translate(a,e,c)},getPosition:function(){var b=this,a=b.position;a.x=-b.x;a.y=-b.y;return a},animate:function(b,a){this.activeEasingX=b;this.activeEasingY=a;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(b,j,g){var e=this;if(!Ext.isObject(g)){g={}}if(e.isAnimating){e.stopAnimation()}e.callback=g.callback;e.callbackScope=g.scope;var d=Ext.Date.now(),h=g.easing,c=(typeof b=="number")?(g.easingX||h||e.getEasingX()||true):null,a=(typeof j=="number")?(g.easingY||h||e.getEasingY()||true):null;if(c){c=e.factoryEasing(c);c.setStartTime(d);c.setStartValue(e.x);c.setEndValue(b);if("duration" in g){c.setDuration(g.duration)}}if(a){a=e.factoryEasing(a);a.setStartTime(d);a.setStartValue(e.y);a.setEndValue(j);if("duration" in g){a.setDuration(g.duration)}}return e.animate(c,a)},doAnimationFrame:function(){var e=this,c=e.activeEasingX,b=e.activeEasingY,d=Date.now(),a,g;if(!e.isAnimating){return}e.lastRun=d;if(c===null&&b===null){e.stopAnimation();return}if(c!==null){e.x=a=Math.round(c.getValue());if(c.isEnded){e.activeEasingX=null;e.fireEvent("axisanimationend",e,"x",a)}}else{a=e.x}if(b!==null){e.y=g=Math.round(b.getValue());if(b.isEnded){e.activeEasingY=null;e.fireEvent("axisanimationend",e,"y",g)}}else{g=e.y}if(e.lastX!==a||e.lastY!==g){e.doTranslate(a,g);e.lastX=a;e.lastY=g}e.fireEvent("animationframe",e,a,g)},stopAnimation:function(){var a=this;if(!a.isAnimating){return}a.activeEasingX=null;a.activeEasingY=null;a.isAnimating=false;Ext.AnimationQueue.stop(a.doAnimationFrame,a);a.fireEvent("animationend",a,a.x,a.y);if(a.callback){a.callback.call(a.callbackScope);a.callback=null}},refresh:function(){this.translate(this.x,this.y)},destroy:function(){if(this.isAnimating){this.stopAnimation()}Ext.mixin.Observable.prototype.destroy.apply(this,arguments)}},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(a){if(!a){return}return Ext.get(a)},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(a,c){var b=this.getElement();if(!this.isDestroyed&&!b.isDestroyed){b.translate(a,c)}},destroy:function(){var a=this.getElement();if(a&&!a.isDestroyed){a.dom.style.webkitTransform=null}Ext.util.translatable.Abstract.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 c=this.wrapper,b=this.getElement(),a;if(!c){a=b.getParent();if(!a){return null}if(a.hasCls(Ext.baseCSSPrefix+"translatable-hboxfix")){a=a.getParent()}if(this.getUseWrapper()){c=b.wrap()}else{c=a}b.addCls("x-translatable");c.addCls("x-translatable-container");this.wrapper=c;c.on("painted",function(){if(!this.isAnimating){this.refresh()}},this);this.refresh()}return c},doTranslate:function(a,d){var c=this.getWrapper(),b;if(c){b=c.dom;if(typeof a=="number"){b.scrollLeft=500000-a}if(typeof d=="number"){b.scrollTop=500000-d}}},destroy:function(){var a=this.getElement(),b=this.wrapper;if(b){if(!a.isDestroyed){if(this.getUseWrapper()){b.doReplaceWith(a)}a.removeCls("x-translatable")}if(!b.isDestroyed){b.removeCls("x-translatable-container");b.un("painted","refresh",this)}delete this.wrapper;delete this._element}Ext.util.translatable.Abstract.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,{applyElement:function(a){var b=Ext.get(a);this.parent=b.parent();return b},doTranslate:function(a,c){var b=this.parent;b.setScrollLeft(Math.round(-a));b.setScrollTop(Math.round(-c))},getPosition:function(){var c=this,a=c.position,b=c.parent;a.x=b.getScrollLeft();a.y=b.getScrollTop();return a}},0,0,0,0,0,0,[Ext.util.translatable,"ScrollParent"],0));(Ext.cmd.derive("Ext.util.translatable.CssPosition",Ext.util.translatable.Dom,{doTranslate:function(a,c){var b=this.getElement().dom.style;if(typeof a=="number"){b.left=a+"px"}if(typeof c=="number"){b.top=c+"px"}},destroy:function(){var a=this.getElement().dom.style;a.left=null;a.top=null;Ext.util.translatable.Abstract.prototype.destroy.apply(this,arguments)}},0,0,0,0,0,0,[Ext.util.translatable,"CssPosition"],0));(Ext.cmd.derive("Ext.util.Translatable",Ext.Base,{constructor:function(a){var b=Ext.util.translatable;switch(Ext.browser.getPreferredTranslationMethod(a)){case"scrollposition":return new b.ScrollPosition(a);case"scrollparent":return new b.ScrollParent(a);case"csstransform":return new b.CssTransform(a);case"cssposition":return new b.CssPosition(a)}}},1,0,0,0,0,0,[Ext.util,"Translatable"],0));(Ext.cmd.derive("Ext.scroll.Scroller",Ext.Evented,{config:{element:null,direction:"auto",fps:"auto",disabled:null,directionLock:false,momentumEasing:{momentum:{acceleration:30,friction:0.5},bounce:{acceleration:30,springTension:0.3},minVelocity:1},bounceEasing:{duration:400},outOfBoundRestrictFactor:0.5,startMomentumResetTime:300,maxAbsoluteVelocity:6,containerSize:"auto",size:"auto",autoRefresh:true,initialOffset:{x:0,y:0},slotSnapSize:{x:0,y:0},slotSnapOffset:{x:0,y:0},slotSnapEasing:{duration:150},translatable:{translationMethod:"auto",useWrapper:false},mouseEnabled:false,snapToBoundary:true},statics:{instances:{}},cls:Ext.baseCSSPrefix+"scroll-scroller",containerCls:Ext.baseCSSPrefix+"scroll-container",dragStartTime:0,dragEndTime:0,isDragging:false,isAnimating:false,isMouseEvent:{mousedown:1,mousemove:1,mouseup:1},constructor:function(a){var c=this,b=a&&a.element,d="onEvent";c.listenerMap={touchstart:"onTouchStart",touchend:"onTouchEnd",dragstart:"onDragStart",drag:"onDrag",dragend:"onDragEnd"};c.listeners={touchstart:d,touchend:d,dragstart:d,drag:d,dragend:d,scope:c};c.minPosition={x:0,y:0};c.startPosition={x:0,y:0};c.velocity={x:0,y:0};c.isAxisEnabledFlags={x:false,y:false};c.flickStartPosition={x:0,y:0};c.flickStartTime={x:0,y:0};c.lastDragPosition={x:0,y:0};c.dragDirection={x:0,y:0};c.initialConfig=a;if(b){c.setElement(b)}c.self.instances[c.id]=c;return this},initialize:function(){var a=this;if(!a.initialized){a.mixins.observable.constructor.call(a,a.initialConfig);a.initialized=true}},applyElement:function(a){if(!a){return}return Ext.get(a)},updateElement:function(c){var e=this;e.initialize();if(!e.FixedHBoxStretching){c.addCls(e.cls)}if(!e.getDisabled()){e.attachListeners()}var d=function(){e.refreshMaxPosition()},g=Ext.Function.createSequence,b=e.updateContainerSize,a=e.updateSize;e.updateContainerSize=b?g(b,d):d;e.updateSize=a?g(a,d):d;e.on({maxpositionchange:"snapToBoundary",minpositionchange:"snapToBoundary",scope:e});return e},applyTranslatable:function(b,a){return Ext.factory(b,Ext.util.Translatable,a)},updateTranslatable:function(a){a.setConfig({element:this.getElement(),listeners:{animationframe:"onAnimationFrame",animationend:"onAnimationEnd",scope:this}})},updateFps:function(a){if(a!=="auto"){this.getTranslatable().setFps(a)}},attachListeners:function(){this.getContainer().on(this.listeners)},detachListeners:function(){this.getContainer().un(this.listeners)},updateDisabled:function(a){if(a){this.detachListeners()}else{this.attachListeners()}},updateInitialOffset:function(a){if(typeof a=="number"){a={x:a,y:a}}this.getTranslatable().translate(-a.x,-a.y)},applyDirection:function(a){var e=this.getMinPosition(),d=this.getMaxPosition(),c,b;this.givenDirection=a;if(a==="auto"){c=d.x>e.x;b=d.y>e.y;if(c&&b){a="both"}else{if(c){a="horizontal"}else{a="vertical"}}}return a},updateDirection:function(g,e){var b=this.isAxisEnabledFlags,d=this.cls+"-vertical",a=this.cls+"-horizontal",c=this.getElement();if(e==="both"||e==="horizontal"){c.removeCls(a)}if(e==="both"||e==="vertical"){c.removeCls(d)}b.x=b.y=false;if(g==="both"||g==="horizontal"){b.x=true;c.addCls(a)}if(g==="both"||g==="vertical"){b.y=true;c.addCls(d)}},isAxisEnabled:function(a){this.getDirection();return this.isAxisEnabledFlags[a]},applyMomentumEasing:function(b){var a=Ext.fx.easing.BoundMomentum;return{x:Ext.factory(b,a),y:Ext.factory(b,a)}},applyBounceEasing:function(b){var a=Ext.fx.easing.EaseOut;return{x:Ext.factory(b,a),y:Ext.factory(b,a)}},updateBounceEasing:function(a){this.getTranslatable().setEasingX(a.x).setEasingY(a.y)},applySlotSnapEasing:function(b){var a=Ext.fx.easing.EaseOut;return{x:Ext.factory(b,a),y:Ext.factory(b,a)}},getPosition:function(){return this.getTranslatable().getPosition()},getMinPosition:function(){var a=this.minPosition;if(!a){this.minPosition=a={x:0,y:0};this.fireEvent("minpositionchange",this,a)}return a},getMaxPosition:function(){var c=this.maxPosition,a,b;if(!c){a=this.getSize();b=this.getContainerSize();this.maxPosition=c={x:Math.max(0,a.x-b.x),y:Math.max(0,a.y-b.y)};this.fireEvent("maxpositionchange",this,c)}return c},refreshMaxPosition:function(){this.maxPosition=null;this.getMaxPosition()},applyContainerSize:function(b){var c=this.getContainer().dom,a,d;if(!c){return}this.givenContainerSize=b;if(b==="auto"){a=c.clientWidth;d=c.clientHeight}else{a=b.x;d=b.y}return{x:a,y:d}},applySize:function(b){var d=this.getElement().dom,c=this.getContainer().dom,a,e;if(!d){return}this.givenSize=b;if(b==="auto"){a=Math.max(d.offsetWidth,c.clientWidth);e=Math.max(d.offsetHeight,c.clientHeight)}else{if(typeof b=="number"){a=b;e=b}else{a=b.x;e=b.y}}return{x:a,y:e}},updateAutoRefresh:function(a){this.getElement().toggleListener(a,"resize","onElementResize",this);this.getContainer().toggleListener(a,"resize","onContainerResize",this)},applySlotSnapSize:function(a){if(typeof a=="number"){return{x:a,y:a}}return a},applySlotSnapOffset:function(a){if(typeof a=="number"){return{x:a,y:a}}return a},getContainer:function(){var a=this.container,b;if(!a){b=this.getElement().getParent();this.container=a=this.FixedHBoxStretching?b.getParent():b;a.addCls(this.containerCls)}return a},refresh:function(){this.stopAnimation();this.getTranslatable().refresh();this.setSize(this.givenSize);this.setContainerSize(this.givenContainerSize);this.setDirection(this.givenDirection);this.fireEvent("refresh",this);return this},onElementResize:function(a,b){this.setSize({x:b.width,y:b.height});this.refresh()},onContainerResize:function(a,b){this.setContainerSize({x:b.width,y:b.height});this.refresh()},scrollTo:function(j,h,b){var g=this,a;if(g.isDestroyed){return g}if(typeof j!="number"&&arguments.length===1){h=j.y;j=j.x}var k=g.getTranslatable(),c=g.getPosition(),l=false,e,d;if(g.isAxisEnabled("x")){if(isNaN(j)||typeof j!="number"){j=c.x}else{if(c.x!==j){l=true}}e=this.convertX(-j)}if(g.isAxisEnabled("y")){if(isNaN(h)||typeof h!="number"){h=c.y}else{if(c.y!==h){l=true}}d=-h}if(l){if(b!==undefined&&b!==false){a=function(){g.fireEvent("scroll",g,j,h)};if(b===true){b={callback:a}}else{if(b.callback){b.callback=Ext.Function.createSequence(b.callback,a)}else{b.callback=a}}k.translateAnimated(e,d,b)}else{k.translate(e,d);g.fireEvent("scroll",g,j,h)}}return this},scrollToTop:function(b){var a=this.getInitialOffset();return this.scrollTo(a.x,a.y,b)},scrollToEnd:function(c){var b=this.getSize(),a=this.getContainerSize();return this.scrollTo(b.x-a.x,b.y-a.y,c)},scrollBy:function(b,d,c){var a=this.getPosition();b=(typeof b=="number")?b+a.x:null;d=(typeof d=="number")?d+a.y:null;return this.scrollTo(b,d,c)},onEvent:function(b){var a=this,c=b.browserEvent;if(!Ext.supports.Touch||a.getMouseEnabled()||(!a.isMouseEvent[c.type]&&c.pointerType!=="mouse")){a[a.listenerMap[b.type]](b)}},onTouchStart:function(){this.isTouching=this.self.isTouching=true;this.stopAnimation()},onTouchEnd:function(){var a=this.getPosition();this.isTouching=this.self.isTouching=false;if(!this.isDragging&&this.snapToSlot()){this.fireEvent("scrollstart",this,a.x,a.y)}},onDragStart:function(n){var q=this.getDirection(),h=n.absDeltaX,g=n.absDeltaY,l=this.getDirectionLock(),k=this.startPosition,d=this.flickStartPosition,m=this.flickStartTime,j=this.lastDragPosition,c=this.getPosition(),b=this.dragDirection,p=c.x,o=c.y,a=Ext.Date.now();this.isDragging=true;if(l&&q!=="both"){if((q==="horizontal"&&h>g)||(q==="vertical"&&g>h)){n.stopPropagation()}else{this.isDragging=false;return}}j.x=p;j.y=o;d.x=p;d.y=o;k.x=p;k.y=o;m.x=a;m.y=a;b.x=0;b.y=0;this.dragStartTime=a;this.isDragging=true;this.fireEvent("scrollstart",this,p,o)},onAxisDrag:function(k,s){if(!this.isAxisEnabled(k)){return}var j=this.flickStartPosition,n=this.flickStartTime,l=this.lastDragPosition,e=this.dragDirection,h=this.getPosition()[k],m=this.getMinPosition()[k],q=this.getMaxPosition()[k],d=this.startPosition[k],r=l[k],p=d-s,c=e[k],o=this.getOutOfBoundRestrictFactor(),g=this.getStartMomentumResetTime(),b=Ext.Date.now(),a;if(p<m){p*=o}else{if(p>q){a=p-q;p=q+a*o}}if(p>r){e[k]=1}else{if(p<r){e[k]=-1}}if((c!==0&&(e[k]!==c))||(b-n[k])>g){j[k]=h;n[k]=b}l[k]=p},onDrag:function(b){if(!this.isDragging){return}var a=this.lastDragPosition;this.onAxisDrag("x",this.convertX(b.deltaX));this.onAxisDrag("y",b.deltaY);this.scrollTo(a.x,a.y)},onDragEnd:function(c){var b,a;if(!this.isDragging){return}this.dragEndTime=Ext.Date.now();this.onDrag(c);this.isDragging=false;b=this.getAnimationEasing("x",c);a=this.getAnimationEasing("y",c);if(b||a){this.getTranslatable().animate(b,a)}else{this.onScrollEnd()}},getAnimationEasing:function(j,m){if(!this.isAxisEnabled(j)){return null}var h=this.getPosition()[j],d=this.getMinPosition()[j],l=this.getMaxPosition()[j],b=this.getMaxAbsoluteVelocity(),g=null,c=this.dragEndTime,k=m.flick.velocity[j],o=j==="x",a,n;if(h<d){g=d}else{if(h>l){g=l}}if(o){h=this.convertX(h);g=this.convertX(g)}if(g!==null){n=this.getBounceEasing()[j];n.setConfig({startTime:c,startValue:-h,endValue:-g});return n}if(k===0){return null}if(k<-b){k=-b}else{if(k>b){k=b}}if(Ext.browser.is.IE){k*=2}n=this.getMomentumEasing()[j];a={startTime:c,startValue:-h,startVelocity:k*1.5,minMomentumValue:-l,maxMomentumValue:0};if(o){this.convertEasingConfig(a)}n.setConfig(a);return n},onAnimationFrame:function(c,b,d){var a=this.getPosition();this.fireEvent("scroll",this,this.convertX(a.x),a.y)},onAnimationEnd:function(){this.snapToBoundary();this.onScrollEnd()},stopAnimation:function(){this.getTranslatable().stopAnimation()},onScrollEnd:function(){var a=this.getPosition();if(this.isTouching||!this.snapToSlot()){this.fireEvent("scrollend",this,a.x,a.y)}},snapToSlot:function(){var b=this.getSnapPosition("x"),a=this.getSnapPosition("y"),c=this.getSlotSnapEasing();if(b!==null||a!==null){this.scrollTo(b,a,{easingX:c.x,easingY:c.y});return true}return false},getSnapPosition:function(c){var h=this.getSlotSnapSize()[c],d=null,a,g,e,b;if(h!==0&&this.isAxisEnabled(c)){a=this.getPosition()[c];g=this.getSlotSnapOffset()[c];e=this.getMaxPosition()[c];b=Math.floor((a-g)%h);if(b!==0){if(a!==e){if(Math.abs(b)>h/2){d=Math.min(e,a+((b>0)?h-b:b-h))}else{d=a-b}}else{d=a-b}}}return d},snapToBoundary:function(){if(!this.getSnapToBoundary()){return}var h=this.getPosition(),c=this.getMinPosition(),g=this.getMaxPosition(),e=c.x,d=c.y,b=g.x,a=g.y,k=Math.round(h.x),j=Math.round(h.y);if(k<e){k=e}else{if(k>b){k=b}}if(j<d){j=d}else{if(j>a){j=a}}this.scrollTo(k,j)},destroy:function(){var c=this.getElement(),b=this.sizeMonitors,a;if(b){b.element.destroy();b.container.destroy()}if(c&&!c.isDestroyed){c.removeCls(this.cls);a=this.getContainer();if(a&&!a.isDestroyed){a.removeCls(this.containerCls)}}Ext.destroy(this.getTranslatable());delete this.self.instances[this.id];Ext.mixin.Observable.prototype.destroy.apply(this,arguments)},convertX:function(a){return a},convertEasingConfig:function(a){return a}},1,0,0,0,0,0,[Ext.scroll,"Scroller"],function(){this.override({constructor:function(b){var d,e,a,h,c,g;if(!b){b={}}if(typeof b=="string"){b={direction:b}}if(arguments.length==2){d=b;b=arguments[1];if(!b){b={}}b.element=d}if(b.hasOwnProperty("acceleration")){e=b.acceleration;delete b.acceleration;Ext.merge(b,{momentumEasing:{momentum:{acceleration:e},bounce:{acceleration:e}}})}if(b.hasOwnProperty("snap")){b.slotSnapOffset=b.snap}if(b.hasOwnProperty("friction")){h=b.friction;delete b.friction;Ext.merge(b,{momentumEasing:{momentum:{friction:h}}})}if(b.hasOwnProperty("springTension")){c=b.springTension;delete b.springTension;Ext.merge(b,{momentumEasing:{momentum:{springTension:c}}})}if(b.hasOwnProperty("minVelocityForAnimation")){g=b.minVelocityForAnimation;delete b.minVelocityForAnimation;Ext.merge(b,{momentumEasing:{minVelocity:g}})}this.callOverridden(arguments)},scrollToAnimated:function(a,c,b){return this.scrollTo.apply(this,arguments)},scrollBy:function(a,c,b){if(Ext.isObject(a)){c=a.y;a=a.x}return this.callOverridden([a,c,b])},setOffset:function(a){return this.scrollToAnimated(-a.x,-a.y)}})}));(Ext.cmd.derive("Ext.util.Base64",Ext.Base,{singleton:true,_str:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",encode:function(e){var d=this;var a="",n,l,j,m,k,h,g,b=0;e=d._utf8_encode(e);var c=e.length;while(b<c){n=e.charCodeAt(b++);l=e.charCodeAt(b++);j=e.charCodeAt(b++);m=n>>2;k=((n&3)<<4)|(l>>4);h=((l&15)<<2)|(j>>6);g=j&63;if(isNaN(l)){h=g=64}else{if(isNaN(j)){g=64}}a=a+d._str.charAt(m)+d._str.charAt(k)+d._str.charAt(h)+d._str.charAt(g)}return a},decode:function(e){var d=this;var a="",n,l,j,m,k,h,g,b=0;e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");var c=e.length;while(b<c){m=d._str.indexOf(e.charAt(b++));k=d._str.indexOf(e.charAt(b++));h=d._str.indexOf(e.charAt(b++));g=d._str.indexOf(e.charAt(b++));n=(m<<2)|(k>>4);l=((k&15)<<4)|(h>>2);j=((h&3)<<6)|g;a=a+String.fromCharCode(n);if(h!=64){a=a+String.fromCharCode(l)}if(g!=64){a=a+String.fromCharCode(j)}}a=d._utf8_decode(a);return a},_utf8_encode:function(d){d=d.replace(/\r\n/g,"\n");var b="",g=0,a=d.length;for(;g<a;g++){var e=d.charCodeAt(g);if(e<128){b+=String.fromCharCode(e)}else{if((e>127)&&(e<2048)){b+=String.fromCharCode((e>>6)|192);b+=String.fromCharCode((e&63)|128)}else{b+=String.fromCharCode((e>>12)|224);b+=String.fromCharCode(((e>>6)&63)|128);b+=String.fromCharCode((e&63)|128)}}}return b},_utf8_decode:function(b){var e="",h=0,j=0,d=0,g=0,a=b.length;while(h<a){j=b.charCodeAt(h);if(j<128){e+=String.fromCharCode(j);h++}else{if((j>191)&&(j<224)){g=b.charCodeAt(h+1);e+=String.fromCharCode(((j&31)<<6)|(g&63));h+=2}else{g=b.charCodeAt(h+1);d=b.charCodeAt(h+2);e+=String.fromCharCode(((j&15)<<12)|((g&63)<<6)|(d&63));h+=3}}}return e}},0,0,0,0,0,0,[Ext.util,"Base64"],0));(Ext.cmd.derive("Ext.util.LocalStorage",Ext.Base,{id:null,destroyed:false,lazyKeys:true,prefix:"",session:false,_keys:null,_store:null,_users:0,statics:{cache:{},get:function(e){var d=this,b=d.cache,c={_users:1},a;if(Ext.isString(e)){c.id=e}else{Ext.apply(c,e)}if(!(a=b[c.id])){a=new d(c)}else{++a._users}return a},supported:true},constructor:function(a){var b=this;Ext.apply(b,a);if(b._users){Ext.util.LocalStorage.cache[b.id]=b}b.init()},init:function(){var a=this,b=a.id;if(!a.prefix&&b){a.prefix=b+"-"}a._store=(a.session?window.sessionStorage:window.localStorage)},destroy:function(){var a=this;delete Ext.util.LocalStorage.cache[a.id];a._store=a._keys=null;a.destroyed=true;a.destroy=Ext.emptyFn},getKeys:function(){var e=this,a=e._store,g=e.prefix,d=e._keys,h=g.length,c,b;if(!d){e._keys=d=[];for(c=a.length;c--;){b=a.key(c);if(b.length>h){if(g===b.substring(0,h)){d.push(b.substring(h))}}}}return d},release:function(){if(!--this._users){this.destroy()}},save:Ext.emptyFn,clear:function(){var d=this,a=d._store,e=d.prefix,c=d._keys||d.getKeys(),b;for(b=c.length;b--;){a.removeItem(e+c[b])}c.length=0},key:function(a){var b=this._keys||this.getKeys();return(0<=a&&a<b.length)?b[a]:null},getItem:function(b){var a=this.prefix+b;return this._store.getItem(a)},removeItem:function(c){var g=this,b=g.prefix+c,a=g._store,e=g._keys,d=a.length;a.removeItem(b);if(e&&d!==a.length){if(g.lazyKeys){g._keys=null}else{Ext.Array.remove(e,c)}}},setItem:function(c,h){var g=this,b=g.prefix+c,a=g._store,e=a.length,d=g._keys;a.setItem(b,h);if(d&&e!==a.length){d.push(c)}}},1,0,0,0,0,0,[Ext.util,"LocalStorage"],function(){var a=this;if("localStorage" in window){return}if(!Ext.isIE){a.supported=false;return}a.override({data:null,flushDelay:1,init:function(){var c=this,d=c.data,b;c.el=b=document.createElement("div");b.id=(c.id||(c.id="extjs-localstore"));b.addBehavior("#default#userdata");Ext.getHead().dom.appendChild(b);b.load(c.id);d=b.getAttribute("xdata");c.data=d=(d?Ext.decode(d):{});c._flushFn=function(){c._timer=null;c.save(0)}},destroy:function(){var c=this,b=c.el;if(b){if(c._timer){c.save()}b.parentNode.removeChild(b);c.data=c.el=null;c.callParent()}},getKeys:function(){var c=this,b=c._keys;if(!b){c._keys=b=Ext.Object.getKeys(c.data)}return b},save:function(b){var c=this;if(!b){if(c._timer){clearTimeout(c._timer);c._timer=null}c.el.setAttribute("xdata",Ext.encode(c.data));c.el.save(c.id)}else{if(!c._timer){c._timer=setTimeout(c._flushFn,b)}}},clear:function(){var b=this;b.data={};b._keys=null;b.save(b.flushDelay)},getItem:function(b){var c=this.data;return(b in c)?c[b]:null},removeItem:function(b){var d=this,c=d._keys,e=d.data;if(b in e){delete e[b];if(c){if(d.lazyKeys){d._keys=null}else{Ext.Array.remove(c,b)}}d.save(d.flushDelay)}},setItem:function(b,g){var d=this,e=d.data,c=d._keys;if(c&&!(b in e)){c.push(b)}e[b]=g;d.save(d.flushDelay)}})}));(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(a,d,e){var b=this,c=b.shared;if(!c){c=b.shared=new b(a,e)}c.bind(a);c.setFixedWidth(e||"auto");return c.getSize(d)},destroy:function(){var a=this;Ext.destroy(a.shared);a.shared=null}},constructor:function(a,d){var c=this,b=Ext.getBody().createChild({role:"presentation",cls:Ext.baseCSSPrefix+"textmetrics"});c.measure=b;if(a){c.bind(a)}b.position("absolute");b.setLocalXY(-1000,-1000);b.hide();if(d){b.setWidth(d)}},getSize:function(c){var b=this.measure,a;b.setHtml(c);a=b.getSize();b.setHtml("");return a},bind:function(a){var b=this;b.el=Ext.get(a);b.measure.setStyle(b.el.getStyle(["font-size","font-style","font-weight","font-family","line-height","text-transform","letter-spacing","word-break"]))},setFixedWidth:function(a){this.measure.setWidth(a)},getWidth:function(a){this.measure.dom.style.width="auto";return this.getSize(a).width},getHeight:function(a){return this.getSize(a).height},destroy:function(){var a=this;a.measure.destroy();delete a.el;delete a.measure}},1,0,0,0,0,0,[Ext.util,"TextMetrics"],function(){Ext.Element.override({getTextWidth:function(c,b,a){return Ext.Number.constrain(Ext.util.TextMetrics.measure(this.dom,Ext.valueFrom(c,this.dom.innerHTML,true)).width,b||0,a||1000000)}})}));(Ext.cmd.derive("Ext.Action",Ext.Base,{constructor:function(a){this.initialConfig=a;this.itemId=a.itemId=(a.itemId||a.id||Ext.id());this.items=[]},isAction:true,setText:function(a){this.initialConfig.text=a;this.callEach("setText",[a])},getText:function(){return this.initialConfig.text},setIconCls:function(a){this.initialConfig.iconCls=a;this.callEach("setIconCls",[a])},getIconCls:function(){return this.initialConfig.iconCls},setDisabled:function(a){this.initialConfig.disabled=a;this.callEach("setDisabled",[a])},enable:function(){this.setDisabled(false)},disable:function(){this.setDisabled(true)},isDisabled:function(){return this.initialConfig.disabled},setHidden:function(a){this.initialConfig.hidden=a;this.callEach("setVisible",[!a])},show:function(){this.setHidden(false)},hide:function(){this.setHidden(true)},isHidden:function(){return this.initialConfig.hidden},setHandler:function(b,a){this.initialConfig.handler=b;this.initialConfig.scope=a;this.callEach("setHandler",[b,a])},each:function(b,a){Ext.each(this.items,b,a)},callEach:function(g,c){var b=this.items,d=0,a=b.length,e;Ext.suspendLayouts();for(;d<a;d++){e=b[d];e[g].apply(e,c)}Ext.resumeLayouts(true)},addComponent:function(a){this.items.push(a);a.on("destroy",this.removeComponent,this)},removeComponent:function(a){Ext.Array.remove(this.items,a)},execute:function(){this.initialConfig.handler.apply(this.initialConfig.scope||Ext.global,arguments)}},1,0,0,0,0,0,[Ext,"Action"],0));(Ext.cmd.derive("Ext.util.ProtoElement",Ext.Base,function(){var b=Ext.String.splitWords,a=Ext.Array.toMap;return{isProtoEl:true,clsProp:"cls",styleProp:"style",removedProp:"removed",styleIsText:false,constructor:function(d){var g=this,c,e;if(d){Ext.apply(g,d);c=g.cls;e=g.style;delete g.cls}g.classList=c?b(c):[];g.classMap=c?a(g.classList):{};if(e){if(typeof e==="string"){g.style=Ext.Element.parseStyles(e)}else{if(Ext.isFunction(e)){g.styleFn=e;delete g.style}else{g.style=Ext.apply({},e)}}}},flush:function(){this.flushClassList=[];this.removedClasses={};delete this.style;delete this.unselectableAttr},addCls:function(n){if(!n){return this}var l=this,m=(typeof n==="string")?b(n):n,e=m.length,j=l.classList,d=l.classMap,g=l.flushClassList,h=0,k;for(;h<e;++h){k=m[h];if(!d[k]){d[k]=true;j.push(k);if(g){g.push(k);delete l.removedClasses[k]}}}return l},hasCls:function(c){return c in this.classMap},removeCls:function(o){var n=this,l=n.classList,g=(n.classList=[]),j=a(b(o)),e=l.length,d=n.classMap,k=n.removedClasses,h,m;for(h=0;h<e;++h){m=l[h];if(j[m]){if(k){if(d[m]){k[m]=true;Ext.Array.remove(n.flushClassList,m)}}delete d[m]}else{g.push(m)}}return n},setStyle:function(g,e){var d=this,c=d.style||(d.style={});if(typeof g=="string"){if(arguments.length===1){d.setStyle(Ext.Element.parseStyles(g))}else{c[g]=e}}else{Ext.apply(c,g)}return d},unselectable:function(){this.addCls(Ext.dom.Element.unselectableCls);if(Ext.isOpera){this.unselectableAttr=true}},writeTo:function(h){var e=this,g=e.flushClassList||e.classList,d=e.removedClasses,c;if(e.styleFn){c=Ext.apply({},e.styleFn());Ext.apply(c,e.style)}else{c=e.style}h[e.clsProp]=g.join(" ");if(c){h[e.styleProp]=e.styleIsText?Ext.DomHelper.generateStyles(c,null,true):c}if(d){d=Ext.Object.getKeys(d);if(d.length){h[e.removedProp]=d.join(" ")}}if(e.unselectableAttr){h.unselectable="on"}return h}}},1,0,0,0,0,0,[Ext.util,"ProtoElement"],0));(Ext.cmd.derive("Ext.util.ElementContainer",Ext.Base,{mixinId:"elementCt",config:{childEls:{$value:{},cached:true,lazy:true,merge:function(g,a,e,d){var c=a?Ext.Object.chain(a):{},b,h;if(g instanceof Array){for(b=g.length;b--;){h=g[b];if(!d||!(h in c)){if(typeof h==="string"){c[h]={name:h,itemId:h}}else{c[h.name]=h}}}}else{if(g){if(g.constructor===Object){for(b in g){if(!d||!(b in c)){h=g[b];if(h===true){c[b]={itemId:b}}else{if(typeof h==="string"){c[b]={itemId:h}}else{c[b]=h;if(!("itemId" in h)){h.itemId=b}}}c[b].name=b}}}else{if(!d||!(g in c)){c[g]={name:g,itemId:g}}}}}return c}}},destroy:function(){var c=this,b=c.getChildEls(),d,a;for(a in b){d=c[a];if(d){if(d.destroy){d.destroy()}c[a]=null}}},privates:{afterClassMixedIn:function(c){var b=c.prototype,a=b.childEls;if(a){delete b.childEls;c.getConfigurator().add({childEls:a})}},attachChildEls:function(d,c){var j=this,l=j.getChildEls(),h=c||j,p=h.id+"-",o=!h.frame,q,a,n,g,e,m,b;for(q in l){n=l[q];if(o&&n.frame){continue}e=n.select;if(e){m=d.select(e,true)}else{if(!(e=n.selectNode)){if(!(b=n.id)){b=p+n.itemId;m=Ext.cache[b]}else{m=Ext.cache[b]||d.getById(b)}}else{m=d.selectNode(e,false)}}if(m){if(m.isElement){m.component=h}else{if(m.isComposite&&!m.isLite){a=m.elements;for(g=a.length;g--;){a[g].component=h}}}}j[q]=m||null}}}},0,0,0,0,0,0,[Ext.util,"ElementContainer"],0));(Ext.cmd.derive("Ext.util.Renderable",Ext.Base,{mixinId:"renderable",frameCls:Ext.baseCSSPrefix+"frame",frameIdRegex:/[\-]frame\d+[TMB][LCR]$/,frameElNames:["TL","TC","TR","ML","MC","MR","BL","BC","BR","Table"],frameTpl:["{%this.renderDockedItems(out,values,0);%}",'<tpl if="top">','<tpl if="left"><div id="{fgid}TL" data-ref="frameTL" class="{frameCls}-tl {baseCls}-tl {baseCls}-{ui}-tl<tpl for="uiCls"> {parent.baseCls}-{parent.ui}-{.}-tl</tpl>{frameElCls}" role="presentation"></tpl>','<tpl if="right"><div id="{fgid}TR" data-ref="frameTR" class="{frameCls}-tr {baseCls}-tr {baseCls}-{ui}-tr<tpl for="uiCls"> {parent.baseCls}-{parent.ui}-{.}-tr</tpl>{frameElCls}" role="presentation"></tpl>','<div id="{fgid}TC" data-ref="frameTC" class="{frameCls}-tc {baseCls}-tc {baseCls}-{ui}-tc<tpl for="uiCls"> {parent.baseCls}-{parent.ui}-{.}-tc</tpl>{frameElCls}" role="presentation"></div>','<tpl if="right"></div></tpl>','<tpl if="left"></div></tpl>',"</tpl>",'<tpl if="left"><div id="{fgid}ML" data-ref="frameML" class="{frameCls}-ml {baseCls}-ml {baseCls}-{ui}-ml<tpl for="uiCls"> {parent.baseCls}-{parent.ui}-{.}-ml</tpl>{frameElCls}" role="presentation"></tpl>','<tpl if="right"><div id="{fgid}MR" data-ref="frameMR" class="{frameCls}-mr {baseCls}-mr {baseCls}-{ui}-mr<tpl for="uiCls"> {parent.baseCls}-{parent.ui}-{.}-mr</tpl>{frameElCls}" role="presentation"></tpl>','<div id="{fgid}Body" data-ref="frameBody" class="{frameCls}-mc {baseCls}-mc {baseCls}-{ui}-mc<tpl for="uiCls"> {parent.baseCls}-{parent.ui}-{.}-mc</tpl>{frameElCls}" role="presentation">',"{%this.applyRenderTpl(out, values)%}","</div>",'<tpl if="right"></div></tpl>','<tpl if="left"></div></tpl>','<tpl if="bottom">','<tpl if="left"><div id="{fgid}BL" data-ref="frameBL" class="{frameCls}-bl {baseCls}-bl {baseCls}-{ui}-bl<tpl for="uiCls"> {parent.baseCls}-{parent.ui}-{.}-bl</tpl>{frameElCls}" role="presentation"></tpl>','<tpl if="right"><div id="{fgid}BR" data-ref="frameBR" class="{frameCls}-br {baseCls}-br {baseCls}-{ui}-br<tpl for="uiCls"> {parent.baseCls}-{parent.ui}-{.}-br</tpl>{frameElCls}" role="presentation"></tpl>','<div id="{fgid}BC" data-ref="frameBC" class="{frameCls}-bc {baseCls}-bc {baseCls}-{ui}-bc<tpl for="uiCls"> {parent.baseCls}-{parent.ui}-{.}-bc</tpl>{frameElCls}" role="presentation"></div>','<tpl if="right"></div></tpl>','<tpl if="left"></div></tpl>',"</tpl>","{%this.renderDockedItems(out,values,1);%}"],frameTableTpl:["{%this.renderDockedItems(out,values,0);%}",'<table id="{fgid}Table" data-ref="frameTable" class="{frameCls} ',Ext.baseCSSPrefix+'table-plain" cellpadding="0" role="presentation">','<tpl if="top">','<tr role="presentation">','<tpl if="left"><td id="{fgid}TL" data-ref="frameTL" class="{frameCls}-tl {baseCls}-tl {baseCls}-{ui}-tl<tpl for="uiCls"> {parent.baseCls}-{parent.ui}-{.}-tl</tpl>{frameElCls}" role="presentation"></td></tpl>','<td id="{fgid}TC" data-ref="frameTC" class="{frameCls}-tc {baseCls}-tc {baseCls}-{ui}-tc<tpl for="uiCls"> {parent.baseCls}-{parent.ui}-{.}-tc</tpl>{frameElCls}" role="presentation"></td>','<tpl if="right"><td id="{fgid}TR" data-ref="frameTR" class="{frameCls}-tr {baseCls}-tr {baseCls}-{ui}-tr<tpl for="uiCls"> {parent.baseCls}-{parent.ui}-{.}-tr</tpl>{frameElCls}" role="presentation"></td></tpl>',"</tr>","</tpl>",'<tr role="presentation">','<tpl if="left"><td id="{fgid}ML" data-ref="frameML" class="{frameCls}-ml {baseCls}-ml {baseCls}-{ui}-ml<tpl for="uiCls"> {parent.baseCls}-{parent.ui}-{.}-ml</tpl>{frameElCls}" role="presentation"></td></tpl>','<td id="{fgid}Body" data-ref="frameBody" class="{frameCls}-mc {baseCls}-mc {baseCls}-{ui}-mc<tpl for="uiCls"> {parent.baseCls}-{parent.ui}-{.}-mc</tpl>{frameElCls}" style="{mcStyle}" role="presentation">',"{%this.applyRenderTpl(out, values)%}","</td>",'<tpl if="right"><td id="{fgid}MR" data-ref="frameMR" class="{frameCls}-mr {baseCls}-mr {baseCls}-{ui}-mr<tpl for="uiCls"> {parent.baseCls}-{parent.ui}-{.}-mr</tpl>{frameElCls}" role="presentation"></td></tpl>',"</tr>",'<tpl if="bottom">','<tr role="presentation">','<tpl if="left"><td id="{fgid}BL" data-ref="frameBL" class="{frameCls}-bl {baseCls}-bl {baseCls}-{ui}-bl<tpl for="uiCls"> {parent.baseCls}-{parent.ui}-{.}-bl</tpl>{frameElCls}" role="presentation"></td></tpl>','<td id="{fgid}BC" data-ref="frameBC" class="{frameCls}-bc {baseCls}-bc {baseCls}-{ui}-bc<tpl for="uiCls"> {parent.baseCls}-{parent.ui}-{.}-bc</tpl>{frameElCls}" role="presentation"></td>','<tpl if="right"><td id="{fgid}BR" data-ref="frameBR" class="{frameCls}-br {baseCls}-br {baseCls}-{ui}-br<tpl for="uiCls"> {parent.baseCls}-{parent.ui}-{.}-br</tpl>{frameElCls}" role="presentation"></td></tpl>',"</tr>","</tpl>","</table>","{%this.renderDockedItems(out,values,1);%}"],_renderState:0,statics:{makeRenderSetter:function(a,c){var b=a.name;return function(e){var d=this,h=(d.renderConfigs||(d.renderConfigs={})),g=h[c];if(d._renderState>=c){(a.setter||a.getSetter()).call(d,e)}else{if(!g){h[c]=g={}}if(!(b in g)){g[b]=d[b]}d[b]=e}return d}},processRenderConfig:function(a,m,c){var h=this.prototype,e=this.getConfigurator(),n=Ext.util.Renderable,l=n.makeRenderSetter,d=a[m],j,k,b,g;for(b in d){k=Ext.Config.get(b);if(!h[g=k.names.set]){j=(k.renderSetter||(k.renderSetter={}));h[g]=j[c]||(j[c]=l(k,c))}}delete a[m];e.add(d)}},onClassMixedIn:function(c){var a=c.override,e=this.processRenderConfig,d=function(g){if(g.beforeRenderConfig){this.processRenderConfig(g,"beforeRenderConfig",1)}if(g.renderConfig){this.processRenderConfig(g,"renderConfig",3)}a.call(this,g)},b=function(h,g){h.override=d;h.processRenderConfig=e;if(g.beforeRenderConfig){h.processRenderConfig(g,"beforeRenderConfig",1)}if(g.renderConfig){h.processRenderConfig(g,"renderConfig",3)}};b(c,c.prototype);c.onExtended(b)},afterRender:function(){var c=this,e={},j=c.protoEl,h=c.el,b,g,d,a;c.finishRenderChildren();c._renderState=4;if(c.contentEl){g=Ext.baseCSSPrefix;d=g+"hidden-";a=Ext.get(c.contentEl);a.component=c;a.removeCls([g+"hidden",d+"display",d+"offsets"]);c.getContentTarget().appendChild(a.dom)}j.writeTo(e);b=e.removed;if(b){h.removeCls(b)}b=e.cls;if(b.length){h.addCls(b)}b=e.style;if(e.style){h.setStyle(b)}c.protoEl=null;if(!c.ownerCt){c.updateLayout()}if(!(c.x&&c.y)&&(c.pageX||c.pageY)){c.setPagePosition(c.pageX,c.pageY)}if(c.disableOnRender){c.onDisable()}else{if(c.enableOnRender){c.onEnable()}}if(Ext.enableAria){c.ariaApplyAfterRenderAttributes()}},afterFirstLayout:function(c,l){var e=this,k=e.x,h=e.y,d,b,j,m,g=e.defaultAlign,a=e.alignOffset;if(!e.ownerLayout){d=k!==undefined;b=h!==undefined}if(e.floating&&(!d||!b)){if(e.floatParent){j=e.floatParent.getTargetEl().getViewRegion();m=e.el.getAlignToXY(e.alignTarget||e.floatParent.getTargetEl(),g,a);j.x=m[0]-j.x;j.y=m[1]-j.y}else{m=e.el.getAlignToXY(e.alignTarget||e.container,g,a);j=e.container.translateXY(m[0],m[1])}k=d?k:j.x;h=b?h:j.y;d=b=true}if(d||b){e.setPosition(k,h)}e.onBoxReady(c,l)},beforeRender:function(){var c=this,d=c.floating,b=c.getComponentLayout(),a;c._renderState=1;c.initBindable();if(c.renderConfigs){c.flushRenderConfigs()}if(c.reference){c.publishState()}if(d){c.addCls(Ext.baseCSSPrefix+"layer");a=d.cls;if(a){c.addCls(a)}}c.frame=c.frame||c.alwaysFramed;if(!b.initialized){b.initLayout()}c.initOverflow();c.setUI(c.ui);if(c.disabled){c.disable(true)}},doApplyRenderTpl:function(c,a){var d=a.$comp,b;if(!d.rendered){b=d.initRenderTpl();b.applyOut(a.renderData,c)}},getElConfig:function(){var d=this,g=d.autoEl,c=d.getFrameInfo(),a={tag:"div",tpl:c?d.initFramingTpl(c.table):d.initRenderTpl()},e=d.protoEl,b;d.initStyles(e);e.writeTo(a);e.flush();if(Ext.isString(g)){a.tag=g}else{Ext.apply(a,g)}if(Ext.enableAria&&d.ariaRenderAttributesToElement){Ext.apply(a,d.ariaGetRenderAttributes())}a.id=d.id;if(a.tpl){if(c){a.tplData=b=d.getFrameRenderData();b.renderData=d.initRenderData()}else{a.tplData=d.initRenderData()}}return a},getInsertPosition:function(a){if(a!==undefined){if(Ext.isNumber(a)){a=this.container.dom.childNodes[a]}else{a=Ext.getDom(a)}}return a},getRenderTree:function(){var b=this,a=null;if(!b.hasListeners.beforerender||b.fireEvent("beforerender",b)!==false){b._renderState=1;b.beforeRender();b.rendering=true;b._renderState=2;a=b.getElConfig();if(b.el){a.id=b.$pid=Ext.id(null,b.el.identifiablePrefix)}}return a},initRenderData:function(){var a=this;return Ext.apply({$comp:a,id:a.id,ui:a.ui,uiCls:a.uiCls,baseCls:a.baseCls,componentCls:a.componentCls,frame:a.frame,renderScroller:a.touchScroll,scrollerCls:a.scrollerCls,role:a.ariaRole,childElCls:""},a.renderData)},onRender:function(d,e){var g=this,j=g.x,h=g.y,c=null,b=g.el,a,k;g.applyRenderSelectors();g.rendering=null;g.rendered=true;g._renderState=3;if(g.renderConfigs){g.flushRenderConfigs()}if(j!=null){c={x:j}}if(h!=null){(c=c||{}).y=h}if(!g.getFrameInfo()){a=g.width;k=g.height;if(typeof a==="number"){c=c||{};c.width=a}if(typeof k==="number"){c=c||{};c.height=k}}if(g.touchScroll===1){g.getOverflowEl().disableTouchScroll()}g.lastBox=b.lastBox=c},render:function(c,b){var e=this,d=e.el,j=e.ownerLayout,h,a,g;if(d&&!d.isElement){e.el=d=e.wrapPrimaryEl(d)}Ext.suspendLayouts();c=e.initContainer(c);g=e.getInsertPosition(b);if(!d){a=e.getRenderTree();if(j&&j.transformItemRenderTree){a=j.transformItemRenderTree(a)}if(a){if(g){d=Ext.DomHelper.insertBefore(g,a)}else{d=Ext.DomHelper.append(c,a)}e.wrapPrimaryEl(d);e.cacheRefEls(d)}}else{if(!e.hasListeners.beforerender||e.fireEvent("beforerender",e)!==false){e.beforeRender();e.needsRenderTpl=e.rendering=true;e._renderState=2;e.initStyles(d);if(e.allowDomMove!==false){if(g){c.dom.insertBefore(d.dom,g)}else{c.dom.appendChild(d.dom)}}}else{h=true}}if(d&&!h){e.finishRender(b)}Ext.resumeLayouts(!e.hidden&&!c.isDetachedBody)},ensureAttachedToBody:function(c){var b=this,a;while(b.ownerCt){b=b.ownerCt}if(b.container.isDetachedBody){b.container=a=Ext.getBody();a.appendChild(b.el.dom);if(c){b.updateLayout()}if(typeof b.x=="number"||typeof b.y=="number"){b.setPosition(b.x,b.y)}}},privates:{applyRenderSelectors:function(){var d=this,b=d.renderSelectors,c=d.el,e,a;d.attachChildEls(c);if(b){for(a in b){e=b[a];if(e){d[a]=c.selectNode(e,false)}}}},cacheRefEls:function(e){e=e||this.el;var c=Ext.cache,h=Ext.dom.Element,j=e.isElement?e.dom:e,b=j.querySelectorAll("[data-ref]"),a=b.length,g,d;for(d=0;d<a;d++){g=b[d];if(!c[g.id]){new h(g)}}},doAutoRender:function(){var a=this;if(!a.rendered){if(a.floating){a.render(a.renderTo||document.body)}else{a.render(Ext.isBoolean(a.autoRender)?Ext.getBody():a.autoRender)}}},doRenderContent:function(a,d){var b=d.$comp,c=b.data;if(b.html){Ext.DomHelper.generateMarkup(b.html,a);delete b.html}if(b.tpl){if(!b.tpl.isTemplate){b.tpl=new Ext.XTemplate(b.tpl)}if(c){b.data=c=c.isEntity?c.getData(true):c;b.tpl.applyOut(c,a)}}},doRenderFramingDockedItems:function(a,c,d){var b=c.$comp;if(!b.rendered&&b.doRenderDockedItems){c.renderData.$skipDockedItems=true;b.doRenderDockedItems.call(this,a,c,d)}},flushRenderConfigs:function(){var d=this,h=d.renderConfigs,g=d._renderState,j,c,b,a,e;if(h){for(c=0;c<=g;++c){j=h[c];if(j){h[c]=null;for(b in j){e=j[b];(a||(a={}))[b]=d[b];d[b]=e}}}if(a){d.setConfig(a)}}},finishRender:function(h){var l=this,a=Ext.cache,k,g,b,j,e,d,c;if(!l.el||l.$pid){if(l.container){c=a[l.id];d=c?c.dom:l.container.getById(l.id,true)}else{b=l.$pid||l.id;c=a[b];d=c?c.dom:Ext.getDom(b)}if(!l.el){l.wrapPrimaryEl(d)}else{delete l.$pid;if(!l.el.dom){l.wrapPrimaryEl(l.el)}d.parentNode.insertBefore(l.el.dom,d);k=d;d=l.el.dom;g=d.firstChild;while(k.firstChild){d.insertBefore(k.firstChild,g)}l.el.addCls(k.className);Ext.removeNode(k)}}else{if(l.needsRenderTpl){j=l.initRenderTpl();if(j){e=l.initRenderData();j.insertFirst(l.getTargetEl(),e)}l.cacheRefEls()}}l.el.component=l;if(!l.container){l.container=Ext.get(l.el.dom.parentNode)}if(l.ctCls){l.container.addCls(l.ctCls)}l.onRender(l.container,h);if(!l.overflowInited){l.initOverflow()}l.el.setVisibilityMode(Ext.Element[l.hideMode.toUpperCase()]);if(l.overCls){l.el.hover(l.addOverCls,l.removeOverCls,l)}if(l.hasListeners.render){l.fireEvent("render",l)}l.afterRender();if(l.hasListeners.afterrender){l.fireEvent("afterrender",l)}l.initEvents();if(l.hidden){l.el.hide()}},finishRenderChildren:function(){var a=this.getComponentLayout();a.finishRender()},getFrameRenderData:function(){var c=this,b=c.frameSize,a="";if(c._syncFrameHeight&&c.height){a="height:"+(c.height-b.height)+"px"}return{$comp:c,fgid:c.id+"-frame",ui:c.ui,uiCls:c.uiCls,frameCls:c.frameCls,baseCls:c.baseCls,top:!!b.top,left:!!b.left,right:!!b.right,bottom:!!b.bottom,mcStyle:a,frameElCls:""}},getFrameInfo:function(){if(Ext.supports.CSS3BorderRadius||!this.frame){return false}var w=this,o=w.frameInfoCache,e=w.getFramingInfoCls()+"-frameInfo",x=o[e],p=Math.max,n,s,m,y,g,k,b,c,l,h,r,t,j,a,d,v,q,u;if(x==null){n=Ext.fly(w.getStyleProxy(e),"frame-style-el");s=n.getStyle("font-family");if(s){s=s.split("-");d=parseInt(s[1],10);v=parseInt(s[2],10);q=parseInt(s[3],10);u=parseInt(s[4],10);b=parseInt(s[5],10);c=parseInt(s[6],10);l=parseInt(s[7],10);h=parseInt(s[8],10);r=parseInt(s[9],10);t=parseInt(s[10],10);j=parseInt(s[11],10);a=parseInt(s[12],10);m=p(b,p(d,v));y=p(c,p(v,q));g=p(l,p(u,q));k=p(h,p(d,u));x={table:s[0].charAt(0)==="t",vertical:s[0].charAt(1)==="v",top:m,right:y,bottom:g,left:k,width:k+y,height:m+g,maxWidth:p(m,y,g,k),border:{top:b,right:c,bottom:l,left:h,width:h+c,height:b+l},padding:{top:r,right:t,bottom:j,left:a,width:a+t,height:r+j},radius:{tl:d,tr:v,br:q,bl:u}}}else{x=false}o[e]=x}w.frame=!!x;w.frameSize=x;return x},getFramingInfoCls:function(){return this.baseCls+"-"+this.ui},getStyleProxy:function(b){var a=this.styleProxyEl||(Ext.Component.prototype.styleProxyEl=Ext.getBody().createChild({role:"presentation",style:{position:"absolute",top:"-10000px"}},null,true));a.className=b;return a},getFrameTpl:function(a){return this.getTpl(a?"frameTableTpl":"frameTpl")},initContainer:function(a){var b=this;if(!a&&b.el){a=b.el.dom.parentNode;b.allowDomMove=false}b.container=a.dom?a:Ext.get(a);return b.container},initOverflow:function(){var c=this,a=c.getOverflowStyle(),e=c.scrollFlags,d=c.getOverflowEl(),b=c.touchScroll=(e.y||e.x)&&Ext.supports.touchScroll;if(!d){return}c.overflowInited=true;if(b===2){d.setStyle("overflow","hidden")}else{d.setStyle(a)}},doRenderPadding:function(a,c){var b=c.$comp;if(b.touchScroll){a.push("padding:",b.unitizeBox(b.padding))}},initFramingTpl:function(b){var a=this.getFrameTpl(b);if(a&&!a.applyRenderTpl){this.setupFramingTpl(a)}return a},initRenderTpl:function(){var a=this.getTpl("renderTpl");if(a&&!a.renderContent){this.setupRenderTpl(a)}return a},setupFramingTpl:function(a){a.applyRenderTpl=this.doApplyRenderTpl;a.renderDockedItems=this.doRenderFramingDockedItems},setupRenderTpl:function(a){a.renderBody=a.renderContent=this.doRenderContent;a.renderPadding=this.doRenderPadding},updateFrame:function(){if(Ext.supports.CSS3BorderRadius||!this.frame){return}var n=this,h=n.el.dom,m=n.frameTable,c=n.frameBody,p=c.dom,l=n.getFrameInfo(),q,g,b,e,k,r,s,d,j,a,o;b=document.createElement("div");r=n.getFrameRenderData();d=n.getFrameTpl(l.table);d.insertFirst(b,r);o=b.querySelectorAll("[data-ref]");a=b.querySelector('[data-ref="frameBody"]');for(k=p;k.parentNode!==h;){k=k.parentNode}while(b.firstChild){h.insertBefore(b.firstChild,k)}a.parentNode.replaceChild(p,a);p.className=a.className;c.setSize();q=n.getChildEls();if(m){m.destroy();n.frameTable=null}for(g in q){if(q[g].frame){e=n[g];if(e&&e!==c){e.destroy();n[g]=null}}}for(j=o.length;j--;){g=(s=o[j]).getAttribute("data-ref");if(g!=="frameBody"){n[g]=new Ext.dom.Element(s)}}},frameInfoCache:{}}},0,0,0,0,0,0,[Ext.util,"Renderable"],0));(Ext.cmd.derive("Ext.state.Provider",Ext.Base,{prefix:"ext-",constructor:function(a){var b=this;Ext.apply(b,a);b.state={};b.mixins.observable.constructor.call(b)},get:function(b,a){return typeof this.state[b]=="undefined"?a:this.state[b]},clear:function(a){var b=this;delete b.state[a];b.fireEvent("statechange",b,a,null)},set:function(a,c){var b=this;b.state[a]=c;b.fireEvent("statechange",b,a,c)},decodeValue:function(g){var c=this,l=/^(a|n|d|b|s|o|e)\:(.*)$/,b=l.exec(unescape(g)),h,d,a,k,e,j;if(!b||!b[1]){return}d=b[1];g=b[2];switch(d){case"e":return null;case"n":return parseFloat(g);case"d":return new Date(Date.parse(g));case"b":return(g=="1");case"a":h=[];if(g!=""){k=g.split("^");e=k.length;for(j=0;j<e;j++){g=k[j];h.push(c.decodeValue(g))}}return h;case"o":h={};if(g!=""){k=g.split("^");e=k.length;for(j=0;j<e;j++){g=k[j];a=g.split("=");h[a[0]]=c.decodeValue(a[1])}}return h;default:return g}},encodeValue:function(e){var g="",d=0,b,a,c;if(e==null){return"e:1"}else{if(typeof e=="number"){b="n:"+e}else{if(typeof e=="boolean"){b="b:"+(e?"1":"0")}else{if(Ext.isDate(e)){b="d:"+e.toUTCString()}else{if(Ext.isArray(e)){for(a=e.length;d<a;d++){g+=this.encodeValue(e[d]);if(d!=a-1){g+="^"}}b="a:"+g}else{if(typeof e=="object"){for(c in e){if(typeof e[c]!="function"&&e[c]!==undefined){g+=c+"="+this.encodeValue(e[c])+"^"}}b="o:"+g.substring(0,g.length-1)}else{b="s:"+e}}}}}}return escape(b)}},1,0,0,0,0,[["observable",Ext.util.Observable]],[Ext.state,"Provider"],0));(Ext.cmd.derive("Ext.state.Manager",Ext.Base,{singleton:true,constructor:function(){this.provider=new Ext.state.Provider()},setProvider:function(a){this.provider=a},get:function(b,a){return this.provider.get(b,a)},set:function(a,b){this.provider.set(a,b)},clear:function(a){this.provider.clear(a)},getProvider:function(){return this.provider}},1,0,0,0,0,0,[Ext.state,"Manager"],0));(Ext.cmd.derive("Ext.state.Stateful",Ext.Base,{mixinId:"state",stateful:false,saveDelay:100,constructor:function(){var a=this;if(!a.stateEvents){a.stateEvents=[]}if(a.stateful!==false){a.addStateEvents(a.stateEvents);a.initState()}},addStateEvents:function(d){var g=this,c,e,b,a;if(g.stateful&&g.getStateId()){a=(typeof d==="string")?arguments:d;b=g.stateEventsByName||(g.stateEventsByName={});for(c=a.length;c--;){e=a[c];if(e&&!b[e]){b[e]=1;g.on(e,g.onStateChange,g)}}}},onStateChange:function(){var c=this,a=c.saveDelay,d,b;if(!c.stateful){return}if(a){if(!c.stateTask){d=Ext.state.Stateful;b=d.runner||(d.runner=new Ext.util.TaskRunner());c.stateTask=b.newTask({run:c.saveState,scope:c,interval:a,repeat:1})}c.stateTask.start()}else{c.saveState()}},saveState:function(){var j=this,b=j.stateful&&j.getStateId(),h=j.hasListeners,c,e,d,g,a,k;if(b){a=j.getState()||{};c=j.getPlugins()||[];for(d=0,g=c.length;d<g;d++){e=c[d];if(e&&e.getState){k=e.getState(a);if(k&&!a[e.ptype]){a[e.ptype]=k}}}if(!h.beforestatesave||j.fireEvent("beforestatesave",j,a)!==false){Ext.state.Manager.set(b,a);if(h.statesave){j.fireEvent("statesave",j,a)}}}},getState:function(){return null},applyState:function(a){if(a){Ext.apply(this,a)}},getStateId:function(){var a=this;return a.stateId||(a.autoGenId?null:a.id)},initState:function(){var k=this,b=k.stateful&&k.getStateId(),j=k.hasListeners,a,l,e,h,d,g,c;if(b){l=Ext.state.Manager.get(b);if(l){a=Ext.apply({},l);if(!j.beforestaterestore||k.fireEvent("beforestaterestore",k,l)!==false){d=k.getPlugins()||[];for(e=0,h=d.length;e<h;e++){g=d[e];if(g){c=g.ptype;if(g.applyState){g.applyState(a[c],l)}delete a[c]}}k.applyState(a);if(j.staterestore){k.fireEvent("staterestore",k,l)}}}}},savePropToState:function(g,e,d){var b=this,c=b[g],a=b.initialConfig;if(b.hasOwnProperty(g)){if(!a||a[g]!==c){if(e){e[d||g]=c}return true}}return false},savePropsToState:function(e,c){var b=this,a,d;if(typeof e==="string"){b.savePropToState(e,c)}else{for(a=0,d=e.length;a<d;++a){b.savePropToState(e[a],c)}}return c},destroy:function(){var b=this,a=b.stateTask;if(a){a.destroy();b.stateTask=null}b.clearListeners()}},1,0,0,0,0,0,[Ext.state,"Stateful"],0));(Ext.cmd.derive("Ext.util.Floating",Ext.Base,{mixinId:"floating",focusOnToFront:true,shadow:"sides",constrain:false,constructor:function(b){var a=this;a.el=new Ext.dom.Layer(Ext.apply({preventSync:true,hideMode:a.hideMode,shadow:(typeof a.shadow!="undefined")?a.shadow:"sides",shadowOffset:a.shadowOffset,constrain:false,fixed:a.fixed,shim:(a.shim===false)?false:undefined},a.floating),b);if(a.modal&&!(Ext.enableFocusManager)){a.mon(a.el,{keydown:a.onKeyDown,scope:a})}a.mon(a.el,{mousedown:a.onMouseDown,scope:a,capture:true});a.floating=true;a.registerWithOwnerCt();a.initHierarchyEvents()},initHierarchyEvents:function(){var b=this,a=this.syncHidden;if(!b.hasHierarchyEventListeners){b.mon(Ext.GlobalEvents,{hide:a,collapse:a,show:a,expand:a,added:a,scope:b});b.hasHierarchyEventListeners=true}},registerWithOwnerCt:function(){var c=this,b=c.ownerCt,a=c.zIndexParent;if(a){a.unregisterFloatingItem(c)}a=c.zIndexParent=c.up("[floating]");c.setFloatParent(b||a);delete c.ownerCt;if(a){a.registerFloatingItem(c)}else{Ext.WindowManager.register(c)}},onKeyDown:function(d){var c=this,a,h,g,b;if(d.getKey()===d.TAB){a=d.shiftKey;h=c.query(":focusable");if(h.length){g=h[0];b=h[h.length-1];if(!a&&b.hasFocus){d.stopEvent();g.focus()}else{if(a&&g.hasFocus){d.stopEvent();b.focus()}}}}},onMouseDown:function(g){var b=this,a=b.focusTask,c=false,d,h;if(b.floating&&(!a||!a.id)){d=g.target;h=b.el.dom;while(d&&d!==h){if(Ext.fly(d).isFocusable()){c=true;break}d=d.parentNode}b.toFront(c)}},setFloatParent:function(b){var a=this;a.floatParent=b;if((a.constrain||a.constrainHeader)&&!a.constrainTo){a.constrainTo=b?b.getTargetEl():a.container}},syncShadow:function(){if(this.floating){this.el.sync(true)}},onBeforeFloatLayout:function(){this.el.preventSync=true},onAfterFloatLayout:function(){delete this.el.preventSync;this.syncShadow()},syncHidden:function(){var c=this,d=c.hidden||!c.rendered,a=c.hierarchicallyHidden=c.isHierarchicallyHidden(),b=c.pendingShow;if(d!==a){if(a){c.hide();c.pendingShow=true}else{if(b){delete c.pendingShow;if(b.length){c.show.apply(c,b)}else{c.show()}}}}},setZIndex:function(a){var b=this;b.el.setZIndex(a);a+=10;if(b.floatingDescendants){a=Math.floor(b.floatingDescendants.setBase(a)/100)*100+10000}return a},doConstrain:function(a){var b=this,c=b.calculateConstrainedPosition(a,null,true);if(c){b.setPosition(c)}},toFront:function(c){var b=this,a=b.zIndexParent,d=b.preventFocusOnActivate;if(a&&b.bringParentToFront!==false){a.toFront(true)}if(!Ext.isDefined(c)){c=!b.focusOnToFront}if(c){b.preventFocusOnActivate=true}if(b.zIndexManager.bringToFront(b,c)){if(!c){b.focus(false,true)}if(b.hasListeners.tofront){b.fireEvent("tofront",b,b.el.getZIndex())}}b.preventFocusOnActivate=d;return b},setActive:function(b,c){var a=this;if(b){if(a.el.shadow&&!a.maximized){a.el.enableShadow(true)}if(!a.preventFocusOnActivate){a.focus(false,true)}a.fireEvent("activate",a)}else{if(a.isWindow&&(c&&c.isWindow)&&a.hideShadowOnDeactivate){a.el.disableShadow()}a.fireEvent("deactivate",a)}},toBack:function(){this.zIndexManager.sendToBack(this);return this},center:function(){var a=this,b;if(a.isVisible()){b=a.getAlignToXY(a.container,"c-c");a.setPagePosition(b)}else{a.needsCenter=true}return a},onFloatShow:function(){if(this.needsCenter){this.center()}delete this.needsCenter;if(this.toFrontOnShow){this.toFront()}},fitContainer:function(c){var g=this,e=g.floatParent,b=e?e.getTargetEl():g.container,a=b.getViewSize(),d=e||(b.dom!==document.body)?[0,0]:b.getXY();a.x=d[0];a.y=d[1];g.setBox(a,c)}},1,0,0,0,0,0,[Ext.util,"Floating"],0));(Ext.cmd.derive("Ext.Component",Ext.Base,{alternateClassName:"Ext.AbstractComponent",statics:{AUTO_ID:1000,pendingLayouts:null,layoutSuspendCount:0,DIRECTION_TOP:"top",DIRECTION_RIGHT:"right",DIRECTION_BOTTOM:"bottom",DIRECTION_LEFT:"left",VERTICAL_DIRECTION_Re:/^(?:top|bottom)$/,INVALID_ID_CHARS_Re:/[\.,\s]/g,componentIdAttribute:"componentId",cancelLayout:function(a,c){var b=this.runningLayoutContext||this.pendingLayouts;if(b){b.cancelComponent(a,false,c)}},flushLayouts:function(){var b=this,a=b.pendingLayouts;if(a&&a.invalidQueue.length){b.pendingLayouts=null;b.runningLayoutContext=a;Ext.override(a,{runComplete:function(){b.runningLayoutContext=null;var c=this.callParent();if(Ext.GlobalEvents.hasListeners.afterlayout){Ext.GlobalEvents.fireEvent("afterlayout")}return c}});a.run()}},resumeLayouts:function(a){if(this.layoutSuspendCount&&!--this.layoutSuspendCount){if(a){this.flushLayouts()}if(Ext.GlobalEvents.hasListeners.resumelayouts){Ext.GlobalEvents.fireEvent("resumelayouts")}}},suspendLayouts:function(){++this.layoutSuspendCount},updateLayout:function(b,e){var c=this,a=c.runningLayoutContext,d;if(a){a.queueInvalidate(b)}else{d=c.pendingLayouts||(c.pendingLayouts=new Ext.layout.Context());d.queueInvalidate(b);if(!e&&!c.layoutSuspendCount&&!b.isLayoutSuspended()){c.flushLayouts()}}}},$configPrefixed:false,$configStrict:false,config:{data:null},defaultBindProperty:"html",alignTarget:null,autoRender:false,autoShow:false,baseCls:Ext.baseCSSPrefix+"component",childEls:{frameTable:{frame:true},frameTL:{frame:"tl"},frameTC:{frame:"tc"},frameTR:{frame:"tr"},frameML:{frame:"ml"},frameBody:{frame:"mc"},frameMR:{frame:"mr"},frameBL:{frame:"bl"},frameBC:{frame:"bc"},frameBR:{frame:"br"}},componentLayout:"autocomponent",defaultAlign:"c-c",disabled:false,disabledRe:/^(?:button|input|select|textarea|optgroup|option|fieldset)$/i,nonMaskableRe:(function(){var a=["input","select","textarea","optgroup","option","table"];if(Ext.isIE9m&&!(Ext.isIE9&&!Ext.isIEQuirks)){a.push("p")}return new RegExp("^(?:"+a.join("|")+")$","i")}()),disabledCls:Ext.baseCSSPrefix+"item-disabled",draggable:false,floating:false,hidden:false,hideMode:"display",maskElement:null,renderTpl:['<tpl if="renderScroller">','<div class="{scrollerCls}" style="{%this.renderPadding(out, values)%}">',"</tpl>","{%this.renderContent(out,values)%}",'<tpl if="renderScroller"></div></tpl>'],resizeHandles:"all",shrinkWrap:2,toFrontOnShow:true,synthetic:false,tplWriteMode:"overwrite",ui:"default",uiCls:[],weight:null,allowDomMove:true,autoGenId:false,borderBoxCls:Ext.baseCSSPrefix+"border-box",componentLayoutCounter:0,contentPaddingProperty:"padding",deferLayouts:false,frameSize:null,horizontalPosProp:"left",isComponent:true,_isLayoutRoot:false,layoutSuspendCount:0,liquidLayout:false,maskOnDisable:true,offsetsCls:Ext.baseCSSPrefix+"hidden-offsets",rendered:false,rootCls:Ext.baseCSSPrefix+"body",scrollerCls:Ext.baseCSSPrefix+"touch-scroller",scrollerSelector:"."+Ext.baseCSSPrefix+"touch-scroller",validIdRe:Ext.validIdRe,constructor:function(d){var g=this,e,a,c,b;d=d||{};if(d.initialConfig){if(d.isAction){g.baseAction=d}d=d.initialConfig}else{if(d.tagName||d.dom||Ext.isString(d)){d={applyTo:d,id:d.id||d}}}g.initialConfig=d;g.getId();g.protoEl=new Ext.util.ProtoElement();g.initConfig(d);c=g.xhooks;if(c){delete g.xhooks;Ext.override(g,c)}g.mixins.elementCt.constructor.call(g);g.setupProtoEl();if(g.cls){g.initialCls=g.cls;g.protoEl.addCls(g.cls)}if(g.style){g.initialStyle=g.style;g.protoEl.setStyle(g.style)}g.renderData=g.renderData||{};g.initComponent();if(!g.preventRegister){Ext.ComponentManager.register(g)}g.mixins.state.constructor.call(g);g.addStateEvents("resize");b=g.getController();if(b){b.init(g)}if(g.plugins){for(e=0,a=g.plugins.length;e<a;e++){g.plugins[e]=g.initPlugin(g.plugins[e])}}g.loader=g.getLoader();if(g.renderTo){g.render(g.renderTo)}if(g.autoShow&&!g.initOwnerCt){g.show()}if(g.baseAction){g.baseAction.addComponent(g)}},beforeInitConfig:function(){this.mixins.observable.constructor.call(this)},addCls:function(a){var c=this,b=c.rendered?c.el:c.protoEl;b.addCls.apply(b,arguments);return c},addClsWithUI:function(c,j){var h=this,g=[],e=0,d=h.uiCls=Ext.Array.clone(h.uiCls),b=h.activeUI,a,k;if(typeof c==="string"){c=(c.indexOf(" ")<0)?[c]:Ext.String.splitWords(c)}a=c.length;for(;e<a;e++){k=c[e];if(k&&!h.hasUICls(k)){d.push(k);if(b){g=g.concat(h.addUIClsToElement(k))}}}if(j!==true&&b){h.addCls(g)}return g},afterComponentLayout:function(c,a,b,e){var d=this;if(++d.componentLayoutCounter===1){d.afterFirstLayout(c,a)}if(c!==b||a!==e){d.onResize(c,a,b,e)}if(this.floating){this.onAfterFloatLayout()}},addListener:function(b,g,e,a){var h=this,d,c;if(Ext.isString(b)&&(Ext.isObject(g)||a&&a.element)){if(a.element){d=g;g={};g[b]=d;b=a.element;if(e){g.scope=e}for(c in a){if(a.hasOwnProperty(c)){if(h.eventOptionsRe.test(c)){g[c]=a[c]}}}}if(h[b]&&h[b].on){h.mon(h[b],g)}else{h.afterRenderEvents=h.afterRenderEvents||{};if(!h.afterRenderEvents[b]){h.afterRenderEvents[b]=[]}h.afterRenderEvents[b].push(g)}return}return h.mixins.observable.addListener.apply(h,arguments)},addPlugin:function(b){var a=this;b=a.constructPlugin(b);if(a.plugins){a.plugins.push(b)}else{a.plugins=[b]}if(a.pluginsInitialized){a.initPlugin(b)}return b},addPropertyToState:function(e,d,c){var b=this,a=arguments.length;if(a===3||b.hasOwnProperty(d)){if(a<3){c=b[d]}if(c!==b.initialConfig[d]){(e||(e={}))[d]=c}}return e},addUIClsToElement:function(j){var e=this,b=e.baseCls+"-"+e.ui+"-"+j,a=[Ext.baseCSSPrefix+j,e.baseCls+"-"+j,b],d,h,c,g;if(e.rendered&&e.frame&&!Ext.supports.CSS3BorderRadius){b+="-";d=e.getChildEls();for(h in d){g=d[h].frame;if(g&&g!==true){c=e[h];if(c){c.addCls(b+g)}}}}return a},removeUIClsFromElement:function(j){var e=this,b=e.baseCls+"-"+e.ui+"-"+j,a=[Ext.baseCSSPrefix+j,e.baseCls+"-"+j,b],d,h,c,g;if(e.rendered&&e.frame&&!Ext.supports.CSS3BorderRadius){b+="-";d=e.getChildEls();for(h in d){g=d[h].frame;if(g&&g!==true){c=e[h];if(c){c.removeCls(b+g)}}}}return a},adjustPosition:function(a,d){var b=this,c;if(b.isContainedFloater()){c=b.floatParent.getTargetEl().getViewRegion();a+=c.left;d+=c.top}return{x:a,y:d}},afterHide:function(a,b){var c=this;c.hiddenByLayout=null;if(this.ownerLayout){this.updateLayout({isRoot:false})}Ext.callback(a,b||c);c.fireEvent("hide",c);c.fireHierarchyEvent("hide")},afterSetPosition:function(a,c){var b=this;b.onPosition(a,c);if(b.hasListeners.move){b.fireEvent("move",b,a,c)}},afterShow:function(h,b,e){var g=this,j=g.el,a,c,d;h=g.getAnimateTarget(h);if(!g.ghost){h=null}if(h){c={x:j.getX(),y:j.getY(),width:j.dom.offsetWidth,height:j.dom.offsetHeight};a={x:h.getX(),y:h.getY(),width:h.dom.offsetWidth,height:h.dom.offsetHeight};j.addCls(g.offsetsCls);d=g.ghost();d.el.stopAnimation();d.setX(-10000);g.ghostBox=c;d.el.animate({from:a,to:c,listeners:{afteranimate:function(){delete d.componentLayout.lastComponentSize;g.unghost();delete g.ghostBox;j.removeCls(g.offsetsCls);g.onShowComplete(b,e)}}})}else{g.onShowComplete(b,e)}g.fireHierarchyEvent("show")},animate:function(c){var u=this,g,m,l,a,d,b,t,q,n,e,r,o,j,p,s,k;c=c||{};d=c.to||{};if(Ext.fx.Manager.hasFxBlock(u.id)){return u}g=Ext.isDefined(d.width);if(g){a=Ext.Number.constrain(d.width,u.minWidth,u.maxWidth)}m=Ext.isDefined(d.height);if(m){l=Ext.Number.constrain(d.height,u.minHeight,u.maxHeight)}if(!c.dynamic&&(g||m)){q=(c.from?c.from.width:undefined)||u.getWidth();n=q;e=(c.from?c.from.height:undefined)||u.getHeight();r=e;o=false;if(m&&l>e){r=l;o=true}if(g&&a>q){n=a;o=true}if(m||g){k=u.el.getStyle("overflow");if(k!=="hidden"){u.el.setStyle("overflow","hidden")}}if(o){b=!Ext.isNumber(u.width);t=!Ext.isNumber(u.height);u.setSize(n,r);u.el.setSize(q,e);if(b){delete u.width}if(t){delete u.height}}if(g){d.width=a}if(m){d.height=l}}j=u.constrain;p=u.constrainHeader;if(j||p){u.constrain=u.constrainHeader=false;s=c.callback;c.callback=function(){u.constrain=j;u.constrainHeader=p;if(s){s.call(c.scope||u,arguments)}if(k!=="hidden"){u.el.setStyle("overflow",k)}}}return u.mixins.animate.animate.apply(u,arguments)},beforeBlur:Ext.emptyFn,beforeComponentLayout:function(){return true},beforeDestroy:Ext.emptyFn,beforeFocus:Ext.emptyFn,beforeLayout:function(){if(this.floating){this.onBeforeFloatLayout()}},beforeSetPosition:function(k,h,b){var g=this,j=null,d,c,a,e;if(k){if(Ext.isNumber(d=k[0])){b=h;h=k[1];k=d}else{if((d=k.x)!==undefined){b=h;h=k.y;k=d}}}if(g.constrain||g.constrainHeader){j=g.calculateConstrainedPosition(null,[k,h],true);if(j){k=j[0];h=j[1]}}c=(k!==undefined);a=(h!==undefined);if(c||a){g.x=k;g.y=h;e=g.adjustPosition(k,h);j={x:e.x,y:e.y,anim:b,hasX:c,hasY:a}}return j},beforeShow:Ext.emptyFn,bubble:function(c,b,a){var d=this;while(d){if(c.apply(b||d,a||[d])===false){break}d=d.getBubbleTarget()}return this},cancelFocus:function(){var a=this.focusTask;if(a){a.cancel()}},cloneConfig:function(c){c=c||{};var d=c.id||Ext.id(),a=Ext.applyIf(c,this.initialConfig),b;a.id=d;b=Ext.getClass(this);return new b(a)},destroy:function(){var e=this,c=e.renderSelectors,b=e.getConfig("viewModel",true),g=e.getConfig("session",true),a,d;if(!e.isDestroyed){if(!e.hasListeners.beforedestroy||e.fireEvent("beforedestroy",e)!==false){e.destroying=true;e.removeBindings();e.beforeDestroy();if(b&&b.isViewModel){b.destroy();e.viewModel=null}if(g&&g.isSession){g.destroy();e.session=null}if(e.floating){delete e.floatParent;if(e.zIndexManager){e.zIndexManager.unregister(e)}}else{if(e.ownerCt&&e.ownerCt.remove){e.ownerCt.remove(e,false)}}e.stopAnimation();e.onDestroy();Ext.destroy(e.plugins);e.componentLayout=null;if(e.hasListeners.destroy){e.fireEvent("destroy",e)}if(!e.preventRegister){Ext.ComponentManager.unregister(e)}e.mixins.state.destroy.call(e);e.clearListeners();if(e.rendered){if(!e.preserveElOnDestroy){e.el.destroy()}e.mixins.elementCt.destroy.call(e);if(c){for(a in c){if(c.hasOwnProperty(a)){d=e[a];if(d){delete e[a];d.destroy()}}}}delete e.data;delete e.el;delete e.frameBody;delete e.rendered}e.destroying=false;e.isDestroyed=true}}},disable:function(a){var b=this;b.enableOnRender=false;b.addCls(b.disabledCls);if(b.rendered){b.onDisable()}else{b.disableOnRender=true}b.disabled=true;if(a!==true){delete b.resetDisable;b.fireEvent("disable",b)}return b},enable:function(a){var b=this;b.disableOnRender=false;b.removeCls(b.disabledCls);if(b.rendered){b.onEnable()}else{b.enableOnRender=true}b.disabled=false;delete b.resetDisable;if(a!==true){b.fireEvent("enable",b)}return b},findParentBy:function(a){var b;for(b=this.getRefOwner();b&&!a(b,this);b=b.getRefOwner()){}return b||null},findParentByType:function(a){return Ext.isFunction(a)?this.findParentBy(function(b){return b.constructor===a}):this.up(a)},findPlugin:function(d){var b,a=this.plugins,c=a&&a.length;for(b=0;b<c;b++){if(a[b].ptype===d){return a[b]}}},focus:function(g,c,j,d){var e=this,a,h,b;if(e.isDestroyed){return}if(c){e.getFocusTask().delay(Ext.isNumber(c)?c:10,e.focus,e,[g,false,j,d]);return e}if(e.focusTask){e.focusTask.cancel()}if(e.rendered&&!e.isDestroyed&&e.isVisible(true)&&(a=e.getFocusEl())){if(a.isComponent){return a.focus(g,c)}if((h=a.dom)){if(a.needsTabIndex()){h.tabIndex=-1}if(e.floating){b=e.container.dom.scrollTop}a.focus();if(g){if(Ext.isArray(g)){if(e.selectText){e.selectText.apply(e,g)}}else{h.select()}}Ext.callback(j,d)}if(e.floating){if(e!==e.zIndexManager.getActive()){e.toFront(true)}if(b!==undefined){e.container.dom.scrollTop=b}}}return e},getAnimateTarget:function(a){a=a||this.animateTarget;if(a){a=a.isComponent?a.getEl():Ext.get(a)}return a||null},getBubbleTarget:function(){return this.getRefOwner()},getComponentLayout:function(){var a=this;if(!a.componentLayout||!a.componentLayout.isLayout){a.setComponentLayout(Ext.layout.Layout.create(a.componentLayout,"autocomponent"))}return a.componentLayout},getEl:function(){return this.el},getHeight:function(){return this.el.getHeight()},initInheritedState:function(a){var c=this,b=c.componentLayout;if(c.hidden){a.hidden=true}if(c.collapseImmune){a.collapseImmune=true}if(c.modelValidation!==undefined){a.modelValidation=c.modelValidation}c.mixins.bindable.initInheritedState.call(c,a);if(b&&b.initInheritedState){b.initInheritedState(a)}},getId:function(){var a=this,b;if(!(a.id||(a.id=a.initialConfig.id))){b=a.getXType();if(b){b=b.replace(Ext.Component.INVALID_ID_CHARS_Re,"-")}else{b=Ext.name.toLowerCase()+"-comp"}a.id=b+"-"+a.getAutoId()}return a.id},getItemId:function(){return this.itemId||this.id},getLoader:function(){var b=this,a=b.loader;if(a){if(!a.isLoader){b.loader=new Ext.ComponentLoader(Ext.apply({target:b},a))}else{a.setTarget(b)}return b.loader}return null},getMaskTarget:function(){return this.maskElement?this[this.maskElement]:null},getPlugin:function(b){var c,a=this.plugins,d=a&&a.length;for(c=0;c<d;c++){if(a[c].pluginId===b){return a[c]}}},getPosition:function(a){var b=this,d,c=b.isContainedFloater(),e;if((a===true)&&!c){return[b.getLocalX(),b.getLocalY()]}d=b.getXY();if((a===true)&&c){e=b.floatParent.getTargetEl().getViewRegion();d[0]-=e.left;d[1]-=e.top}return d},getScrollX:function(){var a=this,b=a.scrollManager;return b?b.getPosition().x:a.getScrollLeft()},getScrollY:function(){var a=this,b=a.scrollManager;return b?b.getPosition().y:a.getOverflowEl().getScrollTop()},getSize:function(a){return this.el.getSize(a)},getSizeModel:function(l){var p=this,a=Ext.layout.SizeModel,d=p.componentLayout.ownerContext,b=p.width,r=p.height,s,c,h,g,j,q,n,o,m,k,e=p.floating||p.floated;if(d){k=d.widthModel;j=d.heightModel}if(!k||!j){h=((s=typeof b)=="number");g=((c=typeof r)=="number");m=e||!(q=p.ownerLayout);if(m){n=Ext.layout.Layout.prototype.autoSizePolicy;o=e?3:p.shrinkWrap;if(h){k=a.configured}if(g){j=a.configured}}else{n=q.getItemSizePolicy(p,l);o=q.isItemShrinkWrap(p)}if(d){d.ownerSizePolicy=n}o=(o===true)?3:(o||0);if(m&&o){if(b&&s=="string"){o&=2}if(r&&c=="string"){o&=1}}if(o!==3){if(!l){l=p.ownerCt&&p.ownerCt.getSizeModel()}if(l){o|=(l.width.shrinkWrap?1:0)|(l.height.shrinkWrap?2:0)}}if(!k){if(!n.setsWidth){if(h){k=a.configured}else{k=(o&1)?a.shrinkWrap:a.natural}}else{if(n.readsWidth){if(h){k=a.calculatedFromConfigured}else{k=(o&1)?a.calculatedFromShrinkWrap:a.calculatedFromNatural}}else{k=a.calculated}}}if(!j){if(!n.setsHeight){if(g){j=a.configured}else{j=(o&2)?a.shrinkWrap:a.natural}}else{if(n.readsHeight){if(g){j=a.calculatedFromConfigured}else{j=(o&2)?a.calculatedFromShrinkWrap:a.calculatedFromNatural}}else{j=a.calculated}}}}return k.pairsByHeightOrdinal[j.ordinal]},getState:function(){var b=this,c=null,a=b.getSizeModel();if(a.width.configured){c=b.addPropertyToState(c,"width")}if(a.height.configured){c=b.addPropertyToState(c,"height")}return c},getWidth:function(){return this.el.getWidth()},getXType:function(){return this.self.xtype},getXTypes:function(){var c=this.self,d,b,a;if(!c.xtypes){d=[];b=this;while(b){a=b.xtypes;if(a!==undefined){d.unshift.apply(d,a)}b=b.superclass}c.xtypeChain=d;c.xtypes=d.join("/")}return c.xtypes},hasCls:function(a){var c=this,b=c.rendered?c.el:c.protoEl;return b.hasCls.apply(b,arguments)},hasUICls:function(a){var b=this,c=b.uiCls||[];return Ext.Array.contains(c,a)},hide:function(e,b,c){var d=this,a;if(d.pendingShow){delete d.pendingShow}if(!(d.rendered&&!d.isVisible())){a=(d.fireEvent("beforehide",d)!==false);if(d.hierarchicallyHidden||a){d.hidden=true;d.getInherited().hidden=true;if(d.rendered){d.onHide.apply(d,arguments)}}}return d},initComponent:function(){var c=this,b=c.width,a=c.height;if(c.plugins&&!c.plugins.processed){c.plugins=c.constructPlugins()}if(b!=null||a!=null){c.setSize(b,a)}if(c.listeners){c.on(c.listeners);c.listeners=null}},initEvents:function(){var e=this,h=e.afterRenderEvents,b,d,g,c,a;if(h){for(g in h){d=e[g];if(d&&d.on){b=h[g];for(c=0,a=b.length;c<a;++c){e.mon(d,b[c])}}}}e.addFocusListener()},is:function(a){return Ext.ComponentQuery.is(this,a)},isDescendantOf:function(a){return !!this.findParentBy(function(b){return b===a})},isDisabled:function(){return this.disabled},isDraggable:function(){return !!this.draggable},isDroppable:function(){return !!this.droppable},isFloating:function(){return this.floating},isFocusable:function(){var b=this,a;if((b.focusable!==false)&&(a=b.getFocusEl())&&b.rendered&&!b.destroying&&!b.isDestroyed&&!b.disabled&&b.isVisible(true)){return a.isFocusable(true)}},isHidden:function(){return this.hidden},isHierarchicallyHidden:function(){var d=this,c=false,a,b;for(;(a=d.ownerCt||d.floatParent);d=a){b=a.getInherited();if(b.hidden){c=true;break}if(d.getInherited().collapseImmune){if(a.collapsed&&!d.collapseImmune){c=true;break}}else{c=!!b.collapsed;break}}return c},isLayoutRoot:function(){var a=this,b=a.ownerLayout;if(!b||a._isLayoutRoot||a.floating){return true}return b.isItemLayoutRoot(a)},isLayoutSuspended:function(){var a=this,b;while(a){if(a.layoutSuspendCount||a.suspendLayout){return true}b=a.ownerLayout;if(!b){break}a=b.owner}return false},isVisible:function(a){var b=this,c;if(b.hidden||!b.rendered||b.isDestroyed){c=true}else{if(a){c=b.isHierarchicallyHidden()}}return !c},isXType:function(b,a){return a?(Ext.Array.indexOf(this.xtypes,b)!==-1):!!this.xtypesMap[b]},mask:function(e,c,a){var b=this.lastBox,d=this.getMaskTarget()||this.el;if(b){a=b.height}d.mask(e,c,a)},nextNode:function(d,j){var b=this,c=b.ownerCt,k,e,h,g,a;if(j&&b.is(d)){return b}if(c){for(e=c.items.items,g=Ext.Array.indexOf(e,b)+1,h=e.length;g<h;g++){a=e[g];if(a.is(d)){return a}if(a.down){k=a.down(d);if(k){return k}}}return c.nextNode(d)}return null},nextSibling:function(b){var g=this.ownerCt,d,e,a,h;if(g){d=g.items;a=d.indexOf(this)+1;if(a){if(b){for(e=d.getCount();a<e;a++){if((h=d.getAt(a)).is(b)){return h}}}else{if(a<d.getCount()){return d.getAt(a)}}}}return null},onAdded:function(b,e,a){var d=this,c=d.inheritedState;d.ownerCt=b;if(c&&a){d.invalidateInheritedState()}if(d.reference){d.fixReference()}if(d.hasListeners&&d.hasListeners.added){d.fireEvent("added",d,b,e)}if(Ext.GlobalEvents.hasListeners.added){d.fireHierarchyEvent("added")}},onRemoved:function(b){var a=this,c;if(Ext.GlobalEvents.hasListeners.removed){a.fireHierarchyEvent("removed")}if(a.hasListeners.removed){a.fireEvent("removed",a,a.ownerCt)}if(a.reference){c=a.lookupReferenceHolder();if(c){c.clearReference(a)}}if(!b){a.removeBindings()}if(a.inheritedState&&!b){a.invalidateInheritedState()}a.ownerCt=a.ownerLayout=null},onBoxReady:function(b,a){var c=this;if(c.resizable){c.initResizable(c.resizable)}if(c.draggable){c.initDraggable()}if(c.touchScroll){c.initScrollManager()}if(c.hasListeners.boxready){c.fireEvent("boxready",c,b,a)}},onBlur:function(d){var c=this,b=c.focusCls,a=c.getFocusEl();if(c.destroying){return}c.beforeBlur(d);if(b&&a){a.removeCls(c.removeClsWithUI(b,true))}if(c.validateOnBlur){c.validate()}c.hasFocus=false;c.fireEvent("blur",c,d);c.postBlur(d)},onFocus:function(d){var c=this,b=c.focusCls,a=c.getFocusEl();if(!c.disabled){c.beforeFocus(d);if(b&&a){a.addCls(c.addClsWithUI(b,true))}if(!c.hasFocus){c.hasFocus=true;c.fireEvent("focus",c,d)}}},onDestroy:function(){var e=this,c=e.controller,a,d;if(e.bind){e.removeBindings()}if(c){c.destroy()}e.controller=null;if(e.rendered){Ext.destroy(e.dd,e.resizer,e.proxy,e.proxyWrap,e.resizerComponent)}delete e.focusTask;Ext.destroy(e.componentLayout,e.loadMask,e.floatingDescendants)},onDisable:function(){var c=this,b=c.focusCls,a=c.getFocusEl(),d,e;if(b&&a){a.removeCls(c.removeClsWithUI(b,true))}if(c.maskOnDisable){d=c.el.dom;e=d.nodeName;if(c.disabledRe.test(e)){d.disabled=true}if(!c.nonMaskableRe.test(e)){c.mask()}}},onEnable:function(){var a=this,b,c;if(a.maskOnDisable){b=a.el.dom;c=b.nodeName;if(a.disabledRe.test(c)){b.disabled=false}if(!a.nonMaskableRe.test(c)){a.unmask()}}},onHide:function(j,a,e){var g=this,c,d,b,h=Ext.Element.getActiveElement();if(h===g.el||g.el.contains(h)){Ext.fly(h).blur()}j=g.getAnimateTarget(j);if(!g.ghost){j=null}if(j){b={x:j.getX(),y:j.getY(),width:j.dom.offsetWidth,height:j.dom.offsetHeight};c=g.ghost();c.el.stopAnimation();d=g.getSize();c.el.animate({to:b,listeners:{afteranimate:function(){delete c.componentLayout.lastComponentSize;c.el.hide();c.setHiddenState(true);c.el.setSize(d);g.afterHide(a,e)}}})}g.el.hide();if(!j){g.afterHide(a,e)}},onPosition:Ext.emptyFn,onResize:function(c,a,b,e){var d=this;if(d.floating&&d.constrain){d.doConstrain()}if(b){d.refreshScroll()}if(d.hasListeners.resize){d.fireEvent("resize",d,c,a,b,e)}},onShow:function(){var a=this;a.el.show();a.updateLayout({isRoot:false});if(a.floating){if(a.maximized){a.fitContainer()}else{if(a.constrain){a.doConstrain()}}}},onShowComplete:function(a,b){var c=this;if(c.floating){c.onFloatShow()}Ext.callback(a,b||c);c.fireEvent("show",c);delete c.hiddenByLayout},onShowVeto:Ext.emptyFn,postBlur:Ext.emptyFn,previousNode:function(b,d){var j=this,h=j.ownerCt,a,g,e,c;if(d&&j.is(b)){return j}if(h){for(g=h.items.items,e=Ext.Array.indexOf(g,j)-1;e>-1;e--){c=g[e];if(c.query){a=c.query(b);a=a[a.length-1];if(a){return a}}if(c.is(b)){return c}}return h.previousNode(b,true)}return null},previousSibling:function(b){var e=this.ownerCt,d,a,g;if(e){d=e.items;a=d.indexOf(this);if(a!=-1){if(b){for(--a;a>=0;a--){if((g=d.getAt(a)).is(b)){return g}}}else{if(a){return d.getAt(--a)}}}}return null},registerFloatingItem:function(b){var a=this;if(!a.floatingDescendants){a.floatingDescendants=new Ext.ZIndexManager(a)}a.floatingDescendants.register(b)},removeCls:function(a){var c=this,b=c.rendered?c.el:c.protoEl;b.removeCls.apply(b,arguments);return c},removeClsWithUI:function(d,l){var k=this,j=[],g=0,a=Ext.Array,h=a.remove,e=k.uiCls=a.clone(k.uiCls),c=k.activeUI,b,m;if(typeof d==="string"){d=(d.indexOf(" ")<0)?[d]:Ext.String.splitWords(d)}b=d.length;for(g=0;g<b;g++){m=d[g];if(m&&k.hasUICls(m)){h(e,m);if(c){j=j.concat(k.removeUIClsFromElement(m))}}}if(l!==true&&c){k.removeCls(j)}return j},resumeLayouts:function(b){var a=this;if(!a.rendered){return}if(a.layoutSuspendCount&&!--a.layoutSuspendCount){a.suspendLayout=false;if(b&&!a.isLayoutSuspended()){a.updateLayout(b)}}},scrollBy:function(b,a,c){var d=this,e=d.scrollManager;if(e){e.scrollBy(b,a,c)}else{d.doScrollBy(b,a,c)}},scrollTo:function(a,e,b){var c=this,d=c.scrollManager;if(d){d.scrollTo(a,e,b)}else{c.doScrollTo(a,e,b)}},setAutoScroll:function(a){var b=this;b.autoScroll=!!a;if(b.rendered){b.getOverflowEl().setStyle(b.getOverflowStyle())}b.updateLayout();return b},setBorder:function(b,d){var c=this,a=!!d;if(c.rendered||a){if(!a){d=c.el}if(!b){b=0}else{if(b===true){b="1px"}else{b=this.unitizeBox(b)}}d.setStyle("border-width",b);if(!a){c.updateLayout()}}c.border=b},setDock:function(c){var b=this,a=b.ownerCt;if(c!==b.dock){if(a&&a.moveDocked){a.moveDocked(b,c)}else{b.dock=c}}return b},setDisabled:function(a){return this[a?"disable":"enable"]()},setFlex:function(a){this.flex=a},setHeight:function(a){return this.setSize(undefined,a)},setLoading:function(c,d){var b=this,a={target:b};if(b.rendered){if(c!==false){if(Ext.isString(c)){a.msg=c}else{Ext.apply(a,c)}if(!b.loadMask||!b.loadMask.isLoadMask){if(d&&a.useTargetEl==null){a.useTargetEl=true}b.loadMask=new Ext.LoadMask(a)}else{Ext.apply(b.loadMask,a)}if(b.loadMask.isVisible()){b.loadMask.afterShow()}else{b.loadMask.show()}}else{if(b.loadMask&&b.loadMask.isLoadMask){b.loadMask.hide()}}}return b.loadMask},setMargin:function(c,b){var a=this;if(a.rendered){if(!c&&c!==0){c=""}else{if(c===true){c=5}c=this.unitizeBox(c)}a.getTargetEl().setStyle("margin",c);if(!b){a.updateLayout()}}else{a.margin=c}},setOverflowXY:function(b,a){var d=this,e=arguments.length,c=d.ownerCt;if(e){d.overflowX=b||"";if(e>1){d.overflowY=a||""}}if(d.rendered){d.getOverflowEl().setStyle(d.getOverflowStyle())}(c||d).updateLayout();return d},setPagePosition:function(a,g,b){var c=this,d,e;if(Ext.isArray(a)){g=a[1];a=a[0]}c.pageX=a;c.pageY=g;if(c.floating){if(c.isContainedFloater()){e=c.floatParent.getTargetEl().getViewRegion();if(Ext.isNumber(a)&&Ext.isNumber(e.left)){a-=e.left}if(Ext.isNumber(g)&&Ext.isNumber(e.top)){g-=e.top}}else{d=c.el.translateXY(a,g);a=d.x;g=d.y}c.setPosition(a,g,b)}else{d=c.el.translateXY(a,g);c.setPosition(d.x,d.y,b)}return c},setPosition:function(a,e,b){var c=this,d=c.beforeSetPosition.apply(c,arguments);if(d&&c.rendered){a=d.x;e=d.y;if(b){if(a!==c.getLocalX()||e!==c.getLocalY()){c.stopAnimation();c.animate(Ext.apply({duration:1000,listeners:{afteranimate:Ext.Function.bind(c.afterSetPosition,c,[a,e])},to:{left:a,top:e}},b))}}else{c.setLocalXY(a,e);c.afterSetPosition(a,e)}}return c},setScrollX:function(a){var b=this,c=b.scrollManager;if(c){c.scrollTo(a,c.getPosition().y)}else{b.setScrollLeft(a)}},setScrollY:function(c){var a=this,b=a.scrollManager;if(b){b.scrollTo(b.getPosition().x,c)}else{a.getOverflowEl().setScrollTop(c)}},setSize:function(b,a){var c=this;if(b&&typeof b=="object"){a=b.height;b=b.width}if(typeof b=="number"){c.width=Ext.Number.constrain(b,c.minWidth,c.maxWidth)}else{if(b===null){delete c.width}}if(typeof a=="number"){c.height=Ext.Number.constrain(a,c.minHeight,c.maxHeight)}else{if(a===null){delete c.height}}if(c.rendered&&c.isVisible()){if(c.liquidLayout){c.el.setSize(c.width,c.height)}c.updateLayout({isRoot:false})}return c},setStyle:function(b){var a=this.el||this.protoEl;a.setStyle(b)},setUI:function(c){var b=this,e=b.uiCls,d=b.activeUI,a;if(c===d){return}if(d){a=b.removeClsWithUI(e,true);if(a.length){b.removeCls(a)}b.removeUIFromElement()}else{b.uiCls=[]}b.ui=c;b.activeUI=c;b.addUIToElement();a=b.addClsWithUI(e,true);if(a.length){b.addCls(a)}if(b.rendered){b.updateLayout()}},setVisible:function(a){return this[a?"show":"hide"]()},setHidden:function(a){return this.setVisible(!a)},setWidth:function(a){return this.setSize(a)},show:function(d,a,b){var c=this,e=c.rendered;if(c.hierarchicallyHidden||(c.floating&&!e&&c.isHierarchicallyHidden())){if(!e){c.initHierarchyEvents()}if(arguments.length>1){arguments[0]=null;c.pendingShow=arguments}else{c.pendingShow=true}}else{if(e&&c.isVisible()){if(c.floating){c.onFloatShow()}}else{if(c.fireEvent("beforeshow",c)!==false){c.hidden=false;delete this.getInherited().hidden;Ext.suspendLayouts();if(!e&&(c.autoRender||c.floating)){c.doAutoRender();e=c.rendered}if(e){c.beforeShow();Ext.resumeLayouts();c.onShow.apply(c,arguments);c.afterShow.apply(c,arguments)}else{Ext.resumeLayouts(true)}}else{c.onShowVeto()}}}return c},showAt:function(a,d,b){var c=this;if(!c.rendered&&(c.autoRender||c.floating)){c.x=a;c.y=d;return c.show()}if(c.floating){c.setPosition(a,d,b)}else{c.setPagePosition(a,d,b)}c.show()},showBy:function(b,d,c){var a=this;if(a.floating&&b){a.alignTarget=b;if(d){a.defaultAlign=d}if(c){a.alignOffset=c}a.show();if(!a.hidden){a.alignTo(b,d||a.defaultAlign,c||a.alignOffset)}}return a},suspendLayouts:function(){var a=this;if(!a.rendered){return}if(++a.layoutSuspendCount===1){a.suspendLayout=true}},unitizeBox:function(a){return Ext.Element.unitizeBox(a)},unmask:function(){(this.getMaskTarget()||this.el).unmask()},unregisterFloatingItem:function(b){var a=this;if(a.floatingDescendants){a.floatingDescendants.unregister(b)}},up:function(d,e){var c=this.getRefOwner(),b=typeof e==="string",h=typeof e==="number",a=e&&e.isComponent,g=0;if(d){for(;c;c=c.getRefOwner()){g++;if(d.isComponent){if(c===d){return c}}else{if(Ext.ComponentQuery.is(c,d)){return c}}if(b&&c.is(e)){return}if(h&&g===e){return}if(a&&c===e){return}}}return c},update:function(b,e,j){var h=this,k=(h.tpl&&!Ext.isString(b)),g=h.scrollManager,d,a,c;if(k){h.data=(b&&b.isEntity)?b.getData(true):b}else{h.html=Ext.isObject(b)?Ext.DomHelper.markup(b):b}if(h.rendered){d=h.getSizeModel();a=d.width.shrinkWrap||d.height.shrinkWrap;if(h.isContainer){c=h.layout.getRenderTarget();a=a||h.items.items.length>0}else{c=h.touchScroll?h.getScrollerEl():h.getTargetEl()}if(k){h.tpl[h.tplWriteMode](c,h.data||{})}else{c.setHtml(h.html,e,j)}if(a){h.updateLayout()}if(g){g.refresh()}}},setHtml:function(a){this.update(a)},applyData:function(a){this.update(a)},updateBox:function(a){this.setSize(a.width,a.height);this.setPagePosition(a.x,a.y);return this},_asLayoutRoot:{isRoot:true},updateLayout:function(c){var d=this,e,b=d.lastBox,a=c&&c.isRoot;if(b){b.invalid=true}if(!d.rendered||d.layoutSuspendCount||d.suspendLayout){return}if(d.hidden){Ext.Component.cancelLayout(d)}else{if(typeof a!="boolean"){a=d.isLayoutRoot()}}if(a||!d.ownerLayout||!d.ownerLayout.onContentChange(d)){if(!d.isLayoutSuspended()){e=(c&&c.hasOwnProperty("defer"))?c.defer:d.deferLayouts;Ext.Component.updateLayout(d,e)}}},getAnchorToXY:function(d,a,c,b){return d.getAnchorXY(a,c,b)},getBorderPadding:function(){return this.el.getBorderPadding()},getLocalX:function(){return this.el.getLocalX()},getLocalXY:function(){return this.el.getLocalXY()},getLocalY:function(){return this.el.getLocalY()},getX:function(){return this.el.getX()},getXY:function(){return this.el.getXY()},getY:function(){return this.el.getY()},setLocalX:function(a){this.el.setLocalX(a)},setLocalXY:function(a,b){this.el.setLocalXY(a,b)},setLocalY:function(a){this.el.setLocalY(a)},setX:function(a,b){this.el.setX(a,b)},setXY:function(b,a){this.el.setXY(b,a)},setY:function(b,a){this.el.setY(b,a)},privates:{statics:{findComponentByElement:function(c){var a=document.body,d=c,b;while(d&&d.nodeType===1&&d!==a){b=Ext.getCmp(d.id);if(b){return b}d=d.parentNode}return null},getComponentByElement:function(a){var c=Ext.Component.componentIdAttribute,b;a=Ext.fly(a);if(!a){return null}b=a.getAttribute(c);if(b){return Ext.getCmp(b)}else{return Ext.Component.findComponentByElement(a.dom)}},getActiveComponent:function(){var a=Ext.dom.Element.getActiveElement();return Ext.Component.getComponentByElement(a)}},addFocusListener:function(){var c=this,b=c.getFocusEl(),a;if(b){if(b.isComponent){return b.addFocusListener()}a=b.needsTabIndex();if(!c.focusListenerAdded&&(!a||Ext.enableFocusManager)){if(a){b.dom.tabIndex=-1}b.on({focus:c.onFocus,blur:c.onBlur,scope:c});b.dom.setAttribute(Ext.Component.componentIdAttribute,c.id);c.focusListenerAdded=true}}},addOverCls:function(){var a=this;if(!a.disabled){a.el.addCls(a.overCls)}},addUIToElement:function(){var d=this,a=d.baseCls+"-"+d.ui,c,g,b,e;d.addCls(a);if(d.rendered&&d.frame&&!Ext.supports.CSS3BorderRadius){a+="-";c=d.getChildEls();for(g in c){e=c[g].frame;if(e&&e!==true){b=d[g];if(b){b.addCls(a+e)}}}}},blur:function(){var b=this,a;if(b.rendered&&(a=b.getFocusEl())){b.blurring=true;a.blur();delete b.blurring}return b},constructPlugin:function(b){var a=this;if(typeof b==="string"){b=Ext.PluginManager.create({},b,a)}else{b=Ext.PluginManager.create(b,null,a)}return b},constructPlugins:function(){var e=this,c=e.plugins,b,d,a;if(c){b=[];b.processed=true;if(!Ext.isArray(c)){c=[c]}for(d=0,a=c.length;d<a;d++){b[d]=e.constructPlugin(c[d])}}e.pluginsInitialized=true;return b},doScrollBy:function(b,a,c){var d=this.getOverflowEl();if(d){d.scrollBy(b,a,c)}},doScrollTo:function(a,d,b){var c=this.getOverflowEl();c.scrollTo("left",a,b);c.scrollTo("top",d,b)},fireHierarchyEvent:function(b){var a=Ext.GlobalEvents;if(a.hasListeners[b]){a.fireEvent(b,this)}},getActionEl:function(){return this.el},getAutoId:function(){this.autoGenId=true;return ++Ext.Component.AUTO_ID},getContentTarget:function(){return this.el},getDragEl:function(){return this.el},getFocusEl:Ext.privateFn,getFocusTask:function(){if(!this.focusTask){Ext.Component.prototype.focusTask=new Ext.util.DelayedTask()}return this.focusTask},getOverflowEl:function(){return this.getTargetEl()},getOverflowStyle:function(){var e=this,b=null,g=e.autoScroll,d,c,a;if(typeof g==="boolean"){b={overflow:a=(g?"auto":"")};e.scrollFlags={overflowX:a,overflowY:a,x:g,y:g,both:g}}else{d=e.overflowX;c=e.overflowY;if(d!==undefined||c!==undefined){if(d&&d===true){d="auto"}if(c&&c===true){c="auto"}b={overflowX:d=d||"",overflowY:c=c||""};e.scrollFlags={overflowX:d,overflowY:c,x:d=(d==="auto"||d==="scroll"),y:c=(c==="auto"||c==="scroll"),both:d&&c}}else{e.scrollFlags={overflowX:"",overflowY:"",x:false,y:false,both:false}}}return b},getPlugins:function(){var b=this,a=b.plugins;return(a&&a.processed)?a:b.constructPlugins()},getProxy:function(){var a=this,b;if(!a.proxy){b=Ext.getBody();a.proxy=a.el.createProxy(Ext.baseCSSPrefix+"proxy-el",b,true)}return a.proxy},getScrollLeft:function(){return this.getOverflowEl().getScrollLeft()},getScrollerEl:function(){var a=this;return a.scrollerEl||(a.scrollerEl=a.componentLayout.getScrollerEl()||a.getOverflowEl().child(a.scrollerSelector))},getTargetEl:function(){return this.frameBody||this.el},getTdCls:function(){return Ext.baseCSSPrefix+this.getTdType()+"-"+this.ui+"-cell"},getTdType:function(){return this.xtype},getTpl:function(a){return Ext.XTemplate.getTpl(this,a)},initCls:function(){var b=this,a=[b.baseCls,b.getComponentLayout().targetCls];if(Ext.isDefined(b.cmpCls)){if(Ext.isDefined(Ext.global.console)){Ext.global.console.warn("Ext.Component: cmpCls has been deprecated. Please use componentCls.")}b.componentCls=b.cmpCls;delete b.cmpCls}if(b.componentCls){a.push(b.componentCls)}else{b.componentCls=b.baseCls}return a},initDraggable:function(){var c=this,a=(c.resizer&&c.resizer.el!==c.el)?c.resizerComponent=new Ext.Component({ariaRole:"presentation",el:c.resizer.el,rendered:true,container:c.container}):c,b=Ext.applyIf({el:a.getDragEl(),constrainTo:(c.constrain||c.draggable.constrain)?(c.constrainTo||(c.floatParent?c.floatParent.getTargetEl():c.container)):undefined},c.draggable);if(c.constrain||c.constrainDelegate){b.constrain=c.constrain;b.constrainDelegate=c.constrainDelegate}c.dd=new Ext.util.ComponentDragger(a,b)},initPadding:function(c){var a=this,b=a.padding;if(b!=null){if(a.touchScroll||(a.layout&&a.layout.managePadding&&a.contentPaddingProperty==="padding")){c.setStyle("padding",0)}else{c.setStyle("padding",this.unitizeBox((b===true)?5:b))}}},initPlugin:function(a){a.init(this);return a},initResizable:function(a){var b=this;a=Ext.apply({target:b,dynamic:false,constrainTo:b.constrainTo||(b.floatParent?b.floatParent.getTargetEl():null),handles:b.resizeHandles},a);a.target=b;b.resizer=new Ext.resizer.Resizer(a)},initScrollManager:function(){var b=this,c=b.scrollFlags,a=b.getScrollerEl();if(a&&!b.scrollManager){return b.scrollManager=new Ext.scroll.Manager({owner:b,el:a,direction:c.both?"auto":c.y?"vertical":"horizontal"})}},initStyles:function(l){var g=this,d=g.margin,e=g.border,m=g.cls,a=g.style,j=g.x,h=g.y,c=g.liquidLayout,b,k;g.initPadding(l);if(d!=null){l.setStyle("margin",this.unitizeBox((d===true)?5:d))}if(e!=null){g.setBorder(e,l)}if(m&&m!=g.initialCls){l.addCls(m);g.cls=g.initialCls=null}if(a&&a!=g.initialStyle){l.setStyle(a);g.style=g.initialStyle=null}if(j!=null){l.setStyle(g.horizontalPosProp,(typeof j=="number")?(j+"px"):j)}if(h!=null){l.setStyle("top",(typeof h=="number")?(h+"px"):h)}if(!g.ownerCt||g.floating){if(Ext.scopeCss){l.addCls(g.rootCls)}l.addCls(g.borderBoxCls)}if(c||!g.getFrameInfo()){b=g.width;k=g.height;if(b!=null){if(typeof b==="number"){l.setStyle("width",b+"px")}else{l.setStyle("width",b)}}if(k!=null){if(typeof k==="number"){l.setStyle("height",k+"px")}else{l.setStyle("height",k)}}}if(c){if(g.minWidth){l.setStyle("min-width",g.minWidth+"px")}if(g.minHeight){l.setStyle("min-height",g.minHeight+"px")}if(g.maxWidth){l.setStyle("max-width",g.maxWidth+"px")}if(g.maxHeight){l.setStyle("max-height",g.maxHeight+"px")}}},isContainedFloater:function(){return(this.floating&&this.floatParent)},isDescendant:function(a){if(a.isContainer){for(var b=this.ownerCt;b;b=b.ownerCt){if(b===a){return true}}}return false},makeFloating:function(a){this.mixins.floating.constructor.call(this,a)},owns:function(b){var a=false;Ext.ComponentQuery.visitPreOrder("",this,function(d){if(d.el&&d.el.contains(b)){a=true;return false}});return a},parseBox:function(a){return Ext.Element.parseBox(a)},refreshScroll:function(){var a=this.scrollManager;if(a){a.refresh()}},removeManagedListenerItem:function(b,a,j,d,g,e){var h=this,c=a.options?a.options.element:null;if(c){c=h[c];if(c&&c.un){if(b||(a.item===j&&a.ename===d&&(!g||a.fn===g)&&(!e||a.scope===e))){c.un(a.ename,a.fn,a.scope);if(!b){Ext.Array.remove(h.managedListeners,a)}}}}else{return h.mixins.observable.removeManagedListenerItem.apply(h,arguments)}},removeOverCls:function(){this.el.removeCls(this.overCls)},removePlugin:function(a){Ext.Array.remove(this.plugins,a);a.destroy()},removeUIFromElement:function(){var d=this,a=d.baseCls+"-"+d.ui,c,g,b,e;d.removeCls(a);if(d.rendered&&d.frame&&!Ext.supports.CSS3BorderRadius){a+="-";c=d.getChildEls();for(g in c){e=c[g].frame;if(e&&e!==true){b=d[g];if(b){b.removeCls(a+e)}}}}},setComponentLayout:function(b){var a=this.componentLayout;if(a&&a.isLayout&&a!=b){a.setOwner(null)}this.componentLayout=b;b.setOwner(this)},setHiddenState:function(b){var a=this.getInherited();this.hidden=b;if(b){a.hidden=true}else{delete a.hidden}},setupProtoEl:function(){var a=this.initCls();this.protoEl.addCls(a)},setScrollLeft:function(a){this.getOverflowEl().setScrollLeft(a)},wrapPrimaryEl:function(a){if(this.floating){this.makeFloating(a)}else{this.el=Ext.get(a)}}},deprecated:{5:{methods:{addClass:"addCls",doComponentLayout:function(){this.updateLayout();return this},removeClass:"removeCls",forceComponentLayout:"updateLayout",setDocked:"setDock"}}}},1,["box","component"],["box","component"],{box:true,component:true},["widget.box","widget.component"],[[Ext.mixin.Inheritable.prototype.mixinId||Ext.mixin.Inheritable.$className,Ext.mixin.Inheritable],[Ext.util.Positionable.prototype.mixinId||Ext.util.Positionable.$className,Ext.util.Positionable],[Ext.util.Observable.prototype.mixinId||Ext.util.Observable.$className,Ext.util.Observable],[Ext.mixin.Bindable.prototype.mixinId||Ext.mixin.Bindable.$className,Ext.mixin.Bindable],[Ext.util.Animate.prototype.mixinId||Ext.util.Animate.$className,Ext.util.Animate],[Ext.util.ElementContainer.prototype.mixinId||Ext.util.ElementContainer.$className,Ext.util.ElementContainer],[Ext.util.Renderable.prototype.mixinId||Ext.util.Renderable.$className,Ext.util.Renderable],[Ext.state.Stateful.prototype.mixinId||Ext.state.Stateful.$className,Ext.state.Stateful],[Ext.util.Floating.prototype.mixinId||Ext.util.Floating.$className,Ext.util.Floating]],[Ext,"Component",Ext,"AbstractComponent"],function(a){a.createAlias({on:"addListener",prev:"previousSibling",next:"nextSibling"});Ext.resumeLayouts=function(b){a.resumeLayouts(b)};Ext.suspendLayouts=function(){a.suspendLayouts()};Ext.batchLayouts=function(c,b){a.suspendLayouts();c.call(b);a.resumeLayouts(true)};Ext.setGlyphFontFamily=function(b){Ext._glyphFontFamily=b};a.hierarchyEventSource=a.prototype.hierarchyEventSource=Ext.GlobalEvents}));Ext.define("Ext.layout.container.border.Region",{override:"Ext.Component",initBorderRegion:function(){var a=this;if(!a._borderRegionInited){a._borderRegionInited=true;a.addStateEvents(["changeregion","changeweight"]);Ext.override(a,{getState:function(){var b=a.callParent();b=a.addPropertyToState(b,"region");b=a.addPropertyToState(b,"weight");return b}})}},getOwningBorderContainer:function(){var a=this.getOwningBorderLayout();return a&&a.owner},getOwningBorderLayout:function(){var a=this.ownerLayout;return(a&&a.isBorderLayout)?a:null},setRegion:function(l){var k=this,c,d=k.region;if(l!==d){c=k.getOwningBorderLayout();if(c){var g=c.regionFlags[l],m=k.placeholder,a=k.splitter,b=c.owner,o=c.regionMeta,e=k.collapsed||k.floated,n,j,h;if(k.fireEventArgs("beforechangeregion",[k,l])===false){return d}Ext.suspendLayouts();k.region=l;Ext.apply(k,g);if(k.updateCollapseTool){k.updateCollapseTool()}if(a){Ext.apply(a,g);a.updateOrientation();j=b.items;h=j.indexOf(k);if(h>=0){n=o[l].splitterDelta;if(j.getAt(h+n)!==a){j.remove(a);h=j.indexOf(k);if(n>0){++h}j.insert(h,a)}}}if(m){if(e){k.expand(false)}b.remove(m);k.placeholder=null;if(e){k.collapse(null,false)}}b.updateLayout();Ext.resumeLayouts(true);k.fireEventArgs("changeregion",[k,d])}else{k.region=l}}return d},setWeight:function(d){var c=this,b=c.getOwningBorderContainer(),e=c.placeholder,a=c.weight;if(d!==a){if(c.fireEventArgs("beforechangeweight",[c,d])!==false){c.weight=d;if(e){e.weight=d}if(b){b.updateLayout()}c.fireEventArgs("changeweight",[c,a])}}return a}},function(a){var b=a.prototype;b.setBorderRegion=b.setRegion;b.setRegionWeight=b.setWeight});(Ext.cmd.derive("Ext.ElementLoader",Ext.Base,{statics:{Renderer:{Html:function(a,b,c){a.getTarget().setHtml(b.responseText,c.scripts===true);return true}}},url:null,params:null,baseParams:null,autoLoad:false,target:null,loadMask:false,ajaxOptions:null,scripts:false,isLoader:true,constructor:function(b){var c=this,a;b=b||{};Ext.apply(c,b);c.setTarget(c.target);c.mixins.observable.constructor.call(c);if(c.autoLoad){a=c.autoLoad;if(a===true){a={}}c.load(a)}},setTarget:function(b){var a=this;b=Ext.get(b);if(a.target&&a.target!=b){a.abort()}a.target=b},getTarget:function(){return this.target||null},abort:function(){var a=this.active;if(a!==undefined){Ext.Ajax.abort(a.request);if(a.mask){this.removeMask()}delete this.active}},removeMask:function(){this.target.unmask()},addMask:function(a){this.target.mask(a===true?null:a)},load:function(c){c=Ext.apply({},c);var e=this,a=Ext.isDefined(c.loadMask)?c.loadMask:e.loadMask,g=Ext.apply({},c.params),b=Ext.apply({},c.ajaxOptions),j=c.callback||e.callback,d=c.scope||e.scope||e,h=c.rendererScope||e.rendererScope||e;Ext.applyIf(b,e.ajaxOptions);Ext.applyIf(c,b);Ext.applyIf(g,e.params);Ext.apply(g,e.baseParams);Ext.applyIf(c,{url:e.url});Ext.apply(c,{scope:e,params:g,callback:e.onComplete});if(e.fireEvent("beforeload",e,c)===false){return}if(a){e.addMask(a)}e.active={options:c,mask:a,scope:d,rendererScope:h,callback:j,success:c.success||e.success,failure:c.failure||e.failure,renderer:c.renderer||e.renderer,scripts:Ext.isDefined(c.scripts)?c.scripts:e.scripts};e.active.request=Ext.Ajax.request(c);e.setOptions(e.active,c)},setOptions:Ext.emptyFn,onComplete:function(b,g,a){var d=this,e=d.active,h,c;if(e){c=e.scope;h=e.rendererScope;if(g){g=d.getRenderer(e.renderer).call(h,d,a,e)!==false}if(g){Ext.callback(e.success,c,[d,a,b]);d.fireEvent("load",d,a,b)}else{Ext.callback(e.failure,c,[d,a,b]);d.fireEvent("exception",d,a,b)}Ext.callback(e.callback,c,[d,g,a,b]);if(e.mask){d.removeMask()}}delete d.active},getRenderer:function(a){if(Ext.isFunction(a)){return a}return this.statics().Renderer.Html},startAutoRefresh:function(a,b){var c=this;c.stopAutoRefresh();c.autoRefresh=setInterval(function(){c.load(b)},a)},stopAutoRefresh:function(){clearInterval(this.autoRefresh);delete this.autoRefresh},isAutoRefreshing:function(){return Ext.isDefined(this.autoRefresh)},destroy:function(){var a=this;a.stopAutoRefresh();delete a.target;a.abort();a.clearListeners()}},1,0,0,0,0,[["observable",Ext.util.Observable]],[Ext,"ElementLoader"],0));(Ext.cmd.derive("Ext.ComponentLoader",Ext.ElementLoader,{statics:{Renderer:{Data:function(a,b,d){var g=true;try{a.getTarget().update(Ext.decode(b.responseText))}catch(c){g=false}return g},Component:function(a,c,h){var j=true,g=a.getTarget(),b=[];try{b=Ext.decode(c.responseText)}catch(d){j=false}if(j){g.suspendLayouts();if(h.removeAll){g.removeAll()}g.add(b);g.resumeLayouts(true)}return j}}},target:null,loadMask:false,renderer:"html",setTarget:function(b){var a=this;if(Ext.isString(b)){b=Ext.getCmp(b)}if(a.target&&a.target!=b){a.abort()}a.target=b},removeMask:function(){this.target.setLoading(false)},addMask:function(a){this.target.setLoading(a)},setOptions:function(b,a){b.removeAll=Ext.isDefined(a.removeAll)?a.removeAll:this.removeAll},getRenderer:function(b){if(Ext.isFunction(b)){return b}var a=this.statics().Renderer;switch(b){case"component":return a.Component;case"data":return a.Data;default:return Ext.ElementLoader.Renderer.Html}}},0,0,0,0,0,0,[Ext,"ComponentLoader"],0));(Ext.cmd.derive("Ext.layout.SizeModel",Ext.Base,{constructor:function(c){var e=this,d=e.self,a=d.sizeModelsArray,b;Ext.apply(e,c);e[b=e.name]=true;e.fixed=!(e.auto=e.natural||e.shrinkWrap);a[e.ordinal=a.length]=d[b]=d.sizeModels[b]=e},statics:{sizeModelsArray:[],sizeModels:{}},calculated:false,configured:false,constrainedMax:false,constrainedMin:false,natural:false,shrinkWrap:false,calculatedFromConfigured:false,calculatedFromNatural:false,calculatedFromShrinkWrap:false,names:null},1,0,0,0,0,0,[Ext.layout,"SizeModel"],function(){var e=this,a=e.sizeModelsArray,c,b,h,g,d;new e({name:"calculated"});new e({name:"configured",names:{width:"width",height:"height"}});new e({name:"natural"});new e({name:"shrinkWrap"});new e({name:"calculatedFromConfigured",configured:true,names:{width:"width",height:"height"}});new e({name:"calculatedFromNatural",natural:true});new e({name:"calculatedFromShrinkWrap",shrinkWrap:true});new e({name:"constrainedMax",configured:true,constrained:true,names:{width:"maxWidth",height:"maxHeight"}});new e({name:"constrainedMin",configured:true,constrained:true,names:{width:"minWidth",height:"minHeight"}});new e({name:"constrainedDock",configured:true,constrained:true,constrainedByMin:true,names:{width:"dockConstrainedWidth",height:"dockConstrainedHeight"}});for(c=0,h=a.length;c<h;++c){d=a[c];d.pairsByHeightOrdinal=g=[];for(b=0;b<h;++b){g.push({width:d,height:a[b]})}}}));(Ext.cmd.derive("Ext.layout.Layout",Ext.Base,{factoryConfig:{type:"layout"},isLayout:true,initialized:false,running:false,needsItemSize:true,setsItemSize:true,autoSizePolicy:{readsWidth:1,readsHeight:1,setsWidth:0,setsHeight:0},$configPrefixed:false,$configStrict:false,constructor:function(a){var b=this;b.id=Ext.id(null,b.type+"-");b.initConfig(a);delete b.type;b.layoutCount=0},beginLayout:Ext.emptyFn,beginLayoutCycle:function(c){var b=this,a=b.context,d;if(b.lastWidthModel!=c.widthModel){if(b.lastWidthModel){d=true}b.lastWidthModel=c.widthModel}if(b.lastHeightModel!=c.heightModel){if(b.lastWidthModel){d=true}b.lastHeightModel=c.heightModel}if(d){(a=c.context).clearTriggers(b,false);a.clearTriggers(b,true);b.triggerCount=0}},finishedLayout:function(a){this.lastWidthModel=a.widthModel;this.lastHeightModel=a.heightModel;this.ownerContext=null},redoLayout:Ext.emptyFn,undoLayout:Ext.emptyFn,getAnimatePolicy:function(){return this.animatePolicy},getItemSizePolicy:function(a){return this.autoSizePolicy},getScrollerEl:Ext.emptyFn,isItemBoxParent:function(a){return false},isItemLayoutRoot:function(d){var c=d.getSizeModel(),b=c.width,a=c.height;if(!d.componentLayout.lastComponentSize&&(b.calculated||a.calculated)){return false}return !b.shrinkWrap&&!a.shrinkWrap},isItemShrinkWrap:function(a){return a.shrinkWrap},isRunning:function(){return !!this.ownerContext},getItemsRenderTree:function(d,b){var h=d.length,e,g,c,a;if(h){a=[];for(e=0;e<h;++e){g=d[e];if(!g.rendered){if(b&&(b[g.id]!==undefined)){c=b[g.id]}else{this.configureItem(g);c=g.getRenderTree();if(b){b[g.id]=c}}if(c){a.push(c)}}}}return a},finishRender:Ext.emptyFn,finishRenderItems:function(e,a){var d=a.length,b,c;for(b=0;b<d;b++){c=a[b];if(c.rendering){c.finishRender(b)}}},renderChildren:function(){var b=this,a=b.getLayoutItems(),c=b.getRenderTarget();b.renderItems(a,c)},renderItems:function(a,g){var e=this,d=a.length,b=0,c;if(d){Ext.suspendLayouts();for(;b<d;b++){c=a[b];if(c&&!c.rendered){e.renderItem(c,g,b)}else{if(!e.isValidParent(c,g,b)){e.moveItem(c,g,b)}else{e.configureItem(c)}}}Ext.resumeLayouts(true)}},isValidParent:function(d,e,a){var c=(e&&e.dom)||e,b=this.getItemLayoutEl(d);if(b&&c){if(typeof a=="number"){a=this.getPositionOffset(a);return b===c.childNodes[a]}return b.parentNode===c}return false},getItemLayoutEl:function(c){var d=c.el?c.el.dom:Ext.getDom(c),a=d.parentNode,b;if(a){b=a.className;if(b&&b.indexOf(Ext.baseCSSPrefix+"resizable-wrap")!==-1){d=d.parentNode}}return d},getPositionOffset:function(a){return a},configureItem:function(a){a.ownerLayout=this},renderItem:function(c,d,a){var b=this;if(!c.rendered){b.configureItem(c);c.render(d,a)}},moveItem:function(b,c,a){c=c.dom||c;if(typeof a=="number"){a=c.childNodes[a]}c.insertBefore(b.el.dom,a||null);b.container=Ext.get(c);this.configureItem(b)},onContentChange:function(){this.owner.updateLayout();return true},initLayout:function(){this.initialized=true},setOwner:function(a){this.owner=a},getLayoutItems:function(){return[]},onAdd:function(a){a.ownerLayout=this},onRemove:Ext.emptyFn,onDestroy:Ext.emptyFn,afterRemove:function(e){var d=this,c=e.el,b=d.owner,a;if(e.rendered){a=[].concat(d.itemCls||[]);if(b.itemCls){a=Ext.Array.push(a,b.itemCls)}if(a.length){c.removeCls(a)}}delete e.ownerLayout},destroy:function(){var a=this,b;if(a.targetCls){b=a.getTarget();if(b){b.removeCls(a.targetCls)}}a.onDestroy()},sortWeightedItems:function(a,d){for(var b=0,c=a.length;b<c;++b){a[b].$i=b}Ext.Array.sort(a,function(g,e){var h=e.weight-g.weight;if(!h){h=g.$i-e.$i;if(g[d]){h=-h}}return h});for(b=0;b<c;++b){delete a[b].$i}}},1,0,0,0,0,[[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable]],[Ext.layout,"Layout"],function(){var a=this;a.prototype.sizeModels=a.sizeModels=Ext.layout.SizeModel.sizeModels}));(Ext.cmd.derive("Ext.layout.container.Container",Ext.layout.Layout,{alternateClassName:"Ext.layout.ContainerLayout",type:"container",beginCollapse:Ext.emptyFn,beginExpand:Ext.emptyFn,animatePolicy:null,activeItemCount:0,renderTpl:["{%this.renderBody(out,values)%}"],usesContainerHeight:true,usesContainerWidth:true,usesHeight:true,usesWidth:true,constructor:function(){Ext.layout.Layout.prototype.constructor.apply(this,arguments);this.mixins.elementCt.constructor.call(this)},destroy:function(){Ext.layout.Layout.prototype.destroy.call(this);this.mixins.elementCt.destroy.call(this)},beginLayout:function(a){Ext.layout.Layout.prototype.beginLayout.apply(this,arguments);a.targetContext=a.paddingContext=a.getEl("getTarget",this);this.cacheChildItems(a)},beginLayoutCycle:function(c,a){var b=this;Ext.layout.Layout.prototype.beginLayoutCycle.apply(this,arguments);if(a){if(b.usesContainerHeight){++c.consumersContainerHeight}if(b.usesContainerWidth){++c.consumersContainerWidth}}},cacheChildItems:function(g){var e=this,c,h,a,d,b;if(e.needsItemSize||e.setsItemSize){c=g.context;h=g.childItems=[];a=g.visibleItems=e.getVisibleItems();d=a.length;for(b=0;b<d;++b){h.push(c.getCmp(a[b]))}}},cacheElements:function(){var a=this.owner;this.attachChildEls(a.el,a)},calculate:function(c){var b=c.props,a=c.el;if(c.widthModel.shrinkWrap&&isNaN(b.width)){c.setContentWidth(a.getWidth())}if(c.heightModel.shrinkWrap&&isNaN(b.height)){c.setContentHeight(a.getHeight())}},configureItem:function(d){var c=this,e=c.itemCls,b=c.owner.itemCls,a,g;d.ownerLayout=c;if(e){if(typeof e==="string"){g=[e]}else{g=e;a=!!g}}if(b){if(a){g=Ext.Array.clone(g)}g=Ext.Array.push(g||[],b)}if(g){d.addCls(g)}},doRenderBody:function(a,b){this.renderItems(a,b);this.renderContent(a,b)},doRenderContainer:function(b,e){var c=e.$comp.layout,a=c.getRenderTpl(),d=c.getRenderData();a.applyOut(d,b)},doRenderItems:function(b,d){var c=d.$layout,a=c.getRenderTree();if(a){Ext.DomHelper.generateMarkup(a,b)}},finishRender:function(){var b=this,c,a;Ext.layout.Layout.prototype.finishRender.call(this);b.cacheElements();c=b.getRenderTarget();a=b.getLayoutItems();b.finishRenderItems(c,a)},notifyOwner:function(){this.owner.afterLayout(this)},getContainerSize:function(b,g){var c=b.targetContext,e=c.getFrameInfo(),k=b.paddingContext.getPaddingInfo(),j=0,l=0,d,h,a,m;if(!b.widthModel.shrinkWrap){++l;a=g?c.getDomProp("width"):c.getProp("width");d=(typeof a=="number");if(d){++j;a-=e.width+k.width;if(a<0){a=0}}}if(!b.heightModel.shrinkWrap){++l;m=g?c.getDomProp("height"):c.getProp("height");h=(typeof m=="number");if(h){++j;m-=e.height+k.height;if(m<0){m=0}}}return{width:a,height:m,needed:l,got:j,gotAll:j==l,gotWidth:d,gotHeight:h}},getPositionOffset:function(a){if(!this.createsInnerCt){var b=this.owner.itemNodeOffset;if(b){a+=b}}return a},getLayoutItems:function(){var a=this.owner,b=a&&a.items;return(b&&b.items)||[]},getRenderData:function(){var a=this.owner;return{$comp:a,$layout:this,ownerId:a.id}},getRenderedItems:function(){var e=this,h=e.getRenderTarget(),a=e.getLayoutItems(),d=a.length,g=[],b,c;for(b=0;b<d;b++){c=a[b];if(c.rendered&&e.isValidParent(c,h,b)){g.push(c)}}return g},getRenderTarget:function(){return this.owner.getTargetEl()},getElementTarget:function(){return this.getRenderTarget()},getRenderTpl:function(){var a=this,b=Ext.XTemplate.getTpl(this,"renderTpl");if(!b.renderContent){a.owner.setupRenderTpl(b)}return b},getRenderTree:function(){var a,c=this.owner.items,d,b={};do{d=c.generation;a=this.getItemsRenderTree(this.getLayoutItems(),b)}while(c.generation!==d);return a},renderChildren:function(){var b=this,c=b.owner.items,e=b.getRenderTarget(),d,a;do{d=c.generation;a=b.getLayoutItems();b.renderItems(a,e)}while(c.generation!==d)},getScrollbarsNeeded:function(c,j,b,h){var a=Ext.getScrollbarSize(),e=typeof c=="number",k=typeof j=="number",g=0,d=0;if(!a.width){return 0}if(k&&j<h){d=2;c-=a.width}if(e&&c<b){g=1;if(!d&&k){j-=a.height;if(j<h){d=2}}}return d+g},getTarget:function(){return this.owner.getTargetEl()},getVisibleItems:function(){var g=this.getRenderTarget(),b=this.getLayoutItems(),e=b.length,a=[],c,d;for(c=0;c<e;c++){d=b[c];if(d.rendered&&this.isValidParent(d,g,c)&&d.hidden!==true&&!d.floated){a.push(d)}}return a},getMoveAfterIndex:function(c){var a=this.owner,b=a.items;return b.indexOf(c)+1},moveItemBefore:function(d,e){var a=this.owner,b=d.ownerCt,c=a.items,g;if(d===e){return}if(b){b.remove(d,false)}if(e){g=c.indexOf(e)}else{g=c.length}a.insert(g,d)},setupRenderTpl:function(b){var a=this;b.renderBody=a.doRenderBody;b.renderContainer=a.doRenderContainer;b.renderItems=a.doRenderItems},getContentTarget:function(){return this.owner.getDefaultContentTarget()},onAdd:function(a){if(!a.liquidLayout){++this.activeItemCount}Ext.layout.Layout.prototype.onAdd.apply(this,[a])},onRemove:function(a){if(!a.liquidLayout){--this.activeItemCount}Ext.layout.Layout.prototype.onRemove.apply(this,[a])}},1,0,0,0,["layout.container"],[[Ext.util.ElementContainer.prototype.mixinId||Ext.util.ElementContainer.$className,Ext.util.ElementContainer]],[Ext.layout.container,"Container",Ext.layout,"ContainerLayout"],0));(Ext.cmd.derive("Ext.layout.container.Auto",Ext.layout.container.Container,{type:"autocontainer",childEls:["outerCt","innerCt"],reserveScrollbar:false,managePadding:true,manageOverflow:false,needsItemSize:false,setsItemSize:false,lastOverflowAdjust:{width:0,height:0},outerCtCls:Ext.baseCSSPrefix+"autocontainer-outerCt",innerCtCls:Ext.baseCSSPrefix+"autocontainer-innerCt",renderTpl:['<div id="{ownerId}-outerCt" data-ref="outerCt" class="{outerCtCls}" role="presentation">','<div id="{ownerId}-innerCt" data-ref="innerCt" style="{%this.renderPadding(out, values)%}" ','class="{innerCtCls}" role="presentation">',"{%this.renderBody(out,values)%}","</div>","</div>"],beginLayout:function(a){Ext.layout.container.Container.prototype.beginLayout.apply(this,arguments);this.initContextItems(a)},beforeLayoutCycle:function(d){var b=this.owner,c=b.inheritedState,a=b.inheritedStateInner;if(!c||c.invalid){c=b.getInherited();a=b.inheritedStateInner}if(d.widthModel.shrinkWrap){a.inShrinkWrapTable=true}else{delete a.inShrinkWrapTable}},beginLayoutCycle:function(d){var k=this,b=k.outerCt,h=k.lastOuterCtWidth||"",g=k.lastOuterCtHeight||"",l=k.lastOuterCtTableLayout||"",a=d.state,m,e,n,c,j;Ext.layout.container.Container.prototype.beginLayoutCycle.apply(this,arguments);e=n=c="";if(!d.widthModel.shrinkWrap){e="100%";j=k.owner.inheritedStateInner;m=k.getOverflowXStyle(d);c=(j.inShrinkWrapTable||m==="auto"||m==="scroll")?"":"fixed"}if(!d.heightModel.shrinkWrap&&!Ext.supports.PercentageHeightOverflowBug){n="100%"}if((e!==h)||k.hasOuterCtPxWidth){b.setStyle("width",e);k.lastOuterCtWidth=e;k.hasOuterCtPxWidth=false}if(c!==l){b.setStyle("table-layout",c);k.lastOuterCtTableLayout=c}if((n!==g)||k.hasOuterCtPxHeight){b.setStyle("height",n);k.lastOuterCtHeight=n;k.hasOuterCtPxHeight=false}if(k.hasInnerCtPxHeight){k.innerCt.setStyle("height","");k.hasInnerCtPxHeight=false}a.overflowAdjust=a.overflowAdjust||k.lastOverflowAdjust},calculate:function(c){var a=this,b=c.state,e=a.getContainerSize(c,true),d=b.calculatedItems||(b.calculatedItems=a.calculateItems?a.calculateItems(c,e):true);a.setCtSizeIfNeeded(c,e);if(d&&c.hasDomProp("containerChildrenSizeDone")){a.calculateContentSize(c);if(e.gotAll){if(a.manageOverflow&&!c.state.secondPass&&!a.reserveScrollbar){a.calculateOverflow(c,e)}return}}a.done=false},calculateContentSize:function(g){var e=this,a=((g.widthModel.shrinkWrap?1:0)|(g.heightModel.shrinkWrap?2:0)),c=(a&1)||undefined,h=(a&2)||undefined,d=0,b=g.props;if(c){if(isNaN(b.contentWidth)){++d}else{c=undefined}}if(h){if(isNaN(b.contentHeight)){++d}else{h=undefined}}if(d){if(c&&!g.setContentWidth(e.measureContentWidth(g))){e.done=false}if(h&&!g.setContentHeight(e.measureContentHeight(g))){e.done=false}}},calculateOverflow:function(c){var h=this,b,k,a,g,e,d,j;e=(h.getOverflowXStyle(c)==="auto");d=(h.getOverflowYStyle(c)==="auto");if(e||d){a=Ext.getScrollbarSize();j=c.overflowContext.el.dom;g=0;if(j.scrollWidth>j.clientWidth){g|=1}if(j.scrollHeight>j.clientHeight){g|=2}b=(d&&(g&2))?a.width:0;k=(e&&(g&1))?a.height:0;if(b!==h.lastOverflowAdjust.width||k!==h.lastOverflowAdjust.height){h.done=false;c.invalidate({state:{overflowAdjust:{width:b,height:k},overflowState:g,secondPass:true}})}}},completeLayout:function(a){this.lastOverflowAdjust=a.state.overflowAdjust},doRenderBody:function(c,e){var d=e.$layout,a=Ext.XTemplate,g=d.beforeBodyTpl,b=d.afterBodyTpl;if(g){a.getTpl(d,"beforeBodyTpl").applyOut(e,c)}this.renderItems(c,e);this.renderContent(c,e);if(b){a.getTpl(d,"afterBodyTpl").applyOut(e,c)}},doRenderPadding:function(b,d){var c=d.$layout,a=d.$layout.owner,e=a[a.contentPaddingProperty];if(c.managePadding&&e){b.push("padding:",a.unitizeBox(e))}},finishedLayout:function(b){var a=this.innerCt;Ext.layout.Layout.prototype.finishedLayout.apply(this,arguments);if(Ext.isIE8){a.repaint()}if(Ext.isOpera){a.setStyle("position","relative");a.dom.scrollWidth;a.setStyle("position","")}},getContainerSize:function(b,c){var a=Ext.layout.container.Container.prototype.getContainerSize.apply(this,arguments),d=b.state.overflowAdjust;if(d){a.width-=d.width;a.height-=d.height}return a},getRenderData:function(){var a=this,b=Ext.layout.container.Container.prototype.getRenderData.call(this);b.innerCtCls=a.innerCtCls;b.outerCtCls=a.outerCtCls;return b},getRenderTarget:function(){return this.innerCt},getElementTarget:function(){return this.innerCt},getOverflowXStyle:function(a){return a.overflowXStyle||(a.overflowXStyle=this.owner.scrollFlags.overflowX||a.overflowContext.getStyle("overflow-x"))},getOverflowYStyle:function(a){return a.overflowYStyle||(a.overflowYStyle=this.owner.scrollFlags.overflowY||a.overflowContext.getStyle("overflow-y"))},initContextItems:function(c){var b=this,d=c.target,a=b.owner.customOverflowEl;c.outerCtContext=c.getEl("outerCt",b);c.innerCtContext=c.getEl("innerCt",b);if(a){c.overflowContext=c.getEl(a)}else{c.overflowContext=c.targetContext}if(d[d.contentPaddingProperty]!==undefined){c.paddingContext=c.innerCtContext}},initLayout:function(){var c=this,b=Ext.getScrollbarSize().width,a=c.owner;Ext.layout.Layout.prototype.initLayout.call(this);if(b&&c.manageOverflow&&!c.hasOwnProperty("lastOverflowAdjust")){if(a.autoScroll||c.reserveScrollbar){c.lastOverflowAdjust={width:b,height:0}}}},measureContentHeight:function(b){var a=this.outerCt.getHeight(),c=b.target;if(this.managePadding&&(c[c.contentPaddingProperty]===undefined)){a+=b.targetContext.getPaddingInfo().height}return a},measureContentWidth:function(d){var g,c,b,a,e;if(this.chromeCellMeasureBug){g=this.innerCt.dom;c=g.style;b=c.display;if(b=="table-cell"){c.display="";g.offsetWidth;c.display=b}}a=this.outerCt.getWidth();e=d.target;if(this.managePadding&&(e[e.contentPaddingProperty]===undefined)){a+=d.targetContext.getPaddingInfo().width}return a},setCtSizeIfNeeded:function(d,b){var e=this,m=b.height,h=d.paddingContext.getPaddingInfo(),k=e.getTarget(),l=e.getOverflowXStyle(d),c=(l==="auto"||l==="scroll"),a=Ext.getScrollbarSize(),g,j;if(m&&!d.heightModel.shrinkWrap){if(Ext.supports.PercentageHeightOverflowBug){g=true}if(Ext.isIE8){j=true}if((g||j)&&c&&(k.dom.scrollWidth>k.dom.clientWidth)){m=Math.max(m-a.height,0)}if(g){d.outerCtContext.setProp("height",m+h.height);e.hasOuterCtPxHeight=true}if(j){d.innerCtContext.setProp("height",m);e.hasInnerCtPxHeight=true}}},setupRenderTpl:function(a){Ext.layout.container.Container.prototype.setupRenderTpl.apply(this,arguments);a.renderPadding=this.doRenderPadding},getContentTarget:function(){return this.innerCt},getScrollerEl:function(){return this.outerCt}},0,0,0,0,["layout.auto","layout.autocontainer"],0,[Ext.layout.container,"Auto"],function(){this.prototype.chromeCellMeasureBug=Ext.isChrome&&Ext.chromeVersion>=26}));(Ext.cmd.derive("Ext.ZIndexManager",Ext.Base,{alternateClassName:"Ext.WindowGroup",statics:{zBase:9000},constructor:function(a){var b=this;b.map={};b.zIndexStack=[];b.front=null;if(a){if(a.isContainer){a.on("resize",b._onContainerResize,b);b.zseed=Ext.Number.from(b.rendered?a.getEl().getStyle("zIndex"):undefined,b.getNextZSeed());b.targetEl=a.getTargetEl();b.container=a}else{Ext.on("resize",b._onContainerResize,b);b.zseed=b.getNextZSeed();b.targetEl=Ext.get(a)}}else{b.zseed=b.getNextZSeed();Ext.onReady(function(){Ext.on("resize",b._onContainerResize,b);b.targetEl=Ext.getBody()})}},getNextZSeed:function(){return(Ext.ZIndexManager.zBase+=10000)},setBase:function(b){this.zseed=b;var a=this.assignZIndices();this._activateLast();return a},assignZIndices:function(){var c=this.zIndexStack,b=c.length,e=0,h=this.zseed,d,g;for(;e<b;e++){d=c[e];if(d&&!d.hidden){h=d.setZIndex(h);if(d.modal){g=d}}}if(g){this._showModalMask(g)}return h},_setActiveChild:function(b,a){var c=this.front,d=b.preventFocusOnActivate;if(b!==c){if(c&&!c.destroying){c.setActive(false,b)}this.front=b;if(b&&b!=a){b.preventFocusOnActivate=b.preventFocusOnActivate||a&&(a.preventFocusOnActivate||!a.focusOnToFront);b.setActive(true);if(b.modal){this._showModalMask(b)}b.preventFocusOnActivate=d}}},onComponentHide:function(a){this._activateLast()},_activateLast:function(){var d=this,a=d.zIndexStack,c=a.length-1,b;for(;c>=0&&a[c].hidden;--c){}if((b=a[c])){d._setActiveChild(b,d.front);if(b.modal){return}}else{if(d.front&&!d.front.destroying){d.front.setActive(false)}d.front=null}for(;c>=0;--c){b=a[c];if(b.isVisible()&&b.modal){d._showModalMask(b);return}}d._hideModalMask()},_showModalMask:function(b){var d=this,h=b.el.getStyle("zIndex")-4,c=b.floatParent?b.floatParent.getTargetEl():b.container,a=d.mask,g=d.maskShim,e;if(!a){a=d.mask=Ext.getBody().createChild({role:"presentation",cls:Ext.baseCSSPrefix+"mask",style:"height:0;width:0"});a.setVisibilityMode(Ext.Element.DISPLAY);a.on("click",d._onMaskClick,d)}a.maskTarget=c;e=d.getMaskBox();if(g){g.setStyle("zIndex",h);g.show();g.setBox(e)}a.setStyle("zIndex",h);a.show();a.setBox(e)},_hideModalMask:function(){var b=this.mask,a=this.maskShim;if(b&&b.isVisible()){b.maskTarget=undefined;b.hide();if(a){a.hide()}}},_onMaskClick:function(){if(this.front){this.front.focus()}},getMaskBox:function(){var a=this.mask.maskTarget;if(a.dom===document.body){return{height:Math.max(document.body.scrollHeight,Ext.dom.Element.getDocumentHeight()),width:Math.max(document.body.scrollWidth,document.documentElement.clientWidth),x:0,y:0}}else{return a.getBox()}},_onContainerResize:function(){var c=this,b=c.mask,a=c.maskShim,d;if(b&&b.isVisible()){b.hide();if(a){a.hide()}d=c.getMaskBox();if(a){a.setSize(d);a.show()}b.setSize(d);b.show()}},register:function(b){var c=this,a=b.afterHide;if(b.zIndexManager){b.zIndexManager.unregister(b)}b.zIndexManager=c;c.map[b.id]=b;c.zIndexStack.push(b);b.afterHide=function(){a.apply(b,arguments);c.onComponentHide(b)}},unregister:function(a){var b=this,c=b.map;delete a.zIndexManager;if(c&&c[a.id]){delete c[a.id];delete a.afterHide;Ext.Array.remove(b.zIndexStack,a);b._activateLast()}},get:function(a){return a.isComponent?a:this.map[a]},bringToFront:function(b,d){var c=this,a=false,e=c.zIndexStack;b=c.get(b);if(b!==c.front){Ext.Array.remove(e,b);if(b.preventBringToFront){e.unshift(b)}else{e.push(b)}c.assignZIndices();if(!d){c._activateLast()}a=true;c.front=b;if(b.modal){c._showModalMask(b)}}return a},sendToBack:function(a){var b=this;a=b.get(a);Ext.Array.remove(b.zIndexStack,a);b.zIndexStack.unshift(a);b.assignZIndices();this._activateLast();return a},hideAll:function(){var b=this.map,a,c;for(c in b){if(b.hasOwnProperty(c)){a=b[c];if(a.isComponent&&a.isVisible()){a.hide()}}}},hide:function(){var d=0,b=this.zIndexStack,a=b.length,c;this.tempHidden=[];for(;d<a;d++){c=b[d];if(c.isVisible()){this.tempHidden.push(c);c.el.hide();c.hidden=true}}},show:function(){var c=0,d=this.tempHidden,a=d?d.length:0,b;for(;c<a;c++){b=d[c];b.el.show();b.hidden=false;b.setPosition(b.x,b.y)}delete this.tempHidden},getActive:function(){return this.front},getBy:function(g,e){var h=[],d=0,b=this.zIndexStack,a=b.length,c;for(;d<a;d++){c=b[d];if(g.call(e||c,c)!==false){h.push(c)}}return h},each:function(c,b){var d=this.map,e,a;for(e in d){if(d.hasOwnProperty(e)){a=d[e];if(a.isComponent&&c.call(b||a,a)===false){return}}}},eachBottomUp:function(g,e){var b=this.zIndexStack,d=0,a=b.length,c;for(;d<a;d++){c=b[d];if(c.isComponent&&g.call(e||c,c)===false){return}}},eachTopDown:function(e,d){var a=this.zIndexStack,c=a.length,b;for(;c-->0;){b=a[c];if(b.isComponent&&e.call(d||b,b)===false){return}}},destroy:function(){var b=this,c=b.map,a,d;for(d in c){if(c.hasOwnProperty(d)){a=c[d];if(a.isComponent){a.destroy()}}}Ext.destroy(b.mask);Ext.destroy(b.maskShim);delete b.zIndexStack;delete b.map;delete b.container;delete b.targetEl}},1,0,0,0,0,0,[Ext,"ZIndexManager",Ext,"WindowGroup"],function(){Ext.WindowManager=Ext.WindowMgr=new this()}));(Ext.cmd.derive("Ext.container.Container",Ext.Component,{alternateClassName:["Ext.Container","Ext.AbstractContainer"],renderTpl:"{%this.renderContainer(out,values)%}",isContainer:true,autoDestroy:true,defaultType:"panel",detachOnRemove:true,layout:"auto",suspendLayout:false,ariaRole:"presentation",baseCls:Ext.baseCSSPrefix+"container",layoutCounter:0,add:function(){var l=this,h=Ext.Array.slice(arguments),e=(typeof h[0]=="number")?h.shift():-1,c=l.getLayout(),d=false,n,j,b,a,o,m,g,k;if(h.length==1&&Ext.isArray(h[0])){j=h[0];n=true}else{j=h}if(l.rendered){Ext.suspendLayouts()}g=j=l.prepareItems(j,true);a=j.length;if(!n&&a==1){g=j[0]}for(b=0;b<a;b++){o=j[b];m=(e<0)?l.items.length:(e+b);k=!!o.instancedCmp;delete o.instancedCmp;if(o.floating){l.floatingItems.add(o);o.onAdded(l,m,k);delete o.initOwnerCt;if(l.hasListeners.add){l.fireEvent("add",l,o,m)}}else{if((!l.hasListeners.beforeadd||l.fireEvent("beforeadd",l,o,m)!==false)&&l.onBeforeAdd(o)!==false){l.items.insert(m,o);o.onAdded(l,m,k);delete o.initOwnerCt;l.onAdd(o,m);c.onAdd(o,m);d=true;if(l.hasListeners.add){l.fireEvent("add",l,o,m)}}}}if(d){l.updateLayout()}if(l.rendered){Ext.resumeLayouts(true)}return g},onAdded:function(b,c,a){Ext.Component.prototype.onAdded.apply(this,arguments);if(a){Ext.ComponentManager.markReferencesDirty()}},onRemoved:function(a){var b;if(!a){b=this.lookupReferenceHolder();if(b){Ext.ComponentManager.markReferencesDirty();b.clearReferences()}}Ext.Component.prototype.onRemoved.apply(this,arguments)},afterComponentLayout:function(){var b=this.floatingItems.items,a=b.length,d,c;Ext.Component.prototype.afterComponentLayout.apply(this,arguments);for(d=0;d<a;d++){c=b[d];if(!c.rendered&&c.autoShow){c.show()}}},afterLayout:function(b){var a=this,c=a.scrollManager;++a.layoutCounter;if(c&&a.layoutCounter>1){c.refresh()}if(a.hasListeners.afterlayout){a.fireEvent("afterlayout",a,b)}},onDestroy:function(){Ext.Component.prototype.onDestroy.call(this);this.refs=null},beforeDestroy:function(){var b=this,a=b.items,d=b.floatingItems,e;if(a){while((e=a.first())){b.doRemove(e,true)}}if(d){while((e=d.first())){b.doRemove(e,true)}}Ext.destroy(b.layout);Ext.Component.prototype.beforeDestroy.call(this)},beforeRender:function(){var b=this,a=b.getLayout(),c;Ext.util.Renderable.prototype.beforeRender.call(this);if(!a.initialized){a.initLayout()}c=a.targetCls;if(c){b.applyTargetCls(c)}},cascade:function(l,m,a){var k=this,e=k.items?k.items.items:[],g=e.length,d=0,j,h=a?a.concat(k):[k],b=h.length-1;if(l.apply(m||k,h)!==false){for(;d<g;d++){j=e[d];if(j.cascade){j.cascade(l,m,a)}else{h[b]=j;l.apply(m||j,h)}}}return this},contains:function(c,b){var a=false;if(b){this.cascade(function(d){if(d.contains&&d.contains(c)){a=true;return false}});return a}else{return this.items.contains(c)||this.floatingItems.contains(c)}},disable:function(){Ext.Component.prototype.disable.apply(this,arguments);var d=this.getChildItemsToDisable(),c=d.length,b,a;for(a=0;a<c;a++){b=d[a];if(b.resetDisable!==false&&!b.disabled){b.disable();b.resetDisable=true}}return this},doLayout:function(){this.updateLayout();return this},enable:function(){Ext.Component.prototype.enable.apply(this,arguments);var d=this.getChildItemsToDisable(),c=d.length,b,a;for(a=0;a<c;a++){b=d[a];if(b.resetDisable){b.enable()}}return this},getChildByElement:function(e,a){var h,c,b=0,d=this.getRefItems(),g=d.length;e=Ext.getDom(e);for(;b<g;b++){h=d[b];c=h.getEl();if(c&&((c.dom===e)||c.contains(e))){return(a&&h.getChildByElement)?h.getChildByElement(e,a):h}}return null},getComponent:function(a){if(Ext.isObject(a)){a=a.getItemId()}var b=this.items.get(a);if(!b&&typeof a!="number"){b=this.floatingItems.get(a)}return b},getLayout:function(){var b=this,a=b.layout;if(!a||!a.isLayout){b.setLayout(a)}return b.layout},getRefItems:function(c){var h=this,d=h.items.items,b=d.length,e=0,g,a=[];for(;e<b;e++){g=d[e];a[a.length]=g;if(c&&g.getRefItems){a.push.apply(a,g.getRefItems(true))}}d=h.floatingItems.items;b=d.length;for(e=0;e<b;e++){g=d[e];a[a.length]=g;if(c&&g.getRefItems){a.push.apply(a,g.getRefItems(true))}}return a},initComponent:function(){var a=this;Ext.Component.prototype.initComponent.call(this);a.getLayout();a.constructing=true;a.initItems();delete a.constructing},getReferences:function(){var a=Ext.ComponentManager;if(a.referencesDirty){a.fixReferences()}return this.refs||null},lookupReference:function(b){var a=this.getReferences();return(a&&a[b])||null},initItems:function(){var b=this,a=b.items;if(!a||!a.isMixedCollection){b.items=new Ext.util.AbstractMixedCollection(false,b.getComponentId);b.floatingItems=new Ext.util.MixedCollection(false,b.getComponentId);if(a){if(!Ext.isArray(a)){a=[a]}b.add(a)}}},initInheritedState:function(j,c){var h=this,d=h.controller,e=h.layout,g=h.session,k=h.viewModel,b=h.reference,a=h.referenceHolder;Ext.Component.prototype.initInheritedState.apply(this,[j,c]);if(h.collapsed){j.collapsed=true}if(d){j.referenceHolder=d;a=true}else{if(a){j.referenceHolder=h}}if(a){j.referencePath=""}else{if(b&&h.isParentReference){j.referencePath=h.referenceKey+"."}}if(g){j.session=g}if(k){j.viewModelPath=""}else{if(b&&h.isParentReference){j.viewModelPath=h.viewModelKey+"."}}if(e&&e.initInheritedState){e.initInheritedState(j,c)}},insert:function(c,b){var a;if(b&&b.isComponent){a=this.items.indexOf(b);if(a!==-1){return this.move(a,c)}}return this.add(c,b)},isAncestor:function(a){while(a){if(a.ownerCt===this){return true}a=a.ownerCt}},lookupComponent:function(a){if(!a.isComponent){if(typeof a==="string"){a=Ext.ComponentManager.get(a)}else{a=Ext.ComponentManager.create(a,this.defaultType)}}return a},move:function(b,e){var d=this,a=d.items,c;if(b.isComponent){b=a.indexOf(b)}c=a.getAt(b);if(b!==e){c=a.removeAt(b);if(c===false){return false}a.insert(e,c);d.onMove(c,b,e);if(d.hasListeners.move){d.fireEvent("move",d,c,b,e)}d.updateLayout()}return c},moveBefore:function(a,b){this.layout.moveItemBefore(a,b)},moveAfter:function(e,h){var d=this,a=d.items,c=d.layout,b=h?c.getMoveAfterIndex(h):0,g=a.getAt(b);c.moveItemBefore(e,g)},nextChild:function(j,c){var g=this,d=g.items,h=d.indexOf(j),e=0,b=d.length,a;if(h!==-1){if(c){for(;e<b;e++){a=d.getAt(h+e);if(!a||Ext.ComponentQuery.is(a,c)){break}}}else{a=d.getAt(h+1)}if(!a&&g.ownerCt){a=g.ownerCt.nextChild(g,c)}}return a},onAdd:Ext.emptyFn,onBeforeAdd:function(b){var a=b.ownerCt;if(a&&a!==this){a.remove(b,false)}},onMove:Ext.emptyFn,onRemove:Ext.emptyFn,onPosition:function(){Ext.Component.prototype.onPosition.apply(this,arguments);this.repositionFloatingItems()},onResize:function(){Ext.Component.prototype.onResize.apply(this,arguments);this.repositionFloatingItems()},prevChild:function(j,c){var g=this,d=g.items,h=d.indexOf(j),e=0,b=d.length,a;if(h!==-1){if(c){for(;e<b;e++){a=d.getAt(h-e);if(!a||Ext.ComponentQuery.is(a,c)){break}}}else{a=d.getAt(h-1)}if(!a&&g.ownerCt){a=g.ownerCt.nextChild(g,c)}}return a},remove:function(b,a){var d=this,e=d.getComponent(b);if(e&&(!d.hasListeners.beforeremove||d.fireEvent("beforeremove",d,e)!==false)){d.doRemove(e,a);if(d.hasListeners.remove){d.fireEvent("remove",d,e)}if(!d.destroying&&!e.floating){d.updateLayout()}}return e},removeAll:function(c){var h=this,e=h.items.items.slice().concat(h.floatingItems.items),b=[],d=0,a=e.length,g;Ext.suspendLayouts();h.removingAll=true;for(;d<a;d++){g=e[d];h.remove(g,c);if(g.ownerCt!==h){b.push(g)}}h.removingAll=false;Ext.resumeLayouts(!!a);return b},setLayout:function(e){var d=this,b=d.layout,g=b&&b.isLayout,a,c;if(typeof e==="string"){e={type:e}}c=e.type;if(g&&(!c||(c===b.type))){delete e.type;b.setConfig(e)}else{if(g){b.setOwner(null)}a=d.self.prototype.layout;if(typeof a==="string"){e.type=c||a}else{Ext.merge(Ext.merge({},a),e)}e=this.layout=Ext.Factory.layout(e);e.setOwner(this)}if(d.rendered){d.updateLayout()}},setActiveItem:function(a){return this.getLayout().setActiveItem(a)},privates:{applyDefaults:function(a){var b=this.defaults;if(b){if(Ext.isFunction(b)){b=b.call(this,a)}if(Ext.isString(a)){a=Ext.ComponentManager.get(a)}Ext.applyIf(a,b)}return a},applyReference:function(b){var a;if(b&&b.charAt(a=b.length-1)===">"){this.isParentReference=true;b=b.substring(0,a)}return b},applyTargetCls:function(a){this.addCls(a)},attachReference:function(b){var d=this,c,a;if(d.destroying||d.isDestroyed){return}a=d.refs||(d.refs={});c=b.referenceKey;a[c]=b},clearReference:function(b){var a=this.refs,c=b.referenceKey;if(a&&c){b.viewModelKey=b.referenceKey=a[c]=null}},clearReferences:function(){this.refs=null},detachComponent:function(a){Ext.getDetachedBody().appendChild(a.getEl())},doRemove:function(c,b){b=b===true||(b!==false&&this.autoDestroy);var g=this,e=g.layout,a=e&&g.rendered,d=c.destroying||b,h=c.floating;if(h){g.floatingItems.remove(c)}else{g.items.remove(c)}if(a&&!h){if(e.running){Ext.Component.cancelLayout(c,d)}e.onRemove(c,d)}c.onRemoved(d);g.onRemove(c,d);if(b){c.destroy()}else{if(a&&!h){e.afterRemove(c)}if(g.detachOnRemove&&c.rendered){g.detachComponent(c)}}},finishRenderChildren:function(){this.callParent();var a=this.getLayout();if(a){a.finishRender()}},getChildItemsToDisable:function(){return this.query("[isFormField],button")},getComponentId:function(a){return a.getItemId&&a.getItemId()},getContentTarget:function(){return this.getLayout().getContentTarget()},getDefaultContentTarget:function(){return this.el},getFocusEl:function(){return this.getTargetEl()},getScrollerEl:function(){return this.layout.getScrollerEl()||this.callParent()},prepareItems:function(b,d){if(Ext.isArray(b)){b=b.slice()}else{b=[b]}var g=this,c=0,a=b.length,e;for(;c<a;c++){e=b[c];if(e==null){Ext.Array.erase(b,c,1);--c;--a}else{if(d){e=this.applyDefaults(e)}e.initOwnerCt=g;if(e.isComponent){e.instancedCmp=true}b[c]=g.lookupComponent(e);delete e.initOwnerCt}}return b},repositionFloatingItems:function(){var b=this.floatingItems.items,a=b.length,d,c;for(d=0;d<a;d++){c=b[d];if(c.el&&!c.hidden){c.setPosition(c.x,c.y)}}},_noMargin:{"margin-top":"","margin-right":"","margin-bottom":"","margin-left":""},resetItemMargins:function(){var a=this.items.items,c=a.length,b=this._noMargin,d;while(c--){d=a[c];d.margin$=null;d.el.setStyle(b)}},setupRenderTpl:function(a){this.callParent(arguments);this.getLayout().setupRenderTpl(a)}}},0,["container"],["box","component","container"],{box:true,component:true,container:true},["widget.container"],[[Ext.mixin.Queryable.prototype.mixinId||Ext.mixin.Queryable.$className,Ext.mixin.Queryable]],[Ext.container,"Container",Ext,"Container",Ext,"AbstractContainer"],0));(Ext.cmd.derive("Ext.layout.container.Editor",Ext.layout.container.Container,{autoSizeDefault:{width:"field",height:"field"},sizePolicies:{$:{$:{readsWidth:1,readsHeight:1,setsWidth:0,setsHeight:0},boundEl:{readsWidth:1,readsHeight:0,setsWidth:0,setsHeight:1}},boundEl:{$:{readsWidth:0,readsHeight:1,setsWidth:1,setsHeight:0},boundEl:{readsWidth:0,readsHeight:0,setsWidth:1,setsHeight:1}}},getItemSizePolicy:function(d){var c=this,a=c.owner.autoSize,b=a&&a.width,e=c.sizePolicies;e=e[b]||e.$;b=a&&a.height;e=e[b]||e.$;return e},calculate:function(g){var e=this,b=e.owner,a=b.autoSize,d,c;if(a===true){a=e.autoSizeDefault}if(a){d=e.getDimension(b,a.width,"getWidth",b.width);c=e.getDimension(b,a.height,"getHeight",b.height)}g.childItems[0].setSize(d,c);g.setWidth(d);g.setHeight(c);g.setContentSize(d||b.field.getWidth(),c||b.field.getHeight())},getDimension:function(a,b,d,c){switch(b){case"boundEl":return a.boundEl[d]();case"field":return undefined;default:return c}}},0,0,0,0,["layout.editor"],0,[Ext.layout.container,"Editor"],0));(Ext.cmd.derive("Ext.Editor",Ext.container.Container,{layout:"editor",allowBlur:true,revertInvalid:true,value:"",alignment:"c-c?",offsets:[0,0],shadow:"frame",constrain:false,swallowKeys:true,completeOnEnter:true,cancelOnEsc:true,updateEl:false,focusOnToFront:false,hidden:true,baseCls:Ext.baseCSSPrefix+"editor",initComponent:function(){var a=this,b=a.field=Ext.ComponentManager.create(a.field,"textfield");b.inEditor=true;b.msgTarget=b.msgTarget||"qtip";a.mon(b,{scope:a,blur:a.onFieldBlur,specialkey:a.onSpecialKey});if(b.grow){a.mon(b,"autosize",a.onFieldAutosize,a,{delay:1})}a.floating={constrain:a.constrain};a.items=b;Ext.container.Container.prototype.initComponent.apply(this,arguments)},onFieldAutosize:function(){this.updateLayout()},afterRender:function(b,a){var c=this,e=c.field,d=e.inputEl;Ext.util.Renderable.prototype.afterRender.apply(this,arguments);if(d){d.dom.name="";if(c.swallowKeys){d.swallowEvent(["keypress","keydown"])}}},onSpecialKey:function(g,e){var d=this,b=e.getKey(),a=d.completeOnEnter&&b==e.ENTER,c=d.cancelOnEsc&&b==e.ESC;if(a||c){e.stopEvent();Ext.defer(function(){if(a){d.completeEdit()}else{d.cancelEdit()}},1)}d.fireEvent("specialkey",d,g,e)},startEdit:function(a,c){var b=this,d=b.field,e;b.completeEdit();b.boundEl=Ext.get(a);e=b.boundEl.dom;c=Ext.isDefined(c)?c:Ext.String.trim(e.textContent||e.innerText||e.innerHTML);if(!b.rendered&&!b.renderTo&&b.ownerCt){(b.renderTo=b.ownerCt.el).position()}if(b.fireEvent("beforestartedit",b,b.boundEl,c)!==false){b.startValue=c;b.show();d.suspendEvents();d.reset();d.setValue(c);d.resumeEvents();b.realign(true);d.focus([d.getRawValue().length]);if(d.autoSize){d.autoSize()}b.editing=true}},realign:function(a){var b=this;if(a===true){b.updateLayout()}b.alignTo(b.boundEl,b.alignment,b.offsets)},completeEdit:function(a){var b=this,d=b.field,c;if(!b.editing){return}if(d.assertValue){d.assertValue()}c=b.getValue();if(!d.isValid()){if(b.revertInvalid!==false){b.cancelEdit(a)}return}if(String(c)===String(b.startValue)&&b.ignoreNoChange){b.onEditComplete(a);return}if(b.fireEvent("beforecomplete",b,c,b.startValue)!==false){c=b.getValue();if(b.updateEl&&b.boundEl){b.boundEl.setHtml(c)}b.onEditComplete(a);b.fireEvent("complete",b,c,b.startValue)}},onShow:function(){var a=this;Ext.Component.prototype.onShow.apply(this,arguments);if(a.hideEl!==false){a.boundEl.hide()}a.fireEvent("startedit",a,a.boundEl,a.startValue)},cancelEdit:function(a){var c=this,b=c.startValue,e=c.field,d;if(c.editing){if(e){d=c.editedValue=c.getValue();e.suspendEvents();c.setValue(b);e.resumeEvents()}c.onEditComplete(a);c.fireEvent("canceledit",c,d,b);delete c.editedValue}},onEditComplete:function(a){if(a!==true){this.editing=false;this.hide()}},onFieldBlur:function(d,c){var a=this,b=Ext.Element.getActiveElement();if(a.allowBlur===true&&a.editing&&a.selectSameEditor!==true){a.completeEdit()}if(Ext.fly(b).isFocusable()||b.getAttribute("tabIndex")){b.focus()}},onHide:function(){var a=this,b=a.field;if(a.editing){a.completeEdit();return}if(b.hasFocus&&b.triggerBlur){b.triggerBlur()}if(b.collapse){b.collapse()}if(a.hideEl!==false){a.boundEl.show()}Ext.Component.prototype.onHide.apply(this,arguments)},setValue:function(a){this.field.setValue(a)},getValue:function(){return this.field.getValue()},beforeDestroy:function(){var a=this;Ext.destroy(a.field);delete a.field;delete a.boundEl;Ext.container.Container.prototype.beforeDestroy.apply(this,arguments)}},0,["editor"],["box","component","container","editor"],{box:true,component:true,container:true,editor:true},["widget.editor"],0,[Ext,"Editor"],0));(Ext.cmd.derive("Ext.EventManager",Ext.Base,{singleton:true,mouseLeaveRe:/(mouseout|mouseleave)/,mouseEnterRe:/(mouseover|mouseenter)/,addListener:function(c,a,e,d,b){Ext.get(c).addListener(a,e,d,b)},onWindowResize:function(c,b,a){Ext.GlobalEvents.on("resize",c,b,a)},onWindowUnload:function(c,b,a){Ext.getWin().on("unload",c,b,a)},purgeElement:function(b,a){Ext.get(b).clearListeners()},removeAll:function(a){Ext.get(a).clearListeners()},removeListener:function(c,a,e,d,b){Ext.get(c).removeListener(a,e,d,b)},removeResizeListener:function(b,a){Ext.GlobalEvents.un("resize",b,a)},removeUnloadListener:function(b,a){Ext.getWin().un("unload",b,a)},stopEvent:function(a){this.stopPropagation(a);this.preventDefault(a)},stopPropagation:function(a){a=a.browserEvent||a;if(a.stopPropagation){a.stopPropagation()}else{a.cancelBubble=true}},preventDefault:function(a){a=a.browserEvent||a;if(a.preventDefault){a.preventDefault()}else{a.returnValue=false;try{if(a.ctrlKey||a.keyCode>111&&a.keyCode<124){a.keyCode=-1}}catch(b){}}},getId:function(a){a=Ext.get(a);return a.id},getRelatedTarget:function(a){a=a.browserEvent||a;var b=a.relatedTarget;if(!b){if(this.mouseLeaveRe.test(a.type)){b=a.toElement}else{if(this.mouseEnterRe.test(a.type)){b=a.fromElement}}}return this.resolveTextNode(b)},getPageX:function(a){return this.getPageXY(a)[0]},getPageXY:function(c){c=c.browserEvent||c;var b=c.pageX,e=c.pageY,d=doc.documentElement,a=doc.body;if(!b&&b!==0){b=c.clientX+(d&&d.scrollLeft||a&&a.scrollLeft||0)-(d&&d.clientLeft||a&&a.clientLeft||0);e=c.clientY+(d&&d.scrollTop||a&&a.scrollTop||0)-(d&&d.clientTop||a&&a.clientTop||0)}return[b,e]},getPageY:function(a){return this.getPageXY(a)[1]},getTarget:function(a){a=a.browserEvent||a;return EventManager.resolveTextNode(a.target||a.srcElement)},resolveTextNode:Ext.isGecko?function(b){if(b){var a=HTMLElement.prototype.toString.call(b);if(a!=="[xpconnect wrapped native prototype]"&&a!=="[object XULElement]"){return b.nodeType==3?b.parentNode:b}}}:function(a){return a&&a.nodeType==3?a.parentNode:a}},0,0,0,0,0,0,[Ext,"EventManager"],function(a){a.on=a.addListener;a.un=a.removeListener}));(Ext.cmd.derive("Ext.util.KeyMap",Ext.Base,{alternateClassName:"Ext.KeyMap",eventName:"keydown",constructor:function(a){var b=this;if((arguments.length!==1)||(typeof a==="string")||a.dom||a.tagName||a===document||a.isComponent){b.legacyConstructor.apply(b,arguments);return}Ext.apply(b,a);b.bindings=[];if(!b.target.isComponent){b.target=Ext.get(b.target)}if(b.binding){b.addBinding(b.binding)}else{if(a.key){b.addBinding(a)}}b.enable()},legacyConstructor:function(b,d,a){var c=this;Ext.apply(c,{target:Ext.get(b),eventName:a||c.eventName,bindings:[]});if(d){c.addBinding(d)}c.enable()},addBinding:function(e){var c=this,d=e.key,b,a;if(c.processing){c.bindings=bindings.slice(0)}if(Ext.isArray(e)){for(b=0,a=e.length;b<a;b++){c.addBinding(e[b])}return}c.bindings.push(Ext.apply({keyCode:c.processKeys(d)},e))},removeBinding:function(g){var e=this,h=e.bindings,a=h.length,b,d,c;if(e.processing){e.bindings=h.slice(0)}c=e.processKeys(g.key);for(b=0;b<a;++b){d=h[b];if((d.fn||d.handler)===(g.fn||g.handler)&&d.scope===g.scope){if(g.alt===d.alt&&g.crtl===d.crtl&&g.shift===d.shift){if(Ext.Array.equals(d.keyCode,c)){Ext.Array.erase(e.bindings,b,1);return}}}}},processKeys:function(g){var h=false,d,e,b,a,c;if(Ext.isString(g)){e=[];b=g.toUpperCase();for(c=0,a=b.length;c<a;++c){e.push(b.charCodeAt(c))}g=e;h=true}if(!Ext.isArray(g)){g=[g]}if(!h){for(c=0,a=g.length;c<a;++c){d=g[c];if(Ext.isString(d)){g[c]=d.toUpperCase().charCodeAt(0)}}}return g},handleTargetEvent:(function(){var a=/input|textarea/i;return function(g){var e=this,j,c,b,h,d;if(e.enabled){j=e.bindings;c=0;b=j.length;g=e.processEvent.apply(e||e.processEventScope,arguments);if(e.ignoreInputFields){h=g.target;d=h.contentEditable;if(a.test(h.tagName)||(d===""||d==="true")){return}}if(!g.getKey){return g}e.processing=true;for(;c<b;++c){e.processBinding(j[c],g)}e.processing=false}}}()),processEvent:Ext.identityFn,processBinding:function(e,a){if(this.checkModifiers(e,a)){var g=a.getKey(),j=e.fn||e.handler,k=e.scope||this,h=e.keyCode,b=e.defaultEventAction,c,d;for(c=0,d=h.length;c<d;++c){if(g===h[c]){if(j.call(k,g,a)!==true&&b){a[b]()}break}}}},checkModifiers:function(h,e){var d=["shift","ctrl","alt"],c=0,a=d.length,g,b;for(;c<a;++c){b=d[c];g=h[b];if(!(g===undefined||(g===e[b+"Key"]))){return false}}return true},on:function(b,d,c){var h,a,e,g;if(Ext.isObject(b)&&!Ext.isArray(b)){h=b.key;a=b.shift;e=b.ctrl;g=b.alt}else{h=b}this.addBinding({key:h,shift:a,ctrl:e,alt:g,fn:d,scope:c})},un:function(b,d,c){var h,a,e,g;if(Ext.isObject(b)&&!Ext.isArray(b)){h=b.key;a=b.shift;e=b.ctrl;g=b.alt}else{h=b}this.removeBinding({key:h,shift:a,ctrl:e,alt:g,fn:d,scope:c})},isEnabled:function(){return this.enabled},enable:function(){var a=this;if(!a.enabled){a.target.on(a.eventName,a.handleTargetEvent,a);a.enabled=true}},disable:function(){var a=this;if(a.enabled){a.target.removeListener(a.eventName,a.handleTargetEvent,a);a.enabled=false}},setDisabled:function(a){if(a){this.disable()}else{this.enable()}},destroy:function(c){var a=this,b=a.target;a.bindings=[];a.disable();if(c){b.destroy()}delete a.target}},1,0,0,0,0,0,[Ext.util,"KeyMap",Ext,"KeyMap"],0));(Ext.cmd.derive("Ext.util.KeyNav",Ext.Base,{alternateClassName:"Ext.KeyNav",statics:{keyOptions:{left:37,right:39,up:38,down:40,space:32,pageUp:33,pageDown:34,del:46,backspace:8,home:36,end:35,enter:13,esc:27,tab:9}},constructor:function(a){var b=this;if(arguments.length===2){b.legacyConstructor.apply(b,arguments);return}b.setConfig(a)},legacyConstructor:function(b,a){this.setConfig(Ext.apply({target:b},a))},setConfig:function(b){var e=this,c={target:b.target,ignoreInputFields:b.ignoreInputFields,eventName:e.getKeyEvent("forceKeyDown" in b?b.forceKeyDown:e.forceKeyDown,b.eventName)},g,a,j,d,h;if(e.map){e.map.destroy()}if(b.processEvent){c.processEvent=b.processEvent;c.processEventScope=b.processEventScope||e}if(b.keyMap){g=e.map=b.keyMap}else{g=e.map=new Ext.util.KeyMap(c);e.destroyKeyMap=true}a=Ext.util.KeyNav.keyOptions;j=b.scope||e;for(d in b){h=b[d];if(h&&(d.length===1||(d=a[d])||(!isNaN(d=parseInt(d,10))))){if(typeof h==="function"){h={handler:h,defaultEventAction:(b.defaultEventAction!==undefined)?b.defaultEventAction:e.defaultEventAction}}g.addBinding({key:d,ctrl:h.ctrl,shift:h.shift,alt:h.alt,handler:Ext.Function.bind(e.handleEvent,h.scope||j,h.handler||h.fn,true),defaultEventAction:(h.defaultEventAction!==undefined)?h.defaultEventAction:e.defaultEventAction})}}g.disable();if(!b.disabled){g.enable()}},handleEvent:function(c,b,a){return a.call(this,b)},disabled:false,defaultEventAction:"stopEvent",forceKeyDown:false,eventName:"keypress",destroy:function(a){if(this.destroyKeyMap){this.map.destroy(a)}delete this.map},enable:function(){if(this.map){this.map.enable();this.disabled=false}},disable:function(){if(this.map){this.map.disable()}this.disabled=true},setDisabled:function(a){this.map.setDisabled(a);this.disabled=a},getKeyEvent:function(b,a){if(b||(Ext.supports.SpecialKeyDownRepeat&&!a)){return"keydown"}else{return a||this.eventName}}},1,0,0,0,0,0,[Ext.util,"KeyNav",Ext,"KeyNav"],0));(Ext.cmd.derive("Ext.FocusManager",Ext.Base,{singleton:true,alternateClassName:["Ext.FocusMgr"],enabled:false,focusElementCls:Ext.baseCSSPrefix+"focus-element",focusFrameCls:Ext.baseCSSPrefix+"focus-frame",whitelist:["textfield"],constructor:function(a){var b=this,c=Ext.ComponentQuery;b.mixins.observable.constructor.call(b,a);b.focusTask=new Ext.util.DelayedTask(b.handleComponentFocus,b);Ext.override(Ext.Component,{onBlur:function(){this.callParent(arguments);if(b.enabled&&!this.hasFocus){Array.prototype.unshift.call(arguments,this);b.onComponentBlur.apply(b,arguments)}},onDestroy:function(){this.callParent(arguments);if(b.enabled){Array.prototype.unshift.call(arguments,this);b.onComponentDestroy.apply(b,arguments)}},onFocus:function(){this.callParent(arguments);if(b.enabled&&this.hasFocus){Array.prototype.unshift.call(arguments,this);b.onComponentFocus.apply(b,arguments)}}});Ext.override(Ext.Component,{afterHide:function(){this.callParent(arguments);if(b.enabled){Array.prototype.unshift.call(arguments,this);b.onComponentHide.apply(b,arguments)}}});b.focusData={};b.subscribers=new Ext.util.HashMap();b.focusChain={};Ext.apply(c.pseudos,{nextFocus:function(g,e,j){j=j||1;e=parseInt(e,10);var d=g.length,h=e,k;for(;;){if((h+=j)>=d){h=0}else{if(h<0){h=d-1}}if(h===e){return[]}if((k=g[h]).isFocusable()){return[k]}}return[]},prevFocus:function(e,d){return this.nextFocus(e,d,-1)},root:function(e){var d=e.length,h=[],g=0,j;for(;g<d;g++){j=e[g];if(!j.ownerCt){h.push(j)}}return h}})},getKeyNav:function(){var a=this;a.keyNav=a.keyNav||new Ext.util.KeyNav(Ext.getDoc(),{disabled:true,scope:a,backspace:a.focusLast,enter:a.navigateIn,esc:a.navigateOut,tab:a.navigateSiblings,space:a.navigateIn,del:a.focusLast,left:a.navigateSiblings,right:a.navigateSiblings,down:a.navigateSiblings,up:a.navigateSiblings});return a.keyNav},addXTypeToWhitelist:function(b){var a=this;if(Ext.isArray(b)){Ext.Array.forEach(b,a.addXTypeToWhitelist,a);return}if(!Ext.Array.contains(a.whitelist,b)){a.whitelist.push(b)}},clearComponent:function(a){clearTimeout(this.cmpFocusDelay);if(!a.isDestroyed){a.blur()}},disable:function(){var a=this;if(!a.enabled){return}delete a.options;a.enabled=false;a.removeDOM();a.getKeyNav().disable();a.fireEvent("disable",a)},enable:function(a){var b=this;if(a===true){a={focusFrame:true}}b.options=a=a||{};if(b.enabled){return}b.enabled=Ext.enableFocusManager=true;b.initDOM(a);b.getKeyNav().enable();b.focusEl.focus();delete b.focusedCmp;b.fireEvent("enable",b)},focusLast:function(b){var a=this;if(a.isWhitelisted(a.focusedCmp)){return true}if(a.previousFocusedCmp){a.previousFocusedCmp.focus()}},getRootComponents:function(){var b=Ext.ComponentQuery,a=b.query(":focusable:root:not([floating])"),c=b.query(":focusable:root[floating]");c.sort(function(e,d){return e.el.getZIndex()>d.el.getZIndex()});return c.concat(a)},initDOM:function(c){var g=this,b=g.focusFrameCls,e=Ext.ComponentQuery.query("{getFocusEl()}:not([focusListenerAdded])"),d=0,a=e.length;if(!Ext.isReady){return Ext.onReady(g.initDOM,g)}for(;d<a;d++){e[d].addFocusListener()}if(!g.focusEl){g.focusEl=Ext.getBody();g.focusEl.dom.tabIndex=-1}if(!g.focusFrame&&c.focusFrame){g.focusFrame=Ext.getBody().createChild({cls:b,children:[{cls:b+"-top"},{cls:b+"-bottom"},{cls:b+"-left"},{cls:b+"-right"}],style:"top: -100px; left: -100px;"});g.focusFrame.setVisibilityMode(Ext.Element.DISPLAY);g.focusFrame.hide().setLocalXY(0,0)}},isWhitelisted:function(a){return a&&Ext.Array.some(this.whitelist,function(b){return a.isXType(b)})},navigateIn:function(g){var c=this,a=c.focusedCmp,b,d;if(c.isWhitelisted(a)){return true}if(!a){b=c.getRootComponents()[0];if(b){if(b.getFocusEl()===c.focusEl){c.focusEl.blur()}b.focus()}}else{d=a.hasFocus?Ext.ComponentQuery.query(">:focusable",a)[0]:a;if(d){d.focus()}else{if(Ext.isFunction(a.onClick)){g.button=0;a.onClick(g);if(a.isVisible(true)){a.focus()}else{c.navigateOut()}}}}},navigateOut:function(c){var b=this,a;if(!b.focusedCmp||!(a=b.focusedCmp.up(":focusable"))){b.focusEl.focus()}else{a.focus()}return true},navigateSiblings:function(h,b,o){var j=this,a=b||j,p=h.getKey(),k=h.shiftKey||p==h.LEFT||p==h.UP,c=p===h.LEFT||p===h.RIGHT||p===h.UP||p===h.DOWN,g=k?"prev":"next",n,d,m,l;m=(a.focusedCmp&&a.focusedCmp.comp)||a.focusedCmp;if(!m&&!o){return true}if(c&&j.isWhitelisted(m)){return true}if(!m||m.is(":root")){l=j.getRootComponents()}else{o=o||m.up();if(o){l=o.getRefItems()}}if(l){n=m?Ext.Array.indexOf(l,m):-1;d=Ext.ComponentQuery.query(":"+g+"Focus("+n+")",l)[0];if(d&&m!==d){d.focus();return d}}},onComponentBlur:function(b,c){var a=this;if(a.focusedCmp===b){a.previousFocusedCmp=b;delete a.focusedCmp}if(a.focusFrame){a.focusFrame.hide()}},onComponentFocus:function(d,g){var c=this,a=c.focusChain,b;if(!d.isFocusable()){c.clearComponent(d);if(a[d.id]){return}b=d.up();if(b){a[d.id]=true;b.focus()}return}c.focusChain={};c.focusTask.delay(10,null,null,[d,d.getFocusEl()])},handleComponentFocus:function(m,h){var k=this,p,a,g,o,b,l,d,e,c,n,j;if(k.fireEvent("beforecomponentfocus",k,m,k.previousFocusedCmp)===false){k.clearComponent(m);return}k.focusedCmp=m;if(k.shouldShowFocusFrame(m)){p="."+k.focusFrameCls+"-";a=k.focusFrame;g=(h.dom?h:h.el).getBox();o=g.top;b=g.left;l=g.width;d=g.height;e=a.child(p+"top");c=a.child(p+"bottom");n=a.child(p+"left");j=a.child(p+"right");e.setWidth(l).setLocalXY(b,o);c.setWidth(l).setLocalXY(b,o+d-2);n.setHeight(d-2).setLocalXY(b,o+2);j.setHeight(d-2).setLocalXY(b+l-2,o+2);a.show()}k.fireEvent("componentfocus",k,m,k.previousFocusedCmp)},onComponentHide:function(e){var d=this,b=false,a=d.focusedCmp,c;if(a){b=e.hasFocus||(e.isContainer&&e.isAncestor(d.focusedCmp))}d.clearComponent(e);if(b&&(c=e.up(":focusable"))){c.focus()}else{d.focusEl.focus()}},onComponentDestroy:function(){},removeDOM:function(){var a=this;if(a.enabled||a.subscribers.length){return}Ext.destroy(a.focusFrame);delete a.focusEl;delete a.focusFrame},removeXTypeFromWhitelist:function(b){var a=this;if(Ext.isArray(b)){Ext.Array.forEach(b,a.removeXTypeFromWhitelist,a);return}Ext.Array.remove(a.whitelist,b)},setupSubscriberKeys:function(a,g){var e=this,d=a.getFocusEl(),c=g.scope,b={backspace:e.focusLast,enter:e.navigateIn,esc:e.navigateOut,scope:e},h=function(j){if(e.focusedCmp===a){return e.navigateSiblings(j,e,a)}else{return e.navigateSiblings(j)}};Ext.iterate(g,function(k,j){b[k]=function(m){var l=h(m);if(Ext.isFunction(j)&&j.call(c||a,m,l)===true){return true}return l}},e);return new Ext.util.KeyNav(d,b)},shouldShowFocusFrame:function(c){var b=this,a=b.options||{};if(!b.focusFrame||!c){return false}if(a.focusFrame){return true}if(b.focusData[c.id].focusFrame){return true}return false}},1,0,0,0,0,[["observable",Ext.util.Observable]],[Ext,"FocusManager",Ext,"FocusMgr"],0));(Ext.cmd.derive("Ext.Img",Ext.Component,{autoEl:"img",baseCls:Ext.baseCSSPrefix+"img",src:"",alt:"",title:"",imgCls:"",ariaRole:"img",maskOnDisable:false,initComponent:function(){if(this.glyph){this.autoEl="div"}Ext.Component.prototype.initComponent.call(this)},getElConfig:function(){var e=this,h=e.autoEl,b=Ext.util.Renderable.prototype.getElConfig.call(this),g=Ext._glyphFontFamily,d=e.glyph,a,c;if(h==="img"||(Ext.isObject(h)&&h.tag==="img")){a=b}else{if(e.glyph){if(typeof d==="string"){c=d.split("@");d=c[0];g=c[1]}b.html="&#"+d+";";if(g){b.style="font-family:"+g}}else{b.cn=[a={tag:"img",role:e.ariaRole,id:e.id+"-img"}]}}if(a){if(e.imgCls){a.cls=(a.cls?a.cls+" ":"")+e.imgCls}a.src=e.src||Ext.BLANK_IMAGE_URL}if(e.alt){(a||b).alt=e.alt}if(e.title){(a||b).title=e.title}return b},onRender:function(){var b=this,c=b.autoEl,a;Ext.util.Renderable.prototype.onRender.apply(this,arguments);a=b.el;if(c==="img"||(Ext.isObject(c)&&c.tag==="img")){b.imgEl=a}else{b.imgEl=a.getById(b.id+"-img")}},onDestroy:function(){Ext.destroy(this.imgEl);this.imgEl=null;Ext.Component.prototype.onDestroy.call(this)},setSrc:function(c){var a=this,b=a.imgEl;a.src=c;if(b){b.dom.src=c||Ext.BLANK_IMAGE_URL}},setGlyph:function(c){var b=this,d=Ext._glyphFontFamily,a,e;if(c!=b.glyph){if(typeof c==="string"){a=c.split("@");c=a[0];d=a[1]}e=b.el.dom;e.innerHTML="&#"+c+";";if(d){e.style="font-family:"+d}}}},0,["image","imagecomponent"],["box","component","image","imagecomponent"],{box:true,component:true,image:true,imagecomponent:true},["widget.image","widget.imagecomponent"],0,[Ext,"Img"],0));(Ext.cmd.derive("Ext.util.StoreHolder",Ext.Base,{mixinId:"storeholder",bindStore:function(b,c,a){a=a||"store";var d=this,e=d[a];if(!c&&e){d.onUnbindStore(e,c,a);if(b!==e){if(a==="store"&&e.autoDestroy){e.destroy()}else{d.unbindStoreListeners(e)}}}if(b){d[a]=b=Ext.data.StoreManager.lookup(b);d.bindStoreListeners(b);d.onBindStore(b,c,a)}else{d[a]=null}return d},getStore:function(){return this.store},setStore:function(a){this.bindStore(a)},unbindStoreListeners:function(a){var b=this.storeListeners;if(b){a.un(b)}},bindStoreListeners:function(a){var c=this,b=Ext.apply({},c.getStoreListeners(a));if(!b.scope){b.scope=c}c.storeListeners=b;a.on(b)},getStoreListeners:Ext.emptyFn,onUnbindStore:Ext.emptyFn,onBindStore:Ext.emptyFn},0,0,0,0,0,0,[Ext.util,"StoreHolder"],0));(Ext.cmd.derive("Ext.LoadMask",Ext.Component,{isLoadMask:true,msg:"Loading...",msgCls:Ext.baseCSSPrefix+"mask-loading",maskCls:Ext.baseCSSPrefix+"mask",cls:Ext.baseCSSPrefix+"mask-msg",useMsg:true,useTargetEl:false,ariaRole:"presentation",childEls:["msgEl","msgTextEl"],renderTpl:['<div id="{id}-msgEl" data-ref="msgEl" role="{role}"','<tpl if="ariaAttr"> {ariaAttr}</tpl>',' class="{[values.$comp.msgCls]} ',Ext.baseCSSPrefix,'mask-msg-inner {childElCls}">','<div id="{id}-msgTextEl" data-ref="msgTextEl" class="',Ext.baseCSSPrefix,"mask-msg-text",'{childElCls}">{msg}</div>',"</div>"],constructor:function(b){var c=this,a;if(arguments.length===2){a=c.target=b;b=arguments[1]}else{a=b.target}Ext.Component.prototype.constructor.apply(this,[b]);if(a.isComponent){c.ownerCt=a;c.hidden=true;c.renderTo=c.getMaskTarget();c.external=c.renderTo===Ext.getBody();c.bindComponent(a)}else{a=Ext.get(a);c.isElement=true;c.renderTo=c.target}c.render(c.renderTo);if(c.store){c.bindStore(c.store,true)}},getRenderTree:function(){return[{cls:this.maskCls,style:"display:none"},this.callParent()]},onRender:function(){Ext.util.Renderable.prototype.onRender.apply(this,arguments);this.maskEl=this.el.prev()},initRenderData:function(){var a=Ext.util.Renderable.prototype.initRenderData.apply(this,arguments);a.msg=this.msg||"";return a},bindComponent:function(a){var c=this,b={scope:this,resize:c.sizeMask};if(c.external){b.added=c.onComponentAdded;b.removed=c.onComponentRemoved;if(a.floating){b.move=c.sizeMask;c.activeOwner=a}else{if(a.ownerCt){c.onComponentAdded(a.ownerCt)}}}c.mon(a,b);if(c.external){c.mon(Ext.GlobalEvents,{show:c.onContainerShow,hide:c.onContainerHide,expand:c.onContainerExpand,collapse:c.onContainerCollapse,scope:c})}},onComponentAdded:function(a){var b=this;delete b.activeOwner;b.floatParent=a;if(!a.floating){a=a.up("[floating]")}if(a){b.activeOwner=a;b.mon(a,"move",b.sizeMask,b);b.mon(a,"tofront",b.onOwnerToFront,b)}else{b.preventBringToFront=true}a=b.floatParent.ownerCt;if(b.rendered&&b.isVisible()&&a){b.floatOwner=a;b.mon(a,"afterlayout",b.sizeMask,b,{single:true})}},onComponentRemoved:function(a){var c=this,d=c.activeOwner,b=c.floatOwner;if(d){c.mun(d,"move",c.sizeMask,c);c.mun(d,"tofront",c.onOwnerToFront,c)}if(b){c.mun(b,"afterlayout",c.sizeMask,c)}delete c.activeOwner;delete c.floatOwner},afterRender:function(){Ext.util.Renderable.prototype.afterRender.apply(this,arguments);this.el.skipGarbageCollection=true;this.maskEl.skipGarbageCollection=true},onOwnerToFront:function(a,b){this.maskEl.setStyle("zIndex",b+1);this.el.setStyle("zIndex",b+2)},onContainerShow:function(a){this.onComponentShow()},onContainerHide:function(a){this.onComponentHide()},onContainerExpand:function(a){this.onComponentShow()},onContainerCollapse:function(a){this.onComponentHide()},onComponentHide:function(){var a=this;if(a.rendered&&a.isVisible()){a.hide();a.showNext=true}},onComponentShow:function(){if(this.showNext){this.show()}delete this.showNext},sizeMask:function(){var b=this,c=b.target,a=b.external?b.getOwner().el:b.getMaskTarget();if(b.rendered&&b.isVisible()){if(b.external){if(!b.isElement&&c.floating){b.onOwnerToFront(c,c.el.getZIndex())}b.maskEl.setSize(a.getSize()).alignTo(a,"tl-tl")}b.el.center(b.maskEl)}},bindStore:function(a,b){var c=this;c.mixins.storeholder.bindStore.apply(c,arguments);a=c.store;if(a&&a.isLoading()){c.onBeforeLoad()}},getStoreListeners:function(b){var d=this.onLoad,c=this.onBeforeLoad,a={cachemiss:c,cachefilled:d};if(!b.proxy.isSynchronous){a.beforeload=c;a.load=d}return a},onDisable:function(){Ext.Component.prototype.onDisable.apply(this,arguments);if(this.loading){this.onLoad()}},getOwner:function(){return this.ownerCt||this.floatParent},getMaskTarget:function(){var a=this.getOwner();if(this.isElement){return this.target}return this.useTargetEl?a.getTargetEl():(a.getMaskTarget()||Ext.getBody())},onBeforeLoad:function(){var c=this,a=c.getOwner(),b;if(!c.disabled){c.loading=true;if(a.componentLayoutCounter){c.maybeShow()}else{b=a.afterComponentLayout;a.afterComponentLayout=function(){a.afterComponentLayout=b;b.apply(a,arguments);c.maybeShow()}}}},maybeShow:function(){var b=this,a=b.getOwner();if(!a.isVisible(true)){b.showNext=true}else{if(b.loading&&a.rendered){b.show()}}},hide:function(){if(this.isElement){this.ownerCt.unmask();this.fireEvent("hide",this);return}delete this.showNext;this.maskEl.setDisplayed(false);return Ext.Component.prototype.hide.apply(this,arguments)},show:function(){if(this.isElement){this.ownerCt.mask(this.useMsg?this.msg:"",this.msgCls);this.fireEvent("show",this);return}this.maskEl.setDisplayed(true);return Ext.Component.prototype.show.apply(this,arguments)},afterShow:function(){var a=this;a.loading=true;Ext.Component.prototype.afterShow.apply(this,arguments);if(a.hasOwnProperty("maskCls")){a.maskEl.dom.className=a.maskCls}if(a.useMsg){a.msgTextEl.setHtml(a.msg)}else{a.el.hide()}a.sizeMask()},onLoad:function(){this.loading=false;this.hide()},onDestroy:function(){var a=this;if(a.isElement){a.ownerCt.unmask()}Ext.destroy(a.maskEl);Ext.Component.prototype.onDestroy.call(this)}},1,["loadmask"],["box","component","loadmask"],{box:true,component:true,loadmask:true},["widget.loadmask"],[[Ext.util.StoreHolder.prototype.mixinId||Ext.util.StoreHolder.$className,Ext.util.StoreHolder]],[Ext,"LoadMask"],0));(Ext.cmd.derive("Ext.layout.component.Component",Ext.layout.Layout,{type:"component",isComponentLayout:true,nullBox:{},usesContentHeight:true,usesContentWidth:true,usesHeight:true,usesWidth:true,widthCache:{},heightCache:{},beginLayoutCycle:function(c,q){var l=this,b=l.owner,e=c.ownerCtContext,g=c.heightModel,h=c.widthModel,j=b.el.dom===document.body,d=b.lastBox||l.nullBox,o=b.el.lastBox||l.nullBox,a=!j,n,p,m,k;Ext.layout.Layout.prototype.beginLayoutCycle.apply(this,arguments);if(q){if(l.usesContentWidth){++c.consumersContentWidth}if(l.usesContentHeight){++c.consumersContentHeight}if(l.usesWidth){++c.consumersWidth}if(l.usesHeight){++c.consumersHeight}if(e&&!e.hasRawContent){n=b.ownerLayout;if(n){if(n.usesWidth){++c.consumersWidth}if(n.usesHeight){++c.consumersHeight}}}}if(h.configured){m=h.names.width;if(!j){a=l.setWidthInDom||(q?b[m]!==o.width:h.constrained)}c.setWidth(b[m],a)}else{if(c.isTopLevel){if(h.calculated){p=d.width;c.setWidth(p,p!=o.width)}p=d.x;c.setProp("x",p,p!=o.x)}}if(g.configured){k=g.names.height;if(!j){a=q?b[k]!==o.height:g.constrained}c.setHeight(b[k],a)}else{if(c.isTopLevel){if(g.calculated){p=d.height;c.setHeight(p,p!=o.height)}p=d.y;c.setProp("y",p,p!=o.y)}}},finishedLayout:function(b){var h=this,k=b.children,a=h.owner,e,c,j,d,g;if(k){e=k.length;for(c=0;c<e;c++){j=k[c];j.el.lastBox=j.props}}b.previousSize=h.lastComponentSize;h.lastComponentSize=a.el.lastBox=g=b.props;d=a.lastBox||(a.lastBox={});d.x=g.x;d.y=g.y;d.width=g.width;d.height=g.height;d.invalid=false;Ext.layout.Layout.prototype.finishedLayout.apply(this,arguments)},notifyOwner:function(d){var c=this,a=c.lastComponentSize,e=d.previousSize,b=[a.width,a.height];if(e){b.push(e.width,e.height)}c.owner.afterComponentLayout.apply(c.owner,b)},getTarget:function(){return this.owner.el},getRenderTarget:function(){return this.owner.el},cacheTargetInfo:function(b){var a=this,d=a.targetInfo,c;if(!d){c=b.getEl("getTarget",a);a.targetInfo=d={padding:c.getPaddingInfo(),border:c.getBorderInfo()}}return d},measureAutoDimensions:function(n,j){var v=this,a=v.owner,s=a.layout,d=n.heightModel,h=n.widthModel,c=n.boxParent,p=n.isBoxParent,w=n.target,b=n.props,k,x={gotWidth:false,gotHeight:false,isContainer:(k=!n.hasRawContent)},u=j||3,r,e,l=0,g=0,m,q,t,y,o;if(h.shrinkWrap&&n.consumersContentWidth){++l;r=!(u&1);if(k){if(r){x.contentWidth=0;x.gotWidth=true;++g}else{if((x.contentWidth=n.getProp("contentWidth"))!==undefined){x.gotWidth=true;++g}}}else{q=b.contentWidth;if(typeof q=="number"){x.contentWidth=q;x.gotWidth=true;++g}else{if(r){m=true}else{if(!n.hasDomProp("containerChildrenSizeDone")){m=false}else{if(p||!c||c.widthModel.shrinkWrap){m=true}else{m=c.hasDomProp("width")}}}if(m){if(r){t=0}else{if(s&&s.measureContentWidth){t=s.measureContentWidth(n)}else{if(w.cacheWidth){y=w.xtype+"-"+w.ui;o=v.widthCache;t=o[y]||(o[y]=v.measureContentWidth(n))}else{t=v.measureContentWidth(n)}}}if(!isNaN(x.contentWidth=t)){n.setContentWidth(t,true);x.gotWidth=true;++g}}}}}else{if(h.natural&&n.consumersWidth){++l;q=b.width;if(typeof q=="number"){x.width=q;x.gotWidth=true;++g}else{if(p||!c){m=true}else{m=c.hasDomProp("width")}if(m){if(!isNaN(x.width=v.measureOwnerWidth(n))){n.setWidth(x.width,false);x.gotWidth=true;++g}}}}}if(d.shrinkWrap&&n.consumersContentHeight){++l;e=!(u&2);if(k){if(e){x.contentHeight=0;x.gotHeight=true;++g}else{if((x.contentHeight=n.getProp("contentHeight"))!==undefined){x.gotHeight=true;++g}}}else{q=b.contentHeight;if(typeof q=="number"){x.contentHeight=q;x.gotHeight=true;++g}else{if(e){m=true}else{if(!n.hasDomProp("containerChildrenSizeDone")){m=false}else{if(a.noWrap){m=true}else{if(!h.shrinkWrap){m=(n.bodyContext||n).hasDomProp("width")}else{if(p||!c||c.widthModel.shrinkWrap){m=true}else{m=c.hasDomProp("width")}}}}}if(m){if(e){t=0}else{if(s&&s.measureContentHeight){t=s.measureContentHeight(n)}else{if(w.cacheHeight){y=w.xtype+"-"+w.ui;o=v.heightCache;t=o[y]||(o[y]=v.measureContentHeight(n))}else{t=v.measureContentHeight(n)}}}if(!isNaN(x.contentHeight=t)){n.setContentHeight(t,true);x.gotHeight=true;++g}}}}}else{if(d.natural&&n.consumersHeight){++l;q=b.height;if(typeof q=="number"){x.height=q;x.gotHeight=true;++g}else{if(p||!c){m=true}else{m=c.hasDomProp("width")}if(m){if(!isNaN(x.height=v.measureOwnerHeight(n))){n.setHeight(x.height,false);x.gotHeight=true;++g}}}}}if(c){n.onBoxMeasured()}x.gotAll=g==l;return x},measureContentWidth:function(a){return a.el.getWidth()-a.getFrameInfo().width},measureContentHeight:function(a){return a.el.getHeight()-a.getFrameInfo().height},measureOwnerHeight:function(a){return a.el.getHeight()},measureOwnerWidth:function(a){return a.el.getWidth()}},0,0,0,0,0,0,[Ext.layout.component,"Component"],0));(Ext.cmd.derive("Ext.layout.component.Auto",Ext.layout.component.Component,{type:"autocomponent",setHeightInDom:false,setWidthInDom:false,waitForOuterHeightInDom:false,waitForOuterWidthInDom:false,beginLayoutCycle:function(d,a){var c=this,g=c.lastWidthModel,e=c.lastHeightModel,b=c.owner.el;Ext.layout.component.Component.prototype.beginLayoutCycle.apply(this,arguments);if(g&&g.fixed&&d.widthModel.shrinkWrap){b.setWidth(null)}if(e&&e.fixed&&d.heightModel.shrinkWrap){b.setHeight(null)}},calculate:function(h){var g=this,e=g.measureAutoDimensions(h),b=h.heightModel,c=h.widthModel,d,a;if(e.gotWidth){if(c.shrinkWrap){g.publishOwnerWidth(h,e.contentWidth)}else{if(g.publishInnerWidth){g.publishInnerWidth(h,e.width)}}}else{if(!c.auto&&g.publishInnerWidth){d=g.waitForOuterWidthInDom?h.getDomProp("width"):h.getProp("width");if(d===undefined){g.done=false}else{g.publishInnerWidth(h,d)}}}if(e.gotHeight){if(b.shrinkWrap){g.publishOwnerHeight(h,e.contentHeight)}else{if(g.publishInnerHeight){g.publishInnerHeight(h,e.height)}}}else{if(!b.auto&&g.publishInnerHeight){a=g.waitForOuterHeightInDom?h.getDomProp("height"):h.getProp("height");if(a===undefined){g.done=false}else{g.publishInnerHeight(h,a)}}}if(!e.gotAll){g.done=false}},calculateOwnerHeightFromContentHeight:function(b,a){return a+b.getFrameInfo().height},calculateOwnerWidthFromContentWidth:function(b,a){return a+b.getFrameInfo().width},publishOwnerHeight:function(j,g){var e=this,b=e.owner,a=e.calculateOwnerHeightFromContentHeight(j,g),h,d,c;if(isNaN(a)){e.done=false}else{h=Ext.Number.constrain(a,b.minHeight,b.maxHeight);if(h==a){d=e.setHeightInDom}else{c=e.sizeModels[(h<a)?"constrainedMax":"constrainedMin"];a=h;if(j.heightModel.calculatedFromShrinkWrap){j.heightModel=c}else{j.invalidate({heightModel:c})}}j.setHeight(a,d)}},publishOwnerWidth:function(h,b){var g=this,a=g.owner,e=g.calculateOwnerWidthFromContentWidth(h,b),j,d,c;if(isNaN(e)){g.done=false}else{j=Ext.Number.constrain(e,a.minWidth,a.maxWidth);if(j==e){d=g.setWidthInDom}else{c=g.sizeModels[(j<e)?"constrainedMax":"constrainedMin"];e=j;if(h.widthModel.calculatedFromShrinkWrap){h.widthModel=c}else{h.invalidate({widthModel:c})}}h.setWidth(e,d)}}},0,0,0,0,["layout.autocomponent"],0,[Ext.layout.component,"Auto"],0));(Ext.cmd.derive("Ext.layout.component.ProgressBar",Ext.layout.component.Auto,{type:"progressbar",beginLayout:function(d){var b=this,a,c;Ext.layout.Layout.prototype.beginLayout.apply(this,arguments);if(!d.textEls){c=b.owner.textEl;if(c.isComposite){d.textEls=[];c=c.elements;for(a=c.length;a--;){d.textEls[a]=d.getEl(Ext.get(c[a]))}}else{d.textEls=[d.getEl("textEl")]}}},calculate:function(e){var c=this,a,d,b;Ext.layout.component.Auto.prototype.calculate.apply(this,arguments);if(Ext.isNumber(b=e.getProp("width"))){b-=e.getBorderInfo().width;d=e.textEls;for(a=d.length;a--;){d[a].setWidth(b)}}else{c.done=false}}},0,0,0,0,["layout.progressbar"],0,[Ext.layout.component,"ProgressBar"],0));(Ext.cmd.derive("Ext.ProgressBar",Ext.Component,{config:{value:0,textTpl:null},baseCls:Ext.baseCSSPrefix+"progress",animate:false,text:"",waitTimer:null,childEls:["bar"],defaultBindProperty:"value",renderTpl:['<tpl if="internalText">','<div class="{baseCls}-text {baseCls}-text-back">{text}</div>',"</tpl>",'<div id="{id}-bar" data-ref="bar" class="{baseCls}-bar {baseCls}-bar-{ui}" role="presentation" style="width:{percentage}%">','<tpl if="internalText">','<div class="{baseCls}-text">',"<div>{text}</div>","</div>","</tpl>","</div>"],componentLayout:"progressbar",ariaRole:"progressbar",initRenderData:function(){var a=this;return Ext.apply(Ext.util.Renderable.prototype.initRenderData.call(this),{internalText:!a.hasOwnProperty("textEl"),text:a.text||"&#160;",percentage:a.value?a.value*100:0})},onRender:function(){var a=this;Ext.util.Renderable.prototype.onRender.apply(this,arguments);if(a.textEl){a.textEl=Ext.get(a.textEl);a.updateText(a.text)}else{a.textEl=a.el.select("."+a.baseCls+"-text")}},updateValue:function(a){this.updateProgress(a,Math.round(a*100)+"%")},updateProgress:function(e,g,a){var d=this,b=d.value,c=d.getTextTpl();d.value=e||(e=0);if(g!=null){d.updateText(g)}else{if(c){d.updateText(c.apply({value:e,percent:e*100}))}}if(d.rendered&&!d.isDestroyed){if(a===true||(a!==false&&d.animate)){d.bar.stopAnimation();d.bar.animate(Ext.apply({from:{width:(b*100)+"%"},to:{width:(e*100)+"%"}},d.animate))}else{d.bar.setStyle("width",(e*100)+"%")}}d.fireEvent("update",d,e,g);return d},updateText:function(b){var a=this;a.text=b;if(a.rendered){a.textEl.setHtml(a.text)}return a},applyTextTpl:function(a){if(!a.isTemplate){a=new Ext.XTemplate(a)}return a},applyText:function(a){this.updateText(a)},getText:function(){return this.text},wait:function(c){var b=this,a;if(!b.waitTimer){a=b;c=c||{};b.updateText(c.text);b.waitTimer=Ext.TaskManager.start({run:function(d){var e=c.increment||10;d-=1;b.updateProgress(((((d+e)%e)+1)*(100/e))*0.01,null,c.animate)},interval:c.interval||1000,duration:c.duration,onStop:function(){if(c.fn){c.fn.apply(c.scope||b)}b.reset()},scope:a})}return b},isWaiting:function(){return this.waitTimer!==null},reset:function(a){var b=this;b.updateProgress(0);b.clearTimer();if(a===true){b.hide()}return b},clearTimer:function(){var a=this;if(a.waitTimer){a.waitTimer.onStop=null;Ext.TaskManager.stop(a.waitTimer);a.waitTimer=null}},onDestroy:function(){var b=this,a=b.bar;b.clearTimer();if(b.rendered){if(b.textEl.isComposite){b.textEl.clear()}Ext.destroyMembers(b,"textEl","progressBar");if(a&&b.animate){a.stopAnimation()}}Ext.Component.prototype.onDestroy.call(this)}},0,["progressbar"],["box","component","progressbar"],{box:true,component:true,progressbar:true},["widget.progressbar"],0,[Ext,"ProgressBar"],0));(Ext.cmd.derive("Ext.ProgressBarWidget",Ext.Widget,{config:{text:null,value:0,animate:false,textTpl:null},cachedConfig:{baseCls:Ext.baseCSSPrefix+"progress",textCls:Ext.baseCSSPrefix+"progress-text",ui:"default"},template:[{reference:"backgroundEl"},{reference:"barEl",children:[{reference:"textEl"}]}],defaultBindProperty:"value",updateUi:function(c,b){var a=this.getBaseCls()+"-";if(b){this.element.removeCls(a+b);this.barEl.removeCls(a+"bar-"+b)}this.element.addCls(a+c);this.barEl.addCls(a+"bar-"+c)},updateBaseCls:function(b,a){this.element.addCls(b);this.barEl.addCls(b+"-bar")},updateTextCls:function(a){this.backgroundEl.addCls(a+" "+a+"-back");this.textEl.addCls(a)},updateValue:function(d,a){var c=this,b=c.getTextTpl();if(b){c.setText(b.apply({value:d,percent:d*100}))}if(c.getAnimate()){c.barEl.stopAnimation();c.barEl.animate(Ext.apply({from:{width:(a*100)+"%"},to:{width:(d*100)+"%"}},c.animate))}else{c.barEl.setStyle("width",(d*100)+"%")}},updateText:function(b){var a=this;a.backgroundEl.setHtml(b);a.textEl.setHtml(b)},applyTextTpl:function(a){if(!a.isTemplate){a=new Ext.XTemplate(a)}return a}},0,["progressbarwidget"],["progressbarwidget","widget"],{progressbarwidget:true,widget:true},["widget.progressbarwidget"],0,[Ext,"ProgressBarWidget"],0));(Ext.cmd.derive("Ext.ShadowPool",Ext.Base,{singleton:true,markup:(function(){return Ext.String.format('<div class="{0}{1}-shadow" role="presentation"></div>',Ext.baseCSSPrefix,Ext.isIE&&!Ext.supports.CSS3BoxShadow?"ie":"css")}()),shadows:[],pull:function(){var a=this.shadows.shift();if(!a){a=Ext.get(Ext.DomHelper.insertHtml("afterBegin",document.body,this.markup));a.autoBoxAdjust=false}return a},push:function(a){this.shadows.push(a)},reset:function(){var c=[].concat(this.shadows),b,a=c.length;for(b=0;b<a;b++){c[b].destroy()}this.shadows=[]}},0,0,0,0,0,0,[Ext,"ShadowPool"],0));(Ext.cmd.derive("Ext.Shadow",Ext.Base,{localXYNames:{get:"getLocalXY",set:"setLocalXY"},constructor:function(b){var c=this,d,e,a;Ext.apply(c,b);if(!Ext.isString(c.mode)){c.mode=c.defaultMode}e=c.offset;a=Math.floor(e/2);c.opacity=50;switch(c.mode.toLowerCase()){case"drop":if(Ext.supports.CSS3BoxShadow){d={t:e,l:e,h:-e,w:-e}}else{d={t:-a,l:-a,h:-a,w:-a}}break;case"sides":if(Ext.supports.CSS3BoxShadow){d={t:e,l:0,h:-e,w:0}}else{d={t:-(1+a),l:1+a-2*e,h:-1,w:a-1}}break;case"frame":if(Ext.supports.CSS3BoxShadow){d={t:0,l:0,h:0,w:0}}else{d={t:1+a-2*e,l:1+a-2*e,h:e-a-1,w:e-a-1}}break;case"bottom":if(Ext.supports.CSS3BoxShadow){d={t:e,l:0,h:-e,w:0}}else{d={t:e,l:0,h:0,w:0}}break}c.adjusts=d},getShadowSize:function(){var b=this,d=b.el?b.offset:0,a=[d,d,d,d],c=b.mode.toLowerCase();if(b.el&&c!=="frame"){a[0]=0;if(c=="drop"){a[3]=0}}return a},offset:4,defaultMode:"drop",boxShadowProperty:(function(){var b="boxShadow",a=document.documentElement.style;if(!("boxShadow" in a)){if("WebkitBoxShadow" in a){b="WebkitBoxShadow"}else{if("MozBoxShadow" in a){b="MozBoxShadow"}}}return b}()),show:function(d){var b=this,a,c;d=Ext.get(d);a=(parseInt(d.getStyle("z-index"),10)-1)||0;c=d[b.localXYNames.get]();if(!b.el){b.el=Ext.ShadowPool.pull();if(b.fixed){b.el.dom.style.position="fixed"}else{b.el.dom.style.position=""}if(b.el.dom.nextSibling!=d.dom){b.el.insertBefore(d)}}b.el.setStyle("z-index",b.zIndex||a);if(Ext.isIE&&!Ext.supports.CSS3BoxShadow){b.el.dom.style.filter="progid:DXImageTransform.Microsoft.alpha(opacity="+b.opacity+") progid:DXImageTransform.Microsoft.Blur(pixelradius="+(b.offset)+")"}b.realign(c[0],c[1],d.dom.offsetWidth,d.dom.offsetHeight);b.el.dom.style.display="block"},isVisible:function(){return this.el?true:false},realign:function(c,n,k,g){if(!this.el){return}var b=this.adjusts,a=this.el,j=a.dom.style,d,e,h,m;a[this.localXYNames.set](c+b.l,n+b.t);d=Math.max(k+b.w,0);e=Math.max(g+b.h,0);h=d+"px";m=e+"px";if(j.width!=h||j.height!=m){j.width=h;j.height=m;if(Ext.supports.CSS3BoxShadow){j[this.boxShadowProperty]="0 0 "+(this.offset+2)+"px #888"}}},hide:function(){var a=this;if(a.el){a.el.dom.style.display="none";Ext.ShadowPool.push(a.el);delete a.el}},setZIndex:function(a){this.zIndex=a;if(this.el){this.el.setStyle("z-index",a)}},setOpacity:function(a){if(this.el){if(Ext.isIE&&!Ext.supports.CSS3BoxShadow){a=Math.floor(a*100/2)/100}this.opacity=a;this.el.setOpacity(a)}}},1,0,0,0,0,0,[Ext,"Shadow"],0));(Ext.cmd.derive("Ext.app.EventDomain",Ext.Base,{statics:{instances:{}},isEventDomain:true,isInstance:false,constructor:function(){var a=this;if(!a.isInstance){Ext.app.EventDomain.instances[a.type]=a}a.bus={};a.monitoredClasses=[]},dispatch:function(j,n,l){var m=this,k=m.bus,o=k[n],e,c,b,d,p,h,g,a;if(!o){return true}for(e in o){if(o.hasOwnProperty(e)&&m.match(j,e,m.controller)){c=o[e];for(b in c){if(c.hasOwnProperty(b)){d=c[b];if(d.controller.isActive()){p=d.list;h=p.length;for(g=0;g<h;g++){a=p[g];if(a.fire.apply(a,l)===false){return false}}}}}}}return true},listen:function(d,n){var v=this,m=v.bus,h=v.idProperty,j=v.monitoredClasses,e=j.length,l=n.getId(),u=Ext.$eventNameMap,r,k,s,p,b,c,a,q,o,t,g;for(p in d){o=d[p];if(o){if(h){p=p==="*"?p:p.substring(1)}for(t in o){b=null;c=o[t];a=n;t=u[t]||(u[t]=t.toLowerCase());q=new Ext.util.Event(n,t);if(Ext.isObject(c)){b=c;c=b.fn;a=b.scope||n;delete b.fn;delete b.scope}if(typeof c==="string"){c=a[c]}q.addListener(c,a,b);for(r=0;r<e;++r){g=j[r].hasListeners;if(g){g._incr_(t)}}k=m[t]||(m[t]={});k=k[p]||(k[p]={});s=k[l]||(k[l]={controller:n,list:[]});s.list.push(q)}}}},match:function(c,a){var b=this.idProperty;if(b){return a==="*"||c[b]===a}return false},monitor:function(c){var b=this,a=c.isInstance?c:c.prototype,d=a.doFireEvent;b.monitoredClasses.push(c);a.doFireEvent=function(h,g){var e=d.apply(this,arguments);if(e!==false&&!this.isSuspended(h)){e=b.dispatch(this,h,g)}return e}},unlisten:function(e){var o=this.bus,a=e,t=this.monitoredClasses,m=t.length,d=Ext.$eventNameMap,b,p,s,n,r,g,q,l,k,c,h;if(e.isController){a=e.getId()}for(p in o){p=d[p]||(d[p]=p.toLowerCase());if(o.hasOwnProperty(p)&&(q=o[p])){for(g in q){b=q[g];c=b[a];if(c){s=c.list;if(s){for(l=0,n=s.length;l<n;++l){r=s[l];r.clearListeners();for(k=0;k<m;++k){h=t[k].hasListeners;if(h){h._decr_(r.name)}}}delete b[a]}}}}}},destroy:function(){this.monitoredClasses=this.bus=null}},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(){var b=this,a=Ext.Component;Ext.app.EventDomain.prototype.constructor.call(this);b.monitor(Ext.Widget);if(!a.prototype.isWidget){b.monitor(a)}},dispatch:function(d,b,a){var e=d.lookupReferenceHolder(false),c;while(e){if(e.isViewController){c=e.compDomain;if(c){if(c.dispatch(d,b,a)===false){return false}}}e=e.lookupReferenceHolder()}return Ext.app.EventDomain.prototype.dispatch.apply(this,arguments)},match:function(b,a){return b.is(a)}},1,0,0,0,0,0,[Ext.app.domain,"Component"],0));(Ext.cmd.derive("Ext.app.EventBus",Ext.Base,{singleton:true,constructor:function(){var b=this,a=Ext.app.EventDomain.instances;b.callParent();b.domains=a;b.bus=a.component.bus},control:function(b,a){return this.domains.component.listen(b,a)},listen:function(d,b){var a=this.domains,c;for(c in d){if(d.hasOwnProperty(c)){a[c].listen(d[c],b)}}},unlisten:function(c){var a=Ext.app.EventDomain.instances,b;for(b in a){a[b].unlisten(c)}}},1,0,0,0,0,0,[Ext.app,"EventBus"],0));(Ext.cmd.derive("Ext.app.domain.Global",Ext.app.EventDomain,{singleton:true,type:"global",listen:function(b,a){b.scope=b.scope||a;Ext.on(b)},match:Ext.returnTrue},0,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(a){var b=this;b.mixins.observable.constructor.call(b,a);delete b.control;delete b.listen;b.eventbus=Ext.app.EventBus;b.initConfig(a)},applyListen:function(a){if(Ext.isObject(a)){a=Ext.clone(a)}return a},applyControl:function(a){if(Ext.isObject(a)){a=Ext.clone(a)}return a},updateControl:function(a){if(a){this.ensureId&&this.ensureId();this.control(a)}},updateListen:function(a){if(a){this.ensureId&&this.ensureId();this.listen(a)}},updateRoutes:function(b){if(b){var e=this,g=e.getBefore()||{},a=Ext.app.route.Router,d,c,h;for(d in b){c=b[d];if(Ext.isString(c)){c={action:c}}h=c.action;if(!c.before){c.before=g[h]}a.connect(d,c,e)}}},isActive:function(){return true},control:function(b,c,a){var d=this,e=a,g;if(Ext.isString(b)){g={};g[b]=c}else{g=b;e=c}d.eventbus.control(g,e||d)},listen:function(b,a){this.eventbus.listen(b,a||this)},destroy:function(){var a=this.eventbus;Ext.app.route.Router.disconnectAll(this);if(a){a.unlisten(this);this.eventbus=null}},redirectTo:function(b,c){if(!c){var a=Ext.util.History.getToken();if(a===b){return false}}else{Ext.app.route.Router.onStateChange(b)}Ext.util.History.add(b);return true}},1,0,0,0,0,[["observable",Ext.util.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(c){var d=Ext.app.namespaces,b,a;if(!Ext.isArray(c)){c=[c]}for(b=0,a=c.length;b<a;b++){d[c[b]]=true}},clearNamespaces:function(){Ext.app.namespaces={}},getNamespace:function(b){var d=Ext.apply({},Ext.ClassManager.paths,Ext.app.namespaces),a="",c;for(c in d){if(d.hasOwnProperty(c)&&c.length>a.length&&(c+"."===b.substring(0,c.length+1))){a=c}}return a===""?undefined:a}})}));(Ext.cmd.derive("Ext.app.domain.Store",Ext.app.EventDomain,{singleton:true,type:"store",idProperty:"storeId",constructor:function(){var a=this;Ext.app.EventDomain.prototype.constructor.call(this);a.monitor(Ext.data.AbstractStore)}},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(a){Ext.apply(this,a);this.queue=new Ext.util.MixedCollection()},queueAction:function(a,b){this.queue.add({route:a,args:b})},clearQueue:function(){this.queue.removeAll()},runQueue:function(){var a=this.queue,c=a.removeAt(0),b;if(c){b=c&&c.route;b.execute(this.token,c.args,this.onActionExecute,this)}},onActionExecute:function(a){if(a){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(b){var c=this,a;Ext.apply(c,b,{conditions:{}});a=c.url;c.paramMatchingRegex=new RegExp(/:([0-9A-Za-z\_]*)/g);c.paramsInMatchString=a.match(c.paramMatchingRegex)||[];c.matcherRegex=c.createMatcherRegex(a)},recognize:function(c){var d=this,a=d.controller,e,b;if((d.allowInactive||a.isActive())&&d.recognizes(c)){e=d.matchesFor(c);b=c.match(d.matcherRegex);b.shift();return Ext.applyIf(e,{controller:a,action:d.action,historyUrl:c,args:b})}return false},recognizes:function(a){return this.matcherRegex.test(a)},execute:function(c,h,j,d){var b=h.args||[],g=this.before,a=this.controller,e=this.createCallback(h,j,d);if(g){b.push(e);if(Ext.isString(g)){g=this.before=a[g]}if(g){g.apply(a,b)}}else{e.resume()}},matchesFor:function(c){var g={},e=this.paramsInMatchString,b=c.match(this.matcherRegex),d=0,a=e.length;b.shift();for(;d<a;d++){g[e[d].replace(":","")]=b[d]}return g},createMatcherRegex:function(a){var c=this.paramsInMatchString,j=this.conditions,d=0,g=c.length,k=Ext.util.Format.format,l=this.caseInsensitive?"i":"",b,h,e;for(;d<g;d++){b=c[d];h=j[b];e=k("{0}",h||"([%a-zA-Z0-9\\-\\_\\s,]+)");a=a.replace(new RegExp(b),e)}return new RegExp("^"+a+"$",l)},createCallback:function(a,d,b){var c=this;b=b||c;return{resume:function(){var e=c.controller,h=c.action,g;if(Ext.isString(h)){h=e[h]}a=a&&a.args?a.args:[];g=a.pop();if(g&&!Ext.isObject(g)){a.push(g)}if(h){c.action=h;h.apply(e,a)}if(d){d.call(b)}},stop:function(e){if(d){d.call(b,e)}}}}},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,c,a;b.hiddenField=null;b.ready=false;b.currentToken=null;b.mixins.observable.constructor.call(b);b.onHashChange=function(){a=b.getHash();if(a!==c){c=a;b.handleStateChange(c)}}},getHash:function(){return this.win.location.hash.substr(1)},setHash:function(b){try{this.win.location.hash=b;this.currentToken=b}catch(a){}},handleStateChange:function(a){this.currentToken=a;this.fireEvent("change",a)},startUp:function(){var a=this;a.currentToken=a.getHash();if(Ext.supports.Hashchange){Ext.Element.on(a.win,"hashchange",a.onHashChange)}else{Ext.TaskManager.start({fireIdleEvent:false,run:a.onHashChange,interval:50})}a.ready=true;a.fireEvent("ready",a)},init:function(c,a){var b=this;if(b.ready){Ext.callback(c,a,[b]);return}if(!Ext.isReady){Ext.onReady(function(){b.init(c,a)});return}b.win=b.useTopWindow?window.top:window;if(c){b.on("ready",c,a,{single:true})}b.startUp()},add:function(a,b){var c=this,d=false;if(b===false||c.getToken()!==a){c.setHash(a);d=true}return d},back:function(){var a=this.useTopWindow?window.top:window;a.history.go(-1)},forward:function(){var a=this.useTopWindow?window.top:window;a.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 a=Ext.util.History;if(!a.ready){a.init()}a.on("change",this.onStateChange,this);this.clear()},onStateChange:function(d){var l=this,c=l.application,n=l.routes,h=n.length,p=l.queueRoutes,k=d.split(l.multipleToken),o=0,b=k.length,e,g,m,j,a;for(;o<b;o++){d=k[o];a=false;if(p){g=new Ext.app.route.Queue({token:d})}for(e=0;e<h;e++){m=n[e];j=m.recognize(d);if(j){a=true;if(p){g.queueAction(m,j)}else{m.execute(d,j)}}}if(p){g.runQueue()}if(!a&&c){c.fireEvent("unmatchedroute",d)}}},connect:function(c,d,a){var b={url:c,action:d,controller:a};if(Ext.isObject(d)){Ext.merge(b,d)}this.routes.push(new Ext.app.route.Route(b))},disconnectAll:function(c){var b=this.routes,a=b.length,e=[],g,d;for(g=0;g<a;++g){d=b[g];if(d.controller!==c){e.push(d)}}this.routes=e},recognize:function(e){var b=this.routes||[],g=0,a=b.length,c,d;for(;g<a;g++){c=b[g];d=c.recognize(e);if(d){return{route:c,args:d}}}return false},draw:function(a){a.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"}},controllerRegex:/^(.*)\.controller\./,createGetter:function(a,b){return function(){return this[a](b)}},getGetterName:function(c,a){var d="get",e=c.split("."),g=e.length,b;for(b=0;b<g;b++){d+=Ext.String.capitalize(e[b])}d+=a;return d},processDependencies:function(r,s,c,d,k){if(!k||!k.length){return}var l=this,q=l.strings[d],b,p,n,a,e,g,m,h;if(!Ext.isArray(k)){k=[k]}for(e=0,g=k.length;e<g;e++){a=k[e];b=l.getFullName(a,d,c);p=b.absoluteName;n=b.shortName;s.push(p);m=l.getGetterName(n,q.upper);r[m]=h=l.createGetter(q.getter,a);if(d!=="controller"){h["Ext.app.getter"]=true}}},getFullName:function(c,e,d){var a=c,b,g;if((b=c.indexOf("@"))>0){a=c.substring(0,b);g=c.substring(b+1)+"."+a}else{if(c.indexOf(".")>0&&(Ext.ClassManager.isCreated(c)||this.hasRegisteredPrefix(c))){g=c}else{if(d){g=d+"."+e+"."+c;a=c}else{g=c}}}return{absoluteName:g,shortName:a}},hasRegisteredPrefix:function(a){var c=Ext.ClassManager,b=c.getPrefix(a);return b&&b!==a}},config:{application:null,refs:null,active:true,moduleClassName:null},onClassExtended:function(b,c,a){var d=a.onBeforeCreated;a.onBeforeCreated=function(n,h){var g=Ext.app.Controller,l=g.controllerRegex,o=[],m,e,o,k,j;k=n.prototype;m=Ext.getClassName(n);e=h.$namespace||h.namespace||Ext.app.getNamespace(m)||((j=l.exec(m))&&j[1]);if(e){k.$namespace=e}g.processDependencies(k,o,e,"model",h.models);g.processDependencies(k,o,e,"view",h.views);g.processDependencies(k,o,e,"store",h.stores);g.processDependencies(k,o,e,"controller",h.controllers);Ext.require(o,Ext.Function.pass(d,arguments,this))}},constructor:function(a){Ext.app.BaseController.prototype.constructor.apply(this,arguments);this.initAutoGetters()},normalizeRefs:function(b){var c=this,a=[];if(b){if(Ext.isObject(b)){Ext.Object.each(b,function(d,e){if(Ext.isString(e)){e={selector:e}}e.ref=d;a.push(e)})}else{if(Ext.isArray(b)){a=Ext.Array.merge(a,b)}}}b=c.refs;if(b){c.refs=null;b=c.normalizeRefs(b);if(b){a=Ext.Array.merge(a,b)}}return a},applyRefs:function(a){return this.normalizeRefs(Ext.clone(a))},updateRefs:function(a){if(a){this.ref(a)}},initAutoGetters:function(){var b=this.self.prototype,c,a;for(c in b){a=b[c];if(a&&a["Ext.app.getter"]){a.call(this)}}},doInit:function(b){var a=this;if(!a._initialized){a.init(b);a._initialized=true}},finishInit:function(g){var d=this,e=d.controllers,b,c,a;if(d._initialized&&e&&e.length){for(c=0,a=e.length;c<a;c++){b=d.getController(e[c]);b.finishInit(g)}}},init:Ext.emptyFn,onLaunch:Ext.emptyFn,activate:function(){this.setActive(true)},deactivate:function(){this.setActive(false)},isActive:function(){return this.getActive()},ref:function(a){var g=this,b=0,e=a.length,h,d,c;a=Ext.Array.from(a);g.references=g.references||[];for(;b<e;b++){h=a[b];d=h.ref;c="get"+Ext.String.capitalize(d);if(!g[c]){g[c]=Ext.Function.pass(g.getRef,[d,h],g)}g.references.push(d.toLowerCase())}},addRef:function(a){this.ref(a)},getRef:function(d,g,a){var c=this,e=c.refCache||(c.refCache={}),b=e[d];g=g||{};a=a||{};Ext.apply(g,a);if(g.forceCreate){return Ext.ComponentManager.create(g,"component")}if(!b){if(g.selector){e[d]=b=Ext.ComponentQuery.query(g.selector)[0]}if(!b&&g.autoCreate){e[d]=b=Ext.ComponentManager.create(g,"component")}if(b){b.on("beforedestroy",function(){e[d]=null})}}return b},hasRef:function(b){var a=this.references;return a&&Ext.Array.indexOf(a,b.toLowerCase())!==-1},getController:function(b){var a=this.application;if(b===this.getId()){return this}return a&&a.getController(b)},getStore:function(c){var a,b;a=(c.indexOf("@")===-1)?c:c.split("@")[0];b=Ext.StoreManager.get(a);if(!b){c=Ext.app.Controller.getFullName(c,"store",this.$namespace);if(c){b=Ext.create(c.absoluteName,{storeId:a})}}return b},getModel:function(c){var b=Ext.app.Controller.getFullName(c,"model",this.$namespace),a=Ext.ClassManager.get(b.absoluteName);if(!a){a=Ext.data.schema.Schema.lookupEntity(c)}return a},getView:function(a){var b=Ext.app.Controller.getFullName(a,"view",this.$namespace);return b&&Ext.ClassManager.get(b.absoluteName)},ensureId:function(){var a=this.getId();if(!a){this.setId(this.getModuleClassName(this.$className,"controller"))}},destroy:function(a,b){var d=this,g=d.application,e,c;if(!b&&g){g.unregister(d)}d.application=null;if(a){e=d.refCache;for(c in e){if(e.hasOwnProperty(c)){Ext.destroy(e[c])}}}Ext.app.BaseController.prototype.destroy.call(this)}},1,0,0,0,0,0,[Ext.app,"Controller"],0));(Ext.cmd.derive("Ext.panel.Bar",Ext.container.Container,{vertical:false,_verticalSides:{left:1,right:1},initComponent:function(){var b=this,a=b.vertical;b.dock=b.dock||(a?"left":"top");b.layout=Ext.apply(a?{type:"vbox",align:"middle",alignRoundingMethod:"ceil"}:{type:"hbox",align:"middle",alignRoundingMethod:"floor"},b.layout);Ext.container.Container.prototype.initComponent.call(this)},onAdded:function(b,c,a){this.initOrientation();Ext.container.Container.prototype.onAdded.apply(this,[b,c,a])},onRemoved:function(a){this.removeClsWithUI(this.uiCls);Ext.container.Container.prototype.onRemoved.apply(this,[a])},setDock:function(d){var c=this,b,a;if(d!==c.dock){Ext.suspendLayouts();c.clearOrientation();Ext.Component.prototype.setDock.apply(this,[d]);c.initOrientation();a=c.vertical;b=c.layout;b.setVertical(a);b.setAlignRoundingMethod(a?"ceil":"floor");Ext.resumeLayouts(true)}},privates:{clearOrientation:function(){this.removeClsWithUI([this.vertical?"vertical":"horizontal",this.getDockName()])},getDockName:function(){return this.dock},initOrientation:function(){var d=this,c=d.dock,b=d.ownerCt,a=d.vertical=(c?c in d._verticalSides:d.vertical);d.addClsWithUI([this.vertical?"vertical":"horizontal",d.getDockName()])}}},0,0,["box","component","container"],{box:true,component:true,container:true},0,0,[Ext.panel,"Bar"],0));(Ext.cmd.derive("Ext.panel.Title",Ext.Component,{isTitle:true,noWrap:true,textAlign:"left",iconAlign:"left",rotation:0,text:"&#160;",beforeRenderConfig:{textAlign:null,text:null,glyph:null,icon:null,iconAlign:null,iconCls:null,rotation:null},autoEl:{unselectable:"on"},childEls:["textEl","iconEl","iconWrapEl"],renderTpl:'<tpl if="iconMarkup && iconBeforeTitle">{iconMarkup}</tpl><div id="{id}-textEl" data-ref="textEl" class="{textCls} {textCls}-{ui} {itemCls}" unselectable="on"<tpl if="headerRole"> role="{headerRole}"</tpl>>{text}</div><tpl if="iconMarkup && !iconBeforeTitle">{iconMarkup}</tpl>',iconTpl:'<div id="{id}-iconWrapEl" data-ref="iconWrapEl" role="presentation" class="{iconWrapCls} {iconWrapCls}-{ui} {iconAlignCls} {itemCls}{childElCls}"<tpl if="iconWrapStyle"> style="{iconWrapStyle}"</tpl>><div id="{id}-iconEl" data-ref="iconEl" role="presentation" unselectable="on" class="{baseIconCls} {baseIconCls}-{ui} {iconCls} {glyphCls}" style="<tpl if="iconUrl">background-image:url({iconUrl});</tpl><tpl if="glyph && glyphFontFamily">font-family:{glyphFontFamily};</tpl>"><tpl if="glyph">&#{glyph};</tpl><tpl if="iconCls || iconUrl">&#160;</tpl></div></div>',_textAlignClasses:{left:Ext.baseCSSPrefix+"title-align-left",center:Ext.baseCSSPrefix+"title-align-center",right:Ext.baseCSSPrefix+"title-align-right"},_iconAlignClasses:{top:Ext.baseCSSPrefix+"title-icon-top",right:Ext.baseCSSPrefix+"title-icon-right",bottom:Ext.baseCSSPrefix+"title-icon-bottom",left:Ext.baseCSSPrefix+"title-icon-left"},_rotationClasses:{0:Ext.baseCSSPrefix+"title-rotate-none",1:Ext.baseCSSPrefix+"title-rotate-right",2:Ext.baseCSSPrefix+"title-rotate-left"},_rotationAngles:{1:90,2:270},baseCls:Ext.baseCSSPrefix+"title",_titleSuffix:"-title",_glyphCls:Ext.baseCSSPrefix+"title-glyph",_iconWrapCls:Ext.baseCSSPrefix+"title-icon-wrap",_baseIconCls:Ext.baseCSSPrefix+"title-icon",_itemCls:Ext.baseCSSPrefix+"title-item",_textCls:Ext.baseCSSPrefix+"title-text",afterComponentLayout:function(){var d=this,b=d.getRotation(),a,e,c;if(b&&!Ext.isIE8){c=d.el;a=d.lastBox;e=a.x;c.setStyle(d._getVerticalAdjustDirection(),(e+((b===1)?a.width:-a.height))+"px")}Ext.Component.prototype.afterComponentLayout.call(this)},onRender:function(){var c=this,a=c.getRotation(),b=c.el;Ext.util.Renderable.prototype.onRender.call(this);if(a){b.setVertical(c._rotationAngles[a])}if(Ext.supports.FixedTableWidthBug){b._needsTableWidthFix=true}},applyText:function(a){if(!a){a="&#160;"}return a},beforeRender:function(){var a=this;Ext.util.Renderable.prototype.beforeRender.call(this);a.addCls(a._rotationClasses[a.getRotation()]);a.addCls(a._textAlignClasses[a.getTextAlign()])},getIconMarkup:function(){return this.getTpl("iconTpl").apply(this.getIconRenderData())},getIconRenderData:function(){var g=this,c=g.getIcon(),b=g.getIconCls(),e=g.getGlyph(),h=Ext._glyphFontFamily,a=g.getIconAlign(),d;if(typeof e==="string"){d=e.split("@");e=d[0];h=d[1]}return{id:g.id,ui:g.ui,itemCls:g._itemCls,iconUrl:c,iconCls:b,iconWrapCls:g._iconWrapCls,baseIconCls:g._baseIconCls,iconAlignCls:g._iconAlignClasses[a],glyph:e,glyphCls:e?g._glyphCls:"",glyphFontFamily:h}},initRenderData:function(){var b=this,a,c;c={text:b.getText(),headerRole:b.headerRole,id:b.id,ui:b.ui,itemCls:b._itemCls,textCls:b._textCls,iconMarkup:null,iconBeforeTitle:null};if(b._hasIcon()){a=b.getIconAlign();c.iconMarkup=b.getIconMarkup();c.iconBeforeTitle=(a==="top"||a==="left")}return c},onAdded:function(c,h,b){var e=this,a=e.cls||"",g=e._titleSuffix,d=c.baseCls;e.addCls([d+g,d+g+"-"+c.ui]);Ext.Component.prototype.onAdded.apply(this,[c,h,b])},updateGlyph:function(g,c){g=g||0;var e=this,h=e._glyphCls,b,a,d;e.glyph=g;if(e.rendered){e._syncIconVisibility();b=e.iconEl;if(typeof g==="string"){d=g.split("@");g=d[0];a=d[1]||Ext._glyphFontFamily}if(!g){b.dom.innerHTML="";b.removeCls(h)}else{if(c!=g){b.dom.innerHTML="&#"+g+";";b.addCls(h)}}if(a){b.setStyle("font-family",a)}if(e._didIconStateChange(c,g)){e.updateLayout()}}},updateIcon:function(b,d){b=b||"";var c=this,a;if(c.rendered&&b!=d){c._syncIconVisibility();a=c.iconEl;a.setStyle("background-image",b?"url("+b+")":"");if(c._didIconStateChange(d,b)){c.updateLayout()}}},updateIconAlign:function(g,c){var b=this,e=b.iconWrapEl,a,e,d;if(b.iconWrapEl){a=b.el;d=b._iconAlignClasses;if(c){e.removeCls(d[c])}e.addCls(d[g]);if(g==="top"||g==="left"){a.insertFirst(e)}else{a.appendChild(e)}b.updateLayout()}},updateIconCls:function(b,c){b=b||"";var d=this,a;if(d.rendered&&c!=b){d._syncIconVisibility();a=d.iconEl;if(c){a.removeCls(c)}a.addCls(b);if(d._didIconStateChange(c,b)){d.updateLayout()}}},updateRotation:function(c,a){var e=this,b,d,g;if(e.rendered){d=e.el;g=e._rotationClasses;e.removeCls(g[a]);e.addCls(g[c]);d.setHorizontal();if(c){d.setVertical(e._rotationAngles[c])}d.setStyle({right:"",left:"",top:"",height:"",width:""});e.lastBox=null;e.updateLayout()}},updateText:function(a){if(this.rendered){this.textEl.setHtml(a)}},updateTextAlign:function(d,b){var a=this,c=a._textAlignClasses;if(a.rendered){if(b){a.removeCls(c[b])}a.addCls(c[d]);a.updateLayout()}},privates:{_getVerticalAdjustDirection:function(){return"left"},_didIconStateChange:function(a,c){var b=Ext.isEmpty(c);return Ext.isEmpty(a)?!b:b},_hasIcon:function(){return !!(this.getIcon()||this.getIconCls()||this.getGlyph())},_syncIconVisibility:function(){var e=this,d=e.el,a=e._hasIcon(),g=e.iconWrapEl,c,b;if(a&&!g){b=e.iconAlign;c=(b==="left"||b==="top");d.dom.insertAdjacentHTML(c?"afterbegin":"beforeend",e.getIconMarkup());g=e.iconWrapEl=d[c?"first":"last"]();e.iconEl=g.first()}if(g){g.setDisplayed(a)}}}},0,["title"],["box","component","title"],{box:true,component:true,title:true},["widget.title"],0,[Ext.panel,"Title"],0));(Ext.cmd.derive("Ext.panel.Tool",Ext.Component,{isTool:true,baseCls:Ext.baseCSSPrefix+"tool",disabledCls:Ext.baseCSSPrefix+"tool-disabled",toolPressedCls:Ext.baseCSSPrefix+"tool-pressed",toolOverCls:Ext.baseCSSPrefix+"tool-over",ariaRole:"button",childEls:["toolEl"],renderTpl:['<img id="{id}-toolEl" data-ref="toolEl" src="{blank}" class="{baseCls}-img {baseCls}-{type}{childElCls}" role="presentation"/>'],toolOwner:null,tooltipType:"qtip",stopEvent:true,cacheHeight:true,cacheWidth:true,initComponent:function(){var a=this;a.type=a.type||a.id;Ext.applyIf(a.renderData,{baseCls:a.baseCls,blank:Ext.BLANK_IMAGE_URL,type:a.type});a.tooltip=a.tooltip||a.qtip;Ext.Component.prototype.initComponent.call(this)},afterRender:function(){var a=this,b;Ext.util.Renderable.prototype.afterRender.apply(this,arguments);a.el.on({click:a.onClick,mousedown:a.onMouseDown,mouseover:a.onMouseOver,mouseout:a.onMouseOut,scope:a});b=a.tooltip;if(b){a.setTooltip(b)}},tipAttrs:{qtip:"data-qtip"},setTooltip:function(h,d){var e=this,b=e.tooltip,g=e.tooltipType,j=e.id,c=e.el,a;if(b&&Ext.quickTipsActive&&Ext.isObject(b)){Ext.tip.QuickTipManager.unregister(j)}e.tooltip=h;if(d){e.tooltipType=d}if(h){if(Ext.quickTipsActive&&Ext.isObject(h)){Ext.tip.QuickTipManager.register(Ext.apply({target:j},h))}else{if(c){if(d&&g&&d!==g){a=e.tipAttrs[g]||"title";c.dom.removeAttribute(a)}a=e.tipAttrs[d||g]||"title";c.dom.setAttribute(a,h)}}}},setType:function(a){var b=this,c=b.type;b.type=a;if(b.rendered){if(c){b.toolEl.removeCls(b.baseCls+"-"+c)}b.toolEl.addCls(b.baseCls+"-"+a)}else{b.renderData.type=a}return b},onDestroy:function(){var a=this,b=a.keyMap;a.setTooltip(null);if(b){b.destroy();a.keyMap=null}delete a.toolOwner;Ext.Component.prototype.onDestroy.call(this)},privates:{getFocusEl:function(){return this.el},onClick:function(c,b){var a=this;if(a.disabled){return false}a.el.removeCls(a.toolPressedCls+" "+a.toolOverCls);if(a.stopEvent!==false){c.stopEvent()}if(a.handler){Ext.callback(a.handler,a.scope,[c,b,a.ownerCt,a],0,a)}else{if(a.callback){Ext.callback(a.callback,a.scope,[a.toolOwner||a.ownerCt,a,c],0,a)}}a.fireEvent("click",a,c,a.toolOwner||a.ownerCt);return true},onMouseDown:function(){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,["tool"],["box","component","tool"],{box:true,component:true,tool:true},["widget.tool"],0,[Ext.panel,"Tool"],0));(Ext.cmd.derive("Ext.panel.Header",Ext.panel.Bar,{isHeader:true,defaultType:"tool",indicateDrag:false,weight:-1,shrinkWrap:3,iconAlign:"left",titleAlign:"left",titlePosition:0,titleRotation:"default",beforeRenderConfig:{glyph:null,icon:null,iconCls:null,iconAlign:null,title:{$value:{ariaRole:"presentation",focusable:false,xtype:"title",flex:1},merge:function(b,a){if(typeof b=="string"){b={text:b}}return Ext.merge(a?Ext.Object.chain(a):{},b)}},titleAlign:null,titlePosition:null,titleRotation:null},headerCls:Ext.baseCSSPrefix+"header",initComponent:function(){var d=this,c=d.items,b=d.itemPosition,a=[d.headerCls];d.tools=d.tools||[];d.items=c=(c?c.slice():[]);if(b!==undefined){d._userItems=c.slice();d.items=c=[]}d.indicateDragCls=d.headerCls+"-draggable";if(d.indicateDrag){a.push(d.indicateDragCls)}d.addCls(a);d.syncNoBorderCls();Ext.Array.push(c,d.tools);d.tools.length=0;Ext.panel.Bar.prototype.initComponent.call(this);d.on({dblclick:d.onDblClick,click:d.onClick,element:"el",scope:d})},addTool:function(a){this.add(Ext.ComponentManager.create(a,"tool"))},afterLayout:function(){var b=this,e,a,c,d;if(b.vertical){a=b.frameTR;if(a){e=b.frameBR;c=b.frameTL;d=(b.getWidth()-a.getPadding("r")-((c)?c.getPadding("l"):b.el.getBorderWidth("l")))+"px";e.setStyle("background-position-x",d);a.setStyle("background-position-x",d)}}Ext.container.Container.prototype.afterLayout.call(this)},applyTitle:function(e,c){var d=this,a,b;e=e||"";if(typeof e==="string"){e={text:e}}if(c){Ext.suspendLayouts();c.setConfig(e);Ext.resumeLayouts(true);e=c}else{e.ui=d.ui;e.headerRole=d.headerRole;b=("rotation" in e);e=new Ext.panel.Title(e);if(!b&&d.vertical&&d.titleRotation==="default"){e.rotation=1}}return e},applyTitlePosition:function(b){var a=this.items.getCount();if(this._titleInItems){--a}return Math.max(Math.min(b,a),0)},beforeLayout:function(){Ext.Component.prototype.beforeLayout.call(this);this.syncBeforeAfterTitleClasses()},beforeRender:function(){var b=this,a=b.itemPosition;b.protoEl.unselectable();Ext.container.Container.prototype.beforeRender.call(this);if(a!==undefined){b.insert(a,b._userItems)}},getTools:function(){return this.tools.slice()},onAdd:function(b,a){var c=this.tools;Ext.container.Container.prototype.onAdd.apply(this,[b,a]);if(b.isTool){c.push(b);c[b.type]=b}},onAdded:function(b,c,a){this.syncNoBorderCls();Ext.panel.Bar.prototype.onAdded.apply(this,[b,c,a])},onRemoved:function(b,c,a){this.syncNoBorderCls();Ext.panel.Bar.prototype.onRemoved.apply(this,[b,c,a])},setDock:function(c){var b=this,e=b.getTitle(),a=b.getTitleRotation(),d=e.getRotation();Ext.suspendLayouts();Ext.panel.Bar.prototype.setDock.apply(this,[c]);if(a==="default"){a=(b.vertical?1:0);if(a!==d){e.setRotation(a)}if(b.rendered){b.resetItemMargins()}}Ext.resumeLayouts(true)},updateGlyph:function(a){this.getTitle().setGlyph(a)},updateIcon:function(a){this.getTitle().setIcon(a)},updateIconAlign:function(b,a){this.getTitle().setIconAlign(b)},updateIconCls:function(a){this.getTitle().setIconCls(a)},updateTitle:function(b,a){if(!a){this.insert(this.getTitlePosition(),b);this._titleInItems=true}this.titleCmp=b},updateTitleAlign:function(b,a){this.getTitle().setTextAlign(b)},updateTitlePosition:function(a){this.insert(a,this.getTitle())},updateTitleRotation:function(a){if(a==="default"){a=(this.vertical?1:0)}this.getTitle().setRotation(a)},privates:{fireClickEvent:function(a,c){var b="."+Ext.panel.Tool.prototype.baseCls;if(!c.getTarget(b)){this.fireEvent(a,this,c)}},getFocusEl:function(){return this.el},getFramingInfoCls:function(){var c=this,b=c.callParent(),a=c.ownerCt;if(!c.expanding&&a&&(a.collapsed||c.isCollapsedExpander)){b+="-"+a.collapsedCls}return b+"-"+c.dock},onClick:function(a){this.fireClickEvent("click",a)},onDblClick:function(a){this.fireClickEvent("dblclick",a)},syncBeforeAfterTitleClasses:function(c){var k=this,j=k.items,g=j.items,b=k.getTitlePosition(),a=g.length,h=j.generation,l=k.syncBeforeAfterGen,n,e,d,m;if(!c&&(l===h)){return}k.syncBeforeAfterGen=h;for(d=0;d<a;++d){m=g[d];n=m.afterTitleCls||(m.afterTitleCls=m.baseCls+"-after-title");e=m.beforeTitleCls||(m.beforeTitleCls=m.baseCls+"-before-title");if(!k.title||d<b){if(l){m.removeCls(n)}m.addCls(e)}else{if(d>b){if(l){m.removeCls(e)}m.addCls(n)}}}},syncNoBorderCls:function(){var b=this,a=this.ownerCt,c=b.headerCls+"-noborder";if(a?(a.border===false&&!a.frame):b.border===false){b.addCls(c)}else{b.removeCls(c)}}}},0,["header"],["box","component","container","header"],{box:true,component:true,container:true,header:true},["widget.header"],0,[Ext.panel,"Header"],0));(Ext.cmd.derive("Ext.toolbar.Fill",Ext.Component,{alternateClassName:"Ext.Toolbar.Fill",ariaRole:"presentation",isFill:true,flex:1},0,["tbfill"],["box","component","tbfill"],{box:true,component:true,tbfill:true},["widget.tbfill"],0,[Ext.toolbar,"Fill",Ext.Toolbar,"Fill"],0));(Ext.cmd.derive("Ext.layout.container.boxOverflow.None",Ext.Base,{alternateClassName:"Ext.layout.boxOverflow.None",factoryConfig:{defaultType:"none"},isBoxOverflowHandler:true,$configPrefixed:false,$configStrict:false,constructor:function(a){this.initConfig(a)},handleOverflow:Ext.emptyFn,clearOverflow:Ext.emptyFn,beginLayout:Ext.emptyFn,beginLayoutCycle:Ext.emptyFn,calculate:function(b){var a=this,c=b.state.boxPlan,d;if(c&&c.tooNarrow){d=a.handleOverflow(b);if(d){if(d.reservedSpace){a.layout.publishInnerCtSize(b,d.reservedSpace)}}}else{a.clearOverflow()}},completeLayout:Ext.emptyFn,finishedLayout:function(d){var c=this,a=c.layout.owner,b,e;if(a.hasListeners.overflowchange){b=a.query(">[hidden]");e=b.length;if(e!==c.lastHiddenCount){a.fireEvent("overflowchange",c.lastHiddenCount,e,b);c.lastHiddenCount=e}}},onRemove:Ext.emptyFn,getItem:function(a){return this.layout.owner.getComponent(a)},getOwnerType:function(a){var b;if(a.isToolbar){b="toolbar"}else{if(a.isTabBar){b="tab-bar"}else{if(a.isMenu){b="menu"}else{if(a.isBreadcrumb){b="breadcrumb"}else{b=a.getXType()}}}}return b},getPrefixConfig:Ext.emptyFn,getSuffixConfig:Ext.emptyFn,getOverflowCls:function(){return""},setVertical:function(){var b=this,a=b.layout,c=a.innerCt;c.removeCls(b.getOverflowCls(a.oppositeDirection));c.addCls(b.getOverflowCls(a.direction))}},1,0,0,0,["box.overflow.None","box.overflow.none"],[[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable]],[Ext.layout.container.boxOverflow,"None",Ext.layout.boxOverflow,"None"],0));(Ext.cmd.derive("Ext.toolbar.Item",Ext.Component,{alternateClassName:"Ext.Toolbar.Item",enable:Ext.emptyFn,disable:Ext.emptyFn,focus:Ext.emptyFn},0,["tbitem"],["box","component","tbitem"],{box:true,component:true,tbitem:true},["widget.tbitem"],0,[Ext.toolbar,"Item",Ext.Toolbar,"Item"],0));(Ext.cmd.derive("Ext.toolbar.Separator",Ext.toolbar.Item,{alternateClassName:"Ext.Toolbar.Separator",baseCls:Ext.baseCSSPrefix+"toolbar-separator",focusable:false,ariaRole:"separator"},0,["tbseparator"],["box","component","tbitem","tbseparator"],{box:true,component:true,tbitem:true,tbseparator:true},["widget.tbseparator"],0,[Ext.toolbar,"Separator",Ext.Toolbar,"Separator"],0));(Ext.cmd.derive("Ext.dom.ButtonElement",Ext.dom.Element,{setSize:function(d,a,b){var e=this,c=e.component;Ext.dom.Element.prototype.setSize.apply(this,[d,a,b]);c.btnWrap.setStyle("table-layout",(!d||d==="auto")?"":"fixed");c.btnEl.setStyle("height",(!a||a==="auto")?"":"auto");return e},setStyle:function(g,e){var d=this,b=d.component,c,a;Ext.dom.Element.prototype.setStyle.apply(this,[g,e]);if(g){if(g==="width"||(typeof g!=="string"&&"width" in g)){c=e||g.width;b.btnWrap.setStyle("table-layout",(!c||c==="auto")?"":"fixed")}if(g==="height"||(typeof g!=="string"&&"height" in g)){a=e||g.height;b.btnEl.setStyle("height",(!a||a==="auto")?"":"auto")}}return d},setHeight:function(a,b){Ext.dom.Element.prototype.setHeight.apply(this,[a,b]);this.component.btnEl.setStyle("height",(!a||a==="auto")?"":"auto");return this},setWidth:function(b,a){Ext.dom.Element.prototype.setWidth.apply(this,[b,a]);this.component.btnWrap.setStyle("table-layout",(!b||b==="auto")?"":"fixed");return this}},0,0,0,0,0,0,[Ext.dom,"ButtonElement"],0));(Ext.cmd.derive("Ext.button.Manager",Ext.Base,{singleton:true,alternateClassName:"Ext.ButtonToggleManager",groups:{},pressedButton:null,buttonSelector:"."+Ext.baseCSSPrefix+"btn",init:function(){var a=this;if(!a.initialized){Ext.getDoc().on({keydown:a.onDocumentKeyDown,mouseup:a.onDocumentMouseUp,scope:a});a.initialized=true}},onDocumentKeyDown:function(c){var a=c.getKey(),b;if(a===c.SPACE||a===c.ENTER){b=c.getTarget(this.buttonSelector);if(b){Ext.getCmp(b.id).onClick(c)}}},onButtonMousedown:function(a,c){var b=this.pressedButton;if(b){b.onMouseUp(c)}this.pressedButton=a},onDocumentMouseUp:function(b){var a=this.pressedButton;if(a){a.onMouseUp(b);this.pressedButton=null}},toggleGroup:function(b,e){if(e){var d=this.groups[b.toggleGroup],c=d.length,a;for(a=0;a<c;a++){if(d[a]!==b){d[a].toggle(false)}}}},register:function(b){var c=this,a=this.groups,d=a[b.toggleGroup];c.init();if(!b.toggleGroup){return}if(!d){d=a[b.toggleGroup]=[]}d.push(b);b.on("toggle",c.toggleGroup,c)},unregister:function(a){if(!a.toggleGroup){return}var b=this,c=b.groups[a.toggleGroup];if(c){Ext.Array.remove(c,a);a.un("toggle",b.toggleGroup,b)}},getPressed:function(d){var c=this.groups[d],b=0,a;if(c){for(a=c.length;b<a;b++){if(c[b].pressed===true){return c[b]}}}return null}},0,0,0,0,0,0,[Ext.button,"Manager",Ext,"ButtonToggleManager"],0));(Ext.cmd.derive("Ext.menu.Manager",Ext.Base,{singleton:true,alternateClassName:"Ext.menu.MenuMgr",menuSelector:"."+Ext.baseCSSPrefix+"menu",menus:{},groups:{},attached:false,lastShow:new Date(),init:function(){var a=this;a.active=new Ext.util.MixedCollection();Ext.getDoc().addKeyListener(27,function(){if(a.active.length>0){a.hideAll()}},a)},hideAll:function(){var c=this.active,b,a,d;if(c&&c.length>0){b=Ext.Array.slice(c.items);d=b.length;for(a=0;a<d;a++){b[a].hide()}return true}return false},onHide:function(a){var b=this,c=b.active;c.remove(a);if(c.length<1){Ext.un("mousedown",b.onMouseDown,b);b.attached=false}},onShow:function(a){var c=this,d=c.active,b=c.attached;c.lastShow=new Date();d.add(a);if(!b){Ext.on("mousedown",c.onMouseDown,c,{buffer:Ext.isIE9m?10:undefined});c.attached=true}a.toFront()},onBeforeHide:function(a){if(a.activeChild){a.activeChild.hide()}if(a.autoHideTimer){clearTimeout(a.autoHideTimer);delete a.autoHideTimer}},onBeforeShow:function(a){var c=this.active,b=a.parentMenu;c.remove(a);if(!b&&!a.allowOtherMenus){this.hideAll()}else{if(b&&b.activeChild&&a!=b.activeChild){b.activeChild.hide()}}},onMouseDown:function(h){var d=this,g=d.active,b=g.length,a=d.lastShow,c;if(Ext.Date.getElapsed(a)>50&&b){if(Ext.isIE9m&&!Ext.getDoc().contains(h.target)){return}else{for(c=0;c<b;c++){if(g.items[c].owns(h.target)){return}}}d.hideAll()}},register:function(b){var a=this;if(!a.active){a.init()}if(b.floating){a.menus[b.id]=b;b.on({beforehide:a.onBeforeHide,hide:a.onHide,beforeshow:a.onBeforeShow,show:a.onShow,scope:a})}},get:function(b){var a=this.menus;if(typeof b=="string"){if(!a){return null}return a[b]}else{if(b.isMenu){return b}else{if(Ext.isArray(b)){return new Ext.menu.Menu({items:b})}else{return Ext.ComponentManager.create(b,"menu")}}}},unregister:function(d){var a=this,b=a.menus,c=a.active;delete b[d.id];c.remove(d);d.un({beforehide:a.onBeforeHide,hide:a.onHide,beforeshow:a.onBeforeShow,show:a.onShow,scope:a})},registerCheckable:function(c){var a=this.groups,b=c.group;if(b){if(!a[b]){a[b]=[]}a[b].push(c)}},unregisterCheckable:function(c){var a=this.groups,b=c.group;if(b){Ext.Array.remove(a[b],c)}},onCheckChange:function(d,g){var a=this.groups,c=d.group,b=0,j,e,h;if(c&&g){j=a[c];e=j.length;for(;b<e;b++){h=j[b];if(h!=d){h.setChecked(false)}}}}},0,0,0,0,0,0,[Ext.menu,"Manager",Ext.menu,"MenuMgr"],0));(Ext.cmd.derive("Ext.util.ClickRepeater",Ext.util.Observable,{constructor:function(b,a){var c=this;c.el=Ext.get(b);c.el.unselectable();Ext.apply(c,a);Ext.util.Observable.prototype.constructor.call(this);if(!c.disabled){c.disabled=true;c.enable()}if(c.handler){c.on("click",c.handler,c.scope||c)}},interval:20,delay:250,preventDefault:true,stopDefault:false,timer:0,enable:function(){if(this.disabled){this.el.on("mousedown",this.handleMouseDown,this);if(Ext.isIE8){this.el.on("dblclick",this.handleDblClick,this)}if(this.preventDefault||this.stopDefault){this.el.on("click",this.eventOptions,this)}}this.disabled=false},disable:function(a){if(a||!this.disabled){clearTimeout(this.timer);if(this.pressedCls){this.el.removeCls(this.pressedCls)}Ext.getDoc().un("mouseup",this.handleMouseUp,this);this.el.clearListeners()}this.disabled=true},setDisabled:function(a){this[a?"disable":"enable"]()},eventOptions:function(a){if(this.preventDefault){a.preventDefault()}if(this.stopDefault){a.stopEvent()}},destroy:function(){this.disable(true);this.clearListeners()},handleDblClick:function(a){clearTimeout(this.timer);this.el.blur();this.fireEvent("mousedown",this,a);this.fireEvent("click",this,a)},handleMouseDown:function(a){clearTimeout(this.timer);this.el.blur();if(this.pressedCls){this.el.addCls(this.pressedCls)}this.mousedownTime=new Date();Ext.getDoc().on("mouseup",this.handleMouseUp,this);this.el.on("mouseout",this.handleMouseOut,this);this.fireEvent("mousedown",this,a);this.fireEvent("click",this,a);if(this.accelerate){this.delay=400}this.timer=Ext.defer(this.click,this.delay||this.interval,this,[a])},click:function(a){this.fireEvent("click",this,a);this.timer=Ext.defer(this.click,this.accelerate?this.easeOutExpo(Ext.Date.getElapsed(this.mousedownTime),400,-390,12000):this.interval,this,[a])},easeOutExpo:function(e,a,h,g){return(e==g)?a+h:h*(-Math.pow(2,-10*e/g)+1)+a},handleMouseOut:function(){clearTimeout(this.timer);if(this.pressedCls){this.el.removeCls(this.pressedCls)}this.el.on("mouseover",this.handleMouseReturn,this)},handleMouseReturn:function(){this.el.un("mouseover",this.handleMouseReturn,this);if(this.pressedCls){this.el.addCls(this.pressedCls)}this.click()},handleMouseUp:function(a){clearTimeout(this.timer);this.el.un("mouseover",this.handleMouseReturn,this);this.el.un("mouseout",this.handleMouseOut,this);Ext.getDoc().un("mouseup",this.handleMouseUp,this);if(this.pressedCls){this.el.removeCls(this.pressedCls)}this.fireEvent("mouseup",this,a)}},1,0,0,0,0,0,[Ext.util,"ClickRepeater"],0));(Ext.cmd.derive("Ext.button.Button",Ext.Component,{alternateClassName:"Ext.Button",config:{iconAlign:"left",text:null,textAlign:"center",arrowVisible:true},isButton:true,_syncFrameHeight:true,liquidLayout:true,hidden:false,disabled:false,pressed:false,tabIndex:0,enableToggle:false,menuAlign:"tl-bl?",showEmptyMenu:false,clickEvent:"click",preventDefault:true,handleMouseEvents:true,tooltipType:"qtip",baseCls:Ext.baseCSSPrefix+"btn",hrefTarget:"_blank",destroyMenu:true,ariaRole:"button",defaultBindProperty:"text",childEls:["btnEl","btnWrap","btnInnerEl","btnIconEl"],publishes:{pressed:1},menuClickBuffer:250,focusCls:"focus",_btnWrapCls:Ext.baseCSSPrefix+"btn-wrap",_btnCls:Ext.baseCSSPrefix+"btn-button",_baseIconCls:Ext.baseCSSPrefix+"btn-icon-el",_glyphCls:Ext.baseCSSPrefix+"btn-glyph",_innerCls:Ext.baseCSSPrefix+"btn-inner",_textCls:Ext.baseCSSPrefix+"btn-text",_noTextCls:Ext.baseCSSPrefix+"btn-no-text",_hasIconCls:Ext.baseCSSPrefix+"btn-icon",_pressedCls:Ext.baseCSSPrefix+"btn-pressed",overCls:Ext.baseCSSPrefix+"btn-over",_disabledCls:Ext.baseCSSPrefix+"btn-disabled",_menuActiveCls:Ext.baseCSSPrefix+"btn-menu-active",_operaArrowCls:Ext.baseCSSPrefix+"opera12m-btn-arrow",renderTpl:'<span id="{id}-btnWrap" data-ref="btnWrap" role="presentation" unselectable="on" style="{btnWrapStyle}" class="{btnWrapCls} {btnWrapCls}-{ui} {splitCls}{childElCls}"><span id="{id}-btnEl" data-ref="btnEl" role="presentation" unselectable="on" style="{btnElStyle}" class="{btnCls} {btnCls}-{ui} {textCls} {noTextCls} {hasIconCls} {iconAlignCls} {textAlignCls} {btnElAutoHeightCls}{childElCls}"><tpl if="iconBeforeText">{[values.$comp.renderIcon(values)]}</tpl><span id="{id}-btnInnerEl" data-ref="btnInnerEl" role="presentation" unselectable="on" class="{innerCls} {innerCls}-{ui}{childElCls}">{text}</span><tpl if="!iconBeforeText">{[values.$comp.renderIcon(values)]}</tpl></span></span>{[values.$comp.getAfterMarkup ? values.$comp.getAfterMarkup(values) : ""]}<tpl if="closable"><span id="{id}-closeEl" data-ref="closeEl" role="presentation" class="{baseCls}-close-btn"<tpl if="closeText"> title="{closeText}" aria-label="{closeText}"</tpl>></span></tpl>',iconTpl:'<span id="{id}-btnIconEl" data-ref="btnIconEl" role="presentation" unselectable="on" class="{baseIconCls} {baseIconCls}-{ui} {iconCls} {glyphCls}{childElCls}" style="<tpl if="iconUrl">background-image:url({iconUrl});</tpl><tpl if="glyph && glyphFontFamily">font-family:{glyphFontFamily};</tpl>"><tpl if="glyph">&#{glyph};</tpl><tpl if="iconCls || iconUrl">&#160;</tpl></span>',scale:"small",allowedScales:["small","medium","large"],arrowAlign:"right",arrowCls:"arrow",maskOnDisable:false,shrinkWrap:3,frame:true,autoEl:{tag:"a",hidefocus:"on",unselectable:"on"},hasFrameTable:function(){return this.href&&this.frameTable},frameTableListener:function(){if(!this.disabled){this.doNavigate()}},doNavigate:function(){if(this.hrefTarget==="_blank"){window.open(this.getHref(),this.hrefTarget)}else{location.href=this.getHref()}},_triggerRegion:{},initComponent:function(){var a=this;a.addCls(Ext.baseCSSPrefix+"unselectable");if(Ext.isOpera12m&&(a.split||a.menu)&&a.getArrowVisible()){a.addCls(a._operaArrowCls+"-"+a.arrowAlign)}Ext.Component.prototype.initComponent.apply(this,arguments);if(a.menu){a.split=true;a.setMenu(a.menu,false)}if(a.url){a.href=a.url}if(a.href&&!a.hasOwnProperty("preventDefault")){a.preventDefault=false}if(Ext.isString(a.toggleGroup)&&a.toggleGroup!==""){a.enableToggle=true}if(a.html&&!a.text){a.text=a.html;delete a.html}},getElConfig:function(){var c=this,b=Ext.util.Renderable.prototype.getElConfig.call(this),a=c.getHref(),d=c.hrefTarget;if(b.tag==="a"){if(!c.disabled){b.tabIndex=c.tabIndex}if(a){b.href=(c.disabled&&Ext.os.is.ios)?null:a;if(d){b.target=d}}}return b},beforeRender:function(){Ext.util.Renderable.prototype.beforeRender.call(this);if(this.pressed){this.addCls(this._pressedCls)}},initRenderData:function(){return Ext.apply(Ext.util.Renderable.prototype.initRenderData.call(this),this.getTemplateArgs())},getMenu:function(){return this.menu||null},setMenu:function(d,c){var b=this,a=b.menu;if(a&&c!==false&&b.destroyMenu){a.destroy()}if(a){delete a.ownerButton}if(d){d=Ext.menu.Manager.get(d);d.ownerButton=b;b.mon(d,{scope:b,show:b.onMenuShow,hide:b.onMenuHide});if(!a&&b.getArrowVisible()){b.split=true;if(b.rendered){b._addSplitCls();b.updateLayout()}}b.menu=d}else{if(b.rendered){b._removeSplitCls();b.updateLayout()}b.split=false;b.menu=null}},onRender:function(){var c=this,d,a,b;c.doc=Ext.getDoc();Ext.util.Renderable.prototype.onRender.apply(this,arguments);a=c.el;if(c.tooltip){c.setTooltip(c.tooltip,true)}if(c.handleMouseEvents){b={scope:c,mouseover:c.onMouseOver,mouseout:c.onMouseOut,mousedown:c.onMouseDown};if(c.split){b.mousemove=c.onMouseMove}}else{b={scope:c}}if(Ext.supports.Touch){b.touchstart=c.onTouchStart}if(c.menu){c.keyMap=new Ext.util.KeyMap({target:c.el,key:Ext.event.Event.prototype.DOWN,handler:c.onDownKey,scope:c})}if(c.repeat){c.mon(new Ext.util.ClickRepeater(a,Ext.isObject(c.repeat)?c.repeat:{}),"click",c.onRepeatClick,c)}else{if(b[c.clickEvent]){d=true}else{b[c.clickEvent]=c.onClick}}c.mon(a,b);if(c.hasFrameTable()){c.mon(c.frameTable,"click",c.frameTableListener,c)}if(d){c.mon(a,c.clickEvent,c.onClick,c)}Ext.button.Manager.register(c)},getTemplateArgs:function(){var j=this,c=j._btnCls,e=j._baseIconCls,a=j.getIconAlign(),k=j.glyph,h=Ext._glyphFontFamily,l=j.text,d=j._hasIcon(),g=j._hasIconCls,b;if(typeof k==="string"){b=k.split("@");k=b[0];h=b[1]}return{innerCls:j._innerCls,splitCls:j.getArrowVisible()?j.getSplitCls():"",iconUrl:j.icon,iconCls:j.iconCls,glyph:k,glyphCls:k?j._glyphCls:"",glyphFontFamily:h,text:l||"&#160;",closeText:j.closeText,textCls:l?j._textCls:"",noTextCls:l?"":j._noTextCls,hasIconCls:d?g:"",btnWrapCls:j._btnWrapCls,btnWrapStyle:j.width?"table-layout:fixed;":"",btnElStyle:j.height?"height:auto;":"",btnCls:c,baseIconCls:e,iconBeforeText:a==="left"||a==="top",iconAlignCls:d?(g+"-"+a):"",textAlignCls:c+"-"+j.getTextAlign()}},renderIcon:function(a){return this.getTpl("iconTpl").apply(a)},setHref:function(a){var b=this;b.href=a;b.el.dom.href=(b.disabled&&Ext.os.is.ios)?null:b.getHref()},getHref:function(){var b=this,a=b.href;return a?Ext.urlAppend(a,Ext.Object.toQueryString(Ext.apply({},b.params,b.baseParams))):false},setParams:function(b){var a=this;a.params=b;a.el.dom.href=(a.disabled&&Ext.os.is.ios)?null:a.getHref()},getSplitCls:function(){var a=this;return a.split?(a.baseCls+"-"+a.arrowCls)+" "+(a.baseCls+"-"+a.arrowCls+"-"+a.arrowAlign):""},setIcon:function(b){b=b||"";var c=this,a=c.btnIconEl,d=c.icon||"";c.icon=b;if(b!=d){if(a){a.setStyle("background-image",b?"url("+b+")":"");c._syncHasIconCls();if(c.didIconStateChange(d,b)){c.updateLayout()}}c.fireEvent("iconchange",c,d,b)}return c},setIconCls:function(b){b=b||"";var d=this,a=d.btnIconEl,c=d.iconCls||"";d.iconCls=b;if(c!=b){if(a){a.removeCls(c);a.addCls(b);d._syncHasIconCls();if(d.didIconStateChange(c,b)){d.updateLayout()}}d.fireEvent("iconchange",d,c,b)}return d},setGlyph:function(g){g=g||0;var e=this,b=e.btnIconEl,c=e.glyph,h=e._glyphCls,a,d;e.glyph=g;if(b){if(typeof g==="string"){d=g.split("@");g=d[0];a=d[1]||Ext._glyphFontFamily}if(!g){b.dom.innerHTML="";b.removeCls(h)}else{if(c!=g){b.dom.innerHTML="&#"+g+";";b.addCls(h)}}if(a){b.setStyle("font-family",a)}e._syncHasIconCls();if(e.didIconStateChange(c,g)){e.updateLayout()}}e.fireEvent("glyphchange",e,e.glyph,c);return e},setTooltip:function(c,a){var b=this;if(b.rendered){if(!a||!c){b.clearTip()}if(c){if(Ext.quickTipsActive&&Ext.isObject(c)){Ext.tip.QuickTipManager.register(Ext.apply({target:b.el.id},c));b.tooltip=c}else{b.el.dom.setAttribute(b.getTipAttr(),c)}}}else{b.tooltip=c}return b},updateIconAlign:function(g,d){var c=this,b,a,e;if(c.rendered){b=c.btnEl;a=c.btnIconEl;e=c._hasIconCls;if(d){b.removeCls(e+"-"+d)}b.addCls(e+"-"+g);if(g==="top"||g==="left"){b.insertFirst(a)}else{b.appendChild(a)}c.updateLayout()}},updateTextAlign:function(e,d){var c=this,b=c.btnEl,a=c._btnCls;if(c.rendered){b.removeCls(a+"-"+d);b.addCls(a+"-"+e)}},getTipAttr:function(){return this.tooltipType=="qtip"?"data-qtip":"title"},getRefItems:function(a){var c=this.menu,b;if(c){b=c.getRefItems(a);b.unshift(c)}return b||[]},clearTip:function(){var b=this,a=b.el;if(Ext.quickTipsActive&&Ext.isObject(b.tooltip)){Ext.tip.QuickTipManager.unregister(a)}else{a.dom.removeAttribute(b.getTipAttr())}},beforeDestroy:function(){var a=this;if(a.rendered){a.clearTip()}if(a.menu&&a.destroyMenu){a.menu.destroy()}Ext.destroy(a.repeater);Ext.Component.prototype.beforeDestroy.call(this)},onDestroy:function(){var a=this;if(a.rendered){a.doc.un("mouseover",a.monitorMouseOver,a);delete a.doc;Ext.destroy(a.keyMap);delete a.keyMap}Ext.button.Manager.unregister(a);Ext.Component.prototype.onDestroy.call(this)},setHandler:function(b,a){this.handler=b;if(arguments.length>1){this.scope=a}return this},applyText:function(d){d=d==null?"":String(d);var c=this,e=c.btnInnerEl,b=c.btnEl,a=c.text||"";if(d!=a){c.text=d;if(c.rendered){e.setHtml(d||"&#160;");b[d?"addCls":"removeCls"](c._textCls);b[d?"removeCls":"addCls"](c._noTextCls);c.updateLayout()}c.fireEvent("textchange",c,a,d)}},didIconStateChange:function(a,c){var b=Ext.isEmpty(c);return Ext.isEmpty(a)?!b:b},setPressed:function(a){return this.toggle(a!==false)},toggle:function(c,a){var b=this;c=c===undefined?!b.pressed:!!c;if(c!==b.pressed){b[c?"addCls":"removeCls"](b._pressedCls);b.pressed=c;if(!a){b.fireEvent("toggle",b,c);Ext.callback(b.toggleHandler,b.scope,[b,c],0,b);if(b.reference&&b.publishState){b.publishState("pressed",c)}}}return b},maybeShowMenu:function(){var a=this;if(a.menu&&!a.hasVisibleMenu()&&!a.ignoreNextClick){a.showMenu(true)}},showMenu:function(b){var a=this,c=a.menu;if(a.rendered){if(a.tooltip&&Ext.quickTipsActive&&a.getTipAttr()!="title"){Ext.tip.QuickTipManager.getQuickTip().cancelShow(a.el)}if(c.isVisible()){c.hide()}if(!b||a.showEmptyMenu||c.items.getCount()>0){c.showBy(a.el,a.menuAlign)}}return a},hideMenu:function(){if(this.hasVisibleMenu()){this.menu.hide()}return this},hasVisibleMenu:function(){var a=this.menu;return a&&a.rendered&&a.isVisible()},onRepeatClick:function(a,b){this.onClick(b)},onTouchStart:function(a){this.doPreventDefault(a)},onClick:function(b){var a=this;a.doPreventDefault(b);if(b.type!=="keydown"&&b.button){return}if(!a.disabled){a.doToggle();a.maybeShowMenu();a.fireHandler(b)}},doPreventDefault:function(a){if(a&&(this.preventDefault||(this.disabled&&this.getHref()))){a.preventDefault()}},fireHandler:function(b){var a=this;if(a.fireEvent("click",a,b)!==false){Ext.callback(a.handler,a.scope,[a,b],0,a)}},doToggle:function(){var a=this;if(a.enableToggle&&(a.allowDepress!==false||!a.pressed)){a.toggle()}},onMouseOver:function(b){var a=this;if(!a.disabled&&!b.within(a.el,true,true)){a.onMouseEnter(b)}},onMouseOut:function(b){var a=this;if(!b.within(a.el,true,true)){if(a.overMenuTrigger){a.onMenuTriggerOut(b)}a.onMouseLeave(b)}},onMouseMove:function(c){var a=this,b=a.overMenuTrigger;if(a.split){if(a.isWithinTrigger(c)){if(!b){a.onMenuTriggerOver(c)}}else{if(b){a.onMenuTriggerOut(c)}}}},isWithinTrigger:function(d){var c=this,b=c.el,g,a;g=(c.arrowAlign==="right")?d.getX()-c.getX():d.getY()-b.getY();a=c.getTriggerRegion();return g>a.begin&&g<a.end},getTriggerRegion:function(){var d=this,e=d._triggerRegion,c=d.arrowAlign==="right",b=c?"getRight":"getBottom",a=c?d.getWidth():d.getHeight();e.begin=a-(d.el[b]()-d.btnEl[b]());e.end=a;return e},onMouseEnter:function(a){this.fireEvent("mouseover",this,a)},onMouseLeave:function(a){this.fireEvent("mouseout",this,a)},onMenuTriggerOver:function(c){var b=this,a=b.arrowTooltip;b.overMenuTrigger=true;if(b.split&&a){b.btnWrap.dom.setAttribute(b.getTipAttr(),a)}b.fireEvent("menutriggerover",b,b.menu,c)},onMenuTriggerOut:function(b){var a=this;delete a.overMenuTrigger;if(a.split&&a.arrowTooltip){a.btnWrap.dom.setAttribute(a.getTipAttr(),"")}a.fireEvent("menutriggerout",a,a.menu,b)},enable:function(a){var b=this;Ext.Component.prototype.enable.apply(this,arguments);b.removeCls(b._disabledCls);if(b.rendered){b.el.dom.setAttribute("tabIndex",b.tabIndex);if(Ext.os.is.ios&&b.href){b.el.dom.href=b.href}}return b},disable:function(a){var b=this;Ext.Component.prototype.disable.apply(this,arguments);b.addCls(b._disabledCls);b.removeCls(b.overCls);if(b.rendered){b.el.dom.removeAttribute("tabIndex");if(Ext.os.is.ios&&b.href){b.el.dom.href=null}}return b},setScale:function(c){var a=this,b=a.ui.replace("-"+a.scale,"");if(!Ext.Array.contains(a.allowedScales,c)){throw ("#setScale: scale must be an allowed scale ("+a.allowedScales.join(", ")+")")}a.scale=c;a.setUI(b)},setUI:function(b){var a=this;if(a.scale&&!b.match(a.scale)){b=b+"-"+a.scale}Ext.Component.prototype.setUI.apply(this,[b])},onMouseDown:function(b){var a=this;if(Ext.isIE){a.getFocusEl().focus()}if(!a.disabled&&b.button===0){Ext.button.Manager.onButtonMousedown(a,b);a.addCls(a._pressedCls)}},onMouseUp:function(b){var a=this;if(!a.isDestroyed&&b.button===0){if(!a.pressed){a.removeCls(a._pressedCls)}}},onMenuShow:function(){var a=this;a.ignoreNextClick=0;a.addCls(a._menuActiveCls);a.fireEvent("menushow",a,a.menu)},onMenuHide:function(b){var a=this,c=a.menuClickBuffer;a.removeCls(a._menuActiveCls);if(c){a.ignoreNextClick=Ext.defer(a.restoreClick,c,a)}a.fireEvent("menuhide",a,a.menu);a.focus()},restoreClick:function(){this.ignoreNextClick=0},onDownKey:function(a,c){var b=this;if(b.menu&&!b.disabled){b.showMenu();c.stopEvent();return false}},updateArrowVisible:function(b){var a=this;if(a.rendered){if(b){if(a.menu||a.isSplitButton){a.split=true;a._addSplitCls()}}else{a._removeSplitCls();a.split=false}}return b},privates:{addOverCls:function(){if(!this.disabled){this.addCls(this.overCls)}},_addSplitCls:function(){var a=this;a.btnWrap.addCls(a.getSplitCls());if(Ext.isOpera12m){a.addCls(a._operaArrowCls+"-"+a.arrowAlign)}},getFocusEl:function(){return this.el},getTdCls:function(){return Ext.baseCSSPrefix+"button-"+this.ui+"-"+this.scale+"-cell"},removeOverCls:function(){this.removeCls(this.overCls)},_removeSplitCls:function(){var a=this;a.btnWrap.removeCls(a.getSplitCls());if(Ext.isOpera12m){a.removeCls(a._operaArrowCls+"-"+a.arrowAlign)}},_syncHasIconCls:function(){var b=this,a=b.btnEl,c=b._hasIconCls;if(a){a[b._hasIcon()?"addCls":"removeCls"]([c,c+"-"+b.iconAlign])}},_hasIcon:function(){return !!(this.icon||this.iconCls||this.glyph)},wrapPrimaryEl:function(a){this.el=new Ext.dom.ButtonElement(a)}}},0,["button"],["box","button","component"],{box:true,button:true,component:true},["widget.button"],[[Ext.mixin.Queryable.prototype.mixinId||Ext.mixin.Queryable.$className,Ext.mixin.Queryable]],[Ext.button,"Button",Ext,"Button"],0));(Ext.cmd.derive("Ext.layout.container.boxOverflow.Menu",Ext.layout.container.boxOverflow.None,{alternateClassName:"Ext.layout.boxOverflow.Menu",noItemsMenuText:'<div class="'+Ext.baseCSSPrefix+'toolbar-no-items" role="menuitem">(None)</div>',menuCls:Ext.baseCSSPrefix+"box-menu",constructor:function(a){var b=this;Ext.layout.container.boxOverflow.None.prototype.constructor.apply(this,arguments);b.menuItems=[]},beginLayout:function(a){Ext.layout.container.boxOverflow.None.prototype.beginLayout.apply(this,arguments);this.clearOverflow(a)},beginLayoutCycle:function(b,a){Ext.layout.container.boxOverflow.None.prototype.beginLayoutCycle.apply(this,arguments);if(!a){this.clearOverflow(b);this.layout.cacheChildItems(b)}},onRemove:function(a){Ext.Array.remove(this.menuItems,a)},getSuffixConfig:function(){var d=this,c=d.layout,a=c.owner,b=a.id;d.menu=new Ext.menu.Menu({listeners:{scope:d,beforeshow:d.beforeMenuShow}});d.menuTrigger=new Ext.button.Button({id:b+"-menu-trigger",cls:d.menuCls+"-after "+Ext.baseCSSPrefix+"toolbar-item",plain:a.usePlainButtons,ownerCt:a,ownerLayout:c,iconCls:Ext.baseCSSPrefix+d.getOwnerType(a)+"-more-icon",ui:a.defaultButtonUI||"default",menu:d.menu,showEmptyMenu:true,getSplitCls:function(){return""}});return d.menuTrigger.getRenderTree()},getOverflowCls:function(a){return this.menuCls+"-body-"+a},handleOverflow:function(c){var b=this,a=b.layout;b.showTrigger(c);if(a.direction!=="vertical"){b.menuTrigger.setLocalY((c.state.boxPlan.maxSize-b.menuTrigger[a.names.getHeight]())/2)}return{reservedSpace:b.triggerTotalWidth}},captureChildElements:function(){var a=this,c=a.menuTrigger,b=a.layout.names;if(c.rendering){c.finishRender();a.triggerTotalWidth=c[b.getWidth]()+c.el.getMargin(b.parallelMargins)}},clearOverflow:function(h){var g=this,b=g.menuItems,e,c=0,d=b.length,a=g.layout.owner,j=a._asLayoutRoot;a.suspendLayouts();g.captureChildElements();g.hideTrigger();a.resumeLayouts();for(;c<d;c++){e=b[c];e.suspendLayouts();e.show();e.resumeLayouts(j)}b.length=0},showTrigger:function(c){var o=this,k=o.layout,a=k.owner,n=k.names,r=n.x,e=n.width,p=c.state.boxPlan,b=p.targetSize[e],h=c.childItems,l=h.length,g=o.menuTrigger,q,j,d,m;g.suspendLayouts();g.show();g.resumeLayouts(o._asLayoutRoot);b-=o.triggerTotalWidth;a.suspendLayouts();o.menuItems.length=0;for(d=0;d<l;d++){q=h[d];m=q.props;if(m[r]+m[e]>b){j=q.target;o.menuItems.push(j);j.hide()}}a.resumeLayouts()},hideTrigger:function(){var a=this.menuTrigger;if(a){a.hide()}},beforeMenuShow:function(j){var h=this,b=h.menuItems,d=0,a=b.length,g,e,c=function(l,k){return l.isXType("buttongroup")&&!(k instanceof Ext.toolbar.Separator)};j.suspendLayouts();h.clearMenu();j.removeAll();for(;d<a;d++){g=b[d];if(!d&&(g instanceof Ext.toolbar.Separator)){continue}if(e&&(c(g,e)||c(e,g))){j.add("-")}h.addComponentToMenu(j,g);e=g}if(j.items.length<1){j.add(h.noItemsMenuText)}j.resumeLayouts()},createMenuConfig:function(c,a){var b=Ext.apply({},c.initialConfig),d=c.toggleGroup;Ext.copyTo(b,c,["iconCls","icon","itemId","disabled","handler","scope","menu","tabIndex"]);Ext.applyIf(b,{text:c.overflowText||c.text,hideOnClick:a,destroyMenu:false,listeners:{}});if(c.isFormField){b.value=c.getValue();b.listeners.change=function(h,g,e){c.setValue(g)}}else{if(d||c.enableToggle){Ext.apply(b,{hideOnClick:false,group:d,checked:c.pressed,handler:function(g,h){c.onClick(h)}})}}if(c.isButton&&!c.changeListenersAdded){c.on({textchange:this.onButtonAttrChange,iconchange:this.onButtonAttrChange,toggle:this.onButtonToggle});c.changeListenersAdded=true}delete b.margin;delete b.ownerCt;delete b.xtype;delete b.id;delete b.itemId;return b},onButtonAttrChange:function(a){var b=a.overflowClone;b.suspendLayouts();b.setText(a.text);b.setIcon(a.icon);b.setIconCls(a.iconCls);b.resumeLayouts(true)},onButtonToggle:function(a,b){if(a.overflowClone.checked!==b){a.overflowClone.setChecked(b)}},addComponentToMenu:function(g,c){var e=this,d,b,a;if(c instanceof Ext.toolbar.Fill){return}else{if(c instanceof Ext.toolbar.Separator){g.add("-")}else{if(c.isComponent){if(c.isXType("splitbutton")){c.overflowClone=g.add(e.createMenuConfig(c,true))}else{if(c.isXType("button")){c.overflowClone=g.add(e.createMenuConfig(c,!c.menu))}else{if(c.isXType("buttongroup")){b=c.items.items;a=b.length;for(d=0;d<a;d++){e.addComponentToMenu(g,b[d])}}else{c.overflowClone=g.add(Ext.create(Ext.getClassName(c),e.createMenuConfig(c)))}}}}}}},clearMenu:function(){var e=this.menu,b,c,a,d;if(e&&e.items){b=e.items.items;a=b.length;for(c=0;c<a;c++){d=b[c];if(d.setMenu){d.setMenu(null)}}}},destroy:function(){var a=this.menuTrigger;if(a&&!this.layout.owner.items.contains(a)){delete a.ownerCt}Ext.destroy(this.menu,a)}},1,0,0,0,["box.overflow.Menu","box.overflow.menu"],0,[Ext.layout.container.boxOverflow,"Menu",Ext.layout.boxOverflow,"Menu"],0));(Ext.cmd.derive("Ext.layout.container.boxOverflow.Scroller",Ext.layout.container.boxOverflow.None,{alternateClassName:"Ext.layout.boxOverflow.Scroller",animateScroll:false,scrollIncrement:20,wheelIncrement:10,scrollRepeatInterval:60,scrollDuration:400,scrollerCls:Ext.baseCSSPrefix+"box-scroller",beforeSuffix:"-before-scroller",afterSuffix:"-after-scroller",constructor:function(a){var b=this;b.mixins.observable.constructor.call(b,a);b.scrollPosition=0;b.scrollSize=0},getPrefixConfig:function(){return{role:"presentation",id:this.layout.owner.id+this.beforeSuffix,cls:this.createScrollerCls("beforeX"),style:"display:none"}},getSuffixConfig:function(){return{role:"presentation",id:this.layout.owner.id+this.afterSuffix,cls:this.createScrollerCls("afterX"),style:"display:none"}},createScrollerCls:function(e){var h=this,g=h.layout,b=g.owner,j=Ext.baseCSSPrefix,d=h.getOwnerType(b),a=h.scrollerCls,c=a+" "+a+"-"+g.names[e]+" "+a+"-"+d+" "+a+"-"+d+"-"+b.ui;if(b.plain){c+=" "+a+"-plain"}return c},getOverflowCls:function(a){return this.scrollerCls+"-body-"+a},beginLayout:function(b){var a=this.layout;b.innerCtScrollPos=this.getScrollPosition();Ext.layout.container.boxOverflow.None.prototype.beginLayout.apply(this,arguments)},finishedLayout:function(e){var d=this,h=e.state.boxPlan,c=d.layout,g=c.names,j=Math.min(d.getMaxScrollPosition(),e.innerCtScrollPos),a,b;if(h&&h.tooNarrow){a=e.childItems[e.childItems.length-1].props;d.scrollSize=a[g.x]+a[g.width];d.updateScrollButtons()}c.innerCt[g.setScrollLeft](j);Ext.layout.container.boxOverflow.None.prototype.finishedLayout.apply(this,[e])},handleOverflow:function(b){var h=this,g=h.layout.names,j=g.getWidth,k=g.parallelMargins,c,e,d,a;h.showScrollers();d=h.getBeforeScroller();a=h.getAfterScroller();c=d[j]()+a[j]()+d.getMargin(k)+a.getMargin(k);e=b.targetContext.getPaddingInfo()[g.width];return{reservedSpace:Math.max(c-e,0)}},getBeforeScroller:function(){var a=this;return a._beforeScroller||(a._beforeScroller=a.createScroller(a.beforeSuffix,"beforeRepeater","scrollLeft"))},getAfterScroller:function(){var a=this;return a._afterScroller||(a._afterScroller=a.createScroller(a.afterSuffix,"afterRepeater","scrollRight"))},createScroller:function(g,d,h){var e=this,c=e.layout.owner,b=e.scrollerCls,a;a=c.el.getById(c.id+g);a.addClsOnOver(b+"-hover");a.addClsOnClick(b+"-pressed");a.setVisibilityMode(Ext.Element.DISPLAY);e[d]=new Ext.util.ClickRepeater(a,{interval:e.scrollRepeatInterval,handler:h,scope:e});return a},createWheelListener:function(){var a=this;a.layout.innerCt.on({mousewheel:function(b){a.scrollBy(a.getWheelDelta(b)*a.wheelIncrement*-1,false)},stopEvent:true})},getWheelDelta:function(a){return a.getWheelDelta()},clearOverflow:function(){this.hideScrollers()},showScrollers:function(){var a=this;a.createWheelListener();a.getBeforeScroller().show();a.getAfterScroller().show();a.layout.owner.addClsWithUI(a.layout.direction==="vertical"?"vertical-scroller":"scroller")},hideScrollers:function(){var b=this,c=b.getBeforeScroller(),a=b.getAfterScroller();if(c){c.hide();a.hide();b.layout.owner.removeClsWithUI(b.layout.direction==="vertical"?"vertical-scroller":"scroller")}},destroy:function(){var a=this;Ext.destroy(a.beforeRepeater,a.afterRepeater,a._beforeScroller,a._afterScroller)},scrollBy:function(b,a){this.scrollTo(this.getScrollPosition()+b,a)},getScrollAnim:function(){return{duration:this.scrollDuration,callback:this.updateScrollButtons,scope:this}},updateScrollButtons:function(){var b=this,d=b.getBeforeScroller(),a=b.getAfterScroller(),c;if(!d||!a){return}c=b.scrollerCls+"-disabled";d[b.atExtremeBefore()?"addCls":"removeCls"](c);a[b.atExtremeAfter()?"addCls":"removeCls"](c);b.scrolling=false},scrollLeft:function(){this.scrollBy(-this.scrollIncrement,false)},scrollRight:function(){this.scrollBy(this.scrollIncrement,false)},getScrollPosition:function(){var c=this,b=c.layout,a;if(isNaN(c.scrollPosition)){a=b.innerCt[b.names.getScrollLeft]()}else{a=c.scrollPosition}return a},getMaxScrollPosition:function(){var b=this,a=b.layout,c=b.scrollSize-a.innerCt[a.names.getWidth]();return(c<0)?0:c},atExtremeBefore:function(){return !this.getScrollPosition()},atExtremeAfter:function(){return this.getScrollPosition()>=this.getMaxScrollPosition()},setVertical:function(){var c=this,d=c.getBeforeScroller(),b=c.getAfterScroller(),e=c.layout.names,a=c.scrollerCls;d.removeCls(a+"-"+e.beforeY);b.removeCls(a+"-"+e.afterY);d.addCls(a+"-"+e.beforeX);b.addCls(a+"-"+e.afterX);Ext.layout.container.boxOverflow.None.prototype.setVertical.call(this)},scrollTo:function(a,b){var g=this,e=g.layout,h=e.names,d=g.getScrollPosition(),c=Ext.Number.constrain(a,0,g.getMaxScrollPosition());if(c!=d&&!g.scrolling){g.scrollPosition=NaN;if(b===undefined){b=g.animateScroll}e.innerCt[h.scrollTo](h.beforeScrollX,c,b?g.getScrollAnim():false);if(b){g.scrolling=true}else{g.updateScrollButtons()}g.fireEvent("scroll",g,c,b?g.getScrollAnim():false)}},scrollToItem:function(l,c){var k=this,g=k.layout,d=g.owner,j=g.names,b=g.innerCt,a,e,h;l=k.getItem(l);if(l!==undefined){if(l==d.items.first()){h=0}else{if(l===d.items.last()){h=k.getMaxScrollPosition()}else{a=k.getItemVisibility(l);if(!a.fullyVisible){e=l.getBox(false,true);h=e[j.x];if(a.hiddenEnd){h-=(b[j.getWidth]()-e[j.width])}}}}if(h!==undefined){k.scrollTo(h,c)}}},getItemVisibility:function(k){var h=this,b=h.getItem(k).getBox(true,true),c=h.layout,g=c.names,e=b[g.x],d=e+b[g.width],a=h.getScrollPosition(),j=a+c.innerCt[g.getWidth]();return{hiddenStart:e<a,hiddenEnd:d>j,fullyVisible:e>a&&d<j}}},1,0,0,0,["box.overflow.Scroller","box.overflow.scroller"],[["observable",Ext.mixin.Observable]],[Ext.layout.container.boxOverflow,"Scroller",Ext.layout.boxOverflow,"Scroller"],0));(Ext.cmd.derive("Ext.dd.DragDropManager",Ext.Base,{singleton:true,alternateClassName:["Ext.dd.DragDropMgr","Ext.dd.DDM"],ids:{},handleIds:{},dragCurrent:null,dragOvers:{},deltaX:0,deltaY:0,preventDefault:true,stopPropagation:true,initialized:false,locked:false,init:function(){this.initialized=true},POINT:0,INTERSECT:1,mode:0,notifyOccluded:false,dragCls:Ext.baseCSSPrefix+"dd-drag-current",_execOnAll:function(c,b){var e=this.ids,d,a,h,g;for(d in e){if(e.hasOwnProperty(d)){g=e[d];for(a in g){if(g.hasOwnProperty(a)){h=g[a];if(!this.isTypeOfDD(h)){continue}h[c].apply(h,b)}}}}},addListeners:function(){var a=this;a.init();Ext.getDoc().on({mouseup:a.handleMouseUp,mousemove:a.handleMouseMove,dragstart:a.preventDrag,drag:a.preventDrag,dragend:a.preventDrag,capture:true,scope:a});Ext.getWin().on({unload:a._onUnload,resize:a._onResize,scope:a})},preventDrag:function(a){if(this.isMouseDown){a.stopPropagation()}},_onResize:function(a){this._execOnAll("resetConstraints",[])},lock:function(){this.locked=true},unlock:function(){this.locked=false},isLocked:function(){return this.locked},locationCache:{},useCache:true,clickPixelThresh:8,dragThreshMet:false,clickTimeout:null,startX:0,startY:0,regDragDrop:function(b,a){if(!this.initialized){this.init()}if(!this.ids[a]){this.ids[a]={}}this.ids[a][b.id]=b},removeDDFromGroup:function(c,a){if(!this.ids[a]){this.ids[a]={}}var b=this.ids[a];if(b&&b[c.id]){delete b[c.id]}},_remove:function(h,b){var e=this,c=e.ids,a=h.groups,d;if(e.clearingAll){return}if(e.dragCurrent===h){e.dragCurrent=null}for(d in a){if(a.hasOwnProperty(d)){if(b){delete c[d]}else{if(c[d]){delete c[d][h.id]}}}}delete e.handleIds[h.id]},regHandle:function(b,a){if(!this.handleIds[b]){this.handleIds[b]={}}this.handleIds[b][a]=a},isDragDrop:function(a){return(this.getDDById(a))?true:false},getRelated:function(g,b){var e=[],d,c,a;for(d in g.groups){for(c in this.ids[d]){a=this.ids[d][c];if(!this.isTypeOfDD(a)){continue}if(!b||a.isTarget){e[e.length]=a}}}return e},isLegalTarget:function(e,d){var b=this.getRelated(e,true),c,a;for(c=0,a=b.length;c<a;++c){if(b[c].id==d.id){return true}}return false},isTypeOfDD:function(a){return(a&&a.__ygDragDrop)},isHandle:function(b,a){return(this.handleIds[b]&&this.handleIds[b][a])},getDDById:function(d,c){var b,a;for(b in this.ids){a=this.ids[b][d];if(a instanceof Ext.dd.DDTarget||c){return a}}return null},handleMouseDown:function(g,d){var b=this,c,a;b.isMouseDown=true;if(Ext.quickTipsActive){Ext.tip.QuickTipManager.ddDisable()}b.currentPoint=g.getPoint();if(b.dragCurrent){b.handleMouseUp(g)}b.mousedownEvent=g;b.currentTarget=g.getTarget();b.dragCurrent=d;a=d.getEl();Ext.fly(a).setCapture();c=g.getXY();b.startX=c[0];b.startY=c[1];b.offsetX=b.offsetY=0;b.deltaX=b.startX-a.offsetLeft;b.deltaY=b.startY-a.offsetTop;b.dragThreshMet=false},startDrag:function(b,e){var c=this,d=c.dragCurrent,a;clearTimeout(c.clickTimeout);if(d){d.b4StartDrag(b,e);d.startDrag(b,e);a=d.getDragEl();if(a){Ext.fly(a).addCls(c.dragCls)}}c.dragThreshMet=true},handleMouseUp:function(b){var a=this;a.isMouseDown=false;if(Ext.quickTipsActive){Ext.tip.QuickTipManager.ddEnable()}if(!a.dragCurrent){return}if(Ext.isIE&&document.releaseCapture){document.releaseCapture()}clearTimeout(a.clickTimeout);if(a.dragThreshMet){a.fireEvents(b,true)}a.stopDrag(b);a.stopEvent(b)},stopEvent:function(a){if(this.stopPropagation){a.stopPropagation()}if(this.preventDefault){a.preventDefault()}},stopDrag:function(d){var b=this,c=b.dragCurrent,a;if(c){if(b.dragThreshMet){a=c.getDragEl();if(a){Ext.fly(a).removeCls(b.dragCls)}c.b4EndDrag(d);c.endDrag(d)}b.dragCurrent.onMouseUp(d)}b.dragCurrent=null;b.dragOvers={}},handleMouseMove:function(k){var h=this,j=h.dragCurrent,a=h.currentPoint=k.getPoint(),d=a.x,b=a.y,g,c;h.offsetX=d-h.startX;h.offsetY=b-h.startY;if(!j){return true}if(!h.dragThreshMet){g=Math.abs(h.offsetX);c=Math.abs(h.offsetY);if(g>h.clickPixelThresh||c>h.clickPixelThresh){h.startDrag(h.startX,h.startY)}}if(h.dragThreshMet){j.b4Drag(k);j.onDrag(k);if(!j.moveOnly){h.fireEvents(k,false)}}h.stopEvent(k);return true},fireEvents:function(y,n){var A=this,o=Ext.supports.Touch,h=A.dragCurrent,w=A.currentPoint,s=w.x,q=w.y,d,r,g,m,p=[],j=[],l=[],b=[],z=[],x=[],c,u,v,t,a=o?document.documentElement.clientWidth/window.innerWidth:1,k;if(!h||h.isLocked()){return}k=!(h.deltaX<0||h.deltaY<0);if(o||(!A.notifyOccluded&&(!Ext.supports.CSSPointerEvents||Ext.isIE10m||Ext.isOpera)&&k)){d=h.getDragEl();if(k){d.style.visibility="hidden"}y.target=document.elementFromPoint(s/a,q/a);if(k){d.style.visibility="visible"}}for(u in A.dragOvers){g=A.dragOvers[u];delete A.dragOvers[u];if(!A.isTypeOfDD(g)||g.isDestroyed){continue}if(A.notifyOccluded){if(!this.isOverTarget(w,g,A.mode)){l.push(g)}}else{if(!y.within(g.getEl())){l.push(g)}}j[u]=true}for(t in h.groups){if("string"!=typeof t){continue}for(u in A.ids[t]){g=A.ids[t][u];if(A.isTypeOfDD(g)&&(m=g.getEl())&&(g.isTarget)&&(!g.isLocked())&&(Ext.fly(m).isVisible(true))&&((g!=h)||(h.ignoreSelf===false))){if(A.notifyOccluded){if((g.zIndex=A.getZIndex(m))!==-1){c=true}p.push(g)}else{if(y.within(g.getEl())){p.push(g);break}}}}}if(c){Ext.Array.sort(p,A.byZIndex)}for(u=0,v=p.length;u<v;u++){g=p[u];if(A.isOverTarget(w,g,A.mode)){if(n){z.push(g)}else{if(!j[g.id]){x.push(g)}else{b.push(g)}A.dragOvers[g.id]=g}if(!A.notifyOccluded){break}}}if(A.mode){if(l.length){h.b4DragOut(y,l);h.onDragOut(y,l)}if(x.length){h.onDragEnter(y,x)}if(b.length){h.b4DragOver(y,b);h.onDragOver(y,b)}if(z.length){h.b4DragDrop(y,z);h.onDragDrop(y,z)}}else{for(u=0,v=l.length;u<v;++u){h.b4DragOut(y,l[u].id);h.onDragOut(y,l[u].id)}for(u=0,v=x.length;u<v;++u){h.onDragEnter(y,x[u].id)}for(u=0,v=b.length;u<v;++u){h.b4DragOver(y,b[u].id);h.onDragOver(y,b[u].id)}for(u=0,v=z.length;u<v;++u){h.b4DragDrop(y,z[u].id);h.onDragDrop(y,z[u].id)}}if(n&&!z.length){h.onInvalidDrop(y)}},getZIndex:function(b){var a=document.body,c,d=-1;b=Ext.getDom(b);while(b!==a){if(!isNaN(c=Number(Ext.fly(b).getStyle("zIndex")))){d=c}b=b.parentNode}return d},byZIndex:function(b,a){return b.zIndex<a.zIndex},getBestMatch:function(c){var e=null,b=c.length,d,a;if(b==1){e=c[0]}else{for(d=0;d<b;++d){a=c[d];if(a.cursorIsOver){e=a;break}else{if(!e||e.overlap.getArea()<a.overlap.getArea()){e=a}}}}return e},refreshCache:function(b){var a,c,d,e;for(a in b){if("string"!=typeof a){continue}for(c in this.ids[a]){d=this.ids[a][c];if(this.isTypeOfDD(d)){e=this.getLocation(d);if(e){this.locationCache[d.id]=e}else{delete this.locationCache[d.id]}}}}},verifyEl:function(b){if(b){var a;if(Ext.isIE){try{a=b.offsetParent}catch(c){}}else{a=b.offsetParent}if(a){return true}}return false},getLocation:function(j){if(!this.isTypeOfDD(j)){return null}if(j.getRegion){return j.getRegion()}var g=j.getEl(),n,d,c,p,o,q,a,m,h;try{n=Ext.fly(g).getXY()}catch(k){}if(!n){return null}d=n[0];c=d+g.offsetWidth;p=n[1];o=p+g.offsetHeight;q=p-j.padding[0];a=c+j.padding[1];m=o+j.padding[2];h=d-j.padding[3];return new Ext.util.Region(q,a,m,h)},isOverTarget:function(k,a,c){var e=this.locationCache[a.id],j,g,b,d,h;if(!e||!this.useCache){e=this.getLocation(a);this.locationCache[a.id]=e}if(!e){return false}a.cursorIsOver=e.contains(k);j=this.dragCurrent;if(!j||!j.getTargetCoord||(!c&&!j.constrainX&&!j.constrainY)){return a.cursorIsOver}a.overlap=null;g=j.getTargetCoord(k.x,k.y);b=j.getDragEl();d=new Ext.util.Region(g.y,g.x+b.offsetWidth,g.y+b.offsetHeight,g.x);h=d.intersect(e);if(h){a.overlap=h;return(c)?true:a.cursorIsOver}else{return false}},_onUnload:function(b,a){Ext.dd.DragDropManager.unregAll()},unregAll:function(){var c=this,a=c.elementCache,b;if(c.dragCurrent){c.stopDrag();c.dragCurrent=null}c.clearingAll=true;c._execOnAll("unreg",[]);delete c.clearingAll;for(b in a){delete a[b]}c.elementCache={};c.ids={};c.handleIds={}},elementCache:{},getElWrapper:function(b){var a=this.elementCache[b];if(!a||!a.el){a=this.elementCache[b]=new this.ElementWrapper(Ext.getDom(b))}return a},getElement:function(a){return Ext.getDom(a)},getCss:function(b){var a=Ext.getDom(b);return(a)?a.style:null},ElementWrapper:function(a){this.el=a||null;this.id=this.el&&a.id;this.css=this.el&&a.style},getPosX:function(a){return Ext.fly(a).getX()},getPosY:function(a){return Ext.fly(a).getY()},swapNode:function(c,a){if(c.swapNode){c.swapNode(a)}else{var d=a.parentNode,b=a.nextSibling;if(b==c){d.insertBefore(c,a)}else{if(a==c.nextSibling){d.insertBefore(a,c)}else{c.parentNode.replaceChild(a,c);d.insertBefore(c,b)}}}},getScroll:function(){var d=window.document,e=d.documentElement,a=d.body,c=0,b=0;if(e&&(e.scrollTop||e.scrollLeft)){c=e.scrollTop;b=e.scrollLeft}else{if(a){c=a.scrollTop;b=a.scrollLeft}}return{top:c,left:b}},getStyle:function(b,a){return Ext.fly(b).getStyle(a)},getScrollTop:function(){return this.getScroll().top},getScrollLeft:function(){return this.getScroll().left},moveToEl:function(a,c){var b=Ext.fly(c).getXY();Ext.fly(a).setXY(b)},numericSort:function(d,c){return(d-c)},handleWasClicked:function(a,c){if(this.isHandle(c,a.id)){return true}else{var b=a.parentNode;while(b){if(this.isHandle(c,b.id)){return true}else{b=b.parentNode}}}return false}},0,0,0,0,0,0,[Ext.dd,"DragDropManager",Ext.dd,"DragDropMgr",Ext.dd,"DDM"],function(a){Ext.onReady(function(){a.addListeners()})}));(Ext.cmd.derive("Ext.layout.container.Box",Ext.layout.container.Container,{alternateClassName:"Ext.layout.BoxLayout",type:"box",config:{align:"begin",constrainAlign:false,enableSplitters:true,overflowHandler:{$value:null,merge:function(b,a){if(typeof b=="string"){b={type:b}}return Ext.merge(a?Ext.Object.chain(a):{},b)}},padding:0,pack:"start",stretchMaxPartner:undefined,vertical:false,alignRoundingMethod:"round"},scrollOffset:0,itemCls:Ext.baseCSSPrefix+"box-item",targetCls:Ext.baseCSSPrefix+"box-layout-ct",targetElCls:Ext.baseCSSPrefix+"box-target",innerCls:Ext.baseCSSPrefix+"box-inner",availableSpaceOffset:0,reserveOffset:true,manageMargins:true,createsInnerCt:true,childEls:["innerCt","targetEl"],renderTpl:['{%var oc,l=values.$comp.layout,oh=l.overflowHandler;if (oh && oh.getPrefixConfig!==Ext.emptyFn) {if(oc=oh.getPrefixConfig())dh.generateMarkup(oc, out)}%}<div id="{ownerId}-innerCt" data-ref="innerCt" role="presentation" class="{[l.innerCls]}{[oh ? (" " + oh.getOverflowCls(l.direction)) : ""]}"><div id="{ownerId}-targetEl" data-ref="targetEl" class="{targetElCls}" role="presentation">{%this.renderBody(out, values)%}</div></div>{%if (oh && oh.getSuffixConfig!==Ext.emptyFn) {if(oc=oh.getSuffixConfig())dh.generateMarkup(oc, out)}%}',{disableFormats:true,definitions:"var dh=Ext.DomHelper;"}],constructor:function(a){var c=this,b;Ext.layout.container.Container.prototype.constructor.apply(this,arguments);c.setVertical(c.vertical);c.flexSortFn=c.flexSort.bind(c);b=typeof c.padding;if(b==="string"||b==="number"){c.padding=Ext.util.Format.parseBox(c.padding);c.padding.height=c.padding.top+c.padding.bottom;c.padding.width=c.padding.left+c.padding.right}},_beginRe:/^(?:begin|left|top)$/,_centerRe:/^(?:center|middle)$/,_endRe:/^(?:end|right|bottom)$/,_percentageRe:/^\s*(\d+(?:\.\d*)?)\s*[%]\s*$/,getItemSizePolicy:function(p,q){var l=this,j=l.sizePolicy,h=l.align,g=p.flex,n=h,k=l.names,b=p[k.width],o=p[k.height],d=l._percentageRe,c=d.test(b),e=(h==="stretch"),a=(h==="stretchmax"),m=l.constrainAlign;if(!q&&(e||g||c||(m&&!a))){q=l.owner.getSizeModel()}if(e){if(!d.test(o)&&q[k.height].shrinkWrap){n="stretchmax"}}else{if(!a){if(d.test(o)){n="stretch"}else{if(m&&!q[k.height].shrinkWrap){n="stretchmax"}else{n=""}}}}if(g||c){if(!q[k.width].shrinkWrap){j=j.flex}}return j[n]},flexSort:function(p,o){var m=this.names.maxWidth,e=this.names.minWidth,n=Infinity,l=p.target,s=o.target,j=l.flex,h=s.flex,t=0,c,q,k,d,r,g;k=l[m]||n;d=s[m]||n;c=l[e]||0;q=s[e]||0;r=isFinite(c)||isFinite(q);g=isFinite(k)||isFinite(d);if(r||g){if(g){t=k-d}if(t===0&&r){t=q-c}if(t===0){if(g){t=h-j}else{t=j-h}}}return t},isItemBoxParent:function(a){return true},isItemShrinkWrap:function(a){return true},roundFlex:function(a){return Math.ceil(a)},beginCollapse:function(b){var a=this;if(a.direction==="vertical"&&b.collapsedVertical()){b.collapseMemento.capture(["flex"]);delete b.flex}else{if(a.direction==="horizontal"&&b.collapsedHorizontal()){b.collapseMemento.capture(["flex"]);delete b.flex}}},beginExpand:function(a){a.collapseMemento.restore(["flex"])},beginLayout:function(e){var d=this,a=d.owner,h=a.stretchMaxPartner,c=d.innerCt.dom.style,g=d.names,b=d.overflowHandler;e.boxNames=g;if(b){b.beginLayout(e)}if(typeof h==="string"){h=Ext.getCmp(h)||a.query(h)[0]}e.stretchMaxPartner=h&&e.context.getCmp(h);Ext.layout.container.Container.prototype.beginLayout.apply(this,arguments);e.innerCtContext=e.getEl("innerCt",d);e.targetElContext=e.getEl("targetEl",d);d.scrollParallel=a.scrollFlags[g.x];d.scrollPerpendicular=a.scrollFlags[g.y];if(d.scrollParallel){d.scrollPos=a.getTargetEl().dom[g.scrollLeft]}c.width="";c.height=""},beginLayoutCycle:function(b,k){var g=this,d=g.align,e=b.boxNames,j=g.pack,a=g._centerRe,h=e.heightModel,c=g.overflowHandler;if(c){c.beginLayoutCycle(b,k)}Ext.layout.container.Container.prototype.beginLayoutCycle.apply(this,arguments);b.parallelSizeModel=b[e.widthModel];b.perpendicularSizeModel=b[h];b.boxOptions={align:d={stretch:d==="stretch",stretchmax:d==="stretchmax",center:a.test(d),bottom:g._endRe.test(d)},pack:j={center:a.test(j),end:j==="end"}};if(d.stretch&&b.perpendicularSizeModel.shrinkWrap){d.stretchmax=true;d.stretch=false}d.nostretch=!(d.stretch||d.stretchmax);if(b.parallelSizeModel.shrinkWrap){j.center=j.end=false}g.cacheFlexes(b);g.targetEl.setWidth(20000)},cacheFlexes:function(k){var u=this,l=k.boxNames,a=l.widthModel,d=l.heightModel,c=k.boxOptions.align.nostretch,o=0,b=k.childItems,q=b.length,s=[],m=0,j=l.minWidth,g=u._percentageRe,r=0,t=0,e,n,p,h;while(q--){n=b[q];e=n.target;if(n[a].calculated){n.flex=p=e.flex;if(p){o+=p;s.push(n);m+=e[j]||0}else{h=g.exec(e[l.width]);n.percentageParallel=parseFloat(h[1])/100;++r}}if(c&&n[d].calculated){h=g.exec(e[l.height]);n.percentagePerpendicular=parseFloat(h[1])/100;++t}}k.flexedItems=s;k.flexedMinSize=m;k.totalFlex=o;k.percentageWidths=r;k.percentageHeights=t;Ext.Array.sort(s,u.flexSortFn)},calculate:function(g){var d=this,c=d.getContainerSize(g),j=g.boxNames,e=g.state,h=e.boxPlan||(e.boxPlan={}),b=g.targetContext,a=d.overflowHandler;h.targetSize=c;if(!e.parallelDone){e.parallelDone=d.calculateParallel(g,j,h)}if(!e.perpendicularDone){e.perpendicularDone=d.calculatePerpendicular(g,j,h)}if(e.parallelDone&&e.perpendicularDone){d.publishInnerCtSize(g,d.reserveOffset?d.availableSpaceOffset:0);if(d.done&&g.boxOptions.align.stretchmax&&!e.stretchMaxDone){d.calculateStretchMax(g,j,h);e.stretchMaxDone=true}if(a){a.calculate(g)}}else{d.done=false}},calculateParallel:function(l,o,b){var G=this,A=o.width,a=l.childItems,t=o.beforeX,e=o.afterX,r=o.setWidth,B=a.length,y=l.flexedItems,s=y.length,w=l.boxOptions.pack,n=G.padding,d=b.targetSize,j=d[A],C=0,g=n[t],F=g+n[e]+G.scrollOffset+(G.reserveOffset?G.availableSpaceOffset:0),x=Ext.getScrollbarSize()[o.width],v,m,h,z,p,u,E,q,D,c,k;if(!l.parallelSizeModel.shrinkWrap&&!d[o.gotWidth]){return false}if(x&&G.scrollPerpendicular&&l.parallelSizeModel.shrinkWrap&&!l.boxOptions.align.stretch&&!l.perpendicularSizeModel.shrinkWrap){if(!l.state.perpendicularDone){return false}D=true}for(v=0;v<B;++v){p=a[v];m=p.marginInfo||p.getMarginInfo();C+=m[A];if(!p[o.widthModel].calculated){c=p.getProp(A);F+=c;if(isNaN(F)){return false}}}F+=C;if(l.percentageWidths){k=j-C;if(isNaN(k)){return false}for(v=0;v<B;++v){p=a[v];if(p.percentageParallel){c=Math.ceil(k*p.percentageParallel);c=p.setWidth(c);F+=c}}}if(l.parallelSizeModel.shrinkWrap){b.availableSpace=0;b.tooNarrow=false}else{b.availableSpace=j-F;b.tooNarrow=b.availableSpace<l.flexedMinSize;if(b.tooNarrow&&Ext.getScrollbarSize()[o.height]&&G.scrollParallel&&l.state.perpendicularDone){l.state.perpendicularDone=false;for(v=0;v<B;++v){a[v].invalidate()}}}q=F;h=b.availableSpace;z=l.totalFlex;for(v=0;v<s;v++){p=y[v];u=p.flex;E=G.roundFlex((u/z)*h);E=p[r](E);q+=E;h=Math.max(0,h-E);z-=u}if(w.center){g+=h/2;if(g<0){g=0}}else{if(w.end){g+=h}}for(v=0;v<B;++v){p=a[v];m=p.marginInfo;g+=m[t];p.setProp(o.x,g);g+=m[e]+p.props[A]}q+=l.targetContext.getPaddingInfo()[A];l.state.contentWidth=q;if(D&&(l.peek(o.contentHeight)>b.targetSize[o.height])){q+=x;l[o.hasOverflowY]=true;l.target.componentLayout[o.setWidthInDom]=true;l[o.invalidateScrollY]=Ext.isIE8}l[o.setContentWidth](q);return true},calculatePerpendicular:function(u,K,z){var t=this,d=u.perpendicularSizeModel.shrinkWrap,b=z.targetSize,j=u.childItems,y=j.length,m=Math.max,l=K.height,n=K.setHeight,h=K.beforeY,s=K.y,H=t.padding,k=H[h],o=b[l]-k-H[K.afterY],E=u.boxOptions.align,p=E.stretch,q=E.stretchmax,N=E.center,M=E.bottom,G=t.constrainAlign,F=0,B=0,D=t.onBeforeConstrainInvalidateChild,A=t.onAfterConstrainInvalidateChild,a=Ext.getScrollbarSize().height,x,I,C,v,w,c,r,e,L,J,g;if(p||((N||M)&&!d)){if(isNaN(o)){return false}}if(!p&&!u.parallelSizeModel.shrinkWrap&&!u.state.parallelDone&&t.scrollParallel){return false}if(t.scrollParallel&&z.tooNarrow){if(d){J=true}else{o-=a;z.targetSize[l]-=a}}if(p){c=o}else{for(I=0;I<y;I++){r=j[I];v=(r.marginInfo||r.getMarginInfo())[l];if(!(g=r.percentagePerpendicular)){C=r.getProp(l)}else{++B;if(d){continue}else{C=g*o-v;C=r[K.setHeight](C)}}if(!d&&G&&r[K.heightModel].shrinkWrap&&C>o){r.invalidate({before:D,after:A,layout:t,childHeight:o,names:K});u.state.parallelDone=false}if(isNaN(F=m(F,C+v,r.target[K.minHeight]||0))){return false}}if(J){F+=a;u[K.hasOverflowX]=true;u.target.componentLayout[K.setHeightInDom]=true;u[K.invalidateScrollX]=Ext.isIE8}e=u.stretchMaxPartner;if(e){u.setProp("maxChildHeight",F);L=e.childItems;if(L&&L.length){F=m(F,e.getProp("maxChildHeight"));if(isNaN(F)){return false}}}u[K.setContentHeight](F+t.padding[l]+u.targetContext.getPaddingInfo()[l]);if(J){F-=a}z.maxSize=F;if(q){c=F}else{if(N||M||B){if(G){c=d?F:o}else{c=d?F:m(o,F)}c-=u.innerCtContext.getBorderInfo()[l]}}}for(I=0;I<y;I++){r=j[I];v=r.marginInfo||r.getMarginInfo();x=k+v[h];if(p){r[n](c-v[l])}else{g=r.percentagePerpendicular;if(d&&g){v=r.marginInfo||r.getMarginInfo();C=g*c-v[l];C=r.setHeight(C)}if(N){w=c-r.props[l];if(w>0){x=k+Math[t.alignRoundingMethod](w/2)}}else{if(M){x=m(0,c-x-r.props[l])}}}r.setProp(s,x)}return true},onBeforeConstrainInvalidateChild:function(b,a){var c=a.names.heightModel;if(!b[c].constrainedMin){b[c]=Ext.layout.SizeModel.calculated}},onAfterConstrainInvalidateChild:function(b,a){var c=a.names;b.setProp(c.beforeY,0);if(b[c.heightModel].calculated){b[c.setHeight](a.childHeight)}},calculateStretchMax:function(c,k,m){var l=this,h=k.height,n=k.width,g=c.childItems,a=g.length,p=m.maxSize,o=l.onBeforeStretchMaxInvalidateChild,e=l.onAfterStretchMaxInvalidateChild,q,j,d,b;for(d=0;d<a;++d){q=g[d];j=q.props;b=p-q.getMarginInfo()[h];if(b!==j[h]||q[k.heightModel].constrained){q.invalidate({before:o,after:e,layout:l,childWidth:j[n],childHeight:b,childX:j.x,childY:j.y,names:k})}}},onBeforeStretchMaxInvalidateChild:function(b,a){var c=a.names.heightModel;if(!b[c].constrainedMax){b[c]=Ext.layout.SizeModel.calculated}},onAfterStretchMaxInvalidateChild:function(d,c){var e=c.names,a=c.childHeight,b=c.childWidth;d.setProp("x",c.childX);d.setProp("y",c.childY);if(d[e.heightModel].calculated){d[e.setHeight](a)}if(d[e.widthModel].calculated){d[e.setWidth](b)}},completeLayout:function(b){var l=this,k=b.boxNames,j=b.invalidateScrollX,h=b.invalidateScrollY,c=l.overflowHandler,e,a,g,d,m;if(c){c.completeLayout(b)}if(j||h){a=l.getTarget();e=a.dom;m=e.style;if(j){g=a.getStyle("overflowX");if(g==="auto"){g=m.overflowX;m.overflowX="scroll"}else{j=false}}if(h){d=a.getStyle("overflowY");if(d==="auto"){d=m.overflowY;m.overflowY="scroll"}else{h=false}}if(j||h){e.scrollWidth;if(j){m.overflowX=g}if(h){m.overflowY=d}}}if(l.scrollParallel){l.owner.getTargetEl().dom[k.scrollLeft]=l.scrollPos}},finishedLayout:function(b){var a=this.overflowHandler;if(a){a.finishedLayout(b)}Ext.layout.Layout.prototype.finishedLayout.apply(this,arguments)},getLayoutItems:function(){var j=Ext.layout.container.Container.prototype.getLayoutItems.call(this),b=j.length,e,d,c,k,h,g,a;for(c=0;c<b;++c){if((k=j[c]).isSplitter){continue}a=k.splitter;if(k.hidden){if(a){if(!a.hidden){a.hidden=true;if(a.el){a.el.hide()}}}continue}if(a){g=a.collapseTarget==="next"}else{g=false}d=null;if(e&&h){if(h.hidden){h.hidden=false;if(h.el){h.el.show()}}if(g){d=true}}else{if(g){d=!e}}if(d!==null&&a.hidden!==d){a.hidden=d;if(a.el){a.el.setVisible(!d)}}h=!g&&a;e=k}if(e&&h&&!h.hidden){h.hidden=true;if(h.el){h.el.hide()}}return j},getScrollerEl:function(){return this.innerCt},insertSplitter:function(d,c,g,b){var e={xtype:"splitter",id:d.id+"-splitter",hidden:g,splitterFor:d,synthetic:true},a=c+((b.collapseTarget==="prev")?1:0);e[this.names.height]="100%";if(b){Ext.apply(e,b)}d.splitter=this.owner.add(a,e)},publishInnerCtSize:function(a,d){var j=this,h=a.boxNames,g=h.height,l=h.width,e=a.boxOptions.align,p=j.owner.dock,m=j.padding,k=a.state.boxPlan,c=k.targetSize,o=c[g],q=a.innerCtContext,b=(a.parallelSizeModel.shrinkWrap||(k.tooNarrow&&j.scrollParallel)?a.state.contentWidth-a.targetContext.getPaddingInfo()[l]:c[l])-(d||0),n;j.owner.tooNarrow=k.tooNarrow;if(e.stretch){n=o}else{n=k.maxSize+m[h.beforeY]+m[h.afterY]+q.getBorderInfo()[g];if(!a.perpendicularSizeModel.shrinkWrap&&(e.center||e.bottom)){n=Math.max(o,n)}}q[h.setWidth](b);q[h.setHeight](n);a.targetElContext.setWidth(a.innerCtContext.props.width-(this.vertical?0:(d||0)));if(isNaN(b+n)){j.done=false}if(k.calculatedWidth&&(p==="left"||p==="right")){a.setWidth(k.calculatedWidth,true,true)}},onAdd:function(d,a){var c=this,b=c.enableSplitters&&d.split&&!d.isButton;Ext.layout.container.Container.prototype.onAdd.apply(this,arguments);if(b){if(b===true){b={collapseTarget:"next"}}else{if(Ext.isString(b)){b={collapseTarget:b==="before"?"next":"prev"}}else{b=Ext.apply({collapseTarget:b.side==="before"?"next":"prev"},b)}}c.insertSplitter(d,a,!!d.hidden,b)}},onRemove:function(b,e){var g=this,j=g.names,a=g.owner,h=b.splitter,c=g.overflowHandler,d;Ext.layout.container.Container.prototype.onRemove.apply(this,arguments);if(h&&a.contains(h)){a.doRemove(h,true);b.splitter=null}if(c){c.onRemove(b)}if(b.layoutMarginCap===g.id){delete b.layoutMarginCap}if(!a.destroying&&!e&&b.rendered){d=b.getEl();if(d){d.setStyle(j.beforeY,"");d.setStyle(j.beforeX,"");d.setStyle("margin","")}}},applyOverflowHandler:function(b,a){var c;if(typeof b==="string"){b={type:b}}c=b.type;if(a&&a.type===b.type){delete b.type;a.setConfig(b);return a}b.layout=this;return Ext.Factory.boxOverflow(b)},getRenderTarget:function(){return this.targetEl},getElementTarget:function(){return this.innerCt},destroy:function(){var a=this;Ext.destroy(a.innerCt,a.overflowHandler);a.flexSortFn=a.innerCt=null;Ext.layout.container.Container.prototype.destroy.apply(this,arguments)},getRenderData:function(){var a=Ext.layout.container.Container.prototype.getRenderData.call(this);a.targetElCls=this.targetElCls;return a},updateVertical:function(b){var d=(b&&"vbox")||"hbox",c=this.overflowHandler,a=this.owner;Ext.apply(this,this._props[d]);if(c&&a&&a.rendered){c.setVertical(b)}},_props:{hbox:{direction:"horizontal",oppositeDirection:"vertical",horizontal:true,vertical:false,names:{beforeX:"left",beforeScrollX:"left",leftCap:"Left",afterX:"right",width:"width",contentWidth:"contentWidth",minWidth:"minWidth",maxWidth:"maxWidth",widthCap:"Width",widthModel:"widthModel",widthIndex:0,x:"x",scrollLeft:"scrollLeft",overflowX:"overflowX",hasOverflowX:"hasOverflowX",invalidateScrollX:"invalidateScrollX",parallelMargins:"lr",center:"middle",beforeY:"top",afterY:"bottom",height:"height",contentHeight:"contentHeight",minHeight:"minHeight",maxHeight:"maxHeight",heightCap:"Height",heightModel:"heightModel",heightIndex:1,y:"y",overflowY:"overflowY",hasOverflowY:"hasOverflowY",invalidateScrollY:"invalidateScrollY",perpendicularMargins:"tb",getWidth:"getWidth",getHeight:"getHeight",setWidth:"setWidth",setHeight:"setHeight",gotWidth:"gotWidth",gotHeight:"gotHeight",setContentWidth:"setContentWidth",setContentHeight:"setContentHeight",setWidthInDom:"setWidthInDom",setHeightInDom:"setHeightInDom",getScrollLeft:"getScrollLeft",setScrollLeft:"setScrollLeft",scrollTo:"scrollTo"},sizePolicy:{flex:{"":{readsWidth:0,readsHeight:1,setsWidth:1,setsHeight:0},stretch:{readsWidth:0,readsHeight:0,setsWidth:1,setsHeight:1},stretchmax:{readsWidth:0,readsHeight:1,setsWidth:1,setsHeight:1}},"":{readsWidth:1,readsHeight:1,setsWidth:0,setsHeight:0},stretch:{readsWidth:1,readsHeight:0,setsWidth:0,setsHeight:1},stretchmax:{readsWidth:1,readsHeight:1,setsWidth:0,setsHeight:1}}},vbox:{direction:"vertical",oppositeDirection:"horizontal",horizontal:false,vertical:true,names:{beforeX:"top",beforeScrollX:"top",leftCap:"Top",afterX:"bottom",width:"height",contentWidth:"contentHeight",minWidth:"minHeight",maxWidth:"maxHeight",widthCap:"Height",widthModel:"heightModel",widthIndex:1,x:"y",scrollLeft:"scrollTop",overflowX:"overflowY",hasOverflowX:"hasOverflowY",invalidateScrollX:"invalidateScrollY",parallelMargins:"tb",center:"center",beforeY:"left",afterY:"right",height:"width",contentHeight:"contentWidth",minHeight:"minWidth",maxHeight:"maxWidth",heightCap:"Width",heightModel:"widthModel",heightIndex:0,y:"x",overflowY:"overflowX",hasOverflowY:"hasOverflowX",invalidateScrollY:"invalidateScrollX",perpendicularMargins:"lr",getWidth:"getHeight",getHeight:"getWidth",setWidth:"setHeight",setHeight:"setWidth",gotWidth:"gotHeight",gotHeight:"gotWidth",setContentWidth:"setContentHeight",setContentHeight:"setContentWidth",setWidthInDom:"setHeightInDom",setHeightInDom:"setWidthInDom",getScrollLeft:"getScrollTop",setScrollLeft:"setScrollTop",scrollTo:"scrollTo"},sizePolicy:{flex:{"":{readsWidth:1,readsHeight:0,setsWidth:0,setsHeight:1},stretch:{readsWidth:0,readsHeight:0,setsWidth:1,setsHeight:1},stretchmax:{readsWidth:1,readsHeight:0,setsWidth:1,setsHeight:1}},"":{readsWidth:1,readsHeight:1,setsWidth:0,setsHeight:0},stretch:{readsWidth:0,readsHeight:1,setsWidth:1,setsHeight:0},stretchmax:{readsWidth:1,readsHeight:1,setsWidth:1,setsHeight:0}}}}},1,0,0,0,["layout.box"],0,[Ext.layout.container,"Box",Ext.layout,"BoxLayout"],0));(Ext.cmd.derive("Ext.layout.container.HBox",Ext.layout.container.Box,{alternateClassName:"Ext.layout.HBoxLayout",type:"hbox",vertical:false},0,0,0,0,["layout.hbox"],0,[Ext.layout.container,"HBox",Ext.layout,"HBoxLayout"],0));(Ext.cmd.derive("Ext.layout.container.VBox",Ext.layout.container.Box,{alternateClassName:"Ext.layout.VBoxLayout",type:"vbox",vertical:true},0,0,0,0,["layout.vbox"],0,[Ext.layout.container,"VBox",Ext.layout,"VBoxLayout"],0));(Ext.cmd.derive("Ext.toolbar.Toolbar",Ext.container.Container,{alternateClassName:"Ext.Toolbar",isToolbar:true,baseCls:Ext.baseCSSPrefix+"toolbar",ariaRole:"toolbar",defaultType:"button",layout:undefined,vertical:false,enableOverflow:false,overflowHandler:null,defaultButtonUI:"default-toolbar",defaultFieldUI:"default",defaultFooterButtonUI:"default",defaultFooterFieldUI:"default",trackMenus:true,itemCls:Ext.baseCSSPrefix+"toolbar-item",statics:{shortcuts:{"-":"tbseparator"," ":"tbspacer"},shortcutsHV:{0:{"->":{xtype:"tbfill",height:0}},1:{"->":{xtype:"tbfill",width:0}}}},initComponent:function(){var b=this,a=b.layout;if(b.dock==="right"||b.dock==="left"){b.vertical=true}b.layout=a=Ext.applyIf(Ext.isString(a)?{type:a}:a||{},{type:b.vertical?"vbox":"hbox",align:b.vertical?"stretchmax":"middle"});if(b.overflowHandler){a.overflowHandler=b.overflowHandler}else{if(b.enableOverflow){a.overflowHandler="menu"}}if(b.vertical){b.addClsWithUI("vertical")}if(b.ui==="footer"){b.ignoreBorderManagement=true}Ext.container.Container.prototype.initComponent.call(this)},getRefItems:function(a){var e=this,b=Ext.container.Container.prototype.getRefItems.apply(this,arguments),d=e.layout,c;if(a&&(e.enableOverflow||(e.overflowHandler==="menu"))){c=d.overflowHandler;if(c&&c.menu){b=b.concat(c.menu.getRefItems(a))}}return b},lookupComponent:function(e){var d=arguments;if(typeof e==="string"){var b=Ext.toolbar.Toolbar,a=b.shortcutsHV[this.vertical?1:0][e]||b.shortcuts[e];if(typeof a==="string"){e={xtype:a}}else{if(a){e=Ext.apply({},a)}else{e={xtype:"tbtext",text:e}}}this.applyDefaults(e);d=[e]}return Ext.container.Container.prototype.lookupComponent.apply(this,d)},onBeforeAdd:function(b){var c=this,d=c.ui==="footer",a=d?c.defaultFooterButtonUI:c.defaultButtonUI;if(b.isSegmentedButton){if(b.getDefaultUI()==="default"&&!b.config.hasOwnProperty("defaultUI")){b.setDefaultUI(a)}}else{if(b.ui==="default"&&!b.hasOwnProperty("ui")){if(b.isButton){b.ui=a}else{if(b.isFormField){b.ui=d?c.defaultFooterFieldUI:c.defaultFieldUI}}}}if(b instanceof Ext.toolbar.Separator){b.setUI((c.vertical)?"vertical":"horizontal")}Ext.container.Container.prototype.onBeforeAdd.apply(this,arguments)},onAdd:function(a){Ext.container.Container.prototype.onAdd.apply(this,arguments);this.trackMenu(a)},onRemove:function(a){Ext.container.Container.prototype.onRemove.apply(this,arguments);this.trackMenu(a,true)},privates:{applyDefaults:function(a){if(!Ext.isString(a)){a=this.callParent(arguments)}return a},trackMenu:function(c,a){if(this.trackMenus&&c.menu){var d=a?"mun":"mon",b=this;b[d](c,"mouseover",b.onButtonOver,b);b[d](c,"menushow",b.onButtonMenuShow,b);b[d](c,"menuhide",b.onButtonMenuHide,b)}},getChildItemsToDisable:function(){return this.items.getRange()},onButtonOver:function(a){if(this.activeMenuBtn&&this.activeMenuBtn!==a){this.activeMenuBtn.hideMenu();a.showMenu();this.activeMenuBtn=a}},onButtonMenuShow:function(a){this.activeMenuBtn=a},onButtonMenuHide:function(a){delete this.activeMenuBtn}}},0,["toolbar"],["box","component","container","toolbar"],{box:true,component:true,container:true,toolbar:true},["widget.toolbar"],0,[Ext.toolbar,"Toolbar",Ext,"Toolbar"],0));(Ext.cmd.derive("Ext.dd.DragDrop",Ext.Base,{constructor:function(c,a,b){if(c){this.init(c,a,b)}},id:null,config:null,dragElId:null,handleElId:null,invalidHandleTypes:null,invalidHandleIds:null,invalidHandleClasses:null,startPageX:0,startPageY:0,groups:null,locked:false,lock:function(){this.locked=true},moveOnly:false,unlock:function(){this.locked=false},isTarget:true,padding:null,_domRef:null,__ygDragDrop:true,constrainX:false,constrainY:false,minX:0,maxX:0,minY:0,maxY:0,maintainOffset:false,xTicks:null,yTicks:null,primaryButtonOnly:true,available:false,hasOuterHandles:false,triggerEvent:"mousedown",b4StartDrag:function(a,b){},startDrag:function(a,b){},b4Drag:function(a){},onDrag:function(a){},onDragEnter:function(a,b){},b4DragOver:function(a){},onDragOver:function(a,b){},b4DragOut:function(a){},onDragOut:function(a,b){},b4DragDrop:function(a){},onDragDrop:function(a,b){},onInvalidDrop:function(a){},b4EndDrag:function(a){},endDrag:function(a){},b4MouseDown:function(a){},onMouseDown:function(a){},onMouseUp:function(a){},onAvailable:function(){},defaultPadding:{left:0,right:0,top:0,bottom:0},constrainTo:function(e,b,m){if(Ext.isNumber(b)){b={left:b,right:b,top:b,bottom:b}}b=b||this.defaultPadding;var h=Ext.get(this.getEl()).getBox(),n=Ext.get(e),l=n.getScroll(),g,j=n.dom,k,d,a;if(j==document.body){g={x:l.left,y:l.top,width:Ext.Element.getViewportWidth(),height:Ext.Element.getViewportHeight()}}else{k=n.getXY();g={x:k[0],y:k[1],width:j.clientWidth,height:j.clientHeight}}d=h.y-g.y;a=h.x-g.x;this.resetConstraints();this.setXConstraint(a-(b.left||0),g.width-a-h.width-(b.right||0),this.xTickSize);this.setYConstraint(d-(b.top||0),g.height-d-h.height-(b.bottom||0),this.yTickSize)},getEl:function(){if(!this._domRef){this._domRef=Ext.getDom(this.id)}return this._domRef},getDragEl:function(){return Ext.getDom(this.dragElId)},init:function(d,a,b){var c=this;c.el=c.el||Ext.get(d);c.initTarget(d,a,b);Ext.get(c.id).on(c.triggerEvent,c.handleMouseDown,c)},initTarget:function(c,a,b){this.config=b||{};this.DDMInstance=Ext.dd.DragDropManager;this.groups={};if(typeof c!=="string"){c=Ext.id(c)}this.id=c;this.addToGroup((a)?a:"default");this.handleElId=c;this.setDragElId(c);this.invalidHandleTypes={A:"A"};this.invalidHandleIds={};this.invalidHandleClasses=[];this.applyConfig();this.handleOnAvailable()},applyConfig:function(){this.padding=this.config.padding||[0,0,0,0];this.isTarget=(this.config.isTarget!==false);this.maintainOffset=(this.config.maintainOffset);this.primaryButtonOnly=(this.config.primaryButtonOnly!==false)},handleOnAvailable:function(){this.available=true;this.resetConstraints();this.onAvailable()},setPadding:function(c,a,d,b){if(!a&&0!==a){this.padding=[c,c,c,c]}else{if(!d&&0!==d){this.padding=[c,a,c,a]}else{this.padding=[c,a,d,b]}}},setInitPosition:function(d,c){var e=this.getEl(),b,a,g;if(!this.DDMInstance.verifyEl(e)){return}b=d||0;a=c||0;g=Ext.fly(e).getXY();this.initPageX=g[0]-b;this.initPageY=g[1]-a;this.lastPageX=g[0];this.lastPageY=g[1];this.setStartPosition(g)},setStartPosition:function(b){var a=b||Ext.fly(this.getEl()).getXY();this.deltaSetXY=null;this.startPageX=a[0];this.startPageY=a[1]},addToGroup:function(a){this.groups[a]=true;this.DDMInstance.regDragDrop(this,a)},removeFromGroup:function(a){if(this.groups[a]){delete this.groups[a]}this.DDMInstance.removeDDFromGroup(this,a)},setDragElId:function(a){this.dragElId=a},setHandleElId:function(a){if(typeof a!=="string"){a=Ext.id(a)}this.handleElId=a;this.DDMInstance.regHandle(this.id,a)},setOuterHandleElId:function(a){if(typeof a!=="string"){a=Ext.id(a)}Ext.get(a).on(this.triggerEvent,this.handleMouseDown,this);this.setHandleElId(a);this.hasOuterHandles=true},unreg:function(){var b=this,a;if(b._domRef){a=Ext.fly(b.id);if(a){a.un(b.triggerEvent,b.handleMouseDown,b)}}b._domRef=null;b.DDMInstance._remove(b,b.autoGroup)},destroy:function(){this.unreg();this.isDestroyed=true},isLocked:function(){return(this.DDMInstance.isLocked()||this.locked)},handleMouseDown:function(c,b){var a=this;if((a.primaryButtonOnly&&c.button!=0)||a.isLocked()){return}a.DDMInstance.refreshCache(a.groups);if(a.hasOuterHandles||a.DDMInstance.isOverTarget(c.getPoint(),a)){if(a.clickValidator(c)){a.setStartPosition();a.b4MouseDown(c);a.onMouseDown(c);a.DDMInstance.handleMouseDown(c,a);a.DDMInstance.stopEvent(c)}}},clickValidator:function(b){var a=b.getTarget();return(this.isValidHandleChild(a)&&(this.id==this.handleElId||this.DDMInstance.handleWasClicked(a,this.id)))},addInvalidHandleType:function(a){var b=a.toUpperCase();this.invalidHandleTypes[b]=b},addInvalidHandleId:function(a){if(typeof a!=="string"){a=Ext.id(a)}this.invalidHandleIds[a]=a},addInvalidHandleClass:function(a){this.invalidHandleClasses.push(a)},removeInvalidHandleType:function(a){var b=a.toUpperCase();delete this.invalidHandleTypes[b]},removeInvalidHandleId:function(a){if(typeof a!=="string"){a=Ext.id(a)}delete this.invalidHandleIds[a]},removeInvalidHandleClass:function(b){for(var c=0,a=this.invalidHandleClasses.length;c<a;++c){if(this.invalidHandleClasses[c]==b){delete this.invalidHandleClasses[c]}}},isValidHandleChild:function(d){var c=true,h,b,a;try{h=d.nodeName.toUpperCase()}catch(g){h=d.nodeName}c=c&&!this.invalidHandleTypes[h];c=c&&!this.invalidHandleIds[d.id];for(b=0,a=this.invalidHandleClasses.length;c&&b<a;++b){c=!Ext.fly(d).hasCls(this.invalidHandleClasses[b])}return c},setXTicks:function(d,a){this.xTicks=[];this.xTickSize=a;var c={},b;for(b=this.initPageX;b>=this.minX;b=b-a){if(!c[b]){this.xTicks[this.xTicks.length]=b;c[b]=true}}for(b=this.initPageX;b<=this.maxX;b=b+a){if(!c[b]){this.xTicks[this.xTicks.length]=b;c[b]=true}}Ext.Array.sort(this.xTicks,this.DDMInstance.numericSort)},setYTicks:function(d,a){this.yTicks=[];this.yTickSize=a;var c={},b;for(b=this.initPageY;b>=this.minY;b=b-a){if(!c[b]){this.yTicks[this.yTicks.length]=b;c[b]=true}}for(b=this.initPageY;b<=this.maxY;b=b+a){if(!c[b]){this.yTicks[this.yTicks.length]=b;c[b]=true}}Ext.Array.sort(this.yTicks,this.DDMInstance.numericSort)},setXConstraint:function(c,b,a){this.leftConstraint=c;this.rightConstraint=b;this.minX=this.initPageX-c;this.maxX=this.initPageX+b;if(a){this.setXTicks(this.initPageX,a)}this.constrainX=true},clearConstraints:function(){this.constrainX=false;this.constrainY=false;this.clearTicks()},clearTicks:function(){this.xTicks=null;this.yTicks=null;this.xTickSize=0;this.yTickSize=0},setYConstraint:function(a,c,b){this.topConstraint=a;this.bottomConstraint=c;this.minY=this.initPageY-a;this.maxY=this.initPageY+c;if(b){this.setYTicks(this.initPageY,b)}this.constrainY=true},resetConstraints:function(){if(this.initPageX||this.initPageX===0){var b=(this.maintainOffset)?this.lastPageX-this.initPageX:0,a=(this.maintainOffset)?this.lastPageY-this.initPageY:0;this.setInitPosition(b,a)}else{this.setInitPosition()}if(this.constrainX){this.setXConstraint(this.leftConstraint,this.rightConstraint,this.xTickSize)}if(this.constrainY){this.setYConstraint(this.topConstraint,this.bottomConstraint,this.yTickSize)}},getTick:function(h,d){if(!d){return h}else{if(d[0]>=h){return d[0]}else{var b,a,c,g,e;for(b=0,a=d.length;b<a;++b){c=b+1;if(d[c]&&d[c]>=h){g=h-d[b];e=d[c]-h;return(e>g)?d[b]:d[c]}}return d[d.length-1]}}},toString:function(){return("DragDrop "+this.id)}},3,0,0,0,0,0,[Ext.dd,"DragDrop"],0));(Ext.cmd.derive("Ext.dd.DD",Ext.dd.DragDrop,{constructor:function(c,a,b){if(c){this.init(c,a,b)}},scroll:true,autoOffset:function(c,b){var a=c-this.startPageX,d=b-this.startPageY;this.setDelta(a,d)},setDelta:function(b,a){this.deltaX=b;this.deltaY=a},setDragElPos:function(c,b){var a=this.getDragEl();this.alignElWithMouse(a,c,b)},alignElWithMouse:function(b,e,c){var g=this.getTargetCoord(e,c),d=b.dom?b:Ext.fly(b,"_dd"),m=d.getSize(),j=Ext.Element,k,a,l,h;if(!this.deltaSetXY){k=this.cachedViewportSize={width:j.getDocumentWidth(),height:j.getDocumentHeight()};a=[Math.max(0,Math.min(g.x,k.width-m.width)),Math.max(0,Math.min(g.y,k.height-m.height))];d.setXY(a);l=this.getLocalX(d);h=d.getLocalY();this.deltaSetXY=[l-g.x,h-g.y]}else{k=this.cachedViewportSize;this.setLocalXY(d,Math.max(0,Math.min(g.x+this.deltaSetXY[0],k.width-m.width)),Math.max(0,Math.min(g.y+this.deltaSetXY[1],k.height-m.height)))}this.cachePosition(g.x,g.y);this.autoScroll(g.x,g.y,b.offsetHeight,b.offsetWidth);return g},cachePosition:function(b,a){if(b){this.lastPageX=b;this.lastPageY=a}else{var c=Ext.fly(this.getEl()).getXY();this.lastPageX=c[0];this.lastPageY=c[1]}},autoScroll:function(m,l,e,n){if(this.scroll){var o=Ext.Element.getViewportHeight(),b=Ext.Element.getViewportWidth(),q=this.DDMInstance.getScrollTop(),d=this.DDMInstance.getScrollLeft(),k=e+l,p=n+m,j=(o+q-l-this.deltaY),g=(b+d-m-this.deltaX),c=40,a=(document.all)?80:30;if(k>o&&j<c){window.scrollTo(d,q+a)}if(l<q&&q>0&&l-q<c){window.scrollTo(d,q-a)}if(p>b&&g<c){window.scrollTo(d+a,q)}if(m<d&&d>0&&m-d<c){window.scrollTo(d-a,q)}}},getTargetCoord:function(c,b){var a=c-this.deltaX,d=b-this.deltaY;if(this.constrainX){if(a<this.minX){a=this.minX}if(a>this.maxX){a=this.maxX}}if(this.constrainY){if(d<this.minY){d=this.minY}if(d>this.maxY){d=this.maxY}}a=this.getTick(a,this.xTicks);d=this.getTick(d,this.yTicks);return{x:a,y:d}},applyConfig:function(){Ext.dd.DragDrop.prototype.applyConfig.call(this);this.scroll=(this.config.scroll!==false)},b4MouseDown:function(b){var a=b.getXY();this.autoOffset(a[0],a[1])},b4Drag:function(b){var a=b.getXY();this.setDragElPos(a[0],a[1])},toString:function(){return("DD "+this.id)},getLocalX:function(a){return a.getLocalX()},setLocalXY:function(b,a,c){b.setLocalXY(a,c)}},3,0,0,0,0,0,[Ext.dd,"DD"],0));(Ext.cmd.derive("Ext.dd.DDProxy",Ext.dd.DD,{statics:{dragElId:"ygddfdiv"},constructor:function(c,a,b){if(c){this.init(c,a,b);this.initFrame()}},resizeFrame:true,centerFrame:false,createFrame:function(){var b=this,a=document.body,d,c;if(!a||!a.firstChild){setTimeout(function(){b.createFrame()},50);return}d=this.getDragEl();if(!d){d=document.createElement("div");d.id=this.dragElId;d.setAttribute("role","presentation");c=d.style;c.position="absolute";c.visibility="hidden";c.cursor="move";c.border="2px solid #aaa";c.zIndex=999;a.insertBefore(d,a.firstChild)}},initFrame:function(){this.createFrame()},applyConfig:function(){Ext.dd.DD.prototype.applyConfig.call(this);this.resizeFrame=(this.config.resizeFrame!==false);this.centerFrame=(this.config.centerFrame);this.setDragElId(this.config.dragElId||Ext.dd.DDProxy.dragElId)},showFrame:function(e,d){var c=this.getEl(),a=this.getDragEl(),b=a.style;this._resizeProxy();if(this.centerFrame){this.setDelta(Math.round(parseInt(b.width,10)/2),Math.round(parseInt(b.height,10)/2))}this.setDragElPos(e,d);Ext.fly(a).show()},_resizeProxy:function(){if(this.resizeFrame){var a=this.getEl();Ext.fly(this.getDragEl()).setSize(a.offsetWidth,a.offsetHeight)}},b4MouseDown:function(c){var b=c.getXY(),a=b[0],d=b[1];this.autoOffset(a,d);this.setDragElPos(a,d)},b4StartDrag:function(a,b){this.showFrame(a,b)},b4EndDrag:function(a){Ext.fly(this.getDragEl()).hide()},endDrag:function(c){var b=this.getEl(),a=this.getDragEl();a.style.visibility="";this.beforeMove();b.style.visibility="hidden";Ext.dd.DDM.moveToEl(b,a);a.style.visibility="hidden";b.style.visibility="";this.afterDrag()},beforeMove:function(){},afterDrag:function(){},toString:function(){return("DDProxy "+this.id)}},3,0,0,0,0,0,[Ext.dd,"DDProxy"],0));(Ext.cmd.derive("Ext.dd.StatusProxy",Ext.Component,{animRepair:false,childEls:["ghost"],renderTpl:['<div class="'+Ext.baseCSSPrefix+'dd-drop-icon" role="presentation"></div><div id="{id}-ghost" data-ref="ghost" class="'+Ext.baseCSSPrefix+'dd-drag-ghost" role="presentation"></div>'],repairCls:Ext.baseCSSPrefix+"dd-drag-repair",ariaRole:"presentation",constructor:function(a){var b=this;a=a||{};Ext.apply(b,{hideMode:"visibility",hidden:true,floating:true,id:b.id||Ext.id(),cls:Ext.baseCSSPrefix+"dd-drag-proxy "+this.dropNotAllowed,shadow:a.shadow||false,renderTo:Ext.getDetachedBody()});Ext.Component.prototype.constructor.apply(this,arguments);this.dropStatus=this.dropNotAllowed},dropAllowed:Ext.baseCSSPrefix+"dd-drop-ok",dropNotAllowed:Ext.baseCSSPrefix+"dd-drop-nodrop",setStatus:function(a){a=a||this.dropNotAllowed;if(this.dropStatus!=a){this.el.replaceCls(this.dropStatus,a);this.dropStatus=a}},reset:function(b){var c=this,a=Ext.baseCSSPrefix+"dd-drag-proxy ";c.el.replaceCls(a+c.dropAllowed,a+c.dropNotAllowed);c.dropStatus=c.dropNotAllowed;if(b){c.ghost.setHtml("")}},update:function(a){if(typeof a=="string"){this.ghost.setHtml(a)}else{this.ghost.setHtml("");a.style.margin="0";this.ghost.dom.appendChild(a)}var b=this.ghost.dom.firstChild;if(b){Ext.fly(b).setStyle("float","none")}},getGhost:function(){return this.ghost},hide:function(a){Ext.Component.prototype.hide.call(this);if(a){this.reset(true)}},stop:function(){if(this.anim&&this.anim.isAnimated&&this.anim.isAnimated()){this.anim.stop()}},sync:function(){this.el.sync()},repair:function(c,d,a){var b=this;b.callback=d;b.scope=a;if(c&&b.animRepair!==false){b.el.addCls(b.repairCls);b.el.hideUnders(true);b.anim=b.el.animate({duration:b.repairDuration||500,easing:"ease-out",to:{x:c[0],y:c[1]},stopAnimation:true,callback:b.afterRepair,scope:b})}else{b.afterRepair()}},afterRepair:function(){var a=this;a.hide(true);a.el.removeCls(a.repairCls);if(typeof a.callback=="function"){a.callback.call(a.scope||a)}delete a.callback;delete a.scope}},1,0,["box","component"],{box:true,component:true},0,0,[Ext.dd,"StatusProxy"],0));(Ext.cmd.derive("Ext.dd.DragSource",Ext.dd.DDProxy,{dropAllowed:Ext.baseCSSPrefix+"dd-drop-ok",dropNotAllowed:Ext.baseCSSPrefix+"dd-drop-nodrop",animRepair:true,repairHighlightColor:"c3daf9",constructor:function(b,a){this.el=Ext.get(b);if(!this.dragData){this.dragData={}}Ext.apply(this,a);if(!this.proxy){this.proxy=new Ext.dd.StatusProxy({id:this.el.id+"-drag-status-proxy",animRepair:this.animRepair})}Ext.dd.DDProxy.prototype.constructor.apply(this,[this.el.dom,this.ddGroup||this.group,{dragElId:this.proxy.id,resizeFrame:false,isTarget:false,scroll:this.scroll===true}]);this.dragging=false},getDragData:function(a){return this.dragData},onDragEnter:function(c,d){var b=Ext.dd.DragDropManager.getDDById(d),a;this.cachedTarget=b;if(this.beforeDragEnter(b,c,d)!==false){if(b.isNotifyTarget){a=b.notifyEnter(this,c,this.dragData);this.proxy.setStatus(a)}else{this.proxy.setStatus(this.dropAllowed)}if(this.afterDragEnter){this.afterDragEnter(b,c,d)}}},beforeDragEnter:function(b,a,c){return true},onDragOver:function(c,d){var b=this.cachedTarget||Ext.dd.DragDropManager.getDDById(d),a;if(this.beforeDragOver(b,c,d)!==false){if(b.isNotifyTarget){a=b.notifyOver(this,c,this.dragData);this.proxy.setStatus(a)}if(this.afterDragOver){this.afterDragOver(b,c,d)}}},beforeDragOver:function(b,a,c){return true},onDragOut:function(b,c){var a=this.cachedTarget||Ext.dd.DragDropManager.getDDById(c);if(this.beforeDragOut(a,b,c)!==false){if(a.isNotifyTarget){a.notifyOut(this,b,this.dragData)}this.proxy.reset();if(this.afterDragOut){this.afterDragOut(a,b,c)}}this.cachedTarget=null},beforeDragOut:function(b,a,c){return true},onDragDrop:function(b,c){var a=this.cachedTarget||Ext.dd.DragDropManager.getDDById(c);if(this.beforeDragDrop(a,b,c)!==false){if(a.isNotifyTarget){if(a.notifyDrop(this,b,this.dragData)!==false){this.onValidDrop(a,b,c)}else{this.onInvalidDrop(a,b,c)}}else{this.onValidDrop(a,b,c)}if(this.afterDragDrop){this.afterDragDrop(a,b,c)}}delete this.cachedTarget},beforeDragDrop:function(b,a,c){return true},onValidDrop:function(b,a,c){this.hideProxy();if(this.afterValidDrop){this.afterValidDrop(b,a,c)}},getRepairXY:function(b,a){return this.el.getXY()},onInvalidDrop:function(c,b,d){var a=this;if(!b){b=c;c=null;d=b.getTarget().id}if(a.beforeInvalidDrop(c,b,d)!==false){if(a.cachedTarget){if(a.cachedTarget.isNotifyTarget){a.cachedTarget.notifyOut(a,b,a.dragData)}a.cacheTarget=null}a.proxy.repair(a.getRepairXY(b,a.dragData),a.afterRepair,a);if(a.afterInvalidDrop){a.afterInvalidDrop(b,d)}}},afterRepair:function(){var a=this;if(Ext.enableFx){a.el.highlight(a.repairHighlightColor)}a.dragging=false},beforeInvalidDrop:function(b,a,c){return true},handleMouseDown:function(b){if(this.dragging){return}var a=this.getDragData(b);if(a&&this.onBeforeDrag(a,b)!==false){this.dragData=a;this.proxy.stop();Ext.dd.DragDrop.prototype.handleMouseDown.apply(this,arguments)}},onBeforeDrag:function(a,b){return true},onStartDrag:Ext.emptyFn,alignElWithMouse:function(){this.proxy.ensureAttachedToBody(true);return Ext.dd.DD.prototype.alignElWithMouse.apply(this,arguments)},startDrag:function(a,b){this.proxy.reset();this.proxy.hidden=false;this.dragging=true;this.proxy.update("");this.onInitDrag(a,b);this.proxy.show()},onInitDrag:function(a,c){var b=this.el.dom.cloneNode(true);b.id=Ext.id();this.proxy.update(b);this.onStartDrag(a,c);return true},getProxy:function(){return this.proxy},hideProxy:function(){this.proxy.hide();this.proxy.reset(true);this.dragging=false},triggerCacheRefresh:function(){Ext.dd.DDM.refreshCache(this.groups)},b4EndDrag:function(a){},endDrag:function(a){this.onEndDrag(this.dragData,a)},onEndDrag:function(a,b){},autoOffset:function(a,b){this.setDelta(-12,-20)},destroy:function(){Ext.dd.DragDrop.prototype.destroy.call(this);Ext.destroy(this.proxy)}},1,0,0,0,0,0,[Ext.dd,"DragSource"],0));(Ext.cmd.derive("Ext.panel.Proxy",Ext.Base,{alternateClassName:"Ext.dd.PanelProxy",moveOnDrag:true,constructor:function(a,b){var c=this;c.panel=a;c.id=c.panel.id+"-ddproxy";Ext.apply(c,b)},insertProxy:true,setStatus:Ext.emptyFn,reset:Ext.emptyFn,update:Ext.emptyFn,stop:Ext.emptyFn,sync:Ext.emptyFn,getEl:function(){return this.ghost.el},getGhost:function(){return this.ghost},getProxy:function(){return this.proxy},hide:function(){var a=this;if(a.ghost){if(a.proxy){a.proxy.destroy();delete a.proxy}a.panel.unghost(null,a.moveOnDrag);delete a.ghost}},show:function(){var b=this,a;if(!b.ghost){a=b.panel.getSize();b.panel.el.setVisibilityMode(Ext.Element.DISPLAY);b.ghost=b.panel.ghost();if(b.insertProxy){b.proxy=b.panel.el.insertSibling({role:"presentation",cls:Ext.baseCSSPrefix+"panel-dd-spacer"});b.proxy.setSize(a)}}},repair:function(b,c,a){this.hide();Ext.callback(c,a||this)},moveProxy:function(a,b){if(this.proxy){a.insertBefore(this.proxy.dom,b)}}},1,0,0,0,0,0,[Ext.panel,"Proxy",Ext.dd,"PanelProxy"],0));(Ext.cmd.derive("Ext.panel.DD",Ext.dd.DragSource,{constructor:function(b,a){var c=this;c.panel=b;c.dragData={panel:b};c.panelProxy=new Ext.panel.Proxy(b,a);c.proxy=c.panelProxy.proxy;Ext.dd.DragSource.prototype.constructor.apply(this,[b.el,a]);c.setupEl(b)},setupEl:function(a){var c=this,d=a.header,b=a.body;if(d){c.setHandleElId(d.id);b=d.el}if(b){b.setStyle("cursor","move");c.scroll=false}else{a.on("boxready",c.setupEl,c,{single:true})}},showFrame:Ext.emptyFn,startDrag:Ext.emptyFn,b4StartDrag:function(a,b){this.panelProxy.show()},b4MouseDown:function(c){var b=c.getXY(),a=b[0],d=b[1];this.autoOffset(a,d)},onInitDrag:function(a,b){this.onStartDrag(a,b);return true},createFrame:Ext.emptyFn,getDragEl:function(b){var a=this.panelProxy.ghost;if(a){return a.el.dom}},endDrag:function(a){this.panelProxy.hide();this.panel.saveState()},autoOffset:function(a,b){a-=this.startPageX;b-=this.startPageY;this.setDelta(a,b)},onInvalidDrop:function(c,b,d){var a=this;if(a.beforeInvalidDrop(c,b,d)!==false){if(a.cachedTarget){if(a.cachedTarget.isNotifyTarget){a.cachedTarget.notifyOut(a,b,a.dragData)}a.cacheTarget=null}if(a.afterInvalidDrop){a.afterInvalidDrop(b,d)}}}},1,0,0,0,0,0,[Ext.panel,"DD"],0));(Ext.cmd.derive("Ext.layout.component.Dock",Ext.layout.component.Component,{alternateClassName:"Ext.layout.component.AbstractDock",type:"dock",horzAxisProps:{name:"horz",oppositeName:"vert",dockBegin:"left",dockEnd:"right",horizontal:true,marginBegin:"margin-left",maxSize:"maxWidth",minSize:"minWidth",pos:"x",setSize:"setWidth",shrinkWrapDock:"shrinkWrapDockWidth",size:"width",sizeModel:"widthModel"},vertAxisProps:{name:"vert",oppositeName:"horz",dockBegin:"top",dockEnd:"bottom",horizontal:false,marginBegin:"margin-top",maxSize:"maxHeight",minSize:"minHeight",pos:"y",setSize:"setHeight",shrinkWrapDock:"shrinkWrapDockHeight",size:"height",sizeModel:"heightModel"},initializedBorders:-1,horizontalCollapsePolicy:{width:true,x:true},verticalCollapsePolicy:{height:true,y:true},finishRender:function(){var b=this,c,a;Ext.layout.Layout.prototype.finishRender.call(this);c=b.getRenderTarget();a=b.getDockedItems();b.finishRenderItems(c,a)},isItemBoxParent:function(a){return true},isItemShrinkWrap:function(a){return true},noBorderClasses:[Ext.baseCSSPrefix+"docked-noborder-top",Ext.baseCSSPrefix+"docked-noborder-right",Ext.baseCSSPrefix+"docked-noborder-bottom",Ext.baseCSSPrefix+"docked-noborder-left"],noBorderClassesSides:{top:Ext.baseCSSPrefix+"docked-noborder-top",right:Ext.baseCSSPrefix+"docked-noborder-right",bottom:Ext.baseCSSPrefix+"docked-noborder-bottom",left:Ext.baseCSSPrefix+"docked-noborder-left"},borderWidthProps:{top:"border-top-width",right:"border-right-width",bottom:"border-bottom-width",left:"border-left-width"},_itemCls:Ext.baseCSSPrefix+"docked",handleItemBorders:function(){var m=this,a=m.owner,l,q,h=m.lastDockedItems,g=m.borders,b=a.dockedItems.generation,c=m.noBorderClassesSides,n=m.borderWidthProps,e,k,p,o,j,d=m.collapsed;if(m.initializedBorders==b||(a.border&&!a.manageBodyBorders)){return}m.initializedBorders=b;m.collapsed=false;m.lastDockedItems=q=m.getLayoutItems();m.collapsed=d;l={top:[],right:[],bottom:[],left:[]};for(e=0,k=q.length;e<k;e++){p=q[e];o=p.dock;if(p.ignoreBorderManagement){continue}if(!l[o].satisfied){l[o].push(p);l[o].satisfied=true}if(!l.top.satisfied&&o!=="bottom"){l.top.push(p)}if(!l.right.satisfied&&o!=="left"){l.right.push(p)}if(!l.bottom.satisfied&&o!=="top"){l.bottom.push(p)}if(!l.left.satisfied&&o!=="right"){l.left.push(p)}}if(h){for(e=0,k=h.length;e<k;e++){p=h[e];if(!p.isDestroyed&&!p.ignoreBorderManagement&&!a.manageBodyBorders){p.removeCls(m.noBorderClasses)}}}if(g){for(j in g){if(a.manageBodyBorders&&g[j].satisfied){a.setBodyStyle(n[j],"")}}}for(j in l){k=l[j].length;if(!a.manageBodyBorders){for(e=0;e<k;e++){l[j][e].addCls(c[j])}if((!l[j].satisfied&&!a.bodyBorder)||a.bodyBorder===false){a.addBodyCls(c[j])}else{a.removeBodyCls(c[j])}}else{if(l[j].satisfied){a.setBodyStyle(n[j],"1px")}}}m.borders=l},beforeLayoutCycle:function(g){var c=this,b=c.owner,h=c.sizeModels.shrinkWrap,e=b.shrinkWrapDock,d,a;if(b.collapsed){if(b.collapsedVertical()){a=true;g.measureDimensions=1}else{d=true;g.measureDimensions=2}}g.collapsedVert=a;g.collapsedHorz=d;if(a){g.heightModel=h}else{if(d){g.widthModel=h}}e=e===true?3:(e||0);g.shrinkWrapDockHeight=(e&1)&&g.heightModel.shrinkWrap;g.shrinkWrapDockWidth=(e&2)&&g.widthModel.shrinkWrap},beginLayout:function(d){var l=this,c=l.owner,p=l.getLayoutItems(),b=d.context,g=p.length,k=l.lastCollapsedState,m,j,o,a,e,h,n;Ext.layout.Layout.prototype.beginLayout.apply(this,arguments);h=c.getCollapsed();if(h!==k&&k!==undefined){if(l.owner.collapsed){d.isCollapsingOrExpanding=1;c.addClsWithUI(c.collapsedCls)}else{d.isCollapsingOrExpanding=2;c.removeClsWithUI(c.collapsedCls);d.lastCollapsedState=l.lastCollapsedState}}l.lastCollapsedState=h;d.dockedItems=m=[];for(j=0;j<g;j++){o=p[j];if(o.rendered){n=o.dock;a=b.getCmp(o);a.dockedAt={x:0,y:0};a.offsets=e=Ext.Element.parseBox(o.offsets||0);a.horizontal=n=="top"||n=="bottom";e.width=e.left+e.right;e.height=e.top+e.bottom;m.push(a)}}d.bodyContext=d.getEl("body")},beginLayoutCycle:function(b){var e=this,l=b.dockedItems,d=l.length,a=e.owner,g=a.frameBody,k=e.lastHeightModel,c,j,h;Ext.layout.component.Component.prototype.beginLayoutCycle.apply(this,arguments);if(e.owner.manageHeight){if(e.lastBodyDisplay){a.body.dom.style.display=e.lastBodyDisplay=""}}else{if(e.lastBodyDisplay!=="inline-block"){a.body.dom.style.display=e.lastBodyDisplay="inline-block"}if(k&&k.shrinkWrap&&!b.heightModel.shrinkWrap){a.body.dom.style.marginBottom=""}}if(b.widthModel.auto){if(b.widthModel.shrinkWrap){a.el.setWidth(null)}a.body.setWidth(null);if(g){g.setWidth(null)}}if(b.heightModel.auto){a.body.setHeight(null);if(g){g.setHeight(null)}}if(b.collapsedVert){b.setContentHeight(0)}else{if(b.collapsedHorz){b.setContentWidth(0)}}for(c=0;c<d;c++){j=l[c].target;h=j.dock;if(h=="right"){j.setLocalX(0)}else{if(h!="left"){continue}}}},calculate:function(d){var m=this,c=m.measureAutoDimensions(d,d.measureDimensions),b=d.state,l=b.horzDone,e=b.vertDone,g=d.bodyContext,k,a,j,h,n;d.borderInfo||d.getBorderInfo();d.paddingInfo||d.getPaddingInfo();d.frameInfo||d.getFrameInfo();g.borderInfo||g.getBorderInfo();g.paddingInfo||g.getPaddingInfo();if(!d.frameBorder){if(!(k=d.framing)){d.frameBorder=d.borderInfo;d.framePadding=d.paddingInfo}else{d.frameBorder=k.border;d.framePadding=k.padding}}a=!l&&m.createAxis(d,c.contentWidth,d.widthModel,m.horzAxisProps,d.collapsedHorz);j=!e&&m.createAxis(d,c.contentHeight,d.heightModel,m.vertAxisProps,d.collapsedVert);for(h=0,n=d.dockedItems.length;n--;++h){if(a){m.dockChild(d,a,n,h)}if(j){m.dockChild(d,j,n,h)}}if(a&&m.finishAxis(d,a)){b.horzDone=l=a}if(j&&m.finishAxis(d,j)){b.vertDone=e=j}if(l&&e&&m.finishConstraints(d,l,e)){m.finishPositions(d,l,e)}else{m.done=false}},createAxis:function(q,k,e,n,d){var v=this,u=0,b=v.owner,g=b[n.maxSize],c=b[n.minSize]||0,o=n.dockBegin,j=n.dockEnd,s=n.pos,m=n.size,l=g!=null,p=e.shrinkWrap,a,t,r,h;if(p){if(d){h=0}else{a=q.bodyContext;h=k+a.borderInfo[m]}}else{t=q.frameBorder;r=q.framePadding;u=t[o]+r[o];h=q.getProp(m)-(t[j]+r[j])}return{shrinkWrap:e.shrinkWrap,sizeModel:e,initialBegin:u,begin:u,end:h,collapsed:d,horizontal:n.horizontal,ignoreFrameBegin:null,ignoreFrameEnd:null,initialSize:h-u,maxChildSize:0,hasMinMaxConstraints:(c||l)&&e.shrinkWrap,minSize:c,maxSize:l?g:1000000000,bodyPosProp:v.owner.manageHeight?s:n.marginBegin,dockBegin:o,dockEnd:j,posProp:s,sizeProp:m,setSize:n.setSize,shrinkWrapDock:q[n.shrinkWrapDock],sizeModelName:n.sizeModel,dockedPixelsEnd:0}},dockChild:function(b,c,m,e){var g=this,a=b.dockedItems[c.shrinkWrap?m:e],j=a.target,k=j.dock,d=c.sizeProp,h,l;if(j.ignoreParentFrame&&b.isCollapsingOrExpanding){a.clearMarginCache()}a.marginInfo||a.getMarginInfo();if(k==c.dockBegin){if(c.shrinkWrap){h=g.dockOutwardBegin(b,a,j,c)}else{h=g.dockInwardBegin(b,a,j,c)}}else{if(k==c.dockEnd){if(c.shrinkWrap){h=g.dockOutwardEnd(b,a,j,c)}else{h=g.dockInwardEnd(b,a,j,c)}}else{if(c.shrinkWrapDock){l=a.getProp(d)+a.marginInfo[d];c.maxChildSize=Math.max(c.maxChildSize,l);h=0}else{h=g.dockStretch(b,a,j,c)}}}a.dockedAt[c.posProp]=h},dockInwardBegin:function(b,a,k,d){var g=d.begin,e=d.sizeProp,c=k.ignoreParentFrame,h,l,j;if(c){d.ignoreFrameBegin=a;j=k.dock;h=b.frameBorder[j];g-=h+b.framePadding[j]}if(!k.overlay){l=a.getProp(e)+a.marginInfo[e];d.begin+=l;if(c){d.begin-=h}}return g},dockInwardEnd:function(e,d,c,b){var j=b.sizeProp,a=d.getProp(j)+d.marginInfo[j],h=b.end-a,g;if(!c.overlay){b.end=h}if(c.ignoreParentFrame){b.ignoreFrameEnd=d;g=e.frameBorder[c.dock];h+=g+e.framePadding[c.dock];b.end+=g}return h},dockOutwardBegin:function(e,d,c,b){var h=b.begin,g=b.sizeProp,a;if(b.collapsed){b.ignoreFrameBegin=b.ignoreFrameEnd=d}else{if(c.ignoreParentFrame){b.ignoreFrameBegin=d}}if(!c.overlay){a=d.getProp(g)+d.marginInfo[g];h-=a;b.begin=h}return h},dockOutwardEnd:function(e,d,c,b){var h=b.end,g=b.sizeProp,a;a=d.getProp(g)+d.marginInfo[g];if(b.collapsed){b.ignoreFrameBegin=b.ignoreFrameEnd=d}else{if(c.ignoreParentFrame){b.ignoreFrameEnd=d}}if(!c.overlay){b.end=h+a;b.dockedPixelsEnd+=a}return h},dockStretch:function(c,b,n,d){var o=n.dock,k=d.sizeProp,a=o=="top"||o=="bottom",j=c.frameBorder,e=b.offsets,m=c.framePadding,h=a?"right":"bottom",q=a?"left":"top",l=d.begin+e[q],g,p;if(n.stretch!==false){p=d.end-l-e[h];if(n.ignoreParentFrame){l-=m[q]+j[q];p+=m[k]+j[k]}g=b.marginInfo;p-=g[k];b[d.setSize](p)}return l},finishAxis:function(n,e){if(isNaN(e.maxChildSize)){return false}var d=e.begin,q=e.end-d,h=e.collapsed,x=e.setSize,l=e.dockBegin,v=e.dockEnd,p=n.framePadding,s=n.frameBorder,g=s[l],t=n.framing,o=t&&t[l],b=h?0:p[l],k=e.sizeProp,u=e.ignoreFrameBegin,r=e.ignoreFrameEnd,a=n.bodyContext,m=Math.max(g+b-o,0),c,y,w,j;if(e.shrinkWrap){y=e.initialSize;if(t){w=-d+g+b;c=w-o-m}else{c=-d;w=c+b}if(!h){q+=p[k]}if(u){w-=g;c-=g;u.dockedAt[e.posProp]-=b}else{q+=g}if(h){}else{if(r){r.dockedAt[e.posProp]+=p[v]}else{q+=s[v]}}e.size=q;if(!e.horizontal&&!this.owner.manageHeight){j=false}}else{if(t){w=0;c=d-o-m}else{w=-g;c=d-b-g}y=q}e.delta=w;a[x](y,j);a.setProp(e.bodyPosProp,c);return !isNaN(q)},beforeInvalidateShrinkWrapDock:function(c,b){var a=b.axis.sizeModelName;if(!c[a].constrainedMin){c[a]=Ext.layout.SizeModel.calculated}},afterInvalidateShrinkWrapDock:function(d,a){var b=a.axis,c=a.layout,e;if(d[b.sizeModelName].calculated){e=c.dockStretch(a.ownerContext,d,d.target,b);d.setProp(b.posProp,b.delta+e)}},finishConstraints:function(l,c,q){var t=this,s=t.sizeModels,p=c.shrinkWrap,r=q.shrinkWrap,a=t.owner,j,n,o,g,h,m,b,d,e,k;if(p){m=c.size;b=c.collapsed?0:c.minSize;d=c.maxSize;e=c.maxChildSize;k=Math.max(m,e);if(k>d){h=s.constrainedMax;o=d}else{if(k<b){h=s.constrainedMin;o=b}else{if(m<e){h=s.constrainedDock;a.dockConstrainedWidth=o=e}else{o=m}}}}if(r){m=q.size;b=q.collapsed?0:q.minSize;d=q.maxSize;e=q.maxChildSize;k=Math.max(m,e+m-q.initialSize);if(k>d){g=s.constrainedMax;n=d}else{if(k<b){g=s.constrainedMin;n=b}else{if(m<e){g=s.constrainedDock;a.dockConstrainedHeight=n=e}else{if(!l.collapsedVert&&!a.manageHeight){j=false;l.bodyContext.setProp("margin-bottom",q.dockedPixelsEnd)}n=m}}}}if(h||g){if(h&&g&&h.constrainedMax&&g.constrainedByMin){l.invalidate({widthModel:h});return false}if(!l.widthModel.calculatedFromShrinkWrap&&!l.heightModel.calculatedFromShrinkWrap){l.invalidate({widthModel:h,heightModel:g});return false}}else{t.invalidateAxes(l,c,q)}if(p){l.setWidth(o);if(h){l.widthModel=h}}if(r){l.setHeight(n,j);if(g){l.heightModel=g}}return true},invalidateAxes:function(g,a,l){var p=this.beforeInvalidateShrinkWrapDock,b=this.afterInvalidateShrinkWrapDock,e=a.end-a.begin,s=l.initialSize,c=a.shrinkWrapDock&&a.maxChildSize<=e,m=l.shrinkWrapDock&&l.maxChildSize<=s,q,n,k,d,r,o,h,j;if(c||m){if(m){l.begin=l.initialBegin;l.end=l.begin+l.initialSize}q=g.dockedItems;for(k=0,n=q.length;k<n;++k){d=q[k];o=d.horizontal;h=null;if(c&&o){j=a.sizeProp;r=e;h=a}else{if(m&&!o){j=l.sizeProp;r=s;h=l}}if(h){r-=d.getMarginInfo()[j];if(r!==d.props[j]){d.invalidate({before:p,after:b,axis:h,ownerContext:g,layout:this})}}}}},finishPositions:function(d,a,h){var k=d.dockedItems,c=k.length,g=a.delta,e=h.delta,j,b;for(j=0;j<c;++j){b=k[j];b.setProp("x",g+b.dockedAt.x);b.setProp("y",e+b.dockedAt.y)}},finishedLayout:function(b){var a=this,c=b.target;Ext.layout.component.Component.prototype.finishedLayout.apply(this,arguments);if(!b.animatePolicy){if(b.isCollapsingOrExpanding===1){c.afterCollapse(false)}else{if(b.isCollapsingOrExpanding===2){c.afterExpand(false)}}}},getAnimatePolicy:function(c){var b=this,a,d;if(c.isCollapsingOrExpanding==1){a=b.lastCollapsedState}else{if(c.isCollapsingOrExpanding==2){a=c.lastCollapsedState}}if(a=="left"||a=="right"){d=b.horizontalCollapsePolicy}else{if(a=="top"||a=="bottom"){d=b.verticalCollapsePolicy}}return d},getDockedItems:function(c,n){var j=this,e=(c==="visual"),k=e?Ext.ComponentQuery.query("[rendered]",j.owner.dockedItems.items):j.owner.dockedItems.items,h=k&&k.length&&c!==false,b,m,l,g,d,a;if(n==null){l=h&&!e?k.slice():k}else{l=[];for(g=0,a=k.length;g<a;++g){m=k[g].dock;d=(m=="top"||m=="left");if(n?d:!d){l.push(k[g])}}h=h&&l.length}if(h){b=(c=c||"render")=="render";Ext.Array.sort(l,function(p,o){var q,r;if(b&&((q=j.owner.dockOrder[p.dock])!==(r=j.owner.dockOrder[o.dock]))){if(!(q+r)){return q-r}}q=j.getItemWeight(p,c);r=j.getItemWeight(o,c);if((q!==undefined)&&(r!==undefined)){return q-r}return 0})}return l||[]},getItemWeight:function(b,a){var c=b.weight||this.owner.defaultDockWeights[b.dock];return c[a]||c},getLayoutItems:function(){var e=this,b,g,d,c,a;if(e.owner.collapsed){a=e.owner.getCollapsedDockedItems()}else{b=e.getDockedItems("visual");g=b.length;a=[];for(c=0;c<g;c++){d=b[c];if(!d.hidden){a.push(d)}}}return a},measureContentWidth:function(a){var b=a.bodyContext;return b.el.getWidth()-b.getBorderInfo().width},measureContentHeight:function(a){var b=a.bodyContext;return b.el.getHeight()-b.getBorderInfo().height},redoLayout:function(c){var b=this,a=b.owner;if(c.isCollapsingOrExpanding==1){if(a.reExpander){a.reExpander.el.show()}a.addClsWithUI(a.collapsedCls);c.redo(true)}else{if(c.isCollapsingOrExpanding==2){a.removeClsWithUI(a.collapsedCls);c.bodyContext.redo()}}},renderChildren:function(){var b=this,a=b.getDockedItems(),c=b.getRenderTarget();b.handleItemBorders();b.renderItems(a,c)},renderItems:function(k,h){var l=this,c=k.length,a=0,b=0,p=0,m=l.getRenderTarget().dom.childNodes,n=m.length,g,d,e,o;for(g=0,d=0;g<n;g++){e=m[g];if(e.nodeType===1&&Ext.fly(e).hasCls(Ext.baseCSSPrefix+"resizable-handle")){break}for(d=0;d<c;d++){o=k[d];if(o.rendered&&o.el.dom===e){break}}if(d===c){p++}}for(;a<c;a++,b++){o=k[a];if(a===b&&(o.dock==="right"||o.dock==="bottom")){b+=p}if(o&&!o.rendered){l.renderItem(o,h,b)}else{if(!l.isValidParent(o,h,b)){l.moveItem(o,h,b)}}}},undoLayout:function(c){var b=this,a=b.owner;if(c.isCollapsingOrExpanding==1){if(a.reExpander){a.reExpander.el.hide()}a.removeClsWithUI(a.collapsedCls);c.undo(true)}else{if(c.isCollapsingOrExpanding==2){a.addClsWithUI(a.collapsedCls);c.bodyContext.undo()}}},sizePolicy:{nostretch:{setsWidth:0,setsHeight:0},horz:{shrinkWrap:{setsWidth:1,setsHeight:0,readsWidth:1},stretch:{setsWidth:1,setsHeight:0}},vert:{shrinkWrap:{setsWidth:0,setsHeight:1,readsHeight:1},stretch:{setsWidth:0,setsHeight:1}},stretchV:{setsWidth:0,setsHeight:1},autoStretchH:{readsWidth:1,setsWidth:1,setsHeight:0},autoStretchV:{readsHeight:1,setsWidth:0,setsHeight:1}},getItemSizePolicy:function(d,g){var c=this,h=c.sizePolicy,e=c.owner.shrinkWrapDock,b,a;if(d.stretch===false){return h.nostretch}b=d.dock;a=(b=="left"||b=="right");e=e===true?3:(e||0);if(a){h=h.vert;e=e&1}else{h=h.horz;e=e&2}if(e){if(!g){g=c.owner.getSizeModel()}if(g[a?"height":"width"].shrinkWrap){return h.shrinkWrap}}return h.stretch},configureItem:function(a,b){Ext.layout.Layout.prototype.configureItem.apply(this,arguments);a.addCls(this._itemCls);if(!a.ignoreBorderManagement){a.addClsWithUI(this.getDockCls(a.dock))}},getDockCls:function(a){return"docked-"+a},afterRemove:function(a){var b;Ext.layout.Layout.prototype.afterRemove.apply(this,arguments);a.removeCls(this._itemCls);if(!a.ignoreBorderManagement){a.removeClsWithUI(this.getDockCls(a.dock))}b=a.el.dom;if(!a.destroying&&b){b.parentNode.removeChild(b)}this.childrenChanged=true},borderCollapseMap:{},getBorderCollapseTable:function(){var d=this,g=d.borderCollapseMap,a=d.owner,b=a.baseCls,e=a.ui,c;g=g[b]||(g[b]={});c=g[e];if(!c){b+="-"+e+"-outer-border-";g[e]=c=[0,b+"l",b+"b",b+"bl",b+"r",b+"rl",b+"rb",b+"rbl",b+"t",b+"tl",b+"tb",b+"tbl",b+"tr",b+"trl",b+"trb",b+"trbl"]}return c}},0,0,0,0,["layout.dock"],0,[Ext.layout.component,"Dock",Ext.layout.component,"AbstractDock"],0));(Ext.cmd.derive("Ext.util.Memento",Ext.Base,(function(){function d(j,h,k,g){j[g?g+k:k]=h[k]}function c(h,g,j){delete h[j]}function e(l,k,m,j){var g=j?j+m:m,h=l[g];if(h||l.hasOwnProperty(g)){a(k,m,h)}}function a(h,j,g){if(Ext.isDefined(g)){h[j]=g}else{delete h[j]}}function b(h,n,m,j,k){if(n){if(Ext.isArray(j)){var l,g=j.length;for(l=0;l<g;l++){h(n,m,j[l],k)}}else{h(n,m,j,k)}}}return{data:null,target:null,constructor:function(h,g){this.data={};if(h){this.target=h;if(g){this.capture(g)}}},capture:function(g,k,j){var h=this;b(d,h.data||(h.data={}),k||h.target,g,j)},remove:function(g){b(c,this.data,null,g)},restore:function(h,g,k,j){b(e,this.data,k||this.target,h,j);if(g!==false){this.remove(h)}},restoreAll:function(g,l){var j=this,h=l||this.target,k=j.data,m;g=g!==false;for(m in k){if(k.hasOwnProperty(m)){a(h,m,k[m]);if(g){delete k[m]}}}}}}()),1,0,0,0,0,0,[Ext.util,"Memento"],0));(Ext.cmd.derive("Ext.container.DockingContainer",Ext.Base,{isDockingContainer:true,defaultDockWeights:{top:{render:1,visual:1},left:{render:3,visual:5},right:{render:5,visual:7},bottom:{render:7,visual:3}},dockOrder:{top:-1,left:-1,right:1,bottom:1},horizontalDocks:0,addDocked:function(b,h){var g=this,c=0,a,e,d;b=g.prepareItems(b);d=b.length;for(;c<d;c++){e=b[c];e.dock=e.dock||"top";if(e.dock==="left"||e.dock==="right"){g.horizontalDocks++}if(h!==undefined){c+=h;g.dockedItems.insert(c,e)}else{g.dockedItems.add(e)}a=!!e.instancedCmp;delete e.instancedCmp;e.onAdded(g,c,a);delete e.initOwnerCt;if(g.hasListeners.dockedadd){g.fireEvent("dockedadd",g,e,c)}if(g.onDockedAdd!==Ext.emptyFn){g.onDockedAdd(e)}}if(g.rendered&&!g.suspendLayout){g.updateLayout()}return b},destroyDockedItems:function(){var a=this.dockedItems,b;if(a){while((b=a.first())){this.removeDocked(b,true)}}},doRenderDockedItems:function(c,g,h){var e=g.$comp,d=e.componentLayout,b,a;if(d.getDockedItems&&!g.$skipDockedItems){b=d.getDockedItems("render",!h);a=b&&d.getItemsRenderTree(b);if(a){Ext.DomHelper.generateMarkup(a,c)}}},getDockedComponent:function(a){if(Ext.isObject(a)){a=a.getItemId()}return this.dockedItems.get(a)},getDockedItems:function(a,c){var b=this.getComponentLayout().getDockedItems("render",c);if(a&&b.length){b=Ext.ComponentQuery.query(a,b)}return b},getDockingRefItems:function(b,e){var a=b&&"*,* *",d=this.getDockedItems(a,true),c;d.push.apply(d,e);c=this.getDockedItems(a,false);d.push.apply(d,c);return d},initDockingItems:function(){var b=this,a=b.dockedItems;if(!a||!a.isMixedCollection){b.dockedItems=new Ext.util.AbstractMixedCollection(false,b.getComponentId);if(a){b.addDocked(a)}}},insertDocked:function(b,a){this.addDocked(a,b)},onDockedAdd:Ext.emptyFn,onDockedRemove:Ext.emptyFn,removeDocked:function(e,b){var d=this,c,a;b=b===true||(b!==false&&d.autoDestroy);if(!d.dockedItems.contains(e)){return e}if(e.dock==="left"||e.dock==="right"){d.horizontalDocks--}c=d.componentLayout;a=c&&d.rendered;if(a){c.onRemove(e)}d.dockedItems.remove(e);e.onRemoved(e.destroying||b);d.onDockedRemove(e);if(b){e.destroy()}else{if(a){c.afterRemove(e)}}if(d.hasListeners.dockedremove){d.fireEvent("dockedremove",d,e)}if(!d.destroying&&!d.suspendLayout){d.updateLayout()}return e},moveDocked:function(b,a){if(this.rendered){Ext.suspendLayouts()}this.removeDocked(b,false);b.dock=a;this.addDocked(b);if(this.rendered){if(b.frame){Ext.getDetachedBody().appendChild(b.el);b.updateFrame()}Ext.resumeLayouts(true)}},setupDockingRenderTpl:function(a){a.renderDockedItems=this.doRenderDockedItems}},0,0,0,0,0,0,[Ext.container,"DockingContainer"],0));(Ext.cmd.derive("Ext.panel.Panel",Ext.container.Container,{alternateClassName:"Ext.Panel",childEls:["body"],renderTpl:["{% this.renderDockedItems(out,values,0); %}",'<div id="{id}-body" data-ref="body" class="{baseCls}-body<tpl if="bodyCls"> {bodyCls}</tpl>',' {baseCls}-body-{ui}<tpl if="uiCls">','<tpl for="uiCls"> {parent.baseCls}-body-{parent.ui}-{.}</tpl>','</tpl>{childElCls}"','<tpl if="bodyRole"> role="{bodyRole}"<tpl else> role="presentation"</tpl>','<tpl if="bodyStyle"> style="{bodyStyle}"</tpl>>',"{%this.renderContainer(out,values);%}","</div>","{% this.renderDockedItems(out,values,1); %}"],headerPosition:"top",iconAlign:"left",titleAlign:"left",titleRotation:"default",beforeRenderConfig:{glyph:null,headerPosition:null,icon:null,iconAlign:null,iconCls:null,title:null,titleAlign:null,titleRotation:null},animCollapse:Ext.enableFx,border:true,closable:false,closeAction:"destroy",collapsed:false,collapsedCls:"collapsed",collapseFirst:true,collapsible:undefined,constrain:false,constrainHeader:false,floatable:true,frame:false,frameHeader:true,hideCollapseTool:false,manageHeight:true,maskElement:"el",minButtonWidth:75,preventHeader:false,shrinkWrapDock:false,titleCollapse:undefined,baseCls:Ext.baseCSSPrefix+"panel",bodyPosProps:{x:"x",y:"y"},componentLayout:"dock",contentPaddingProperty:"bodyPadding",emptyArray:[],isPanel:true,defaultBindProperty:"title",addBodyCls:function(b){var c=this,a=c.rendered?c.body:c.getProtoBody();a.addCls(b);return c},addTool:function(e){if(!Ext.isArray(e)){e=[e]}var d=this,h=d.header,a=e.length,g=d.tools,c,b;if(!h||!h.isHeader){h=null;if(!g){d.tools=g=[]}}for(c=0;c<a;c++){b=e[c];b.toolOwner=d;if(h){h.addTool(b)}else{g.push(b)}}d.updateHeader()},addTools:Ext.emptyFn,setCollapsible:function(c){var b=this,d=b.collapsible,a=b.collapseTool;b.collapsible=c;if(c&&!d){b.updateCollapseTool();a=b.collapseTool;if(a){a.show()}}else{if(!c&&d){if(a){a.hide()}}}},addUIClsToElement:function(b){var c=this,a=Ext.Component.prototype.addUIClsToElement.apply(this,arguments);c.addBodyCls([Ext.baseCSSPrefix+b,c.baseCls+"-body-"+b,c.baseCls+"-body-"+c.ui+"-"+b]);return a},afterCollapse:function(b){var a=this,c=a.ownerLayout;a.isCollapsingOrExpanding=0;a.updateCollapseTool();if(b){a.removeCls(Ext.baseCSSPrefix+"animating-size")}a.setHiddenDocked();a.fireEvent("collapse",a)},afterExpand:function(b){var a=this,c=a.ownerLayout;a.isCollapsingOrExpanding=0;a.updateCollapseTool();if(b){a.removeCls(Ext.baseCSSPrefix+"animating-size")}a.fireEvent("expand",a);a.fireHierarchyEvent("expand")},beforeDestroy:function(){var a=this;Ext.destroy(a.placeholder,a.ghostPanel,a.dd);this.destroyDockedItems();Ext.container.Container.prototype.beforeDestroy.call(this)},beforeRender:function(){var b=this,a;Ext.container.Container.prototype.beforeRender.call(this);b.initTools();if(!(b.preventHeader||(b.header===false))){b.updateHeader()}if(b.collapsed){if(b.isPlaceHolderCollapse()){if(!b.hidden){b.setHiddenState(true);b.preventCollapseFire=true;b.placeholderCollapse();delete b.preventCollapseFire;a=b.collapsed;b.collapsed=false}}else{b.beginCollapse();b.addClsWithUI(b.collapsedCls)}}if(a){b.collapsed=a}},getMemento:function(a){var b=this;if(a&&typeof a=="string"){a+="Memento";return b[a]||(b[a]=new Ext.util.Memento(b))}},beginCollapse:function(){var e=this,c=e.lastBox,h=e.rendered,b=e.getMemento("collapse"),d=e.getSizeModel(),g=e.header,a;b.capture(["height","minHeight","width","minWidth"]);if(c){b.capture(e.restoreDimension(),c,"last.")}if(e.collapsedVertical()){if(d.width.shrinkWrap){e.width=h?e.getWidth():e.width||e.minWidth||100}delete e.height;e.minHeight=0}else{if(e.collapsedHorizontal()){if(d.height.shrinkWrap){e.height=h?e.getHeight():e.height||e.minHeight||100}delete e.width;e.minWidth=0}}if(e.ownerCt){e.ownerCt.getLayout().beginCollapse(e)}if(!e.isPlaceHolderCollapse()&&g!==false){if(g===(a=e.getReExpander())){g.collapseImmune=true;g.getInherited().collapseImmune=true;g.addClsWithUI(e.getHeaderCollapsedClasses(g));if(g.rendered){g.updateFrame()}}else{if(a.el){a.el.show();a.hidden=false}}}if(e.resizer){e.resizer.disable()}},beginDrag:function(){if(this.floatingDescendants){this.floatingDescendants.hide()}},beginExpand:function(){var e=this,d=e.lastBox,c=e.getMemento("collapse"),a=e.restoreDimension(),g=e.header,b;if(c){c.restore(["minHeight","minWidth",a]);if(d){c.restore(a,true,d,"last.")}}if(e.ownerCt){e.ownerCt.getLayout().beginExpand(e)}if(!e.isPlaceHolderCollapse()&&g!==false){if(g===(b=e.getReExpander())){delete g.collapseImmune;delete g.getInherited().collapseImmune;g.removeClsWithUI(e.getHeaderCollapsedClasses(g));if(g.rendered){g.expanding=true;g.updateFrame();delete g.expanding}}else{b.hidden=true;b.el.hide()}}if(e.resizer){e.resizer.enable()}},bridgeToolbars:function(){var a=this,g=[],e=a.minButtonWidth,c,b;function d(h,k,j){if(Ext.isArray(h)){h={xtype:"toolbar",items:h}}else{if(!h.xtype){h.xtype="toolbar"}}h.dock=k;if(k=="left"||k=="right"){h.vertical=true}if(j){h.layout=Ext.applyIf(h.layout||{},{pack:{left:"start",center:"center"}[a.buttonAlign]||"end"})}return h}if(a.tbar){g.push(d(a.tbar,"top"));a.tbar=null}if(a.bbar){g.push(d(a.bbar,"bottom"));a.bbar=null}if(a.buttons){a.fbar=a.buttons;a.buttons=null}if(a.fbar){c=d(a.fbar,"bottom",true);c.ui="footer";if(e){b=c.defaults;c.defaults=function(k){var l=b||{},j=!k.xtype||k.isButton,h;if(!j){h=Ext.ClassManager.getByAlias("widget."+k.xtype);if(h){j=h.prototype.isButton}}if(j&&!("minWidth" in l)){l=Ext.apply({minWidth:e},l)}return l}}g.push(c);a.fbar=null}if(a.lbar){g.push(d(a.lbar,"left"));a.lbar=null}if(a.rbar){g.push(d(a.rbar,"right"));a.rbar=null}if(a.dockedItems){if(a.dockedItems.isMixedCollection){a.addDocked(g)}else{if(!Ext.isArray(a.dockedItems)){a.dockedItems=[a.dockedItems]}a.dockedItems=a.dockedItems.concat(g)}}else{a.dockedItems=g}},close:function(){if(this.fireEvent("beforeclose",this)!==false){this.doClose()}},collapse:function(e,a){var d=this,g=e||d.collapseDirection,b=d.ownerCt,c=d.ownerLayout,h=d.rendered;if(d.isCollapsingOrExpanding){return d}if(arguments.length<2){a=d.animCollapse}if(d.collapsed||d.fireEvent("beforecollapse",d,e,a)===false){return d}if(c&&c.onBeforeComponentCollapse){if(c.onBeforeComponentCollapse(d)===false){return d}}if(h&&b&&d.isPlaceHolderCollapse()){return d.placeholderCollapse(e,a)}d.collapsed=g;if(h){d.beginCollapse()}d.getInherited().collapsed=true;d.fireHierarchyEvent("collapse");if(h){d.doCollapseExpand(1,a)}return d},collapsedHorizontal:function(){var a=this.getCollapsed();return a==="left"||a==="right"},collapsedVertical:function(){var a=this.getCollapsed();return a==="top"||a==="bottom"},convertCollapseDir:function(a){return a.substr(0,1)},createGhost:function(a){var b=this,d=b.header,c=b.frame&&!b.alwaysFramed;return{xtype:"panel",hidden:false,header:d?{titleAlign:d.getTitleAlign()}:null,ui:c?b.ui.replace(/-framed$/,""):b.ui,id:b.id+"-ghost",renderTo:Ext.getBody(),resizable:false,draggable:false,closable:false,floating:{shadow:false},frame:c,alwaysFramed:b.alwaysFramed,overlapHeader:b.overlapHeader,headerPosition:b.getHeaderPosition(),titleRotation:b.getTitleRotation(),baseCls:b.baseCls,cls:b.baseCls+"-ghost "+(a||"")}},createReExpander:function(g,e){var d=this,j=g==="left",c=g==="right",h=j||c,b=d.ownerCt,a=Ext.apply({hideMode:"offsets",title:d.getTitle(),titleAlign:d.getTitleAlign(),vertical:h,textCls:d.headerTextCls,icon:d.getIcon(),iconCls:d.getIconCls(),iconAlign:d.getIconAlign(),glyph:d.getGlyph(),baseCls:d.self.prototype.baseCls+"-header",ui:d.ui,frame:d.frame&&d.frameHeader,ignoreParentFrame:d.frame||d.overlapHeader,ignoreBorderManagement:d.frame||d.ignoreHeaderBorderManagement,indicateDrag:d.draggable,collapseImmune:true,headerRole:d.headerRole,ownerCt:(b&&d.collapseMode==="placeholder")?b:d,ownerLayout:d.componentLayout,margin:d.margin},e);if(d.collapseMode==="mini"){if(h){a.width=1}else{a.height=1}}if(!d.hideCollapseTool){if(j||(c&&d.isPlaceHolderCollapse())){a.titlePosition=1}a.tools=[{xtype:"tool",type:"expand-"+d.getOppositeDirection(g),uiCls:["top"],handler:d.toggleCollapse,scope:d}]}a=new Ext.panel.Header(a);a.addClsWithUI(d.getHeaderCollapsedClasses(a));return a},doClose:function(){this.fireEvent("close",this);this[this.closeAction]()},doCollapseExpand:function(a,b){var d=this,c=d.animCollapse,e=d.ownerLayout;d.animCollapse=b;d.isCollapsingOrExpanding=a;if(b){d.addCls(Ext.baseCSSPrefix+"animating-size")}if(e&&!b){e.onContentChange(d)}else{d.updateLayout({isRoot:true})}d.animCollapse=c;return d},endDrag:function(){if(this.floatingDescendants){this.floatingDescendants.show()}},expand:function(a){var c=this,b=c.ownerLayout,d=c.rendered;if(c.isCollapsingOrExpanding){return c}if(!arguments.length){a=c.animCollapse}if(!c.collapsed&&!c.floatedFromCollapse){return c}if(c.fireEvent("beforeexpand",c,a)===false){return c}if(b&&b.onBeforeComponentExpand){if(b.onBeforeComponentExpand(c)===false){return c}}delete c.getInherited().collapsed;if(d&&c.isPlaceHolderCollapse()){return c.placeholderExpand(a)}c.restoreHiddenDocked();if(d){c.beginExpand()}c.collapsed=false;if(c.rendered){c.doCollapseExpand(2,a)}return c},findReExpander:function(h){var g=this,j=Ext.Component,e=g.dockedItems.items,a=e.length,b,d;if(g.collapseMode==="mini"){return}switch(h){case j.DIRECTION_TOP:case j.DIRECTION_BOTTOM:for(d=0;d<a;d++){b=e[d];if(!b.hidden){if(b.isHeader&&(!b.dock||b.dock==="top"||b.dock==="bottom")){return b}}}break;case j.DIRECTION_LEFT:case j.DIRECTION_RIGHT:for(d=0;d<a;d++){b=e[d];if(!b.hidden){if(b.isHeader&&(b.dock==="left"||b.dock==="right")){return b}}}break;default:throw ("Panel#findReExpander must be passed a valid collapseDirection")}},floatCollapsedPanel:function(){var h=this,j=h.placeholder,a=j.getSize(),e,g=Ext.baseCSSPrefix+"border-region-slide-in",d=h.collapsed,k=h.ownerCt||h,b,c;if(h.isSliding){return}if(h.el.hasCls(g)){h.slideOutFloatedPanel();return}h.isSliding=true;j.el.hide();j.hidden=true;h.el.show();h.setHiddenState(false);h.collapsed=false;k.updateLayout();e=h.getBox(false,true);j.el.show();j.hidden=false;h.el.hide();h.setHiddenState(true);h.collapsed=d;k.updateLayout();h.slideOutTask=h.slideOutTask||new Ext.util.DelayedTask(h.slideOutFloatedPanel,h);if(Ext.supports.Touch){Ext.on("mousedown",c=function(l){if(!l.within(h.el)){Ext.un("mousedown",c);h.slideOutFloatedPanel()}});if(!h.placeholderListener){h.placeholderListener=j.on({resize:h.onPlaceholderResize,scope:h,destroyable:true})}}j.el.on("mouseleave",h.onMouseLeaveFloated,h);h.el.on("mouseleave",h.onMouseLeaveFloated,h);j.el.on("mouseenter",h.onMouseEnterFloated,h);h.el.on("mouseenter",h.onMouseEnterFloated,h);h.el.addCls(g);h.floated=d;if(h.collapseTool){h.collapseTool.el.hide()}switch(h.collapsed){case"top":h.setLocalXY(e.x,e.y+a.height-1);break;case"right":h.setLocalXY(e.x-a.width+1,e.y);break;case"bottom":h.setLocalXY(e.x,e.y-a.height+1);break;case"left":h.setLocalXY(e.x+a.width-1,e.y);break}b=h.convertCollapseDir(h.collapsed);h.floatedFromCollapse=h.collapsed;h.collapsed=false;h.setHiddenState(false);h.el.slideIn(b,{preserveScroll:true,duration:Ext.Number.from(h.animCollapse,Ext.fx.Anim.prototype.duration),listeners:{afteranimate:function(){h.isSliding=false;h.fireEvent("float",h)}}})},onPlaceholderResize:function(e,c,a){var b=this,d=b.getBox(false,true),g=b.placeholder.getBox(false,true);switch(b.floated){case"top":this.width=c;b.setLocalY(g.y+g.height);break;case"right":this.height=a;b.setLocalX(g.x-d.width);break;case"bottom":this.width=c;b.setLocalY(g.y-d.height);break;case"left":this.height=a;b.setLocalX(g.x+g.width);break}this.updateLayout({isRoot:true})},getAnimationProps:function(){var b=this,c=b.animCollapse,a;a=Ext.util.Animate.prototype.getAnimationProps.call(this);if(typeof c==="number"){a.duration=c}return a},getCollapsed:function(){var a=this;if(a.collapsed===true){return a.collapseDirection}return a.collapsed},getCollapsedDockedItems:function(){var a=this;return a.header===false||a.collapseMode=="placeholder"?a.emptyArray:[a.getReExpander()]},getComponent:function(a){var b=Ext.container.Container.prototype.getComponent.apply(this,arguments);if(b===undefined&&!Ext.isNumber(a)){b=this.getDockedComponent(a)}return b},getHeader:function(){return this.header},getHeaderCollapsedClasses:function(d){var b=this,c=b.collapsedCls,a;a=[c,c+"-"+d.getDockName()];if(b.border&&(!b.frame||(b.frame&&Ext.supports.CSS3BorderRadius))){a.push(c+"-border-"+d.getDockName())}return a},getHeightAuthority:function(){if(this.collapsed&&this.collapsedVertical()){return 1}return this.callParent()},getKeyMap:function(){return this.keyMap||(this.keyMap=new Ext.util.KeyMap(Ext.apply({target:this.el},this.keys)))},getOppositeDirection:function(a){var b=Ext.Component;switch(a){case b.DIRECTION_TOP:return b.DIRECTION_BOTTOM;case b.DIRECTION_RIGHT:return b.DIRECTION_LEFT;case b.DIRECTION_BOTTOM:return b.DIRECTION_TOP;case b.DIRECTION_LEFT:return b.DIRECTION_RIGHT}},getPlaceholder:function(e){var d=this,h=e||d.collapseDirection,c=null,g=d.placeholder,b=d.floatable,a=d.titleCollapse;if(!g){if(b||(d.collapsible&&a)){c={click:{fn:(!a&&b)?d.floatCollapsedPanel:d.toggleCollapse,element:"el",scope:d}}}d.placeholder=g=Ext.widget(d.createReExpander(h,{id:d.id+"-placeholder",listeners:c}))}if(!g.placeholderFor){if(!g.isComponent){d.placeholder=g=d.lookupComponent(g)}Ext.applyIf(g,{margin:d.margin,placeholderFor:d,synthetic:true});g.addCls([Ext.baseCSSPrefix+"region-collapsed-placeholder",Ext.baseCSSPrefix+"region-collapsed-"+h+"-placeholder",d.collapsedCls])}return g},getProtoBody:function(){var b=this,a=b.protoBody;if(!a){b.protoBody=a=new Ext.util.ProtoElement({cls:b.bodyCls,style:b.bodyStyle,clsProp:"bodyCls",styleProp:"bodyStyle",styleIsText:true})}return a},getReExpander:function(c){var b=this,d=c||b.collapseDirection,a=b.reExpander||b.findReExpander(d);b.expandDirection=b.getOppositeDirection(d);if(!a){b.reExpander=a=b.createReExpander(d,{dock:d,cls:Ext.baseCSSPrefix+"docked "+b.baseCls+"-"+b.ui+"-collapsed",isCollapsedExpander:true});b.dockedItems.insert(0,a)}return a},getRefItems:function(a){var b=Ext.container.Container.prototype.getRefItems.apply(this,arguments);return this.getDockingRefItems(a,b)},getState:function(){var a=this,c=Ext.Component.prototype.getState.call(this)||{},e=a.collapsed,b=a.floated,d;if(b){a.collapsed=b}c=a.addPropertyToState(c,"collapsed");if(b){a.collapsed=e}if(a.getCollapsed()){d=a.getMemento("collapse").data;c=a.addPropertyToState(c,"collapsed",d);if(a.collapsedVertical()){delete c.height;if(d){c=a.addPropertyToState(c,"height",d.height)}}else{delete c.width;if(d){c=a.addPropertyToState(c,"width",d.width)}}}return c},applyState:function(c){var b=this,a={},d;if(c){d=c.collapsed;if(d){a=b.getMemento("collapse");Ext.Object.merge(a.data,d);c.collapsed=true}Ext.state.Stateful.prototype.applyState.apply(this,arguments)}},ghost:function(m){var h=this,a=h.ghostPanel,d=h.getBox(),c=h.header,k,e,j,l,g,b;if(!a){h.ghostPanel=a=Ext.widget(h.createGhost(m))}else{a.el.show()}a.setHiddenState(false);a.floatParent=h.floatParent;a.toFront();if(c&&!h.preventHeader){k=a.header;k.suspendLayouts();e=k.query("tool");for(b=e.length;b--;){k.remove(e[b])}a.addTool(h.ghostTools());a.setTitle(h.getTitle());k.setTitlePosition(c.titlePosition);l=h.getIconCls();if(l){a.setIconCls(l)}else{j=h.getIcon();if(j){a.setIcon(j)}else{g=h.getGlyph();if(g){a.setGlyph(g)}}}k.addCls(Ext.baseCSSPrefix+"header-ghost");k.resumeLayouts()}a.setPagePosition(d.x,d.y);a.setSize(d.width,d.height);h.el.hide();return a},ghostTools:function(){var e=[],g=this.header,d=g?g.query("tool[hidden=false]"):[],c,a,b;if(d.length){c=0;a=d.length;for(;c<a;c++){b=d[c];e.push({type:b.type})}}else{e=[{type:"placeholder"}]}return e},initBodyBorder:function(){var a=this;if(a.frame&&a.bodyBorder){if(!Ext.isNumber(a.bodyBorder)){a.bodyBorder=1}a.getProtoBody().setStyle("border-width",this.unitizeBox(a.bodyBorder))}},initBodyStyles:function(){var b=this,a=b.getProtoBody();if(b.bodyPadding!==undefined){if(b.layout.managePadding){a.setStyle("padding",0)}else{a.setStyle("padding",this.unitizeBox((b.bodyPadding===true)?5:b.bodyPadding))}}b.initBodyBorder()},initBorderProps:function(){var a=this;if(a.frame&&a.border&&a.bodyBorder===undefined){a.bodyBorder=false}if(a.frame&&a.border&&(a.bodyBorder===false||a.bodyBorder===0)){a.manageBodyBorders=true}},initComponent:function(){var a=this;if(a.collapsible){a.addStateEvents(["expand","collapse"])}if(a.unstyled){a.setUI("plain")}if(a.frame){a.setUI(a.ui+"-framed")}a.bridgeToolbars();this.initBorderProps();Ext.container.Container.prototype.initComponent.call(this);a.collapseDirection=a.collapseDirection||a.getHeaderPosition()||Ext.Component.DIRECTION_TOP;a.hiddenOnCollapse=new Ext.dom.CompositeElement()},initItems:function(){Ext.container.Container.prototype.initItems.call(this);this.initDockingItems()},initRenderData:function(){var a=this,b=Ext.util.Renderable.prototype.initRenderData.call(this);a.initBodyStyles();a.protoBody.writeTo(b);delete a.protoBody;return b},calculateConstrainedPosition:function(e,b,d,a){var g=this,c;if(g.constrainHeader){if(a){if(!g.header.vertical){a=[a[0],g.header.lastBox.height]}else{a=[g.header.lastBox.width,a[1]]}}else{a=[g.header.lastBox.width,g.header.lastBox.height]}c=g.floatParent;e=e||g.constrainTo||(c?c.getTargetEl():null)||g.container||g.el.parent()}return Ext.util.Positionable.prototype.calculateConstrainedPosition.apply(this,[e,b,d,a])},initTools:function(){var c=this,d=c.tools,b,a;c.tools=[];for(b=d&&d.length;b;){--b;c.tools[b]=a=d[b];a.toolOwner=c}if(c.collapsible&&!(c.hideCollapseTool||c.header===false||c.preventHeader)){c.updateCollapseTool();if(c.collapseFirst){c.tools.unshift(c.collapseTool)}}c.addTools();if(c.pinnable){c.initPinnable()}if(c.closable){c.addClsWithUI("closable");c.addTool({xtype:"tool",type:"close",scope:c,handler:c.close})}if(c.collapseTool&&!c.collapseFirst){c.addTool(c.collapseTool)}},isLayoutRoot:function(){if(this.floatedFromCollapse){return true}return Ext.Component.prototype.isLayoutRoot.call(this)},isPlaceHolderCollapse:function(){return this.collapseMode=="placeholder"},isVisible:function(a){var b=this;if(b.collapsed&&b.placeholder){return b.placeholder.isVisible(a)}return Ext.Component.prototype.isVisible.apply(this,arguments)},onBoxReady:function(){Ext.Component.prototype.onBoxReady.call(this);if(this.collapsed){this.setHiddenDocked()}},onHide:function(){var b=this,a=b.dd;if(b.floatedFromCollapse){b.slideOutFloatedPanel(true)}if(b.draggable&&a){a.endDrag()}if(b.collapsed&&b.placeholder){b.placeholder.hide()}else{Ext.Component.prototype.onHide.apply(this,arguments)}},onMouseEnterFloated:function(a){this.slideOutTask.cancel()},onMouseLeaveFloated:function(a){this.slideOutTask.delay(500)},onRemoved:function(b){var a=this;if(a.placeholder&&!b){a.ownerCt.remove(a.placeholder,false)}Ext.container.Container.prototype.onRemoved.apply(this,arguments)},onShow:function(){var a=this;if(a.collapsed&&a.isPlaceHolderCollapse()){a.setHiddenState(true);a.placeholderCollapse()}else{Ext.Component.prototype.onShow.apply(this,arguments)}},placeholderCollapse:function(g,a){var d=this,c=d.ownerCt,j=g||d.collapseDirection,b=Ext.baseCSSPrefix+"border-region-slide-in",h=d.getPlaceholder(j),e;d.isCollapsingOrExpanding=1;d.setHiddenState(true);d.collapsed=j;if(h.rendered){if(h.el.dom.parentNode!==d.el.dom.parentNode){d.el.dom.parentNode.insertBefore(h.el.dom,d.el.dom)}h.hidden=false;h.setHiddenState(false);h.el.show();c.updateLayout()}else{c.insert(c.items.indexOf(d),h)}if(d.rendered){d.el.setVisibilityMode(d.placeholderCollapseHideMode);if(a){d.el.addCls(b);h.el.hide();e=d.convertCollapseDir(j);d.el.slideOut(e,{preserveScroll:true,duration:Ext.Number.from(a,Ext.fx.Anim.prototype.duration),listeners:{afteranimate:function(){d.el.removeCls(b);h.el.show().setStyle("display","none").slideIn(e,{easing:"linear",duration:100,listeners:{afteranimate:function(){h.focus();h.setHiddenState(false);d.isCollapsingOrExpanding=0;d.fireEvent("collapse",d)}}})}}})}else{d.el.hide();h.setHiddenState(false);d.isCollapsingOrExpanding=0;d.fireEvent("collapse",d)}}else{d.isCollapsingOrExpanding=0;if(!d.preventCollapseFire){d.fireEvent("collapse",d)}}return d},placeholderExpand:function(c){var e=this,h=e.collapsed,d=Ext.baseCSSPrefix+"border-region-slide-in",g,b,a=e.ownerLayout?e.ownerLayout.centerRegion:null;if(Ext.Component.layoutSuspendCount){c=false}if(e.floatedFromCollapse){b=e.getPosition(true);e.slideOutFloatedPanelBegin();e.slideOutFloatedPanelEnd();e.floated=false}if(c){Ext.suspendLayouts();e.placeholder.hide();e.el.show();e.collapsed=false;e.setHiddenState(false);if(a&&!b){a.hidden=true}Ext.resumeLayouts(true);a.hidden=false;e.el.addCls(d);e.isCollapsingOrExpanding=2;if(b){g=e.getXY();e.setLocalXY(b[0],b[1]);e.setXY([g[0],g[1]],{duration:Ext.Number.from(c,Ext.fx.Anim.prototype.duration),listeners:{afteranimate:function(){e.el.removeCls(d);e.isCollapsingOrExpanding=0;e.fireEvent("expand",e)}}})}else{e.el.hide();e.placeholder.el.show();e.placeholder.hidden=false;e.setHiddenState(false);e.el.slideIn(e.convertCollapseDir(h),{preserveScroll:true,duration:Ext.Number.from(c,Ext.fx.Anim.prototype.duration),listeners:{afteranimate:function(){e.el.removeCls(d);e.placeholder.hide();e.updateLayout();e.isCollapsingOrExpanding=0;e.fireEvent("expand",e)}}})}}else{e.floated=e.collapsed=false;e.el.removeCls(d);Ext.suspendLayouts();e.placeholder.hide();e.show();Ext.resumeLayouts(true);e.fireEvent("expand",e)}return e},removeBodyCls:function(b){var c=this,a=c.rendered?c.body:c.getProtoBody();a.removeCls(b);return c},removeUIClsFromElement:function(b){var c=this,a=Ext.Component.prototype.removeUIClsFromElement.apply(this,arguments);c.removeBodyCls([Ext.baseCSSPrefix+b,c.baseCls+"-body-"+b,c.baseCls+"-body-"+c.ui+"-"+b]);return a},restoreDimension:function(){var a=this.collapseDirection;return(a==="top"||a==="bottom")?"height":"width"},restoreHiddenDocked:function(){var a=this.hiddenOnCollapse;a.setStyle("visibility","");a.clear()},setBodyStyle:function(b,d){var c=this,a=c.rendered?c.body:c.getProtoBody();if(Ext.isFunction(b)){b=b()}if(arguments.length==1){if(Ext.isString(b)){b=Ext.Element.parseStyles(b)}a.setStyle(b)}else{a.setStyle(b,d)}return c},setBorder:function(a,c){if(c){return}var b=this,d=b.header;if(!a){a=0}else{if(a===true){a="1px"}else{a=b.unitizeBox(a)}}if(d){if(d.isHeader){d.setBorder(a)}else{d.border=a}}if(b.rendered&&b.bodyBorder!==false){b.body.setStyle("border-width",a)}b.updateLayout();b.border=a},setHiddenDocked:function(){var h=this,d=h.hiddenOnCollapse,c=h.getDockedItems(),a=c.length,e=0,g,b;if(h.header!==false){b=h.getReExpander()}d.add(h.body);for(;e<a;e++){g=c[e];if(g&&g!==b&&g.el){d.add(g.el)}}d.setStyle("visibility","hidden")},setUI:function(b){var a=this;Ext.Component.prototype.setUI.apply(this,arguments);if(a.header&&a.header.rendered){a.header.setUI(b)}},toggleCollapse:function(){return(this.collapsed||this.floatedFromCollapse)?this.expand():this.collapse()},updateCollapseTool:function(){var b=this,a=b.collapseTool;if(!a&&b.collapsible){b.collapseDirection=b.collapseDirection||b.getHeaderPosition()||"top";b.collapseTool=b.expandTool=a=Ext.widget({xtype:"tool",handler:b.toggleCollapse,scope:b})}if(a){if(b.collapsed&&!b.isPlaceHolderCollapse()){a.setType("expand-"+b.getOppositeDirection(b.collapseDirection))}else{a.setType("collapse-"+b.collapseDirection)}}},updateGlyph:function(c,a){var b=this,e=b.header,d=b.placeholder;if(e){if(e.isHeader){e.setGlyph(c)}else{e.glyph=c}}else{if(!b._updatingHeader){b.updateHeader()}}if(d&&d.setGlyph){d.setIcon(c)}b.fireEvent("glyphchange",b,c,a)},updateHeaderPosition:function(a){var b=this.header;if(b&&b.isHeader){b.setDock(a)}},updateIcon:function(a,c){var b=this,e=b.header,d=b.placeholder;if(e){if(e.isHeader){e.setIcon(a)}else{e.icon=a}}else{if(!b._updatingHeader){b.updateHeader()}}if(d&&d.setIcon){d.setIcon(a)}b.fireEvent("iconchange",b,a,c)},updateIconAlign:function(b){var a=this.header;if(a&&a.isHeader){a.setIconAlign(b)}},updateIconCls:function(b,a){var c=this,e=c.header,d=c.placeholder;if(e){if(e.isHeader){e.setIconCls(b)}else{e.iconCls=b}}else{if(!c._updatingHeader){c.updateHeader()}}if(d&&d.setIconCls){d.setIconCls(b)}c.fireEvent("iconclschange",c,b,a)},updateTitle:function(e,b){var c=this,g=c.header,a=c.reExpander,d=c.placeholder;if(g){if(g.isHeader){g.setTitle(e)}else{g.title=e}}else{if(c.rendered){c.updateHeader()}}if(a){a.setTitle(e)}if(d&&d.setTitle){d.setTitle(e)}c.fireEvent("titlechange",c,e,b)},updateTitleAlign:function(b){var a=this.header;if(a&&a.isHeader){a.setTitleAlign(b)}},updateTitleRotation:function(a){var b=this.header;if(b&&b.isHeader){b.setTitleRotation(a)}},unghost:function(c,a,b){var e=this,d=e.ghostPanel;if(!d){return}if(c!==false){e.el.show();if(a!==false){e.setPagePosition(d.getXY());if(e.hideMode==="offsets"){delete e.el.hideModeStyles}}if(b){e.focus(false,10)}}d.el.hide();d.setHiddenState(true)},updateHeader:function(a){this._updatingHeader=true;var h=this,d=h.header,l=h.getTitle(),g=h.tools,k=h.getIcon(),j=h.getGlyph(),m=h.getIconCls(),c=j||k||m,e=h.getHeaderPosition(),b=e==="left"||e==="right";if(Ext.isObject(d)||(d!==false&&(a||(l||c)||(g&&g.length)||(h.collapsible&&!h.titleCollapse)))){if(d&&d.isHeader){d.show()}else{d=h.header=Ext.widget(Ext.merge({xtype:"header",title:l,titleAlign:h.getTitleAlign(),vertical:b,dock:h.getHeaderPosition()||"top",titleRotation:h.getTitleRotation(),textCls:h.headerTextCls,iconCls:m,iconAlign:h.getIconAlign(),icon:k,glyph:j,baseCls:h.baseCls+"-header",tools:g,ui:h.ui,id:h.id+"_header",overCls:h.headerOverCls,indicateDrag:h.draggable,frame:(h.frame||h.alwaysFramed)&&h.frameHeader,ignoreParentFrame:h.frame||h.overlapHeader,ignoreBorderManagement:h.frame||h.ignoreHeaderBorderManagement,headerRole:h.headerRole,ownerCt:h,synthetic:true,listeners:h.collapsible&&h.titleCollapse?{click:h.toggleCollapse,scope:h}:null},h.header));h.addDocked(d,0)}}else{if(d){d.hide()}}h._updatingHeader=false},privates:{addUIToElement:function(){var a=this;a.callParent(arguments);a.addBodyCls(a.baseCls+"-body-"+a.ui)},applyTargetCls:function(a){this.getProtoBody().addCls(a)},getDefaultContentTarget:function(){return this.body},getFocusEl:function(){return this.el},getTargetEl:function(){var a=this;return a.body||a.protoBody||a.frameBody||a.el},getWidthAuthority:function(){if(this.collapsed&&this.collapsedHorizontal()){return 1}return this.callParent()},initDraggable:function(){var a=this;if(a.simpleDrag){a.initSimpleDraggable()}else{a.dd=new Ext.panel.DD(a,Ext.isBoolean(a.draggable)?null:a.draggable)}},initResizable:function(){this.callParent(arguments);if(this.collapsed){this.resizer.disable()}},initSimpleDraggable:function(){var c=this,b,a;if(!c.header){c.updateHeader(true)}if(c.header){b=Ext.applyIf({el:c.el,delegate:"#"+c.header.id},c.draggable);if(c.constrain||c.constrainHeader){b.constrain=c.constrain;b.constrainDelegate=c.constrainHeader;b.constrainTo=c.constrainTo||c.container}a=c.dd=new Ext.util.ComponentDragger(c,b);c.relayEvents(a,["dragstart","drag","dragend"]);if(c.maximized){a.disable()}}},removeUIFromElement:function(){var a=this;a.callParent(arguments);a.removeBodyCls(a.baseCls+"-body-"+a.ui)},setupRenderTpl:function(a){this.callParent(arguments);this.setupDockingRenderTpl(a)},slideOutFloatedPanel:function(a){var b=this,d=b.el,c;if(b.isSliding||b.isDestroyed){return}b.isSliding=true;b.floated=false;b.slideOutFloatedPanelBegin();if(typeof b.collapsed=="string"){c=b.convertCollapseDir(b.collapsed)}d.slideOut(c,{preserveScroll:true,duration:Ext.Number.from(b.animCollapse,Ext.fx.Anim.prototype.duration),autoEnd:a===true,listeners:{afteranimate:function(){b.slideOutFloatedPanelEnd();b.el.removeCls(Ext.baseCSSPrefix+"border-region-slide-in")}}})},slideOutFloatedPanelBegin:function(){var b=this,c=b.placeholder.el,a=b.el;b.collapsed=b.floatedFromCollapse;b.setHiddenState(true);b.floatedFromCollapse=null;c.un("mouseleave",b.onMouseLeaveFloated,b);a.un("mouseleave",b.onMouseLeaveFloated,b);c.un("mouseenter",b.onMouseEnterFloated,b);a.un("mouseenter",b.onMouseEnterFloated,b)},slideOutFloatedPanelEnd:function(a){var b=this;if(b.collapseTool){b.collapseTool.el.show()}b.slideOutTask.cancel();b.isSliding=false;if(!a){b.fireEvent("unfloat",b)}}}},0,["panel"],["box","component","container","panel"],{box:true,component:true,container:true,panel:true},["widget.panel"],[["docking",Ext.container.DockingContainer]],[Ext.panel,"Panel",Ext,"Panel"],function(){var a=this.prototype;a.animCollapse=Ext.enableFx;a.placeholderCollapseHideMode=Ext.Element.VISIBILITY}));(Ext.cmd.derive("Ext.tip.Tip",Ext.panel.Panel,{alternateClassName:"Ext.Tip",minWidth:40,maxWidth:500,shadow:"sides",defaultAlign:"tl-bl?",constrainPosition:true,autoRender:true,hidden:true,baseCls:Ext.baseCSSPrefix+"tip",floating:{shadow:true,shim:true},focusOnToFront:false,closeAction:"hide",alwaysFramed:true,frameHeader:false,initComponent:function(){var a=this;a.floating=Ext.apply({},{shadow:a.shadow,constrain:a.constrainPosition},a.self.prototype.floating);Ext.panel.Panel.prototype.initComponent.apply(this,arguments);a.constrain=a.constrain||a.constrainPosition},showAt:function(b){var a=this;Ext.Component.prototype.showAt.apply(this,arguments);if(a.isVisible()){a.setPagePosition(b[0],b[1]);if(a.constrainPosition||a.constrain){a.doConstrain()}a.toFront(true)}},privates:{initDraggable:function(){var a=this;a.draggable={el:a.getDragEl(),delegate:a.header.el,constrain:a,constrainTo:a.el.dom.parentNode};Ext.Component.prototype.initDraggable.call(a)}},ghost:undefined,unghost:undefined},0,["tip"],["box","component","container","panel","tip"],{box:true,component:true,container:true,panel:true,tip:true},["widget.tip"],0,[Ext.tip,"Tip",Ext,"Tip"],0));(Ext.cmd.derive("Ext.tip.ToolTip",Ext.tip.Tip,{alternateClassName:"Ext.ToolTip",autoHide:true,showDelay:500,hideDelay:200,dismissDelay:5000,trackMouse:false,anchorToTarget:true,anchorOffset:0,targetCounter:0,quickShowInterval:250,hideAction:"hide",fadeOutDuration:1000,ariaRole:"tooltip",initComponent:function(){var a=this;Ext.tip.Tip.prototype.initComponent.apply(this,arguments);a.lastActive=new Date();a.setTarget(a.target);a.origAnchor=a.anchor},onRender:function(b,a){var c=this;Ext.util.Renderable.prototype.onRender.apply(this,arguments);c.anchorCls=Ext.baseCSSPrefix+"tip-anchor-"+c.getAnchorPosition();c.anchorEl=c.el.createChild({role:"presentation",cls:Ext.baseCSSPrefix+"tip-anchor "+c.anchorCls})},setTarget:function(d){var b=this,a=Ext.get(d),c;if(b.target){c=Ext.get(b.target);if(Ext.supports.Touch){b.mun(c,"tap",b.onTargetOver,b)}else{b.mun(c,{mouseover:b.onTargetOver,mouseout:b.onTargetOut,mousemove:b.onMouseMove,scope:b})}}b.target=a;if(a){if(Ext.supports.Touch){b.mon(a,{tap:b.onTargetOver,scope:b})}else{b.mon(a,{mouseover:b.onTargetOver,mouseout:b.onTargetOut,mousemove:b.onMouseMove,scope:b})}}if(b.anchor){b.anchorTarget=b.target}},onMouseMove:function(d){var b=this,a,c;if(!b.target||b.target.contains(d.target)){a=b.delegate?d.getTarget(b.delegate):b.triggerElement=true;if(a){b.targetXY=d.getXY();if(a===b.triggerElement){if(!b.hidden&&b.trackMouse){c=b.getTargetXY();if(b.constrainPosition){c=b.el.adjustForConstraints(c,b.el.parent())}b.setPagePosition(c)}}else{b.hide();b.lastActive=new Date(0);b.onTargetOver(d)}}else{if((!b.closable&&b.isVisible())&&b.autoHide!==false){b.delayHide()}}}},getTargetXY:function(){var k=this,d,c,o,a,j,m,e,n,l,b,h,g;if(k.delegate){k.anchorTarget=k.triggerElement}if(k.anchor){k.targetCounter++;c=k.getOffsets();o=(k.anchorToTarget&&!k.trackMouse)?k.getAlignToXY(k.anchorTarget,k.getAnchorAlign()):k.targetXY;a=Ext.Element.getViewportWidth()-5;j=Ext.Element.getViewportHeight()-5;m=document.documentElement;e=document.body;n=(m.scrollLeft||e.scrollLeft||0)+5;l=(m.scrollTop||e.scrollTop||0)+5;b=[o[0]+c[0],o[1]+c[1]];h=k.getSize();g=k.constrainPosition;k.anchorEl.removeCls(k.anchorCls);if(k.targetCounter<2&&g){if(b[0]<n){if(k.anchorToTarget){k.defaultAlign="l-r";if(k.mouseOffset){k.mouseOffset[0]*=-1}}k.anchor="left";return k.getTargetXY()}if(b[0]+h.width>a){if(k.anchorToTarget){k.defaultAlign="r-l";if(k.mouseOffset){k.mouseOffset[0]*=-1}}k.anchor="right";return k.getTargetXY()}if(b[1]<l){if(k.anchorToTarget){k.defaultAlign="t-b";if(k.mouseOffset){k.mouseOffset[1]*=-1}}k.anchor="top";return k.getTargetXY()}if(b[1]+h.height>j){if(k.anchorToTarget){k.defaultAlign="b-t";if(k.mouseOffset){k.mouseOffset[1]*=-1}}k.anchor="bottom";return k.getTargetXY()}}k.anchorCls=Ext.baseCSSPrefix+"tip-anchor-"+k.getAnchorPosition();k.anchorEl.addCls(k.anchorCls);k.targetCounter=0;return b}else{d=k.getMouseOffset();return(k.targetXY)?[k.targetXY[0]+d[0],k.targetXY[1]+d[1]]:d}},getMouseOffset:function(){var a=this,b=a.anchor?[0,0]:[15,18];if(a.mouseOffset){b[0]+=a.mouseOffset[0];b[1]+=a.mouseOffset[1]}return b},fadeOut:function(){var a=this;a.el.fadeOut({duration:a.fadeOutDuration,callback:function(){a.hide();a.el.setOpacity("")}})},getAnchorPosition:function(){var b=this,a;if(b.anchor){b.tipAnchor=b.anchor.charAt(0)}else{a=b.defaultAlign.match(/^([a-z]+)-([a-z]+)(\?)?$/);b.tipAnchor=a[1].charAt(0)}switch(b.tipAnchor){case"t":return"top";case"b":return"bottom";case"r":return"right"}return"left"},getAnchorAlign:function(){switch(this.anchor){case"top":return"tl-bl";case"left":return"tl-tr";case"right":return"tr-tl";default:return"bl-tl"}},getOffsets:function(){var c=this,d,b,a=c.getAnchorPosition().charAt(0);if(c.anchorToTarget&&!c.trackMouse){switch(a){case"t":b=[0,9];break;case"b":b=[0,-13];break;case"r":b=[-13,0];break;default:b=[9,0];break}}else{switch(a){case"t":b=[-15-c.anchorOffset,30];break;case"b":b=[-19-c.anchorOffset,-13-c.el.dom.offsetHeight];break;case"r":b=[-15-c.el.dom.offsetWidth,-13-c.anchorOffset];break;default:b=[25,-13-c.anchorOffset];break}}d=c.getMouseOffset();b[0]+=d[0];b[1]+=d[1];return b},onTargetOver:function(d){var c=this,b=c.delegate,a;if(c.disabled||d.within(c.target.dom,true)){return}a=b?d.getTarget(b):true;if(a){c.triggerElement=a;c.triggerEvent=d;c.clearTimer("hide");c.targetXY=d.getXY();c.delayShow()}},delayShow:function(c){var a=this,b=a.el&&(c===false||!a.trackMouse)&&a.getTargetXY();if(a.hidden&&!a.showTimer){if(Ext.Date.getElapsed(a.lastActive)<a.quickShowInterval){a.show()}else{a.showTimer=Ext.defer(a.showFromDelay,a.showDelay,a,[b])}}else{if(!a.hidden&&a.autoHide!==false){a.show(b)}}},showFromDelay:function(a){this.fromDelayShow=true;this.show(a);delete this.fromDelayShow},onShowVeto:function(){Ext.Component.prototype.onShowVeto.call(this);delete this.triggerElement;this.clearTimer("show")},onTargetOut:function(d){var b=this,a=b.triggerElement,c=a===true?b.target:a;if(b.disabled||!a||d.within(c,true)){return}if(b.showTimer){b.clearTimer("show");b.triggerElement=null}if(b.autoHide!==false){b.delayHide()}},delayHide:function(){var a=this;if(!a.hidden&&!a.hideTimer){a.hideTimer=Ext.defer(a[a.hideAction],a.hideDelay,a)}},hide:function(){var a=this;a.clearTimer("dismiss");a.lastActive=new Date();if(a.anchorEl){a.anchorEl.hide()}Ext.Component.prototype.hide.apply(this,arguments);delete a.triggerElement},show:function(b){var a=this;Ext.Component.prototype.show.call(this);if(this.hidden===false){if(a.anchor){a.anchor=a.origAnchor}if(!a.calledFromShowAt){a.showAt(b||a.getTargetXY())}if(a.anchor){a.syncAnchor();a.anchorEl.show()}else{a.anchorEl.hide()}}},showAt:function(b){var a=this;a.lastActive=new Date();a.clearTimers();a.calledFromShowAt=true;if(!a.isVisible()){Ext.tip.Tip.prototype.showAt.apply(this,arguments)}if(a.isVisible()){a.setPagePosition(b[0],b[1]);if(a.constrainPosition||a.constrain){a.doConstrain()}a.toFront(true);a.el.sync(true);if(a.dismissDelay&&a.autoHide!==false){a.dismissTimer=Ext.defer(a.hide,a.dismissDelay,a)}if(a.anchor){a.syncAnchor();if(!a.anchorEl.isVisible()){a.anchorEl.show()}}else{a.anchorEl.hide()}}delete a.calledFromShowAt},syncAnchor:function(){var c=this,a,b,d;switch(c.tipAnchor.charAt(0)){case"t":a="b";b="tl";d=[20+c.anchorOffset,1];break;case"r":a="l";b="tr";d=[-1,12+c.anchorOffset];break;case"b":a="t";b="bl";d=[20+c.anchorOffset,-1];break;default:a="r";b="tl";d=[1,12+c.anchorOffset];break}c.anchorEl.alignTo(c.el,a+"-"+b,d);c.anchorEl.setStyle("z-index",parseInt(c.el.getZIndex(),10)||0+1).setVisibilityMode(Ext.Element.DISPLAY)},setPagePosition:function(a,c){var b=this;Ext.Component.prototype.setPagePosition.apply(this,arguments);if(b.anchor){b.syncAnchor()}},_timerNames:{},clearTimer:function(a){var b=this,d=b._timerNames,c=d[a]||(d[a]=a+"Timer"),e=b[c];if(e){clearTimeout(e);b[c]=null}},clearTimers:function(){var a=this;a.clearTimer("show");a.clearTimer("dismiss");a.clearTimer("hide")},onShow:function(){var a=this;Ext.panel.Panel.prototype.onShow.call(this);a.mon(Ext.getDoc(),"mousedown",a.onDocMouseDown,a)},onHide:function(){var a=this;Ext.panel.Panel.prototype.onHide.call(this);a.mun(Ext.getDoc(),"mousedown",a.onDocMouseDown,a)},onDocMouseDown:function(b){var a=this;if(!a.closable&&!b.within(a.el.dom)){a.disable();Ext.defer(a.doEnable,100,a)}},doEnable:function(){if(!this.isDestroyed){this.enable()}},onDisable:function(){Ext.Component.prototype.onDisable.call(this);this.clearTimers();this.hide()},beforeDestroy:function(){var a=this;a.clearTimers();Ext.destroy(a.anchorEl);delete a.anchorEl;delete a.target;delete a.anchorTarget;delete a.triggerElement;Ext.panel.Panel.prototype.beforeDestroy.call(this)},onDestroy:function(){Ext.getDoc().un("mousedown",this.onDocMouseDown,this);Ext.container.Container.prototype.onDestroy.call(this)}},0,["tooltip"],["box","component","container","panel","tip","tooltip"],{box:true,component:true,container:true,panel:true,tip:true,tooltip:true},["widget.tooltip"],0,[Ext.tip,"ToolTip",Ext,"ToolTip"],0));(Ext.cmd.derive("Ext.tip.QuickTip",Ext.tip.ToolTip,{alternateClassName:"Ext.QuickTip",interceptTitles:false,title:"&#160;",tagConfig:{namespace:"data-",attribute:"qtip",width:"qwidth",target:"target",title:"qtitle",hide:"hide",cls:"qclass",align:"qalign",anchor:"anchor",showDelay:"qshowDelay",hideAction:"hideAction",anchorTarget:"anchorTarget"},shrinkWrapDock:true,initComponent:function(){var a=this;a.target=a.target||Ext.getDoc();a.targets=a.targets||{};Ext.tip.ToolTip.prototype.initComponent.call(this)},register:function(c){var h=Ext.isArray(c)?c:arguments,d=0,a=h.length,g,b,e;for(;d<a;d++){c=h[d];g=c.target;if(g){if(Ext.isArray(g)){for(b=0,e=g.length;b<e;b++){this.targets[Ext.id(g[b])]=c}}else{this.targets[Ext.id(g)]=c}}}},unregister:function(a){delete this.targets[Ext.id(a)]},cancelShow:function(a){var b=this,c=b.activeTarget;a=Ext.get(a).dom;if(b.isVisible()){if(c&&c.el===a){b.hide()}}else{if(c&&c.el===a){b.clearTimer("show")}}},getTipCfg:function(e,d){var c=e.title,b,a,g;if(this.interceptTitles&&c&&Ext.isString(c)){e.qtip=c;e.removeAttribute("title");if(d){d.preventDefault()}return{text:c}}else{b=this.tagConfig;a=b.attr||(b.attr=b.namespace+b.attribute);e=Ext.fly(e).findParent(function(h){return g=h.getAttribute(a)});if(e){return{target:e,text:g}}}},onTargetOver:function(a){this.doTargetOver(a.getTarget(this.delegate),null,a)},doTargetOver:function(k,r,b){var l=this,a,e,g,c,j,m,d,o,h,q,n,p;if(l.disabled){return}if(typeof k==="string"){k=Ext.getDom(k)}l.targetXY=r||(b?b.getXY():Ext.fly(k).getXY());if(!k||k.nodeType!==1||k==document.documentElement||k==document.body){return}if(l.activeTarget&&((k===l.activeTarget.el)||Ext.fly(l.activeTarget.el).contains(k))){if(l.targetTextEmpty()){l.onShowVeto();delete l.activeTarget}else{l.clearTimer("hide");l.show()}return}if(k){h=l.targets;for(p in h){if(h.hasOwnProperty(p)){n=h[p];q=Ext.fly(n.target);if(q&&(q.dom===k||q.contains(k))){c=q.dom;break}}}if(c){l.activeTarget=l.targets[c.id];l.activeTarget.el=k;l.anchor=l.activeTarget.anchor;if(l.anchor){l.anchorTarget=k}a=parseInt(l.activeTarget.showDelay,10);if(a){g=l.showDelay;l.showDelay=a}l.delayShow();if(a){l.showDelay=g}if(!(e=l.activeTarget.hideAction)){delete l.hideAction}else{l.hideAction=e}return}}c=Ext.fly(k,"_quicktip-target");j=l.tagConfig;m=j.namespace;d=l.getTipCfg(k,b);if(d){if(d.target){k=d.target;c=Ext.fly(k,"_quicktip-target")}o=c.getAttribute(m+j.hide);l.activeTarget={el:k,text:d.text,width:+c.getAttribute(m+j.width)||null,autoHide:o!="user"&&o!=="false",title:c.getAttribute(m+j.title),cls:c.getAttribute(m+j.cls),align:c.getAttribute(m+j.align),showDelay:parseInt(c.getAttribute(m+j.showDelay)||0,10),hideAction:c.getAttribute(m+j.hideAction),anchorTarget:c.getAttribute(m+j.anchorTarget)};if(!l.initialConfig.hasOwnProperty("anchor")){l.anchor=c.getAttribute(m+j.anchor)}if(l.anchor&&!l.initialConfig.hasOwnProperty("anchorTarget")){l.anchorTarget=l.activeTarget.anchorTarget||k}a=parseInt(l.activeTarget.showDelay,10);if(a){g=l.showDelay;l.showDelay=a}l.delayShow();if(a){l.showDelay=g}}},onTargetOut:function(g){var c=this,d=c.activeTarget,a,b;if(d&&g.within(c.activeTarget.el)&&!c.getTipCfg(g.getTarget(),g)){return}c.clearTimer("show");delete c.activeTarget;if(c.autoHide!==false){a=d&&parseInt(d.hideDelay,10);if(a){b=c.hideDelay;c.hideDelay=a}c.delayHide();if(a){c.hideDelay=b}}},targetTextEmpty:function(){var c=this,d=c.activeTarget,a=c.tagConfig,b,e;if(d){b=d.el;if(b){e=b.getAttribute(a.namespace+a.attribute);if(!e&&!c.targets[Ext.id(d.target)]){return true}}}return false},show:function(){var b=this,a=b.fromDelayShow;if(a&&b.targetTextEmpty()){b.onShowVeto();delete b.activeTarget;return}Ext.tip.ToolTip.prototype.show.apply(this,arguments)},showAt:function(e){var c=this,d=c.activeTarget,g=c.header,b,a;if(d){if(!c.rendered){c.render(Ext.getBody());c.activeTarget=d}c.suspendLayouts();if(d.title){c.setTitle(d.title);g.show()}else{if(g){g.hide()}}c.update(d.text);c.autoHide=d.autoHide;b=d.dismissDelay;c.dismissDelay=Ext.isNumber(b)?b:c.dismissDelay;if(d.mouseOffset){e[0]+=d.mouseOffset[0];e[1]+=d.mouseOffset[1]}a=c.lastCls;if(a){c.removeCls(a);delete c.lastCls}a=d.cls;if(a){c.addCls(a);c.lastCls=a}c.setWidth(d.width);if(c.anchor){c.constrainPosition=false}else{if(d.align){e=c.getAlignToXY(d.el,d.align);c.constrainPosition=false}else{c.constrainPosition=true}}c.resumeLayouts(true)}Ext.tip.ToolTip.prototype.showAt.apply(this,[e])},hide:function(){delete this.activeTarget;Ext.tip.ToolTip.prototype.hide.call(this)}},0,["quicktip"],["box","component","container","panel","quicktip","tip","tooltip"],{box:true,component:true,container:true,panel:true,quicktip:true,tip:true,tooltip:true},["widget.quicktip"],0,[Ext.tip,"QuickTip",Ext,"QuickTip"],0));(Ext.cmd.derive("Ext.tip.QuickTipManager",Ext.Base,{singleton:true,alternateClassName:"Ext.QuickTips",disabled:false,init:function(e,b){var d=this;if(!d.tip){if(!Ext.isReady){Ext.onReady(function(){Ext.tip.QuickTipManager.init(e,b)});return false}var a=Ext.apply({disabled:d.disabled,id:"ext-quicktips-tip"},b),c=a.className,g=a.xtype;if(c){delete a.className}else{if(g){c="widget."+g;delete a.xtype}}if(e!==false){a.renderTo=document.body}d.tip=Ext.create(c||"Ext.tip.QuickTip",a);Ext.quickTipsActive=true}},destroy:function(){Ext.destroy(this.tip);this.tip=undefined},ddDisable:function(){var a=this,b=a.tip;if(b&&!a.disabled){b.disable()}},ddEnable:function(){var a=this,b=a.tip;if(b&&!a.disabled){b.enable()}},enable:function(){var a=this,b=a.tip;if(b){b.enable()}a.disabled=false},disable:function(){var a=this,b=a.tip;if(b){b.disable()}a.disabled=true},isEnabled:function(){var a=this.tip;return a!==undefined&&!a.disabled},getQuickTip:function(){return this.tip},register:function(){var a=this.tip;a.register.apply(a,arguments)},unregister:function(){var a=this.tip;a.unregister.apply(a,arguments)},tips:function(){var a=this.tip;a.register.apply(a,arguments)}},0,0,0,0,0,0,[Ext.tip,"QuickTipManager",Ext,"QuickTips"],0));(Ext.cmd.derive("Ext.app.Application",Ext.app.Controller,{isApplication:true,scope:undefined,namespaces:[],paths:null,appFolder:"app",config:{name:"",enableQuickTips:true,appProperty:"app",autoCreateViewport:false,defaultToken:null,glyphFontFamily:null},onClassExtended:function(l,c,k){var b=Ext.app.Controller,d=l.prototype,n=[],h=c.autoCreateViewport,e,m,a,g,j;a=c.name||l.superclass.name;j=c.appFolder||l.superclass.appFolder;if(a){c.$namespace=a;Ext.app.addNamespaces(a)}if(c.namespaces){Ext.app.addNamespaces(c.namespaces)}if(!c["paths processed"]){if(a&&j){Ext.Loader.setPath(a,j)}m=c.paths;if(m){for(g in m){if(m.hasOwnProperty(g)){Ext.Loader.setPath(g,m[g])}}}}else{delete c["paths processed"]}if(h){if(h===true){h="Viewport"}else{n.push("Ext.plugin.Viewport")}b.processDependencies(d,n,a,"view",h)}if(n.length){e=k.onBeforeCreated;k.onBeforeCreated=function(o,q){var p=Ext.Array.clone(arguments);Ext.require(n,function(){return e.apply(this,p)})}}},constructor:function(a){var b=this;Ext.app.route.Router.application=b;Ext.app.Controller.prototype.constructor.apply(this,arguments);b.doInit(b);b.initNamespace();b.initControllers();b.onBeforeLaunch();b.finishInitControllers()},initNamespace:function(){var c=this,a=c.getAppProperty(),b;b=Ext.namespace(c.getName());if(b){b.getApplication=function(){return c};if(a){if(!b[a]){b[a]=c}}}},initControllers:function(){var c=this,d=Ext.Array.from(c.controllers);c.controllers=new Ext.util.MixedCollection();for(var a=0,b=d.length;a<b;a++){c.getController(d[a])}},finishInitControllers:function(){var c=this,d,b,a;d=c.controllers.getRange();for(b=0,a=d.length;b<a;b++){d[b].finishInit(c)}},launch:Ext.emptyFn,onBeforeLaunch:function(){var e=this,d=Ext.util.History,j=e.getDefaultToken(),h,k,g,a,b;if(e.getEnableQuickTips()){e.initQuickTips()}if(e.getAutoCreateViewport()){e.initViewport()}e.launch.call(e.scope||e);e.launched=true;e.fireEvent("launch",e);h=e.controllers.items;g=h.length;for(k=0;k<g;k++){a=h[k];a.onLaunch(e)}if(!d.ready){d.init()}b=d.getToken();if(b){e.redirectTo(b,true)}else{if(j){d.add(j)}}},getModuleClassName:function(a,b){return Ext.app.Controller.getFullName(a,b,this.getName()).absoluteName},getViewportName:function(){var a=null,b=this.getAutoCreateViewport();if(b){a=(b===true)?"Viewport":b}return a},initQuickTips:function(){Ext.tip.QuickTipManager.init()},initViewport:function(){var a=this.getView(this.getViewportName()),b;if(a){if(!a.prototype.isViewport){b={plugins:"viewport"}}this.viewport=a.create(b)}},createController:function(a){return this.getController(a)},destroyController:function(a){if(typeof a==="string"){a=this.getController(a,true)}Ext.destroy(a)},getController:function(b,a){var l=this,d=l.controllers,j,g,h,e,k,m;g=d.get(b);if(!g){m=d.items;for(e=0,h=m.length;e<h;++e){k=m[e];j=k.getModuleClassName();if(j&&j===b){g=k;break}}}if(!g&&!a){j=l.getModuleClassName(b,"controller");g=Ext.create(j,{application:l,moduleClassName:b});d.add(g);if(l._initialized){g.doInit(l)}}return g},unregister:function(a){this.controllers.remove(a)},getApplication:function(){return this},destroy:function(a){var c=this,e=c.controllers,b=Ext.namespace(c.getName()),d=c.getAppProperty();Ext.destroy(c.viewport);if(e){e.each(function(g){g.destroy(a,true)})}c.controllers=null;Ext.app.Controller.prototype.destroy.apply(this,[a,true]);if(b&&b[d]===c){delete b[d]}},updateGlyphFontFamily:function(a){Ext.setGlyphFontFamily(a)}},1,0,0,0,0,0,[Ext.app,"Application"],0));Ext.define("Ext.overrides.app.Application",{override:"Ext.app.Application"});Ext.application=function(a){var c=function(e){Ext.onReady(function(){Ext.app.Application.instance=new e()})},d=a.paths,b;if(typeof a==="string"){Ext.require(a,function(){c(Ext.ClassManager.get(a))})}else{a=Ext.apply({extend:"Ext.app.Application"},a);Ext.Loader.setPath(a.name,a.appFolder||"app");if(d){for(b in d){if(d.hasOwnProperty(b)){Ext.Loader.setPath(b,d[b])}}}a["paths processed"]=true;Ext.define(a.name+".$application",a,function(){c(this)})}};(Ext.cmd.derive("Ext.app.domain.View",Ext.app.EventDomain,{isInstance:true,constructor:function(a){Ext.app.EventDomain.prototype.constructor.apply(this,arguments);this.controller=a;this.monitoredClasses=[Ext.Component]},match:function(d,a,b){var c=false;if(a==="#"){c=b===d.getController()}else{c=d.is(a)}return c},destroy:function(){this.controller=null;Ext.app.EventDomain.prototype.destroy.call(this)}},1,0,0,0,0,0,[Ext.app.domain,"View"],0));(Ext.cmd.derive("Ext.app.ViewController",Ext.app.BaseController,{isViewController:true,factoryConfig:{type:"controller"},config:{closeViewAction:"destroy"},constructor:function(){this.compDomain=new Ext.app.domain.View(this);Ext.app.BaseController.prototype.constructor.apply(this,arguments)},beforeInit:Ext.emptyFn,init:Ext.emptyFn,initViewModel:Ext.emptyFn,destroy:function(){var a=this,b=a.compDomain;if(b){b.unlisten(a);b.destroy()}a.compDomain=a.view=null;Ext.app.BaseController.prototype.destroy.call(this)},closeView:function(){var a=this.getView(),b;if(a){b=this.getCloseViewAction();a[b]()}},control:function(a,b){var c=a;if(Ext.isString(a)){c={};c[a]=b}this.compDomain.listen(c,this)},listen:function(c,a){var b=c.component;if(b){c=Ext.apply({},c);delete c.component;this.control(b)}this.callParent([c,a])},getReferences:function(){return this.view.getReferences()},getView:function(){return this.view},lookupReferenceHolder:function(){var a=this.view;return a&&a.lookupReferenceHolder()},lookupReference:function(b){var a=this.view;return a&&a.lookupReference(b)},getSession:function(){var a=this.view;return a&&a.lookupSession()},getViewModel:function(){var a=this.view;return a&&a.lookupViewModel()},getStore:function(b){var a=this.getViewModel();return a?a.getStore(b):null},fireViewEvent:function(c){var b=this.view,a=false;if(b){a=b.fireEvent.apply(b,arguments)}return a},privates:{view:null,ensureId:function(){var a=this.getId();if(!a){this.setId(Ext.id(null,"controller-"))}},attachReference:function(b){var a=this.view;if(a){a.attachReference(b)}},clearReference:function(b){var a=this.view;if(a){a.clearReference(b)}},clearReferences:function(){var a=this.view;if(a){a.clearReferences()}},setView:function(a){this.view=a;if(!this.beforeInit.$nullFn){this.beforeInit()}}}},1,0,0,0,0,[[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable]],[Ext.app,"ViewController"],0));(Ext.cmd.derive("Ext.form.Labelable",Ext.Mixin,{isLabelable:true,mixinConfig:{id:"labelable",on:{beforeRender:"beforeLabelRender",onRender:"onLabelRender"}},config:{childEls:["labelEl","bodyEl","errorEl","errorWrapEl"]},labelableRenderTpl:["{beforeLabelTpl}",'<label id="{id}-labelEl" data-ref="labelEl" class="{labelCls} {labelCls}-{ui} {labelClsExtra} ','{unselectableCls}" style="{labelStyle}"<tpl if="inputId">',' for="{inputId}"</tpl> {labelAttrTpl}>','<span class="{labelInnerCls} {labelInnerCls}-{ui}" style="{labelInnerStyle}">',"{beforeLabelTextTpl}",'<tpl if="fieldLabel">{fieldLabel}','<tpl if="labelSeparator">','<span role="separator">{labelSeparator}</span>',"</tpl>","</tpl>","{afterLabelTextTpl}","</span>","</label>","{afterLabelTpl}",'<div id="{id}-bodyEl" data-ref="bodyEl" class="{baseBodyCls} {baseBodyCls}-{ui}<tpl if="fieldBodyCls">',' {fieldBodyCls} {fieldBodyCls}-{ui}</tpl> {growCls} {extraFieldBodyCls}"','<tpl if="bodyStyle"> style="{bodyStyle}"</tpl>>',"{beforeBodyEl}","{beforeSubTpl}","{[values.$comp.getSubTplMarkup(values)]}","{afterSubTpl}","{afterBodyEl}","</div>",'<tpl if="renderError">','<div id="{id}-errorWrapEl" data-ref="errorWrapEl" class="{errorWrapCls} {errorWrapCls}-{ui}',' {errorWrapExtraCls}" style="{errorWrapStyle}">','<div role="alert" aria-live="polite" id="{id}-errorEl" data-ref="errorEl" ','class="{errorMsgCls} {invalidMsgCls} {invalidMsgCls}-{ui}" ','data-anchorTarget="{id}-inputEl">',"</div>","</div>","</tpl>",{disableFormats:true}],activeErrorsTpl:undefined,htmlActiveErrorsTpl:['<tpl if="errors && errors.length">','<ul class="{listCls}">','<tpl if="Ext.enableAria">','<tpl if="fieldLabel"><div>{fieldLabel}</div></tpl>',"</tpl>",'<tpl for="errors"><li>{.}</li></tpl>',"</ul>","</tpl>"],plaintextActiveErrorsTpl:['<tpl if="errors && errors.length">','<tpl if="Ext.enableAria">','<tpl if="fieldLabel">{fieldLabel}\n</tpl>',"</tpl>",'<tpl for="errors"><tpl if="xindex &gt; 1">\n</tpl>{.}</tpl>',"</tpl>"],isFieldLabelable:true,formItemCls:Ext.baseCSSPrefix+"form-item",labelCls:Ext.baseCSSPrefix+"form-item-label",topLabelCls:Ext.baseCSSPrefix+"form-item-label-top",rightLabelCls:Ext.baseCSSPrefix+"form-item-label-right",labelInnerCls:Ext.baseCSSPrefix+"form-item-label-inner",topLabelSideErrorCls:Ext.baseCSSPrefix+"form-item-label-top-side-error",errorMsgCls:Ext.baseCSSPrefix+"form-error-msg",errorWrapCls:Ext.baseCSSPrefix+"form-error-wrap",errorWrapSideCls:Ext.baseCSSPrefix+"form-error-wrap-side",errorWrapUnderCls:Ext.baseCSSPrefix+"form-error-wrap-under",errorWrapUnderSideLabelCls:Ext.baseCSSPrefix+"form-error-wrap-under-side-label",baseBodyCls:Ext.baseCSSPrefix+"form-item-body",invalidIconCls:Ext.baseCSSPrefix+"form-invalid-icon",invalidUnderCls:Ext.baseCSSPrefix+"form-invalid-under",fieldBodyCls:"",invalidCls:Ext.baseCSSPrefix+"form-invalid",fieldLabel:undefined,labelAlign:"left",labelWidth:100,labelPad:5,labelSeparator:":",hideLabel:false,hideEmptyLabel:true,preventMark:false,autoFitErrors:true,msgTarget:"qtip",msgTargets:{qtip:1,title:1,under:1,side:1,none:1},noWrap:true,labelableInsertions:["beforeBodyEl","afterBodyEl","beforeLabelTpl","afterLabelTpl","beforeSubTpl","afterSubTpl","beforeLabelTextTpl","afterLabelTextTpl","labelAttrTpl"],statics:{initTip:function(){var b=this.tip,a;if(!b){a={id:"ext-form-error-tip",ui:"form-invalid"};if(Ext.supports.Touch){a.dismissDelay=0;a.anchor="top";a.showDelay=0;a.listeners={beforeshow:function(){this.minWidth=Ext.fly(this.anchorTarget).getWidth()}}}b=this.tip=Ext.create("Ext.tip.QuickTip",a);b.tagConfig=Ext.apply({},{attribute:"errorqtip"},b.tagConfig)}}},initLabelable:function(){var a=this,b=a.padding;if(b){a.padding=undefined;a.extraMargins=Ext.Element.parseBox(b)}if(!a.activeErrorsTpl){if(a.msgTarget=="title"){a.activeErrorsTpl=a.plaintextActiveErrorsTpl}else{a.activeErrorsTpl=a.htmlActiveErrorsTpl}}a.addCls([a.formItemCls,a.formItemCls+"-"+a.ui]);a.lastActiveError="";a.enableBubble("errorchange")},trimLabelSeparator:function(){var c=this,d=c.labelSeparator,a=c.fieldLabel||"",b=a.substr(a.length-1);return b===d?a.slice(0,-1):a},getFieldLabel:function(){return this.trimLabelSeparator()},setFieldLabel:function(c){c=c||"";var d=this,e=d.labelSeparator,b=d.labelEl,a=d.errorWrapEl,g=d.errorWrapUnderSideLabelCls;d.fieldLabel=c;if(d.rendered){if(Ext.isEmpty(c)&&d.hideEmptyLabel){b.setDisplayed("none");if(a){a.removeCls(g)}}else{if(e){c=d.trimLabelSeparator()+'<span role="separator">'+e+"</span>"}b.first().setHtml(c);b.setDisplayed("");if(a){a.addCls(g)}}d.updateLayout()}},getInsertionRenderData:function(d,e){var b=e.length,a,c;while(b--){a=e[b];c=this[a];if(c){if(typeof c!="string"){if(!c.isTemplate){c=Ext.XTemplate.getTpl(this,a)}c=c.apply(d)}}d[a]=c||""}return d},getLabelableRenderData:function(){var q=this,t=q.labelAlign,e=(t==="top"),n=(t==="right"),k=(q.msgTarget==="side"),g=(q.msgTarget==="under"),s=q.errorMsgCls,h=q.labelPad,p=q.labelWidth,b=q.labelClsExtra||"",j=k?q.errorWrapSideCls:q.errorWrapUnderCls,a="",m="",d=q.hasVisibleLabel(),o=q.autoFitErrors,l=q.defaultBodyWidth,c,r;if(e){b+=" "+q.topLabelCls;if(h){m="padding-bottom:"+h+"px;"}if(k&&!o){b+=" "+q.topLabelSideErrorCls}}else{if(n){b+=" "+q.rightLabelCls}if(h){a+=q.getHorizontalPaddingStyle()+h+"px;"}a+="width:"+(p+(h?h:0))+"px;";m="width:"+p+"px"}if(d){if(!e&&g){j+=" "+q.errorWrapUnderSideLabelCls}}else{a+="display:none"}if(l){c="min-width:"+l+"px;max-width:"+l+"px;"}r={id:q.id,inputId:q.getInputId(),labelCls:q.labelCls,labelClsExtra:b,labelStyle:a,labelInnerStyle:m,labelInnerCls:q.labelInnerCls,unselectableCls:Ext.Element.unselectableCls,bodyStyle:c,baseBodyCls:q.baseBodyCls,fieldBodyCls:q.fieldBodyCls,extraFieldBodyCls:q.extraFieldBodyCls,errorWrapCls:q.errorWrapCls,errorWrapExtraCls:j,renderError:k||g,invalidMsgCls:k?q.invalidIconCls:g?q.invalidUnderCls:"",errorMsgCls:s,growCls:q.grow?q.growCls:"",errorWrapStyle:(k&&!o)?"visibility:hidden":"display:none",fieldLabel:q.getFieldLabel(),labelSeparator:q.labelSeparator};q.getInsertionRenderData(r,q.labelableInsertions);return r},getHorizontalPaddingStyle:function(){return"padding-right:"},beforeLabelRender:function(){var a=this;a.setFieldDefaults(a.getInherited().fieldDefaults);if(a.ownerLayout){a.addCls(Ext.baseCSSPrefix+a.ownerLayout.type+"-form-item")}},onLabelRender:function(){var d=this,c={},g=Ext.Element,a=d.errorWrapEl,e,b;if(a){a.setVisibilityMode((d.msgTarget==="side"&&!d.autoFitErrors)?g.VISIBILITY:g.DISPLAY)}if(d.extraMargins){e=d.el.getMargin();for(b in e){if(e.hasOwnProperty(b)){c["margin-"+b]=(e[b]+d.extraMargins[b])+"px"}}d.el.setStyle(c)}},hasVisibleLabel:function(){if(this.hideLabel){return false}return !(this.hideEmptyLabel&&!this.getFieldLabel())},getSubTplMarkup:function(){return""},getInputId:function(){return""},getActiveError:function(){return this.activeError||""},hasActiveError:function(){return !!this.getActiveError()},setActiveError:function(a){this.setActiveErrors(a)},getActiveErrors:function(){return this.activeErrors||[]},setActiveErrors:function(h){var e=this,g=e.errorWrapEl,c=e.msgTarget,b=c==="side",k=c==="qtip",a,d,j;h=Ext.Array.from(h);d=e.getTpl("activeErrorsTpl");e.activeErrors=h;a=e.activeError=d.apply({fieldLabel:e.fieldLabel,errors:h,listCls:Ext.plainListCls});e.renderActiveError();if(e.rendered){if(b){e.errorEl.dom.setAttribute("data-errorqtip",a)}else{if(k){e.getActionEl().dom.setAttribute("data-errorqtip",a)}else{if(c==="title"){e.getActionEl().dom.setAttribute("title",a)}}}if(b||k){Ext.form.Labelable.initTip()}if(!e.msgTargets[c]){j=Ext.get(c);if(j){j.dom.innerHTML=a}}}if(g){g.setVisible(h.length>0);if(b&&e.autoFitErrors){e.labelEl.addCls(e.topLabelSideErrorCls)}e.updateLayout()}},unsetActiveError:function(){var c=this,a=c.errorWrapEl,b=c.msgTarget,d;delete c.activeError;delete c.activeErrors;c.renderActiveError();if(c.rendered){if(b==="qtip"){c.getActionEl().dom.removeAttribute("data-errorqtip")}else{if(b==="title"){c.getActionEl().dom.removeAttribute("title")}}if(!c.msgTargets[b]){d=Ext.get(b);if(d){d.dom.innerHTML=""}}if(a){a.hide();if(b==="side"&&c.autoFitErrors){c.labelEl.removeCls(c.topLabelSideErrorCls)}c.updateLayout()}}},renderActiveError:function(){var c=this,b=c.getActiveError(),a=!!b;if(b!==c.lastActiveError){c.fireEvent("errorchange",c,b);c.lastActiveError=b}if(c.rendered&&!c.isDestroyed&&!c.preventMark){c.toggleInvalidCls(a);if(c.errorEl){c.errorEl.dom.innerHTML=b}}},toggleInvalidCls:function(a){this.el[a?"addCls":"removeCls"](this.invalidCls)},setFieldDefaults:function(b){var a;for(a in b){if(!this.hasOwnProperty(a)){this[a]=b[a]}}}},0,0,0,0,0,0,[Ext.form,"Labelable"],function(){if(Ext.supports.Touch){this.prototype.msgTarget="side"}}));(Ext.cmd.derive("Ext.form.field.Field",Ext.Base,{mixinId:"field",isFormField:true,config:{validation:null},disabled:false,submitValue:true,validateOnChange:true,suspendCheckChange:0,dirty:false,initField:function(){this.initValue()},initValue:function(){var a=this;a.suspendCheckChange++;a.setValue(a.value);a.suspendCheckChange--;a.originalValue=a.lastValue=a.getValue()},getFieldIdentifier:function(){return this.isEditorComponent?this.dataIndex:this.name},getName:function(){return this.name},getValue:function(){return this.value},setValue:function(b){var a=this;a.value=b;a.checkChange();return a},isEqual:function(b,a){return String(b)===String(a)},isEqualAsString:function(b,a){return String(Ext.valueFrom(b,""))===String(Ext.valueFrom(a,""))},getSubmitData:function(){var a=this,b=null;if(!a.disabled&&a.submitValue){b={};b[a.getName()]=""+a.getValue()}return b},getModelData:function(a,b){var c=this,d=null;if(!c.disabled&&(c.submitValue||!b)){d={};d[c.getFieldIdentifier()]=c.getValue()}return d},reset:function(){var a=this;a.beforeReset();a.setValue(a.originalValue);a.clearInvalid();delete a.wasValid},beforeReset:Ext.emptyFn,resetOriginalValue:function(){this.originalValue=this.getValue();this.checkDirty()},checkChange:function(){var c=this,b,a;if(!c.suspendCheckChange){b=c.getValue();a=c.lastValue;if(!c.isDestroyed&&c.didValueChange(b,a)){c.lastValue=b;c.fireEvent("change",c,b,a);c.onChange(b,a)}}},didValueChange:function(b,a){return !this.isEqual(b,a)},onChange:function(a){var b=this;if(b.validateOnChange){b.validate()}b.checkDirty();b.publishValue(a)},publishValue:function(a){if(this.rendered){this.publishState("value",a)}},isDirty:function(){var a=this;return !a.disabled&&!a.isEqual(a.getValue(),a.originalValue)},checkDirty:function(){var a=this,b=a.isDirty();if(b!==a.wasDirty){a.dirty=b;a.fireEvent("dirtychange",a,b);a.onDirtyChange(b);a.wasDirty=b}},onDirtyChange:Ext.emptyFn,getErrors:function(b){var c=[],a=this.getValidation();if(a&&a!==true){c.push(a)}return c},isValid:function(){var a=this;return a.disabled||Ext.isEmpty(a.getErrors())},validate:function(){var a=this,b=a.isValid();if(b!==a.wasValid){a.wasValid=b;a.fireEvent("validitychange",a,b)}return b},batchChanges:function(a){try{this.suspendCheckChange++;a()}catch(b){throw b}finally{this.suspendCheckChange--}this.checkChange()},isFileUpload:function(){return false},extractFileInput:function(){return null},markInvalid:Ext.emptyFn,clearInvalid:Ext.emptyFn,updateValidation:function(){this.validate()}},0,0,0,0,0,0,[Ext.form.field,"Field"],0));(Ext.cmd.derive("Ext.form.field.Base",Ext.Component,{alternateClassName:["Ext.form.Field","Ext.form.BaseField"],shrinkWrap:true,fieldSubTpl:['<input id="{id}" data-ref="inputEl" type="{type}" role="{role}" {inputAttrTpl}',' size="1"','<tpl if="name"> name="{name}"</tpl>','<tpl if="value"> value="{[Ext.util.Format.htmlEncode(values.value)]}"</tpl>','<tpl if="placeholder"> placeholder="{placeholder}"</tpl>','{%if (values.maxLength !== undefined){%} maxlength="{maxLength}"{%}%}','<tpl if="readOnly"> readonly="readonly"</tpl>','<tpl if="disabled"> disabled="disabled"</tpl>','<tpl if="tabIdx"> tabIndex="{tabIdx}"</tpl>','<tpl if="fieldStyle"> style="{fieldStyle}"</tpl>',' class="{fieldCls} {typeCls} {typeCls}-{ui} {editableCls} {inputCls}" autocomplete="off"/>',{disableFormats:true}],defaultBindProperty:"value",subTplInsertions:["inputAttrTpl"],childEls:["inputEl"],inputType:"text",invalidText:"The value in this field is invalid",fieldCls:Ext.baseCSSPrefix+"form-field",focusCls:"form-focus",dirtyCls:Ext.baseCSSPrefix+"form-dirty",checkChangeEvents:Ext.isIE&&(!document.documentMode||document.documentMode<=9)?["change","propertychange","keyup"]:["change","input","textInput","keyup","dragdrop"],ignoreChangeRe:/data\-errorqtip|style\.|className/,checkChangeBuffer:50,liquidLayout:true,readOnly:false,readOnlyCls:Ext.baseCSSPrefix+"form-readonly",validateOnBlur:true,hasFocus:false,baseCls:Ext.baseCSSPrefix+"field",fieldBodyCls:Ext.baseCSSPrefix+"field-body",maskOnDisable:false,stretchInputElFixed:true,statics:{initTip:function(){var a=this.tip;if(!a){a=this.tip=Ext.create("Ext.tip.QuickTip",{ui:"form-invalid"});a.tagConfig=Ext.apply({},{attribute:"errorqtip"},a.tagConfig)}},destroyTip:function(){var a=this.tip;if(a){a.destroy();delete this.tip}}},initComponent:function(){var a=this;Ext.Component.prototype.initComponent.call(this);a.subTplData=a.subTplData||{};a.initLabelable();a.initField();if(!a.name){a.name=a.getInputId()}if(a.readOnly){a.addCls(a.readOnlyCls)}a.addCls(Ext.baseCSSPrefix+"form-type-"+a.inputType)},getInputId:function(){return this.inputId||(this.inputId=this.id+"-inputEl")},getSubTplData:function(){var c=this,b=c.inputType,a=c.getInputId(),d;d=Ext.apply({ui:c.ui,id:a,cmpId:c.id,name:c.name||a,disabled:c.disabled,readOnly:c.readOnly,value:c.getRawValue(),type:b,fieldCls:c.fieldCls,fieldStyle:c.getFieldStyle(),tabIdx:c.tabIndex,inputCls:c.inputCls,typeCls:Ext.baseCSSPrefix+"form-"+(b==="password"?"text":b),role:c.ariaRole},c.subTplData);c.getInsertionRenderData(d,c.subTplInsertions);return d},getSubTplMarkup:function(){var b=this,c=b.getSubTplData(),d=b.getTpl("preSubTpl"),e=b.getTpl("postSubTpl"),a="";if(d){a+=d.apply(c)}a+=b.getTpl("fieldSubTpl").apply(c);if(e){a+=e.apply(c)}return a},initRenderData:function(){return Ext.applyIf(Ext.util.Renderable.prototype.initRenderData.call(this),this.getLabelableRenderData())},setFieldStyle:function(a){var b=this,c=b.inputEl;if(c){c.applyStyles(a)}b.fieldStyle=a},getFieldStyle:function(){var a=this.fieldStyle;return Ext.isObject(a)?Ext.DomHelper.generateStyles(a,null,true):a||""},onRender:function(){Ext.util.Renderable.prototype.onRender.apply(this,arguments);Ext.form.field.Base.initTip();this.renderActiveError()},isFileUpload:function(){return this.inputType==="file"},getSubmitData:function(){var a=this,b=null,c;if(!a.disabled&&a.submitValue){c=a.getSubmitValue();if(c!==null){b={};b[a.getName()]=c}}return b},getSubmitValue:function(){return this.processRawValue(this.getRawValue())},getRawValue:function(){var b=this,a=(b.inputEl?b.inputEl.getValue():Ext.valueFrom(b.rawValue,""));b.rawValue=a;return a},setRawValue:function(c){var a=this,b=a.rawValue;if(!a.transformRawValue.$nullFn){c=a.transformRawValue(c)}c=Ext.valueFrom(c,"");if(b===undefined||b!==c){a.rawValue=c;if(a.inputEl){a.bindPropertyChange(false);a.inputEl.dom.value=c;a.bindPropertyChange(true)}if(a.rendered&&a.reference){a.publishState("rawValue",c)}}return c},transformRawValue:Ext.identityFn,valueToRaw:function(a){return""+Ext.valueFrom(a,"")},rawToValue:Ext.identityFn,processRawValue:Ext.identityFn,getValue:function(){var a=this,b=a.rawToValue(a.processRawValue(a.getRawValue()));a.value=b;return b},setValue:function(b){var a=this;a.setRawValue(a.valueToRaw(b));return a.mixins.field.setValue.call(a,b)},onBoxReady:function(){var a=this;Ext.Component.prototype.onBoxReady.call(this);if(a.setReadOnlyOnBoxReady){a.setReadOnly(a.readOnly)}},onDisable:function(){var a=this,b=a.inputEl;Ext.Component.prototype.onDisable.call(this);if(b){b.dom.disabled=true;if(a.hasActiveError()){a.clearInvalid();a.needsValidateOnEnable=true}}},onEnable:function(){var a=this,b=a.inputEl;Ext.Component.prototype.onEnable.call(this);if(b){b.dom.disabled=false;if(a.needsValidateOnEnable){delete a.needsValidateOnEnable;a.forceValidation=true;a.isValid();delete a.forceValidation}}},setReadOnly:function(c){var a=this,b=a.inputEl;c=!!c;a[c?"addCls":"removeCls"](a.readOnlyCls);a.readOnly=c;if(b){b.dom.readOnly=c}else{if(a.rendering){a.setReadOnlyOnBoxReady=true}}a.fireEvent("writeablechange",a,c)},fireKey:function(a){if(a.isSpecialKey()){this.fireEvent("specialkey",this,a)}},initEvents:function(){var h=this,j=h.inputEl,c,g,k=h.checkChangeEvents,l=h.ignoreChangeRe,b=k.length,d,a;if(j){h.mon(j,Ext.supports.SpecialKeyDownRepeat?"keydown":"keypress",h.fireKey,h);c=new Ext.util.DelayedTask(h.checkChange,h);h.onChangeEvent=g=function(m){if(!(m.type=="propertychange"&&l.test(m.browserEvent.propertyName))){c.delay(h.checkChangeBuffer)}};for(d=0;d<b;d++){a=k[d];if(a==="propertychange"){h.usesPropertychange=true}h.mon(j,a,g)}}Ext.Component.prototype.initEvents.call(this)},doComponentLayout:function(){this.bindPropertyChange(false);this.callParent(arguments);this.bindPropertyChange(true)},bindPropertyChange:function(c){var b=this,a=b.usesPropertychange;if(a){b[c?"mon":"mun"](b.inputEl,"propertychange",b.onChangeEvent)}},onDirtyChange:function(b){var a=this;a[b?"addCls":"removeCls"](a.dirtyCls);if(a.rendered&&a.reference){a.publishState("dirty",b)}},isValid:function(){var b=this,a=b.disabled,c=b.forceValidation||!a;return c?b.validateValue(b.processRawValue(b.getRawValue())):a},validateValue:function(b){var a=this,d=a.getErrors(b),c=Ext.isEmpty(d);if(!a.preventMark){if(c){a.clearInvalid()}else{a.markInvalid(d)}}return c},markInvalid:function(d){var b=this,a=b.getActiveError(),c;b.setActiveErrors(Ext.Array.from(d));c=b.getActiveError();if(a!==c){b.setError(c)}},clearInvalid:function(){var b=this,a=b.hasActiveError();delete b.needsValidateOnEnable;b.unsetActiveError();if(a){b.setError("")}},setError:function(a){var c=this,b=c.msgTarget,d;if(c.rendered){if(b=="title"||b=="qtip"){d=b=="qtip"?"data-errorqtip":"title";c.getActionEl().dom.setAttribute(d,a||"")}else{c.updateLayout()}}},renderActiveError:function(){var c=this,b=c.hasActiveError(),a=c.invalidCls+"-field";if(c.inputEl){c.inputEl[b?"addCls":"removeCls"]([a,a+"-"+c.ui])}c.mixins.labelable.renderActiveError.call(c)},privates:{applyBind:function(e,c){var b=this,a=c&&c.value,d;d=b.callParent([e,c]);if(d.value!==a&&b.getInherited().modelValidation){b.updateValueBinding(d)}return d},applyRenderSelectors:function(){var a=this;a.callParent();if(!a.inputEl){a.inputEl=a.el.getById(a.getInputId())}},getActionEl:function(){return this.inputEl||this.el},getFocusEl:function(){return this.inputEl},initRenderTpl:function(){var a=this;if(!a.hasOwnProperty("renderTpl")){a.renderTpl=a.getTpl("labelableRenderTpl")}return a.callParent()},updateValueBinding:function(d){var b=this,a=d.value,c=d.validation;if(c&&c.autoVal){c.destroy();d.validation=null}if(a&&a.bindValidation&&!d.validation){c=a.bindValidation("setValidation",b);if(c){d.validation=c;c.autoVal=true}}}}},0,["field"],["box","component","field"],{box:true,component:true,field:true},["widget.field"],[[Ext.form.Labelable.prototype.mixinId||Ext.form.Labelable.$className,Ext.form.Labelable],[Ext.form.field.Field.prototype.mixinId||Ext.form.field.Field.$className,Ext.form.field.Field]],[Ext.form.field,"Base",Ext.form,"Field",Ext.form,"BaseField"],0));(Ext.cmd.derive("Ext.form.field.Display",Ext.form.field.Base,{alternateClassName:["Ext.form.DisplayField","Ext.form.Display"],ariaRole:"textbox",fieldSubTpl:['<div id="{id}" role="{role}" {inputAttrTpl}','<tpl if="fieldStyle"> style="{fieldStyle}"</tpl>',' class="{fieldCls} {fieldCls}-{ui}">{value}</div>',{compiled:true,disableFormats:true}],readOnly:true,fieldCls:Ext.baseCSSPrefix+"form-display-field",fieldBodyCls:Ext.baseCSSPrefix+"form-display-field-body",htmlEncode:false,noWrap:false,validateOnChange:false,initEvents:Ext.emptyFn,submitValue:false,valueToRaw:function(a){if(!a&&a!==0){return""}else{return a}},isDirty:function(){return false},isValid:Ext.returnTrue,validate:Ext.returnTrue,getRawValue:function(){return this.rawValue},setRawValue:function(b){var a=this;b=Ext.valueFrom(b,"");a.rawValue=b;if(a.rendered){a.inputEl.dom.innerHTML=a.getDisplayValue();a.updateLayout()}return b},getDisplayValue:function(){var a=this,b=this.getRawValue(),c;if(a.renderer){c=a.renderer.call(a.scope||a,b,a)}else{c=a.htmlEncode?Ext.util.Format.htmlEncode(b):b}return c},getSubTplData:function(){var a=Ext.form.field.Base.prototype.getSubTplData.apply(this,arguments);a.value=this.getDisplayValue();return a}},0,["displayfield"],["box","component","displayfield","field"],{box:true,component:true,displayfield:true,field:true},["widget.displayfield"],0,[Ext.form.field,"Display",Ext.form,"DisplayField",Ext.form,"Display"],0));(Ext.cmd.derive("Ext.layout.container.Fit",Ext.layout.container.Container,{alternateClassName:"Ext.layout.FitLayout",itemCls:Ext.baseCSSPrefix+"fit-item",targetCls:Ext.baseCSSPrefix+"layout-fit",type:"fit",manageMargins:true,sizePolicies:{0:{readsWidth:1,readsHeight:1,setsWidth:0,setsHeight:0},1:{readsWidth:0,readsHeight:1,setsWidth:1,setsHeight:0},2:{readsWidth:1,readsHeight:0,setsWidth:0,setsHeight:1},3:{readsWidth:0,readsHeight:0,setsWidth:1,setsHeight:1}},getItemSizePolicy:function(b,c){var a=c||this.owner.getSizeModel(),d=(a.width.shrinkWrap?0:1)|(a.height.shrinkWrap?0:2);return this.sizePolicies[d]},beginLayoutCycle:function(k,g){var t=this,u=t.lastHeightModel&&t.lastHeightModel.calculated,h=t.lastWidthModel&&t.lastWidthModel.calculated,o=h||u,l=0,m=0,s,b,p,r,e,a,j,n,q,d;Ext.layout.container.Container.prototype.beginLayoutCycle.apply(this,arguments);if(o&&k.targetContext.el.dom.tagName.toUpperCase()!="TD"){o=h=u=false}b=k.childItems;e=b.length;for(p=0;p<e;++p){r=b[p];if(g){s=r.target;j=s.minHeight;n=s.minWidth;if(n||j){a=r.marginInfo||r.getMarginInfo();j+=a.height;n+=a.height;if(l<j){l=j}if(m<n){m=n}}}if(o){q=r.el.dom.style;if(u){q.height=""}if(h){q.width=""}}}if(g){k.maxChildMinHeight=l;k.maxChildMinWidth=m}s=k.target;k.overflowX=(!k.widthModel.shrinkWrap&&k.maxChildMinWidth&&s.scrollFlags.x)||d;k.overflowY=(!k.heightModel.shrinkWrap&&k.maxChildMinHeight&&s.scrollFlags.y)||d},calculate:function(g){var o=this,l=g.childItems,d=l.length,c=o.getContainerSize(g),e={length:d,ownerContext:g,targetSize:c},r=g.widthModel.shrinkWrap,m=g.heightModel.shrinkWrap,k=g.overflowX,h=g.overflowY,n,b,p,j,a,q;if(k||h){n=o.getScrollbarsNeeded(k&&c.width,h&&c.height,g.maxChildMinWidth,g.maxChildMinHeight);if(n){b=Ext.getScrollbarSize();if(n&1){c.height-=b.height}if(n&2){c.width-=b.width}}}if(d>0){for(j=0;j<d;++j){e.index=j;o.fitItem(l[j],e)}}else{e.contentWidth=e.contentHeight=0}if(m||r){p=g.targetContext.getPaddingInfo();if(r){if(h&&!c.gotHeight){o.done=false}else{a=e.contentWidth+p.width;if(n&2){a+=b.width}if(!g.setContentWidth(a)){o.done=false}}}if(m){if(k&&!c.gotWidth){o.done=false}else{q=e.contentHeight+p.height;if(n&1){q+=b.height}if(!g.setContentHeight(q)){o.done=false}}}}},fitItem:function(b,c){var a=this;if(b.invalid){a.done=false;return}c.margins=b.getMarginInfo();c.needed=c.got=0;a.fitItemWidth(b,c);a.fitItemHeight(b,c);if(c.got!=c.needed){a.done=false}},fitItemWidth:function(c,d){var a,b;if(d.ownerContext.widthModel.shrinkWrap){b=c.getProp("width")+d.margins.width;a=d.contentWidth;if(a===undefined){d.contentWidth=b}else{d.contentWidth=Math.max(a,b)}}else{if(c.widthModel.calculated){++d.needed;if(d.targetSize.gotWidth){++d.got;this.setItemWidth(c,d)}else{return}}}this.positionItemX(c,d)},fitItemHeight:function(c,d){var b,a;if(d.ownerContext.heightModel.shrinkWrap){a=c.getProp("height")+d.margins.height;b=d.contentHeight;if(b===undefined){d.contentHeight=a}else{d.contentHeight=Math.max(b,a)}}else{if(c.heightModel.calculated){++d.needed;if(d.targetSize.gotHeight){++d.got;this.setItemHeight(c,d)}else{return}}}this.positionItemY(c,d)},positionItemX:function(a,c){var b=c.margins;if(c.index||b.left){a.setProp("x",b.left)}if(b.width){a.setProp("margin-right",b.width)}},positionItemY:function(a,c){var b=c.margins;if(c.index||b.top){a.setProp("y",b.top)}if(b.height){a.setProp("margin-bottom",b.height)}},setItemHeight:function(a,b){a.setHeight(b.targetSize.height-b.margins.height)},setItemWidth:function(a,b){a.setWidth(b.targetSize.width-b.margins.width)}},0,0,0,0,["layout.fit"],0,[Ext.layout.container,"Fit",Ext.layout,"FitLayout"],0));(Ext.cmd.derive("Ext.panel.Table",Ext.panel.Panel,{extraBaseCls:Ext.baseCSSPrefix+"grid",extraBodyCls:Ext.baseCSSPrefix+"grid-body",defaultBindProperty:"store",layout:"fit",autoLoad:false,variableRowHeight:false,numFromEdge:2,trailingBufferZone:10,leadingBufferZone:20,hasView:false,viewType:null,selType:"rowmodel",scroll:true,deferRowRender:false,sortableColumns:true,multiColumnSort:false,enableLocking:false,scrollerOwner:true,enableColumnMove:true,sealedColumns:false,enableColumnResize:true,rowLines:true,bufferedRenderer:true,ownerGrid:null,colLinesCls:Ext.baseCSSPrefix+"grid-with-col-lines",rowLinesCls:Ext.baseCSSPrefix+"grid-with-row-lines",noRowLinesCls:Ext.baseCSSPrefix+"grid-no-row-lines",hiddenHeaderCtCls:Ext.baseCSSPrefix+"grid-header-ct-hidden",hiddenHeaderCls:Ext.baseCSSPrefix+"grid-header-hidden",resizeMarkerCls:Ext.baseCSSPrefix+"grid-resize-marker",emptyCls:Ext.baseCSSPrefix+"grid-empty",constructor:function(){var a;Ext.Component.prototype.constructor.apply(this,arguments);a=this.store;a.trackStateChanges=true;if(this.autoLoad){a.unblockLoad();a.load()}},initComponent:function(){var g=this,j=g.columns||g.colModel||[],b,e,a,h,c=g.store=Ext.data.StoreManager.lookup(g.store||"ext-empty-store"),d;g.enableLocking=g.enableLocking||g.hasLockedColumns(j);if(g.autoLoad){g.store.blockLoad()}if(g.plugins){g.plugins=g.constructPlugins()}if(g.columnLines){g.addBodyCls(g.colLinesCls)}g.addBodyCls(g.rowLines?g.rowLinesCls:g.noRowLinesCls);g.addBodyCls(g.extraBodyCls);if(g.enableLocking){g.self.mixin("lockable",Ext.grid.locking.Lockable);g.injectLockable()}else{if(j.isRootHeader){g.headerCt=j;g.headerCt.forceFit=!!g.forceFit;g.columnManager=j.columnManager;g.visibleColumnManager=j.visibleColumnManager}else{if(Ext.isArray(j)){j={items:j}}Ext.apply(j,{grid:g,forceFit:g.forceFit,sortable:g.sortableColumns,enableColumnMove:g.enableColumnMove,enableColumnResize:g.enableColumnResize,columnLines:g.columnLines,sealed:g.sealedColumns});if(Ext.isDefined(g.enableColumnHide)){j.enableColumnHide=g.enableColumnHide}g.headerCt=new Ext.grid.header.Container(j)}}g.columns=d=g.headerCt.getGridColumns();g.scrollTask=new Ext.util.DelayedTask(g.syncHorizontalScroll,g);g.cls=(g.cls||"")+(" "+g.extraBaseCls);delete g.autoScroll;h=g.plugins&&Ext.Array.findBy(g.plugins,function(k){return k.isBufferedRenderer});if(h){g.bufferedRenderer=h}if(!g.hasView){if(c.isBufferedStore&&!c.remoteSort){for(e=0,a=d.length;e<a;e++){d[e].sortable=false}}if(g.hideHeaders){g.headerCt.height=0;g.headerCt.hiddenHeaders=true;g.headerCt.addCls(g.hiddenHeaderCtCls);g.addCls(g.hiddenHeaderCls)}g.relayHeaderCtEvents(g.headerCt);g.features=g.features||[];if(!Ext.isArray(g.features)){g.features=[g.features]}g.dockedItems=[].concat(g.dockedItems||[]);g.dockedItems.unshift(g.headerCt);g.viewConfig=g.viewConfig||{};b=g.getView();g.items=[b];g.hasView=true;if(!g.hideHeaders){b.on({scroll:g.onHorizontalScroll,scope:g,onFrame:!!Ext.global.requestAnimationFrame})}g.bindStore(c,true);g.mon(b,{viewready:g.onViewReady,refresh:g.onRestoreHorzScroll,scope:g})}g.relayEvents(g.view,["beforeitemmousedown","beforeitemmouseup","beforeitemmouseenter","beforeitemmouseleave","beforeitemclick","beforeitemdblclick","beforeitemcontextmenu","itemmousedown","itemmouseup","itemmouseenter","itemmouseleave","itemclick","itemdblclick","itemcontextmenu","beforecellclick","cellclick","beforecelldblclick","celldblclick","beforecellcontextmenu","cellcontextmenu","beforecellmousedown","cellmousedown","beforecellmouseup","cellmouseup","beforecellkeydown","cellkeydown","rowclick","rowdblclick","rowcontextmenu","rowmousedown","rowmouseup","rowkeydown","beforeitemkeydown","itemkeydown","beforecontainermousedown","beforecontainermouseup","beforecontainermouseover","beforecontainermouseout","beforecontainerclick","beforecontainerdblclick","beforecontainercontextmenu","beforecontainerkeydown","containermouseup","containermousedown","containermouseover","containermouseout","containerclick","containerdblclick","containercontextmenu","containerkeydown","selectionchange","beforeselect","select","beforedeselect","deselect"]);Ext.panel.Panel.prototype.initComponent.apply(this,arguments);g.addStateEvents(["columnresize","columnmove","columnhide","columnshow","sortchange","filterchange","groupchange"])},hasLockedColumns:function(c){var b,a,d;if(c.isRootHeader){c=c.items.items}else{if(Ext.isObject(c)){c=c.items}}for(b=0,a=c.length;b<a;b++){d=c[b];if(!d.processed&&d.locked){return true}}},relayHeaderCtEvents:function(a){this.relayEvents(a,["columnresize","columnmove","columnhide","columnshow","columnschanged","sortchange","headerclick","headercontextmenu","headertriggerclick"])},getState:function(){var b=this,c=Ext.panel.Panel.prototype.getState.call(this),a=b.store.getState();c=b.addPropertyToState(c,"columns",b.headerCt.getColumnsState());if(a){c.storeState=a}return c},applyState:function(e){var d=this,g=e.sort,a=e.storeState,b=d.store,c=e.columns;delete e.columns;Ext.panel.Panel.prototype.applyState.apply(this,arguments);if(c){d.headerCt.applyColumnsState(c)}if(g){if(b.remoteSort){b.sort({property:g.property,direction:g.direction,root:g.root},null,false)}else{b.sort(g.property,g.direction)}}else{if(a){b.applyState(a)}}},getStore:function(){return this.store},getView:function(){var b=this,c,a;if(!b.view){c=b.getSelectionModel();a=Ext.apply({grid:b,ownerGrid:b.ownerGrid||b,deferInitialRefresh:b.deferRowRender,variableRowHeight:b.variableRowHeight,preserveScrollOnRefresh:true,trackOver:b.trackMouseOver!==false,throttledUpdate:b.throttledUpdate===true,scroll:b.scroll,xtype:b.viewType,store:b.store,headerCt:b.headerCt,columnLines:b.columnLines,rowLines:b.rowLines,selModel:c,features:b.features,panel:b,emptyText:b.emptyText||""},b.viewConfig);if(b.scroll&&b.viewConfig.scroll&&b.scroll!==b.viewConfig.scroll){a.scroll="both"}Ext.widget(a);if(b.view.emptyText){b.view.emptyText='<div class="'+b.emptyCls+'">'+b.view.emptyText+"</div>"}b.view.getComponentLayout().headerCt=b.headerCt;b.mon(b.view,{uievent:b.processEvent,scope:b});c.view=b.view;b.headerCt.view=b.view;if(b.hasListeners.viewcreated){b.fireEvent("viewcreated",b,b.view)}}return b.view},getColumnManager:function(){return this.columnManager},getVisibleColumnManager:function(){return this.visibleColumnManager},getTopLevelColumnManager:function(){var a=this.ownerLockable;return a?a.getColumnManager():this.getColumnManager()},getTopLevelVisibleColumnManager:function(){var a=this.ownerLockable;return a?a.getVisibleColumnManager():this.getVisibleColumnManager()},setAutoScroll:Ext.emptyFn,processEvent:function(h,k,l,a,j,d,c,m){var g=this,b;if(j!==-1){b=g.getColumnManager().getHeaderAtIndex(j);return b.processEvent.apply(b,arguments)}},scrollByDeltaY:function(b,a){this.getView().scrollBy(0,b,a)},scrollByDeltaX:function(b,a){this.getView().scrollBy(b,0,a)},afterCollapse:function(){this.saveScrollPos();Ext.panel.Panel.prototype.afterCollapse.apply(this,arguments)},afterExpand:function(){Ext.panel.Panel.prototype.afterExpand.apply(this,arguments);this.restoreScrollPos()},saveScrollPos:Ext.emptyFn,restoreScrollPos:Ext.emptyFn,onHeaderResize:function(){if(this.view.scrollManager){this.view.scrollManager.refresh()}},onHeaderMove:function(e,g,a,b,d){var c=this;if(c.optimizedColumnMove===false){c.view.refreshView()}else{c.view.moveColumn(b,d,a)}c.delayScroll()},onHeaderHide:function(a,b){if(this.view.refreshCounter){this.view.refreshView()}},onHeaderShow:function(a,b){if(this.view.refreshCounter){this.view.refreshView()}},onHeadersChanged:function(b,c){var a=this;if(a.rendered&&!a.reconfiguring){a.view.refreshView();a.delayScroll()}},delayScroll:function(){var a=this.view;if(a){this.scrollTask.delay(10,null,null,[a])}},onViewReady:function(){this.fireEvent("viewready",this)},onRestoreHorzScroll:function(){var b=this,a=b.scrollXPos;if(a){b.syncHorizontalScroll(b,true)}},getScrollerOwner:function(){var a=this;if(!this.scrollerOwner){a=this.up("[scrollerOwner]")}return a},getLhsMarker:function(){var a=this;return a.lhsMarker||(a.lhsMarker=Ext.DomHelper.append(a.el,{role:"presentation",cls:a.resizeMarkerCls},true))},getRhsMarker:function(){var a=this;return a.rhsMarker||(a.rhsMarker=Ext.DomHelper.append(a.el,{role:"presentation",cls:a.resizeMarkerCls},true))},getSelection:function(){return this.getSelectionModel().getSelection()},setSelection:function(b){var a=this.getSelectionModel();a.select(b)},getSelectionModel:function(){var c=this,a=c.selModel,e,d,b;if(!a){a={};e=true}if(!a.events){b=a.selType||c.selType;e=!a.mode;a=c.selModel=Ext.create("selection."+b,a)}if(c.simpleSelect){d="SIMPLE"}else{if(c.multiSelect){d="MULTI"}}Ext.applyIf(a,{allowDeselect:c.allowDeselect});if(d&&e){a.setSelectionMode(d)}if(!a.hasRelaySetup){c.relayEvents(a,["selectionchange","beforeselect","beforedeselect","select","deselect"]);a.hasRelaySetup=true}if(c.disableSelection){a.locked=true}return a},getScrollTarget:function(){var a=this.getScrollerOwner(),b=a.query("tableview");return b[1]||b[0]},onHorizontalScroll:function(a){this.syncHorizontalScroll(a)},syncHorizontalScroll:function(e,c){var d=this,a=d.view.getScrollX(),b;c=c===true;if(d.rendered&&(c||a!==d.scrollXPos)){if(c){b=d.getScrollTarget();b.setScrollX(a)}d.headerCt.setScrollX(a);d.scrollXPos=a}},onStoreLoad:Ext.emptyFn,getEditorParent:function(){return this.body},bindStore:function(b,c){var d=this,a=d.getView(),e=d.bufferedRenderer;d.store=b;if(e){if(e.isBufferedRenderer){if(e.store){e.bindStore(b)}}else{if(d.bufferedRenderer){e={xclass:"Ext.grid.plugin.BufferedRenderer"};Ext.copyTo(e,d,"variableRowHeight,numFromEdge,trailingBufferZone,leadingBufferZone,scrollToLoadBuffer");d.bufferedRenderer=d.addPlugin(e)}}}if(a.store!==b){a.bindStore(b,false)}d.mon(b,{load:d.onStoreLoad,scope:d});d.storeRelayers=d.relayEvents(b,["filterchange","groupchange"])},unbindStore:function(){var b=this,a=b.store;if(a){b.store=null;b.mun(a,{load:b.onStoreLoad,scope:b});Ext.destroy(b.storeRelayers)}},setColumns:function(a){if(a.length||this.getColumnManager().getColumns().length){this.reconfigure(undefined,a)}},setStore:function(a){this.reconfigure(a)},reconfigure:function(a,c){var d=this,g=d.store,e=d.headerCt,b=e?e.items.getRange():d.columns;if(arguments.length===1&&Ext.isArray(a)){c=a;a=null}if(c){c=Ext.Array.slice(c)}d.reconfiguring=true;d.fireEvent("beforereconfigure",d,a,c,g,b);if(d.lockable){d.reconfigureLockable(a,c)}else{Ext.suspendLayouts();if(c){delete d.scrollXPos;e.removeAll();e.add(c)}if(a&&(a=Ext.StoreManager.lookup(a))!==g){if(d.store){d.unbindStore()}d.bindStore(a)}else{d.getView().refreshView()}e.setSortState();Ext.resumeLayouts(true)}d.fireEvent("reconfigure",d,a,c,g,b);delete d.reconfiguring},beforeDestroy:function(){var a=this.scrollTask;if(a){a.cancel();this.scrollTask=null}Ext.panel.Panel.prototype.beforeDestroy.call(this)},onDestroy:function(){var a=this;if(a.lockable){a.destroyLockable()}Ext.container.Container.prototype.onDestroy.call(this);a.columns=a.storeRelayers=a.columnManager=a.visibleColumnManager=null},destroy:function(){var a=this;Ext.Component.prototype.destroy.call(this);if(a.isDestroyed){a.view=a.selModel=a.headerCt=null}}},1,["tablepanel"],["box","component","container","panel","tablepanel"],{box:true,component:true,container:true,panel:true,tablepanel:true},["widget.tablepanel"],0,[Ext.panel,"Table"],0));(Ext.cmd.derive("Ext.selection.Model",Ext.util.Observable,{alternateClassName:"Ext.AbstractSelectionModel",allowDeselect:undefined,toggleOnClick:true,selected:null,pruneRemoved:true,suspendChange:0,constructor:function(a){var b=this;a=a||{};Ext.apply(b,a);b.modes={SINGLE:true,SIMPLE:true,MULTI:true};b.setSelectionMode(a.mode||b.mode);b.selected=new Ext.util.MixedCollection();Ext.util.Observable.prototype.constructor.apply(this,arguments)},bindStore:function(a,b){var c=this;c.mixins.storeholder.bindStore.apply(c,arguments);if(c.store&&!b){c.refresh()}},getStoreListeners:function(){var a=this;return{add:a.onStoreAdd,clear:a.onStoreClear,remove:a.onStoreRemove,update:a.onStoreUpdate,load:a.onStoreLoad,refresh:a.onStoreRefresh}},suspendChanges:function(){++this.suspendChange},resumeChanges:function(){if(this.suspendChange){--this.suspendChange}},selectAll:function(b){var e=this,d=e.store.getRange(),c=0,a=d.length,g=e.getSelection().length;e.suspendChanges();for(;c<a;c++){e.doSelect(d[c],true,b)}e.resumeChanges();if(!b){e.maybeFireSelectionChange(e.getSelection().length!==g)}},deselectAll:function(k){var g=this,b=g.getSelection(),h={},j=g.store,a=b.length,e,c,d;for(e=0,c=b.length;e<c;e++){d=b[e];h[d.id]=j.indexOf(d)}b=Ext.Array.sort(b,function(n,l){var o=h[n.id],m=h[l.id];return o<m?-1:1});g.suspendChanges();g.doDeselect(b,k);g.resumeChanges();if(!k){g.maybeFireSelectionChange(g.getSelection().length!==a)}},getSelectionStart:function(){if(!this.selectionStart){this.setSelectionStart(this.lastFocused)}return this.selectionStart},setSelectionStart:function(a){this.selectionStart=a},selectWithEvent:function(k,m){var n=this,d=n.isSelected(k),g=m.shiftKey,a=m.ctrlKey,c=g&&n.getSelectionStart(),h=n.getSelection(),l=h.length,o=n.allowDeselect,b,j,p;switch(n.selectionMode){case"MULTI":if(g&&c){n.selectRange(c,k,a)}else{if(a&&d){n.doDeselect(k,false)}else{if(a){n.doSelect(k,true,false)}else{if(d&&!g&&!a&&l>1){b=[];for(j=0;j<l;++j){p=h[j];if(p!==k){b.push(p)}}n.doDeselect(b)}else{if(!d){n.doSelect(k,false)}}}}}break;case"SIMPLE":if(d){n.doDeselect(k)}else{n.doSelect(k,true)}break;case"SINGLE":if(o&&!a){o=n.toggleOnClick}if(o&&d){n.doDeselect(k)}else{n.doSelect(k,false)}break}if(!g){if(n.isSelected(k)){n.selectionStart=k}else{n.selectionStart=null}}},afterKeyNavigate:function(g,d){var h=this,c,a,b=h.isSelected(d),k=(h.selectionStart&&h.isSelected(h.lastFocused))?h.selectionStart:(h.selectionStart=h.lastFocused),l=g.getCharCode(),m=l===g.SPACE,j=l===g.UP||l===g.PAGE_UP?"up":(l===g.DOWN||l===g.DOWN?"down":null);switch(h.selectionMode){case"MULTI":if(m){if(g.shiftKey){h.selectRange(k,d,g.ctrlKey)}else{if(b){h.doDeselect(d,g.ctrlKey);h.setLastFocused(null);h.setLastFocused(d)}else{h.doSelect(d,g.ctrlKey)}}}else{if(g.shiftKey&&k){a=h.store.indexOf(k);c=h.store.indexOf(d);if(j==="up"&&a<=c){h.deselectRange(h.lastFocused,c+1)}else{if(j==="down"&&a>=c){h.deselectRange(h.lastFocused,c-1)}else{if(k!==d){h.selectRange(k,d,g.ctrlKey)}}}h.lastSelected=d;h.setLastFocused(d)}else{if(g.ctrlKey&&b){h.setLastFocused(d)}else{if(g.ctrlKey){h.setLastFocused(d)}else{h.doSelect(d,false)}}}}break;case"SIMPLE":if(b){if(h.allowDeselect){h.doDeselect(d)}}else{h.doSelect(d,true)}break;case"SINGLE":if(m){if(b){if(h.allowDeselect){h.doDeselect(d);h.setLastFocused(d)}}else{h.doSelect(d)}}else{if(g.ctrlKey){h.setLastFocused(d)}else{if(m&&h.allowDeselect&&b){h.doDeselect(d)}else{h.doSelect(d,false);h.setLastFocused(d)}}}break}if(!g.shiftKey){if(h.isSelected(d)){h.selectionStart=d}}},selectRange:function(m,d,n){var j=this,l=j.store,c=j.selected.items,o,g,h,e,a,k,b;if(j.isLocked()){return}o=j.normalizeRowRange(m,d);m=o[0];d=o[1];e=[];for(g=m;g<=d;g++){if(!j.isSelected(l.getAt(g))){e.push(l.getAt(g))}}if(!n){a=[];j.suspendChanges();for(g=0,h=c.length;g<h;++g){b=c[g];k=l.indexOf(b);if(k<m||k>d){a.push(b)}}for(g=0,h=a.length;g<h;++g){j.doDeselect(a[g])}j.resumeChanges()}if(e.length){j.doMultiSelect(e,true)}else{j.maybeFireSelectionChange(a.length>0)}},deselectRange:function(e,d){var j=this,c=j.store,a,h,g,b;if(j.isLocked()){return}a=j.normalizeRowRange(e,d);e=a[0];d=a[1];g=[];for(h=e;h<=d;h++){b=c.getAt(h);if(j.isSelected(b)){g.push(b)}}if(g.length){j.doDeselect(g)}},normalizeRowRange:function(c,b){var a=this.store,d;if(!Ext.isNumber(c)){c=a.indexOf(c)}c=Math.max(0,c);if(!Ext.isNumber(b)){b=a.indexOf(b)}b=Math.min(b,a.getCount()-1);if(c>b){d=b;b=c;c=d}return[c,b]},select:function(b,c,a){if(Ext.isDefined(b)&&!(Ext.isArray(b)&&!b.length)){this.doSelect(b,c,a)}},deselect:function(b,a){this.doDeselect(b,a)},doSelect:function(c,e,b){var d=this,a;if(d.locked||!d.store){return}if(typeof c==="number"){a=d.store.getAt(c);if(!a){return}c=[a]}if(d.selectionMode==="SINGLE"&&c){a=c.length?c[0]:c;d.doSingleSelect(a,b)}else{d.doMultiSelect(c,e,b)}},doMultiSelect:function(a,l,k){var h=this,b=h.selected,j=false,m,d,g,e,c;if(h.locked){return}a=!Ext.isArray(a)?[a]:a;g=a.length;if(!l&&b.getCount()>0){m=h.deselectDuringSelect(a,b.getRange(),k);if(m[0]){h.maybeFireSelectionChange(m[1]>0&&!k);return}}c=function(){b.add(e);j=true};for(d=0;d<g;d++){e=a[d];if(h.isSelected(e)){continue}h.lastSelected=e;h.onSelectChange(e,true,k,c)}if(!h.preventFocus){h.setLastFocused(e,k)}h.maybeFireSelectionChange(j&&!k)},deselectDuringSelect:function(d,a,j){var h=this,g=a.length,c=0,e=false,k,b;h.suspendChanges();for(b=0;b<g;++b){k=a[b];if(!Ext.Array.contains(d,k)){if(h.doDeselect(k,j)){++c}else{e=true}}}h.resumeChanges();return[e,c]},doDeselect:function(a,k){var j=this,b=j.selected,d=0,h,e,l=0,g=0,c;if(j.locked||!j.store){return false}if(typeof a==="number"){e=j.store.getAt(a);if(!e){return false}a=[e]}else{if(!Ext.isArray(a)){a=[a]}}c=function(){++g;b.remove(e)};h=a.length;j.suspendChanges();for(;d<h;d++){e=a[d];if(j.isSelected(e)){if(j.lastSelected===e){j.lastSelected=b.last();if(j.lastFocused===e){j.setLastFocused(null)}}++l;j.onSelectChange(e,false,k,c)}}j.resumeChanges();j.maybeFireSelectionChange(g>0&&!k);return g===l},doSingleSelect:function(a,b){var d=this,g=false,c=d.selected,e;if(d.locked){return}if(d.isSelected(a)){return}e=function(){if(c.getCount()){d.suspendChanges();if(!d.doDeselect(d.lastSelected,b)){d.resumeChanges();return false}d.resumeChanges()}c.add(a);d.lastSelected=a;g=true};d.onSelectChange(a,true,b,e);if(g){if(!b&&!d.preventFocus){d.setLastFocused(a)}d.maybeFireSelectionChange(!b)}},setLastFocused:function(c,b){var d=this,a=d.lastFocused;if(c!==a){d.lastFocused=c;d.onLastFocusChanged(a,c,b)}},isFocused:function(a){return a===this.getLastFocused()},maybeFireSelectionChange:function(a){var b=this;if(a&&!b.suspendChange){b.fireEvent("selectionchange",b,b.getSelection())}},getLastSelected:function(){return this.lastSelected},getLastFocused:function(){return this.lastFocused},getSelection:function(){return this.selected.getRange()},getSelectionMode:function(){return this.selectionMode},setSelectionMode:function(a){a=a?a.toUpperCase():"SINGLE";this.selectionMode=this.modes[a]?a:"SINGLE"},isLocked:function(){return this.locked},setLocked:function(a){this.locked=!!a},isRangeSelected:function(d,c){var g=this,b=g.store,e,a;a=g.normalizeRowRange(d,c);d=a[0];c=a[1];for(e=d;e<=c;e++){if(!g.isSelected(b.getAt(e))){return false}}return true},isSelected:function(a){a=Ext.isNumber(a)?this.store.getAt(a):a;return this.selected.contains(a)},hasSelection:function(){return this.selected.getCount()>0},pruneIf:function(){var h=this,e=h.selected,b=h.store,d=[],a=e.length,c,g;if(h.pruneRemoved){for(c=0;c<a;c++){g=e.getAt(c);if(b.indexOfId(g.id)===-1){d.push(g)}}if(d.length){for(c=0,a=d.length;c<a;c++){g=d[c];e.remove(g);h.onPrune(g)}h.maybeFireSelectionChange(true)}}},onPrune:Ext.emptyFn,refresh:function(){var h=this,l=h.store,a,d=[],g=[],c=h.getSelection(),e=c.length,k,j,b=0,m=h.getLastFocused();if(!l){return}for(;b<e;b++){k=c[b];if(l.indexOf(k)!==-1){d.push(k)}else{if(!h.pruneRemoved){a=l.getById(k.getId());if(a){d.push(a)}else{g.push(k)}}}if(h.mode==="SINGLE"&&g.length){break}}if(h.selected.getCount()!==(d.length+g.length)){j=true}h.clearSelections();if(l.indexOf(m)!==-1){h.setLastFocused(m,true)}if(d.length){h.doSelect(d,false,true)}if(g.length){h.selected.addAll(g);if(!h.lastSelected){h.lastSelected=g[g.length-1]}}h.maybeFireSelectionChange(j)},clearSelections:function(){this.selected.clear();this.lastSelected=null;this.setLastFocused(null)},onStoreAdd:Ext.emptyFn,onStoreClear:function(){if(this.selected.getCount()>0){this.clearSelections();this.maybeFireSelectionChange(true)}},onStoreRemove:function(c,b,d,a){var e=this;if(e.selectionStart&&Ext.Array.contains(b,e.selectionStart)){e.selectionStart=null}if(a||e.locked||!e.pruneRemoved){return}e.deselect(b)},deselectDeletedRecords:function(b){var g=this,d=g.selected,c,e=b.length,h=0,a;for(c=0;c<e;c++){a=b[c];if(d.remove(a)){if(g.lastSelected===a){g.lastSelected=null}if(g.getLastFocused()===a){g.setLastFocused(null)}++h}}if(h){g.maybeFireSelectionChange(true)}},getCount:function(){return this.selected.getCount()},onUpdate:Ext.emptyFn,destroy:function(){this.clearListeners();this.clearSelections()},onStoreUpdate:Ext.emptyFn,onStoreRefresh:function(){var g=this,j=g.getStore(),c=g.selected,h=g.lastSelected,e,a,d,k,b;if(g.store.isBufferedStore){return}e=c.items;a=e.length;if(h){g.lastSelected=j.getById(h.id)}for(d=0;d<a;++d){k=e[d];b=j.getById(k.id);if(b){g.selected.replace(b)}else{g.selected.remove(k)}}},onStoreLoad:Ext.emptyFn,onSelectChange:function(a,d,c,g){var e=this,b=d?"select":"deselect";if((c||e.fireEvent("before"+b,e,a))!==false&&g()!==false){if(!c){e.fireEvent(b,e,a)}}},onLastFocusChanged:function(b,a){if(a!=b){this.fireEvent("focuschange",this,b,a)}},onEditorKey:Ext.emptyFn,beforeViewRender:function(a){this.views=this.views||[];this.views.push(a);this.bindStore(a.getStore(),true)},resolveListenerScope:function(c){var a=this.view,b;if(a){b=a.resolveListenerScope(c)}return b||Ext.util.Observable.prototype.resolveListenerScope.apply(this,[c])},onVetoUIEvent:Ext.emptyFn,bindComponent:Ext.emptyFn},1,0,0,0,0,[[Ext.util.StoreHolder.prototype.mixinId||Ext.util.StoreHolder.$className,Ext.util.StoreHolder]],[Ext.selection,"Model",Ext,"AbstractSelectionModel"],0));(Ext.cmd.derive("Ext.selection.DataViewModel",Ext.selection.Model,{deselectOnContainerClick:true,enableKeyNav:true,bindComponent:function(a){var b=this,c={refresh:b.refresh,scope:b};b.view=a;b.bindStore(a.getStore());c[a.triggerEvent]=b.onItemClick;c[a.triggerCtEvent]=b.onContainerClick;a.on(c);if(b.enableKeyNav){b.initKeyNav(a)}},onUpdate:function(b){var a=this.view;if(a&&this.isSelected(b)){a.onItemSelect(b)}},onItemClick:function(b,a,d,c,g){this.selectWithEvent(a,g)},onContainerClick:function(){if(this.deselectOnContainerClick){this.deselectAll()}},initKeyNav:function(a){var b=this;if(!a.rendered){a.on({render:Ext.Function.bind(b.initKeyNav,b,[a]),single:true});return}a.el.set({tabIndex:-1});b.keyNav=new Ext.util.KeyNav({target:a.el,ignoreInputFields:true,down:Ext.pass(b.onNavKey,[1],b),right:Ext.pass(b.onNavKey,[1],b),left:Ext.pass(b.onNavKey,[-1],b),up:Ext.pass(b.onNavKey,[-1],b),scope:b})},onNavKey:function(g){g=g||1;var e=this,b=e.view,d=e.getSelection()[0],c=e.view.store.getCount(),a;if(d){a=b.indexOf(b.getNode(d))+g}else{a=0}if(a<0){a=c-1}else{if(a>=c){a=0}}e.select(a)},onSelectChange:function(b,e,d,h){var g=this,a=g.view,c=e?"select":"deselect";if((d||g.fireEvent("before"+c,g,b))!==false&&h()!==false){if(a){if(e){a.onItemSelect(b)}else{a.onItemDeselect(b)}}if(!d){g.fireEvent(c,g,b)}}},onLastFocusChanged:function(d,b,c){var a=this.view;if(a&&!c&&b){a.focusNode(b);this.fireEvent("focuschange",this,d,b)}},destroy:function(){Ext.destroy(this.keyNav);Ext.selection.Model.prototype.destroy.call(this)}},0,0,0,0,0,0,[Ext.selection,"DataViewModel"],0));(Ext.cmd.derive("Ext.view.AbstractView",Ext.Component,{inheritableStatics:{getRecord:function(a){return this.getBoundView(a).getRecord(a)},getBoundView:function(a){return Ext.getCmp(a.boundView)}},defaultBindProperty:"store",statics:{updateDelay:200,queueRecordChange:function(n,p,h,b,c){var m=this,a=m.changeQueue||(m.changeQueue={}),j=h.internalId,l,g,k,d,q,o,e;l=a[j]||(a[j]={operation:b,record:h,data:{},views:[]});g=l.data;Ext.Array.include(l.views,n);if(c&&(k=c.length)){for(d=0;d<k;d++){q=c[d];o=h.data[q];if(g.hasOwnProperty(q)){if(h.isEqual(g[q],o)){delete g[q];e=true}}else{g[q]=o}}if(e&&!Ext.Object.getKeys(g).length){delete a[j]}}else{Ext.apply(g,h.data)}if(!m.flushQueueTask){m.flushQueueTask=Ext.util.TaskManager.newTask({run:Ext.global.requestAnimationFrame?Ext.Function.createAnimationFrame(m.onFlushTick,m):Ext.Function.bind(m.onFlushTick,m),interval:Ext.view.AbstractView.updateDelay,repeat:1})}m.flushQueueTask.start()},onFlushTick:function(){Ext.AnimationQueue.start(this.flushChangeQueue,this)},flushChangeQueue:function(){var e=this,g,a,j,d,h,c,b;if(Ext.isScrolling){e.flushQueueTask.start();return}j=e.changeQueue;this.changeQueue={};for(h in j){d=j[h];g=d.views;a=g.length;for(c=0;c<a;c++){b=g[c];if(!b.isDestroyed){b.handleUpdate(b.dataSource,d.record,d.operation,Ext.Object.getKeys(d.data))}}}Ext.AnimationQueue.stop(e.flushChangeQueue,e)}},throttledUpdate:false,deferInitialRefresh:false,itemCls:Ext.baseCSSPrefix+"dataview-item",loadingText:"Loading...",loadMask:true,loadingUseMsg:true,selectedItemCls:Ext.baseCSSPrefix+"item-selected",emptyText:"",deferEmptyText:true,trackOver:false,blockRefresh:false,preserveScrollOnRefresh:false,ariaRole:"listbox",itemAriaRole:"option",last:false,triggerEvent:"itemclick",triggerCtEvent:"containerclick",refreshNeeded:true,addCmpEvents:Ext.emptyFn,initComponent:function(){var c=this,a=Ext.isDefined,d=c.itemTpl,b={};if(d){if(Ext.isArray(d)){d=d.join("")}else{if(Ext.isObject(d)){b=Ext.apply(b,d.initialConfig);d=d.html}}if(!c.itemSelector){c.itemSelector="."+c.itemCls}d=Ext.String.format('<tpl for="."><div class="{0}" role="{2}">{1}</div></tpl>',c.itemCls,d,c.itemAriaRole);c.tpl=new Ext.XTemplate(d,b)}Ext.Component.prototype.initComponent.call(this);c.tpl=c.getTpl("tpl");if(c.overItemCls){c.trackOver=true}c.addCmpEvents();c.store=Ext.data.StoreManager.lookup(c.store||"ext-empty-store");if(!c.dataSource){c.dataSource=c.store}c.bindStore(c.dataSource,true,"dataSource");if(!c.all){c.all=new Ext.CompositeElementLite()}c.scrollState={top:0,left:0};c.on({scroll:c.onViewScroll,element:"el",onFrame:!!Ext.global.requestAnimationFrame,scope:c})},onRender:function(){var e=this,b=e.loadMask,d=e.getMaskStore(),a={target:e,msg:e.loadingText,useMsg:e.loadingUseMsg,store:d},c;Ext.util.Renderable.prototype.onRender.apply(this,arguments);if(b){c=d.getProxy();if(c&&!c.isSynchronous){if(e.loadingCls){a.msgCls=e.loadingCls}if(Ext.isObject(b)){a=Ext.apply(a,b)}e.loadMask=new Ext.LoadMask(a);e.loadMask.on({scope:e,beforeshow:e.onMaskBeforeShow,hide:e.onMaskHide})}}},beforeLayout:function(){var a=this;Ext.Component.prototype.beforeLayout.apply(this,arguments);if(a.refreshNeeded&&!a.pendingRefresh){if(a.refreshCounter){a.refresh()}else{a.doFirstRefresh(a.dataSource)}}},getMaskStore:function(){return this.store},onMaskBeforeShow:function(){var b=this,a=b.loadingHeight;if(a&&a>b.getHeight()){b.hasLoadingHeight=true;b.oldMinHeight=b.minHeight;b.minHeight=a;b.updateLayout()}},onMaskHide:function(){var a=this;if(!a.destroying&&a.hasLoadingHeight){a.minHeight=a.oldMinHeight;a.updateLayout();delete a.hasLoadingHeight}},beforeRender:function(){Ext.util.Renderable.prototype.beforeRender.apply(this,arguments);this.getSelectionModel().beforeViewRender(this)},afterRender:function(){Ext.util.Renderable.prototype.afterRender.apply(this,arguments);this.getSelectionModel().bindComponent(this)},getRefItems:function(){var b=this.loadMask,a=[];if(b&&b.isComponent){a.push(b)}return a},getSelectionModel:function(){var a=this,b="SINGLE";if(a.simpleSelect){b="SIMPLE"}else{if(a.multiSelect){b="MULTI"}}if(!a.selModel||!a.selModel.events){a.selModel=new Ext.selection.DataViewModel(Ext.apply({allowDeselect:a.allowDeselect,mode:b},a.selModel))}if(!a.selModel.hasRelaySetup){a.relayEvents(a.selModel,["selectionchange","beforeselect","beforedeselect","select","deselect","focuschange"]);a.selModel.hasRelaySetup=true}if(a.disableSelection){a.selModel.locked=true}return a.selModel},refresh:function(){var j=this,m=j.all,a=m.getCount(),e=j.refreshCounter,k,g,d,c,h,l=e&&m.getCount()&&j.preserveScrollOnRefresh&&!j.bufferedRenderer,b;if(!j.rendered||j.isDestroyed||j.preventRefresh){return}if(!j.hasListeners.beforerefresh||j.fireEvent("beforerefresh",j)!==false){j.refreshing=true;k=j.getTargetEl();c=j.getViewRange();d=k.dom;if(l){g=j.getOverflowEl();b=g.getScroll()}if(e){h=true;j.clearViewEl();j.refreshCounter++}else{j.refreshCounter=1}j.tpl.append(k,j.collectData(c,m.startIndex||0));if(c.length<1){if(j.emptyText&&!j.getStore().isLoading()&&(!j.deferEmptyText||h)){j.emptyEl=Ext.core.DomHelper.insertHtml("beforeEnd",k.dom,j.emptyText)}m.clear()}else{j.collectNodes(k.dom);j.updateIndexes(0)}if(h){if(j.refreshSelmodelOnRefresh!==false){j.selModel.refresh()}else{if(!j.preventPrune){j.selModel.pruneIf()}}}j.refreshNeeded=false;j.refreshSize(m.getCount()!==a);j.fireEvent("refresh",j,c);if(l){g.setScrollLeft(b.left);g.setScrollTop(b.top)}if(!j.viewReady){j.viewReady=true;j.fireEvent("viewready",j)}j.refreshing=false;j.refreshScroll()}},collectNodes:function(b){var a=this.all;a.fill(Ext.fly(b).query(this.getItemSelector()),a.startIndex||0)},getViewRange:function(){return this.dataSource.getRange()},refreshSize:function(d){var b=this,a=b.getSizeModel(),c=b.scrollManager;if(a.height.shrinkWrap||a.width.shrinkWrap||d){b.updateLayout()}else{if(c){c.refresh()}}},onResize:function(){var a=this,b=a.scrollManager;if(b&&!a._hasScrollListener){b.on({scroll:a.onViewScroll,scope:a,onFrame:!!Ext.global.requestAnimationFrame});a._hasScrollListener=true}Ext.Component.prototype.onResize.apply(this,arguments)},clearViewEl:function(){var a=this,b=a.getNodeContainer()===a.getEl();a.clearEmptyEl();a.all.clear(!b);if(b){a.el.dom.innerHTML=""}},clearEmptyEl:function(){var a=this.emptyEl;if(a){a.parentNode.removeChild(a)}this.emptyEl=null},onViewScroll:function(){this.fireEvent("scroll",this)},saveScrollState:function(){var a=this,b=a.scrollState;if(a.rendered){b.left=a.getScrollX();b.top=a.getScrollY()}},restoreScrollState:function(){var a=this,b=a.scrollState;if(a.rendered){a.setScrollX(b.left);a.setScrollY(b.top)}},prepareData:function(e,d,c){var b,a,g;if(c){b=c.getAssociatedData();for(a in b){if(b.hasOwnProperty(a)){if(!g){e=Ext.Object.chain(e);g=true}e[a]=b[a]}}}return e},collectData:function(c,g){var e=[],d=0,a=c.length,b;for(;d<a;d++){b=c[d];e[d]=this.prepareData(b.data,g+d,b)}return e},bufferRender:function(a,b){var c=this,d=c.renderBuffer||(c.self.prototype.renderBuffer=document.createElement("div"));c.tpl.overwrite(d,c.collectData(a,b));return Ext.fly(d).query(c.getItemSelector())},nodeContainerSelector:null,getNodeContainer:function(){var b=this.getTargetEl(),a=this.nodeContainerSelector;return a?b.down(a,true):b},getNodeContainerSelector:function(){return this.nodeContainerSelector},onUpdate:function(c,a,b,e){var d=this;if(d.throttledUpdate){d.statics().queueRecordChange(d,c,a,b,e)}else{d.handleUpdate.apply(d,arguments)}},handleUpdate:function(b,a){var e=this,c,d;if(e.viewReady){c=e.dataSource.indexOf(a);if(c>-1){if(e.getNode(a)){d=e.bufferRender([a],c)[0];e.all.replaceElement(c,d,true);e.updateIndexes(c,c);e.selModel.onUpdate(a);if(e.hasListeners.itemupdate){e.fireEvent("itemupdate",a,c,d)}return d}}}},onReplace:function(k,l,b,c){var h=this,g,n=h.all,a,m,e,d;if(h.rendered){a=h.bufferRender(c,l,true);m=n.item(l);if(m){n.item(l).insertSibling(a,"before",true)}else{h.appendNodes(a)}n.insert(l,a);l+=c.length;g=l+b.length-1;n.removeRange(l,g,true);if(h.refreshSelmodelOnRefresh!==false){h.selModel.refresh()}h.updateIndexes(l);h.refreshSizePending=true;if(h.hasListeners.itemremove){for(e=b.length,d=g;e>=0;--e,--d){h.fireEvent("itemremove",b[e],d,h)}}if(h.hasListeners.itemadd){h.fireEvent("itemadd",c,l,a)}}},onAdd:function(c,b,d){var e=this,a;if(e.rendered){if(e.all.getCount()===0){e.refresh();a=e.all.slice()}else{a=e.doAdd(b,d);if(e.refreshSelmodelOnRefresh!==false){e.selModel.refresh()}e.updateIndexes(d);e.refreshSizePending=true}if(e.hasListeners.itemadd){e.fireEvent("itemadd",b,d,a)}}},appendNodes:function(b){var c=document.createDocumentFragment(),a=b.length,d;for(d=0;d<a;++d){c.appendChild(b[d])}this.getNodeContainer().appendChild(c)},doAdd:function(c,d){var j=this,b=j.bufferRender(c,d,true),g=j.all,h=g.getCount(),e=g.startIndex||0,a=g.endIndex||h-1;if(h===0||d>a){j.appendNodes(b)}else{if(d<=e){g.item(e).insertSibling(b,"before",true)}else{g.item(d).insertSibling(b,"before",true)}}g.insert(d,b);return b},onRemove:function(b,e,j){var k=this,m=k.all,c=k.hasListeners.itemremove,l,g,h,a,d;if(m.getCount()){if(k.dataSource.getCount()===0){if(c){k.fireEvent("itemremove",e,j,k.getNodes(j,j+e.length-1))}k.preventPrune=true;k.refresh();k.preventPrune=false}else{if(c){a=[]}for(g=e.length-1;g>=0;--g){h=e[g];l=j+g;if(a){d=m.item(l);a[g]=d?d.dom:undefined}if(m.item(l)){k.doRemove(h,l)}}if(c){k.fireEvent("itemremove",e,j,a,k)}k.updateIndexes(j)}k.refreshSizePending=true}},doRemove:function(a,b){this.all.removeElement(b,true)},refreshNode:function(a){if(Ext.isNumber(a)){a=this.store.getAt(a)}this.onUpdate(this.dataSource,a)},updateIndexes:function(e,d){var b=this.all.elements,a=this.getViewRange(),c;e=e||0;d=d||((d===0)?0:(b.length-1));for(c=e;c<=d;c++){b[c].viewIndex=c;b[c].viewRecordId=a[c].internalId;if(!b[c].boundView){b[c].boundView=this.id}}},getStore:function(){return this.store},bindStore:function(a,b,d){var c=this;c.mixins.storeholder.bindStore.apply(c,arguments);if(!b){c.getSelectionModel().bindStore(a)}if(c.componentLayoutCounter){c.doFirstRefresh(a)}},doFirstRefresh:function(a,c){var b=this;if(b.deferInitialRefresh&&!c){Ext.defer(b.doFirstRefresh,1,b,[a,true])}else{if(a&&!a.loading){b.refresh()}}},onUnbindStore:function(a){this.setMaskBind(null)},onBindStore:function(a,b,d){var c=this;c.setMaskBind(a);if(!b&&d==="store"){c.preventRefresh=true;c.store=a;c.bindStore(a,false,"dataSource");c.preventRefresh=false}},setMaskBind:function(b){var a=this.loadMask;if(a&&a.bindStore){a.bindStore(b)}},getStoreListeners:function(){var a=this;return{refresh:a.onDataRefresh,replace:a.onReplace,add:a.onAdd,remove:a.onRemove,update:a.onUpdate,clear:a.refresh,beginupdate:a.onBeginUpdate,endupdate:a.onEndUpdate}},onBeginUpdate:Ext.emptyFn,onEndUpdate:function(){if(this.refreshSizePending){this.refreshSize(true);this.refreshSizePending=false}},onDataRefresh:function(){this.refreshView()},refreshView:function(){var b=this,a=b.blockRefresh||!b.rendered||b.up("[collapsed],[isCollapsingOrExpanding],[hidden]");if(a){b.refreshNeeded=true}else{if(b.bufferedRenderer&&b.all.getCount()){b.bufferedRenderer.refreshView()}else{b.refresh()}}},findItemByChild:function(a){return Ext.fly(a).findParent(this.getItemSelector(),this.getTargetEl())},findTargetByEvent:function(a){return a.getTarget(this.getItemSelector(),this.getTargetEl())},getSelectedNodes:function(){var b=[],a=this.selModel.getSelection(),d=a.length,c=0;for(;c<d;c++){b.push(this.getNode(a[c]))}return b},getRecords:function(c){var b=[],d=0,a=c.length,e=this.dataSource.data;for(;d<a;d++){b[b.length]=e.getByKey(c[d].viewRecordId)}return b},getRecord:function(a){return this.dataSource.getByInternalId(Ext.getDom(a).viewRecordId)},isSelected:function(b){var a=this.getRecord(b);return this.selModel.isSelected(a)},select:function(b,c,a){this.selModel.select(b,c,a)},deselect:function(b,a){this.selModel.deselect(b,a)},getNode:function(a){if((!a&&a!==0)||!this.rendered){return null}if(a.target){a=a.target}if(Ext.isString(a)){return document.getElementById(a)}if(Ext.isNumber(a)){return this.all.elements[a]}if(a.isModel){return this.getNodeByRecord(a)}return Ext.fly(a).findParent(this.itemSelector,this.getTargetEl())},getNodeByRecord:function(a){var c=this.all.elements,d=c.length,b=0;for(;b<d;b++){if(c[b].viewRecordId===a.internalId){return c[b]}}return null},getNodes:function(c,a){var b=this.all;if(a!==undefined){a++}return b.slice(c,a)},indexOf:function(a){a=this.getNode(a);if(!a&&a!==0){return -1}if(Ext.isNumber(a.viewIndex)){return a.viewIndex}return this.all.indexOf(a)},onDestroy:function(){var a=this;a.all.clear();a.emptyEl=null;Ext.Component.prototype.onDestroy.call(this);a.bindStore(null);Ext.destroy(a.selModel,a.scrollManager)},onItemSelect:function(a){var b=this.getNode(a);if(b){Ext.fly(b).addCls(this.selectedItemCls)}},onItemDeselect:function(a){var b=this.getNode(a);if(b){Ext.fly(b).removeCls(this.selectedItemCls)}},getItemSelector:function(){return this.itemSelector},addItemCls:function(b,a){var c=this.getNode(b);if(c){Ext.fly(c).addCls(a)}},removeItemCls:function(b,a){var c=this.getNode(b);if(c){Ext.fly(c).removeCls(a)}},privates:{getOverflowEl:function(){return Ext.Component.prototype.getTargetEl.call(this)},getTargetEl:function(){return this.touchScroll?this.getScrollerEl():this.callParent()}}},0,0,["box","component"],{box:true,component:true},0,[[Ext.util.StoreHolder.prototype.mixinId||Ext.util.StoreHolder.$className,Ext.util.StoreHolder]],[Ext.view,"AbstractView"],function(){Ext.deprecate("extjs","4.0",function(){Ext.view.AbstractView.override({getSelectionCount:function(){if(Ext.global.console){Ext.global.console.warn("DataView: getSelectionCount will be removed, please interact with the Ext.selection.DataViewModel")}return this.selModel.getSelection().length},getSelectedRecords:function(){if(Ext.global.console){Ext.global.console.warn("DataView: getSelectedRecords will be removed, please interact with the Ext.selection.DataViewModel")}return this.selModel.getSelection()},select:function(a,b,d){if(Ext.global.console){Ext.global.console.warn("DataView: select will be removed, please access select through a DataView's SelectionModel, ie: view.getSelectionModel().select()")}var c=this.getSelectionModel();return c.select.apply(c,arguments)},clearSelections:function(){if(Ext.global.console){Ext.global.console.warn("DataView: clearSelections will be removed, please access deselectAll through DataView's SelectionModel, ie: view.getSelectionModel().deselectAll()")}var a=this.getSelectionModel();return a.deselectAll()}})})}));(Ext.cmd.derive("Ext.view.View",Ext.view.AbstractView,{alternateClassName:"Ext.DataView",inputTagRe:/^textarea$|^input$/i,inheritableStatics:{EventMap:{longpress:"LongPress",mousedown:"MouseDown",mouseup:"MouseUp",click:"Click",dblclick:"DblClick",contextmenu:"ContextMenu",mouseover:"MouseOver",mouseout:"MouseOut",mouseenter:"MouseEnter",mouseleave:"MouseLeave",keydown:"KeyDown",focus:"Focus"},TouchEventMap:{touchstart:"mousedown",touchend:"mouseup",tap:"click",doubletap:"dblclick"}},afterRender:function(){var a=this;Ext.view.AbstractView.prototype.afterRender.call(this);a.mon(a.el,{scope:a,click:a.handleEvent,longpress:a.handleEvent,mousedown:a.handleEvent,mouseup:a.handleEvent,dblclick:a.handleEvent,contextmenu:a.handleEvent,keydown:a.handleEvent,mouseover:a.handleMouseOver,mouseout:a.handleMouseOut})},getTargetSelector:function(){return this.dataRowSelector||this.itemSelector},handleMouseOver:function(d){var c=this,a=c.getTargetSelector(),b=d.getTarget(a);if(!c.isDestroyed){if(b){if(c.mouseOverItem!==b&&c.el.contains(b)){c.mouseOverItem=d.item=b;d.newType="mouseenter";c.handleEvent(d)}}else{c.handleEvent(d)}}},handleMouseOut:function(g){var b=this.getTargetSelector(),c=g.getTarget(b),d=g.getRelatedTarget(b),a;if((c===d)&&!(c===null&&d===null)){return}if(!this.isDestroyed){if(c&&(a=this.self.getBoundView(c))){g.item=c;g.newType="mouseleave";a.handleEvent(g);a.mouseOverItem=null}else{this.handleEvent(g)}}},handleEvent:function(d){var b=this,c=d.type==="keydown",a=c&&d.getKey(),g;if(!d.item){d.item=d.getTarget(b.itemSelector)}if(d.item){d.record=b.getRecord(d.item)}else{if(c){g=b.getSelectionModel();d.record=g.lastFocused||g.getLastSelected();if(d.record){d.item=b.getNode(d.record)}}}if(b.processUIEvent(d)!==false){b.processSpecialEvent(d)}if(a===d.SPACE){if(!b.inputTagRe.test(d.getTarget().tagName)){d.stopEvent()}}d.item=d.record=d.newType=null},processItemEvent:Ext.emptyFn,processContainerEvent:Ext.emptyFn,processSpecialEvent:Ext.emptyFn,processUIEvent:function(g){if(!Ext.getBody().isAncestor(g.target)){return}var k=this,l=g.item,m=k.self,a=m.EventMap,h=m.TouchEventMap,d,c=g.record,j=g.type,b=j;if(g.newType){b=g.newType}if(l){b=h[b]||b;d=k.indexInStore?k.indexInStore(c):k.indexOf(l);if(!c||k.processItemEvent(c,l,d,g)===false){return false}if((k["onBeforeItem"+a[b]](c,l,d,g)===false)||(k.fireEvent("beforeitem"+b,k,c,l,d,g)===false)||(k["onItem"+a[b]](c,l,d,g)===false)){return false}k.fireEvent("item"+b,k,c,l,d,g)}else{j=h[j]||j;if((k.processContainerEvent(g)===false)||(k["onBeforeContainer"+a[j]](g)===false)||(k.fireEvent("beforecontainer"+j,k,g)===false)||(k["onContainer"+a[j]](g)===false)){return false}k.fireEvent("container"+j,k,g)}return true},onItemMouseEnter:function(a,c,b,d){if(this.trackOver){this.highlightItem(c)}},onItemMouseLeave:function(a,c,b,d){if(this.trackOver){this.clearHighlight()}},onItemMouseDown:Ext.emptyFn,onItemLongPress:Ext.emptyFn,onItemMouseUp:Ext.emptyFn,onItemFocus:Ext.emptyFn,onItemClick:Ext.emptyFn,onItemDblClick:Ext.emptyFn,onItemContextMenu:Ext.emptyFn,onItemKeyDown:Ext.emptyFn,onBeforeItemLongPress:Ext.emptyFn,onBeforeItemMouseDown:Ext.emptyFn,onBeforeItemMouseUp:Ext.emptyFn,onBeforeItemFocus:Ext.emptyFn,onBeforeItemMouseEnter:Ext.emptyFn,onBeforeItemMouseLeave:Ext.emptyFn,onBeforeItemClick:Ext.emptyFn,onBeforeItemDblClick:Ext.emptyFn,onBeforeItemContextMenu:Ext.emptyFn,onBeforeItemKeyDown:Ext.emptyFn,onContainerMouseDown:Ext.emptyFn,onContainerLongPress:Ext.emptyFn,onContainerMouseUp:Ext.emptyFn,onContainerMouseOver:Ext.emptyFn,onContainerMouseOut:Ext.emptyFn,onContainerClick:Ext.emptyFn,onContainerDblClick:Ext.emptyFn,onContainerContextMenu:Ext.emptyFn,onContainerKeyDown:Ext.emptyFn,onBeforeContainerMouseDown:Ext.emptyFn,onBeforeContainerLongPress:Ext.emptyFn,onBeforeContainerMouseUp:Ext.emptyFn,onBeforeContainerMouseOver:Ext.emptyFn,onBeforeContainerMouseOut:Ext.emptyFn,onBeforeContainerClick:Ext.emptyFn,onBeforeContainerDblClick:Ext.emptyFn,onBeforeContainerContextMenu:Ext.emptyFn,onBeforeContainerKeyDown:Ext.emptyFn,setHighlightedItem:function(c){var b=this,a=b.highlightedItem,d=b.overItemCls;if(a!==c){if(a){Ext.fly(a).removeCls(d);if(Ext.isIE8){b.repaintBorder(a);b.repaintBorder(a.nextSibling)}if(b.hasListeners.unhighlightitem){b.fireEvent("unhighlightitem",b,a)}}b.highlightedItem=c;if(c){Ext.fly(c).addCls(b.overItemCls);if(Ext.isIE8){b.repaintBorder(c.nextSibling)}if(b.hasListeners.highlightitem){b.fireEvent("highlightitem",b,c)}}}},highlightItem:function(a){this.setHighlightedItem(a)},clearHighlight:function(){this.setHighlightedItem(undefined)},handleUpdate:function(b,a){var g=this,e,c,d;if(g.viewReady){e=g.getNode(a);c=Ext.view.AbstractView.prototype.handleUpdate.apply(this,arguments);d=g.highlightedItem;if(d&&d===e){delete g.highlightedItem;if(c){g.highlightItem(c)}}}},refresh:function(){this.clearHighlight();Ext.view.AbstractView.prototype.refresh.apply(this,arguments)},focusNode:function(j){var g=this,e=g.getNode(j),d=g.el,a=0,b=0,h=d.getRegion(),c;h.bottom=h.top+d.dom.clientHeight;h.right=h.left+d.dom.clientWidth;if(e){c=Ext.fly(e).getRegion();if(c.top<h.top){a=c.top-h.top}else{if(c.bottom>h.bottom){a=c.bottom-h.bottom}}if(c.left<h.left){b=c.left-h.left}else{if(c.right>h.right){b=c.right-h.right}}if(b||a){g.scrollBy(b,a,false)}Ext.fly(e).set({tabIndex:-1});e.focus()}},bindStore:function(b,c,a){var d=this[a];if(d&&d.isFeatureStore){if(b.isFeatureStore){this.bindStoreListeners(b);d.bindStore(d.store)}else{d.bindStore(b)}}else{Ext.view.AbstractView.prototype.bindStore.apply(this,arguments)}},privates:{repaintBorder:function(b){var a=this.getNode(b);if(a){a.className=a.className}},getFocusEl:function(){return this.getTargetEl()}}},0,["dataview"],["box","component","dataview"],{box:true,component:true,dataview:true},["widget.dataview"],0,[Ext.view,"View",Ext,"DataView"],0));(Ext.cmd.derive("Ext.grid.CellContext",Ext.Base,{isCellContext:true,constructor:function(a){this.view=a},isEqual:function(a){if(a){return this.record===a.record&&this.columnHeader===a.columnHeader}return false},setPosition:function(c,a){var b=this;if(arguments.length===1){if(c.view){b.view=c.view}a=c.column;c=c.row}b.setRow(c);b.setColumn(a);return b},setRow:function(c){var a=this,b=a.view.dataSource;if(c!==undefined){if(typeof c==="number"){a.row=Math.max(Math.min(c,b.getCount()-1),0);a.record=b.getAt(c)}else{if(c.isModel){a.record=c;a.row=b.indexOf(c)}else{if(c.tagName){a.record=a.view.getRecord(c);a.row=b.indexOf(a.record)}}}}},setColumn:function(a){var b=this,c=b.view.ownerCt.getColumnManager();if(a!==undefined){if(typeof a==="number"){b.column=a;b.columnHeader=c.getHeaderAtIndex(a)}else{if(a.isHeader){b.columnHeader=a;b.column=c.getHeaderIndex(a)}}}},equal:function(a){return(a&&a.isCellContext&&a.view===this.view&&a.record===this.record&&a.columnHeader===this.columnHeader)}},1,0,0,0,0,0,[Ext.grid,"CellContext"],0));(Ext.cmd.derive("Ext.util.CSS",Ext.Base,function(){var c,e=null,d=document,b=/(-[a-z])/gi,a=function(g,h){return h.charAt(1).toUpperCase()};return{singleton:true,rules:e,initialized:false,constructor:function(){c=this},createStyleSheet:function(j,l){var h,g=d.getElementsByTagName("head")[0],k=d.createElement("style");k.setAttribute("type","text/css");if(l){k.setAttribute("id",l)}h=k.styleSheet;if(h){g.appendChild(k);h.cssText=j}else{k.appendChild(d.createTextNode(j));g.appendChild(k);h=k.sheet}c.cacheStyleSheet(h);return h},removeStyleSheet:function(h){var g=d.getElementById(h);if(g){g.parentNode.removeChild(g)}},swapStyleSheet:function(j,g){var h;c.removeStyleSheet(j);h=d.createElement("link");h.setAttribute("rel","stylesheet");h.setAttribute("type","text/css");h.setAttribute("id",j);h.setAttribute("href",g);d.getElementsByTagName("head")[0].appendChild(h)},cacheStyleSheet:function(m){if(!e){e=c.rules={}}try{var p=m.cssRules||m.rules,l=p.length-1,h=m.imports,g=h?h.length:0,o,k;for(k=0;k<g;++k){c.cacheStyleSheet(h[k])}for(;l>=0;--l){o=p[l];if(o.styleSheet){c.cacheStyleSheet(o.styleSheet)}c.cacheRule(o,m)}}catch(n){}},cacheRule:function(h,m){if(h.styleSheet){return c.cacheStyleSheet(h.styleSheet)}var l=h.selectorText,k,g;if(l){l=l.split(",");k=l.length;for(g=0;g<k;g++){e[Ext.String.trim(l[g]).toLowerCase()]={parentStyleSheet:m,cssRule:h}}}},getRules:function(j){var h={},g;if(e===null||j){c.refreshCache()}for(g in e){h[g]=e[g].cssRule}return h},refreshCache:function(){var j=d.styleSheets,h=0,g=j.length;e=c.rules={};for(;h<g;h++){try{if(!j[h].disabled){c.cacheStyleSheet(j[h])}}catch(k){}}},getRule:function(h,k,j){var l,g;if(!e||k){c.refreshCache()}if(!Ext.isArray(h)){g=e[h.toLowerCase()];if(g&&!j){g=g.cssRule}return g||null}for(l=0;l<h.length;l++){if(e[h[l]]){return j?e[h[l].toLowerCase()]:e[h[l].toLowerCase()].cssRule}}return null},createRule:function(m,h,k){var g,l=m.cssRules||m.rules,j=l.length;if(m.insertRule){m.insertRule(h+" {"+k+"}",j)}else{m.addRule(h,k||" ")}c.cacheRule(g=l[j],m);return g},updateRule:function(g,l,k){var m,h,j;if(!Ext.isArray(g)){m=c.getRule(g);if(m){if(arguments.length===2){j=Ext.Element.parseStyles(l);for(l in j){m.style[l.replace(b,a)]=j[l]}}else{m.style[l.replace(b,a)]=k}return true}}else{for(h=0;h<g.length;h++){if(c.updateRule(g[h],l,k)){return true}}}return false},deleteRule:function(g){var j=c.getRule(g,false,true),k,h;if(j){k=j.parentStyleSheet;h=Ext.Array.indexOf(k.cssRules||k.rules,j.cssRule);if(k.deleteRule){k.deleteRule(h)}else{k.removeRule(h)}delete e[g]}}}},1,0,0,0,0,0,[Ext.util,"CSS"],0));(Ext.cmd.derive("Ext.view.TableLayout",Ext.layout.component.Auto,{type:"tableview",beginLayout:function(c){var b=this,a=b.owner.lockingPartner;Ext.layout.Layout.prototype.beginLayout.apply(this,arguments);if(a){b.lockedGrid=b.owner.up("[lockable]");b.lockedGrid.needsRowHeightSync=true;if(!c.lockingPartner){c.lockingPartner=c.context.getItem(a,a.el);if(c.lockingPartner&&!c.lockingPartner.lockingPartner){c.lockingPartner.lockingPartner=c}}}c.headerContext=c.context.getCmp(b.headerCt);if(b.owner.body.dom){c.bodyContext=c.getEl(b.owner.body)}},calculate:function(g){var e=this,c=e.lockingPartner,a=e.owner,d=0,b;if(!a.store.getCount()){g.state.columnWidthsSynced=true;if(g.bodyContext){g.bodyContext.setHeight(d,false)}g.setProp("contentHeight",d);Ext.layout.component.Auto.prototype.calculate.apply(this,arguments);return}if(g.headerContext.hasProp("columnsChanged")){if(g.headerContext.getProp("columnsChanged")&&!e.setColumnWidths(g)){e.done=false;return}g.state.columnWidthsSynced=true;if(g.bodyContext){b=e.owner.el.down("."+a.ownerCt.emptyCls,true);if(!b){d=g.bodyContext.el.dom.offsetHeight;g.bodyContext.setHeight(d,false)}else{d=b.offsetHeight}if(g.headerContext.state.boxPlan.tooNarrow&&g.ownerCtContext.sizeModel.height.shrinkWrap){d+=Ext.getScrollbarSize().height}g.setProp("contentHeight",d)}if(c&&!c.state.columnWidthsSynced){e.done=false}else{Ext.layout.component.Auto.prototype.calculate.apply(this,arguments)}}else{e.done=false}},measureContentHeight:function(b){var a=b.lockingPartner;if(!b.bodyContext||(b.state.columnWidthsSynced&&(!a||a.state.columnWidthsSynced))){return Ext.layout.component.Component.prototype.measureContentHeight.apply(this,arguments)}},setColumnWidths:function(c){if(!this.owner.body.dom){return true}var l=this,b=l.owner,a=c.context,g=c.headerContext.getProp("columnsChanged"),e=l.headerCt.getVisibleGridColumns(),d,j=0,k=g.length,m,h;if(a){a.currentLayout=l}for(j=0;j<k;j++){d=e[g[j]];m=a.getCmp(d);h=m.props.width;if(isNaN(h)){m.getProp("width");return false}b.body.select(b.getColumnSizerSelector(d)).setWidth(h)}return true},finishedLayout:function(c){var b=this,a=c.headerContext.props.contentWidth,d=Ext.fly(b.owner.getNodeContainer());Ext.layout.component.Component.prototype.finishedLayout.apply(this,arguments);d&&d.setWidth(a);if(b.owner.refreshCounter&&b.lockedGrid&&b.lockedGrid.syncRowHeight&&b.lockedGrid.needsRowHeightSync){b.lockedGrid.syncRowHeights();b.lockedGrid.needsRowHeightSync=false}}},0,0,0,0,["layout.tableview"],0,[Ext.view,"TableLayout"],0));(Ext.cmd.derive("Ext.view.NodeCache",Ext.Base,{statics:{importElementMethods:Ext.dom.CompositeElementLite.importElementMethods,range:document.createRange&&document.createRange()},constructor:function(a){this.view=a;this.clear();this.el=new Ext.dom.Fly()},clear:function(g){var d=this,e=this.elements,b,c,a=d.statics().range;if(d.count&&g){if(a){a.setStartBefore(e[d.startIndex]);a.setEndAfter(e[d.endIndex]);a.deleteContents()}else{for(b in e){c=e[b];c.parentNode.removeChild(c)}}}d.elements={};d.count=d.startIndex=0;d.endIndex=-1},fill:function(b,h,g){g=g||0;var d=this,e=d.elements={},c,a=b.length-g;if(!h){h=0}for(c=0;c<a;c++){e[h+c]=b[c+g]}d.startIndex=h;d.endIndex=h+a-1;d.count=a;return this},insert:function(g,b){var d=this,e=d.elements,c,a=b.length;if(d.count){if(g<d.count){for(c=d.endIndex+a;c>=g+a;c--){e[c]=e[c-a];e[c].setAttribute("data-recordIndex",c)}}d.endIndex=d.endIndex+a}else{d.startIndex=g;d.endIndex=g+a-1}for(c=0;c<a;c++,g++){e[g]=b[c];e[g].setAttribute("data-recordIndex",g)}d.count+=a},invoke:function(d,a){var e=this,c,b;d=Ext.dom.Element.prototype[d];for(b=e.startIndex;b<=e.endIndex;b++){c=e.item(b);if(c){d.apply(c,a)}}return this},item:function(c,b){var d=this.elements[c],a=null;if(d){a=b?this.elements[c]:this.el.attach(this.elements[c])}return a},first:function(a){return this.item(this.startIndex,a)},last:function(a){return this.item(this.endIndex,a)},getCount:function(){return this.count},slice:function(e,b){var d=this.elements,a=[],c;if(!b){b=this.endIndex}else{b=Math.min(this.endIndex,b-1)}for(c=e||this.startIndex;c<=b;c++){a.push(d[c])}return a},replaceElement:function(d,c,a){var e=this.elements,b=(typeof d==="number")?d:this.indexOf(d);if(b>-1){c=Ext.getDom(c);if(a){d=e[b];d.parentNode.insertBefore(c,d);Ext.removeNode(d);c.setAttribute("data-recordIndex",b)}this.elements[b]=c}return this},indexOf:function(b){var c=this.elements,a;b=Ext.getDom(b);for(a=this.startIndex;a<=this.endIndex;a++){if(c[a]===b){return a}}return -1},removeRange:function(b,g,d){var j=this,a=j.elements,e,h,c,k;if(g==null){g=j.endIndex+1}else{g=Math.min(j.endIndex+1,g+1)}if(b==null){b=j.startIndex}c=g-b;for(h=b,k=g;h<=j.endIndex;h++,k++){if(d&&h<g){Ext.removeNode(a[h])}if(k<=j.endIndex){e=a[h]=a[k];e.setAttribute("data-recordIndex",h)}else{delete a[h]}}j.count-=c;j.endIndex-=c},removeElement:function(m,c){var h=this,l,k,a=h.elements,d,e,b=0,g,j;if(Ext.isArray(m)){l=m;m=[];e=l.length;for(b=0;b<e;b++){k=l[b];if(typeof k!=="number"){k=h.indexOf(k)}if(k>=h.startIndex&&k<=h.endIndex){m[m.length]=k}}Ext.Array.sort(m);e=m.length}else{if(m<h.startIndex||m>h.endIndex){return}e=1;m=[m]}for(g=j=m[0],b=0;g<=h.endIndex;g++,j++){if(b<e&&g===m[b]){j++;b++;if(c){Ext.removeNode(a[g])}}if(j<=h.endIndex&&j>=h.startIndex){d=a[g]=a[j];d.setAttribute("data-recordIndex",g)}else{delete a[g]}}h.endIndex-=e;h.count-=e},scroll:function(g,p,c){var n=this,o=n.view,q=o.store,a=n.elements,s=g.length,j,d,b,h,m=o.getNodeContainer(),r=document.createDocumentFragment(),e=o.hasListeners.itemremove,l=o.hasListeners.itemadd,k=n.statics().range;if(p===-1){if(c){if(k){k.setStartBefore(a[(n.endIndex-c)+1]);k.setEndAfter(a[n.endIndex]);k.deleteContents();for(j=(n.endIndex-c)+1;j<=n.endIndex;j++){d=a[j];delete a[j];if(e){o.fireEvent("itemremove",q.getByInternalId(d.getAttribute("data-recordId")),j,d,o)}}}else{for(j=(n.endIndex-c)+1;j<=n.endIndex;j++){d=a[j];delete a[j];d.parentNode.removeChild(d);if(e){o.fireEvent("itemremove",q.getByInternalId(d.getAttribute("data-recordId")),j,d,o)}}}n.endIndex-=c}if(g.length){h=o.bufferRender(g,n.startIndex-=s);for(j=0;j<s;j++){a[n.startIndex+j]=h[j];r.appendChild(h[j])}m.insertBefore(r,m.firstChild);if(l){o.fireEvent("itemadd",g,n.startIndex,h)}}}else{if(c){b=n.startIndex+c;if(k){k.setStartBefore(a[n.startIndex]);k.setEndAfter(a[b-1]);k.deleteContents();for(j=n.startIndex;j<b;j++){d=a[j];delete a[j];if(e){o.fireEvent("itemremove",q.getByInternalId(d.getAttribute("data-recordId")),j,d,o)}}}else{for(j=n.startIndex;j<b;j++){d=a[j];delete a[j];d.parentNode.removeChild(d);if(e){o.fireEvent("itemremove",q.getByInternalId(d.getAttribute("data-recordId")),j,d,o)}}}n.startIndex=b}h=o.bufferRender(g,n.endIndex+1);for(j=0;j<s;j++){a[n.endIndex+=1]=h[j];r.appendChild(h[j])}m.appendChild(r);if(l){o.fireEvent("itemadd",g,n.endIndex+1,h)}}n.count=n.endIndex-n.startIndex+1},sumHeights:function(){var a=0,c=this.elements,b;for(b=this.startIndex;b<=this.endIndex;b++){a+=c[b].offsetHeight}return a}},1,0,0,0,0,0,[Ext.view,"NodeCache"],function(){this.importElementMethods()}));(Ext.cmd.derive("Ext.view.Table",Ext.view.View,{inheritableStatics:{events:["blur","focus","move","resize","destroy","beforedestroy","boxready","afterrender","render","beforerender","removed","hide","beforehide","show","beforeshow","enable","disable","added","deactivate","beforedeactivate","activate","beforeactivate","cellkeydown","beforecellkeydown","cellmouseup","beforecellmouseup","cellmousedown","beforecellmousedown","cellcontextmenu","beforecellcontextmenu","celldblclick","beforecelldblclick","cellclick","beforecellclick","refresh","itemremove","itemadd","itemupdate","viewready","beforerefresh","unhighlightitem","highlightitem","focuschange","deselect","select","beforedeselect","beforeselect","selectionchange","containerkeydown","containercontextmenu","containerdblclick","containerclick","containermouseout","containermouseover","containermouseup","containermousedown","beforecontainerkeydown","beforecontainercontextmenu","beforecontainerdblclick","beforecontainerclick","beforecontainermouseout","beforecontainermouseover","beforecontainermouseup","beforecontainermousedown","itemkeydown","itemcontextmenu","itemdblclick","itemclick","itemmouseleave","itemmouseenter","itemmouseup","itemmousedown","beforeitemkeydown","beforeitemcontextmenu","beforeitemdblclick","beforeitemclick","beforeitemmouseleave","beforeitemmouseenter","beforeitemmouseup","beforeitemmousedown","statesave","beforestatesave","staterestore","beforestaterestore","uievent","groupcollapse","groupexpand"]},componentLayout:"tableview",baseCls:Ext.baseCSSPrefix+"grid-view",unselectableCls:Ext.baseCSSPrefix+"unselectable",firstCls:Ext.baseCSSPrefix+"grid-cell-first",lastCls:Ext.baseCSSPrefix+"grid-cell-last",selectedItemCls:Ext.baseCSSPrefix+"grid-item-selected",selectedCellCls:Ext.baseCSSPrefix+"grid-cell-selected",focusedItemCls:Ext.baseCSSPrefix+"grid-item-focused",overItemCls:Ext.baseCSSPrefix+"grid-item-over",altRowCls:Ext.baseCSSPrefix+"grid-item-alt",dirtyCls:Ext.baseCSSPrefix+"grid-dirty-cell",rowClsRe:new RegExp("(?:^|\\s*)"+Ext.baseCSSPrefix+"grid-row-(first|last|alt)(?:\\s+|$)","g"),cellRe:new RegExp(Ext.baseCSSPrefix+"grid-cell-([^\\s]+)(?:\\s|$)",""),positionBody:true,positionCells:false,stripeOnUpdate:null,trackOver:true,getRowClass:null,stripeRows:true,markDirty:true,ariaRole:"grid",tpl:["{%","view = values.view;","if (!(columns = values.columns)) {","columns = values.columns = view.ownerCt.getVisibleColumnManager().getColumns();","}","values.fullWidth = 0;","for (i = 0, len = columns.length; i < len; i++) {","column = columns[i];","values.fullWidth += (column.cellWidth = column.lastBox ? column.lastBox.width : column.width || column.minWidth);","}","tableCls=values.tableCls=[];","%}",'<div class="'+Ext.baseCSSPrefix+'grid-item-container" style="width:{fullWidth}px">',"{[view.renderTHead(values, out, parent)]}","{%","view.renderRows(values.rows, values.columns, values.viewStartIndex, out);","%}","{[view.renderTFoot(values, out, parent)]}","</div>",{definitions:"var view, tableCls, columns, i, len, column;",priority:0}],outerRowTpl:['<table id="{rowId}" ','data-boundView="{view.id}" ','data-recordId="{record.internalId}" ','data-recordIndex="{recordIndex}" ','class="{[values.itemClasses.join(" ")]}" cellPadding="0" cellSpacing="0" {ariaTableAttr} style="width:0;{itemStyle}">',"{%","this.nextTpl.applyOut(values, out, parent)","%}","</table>",{priority:9999}],rowTpl:["{%",'var dataRowCls = values.recordIndex === -1 ? "" : " '+Ext.baseCSSPrefix+'grid-row";',"%}",'<tr class="{[values.rowClasses.join(" ")]} {[dataRowCls]}" {rowAttr:attributes} tabIndex="-1" {ariaRowAttr}>','<tpl for="columns">{%',"parent.view.renderCell(values, parent.record, parent.recordIndex, parent.rowIndex, xindex - 1, out, parent)","%}","</tpl>","</tr>",{priority:0}],cellTpl:['<td class="{tdCls}" {tdAttr} {[Ext.aria ? "id=\\"" + Ext.id() + "\\"" : ""]} style="width:{column.cellWidth}px;<tpl if="tdStyle">{tdStyle}</tpl>" {ariaCellAttr}>','<div {unselectableAttr} class="'+Ext.baseCSSPrefix+'grid-cell-inner {innerCls}" ','style="text-align:{align};<tpl if="style">{style}</tpl>" {ariaCellInnerAttr}>{value}</div>',"</td>",{priority:0}],refreshSelmodelOnRefresh:false,tableValues:{},rowValues:{itemClasses:[],rowClasses:[]},cellValues:{classes:[Ext.baseCSSPrefix+"grid-cell "+Ext.baseCSSPrefix+"grid-td"]},renderBuffer:document.createElement("div"),constructor:function(a){if(a.grid.isTree){a.baseCls=Ext.baseCSSPrefix+"tree-view"}Ext.Component.prototype.constructor.apply(this,[a])},hasVariableRowHeight:function(){return this.variableRowHeight||this.store.isGrouped()||this.getVisibleColumnManager().hasVariableRowHeight()},initComponent:function(){var b=this,a=b.scroll;if(b.columnLines){b.addCls(b.grid.colLinesCls)}if(b.rowLines){b.addCls(b.grid.rowLinesCls)}b.body=new Ext.dom.Fly();b.body.id=b.id+"gridBody";b.autoScroll=undefined;if(!b.trackOver){b.overItemCls=null}if(a===true||a==="both"){b.autoScroll=true}else{if(a==="horizontal"){b.overflowX="auto"}else{if(a==="vertical"){b.overflowY="auto"}}}b.selModel.view=b.headerCt.view=b;b.grid.view=b;b.initFeatures(b.grid);b.itemSelector=b.getItemSelector();b.all=new Ext.view.NodeCache(b);Ext.view.AbstractView.prototype.initComponent.call(this)},getVisibleColumnManager:function(){var a=this.ownerCt,b=a.ownerLockable;return b?b.getVisibleColumnManager():a.getVisibleColumnManager()},beforeLayout:function(){var b=this,a=!b.firstRefreshDone&&b.headerCt.layout.running;Ext.view.AbstractView.prototype.beforeLayout.apply(this,arguments);if(a&&b.body.dom){b.headerCt.layout.injectViewContext(b.headerCt.layout.ownerContext,b)}},moveColumn:function(a,u,k){var t=this,r=k>1,m=r&&document.createRange?document.createRange():null,b=r&&!m?document.createDocumentFragment():null,l=u,n=t.getGridColumns().length,s=n-1,e=(t.firstCls||t.lastCls)&&(u===0||u===n||a===0||a===s),p,o,h,q,c,d,g;if(t.rendered&&u!==a){h=t.el.query(t.rowSelector);if(u>a&&b){l-=1}for(p=0,q=h.length;p<q;p++){c=h[p];d=c.childNodes;if(e){if(d.length===1){Ext.fly(d[0]).addCls(t.firstCls);Ext.fly(d[0]).addCls(t.lastCls);continue}if(a===0){Ext.fly(d[0]).removeCls(t.firstCls);Ext.fly(d[1]).addCls(t.firstCls)}else{if(a===s){Ext.fly(d[s]).removeCls(t.lastCls);Ext.fly(d[s-1]).addCls(t.lastCls)}}if(u===0){Ext.fly(d[0]).removeCls(t.firstCls);Ext.fly(d[a]).addCls(t.firstCls)}else{if(u===n){Ext.fly(d[s]).removeCls(t.lastCls);Ext.fly(d[a]).addCls(t.lastCls)}}}if(r){if(m){m.setStartBefore(d[a]);m.setEndAfter(d[a+k-1]);b=m.extractContents()}else{for(o=0;o<k;o++){b.appendChild(d[a])}}c.insertBefore(b,d[l]||null)}else{c.insertBefore(d[a],d[l]||null)}}g=t.el.query("colgroup");for(p=0,q=g.length;p<q;p++){c=g[p];if(r){if(m){m.setStartBefore(c.childNodes[a]);m.setEndAfter(c.childNodes[a+k-1]);b=m.extractContents()}else{for(o=0;o<k;o++){b.appendChild(c.childNodes[a])}}c.insertBefore(b,c.childNodes[l]||null)}else{c.insertBefore(c.childNodes[a],c.childNodes[l]||null)}}}},scrollToTop:Ext.emptyFn,addElListener:function(a,c,b){this.mon(this,a,c,b,{element:"el"})},getGridColumns:function(){return this.ownerCt.getVisibleColumnManager().getColumns()},getHeaderAtIndex:function(a){return this.ownerCt.getVisibleColumnManager().getHeaderAtIndex(a)},getCell:function(a,b){var c=this.getRow(a);return Ext.fly(c).down(b.getCellSelector())},getFeature:function(b){var a=this.featuresMC;if(a){return a.get(b)}},findFeature:function(a){if(this.features){return Ext.Array.findBy(this.features,function(b){if(b.ftype===a){return true}})}},initFeatures:function(d){var g=this,c,e,b,a;g.tpl=Ext.XTemplate.getTpl(this,"tpl");g.rowTpl=Ext.XTemplate.getTpl(this,"rowTpl");g.addRowTpl(Ext.XTemplate.getTpl(this,"outerRowTpl"));g.cellTpl=Ext.XTemplate.getTpl(this,"cellTpl");g.featuresMC=new Ext.util.MixedCollection();e=g.features=g.constructFeatures();a=e?e.length:0;for(c=0;c<a;c++){b=e[c];b.view=g;b.grid=d;g.featuresMC.add(b);b.init(d)}},renderTHead:function(b,c,e){var g=b.view.headerFns,a,d;if(g){for(d=0,a=g.length;d<a;++d){g[d].call(this,b,c,e)}}},addHeaderFn:function(a){var b=this.headerFns;if(!b){b=this.headerFns=[]}b.push(a)},renderTFoot:function(b,c,e){var g=b.view.footerFns,a,d;if(g){for(d=0,a=g.length;d<a;++d){g[d].call(this,b,c,e)}}},addFooterFn:function(a){var b=this.footerFns;if(!b){b=this.footerFns=[]}b.push(a)},addTpl:function(a){return this.insertTpl("tpl",a)},addRowTpl:function(a){return this.insertTpl("rowTpl",a)},addCellTpl:function(a){return this.insertTpl("cellTpl",a)},insertTpl:function(e,d){var c=this,a,b;if(d.isTemplate){d=Ext.Object.chain(d)}else{d=new Ext.XTemplate("{%this.nextTpl.applyOut(values, out, parent);%}",d)}for(a=c[e];d.priority<a.priority;a=a.nextTpl){b=a}if(b){b.nextTpl=d}else{c[e]=d}d.nextTpl=a;return d},tplApplyOut:function(a,b,c){if(this.before){if(this.before(a,b,c)===false){return}}this.nextTpl.applyOut(a,b,c);if(this.after){this.after(a,b,c)}},constructFeatures:function(){var g=this,e=g.features,d,b,c=0,a;if(e){b=[];a=e.length;for(;c<a;c++){d=e[c];if(!d.isFeature){d=Ext.create("feature."+d.ftype,d)}b[c]=d}}return b},beforeRender:function(){var a=this;Ext.view.AbstractView.prototype.beforeRender.call(this);if(!a.enableTextSelection){a.protoEl.unselectable()}},onViewScroll:function(b,a){if(!this.ignoreScroll){Ext.view.AbstractView.prototype.onViewScroll.apply(this,arguments);this.fireEvent("bodyscroll",b,a)}},createRowElement:function(b,c,d){var e=this,g=e.renderBuffer,a=e.collectData([b],c);a.columns=d;e.tpl.overwrite(g,a);return Ext.fly(g).down(e.getNodeContainerSelector(),true).firstChild},bufferRender:function(a,b){var c=this,d=c.renderBuffer;c.tpl.overwrite(d,c.collectData(a,b));return Ext.Array.toArray(Ext.fly(d).down(c.getNodeContainerSelector(),true).childNodes)},collectData:function(a,c){var b=this;b.rowValues.view=b;b.tableValues.view=b;b.tableValues.rows=a;b.tableValues.columns=null;b.tableValues.viewStartIndex=c;b.tableValues.touchScroll=b.touchScroll;b.tableValues.tableStyle="width:"+b.headerCt.getTableWidth()+"px";return b.tableValues},collectNodes:function(a){this.all.fill(this.getNodeContainer().childNodes,this.all.startIndex)},refreshSize:function(c){var b=this,a=b.getBodySelector();if(a){b.body.attach(b.el.down(a,true))}if(!b.hasLoadingHeight){Ext.suspendLayouts();Ext.view.AbstractView.prototype.refreshSize.apply(this,arguments);if(c||(b.hasVariableRowHeight()&&b.dataSource.getCount())){b.grid.updateLayout()}Ext.resumeLayouts(true)}},clearViewEl:function(j){var e=this,c=e.all,a=e.getStore(),b,d,g,h;for(b=c.startIndex;b<=c.endIndex;b++){d=c.item(b,true);e.fireEvent("itemremove",a.getByInternalId(d.getAttribute("data-recordId")),b,d,e)}e.clearEmptyEl();e.all.clear(true);g=Ext.fly(e.getNodeContainer());if(g&&!j){h=e.getTargetEl();if(h.dom!==g.dom){g.destroy()}}},getMaskTarget:function(){var a=this.ownerCt;if(a.ownerLockable){a=a.ownerLockable}return a.getMaskTarget()},statics:{getBoundView:function(a){return Ext.getCmp(a.getAttribute("data-boundView"))}},getRecord:function(c){var b=this,a;if(b.store.isDestroyed){return}if(c.isModel){return c}c=b.getNode(c);if(c){if(!b.hasActiveFeature()){a=c.getAttribute("data-recordIndex");if(a){a=parseInt(a,10);if(a>-1){return b.store.data.getAt(a)}}}return b.dataSource.getByInternalId(c.getAttribute("data-recordId"))}},indexOf:function(a){a=this.getNode(a);if(!a&&a!==0){return -1}return this.all.indexOf(a)},indexInStore:function(a){return a?this.dataSource.indexOf(this.getRecord(a)):-1},renderRows:function(g,e,d,b){var h=this.rowValues,a=g.length,c;h.view=this;h.columns=e;for(c=0;c<a;c++,d++){h.itemClasses.length=h.rowClasses.length=0;this.renderRow(g[c],d,b)}h.view=h.columns=h.record=null},renderColumnSizer:function(b,c){var e=b.columns||this.getGridColumns(),a=e.length,d,h,g;c.push('<colgroup role="presentation">');for(d=0;d<a;d++){h=e[d];g=h.cellWidth?h.cellWidth:Ext.grid.header.Container.prototype.defaultWidth;c.push('<col role="presentation" class="',Ext.baseCSSPrefix,"grid-cell-",e[d].getItemId(),'" style="width:'+g+'px">')}c.push("</colgroup>")},renderRow:function(g,a,e){var j=this,d=a===-1,h=j.selModel,m=j.rowValues,c=m.itemClasses,b=m.rowClasses,l,k=j.rowTpl;m.rowAttr={};m.record=g;m.recordId=g.internalId;m.recordIndex=j.store.indexOf(g);m.rowIndex=a;m.rowId=j.getRowId(g);m.itemCls=m.rowCls="";if(!m.columns){m.columns=j.ownerCt.getVisibleColumnManager().getColumns()}c.length=b.length=0;if(!d){c[0]=Ext.baseCSSPrefix+"grid-item";if(!j.ownerCt.disableSelection&&h.isRowSelected){if(h.isRowSelected(g)){c.push(j.selectedItemCls)}}if(j.stripeRows&&a%2!==0){c.push(j.altRowCls)}if(j.getRowClass){l=j.getRowClass(g,a,null,j.dataSource);if(l){b.push(l)}}}if(e){k.applyOut(m,e,j.tableValues)}else{return k.apply(m.me.tableValues)}},renderCell:function(d,h,g,o,k,e){var m=this,b,j=m.selModel,l=m.cellValues,c=l.classes,a=h.data[d.dataIndex],p=m.cellTpl,q,n;l.record=h;l.column=d;l.recordIndex=g;l.rowIndex=o;l.columnIndex=k;l.cellIndex=k;l.align=d.align;l.innerCls=d.innerCls;l.tdCls=l.tdStyle=l.tdAttr=l.style="";l.unselectableAttr=m.enableTextSelection?"":'unselectable="on"';c[1]=d.getCellId();n=2;if(d.renderer&&d.renderer.call){b=m.ownerCt.columnManager.getHeaderIndex(d);q=d.renderer.call(d.usingDefaultRenderer?d:d.scope||m.ownerCt,a,l,h,g,b,m.dataSource,m);if(l.css){h.cssWarning=true;l.tdCls+=" "+l.css;l.css=null}if(l.tdCls){c[n++]=l.tdCls}}else{q=a}l.value=(q==null||q==="")?d.emptyCellText:q;if(d.tdCls){c[n++]=d.tdCls}if(m.markDirty&&h.isModified(d.dataIndex)){c[n++]=m.dirtyCls}if(d.isFirstVisible){c[n++]=m.firstCls}if(d.isLastVisible){c[n++]=m.lastCls}if(!m.enableTextSelection){c[n++]=m.unselectableCls}if(j&&j.isCellModel&&j.isCellSelected(m,g,d)){c[n++]=(m.selectedCellCls)}c.length=n;l.tdCls=c.join(" ");p.applyOut(l,e);l.column=null},getRow:function(a){var b;if((!a&&a!==0)||!this.rendered){return null}if(a.target){a=a.target}if(Ext.isString(a)){return Ext.fly(a).down(this.rowSelector,true)}if(Ext.isNumber(a)){b=this.all.item(a);return b&&b.down(this.rowSelector,true)}if(a.isModel){return this.getRowByRecord(a)}b=Ext.fly(a);if(b.is(this.itemSelector)){return this.getRowFromItem(b)}return b.findParent(this.rowSelector,this.getTargetEl())},getRowId:function(a){return this.id+"-record-"+a.internalId},constructRowId:function(a){return this.id+"-record-"+a},getNodeById:function(a){a=this.constructRowId(a);return this.retrieveNode(a,false)},getRowById:function(a){a=this.constructRowId(a);return this.retrieveNode(a,true)},getNodeByRecord:function(a){return this.retrieveNode(this.getRowId(a),false)},getRowByRecord:function(a){return this.retrieveNode(this.getRowId(a),true)},getRowFromItem:function(c){var d=Ext.getDom(c).tBodies[0].childNodes,a=d.length,b;for(b=0;b<a;b++){if(Ext.fly(d[b]).is(this.rowSelector)){return d[b]}}},retrieveNode:function(c,b){var a=this.el.getById(c,true);if(b&&a){return Ext.fly(a).down(this.rowSelector,true)}return a},updateIndexes:Ext.emptyFn,bodySelector:"div."+Ext.baseCSSPrefix+"grid-item-container",nodeContainerSelector:"div."+Ext.baseCSSPrefix+"grid-item-container",itemSelector:"table."+Ext.baseCSSPrefix+"grid-item",rowSelector:"tr."+Ext.baseCSSPrefix+"grid-row",cellSelector:"td."+Ext.baseCSSPrefix+"grid-cell",sizerSelector:"."+Ext.baseCSSPrefix+"grid-cell",innerSelector:"div."+Ext.baseCSSPrefix+"grid-cell-inner",getBodySelector:function(){return this.bodySelector},getColumnSizerSelector:function(b){var a=this.sizerSelector+"-"+b.getItemId();return"td"+a+",col"+a},getItemSelector:function(){return this.itemSelector},getCellSelector:function(a){return a?a.getCellSelector():this.cellSelector},getCellInnerSelector:function(a){return this.getCellSelector(a)+" "+this.innerSelector},addRowCls:function(b,a){var c=this.getRow(b);if(c){Ext.fly(c).addCls(a)}},removeRowCls:function(b,a){var c=this.getRow(b);if(c){Ext.fly(c).removeCls(a)}},onRowSelect:function(b){var a=this;a.addItemCls(b,a.selectedItemCls);if(Ext.isIE8){a.repaintBorder(b+1)}},onRowDeselect:function(b){var a=this;a.removeItemCls(b,a.selectedItemCls);if(Ext.isIE8){a.repaintBorder(b+1)}},onCellSelect:function(b){var a=this.getCellByPosition(b);if(a){a.addCls(this.selectedCellCls)}},onCellDeselect:function(b){var a=this.getCellByPosition(b,true);if(a){Ext.fly(a).removeCls(this.selectedCellCls)}},getCellByPosition:function(a,b){if(a){var c=this.getRow(a.row),d=this.ownerCt.getColumnManager().getHeaderAtIndex(a.column);if(d&&c){return Ext.fly(c).down(this.getCellSelector(d),b)}}return false},onRowFocus:function(d,b,a){var c=this;if(b){c.addItemCls(d,c.focusedItemCls);if(!a){c.focusRow(d)}}else{c.removeItemCls(d,c.focusedItemCls)}if(Ext.isIE8){c.repaintBorder(d+1)}},focusRow:function(e,b){var d=this,a,c=d.getFocusTask();if(b){c.delay(Ext.isNumber(b)?b:10,d.focusRow,d,[e,false]);return}c.cancel();if(d.isVisible(true)&&(e=d.getRow(e))){d.scrollRowIntoView(e);a=d.getRecord(e);d.selModel.setLastFocused(a);d.doFocus(e);d.fireEvent("rowfocus",a,e,d.indexInStore(e))}},scrollRowIntoView:function(b,a){b=this.getRow(b);if(b){this.scrollElIntoView(b,false,a)}},focusCell:function(b,c){var e=this,a,d=e.getFocusTask();if(c){d.delay(Ext.isNumber(c)?c:10,e.focusCell,e,[b,false]);return}d.cancel();if(e.isVisible(true)&&(a=e.getCellByPosition(b))){e.scrollCellIntoView(a);e.doFocus(e.getRow(b.row));e.fireEvent("cellfocus",b.record,a,b)}},doFocus:function(b){var c=this,a=Ext.isIE,d;if(a){d=c.el.getScrollLeft();c.ignoreScroll=true}(c.focusEl=Ext.get(b)).focus();if(a){c.el.setScrollLeft(d);c.ignoreScroll=false}},scrollCellIntoView:function(a,b){if(a.row!=null&&a.column!=null){a=this.getCellByPosition(a)}if(a){this.scrollElIntoView(a,null,b)}},scrollElIntoView:function(b,d,a){var c=this,e=c.scrollManager;if(e){e.scrollIntoView(b,d,a)}else{Ext.fly(b).scrollIntoView(c.el,d,a)}},syncRowHeights:function(e,b){e.style.height=b.style.height="";var d=this,g=d.rowTpl,c=e.offsetHeight,a=b.offsetHeight;if(c!==a){while(g){if(g.syncRowHeights){if(g.syncRowHeights(e,b)===false){break}}g=g.nextTpl}c=e.offsetHeight;a=b.offsetHeight;if(c!==a){e=Ext.fly(e).down(d.rowSelector,true)||e;b=Ext.fly(b).down(d.rowSelector,true)||b;if(e&&b){e.style.height=b.style.height="";c=e.offsetHeight;a=b.offsetHeight;if(c>a){Ext.fly(e).setHeight(c);Ext.fly(b).setHeight(c)}else{if(a>c){Ext.fly(e).setHeight(a);Ext.fly(b).setHeight(a)}}}}}},onUpdate:function(c,a,b,e){var d=this;if(d.rendered&&d.throttledUpdate&&d.bufferedRenderer&&!d.getNode(a)){return}Ext.view.AbstractView.prototype.onUpdate.apply(this,arguments)},handleUpdate:function(l,g,o,x){var F=this,r=F.rowTpl,D,q,n,h,p,z,C,j,u,m,G,c,e,t=[],B,y,v=F.variableRowHeight,k,s=0,b,d,w,E,a,A=F.ownerCt;if(F.viewReady){q=F.getNodeByRecord(g);if(q){u=F.overItemCls;m=F.focusedItemCls;G=F.selectedItemCls;c=F.ownerCt.getVisibleColumnManager().getColumns();for(y=0,B=c.length;y<B;y++){e=c[y];k=F.shouldUpdateCell(g,e,x);if(k){s=s|k;t[t.length]=e;v=v||e.variableRowHeight}}if(!F.getRowFromItem(q)||(s&1)||(q.tBodies[0].childNodes.length>1)){D=Ext.fly(q,"_internal");h=F.createRowElement(g,F.dataSource.indexOf(g),t);if(D.hasCls(u)){Ext.fly(h).addCls(u)}if(D.hasCls(m)){Ext.fly(h).addCls(m)}if(D.hasCls(G)){Ext.fly(h).addCls(G)}if(Ext.isIE9m&&q.mergeAttributes){q.mergeAttributes(h,true)}else{p=h.attributes;z=p.length;for(j=0;j<z;j++){C=p[j].name;if(C!=="id"){q.setAttribute(C,p[j].value)}}}if(c.length&&(n=F.getRow(q))){F.updateColumns(n,Ext.fly(h).down(F.rowSelector,true),t)}while(r){if(r.syncContent){if(r.syncContent(q,h,x?t:null)===false){break}}r=r.nextTpl}}else{if(!F.cellFly){F.cellFly=new Ext.dom.Fly()}for(y=0,B=t.length;y<B;y++){e=t[y];d=e.dataIndex;w=g.get(d);b=q.firstChild.firstChild.childNodes[e.getVisibleIndex()];if(F.markDirty){F.cellFly.attach(b);if(g.isModified(e.dataIndex)){F.cellFly.addCls(F.dirtyCls)}else{F.cellFly.removeCls(F.dirtyCls)}}E=e.usingDefaultRenderer;a=E?e:e.scope;if(e.updater){Ext.callback(e.updater,a,[b,w,g,F],0,e,A)}else{if(e.renderer){w=Ext.callback(e.renderer,a,[w,null,g,0,0,F.dataSource,F],0,e,A)}if(e.producesHTML){b.childNodes[0].innerHTML=w}else{b.childNodes[0].childNodes[0].data=w}}if(F.highlightClass){Ext.fly(b).addCls(F.highlightClass);if(!F.changedCells){F.self.prototype.changedCells=[];F.prototype.clearChangedTask=new Ext.util.DelayedTask(F.clearChangedCells,F.prototype);F.clearChangedTask.delay(F.unhighlightDelay)}F.changedCells.push({cell:b,cls:F.highlightClass,expires:Ext.Date.now()+1000})}}}if(v){Ext.suspendLayouts()}F.fireEvent("itemupdate",g,F.store.indexOf(g),q);if(v){F.refreshSize();Ext.resumeLayouts(true)}}}},clearChangedCells:function(){var d=this,b=Ext.Date.now(),e;for(var c=0,a=d.changedCells.length;c<a;){e=d.changedCells[c];if(e.expires<=b){Ext.fly(e.cell).removeCls(e.highlightClass);Ext.Array.erase(d.changedCells,c,1);a--}else{break}}if(a){d.clearChangedTask.delay(d.unhighlightDelay)}},updateColumns:function(k,l,m){var j=this,b,a,h,c,o=m.length,n,d,p,g,e=j.getCellSelector();if(k.mergeAttributes){k.mergeAttributes(l,true)}else{b=l.attributes;a=b.length;for(c=0;c<a;c++){h=b[c].name;if(h!=="id"){k.setAttribute(h,b[c].value)}}}for(n=0;n<o;n++){d=m[n];e=j.getCellSelector(d);p=Ext.fly(k).selectNode(e);g=Ext.fly(l).selectNode(e);Ext.fly(p).syncContent(g)}},shouldUpdateCell:function(b,e,d){if(!e.preventUpdate){if(e.hasCustomRenderer){return 1}if(d){var a=d.length,c,g;for(c=0;c<a;++c){g=d[c];if(g===e.dataIndex||g===b.idProperty){return 2}}}else{return 2}}return 0},refresh:function(){var a=this,b;Ext.view.View.prototype.refresh.apply(this,arguments);a.headerCt.setSortState();if(a.touchScroll&&a.el&&!a.all.getCount()&&a.headerCt&&a.headerCt.tooNarrow){b=a.scrollManager.scroller.getSize();b.x=a.headerCt.getTableWidth();a.scrollManager.scroller.setSize(b);a.scrollManager.refresh()}a.refreshSelection()},refreshSelection:function(){var e=this,b=e.selModel,d,a,c;if(b.isRowModel){d=b.selected.items;a=d.length;for(c=0;c<a;c++){e.onRowSelect(e.indexOf(e.getNode(d[c])))}}e.selModel.onLastFocusChanged(null,e.selModel.lastFocused,true)},processItemEvent:function(b,s,k,r){var u=this,m=u.self,t=m.EventMap,c=r.type,h,a,n,g=u.features,q=g.length,p,j,l,d,o;if(Ext.isIE&&c==="mouseup"&&!r.within(u.el)){return false}if(u.indexInStore(s)!==-1){h=Ext.fly(s).down(u.rowSelector,true);a=r.getTarget(u.getCellSelector(),h);n=u.getSelectionModel();c=m.TouchEventMap[c]||c;if(c=="keydown"&&!a&&n.getCurrentPosition){a=u.getCellByPosition(n.getCurrentPosition(),true)}if(a){if(!a.parentNode){return false}o=u.getHeaderByCell(a);j=u.ownerCt.getColumnManager().getHeaderIndex(o)}else{j=-1}l=u.fireEvent("uievent",c,u,a,k,j,r,b,h);if((l===false||Ext.view.View.prototype.processItemEvent.apply(this,arguments)===false)){if(n.onVetoUIEvent){n.onVetoUIEvent(c,u,a,k,j,r,b,h)}return false}for(p=0;p<q;++p){d=g[p];if(d.wrapsItem){if(d.vetoEvent(b,h,k,r)===false){u.processSpecialEvent(r);return false}}}if(a&&c!=="mouseover"&&c!=="mouseout"){l=!((u["onBeforeCell"+t[c]](a,j,b,h,k,r)===false)||(u.fireEvent("beforecell"+c,u,a,j,b,h,k,r)===false)||(u["onCell"+t[c]](a,j,b,h,k,r)===false)||(u.fireEvent("cell"+c,u,a,j,b,h,k,r)===false))}if(l!==false){l=u.fireEvent("row"+c,u,b,h,k,r)}return l}else{this.processSpecialEvent(r);return false}},processSpecialEvent:function(j){var m=this,c=m.features,l=c.length,n=j.type,d,o,g,h,b,k,a=m.ownerCt;Ext.view.View.prototype.processSpecialEvent.apply(this,arguments);if(n=="mouseover"||n=="mouseout"){return}for(d=0;d<l;d++){o=c[d];if(o.hasFeatureEvent){h=j.getTarget(o.eventSelector,m.getTargetEl());if(h){g=o.eventPrefix;n=m.self.TouchEventMap[n]||n;b=o.getFireEventArgs("before"+g+n,m,h,j);k=o.getFireEventArgs(g+n,m,h,j);if((m.fireEvent.apply(m,b)===false)||(a.fireEvent.apply(a,b)===false)||(m.fireEvent.apply(m,k)===false)||(a.fireEvent.apply(a,k)===false)){return false}}}}return true},onCellMouseDown:Ext.emptyFn,onCellLongPress:Ext.emptyFn,onCellMouseUp:Ext.emptyFn,onCellClick:Ext.emptyFn,onCellDblClick:Ext.emptyFn,onCellContextMenu:Ext.emptyFn,onCellKeyDown:Ext.emptyFn,onBeforeCellMouseDown:Ext.emptyFn,onBeforeCellLongPress:Ext.emptyFn,onBeforeCellMouseUp:Ext.emptyFn,onBeforeCellClick:Ext.emptyFn,onBeforeCellDblClick:Ext.emptyFn,onBeforeCellContextMenu:Ext.emptyFn,onBeforeCellKeyDown:Ext.emptyFn,expandToFit:function(a){this.autoSizeColumn(a)},autoSizeColumn:function(a){if(Ext.isNumber(a)){a=this.getGridColumns[a]}if(a){if(a.isGroupHeader){a.autoSize();return}delete a.flex;a.setWidth(this.getMaxContentWidth(a))}},getMaxContentWidth:function(d){var g=this,l=g.el.query(d.getCellInnerSelector()),b=d.getWidth(),c=0,e=l.length,a=g.body.select(g.getColumnSizerSelector(d)),j=Math.max,h=0,k;if(e>0){if(Ext.supports.ScrollWidthInlinePaddingBug){h+=g.getCellPaddingAfter(l[0])}if(g.columnLines){h+=Ext.fly(l[0].parentNode).getBorderWidth("lr")}}a.setWidth(1);d.titleEl.setStyle("text-overflow","clip");k=d.textEl.dom.offsetWidth+d.titleEl.getPadding("lr");d.titleEl.setStyle("text-overflow","");for(;c<e;c++){k=j(k,l[c].scrollWidth)}k+=h;k=j(k,40);a.setWidth(b);return k},getPositionByEvent:function(g){var d=this,b=g.getTarget(d.cellSelector),c=g.getTarget(d.itemSelector),a=d.getRecord(c),h=d.getHeaderByCell(b);return d.getPosition(a,h)},getHeaderByCell:function(a){if(a){return this.ownerCt.getVisibleColumnManager().getHeaderAtIndex(a.cellIndex)}return false},walkCells:function(o,p,l,q,b,s){if(!o){return false}var m=this,t=o.row,g=o.column,n=m.dataSource.getCount(),j=m.ownerCt.getColumnManager(),d=m.ownerCt.getVisibleColumnManager(),a=j.getHeaderIndex(d.getFirst()),k=j.getHeaderIndex(d.getLast()),r=t,h=g,c=j.getHeaderAtIndex(g);if(!c||c.hidden||!n){return false}l=l||{};p=p.toLowerCase();switch(p){case"right":if(g===k){if(q||t===n-1){return false}if(!l.ctrlKey){r=m.walkRows(t,1);if(r!==t){h=a}}}else{if(!l.ctrlKey){h=j.getHeaderIndex(d.getNextSibling(c))}else{h=k}}break;case"left":if(g===a){if(q||t===0){return false}if(!l.ctrlKey){r=m.walkRows(t,-1);if(r!==t){h=k}}}else{if(!l.ctrlKey){h=j.getHeaderIndex(d.getPreviousSibling(c))}else{h=a}}break;case"up":if(t===0){return false}else{if(!l.ctrlKey){r=m.walkRows(t,-1)}else{r=m.walkRows(-1,1)}}break;case"down":if(t===n-1){return false}else{if(!l.ctrlKey){r=m.walkRows(t,1)}else{r=m.walkRows(n,-1)}}break}if(b&&b.call(s||m,{row:r,column:h})!==true){return false}h=j.getHeaderAtIndex(h);return new Ext.grid.CellContext(m).setPosition(r,h)},walkRows:function(j,a){var d=this,h=d.dataSource,e=0,l=j,b,c=(a<0)?0:(h.isBufferedStore?h.getTotalCount():h.getCount())-1,g=c?1:-1,k=j;do{if(c?k>=c:k<=c){return l||c}k+=g;if((b=Ext.fly(d.getRow(k)))&&b.isVisible(true)){e+=g;l=k}}while(e!==a);return k},walkRecs:function(b,a){var h=this,l=h.dataSource,j=0,m=b,c,e=(a<0)?0:(l.isBufferedStore?l.getTotalCount():l.getCount())-1,k=e?1:-1,g=l.indexOf(b),d;do{if(e?g>=e:g<=e){return m}g+=k;d=l.getAt(g);if(!d.isCollapsedPlaceholder&&(c=Ext.fly(h.getNodeByRecord(d)))&&c.isVisible(true)){j+=k;m=d}}while(j!==a);return m},getFirstVisibleRowIndex:function(){var c=this,b=(c.dataSource.isBufferedStore?c.dataSource.getTotalCount():c.dataSource.getCount()),a=c.indexOf(c.all.first())-1;do{a+=1;if(a===b){return}}while(!Ext.fly(c.getRow(a)).isVisible(true));return a},getLastVisibleRowIndex:function(){var b=this,a=b.indexOf(b.all.last());do{a-=1;if(a===-1){return}}while(!Ext.fly(b.getRow(a)).isVisible(true));return a},getHeaderCt:function(){return this.headerCt},getPosition:function(a,b){return new Ext.grid.CellContext(this).setPosition(a,b)},beforeDestroy:function(){var a=this;if(a.rendered){a.el.clearListeners()}Ext.Component.prototype.beforeDestroy.apply(this,arguments)},onDestroy:function(){var d=this,c=d.featuresMC,a,b;if(c){for(b=0,a=c.getCount();b<a;++b){c.getAt(b).destroy()}}d.featuresMC=null;Ext.view.AbstractView.prototype.onDestroy.apply(this,arguments)},onReplace:function(b,e,a,d){var c=this,g=c.bufferedRenderer;if(c.rendered&&g){g.onReplace(b,e,a,d)}else{Ext.view.AbstractView.prototype.onReplace.apply(this,arguments);c.doStripeRows(e);c.selModel.onLastFocusChanged(null,c.selModel.lastFocused,true)}},onAdd:function(b,a,c){var d=this,e=d.bufferedRenderer;if(d.rendered&&e){e.onReplace(b,c,[],a)}else{Ext.view.AbstractView.prototype.onAdd.apply(this,arguments);d.setPendingStripe(c);d.selModel.onLastFocusChanged(null,d.selModel.lastFocused,true)}},onRemove:function(b,a,c){var d=this,e=d.bufferedRenderer;if(d.rendered&&e){e.onReplace(b,c,a,[])}else{Ext.view.AbstractView.prototype.onRemove.apply(this,arguments);d.setPendingStripe(c)}},onDataRefresh:function(){var b=this,a=b.ownerCt;if(a&&a.isCollapsingOrExpanding===2){a.on("expand",b.onDataRefresh,b,{single:true});return}if(b.bufferedRenderer){b.all.clear();b.bufferedRenderer.onStoreClear()}Ext.view.AbstractView.prototype.onDataRefresh.call(this)},getViewRange:function(){var a=this;if(a.bufferedRenderer){return a.bufferedRenderer.getViewRange()}return Ext.view.AbstractView.prototype.getViewRange.call(this)},setPendingStripe:function(a){var b=this.stripeOnUpdate;if(b===null){b=a}else{b=Math.min(b,a)}this.stripeOnUpdate=b},onEndUpdate:function(){var a=this,b=a.stripeOnUpdate;if(b||b===0){a.doStripeRows(b);a.stripeOnUpdate=null}Ext.view.AbstractView.prototype.onEndUpdate.apply(this,arguments)},doStripeRows:function(b,a){var d=this,e,h,c,g;if(d.rendered&&d.stripeRows){e=d.getNodes(b,a);for(c=0,h=e.length;c<h;c++){g=e[c];g.className=g.className.replace(d.rowClsRe," ");b++;if(b%2===0){g.className+=(" "+d.altRowCls)}}}},hasActiveFeature:function(){return(this.isGrouping&&this.store.isGrouped())||this.isRowWrapped},getCellPaddingAfter:function(a){return Ext.fly(a).getPadding("r")},privates:{getFocusEl:function(){return this.focusEl},refreshScroll:function(){var a=this,b=a.bufferedRenderer;if(b){b.stretchView(a,b.getScrollHeight(true))}else{a.callParent()}}}},1,["tableview"],["box","component","dataview","tableview"],{box:true,component:true,dataview:true,tableview:true},["widget.tableview"],0,[Ext.view,"Table"],0));(Ext.cmd.derive("Ext.grid.View",Ext.view.Table,{autoScroll:true},0,["gridview"],["box","component","dataview","gridview","tableview"],{box:true,component:true,dataview:true,gridview:true,tableview:true},["widget.gridview"],0,[Ext.grid,"View"],0));(Ext.cmd.derive("Ext.grid.Panel",Ext.panel.Table,{alternateClassName:["Ext.list.ListView","Ext.ListView","Ext.grid.GridPanel"],viewType:"gridview",lockable:false,rowLines:true},0,["grid","gridpanel"],["box","component","container","grid","gridpanel","panel","tablepanel"],{box:true,component:true,container:true,grid:true,gridpanel:true,panel:true,tablepanel:true},["widget.grid","widget.gridpanel"],0,[Ext.grid,"Panel",Ext.list,"ListView",Ext,"ListView",Ext.grid,"GridPanel"],0));(Ext.cmd.derive("Ext.form.CheckboxManager",Ext.util.MixedCollection,{singleton:true,getByName:function(a,b){return this.filterBy(function(c){return c.name==a&&c.getFormId()==b})}},0,0,0,0,0,0,[Ext.form,"CheckboxManager"],0));(Ext.cmd.derive("Ext.form.field.Checkbox",Ext.form.field.Base,{alternateClassName:"Ext.form.Checkbox",stretchInputElFixed:false,childEls:["boxLabelEl"],fieldSubTpl:['<div class="{wrapInnerCls} {noBoxLabelCls}" role="presentation">','<tpl if="labelAlignedBefore">',"{beforeBoxLabelTpl}",'<label id="{cmpId}-boxLabelEl" data-ref="boxLabelEl" {boxLabelAttrTpl} class="{boxLabelCls} ','{boxLabelCls}-{ui} {boxLabelCls}-{boxLabelAlign} {childElCls}" for="{id}">',"{beforeBoxLabelTextTpl}","{boxLabel}","{afterBoxLabelTextTpl}","</label>","{afterBoxLabelTpl}","</tpl>",'<input type="button" id="{id}" data-ref="inputEl" role="{role}" {inputAttrTpl}','<tpl if="tabIdx"> tabIndex="{tabIdx}"</tpl>','<tpl if="disabled"> disabled="disabled"</tpl>','<tpl if="fieldStyle"> style="{fieldStyle}"</tpl>',' class="{fieldCls} {typeCls} {typeCls}-{ui} {inputCls} {inputCls}-{ui} {childElCls} {afterLabelCls}" autocomplete="off" hidefocus="true" />','<tpl if="boxLabel && !labelAlignedBefore">',"{beforeBoxLabelTpl}",'<label id="{cmpId}-boxLabelEl" data-ref="boxLabelEl" {boxLabelAttrTpl} class="{boxLabelCls} ','{boxLabelCls}-{ui} {boxLabelCls}-{boxLabelAlign} {childElCls}" for="{id}">',"{beforeBoxLabelTextTpl}","{boxLabel}","{afterBoxLabelTextTpl}","</label>","{afterBoxLabelTpl}","</tpl>","</div>",{disableFormats:true,compiled:true}],publishes:{checked:1},subTplInsertions:["beforeBoxLabelTpl","afterBoxLabelTpl","beforeBoxLabelTextTpl","afterBoxLabelTextTpl","boxLabelAttrTpl","inputAttrTpl"],isCheckbox:true,focusCls:"form-checkbox-focus",fieldBodyCls:Ext.baseCSSPrefix+"form-cb-wrap",checked:false,checkedCls:Ext.baseCSSPrefix+"form-cb-checked",boxLabelCls:Ext.baseCSSPrefix+"form-cb-label",boxLabelAlign:"after",afterLabelCls:Ext.baseCSSPrefix+"form-cb-after",wrapInnerCls:Ext.baseCSSPrefix+"form-cb-wrap-inner",noBoxLabelCls:Ext.baseCSSPrefix+"form-cb-wrap-inner-no-box-label",inputValue:"on",checkChangeEvents:[],inputType:"checkbox",ariaRole:"checkbox",onRe:/^on$/i,inputCls:Ext.baseCSSPrefix+"form-cb",initComponent:function(){var a=this,b=a.value;if(b!==undefined){a.checked=a.isChecked(b,a.inputValue)}Ext.form.field.Base.prototype.initComponent.apply(this,arguments);a.getManager().add(a)},initValue:function(){var b=this,a=!!b.checked;b.originalValue=b.lastValue=a;b.setValue(a)},getElConfig:function(){var a=this;if(a.isChecked(a.rawValue,a.inputValue)){a.addCls(a.checkedCls)}return Ext.util.Renderable.prototype.getElConfig.call(this)},getSubTplData:function(){var b=this,a=b.boxLabel,d=b.boxLabelAlign,c=a&&d==="before";return Ext.apply(Ext.form.field.Base.prototype.getSubTplData.call(this),{disabled:b.readOnly||b.disabled,wrapInnerCls:b.wrapInnerCls,boxLabel:a,boxLabelCls:b.boxLabelCls,boxLabelAlign:d,labelAlignedBefore:c,afterLabelCls:c?b.afterLabelCls:"",noBoxLabelCls:!a?b.noBoxLabelCls:"",role:b.ariaRole})},initEvents:function(){var a=this;Ext.form.field.Base.prototype.initEvents.call(this);a.mon(a.inputEl,"click",a.onBoxClick,a,{translate:false})},setBoxLabel:function(a){var b=this;b.boxLabel=a;if(b.rendered){b.boxLabelEl.setHtml(a)}},onBoxClick:function(){var a=this;if(!a.disabled&&!a.readOnly){this.setValue(!this.checked)}},getRawValue:function(){return this.checked},getValue:function(){return this.checked},getSubmitValue:function(){var a=this.uncheckedValue,b=Ext.isDefined(a)?a:null;return this.checked?this.inputValue:b},isChecked:function(b,a){return(b===true||b==="true"||b==="1"||b===1||(((Ext.isString(b)||Ext.isNumber(b))&&a)?b==a:this.onRe.test(b)))},setRawValue:function(c){var b=this,d=b.inputEl,a=b.isChecked(c,b.inputValue);if(d){b[a?"addCls":"removeCls"](b.checkedCls)}b.checked=b.rawValue=a;if(!b.duringSetValue){b.lastValue=a}return a},setValue:function(g){var e=this,c,b,a,d;if(Ext.isArray(g)){c=e.getManager().getByName(e.name,e.getFormId()).items;a=c.length;for(b=0;b<a;++b){d=c[b];d.setValue(Ext.Array.contains(g,d.inputValue))}}else{e.duringSetValue=true;Ext.form.field.Base.prototype.setValue.apply(this,arguments);delete e.duringSetValue}return e},valueToRaw:Ext.identityFn,onChange:function(b,a){var d=this,c=d.handler;if(c){c.call(d.scope||d,d,b)}Ext.form.field.Field.prototype.onChange.apply(this,arguments);if(d.reference&&d.publishState){d.publishState("checked",b)}},resetOriginalValue:function(b){var g=this,d,e,a,c;if(!b){d=g.getManager().getByName(g.name,g.getFormId()).items;a=d.length;for(c=0;c<a;++c){e=d[c];if(e!==g){d[c].resetOriginalValue(true)}}}Ext.form.field.Field.prototype.resetOriginalValue.call(this)},beforeDestroy:function(){Ext.Component.prototype.beforeDestroy.call(this);this.getManager().removeAtKey(this.id)},getManager:function(){return Ext.form.CheckboxManager},onEnable:function(){var a=this,b=a.inputEl;Ext.form.field.Base.prototype.onEnable.call(this);if(b){b.dom.disabled=a.readOnly}},setReadOnly:function(c){var a=this,b=a.inputEl;if(b){b.dom.disabled=!!c||a.disabled}Ext.form.field.Base.prototype.setReadOnly.apply(this,arguments)},getFormId:function(){var b=this,a;if(!b.formId){a=b.up("form");if(a){b.formId=a.id}}return b.formId}},0,["checkbox","checkboxfield"],["box","checkbox","checkboxfield","component","field"],{box:true,checkbox:true,checkboxfield:true,component:true,field:true},["widget.checkbox","widget.checkboxfield"],0,[Ext.form.field,"Checkbox",Ext.form,"Checkbox"],0));(Ext.cmd.derive("Ext.app.bindinspector.Util",Ext.Base,{singleton:true,getChildStub:function(a,c){var d,b;if(c){b=c.children;if(b){d=b[a]}}return d||null},valueRenderer:function(a){var b;if(a===undefined){return"undefined"}else{if(a===null){return"null"}else{if(Ext.isString(a)){return a}else{if(Ext.isDate(a)){return Ext.Date.format(a,"c")}else{if(a&&a.isModel){b=a.entityName;return Ext.String.format("Model({0}, {1})",b.replace("noconflict.",""),a.getId())}else{if(a&&a.isStore){b=a.entityName||"Anonymous";return"Store{"+b.replace("noconflict.","")+"}"}}}}}}return a},buildBindData:function(d){var a=[],b,c;for(b in d){c=d[b];a.push({key:b,descriptor:c.descriptor,tokens:c.tokens,value:c.value,binding:c})}return a}},0,0,0,0,0,0,[Ext.app.bindinspector,"Util"],0));(Ext.cmd.derive("Ext.app.bindinspector.ComponentDetail",Ext.panel.Panel,{layout:"border",activeCls:Ext.baseCSSPrefix+"bindinspector-stub-active",descriptorCls:Ext.baseCSSPrefix+"bindinspector-descriptor",multipleCls:Ext.baseCSSPrefix+"bindinspector-mult-val",directCls:Ext.baseCSSPrefix+"bindinspector-direct-val",inheritedCls:Ext.baseCSSPrefix+"bindinspector-inherited-val",componentKeyCls:Ext.baseCSSPrefix+"bindinspector-comp-key",componentDescCls:Ext.baseCSSPrefix+"bindinspector-comp-desc",componentValCls:Ext.baseCSSPrefix+"bindinspector-comp-val",lastItemCls:Ext.baseCSSPrefix+"bindinspector-last-item",vmPreviewDefault:{xtype:"container",region:"east",split:true,width:"50%",cls:Ext.baseCSSPrefix+"bindinspector-prev-default",padding:20,layout:{type:"hbox",align:"middle",pack:"center"},items:[{xtype:"component",flex:1,html:"Select a component with a ViewModel (or inherited ViewModel) from the ComponentList to view the ViewModel details"}]},initComponent:function(){var h=this,l=h.up("bindinspector-container"),e=h.component||{},g=h.env,a=e.publishes,b=e.bindings,j="Bindings &nbsp;&nbsp;&nbsp;\u21d2 &nbsp;&nbsp;&nbsp;",d=g.getInheritedVM(e),c,k;h.bindingsPreviewDefault={xtype:"panel",border:false,region:"center",cls:Ext.baseCSSPrefix+"bindinspector-prev-default",bodyPadding:20,layout:{type:"hbox",align:"middle",pack:"center"},items:[{xtype:"component",flex:1,html:"Select a component with bindings from the ComponentList to view the bindings details along with the component's inherited ViewModel"}],dockedItems:[{xtype:"toolbar",dock:"top",defaultButtonUI:"default",items:["->",{text:"Open in dedicated tab",handler:function(m){m.up("bindinspector-container").onComponentDblclick(null,e)}}]}]};if(e.reference){j+="["+e.reference+"] &bull; "}c=e.bindData||Ext.app.bindinspector.Util.buildBindData(b);if(a){k=[{xtype:"component",html:'Publishes: &nbsp;&nbsp;<span style="color: #5C5C5C;font-size: 14px;line-height: 14px;">'+Ext.Object.getKeys(a).join(" &bull; ")+"</span>"}]}h.bindingsGrid={xtype:"gridpanel",title:j+=e.id,header:{items:[{xtype:"button",text:"Open in dedicated tab",ui:"default-toolbar",handler:function(m){m.up("bindinspector-container").onComponentDblclick(null,e)}}]},region:"center",cls:Ext.baseCSSPrefix+"bindinspector-compdetail-grid",flex:1,hideHeaders:true,store:{model:h.BindingModel,data:c},columns:[{flex:1,scope:h,renderer:h.bindingRenderer}],tbar:k,bbar:[{xtype:"checkboxfield",itemId:"highlightToggle",boxLabel:"Highlight VM target nodes on binding selection",checked:true,listeners:{scope:h,change:h.onHighlightChange}}],viewConfig:{stripeRows:false,trackOver:false,getRowClass:function(n,p,q,o){var m=[];if(p===o.getCount()-1){m.push(h.lastItemCls)}return m.join(" ")}},listeners:{scope:h,cellclick:h.onCellClick,selectionchange:h.onSelectionChange}};h.viewModelTree={xtype:"bindinspector-viewmodeldetail",itemId:"vm-"+d.id,vm:d,region:"east",split:true,width:"50%",height:"50%"};h.items=[];h.items.push(b?h.bindingsGrid:h.bindingsPreviewDefault);h.items.push(d?h.viewModelTree:h.vmPreviewDefault);Ext.panel.Panel.prototype.initComponent.apply(this,arguments)},bindingRenderer:function(k,l,c){var e=this,d=c.get("binding"),j=c.get("key"),b=e.descriptorRenderer(c.get("descriptor"),l,c),h=Ext.app.bindinspector.Util.valueRenderer(c.get("value")),a="",g="Direct";if(Ext.isEmpty(h)||h==="null"){h="<i>No value found</i>"}j='<span class="'+e.componentKeyCls+'">'+j+": </span>";b='<span class="'+e.componentDescCls+'">'+b+"</span>";h='<span class="'+e.componentValCls+'">'+h+"</span>";if(d.isTemplateBinding){g="Template"}else{if(d.isMultiBinding){g="Multi"}}g=Ext.util.Format.format('<div data-qtip="Binding Type" data-qclass="'+Ext.baseCSSPrefix+'componentlist-tip" class="'+Ext.baseCSSPrefix+'bindinspector-bind-type">{0}</div>',g);return j+b+"<br>"+h+g},onHighlightChange:function(c){var b=this.down("bindinspector-viewmodeldetail"),d=this.down("gridpanel"),a=d.getSelectionModel();if(!c.checked){this.onSelectionChange(a,null,true)}else{this.onSelectionChange(a,a.getSelection())}},onSelectionChange:function(e,c,d){var g=this.down("bindinspector-viewmodeldetail"),m=g.getStore(),k,j,a,m,l,h,b;if((c&&c.length===0)||d===true){m.suspendEvents();g.getStore().getRootNode().cascadeBy({before:function(n){n.set("highlighted",false)}});m.resumeEvents();g.getView().refresh();return}c=c[0];k=c.get("tokens");j=c.get("binding");a=this.down("#highlightToggle").checked;m=g.getStore();l=m.getRootNode();h=[];if(k&&a){if(j.isTemplateBinding){Ext.Array.forEach(k,function(n){h.push(l.findChild("name",n[0]))},this)}else{if(j.isMultiBinding){}else{h.push(l.findChild("name",k[0]))}}}m.suspendEvents();l.cascadeBy({before:function(n){b=h.length===0;Ext.Array.forEach(h,function(o){if(n===o||n.isAncestor(o)){b=true}});n.set("highlighted",b||-1)}});m.resumeEvents();g.getView().refresh();g.getSelectionModel().select(h[0])},onCellClick:function(h,j,b,c,l,a,d){var g=d.getTarget("."+this.activeCls),k;if(g){k=g.getAttribute("data-path");this.showPath(k)}},showPath:function(a){this.selectPath(this.down("bindinspector-viewmodeldetail"),a)},selectPath:function(c,g){var d=c.getRootNode(),e=g.split("."),a=e.length,b;for(b=0;d&&b<a;++b){d=this.getChildByKey(d,e[b])}if(d){c.getSelectionModel().select(d)}},getChildByKey:function(b,a){var c=b.childNodes;if(c){return Ext.Array.findBy(c,function(d){return d.get("name")===a})}return null},descriptorRenderer:function(a,d,g){var e=g.get("binding"),c=g.get("descriptor"),b=g.get("tokens");a=a||"";if(e.isTemplateBinding){Ext.Array.forEach(b,function(j){var h=new RegExp("{"+j.join("\\.")+"}","g");a=a.replace(h,this.parseTokens(j))},this)}else{if(e.isMultiBinding){}else{return a.replace(c,this.parseTokens(b))}}return Ext.String.htmlEncode(a)},parseTokens:function(l){var m=this,d=[],b=m.env.getInheritedVM(m.component),a="",n=b.rootStub,c=false,k=false,e="",p="",g="",j,h,o;l=l||[];Ext.Array.forEach(l,function(r){var t=Ext.app.bindinspector.Util.getChildStub(r,n),q="",s;if(t){s=t.value;if(s!==undefined){q=m.activeCls}}else{}d.push('<span data-path="'+a+r+'" class="stub '+q+'">'+r+"</span>");a+=r+".";n=t},m);if(l[0]){g=l[0];ownerVMs=b.dataMap[l[0]].ownerVMs;h=ownerVMs.length;Ext.Array.forEach(ownerVMs,function(q){if(q.id===b.id){c=true}if(q.id!==b.id){k=true}})}if(c&&k){e+=" "+m.multipleCls;o=h>1?"VMs":"VM";p='data-qclass="'+Ext.baseCSSPrefix+'componentlist-tip" data-qtip="<b>'+g+"</b>&nbsp; provided by this VM and "+(h-1)+" ancestor "+o+'"'}else{if(c){e+=" "+m.directCls;p='data-qclass="'+Ext.baseCSSPrefix+'componentlist-tip" data-qtip="<b>'+g+'</b>&nbsp; is provided by this VM"'}else{if(k){e+=" "+m.inheritedCls;o=h>1?"VMs":"VM";p='data-qclass="'+Ext.baseCSSPrefix+'componentlist-tip" data-qtip="<b>'+g+"</b>&nbsp; is provided by "+h+" ancestor "+o+'"'}}}return"<span "+p+'class="'+m.descriptorCls+e+'">{'+d.join(".")+"}</span>"}},0,["bindinspector-componentdetail"],["bindinspector-componentdetail","box","component","container","panel"],{"bindinspector-componentdetail":true,box:true,component:true,container:true,panel:true},["widget.bindinspector-componentdetail"],0,[Ext.app.bindinspector,"ComponentDetail"],function(){this.prototype.BindingModel=Ext.define(null,{extend:"Ext.data.Model",fields:["key","descriptor","tokens","value","binding"]})}));(Ext.cmd.derive("Ext.tree.View",Ext.view.Table,{isTreeView:true,loadingCls:Ext.baseCSSPrefix+"grid-tree-loading",expandedCls:Ext.baseCSSPrefix+"grid-tree-node-expanded",leafCls:Ext.baseCSSPrefix+"grid-tree-node-leaf",expanderSelector:"."+Ext.baseCSSPrefix+"tree-expander",checkboxSelector:"."+Ext.baseCSSPrefix+"tree-checkbox",expanderIconOverCls:Ext.baseCSSPrefix+"tree-expander-over",nodeAnimWrapCls:Ext.baseCSSPrefix+"tree-animator-wrap",ariaRole:"tree",loadMask:false,rootVisible:true,expandDuration:250,collapseDuration:250,toggleOnDblClick:true,stripeRows:false,uiFields:["expanded","loaded","checked","expandable","leaf","icon","iconCls","loading","qtip","qtitle"],treeRowTpl:["{%","this.processRowValues(values);","this.nextTpl.applyOut(values, out, parent);","%}",{priority:10,processRowValues:function(c){var b=c.record,a=c.view;c.rowAttr["data-qtip"]=b.get("qtip")||"";c.rowAttr["data-qtitle"]=b.get("qtitle")||"";if(b.isExpanded()){c.rowClasses.push(a.expandedCls)}if(b.isLeaf()){c.rowClasses.push(a.leafCls)}if(b.isLoading()){c.rowClasses.push(a.loadingCls)}}}],initComponent:function(){var a=this;if(a.bufferedRenderer){a.animate=false}else{if(a.initialConfig.animate===undefined){a.animate=Ext.enableFx}}a.store=a.panel.getStore();a.onRootChange(a.store.getRoot());a.animQueue={};a.animWraps={};Ext.view.Table.prototype.initComponent.apply(this,arguments);a.store.setRootVisible(a.rootVisible);a.addRowTpl(Ext.XTemplate.getTpl(a,"treeRowTpl"))},onFillComplete:function(e,d,b){var c=this,a=c.store,g=a.indexOf(b[0]);d.triggerUIUpdate();if(!b.length||g===-1){return}c.onAdd(c.store,b,g);c.refreshPartner()},onBeforeSort:function(){this.store.suspendEvents()},onSort:function(a){if(a.isStore){this.store.resumeEvents();this.refresh();this.refreshPartner()}},refreshPartner:function(){var a=this.lockingPartner;if(a){a.refresh()}},getMaskStore:function(){return this.panel.getStore()},afterRender:function(){var a=this;Ext.view.View.prototype.afterRender.apply(this,arguments);a.el.on({scope:a,delegate:a.expanderSelector,mouseover:a.onExpanderMouseOver,mouseout:a.onExpanderMouseOut,click:{delegate:a.checkboxSelector,fn:a.onCheckboxChange,scope:a}})},afterComponentLayout:function(){var b=this,a=b.stretcher,c=b.scrollManager;Ext.Component.prototype.afterComponentLayout.apply(this,arguments);if(a){a.setWidth((this.getWidth()-Ext.getScrollbarSize().width))}if(c){c.refresh()}},processUIEvent:function(a){if(a.getTarget("."+this.nodeAnimWrapCls,this.el)){return false}return Ext.view.View.prototype.processUIEvent.apply(this,arguments)},onClear:function(){this.store.removeAll()},setRootNode:function(b,a){if(!a){this.store.setNode(b)}this.node=b},onCheckboxChange:function(d,a){var c=this,b=d.getTarget(c.getItemSelector(),c.getTargetEl());if(b){c.onCheckChange(c.getRecord(b))}},onCheckChange:function(a){var b=a.get("checked");if(Ext.isBoolean(b)){b=!b;a.set("checked",b);this.fireEvent("checkchange",a,b)}},getChecked:function(){var a=[];this.node.cascadeBy(function(b){if(b.get("checked")){a.push(b)}});return a},isItemChecked:function(a){return a.get("checked")},createAnimWrap:function(a,b){var e=this,d=e.getNode(a),c;c=Ext.fly(d).insertSibling({role:"presentation",tag:"div",cls:e.nodeAnimWrapCls},"after");return{record:a,node:d,el:c,expanding:false,collapsing:false,animateEl:c,targetEl:c}},getAnimWrap:function(d,a){if(!this.animate){return null}var b=this.animWraps,c=b[d.internalId];if(a!==false){while(!c&&d){d=d.parentNode;if(d){c=b[d.internalId]}}}return c},doAdd:function(c,h){var j=this,a=j.bufferRender(c,h,true),e=c[0],k=e.parentNode,l=j.all,n,d=j.getAnimWrap(k),m,b,g;if(!d||!d.expanding){return Ext.view.AbstractView.prototype.doAdd.apply(this,arguments)}k=d.record;m=d.targetEl;b=m.dom.childNodes;g=b.length;n=h-j.indexInStore(k)-1;if(!g||n>=g){m.appendChild(a,true)}else{Ext.fly(b[n]).insertSibling(a,"before",true)}l.insert(h,a);return a},onRemove:function(g,a,b){var d=this,e,c;if(d.viewReady){e=d.store.getCount()===0;if(e){d.refresh()}else{for(c=a.length-1,b+=c;c>=0;--c,--b){d.doRemove(a[c],b)}}if(d.hasListeners.itemremove){for(c=a.length-1,b+=c;c>=0;--c,--b){d.fireEvent("itemremove",a[c],b,d)}}}},doRemove:function(a,c){var h=this,d=h.all,b=h.getAnimWrap(a),g=d.item(c),e=g?g.dom:null;if(!e||!b||!b.collapsing){return Ext.view.AbstractView.prototype.doRemove.apply(this,arguments)}b.targetEl.dom.insertBefore(e,b.targetEl.dom.firstChild);d.removeElement(c)},onBeforeExpand:function(d,b,c){var e=this,a;if(e.rendered&&e.all.getCount()&&e.animate){if(e.getNode(d)){a=e.getAnimWrap(d,false);if(!a){a=e.animWraps[d.internalId]=e.createAnimWrap(d);a.animateEl.setHeight(0)}else{if(a.collapsing){a.targetEl.select(e.itemSelector).destroy()}}a.expanding=true;a.collapsing=false}}},onExpand:function(j){var h=this,e=h.animQueue,a=j.getId(),c=h.getNode(j),g=c?h.indexOf(c):-1,d,b,k;if(h.singleExpand){h.ensureSingleExpand(j)}if(g===-1){return}d=h.getAnimWrap(j,false);if(!d){h.refreshSelection();j.isExpandingOrCollapsing=false;h.fireEvent("afteritemexpand",j,g,c);h.refreshSize();return}b=d.animateEl;k=d.targetEl;b.stopAnimation();e[a]=true;b.dom.style.height="0px";b.animate({from:{height:0},to:{height:k.dom.scrollHeight},duration:h.expandDuration,listeners:{afteranimate:function(){var l=k.dom.childNodes;if(l.length){d.el.insertSibling(l,"before",true)}d.el.destroy();delete h.animWraps[d.record.internalId];delete e[a];if(!h.isDestroyed){h.refreshSize()}}},callback:function(){h.refreshSelection();j.isExpandingOrCollapsing=false;h.fireEvent("afteritemexpand",j,g,c)}});d.isAnimating=true},onBeforeCollapse:function(e,b,c,h,d){var g=this,a;if(g.rendered&&g.all.getCount()){if(g.animate){if(Ext.Array.contains(e.joined,g.store)){a=g.getAnimWrap(e);if(!a){a=g.animWraps[e.internalId]=g.createAnimWrap(e,c)}else{if(a.expanding){a.targetEl.select(this.itemSelector).destroy()}}a.expanding=false;a.collapsing=true;a.callback=h;a.scope=d}}else{g.onCollapseCallback=h;g.onCollapseScope=d}}},onCollapse:function(d){var g=this,a=g.animQueue,j=d.getId(),e=g.getNode(d),c=e?g.indexOf(e):-1,b=g.getAnimWrap(d),h;if(!g.all.getCount()||!Ext.Array.contains(d.joined,g.store)){return}if(!b){g.refreshSelection();d.isExpandingOrCollapsing=false;g.fireEvent("afteritemcollapse",d,c,e);g.refreshSize();Ext.callback(g.onCollapseCallback,g.onCollapseScope);g.onCollapseCallback=g.onCollapseScope=null;return}h=b.animateEl;a[j]=true;h.stopAnimation();h.animate({to:{height:0},duration:g.collapseDuration,listeners:{afteranimate:function(){b.el.destroy();delete g.animWraps[b.record.internalId];delete a[j];if(!g.isDestroyed){g.refreshSize()}}},callback:function(){g.refreshSelection();d.isExpandingOrCollapsing=false;g.fireEvent("afteritemcollapse",d,c,e);Ext.callback(b.callback,b.scope);b.callback=b.scope=null}});b.isAnimating=true},isAnimating:function(a){return !!this.animQueue[a.getId()]},expand:function(d,c,h,e){var g=this,b=!!g.animate,a;if(!b||!d.isExpandingOrCollapsing){if(!d.isLeaf()){d.isExpandingOrCollapsing=b}Ext.suspendLayouts();a=d.expand(c,h,e);Ext.resumeLayouts(true);return a}},collapse:function(c,b,g,d){var e=this,a=!!e.animate;if(!a||!c.isExpandingOrCollapsing){if(!c.isLeaf()){c.isExpandingOrCollapsing=a}return c.collapse(b,g,d)}},toggle:function(b,a,d,c){if(b.isExpanded()){this.collapse(b,a,d,c)}else{this.expand(b,a,d,c)}},onItemDblClick:function(a,e,c){var d=this,b=d.editingPlugin;Ext.view.View.prototype.onItemDblClick.apply(this,arguments);if(d.toggleOnDblClick&&a.isExpandable()&&!(b&&b.clicksToEdit===2)){d.focusRow(a);d.toggle(a)}},onBeforeItemMouseDown:function(a,c,b,d){if(d.getTarget(this.expanderSelector,c)){return false}return Ext.view.View.prototype.onBeforeItemMouseDown.apply(this,arguments)},onItemClick:function(a,c,b,d){if(d.getTarget(this.expanderSelector,c)&&a.isExpandable()){this.focusRow(a);this.toggle(a,d.ctrlKey);return false}return Ext.view.View.prototype.onItemClick.apply(this,arguments)},onExpanderMouseOver:function(b,a){b.getTarget(this.cellSelector,10,true).addCls(this.expanderIconOverCls)},onExpanderMouseOut:function(b,a){b.getTarget(this.cellSelector,10,true).removeCls(this.expanderIconOverCls)},getStoreListeners:function(){var b=this,a=Ext.apply(Ext.view.AbstractView.prototype.getStoreListeners.call(this),{rootchange:b.onRootChange,fillcomplete:b.onFillComplete});if(!this.getStore().remoteSort){Ext.apply(a,{beforesort:b.onBeforeSort,sort:b.onSort})}return a},onRootChange:function(c,a){var b=this;if(b.rootListeners){b.rootListeners.destroy()}if(c){b.rootListeners=c.on({beforeexpand:b.onBeforeExpand,expand:b.onExpand,beforecollapse:b.onBeforeCollapse,collapse:b.onCollapse,scope:b})}},ensureSingleExpand:function(b){var a=b.parentNode;if(a){a.eachChild(function(c){if(c!==b&&c.isExpanded()){c.collapse()}})}},shouldUpdateCell:function(b,e,d){if(d){var c=0,a=d.length;for(;c<a;++c){if(Ext.Array.contains(this.uiFields,d[c])){return true}}}return Ext.view.Table.prototype.shouldUpdateCell.apply(this,arguments)}},0,["treeview"],["box","component","dataview","tableview","treeview"],{box:true,component:true,dataview:true,tableview:true,treeview:true},["widget.treeview"],0,[Ext.tree,"View"],0));(Ext.cmd.derive("Ext.selection.RowModel",Ext.selection.Model,{deltaScroll:5,enableKeyNav:true,ignoreRightMouseSelection:false,isRowModel:true,constructor:function(){this.views=[];Ext.selection.Model.prototype.constructor.apply(this,arguments)},bindComponent:function(a){var b=this;a.on({rowcontextmenu:b.onRowClick,rowclick:b.onRowClick,scope:b});if(b.enableKeyNav){b.initKeyNav(a)}},initKeyNav:function(a){var b=this;if(!a.rendered){a.on("render",Ext.Function.bind(b.initKeyNav,b,[a],0),b,{single:true});return}a.el.set({tabIndex:-1});b.keyNav=new Ext.util.KeyNav({target:a,ignoreInputFields:true,eventName:"itemkeydown",processEvent:function(d,c,h,e,g){g.record=c;g.recordIndex=e;return g},up:b.onKeyUp,down:b.onKeyDown,right:b.onKeyRight,left:b.onKeyLeft,pageDown:b.onKeyPageDown,pageUp:b.onKeyPageUp,home:b.onKeyHome,end:b.onKeyEnd,space:b.onKeySpace,enter:b.onKeyEnter,A:{ctrl:true,handler:b.selectAll},scope:b})},onUpdate:function(b){var d=this,a=d.view,c;if(a&&d.isSelected(b)){c=a.indexOf(b);a.onRowSelect(c);if(b===d.lastFocused){a.onRowFocus(c,true)}}},getRowsVisible:function(){var e=false,a=this.views[0],d=a.all.first(),b,c;if(d){b=d.getHeight();c=a.el.getHeight();e=Math.floor(c/b)}return e},onKeyEnd:function(c){var b=this,a=b.views[0];if(a.bufferedRenderer){a.bufferedRenderer.scrollTo(b.store.getCount()-1,false,function(e,d){b.afterKeyNavigate(c,d)})}else{b.afterKeyNavigate(c,a.walkRecs(c.record,a.dataSource.getCount()-1-a.dataSource.indexOf(c.record)))}},onKeyHome:function(c){var b=this,a=b.views[0];if(a.bufferedRenderer){a.bufferedRenderer.scrollTo(0,false,function(e,d){b.afterKeyNavigate(c,d)})}else{b.afterKeyNavigate(c,a.walkRecs(c.record,-a.dataSource.indexOf(c.record)))}},onKeyPageUp:function(g){var d=this,a=d.views[0],h=d.getRowsVisible(),c,b;if(h){if(a.bufferedRenderer){c=Math.max(g.recordIndex-h,0);d.lastKeyEvent=g;a.bufferedRenderer.scrollTo(c,false,d.afterBufferedScrollTo,d)}else{b=a.walkRecs(g.record,-h);d.afterKeyNavigate(g,b)}}},onKeyPageDown:function(g){var d=this,a=d.views[0],h=d.getRowsVisible(),c,b;if(h){if(a.bufferedRenderer){c=Math.min(g.recordIndex+h,d.store.getCount()-1);d.lastKeyEvent=g;a.bufferedRenderer.scrollTo(c,false,d.afterBufferedScrollTo,d)}else{b=a.walkRecs(g.record,h);d.afterKeyNavigate(g,b)}}},onKeySpace:function(b){var a=b.record||this.lastFocused;if(a){this.afterKeyNavigate(b,a)}},onKeyEnter:Ext.emptyFn,onKeyUp:function(b){var a=this.views[0].walkRecs(b.record,-1);if(a){this.afterKeyNavigate(b,a)}},onKeyDown:function(b){var a=b.record.isExpandingOrCollapsing?null:this.views[0].walkRecs(b.record,1);if(a){this.afterKeyNavigate(b,a)}},afterBufferedScrollTo:function(b,a){this.afterKeyNavigate(this.lastKeyEvent,a)},scrollByDeltaX:function(d){var a=this.views[0],c=a.up(),b=c.horizontalScroller;if(b){b.scrollByDeltaX(d)}},onKeyLeft:function(a){this.scrollByDeltaX(-this.deltaScroll)},onKeyRight:function(a){this.scrollByDeltaX(this.deltaScroll)},onRowClick:function(b,a,h,c,g){var d=this;if(c!==-1){if(!d.allowRightMouseSelection(g)){return}if(!(g.type==="contextmenu"&&this.isSelected(a))){d.processSelection(b,a,h,c,g)}}},processSelection:function(b,a,d,c,g){this.selectWithEvent(a,g)},allowRightMouseSelection:function(a){var b=this.ignoreRightMouseSelection&&a.button!==0;if(b){b=this.hasSelection()}return !b},onSelectChange:function(g,c,l,a){var j=this,m=j.views,d=m.length,b=m[0].indexOf(g),h=c?"select":"deselect",e,k;if((l||j.fireEvent("before"+h,j,g,b))!==false&&a()!==false){for(e=0;e<d;e++){k=m[e];if(c){k.onRowSelect(b,l)}else{k.onRowDeselect(b,l)}j.publishSelection(c?g:null)}if(!l){j.fireEvent(h,j,g,b)}}},publishSelection:function(a){var d=this,e=d.selectionMode==="SINGLE",b=d.views[0].ownerGrid,c;if(d.setupPublish||(e&&b.reference)){if(!d.setupPublish){d.setupPublish=true;c=b.getPublishes()||{};c.selection=1;b.setPublishes(c)}d.lastPublish=a;b.publishState("selection",a)}},onPrune:function(b){var a=this;if(a.lastPublish===b){a.publishSelection(null)}},onLastFocusChanged:function(h,c,b){var a=this.views,g=a.length,e,d=0;if(h){e=a[0].indexOf(h);if(e!==-1){for(;d<g;d++){a[d].onRowFocus(e,false,true)}}}if(c){e=a[0].indexOf(c);if(e!==-1){for(d=0;d<g;d++){a[d].onRowFocus(e,true,b)}}}Ext.selection.Model.prototype.onLastFocusChanged.apply(this,arguments)},onEditorTab:function(h,d){var g=this,k=h.context.view,b=h.getActiveRecord(),a=h.getActiveColumn(),c=k.getPosition(b,a),l=d.shiftKey?"left":"right",j;do{j=c;c=k.walkCells(c,l,d,g.preventWrap);if(j&&j.isEqual(c)){return}}while(c&&(!c.columnHeader.getEditor(b)||!h.startEditByPosition(c)))},getCurrentPosition:function(){var a=this.selected.getAt(0);if(a){return new Ext.grid.CellContext(this.view).setPosition(this.store.indexOf(a),0)}},selectByPosition:function(a,c){var b=new Ext.grid.CellContext(this.view);b.setPosition(a.row,a.column);this.select(b.record,c)},selectNext:function(h,c){var g=this,b=g.store,e=g.getSelection(),a=e[e.length-1],d=g.views[0].indexOf(a)+1,j;if(d===b.getCount()||d===0){j=false}else{g.doSelect(d,h,c);j=true}return j},selectPrevious:function(g,b){var e=this,d=e.getSelection(),a=d[0],c=e.views[0].indexOf(a)-1,h;if(c<0){h=false}else{e.doSelect(c,g,b);h=true}return h},isRowSelected:function(a){return this.isSelected(a)},isCellSelected:function(b,a,c){return this.isSelected(a)}},1,0,0,0,["selection.rowmodel"],0,[Ext.selection,"RowModel"],0));(Ext.cmd.derive("Ext.selection.TreeModel",Ext.selection.RowModel,{constructor:function(a){Ext.selection.RowModel.prototype.constructor.apply(this,arguments);if(this.pruneRemoved){this.pruneRemoved=false;this.pruneRemovedNodes=true}},bindStore:function(a,b){var c=this;Ext.selection.Model.prototype.bindStore.apply(this,arguments);if(c.pruneRemovedNodes){c.view.mon(c.treeStore,{remove:c.onNodeRemove,scope:c})}},onNodeRemove:function(b,c,a){if(!a){this.deselectDeletedRecords([c])}},onKeyRight:function(b,a){this.navExpand(b,a)},navExpand:function(g,b){var c=this,d=c.getLastFocused(),a=c.view;if(d){if(d.isExpanded()){c.onKeyDown(g,b)}else{if(d.isExpandable()){if(!a.isTreeView){a=a.lockingPartner}a.expand(d);if(d){c.onLastFocusChanged(null,d)}}}}},onKeyLeft:function(b,a){this.navCollapse(b,a)},navCollapse:function(h,c){var d=this,g=d.getLastFocused(),b=d.view,a;if(g){a=g.parentNode;if(g.isExpanded()){if(!b.isTreeView){b=b.lockingPartner}b.collapse(g);d.onLastFocusChanged(null,g)}else{if(a&&!a.isRoot()){if(h.shiftKey){d.selectRange(a,g,h.ctrlKey,"up");d.setLastFocused(a)}else{if(h.ctrlKey){d.setLastFocused(a)}else{d.select(a)}}}}this.onLastFocusChanged(null,g)}},onKeySpace:function(b,a){if(b.record.data.checked!=null){this.toggleCheck(b)}else{Ext.selection.RowModel.prototype.onKeySpace.apply(this,arguments)}},onKeyEnter:function(b,a){if(b.record.data.checked!=null){this.toggleCheck(b)}else{Ext.selection.RowModel.prototype.onKeyEnter.apply(this,arguments)}},toggleCheck:function(c){var a=this.view,b=this.getLastSelected();c.stopEvent();if(b){if(!a.isTreeView){a=a.lockingPartner}a.onCheckChange(b)}}},1,0,0,0,["selection.treemodel"],0,[Ext.selection,"TreeModel"],0));(Ext.cmd.derive("Ext.grid.ColumnLayout",Ext.layout.container.HBox,{type:"gridcolumn",reserveOffset:false,firstHeaderCls:Ext.baseCSSPrefix+"column-header-first",lastHeaderCls:Ext.baseCSSPrefix+"column-header-last",initLayout:function(){var a=this;if(a.scrollbarWidth===undefined){a.self.prototype.scrollbarWidth=Ext.getScrollbarSize().width}a.grid=a.owner.up("tablepanel");a.controllingGrid=a.owner.up("[scrollerOwner]");Ext.layout.Layout.prototype.initLayout.call(this)},beginLayout:function(c){var j=this,b=j.owner,a=j.controllingGrid,l=j.grid.view,h=j.getVisibleItems(),g=h.length,d=j.firstHeaderCls,n=j.lastHeaderCls,k=[d,n],e,m;if(!l.scrollFlags.y){j.scrollbarWidth=0}else{delete j.scrollbarWidth}for(e=0;e<g;e++){m=h[e];m.margin=null;m.removeCls(k);if(e===0){m.addCls(d)}if(e===g-1){m.addCls(n)}}j.scrollbarAdjustment=j.scrollbarWidth;Ext.layout.container.Box.prototype.beginLayout.apply(this,arguments);if(!b.isColumn&&!a.collapsed&&l&&l.rendered&&(c.viewTable=l.body.dom)&&j.scrollbarWidth){c.viewContext=c.context.getCmp(l)}},injectViewContext:function(b,a){if(!this.controllingGrid.collapsed&&a.rendered&&(b.viewTable=a.body.dom)&&this.scrollbarWidth){b.viewContext=b.context.getCmp(a)}},roundFlex:function(a){return Math.floor(a)},calculate:function(j){var h=this,b=h.grid.view,d,a,c,g,e=false;h.viewScrollX=b.getScrollX();Ext.layout.container.Box.prototype.calculate.apply(this,arguments);if(j.state.parallelDone&&h.owner.isRootHeader){d=j.target.getVisibleGridColumns();a=d.length;for(c=0;c<a;c++){g=j.context.getItem(null,d[c].el);if(!g.lastBox||g.props.width!==g.lastBox.width){(e||(e=[])).push(c)}}j.setProp("columnsChanged",e)}if(j.viewContext&&!j.state.tableHeight){j.state.tableHeight=j.viewTable?j.viewTable.offsetHeight:b.all.sumHeights()}},completeLayout:function(d){var b=this,a=b.owner,c=d.state;Ext.layout.container.Box.prototype.completeLayout.apply(this,arguments);if(d.viewTable&&!c.flexesCalculated&&!d.flexedItems.length&&a.forceFit&&b.convertWidthsToFlexes(d)){b.cacheFlexes(d);d.invalidate({state:{flexesCalculated:true,tableHeight:d.viewTable.offsetHeight}})}else{delete d.props.columnChanged}},finishedLayout:function(b){var a=this.grid.getView();Ext.layout.container.Box.prototype.finishedLayout.apply(this,arguments);if(this.viewScrollX&&!this.owner.isColumn&&a.scrollFlags.x&&this.owner.tooNarrow&&this.owner.componentLayoutCounter){this.owner.setScrollX(this.viewScrollX)}},convertWidthsToFlexes:function(a){var g=this,d=0,h=g.sizeModels.calculated,c,e,b,k,j;c=a.childItems;e=c.length;for(b=0;b<e;b++){k=c[b];j=k.target;d+=k.props.width;if(!(j.fixed||j.resizable===false)){j.flex=a.childItems[b].flex=k.props.width;j.width=null;k.widthModel=h}}return d!==a.props.width},getContainerSize:function(g){var e=this,a,d=g.viewContext,c,h,b=d&&d.heightModel.shrinkWrap;if(e.owner.isColumn){a=e.getColumnContainerSize(g)}else{a=Ext.layout.container.Container.prototype.getContainerSize.apply(this,arguments);if(!a.gotAll){e.done=false;return a}if(e.scrollbarWidth&&!e.controllingGrid.reserveScrollbar&&d){h=d.target.componentLayout.ownerContext;if(!b&&d.target.scrollFlags.y&&(g.flexedItems&&g.flexedItems.length||e.owner.forceFit)&&h){c=d.getProp("height");if(isNaN(c)){e.done=false}else{if(g.state.tableHeight<=c&&d.target.scrollFlags.y){g.state.parallelDone=false;h.invalidate();return a}}}}}if(!b){a.width-=e.scrollbarWidth}return a},getColumnContainerSize:function(g){var j=g.paddingContext.getPaddingInfo(),b=0,e=0,h,d,c,a;if(!g.widthModel.shrinkWrap){++e;c=g.getProp("innerWidth");h=(typeof c=="number");if(h){++b;c-=j.width;if(c<0){c=0}}}if(!g.heightModel.shrinkWrap){++e;a=g.getProp("innerHeight");d=(typeof a=="number");if(d){++b;a-=j.height;if(a<0){a=0}}}return{width:c,height:a,needed:e,got:b,gotAll:b==e,gotWidth:h,gotHeight:d}},publishInnerCtSize:function(e){var d=this,a=d.owner,c=e.state.boxPlan.targetSize,b=e.peek("contentWidth");if((b!=null)&&!a.isColumn){c.width=b;if(a.ownerCt.view.scrollFlags.y){c.width+=d.scrollbarAdjustment}}return Ext.layout.container.Box.prototype.publishInnerCtSize.apply(this,arguments)}},0,0,0,0,["layout.gridcolumn"],0,[Ext.grid,"ColumnLayout"],0));(Ext.cmd.derive("Ext.plugin.Abstract",Ext.Base,{alternateClassName:"Ext.AbstractPlugin",disabled:false,isPlugin:true,stateEvents:undefined,constructor:function(a){this.pluginConfig=a;Ext.apply(this,a)},clonePlugin:function(a){return new this.self(Ext.apply({},a,this.pluginConfig))},setCmp:function(a){this.cmp=a},getCmp:function(){return this.cmp},init:Ext.emptyFn,getState:null,applyState:null,destroy:Ext.emptyFn,enable:function(){this.disabled=false},disable:function(){this.disabled=true},onClassExtended:function(b,d,a){var c=d.alias;if(c&&!d.ptype){if(Ext.isArray(c)){c=c[0]}b.prototype.ptype=c.split("plugin.")[1]}}},1,0,0,0,0,0,[Ext.plugin,"Abstract",Ext,"AbstractPlugin"],0));(Ext.cmd.derive("Ext.dd.DragTracker",Ext.Base,{active:false,trackOver:false,tolerance:5,autoStart:false,constructor:function(a){var b=this;Ext.apply(b,a);b.dragRegion=new Ext.util.Region(0,0,0,0);if(b.el){b.initEl(b.el)}b.mixins.observable.constructor.call(b);if(b.disabled){b.disable()}},initEl:function(b){var c=this,b=c.el=Ext.get(b),a=c.delegate;if(a){c.handle=a.isElement?a:b.selectNode(a,false)}c.delegate=c.handle?undefined:c.delegate;if(!c.handle){c.handle=b}c.handleListeners={scope:c,delegate:c.delegate,mousedown:c.onMouseDown,dragstart:c.onDragStart};if(!Ext.supports.TouchEvents&&(c.trackOver||c.overCls)){Ext.apply(c.handleListeners,{mouseover:c.onMouseOver,mouseout:c.onMouseOut})}c.mon(c.handle,c.handleListeners)},disable:function(){this.disabled=true},enable:function(){this.disabled=false},destroy:function(){var a=this;a.endDrag({});a.clearListeners();a.el=a.handle=null},onMouseOver:function(k,j){var g=this,h,d,c,a,b;if(!g.disabled){if(k.within(k.target,true,true)||g.delegate){h=g.handleCls;g.mouseIsOut=false;if(h){for(c=0,a=g.handleEls.length;c<a;c++){d=g.handleEls[c];b=d.delegateCls;if(!b){b=d.delegateCls=[h,"-",d.region,"-over"].join("")}d.addCls([b,g.overCls])}}g.fireEvent("mouseover",g,k,g.delegate?k.getTarget(g.delegate,j):g.handle)}}},onMouseOut:function(g){var d=this,c,b,a;if(d.mouseIsDown){d.mouseIsOut=true}else{if(d.handleCls){for(b=0,a=d.handleEls.length;b<a;b++){c=d.handleEls[b];c.removeCls([c.delegateCls,d.overCls])}}d.fireEvent("mouseout",d,g)}},onMouseDown:function(c,b){var a=this;if(a.disabled||c.dragTracked){return}a.dragTarget=a.delegate?b:a.handle.dom;a.startXY=a.lastXY=c.getXY();a.startRegion=Ext.fly(a.dragTarget).getRegion();if(a.fireEvent("mousedown",a,c)===false||a.fireEvent("beforedragstart",a,c)===false||a.onBeforeStart(c)===false){return}a.mouseIsDown=true;c.dragTracked=true;a.el.setCapture();c.stopPropagation();if(a.preventDefault!==false){c.preventDefault()}Ext.getDoc().on({scope:a,capture:true,mouseup:a.onMouseUp,mousemove:a.onMouseMove,selectstart:a.stopSelect});a.dragEnded=false;if(!a.tolerance){a.triggerStart()}else{if(a.autoStart){a.timer=Ext.defer(a.triggerStart,a.autoStart===true?1000:a.autoStart,a,[c])}}},onMouseMove:function(g,d){var b=this,c=g.getXY(),a=b.startXY;g.stopPropagation();if(b.preventDefault!==false){g.preventDefault()}if(b.dragEnded){return}b.lastXY=c;if(!b.active){if(Math.max(Math.abs(a[0]-c[0]),Math.abs(a[1]-c[1]))>b.tolerance){b.triggerStart(g)}else{return}}if(b.fireEvent("mousemove",b,g)===false){b.onMouseUp(g)}else{b.onDrag(g);b.fireEvent("drag",b,g)}},onMouseUp:function(b){var a=this;a.mouseIsDown=false;if(a.mouseIsOut){a.mouseIsOut=false;a.onMouseOut(b)}if(a.preventDefault!==false){b.preventDefault()}if(Ext.isIE&&document.releaseCapture){document.releaseCapture()}a.fireEvent("mouseup",a,b);a.endDrag(b)},endDrag:function(c){var b=this,a=b.active;Ext.getDoc().un({mousemove:b.onMouseMove,mouseup:b.onMouseUp,selectstart:b.stopSelect,capture:true,scope:b});b.clearStart();b.active=false;if(a){b.dragEnded=true;b.onEnd(c);b.fireEvent("dragend",b,c)}b._constrainRegion=null},triggerStart:function(b){var a=this;a.clearStart();a.active=true;a.onStart(b);a.fireEvent("dragstart",a,b)},clearStart:function(){var a=this.timer;if(a){clearTimeout(a);this.timer=null}},stopSelect:function(a){a.stopEvent();return false},onBeforeStart:function(a){},onStart:function(a){},onDrag:function(a){},onEnd:function(a){},getDragTarget:function(){return this.dragTarget},getDragCt:function(){return this.el},getConstrainRegion:function(){var a=this;if(a.constrainTo){if(a.constrainTo instanceof Ext.util.Region){return a.constrainTo}if(!a._constrainRegion){a._constrainRegion=Ext.fly(a.constrainTo).getViewRegion()}}else{if(!a._constrainRegion){a._constrainRegion=a.getDragCt().getViewRegion()}}return a._constrainRegion},getXY:function(a){return a?this.constrainModes[a](this,this.lastXY):this.lastXY},getOffset:function(c){var b=this.getXY(c),a=this.startXY;return[b[0]-a[0],b[1]-a[1]]},onDragStart:function(a){a.stopPropagation()},constrainModes:{point:function(b,d){var c=b.dragRegion,a=b.getConstrainRegion();if(!a){return d}c.x=c.left=c[0]=c.right=d[0];c.y=c.top=c[1]=c.bottom=d[1];c.constrainTo(a);return[c.left,c.top]},dragTarget:function(c,g){var b=c.startXY,e=c.startRegion.copy(),a=c.getConstrainRegion(),d;if(!a){return g}e.translateBy(g[0]-b[0],g[1]-b[1]);if(e.right>a.right){g[0]+=d=(a.right-e.right);e.left+=d}if(e.left<a.left){g[0]+=(a.left-e.left)}if(e.bottom>a.bottom){g[1]+=d=(a.bottom-e.bottom);e.top+=d}if(e.top<a.top){g[1]+=(a.top-e.top)}return g}}},1,0,0,0,0,[["observable",Ext.util.Observable]],[Ext.dd,"DragTracker"],0));(Ext.cmd.derive("Ext.grid.plugin.HeaderResizer",Ext.plugin.Abstract,{disabled:false,config:{dynamic:false},colHeaderCls:Ext.baseCSSPrefix+"column-header",minColWidth:40,maxColWidth:1000,eResizeCursor:"col-resize",init:function(b){var a=this;a.headerCt=b;b.on("render",a.afterHeaderRender,a,{single:a});if(!a.minColWidth){a.self.prototype.minColWidth=Ext.grid.column.Column.prototype.minWidth}},destroy:function(){var a=this.tracker;if(a){delete a.onBeforeStart;delete a.onStart;delete a.onDrag;delete a.onEnd;a.destroy();this.tracker=null}},afterHeaderRender:function(){var b=this,c=b.headerCt,a=c.el;c.mon(a,"mousemove",b.onHeaderCtMouseMove,b);b.markerOwner=b.ownerGrid=b.headerCt.up("tablepanel");if(b.markerOwner.ownerLockable){b.markerOwner=b.markerOwner.ownerLockable}b.tracker=new Ext.dd.DragTracker({disabled:b.disabled,onBeforeStart:b.onBeforeStart.bind(b),onStart:b.onStart.bind(b),onDrag:b.onDrag.bind(b),onEnd:b.onEnd.bind(b),tolerance:3,autoStart:300,el:a})},onHeaderCtMouseMove:function(b){var a=this;if(a.headerCt.dragging||a.disabled){if(a.activeHd){a.activeHd.el.dom.style.cursor="";delete a.activeHd}}else{a.findActiveHeader(b)}},findActiveHeader:function(c){var b=this,h=c.getTarget("."+b.colHeaderCls,3,true),a,g,d;if(h){a=Ext.getCmp(h.id);if(a.isOnRightEdge(c)){if(b.headerCt.visibleColumnManager.getColumns().length===1&&b.headerCt.forceFit){return}g=a}else{if(a.isOnLeftEdge(c)){d=b.headerCt.visibleColumnManager.getColumns();g=d[Ext.Array.indexOf(d,a)-1];if(!g&&b.ownerGrid.ownerLockable&&!b.ownerGrid.isLocked){d=b.ownerGrid.ownerLockable.lockedGrid.headerCt.visibleColumnManager.getColumns();g=d[d.length-1]}}}if(g){if(g.isGroupHeader){d=g.getGridColumns();g=d[d.length-1]}if(g&&!(g.fixed||(g.resizable===false))){b.activeHd=g;a.el.dom.style.cursor=b.eResizeCursor;if(a.triggerEl){a.triggerEl.dom.style.cursor=b.eResizeCursor}}}else{a.el.dom.style.cursor="";if(a.triggerEl){a.triggerEl.dom.style.cursor=""}b.activeHd=null}}return b.activeHd},onBeforeStart:function(b){var a=this;a.dragHd=Ext.supports.Touch?a.findActiveHeader(b):a.activeHd;if(!!a.dragHd&&!a.headerCt.dragging){a.xDelta=a.dragHd.getX()+a.dragHd.getWidth()-a.tracker.getXY()[0];a.tracker.constrainTo=a.getConstrainRegion();return true}else{a.headerCt.dragging=false;return false}},getConstrainRegion:function(){var d=this,a=d.dragHd.el,e=0,c,g,b=d.headerCt.getWidth()-d.headerCt.visibleColumnManager.getColumns().length*d.minColWidth;if(d.headerCt.forceFit){c=d.dragHd.nextNode("gridcolumn:not([hidden]):not([isGroupHeader])");if(c&&d.headerInSameGrid(c)){e=c.getWidth()-d.minColWidth}}else{if((g=d.dragHd.up("tablepanel")).isLocked){e=d.dragHd.up("[scrollerOwner]").getTargetEl().getWidth()-g.getWidth()-(g.ownerLockable.normalGrid.visibleColumnManager.getColumns().length*d.minColWidth+Ext.getScrollbarSize().width)}else{e=b-a.getWidth()}}return d.adjustConstrainRegion(a.getRegion(),0,e-d.xDelta,0,d.minColWidth-d.xDelta)},onStart:function(h){var j=this,g=j.dragHd,b=g.el.getWidth(),d=g.getOwnerHeaderCt(),m,l,c,a,k,n;j.headerCt.dragging=true;j.origWidth=b;if(!j.dynamic){c=j.markerOwner;if(c.frame&&c.resizable){j.gridOverflowSetting=c.el.dom.style.overflow;c.el.dom.style.overflow="hidden"}m=j.getLeftMarkerX(c);a=c.getLhsMarker();k=c.getRhsMarker();n=j.ownerGrid.body.getHeight()+d.getHeight();l=d.getOffsetsTo(c)[1]-c.el.getBorderWidth("t");a.setLocalY(l);k.setLocalY(l);a.setHeight(n);k.setHeight(n);j.setMarkerX(a,m);j.setMarkerX(k,m+b)}},onDrag:function(b){var a=this;if(a.dynamic){a.doResize()}else{a.setMarkerX(a.getMovingMarker(a.markerOwner),a.calculateDragX(a.markerOwner))}},getMovingMarker:function(a){return a.getRhsMarker()},onEnd:function(b){var a=this,c;a.headerCt.dragging=false;if(a.dragHd){if(!a.dynamic){c=a.headerCt.up("tablepanel");if(c.ownerLockable){c=c.ownerLockable}if("gridOverflowSetting" in a){c.el.dom.style.overflow=a.gridOverflowSetting}a.setMarkerX(c.getLhsMarker(),-9999);a.setMarkerX(c.getRhsMarker(),-9999)}a.doResize()}a.onHeaderCtMouseMove(b)},doResize:function(){var c=this,b=c.dragHd,a,d=c.tracker.getOffset("point");if(b&&d[0]){if(b.flex){delete b.flex}Ext.suspendLayouts();c.adjustColumnWidth(d[0]);if(c.headerCt.forceFit){a=b.nextNode("gridcolumn:not([hidden]):not([isGroupHeader])");if(a&&!c.headerInSameGrid(a)){a=null}if(a){delete a.flex;a.setWidth(a.getWidth()-d[0])}}Ext.resumeLayouts(true)}},headerInSameGrid:function(b){var a=this.dragHd.up("tablepanel");return !!b.up(a)},disable:function(){var a=this.tracker;this.disabled=true;if(a){a.disable()}},enable:function(){var a=this.tracker;this.disabled=false;if(a){a.enable()}},calculateDragX:function(a){return this.tracker.getXY("point")[0]+this.xDelta-a.getX()-a.el.getBorderWidth("l")},getLeftMarkerX:function(a){return this.dragHd.getX()-a.getX()-a.el.getBorderWidth("l")-1},setMarkerX:function(b,a){b.setLocalX(a)},adjustConstrainRegion:function(g,d,e,a,c){return g.adjust(d,e,a,c)},adjustColumnWidth:function(a){this.dragHd.setWidth(this.origWidth+a)}},0,0,0,0,["plugin.gridheaderresizer"],0,[Ext.grid.plugin,"HeaderResizer"],0));(Ext.cmd.derive("Ext.dd.DragZone",Ext.dd.DragSource,{constructor:function(c,b){var d=this,a=d.containerScroll;Ext.dd.DragSource.prototype.constructor.apply(this,[c,b]);if(a){c=d.scrollEl||c;c=Ext.get(c);if(Ext.isObject(a)){c.ddScrollConfig=a}Ext.dd.ScrollManager.register(c)}},getDragData:function(a){return Ext.dd.Registry.getHandleFromEvent(a)},onInitDrag:function(a,b){this.proxy.update(this.dragData.ddel.cloneNode(true));this.onStartDrag(a,b);return true},getRepairXY:function(a){return Ext.fly(this.dragData.ddel).getXY()},destroy:function(){Ext.dd.DragSource.prototype.destroy.call(this);if(this.containerScroll){Ext.dd.ScrollManager.unregister(this.scrollEl||this.el)}}},1,0,0,0,0,0,[Ext.dd,"DragZone"],0));(Ext.cmd.derive("Ext.grid.header.DragZone",Ext.dd.DragZone,{colHeaderSelector:"."+Ext.baseCSSPrefix+"column-header",colInnerSelector:"."+Ext.baseCSSPrefix+"column-header-inner",maxProxyWidth:120,constructor:function(b){var a=this;a.headerCt=b;a.ddGroup=a.getDDGroup();a.autoGroup=true;Ext.dd.DragZone.prototype.constructor.apply(this,[b.el]);a.proxy.el.addCls(Ext.baseCSSPrefix+"grid-col-dd")},getDDGroup:function(){return"header-dd-zone-"+this.headerCt.up("[scrollerOwner]").id},getDragData:function(b){if(b.getTarget(this.colInnerSelector)){var d=b.getTarget(this.colHeaderSelector),a,c;if(d){a=Ext.getCmp(d.id);if(!this.headerCt.dragging&&a.draggable&&!(a.isOnLeftEdge(b)||a.isOnRightEdge(b))){c=document.createElement("div");c.role="presentation";c.innerHTML=a.text;return{ddel:c,header:a}}}}return false},onBeforeDrag:function(){return !(this.headerCt.dragging||this.disabled)},onInitDrag:function(){this.headerCt.dragging=true;this.headerCt.hideMenu();Ext.dd.DragZone.prototype.onInitDrag.apply(this,arguments)},onDragDrop:function(){this.headerCt.dragging=false;Ext.dd.DragSource.prototype.onDragDrop.apply(this,arguments)},afterRepair:function(){Ext.dd.DragSource.prototype.afterRepair.call(this);this.headerCt.dragging=false},getRepairXY:function(){return this.dragData.header.el.getXY()},disable:function(){this.disabled=true},enable:function(){this.disabled=false}},1,0,0,0,0,0,[Ext.grid.header,"DragZone"],0));(Ext.cmd.derive("Ext.dd.DDTarget",Ext.dd.DragDrop,{constructor:function(c,a,b){if(c){this.initTarget(c,a,b)}},getDragEl:Ext.emptyFn,isValidHandleChild:Ext.emptyFn,startDrag:Ext.emptyFn,endDrag:Ext.emptyFn,onDrag:Ext.emptyFn,onDragDrop:Ext.emptyFn,onDragEnter:Ext.emptyFn,onDragOut:Ext.emptyFn,onDragOver:Ext.emptyFn,onInvalidDrop:Ext.emptyFn,onMouseDown:Ext.emptyFn,onMouseUp:Ext.emptyFn,setXConstraint:Ext.emptyFn,setYConstraint:Ext.emptyFn,resetConstraints:Ext.emptyFn,clearConstraints:Ext.emptyFn,clearTicks:Ext.emptyFn,setInitPosition:Ext.emptyFn,setDragElId:Ext.emptyFn,setHandleElId:Ext.emptyFn,setOuterHandleElId:Ext.emptyFn,addInvalidHandleClass:Ext.emptyFn,addInvalidHandleId:Ext.emptyFn,addInvalidHandleType:Ext.emptyFn,removeInvalidHandleClass:Ext.emptyFn,removeInvalidHandleId:Ext.emptyFn,removeInvalidHandleType:Ext.emptyFn,toString:function(){return("DDTarget "+this.id)}},3,0,0,0,0,0,[Ext.dd,"DDTarget"],0));(Ext.cmd.derive("Ext.dd.ScrollManager",Ext.Base,{singleton:true,dirTrans:{up:-1,left:-1,down:1,right:1},constructor:function(){var a=Ext.dd.DragDropManager;a.fireEvents=Ext.Function.createSequence(a.fireEvents,this.onFire,this);a.stopDrag=Ext.Function.createSequence(a.stopDrag,this.onStop,this);this.doScroll=this.doScroll.bind(this);this.ddmInstance=a;this.els={};this.dragEl=null;this.proc={}},onStop:function(a){var b=Ext.dd.ScrollManager;b.dragEl=null;b.clearProc()},triggerRefresh:function(){if(this.ddmInstance.dragCurrent){this.ddmInstance.refreshCache(this.ddmInstance.dragCurrent.groups)}},doScroll:function(){var g=this;if(g.ddmInstance.dragCurrent){var a=g.proc,e=a.el,c=a.component,h=a.el.ddScrollConfig,j=h&&h.increment?h.increment:g.increment,b=h&&"animate" in h?h.animate:g.animate,d=function(){g.triggerRefresh()};if(b){if(b===true){b={callback:d}}else{b.callback=b.callback?Ext.Function.createSequence(b.callback,d):d}}if(c){j=j*g.dirTrans[a.dir];if(a.dir==="up"||a.dir==="down"){c.scrollBy(0,j,b)}else{c.scrollBy(j,0,b)}}else{e.scroll(a.dir,j,b)}if(!b){d()}}},clearProc:function(){var a=this.proc;if(a.id){clearInterval(a.id)}if(a.scroller){a.scroller.setSnapToBoundary(true);a.scroller.snapToBoundary()}a.id=0;a.el=a.component=a.scroller=null;a.dir=""},startProc:function(d,b){var e=this,h,g,c,a=e.proc;e.clearProc();a.el=d;a.dir=b;if(Ext.supports.touchScroll===2&&(c=d.component)&&d===c.getOverflowEl()){a.component=c;a.scroller=c.scrollManager.scroller;a.scroller.setSnapToBoundary(false)}h=d.ddScrollConfig?d.ddScrollConfig.ddGroup:undefined;g=(d.ddScrollConfig&&d.ddScrollConfig.frequency)?d.ddScrollConfig.frequency:e.frequency;if(h===undefined||e.ddmInstance.dragCurrent.ddGroup===h){a.id=setInterval(e.doScroll,g)}},onFire:function(h,l){var k=this,m,j,d,a,b,g,c;if(l||!k.ddmInstance.dragCurrent){return}if(!k.dragEl||k.dragEl!==k.ddmInstance.dragCurrent){k.dragEl=k.ddmInstance.dragCurrent;k.refreshCache()}m=h.getPoint();j=k.proc;d=k.els;for(a in d){b=d[a];g=b._region;c=b.ddScrollConfig||k;if(g&&g.contains(m)&&b.isScrollable()){if(g.bottom-m.y<=c.vthresh){if(j.el!==b){k.startProc(b,"down")}return}else{if(g.right-m.x<=c.hthresh){if(j.el!==b){k.startProc(b,"right")}return}else{if(m.y-g.top<=c.vthresh){if(j.el!==b){k.startProc(b,"up")}return}else{if(m.x-g.left<=c.hthresh){if(j.el!==b){k.startProc(b,"left")}return}}}}}}k.clearProc()},register:function(c){if(Ext.isArray(c)){for(var b=0,a=c.length;b<a;b++){this.register(c[b])}}else{c=Ext.get(c);this.els[c.id]=c}},unregister:function(c){if(Ext.isArray(c)){for(var b=0,a=c.length;b<a;b++){this.unregister(c[b])}}else{c=Ext.get(c);delete this.els[c.id]}},vthresh:25*(window.devicePixelRatio||1),hthresh:25*(window.devicePixelRatio||1),increment:100,frequency:500,animate:true,animDuration:0.4,ddGroup:undefined,refreshCache:function(){var a=this.els,b;for(b in a){if(typeof a[b]=="object"){a[b]._region=a[b].getRegion()}}}},1,0,0,0,0,0,[Ext.dd,"ScrollManager"],0));(Ext.cmd.derive("Ext.dd.DropTarget",Ext.dd.DDTarget,{constructor:function(b,a){this.el=Ext.get(b);Ext.apply(this,a);if(this.containerScroll){Ext.dd.ScrollManager.register(this.el)}Ext.dd.DDTarget.prototype.constructor.apply(this,[this.el.dom,this.ddGroup||this.group,{isTarget:true}])},dropAllowed:Ext.baseCSSPrefix+"dd-drop-ok",dropNotAllowed:Ext.baseCSSPrefix+"dd-drop-nodrop",isTarget:true,isNotifyTarget:true,notifyEnter:function(a,c,b){if(this.overClass){this.el.addCls(this.overClass)}return this.dropAllowed},notifyOver:function(a,c,b){return this.dropAllowed},notifyOut:function(a,c,b){if(this.overClass){this.el.removeCls(this.overClass)}},notifyDrop:function(a,c,b){if(this.overClass){this.el.removeCls(this.overClass)}return false},destroy:function(){Ext.dd.DragDrop.prototype.destroy.call(this);if(this.containerScroll){Ext.dd.ScrollManager.unregister(this.el)}}},1,0,0,0,0,0,[Ext.dd,"DropTarget"],0));(Ext.cmd.derive("Ext.dd.Registry",Ext.Base,{singleton:true,constructor:function(){this.elements={};this.handles={};this.autoIdSeed=0},getId:function(b,a){if(typeof b=="string"){return b}var c=b.id;if(!c&&a!==false){c="extdd-"+(++this.autoIdSeed);b.id=c}return c},register:function(d,e){e=e||{};if(typeof d=="string"){d=document.getElementById(d)}e.ddel=d;this.elements[this.getId(d)]=e;if(e.isHandle!==false){this.handles[e.ddel.id]=e}if(e.handles){var c=e.handles,b,a;for(b=0,a=c.length;b<a;b++){this.handles[this.getId(c[b])]=e}}},unregister:function(d){var g=this.getId(d,false),e=this.elements[g],c,b,a;if(e){delete this.elements[g];if(e.handles){c=e.handles;for(b=0,a=c.length;b<a;b++){delete this.handles[this.getId(c[b],false)]}}}},getHandle:function(a){if(typeof a!="string"){a=a.id}return this.handles[a]},getHandleFromEvent:function(b){var a=b.getTarget();return a?this.handles[a.id]:null},getTarget:function(a){if(typeof a!="string"){a=a.id}return this.elements[a]},getTargetFromEvent:function(b){var a=b.getTarget();return a?this.elements[a.id]||this.handles[a.id]:null}},1,0,0,0,0,0,[Ext.dd,"Registry"],0));(Ext.cmd.derive("Ext.dd.DropZone",Ext.dd.DropTarget,{getTargetFromEvent:function(a){return Ext.dd.Registry.getTargetFromEvent(a)},onNodeEnter:function(d,a,c,b){},onNodeOver:function(d,a,c,b){return this.dropAllowed},onNodeOut:function(d,a,c,b){},onNodeDrop:function(d,a,c,b){return false},onContainerOver:function(a,c,b){return this.dropNotAllowed},onContainerDrop:function(a,c,b){return false},notifyEnter:function(a,c,b){return this.dropNotAllowed},notifyOver:function(a,c,b){var d=this.getTargetFromEvent(c);if(!d){if(this.lastOverNode){this.onNodeOut(this.lastOverNode,a,c,b);this.lastOverNode=null}return this.onContainerOver(a,c,b)}if(this.lastOverNode!=d){if(this.lastOverNode){this.onNodeOut(this.lastOverNode,a,c,b)}this.onNodeEnter(d,a,c,b);this.lastOverNode=d}return this.onNodeOver(d,a,c,b)},notifyOut:function(a,c,b){if(this.lastOverNode){this.onNodeOut(this.lastOverNode,a,c,b);this.lastOverNode=null}},notifyDrop:function(b,g,d){var c=this,h=c.getTargetFromEvent(g),a=h?c.onNodeDrop(h,b,g,d):c.onContainerDrop(b,g,d);if(c.lastOverNode){c.onNodeOut(c.lastOverNode,b,g,d);c.lastOverNode=null}return a},triggerCacheRefresh:function(){Ext.dd.DDM.refreshCache(this.groups)}},0,0,0,0,0,0,[Ext.dd,"DropZone"],0));(Ext.cmd.derive("Ext.grid.header.DropZone",Ext.dd.DropZone,{colHeaderCls:Ext.baseCSSPrefix+"column-header",proxyOffsets:[-4,-9],constructor:function(b){var a=this;a.headerCt=b;a.ddGroup=a.getDDGroup();a.autoGroup=true;Ext.dd.DropTarget.prototype.constructor.apply(this,[b.el])},destroy:function(){Ext.dd.DropTarget.prototype.destroy.call(this);Ext.destroy(this.topIndicator,this.bottomIndicator)},getDDGroup:function(){return"header-dd-zone-"+this.headerCt.up("[scrollerOwner]").id},getTargetFromEvent:function(a){return a.getTarget("."+this.colHeaderCls)},getTopIndicator:function(){if(!this.topIndicator){this.topIndicator=Ext.getBody().createChild({role:"presentation",cls:Ext.baseCSSPrefix+"col-move-top",html:"&#160;"});this.indicatorXOffset=Math.floor((this.topIndicator.dom.offsetWidth+1)/2)}return this.topIndicator},getBottomIndicator:function(){if(!this.bottomIndicator){this.bottomIndicator=Ext.getBody().createChild({role:"presentation",cls:Ext.baseCSSPrefix+"col-move-bottom",html:"&#160;"})}return this.bottomIndicator},getLocation:function(d,b){var a=d.getXY()[0],c=Ext.fly(b).getRegion(),g;if((c.right-a)<=(c.right-c.left)/2){g="after"}else{g="before"}return{pos:g,header:Ext.getCmp(b.id),node:b}},positionIndicator:function(z,p,v){var y=this,q=z.header,g=y.getLocation(v,p),k=g.header,d=g.pos,c,u,m,s,t,a,b,l,n,x,w,o,j,r,h;if(k===y.lastTargetHeader&&d===y.lastDropPos){return}c=q.nextSibling("gridcolumn:not([hidden])");u=q.previousSibling("gridcolumn:not([hidden])");y.lastTargetHeader=k;y.lastDropPos=d;if(!k.draggable&&d==="before"&&k.getIndex()===0){return false}z.dropLocation=g;if((q!==k)&&((d==="before"&&c!==k)||(d==="after"&&u!==k))&&!k.isDescendantOf(q)){o=Ext.dd.DragDropManager.getRelated(y);j=o.length;r=0;for(;r<j;r++){h=o[r];if(h!==y&&h.invalidateDrop){h.invalidateDrop()}}y.valid=true;m=y.getTopIndicator();s=y.getBottomIndicator();if(d==="before"){t="bc-tl";a="tc-bl"}else{t="bc-tr";a="tc-br"}b=m.getAlignToXY(k.el,t);l=s.getAlignToXY(k.el,a);n=y.headerCt.el;x=n.getX()-y.indicatorXOffset;w=n.getX()+n.getWidth();b[0]=Ext.Number.constrain(b[0],x,w);l[0]=Ext.Number.constrain(l[0],x,w);m.setXY(b);s.setXY(l);m.show();s.show()}else{y.invalidateDrop()}},invalidateDrop:function(){this.valid=false;this.hideIndicators()},onNodeOver:function(c,h,g,d){var j=this,l=d.header,a,m,b,k;if(d.header.el.dom===c){a=false}else{d.isLock=d.isUnlock=d.crossPanel=false;m=j.getLocation(g,c).header;a=(l.ownerCt===m.ownerCt);if(!a&&(!l.ownerCt.sealed&&!m.ownerCt.sealed)){a=true;b=l.up("tablepanel");k=m.up("tablepanel");if(b!==k){d.crossPanel=true;d.isLock=k.isLocked&&!b.isLocked;d.isUnlock=!k.isLocked&&b.isLocked;if((d.isUnlock&&l.lockable===false)||(d.isLock&&!l.isLockable())){a=false}}}}if(a){j.positionIndicator(d,c,g)}else{j.valid=false}return j.valid?j.dropAllowed:j.dropNotAllowed},hideIndicators:function(){var a=this;a.getTopIndicator().hide();a.getBottomIndicator().hide();a.lastTargetHeader=a.lastDropPos=null},onNodeOut:function(){this.hideIndicators()},onNodeDrop:function(p,c,t,w){if(this.valid){var r=w.header,j=w.dropLocation,m=j.header,v=r.ownerCt,a=m.ownerCt,l=v===a,n=v.items.indexOf(w.header),q=a.items.indexOf(m),k=this.headerCt,d=k.visibleColumnManager,s=d.getHeaderIndex(r),b=m.isGroupHeader?a.items.indexOf(m):d.getHeaderIndex(m),o=r.isGroupHeader?r.query(":not([hidden]):not([isGroupHeader])").length:1,u=m.isGroupHeader?(j.pos==="after"):d.getHeaderIndex(m)>d.getHeaderIndex(r),h,g;if(j.pos==="after"){q++;b+=m.isGroupHeader?m.query(":not([hidden]):not([isGroupHeader])").length:1}if(w.isLock){h=v.up("[scrollerOwner]");h.lock(r,q,a)}else{if(w.isUnlock){h=v.up("[scrollerOwner]");h.unlock(r,q,a)}else{this.invalidateDrop();g=r.getWidth();if(l){if(q>n){q-=1}if(q===n){k.onHeaderMoved(r,o,s,b);return}}Ext.suspendLayouts();if(l){a.move(n,q)}else{if(u&&(b===q)){q-=1}v.isDDMoveInGrid=a.isDDMoveInGrid=!w.crossPanel;v.remove(r,false);a.insert(q,r);v.isDDMoveInGrid=a.isDDMoveInGrid=false}if(a.isGroupHeader){if(!l){r.savedFlex=r.flex;delete r.flex;r.width=g}}else{if(r.savedFlex){r.flex=r.savedFlex;delete r.width}}Ext.resumeLayouts(true);if(!l){k.onHeaderMoved(r,o,s,b)}}}}}},1,0,0,0,0,0,[Ext.grid.header,"DropZone"],0));(Ext.cmd.derive("Ext.grid.plugin.HeaderReorderer",Ext.plugin.Abstract,{init:function(a){this.headerCt=a;a.on({render:this.onHeaderCtRender,single:true,scope:this})},destroy:function(){Ext.destroy(this.dragZone,this.dropZone)},onHeaderCtRender:function(){var a=this;a.dragZone=new Ext.grid.header.DragZone(a.headerCt);a.dropZone=new Ext.grid.header.DropZone(a.headerCt);if(a.disabled){a.dragZone.disable()}},enable:function(){this.disabled=false;if(this.dragZone){this.dragZone.enable()}},disable:function(){this.disabled=true;if(this.dragZone){this.dragZone.disable()}}},0,0,0,0,["plugin.gridheaderreorderer"],0,[Ext.grid.plugin,"HeaderReorderer"],0));(Ext.cmd.derive("Ext.grid.header.Container",Ext.container.Container,{border:true,baseCls:Ext.baseCSSPrefix+"grid-header-ct",dock:"top",weight:100,defaultType:"gridcolumn",detachOnRemove:false,defaultWidth:100,sortAscText:"Sort Ascending",sortDescText:"Sort Descending",sortClearText:"Clear Sort",columnsText:"Columns",headerOpenCls:Ext.baseCSSPrefix+"column-header-open",menuSortAscCls:Ext.baseCSSPrefix+"hmenu-sort-asc",menuSortDescCls:Ext.baseCSSPrefix+"hmenu-sort-desc",menuColsIcon:Ext.baseCSSPrefix+"cols-icon",ddLock:false,dragging:false,sortable:true,enableColumnHide:true,initComponent:function(){var a=this;a.headerCounter=0;a.plugins=a.plugins||[];a.defaults=a.defaults||{};if(!a.isColumn){if(a.enableColumnResize){a.resizer=new Ext.grid.plugin.HeaderResizer();a.plugins.push(a.resizer)}if(a.enableColumnMove){a.reorderer=new Ext.grid.plugin.HeaderReorderer();a.plugins.push(a.reorderer)}}if(a.isColumn&&!a.isGroupHeader){if(!a.items||a.items.length===0){a.isContainer=false;a.layout={type:"container",calculate:Ext.emptyFn}}}else{a.layout=Ext.apply({type:"gridcolumn",align:"stretch"},a.initialConfig.layout);a.defaults.columnLines=a.columnLines;if(!a.isGroupHeader){a.isRootHeader=true;a.columnManager=new Ext.grid.ColumnManager(false,a);a.visibleColumnManager=new Ext.grid.ColumnManager(true,a);if(a.grid){a.grid.columnManager=a.columnManager;a.grid.visibleColumnManager=a.visibleColumnManager}}else{a.visibleColumnManager=new Ext.grid.ColumnManager(true,a);a.columnManager=new Ext.grid.ColumnManager(false,a)}}a.menuTask=new Ext.util.DelayedTask(a.updateMenuDisabledState,a);Ext.container.Container.prototype.initComponent.call(this)},initEvents:function(){var c=this,a=c.onHeaderCtEvent,b={click:a,dblclick:a,contextmenu:a,mouseover:c.onHeaderCtMouseOver,mouseout:c.onHeaderCtMouseOut,scope:c};if(Ext.supports.Touch){b.longpress=c.onHeaderCtLongPress}Ext.Component.prototype.initEvents.call(this);if(!c.isColumn&&!c.isGroupHeader){c.mon(c.el,b)}},onHeaderCtEvent:function(d,b){var c=this,j=c.getHeaderElByEvent(d),h,g,a;if(c.longPressFired){c.longPressFired=false;return}if(j&&!c.ddLock){h=Ext.getCmp(j.id);if(h){g=h[h.clickTargetName];if(d.within(g)){if(d.type==="click"||d.type==="tap"){a=h.onTitleElClick(d,g);if(a){c.onHeaderTriggerClick(a,d,Ext.supports.Touch?a.el:a.triggerEl)}else{c.onHeaderClick(h,d,b)}}else{if(d.type==="contextmenu"){c.onHeaderContextMenu(h,d,b)}else{if(d.type==="dblclick"&&h.resizable){h.onTitleElDblClick(d,g.dom)}}}}}}},onHeaderCtMouseOver:function(b,a){var g,d,c;if(!b.within(this.el,true)){g=b.getTarget("."+Ext.grid.column.Column.prototype.baseCls);d=g&&Ext.getCmp(g.id);if(d){c=d[d.clickTargetName];if(b.within(c)){d.onTitleMouseOver(b,c.dom)}}}},onHeaderCtMouseOut:function(g,c){var d="."+Ext.grid.column.Column.prototype.baseCls,b=g.getTarget(d),a=g.getRelatedTarget(d),j,h;if(b!==a){if(b){j=Ext.getCmp(b.id);if(j){h=j[j.clickTargetName];j.onTitleMouseOut(g,h.dom)}}if(a){j=Ext.getCmp(a.id);if(j){h=j[j.clickTargetName];j.onTitleMouseOver(g,h.dom)}}}},onHeaderCtLongPress:function(b){var a=this,d=a.getHeaderElByEvent(b),c=Ext.getCmp(d.id);if(!c.menuDisabled){a.longPressFired=true;a.showMenuBy(d,c)}},getHeaderElByEvent:function(a){return a.getTarget("."+Ext.grid.column.Column.prototype.baseCls)},isLayoutRoot:function(){if(this.hiddenHeaders){return false}return Ext.Component.prototype.isLayoutRoot.call(this)},getOwnerHeaderCt:function(){var a=this;return a.isRootHeader?a:a.up("[isRootHeader]")},onDestroy:function(){var a=this;if(a.menu){a.menu.un("hide",a.onMenuHide,a)}a.menuTask.cancel();Ext.container.Container.prototype.onDestroy.call(this);Ext.destroy(a.visibleColumnManager,a.columnManager,a.menu);a.columnManager=a.visibleColumnManager=null},applyColumnsState:function(e){if(!e||!e.length){return}var m=this,k=m.items.items,j=k.length,g=0,b=e.length,l,d,a,h,n=false;for(l=0;l<b;l++){a=e[l];for(h=j;h--;){d=k[h];if(d.getStateId&&d.getStateId()==a.id){if(g!==h){this.items.insert(g,this.items.getAt(h));n=true}if(d.applyColumnState){d.applyColumnState(a)}++g;break}}}if(n){m.purgeCache()}},getColumnsState:function(){var b=this,a=[],c;b.items.each(function(d){c=d.getColumnState&&d.getColumnState();if(c){a.push(c)}});return a},onAdd:function(b){var a=this;if(!b.headerId){b.headerId=b.initialConfig.id||Ext.id(null,"header-")}if(b.sortable===undefined){b.sortable=a.sortable}if(!b.getStateId()){b.stateId=b.initialConfig.id||("h"+(++a.headerCounter))}Ext.container.Container.prototype.onAdd.apply(this,arguments);a.onHeadersChanged(b,a.isDDMoveInGrid)},move:function(b,d){var c=this,a=c.items.items[b];a.visibleFromIdx=c.getOwnerHeaderCt().visibleColumnManager.indexOf(a);Ext.container.Container.prototype.move.apply(this,arguments)},onMove:function(a,d,h){var g=this,e=g.getOwnerHeaderCt(),b=e.visibleColumnManager,j=1,c;g.onHeadersChanged(a,true);c=b.indexOf(a);if(c>=a.visibleFromIdx){c++}Ext.container.Container.prototype.onMove.apply(this,arguments);if(a.isGroupHeader){j=a.visibleColumnManager.getColumns().length}e.onHeaderMoved(a,j,a.visibleFromIdx,c)},onRemove:function(d){var b=this,a=b.ownerCt;Ext.container.Container.prototype.onRemove.apply(this,arguments);if(!b.destroying){if(!b.isDDMoveInGrid){b.onHeadersChanged(d,false)}if(b.isGroupHeader&&!b.items.getCount()&&a){if(d.rendered){b.detachComponent(d)}Ext.suspendLayouts();a.remove(b);Ext.resumeLayouts(true)}}},onHeadersChanged:function(e,a){var b,d=this.getOwnerHeaderCt();this.purgeHeaderCtCache(this);if(d){d.onColumnsChanged();if(!e.isGroupHeader){b=d.ownerCt;if(b&&!a){b.onHeadersChanged(d,e)}}}},onHeaderMoved:function(g,a,c,e){var d=this,b=d.ownerCt;if(d.rendered){if(b&&b.onHeaderMove){b.onHeaderMove(d,g,a,c,e)}d.fireEvent("columnmove",d,g,c,e)}},onColumnsChanged:function(){var c=this,d=c.menu,a,b;if(c.rendered){c.fireEvent("columnschanged",c);if(d&&(a=d.child("#columnItemSeparator"))){b=d.child("#columnItem");a.destroy();b.destroy()}}},lookupComponent:function(b){var a=Ext.container.Container.prototype.lookupComponent.apply(this,arguments);if(!a.isGroupHeader&&a.width===undefined&&!a.flex){a.width=this.defaultWidth}return a},setSortState:function(){var b=this.up("[store]").store,d=this.visibleColumnManager.getColumns(),a=d.length,c,g,e;for(c=0;c<a;c++){g=d[c];e=b.getSorters().get(g.getSortParam());g.setSortState(e)}},getHeaderMenu:function(){var b=this.getMenu(),a;if(b){a=b.child("#columnItem");if(a){return a.menu}}return null},onHeaderVisibilityChange:function(e,d){var b=this,c=b.getHeaderMenu(),a;b.purgeHeaderCtCache(e.ownerCt);if(c){a=b.getMenuItemForHeader(c,e);if(a){a.setChecked(d,true)}if(c.isVisible()){b.menuTask.delay(50)}}},updateMenuDisabledState:function(h){var g=this,d=g.query(":not([hidden])"),c,a=d.length,e,b,j;if(!h){h=g.getMenu()}for(c=0;c<a;++c){e=d[c];b=g.getMenuItemForHeader(h,e);if(b){j=e.isHideable()?"enable":"disable";if(b.menu){j+="CheckChange"}b[j]()}}},getMenuItemForHeader:function(a,b){return b?a.down("menucheckitem[headerId="+b.id+"]"):null},onHeaderShow:function(c){var b=this,a=b.ownerCt;if(b.forceFit){delete b.flex}b.onHeaderVisibilityChange(c,true);if(!c.isGroupHeader){if(a){a.onHeaderShow(b,c)}}b.fireEvent("columnshow",b,c);b.fireEvent("columnschanged",this)},onHeaderHide:function(c){var b=this,a=b.ownerCt;b.onHeaderVisibilityChange(c,false);if(!c.isGroupHeader){if(a){a.onHeaderHide(b,c)}}b.fireEvent("columnhide",b,c);b.fireEvent("columnschanged",this)},tempLock:function(){this.ddLock=true;Ext.Function.defer(function(){this.ddLock=false},200,this)},onHeaderResize:function(d,a){var c=this,b=c.ownerCt;if(b){b.onHeaderResize(c,d,a)}c.fireEvent("columnresize",c,d,a)},onHeaderClick:function(c,b,a){c.fireEvent("headerclick",this,c,b,a);this.fireEvent("headerclick",this,c,b,a)},onHeaderContextMenu:function(c,b,a){c.fireEvent("headercontextmenu",this,c,b,a);this.fireEvent("headercontextmenu",this,c,b,a)},onHeaderTriggerClick:function(d,c,a){var b=this;if(d.fireEvent("headertriggerclick",b,d,c,a)!==false&&b.fireEvent("headertriggerclick",b,d,c,a)!==false){b.showMenuBy(a,d)}},showMenuBy:function(b,g){var d=this.getMenu(),e=d.down("#ascItem"),c=d.down("#descItem"),a;d.activeHeader=d.ownerButton=g;g.setMenuActive(true);a=g.sortable?"enable":"disable";if(e){e[a]()}if(c){c[a]()}d.showBy(b,"tl-bl?")},hideMenu:function(){if(this.menu){this.menu.hide()}},onMenuHide:function(a){a.activeHeader.setMenuActive(false)},moveHeader:function(a,b){this.tempLock();this.move(a,b)},purgeHeaderCtCache:function(a){while(a){a.purgeCache();if(a.isRootHeader){return}a=a.ownerCt}},purgeCache:function(){var c=this,b=c.visibleColumnManager,a=c.columnManager;c.gridVisibleColumns=c.gridDataColumns=c.hideableColumns=null;if(b){b.invalidate();a.invalidate()}},getMenu:function(){var a=this;if(!a.menu){a.menu=new Ext.menu.Menu({hideOnParentHide:false,items:a.getMenuItems(),listeners:{beforeshow:a.beforeMenuShow,hide:a.onMenuHide,scope:a}});a.fireEvent("menucreate",a,a.menu)}return a.menu},beforeMenuShow:function(e){var c=this,b=e.child("#columnItem"),a,d,e;if(!b){a=c.enableColumnHide?c.getColumnMenu(c):null;d=c.sortable?2:0;if(a&&a.length){e.insert(d,[{itemId:"columnItemSeparator",xtype:"menuseparator"},{itemId:"columnItem",text:c.columnsText,iconCls:c.menuColsIcon,menu:{items:a},hideOnClick:false}])}}c.updateMenuDisabledState(c.menu)},getMenuItems:function(){var c=this,b=[],a=c.enableColumnHide?c.getColumnMenu(c):null;if(c.sortable){b=[{itemId:"ascItem",text:c.sortAscText,iconCls:c.menuSortAscCls,handler:c.onSortAscClick,scope:c},{itemId:"descItem",text:c.sortDescText,iconCls:c.menuSortDescCls,handler:c.onSortDescClick,scope:c}]}if(a&&a.length){if(c.sortable){b.push({itemId:"columnItemSeparator",xtype:"menuseparator"})}b.push({itemId:"columnItem",text:c.columnsText,iconCls:c.menuColsIcon,menu:a,hideOnClick:false})}return b},onSortAscClick:function(){var b=this.getMenu(),a=b.activeHeader;a.sort("ASC")},onSortDescClick:function(){var b=this.getMenu(),a=b.activeHeader;a.sort("DESC")},getColumnMenu:function(g){var c=[],b=0,e,a=g.query(">gridcolumn[hideable]"),h=a.length,d;for(;b<h;b++){e=a[b];d=new Ext.menu.CheckItem({text:e.menuText||e.text,checked:!e.hidden,hideOnClick:false,headerId:e.id,menu:e.isGroupHeader?this.getColumnMenu(e):undefined,checkHandler:this.onColumnCheckChange,scope:this});c.push(d)}return c},onColumnCheckChange:function(a,b){var c=Ext.getCmp(a.headerId);if(c.rendered){c[b?"show":"hide"]()}else{c.hidden=!b}},getColumnCount:function(){return this.getGridColumns().length},getTableWidth:function(){var c=0,b=this.getVisibleGridColumns(),d=b.length,a;for(a=0;a<d;a++){c+=b[a].getCellWidth()||0}return c},getVisibleGridColumns:function(){if(this.gridVisibleColumns){return this.gridVisibleColumns}var c=this.getGridColumns(),e,b=[],a=c.length,d;for(d=0;d<a;d++){if(!c[d].hidden){e=c[d];e.visibleIndex=b.length;b[b.length]=e}}this.gridVisibleColumns=b;return b},getGridColumns:function(h,a){if(!h&&this.gridDataColumns){return this.gridDataColumns}var g=this,k=h||[],e,b,d,j,c;a=a||g.hidden;if(g.items){e=g.items.items;for(b=0,d=e.length;b<d;b++){j=e[b];if(j.isGroupHeader){j.getGridColumns(k,a)}else{j.hiddenAncestor=a;k.push(j)}}}if(!h){g.gridDataColumns=k}if(!h&&d){for(b=0,d=k.length;b<d;b++){j=k[b];j.fullColumnIndex=b;j.isFirstVisible=j.isLastVisible=false;if(!(j.hidden||j.hiddenAncestor)){if(!c){j.isFirstVisible=true}c=j}}if(c){c.isLastVisible=true}}return k},getHideableColumns:function(){var b=this,a=b.hideableColumns;if(!a){a=b.hideableColumns=b.query("[hideable]")}return a},getHeaderIndex:function(a){if(!this.columnManager){this.columnManager=this.getOwnerHeaderCt().columnManager}return this.columnManager.getHeaderIndex(a)},getHeaderAtIndex:function(a){if(!this.columnManager){this.columnManager=this.getOwnerHeaderCt().columnManager}return this.columnManager.getHeaderAtIndex(a)},getVisibleHeaderClosestToIndex:function(a){if(!this.visibleColumnManager){this.visibleColumnManager=this.getOwnerHeaderCt().visibleColumnManager}return this.visibleColumnManager.getVisibleHeaderClosestToIndex(a)},applyForceFit:function(h){var n=this,o=n.view,b=Ext.grid.plugin.HeaderResizer.prototype.minColWidth,d=false,s=Ext.grid.header.Container.prototype.defaultWidth,a=n.el.dom.clientWidth-(o.el.dom.scrollHeight>o.el.dom.clientHeight?Ext.getScrollbarSize().width:0),e=0,m=n.getVisibleGridColumns(),j=h.hidden,l,g,r,k,c;function p(){for(g=0,l=m.length;g<l;g++){r=m[g];if(r===h){continue}r.flex=r.flex||r.width||r.getWidth();e+=r.flex;r.width=null}}function q(){var t;for(g=0,l=m.length;g<l;g++){r=m[g];t=(r===h);if(d&&!t){r.flex=b;r.width=null}else{if(!t){c=r.flex||s;r.flex=Math.max(Math.ceil((c/e)*a),b);r.width=null}}r.setWidth(r.width||r.flex)}}Ext.suspendLayouts();k=(a-((m.length+1)*b));h.flex=null;if(j){c=h.width||h.savedWidth;h.savedWidth=null}else{c=o.getMaxContentWidth(h)}if(c>k){h.width=k;d=true}else{h.width=c;a-=c+s;p()}q();Ext.resumeLayouts(true)},autoSizeColumn:function(b){var a=this.view;if(a){a.autoSizeColumn(b);if(this.forceFit){this.applyForceFit(b)}}}},0,["headercontainer"],["box","component","container","headercontainer"],{box:true,component:true,container:true,headercontainer:true},["widget.headercontainer"],0,[Ext.grid.header,"Container"],0));(Ext.cmd.derive("Ext.grid.ColumnComponentLayout",Ext.layout.component.Auto,{type:"columncomponent",setWidthInDom:true,beginLayout:function(a){Ext.layout.Layout.prototype.beginLayout.apply(this,arguments);a.titleContext=a.getEl("titleEl");a.triggerContext=a.getEl("triggerEl")},beginLayoutCycle:function(b){var a=this.owner;Ext.layout.component.Auto.prototype.beginLayoutCycle.apply(this,arguments);if(b.widthModel.shrinkWrap){a.el.setWidth("")}a.titleEl.setStyle({paddingTop:"",paddingBottom:""})},publishInnerHeight:function(e,k){var h=this,b=h.owner,a,d,j,g,l,c;if(b.getOwnerHeaderCt().hiddenHeaders){e.setProp("innerHeight",0);return}a=k-e.getBorderInfo().height;d=a;if(b.headerWrap&&!e.hasDomProp("width")){h.done=false;return}if(e.hasRawContent){j=b.textEl.getHeight();if(j){d-=j;if(d>0){l=Math.floor(d/2);c=d-l;e.titleContext.setProp("padding-top",l);e.titleContext.setProp("padding-bottom",c)}}}else{e.setProp("innerHeight",a-b.titleEl.getHeight(),false)}},measureContentHeight:function(a){return a.el.dom.offsetHeight},publishInnerWidth:function(a,b){if(!a.hasRawContent){a.setProp("innerWidth",b-a.getBorderInfo().width,false)}},calculateOwnerHeightFromContentHeight:function(d,c){var b=Ext.layout.component.Auto.prototype.calculateOwnerHeightFromContentHeight.apply(this,arguments),a=this.owner;if(!d.hasRawContent){if(!a.headerWrap||d.hasDomProp("width")){return c+a.titleEl.getHeight()+d.getBorderInfo().height}return null}return b},calculateOwnerWidthFromContentWidth:function(g,b){var a=this.owner,e=g.getPaddingInfo().width,d=this.getTriggerOffset(a,g),c;if(a.isGroupHeader){c=b}else{c=Math.max(b,a.textEl.getWidth()+g.titleContext.getPaddingInfo().width)}return c+e+d},getTriggerOffset:function(a,c){var b=0;if(c.widthModel.shrinkWrap&&!a.menuDisabled){if(a.query(">:not([hidden])").length===0){b=a.self.triggerElWidth}}return b}},0,0,0,0,["layout.columncomponent"],0,[Ext.grid,"ColumnComponentLayout"],0));(Ext.cmd.derive("Ext.grid.column.Column",Ext.grid.header.Container,{alternateClassName:"Ext.grid.Column",config:{triggerVisible:false},baseCls:Ext.baseCSSPrefix+"column-header",hoverCls:Ext.baseCSSPrefix+"column-header-over",handleWidth:Ext.supports.Touch?10:4,ariaRole:"columnheader",sortState:null,possibleSortStates:["ASC","DESC"],childEls:["titleEl","triggerEl","textEl"],headerWrap:false,renderTpl:['<div id="{id}-titleEl" data-ref="titleEl" role="presentation" {tipMarkup}class="',Ext.baseCSSPrefix,"column-header-inner",'<tpl if="empty"> ',Ext.baseCSSPrefix,'column-header-inner-empty</tpl>">','<span id="{id}-textEl" data-ref="textEl" class="',Ext.baseCSSPrefix,"column-header-text",'{childElCls}">',"{text}","</span>",'<tpl if="!menuDisabled">','<div id="{id}-triggerEl" data-ref="triggerEl" role="presentation" class="',Ext.baseCSSPrefix,"column-header-trigger",'{childElCls}" style="{triggerStyle}"></div>',"</tpl>","</div>","{%this.renderContainer(out,values)%}"],dataIndex:null,text:"&#160;",menuText:null,emptyCellText:"&#160;",sortable:true,resizable:true,hideable:true,menuDisabled:false,renderer:false,align:"left",draggable:true,tooltipType:"qtip",initDraggable:Ext.emptyFn,tdCls:"",isHeader:true,isColumn:true,producesHTML:true,ascSortCls:Ext.baseCSSPrefix+"column-header-sort-ASC",descSortCls:Ext.baseCSSPrefix+"column-header-sort-DESC",componentLayout:"columncomponent",groupSubHeaderCls:Ext.baseCSSPrefix+"group-sub-header",groupHeaderCls:Ext.baseCSSPrefix+"group-header",clickTargetName:"titleEl",detachOnRemove:true,initResizable:Ext.emptyFn,rendererNames:{column:"renderer",edit:"editRenderer",summary:"summaryRenderer"},formatterNames:{column:"formatter",edit:"editFormatter",summary:"summaryFormatter"},initComponent:function(){var a=this;if(a.header!=null){a.text=a.header;a.header=null}if(a.cellWrap){a.tdCls=(a.tdCls||"")+" "+Ext.baseCSSPrefix+"wrap-cell"}if(a.columns!=null){a.isGroupHeader=true;a.items=a.columns;a.columns=a.flex=a.width=null;a.cls=(a.cls||"")+" "+a.groupHeaderCls;a.sortable=a.resizable=false;a.align="center"}else{if(a.flex){a.minWidth=a.minWidth||Ext.grid.plugin.HeaderResizer.prototype.minColWidth}}a.addCls(Ext.baseCSSPrefix+"column-header-align-"+a.align);a.setupRenderer();a.setupRenderer("edit");a.setupRenderer("summary");Ext.grid.header.Container.prototype.initComponent.apply(this,arguments)},bindFormatter:function(b){var a=this;return function(c){return b.format(c,b.scope||a.scope||a.resolveListenerScope())}},bindRenderer:function(b){var a=this;a.hasCustomRenderer=true;return function(){return Ext.callback(b,a.scope,arguments,0,a)}},setupRenderer:function(b){b=b||"column";var c=this,e=c[c.formatterNames[b]],d=c[c.rendererNames[b]],a=b==="column",g;if(!e){if(d){if(typeof d==="string"){d=c[c.rendererNames[b]]=c.bindRenderer(d)}if(a){c.hasCustomRenderer=d.length>1}}else{if(a&&c.defaultRenderer){c.renderer=c.defaultRenderer;c.usingDefaultRenderer=true}}}else{g=e.indexOf("this.")===0;if(g){e=e.substring(5)}e=Ext.app.bind.Template.prototype.parseFormat(e);c[c.formatterNames[b]]=null;if(g){e.scope=null}c[c.rendererNames[b]]=c.bindFormatter(e)}},getView:function(){var a=this.getOwnerHeaderCt();if(a){return a.view}},onResize:function(b,k,c,j){var d=this,e,g,h,a;Ext.container.Container.prototype.onResize.apply(this,arguments);if(c&&d.cellWrap){e=d.getView();if(e){g=e.store;h=e.bufferedRenderer;if(h){delete h.rowHeight;h.stretchView(e,h.getScrollHeight(true));h.viewSize=Math.ceil(e.getHeight()/h.rowHeight)+h.trailingBufferZone+h.leadingBufferZone;if(g.isBufferedStore){g.setViewSize(h.viewSize)}a=Math.min((g.isBufferedStore?g.getTotalCount():g.getCount())-h.viewSize,Math.max(0,Math.floor(h.bodyTop/h.rowHeight)));h.renderRange(a,a+h.viewSize-1);if(b>c&&h.bodyTop+e.body.dom.offsetHeight-1>h.scrollHeight){h.setBodyTop(Math.max(0,h.scrollHeight-e.body.dom.offsetHeight))}}}}},initItems:function(){var a=this;Ext.container.Container.prototype.initItems.apply(this,arguments);if(a.isGroupHeader){if(!a.hasVisibleChildColumns()){a.hide()}}},hasVisibleChildColumns:function(){var b=this.items.items,a=b.length,c,d;for(c=0;c<a;++c){d=b[c];if(d.isColumn&&!d.hidden){return true}}return false},onAdd:function(b){var a=this;if(b.isColumn){b.isSubHeader=true;b.addCls(this.groupSubHeaderCls)}if(a.hidden&&b.isColumn){if(a.constructing){b.hide()}else{if(!b.hidden){a.show()}}}Ext.grid.header.Container.prototype.onAdd.apply(this,arguments)},onRemove:function(b){var a=this;if(b.isSubHeader){b.isSubHeader=false;b.removeCls(a.groupSubHeaderCls)}Ext.grid.header.Container.prototype.onRemove.apply(this,arguments);if(!(a.isDestroyed||a.destroying)&&a.isGroupHeader&&!a.hasVisibleChildColumns()){a.hide()}},initRenderData:function(){var b=this,e="",c=b.tooltip,d=b.text,a=b.tooltipType=="qtip"?"data-qtip":"title";if(!Ext.isEmpty(c)){e=a+'="'+c+'" '}return Ext.applyIf(Ext.util.Renderable.prototype.initRenderData.apply(this,arguments),{text:d,empty:d==="&#160;"||d===" "||d==="",menuDisabled:b.menuDisabled,tipMarkup:e,triggerStyle:this.getTriggerVisible()?"display:block":""})},applyColumnState:function(b){var a=this;a.applyColumnsState(b.columns);if(b.hidden!=null){a.hidden=b.hidden}if(b.locked!=null){a.locked=b.locked}if(b.sortable!=null){a.sortable=b.sortable}if(b.width!=null){a.flex=null;a.width=b.width}else{if(b.flex!=null){a.width=null;a.flex=b.flex}}},getColumnState:function(){var e=this,b=e.items.items,a=b?b.length:0,d,c=[],g={id:e.getStateId()};e.savePropsToState(["hidden","sortable","locked","flex","width"],g);if(e.isGroupHeader){for(d=0;d<a;d++){c.push(b[d].getColumnState())}if(c.length){g.columns=c}}else{if(e.isSubHeader&&e.ownerCt.hidden){delete e.hidden}}if("width" in g){delete g.flex}return g},getStateId:function(){return this.stateId||this.headerId},setText:function(a){this.text=a;if(this.rendered){this.textEl.setHtml(a)}},getIndex:function(){return this.isGroupColumn?false:this.getOwnerHeaderCt().getHeaderIndex(this)},getVisibleIndex:function(){return this.visibleIndex!=null?this.visibleIndex:this.isGroupColumn?false:Ext.Array.indexOf(this.getOwnerHeaderCt().getVisibleGridColumns(),this)},beforeRender:function(){var b=this,a=b.up("tablepanel");Ext.container.Container.prototype.beforeRender.call(this);if(a){if((!b.sortable||a.sortableColumns===false)&&!b.groupable&&!b.lockable&&(a.enableColumnHide===false||!b.getOwnerHeaderCt().getHideableColumns().length)){b.menuDisabled=true}}if(b.cellWrap){b.variableRowHeight=true}b.protoEl.unselectable()},afterRender:function(){var b=this,a=b.triggerEl;Ext.util.Renderable.prototype.afterRender.apply(this,arguments);if(a&&b.self.triggerElWidth===undefined){a.setStyle("display","block");b.self.triggerElWidth=a.getWidth();a.setStyle("display","")}},afterComponentLayout:function(d,a,c,g){var e=this,b=e.getOwnerHeaderCt();Ext.container.Container.prototype.afterComponentLayout.apply(this,arguments);if(b&&(c!=null||e.flex)&&d!==c){b.onHeaderResize(e,d)}},onDestroy:function(){var a=this;Ext.destroy(a.keyNav,a.field);a.field=a.keyNav=null;Ext.grid.header.Container.prototype.onDestroy.apply(this,arguments)},onTitleMouseOver:function(){this.titleEl.addCls(this.hoverCls)},onTitleMouseOut:function(){this.titleEl.removeCls(this.hoverCls)},onDownKey:function(a){if(this.triggerEl){this.onTitleElClick(a,this.triggerEl.dom||this.el.dom)}},onEnterKey:function(a){this.onTitleElClick(a,this.el.dom)},onTitleElDblClick:function(g,a){var c=this,b,d,h;if(c.isOnLeftEdge(g)){b=c.previousNode("gridcolumn:not([hidden]):not([isGroupHeader])");if(b&&b.getOwnerHeaderCt()===c.getOwnerHeaderCt()){b.autoSize()}}else{if(c.isOnRightEdge(g)){if(c.isGroupHeader&&g.getPoint().isContainedBy(c.layout.innerCt)){d=c.query("gridcolumn:not([hidden]):not([isGroupHeader])");c.getOwnerHeaderCt().autoSizeColumn(d[d.length-1]);return}else{h=c.getOwnerHeaderCt();if(h.visibleColumnManager.getColumns().length===1&&h.forceFit){return}}c.autoSize()}}},autoSize:function(){var b=this,c,e,a,d;if(b.isGroupHeader){c=b.query("gridcolumn:not([hidden]):not([isGroupHeader])");e=c.length;d=this.getOwnerHeaderCt();Ext.suspendLayouts();for(a=0;a<e;a++){d.autoSizeColumn(c[a])}Ext.resumeLayouts(true);return}this.getOwnerHeaderCt().autoSizeColumn(this)},onTitleElClick:function(g,c){var d=this,a,b;if(Ext.supports.Touch){b=d.previousSibling(":not([hidden])");if(!d.menuDisabled&&d.isOnRightEdge(g,parseInt(d.triggerEl.getStyle("width")))){if(!d.menuDisabled){a=d}}else{if(b&&!b.menuDisabled&&d.isOnLeftEdge(g)){a=b}}}else{a=d.triggerEl&&(g.target===d.triggerEl.dom||c===d.triggerEl.dom||g.within(d.triggerEl))?d:null}if(!a&&!d.isOnLeftEdge(g)&&!d.isOnRightEdge(g)||g.getKey()){d.toggleSortState()}return a},processEvent:function(g,b,a,c,d,h){return this.fireEvent.apply(this,arguments)},toggleSortState:function(){var b=this,a,c;if(b.sortable){a=Ext.Array.indexOf(b.possibleSortStates,b.sortState);c=(a+1)%b.possibleSortStates.length;b.sort()}},sort:function(d){var c=this,b=c.up("tablepanel"),a=b.store;Ext.suspendLayouts();c.sorting=true;a.sort(c.getSortParam(),d,b.multiColumnSort?"multi":"replace");delete c.sorting;Ext.resumeLayouts(true)},getSortParam:function(){return this.dataIndex},setSortState:function(g){var c=this,d=g&&g.getDirection(),e=c.ascSortCls,b=c.descSortCls,a=c.getOwnerHeaderCt();switch(d){case"DESC":c.addCls(b);c.removeCls(e);break;case"ASC":c.addCls(e);c.removeCls(b);break;default:c.removeCls([e,b])}if(d){a.fireEvent("sortchange",a,c,d)}},isHideable:function(){var a={hideCandidate:this,result:this.hideable};if(a.result){this.ownerCt.bubble(this.hasOtherMenuEnabledChildren,null,[a])}return a.result},hasOtherMenuEnabledChildren:function(a){var b,c;if(!this.isXType("headercontainer")){a.result=false;return false}b=this.query(">:not([hidden]):not([menuDisabled])");c=b.length;if(Ext.Array.contains(b,a.hideCandidate)){c--}if(c){return false}a.hideCandidate=this},isLockable:function(){var a={result:this.lockable!==false};if(a.result){this.ownerCt.bubble(this.hasMultipleVisibleChildren,null,[a])}return a.result},isLocked:function(){return this.locked||!!this.up("[isColumn][locked]","[isRootHeader]")},hasMultipleVisibleChildren:function(a){if(!this.isXType("headercontainer")){a.result=false;return false}if(this.query(">:not([hidden])").length>1){return false}},hide:function(c){var j=this,e=j.getOwnerHeaderCt(),b=j.getRefOwner(),a,k,h,g,d;if(b.constructing){Ext.Component.prototype.hide.call(this);return j}if(j.rendered&&!j.isVisible()){return j}if(e.forceFit){j.visibleSiblingCount=e.getVisibleGridColumns().length-1;if(j.flex){j.savedWidth=j.getWidth();j.flex=null}}a=b.isGroupHeader;if(a&&!c){h=b.query(">:not([hidden])");if(h.length===1&&h[0]===j){j.ownerCt.hide();return}}Ext.suspendLayouts();if(j.isGroupHeader){h=j.items.items;for(d=0,g=h.length;d<g;d++){k=h[d];if(!k.hidden){k.hide(true)}}}Ext.Component.prototype.hide.call(this);e.onHeaderHide(j);Ext.resumeLayouts(true);return j},show:function(b,c){var j=this,e=j.getOwnerHeaderCt(),a=j.ownerCt,h,g,d,k;if(j.isVisible()){return j}if(j.rendered){if(e.forceFit){e.applyForceFit(j)}}Ext.suspendLayouts();if(j.isSubHeader&&a.hidden){a.show(false,true)}Ext.Component.prototype.show.apply(this,arguments);if(j.isGroupHeader&&c!==true&&!j.query(":not([hidden])").length){h=j.items.items;for(d=0,g=h.length;d<g;d++){k=h[d];if(k.hidden){k.show(true)}}}a=j.getOwnerHeaderCt();if(a){a.onHeaderShow(j)}Ext.resumeLayouts(true);return j},getCellWidth:function(){var b=this,a;if(b.rendered&&b.componentLayout&&b.componentLayout.lastComponentSize){a=b.componentLayout.lastComponentSize.width}else{if(b.width){a=b.width}else{if(!b.isColumn){a=b.getTableWidth()}}}return a},getCellId:function(){return Ext.baseCSSPrefix+"grid-cell-"+this.getItemId()},getCellSelector:function(){return"."+this.getCellId()},getCellInnerSelector:function(){return this.getCellSelector()+" ."+Ext.baseCSSPrefix+"grid-cell-inner"},isOnLeftEdge:function(a){return(a.getXY()[0]-this.getX()<this.handleWidth)},isOnRightEdge:function(b,a){return(this.getX()+this.getWidth()-b.getXY()[0]<=(a||this.handleWidth))},setMenuActive:function(a){this.titleEl[a?"addCls":"removeCls"](this.headerOpenCls)},deprecated:{5:{methods:{bindRenderer:function(a){return function(b){return Ext.util.Format[a](b)}}}}}},0,["gridcolumn"],["box","component","container","gridcolumn","headercontainer"],{box:true,component:true,container:true,gridcolumn:true,headercontainer:true},["widget.gridcolumn"],0,[Ext.grid.column,"Column",Ext.grid,"Column"],0));(Ext.cmd.derive("Ext.tree.Column",Ext.grid.column.Column,{tdCls:Ext.baseCSSPrefix+"grid-cell-treecolumn",autoLock:true,lockable:false,draggable:false,hideable:false,iconCls:Ext.baseCSSPrefix+"tree-icon",checkboxCls:Ext.baseCSSPrefix+"tree-checkbox",elbowCls:Ext.baseCSSPrefix+"tree-elbow",expanderCls:Ext.baseCSSPrefix+"tree-expander",textCls:Ext.baseCSSPrefix+"tree-node-text",innerCls:Ext.baseCSSPrefix+"grid-cell-inner-treecolumn",isTreeColumn:true,cellTpl:['<tpl for="lines">','<img src="{parent.blankUrl}" class="{parent.childCls} {parent.elbowCls}-img ','{parent.elbowCls}-<tpl if=".">line<tpl else>empty</tpl>" role="presentation"/>',"</tpl>",'<img src="{blankUrl}" class="{childCls} {elbowCls}-img {elbowCls}','<tpl if="isLast">-end</tpl><tpl if="expandable">-plus {expanderCls}</tpl>" role="presentation"/>','<tpl if="checked !== null">','<input type="button" {ariaCellCheckboxAttr}',' class="{childCls} {checkboxCls}<tpl if="checked"> {checkboxCls}-checked</tpl>"/>',"</tpl>",'<img src="{blankUrl}" role="presentation" class="{childCls} {baseIconCls} ','{baseIconCls}-<tpl if="leaf">leaf<tpl else>parent</tpl> {iconCls}"','<tpl if="icon">style="background-image:url({icon})"</tpl>/>','<tpl if="href">','<a href="{href}" role="link" target="{hrefTarget}" class="{textCls} {childCls}">{value}</a>',"<tpl else>",'<span class="{textCls} {childCls}">{value}</span>',"</tpl>"],initComponent:function(){var a=this;a.setupRenderer();a.origRenderer=a.renderer;a.origScope=a.scope||window;a.renderer=a.treeRenderer;a.scope=a;Ext.grid.column.Column.prototype.initComponent.call(this)},treeRenderer:function(j,a,e,b,c,k,h){var g=this,l=e.get("cls"),d;if(l){a.tdCls+=" "+l}d=g.initTemplateRendererData(j,a,e,b,c,k,h);return g.getTpl("cellTpl").apply(d)},initTemplateRendererData:function(m,a,e,b,d,n,k){var j=this,h=j.origRenderer,c=e.data,l=e.parentNode,o=k.rootVisible,p=[],g;while(l&&(o||l.data.depth>0)){g=l.data;p[o?g.depth:g.depth-1]=g.isLast?0:1;l=l.parentNode}return{record:e,baseIconCls:j.iconCls,iconCls:c.iconCls,icon:c.icon,checkboxCls:j.checkboxCls,checked:c.checked,elbowCls:j.elbowCls,expanderCls:j.expanderCls,textCls:j.textCls,leaf:c.leaf,expandable:e.isExpandable(),isLast:e.isLastVisible(),blankUrl:Ext.BLANK_IMAGE_URL,href:c.href,hrefTarget:c.hrefTarget,lines:p,metaData:a,childCls:j.getChildCls?j.getChildCls()+" ":"",value:h?h.apply(j.origScope,arguments):m}}},0,["treecolumn"],["box","component","container","gridcolumn","headercontainer","treecolumn"],{box:true,component:true,container:true,gridcolumn:true,headercontainer:true,treecolumn:true},["widget.treecolumn"],0,[Ext.tree,"Column"],0));(Ext.cmd.derive("Ext.tree.Panel",Ext.panel.Table,{alternateClassName:["Ext.tree.TreePanel","Ext.TreePanel"],viewType:"treeview",selType:"treemodel",treeCls:Ext.baseCSSPrefix+"tree-panel",rowLines:false,lines:true,useArrows:false,singleExpand:false,ddConfig:{enableDrag:true,enableDrop:true},rootVisible:true,displayField:"text",root:null,normalCfgCopy:["displayField","root","singleExpand","useArrows","lines","rootVisible","scroll"],lockedCfgCopy:["displayField","root","singleExpand","useArrows","lines","rootVisible"],isTree:true,arrowCls:Ext.baseCSSPrefix+"tree-arrows",linesCls:Ext.baseCSSPrefix+"tree-lines",noLinesCls:Ext.baseCSSPrefix+"tree-no-lines",autoWidthCls:Ext.baseCSSPrefix+"autowidth-table",constructor:function(a){a=a||{};if(a.animate===undefined){a.animate=Ext.isBoolean(this.animate)?this.animate:Ext.enableFx}this.enableAnimations=a.animate;delete a.animate;Ext.panel.Table.prototype.constructor.apply(this,[a])},initComponent:function(){var d=this,b=[d.treeCls],c=d.store,a;if(d.useArrows){b.push(d.arrowCls);d.lines=false}if(d.lines){b.push(d.linesCls)}else{if(!d.useArrows){b.push(d.noLinesCls)}}if(Ext.isString(c)){c=d.store=Ext.StoreMgr.lookup(c)}else{if(!c||!c.isStore){c=Ext.apply({type:"tree",root:d.root,fields:d.fields,model:d.model,proxy:"memory",folderSort:d.folderSort},c);c=d.store=Ext.StoreMgr.lookup(c)}else{if(d.root){c=d.store=Ext.data.StoreManager.lookup(c);c.setRoot(d.root);if(d.folderSort!==undefined){c.folderSort=d.folderSort;c.sort()}}}}c.setRootVisible(d.rootVisible);if(!c.getRoot()){c.setRoot({})}d.viewConfig=Ext.apply({rootVisible:d.rootVisible,animate:d.enableAnimations,singleExpand:d.singleExpand,node:c.getRoot(),hideHeaders:d.hideHeaders},d.viewConfig);if(!d.columns){if(d.initialConfig.hideHeaders===undefined){d.hideHeaders=true}d.addCls(d.autoWidthCls);d.columns=[{xtype:"treecolumn",text:"Name",flex:1,dataIndex:d.displayField}]}if(d.cls){b.push(d.cls)}d.cls=b.join(" ");Ext.panel.Table.prototype.initComponent.call(this);d.selModel.treeStore=d.store;a=d.getView();d.relayEvents(a,["checkchange","afteritemexpand","afteritemcollapse"])},bindStore:function(c,d){var e=this,b=c.getRoot(),a=e.getView();e.store=c;c.singleExpand=e.singleExpand;e.storeListeners=e.mon(c,{destroyable:true,load:e.onStoreLoad,rootchange:e.onRootChange,clear:e.onClear,scope:e});if(a.store!==c){a.bindStore(c,false)}e.storeRelayers=e.relayEvents(c,["beforeload","load"]);e.rootRelayers=e.mon(b,{destroyable:true,append:e.createRelayer("itemappend"),remove:e.createRelayer("itemremove"),move:e.createRelayer("itemmove",[0,4]),insert:e.createRelayer("iteminsert"),beforeappend:e.createRelayer("beforeitemappend"),beforeremove:e.createRelayer("beforeitemremove"),beforemove:e.createRelayer("beforeitemmove"),beforeinsert:e.createRelayer("beforeiteminsert"),expand:e.createRelayer("itemexpand",[0,1]),collapse:e.createRelayer("itemcollapse",[0,1]),beforeexpand:e.createRelayer("beforeitemexpand",[0,1]),beforecollapse:e.createRelayer("beforeitemcollapse",[0,1])});if((c.autoLoad!==false&&!e.rootVisible)||b.isExpanded()){b.data.expanded=false;b.expand()}c.ownerTree=e;if(!d){e.view.setRootNode(b,true)}},unbindStore:function(){var b=this,a=b.store;if(a){Ext.destroy(b.storeListeners,b.storeRelayers,b.rootRelayers);delete a.ownerTree;a.singleExpand=null}},onClear:function(){this.view.onClear()},setRootNode:function(){return this.store.setRoot.apply(this.store,arguments)},getRootNode:function(){return this.store.getRoot()},onRootChange:function(a){this.view.setRootNode(a)},getChecked:function(){return this.getView().getChecked()},isItemChecked:function(a){return a.get("checked")},expandNode:function(b,a,d,c){return this.getView().expand(b,a,d,c||this)},collapseNode:function(b,a,d,c){return this.getView().collapse(b,a,d,c||this)},expandAll:function(e,c){var d=this,a=d.getRootNode(),b=d.enableAnimations;if(a){if(!b){Ext.suspendLayouts()}a.expand(true,e,c||d);if(!b){Ext.resumeLayouts(true)}}},collapseAll:function(g,d){var e=this,b=e.getRootNode(),c=e.enableAnimations,a=e.getView();if(b){if(!c){Ext.suspendLayouts()}d=d||e;if(a.rootVisible){b.collapse(true,g,d)}else{b.collapseChildren(true,g,d)}if(!c){Ext.resumeLayouts(true)}}},expandPath:function(l,e,a,g,k){var d=this,c=d.getRootNode(),b=1,j,h;e=e||d.getRootNode().idProperty;a=a||"/";if(Ext.isEmpty(l)){Ext.callback(g,k||d,[false,null]);return}j=l.split(a);if(c.get(e)!=j[1]){Ext.callback(g,k||d,[false,c]);return}h=function(){if(++b===j.length){Ext.callback(g,k||d,[true,c]);return}var m=c.findChild(e,j[b]);if(!m){Ext.callback(g,k||d,[false,c]);return}c=m;c.expand(false,h)};c.expand(false,h)},selectPath:function(k,d,a,g,j){var b=this,c,h,e;d=d||b.getRootNode().idProperty;a=a||"/";h=k.split(a);e=h.pop();if(h.length>1){b.expandPath(h.join(a),d,a,function(n,m){var l=m;if(n&&m){m=m.findChild(d,e);if(m){b.getSelectionModel().select(m);Ext.callback(g,j||b,[true,m]);return}}Ext.callback(g,j||b,[false,l])},b)}else{c=b.getRootNode();if(c.getId()===e){b.getSelectionModel().select(c);Ext.callback(g,j||b,[true,c])}else{Ext.callback(g,j||b,[false,null])}}}},1,["treepanel"],["box","component","container","panel","tablepanel","treepanel"],{box:true,component:true,container:true,panel:true,tablepanel:true,treepanel:true},["widget.treepanel"],0,[Ext.tree,"Panel",Ext.tree,"TreePanel",Ext,"TreePanel"],0));(Ext.cmd.derive("Ext.form.field.VTypes",Ext.Base,(function(){var c=/^[a-zA-Z_]+$/,d=/^[a-zA-Z0-9_]+$/,b=/^(")?(?:[^\."])(?:(?:[\.])?(?:[\w\-!#$%&'*+/=?^_`{|}~]))*\1@(\w[\-\w]*\.){1,5}([A-Za-z]){2,6}$/,a=/(((^https?)|(^ftp)):\/\/((([\-\w]+\.)+\w{2,3}(\/[%\-\w]+(\.\w{2,})?)*(([\w\-\.\?\\\/+@&#;`~=%!]*)(\.\w{2,})?)*)|(localhost|LOCALHOST))\/?)/i;return{singleton:true,alternateClassName:"Ext.form.VTypes",email:function(e){return b.test(e)},emailText:'This field should be an e-mail address in the format "user@example.com"',emailMask:/[\w.\-@'"!#$%&'*+/=?^_`{|}~]/i,url:function(e){return a.test(e)},urlText:'This field should be a URL in the format "http://www.example.com"',alpha:function(e){return c.test(e)},alphaText:"This field should only contain letters and _",alphaMask:/[a-z_]/i,alphanum:function(e){return d.test(e)},alphanumText:"This field should only contain letters, numbers and _",alphanumMask:/[a-z0-9_]/i}}()),0,0,0,0,0,0,[Ext.form.field,"VTypes",Ext.form,"VTypes"],0));(Ext.cmd.derive("Ext.form.trigger.Trigger",Ext.Base,{factoryConfig:{defaultType:"trigger"},repeatClick:false,focusFieldOnClick:false,hidden:false,hideOnReadOnly:undefined,weight:0,baseCls:Ext.baseCSSPrefix+"form-trigger",focusCls:Ext.baseCSSPrefix+"form-trigger-focus",overCls:Ext.baseCSSPrefix+"form-trigger-over",clickCls:Ext.baseCSSPrefix+"form-trigger-click",validIdRe:Ext.validIdRe,renderTpl:['<div id="{triggerId}" class="{baseCls} {baseCls}-{ui} {cls} {cls}-{ui} {extraCls} ','{childElCls}"<tpl if="triggerStyle"> style="{triggerStyle}"</tpl>>',"{[values.$trigger.renderBody(values)]}","</div>"],statics:{weightComparator:function(a,b){return a.weight-b.weight}},constructor:function(b){var c=this,a;Ext.apply(c,b);if(c.compat4Mode){a=c.cls;c.focusCls=[c.focusCls,a+"-focus"];c.overCls=[c.overCls,a+"-over"];c.clickCls=[c.clickCls,a+"-click"]}},afterFieldRender:function(){this.initEvents()},destroy:function(){var a=this,b=a.clickRepeater;if(b){b.destroy()}if(a.el){a.el.destroy()}a.el=null;a.isDestroyed=true},getBodyRenderData:Ext.emptyFn,getEl:function(){return this.el||null},getStateEl:function(){return this.el},hide:function(){var b=this,a=b.el;b.hidden=true;if(a){a.hide()}},initEvents:function(){var d=this,a=d.isFieldEnabled,c=d.getStateEl(),b=d.el;c.addClsOnOver(d.overCls,a,d);c.addClsOnClick(d.clickCls,a,d);if(d.repeatClick){d.clickRepeater=new Ext.util.ClickRepeater(b,{preventDefault:true,handler:d.onClick,listeners:{mouseup:d.onMouseUp,scope:d},scope:d})}else{d.field.mon(b,{click:d.onClick,mouseup:d.onMouseUp,scope:d})}},isFieldEnabled:function(){return !this.field.disabled},isVisible:function(){var a=this,c=a.field,b=false;if(a.hidden||!c||!a.rendered||a.isDestroyed){b=true}return !b},onClick:function(){var c=this,a=arguments,g=c.clickRepeater?a[1]:a[0],b=c.handler,d=c.field;if(b&&!d.readOnly&&c.isFieldEnabled()){Ext.callback(c.handler,c.scope,[d,c,g],0,d)}},resolveListenerScope:function(a){return this.field.resolveListenerScope(a)},onMouseUp:function(){if(this.focusFieldOnClick){this.field.inputEl.focus()}},onFieldBlur:function(){this.getStateEl().removeCls(this.focusCls)},onFieldFocus:function(){this.getStateEl().addCls(this.focusCls)},onFieldRender:function(){var b=this,a=b.el=b.field.triggerWrap.selectNode("#"+b.domId,false);a.setVisibilityMode(Ext.Element.DISPLAY);b.rendered=true},renderBody:function(b){var a=this,c=a.bodyTpl;Ext.apply(b,a.getBodyRenderData());return c?Ext.XTemplate.getTpl(a,"bodyTpl").apply(b):""},renderTrigger:function(a){var c=this,b=c.width,d=c.hidden?"display:none;":"";if(b){d+="width:"+b}return Ext.XTemplate.getTpl(c,"renderTpl").apply({$trigger:c,fieldData:a,ui:a.ui,childElCls:a.childElCls,triggerId:c.domId=c.field.id+"-trigger-"+c.id,cls:c.cls,triggerStyle:d,extraCls:c.extraCls,baseCls:c.baseCls})},setHidden:function(a){if(a!==this.hidden){this[a?"hide":"show"]()}},setVisible:function(a){this.setHidden(!a)},show:function(){var b=this,a=b.el;b.hidden=false;if(a){a.show()}}},1,0,0,0,["trigger.trigger"],[[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable]],[Ext.form.trigger,"Trigger"],0));(Ext.cmd.derive("Ext.form.field.Text",Ext.form.field.Base,{alternateClassName:["Ext.form.TextField","Ext.form.Text"],config:{hideTrigger:false,triggers:undefined},growMin:30,growMax:800,growAppend:"W",allowBlank:true,validateBlank:false,allowOnlyWhitespace:true,minLength:0,maxLength:Number.MAX_VALUE,minLengthText:"The minimum length for this field is {0}",maxLengthText:"The maximum length for this field is {0}",blankText:"This field is required",regexText:"",emptyCls:Ext.baseCSSPrefix+"form-empty-field",requiredCls:Ext.baseCSSPrefix+"form-required-field",valueContainsPlaceholder:false,ariaRole:"textbox",editable:true,repeatTriggerClick:false,triggerWrapCls:Ext.baseCSSPrefix+"form-trigger-wrap",triggerWrapFocusCls:Ext.baseCSSPrefix+"form-trigger-wrap-focus",triggerWrapInvalidCls:Ext.baseCSSPrefix+"form-trigger-wrap-invalid",fieldBodyCls:Ext.baseCSSPrefix+"form-text-field-body",inputWrapCls:Ext.baseCSSPrefix+"form-text-wrap",inputWrapFocusCls:Ext.baseCSSPrefix+"form-text-wrap-focus",inputWrapInvalidCls:Ext.baseCSSPrefix+"form-text-wrap-invalid",growCls:Ext.baseCSSPrefix+"form-text-grow",monitorTab:true,mimicing:false,childEls:["triggerWrap","inputWrap"],preSubTpl:['<div id="{cmpId}-triggerWrap" data-ref="triggerWrap" class="{triggerWrapCls} {triggerWrapCls}-{ui}">','<div id={cmpId}-inputWrap data-ref="inputWrap" class="{inputWrapCls} {inputWrapCls}-{ui}">'],postSubTpl:["</div>",'<tpl for="triggers">{[values.renderTrigger(parent)]}</tpl>',"</div>"],initComponent:function(){var b=this,a=b.emptyCls;if(b.allowOnlyWhitespace===false){b.allowBlank=false}if(b.size){b.defaultBodyWidth=b.size*6.5+20}if(!b.onTrigger1Click){b.onTrigger1Click=b.onTriggerClick}Ext.form.field.Base.prototype.initComponent.call(this);b.setReadOnly(b.readOnly);b.fieldFocusCls=b.baseCls+"-focus";b.emptyUICls=a+" "+a+"-"+b.ui;b.addStateEvents("change");b.setGrowSizePolicy()},setGrowSizePolicy:function(){if(this.grow){this.shrinkWrap|=1}},initEvents:function(){var b=this,a=b.inputEl;this.mon(Ext.GlobalEvents,"beforefocus",this.onOtherFocus,this);Ext.form.field.Base.prototype.initEvents.call(this);if(b.selectOnFocus||b.emptyText){b.mon(a,"mousedown",b.onMouseDown,b)}if(b.maskRe||(b.vtype&&b.disableKeyFilter!==true&&(b.maskRe=Ext.form.field.VTypes[b.vtype+"Mask"]))){b.mon(a,"keypress",b.filterKeys,b)}if(b.enableKeyEvents){b.mon(a,{scope:b,keyup:b.onKeyUp,keydown:b.onKeyDown,keypress:b.onKeyPress})}},isEqual:function(b,a){return this.isEqualAsString(b,a)},onChange:function(b,a){Ext.form.field.Field.prototype.onChange.apply(this,arguments);this.autoSize()},getSubTplData:function(){var b=this,c=b.getRawValue(),e=b.emptyText&&c.length<1,a=b.maxLength,d;if(b.enforceMaxLength){if(a===Number.MAX_VALUE){a=undefined}}else{a=undefined}if(e){if(Ext.supports.Placeholder){d=b.emptyText}else{c=b.emptyText;b.valueContainsPlaceholder=true}}return Ext.apply(Ext.form.field.Base.prototype.getSubTplData.call(this),{triggerWrapCls:b.triggerWrapCls,inputWrapCls:b.inputWrapCls,triggers:b.orderedTriggers,maxLength:a,readOnly:!b.editable||b.readOnly,placeholder:d,value:c,fieldCls:b.fieldCls+((e&&(d||c))?" "+b.emptyUICls:"")+(b.allowBlank?"":" "+b.requiredCls)})},onRender:function(){var c=this,b=c.getTriggers(),d=[],e,a;if(Ext.supports.FixedTableWidthBug){c.el._needsTableWidthFix=true}Ext.form.field.Base.prototype.onRender.call(this);if(b){this.invokeTriggers("onFieldRender");for(e in b){d.push(b[e].el)}a=c.triggerEl=c.triggerCell=new Ext.CompositeElement(d,true)}c.inputCell=c.inputWrap},afterRender:function(){var a=this;a.autoSize();Ext.util.Renderable.prototype.afterRender.call(this);this.invokeTriggers("afterFieldRender")},onMouseDown:function(){var a=this;if(!a.hasFocus){a.mon(a.inputEl,"mouseup",Ext.emptyFn,a,{single:true,preventDefault:true})}},applyTriggers:function(h){var j=this,c=j.getHideTrigger(),l=j.readOnly,m=j.orderedTriggers=[],k=j.repeatTriggerClick,b,g,d,a,e;if(!h){h={};if(j.triggerCls&&!j.trigger1Cls){j.trigger1Cls=j.triggerCls}for(e=1;a=j["trigger"+e+"Cls"];e++){h["trigger"+e]={cls:a,extraCls:Ext.baseCSSPrefix+"trigger-index-"+e,handler:"onTrigger"+e+"Click",compat4Mode:true,scope:j}}}for(b in h){if(h.hasOwnProperty(b)){g=h[b];g.field=j;g.id=b;if((l&&g.hideOnReadOnly!==false)||(c&&g.hidden!==false)){g.hidden=true}if(k&&(g.repeatClick!==false)){g.repeatClick=true}d=h[b]=Ext.form.trigger.Trigger.create(g);m.push(d)}}Ext.Array.sort(m,Ext.form.trigger.Trigger.weightComparator);return h},invokeTriggers:function(a,c){var e=this,d=e.getTriggers(),g,b;if(d){for(g in d){if(d.hasOwnProperty(g)){b=d[g];b[a].apply(b,c||[])}}}},getTrigger:function(a){return this.getTriggers()[a]},updateHideTrigger:function(a){if(this.rendered){this.invokeTriggers(a?"hide":"show")}},setEditable:function(a){var b=this;b.editable=a;if(b.rendered){b.setReadOnlyAttr(!a||b.readOnly)}},setReadOnly:function(g){var d=this,c=d.getTriggers(),b=d.getHideTrigger(),a,e;g=!!g;Ext.form.field.Base.prototype.setReadOnly.apply(this,[g]);if(d.rendered){d.setReadOnlyAttr(g||!d.editable);if(c){for(e in c){a=c[e];if(a.hideOnReadOnly===true||(a.hideOnReadOnly!==false&&!b)){a[g?"hide":"show"].call(a)}}}}},setReadOnlyAttr:function(d){var b=this,a="readonly",c=b.inputEl.dom;if(d){c.setAttribute(a,a)}else{c.removeAttribute(a)}},processRawValue:function(b){var a=this,d=a.stripCharsRe,c;if(d){c=b.replace(d,"");if(c!==b){a.setRawValue(c);b=c}}return b},onDisable:function(){Ext.form.field.Base.prototype.onDisable.call(this);if(Ext.isIE){this.inputEl.dom.unselectable="on"}},onEnable:function(){Ext.form.field.Base.prototype.onEnable.call(this);if(Ext.isIE){this.inputEl.dom.unselectable=""}},onKeyDown:function(a){this.fireEvent("keydown",this,a)},onKeyUp:function(a){this.fireEvent("keyup",this,a)},onKeyPress:function(a){this.fireEvent("keypress",this,a)},reset:function(){Ext.form.field.Field.prototype.reset.call(this);this.applyEmptyText()},applyEmptyText:function(){var b=this,a=b.emptyText,c;if(b.rendered&&a){c=b.getRawValue().length<1&&!b.hasFocus;if(Ext.supports.Placeholder){b.inputEl.dom.placeholder=a}else{if(c){b.setRawValue(a);b.valueContainsPlaceholder=true}}if(c){b.inputEl.addCls(b.emptyUICls)}b.autoSize()}},afterFirstLayout:function(){Ext.util.Renderable.prototype.afterFirstLayout.call(this);if(Ext.isIE&&this.disabled){var a=this.inputEl;if(a){a.dom.unselectable="on"}}},toggleInvalidCls:function(a){var b=a?"addCls":"removeCls";Ext.form.Labelable.prototype.toggleInvalidCls.call(this);this.triggerWrap[b](this.triggerWrapInvalidCls);this.inputWrap[b](this.inputWrapInvalidCls)},beforeFocus:function(){var b=this,c=b.inputEl,a=b.emptyText,d;Ext.Component.prototype.beforeFocus.apply(this,arguments);if((a&&!Ext.supports.Placeholder)&&(c.dom.value===b.emptyText&&b.valueContainsPlaceholder)){b.setRawValue("");d=true;c.removeCls(b.emptyUICls);b.valueContainsPlaceholder=false}else{if(Ext.supports.Placeholder){c.removeCls(b.emptyUICls)}}if(b.selectOnFocus||d){if(Ext.isWebKit){if(!b.inputFocusTask){b.inputFocusTask=new Ext.util.DelayedTask(b.focusInput,b)}b.inputFocusTask.delay(1)}else{b.focusInput()}}},focusInput:function(){var a=this.inputEl;if(a){a=a.dom;if(a){a.select()}}},onFocus:function(b){var a=this;a.otherFocused=false;Ext.Component.prototype.onFocus.apply(this,arguments);if(a.emptyText){a.autoSize()}if(!a.mimicing){a.addCls(a.fieldFocusCls);a.triggerWrap.addCls(a.triggerWrapFocusCls);a.inputWrap.addCls(a.inputWrapFocusCls);a.invokeTriggers("onFieldFocus",[b]);a.mimicing=true;a.mon(Ext.getDoc(),"mousedown",a.mimicBlur,a,{delay:10});if(a.monitorTab){a.on("specialkey",a.checkTab,a)}}},onBlur:function(){if(this.blurring||this.otherFocused){this.triggerBlur();this.otherFocused=false}},onOtherFocus:function(a){this.otherFocused=(this.hasFocus&&!this.bodyEl.contains(a))},checkTab:function(a,b){if(!this.ignoreMonitorTab&&b.getKey()===b.TAB){this.triggerBlur()}},mimicBlur:function(a){if(!this.isDestroyed&&!this.bodyEl.contains(a.target)){this.triggerBlur(a)}},triggerBlur:function(b){var a=this;a.mimicing=false;a.mun(Ext.getDoc(),"mousedown",a.mimicBlur,a);if(a.monitorTab&&a.inputEl){a.un("specialkey",a.checkTab,a)}Ext.form.field.Text.superclass.onBlur.call(a,b);a.removeCls(a.fieldFocusCls);a.triggerWrap.removeCls(a.triggerWrapFocusCls);a.inputWrap.removeCls(a.inputWrapFocusCls);a.invokeTriggers("onFieldBlur",[b])},postBlur:function(){var a=this.inputFocusTask;Ext.Component.prototype.postBlur.apply(this,arguments);this.applyEmptyText();if(a){a.cancel()}},filterKeys:function(c){if(c.ctrlKey&&!c.altKey){return}var b=c.getKey(),a=String.fromCharCode(c.getCharCode());if((Ext.isGecko||Ext.isOpera)&&(c.isNavKeyPress()||b===c.BACKSPACE||(b===c.DELETE&&c.button===-1))){return}if((!Ext.isGecko&&!Ext.isOpera)&&c.isSpecialKey()&&!a){return}if(!this.maskRe.test(a)){c.stopEvent()}},getState:function(){return this.addPropertyToState(Ext.Component.prototype.getState.call(this),"value")},applyState:function(a){Ext.state.Stateful.prototype.applyState.apply(this,arguments);if(a.hasOwnProperty("value")){this.setValue(a.value)}},getRawValue:function(){var b=this,a=Ext.form.field.Base.prototype.getRawValue.call(this);if(a===b.emptyText&&b.valueContainsPlaceholder){a=""}return a},setValue:function(b){var a=this,c=a.inputEl;if(c&&a.emptyText&&!Ext.isEmpty(b)){c.removeCls(a.emptyUICls);a.valueContainsPlaceholder=false}Ext.form.field.Base.prototype.setValue.apply(this,arguments);a.applyEmptyText();return a},getErrors:function(m){var g=this,k=Ext.form.field.Field.prototype.getErrors.apply(this,arguments),a=g.validator,d=g.vtype,h=Ext.form.field.VTypes,j=g.regex,l=Ext.String.format,b,e,c;m=m||g.processRawValue(g.getRawValue());if(Ext.isFunction(a)){b=a.call(g,m);if(b!==true){k.push(b)}}e=g.allowOnlyWhitespace?m:Ext.String.trim(m);if(e.length<1||(m===g.emptyText&&g.valueContainsPlaceholder)){if(!g.allowBlank){k.push(g.blankText)}if(!g.validateBlank){return k}c=true}if(!c&&m.length<g.minLength){k.push(l(g.minLengthText,g.minLength))}if(m.length>g.maxLength){k.push(l(g.maxLengthText,g.maxLength))}if(d){if(!h[d](m,g)){k.push(g.vtypeText||h[d+"Text"])}}if(j&&!j.test(m)){k.push(g.regexText||g.invalidText)}return k},selectText:function(j,a){var h=this,c=h.getRawValue(),d=true,g=h.inputEl.dom,e,b;if(c.length>0){j=j===e?0:j;a=a===e?c.length:a;if(g.setSelectionRange){g.setSelectionRange(j,a)}else{if(g.createTextRange){b=g.createTextRange();b.moveStart("character",j);b.moveEnd("character",a-c.length);b.select()}}d=Ext.isGecko||Ext.isOpera}if(d){h.focus()}},autoSize:function(){var e=this,d,k,b,h,j,c,a,g;if(e.grow&&e.rendered){j=e.inputEl;d=e.getTriggers();h=0;g=Ext.util.Format.htmlEncode(j.dom.value||(e.hasFocus?"":e.emptyText)||"");g+=e.growAppend;for(k in d){h+=d[k].el.getWidth()}a=j.getTextWidth(g)+h+e.inputWrap.getBorderWidth("lr")+e.triggerWrap.getBorderWidth("lr");a=Math.min(Math.max(a,e.growMin),e.growMax);e.bodyEl.setWidth(a);e.updateLayout();e.fireEvent("autosize",e,a)}},onDestroy:function(){var a=this;a.invokeTriggers("destroy");Ext.destroy(a.triggerRepeater);Ext.Component.prototype.onDestroy.call(this);if(a.inputFocusTask){a.inputFocusTask.cancel();a.inputFocusTask=null}},onTriggerClick:Ext.emptyFn,privates:{getTdType:function(){return"textfield"}},deprecated:{5:{methods:{getTriggerWidth:function(){var b=this.getTriggers(),a=0,c;if(b&&this.rendered){for(c in b){if(b.hasOwnProperty(c)){a+=b[c].el.getWidth()}}}return a}}}}},0,["textfield"],["box","component","field","textfield"],{box:true,component:true,field:true,textfield:true},["widget.textfield"],0,[Ext.form.field,"Text",Ext.form,"TextField",Ext.form,"Text"],0));(Ext.cmd.derive("Ext.app.bindinspector.ComponentList",Ext.tree.Panel,{rootVisible:false,title:"Component Tree",hideHeaders:true,bindingsIconCls:Ext.baseCSSPrefix+"bindings-icon",vmIconCls:Ext.baseCSSPrefix+"vm-icon",missingDataCls:Ext.baseCSSPrefix+"bindinspector-missing-data",filterVisibleCls:Ext.baseCSSPrefix+"bindinspector-filter-visible",lastItemCls:Ext.baseCSSPrefix+"bindinspector-last-item",bindingsIcon:"\u260d",vmIcon:"\u2636",initComponent:function(){var b=this,a=[];b.viewConfig={toggleOnDblClick:false,getRowClass:function(d,g,h,e){var c=[];if(d.get("filtervisible")){c.push(b.filterVisibleCls)}if(d.get("sansData")){c.push(b.missingDataCls)}if(g===e.getCount()-1){c.push(b.lastItemCls)}return c.join(" ")}};Ext.Array.forEach(b.components,function(c){a.push(b.buildNode(c))},b);b.store={model:b.Model,root:{expanded:true,children:a}};b.columns=[{itemId:"srcVMIndicator",width:40,hidden:true,renderer:b.srcVMIndicator,scope:b},{xtype:"treecolumn",dataIndex:"text",flex:1}];b.dockedItems=[{xtype:"toolbar",itemId:"queryFieldTb",dock:"top",items:[{xtype:"textfield",reference:"queryField",itemId:"queryField",emptyText:"simple search by reference / ID or use a component query...",flex:1,triggers:{clear:{cls:Ext.baseCSSPrefix+"form-clear-trigger",handler:function(e){var c=e.up("treepanel"),d=c.store;e.reset();c.clearComponentFilter();e.focus()}}},listeners:{change:{fn:b.filterComponentTree,buffer:250,scope:b},afterrender:{fn:function(d){var c=d.up("toolbar").getEl();d.mon(c,"mouseenter",function(){var h=b.bindingsTip,g,e,j;h.stopAnimation();h.update("<b>Simple Search</b><br>Enter the string matching the reference or ID of the target component<hr><b>Component Query</b><br>Enter a component query string to find any items matching the query");h.setTarget(c);h.show();e=h.getX();j=h.getY();g=h.getAlignToXY(c,"l-r");h.animate({from:{opacity:0,x:g[0]+20,y:g[1]},to:{opacity:1,x:g[0]+10,y:g[1]}})})},scope:b}}}]},{xtype:"toolbar",cls:Ext.baseCSSPrefix+"vm-results-tb",itemId:"vmQueryResultsTb",hidden:true,dock:"top",defaultButtonUI:"default",items:["->",{text:"Clear VM Filter",handler:function(){console.log(this.up("#vmQueryResultsTb"));var c=this.up("#vmQueryResultsTb"),e=c.up("bindinspector-componentlist"),g=e.down("#queryFieldTb"),d=g.down("#queryField");c.hide();g.show();e.clearVMSearchIndicators();d.setValue(d.lastValue);e.filterComponentTree(null,d.lastValue)}}]}];Ext.tree.Panel.prototype.initComponent.call(this);b.getView().on("itemdblclick",b.onItemDblclick,b);b.on("select",b.onItemSelect,b);b.bindingsTip=Ext.create("Ext.tip.ToolTip",{renderTo:document.body,anchor:"left",cls:Ext.baseCSSPrefix+"componentlist-tip",bodyPadding:12});b.getView().on("itemmouseenter",b.showBindingsTip,b)},clearVMSearchIndicators:function(){var a=this.indicatedVM;Ext.suspendLayouts();if(a){Ext.Array.forEach(a,function(b){b.set("isSrcVM",false)})}this.down("#srcVMIndicator").hide();Ext.resumeLayouts(true);this.indicatedVM=null},srcVMIndicator:function(h,j,b){var e=b.get("isSrcVM"),g="",d,a,k,c;if(e){d=this.up("bindinspector-container").down("bindinspector-viewmodeldetail");a=d.getFirstTierRec(e);k=a.get("name");if(a!==e){g+="Root data node: &nbsp;<span class='"+Ext.baseCSSPrefix+"binding-tip-descriptor'>"+k+"</span><hr>"}c=a===e?a:e;g+=c.get("name")+":";g+="<br>&nbsp;&nbsp;&nbsp;&nbsp;";g+="<span class='"+Ext.baseCSSPrefix+"binding-tip-value'>"+Ext.app.bindinspector.Util.valueRenderer(c.get("value"))+"</span>";j.tdCls=Ext.baseCSSPrefix+"bindindicator-vm-src";j.tdAttr='data-qclass="'+Ext.baseCSSPrefix+'componentlist-tip" data-qtip="'+g+'"'}},onDestroy:function(){this.bindingsTip.destroy();Ext.panel.Table.prototype.onDestroy.call(this)},showBindingsTip:function(k,d,m,g,h){var j=this,l=j.bindingsTip,c=d.get("sansData"),b,a;l.stopAnimation();if(d.get("hasBindings")){b=j.ownerCt.env.getCmp(d.get("id")).bindings;a=[];Ext.Object.each(b,function(n,s,r){var p=n+': <span class="'+Ext.baseCSSPrefix+'binding-tip-descriptor">'+s.descriptor+"</span><br>",q=s.value,e;if(Ext.isString(q)){e=q}else{if(Ext.isObject(q)){if(q.isStore===true){e="Store {"+q.entityName+"}"}else{if(q.isModel===true){e="Model {"+q.entityName+"}"}}}}p+='<span class="'+Ext.baseCSSPrefix+'binding-tip-value">'+e+"</span>";a.push(p)});a=a.join("<hr>");if(c){a+="<hr>";Ext.Array.forEach(c,function(e){a+='<div class="'+Ext.baseCSSPrefix+'binding-missing-data">Missing data: '+e+"</div>"})}l.update(a);l.setTarget(m);l.show();l.alignTo(m,"l-r",[20,0]);l.animate({from:{opacity:0},to:{opacity:1,x:l.getX()-10}})}},filterComponentTree:function(n,g){var p=this,n=p.down("#queryField"),c=g||n.getValue(),o=p.store,b=/[\s>\[\]=()^'"~$@*:+#,]/g,d=Ext.isArray(c),a=d?c:[],j=[],m,k,h;if(Ext.isString(c)){m=b.test(Ext.String.trim(c))}if(c.length>0){p.filteredComponents=[];if(m){try{j=Ext.ComponentQuery.query(c)}catch(l){}k=j.length;for(h=0;h<k;h++){a.push(j[h].id)}}o.suspendEvents();o.filter({filterFn:function(s){var q=s.childNodes,r=q&&q.length,t=false,u,e;if(m||d){t=Ext.Array.contains(a,s.get("id"))}else{t=s.get("text").indexOf(c)>-1}s.set("filtervisible",t);if(t){p.filteredComponents.push(s)}for(e=0;e<r;e++){if(q[e].get("visible")){t=true}}return t},id:"queryFilter"});o.resumeEvents();p.getView().refresh()}else{p.clearComponentFilter()}},clearComponentFilter:function(){var b=this,c=b.store,d=b.filteredComponents||[],a=d.length,e=0;for(;e<a;e++){d[e].set("filtervisible",false)}c.clearFilter()},buildNode:function(q){var r=this,n=r.getRefOwner(),b=q.items,d=q.viewModel,s=q.bindings,u=!!q.bindings,c=[],p=[],k={},j,m,l,h,g,e,t,a;if(d){c.push('<span class="'+r.vmIconCls+'">'+r.vmIcon+"</span>");n.buildVMDataMap(d)}if(u){c.push('<span class="'+r.bindingsIconCls+'">'+r.bindingsIcon+"</span>");for(t in s){j=s[t];if(j.descriptor&&Ext.isEmpty(j.value)){p.push(k[t]=j.descriptor)}}a=q.bindData=Ext.app.bindinspector.Util.buildBindData(s)}if(p.length===0){p=undefined}e=q.reference?"<b>["+q.reference+"]</b> &bull; ":"";h={id:q.id,text:e+q.id+(c.length?(" "+c.join(" ")):""),hasViewModel:!!d,hasBindings:u,hasDeepBindings:u,reference:q.reference,sansData:p,bindData:a,children:[]};if(b){for(l=0,m=b.length;l<m;++l){g=r.buildNode(b[l]);h.hasDeepBindings=h.hasDeepBindings||g.hasDeepBindings;if(g.hasDeepBindings){h.children.push(g)}}}if(h.children.length){h.expanded=true;h.leaf=false}else{h.leaf=true}return h},onItemDblclick:function(a,b){this.fireEvent("componentdblclick",this,b)},onItemSelect:function(a,c){var b=this.getView().getNode(c);this.fireEvent("componentselect",this,c,b)}},0,["bindinspector-componentlist"],["bindinspector-componentlist","box","component","container","panel","tablepanel","treepanel"],{"bindinspector-componentlist":true,box:true,component:true,container:true,panel:true,tablepanel:true,treepanel:true},["widget.bindinspector-componentlist"],0,[Ext.app.bindinspector,"ComponentList"],function(){this.prototype.Model=Ext.define(null,{extend:"Ext.data.TreeModel",fields:["hasViewModel","hasBindings","reference","hasDeepBindings","reference","sansData","bindData","isSrcVM"]})}));(Ext.cmd.derive("Ext.resizer.Splitter",Ext.Component,{childEls:["collapseEl"],renderTpl:['<tpl if="collapsible===true">','<div id="{id}-collapseEl" data-ref="collapseEl" role="presentation" class="',Ext.baseCSSPrefix,"collapse-el ",Ext.baseCSSPrefix,'layout-split-{collapseDir}{childElCls}">&#160;',"</div>","</tpl>"],isSplitter:true,baseCls:Ext.baseCSSPrefix+"splitter",collapsedClsInternal:Ext.baseCSSPrefix+"splitter-collapsed",canResize:true,collapsible:null,collapseOnDblClick:true,defaultSplitMin:40,defaultSplitMax:1000,collapseTarget:"next",horizontal:false,vertical:false,size:5,tracker:null,ariaRole:"separator",getTrackerConfig:function(){return Ext.apply({xclass:"Ext.resizer.SplitterTracker",el:this.el,splitter:this},this.tracker)},beforeRender:function(){var b=this,c=b.getCollapseTarget(),a=b.collapsible;Ext.util.Renderable.prototype.beforeRender.call(this);if(c.collapsed){b.addCls(b.collapsedClsInternal)}if(!b.canResize){b.addCls(b.baseCls+"-noresize")}Ext.applyIf(b.renderData,{collapseDir:b.getCollapseDirection(),collapsible:(a!==null)?a:c.collapsible});b.protoEl.unselectable()},onRender:function(){var c=this,b,a;Ext.util.Renderable.prototype.onRender.apply(this,arguments);if(c.performCollapse!==false){if(c.renderData.collapsible){c.mon(c.collapseEl,"click",c.toggleTargetCmp,c)}if(c.collapseOnDblClick){c.mon(c.el,"dblclick",c.toggleTargetCmp,c)}}c.mon(c.getCollapseTarget(),{collapse:c.onTargetCollapse,expand:c.onTargetExpand,beforeexpand:c.onBeforeTargetExpand,beforecollapse:c.onBeforeTargetCollapse,scope:c});if(c.canResize){c.tracker=Ext.create(c.getTrackerConfig());c.relayEvents(c.tracker,["beforedragstart","dragstart","dragend"])}b=c.collapseEl;if(b){b.lastCollapseDirCls=c.collapseDirProps[c.collapseDirection].cls}},getCollapseDirection:function(){var g=this,c=g.collapseDirection,e,a,b,d;if(!c){e=g.collapseTarget;if(e.isComponent){c=e.collapseDirection}if(!c){d=g.ownerCt.layout.type;if(e.isComponent){b=g.ownerCt.items;a=Number(b.indexOf(e)===b.indexOf(g)-1)<<1|Number(d==="hbox")}else{a=Number(g.collapseTarget==="prev")<<1|Number(d==="hbox")}c=["bottom","right","top","left"][a]}g.collapseDirection=c}g.setOrientation((c==="top"||c==="bottom")?"horizontal":"vertical");return c},getCollapseTarget:function(){var a=this;return a.collapseTarget.isComponent?a.collapseTarget:a.collapseTarget==="prev"?a.previousSibling():a.nextSibling()},setCollapseEl:function(b){var a=this.collapseEl;if(a){a.setDisplayed(b)}},onBeforeTargetExpand:function(a){this.setCollapseEl("none")},onBeforeTargetCollapse:function(){this.setCollapseEl("none")},onTargetCollapse:function(a){this.el.addCls([this.collapsedClsInternal,this.collapsedCls]);this.setCollapseEl("")},onTargetExpand:function(a){this.el.removeCls([this.collapsedClsInternal,this.collapsedCls]);this.setCollapseEl("")},collapseDirProps:{top:{cls:Ext.baseCSSPrefix+"layout-split-top"},right:{cls:Ext.baseCSSPrefix+"layout-split-right"},bottom:{cls:Ext.baseCSSPrefix+"layout-split-bottom"},left:{cls:Ext.baseCSSPrefix+"layout-split-left"}},orientationProps:{horizontal:{opposite:"vertical",fixedAxis:"height",stretchedAxis:"width"},vertical:{opposite:"horizontal",fixedAxis:"width",stretchedAxis:"height"}},applyCollapseDirection:function(){var c=this,b=c.collapseEl,d=c.collapseDirProps[c.collapseDirection],a;if(b){a=b.lastCollapseDirCls;if(a){b.removeCls(a)}b.addCls(b.lastCollapseDirCls=d.cls)}},applyOrientation:function(){var e=this,c=e.orientation,d=e.orientationProps[c],g=e.size,b=d.fixedAxis,h=d.stretchedAxis,a=e.baseCls+"-";e[c]=true;e[d.opposite]=false;if(!e.hasOwnProperty(b)||e[b]==="100%"){e[b]=g}if(!e.hasOwnProperty(h)||e[h]===g){e[h]="100%"}e.removeCls(a+d.opposite);e.addCls(a+c)},setOrientation:function(a){var b=this;if(b.orientation!==a){b.orientation=a;b.applyOrientation()}},updateOrientation:function(){delete this.collapseDirection;this.getCollapseDirection();this.applyCollapseDirection()},toggleTargetCmp:function(d,b){var c=this.getCollapseTarget(),g=c.placeholder,a;if(Ext.isFunction(c.expand)&&Ext.isFunction(c.collapse)){if(g&&!g.hidden){a=true}else{a=!c.hidden}if(a){if(c.collapsed){c.expand()}else{if(c.collapseDirection){c.collapse()}else{c.collapse(this.renderData.collapseDir)}}}}},setSize:function(){var a=this;Ext.Component.prototype.setSize.apply(this,arguments);if(Ext.isIE&&a.el){a.el.repaint()}},beforeDestroy:function(){Ext.destroy(this.tracker);Ext.Component.prototype.beforeDestroy.call(this)}},0,["splitter"],["box","component","splitter"],{box:true,component:true,splitter:true},["widget.splitter"],0,[Ext.resizer,"Splitter"],0));(Ext.cmd.derive("Ext.resizer.BorderSplitter",Ext.resizer.Splitter,{collapseTarget:null,getTrackerConfig:function(){var a=Ext.resizer.Splitter.prototype.getTrackerConfig.call(this);a.xclass="Ext.resizer.BorderSplitterTracker";return a}},0,["bordersplitter"],["bordersplitter","box","component","splitter"],{bordersplitter:true,box:true,component:true,splitter:true},["widget.bordersplitter"],0,[Ext.resizer,"BorderSplitter"],0));(Ext.cmd.derive("Ext.layout.container.Border",Ext.layout.container.Container,{alternateClassName:"Ext.layout.BorderLayout",targetCls:Ext.baseCSSPrefix+"border-layout-ct",itemCls:[Ext.baseCSSPrefix+"border-item",Ext.baseCSSPrefix+"box-item"],type:"border",isBorderLayout:true,padding:undefined,percentageRe:/(\d+)%/,horzPositionProp:"left",padOnContainerProp:"left",padNotOnContainerProp:"right",axisProps:{horz:{borderBegin:"west",borderEnd:"east",horizontal:true,posProp:"x",sizeProp:"width",sizePropCap:"Width"},vert:{borderBegin:"north",borderEnd:"south",horizontal:false,posProp:"y",sizeProp:"height",sizePropCap:"Height"}},centerRegion:null,manageMargins:true,panelCollapseAnimate:true,panelCollapseMode:"placeholder",regionWeights:{north:20,south:10,center:0,west:-10,east:-20},beginAxis:function(m,b,w){var u=this,c=u.axisProps[w],r=!c.horizontal,l=c.sizeProp,p=0,a=m.childItems,g=a.length,t,q,o,h,s,e,k,n,d,v,j;for(q=0;q<g;++q){o=a[q];s=o.target;o.layoutPos={};if(s.region){o.region=e=s.region;o.isCenter=s.isCenter;o.isHorz=s.isHorz;o.isVert=s.isVert;o.weight=s.weight||u.regionWeights[e]||0;s.weight=o.weight;b[s.id]=o;if(s.isCenter){t=o;h=s.flex;m.centerRegion=t;continue}if(r!==o.isVert){continue}o.reverseWeighting=(e==c.borderEnd);n=s[l];d=typeof n;if(!s.collapsed){if(d=="string"&&(k=u.percentageRe.exec(n))){o.percentage=parseInt(k[1],10)}else{if(s.flex){p+=o.flex=s.flex}}}}}if(t){v=t.target;if((j=v.placeholderFor)){if(!h&&r===j.collapsedVertical()){h=0;t.collapseAxis=w}}else{if(v.collapsed&&(r===v.collapsedVertical())){h=0;t.collapseAxis=w}}}if(h==null){h=1}p+=h;return Ext.apply({before:r?"top":"left",totalFlex:p},c)},beginLayout:function(d){var l=this,k=l.getLayoutItems(),e=l.padding,m=typeof e,p=false,q,o,b,h,g,a,c,j,n;if(e){if(m=="string"||m=="number"){e=Ext.util.Format.parseBox(e)}}else{e=d.getEl("getTargetEl").getPaddingInfo();p=true}d.outerPad=e;d.padOnContainer=p;for(h=0,b=k.length;h<b;++h){o=k[h];a=l.getSplitterTarget(o);if(a){c=undefined;j=!!o.hidden;if(!a.split){if(a.isCollapsingOrExpanding){c=!!a.collapsed}}else{if(j!==a.hidden){c=!a.hidden}}if(c){o.show()}else{if(c===false){o.hide()}}}}Ext.layout.container.Container.prototype.beginLayout.apply(this,arguments);k=d.childItems;b=k.length;g={};d.borderAxisHorz=l.beginAxis(d,g,"horz");d.borderAxisVert=l.beginAxis(d,g,"vert");for(h=0;h<b;++h){q=k[h];a=l.getSplitterTarget(q.target);if(a){n=g[a.id];if(!n){n=d.getEl(a.el,l);n.region=a.region}q.collapseTarget=a=n;q.weight=a.weight;q.reverseWeighting=a.reverseWeighting;a.splitter=q;q.isHorz=a.isHorz;q.isVert=a.isVert}}l.sortWeightedItems(k,"reverseWeighting");l.setupSplitterNeighbors(k)},calculate:function(d){var m=this,a=m.getContainerSize(d),j=d.childItems,c=j.length,b=d.borderAxisHorz,k=d.borderAxisVert,e=d.outerPad,o=d.padOnContainer,h,q,l,p,n,g;b.begin=e[m.padOnContainerProp];k.begin=e.top;n=b.end=b.flexSpace=a.width+(o?e[m.padOnContainerProp]:-e[m.padNotOnContainerProp]);g=k.end=k.flexSpace=a.height+(o?e.top:-e.bottom);for(h=0;h<c;++h){q=j[h];l=q.getMarginInfo();if(q.isHorz||q.isCenter){b.addUnflexed(l.width);n-=l.width}if(q.isVert||q.isCenter){k.addUnflexed(l.height);g-=l.height}if(!q.flex&&!q.percentage){if(q.isHorz||(q.isCenter&&q.collapseAxis==="horz")){p=q.getProp("width");b.addUnflexed(p);if(q.collapseTarget){n-=p}}else{if(q.isVert||(q.isCenter&&q.collapseAxis==="vert")){p=q.getProp("height");k.addUnflexed(p);if(q.collapseTarget){g-=p}}}}}for(h=0;h<c;++h){q=j[h];l=q.getMarginInfo();if(q.percentage){if(q.isHorz){p=Math.ceil(n*q.percentage/100);p=q.setWidth(p);b.addUnflexed(p)}else{if(q.isVert){p=Math.ceil(g*q.percentage/100);p=q.setHeight(p);k.addUnflexed(p)}}}}for(h=0;h<c;++h){q=j[h];if(!q.isCenter){m.calculateChildAxis(q,b);m.calculateChildAxis(q,k)}}if(m.finishAxis(d,k)+m.finishAxis(d,b)<2){m.done=false}else{m.finishPositions(j)}},calculateChildAxis:function(m,c){var a=m.collapseTarget,h="set"+c.sizePropCap,e=c.sizeProp,d=m.getMarginInfo()[e],k,b,g,j,l;if(a){k=a.region}else{k=m.region;g=m.flex}b=k==c.borderBegin;if(!b&&k!=c.borderEnd){m[h](c.end-c.begin-d);j=c.begin}else{if(g){l=Math.ceil(c.flexSpace*(g/c.totalFlex));l=m[h](l)}else{if(m.percentage){l=m.peek(e)}else{l=m.getProp(e)}}l+=d;if(b){j=c.begin;c.begin+=l}else{c.end=j=c.end-l}}m.layoutPos[c.posProp]=j},eachItem:function(h,d,c){var g=this,a=g.getLayoutItems(),b=0,e;if(Ext.isFunction(h)){d=h;c=d}for(b;b<a.length;b++){e=a[b];if(!h||e.region===h){if(d.call(c,e)===false){break}}}},finishAxis:function(d,c){var b=c.end-c.begin,a=d.centerRegion;if(a){a["set"+c.sizePropCap](b-a.getMarginInfo()[c.sizeProp]);a.layoutPos[c.posProp]=c.begin}return Ext.isNumber(b)?1:0},finishPositions:function(e){var c=e.length,b,a,d=this.horzPositionProp;for(b=0;b<c;++b){a=e[b];a.setProp("x",a.layoutPos.x+a.marginInfo[d]);a.setProp("y",a.layoutPos.y+a.marginInfo.top)}},getLayoutItems:function(){var a=this.owner,e=(a&&a.items&&a.items.items)||[],d=e.length,b=[],c=0,g,h;for(;c<d;c++){g=e[c];h=g.placeholderFor;if(g.hidden||((!g.floated||g.isCollapsingOrExpanding===2)&&!(h&&h.isCollapsingOrExpanding===2))){b.push(g)}}return b},getPlaceholder:function(a){return a.getPlaceholder&&a.getPlaceholder()},getMaxWeight:function(a){return this.getMinMaxWeight(a)},getMinWeight:function(a){return this.getMinMaxWeight(a,true)},getMinMaxWeight:function(d,a){var b=this,c=null;b.eachItem(d,function(e){if(e.hasOwnProperty("weight")){if(c===null){c=e.weight;return}if((a&&e.weight<c)||e.weight>c){c=e.weight}}},this);return c},getSplitterTarget:function(b){var a=b.collapseTarget;if(a&&a.collapsed){return a.placeholder||a}return a},isItemBoxParent:function(a){return true},isItemShrinkWrap:function(a){return true},insertSplitter:function(d,c,g,b){var h=d.region,e=Ext.apply({xtype:"bordersplitter",collapseTarget:d,id:d.id+"-splitter",hidden:g,canResize:d.splitterResize!==false,splitterFor:d,synthetic:true},b),a=c+((h==="south"||h==="east")?0:1);if(d.collapseMode==="mini"){e.collapsedCls=d.collapsedCls}d.splitter=this.owner.add(a,e)},getMoveAfterIndex:function(b){var a=Ext.layout.container.Container.prototype.getMoveAfterIndex.apply(this,arguments);if(b.splitter){a++}return a},moveItemBefore:function(b,d){var a=this.owner,c;if(d&&d.splitter){c=d.region;if(c==="south"||c==="east"){d=d.splitter}}Ext.layout.container.Container.prototype.moveItemBefore.apply(this,[b,d])},onAdd:function(k,d){var g=this,c=k.placeholderFor,j=k.region,e,h,a,b;Ext.layout.container.Container.prototype.onAdd.apply(this,arguments);if(j){Ext.apply(k,g.regionFlags[j]);if(k.initBorderRegion){k.initBorderRegion()}e=j==="center";if(e){g.centerRegion=k}else{h=k.split;a=!!k.hidden;if(typeof h==="object"){b=h;h=true}if((k.isHorz||k.isVert)&&(h||k.collapseMode=="mini")){g.insertSplitter(k,d,a||!h,b)}}if(!e&&!k.hasOwnProperty("collapseMode")){k.collapseMode=g.panelCollapseMode}if(!k.hasOwnProperty("animCollapse")){if(k.collapseMode!=="placeholder"){k.animCollapse=false}else{k.animCollapse=g.panelCollapseAnimate}}}else{if(c){Ext.apply(k,g.regionFlags[c.region]);k.region=c.region;k.weight=c.weight}}},onDestroy:function(){this.centerRegion=null;Ext.layout.Layout.prototype.onDestroy.call(this)},onRemove:function(b,d){var e=this,j=b.region,g=b.splitter,a=e.owner,h=a.destroying,c;if(j){if(b.isCenter){e.centerRegion=null}delete b.isCenter;delete b.isHorz;delete b.isVert;if(g&&!a.destroying){a.doRemove(g,true)}delete b.splitter}Ext.layout.container.Container.prototype.onRemove.apply(this,arguments);if(!h&&!d&&b.rendered){c=b.getEl();if(c){c.setStyle("top","");c.setStyle(e.horzPositionProp,"")}}},regionMeta:{center:{splitterDelta:0},north:{splitterDelta:1},south:{splitterDelta:-1},west:{splitterDelta:1},east:{splitterDelta:-1}},regionFlags:{center:{isCenter:true,isHorz:false,isVert:false},north:{isCenter:false,isHorz:false,isVert:true,collapseDirection:"top"},south:{isCenter:false,isHorz:false,isVert:true,collapseDirection:"bottom"},west:{isCenter:false,isHorz:true,isVert:false,collapseDirection:"left"},east:{isCenter:false,isHorz:true,isVert:false,collapseDirection:"right"}},setupSplitterNeighbors:function(m){var p={},e=m.length,o=this.touchedRegions,h,g,a,l,d,k,n,b,c;for(h=0;h<e;++h){k=m[h].target;n=k.region;if(k.isCenter){a=k}else{if(n){c=o[n];for(g=0,l=c.length;g<l;++g){d=p[c[g]];if(d){d.neighbors.push(k)}}if(k.placeholderFor){b=k.placeholderFor.splitter}else{b=k.splitter}if(b){b.neighbors=[]}p[n]=b}}}if(a){c=o.center;for(g=0,l=c.length;g<l;++g){d=p[c[g]];if(d){d.neighbors.push(a)}}}},touchedRegions:{center:["north","south","east","west"],north:["north","east","west"],south:["south","east","west"],east:["east","north","south"],west:["west","north","south"]},sizePolicies:{vert:{readsWidth:0,readsHeight:1,setsWidth:1,setsHeight:0},horz:{readsWidth:1,readsHeight:0,setsWidth:0,setsHeight:1},flexAll:{readsWidth:0,readsHeight:0,setsWidth:1,setsHeight:1}},getItemSizePolicy:function(e){var d=this,a=this.sizePolicies,c,b,g,h;if(e.isCenter){h=e.placeholderFor;if(h){if(h.collapsedVertical()){return a.vert}return a.horz}if(e.collapsed){if(e.collapsedVertical()){return a.vert}return a.horz}return a.flexAll}c=e.collapseTarget;if(c){return c.isVert?a.vert:a.horz}if(e.region){if(e.isVert){b=e.height;g=a.vert}else{b=e.width;g=a.horz}if(e.flex||(typeof b=="string"&&d.percentageRe.test(b))){return a.flexAll}return g}return d.autoSizePolicy}},0,0,0,0,["layout.border"],0,[Ext.layout.container,"Border",Ext.layout,"BorderLayout"],function(){var a={addUnflexed:function(c){this.flexSpace=Math.max(this.flexSpace-c,0)}},b=this.prototype.axisProps;Ext.apply(b.horz,a);Ext.apply(b.vert,a)}));(Ext.cmd.derive("Ext.layout.container.Card",Ext.layout.container.Fit,{alternateClassName:"Ext.layout.CardLayout",type:"card",hideInactive:true,deferredRender:false,getRenderTree:function(){var a=this,b=a.getActiveItem();if(b){if(b.hasListeners.beforeactivate&&b.fireEvent("beforeactivate",b)===false){b=a.activeItem=a.owner.activeItem=null}else{if(b.hasListeners.activate){b.on({boxready:function(){b.fireEvent("activate",b)},single:true})}}if(a.deferredRender){if(b){return a.getItemsRenderTree([b])}}else{return Ext.layout.container.Container.prototype.getRenderTree.apply(this,arguments)}}},renderChildren:function(){var a=this,b=a.getActiveItem();if(!a.deferredRender){Ext.layout.container.Container.prototype.renderChildren.call(this)}else{if(b){a.renderItems([b],a.getRenderTarget())}}},isValidParent:function(c,d,a){var b=c.el?c.el.dom:Ext.getDom(c);return(b&&b.parentNode===(d.dom||d))||false},getActiveItem:function(){var b=this,a=b.parseActiveItem(b.activeItem||(b.owner&&b.owner.activeItem));if(a&&b.owner.items.indexOf(a)!=-1){b.activeItem=a}else{b.activeItem=null}return b.activeItem},parseActiveItem:function(a){if(a&&a.isComponent){return a}else{if(typeof a=="number"||a===undefined){return this.getLayoutItems()[a||0]}else{return this.owner.getComponent(a)}}},configureItem:function(a){if(a===this.getActiveItem()){a.hidden=false}else{a.hidden=true}Ext.layout.container.Container.prototype.configureItem.apply(this,arguments)},onRemove:function(a){Ext.layout.container.Container.prototype.onRemove.apply(this,arguments);if(a===this.activeItem){this.activeItem=null}},getAnimation:function(b,a){var c=(b||{}).cardSwitchAnimation;if(c===false){return false}return c||a.cardSwitchAnimation},getNext:function(){var c=arguments[0],a=this.getLayoutItems(),b=Ext.Array.indexOf(a,this.activeItem);return a[b+1]||(c?a[0]:false)},next:function(){var b=arguments[0],a=arguments[1];return this.setActiveItem(this.getNext(a),b)},getPrev:function(){var c=arguments[0],a=this.getLayoutItems(),b=Ext.Array.indexOf(a,this.activeItem);return a[b-1]||(c?a[a.length-1]:false)},prev:function(){var b=arguments[0],a=arguments[1];return this.setActiveItem(this.getPrev(a),b)},setActiveItem:function(b){var e=this,a=e.owner,d=e.activeItem,g=a.rendered,c;b=e.parseActiveItem(b);c=a.items.indexOf(b);if(c==-1){c=a.items.items.length;Ext.suspendLayouts();b=a.add(b);Ext.resumeLayouts()}if(b&&d!=b){if(b.fireEvent("beforeactivate",b,d)===false){return false}if(d&&d.fireEvent("beforedeactivate",d,b)===false){return false}if(g){Ext.suspendLayouts();if(!b.rendered){e.renderItem(b,e.getRenderTarget(),a.items.length)}if(d){if(e.hideInactive){d.hide();d.hiddenByLayout=true}d.fireEvent("deactivate",d,b)}if(b.hidden){b.show()}if(!b.hidden){e.activeItem=b}Ext.resumeLayouts(true)}else{e.activeItem=b}b.fireEvent("activate",b,d);return e.activeItem}return false}},0,0,0,0,["layout.card"],0,[Ext.layout.container,"Card",Ext.layout,"CardLayout"],0));(Ext.cmd.derive("Ext.tab.Tab",Ext.button.Button,{isTab:true,baseCls:Ext.baseCSSPrefix+"tab",closeElOverCls:Ext.baseCSSPrefix+"tab-close-btn-over",closeElPressedCls:Ext.baseCSSPrefix+"tab-close-btn-pressed",config:{rotation:"default",tabPosition:"top"},closable:true,closeText:"Close Tab",active:false,childEls:["closeEl"],scale:false,ariaRole:"tab",_btnWrapCls:Ext.baseCSSPrefix+"tab-wrap",_btnCls:Ext.baseCSSPrefix+"tab-button",_baseIconCls:Ext.baseCSSPrefix+"tab-icon-el",_glyphCls:Ext.baseCSSPrefix+"tab-glyph",_innerCls:Ext.baseCSSPrefix+"tab-inner",_textCls:Ext.baseCSSPrefix+"tab-text",_noTextCls:Ext.baseCSSPrefix+"tab-no-text",_hasIconCls:Ext.baseCSSPrefix+"tab-icon",_activeCls:Ext.baseCSSPrefix+"tab-active",_closableCls:Ext.baseCSSPrefix+"tab-closable",overCls:Ext.baseCSSPrefix+"tab-over",_pressedCls:Ext.baseCSSPrefix+"tab-pressed",_disabledCls:Ext.baseCSSPrefix+"tab-disabled",_rotateClasses:{1:Ext.baseCSSPrefix+"tab-rotate-right",2:Ext.baseCSSPrefix+"tab-rotate-left"},_positions:{top:{"default":"top",0:"top",1:"left",2:"right"},right:{"default":"top",0:"right",1:"top",2:"bottom"},bottom:{"default":"bottom",0:"bottom",1:"right",2:"left"},left:{"default":"top",0:"left",1:"bottom",2:"top"}},_defaultRotations:{top:0,right:1,bottom:0,left:2},initComponent:function(){var a=this;if(a.card){a.setCard(a.card)}Ext.button.Button.prototype.initComponent.apply(this,arguments)},getActualRotation:function(){var a=this.getRotation();return(a!=="default")?a:this._defaultRotations[this.getTabPosition()]},updateRotation:function(){this.syncRotationAndPosition()},updateTabPosition:function(){this.syncRotationAndPosition()},syncRotationAndPosition:function(){var g=this,b=g._positions,a=g._rotateClasses,c=g.getTabPosition(),k=g.getActualRotation(),j=g._rotateCls,d=g._rotateCls=a[k],e=g._positionCls,h=g._positionCls=g._positions[c][k];if(j!==d){if(j){g.removeCls(j)}if(d){g.addCls(d)}}if(e!==h){if(e){g.removeClsWithUI(e)}if(h){g.addClsWithUI(h)}if(g.rendered){g.updateFrame()}}if(g.rendered){g.setElOrientation()}},onAdded:function(b,c,a){Ext.Component.prototype.onAdded.apply(this,[b,c,a]);this.syncRotationAndPosition()},getTemplateArgs:function(){var b=this,a=Ext.button.Button.prototype.getTemplateArgs.call(this);a.closable=b.closable;a.closeText=b.closeText;return a},beforeRender:function(){var b=this,a=b.up("tabbar"),c=b.up("tabpanel");Ext.button.Button.prototype.beforeRender.call(this);if(b.active){b.addCls(b._activeCls)}b.syncClosableCls();if(!b.minWidth){b.minWidth=(a)?a.minTabWidth:b.minWidth;if(!b.minWidth&&c){b.minWidth=c.minTabWidth}if(b.minWidth&&b.iconCls){b.minWidth+=25}}if(!b.maxWidth){b.maxWidth=(a)?a.maxTabWidth:b.maxWidth;if(!b.maxWidth&&c){b.maxWidth=c.maxTabWidth}}},onRender:function(){var a=this;a.setElOrientation();Ext.button.Button.prototype.onRender.apply(this,arguments);if(a.closable){a.closeEl.addClsOnOver(a.closeElOverCls);a.closeEl.addClsOnClick(a.closeElPressedCls)}a.initKeyNav()},initKeyNav:function(){var a=this;a.keyNav=new Ext.util.KeyNav(a.el,{enter:a.onEnterKey,del:a.onDeleteKey,scope:a})},setElOrientation:function(){var c=this,a=c.getActualRotation(),b=c.el;if(a){b.setVertical(a===1?90:270)}else{b.setHorizontal()}},enable:function(a){var b=this;Ext.button.Button.prototype.enable.apply(this,arguments);b.removeCls(b._disabledCls);return b},disable:function(a){var b=this;Ext.button.Button.prototype.disable.apply(this,arguments);b.addCls(b._disabledCls);return b},onDestroy:function(){var a=this;Ext.destroy(a.keyNav);delete a.keyNav;Ext.button.Button.prototype.onDestroy.apply(this,arguments)},setClosable:function(a){var b=this;a=(!arguments.length||!!a);if(b.closable!=a){b.closable=a;if(b.card){b.card.closable=a}b.syncClosableCls();if(b.rendered){b.syncClosableElements();b.updateLayout()}}},syncClosableElements:function(){var a=this,b=a.closeEl;if(a.closable){if(!b){b=a.closeEl=a.btnWrap.insertSibling({tag:"a",role:"presentation",cls:a.baseCls+"-close-btn",href:"#",title:a.closeText},"after")}b.addClsOnOver(a.closeElOverCls);b.addClsOnClick(a.closeElPressedCls)}else{if(b){b.destroy();delete a.closeEl}}},syncClosableCls:function(){var b=this,a=b._closableCls;if(b.closable){b.addCls(a)}else{b.removeCls(a)}},setCard:function(a){var b=this;b.card=a;if(a.iconAlign){b.setIconAlign(a.iconAlign)}if(a.textAlign){b.setTextAlign(a.textAlign)}b.setText(b.title||a.title);b.setIconCls(b.iconCls||a.iconCls);b.setIcon(b.icon||a.icon);b.setGlyph(b.glyph||a.glyph)},onCloseClick:function(){var a=this;if(a.fireEvent("beforeclose",a)!==false){if(a.tabBar){if(a.tabBar.closeTab(a)===false){return}}else{a.fireClose()}}},fireClose:function(){this.fireEvent("close",this)},onEnterKey:function(b){var a=this;if(a.tabBar){a.tabBar.onClick(b,a.el)}},onDeleteKey:function(a){if(this.closable){this.onCloseClick()}},afterClick:function(a){if(!a){this.focus()}},activate:function(b){var a=this;a.active=true;a.addCls(a._activeCls);if(b!==true){a.fireEvent("activate",a)}},deactivate:function(b){var a=this;a.active=false;a.removeCls(a._activeCls);if(b!==true){a.fireEvent("deactivate",a)}},privates:{getFramingInfoCls:function(){return this.baseCls+"-"+this.ui+"-"+this._positionCls},wrapPrimaryEl:function(a){this.el=new Ext.dom.Element(a)}}},0,["tab"],["box","button","component","tab"],{box:true,button:true,component:true,tab:true},["widget.tab"],0,[Ext.tab,"Tab"],0));(Ext.cmd.derive("Ext.layout.component.Body",Ext.layout.component.Auto,{type:"body",beginLayout:function(a){Ext.layout.Layout.prototype.beginLayout.apply(this,arguments);a.bodyContext=a.getEl("body")},beginLayoutCycle:function(d,b){var c=this,g=c.lastWidthModel,e=c.lastHeightModel,a=c.owner.body;Ext.layout.component.Auto.prototype.beginLayoutCycle.apply(this,arguments);if(g&&g.fixed&&d.widthModel.shrinkWrap){a.setWidth(null)}if(e&&e.fixed&&d.heightModel.shrinkWrap){a.setHeight(null)}},calculateOwnerHeightFromContentHeight:function(c,b){var a=Ext.layout.component.Auto.prototype.calculateOwnerHeightFromContentHeight.apply(this,arguments);if(c.targetContext!=c){a+=c.getPaddingInfo().height}return a},calculateOwnerWidthFromContentWidth:function(c,a){var b=Ext.layout.component.Auto.prototype.calculateOwnerWidthFromContentWidth.apply(this,arguments);if(c.targetContext!=c){b+=c.getPaddingInfo().width}return b},measureContentWidth:function(a){return a.bodyContext.setWidth(a.bodyContext.el.dom.offsetWidth,false)},measureContentHeight:function(a){return a.bodyContext.setHeight(a.bodyContext.el.dom.offsetHeight,false)},publishInnerHeight:function(c,a){var d=a-c.getFrameInfo().height,b=c.targetContext;if(b!=c){d-=c.getPaddingInfo().height}return c.bodyContext.setHeight(d,!c.heightModel.natural)},publishInnerWidth:function(d,c){var a=c-d.getFrameInfo().width,b=d.targetContext;if(b!=d){a-=d.getPaddingInfo().width}d.bodyContext.setWidth(a,!d.widthModel.natural)}},0,0,0,0,["layout.body"],0,[Ext.layout.component,"Body"],0));(Ext.cmd.derive("Ext.tab.Bar",Ext.panel.Bar,{baseCls:Ext.baseCSSPrefix+"tab-bar",componentLayout:"body",isTabBar:true,config:{tabRotation:"default",tabStretchMax:true},defaultType:"tab",plain:false,ariaRole:"tablist",childEls:["body","strip"],_stripCls:Ext.baseCSSPrefix+"tab-bar-strip",_baseBodyCls:Ext.baseCSSPrefix+"tab-bar-body",renderTpl:'<div id="{id}-body" data-ref="body" role="presentation" class="{baseBodyCls} {baseBodyCls}-{ui} {bodyCls} {bodyTargetCls}{childElCls}"<tpl if="bodyStyle"> style="{bodyStyle}"</tpl>>{%this.renderContainer(out,values)%}</div><div id="{id}-strip" data-ref="strip" role="presentation" class="{stripCls} {stripCls}-{ui}{childElCls}"></div>',_reverseDockNames:{left:"right",right:"left"},_layoutAlign:{top:"end",right:"begin",bottom:"begin",left:"end"},initComponent:function(){var e=this,a=e.initialConfig.layout,c=a&&a.align,b=a&&a.overflowHandler,d;if(e.plain){e.addCls(e.baseCls+"-plain")}Ext.panel.Bar.prototype.initComponent.call(this);e.setLayout({align:c||(e.getTabStretchMax()?"stretchmax":e._layoutAlign[e.dock]),overflowHandler:b||"scroller"});e.on({click:e.onClick,element:"el",scope:e})},initRenderData:function(){var a=this;return Ext.apply(Ext.util.Renderable.prototype.initRenderData.call(this),{bodyCls:a.bodyCls,baseBodyCls:a._baseBodyCls,bodyTargetCls:a.bodyTargetCls,stripCls:a._stripCls,dock:a.dock})},setDock:function(g){var e=this,a=e.items,c=e.ownerCt,b,d;a=a&&a.items;if(a){for(b=0,d=a.length;b<d;b++){a[b].setTabPosition(g)}}if(e.rendered){e.resetItemMargins();if(c&&c.isHeader){c.resetItemMargins()}e.needsScroll=true}Ext.panel.Bar.prototype.setDock.apply(this,[g])},updateTabRotation:function(e){var d=this,a=d.items,b,c;a=a&&a.items;if(a){for(b=0,c=a.length;b<c;b++){a[b].setRotation(e)}}if(d.rendered){d.resetItemMargins();d.needsScroll=true;d.updateLayout()}},onRender:function(){var a=this;Ext.util.Renderable.prototype.onRender.call(this);if(Ext.isIE8&&a.vertical){a.el.on({mousemove:a.onMouseMove,scope:a})}},afterLayout:function(){this.adjustTabPositions();Ext.container.Container.prototype.afterLayout.apply(this,arguments)},adjustTabPositions:function(){var a=this.items.items,d=a.length,g,b,e,c;if(!Ext.isIE8){while(d--){g=a[d];e=g.el;b=g.lastBox;c=g.getActualRotation();if(c===1&&g.isVisible()){e.setStyle("left",(b.x+b.width)+"px")}else{if(c===2&&g.isVisible()){e.setStyle("left",(b.x-b.height)+"px")}}}}},onAdded:function(b,c,a){if(b.isHeader){this.addCls(b.baseCls+"-"+b.ui+"-tab-bar")}Ext.panel.Bar.prototype.onAdded.apply(this,[b,c,a])},onRemove:function(a){var b=this;if(a===b.previousTab){b.previousTab=null}Ext.container.Container.prototype.onRemove.apply(this,arguments)},onRemoved:function(b){var a=this.ownerCt;if(a.isHeader){this.removeCls(a.baseCls+"-"+a.ui+"-tab-bar")}Ext.panel.Bar.prototype.onRemoved.apply(this,[b])},afterComponentLayout:function(c){var d=this,b=d.needsScroll,a=d.layout.overflowHandler;Ext.container.Container.prototype.afterComponentLayout.apply(this,arguments);if(a&&b&&d.tooNarrow&&a.scrollToItem){a.scrollToItem(d.activeTab)}delete d.needsScroll},onMouseMove:function(g){var d=this,b=d._overTab,a,c;if(g.getTarget("."+Ext.baseCSSPrefix+"box-scroller")){return}a=d.getTabInfoFromPoint(g.getXY());c=a.tab;if(c!==b){if(b&&b.rendered){b.onMouseLeave(g);d._overTab=null}if(c){c.onMouseEnter(g);d._overTab=c;if(!c.disabled){d.el.setStyle("cursor","pointer")}}else{d.el.setStyle("cursor","default")}}},onMouseLeave:function(b){var a=this._overTab;if(a&&a.rendered){a.onMouseLeave(b)}},getTabInfoFromPoint:function(g){var A=this,w=A.items.items,e=w.length,o=A.layout.innerCt,u=o.getXY(),t=new Ext.util.Point(g[0],g[1]),v=0,x,b,a,p,y,j,h,d,r,l,k,n,m,s,q,z,c;for(;v<e;v++){c=w[v];x=c.lastBox;if(!x){continue}l=u[0]+x.x;k=u[1]-o.dom.scrollTop+x.y;n=x.width;m=x.height;b=new Ext.util.Region(k,l+n,k+m,l);if(b.contains(t)){a=c.closeEl;if(a){if(A._isTabReversed===undefined){A._isTabReversed=q=(c.btnWrap.dom.currentStyle.filter.indexOf("rotation=2")!==-1)}z=q?this._reverseDockNames[A.dock]:A.dock;d=a.getWidth();r=a.getHeight();y=A.getCloseXY(a,l,k,n,m,d,r,z);j=y[0];h=y[1];s=new Ext.util.Region(h,j+d,h+r,j);p=s.contains(t)}break}}return{tab:c,close:p}},getCloseXY:function(c,l,j,g,m,k,d,h){var e=c.getXY(),b,a;if(h==="right"){b=l+g-((e[1]-j)+d);a=j+(e[0]-l)}else{b=l+(e[1]-j);a=j+l+m-e[0]-k}return[b,a]},closeTab:function(c){var d=this,b=c.card,e=d.tabPanel,a;if(b&&b.fireEvent("beforeclose",b)===false){return false}a=d.findNextActivatable(c);Ext.suspendLayouts();if(e&&b){delete c.ownerCt;b.fireEvent("close",b);e.remove(b);if(!e.getComponent(b)){c.fireClose();d.remove(c)}else{c.ownerCt=d;Ext.resumeLayouts(true);return false}}if(a){if(e){e.setActiveTab(a.card)}else{d.setActiveTab(a)}a.focus()}Ext.resumeLayouts(true)},findNextActivatable:function(a){var b=this;if(a.active&&b.items.getCount()>1){return(b.previousTab&&b.previousTab!==a&&!b.previousTab.disabled)?b.previousTab:(a.next("tab[disabled=false]")||a.prev("tab[disabled=false]"))}},setActiveTab:function(b,a){var c=this;if(!b.disabled&&b!==c.activeTab){if(c.activeTab){if(c.activeTab.isDestroyed){c.previousTab=null}else{c.previousTab=c.activeTab;c.activeTab.deactivate()}}b.activate();c.activeTab=b;c.needsScroll=true;if(!a){c.fireEvent("change",c,b,b.card);c.updateLayout()}}},privates:{applyTargetCls:function(a){this.bodyTargetCls=a},getTargetEl:function(){return this.body||this.frameBody||this.el},onClick:function(h,g){var d=this,k=d.tabPanel,j,c,b,a;if(h.getTarget("."+Ext.baseCSSPrefix+"box-scroller")){return}if(Ext.isIE8&&d.vertical){a=d.getTabInfoFromPoint(h.getXY());c=a.tab;b=a.close}else{j=h.getTarget("."+Ext.tab.Tab.prototype.baseCls);c=j&&Ext.getCmp(j.id);b=c&&c.closeEl&&(g===c.closeEl.dom)}if(b){h.preventDefault()}if(c&&c.isDisabled&&!c.isDisabled()){if(c.closable&&b){c.onCloseClick()}else{if(k){k.setActiveTab(c.card)}else{d.setActiveTab(c)}}c.afterClick(b)}}}},0,["tabbar"],["box","component","container","tabbar"],{box:true,component:true,container:true,tabbar:true},["widget.tabbar"],0,[Ext.tab,"Bar"],0));(Ext.cmd.derive("Ext.tab.Panel",Ext.panel.Panel,{alternateClassName:["Ext.TabPanel"],config:{tabBar:undefined,tabPosition:"top",tabRotation:"default",tabStretchMax:true},removePanelHeader:true,plain:false,itemCls:Ext.baseCSSPrefix+"tabpanel-child",minTabWidth:undefined,maxTabWidth:undefined,deferredRender:true,_defaultTabRotation:{top:0,right:1,bottom:0,left:2},initComponent:function(){var h=this,a=h.activeTab||(h.activeTab=0),k=h.getTabPosition(),g=h.getTabRotation(),j=h.dockedItems,e=h.header,b=h.tabBarHeaderPosition,c=h.getTabBar(),d;h.layout=new Ext.layout.container.Card(Ext.apply({owner:h,deferredRender:h.deferredRender,itemCls:h.itemCls,activeItem:a},h.layout));if(b!=null){if(!e){e=h.header={}}d=e.items=(e.items?e.items.slice():[]);e.itemPosition=b;d.push(c);e.hasTabBar=true}else{j=[].concat(h.dockedItems||[]);j.push(c);h.dockedItems=j}Ext.panel.Panel.prototype.initComponent.apply(this,arguments);a=h.activeTab=h.getComponent(a);if(a){c.setActiveTab(a.tab,true)}},onRender:function(){var b=this.items.items,a=b.length,c;Ext.util.Renderable.prototype.onRender.apply(this,arguments);for(c=0;c<a;++c){b[c].getBind()}},setActiveTab:function(a){var c=this,b;a=c.getComponent(a);if(a){b=c.getActiveTab();if(b===a||c.fireEvent("beforetabchange",c,a,b)===false){return false}if(!a.isComponent){Ext.suspendLayouts();a=c.add(a);Ext.resumeLayouts()}c.activeTab=a;Ext.suspendLayouts();c.layout.setActiveItem(a);a=c.activeTab=c.layout.getActiveItem();if(a&&a!==b){c.tabBar.setActiveTab(a.tab);Ext.resumeLayouts(true);if(b!==a){c.fireEvent("tabchange",c,a,b)}}else{Ext.resumeLayouts(true)}return a}},setActiveItem:function(a){return this.setActiveTab(a)},getActiveTab:function(){var b=this,a=b.getComponent(b.activeTab);if(a&&b.items.indexOf(a)!=-1){b.activeTab=a}else{b.activeTab=null}return b.activeTab},applyTabBar:function(a){var c=this,b=(c.tabBarHeaderPosition!=null)?c.getHeaderPosition():c.getTabPosition();return new Ext.tab.Bar(Ext.apply({ui:c.ui,dock:b,tabRotation:c.getTabRotation(),vertical:(b=="left"||b=="right"),plain:c.plain,tabStretchMax:c.getTabStretchMax(),tabPanel:c},a))},updateHeaderPosition:function(c,b){var a=this.getTabBar();if(a&&(this.tabBarHeaderPosition!=null)){a.setDock(c)}Ext.panel.Panel.prototype.updateHeaderPosition.apply(this,[c,b])},updateTabPosition:function(b){var a=this.getTabBar();if(a&&(this.tabBarHeaderPosition==null)){a.setDock(b)}},updateTabRotation:function(b){var a=this.getTabBar();if(a){a.setTabRotation(b)}},onAdd:function(g,d){var e=this,c=Ext.apply({},g.tabConfig),b=e.getTabBar(),a={xtype:"tab",ui:b.ui,card:g,disabled:g.disabled,closable:g.closable,hidden:g.hidden&&!g.hiddenByLayout,tooltip:g.tooltip,tabBar:b,tabPosition:b.dock,rotation:b.getTabRotation()};if(g.closeText!==undefined){a.closeText=g.closeText}c=Ext.applyIf(c,a);g.tab=e.tabBar.insert(d,c);g.on({scope:e,enable:e.onItemEnable,disable:e.onItemDisable,beforeshow:e.onItemBeforeShow,iconchange:e.onItemIconChange,iconclschange:e.onItemIconClsChange,titlechange:e.onItemTitleChange});if(g.isPanel){if(e.removePanelHeader){if(g.rendered){if(g.header){g.header.hide()}}else{g.header=false}}if(g.isPanel&&e.border){g.setBorder(false)}}if(e.rendered){g.getBind()}},onItemEnable:function(a){a.tab.enable()},onItemDisable:function(a){a.tab.disable()},onItemBeforeShow:function(a){if(a!==this.activeTab){this.setActiveTab(a);return false}},onItemIconChange:function(b,a){b.tab.setIcon(a)},onItemIconClsChange:function(b,a){b.tab.setIconCls(a)},onItemTitleChange:function(a,b){a.tab.setText(b)},onRemove:function(b,c){var a=this;b.un({scope:a,enable:a.onItemEnable,disable:a.onItemDisable,beforeshow:a.onItemBeforeShow});if(!a.destroying&&b.tab.ownerCt===a.tabBar){a.tabBar.remove(b.tab)}},privates:{doRemove:function(d,b){var c=this,a;if(c.removingAll||c.destroying||c.items.getCount()==1){c.activeTab=null}else{if((a=c.tabBar.items.indexOf(c.tabBar.findNextActivatable(d.tab)))!==-1){c.setActiveTab(a)}}this.callParent(arguments);delete d.tab.card;delete d.tab}}},0,["tabpanel"],["box","component","container","panel","tabpanel"],{box:true,component:true,container:true,panel:true,tabpanel:true},["widget.tabpanel"],0,[Ext.tab,"Panel",Ext,"TabPanel"],0));(Ext.cmd.derive("Ext.app.bindinspector.Environment",Ext.Base,{getCmp:function(a){return this.components.get(a)},getVM:function(a){return this.viewModels.get(a)},getInheritedVM:function(a){var c=a.viewModel,b=a.parent;if(c){return c}if(b){return this.getInheritedVM(this.getCmp(b))}return null},captureSnapshot:function(){var d=Ext.ComponentManager.getAll(),a=d.length,e=[],c,b;this.models={};for(c=0;c<a;++c){b=d[c];if(b.afterRender&&this.isRootComponent(b)){e.push(this.buildComponent(b))}}return{isBindData:true,version:Ext.getVersion().version,models:this.models,components:e}},serializeModel:function(b){var c=this.models,a=b.entityName;if(!c[a]){c[a]=Ext.Array.map(b.getFields(),function(d){return{name:d.getName(),type:d.getType()}})}},isRootComponent:function(b){var a=b.getRefOwner();if(a||b.isBindInspector||b===Ext.MessageBox||b.is("quicktip")){return false}return true},buildComponent:function(g){var e=g.getRefItems?g.getRefItems():null,k=g.getViewModel(),j=g.getBind(),a=g.id,h,d,c,b;if(j){j=this.buildBind(j)}c={id:a,xtype:g.getXType(),publishes:g.getPublishes(),viewModel:k?this.buildViewModel(k,g):null,bindings:j||null,reference:g.reference||null,items:[]};if(e){for(d=0,h=e.length;d<h;++d){if(e[d].afterRender){b=this.buildComponent(e[d]);b.parent=a;c.items.push(b)}}}return c},buildBind:function(h){var b={},c,g,e,a,d;for(c in h){g=h[c];d=g.stub;e={id:g.id,value:this.serializeValue(g.getRawValue()),stub:d?{id:d.id,name:d.name}:null};if(g.isTemplateBinding){e.isTemplateBinding=true;e.tokens=[];Ext.Array.forEach(g.tokens,function(j){e.tokens.push(j.split("."))},this);e.descriptor=g.tpl.text}else{if(g.isMultiBinding){e.isMultiBinding=true}else{if(d){a=this.buildStubName(d);e.tokens=a.split(".");e.descriptor="{"+a+"}"}}}b[c]=e}return b},buildStubName:function(c){var b=c.parent,a="";if(b&&!b.isRootStub){a=this.buildStubName(b)+"."}return a+c.name},buildViewModel:function(c,a){var b=c.getParent();return{id:c.getId(),view:a.id,parent:b?b.getId():null,data:this.serializeValue(c.getData(),true),rootStub:this.buildStub(c.getRoot())}},buildStub:function(h,g){var c={},e=h.children,k=h.isLinkStub,d={},l,a,b,j;if(!h.isRootStub){c.name=h.name;c.parent=h.parent?h.parent.id:null;c.isLoading=h.isLoading();c.bindCount=(h.bindings&&h.bindings.length)||0;c.cumulativeBindCount=c.bindCount;c.value=this.serializeValue(h.getRawValue());if(k){j=h.target===h.owner;c.linkInfo={sameTarget:j,descriptor:h.linkDescriptor,value:this.serializeValue(h.binding.getValue())};g=true}}else{c.name="";c.isLoading=false;c.bindCount=c.cumulativeBindCount=0}if(e){for(l in e){a=true;b=this.buildStub(e[l],g);d[l]=b;c.cumulativeBindCount+=b.cumulativeBindCount}}if(a){c.children=d}return c},createModel:function(a,b){var c=Ext.app.bindinspector.noconflict[a];return new c(b)},unpackSnapshot:function(a){this.components=new Ext.util.Collection();this.viewModels=new Ext.util.Collection();Ext.Object.each(a.models,function(c,b){Ext.define("Ext.app.bindinspector.noconflict."+c,{extend:"Ext.app.bindinspector.noconflict.BaseModel",fields:b})});Ext.Array.forEach(a.components,function(b){this.unpackComponent(b,this.components,this.viewModels)},this);this.rootComponents=a.components},unpackComponent:function(e,m,h){var b=e.viewModel,k=e.items,a=e.bindings,g,d,o,j,c,n,l;m.add(e);if(a){for(n in a){l=a[n];l.value=this.deserializeValue(l.value)}}if(b){h.add(b);o=this.getVM(b.parent);if(o){j=Ext.Object.chain(o.data)}c=this.deserializeValue(b.data);if(j){c=Ext.apply(j,c)}b.data=c;this.deserializeStub(b.rootStub)}if(k){for(d=0,g=k.length;d<g;++d){this.unpackComponent(k[d],m,h)}}},serializeValue:function(h,d){var j={},c,b,g,e,a;if(h&&h.constructor===Object){c="object";j.value={};for(b in h){if(!(d&&!h.hasOwnProperty(b))){e=this.serializeValue(h[b],d);g={type:e.type,value:e.value};if(e.entityName){g.entityName=e.entityName}j.value[b]=g}}}else{if(h&&h.isModel){c="model";j.entityName=h.entityName;this.serializeModel(h.self);j.value=this.serializeValue(h.data)}else{if(h&&h.isStore){c="store";a=h.getModel();j.entityName=a.entityName;if(a.entityName){this.serializeModel(a)}}else{if(Ext.isDate(h)){c="date";j.value=Ext.Date.format(h,"c")}else{if(Ext.isArray(h)){c="array";j.value=[];Ext.Array.forEach(h,function(k){j.value.push(this.serializeValue(k))},this)}else{c=Ext.typeOf(h);j.value=h}}}}}j.type=c;return j},deserializeValue:function(e){var d=e.type,b=e.value,a,c;if(d==="null"){a=null}else{if(d==="undefined"){a=undefined}else{if(d==="string"||d==="boolean"||d==="number"){a=b}else{if(d==="date"){a=Ext.Date.parse(b,"c")}else{if(d==="object"){a={};for(c in b){a[c]=this.deserializeValue(b[c])}}else{if(d==="model"){a=this.createModel(e.entityName,this.deserializeValue(b))}else{if(d==="store"){a={isStore:true,entityName:e.entityName}}else{if(d==="array"){a=[];Ext.Array.forEach(b,function(g){a.push(this.deserializeValue(g))},this)}}}}}}}}return a},deserializeStub:function(d){var c=d.children,a=d.linkInfo,b;if(d.value){d.value=this.deserializeValue(d.value)}if(a){a.value=this.deserializeValue(a.value)}if(c){for(b in c){this.deserializeStub(c[b])}}}},0,0,0,0,0,0,[Ext.app.bindinspector,"Environment"],0));(Ext.cmd.derive("Ext.app.bindinspector.ViewModelDetail",Ext.tree.Panel,{rootVisible:false,cls:Ext.baseCSSPrefix+"bindinspector-viewmodeldetail",inheritedCls:Ext.baseCSSPrefix+"bindinspector-inherited",notInheritedCls:Ext.baseCSSPrefix+"bindinspector-not-inherited",highlightedCls:Ext.baseCSSPrefix+"bindinspector-highlighted",unhighlightedCls:Ext.baseCSSPrefix+"bindinspector-unhighlighted",lastItemCls:Ext.baseCSSPrefix+"bindinspector-last-item",initComponent:function(){var d=this,c=d.vm,e="VM &nbsp;&nbsp;&nbsp;\u21d2 &nbsp;&nbsp;&nbsp;",b=d.up("bindinspector-container").env,a=b.getCmp(c.view);if(a.reference){e+="["+a.reference+"] &bull; "}d.title=e+=a.id;d.viewConfig={getRowClass:function(h,k,l,j){var n=h.get("hasData"),o=h.get("hasStub"),g=[],m=h.get("highlighted");if(h.get("inherited")){g.push(d.inheritedCls)}else{g.push(d.notInheritedCls)}if(m===true){g.push(d.highlightedCls)}else{if(m===-1){g.push(d.unhighlightedCls)}}if(k===j.getCount()-1){g.push(d.lastItemCls)}if(n&&(!o||h.get("cumulativeBindCount")===0)){g.push(d.dataOnlyCls)}return g.join(" ")}};d.store={model:d.Model,root:{text:"Root",expanded:true,children:d.setupData(c,c.data,c.rootStub)}};d.columns=[{width:40,tdCls:Ext.baseCSSPrefix+"bindinspector-indicator-col",align:"center",scope:d,renderer:d.renderIndicator},{flex:1,xtype:"treecolumn",dataIndex:"name",text:"Name",scope:d,renderer:d.renderName},{flex:1,dataIndex:"value",text:"Value",scope:d,renderer:Ext.app.bindinspector.Util.valueRenderer},{text:"Bind #",width:64,align:"center",renderer:d.renderBindCount,scope:d},{width:40,isSearch:true,renderer:d.dataSrcConsumerRenderer,scope:d}];Ext.tree.Panel.prototype.initComponent.call(this);d.on("cellclick",d.onSearchCellClick,d)},dataOnlyNode:"This item contains data but has nothing requesting the value",stubOnlyNode:"This item has the value requested but no data backing it",dataPointLoading:"Data point is loading (at the time the app snapshot was captured)",dataPointLoadingCls:Ext.baseCSSPrefix+"bindinspector-isloading",zeroBindingCls:Ext.baseCSSPrefix+"bi-zero-bind-count",dataOnlyCls:Ext.baseCSSPrefix+"bindinspector-data-only",stubOnlyCls:Ext.baseCSSPrefix+"bindinspector-stub-only",onSearchCellClick:function(a,j,b,g,c,h,d){if(a.getHeaderCt().getHeaderAtIndex(b).isSearch){this.up("bindinspector-container").fireEvent("vmSearchClick",g)}},getFirstTierRec:function(c){var b=c.parentNode.isRoot(),a;if(!b){c.bubble(function(d){if(d.parentNode.isRoot()){a=d;return false}})}return b?c:a},dataSrcConsumerRenderer:function(a,d,e){var b=this.getFirstTierRec(e),c=b.get("name");d.tdCls=Ext.baseCSSPrefix+"bindinspector-data-search-cell";d.tdAttr='data-qclass="'+Ext.baseCSSPrefix+'componentlist-tip" data-qtip="Click to indicate within the Component List all ViewModels with a data property of &nbsp;<b>'+c+'</b>"'},renderIndicator:function(l,m,e){var j=e.get("ownerVMs"),g=j.length,d=false,h=false,b="",c=this.getFirstTierRec(e),a=c===e,n=c.get("name"),k;Ext.Array.forEach(j,function(o){if(o.id===o.thisVM){d=true}if(o.id!==o.thisVM){h=true}});if(d&&h){b=Ext.util.Format.format('<span style="color:#DB7851;">{0}</span>',a?"\u25d3":"-");k=g>1?"VMs":"VM";m.tdAttr='data-qclass="'+Ext.baseCSSPrefix+'componentlist-tip" data-qtip="<b>'+n+"</b>&nbsp; provided by this VM and "+(g-1)+" ancestor "+k+'"'}else{if(d){b=a?"\u25cf":"";m.tdAttr='data-qclass="'+Ext.baseCSSPrefix+'componentlist-tip" data-qtip="<b>'+n+'</b>&nbsp; is provided by this VM"'}else{if(h){b=a?"\u25cb":"";k=g>1?"VMs":"VM";m.tdAttr='data-qclass="'+Ext.baseCSSPrefix+'componentlist-tip" data-qtip="<b>'+n+"</b>&nbsp; is provided by "+g+" ancestor "+k+'"'}}}return b},renderBindCount:function(c,g,h){var a=h.get("children").length,e=h.get("bindCount")||0,d,b;c=e;if(c===0){c='<span class="'+this.zeroBindingCls+'">'+c+"</span>"}if(a){d=h.get("cumulativeBindCount")||"?";if(d===0||d==="?"){c+=' / <span class="'+this.zeroBindingCls+'">'+d+"</span>"}else{c+=" / "+d}}b="Bindings Count = <b>"+e+"</b>";if(d&&d!==0&&d!=="?"){b+="<br>Cumulative Bindings Count = <b>"+d+"</b>"}g.tdAttr='data-qclass="'+Ext.baseCSSPrefix+'componentlist-tip" data-qtip="'+b+'"';return c},renderName:function(a,g,h){var b=this,d=h.get("hasData"),e=h.get("hasStub"),c="";if(h.get("isLoading")){g.tdCls=b.dataPointLoadingCls;c+=b.dataPointLoading}else{if(d&&(!e||h.get("cumulativeBindCount")===0)){c+=b.dataOnlyNode}else{if(e&&!d){g.tdCls=b.stubOnlyCls;c+=b.stubOnlyNode}}}if(c!==""){g.tdAttr='data-qclass="'+Ext.baseCSSPrefix+'componentlist-tip" data-qtip="'+c+'"'}return a},setupData:function(b,e,c,k,m){var n={},d=[],l=b.dataMap,g=[],q,a,h,o,p,j;if(e&&Ext.isObject(e)){if(e.isModel){e=e.data;p=true}else{if(e.isStore){p=true;e=null}}if(e){for(o in e){if(!m){g=l[o]?l[o].ownerVMs:[]}q={name:o,value:e[o],inherited:Ext.isDefined(k)?k:!e.hasOwnProperty(o),ownerVMs:Ext.isDefined(m)?m:[],hasData:true};Ext.Array.forEach(g,function(r){q.ownerVMs.push({id:r.id,view:r.view,thisVM:b.id})});h=Ext.app.bindinspector.Util.getChildStub(o,c);if(h){q.hasStub=true;q.isLoading=h.isLoading;q.iconCls=h.isLoading?this.dataPointLoadingCls:"";q.bindCount=h.bindCount;q.cumulativeBindCount=h.cumulativeBindCount;q.stub=h}n[o]=q}}}if(c){a=c.children;for(o in a){h=a[o];q=n[o];if(!q){q={name:o,value:h.value||undefined,inherited:k||false,ownerVMs:m||[],hasData:false,hasStub:true,isLoading:h.isLoading,iconCls:h.isLoading?this.dataPointLoadingCls:"",bindCount:h.bindCount,cumulativeBindCount:h.cumulativeBindCount,stub:h};j=h.linkInfo;if(j&&j.sameTarget){q.value=j.value;q.hasData=q.value!==undefined}n[o]=q}}}for(o in n){q=n[o];q.children=this.setupData(b,q.value,q.stub,q.inherited,q.ownerVMs);delete q.stub;if(q.children&&q.children.length){q.expanded=true;q.leaf=false}else{q.leaf=true}d.push(n[o])}return d}},0,["bindinspector-viewmodeldetail"],["bindinspector-viewmodeldetail","box","component","container","panel","tablepanel","treepanel"],{"bindinspector-viewmodeldetail":true,box:true,component:true,container:true,panel:true,tablepanel:true,treepanel:true},["widget.bindinspector-viewmodeldetail"],0,[Ext.app.bindinspector,"ViewModelDetail"],function(){this.prototype.Model=Ext.define(null,{extend:"Ext.data.TreeModel",fields:["name","value","inherited","hasData","hasStub","isLoading","bindCount","cumulativeBindCount","highlighted"]})}));(Ext.cmd.derive("Ext.app.bindinspector.noconflict.BaseModel",Ext.data.Model,{schema:{id:"Ext_app_bindinspector",namespace:"Ext.app.bindinspector"}},0,0,0,0,0,0,[Ext.app.bindinspector.noconflict,"BaseModel"],0));(Ext.cmd.derive("Ext.app.bindinspector.Container",Ext.container.Container,{isBindInspector:true,referenceHolder:true,layout:"border",cls:Ext.baseCSSPrefix+"bindinspector-container",componentPreviewDefault:{xtype:"container",cls:Ext.baseCSSPrefix+"bindinspector-prev-default",padding:20,layout:{type:"hbox",align:"middle",pack:"center"},items:[{xtype:"component",flex:1,html:"Select a component with bindings from the ComponentList to view the bindings details along with the component's inherited ViewModel"}]},initComponent:function(){var a=this;Ext.data.schema.Schema.get("Ext_app_bindinspector").clear();a.items=[{xtype:"bindinspector-componentlist",reference:"componentList",region:"west",width:400,split:true,collapsible:true,components:a.env.rootComponents,listeners:{scope:a,componentdblclick:a.onComponentDblclick,componentselect:a.onComponentSelect}},{xtype:"tabpanel",region:"center",reference:"tabs",items:[{title:"Preview",reference:"preview",layout:"fit",items:[a.componentPreviewDefault]}],listeners:{add:function(){this.getTabBar().setVisible(this.items.getCount()>1)},remove:function(){this.getTabBar().setVisible(this.items.getCount()>1)}}}];Ext.container.Container.prototype.initComponent.call(this);a.on("vmSearchClick",a.onVMSearchClick,a)},onVMSearchClick:function(h){var d=this.lookupReference("componentList"),m=d.getStore(),l=h.get("ownerVMs"),g=[],e=h.get("bindCount"),k=[],c=[],j=[],a,b;m.suspendEvents();d.clearVMSearchIndicators();Ext.Array.forEach(l,function(n){a=m.getById(n.view);a.set("isSrcVM",h);g.push(a)});m.resumeEvents();d.getView().refresh();d.indicatedVM=g;if(e>0){h.bubble(function(n){var o=n.get("name");if(o){k.push(o)}});b=k.reverse().join(".");d.getStore().getRootNode().cascadeBy(function(n){if(n.get("hasBindings")){Ext.Array.forEach(n.get("bindData"),function(p){var o=[];if(p.tokens){Ext.Array.forEach(p.tokens,function(q){if(Ext.isArray(q)){Ext.Array.forEach(q,function(r){o.push(r)})}else{o.push(q)}})}if(o.join(".")===b){c.push(n)}})}})}Ext.Array.forEach(c.concat(g),function(n){j.push(n.getId())});d.expand();d.filterComponentTree(null,j);Ext.Array.forEach(g,function(n){if(!Ext.Array.contains(c)){n.set("filtervisible",false)}});d.down("#srcVMIndicator").show();d.down("#queryFieldTb").hide();d.down("#vmQueryResultsTb").show()},onComponentSelect:function(a,e,c){var b=this,g=e.getId(),d=b.lookupReference("preview");if(d.referringID!==g){Ext.suspendLayouts();d.removeAll();d.add({xtype:"bindinspector-componentdetail",env:b.env,component:b.env.getCmp(g)});Ext.resumeLayouts(true);d.referringID=g}d.show()},onComponentDblclick:function(k,g,d){var a=g.id,b="bindtab-"+a,h=this.lookupReference("tabs"),c=h.items.get(b),j,e;if(!c){j=this.env.getCmp(a);e=j.reference;c=h.add({xtype:"bindinspector-componentdetail",env:this.env,itemId:b,title:e?"["+e+"] "+a:a,closable:true,component:j})}h.setActiveTab(c)},buildVMDataMap:function(e){var d=this.env,a=e,c=e.dataMap,b=[],h,g;if(!c){c=e.dataMap={};while(a){b.push(a);a=d.getVM(a.parent)}Ext.Array.forEach(b,function(k){var j;h=k.data;if(h&&Ext.isObject(h)){for(j in h){g=h.hasOwnProperty(j);if(!c[j]){c[j]={isDirect:g}}c[j].ownerVMs=c[j].ownerVMs||[];if(g){c[j].ownerVMs.push(k)}}}})}return e}},0,["bindinspector-container"],["bindinspector-container","box","component","container"],{"bindinspector-container":true,box:true,component:true,container:true},["widget.bindinspector-container"],0,[Ext.app.bindinspector,"Container"],0));(Ext.cmd.derive("Ext.util.ComponentDragger",Ext.dd.DragTracker,{autoStart:500,constructor:function(a,b){this.comp=a;this.initialConstrainTo=b.constrainTo;Ext.dd.DragTracker.prototype.constructor.apply(this,[b])},onStart:function(c){var b=this,a=b.comp;b.startPosition=a.getXY();if(a.ghost&&!a.liveDrag){b.proxy=a.ghost();b.dragTarget=b.proxy.header.el}if(b.constrain||b.constrainDelegate){b.constrainTo=b.calculateConstrainRegion()}if(a.beginDrag){a.beginDrag()}},calculateConstrainRegion:function(){var j=this,g=j.comp,h=j.initialConstrainTo,e=g.constraintInsets,k,b,d,c=j.proxy?j.proxy.el:g.el,a=(!j.constrainDelegate&&c.shadow&&g.constrainShadow&&!c.shadowDisabled)?c.shadow.getShadowSize():0;if(!(h instanceof Ext.util.Region)){k=Ext.fly(h);h=k.getViewRegion();h.right=h.left+k.dom.clientWidth}else{h=h.copy()}if(e){e=Ext.isObject(e)?e:Ext.Element.parseBox(e);h.adjust(e.top,e.right,e.bottom,e.length)}if(a){h.adjust(a[0],-a[1],-a[2],a[3])}if(!j.constrainDelegate){b=Ext.fly(j.dragTarget).getRegion();d=c.getRegion();h.adjust(b.top-d.top,b.right-d.right,b.bottom-d.bottom,b.left-d.left)}return h},onDrag:function(c){var b=this,a=(b.proxy&&!b.comp.liveDrag)?b.proxy:b.comp,d=b.getOffset(b.constrain||b.constrainDelegate?"dragTarget":null);a.setPagePosition(b.startPosition[0]+d[0],b.startPosition[1]+d[1])},onEnd:function(b){var a=this.comp;if(a.isDestroyed||a.destroying){return}if(this.proxy&&!a.liveDrag){a.unghost()}if(a.endDrag){a.endDrag()}}},1,0,0,0,0,0,[Ext.util,"ComponentDragger"],0));(Ext.cmd.derive("Ext.window.Window",Ext.panel.Panel,{alternateClassName:"Ext.Window",baseCls:Ext.baseCSSPrefix+"window",resizable:true,draggable:true,constrain:false,constrainHeader:false,plain:false,minimizable:false,maximizable:false,minHeight:50,minWidth:50,expandOnShow:true,collapsible:false,closable:true,hidden:true,autoRender:true,hideMode:"offsets",floating:true,itemCls:Ext.baseCSSPrefix+"window-item",initialAlphaNum:/^[a-z0-9]/,overlapHeader:true,ignoreHeaderBorderManagement:true,alwaysFramed:true,isRootCfg:{isRoot:true},isWindow:true,ariaRole:"dialog",initComponent:function(){var a=this;a.frame=false;Ext.panel.Panel.prototype.initComponent.call(this);if(a.plain){a.addClsWithUI("plain")}a.addStateEvents(["maximize","restore","resize","dragend"])},getElConfig:function(){var b=this,a;a=Ext.util.Renderable.prototype.getElConfig.call(this);a.tabIndex=-1;return a},getState:function(){var b=this,d=Ext.panel.Panel.prototype.getState.call(this)||{},a=!!b.maximized,c=b.ghostBox,e;d.maximized=a;if(a){e=b.restorePos}else{if(c){e=[c.x,c.y]}else{e=b.getPosition()}}Ext.apply(d,{size:a?b.restoreSize:b.getSize(),pos:e});return d},applyState:function(b){var a=this;if(b){a.maximized=b.maximized;if(a.maximized){a.hasSavedRestore=true;a.restoreSize=b.size;a.restorePos=b.pos}else{Ext.apply(a,{width:b.size.width,height:b.size.height,x:b.pos[0],y:b.pos[1]})}}},onRender:function(b,a){var c=this;Ext.util.Renderable.prototype.onRender.apply(this,arguments);c.focusEl=c.el;if(c.maximizable){c.header.on({scope:c,dblclick:c.toggleMaximize})}},afterRender:function(){var a=this,c=a.header,b;if(a.maximized){a.maximized=false;a.maximize();if(c){c.removeCls(c.indicateDragCls)}}Ext.util.Renderable.prototype.afterRender.call(this);if(a.closable){b=a.getKeyMap();b.on(27,a.onEsc,a)}else{b=a.keyMap}if(b&&a.hidden){b.disable()}},onEsc:function(a,c){var b=Ext.FocusManager;if(!Ext.enableFocusManager||b.focusedCmp===this){c.stopEvent();this.close()}},beforeDestroy:function(){var a=this;if(a.rendered){Ext.un("resize",a.onWindowResize,a);delete a.animateTarget;a.hide();Ext.destroy(a.keyMap)}Ext.panel.Panel.prototype.beforeDestroy.call(this)},addTools:function(){var a=this,c=a.tools,b=[];Ext.panel.Panel.prototype.addTools.call(this);if(a.minimizable){c.push({type:"minimize",handler:Ext.Function.bind(a.minimize,a,b)})}if(a.maximizable){if(a.header&&"titlePosition" in a.header&&a.header.titlePosition>=c.length){a.header.titlePosition++}Ext.Array.push(c,{type:"maximize",handler:Ext.Function.bind(a.maximize,a,b)},{type:"restore",handler:Ext.Function.bind(a.restore,a,b),hidden:true})}},getDefaultFocus:function(){var c=this,b,d=c.defaultButton||c.defaultFocus,a;if(d!==undefined){if(Ext.isNumber(d)){b=c.query("button")[d]}else{if(Ext.isString(d)){a=d;if(a.match(c.initialAlphaNum)){b=c.down(Ext.makeIdSelector(a))}if(!b){b=c.down(a)}}else{if(d.focus){b=d}}}}return b||c.el},onFocus:function(){var b=this,a;if(Ext.enableFocusManager||((a=b.getDefaultFocus())===b)){Ext.Component.prototype.onFocus.apply(this,arguments)}else{a.focus()}},onShow:function(){var a=this;Ext.panel.Panel.prototype.onShow.apply(this,arguments);if(a.expandOnShow){a.expand(false)}a.syncMonitorWindowResize();if(a.keyMap){a.keyMap.enable()}},doClose:function(){var a=this;if(a.hidden){a.fireEvent("close",a);if(a.closeAction=="destroy"){a.destroy()}}else{a.hide(a.animateTarget,a.doClose,a)}},afterHide:function(){var a=this;a.syncMonitorWindowResize();if(a.keyMap){a.keyMap.disable()}Ext.Component.prototype.afterHide.apply(this,arguments)},onWindowResize:function(){var b=this,a;if(b.maximized){b.fitContainer()}else{a=b.getSizeModel();if(a.width.natural||a.height.natural){b.updateLayout()}b.doConstrain()}},minimize:function(){this.fireEvent("minimize",this);return this},resumeHeaderLayout:function(a){this.header.resumeLayouts(a?this.isRootCfg:null)},afterCollapse:function(){var a=this,c=a.header,b=a.tools;if(c&&a.maximizable){c.suspendLayouts();b.maximize.hide();b.restore.hide();this.resumeHeaderLayout(true)}if(a.resizer){a.resizer.disable()}Ext.panel.Panel.prototype.afterCollapse.apply(this,arguments)},afterExpand:function(){var a=this,d=a.header,b=a.tools,c;if(d){d.suspendLayouts();if(a.maximized){b.restore.show();c=true}else{if(a.maximizable){b.maximize.show();c=true}}this.resumeHeaderLayout(c)}if(a.resizer){a.resizer.enable()}Ext.panel.Panel.prototype.afterExpand.apply(this,arguments)},maximize:function(b){var e=this,j=e.header,g=e.tools,d=e.width,a=e.height,c,h;if(!e.maximized){e.expand(false);if(!e.hasSavedRestore){c=e.restoreSize={width:Ext.isNumber(d)?d:null,height:Ext.isNumber(a)?a:null};e.restorePos=e.getPosition(true)}if(j){j.suspendLayouts();if(g.maximize){g.maximize.hide();h=true}if(g.restore){g.restore.show();h=true}if(e.collapseTool){e.collapseTool.hide();h=true}e.resumeHeaderLayout(h)}e.el.disableShadow();if(e.dd){e.dd.disable();if(j){j.removeCls(j.indicateDragCls)}}if(e.resizer){e.resizer.disable()}e.el.addCls(Ext.baseCSSPrefix+"window-maximized");e.container.addCls(Ext.baseCSSPrefix+"window-maximized-ct");e.syncMonitorWindowResize();e.fitContainer(b=(b||!!e.animateTarget)?{callback:function(){e.maximized=true;e.fireEvent("maximize",e)}}:null);if(!b){e.maximized=true;e.fireEvent("maximize",e)}}return e},restore:function(b){var c=this,d=c.tools,g=c.header,a=c.restoreSize,e;if(c.maximized){c.hasSavedRestore=null;c.removeCls(Ext.baseCSSPrefix+"window-maximized");if(g){g.suspendLayouts();if(d.restore){d.restore.hide();e=true}if(d.maximize){d.maximize.show();e=true}if(c.collapseTool){c.collapseTool.show();e=true}c.resumeHeaderLayout(e)}a.x=c.restorePos[0];a.y=c.restorePos[1];c.setBox(a,b=(b||!!c.animateTarget)?{callback:function(){c.el.enableShadow(true);c.maximized=false;c.fireEvent("restore",c)}}:null);c.restorePos=c.restoreSize=null;if(c.dd){c.dd.enable();if(g){g.addCls(g.indicateDragCls)}}if(c.resizer){c.resizer.enable()}c.container.removeCls(Ext.baseCSSPrefix+"window-maximized-ct");c.syncMonitorWindowResize();if(!b){c.el.enableShadow(true);c.maximized=false;c.fireEvent("restore",c)}}return c},syncMonitorWindowResize:function(){var b=this,c=b._monitoringResize,d=b.constrain||b.constrainHeader||b.maximized,a=b.hidden||b.destroying||b.isDestroyed;if(d&&!a){if(!c){Ext.on("resize",b.onWindowResize,b,{buffer:1});b._monitoringResize=true}}else{if(c){Ext.un("resize",b.onWindowResize,b);b._monitoringResize=false}}},toggleMaximize:function(){return this[this.maximized?"restore":"maximize"]()},createGhost:function(){var a=Ext.panel.Panel.prototype.createGhost.apply(this,arguments);a.xtype="window";return a},privates:{getFocusEl:function(){return this.getDefaultFocus()},initDraggable:function(){this.initSimpleDraggable()},initResizable:function(){this.callParent(arguments);if(this.maximized){this.resizer.disable()}}}},0,["window"],["box","component","container","panel","window"],{box:true,component:true,container:true,panel:true,window:true},["widget.window"],0,[Ext.window,"Window",Ext,"Window"],0));(Ext.cmd.derive("Ext.app.bindinspector.Inspector",Ext.window.Window,{title:"Bind Inspector",layout:"fit",autoShow:true,maximized:true,maximizable:true,width:960,height:575,initComponent:function(){var a=(new Ext.app.bindinspector.Environment()).captureSnapshot(),b=new Ext.app.bindinspector.Environment();b.unpackSnapshot(a);this.items={xtype:"bindinspector-container",env:b};Ext.window.Window.prototype.initComponent.call(this)},afterRender:function(){Ext.window.Window.prototype.afterRender.apply(this,arguments);Ext.tip.QuickTipManager.init()}},0,0,["box","component","container","panel","window"],{box:true,component:true,container:true,panel:true,window:true},0,0,[Ext.app.bindinspector,"Inspector"],0));(Ext.cmd.derive("Ext.app.domain.Controller",Ext.app.EventDomain,{singleton:true,type:"controller",prefix:"controller.",idMatchRe:/^\#/,constructor:function(){var a=this;Ext.app.EventDomain.prototype.constructor.call(this);a.monitor(Ext.app.BaseController)},match:function(d,b){var a=false,c=d.alias;if(b==="*"){a=true}else{if(b==="#"){a=!!d.isApplication}else{if(this.idMatchRe.test(b)){a=d.getId()===b.substring(1)}else{if(c){a=Ext.Array.indexOf(c,this.prefix+b)>-1}}}}return a}},1,0,0,0,0,0,[Ext.app.domain,"Controller"],0));(Ext.cmd.derive("Ext.app.domain.Direct",Ext.app.EventDomain,{singleton:true,type:"direct",idProperty:"id",constructor:function(){var a=this;Ext.app.EventDomain.prototype.constructor.call(this);a.monitor(Ext.direct.Provider)}},1,0,0,0,0,0,[Ext.app.domain,"Direct"],0));(Ext.cmd.derive("Ext.button.Split",Ext.button.Button,{alternateClassName:"Ext.SplitButton",isSplitButton:true,arrowCls:"split",split:true,setArrowHandler:function(b,a){this.arrowHandler=b;this.scope=a},onClick:function(b){var a=this;a.doPreventDefault(b);if(!a.disabled){if(a.isWithinTrigger(b)){b.preventDefault();a.maybeShowMenu();a.fireEvent("arrowclick",a,b);if(a.arrowHandler){a.arrowHandler.call(a.scope||a,a,b)}}else{a.doToggle();a.fireHandler(b)}}}},0,["splitbutton"],["box","button","component","splitbutton"],{box:true,button:true,component:true,splitbutton:true},["widget.splitbutton"],0,[Ext.button,"Split",Ext,"SplitButton"],0));(Ext.cmd.derive("Ext.button.Cycle",Ext.button.Split,{alternateClassName:"Ext.CycleButton",getButtonText:function(b){var a=this,c="";if(b&&a.showText===true){if(a.prependText){c+=a.prependText}c+=b.text;return c}return a.text},setActiveItem:function(c,a){var b=this;if(!Ext.isObject(c)){c=b.menu.getComponent(c)}if(c){if(!b.rendered){b.text=b.getButtonText(c);b.iconCls=c.iconCls;b.glyph=c.glyph}else{b.setText(b.getButtonText(c));b.setIconCls(c.iconCls);b.setGlyph(c.glyph)}b.activeItem=c;if(!c.checked){c.setChecked(true,false)}if(b.forceIcon){b.setIconCls(b.forceIcon)}if(b.forceGlyph){b.setGlyph(b.forceGlyph)}if(!a){b.fireEvent("change",b,c)}}},getActiveItem:function(){return this.activeItem},initComponent:function(){var g=this,e=0,b,c,a,d;if(g.changeHandler){g.on("change",g.changeHandler,g.scope||g);delete g.changeHandler}b=(g.menu.items||[]).concat(g.items||[]);g.menu=Ext.applyIf({cls:Ext.baseCSSPrefix+"cycle-menu",items:[]},g.menu);a=b.length;for(c=0;c<a;c++){d=b[c];d=Ext.applyIf({group:g.id,itemIndex:c,checkHandler:g.checkHandler,scope:g,checked:d.checked||false},d);g.menu.items.push(d);if(d.checked){e=c}}g.itemCount=g.menu.items.length;Ext.button.Button.prototype.initComponent.apply(this,arguments);g.on("click",g.toggleSelected,g);g.setActiveItem(e,g)},checkHandler:function(a,b){if(b){this.setActiveItem(a)}},toggleSelected:function(){var c=this,a=c.menu,b;b=c.activeItem.next(":not([disabled])")||a.items.getAt(0);b.setChecked(true)}},0,["cycle"],["box","button","component","cycle","splitbutton"],{box:true,button:true,component:true,cycle:true,splitbutton:true},["widget.cycle"],0,[Ext.button,"Cycle",Ext,"CycleButton"],0));(Ext.cmd.derive("Ext.button.Segmented",Ext.container.Container,{config:{allowDepress:false,allowMultiple:false,allowToggle:true,vertical:false,defaultUI:"default"},beforeRenderConfig:{value:undefined},publishes:["value"],twoWayBindable:["value"],layout:"segmentedbutton",defaultType:"button",maskOnDisable:false,isSegmentedButton:true,baseCls:Ext.baseCSSPrefix+"segmented-button",itemCls:Ext.baseCSSPrefix+"segmented-button-item",_firstCls:Ext.baseCSSPrefix+"segmented-button-first",_lastCls:Ext.baseCSSPrefix+"segmented-button-last",_middleCls:Ext.baseCSSPrefix+"segmented-button-middle",applyValue:function(j,a){var h=this,m=h.getAllowMultiple(),c,d,k,l,g,b,e;k=(j instanceof Array)?j:(j==null)?[]:[j];l=(a instanceof Array)?a:(a==null)?[]:[a];h._isApplyingValue=true;if(!h.rendered){g=h.items.items;for(b=0,e=g.length;b<e;b++){d=g[b];if(d.pressed){c=d.value;if(c==null){c=h.items.indexOf(d)}if(!Ext.Array.contains(k,c)){k.push(c)}}}}e=k.length;for(b=0;b<e;b++){j=k[b];d=h._lookupButtonByValue(j);if(d){c=d.value;if((c!=null)&&c!==j){k[b]=c}if(!d.pressed){d.setPressed(true)}}}j=m?k:e?k[0]:null;for(b=0,e=l.length;b<e;b++){a=l[b];if(!Ext.Array.contains(k,a)){h._lookupButtonByValue(a).setPressed(false)}}h._isApplyingValue=false;return j},beforeRender:function(){var a=this;a.addCls(a.baseCls+a._getClsSuffix());a._syncItemClasses(true);Ext.container.Container.prototype.beforeRender.call(this)},onAdd:function(c){var b=this,a="_syncItemClasses";b.mon(c,{hide:a,show:a,toggle:"_onItemToggle",scope:b});if(b.getAllowToggle()){c.enableToggle=true;if(!b.getAllowMultiple()){c.toggleGroup=b.getId();c.allowDepress=b.getAllowDepress()}}c.addCls(b.itemCls+b._getClsSuffix());b._syncItemClasses();Ext.container.Container.prototype.onAdd.apply(this,[c])},onRemove:function(b){var a=this;b.removeCls(a.itemCls+a._getClsSuffix());a._syncItemClasses();Ext.container.Container.prototype.onRemove.apply(this,[b])},beforeLayout:function(){if(Ext.isChrome){this.el.dom.offsetWidth}Ext.Component.prototype.beforeLayout.call(this)},updateDefaultUI:function(e){var a=this.items,d,b,c;if(this.rendered){Ext.Error.raise("Changing the ui config of a segmented button after render is not supported.")}else{if(a){if(a.items){a=a.items}for(b=0,c=a.length;b<c;b++){d=a[b];if(d.ui==="default"&&e!=="default"&&!d.hasOwnProperty("ui")){a[b].ui=e}}}}},privates:{_getClsSuffix:function(){return this.getVertical()?"-vertical":"-horizontal"},_getFirstCls:function(){return this._firstCls},_getLastCls:function(){return this._lastCls},_lookupButtonByValue:function(h){var b=this.items.items,g=b.length,e=0,d=null,a,c;for(;e<g;e++){c=b[e];a=c.value;if((a!=null)&&a===h){d=c;break}}if(!d&&typeof h==="number"){d=b[h]}return d},_onItemToggle:function(c,h){if(this._isApplyingValue){return}var e=this,d=Ext.Array,b=e.allowMultiple,a=(c.value!=null)?c.value:e.items.indexOf(c),g=e.getValue(),j;if(b){j=d.indexOf(g,a)}if(h){if(b){if(j===-1){g.push(a)}}else{g=a}}else{if(b){if(j>-1){g.splice(j,1)}}else{if(g===a){g=null}}}e.setValue(g);e.fireEvent("toggle",e,c,h)},_syncItemClasses:function(a){var h=this,b,d,k,g,e,l,j,c;if(!a&&!h.rendered){return}b=h._getFirstCls();d=h._middleCls;k=h._getLastCls();g=h.items.items;e=g.length;l=[];for(c=0;c<e;c++){j=g[c];if(!j.hidden){l.push(j)}}e=l.length;for(c=0;c<e;c++){l[c].removeCls([b,d,k])}if(e>1){l[0].addCls(b);for(c=1;c<e-1;c++){l[c].addCls(d)}l[e-1].addCls(k)}}}},0,["segmentedbutton"],["box","component","container","segmentedbutton"],{box:true,component:true,container:true,segmentedbutton:true},["widget.segmentedbutton"],0,[Ext.button,"Segmented"],0));(Ext.cmd.derive("Ext.layout.container.Table",Ext.layout.container.Container,{alternateClassName:"Ext.layout.TableLayout",type:"table",createsInnerCt:true,targetCls:Ext.baseCSSPrefix+"table-layout-ct",tableCls:Ext.baseCSSPrefix+"table-layout",cellCls:Ext.baseCSSPrefix+"table-layout-cell",tableAttrs:null,getItemSizePolicy:function(a){return this.autoSizePolicy},initInheritedState:function(b,a){a.inShrinkWrapTable=true},getLayoutItems:function(){var g=this,b=[],c=Ext.layout.container.Container.prototype.getLayoutItems.call(this),e,a=c.length,d;for(d=0;d<a;d++){e=c[d];if(!e.hidden){b.push(e)}}return b},getHiddenItems:function(){var b=[],c=this.owner.items.items,a=c.length,d=0,e;for(;d<a;++d){e=c[d];if(e.rendered&&e.hidden){b.push(e)}}return b},renderChildren:function(){var l=this,k=l.getLayoutItems(),h=l.owner.getTargetEl().child("table",true).tBodies[0],r=h.rows,g=0,j=k.length,e=l.getHiddenItems(),q,o,c,a,p,n,m,b,d;q=l.calculateCells(k);for(;g<j;g++){o=q[g];c=o.rowIdx;a=o.cellIdx;p=k[g];n=r[c];if(!n){n=h.insertRow(c);if(l.trAttrs){n.set(l.trAttrs)}}b=m=Ext.get(n.cells[a]||n.insertCell(a));if(l.needsDivWrap()){b=m.first()||m.createChild({tag:"div",role:"presentation"});b.setWidth(null)}if(!p.rendered){l.renderItem(p,b,0)}else{if(!l.isValidParent(p,b,c,a,h)){l.moveItem(p,b,0)}}if(l.tdAttrs){m.set(l.tdAttrs)}if(p.tdAttrs){m.set(p.tdAttrs)}m.set({colSpan:p.colspan||1,rowSpan:p.rowspan||1,id:p.cellId||"",cls:l.cellCls+" "+(p.cellCls||"")});if(!q[g+1]||q[g+1].rowIdx!==c){a++;while(n.cells[a]){n.deleteCell(a)}}}c++;while(h.rows[c]){h.deleteRow(c)}for(g=0,j=e.length;g<j;++g){l.ensureInDocument(e[g].getEl())}},ensureInDocument:function(a){var b=a.dom.parentNode;while(b){if(b.tagName.toUpperCase()=="BODY"){return}b=b.parentNode}Ext.getDetachedBody().appendChild(a)},calculate:function(g){if(!g.hasDomProp("containerChildrenSizeDone")){this.done=false}else{var c=g.targetContext,b=g.widthModel.shrinkWrap,a=g.heightModel.shrinkWrap,h=a||b,d=h&&c.el.child("table",true),e=h&&c.getPaddingInfo();if(b){g.setContentWidth(d.offsetWidth+e.width,true)}if(a){g.setContentHeight(d.offsetHeight+e.height,true)}}},finalizeLayout:function(){if(this.needsDivWrap()){var b=this.getLayoutItems(),c,a=b.length,d;for(c=0;c<a;c++){d=b[c];Ext.fly(d.el.dom.parentNode).setWidth(d.getWidth())}}},calculateCells:function(k){var m=[],b=0,d=0,a=0,h=this.columns||Infinity,n=[],e=0,c,g=k.length,l;for(;e<g;e++){l=k[e];while(d>=h||n[d]>0){if(d>=h){d=0;a=0;b++;for(c=0;c<h;c++){if(n[c]>0){n[c]--}}}else{d++}}m.push({rowIdx:b,cellIdx:a});for(c=l.colspan||1;c;--c){n[d]=l.rowspan||1;++d}++a}return m},getRenderTree:function(){var k=this,h=k.getLayoutItems(),o,p=[],q=Ext.apply({tag:"table",role:"presentation",cls:k.tableCls,cellspacing:0,cellpadding:0,cn:{tag:"tbody",role:"presentation",cn:p}},k.tableAttrs),c=k.tdAttrs,d=k.needsDivWrap(),e,g=h.length,n,m,j,b,a,l;o=k.calculateCells(h);for(e=0;e<g;e++){n=h[e];m=o[e];b=m.rowIdx;a=m.cellIdx;j=p[b];if(!j){j=p[b]={tag:"tr",role:"presentation",cn:[]};if(k.trAttrs){Ext.apply(j,k.trAttrs)}}l=j.cn[a]={tag:"td",role:"presentation"};if(c){Ext.apply(l,c)}Ext.apply(l,{colSpan:n.colspan||1,rowSpan:n.rowspan||1,id:n.cellId||"",cls:k.cellCls+" "+(n.cellCls||"")});if(d){l=l.cn={tag:"div",role:"presentation"}}k.configureItem(n);l.cn=n.getRenderTree()}return q},isValidParent:function(g,h,e,d){var b,a,c;if(arguments.length===3){c=g.el.up("table");return c&&c.dom.parentNode===h.dom}b=this.owner.getTargetEl().child("table",true).tBodies[0];a=b.rows[e].cells[d];return g.el.dom.parentNode===a},needsDivWrap:function(){return Ext.isOpera10_5}},0,0,0,0,["layout.table"],0,[Ext.layout.container,"Table",Ext.layout,"TableLayout"],0));(Ext.cmd.derive("Ext.container.ButtonGroup",Ext.panel.Panel,{alternateClassName:"Ext.ButtonGroup",baseCls:Ext.baseCSSPrefix+"btn-group",layout:{type:"table"},defaultType:"button",frame:true,frameHeader:false,titleAlign:"center",noTitleCls:"notitle",ariaRole:"group",initComponent:function(){var a=this,b=a.columns;if(b){a.layout=Ext.apply({},{columns:b},a.layout)}if(!a.title){a.addClsWithUI(a.noTitleCls)}Ext.panel.Panel.prototype.initComponent.apply(this,arguments)},onBeforeAdd:function(a){if(a.isButton){if(this.defaultButtonUI&&a.ui==="default"&&!a.hasOwnProperty("ui")){a.ui=this.defaultButtonUI}else{a.ui=a.ui+"-toolbar"}}Ext.container.Container.prototype.onBeforeAdd.apply(this,arguments)},privates:{applyDefaults:function(a){if(!Ext.isString(a)){a=this.callParent(arguments)}return a}}},0,["buttongroup"],["box","buttongroup","component","container","panel"],{box:true,buttongroup:true,component:true,container:true,panel:true},["widget.buttongroup"],0,[Ext.container,"ButtonGroup",Ext,"ButtonGroup"],0));(Ext.cmd.derive("Ext.container.Monitor",Ext.Base,{target:null,selector:"",scope:null,addHandler:null,removeHandler:null,invalidateHandler:null,disabled:0,constructor:function(a){Ext.apply(this,a)},bind:function(b){var a=this;a.target=b;b.on("beforedestroy",a.disable,a);a.onContainerAdd(b)},unbind:function(){var a=this,b=a.target;if(b){b.un("beforedestroy",a.disable,a)}a.items=null},disable:function(){++this.disabled},enable:function(){if(this.disabled>0){--this.disabled}},handleAdd:function(b,a){if(!this.disabled){if(a.is(this.selector)){this.onItemAdd(a.ownerCt,a)}if(a.isQueryable){this.onContainerAdd(a)}}},onItemAdd:function(c,b){var e=this,a=e.items,d=e.addHandler;if(!e.disabled){if(d){d.call(e.scope||b,b)}if(a){a.add(b)}}},onItemRemove:function(c,b){var e=this,a=e.items,d=e.removeHandler;if(!e.disabled){if(d){d.call(e.scope||b,b)}if(a){a.remove(b)}}},onContainerAdd:function(g,b){var k=this,j,h,c=k.handleAdd,a=k.handleRemove,d,e;if(g.isContainer){g.on("add",c,k);g.on("dockedadd",c,k);g.on("remove",a,k);g.on("dockedremove",a,k)}if(b!==true){j=g.query(k.selector);for(d=0,h=j.length;d<h;++d){e=j[d];k.onItemAdd(e.ownerCt,e)}}j=g.query(">container");for(d=0,h=j.length;d<h;++d){k.onContainerAdd(j[d],true)}},handleRemove:function(b,a){var c=this;if(!c.disabled){if(a.is(c.selector)){c.onItemRemove(b,a)}if(a.isQueryable){c.onContainerRemove(b,a)}}},onContainerRemove:function(e,c){var h=this,b,d,a,g;if(!c.isDestroyed&&!c.destroying&&c.isContainer){h.removeCtListeners(c);b=c.query(h.selector);for(d=0,a=b.length;d<a;++d){g=b[d];h.onItemRemove(g.ownerCt,g)}b=c.query("container");for(d=0,a=b.length;d<a;++d){h.removeCtListeners(b[d])}}else{h.invalidateItems(true)}},removeCtListeners:function(a){var b=this;a.un("add",b.handleAdd,b);a.un("dockedadd",b.handleAdd,b);a.un("remove",b.handleRemove,b);a.un("dockedremove",b.handleRemove,b)},getItems:function(){var b=this,a=b.items;if(!a){a=b.items=new Ext.util.MixedCollection();a.addAll(b.target.query(b.selector))}return a},invalidateItems:function(c){var b=this,a=b.invalidateHandler;if(c&&a){a.call(b.scope||b,b)}b.items=null}},1,0,0,0,0,0,[Ext.container,"Monitor"],0));(Ext.cmd.derive("Ext.plugin.Responsive",Ext.mixin.Responsive,{pluginId:"responsive",isPlugin:true,constructor:function(a){var d=this,b=a.cmp,e=Ext.apply({responsiveConfig:b.responsiveConfig},a);delete e.cmp;d.cmp=b;d.initConfig(e);if(d.transformed){b.setConfig(d.transformed);d.transformed=null}},init:Ext.emptyFn,privates:{transformInstanceConfig:function(b){this.transformed=this.callParent([b]);var a=Ext.apply({},b);delete a.responsiveConfig;return a},updateResponsiveState:function(){var a=this.getResponsiveState();this.cmp.setConfig(a)}}},1,0,0,0,["plugin.responsive"],0,[Ext.plugin,"Responsive"],0));(Ext.cmd.derive("Ext.plugin.Viewport",Ext.plugin.Responsive,{setCmp:function(a){this.cmp=a;if(a&&!a.isViewport){this.apply(a);if(a.renderConfigs){a.flushRenderConfigs()}a.setupViewport()}},statics:{apply:function(a){Ext.applyIf(a.prototype||a,{ariaRole:"application",viewportCls:Ext.baseCSSPrefix+"viewport"});Ext.override(a,{isViewport:true,preserveElOnDestroy:true,initComponent:function(){this.callParent();this.setupViewport()},handleViewportResize:function(){var e=this,c=Ext.dom.Element,d=c.getViewportWidth(),b=c.getViewportHeight();if(d!=e.width||b!=e.height){e.setSize(d,b)}},setupViewport:function(){var d=this,b=document.body.parentNode,c=d.el=Ext.getBody();Ext.getScrollbarSize();d.width=d.height=undefined;Ext.fly(b).addCls(d.viewportCls);if(d.autoScroll){Ext.fly(b).setStyle(d.getOverflowStyle());delete d.autoScroll}c.setHeight=c.setWidth=Ext.emptyFn;c.dom.scroll="no";d.allowDomMove=false;d.renderTo=d.el;if(Ext.supports.Touch){d.initMeta()}},afterLayout:function(b){if(Ext.supports.Touch){document.body.scrollTop=0}this.callParent([b])},onRender:function(){var b=this;b.callParent(arguments);b.width=Ext.Element.getViewportWidth();b.height=Ext.Element.getViewportHeight();if(Ext.supports.TouchEvents){b.mon(Ext.getDoc(),{touchmove:function(c){c.preventDefault()},translate:false,delegated:false})}},initInheritedState:function(d,c){var e=this,b=Ext.rootInheritedState;if(d!==b){e.initInheritedState(e.inheritedState=b,e.inheritedStateInner=Ext.Object.chain(b))}else{e.callParent([d,c])}},beforeDestroy:function(){var b=this;b.removeUIFromElement();b.el.removeCls(b.baseCls);Ext.fly(document.body.parentNode).removeCls(b.viewportCls);b.callParent()},addMeta:function(b,c){var d=document.createElement("meta");d.setAttribute("name",b);d.setAttribute("content",c);Ext.getHead().appendChild(d)},initMeta:function(){var b=this,c=b.maxUserScale||1;b.addMeta("viewport","width=device-width, initial-scale=1, maximum-scale="+c+", user-scalable="+(c!==1?"yes":"no"));b.addMeta("apple-mobile-web-app-capable","yes")},privates:{applyTargetCls:function(b){this.el.addCls(b)}}})}},privates:{updateResponsiveState:function(){this.cmp.handleViewportResize();this.callParent()}}},0,0,0,0,["plugin.viewport"],0,[Ext.plugin,"Viewport"],function(a){a.prototype.apply=a.apply}));(Ext.cmd.derive("Ext.container.Viewport",Ext.container.Container,{alternateClassName:"Ext.Viewport",privates:{updateResponsiveState:function(){this.handleViewportResize();this.mixins.responsive.updateResponsiveState.call(this)}}},0,["viewport"],["box","component","container","viewport"],{box:true,component:true,container:true,viewport:true},["widget.viewport"],[[Ext.mixin.Responsive.prototype.mixinId||Ext.mixin.Responsive.$className,Ext.mixin.Responsive]],[Ext.container,"Viewport",Ext,"Viewport"],function(){Ext.plugin.Viewport.apply(this)}));(Ext.cmd.derive("Ext.layout.container.Anchor",Ext.layout.container.Auto,{alternateClassName:"Ext.layout.AnchorLayout",type:"anchor",defaultAnchor:"100%",parseAnchorRE:/^(r|right|b|bottom)$/i,manageOverflow:true,setsItemSize:true,beginLayoutCycle:function(c){var j=this,a=0,g,k,e,d,b,h;Ext.layout.container.Auto.prototype.beginLayoutCycle.apply(this,arguments);e=c.childItems;b=e.length;for(d=0;d<b;++d){k=e[d];g=k.target.anchorSpec;if(g){if(k.widthModel.calculated&&g.right){a|=1}if(k.heightModel.calculated&&g.bottom){a|=2}if(a==3){break}}}c.anchorDimensions=a},calculateItems:function(h,a){var q=this,l=h.childItems,g=l.length,o=a.gotHeight,j=a.gotWidth,e=a.height,c=a.width,b=(j?1:0)|(o?2:0),p=h.anchorDimensions,m,s,n,r,k,d;if(!p){return true}for(k=0;k<g;k++){s=l[k];n=s.getMarginInfo();m=s.target.anchorSpec;if(j&&s.widthModel.calculated){d=m.right(c)-n.width;d=q.adjustWidthAnchor(d,s);s.setWidth(d)}if(o&&s.heightModel.calculated){r=m.bottom(e)-n.height;r=q.adjustHeightAnchor(r,s);s.setHeight(r)}}return(b&p)===p},anchorFactory:{offset:function(a){return function(b){return b+a}},ratio:function(a){return function(b){return Math.floor(b*a)}},standard:function(a){return function(b){return b-a}}},parseAnchor:function(c,g,b){if(c&&c!="none"){var d=this.anchorFactory,e;if(this.parseAnchorRE.test(c)){return d.standard(b-g)}if(c.indexOf("%")!=-1){return d.ratio(parseFloat(c.replace("%",""))*0.01)}e=parseInt(c,10);if(!isNaN(e)){return d.offset(e)}}return null},adjustWidthAnchor:function(b,a){return b},adjustHeightAnchor:function(b,a){return b},configureItem:function(g){var e=this,a=e.owner,d=g.anchor,b,c,h;Ext.layout.container.Container.prototype.configureItem.apply(this,arguments);if(!g.anchor&&g.items&&!Ext.isNumber(g.width)){g.anchor=d=e.defaultAnchor}if(a.anchorSize){if(typeof a.anchorSize=="number"){c=a.anchorSize}else{c=a.anchorSize.width;h=a.anchorSize.height}}else{c=a.initialConfig.width;h=a.initialConfig.height}if(d){b=d.split(" ");g.anchorSpec={right:e.parseAnchor(b[0],g.initialConfig.width,c),bottom:e.parseAnchor(b[1],g.initialConfig.height,h)}}},sizePolicy:{$:{readsWidth:1,readsHeight:1,setsWidth:0,setsHeight:0},b:{readsWidth:1,readsHeight:0,setsWidth:0,setsHeight:1},r:{$:{readsWidth:0,readsHeight:1,setsWidth:1,setsHeight:0},b:{readsWidth:0,readsHeight:0,setsWidth:1,setsHeight:1}}},getItemSizePolicy:function(c){var e=c.anchorSpec,a="$",d=this.sizePolicy,b;if(e){b=this.owner.getSizeModel();if(e.right&&!b.width.shrinkWrap){d=d.r}if(e.bottom&&!b.height.shrinkWrap){a="b"}}return d[a]}},0,0,0,0,["layout.anchor"],0,[Ext.layout.container,"Anchor",Ext.layout,"AnchorLayout"],0));(Ext.cmd.derive("Ext.dashboard.Panel",Ext.panel.Panel,{cls:Ext.baseCSSPrefix+"dashboard-panel",anchor:"100%",layout:"fit",frame:true,closable:true,collapsible:true,animCollapse:true,titleCollapse:true,stateful:true,draggable:{moveOnDrag:false},animateClose:true,loadMask:true,minHeight:90,resizable:true,resizeHandles:"s",doClose:function(){var a=this;if(a.animateClose){if(!a.closing){a.closing=true;a.el.animate({opacity:0,callback:a.finishClose,scope:a})}}else{a.finishClose()}},finishClose:function(){var b=this,a=b.closeAction;b.closing=false;b.fireEvent("close",b);Ext.suspendLayouts();b[a]();Ext.resumeLayouts(true);if(a==="hide"){b.el.setOpacity(1)}},afterRender:function(){Ext.util.Renderable.prototype.afterRender.call(this);if(this.loading){this.onViewBeforeLoad()}},getLoadMask:function(){var c=this,b=c.rendered&&c.loadMask,a;if(b&&!b.isComponent){a={target:c};if(b===true){b=a}else{Ext.apply(a,b)}c.loadMask=b=Ext.ComponentManager.create(a,"loadmask")}return b||null},onAdd:function(a){Ext.container.Container.prototype.onAdd.apply(this,arguments);a.on({beforeload:"onViewBeforeLoad",load:"onViewLoaded",scope:this})},onViewBeforeLoad:function(){this.loading=true;var a=this.getLoadMask();if(a){a.show()}},onViewLoaded:function(){this.loading=false;var b=this.getLoadMask();if(b){b.hide()}var a=this.items.getAt(0);if(a.getTitle){var c=a.getTitle();if(c){this.setTitle(c)}}},setBox:function(a){this.setSize(a.width,a.height)},getState:function(){var a=this,b=Ext.panel.Panel.prototype.getState.call(this)||{};if(!b.collapsed){a.addPropertyToState(b,"height",a.rendered?a.getHeight():a.height||a.minHeight||100)}return b}},0,["dashboard-panel"],["box","component","container","dashboard-panel","panel"],{box:true,component:true,container:true,"dashboard-panel":true,panel:true},["widget.dashboard-panel"],0,[Ext.dashboard,"Panel"],0));(Ext.cmd.derive("Ext.dashboard.Column",Ext.container.Container,{layout:"anchor",isDashboardColumn:true,defaultType:"dashboard-panel",cls:Ext.baseCSSPrefix+"dashboard-column",synthetic:true,onRemove:function(b,g){var h=this,e=h.ownerCt,d,a,j=0,c;if(g&&e&&h.items.getCount()===0){d=Ext.Array.filter(e.query(">"+h.xtype),function(k){return k!==h});a=d.length;if(!h.destroyed&&a){e.remove(h);if(a===1){d[0].columnWidth=1}else{for(c=0;c<a;c++){j+=d[c].columnWidth}for(c=0;c<a;c++){d[c].columnWidth=d[c].columnWidth/j}}e.updateLayout()}}}},0,["dashboard-column"],["box","component","container","dashboard-column"],{box:true,component:true,container:true,"dashboard-column":true},["widget.dashboard-column"],0,[Ext.dashboard,"Column"],0));(Ext.cmd.derive("Ext.layout.container.Column",Ext.layout.container.Auto,{alternateClassName:"Ext.layout.ColumnLayout",type:"column",itemCls:Ext.baseCSSPrefix+"column",targetCls:Ext.baseCSSPrefix+"column-layout-ct",columnWidthSizePolicy:{readsWidth:0,readsHeight:1,setsWidth:1,setsHeight:0},createsInnerCt:true,manageOverflow:true,setsItemSize:true,isItemShrinkWrap:function(a){return true},getItemSizePolicy:function(a,b){if(a.columnWidth){if(!b){b=this.owner.getSizeModel()}if(!b.width.shrinkWrap){return this.columnWidthSizePolicy}}return this.autoSizePolicy},calculateItems:function(d,a){var o=this,e=d.targetContext,n=d.childItems,l=n.length,b=0,g=a.gotWidth,j,p,h,c,k,m;if(g===false){e.domBlock(o,"width");j=true}else{if(g){p=a.width}else{return true}}for(h=0;h<l;++h){c=n[h];k=c.getMarginInfo().width;if(!c.widthModel.calculated){m=c.getProp("width");if(typeof m!="number"){c.block(o,"width");j=true}b+=m+k}}if(!j){p=(p<b)?0:p-b;for(h=0;h<l;++h){c=n[h];if(c.widthModel.calculated){k=c.marginInfo.width;m=c.target.columnWidth;m=Math.floor(m*p)-k;m=c.setWidth(m);b+=m+k}}d.setContentWidth(b+d.paddingContext.getPaddingInfo().width)}return !j}},0,0,0,0,["layout.column"],0,[Ext.layout.container,"Column",Ext.layout,"ColumnLayout"],0));(Ext.cmd.derive("Ext.resizer.SplitterTracker",Ext.dd.DragTracker,{enabled:true,overlayCls:Ext.baseCSSPrefix+"resizable-overlay",createDragOverlay:function(){var a;a=this.overlay=Ext.getBody().createChild({role:"presentation",cls:this.overlayCls,html:"&#160;"});a.unselectable();a.setSize(Ext.dom.Element.getDocumentWidth(),Ext.dom.Element.getDocumentHeight());a.show()},getPrevCmp:function(){var a=this.getSplitter();return a.previousSibling(":not([hidden])")},getNextCmp:function(){var a=this.getSplitter();return a.nextSibling(":not([hidden])")},onBeforeStart:function(j){var d=this,g=d.getPrevCmp(),a=d.getNextCmp(),c=d.getSplitter().collapseEl,h=j.getTarget(),b;if(!g||!a){return false}if(c&&h===d.getSplitter().collapseEl.dom){return false}if(a.collapsed||g.collapsed){return false}d.prevBox=g.getEl().getBox();d.nextBox=a.getEl().getBox();d.constrainTo=b=d.calculateConstrainRegion();if(!b){return false}return b},onStart:function(b){var a=this.getSplitter();this.createDragOverlay();a.addCls(a.baseCls+"-active")},calculateConstrainRegion:function(){var h=this,a=h.getSplitter(),j=a.getWidth(),k=a.defaultSplitMin,b=a.orientation,e=h.prevBox,l=h.getPrevCmp(),c=h.nextBox,g=h.getNextCmp(),n,m,d;if(b==="vertical"){d={prevCmp:l,nextCmp:g,prevBox:e,nextBox:c,defaultMin:k,splitWidth:j};n=new Ext.util.Region(e.y,h.getVertPrevConstrainRight(d),e.bottom,h.getVertPrevConstrainLeft(d));m=new Ext.util.Region(c.y,h.getVertNextConstrainRight(d),c.bottom,h.getVertNextConstrainLeft(d))}else{n=new Ext.util.Region(e.y+(l.minHeight||k),e.right,(l.maxHeight?e.y+l.maxHeight:c.bottom-(g.minHeight||k))+j,e.x);m=new Ext.util.Region((g.maxHeight?c.bottom-g.maxHeight:e.y+(l.minHeight||k))-j,c.right,c.bottom-(g.minHeight||k),c.x)}return n.intersect(m)},performResize:function(n,h){var p=this,a=p.getSplitter(),j=a.orientation,q=p.getPrevCmp(),o=p.getNextCmp(),b=a.ownerCt,l=b.query(">[flex]"),m=l.length,c=j==="vertical",k=0,g=c?"width":"height",d=0,r,s;for(;k<m;k++){r=l[k];s=c?r.getWidth():r.getHeight();d+=s;r.flex=s}h=c?h[0]:h[1];if(q){s=p.prevBox[g]+h;if(q.flex){q.flex=s}else{q[g]=s}}if(o){s=p.nextBox[g]-h;if(o.flex){o.flex=s}else{o[g]=s}}b.updateLayout()},endDrag:function(){var a=this;if(a.overlay){a.overlay.destroy();delete a.overlay}Ext.dd.DragTracker.prototype.endDrag.apply(this,arguments)},onEnd:function(c){var a=this,b=a.getSplitter();b.removeCls(b.baseCls+"-active");a.performResize(c,a.getResizeOffset())},onDrag:function(g){var c=this,h=c.getOffset("dragTarget"),d=c.getSplitter(),b=d.getEl(),a=d.orientation;if(a==="vertical"){b.setX(c.startRegion.left+h[0])}else{b.setY(c.startRegion.top+h[1])}},getSplitter:function(){return this.splitter},getVertPrevConstrainRight:function(a){return(a.prevCmp.maxWidth?a.prevBox.x+a.prevCmp.maxWidth:a.nextBox.right-(a.nextCmp.minWidth||a.defaultMin))+a.splitWidth},getVertPrevConstrainLeft:function(a){return a.prevBox.x+(a.prevCmp.minWidth||a.defaultMin)},getVertNextConstrainRight:function(a){return a.nextBox.right-(a.nextCmp.minWidth||a.defaultMin)},getVertNextConstrainLeft:function(a){return(a.nextCmp.maxWidth?a.nextBox.right-a.nextCmp.maxWidth:a.prevBox.x+(a.prevBox.minWidth||a.defaultMin))-a.splitWidth},getResizeOffset:function(){return this.getOffset("dragTarget")}},0,0,0,0,0,0,[Ext.resizer,"SplitterTracker"],0));(Ext.cmd.derive("Ext.layout.container.ColumnSplitterTracker",Ext.resizer.SplitterTracker,{performResize:function(g,d){var k=this,n=k.getPrevCmp(),j=k.getNextCmp(),b=k.getSplitter(),c=b.ownerCt,m=d[0],l,a,h;if(n&&j){n.width=l=k.prevBox.width+m;j.width=a=k.nextBox.width-m;h=(n.columnWidth+j.columnWidth)/(l+a);n.columnWidth=l*h;j.columnWidth=a*h}b.el.dom.style.left="";c.updateLayout()}},0,0,0,0,0,0,[Ext.layout.container,"ColumnSplitterTracker"],0));(Ext.cmd.derive("Ext.layout.container.ColumnSplitter",Ext.resizer.Splitter,{isSplitter:true,synthetic:true,cls:"x-splitter-vertical",orientation:"vertical",collapseDirection:"left",trackerClass:"Ext.layout.container.ColumnSplitterTracker",width:7,height:1,getTrackerConfig:function(){var a=Ext.resizer.Splitter.prototype.getTrackerConfig.call(this);a.xclass=this.trackerClass;return a}},0,["columnsplitter"],["box","columnsplitter","component","splitter"],{box:true,columnsplitter:true,component:true,splitter:true},["widget.columnsplitter"],0,[Ext.layout.container,"ColumnSplitter"],0));(Ext.cmd.derive("Ext.layout.container.SplitColumn",Ext.layout.container.Column,{type:"split-column",firstColumnCls:Ext.baseCSSPrefix+"split-column-first",lastColumnCls:Ext.baseCSSPrefix+"split-column-last",getSplitterConfig:function(){return{xtype:"columnsplitter"}},beginLayout:function(e){Ext.layout.container.Auto.prototype.beginLayout.apply(this,[e]);var j=e.childItems,n=(e.rows=[]),d=j.length,k=2,c,h,g,m,a,l,b;for(h=0;h<d;++h){l=(c=j[h]).target;a=l.isSplitter;b=a?0:l.columnWidth;if(k+b>1){if(g){g.el.setHeight(0);g.orphan=1}k=0;n.push(m={index:n.length,items:[],maxHeight:0})}k+=b;m.items.push(c);c.row=m;if(a){c.el.setHeight(1)}g=c}},beforeLayoutCycle:function(c){var b=this,a=b.owner.items;if(b.splitterGen!==a.generation){b.syncSplitters();b.syncFirstLast();b.splitterGen=a.generation}Ext.layout.container.Auto.prototype.beforeLayoutCycle.apply(this,arguments)},finishedLayout:function(e){var b=e.childItems,a=b.length,d,j,c,g,h;Ext.layout.container.Auto.prototype.finishedLayout.apply(this,[e]);for(c=0;c<a;c+=2){g=(j=b[c]).target;d=g.lastBox;h=j.row;h.maxHeight=Math.max(h.maxHeight,d.height)}for(c=1;c<a;c+=2){g=(j=b[c]).target;if(!j.orphan){g.el.setHeight(j.row.maxHeight)}}},syncSplitters:function(){var h=this,a=h.owner,b=a.items.items,c=b.length,e=true,d=false,g,j;while(c-->0){g=b[c];if(d){if(g.isSplitter){d=false}else{if(e){e=false;a.suspendLayouts()}j=a.add(c+1,h.getSplitterConfig())}}else{if(g.isSplitter){if(e){e=false;a.suspendLayouts()}a.remove(g)}else{d=true}}}while(b.length&&(g=b[0]).isSplitter){if(e){e=false;a.suspendLayouts()}a.remove(g)}if(!e){a.resumeLayouts()}},syncFirstLast:function(){var g=this,e=g.owner.items.items,b=g.firstColumnCls,j=g.lastColumnCls,d=e.length,a=[b,j],c,k,h;for(c=0;c<d;c+=2){k=e[c];h=(c===d-1);if(!c){if(h){k.addCls(a)}else{k.addCls(b);k.removeCls(j)}}else{if(h){k.addCls(j);k.removeCls(b)}else{k.removeCls(a)}}}}},0,0,0,0,["layout.split-column"],0,[Ext.layout.container,"SplitColumn"],0));(Ext.cmd.derive("Ext.dashboard.DropZone",Ext.dd.DropTarget,{ddScrollConfig:{vthresh:50,hthresh:-1,animate:true,increment:200},overClass:"x-dashboard-dd-over",constructor:function(b,a){this.dashboard=b;Ext.dd.ScrollManager.register(b.body);Ext.dd.DropTarget.prototype.constructor.apply(this,[b.body,a]);b.body.ddScrollConfig=this.ddScrollConfig},getOverEvent:function(z,u,B){var o=this.dashboard,n=o.items.items,b=o.body.getBox(),d=n.length,c=u.getXY(),j=c[0]-b.x,h=c[1]-b.y,q={columnIndex:0,column:n[0],dashboard:o,above:null,extensible:((n.length+1)/2<(o.maxColumns||1)),beforeAfter:0,data:B,panel:B.panel,rawEvent:u,source:z,status:this.dropAllowed},m,A,r,p,v,l,s,a,g;if(j<0&&q.extensible){q.beforeAfter=-1}else{if(j>b.width){q.beforeAfter=q.extensible?1:0;q.columnIndex=d-1}else{for(r=0;r<d;r+=2){v=n[r];l=v.lastBox.width;if(n[r+1]){l+=n[r+1].lastBox.width}if(j<l){q.columnIndex=r;q.column=v;a=v.items.items;m=Math.min(80,l*0.2);q.beforeAfter=m=(q.extensible&&((j<m)?-1:((j>l-m)?1:0)));if(!m||!q.extensible){for(p=0,s=a.length;p<s;++p){g=a[p];A=g.el.getHeight();if(h<A/2){q.above=g;break}h-=A}}break}j-=l}}}return q},notifyOver:function(o,j,h){var m=this,n=m.dashboard,k=m.getOverEvent(o,j,h),c=k.column.el,l=o.proxy,b,d=k.above,g,a;h.lastOver=k;if(n.fireEvent("validatedrop",k)!==false&&n.fireEvent("beforedragover",k)!==false){b=o.panelProxy.getProxy();l.getProxy().setWidth("auto");if(k.beforeAfter){o.panelProxy.moveProxy(c.dom,c.dom.firstChild);g=c.getWidth();a=g/2;b.setWidth(a)}else{if(d){o.panelProxy.moveProxy(d.el.dom.parentNode,d.el.dom)}else{o.panelProxy.moveProxy(c.dom,null)}b.setWidth("auto")}if(k.beforeAfter>0){b.setStyle("margin-left",(g-a-c.getPadding("lr"))+"px")}else{b.setStyle("margin-left","")}this.scrollPos=n.body.getScroll();n.fireEvent("dragover",k)}return k.status},notifyDrop:function(p,h,c){Ext.dd.DropTarget.prototype.notifyDrop.apply(this,arguments);var l=this.dashboard,j=c.lastOver,a=j.panel,k=j.beforeAfter,m=a.ownerCt,d=j.column,g=m.items.indexOf(a),o=j.above?d.items.indexOf(j.above):d.items.getCount(),n,b;if(m===d){if(m.items.getCount()===1){return}if(!k){if(g<o){--o}if(g===o){return}}}if(l.fireEvent("validatedrop",j)===false||l.fireEvent("beforedrop",j)===false){return}Ext.suspendLayouts();a.isMoving=true;if(k){n=l.items.indexOf(d);if(k>0){++n}b=l.createColumn();b.columnWidth=d.columnWidth=d.columnWidth/2;d=l.insert(n,b);o=0}a.el.dom.style.display="";d.insert(o,a);if(m.items.getCount()===0){d.columnWidth+=m.columnWidth}a.isMoving=false;a.updateLayout();Ext.resumeLayouts(true);l.fireEvent("drop",j)},unreg:function(){Ext.dd.ScrollManager.unregister(this.dashboard.body);Ext.dd.DragDrop.prototype.unreg.call(this)}},1,0,0,0,0,0,[Ext.dashboard,"DropZone"],0));(Ext.cmd.derive("Ext.dashboard.Part",Ext.Base,{factoryConfig:{type:"part"},isPart:true,_lastId:0,config:{id:null,dashboard:null,viewTemplate:{collapsed:"{collapsed}",columnIndex:"{columnIndex}",id:"{id}",title:"{title}",height:"{height}"}},viewTemplateOptions:{excludeProperties:{bind:1}},valueRe:/^[{][a-z]*[}]$/i,constructor:function(a){this.initConfig(a)},applyViewTemplate:function(a){return Ext.util.ObjectTemplate.create(a,this.viewTemplateOptions)},displayForm:function(a,b,d,c){d.call(c||this,{})},createView:function(b){var d=this,c=d.getViewTemplate(),a=c.apply(b);a.dashboard=d.getDashboard();a.part=d;a._partConfig=b;return a}},1,0,0,0,["part.part"],[[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable],[Ext.mixin.Identifiable.prototype.mixinId||Ext.mixin.Identifiable.$className,Ext.mixin.Identifiable]],[Ext.dashboard,"Part"],0));(Ext.cmd.derive("Ext.dashboard.Dashboard",Ext.panel.Panel,{isDashboard:true,cls:Ext.baseCSSPrefix+"dashboard",bodyCls:Ext.baseCSSPrefix+"dashboard-body",firstColumnCls:Ext.baseCSSPrefix+"dashboard-column-first",lastColumnCls:Ext.baseCSSPrefix+"dashboard-column-last",defaultType:"dashboard-column",autoScroll:true,layout:null,stateful:true,idSeed:1,maxColumns:4,config:{parts:null},initComponent:function(){var a=this;if(!a.layout){a.layout={type:"split-column",firstColumnCls:a.firstColumnCls,lastColumnCls:a.lastColumnCls}}Ext.panel.Panel.prototype.initComponent.call(this)},applyParts:function(b,c){if(!c){c=new Ext.util.Collection({decoder:Ext.Factory.part})}var d,a;for(d in b){a=b[d];if(Ext.isString(a)){a={type:a}}a.id=d;a.dashboard=this;c.add(a)}return c},getPart:function(a){var b=this.getParts();return b.getByKey(a)},addNew:function(b){var c=this,a=c.getPart(b);a.displayForm(null,null,function(d){d.type=b;c.addView(d)})},addView:function(l,e,j){var h=this,g=h.items,c=g.getCount(),d=e||0,k=l.id?l:h.createView(l),a=h.columnWidths,b;if(d>=c){d=c-1;j=1}if(!j){b=g.getAt(d);return b.add(k)}if(j>0){++d}b=h.createColumn();if(a){b.columnWidth=a[d]}if(!b.items){b.items=[]}b.items.push(k);b=h.add(d,b);g=b.items;return g.getAt(g.getCount()-1)},createColumn:function(a){return Ext.apply({items:[],bubbleEvents:["add","remove","move","resize"],listeners:{remove:this.onRemoveItem,scope:this}},a)},createView:function(c){var e=this,d=c.type,b=e.getPart(d),a=b.createView(c);if(!a.id){a.id=e.id+"_"+d+(e.idSeed++)}return a},initEvents:function(){Ext.Component.prototype.initEvents.call(this);this.dd=new Ext.dashboard.DropZone(this,this.dropConfig)},beforeDestroy:function(){if(this.dd){this.dd.unreg()}Ext.panel.Panel.prototype.beforeDestroy.call(this)},applyState:function(e){delete e.items;Ext.panel.Panel.prototype.applyState.apply(this,[e]);var b=e.columnWidths,a=this.items.items,d=a.length,c,g;if(b){g=b.length;for(c=0;c<d;++c){a[c].columnWidth=(c<g)?b[c]:(1/d)}}},getState:function(){var g=this,b=[],a=g.items.items,h=Ext.panel.Panel.prototype.getState.call(this)||{},e=a.length,c,d;for(c=0;c<e;++c){if(!(d=a[c]).isSplitter){b.push(d.columnWidth)}}h.columnWidths=b;h.idSeed=g.idSeed;h.items=g.serializeItems();return h},initItems:function(){var b=this,a=b.defaultContent,c;if(b.stateful){c=Ext.state.Manager.get(b.getStateId());a=(c&&c.items)||a}if(!b.items&&a){b.items=b.deserializeItems(a)}Ext.panel.Panel.prototype.initItems.call(this)},deserializeItems:function(e){var j=this,b=e.length,d=[],a=j.columnWidths,m=j.maxColumns,c,h,g,l,k;for(g=0;g<b;++g){k=e[g];h=Math.min(k.columnIndex||0,m-1);delete k.columnIndex;if(!(c=d[h])){d[h]=c=j.createColumn();if(a){c.columnWidth=a[h]}}l=j.createView(k);c.items.push(l)}for(g=0,b=d.length;g<b;++g){c=d[g];if(!c.columnWidth){c.columnWidth=1/b}}return d},serializeItem:function(a){return Ext.apply({type:a.part.id,id:a.id,columnIndex:a.columnIndex},a._partConfig)},serializeItems:function(){var n=this,m=n.items.items,b=m.length,l=[],h=0,a,g,e,o,d,c;for(e=0;e<b;++e){o=m[e];if(!o.isSplitter){g=o.items.items;for(d=0,c=g.length;d<c;++d){a=g[d];a.columnIndex=h;l.push(n.serializeItem(a))}++h}}return l},onRemoveItem:function(a,b){if(!b.isMoving){Ext.state.Manager.clear(b.getStateId())}}},0,["dashboard"],["box","component","container","dashboard","panel"],{box:true,component:true,container:true,dashboard:true,panel:true},["widget.dashboard"],0,[Ext.dashboard,"Dashboard"],0));(Ext.cmd.derive("Ext.dom.Layer",Ext.Element,{alternateClassName:"Ext.Layer",isLayer:true,localXYNames:{get:"getLocalXY",set:"setLocalXY"},constructor:function(c,h){c=c||{};var l=this,k=Ext.DomHelper,j=c.parentEl,g=j?Ext.getDom(j):document.body,a=c.hideMode,m=Ext.baseCSSPrefix+(c.fixed?"fixed-layer":"layer"),d,b,e;if(h){d=Ext.getDom(h);if(!d.parentNode){g.appendChild(d)}}if(!d){d=k.append(g,c.dh||{tag:"div",cls:m})}if(c.id){d.id=c.id}b=d.id;if(b){e=Ext.cache[b];if(e){delete Ext.cache[b];e.dom=null}}Ext.dom.Element.prototype.constructor.apply(this,[d]);if(h){l.addCls(m)}if(c.preventSync){l.preventSync=true}if(c.cls){l.addCls(c.cls)}l.constrain=c.constrain!==false;if(a){l.setVisibilityMode(Ext.Element[a.toUpperCase()])}else{if(c.useDisplay){l.setVisibilityMode(Ext.Element.DISPLAY)}else{l.setVisibilityMode(Ext.Element.VISIBILITY)}}if(c.shadow){l.shadowOffset=c.shadowOffset||4;l.shadow=new Ext.Shadow({offset:l.shadowOffset,mode:c.shadow,fixed:c.fixed});l.disableShadow()}else{l.shadowOffset=0}if(c.hidden===true){l.hide()}else{if(c.hidden===false){l.show()}}},getZIndex:function(){return parseInt(this.getStyle("z-index"),10)},disableShadow:function(){var a=this;if(a.shadow&&!a.shadowDisabled){a.shadowDisabled=true;a.shadow.hide();a.lastShadowOffset=a.shadowOffset;a.shadowOffset=0}},enableShadow:function(a){var b=this;if(b.shadow&&b.shadowDisabled){b.shadowDisabled=false;b.shadowOffset=b.lastShadowOffset;delete b.lastShadowOffset;if(a){b.sync(true)}}},sync:function(d){var e=this,k=e.shadow,g,a,j,b,c;if(e.preventSync){return}if(!e.updating&&e.isVisible()&&k){g=e[e.localXYNames.get]();a=g[0];j=g[1];b=e.dom.offsetWidth;c=e.dom.offsetHeight;if(k&&!e.shadowDisabled){if(d&&!k.isVisible()){k.show(e)}else{k.realign(a,j,b,c)}}}return e},destroy:function(){this.hideUnders();Ext.dom.Element.prototype.destroy.call(this)},beginUpdate:function(){this.updating=true},endUpdate:function(){this.updating=false;this.sync(true)},hideUnders:function(){if(this.shadow){this.shadow.hide()}},constrainXY:function(){if(this.constrain){var g=Ext.Element.getViewportWidth(),b=Ext.Element.getViewportHeight(),m=Ext.getDoc().getScroll(),l=this.getXY(),j=l[0],e=l[1],a=this.shadowOffset,k=this.dom.offsetWidth+a,c=this.dom.offsetHeight+a,d=false;if((j+k)>g+m.left){j=g-k-a;d=true}if((e+c)>b+m.top){e=b-c-a;d=true}if(j<m.left){j=m.left;d=true}if(e<m.top){e=m.top;d=true}if(d){Ext.Layer.superclass.setXY.call(this,[j,e]);this.sync()}}return this},getConstrainOffset:function(){return this.shadowOffset},setVisible:function(e,b,d,h,g){var c=this,a;a=function(){if(e){c.sync(true)}if(h){h()}};if(!e){c.hideUnders(true)}Ext.dom.Element.prototype.setVisible.apply(this,[e,b,d,h,g]);if(!b){a()}return c},beforeFx:function(){this.beforeAction();return this.callParent(arguments)},afterFx:function(){this.callParent(arguments);this.sync(this.isVisible())},beforeAction:function(){if(!this.updating&&this.shadow){this.shadow.hide()}},setLeft:function(a){Ext.dom.Element.prototype.setLeft.apply(this,arguments);return this.sync()},setTop:function(a){Ext.dom.Element.prototype.setTop.apply(this,arguments);return this.sync()},setLeftTop:function(b,a){this.callParent(arguments);return this.sync()},setLocalX:function(){Ext.dom.Element.prototype.setLocalX.apply(this,arguments);return this.sync()},setLocalXY:function(){Ext.dom.Element.prototype.setLocalXY.apply(this,arguments);return this.sync()},setLocalY:function(){Ext.dom.Element.prototype.setLocalY.apply(this,arguments);return this.sync()},setXY:function(d,a,c,g,e){var b=this;g=b.createCB(g);b.fixDisplay();b.beforeAction();Ext.dom.Element.prototype.setXY.apply(this,[d,a,c,g,e]);if(!a){g()}return b},createCB:function(c){var a=this,b=a.shadow&&a.shadow.isVisible();return function(){a.constrainXY();a.sync(b);if(c){c()}}},setX:function(a,b,c,e,d){this.setXY([a,this.getY()],b,c,e,d);return this},setY:function(e,a,b,d,c){this.setXY([this.getX(),e],a,b,d,c);return this},setSize:function(a,c,b,e,j,g){var d=this;j=d.createCB(j);d.beforeAction();Ext.dom.Element.prototype.setSize.apply(this,[a,c,b,e,j,g]);if(!b){j()}return d},setWidth:function(a,b,d,g,e){var c=this;g=c.createCB(g);c.beforeAction();Ext.dom.Element.prototype.setWidth.apply(this,[a,b,d,g,e]);if(!b){g()}return c},setHeight:function(b,a,d,g,e){var c=this;g=c.createCB(g);c.beforeAction();Ext.dom.Element.prototype.setHeight.apply(this,[b,a,d,g,e]);if(!a){g()}return c},setZIndex:function(a){var b=this;b.zindex=a;if(b.shadow){b.shadow.setZIndex(a)}return b.setStyle("z-index",a)},onOpacitySet:function(a){var b=this.shadow;if(b){b.setOpacity(a)}},deprecated:{"4.2":{setBounds:function(h,g,a,k,b,c,j,d){var e=this;j=e.createCB(j);e.beforeAction();if(!b){Ext.Layer.superclass.setXY.call(e,[h,g]);Ext.Layer.superclass.setSize.call(e,a,k);j()}else{e.callParent([h,g,a,k,b,c,j,d])}return e}}}},1,0,0,0,0,0,[Ext.dom,"Layer",Ext,"Layer"],0));(Ext.cmd.derive("Ext.flash.Component",Ext.Component,{alternateClassName:"Ext.FlashComponent",flashVersion:"9.0.115",backgroundColor:"#ffffff",wmode:"opaque",swfWidth:"100%",swfHeight:"100%",expressInstall:false,renderTpl:['<div id="{swfId}" role="presentation"></div>'],initComponent:function(){Ext.Component.prototype.initComponent.call(this)},beforeRender:function(){Ext.util.Renderable.prototype.beforeRender.call(this);Ext.applyIf(this.renderData,{swfId:this.getSwfId()})},afterRender:function(){var b=this,a=Ext.apply({},b.flashParams),c=Ext.apply({},b.flashVars);Ext.util.Renderable.prototype.afterRender.call(this);a=Ext.apply({allowScriptAccess:"always",bgcolor:b.backgroundColor,wmode:b.wmode},a);c=Ext.apply({allowedDomain:document.location.hostname},c);new swfobject.embedSWF(b.url,b.getSwfId(),b.swfWidth,b.swfHeight,b.flashVersion,b.expressInstall?b.statics.EXPRESS_INSTALL_URL:undefined,c,a,b.flashAttributes,b.swfCallback.bind(b))},swfCallback:function(b){var a=this;if(b.success){a.swf=Ext.get(b.ref);a.onSuccess();a.fireEvent("success",a)}else{a.onFailure();a.fireEvent("failure",a)}},getSwfId:function(){return this.swfId||(this.swfId="extswf"+this.getAutoId())},onSuccess:function(){this.swf.setStyle("visibility","inherit")},onFailure:Ext.emptyFn,beforeDestroy:function(){var b=this,a=b.swf;if(a){swfobject.removeSWF(b.getSwfId());Ext.destroy(a);delete b.swf}Ext.Component.prototype.beforeDestroy.call(this)},statics:{EXPRESS_INSTALL_URL:"http://swfobject.googlecode.com/svn/trunk/swfobject/expressInstall.swf"}},0,["flash"],["box","component","flash"],{box:true,component:true,flash:true},["widget.flash"],0,[Ext.flash,"Component",Ext,"FlashComponent"],0));(Ext.cmd.derive("Ext.form.action.Action",Ext.Base,{alternateClassName:"Ext.form.Action",submitEmptyText:true,constructor:function(a){if(a){Ext.apply(this,a)}var b=a.params;if(Ext.isString(b)){this.params=Ext.Object.fromQueryString(b)}},run:Ext.emptyFn,onFailure:function(a){this.response=a;this.failureType=Ext.form.action.Action.CONNECT_FAILURE;this.form.afterAction(this,false)},processResponse:function(a){this.response=a;if(!a.responseText&&!a.responseXML){return true}return(this.result=this.handleResponse(a))},getUrl:function(){return this.url||this.form.url},getMethod:function(){return(this.method||this.form.method||"POST").toUpperCase()},getParams:function(){return Ext.apply({},this.params,this.form.baseParams)},createCallback:function(){var c=this,a,b=c.form;return{success:c.onSuccess,failure:c.onFailure,scope:c,timeout:(this.timeout*1000)||(b.timeout*1000),upload:b.fileUpload?c.onSuccess:a}},statics:{CLIENT_INVALID:"client",SERVER_INVALID:"server",CONNECT_FAILURE:"connect",LOAD_FAILURE:"load"}},1,0,0,0,0,0,[Ext.form.action,"Action",Ext.form,"Action"],0));(Ext.cmd.derive("Ext.form.action.Load",Ext.form.action.Action,{alternateClassName:"Ext.form.Action.Load",type:"load",run:function(){Ext.Ajax.request(Ext.apply(this.createCallback(),{method:this.getMethod(),url:this.getUrl(),headers:this.headers,params:this.getParams()}))},onSuccess:function(b){var a=this.processResponse(b),c=this.form;if(a===true||!a.success||!a.data){this.failureType=Ext.form.action.Action.LOAD_FAILURE;c.afterAction(this,false);return}c.clearInvalid();c.setValues(a.data);c.afterAction(this,true)},handleResponse:function(c){var a=this.form.reader,b,d;if(a){b=a.read(c);d=b.records&&b.records[0]?b.records[0].data:null;return{success:b.success,data:d}}return Ext.decode(c.responseText)}},0,0,0,0,["formaction.load"],0,[Ext.form.action,"Load",Ext.form.Action,"Load"],0));(Ext.cmd.derive("Ext.form.action.Submit",Ext.form.action.Action,{alternateClassName:"Ext.form.Action.Submit",type:"submit",run:function(){var b=this,a=b.form;if(b.clientValidation===false||a.isValid()){b.doSubmit()}else{b.failureType=Ext.form.action.Action.CLIENT_INVALID;a.afterAction(b,false)}},doSubmit:function(){var d=this,b=Ext.apply(d.createCallback(),{url:d.getUrl(),method:d.getMethod(),headers:d.headers}),c=d.form,e=d.jsonSubmit||c.jsonSubmit,a=e?"jsonData":"params",g;if(c.hasUpload()){g=d.buildForm();b.form=g.formEl;b.isUpload=true}else{b[a]=d.getParams(e)}Ext.Ajax.request(b);if(g){d.cleanup(g)}},cleanup:function(h){var e=h.formEl,d=h.uploadEls,b=h.uploadFields,a=b.length,c,g;for(c=0;c<a;++c){g=b[c];if(!g.clearOnSubmit){g.restoreInput(d[c])}}if(e){Ext.removeNode(e)}},getParams:function(d){var c=false,b=Ext.form.action.Action.prototype.getParams.call(this),a=this.form.getValues(c,c,this.submitEmptyText!==c,d,true);return Ext.apply({},a,b)},buildForm:function(){var k=this,n=[],l,s,h=k.form,d=k.getParams(),c=[],a=[],g=h.getFields().items,e,j=g.length,m,r,p,q,o,b;for(e=0;e<j;++e){m=g[e];if(m.isFileUpload()){c.push(m)}}for(r in d){if(d.hasOwnProperty(r)){p=d[r];if(Ext.isArray(p)){o=p.length;for(q=0;q<o;q++){n.push(k.getFieldConfig(r,p[q]))}}else{n.push(k.getFieldConfig(r,p))}}}l={tag:"form",role:"presentation",action:k.getUrl(),method:k.getMethod(),target:k.target||"_self",style:"display:none",cn:n};if(c.length){l.encoding=l.enctype="multipart/form-data"}s=Ext.DomHelper.append(Ext.getBody(),l);j=c.length;for(e=0;e<j;++e){b=c[e].extractFileInput();s.appendChild(b);a.push(b)}return{formEl:s,uploadFields:c,uploadEls:a}},getFieldConfig:function(a,b){return{tag:"input",type:"hidden",name:a,value:Ext.String.htmlEncode(b)}},onSuccess:function(b){var c=this.form,d=true,a=this.processResponse(b);if(a!==true&&!a.success){if(a.errors){c.markInvalid(a.errors)}this.failureType=Ext.form.action.Action.SERVER_INVALID;d=false}c.afterAction(this,d)},handleResponse:function(d){var a=this.form,c=a.errorReader,g,l,h,j,b,m;if(c){g=c.read(d);b=g.records;l=[];if(b){for(h=0,j=b.length;h<j;h++){l[h]=b[h].data}}if(l.length<1){l=null}m={success:g.success,errors:l}}else{try{m=Ext.decode(d.responseText)}catch(k){m={success:false,errors:[]}}}return m}},0,0,0,0,["formaction.submit"],0,[Ext.form.action,"Submit",Ext.form.Action,"Submit"],0));(Ext.cmd.derive("Ext.form.field.TextArea",Ext.form.field.Text,{alternateClassName:"Ext.form.TextArea",fieldSubTpl:['<textarea id="{id}" role="{role}" {inputAttrTpl}','<tpl if="name"> name="{name}"</tpl>','<tpl if="placeholder"> placeholder="{placeholder}"</tpl>','<tpl if="maxLength !== undefined"> maxlength="{maxLength}"</tpl>','<tpl if="readOnly"> readonly="readonly"</tpl>','<tpl if="disabled"> disabled="disabled"</tpl>','<tpl if="tabIdx"> tabIndex="{tabIdx}"</tpl>',' class="{fieldCls} {typeCls} {typeCls}-{ui} {inputCls}" ','<tpl if="fieldStyle"> style="{fieldStyle}"</tpl>',' autocomplete="off">\n','<tpl if="value">{[Ext.util.Format.htmlEncode(values.value)]}</tpl>',"</textarea>",{disableFormats:true}],growMin:60,growMax:1000,growAppend:"\n-",enterIsSpecial:false,preventScrollbars:false,setGrowSizePolicy:Ext.emptyFn,returnRe:/\r/g,inputCls:Ext.baseCSSPrefix+"form-textarea",extraFieldBodyCls:Ext.baseCSSPrefix+"form-textarea-body",getSubTplData:function(){var c=this,b=c.getFieldStyle(),a=Ext.form.field.Text.prototype.getSubTplData.call(this);if(c.grow){if(c.preventScrollbars){a.fieldStyle=(b||"")+";overflow:hidden;height:"+c.growMin+"px"}}return a},afterRender:function(){var a=this;Ext.form.field.Text.prototype.afterRender.apply(this,arguments);a.needsMaxCheck=a.enforceMaxLength&&a.maxLength!==Number.MAX_VALUE&&!Ext.supports.TextAreaMaxLength;if(a.needsMaxCheck){a.inputEl.on("paste",a.onPaste,a)}},transformRawValue:function(a){return this.stripReturns(a)},getValue:function(){return this.stripReturns(Ext.form.field.Base.prototype.getValue.call(this))},valueToRaw:function(a){a=this.stripReturns(a);return Ext.form.field.Base.prototype.valueToRaw.apply(this,[a])},stripReturns:function(a){if(a&&typeof a==="string"){a=a.replace(this.returnRe,"")}return a},onPaste:function(){var a=this;if(!a.pasteTask){a.pasteTask=new Ext.util.DelayedTask(a.pasteCheck,a)}a.pasteTask.delay(1)},pasteCheck:function(){var b=this,c=b.getValue(),a=b.maxLength;if(c.length>a){c=c.substr(0,a);b.setValue(c)}},fireKey:function(d){var b=this,a=d.getKey(),c;if(d.isSpecialKey()&&(b.enterIsSpecial||(a!==d.ENTER||d.hasModifier()))){b.fireEvent("specialkey",b,d)}if(b.needsMaxCheck&&a!==d.BACKSPACE&&a!==d.DELETE&&!d.isNavKeyPress()&&!b.isCutCopyPasteSelectAll(d,a)){c=b.getValue();if(c.length>=b.maxLength){d.stopEvent()}}},isCutCopyPasteSelectAll:function(b,a){if(b.ctrlKey){return a===b.A||a===b.C||a===b.V||a===b.X}return false},autoSize:function(){var d=this,g,c,a,b,e;if(d.grow&&d.rendered){g=d.inputEl;b=g.getWidth(true);e=Ext.util.Format.htmlEncode(g.dom.value)||"&#160;";e+=d.growAppend;e=e.replace(/\n/g,"<br/>");a=Ext.util.TextMetrics.measure(g,e,b).height+g.getPadding("tb")+d.inputWrap.getBorderWidth("tb")+d.triggerWrap.getBorderWidth("tb");a=Math.min(Math.max(a,d.growMin),d.growMax);d.bodyEl.setHeight(a);d.updateLayout();d.fireEvent("autosize",d,a)}},beforeDestroy:function(){var a=this.pasteTask;if(a){a.cancel();this.pasteTask=null}Ext.Component.prototype.beforeDestroy.call(this)}},0,["textarea","textareafield"],["box","component","field","textarea","textareafield","textfield"],{box:true,component:true,field:true,textarea:true,textareafield:true,textfield:true},["widget.textarea","widget.textareafield"],0,[Ext.form.field,"TextArea",Ext.form,"TextArea"],0));(Ext.cmd.derive("Ext.window.MessageBox",Ext.window.Window,{OK:1,YES:2,NO:4,CANCEL:8,OKCANCEL:9,YESNO:6,YESNOCANCEL:14,INFO:Ext.baseCSSPrefix+"message-box-info",WARNING:Ext.baseCSSPrefix+"message-box-warning",QUESTION:Ext.baseCSSPrefix+"message-box-question",ERROR:Ext.baseCSSPrefix+"message-box-error",hideMode:"offsets",closeAction:"hide",resizable:false,autoScroll:true,title:"&#160;",defaultMinWidth:250,defaultMaxWidth:600,defaultMinHeight:110,defaultMaxHeight:500,minWidth:null,maxWidth:null,minHeight:null,maxHeight:null,constrain:true,cls:[Ext.baseCSSPrefix+"message-box",Ext.baseCSSPrefix+"hidden-offsets"],layout:{type:"vbox",align:"stretch"},shrinkWrapDock:true,defaultTextHeight:75,minProgressWidth:250,minPromptWidth:250,buttonText:{ok:"OK",yes:"Yes",no:"No",cancel:"Cancel"},buttonIds:["ok","yes","no","cancel"],titleText:{confirm:"Confirm",prompt:"Prompt",wait:"Loading...",alert:"Attention"},baseIconCls:Ext.baseCSSPrefix+"message-box-icon",ariaRole:"alertdialog",makeButton:function(a){var b=this.buttonIds[a];return new Ext.button.Button({handler:this.btnCallback,itemId:b,scope:this,text:this.buttonText[b],minWidth:75})},btnCallback:function(a){var b=this,c,d;if(b.cfg.prompt||b.cfg.multiline){if(b.cfg.multiline){d=b.textArea}else{d=b.textField}c=d.getValue();d.reset()}b.hide();b.userCallback(a.itemId,c,b.cfg)},hide:function(){var b=this,a=b.cfg?b.cfg.cls:"";b.progressBar.reset();if(a){b.removeCls(a)}Ext.Component.prototype.hide.apply(this,arguments)},constructor:function(a){var b=this;Ext.Component.prototype.constructor.apply(this,arguments);b.minWidth=b.defaultMinWidth=(b.minWidth||b.defaultMinWidth);b.maxWidth=b.defaultMaxWidth=(b.maxWidth||b.defaultMaxWidth);b.minHeight=b.defaultMinHeight=(b.minHeight||b.defaultMinHeight);b.maxHeight=b.defaultMaxHeight=(b.maxHeight||b.defaultMaxHeight)},initComponent:function(a){var e=this,b=e.id,d,c;e.title=e.title||"&#160;";e.iconCls=e.iconCls||"";e.topContainer=new Ext.container.Container({layout:"hbox",padding:10,style:{overflow:"hidden"},items:[e.iconComponent=new Ext.Component({cls:e.baseIconCls}),e.promptContainer=new Ext.container.Container({flex:1,layout:{type:"vbox",align:"stretch"},items:[e.msg=new Ext.form.field.Display({id:b+"-displayfield",cls:e.baseCls+"-text"}),e.textField=new Ext.form.field.Text({id:b+"-textfield",enableKeyEvents:true,listeners:{keydown:e.onPromptKey,scope:e}}),e.textArea=new Ext.form.field.TextArea({id:b+"-textarea",height:75})]})]});e.progressBar=new Ext.ProgressBar({id:b+"-progressbar",margin:"0 10 10 10"});e.items=[e.topContainer,e.progressBar];e.msgButtons=[];for(d=0;d<4;d++){c=e.makeButton(d);e.msgButtons[c.itemId]=c;e.msgButtons.push(c)}e.bottomTb=new Ext.toolbar.Toolbar({id:b+"-toolbar",ui:"footer",dock:"bottom",layout:{pack:"center"},items:[e.msgButtons[0],e.msgButtons[1],e.msgButtons[2],e.msgButtons[3]]});e.dockedItems=[e.bottomTb];e.on("close",e.onClose,e);Ext.window.Window.prototype.initComponent.call(this)},onClose:function(){var a=this.header.child("[type=close]");a.itemId="cancel";this.btnCallback(a);delete a.itemId},onPromptKey:function(a,c){var b=this;if(c.keyCode===c.RETURN||c.keyCode===10){if(b.msgButtons.ok.isVisible()){b.msgButtons.ok.handler.call(b,b.msgButtons.ok)}else{if(b.msgButtons.yes.isVisible()){b.msgButtons.yes.handler.call(b,b.msgButtons.yes)}}}},reconfigure:function(b){var s=this,p=0,e=true,t=s.buttonText,d=s.resizer,n=s.header,r=n&&!n.isHeader,c=b&&(b.message||b.msg),u,l,h,o,q,g,a,j,m,k;s.updateButtonText();s.cfg=b=b||{};if(b.width){l=b.width}if(b.height){h=b.height}s.minWidth=b.minWidth||s.defaultMinWidth;s.maxWidth=b.maxWidth||s.defaultMaxWidth;s.minHeight=b.minHeight||s.defaultMinHeight;s.maxHeight=b.maxHeight||s.defaultMaxHeight;if(d){u=d.resizeTracker;d.minWidth=u.minWidth=s.minWidth;d.maxWidth=u.maxWidth=s.maxWidth;d.minHeight=u.minHeight=s.minHeight;d.maxHeight=u.maxHeight=s.maxHeight}delete s.defaultFocus;if(b.defaultFocus){s.defaultFocus=b.defaultFocus}s.animateTarget=b.animateTarget||undefined;s.modal=b.modal!==false;s.setTitle(b.title||(r&&n.title)||s.title);s.setIconCls(b.iconCls||(r&&n.iconCls)||s.iconCls);if(Ext.isObject(b.buttons)){s.buttonText=b.buttons;p=0}else{s.buttonText=b.buttonText||s.buttonText;p=Ext.isNumber(b.buttons)?b.buttons:0}p=p|s.updateButtonText();s.buttonText=t;Ext.suspendLayouts();delete s.width;delete s.height;if(l||h){if(l){s.setWidth(l)}if(h){s.setHeight(h)}}s.hidden=false;if(!s.rendered){s.render(Ext.getBody())}s.closable=b.closable!==false&&!b.wait;n=s.header;if(n){n.child("[type=close]").setVisible(s.closable);if(!b.title&&!s.closable&&!b.iconCls){n.hide()}else{n.show()}}s.liveDrag=!b.proxyDrag;s.userCallback=Ext.Function.bindCallback(b.callback||b.fn||Ext.emptyFn,b.scope||Ext.global);s.setIcon(b.icon);a=s.msg;if(c){a.setValue(c);a.show()}else{a.hide()}q=s.textArea;g=s.textField;if(b.prompt||b.multiline){s.multiline=b.multiline;if(b.multiline){q.setValue(b.value);q.setHeight(b.defaultTextHeight||s.defaultTextHeight);q.show();g.hide();s.defaultFocus=q}else{g.setValue(b.value);q.hide();g.show();s.defaultFocus=g}}else{q.hide();g.hide()}j=s.progressBar;if(b.progress||b.wait){j.show();s.updateProgress(0,b.progressText);k=b.wait;if(k===true){b=b.waitConfig}if(k){j.wait(k)}}else{j.hide()}m=s.msgButtons;for(o=0;o<4;o++){if(p&Math.pow(2,o)){if(!s.defaultFocus){s.defaultFocus=m[o]}m[o].show();e=false}else{m[o].hide()}}if(e){s.bottomTb.hide()}else{s.bottomTb.show()}Ext.resumeLayouts(true)},updateButtonText:function(){var d=this,c=d.buttonText,b=0,e,a;for(e in c){if(c.hasOwnProperty(e)){a=d.msgButtons[e];if(a){if(d.cfg&&d.cfg.buttonText){b=b|Math.pow(2,Ext.Array.indexOf(d.buttonIds,e))}if(a.text!=c[e]){a.setText(c[e])}}}}return b},show:function(a){var c=this,b;a=a||{};if(Ext.Component.layoutSuspendCount){Ext.on({resumelayouts:function(){c.show(a)},single:true});return c}c.reconfigure(a);if(a.cls){c.addCls(a.cls)}b=c.query("textfield:not([hidden]),textarea:not([hidden]),button:not([hidden])");c.preventFocusOnActivate=!b.length;c.hidden=true;Ext.Component.prototype.show.call(this);return c},onShow:function(){Ext.window.Window.prototype.onShow.apply(this,arguments);this.center()},updateText:function(a){this.msg.setValue(a)},setIcon:function(d,c,a){var e=this,g=e.iconComponent,b=e.messageIconCls;if(b){g.removeCls(b)}if(d){g.show();if(c||a){g.setSize(c||g.getWidth(),a||g.getHeight())}g.addCls(Ext.baseCSSPrefix+"dlg-icon");g.addCls(e.messageIconCls=d)}else{g.removeCls(Ext.baseCSSPrefix+"dlg-icon");g.hide()}return e},updateProgress:function(c,a,b){this.progressBar.updateProgress(c,a);if(b){this.updateText(b)}return this},onEsc:function(){if(this.closable!==false){Ext.window.Window.prototype.onEsc.apply(this,arguments)}},confirm:function(a,d,c,b){if(Ext.isString(a)){a={title:a,icon:this.QUESTION,message:d,buttons:this.YESNO,callback:c,scope:b}}return this.show(a)},prompt:function(g,d,c,b,a,e){if(Ext.isString(g)){g={prompt:true,title:g,minWidth:this.minPromptWidth,message:d,buttons:this.OKCANCEL,callback:c,scope:b,multiline:a,value:e}}return this.show(g)},wait:function(b,c,a){if(Ext.isString(b)){b={title:c,message:b,closable:false,wait:true,modal:true,minWidth:this.minProgressWidth,waitConfig:a}}return this.show(b)},alert:function(d,c,b,a){if(Ext.isString(d)){d={title:d,message:c,buttons:this.OK,fn:b,scope:a,minWidth:this.minWidth}}return this.show(d)},progress:function(c,b,a){if(Ext.isString(c)){c={title:c,message:b,progress:true,progressText:a}}return this.show(c)}},1,["messagebox"],["box","component","container","messagebox","panel","window"],{box:true,component:true,container:true,messagebox:true,panel:true,window:true},["widget.messagebox"],0,[Ext.window,"MessageBox"],function(){Ext.MessageBox=Ext.Msg=new this()}));(Ext.cmd.derive("Ext.form.Basic",Ext.util.Observable,{alternateClassName:"Ext.form.BasicForm",taskDelay:10,constructor:function(b,c){var d=this,a;d.owner=b;d.checkValidityTask=new Ext.util.DelayedTask(d.checkValidity,d);d.checkDirtyTask=new Ext.util.DelayedTask(d.checkDirty,d);d.monitor=new Ext.container.Monitor({selector:"[isFormField]:not([excludeForm])",scope:d,addHandler:d.onFieldAdd,removeHandler:d.onFieldRemove,invalidateHandler:d.onMonitorInvalidate});d.monitor.bind(b);Ext.apply(d,c);if(Ext.isString(d.paramOrder)){d.paramOrder=d.paramOrder.split(/[\s,|]/)}a=d.reader;if(a&&!a.isReader){if(typeof a==="string"){a={type:a}}d.reader=Ext.createByAlias("reader."+a.type,a)}a=d.errorReader;if(a&&!a.isReader){if(typeof a==="string"){a={type:a}}d.errorReader=Ext.createByAlias("reader."+a.type,a)}Ext.util.Observable.prototype.constructor.call(this)},initialize:function(){this.initialized=true;this.onValidityChange(!this.hasInvalidField())},timeout:30,paramsAsHash:false,waitTitle:"Please Wait...",trackResetOnLoad:false,wasDirty:false,destroy:function(){var b=this,a=b.monitor;if(a){a.unbind();b.monitor=null}b.clearListeners();b.checkValidityTask.cancel();b.checkDirtyTask.cancel();b.isDestroyed=true},onFieldAdd:function(b){var a=this;a.mon(b,"validitychange",a.checkValidityDelay,a);a.mon(b,"dirtychange",a.checkDirtyDelay,a);a.onMonitorInvalidate()},onFieldRemove:function(b){var a=this;a.mun(b,"validitychange",a.checkValidityDelay,a);a.mun(b,"dirtychange",a.checkDirtyDelay,a);a.onMonitorInvalidate()},onMonitorInvalidate:function(){if(this.initialized){this.checkValidityDelay()}},getFields:function(){return this.monitor.getItems()},getBoundItems:function(){var a=this._boundItems;if(!a||a.getCount()===0){a=this._boundItems=new Ext.util.MixedCollection();a.addAll(this.owner.query("[formBind]"))}return a},hasInvalidField:function(){return !!this.getFields().findBy(function(c){var a=c.preventMark,b;c.preventMark=true;b=c.isValid();c.preventMark=a;return !b})},isValid:function(){var a=this,b;Ext.suspendLayouts();b=a.getFields().filterBy(function(c){return !c.validate()});Ext.resumeLayouts(true);return b.length<1},checkValidity:function(){var b=this,a;if(b.isDestroyed){return}a=!b.hasInvalidField();if(a!==b.wasValid){b.onValidityChange(a);b.fireEvent("validitychange",b,a);b.wasValid=a}},checkValidityDelay:function(){var a=this.taskDelay;if(a){this.checkValidityTask.delay(a)}else{this.checkValidity()}},onValidityChange:function(g){var d=this.getBoundItems(),b,c,a,e;if(d){b=d.items;a=b.length;for(c=0;c<a;c++){e=b[c];if(e.disabled===g){e.setDisabled(!g)}}}},isDirty:function(){return !!this.getFields().findBy(function(a){return a.isDirty()})},checkDirtyDelay:function(){var a=this.taskDelay;if(a){this.checkDirtyTask.delay(a)}else{this.checkDirty()}},checkDirty:function(){var b=this,a;if(b.isDestroyed){return}a=this.isDirty();if(a!==this.wasDirty){this.fireEvent("dirtychange",this,a);this.wasDirty=a}},hasUpload:function(){return !!this.getFields().findBy(function(a){return a.isFileUpload()})},doAction:function(b,a){if(Ext.isString(b)){b=Ext.ClassManager.instantiateByAlias("formaction."+b,Ext.apply({},a,{form:this}))}if(this.fireEvent("beforeaction",this,b)!==false){this.beforeAction(b);Ext.defer(b.run,100,b)}return this},submit:function(a){a=a||{};var b=this,c;if(a.standardSubmit||b.standardSubmit){c="standardsubmit"}else{c=b.api?"directsubmit":"submit"}return b.doAction(c,a)},load:function(a){return this.doAction(this.api?"directload":"load",a)},updateRecord:function(c){c=c||this._record;if(!c){return this}var b=c.self.fields,d=this.getFieldValues(),h={},g=0,a=b.length,e;for(;g<a;++g){e=b[g].name;if(d.hasOwnProperty(e)){h[e]=d[e]}}c.beginEdit();c.set(h);c.endEdit();return this},loadRecord:function(a){this._record=a;return this.setValues(a.getData())},getRecord:function(){return this._record},beforeAction:function(c){var g=this,b=c.waitMsg,k=Ext.baseCSSPrefix+"mask-loading",d=g.getFields().items,e,j=d.length,h,a;for(e=0;e<j;e++){h=d[e];if(h.isFormField&&h.syncValue){h.syncValue()}}if(b){a=g.waitMsgTarget;if(a===true){g.owner.el.mask(b,k)}else{if(a){a=g.waitMsgTarget=Ext.get(a);a.mask(b,k)}else{g.floatingAncestor=g.owner.up("[floating]");if(g.floatingAncestor){g.savePreventFocusOnActivate=g.floatingAncestor.preventFocusOnActivate;g.floatingAncestor.preventFocusOnActivate=true}Ext.MessageBox.wait(b,c.waitTitle||g.waitTitle)}}}},afterAction:function(c,e){var a=this;if(c.waitMsg){var b=Ext.MessageBox,d=a.waitMsgTarget;if(d===true){a.owner.el.unmask()}else{if(d){d.unmask()}else{b.hide()}}}if(a.floatingAncestor){a.floatingAncestor.preventFocusOnActivate=a.savePreventFocusOnActivate}if(e){if(c.reset){a.reset()}Ext.callback(c.success,c.scope||c,[a,c]);a.fireEvent("actioncomplete",a,c)}else{Ext.callback(c.failure,c.scope||c,[a,c]);a.fireEvent("actionfailed",a,c)}},findField:function(a){return this.getFields().findBy(function(b){return b.id===a||b.name===a||b.dataIndex===a})},markInvalid:function(k){var d=this,h,a,b,g,c;function j(e,m){var l=d.findField(e);if(l){l.markInvalid(m)}}if(Ext.isArray(k)){a=k.length;for(h=0;h<a;h++){b=k[h];j(b.id,b.msg)}}else{if(k instanceof Ext.data.ErrorCollection){a=k.items.length;for(h=0;h<a;h++){b=k.items[h];j(b.field,b.message)}}else{for(c in k){if(k.hasOwnProperty(c)){g=k[c];j(c,g,k)}}}}return this},setValues:function(b){var d=this,a,c,g;function e(h,k){var j=d.findField(h);if(j){j.setValue(k);if(d.trackResetOnLoad){j.resetOriginalValue()}}}Ext.suspendLayouts();if(Ext.isArray(b)){c=b.length;for(a=0;a<c;a++){g=b[a];e(g.id,g.value)}}else{Ext.iterate(b,e)}Ext.resumeLayouts(true);return this},getValues:function(k,l,p,n,c){var o={},h=this.getFields().items,q=h.length,g=Ext.isArray,m,e,d,b,a,j;for(j=0;j<q;j++){m=h[j];if(!l||m.isDirty()){e=m[n?"getModelData":"getSubmitData"](p,c);if(Ext.isObject(e)){for(a in e){if(e.hasOwnProperty(a)){d=e[a];if(p&&d===""){d=m.emptyText||""}if(!m.isRadio){if(o.hasOwnProperty(a)){b=o[a];if(!g(b)){b=o[a]=[b]}if(g(d)){o[a]=b.concat(d)}else{b.push(d)}}else{o[a]=d}}else{o[a]=o[a]||d}}}}}}if(k){o=Ext.Object.toQueryString(o)}return o},getFieldValues:function(a){return this.getValues(false,a,false,true)},clearInvalid:function(){Ext.suspendLayouts();var b=this,a=b.getFields().items,c,d=a.length;for(c=0;c<d;c++){a[c].clearInvalid()}Ext.resumeLayouts(true);return b},reset:function(b){Ext.suspendLayouts();var c=this,a=c.getFields().items,d,e=a.length;for(d=0;d<e;d++){a[d].reset()}Ext.resumeLayouts(true);if(b===true){delete c._record}return c},applyToFields:function(c){var a=this.getFields().items,b,d=a.length;for(b=0;b<d;b++){Ext.apply(a[b],c)}return this},applyIfToFields:function(c){var a=this.getFields().items,b,d=a.length;for(b=0;b<d;b++){Ext.applyIf(a[b],c)}return this}},1,0,0,0,0,0,[Ext.form,"Basic",Ext.form,"BasicForm"],0));(Ext.cmd.derive("Ext.form.FieldAncestor",Ext.Mixin,{mixinConfig:{id:"fieldAncestor",after:{initInheritedState:"initFieldInheritedState"}},initFieldAncestor:function(){var a=this;a.monitor=new Ext.container.Monitor({scope:a,selector:"[isFormField]:not([excludeForm])",addHandler:a.onChildFieldAdd,removeHandler:a.onChildFieldRemove});a.initFieldDefaults()},initMonitor:function(){this.monitor.bind(this)},initFieldInheritedState:function(b){var a=b.fieldDefaults,c=this.fieldDefaults;if(c){if(a){b.fieldDefaults=Ext.apply(Ext.Object.chain(a),c)}else{b.fieldDefaults=c}}},onChildFieldAdd:function(b){var a=this;a.mon(b,"errorchange",a.handleFieldErrorChange,a);a.mon(b,"validitychange",a.handleFieldValidityChange,a)},onChildFieldRemove:function(b){var a=this;a.mun(b,"errorchange",a.handleFieldErrorChange,a);a.mun(b,"validitychange",a.handleFieldValidityChange,a)},initFieldDefaults:function(){if(!this.fieldDefaults){this.fieldDefaults={}}},handleFieldValidityChange:function(c,b){var a=this;if(c!==a){a.fireEvent("fieldvaliditychange",a,c,b);a.onFieldValidityChange(c,b)}},handleFieldErrorChange:function(b,a){var c=this;if(b!==c){c.fireEvent("fielderrorchange",c,b,a);c.onFieldErrorChange(b,a)}},onFieldValidityChange:Ext.emptyFn,onFieldErrorChange:Ext.emptyFn,beforeDestroy:function(){this.monitor.unbind();this.callParent()}},0,0,0,0,0,0,[Ext.form,"FieldAncestor"],0));(Ext.cmd.derive("Ext.layout.component.field.FieldContainer",Ext.layout.component.Auto,{type:"fieldcontainer",waitForOuterHeightInDom:true,waitForOuterWidthInDom:true,beginLayout:function(b){var a=this.owner;Ext.layout.Layout.prototype.beginLayout.apply(this,arguments);b.hasRawContent=true;a.containerEl.setStyle("height","");b.containerElContext=b.getEl("containerEl")},measureContentHeight:function(a){return this.callParent(arguments)?this.callParent(arguments):NaN},measureContentWidth:function(a){return this.callParent(arguments)?this.callParent(arguments):NaN},publishInnerHeight:function(c,b){var a=this.owner;if(a.labelAlign==="top"&&a.hasVisibleLabel()){b-=a.labelEl.getHeight()}if(a.msgTarget==="under"&&a.hasActiveError()){b-=a.errorWrapEl.getHeight()}b-=a.bodyEl.getPadding("tb");c.containerElContext.setHeight(b,false)},publishInnerWidth:function(c,b){var a=this.owner;if(a.labelAlign!=="top"&&a.hasVisibleLabel()){b-=(a.labelWidth+(a.labelPad||0))}if(a.msgTarget==="side"&&a.hasActiveError()){b-=a.errorWrapEl.getWidth()}b-=a.bodyEl.getPadding("lr");c.containerElContext.setWidth(b,false)}},0,0,0,0,["layout.fieldcontainer"],0,[Ext.layout.component.field,"FieldContainer"],0));(Ext.cmd.derive("Ext.form.FieldContainer",Ext.container.Container,{componentLayout:"fieldcontainer",componentCls:Ext.baseCSSPrefix+"form-fieldcontainer",shrinkWrap:true,customOverflowEl:"containerEl",childEls:["containerEl"],combineLabels:false,labelConnector:", ",combineErrors:false,maskOnDisable:false,invalidCls:"",fieldSubTpl:['<div id="{id}-containerEl" data-ref="containerEl" class="{containerElCls}" role="presentation">',"{%this.renderContainer(out,values)%}","</div>"],initComponent:function(){var a=this;a.initLabelable();a.initFieldAncestor();Ext.container.Container.prototype.initComponent.call(this);a.initMonitor()},onAdd:function(a){var b=this;if(a.isLabelable&&Ext.isGecko&&b.layout.type==="absolute"&&!b.hideLabel&&b.labelAlign!=="top"){a.x+=(b.labelWidth+b.labelPad)}Ext.container.Container.prototype.onAdd.apply(this,arguments);if(a.isLabelable&&b.combineLabels){a.oldHideLabel=a.hideLabel;a.hideLabel=true}b.updateLabel()},onRemove:function(a,b){var c=this;Ext.container.Container.prototype.onRemove.apply(this,arguments);if(!b){if(a.isLabelable&&c.combineLabels){a.hideLabel=a.oldHideLabel}c.updateLabel()}},initRenderData:function(){var a=this,b=Ext.util.Renderable.prototype.initRenderData.call(this);b.containerElCls=a.containerElCls;return Ext.applyIf(b,a.getLabelableRenderData())},getFieldLabel:function(){var a=this.fieldLabel||"";if(!a&&this.combineLabels){a=Ext.Array.map(this.query("[isFieldLabelable]"),function(b){return b.getFieldLabel()}).join(this.labelConnector)}return a},getSubTplData:function(){var a=this.initRenderData();Ext.apply(a,this.subTplData);return a},getSubTplMarkup:function(){var c=this,a=c.getTpl("fieldSubTpl"),b;if(!a.renderContent){c.setupRenderTpl(a)}b=a.apply(c.getSubTplData());return b},updateLabel:function(){var b=this,a=b.labelEl;if(a){b.setFieldLabel(b.getFieldLabel())}},onFieldErrorChange:function(){if(this.combineErrors){var c=this,d=c.getActiveError(),b=Ext.Array.filter(c.query("[isFormField]"),function(e){return e.hasActiveError()}),a=c.getCombinedErrors(b);if(a){c.setActiveErrors(a)}else{c.unsetActiveError()}if(d!==c.getActiveError()){c.updateLayout()}}},getCombinedErrors:function(e){var l=[],c,m=e.length,j,d,k,b,g,h;for(c=0;c<m;c++){j=e[c];d=j.getActiveErrors();b=d.length;for(k=0;k<b;k++){g=d[k];h=j.getFieldLabel();l.push((h?h+": ":"")+g)}}return l},privates:{applyTargetCls:function(b){var a=this.containerElCls;this.containerElCls=a?a+" "+b:b},getTargetEl:function(){return this.containerEl},initRenderTpl:function(){var a=this;if(!a.hasOwnProperty("renderTpl")){a.renderTpl=a.getTpl("labelableRenderTpl")}return a.callParent()}}},0,["fieldcontainer"],["box","component","container","fieldcontainer"],{box:true,component:true,container:true,fieldcontainer:true},["widget.fieldcontainer"],[["labelable",Ext.form.Labelable],["fieldAncestor",Ext.form.FieldAncestor]],[Ext.form,"FieldContainer"],0));(Ext.cmd.derive("Ext.layout.container.CheckboxGroup",Ext.layout.container.Container,{autoFlex:true,type:"checkboxgroup",createsInnerCt:true,childEls:["innerCt"],renderTpl:['<table id="{ownerId}-innerCt" data-ref="innerCt" class="'+Ext.plainTableCls+'" cellpadding="0"','role="presentation" style="{tableStyle}"><tr role="presentation">','<tpl for="columns">','<td class="{parent.colCls}" valign="top" style="{style}" role="presentation">',"{% this.renderColumn(out,parent,xindex-1) %}","</td>","</tpl>","</tr></table>"],lastOwnerItemsGeneration:null,beginLayout:function(b){var k=this,e,d,h,a,j,g=0,m=0,l=k.autoFlex,c=k.innerCt.dom.style;Ext.layout.container.Container.prototype.beginLayout.apply(this,arguments);e=k.columnNodes;b.innerCtContext=b.getEl("innerCt",k);if(!b.widthModel.shrinkWrap){d=e.length;if(k.columnsArray){for(h=0;h<d;h++){a=k.owner.columns[h];if(a<1){g+=a;m++}}for(h=0;h<d;h++){a=k.owner.columns[h];if(a<1){j=((a/g)*100)+"%"}else{j=a+"px"}e[h].style.width=j}}else{for(h=0;h<d;h++){j=l?(1/d*100)+"%":"";e[h].style.width=j;m++}}if(!m){c.tableLayout="fixed";c.width=""}else{if(m<d){c.tableLayout="fixed";c.width="100%"}else{c.tableLayout="auto";if(l){c.width="100%"}else{c.width=""}}}}else{c.tableLayout="auto";c.width=""}},cacheElements:function(){var a=this;Ext.layout.container.Container.prototype.cacheElements.call(this);a.rowEl=a.innerCt.down("tr");a.columnNodes=a.rowEl.dom.childNodes},calculate:function(h){var e=this,c,b,a,j,d,g;if(!h.getDomProp("containerChildrenSizeDone")){e.done=false}else{c=h.innerCtContext;b=h.widthModel.shrinkWrap;a=h.heightModel.shrinkWrap;j=a||b;d=c.el.dom;g=j&&c.getPaddingInfo();if(b){h.setContentWidth(d.offsetWidth+g.width,true)}if(a){h.setContentHeight(d.offsetHeight+g.height,true)}}},doRenderColumn:function(d,m,g){var j=m.$layout,c=j.owner,e=m.columnCount,h=c.items.items,b=h.length,n,a,k,l,o;if(c.vertical){k=Math.ceil(b/e);a=g*k;b=Math.min(b,a+k);l=1}else{a=g;l=e}for(;a<b;a+=l){n=h[a];j.configureItem(n);o=n.getRenderTree();Ext.DomHelper.generateMarkup(o,d)}},getColumnCount:function(){var b=this,a=b.owner,c=a.columns;if(b.columnsArray){return c.length}if(Ext.isNumber(c)){return c}return a.items.length},getItemSizePolicy:function(a){return this.autoSizePolicy},getRenderData:function(){var k=this,g=Ext.layout.container.Container.prototype.getRenderData.call(this),b=k.owner,h,d=k.getColumnCount(),a,c,j,l=k.autoFlex,e=0,m=0;if(k.columnsArray){for(h=0;h<d;h++){a=k.owner.columns[h];if(a<1){e+=a;m++}}}g.colCls=b.groupCls;g.columnCount=d;g.columns=[];for(h=0;h<d;h++){c=(g.columns[h]={});if(k.columnsArray){a=k.owner.columns[h];if(a<1){j=((a/e)*100)+"%"}else{j=a+"px"}c.style="width:"+j}else{c.style="width:"+(1/d*100)+"%";m++}}g.tableStyle=!m?"table-layout:fixed;":(m<d)?"table-layout:fixed;width:100%":(l)?"table-layout:auto;width:100%":"table-layout:auto;";return g},initLayout:function(){var b=this,a=b.owner;b.columnsArray=Ext.isArray(a.columns);b.autoColumns=!a.columns||a.columns==="auto";b.vertical=a.vertical;Ext.layout.Layout.prototype.initLayout.call(this)},isValidParent:Ext.returnTrue,setupRenderTpl:function(a){Ext.layout.container.Container.prototype.setupRenderTpl.apply(this,arguments);a.renderColumn=this.doRenderColumn},renderChildren:function(){var a=this,b=a.owner.items.generation;if(a.lastOwnerItemsGeneration!==b){a.lastOwnerItemsGeneration=b;a.renderItems(a.getLayoutItems())}},renderItems:function(e){var g=this,a=e.length,b,k,j,d,h,c;if(a){Ext.suspendLayouts();if(g.autoColumns){g.addMissingColumns(a)}d=g.columnNodes.length;j=Math.ceil(a/d);for(b=0;b<a;b++){k=e[b];h=g.getRenderRowIndex(b,j,d);c=g.getRenderColumnIndex(b,j,d);if(!k.rendered){g.renderItem(k,h,c)}else{if(!g.isItemAtPosition(k,h,c)){g.moveItem(k,h,c)}}}if(g.autoColumns){g.removeExceedingColumns(a)}Ext.resumeLayouts(true)}},isItemAtPosition:function(b,c,a){return b.el.dom===this.getNodeAt(c,a)},getRenderColumnIndex:function(b,a,c){if(this.vertical){return Math.floor(b/a)}else{return b%c}},getRenderRowIndex:function(b,a,d){var c=this;if(c.vertical){return b%a}else{return Math.floor(b/d)}},getNodeAt:function(b,a){return this.columnNodes[a].childNodes[b]},addMissingColumns:function(a){var g=this,c=g.columnNodes.length,e,h,b,d;if(c<a){e=a-c;h=g.rowEl;b=g.owner.groupCls;for(d=0;d<e;d++){h.createChild({cls:b,tag:"td",vAlign:"top",role:"presentation"})}}},removeExceedingColumns:function(a){var e=this,b=e.columnNodes.length,d,g,c;if(b>a){d=b-a;g=e.rowEl;for(c=0;c<d;c++){g.last().destroy()}}},renderItem:function(c,d,a){var b=this;b.configureItem(c);c.render(Ext.get(b.columnNodes[a]),d)},moveItem:function(d,g,b){var c=this,a=c.columnNodes[b],e=a.childNodes[g];a.insertBefore(d.el.dom,e||null)}},0,0,0,0,["layout.checkboxgroup"],0,[Ext.layout.container,"CheckboxGroup"],0));(Ext.cmd.derive("Ext.form.CheckboxGroup",Ext.form.FieldContainer,{columns:"auto",vertical:false,allowBlank:true,blankText:"You must select at least one item in this group",defaultType:"checkboxfield",groupCls:Ext.baseCSSPrefix+"form-check-group",extraFieldBodyCls:Ext.baseCSSPrefix+"form-checkboxgroup-body",layout:"checkboxgroup",componentCls:Ext.baseCSSPrefix+"form-checkboxgroup",ariaRole:"group",initComponent:function(){var a=this;Ext.form.FieldContainer.prototype.initComponent.call(this);a.initField()},initValue:function(){var b=this,a=b.value;b.originalValue=b.lastValue=a||b.getValue();if(a){b.setValue(a)}},onAdd:function(e){var d=this,b,a,c;if(e.isCheckbox){d.mon(e,"change",d.checkChange,d)}else{if(e.isContainer){b=e.items.items;for(c=0,a=b.length;c<a;c++){d.onAdd(b[c])}}}Ext.form.FieldContainer.prototype.onAdd.apply(this,arguments)},onRemove:function(e){var d=this,b,a,c;if(e.isCheckbox){d.mun(e,"change",d.checkChange,d)}else{if(e.isContainer){b=e.items.items;for(c=0,a=b.length;c<a;c++){d.onRemove(b[c])}}}Ext.form.FieldContainer.prototype.onRemove.apply(this,arguments)},isEqual:function(b,a){var c=Ext.Object.toQueryString;return c(b)===c(a)},getErrors:function(){var a=[];if(!this.allowBlank&&Ext.isEmpty(this.getChecked())){a.push(this.blankText)}return a},getBoxes:function(a){return this.query("[isCheckbox]"+(a||""))},eachBox:function(b,a){Ext.Array.forEach(this.getBoxes(),b,a||this)},getChecked:function(){return this.getBoxes("[checked]")},isDirty:function(){var c=this.getBoxes(),a,d=c.length;for(a=0;a<d;a++){if(c[a].isDirty()){return true}}},setReadOnly:function(e){var c=this.getBoxes(),a,d=c.length;for(a=0;a<d;a++){c[a].setReadOnly(e)}this.readOnly=e},reset:function(){var c=this,b=c.hasActiveError(),a=c.preventMark;c.preventMark=true;c.batchChanges(function(){var e=c.getBoxes(),d,g=e.length;for(d=0;d<g;d++){e[d].reset()}});c.preventMark=a;c.unsetActiveError();if(b){c.updateLayout()}},resetOriginalValue:function(){var d=this,c=d.getBoxes(),a,e=c.length;for(a=0;a<e;a++){c[a].resetOriginalValue()}d.originalValue=d.getValue();d.checkDirty()},setValue:function(h){var g=this,d=g.getBoxes(),a,k=d.length,e,c,j;g.batchChanges(function(){for(a=0;a<k;a++){e=d[a];c=e.getName();j=false;if(h&&h.hasOwnProperty(c)){if(Ext.isArray(h[c])){j=Ext.Array.contains(h[c],e.inputValue)}else{j=h[c]}}e.setValue(j)}});return g},getValue:function(){var d={},g=this.getBoxes(),c,k=g.length,h,e,a,j;for(c=0;c<k;c++){h=g[c];e=h.getName();a=h.inputValue;if(h.getValue()){if(d.hasOwnProperty(e)){j=d[e];if(!Ext.isArray(j)){j=d[e]=[j]}j.push(a)}else{d[e]=a}}}return d},getSubmitData:function(){return null},getModelData:function(){return null},validate:function(){var a=this,d,c,b;if(a.disabled){c=true}else{d=a.getErrors();c=Ext.isEmpty(d);b=a.wasValid;if(c){a.unsetActiveError()}else{a.setActiveError(d)}}if(c!==b){a.wasValid=c;a.fireEvent("validitychange",a,c);a.updateLayout()}return c}},0,["checkboxgroup"],["box","checkboxgroup","component","container","fieldcontainer"],{box:true,checkboxgroup:true,component:true,container:true,fieldcontainer:true},["widget.checkboxgroup"],[["field",Ext.form.field.Field]],[Ext.form,"CheckboxGroup"],function(){this.borrow(Ext.form.field.Base,["markInvalid","clearInvalid","setError"])}));(Ext.cmd.derive("Ext.form.FieldSet",Ext.container.Container,{checkboxUI:"default",collapsed:false,toggleOnTitleClick:true,baseCls:Ext.baseCSSPrefix+"fieldset",layout:"anchor",componentLayout:"fieldset",ariaRole:null,autoEl:"fieldset",childEls:["body"],renderTpl:["{%this.renderLegend(out,values);%}",'<div id="{id}-body" data-ref="body" class="{baseCls}-body {baseCls}-body-{ui} {bodyTargetCls}" ','role="presentation"<tpl if="bodyStyle"> style="{bodyStyle}"</tpl>>',"{%this.renderContainer(out,values);%}","</div>"],stateEvents:["collapse","expand"],maskOnDisable:false,beforeDestroy:function(){var b=this,a=b.legend;if(a){delete a.ownerCt;a.destroy();b.legend=null}Ext.container.Container.prototype.beforeDestroy.call(this)},initComponent:function(){var b=this,a=b.baseCls;b.initFieldAncestor();Ext.container.Container.prototype.initComponent.call(this);b.layout.managePadding=b.layout.manageOverflow=false;if(b.collapsed){b.addCls(a+"-collapsed");b.collapse()}if(b.title||b.checkboxToggle||b.collapsible){b.addTitleClasses();b.legend=Ext.widget(b.createLegendCt())}b.initMonitor()},initRenderData:function(){var a=this,b=Ext.util.Renderable.prototype.initRenderData.call(this);b.bodyTargetCls=a.bodyTargetCls;a.protoBody.writeTo(b);delete a.protoBody;return b},getState:function(){var a=Ext.Component.prototype.getState.call(this);a=this.addPropertyToState(a,"collapsed");return a},afterCollapse:Ext.emptyFn,afterExpand:Ext.emptyFn,collapsedHorizontal:function(){return true},collapsedVertical:function(){return true},createLegendCt:function(){var c=this,a=[],b={xtype:"container",baseCls:c.baseCls+"-header",layout:"container",ui:c.ui,id:c.id+"-legend",autoEl:"legend",ariaRole:null,ariaLabelledBy:"."+c.baseCls+"-header-text",items:a,ownerCt:c,shrinkWrap:true,ownerLayout:c.componentLayout};if(c.checkboxToggle){a.push(c.createCheckboxCmp())}else{if(c.collapsible){a.push(c.createToggleCmp())}}a.push(c.createTitleCmp());return b},createTitleCmp:function(){var b=this,a={xtype:"component",html:b.title,ui:b.ui,cls:b.baseCls+"-header-text",id:b.id+"-legendTitle"};if(b.collapsible&&b.toggleOnTitleClick){a.listeners={click:{element:"el",scope:b,fn:b.toggle}};a.cls+=" "+b.baseCls+"-header-text-collapsible"}return(b.titleCmp=Ext.widget(a))},createCheckboxCmp:function(){var b=this,c="-checkbox",a=b.baseCls+"-header"+c;a+=" "+a+"-"+b.ui;b.checkboxCmp=Ext.widget({xtype:"checkbox",hideEmptyLabel:true,name:b.checkboxName||b.id+c,cls:a,id:b.id+"-legendChk",ui:b.checkboxUI,checked:!b.collapsed,msgTarget:"none",listeners:{change:b.onCheckChange,scope:b}});return b.checkboxCmp},createToggleCmp:function(){var a=this;a.toggleCmp=Ext.widget({xtype:"tool",cacheHeight:false,cls:a.baseCls+"-header-tool-"+a.ui,type:"toggle",handler:a.toggle,id:a.id+"-legendToggle",scope:a});return a.toggleCmp},doRenderLegend:function(b,e){var d=e.$comp,c=d.legend,a;if(c){c.ownerLayout.configureItem(c);a=c.getRenderTree();Ext.DomHelper.generateMarkup(a,b)}},getCollapsed:function(){return this.collapsed?"top":false},getCollapsedDockedItems:function(){var a=this.legend;return a?[a]:[]},setTitle:function(c){var b=this,a=b.legend;b.title=c;if(b.rendered){if(!a){b.legend=a=Ext.widget(b.createLegendCt());b.addTitleClasses();a.ownerLayout.configureItem(a);a.render(b.el,0)}b.titleCmp.update(c)}else{if(a){b.titleCmp.update(c)}else{b.addTitleClasses();b.legend=Ext.widget(b.createLegendCt())}}return b},addTitleClasses:function(){var b=this,c=b.title,a=b.baseCls;if(c){b.addCls(a+"-with-title")}if(c||b.checkboxToggle||b.collapsible){b.addCls(a+"-with-legend")}},expand:function(){return this.setExpanded(true)},collapse:function(){return this.setExpanded(false)},setExpanded:function(b){var c=this,d=c.checkboxCmp,a=b?"expand":"collapse";if(!c.rendered||c.fireEvent("before"+a,c)!==false){b=!!b;if(d){d.setValue(b)}if(b){c.removeCls(c.baseCls+"-collapsed")}else{c.addCls(c.baseCls+"-collapsed")}c.collapsed=!b;if(b){delete c.getInherited().collapsed}else{c.getInherited().collapsed=true}if(c.rendered){c.updateLayout({isRoot:false});c.fireEvent(a,c)}}return c},getRefItems:function(a){var c=Ext.container.Container.prototype.getRefItems.apply(this,arguments),b=this.legend;if(b){c.unshift(b);if(a){c.unshift.apply(c,b.getRefItems(true))}}return c},toggle:function(){this.setExpanded(!!this.collapsed)},privates:{applyTargetCls:function(a){this.bodyTargetCls=a},finishRender:function(){var a=this.legend;this.callParent();if(a){a.finishRender()}},getProtoBody:function(){var b=this,a=b.protoBody;if(!a){b.protoBody=a=new Ext.util.ProtoElement({styleProp:"bodyStyle",styleIsText:true})}return a},getDefaultContentTarget:function(){return this.body},getTargetEl:function(){return this.body||this.frameBody||this.el},initPadding:function(e){var c=this,a=c.getProtoBody(),d=c.padding,b;if(d!==undefined){if(Ext.isIE8){d=c.parseBox(d);b=Ext.Element.parseBox(0);b.top=d.top;d.top=0;a.setStyle("padding",c.unitizeBox(b))}e.setStyle("padding",c.unitizeBox(d))}},onCheckChange:function(b,a){this.setExpanded(a)},setupRenderTpl:function(a){this.callParent(arguments);a.renderLegend=this.doRenderLegend}}},0,["fieldset"],["box","component","container","fieldset"],{box:true,component:true,container:true,fieldset:true},["widget.fieldset"],[["fieldAncestor",Ext.form.FieldAncestor]],[Ext.form,"FieldSet"],0));(Ext.cmd.derive("Ext.form.Label",Ext.Component,{autoEl:"label",maskOnDisable:false,getElConfig:function(){var a=this;a.html=a.text?Ext.util.Format.htmlEncode(a.text):(a.html||"");return Ext.apply(Ext.util.Renderable.prototype.getElConfig.call(this),{htmlFor:a.forId||""})},setText:function(c,b){var a=this;b=b!==false;if(b){a.text=c;delete a.html}else{a.html=c;delete a.text}if(a.rendered){a.el.dom.innerHTML=b!==false?Ext.util.Format.htmlEncode(c):c;a.updateLayout()}return a}},0,["label"],["box","component","label"],{box:true,component:true,label:true},["widget.label"],0,[Ext.form,"Label"],0));(Ext.cmd.derive("Ext.form.Panel",Ext.panel.Panel,{alternateClassName:["Ext.FormPanel","Ext.form.FormPanel"],layout:"anchor",ariaRole:"form",basicFormConfigs:["api","baseParams","errorReader","jsonSubmit","method","paramOrder","paramsAsHash","reader","standardSubmit","timeout","trackResetOnLoad","url","waitMsgTarget","waitTitle"],initComponent:function(){var a=this;if(a.frame){a.border=false}a.initFieldAncestor();Ext.panel.Panel.prototype.initComponent.call(this);a.relayEvents(a.form,["beforeaction","actionfailed","actioncomplete","validitychange","dirtychange"]);if(a.pollForChanges){a.startPolling(a.pollInterval||500)}},initItems:function(){Ext.panel.Panel.prototype.initItems.call(this);this.initMonitor();this.form=this.createForm()},afterFirstLayout:function(){Ext.util.Renderable.prototype.afterFirstLayout.apply(this,arguments);this.form.initialize()},createForm:function(){var b={},d=this.basicFormConfigs,a=d.length,c=0,e;for(;c<a;++c){e=d[c];b[e]=this[e]}return new Ext.form.Basic(this,b)},getForm:function(){return this.form},loadRecord:function(a){return this.getForm().loadRecord(a)},getRecord:function(){return this.getForm().getRecord()},updateRecord:function(a){return this.getForm().updateRecord(a)},getValues:function(d,b,c,a){return this.getForm().getValues(d,b,c,a)},isDirty:function(){return this.form.isDirty()},isValid:function(){return this.form.isValid()},reset:function(){this.form.reset()},hasInvalidField:function(){return this.form.hasInvalidField()},beforeDestroy:function(){this.stopPolling();this.form.destroy();Ext.panel.Panel.prototype.beforeDestroy.call(this)},load:function(a){this.form.load(a)},submit:function(a){this.form.submit(a)},startPolling:function(b){this.stopPolling();var a=new Ext.util.TaskRunner(b);a.start({interval:0,run:this.checkChange,scope:this});this.pollTask=a},stopPolling:function(){var a=this.pollTask;if(a){a.stopAll();delete this.pollTask}},checkChange:function(){var a=this.form.getFields().items,b,c=a.length;for(b=0;b<c;b++){a[b].checkChange()}}},0,["form"],["box","component","container","form","panel"],{box:true,component:true,container:true,form:true,panel:true},["widget.form"],[["fieldAncestor",Ext.form.FieldAncestor]],[Ext.form,"Panel",Ext,"FormPanel",Ext.form,"FormPanel"],0));(Ext.cmd.derive("Ext.form.RadioManager",Ext.util.MixedCollection,{singleton:true,getByName:function(a,b){return this.filterBy(function(c){return c.name==a&&c.getFormId()==b})},getWithValue:function(a,b,c){return this.filterBy(function(d){return d.name==a&&d.inputValue==b&&d.getFormId()==c})},getChecked:function(a,b){return this.findBy(function(c){return c.name==a&&c.checked&&c.getFormId()==b})}},0,0,0,0,0,0,[Ext.form,"RadioManager"],0));(Ext.cmd.derive("Ext.form.field.Radio",Ext.form.field.Checkbox,{alternateClassName:"Ext.form.Radio",isRadio:true,inputType:"radio",ariaRole:"radio",formId:null,getGroupValue:function(){var a=this.getManager().getChecked(this.name,this.getFormId());return a?a.inputValue:null},onBoxClick:function(){var a=this;if(!a.disabled&&!a.readOnly){this.setValue(true)}},onRemoved:function(){Ext.Component.prototype.onRemoved.apply(this,arguments);this.formId=null},setValue:function(b){var a=this,c;if(Ext.isBoolean(b)){Ext.form.field.Checkbox.prototype.setValue.apply(this,arguments)}else{c=a.getManager().getWithValue(a.name,b,a.getFormId()).getAt(0);if(c){c.setValue(true)}}return a},getSubmitValue:function(){return this.checked?this.inputValue:null},getModelData:function(){var a=Ext.form.field.Field.prototype.getModelData.apply(this,arguments);if(a){a[this.getName()]=this.getSubmitValue()}return a},onChange:function(c,a){var g=this,e,d,b,h;Ext.form.field.Checkbox.prototype.onChange.apply(this,arguments);if(c){h=g.getManager().getByName(g.name,g.getFormId()).items;d=h.length;for(e=0;e<d;e++){b=h[e];if(b!==g){b.setValue(false)}}}},getManager:function(){return Ext.form.RadioManager}},0,["radio","radiofield"],["box","checkbox","checkboxfield","component","field","radio","radiofield"],{box:true,checkbox:true,checkboxfield:true,component:true,field:true,radio:true,radiofield:true},["widget.radio","widget.radiofield"],0,[Ext.form.field,"Radio",Ext.form,"Radio"],0));(Ext.cmd.derive("Ext.form.RadioGroup",Ext.form.CheckboxGroup,{allowBlank:true,blankText:"You must select one item in this group",defaultType:"radiofield",groupCls:Ext.baseCSSPrefix+"form-radio-group",ariaRole:"radiogroup",getBoxes:function(a){return this.query("[isRadio]"+(a||""))},checkChange:function(){var b=this.getValue(),a=Ext.Object.getKeys(b)[0];if(Ext.isArray(b[a])){return}Ext.form.field.Field.prototype.checkChange.apply(this,arguments)},setValue:function(d){var j,g,e,h,c,a,b;if(Ext.isObject(d)){for(b in d){if(d.hasOwnProperty(b)){j=d[b];g=this.items.first();e=g?g.getFormId():null;h=Ext.form.RadioManager.getWithValue(b,j,e).items;a=h.length;for(c=0;c<a;++c){h[c].setValue(true)}}}}return this}},0,["radiogroup"],["box","checkboxgroup","component","container","fieldcontainer","radiogroup"],{box:true,checkboxgroup:true,component:true,container:true,fieldcontainer:true,radiogroup:true},["widget.radiogroup"],0,[Ext.form,"RadioGroup"],0));(Ext.cmd.derive("Ext.form.action.DirectLoad",Ext.form.action.Load,{alternateClassName:"Ext.form.Action.DirectLoad",type:"directload",run:function(){var e=this,d=e.form,c=d.api,b=c.load,g,a;if(typeof b!=="function"){c.load=b=Ext.direct.Manager.parseMethod(b)}g=b.directCfg.method;a=g.getArgs(e.getParams(),d.paramOrder,d.paramsAsHash);a.push(e.onComplete,e);b.apply(window,a)},processResponse:function(a){return(this.result=a)},onComplete:function(a){if(a){this.onSuccess(a)}else{this.onFailure(null)}}},0,0,0,0,["formaction.directload"],0,[Ext.form.action,"DirectLoad",Ext.form.Action,"DirectLoad"],0));(Ext.cmd.derive("Ext.form.action.DirectSubmit",Ext.form.action.Submit,{alternateClassName:"Ext.form.Action.DirectSubmit",type:"directsubmit",doSubmit:function(){var e=this,d=e.form,c=d.api,b=c.submit,g,a;if(typeof b!=="function"){c.submit=b=Ext.direct.Manager.parseMethod(b)}if(e.timeout||d.timeout){a={timeout:e.timeout*1000||d.timeout*1000}}g=e.buildForm();b.call(window,g.formEl,e.onComplete,e,a);e.cleanup(g)},processResponse:function(a){return(this.result=a)},onComplete:function(a){if(a){this.onSuccess(a)}else{this.onFailure(null)}}},0,0,0,0,["formaction.directsubmit"],0,[Ext.form.action,"DirectSubmit",Ext.form.Action,"DirectSubmit"],0));(Ext.cmd.derive("Ext.form.action.StandardSubmit",Ext.form.action.Submit,{doSubmit:function(){var a=this.buildForm();a.formEl.submit();this.cleanup(a)}},0,0,0,0,["formaction.standardsubmit"],0,[Ext.form.action,"StandardSubmit"],0));(Ext.cmd.derive("Ext.form.field.Picker",Ext.form.field.Text,{alternateClassName:"Ext.form.Picker",config:{triggers:{picker:{handler:"onTriggerClick",scope:"this"}}},matchFieldWidth:true,pickerAlign:"tl-bl?",openCls:Ext.baseCSSPrefix+"pickerfield-open",editable:true,applyTriggers:function(b){var c=this,a=b.picker;if(!a.cls){a.cls=c.triggerCls}return Ext.form.field.Text.prototype.applyTriggers.apply(this,[b])},initEvents:function(){var a=this;Ext.form.field.Text.prototype.initEvents.call(this);a.keyNav=new Ext.util.KeyNav(a.inputEl,{down:a.onDownArrow,esc:{handler:a.onEsc,scope:a,defaultEventAction:false},scope:a,forceKeyDown:true});if(!a.editable){a.mon(a.inputEl,"click",a.onTriggerClick,a)}if(Ext.isGecko){a.inputEl.dom.setAttribute("autocomplete","off")}},onEsc:function(a){if(Ext.isIE){a.preventDefault()}if(this.isExpanded){this.collapse();a.stopEvent()}},onDownArrow:function(){if(!this.isExpanded){this.onTriggerClick()}},expand:function(){var c=this,a,b,d;if(c.rendered&&!c.isExpanded&&!c.isDestroyed){c.expanding=true;a=c.bodyEl;b=c.getPicker();d=c.collapseIf;b.show();c.isExpanded=true;c.alignPicker();a.addCls(c.openCls);c.mon(Ext.getDoc(),{mousewheel:d,mousedown:d,scope:c});Ext.on("resize",c.alignPicker,c);c.fireEvent("expand",c);c.onExpand();delete c.expanding}},onExpand:Ext.emptyFn,alignPicker:function(){var c=this,b,a=c.getPicker();if(c.isExpanded){if(c.matchFieldWidth){b=c.bodyEl.getWidth();a.setWidth(b)}if(a.isFloating()){c.doAlign()}}},doAlign:function(){var d=this,c=d.picker,a="-above",b;d.picker.alignTo(d.triggerWrap,d.pickerAlign,d.pickerOffset);b=c.el.getY()<d.inputEl.getY();d.bodyEl[b?"addCls":"removeCls"](d.openCls+a);c[b?"addCls":"removeCls"](c.baseCls+a)},collapse:function(){var d=this;if(d.isExpanded&&!d.isDestroyed&&!d.destroying){var c=d.openCls,b=d.picker,e=Ext.getDoc(),g=d.collapseIf,a="-above";b.hide();d.isExpanded=false;d.bodyEl.removeCls([c,c+a]);b.el.removeCls(b.baseCls+a);e.un("mousewheel",g,d);e.un("mousedown",g,d);Ext.un("resize",d.alignPicker,d);d.fireEvent("collapse",d);d.onCollapse()}},onCollapse:Ext.emptyFn,collapseIf:function(b){var a=this;if(!a.isDestroyed&&!b.within(a.bodyEl,false,true)&&!a.owns(b.target)){a.collapse()}},getPicker:function(){var a=this;return a.picker||(a.picker=a.createPicker())},getRefItems:function(){var a=[];if(this.picker){a[0]=this.picker}return a},createPicker:Ext.emptyFn,onTriggerClick:function(){var a=this;if(!a.readOnly&&!a.disabled){if(a.isExpanded){a.collapse()}else{a.expand()}if(!Ext.supports.TouchEvents){a.inputEl.focus()}}},onOtherFocus:function(a){if(this.hasFocus&&!this.owns(a)){Ext.form.field.Text.prototype.onOtherFocus.apply(this,[a])}},triggerBlur:function(){Ext.form.field.Text.prototype.triggerBlur.apply(this,arguments);this.collapse()},mimicBlur:function(c){var b=this,a=b.picker;if(!a||!b.owns(c.target)){Ext.form.field.Text.prototype.mimicBlur.apply(this,arguments)}else{b.inputEl.focus()}},beforeDestroy:function(){var b=this,a=b.picker;b.collapse();Ext.Component.prototype.beforeDestroy.call(this);Ext.un("resize",b.alignPicker,b);Ext.destroy(b.keyNav,a);if(a){delete b.picker;delete a.pickerField}}},0,["pickerfield"],["box","component","field","pickerfield","textfield"],{box:true,component:true,field:true,pickerfield:true,textfield:true},["widget.pickerfield"],0,[Ext.form.field,"Picker",Ext.form,"Picker"],0));(Ext.cmd.derive("Ext.layout.component.BoundList",Ext.layout.component.Auto,{type:"component",beginLayout:function(d){var c=this,a=c.owner,b=a.pagingToolbar;c.scrollPos=a.listWrap.getScroll();Ext.layout.Layout.prototype.beginLayout.apply(this,arguments);if(a.floating){d.savedXY=a.getXY();a.setXY([0,-9999])}if(b){d.toolbarContext=d.context.getCmp(b)}d.listContext=d.getEl("listWrap")},beginLayoutCycle:function(b){var a=this.owner;Ext.layout.component.Auto.prototype.beginLayoutCycle.apply(this,arguments);if(b.heightModel.auto){a.el.setHeight("auto");a.listWrap.setHeight("auto")}},getLayoutItems:function(){var a=this.owner.pagingToolbar;return a?[a]:[]},isValidParent:function(){return true},finishedLayout:function(d){var c=this,e=d.savedXY,a=c.owner,b=a.listWrap,g=c.scrollPos;Ext.layout.component.Component.prototype.finishedLayout.apply(this,arguments);if(e){c.owner.setXY(e)}b.setScrollLeft(g.left);b.setScrollTop(g.top)},measureContentWidth:function(a){return this.owner.listWrap.getWidth()},measureContentHeight:function(a){return this.owner.listWrap.getHeight()},publishInnerHeight:function(c,a){var b=c.toolbarContext,d=0;if(b){d=b.getProp("height")}if(d===undefined){this.done=false}else{c.listContext.setHeight(a-c.getFrameInfo().height-d)}},calculateOwnerHeightFromContentHeight:function(c){var a=Ext.layout.component.Auto.prototype.calculateOwnerHeightFromContentHeight.apply(this,arguments),b=c.toolbarContext;if(b){a+=b.getProp("height")}return a}},0,0,0,0,["layout.boundlist"],0,[Ext.layout.component,"BoundList"],0));(Ext.cmd.derive("Ext.toolbar.TextItem",Ext.toolbar.Item,{alternateClassName:"Ext.Toolbar.TextItem",text:"",renderTpl:"{text}",baseCls:Ext.baseCSSPrefix+"toolbar-text",ariaRole:null,beforeRender:function(){var a=this;Ext.util.Renderable.prototype.beforeRender.call(this);Ext.apply(a.renderData,{text:a.text})},setText:function(b){var a=this;a.text=b;if(a.rendered){a.el.setHtml(b);a.updateLayout()}}},0,["tbtext"],["box","component","tbitem","tbtext"],{box:true,component:true,tbitem:true,tbtext:true},["widget.tbtext"],0,[Ext.toolbar,"TextItem",Ext.Toolbar,"TextItem"],0));(Ext.cmd.derive("Ext.form.trigger.Spinner",Ext.form.trigger.Trigger,{cls:Ext.baseCSSPrefix+"form-trigger-spinner",spinnerCls:Ext.baseCSSPrefix+"form-spinner",spinnerUpCls:Ext.baseCSSPrefix+"form-spinner-up",spinnerDownCls:Ext.baseCSSPrefix+"form-spinner-down",focusCls:Ext.baseCSSPrefix+"form-spinner-focus",overCls:Ext.baseCSSPrefix+"form-spinner-over",clickCls:Ext.baseCSSPrefix+"form-spinner-click",focusFieldOnClick:true,vertical:true,bodyTpl:'<tpl if="vertical"><div class="{spinnerCls} {spinnerCls}-{ui} {spinnerUpCls} {spinnerUpCls}-{ui} {childElCls} {upDisabledCls}"></div></tpl><div class="{spinnerCls} {spinnerCls}-{ui} {spinnerDownCls} {spinnerDownCls}-{ui} {childElCls} {downDisabledCls}"></div><tpl if="!vertical"><div class="{spinnerCls} {spinnerCls}-{ui} {spinnerUpCls} {spinnerUpCls}-{ui} {childElCls} {upDisabledCls}"></div></tpl>',getBodyRenderData:function(){var a=this;return{vertical:a.vertical,upDisabledCls:a.upEnabled?"":(a.spinnerUpCls+"-disabled"),downDisabledCls:a.downEnabled?"":(a.spinnerDownCls+"-disabled"),spinnerCls:a.spinnerCls,spinnerUpCls:a.spinnerUpCls,spinnerDownCls:a.spinnerDownCls}},getStateEl:function(){return this.spinnerEl},onClick:function(d){var b=this,a=arguments,d=b.clickRepeater?a[1]:a[0],c=b.field;if(!c.readOnly&&!c.disabled){if(b.upEl.contains(d.target)){Ext.callback(b.upHandler,b.scope,[c,b,d],0,c)}else{if(b.downEl.contains(d.target)){Ext.callback(b.downHandler,b.scope,[c,b,d],0,c)}}}c.inputEl.focus()},onFieldRender:function(){var b=this,a=b.vertical,d,c;Ext.form.trigger.Trigger.prototype.onFieldRender.call(this);d=b.spinnerEl=b.el.select("."+b.spinnerCls,true);c=d.elements;b.upEl=a?c[0]:c[1];b.downEl=a?c[1]:c[0]},setUpEnabled:function(a){this.upEl[a?"removeCls":"addCls"](this.spinnerUpCls+"-disabled")},setDownEnabled:function(a){this.downEl[a?"removeCls":"addCls"](this.spinnerDownCls+"-disabled")}},0,0,0,0,["trigger.spinner"],0,[Ext.form.trigger,"Spinner"],0));(Ext.cmd.derive("Ext.form.field.Spinner",Ext.form.field.Text,{alternateClassName:"Ext.form.Spinner",config:{triggers:{spinner:{type:"spinner",upHandler:"onSpinnerUpClick",downHandler:"onSpinnerDownClick",scope:"this"}}},spinUpEnabled:true,spinDownEnabled:true,keyNavEnabled:true,mouseWheelEnabled:true,repeatTriggerClick:true,onSpinUp:Ext.emptyFn,onSpinDown:Ext.emptyFn,ariaRole:"spinbutton",applyTriggers:function(b){var c=this,a=b.spinner;a.upEnabled=c.spinUpEnabled;a.downEnabled=c.spinDownEnabled;return Ext.form.field.Text.prototype.applyTriggers.apply(this,[b])},onRender:function(){var b=this,a=b.getTrigger("spinner");Ext.form.field.Text.prototype.onRender.call(this);if(b.keyNavEnabled){b.spinnerKeyNav=new Ext.util.KeyNav(b.inputEl,{scope:b,up:b.spinUp,down:b.spinDown})}if(b.mouseWheelEnabled){b.mon(b.bodyEl,"mousewheel",b.onMouseWheel,b)}b.spinUpEl=a.upEl;b.spinDownEl=a.downEl},onSpinnerUpClick:function(){this.spinUp()},onSpinnerDownClick:function(){this.spinDown()},spinUp:function(){var a=this;if(a.spinUpEnabled&&!a.disabled){a.fireEvent("spin",a,"up");a.fireEvent("spinup",a);a.onSpinUp()}},spinDown:function(){var a=this;if(a.spinDownEnabled&&!a.disabled){a.fireEvent("spin",a,"down");a.fireEvent("spindown",a);a.onSpinDown()}},setSpinUpEnabled:function(a){var b=this,c=b.spinUpEnabled;b.spinUpEnabled=a;if(c!==a&&b.rendered){b.getTrigger("spinner").setUpEnabled(a)}},setSpinDownEnabled:function(a){var b=this,c=b.spinDownEnabled;b.spinDownEnabled=a;if(c!==a&&b.rendered){b.getTrigger("spinner").setDownEnabled(a)}},onMouseWheel:function(b){var a=this,c;if(a.hasFocus){c=b.getWheelDelta();if(c>0){a.spinUp()}else{if(c<0){a.spinDown()}}b.stopEvent()}},onDestroy:function(){Ext.destroyMembers(this,"spinnerKeyNav");Ext.form.field.Text.prototype.onDestroy.call(this)}},0,["spinnerfield"],["box","component","field","spinnerfield","textfield"],{box:true,component:true,field:true,spinnerfield:true,textfield:true},["widget.spinnerfield"],0,[Ext.form.field,"Spinner",Ext.form,"Spinner"],0));(Ext.cmd.derive("Ext.form.field.Number",Ext.form.field.Spinner,{alternateClassName:["Ext.form.NumberField","Ext.form.Number"],allowExponential:true,allowDecimals:true,decimalSeparator:null,submitLocaleSeparator:true,decimalPrecision:2,minValue:Number.NEGATIVE_INFINITY,maxValue:Number.MAX_VALUE,step:1,minText:"The minimum value for this field is {0}",maxText:"The maximum value for this field is {0}",nanText:"{0} is not a valid number",negativeText:"The value cannot be negative",baseChars:"0123456789",autoStripChars:false,initComponent:function(){var a=this;if(a.decimalSeparator===null){a.decimalSeparator=Ext.util.Format.decimalSeparator}Ext.form.field.Text.prototype.initComponent.call(this);a.setMinValue(a.minValue);a.setMaxValue(a.maxValue)},getErrors:function(c){var b=this,e=Ext.form.field.Text.prototype.getErrors.apply(this,arguments),d=Ext.String.format,a;c=Ext.isDefined(c)?c:this.processRawValue(this.getRawValue());if(c.length<1){return e}c=String(c).replace(b.decimalSeparator,".");if(isNaN(c)){e.push(d(b.nanText,c))}a=b.parseValue(c);if(b.minValue===0&&a<0){e.push(this.negativeText)}else{if(a<b.minValue){e.push(d(b.minText,b.minValue))}}if(a>b.maxValue){e.push(d(b.maxText,b.maxValue))}return e},rawToValue:function(b){var a=this.fixPrecision(this.parseValue(b));if(a===null){a=b||null}return a},valueToRaw:function(c){var b=this,a=b.decimalSeparator;c=b.parseValue(c);c=b.fixPrecision(c);c=Ext.isNumber(c)?c:parseFloat(String(c).replace(a,"."));c=isNaN(c)?"":String(c).replace(".",a);return c},getSubmitValue:function(){var a=this,b=Ext.form.field.Base.prototype.getSubmitValue.call(this);if(!a.submitLocaleSeparator){b=b.replace(a.decimalSeparator,".")}return b},onChange:function(){this.toggleSpinners();Ext.form.field.Text.prototype.onChange.apply(this,arguments)},toggleSpinners:function(){var c=this,d=c.getValue(),b=d===null,a;if(c.spinUpEnabled||c.spinUpDisabledByToggle){a=b||d<c.maxValue;c.setSpinUpEnabled(a,true)}if(c.spinDownEnabled||c.spinDownDisabledByToggle){a=b||d>c.minValue;c.setSpinDownEnabled(a,true)}},setMinValue:function(b){var a=this,c;a.minValue=Ext.Number.from(b,Number.NEGATIVE_INFINITY);a.toggleSpinners();if(a.disableKeyFilter!==true){c=a.baseChars+"";if(a.allowExponential){c+=a.decimalSeparator+"e+-"}else{if(a.allowDecimals){c+=a.decimalSeparator}if(a.minValue<0){c+="-"}}c=Ext.String.escapeRegex(c);a.maskRe=new RegExp("["+c+"]");if(a.autoStripChars){a.stripCharsRe=new RegExp("[^"+c+"]","gi")}}},setMaxValue:function(a){this.maxValue=Ext.Number.from(a,Number.MAX_VALUE);this.toggleSpinners()},parseValue:function(a){a=parseFloat(String(a).replace(this.decimalSeparator,"."));return isNaN(a)?null:a},fixPrecision:function(d){var c=this,b=isNaN(d),a=c.decimalPrecision;if(b||!d){return b?"":d}else{if(!c.allowDecimals||a<=0){a=0}}return parseFloat(Ext.Number.toFixed(parseFloat(d),a))},beforeBlur:function(){var b=this,a=b.rawToValue(b.getRawValue());if(!Ext.isEmpty(a)){b.setValue(a)}},setSpinUpEnabled:function(b,a){Ext.form.field.Spinner.prototype.setSpinUpEnabled.apply(this,arguments);if(!a){delete this.spinUpDisabledByToggle}else{this.spinUpDisabledByToggle=!b}},onSpinUp:function(){var a=this;if(!a.readOnly){a.setSpinValue(Ext.Number.constrain(a.getValue()+a.step,a.minValue,a.maxValue))}},setSpinDownEnabled:function(b,a){Ext.form.field.Spinner.prototype.setSpinDownEnabled.apply(this,arguments);if(!a){delete this.spinDownDisabledByToggle}else{this.spinDownDisabledByToggle=!b}},onSpinDown:function(){var a=this;if(!a.readOnly){a.setSpinValue(Ext.Number.constrain(a.getValue()-a.step,a.minValue,a.maxValue))}},setSpinValue:function(c){var b=this,a;if(b.enforceMaxLength){if(b.fixPrecision(c).toString().length>b.maxLength){return}}b.setValue(c)}},0,["numberfield"],["box","component","field","numberfield","spinnerfield","textfield"],{box:true,component:true,field:true,numberfield:true,spinnerfield:true,textfield:true},["widget.numberfield"],0,[Ext.form.field,"Number",Ext.form,"NumberField",Ext.form,"Number"],0));(Ext.cmd.derive("Ext.toolbar.Paging",Ext.toolbar.Toolbar,{alternateClassName:"Ext.PagingToolbar",displayInfo:false,prependButtons:false,displayMsg:"Displaying {0} - {1} of {2}",emptyMsg:"No data to display",beforePageText:"Page",afterPageText:"of {0}",firstText:"First Page",prevText:"Previous Page",nextText:"Next Page",lastText:"Last Page",refreshText:"Refresh",inputItemWidth:30,getPagingItems:function(){var b=this,a={scope:b,blur:b.onPagingBlur};a[Ext.supports.SpecialKeyDownRepeat?"keydown":"keypress"]=b.onPagingKeyDown;return[{itemId:"first",tooltip:b.firstText,overflowText:b.firstText,iconCls:Ext.baseCSSPrefix+"tbar-page-first",disabled:true,handler:b.moveFirst,scope:b},{itemId:"prev",tooltip:b.prevText,overflowText:b.prevText,iconCls:Ext.baseCSSPrefix+"tbar-page-prev",disabled:true,handler:b.movePrevious,scope:b},"-",b.beforePageText,{xtype:"numberfield",itemId:"inputItem",name:"inputItem",cls:Ext.baseCSSPrefix+"tbar-page-number",allowDecimals:false,minValue:1,hideTrigger:true,enableKeyEvents:true,keyNavEnabled:false,selectOnFocus:true,submitValue:false,isFormField:false,width:b.inputItemWidth,margin:"-1 2 3 2",listeners:a},{xtype:"tbtext",itemId:"afterTextItem",text:Ext.String.format(b.afterPageText,1)},"-",{itemId:"next",tooltip:b.nextText,overflowText:b.nextText,iconCls:Ext.baseCSSPrefix+"tbar-page-next",disabled:true,handler:b.moveNext,scope:b},{itemId:"last",tooltip:b.lastText,overflowText:b.lastText,iconCls:Ext.baseCSSPrefix+"tbar-page-last",disabled:true,handler:b.moveLast,scope:b},"-",{itemId:"refresh",tooltip:b.refreshText,overflowText:b.refreshText,iconCls:Ext.baseCSSPrefix+"tbar-loading",disabled:b.store.isLoading(),handler:b.doRefresh,scope:b}]},initComponent:function(){var b=this,a=b.items||b.buttons||[],c;b.bindStore(b.store||"ext-empty-store",true);c=b.getPagingItems();if(b.prependButtons){b.items=a.concat(c)}else{b.items=c.concat(a)}delete b.buttons;if(b.displayInfo){b.items.push("->");b.items.push({xtype:"tbtext",itemId:"displayItem"})}Ext.toolbar.Toolbar.prototype.initComponent.call(this)},beforeRender:function(){var a=this;Ext.container.Container.prototype.beforeRender.apply(this,arguments);if(!a.store.isLoading()){a.calledFromRender=true;a.onLoad();delete a.calledFromRender}},updateInfo:function(){var e=this,c=e.child("#displayItem"),a=e.store,b=e.getPageData(),d,g;if(c){d=a.getCount();if(d===0){g=e.emptyMsg}else{g=Ext.String.format(e.displayMsg,b.fromRecord,b.toRecord,b.total)}c.setText(g)}},onLoad:function(){var h=this,d,b,c,a,g,j,e;g=h.store.getCount();j=g===0;if(!j){d=h.getPageData();b=d.currentPage;c=d.pageCount;if(b>c){h.store.loadPage(c);return}a=Ext.String.format(h.afterPageText,isNaN(c)?1:c)}else{b=0;c=0;a=Ext.String.format(h.afterPageText,0)}Ext.suspendLayouts();e=h.child("#afterTextItem");if(e){e.setText(a)}e=h.getInputItem();if(e){e.setDisabled(j).setValue(b)}h.setChildDisabled("#first",b===1||j);h.setChildDisabled("#prev",b===1||j);h.setChildDisabled("#next",b===c||j);h.setChildDisabled("#last",b===c||j);h.setChildDisabled("#refresh",false);h.updateInfo();Ext.resumeLayouts(true);if(!h.calledFromRender){h.fireEvent("change",h,d)}},setChildDisabled:function(a,b){var c=this.child(a);if(c){c.setDisabled(b)}},getPageData:function(){var b=this.store,a=b.getTotalCount();return{total:a,currentPage:b.currentPage,pageCount:Math.ceil(a/b.pageSize),fromRecord:((b.currentPage-1)*b.pageSize)+1,toRecord:Math.min(b.currentPage*b.pageSize,a)}},onLoadError:function(){this.setChildDisabled("#refresh",false)},getInputItem:function(){return this.child("#inputItem")},readPageFromInput:function(b){var c=this.getInputItem(),d=false,a;if(c){a=c.getValue();d=parseInt(a,10);if(!a||isNaN(d)){c.setValue(b.currentPage);return false}}return d},onPagingBlur:function(c){var b=this.getInputItem(),a;if(b){a=this.getPageData().currentPage;b.setValue(a)}},onPagingKeyDown:function(b,a){this.processKeyEvent(b,a)},processKeyEvent:function(j,h){var d=this,b=h.getKey(),c=d.getPageData(),a=h.shiftKey?10:1,g;if(b==h.RETURN){h.stopEvent();g=d.readPageFromInput(c);if(g!==false){g=Math.min(Math.max(1,g),c.pageCount);if(g!==c.currentPage&&d.fireEvent("beforechange",d,g)!==false){d.store.loadPage(g)}}}else{if(b==h.HOME||b==h.END){h.stopEvent();g=b==h.HOME?1:c.pageCount;j.setValue(g)}else{if(b==h.UP||b==h.PAGE_UP||b==h.DOWN||b==h.PAGE_DOWN){h.stopEvent();g=d.readPageFromInput(c);if(g){if(b==h.DOWN||b==h.PAGE_DOWN){a*=-1}g+=a;if(g>=1&&g<=c.pageCount){j.setValue(g)}}}}}},beforeLoad:function(){this.setChildDisabled("#refresh",true)},moveFirst:function(){if(this.fireEvent("beforechange",this,1)!==false){this.store.loadPage(1);return true}return false},movePrevious:function(){var c=this,a=c.store,b=a.currentPage-1;if(b>0){if(c.fireEvent("beforechange",c,b)!==false){a.previousPage();return true}}return false},moveNext:function(){var d=this,a=d.store,c=d.getPageData().pageCount,b=a.currentPage+1;if(b<=c){if(d.fireEvent("beforechange",d,b)!==false){a.nextPage();return true}}return false},moveLast:function(){var b=this,a=b.getPageData().pageCount;if(b.fireEvent("beforechange",b,a)!==false){b.store.loadPage(a);return true}return false},doRefresh:function(){var b=this,a=b.store,c=a.currentPage;if(b.fireEvent("beforechange",b,c)!==false){a.loadPage(c);return true}return false},getStoreListeners:function(){return{beforeload:this.beforeLoad,load:this.onLoad,exception:this.onLoadError}},onDestroy:function(){this.bindStore(null);Ext.container.Container.prototype.onDestroy.call(this)}},0,["pagingtoolbar"],["box","component","container","pagingtoolbar","toolbar"],{box:true,component:true,container:true,pagingtoolbar:true,toolbar:true},["widget.pagingtoolbar"],[[Ext.util.StoreHolder.prototype.mixinId||Ext.util.StoreHolder.$className,Ext.util.StoreHolder]],[Ext.toolbar,"Paging",Ext,"PagingToolbar"],0));(Ext.cmd.derive("Ext.view.BoundList",Ext.view.View,{alternateClassName:"Ext.BoundList",pageSize:0,baseCls:Ext.baseCSSPrefix+"boundlist",itemCls:Ext.baseCSSPrefix+"boundlist-item",listItemCls:"",shadow:false,trackOver:true,preserveScrollOnRefresh:true,componentLayout:"boundlist",autoScroll:true,childEls:["listWrap","listEl"],renderTpl:['<div id="{id}-listWrap" data-ref="listWrap" role="presentation" class="{baseCls}-list-ct ',Ext.dom.Element.unselectableCls,'">','<ul id="{id}-listEl" data-ref="listEl" class="'+Ext.plainListCls+'">',"</ul>","</div>","{%","var pagingToolbar=values.$comp.pagingToolbar;","if (pagingToolbar) {","Ext.DomHelper.generateMarkup(pagingToolbar.getRenderTree(), out);","}","%}",{disableFormats:true}],initComponent:function(){var b=this,a=b.baseCls,c=b.itemCls;b.selectedItemCls=a+"-selected";if(b.trackOver){b.overItemCls=a+"-item-over"}b.itemSelector="."+c;b.scrollerSelector="ul."+Ext.plainListCls;if(b.floating){b.addCls(a+"-floating")}if(!b.tpl){b.tpl=new Ext.XTemplate('<tpl for=".">','<li role="option" unselectable="on" class="'+c+'">'+b.getInnerTpl(b.displayField)+"</li>","</tpl>")}else{if(!b.tpl.isTemplate){b.tpl=new Ext.XTemplate(b.tpl)}}if(b.pageSize){b.pagingToolbar=b.createPagingToolbar()}Ext.view.AbstractView.prototype.initComponent.call(this)},getRefOwner:function(){return this.pickerField||Ext.mixin.Inheritable.prototype.getRefOwner.call(this)},getRefItems:function(){var a=Ext.view.AbstractView.prototype.getRefItems.call(this),b=this.pagingToolbar;if(b){a.push(b)}return a},createPagingToolbar:function(){return Ext.widget("pagingtoolbar",{id:this.id+"-paging-toolbar",pageSize:this.pageSize,store:this.dataSource,border:false,ownerCt:this,ownerLayout:this.getComponentLayout()})},getNodeContainer:function(){return this.listEl},refresh:function(){var c=this,a=c.tpl,b=c.pagingToolbar,d=c.rendered;a.field=c.pickerField;a.store=c.store;Ext.view.View.prototype.refresh.call(this);a.field=a.store=null;if(d&&b&&b.rendered&&!c.preserveScrollOnRefresh){c.el.appendChild(b.el,true)}},bindStore:function(a,b){var c=this.pagingToolbar;Ext.view.View.prototype.bindStore.apply(this,arguments);if(c){c.bindStore(a,b)}},getInnerTpl:function(a){return"{"+a+"}"},onDestroy:function(){Ext.view.AbstractView.prototype.onDestroy.call(this);Ext.destroyMembers(this,"pagingToolbar","listWrap","listEl")},privates:{getTargetEl:function(){return this.listEl},getOverflowEl:function(){return this.listWrap},finishRenderChildren:function(){var a=this.pagingToolbar;this.callParent(arguments);if(a){a.finishRender()}}}},0,["boundlist"],["boundlist","box","component","dataview"],{boundlist:true,box:true,component:true,dataview:true},["widget.boundlist"],[[Ext.mixin.Queryable.prototype.mixinId||Ext.mixin.Queryable.$className,Ext.mixin.Queryable]],[Ext.view,"BoundList",Ext,"BoundList"],0));(Ext.cmd.derive("Ext.view.BoundListKeyNav",Ext.util.KeyNav,{constructor:function(b,a){var c=this;c.boundList=a.boundList;Ext.util.KeyNav.prototype.constructor.apply(this,[b,Ext.apply({},a,c.defaultHandlers)])},defaultHandlers:{up:function(){var e=this,b=e.boundList,d=b.all,g=b.highlightedItem,c=g?b.indexOf(g):-1,a=c>0?c-1:d.getCount()-1;e.highlightAt(a)},down:function(){var e=this,b=e.boundList,d=b.all,g=b.highlightedItem,c=g?b.indexOf(g):-1,a=c<d.getCount()-1?c+1:0;e.highlightAt(a)},pageup:function(){},pagedown:function(){},home:function(){this.highlightAt(0)},end:function(){var a=this;a.highlightAt(a.boundList.all.getCount()-1)},enter:function(a){this.selectHighlighted(a)}},highlightAt:function(b){var a=this.boundList,c=a.all.item(b);if(c){c=c.dom;a.highlightItem(c);a.getTargetEl().scrollChildIntoView(c,false)}},selectHighlighted:function(g){var b=this.boundList,a=b.getSelectionModel(),d,c;d=b.highlightedItem;if(d){c=b.getRecord(d);if(g.getKey()===g.ENTER||!a.isSelected(c)){a.selectWithEvent(c,g)}}}},1,0,0,0,0,0,[Ext.view,"BoundListKeyNav"],0));(Ext.cmd.derive("Ext.form.field.ComboBox",Ext.form.field.Picker,{alternateClassName:"Ext.form.ComboBox",config:{filters:null},triggerCls:Ext.baseCSSPrefix+"form-arrow-trigger",hiddenName:"",hiddenDataCls:Ext.baseCSSPrefix+"hidden-display "+Ext.baseCSSPrefix+"form-data-hidden",ariaRole:"combobox",filtered:false,afterRender:function(){var a=this;Ext.form.field.Text.prototype.afterRender.apply(this,arguments);a.setHiddenValue(a.value)},multiSelect:false,delimiter:", ",displayField:"text",triggerAction:"all",allQuery:"",queryParam:"query",queryMode:"remote",queryCaching:true,autoLoadOnValue:false,pageSize:0,anyMatch:false,caseSensitive:false,autoSelect:true,typeAhead:false,typeAheadDelay:250,selectOnTab:true,forceSelection:false,growToLongestValue:true,clearFilterOnBlur:true,defaultListConfig:{loadingHeight:70,minWidth:70,maxHeight:300,shadow:"sides"},transformInPlace:true,ignoreSelection:0,removingRecords:null,resizeComboToGrow:function(){var a=this;return a.grow&&a.growToLongestValue},initComponent:function(){var e=this,c=Ext.isDefined,b=e.store,d=e.transform,h=e.displayTpl,a,g;Ext.applyIf(e.renderSelectors,{hiddenDataEl:"."+e.hiddenDataCls.split(" ").join(".")});if(d){a=Ext.getDom(d);if(a){if(!e.store){b=Ext.Array.map(Ext.Array.from(a.options),function(j){return[j.value,j.text]})}if(!e.name){e.name=a.name}if(!("value" in e)){e.value=a.value}}}e.bindStore(b||"ext-empty-store",true,true);b=e.store;if(b.autoCreated){e.queryMode="local";e.valueField=e.displayField="field1";if(!b.expanded){e.displayField="field2"}}if(!c(e.valueField)){e.valueField=e.displayField}g=e.queryMode==="local";if(!c(e.queryDelay)){e.queryDelay=g?10:500}if(!c(e.minChars)){e.minChars=g?0:4}if(!h){e.displayTpl=new Ext.XTemplate('<tpl for=".">{[typeof values === "string" ? values : values["'+e.displayField+'"]]}<tpl if="xindex < xcount">'+e.delimiter+"</tpl></tpl>")}else{if(!h.isTemplate){e.displayTpl=new Ext.XTemplate(h)}}Ext.form.field.Text.prototype.initComponent.call(this);e.doQueryTask=new Ext.util.DelayedTask(e.doRawQuery,e);if(e.store.getCount()>0){e.setValue(e.value)}if(a){if(e.transformInPlace){e.render(a.parentNode,a);delete e.renderTo}Ext.removeNode(a)}},getSubTplMarkup:function(){var c=this,a='<div class="'+c.hiddenDataCls+'" role="presentation"></div>',b=Ext.form.field.Base.prototype.getSubTplMarkup.call(this);return a+b},applyFilters:function(b,c){var a=this;if(b===null||b.isFilterCollection){return b}if(b){if(!c){c=this.getFilters()}c.beginUpdate();c.splice(0,c.length,b);c.each(function(d){d.ownerId=a.id});c.endUpdate()}return c},getFilters:function(b){var a=this.filters;if(!a&&b!==false){a=new Ext.util.FilterCollection();this.setFilters(a)}return a},updateFilters:function(a,b){var c=this;if(b){b.un("endupdate","onEndUpdateFilters",c)}if(a){a.on("endupdate","onEndUpdateFilters",c)}c.onEndUpdateFilters(a)},onEndUpdateFilters:function(e){var d=this,g=d.filtered,c=!!e&&(e.length>0),a,b;if(g||c){d.filtered=c;a=[];b=d.store.getFilters();b.each(function(h){if(h.ownerId===d.id&&!e.contains(h)){a.push(h)}});b.splice(0,a,e.items)}},getStore:function(){return this.store},beforeBlur:function(){var b=this,a=b.queryFilter;b.doQueryTask.cancel();b.assertValue();if(a&&b.queryMode==="local"&&b.clearFilterOnBlur){b.getStore().getFilters().remove(a)}},onFocus:function(){var a=this;Ext.form.field.Text.prototype.onFocus.apply(this,arguments);if(!a.duringTriggerClick&&a.triggerAction!=="all"&&a.queryFilter&&a.queryMode==="local"&&a.clearFilterOnBlur){delete a.lastQuery;a.doRawQuery()}},assertValue:function(){var b=this,c=b.getRawValue(),d,a;if(b.forceSelection){if(b.multiSelect){if(c!==b.getDisplayValue()){b.setValue(b.lastSelection)}}else{d=b.findRecordByDisplay(c);if(d){a=b.value;if(!b.findRecordByValue(a)){b.select(d,true)}}else{b.setValue(b.lastSelection)}}}b.collapse()},onTypeAhead:function(){var e=this,d=e.displayField,b=e.store.findRecord(d,e.getRawValue()),c=e.getPicker(),g,a,h;if(b){g=b.get(d);a=g.length;h=e.getRawValue().length;c.highlightItem(c.getNode(b));if(h!==0&&h!==a){e.setRawValue(g);e.selectText(h,g.length)}}},resetToDefault:Ext.emptyFn,beforeReset:function(){var a=this.queryFilter;Ext.form.field.Field.prototype.beforeReset.call(this);if(a){this.getStore().getFilters().remove(a)}},onUnbindStore:function(){var c=this,a=c.picker,b=c.queryFilter;if(b&&!c.store.isDestroyed){c.getStore().getFilters().remove(b)}if(a){a.bindStore(null)}},onBindStore:function(a,c){var b=this.picker;if(!c){this.resetToDefault()}if(b){b.bindStore(a)}},bindStore:function(a,e,b){var d=this,c=d.queryFilter;d.mixins.storeholder.bindStore.call(d,a,b);a=d.getStore();if(a&&c&&!e){a.getFilters().add(c)}if(!b&&a){d.setValueOnData()}},getStoreListeners:function(){var a=this;return{beforeload:a.onBeforeLoad,clear:a.onClear,datachanged:a.onDataChanged,load:a.onLoad,exception:a.onException,remove:a.onRemove}},onBeforeLoad:function(){++this.ignoreSelection},onDataChanged:function(){var a=this;if(a.resizeComboToGrow()){a.updateLayout()}},onClear:function(){var a=this;if(a.resizeComboToGrow()){a.removingRecords=true;a.onDataChanged()}},onRemove:function(){var a=this;if(a.resizeComboToGrow()){a.removingRecords=true}},onException:function(){if(this.ignoreSelection>0){--this.ignoreSelection}this.collapse()},onLoad:function(b,a,c){if(this.ignoreSelection>0){--this.ignoreSelection}if(c&&!b.lastOptions.rawQuery){this.setValueOnData()}},setValueOnData:function(){var a=this;if(a.value==null){if(a.getStore().getCount()){a.doAutoSelect()}else{a.setValue(a.value)}}else{a.setValue(a.value)}},doRawQuery:function(){this.doQuery(this.getRawValue(),false,true)},doQuery:function(e,b,d){var c=this,a=c.beforeQuery({query:e||"",rawQuery:d,forceAll:b,combo:c,cancel:false});if(a===false||a.cancel){return false}if(c.queryCaching&&a.query===c.lastQuery){c.expand();if(c.queryMode==="local"){c.doAutoSelect()}}else{c.lastQuery=a.query;if(c.queryMode==="local"){c.doLocalQuery(a)}else{c.doRemoteQuery(a)}}return true},beforeQuery:function(a){var b=this;if(b.fireEvent("beforequery",a)===false){a.cancel=true}else{if(!a.cancel){if(a.query.length<b.minChars&&!a.forceAll){a.cancel=true}}}return a},doLocalQuery:function(a){var d=this,e=a.query,c=d.getStore().getFilters(),b=d.queryFilter;d.queryFilter=null;c.beginUpdate();if(b){c.remove(b)}if(e){b=d.queryFilter=new Ext.util.Filter({id:d.id+"-filter",anyMatch:d.anyMatch,caseSensitive:d.caseSensitive,root:"data",property:d.displayField,value:d.enableRegEx?new RegExp(e):e});c.add(b)}c.endUpdate();if(d.store.getCount()||d.getPicker().emptyText){d.expand()}else{d.collapse()}d.afterQuery(a)},doRemoteQuery:function(b){var c=this,a=function(){c.afterQuery(b)};c.expand();if(c.pageSize){c.loadPage(1,{rawQuery:b.rawQuery,callback:a})}else{c.store.load({params:c.getParams(b.query),rawQuery:b.rawQuery,callback:a})}},afterQuery:function(a){var b=this;if(b.store.getCount()){if(b.typeAhead){b.doTypeAhead()}if(b.getRawValue()!==b.getDisplayValue()){b.ignoreSelection++;b.picker.getSelectionModel().deselectAll();b.ignoreSelection--}if(a.rawQuery){b.syncSelection();if(b.picker&&!b.picker.getSelectionModel().hasSelection()){b.doAutoSelect()}}else{b.doAutoSelect()}}},loadPage:function(b,a){this.store.loadPage(b,Ext.apply({params:this.getParams(this.lastQuery)},a))},onPageChange:function(b,a){this.loadPage(a);return false},getParams:function(c){var b={},a=this.queryParam;if(a){b[a]=c}return b},doAutoSelect:function(){var b=this,a=b.picker,c,d;if(a&&b.autoSelect&&b.store.getCount()>0){c=a.getSelectionModel().lastSelected;d=a.getNode(c||0);if(d){a.highlightItem(d);a.listEl.scrollChildIntoView(d,false)}}},doTypeAhead:function(){var b=this,a=Ext.event.Event;if(!b.typeAheadTask){b.typeAheadTask=new Ext.util.DelayedTask(b.onTypeAhead,b)}if(b.lastKey!==a.BACKSPACE&&b.lastKey!==a.DELETE){b.typeAheadTask.delay(b.typeAheadDelay)}},onTriggerClick:function(){var a=this;a.duringTriggerClick=true;if(!a.readOnly&&!a.disabled){if(a.isExpanded){a.collapse()}else{a.onFocus({});if(a.triggerAction==="all"){a.doQuery(a.allQuery,true)}else{if(a.triggerAction==="last"){a.doQuery(a.lastQuery,true)}else{a.doQuery(a.getRawValue(),false,true)}}}if(!Ext.supports.Touch){a.inputEl.focus()}}delete a.duringTriggerClick},onPaste:function(){var a=this;if(!a.readOnly&&!a.disabled&&a.editable){a.doQueryTask.delay(a.queryDelay)}},onKeyUp:function(d,b){var c=this,a=d.getKey();if(!c.readOnly&&!c.disabled&&c.editable){c.lastKey=a;if(!d.isSpecialKey()||a===d.BACKSPACE||a===d.DELETE){c.doQueryTask.delay(c.queryDelay)}}if(c.enableKeyEvents){Ext.form.field.Text.prototype.onKeyUp.apply(this,arguments)}},initEvents:function(){var a=this;Ext.form.field.Picker.prototype.initEvents.call(this);if(!a.enableKeyEvents){a.mon(a.inputEl,"keyup",a.onKeyUp,a)}a.mon(a.inputEl,"paste",a.onPaste,a)},onDestroy:function(){var a=this;if(a.typeAheadTask){a.typeAheadTask.cancel();a.typeAheadTask=null}Ext.destroy(a.listKeyNav);a.bindStore(null);Ext.form.field.Text.prototype.onDestroy.call(this)},onAdded:function(){var a=this;Ext.Component.prototype.onAdded.apply(this,arguments);if(a.picker){a.picker.ownerCt=a.up("[floating]");a.picker.registerWithOwnerCt()}},createPicker:function(){var c=this,b,a=Ext.apply({xtype:"boundlist",pickerField:c,selModel:{mode:c.multiSelect?"SIMPLE":"SINGLE"},floating:true,hidden:true,store:c.store,displayField:c.displayField,focusOnToFront:false,preserveScrollOnRefresh:true,pageSize:c.pageSize,tpl:c.tpl},c.listConfig,c.defaultListConfig);b=c.picker=Ext.widget(a);if(c.pageSize){b.pagingToolbar.on("beforechange",c.onPageChange,c)}c.mon(b,{itemclick:c.onItemClick,refresh:c.onListRefresh,scope:c});c.mon(b.getSelectionModel(),{beforeselect:c.onBeforeSelect,beforedeselect:c.onBeforeDeselect,selectionchange:c.onListSelectionChange,scope:c});return b},alignPicker:function(){var d=this,c=d.getPicker(),h=d.getPosition()[1]-Ext.getBody().getScroll().top,g=Ext.Element.getViewportHeight()-h-d.getHeight(),e=Math.max(h,g),b=c.getTargetEl().dom,a=b.scrollTop;if(c.height){delete c.height;c.updateLayout()}if(c.getHeight()>e-5){c.setHeight(e-5)}Ext.form.field.Picker.prototype.alignPicker.call(this);b.scrollTop=a},onListRefresh:function(){if(!this.expanding){this.alignPicker()}this.syncSelection()},onItemClick:function(c,a){var e=this,d=e.picker.getSelectionModel().getSelection(),b=e.valueField;if(!e.multiSelect&&d.length){if(a.get(b)===d[0].get(b)){e.displayTplData=[a.data];e.setRawValue(e.getDisplayValue());e.collapse()}}},onBeforeSelect:function(b,a){return this.fireEvent("beforeselect",this,a,this.getStore().indexOf(a))},onBeforeDeselect:function(b,a){return this.fireEvent("beforedeselect",this,a,this.getStore().indexOf(a))},onListSelectionChange:function(b,d){var a=this,e=a.multiSelect,c=d.length>0;if(!a.ignoreSelection&&a.isExpanded){if(!e){Ext.defer(a.collapse,1,a)}if(e||c){a.setValue(d,false)}if(c){a.fireEvent("select",a,d)}if(!Ext.supports.Touch){a.inputEl.focus()}}},onExpand:function(){var d=this,a=d.listKeyNav,c=d.selectOnTab,b=d.getPicker();if(a){a.enable()}else{a=d.listKeyNav=new Ext.view.BoundListKeyNav(d.inputEl,{boundList:b,forceKeyDown:true,tab:function(g){if(c){this.selectHighlighted(g);d.triggerBlur()}return true},enter:function(j){var g=b.getSelectionModel(),h=g.getCount();this.selectHighlighted(j);if(!d.multiSelect&&h===g.getCount()){d.collapse()}}})}if(c){d.ignoreMonitorTab=true}if(!Ext.supports.Touch){Ext.defer(a.enable,1,a);d.inputEl.focus()}},onCollapse:function(){var b=this,a=b.listKeyNav;if(a){a.disable();b.ignoreMonitorTab=false}},select:function(d,a){var c=this,b=c.picker,e;if(d&&d.isModel&&a===true&&b){e=!b.getSelectionModel().isSelected(d)}c.setValue(d,true);if(e){c.fireEvent("select",c,d)}},findRecord:function(d,c){var b=this.store,a=b.findExact(d,c);return a!==-1?b.getAt(a):false},getSelectedRecord:function(){return this.findRecordByValue(this.value)||null},findRecordByValue:function(a){return this.findRecord(this.valueField,a)},findRecordByDisplay:function(a){return this.findRecord(this.displayField,a)},setValue:function(o,e){var l=this,c=l.valueNotFoundText,p=l.getStore(),q=l.inputEl,n=[],b=[],d=[],k=l.autoLoadOnValue,m=p.hasPendingLoad(),r=k&&p.loadCount===0&&!m,g,j,h,a;if(o!=null&&(m||r||p.isEmptyStore)){l.value=o;l.setHiddenValue(l.value);if(r&&p.getProxy().isRemote){p.load()}return l}o=Ext.Array.from(o);for(g=0,j=o.length;g<j;g++){h=o[g];if(!h||!h.isModel){h=l.findRecordByValue(h)}if(h){n.push(h);b.push(h.data);d.push(h.get(l.valueField))}else{if(!l.forceSelection){d.push(o[g]);a={};a[l.displayField]=o[g];b.push(a)}else{if(Ext.isDefined(c)){b.push(c)}}}}l.setHiddenValue(d);l.value=l.multiSelect?d:d[0];if(!Ext.isDefined(l.value)){l.value=undefined}l.displayTplData=b;l.lastSelection=l.valueModels=n;if(q&&l.emptyText&&!Ext.isEmpty(o)){q.removeCls(l.emptyCls)}l.setRawValue(l.getDisplayValue());l.checkChange();if(e!==false){l.syncSelection()}l.applyEmptyText();return l},setHiddenValue:function(j){var e=this,a=e.hiddenName,d,b,k,h,g,c;if(!e.hiddenDataEl||!a){return}j=Ext.Array.from(j);b=e.hiddenDataEl.dom;k=b.childNodes;h=k[0];g=j.length;c=k.length;if(!h&&g>0){e.hiddenDataEl.setHtml(Ext.DomHelper.markup({tag:"input",type:"hidden",name:a}));c=1;h=b.firstChild}while(c>g){b.removeChild(k[0]);--c}while(c<g){b.appendChild(h.cloneNode(true));++c}for(d=0;d<g;d++){k[d].value=j[d]}},getDisplayValue:function(){return this.displayTpl.apply(this.displayTplData)},getValue:function(){var b=this,a=b.picker,d=b.getRawValue(),c=b.value;if(b.getDisplayValue()!==d){c=d;b.value=b.displayTplData=b.valueModels=undefined;if(a){b.ignoreSelection++;a.getSelectionModel().deselectAll();b.ignoreSelection--}}b.value=c==null?null:c;return b.value},getSubmitValue:function(){var a=this.getValue();if(Ext.isEmpty(a)){a=""}return a},isEqual:function(e,d){var b=Ext.Array.from,c,a;e=b(e);d=b(d);a=e.length;if(a!==d.length){return false}for(c=0;c<a;c++){if(d[c]!==e[c]){return false}}return true},clearValue:function(){this.setValue([])},syncSelection:function(){var h=this,d=h.picker,g,c,b=h.valueModels||[],e=b.length,a,j;if(d){g=[];for(a=0;a<e;a++){j=b[a];if(j&&j.isModel&&h.store.indexOf(j)>=0){g.push(j)}}h.ignoreSelection++;c=d.getSelectionModel();c.deselectAll();if(g.length){c.select(g,undefined,true)}h.ignoreSelection--}},onEditorTab:function(b){var a=this.listKeyNav;if(this.selectOnTab&&a){a.selectHighlighted(b)}}},0,["combo","combobox"],["box","combo","combobox","component","field","pickerfield","textfield"],{box:true,combo:true,combobox:true,component:true,field:true,pickerfield:true,textfield:true},["widget.combo","widget.combobox"],[[Ext.util.StoreHolder.prototype.mixinId||Ext.util.StoreHolder.$className,Ext.util.StoreHolder]],[Ext.form.field,"ComboBox",Ext.form,"ComboBox"],0));(Ext.cmd.derive("Ext.picker.Month",Ext.Component,{alternateClassName:"Ext.MonthPicker",childEls:["bodyEl","prevEl","nextEl","monthEl","yearEl"],renderTpl:['<div id="{id}-bodyEl" data-ref="bodyEl" class="{baseCls}-body">','<div id="{id}-monthEl" data-ref="monthEl" class="{baseCls}-months">','<tpl for="months">','<div class="{parent.baseCls}-item {parent.baseCls}-month">','<a style="{parent.monthStyle}" role="button" hidefocus="on" class="{parent.baseCls}-item-inner">{.}</a>',"</div>","</tpl>","</div>",'<div id="{id}-yearEl" data-ref="yearEl" class="{baseCls}-years">','<div class="{baseCls}-yearnav">','<div class="{baseCls}-yearnav-button-ct">','<a id="{id}-prevEl" data-ref="prevEl" class="{baseCls}-yearnav-button {baseCls}-yearnav-prev" hidefocus="on" role="button"></a>',"</div>",'<div class="{baseCls}-yearnav-button-ct">','<a id="{id}-nextEl" data-ref="nextEl" class="{baseCls}-yearnav-button {baseCls}-yearnav-next" hidefocus="on" role="button"></a>',"</div>","</div>",'<tpl for="years">','<div class="{parent.baseCls}-item {parent.baseCls}-year">','<a hidefocus="on" class="{parent.baseCls}-item-inner" role="button">{.}</a>',"</div>","</tpl>","</div>",'<div class="'+Ext.baseCSSPrefix+'clear"></div>','<tpl if="showButtons">','<div class="{baseCls}-buttons">{%',"var me=values.$comp, okBtn=me.okBtn, cancelBtn=me.cancelBtn;","okBtn.ownerLayout = cancelBtn.ownerLayout = me.componentLayout;","okBtn.ownerCt = cancelBtn.ownerCt = me;","Ext.DomHelper.generateMarkup(okBtn.getRenderTree(), out);","Ext.DomHelper.generateMarkup(cancelBtn.getRenderTree(), out);","%}</div>","</tpl>","</div>"],okText:"OK",cancelText:"Cancel",baseCls:Ext.baseCSSPrefix+"monthpicker",showButtons:true,measureWidth:35,measureMaxHeight:20,smallCls:Ext.baseCSSPrefix+"monthpicker-small",totalYears:10,yearOffset:5,monthOffset:6,initComponent:function(){var a=this;a.selectedCls=a.baseCls+"-selected";if(a.small){a.addCls(a.smallCls)}a.setValue(a.value);a.activeYear=a.getYear(new Date().getFullYear()-4,-4);if(a.showButtons){a.okBtn=new Ext.button.Button({text:a.okText,handler:a.onOkClick,scope:a});a.cancelBtn=new Ext.button.Button({text:a.cancelText,handler:a.onCancelClick,scope:a})}Ext.Component.prototype.initComponent.call(this)},beforeRender:function(){var g=this,c=0,b=[],a=Ext.Date.getShortMonthName,e=g.monthOffset,h=g.monthMargin,d="";if(g.padding&&!g.width){g.cacheWidth()}Ext.util.Renderable.prototype.beforeRender.call(this);for(;c<e;++c){b.push(a(c),a(c+e))}if(Ext.isDefined(h)){d="margin: 0 "+h+"px;"}Ext.apply(g.renderData,{months:b,years:g.getYears(),showButtons:g.showButtons,monthStyle:d})},cacheWidth:function(){var a=this,b=a.parseBox(a.padding),c=Ext.getBody().createChild({cls:a.baseCls+" "+a.borderBoxCls,style:"position:absolute;top:-1000px;left:-1000px;",html:"&nbsp;"});a.self.prototype.width=c.getWidth()+b.left+b.right;c.destroy()},afterRender:function(){var b=this,a=b.bodyEl;Ext.util.Renderable.prototype.afterRender.call(this);b.mon(a,"click",b.onBodyClick,b);b.mon(a,"dblclick",b.onBodyClick,b);b.years=a.select("."+b.baseCls+"-year a");b.months=a.select("."+b.baseCls+"-month a");b.backRepeater=new Ext.util.ClickRepeater(b.prevEl,{handler:Ext.Function.bind(b.adjustYear,b,[-b.totalYears])});b.prevEl.addClsOnOver(b.baseCls+"-yearnav-prev-over");b.nextRepeater=new Ext.util.ClickRepeater(b.nextEl,{handler:Ext.Function.bind(b.adjustYear,b,[b.totalYears])});b.nextEl.addClsOnOver(b.baseCls+"-yearnav-next-over");b.updateBody();if(!Ext.isDefined(b.monthMargin)){Ext.picker.Month.prototype.monthMargin=b.calculateMonthMargin()}},calculateMonthMargin:function(){var d=this,b=d.monthEl,a=d.months,e=a.first(),c=e.getMargin("l");while(c&&d.getLargest()>d.measureMaxHeight){--c;a.setStyle("margin","0 "+c+"px")}return c},getLargest:function(a){var b=0;this.months.each(function(d){var c=d.getHeight();if(c>b){b=c}});return b},setValue:function(d){var c=this,e=c.activeYear,g=c.monthOffset,b,a;if(!d){c.value=[null,null]}else{if(Ext.isDate(d)){c.value=[d.getMonth(),d.getFullYear()]}else{c.value=[d[0],d[1]]}}if(c.rendered){b=c.value[1];if(b!==null){if((b<e||b>e+c.yearOffset)){c.activeYear=b-c.yearOffset+1}}c.updateBody()}return c},getValue:function(){return this.value},hasSelection:function(){var a=this.value;return a[0]!==null&&a[1]!==null},getYears:function(){var d=this,e=d.yearOffset,g=d.activeYear,a=g+e,c=g,b=[];for(;c<a;++c){b.push(c,c+e)}return b},updateBody:function(){var j=this,e=j.years,b=j.months,n=j.getYears(),o=j.selectedCls,l=j.getYear(null),g=j.value[0],m=j.monthOffset,h,d,k,a,c;if(j.rendered){e.removeCls(o);b.removeCls(o);d=e.elements;a=d.length;for(k=0;k<a;k++){c=Ext.fly(d[k]);h=n[k];c.dom.innerHTML=h;if(h==l){c.addCls(o)}}if(g!==null){if(g<m){g=g*2}else{g=(g-m)*2+1}b.item(g).addCls(o)}}},getYear:function(a,c){var b=this.value[1];c=c||0;return b===null?a:b+c},onBodyClick:function(d,b){var c=this,a=d.type=="dblclick";if(d.getTarget("."+c.baseCls+"-month")){d.stopEvent();c.onMonthClick(b,a)}else{if(d.getTarget("."+c.baseCls+"-year")){d.stopEvent();c.onYearClick(b,a)}}},adjustYear:function(a){if(typeof a!="number"){a=this.totalYears}this.activeYear+=a;this.updateBody()},onOkClick:function(){this.fireEvent("okclick",this,this.value)},onCancelClick:function(){this.fireEvent("cancelclick",this)},onMonthClick:function(c,a){var b=this;b.value[0]=b.resolveOffset(b.months.indexOf(c),b.monthOffset);b.updateBody();b.fireEvent("month"+(a?"dbl":"")+"click",b,b.value);b.fireEvent("select",b,b.value)},onYearClick:function(c,a){var b=this;b.value[1]=b.activeYear+b.resolveOffset(b.years.indexOf(c),b.yearOffset);b.updateBody();b.fireEvent("year"+(a?"dbl":"")+"click",b,b.value);b.fireEvent("select",b,b.value)},resolveOffset:function(a,b){if(a%2===0){return(a/2)}else{return b+Math.floor(a/2)}},beforeDestroy:function(){var a=this;a.years=a.months=null;Ext.destroyMembers(a,"backRepeater","nextRepeater","okBtn","cancelBtn");Ext.Component.prototype.beforeDestroy.call(this)},onDestroy:function(){Ext.destroyMembers(this,"okBtn","cancelBtn");Ext.Component.prototype.onDestroy.call(this)},privates:{finishRenderChildren:function(){var a=this;this.callParent(arguments);if(this.showButtons){a.okBtn.finishRender();a.cancelBtn.finishRender()}}}},0,["monthpicker"],["box","component","monthpicker"],{box:true,component:true,monthpicker:true},["widget.monthpicker"],0,[Ext.picker,"Month",Ext,"MonthPicker"],0));(Ext.cmd.derive("Ext.picker.Date",Ext.Component,{alternateClassName:"Ext.DatePicker",childEls:["innerEl","eventEl","prevEl","nextEl","middleBtnEl","footerEl"],border:true,renderTpl:['<div id="{id}-innerEl" data-ref="innerEl" role="grid">','<div role="presentation" class="{baseCls}-header">','<a id="{id}-prevEl" data-ref="prevEl" class="{baseCls}-prev {baseCls}-arrow" role="button" title="{prevText}" hidefocus="on" ></a>','<div id="{id}-middleBtnEl" data-ref="middleBtnEl" class="{baseCls}-month">{%this.renderMonthBtn(values, out)%}</div>','<a id="{id}-nextEl" data-ref="nextEl" class="{baseCls}-next {baseCls}-arrow" role="button" title="{nextText}" hidefocus="on" ></a>',"</div>",'<table id="{id}-eventEl" data-ref="eventEl" class="{baseCls}-inner" cellspacing="0" role="grid">','<thead role="presentation"><tr role="row">','<tpl for="dayNames">','<th role="columnheader" class="{parent.baseCls}-column-header" title="{.}">','<div class="{parent.baseCls}-column-header-inner">{.:this.firstInitial}</div>',"</th>","</tpl>","</tr></thead>",'<tbody role="presentation"><tr role="row">','<tpl for="days">',"{#:this.isEndOfWeek}",'<td role="gridcell" id="{[Ext.id()]}">','<a href="#" role="button" hidefocus="on" class="{parent.baseCls}-date"></a>',"</td>","</tpl>","</tr></tbody>","</table>",'<tpl if="showToday">','<div id="{id}-footerEl" data-ref="footerEl" role="presentation" class="{baseCls}-footer">{%this.renderTodayBtn(values, out)%}</div>',"</tpl>","</div>",{firstInitial:function(a){return Ext.picker.Date.prototype.getDayInitial(a)},isEndOfWeek:function(b){b--;var a=b%7===0&&b!==0;return a?'</tr><tr role="row">':""},renderTodayBtn:function(a,b){Ext.DomHelper.generateMarkup(a.$comp.todayBtn.getRenderTree(),b)},renderMonthBtn:function(a,b){Ext.DomHelper.generateMarkup(a.$comp.monthBtn.getRenderTree(),b)}}],todayText:"Today",ariaTitle:"Date Picker: {0}",ariaTitleDateFormat:"F d, Y",todayTip:"{0} (Spacebar)",minText:"This date is before the minimum date",maxText:"This date is after the maximum date",disabledDaysText:"Disabled",disabledDatesText:"Disabled",nextText:"Next Month (Control+Right)",prevText:"Previous Month (Control+Left)",monthYearText:"Choose a month (Control+Up/Down to move years)",monthYearFormat:"F Y",startDay:0,showToday:true,disableAnim:false,baseCls:Ext.baseCSSPrefix+"datepicker",longDayFormat:"F d, Y",focusOnShow:false,focusOnSelect:true,initHour:12,numDays:42,initComponent:function(){var b=this,a=Ext.Date.clearTime;b.selectedCls=b.baseCls+"-selected";b.disabledCellCls=b.baseCls+"-disabled";b.prevCls=b.baseCls+"-prevday";b.activeCls=b.baseCls+"-active";b.cellCls=b.baseCls+"-cell";b.nextCls=b.baseCls+"-prevday";b.todayCls=b.baseCls+"-today";if(!b.format){b.format=Ext.Date.defaultFormat}if(!b.dayNames){b.dayNames=Ext.Date.dayNames}b.dayNames=b.dayNames.slice(b.startDay).concat(b.dayNames.slice(0,b.startDay));Ext.Component.prototype.initComponent.call(this);b.value=b.value?a(b.value,true):a(new Date());b.initDisabledDays()},getRefOwner:function(){return this.pickerField||Ext.mixin.Inheritable.prototype.getRefOwner.call(this)},getRefItems:function(){var a=[];if(this.rendered){a.push(this.monthBtn,this.todayBtn)}return a},beforeRender:function(){var b=this,c=new Array(b.numDays),a=Ext.Date.format(new Date(),b.format);if(b.padding&&!b.width){b.cacheWidth()}b.monthBtn=new Ext.button.Split({ownerCt:b,ownerLayout:b.getComponentLayout(),text:"",tooltip:b.monthYearText,listeners:{click:b.doShowMonthPicker,arrowclick:b.doShowMonthPicker,scope:b}});if(b.showToday){b.todayBtn=new Ext.button.Button({ownerCt:b,ownerLayout:b.getComponentLayout(),text:Ext.String.format(b.todayText,a),tooltip:Ext.String.format(b.todayTip,a),tooltipType:"title",handler:b.selectToday,scope:b})}Ext.util.Renderable.prototype.beforeRender.call(this);Ext.applyIf(b,{renderData:{}});Ext.apply(b.renderData,{dayNames:b.dayNames,showToday:b.showToday,prevText:b.prevText,nextText:b.nextText,days:c});b.protoEl.unselectable()},cacheWidth:function(){var a=this,b=a.parseBox(a.padding),c=Ext.getBody().createChild({cls:a.baseCls+" "+a.borderBoxCls,style:"position:absolute;top:-1000px;left:-1000px;"});a.self.prototype.width=c.getWidth()+b.left+b.right;c.destroy()},onRender:function(b,a){var c=this;Ext.util.Renderable.prototype.onRender.apply(this,arguments);c.cells=c.eventEl.select("tbody td");c.textNodes=c.eventEl.query("tbody td a");c.mon(c.eventEl,{scope:c,mousewheel:c.handleMouseWheel,click:{fn:c.handleDateClick,delegate:"a."+c.baseCls+"-date"}})},initEvents:function(){var c=this,a=Ext.Date,b=a.DAY;Ext.Component.prototype.initEvents.call(this);c.prevRepeater=new Ext.util.ClickRepeater(c.prevEl,{handler:c.showPrevMonth,scope:c,preventDefault:true,stopDefault:true});c.nextRepeater=new Ext.util.ClickRepeater(c.nextEl,{handler:c.showNextMonth,scope:c,preventDefault:true,stopDefault:true});c.keyNav=new Ext.util.KeyNav(c.eventEl,Ext.apply({scope:c,left:function(d){if(d.ctrlKey){c.showPrevMonth()}else{c.update(a.add(c.activeDate,b,-1))}},right:function(d){if(d.ctrlKey){c.showNextMonth()}else{c.update(a.add(c.activeDate,b,1))}},up:function(d){if(d.ctrlKey){c.showNextYear()}else{c.update(a.add(c.activeDate,b,-7))}},down:function(d){if(d.ctrlKey){c.showPrevYear()}else{c.update(a.add(c.activeDate,b,7))}},pageUp:function(d){if(d.altKey){c.showPrevYear()}else{c.showPrevMonth()}},pageDown:function(d){if(d.altKey){c.showNextYear()}else{c.showNextMonth()}},tab:function(d){c.doCancelFieldFocus=true;c.handleTabClick(d);delete c.doCancelFieldFocus;return true},enter:function(d){d.stopPropagation();return true},home:function(d){c.update(a.getFirstDateOfMonth(c.activeDate))},end:function(d){c.update(a.getLastDateOfMonth(c.activeDate))}},c.keyNavConfig));if(c.showToday){c.todayKeyListener=c.eventEl.addKeyListener(Ext.event.Event.prototype.SPACE,c.selectToday,c)}c.update(c.value)},handleTabClick:function(d){var c=this,a=c.getSelectedDate(c.activeDate),b=c.handler;if(!c.disabled&&a.dateValue&&!Ext.fly(a.parentNode).hasCls(c.disabledCellCls)){if(c.pickerField){d.stopEvent()}c.doCancelFocus=true;c.setValue(new Date(a.dateValue));delete c.doCancelFocus;c.fireEvent("select",c,c.value);if(b){b.call(c.scope||c,c,c.value)}c.onSelect()}},getSelectedDate:function(a){var d=this,j=a.getTime(),k=d.cells,l=d.selectedCls,g=k.elements,b,e=g.length,h;k.removeCls(l);for(b=0;b<e;b++){h=Ext.fly(g[b]);if(h.dom.firstChild.dateValue==j){return h.dom.firstChild}}return null},initDisabledDays:function(){var h=this,b=h.disabledDates,g="(?:",a,j,c,e;if(!h.disabledDatesRE&&b){a=b.length-1;c=b.length;for(j=0;j<c;j++){e=b[j];g+=Ext.isDate(e)?"^"+Ext.String.escapeRegex(Ext.Date.dateFormat(e,h.format))+"$":e;if(j!=a){g+="|"}}h.disabledDatesRE=new RegExp(g+")")}},setDisabledDates:function(a){var b=this;if(Ext.isArray(a)){b.disabledDates=a;b.disabledDatesRE=null}else{b.disabledDatesRE=a}b.initDisabledDays();b.update(b.value,true);return b},setDisabledDays:function(a){this.disabledDays=a;return this.update(this.value,true)},setMinDate:function(a){this.minDate=a;return this.update(this.value,true)},setMaxDate:function(a){this.maxDate=a;return this.update(this.value,true)},setValue:function(a){this.value=Ext.Date.clearTime(a||new Date(),true);return this.update(this.value)},getValue:function(){return this.value},getDayInitial:function(a){return a.substr(0,1)},focus:function(){this.update(this.activeDate)},onEnable:function(){Ext.Component.prototype.onEnable.call(this);this.setDisabledStatus(false);this.update(this.activeDate)},onDisable:function(){Ext.Component.prototype.onDisable.call(this);this.setDisabledStatus(true)},setDisabledStatus:function(a){var b=this;b.keyNav.setDisabled(a);b.prevRepeater.setDisabled(a);b.nextRepeater.setDisabled(a);if(b.showToday){b.todayKeyListener.setDisabled(a);b.todayBtn.setDisabled(a)}},getActive:function(){return this.activeDate||this.value},runAnimation:function(c){var b=this.monthPicker,a={duration:200,callback:function(){b.setVisible(!c)}},d=b.isVisible();if(c){b.el.slideOut("t",a)}else{b.el.slideIn("t",a)}},hideMonthPicker:function(a){var c=this,b=c.monthPicker;if(b&&b.isVisible()){if(c.shouldAnimate(a)){c.runAnimation(true)}else{b.hide()}}return c},doShowMonthPicker:function(){this.showMonthPicker()},doHideMonthPicker:function(){this.hideMonthPicker()},showMonthPicker:function(a){var d=this,c=d.el,b;if(d.rendered&&!d.disabled){b=d.createMonthPicker();if(!b.isVisible()){b.setValue(d.getActive());b.setSize(c.getSize());b.setPosition(-c.getBorderWidth("l"),-c.getBorderWidth("t"));if(d.shouldAnimate(a)){d.runAnimation(false)}else{b.show()}}}return d},shouldAnimate:function(a){return Ext.isDefined(a)?a:!this.disableAnim},createMonthPicker:function(){var b=this,a=b.monthPicker;if(!a){b.monthPicker=a=new Ext.picker.Month({renderTo:b.el,floating:true,padding:b.padding,shadow:false,small:b.showToday===false,listeners:{scope:b,cancelclick:b.onCancelClick,okclick:b.onOkClick,yeardblclick:b.onOkClick,monthdblclick:b.onOkClick}});if(!b.disableAnim){a.el.setStyle("display","none")}a.hide();b.on("beforehide",b.doHideMonthPicker,b)}return a},onOkClick:function(b,e){var d=this,g=e[0],c=e[1],a=new Date(c,g,d.getActive().getDate());if(a.getMonth()!==g){a=Ext.Date.getLastDateOfMonth(new Date(c,g,1))}d.setValue(a);d.hideMonthPicker()},onCancelClick:function(){this.selectedUpdate(this.activeDate);this.hideMonthPicker()},showPrevMonth:function(a){return this.setValue(Ext.Date.add(this.activeDate,Ext.Date.MONTH,-1))},showNextMonth:function(a){return this.setValue(Ext.Date.add(this.activeDate,Ext.Date.MONTH,1))},showPrevYear:function(){return this.setValue(Ext.Date.add(this.activeDate,Ext.Date.YEAR,-1))},showNextYear:function(){return this.setValue(Ext.Date.add(this.activeDate,Ext.Date.YEAR,1))},handleMouseWheel:function(a){a.stopEvent();if(!this.disabled){var b=a.getWheelDelta();if(b>0){this.showPrevMonth()}else{if(b<0){this.showNextMonth()}}}},handleDateClick:function(d,a){var c=this,b=c.handler;d.stopEvent();if(!c.disabled&&a.dateValue&&!Ext.fly(a.parentNode).hasCls(c.disabledCellCls)){c.doCancelFocus=c.focusOnSelect===false;c.setValue(new Date(a.dateValue));delete c.doCancelFocus;c.fireEvent("select",c,c.value);if(b){b.call(c.scope||c,c,c.value)}c.onSelect()}},onSelect:function(){if(this.hideOnSelect){this.hide()}},selectToday:function(){var c=this,a=c.todayBtn,b=c.handler;if(a&&!a.disabled){c.setValue(Ext.Date.clearTime(new Date()));c.fireEvent("select",c,c.value);if(b){b.call(c.scope||c,c,c.value)}c.onSelect()}return c},selectedUpdate:function(a){var d=this,j=a.getTime(),k=d.cells,l=d.selectedCls,g=k.elements,b,e=g.length,h;k.removeCls(l);for(b=0;b<e;b++){h=Ext.fly(g[b]);if(h.dom.firstChild.dateValue==j){d.fireEvent("highlightitem",d,h);h.addCls(l);if(d.isVisible()&&!d.doCancelFocus){Ext.fly(h.dom.firstChild).focus(50)}break}}},fullUpdate:function(A){var E=this,g=E.cells.elements,d=E.textNodes,G=E.disabledCellCls,o=Ext.Date,w=0,D=0,e=E.isVisible(),m=+o.clearTime(A,true),z=+o.clearTime(new Date()),u=E.minDate?o.clearTime(E.minDate,true):Number.NEGATIVE_INFINITY,v=E.maxDate?o.clearTime(E.maxDate,true):Number.POSITIVE_INFINITY,C=E.disabledDatesRE,t=E.disabledDatesText,H=E.disabledDays?E.disabledDays.join(""):false,B=E.disabledDaysText,x=E.format,l=o.getDaysInMonth(A),q=o.getFirstDateOfMonth(A),h=q.getDay()-E.startDay,y=o.add(A,o.MONTH,-1),b=E.longDayFormat,k,r,a,F,n,p,c,j,s;if(h<0){h+=7}l+=h;k=o.getDaysInMonth(y)-h;r=new Date(y.getFullYear(),y.getMonth(),k,E.initHour);if(E.showToday){F=o.clearTime(new Date());a=(F<u||F>v||(C&&x&&C.test(o.dateFormat(F,x)))||(H&&H.indexOf(F.getDay())!=-1));if(!E.disabled){E.todayBtn.setDisabled(a);E.todayKeyListener.setDisabled(a)}}n=function(I,J){s=+o.clearTime(r,true);I.title=o.format(r,b);I.firstChild.dateValue=s;if(s==z){J+=" "+E.todayCls;I.title=E.todayText;E.todayElSpan=Ext.DomHelper.append(I.firstChild,{tag:"span",cls:Ext.baseCSSPrefix+"hidden-clip",html:E.todayText},true)}if(s==m){J+=" "+E.selectedCls;E.fireEvent("highlightitem",E,I);if(e&&E.floating){Ext.fly(I.firstChild).focus(50)}}if(s<u){J+=" "+G;I.title=E.minText}else{if(s>v){J+=" "+G;I.title=E.maxText}else{if(H&&H.indexOf(r.getDay())!==-1){I.title=B;J+=" "+G}else{if(C&&x){j=o.dateFormat(r,x);if(C.test(j)){I.title=t.replace("%0",j);J+=" "+G}}}}}I.className=J+" "+E.cellCls};for(;w<E.numDays;++w){if(w<h){p=(++k);c=E.prevCls}else{if(w>=l){p=(++D);c=E.nextCls}else{p=w-h+1;c=E.activeCls}}d[w].innerHTML=p;r.setDate(r.getDate()+1);n(g[w],c)}E.monthBtn.setText(Ext.Date.format(A,E.monthYearFormat))},update:function(a,d){var b=this,c=b.activeDate;if(b.rendered){b.activeDate=a;if(!d&&c&&b.el&&c.getMonth()==a.getMonth()&&c.getFullYear()==a.getFullYear()){b.selectedUpdate(a,c)}else{b.fullUpdate(a,c)}}return b},beforeDestroy:function(){var a=this;if(a.rendered){Ext.destroy(a.todayKeyListener,a.keyNav,a.monthPicker,a.monthBtn,a.nextRepeater,a.prevRepeater,a.todayBtn);delete a.textNodes;delete a.cells.elements}Ext.Component.prototype.beforeDestroy.call(this)},onShow:function(){Ext.Component.prototype.onShow.apply(this,arguments);if(this.focusOnShow){this.focus()}},privates:{finishRenderChildren:function(){var a=this;a.callParent();a.monthBtn.finishRender();if(a.showToday){a.todayBtn.finishRender()}}}},0,["datepicker"],["box","component","datepicker"],{box:true,component:true,datepicker:true},["widget.datepicker"],0,[Ext.picker,"Date",Ext,"DatePicker"],0));(Ext.cmd.derive("Ext.form.field.Date",Ext.form.field.Picker,{alternateClassName:["Ext.form.DateField","Ext.form.Date"],format:"m/d/Y",altFormats:"m/d/Y|n/j/Y|n/j/y|m/j/y|n/d/y|m/j/Y|n/d/Y|m-d-y|m-d-Y|m/d|m-d|md|mdy|mdY|d|Y-m-d|n-j|n/j",disabledDaysText:"Disabled",disabledDatesText:"Disabled",minText:"The date in this field must be equal to or after {0}",maxText:"The date in this field must be equal to or before {0}",invalidText:"{0} is not a valid date - it must be in the format {1}",triggerCls:Ext.baseCSSPrefix+"form-date-trigger",showToday:true,useStrict:undefined,initTime:"12",initTimeFormat:"H",matchFieldWidth:false,startDay:0,initComponent:function(){var d=this,b=Ext.isString,c,a;c=d.minValue;a=d.maxValue;if(b(c)){d.minValue=d.parseDate(c)}if(b(a)){d.maxValue=d.parseDate(a)}d.disabledDatesRE=null;d.initDisabledDays();Ext.form.field.Text.prototype.initComponent.call(this)},initValue:function(){var a=this,b=a.value;if(Ext.isString(b)){a.value=a.rawToValue(b)}Ext.form.field.Field.prototype.initValue.call(this)},initDisabledDays:function(){if(this.disabledDates){var b=this.disabledDates,a=b.length-1,g="(?:",h,e=b.length,c;for(h=0;h<e;h++){c=b[h];g+=Ext.isDate(c)?"^"+Ext.String.escapeRegex(c.dateFormat(this.format))+"$":c;if(h!==a){g+="|"}}this.disabledDatesRE=new RegExp(g+")")}},setDisabledDates:function(c){var b=this,a=b.picker;b.disabledDates=c;b.initDisabledDays();if(a){a.setDisabledDates(b.disabledDatesRE)}},setDisabledDays:function(b){var a=this.picker;this.disabledDays=b;if(a){a.setDisabledDays(b)}},setMinValue:function(d){var b=this,a=b.picker,c=(Ext.isString(d)?b.parseDate(d):d);b.minValue=c;if(a){a.minText=Ext.String.format(b.minText,b.formatDate(b.minValue));a.setMinDate(c)}},setMaxValue:function(c){var b=this,a=b.picker,d=(Ext.isString(c)?b.parseDate(c):c);b.maxValue=d;if(a){a.maxText=Ext.String.format(b.maxText,b.formatDate(b.maxValue));a.setMaxDate(d)}},getErrors:function(q){var j=this,p=Ext.String.format,k=Ext.Date.clearTime,o=Ext.form.field.Text.prototype.getErrors.apply(this,arguments),n=j.disabledDays,d=j.disabledDatesRE,m=j.minValue,h=j.maxValue,g=n?n.length:0,e=0,a,b,l,c;q=j.formatDate(q||j.processRawValue(j.getRawValue()));if(q===null||q.length<1){return o}a=q;q=j.parseDate(q);if(!q){o.push(p(j.invalidText,a,Ext.Date.unescapeFormat(j.format)));return o}c=q.getTime();if(m&&c<k(m).getTime()){o.push(p(j.minText,j.formatDate(m)))}if(h&&c>k(h).getTime()){o.push(p(j.maxText,j.formatDate(h)))}if(n){l=q.getDay();for(;e<g;e++){if(l===n[e]){o.push(j.disabledDaysText);break}}}b=j.formatDate(q);if(d&&d.test(b)){o.push(p(j.disabledDatesText,b))}return o},rawToValue:function(a){return this.parseDate(a)||a||null},valueToRaw:function(a){return this.formatDate(this.parseDate(a))},safeParse:function(g,h){var e=this,c=Ext.Date,a=null,b=e.useStrict,d;if(c.formatContainsHourInfo(h)){a=c.parse(g,h,b)}else{d=c.parse(g+" "+e.initTime,h+" "+e.initTimeFormat,b);if(d){a=c.clearTime(d)}}return a},getSubmitValue:function(){var b=this.submitFormat||this.format,a=this.getValue();return a?Ext.Date.format(a,b):""},parseDate:function(e){if(!e||Ext.isDate(e)){return e}var d=this,h=d.safeParse(e,d.format),b=d.altFormats,g=d.altFormatsArray,c=0,a;if(!h&&b){g=g||b.split("|");a=g.length;for(;c<a&&!h;++c){h=d.safeParse(e,g[c])}}return h},formatDate:function(a){return Ext.isDate(a)?Ext.Date.dateFormat(a,this.format):a},createPicker:function(){var a=this,b=Ext.String.format;return new Ext.picker.Date({pickerField:a,renderTo:document.body,floating:true,hidden:true,focusOnShow:true,minDate:a.minValue,maxDate:a.maxValue,disabledDatesRE:a.disabledDatesRE,disabledDatesText:a.disabledDatesText,disabledDays:a.disabledDays,disabledDaysText:a.disabledDaysText,format:a.format,showToday:a.showToday,startDay:a.startDay,minText:b(a.minText,a.formatDate(a.minValue)),maxText:b(a.maxText,a.formatDate(a.maxValue)),listeners:{scope:a,select:a.onSelect},keyNavConfig:{esc:function(){a.collapse();a.focus()}}})},onDownArrow:function(a){Ext.form.field.Picker.prototype.onDownArrow.apply(this,arguments);if(this.isExpanded){this.getPicker().focus()}},onSelect:function(a,c){var b=this;b.setValue(c);b.fireEvent("select",b,c);b.collapse();b.focus(false,50)},onExpand:function(){var a=this.getValue();this.picker.setValue(Ext.isDate(a)?a:new Date())},beforeBlur:function(){var b=this,a=b.rawToValue(b.getRawValue());if(Ext.isDate(a)){b.setValue(a)}}},0,["datefield"],["box","component","datefield","field","pickerfield","textfield"],{box:true,component:true,datefield:true,field:true,pickerfield:true,textfield:true},["widget.datefield"],0,[Ext.form.field,"Date",Ext.form,"DateField",Ext.form,"Date"],0));(Ext.cmd.derive("Ext.form.field.FileButton",Ext.button.Button,{childEls:["fileInputEl"],inputCls:Ext.baseCSSPrefix+"form-file-input",cls:Ext.baseCSSPrefix+"form-file-btn",preventDefault:false,autoEl:{tag:"div",unselectable:"on"},afterTpl:'<input id="{id}-fileInputEl" data-ref="fileInputEl" class="{childElCls} {inputCls}" type="file" size="1" name="{inputName}" role="{role}" tabIndex="{tabIndex}">',getAfterMarkup:function(a){return this.getTpl("afterTpl").apply(a)},getTemplateArgs:function(){var a=Ext.button.Button.prototype.getTemplateArgs.call(this);a.inputCls=this.inputCls;a.inputName=this.inputName;a.tabIndex=this.ownerCt.tabIndex;return a},afterRender:function(){var a=this;Ext.util.Renderable.prototype.afterRender.apply(this,arguments);a.fileInputEl.on("change",a.fireChange,a)},fireChange:function(a){this.fireEvent("change",this,a,this.fileInputEl.dom.value)},createFileInput:function(a){var b=this;b.fileInputEl=b.el.createChild({name:b.inputName,id:!a?b.id+"-fileInputEl":undefined,cls:b.inputCls,tag:"input",type:"file",size:1,role:"button"});b.fileInputEl.on("change",b.fireChange,b)},reset:function(a){if(a){this.fileInputEl.destroy()}this.createFileInput(!a)},restoreInput:function(a){this.fileInputEl.destroy();a=Ext.get(a);this.el.appendChild(a);this.fileInputEl=a},onDisable:function(){Ext.Component.prototype.onDisable.call(this);this.fileInputEl.dom.disabled=true},onEnable:function(){Ext.Component.prototype.onEnable.call(this);this.fileInputEl.dom.disabled=false}},0,["filebutton"],["box","button","component","filebutton"],{box:true,button:true,component:true,filebutton:true},["widget.filebutton"],0,[Ext.form.field,"FileButton"],0));(Ext.cmd.derive("Ext.form.trigger.Component",Ext.form.trigger.Trigger,{cls:Ext.baseCSSPrefix+"form-trigger-cmp",onFieldRender:function(){var b=this,a=b.component;Ext.form.trigger.Trigger.prototype.onFieldRender.call(this);if(!a.isComponent&&!a.isWidget){a=Ext.widget(a)}b.component=a;a.render(b.el)},destroy:function(){var a=this.component;if(a.isComponent||a.isWidget){a.destroy()}}},0,0,0,0,["trigger.component"],0,[Ext.form.trigger,"Component"],0));(Ext.cmd.derive("Ext.form.field.File",Ext.form.field.Text,{alternateClassName:["Ext.form.FileUploadField","Ext.ux.form.FileUploadField","Ext.form.File"],triggers:{filebutton:{type:"component",hideOnReadOnly:false}},buttonText:"Browse...",buttonOnly:false,buttonMargin:3,clearOnSubmit:true,extraFieldBodyCls:Ext.baseCSSPrefix+"form-file-wrap",inputCls:Ext.baseCSSPrefix+"form-text-file",readOnly:true,editable:false,submitValue:false,triggerNoEditCls:"",childEls:["browseButtonWrap"],applyTriggers:function(a){var b=this,c=(a||{}).filebutton;if(c){c.component=Ext.apply({xtype:"filebutton",ownerCt:b,id:b.id+"-button",ui:b.ui,disabled:b.disabled,text:b.buttonText,style:b.buttonOnly?"":b.getButtonMarginProp()+b.buttonMargin+"px",inputName:b.getName(),listeners:{scope:b,change:b.onFileChange}},b.buttonConfig);return Ext.form.field.Text.prototype.applyTriggers.apply(this,[a])}},onRender:function(){var d=this,e,c,a,b;Ext.form.field.Text.prototype.onRender.apply(this,arguments);e=d.inputEl;e.dom.name="";b=d.getTrigger("filebutton");c=d.button=b.component;d.fileInputEl=c.fileInputEl;a=c.el;if(d.buttonOnly){d.inputWrap.setDisplayed(false);d.shrinkWrap=3}b.el.setWidth(a.getWidth()+a.getMargin("lr"));if(Ext.isIE){d.button.getEl().repaint()}},getTriggerMarkup:function(){return'<td id="'+this.id+'-browseButtonWrap" data-ref="browseButtonWrap" role="presentation"></td>'},onFileChange:function(a,c,b){this.duringFileSelect=true;Ext.form.field.File.superclass.setValue.call(this,b);delete this.duringFileSelect},didValueChange:function(){return !!this.duringFileSelect},setValue:Ext.emptyFn,reset:function(){var b=this,a=b.clearOnSubmit;if(b.rendered){b.button.reset(a);b.fileInputEl=b.button.fileInputEl;if(a){b.inputEl.dom.value="";Ext.form.field.File.superclass.setValue.call(this,null)}}Ext.form.field.Text.prototype.reset.call(this)},onShow:function(){Ext.Component.prototype.onShow.call(this);this.button.updateLayout()},onDisable:function(){Ext.form.field.Text.prototype.onDisable.call(this);this.button.disable()},onEnable:function(){Ext.form.field.Text.prototype.onEnable.call(this);this.button.enable()},isFileUpload:Ext.returnTrue,extractFileInput:function(){var b=this,a;if(b.rendered){a=b.button.fileInputEl.dom;b.reset()}else{a=document.createElement("input");a.type="file";a.className=Ext.baseCSSPrefix+"hidden-display";a.name=b.getName()}return a},restoreInput:function(b){if(this.rendered){var a=this.button;a.restoreInput(b);this.fileInputEl=a.fileInputEl}},onDestroy:function(){Ext.destroyMembers(this,"button");delete this.fileInputEl;Ext.form.field.Text.prototype.onDestroy.call(this)},getButtonMarginProp:function(){return"margin-left:"}},0,["filefield","fileuploadfield"],["box","component","field","filefield","fileuploadfield","textfield"],{box:true,component:true,field:true,filefield:true,fileuploadfield:true,textfield:true},["widget.filefield","widget.fileuploadfield"],0,[Ext.form.field,"File",Ext.form,"FileUploadField",Ext.ux.form,"FileUploadField",Ext.form,"File"],0));(Ext.cmd.derive("Ext.form.field.Hidden",Ext.form.field.Base,{alternateClassName:"Ext.form.Hidden",inputType:"hidden",hideLabel:true,hidden:true,ariaRole:"presentation",initComponent:function(){this.formItemCls+="-hidden";Ext.form.field.Base.prototype.initComponent.call(this)},isEqual:function(b,a){return this.isEqualAsString(b,a)},initEvents:Ext.emptyFn,setSize:Ext.emptyFn,setWidth:Ext.emptyFn,setHeight:Ext.emptyFn,setPosition:Ext.emptyFn,setPagePosition:Ext.emptyFn,markInvalid:Ext.emptyFn,clearInvalid:Ext.emptyFn},0,["hidden","hiddenfield"],["box","component","field","hidden","hiddenfield"],{box:true,component:true,field:true,hidden:true,hiddenfield:true},["widget.hidden","widget.hiddenfield"],0,[Ext.form.field,"Hidden",Ext.form,"Hidden"],0));(Ext.cmd.derive("Ext.picker.Color",Ext.Component,{alternateClassName:"Ext.ColorPalette",componentCls:Ext.baseCSSPrefix+"color-picker",selectedCls:Ext.baseCSSPrefix+"color-picker-selected",itemCls:Ext.baseCSSPrefix+"color-picker-item",value:null,clickEvent:"click",allowReselect:false,colors:["000000","993300","333300","003300","003366","000080","333399","333333","800000","FF6600","808000","008000","008080","0000FF","666699","808080","FF0000","FF9900","99CC00","339966","33CCCC","3366FF","800080","969696","FF00FF","FFCC00","FFFF00","00FF00","00FFFF","00CCFF","993366","C0C0C0","FF99CC","FFCC99","FFFF99","CCFFCC","CCFFFF","99CCFF","CC99FF","FFFFFF"],colorRe:/(?:^|\s)color-(.{6})(?:\s|$)/,renderTpl:['<tpl for="colors">','<a href="#" role="button" class="color-{.} {parent.itemCls}" hidefocus="on">','<span class="{parent.itemCls}-inner" style="background:#{.}">&#160;</span>',"</a>","</tpl>"],initComponent:function(){var a=this;Ext.Component.prototype.initComponent.apply(this,arguments);if(a.handler){a.on("select",a.handler,a.scope,true)}},initRenderData:function(){var a=this;return Ext.apply(Ext.util.Renderable.prototype.initRenderData.call(this),{itemCls:a.itemCls,colors:a.colors})},onRender:function(){var b=this,a=b.clickEvent;Ext.util.Renderable.prototype.onRender.apply(this,arguments);b.mon(b.el,a,b.handleClick,b,{delegate:"a"});if(a!=="click"){b.mon(b.el,"click",Ext.emptyFn,b,{delegate:"a",stopEvent:true})}},afterRender:function(){var a=this,b;Ext.util.Renderable.prototype.afterRender.apply(this,arguments);if(a.value){b=a.value;a.value=null;a.select(b,true)}},handleClick:function(c){var b=this,a;c.stopEvent();if(!b.disabled){a=c.currentTarget.className.match(b.colorRe)[1];b.select(a.toUpperCase())}},select:function(b,a){var d=this,g=d.selectedCls,e=d.value,c;b=b.replace("#","");if(!d.rendered){d.value=b;return}if(b!=e||d.allowReselect){c=d.el;if(d.value){c.down("a.color-"+e).removeCls(g)}c.down("a.color-"+b).addCls(g);d.value=b;if(a!==true){d.fireEvent("select",d,b)}}},clear:function(){var b=this,c=b.value,a;if(c&&b.rendered){a=b.el.down("a.color-"+c);a.removeCls(b.selectedCls)}b.value=null},getValue:function(){return this.value||null}},0,["colorpicker"],["box","colorpicker","component"],{box:true,colorpicker:true,component:true},["widget.colorpicker"],0,[Ext.picker,"Color",Ext,"ColorPalette"],0));(Ext.cmd.derive("Ext.layout.component.field.HtmlEditor",Ext.layout.component.field.FieldContainer,{type:"htmleditor",naturalHeight:150,naturalWidth:300,beginLayout:function(b){var a=this.owner,c;if(Ext.isGecko){c=a.textareaEl.dom;this.lastValue=c.value;c.value=""}Ext.layout.component.field.FieldContainer.prototype.beginLayout.apply(this,arguments);b.toolbarContext=b.context.getCmp(a.toolbar);b.inputCmpContext=b.context.getCmp(a.inputCmp);b.bodyCellContext=b.getEl("bodyEl");b.textAreaContext=b.getEl("textareaEl");b.iframeContext=b.getEl("iframeEl")},beginLayoutCycle:function(h){var g=this,c=h.widthModel,b=h.heightModel,a=g.owner,e=a.iframeEl,d=a.textareaEl;Ext.layout.component.Auto.prototype.beginLayoutCycle.apply(this,arguments);if(c.shrinkWrap){e.setStyle("width","");d.setStyle("width","")}else{if(c.natural){h.bodyCellContext.setWidth(g.naturalWidth)}}if(b.natural||b.shrinkWrap){e.setHeight(g.naturalHeight);d.setHeight(g.naturalHeight)}},finishedLayout:function(){var a=this.owner;Ext.layout.component.Component.prototype.finishedLayout.apply(this,arguments);if(Ext.isGecko){a.textareaEl.dom.value=this.lastValue}},publishOwnerWidth:function(b,a){Ext.layout.component.Auto.prototype.publishOwnerWidth.apply(this,arguments);a-=b.inputCmpContext.getBorderInfo().width;b.textAreaContext.setWidth(a);b.iframeContext.setWidth(a)},publishInnerWidth:function(d,c){var b=d.inputCmpContext.getBorderInfo().width,e=Ext.isIE8,a=d.widthModel.natural;Ext.layout.component.field.FieldContainer.prototype.publishInnerWidth.apply(this,arguments);c=d.bodyCellContext.props.width-b;if(a){if(e){c-=2}d.textAreaContext.setWidth(c);d.iframeContext.setWidth(c)}else{if(e){d.textAreaContext.setWidth(c)}}},publishInnerHeight:function(b,a){var c=b.toolbarContext.getProp("height");Ext.layout.component.field.FieldContainer.prototype.publishInnerHeight.apply(this,arguments);a=b.bodyCellContext.props.height;if(c!==undefined){a-=c+b.inputCmpContext.getFrameInfo().height;if(Ext.isIE8){a-=2}b.iframeContext.setHeight(a);b.textAreaContext.setHeight(a)}else{this.done=false}}},0,0,0,0,["layout.htmleditor"],0,[Ext.layout.component.field,"HtmlEditor"],0));(Ext.cmd.derive("Ext.form.field.HtmlEditor",Ext.form.FieldContainer,{alternateClassName:"Ext.form.HtmlEditor",componentLayout:"htmleditor",componentTpl:["{beforeTextAreaTpl}",'<textarea id="{id}-textareaEl" data-ref="textareaEl" name="{name}" tabIndex="-1" {inputAttrTpl}',' class="{textareaCls}" autocomplete="off">',"{[Ext.util.Format.htmlEncode(values.value)]}","</textarea>","{afterTextAreaTpl}","{beforeIFrameTpl}",'<iframe id="{id}-iframeEl" data-ref="iframeEl" name="{iframeName}" frameBorder="0" {iframeAttrTpl}',' src="{iframeSrc}" class="{iframeCls}"></iframe>',"{afterIFrameTpl}",{disableFormats:true}],stretchInputElFixed:true,subTplInsertions:["beforeTextAreaTpl","afterTextAreaTpl","beforeIFrameTpl","afterIFrameTpl","iframeAttrTpl","inputAttrTpl"],enableFormat:true,enableFontSize:true,enableColors:true,enableAlignments:true,enableLists:true,enableSourceEdit:true,enableLinks:true,enableFont:true,createLinkText:"Please enter the URL for the link:",defaultLinkValue:"http://",fontFamilies:["Arial","Courier New","Tahoma","Times New Roman","Verdana"],defaultValue:Ext.isOpera?"&#160;":"&#8203;",extraFieldBodyCls:Ext.baseCSSPrefix+"html-editor-wrap",defaultButtonUI:"default-toolbar",initialized:false,activated:false,sourceEditMode:false,iframePad:3,hideMode:"offsets",maskOnDisable:true,containerElCls:Ext.baseCSSPrefix+"html-editor-container",reStripQuotes:/^['"]*|['"]*$/g,initComponent:function(){var a=this;a.items=[a.createToolbar(),a.createInputCmp()];a.layout={type:"vbox",align:"stretch"};Ext.form.FieldContainer.prototype.initComponent.apply(this,arguments);a.initField()},createInputCmp:function(){this.inputCmp=Ext.widget(this.getInputCmpCfg());return this.inputCmp},getInputCmpCfg:function(){var a=this,c=a.id+"-inputCmp",b={id:c,name:a.name,textareaCls:Ext.baseCSSPrefix+"hidden",value:a.value,iframeName:Ext.id(),iframeSrc:Ext.SSL_SECURE_URL,iframeCls:Ext.baseCSSPrefix+"htmleditor-iframe"};a.getInsertionRenderData(b,a.subTplInsertions);return{flex:1,xtype:"component",tpl:a.getTpl("componentTpl"),childEls:["iframeEl","textareaEl"],id:c,cls:Ext.baseCSSPrefix+"html-editor-input",data:b}},createToolbar:function(){this.toolbar=Ext.widget(this.getToolbarCfg());return this.toolbar},getToolbarCfg:function(){var h=this,b=[],e,a=Ext.quickTipsActive&&Ext.tip.QuickTipManager.isEnabled(),d=Ext.baseCSSPrefix,j,g;function c(m,k,l){return{itemId:m,cls:d+"btn-icon",iconCls:d+"edit-"+m,enableToggle:k!==false,scope:h,handler:l||h.relayBtnCmd,clickEvent:"mousedown",tooltip:a?h.buttonTips[m]||g:g,overflowText:h.buttonTips[m].title||g,tabIndex:-1}}if(h.enableFont&&!Ext.isSafari2){j=Ext.widget("component",{itemId:"fontSelect",renderTpl:['<select id="{id}-selectEl" data-ref="selectEl" class="'+d+'font-select">',"</select>"],childEls:["selectEl"],afterRender:function(){h.fontSelect=this.selectEl;Ext.Component.prototype.afterRender.apply(this,arguments)},onDisable:function(){var k=this.selectEl;if(k){k.dom.disabled=true}Ext.Component.prototype.onDisable.apply(this,arguments)},onEnable:function(){var k=this.selectEl;if(k){k.dom.disabled=false}Ext.Component.prototype.onEnable.apply(this,arguments)},listeners:{change:function(){h.win.focus();h.relayCmd("fontName",h.fontSelect.dom.value);h.deferFocus()},element:"selectEl"}});b.push(j,"-")}if(h.enableFormat){b.push(c("bold"),c("italic"),c("underline"))}if(h.enableFontSize){b.push("-",c("increasefontsize",false,h.adjustFont),c("decreasefontsize",false,h.adjustFont))}if(h.enableColors){b.push("-",{itemId:"forecolor",cls:d+"btn-icon",iconCls:d+"edit-forecolor",overflowText:h.buttonTips.forecolor.title,tooltip:a?h.buttonTips.forecolor||g:g,tabIndex:-1,menu:Ext.widget("menu",{plain:true,items:[{xtype:"colorpicker",allowReselect:true,focus:Ext.emptyFn,value:"000000",plain:true,clickEvent:"mousedown",handler:function(l,k){h.relayCmd("forecolor",Ext.isWebKit||Ext.isIE?"#"+k:k);this.up("menu").hide()}}]})},{itemId:"backcolor",cls:d+"btn-icon",iconCls:d+"edit-backcolor",overflowText:h.buttonTips.backcolor.title,tooltip:a?h.buttonTips.backcolor||g:g,tabIndex:-1,menu:Ext.widget("menu",{plain:true,items:[{xtype:"colorpicker",focus:Ext.emptyFn,value:"FFFFFF",plain:true,allowReselect:true,clickEvent:"mousedown",handler:function(l,k){if(Ext.isGecko){h.execCmd("useCSS",false);h.execCmd("hilitecolor","#"+k);h.execCmd("useCSS",true);h.deferFocus()}else{h.relayCmd(Ext.isOpera?"hilitecolor":"backcolor",Ext.isWebKit||Ext.isIE||Ext.isOpera?"#"+k:k)}this.up("menu").hide()}}]})})}if(h.enableAlignments){b.push("-",c("justifyleft"),c("justifycenter"),c("justifyright"))}if(!Ext.isSafari2){if(h.enableLinks){b.push("-",c("createlink",false,h.createLink))}if(h.enableLists){b.push("-",c("insertorderedlist"),c("insertunorderedlist"))}if(h.enableSourceEdit){b.push("-",c("sourceedit",true,function(){h.toggleSourceEdit(!h.sourceEditMode)}))}}for(e=0;e<b.length;e++){if(b[e].itemId!=="sourceedit"){b[e].disabled=true}}return{xtype:"toolbar",defaultButtonUI:h.defaultButtonUI,cls:Ext.baseCSSPrefix+"html-editor-tb",enableOverflow:true,items:b,listeners:{click:function(k){k.preventDefault()},element:"el"}}},getMaskTarget:function(){return Ext.isGecko?this.inputCmp.el:this.bodyEl},setReadOnly:function(e){var d=this,c=d.textareaEl,b=d.iframeEl,a;d.readOnly=e;if(c){c.dom.readOnly=e}if(d.initialized){a=d.getEditorBody();if(Ext.isIE){b.setDisplayed(false);a.contentEditable=!e;b.setDisplayed(true)}else{d.setDesignMode(!e)}if(a){a.style.cursor=e?"default":"text"}d.disableItems(e)}},getDocMarkup:function(){var b=this,a=b.iframeEl.getHeight()-b.iframePad*2;return Ext.String.format('<!DOCTYPE html><html><head><style type="text/css">'+(Ext.isOpera?"p{margin:0;}":"")+"body{border:0;margin:0;padding:{0}px;direction:"+(b.rtl?"rtl;":"ltr;")+(Ext.isIE8?Ext.emptyString:"min-")+"height:{1}px;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;cursor:text;background-color:white;"+(Ext.isIE?"":"font-size:12px;font-family:{2}")+"}</style></head><body></body></html>",b.iframePad,a,b.defaultFont)},getEditorBody:function(){var a=this.getDoc();return a.body||a.documentElement},getDoc:function(){return this.iframeEl.dom.contentDocument||this.getWin().document},getWin:function(){return this.iframeEl.dom.contentWindow||window.frames[this.iframeEl.dom.name]},initDefaultFont:function(){var h=this,a=0,j,b,k,e,d,g,c;if(!h.defaultFont){b=h.textareaEl.getStyle("font-family");b=Ext.String.capitalize(b.split(",")[0]);j=Ext.Array.clone(h.fontFamilies);Ext.Array.include(j,b);j.sort();h.defaultFont=b;k=h.down("#fontSelect").selectEl.dom;for(d=0,g=j.length;d<g;++d){b=j[d];c=b.toLowerCase();e=new Option(b,c);if(b===h.defaultFont){a=d}e.style.fontFamily=c;if(Ext.isIE){k.add(e)}else{k.options.add(e)}}k.options[a].selected=true}},isEqual:function(b,a){return this.isEqualAsString(b,a)},afterRender:function(){var b=this,a=b.inputCmp;Ext.util.Renderable.prototype.afterRender.apply(this,arguments);b.iframeEl=a.iframeEl;b.textareaEl=a.textareaEl;b.inputEl=b.iframeEl;if(b.enableFont){b.initDefaultFont()}b.monitorTask=Ext.TaskManager.start({run:b.checkDesignMode,scope:b,interval:100})},initFrameDoc:function(){var b=this,c,a;Ext.TaskManager.stop(b.monitorTask);c=b.getDoc();b.win=b.getWin();c.open();c.write(b.getDocMarkup());c.close();a={run:function(){var d=b.getDoc();if(d.body||d.readyState==="complete"){Ext.TaskManager.stop(a);b.setDesignMode(true);Ext.defer(b.initEditor,10,b)}},interval:10,duration:10000,scope:b};Ext.TaskManager.start(a)},checkDesignMode:function(){var a=this,b=a.getDoc();if(b&&(!b.editorInitialized||a.getDesignMode()!=="on")){a.initFrameDoc()}},setDesignMode:function(c){var a=this,b=a.getDoc();if(b){if(a.readOnly){c=false}b.designMode=(/on|true/i).test(String(c).toLowerCase())?"on":"off"}},getDesignMode:function(){var a=this.getDoc();return !a?"":String(a.designMode).toLowerCase()},disableItems:function(d){var b=this.getToolbar().items.items,c,a=b.length,e;for(c=0;c<a;c++){e=b[c];if(e.getItemId()!=="sourceedit"){e.setDisabled(d)}}},toggleSourceEdit:function(b){var g=this,d=g.iframeEl,a=g.textareaEl,e=Ext.baseCSSPrefix+"hidden",c=g.getToolbar().getComponent("sourceedit");if(!Ext.isBoolean(b)){b=!g.sourceEditMode}g.sourceEditMode=b;if(c.pressed!==b){c.toggle(b)}if(b){g.disableItems(true);g.syncValue();d.addCls(e);a.removeCls(e);a.dom.removeAttribute("tabIndex");a.focus();g.inputEl=a}else{if(g.initialized){g.disableItems(g.readOnly)}g.pushValue();d.removeCls(e);a.addCls(e);a.dom.setAttribute("tabIndex",-1);g.deferFocus();g.inputEl=d}g.fireEvent("editmodechange",g,b);g.updateLayout()},createLink:function(){var a=prompt(this.createLinkText,this.defaultLinkValue);if(a&&a!=="http://"){this.relayCmd("createlink",a)}},clearInvalid:Ext.emptyFn,setValue:function(d){var c=this,b=c.textareaEl,a=c.inputCmp;if(d===null||d===undefined){d=""}if(b){b.dom.value=d}c.pushValue();if(!c.rendered&&c.inputCmp){c.inputCmp.data.value=d}c.mixins.field.setValue.call(c,d);return c},cleanHtml:function(a){a=String(a);if(Ext.isWebKit){a=a.replace(/\sclass="(?:Apple-style-span|Apple-tab-span|khtml-block-placeholder)"/gi,"")}if(a.charCodeAt(0)===parseInt(this.defaultValue.replace(/\D/g,""),10)){a=a.substring(1)}return a},syncValue:function(){var g=this,b,h,d,a,c,e;if(g.initialized){b=g.getEditorBody();d=b.innerHTML;e=g.textareaEl.dom;if(Ext.isWebKit){a=b.getAttribute("style");c=a.match(/text-align:(.*?);/i);if(c&&c[1]){d='<div style="'+c[0]+'">'+d+"</div>"}}d=g.cleanHtml(d);if(g.fireEvent("beforesync",g,d)!==false){if(Ext.isGecko&&e.value===""&&d==="<br>"){d=""}if(e.value!==d){e.value=d;h=true}g.fireEvent("sync",g,d);if(h){g.checkChange()}}}},getValue:function(){var a=this,b;if(!a.sourceEditMode){a.syncValue()}b=a.rendered?a.textareaEl.dom.value:a.value;a.value=b;return b},pushValue:function(){var b=this,a;if(b.initialized){a=b.textareaEl.dom.value||"";if(!b.activated&&a.length<1){a=b.defaultValue}if(b.fireEvent("beforepush",b,a)!==false){b.getEditorBody().innerHTML=a;if(Ext.isGecko){b.setDesignMode(false);b.setDesignMode(true)}b.fireEvent("push",b,a)}}},focus:function(d,b){var c=this,e,a;if(b){if(!c.focusTask){c.focusTask=new Ext.util.DelayedTask(c.focus)}c.focusTask.delay(Ext.isNumber(b)?b:10,null,c,[d,false])}else{if(d){if(c.textareaEl&&c.textareaEl.dom){e=c.textareaEl.dom.value}if(e&&e.length){c.execCmd("selectall",true)}}a=c.getFocusEl();if(a&&a.focus){a.focus()}}return c},initEditor:function(){var d=this,c,a,h,j,b;if(d.destroying||d.isDestroyed){return}c=d.getEditorBody();a=d.textareaEl.getStyle(["font-size","font-family","background-image","background-repeat","background-color","color"]);a["background-attachment"]="fixed";c.bgProperties="fixed";Ext.DomHelper.applyStyles(c,a);h=d.getDoc();j=Ext.get(h);if(j){try{j.clearListeners()}catch(g){}b=d.onEditorEvent.bind(d);j.on({mousedown:b,dblclick:b,click:b,keyup:b,delegated:false,buffer:100});b=d.onRelayedEvent;j.on({mousedown:b,mousemove:b,mouseup:b,click:b,dblclick:b,delegated:false,scope:d});if(Ext.isGecko){j.on("keypress",d.applyCommand,d)}if(d.fixKeys){j.on("keydown",d.fixKeys,d)}if(d.fixKeysAfter){j.on("keyup",d.fixKeysAfter,d)}if(Ext.isIE9){Ext.get(h.documentElement).on("focus",d.focus,d)}if(Ext.isIE8){j.on("focusout",function(){d.savedSelection=h.selection.type!=="None"?h.selection.createRange():null},d);j.on("focusin",function(){if(d.savedSelection){d.savedSelection.select()}},d)}Ext.getWin().on("beforeunload",d.beforeDestroy,d);h.editorInitialized=true;d.initialized=true;d.pushValue();d.setReadOnly(d.readOnly);d.fireEvent("initialize",d)}},beforeDestroy:function(){var a=this,d=a.monitorTask,c,g;if(d){Ext.TaskManager.stop(d)}if(a.rendered){Ext.getWin().un(a.beforeDestroy,a);c=a.getDoc();if(c){Ext.get(c).clearListeners();if(c.hasOwnProperty){for(g in c){try{if(c.hasOwnProperty(g)){delete c[g]}}catch(b){}}}}a.iframeEl.destroy();delete a.iframeEl;delete a.textareaEl;delete a.toolbar;delete a.inputCmp}Ext.container.Container.prototype.beforeDestroy.call(this)},onRelayedEvent:function(c){var b=this.iframeEl,d=Ext.fly(b).getTrueXY(),e=c.getXY(),a=c.getXY();c.xy=[d[0]+a[0],d[1]+a[1]];c.injectEvent(b);c.xy=e},onFirstFocus:function(){var c=this,b,a;c.activated=true;c.disableItems(c.readOnly);if(Ext.isGecko){c.win.focus();b=c.win.getSelection();if(b.focusNode&&!c.getValue().length){a=b.getRangeAt(0);a.selectNodeContents(c.getEditorBody());a.collapse(true);c.deferFocus()}try{c.execCmd("useCSS",true);c.execCmd("styleWithCSS",false)}catch(d){}}c.fireEvent("activate",c)},adjustFont:function(d){var e=d.getItemId()==="increasefontsize"?1:-1,c=this.getDoc().queryCommandValue("FontSize")||"2",a=Ext.isString(c)&&c.indexOf("px")!==-1,b;c=parseInt(c,10);if(a){if(c<=10){c=1+e}else{if(c<=13){c=2+e}else{if(c<=16){c=3+e}else{if(c<=18){c=4+e}else{if(c<=24){c=5+e}else{c=6+e}}}}}c=Ext.Number.constrain(c,1,6)}else{b=Ext.isSafari;if(b){e*=2}c=Math.max(1,c+e)+(b?"px":0)}this.relayCmd("FontSize",c)},onEditorEvent:function(){this.updateToolbar()},updateToolbar:function(){var j=this,e,c,d,k,b,g,a,h;if(j.readOnly){return}if(!j.activated){j.onFirstFocus();return}d=j.getToolbar().items.map;k=j.getDoc();if(j.enableFont&&!Ext.isSafari2){g=k.queryCommandValue("fontName");b=(g?g.split(",")[0].replace(j.reStripQuotes,""):j.defaultFont).toLowerCase();a=j.fontSelect.dom;if(b!==a.value||b!==g){a.value=b}}function m(){var l;for(e=0,c=arguments.length,b;e<c;e++){b=arguments[e];try{l=k.queryCommandState(b)}catch(n){l=false}d[b].toggle(l)}}if(j.enableFormat){m("bold","italic","underline")}if(j.enableAlignments){m("justifyleft","justifycenter","justifyright")}if(!Ext.isSafari2&&j.enableLists){m("insertorderedlist","insertunorderedlist")}h=j.toolbar.query("menu");for(e=0;e<h.length;e++){h[e].hide()}j.syncValue()},relayBtnCmd:function(a){this.relayCmd(a.getItemId())},relayCmd:function(b,a){Ext.defer(function(){var c=this;if(!this.isDestroyed){c.win.focus();c.execCmd(b,a);c.updateToolbar()}},10,this)},execCmd:function(c,b){var a=this,d=a.getDoc();d.execCommand(c,false,(b===undefined?null:b));a.syncValue()},applyCommand:function(d){if(d.ctrlKey){var a=this,g=d.getCharCode(),b;if(g>0){g=String.fromCharCode(g);switch(g){case"b":b="bold";break;case"i":b="italic";break;case"u":b="underline";break}if(b){a.win.focus();a.execCmd(b);a.deferFocus();d.preventDefault()}}}},insertAtCursor:function(c){var b=this,a;if(b.activated){b.win.focus();if(Ext.isIE){a=b.getDoc().selection.createRange();if(a){a.pasteHTML(c);b.syncValue();b.deferFocus()}}else{b.execCmd("InsertHTML",c);b.deferFocus()}}},fixKeys:(function(){var a;if(Ext.isIE){return function(j){var d=this,c=j.getKey(),h=d.getDoc(),l=d.readOnly,b,g;if(c===j.TAB){j.stopEvent();if(!l){b=h.selection.createRange();if(b){if(b.collapse){b.collapse(true);b.pasteHTML("&#160;&#160;&#160;&#160;")}d.deferFocus()}}}else{if(c===j.ENTER){if(!l){if(Ext.isIE10m){b=h.selection.createRange();if(b){g=b.parentElement();if(!g||g.tagName.toLowerCase()!=="li"){j.stopEvent();b.pasteHTML("<br />");b.collapse(false);b.select()}}}else{b=h.getSelection().getRangeAt(0);if(b&&b.commonAncestorContainer.parentNode.tagName.toLowerCase()!=="li"){j.stopEvent();a=h.createElement("div");b.insertNode(a)}}}}}}}if(Ext.isOpera){return function(d){var c=this,b=d.getKey(),g=c.readOnly;if(b===d.TAB){d.stopEvent();if(!g){c.win.focus();c.execCmd("InsertHTML","&#160;&#160;&#160;&#160;");c.deferFocus()}}}}return null}()),fixKeysAfter:(function(){if(Ext.isIE){return function(d){var b=this,a=d.getKey(),c=b.getDoc(),h=b.readOnly,g;if(!h&&(a===d.BACKSPACE||a===d.DELETE)){g=c.body.innerHTML;if(g==="<p>&nbsp;</p>"||g==="<P>&nbsp;</P>"){c.body.innerHTML=""}}}}return null}()),getToolbar:function(){return this.toolbar},buttonTips:{bold:{title:"Bold (Ctrl+B)",text:"Make the selected text bold.",cls:Ext.baseCSSPrefix+"html-editor-tip"},italic:{title:"Italic (Ctrl+I)",text:"Make the selected text italic.",cls:Ext.baseCSSPrefix+"html-editor-tip"},underline:{title:"Underline (Ctrl+U)",text:"Underline the selected text.",cls:Ext.baseCSSPrefix+"html-editor-tip"},increasefontsize:{title:"Grow Text",text:"Increase the font size.",cls:Ext.baseCSSPrefix+"html-editor-tip"},decreasefontsize:{title:"Shrink Text",text:"Decrease the font size.",cls:Ext.baseCSSPrefix+"html-editor-tip"},backcolor:{title:"Text Highlight Color",text:"Change the background color of the selected text.",cls:Ext.baseCSSPrefix+"html-editor-tip"},forecolor:{title:"Font Color",text:"Change the color of the selected text.",cls:Ext.baseCSSPrefix+"html-editor-tip"},justifyleft:{title:"Align Text Left",text:"Align text to the left.",cls:Ext.baseCSSPrefix+"html-editor-tip"},justifycenter:{title:"Center Text",text:"Center text in the editor.",cls:Ext.baseCSSPrefix+"html-editor-tip"},justifyright:{title:"Align Text Right",text:"Align text to the right.",cls:Ext.baseCSSPrefix+"html-editor-tip"},insertunorderedlist:{title:"Bullet List",text:"Start a bulleted list.",cls:Ext.baseCSSPrefix+"html-editor-tip"},insertorderedlist:{title:"Numbered List",text:"Start a numbered list.",cls:Ext.baseCSSPrefix+"html-editor-tip"},createlink:{title:"Hyperlink",text:"Make the selected text a hyperlink.",cls:Ext.baseCSSPrefix+"html-editor-tip"},sourceedit:{title:"Source Edit",text:"Switch to source editing mode.",cls:Ext.baseCSSPrefix+"html-editor-tip"}},privates:{deferFocus:function(){this.focus(false,true)},getFocusEl:function(){var a=this,b=a.win;return b&&!a.sourceEditMode?b:a.textareaEl}}},0,["htmleditor"],["box","component","container","fieldcontainer","htmleditor"],{box:true,component:true,container:true,fieldcontainer:true,htmleditor:true},["widget.htmleditor"],[["field",Ext.form.field.Field]],[Ext.form.field,"HtmlEditor",Ext.form,"HtmlEditor"],0));(Ext.cmd.derive("Ext.form.field.Tag",Ext.form.field.ComboBox,{multiSelect:true,forceSelection:true,createNewOnEnter:false,createNewOnBlur:false,encodeSubmitValue:false,triggerOnClick:true,stacked:false,pinList:true,filterPickList:false,selectOnFocus:true,grow:true,growMin:false,growMax:false,fieldSubTpl:['<div id="{cmpId}-listWrapper" data-ref="listWrapper" class="'+Ext.baseCSSPrefix+'tagfield {fieldCls} {typeCls} {typeCls}-{ui}">','<ul id="{cmpId}-itemList" data-ref="itemList" class="'+Ext.baseCSSPrefix+'tagfield-list">','<li id="{cmpId}-inputElCt" data-ref="inputElCt" class="'+Ext.baseCSSPrefix+'tagfield-input">','<div id="{cmpId}-emptyEl" data-ref="emptyEl" class="{emptyCls}">{emptyText}</div>','<input id="{cmpId}-inputEl" data-ref="inputEl" type="{type}" ','<tpl if="name">name="{name}" </tpl>','<tpl if="value"> value="{[Ext.util.Format.htmlEncode(values.value)]}"</tpl>','<tpl if="size">size="{size}" </tpl>','<tpl if="tabIdx">tabIndex="{tabIdx}" </tpl>','<tpl if="disabled"> disabled="disabled"</tpl>','class="'+Ext.baseCSSPrefix+'tagfield-input-field {inputElCls}" autocomplete="off">',"</li>","</ul>","</div>",{disableFormats:true}],childEls:["listWrapper","itemList","inputEl","inputElCt","emptyEl"],emptyInputCls:Ext.baseCSSPrefix+"tagfield-emptyinput",initComponent:function(){var b=this,a=b.typeAhead;b.typeAhead=false;b.listConfig=Ext.apply({refreshSelmodelOnRefresh:false},b.listConfig);Ext.form.field.ComboBox.prototype.initComponent.call(this);b.typeAhead=a;b.selectionModel=new Ext.selection.Model({store:b.valueStore,mode:"MULTI",lastFocused:null,onSelectChange:function(c,e,d,g){g()}});if(!Ext.isEmpty(b.delimiter)&&b.multiSelect){b.delimiterRegexp=new RegExp(String(b.delimiter).replace(/[$%()*+.?\[\\\]{|}]/g,"\\$&"))}},initEvents:function(){var a=this;Ext.form.field.ComboBox.prototype.initEvents.apply(this,arguments);if(!a.enableKeyEvents){a.mon(a.inputEl,"keydown",a.onKeyDown,a)}a.mon(a.inputEl,"paste",a.onPaste,a);a.mon(a.listWrapper,"click",a.onItemListClick,a);a.mon(a.selectionModel,{selectionchange:a.onSelectionChange,focuschange:a.onFocusChange,scope:a})},onBindStore:function(a){var b=this;if(a){b.valueStore=new Ext.data.Store({model:a.getModel()});b.mon(b.valueStore,{datachanged:b.onValueStoreChange,remove:b.onValueStoreRemove,scope:b});if(b.selectionModel){b.selectionModel.bindStore(b.valueStore)}b.store.addFilter(b.selectedFilter=new Ext.util.Filter({filterFn:function(c){return !b.valueStore.data.contains(c)},disabled:!b.filterPickList}))}},onUnbindStore:function(a){var b=this,c=b.valueStore;if(c){b.mun(c,{datachanged:b.onValueStoreChange,remove:b.onValueStoreRemove,scope:b});c.destroy()}if(b.selectionModel){b.selectionModel.destroy()}b.store.removeFilter(b.selectedFilter);b.valueStore=b.selectionModel=null;Ext.form.field.ComboBox.prototype.onUnbindStore.apply(this,arguments)},onValueStoreRemove:function(){if(this.filterPickList){this.store.filter()}},onValueStoreChange:function(){if(this.filterPickList){this.store.filter()}this.applyMultiselectItemMarkup()},onSelectionChange:function(a,b){this.applyMultiselectItemMarkup();this.fireEvent("valueselectionchange",this,b)},onFocusChange:function(a,c,b){this.fireEvent("valuefocuschange",this,c,b)},createPicker:function(){var b=this,a=Ext.form.field.ComboBox.prototype.createPicker.apply(this,arguments);b.mon(a,{beforerefresh:b.onBeforeListRefresh,scope:b});return a},onDestroy:function(){var a=this;Ext.destroyMembers(a,"valueStore","selectionModel");Ext.form.field.ComboBox.prototype.onDestroy.apply(this,arguments)},getSubTplData:function(){var a=this,b=Ext.form.field.Text.prototype.getSubTplData.call(this),c=a.emptyText&&b.value.length<1;b.value="";if(c){b.emptyText=a.emptyText;b.emptyCls=a.emptyCls;b.inputElCls=a.emptyInputCls}else{b.emptyText="";b.emptyCls=a.emptyInputCls;b.inputElCls=""}return b},afterRender:function(){var a=this;if(Ext.supports.Placeholder&&a.inputEl&&a.emptyText){delete a.inputEl.dom.placeholder}a.bodyEl.applyStyles("vertical-align:top");if(a.grow){if(Ext.isNumber(a.growMin)&&(a.growMin>0)){a.listWrapper.applyStyles("min-height:"+a.growMin+"px")}if(Ext.isNumber(a.growMax)&&(a.growMax>0)){a.listWrapper.applyStyles("max-height:"+a.growMax+"px")}}if(a.stacked===true){a.itemList.addCls(Ext.baseCSSPrefix+"tagfield-stacked")}if(!a.multiSelect){a.itemList.addCls(Ext.baseCSSPrefix+"tagfield-singleselect")}a.applyMultiselectItemMarkup();Ext.form.field.ComboBox.prototype.afterRender.apply(this,arguments)},findRecord:function(d,c){var b=this.store,a;if(!b){return false}a=b.queryBy(function(e){return e.isEqual(e.get(d),c)});return(a.getCount()>0)?a.first():false},onLoad:function(){var b=this,a=b.valueField,c=b.valueStore,d=false;if(c){if(!Ext.isEmpty(b.value)&&(c.getCount()==0)){b.setValue(b.value,false,true)}c.suspendEvents();c.each(function(h){var g=b.findRecord(a,h.get(a)),e=g?c.indexOf(h):-1;if(e>=0){c.removeAt(e);c.insert(e,g);d=true}});c.resumeEvents();if(d){c.fireEvent("datachanged",c)}}Ext.form.field.ComboBox.prototype.onLoad.apply(this,arguments)},isFilteredRecord:function(a){var g=this,b=g.store,d=g.valueField,e,c=false;e=b.findExact(d,a.get(d));c=((e===-1)&&(!b.snapshot||(g.findRecord(d,a.get(d))!==false)));c=c||(!c&&(e===-1)&&(g.forceSelection!==true)&&(g.valueStore.findExact(d,a.get(d))>=0));return c},doRawQuery:function(){var a=this,b=a.inputEl.dom.value;if(a.multiSelect){b=b.split(a.delimiter).pop()}a.doQuery(b,false,true)},onBeforeListRefresh:function(){this.ignoreSelection++},onListRefresh:function(){Ext.form.field.ComboBox.prototype.onListRefresh.apply(this,arguments);if(this.ignoreSelection>0){--this.ignoreSelection}},onListSelectionChange:function(c,g){var b=this,d=b.valueStore,e=[],a;if((b.ignoreSelection<=0)&&b.isExpanded){d.each(function(h){if(Ext.Array.contains(g,h)||b.isFilteredRecord(h)){e.push(h)}});e=Ext.Array.merge(e,g);a=Ext.Array.intersect(e,d.getRange()).length;if((a!=e.length)||(a!=b.valueStore.getCount())){b.setValue(e,false);if(!b.multiSelect||!b.pinList){Ext.defer(b.collapse,1,b)}if(d.getCount()>0){b.fireEvent("select",b,d.getRange())}}if(!b.pinList){b.inputEl.dom.value=""}if(!Ext.supports.TouchEvents){b.inputEl.focus();if(b.selectOnFocus){b.inputEl.dom.select()}}}},syncSelection:function(){var g=this,d=g.picker,c=g.valueField,a,e,b;if(d){a=d.store;e=[];if(g.valueStore){g.valueStore.each(function(j){var h=a.findExact(c,j.get(c));if(h>=0){e.push(a.getAt(h))}})}g.ignoreSelection++;b=d.getSelectionModel();b.deselectAll();if(e.length>0){b.select(e)}if(g.ignoreSelection>0){--g.ignoreSelection}}},getCursorPosition:function(){var a;if(Ext.isIE){a=document.selection.createRange();a.collapse(true);a.moveStart("character",-this.inputEl.dom.value.length);a=a.text.length}else{a=this.inputEl.dom.selectionStart}return a},hasSelectedText:function(){var b,a;if(Ext.isIE){b=document.selection;a=b.createRange();return(a.parentElement()==this.inputEl.dom)}else{return this.inputEl.dom.selectionStart!=this.inputEl.dom.selectionEnd}},onKeyDown:function(d,k){var g=this,j=d.getKey(),b=g.inputEl.dom.value,l=g.valueStore,c=g.selectionModel,a=false;if(g.readOnly||g.disabled||!g.editable){return}if(g.isExpanded&&(j==d.A&&d.ctrlKey)){g.select(g.getStore().getRange());c.setLastFocused(null);c.deselectAll();g.collapse();g.inputEl.focus();a=true}else{if((l.getCount()>0)&&((b=="")||((g.getCursorPosition()===0)&&!g.hasSelectedText()))){var h=(c.getCount()>0)?l.indexOf(c.getLastSelected()||c.getLastFocused()):-1;if((j==d.BACKSPACE)||(j==d.DELETE)){if(h>-1){if(c.getCount()>1){h=-1}g.valueStore.remove(c.getSelection())}else{g.valueStore.remove(g.valueStore.last())}c.clearSelections();g.setValue(g.valueStore.getRange());if(h>0){c.select(h-1)}a=true}else{if((j==d.RIGHT)||(j==d.LEFT)){if((h==-1)&&(j==d.LEFT)){c.select(l.last());a=true}else{if(h>-1){if(j==d.RIGHT){if(h<(l.getCount()-1)){c.select(h+1,d.shiftKey);a=true}else{if(!d.shiftKey){c.setLastFocused(null);c.deselectAll();a=true}}}else{if((j==d.LEFT)&&(h>0)){c.select(h-1,d.shiftKey);a=true}}}}}else{if(j==d.A&&d.ctrlKey){c.selectAll();a=d.A}}}g.inputEl.focus()}}if(a){g.preventKeyUpEvent=a;d.stopEvent();return}if(g.isExpanded&&(j==d.ENTER)&&g.picker.highlightedItem){g.preventKeyUpEvent=true}if(g.enableKeyEvents){Ext.form.field.Text.prototype.onKeyDown.apply(this,arguments)}if(!d.isSpecialKey()&&!d.hasModifier()){g.selectionModel.setLastFocused(null);g.selectionModel.deselectAll();g.inputEl.focus()}},onKeyUp:function(d,a){var b=this,c=b.inputEl.dom.value;if(b.preventKeyUpEvent){d.stopEvent();if((b.preventKeyUpEvent===true)||(d.getKey()===b.preventKeyUpEvent)){delete b.preventKeyUpEvent}return}if(b.multiSelect&&(b.delimiterRegexp&&b.delimiterRegexp.test(c))||((b.createNewOnEnter===true)&&d.getKey()==d.ENTER)){c=Ext.Array.clean(c.split(b.delimiterRegexp));b.inputEl.dom.value="";b.setValue(b.valueStore.getRange().concat(c));b.inputEl.focus()}Ext.form.field.ComboBox.prototype.onKeyUp.apply(this,[d,a])},onPaste:function(d){var a=this,c=a.inputEl.dom.value,b=(d&&d.browserEvent&&d.browserEvent.clipboardData)?d.browserEvent.clipboardData:false;if(a.multiSelect&&(a.delimiterRegexp&&a.delimiterRegexp.test(c))){if(b&&b.getData){if(/text\/plain/.test(b.types)){c=b.getData("text/plain")}else{if(/text\/html/.test(b.types)){c=b.getData("text/html")}}}c=Ext.Array.clean(c.split(a.delimiterRegexp));a.inputEl.dom.value="";a.setValue(a.valueStore.getRange().concat(c));a.inputEl.focus()}},onTypeAhead:function(){var g=this,e=g.displayField,d=g.inputEl.dom,c=g.getPicker(),b=g.store.findRecord(e,d.value),h,a,j;if(b){h=b.get(e);a=h.length;j=d.value.length;c.highlightItem(c.getNode(b));if(j!==0&&j!==a){d.value=h;g.selectText(j,h.length)}}},onItemListClick:function(a){var c=this,b=a.getTarget("."+Ext.baseCSSPrefix+"tagfield-item"),d=b?a.getTarget("."+Ext.baseCSSPrefix+"tagfield-item-close"):false;if(c.readOnly||c.disabled){return}a.stopPropagation();if(b){if(d){c.removeByListItemNode(b);if(c.valueStore.getCount()>0){c.fireEvent("select",c,c.valueStore.getRange())}}else{c.toggleSelectionByListItemNode(b,a.shiftKey)}if(!Ext.supports.TouchEvents){c.inputEl.focus()}}else{if(c.selectionModel.getCount()>0){c.selectionModel.setLastFocused(null);c.selectionModel.deselectAll()}if(c.triggerOnClick){c.onTriggerClick()}}},getMultiSelectItemMarkup:function(){var a=this;if(!a.multiSelectItemTpl){if(!a.labelTpl){a.labelTpl="{"+a.displayField+"}"}a.labelTpl=a.getTpl("labelTpl");a.multiSelectItemTpl=new Ext.XTemplate(['<tpl for=".">','<li class="    '+Ext.baseCSSPrefix+"tagfield-item ",'<tpl if="this.isSelected(values)">'," selected","</tpl>","{%","values = values.data;","%}",'" qtip="{'+a.displayField+'}">','<div class="'+Ext.baseCSSPrefix+'tagfield-item-text">{[this.getItemLabel(values)]}</div>','<div class="'+Ext.baseCSSPrefix+'tagfield-item-close"></div>',"</li>","</tpl>",{isSelected:function(b){return a.selectionModel.isSelected(b)},getItemLabel:function(b){return a.labelTpl.apply(b)}}])}if(!a.multiSelectItemTpl.isTemplate){a.multiSelectItemTpl=this.getTpl("multiSelectItemTpl")}return a.multiSelectItemTpl.apply(this.valueStore.getRange())},applyMultiselectItemMarkup:function(){var c=this,a=c.itemList,b;if(a){while((b=c.inputElCt.prev())!=null){b.destroy()}c.inputElCt.insertHtml("beforeBegin",c.getMultiSelectItemMarkup())}Ext.GlobalEvents.on({idle:function(){if(c.picker&&c.isExpanded){c.alignPicker()}if(c.hasFocus&&c.inputElCt&&c.listWrapper){c.inputElCt.scrollIntoView(c.listWrapper)}},single:true})},getRecordByListItemNode:function(b){var d=this,c=0,a=d.itemList.dom.firstChild;while(a&&a.nextSibling){if(a==b){break}c++;a=a.nextSibling}c=(a==b)?c:false;if(c===false){return false}return d.valueStore.getAt(c)},toggleSelectionByListItemNode:function(b,d){var c=this,e=c.getRecordByListItemNode(b),a=c.selectionModel;if(e){if(a.isSelected(e)){if(a.isFocused(e)){a.setLastFocused(null)}a.deselect(e)}else{a.select(e,d)}}},removeByListItemNode:function(a){var b=this,c=b.getRecordByListItemNode(a);if(c){b.valueStore.remove(c);b.setValue(b.valueStore.getRange())}},getRawValue:function(){var b=this,c=b.inputEl,a;b.inputEl=false;a=Ext.form.field.Text.prototype.getRawValue.apply(this,arguments);b.inputEl=c;return a},setRawValue:function(c){var b=this,d=b.inputEl,a;b.inputEl=false;a=Ext.form.field.Base.prototype.setRawValue.apply(this,[c]);b.inputEl=d;return a},addValue:function(b){var a=this;if(b){a.setValue(Ext.Array.merge(a.value,Ext.Array.from(b)))}},removeValue:function(b){var a=this;if(b){a.setValue(Ext.Array.difference(a.value,Ext.Array.from(b)))}},setValue:function(k,b,m){var j=this,o=j.valueStore,n=j.valueField,h=[],e,g,d,a,l;if(Ext.isEmpty(k)){k=null}if(Ext.isString(k)&&j.multiSelect){k=k.split(j.delimiter)}k=Ext.Array.from(k,true);for(d=0,g=k.length;d<g;d++){e=k[d];if(!e||!e.isModel){a=o.findExact(n,e);if(a>=0){k[d]=o.getAt(a)}else{a=j.findRecord(n,e);if(!a){if(j.forceSelection){h.push(e)}else{a={};a[j.valueField]=e;a[j.displayField]=e;l=j.valueStore.getModel();a=new l(a)}}if(a){k[d]=a}}}}if((m!==true)&&(h.length>0)&&(j.queryMode==="remote")){var c={};c[j.valueParam||j.valueField]=h.join(j.delimiter);j.store.load({params:c,callback:function(){if(j.itemList){j.itemList.unmask()}j.setValue(k,b,true);j.autoSize();j.lastQuery=false}});return false}if(!j.multiSelect&&(k.length>0)){for(d=k.length-1;d>=0;d--){if(k[d].isModel){k=k[d];break}}if(Ext.isArray(k)){k=k[k.length-1]}}return Ext.form.field.ComboBox.prototype.setValue.apply(this,[k,b])},getValueRecords:function(){return this.valueStore.getRange()},getSubmitData:function(){var a=this,b=Ext.form.field.Base.prototype.getSubmitData.apply(this,arguments);if(a.multiSelect&&a.encodeSubmitValue&&b&&b[a.name]){b[a.name]=Ext.encode(b[a.name])}return b},mimicBlur:function(){var a=this;if(a.selectOnTab&&a.picker&&a.picker.highlightedItem){a.inputEl.dom.value=""}Ext.form.field.Picker.prototype.mimicBlur.apply(this,arguments)},assertValue:function(){var a=this,c=a.inputEl.dom.value,d=!Ext.isEmpty(c)?a.findRecordByDisplay(c):false,b=false;if(!d&&!a.forceSelection&&a.createNewOnBlur&&!Ext.isEmpty(c)){b=c}else{if(d){b=d}}if(b){a.addValue(b)}a.inputEl.dom.value="";a.collapse()},checkChange:function(){if(!this.suspendCheckChange&&!this.isDestroyed){var c=this,g=c.valueStore,b=c.lastValue||"",a=c.valueField,e=Ext.Array.map(Ext.Array.from(c.value),function(h){if(h.isModel){return h.get(a)}return h},this).join(this.delimiter),d=c.isEqual(e,b);if(!d||((e.length>0&&g.getCount()<c.value.length))){g.suspendEvents();g.removeAll();if(Ext.isArray(c.valueModels)){g.add(c.valueModels)}g.resumeEvents();g.fireEvent("datachanged",g);if(!d){c.lastValue=e;c.fireEvent("change",c,e,b);c.onChange(e,b)}}}},isEqual:function(j,h){var b=Ext.Array.from,c=this.valueField,d,a,g,e;j=b(j);h=b(h);a=j.length;if(a!==h.length){return false}for(d=0;d<a;d++){g=j[d].isModel?j[d].get(c):j[d];e=h[d].isModel?h[d].get(c):h[d];if(g!==e){return false}}return true},applyEmptyText:function(){var b=this,a=b.emptyText,c,d;if(b.rendered&&a){d=Ext.isEmpty(b.value)&&!b.hasFocus;c=b.inputEl;if(d){c.dom.value="";b.emptyEl.setHtml(a);b.emptyEl.addCls(b.emptyCls);b.emptyEl.removeCls(b.emptyInputCls);b.listWrapper.addCls(b.emptyCls);b.inputEl.addCls(b.emptyInputCls)}else{b.emptyEl.addCls(b.emptyInputCls);b.emptyEl.removeCls(b.emptyCls);b.listWrapper.removeCls(b.emptyCls);b.inputEl.removeCls(b.emptyInputCls)}b.autoSize()}},preFocus:function(){var a=this,b=a.inputEl,c=(b.dom.value=="");a.emptyEl.addCls(a.emptyInputCls);a.emptyEl.removeCls(a.emptyCls);a.listWrapper.removeCls(a.emptyCls);a.inputEl.removeCls(a.emptyInputCls);if(a.selectOnFocus||c){b.dom.select()}},onFocus:function(){var c=this,b=c.focusCls,a=c.itemList;if(b&&a){a.addCls(b)}Ext.form.field.ComboBox.prototype.onFocus.apply(this,arguments)},onBlur:function(){var c=this,b=c.focusCls,a=c.itemList;if(b&&a){a.removeCls(b)}Ext.form.field.Text.prototype.onBlur.apply(this,arguments)},renderActiveError:function(){var d=this,c=d.invalidCls,b=d.itemList,a=d.hasActiveError();if(c&&b){b[a?"addCls":"removeCls"](d.invalidCls+"-field")}Ext.form.field.Base.prototype.renderActiveError.apply(this,arguments)},autoSize:function(){var a=this;if(a.grow&&a.rendered){a.autoSizing=true;a.updateLayout()}return a},afterComponentLayout:function(){var b=this,a;if(b.autoSizing){a=b.getHeight();if(a!==b.lastInputHeight){if(b.isExpanded){b.alignPicker()}b.fireEvent("autosize",b,a);b.lastInputHeight=a;b.autoSizing=false}}}},0,["tagfield"],["box","combo","combobox","component","field","pickerfield","tagfield","textfield"],{box:true,combo:true,combobox:true,component:true,field:true,pickerfield:true,tagfield:true,textfield:true},["widget.tagfield"],0,[Ext.form.field,"Tag"],0));(Ext.cmd.derive("Ext.picker.Time",Ext.view.BoundList,{increment:15,format:"g:i A",displayField:"disp",initDate:[2008,0,1],componentCls:Ext.baseCSSPrefix+"timepicker",loadMask:false,initComponent:function(){var c=this,a=Ext.Date,b=a.clearTime,d=c.initDate;c.absMin=b(new Date(d[0],d[1],d[2]));c.absMax=a.add(b(new Date(d[0],d[1],d[2])),"mi",(24*60)-1);c.store=c.createStore();c.updateList();Ext.view.BoundList.prototype.initComponent.call(this)},setMinValue:function(a){this.minValue=a;this.updateList()},setMaxValue:function(a){this.maxValue=a;this.updateList()},normalizeDate:function(a){var b=this.initDate;a.setFullYear(b[0],b[1],b[2]);return a},updateList:function(){var e=this,b=e.normalizeDate(e.minValue||e.absMin),a=e.normalizeDate(e.maxValue||e.absMax),d=e.getStore().getFilters(),c=e.rangeFilter;d.beginUpdate();if(c){d.remove(c)}c=e.rangeFilter=new Ext.util.Filter({filterFn:function(g){var h=g.get("date");return h>=b&&h<=a}});d.add(c);d.endUpdate()},createStore:function(){var d=this,c=Ext.Date,e=[],b=d.absMin,a=d.absMax;while(b<=a){e.push({disp:c.dateFormat(b,d.format),date:b});b=c.add(b,"mi",d.increment)}return new Ext.data.Store({model:d.modelType,autoDestroy:true,data:e})},focusNode:function(a){return false}},0,["timepicker"],["boundlist","box","component","dataview","timepicker"],{boundlist:true,box:true,component:true,dataview:true,timepicker:true},["widget.timepicker"],0,[Ext.picker,"Time"],function(){this.prototype.modelType=Ext.define(null,{extend:"Ext.data.Model",fields:["disp","date"]})}));(Ext.cmd.derive("Ext.form.field.Time",Ext.form.field.ComboBox,{alternateClassName:["Ext.form.TimeField","Ext.form.Time"],triggerCls:Ext.baseCSSPrefix+"form-time-trigger",minText:"The time in this field must be equal to or after {0}",maxText:"The time in this field must be equal to or before {0}",invalidText:"{0} is not a valid time",format:"g:i A",altFormats:"g:ia|g:iA|g:i a|g:i A|h:i|g:i|H:i|ga|ha|gA|h a|g a|g A|gi|hi|gia|hia|g|H|gi a|hi a|giA|hiA|gi A|hi A",increment:15,pickerMaxHeight:300,selectOnTab:true,snapToIncrement:false,initDate:"1/1/2008",initDateParts:[2008,0,1],initDateFormat:"j/n/Y",ignoreSelection:0,queryMode:"local",displayField:"disp",valueField:"date",initComponent:function(){var c=this,b=c.minValue,a=c.maxValue;if(b){c.setMinValue(b)}if(a){c.setMaxValue(a)}c.store=c.getPicker().store;c.displayTpl=new Ext.XTemplate('<tpl for=".">{[typeof values === "string" ? values : this.formatDate(values["'+c.displayField+'"])]}<tpl if="xindex < xcount">'+c.delimiter+"</tpl></tpl>",{formatDate:c.formatDate.bind(c)});Ext.form.field.ComboBox.prototype.initComponent.call(this)},isEqual:function(g,e){var b=Ext.Array.from,d=Ext.Date.isEqual,c,a;g=b(g);e=b(e);a=g.length;if(a!==e.length){return false}for(c=0;c<a;c++){if(!d(e[c],g[c])){return false}}return true},setMinValue:function(c){var b=this,a=b.picker;b.setLimit(c,true);if(a){a.setMinValue(b.minValue)}},setMaxValue:function(c){var b=this,a=b.picker;b.setLimit(c,false);if(a){a.setMaxValue(b.maxValue)}},setLimit:function(b,g){var a=this,e,c;if(Ext.isString(b)){e=a.parseDate(b)}else{if(Ext.isDate(b)){e=b}}if(e){c=a.getInitDate();c.setHours(e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds())}else{c=null}a[g?"minValue":"maxValue"]=c},getInitDate:function(a,b,d){var c=this.initDateParts;return new Date(c[0],c[1],c[2],a||0,b||0,d||0,0)},valueToRaw:function(a){return this.formatDate(this.parseDate(a))},getErrors:function(l){var g=this,k=Ext.String.format,j=Ext.form.field.Text.prototype.getErrors.apply(this,arguments),h=g.minValue,e=g.maxValue,c=g.displayTplData,m=g.getRawValue(),b,d,a,n;if(c&&c.length>0){for(b=0,d=c.length;b<d;b++){n=c[b];n=n.date||n.disp;a=g.parseDate(n);if(!a){j.push(k(g.invalidText,n,Ext.Date.unescapeFormat(g.format)));continue}if(h&&a<h){j.push(k(g.minText,g.formatDate(h)))}if(e&&a>e){j.push(k(g.maxText,g.formatDate(e)))}}}else{if(m.length&&!g.parseDate(m)){j.push(k(g.invalidText,m,Ext.Date.unescapeFormat(g.format)))}}return j},formatDate:function(b){var d=[],c,a;b=Ext.Array.from(b);for(c=0,a=b.length;c<a;c++){d.push(Ext.form.field.Date.prototype.formatDate.call(this,b[c]))}return d.join(this.delimiter)},parseDate:function(e){var d=this,h=e,b=d.altFormats,g=d.altFormatsArray,c=0,a;if(e&&!Ext.isDate(e)){h=d.safeParse(e,d.format);if(!h&&b){g=g||b.split("|");a=g.length;for(;c<a&&!h;++c){h=d.safeParse(e,g[c])}}}if(h&&d.snapToIncrement){h=new Date(Ext.Number.snap(h.getTime(),d.increment*60*1000))}return h},safeParse:function(e,g){var d=this,b=Ext.Date,c,a=null;if(b.formatContainsDateInfo(g)){a=b.parse(e,g)}else{c=b.parse(d.initDate+" "+e,d.initDateFormat+" "+g);if(c){a=c}}return a},getSubmitValue:function(){var a=this,c=a.submitFormat||a.format,b=a.getValue();return b?Ext.Date.format(b,c):null},createPicker:function(){var b=this,a;b.listConfig=Ext.apply({xtype:"timepicker",selModel:{mode:b.multiSelect?"SIMPLE":"SINGLE"},cls:undefined,minValue:b.minValue,maxValue:b.maxValue,increment:b.increment,format:b.format,maxHeight:b.pickerMaxHeight},b.listConfig);a=Ext.form.field.ComboBox.prototype.createPicker.call(this);return a},onItemClick:function(b,a){var d=this,c=b.getSelectionModel().getSelection();if(!d.multiSelect&&c.length){if(c.length>0){c=c[0];if(c&&Ext.Date.isEqual(a.get("date"),c.get("date"))){d.collapse()}}}},syncSelection:function(){var n=this,k=n.picker,m=Ext.Date.isEqual,c=[],h,o,p,e,j,q,b,l,g,a;if(k){k.clearHighlight();o=n.getValue();h=k.getSelectionModel();n.ignoreSelection++;if(o===null){h.deselectAll()}else{p=Ext.Array.from(o);b=k.store.data.items;g=b.length;for(e=0,j=p.length;e<j;e++){q=p[e];if(Ext.isDate(q)){for(l=0;l<g;l++){a=b[l];if(m(a.get("date"),q)){c.push(a);if(!n.multiSelect){break}}}if(c.length){h.select(c)}}}}n.ignoreSelection--}},postBlur:function(){var a=this,b=a.getValue();Ext.form.field.Text.prototype.postBlur.apply(this,arguments);if(a.validateValue(b)){a.setValue(b)}},findRecordByValue:function(a){if(typeof a==="string"){a=this.parseDate(a)}return Ext.form.field.ComboBox.prototype.findRecordByValue.apply(this,[a])},rawToValue:function(g){var e=this,c,b,d,a;if(e.multiSelect){b=[];c=Ext.Array.from(g);for(d=0,a=c.length;d<a;d++){b.push(e.parseDate(c[d]))}return b}return e.parseDate(g)},setValue:function(a){this.getPicker();if(Ext.isDate(a)){a=this.getInitDate(a.getHours(),a.getMinutes(),a.getSeconds())}return Ext.form.field.ComboBox.prototype.setValue.apply(this,[a])},getValue:function(){return this.rawToValue(Ext.form.field.ComboBox.prototype.getValue.apply(this,arguments))}},0,["timefield"],["box","combo","combobox","component","field","pickerfield","textfield","timefield"],{box:true,combo:true,combobox:true,component:true,field:true,pickerfield:true,textfield:true,timefield:true},["widget.timefield"],0,[Ext.form.field,"Time",Ext.form,"TimeField",Ext.form,"Time"],0));(Ext.cmd.derive("Ext.form.field.Trigger",Ext.form.field.Text,{alternateClassName:["Ext.form.TriggerField","Ext.form.TwinTriggerField","Ext.form.Trigger"],triggerCls:Ext.baseCSSPrefix+"form-arrow-trigger",inheritableStatics:{warnDeprecated:function(){}},onClassExtended:function(){this.warnDeprecated()},constructor:function(a){this.self.warnDeprecated();Ext.Component.prototype.constructor.apply(this,[a])}},1,["trigger","triggerfield"],["box","component","field","textfield","trigger","triggerfield"],{box:true,component:true,field:true,textfield:true,trigger:true,triggerfield:true},["widget.trigger","widget.triggerfield"],0,[Ext.form.field,"Trigger",Ext.form,"TriggerField",Ext.form,"TwinTriggerField",Ext.form,"Trigger"],0));(Ext.cmd.derive("Ext.grid.CellEditor",Ext.Editor,{y:0,constructor:function(a){a=Ext.apply({},a);if(a.field){a.field.monitorTab=false}Ext.Component.prototype.constructor.apply(this,[a])},setGrid:function(c){var e=this,d=e.grid,a,b;if(c!=d){b={beforerefresh:e.beforeViewRefresh,refresh:e.onViewRefresh,scope:e};if(d){d.getView().un(b)}a=c.getView();e.renderTo=a.getTargetEl().dom;e.grid=e.ownerCt=c;a.on(b)}},adjustPosition:function(){return{x:0,y:0}},beforeViewRefresh:function(){var a=this,b=a.el&&a.el.dom;if(b){if(a.editing&&!(a.field.column&&a.field.column.sorting)){a.wasAllowBlur=a.allowBlur;a.allowBlur=false}if(b.parentNode){b.parentNode.removeChild(b)}}},onViewRefresh:function(){var a=this,c=a.el&&a.el.dom,b;if(c){b=a.field.column&&a.field.column.sorting;if(a.editing&&!b){a.allowBlur=a.wasAllowBlur;a.renderTo.appendChild(c);a.field.focus()}else{if(!b){Ext.getDetachedBody().dom.appendChild(c)}}if(a.editing&&b){a.completeEdit()}}},onShow:function(){var a=this,b=a.boundEl.first();if(a.el.dom.parentNode!==a.renderTo){a.renderTo.appendChild(a.el.dom)}if(b){if(a.isForTree){b=b.child(a.treeNodeSelector)}b.hide()}Ext.Editor.prototype.onShow.apply(this,arguments)},onEditComplete:function(a){if(a){this.restoreCell()}Ext.Editor.prototype.onEditComplete.apply(this,arguments)},onHide:function(){this.restoreCell();Ext.Editor.prototype.onHide.apply(this,arguments)},restoreCell:function(){var a=this,b=a.boundEl.first();if(b){if(a.isForTree){b=b.child(a.treeNodeSelector)}b.show()}},afterRender:function(){var a=this,b=a.field;Ext.Editor.prototype.afterRender.apply(this,arguments);if(b.isCheckbox){b.mon(b.inputEl,{mousedown:a.onCheckBoxMouseDown,click:a.onCheckBoxClick,scope:a})}Ext.on("mousedown",this.onDocMouseDown,this)},onCheckBoxMouseDown:function(){this.completeEdit=Ext.emptyFn},onDocMouseDown:function(b){var a=this.field;if(a&&a.hasFocus&&!a.owns(b.target)){a.blur()}},onCheckBoxClick:function(){delete this.completeEdit;this.field.focus(false,10)},realign:function(d){var k=this,g=k.boundEl,h=g.first(),m=h.dom.firstChild,b=g.getWidth(),c=Ext.Array.clone(k.offsets),a=k.grid,j,l="",e=!m||(m.nodeType===3&&!(Ext.String.trim(l=m.data).length));if(k.isForTree){j=k.getTreeNodeOffset(h);b-=Math.abs(j);c[0]+=j}if(a.columnLines){b-=g.getBorderWidth("rl")}if(d===true){k.field.setWidth(b)}if(e){h.dom.innerHTML="X"}k.alignTo(h,k.alignment,c);if(e){h.dom.firstChild.data=l}},getTreeNodeOffset:function(a){return a.child(this.treeNodeSelector).getOffsetsTo(a)[0]},onEditorTab:function(b){var a=this.field;if(a.onEditorTab){a.onEditorTab(b)}},onFieldBlur:function(){Ext.Editor.prototype.onFieldBlur.apply(this,arguments);this.selectSameEditor=false},alignment:"l-l",hideEl:false,cls:Ext.baseCSSPrefix+"small-editor "+Ext.baseCSSPrefix+"grid-editor "+Ext.baseCSSPrefix+"grid-cell-editor",treeNodeSelector:"."+Ext.baseCSSPrefix+"tree-node-text",shim:false,shadow:false},1,0,["box","component","container","editor"],{box:true,component:true,container:true,editor:true},0,0,[Ext.grid,"CellEditor"],0));(Ext.cmd.derive("Ext.grid.ColumnManager",Ext.Base,{alternateClassName:["Ext.grid.ColumnModel"],columns:null,constructor:function(b,c,a){this.headerCt=c;if(a){this.secondHeaderCt=a}this.visibleOnly=!!b},getColumns:function(){if(!this.columns){this.cacheColumns()}return this.columns},hasVariableRowHeight:function(){var d=this,c=d.getColumns(),a=c.length,b;if(d.variableRowHeight==null){d.variableRowHeight=false;for(b=0;!d.variableRowHeight&&b<a;b++){d.variableRowHeight=!!c[b].variableRowHeight}}return d.variableRowHeight},getHeaderIndex:function(a){if(a.isGroupHeader){a=this.getHeaderColumns(a)[0]}return Ext.Array.indexOf(this.getColumns(),a)},getHeaderAtIndex:function(b){var c=this.getColumns(),a=c[b];return a||null},getPreviousSibling:function(c){var b=this.getHeaderIndex(c),a=null;if(b>0){a=this.getColumns()[b-1]}return a},getNextSibling:function(c){var b=this.getHeaderIndex(c),a;if(b!==-1){a=this.getColumns()[b+1]}return a||null},getFirst:function(){var a=this.getColumns();return a.length>0?a[0]:null},getLast:function(){var b=this.getColumns(),a=b.length;return a>0?b[a-1]:null},getHeaderByDataIndex:function(d){var c=this.getColumns(),a=c.length,b,e;for(b=0;b<a;++b){e=c[b];if(e.dataIndex===d){return e}}return null},getHeaderById:function(e){var c=this.getColumns(),a=c.length,b,d;for(b=0;b<a;++b){d=c[b];if(d.getItemId()===e){return d}}return null},getVisibleHeaderClosestToIndex:function(b){var a=this.getHeaderAtIndex(b);if(a&&a.hidden){a=a.next(":not([hidden])")||a.prev(":not([hidden])")}return a},cacheColumns:function(){var b=this.getHeaderColumns(this.headerCt),a=this.secondHeaderCt;if(a){b=b.concat(this.getHeaderColumns(a))}this.columns=b},getHeaderColumns:function(b){var a=this.visibleOnly?b.getVisibleGridColumns():b.getGridColumns();return Ext.Array.clone(a)},invalidate:function(){var a=this.rootColumns;this.columns=this.variableRowHeight=null;if(a){a.invalidate()}},destroy:function(){this.columns=this.rootColumns=null}},1,0,0,0,0,0,[Ext.grid,"ColumnManager",Ext.grid,"ColumnModel"],function(){this.createAlias("indexOf","getHeaderIndex")}));(Ext.cmd.derive("Ext.grid.RowEditorButtons",Ext.container.Container,{frame:true,shrinkWrap:true,position:"bottom",constructor:function(b){var d=this,a=b.rowEditor,e=Ext.baseCSSPrefix,c=a.editingPlugin;b=Ext.apply({baseCls:e+"grid-row-editor-buttons",defaults:{xtype:"button",ui:a.buttonUI,scope:c,flex:1,minWidth:Ext.panel.Panel.prototype.minButtonWidth},items:[{cls:e+"row-editor-update-button",itemId:"update",handler:c.completeEdit,text:a.saveBtnText,disabled:a.updateButtonDisabled},{cls:e+"row-editor-cancel-button",handler:c.cancelEdit,text:a.cancelBtnText}]},b);Ext.Component.prototype.constructor.apply(this,[b]);d.addClsWithUI(d.position)},setButtonPosition:function(b){var e=this,a=this.rowEditor,h=a.getHeight(),d=a.body,c="",g="";e.removeClsWithUI(e.position);e.position=b;e.addClsWithUI(b);if(b==="top"){c=(h-d.getBorderWidth("t"))+"px"}else{g=(h-d.getBorderWidth("b"))+"px"}e.el.setStyle({top:g,bottom:c})},privates:{getFramingInfoCls:function(){return this.baseCls+"-"+this.ui+"-"+this.position},getFrameInfo:function(){var a=this.callParent();a.top=true;return a}}},1,["roweditorbuttons"],["box","component","container","roweditorbuttons"],{box:true,component:true,container:true,roweditorbuttons:true},["widget.roweditorbuttons"],0,[Ext.grid,"RowEditorButtons"],0));(Ext.cmd.derive("Ext.grid.RowEditor",Ext.form.Panel,{saveBtnText:"Update",cancelBtnText:"Cancel",errorsText:"Errors",dirtyText:"You need to commit or cancel your changes",lastScrollLeft:0,lastScrollTop:0,border:false,errorCls:Ext.baseCSSPrefix+"grid-row-editor-errors-item",buttonUI:"default",hideMode:"offsets",initComponent:function(){var d=this,b=d.editingPlugin.grid,a=Ext.container.Container,c;d.cls=Ext.baseCSSPrefix+"grid-editor "+Ext.baseCSSPrefix+"grid-row-editor";d.layout={type:"hbox",align:"middle"};d.lockable=b.lockable;if(d.lockable){d.items=[d.lockedColumnContainer=new a({id:b.id+"-locked-editor-cells",layout:{type:"hbox",align:"middle"},margin:"0 1 0 0"}),d.normalColumnContainer=new a({flex:1,id:b.id+"-normal-editor-cells",layout:{type:"hbox",align:"middle"}})]}else{d.lockedColumnContainer=d.normalColumnContainer=d}Ext.form.Panel.prototype.initComponent.apply(this,arguments);if(d.fields){d.addFieldsForColumn(d.fields,true);d.insertColumnEditor(d.fields);delete d.fields}d.mon(Ext.GlobalEvents,{scope:d,show:d.repositionIfVisible});c=d.getForm();c.trackResetOnLoad=true;c.on("validitychange",d.onValidityChange,d)},onGridResize:function(){var c=this,e=c.getClientWidth(),a=c.editingPlugin.grid,d=a.body,b=c.getFloatingButtons();c.setLocalX(d.getOffsetsTo(a)[0]+d.getBorderWidth("l")-a.el.getBorderWidth("l"));c.setWidth(e);b.setLocalX((e-b.getWidth())/2)},syncAllFieldWidths:function(){var a=this;Ext.Array.each(a.query("[isEditorComponent]"),function(b){if(b.column.isVisible()){a.onColumnShow(b.column)}},a)},syncFieldWidth:function(b){var c=b.getEditor(),a;c._marginWidth=(c._marginWidth||c.el.getMargin("lr"));a=b.getWidth()-c._marginWidth;c.setWidth(a);if(c.xtype==="displayfield"){c.inputWidth=a}},onValidityChange:function(c,b){var a=this;if(a.errorSummary&&a.isVisible()){a[b?"hideToolTip":"showToolTip"]()}a.updateButton(b);a.isValid=b},updateButton:function(b){var a=this.floatingButtons;if(a){a.child("#update").setDisabled(!b)}else{this.updateButtonDisabled=!b}},afterRender:function(){var d=this,c=d.editingPlugin,b=c.grid,a=b.lockable?b.normalGrid.view:b.view;Ext.util.Renderable.prototype.afterRender.apply(this,arguments);d.scrollingView=a;d.scrollingViewEl=a.el;a.on("scroll",d.onViewScroll,d);d.mon(d.el,{click:Ext.emptyFn,stopPropagation:true});d.mon(b,{resize:d.onGridResize,scope:d});d.el.swallowEvent(["keypress","keydown"]);d.fieldScroller=d.normalColumnContainer.layout.innerCt;d.fieldScroller.dom.style.overflow="hidden";d.fieldScroller.on({scroll:d.onFieldContainerScroll,scope:d});d.initKeyNav();d.mon(c.view,{beforerefresh:d.onBeforeViewRefresh,refresh:d.onViewRefresh,itemremove:d.onViewItemRemove,scope:d});d.preventReposition=true;d.syncAllFieldWidths();delete d.preventReposition},initKeyNav:function(){var b=this,a=b.editingPlugin;b.keyNav=new Ext.util.KeyNav(b.el,{enter:a.completeEdit,esc:a.onEscKey,scope:a})},onBeforeViewRefresh:function(b){var c=this,a=b.el.dom;if(c.el.dom.parentNode===a){a.removeChild(c.el.dom)}},onViewRefresh:function(a){var c=this,b=c.context,d;if(b&&(d=a.getRow(b.record))){b.row=d;c.reposition();if(c.tooltip&&c.tooltip.isVisible()){c.tooltip.setTarget(b.row)}}else{c.editingPlugin.cancelEdit()}},onViewItemRemove:function(b,c,e,a){if(!a.refreshing){var d=this.context;if(d&&b===d.record){this.editingPlugin.cancelEdit()}}},onViewScroll:function(){var c=this,b=c.editingPlugin.view.el,j=c.scrollingView,d=j.getScrollY(),h=j.getScrollX(),g=h!==c.lastScrollLeft,a=d!==c.lastScrollTop,e;c.lastScrollTop=d;c.lastScrollLeft=h;if(c.isVisible()){e=Ext.getDom(c.context.row);if(e&&b.contains(e)){if(a){c.context.row=e;c.reposition(null,true);if((c.tooltip&&c.tooltip.isVisible())||c.hiddenTip){c.repositionTip()}c.syncEditorClip()}}else{c.setLocalY(-400)}}if(c.rendered&&g){c.syncFieldsHorizontalScroll()}},syncFieldsHorizontalScroll:function(){this.fieldScroller.setScrollLeft(this.lastScrollLeft)},onFieldContainerScroll:function(){this.scrollingView.setScrollX(this.getFieldScrollerScrollX())},getFieldScrollerScrollX:function(){return this.fieldScroller.getScrollLeft()},onColumnResize:function(b,a){var c=this;if(c.rendered&&!c.editingPlugin.reconfiguring){c.onGridResize();c.onViewScroll();if(!b.isGroupHeader){c.syncFieldWidth(b);c.repositionIfVisible()}}},onColumnHide:function(a){if(!this.editingPlugin.reconfiguring&&!a.isGroupHeader){a.getEditor().hide();this.repositionIfVisible()}},onColumnShow:function(a){var b=this;if(b.rendered&&!b.editingPlugin.reconfiguring&&!a.isGroupHeader&&a.getEditor){a.getEditor().show();b.syncFieldWidth(a);if(!b.preventReposition){this.repositionIfVisible()}}},onColumnMove:function(c,a,m){var l=this,h=c.isLocked(),j=h?l.lockedColumnContainer:l.normalColumnContainer,d,g,k,b,e;if(c.isGroupHeader){Ext.suspendLayouts();b=m>a;e=b?1:0;d=c.getGridColumns();for(g=0,k=d.length;g<k;++g){c=d[g];m=c.getIndex();if(b){++e}l.setColumnEditor(c,m+e,j)}Ext.resumeLayouts(true)}else{l.setColumnEditor(c,c.getIndex(),j)}},setColumnEditor:function(b,a,c){this.addFieldsForColumn(b);c.insert(a,b.getEditor())},onColumnAdd:function(a){if(a.isGroupHeader){a=a.getGridColumns()}this.addFieldsForColumn(a);this.insertColumnEditor(a);this.preventReposition=false},insertColumnEditor:function(c){var d=this,e,a,b;if(Ext.isArray(c)){for(b=0,a=c.length;b<a;b++){d.insertColumnEditor(c[b])}return}if(!c.getEditor){return}e=c.isLocked()?d.lockedColumnContainer:d.normalColumnContainer;e.insert(c.getIndex(),c.getEditor());d.needsSyncFieldWidths=true},destroyColumnEditor:function(c){var d=this,e,a,b;if(Ext.isArray(c)){for(b=0,a=c.length;b<a;b++){d.removeColumnEditor(c[b])}return}if(c.hasEditor()&&(e=c.getEditor())){e.destroy()}},getFloatingButtons:function(){var b=this,a=b.floatingButtons;if(!a){b.floatingButtons=a=new Ext.grid.RowEditorButtons({rowEditor:b})}return a},repositionIfVisible:function(d){var b=this,a=b.view;if(d&&(d===b||!d.el.isAncestor(a.el))){return}if(b.isVisible()&&a.isVisible(true)){b.reposition()}},isDescendantOf:function(){return false},getRefOwner:function(){return this.editingPlugin.grid},getRefItems:function(b){var c=this,a;if(c.lockable){a=[c.lockedColumnContainer];a.push.apply(a,c.lockedColumnContainer.getRefItems(b));a.push(c.normalColumnContainer);a.push.apply(a,c.normalColumnContainer.getRefItems(b))}else{a=Ext.panel.Panel.prototype.getRefItems.apply(this,arguments)}a.push.apply(a,c.getFloatingButtons().getRefItems(b));return a},reposition:function(k,g){var h=this,b=h.context,l=b&&b.row,c=0,a,d,e,j;if(l&&Ext.isElement(l)){e=h.syncButtonPosition(h.getScrollDelta());if(!h.editingPlugin.grid.rowLines){c=-parseInt(Ext.fly(l).first().getStyle("border-bottom-width"),10)}a=h.calculateLocalRowTop(l);d=h.calculateEditorTop(a)+c;if(!g){j=function(){if(e){h.scrollingViewEl.scrollBy(0,e,true)}h.focusContextCell()}}h.syncEditorClip();if(k){h.animate(Ext.applyIf({to:{top:d},duration:k.duration||125,callback:j},k))}else{h.setLocalY(d);if(j){j()}}}},getScrollDelta:function(){var e=this,d=e.scrollingViewEl.dom,c=e.context,b=e.body,a=0;if(c){a=Ext.fly(c.row).getOffsetsTo(d)[1]-b.getBorderPadding().beforeY;if(a>0){a=Math.max(a+e.getHeight()+e.floatingButtons.getHeight()-d.clientHeight-b.getBorderWidth("b"),0)}}return a},calculateLocalRowTop:function(b){var a=this.editingPlugin.grid;return Ext.fly(b).getOffsetsTo(a)[1]-a.el.getBorderWidth("t")+this.lastScrollTop},calculateEditorTop:function(a){return a-this.body.getBorderPadding().beforeY-this.lastScrollTop},getClientWidth:function(){var c=this,b=c.editingPlugin.grid,a;if(c.lockable){a=b.lockedGrid.getWidth()+b.normalGrid.view.el.dom.clientWidth-1}else{a=b.view.el.dom.clientWidth}return a},getEditor:function(a){var b=this;if(Ext.isNumber(a)){return b.query("[isEditorComponent]")[a]}else{if(a.isHeader&&!a.isGroupHeader){return a.getEditor()}}},addFieldsForColumn:function(c,a){var e=this,b,d,g;if(Ext.isArray(c)){for(b=0,d=c.length;b<d;b++){e.addFieldsForColumn(c[b],a)}return}if(c.getEditor){g=c.getEditor(null,e.getDefaultFieldCfg());if(c.align==="right"){g.fieldStyle="text-align:right"}if(c.xtype==="actioncolumn"){g.fieldCls+=" "+Ext.baseCSSPrefix+"form-action-col-field"}if(e.isVisible()&&e.context){if(g.is("displayfield")){e.renderColumnData(g,e.context.record,c)}else{g.suspendEvents();g.setValue(e.context.record.get(c.dataIndex));g.resumeEvents()}}if(c.hidden){e.onColumnHide(c)}else{if(c.rendered&&!a){e.onColumnShow(c)}}}},getDefaultFieldCfg:function(){return{xtype:"displayfield",getModelData:function(){return null}}},loadRecord:function(d){var j=this,a=j.getForm(),e=a.getFields(),h=e.items,b=h.length,c,g,k;for(c=0;c<b;c++){h[c].suspendEvents()}a.loadRecord(d);for(c=0;c<b;c++){h[c].resumeEvents()}if(a.hasInvalidField()===a.wasValid){delete a.wasValid}k=a.isValid();if(j.errorSummary){if(k){j.hideToolTip()}else{j.showToolTip()}}j.updateButton(k);g=j.query(">displayfield");b=g.length;for(c=0;c<b;c++){j.renderColumnData(g[c],d)}},renderColumnData:function(n,j,c){var l=this,a=l.editingPlugin.grid,e=a.headerCt,m=l.scrollingView,p=m.dataSource,g=c||n.column,o=j.get(g.dataIndex),k=g.editRenderer||g.renderer,b,d,h,q=g.usingDefaultRenderer&&!g.scope?g:g.scope;if(k){b={tdCls:"",style:""};d=p.indexOf(j);h=e.getHeaderIndex(g);o=k.call(q||e.ownerCt,o,b,j,d,h,p,m)}n.setRawValue(o);n.resetOriginalValue()},beforeEdit:function(){var a=this,b;if(a.isVisible()&&a.errorSummary&&!a.autoCancel&&a.isDirty()){b=a.getScrollDelta();if(b){a.scrollingViewEl.scrollBy(0,b,true)}a.showToolTip();return false}},startEdit:function(a,g){var e=this,b=e.editingPlugin,d=b.grid,c=e.context=b.context;if(!e.rendered){e.width=e.getClientWidth();e.render(d.el,d.el.dom.firstChild);e.getFloatingButtons().render(e.el);e.onViewScroll()}else{e.syncFieldsHorizontalScroll()}c.grid.getSelectionModel().select(a);if(e.isVisible()){e.reposition(true)}else{e.show()}e.onGridResize();e.loadRecord(a)},syncButtonPosition:function(d){var b=this,a=b.getFloatingButtons(),g=b.scrollingView,c=g.el.dom,e=b.getScrollDelta()-(c.scrollHeight-g.getScrollY()-b.scrollingViewEl.dom.clientHeight);if(e>0){if(!b._buttonsOnTop){a.setButtonPosition("top");b._buttonsOnTop=true}d=0}else{if(b._buttonsOnTop!==false){a.setButtonPosition("bottom");b._buttonsOnTop=false}}return d},syncEditorClip:function(){var b=this,c=b.getScrollDelta(),a;if(c){b.isOverflowing=true;a=b.floatingButtons.getHeight();if(c>0){b.clipBottom(Math.max(b.getHeight()-c+a,-a))}else{if(c<0){c=Math.abs(c);b.clipTop(Math.max(c,0))}}}else{if(b.isOverflowing){b.clearClip();b.isOverflowing=false}}},focusContextCell:function(){var a=this.context.column,b;if(!a.isDestroyed){b=this.getEditor(a);if(b&&b.focus){b.focus()}}},cancelEdit:function(){var g=this,e=g.getForm(),a=e.getFields(),b=a.items,d=b.length,c;g.hide();e.clearInvalid();for(c=0;c<d;c++){b[c].suspendEvents()}e.reset();for(c=0;c<d;c++){b[c].resumeEvents()}},completeEdit:function(){var b=this,a=b.getForm();if(!a.isValid()){return false}a.updateRecord(b.context.record);b.hide();return true},onShow:function(){var a=this;Ext.panel.Panel.prototype.onShow.apply(this,arguments);if(a.needsSyncFieldWidths){a.suspendLayouts();a.syncAllFieldWidths();a.resumeLayouts(true)}delete a.needsSyncFieldWidths;a.reposition()},onHide:function(){var a=this;Ext.panel.Panel.prototype.onHide.apply(this,arguments);if(a.tooltip){a.hideToolTip()}if(a.context){a.context.view.focusRow(a.context.record);a.context=null}},isDirty:function(){var b=this,a=b.getForm();return a.isDirty()},getToolTip:function(){return this.tooltip||(this.tooltip=new Ext.tip.ToolTip({cls:Ext.baseCSSPrefix+"grid-row-editor-errors",title:this.errorsText,autoHide:false,closable:true,closeAction:"disable",anchor:"left",anchorToTarget:false}))},hideToolTip:function(){var a=this,b=a.getToolTip();if(b.rendered){b.disable()}a.hiddenTip=false},showToolTip:function(){var a=this,b=a.getToolTip();b.showAt([0,0]);b.update(a.getErrors());a.repositionTip();b.enable()},repositionTip:function(){var j=this,k=j.getToolTip(),c=j.context,m=Ext.get(c.row),l=j.scrollingViewEl,e=l.dom.clientHeight,g=j.lastScrollTop,h=g+e,b=m.getHeight(),a=m.getOffsetsTo(j.context.view.body)[1],d=a+b;if(d>g&&a<h){k.showAt(k.getAlignToXY(l,"tl-tr",[15,m.getOffsetsTo(l)[1]]));j.hiddenTip=false}else{k.hide();j.hiddenTip=true}},getErrors:function(){var d=this,e=[],a=d.query(">[isFormField]"),c=a.length,b;for(b=0;b<c;b++){e=e.concat(Ext.Array.map(a[b].getErrors(),d.createErrorListItem))}if(!e.length&&!d.autoCancel&&d.isDirty()){e[0]=d.createErrorListItem(d.dirtyText)}return'<ul class="'+Ext.plainListCls+'">'+e.join("")+"</ul>"},createErrorListItem:function(a){return'<li class="'+this.errorCls+'">'+a+"</li>"},beforeDestroy:function(){Ext.destroy(this.floatingButtons,this.tooltip);Ext.form.Panel.prototype.beforeDestroy.call(this)},clipBottom:function(a){this.el.setStyle("clip","rect(-1000px auto "+a+"px auto)")},clipTop:function(a){this.el.setStyle("clip","rect("+a+"px auto 1000px auto)")},clearClip:function(a){this.el.setStyle("clip",Ext.isIE8?"rect(-1000px auto 1000px auto)":"auto")}},0,["roweditor"],["box","component","container","form","panel","roweditor"],{box:true,component:true,container:true,form:true,panel:true,roweditor:true},["widget.roweditor"],0,[Ext.grid,"RowEditor"],0));(Ext.cmd.derive("Ext.view.DropZone",Ext.dd.DropZone,{indicatorCls:Ext.baseCSSPrefix+"grid-drop-indicator",indicatorHtml:['<div class="',Ext.baseCSSPrefix,'grid-drop-indicator-left" role="presentation"></div>','<div class="'+Ext.baseCSSPrefix+'grid-drop-indicator-right" role="presentation"></div>'].join(""),constructor:function(a){var b=this;Ext.apply(b,a);if(!b.ddGroup){b.ddGroup="view-dd-zone-"+b.view.id}Ext.dd.DropTarget.prototype.constructor.apply(this,[b.view.el])},fireViewEvent:function(){var b=this,a;b.lock();a=b.view.fireEvent.apply(b.view,arguments);b.unlock();return a},getTargetFromEvent:function(k){var j=k.getTarget(this.view.getItemSelector()),d,c,b,g,a,h;if(!j){d=k.getY();for(g=0,c=this.view.getNodes(),a=c.length;g<a;g++){b=c[g];h=Ext.fly(b).getBox();if(d<=h.bottom){return b}}}return j},getIndicator:function(){var a=this;if(!a.indicator){a.indicator=new Ext.Component({ariaRole:"presentation",html:a.indicatorHtml,cls:a.indicatorCls,ownerCt:a.view,floating:true,shadow:false})}return a.indicator},getPosition:function(c,a){var g=c.getXY()[1],b=Ext.fly(a).getRegion(),d;if((b.bottom-g)>=(b.bottom-b.top)/2){d="before"}else{d="after"}return d},containsRecordAtOffset:function(d,b,g){if(!b){return false}var a=this.view,c=a.indexOf(b),e=a.getNode(c+g),h=e?a.getRecord(e):null;return h&&Ext.Array.contains(d,h)},positionIndicator:function(b,c,d){var g=this,j=g.view,h=g.getPosition(d,b),l=j.getRecord(b),a=c.records,k;if(!Ext.Array.contains(a,l)&&(h==="before"&&!g.containsRecordAtOffset(a,l,-1)||h==="after"&&!g.containsRecordAtOffset(a,l,1))){g.valid=true;if(g.overRecord!==l||g.currentPosition!==h){k=Ext.fly(b).getY()-j.el.getY()-1;if(h==="after"){k+=Ext.fly(b).getHeight()}g.getIndicator().setWidth(Ext.fly(j.el).getWidth()).showAt(0,k);g.overRecord=l;g.currentPosition=h}}else{g.invalidateDrop()}},invalidateDrop:function(){if(this.valid){this.valid=false;this.getIndicator().hide()}},onNodeOver:function(c,a,g,d){var b=this;if(!Ext.Array.contains(d.records,b.view.getRecord(c))){b.positionIndicator(c,d,g)}return b.valid?b.dropAllowed:b.dropNotAllowed},notifyOut:function(c,a,g,d){var b=this;Ext.dd.DropZone.prototype.notifyOut.apply(this,arguments);b.overRecord=b.currentPosition=null;b.valid=false;if(b.indicator){b.indicator.hide()}},onContainerOver:function(a,h,g){var d=this,b=d.view,c=b.dataSource.getCount();if(c){d.positionIndicator(b.all.last(),g,h)}else{d.overRecord=d.currentPosition=null;d.getIndicator().setWidth(Ext.fly(b.el).getWidth()).showAt(0,0);d.valid=true}return d.dropAllowed},onContainerDrop:function(a,c,b){return this.onNodeDrop(a,null,c,b)},onNodeDrop:function(j,a,h,g){var d=this,c=false,b={wait:false,processDrop:function(){d.invalidateDrop();d.handleNodeDrop(g,d.overRecord,d.currentPosition);c=true;d.fireViewEvent("drop",j,g,d.overRecord,d.currentPosition)},cancelDrop:function(){d.invalidateDrop();c=true}},k=false;if(d.valid){k=d.fireViewEvent("beforedrop",j,g,d.overRecord,d.currentPosition,b);if(b.wait){return}if(k!==false){if(!c){b.processDrop()}}}return k},destroy:function(){Ext.destroy(this.indicator);delete this.indicator;Ext.dd.DropTarget.prototype.destroy.call(this)}},1,0,0,0,0,0,[Ext.view,"DropZone"],0));(Ext.cmd.derive("Ext.grid.ViewDropZone",Ext.view.DropZone,{indicatorHtml:'<div class="'+Ext.baseCSSPrefix+'grid-drop-indicator-left" role="presentation"></div><div class="'+Ext.baseCSSPrefix+'grid-drop-indicator-right" role="presentation"></div>',indicatorCls:Ext.baseCSSPrefix+"grid-drop-indicator",handleNodeDrop:function(b,d,e){var j=this.view,k=j.getStore(),h,a,c,g;if(b.copy){a=b.records;b.records=[];for(c=0,g=a.length;c<g;c++){b.records.push(a[c].copy())}}else{b.view.store.remove(b.records,b.view===j)}if(d&&e){h=k.indexOf(d);if(e!=="before"){h++}k.insert(h,b.records)}else{k.add(b.records)}j.getSelectionModel().select(b.records)}},0,0,0,0,0,0,[Ext.grid,"ViewDropZone"],0));(Ext.cmd.derive("Ext.grid.column.Action",Ext.grid.column.Column,{alternateClassName:"Ext.grid.ActionColumn",stopSelection:true,actionIdRe:new RegExp(Ext.baseCSSPrefix+"action-col-(\\d+)"),altText:"",menuText:"<i>Actions</i>",sortable:false,innerCls:Ext.baseCSSPrefix+"grid-cell-inner-action-col",actionIconCls:Ext.baseCSSPrefix+"action-col-icon",constructor:function(d){var g=this,b=Ext.apply({},d),c=b.items||g.items||[g],h,e,a;g.origRenderer=b.renderer||g.renderer;g.origScope=b.scope||g.scope;g.renderer=g.scope=b.renderer=b.scope=null;b.items=null;Ext.Component.prototype.constructor.apply(this,[b]);g.items=c;for(e=0,a=c.length;e<a;++e){if(c[e].getClass){h=true;break}}if(g.origRenderer||h){g.hasCustomRenderer=true}},initComponent:function(){var a=this;Ext.grid.column.Column.prototype.initComponent.call(this);if(a.sortable&&!a.dataIndex){a.sortable=false}},defaultRenderer:function(p,l,e,a,d,o,n){var m=this,g=Ext.baseCSSPrefix,r=m.origScope||m,k=m.items,h=k.length,c=0,q,j,b,s;j=Ext.isFunction(m.origRenderer)?m.origRenderer.apply(r,arguments)||"":"";l.tdCls+=" "+Ext.baseCSSPrefix+"action-col-cell";for(;c<h;c++){q=k[c];b=q.disabled||(q.isDisabled?q.isDisabled.call(q.scope||r,n,a,d,q,e):false);s=b?null:(q.tooltip||(q.getTip?q.getTip.apply(q.scope||r,arguments):null));if(!q.hasActionConfiguration){q.stopSelection=m.stopSelection;q.disable=Ext.Function.bind(m.disableAction,m,[c],0);q.enable=Ext.Function.bind(m.enableAction,m,[c],0);q.hasActionConfiguration=true}j+='<img role="button" alt="'+(q.altText||m.altText)+'" src="'+(q.icon||Ext.BLANK_IMAGE_URL)+'" class="'+m.actionIconCls+" "+g+"action-col-"+String(c)+" "+(b?g+"item-disabled":" ")+(Ext.isFunction(q.getClass)?q.getClass.apply(q.scope||r,arguments):(q.iconCls||m.iconCls||""))+'"'+(s?' data-qtip="'+s+'"':"")+" />"}return j},updater:function(a,c){var b={};a.firstChild.innerHTML=Ext.grid.column.Action.prototype.defaultRenderer.call(this,c,b);Ext.fly(a).addCls(b.tdCls)},enableAction:function(b,a){var c=this;if(!b){b=0}else{if(!Ext.isNumber(b)){b=Ext.Array.indexOf(c.items,b)}}c.items[b].disabled=false;c.up("tablepanel").el.select("."+Ext.baseCSSPrefix+"action-col-"+b).removeCls(c.disabledCls);if(!a){c.fireEvent("enable",c)}},disableAction:function(b,a){var c=this;if(!b){b=0}else{if(!Ext.isNumber(b)){b=Ext.Array.indexOf(c.items,b)}}c.items[b].disabled=true;c.up("tablepanel").el.select("."+Ext.baseCSSPrefix+"action-col-"+b).addCls(c.disabledCls);if(!a){c.fireEvent("disable",c)}},destroy:function(){delete this.items;delete this.renderer;return Ext.Component.prototype.destroy.apply(this,arguments)},processEvent:function(k,m,o,b,l,h,d,q){var j=this,g=h.getTarget(),n=k==="keydown"&&h.getKey(),c,p,a;if(k==="mousedown"){return false}if(n&&!Ext.fly(g).findParent(m.getCellSelector())){g=Ext.fly(o).down("."+Ext.baseCSSPrefix+"action-col-icon",true)}if(g&&(c=g.className.match(j.actionIdRe))){p=j.items[parseInt(c[1],10)];a=p.disabled||(p.isDisabled?p.isDisabled.call(p.scope||j.origScope||j,m,b,l,p,d):false);if(p&&!a){if(k==="click"||(n===h.ENTER||n===h.SPACE)){Ext.callback(p.handler||j.handler,p.scope||j.origScope,[m,b,l,p,h,d,q],undefined,j);if(p.stopSelection!==false){return false}}}}return Ext.grid.column.Column.prototype.processEvent.apply(this,arguments)},cascade:function(b,a){b.call(a||this,this)},getRefItems:function(){return[]}},1,["actioncolumn"],["actioncolumn","box","component","container","gridcolumn","headercontainer"],{actioncolumn:true,box:true,component:true,container:true,gridcolumn:true,headercontainer:true},["widget.actioncolumn"],0,[Ext.grid.column,"Action",Ext.grid,"ActionColumn"],0));(Ext.cmd.derive("Ext.grid.column.Boolean",Ext.grid.column.Column,{alternateClassName:"Ext.grid.BooleanColumn",trueText:"true",falseText:"false",undefinedText:"&#160;",defaultFilterType:"boolean",producesHTML:false,defaultRenderer:function(a){if(a===undefined){return this.undefinedText}if(!a||a==="false"){return this.falseText}return this.trueText},updater:function(a,b){a.firstChild.firstChild.data=Ext.grid.column.Boolean.prototype.defaultRenderer.call(this,b)}},0,["booleancolumn"],["booleancolumn","box","component","container","gridcolumn","headercontainer"],{booleancolumn:true,box:true,component:true,container:true,gridcolumn:true,headercontainer:true},["widget.booleancolumn"],0,[Ext.grid.column,"Boolean",Ext.grid,"BooleanColumn"],0));(Ext.cmd.derive("Ext.grid.column.Check",Ext.grid.column.Column,{alternateClassName:["Ext.ux.CheckColumn","Ext.grid.column.CheckColumn"],align:"center",stopSelection:true,tdCls:Ext.baseCSSPrefix+"grid-cell-checkcolumn",innerCls:Ext.baseCSSPrefix+"grid-cell-inner-checkcolumn",clickTargetName:"el",defaultFilterType:"boolean",constructor:function(){this.scope=this;Ext.Component.prototype.constructor.apply(this,arguments)},processEvent:function(h,k,n,b,j,d,c,o){var g=this,m=h==="keydown"&&d.getKey(),a=h=="mousedown";if(!g.disabled&&(a||(m==d.ENTER||m==d.SPACE))){var l=!g.isRecordChecked(c);if(g.fireEvent("beforecheckchange",g,b,l)!==false){g.setRecordCheck(c,l,n,o,d);g.fireEvent("checkchange",g,b,l);if(a){d.stopEvent()}if(!g.stopSelection){k.selModel.selectByPosition({row:b,column:j})}return false}else{return !g.stopSelection}}else{return Ext.grid.column.Column.prototype.processEvent.apply(this,arguments)}},onEnable:function(){Ext.Component.prototype.onEnable.apply(this,arguments);this._setDisabled(false)},onDisable:function(){this._setDisabled(true)},_setDisabled:function(c){var d=this,a=d.disabledCls,b;b=d.up("tablepanel").el.select(d.getCellSelector());if(c){b.addCls(a)}else{b.removeCls(a)}},defaultRenderer:function(c,b){var d=Ext.baseCSSPrefix,a=d+"grid-checkcolumn";if(this.disabled){b.tdCls+=" "+this.disabledCls}if(c){a+=" "+d+"grid-checkcolumn-checked"}return'<img class="'+a+'" src="'+Ext.BLANK_IMAGE_URL+'"/>'},isRecordChecked:function(a){var b=this.property;if(b){return a[b]}return a.get(this.dataIndex)},setRecordCheck:function(b,d,a,h,g){var c=this,j=c.property;if(j){b[j]=d;c.updater(a,d)}else{b.set(c.dataIndex,d)}},updater:function(a,c){var b={};a.firstChild.innerHTML=this.defaultRenderer(c,b);Ext.fly(a).addCls(b.tdCls)}},1,["checkcolumn"],["box","checkcolumn","component","container","gridcolumn","headercontainer"],{box:true,checkcolumn:true,component:true,container:true,gridcolumn:true,headercontainer:true},["widget.checkcolumn"],0,[Ext.grid.column,"Check",Ext.ux,"CheckColumn",Ext.grid.column,"CheckColumn"],0));(Ext.cmd.derive("Ext.grid.column.Date",Ext.grid.column.Column,{alternateClassName:"Ext.grid.DateColumn",isDateColumn:true,defaultFilterType:"date",producesHTML:false,initComponent:function(){if(!this.format){this.format=Ext.Date.defaultFormat}Ext.grid.column.Column.prototype.initComponent.apply(this,arguments)},defaultRenderer:function(a){return Ext.util.Format.date(a,this.format)},updater:function(a,b){a.firstChild.innerHTML=Ext.grid.column.Date.prototype.defaultRenderer.call(this,b)}},0,["datecolumn"],["box","component","container","datecolumn","gridcolumn","headercontainer"],{box:true,component:true,container:true,datecolumn:true,gridcolumn:true,headercontainer:true},["widget.datecolumn"],0,[Ext.grid.column,"Date",Ext.grid,"DateColumn"],0));(Ext.cmd.derive("Ext.grid.column.Number",Ext.grid.column.Column,{alternateClassName:"Ext.grid.NumberColumn",defaultFilterType:"number",format:"0,000.00",producesHTML:false,defaultRenderer:function(a){return Ext.util.Format.number(a,this.format)},updater:function(a,b){a.firstChild.innerHTML=Ext.grid.column.Number.prototype.defaultRenderer.call(this,b)}},0,["numbercolumn"],["box","component","container","gridcolumn","headercontainer","numbercolumn"],{box:true,component:true,container:true,gridcolumn:true,headercontainer:true,numbercolumn:true},["widget.numbercolumn"],0,[Ext.grid.column,"Number",Ext.grid,"NumberColumn"],0));(Ext.cmd.derive("Ext.grid.column.RowNumberer",Ext.grid.column.Column,{alternateClassName:"Ext.grid.RowNumberer",text:"&#160;",width:23,sortable:false,draggable:false,autoLock:true,lockable:false,align:"right",producesHTML:false,constructor:function(a){var b=this;b.width=b.width;Ext.Component.prototype.constructor.apply(this,arguments);b.sortable=false;b.scope=b},resizable:false,hideable:false,menuDisabled:true,dataIndex:"",cls:Ext.baseCSSPrefix+"row-numberer",tdCls:Ext.baseCSSPrefix+"grid-cell-row-numberer "+Ext.baseCSSPrefix+"grid-cell-special",innerCls:Ext.baseCSSPrefix+"grid-cell-inner-row-numberer",rowspan:undefined,defaultRenderer:function(k,b,g,c,e,a,j){var d=this.rowspan,h=a.currentPage,l=j.store.indexOf(g);if(d){b.tdAttr='rowspan="'+d+'"'}if(h>1){l+=(h-1)*a.pageSize}return l+1},updater:function(a,b){a.firstChild.innerHTML=Ext.grid.column.RowNumberer.prototype.defaultRenderer.call(this,b)}},1,["rownumberer"],["box","component","container","gridcolumn","headercontainer","rownumberer"],{box:true,component:true,container:true,gridcolumn:true,headercontainer:true,rownumberer:true},["widget.rownumberer"],0,[Ext.grid.column,"RowNumberer",Ext.grid,"RowNumberer"],0));(Ext.cmd.derive("Ext.grid.column.Template",Ext.grid.column.Column,{alternateClassName:"Ext.grid.TemplateColumn",initComponent:function(){var a=this;a.tpl=(!Ext.isPrimitive(a.tpl)&&a.tpl.compile)?a.tpl:new Ext.XTemplate(a.tpl);a.hasCustomRenderer=true;Ext.grid.column.Column.prototype.initComponent.apply(this,arguments)},defaultRenderer:function(c,d,a){var b=Ext.apply({},a.data,a.getAssociatedData());return this.tpl.apply(b)},updater:function(a,b){a.firstChild.innerHTML=Ext.grid.column.CheckColumn.prototype.defaultRenderer.call(this,b)}},0,["templatecolumn"],["box","component","container","gridcolumn","headercontainer","templatecolumn"],{box:true,component:true,container:true,gridcolumn:true,headercontainer:true,templatecolumn:true},["widget.templatecolumn"],0,[Ext.grid.column,"Template",Ext.grid,"TemplateColumn"],0));(Ext.cmd.derive("Ext.grid.column.Widget",Ext.grid.column.Column,{config:{defaultWidgetUI:{}},sortable:false,stopSelection:true,preventUpdate:true,initComponent:function(){var a=this,b;Ext.grid.column.Column.prototype.initComponent.apply(this,arguments);b=a.widget;if(!b.ui){b.ui=a.getDefaultWidgetUI()[b.xtype]||"default"}a.isFixedSize=Ext.isNumber(b.width)},processEvent:function(h,k,l,b,j,g,c,m){var a=k.innerSelector,d;if(this.stopSelection&&h==="click"){d=g.getTarget(a);if(d&&d!==g.target){return false}}},beforeRender:function(){var a=this,b;a.liveWidgets={};a.cachedStyles={};a.freeWidgetStack=[];a.listenerScopeFn=function(c){if(c==="this"){return this}return a.resolveListenerScope(c)};b=a.getFreeWidget();a.tdCls=b.getTdCls();a.setupViewListeners(a.getView());Ext.grid.column.Column.prototype.beforeRender.apply(this,arguments)},afterRender:function(){var a=this.getView();Ext.grid.column.Column.prototype.afterRender.apply(this,arguments);if(a&&a.viewReady){this.onViewRefresh(a,a.getViewRange())}},defaultRenderer:Ext.emptyFn,updater:function(a,c,b){this.updateWidget(b)},onResize:function(e){var d=this,b=d.liveWidgets,c=d.getView(),g,a;if(!d.isFixedSize&&d.rendered&&c&&c.viewReady){a=c.getEl().down(d.getCellInnerSelector());if(a){e-=parseInt(d.getCachedStyle(a,"padding-left"),10)+parseInt(d.getCachedStyle(a,"padding-right"),10);for(g in b){b[g].setWidth(e)}}}},onAdded:function(){var a;Ext.container.Container.prototype.onAdded.apply(this,arguments);a=this.getView();if(a){this.setupViewListeners(a)}},onRemoved:function(c){var d=this,a=d.liveWidgets,b=d.viewListeners,g,e;if(d.rendered){if(b){b.destroy();this.viewListeners=null}if(!c){for(g in a){e=a[g];Ext.detachedBodyEl.dom.appendChild((e.el||e.element).dom)}}}Ext.container.Container.prototype.onRemoved.apply(this,arguments)},onDestroy:function(){var c=this,h=c.liveWidgets,g=c.freeWidgetStack,e,d,b,a;if(c.rendered){for(e in h){d=h[e];d.$widgetRecord=d.$widgetColumn=null;delete d.getWidgetRecord;delete d.getWidgetColumn;d.destroy()}for(b=0,a=g.length;b<a;++b){g[b].destroy()}}c.freeWidgetStack=c.liveWidgets=null;Ext.grid.column.Column.prototype.onDestroy.call(this)},getWidget:function(b){var a=this.liveWidgets,c;if(b&&a){c=a[b.internalId]}return c||null},privates:{getCachedStyle:function(b,a){var c=this.cachedStyles;return c[a]||(c[a]=Ext.fly(b).getStyle(a))},getFreeWidget:function(){var b=this,a=b.freeWidgetStack.pop();if(!a){a=Ext.widget(b.widget);a.resolveListenerScope=b.listenerScopeFn;a.getWidgetRecord=b.widgetRecordDecorator;a.getWidgetColumn=b.widgetColumnDecorator;a.dataIndex=b.dataIndex;a.measurer=b}return a},onViewRefresh:function(o,g){var n=this,s=o.all,l=!!n.onWidgetAttach,m=n.liveWidgets,p=n.dataIndex,q=n.isFixedSize,r,k,d,c,e,a,h,j,b;if(n.rendered&&!n.hidden){n.liveWidgets={};Ext.suspendLayouts();for(a=s.startIndex,h=0;a<=s.endIndex;a++,h++){j=g[h];if(j.isNonData){continue}e=j.internalId;r=o.getRow(s.item(a)).cells[n.getVisibleIndex()].firstChild;k=n.liveWidgets[e]=m[e]||n.getFreeWidget();delete m[e];if(!q&&c===undefined){c=n.lastBox.width-parseInt(n.getCachedStyle(r,"padding-left"),10)-parseInt(n.getCachedStyle(r,"padding-right"),10)}Ext.fly(r).empty();if(d=(k.el||k.element)){r.appendChild(d.dom);if(!q){k.setWidth(c)}}else{if(!q){k.width=c}k.render(r)}if(k.defaultBindProperty&&p){k.setConfig(k.defaultBindProperty,g[h].get(p))}k.$widgetRecord=j;k.$widgetColumn=n;if(l){n.onWidgetAttach(k,j)}}Ext.resumeLayouts(true);for(b in m){k=m[b];k.$widgetRecord=k.$widgetColumn=null;n.freeWidgetStack.unshift(k);Ext.detachedBodyEl.dom.appendChild((k.el||k.element).dom)}}},onItemUpdate:function(a,b,c){this.updateWidget(a)},onItemAdd:function(c,j,l){var m=this,n=m.getView(),k=!!m.onWidgetAttach,o=m.dataIndex,p=m.isFixedSize,h=c.length,d,g,r,q,e,b,a;if(m.rendered&&!m.hidden){for(d=0;d<h;d++){g=c[d];if(g.isNonData){continue}r=n.getRowFromItem(l[d]);if(r){q=r.cells[m.getVisibleIndex()].firstChild;if(!p&&!a){a=m.lastBox.width-parseInt(m.getCachedStyle(q,"padding-left"),10)-parseInt(m.getCachedStyle(q,"padding-right"),10)}e=m.liveWidgets[g.internalId]=m.getFreeWidget();Ext.fly(q).empty();if(b=(e.el||e.element)){q.appendChild(b.dom);if(!p){e.setWidth(a)}}else{if(!p){e.width=a}e.render(q)}if(e.defaultBindProperty&&m.dataIndex){e.setConfig(e.defaultBindProperty,g.get(m.dataIndex))}e.$widgetColumn=m;if(k){m.onWidgetAttach(e,g)}}}}},onItemRemove:function(b,c,e){var d=this,a=d.liveWidgets,g;if(d.rendered&&b&&(g=a[b.internalId])){delete a[b.internalId];d.freeWidgetStack.unshift(g);g.$widgetRecord=g.$widgetColumn=null;Ext.detachedBodyEl.dom.appendChild((g.el||g.element).dom)}},setupViewListeners:function(a){var b=this;b.viewListeners=a.on({refresh:b.onViewRefresh,itemupdate:b.onItemUpdate,itemadd:b.onItemAdd,itemremove:b.onItemRemove,scope:b,destroyable:true})},updateWidget:function(a){var b=this.dataIndex,c;if(this.rendered){c=this.liveWidgets[a.internalId];if(c&&c.defaultBindProperty&&b){c.setConfig(c.defaultBindProperty,a.get(b))}}},widgetRecordDecorator:function(){return this.$widgetRecord},widgetColumnDecorator:function(){return this.$widgetColumn}}},0,["widgetcolumn"],["box","component","container","gridcolumn","headercontainer","widgetcolumn"],{box:true,component:true,container:true,gridcolumn:true,headercontainer:true,widgetcolumn:true},["widget.widgetcolumn"],0,[Ext.grid.column,"Widget"],0));(Ext.cmd.derive("Ext.grid.feature.Feature",Ext.util.Observable,{wrapsItem:false,isFeature:true,disabled:false,hasFeatureEvent:true,eventPrefix:null,eventSelector:null,view:null,grid:null,constructor:function(a){this.initialConfig=a;Ext.util.Observable.prototype.constructor.apply(this,arguments)},clone:function(){return new this.self(this.initialConfig)},init:Ext.emptyFn,destroy:function(){this.clearListeners()},getFireEventArgs:function(b,a,c,d){return[b,a,c,d]},vetoEvent:Ext.emptyFn,enable:function(){this.disabled=false},disable:function(){this.disabled=true}},1,0,0,0,["feature.feature"],0,[Ext.grid.feature,"Feature"],0));(Ext.cmd.derive("Ext.grid.feature.AbstractSummary",Ext.grid.feature.Feature,{summaryRowCls:Ext.baseCSSPrefix+"grid-row-summary",summaryRowSelector:"."+Ext.baseCSSPrefix+"grid-row-summary",readDataOptions:{recordCreator:Ext.identityFn},summaryRowTpl:{fn:function(b,a,c){if(a.record.isSummary&&this.summaryFeature.showSummaryRow){this.summaryFeature.outputSummaryRecord(a.record,a,b,c)}else{this.nextTpl.applyOut(a,b,c)}},priority:1000},showSummaryRow:true,init:function(){var a=this;a.view.summaryFeature=a;a.rowTpl=a.view.self.prototype.rowTpl;a.view.addRowTpl(a.summaryRowTpl).summaryFeature=a;a.summaryData={};a.groupInfo={};if(!a.summaryTableCls){a.summaryTableCls=Ext.baseCSSPrefix+"grid-item"}},toggleSummaryRow:function(a){this.showSummaryRow=arguments.length===1?!!a:!this.showSummaryRow},createRenderer:function(e,b){var g=this,c=b.ownerGroup,a=c?g.summaryData[c]:g.summaryData,d=e.dataIndex||e.id;return function(){return e.summaryRenderer?e.summaryRenderer(b.data[d],a,d):b.data[d]}},outputSummaryRecord:function(g,l,d){var h=l.view,a=h.rowValues,c=l.columns||h.headerCt.getVisibleGridColumns(),k=c.length,e,b,j={view:h,record:g,rowStyle:"",rowClasses:[this.summaryRowCls],itemClasses:[],recordIndex:-1,rowId:h.getRowId(g),columns:c};for(e=0;e<k;e++){b=c[e];b.savedRenderer=b.renderer;if(b.summaryType||b.summaryRenderer){b.renderer=this.createRenderer(b,g)}else{b.renderer=Ext.emptyFn}}h.rowValues=j;h.self.prototype.rowTpl.applyOut(j,d,parent);h.rowValues=a;for(e=0;e<k;e++){b=c[e];b.renderer=b.savedRenderer;b.savedRenderer=null}},getSummary:function(a,b,g,e){var d=!!e,c=d?e:a;if(b){if(Ext.isFunction(b)){if(d){return c.aggregate(g,b)}else{return c.aggregate(b,null,false,[g])}}switch(b){case"count":return c.count(g);case"min":return c.min(g);case"max":return c.max(g);case"sum":return c.sum(g);case"average":return c.average(g);default:return""}}},generateSummaryData:function(){var m=this,p=m.view.store,d=p.getGroups().items,j=p.getProxy().getReader(),k=d.length,b=m.getGroupField(),g={},l=m.lockingPartner,e,q,h,n,s,c,r,o,a;if(m.remoteRoot&&j.rawData){c=true;o={};n=j.getRootProperty();j.setRootProperty(m.remoteRoot);j.buildExtractors(true);s=j.getRoot(j.rawData)||[];k=s.length;for(e=0;e<k;++e){r=j.extractRecordData(s[e],m.readDataOptions);o[r[b]]=r}j.setRootProperty(n);j.buildExtractors(true)}for(e=0;e<k;++e){q=d[e];a=m.getGroupInfo(q);if(c||p.updating||a.lastGeneration!==q.generation){h=m.populateRecord(q,a,o);if(!l||(m.view.ownerCt===m.view.ownerCt.ownerLockable.normalGrid)){a.lastGeneration=q.generation}}else{h=m.getAggregateRecord(q)}g[q.getGroupKey()]=h}return g},setSummaryData:function(b,c,a,d){if(d){if(!this.summaryData[d]){this.summaryData[d]={}}this.summaryData[d][c]=a}else{this.summaryData[c]=a}},populateRecord:function(p,a,n){var k=this,l=k.grid.ownerLockable?k.grid.ownerLockable.view:k.view,o=k.view.getStore(),h=k.getAggregateRecord(p),e=l.headerCt.getGridColumns(),j=e.length,r=p.getGroupKey(),d,m,g,c,q,b;h.beginEdit();if(n){d=n[r];for(m in d){if(d.hasOwnProperty(m)){if(m!==h.idProperty){h.set(m,d[m])}}}}for(g=0;g<j;++g){c=e[g];q=c.dataIndex||c.id;if(!n){b=k.getSummary(o,c.summaryType,q,p);h.set(q,b)}else{b=h.get(dataIndex)}k.setSummaryData(h,c.id,b,r)}h.ownerGroup=r;h.endEdit(true);h.commit();return h},getGroupInfo:function(d){var b=this.groupInfo,a=d.getGroupKey(),c=b[a],e;if(!c){e=this.view.getStore().getModel();c=b[a]={lastGeneration:null,aggregateRecord:new e()}}return c},getAggregateRecord:function(c,a){var b=this,d;if(a===true||c.dirty||!c.aggregateRecord){d=new (b.view.store.getModel())();c.aggregateRecord=d;d.isNonData=d.isSummary=true}return c.aggregateRecord}},0,0,0,0,["feature.abstractsummary"],0,[Ext.grid.feature,"AbstractSummary"],0));(Ext.cmd.derive("Ext.grid.feature.GroupStore",Ext.util.Observable,{isStore:true,defaultViewSize:100,isFeatureStore:true,constructor:function(c,a){var b=this;Ext.util.Observable.prototype.constructor.call(this);b.groupingFeature=c;b.bindStore(a)},bindStore:function(a){var b=this;if(b.store){Ext.destroy(b.storeListeners);b.store=null}if(a){b.storeListeners=a.on({groupchange:b.onGroupChange,remove:b.onRemove,add:b.onAdd,update:b.onUpdate,refresh:b.onRefresh,clear:b.onClear,scope:b,destroyable:true});b.store=a;b.processStore(a)}},processStore:function(k){var j=this,b=k.getGroups(),n=b?b.length:0,g,o,q,e=j.data,m=j.groupingFeature.groupCache,d=j.groupingFeature.clearGroupCache(),h=j.groupingFeature.startCollapsed,a=k.getGroupField(),l,p,c;if(e){e.clear()}else{e=j.data=new Ext.util.Collection({rootProperty:"data",extraKeys:{byInternalId:{property:"internalId",rootProperty:""}}})}if(k.getCount()){j.groupingFeature.startCollapsed=false;if(n>0){for(g=0;g<n;g++){o=b.getAt(g);l=o.getGroupKey();d[l]=o;o.isCollapsed=h||(m[l]&&m[l].isCollapsed);if(o.isCollapsed){c=k.getModel();p={};p[c.idProperty]="group-"+l+"-placeholder";p[a]=l;o.placeholder=q=new c(p);q.isNonData=q.isCollapsedPlaceholder=true;e.add(q)}else{e.insert(j.data.length,o.items)}}}else{e.add(k.getRange())}}},isCollapsed:function(a){return this.groupingFeature.groupCache[a].isCollapsed},isInCollapsedGroup:function(a){var b=this.store,c;if(b.isGrouped()&&(c=this.groupingFeature.groupCache[a.get(b.getGroupField())])){return c.isCollapsed||false}return false},getCount:function(){return this.data.getCount()},getTotalCount:function(){return this.data.getCount()},rangeCached:function(b,a){return a<this.getCount()},getRange:function(d,b,c){var a=this.data.getRange(d,Ext.isNumber(b)?b+1:b);if(c&&c.callback){c.callback.call(c.scope||this,a,d,b,c)}return a},getAt:function(a){return this.data.getAt(a)},getById:function(a){return this.store.getById(a)},getByInternalId:function(a){return this.data.byInternalId.get(a)||null},expandGroup:function(d){var c=this,b,a;if(typeof d==="string"){d=c.groupingFeature.groupCache[d]}if(d){a=d.items}if(a.length&&(b=c.data.indexOf(d.placeholder))!==-1){d.isCollapsed=false;c.isExpandingOrCollapsing=1;c.data.removeAt(b);c.data.insert(b,d.items);c.fireEvent("replace",c,b,[d.placeholder],d.items);c.fireEvent("groupexpand",c,d);c.isExpandingOrCollapsing=0}},collapseGroup:function(e){var d=this,c,g,a,b;if(typeof e==="string"){e=d.groupingFeature.groupCache[e]}if(e){b=e.items}if(b&&(a=b.length)&&(c=d.data.indexOf(b[0]))!==-1){e.isCollapsed=true;d.isExpandingOrCollapsing=2;d.data.removeAt(c,a);d.data.insert(c,g=d.getGroupPlaceholder(e));d.fireEvent("replace",d,c,b,[g]);d.fireEvent("groupcollapse",d,e);d.isExpandingOrCollapsing=0}},getGroupPlaceholder:function(d){if(!d.placeholder){var a=this.store,g=a.getModel(),c={},b=d.getGroupKey(),e;c[g.idProperty]="group-"+b+"-placeholder";c[a.getGroupField()]=b;e=d.placeholder=new g(c);e.isNonData=e.isCollapsedPlaceholder=true}return d.placeholder},indexOf:function(a){if(!a.isCollapsedPlaceholder){return this.data.indexOf(a)}return -1},indexOfTotal:function(a){return this.store.indexOf(a)},onRefresh:function(a){this.processStore(this.store);this.fireEvent("refresh",this)},onRemove:function(c,b,d,a){this.processStore(this.store);this.fireEvent("refresh",this)},onClear:function(b,a,c){this.processStore(this.store);this.fireEvent("clear",this)},onAdd:function(b,a,c){this.processStore(this.store);this.fireEvent("replace",this,this.indexOf(a[0]),[],a)},onUpdate:function(k,e,c,d){var j=this,a,h,b,g;if(k.isGrouped()){a=e.group=j.groupingFeature.getRecordGroup(e);if(d&&Ext.Array.contains(d,j.groupingFeature.getGroupField())){return j.onRefresh(j.store)}if(a.isCollapsed){j.fireEvent("update",j,a.placeholder)}else{Ext.suspendLayouts();j.fireEvent("update",j,e,c,d);g=a.items;h=g[0];b=g[g.length-1];if(h!==e){h.group=a;j.fireEvent("update",j,h,"edit",d);delete h.group}if(b!==e&&b!==h&&j.groupingFeature.showSummaryRow){b.group=a;j.fireEvent("update",j,b,"edit",d);delete b.group}Ext.resumeLayouts(true)}delete e.group}else{j.fireEvent("update",j,e,c,d)}},onGroupChange:function(a){this.fireEvent("groupchange",a)}},1,0,0,0,0,0,[Ext.grid.feature,"GroupStore"],0));(Ext.cmd.derive("Ext.grid.feature.Grouping",Ext.grid.feature.Feature,{eventPrefix:"group",groupCls:Ext.baseCSSPrefix+"grid-group-hd",eventSelector:"."+Ext.baseCSSPrefix+"grid-group-hd",refreshData:{},groupInfo:{},wrapsItem:true,groupHeaderTpl:"{columnName}: {name}",depthToIndent:17,collapsedCls:Ext.baseCSSPrefix+"grid-group-collapsed",hdCollapsedCls:Ext.baseCSSPrefix+"grid-group-hd-collapsed",hdNotCollapsibleCls:Ext.baseCSSPrefix+"grid-group-hd-not-collapsible",collapsibleCls:Ext.baseCSSPrefix+"grid-group-hd-collapsible",ctCls:Ext.baseCSSPrefix+"group-hd-container",groupByText:"Group by this field",showGroupsText:"Show in groups",hideGroupedHeader:false,startCollapsed:false,enableGroupingMenu:true,enableNoGroups:true,collapsible:true,expandTip:"Click to expand. CTRL key collapses all others",collapseTip:"Click to collapse. CTRL/click collapses all others",showSummaryRow:false,outerTpl:["{%","if (!(this.groupingFeature.disabled || values.rows.length === 1 && values.rows[0].isSummary)) {","this.groupingFeature.setup(values.rows, values.view.rowValues);","}","this.nextTpl.applyOut(values, out, parent);","if (!(this.groupingFeature.disabled || values.rows.length === 1 && values.rows[0].isSummary)) {","this.groupingFeature.cleanup(values.rows, values.view.rowValues);","}","%}",{priority:200}],groupRowTpl:["{%","var me = this.groupingFeature,",'colspan = "colspan=" + values.columns.length;',"if (me.disabled || parent.rows.length === 1 && parent.rows[0].isSummary) {","values.needsWrap = false;","} else {","me.setupRowData(values.record, values.rowIndex, values);","}","%}",'<tpl if="needsWrap">','<tpl if="isFirstRow">',"{% values.view.renderColumnSizer(values, out); %}",'<tr data-boundView="{view.id}" data-recordId="{record.internalId:htmlEncode}" data-recordIndex="{[values.isCollapsedGroup ? -1 : values.recordIndex]}" class="{groupHeaderCls}">','<td class="{[me.ctCls]}" {[colspan]}>',"{%",'var groupTitleStyle = (!values.view.lockingPartner || (values.view.ownerCt === values.view.ownerCt.ownerLockable.lockedGrid) || (values.view.lockingPartner.headerCt.getVisibleGridColumns().length === 0)) ? "" : "visibility:hidden";',"%}",'<div id="{groupId}" class="',Ext.baseCSSPrefix,'grid-group-hd {collapsibleCls}" tabIndex="0" hidefocus="on" {ariaCellInnerAttr}>','<div class="',Ext.baseCSSPrefix,'grid-group-title" style="{[groupTitleStyle]}" {ariaGroupTitleAttr}>','{[values.groupHeaderTpl.apply(values.groupInfo, parent) || "&#160;"]}',"</div>","</div>","</td>","</tr>","</tpl>",'<tpl if="!isCollapsedGroup">',"{%","values.itemClasses.length = 0;","this.nextTpl.applyOut(values, out, parent);","%}","</tpl>",'<tpl if="summaryRecord">',"{%me.outputSummaryRecord(values.summaryRecord, values, out, parent);%}","</tpl>","<tpl else>","{%this.nextTpl.applyOut(values, out, parent);%}","</tpl>",{priority:200,syncRowHeights:function(d,k){d=Ext.fly(d,"syncDest");k=Ext.fly(k,"sycSrc");var b=this.owner,e=d.down(b.eventSelector,true),g,h=d.down(b.summaryRowSelector,true),c,a,j;if(e&&(g=k.down(b.eventSelector,true))){e.style.height=g.style.height="";if((a=e.offsetHeight)>(j=g.offsetHeight)){Ext.fly(g).setHeight(a)}else{if(j>a){Ext.fly(e).setHeight(j)}}}if(h&&(c=k.down(b.summaryRowSelector,true))){h.style.height=c.style.height="";if((a=h.offsetHeight)>(j=c.offsetHeight)){Ext.fly(c).setHeight(a)}else{if(j>a){Ext.fly(h).setHeight(j)}}}},syncContent:function(c,j,b){c=Ext.fly(c,"syncDest");j=Ext.fly(j,"sycSrc");var a=this.owner,e=c.down(a.eventSelector,true),d=j.down(a.eventSelector,true),h=c.down(a.summaryRowSelector,true),g=j.down(a.summaryRowSelector,true);if(e&&d){Ext.fly(e).syncContent(d)}if(h&&g){if(b){this.groupingFeature.view.updateColumns(h,g,b)}else{Ext.fly(h).syncContent(g)}}}}],constructor:function(){this.groupCache={};Ext.grid.feature.Feature.prototype.constructor.apply(this,arguments)},init:function(c){var e=this,a=e.view,b=a.getStore(),d;a.isGrouping=!!b.getGrouper();if(e.lockingPartner&&e.lockingPartner.groupCache){e.groupCache=e.lockingPartner.groupCache}e.mixins.summary.init.call(e);Ext.grid.feature.Feature.prototype.init.apply(this,arguments);a.headerCt.on({columnhide:e.onColumnHideShow,columnshow:e.onColumnHideShow,columnmove:e.onColumnMove,scope:e});a.addTpl(Ext.XTemplate.getTpl(e,"outerTpl")).groupingFeature=e;a.addRowTpl(Ext.XTemplate.getTpl(e,"groupRowTpl")).groupingFeature=e;a.preserveScrollOnRefresh=true;if(b.isBufferedStore){e.collapsible=false}else{d=e.lockingPartner;if(d&&d.dataSource){e.dataSource=a.dataSource=d.dataSource}else{e.dataSource=a.dataSource=new Ext.grid.feature.GroupStore(e,b)}}c=c.ownerLockable||c;c.on({reconfigure:e.onReconfigure,scope:e});a.on({afterrender:e.afterViewRender,scope:e,single:true});e.storeListeners=a.store.on({groupchange:e.onGroupChange,scope:e,destroyable:true})},indexOf:function(a){return this.dataSource.indexOf(a)},isInCollapsedGroup:function(a){var c,b=this.view.getStore();if(b.isGrouped()&&(c=this.getGroup(a))){return c.isCollapsed||false}return false},clearGroupCache:function(){var b=this,a=b.groupCache={};if(b.lockingPartner){b.lockingPartner.groupCache=a}return a},vetoEvent:function(a,c,d,b){if(b.type!=="mouseover"&&b.type!=="mouseout"&&b.type!=="mouseenter"&&b.type!=="mouseleave"&&b.getTarget(this.eventSelector)){return false}},enable:function(){var c=this,a=c.view,b=a.getStore(),d;a.isGrouping=true;Ext.grid.feature.Feature.prototype.enable.call(this);if(c.lastGrouper){b.group(c.lastGrouper);c.lastGrouper=null}d=c.view.headerCt.getMenu().down("#groupToggleMenuItem");if(d){d.setChecked(true,true)}},disable:function(){var c=this,a=c.view,b=a.getStore(),d,e=b.getGrouper();a.isGrouping=false;Ext.grid.feature.Feature.prototype.disable.call(this);if(e){c.lastGrouper=e;b.clearGrouping()}d=c.view.headerCt.getMenu().down("#groupToggleMenuItem");if(d){d.setChecked(false,true)}},afterViewRender:function(){var b=this,a=b.view;a.on({scope:b,groupclick:b.onGroupClick});if(b.enableGroupingMenu){b.injectGroupingMenu()}b.pruneGroupedHeader();b.lastGrouper=b.view.getStore().getGrouper();if(b.disabled){b.disable()}},injectGroupingMenu:function(){var a=this,b=a.view.headerCt;b.showMenuBy=a.showMenuBy;b.getMenuItems=a.getMenuItems()},onColumnHideShow:function(d,g){var l=this.view,b=l.headerCt,a=b.getMenu(),c=a.activeHeader,m=a.down("#groupMenuItem"),h,n=this.grid.getVisibleColumnManager().getColumns().length,k,j,e;if(c&&m){h=c.groupable===false||c.dataIndex==null||this.view.headerCt.getVisibleGridColumns().length<2?"disable":"enable";m[h]()}if(l.rendered){k=l.el.query("."+this.ctCls);for(e=0,j=k.length;e<j;++e){k[e].colSpan=n}}},onColumnMove:function(){var d=this,b=d.view.getStore(),a,h,e,g,c;if(b.isGrouped()){a=d.groupCache;Ext.suspendLayouts();for(h in a){if(a.hasOwnProperty(h)){e=a[h];g=e.items[0];c=e.items[e.items.length-1];b.fireEvent("update",b,g,"edit",null);if(c!==g&&d.showSummaryRow){b.fireEvent("update",b,c,"edit",null)}}}Ext.resumeLayouts(true)}},showMenuBy:function(b,h){var g=this.getMenu(),c=g.down("#groupMenuItem"),a=h.groupable===false||h.dataIndex==null||this.view.headerCt.getVisibleGridColumns().length<2?"disable":"enable",e=g.down("#groupToggleMenuItem"),d=this.view.store.isGrouped();c[a]();if(e){e.setChecked(d,true);e[d?"enable":"disable"]()}Ext.grid.header.Container.prototype.showMenuBy.apply(this,arguments)},getMenuItems:function(){var g=this,c=g.groupByText,e=g.disabled||!g.getGroupField(),a=g.showGroupsText,d=g.enableNoGroups,b=g.view.headerCt.getMenuItems;return function(){var h=b.call(this);h.push("-",{iconCls:Ext.baseCSSPrefix+"group-by-icon",itemId:"groupMenuItem",text:c,handler:g.onGroupMenuItemClick,scope:g});if(d){h.push({itemId:"groupToggleMenuItem",text:a,checked:!e,checkHandler:g.onGroupToggleMenuItemClick,scope:g})}return h}},onGroupMenuItemClick:function(c,g){var d=this,h=c.parentMenu,j=h.activeHeader,a=d.view,b=a.store;if(d.disabled){d.lastGrouper=null;d.block();d.enable();d.unblock()}b.group(j.dataIndex);d.pruneGroupedHeader()},block:function(a){this.blockRefresh=this.view.blockRefresh=true;if(this.lockingPartner&&!a){this.lockingPartner.block(true)}},unblock:function(a){this.blockRefresh=this.view.blockRefresh=false;if(this.lockingPartner&&!a){this.lockingPartner.unblock(true)}},onGroupToggleMenuItemClick:function(a,b){this[b?"enable":"disable"]()},pruneGroupedHeader:function(){var a=this,b=a.getGroupedHeader();if(a.hideGroupedHeader&&b){Ext.suspendLayouts();if(a.prunedHeader&&a.prunedHeader!==b){a.prunedHeader.show()}a.prunedHeader=b;if(b.rendered){b.hide()}Ext.resumeLayouts(true)}},getHeaderNode:function(a){return document.getElementById(this.createGroupId(a))},getGroup:function(b){if(b.isModel){b=b.get(this.view.getStore().getGroupField())}var a=this.groupCache,c=a[b];if(!c){c=a[b]={isCollapsed:false}}return c},isExpanded:function(a){return !this.getGroup(a).isCollapsed},expand:function(b,a){this.doCollapseExpand(false,b,a)},expandAll:function(){var c=this,b=c.groupCache,d,a=c.lockingPartner;for(d in b){if(b.hasOwnProperty(d)){b[d].isCollapsed=false}}Ext.suspendLayouts();c.dataSource.onRefresh();Ext.resumeLayouts(true);for(d in b){if(b.hasOwnProperty(d)){c.afterCollapseExpand(false,d);if(a){a.afterCollapseExpand(false,d)}}}},collapse:function(b,a){this.doCollapseExpand(true,b,a)},isAllCollapsed:function(){var b=this,a=b.groupCache,c;for(c in a){if(a.hasOwnProperty(c)){if(!a[c].isCollapsed){return false}}}return true},isAllExpanded:function(){var b=this,a=b.groupCache,c;for(c in a){if(a.hasOwnProperty(c)){if(a[c].isCollapsed){return false}}}return true},collapseAll:function(){var c=this,b=c.groupCache,d,a=c.lockingPartner;for(d in b){if(b.hasOwnProperty(d)){b[d].isCollapsed=true}}Ext.suspendLayouts();c.dataSource.onRefresh();if(a&&!a.isAllCollapsed()){a.collapseAll()}Ext.resumeLayouts(true);for(d in b){if(b.hasOwnProperty(d)){c.afterCollapseExpand(true,d);if(a){a.afterCollapseExpand(true,d)}}}},doCollapseExpand:function(e,g,a){var c=this,b=c.lockingPartner,d=c.groupCache[g];if(d.isCollapsed!==e){Ext.suspendLayouts();if(e){c.dataSource.collapseGroup(d)}else{c.dataSource.expandGroup(d)}Ext.resumeLayouts(true);c.afterCollapseExpand(e,g,a);if(b){b.afterCollapseExpand(e,g,false)}}},afterCollapseExpand:function(d,g,b){var c=this,a=c.view,e;e=c.getHeaderNode(g);a.fireEvent(d?"groupcollapse":"groupexpand",a,e,g);if(b){a.scrollElIntoView(Ext.fly(e).up(a.getItemSelector()),false,true)}},onGroupChange:function(c,b){var e=this,d=e.grid.ownerCt,a=e.view;if(!b){if(d&&d.lockable){d.view.refresh()}else{a.refresh()}}else{e.lastGrouper=b}},getMenuItem:function(b){var a=this.view,d=a.headerCt.down("gridcolumn[dataIndex="+b+"]"),c=a.headerCt.getMenu();return d?c.down("menuitem[headerId="+d.id+"]"):null},onGroupKey:function(c,b){var a=this,d=a.getGroupName(b.target);if(d){a.onGroupClick(a.view,b.target,d,b)}},onGroupClick:function(a,j,l,k){var h=this,d=h.groupCache,b=!h.isExpanded(l),c;if(h.collapsible){if(k.ctrlKey){Ext.suspendLayouts();for(c in d){if(c===l){if(b){h.expand(l)}}else{if(!d[c].isCollapsed){h.doCollapseExpand(true,c,false)}}}Ext.resumeLayouts(true);return}if(b){h.expand(l)}else{h.collapse(l)}}},setupRowData:function(l,p,r){var n=this,g=r.recordIndex,h=n.refreshData,d=n.groupInfo,k=h.header,c=h.groupField,o=n.view.getStore(),b=n.view.dataSource,a,q,e,j,m;r.isCollapsedGroup=false;r.summaryRecord=r.groupHeaderCls=null;if(h.doGrouping){a=o.getGrouper();if(l.isCollapsedPlaceholder){q=a.getGroupString(l);m=o.getGroups().get(q).items;r.isFirstRow=r.isLastRow=true;r.groupHeaderCls=n.hdCollapsedCls;r.isCollapsedGroup=r.needsWrap=true;r.groupInfo=d;d.groupField=c;d.name=q;d.groupValue=m[0].get(c);d.columnName=k?k.text:c;r.collapsibleCls=n.collapsible?n.collapsibleCls:n.hdNotCollapsibleCls;r.groupId=n.createGroupId(q);d.rows=d.children=m;if(n.showSummaryRow){r.summaryRecord=h.summaryData[q]}return}q=a.getGroupString(l);if(l.group){m=l.group.items;r.isFirstRow=l===m[0];r.isLastRow=l===m[m.length-1]}else{r.isFirstRow=g===0;if(!r.isFirstRow){e=o.getAt(g-1);if(e){r.isFirstRow=!e.isEqual(a.getGroupString(e),q)}}r.isLastRow=g==(o.isBufferedStore?o.getTotalCount():o.getCount())-1;if(!r.isLastRow){j=o.getAt(g+1);if(j){r.isLastRow=!j.isEqual(a.getGroupString(j),q)}}}if(r.isFirstRow){d.groupField=c;d.name=q;d.groupValue=l.get(c);d.columnName=k?k.text:c;r.collapsibleCls=n.collapsible?n.collapsibleCls:n.hdNotCollapsibleCls;r.groupId=n.createGroupId(q);if(!n.isExpanded(q)){r.itemClasses.push(n.hdCollapsedCls);r.isCollapsedGroup=true}if(b.isBufferedStore){d.rows=d.children=[]}else{d.rows=d.children=n.getRecordGroup(l).items}r.groupInfo=d}if(r.isLastRow){if(n.showSummaryRow){r.summaryRecord=h.summaryData[q];r.itemClasses.push(Ext.baseCSSPrefix+"grid-group-last")}}r.needsWrap=(r.isFirstRow||r.summaryRecord)}},setup:function(e,g){var c=this,d=c.refreshData,a=g.view,b=!c.disabled&&a.isGrouping;c.skippedRows=0;if(a.bufferedRenderer){a.bufferedRenderer.variableRowHeight=a.bufferedRenderer.variableRowHeight||a.store.isGrouped()}d.groupField=c.getGroupField();d.header=c.getGroupedHeader(d.groupField);d.doGrouping=b;g.groupHeaderTpl=Ext.XTemplate.getTpl(c,"groupHeaderTpl");if(b&&c.showSummaryRow){d.summaryData=c.generateSummaryData()}},cleanup:function(b,c){var a=this.refreshData;c.groupInfo=c.groupHeaderTpl=c.isFirstRow=null;a.groupField=a.header=null},getGroupName:function(b){var d=this,a=d.view,c=d.eventSelector,e,h,g;h=Ext.fly(b).findParent(c);if(!h){g=Ext.fly(b).findParent(a.itemSelector);if(g){h=g.down(c,true)}}if(h){e=h.id.split(a.id+"-hd-");if(e.length===2){return Ext.htmlDecode(e[1])}}},getRecordGroup:function(a){var b=this.view.getStore().getGrouper();if(b){return this.groupCache[b.getGroupString(a)]}},createGroupId:function(a){return this.view.id+"-hd-"+Ext.htmlEncode(a)},createGroupCls:function(a){return this.view.id+"-"+Ext.htmlEncode(a)+"-item"},getGroupField:function(){return this.view.store.getGroupField()},getGroupedHeader:function(b){var d=this,e=d.view.headerCt,c=d.lockingPartner,a,g;b=b||this.getGroupField();if(b){a="[dataIndex="+b+"]";g=e.down(a);if(!g&&c){g=c.view.headerCt.down(a)}}return g||null},getFireEventArgs:function(b,a,d,c){return[b,a,d,this.getGroupName(d),c]},destroy:function(){var a=this,b=a.dataSource;a.view=a.prunedHeader=a.grid=a.groupCache=a.dataSource=null;Ext.grid.feature.Feature.prototype.destroy.call(this);if(b){b.bindStore(null)}},onReconfigure:function(c,l,e,a,g){var j=this,k=j.view,b=j.dataSource,d=c.lockable?c:null,h;if(l&&l!==a){h=l.isBufferedStore;j.storeListeners&&j.storeListeners.destroy();j.storeListeners=l.on({groupchange:j.onGroupChange,scope:j,destroyable:true});if(h!==a.isBufferedStore){Ext.Error.raise("Cannot reconfigure grouping switching between buffered and non-buffered stores")}k.isGrouping=!!l.getGrouper();b.bindStore(l);if(d){d.getView().bindStore(b,false,"dataSource")}else{k.refresh()}}}},1,0,0,0,["feature.grouping"],[["summary",Ext.grid.feature.AbstractSummary]],[Ext.grid.feature,"Grouping"],0));(Ext.cmd.derive("Ext.grid.feature.GroupingSummary",Ext.grid.feature.Grouping,{showSummaryRow:true,vetoEvent:function(b,d,g,c){var a=Ext.grid.feature.Grouping.prototype.vetoEvent.apply(this,arguments);if(a!==false){if(c.getTarget(this.summaryRowSelector)){a=false}}return a}},0,0,0,0,["feature.groupingsummary"],0,[Ext.grid.feature,"GroupingSummary"],0));(Ext.cmd.derive("Ext.grid.feature.RowBody",Ext.grid.feature.Feature,{rowBodyCls:Ext.baseCSSPrefix+"grid-row-body",rowBodyHiddenCls:Ext.baseCSSPrefix+"grid-row-body-hidden",rowBodyTdSelector:"td."+Ext.baseCSSPrefix+"grid-cell-rowbody",eventPrefix:"rowbody",eventSelector:"tr."+Ext.baseCSSPrefix+"grid-rowbody-tr",colSpanDecrement:0,outerTpl:{fn:function(c,b,d){var a=b.view,e=a.rowValues;this.rowBody.setup(b.rows,e);this.nextTpl.applyOut(b,c,d);this.rowBody.cleanup(b.rows,e)},priority:100},extraRowTpl:["{%","this.nextTpl.applyOut(values, out, parent);","values.view.rowBodyFeature.setupRowData(values.record, values.recordIndex, values);","%}",'<tr class="'+Ext.baseCSSPrefix+'grid-rowbody-tr {rowBodyCls}" {ariaRowAttr}>','<td class="'+Ext.baseCSSPrefix+"grid-td "+Ext.baseCSSPrefix+'grid-cell-rowbody" colspan="{rowBodyColspan}" {ariaCellAttr}>','<div class="'+Ext.baseCSSPrefix+'grid-rowbody {rowBodyDivCls}" {ariaCellInnerAttr}>{rowBody}</div>',"</td>","</tr>",{priority:100,syncRowHeights:function(g,c){var a=this.owner,b=Ext.fly(g).down(a.eventSelector,true),h,d,e;if(b&&(h=Ext.fly(c).down(a.eventSelector,true))){if((d=b.offsetHeight)>(e=h.offsetHeight)){Ext.fly(h).setHeight(d)}else{if(e>d){Ext.fly(b).setHeight(e)}}}},syncContent:function(c,g,b){var a=this.owner,d=Ext.fly(c).down(a.eventSelector,true),e;if(d&&(e=Ext.fly(g).down(a.eventSelector,true))){Ext.fly(d).syncContent(e)}}}],init:function(b){var c=this,a=c.view=b.getView();b.variableRowHeight=a.variableRowHeight=true;a.rowBodyFeature=c;b.mon(a,{element:"el",click:c.onClick,scope:c});a.headerCt.on({columnschanged:c.onColumnsChanged,scope:c});a.addTpl(c.outerTpl).rowBody=c;a.addRowTpl(Ext.XTemplate.getTpl(this,"extraRowTpl"));Ext.grid.feature.Feature.prototype.init.apply(this,arguments)},onClick:function(c){var b=this,a=c.getTarget(b.eventSelector);if(a&&Ext.fly(a=a.previousSibling).is(b.view.rowSelector)){c.target=a;b.view.handleEvent(c)}},getSelectedRow:function(a,c){var b=a.getNode(c);if(b){return Ext.fly(b).down(this.eventSelector)}return null},onColumnsChanged:function(d){var b=this.view.el.query(this.rowBodyTdSelector),e=d.getVisibleGridColumns().length,a=b.length,c;for(c=0;c<a;++c){b[c].colSpan=e}},setupRowData:function(a,c,b){if(this.getAdditionalData){Ext.apply(b,this.getAdditionalData(a.data,c,a,b))}},setup:function(a,b){b.rowBodyCls=this.rowBodyCls;b.rowBodyColspan=b.view.getGridColumns().length-this.colSpanDecrement},cleanup:function(a,b){b.rowBodyCls=b.rowBodyColspan=b.rowBody=null}},0,0,0,0,["feature.rowbody"],0,[Ext.grid.feature,"RowBody"],0));(Ext.cmd.derive("Ext.grid.feature.Summary",Ext.grid.feature.AbstractSummary,{dock:undefined,dockedSummaryCls:Ext.baseCSSPrefix+"docked-summary",summaryItemCls:Ext.baseCSSPrefix+"grid-item-summary",panelBodyCls:Ext.baseCSSPrefix+"summary-",scrollPadProperty:"padding-right",hasFeatureEvent:false,init:function(b){var c=this,a=c.view;Ext.grid.feature.AbstractSummary.prototype.init.apply(this,arguments);if(c.dock){b.headerCt.on({add:c.onStoreUpdate,afterlayout:c.onStoreUpdate,scope:c});b.on({beforerender:function(){var d=[c.summaryTableCls];if(a.columnLines){d[d.length]=a.ownerCt.colLinesCls}c.summaryBar=b.addDocked({childEls:["innerCt","item"],renderTpl:['<div id="{id}-innerCt" data-ref="innerCt" role="presentation">','<table id="{id}-item" data-ref="item" cellPadding="0" cellSpacing="0" class="'+d.join(" ")+'">','<tr class="'+c.summaryRowCls+'"></tr>',"</table>","</div>"],style:"overflow:hidden",itemId:"summaryBar",cls:[c.dockedSummaryCls,c.dockedSummaryCls+"-"+c.dock],xtype:"component",dock:c.dock,weight:10000000})[0]},afterrender:function(){b.body.addCls(c.panelBodyCls+c.dock);a.on("scroll",c.onViewScroll,c);c.onStoreUpdate()},single:true});b.headerCt.afterComponentLayout=Ext.Function.createSequence(b.headerCt.afterComponentLayout,function(){var d=this.getTableWidth(),e=c.summaryBar.innerCt;c.summaryBar.item.setWidth(d);if(this.tooNarrow){d+=Ext.getScrollbarSize().width}e.setWidth(d)})}else{c.view.addFooterFn(c.renderSummaryRow)}b.on({columnmove:c.onStoreUpdate,scope:c});a.mon(a.store,{update:c.onStoreUpdate,datachanged:c.onStoreUpdate,scope:c})},renderSummaryRow:function(b,c,d){var a=b.view,e=a.findFeature("summary");if(e.showSummaryRow){c.push('<table class="'+Ext.baseCSSPrefix+"table-plain "+e.summaryItemCls+'">');e.outputSummaryRecord(e.createSummaryRecord(a),b,c,d);c.push("</table>")}},toggleSummaryRow:function(c){var b=this,a=b.summaryBar;Ext.grid.feature.AbstractSummary.prototype.toggleSummaryRow.apply(this,arguments);if(a){a.setVisible(b.showSummaryRow);b.onViewScroll()}},vetoEvent:function(a,c,d,b){return !b.getTarget(this.summaryRowSelector)},onViewScroll:function(){this.summaryBar.setScrollX(this.view.getScrollX())},createSummaryRecord:function(h){var d=h.headerCt.getVisibleGridColumns(),g=this.summaryRecord,k=d.length,e,c,j,a,b,l;if(!g){b=h.store.getModel();l={};l[b.idProperty]=h.id+"-summary-record";g=this.summaryRecord=new b(l)}g.beginEdit();for(e=0;e<k;e++){c=d[e];j=c.dataIndex||c.id;a=this.getSummary(h.store,c.summaryType,j);g.set(j,a);this.setSummaryData(g,c.id,a)}g.endEdit(true);g.commit(true);g.isSummary=true;return g},onStoreUpdate:function(){var g=this,b=g.view,a=g.createSummaryRecord(b),d=b.createRowElement(a,-1).firstChild.firstChild,c,e,h;if(!b.rendered){return}if(g.dock){h=g.summaryBar.item.dom.firstChild;c=h.firstChild}else{c=g.view.getRow(a);h=c?c.parentNode:null}if(h){h.insertBefore(d,c);h.removeChild(c)}if(g.dock){g.onColumnHeaderLayout()}},onColumnHeaderLayout:function(){var b=this.view,d=b.headerCt.getVisibleGridColumns(),g,a=d.length,c,h=this.summaryBar.el,e;for(c=0;c<a;c++){g=d[c];e=h.down(b.getCellSelector(g));if(e){e.setWidth(g.width||(g.lastBox?g.lastBox.width:100))}}}},0,0,0,0,["feature.summary"],0,[Ext.grid.feature,"Summary"],0));(Ext.cmd.derive("Ext.menu.Item",Ext.Component,{alternateClassName:"Ext.menu.TextItem",isMenuItem:true,activeCls:Ext.baseCSSPrefix+"menu-item-active",ariaRole:"menuitem",canActivate:true,clickHideDelay:0,destroyMenu:true,disabledCls:Ext.baseCSSPrefix+"menu-item-disabled",hideOnClick:true,menuAlign:"tl-tr?",menuExpandDelay:200,menuHideDelay:200,tooltipType:"qtip",baseCls:Ext.baseCSSPrefix+"menu-item",arrowCls:Ext.baseCSSPrefix+"menu-item-arrow",baseIconCls:Ext.baseCSSPrefix+"menu-item-icon",textCls:Ext.baseCSSPrefix+"menu-item-text",indentCls:Ext.baseCSSPrefix+"menu-item-indent",indentNoSeparatorCls:Ext.baseCSSPrefix+"menu-item-indent-no-separator",indentRightIconCls:Ext.baseCSSPrefix+"menu-item-indent-right-icon",indentRightArrowCls:Ext.baseCSSPrefix+"menu-item-indent-right-arrow",linkCls:Ext.baseCSSPrefix+"menu-item-link",linkHrefCls:Ext.baseCSSPrefix+"menu-item-link-href",childEls:["itemEl","iconEl","textEl","arrowEl"],renderTpl:'<tpl if="plain">{text}<tpl else><a id="{id}-itemEl" data-ref="itemEl" class="{linkCls}<tpl if="hasHref"> {linkHrefCls}</tpl>{childElCls}" href="{href}" role="menuitem" <tpl if="hrefTarget"> target="{hrefTarget}"</tpl> hidefocus="true" unselectable="on"<tpl if="tabIndex"> tabIndex="{tabIndex}"</tpl>><span id="{id}-textEl" data-ref="textEl" class="{textCls} {textCls}-{ui} {indentCls}{childElCls}" unselectable="on">{text}</span><tpl if="hasIcon"><div role="presentation" id="{id}-iconEl" data-ref="iconEl" class="{baseIconCls}-{ui} {baseIconCls}{[values.rightIcon ? "-right" : ""]} {iconCls}{childElCls} {glyphCls}" style="<tpl if="icon">background-image:url({icon});</tpl><tpl if="glyph && glyphFontFamily">font-family:{glyphFontFamily};</tpl>"><tpl if="glyph">&#{glyph};</tpl></div></tpl><tpl if="showCheckbox"><div role="presentation" id="{id}-checkEl" data-ref="checkEl" class="{baseIconCls}-{ui} {baseIconCls}{[(values.hasIcon && !values.rightIcon) ? "-right" : ""]} {groupCls} {checkboxCls}{childElCls}"></div></tpl><tpl if="hasMenu"><div role="presentation" id="{id}-arrowEl" data-ref="arrowEl" class="{arrowCls} {arrowCls}-{ui}{childElCls}"></div></tpl></a></tpl>',maskOnDisable:false,iconAlign:"left",activate:function(b){var a=this;if(b||(!a.activated&&a.canActivate&&a.rendered&&!a.isDisabled()&&a.isVisible())){if(!a.plain){a.el.addCls(a.activeCls)}a.focus(false,true);a.activated=true;if(a.hasListeners.activate){a.fireEvent("activate",a)}}},deactivate:function(){var b=this,a;if(b.activated){a=b.up("");if(!b.plain){b.el.removeCls(b.activeCls)}if(a){a.focus(false,true)}b.hideMenu();b.activated=false;if(b.hasListeners.deactivate){b.fireEvent("deactivate",b)}}},deferHideMenu:function(){if(this.menu.isVisible()){this.menu.hide()}},cancelDeferHide:function(){clearTimeout(this.hideMenuTimer)},deferHideParentMenus:function(){var a;Ext.menu.Manager.hideAll();if(!Ext.Element.getActiveElement()){a=this.up(":not([hidden])");if(a){a.focus()}}},expandMenu:function(a){var b=this;if(b.menu){b.cancelDeferHide();if(a===0){b.doExpandMenu()}else{clearTimeout(b.expandMenuTimer);b.expandMenuTimer=Ext.defer(b.doExpandMenu,Ext.isNumber(a)?a:b.menuExpandDelay,b)}}},doExpandMenu:function(){var a=this,b=a.menu;if(a.activated&&(!b.rendered||!b.isVisible())){a.parentMenu.activeChild=b;b.ownerItem=a;b.parentMenu=a.parentMenu;b.constrainTo=document.body;b.showBy(a,a.menuAlign)}},getRefItems:function(a){var c=this.menu,b;if(c){b=c.getRefItems(a);b.unshift(c)}return b||[]},hideMenu:function(a){var b=this;if(b.menu){clearTimeout(b.expandMenuTimer);b.hideMenuTimer=Ext.defer(b.deferHideMenu,Ext.isNumber(a)?a:b.menuHideDelay,b)}},initComponent:function(){var b=this,c=Ext.baseCSSPrefix,a="",d;if(b.plain){a+=c+"menu-item-plain"}if(b.cls){a+=" "+b.cls}b.cls=a;if(b.menu){d=b.menu;delete b.menu;b.setMenu(d)}Ext.Component.prototype.initComponent.apply(this,arguments)},onClick:function(d){var c=this,b=c.clickHideDelay,g=d.browserEvent,a;if(!c.href||c.disabled){d.stopEvent()}if(c.disabled||c.handlingClick){return}if(c.hideOnClick&&d.browserEvent.type!=="touchcancel"&&!(d.type==="tap"&&c.menu)){if(!b){c.deferHideParentMenus()}else{c.deferHideParentMenusTimer=Ext.defer(c.deferHideParentMenus,b,c)}}Ext.callback(c.handler,c.scope,[c,d],0,c);c.fireEvent("click",c,d);if(Ext.isIE9m){a=(g.returnValue===false)?true:false}else{a=!!g.defaultPrevented}if(c.href&&!a){c.handlingClick=true;c.itemEl.dom.click();delete c.handlingClick}if(!c.hideOnClick){c.focus()}},onRemoved:function(){var a=this;if(a.activated&&a.parentMenu.activeItem===a){a.parentMenu.deactivateActiveItem()}Ext.Component.prototype.onRemoved.apply(this,arguments);a.parentMenu=a.ownerButton=null},beforeDestroy:function(){var a=this;if(a.rendered){a.clearTip()}Ext.Component.prototype.beforeDestroy.call(this)},onDestroy:function(){var a=this;clearTimeout(a.expandMenuTimer);a.cancelDeferHide();clearTimeout(a.deferHideParentMenusTimer);a.setMenu(null);Ext.Component.prototype.onDestroy.apply(this,arguments)},beforeRender:function(){var k=this,l=k.glyph,j=Ext._glyphFontFamily,e=!!(k.icon||k.iconCls||l),m=!!k.menu,g=((k.iconAlign==="right")&&!m),c=k.isMenuCheckItem,a=[],d=k.ownerCt,h=d.plain,b;Ext.util.Renderable.prototype.beforeRender.call(this);if(e){if(m&&k.showCheckbox){e=false}}if(typeof l==="string"){b=l.split("@");l=b[0];j=b[1]}if(!h||(e&&!g)||c){if(d.showSeparator&&!h){a.push(k.indentCls)}else{a.push(k.indentNoSeparatorCls)}}if(m){a.push(k.indentRightArrowCls)}else{if(e&&(g||c)){a.push(k.indentRightIconCls)}}Ext.applyIf(k.renderData,{hasHref:!!k.href,href:k.href||"#",hrefTarget:k.hrefTarget,icon:k.icon,iconCls:k.iconCls,glyph:l,glyphCls:l?Ext.baseCSSPrefix+"menu-item-glyph":undefined,glyphFontFamily:j,hasIcon:e,hasMenu:m,indent:!h||e||c,isCheckItem:c,rightIcon:g,plain:k.plain,text:k.text,arrowCls:k.arrowCls,baseIconCls:k.baseIconCls,textCls:k.textCls,indentCls:a.join(" "),linkCls:k.linkCls,linkHrefCls:k.linkHrefCls,groupCls:k.group?k.groupCls:"",tabIndex:k.tabIndex})},onRender:function(){var a=this;Ext.util.Renderable.prototype.onRender.apply(this,arguments);if(a.tooltip){a.setTooltip(a.tooltip,true)}},setMenu:function(e,d){var c=this,b=c.menu,a=c.arrowEl;if(b){delete b.parentMenu;delete b.ownerItem;if(d===true||(d!==false&&c.destroyMenu)){Ext.destroy(b)}}if(e){c.menu=Ext.menu.Manager.get(e);c.menu.ownerItem=c}else{c.menu=null}if(c.rendered&&!c.destroying&&a){a[c.menu?"addCls":"removeCls"](c.arrowCls)}},setHandler:function(b,a){this.handler=b||null;this.scope=a},setIcon:function(b){var a=this.iconEl,c=this.icon;if(a){a.src=b||Ext.BLANK_IMAGE_URL}this.icon=b;this.fireEvent("iconchange",this,c,b)},setIconCls:function(b){var d=this,a=d.iconEl,c=d.iconCls;if(a){if(d.iconCls){a.removeCls(d.iconCls)}if(b){a.addCls(b)}}d.iconCls=b;d.fireEvent("iconchange",d,c,b)},setText:function(d){var c=this,b=c.textEl||c.el,a=c.text;c.text=d;if(c.rendered){b.setHtml(d||"");c.ownerCt.updateLayout()}c.fireEvent("textchange",c,a,d)},getTipAttr:function(){return this.tooltipType=="qtip"?"data-qtip":"title"},clearTip:function(){if(Ext.quickTipsActive&&Ext.isObject(this.tooltip)){Ext.tip.QuickTipManager.unregister(this.itemEl)}},setTooltip:function(c,a){var b=this;if(b.rendered){if(!a){b.clearTip()}if(Ext.quickTipsActive&&Ext.isObject(c)){Ext.tip.QuickTipManager.register(Ext.apply({target:b.itemEl.id},c));b.tooltip=c}else{b.itemEl.dom.setAttribute(b.getTipAttr(),c)}}else{b.tooltip=c}return b},privates:{getFocusEl:function(){return this.itemEl}}},0,["menuitem"],["box","component","menuitem"],{box:true,component:true,menuitem:true},["widget.menuitem"],[[Ext.mixin.Queryable.prototype.mixinId||Ext.mixin.Queryable.$className,Ext.mixin.Queryable]],[Ext.menu,"Item",Ext.menu,"TextItem"],0));(Ext.cmd.derive("Ext.menu.CheckItem",Ext.menu.Item,{checkedCls:Ext.baseCSSPrefix+"menu-item-checked",uncheckedCls:Ext.baseCSSPrefix+"menu-item-unchecked",groupCls:Ext.baseCSSPrefix+"menu-group-icon",hideOnClick:false,checkChangeDisabled:false,ariaRole:"menuitemcheckbox",childEls:["checkEl"],showCheckbox:true,isMenuCheckItem:true,checkboxCls:Ext.baseCSSPrefix+"menu-item-checkbox",initComponent:function(){var a=this;a.checked=!!a.checked;Ext.menu.Item.prototype.initComponent.apply(this,arguments);Ext.menu.Manager.registerCheckable(a);if(a.group){if(a.initialConfig.hideOnClick!==false){a.hideOnClick=true}}},beforeRender:function(){var a=this;Ext.menu.Item.prototype.beforeRender.call(this);Ext.apply(a.renderData,{checkboxCls:a.checkboxCls,showCheckbox:a.showCheckbox})},afterRender:function(){var a=this;Ext.util.Renderable.prototype.afterRender.call(this);a.checked=!a.checked;a.setChecked(!a.checked,true);if(a.checkChangeDisabled){a.disableCheckChange()}},disableCheckChange:function(){var b=this,a=b.checkEl;if(a){a.addCls(b.disabledCls)}if(Ext.isIE8&&b.rendered){b.el.repaint()}b.checkChangeDisabled=true},enableCheckChange:function(){var b=this,a=b.checkEl;if(a){a.removeCls(b.disabledCls)}b.checkChangeDisabled=false},onClick:function(b){var a=this;if(!a.disabled&&!a.checkChangeDisabled&&!(a.checked&&a.group)){a.setChecked(!a.checked)}Ext.menu.Item.prototype.onClick.apply(this,[b])},onDestroy:function(){Ext.menu.Manager.unregisterCheckable(this);Ext.menu.Item.prototype.onDestroy.apply(this,arguments)},setChecked:function(d,b){var c=this,e=c.checkedCls,g=c.uncheckedCls,a=c.el;if(c.checked!==d&&(b||c.fireEvent("beforecheckchange",c,d)!==false)){if(a){if(d){a.addCls(e);a.removeCls(g)}else{a.addCls(g);a.removeCls(e)}}c.checked=d;Ext.menu.Manager.onCheckChange(c,d);if(!b){Ext.callback(c.checkHandler,c.scope||c,[c,d]);c.fireEvent("checkchange",c,d)}}}},0,["menucheckitem"],["box","component","menucheckitem","menuitem"],{box:true,component:true,menucheckitem:true,menuitem:true},["widget.menucheckitem"],0,[Ext.menu,"CheckItem"],0));(Ext.cmd.derive("Ext.menu.KeyNav",Ext.util.KeyNav,{constructor:function(a){var b=this;b.menu=a.target;Ext.util.KeyNav.prototype.constructor.apply(this,[Ext.apply({down:b.down,enter:b.enter,esc:b.escape,left:b.left,right:b.right,space:b.enter,tab:b.tab,up:b.up},a)])},down:function(b){var a=this,c=a.menu.focusedItem;if(c&&b.getKey()==b.DOWN&&a.isWhitelisted(c)){return true}a.focusNextItem(1)},enter:function(b){var c=this.menu,a=c.focusedItem;if(c.activeItem){c.onClick(b)}else{if(a&&a.isFormField){return true}}},escape:function(a){Ext.menu.Manager.hideAll()},focusNextItem:function(b){var a=this.menu,e=a.items,h=a.focusedItem,g=h?e.indexOf(h):-1,j=g+b,d=e.length,c=0,k;while(c<d&&j!==g){if(j<0){j=d-1}else{if(j>=d){j=0}}k=e.getAt(j);if(a.canActivateItem(k)){a.setActiveItem(k);break}j+=b;++c}},isWhitelisted:function(a){var b=Ext.FocusManager;return b&&b.isWhitelisted(a)},left:function(a){var b=this.menu,c=b.focusedItem;if(c&&this.isWhitelisted(c)){return true}if(b.parentMenu){b.hide();b.parentMenu.focus()}},right:function(c){var d=this.menu,g=d.focusedItem,a=d.activeItem,b;if(g&&this.isWhitelisted(g)){return true}if(a){b=d.activeItem.menu;if(b){a.expandMenu(0);b.setActiveItem(b.child(":focusable"))}}},tab:function(b){var a=this;if(b.shiftKey){a.up(b)}else{a.down(b)}},up:function(b){var a=this,c=a.menu.focusedItem;if(c&&b.getKey()==b.UP&&a.isWhitelisted(c)){return true}a.focusNextItem(-1)}},1,0,0,0,0,0,[Ext.menu,"KeyNav"],0));(Ext.cmd.derive("Ext.menu.Separator",Ext.menu.Item,{canActivate:false,focusable:false,hideOnClick:false,plain:true,separatorCls:Ext.baseCSSPrefix+"menu-item-separator",text:"&#160;",ariaRole:"separator",beforeRender:function(a,c){var b=this;Ext.menu.Item.prototype.beforeRender.call(this);b.addCls(b.separatorCls)}},0,["menuseparator"],["box","component","menuitem","menuseparator"],{box:true,component:true,menuitem:true,menuseparator:true},["widget.menuseparator"],0,[Ext.menu,"Separator"],0));(Ext.cmd.derive("Ext.menu.Menu",Ext.panel.Panel,{enableKeyNav:true,allowOtherMenus:false,ariaRole:"menu",floating:true,constrain:true,hidden:true,hideMode:"visibility",ignoreParentClicks:false,isMenu:true,showSeparator:true,minWidth:undefined,defaultMinWidth:120,defaultAlign:"tl-bl?",baseCls:Ext.baseCSSPrefix+"menu",_iconSeparatorCls:Ext.baseCSSPrefix+"menu-icon-separator",_itemCmpCls:Ext.baseCSSPrefix+"menu-item-cmp",layout:{type:"vbox",align:"stretchmax",overflowHandler:"Scroller"},initComponent:function(){var b=this,a=[Ext.baseCSSPrefix+"menu"],c=b.bodyCls?[b.bodyCls]:[],d=b.floating!==false;Ext.menu.Manager.register(b);if(b.plain){a.push(Ext.baseCSSPrefix+"menu-plain")}b.cls=a.join(" ");c.push(Ext.baseCSSPrefix+"menu-body",Ext.dom.Element.unselectableCls);b.bodyCls=c.join(" ");if(d){if(b.minWidth===undefined){b.minWidth=b.defaultMinWidth}}else{b.hidden=!!b.initialConfig.hidden;b.constrain=false}Ext.panel.Panel.prototype.initComponent.apply(this,arguments);Ext.override(b.getLayout(),{configureItem:b.configureItem})},initHierarchyEvents:Ext.emptyFn,getInherited:function(){var a=Ext.mixin.Inheritable.prototype.getInherited.call(this);a.hidden=this.hidden;return a},beforeRender:function(){Ext.panel.Panel.prototype.beforeRender.apply(this,arguments);if(!this.getSizeModel().width.shrinkWrap){this.layout.align="stretch"}},onBoxReady:function(){var b=this,a={click:b.onClick,mouseover:b.onMouseOver,scope:b},c=b._iconSeparatorCls;if(Ext.supports.Touch){a.pointerdown=b.onMouseOver;b.mon(Ext.GlobalEvents,"mousedown",b.onDocMouseDown,b)}Ext.panel.Panel.prototype.onBoxReady.apply(this,arguments);if(b.showSeparator){b.iconSepEl=b.body.insertFirst({role:"presentation",cls:c+" "+c+"-"+b.ui,html:"&#160;"})}b.mon(b.el,a);b.mouseMonitor=b.el.monitorMouseLeave(100,b.onMouseLeave,b);if(b.enableKeyNav){b.keyNav=new Ext.menu.KeyNav({target:b,keyMap:b.getKeyMap()})}},getRefOwner:function(){return this.ownerItem||this.ownerButton||Ext.mixin.Inheritable.prototype.getRefOwner.apply(this,arguments)},canActivateItem:function(a){return a&&!a.isDisabled()&&a.isVisible()&&(a.canActivate||!a.isMenuItem)},deactivateActiveItem:function(b){var c=this,d=c.activeItem,a=c.focusedItem;if(d){d.deactivate();if(!d.activated){delete c.activeItem}}if(a&&b){a.blur();delete c.focusedItem}},hide:function(){this.deactivateActiveItem(true);Ext.Component.prototype.hide.apply(this,arguments)},getItemFromEvent:function(d){var a=this,c=a.layout.getRenderTarget().dom,b=d.getTarget();while(b.parentNode!==c){b=b.parentNode;if(!b){return}}return Ext.getCmp(b.id)},lookupComponent:function(b){var a=this;if(typeof b=="string"){b=a.lookupItemFromString(b)}else{if(Ext.isObject(b)){b=a.lookupItemFromObject(b)}}b.minWidth=b.minWidth||a.minWidth;return b},lookupItemFromObject:function(b){var a=this;if(!b.isComponent){if(!b.xtype){b=Ext.create("Ext.menu."+(Ext.isBoolean(b.checked)?"Check":"")+"Item",b)}else{b=Ext.ComponentManager.create(b,b.xtype)}}if(b.isMenuItem){b.parentMenu=a}return b},lookupItemFromString:function(a){return(a=="separator"||a=="-")?new Ext.menu.Separator():new Ext.menu.Item({canActivate:false,hideOnClick:false,plain:true,text:a})},configureItem:function(c){var b=this.owner,e=Ext.baseCSSPrefix,d=b.ui,a,g;if(c.isMenuItem){c.setUI(d)}else{if(b.items.getCount()>1&&!c.rendered&&!c.dock){g=b._itemCmpCls;a=[g+" "+g+"-"+d];if(!b.plain&&(c.indent!==false||c.iconCls==="no-icon")){a.push(e+"menu-item-indent-"+d)}if(c.rendered){c.el.addCls(a)}else{c.cls=(c.cls||"")+" "+a.join(" ")}}}this.callParent(arguments)},onClick:function(d){var c=this,a=d.type,b;if(c.disabled){d.stopEvent();return}b=(a!=="keydown")?c.getItemFromEvent(d):c.activeItem;if(b&&b.isMenuItem){if(!b.menu||!c.ignoreParentClicks){b.onClick(d)}else{d.stopEvent()}}if(!b||b.disabled){b=undefined}c.fireEvent("click",c,b,d)},onDestroy:function(){var a=this;Ext.menu.Manager.unregister(a);a.parentMenu=a.ownerButton=null;if(a.rendered){a.el.un(a.mouseMonitor);Ext.destroy(a.keyNav);a.keyNav=null}Ext.container.Container.prototype.onDestroy.apply(this,arguments)},onDocMouseDown:function(a){if(!this.owns(a.target)){this.deactivateActiveItem()}},onMouseLeave:function(b){var a=this;a.deactivateActiveItem();if(a.disabled){return}a.fireEvent("mouseleave",a,b)},onMouseOver:function(g){var d=this,j=g.getRelatedTarget(),a=!d.el.contains(j),c=d.getItemFromEvent(g),b=d.parentMenu,h=d.ownerItem;if(a&&b){b.setActiveItem(h);h.cancelDeferHide();b.mouseMonitor.mouseenter()}if(d.disabled){return}if(c&&!c.activated){d.setActiveItem(c);if(c.activated&&c.expandMenu){c.expandMenu()}}if(a){d.fireEvent("mouseenter",d,g)}d.fireEvent("mouseover",d,c,g)},setActiveItem:function(b){var a=this;if(b&&(b!=a.activeItem)){a.deactivateActiveItem();if(a.canActivateItem(b)){if(b.activate){b.activate(true);if(b.activated){a.activeItem=b;a.focusedItem=b}}else{b.focus();a.focusedItem=b}}}},beforeShow:function(){var b=this,a;if(b.floating){b.savedMaxHeight=b.maxHeight;a=b.container.getViewSize().height;b.maxHeight=Math.min(b.maxHeight||a,a)}Ext.Component.prototype.beforeShow.apply(this,arguments)},afterShow:function(){var a=this;Ext.Component.prototype.afterShow.apply(this,arguments);if(a.floating){a.maxHeight=a.savedMaxHeight}},privates:{getFocusEl:function(){return this.focusedItem||this.items.items[0]}}},0,["menu"],["box","component","container","menu","panel"],{box:true,component:true,container:true,menu:true,panel:true},["widget.menu"],0,[Ext.menu,"Menu"],0));(Ext.cmd.derive("Ext.grid.filters.filter.Base",Ext.Base,{factoryConfig:{type:"grid.filter"},$configPrefixed:false,$configStrict:false,config:{itemDefaults:null,menuDefaults:{xtype:"menu"}},active:false,type:"string",dataIndex:null,menu:null,updateBuffer:500,isGridFilter:true,defaultRoot:"data",filterIdPrefix:"x-gridfilter",constructor:function(a){var b=this;b.initConfig(a);b.store=b.grid.store},destroy:function(){if(this.menu){this.menu.destroy()}},addStoreFilter:function(a){this.store.getFilters().add(a)},createFilter:function(a,b){a.id=this.getBaseIdPrefix();if(!a.property){a.property=this.column.dataIndex}if(!a.root){a.root=this.defaultRoot}if(b){a.id+="-"+b}return new Ext.util.Filter(a)},createMenu:function(){var a=this.getMenuConfig();this.menu=Ext.widget(a)},getBaseIdPrefix:function(){return this.filterIdPrefix+"-"+this.column.dataIndex},getMenuConfig:function(){return Ext.apply({},this.getMenuDefaults())},getStoreFilter:function(a){var b=this.getBaseIdPrefix();if(a){b+="-"+a}return this.store.getFilters().get(b)},removeStoreFilter:function(a){this.store.getFilters().remove(a)},setActive:function(d){var c=this,a=c.owner,b=a.activeFilterMenuItem,e;if(c.active!==d){c.active=d;e=c.store.getFilters();e.beginUpdate();if(d){c.activate()}else{c.deactivate()}e.endUpdate();if(b&&b.activeFilter===c){b.setChecked(d)}c.column[d?"addCls":"removeCls"](a.filterCls)}},showMenu:function(a){if(!this.menu){this.createMenu()}a.activeFilter=this;a.setMenu(this.menu,false);a.setChecked(this.active);a.setDisabled(this.disabled===true);if(this.active){this.activate(true)}},updateStoreFilter:function(a){this.store.getFilters().notify("endupdate")}},1,0,0,0,0,[[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable]],[Ext.grid.filters.filter,"Base"],0));(Ext.cmd.derive("Ext.grid.filters.filter.SingleFilter",Ext.grid.filters.filter.Base,{constructor:function(a){var d=this,c,b,e;Ext.grid.filters.filter.Base.prototype.constructor.apply(this,[a]);c=d.grid.stateful;e=d.value;b=d.getStoreFilter();if(b){d.active=true}else{if(c&&d.store.saveStatefulFilters){e=undefined}d.active=!!e;b=d.createFilter({operator:d.operator,value:e});if(d.active){d.addStoreFilter(b)}}d.filter=b},activate:function(a){if(a){this.activateMenu()}else{this.addStoreFilter(this.filter)}},deactivate:function(){this.removeStoreFilter(this.filter)},onFilterRemove:function(){if(!this.menu||this.active){this.active=false}}},1,0,0,0,0,0,[Ext.grid.filters.filter,"SingleFilter"],0));(Ext.cmd.derive("Ext.grid.filters.filter.Boolean",Ext.grid.filters.filter.SingleFilter,{type:"boolean",operator:"=",defaultValue:false,yesText:"Yes",noText:"No",createMenu:function(a){var c=this,d=Ext.id(),b={scope:c,click:c.onClick},e=c.getItemDefaults();Ext.grid.filters.filter.Base.prototype.createMenu.apply(this,arguments);c.menu.add([Ext.apply({text:c.yesText,filterKey:1,group:d,checked:!!c.defaultValue,listeners:b},e),Ext.apply({text:c.noText,filterKey:0,group:d,checked:!c.defaultValue,listeners:b},e)])},onClick:function(a){this.setValue(!!a.filterKey)},setValue:function(b){var a=this;a.filter.setValue(b);if(b!==undefined&&a.active){a.updateStoreFilter(a.filter)}else{a.setActive(true)}},activateMenu:Ext.emptyFn},0,0,0,0,["grid.filter.boolean"],0,[Ext.grid.filters.filter,"Boolean"],0));(Ext.cmd.derive("Ext.grid.filters.filter.TriFilter",Ext.grid.filters.filter.Base,{menuItems:["lt","gt","-","eq"],constructor:function(d){var j=this,g=false,a={},k,e,h,c,l,b;Ext.grid.filters.filter.Base.prototype.constructor.apply(this,[d]);k=j.grid.stateful;l=j.value;h=j.getStoreFilter("lt");e=j.getStoreFilter("gt");c=j.getStoreFilter("eq");if(h||e||c){g=j.active=true}else{if(k&&j.store.saveStatefulFilters){l=undefined}j.active=!!l}a.lt=h||j.createFilter({operator:"lt",value:(!g&&l&&l.lt)||null},"lt");a.gt=e||j.createFilter({operator:"gt",value:(!g&&l&&l.gt)||null},"gt");a.eq=c||j.createFilter({operator:"eq",value:(!g&&l&&l.eq)||null},"eq");j.filter=a;if(!g&&j.active){for(b in l){j.addStoreFilter(j.filter[b])}}},activate:function(d){var g=this,e=this.filter,a=g.fields,c,j,b,h;if(g.settingValue){return}for(b in e){c=e[b];j=a[b];h=c.getValue();if(h){h=g.convertValue(h,true);j.setValue(h);j.up("menuitem").setChecked(true,true);if(!d){g.addStoreFilter(c)}}}},deactivate:function(){var b=this.filter,c,a;if(!this.hasActiveFilter()||this.settingValue){return}this.settingValue=true;for(c in b){a=b[c];if(a.getValue()){this.removeStoreFilter(a)}}this.settingValue=false},hasActiveFilter:function(){var b=false,a=this.filter,c=this.store.getFilters();if(c.length){for(filter in a){if(c.map[this.getBaseIdPrefix()+"-"+filter]){b=true;break}}}return b},onFilterRemove:function(a){var b=this,c;if(!b.menu&&!b.hasActiveFilter()){b.active=false}else{if(b.menu){c={};c[a]=null;b.setValue(c)}}},setValue:function(m){var k=this,h=k.fields,b=k.filter,o=[],g=[],c=false,e=k.store.getFilters(),l,a,n,d,j;if(k.settingValue){return}k.settingValue=true;if("eq" in m){if(b.lt.getValue()){g.push(h.lt)}if(b.gt.getValue()){g.push(h.gt)}if(m.eq){n=k.convertValue(m.eq,false);o.push(h.eq);b.eq.setValue(n)}else{g.push(h.eq)}}else{if(b.eq.getValue()){g.push(h.eq)}if("lt" in m){if(m.lt){n=k.convertValue(m.lt,false);o.push(h.lt);b.lt.setValue(n)}else{g.push(h.lt)}}if("gt" in m){if(m.gt){n=k.convertValue(m.gt,false);o.push(h.gt);b.gt.setValue(n)}else{g.push(h.gt)}}}if(g.length||o.length){e.beginUpdate();if(g.length){for(d=0,j=g.length;d<j;d++){l=g[d];a=l.filter;l.setValue(null);a.setValue(null);k.removeStoreFilter(a)}}if(o.length){for(d=0,j=o.length;d<j;d++){k.addStoreFilter(o[d].filter)}c=true}e.endUpdate()}if(!c&&e.length){c=k.hasActiveFilter()}if(!c||!k.active){k.setActive(c)}k.settingValue=false}},1,0,0,0,0,0,[Ext.grid.filters.filter,"TriFilter"],0));(Ext.cmd.derive("Ext.grid.filters.filter.Date",Ext.grid.filters.filter.TriFilter,{type:"date",config:{fields:{lt:{text:"Before"},gt:{text:"After"},eq:{text:"On"}},pickerDefaults:{xtype:"datepicker",border:0}},itemDefaults:{xtype:"menucheckitem",selectOnFocus:true,width:125,menu:{layout:"auto",plain:true}},dateFormat:"m/d/Y",convertValue:function(a,b){if(b&&!Ext.isDate(a)){a=Ext.isDate(a)}else{if(!b&&Ext.isDate(a)){a=(+a)}}return a},createMenu:function(a){var j=this,k={scope:j,checkchange:j.onCheckChange},e,b,c,d,h,m,n,g,l;Ext.grid.filters.filter.Base.prototype.createMenu.apply(this,arguments);b=j.getItemDefaults();e=j.getFields();c=Ext.apply({minDate:j.minDate,maxDate:j.maxDate,format:j.dateFormat,listeners:{scope:j,select:j.onMenuSelect}},j.getPickerDefaults());j.fields={};for(d=0,h=j.menuItems.length;d<h;d++){m=j.menuItems[d];if(m!=="-"){g={menu:{items:[Ext.apply({itemId:m},c)]}};if(b){Ext.merge(g,b)}if(e){Ext.merge(g,e[m])}n=j.menu.add(g);l=j.fields[m]=n.down("datepicker");l.filter=j.filter[m];l.filterKey=m;n.on(k)}}},getPicker:function(a){return this.fields[a]},onCheckChange:function(d,c){var b=d.down("datepicker").filter,a;if(!c&&b.getValue()){a={};a[b.getOperator()]=null;this.setValue(a)}},onFilterRemove:function(b){var a={};a[b]=null;this.setValue(a);this.fields[b].up("menuitem").setChecked(false,true)},onMenuSelect:function(h,g){var c=this.fields,j=c[h.itemId],d=c.gt,b=c.lt,a=c.eq,e={};j.up("menuitem").setChecked(true,true);if(j===a){b.up("menuitem").setChecked(false,true);d.up("menuitem").setChecked(false,true)}else{a.up("menuitem").setChecked(false,true);if(j===d&&(+b.value<+g)){b.up("menuitem").setChecked(false,true)}else{if(j===b&&(+d.value>+g)){d.up("menuitem").setChecked(false,true)}}}e[j.filterKey]=g;this.setValue(e);h.up("menu").hide()}},0,0,0,0,["grid.filter.date"],0,[Ext.grid.filters.filter,"Date"],0));(Ext.cmd.derive("Ext.grid.filters.filter.List",Ext.grid.filters.filter.SingleFilter,{type:"list",operator:"in",itemDefaults:{checked:false,hideOnClick:false},idField:"id",labelField:"text",loadingText:"Loading...",loadOnShow:true,single:false,plain:true,destroy:function(){var b=this,a=b.optionsStore;if(a){if(b.autoStore){a.destroyStore()}else{a.un("unload",b.onLoad,b)}}Ext.grid.filters.filter.Base.prototype.destroy.call(this)},createMenu:function(b){var e=this,c=e.grid.store,d=e.optionsStore,a=e.options,h,g;Ext.grid.filters.filter.Base.prototype.createMenu.apply(this,arguments);h=e.menu;if(d){g=d.getData();if(!g.length){h.add({text:e.loadingText,iconCls:"loading-indicator"});d.on("load",e.createMenuStore,e,{single:true})}else{e.createMenuItems(d)}}else{if(a){e.createMenuStore(a)}else{if(c.getData().length){e.createMenuStore()}else{c.on("load",e.createMenuStore,h,{single:true})}}}},createMenuItems:function(m){var k=this,a=k.menu,g=m.getData(),j=g.length,l={checkchange:k.setValue,scope:k},b=k.getItemDefaults(),c,h,d,e;if(j){c=g.items;a.removeAll(true);h=k.single?Ext.id():null;for(e=0;e<j;e++){g=c[e].data;d=g[k.idField];a.add(Ext.apply({text:g[k.labelField],group:h,value:d,listeners:l},b))}k.loaded=true}},createMenuStore:function(c){var e=this,h=[],d,a,g,b;c=c||e.grid.store.collect(e.column.dataIndex,false,true)||[];for(d=0,a=c.length;d<a;d++){g=c[d];switch(Ext.typeOf(g)){case"array":h.push(g);break;case"object":h.push([g[e.idField],g[e.labelField]]);break;default:if(g!=null){h.push([g,g])}}}b=e.menu.store=new Ext.data.ArrayStore({fields:[e.idField,e.labelField],data:h});e.createMenuItems(b);e.loaded=true;e.autoStore=true},setValue:function(){var e=this,c=e.menu.items,g=[],d,a,b;for(d=0,a=c.length;d<a;d++){b=c.getAt(d);if(b.checked){g.push(b.value)}}e.filter.setValue(g);a=g.length;if(a&&e.active){e.updateStoreFilter(e.filter)}else{e.setActive(!!a)}},show:function(){if(this.loadOnShow&&!this.loaded&&!this.optionsStore.loading){this.optionsStore.load()}this.callParent()},activateMenu:function(){var e=this,c=e.menu.items,g=e.filter.getValue(),d,a,b;for(d=0,a=c.length;d<a;d++){b=c.getAt(d);if(g.indexOf(b.value)>-1){b.setChecked(true,true)}}}},0,0,0,0,["grid.filter.list"],0,[Ext.grid.filters.filter,"List"],0));(Ext.cmd.derive("Ext.grid.filters.filter.Number",Ext.grid.filters.filter.TriFilter,{type:"number",config:{fields:{gt:{iconCls:Ext.baseCSSPrefix+"grid-filters-gt",margin:"0 0 3px 0"},lt:{iconCls:Ext.baseCSSPrefix+"grid-filters-lt",margin:"0 0 3px 0"},eq:{iconCls:Ext.baseCSSPrefix+"grid-filters-eq",margin:0}}},itemDefaults:{xtype:"numberfield",emptyText:"Enter Number...",enableKeyEvents:true,hideEmptyLabel:false,labelSeparator:"",labelWidth:29,selectOnFocus:false},menuDefaults:{bodyPadding:3,showSeparator:false},convertValue:Ext.identityFn,createMenu:function(){var g=this,h={scope:g,keyup:{fn:g.onInputKeyUp,buffer:200},spin:{fn:g.onInputSpin,buffer:200},el:{click:g.stopFn}},a=g.getItemDefaults(),c=g.getFields(),j,b,e,k,l,d;Ext.grid.filters.filter.Base.prototype.createMenu.call(this);g.fields={};for(b=0,e=g.menuItems.length;b<e;b++){k=g.menuItems[b];if(k!=="-"){j=c[k];d={labelClsExtra:Ext.baseCSSPrefix+"grid-filters-icon "+j.iconCls};if(a){Ext.merge(d,a)}Ext.merge(d,j);delete d.iconCls;g.fields[k]=l=g.menu.add(d);l.filter=g.filter[k];l.filterKey=k;l.on(h)}}},onInputKeyUp:function(c,b){var a;if(b.getKey()===b.RETURN&&c.isValid()){b.stopEvent();this.hide()}a={};a[c.filterKey]=c.getValue();this.setValue(a)},onInputSpin:function(c,b){var a={};a[c.filterKey]=c.getValue();this.setValue(a)},stopFn:function(a){a.stopPropagation()}},0,0,0,0,["grid.filter.number","grid.filter.numeric"],0,[Ext.grid.filters.filter,"Number"],0));(Ext.cmd.derive("Ext.grid.filters.filter.String",Ext.grid.filters.filter.SingleFilter,{type:"string",operator:"like",itemDefaults:{xtype:"textfield",emptyText:"Enter Filter Text...",enableKeyEvents:true,hideEmptyLabel:false,iconCls:Ext.baseCSSPrefix+"grid-filters-find",labelSeparator:"",labelWidth:29,margin:0,selectOnFocus:true},menuDefaults:{bodyPadding:3,showSeparator:false},createMenu:function(){var b=this,a;Ext.grid.filters.filter.Base.prototype.createMenu.call(this);a=Ext.apply({},b.getItemDefaults());if(a.iconCls&&!("labelClsExtra" in a)){a.labelClsExtra=Ext.baseCSSPrefix+"grid-filters-icon "+a.iconCls}delete a.iconCls;b.inputItem=b.menu.add(a);b.inputItem.on({scope:b,keyup:{fn:b.onInputKeyUp,buffer:200},el:{click:function(c){c.stopPropagation()}}})},onInputKeyUp:function(d,c){var b=this,a=c.getKey();if(a===c.RETURN&&d.isValid()){c.stopEvent();b.menu.hide();return}b.setValue(d.getValue())},setValue:function(b){var a=this;if(a.inputItem){a.inputItem.setValue(b)}a.filter.setValue(b);if(b&&a.active){a.updateStoreFilter(a.filter)}else{a.setActive(!!b)}},activateMenu:function(){this.inputItem.setValue(this.filter.getValue())}},0,0,0,0,["grid.filter.string"],0,[Ext.grid.filters.filter,"String"],0));(Ext.cmd.derive("Ext.grid.filters.Filters",Ext.plugin.Abstract,{pluginId:"gridfilters",defaultFilterTypes:{"boolean":"boolean","int":"number",date:"date",number:"number"},filterCls:Ext.baseCSSPrefix+"grid-filters-filtered-column",menuFilterText:"Filters",showMenu:true,stateId:undefined,init:function(b){var c=this,a,d;c.grid=b;b.filters=c;if(c.grid.normalGrid){c.isLocked=true}b.clearFilters=c.clearFilters.bind(c);a=b.store;d=b.headerCt;d.on({scope:c,add:c.onAdd,menucreate:c.onMenuCreate});b.on({scope:c,beforedestroy:c.destroy,beforereconfigure:c.onBeforeReconfigure,reconfigure:c.onReconfigure});c.bindStore(a);if(b.stateful){a.statefulFilters=true}c.initColumns()},initColumns:function(){var c,a,b,e,d,g;b=this.grid.columnManager.getColumns();for(c=0,a=b.length;c<a;c++){e=b[c];d=e.filter;if(d&&!d.isGridFilter){if(!g){g=this.grid.store.getFilters();g.beginUpdate()}this.createColumnFilter(e)}}if(g){g.endUpdate()}},createColumnFilter:function(e){var g=this,a=e.filter,d={column:e,grid:g.grid,owner:g},h,b,c;if(Ext.isString(a)){d.type=a}else{Ext.apply(d,a)}if(!d.type){b=g.store.model;h=b&&b.getField(e.dataIndex);c=h&&h.type;d.type=(c&&g.defaultFilterTypes[c])||e.defaultFilterType||"string"}return e.filter=Ext.Factory.gridFilter(d)},onAdd:function(d,c,a){var b=c.filter;if(b&&!b.isGridFilter){this.createColumnFilter(c)}},onMenuCreate:function(b,a){a.on({beforeshow:this.onMenuBeforeShow,scope:this})},onMenuBeforeShow:function(g){var d=this,c,b,e,a;if(d.showMenu){if(!d.menuItems){d.menuItems={}}e=g.up("grid");a=e.id;c=d.menuItems[a];if(!c||c.isDestroyed){c=d.createMenuItem(g,a)}d.activeFilterMenuItem=c;b=d.getMenuFilter(e.headerCt);if(b){b.showMenu(c)}c.setVisible(!!b);d.sep.setVisible(!!b)}},createMenuItem:function(c,a){var b=this;b.sep=c.add("-");return b.menuItems[a]=c.add({checked:false,itemId:"filters",text:b.menuFilterText,listeners:{scope:b,checkchange:b.onCheckChange}})},destroy:function(){Ext.destroyMembers(this,"menuItem","sep");Ext.plugin.Abstract.prototype.destroy.call(this)},bindStore:function(a){var b=this;if(a){if(b.store){b.store.destroyStore();b.store.getFilters().un("remove",b.onFilterRemove,b)}b.local=!a.remoteFilter;a.getFilters().on("remove",b.onFilterRemove,b)}b.store=a},onFilterRemove:function(h,g){var b=g.items.length,a=this.grid.columnManager,c,e,d;for(c=0;c<b;c++){e=g.items[c];d=a.getHeaderByDataIndex(e.getProperty()).filter;if(!d.settingValue){d.onFilterRemove(e.getOperator())}}},getMenuFilter:function(a){return a.getMenu().activeHeader.filter},onCheckChange:function(c,d){var a=this.isLocked?c.up("grid"):this.grid,b=this.getMenuFilter(a.headerCt);b.setActive(d)},getHeaders:function(){return this.grid.view.headerCt.columnManager.getColumns()},isStateful:function(){return this.grid.stateful},addFilter:function(c){var h=this,a=h.grid,k=h.store,l=true,j,d,e,g,b,m;if(!Ext.isArray(c)){c=[c]}for(e=0,g=c.length;e<g;e++){b=c[e];j=b.dataIndex;if(b.value){l=false}if(d=a.columnManager.getHeaderByDataIndex(j)){m=d.filter;if(!m||(m&&!m.isGridFilter)){d.filter=Ext.apply(m||{},b)}else{Ext.destroy(m);d.filter=b}}}k.suppressNextFilter=l;h.initColumns();k.suppressNextFilter=false},addFilters:function(a){if(a){this.addFilter(a)}},getFilter:function(a){return this.filters.get(a)},clearFilters:function(b){var a=this.grid,e=a.columnManager.getColumns(),l=a.store,k=l.getAutoFilter(),d,c,h,j,g;if(b!==undefined){l.setAutoFilter(b)}for(h=0,j=e.length;h<j;h++){d=e[h];c=d.filter;if(c&&c.isGridFilter){if(!g){g=l.getFilters();g.beginUpdate()}c.setActive(false)}}if(g){g.endUpdate()}if(b!==undefined){l.setAutoFilter(k)}},onBeforeReconfigure:function(c,a,b){if(b){a.getFilters().beginUpdate()}this.reconfiguring=true},onReconfigure:function(c,a,b,e){var d=this;if(e!==a){d.bindStore(a)}if(b){d.initColumns();a.getFilters().endUpdate()}d.reconfiguring=false}},0,0,0,0,["plugin.gridfilters"],0,[Ext.grid.filters,"Filters"],0));(Ext.cmd.derive("Ext.grid.locking.HeaderContainer",Ext.grid.header.Container,{headerCtRelayEvents:["blur","focus","move","resize","destroy","beforedestroy","boxready","afterrender","render","beforerender","removed","hide","beforehide","show","beforeshow","enable","disable","added","deactivate","beforedeactivate","activate","beforeactivate","remove","add","beforeremove","beforeadd","afterlayout","menucreate","sortchange","columnschanged","columnshow","columnhide","columnmove","headertriggerclick","headercontextmenu","headerclick","columnresize","statesave","beforestatesave","staterestore","beforestaterestore"],constructor:function(b){var a=this,d=b.lockedGrid,c=b.normalGrid;a.lockable=b;Ext.Component.prototype.constructor.call(this);d.visibleColumnManager.rootColumns=c.visibleColumnManager.rootColumns=b.visibleColumnManager=a.visibleColumnManager=new Ext.grid.ColumnManager(true,d.headerCt,c.headerCt);d.columnManager.rootColumns=c.columnManager.rootColumns=b.columnManager=a.columnManager=new Ext.grid.ColumnManager(false,d.headerCt,c.headerCt);a.relayEvents(d.headerCt,a.headerCtRelayEvents);a.relayEvents(c.headerCt,a.headerCtRelayEvents)},getRefItems:function(){return this.lockable.lockedGrid.headerCt.getRefItems().concat(this.lockable.normalGrid.headerCt.getRefItems())},getGridColumns:function(){return this.lockable.lockedGrid.headerCt.getGridColumns().concat(this.lockable.normalGrid.headerCt.getGridColumns())},getColumnsState:function(){var b=this,a=b.lockable.lockedGrid.headerCt.getColumnsState(),c=b.lockable.normalGrid.headerCt.getColumnsState();return a.concat(c)},applyColumnsState:function(h){var p=this,e=p.lockable.lockedGrid,g=e.headerCt,n=p.lockable.normalGrid.headerCt,q=Ext.Array.toValueMap(g.items.items,"headerId"),j=Ext.Array.toValueMap(n.items.items,"headerId"),m=[],o=[],l=1,b=h.length,k,a,d,c;for(k=0;k<b;k++){c=h[k];d=q[c.id];a=d||j[c.id];if(a){if(a.applyColumnState){a.applyColumnState(c)}if(a.locked===undefined){a.locked=!!d}if(a.locked){m.push(a);if(!a.hidden&&typeof a.width=="number"){l+=a.width}}else{o.push(a)}}}if(m.length+o.length==g.items.getCount()+n.items.getCount()){g.removeAll(false);n.removeAll(false);g.add(m);n.add(o);e.setWidth(l)}}},1,0,["box","component","container","headercontainer"],{box:true,component:true,container:true,headercontainer:true},0,0,[Ext.grid.locking,"HeaderContainer"],0));(Ext.cmd.derive("Ext.grid.locking.View",Ext.Base,{alternateClassName:"Ext.grid.LockingView",isLockingView:true,loadMask:true,eventRelayRe:/^(beforeitem|beforecontainer|item|container|cell|refresh)/,constructor:function(a){var d=this,c,b;d.panel=a.panel;a.locked.viewConfig.bindStore=a.normal.viewConfig.bindStore=Ext.emptyFn;a.locked.viewConfig.beforeLayout=a.normal.viewConfig.beforeLayout=d.beforeLayout;d.lockedGrid=d.panel.lockedGrid=Ext.ComponentManager.create(a.locked);d.lockedView=c=d.lockedGrid.getView();if(d.lockedGrid.isTree){d.lockedView.animate=false;a.normal.store=c.store;a.normal.viewConfig.stripeRows=d.lockedView.stripeRows;a.normal.rowLines=d.lockedGrid.rowLines}d.normalGrid=d.panel.normalGrid=Ext.ComponentManager.create(a.normal);c.lockingPartner=b=d.normalView=d.normalGrid.getView();b.lockingPartner=c;d.loadMask=(a.loadMask!==undefined)?a.loadMask:d.loadMask;d.mixins.observable.constructor.call(d);d.relayEvents(c,Ext.view.Table.events);d.relayEvents(b,Ext.view.Table.events);b.on({scope:d,itemmouseleave:d.onItemMouseLeave,itemmouseenter:d.onItemMouseEnter});c.on({scope:d,itemmouseleave:d.onItemMouseLeave,itemmouseenter:d.onItemMouseEnter});d.panel.on({render:d.onPanelRender,scope:d});d.loadingText=b.loadingText;d.loadingCls=b.loadingCls;d.loadingUseMsg=b.loadingUseMsg;d.bindStore(b.dataSource,true,"dataSource")},beforeLayout:function(){var c=this.ownerCt.ownerLockable.view,b=c.lockedGrid.view,a=c.normalGrid.view;if(!c.relayingOperation){if(c.lockedGrid.isVisible()){if(b.refreshNeeded){b.doFirstRefresh(b.dataSource)}}if(a.refreshNeeded){a.doFirstRefresh(a.dataSource)}}},onPanelRender:function(){var c=this,b=c.loadMask,a={target:c.panel,msg:c.loadingText,msgCls:c.loadingCls,useMsg:c.loadingUseMsg,store:c.panel.store};c.el=c.panel.body;c.fireEvent("render",c);if(b){if(Ext.isObject(b)){a=Ext.apply(a,b)}c.loadMask=new Ext.LoadMask(a)}},getRefOwner:function(){return this.panel},getGridColumns:function(){var a=this.lockedGrid.headerCt.getVisibleGridColumns();return a.concat(this.normalGrid.headerCt.getVisibleGridColumns())},getEl:function(a){return this.getViewForColumn(a).getEl()},getViewForColumn:function(b){var a=this.lockedView,c;a.headerCt.cascade(function(d){if(d===b){c=true;return false}});return c?a:this.normalView},onItemMouseEnter:function(c,b){var g=this,d=g.lockedView,a=g.normalView,e;if(c.trackOver){if(c!==d){a=d}e=a.getNode(b);a.highlightItem(e)}},onItemMouseLeave:function(c,b){var e=this,d=e.lockedView,a=e.normalView;if(c.trackOver){if(c!==d){a=d}a.clearHighlight()}},relayFn:function(c,b){b=b||[];var a=this.lockedView;this.relayingOperation=true;a[c].apply(a,b);a=this.normalView;a[c].apply(a,b);this.relayingOperation=false},getSelectionModel:function(){return this.panel.getSelectionModel()},getStore:function(){return this.panel.store},bindStore:function(a,b,d){var c=this;c.mixins.storeholder.bindStore.apply(c,arguments);if(!b&&d!=="dataSource"){c.getSelectionModel().bindStore(a)}if(c.normalView.componentLayoutCounter){Ext.suspendLayouts();c.normalView.doFirstRefresh(a);c.lockedView.doFirstRefresh(a);Ext.resumeLayouts(true)}},getStoreListeners:function(){var a=this;return{refresh:a.onDataRefresh,replace:a.onReplace,add:a.onAdd,remove:a.onRemove,update:a.onUpdate,clear:a.refresh}},onDataRefresh:function(a,c,b){this.relayFn("onDataRefresh",arguments)},onReplace:function(a,c,b){this.relayFn("onReplace",arguments)},onAdd:function(a,c,b){this.relayFn("onAdd",arguments)},onRemove:function(a,c,b){this.relayFn("onRemove",arguments)},onUpdate:function(a,c,b){this.relayFn("onUpdate",arguments)},refresh:function(a,c,b){this.relayFn("refresh",arguments)},getNode:function(a){return this.normalView.getNode(a)},getRow:function(a){return this.normalView.getRow(a)},getCell:function(b,c){var a=this.getViewForColumn(c),d=a.getRow(b);return Ext.fly(d).down(c.getCellSelector())},indexOf:function(b){var a=this.lockedView.indexOf(b);if(!a){a=this.normalView.indexOf(b)}return a},focus:function(){var b=this.getSelectionModel().getCurrentPosition(),a=b?b.view:this.normalView;a.focus()},focusRow:function(a){this.normalView.focusRow(a)},focusCell:function(a){a.view.focusCell(a)},isVisible:function(a){return this.panel.isVisible(a)},getCellByPosition:function(d,b){var a=d.column,c=this.lockedGrid.getColumnManager().getColumns().length;if(a>=c){d=Ext.apply({},d);d.column-=c;return this.normalView.getCellByPosition(d,b)}else{return this.lockedView.getCellByPosition(d,b)}},getRecord:function(b){var a=this.lockedView.getRecord(b);if(!a){a=this.normalView.getRecord(b)}return a},scrollBy:function(){var a=this.normalView;a.scrollBy.apply(a,arguments)},addElListener:function(a,c,b){this.relayFn("addElListener",arguments)},refreshNode:function(){this.relayFn("refreshNode",arguments)},addRowCls:function(){this.relayFn("addRowCls",arguments)},removeRowCls:function(){this.relayFn("removeRowCls",arguments)},destroy:function(){var b=this,a=b.loadMask;this.isDestroyed=true;b.clearListeners();if(a&&a.bindStore){a.bindStore(null)}}},1,0,0,0,0,[[Ext.util.Observable.prototype.mixinId||Ext.util.Observable.$className,Ext.util.Observable],[Ext.util.StoreHolder.prototype.mixinId||Ext.util.StoreHolder.$className,Ext.util.StoreHolder]],[Ext.grid.locking,"View",Ext.grid,"LockingView"],function(){this.borrow(Ext.Component,["up"]);this.borrow(Ext.view.AbstractView,["doFirstRefresh","applyFirstRefresh"])}));(Ext.cmd.derive("Ext.grid.locking.Lockable",Ext.Base,{alternateClassName:"Ext.grid.Lockable",supportsOverflowX:"overflow-x" in document.documentElement.style,syncRowHeight:true,headerCounter:0,scrollDelta:40,lockedGridCls:Ext.baseCSSPrefix+"grid-inner-locked",normalGridCls:Ext.baseCSSPrefix+"grid-inner-normal",unlockText:"Unlock",lockText:"Lock",bothCfgCopy:["invalidateScrollerOnRefresh","hideHeaders","enableColumnHide","enableColumnMove","enableColumnResize","sortableColumns","multiColumnSort","columnLines","rowLines","variableRowHeight","numFromEdge","trailingBufferZone","leadingBufferZone","scrollToLoadBuffer"],normalCfgCopy:["verticalScroller","verticalScrollDock","verticalScrollerType","scroll"],lockedCfgCopy:[],determineXTypeToCreate:function(e){var c=this,h,d,b,g,a;if(c.subGridXType){h=c.subGridXType}else{if(!e){return"gridpanel"}d=this.getXTypes().split("/");b=d.length;g=d[b-1];a=d[b-2];if(a!=="tablepanel"){h=a}else{h=g}}return h},injectLockable:function(){this.lockable=true;this.hasView=true;var t=this,e=Ext.getScrollbarSize().height,c=t.store=Ext.StoreManager.lookup(t.store),j=t.getSelectionModel(),l,m,r,h,n,b,d,q,g,u,k,s=t.viewConfig,a=s&&s.loadMask,o=(a!==undefined)?a:t.loadMask,p=t.findPlugin("bufferedrenderer");l=t.constructLockableFeatures();t.features=null;m=t.constructLockablePlugins();t.plugins=m.topPlugins;r=Ext.apply({id:t.id+"-locked",isLocked:true,ownerGrid:t,ownerLockable:t,xtype:t.determineXTypeToCreate(true),store:c,scrollerOwner:false,animate:false,scroll:e?false:"vertical",selModel:j,border:false,cls:t.lockedGridCls,isLayoutRoot:function(){return this.floatedFromCollapse||t.normalGrid.floatedFromCollapse},features:l.lockedFeatures,plugins:m.lockedPlugins},t.lockedGridConfig);h=Ext.apply({id:t.id+"-normal",isLocked:false,ownerGrid:t,ownerLockable:t,xtype:t.determineXTypeToCreate(),store:c,scrollerOwner:false,selModel:j,border:false,cls:t.normalGridCls,isLayoutRoot:function(){return this.floatedFromCollapse||t.lockedGrid.floatedFromCollapse},features:l.normalFeatures,plugins:m.normalPlugins},t.normalGridConfig);t.addCls(Ext.baseCSSPrefix+"grid-locked");Ext.copyTo(h,t,t.bothCfgCopy,true);Ext.copyTo(r,t,t.bothCfgCopy,true);Ext.copyTo(h,t,t.normalCfgCopy,true);Ext.copyTo(r,t,t.lockedCfgCopy,true);for(n=0;n<t.normalCfgCopy.length;n++){delete t[t.normalCfgCopy[n]]}for(n=0;n<t.lockedCfgCopy.length;n++){delete t[t.lockedCfgCopy[n]]}t.addStateEvents(["lockcolumn","unlockcolumn"]);b=t.processColumns(t.columns,r);r.columns=b.locked;if(!r.columns.items.length){r.hidden=true}h.columns=b.normal;h.flex=1;r.viewConfig=t.lockedViewConfig||{};h.viewConfig=t.normalViewConfig||{};r.viewConfig.loadingUseMsg=false;r.viewConfig.loadMask=false;if(e&&!t.supportsOverflowX){r.viewConfig.style="border-bottom:"+e+"px solid #f6f6f6;"+(r.viewConfig.style||"");h.viewConfig.style="border-bottom:"+e+"px solid #f6f6f6;"+(r.viewConfig.style||"")}h.viewConfig.loadMask=false;Ext.applyIf(r.viewConfig,s);Ext.applyIf(h.viewConfig,s);if(!t.initialConfig.layout){t.layout={type:"hbox",align:"stretch"}}t.getLayout();if(t.layout.type==="border"){if(t.split){r.split=true}if(!h.title){r.header=false}if(!r.region){r.region="west"}if(!h.region){h.region="center"}t.addCls(Ext.baseCSSPrefix+"grid-locked-split")}if(!(t.layout instanceof Ext.layout.container.Box)){t.split=false}t.view=new Ext.grid.locking.View({loadMask:o,locked:r,normal:h,panel:t});g=t.lockedGrid.getView();u=t.normalGrid.getView();k=p?{}:{scroll:t.onLockedViewScroll,scope:t};if(e){t.lockedGrid.on({afterlayout:t.afterLockedViewLayout,scope:t});g.getOverflowStyle();if(!g.scrollFlags.y){k.mousewheel={fn:t.onLockedViewMouseWheel,element:"el",scope:t}}}g.on(k);k=p?{}:{scroll:t.onNormalViewScroll,scope:t};u.on(k);d=t.lockedGrid.headerCt;q=t.normalGrid.headerCt;t.headerCt=t.view.headerCt=new Ext.grid.locking.HeaderContainer(t);d.lockedCt=true;d.lockableInjected=true;q.lockableInjected=true;d.on({add:{buffer:1,scope:t,fn:t.onLockedHeaderAdd},columnshow:t.onLockedHeaderShow,columnhide:t.onLockedHeaderHide,sortchange:t.onLockedHeaderSortChange,columnresize:t.onLockedHeaderResize,scope:t});q.on({sortchange:t.onNormalHeaderSortChange,scope:t});t.modifyHeaderCt();t.items=[t.lockedGrid];if(t.split){t.addCls(Ext.baseCSSPrefix+"grid-locked-split");t.items[1]={xtype:"splitter"}}t.items.push(t.normalGrid);t.relayHeaderCtEvents(d);t.relayHeaderCtEvents(q);t.storeRelayers=t.relayEvents(c,["filterchange","groupchange"]);t.gridRelayers=t.relayEvents(t.normalGrid,["viewready"])},getLockingViewConfig:function(){return{xclass:"Ext.grid.locking.View",locked:this.lockedGrid,normal:this.normalGrid,panel:this}},processColumns:function(g,d){var n=this,h,k,e,m=new Ext.grid.header.Container(),l=[],c=[],b={itemId:"lockedHeaderCt",stretchMaxPartner:"^^>>#normalHeaderCt",items:l},j={itemId:"normalHeaderCt",stretchMaxPartner:"^^>>#lockedHeaderCt",items:c},p={lockedWidth:d.width||0,locked:b,normal:j},o=n.shrinkWrapLocked=!(d.width||d.flex),a;if(Ext.isObject(g)){Ext.applyIf(b,g);Ext.applyIf(j,g);a=Ext.apply({},g);delete a.items;Ext.apply(m,a);g=g.items}for(h=0,k=g.length;h<k;++h){e=g[h];if(!e.isComponent){e=m.lookupComponent(m.applyDefaults(e))}e.processed=true;if(e.locked||e.autoLock){if(o&&!e.hidden){p.lockedWidth+=n.getColumnWidth(e)||m.defaultWidth}l.push(e)}else{c.push(e)}if(!e.headerId){e.headerId=(e.initialConfig||e).id||("h"+(++n.headerCounter))}}n.fireEvent("processcolumns",n,l,c);m.destroy();if(o){d.width=(p.lockedWidth+=Ext.num(n.getSelectionModel().headerWidth,0)+(l.length?1:0))}return p},getColumnWidth:function(e){var b=e.width||0,d,a,c;if(!b&&e.isGroupHeader){d=e.items.items;a=d.length;for(c=0;c<a;c++){b+=this.getColumnWidth(d[c])}}return b},afterLockedViewLayout:function(){var g=this,e=g.lockedGrid.getView(),d=g.normalGrid.getView(),a=e.el,b=d.el,h=Ext.getScrollbarSize().height,c=(e.scrollFlags.x&&g.lockedGrid.headerCt.tooNarrow?h:0),j=(d.scrollFlags.x&&g.normalGrid.headerCt.tooNarrow?h:0);if(c!==j){if(c){if(g.supportsOverflowX){b.dom.style.overflowX="scroll";e.getOverflowEl().setStyle(e.getOverflowStyle())}else{b.dom.style.borderBottomWidth=c+"px";a.dom.style.borderBottomWidth="0px"}}else{if(g.supportsOverflowX){a.dom.style.overflowX="scroll";d.getOverflowEl().setStyle(d.getOverflowStyle())}else{a.dom.style.borderBottomWidth=j+"px";b.dom.style.borderBottomWidth="0px"}}}else{if(g.supportsOverflowX){e.getOverflowEl().dom.style.overflowX=j?"scroll":"";d.getOverflowEl().setStyle(d.getOverflowStyle())}else{b.dom.style.borderBottomWidth=a.dom.style.borderBottomWidth="0px"}}},onLockedViewMouseWheel:function(k){var d=this,a=-d.scrollDelta*k.getWheelDeltas().y,c=d.lockedGrid.getView(),g=c.el.dom,j,b,h;if(!d.ignoreMousewheel){if(g){j=c.getScrollY();b=j!==g.scrollHeight-g.clientHeight;h=j!==0}if((a<0&&h)||(a>0&&b)){k.stopEvent();j+=a;c.setScrollY(j);d.normalGrid.getView().setScrollY(j);d.onNormalViewScroll()}}},onLockedViewScroll:function(){var g=this,e=g.lockedGrid.getView(),d=g.normalGrid.getView(),c=e.getScrollY(),h=d.getScrollY(),a,b;if(h!==c){d.setScrollY(c);if(d.bufferedRenderer){b=e.body.dom;a=d.body.dom;a.style.position="absolute";a.style.top=b.style.top}}},onNormalViewScroll:function(){var d=this,c=d.lockedGrid.getView(),b=d.normalGrid.getView(),a=c.getScrollY(),g=b.getScrollY(),e;if(g!==a){c.setScrollY(g);if(b.bufferedRenderer){e=c.body;if(e.dom){e.dom.style.position="absolute";e.translate(null,b.bufferedRenderer.bodyTop)}}}},syncRowHeights:function(){var g=this,a,e=g.lockedGrid.getView(),b=g.normalGrid.getView(),h=e.all.slice(),d=b.all.slice(),c=h.length,j;if(d.length===c){for(a=0;a<c;a++){b.syncRowHeights(h[a],d[a])}j=b.getScrollY();b.setScrollY(j);e.setScrollY(j)}},modifyHeaderCt:function(){var a=this;a.lockedGrid.headerCt.getMenuItems=a.getMenuItems(a.lockedGrid.headerCt.getMenuItems,true);a.normalGrid.headerCt.getMenuItems=a.getMenuItems(a.normalGrid.headerCt.getMenuItems,false);a.lockedGrid.headerCt.showMenuBy=Ext.Function.createInterceptor(a.lockedGrid.headerCt.showMenuBy,a.showMenuBy);a.normalGrid.headerCt.showMenuBy=Ext.Function.createInterceptor(a.normalGrid.headerCt.showMenuBy,a.showMenuBy)},onUnlockMenuClick:function(){this.unlock()},onLockMenuClick:function(){this.lock()},showMenuBy:function(b,g){var e=this.getMenu(),c=e.down("#unlockItem"),d=e.down("#lockItem"),a=c.prev();if(g.lockable===false){a.hide();c.hide();d.hide()}else{a.show();c.show();d.show();if(!c.initialConfig.disabled){c.setDisabled(g.lockable===false)}if(!d.initialConfig.disabled){d.setDisabled(!g.isLockable())}}},getMenuItems:function(g,c){var h=this,j=h.unlockText,a=h.lockText,k=Ext.baseCSSPrefix+"hmenu-unlock",b=Ext.baseCSSPrefix+"hmenu-lock",e=h.onUnlockMenuClick.bind(h),d=h.onLockMenuClick.bind(h);return function(){var l=g.call(this);l.push("-",{itemId:"unlockItem",iconCls:k,text:j,handler:e,disabled:!c});l.push({itemId:"lockItem",iconCls:b,text:a,handler:d,disabled:c});return l}},syncLockedWidth:function(){var e=this,b=e.lockedGrid,d=b.view,c=d.el.dom,h=e.normalGrid,g=b.headerCt.getVisibleGridColumns().length,a=h.headerCt.getVisibleGridColumns().length;Ext.suspendLayouts();if(a){h.show();if(g){if(e.shrinkWrapLocked&&!b.headerCt.forceFit){delete b.flex;b.setWidth(b.headerCt.getTableWidth()+b.el.getBorderWidth("lr"))}b.addCls(e.lockedGridCls);b.show();if(e.split){e.child("splitter").show()}}else{b.getView().clearViewEl();b.hide();if(e.split){e.child("splitter").hide()}}d.el.setStyle(d.getOverflowStyle());e.ignoreMousewheel=d.scrollFlags.y}else{h.hide();c.style.borderBottomWidth="0";b.flex=1;delete b.width;b.removeCls(e.lockedGridCls);b.show();d.el.setStyle(h.view.getOverflowStyle());e.ignoreMousewheel=true}Ext.resumeLayouts(true);return[g,a]},onLockedHeaderAdd:function(){if(!this.ignoreAddLockedColumn){this.syncLockedWidth()}},onLockedHeaderResize:function(){this.syncLockedWidth()},onLockedHeaderHide:function(){this.syncLockedWidth()},onLockedHeaderShow:function(){this.syncLockedWidth()},onLockedHeaderSortChange:Ext.emptyFn,onNormalHeaderSortChange:Ext.emptyFn,lock:function(e,l,d){var h=this,g=h.normalGrid,b=h.lockedGrid,c=g.view,m=b.view,k=g.headerCt,j,a;e=e||k.getMenu().activeHeader;d=d||b.headerCt;a=e.ownerCt;if(!e.isLockable()){return}if(e.flex){e.width=e.getWidth();e.flex=null}Ext.suspendLayouts();c.blockRefresh=m.blockRefresh=true;a.remove(e,false);e.locked=true;h.ignoreAddLockedColumn=true;if(Ext.isDefined(l)){d.insert(l,e)}else{d.add(e)}h.ignoreAddLockedColumn=false;c.blockRefresh=m.blockRefresh=false;j=h.syncLockedWidth();if(j[0]){b.getView().refreshView()}if(j[1]){g.getView().refreshView()}Ext.resumeLayouts(true);h.fireEvent("lockcolumn",h,e)},unlock:function(d,k,c){var g=this,e=g.normalGrid,a=g.lockedGrid,b=e.view,l=a.view,j=a.headerCt,h;if(!Ext.isDefined(k)){k=0}d=d||j.getMenu().activeHeader;c=c||e.headerCt;Ext.suspendLayouts();b.blockRefresh=l.blockRefresh=true;d.ownerCt.remove(d,false);d.locked=false;c.insert(k,d);b.blockRefresh=l.blockRefresh=false;h=g.syncLockedWidth();if(h[0]){a.getView().refreshView()}if(h[1]){e.getView().refreshView()}Ext.resumeLayouts(true);g.fireEvent("unlockcolumn",g,d)},reconfigureLockable:function(b,c){var d=this,h=d.store,g=d.lockedGrid,e=d.normalGrid,a;Ext.suspendLayouts();if(c){g.reconfiguring=e.reconfiguring=true;g.headerCt.removeAll();e.headerCt.removeAll();c=d.processColumns(c,g);d.ignoreAddLockedColumn=true;g.headerCt.add(c.locked.items);d.ignoreAddLockedColumn=false;e.headerCt.add(c.normal.items);g.reconfiguring=e.reconfiguring=false;d.syncLockedWidth()}if(b&&b!==h){b=Ext.data.StoreManager.lookup(b);d.store=b;g.bindStore(b);a=g.view;a.store=b;if(!a.dataSource.isFeatureStore){a.dataSource=b}e.bindStore(b);a=e.view;a.store=b;if(!a.dataSource.isFeatureStore){a.dataSource=b}d.view.store=b;d.view.bindStore(b,false,"dataSource")}else{g.getView().refreshView();e.getView().refreshView()}Ext.resumeLayouts(true)},constructLockableFeatures:function(){var e=this.features,c,d,g,h,b=0,a;if(e){if(!Ext.isArray(e)){e=[e]}g=[];h=[];a=e.length;for(;b<a;b++){c=e[b];if(!c.isFeature){c=Ext.create("feature."+c.ftype,c)}switch(c.lockableScope){case"locked":g.push(c);break;case"normal":h.push(c);break;default:c.lockableScope="both";g.push(c);h.push(d=c.clone());d.lockingPartner=c;c.lockingPartner=d}}}return{normalFeatures:h,lockedFeatures:g}},constructLockablePlugins:function(){var c=this.plugins,h,b,a,k,l,e,g=0,j,m,d;if(c){if(!Ext.isArray(c)){c=[c]}k=[];l=[];e=[];j=c.length;for(;g<j;g++){h=c[g];if(h.init){m=h.lockableScope}else{d=h.ptype?Ext.ClassManager.getByAlias(("plugin."+h.ptype)):Ext.ClassManager.get(h.xclass);m=d.prototype.lockableScope}switch(m){case"both":l.push(a=h.clonePlugin());e.push(b=h.clonePlugin());a.lockingPartner=b;b.lockingPartner=a;Ext.destroy(h);break;case"locked":l.push(h);break;case"normal":e.push(h);break;default:k.push(h)}}}return{topPlugins:k,normalPlugins:e,lockedPlugins:l}},destroyLockable:function(){Ext.destroy(this.view,this.headerCt)}},0,0,0,0,0,0,[Ext.grid.locking,"Lockable",Ext.grid,"Lockable"],function(){this.borrow(Ext.Component,["constructPlugin"])}));(Ext.cmd.derive("Ext.grid.plugin.BufferedRenderer",Ext.AbstractPlugin,{isBufferedRenderer:true,lockableScope:"both",numFromEdge:2,trailingBufferZone:10,leadingBufferZone:20,synchronousRender:true,scrollToLoadBuffer:200,viewSize:100,rowHeight:21,position:0,lastScrollDirection:1,bodyTop:0,scrollHeight:0,init:function(c){var d=this,a=c.view,b={scroll:d.onViewScroll,resize:d.onViewResize,refresh:d.onViewRefresh,columnschanged:d.checkVariableRowHeight,scope:d,destroyable:true};if(c.isTree||c.ownerLockable&&c.ownerLockable.isTree){a.blockRefresh=false;a.loadMask=true}if(a.positionBody){b.refresh=d.onViewRefresh}d.grid=c;d.view=a;d.isRTL=a.getInherited().rtl;a.bufferedRenderer=d;a.preserveScrollOnRefresh=true;a.animate=false;d.bindStore(a.dataSource);if(a.hasOwnProperty("rowHeight")){d.rowHeight=a.rowHeight}d.position=0;d.gridListeners=c.on("reconfigure",d.onReconfigure,d);d.viewListeners=a.on(b)},checkVariableRowHeight:function(){var b=this,a=b.grid;b.variableRowHeight=b.view.hasVariableRowHeight();if(a.ownerLockable){a.ownerLockable.syncRowHeight=b.variableRowHeight}},bindStore:function(c){var d=this,b=d.view,e=b.dataSource,a=e&&e.isFeatureStore;if(a===c.isFeatureStore){if(d.store){d.unbindStore()}d.storeListeners=c.on({scope:d,groupchange:d.onStoreGroupChange,clear:d.onStoreClear,destroyable:true});d.store=c}if(d.view.componentLayout.layoutCount){d.onViewResize(d.view,0,d.view.getHeight())}},onReconfigure:function(b,a){if(a&&a!==this.store){this.bindStore(a)}},unbindStore:function(){this.storeListeners.destroy();this.store=null},onStoreClear:function(){var b=this,a=b.view;if(a.rendered&&!b.store.isDestroyed){if(b.scrollTop!==0){b.bodyTop=b.scrollTop=b.position=b.scrollHeight=0;b.view.setScrollY(0)}b.lastScrollDirection=b.scrollOffset=null;if(!a.hasOwnProperty("rowHeight")){delete b.rowHeight}}},onStoreGroupChange:function(a){var b=this;delete b.rowHeight;b.stretchView(b.view,b.getScrollHeight())},onViewRefresh:function(){var c=this,a=c.view,d=c.scrollHeight,b;c.checkVariableRowHeight();if(c.variableRowHeight&&!a.componentLayoutCounter){a.on({boxready:c.onViewRefresh,scope:c,single:true});return}if(!a.hasOwnProperty("rowHeight")&&a.all.getCount()){delete c.rowHeight}b=c.getScrollHeight();if(b!=d){c.stretchView(a,b)}if(c.refreshing){return}if(c.scrollTop!==a.getScrollY()){c.onViewScroll()}else{if(!c.hasOwnProperty("bodyTop")){c.bodyTop=a.all.startIndex*c.rowHeight;a.setScrollY(c.bodyTop)}c.setBodyTop(c.bodyTop);if(a.all.getCount()){Ext.on({idle:function(){if(!a.isDestroyed){c.onViewResize(a,null,a.getHeight())}},single:true})}}},onViewResize:function(c,e,a,b,h){var g=this,d;g.tableTopBorderWidth=c.body.getBorderWidth("t");if(!h||a!==h){d=Math.ceil(a/g.rowHeight)+g.trailingBufferZone+g.leadingBufferZone;g.viewSize=g.setViewSize(d);g.viewClientHeight=c.el.dom.clientHeight}},stretchView:function(b,a){var e=this,d=(e.store.isBufferedStore?e.store.getTotalCount():e.store.getCount()),c=b.getTargetEl(),g;if(e.scrollTop>a){e.position=e.scrollTop=a-b.body.dom.offsetHeight;e.view.setScrollY(e.scrollTop)}if(e.bodyTop>a){b.body.translate(null,e.bodyTop=e.position)}if(b.scrollManager){b.scrollManager.scroller.setSize({x:b.headerCt.getTableWidth(),y:a});b.scrollManager.refresh()}if(!b.scrollManager||Ext.supports.touchScroll===1){if(!e.stretcher){c=b.getTargetEl();if(b.refreshCounter){b.fixedNodes++}g={style:{width:"1px",height:"1px",marginTop:(a-1)+"px",position:"absolute"}};g.style[e.isRTL?"right":"left"]=0;e.stretcher=c.createChild(g,c.dom.firstChild)}if(e.hasOwnProperty("viewSize")&&d<=e.viewSize){e.stretcher.dom.style.display="none"}else{e.stretcher.dom.style.marginTop=(a-1)+"px";e.stretcher.dom.style.display=""}}},setViewSize:function(g){if(g!==this.viewSize){this.scrollTop=this.view.getScrollY();var e=this,j=e.store,h=e.view,k=h.all,b=k.getCount(),a,c,d=e.view.lockingPartner&&e.view.lockingPartner.bufferedRenderer;e.viewSize=g;if(j.isBufferedStore){j.setViewSize(g)}if(b){a=h.all.startIndex;c=Math.min(a+g-1,(j.isBufferedStore?j.getTotalCount():j.getCount())-1);if(!(a===k.startIndex&&c===k.endIndex)){if(d){d.disable()}h.clearViewEl(true);e.renderRange(a,c);if(d){d.enable()}}}}return g},getViewRange:function(){var b=this,c=b.view.all,a=b.store,d=0;if(c.getCount()){d=c.startIndex}else{if(a.isBufferedStore){if(!a.currentPage){a.currentPage=1}d=c.startIndex=(a.currentPage-1)*(a.pageSize||1);a.currentPage=1}}if(a.data.getCount()){return a.getRange(d,d+b.viewSize-1)}else{return[]}},onReplace:function(j,k,b,d){var g=this,h=g.view,l=h.all,a=l.getCount(),e=j.getCount(),c=l.first(true);if(!a||k<=l.endIndex||(a<g.viewSize&&d.length>b.length)||e<a){g.refreshView();a=l.getCount();if(d.length<b.length){e=j.isBufferedStore?j.getTotalCount():e;if(l.endIndex===e-1&&a<g.viewSize&&a<e){l.scroll(j.getRange(Math.max(0,e-g.viewSize),l.startIndex-1),-1,0);if(e>g.viewSize){g.setBodyTop(g.bodyTop-c.offsetTop)}}if(e<=g.viewSize){if(g.stretcher){g.setBodyTop(0);g.stretcher.dom.style.display="none"}}else{if(g.bodyTop+h.body.dom.offsetHeight-1>g.scrollHeight){g.setBodyTop(g.scrollHeight-(h.body.dom.offsetHeight-1))}}}}else{g.refreshing=true;g.onViewRefresh();g.refreshing=true}},scrollTo:function(m,d,q,s){var j=this,l=j.view,r=l.el.dom,n=j.store,k=n.isBufferedStore?n.getTotalCount():n.getCount(),h,b,g,a,p,c,o,e;if((c=l.dataSource.groupingFeature)&&(c.collapsible!==false)){m=Math.min(Math.max(m,0),l.store.getCount()-1);e=l.store.getAt(m);o=c.getGroup(e);if(o.isCollapsed){c.expand(o.getGroupKey());k=n.isBufferedStore?n.getTotalCount():n.getCount()}m=c.indexOf(e)}else{m=Math.min(Math.max(m,0),k-1)}h=Math.max(Math.min(m-(Math.floor((j.leadingBufferZone+j.trailingBufferZone)/2)),k-j.viewSize+1),0);p=Math.max(h*j.rowHeight-j.tableTopBorderWidth,0);b=Math.min(h+j.viewSize-1,k-1);n.getRange(h,b,{callback:function(u,v,t){j.renderRange(v,t,true);g=n.data.getRange(m,m+1)[0];a=l.getNode(g);l.body.translate(null,j.bodyTop=p);j.position=j.scrollTop=p=Math.min(Math.max(0,p-l.body.getOffsetsTo(a)[1]),r.scrollHeight-r.clientHeight);l.setScrollY(p);if(Ext.isIE){l.setScrollY(p)}if(d){l.selModel.select(g)}if(q){q.call(s||j,m,g)}}})},onViewScroll:function(){var g=this,c=g.store,a=(c.isBufferedStore?c.getTotalCount():c.getCount()),e,j,h=g.scrollTop=g.view.getScrollY(),b=false,d=g.view.lockingPartner&&g.view.lockingPartner.bufferedRenderer;if(!(g.disabled||a<g.viewSize)){e=h-g.position;j=e>0?1:-1;if(Math.abs(e)>=20||(j!==g.lastScrollDirection)){g.lastScrollDirection=j;b=g.handleViewScroll(g.lastScrollDirection)}}if(!b){if(d&&d.scrollTop!==h){d.view.setScrollY(d.position=h)}}},handleViewScroll:function(h){var e=this,g=e.view.all,a=e.store,j=e.viewSize,c=(a.isBufferedStore?a.getTotalCount():a.getCount())-1,d,b;if(h==-1){if(g.startIndex){if(e.topOfViewCloseToEdge()){d=Math.max(0,e.getLastVisibleRowIndex()+e.trailingBufferZone-j)}}}else{if(g.endIndex<c){if(e.bottomOfViewCloseToEdge()){d=Math.max(0,e.getFirstVisibleRowIndex()-e.trailingBufferZone)}}}if(d!=null){b=Math.min(d+j-1,c);if(e.variableRowHeight&&b===g.endIndex&&b<c){b++;e.viewSize=j++;if(a.isBufferedStore){a.setViewSize(e.viewSize)}}if(d!==g.startIndex||b!==g.endIndex){e.renderRange(d,b);return true}}},bottomOfViewCloseToEdge:function(){var a=this;if(a.variableRowHeight){return a.bodyTop+a.view.body.dom.offsetHeight<a.scrollTop+a.view.lastBox.height+(a.numFromEdge*a.rowHeight)}else{return(a.view.all.endIndex-a.getLastVisibleRowIndex())<a.numFromEdge}},topOfViewCloseToEdge:function(){var a=this;if(a.variableRowHeight){return a.bodyTop>a.scrollTop-(a.numFromEdge*a.rowHeight)}else{return(a.getFirstVisibleRowIndex()-a.view.all.startIndex)<a.numFromEdge}},refreshView:function(g){var c=this,e=c.view.all,a=c.store,b=(a.isBufferedStore?a.getTotalCount():a.getCount())-1,d;g=Math.max(0,Math.min(g==null?e.startIndex:g,b-(c.viewSize-c.leadingBufferZone)+1));d=Math.min(e.startIndex+c.viewSize-1,b);a.getRange(g,d,{callback:c.doRefreshView,scope:c})},doRefreshView:function(d,h,c,k){var e=this,g=e.view,j=g.all,a=j.getCount(),b;if(g.refreshCounter){g.refreshing=e.refreshing=true;g.clearViewEl(true);if(d.length){b=g.doAdd(d,h);g.refreshSize(j.getCount()!==a);g.fireEvent("refresh",g,d)}g.selModel.onLastFocusChanged(null,g.selModel.lastFocused,true);g.refreshNeeded=g.refreshing=e.refreshing=false}else{g.refresh()}},renderRange:function(g,a,e){var c=this,d=c.view.all,b=c.store;if(!(g===d.startIndex&&a===d.endIndex)){if(b.rangeCached(g,a)){c.cancelLoad();if(c.synchronousRender||e){c.onRangeFetched(null,g,a)}else{if(!c.renderTask){c.renderTask=new Ext.util.DelayedTask(c.onRangeFetched,c,null,false)}c.renderTask.delay(1,null,null,[null,g,a])}}else{c.attemptLoad(g,a)}}},onRangeFetched:function(l,d,c,b,m){var t=this,k=t.view,a,j=k.all,e,s=0,p,g,h=t.view.lockingPartner&&t.view.lockingPartner.bufferedRenderer,q,r,o,n=t.variableRowHeight;if(k.isDestroyed){return}if(l){t.scrollTop=t.view.getScrollY()}else{l=t.store.getRange(d,c);if(!l){return}}if(n){p=t.scrollTop-t.rowHeight*(t.scrollTop<t.position?t.leadingBufferZone:t.trailingBufferZone)}else{p=d*t.rowHeight-t.tableTopBorderWidth}if(d<j.startIndex&&c>j.endIndex){r=j.startIndex-d;k.clearViewEl(true);q=k.doAdd(l,d);k.fireEvent("itemadd",l,d,q);for(o=0;o<r;o++){s-=q[o].offsetHeight}t.setBodyTop(t.bodyTop+s);return}if(t.teleported||d>j.endIndex||c<j.startIndex){k.clearViewEl(true);g=p;t.teleported=false}if(!j.getCount()){q=k.doAdd(l,d);k.fireEvent("itemadd",l,d,q)}else{if(c>j.endIndex){e=Math.max(d-j.startIndex,0);if(n){s=j.item(j.startIndex+e,true).offsetTop}j.scroll(Ext.Array.slice(l,j.endIndex+1-d),1,e,d,c);if(n){g=t.bodyTop+s}else{g=p}}else{e=Math.max(j.endIndex-c,0);a=j.startIndex;j.scroll(Ext.Array.slice(l,0,j.startIndex-d),-1,e,d,c);if(n){g=t.bodyTop-j.item(a,true).offsetTop;if(!j.startIndex){if(g){k.setScrollY(t.position=(t.scrollTop-=g));g=0}}else{if(g<0){s=j.startIndex*t.rowHeight;k.setScrollY(t.position=(t.scrollTop+=s));g=t.bodyTop+s}}}else{g=p}}}t.position=t.scrollTop;g=Math.max(Math.floor(g),0);if(k.positionBody){t.setBodyTop(g)}if(h&&!h.disabled&&!m){h.onRangeFetched(null,d,c,b,true);if(h.bodyTop!==g){h.setBodyTop(g)}if(h.scrollTop!==t.scrollTop){h.view.setScrollY(h.scrollTop=h.position=t.scrollTop)}}},setBodyTop:function(d){var e=this,b=e.view,c=e.store,a=b.body;a.translate((e.isRTL&&Ext.supports.xOriginBug&&b.scrollFlags.y)?Ext.getScrollbarSize().width:null,e.bodyTop=d);if(e.variableRowHeight){if(b.all.endIndex===(c.isBufferedStore?c.getTotalCount():c.getCount())-1){e.stretchView(b,e.bodyTop+a.dom.offsetHeight-1)}else{if(e.bodyTop+a.dom.offsetHeight-1>e.scrollHeight){e.stretchView(b,e.scrollHeight+=((c.isBufferedStore?c.getTotalCount():c.getCount())-b.all.endIndex)*e.rowHeight)}}}},getFirstVisibleRowIndex:function(l,c,b,g){var h=this,j=h.view,n=j.all,a=n.elements,d=h.viewClientHeight,e,m,k=h.bodyTop;if(n.getCount()&&h.variableRowHeight){if(!arguments.length){l=n.startIndex;c=n.endIndex;b=h.scrollTop;g=b+d;if(k>g||k+j.body.dom.offsetHeight<b){h.teleported=true;return Math.floor(h.scrollTop/h.rowHeight)}e=l+Math.min(h.numFromEdge+((h.lastScrollDirection===-1)?h.leadingBufferZone:h.trailingBufferZone),Math.floor((c-l)/2))}else{e=l+Math.floor((c-l)/2)}m=k+a[e].offsetTop;if(m+a[e].offsetHeight<b){return h.getFirstVisibleRowIndex(e+1,c,b,g)}if(m<=b){return e}else{if(e!==l){return h.getFirstVisibleRowIndex(l,e-1,b,g)}}}return Math.floor(h.scrollTop/h.rowHeight)},getLastVisibleRowIndex:function(m,c,b,g){var j=this,k=j.view,o=k.all,a=o.elements,d=j.viewClientHeight,e,n,h,l=j.bodyTop;if(o.getCount()&&j.variableRowHeight){if(!arguments.length){m=o.startIndex;c=o.endIndex;b=j.scrollTop;g=b+d;if(l>g||l+k.body.dom.offsetHeight<b){j.teleported=true;return Math.floor(j.scrollTop/j.rowHeight)+Math.ceil(d/j.rowHeight)}e=c-Math.min(j.numFromEdge+((j.lastScrollDirection===1)?j.leadingBufferZone:j.trailingBufferZone),Math.floor((c-m)/2))}else{e=m+Math.floor((c-m)/2)}n=l+a[e].offsetTop;if(n>g){return j.getLastVisibleRowIndex(m,e-1,b,g)}h=n+a[e].offsetHeight;if(h>=g){return e}else{if(e!==c){return j.getLastVisibleRowIndex(e+1,c,b,g)}}}return j.getFirstVisibleRowIndex()+Math.ceil(d/j.rowHeight)},getScrollHeight:function(g){var h=this,a=h.view,j=a.all,c=h.store,d=c.isBufferedStore?c.getTotalCount():c.getCount(),b,e;if(!d){return 0}if(!h.hasOwnProperty("rowHeight")){if(b=j.getCount()){h.rowHeight=h.variableRowHeight?Math.floor(a.body.dom.clientHeight/b):j.first(true).offsetHeight}}e=Math.floor(d*h.rowHeight);if(!g){if(e&&(j.endIndex===d-1)){e=Math.max(e,h.bodyTop+a.body.dom.offsetHeight-1)}}return h.scrollHeight=e},attemptLoad:function(c,a){var b=this;if(b.scrollToLoadBuffer){if(!b.loadTask){b.loadTask=new Ext.util.DelayedTask(b.doAttemptLoad,b,[])}b.loadTask.delay(b.scrollToLoadBuffer,b.doAttemptLoad,b,[c,a])}else{b.store.getRange(c,a,{callback:b.onRangeFetched,scope:b,fireEvent:false})}},cancelLoad:function(){if(this.loadTask){this.loadTask.cancel()}},doAttemptLoad:function(b,a){this.store.getRange(b,a,{callback:this.onRangeFetched,scope:this,fireEvent:false})},destroy:function(){var b=this,a=b.view;if(a&&a.el){a.un("scroll",b.onViewScroll,b)}Ext.destroy(b.viewListeners,b.storeListeners,b.gridListeners)}},0,0,0,0,["plugin.bufferedrenderer"],0,[Ext.grid.plugin,"BufferedRenderer"],function(a){if(Ext.supports.Touch){a.prototype.leadingBufferZone=a.prototype.trailingBufferZone=2;a.prototype.numFromEdge=1}}));(Ext.cmd.derive("Ext.grid.plugin.Editing",Ext.plugin.Abstract,{clicksToEdit:2,triggerEvent:undefined,relayedEvents:["beforeedit","edit","validateedit","canceledit"],defaultFieldUI:"default",defaultFieldXType:"textfield",editStyle:"",constructor:function(a){var b=this;Ext.plugin.Abstract.prototype.constructor.apply(this,arguments);b.mixins.observable.constructor.call(b);b.on("edit",function(c,d){b.fireEvent("afteredit",c,d)})},init:function(a){var b=this;b.grid=a;b.view=a.view;b.initEvents();b.mon(a,{beforereconfigure:b.onBeforeReconfigure,reconfigure:b.onReconfigure,scope:b,beforerender:{fn:b.onReconfigure,single:true,scope:b}});a.relayEvents(b,b.relayedEvents);if(b.grid.ownerLockable){b.grid.ownerLockable.relayEvents(b,b.relayedEvents)}a.isEditable=true;a.editingPlugin=a.view.editingPlugin=b},resolveListenerScope:function(b){var a=this.grid;return a?a.resolveListenerScope(b):Ext.util.Observable.prototype.resolveListenerScope.apply(this,[b])},onBeforeReconfigure:function(){this.reconfiguring=true},onReconfigure:function(){this.initFieldAccessors(this.grid.getTopLevelColumnManager().getColumns());delete this.reconfiguring},destroy:function(){var b=this,a=b.grid;Ext.destroy(b.keyNav);b.clearListeners();if(a){a.editingPlugin=a.view.editingPlugin=b.grid=b.view=b.editor=b.keyNav=null}},getEditStyle:function(){return this.editStyle},initFieldAccessors:function(a){if(a.isGroupHeader){a=a.getGridColumns()}else{if(!Ext.isArray(a)){a=[a]}}var d=this,g,e=a.length,b;for(g=0;g<e;g++){b=a[g];if(!b.getEditor){b.getEditor=function(c,h){return d.getColumnField(this,h)}}if(!b.hasEditor){b.hasEditor=function(){return d.hasColumnField(this)}}if(!b.setEditor){b.setEditor=function(c){d.setColumnField(this,c)}}}},removeFieldAccessors:function(a){if(a.isGroupHeader){a=a.getGridColumns()}else{if(!Ext.isArray(a)){a=[a]}}var e,d=a.length,b;for(e=0;e<d;e++){b=a[e];b.getEditor=b.hasEditor=b.setEditor=b.field=b.editor=null}},getColumnField:function(c,a){var b=this,d=c.field;if(!(d&&d.isFormField)){d=c.field=b.createColumnField(c,a)}if(d&&d.ui==="default"&&!d.hasOwnProperty("ui")){d.ui=b.defaultFieldUI}return d},hasColumnField:function(a){return !!(a.field&&a.field.isComponent)},setColumnField:function(a,b){a.field=b;a.field=this.createColumnField(a)},createColumnField:function(c,a){var d=c.field,b;if(!d&&c.editor){d=c.editor;c.editor=null}if(!d&&a){d=a}if(d){b=c.dataIndex;if(d.isComponent){d.column=c}else{if(Ext.isString(d)){d={name:b,xtype:d,column:c}}else{d=Ext.apply({name:b,column:c},d)}d=Ext.ComponentManager.create(d,this.defaultFieldXType)}d.dataIndex=b;d.isEditorComponent=true;c.field=d}return d},initEvents:function(){var a=this;a.initEditTriggers();a.initCancelTriggers()},initCancelTriggers:Ext.emptyFn,initEditTriggers:function(){var b=this,a=b.view;if(b.triggerEvent=="cellfocus"){b.mon(a,"cellfocus",b.onCellFocus,b)}else{if(b.triggerEvent=="rowfocus"){b.mon(a,"rowfocus",b.onRowFocus,b)}else{if(a.getSelectionModel().isCellModel){a.onCellFocus=b.beforeViewCellFocus.bind(b)}b.mon(a,b.triggerEvent||("cell"+(b.clicksToEdit===1?"click":"dblclick")),b.onCellClick,b)}}b.initAddRemoveHeaderEvents();a.on("render",b.initKeyNavHeaderEvents,b,{single:true})},beforeViewCellFocus:function(a){if(this.view.selModel.keyNavigation||!this.editing||!this.isCellEditable||!this.isCellEditable(a.row,a.columnHeader)){this.view.focusCell.apply(this.view,arguments)}},onRowFocus:function(a,c,b){this.startEdit(c,0)},onCellFocus:function(c,b,a){this.startEdit(a.row,a.column)},onCellClick:function(k,l,c,g,m,a,j){var d=k.expanderSelector,b=k.ownerCt.getColumnManager().getHeaderAtIndex(c),h=b.getEditor(g);if(this.shouldStartEdit(h)&&(!d||!j.getTarget(d))){this.startEdit(g,b)}},initAddRemoveHeaderEvents:function(){var a=this,b=a.grid.headerCt;a.mon(b,{scope:a,add:a.onColumnAdd,columnmove:a.onColumnMove,beforedestroy:a.beforeGridHeaderDestroy})},initKeyNavHeaderEvents:function(){var a=this;a.keyNav=Ext.create("Ext.util.KeyNav",a.view.el,{enter:a.onEnterKey,esc:a.onEscKey,scope:a})},onColumnAdd:function(a,b){this.initFieldAccessors(b)},onColumnMove:Ext.emptyFn,onEnterKey:function(h){var d=this,c=d.grid,b=c.getSelectionModel(),a,j,g;if(b.getCurrentPosition&&(j=b.getCurrentPosition())){a=j.record;g=j.columnHeader}else{a=b.getLastSelected();g=c.getColumnManager().getHeaderAtIndex(0)}if(a&&g){d.startEdit(a,g)}},onEscKey:function(a){return this.cancelEdit()},beforeEdit:Ext.emptyFn,shouldStartEdit:function(a){return !!a},startEdit:function(b,e){var d=this,c,a=d.grid.lockable?d.grid:d.view;if(!a.componentLayoutCounter){a.on({boxready:Ext.Function.bind(d.startEdit,d,[b,e]),single:true});return false}if(d.grid.collapsed||!d.grid.view.isVisible(true)){return false}c=d.getEditingContext(b,e);if(c==null){return false}if(!d.preventBeforeCheck){if(d.beforeEdit(c)===false||d.fireEvent("beforeedit",d,c)===false||c.cancel){return false}}return c},getEditingContext:function(e,c){var h=this,a=h.grid,g=a.columnManager,j,k,b,d;if(Ext.isNumber(c)){c=g.getHeaderAtIndex(c)}if(!c){return}if(c.hidden){c=c.next(":not([hidden])")||c.prev(":not([hidden])")}j=c.getOwnerHeaderCt().view;k=j.getRow(e);if(!k){return}d=g.getHeaderIndex(c);if(Ext.isNumber(e)){b=e;e=j.getRecord(k)}else{b=j.indexOf(k)}if(!e){return}return{grid:a,view:j,store:j.dataSource,record:e,field:c.dataIndex,value:e.get(c.dataIndex),row:k,column:c,rowIdx:b,colIdx:d}},cancelEdit:function(){var a=this;a.editing=false;a.fireEvent("canceledit",a,a.context)},completeEdit:function(){var a=this;if(a.editing&&a.validateEdit()){a.fireEvent("edit",a,a.context)}a.context=null;a.editing=false},validateEdit:function(){var b=this,a=b.context;return b.fireEvent("validateedit",b,a)!==false&&!a.cancel}},1,0,0,0,["editing.editing"],[["observable",Ext.util.Observable]],[Ext.grid.plugin,"Editing"],0));(Ext.cmd.derive("Ext.grid.plugin.CellEditing",Ext.grid.plugin.Editing,{lockableScope:"both",init:function(a){var c=this,b=c.lockingPartner;Ext.grid.plugin.Editing.prototype.init.apply(this,arguments);if(b){if(b.editors){c.editors=b.editors}else{c.editors=b.editors=new Ext.util.MixedCollection(false,function(d){return d.editorId})}}else{c.editors=new Ext.util.MixedCollection(false,function(d){return d.editorId})}},beforeGridHeaderDestroy:function(h){var g=this,c=g.grid.getColumnManager().getColumns(),a=c.length,b,e,d;for(b=0;b<a;b++){e=c[b];d=g.editors.getByKey(e.getItemId());if(!d&&e.hasEditor&&e.hasEditor()){d=e.getEditor()}Ext.destroy(d);g.removeFieldAccessors(e)}},onReconfigure:function(c,a,b){if(b){this.editors.clear()}Ext.grid.plugin.Editing.prototype.onReconfigure.call(this)},destroy:function(){var a=this;if(a.editors){a.editors.each(Ext.destroy,Ext);a.editors.clear()}Ext.grid.plugin.Editing.prototype.destroy.apply(this,arguments)},initCancelTriggers:function(){var c=this,b=c.grid,a=b.view;c.mon(b,{columnresize:c.cancelEdit,columnmove:c.cancelEdit,scope:c})},isCellEditable:function(a,d){var c=this,b=c.getEditingContext(a,d);if(c.grid.view.isVisible(true)&&b){d=b.column;a=b.record;if(d&&c.getEditor(a,d)){return true}}},startEdit:function(a,e,c){var d=this,h,g,b;if(!c){d.preventBeforeCheck=true;c=Ext.grid.plugin.Editing.prototype.startEdit.apply(this,arguments);delete d.preventBeforeCheck;if(c===false){return false}}if(c&&d.grid.view.isVisible(true)){a=c.record;e=c.column;c.originalValue=c.value=a.get(e.dataIndex);g=(e&&e.getEditor(a))&&!(d.beforeEdit(c)===false||d.fireEvent("beforeedit",d,c)===false||c.cancel);if(g){b=d.getEditor(a,e);h=b.editing}else{return false}d.completeEdit(h);d.context=c;d.grid.view.cancelFocus();d.view.scrollCellIntoView(d.getCell(a,e));if(b){if(h){b.editing=false;if(Ext.isIE){b.selectSameEditor=true}}d.showEditor(b,c,c.value);return true}return false}},showEditor:function(e,a,k){var h=this,d=a.record,c=a.column,b=h.grid.getSelectionModel(),g=b.preventFocus,j=b.getCurrentPosition();if(!c.up(h.view.ownerCt)){return h.lockingPartner.showEditor(e,h.lockingPartner.getEditingContext(j.record,j.columnHeader),k)}h.setEditingContext(a);h.setActiveEditor(e);h.setActiveRecord(d);h.setActiveColumn(c);if(!j||!b.isCellSelected(h.view,d,c)){b.preventFocus=true;b.selectByPosition({row:d,column:c,view:h.view},true);b.preventFocus=g}if(Ext.isIE&&Ext.event.Event.type==="click"){Ext.Function.defer(e.startEdit,1,e,[h.getCell(d,c),k,a])}else{e.startEdit(h.getCell(d,c),k,a)}h.editing=true;h.scroll=h.view.el.getScroll()},completeEdit:function(a){var b=this.getActiveEditor();if(b){b.completeEdit(a);this.editing=false}},setEditingContext:function(a){this.context=a;if(this.lockingPartner){this.lockingPartner.context=a}},setActiveEditor:function(a){this.activeEditor=a;if(this.lockingPartner){this.lockingPartner.activeEditor=a}},getActiveEditor:function(){return this.activeEditor},setActiveColumn:function(a){this.activeColumn=a;if(this.lockingPartner){this.lockingPartner.activeColumn=a}},getActiveColumn:function(){return this.activeColumn},setActiveRecord:function(a){this.activeRecord=a;if(this.lockingPartner){this.lockingPartner.activeRecord=a}},getActiveRecord:function(){return this.activeRecord},getEditor:function(a,e){var h=this,g=h.editors,d=e.getItemId(),c=g.getByKey(d),b=h.grid.ownerLockable||h.grid;if(!c){c=e.getEditor(a);if(!c){return false}if(c instanceof Ext.grid.CellEditor){c.floating=true}else{c=new Ext.grid.CellEditor({floating:true,editorId:d,field:c})}c.field.excludeForm=true;if(c.ownerCt!==b){b.add(c);c.on({scope:h,specialkey:h.onSpecialKey,complete:h.onEditComplete,canceledit:h.cancelEdit});e.on("removed",h.onColumnRemoved,h)}g.add(c)}if(e.isTreeColumn){c.isForTree=e.isTreeColumn;c.addCls(Ext.baseCSSPrefix+"tree-cell-editor")}c.setGrid(h.grid);c.editingPlugin=h;return c},onColumnRemoved:function(d){var e=this,b=e.context,c,a=e.grid.ownerLockable||e.grid;if(b&&b.column===d){e.cancelEdit()}d.un("removed",e.onColumnRemoved,e);if(d.getEditor&&(c=d.getEditor())&&c.ownerCt===a){a.remove(c);c.un({scope:e,specialkey:e.onSpecialKey,complete:e.onEditComplete,canceledit:e.cancelEdit})}},setColumnField:function(b,c){var a=this.editors.getByKey(b.getItemId());Ext.destroy(a,b.field);this.editors.removeAtKey(b.getItemId());Ext.grid.plugin.Editing.prototype.setColumnField.apply(this,arguments)},getCell:function(a,b){return this.grid.getView().getCell(a,b)},onSpecialKey:function(a,c,b){var d;if(b.getKey()===b.TAB){b.stopEvent();if(a){a.onEditorTab(b)}d=a.up("tablepanel").getSelectionModel();if(d.onEditorTab){return d.onEditorTab(a.editingPlugin,b)}}},onEditComplete:function(c,h,b){var g=this,e=g.getActiveColumn(),d=g.context,a;if(e){a=d.record;g.setActiveEditor(null);g.setActiveColumn(null);g.setActiveRecord(null);d.value=h;if(!g.validateEdit()){g.editing=false;return}if(!a.isEqual(h,b)){a.set(e.dataIndex,h)}d.view.focusRow(d.rowIdx,100);g.fireEvent("edit",g,d);g.editing=false}},cancelEdit:function(){var c=this,a=c.context,b=c.getActiveEditor();c.setActiveEditor(null);c.setActiveColumn(null);c.setActiveRecord(null);if(b){if(b.field){c.context.value=("editedValue" in b)?b.editedValue:b.getValue();b.cancelEdit()}a.view.focusRow(a.rowIdx,100);Ext.grid.plugin.Editing.prototype.cancelEdit.apply(this,arguments);return}return true},startEditByPosition:function(b){var a=this.grid.getColumnManager(),d,c;if(!b.isCellContext){b=new Ext.grid.CellContext(this.view).setPosition(b)}d=a.getHeaderIndex(b.columnHeader);b.setColumn(a.getVisibleHeaderClosestToIndex(d));return this.startEdit(b.record,b.columnHeader)}},0,0,0,0,["plugin.cellediting"],0,[Ext.grid.plugin,"CellEditing"],0));(Ext.cmd.derive("Ext.grid.plugin.DragDrop",Ext.plugin.Abstract,{dragText:"{0} selected row{1}",ddGroup:"GridDD",enableDrop:true,enableDrag:true,containerScroll:false,init:function(a){a.on("render",this.onViewRender,this,{single:true})},destroy:function(){Ext.destroy(this.dragZone,this.dropZone)},enable:function(){var a=this;if(a.dragZone){a.dragZone.unlock()}if(a.dropZone){a.dropZone.unlock()}Ext.plugin.Abstract.prototype.enable.call(this)},disable:function(){var a=this;if(a.dragZone){a.dragZone.lock()}if(a.dropZone){a.dropZone.lock()}Ext.plugin.Abstract.prototype.disable.call(this)},onViewRender:function(a){var b=this,c;if(b.enableDrag){if(b.containerScroll){c=a.getEl()}b.dragZone=new Ext.view.DragZone(Ext.apply({view:a,ddGroup:b.dragGroup||b.ddGroup,dragText:b.dragText,containerScroll:b.containerScroll,scrollEl:c},b.dragZone))}if(b.enableDrop){b.dropZone=new Ext.grid.ViewDropZone(Ext.apply({view:a,ddGroup:b.dropGroup||b.ddGroup},b.dropZone))}}},0,0,0,0,["plugin.gridviewdragdrop"],0,[Ext.grid.plugin,"DragDrop"],0));(Ext.cmd.derive("Ext.grid.plugin.RowEditing",Ext.grid.plugin.Editing,{lockableScope:"top",editStyle:"row",autoCancel:true,errorSummary:true,constructor:function(){var a=this;Ext.grid.plugin.Editing.prototype.constructor.apply(this,arguments);if(!a.clicksToMoveEditor){a.clicksToMoveEditor=a.clicksToEdit}a.autoCancel=!!a.autoCancel},destroy:function(){Ext.destroy(this.editor);Ext.grid.plugin.Editing.prototype.destroy.apply(this,arguments)},onBeforeReconfigure:function(){Ext.grid.plugin.Editing.prototype.onBeforeReconfigure.apply(this,arguments);this.cancelEdit()},onReconfigure:function(d,b,c){var a=this.editor;Ext.grid.plugin.Editing.prototype.onReconfigure.apply(this,arguments);if(c&&a&&a.rendered){a.needsSyncFieldWidths=true}},shouldStartEdit:function(a){return true},startEdit:function(a,e){var d=this,c=d.getEditor(),b;if(Ext.isEmpty(e)){e=d.grid.getTopLevelVisibleColumnManager().getHeaderAtIndex(0)}if(c.beforeEdit()!==false){b=Ext.grid.plugin.Editing.prototype.startEdit.apply(this,[a,e]);if(b){d.context=b;if(d.lockingPartner){d.lockingPartner.cancelEdit()}c.startEdit(b.record,b.column,b);d.editing=true;return true}}return false},cancelEdit:function(){var a=this;if(a.editing){a.getContextFieldValues();a.getEditor().cancelEdit();Ext.grid.plugin.Editing.prototype.cancelEdit.apply(this,arguments);return}return true},completeEdit:function(){var a=this;if(a.editing&&a.validateEdit()){a.editing=false;a.fireEvent("edit",a,a.context)}},validateEdit:function(){this.getContextFieldValues();return Ext.grid.plugin.Editing.prototype.validateEdit.apply(this,arguments)&&this.getEditor().completeEdit()},getEditor:function(){var a=this;if(!a.editor){a.editor=a.initEditor()}return a.editor},getContextFieldValues:function(){var g=this.editor,b=this.context,e=b.record,l={},c={},j=g.query(">[isFormField]"),h=j.length,d,a,k;for(d=0;d<h;d++){k=j[d];a=k.dataIndex;l[a]=k.getValue();c[a]=e.get(a)}Ext.apply(b,{newValues:l,originalValues:c})},initEditor:function(){return new Ext.grid.RowEditor(this.initEditorConfig())},initEditorConfig:function(){var h=this,c=h.grid,j=h.view,d=c.headerCt,e=["saveBtnText","cancelBtnText","errorsText","dirtyText"],k,a=e.length,g={autoCancel:h.autoCancel,errorSummary:h.errorSummary,fields:d.getGridColumns(),hidden:true,view:j,editingPlugin:h},l;for(k=0;k<a;k++){l=e[k];if(Ext.isDefined(h[l])){g[l]=h[l]}}return g},initEditTriggers:function(){var b=this,a=b.view,c=b.clicksToMoveEditor===1?"click":"dblclick";Ext.grid.plugin.Editing.prototype.initEditTriggers.apply(this,arguments);if(b.clicksToMoveEditor!==b.clicksToEdit){b.mon(a,"cell"+c,b.moveEditorByClick,b)}a.on({render:function(){b.mon(b.grid.headerCt,{scope:b,columnresize:b.onColumnResize,columnhide:b.onColumnHide,columnshow:b.onColumnShow})},single:true})},startEditByClick:function(){var a=this;if(!a.editing||a.clicksToMoveEditor===a.clicksToEdit){a.callParent(arguments)}},moveEditorByClick:function(){var a=this;if(a.editing){a.superclass.onCellClick.apply(a,arguments)}},onColumnAdd:function(a,c){if(c.isHeader){var d=this,b;d.initFieldAccessors(c);b=d.editor;if(b){b.onColumnAdd(c)}}},beforeGridHeaderDestroy:function(g){var c=this.grid.getColumnManager().getColumns(),a=c.length,b,d,e;for(b=0;b<a;b++){d=c[b];if(d.hasEditor){if(d.hasEditor()&&(e=d.getEditor())){e.destroy()}this.removeFieldAccessors(d)}}},onColumnResize:function(a,d,c){if(d.isHeader){var e=this,b=e.getEditor();if(b){b.onColumnResize(d,c)}}},onColumnHide:function(a,c){var d=this,b=d.getEditor();if(b){b.onColumnHide(c)}},onColumnShow:function(a,c){var d=this,b=d.getEditor();if(b){b.onColumnShow(c)}},onColumnMove:function(a,d,c,g){var e=this,b=e.getEditor();e.initFieldAccessors(d);if(b){b.onColumnMove(d,c,g)}},setColumnField:function(b,d){var c=this,a=c.getEditor();if(a){a.destroyColumnEditor(b)}Ext.grid.plugin.Editing.prototype.setColumnField.apply(this,arguments);if(a){a.insertColumnEditor(b)}},createColumnField:function(c,a){var b=this.editor,d;if(b){d=b.getDefaultFieldCfg()}return Ext.grid.plugin.Editing.prototype.createColumnField.apply(this,[c,a||d])}},1,0,0,0,["plugin.rowediting"],0,[Ext.grid.plugin,"RowEditing"],0));(Ext.cmd.derive("Ext.grid.plugin.RowExpander",Ext.plugin.Abstract,{lockableScope:"normal",columnWidth:24,rowBodyTpl:null,lockedTpl:null,expandOnEnter:true,expandOnDblClick:true,selectRowOnExpand:false,headerWidth:24,rowBodyTrSelector:"."+Ext.baseCSSPrefix+"grid-rowbody-tr",rowBodyHiddenCls:Ext.baseCSSPrefix+"grid-row-body-hidden",rowCollapsedCls:Ext.baseCSSPrefix+"grid-row-collapsed",addCollapsedCls:{fn:function(b,a,c){var d=this.rowExpander;if(!d.recordsExpanded[a.record.internalId]){a.itemClasses.push(d.rowCollapsedCls)}this.nextTpl.applyOut(a,b,c)},syncRowHeights:function(a,b){this.rowExpander.syncRowHeights(a,b)},priority:20000},setCmp:function(a){var c=this,b;Ext.plugin.Abstract.prototype.setCmp.apply(this,arguments);c.recordsExpanded={};c.rowBodyTpl=Ext.XTemplate.getTpl(c,"rowBodyTpl");b=c.getFeatureConfig(a);if(a.features){a.features=Ext.Array.push(b,a.features)}else{a.features=b}},getFeatureConfig:function(a){var c=this,b=[],d={ftype:"rowbody",rowExpander:c,recordsExpanded:c.recordsExpanded,rowBodyHiddenCls:c.rowBodyHiddenCls,rowCollapsedCls:c.rowCollapsedCls,setupRowData:c.getRowBodyFeatureData,setup:c.setup};b.push(Ext.apply({lockableScope:"normal",getRowBodyContents:c.getRowBodyContentsFn(c.rowBodyTpl)},d));if(a.enableLocking){b.push(Ext.apply({lockableScope:"locked",getRowBodyContents:c.lockedTpl?c.getRowBodyContentsFn(c.lockedTpl):function(){return""}},d))}return b},getRowBodyContentsFn:function(a){var b=this;return function(c){a.owner=b;return a.applyTemplate(c.record.getData())}},init:function(b){if(b.lockable){b=b.normalGrid}var d=this,e=b.ownerLockable,a,c;Ext.plugin.Abstract.prototype.init.apply(this,arguments);d.grid=b;a=d.view=b.getView();d.bindView(a);a.addRowTpl(d.addCollapsedCls).rowExpander=d;if(e){d.addExpander(e.lockedGrid.headerCt.items.getCount()?e.lockedGrid:b);c=e.lockedGrid.getView();d.bindView(c);c.addRowTpl(d.addCollapsedCls).rowExpander=d;e.syncRowHeight=true;e.mon(e,{processcolumns:d.onLockableProcessColumns,lockcolumn:d.onColumnLock,unlockcolumn:d.onColumnUnlock,scope:d});d.viewListeners=a.on({itemadd:Ext.Function.createAnimationFrame(e.syncRowHeights,e)})}else{d.addExpander(b);b.on("beforereconfigure",d.beforeReconfigure,d)}},beforeReconfigure:function(d,a,c,g,b){var e=this;if(e.viewListeners){e.viewListeners.destroy()}if(c){e.expanderColumn=new Ext.grid.Column(e.getHeaderConfig());c.unshift(e.expanderColumn)}},onLockableProcessColumns:function(c,b,a){this.addExpander(b.length?c.lockedGrid:c.normalGrid)},addExpander:function(b){var a=this,c=a.getHeaderConfig();if(b.isLocked&&b.ownerLockable.shrinkWrapLocked){b.width+=c.width}a.expanderColumn=b.headerCt.insert(0,c);b.getSelectionModel().injectCheckbox=1},getRowBodyFeatureData:function(b,a,d){var c=this;c.self.prototype.setupRowData.apply(c,arguments);d.rowBody=c.getRowBodyContents(d);d.rowBodyCls=c.recordsExpanded[b.internalId]?"":c.rowBodyHiddenCls},setup:function(c,d){var b=this,a=b.grid.ownerLockable;b.self.prototype.setup.apply(b,arguments);if(a&&Ext.Array.indexOf(b.grid.columnManager.getColumns(),b.rowExpander.expanderColumn)!==-1){d.rowBodyColspan-=1}},bindView:function(a){if(this.expandOnEnter){a.on("itemkeydown",this.onKeyDown,this)}if(this.expandOnDblClick){a.on("itemdblclick",this.onDblClick,this)}},onKeyDown:function(k,g,l,a,h){if(h.getKey()===h.ENTER){var b=k.store,c=k.getSelectionModel().getSelection(),j=c.length,d=0;for(;d<j;d++){a=b.indexOf(c[d]);this.toggleRow(a,c[d])}}},onDblClick:function(b,a,g,c,d){this.toggleRow(c,a)},toggleRow:function(b,g){var m=this,n=m.view,p=n.bufferedRenderer,j=n.scrollManager,q=n,c=n.getNode(b),e=Ext.fly(c),d,h=e.down(m.rowBodyTrSelector,true),r=e.hasCls(m.rowCollapsedCls),o=r?"removeCls":"addCls",l=r?2:1,a=m.grid.ownerLockable,k;e[o](m.rowCollapsedCls);Ext.fly(h)[o](m.rowBodyHiddenCls);m.recordsExpanded[g.internalId]=r;if(m.grid.ownerLockable){q=a.getView();if(a.lockedGrid.isVisible()){n=a.view.lockedGrid.view;d=Ext.fly(n.getNode(b));if(d){d[o](m.rowCollapsedCls);h=d.down(m.rowBodyTrSelector,true);Ext.fly(h)[o](m.rowBodyHiddenCls)}}}if(m.expanderColumn){k=Ext.fly(n.getRow(b)).down(m.expanderColumn.getCellSelector(),true);if(k){k.rowSpan=l}}q.fireEvent(r?"expandbody":"collapsebody",c,g,h);if(n.getSizeModel().height.shrinkWrap||a){n.refreshSize(true)}if(j){if(p){p.stretchView(n,p.getScrollHeight(true))}else{j.refresh(true)}}},syncRowHeights:function(a,h){var d=this,c=Ext.fly(a).down(d.rowBodyTrSelector),b=Ext.fly(h).down(d.rowBodyTrSelector),g,e;if(b.isVisible()){if((g=c.getHeight())!==(e=b.getHeight())){if(g>e){b.setHeight(g)}else{c.setHeight(e)}}}else{c.dom.style.height=b.dom.style.height=""}},onColumnUnlock:function(c,a){var b=this,d;c=b.grid.ownerLockable;d=c.lockedGrid.visibleColumnManager.getColumns();if(d.length===1){if(d[0]===b.expanderColumn){c.unlock(b.expanderColumn)}else{c.lock(b.expanderColumn,0)}}},onColumnLock:function(c,a){var b=this,d;c=b.grid.ownerLockable;d=c.lockedGrid.visibleColumnManager.getColumns();if(d.length===1){c.lockedGrid.headerCt.insert(0,b.expanderColumn)}},getHeaderConfig:function(){var b=this,a=b.grid.ownerLockable;return{width:b.headerWidth,lockable:false,autoLock:true,sortable:false,resizable:false,draggable:false,hideable:false,menuDisabled:true,tdCls:Ext.baseCSSPrefix+"grid-cell-special",innerCls:Ext.baseCSSPrefix+"grid-cell-inner-row-expander",renderer:function(){return'<div class="'+Ext.baseCSSPrefix+'grid-row-expander" role="presentation"></div>'},processEvent:function(j,g,c,l,h,k,d){if(k.getTarget("."+Ext.baseCSSPrefix+"grid-row-expander")){if(j==="click"){b.toggleRow(l,d);return b.selectRowOnExpand}}},isLocked:function(){return a.lockedGrid.isVisible()||this.locked},editRenderer:function(){return"&#160;"}}}},0,0,0,0,["plugin.rowexpander"],0,[Ext.grid.plugin,"RowExpander"],0));(Ext.cmd.derive("Ext.grid.property.Grid",Ext.grid.Panel,{alternateClassName:"Ext.grid.PropertyGrid",valueField:"value",nameField:"name",inferTypes:true,enableColumnMove:false,columnLines:true,stripeRows:false,trackMouseOver:false,clicksToEdit:1,enableHdMenu:false,gridCls:Ext.baseCSSPrefix+"property-grid",initComponent:function(){var a=this;a.source=a.source||{};a.addCls(a.gridCls);a.plugins=a.plugins||[];a.plugins.push(new Ext.grid.plugin.CellEditing({clicksToEdit:a.clicksToEdit,startEdit:function(b,c){return this.self.prototype.startEdit.call(this,b,a.valueColumn)}}));a.selModel={selType:"cellmodel",onCellSelect:function(b){b.columnHeader=a.valueColumn;b.column=a.valueColumn.getVisibleIndex();return this.self.prototype.onCellSelect.call(this,b)}};a.sourceConfig=Ext.apply({},a.sourceConfig);if(!a.store){a.propStore=a.store=new Ext.grid.property.Store(a,a.source)}a.configure(a.sourceConfig);if(a.sortableColumns){a.store.sort("name","ASC")}a.columns=new Ext.grid.property.HeaderContainer(a,a.store);Ext.panel.Table.prototype.initComponent.call(this);a.getView().walkCells=this.walkCells;a.editors={date:new Ext.grid.CellEditor({field:new Ext.form.field.Date({selectOnFocus:true})}),string:new Ext.grid.CellEditor({field:new Ext.form.field.Text({selectOnFocus:true})}),number:new Ext.grid.CellEditor({field:new Ext.form.field.Number({selectOnFocus:true})}),"boolean":new Ext.grid.CellEditor({field:new Ext.form.field.ComboBox({editable:false,store:[[true,a.headerCt.trueText],[false,a.headerCt.falseText]]})})};a.store.on("update",a.onUpdate,a)},configure:function(b){var h=this,k=h.store,d=0,e=h.store.getCount(),l=h.nameField,m=h.valueField,a,j,c,g;h.configureLegacy(b);if(h.inferTypes){for(;d<e;++d){c=k.getAt(d);a=c.get(l);if(!h.getConfig(a,"type")){j=c.get(m);if(Ext.isDate(j)){g="date"}else{if(Ext.isNumber(j)){g="number"}else{if(Ext.isBoolean(j)){g="boolean"}else{g="string"}}}h.setConfig(a,"type",g)}}}},getConfig:function(e,d,a){var c=this.sourceConfig[e],b;if(c){b=c[d]}return b||a},setConfig:function(e,b,c){var a=this.sourceConfig,d=a[e];if(!d){d=a[e]={__copied:true}}else{if(!d.__copied){d=Ext.apply({__copied:true},d);a[e]=d}}d[b]=c;return c},configureLegacy:function(a){var b=this;b.copyLegacyObject(a,b.customRenderers,"renderer");b.copyLegacyObject(a,b.customEditors,"editor");b.copyLegacyObject(a,b.propertyNames,"displayName")},copyLegacyObject:function(a,d,c){var b;for(b in d){if(d.hasOwnProperty(b)){if(!a[b]){a[b]={}}a[b][c]=d[b]}}},onUpdate:function(d,a,c){var g=this,b,e;if(g.rendered&&c==Ext.data.Model.EDIT){b=a.get(g.valueField);e=a.modified.value;if(g.fireEvent("beforepropertychange",g.source,a.getId(),b,e)!==false){if(g.source){g.source[a.getId()]=b}a.commit();g.fireEvent("propertychange",g.source,a.getId(),b,e)}else{a.reject()}}},walkCells:function(k,j,h,g,a,c){var d=this,b=d.ownerCt.valueColumn;if(j=="left"){j="up"}else{if(j=="right"){j="down"}}k=Ext.view.Table.prototype.walkCells.call(d,k,j,h,g,a,c);k.columnHeader=b;k.column=b.getVisibleIndex();return k},getCellEditor:function(a,d){var g=this,h=a.get(g.nameField),j=a.get(g.valueField),c=g.getConfig(h,"editor"),b=g.getConfig(h,"type"),e=g.editors;if(c){if(!(c instanceof Ext.grid.CellEditor)){if(!(c instanceof Ext.form.field.Base)){c=Ext.ComponentManager.create(c,"textfield")}c=g.setConfig(h,"editor",new Ext.grid.CellEditor({field:c}))}}else{if(b){switch(b){case"date":c=e.date;break;case"number":c=e.number;break;case"boolean":c=g.editors["boolean"];break;default:c=e.string}}else{if(Ext.isDate(j)){c=e.date}else{if(Ext.isNumber(j)){c=e.number}else{if(Ext.isBoolean(j)){c=e["boolean"]}else{c=e.string}}}}}c.editorId=h;c.field.column=g.valueColumn;return c},beforeDestroy:function(){var a=this;Ext.panel.Table.prototype.beforeDestroy.call(this);a.destroyEditors(a.editors);a.destroyEditors(a.customEditors);delete a.source},destroyEditors:function(b){for(var a in b){if(b.hasOwnProperty(a)){Ext.destroy(b[a])}}},setSource:function(b,c){var a=this;a.source=b;if(c!==undefined){a.sourceConfig=Ext.apply({},c);a.configure(a.sourceConfig)}a.propStore.setSource(b)},getSource:function(){return this.propStore.getSource()},setProperty:function(c,b,a){this.propStore.setValue(c,b,a)},removeProperty:function(a){this.propStore.remove(a)}},0,["propertygrid"],["box","component","container","grid","gridpanel","panel","propertygrid","tablepanel"],{box:true,component:true,container:true,grid:true,gridpanel:true,panel:true,propertygrid:true,tablepanel:true},["widget.propertygrid"],0,[Ext.grid.property,"Grid",Ext.grid,"PropertyGrid"],0));(Ext.cmd.derive("Ext.grid.property.HeaderContainer",Ext.grid.header.Container,{alternateClassName:"Ext.grid.PropertyColumnModel",nameWidth:115,nameText:"Name",valueText:"Value",dateFormat:"m/j/Y",trueText:"true",falseText:"false",nameColumnCls:Ext.baseCSSPrefix+"grid-property-name",nameColumnInnerCls:Ext.baseCSSPrefix+"grid-cell-inner-property-name",constructor:function(b,a){var c=this;c.grid=b;c.store=a;Ext.Component.prototype.constructor.apply(this,[{isRootHeader:true,enableColumnResize:Ext.isDefined(b.enableColumnResize)?b.enableColumnResize:c.enableColumnResize,enableColumnMove:Ext.isDefined(b.enableColumnMove)?b.enableColumnMove:c.enableColumnMove,items:[{header:c.nameText,width:b.nameColumnWidth||c.nameWidth,sortable:b.sortableColumns,dataIndex:b.nameField,renderer:c.renderProp.bind(c),itemId:b.nameField,menuDisabled:true,tdCls:c.nameColumnCls,innerCls:c.nameColumnInnerCls},{header:c.valueText,renderer:c.renderCell.bind(c),getEditor:c.getCellEditor.bind(c),sortable:b.sortableColumns,flex:1,fixed:true,dataIndex:b.valueField,itemId:b.valueField,menuDisabled:true}]}]);c.grid.valueColumn=c.items.items[1]},getCellEditor:function(a){return this.grid.getCellEditor(a,this)},renderProp:function(a){return this.getPropertyName(a)},renderCell:function(h,e,g){var c=this,b=c.grid,d=b.getConfig(g.get(b.nameField),"renderer"),a=h;if(d){return d.apply(c,arguments)}if(Ext.isDate(h)){a=c.renderDate(h)}else{if(Ext.isBoolean(h)){a=c.renderBool(h)}}return Ext.util.Format.htmlEncode(a)},renderDate:Ext.util.Format.date,renderBool:function(a){return this[a?"trueText":"falseText"]},getPropertyName:function(a){return this.grid.getConfig(a,"displayName",a)}},1,0,["box","component","container","headercontainer"],{box:true,component:true,container:true,headercontainer:true},0,0,[Ext.grid.property,"HeaderContainer",Ext.grid,"PropertyColumnModel"],0));(Ext.cmd.derive("Ext.grid.property.Property",Ext.data.Model,{alternateClassName:"Ext.PropGridProperty",fields:[{name:"name",type:"string"},{name:"value"}],idProperty:"name"},0,0,0,0,0,0,[Ext.grid.property,"Property",Ext,"PropGridProperty"],0));(Ext.cmd.derive("Ext.grid.property.Reader",Ext.data.reader.Reader,{successProperty:null,totalProperty:null,messageProperty:null,read:function(a){return this.readRecords(a)},readRecords:function(b){var e=this.getModel(),a={records:[],success:true},d,c;for(c in b){if(b.hasOwnProperty(c)){d=b[c];if(this.isEditableValue(d)){a.records.push(new e({name:c,value:d}))}}}a.total=a.count=a.records.length;return new Ext.data.ResultSet(a)},isEditableValue:function(a){return Ext.isPrimitive(a)||Ext.isDate(a)||a===null}},0,0,0,0,0,0,[Ext.grid.property,"Reader"],0));(Ext.cmd.derive("Ext.grid.property.Store",Ext.data.Store,{alternateClassName:"Ext.grid.PropertyStore",remoteSort:true,constructor:function(a,c){var b=this;b.grid=a;b.source=c;Ext.data.Store.prototype.constructor.apply(this,[{data:c,model:Ext.grid.property.Property,proxy:b.getProxy()}])},getProxy:function(){var a=this.proxy;if(!a){a=this.proxy=new Ext.data.proxy.Memory({model:Ext.grid.property.Property,reader:this.getReader()})}return a},getReader:function(){var a=this.reader;if(!a){a=this.reader=new Ext.grid.property.Reader({model:Ext.grid.property.Property})}return a},setSource:function(a){var b=this;b.source=a;b.suspendEvents();b.removeAll();b.getProxy().setData(a);b.load();b.resumeEvents();b.fireEvent("datachanged",b);b.fireEvent("refresh",b)},getProperty:function(a){return Ext.isNumber(a)?this.getAt(a):this.getById(a)},setValue:function(e,c,a){var b=this,d=b.getRec(e);if(d){d.set("value",c);b.source[e]=c}else{if(a){b.source[e]=c;d=new Ext.grid.property.Property({name:e,value:c},e);b.add(d)}}},remove:function(b){var a=this.getRec(b);if(a){Ext.data.Store.prototype.remove.apply(this,[a]);delete this.source[b]}},getRec:function(a){return this.getById(a)},getSource:function(){return this.source},onDestroy:function(){Ext.destroy(this.reader,this.proxy);Ext.data.Store.prototype.onDestroy.call(this)}},1,0,0,0,0,0,[Ext.grid.property,"Store",Ext.grid,"PropertyStore"],0));(Ext.cmd.derive("Ext.layout.ClassList",Ext.Base,(function(){var b=Ext.String.splitWords,a=Ext.Array.toMap;return{dirty:false,constructor:function(c){this.owner=c;this.map=a(this.classes=b(c.el.className))},add:function(c){var d=this;if(!d.map[c]){d.map[c]=true;d.classes.push(c);if(!d.dirty){d.dirty=true;d.owner.markDirty()}}},addMany:function(c){Ext.each(b(c),this.add,this)},contains:function(c){return this.map[c]},flush:function(){this.owner.el.className=this.classes.join(" ");this.dirty=false},remove:function(c){var d=this;if(d.map[c]){delete d.map[c];d.classes=Ext.Array.filter(d.classes,function(e){return e!=c});if(!d.dirty){d.dirty=true;d.owner.markDirty()}}},removeMany:function(d){var e=this,c=a(b(d));e.classes=Ext.Array.filter(e.classes,function(g){if(!c[g]){return true}delete e.map[g];if(!e.dirty){e.dirty=true;e.owner.markDirty()}return false})}}}()),1,0,0,0,0,0,[Ext.layout,"ClassList"],0));(Ext.cmd.derive("Ext.util.Queue",Ext.Base,{constructor:function(){this.clear()},add:function(c){var b=this,a=b.getKey(c);if(!b.map[a]){++b.length;b.items.push(c);b.map[a]=c}return c},clear:function(){var b=this,a=b.items;b.items=[];b.map={};b.length=0;return a},contains:function(b){var a=this.getKey(b);return this.map.hasOwnProperty(a)},getCount:function(){return this.length},getKey:function(a){return a.id},remove:function(e){var d=this,c=d.getKey(e),a=d.items,b;if(d.map[c]){b=Ext.Array.indexOf(a,e);Ext.Array.erase(a,b,1);delete d.map[c];--d.length}return e}},1,0,0,0,0,0,[Ext.util,"Queue"],0));(Ext.cmd.derive("Ext.layout.ContextItem",Ext.Base,{heightModel:null,widthModel:null,sizeModel:null,optOut:false,ownerSizePolicy:null,boxChildren:null,boxParent:null,children:[],dirty:null,dirtyCount:0,hasRawContent:true,isContextItem:true,isTopLevel:false,consumersContentHeight:0,consumersContentWidth:0,consumersContainerHeight:0,consumersContainerWidth:0,consumersHeight:0,consumersWidth:0,ownerCtContext:null,remainingChildDimensions:0,props:null,state:null,wrapsComponent:false,constructor:function(s){var t=this,q=Ext.layout.SizeModel.sizeModels,l=q.configured,k=q.shrinkWrap,b,r,o,n,g,d,u,e,p,m,c,j,h,a;Ext.apply(t,s);b=t.el;t.id=b.id;t.flushedProps={};t.props=g={};t.styles={};u=t.target;if(!u.isComponent){r=b.lastBox}else{t.wrapsComponent=true;t.framing=u.frameSize||null;t.isComponentChild=u.ownerLayout&&u.ownerLayout.isComponentLayout;r=u.lastBox;o=u.ownerCt;if(o&&(n=o.el&&t.context.items[o.el.id])){t.ownerCtContext=n}t.sizeModel=d=u.getSizeModel(n&&n.widthModel.pairsByHeightOrdinal[n.heightModel.ordinal]);t.widthModel=j=d.width;t.heightModel=h=d.height;if(r&&r.invalid===false){m=(u.width===(e=r.width));c=(u.height===(p=r.height));if(j===k&&h===k){a=true}else{if(j===l&&m){a=h===k||(h===l&&c)}}if(a){t.optOut=true;g.width=e;g.height=p}}}t.lastBox=r},init:function(j,c){var t=this,a=t.props,d=t.dirty,l=t.ownerCtContext,p=t.target.ownerLayout,h=!t.state,u=j||h,e,o,m,q,b,v,w=t.heightModel,g=t.widthModel,k,r,s=0;t.dirty=t.invalid=false;t.props={};t.remainingChildDimensions=0;if(t.boxChildren){t.boxChildren.length=0}if(!h){t.clearAllBlocks("blocks");t.clearAllBlocks("domBlocks")}if(!t.wrapsComponent){return u}v=t.target;t.state={};if(h){if(v.beforeLayout&&v.beforeLayout!==Ext.emptyFn){v.beforeLayout()}if(!l&&(q=v.ownerCt)){l=t.context.items[q.el.id]}if(l){t.ownerCtContext=l;t.isBoxParent=p&&p.isItemBoxParent(t)}else{t.isTopLevel=true}t.frameBodyContext=t.getEl("frameBody")}else{l=t.ownerCtContext;t.isTopLevel=!l;e=t.children;for(o=0,m=e.length;o<m;++o){e[o].init(true)}}t.hasRawContent=!(v.isContainer&&v.items.items.length>0);if(j){t.widthModel=t.heightModel=null;b=v.getSizeModel(l&&l.widthModel.pairsByHeightOrdinal[l.heightModel.ordinal]);if(h){t.sizeModel=b}t.widthModel=b.width;t.heightModel=b.height;if(l&&!t.isComponentChild){if(p.needsItemSize||!v.liquidLayout){l.remainingChildDimensions+=2}else{if(t.widthModel.calculated){++l.remainingChildDimensions}if(t.heightModel.calculated){++l.remainingChildDimensions}}}}else{if(a){t.recoverProp("x",a,d);t.recoverProp("y",a,d);if(t.widthModel.calculated){t.recoverProp("width",a,d)}else{if("width" in a){++s}}if(t.heightModel.calculated){t.recoverProp("height",a,d)}else{if("height" in a){++s}}if(l&&!t.isComponentChild){l.remainingChildDimensions+=s}}}if(a&&p&&p.manageMargins){t.recoverProp("margin-top",a,d);t.recoverProp("margin-right",a,d);t.recoverProp("margin-bottom",a,d);t.recoverProp("margin-left",a,d)}if(c){k=c.heightModel;r=c.widthModel;if(r&&k&&g&&w){if(g.shrinkWrap&&w.shrinkWrap){if(r.constrainedMax&&k.constrainedMin){k=null}}}if(r){t.widthModel=r}if(k){t.heightModel=k}if(c.state){Ext.apply(t.state,c.state)}}return u},initContinue:function(e){var h=this,d=h.ownerCtContext,a=h.target,c=h.widthModel,g=a.getInherited(),b;if(c.fixed){g.inShrinkWrapTable=false}else{delete g.inShrinkWrapTable}if(e){if(d&&c.shrinkWrap){b=d.isBoxParent?d:d.boxParent;if(b){b.addBoxChild(h)}}else{if(c.natural){h.boxParent=d}}}return e},initDone:function(d){var b=this,a=b.props,c=b.state;if(b.remainingChildDimensions===0){a.containerChildrenSizeDone=true}if(d){a.containerLayoutDone=true}if(b.boxChildren&&b.boxChildren.length&&b.widthModel.shrinkWrap){b.el.setWidth(10000);c.blocks=(c.blocks||0)+1}},initAnimation:function(){var b=this,c=b.target,a=b.ownerCtContext;if(a&&a.isTopLevel){b.animatePolicy=c.ownerLayout.getAnimatePolicy(b)}else{if(!a&&c.isCollapsingOrExpanding&&c.animCollapse){b.animatePolicy=c.componentLayout.getAnimatePolicy(b)}}if(b.animatePolicy){b.context.queueAnimation(b)}},addCls:function(a){this.getClassList().addMany(a)},removeCls:function(a){this.getClassList().removeMany(a)},addBlock:function(b,d,e){var c=this,g=c[b]||(c[b]={}),a=g[e]||(g[e]={});if(!a[d.id]){a[d.id]=d;++d.blockCount;++c.context.blockCount}},addBoxChild:function(d){var c=this,b,a=d.widthModel;d.boxParent=this;d.measuresBox=a.shrinkWrap?d.hasRawContent:a.natural;if(d.measuresBox){b=c.boxChildren;if(b){b.push(d)}else{c.boxChildren=[d]}}},addPositionStyles:function(d,b){var a=b.x,e=b.y,c=0;if(a!==undefined){d.left=a+"px";++c}if(e!==undefined){d.top=e+"px";++c}return c},addTrigger:function(g,h){var e=this,a=h?"domTriggers":"triggers",j=e[a]||(e[a]={}),b=e.context,d=b.currentLayout,c=j[g]||(j[g]={});if(!c[d.id]){c[d.id]=d;++d.triggerCount;c=b.triggers[h?"dom":"data"];(c[d.id]||(c[d.id]=[])).push({item:this,prop:g});if(e.props[g]!==undefined){if(!h||!(e.dirty&&(g in e.dirty))){++d.firedTriggers}}}},boxChildMeasured:function(){var b=this,c=b.state,a=(c.boxesMeasured=(c.boxesMeasured||0)+1);if(a==b.boxChildren.length){c.clearBoxWidth=1;++b.context.progressCount;b.markDirty()}},borderNames:["border-top-width","border-right-width","border-bottom-width","border-left-width"],marginNames:["margin-top","margin-right","margin-bottom","margin-left"],paddingNames:["padding-top","padding-right","padding-bottom","padding-left"],trblNames:["top","right","bottom","left"],cacheMissHandlers:{borderInfo:function(a){var b=a.getStyles(a.borderNames,a.trblNames);b.width=b.left+b.right;b.height=b.top+b.bottom;return b},marginInfo:function(a){var b=a.getStyles(a.marginNames,a.trblNames);b.width=b.left+b.right;b.height=b.top+b.bottom;return b},paddingInfo:function(b){var a=b.frameBodyContext||b,c=a.getStyles(b.paddingNames,b.trblNames);c.width=c.left+c.right;c.height=c.top+c.bottom;return c}},checkCache:function(a){return this.cacheMissHandlers[a](this)},clearAllBlocks:function(a){var c=this[a],b;if(c){for(b in c){this.clearBlocks(a,b)}}},clearBlocks:function(c,g){var h=this[c],b=h&&h[g],d,e,a;if(b){delete h[g];d=this.context;for(a in b){e=b[a];--d.blockCount;if(!--e.blockCount&&!e.pending&&!e.done){d.queueLayout(e)}}}},block:function(a,b){this.addBlock("blocks",a,b)},domBlock:function(a,b){this.addBlock("domBlocks",a,b)},fireTriggers:function(b,g){var h=this[b],d=h&&h[g],c=this.context,e,a;if(d){for(a in d){e=d[a];++e.firedTriggers;if(!e.done&&!e.blockCount&&!e.pending){c.queueLayout(e)}}}},flush:function(){var b=this,a=b.dirty,c=b.state,d=b.el;b.dirtyCount=0;if(b.classList&&b.classList.dirty){b.classList.flush()}if("attributes" in b){d.set(b.attributes);delete b.attributes}if("innerHTML" in b){d.innerHTML=b.innerHTML;delete b.innerHTML}if(c&&c.clearBoxWidth){c.clearBoxWidth=0;b.el.setStyle("width",null);if(!--c.blocks){b.context.queueItemLayouts(b)}}if(a){delete b.dirty;b.writeProps(a,true)}},flushAnimations:function(){var p=this,c=p.previousSize,m,o,e,h,g,d,k,n,l,a,b;if(c){m=p.target;o=m.getAnimationProps();e=o.duration;h=Ext.Object.getKeys(p.animatePolicy);g=Ext.apply({},{from:{},to:{},duration:e||Ext.fx.Anim.prototype.duration},o);for(d=0,k=0,n=h.length;k<n;k++){l=h[k];a=c[l];b=p.peek(l);if(a!=b){l=p.translateProps[l]||l;g.from[l]=a;g.to[l]=b;++d}}if(d){if(p.isCollapsingOrExpanding===1){m.componentLayout.undoLayout(p)}else{p.writeProps(g.from)}p.el.animate(g);Ext.fx.Manager.getFxQueue(p.el.id)[0].on({afteranimate:function(){if(p.isCollapsingOrExpanding===1){m.componentLayout.redoLayout(p);m.afterCollapse(true)}else{if(p.isCollapsingOrExpanding===2){m.afterExpand(true)}}}})}}},getBorderInfo:function(){var a=this,b=a.borderInfo;if(!b){a.borderInfo=b=a.checkCache("borderInfo")}return b},getClassList:function(){return this.classList||(this.classList=new Ext.layout.ClassList(this))},getEl:function(c,a){var e=this,g,d,b;if(c){if(c.dom){d=c}else{g=e.target;if(a){g=a}d=g[c];if(typeof d=="function"){d=d.call(g);if(d===e.el){return this}}}if(d){b=e.context.getEl(e,d)}}return b||null},getFrameInfo:function(){var c=this,d=c.frameInfo,b,a;if(!d){b=c.framing;a=c.getBorderInfo();c.frameInfo=d=b?{top:b.top+a.top,right:b.right+a.right,bottom:b.bottom+a.bottom,left:b.left+a.left,width:b.width+a.width,height:b.height+a.height}:a}return d},getMarginInfo:function(){var d=this,h=d.marginInfo,b,a,g,e,c;if(!h){if(!d.wrapsComponent){h=d.checkCache("marginInfo")}else{b=d.target;e=b.ownerLayout;c=e?e.id:null;a=e&&e.manageMargins;h=b.margin$;if(h&&h.ownerId!==c){h=null}if(!h){h=d.parseMargins(b,b.margin)||d.checkCache("marginInfo");if(a){d.setProp("margin-top",0);d.setProp("margin-right",0);d.setProp("margin-bottom",0);d.setProp("margin-left",0)}h.ownerId=c;b.margin$=h}h.width=h.left+h.right;h.height=h.top+h.bottom}d.marginInfo=h}return h},clearMarginCache:function(){delete this.marginInfo;delete this.target.margin$},getPaddingInfo:function(){var a=this,b=a.paddingInfo;if(!b){a.paddingInfo=b=a.checkCache("paddingInfo")}return b},getProp:function(c){var b=this,a=b.props[c];b.addTrigger(c);return a},getDomProp:function(c){var b=this,a=(b.dirty&&(c in b.dirty))?undefined:b.props[c];b.addTrigger(c,true);return a},getStyle:function(a){var c=this,b=c.styles,e,d;if(a in b){d=b[a]}else{e=c.styleInfo[a];d=c.el.getStyle(a);if(e&&e.parseInt){d=parseInt(d,10)||0}b[a]=d}return d},getStyles:function(p,b){var m=this,e=m.styles,q={},g=0,d=p.length,k,j,l,a,c,h,r,o;b=b||p;for(k=0;k<d;++k){a=p[k];if(a in e){q[b[k]]=e[a];++g;if(k&&g==1){j=p.slice(0,k);l=b.slice(0,k)}}else{if(g){(j||(j=[])).push(a);(l||(l=[])).push(b[k])}}}if(g<d){j=j||p;l=l||b;h=m.styleInfo;r=m.el.getStyle(j);for(k=j.length;k--;){a=j[k];c=h[a];o=r[a];if(c&&c.parseInt){o=parseInt(o,10)||0}q[l[k]]=o;e[a]=o}}return q},hasProp:function(a){return this.getProp(a)!=null},hasDomProp:function(a){return this.getDomProp(a)!=null},invalidate:function(a){this.context.queueInvalidate(this,a)},markDirty:function(){if(++this.dirtyCount==1){this.context.queueFlush(this)}},onBoxMeasured:function(){var a=this.boxParent,b=this.state;if(a&&a.widthModel.shrinkWrap&&!b.boxMeasured&&this.measuresBox){b.boxMeasured=1;a.boxChildMeasured()}},parseMargins:function(a,d){if(d===true){d=5}var c=typeof d,b;if(c=="string"||c=="number"){b=a.parseBox(d)}else{if(d){b={top:0,right:0,bottom:0,left:0};if(d){d=Ext.apply(b,a.parseBox(d))}}}return b},peek:function(a){return this.props[a]},recoverProp:function(g,b,a){var e=this,d=e.props,c;if(g in b){d[g]=b[g];if(a&&g in a){c=e.dirty||(e.dirty={});c[g]=a[g]}}},redo:function(b){var e=this,c,a,d;e.revertProps(e.props);if(b&&e.wrapsComponent){if(e.childItems){for(d=0,c=e.childItems,a=c.length;d<a;d++){c[d].redo(b)}}for(d=0,c=e.children,a=c.length;d<a;d++){c[d].redo()}}},removeEl:function(b,a){var d=this,e,c;if(b){if(b.dom){c=b}else{e=d.target;if(a){e=a}c=e[b];if(typeof c=="function"){c=c.call(e);if(c===d.el){return this}}}if(c){d.context.removeEl(d,c)}}},revertProps:function(d){var a,b=this.flushedProps,c={};for(a in d){if(b.hasOwnProperty(a)){c[a]=d[a]}}this.writeProps(c)},setAttribute:function(a,c){var b=this;if(!b.attributes){b.attributes={}}b.attributes[a]=c;b.markDirty()},setBox:function(b){var a=this;if("left" in b){a.setProp("x",b.left)}if("top" in b){a.setProp("y",b.top)}a.setSize(b.width,b.height)},setContentHeight:function(a,b){if(!b&&this.hasRawContent){return 1}return this.setProp("contentHeight",a)},setContentWidth:function(b,a){if(!a&&this.hasRawContent){return 1}return this.setProp("contentWidth",b)},setContentSize:function(c,a,b){return this.setContentWidth(c,b)+this.setContentHeight(a,b)==2},setProp:function(d,c,a){var b=this,g=typeof c,e;if(g=="undefined"||(g==="number"&&isNaN(c))){return 0}if(b.props[d]===c){return 1}b.props[d]=c;++b.context.progressCount;if(a===false){b.fireTriggers("domTriggers",d);b.clearBlocks("domBlocks",d)}else{e=b.styleInfo[d];if(e){if(!b.dirty){b.dirty={}}b.dirty[d]=c;b.markDirty()}}b.fireTriggers("triggers",d);b.clearBlocks("blocks",d);return 1},setHeight:function(l,a){var g=this,d=g.target,c=g.ownerCtContext,h,e,b,k,j;if(l<0){l=0}if(!g.wrapsComponent){if(!g.setProp("height",l,a)){return NaN}}else{b=g.collapsedVert?0:(d.minHeight||0);l=Ext.Number.constrain(l,b,d.maxHeight);k=g.props.height;if(!g.setProp("height",l,a)){return NaN}if(c&&!g.isComponentChild&&isNaN(k)){j=--c.remainingChildDimensions;if(!j){c.setProp("containerChildrenSizeDone",true)}}h=g.frameBodyContext;if(h){e=g.getFrameInfo();h[g.el.vertical?"setWidth":"setHeight"](l-e.height,a)}}return l},setWidth:function(b,a){var j=this,g=j.target,e=j.ownerCtContext,k,h,d,c,l;if(b<0){b=0}if(!j.wrapsComponent){if(!j.setProp("width",b,a)){return NaN}}else{d=j.collapsedHorz?0:(g.minWidth||0);b=Ext.Number.constrain(b,d,g.maxWidth);c=j.props.width;if(!j.setProp("width",b,a)){return NaN}if(e&&!j.isComponentChild&&isNaN(c)){l=--e.remainingChildDimensions;if(!l){e.setProp("containerChildrenSizeDone",true)}}k=j.frameBodyContext;if(k){h=j.getFrameInfo();k.setWidth(b-h.width,a)}}return b},setSize:function(c,a,b){this.setWidth(c,b);this.setHeight(a,b)},translateProps:{x:"left",y:"top"},undo:function(b){var e=this,c,a,d;e.revertProps(e.lastBox);if(b&&e.wrapsComponent){if(e.childItems){for(d=0,c=e.childItems,a=c.length;d<a;d++){c[d].undo(b)}}for(d=0,c=e.children,a=c.length;d<a;d++){c[d].undo()}}},unsetProp:function(b){var a=this.dirty;delete this.props[b];if(a){delete a[b]}},writeProps:function(e,d){if(!(e&&typeof e=="object")){return}var t=this,c=t.el,j={},g=0,b=t.styleInfo,s,k,n,p=e.width,l=e.height,u=t.target,h,a,o,q,r,m;if("displayed" in e){c.setDisplayed(e.displayed)}for(k in e){if(d){t.fireTriggers("domTriggers",k);t.clearBlocks("domBlocks",k);t.flushedProps[k]=1}s=b[k];if(s&&s.dom){if(s.suffix&&(n=parseInt(e[k],10))){j[k]=n+s.suffix}else{j[k]=e[k]}++g}}if("x" in e||"y" in e){if(u.isComponent){u.setPosition(e.x,e.y)}else{g+=t.addPositionStyles(j,e)}}if(t.wrapsComponent&&Ext.isIE9){if((h=p!==undefined&&t.hasOverflowY)||(a=l!==undefined&&t.hasOverflowX)){o=t.isAbsolute;if(o===undefined){o=false;m=t.target.getTargetEl();r=m.getStyle("position");t.isAbsolute=(r==="absolute")}if(o){q=Ext.getScrollbarSize();if(h){p=parseInt(p,10)+q.width;j.width=p+"px";++g}if(a){l=parseInt(l,10)+q.height;j.height=l+"px";++g}}}}if(g){c.setStyle(j)}},debugHooks:{$enabled:false,addBlock:function(a,b,c){(b.blockedBy||(b.blockedBy={}))[this.id+"."+c+(a.substring(0,3)=="dom"?":dom":"")]=1;return this.callParent(arguments)},addBoxChild:function(c){var a=this.callParent(arguments),d=this.boxChildren,b;if(d&&d.length==1){b=this.context.boxParents||(this.context.boxParents=new Ext.util.MixedCollection());b.add(this)}return a},addTrigger:function(c,d){var b=this.context.currentLayout,a;this.callParent(arguments);a=this.context.triggersByLayoutId;(a[b.id]||(a[b.id]={}))[this.id+"."+c+(d?":dom":"")]={item:this,name:c}},checkAuthority:function(g){var d=this,a=d[g+"Model"],c=d.context.currentLayout,b,e;if(c==d.target.ownerLayout){b=a.calculated}else{if(c.isComponentLayout){b=d.isTopLevel||a.auto||a.configured}}if(!b){e=d.context.getLayoutName(c);Ext.log(e+" cannot set "+g)}},clearBlocks:function(c,g){var h=this[c],b=h&&h[g],d=this.id+"."+g+(c.substring(0,3)=="dom"?":dom":""),e,a;if(b){for(a in b){e=b[a];delete e.blockedBy[d]}}return this.callParent(arguments)},getEl:function(a){var b=this.callParent(arguments);if(b&&b!==this&&b.parent!==this){Ext.Error.raise({msg:"Got element from wrong component"})}return b},init:function(){var b=this,a;a=b.callParent(arguments);if(b.context.logOn.initItem){Ext.log(b.id," consumers: content=",b.consumersContentWidth,"/",b.consumersContentHeight,", container=",b.consumersContainerWidth,"/",b.consumersContainerHeight,", size=",b.consumersWidth,"/",b.consumersHeight)}return a},invalidate:function(){if(this.wrapsComponent){if(this.context.logOn.invalidate){Ext.log("invalidate: ",this.id)}}else{Ext.Error.raise({msg:"Cannot invalidate an element contextItem"})}return this.callParent(arguments)},setProp:function(g,e,b){var d=this,c=d.context.currentLayout,j=d.context.getLayoutName(c),h=d.id+"."+g,a;if(e!==null){a=d.setBy||(d.setBy={});if(!a[g]){a[g]=j}else{if(a[g]!=j){Ext.log({level:"warn"},"BAD! ",h," set by ",a[g]," and ",j)}}}if(d.context.logOn.setProp){if(typeof e!="undefined"&&!isNaN(e)&&d.props[g]!==e){Ext.log("set ",h," = ",e," (",b,")")}}return this.callParent(arguments)},setHeight:function(a,b,c){if(!c&&this.wrapsComponent){this.checkAuthority("height")}return this.callParent(arguments)},setWidth:function(b,a,c){if(!c&&this.wrapsComponent){this.checkAuthority("width")}return this.callParent(arguments)}}},1,0,0,0,0,0,[Ext.layout,"ContextItem"],function(){var c={dom:true,parseInt:true,suffix:"px"},b={dom:true},a={dom:false};this.prototype.styleInfo={containerChildrenSizeDone:a,containerLayoutDone:a,displayed:a,done:a,x:a,y:a,columnWidthsDone:a,left:c,top:c,right:c,bottom:c,width:c,height:c,"border-top-width":c,"border-right-width":c,"border-bottom-width":c,"border-left-width":c,"margin-top":c,"margin-right":c,"margin-bottom":c,"margin-left":c,"padding-top":c,"padding-right":c,"padding-bottom":c,"padding-left":c,"line-height":b,display:b}}));(Ext.cmd.derive("Ext.layout.Context",Ext.Base,{remainingLayouts:0,state:0,constructor:function(a){var b=this;Ext.apply(b,a);b.items={};b.layouts={};b.blockCount=0;b.cycleCount=0;b.flushCount=0;b.calcCount=0;b.animateQueue=b.newQueue();b.completionQueue=b.newQueue();b.finalizeQueue=b.newQueue();b.finishQueue=b.newQueue();b.flushQueue=b.newQueue();b.invalidateData={};b.layoutQueue=b.newQueue();b.invalidQueue=[];b.triggers={data:{},dom:{}}},callLayout:function(b,a){this.currentLayout=b;b[a](this.getCmp(b.owner))},cancelComponent:function(j,a,m){var p=this,h=j,l=!j.isComponent,b=l?h.length:1,d,c,o,n,g,s,q,r,t,e;for(d=0;d<b;++d){if(l){j=h[d]}if(m&&j.ownerCt){e=this.items[j.ownerCt.el.id];if(e){Ext.Array.remove(e.childItems,p.getCmp(j))}}if(!a){q=p.invalidQueue;o=q.length;if(o){p.invalidQueue=s=[];for(c=0;c<o;++c){r=q[c];t=r.item.target;if(t!=j&&!t.isDescendantOf(j)){s.push(r)}}}}g=j.componentLayout;p.cancelLayout(g);if(g.getLayoutItems){n=g.getLayoutItems();if(n.length){p.cancelComponent(n,true)}}if(j.isContainer&&!j.collapsed){g=j.layout;p.cancelLayout(g);n=g.getVisibleItems();if(n.length){p.cancelComponent(n,true)}}}},cancelLayout:function(b){var a=this;a.completionQueue.remove(b);a.finalizeQueue.remove(b);a.finishQueue.remove(b);a.layoutQueue.remove(b);if(b.running){a.layoutDone(b)}b.ownerContext=null},clearTriggers:function(g,h){var a=g.id,e=this.triggers[h?"dom":"data"],j=e&&e[a],b=(j&&j.length)||0,d,k,c;for(d=0;d<b;++d){c=j[d];k=c.item;e=h?k.domTriggers:k.triggers;delete e[c.prop][a]}},flush:function(){var d=this,a=d.flushQueue.clear(),c=a.length,b;if(c){++d.flushCount;for(b=0;b<c;++b){a[b].flush()}}},flushAnimations:function(){var d=this,b=d.animateQueue.clear(),a=b.length,c;if(a){for(c=0;c<a;c++){if(b[c].target.animate!==false){b[c].flushAnimations()}}Ext.fx.Manager.runner()}},flushInvalidates:function(){var h=this,a=h.invalidQueue,g=a&&a.length,b,e,d,c;h.invalidQueue=[];if(g){e=[];for(c=0;c<g;++c){b=(d=a[c]).item.target;if(!b.container.isDetachedBody){e.push(b);if(d.options){h.invalidateData[b.id]=d.options}}}h.invalidate(e,null)}},flushLayouts:function(h,a,c){var g=this,j=c?g[h].items:g[h].clear(),e=j.length,b,d;if(e){for(b=0;b<e;++b){d=j[b];if(!d.running){g.callLayout(d,a)}}g.currentLayout=null}},getCmp:function(a){return this.getItem(a,a.el)},getEl:function(b,a){var c=this.getItem(a,a);if(!c.parent){c.parent=b;if(b.children.length){b.children.push(c)}else{b.children=[c]}}return c},getItem:function(d,b){var e=b.id,a=this.items,c=a[e]||(a[e]=new Ext.layout.ContextItem({context:this,target:d,el:b}));return c},handleFailure:function(){var c=this.layouts,b,a;Ext.failedLayouts=(Ext.failedLayouts||0)+1;for(a in c){b=c[a];if(c.hasOwnProperty(a)){b.running=false;b.ownerContext=null}}},invalidate:function(l,n){var p=this,m=!l.isComponent,c,q,a,g,k,r,o,b,h,j,e,d,s;for(g=0,b=m?l.length:1;g<b;++g){k=m?l[g]:l;if(k.rendered&&!k.hidden){q=k.ownerLayout;h=k.componentLayout;a=!h.ownerContext;s=false;if((!q||!q.needsItemSize)&&k.liquidLayout){s=true}if(!s||(q&&q.setsItemSize)){r=p.getCmp(k);j=(k.isContainer&&!k.collapsed)?k.layout:null;e=p.invalidateData[r.id];delete p.invalidateData[r.id];d=r.init(n,e)}if(s){continue}if(e){p.processInvalidate(e,r,"before")}if(h.beforeLayoutCycle){h.beforeLayoutCycle(r)}if(j&&j.beforeLayoutCycle){j.beforeLayoutCycle(r)}d=r.initContinue(d);c=true;if(h.getLayoutItems){h.renderChildren();o=h.getLayoutItems();if(o.length){p.invalidate(o,true)}}if(j){c=false;j.renderChildren();if(j.needsItemSize||j.activeItemCount){o=j.getVisibleItems();if(o.length){p.invalidate(o,true)}}}r.initDone(c);p.resetLayout(h,r,a);if(j){p.resetLayout(j,r,a)}r.initAnimation();if(e){p.processInvalidate(e,r,"after")}}}p.currentLayout=null},layoutDone:function(a){var b=a.ownerContext;a.running=false;if(a.isComponentLayout){if(b.measuresBox){b.onBoxMeasured()}b.setProp("done",true)}else{b.setProp("containerLayoutDone",true)}--this.remainingLayouts;++this.progressCount},newQueue:function(){return new Ext.util.Queue()},processInvalidate:function(b,e,a){if(b[a]){var d=this,c=d.currentLayout;d.currentLayout=b.layout||null;b[a](e,b);d.currentLayout=c}},queueAnimation:function(a){this.animateQueue.add(a)},queueCompletion:function(a){this.completionQueue.add(a)},queueFinalize:function(a){this.finalizeQueue.add(a)},queueFlush:function(a){this.flushQueue.add(a)},chainFns:function(a,j,g){var d=this,c=a.layout,e=j.layout,b=a[g],h=j[g];return function(k){var l=d.currentLayout;if(b){d.currentLayout=c;b.call(a.scope||a,k,a)}d.currentLayout=e;h.call(j.scope||j,k,j);d.currentLayout=l}},purgeInvalidates:function(){var h=this,l=[],j=h.invalidQueue,e=j.length,k,m,d,c,b,g,a;for(k=0;k<e;++k){b=j[k];g=b.item.target;a=true;for(m=l.length;m--;){d=l[m];c=d.item.target;if(g.isDescendant(c)){a=false;break}if(c.isDescendant(g)){Ext.Array.erase(l,m,1)}}if(a){l.push(b)}}h.invalidQueue=l},queueInvalidate:function(l,m){var h=this,k=[],j=h.invalidQueue,g=j.length,d,b,e,a,c;if(l.isComponent){l=h.getCmp(d=l)}else{d=l.target}l.invalid=true;while(g--){b=j[g];e=b.item.target;if(d.isDescendantOf(e)){return}if(e==d){if(!(a=b.options)){b.options=m}else{if(m){if(m.widthModel){a.widthModel=m.widthModel}if(m.heightModel){a.heightModel=m.heightModel}if(!(c=a.state)){a.state=m.state}else{if(m.state){Ext.apply(c,m.state)}}if(m.before){a.before=h.chainFns(a,m,"before")}if(m.after){a.after=h.chainFns(a,m,"after")}}}return}if(!e.isDescendantOf(d)){k.push(b)}}k.push({item:l,options:m});h.invalidQueue=k},queueItemLayouts:function(c){var a=c.isComponent?c:c.target,b=a.componentLayout;if(!b.pending&&!b.invalid&&!b.done){this.queueLayout(b)}b=a.layout;if(b&&!b.pending&&!b.invalid&&!b.done){this.queueLayout(b)}},queueLayout:function(a){this.layoutQueue.add(a);a.pending=true},removeEl:function(d,c){var e=c.id,b=d.children,a=this.items;if(b){Ext.Array.remove(b,a[e])}delete a[e]},resetLayout:function(b,c,d){var a=this;a.currentLayout=b;b.done=false;b.pending=true;b.firedTriggers=0;a.layoutQueue.add(b);if(d){a.layouts[b.id]=b;b.running=true;if(b.finishedLayout){a.finishQueue.add(b)}++a.remainingLayouts;++b.layoutCount;b.ownerContext=c;b.beginCount=0;b.blockCount=0;b.calcCount=0;b.triggerCount=0;if(!b.initialized){b.initLayout()}b.beginLayout(c)}else{++b.beginCount;if(!b.running){++a.remainingLayouts;b.running=true;if(b.isComponentLayout){c.unsetProp("done")}a.completionQueue.remove(b);a.finalizeQueue.remove(b)}}b.beginLayoutCycle(c,d)},run:function(){var c=this,b=false,a=100;c.purgeInvalidates();c.flushInvalidates();c.state=1;c.totalCount=c.layoutQueue.getCount();c.flush();while((c.remainingLayouts||c.invalidQueue.length)&&a--){if(c.invalidQueue.length){c.flushInvalidates()}if(c.runCycle()){b=false}else{if(!b){c.flush();b=true;c.flushLayouts("completionQueue","completeLayout")}else{if(!c.invalidQueue.length){c.state=2;break}}}if(!(c.remainingLayouts||c.invalidQueue.length)){c.flush();c.flushLayouts("completionQueue","completeLayout");c.flushLayouts("finalizeQueue","finalizeLayout")}}return c.runComplete()},runComplete:function(){var a=this;a.state=2;if(a.remainingLayouts){a.handleFailure();return false}a.flush();a.flushLayouts("finishQueue","finishedLayout",true);a.flushLayouts("finishQueue","notifyOwner");a.flush();a.flushAnimations();return true},runCycle:function(){var c=this,d=c.layoutQueue.clear(),b=d.length,a;++c.cycleCount;c.progressCount=0;for(a=0;a<b;++a){c.runLayout(c.currentLayout=d[a])}c.currentLayout=null;return c.progressCount>0},runLayout:function(b){var a=this,c=a.getCmp(b.owner);b.pending=false;if(c.state.blocks){return}b.done=true;++b.calcCount;++a.calcCount;b.calculate(c);if(b.done){a.layoutDone(b);if(b.completeLayout){a.queueCompletion(b)}if(b.finalizeLayout){a.queueFinalize(b)}}else{if(!b.pending&&!b.invalid&&!(b.blockCount+b.triggerCount-b.firedTriggers)){a.queueLayout(b)}}},setItemSize:function(h,g,b){var d=h,a=1,c,e;if(h.isComposite){d=h.elements;a=d.length;h=d[0]}else{if(!h.dom&&!h.el){a=d.length;h=d[0]}}for(e=0;e<a;){c=this.get(h);c.setSize(g,b);h=d[++e]}},debugHooks:{$enabled:false,pageAnalyzerMode:true,logOn:{0:0},cancelComponent:function(a){if(this.logOn.cancelComponent){Ext.log("cancelCmp: ",a.id)}this.callParent(arguments)},cancelLayout:function(a){if(this.logOn.cancelLayout){Ext.log("cancelLayout: ",this.getLayoutName(a))}this.callParent(arguments)},callLayout:function(c,b){var a=this.accumByType[c.type],d=a&&a.enter();this.callParent(arguments);if(a){d.leave()}},checkRemainingLayouts:function(){var d=this,c=0,a,b;for(a in d.layouts){b=d.layouts[a];if(d.layouts.hasOwnProperty(a)&&b.running){++c}}if(d.remainingLayouts!=c){Ext.Error.raise({msg:"Bookkeeping error me.remainingLayouts"})}},flush:function(){if(this.logOn.flush){var a=this.flushQueue;Ext.log("--- Flush ",a&&a.getCount())}return this.callParent(arguments)},flushInvalidates:function(){if(this.logOn.flushInvalidate){Ext.log(">> flushInvalidates")}var a=this.callParent(arguments);if(this.logOn.flushInvalidate){Ext.log("<< flushInvalidates")}return a},getCmp:function(b){var a=this.callParent(arguments);if(!a.wrapsComponent){Ext.Error.raise({msg:b.id+" is not a component"})}return a},getEl:function(b,c){var a=this.callParent(arguments);if(a&&a.wrapsComponent){Ext.Error.raise({msg:b.id+"/"+c.id+" is a component (expected element)"})}return a},getLayoutName:function(a){return a.owner.id+"<"+a.type+">"},layoutDone:function(c){var b=this,a=b.getLayoutName(c);if(b.logOn.layoutDone){Ext.log("layoutDone: ",a," ( ",b.remainingLayouts," running)")}if(!c.running){Ext.Error.raise({msg:a+" is already done"})}if(!b.remainingLayouts){Ext.Error.raise({msg:a+" finished but no layouts are running"})}b.callParent(arguments)},layoutTreeHasFailures:function(d,a){var c=this;function e(j){var g=!j.done,h,k;if(j.done){for(h in c.layouts){if(c.layouts.hasOwnProperty(h)){k=c.layouts[h];if(k.owner.ownerLayout===j){if(e(k)){g=true}}}}}return g}if(e(d)){return true}function b(h){var g,j;a[h.id]=1;for(g in c.layouts){if(c.layouts.hasOwnProperty(g)){j=c.layouts[g];if(j.owner.ownerLayout===h){b(j)}}}}b(d);return false},queueLayout:function(a){if(a.done||a.blockCount||a.pending){Ext.Error.raise({msg:this.getLayoutName(a)+" should not be queued for layout"})}if(this.logOn.queueLayout){Ext.log("Queue ",this.getLayoutName(a))}return this.callParent(arguments)},reportLayoutResult:function(j,q){var l=this,a=j.owner,d=l.getCmp(a),g=[],h=[],o,n,e,b,m,p,k,c;q[j.id]=1;for(o in j.blockedBy){if(j.blockedBy.hasOwnProperty(o)){g.push(j.blockedBy[o])}}g.sort();for(o in l.triggersByLayoutId[j.id]){if(l.triggersByLayoutId[j.id].hasOwnProperty(o)){n=l.triggersByLayoutId[j.id][o];h.push({name:o,info:n})}}h.sort(function(s,r){return s.name<r.name?-1:(r.name<s.name?1:0)});Ext.log({indent:1},(j.done?"++":"--"),l.getLayoutName(j),(d.isBoxParent?" [isBoxParent]":""),(d.boxChildren?" - boxChildren: "+d.state.boxesMeasured+"/"+d.boxChildren.length:""),d.boxParent?(" - boxParent: "+d.boxParent.id):""," - size: ",d.widthModel.name,"/",d.heightModel.name);if(!j.done||l.reportOnSuccess){if(g.length){++Ext.log.indent;Ext.log({indent:1},"blockedBy:  count=",j.blockCount);b=g.length;for(e=0;e<b;e++){Ext.log(g[e])}Ext.log.indent-=2}if(h.length){++Ext.log.indent;Ext.log({indent:1},"triggeredBy: count="+j.triggerCount);b=h.length;for(e=0;e<b;e++){c=n.info||n;p=c.item;k=(p.setBy&&p.setBy[c.name])||"?";n=h[e];Ext.log(n.name," (",p.props[c.name],") dirty: ",(p.dirty?!!p.dirty[c.name]:false),", setBy: ",k)}Ext.log.indent-=2}}for(o in l.layouts){if(l.layouts.hasOwnProperty(o)){m=l.layouts[o];if(!m.done&&m.owner.ownerLayout===j){l.reportLayoutResult(m,q)}}}for(o in l.layouts){if(l.layouts.hasOwnProperty(o)){m=l.layouts[o];if(m.done&&m.owner.ownerLayout===j){l.reportLayoutResult(m,q)}}}--Ext.log.indent},resetLayout:function(e){var d=this,c=e.type,b=d.getLayoutName(e),a=d.accumByType[c],g;if(d.logOn.resetLayout){Ext.log("resetLayout: ",b," ( ",d.remainingLayouts," running)")}if(!d.state){if(!a&&d.profileLayoutsByType){d.accumByType[c]=a=Ext.Perf.get("layout_"+e.type)}d.numByType[c]=(d.numByType[c]||0)+1}g=a&&a.enter();d.callParent(arguments);if(a){g.leave()}d.checkRemainingLayouts()},round:function(a){return Math.round(a*1000)/1000},run:function(){var o=this,j,d,r,q,g,h,k,b,c,s,m,a,p,l,e;o.accumByType={};o.calcsByType={};o.numByType={};o.timesByType={};o.triggersByLayoutId={};Ext.log.indentSize=3;Ext.log("==================== LAYOUT ====================");d=Ext.perf.getTimestamp();j=o.callParent(arguments);d=Ext.perf.getTimestamp()-d;if(o.logOn.boxParent&&o.boxParents){for(r in o.boxParents){if(o.boxParents.hasOwnProperty(r)){k=o.boxParents[r];b=k.boxChildren;c=b.length;Ext.log("boxParent: ",k.id);for(g=0;g<c;++g){Ext.log(" --> ",b[g].id)}}}}if(j){Ext.log("----------------- SUCCESS -----------------")}else{Ext.log({level:"error"},"----------------- FAILURE -----------------")}for(r in o.layouts){if(o.layouts.hasOwnProperty(r)){h=o.layouts[r];if(h.running){Ext.log.error("Layout left running: ",o.getLayoutName(h))}if(h.ownerContext){Ext.log.error("Layout left connected: ",o.getLayoutName(h))}}}if(!j||o.reportOnSuccess){s={};m=0;for(r in o.layouts){if(o.layouts.hasOwnProperty(r)){h=o.layouts[r];if(o.items[h.owner.el.id].isTopLevel){if(o.reportOnSuccess||o.layoutTreeHasFailures(h,s)){o.reportLayoutResult(h,s)}}}}for(r in o.layouts){if(o.layouts.hasOwnProperty(r)){h=o.layouts[r];if(!s[h.id]){if(!m){Ext.log("----- Unreported!! -----")}++m;o.reportLayoutResult(h,s)}}}}Ext.log("Cycles: ",o.cycleCount,", Flushes: ",o.flushCount,", Calculates: ",o.calcCount," in ",o.round(d)," msec");Ext.log("Calculates by type:");a=[];for(r in o.numByType){if(o.numByType.hasOwnProperty(r)){p=o.numByType[r];a.push({type:r,total:p,calcs:o.calcsByType[r],multiple:Math.round(o.calcsByType[r]/p*10)/10,calcTime:o.round(o.timesByType[r]),avgCalcTime:o.round(o.timesByType[r]/o.calcsByType[r])})}}a.sort(function(t,n){return n.calcTime-t.calcTime});l=a.length;for(g=0;g<l;g++){e=a[g];Ext.log(e.type,": ",e.total," in ",e.calcs," tries (",e.multiple,"x) at ",e.calcTime," msec (avg ",e.avgCalcTime," msec)")}return j},runCycle:function(){if(this.logOn.runCycle){Ext.log(">>> Cycle ",this.cycleCount," (queue length: ",this.layoutQueue.length,")")}return this.callParent(arguments)},runLayout:function(e){var d=this,c=e.type,a=d.accumByType[c],h,b,g;if(d.logOn.calculate){Ext.log("-- calculate ",this.getLayoutName(e))}h=a&&a.enter();g=Ext.perf.getTimestamp();b=d.callParent(arguments);g=Ext.perf.getTimestamp()-g;if(a){h.leave()}d.calcsByType[c]=(d.calcsByType[c]||0)+1;d.timesByType[c]=(d.timesByType[c]||0)+g;return b}}},1,0,0,0,0,0,[Ext.layout,"Context"],0));(Ext.cmd.derive("Ext.layout.component.FieldSet",Ext.layout.component.Body,{type:"fieldset",defaultCollapsedWidth:100,beforeLayoutCycle:function(a){if(a.target.collapsed){a.heightModel=this.sizeModels.shrinkWrap}},beginLayoutCycle:function(b){var c=b.target,a;Ext.layout.component.Body.prototype.beginLayoutCycle.apply(this,arguments);if(c.collapsed){b.setContentHeight(0);b.restoreMinHeight=c.minHeight;delete c.minHeight;if(b.widthModel.shrinkWrap){a=c.lastComponentSize;b.setContentWidth((a&&a.contentWidth)||this.defaultCollapsedWidth)}}},finishedLayout:function(c){var a=this.owner,b=c.restoreMinHeight;Ext.layout.component.Component.prototype.finishedLayout.apply(this,arguments);if(b){a.minHeight=b}},calculateOwnerHeightFromContentHeight:function(d,c){var a=d.getBorderInfo(),b=d.target.legend;return d.getProp("contentHeight")+d.getPaddingInfo().height+(Ext.isIE8?d.bodyContext.getPaddingInfo().top:0)+(b?b.getHeight():a.top)+a.bottom},publishInnerHeight:function(c,a){var b=c.target.legend;if(b){a-=b.getHeight()}Ext.layout.component.Body.prototype.publishInnerHeight.apply(this,[c,a])},getLayoutItems:function(){var a=this.owner.legend;return a?[a]:[]}},0,0,0,0,["layout.fieldset"],0,[Ext.layout.component,"FieldSet"],0));(Ext.cmd.derive("Ext.layout.container.Absolute",Ext.layout.container.Anchor,{alternateClassName:"Ext.layout.AbsoluteLayout",targetCls:Ext.baseCSSPrefix+"abs-layout-ct",itemCls:Ext.baseCSSPrefix+"abs-layout-item",ignoreOnContentChange:true,type:"absolute",adjustWidthAnchor:function(c,b){var d=this.targetPadding,a=b.getStyle("left");return c-a+d.left},adjustHeightAnchor:function(b,a){var c=this.targetPadding,d=a.getStyle("top");return b-d+c.top},isItemLayoutRoot:function(a){return this.ignoreOnContentChange||Ext.layout.Layout.prototype.isItemLayoutRoot.apply(this,arguments)},isItemShrinkWrap:function(a){return true},beginLayout:function(b){var a=this,c=a.getTarget();Ext.layout.container.Auto.prototype.beginLayout.apply(this,arguments);if(c.dom!==document.body){c.position()}a.targetPadding=b.targetContext.getPaddingInfo()},isItemBoxParent:function(a){return true},onContentChange:function(){if(this.ignoreOnContentChange){return false}return Ext.layout.Layout.prototype.onContentChange.apply(this,arguments)},calculateContentSize:function(m,k){var u=this,d=(k||0)|((m.widthModel.shrinkWrap?1:0)|(m.heightModel.shrinkWrap?2:0)),c=(d&1)||undefined,h=(d&2)||undefined,b=m.childItems,g=b.length,r=0,p=0,l=0,e=m.props,t,j,n,o,s,a,q;if(c){if(isNaN(e.contentWidth)){++l}else{c=undefined}}if(h){if(isNaN(e.contentHeight)){++l}else{h=undefined}}if(l){for(s=0;s<g;++s){n=b[s];j=n.target;o=h&&n.getProp("height");q=c&&n.getProp("width");a=n.getMarginInfo();o+=a.bottom;q+=a.right;r=Math.max(r,(j.y||0)+o);p=Math.max(p,(j.x||0)+q);if(isNaN(r)&&isNaN(p)){u.done=false;return}}if(c||h){t=m.targetContext.getPaddingInfo()}if(c&&!m.setContentWidth(p+t.width)){u.done=false}if(h&&!m.setContentHeight(r+t.height)){u.done=false}}}},0,0,0,0,["layout.absolute"],0,[Ext.layout.container,"Absolute",Ext.layout,"AbsoluteLayout"],0));(Ext.cmd.derive("Ext.layout.container.Accordion",Ext.layout.container.VBox,{type:"accordion",alternateClassName:"Ext.layout.AccordionLayout",targetCls:Ext.baseCSSPrefix+"accordion-layout-ct",itemCls:[Ext.baseCSSPrefix+"box-item",Ext.baseCSSPrefix+"accordion-item"],align:"stretch",enableSplitters:false,fill:true,titleCollapse:true,hideCollapseTool:false,collapseFirst:undefined,animate:true,activeOnTop:false,multi:false,panelCollapseMode:"header",defaultAnimatePolicy:{y:true,height:true},constructor:function(){var a=this;Ext.layout.container.Box.prototype.constructor.apply(this,arguments);if(a.animate){a.animatePolicy={};a.animatePolicy[a.names.x]=true;a.animatePolicy[a.names.width]=true}else{a.animatePolicy=null}},beforeRenderItems:function(h){var j=this,g=h.length,b=j.owner,k=j.collapseFirst,a=Ext.isDefined(k),l=j.getExpanded(true)[0],e=j.multi,d,c;for(c=0;c<g;c++){d=h[c];if(!d.rendered){if(!e||d.collapsible!==false){d.collapsible=true}if(d.collapsible){if(a){d.collapseFirst=k}if(j.hideCollapseTool){d.hideCollapseTool=j.hideCollapseTool;d.titleCollapse=true}else{if(j.titleCollapse&&d.titleCollapse===undefined){d.titleCollapse=j.titleCollapse}}}d.hideHeader=d.width=null;d.title=d.title||"&#160;";d.addBodyCls(Ext.baseCSSPrefix+"accordion-body");if(!e){if(l){d.collapsed=l!==d}else{if(d.hasOwnProperty("collapsed")&&d.collapsed===false){l=d}else{d.collapsed=true}}b.mon(d,"show",j.onComponentShow,j)}d.headerOverCls=Ext.baseCSSPrefix+"accordion-hd-over"}}if(!j.processing&&!e){if(!l){if(g){h[0].collapsed=false}}else{if(j.activeOnTop){l.collapsed=false;j.configureItem(l);if(b.items.indexOf(l)>0){b.insert(0,l)}}}}},getItemsRenderTree:function(a){this.beforeRenderItems(a);return Ext.layout.Layout.prototype.getItemsRenderTree.apply(this,arguments)},renderItems:function(a,b){this.beforeRenderItems(a);Ext.layout.Layout.prototype.renderItems.apply(this,arguments)},configureItem:function(a){Ext.layout.container.Container.prototype.configureItem.apply(this,arguments);a.ignoreHeaderBorderManagement=true;a.animCollapse=false;if(this.fill){a.flex=1}},beginLayout:function(a){Ext.layout.container.Box.prototype.beginLayout.apply(this,arguments);this.updatePanelClasses(a)},updatePanelClasses:function(e){var c=e.visibleItems,d=c.length,a=true,b,h,g;for(b=0;b<d;b++){h=c[b];g=h.header;g.addCls(Ext.baseCSSPrefix+"accordion-hd");if(a){g.removeCls(Ext.baseCSSPrefix+"accordion-hd-sibling-expanded")}else{g.addCls(Ext.baseCSSPrefix+"accordion-hd-sibling-expanded")}if(b+1==d&&h.collapsed){g.addCls(Ext.baseCSSPrefix+"accordion-hd-last-collapsed")}else{g.removeCls(Ext.baseCSSPrefix+"accordion-hd-last-collapsed")}a=h.collapsed}},onBeforeComponentExpand:function(h){var d=this,a=d.owner,g=d.multi,e=!g&&!d.animate&&d.activeOnTop,c,b;if(!d.processing){d.processing=true;b=a.deferLayouts;a.deferLayouts=true;if(!g){c=d.getExpanded()[0];if(c&&c!==h){c.collapse()}}if(e){Ext.suspendLayouts();a.insert(0,h);Ext.resumeLayouts()}a.deferLayouts=b;d.processing=false}},onBeforeComponentCollapse:function(d){var e=this,a=e.owner,g,c,b;if(e.owner.items.getCount()===1){return false}if(!e.processing){e.processing=true;b=a.deferLayouts;a.deferLayouts=true;g=d.next()||d.prev();if(e.multi){c=e.getExpanded();if(c.length===1){g.expand()}}else{if(g){g.expand()}}a.deferLayouts=b;e.processing=false}},onComponentShow:function(a){this.onBeforeComponentExpand(a)},onAdd:function(b){var a=this;Ext.layout.container.Box.prototype.onAdd.apply(this,arguments);if(b.collapseMode==="placeholder"){b.collapseMode=a.panelCollapseMode}b.collapseDirection=b.headerPosition;if(a.layoutCount&&!a.multi&&a.owner.items.getCount()>1){a.processing=true;b.collapse();a.processing=false}},onRemove:function(a,d){var c=this,b;Ext.layout.container.Box.prototype.onRemove.apply(this,arguments);if(!c.owner.destroying&&!c.multi&&!a.collapsed){b=c.owner.items.first();if(b){b.expand()}}},getExpanded:function(h){var b=this.owner.items.items,a=b.length,d=0,c=[],g,e;for(;d<a;++d){e=b[d];if(!e.hidden){if(h){g=e.hasOwnProperty("collapsed")&&e.collapsed===false}else{g=!e.collapsed}if(g){c.push(e)}}}return c}},1,0,0,0,["layout.accordion"],0,[Ext.layout.container,"Accordion",Ext.layout,"AccordionLayout"],0));(Ext.cmd.derive("Ext.layout.container.Center",Ext.layout.container.Fit,{alternateClassName:"Ext.ux.layout.Center",percentRe:/^\d+(?:\.\d+)?\%$/,itemCls:Ext.baseCSSPrefix+"center-layout-item",targetCls:Ext.baseCSSPrefix+"center-layout",getItemSizePolicy:function(c,e){var b=this,a=e||b.owner.getSizeModel(),d=b.percentRe,g=((a.width.shrinkWrap||!d.test(c.width))?0:1)|((a.height.shrinkWrap||!d.test(c.height))?0:2);return b.sizePolicies[g]},getPos:function(b,d,c){var a=b.props[c]+d.margins[c],e=Math.round((d.targetSize[c]-a)/2);if(isNaN(e)){this.done=false}return Math.max(e,0)},positionItemX:function(a,c){var b=this.getPos(a,c,"width");a.setProp("x",b)},positionItemY:function(a,c){var b=this.getPos(a,c,"height");a.setProp("y",b)},setItemHeight:function(b,c){var a=parseFloat(b.target.height)/100;b.setHeight(Math.round((c.targetSize.height-c.margins.height)*a))},setItemWidth:function(b,c){var a=parseFloat(b.target.width)/100;b.setWidth(Math.round((c.targetSize.width-c.margins.width)*a))}},0,0,0,0,["layout.center","layout.ux.center"],0,[Ext.layout.container,"Center",Ext.ux.layout,"Center"],0));(Ext.cmd.derive("Ext.layout.container.Form",Ext.layout.container.Auto,{alternateClassName:"Ext.layout.FormLayout",type:"form",formWrapCls:Ext.baseCSSPrefix+"form-layout-wrap",formWrapAutoLabelCls:Ext.baseCSSPrefix+"form-layout-auto-label",formWrapSizedLabelCls:Ext.baseCSSPrefix+"form-layout-sized-label",formColGroupCls:Ext.baseCSSPrefix+"form-layout-colgroup",formColumnCls:Ext.baseCSSPrefix+"form-layout-column",formLabelColumnCls:Ext.baseCSSPrefix+"form-layout-label-column",childEls:["formWrap","labelColumn"],beforeBodyTpl:'<div id="{ownerId}-formWrap" data-ref="formWrap" class="{formWrapCls}"<tpl if="itemSpacing"> style="border-spacing:{itemSpacing}px"</tpl>><div class="{formColGroupCls}"><div id="{ownerId}-labelColumn" data-ref="labelColumn" class="{formColumnCls} {formLabelColumnCls}"<tpl if="labelWidth"> style="width:{labelWidth}"</tpl>></div><div class="{formColumnCls}"></div></div>',afterBodyTpl:"</div>",getRenderData:function(){var c=this,a=c.labelWidth,b=c.formWrapCls,d=Ext.layout.container.Auto.prototype.getRenderData.call(this);if(a){if(typeof a==="number"){a+="px"}d.labelWidth=a;b+=" "+c.formWrapSizedLabelCls}else{b+=" "+c.formWrapAutoLabelCls}d.formWrapCls=b;d.formColGroupCls=c.formColGroupCls;d.formColumnCls=c.formColumnCls;d.formLabelColumnCls=c.formLabelColumnCls;return d},getRenderTarget:function(){return this.formWrap}},0,0,0,0,["layout.form"],0,[Ext.layout.container,"Form",Ext.layout,"FormLayout"],0));(Ext.cmd.derive("Ext.layout.container.SegmentedButton",Ext.layout.container.Container,{needsItemSize:false,setsItemSize:false,_btnRowCls:Ext.baseCSSPrefix+"segmented-button-row",getRenderTree:function(){var d=this,a=Ext.layout.container.Container.prototype.getRenderTree.call(this),b,c;if(d.owner.getVertical()){for(b=0,c=a.length;b<c;b++){a[b]={cls:d._btnRowCls,cn:a[b]}}}return a},getItemLayoutEl:function(a){var b=a.el.dom;return this.owner.getVertical()?b.parentNode:b}},0,0,0,0,["layout.segmentedbutton"],0,[Ext.layout.container,"SegmentedButton"],0));(Ext.cmd.derive("Ext.menu.ColorPicker",Ext.menu.Menu,{hideOnClick:true,pickerId:null,initComponent:function(){var b=this,a=Ext.apply({},b.initialConfig);delete a.listeners;Ext.apply(b,{plain:true,showSeparator:false,bodyPadding:0,items:Ext.applyIf({cls:Ext.baseCSSPrefix+"menu-color-item",margin:0,id:b.pickerId,xtype:"colorpicker"},a)});Ext.menu.Menu.prototype.initComponent.apply(this,arguments);b.picker=b.down("colorpicker");b.relayEvents(b.picker,["select"]);if(b.hideOnClick){b.on("select",b.hidePickerOnSelect,b)}},hidePickerOnSelect:function(){Ext.menu.Manager.hideAll()}},0,["colormenu"],["box","colormenu","component","container","menu","panel"],{box:true,colormenu:true,component:true,container:true,menu:true,panel:true},["widget.colormenu"],0,[Ext.menu,"ColorPicker"],0));(Ext.cmd.derive("Ext.menu.DatePicker",Ext.menu.Menu,{hideOnClick:true,pickerId:null,initComponent:function(){var b=this,a=Ext.apply({},b.initialConfig);delete a.listeners;Ext.apply(b,{showSeparator:false,plain:true,bodyPadding:0,items:Ext.applyIf({cls:Ext.baseCSSPrefix+"menu-date-item",margin:0,border:false,id:b.pickerId,xtype:"datepicker"},a)});Ext.menu.Menu.prototype.initComponent.apply(this,arguments);b.picker=b.down("datepicker");b.relayEvents(b.picker,["select"]);if(b.hideOnClick){b.on("select",b.hidePickerOnSelect,b)}},hidePickerOnSelect:function(){Ext.menu.Manager.hideAll()}},0,["datemenu"],["box","component","container","datemenu","menu","panel"],{box:true,component:true,container:true,datemenu:true,menu:true,panel:true},["widget.datemenu"],0,[Ext.menu,"DatePicker"],0));(Ext.cmd.derive("Ext.panel.Pinnable",Ext.Mixin,{mixinId:"pinnable",pinnable:true,pinnedTip:"Unpin this item",unpinnedTip:"Pin this item",initPinnable:function(){var b=this,a=b.isPinned();b.addTool(b.pinTool=Ext.widget({xtype:"tool",type:a?"unpin":"pin",callback:"togglePin",scope:b,tooltip:a?b.pinnedTip:b.unpinnedTip}))},isPinned:function(){return !this.floating},setPinned:function(b){var c=this,a;if(b!==c.isPinned()){a=[c,b];if(c.fireEventArgs("beforepinchange",a)!==false){c.updatePinned(b);c.fireEventArgs("pinchange",a)}}},togglePin:function(){this.setPinned(!this.isPinned())},updatePinned:function(b){var c=this,a=c.pinTool;a.setTooltip(b?c.pinnedTip:c.unpinnedTip);a.setType(b?"unpin":"pin")}},0,0,0,0,0,0,[Ext.panel,"Pinnable"],0));(Ext.cmd.derive("Ext.plugin.Manager",Ext.Base,{alternateClassName:["Ext.PluginManager","Ext.PluginMgr"],singleton:true,typeName:"ptype",create:function(b,e,d){var a,c;if(b.init){a=b}else{if(d){b=Ext.apply({},b);b.cmp=d}else{d=b.cmp}if(b.xclass){a=Ext.create(b)}else{c="plugin."+(b.ptype||e);a=Ext.ClassManager.instantiateByAlias(c,b)}}if(a&&d&&a.setCmp&&!a.setCmpCalled){a.setCmp(d);a.setCmpCalled=true}return a}},0,0,0,0,0,0,[Ext.plugin,"Manager",Ext,"PluginManager",Ext,"PluginMgr"],0));(Ext.cmd.derive("Ext.resizer.BorderSplitterTracker",Ext.resizer.SplitterTracker,{getPrevCmp:null,getNextCmp:null,calculateConstrainRegion:function(){var y=this,a=y.splitter,o=a.collapseTarget,d=a.defaultSplitMin,h=a.vertical?"Width":"Height",c="min"+h,u="max"+h,j="get"+h,t=a.neighbors,e=t.length,n=o.el.getBox(),g=n.x,p=n.y,x=n.right,k=n.bottom,r=a.vertical?(x-g):(k-p),w,l,m,v,s,q,b;m=(o[c]||Math.min(r,d))-r;v=o[u];if(!v){v=1000000000}else{v-=r}b=r;for(w=0;w<e;++w){l=t[w];r=l[j]();s=r-l[u];q=r-(l[c]||Math.min(r,d));if(!isNaN(s)){if(m<s){m=s}}if(v>q){v=q}}if(v-m<2){return null}n=new Ext.util.Region(p,x,k,g);y.constraintAdjusters[y.getCollapseDirection()](n,m,v,a);y.dragInfo={minRange:m,maxRange:v,targetSize:b};return n},constraintAdjusters:{left:function(c,a,b,d){c[0]=c.x=c.left=c.right+a;c.right+=b+d.getWidth()},top:function(c,a,b,d){c[1]=c.y=c.top=c.bottom+a;c.bottom+=b+d.getHeight()},bottom:function(c,a,b,d){c.bottom=c.top-a;c.top-=b+d.getHeight()},right:function(c,a,b,d){c.right=c.left-a;c[0]=c.x=c.left=c.x-b+d.getWidth()}},onBeforeStart:function(k){var g=this,h=g.splitter,d=h.collapseTarget,b=h.neighbors,c=b.length,a,j;if(d.collapsed){return false}for(a=0;a<c;++a){j=b[a];if(j.collapsed&&j.isHorz===d.isHorz){return false}}if(!(g.constrainTo=g.calculateConstrainRegion())){return false}return true},performResize:function(k,j){var l=this,b=l.splitter,h=b.getCollapseDirection(),a=b.collapseTarget,g=l.splitAdjusters[b.vertical?"horz":"vert"],m=j[g.index],d=l.dragInfo,c;if(h=="right"||h=="bottom"){m=-m}m=Math.min(Math.max(d.minRange,m),d.maxRange);if(m){(c=b.ownerCt).suspendLayouts();g.adjustTarget(a,d.targetSize,m);c.resumeLayouts(true)}},splitAdjusters:{horz:{index:0,adjustTarget:function(b,a,c){b.flex=null;b.setSize(a+c)}},vert:{index:1,adjustTarget:function(b,a,c){b.flex=null;b.setSize(undefined,a+c)}}},getCollapseDirection:function(){return this.splitter.getCollapseDirection()}},0,0,0,0,0,0,[Ext.resizer,"BorderSplitterTracker"],0));(Ext.cmd.derive("Ext.resizer.Handle",Ext.Component,{handleCls:"",baseHandleCls:Ext.baseCSSPrefix+"resizable-handle",region:"",ariaRole:"presentation",beforeRender:function(){var a=this;Ext.util.Renderable.prototype.beforeRender.call(this);a.protoEl.unselectable();a.addCls(a.baseHandleCls,a.baseHandleCls+"-"+a.region,a.handleCls)}},0,0,["box","component"],{box:true,component:true},0,0,[Ext.resizer,"Handle"],0));(Ext.cmd.derive("Ext.resizer.ResizeTracker",Ext.dd.DragTracker,{dynamic:true,preserveRatio:false,constrainTo:null,proxyCls:Ext.baseCSSPrefix+"resizable-proxy",constructor:function(b){var d=this,c,a,e;if(!b.el){if(b.target.isComponent){d.el=b.target.getEl()}else{d.el=b.target}}Ext.dd.DragTracker.prototype.constructor.apply(this,arguments);if(d.preserveRatio&&d.minWidth&&d.minHeight){c=d.minWidth/d.el.getWidth();a=d.minHeight/d.el.getHeight();if(a>c){d.minWidth=d.el.getWidth()*a}else{d.minHeight=d.el.getHeight()*c}}if(d.throttle){e=Ext.Function.createThrottled(function(){Ext.resizer.ResizeTracker.prototype.resize.apply(d,arguments)},d.throttle);d.resize=function(h,j,g){if(g){Ext.resizer.ResizeTracker.prototype.resize.apply(d,arguments)}else{e.apply(null,arguments)}}}},onBeforeStart:function(a){this.startBox=this.target.getBox()},getProxy:function(){var a=this;if(!a.dynamic&&!a.proxy){a.proxy=a.createProxy(a.target||a.el);a.hideProxy=true}if(a.proxy){a.proxy.show();return a.proxy}},createProxy:function(c){var b,a=this.proxyCls;if(c.isComponent){b=c.getProxy().addCls(a)}else{b=c.createProxy({tag:"div",role:"presentation",cls:a,id:c.id+"-rzproxy"},Ext.getBody())}b.removeCls(Ext.baseCSSPrefix+"proxy-el");return b},onStart:function(a){this.activeResizeHandle=Ext.get(this.getDragTarget().id);if(!this.dynamic){this.resize(this.startBox)}},onDrag:function(a){if(this.dynamic||this.proxy){this.updateDimensions(a)}},updateDimensions:function(r,n){var s=this,c=s.activeResizeHandle.region,g=s.getOffset(s.constrainTo?"dragTarget":null),l=s.startBox,h,p=0,t=0,k,q,a=0,v=0,u,j,b,d,o,m;c=s.convertRegionName(c);switch(c){case"south":t=g[1];b=2;break;case"north":t=-g[1];v=-t;b=2;break;case"east":p=g[0];b=1;break;case"west":p=-g[0];a=-p;b=1;break;case"northeast":t=-g[1];v=-t;p=g[0];j=[l.x,l.y+l.height];b=3;break;case"southeast":t=g[1];p=g[0];j=[l.x,l.y];b=3;break;case"southwest":p=-g[0];a=-p;t=g[1];j=[l.x+l.width,l.y];b=3;break;case"northwest":t=-g[1];v=-t;p=-g[0];a=-p;j=[l.x+l.width,l.y+l.height];b=3;break}d={width:l.width+p,height:l.height+t,x:l.x+a,y:l.y+v};k=Ext.Number.snap(d.width,s.widthIncrement);q=Ext.Number.snap(d.height,s.heightIncrement);if(k!=d.width||q!=d.height){switch(c){case"northeast":d.y-=q-d.height;break;case"north":d.y-=q-d.height;break;case"southwest":d.x-=k-d.width;break;case"west":d.x-=k-d.width;break;case"northwest":d.x-=k-d.width;d.y-=q-d.height}d.width=k;d.height=q}if(d.width<s.minWidth||d.width>s.maxWidth){d.width=Ext.Number.constrain(d.width,s.minWidth,s.maxWidth);if(a){d.x=l.x+(l.width-d.width)}}else{s.lastX=d.x}if(d.height<s.minHeight||d.height>s.maxHeight){d.height=Ext.Number.constrain(d.height,s.minHeight,s.maxHeight);if(v){d.y=l.y+(l.height-d.height)}}else{s.lastY=d.y}if(s.preserveRatio||r.shiftKey){h=s.startBox.width/s.startBox.height;o=Math.min(Math.max(s.minHeight,d.width/h),s.maxHeight);m=Math.min(Math.max(s.minWidth,d.height*h),s.maxWidth);if(b==1){d.height=o}else{if(b==2){d.width=m}else{u=Math.abs(j[0]-this.lastXY[0])/Math.abs(j[1]-this.lastXY[1]);if(u>h){d.height=o}else{d.width=m}if(c=="northeast"){d.y=l.y-(d.height-l.height)}else{if(c=="northwest"){d.y=l.y-(d.height-l.height);d.x=l.x-(d.width-l.width)}else{if(c=="southwest"){d.x=l.x-(d.width-l.width)}}}}}}s.setPosition=d.x!==s.startBox.x||d.y!==s.startBox.y;s.resize(d,n)},resize:function(d,a){var c=this,e,b=c.setPosition;if(c.dynamic||(!c.dynamic&&a)){if(b){c.target.setBox(d)}else{c.target.setSize(d.width,d.height)}}if(!a){e=c.getProxy();if(e&&e!==c.target){if(b||c.hideProxy){e.setBox(d)}else{e.setSize(d.width,d.height)}}}},onEnd:function(a){this.updateDimensions(a,true);if(this.proxy&&this.hideProxy){this.proxy.hide()}},convertRegionName:function(a){return a}},1,0,0,0,0,0,[Ext.resizer,"ResizeTracker"],0));(Ext.cmd.derive("Ext.resizer.Resizer",Ext.Base,{alternateClassName:"Ext.Resizable",handleCls:Ext.baseCSSPrefix+"resizable-handle",overCls:Ext.baseCSSPrefix+"resizable-handle-over",pinnedCls:Ext.baseCSSPrefix+"resizable-pinned",wrapCls:Ext.baseCSSPrefix+"resizable-wrap",wrappedCls:Ext.baseCSSPrefix+"resizable-wrapped",delimiterRe:/(?:\s*[,;]\s*)|\s+/,dynamic:true,handles:"s e se",height:null,width:null,heightIncrement:0,widthIncrement:0,minHeight:20,minWidth:20,maxHeight:10000,maxWidth:10000,pinned:false,preserveRatio:false,transparent:false,possiblePositions:{n:"north",s:"south",e:"east",w:"west",se:"southeast",sw:"southwest",nw:"northwest",ne:"northeast"},ariaRole:"presentation",constructor:function(b){var k=this,o,r,p=k.handles,c,n,g,d=0,m,a,e,q,l=[],j,h=Ext.dom.Element.unselectableCls;if(Ext.isString(b)||Ext.isElement(b)||b.dom){o=b;b=arguments[1]||{};b.target=o}k.mixins.observable.constructor.call(k,b);o=k.target;if(o){if(o.isComponent){o.addClsWithUI("resizable");k.el=o.getEl();if(o.minWidth){k.minWidth=o.minWidth}if(o.minHeight){k.minHeight=o.minHeight}if(o.maxWidth){k.maxWidth=o.maxWidth}if(o.maxHeight){k.maxHeight=o.maxHeight}if(o.floating){if(!k.hasOwnProperty("handles")){k.handles="n ne e se s sw w nw"}}k.el=o.getEl()}else{o=k.el=k.target=Ext.get(o)}}else{o=k.target=k.el=Ext.get(k.el)}k.el.addCls(Ext.Component.prototype.borderBoxCls);if(Ext.isNumber(k.width)){k.width=Ext.Number.constrain(k.width,k.minWidth,k.maxWidth)}if(Ext.isNumber(k.height)){k.height=Ext.Number.constrain(k.height,k.minHeight,k.maxHeight)}if(k.width!==null||k.height!==null){k.target.setSize(k.width,k.height)}r=k.el.dom.tagName.toUpperCase();if(r==="TEXTAREA"||r==="IMG"||r==="TABLE"){k.originalTarget=k.target;k.el.addCls(k.wrappedCls);k.target=k.el=k.el.wrap({role:"presentation",cls:k.wrapCls,id:k.el.id+"-rzwrap",style:o.getStyle(["margin-top","margin-bottom"])});q=o.getPositioning();k.el.setPositioning(q);o.clearPositioning();e=o.getBox();if(q.position!="absolute"){e.x=0;e.y=0}k.el.setBox(e);o.setStyle("position","absolute")}k.el.position();if(k.pinned){k.el.addCls(k.pinnedCls)}k.resizeTracker=new Ext.resizer.ResizeTracker({disabled:k.disabled,target:o,el:k.el,constrainTo:k.constrainTo,handleCls:k.handleCls,overCls:k.overCls,throttle:k.throttle,proxy:k.originalTarget?k.el:null,dynamic:k.originalTarget?true:k.dynamic,originalTarget:k.originalTarget,delegate:"."+k.handleCls,preserveRatio:k.preserveRatio,heightIncrement:k.heightIncrement,widthIncrement:k.widthIncrement,minHeight:k.minHeight,maxHeight:k.maxHeight,minWidth:k.minWidth,maxWidth:k.maxWidth});k.resizeTracker.on({mousedown:k.onBeforeResize,drag:k.onResize,dragend:k.onResizeEnd,scope:k});if(k.handles=="all"){k.handles="n s e w ne nw se sw"}p=k.handles=k.handles.split(k.delimiterRe);n=k.possiblePositions;g=p.length;c=k.handleCls+" "+k.handleCls+"-{0}";if(k.target.isComponent){j=k.target.baseCls;c+=" "+j+"-handle "+j+"-handle-{0}";if(Ext.supports.CSS3BorderRadius){c+=" "+j+"-handle-{0}-br"}}for(;d<g;d++){if(p[d]&&n[p[d]]){m=n[p[d]];l.push('<div id="',k.el.id,"-",m,'-handle" class="',Ext.String.format(c,m)," ",h,'" unselectable="on" role="presentation"',"></div>")}}Ext.DomHelper.append(k.el,l.join(""));l.length=0;for(d=0;d<g;d++){if(p[d]&&n[p[d]]){m=n[p[d]];a=k[m]=k.el.getById(k.el.id+"-"+m+"-handle");l.push(a);a.region=m;if(k.transparent){a.setOpacity(0)}}}k.resizeTracker.handleEls=l},disable:function(){this.resizeTracker.disable()},enable:function(){this.resizeTracker.enable()},onBeforeResize:function(a,b){return this.fireResizeEvent("beforeresize",a,b)},onResize:function(a,b){return this.fireResizeEvent("resizedrag",a,b)},onResizeEnd:function(a,b){return this.fireResizeEvent("resize",a,b)},fireResizeEvent:function(a,d,g){var c=this,b;if(c.hasListeners[a]){b=c.el.getBox();return c.fireEvent(a,c,b.width,b.height,g)}},resizeTo:function(b,a){var c=this;c.target.setSize(b,a);c.fireEvent("resize",c,b,a,null)},getEl:function(){return this.el},getTarget:function(){return this.target},destroy:function(){var e=this,d,c=e.handles,a=c.length,b=e.possiblePositions,g;e.resizeTracker.destroy();for(d=0;d<a;d++){if((g=e[b[c[d]]])){g.destroy()}}}},1,0,0,0,0,[["observable",Ext.util.Observable]],[Ext.resizer,"Resizer",Ext,"Resizable"],0));(Ext.cmd.derive("Ext.scroll.Indicator",Ext.Base,{config:{axis:null,containerEl:null,scroller:null,minLength:null,scrollSize:null,maxScrollPosition:null,hasOpposite:null},hideAnimConfig:{to:{opacity:0},duration:300},names:{x:{side:"l",getSize:"getHeight",clientSize:"clientWidth",setLength:"setWidth",setPosition:"setLocalX"},y:{side:"t",getSize:"getWidth",clientSize:"clientHeight",setLength:"setHeight",setPosition:"setLocalY"}},cls:Ext.baseCSSPrefix+"scroll-indicator",constructor:function(b){var e=this,a,c,d;e.initConfig(b);d=e.getAxis();e.names=e.names[d];e.el=e.getContainerEl().createChild({cls:e.cls+" "+e.cls+"-"+d});if(!e.size){e.cacheStyles()}a=e.getMinLength();c=e.size;if(!a||a<c){e.setMinLength(c)}},cacheStyles:function(){var d=this,c=d.self.prototype,b=d.el,a=d.getAxis(),e=d.names;c.size=b[e.getSize]();c.margin=b.getMargin(e.side)},hide:function(){this.el.animate(this.hideAnimConfig)},refreshLength:function(){var j=this,h=j.names,b=j.getScrollSize(),a=j.getContainerEl().dom[h.clientSize],g=a/b,k=j.getHasOpposite(),d=j.margin*2,e=k?(d+j.size):d,c=Math.max(Math.round((a-e)*g),j.getMinLength());j.sizeAdjust=e;j.length=c;j.el[h.setLength](c)},setValue:function(n){var l=this,c=l.el,j=l.names,h=l.getMaxScrollPosition(),a=l.getContainerEl().dom[j.clientSize],k=l.length,d=l.getMinLength(),b=k,g=a-k-l.sizeAdjust,o=Math.round,m=Math.max,e;if(n<0){b=o(m(k+(k*n/a),d));e=0}else{if(n>h){b=o(m(k-(k*(n-h)/a),d));e=g+k-b}else{e=o(n/h*g)}}c[j.setPosition](e);c[j.setLength](b)},show:function(){var b=this,a=b.el,c=a.getActiveAnimation();if(c){c.end()}b.refreshLength();a.setStyle("opacity","")},destroy:function(){this.el.destroy()}},1,0,0,0,0,0,[Ext.scroll,"Indicator"],0));(Ext.cmd.derive("Ext.scroll.Manager",Ext.util.Observable,{minIndicatorLength:24,refreshCounter:0,translationMethods:{1:"scrollparent",2:"csstransform"},constructor:function(b){var c=this,a={dragend:"onDragEnd",dragcancel:"onDragEnd",scope:c},d;if(Ext.supports.touchScroll===2){a.mousewheel="onMouseWheel";a.scroll={fn:"onElementScroll",delegated:false,scope:c}}Ext.util.Observable.prototype.constructor.apply(this,arguments);c.scroller=new Ext.scroll.Scroller({autoRefresh:false,element:c.el,direction:c.direction,momentumEasing:{bounce:{springTension:1}},outOfBoundRestrictFactor:0,translatable:{translationMethod:c.translationMethods[Ext.supports.touchScroll]},listeners:{scrollstart:"onScrollStart",scroll:"onScroll",scrollend:"onScrollEnd",scope:c}});Ext.GlobalEvents.on("idle",c.doRefresh,c);d=c.containerEl=c.el.parent();c.owner.mon(d,a);c.initIndicators()},onElementScroll:function(a,b){b.scrollTop=b.scrollLeft=0},destroy:function(){var a=this;a.clearListeners();Ext.GlobalEvents.un("idle",a.doRefresh,a);a.scroller.destroy()},initIndicators:function(){var c=this,d=c.containerEl,a=c.scroller,b=c.minIndicatorLength;if(Ext.supports.touchScroll===2){c.xIndicator=new Ext.scroll.Indicator({axis:"x",scroller:a,containerEl:d,minLength:b});c.yIndicator=new Ext.scroll.Indicator({axis:"y",scroller:a,containerEl:d,minLength:b});c.refreshIndicators()}},invokeIndicators:function(e,d,b){var g=this,a=g.xIndicator,c=g.yIndicator;if(a&&g.isAxisEnabled("x")){a[e].apply(a,d)}if(c&&g.isAxisEnabled("y")){c[e].apply(c,b||d)}},getPosition:function(){return this.scroller.getPosition()},refresh:function(a){++this.refreshCounter;if(a){this.doRefresh()}},refreshIndicators:function(){var c=this,a=c.scroller,d=a.getMaxPosition(),b=a.getSize();c.invokeIndicators("setMaxScrollPosition",[d.x],[d.y]);c.invokeIndicators("setScrollSize",[b.x],[b.y]);c.invokeIndicators("setHasOpposite",[c.isAxisEnabled("y")],[c.isAxisEnabled("x")])},doRefresh:function(){var b=this,a=b.scroller;if(b.refreshCounter){a.refresh();b.refreshIndicators();b.refreshCounter=0}},onScrollStart:function(){this.isTouching=Ext.isScrolling=true;this.invokeIndicators("show");this.toggleOthers(true)},onScroll:function(b,a,d){var c=this;c.invokeIndicators("setValue",[a],[d]);c.fireEvent("scroll",c,a,d)},onScrollEnd:function(){var a=this;Ext.isScrolling=false;if(a.isTouching){return}a.invokeIndicators("hide")},onDragEnd:function(){this.isTouching=false;this.toggleOthers(false)},onMouseWheel:function(m){var n=this,j=n.scroller,p=m.getWheelDeltas(),d=-p.x,b=-p.y,h=j.getPosition(),g=j.getMaxPosition(),a=j.getMinPosition(),o=Math.max,c=Math.min,l=o(c(h.x+d,g.x),a.x),k=o(c(h.y+b,g.y),a.y);d=l-h.x;b=k-h.y;if(!d&&!b){return}m.stopEvent();n.onScrollStart();n.scrollBy(d,b);n.onScroll(j,l,k);n.onScrollEnd(j)},isAxisEnabled:function(a){return this.scroller.isAxisEnabled(a)},setScrollX:function(b){var a=this.scroller;a.scrollTo(b,a.getPosition().y)},setScrollY:function(b){var a=this.scroller;a.scrollTo(a.getPosition().x,b)},scrollTo:function(a,c,b){this.scroller.scrollTo(a,c,b)},scrollBy:function(a,c,b){if(a.length){b=c;c=a[1];a=a[0]}else{if(!Ext.isNumber(a)){b=c;c=a.y;a=a.x}}this.scroller.scrollBy(a,c,b)},scrollIntoView:function(d,e,b){var m=this,l=m.containerEl,k=m.scroller,h=k.getPosition(),g=h.x,c=h.y,j=Ext.fly(d).getScrollIntoViewXY(l,g,c),a=j.x,n=j.y;if(e===false){a=g}if(a!==g||n!==c){k.scrollTo(a,n,b)}},toggleOthers:function(b){var c=Ext.scroll.Scroller.instances,a,d;for(d in c){a=c[d];if(a!==this.scroller){a.setDisabled(b)}}},preventDefault:function(a){if(a.touches.length===1){a.preventDefault()}}},1,0,0,0,0,0,[Ext.scroll,"Manager"],0));(Ext.cmd.derive("Ext.selection.CellModel",Ext.selection.Model,{isCellModel:true,enableKeyNav:true,preventWrap:false,noSelection:{row:-1,column:-1},bindComponent:function(a){var c=this,b=a.ownerCt;c.primaryView=a;c.views=c.views||[];c.views.push(a);c.bindStore(a.getStore(),true);a.on({cellclick:c.onCellClick,refresh:c.onViewRefresh,scope:c});if(b.optimizedColumnMove!==false){b.on("columnmove",c.onColumnMove,c)}if(c.enableKeyNav){c.initKeyNav(a)}},initKeyNav:function(a){var b=this;if(!a.rendered){a.on("render",Ext.Function.bind(b.initKeyNav,b,[a],0),b,{single:true});return}a.el.set({tabIndex:-1});b.keyNav=new Ext.util.KeyNav({target:a.el,ignoreInputFields:true,up:b.onKeyUp,down:b.onKeyDown,right:b.onKeyRight,left:b.onKeyLeft,tab:b.onKeyTab,scope:b})},getHeaderCt:function(){var b=this.getCurrentPosition(),a=b?b.view:this.primaryView;return a.headerCt},onKeyUp:function(a){this.doMove("up",a)},onKeyDown:function(a){this.doMove("down",a)},onKeyLeft:function(a){this.doMove("left",a)},onKeyRight:function(a){this.doMove("right",a)},doMove:function(b,a){this.keyNavigation=true;this.move(b,a);this.keyNavigation=false},selectWithEvent:function(a,b){this.select(a)},select:function(h,e,b){var d=this,g,c=d.getCurrentPosition(),a=d.view.store;if(h||h===0){if(h.isModel){g=a.indexOf(h);if(g!==-1){h={row:g,column:c?c.column:0}}else{h=null}}else{if(typeof h==="number"){h={row:h,column:0}}}}if(h){d.selectByPosition(h,b)}else{d.deselect()}},deselect:function(a,b){this.selectByPosition(null,b)},move:function(a,d){var c=this,g=c.getCurrentPosition(),b;if(g){b=g.view.walkCells(g,a,d,c.preventWrap);if(b){return c.setCurrentPosition(b)}}},getCurrentPosition:function(){return this.selecting?this.nextSelection:this.selection},setCurrentPosition:function(e,a,d){var c=this,b=c.selection;c.lastSelection=b;if(e){e=e.isCellContext?e:new Ext.grid.CellContext(c.primaryView).setPosition(e)}if(!d&&b){if(e&&(e.record===b.record&&e.columnHeader===b.columnHeader&&e.view===b.view)){e=null}else{c.onCellDeselect(c.selection,a)}}if(e){c.nextSelection=e;c.selecting=true;c.onCellSelect(c.nextSelection,a);c.selecting=false;return(c.selection=e)}},isCellSelected:function(a,e,c){var d=this,b,g=d.getCurrentPosition();if(g&&g.view===a){b=new Ext.grid.CellContext(a).setPosition({row:e,column:c});return(b.record===g.record)&&(b.columnHeader===g.columnHeader)}},onStoreRemove:function(b,a,c){var d=this,e=d.getCurrentPosition();Ext.selection.Model.prototype.onStoreRemove.apply(this,arguments);if(e&&b.getCount()&&b.indexOf(e.record)!==-1){d.setCurrentPosition({row:e.record,column:e.columnHeader},true,true)}else{d.selection=null}},onStoreClear:function(){Ext.selection.Model.prototype.onStoreClear.apply(this,arguments);this.selection=null},onStoreAdd:function(){var a=this,b=a.getCurrentPosition();Ext.selection.Model.prototype.onStoreAdd.apply(this,arguments);if(b){a.setCurrentPosition({row:b.record,column:b.columnHeader},true,true)}else{a.selection=null}},onCellClick:function(c,a,g,b,k,d,j){var h;if(d!==-1){h=new Ext.grid.CellContext(c).setPosition({view:c,row:k,column:c.ownerCt.getColumnManager().getHeaderAtIndex(g)});this.setCurrentPosition(h)}},onCellSelect:function(a,b){if(a&&a.row!==undefined&&a.row>-1){this.doSelect(a.record,false,b)}},onCellDeselect:function(a,b){if(a&&a.row!==undefined){this.doDeselect(a.record,b)}},onSelectChange:function(b,e,d,h){var g=this,j,c,a;if(e){j=g.nextSelection;c="select"}else{j=g.lastSelection||g.noSelection;c="deselect"}a=j.view||g.primaryView;if((d||g.fireEvent("before"+c,g,b,j.row,j.column))!==false&&h()!==false){if(e){if(!g.preventFocus){a.focusCell(j,true)}a.onCellSelect(j)}else{a.onCellDeselect(j);delete g.selection}if(!d){g.fireEvent(c,g,b,j.row,j.column)}}},onKeyTab:function(d,b){var c=this,g=c.getCurrentPosition(),a;if(g){a=g.view.editingPlugin;if(a&&c.wasEditing){c.onEditorTab(a,d)}else{c.move(d.shiftKey?"left":"right",d)}}},onEditorTab:function(b,g){var c=this,d=g.shiftKey?"left":"right",h=c.getCurrentPosition(),a=h.view.walkCells(h,d,g,c.preventWrap);if(a){if(b.startEdit(a.record,a.columnHeader)){c.wasEditing=false}else{c.setCurrentPosition(a);c.wasEditing=true}}},refresh:function(){var b=this.getCurrentPosition(),a;if(b&&(a=this.store.indexOf(this.selected.last()))!==-1){b.row=a}},onColumnMove:function(d,e,b,c){var a=d.up("tablepanel");if(a){this.onViewRefresh(a.view)}},onUpdate:function(a){var b=this,c;if(b.isSelected(a)){c=b.selecting?b.nextSelection:b.selection;b.view.onCellSelect(c)}},onViewRefresh:function(b){var d=this,h=d.getCurrentPosition(),c,g=b.headerCt,a,e;if(h&&h.view===b){a=h.record;e=h.columnHeader;if(!e.isDescendantOf(g)){e=g.queryById(e.id)||g.down('[text="'+e.text+'"]')||g.down('[dataIndex="'+e.dataIndex+'"]')}if(h.record){if(e&&(b.store.indexOfId(a.getId())!==-1)){c=new Ext.grid.CellContext(b).setPosition({row:a,column:e});d.setCurrentPosition(c)}}else{d.selection=null}}},selectByPosition:function(a,b){this.setCurrentPosition(a,b)}},0,0,0,0,["selection.cellmodel"],0,[Ext.selection,"CellModel"],0));(Ext.cmd.derive("Ext.slider.Thumb",Ext.Base,{constructor:function(a){var b=this;Ext.apply(b,a||{},{cls:Ext.baseCSSPrefix+"slider-thumb",constrain:false});b.callParent([a])},render:function(){var a=this;a.el=a.slider.innerEl.insertFirst(a.getElConfig());a.onRender()},onRender:function(){if(this.disabled){this.disable()}this.initEvents()},getElConfig:function(){var c=this,b=c.slider,a={};a[b.vertical?"bottom":b.horizontalProp]=b.calculateThumbPosition(b.normalizeValue(c.value))+"%";return{style:a,id:this.id,cls:this.cls,role:"presentation"}},move:function(c,b){var g=this,d=g.el,e=g.slider,a=e.vertical?"bottom":e.horizontalProp,j,h;c+="%";if(!b){d.dom.style[a]=c}else{j={};j[a]=c;if(!Ext.supports.GetPositionPercentage){h={};h[a]=d.dom.style[a]}new Ext.fx.Anim({target:d,duration:350,from:h,to:j})}},enable:function(){var a=this;a.disabled=false;if(a.el){a.el.removeCls(a.slider.disabledCls)}},disable:function(){var a=this;a.disabled=true;if(a.el){a.el.addCls(a.slider.disabledCls)}},initEvents:function(){var a=this;a.tracker=new Ext.dd.DragTracker({el:a.el,onBeforeStart:a.onBeforeDragStart.bind(a),onStart:a.onDragStart.bind(a),onDrag:a.onDrag.bind(a),onEnd:a.onDragEnd.bind(a),tolerance:3,autoStart:300,overCls:Ext.baseCSSPrefix+"slider-thumb-over"})},onBeforeDragStart:function(d){var c=this,b=c.el,a=c.tracker.getXY(),g=c.pointerOffset=b.getXY();if(c.disabled){return false}else{g[0]+=Math.floor(b.getWidth()/2)-a[0];g[1]+=Math.floor(b.getHeight()/2)-a[1];c.slider.promoteThumb(c);return true}},onDragStart:function(c){var b=this,a=b.slider;a.onDragStart(b,c);b.el.addCls(Ext.baseCSSPrefix+"slider-thumb-drag");b.dragging=b.slider.dragging=true;b.dragStartValue=b.value;a.fireEvent("dragstart",a,c,b)},onDrag:function(h){var d=this,c=d.slider,b=d.index,g=d.getValueFromTracker(),a,j;if(g!==undefined){if(d.constrain){a=c.thumbs[b+1];j=c.thumbs[b-1];if(j!==undefined&&g<=j.value){g=j.value}if(a!==undefined&&g>=a.value){g=a.value}}c.setValue(b,g,false);c.fireEvent("drag",c,h,d)}},getValueFromTracker:function(){var b=this.slider,a=this.tracker.getXY(),c;a[0]+=this.pointerOffset[0];a[1]+=this.pointerOffset[1];c=b.getTrackpoint(a);if(c!==undefined){return b.reversePixelValue(c)}},onDragEnd:function(d){var b=this,a=b.slider,c=b.value;a.onDragEnd(b,d);b.el.removeCls(Ext.baseCSSPrefix+"slider-thumb-drag");b.dragging=a.dragging=false;a.fireEvent("dragend",a,d);if(b.dragStartValue!=c){a.fireEvent("changecomplete",a,c,b);if(a.publishOnComplete){a.publishValue(c)}}},destroy:function(){Ext.destroy(this.tracker);this.el.destroy();this.el=null}},1,0,0,0,0,0,[Ext.slider,"Thumb"],0));(Ext.cmd.derive("Ext.slider.Tip",Ext.tip.Tip,{minWidth:10,offsets:null,align:null,position:"",defaultVerticalPosition:"left",defaultHorizontalPosition:"top",isSliderTip:true,init:function(c){var b=this,d,a;if(!b.position){b.position=c.vertical?b.defaultVerticalPosition:b.defaultHorizontalPosition}switch(b.position){case"top":a=[0,-10];d="b-t?";break;case"bottom":a=[0,10];d="t-b?";break;case"left":a=[-10,0];d="r-l?";break;case"right":a=[10,0];d="l-r?"}if(!b.align){b.align=d}if(!b.offsets){b.offsets=a}c.on({scope:b,dragstart:b.onSlide,drag:b.onSlide,dragend:b.hide,destroy:b.destroy})},onSlide:function(c,d,a){var b=this;b.show();b.update(b.getText(a));b.el.alignTo(a.el,b.align,b.offsets)},getText:function(a){return String(a.value)}},0,["slidertip"],["box","component","container","panel","slidertip","tip"],{box:true,component:true,container:true,panel:true,slidertip:true,tip:true},["widget.slidertip"],0,[Ext.slider,"Tip"],0));(Ext.cmd.derive("Ext.slider.Multi",Ext.form.field.Base,{alternateClassName:"Ext.slider.MultiSlider",childEls:["endEl","innerEl"],fieldSubTpl:['<div id="{id}" role="{role}" {inputAttrTpl} class="'+Ext.baseCSSPrefix+"slider {fieldCls} {vertical}",'{childElCls}"','<tpl if="tabIdx != null"> tabIndex="{tabIdx}"</tpl>','<tpl if="isVertical"> aria-orientation="vertical"<tpl else> aria-orientation="horizontal"</tpl>',">",'<div id="{cmpId}-endEl" data-ref="endEl" class="'+Ext.baseCSSPrefix+'slider-end" role="presentation">','<div id="{cmpId}-innerEl" data-ref="innerEl" class="'+Ext.baseCSSPrefix+'slider-inner" role="presentation">',"{%this.renderThumbs(out, values)%}","</div>","</div>","</div>",{renderThumbs:function(g,e){var j=e.$comp,h=0,c=j.thumbs,b=c.length,d,a;for(;h<b;h++){d=c[h];a=d.getElConfig();a.id=j.id+"-thumb-"+h;Ext.DomHelper.generateMarkup(a,g)}},disableFormats:true}],horizontalProp:"left",vertical:false,minValue:0,maxValue:100,decimalPrecision:0,keyIncrement:1,increment:0,clickRange:[5,15],clickToChange:true,animate:true,dragging:false,constrainThumbs:true,useTips:true,tipText:null,ariaRole:"slider",initValue:function(){var e=this,b=Ext.valueFrom,c=b(e.values,[b(e.value,b(e.minValue,0))]),d=0,a=c.length;e.originalValue=c;for(;d<a;d++){e.addThumb(e.normalizeValue(c[d]))}},initComponent:function(){var e=this,c,d,g,b,a;e.thumbs=[];e.keyIncrement=Math.max(e.increment,e.keyIncrement);e.extraFieldBodyCls=Ext.baseCSSPrefix+"slider-ct-"+(e.vertical?"vert":"horz");Ext.form.field.Base.prototype.initComponent.call(this);if(e.useTips){if(Ext.isObject(e.useTips)){c=Ext.apply({},e.useTips)}else{c=e.tipText?{getText:e.tipText}:{}}a=e.plugins=e.plugins||[];b=a.length;for(g=0;g<b;g++){if(a[g].isSliderTip){d=true;break}}if(!d){e.plugins.push(new Ext.slider.Tip(c))}}},addThumb:function(c){var b=this,a=new Ext.slider.Thumb({ownerCt:b,value:c,slider:b,index:b.thumbs.length,constrain:b.constrainThumbs,disabled:!!b.readOnly});b.thumbs.push(a);if(b.rendered){a.render()}return a},promoteThumb:function(b){var a=this.thumbStack||(this.thumbStack=Ext.Array.slice(this.thumbs)),d=a.length,e=10000,c;if(a[0]!==b){Ext.Array.remove(a,b);a.unshift(b)}for(c=0;c<d;c++){a[c].el.setStyle("zIndex",e);e-=1000}},getSubTplData:function(){var a=this;return Ext.apply(Ext.form.field.Base.prototype.getSubTplData.call(this),{$comp:a,isVertical:a.vertical,vertical:a.vertical?Ext.baseCSSPrefix+"slider-vert":Ext.baseCSSPrefix+"slider-horz",minValue:a.minValue,maxValue:a.maxValue,value:a.value,tabIdx:a.tabIndex,childElCls:""})},onRender:function(){var e=this,b=e.thumbs,a=b.length,d=0,c;Ext.form.field.Base.prototype.onRender.apply(this,arguments);for(d=0;d<a;d++){c=b[d];c.el=e.el.getById(e.id+"-thumb-"+d);c.onRender()}},initEvents:function(){var a=this;a.mon(a.el,{scope:a,mousedown:a.onMouseDown,keydown:a.onKeyDown})},onDragStart:Ext.emptyFn,onDragEnd:Ext.emptyFn,getTrackpoint:function(h){var g=this,d=g.vertical,c=g.innerEl,b,a,e;if(d){e="top";b=c.getHeight()}else{e=g.horizontalProp;b=c.getWidth()}h=g.transformTrackPoints(c.translatePoints(h));a=Ext.Number.constrain(h[e],0,b);return d?b-a:a},transformTrackPoints:Ext.identityFn,onMouseDown:function(j){var d=this,h=false,c=0,b=d.thumbs,a=b.length,g;if(d.disabled){return}for(;!h&&c<a;c++){h=h||j.target==b[c].el.dom}if(d.clickToChange&&!h){g=d.getTrackpoint(j.getXY());if(g!==undefined){d.onClickChange(g)}}d.focus()},onClickChange:function(d){var c=this,a,b;a=c.getNearest(d);if(!a.disabled){b=a.index;c.setValue(b,Ext.util.Format.round(c.reversePixelValue(d),c.decimalPrecision),undefined,true)}},getNearest:function(j){var k=this,g=k.reversePixelValue(j),l=k.getRange()+5,b=null,e=k.thumbs,c=0,d=e.length,a,m,h;for(;c<d;c++){a=k.thumbs[c];m=a.value;h=Math.abs(m-g);if(Math.abs(h)<=l){b=a;l=h}}return b},onKeyDown:function(c){var b=this,a,d;if(b.disabled||b.thumbs.length!==1){c.preventDefault();return}a=c.getKey();switch(a){case c.UP:case c.RIGHT:c.stopEvent();d=c.ctrlKey?b.maxValue:b.getValue(0)+b.keyIncrement;b.setValue(0,d,undefined,true);break;case c.DOWN:case c.LEFT:c.stopEvent();d=c.ctrlKey?b.minValue:b.getValue(0)-b.keyIncrement;b.setValue(0,d,undefined,true);break;default:c.preventDefault()}},normalizeValue:function(b){var c=this,a=c.zeroBasedSnapping?"snap":"snapInRange";b=Ext.Number[a](b,c.increment,c.minValue,c.maxValue);b=Ext.util.Format.round(b,c.decimalPrecision);b=Ext.Number.constrain(b,c.minValue,c.maxValue);return b},setMinValue:function(g){var e=this,b=e.thumbs,a=b.length,c,d;e.minValue=g;for(d=0;d<a;++d){c=b[d];if(c.value<g){e.setValue(d,g,false)}}e.syncThumbs()},setMaxValue:function(g){var e=this,b=e.thumbs,a=b.length,c,d;e.maxValue=g;for(d=0;d<a;++d){c=b[d];if(c.value>g){e.setValue(d,g,false)}}e.syncThumbs()},setValue:function(h,l,b,e){var k=this,j=k.thumbs,d=k.publishOnComplete,a,g,c,m;if(Ext.isArray(h)){m=h;b=l;for(c=0,g=m.length;c<g;++c){a=j[c];if(a){k.setValue(c,m[c],b)}}return k}a=k.thumbs[h];l=k.normalizeValue(l);if(l!==a.value&&k.fireEvent("beforechange",k,l,a.value,a)!==false){a.value=l;if(k.rendered){a.move(k.calculateThumbPosition(l),Ext.isDefined(b)?b!==false:k.animate);k.fireEvent("change",k,l,a);k.checkDirty();if(e){k.fireEvent("changecomplete",k,l,a);if(d){k.publishValue(l)}}else{if(d===false){k.publishValue(l)}}}}return k},calculateThumbPosition:function(a){var b=this,c=b.minValue,d=(a-c)/b.getRange()*100;if(isNaN(d)){d=0}return d},getRatio:function(){var b=this,d=b.innerEl,a=b.vertical?d.getHeight():d.getWidth(),c=b.getRange();return c===0?a:(a/c)},getRange:function(){return this.maxValue-this.minValue},reversePixelValue:function(a){return this.minValue+(a/this.getRatio())},reversePercentageValue:function(a){return this.minValue+this.getRange()*(a/100)},onDisable:function(){var g=this,d=0,b=g.thumbs,a=b.length,c,e,h;Ext.form.field.Base.prototype.onDisable.call(this);for(;d<a;d++){c=b[d];e=c.el;c.disable();if(Ext.isIE){h=e.getXY();e.hide();g.innerEl.addCls(g.disabledCls).dom.disabled=true;if(!g.thumbHolder){g.thumbHolder=g.endEl.createChild({role:"presentation",cls:Ext.baseCSSPrefix+"slider-thumb "+g.disabledCls})}g.thumbHolder.show().setXY(h)}}},onEnable:function(){var g=this,d=0,b=g.thumbs,a=b.length,c,e;Ext.form.field.Base.prototype.onEnable.call(this);for(;d<a;d++){c=b[d];e=c.el;c.enable();if(Ext.isIE){g.innerEl.removeCls(g.disabledCls).dom.disabled=false;if(g.thumbHolder){g.thumbHolder.hide()}e.show();g.syncThumbs()}}},syncThumbs:function(){if(this.rendered){var a=this.thumbs,c=a.length,b=0;for(;b<c;b++){a[b].move(this.calculateThumbPosition(a[b].value))}}},getValue:function(a){return Ext.isNumber(a)?this.thumbs[a].value:this.getValues()},getValues:function(){var c=[],d=0,b=this.thumbs,a=b.length;for(;d<a;d++){c.push(b[d].value)}return c},getSubmitValue:function(){var a=this;return(a.disabled||!a.submitValue)?null:a.getValue()},reset:function(){var e=this,b=[].concat(e.originalValue),c=0,d=b.length,g;for(;c<d;c++){g=b[c];e.setValue(c,g)}e.clearInvalid();delete e.wasValid},setReadOnly:function(e){var d=this,b=d.thumbs,a=b.length,c=0;Ext.form.field.Base.prototype.setReadOnly.apply(this,arguments);e=d.readOnly;for(;c<a;++c){if(e){b[c].disable()}else{b[c].enable()}}},beforeDestroy:function(){var e=this,b=e.thumbs,d=0,a=b.length,c;for(;d<a;d++){c=b[d];Ext.destroy(c)}Ext.Component.prototype.beforeDestroy.call(this)}},0,["multislider"],["box","component","field","multislider"],{box:true,component:true,field:true,multislider:true},["widget.multislider"],0,[Ext.slider,"Multi",Ext.slider,"MultiSlider"],0));(Ext.cmd.derive("Ext.selection.CheckboxModel",Ext.selection.RowModel,{mode:"MULTI",injectCheckbox:0,checkOnly:false,showHeaderCheckbox:undefined,checkSelector:"."+Ext.baseCSSPrefix+"grid-row-checker",headerWidth:24,checkerOnCls:Ext.baseCSSPrefix+"grid-hd-checker-on",tdCls:Ext.baseCSSPrefix+"grid-cell-special "+Ext.baseCSSPrefix+"grid-cell-row-checker",constructor:function(){var a=this;Ext.selection.RowModel.prototype.constructor.apply(this,arguments);if(a.mode==="SINGLE"&&a.showHeaderCheckbox!==true){a.showHeaderCheckbox=false}},beforeViewRender:function(b){var c=this,a;Ext.selection.Model.prototype.beforeViewRender.apply(this,arguments);if(!c.hasLockedHeader()||b.headerCt.lockedCt){if(c.showHeaderCheckbox!==false){b.headerCt.on("headerclick",c.onHeaderClick,c)}c.addCheckbox(b,true);a=b.ownerCt;if(b.headerCt.lockedCt){a=a.ownerCt}c.mon(a,"reconfigure",c.onReconfigure,c)}},bindComponent:function(a){var b=this;b.sortable=false;Ext.selection.RowModel.prototype.bindComponent.apply(this,arguments)},hasLockedHeader:function(){var a=this.views,c=a.length,b;for(b=0;b<c;b++){if(a[b].headerCt.lockedCt){return true}}return false},addCheckbox:function(a,b){var c=this,d=c.injectCheckbox,e=a.headerCt;if(d!==false){if(d==="first"){d=0}else{if(d==="last"){d=e.getColumnCount()}}Ext.suspendLayouts();if(a.getStore().isBufferedStore){c.showHeaderCheckbox=false}e.add(d,c.getHeaderConfig());Ext.resumeLayouts()}if(b!==true){a.refresh()}},onReconfigure:function(c,a,b){if(b){this.addCheckbox(this.views[0])}},toggleUiHeader:function(e){var b=this.views[0],d=b.headerCt,c=d.child("gridcolumn[isCheckerHd]"),a=this.checkerOnCls;if(c){if(e){c.addCls(a)}else{c.removeCls(a)}}},onHeaderClick:function(c,g,b){if(g.isCheckerHd){b.stopEvent();var a=this,d=g.el.hasCls(Ext.baseCSSPrefix+"grid-hd-checker-on");a.preventFocus=true;if(d){a.deselectAll()}else{a.selectAll()}delete a.preventFocus}},getHeaderConfig:function(){var a=this,b=a.showHeaderCheckbox!==false;return{isCheckerHd:b,text:"&#160;",clickTargetName:"el",width:a.headerWidth,sortable:false,draggable:false,resizable:false,hideable:false,menuDisabled:true,dataIndex:"",tdCls:a.tdCls,cls:b?Ext.baseCSSPrefix+"column-header-checkbox ":"",defaultRenderer:a.renderer.bind(a),editRenderer:a.editRenderer||a.renderEmpty,locked:a.hasLockedHeader()}},renderEmpty:function(){return"&#160;"},refresh:function(){Ext.selection.Model.prototype.refresh.apply(this,arguments);this.updateHeaderState()},renderer:function(g,c,b,h,e,d,a){return'<div class="'+Ext.baseCSSPrefix+'grid-row-checker" role="presentation">&#160;</div>'},processSelection:function(b,a,h,d,j){var g=this,c=j.getTarget(g.checkSelector),k;if(g.checkOnly&&!c){return}if(c){k=g.getSelectionMode();if(k!=="SINGLE"){g.setSelectionMode("SIMPLE")}g.selectWithEvent(a,j);g.setSelectionMode(k)}else{g.selectWithEvent(a,j)}},onSelectChange:function(){Ext.selection.RowModel.prototype.onSelectChange.apply(this,arguments);if(!this.suspendChange){this.updateHeaderState()}},onStoreLoad:function(){Ext.selection.Model.prototype.onStoreLoad.apply(this,arguments);this.updateHeaderState()},onStoreAdd:function(){Ext.selection.Model.prototype.onStoreAdd.apply(this,arguments);this.updateHeaderState()},onStoreRemove:function(){Ext.selection.Model.prototype.onStoreRemove.apply(this,arguments);this.updateHeaderState()},onStoreRefresh:function(){Ext.selection.Model.prototype.onStoreRefresh.apply(this,arguments);this.updateHeaderState()},maybeFireSelectionChange:function(a){if(a&&!this.suspendChange){this.updateHeaderState()}Ext.selection.Model.prototype.maybeFireSelectionChange.apply(this,arguments)},resumeChanges:function(){Ext.selection.Model.prototype.resumeChanges.call(this);if(!this.suspendChange){this.updateHeaderState()}},updateHeaderState:function(){var g=this,h=g.store,e=h.getCount(),j=g.views,k=false,a=0,b,d,c;if(!h.isBufferedStore&&e>0){b=g.selected;k=true;for(c=0,d=b.getCount();c<d;++c){if(h.indexOfId(b.getAt(c).id)===-1){break}++a}k=e===a}if(j&&j.length){g.toggleUiHeader(k)}}},1,0,0,0,["selection.checkboxmodel"],0,[Ext.selection,"CheckboxModel"],0));(Ext.cmd.derive("Ext.slider.Single",Ext.slider.Multi,{alternateClassName:["Ext.Slider","Ext.form.SliderField","Ext.slider.SingleSlider","Ext.slider.Slider"],publishOnComplete:true,getValue:function(){return Ext.slider.Multi.prototype.getValue.apply(this,[0])},setValue:function(d,b){var c=arguments,a=c.length;if(a==1||(a<=3&&typeof c[1]!="number")){c=Ext.toArray(c);c.unshift(0)}return Ext.slider.Multi.prototype.setValue.apply(this,c)},getNearest:function(){return this.thumbs[0]}},0,["slider","sliderfield"],["box","component","field","multislider","slider","sliderfield"],{box:true,component:true,field:true,multislider:true,slider:true,sliderfield:true},["widget.slider","widget.sliderfield"],0,[Ext.slider,"Single",Ext,"Slider",Ext.form,"SliderField",Ext.slider,"SingleSlider",Ext.slider,"Slider"],0));(Ext.cmd.derive("Ext.slider.Widget",Ext.Widget,{cachedConfig:{vertical:false},config:{clickToChange:true,ui:"widget",value:0,minValue:0,maxValue:100,publishOnComplete:true,twoWayBindable:{value:1}},decimalPrecision:0,defaultBindProperty:"value",element:{reference:"element",cls:Ext.baseCSSPrefix+"slider",listeners:{mousedown:"onMouseDown",dragstart:"cancelDrag",drag:"cancelDrag",dragend:"cancelDrag"},children:[{reference:"endEl",cls:Ext.baseCSSPrefix+"slider-end",children:[{reference:"innerEl",cls:Ext.baseCSSPrefix+"slider-inner"}]}]},thumbCls:Ext.baseCSSPrefix+"slider-thumb",horizontalProp:"left",animateOnSetValue:undefined,applyValue:function(e){var d=this,b=d.animateOnSetValue,c,a;if(Ext.isArray(e)){e=Ext.Array.from(e);for(c=0,a=e.length;c<a;++c){d.setThumbValue(c,e[c]=d.normalizeValue(e[c]),b,true)}}else{e=d.normalizeValue(e);d.setThumbValue(0,e,b,true)}return e},updateVertical:function(a,b){this.element.removeCls(Ext.baseCSSPrefix+"slider-"+(b?"vert":"horz"));this.element.addCls(Ext.baseCSSPrefix+"slider-"+(a?"vert":"horz"))},doSetHeight:function(a){Ext.Widget.prototype.doSetHeight.apply(this,arguments);this.endEl.dom.style.height=this.innerEl.dom.style.height="100%"},cancelDrag:function(a){a.stopPropagation()},getThumb:function(c){var d=this,b,a=(d.thumbs||(d.thumbs=[]))[c];if(!a){b={cls:d.thumbCls,style:{}};b["data-thumbIndex"]=c;a=d.thumbs[c]=d.innerEl.createChild(b)}return a},getThumbPositionStyle:function(){return this.getVertical()?"bottom":(this.rtl&&Ext.rtl?"right":"left")},update:function(){var d=this,b=d.getValue(),a=b.length,c;for(c=0;c<a;c++){this.thumbs[c].dom.style[d.getThumbPositionStyle()]=d.calculateThumbPosition(b[c])+"%"}},onMouseDown:function(d){var b=this,a,c=d.getXY(),g;if(!b.disabled&&d.button===0){a=d.getTarget("."+b.thumbCls,null,true);if(a){b.animateOnSetValue=false;b.promoteThumb(a);b.captureMouse(b.onMouseMove,b.onMouseUp,[a],1);g=b.pointerOffset=a.getXY();g[0]+=Math.floor(a.getWidth()/2)-c[0];g[1]+=Math.floor(a.getHeight()/2)-c[1]}else{if(b.getClickToChange()){c=b.getTrackpoint(c);if(c!=null){b.onClickChange(c)}}}}},onClickChange:function(e){var c=this,a,b,d;a=c.getNearest(e);b=parseInt(a.getAttribute("data-thumbIndex"),10);d=Ext.util.Format.round(c.reversePixelValue(e),c.decimalPrecision);if(b){c.setThumbValue(b,d,undefined,true)}else{c.setValue(d)}},getNearest:function(j){var k=this,g=k.reversePixelValue(j),l=k.getRange()+5,b=null,e=k.thumbs,c=0,d=e.length,a,m,h;for(;c<d;c++){a=e[c];m=k.reversePercentageValue(parseInt(a.dom.style[k.getThumbPositionStyle()],10));h=Math.abs(m-g);if(Math.abs(h)<=l){b=a;l=h}}return b},promoteThumb:function(b){var a=this.thumbStack||(this.thumbStack=Ext.Array.slice(this.thumbs)),d=a.length,e=10000,c;if(a[0]!==b){Ext.Array.remove(a,b);a.unshift(b)}for(c=0;c<d;c++){a[c].el.setStyle("zIndex",e);e-=1000}},doMouseMove:function(k,b,g){var d=this,a=k.getXY(),j,c,h;a[0]+=d.pointerOffset[0];a[1]+=d.pointerOffset[1];h=d.getTrackpoint(a);if(h){j=d.reversePixelValue(h);c=parseInt(b.getAttribute("data-thumbIndex"),10);if(c||(!g&&d.getPublishOnComplete())){d.setThumbValue(c,j,false,g)}else{d.setValue(j)}}},onMouseMove:function(b,a){this.doMouseMove(b,a,false)},onMouseUp:function(b,a){this.doMouseMove(b,a,true);delete this.animateOnSetValue},setThumbValue:function(g,k,b,d){var j=this,a,e,h,c,l;if(Ext.isArray(g)){l=g;b=k;for(c=0,h=l.length;c<h;++c){j.setThumbValue(c,l[c],b,d)}return j}a=j.getThumb(g);e=j.reversePercentageValue(parseInt(a.dom.style[j.getThumbPositionStyle()],10));k=j.normalizeValue(k);if(k!==e&&j.fireEvent("beforechange",j,k,e,a)!==false){if(j.element.dom){j.element.set({"aria-valuenow":k,"aria-valuetext":k});j.moveThumb(a,j.calculateThumbPosition(k),Ext.isDefined(b)?b!==false:j.animate);j.fireEvent("change",j,k,a)}}return j},getValue:function(a){var b=this,c;if(Ext.isNumber(a)){c=b.thumbs[a].dom.style[b.getThumbPositionStyle()];c=b.reversePercentageValue(parseInt(c,10))}else{c=b.getValues();if(c.length===1){c=c[0]}}return c},getValues:function(){var e=this,c=[],d=0,b=e.thumbs,a=b.length;for(;d<a;d++){c.push(e.reversePercentageValue(parseInt(e.thumbs[d].dom.style[e.getThumbPositionStyle()],10)))}return c},moveThumb:function(d,c,b){var e=this,a=e.getThumbPositionStyle(),h,g;c+="%";if(!b){d.dom.style[a]=c}else{h={};h[a]=c;if(!Ext.supports.GetPositionPercentage){g={};g[a]=d.dom.style[a]}new Ext.fx.Anim({target:d,duration:350,from:g,to:h})}},normalizeValue:function(b){var c=this,a=c.zeroBasedSnapping?"snap":"snapInRange";b=Ext.Number[a](b,c.increment,c.minValue,c.maxValue);b=Ext.util.Format.round(b,c.decimalPrecision);b=Ext.Number.constrain(b,c.minValue,c.maxValue);return b},getTrackpoint:function(h){var g=this,d=g.getVertical(),c=g.innerEl,b,a,e;if(d){e="top";b=c.getHeight()}else{e="left";b=c.getWidth()}h=g.transformTrackPoints(c.translatePoints(h));a=Ext.Number.constrain(h[e],0,b);return d?b-a:a},transformTrackPoints:Ext.identityFn,calculateThumbPosition:function(a){var b=this,c=(a-b.getMinValue())/b.getRange()*100;if(isNaN(c)){c=0}return c},getRatio:function(){var b=this,d=b.innerEl,a=b.getVertical()?d.getHeight():d.getWidth(),c=b.getRange();return c===0?a:(a/c)},getRange:function(){return this.getMaxValue()-this.getMinValue()},reversePixelValue:function(a){return this.getMinValue()+(a/this.getRatio())},reversePercentageValue:function(a){return this.getMinValue()+this.getRange()*(a/100)},captureMouse:function(h,b,d,a){var g=this,c,e;h=h&&Ext.Function.bind(h,g,d,a);b=b&&Ext.Function.bind(b,g,d,a);c=function(){Ext.getDoc().un(e);if(b){b.apply(g,arguments)}};e={mousemove:h,mouseup:c};Ext.getDoc().on(e)}},0,["sliderwidget"],["sliderwidget","widget"],{sliderwidget:true,widget:true},["widget.sliderwidget"],0,[Ext.slider,"Widget"],0));(Ext.cmd.derive("Ext.sparkline.Shape",Ext.Base,{constructor:function(c,d,b,a){this.target=c;this.id=d;this.type=b;this.args=a},append:function(){this.target.appendShape(this);return this}},1,0,0,0,0,0,[Ext.sparkline,"Shape"],0));(Ext.cmd.derive("Ext.sparkline.CanvasBase",Ext.Base,{shapeCount:0,_pxregex:/(\d+)(px)?\s*$/i,setWidth:function(a){this.pixelWidth=a},setHeight:function(a){this.pixelHeight=a},drawLine:function(c,e,b,d,g,a){return this.drawShape([[c,e],[b,d]],g,a)},drawShape:function(c,b,d,a){return this._genShape("Shape",[c,b,d,a])},drawCircle:function(c,g,b,d,e,a){return this._genShape("Circle",[c,g,b,d,e,a])},drawPieSlice:function(b,h,a,d,c,e,g){return this._genShape("PieSlice",[b,h,a,d,c,e,g])},drawRect:function(b,g,c,a,d,e){return this._genShape("Rect",[b,g,c,a,d,e])},getElement:function(){return this.el},getLastShapeId:function(){return this.lastShapeId},reset:function(){alert("reset not implemented")},_genShape:function(b,a){var c=this.shapeCount++;a.unshift(c);return new Ext.sparkline.Shape(this,c,b,a)},appendShape:function(a){alert("appendShape not implemented")},replaceWithShape:function(b,a){alert("replaceWithShape not implemented")},insertAfterShape:function(b,a){alert("insertAfterShape not implemented")},removeShapeId:function(a){alert("removeShapeId not implemented")},getShapeAt:function(a,b){alert("getShapeAt not implemented")},render:function(){alert("render not implemented")}},0,0,0,0,0,0,[Ext.sparkline,"CanvasBase"],0));(Ext.cmd.derive("Ext.sparkline.CanvasCanvas",Ext.sparkline.CanvasBase,{constructor:function(a){this.owner=a},setWidth:function(a){Ext.sparkline.CanvasBase.prototype.setWidth.apply(this,arguments);this.owner.element.dom.width=a},setHeight:function(a){Ext.sparkline.CanvasBase.prototype.setHeight.apply(this,arguments);this.owner.element.dom.height=a},onOwnerUpdate:function(){var a=this;a.el=a.owner.element;a.interact=!a.owner.initialConfig.disableInteraction;a.shapes={};a.shapeseq=[];a.currentTargetShapeId=a.lastShapeId=null},_getContext:function(c,d,a){var b=this.el.dom.getContext("2d");if(c!=null){b.strokeStyle=c}b.lineWidth=a||1;if(d!=null){b.fillStyle=d}return b},reset:function(){var a=this._getContext();a.clearRect(0,0,this.pixelWidth,this.pixelHeight);this.shapes={};this.shapeseq=[];this.currentTargetShapeId=this.lastShapeId=null},_drawShape:function(h,g,e,j,a){var c=this._getContext(e,j,a),b,d;c.beginPath();c.moveTo(g[0][0]+0.5,g[0][1]+0.5);for(b=1,d=g.length;b<d;b++){c.lineTo(g[b][0]+0.5,g[b][1]+0.5)}if(e!=null){c.stroke()}if(j!=null){c.fill()}if(this.targetX!=null&&this.targetY!=null&&c.isPointInPath(this.targetX,this.targetY)){this.currentTargetShapeId=h}},_drawCircle:function(g,c,j,b,e,h,a){var d=this._getContext(e,h,a);d.beginPath();d.arc(c,j,b,0,2*Math.PI,false);if(this.targetX!=null&&this.targetY!=null&&d.isPointInPath(this.targetX,this.targetY)){this.currentTargetShapeId=g}if(e!==undefined){d.stroke()}if(h!==undefined){d.fill()}},_drawPieSlice:function(e,k,h,d,g,c,j,b){var a=this._getContext(j,b);a.beginPath();a.moveTo(k,h);a.arc(k,h,d,g,c,false);a.lineTo(k,h);a.closePath();if(j!=null){a.stroke()}if(b){a.fill()}if(this.targetX!==undefined&&this.targetY!==undefined&&a.isPointInPath(this.targetX,this.targetY)){this.currentTargetShapeId=e}},_drawRect:function(e,b,h,c,a,d,g){return this._drawShape(e,[[b,h],[b+c,h],[b+c,h+a],[b,h+a],[b,h]],d,g)},appendShape:function(a){this.shapes[a.id]=a;this.shapeseq.push(a.id);this.lastShapeId=a.id;return a.id},replaceWithShape:function(c,a){var d=this.shapeseq,b;this.shapes[a.id]=a;for(b=d.length;b--;){if(d[b]==c){d[b]=a.id}}delete this.shapes[c]},replaceWithShapes:function(c,b){var h=this.shapeseq,e={},a,d,g;for(d=c.length;d--;){e[c[d]]=true}for(d=h.length;d--;){a=h[d];if(e[a]){h.splice(d,1);delete this.shapes[a];g=d}}for(d=b.length;d--;){h.splice(g,0,b[d].id);this.shapes[b[d].id]=b[d]}},insertAfterShape:function(c,a){var d=this.shapeseq,b;for(b=d.length;b--;){if(d[b]===c){d.splice(b+1,0,a.id);this.shapes[a.id]=a;return}}},removeShapeId:function(b){var c=this.shapeseq,a;for(a=c.length;a--;){if(c[a]===b){c.splice(a,1);break}}delete this.shapes[b]},getShapeAt:function(a,b){this.targetX=a;this.targetY=b;this.render();return this.currentTargetShapeId},render:function(){var h=this.shapeseq,a=this.shapes,e=h.length,d=this._getContext(),g,b,c;d.clearRect(0,0,this.pixelWidth,this.pixelHeight);for(c=0;c<e;c++){g=h[c];b=a[g];this["_draw"+b.type].apply(this,b.args)}if(!this.interact){this.shapes={};this.shapeseq=[]}}},1,0,0,0,0,0,[Ext.sparkline,"CanvasCanvas"],0));(Ext.cmd.derive("Ext.sparkline.VmlCanvas",Ext.sparkline.CanvasBase,{constructor:function(a){var b=this;b.owner=a;a.element={tag:"span",reference:"element",listeners:{mouseenter:"onMouseEnter",mouseleave:"onMouseLeave",mousemove:"onMouseMove"},style:{display:"inline-block",position:"relative",overflow:"hidden",margin:"0px",padding:"0px",verticalAlign:"top",cursor:"default"},children:[{tag:"svml:group",reference:"groupEl",coordorigin:"0 0",coordsize:"0 0",style:"position:absolute;width:0;height:0;pointer-events:none"}]}},setWidth:function(a){var b=this;Ext.sparkline.CanvasBase.prototype.setWidth.apply(this,arguments);b.owner.groupEl.dom.coordsize=b.width+" "+(b.height||0);b.owner.groupEl.dom.style.width=a+"px"},setHeight:function(a){var b=this;Ext.sparkline.CanvasBase.prototype.setHeight.apply(this,arguments);b.owner.groupEl.dom.coordsize=(b.width||0)+" "+b.height;b.owner.groupEl.dom.style.height=a+"px"},onOwnerUpdate:function(){var a=this;a.group=a.owner.groupEl;a.el=a.owner.element;a.prerender=[]},_drawShape:function(g,n,j,a,d){var k=[],h,m,l,e,b,c;for(c=0,b=n.length;c<b;c++){k[c]=(n[c][0])+","+(n[c][1])}h=k.splice(0,1);d=d==null?1:d;m=j==null?' stroked="false" ':' strokeWeight="'+d+'px" strokeColor="'+j+'" ';l=a==null?' filled="false"':' fillColor="'+a+'" filled="true" ';e=k[0]===k[k.length-1]?"x ":"";return['<svml:shape coordorigin="0 0" coordsize="',this.pixelWidth," ",this.pixelHeight,'" id="jqsshape',g,'" ',m,l,' style="position:absolute;height:',this.pixelHeight,"px;width:",this.pixelWidth,'px" ',' path="m ',h," l ",k.join(", ")," ",e,'e"></svml:shape>'].join("")},_drawCircle:function(d,j,g,c,h,a,b){var e=c*2,l,k;j-=c;g-=c;l=h==null?' stroked="false" ':' strokeWeight="'+b+'px" strokeColor="'+h+'" ';k=a==null?' filled="false"':' fillColor="'+a+'" filled="true" ';return['<svml:oval id="jqsshape',d,'" ',l,k,' style="position:absolute;top:',g,"px; left:",j,"px;width:",e,"px;height:",e,'px"></svml:oval>'].join("")},_drawPieSlice:function(k,p,n,j,l,e,o,d){var m,c=this.pixelWidth,q=this.pixelHeight,b,a,h,g,s=o==null?' stroked="false" ':' strokeWeight="1px" strokeColor="'+o+'" ',r=d==null?' filled="false"':' fillColor="'+d+'" filled="true" ';if(l===e){return""}if((e-l)===(2*Math.PI)){l=0;e=(2*Math.PI)}b=p+Math.round(Math.cos(l)*j);a=n+Math.round(Math.sin(l)*j);h=p+Math.round(Math.cos(e)*j);g=n+Math.round(Math.sin(e)*j);if(b===h&&a===g){if((e-l)<Math.PI){return""}b=h=p+j;a=g=n}if(b===h&&a===g&&(e-l)<Math.PI){return""}m=[p-j,n-j,p+j,n+j,b,a,h,g];return['<svml:shape coordorigin="0 0" coordsize="',c," ",q,'" id="jqsshape',k,'" ',s,r,' style="position:absolute;height:',q,"px;width:",c,'px" path="m ',p,",",n," wa ",m.join(", "),' x e"></svml:shape>'].join("")},_drawRect:function(e,b,h,c,a,d,g){return this._drawShape(e,[[b,h],[b,h+a],[b+c,h+a],[b+c,h],[b,h]],d,g)},reset:function(){Ext.fly(this.group).empty()},appendShape:function(a){this.prerender.push(this["_draw"+a.type].apply(this,a.args));this.lastShapeId=a.id;return a.id},replaceWithShape:function(d,a){var c=this.el.getById("jqsshape"+d,true),b=this["_draw"+a.type].apply(this,a.args);c.outerHTML=b},replaceWithShapes:function(b,a){var e=this.el.getById("jqsshape"+b[0],true),d="",g=a.length,c;for(c=0;c<g;c++){d+=this["_draw"+a[c].type].apply(this,a[c].args)}e.outerHTML=d;for(c=1;c<b.length;c++){this.el.getById("jqsshape"+b[c]).destroy()}},insertAfterShape:function(d,a){var c=this.el.getById("jqsshape"+d,true),b=this["_draw"+a.type].apply(this,a.args);c.insertAdjacentHTML("afterEnd",b)},removeShapeId:function(b){var a=this.el.getById("jqsshape"+b,true);this.group.removeChild(a)},getShapeAt:function(a,c){var b=this.el.id.substr(8);return b},render:function(){this.group.dom.innerHTML=this.prerender.join("")}},1,0,0,0,0,0,[Ext.sparkline,"VmlCanvas"],function(){Ext.onReady(function(){var a=document;if(a.namespaces&&!a.namespaces.svml){a.namespaces.add("svml","urn:schemas-microsoft-com:vml","#default#VML")}})}));(Ext.cmd.derive("Ext.sparkline.Base",Ext.Widget,{cachedConfig:{baseCls:Ext.baseCSSPrefix+"sparkline",lineColor:"#157fcc",fillColor:"#def",defaultPixelsPerValue:3,tagValuesAttribute:"values",enableTagOptions:false,enableHighlight:true,highlightColor:null,highlightLighten:1.4,tooltipSkipNull:true,tooltipPrefix:"",tooltipSuffix:"",disableTooltips:false,disableInteraction:false,tipTpl:null},config:{values:null},element:{tag:"canvas",reference:"element",style:{display:"inline-block",verticalAlign:"top"},listeners:{mouseenter:"onMouseEnter",mouseleave:"onMouseLeave",mousemove:"onMouseMove"},width:0,height:0},defaultBindProperty:"values",redrawQueue:{},inheritableStatics:{sparkLineTipClass:Ext.baseCSSPrefix+"sparkline-tip-target",onClassCreated:function(a){var c=a.prototype,d=a.getConfigurator().configs,b;for(b in d){if(b!=="tipTpl"){c[Ext.Config.get(b).names.apply]=c.applyConfigChange}}}},constructor:function(a){var b=this;b.canvas=Ext.supports.Canvas?new Ext.sparkline.CanvasCanvas(b):new Ext.sparkline.VmlCanvas(b);if(!b.getDisableTooltips()){b.element.cls=Ext.sparkline.Base.sparkLineTipClass}Ext.apply(b,a);Ext.Widget.prototype.constructor.apply(this,[a]);b.el=b.element},all:function(d,b,a){var c;for(c=b.length;c--;){if(a&&b[c]===null){continue}if(b[c]!==d){return false}}return true},applyConfigChange:function(b){var a=this;a.redrawQueue[a.getId()]=a;if(!a.redrawTimer){Ext.sparkline.Base.prototype.redrawTimer=Ext.Function.requestAnimationFrame(a.processRedrawQueue)}return b},applyTipTpl:function(a){if(!a.isTemplate){a=new Ext.XTemplate(a)}return a},normalizeValue:function(b){var a;switch(b){case"undefined":b=undefined;break;case"null":b=null;break;case"true":b=true;break;case"false":b=false;break;default:a=parseFloat(b);if(b==a){b=a}}return b},normalizeValues:function(c){var b,a=[];for(b=c.length;b--;){a[b]=this.normalizeValue(c[b])}return a},doSetWidth:function(a){var b=this,c=b.element.dom;Ext.Widget.prototype.doSetWidth.apply(this,arguments);b.canvas.setWidth(a);b.width=a;if(b.height==null){b.setHeight(parseInt(b.measurer.getCachedStyle(c.parentNode,"line-height"),10))}else{b.redrawQueue[b.getId()]=b}},doSetHeight:function(a){var b=this;Ext.Widget.prototype.doSetHeight.apply(this,arguments);b.canvas.setHeight(a);b.height=a;b.redrawQueue[b.getId()]=b},updateValues:function(a){this.values=a},redraw:function(){var a=this,b;if(a.getValues()){b=a.tooltip;if(b&&b.isVisible()&&a.currentPageXY&&a.el.getRegion().contains(a.currentPageXY)){a.tooltip.triggerElement=a.el.dom}a.onUpdate();a.canvas.onOwnerUpdate();a.renderGraph()}},onUpdate:Ext.emptyFn,renderGraph:function(){var a=true;if(this.disabled){this.canvas.reset();a=false}return a},onMouseEnter:function(a){this.onMouseMove(a)},onMouseMove:function(a){this.currentPageXY=a.getPoint();this.redraw()},onMouseLeave:function(){var a=this;a.currentPageXY=a.targetX=a.targetY=null;a.redraw()},updateDisplay:function(){var b=this,e,c,a,d;if(b.currentPageXY&&b.el.getRegion().contains(b.currentPageXY)){e=b.canvas.el.getXY();d=b.getRegion(b.currentPageXY[0]-e[0],b.currentPageXY[1]-e[1]);if(d!=null&&!b.disableHighlight){b.renderHighlight(d)}b.fireEvent("sparklineregionchange",b);c=b.tooltip;if(d!=null&&c){a=b.getRegionTooltip(d);if(a){if(!b.lastTooltipHTML||a[0]!==b.lastTooltipHTML[0]||a[1]!==b.lastTooltipHTML[1]){c.setTitle(a[0]);c.update(a[1]);b.lastTooltipHTML=a}}else{c.hide()}}}},getRegion:Ext.emptyFn,getRegionTooltip:function(n){var m=this,d=m.tooltipChartTitle,e=[],p=m.getTipTpl(),g,h,c,k,b,o,l,a;g=m.getRegionFields(n);o=m.tooltipFormatter;if(o){return o(m,m,g)}if(!p){return""}if(!Ext.isArray(g)){g=[g]}h=m.tooltipFormatFieldlist;c=m.tooltipFormatFieldlistKey;if(h&&c){k=[];for(i=g.length;i--;){b=g[i][c];if((a=Ext.Array.indexOf(b,h))!=-1){k[a]=g[i]}}g=k}l=g.length;for(a=0;a<l;a++){if(!g[a].isNull||!m.getTooltipSkipNull()){Ext.apply(g[a],{prefix:m.getTooltipPrefix(),suffix:m.getTooltipSuffix()});e.push(p.apply(g[a]))}}if(d||e.length){return[d,e.join("<br>")]}return""},getRegionFields:Ext.emptyFn,calcHighlightColor:function(a){var d=this,j=d.getHighlightColor(),c=d.getHighlightLighten(),h,g,e,b;if(j){return j}if(c){h=/^#([0-9a-f])([0-9a-f])([0-9a-f])$/i.exec(a)||/^#([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})$/i.exec(a);if(h){e=[];g=a.length===4?16:1;for(b=0;b<3;b++){e[b]=Ext.Number.constrain(Math.round(parseInt(h[b+1],16)*g*c),0,255)}return"rgb("+e.join(",")+")"}}return a},destroy:function(){delete this.redrawQueue[this.getId()];Ext.Widget.prototype.destroy.call(this)}},1,0,["widget"],{widget:true},0,0,[Ext.sparkline,"Base"],function(a){var b=a.prototype;Ext.onReady(function(){b.tooltip=new Ext.tip.ToolTip({id:"sparklines-tooltip",target:document.body,delegate:"."+a.sparkLineTipClass,showDelay:0,dismissDelay:0,hideDelay:400})});a.onClassCreated(a);b.processRedrawQueue=function(){var c=b.redrawQueue,d;for(d in c){c[d].redraw()}b.redrawQueue={};b.redrawTimer=0}}));(Ext.cmd.derive("Ext.sparkline.BarBase",Ext.sparkline.Base,{renderHighlight:function(a){this.renderRegion(a,true)},renderGraph:function(){var h=this,b=h.values,d=h.canvas,k=h.regionShapes||(h.regionShapes={}),a,g,e,c;if(!Ext.sparkline.Base.prototype.renderGraph.call(this)){return}for(e=b.length;e--;){a=h.renderRegion(e);if(a){if(Ext.isArray(a)){g=[];for(c=a.length;c--;){a[c].append();g.push(a[c].id)}k[e]=g}else{a.append();k[e]=a.id}}else{k[e]=null}}if(h.currentPageXY){h.currentRegion=null;h.updateDisplay()}d.render()}},0,0,["widget"],{widget:true},0,0,[Ext.sparkline,"BarBase"],0));(Ext.cmd.derive("Ext.sparkline.RangeMap",Ext.Base,{constructor:function(d){var c,a,b=[];for(c in d){if(d.hasOwnProperty(c)&&typeof c==="string"&&c.indexOf(":")>-1){a=c.split(":");a[0]=a[0].length===0?-Infinity:parseFloat(a[0]);a[1]=a[1].length===0?Infinity:parseFloat(a[1]);a[2]=d[c];b.push(a)}}this.map=d;this.rangelist=b||false},get:function(e){var d=this.rangelist,c,b,a;if((a=this.map[e])!==undefined){return a}if(d){for(c=d.length;c--;){b=d[c];if(b[0]<=e&&b[1]>=e){return b[2]}}}}},1,0,0,0,0,0,[Ext.sparkline,"RangeMap"],0));(Ext.cmd.derive("Ext.sparkline.Bar",Ext.sparkline.BarBase,{config:{barColor:"#3366cc",negBarColor:"#f44",stackedBarColor:["#3366cc","#dc3912","#ff9900","#109618","#66aa00","#dd4477","#0099c6","#990099"],zeroColor:null,nullColor:null,zeroAxis:true,barWidth:4,barSpacing:1,chartRangeMin:null,chartRangeMax:null,chartRangeClip:false,colorMap:null,tipTpl:new Ext.XTemplate("&#9679; {prefix}{value}{suffix}")},remove:function(e,c){var b,d,a=[];for(b=0,d=e.length;b<d;b++){if(e[b]!==c){a.push(e[b])}}return a},all:function(b,d,a){var c;for(c=b.length;c--;){if(a&&b[c]===null){continue}if(b[c]!==d){return false}}return true},applyColorMap:function(a){var b=this;if(Ext.isArray(a)){b.colorMapByIndex=a;b.colorMapByValue=null}else{b.colorMapByIndex=null;b.colorMapByValue=a;if(b.colorMapByValue&&b.colorMapByValue.get==null){b.colorMapByValue=new Ext.sparkline.RangeMap(a)}}return a},onUpdate:function(){var I=this,c=I.values,t=I.getBarWidth(),q=I.getBarSpacing(),k=I.getChartRangeMin(),l=I.getChartRangeMax(),m=I.getChartRangeClip(),D=Infinity,G=-Infinity,v,r,u,e,g,B,h,s,z=I.getZeroAxis(),o,x,A,C,F,E,w,y,H,p,J,n,d,b=[],a=[];for(B=0,h=c.length;B<h;B++){J=c[B];v=typeof(J)==="string"&&J.indexOf(":")>-1;if(v||Ext.isArray(J)){E=true;if(v){J=c[B]=I.normalizeValues(J.split(":"))}J=I.remove(J,null);r=Math.min.apply(Math,J);u=Math.max.apply(Math,J);if(r<D){D=r}if(u>G){G=u}}}I.stacked=E;I.regionShapes={};I.totalBarWidth=t+q;I.width=(c.length*t)+((c.length-1)*q);if(m){C=k==null?-Infinity:k;F=l==null?Infinity:l}g=[];e=E?[]:g;for(B=0,h=c.length;B<h;B++){if(E){w=c[B];c[B]=p=[];b[B]=0;e[B]=a[B]=0;for(y=0,H=w.length;y<H;y++){J=p[y]=m?Ext.Number.constrain(w[y],C,F):w[y];if(J!==null){if(J>0){b[B]+=J}if(D<0&&G>0){if(J<0){a[B]+=Math.abs(J)}else{e[B]+=J}}else{e[B]+=Math.abs(J-(J<0?G:D))}g.push(J)}}}else{J=m?Ext.Number.constrain(c[B],C,F):c[B];J=c[B]=I.normalizeValue(J);if(J!==null){g.push(J)}}}I.max=A=Math.max.apply(Math,g);I.min=x=Math.min.apply(Math,g);I.stackMax=G=E?Math.max.apply(Math,b):A;I.stackMin=D=E?Math.min.apply(Math,g):x;if(k!=null&&(m||k<x)){x=k}if(l!=null&&(m||l>A)){A=l}if(x<=0&&A>=0&&z){o=0}else{if(z==false){o=x}else{if(x>0){o=x}else{o=A}}}I.xAxisOffset=o;s=E?(Math.max.apply(Math,e)+Math.max.apply(Math,a)):A-x;I.canvasHeightEf=(z&&x<0)?I.getHeight()-2:I.getHeight()-1;if(x<o){d=(E&&A>=0)?G:A;n=(d-o)/s*I.getHeight();if(n!==Math.ceil(n)){I.canvasHeightEf-=2;n=Math.ceil(n)}}else{n=I.getHeight()}I.yoffset=n;I.range=s},getRegion:function(b,c){var a=Math.floor(b/this.totalBarWidth);return(a<0||a>=this.values.length)?undefined:a},getRegionFields:function(e){var b=Ext.Array.from(this.values[e]),a=[],d,c;for(c=b.length;c--;){d=b[c];a.push({isNull:d===null,value:d,color:this.calcColor(c,d,e),offset:e})}return a},calcColor:function(k,j,d){var g=this,b=g.colorMapByIndex,h=g.colorMapByValue,a,e,c=g.getZeroColor();if(this.stacked){a=g.getStackedBarColor()}else{a=(j<0)?g.getNegBarColor():g.getBarColor()}if(j===0&&c!==undefined){a=c}if(h&&(e=h.get(j))){a=e}else{if(b&&b.length>d){a=b[d]}}return Ext.isArray(a)?a[k%a.length]:a},renderRegion:function(l,e){var z=this,n=z.values[l],a=z.xAxisOffset,o=z.range,w=z.stacked,c=z.canvas,q=z.getBarWidth(),j=l*z.totalBarWidth,b=z.canvasHeightEf,k=z.yoffset,h,r,t,s,g,u,d,A,v,m,p=z.getNullColor();n=Ext.isArray(n)?n:[n];d=n.length;A=n[0];s=z.all(n,null);m=z.all(n,a,true);if(s){if(p){t=e?p:z.calcHighlightColor(p,z);h=(k>0)?k-1:k;c.drawRect(j,h,q-1,0,t,t).append()}return}g=k;for(u=0;u<d;u++){A=n[u];if(w&&A===a){if(!m||v){continue}v=true}if(o>0){r=Math.floor(b*((Math.abs(A-a)/o)))+1}else{r=1}if(A<a||(A===a&&k===0)){h=g;g+=r}else{h=k-r;k-=r}t=z.calcColor(u,A,l);if(e){t=z.calcHighlightColor(t,z)}c.drawRect(j,h,q-1,r-1,t,t).append()}}},0,["sparklinebar"],["sparklinebar","widget"],{sparklinebar:true,widget:true},["widget.sparklinebar"],0,[Ext.sparkline,"Bar"],function(a){a.onClassCreated(a)}));(Ext.cmd.derive("Ext.sparkline.Box",Ext.sparkline.Base,{config:{raw:false,boxLineColor:"#000",boxFillColor:"#cdf",whiskerColor:"#000",outlierLineColor:"#333",outlierFillColor:"#fff",medianColor:"#f00",showOutliers:true,outlierIQR:1.5,spotRadius:1.5,target:null,targetColor:"#4a2",chartRangeMin:null,chartRangeMax:null,tipTpl:new Ext.XTemplate("{field:this.fields}: {value}",{fields:function(b){var a={lq:"Lower Quartile",med:"Median",uq:"Upper Quartile",lo:"Left Outlier",ro:"Right Outlier",lw:"Left Whisker",rw:"Right Whisker"};return a[b]}}),tooltipFormatFieldlistKey:"field"},quartile:function(a,c){var b;if(c===2){b=Math.floor(a.length/2);return a.length%2?a[b]:(a[b-1]+a[b])/2}else{if(a.length%2){b=(a.length*c+c)/4;return b%1?(a[Math.floor(b)]+a[Math.floor(b)-1])/2:a[b-1]}else{b=(a.length*c+2)/4;return b%1?(a[Math.floor(b)]+a[Math.floor(b)-1])/2:a[b-1]}}},applyValues:function(a){a=Ext.Array.map(Ext.Array.from(a),Number);this.disabled=!(a&&a.length);return a},getRegion:function(){return 1},getRegionFields:function(){var a=[{field:"lq",value:this.quartiles[0]},{field:"med",value:this.quartiles[1]},{field:"uq",value:this.quartiles[2]}];if(this.loutlier!==undefined){a.push({field:"lo",value:this.loutlier})}if(this.routlier!==undefined){a.push({field:"ro",value:this.routlier})}if(this.lwhisker!==undefined){a.push({field:"lw",value:this.lwhisker})}if(this.rwhisker!==undefined){a.push({field:"rw",value:this.rwhisker})}return a},renderHighlight:Ext.emptyFn,renderGraph:function(){var E=this,l=E.canvas,h=E.values,o=h.length,D=E.getWidth(),e=E.getHeight(),q=E.getChartRangeMin(),t=E.getChartRangeMax(),x=q==null?Math.min.apply(Math,h):q,C=t==null?Math.max.apply(Math,h):t,z=0,w,B,j,s,r,p,b,m,A,y,g,F=E.getSpotRadius(),a=E.getOutlierLineColor(),k=E.getOutlierFillColor(),v=E.getShowOutliers(),u=E.getOutlierIQR(),d=E.getLineColor(),c=E.getWhiskerColor(),n=E.getTargetColor();if(!Ext.sparkline.Base.prototype.renderGraph.call(this)){return}if(E.raw){if(v&&h.length>5){B=h[0];w=h[1];s=h[2];r=h[3];p=h[4];b=h[5];m=h[6]}else{w=h[0];s=h[1];r=h[2];p=h[3];b=h[4]}}else{h.sort(function(H,G){return H-G});s=E.quartile(h,1);r=E.quartile(h,2);p=E.quartile(h,3);j=p-s;if(v){w=b=null;for(A=0;A<o;A++){if(w==null&&h[A]>s-(j*u)){w=h[A]}if(h[A]<p+(j*u)){b=h[A]}}B=h[0];m=h[o-1]}else{w=h[0];b=h[o-1]}}E.quartiles=[s,r,p];E.lwhisker=w;E.rwhisker=b;E.loutlier=B;E.routlier=m;g=D/(C-x+1);if(v){z=Math.ceil(F);D-=2*Math.ceil(F);g=D/(C-x+1);if(B<w){l.drawCircle((B-x)*g+z,e/2,F,a,k).append()}if(m>b){l.drawCircle((m-x)*g+z,e/2,F,a,k).append()}}l.drawRect(Math.round((s-x)*g+z),Math.round(e*0.1),Math.round((p-s)*g),Math.round(e*0.8),E.getBoxLineColor(),E.getBoxFillColor()).append();l.drawLine(Math.round((w-x)*g+z),Math.round(e/2),Math.round((s-x)*g+z),Math.round(e/2),d).append();l.drawLine(Math.round((w-x)*g+z),Math.round(e/4),Math.round((w-x)*g+z),Math.round(e-e/4),c).append();l.drawLine(Math.round((b-x)*g+z),Math.round(e/2),Math.round((p-x)*g+z),Math.round(e/2),d).append();l.drawLine(Math.round((b-x)*g+z),Math.round(e/4),Math.round((b-x)*g+z),Math.round(e-e/4),c).append();l.drawLine(Math.round((r-x)*g+z),Math.round(e*0.1),Math.round((r-x)*g+z),Math.round(e*0.9),E.getMedianColor()).append();if(E.target){y=Math.ceil(E.spotRadius);l.drawLine(Math.round((E.target-x)*g+z),Math.round((e/2)-y),Math.round((E.target-x)*g+z),Math.round((e/2)+y),n).append();l.drawLine(Math.round((E.target-x)*g+z-y),Math.round(e/2),Math.round((E.target-x)*g+z+y),Math.round(e/2),n).append()}if(E.currentPageXY&&E.el.getRegion().contains(E.currentPageXY)){E.currentRegion=null;E.updateDisplay()}l.render()}},0,["sparklinebox"],["sparklinebox","widget"],{sparklinebox:true,widget:true},["widget.sparklinebox"],0,[Ext.sparkline,"Box"],0));(Ext.cmd.derive("Ext.sparkline.Bullet",Ext.sparkline.Base,{config:{targetColor:"#f33",targetWidth:3,performanceColor:"#33f",rangeColors:["#d3dafe","#a8b6ff","#7f94ff"],base:null,tipTpl:new Ext.XTemplate("{fieldkey:this.fields} - {value}",{fields:function(a){if(a==="r"){return"Range"}if(a==="p"){return"Performance"}if(a==="t"){return"Target"}}})},applyValues:function(a){a=Ext.Array.map(Ext.Array.from(a),this.normalizeValue);this.disabled=!(a&&a.length);return a},onUpdate:function(){var d=this,b=d.values,c,a,g,e=d.getBase();Ext.sparkline.Base.prototype.onUpdate.apply(this,arguments);g=b.slice();g[0]=g[0]===null?g[2]:g[0];g[1]=b[1]===null?g[2]:g[1];c=Math.min.apply(Math,b);a=Math.max.apply(Math,b);if(e==null){c=c<0?c:0}else{c=e}d.min=c;d.max=a;d.range=a-c;d.shapes={};d.valueShapes={};d.regiondata={};if(!b.length){d.disabled=true}},getRegion:function(a,c){var b=this.canvas.getShapeAt(a,c);return(b!==undefined&&this.shapes[b]!==undefined)?this.shapes[b]:undefined},getRegionFields:function(a){return{fieldkey:a.substr(0,1),value:this.values[a.substr(1)],region:a}},renderHighlight:function(a){switch(a.substr(0,1)){case"r":this.renderRange(a.substr(1),true).append();break;case"p":this.renderPerformance(true).append();break;case"t":this.renderTarget(true).append();break}},renderRange:function(e,b){var d=this.values[e],c=Math.round(this.getWidth()*((d-this.min)/this.range)),a=this.getRangeColors()[e-2];if(b){a=this.calcHighlightColor(a)}return this.canvas.drawRect(0,0,c-1,this.getHeight()-1,a,a)},renderPerformance:function(b){var d=this.values[1],c=Math.round(this.getWidth()*((d-this.min)/this.range)),a=this.getPerformanceColor();if(b){a=this.calcHighlightColor(a)}return this.canvas.drawRect(0,Math.round(this.getHeight()*0.3),c-1,Math.round(this.getHeight()*0.4)-1,a,a)},renderTarget:function(c){var h=this.values[0],e=this.getTargetWidth(),a=Math.round(this.getWidth()*((h-this.min)/this.range)-(e/2)),g=Math.round(this.getHeight()*0.1),d=this.getHeight()-(g*2),b=this.getTargetColor();if(c){b=this.calcHighlightColor(b)}return this.canvas.drawRect(a,g,e-1,d-1,b,b)},renderGraph:function(){var g=this,h=g.values.length,d=g.canvas,e,c,b=g.shapes||(g.shapes={}),a=g.valueShapes||(g.valueShapes={});if(!Ext.sparkline.Base.prototype.renderGraph.call(this)){return}for(e=2;e<h;e++){c=g.renderRange(e).append();b[c.id]="r"+e;a["r"+e]=c.id}if(g.values[1]!==null){c=g.renderPerformance().append();b[c.id]="p1";a.p1=c.id}if(g.values[0]!==null){c=this.renderTarget().append();b[c.id]="t0";a.t0=c.id}if(g.currentPageXY&&g.el.getRegion().contains(g.currentPageXY)){g.updateDisplay()}d.render()}},0,["sparklinebullet"],["sparklinebullet","widget"],{sparklinebullet:true,widget:true},["widget.sparklinebullet"],0,[Ext.sparkline,"Bullet"],0));(Ext.cmd.derive("Ext.sparkline.Discrete",Ext.sparkline.BarBase,{config:{lineHeight:"auto",thresholdColor:null,thresholdValue:0,chartRangeMax:null,chartRangeMin:null,chartRangeClip:false,tipTpl:new Ext.XTemplate("{prefix}{value}{suffix}")},applyValues:function(a){a=Ext.Array.map(Ext.Array.from(a),Number);this.disabled=!(a&&a.length);return a},onUpdate:function(){var c=this,b=c.values,a=c.getChartRangeMin(),d=c.getChartRangeMax(),e=c.getChartRangeClip();Ext.sparkline.Base.prototype.onUpdate.apply(this,arguments);c.regionShapes={};c.min=Math.min.apply(Math,b);c.max=Math.max.apply(Math,b);c.range=c.max-c.min;c.width=c.getWidth();c.interval=Math.floor(c.width/b.length);c.itemWidth=c.width/b.length;if(a!=null&&(e||a<c.min)){c.min=a}if(d!=null&&(e||d>c.max)){c.max=d}if(c.canvas){if(c.getLineHeight()==="auto"){c.setLineHeight(Math.round(c.getHeight()*0.3))}}},getRegion:function(a,b){return Math.floor(a/this.itemWidth)},getRegionFields:function(a){return{isNull:this.values[a]===undefined,value:this.values[a],offset:a}},renderRegion:function(l,e){var n=this,s=n.values,h=n.min,o=n.max,k=n.range,c=n.interval,b=n.canvas,j=n.getHeight(),r=n.getLineHeight(),m=j-r,a,d,g,q,p=n.getThresholdColor();d=Ext.Number.constrain(s[l],h,o);q=l*c;a=Math.round(m-m*((d-h)/k));g=(p&&d<n.getThresholdValue())?p:n.getLineColor();if(e){g=n.calcHighlightColor(g)}b.drawLine(q,a,q,a+r,g).append()}},0,["sparklinediscrete"],["sparklinediscrete","widget"],{sparklinediscrete:true,widget:true},["widget.sparklinediscrete"],0,[Ext.sparkline,"Discrete"],0));(Ext.cmd.derive("Ext.sparkline.Line",Ext.sparkline.Base,{config:{spotColor:"#f80",highlightSpotColor:"#5f5",highlightLineColor:"#f22",spotRadius:1.5,minSpotColor:"#f80",maxSpotColor:"#f80",lineWidth:1,normalRangeMin:null,normalRangeMax:null,normalRangeColor:"#ccc",drawNormalOnTop:false,chartRangeMin:null,chartRangeMax:null,chartRangeMinX:null,chartRangeMaxX:null,tipTpl:new Ext.XTemplate("&#9679; {prefix}{y}{suffix}"),valueSpots:null},applyValueSpots:function(a){if(a&&!a.get){a=new Ext.sparkline.RangeMap(a)}return a},onUpdate:function(){this.vertices=[];this.regionMap=[];this.xvalues=[];this.yvalues=[];this.yminmax=[];this.hightlightSpotId=null},getRegion:function(a,d){var b,c=this.regionMap;for(b=c.length;b--;){if(c[b]!==null&&a>=c[b][0]&&a<=c[b][1]){return c[b][2]}}return undefined},getRegionFields:function(a){return{isNull:this.yvalues[a]===null,x:this.xvalues[a],y:this.yvalues[a],color:this.getLineColor(),fillColor:this.getFillColor(),offset:a}},renderHighlight:function(g){var c=this,a=c.canvas,e=c.vertices[g],b=c.getSpotRadius(),h=c.getHighlightSpotColor(),d=c.getHighlightLineColor();if(!e){return}if(b&&h){a.drawCircle(e[0],e[1],b,null,h).append()}if(d){a.drawLine(e[0],c.canvasTop,e[0],c.canvasTop+c.getHeight(),d).append()}},scanValues:function(){var k=this,l=k.values,c=l.length,a=k.xvalues,h=k.yvalues,m=k.yminmax,e,d,j,g,b;for(e=0;e<c;e++){d=l[e];j=typeof(l[e])==="string";g=typeof(l[e])==="object"&&l[e] instanceof Array;b=j&&l[e].split(":");if(j&&b.length===2){a.push(Number(b[0]));h.push(Number(b[1]));m.push(Number(b[1]))}else{if(g){a.push(d[0]);h.push(d[1]);m.push(d[1])}else{a.push(e);if(l[e]===null||l[e]==="null"){h.push(null)}else{h.push(Number(d));m.push(Number(d))}}}}if(k.xvalues){a=k.xvalues}k.maxy=k.maxyorg=Math.max.apply(Math,m);k.miny=k.minyorg=Math.min.apply(Math,m);k.maxx=Math.max.apply(Math,a);k.minx=Math.min.apply(Math,a);k.xvalues=a;k.yvalues=h;k.yminmax=m},processRangeOptions:function(){var d=this,c=d.getNormalRangeMin(),g=d.getNormalRangeMax(),a=d.getChartRangeMin(),b=d.getChartRangeMinX(),e=d.getChartRangeMax(),h=d.getChartRangeMaxX();if(c!=null){if(c<d.miny){d.miny=c}if(g>d.maxy){d.maxy=g}}if(a!=null&&(d.chartRangeClip||a<d.miny)){d.miny=a}if(e!=null&&(d.chartRangeClip||e>d.maxy)){this.maxy=e}if(b!=null&&(d.chartRangeClipX||b<d.minx)){d.minx=b}if(h!=null&&(d.chartRangeClipX||h>d.maxx)){d.maxx=h}},drawNormalRange:function(c,h,g,d,j){var a=this.getNormalRangeMin(),e=this.getNormalRangeMax(),b=h+Math.round(g-(g*((e-this.miny)/j))),k=Math.round((g*(e-a))/j);this.canvas.drawRect(c,b,d,k,undefined,this.normalRangeColor).append()},renderGraph:function(){var q=this,k=q.canvas,M=q.getWidth(),m=q.getHeight(),d=q.vertices,L=q.getSpotRadius(),O=q.regionMap,B,g,C,t,r,s,J,A,F,E,j,w,n,p,h,K,e,D,o,c=q.getValueSpots(),H,u,G,I,N,l=q.getSpotColor(),b=q.getMinSpotColor(),z=q.getMaxSpotColor(),v=q.getNormalRangeMin(),a=q.getDrawNormalOnTop();if(!Ext.sparkline.Base.prototype.renderGraph.call(this)){return}q.scanValues();q.processRangeOptions();G=q.xvalues;I=q.yvalues;if(!q.yminmax.length||q.yvalues.length<2){return}t=r=0;B=q.maxx-q.minx===0?1:q.maxx-q.minx;g=q.maxy-q.miny===0?1:q.maxy-q.miny;C=q.yvalues.length-1;if(L&&(M<(L*4)||m<(L*4))){L=0}if(L){H=q.getHighlightSpotColor()&&!q.disableInteraction;if(H||b||(l&&I[C]===q.miny)){m-=Math.ceil(L)}if(H||z||(l&&I[C]===q.maxy)){m-=Math.ceil(L);t+=Math.ceil(L)}if(H||((b||z)&&(I[0]===q.miny||I[0]===q.maxy))){r+=Math.ceil(L);M-=Math.ceil(L)}if(H||l||(b||z&&(I[C]===q.miny||I[C]===q.maxy))){M-=Math.ceil(L)}}m--;if(v!=null&&!a){q.drawNormalRange(r,t,m,M,g)}J=[];A=[J];p=h=null;K=I.length;for(N=0;N<K;N++){F=G[N];j=G[N+1];E=I[N];w=r+Math.round((F-q.minx)*(M/B));n=N<K-1?r+Math.round((j-q.minx)*(M/B)):M;h=w+((n-w)/2);O[N]=[p||0,h,N];p=h;if(E===null){if(N){if(I[N-1]!==null){J=[];A.push(J)}d.push(null)}}else{if(E<q.miny){E=q.miny}if(E>q.maxy){E=q.maxy}if(!J.length){J.push([w,t+m])}s=[w,t+Math.round(m-(m*((E-this.miny)/g)))];J.push(s);d.push(s)}}e=[];D=[];o=A.length;for(N=0;N<o;N++){J=A[N];if(J.length){if(q.fillColor){J.push([J[J.length-1][0],(t+m)]);D.push(J.slice(0));J.pop()}if(J.length>2){J[0]=[J[0][0],J[1][1]]}e.push(J)}}o=D.length;for(N=0;N<o;N++){k.drawShape(D[N],q.fillColor,q.fillColor).append()}if(v!=null&&a){q.drawNormalRange(r,t,m,M,g)}o=e.length;for(N=0;N<o;N++){k.drawShape(e[N],q.getLineColor(),null,q.getLineWidth()).append()}if(L&&c){if(c.get==null){c=new Ext.sparkline.RangeMap(c)}for(N=0;N<K;N++){u=c.get(I[N]);if(u){k.drawCircle(r+Math.round((G[N]-q.minx)*(M/B)),t+Math.round(m-(m*((I[N]-q.miny)/g))),L,null,u).append()}}}if(L&&l&&I[C]!=null){k.drawCircle(r+Math.round((G[G.length-1]-q.minx)*(M/B)),t+Math.round(m-(m*((I[C]-q.miny)/g))),L,null,l).append()}if(q.maxy!==q.minyorg){if(L&&b){F=G[Ext.Array.indexOf(I,q.minyorg)];k.drawCircle(r+Math.round((F-q.minx)*(M/B)),t+Math.round(m-(m*((q.minyorg-q.miny)/g))),L,null,b).append()}if(L&&z){F=G[Ext.Array.indexOf(I,q.maxyorg)];k.drawCircle(r+Math.round((F-q.minx)*(M/B)),t+Math.round(m-(m*((q.maxyorg-q.miny)/g))),L,null,z).append()}}q.canvasTop=t;if(q.currentPageXY&&q.el.getRegion().contains(q.currentPageXY)){q.updateDisplay()}k.render()}},0,["sparklineline"],["sparklineline","widget"],{sparklineline:true,widget:true},["widget.sparklineline"],0,[Ext.sparkline,"Line"],0));(Ext.cmd.derive("Ext.sparkline.Pie",Ext.sparkline.Base,{config:{offset:0,sliceColors:["#3366cc","#dc3912","#ff9900","#109618","#66aa00","#dd4477","#0099c6","#990099"],borderWidth:0,borderColor:"#000",tipTpl:new Ext.XTemplate('&#9679; {value} ({percent:number("0.0")}%)')},applyValues:function(a){a=Ext.Array.map(Ext.Array.from(a),Number);this.disabled=!(a&&a.length);return a},onUpdate:function(){var d=this,a=d.values,c=0,b;Ext.sparkline.Base.prototype.onUpdate.apply(this,arguments);d.shapes={};d.valueShapes={};if(a.length>0){for(b=a.length;b--;){c+=a[b]}}d.total=c;d.radius=Math.floor(Math.min(d.getWidth(),d.getHeight())/2)},getRegion:function(a,c){var b=this.canvas.getShapeAt(a,c);return(b!=null&&this.shapes[b]!=null)?this.shapes[b]:null},getRegionFields:function(b){var a=this.getSliceColors();return{isNull:this.values[b]==null,value:this.values[b],percent:this.values[b]/this.total*100,color:a[b%a.length],offset:b}},renderHighlight:function(a){this.renderSlice(a,true).append()},renderSlice:function(m,e){var o=this,d=o.canvas,n=o.radius,a=o.getBorderWidth(),j=o.getOffset(),b=2*Math.PI,s=o.values,p=o.total,l=j?(2*Math.PI)*(j/360):0,c,h,k,q,g,r=this.getSliceColors();q=s.length;for(k=0;k<q;k++){c=l;h=l;if(p>0){h=l+(b*(s[k]/p))}if(m===k){g=r[k%r.length];if(e){g=o.calcHighlightColor(g)}return d.drawPieSlice(n,n,n-a,c,h,null,g)}l=h}},renderGraph:function(){var h=this,c=h.canvas,k=h.values,e=h.radius,a=h.getBorderWidth(),g,d,b=h.shapes||(h.shapes={}),j=h.valueShapes||(h.valueShapes={});if(!Ext.sparkline.Base.prototype.renderGraph.call(this)){return}if(a){c.drawCircle(e,e,Math.floor(e-(a/2)),h.getBorderColor(),null,a).append()}for(d=k.length;d--;){if(k[d]){g=h.renderSlice(d).append();j[d]=g.id;b[g.id]=d}}if(h.currentPageXY&&h.el.getRegion().contains(h.currentPageXY)){h.currentRegion=null;h.updateDisplay()}c.render()}},0,["sparklinepie"],["sparklinepie","widget"],{sparklinepie:true,widget:true},["widget.sparklinepie"],0,[Ext.sparkline,"Pie"],0));(Ext.cmd.derive("Ext.sparkline.TriState",Ext.sparkline.BarBase,{config:{barWidth:4,barSpacing:1,posBarColor:"#6f6",negBarColor:"#f44",zeroBarColor:"#999",colorMap:{},tipTpl:new Ext.XTemplate("&#9679; {value:this.states}",{states:function(a){var b=Number(a);if(b===-1){return"Loss"}if(b===0){return"Draw"}if(b===1){return"Win"}return a}})},applyColorMap:function(a){var b=this;if(Ext.isArray(a)){b.colorMapByIndex=a;b.colorMapByValue=null}else{b.colorMapByIndex=null;b.colorMapByValue=a;if(b.colorMapByValue&&b.colorMapByValue.get==null){b.colorMapByValue=new Ext.sparkline.RangeMap(a)}}return a},applyValues:function(a){a=Ext.Array.map(Ext.Array.from(a),Number);this.disabled=!(a&&a.length);return a},onUpdate:function(){this.totalBarWidth=this.getBarWidth()+this.getBarSpacing()},getBarWidth:function(){var a=this.values;return this._barWidth||(this.getWidth()-(a.length-1)*this.getBarSpacing())/a.length},getRegion:function(a,b){return Math.floor(a/this.totalBarWidth)},getRegionFields:function(a){return{isNull:this.values[a]==null,value:this.values[a],color:this.calcColor(this.values[a],a),offset:a}},calcColor:function(g,h){var e=this,b=e.values,j=e.colorMapByIndex,d=e.colorMapByValue,a,c;if(d&&(c=d.get(g))){a=c}else{if(j&&j.length>h){a=j[h]}else{if(b[h]<0){a=e.getNegBarColor()}else{if(b[h]>0){a=e.getPosBarColor()}else{a=e.getZeroBarColor()}}}}return a},renderRegion:function(e,b){var h=this,l=h.values,a=h.canvas,d,m,g,k,j,c;d=a.pixelHeight;g=Math.round(d/2);k=e*h.totalBarWidth;if(l[e]<0){j=g;m=g-1}else{if(l[e]>0){j=0;m=g-1}else{j=g-1;m=2}}c=h.calcColor(l[e],e);if(c==null){return}if(b){c=h.calcHighlightColor(c)}a.drawRect(k,j,h.getBarWidth()-1,m-1,c,c).append()}},0,["sparklinetristate"],["sparklinetristate","widget"],{sparklinetristate:true,widget:true},["widget.sparklinetristate"],0,[Ext.sparkline,"TriState"],0));(Ext.cmd.derive("Ext.state.CookieProvider",Ext.state.Provider,{constructor:function(a){var b=this;b.path="/";b.expires=new Date(Ext.Date.now()+(1000*60*60*24*7));b.domain=null;b.secure=false;Ext.state.Provider.prototype.constructor.apply(this,arguments);b.state=b.readCookies()},set:function(a,c){var b=this;if(typeof c=="undefined"||c===null){b.clear(a);return}b.setCookie(a,c);Ext.state.Provider.prototype.set.apply(this,arguments)},clear:function(a){this.clearCookie(a);Ext.state.Provider.prototype.clear.apply(this,arguments)},readCookies:function(){var e={},k=document.cookie+";",d=/\s?(.*?)=(.*?);/g,j=this.prefix,a=j.length,h,b,g;while((h=d.exec(k))!=null){b=h[1];g=h[2];if(b&&b.substring(0,a)==j){e[b.substr(a)]=this.decodeValue(g)}}return e},setCookie:function(a,c){var b=this;document.cookie=b.prefix+a+"="+b.encodeValue(c)+((b.expires==null)?"":("; expires="+b.expires.toUTCString()))+((b.path==null)?"":("; path="+b.path))+((b.domain==null)?"":("; domain="+b.domain))+((b.secure==true)?"; secure":"")},clearCookie:function(a){var b=this;document.cookie=b.prefix+a+"=null; expires=Thu, 01-Jan-1970 00:00:01 GMT"+((b.path==null)?"":("; path="+b.path))+((b.domain==null)?"":("; domain="+b.domain))+((b.secure==true)?"; secure":"")}},1,0,0,0,0,0,[Ext.state,"CookieProvider"],0));(Ext.cmd.derive("Ext.state.LocalStorageProvider",Ext.state.Provider,{constructor:function(){var a=this;Ext.state.Provider.prototype.constructor.apply(this,arguments);a.store=a.getStorageObject();if(a.store){a.state=a.readLocalStorage()}else{a.state={}}},readLocalStorage:function(){var a=this.store,e={},d=a.getKeys(),c=d.length,b;while(c--){b=d[c];e[b]=this.decodeValue(a.getItem(b))}return e},set:function(a,c){var b=this;b.clear(a);if(c!=null){b.store.setItem(a,b.encodeValue(c));Ext.state.Provider.prototype.set.apply(this,arguments)}},clear:function(a){this.store.removeItem(a);Ext.state.Provider.prototype.clear.apply(this,arguments)},getStorageObject:function(){var a=this.prefix,c=a,b=c.length-1;if(c.charAt(b)==="-"){c=c.substring(0,b)}return new Ext.util.LocalStorage({id:c,prefix:a})}},1,0,0,0,["state.localstorage"],0,[Ext.state,"LocalStorageProvider"],0));(Ext.cmd.derive("Ext.toolbar.Breadcrumb",Ext.Container,{isBreadcrumb:true,baseCls:Ext.baseCSSPrefix+"breadcrumb",layout:"hbox",config:{buttonUI:"plain-toolbar",displayField:"text",overflowHandler:null,showIcons:null,store:null,useSplitButtons:true},renderConfig:{selection:"root"},_breadcrumbCls:Ext.baseCSSPrefix+"breadcrumb",_btnCls:Ext.baseCSSPrefix+"breadcrumb-btn",_folderIconCls:Ext.baseCSSPrefix+"breadcrumb-icon-folder",_leafIconCls:Ext.baseCSSPrefix+"breadcrumb-icon-leaf",initComponent:function(){var c=this,b=this.layout,a=c.getOverflowHandler();if(typeof b==="string"){b={type:b}}if(a){b.overflowHandler=a}this.layout=b;this.defaultButtonUI=this.getButtonUI();c._buttons=[];c.addCls([c._breadcrumbCls,c._breadcrumbCls+"-"+c.ui]);Ext.container.Container.prototype.initComponent.call(this)},onDestroy:function(){this._buttons=Ext.destroy(this._buttons);Ext.container.Container.prototype.onDestroy.call(this)},afterComponentLayout:function(){var b=this,a=b.layout.overflowHandler;Ext.container.Container.prototype.afterComponentLayout.apply(this,arguments);if(a&&b.tooNarrow&&a.scrollToItem){a.scrollToItem(b.getSelection().get("depth"))}},applySelection:function(a){return(a==="root")?this.getStore().getRoot():a},updateSelection:function(e){var n=this,o=n._buttons,m=[],a=n.items.getCount(),s=n._needsSync,k=n.getDisplayField(),l,r,p,d,c,q,j,b,h,g;Ext.suspendLayouts();if(e){c=e;h=e.get("depth");d=h+1;g=h;while(c){b=c.getId();j=o[g];if(!s&&j&&j._breadcrumbNodeId===b){break}q=c.get(k);if(j){j.setText(q)}else{j=o[g]=Ext.create({xtype:n.getUseSplitButtons()?"splitbutton":"button",ui:n.getButtonUI(),cls:n._btnCls+" "+n._btnCls+"-"+n.ui,text:q,showEmptyMenu:true,menu:{listeners:{click:"_onMenuClick",beforeshow:"_onMenuBeforeShow",scope:this}},handler:"_onButtonClick",scope:n})}l=this.getShowIcons();if(l!==false){p=c.get("icon");r=c.get("iconCls");if(p){j.setIconCls(null);j.setIcon(p)}else{if(r){j.setIcon(null);j.setIconCls(r)}else{if(l){j.setIcon(null);j.setIconCls((c.isLeaf()?n._leafIconCls:n._folderIconCls)+"-"+n.ui)}else{j.setIcon(null);j.setIconCls(null)}}}}j.setArrowVisible(c.hasChildNodes());j._breadcrumbNodeId=c.getId();c=c.parentNode;g--}if(d>a){m=o.slice(a,h+1);n.add(m)}else{for(g=a-1;g>=d;g--){n.remove(n.items.items[g],false)}}}else{n.removeAll(false)}Ext.resumeLayouts(true);n.fireEvent("selectionchange",n,e);n._needsSync=false},applyUseSplitButtons:function(b,a){if(this.rendered&&b!==a){Ext.Error.raise("Cannot reconfigure 'useSplitButtons' config of Ext.toolbar.Breadcrumb after initial render")}return b},updateStore:function(a,b){this._needsSync=true;if(b){this.setSelection(a.getRoot())}},privates:{_onButtonClick:function(a,b){if(this.getUseSplitButtons()){this.setSelection(this.getStore().getNodeById(a._breadcrumbNodeId))}},_onMenuClick:function(c,a,b){this.setSelection(this.getStore().getNodeById(a._breadcrumbNodeId))},_onMenuBeforeShow:function(j){var g=this.getStore().getNodeById(j.ownerButton._breadcrumbNodeId),d=this.getDisplayField(),h,c,a,b,e;if(g.hasChildNodes()){h=g.childNodes;a=[];for(b=0,e=h.length;b<e;b++){c=h[b];a.push({text:c.get(d),_breadcrumbNodeId:c.getId()})}j.removeAll();j.add(a)}else{return false}}}},0,["breadcrumb"],["box","breadcrumb","component","container"],{box:true,breadcrumb:true,component:true,container:true},["widget.breadcrumb"],0,[Ext.toolbar,"Breadcrumb"],0));(Ext.cmd.derive("Ext.toolbar.Spacer",Ext.Component,{alternateClassName:"Ext.Toolbar.Spacer",baseCls:Ext.baseCSSPrefix+"toolbar-spacer",focusable:false,ariaRole:"presentation"},0,["tbspacer"],["box","component","tbspacer"],{box:true,component:true,tbspacer:true},["widget.tbspacer"],0,[Ext.toolbar,"Spacer",Ext.Toolbar,"Spacer"],0));(Ext.cmd.derive("Ext.view.DragZone",Ext.dd.DragZone,{containerScroll:false,constructor:function(b){var e=this,a,d,c;Ext.apply(e,b);if(!e.ddGroup){e.ddGroup="view-dd-zone-"+e.view.id}a=e.view;d=a.ownerCt;if(d){c=d.getTargetEl().dom}else{c=a.el.dom.parentNode}Ext.dd.DragZone.prototype.constructor.apply(this,[c]);e.ddel=Ext.get(document.createElement("div"));e.ddel.addCls(Ext.baseCSSPrefix+"grid-dd-wrap")},init:function(g,a,c){var d=this,e=Ext.supports.touchScroll?"itemlongpress":"itemmousedown",b={scope:d};b[e]=d.onItemMouseDown;d.initTarget(g,a,c);d.view.mon(d.view,b)},onValidDrop:function(b,a,c){Ext.dd.DragSource.prototype.onValidDrop.call(this);b.el.focus()},onItemMouseDown:function(b,a,d,c,g){if(!this.isPreventDrag(g,a,d,c)){if(b.focusRow){b.focusRow(a)}this.handleMouseDown(g)}},isPreventDrag:function(d,a,c,b){return false},getDragData:function(c){var a=this.view,b=c.getTarget(a.getItemSelector());if(b){return{copy:a.copy||(a.allowCopy&&c.ctrlKey),event:c,view:a,ddel:this.ddel,item:b,records:a.getSelectionModel().getSelection(),fromPosition:Ext.fly(b).getXY()}}},onInitDrag:function(b,h){var e=this,g=e.dragData,d=g.view,a=d.getSelectionModel(),c=d.getRecord(g.item);if(!a.isSelected(c)){a.selectWithEvent(c,e.DDMInstance.mousedownEvent)}g.records=a.getSelection();e.ddel.setHtml(e.getDragText());e.proxy.update(e.ddel.dom);e.onStartDrag(b,h);return true},getDragText:function(){var a=this.dragData.records.length;return Ext.String.format(this.dragText,a,a===1?"":"s")},getRepairXY:function(b,a){return a?a.fromPosition:false}},1,0,0,0,0,0,[Ext.view,"DragZone"],0));(Ext.cmd.derive("Ext.tree.ViewDragZone",Ext.view.DragZone,{isPreventDrag:function(b,a){return(a.get("allowDrag")===false)||!!b.getTarget(this.view.expanderSelector)},getDragText:function(){var a=this.dragData.records,b=a.length,d=a[0].get(this.displayField),c="s";if(b===1&&d){return d}else{if(!d){c=""}}return Ext.String.format(this.dragText,b,c)},afterRepair:function(){var h=this,a=h.view,j=a.selectedItemCls,b=h.dragData.records,g,e=b.length,c=Ext.fly,d;if(Ext.enableFx&&h.repairHighlight){for(g=0;g<e;g++){d=a.getNode(b[g]);c(d.firstChild).highlight(h.repairHighlightColor,{listeners:{beforeanimate:function(){if(a.isSelected(d)){c(d).removeCls(j)}},afteranimate:function(){if(a.isSelected(d)){c(d).addCls(j)}}}})}}h.dragging=false}},0,0,0,0,0,0,[Ext.tree,"ViewDragZone"],0));(Ext.cmd.derive("Ext.tree.ViewDropZone",Ext.view.DropZone,{allowParentInserts:false,allowContainerDrops:false,appendOnly:false,expandDelay:500,indicatorCls:Ext.baseCSSPrefix+"tree-ddindicator",expandNode:function(b){var a=this.view;this.expandProcId=false;if(!b.isLeaf()&&!b.isExpanded()){a.expand(b);this.expandProcId=false}},queueExpand:function(a){this.expandProcId=Ext.Function.defer(this.expandNode,this.expandDelay,this,[a])},cancelExpand:function(){if(this.expandProcId){clearTimeout(this.expandProcId);this.expandProcId=false}},getPosition:function(g,b){var k=this.view,c=k.getRecord(b),h=g.getY(),l=c.isLeaf(),a=false,j=Ext.fly(b).getRegion(),d;if(c.isRoot()){return"append"}if(this.appendOnly){return l?false:"append"}if(!this.allowParentInserts){a=c.hasChildNodes()&&c.isExpanded()}d=(j.bottom-j.top)/(l?2:3);if(h>=j.top&&h<(j.top+d)){return"before"}else{if(!a&&(l||(h>=(j.bottom-d)&&h<=j.bottom))){return"after"}else{return"append"}}},isValidDropPoint:function(b,j,n,k,g){if(!b||!g.item){return false}var o=this.view,l=o.getRecord(b),d=g.records,a=d.length,m=d.length,c,h;if(!(l&&j&&a)){return false}for(c=0;c<m;c++){h=d[c];if(h.isNode&&h.contains(l)){return false}}if(j==="append"&&l.get("allowDrop")===false){return false}else{if(j!=="append"&&l.parentNode.get("allowDrop")===false){return false}}if(Ext.Array.contains(d,l)){return false}return o.fireEvent("nodedragover",l,j,g,k)!==false},onNodeOver:function(a,j,g,c){var d=this.getPosition(g,a),b=this.dropNotAllowed,k=this.view,h=k.getRecord(a),l=this.getIndicator(),m=0;this.cancelExpand();if(d==="append"&&!this.expandProcId&&!Ext.Array.contains(c.records,h)&&!h.isLeaf()&&!h.isExpanded()){this.queueExpand(h)}if(this.isValidDropPoint(a,d,j,g,c)){this.valid=true;this.currentPosition=d;this.overRecord=h;l.setWidth(Ext.fly(a).getWidth());m=Ext.fly(a).getY()-Ext.fly(k.el).getY()-1;if(d==="before"){b=h.isFirst()?Ext.baseCSSPrefix+"tree-drop-ok-above":Ext.baseCSSPrefix+"tree-drop-ok-between";l.showAt(0,m);j.proxy.show()}else{if(d==="after"){b=h.isLast()?Ext.baseCSSPrefix+"tree-drop-ok-below":Ext.baseCSSPrefix+"tree-drop-ok-between";m+=Ext.fly(a).getHeight();l.showAt(0,m);j.proxy.show()}else{b=Ext.baseCSSPrefix+"tree-drop-ok-append";l.hide()}}}else{this.valid=false}this.currentCls=b;return b},onNodeOut:function(d,a,c,b){this.valid=false;this.getIndicator().hide()},onContainerOver:function(a,c,b){return this.allowContainerDrops?this.dropAllowed:c.getTarget("."+this.indicatorCls)?this.currentCls:this.dropNotAllowed},onContainerDrop:function(a,c,b){if(this.allowContainerDrops){this.valid=true;this.currentPosition="append";this.overRecord=this.view.store.getRoot();this.onNodeDrop(this.overRecord,a,c,b)}},notifyOut:function(){Ext.view.DropZone.prototype.notifyOut.apply(this,arguments);this.cancelExpand()},handleNodeDrop:function(g,n,j){var p=this,a=p.view,k=n?n.parentNode:a.panel.getRootNode(),b=a.store.getModel(),c,e,m,h,d,l,o,q;if(g.copy){c=g.records;g.records=[];for(e=0,m=c.length;e<m;e++){h=c[e];if(h.isNode){g.records.push(h.copy())}else{g.records.push(new b(Ext.apply({},h.data)))}}}p.cancelExpand();if(j==="before"){d=k.insertBefore;l=[null,n];n=k}else{if(j==="after"){if(n.nextSibling){d=k.insertBefore;l=[null,n.nextSibling]}else{d=k.appendChild;l=[null]}n=k}else{if(!(n.isExpanded()||n.isLoading())){o=true}d=n.appendChild;l=[null]}}q=function(){var r,s;Ext.suspendLayouts();for(e=0,m=g.records.length;e<m;e++){h=g.records[e];if(!h.isNode){if(h.isModel){h=new b(h.data,h.getId())}else{h=new b(h)}g.records[e]=h}l[0]=h;d.apply(n,l)}if(p.sortOnDrop){n.sort(n.getOwnerTree().store.getSorters().sortFn)}Ext.resumeLayouts(true);if(Ext.enableFx&&p.dropHighlight){r=p.dropHighlightColor;for(e=0;e<m;e++){s=a.getNode(g.records[e]);if(s){Ext.fly(s).highlight(r)}}}};if(o){n.expand(false,q)}else{if(n.isLoading()){n.on({expand:q,delay:1,single:true})}else{q()}}}},0,0,0,0,0,0,[Ext.tree,"ViewDropZone"],0));(Ext.cmd.derive("Ext.tree.plugin.TreeViewDragDrop",Ext.plugin.Abstract,{dragText:"{0} selected node{1}",allowParentInserts:false,allowContainerDrops:false,appendOnly:false,ddGroup:"TreeDD",containerScroll:false,expandDelay:1000,enableDrop:true,enableDrag:true,nodeHighlightColor:"c3daf9",nodeHighlightOnDrop:Ext.enableFx,displayField:"text",init:function(a){a.on("render",this.onViewRender,this,{single:true})},destroy:function(){Ext.destroy(this.dragZone,this.dropZone)},onViewRender:function(a){var b=this,c;if(b.enableDrag){if(b.containerScroll){c=a.getEl()}b.dragZone=new Ext.tree.ViewDragZone(Ext.apply({view:a,ddGroup:b.dragGroup||b.ddGroup,dragText:b.dragText,displayField:b.displayField,repairHighlightColor:b.nodeHighlightColor,repairHighlight:b.nodeHighlightOnRepair,scrollEl:c},b.dragZone))}if(b.enableDrop){b.dropZone=new Ext.tree.ViewDropZone(Ext.apply({view:a,ddGroup:b.dropGroup||b.ddGroup,allowContainerDrops:b.allowContainerDrops,appendOnly:b.appendOnly,allowParentInserts:b.allowParentInserts,expandDelay:b.expandDelay,dropHighlightColor:b.nodeHighlightColor,dropHighlight:b.nodeHighlightOnDrop,sortOnDrop:b.sortOnDrop,containerScroll:b.containerScroll},b.dropZone))}}},0,0,0,0,["plugin.treeviewdragdrop"],0,[Ext.tree.plugin,"TreeViewDragDrop"],function(){var a=this.prototype;a.nodeHighlightOnDrop=a.nodeHighlightOnRepair=Ext.enableFx}));(Ext.cmd.derive("Ext.util.Cookies",Ext.Base,{singleton:true,set:function(c,e){var a=arguments,j=arguments.length,b=(j>2)?a[2]:null,h=(j>3)?a[3]:"/",d=(j>4)?a[4]:null,g=(j>5)?a[5]:false;document.cookie=c+"="+escape(e)+((b===null)?"":("; expires="+b.toUTCString()))+((h===null)?"":("; path="+h))+((d===null)?"":("; domain="+d))+((g===true)?"; secure":"")},get:function(b){var e=document.cookie.split("; "),a=e.length,d,c;for(c=0;c<a;++c){d=e[c].split("=");if(d[0]===b){return d[1]||""}}return null},clear:function(a,b){if(this.get(a)){b=b||"/";document.cookie=a+"=; expires=Thu, 01-Jan-1970 00:00:01 GMT; path="+b}},getCookieVal:function(c){var a=document.cookie,b=a.indexOf(";",c);if(b==-1){b=a.length}return unescape(a.substring(c,b))}},0,0,0,0,0,0,[Ext.util,"Cookies"],0));(Ext.cmd.derive("Ext.view.MultiSelectorSearch",Ext.panel.Panel,{layout:"fit",floating:true,resizable:true,minWidth:200,minHeight:200,border:true,defaultListenerScope:true,referenceHolder:true,searchText:"Search...",initComponent:function(){var h=this,a=h.owner,d=h.makeItems(),e,g,c,b;h.dockedItems=h.makeDockedItems();h.items=d;b=Ext.data.StoreManager.lookup(h.store);for(e=d.length;e--;){if((g=d[e]).xtype==="grid"){g.store=b;g.isSearchGrid=true;g.selModel=g.selModel||{selType:"checkboxmodel",pruneRemoved:false,mode:"SIMPLE",listeners:{selectionchange:"onSelectionChange"}};Ext.merge(g,h.grid);if(!g.columns){g.hideHeaders=true;g.columns=[{flex:1,dataIndex:h.field}]}break}}Ext.panel.Panel.prototype.initComponent.call(this);c=h.getOwnerStore().getRange();if(!a.convertSelectionRecord.$nullFn){for(e=c.length;e--;){c[e]=a.convertSelectionRecord(c[e])}}if(b.isLoading()||(b.loadCount===0&&!b.getCount())){b.on("load",function(){if(!h.isDestroyed){h.selectRecords(c)}},null,{single:true})}else{h.selectRecords(c)}},getOwnerStore:function(){return this.owner.getStore()},afterShow:function(){var a=this.lookupReference("searchField");Ext.Component.prototype.afterShow.apply(this,arguments);if(a){a.focus()}},getSearchStore:function(){var a=this.lookupReference("searchGrid");return a.getStore()},makeDockedItems:function(){return[{xtype:"textfield",reference:"searchField",dock:"top",hideFieldLabel:true,emptyText:this.searchText,triggers:{clear:{cls:"x-form-clear-trigger",handler:"onClearSearch",hidden:true}},listeners:{change:"onSearchChange",buffer:300}}]},makeItems:function(){return[{xtype:"grid",reference:"searchGrid",trailingBufferZone:2,leadingBufferZone:2,viewConfig:{deferEmptyText:false,emptyText:"No results."}}]},selectRecords:function(b){var a=this.lookupReference("searchGrid");return a.getSelectionModel().select(b)},deselectRecords:function(b){var a=this.lookupReference("searchGrid");return a.getSelectionModel().deselect(b)},search:function(d){var c=this,a=c.searchFilter,b=c.getSearchStore().getFilters();if(d){b.beginUpdate();if(a){a.setValue(d)}else{c.searchFilter=a=new Ext.util.Filter({id:"search",property:c.field,value:d})}b.add(a);b.endUpdate()}else{if(a){b.remove(a)}}},privates:{onClearSearch:function(){var a=this.lookupReference("searchField");a.setValue(null);a.focus()},onSearchChange:function(c){var b=c.getValue(),a=c.getTrigger("clear");a.setHidden(!b);this.search(b)},onSelectionChange:function(j,k){var c=this.owner,l=c.getStore(),e=l.data,g=0,a={},m,d,b,h;for(d=k.length;d--;){h=k[d];b=h.id;a[b]=h;if(!e.containsKey(b)){(m||(m=[])).push(c.convertSearchRecord(h))}}for(d=e.length;d--;){h=e.getAt(d);if(!a[h.id]){(g||(g=[])).push(h)}}if(m||g){e.splice(e.length,g,m)}}}},0,["multiselector-search"],["box","component","container","multiselector-search","panel"],{box:true,component:true,container:true,"multiselector-search":true,panel:true},["widget.multiselector-search"],0,[Ext.view,"MultiSelectorSearch"],0));(Ext.cmd.derive("Ext.view.MultiSelector",Ext.grid.Panel,{config:{search:{xtype:"multiselector-search",width:200,height:200,store:{autoLoad:true}}},fieldName:"name",fieldTitle:null,removeRowText:"&#10006",removeRowTip:"Remove this item",emptyText:"Nothing selected",addToolText:"Search for items to add",initComponent:function(){var g=this,a=g.emptyText,c=g.getStore(),e=g.getSearch(),h=g.fieldTitle,b,d;b=e.store;if(b.isStore){d=b.getModel()}else{d=b.model}if(!c){g.store={model:d}}if(a&&!g.viewConfig){g.viewConfig={deferEmptyText:false,emptyText:a}}if(!g.columns){g.hideHeaders=!h;g.columns=[{text:h,dataIndex:g.fieldName,flex:1},g.makeRemoveRowColumn()]}Ext.panel.Table.prototype.initComponent.call(this)},addTools:function(){this.addTool({type:"plus",tooltip:this.addToolText,callback:"onShowSearch",scope:this})},convertSearchRecord:Ext.identityFn,convertSelectionRecord:Ext.identityFn,makeRemoveRowColumn:function(){var a=this;return{width:22,menuDisabled:true,processEvent:a.processRowEvent.bind(a),renderer:a.renderRemoveRow,updater:Ext.emptyFn,scope:a}},processRowEvent:function(h,c,a,d,g,j,b,k){if(j.type!=="click"){return}if(Ext.fly(j.getTarget()).hasCls(Ext.baseCSSPrefix+"multiselector-remove")){this.store.remove(b);if(this.searchPopup){this.searchPopup.deselectRecords(b)}}},renderRemoveRow:function(){return'<span class="'+Ext.baseCSSPrefix+'multiselector-remove" data-qtip="'+this.removeRowTip+'" role="button">'+this.removeRowText+"</span>"},beforeDestroy:function(){Ext.un({mousedown:"onDismissSearch",scope:this});Ext.panel.Table.prototype.beforeDestroy.call(this)},privates:{onDismissSearch:function(b){var a=this.searchPopup;if(a&&!(a.owns(b.getTarget())||this.owns(b.getTarget()))){Ext.un({mousedown:"onDismissSearch",scope:this});a.hide()}},onShowSearch:function(b,d){var e=this,a=e.searchPopup,c=e.getStore();if(!a){a=Ext.merge({owner:e,field:e.fieldName,floating:true},e.getSearch());e.searchPopup=a=e.add(a);if(c.getCount()){a.selectRecords(c.getRange())}}a.showBy(e,"tl-tr?");Ext.on({mousedown:"onDismissSearch",scope:e})}}},0,["multiselector"],["box","component","container","grid","gridpanel","multiselector","panel","tablepanel"],{box:true,component:true,container:true,grid:true,gridpanel:true,multiselector:true,panel:true,tablepanel:true},["widget.multiselector"],0,[Ext.view,"MultiSelector"],0));(Ext.cmd.derive("Ext.window.Toast",Ext.window.Window,{cls:Ext.baseCSSPrefix+"toast",bodyPadding:10,autoClose:true,plain:false,draggable:false,resizable:false,shadow:false,focus:Ext.emptyFn,anchor:null,useXAxis:false,align:"br",spacing:6,paddingX:30,paddingY:10,slideInAnimation:"easeIn",slideBackAnimation:"bounceOut",slideInDuration:1500,slideBackDuration:1000,hideDuration:500,autoCloseDelay:3000,stickOnClick:true,stickWhileHover:true,closeOnMouseDown:false,isHiding:false,isFading:false,destroyAfterHide:false,closeOnMouseOut:false,xPos:0,yPos:0,initComponent:function(){var a=this;a.updateAlignment(a.align);a.setAnchor(a.anchor);Ext.window.Window.prototype.initComponent.apply(this,arguments)},onRender:function(){var a=this;Ext.window.Window.prototype.onRender.apply(this,arguments);a.el.hover(a.onMouseEnter,a.onMouseLeave,a);if(a.closeOnMouseDown){a.mon(Ext,"mousedown",a.onDocumentMousedown,a)}},alignmentProps:{br:{paddingFactorX:-1,paddingFactorY:-1,siblingAlignment:"br-br",anchorAlign:"tr-br"},bl:{paddingFactorX:1,paddingFactorY:-1,siblingAlignment:"bl-bl",anchorAlign:"tl-bl"},tr:{paddingFactorX:-1,paddingFactorY:1,siblingAlignment:"tr-tr",anchorAlign:"br-tr"},tl:{paddingFactorX:1,paddingFactorY:1,siblingAlignment:"tl-tl",anchorAlign:"bl-tl"},b:{paddingFactorX:0,paddingFactorY:-1,siblingAlignment:"b-b",useXAxis:0,anchorAlign:"t-b"},t:{paddingFactorX:0,paddingFactorY:1,siblingAlignment:"t-t",useXAxis:0,anchorAlign:"b-t"},l:{paddingFactorX:1,paddingFactorY:0,siblingAlignment:"l-l",useXAxis:1,anchorAlign:"r-l"},r:{paddingFactorX:-1,paddingFactorY:0,siblingAlignment:"r-r",useXAxis:1,anchorAlign:"l-r"},x:{br:{anchorAlign:"bl-br"},bl:{anchorAlign:"br-bl"},tr:{anchorAlign:"tl-tr"},tl:{anchorAlign:"tr-tl"}}},updateAlignment:function(e){var c=this,a=c.alignmentProps,b=a[e],d=a.x[e];if(d&&c.useXAxis){Ext.applyIf(c,d)}Ext.applyIf(c,b)},getXposAlignedToAnchor:function(){var c=this,g=c.align,a=c.anchor,d=a&&a.el,b=c.el,e=0;if(d&&d.dom){if(!c.useXAxis){e=b.getLeft()}else{if(g==="br"||g==="tr"||g==="r"){e+=d.getAnchorXY("r")[0];e-=(b.getWidth()+c.paddingX)}else{e+=d.getAnchorXY("l")[0];e+=c.paddingX}}}return e},getYposAlignedToAnchor:function(){var d=this,g=d.align,a=d.anchor,e=a&&a.el,b=d.el,c=0;if(e&&e.dom){if(d.useXAxis){c=b.getTop()}else{if(g==="br"||g==="bl"||g==="b"){c+=e.getAnchorXY("b")[1];c-=(b.getHeight()+d.paddingY)}else{c+=e.getAnchorXY("t")[1];c+=d.paddingY}}}return c},getXposAlignedToSibling:function(b){var c=this,e=c.align,a=c.el,d;if(!c.useXAxis){d=a.getLeft()}else{if(e==="tl"||e==="bl"||e==="l"){d=(b.xPos+b.el.getWidth()+b.spacing)}else{d=(b.xPos-a.getWidth()-c.spacing)}}return d},getYposAlignedToSibling:function(b){var d=this,e=d.align,a=d.el,c;if(d.useXAxis){c=a.getTop()}else{if(e==="tr"||e==="tl"||e==="t"){c=(b.yPos+b.el.getHeight()+b.spacing)}else{c=(b.yPos-a.getHeight()-b.spacing)}}return c},getToasts:function(){var a=this.anchor,c=this.anchorAlign,b=a.activeToasts||(a.activeToasts={});return b[c]||(b[c]=[])},setAnchor:function(a){var c=this,b;c.anchor=a=((typeof a==="string")?Ext.getCmp(a):a);if(!a){b=Ext.window.Toast;c.anchor=b.bodyAnchor||(b.bodyAnchor={el:Ext.getBody()})}},beforeShow:function(){var a=this;if(a.stickOnClick){a.body.on("click",function(){a.cancelAutoClose()})}if(a.autoClose){if(!a.closeTask){a.closeTask=new Ext.util.DelayedTask(a.doAutoClose,a)}a.closeTask.delay(a.autoCloseDelay)}a.el.setX(-10000);a.el.setOpacity(1)},afterShow:function(){var e=this,b=e.el,d,a,c,g;Ext.Component.prototype.afterShow.apply(this,arguments);d=e.getToasts();c=d.length;a=c&&d[c-1];if(a){b.alignTo(a.el,e.siblingAlignment,[0,0]);e.xPos=e.getXposAlignedToSibling(a);e.yPos=e.getYposAlignedToSibling(a)}else{b.alignTo(e.anchor.el,e.anchorAlign,[(e.paddingX*e.paddingFactorX),(e.paddingY*e.paddingFactorY)],false);e.xPos=e.getXposAlignedToAnchor();e.yPos=e.getYposAlignedToAnchor()}Ext.Array.include(d,e);g=b.getXY();b.animate({from:{x:g[0],y:g[1]},to:{x:e.xPos,y:e.yPos,opacity:1},easing:e.slideInAnimation,duration:e.slideInDuration,dynamic:true})},onDocumentMousedown:function(a){if(this.isVisible()&&!this.owns(a.getTarget())){this.hide()}},slideBack:function(){var e=this,b=e.anchor,g=b&&b.el,c=e.el,d=e.getToasts(),a=Ext.Array.indexOf(d,e);if(!e.isHiding&&c&&c.dom&&g&&g.isVisible()){if(a){e.xPos=e.getXposAlignedToSibling(d[a-1]);e.yPos=e.getYposAlignedToSibling(d[a-1])}else{e.xPos=e.getXposAlignedToAnchor();e.yPos=e.getYposAlignedToAnchor()}e.stopAnimation();c.animate({to:{x:e.xPos,y:e.yPos},easing:e.slideBackAnimation,duration:e.slideBackDuration,dynamic:true})}},update:function(){var a=this;if(a.isVisible()){a.isHiding=true;a.hide()}Ext.Component.prototype.update.apply(this,arguments);a.show()},cancelAutoClose:function(){var a=this.closeTask;if(a){a.cancel()}},doAutoClose:function(){var a=this;if(!(a.stickWhileHover&&a.mouseIsOver)){a.close()}else{a.closeOnMouseOut=true}},onMouseEnter:function(){this.mouseIsOver=true},onMouseLeave:function(){var a=this;a.mouseIsOver=false;if(a.closeOnMouseOut){a.closeOnMouseOut=false;a.close()}},removeFromAnchor:function(){var c=this,b,a;if(c.anchor){b=c.getToasts();a=Ext.Array.indexOf(b,c);if(a!==-1){Ext.Array.erase(b,a,1);for(;a<b.length;a++){b[a].slideBack()}}}},hide:function(){var b=this,a=b.el;b.cancelAutoClose();if(b.isHiding){if(!b.isFading){Ext.Component.prototype.hide.apply(this,arguments);b.removeFromAnchor();b.isHiding=false}}else{b.isHiding=true;b.isFading=true;b.cancelAutoClose();if(a){a.fadeOut({opacity:0,easing:"easeIn",duration:b.hideDuration,listeners:{afteranimate:function(){b.isFading=false;b.hide(b.animateTarget,b.doClose,b)}}})}}return b}},0,["toast"],["box","component","container","panel","toast","window"],{box:true,component:true,container:true,panel:true,toast:true,window:true},["widget.toast"],0,[Ext.window,"Toast"],function(a){Ext.toast=function(e,g,h,d){var c=e,b;if(Ext.isString(e)){c={title:g,html:e,iconCls:d};if(h){c.align=h}}b=new a(c);b.show();return b}}));