
(function(Ext) {
Ext.sandboxName = 'Ext5';
Ext.isSandboxed = true;
Ext.buildSettings = { baseCSSPrefix: "x5-", scopeResetCSS: true };
/*
This file is part of Ext JS 5.1.0.107

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.1.0.107 Build date: 2014-12-10 14:09:03 (2e9aed02ab6d3ef7b0ec406edea1e8581413381e)

*/
var Ext=Ext||{};Ext.Boot=Ext.Boot||(function(g){var o=document,p=function(q,t,s){if(s){p(q,s)}if(q&&t&&typeof t=="object"){for(var r in t){q[r]=t[r]}}return q},k={disableCaching:(/[?&](?:cache|disableCacheBuster)\b/i.test(location.search)||!(/http[s]?\:/i.test(location.href))||/(^|[ ;])ext-cache=1/.test(o.cookie))?false:true,disableCachingParam:"_dc",loadDelay:false,preserveScripts:true,charset:undefined},e=/\.css(?:\?|$)/i,n=o.createElement("a"),l=typeof window!=="undefined",h={browser:l,node:!l&&(typeof require==="function"),phantom:(typeof phantom!=="undefined"&&phantom.fs)},m=(Ext.platformTags={}),d=function(q){},a=function(r,q,t){if(t){a(r,t)}if(r&&q&&typeof q==="object"){for(var s in q){r[s]=q[s]}}return r},c={loading:0,loaded:0,env:h,config:k,scripts:{},currentFile:null,suspendedQueue:[],currentRequest:null,syncMode:false,debug:d,useElements:true,listeners:[],Request:b,Entry:j,detectPlatformTags:function(){var r=navigator.userAgent,B=m.isMobile=/Mobile(\/|\s)/.test(r),x,v,w,z,q,E,u=document.createElement("div"),t=["iPhone","iPod","Android","Silk","Android 2","BlackBerry","BB","iPad","RIM Tablet OS","MSIE 10","Trident","Chrome","Tizen","Firefox","Safari","Windows Phone"],D=function(H,F){if(F===undefined){F=window}var G="on"+H.toLowerCase(),I=(G in u);if(!I){if(u.setAttribute&&u.removeAttribute){u.setAttribute(G,"");I=typeof u[G]==="function";if(typeof u[G]!=="undefined"){u[G]=undefined}u.removeAttribute(G)}}return I},C={},y=t.length,s,A;for(A=0;A<y;A++){s=t[A];C[s]=new RegExp(s).test(r)}x=(C.iPhone||C.iPod)||(!C.Silk&&(C.Android&&(C["Android 2"]||B)))||((C.BlackBerry||C.BB)&&C.isMobile)||(C["Windows Phone"]);w=(!m.isPhone)&&(C.iPad||C.Android||C.Silk||C["RIM Tablet OS"]||(C["MSIE 10"]&&/; Touch/.test(r)));z=D("touchend")||navigator.maxTouchPoints||navigator.msMaxTouchPoints;v=!x&&!w;q=C["MSIE 10"];E=C.Blackberry||C.BB;p(m,c.loadPlatformsParam(),{phone:x,tablet:w,desktop:v,touch:z,ios:(C.iPad||C.iPhone||C.iPod),android:C.Android||C.Silk,blackberry:E,safari:C.Safari&&!E,chrome:C.Chrome,ie10:q,windows:q||C.Trident,tizen:C.Tizen,firefox:C.Firefox})},loadPlatformsParam:function(){var q=window.location.search.substr(1),s=q.split("&"),u={},w,x={},z,v,t,r,y;for(w=0;w<s.length;w++){z=s[w].split("=");u[z[0]]=z[1]}if(u.platformTags){z=u.platform.split(/\W/);for(v=z.length,w=0;w<v;w++){t=z[w].split(":");r=t[0];if(t.length>1){y=t[1];if(y==="false"||y==="0"){y=false}else{y=true}}x[r]=y}}return t},filterPlatform:function(s){s=[].concat(s);var r,t,q;for(r=s.length,t=0;t<r;t++){q=s[t];if(m.hasOwnProperty(q)){return !!m[q]}}return false},init:function(){var t=o.getElementsByTagName("script"),u=t.length,A=/\/ext(\-[a-z\-]+)?\.js$/,y,w,q,r,v,z,s,x;for(s=0;s<u;s++){q=(w=t[s]).src;if(!q){continue}r=w.readyState||null;if(!v){if(A.test(q)){c.hasReadyState=("readyState" in w);c.hasAsync=("async" in w)||!c.hasReadyState;v=q}}if(!c.scripts[z=c.canonicalUrl(q)]){d("creating entry "+z+" in Boot.init");y=new j({key:z,url:q,done:r===null||r==="loaded"||r==="complete",el:w,prop:"src"})}}if(!v){w=t[t.length-1];v=w.src;c.hasReadyState=("readyState" in w);c.hasAsync=("async" in w)||!c.hasReadyState}c.baseUrl=v.substring(0,v.lastIndexOf("/")+1);x=window.location.origin||window.location.protocol+"//"+window.location.hostnaBoot+(window.location.port?":"+window.location.port:"");c.origin=x;c.detectPlatformTags();Ext.filterPlatform=c.filterPlatform},canonicalUrl:function(t){n.href=t;var s=n.href,r=k.disableCachingParam,v=r?s.indexOf(r+"="):-1,u,q;if(v>0&&((u=s.charAt(v-1))==="?"||u==="&")){q=s.indexOf("&",v);q=(q<0)?"":s.substring(q);if(q&&u==="?"){++v;q=q.substring(1)}s=s.substring(0,v-1)+q}return s},getConfig:function(q){return q?c.config[q]:c.config},setConfig:function(q,t){if(typeof q==="string"){c.config[q]=t}else{for(var r in q){c.setConfig(r,q[r])}}return c},getHead:function(){return c.docHead||(c.docHead=o.head||o.getElementsByTagName("head")[0])},create:function(s,t,q){var r=q||{};r.url=s;r.key=t;return c.scripts[t]=new j(r)},getEntry:function(r,q){var s=c.canonicalUrl(r),t=c.scripts[s];if(!t){t=c.create(r,s,q)}return t},processRequest:function(r,q){r.loadEntries(q)},load:function(q){d("Boot.load called");var q=new b(q);if(q.sync||c.syncMode){return c.loadSync(q)}if(c.currentRequest){d("current active request, suspending this request");q.getEntries();c.suspendedQueue.push(q)}else{c.currentRequest=q;c.processRequest(q,false)}return c},loadSync:function(q){d("Boot.loadSync called");var q=new b(q);c.syncMode++;c.processRequest(q,true);c.syncMode--;return c},loadBasePrefix:function(q){q=new b(q);q.prependBaseUrl=true;return c.load(q)},loadSyncBasePrefix:function(q){q=new b(q);q.prependBaseUrl=true;return c.loadSync(q)},requestComplete:function(r){var q;if(c.currentRequest===r){c.currentRequest=null;while(c.suspendedQueue.length>0){q=c.suspendedQueue.shift();if(!q.done){d("resuming suspended request");c.load(q);break}}}if(!c.currentRequest&&c.suspendedQueue.length==0){c.fireListeners()}},isLoading:function(){return !c.currentRequest&&c.suspendedQueue.length==0},fireListeners:function(){var q;while(c.isLoading()&&(q=c.listeners.shift())){q()}},onBootReady:function(q){if(!c.isLoading()){q()}else{c.listeners.push(q)}},getPathsFromIndexes:function(r,q){return b.prototype.getPathsFromIndexes(r,q)},createLoadOrderMap:function(q){return b.prototype.createLoadOrderMap(q)},fetch:function(q,r,z,t){t=(t===undefined)?!!r:t;var y=new XMLHttpRequest(),A,v,w,s=false,x=function(){if(y&&y.readyState==4){v=(y.status===1223)?204:(y.status===0&&((self.location||{}).protocol==="file:"||(self.location||{}).protocol==="ionp:"))?200:y.status;w=y.responseText;A={content:w,status:v,exception:s};if(r){r.call(z,A)}y=null}};if(t){y.onreadystatechange=x}try{d("fetching "+q+" "+(t?"async":"sync"));y.open("GET",q,t);y.send(null)}catch(u){s=u;x();return A}if(!t){x()}return A},notifyAll:function(q){q.notifyRequests()}};function b(q){if(q.$isRequest){return q}var q=q.url?q:{url:q},r=q.url,s=r.charAt?[r]:r,t=q.charset||c.config.charset;a(q,{urls:s,charset:t});a(this,q)}b.prototype={$isRequest:true,createLoadOrderMap:function(r){var q=r.length,s={},u,t;for(u=0;u<q;u++){t=r[u];s[t.path]=t}return s},getLoadIndexes:function(v,x,s,t,D){var E=s[v],w,u,C,B,z,y,A,r,q;if(x[v]){return x}x[v]=true;z=false;while(!z){y=false;for(A in x){if(x.hasOwnProperty(A)){E=s[A];if(!E){continue}q=this.prepareUrl(E.path);B=c.getEntry(q);if(!D||!B||!B.done){C=E.requires;if(t&&E.uses){C=C.concat(E.uses)}for(w=C.length,u=0;u<w;u++){r=C[u];if(!x[r]){x[r]=true;y=true}}}}}if(!y){z=true}}return x},getPathsFromIndexes:function(v,r){var t=[],w=[],s,q,u;for(s in v){if(v.hasOwnProperty(s)&&v[s]){t.push(s)}}t.sort(function(y,x){return y-x});for(q=t.length,u=0;u<q;u++){w.push(r[t[u]].path)}return w},expandUrl:function(q,w,t,z){if(typeof q=="string"){q=[q]}var x=this,r=x.loadOrder,y=x.loadOrderMap;if(r){y=y||x.createLoadOrderMap(r);x.loadOrderMap=y;w=w||{};var v=q.length,s=[],u,A;for(u=0;u<v;u++){A=y[q[u]];if(A){x.getLoadIndexes(A.idx,w,r,t,z)}else{s.push(q[u])}}return x.getPathsFromIndexes(w,r).concat(s)}return q},expandUrls:function(x,s){if(typeof x=="string"){x=[x]}var v=[],q={},A,w=x.length,u,z,r,y;for(u=0;u<w;u++){A=this.expandUrl(x[u],{},s,true);for(z=0,r=A.length;z<r;z++){y=A[z];if(!q[y]){q[y]=true;v.push(y)}}}if(v.length==0){v=x}return v},expandLoadOrder:function(){var r=this,s=r.urls,q;if(!r.expanded){q=this.expandUrls(s,true);r.expanded=true}else{q=s}r.urls=q;if(s.length!=q.length){r.sequential=true}return r},getUrls:function(){this.expandLoadOrder();return this.urls},prepareUrl:function(q){if(this.prependBaseUrl){return c.baseUrl+q}return q},getEntries:function(){var u=this,q=u.entries,s,t,v,r;if(!q){q=[];v=u.getUrls();for(s=0;s<v.length;s++){r=u.prepareUrl(v[s]);t=c.getEntry(r,{buster:u.buster,charset:u.charset});t.requests.push(u);q.push(t)}u.entries=q}return q},loadEntries:function(w){var v=this,r=v.getEntries(),q=r.length,x=v.loadStart||0,s,u,t;if(w!==undefined){v.sync=w}v.loaded=v.loaded||0;v.loading=v.loading||q;for(t=x;t<q;t++){u=r[t];if(!u.loaded){s=r[t].load(v.sync)}else{s=true}if(!s){v.loadStart=t;u.onDone(function(){v.loadEntries(w)});break}}v.processLoadedEntries()},processLoadedEntries:function(){var u=this,r=u.getEntries(),q=r.length,v=u.startIndex||0,s,t;if(!u.done){for(s=v;s<q;s++){t=r[s];if(!t.loaded){u.startIndex=s;return}if(!t.evaluated){t.evaluate()}if(t.error){u.error=true}}u.notify()}},notify:function(){var u=this;if(!u.done){var r=u.error,t=u[r?"failure":"success"],q=("delay" in u)?u.delay:(r?1:c.config.chainDelay),s=u.scope||u;u.done=true;if(t){if(q===0||q>0){setTimeout(function(){t.call(s,u)},q)}else{t.call(s,u)}}u.fireListeners();c.requestComplete(u)}},onDone:function(s){var r=this,q=r.listeners||(r.listeners=[]);if(r.done){s(r)}else{q.push(s)}},fireListeners:function(){var q=this.listeners,r;if(q){d("firing request listeners");while((r=q.shift())){r(this)}}}};function j(r){if(r.$isEntry){return r}d("creating entry for "+r.url);var w=r.charset||c.config.charset,v=Ext.manifest,q=v&&v.loader,s=(r.cache!==undefined)?r.cache:(q&&q.cache),u,t;if(s===undefined){s=!c.config.disableCaching}if(s===false){u=+new Date()}else{if(s!==true){u=s}}if(u){t=(q&&q.cacheParam)||c.config.disableCachingParam;u=t+"="+u}a(r,{charset:w,buster:u,requests:[]});a(this,r)}j.prototype={$isEntry:true,done:false,evaluated:false,loaded:false,isCrossDomain:function(){var q=this;if(q.crossDomain===undefined){d("checking "+q.getLoadUrl()+" for prefix "+c.origin);q.crossDomain=(q.getLoadUrl().indexOf(c.origin)!==0)}return q.crossDomain},isCss:function(){var q=this;if(q.css===undefined){q.css=q.url&&e.test(q.url)}return this.css},getElement:function(q){var s=this,r=s.el;if(!r){d("creating element for "+s.url);if(s.isCss()){q=q||"link";r=o.createElement(q);if(q=="link"){r.rel="stylesheet";s.prop="href"}else{s.prop="textContent"}r.type="text/css"}else{q=q||"script";r=o.createElement(q);r.type="text/javascript";s.prop="src";if(c.hasAsync){r.async=false}}s.el=r}return r},getLoadUrl:function(){var r=this,q=c.canonicalUrl(r.url);if(!r.loadUrl){r.loadUrl=!!r.buster?(q+(q.indexOf("?")===-1?"?":"&")+r.buster):q}return r.loadUrl},fetch:function(t){var r=this.getLoadUrl(),s=!!t.async,q=t.complete;c.fetch(r,q,this,s)},onContentLoaded:function(r){var v=this,q=r.status,u=r.content,t=r.exception,s=this.getLoadUrl();v.loaded=true;if((t||q===0)&&!h.phantom){v.error=("Failed loading synchronously via XHR: '"+s+"'. It's likely that the file is either being loaded from a different domain or from the local file system where cross origin requests are not allowed for security reasons. Try asynchronous loading instead.")||true;v.evaluated=true}else{if((q>=200&&q<300)||q===304||h.phantom||(q===0&&u.length>0)){v.content=u}else{v.error=("Failed loading synchronously via XHR: '"+s+"'. Please verify that the file exists. XHR status code: "+q)||true;v.evaluated=true}}},createLoadElement:function(u){var s=this,r=s.getElement(),q=function(){if(this.readyState==="loaded"||this.readyState==="complete"){if(u){u()}}},t=function(){s.error=true;if(u){u()}};s.preserve=true;r.onerror=t;if(c.hasReadyState){r.onreadystatechange=q}else{r.onload=u}r[s.prop]=s.getLoadUrl()},onLoadElementReady:function(){c.getHead().appendChild(this.getElement());this.evaluated=true},inject:function(v,u){d("injecting content for "+this.url);var w=this,x=c.getHead(),q=w.url,y=w.key,r,s,t,z;if(w.isCss()){w.preserve=true;z=y.substring(0,y.lastIndexOf("/")+1);r=o.createElement("base");r.href=z;if(x.firstChild){x.insertBefore(r,x.firstChild)}else{x.appendChild(r)}r.href=r.href;if(q){v+="\n/*# sourceURL="+y+" */"}s=w.getElement("style");t=("styleSheet" in s);x.appendChild(r);if(t){x.appendChild(s);s.styleSheet.cssText=v}else{s.textContent=v;x.appendChild(s)}x.removeChild(r)}else{if(q){v+="\n//# sourceURL="+y}Ext.globalEval(v)}return w},loadCrossDomain:function(){var r=this,q=function(){r.loaded=r.evaluated=r.done=true;r.notifyRequests()};if(r.isCss()){r.createLoadElement();r.evaluateLoadElement();q()}else{r.createLoadElement(function(){q()});r.evaluateLoadElement();return false}return true},loadElement:function(){var r=this,q=function(){r.loaded=r.evaluated=r.done=true;r.notifyRequests()};if(r.isCss()){return r.loadCrossDomain()}else{r.createLoadElement(function(){q()});r.evaluateLoadElement()}return true},loadSync:function(){var q=this;q.fetch({async:false,complete:function(r){q.onContentLoaded(r)}});q.evaluate();q.notifyRequests()},load:function(r){var q=this;if(!q.loaded){if(q.loading){return false}q.loading=true;if(!r){if(q.isCrossDomain()){return q.loadCrossDomain()}else{if(!q.isCss()&&c.hasReadyState){q.createLoadElement(function(){q.loaded=true;q.notifyRequests()})}else{if(c.useElements){return q.loadElement()}else{q.fetch({async:!r,complete:function(s){q.onContentLoaded(s);q.notifyRequests()}})}}}}else{q.loadSync()}}return true},evaluateContent:function(){this.inject(this.content);this.content=null},evaluateLoadElement:function(){c.getHead().appendChild(this.getElement())},evaluate:function(){var q=this;if(!q.evaluated){if(q.evaluating){return}q.evaluating=true;if(q.content!==undefined){q.evaluateContent()}else{if(!q.error){q.evaluateLoadElement()}}q.evaluated=q.done=true;q.cleanup()}},cleanup:function(){var s=this,r=s.el,t;if(!r){return}if(!s.preserve){s.el=null;r.parentNode.removeChild(r);for(t in r){try{if(t!==s.prop){r[t]=null}delete r[t]}catch(q){}}}r.onload=r.onerror=r.onreadystatechange=g},notifyRequests:function(){var t=this.requests,q=t.length,r,s;for(r=0;r<q;r++){s=t[r];s.processLoadedEntries()}if(this.done){this.fireListeners()}},onDone:function(s){var r=this,q=r.listeners||(r.listeners=[]);if(r.done){s(r)}else{q.push(s)}},fireListeners:function(){var q=this.listeners,r;if(q&&q.length>0){d("firing event listeners for url "+this.url);while((r=q.shift())){r(this)}}}};Ext.disableCacheBuster=function(r,s){var q=new Date();q.setTime(q.getTime()+(r?10*365:-1)*24*60*60*1000);q=q.toGMTString();o.cookie="ext-cache=1; expires="+q+"; path="+(s||"/")};if(h.node){c.prototype.load=c.prototype.loadSync=function(q){require(filePath);onLoad.call(scope)};c.prototype.init=g}c.init();return c}(function(){}));Ext.globalEval=Ext.globalEval||(this.execScript?function(a){execScript(a)}:function($$code){eval.call(window,$$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||{};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.grid.selection){Ext.grid.selection={}}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.app.domain){Ext.overrides.app.domain={}}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.plugin){Ext.overrides.plugin={}}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(e){var b,m=["constructor","toString","valueOf","toLocaleString"],g={},q={},d=0,n,k,s,h,a,o,c,j,r=function(){var v,u;k=Ext.Base;s=Ext.ClassManager;for(v=m.length;v-->0;){u=(1<<v);q[g[u]=m[v]]=u}for(v in q){d|=q[v]}d=~d;Function.prototype.$isFunction=1;j=!!(s&&s.addAlias);h=Ext.Class.getPreprocessor("config").fn;a=Ext.Class.getPreprocessor("cachedConfig")&&Ext.Class.getPreprocessor("cachedConfig").fn;c=Ext.Class.getPreprocessor("privates")&&Ext.Class.getPreprocessor("privates").fn;o=Ext.ClassManager.postprocessors.deprecated&&Ext.ClassManager.postprocessors.deprecated.fn;b=k.$staticMembers;if(!b){b=[];for(n in k){if(k.hasOwnProperty(n)){b.push(n)}}}e.derive=l;return l.apply(this,arguments)},t=function(C,y,B){var v=B.enumerableMembers,z=C.prototype,x,A,w,u;if(!y){return}if(j){C.addMembers(y)}else{for(x in y){u=y[x];if(u&&u.$isFunction&&!u.$isClass&&u!==Ext.emptyFn&&u!==Ext.identityFn){if(x in z){u.$previous=z[x]}z[x]=A=u;A.$owner=C;A.$name=x}else{z[x]=u}}for(w=1;v;w<<=1){if(v&w){v&=~w;x=g[w];z[x]=A=y[x];A.$owner=C;A.$name=x}}}},p=function(y){var u=function x(){return y.apply(this,arguments)||null},w,v;u.prototype=Ext.Object.chain(y.prototype);for(w=b.length;w-->0;){v=b[w];u[v]=k[v]}return u},l=function(z,C,X,u,B,L,A,U,x,N,G){var v=function F(){return this.constructor.apply(this,arguments)||null},W=v,w={enumerableMembers:u&d,onCreated:G,onBeforeCreated:t,aliases:U},J=X.alternateClassName||[],S=Ext.global,O,R,T,I,Q,aa,Z,y,P,E,V,M,H,Y,K=s.alternateToName||s.maps.alternateToName,D=s.nameToAlternates||s.maps.nameToAlternates;for(T=b.length;T-->0;){Z=b[T];v[Z]=k[Z]}if(X.$isFunction){X=X(v)}w.data=X;E=X.statics;delete X.statics;X.$className=z;if("$className" in X){v.$className=X.$className}v.extend(C);P=v.prototype;v.xtype=X.xtype=B[0];if(B){P.xtypes=B}P.xtypesChain=L;P.xtypesMap=A;X.alias=U;W.triggerExtended(v,X,w);if(X.onClassExtended){v.onExtended(X.onClassExtended,v);delete X.onClassExtended}if(X.privates&&c){c.call(Ext.Class,v,X)}if(E){if(j){v.addStatics(E)}else{for(V in E){if(E.hasOwnProperty(V)){Y=E[V];if(Y&&Y.$isFunction&&!Y.$isClass&&Y!==Ext.emptyFn&&Y!==Ext.identityFn){v[V]=H=Y;H.$owner=v;H.$name=V}v[V]=Y}}}}if(X.inheritableStatics){v.addInheritableStatics(X.inheritableStatics);delete X.inheritableStatics}if(P.onClassExtended){W.onExtended(P.onClassExtended,W);delete P.onClassExtended}if(X.config){h.call(Ext.Class,v,X)}if(X.cachedConfig&&a){a.call(Ext.Class,v,X)}if(X.deprecated&&o){o.call(Ext.ClassManager,z,v,X)}w.onBeforeCreated(v,w.data,w);for(T=0,Q=x&&x.length;T<Q;++T){v.mixin.apply(v,x[T])}for(T=0,Q=U.length;T<Q;T++){O=U[T];s.setAlias?s.setAlias(v,O):s.addAlias(v,O)}if(X.singleton){W=new v()}if(!(J instanceof Array)){J=[J]}M=s.getName(W);for(T=0,I=J.length;T<I;T++){R=J[T];s.classes[R]=W;if(j){s.addAlternate(v,R)}else{if(M){K[R]=M;J=D[M]||(D[M]=[]);J.push(R)}}}for(T=0,Q=N.length;T<Q;T+=2){aa=N[T];if(!aa){aa=S}aa[N[T+1]]=W}s.classes[z]=W;if(!j){if(M&&M!==z){K[z]=M;J=D[M]||(D[M]=[]);J.push(z)}}delete P.alternateClassName;if(w.onCreated){w.onCreated.call(W,W)}if(z){s.triggerCreated(z)}return W};e.derive=r}(Ext.cmd={}));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,BLANK_IMAGE_URL:"data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==",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:{},$vendorEventRe:/^(Moz.+|MS.+)/,canonicalEventName:function(o){return Ext.$eventNameMap[o]||(Ext.$eventNameMap[o]=(Ext.$vendorEventRe.test(o)?o:o.toLowerCase()))},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(y,v){var e=y.length,x=new Array(e),w;for(w=0;w<e;w++){x[w]=w}x.sort(function(A,z){return v(y[A],y[z])||(A-z)});for(w=0;w<e;w++){x[w]=y[x[w]]}for(w=0;w<e;w++){y[w]=x[w]}return y}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},removeAt:function(x,v,w){var e=x.length;if(v>=0&&v<e){w=w||1;w=Math.min(w,e-v);t(x,v,w)}return x},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 j=/^[\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,n=/('|\\)/g,b=/([-.*+?\^${}()|\[\]\/\\])/g,p=/^\s+|\s+$/g,k=/\s+/,m=/(^[^a-z]*|[^\w])/gi,e,a,h,d,g=function(r,q){return e[q]},l=function(r,q){return(q in a)?a[q]:String.fromCharCode(parseInt(q.substr(2),10))},c=function(r,q){if(r===null||r===undefined||q===null||q===undefined){return false}return q.length<=r.length},o;return o={insert:function(t,u,r){if(!t){return u}if(!u){return t}var q=t.length;if(!r&&r!==0){r=q}if(r<0){r*=-1;if(r>=q){r=0}else{r=q-r}}if(r===0){t=u+t}else{if(r>=t.length){t+=u}else{t=t.substr(0,r)+u+t.substr(r)}}return t},startsWith:function(t,u,r){var q=c(t,u);if(q){if(r){t=t.toLowerCase();u=u.toLowerCase()}q=t.lastIndexOf(u,0)===0}return q},endsWith:function(u,r,t){var q=c(u,r);if(q){if(t){u=u.toLowerCase();r=r.toLowerCase()}q=u.indexOf(r,u.length-r.length)!==-1}return q},createVarName:function(q){return q.replace(m,"")},htmlEncode:function(q){return(!q)?q:String(q).replace(h,g)},htmlDecode:function(q){return(!q)?q:String(q).replace(d,l)},hasHtmlCharacters:function(q){return h.test(q)},addCharacterEntities:function(r){var q=[],u=[],s,t;for(s in r){t=r[s];a[s]=t;e[t]=s;q.push(t);u.push(s)}h=new RegExp("("+q.join("|")+")","g");d=new RegExp("("+u.join("|")+"|&#[0-9]{1,5};)","g")},resetCharacterEntities:function(){e={};a={};this.addCharacterEntities({"&amp;":"&","&gt;":">","&lt;":"<","&quot;":'"',"&#39;":"'"})},urlAppend:function(r,q){if(!Ext.isEmpty(q)){return r+(r.indexOf("?")===-1?"?":"&")+q}return r},trim:function(q){if(q){q=q.replace(j,"")}return q||""},capitalize:function(q){if(q){q=q.charAt(0).toUpperCase()+q.substr(1)}return q||""},uncapitalize:function(q){if(q){q=q.charAt(0).toLowerCase()+q.substr(1)}return q||""},ellipsis:function(s,r,t){if(s&&s.length>r){if(t){var u=s.substr(0,r-2),q=Math.max(u.lastIndexOf(" "),u.lastIndexOf("."),u.lastIndexOf("!"),u.lastIndexOf("?"));if(q!==-1&&q>=(r-15)){return u.substr(0,q)+"..."}}return s.substr(0,r-3)+"..."}return s},escapeRegex:function(q){return q.replace(b,"\\$1")},createRegex:function(u,t,r,q){var s=u;if(u!=null&&!u.exec){s=o.escapeRegex(String(u));if(t!==false){s="^"+s}if(r!==false){s+="$"}s=new RegExp(s,(q!==false)?"i":"")}return s},escape:function(q){return q.replace(n,"\\$1")},toggle:function(r,s,q){return r===s?q:s},leftPad:function(r,s,t){var q=String(r);t=t||" ";while(q.length<s){q=t+q}return q},repeat:function(u,t,r){if(t<1){t=0}for(var q=[],s=t;s--;){q.push(u)}return q.join(r||"")},splitWords:function(q){if(q&&typeof q=="string"){return q.replace(p,"").split(k)}return q||[]}}}());Ext.String.resetCharacterEntities();Ext.htmlEncode=Ext.String.htmlEncode;Ext.htmlDecode=Ext.String.htmlDecode;Ext.urlAppend=Ext.String.urlAppend;Ext.Date=(function(){var g,e=Date,m=/(\\.)/g,a=/([gGhHisucUOPZ]|MS)/,h=/([djzmnYycU]|MS)/,l=/\\/gi,c=/\{(\d+)\}/g,j=new RegExp("\\/Date\\(([-+])?(\\d+)(?:[+-]\\d{4})?\\)\\/"),d=Ext.String.leftPad,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");if(!Date.prototype.toISOString){Date.prototype.toISOString=function(){var n=this;return d(n.getUTCFullYear(),4,"0")+"-"+d(n.getUTCMonth()+1,2,"0")+"-"+d(n.getUTCDate(),2,"0")+"T"+d(n.getUTCHours(),2,"0")+":"+d(n.getUTCMinutes(),2,"0")+":"+d(n.getUTCSeconds(),2,"0")+"."+d(n.getUTCMilliseconds(),3,"0")+"Z"}}function k(o){var n=Array.prototype.slice.call(arguments,1);return o.replace(c,function(p,q){return n[q]})}return g={now:e.now,toString:function(n){if(!n){n=new e()}return n.getFullYear()+"-"+d(n.getMonth()+1,2,"0")+"-"+d(n.getDate(),2,"0")+"T"+d(n.getHours(),2,"0")+":"+d(n.getMinutes(),2,"0")+":"+d(n.getSeconds(),2,"0")},getElapsed:function(o,n){return Math.abs(o-(n||g.now()))},useStrict:false,formatCodeToRegex:function(o,n){var q=g.parseCodes[o];if(q){q=typeof q==="function"?q():q;g.parseCodes[o]=q}return q?Ext.applyIf({c:q.c?k(q.c,n||"{0}"):q.c},q):{g:0,c:null,s:Ext.String.escapeRegex(o)}},parseFunctions:{MS:function(o,n){var p=(o||"").match(j);return p?new e(((p[1]||"")+p[2])*1):null},time:function(o,n){var p=parseInt(o,10);if(p||p===0){return new e(p)}return null},timestamp:function(o,n){var p=parseInt(o,10);if(p||p===0){return new e(p*1000)}return null}},parseRegexes:[],formatFunctions:{MS:function(){return"\\/Date("+this.getTime()+")\\/"},time:function(){return this.getTime().toString()},timestamp:function(){return g.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(n){return g.monthNames[n].substring(0,3)},getShortDayName:function(n){return g.dayNames[n].substring(0,3)},getMonthNumber:function(n){return g.monthNumbers[n.substring(0,1).toUpperCase()+n.substring(1,3).toLowerCase()]},formatContainsHourInfo:function(n){return a.test(n.replace(m,""))},formatContainsDateInfo:function(n){return h.test(n.replace(m,""))},unescapeFormat:function(n){return n.replace(l,"")},formatCodes:{d:"Ext.String.leftPad(m.getDate(), 2, '0')",D:"Ext.Date.getShortDayName(m.getDay())",j:"m.getDate()",l:"Ext.Date.dayNames[m.getDay()]",N:"(m.getDay() ? m.getDay() : 7)",S:"Ext.Date.getSuffix(m)",w:"m.getDay()",z:"Ext.Date.getDayOfYear(m)",W:"Ext.String.leftPad(Ext.Date.getWeekOfYear(m), 2, '0')",F:"Ext.Date.monthNames[m.getMonth()]",m:"Ext.String.leftPad(m.getMonth() + 1, 2, '0')",M:"Ext.Date.getShortMonthName(m.getMonth())",n:"(m.getMonth() + 1)",t:"Ext.Date.getDaysInMonth(m)",L:"(Ext.Date.isLeapYear(m) ? 1 : 0)",o:"(m.getFullYear() + (Ext.Date.getWeekOfYear(m) == 1 && m.getMonth() > 0 ? +1 : (Ext.Date.getWeekOfYear(m) >= 52 && m.getMonth() < 11 ? -1 : 0)))",Y:"Ext.String.leftPad(m.getFullYear(), 4, '0')",y:"('' + m.getFullYear()).substring(2, 4)",a:"(m.getHours() < 12 ? 'am' : 'pm')",A:"(m.getHours() < 12 ? 'AM' : 'PM')",g:"((m.getHours() % 12) ? m.getHours() % 12 : 12)",G:"m.getHours()",h:"Ext.String.leftPad((m.getHours() % 12) ? m.getHours() % 12 : 12, 2, '0')",H:"Ext.String.leftPad(m.getHours(), 2, '0')",i:"Ext.String.leftPad(m.getMinutes(), 2, '0')",s:"Ext.String.leftPad(m.getSeconds(), 2, '0')",u:"Ext.String.leftPad(m.getMilliseconds(), 3, '0')",O:"Ext.Date.getGMTOffset(m)",P:"Ext.Date.getGMTOffset(m, true)",T:"Ext.Date.getTimezone(m)",Z:"(m.getTimezoneOffset() * -60)",c:function(){var r="Y-m-dTH:i:sP",p=[],o,n=r.length,q;for(o=0;o<n;++o){q=r.charAt(o);p.push(q==="T"?"'T'":g.getFormatCode(q))}return p.join(" + ")},C:function(){return"m.toISOString()"},U:"Math.round(m.getTime() / 1000)"},isValid:function(v,n,u,r,p,q,o){r=r||0;p=p||0;q=q||0;o=o||0;var t=g.add(new e(v<100?100:v,n-1,u,r,p,q,o),g.YEAR,v<100?v-100:0);return v===t.getFullYear()&&n===t.getMonth()+1&&u===t.getDate()&&r===t.getHours()&&p===t.getMinutes()&&q===t.getSeconds()&&o===t.getMilliseconds()},parse:function(o,r,n){var q=g.parseFunctions;if(q[r]==null){g.createParser(r)}return q[r].call(g,o,Ext.isDefined(n)?n:g.useStrict)},parseDate:function(o,p,n){return g.parse(o,p,n)},getFormatCode:function(o){var n=g.formatCodes[o];if(n){n=typeof n==="function"?n():n;g.formatCodes[o]=n}return n||("'"+Ext.String.escape(o)+"'")},createFormat:function(r){var q=[],n=false,p="",o;for(o=0;o<r.length;++o){p=r.charAt(o);if(!n&&p==="\\"){n=true}else{if(n){n=false;q.push("'"+Ext.String.escape(p)+"'")}else{if(p==="\n"){q.push("'\\n'")}else{q.push(g.getFormatCode(p))}}}}g.formatFunctions[r]=Ext.functionFactory("var m=this;return "+q.join("+"))},createParser:function(w){var o=g.parseRegexes.length,x=1,p=[],v=[],t=false,n="",r=0,s=w.length,u=[],q;for(;r<s;++r){n=w.charAt(r);if(!t&&n==="\\"){t=true}else{if(t){t=false;v.push(Ext.String.escape(n))}else{q=g.formatCodeToRegex(n,x);x+=q.g;v.push(q.s);if(q.g&&q.c){if(q.calcAtEnd){u.push(q.c)}else{p.push(q.c)}}}}}p=p.concat(u);g.parseRegexes[o]=new RegExp("^"+v.join("")+"$","i");g.parseFunctions[w]=Ext.functionFactory("input","strict",k(b,o,p.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 n=[],o=0;o<7;n.push(g.getShortDayName(o)),++o){}return{g:0,c:null,s:"(?:"+n.join("|")+")"}},l:function(){return{g:0,c:null,s:"(?:"+g.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:"("+g.monthNames.join("|")+")"}},M:function(){for(var n=[],o=0;o<12;n.push(g.getShortMonthName(o)),++o){}return Ext.applyIf({s:"("+n.join("|")+")"},g.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 p=[],n=[g.formatCodeToRegex("Y",1),g.formatCodeToRegex("m",2),g.formatCodeToRegex("d",3),g.formatCodeToRegex("H",4),g.formatCodeToRegex("i",5),g.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){",g.formatCodeToRegex("P",8).c,"}else{",g.formatCodeToRegex("O",8).c,"}","}"].join("\n")}],q,o;for(q=0,o=n.length;q<o;++q){p.push(n[q].c)}return{g:1,c:p.join(""),s:[n[0].s,"(?:","-",n[1].s,"(?:","-",n[2].s,"(?:","(?:T| )?",n[3].s,":",n[4].s,"(?::",n[5].s,")?","(?:(?:\\.|,)(\\d+))?","(Z|(?:[-+]\\d{2}(?::)?\\d{2}))?",")?",")?",")?"].join("")}},U:{g:1,c:"u = parseInt(results[{0}], 10);\n",s:"(-?\\d+)"}},dateFormat:function(n,o){return g.format(n,o)},isEqual:function(o,n){if(o&&n){return(o.getTime()===n.getTime())}return !(o||n)},format:function(o,p){var n=g.formatFunctions;if(!Ext.isDate(o)){return""}if(n[p]==null){g.createFormat(p)}return n[p].call(o)+""},getTimezone:function(n){return n.toString().replace(/^.* (?:\((.*)\)|([A-Z]{1,5})(?:[\-+][0-9]{4})?(?: -?\d+)?)$/,"$1$2").replace(/[^A-Z]/g,"")},getGMTOffset:function(n,o){var p=n.getTimezoneOffset();return(p>0?"-":"+")+Ext.String.leftPad(Math.floor(Math.abs(p)/60),2,"0")+(o?":":"")+Ext.String.leftPad(Math.abs(p%60),2,"0")},getDayOfYear:function(p){var o=0,r=g.clone(p),n=p.getMonth(),q;for(q=0,r.setDate(1),r.setMonth(0);q<n;r.setMonth(++q)){o+=g.getDaysInMonth(r)}return o+p.getDate()-1},getWeekOfYear:(function(){var n=86400000,o=7*n;return function(q){var r=e.UTC(q.getFullYear(),q.getMonth(),q.getDate()+3)/n,p=Math.floor(r/7),s=new e(p*o).getUTCFullYear();return p-Math.floor(e.UTC(s,0,7)/o)+1}}()),isLeapYear:function(n){var o=n.getFullYear();return !!((o&3)===0&&(o%100||(o%400===0&&o)))},getFirstDayOfMonth:function(o){var n=(o.getDay()-(o.getDate()-1))%7;return(n<0)?(n+7):n},getLastDayOfMonth:function(n){return g.getLastDateOfMonth(n).getDay()},getFirstDateOfMonth:function(n){return new e(n.getFullYear(),n.getMonth(),1)},getLastDateOfMonth:function(n){return new e(n.getFullYear(),n.getMonth(),g.getDaysInMonth(n))},getDaysInMonth:(function(){var n=[31,28,31,30,31,30,31,31,30,31,30,31];return function(p){var o=p.getMonth();return o===1&&g.isLeapYear(p)?29:n[o]}}()),getSuffix:function(n){switch(n.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(n){return new e(n.getTime())},isDST:function(n){return new e(n.getFullYear(),0,1).getTimezoneOffset()!==n.getTimezoneOffset()},clearTime:function(n,r){if(r){return g.clearTime(g.clone(n))}var p=n.getDate(),o,q;n.setHours(0);n.setMinutes(0);n.setSeconds(0);n.setMilliseconds(0);if(n.getDate()!==p){for(o=1,q=g.add(n,g.HOUR,o);q.getDate()!==p;o++,q=g.add(n,g.HOUR,o)){}n.setDate(p);n.setHours(q.getHours())}return n},add:function(p,o,s){var t=g.clone(p),n,r,q=0;if(!o||s===0){return t}r=s-parseInt(s,10);s=parseInt(s,10);if(s){switch(o.toLowerCase()){case g.MILLI:t.setTime(t.getTime()+s);break;case g.SECOND:t.setTime(t.getTime()+s*1000);break;case g.MINUTE:t.setTime(t.getTime()+s*60*1000);break;case g.HOUR:t.setTime(t.getTime()+s*60*60*1000);break;case g.DAY:t.setDate(t.getDate()+s);break;case g.MONTH:n=p.getDate();if(n>28){n=Math.min(n,g.getLastDateOfMonth(g.add(g.getFirstDateOfMonth(p),g.MONTH,s)).getDate())}t.setDate(n);t.setMonth(p.getMonth()+s);break;case g.YEAR:n=p.getDate();if(n>28){n=Math.min(n,g.getLastDateOfMonth(g.add(g.getFirstDateOfMonth(p),g.YEAR,s)).getDate())}t.setDate(n);t.setFullYear(p.getFullYear()+s);break}}if(r){switch(o.toLowerCase()){case g.MILLI:q=1;break;case g.SECOND:q=1000;break;case g.MINUTE:q=1000*60;break;case g.HOUR:q=1000*60*60;break;case g.DAY:q=1000*60*60*24;break;case g.MONTH:n=g.getDaysInMonth(t);q=1000*60*60*24*n;break;case g.YEAR:n=(g.isLeapYear(t)?366:365);q=1000*60*60*24*n;break}if(q){t.setTime(t.getTime()+q*r)}}return t},subtract:function(o,n,p){return g.add(o,n,-p)},between:function(o,q,n){var p=o.getTime();return q.getTime()<=p&&p<=n.getTime()},compat:function(){var v,w=["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"],u=["dateFormat","format","getTimezone","getGMTOffset","getDayOfYear","getWeekOfYear","isLeapYear","getFirstDayOfMonth","getLastDayOfMonth","getDaysInMonth","getSuffix","clone","isDST","clearTime","add","between"],o=w.length,n=u.length,r,t,q;for(q=0;q<o;q++){r=w[q];e[r]=g[r]}for(v=0;v<n;v++){t=u[v];e.prototype[t]=function(){var p=Array.prototype.slice.call(arguments);p.unshift(this);return g[t].apply(g,p)}}},diff:function(o,n,q){var p,r=+n-o;switch(q){case g.MILLI:return r;case g.SECOND:return Math.floor(r/1000);case g.MINUTE:return Math.floor(r/60000);case g.HOUR:return Math.floor(r/3600000);case g.DAY:return Math.floor(r/86400000);case"w":return Math.floor(r/604800000);case g.MONTH:p=(n.getFullYear()*12+n.getMonth())-(o.getFullYear()*12+o.getMonth());if(g.add(o,q,p)>n){return p-1}else{return p}case g.YEAR:p=n.getFullYear()-o.getFullYear();if(g.add(o,q,p)>n){return p-1}else{return p}}},align:function(o,q,p){var n=new e(+o);switch(q.toLowerCase()){case g.MILLI:return n;break;case g.SECOND:n.setUTCSeconds(n.getUTCSeconds()-n.getUTCSeconds()%p);n.setUTCMilliseconds(0);return n;break;case g.MINUTE:n.setUTCMinutes(n.getUTCMinutes()-n.getUTCMinutes()%p);n.setUTCSeconds(0);n.setUTCMilliseconds(0);return n;break;case g.HOUR:n.setUTCHours(n.getUTCHours()-n.getUTCHours()%p);n.setUTCMinutes(0);n.setUTCSeconds(0);n.setUTCMilliseconds(0);return n;break;case g.DAY:if(p===7||p===14){n.setUTCDate(n.getUTCDate()-n.getUTCDay()+1)}n.setUTCHours(0);n.setUTCMinutes(0);n.setUTCSeconds(0);n.setUTCMilliseconds(0);return n;break;case g.MONTH:n.setUTCMonth(n.getUTCMonth()-(n.getUTCMonth()-1)%p,1);n.setUTCHours(0);n.setUTCMinutes(0);n.setUTCSeconds(0);n.setUTCMilliseconds(0);return n;break;case g.YEAR:n.setUTCFullYear(n.getUTCFullYear()-n.getUTCFullYear()%p,1,1);n.setUTCHours(0);n.setUTCMinutes(0);n.setUTCSeconds(0);n.setUTCMilliseconds(0);return o;break}}}}());Ext.Function=(function(){var b=0,l,d=[],m=[],g=0,h={},e=window,k=e.requestAnimationFrame||e.webkitRequestAnimationFrame||e.mozRequestAnimationFrame||e.oRequestAnimationFrame||function(q){var n=Ext.now(),o=Math.max(0,16-(n-b)),p=e.setTimeout(function(){q(n+o)},o);b=n+o;return p},c=function(){var n=d.length,q,o,p;l=null;for(o=0;o<n;o++){p=d[o];q=p[3];if(h[q]){p[0].apply(p[1]||Ext.global,p[2]||m);delete h[q]}}d=d.slice(n)},a=function(){Ext.elevateFunction(c)},j={flexSetter:function(n){return function(p,r){var o,q;if(p!==null){if(typeof p!=="string"){for(o in p){if(p.hasOwnProperty(o)){n.call(this,o,p[o])}}if(Ext.enumerables){for(q=Ext.enumerables.length;q--;){o=Ext.enumerables[q];if(p.hasOwnProperty(o)){n.call(this,o,p[o])}}}}else{n.call(this,p,r)}}return this}},bind:function(q,p,o,n){if(arguments.length===2){return function(){return q.apply(p,arguments)}}var s=q,r=Array.prototype.slice;return function(){var t=o||arguments;if(n===true){t=r.call(arguments,0);t=t.concat(o)}else{if(typeof n=="number"){t=r.call(arguments,0);Ext.Array.insert(t,n,o)}}return s.apply(p||Ext.global,t)}},bindCallback:function(r,q,p,o,n){return function(){var s=Ext.Array.slice(arguments);return Ext.callback(r,q,p?p.concat(s):s,o,n)}},pass:function(p,n,o){if(!Ext.isArray(n)){if(Ext.isIterable(n)){n=Ext.Array.clone(n)}else{n=n!==undefined?[n]:[]}}return function(){var q=n.slice();q.push.apply(q,arguments);return p.apply(o||this,q)}},alias:function(o,n){return function(){return o[n].apply(o,arguments)}},clone:function(n){return function(){return n.apply(this,arguments)}},createInterceptor:function(q,p,o,n){if(!Ext.isFunction(p)){return q}else{n=Ext.isDefined(n)?n:null;return function(){var s=this,r=arguments;p.target=s;p.method=q;return(p.apply(o||s||Ext.global,r)!==false)?q.apply(s||Ext.global,r):n}}},createDelayed:function(r,p,q,o,n){if(q||o){r=Ext.Function.bind(r,q,o,n)}return function(){var t=this,s=Array.prototype.slice.call(arguments);setTimeout(function(){if(Ext.elevateFunction){Ext.elevateFunction(r,t,s)}else{r.apply(t,s)}},p)}},defer:function(r,p,q,o,n){r=Ext.Function.bind(r,q,o,n);if(p>0){return setTimeout(function(){if(Ext.elevateFunction){Ext.elevateFunction(r)}else{r()}},p)}r();return 0},interval:function(r,p,q,o,n){r=Ext.Function.bind(r,q,o,n);return setInterval(function(){if(Ext.elevateFunction){Ext.elevateFunction(r)}else{r()}},p)},createSequence:function(o,p,n){if(!p){return o}else{return function(){var q=o.apply(this,arguments);p.apply(n||this,arguments);return q}}},createBuffered:function(r,o,q,p){var n;return function(){var t=p||Array.prototype.slice.call(arguments,0),s=q||this;if(n){clearTimeout(n)}n=setTimeout(function(){if(Ext.elevateFunction){Ext.elevateFunction(r,s,t)}else{r.apply(s,t)}},o)}},createAnimationFrame:function(q,p,o,r){var n;r=r||3;return function(){var s=o||Array.prototype.slice.call(arguments,0);p=p||this;if(r===3&&n){j.cancelAnimationFrame(n)}if((r&1)||!n){n=j.requestAnimationFrame(function(){n=null;q.apply(p,s)})}}},requestAnimationFrame:function(q,p,n){var r=++g,o=Array.prototype.slice.call(arguments,0);o[3]=r;h[r]=1;d.push(o);if(!l){l=k(Ext.elevateFunction?a:c)}return r},cancelAnimationFrame:function(n){delete h[n]},createThrottled:function(r,o,q){var s=0,n,p,u,t=function(){if(Ext.elevateFunction){Ext.elevateFunction(r,q,p)}else{r.apply(q,p)}s=Ext.now();u=null};return function(){if(!q){q=this}n=Ext.now()-s;p=arguments;if(n>=o){clearTimeout(u);t()}else{if(!u){u=Ext.defer(t,o-n)}}}},createBarrier:function(p,o,n){return function(){if(!--p){o.apply(n,arguments)}}},interceptBefore:function(o,n,q,p){var r=o[n]||Ext.emptyFn;return(o[n]=function(){var s=q.apply(p||this,arguments);r.apply(this,arguments);return s})},interceptAfter:function(o,n,q,p){var r=o[n]||Ext.emptyFn;return(o[n]=function(){r.apply(this,arguments);return q.apply(p||this,arguments)})},makeCallback:function(o,n){return function(){return n[o].apply(n,arguments)}}};Ext.defer=j.defer;Ext.interval=j.interval;Ext.pass=j.pass;Ext.bind=j.bind;Ext.deferCallback=j.requestAnimationFrame;return j})();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);if(h===null){h=j}if(g===null){g=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},sign:function(e){e=+e;if(e===0||isNaN(e)){return e}return(e>0)?1:-1},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},getAllKeys:function(c){var d=[],e;for(e in c){d.push(e)}return d},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,{_namedScopes:{"this":{isThis:1},controller:{isController:1},self:{isSelf:1},"self.controller":{isSelf:1,isController:1}},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,g,d,c,b,h){if(!j){return}var e=(g in Ext._namedScopes);if(j.charAt){if((!g||e)&&b){g=b.resolveListenerScope(e?g:h)}j=g[j]}else{if(e){g=h||b}else{if(!g){g=b}}}var a;if(j&&Ext.isFunction(j)){g=g||Ext.global;if(c){Ext.defer(j,c,g,d)}else{if(Ext.elevateFunction){a=Ext.elevateFunction(j,g,d)}else{if(d){a=j.apply(g,d)}else{a=j.call(g)}}}}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(Ext.propertyNameSplitRe)}for(var a,c=0,h=g?g.length:0;c<h;c++){a=g[c];if(e||d.hasOwnProperty(a)){b[a]=d[a]}}return b},propertyNameSplitRe:/[,;\s]+/,copyToIf:function(a,d,e){if(typeof e==="string"){e=e.split(Ext.propertyNameSplitRe)}for(var b,c=0,g=e?e.length:0;c<g;c++){b=e[c];if(a[b]===undefined){a[b]=d[b]}}return a},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){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.1.0.107');Ext.setVersion('sencha-core','5.1.0.107');}})(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},mergeNew:function(g,b,e,d){var a,c;if(!b){a=g}else{if(!g){a=b}else{a=Ext.Object.chain(b);for(c in g){if(!d||!(c in a)){a[c]=g[c]}}}}return a},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(x,l){var z=this,k=z.configs,m=z.initMap,o=z.initListMap,v=z.initList,p=z.cls.prototype,d=a.fork(z.values),q=0,s=!v,e,g,h,B,u,t,j,n,A,r,y,w;if(s){z.initList=v=[];z.initListMap=o={};x.isFirstInstance=true;for(A in m){B=m[A];g=k[A];y=g.cached;if(B){n=g.names;r=d[A];if(!p[n.set].$isDefault||p[n.apply]||p[n.update]||typeof r==="object"){if(y){(e||(e=[])).push(g)}else{v.push(g);o[A]=true}x[n.get]=g.initGetter||g.getInitGetter()}else{p[g.getInternalName(p)]=r}}else{if(y){p[g.getInternalName(p)]=undefined}}}}j=e&&e.length;if(j){for(u=0;u<j;++u){t=e[u].getInternalName(p);x[t]=null}for(u=0;u<j;++u){n=(g=e[u]).names;h=n.get;if(x.hasOwnProperty(h)){x[n.set](d[g.name]);delete x[h]}}for(u=0;u<j;++u){t=e[u].getInternalName(p);p[t]=x[t];delete x[t]}}if(l&&l.platformConfig){l=z.resolvePlatformConfig(x,l)}if(s){if(x.afterCachedConfig&&!x.afterCachedConfig.$nullFn){x.afterCachedConfig(l)}}x.isConfiguring=true;x.config=d;for(u=0,j=v.length;u<j;++u){g=v[u];x[g.names.get]=g.initGetter||g.getInitGetter()}if(x.transformInstanceConfig){l=x.transformInstanceConfig(l)}if(l){for(A in l){r=l[A];g=k[A];if(!g){x[A]=r}else{if(!g.lazy){++q}if(!o[A]){x[g.names.get]=g.initGetter||g.getInitGetter()}if(g.merge){r=g.merge(r,d[A],x)}else{if(r&&r.constructor===Object){w=d[A];if(w&&w.constructor===Object){r=a.merge(d[A],r)}else{r=Ext.clone(r)}}}}d[A]=r}}if(x.beforeInitConfig&&!x.beforeInitConfig.$nullFn){if(x.beforeInitConfig(l)===false){return}}if(l){for(A in l){if(!q){break}g=k[A];if(g&&!g.lazy){--q;n=g.names;h=n.get;if(x.hasOwnProperty(h)){x[n.set](d[A]);delete x[n.get]}}}}for(u=0,j=v.length;u<j;++u){g=v[u];n=g.names;h=n.get;if(!g.lazy&&x.hasOwnProperty(h)){x[n.set](d[g.name]);delete x[h]}}delete x.isConfiguring},getCurrentConfig:function(e){var d=e.defaultConfig,h={},g;for(g in d){h[g]=e[c[g].names.get]()}return h},merge:function(d,k,h){var m=this.configs,g,l,j,e;for(g in h){l=h[g];e=m[g];if(e){if(e.merge){l=e.merge(l,k[g],d)}else{if(l&&l.constructor===Object){j=k[g];if(j&&j.constructor===Object){l=Ext.Object.merge(j,l)}else{l=Ext.clone(l)}}}}k[g]=l}return k},reconfigure:function(t,o,u){var k=t.config,l=[],s=t.$configStrict,p=this.configs,g=u&&u.defaults,j=u&&u.strict===false,n,r,h,m,d,q,e;for(d in o){if(g&&t.hasOwnProperty(d)){continue}k[d]=o[d];n=p[d];if(n){t[n.names.get]=n.initGetter||n.getInitGetter()}else{if(s){continue}}l.push(d)}for(h=0,m=l.length;h<m;h++){d=l[h];n=p[d];if(n){q=n.names;r=q.get;if(t.hasOwnProperty(r)){t[q.set](o[d]);delete t[r]}}else{n=c[d]||Ext.Config.get(d);q=n.names;if(t[q.set]){t[q.set](o[d])}else{if(j){t[d]=o[d]}}}}},resolvePlatformConfig:function(d,l){var j=l&&l.platformConfig,e=l,g,h,k;if(j){h=Ext.getPlatformConfigKeys(j);k=h.length;if(k){e=Ext.merge({},e);for(g=0,k=h.length;g<k;++g){this.merge(d,e,j[h[g]])}}}return e}}}());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(s,D,p){var B=this,w=Ext.Function.clone,z=D?B:B.prototype,t=!D&&z.defaultConfig,C=Ext.enumerables,x=s.privates,y,v,A,u,o,q,r;if(x){delete s.privates;if(!D){r=x.statics;delete x.statics}B.addMembers(x,D,q);if(r){B.addMembers(r,true,q)}}for(o in s){if(s.hasOwnProperty(o)){u=s[o];if(typeof u==="function"&&!u.$isClass&&!u.$nullFn){if(u.$owner){u=w(u)}if(z.hasOwnProperty(o)){u.$previous=z[o]}u.$owner=B;u.$name=o}else{if(t&&(o in t)&&!z.config.hasOwnProperty(o)){(y||(y={}))[o]=u;continue}}z[o]=u}}if(y){B.addConfig(y)}if(C){for(v=0,A=C.length;v<A;++v){if(s.hasOwnProperty(o=C[v])){u=s[o];if(u&&!u.$nullFn){if(u.$owner){u=w(u)}u.$owner=B;u.$name=o;if(z.hasOwnProperty(o)){u.$previous=z[o]}}z[o]=u}}}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(q,s,p){var r=this,o;if(q){if(typeof q==="string"){o={};o[q]=s}else{o=q}r.getConfigurator().reconfigure(r,o,p)}return r},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(b,a){(Ext.util||(Ext.util={})).Cache=b=function(c){var e=this,d;if(c){Ext.apply(e,c)}e.head=d={key:null,value:null};e.map={};d.next=d.prev=d};b.prototype=a={maxSize:100,count:0,clear:function(){var e=this,c=e.head,d=c.next;c.next=c.prev=c;if(!e.evict.$nullFn){for(;d!==c;d=d.next){e.evict(d.key,d.value)}}e.count=0},each:function(e,d){d=d||this;for(var c=this.head,g=c.next;g!==c;g=g.next){if(e.call(d,g.key,g.value)){break}}},get:function(d){var g=this,c=g.head,h=g.map,e=h[d];if(e){if(e.prev!==c){g.unlinkEntry(e);g.linkEntry(e)}}else{h[d]=e={key:d,value:g.miss.apply(g,arguments)};g.linkEntry(e);++g.count;while(g.count>g.maxSize){g.unlinkEntry(c.prev,true);--g.count}}return e.value},evict:Ext.emptyFn,linkEntry:function(d){var c=this.head,e=c.next;d.next=e;d.prev=c;c.next=d;e.prev=d},unlinkEntry:function(e,g){var c=e.next,d=e.prev;d.next=c;c.prev=d;if(g){this.evict(e.key,e.value)}}};a.destroy=a.clear}());(function(){var d,c=Ext.Base,e=c.$staticMembers,b=function(h,g){return(h.length-g.length)||((h<g)?-1:((h>g)?1:0))};function a(h){function g(){return this.constructor.apply(this,arguments)||null}return g}Ext.Class=d=function(h,j,g){if(typeof h!="function"){g=j;j=h;h=null}if(!j){j={}}h=d.create(h,j);d.process(h,j,g);return h};Ext.apply(d,{makeCtor:a,onBeforeCreated:function(h,j,g){h.addMembers(j);g.onCreated.call(h,h)},create:function(g,k){var j=e.length,h;if(!g){g=a()}while(j--){h=e[j];g[h]=c[h]}return g},process:function(g,o,k){var h=o.preprocessors||d.defaultPreprocessors,r=this.preprocessors,u={onBeforeCreated:this.onBeforeCreated},t=[],v,n,m,s,l,q,p;delete o.preprocessors;g._classHooks=u;for(m=0,s=h.length;m<s;m++){v=h[m];if(typeof v=="string"){v=r[v];n=v.properties;if(n===true){t.push(v.fn)}else{if(n){for(l=0,q=n.length;l<q;l++){p=n[l];if(o.hasOwnProperty(p)){t.push(v.fn);break}}}}}else{t.push(v)}}u.onCreated=k?k:Ext.emptyFn;u.preprocessors=t;this.doProcess(g,o,u)},doProcess:function(h,m,g){var l=this,n=g.preprocessors,j=n.shift(),k=l.doProcess;for(;j;j=n.shift()){if(j.call(l,h,m,g,k)===false){return}}g.onBeforeCreated.apply(l,arguments)},preprocessors:{},registerPreprocessor:function(h,l,j,g,k){if(!g){g="last"}if(!j){j=[h]}this.preprocessors[h]={name:h,properties:j||false,fn:l};this.setDefaultPreprocessorPosition(h,g,k);return this},getPreprocessor:function(g){return this.preprocessors[g]},getPreprocessors:function(){return this.preprocessors},defaultPreprocessors:[],getDefaultPreprocessors:function(){return this.defaultPreprocessors},setDefaultPreprocessors:function(g){this.defaultPreprocessors=Ext.Array.from(g);return this},setDefaultPreprocessorPosition:function(j,l,k){var g=this.defaultPreprocessors,h;if(typeof l=="string"){if(l==="first"){g.unshift(j);return this}else{if(l==="last"){g.push(j);return this}}l=(l==="after")?1:-1}h=Ext.Array.indexOf(g,k);if(h!==-1){Ext.Array.splice(g,Math.max(0,h+l),0,j)}return this}});d.registerPreprocessor("extend",function(h,k,p){var l=Ext.Base,m=l.prototype,n=k.extend,g,o,j;delete k.extend;if(n&&n!==Object){g=n}else{g=l}o=g.prototype;if(!g.$isClass){for(j in m){if(!o[j]){o[j]=m[j]}}}h.extend(g);h.triggerExtended.apply(h,arguments);if(k.onClassExtended){h.onExtended(k.onClassExtended,h);delete k.onClassExtended}},true);d.registerPreprocessor("privates",function(g,k){var j=k.privates,l=j.statics,h=j.privacy||true;delete k.privates;delete j.statics;g.addMembers(j,false,h);if(l){g.addMembers(l,true,h)}});d.registerPreprocessor("statics",function(g,h){g.addStatics(h.statics);delete h.statics});d.registerPreprocessor("inheritableStatics",function(g,h){g.addInheritableStatics(h.inheritableStatics);delete h.inheritableStatics});Ext.createRuleFn=function(g){return new Function("$c","with($c) { return ("+g+"); }")};Ext.expressionCache=new Ext.util.Cache({miss:Ext.createRuleFn});Ext.ruleKeySortFn=b;Ext.getPlatformConfigKeys=function(j){var h=[],g,k;for(g in j){k=Ext.expressionCache.get(g);if(k(Ext.platformTags)){h.push(g)}}h.sort(b);return h};d.registerPreprocessor("platformConfig",function(w,A,g){var l=A.platformConfig,z=A.config,n,m,p,x,u,q,C,s,B,y,k,v,o,t,h,r;delete A.platformConfig;if(l instanceof Array){z=z||{};r=(Ext.theme||(Ext.theme={name:"Default"})).name;for(v=0,o=l.length;v<o;v++){k=l[v];B=k.platform;delete k.platform;y=[].concat(k.theme);h=y.length;delete k.theme;if(B&&Ext.filterPlatform(B)){Ext.merge(z,k)}if(h){for(t=0;t<h;t++){if(r===y[t]){Ext.merge(z,k)}}}}}else{x=w.getConfigurator();m=x.configs;q=Ext.getPlatformConfigKeys(l);for(v=0,o=q.length;v<o;++v){p=l[q[v]];u=n=null;for(C in p){s=p[C];if(z&&C in z){(n||(n={}))[C]=s;(u||(u={}))[C]=z[C];delete z[C]}else{if(C in m){(n||(n={}))[C]=s}else{A[C]=s}}}if(u){x.add(u)}if(n){x.add(n)}}}});d.registerPreprocessor("config",function(g,h){if(h.hasOwnProperty("$configPrefixed")){g.prototype.$configPrefixed=h.$configPrefixed}g.addConfig(h.config);delete h.config});d.registerPreprocessor("cachedConfig",function(g,h){if(h.hasOwnProperty("$configPrefixed")){g.prototype.$configPrefixed=h.$configPrefixed}g.addCachedConfig(h.cachedConfig);delete h.cachedConfig});d.registerPreprocessor("mixins",function(k,l,g){var j=l.mixins,h=g.onCreated;delete l.mixins;g.onCreated=function(){g.onCreated=h;k.mixin(j);return g.onCreated.apply(this,arguments)}});Ext.extend=function(j,k,h){if(arguments.length===2&&Ext.isObject(k)){h=k;k=j;j=null}var g;if(!k){throw new Error("[Ext.extend] Attempting to extend from a class which has not been loaded on the page.")}h.extend=k;h.preprocessors=["extend","statics","inheritableStatics","mixins","platformConfig","config"];if(j){g=new d(j,h);g.prototype.constructor=j}else{g=new d(h)}g.prototype.override=function(n){for(var l in n){if(n.hasOwnProperty(l)){this[l]=n[l]}}};return g}}());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.nameToAlternates[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,q,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(w){var v,x,u,t,y;if(a.classes[w]||a.existCache[w]){return true}t=g;y=a.parseNamespace(w);for(v=0,x=y.length;v<x;v++){u=y[v];if(typeof u!=="string"){t=u}else{if(!t||!t[u]){return false}t=t[u]}}a.triggerCreated(w);return true},createdListeners:[],nameCreatedListeners:{},existsListeners:[],nameExistsListeners:{},overrideMap:{},triggerCreated:function(t,u){a.existCache[t]=u||1;a.classState[t]+=40;a.notify(t,a.createdListeners,a.nameCreatedListeners)},onCreated:function(v,u,t){a.addListener(v,u,t,a.createdListeners,a.nameCreatedListeners)},notify:function(B,D,v){var w=a.getAlternatesByName(B),C=[B],y,A,x,z,u,t;for(y=0,A=D.length;y<A;y++){u=D[y];u.fn.call(u.scope,B)}while(C){for(y=0,A=C.length;y<A;y++){t=C[y];D=v[t];if(D){for(x=0,z=D.length;x<z;x++){u=D[x];u.fn.call(u.scope,t)}delete v[t]}}C=w;w=null}},addListener:function(y,x,w,v,u){if(Ext.isArray(w)){y=Ext.Function.createBarrier(w.length,y,x);for(t=0;t<w.length;t++){this.addListener(y,null,w[t],v,u)}return}var t,z={fn:y,scope:x};if(w){if(this.isCreated(w)){y.call(x,w);return}if(!u[w]){u[w]=[]}u[w].push(z)}else{v.push(z)}},parseNamespace:function(v){var t=this.namespaceParseCache,w,y,A,u,D,C,B,x,z;if(this.enableNamespaceParseCache){if(t.hasOwnProperty(v)){return t[v]}}w=[];y=this.namespaceRewrites;A=g;u=v;for(x=0,z=y.length;x<z;x++){D=y[x];C=D.from;B=D.to;if(u===C||u.substring(0,C.length)===C){u=u.substring(C.length);if(typeof B!=="string"){A=B}else{w=w.concat(B.split("."))}break}}w.push(A);w=w.concat(u.split("."));if(this.enableNamespaceParseCache){t[v]=w}return w},setNamespace:function(w,z){var u=g,A=this.parseNamespace(w),y=A.length-1,t=A[y],x,v;for(x=0;x<y;x++){v=A[x];if(typeof v!=="string"){u=v}else{if(!u[v]){u[v]={}}u=u[v]}}u[t]=z;return u[t]},createNamespaces:function(){var t=g,y,v,w,u,x,z;for(w=0,x=arguments.length;w<x;w++){y=this.parseNamespace(arguments[w]);for(u=0,z=y.length;u<z;u++){v=y[u];if(typeof v!=="string"){t=v}else{if(!t[v]){t[v]={}}t=t[v]}}}return t},set:function(t,w){var v=this,u=v.getName(w);v.classes[t]=v.setNamespace(t,w);if(u&&u!==t){v.addAlternate(u,t)}return this},get:function(v){var x=this.classes,t,z,u,w,y;if(x[v]){return x[v]}t=g;z=this.parseNamespace(v);for(w=0,y=z.length;w<y;w++){u=z[w];if(typeof u!=="string"){t=u}else{if(!t||!t[u]){return null}t=t[u]}}return t},addNameAliasMappings:function(t){this.addAlias(t)},addNameAlternateMappings:function(t){this.addAlternate(t)},getByAlias:function(t){return this.get(this.getNameByAlias(t))},getName:function(t){return t&&t.$className||""},getClass:function(t){return t&&t.self||null},create:function(u,w,t){var v=k(u);if(typeof w==="function"){w=w(v)}w.$className=u;return new e(v,w,function(){var x=w.postprocessors||a.defaultPostprocessors,E=a.postprocessors,F=[],D,z,C,y,B,A,G;delete w.postprocessors;for(z=0,C=x.length;z<C;z++){D=x[z];if(typeof D==="string"){D=E[D];A=D.properties;if(A===true){F.push(D.fn)}else{if(A){for(y=0,B=A.length;y<B;y++){G=A[y];if(w.hasOwnProperty(G)){F.push(D.fn);break}}}}}else{F.push(D)}}w.postprocessors=F;w.createdFn=t;a.processCreate(u,this,w)})},processCreate:function(w,u,y){var x=this,t=y.postprocessors.shift(),v=y.createdFn;if(!t){if(w){x.set(w,u)}delete u._classHooks;if(v){v.call(u,u)}if(w){x.triggerCreated(w)}return}if(t.call(x,w,u,y,x.processCreate)!==false){x.processCreate(w,u,y)}},createOverride:function(z,x,v){var B=this,C=x.override,E=x.requires,w=x.uses,y=x.mixins,t,D=x.compatibility,A,u=function(){var F,J,I,H,G;if(!A){J=E?E.slice(0):[];if(y){if(!(t=y instanceof Array)){for(H in y){if(Ext.isString(F=y[H])){J.push(F)}}}else{for(I=0,G=y.length;I<G;++I){if(Ext.isString(F=y[I])){J.push(F)}}}}A=true;if(J.length){Ext.require(J,u);return}}if(t){for(I=0,G=y.length;I<G;++I){if(Ext.isString(F=y[I])){y[I]=Ext.ClassManager.get(F)}}}else{if(y){for(H in y){if(Ext.isString(F=y[H])){y[H]=Ext.ClassManager.get(F)}}}}F=B.get(C);delete x.override;delete x.compatibility;delete x.requires;delete x.uses;Ext.override(F,x);Ext.Loader.history.push(z);if(w){Ext.Loader.addUsedClasses(w)}if(v){v.call(F,F)}};a.overrideMap[z]=true;if(!D||Ext.checkVersion(D)){B.onCreated(u,B,C)}B.triggerCreated(z,2);return B},instantiateByAlias:function(){var u=arguments[0],t=c.call(arguments),v=this.getNameByAlias(u);t[0]=v;return Ext.create.apply(Ext,t)},instantiate:function(){return Ext.create.apply(Ext,arguments)},dynInstantiate:function(u,t){t=q(t,true);t.unshift(u);return Ext.create.apply(Ext,t)},getInstantiator:function(w){var v=this.instantiators,x,u,t;x=v[w];if(!x){u=w;t=[];for(u=0;u<w;u++){t.push("a["+u+"]")}x=v[w]=new Function("c","a","return new c("+t.join(",")+")")}return x},postprocessors:{},defaultPostprocessors:[],registerPostprocessor:function(u,x,v,t,w){if(!t){t="last"}if(!v){v=[u]}this.postprocessors[u]={name:u,properties:v||false,fn:x};this.setDefaultPostprocessorPosition(u,t,w);return this},setDefaultPostprocessors:function(t){this.defaultPostprocessors=q(t);return this},setDefaultPostprocessorPosition:function(u,x,w){var v=this.defaultPostprocessors,t;if(typeof x==="string"){if(x==="first"){v.unshift(u);return this}else{if(x==="last"){v.push(u);return this}}x=(x==="after")?1:-1}t=Ext.Array.indexOf(v,w);if(t!==-1){Ext.Array.splice(v,Math.max(0,t+x),0,u)}return this}});a.registerPostprocessor("alias",function(v,u,y){var t=Ext.Array.from(y.alias),w,x;for(w=0,x=t.length;w<x;w++){m=t[w];this.addAlias(u,m)}},["xtype","alias"]);a.registerPostprocessor("singleton",function(u,t,w,v){if(w.singleton){v.call(this,u,new t(),w)}else{return true}return false});a.registerPostprocessor("alternateClassName",function(u,t,y){var w=y.alternateClassName,v,x,z;if(!(w instanceof Array)){w=[w]}for(v=0,x=w.length;v<x;v++){z=w[v];this.set(z,t)}});a.registerPostprocessor("debugHooks",function(u,t,v){var w=t.isInstance?t.self:t;delete w.prototype.debugHooks});a.registerPostprocessor("deprecated",function(u,t,v){var w=t.isInstance?t.self:t;w.addDeprecations(v.deprecated);delete w.prototype.deprecated});Ext.apply(Ext,{create:function(){var v=arguments[0],w=typeof v,u=c.call(arguments,1),t;if(w==="function"){t=v}else{if(w!=="string"&&u.length===0){u=[v];if(!(v=v.xclass)){v=u[0].xtype;if(v){v="widget."+v}}}v=a.resolveName(v);t=a.get(v)}if(!t){Ext.syncRequire(v);t=a.get(v)}return a.getInstantiator(u.length)(t,u)},widget:function(v,u){var y=v,w,x,t;if(typeof y!=="string"){u=v;y=u.xtype;x=u.xclass}else{u=u||{}}if(u.isComponent){return u}if(!x){w="widget."+y;x=a.getNameByAlias(w)}if(x){t=a.get(x)}if(!t){return Ext.create(x||w,u)}return new t(u)},createByAlias:m(a,"instantiateByAlias"),define:function(u,v,t){if(v.override){a.classState[u]=20;return a.createOverride.apply(a,arguments)}a.classState[u]=10;return a.create.apply(a,arguments)},undefine:function(w){var u=a.classes,y,z,v,t;delete a.namespaceParseCache[w];delete u[w];delete a.existCache[w];delete a.classState[w];a.removeName(w);y=a.parseNamespace(w);z=y.length-1;v=y[0];for(t=1;t<z;t++){v=v[y[t]];if(!v){return}}try{delete v[y[z]]}catch(x){v[y[z]]=undefined}},getClassName:m(a,"getName"),getDisplayName:function(t){if(t){if(t.displayName){return t.displayName}if(t.$name&&t.$class){return Ext.getClassName(t.$class)+"#"+t.$name}if(t.$className){return t.$className}}return"Anonymous"},getClass:m(a,"getClass"),namespace:m(a,"createNamespaces")});Ext.createWidget=Ext.widget;Ext.ns=Ext.namespace;e.registerPreprocessor("className",function(t,u){if("$className" in u){t.$className=u.$className}},true,"first");e.registerPreprocessor("alias",function(E,y){var C=E.prototype,v=q(y.xtype),t=q(y.alias),F="widget.",D=F.length,z=Array.prototype.slice.call(C.xtypesChain||[]),w=Ext.merge({},C.xtypesMap||{}),x,B,A,u;for(x=0,B=t.length;x<B;x++){A=t[x];if(A.substring(0,D)===F){u=A.substring(D);Ext.Array.include(v,u)}}E.xtype=y.xtype=v[0];y.xtypes=v;for(x=0,B=v.length;x<B;x++){u=v[x];if(!w[u]){w[u]=true;z.push(u)}}y.xtypesChain=z;y.xtypesMap=w;Ext.Function.interceptAfter(y,"onClassCreated",function(){var G=C.mixins,I,H;for(I in G){if(G.hasOwnProperty(I)){H=G[I];v=H.xtypes;if(v){for(x=0,B=v.length;x<B;x++){u=v[x];if(!w[u]){w[u]=true;z.push(u)}}}}}});for(x=0,B=v.length;x<B;x++){u=v[x];Ext.Array.include(t,F+u)}y.alias=t},["xtype","alias"]);if(Ext.manifest){var d=Ext.manifest,j=d.classes,s=d.paths,h={},p={},o,l,b,r,n;if(s){if(d.bootRelative){n=Ext.Boot.baseUrl;for(r in s){if(s.hasOwnProperty(r)){s[r]=n+s[r]}}}a.setPath(s)}if(j){for(o in j){p[o]=[];h[o]=[];l=j[o];if(l.alias){h[o]=l.alias}if(l.alternates){p[o]=l.alternates}}}a.addAlias(h);a.addAlternate(p)}return a}(Ext.Class,Ext.Function.alias,Array.prototype.slice,Ext.Array.from,Ext.global));Ext.env||(Ext.env={});Ext.env.Browser=function(u,o){var v=this,a=v.browserPrefixes,b=v.enginePrefixes,r=u.match(new RegExp("((?:"+Ext.Object.getValues(a).join(")|(?:")+"))([\\w\\._]+)")),h=u.match(new RegExp("((?:"+Ext.Object.getValues(b).join(")|(?:")+"))([\\w\\._]+)")),c=v.browserNames,q=c.other,k=v.engineNames,t=k.other,m="",g="",d="",j=false,p,n,l,w,s;v.userAgent=u;if(r){q=c[Ext.Object.getKey(a,r[1])];if(q==="Safari"&&/^Opera/.test(u)){q="Opera"}m=new Ext.Version(r[2])}if(h){t=k[Ext.Object.getKey(b,h[1])];g=new Ext.Version(h[2])}if(t=="Trident"&&q!="IE"){q="IE";var e=u.match(/.*rv:(\d+.\d+)/);if(e&&e.length){e=e[1];m=new Ext.Version(e)}}if(u.match(/FB/)&&q=="Other"){q=c.safari;t=k.webkit}if(u.match(/Android.*Chrome/g)){q="ChromeMobile"}if(u.match(/OPR/)){q="Opera";r=u.match(/OPR\/(\d+.\d+)/);m=new Ext.Version(r[1])}Ext.apply(this,{engineName:t,engineVersion:g,name:q,version:m});this.setFlag(q,true,o);if(m){d=m.getMajor()||"";if(v.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}else{if(l==11||(d==11&&l!=7&&l!=8&&l!=9&&l!=10)){d=11}}}}}s=Math.max(d,11);for(p=7;p<=s;++p){n="isIE"+p;if(d<=p){Ext[n+"m"]=true}if(d===p){Ext[n]=true}if(d>=p){Ext[n+"p"]=true}}}if(v.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(q+d,true,o);this.setFlag(q+m.getShortVersion())}for(p in c){if(c.hasOwnProperty(p)){w=c[p];this.setFlag(w,q===w)}}this.setFlag(w);if(g){this.setFlag(t+(g.getMajor()||""));this.setFlag(t+g.getShortVersion())}for(p in k){if(k.hasOwnProperty(p)){w=k[p];this.setFlag(w,t===w,o)}}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(u)){this.setFlag("GoogleGlass")}if(/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)(?!.*FBAN)/i.test(u)){j=true}this.setFlag("WebView",j);this.isStrict=Ext.isStrict=document.compatMode=="CSS1Compat";this.isSecure=Ext.isSecure;this.identity=q+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{return"csstransform"}}};(function(a){Ext.browser=new Ext.env.Browser(a,true);Ext.userAgent=a.toLowerCase();Ext.SSL_SECURE_URL=Ext.isSecure&&Ext.isIE?"javascript:''":"about:blank"}(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:"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:"touchScroll",fn:function(){var a=Ext.supports,b=0;if(navigator.msMaxTouchPoints||(Ext.isWebKit&&a.TouchEvents&&Ext.os.is.Desktop)){b=1}else{if(a.Touch){b=2}}return b}},{name:"Touch",fn:function(){var a=navigator.msMaxTouchPoints||navigator.maxTouchPoints;return(Ext.supports.TouchEvents&&a!==1)||a>1}},{name:"TouchEvents",fn:function(){return this.isEventSupported("touchend")}},{name:"PointerEvents",fn:function(){return navigator.pointerEnabled}},{name:"MSPointerEvents",fn:function(){return navigator.msPointerEnabled}},{name:"Orientation",fn:function(){return("orientation" in window)&&this.isEventSupported("orientationchange")}},{name:"OrientationChange",fn:function(){return this.isEventSupported("orientationchange")}},{name:"DeviceMotion",fn:function(){return this.isEventSupported("devicemotion")}},{names:["Geolocation","GeoLocation"],fn:function(){return"geolocation" in window.navigator}},{name:"SqlDatabase",fn:function(){return"openDatabase" in window}},{name:"WebSockets",fn:function(){return"WebSocket" in window}},{name:"Range",fn:function(){return !!document.createRange}},{name:"CreateContextualFragment",fn:function(){var 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){c=true}}return c&&!Ext.isIE9}},{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.isIE9m}},{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:"ChildContentClearedWhenSettingInnerHTML",ready:true,fn:function(){var a=this.getTestElement(),b;a.innerHTML="<div>a</div>";b=a.firstChild;a.innerHTML="<div>b</div>";return b.innerHTML!=="a"}},{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}},{name:"FocusinFocusoutEvents",fn:function(){return !Ext.isGecko}}]};Ext.supports={};Ext.feature.detect();Ext.env.Ready={blocks:(location.search||"").indexOf("ext-pauseReadyFire")>0?1:0,bound:0,delay:1,firing:false,generation:0,listeners:[],nextId:0,sortGeneration:0,state:0,timer:null,bind:function(){var 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;Ext.isReady=false},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=Ext.defer(function(){a.timer=null;a.handleReadySoon()},1)}else{a.handleReadySoon()}}}},handleReady:function(){var a=this;if(a.state===1){a.state=2;Ext._beforeReadyTime=Ext.now();a.invokeAll();Ext._afterReadytime=Ext.now()}},handleReadySoon:function(a){var b=this;if(!b.timer){b.timer=Ext.defer(function(){b.timer=null;b.handleReady()},a||b.delay)}},invoke:function(b){var a=b.delay;if(a){Ext.defer(b.fn,a,b.scope)}else{if(Ext.elevateFunction){Ext.elevateFunction(b.fn,b.scope)}else{b.fn.call(b.scope)}}},invokeAll:function(){if(Ext.elevateFunction){Ext.elevateFunction(this.doInvokeAll,this)}else{this.doInvokeAll()}},doInvokeAll: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},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(Ext.elevateFunction){Ext.elevateFunction(a.doReadyEvent,a,arguments)}else{a.doReadyEvent(b)}},doReadyEvent:function(b){var a=this;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.isIE9m){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=Ext.defer(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;a.onCreated(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]&&!a.overrideMap[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",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.util=Ext.util||{};Ext.util.DelayedTask=function(e,d,b,j,h){var g=this,a,c=function(){var k=Ext.GlobalEvents;clearInterval(g.id);g.id=null;e.apply(d,b||[]);if(h!==false&&k.hasListeners.idle){k.fireEvent("idle")}};j=typeof j==="boolean"?j:true;g.id=null;g.delay=function(l,n,m,k){if(j){g.cancel()}if(typeof l==="number"){a=l}e=n||e;d=m||d;b=k||b;if(!g.id){g.id=Ext.interval(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(n,e,g,u,q){var x=this,l=false,p=x.observable,k=x.name,r,j,w,t,y,s,h,m,v,o;if(!x.isListening(n,e)){j=x.createListener(n,e,g,u,q);if(x.firing){x.listeners=x.listeners.slice(0)}r=x.listeners;m=h=r.length;w=g&&g.priority;y=x._highestNegativePriorityIndex;s=(y!==undefined);if(w){t=(w<0);if(!t||s){for(v=(t?y:0);v<h;v++){o=r[v].o?r[v].o.priority||0:0;if(o<w){m=v;break}}}else{x._highestNegativePriorityIndex=m}}else{if(s){m=y}}if(!t&&m<=y){x._highestNegativePriorityIndex++}if(m===h){x.listeners[h]=j}else{a(x.listeners,m,[j])}if(p.isElement){p._getPublisher(k).subscribe(p,k,g.delegated!==false,g.capture)}l=true}return l},createListener:function(p,r,e,g,j){var m=this,n=(Ext._namedScopes[r]),h={fn:p,scope:r,ev:m,caller:g,manager:j,namedScope:n,defaultScope:n?(r||m.observable):undefined,lateBound:typeof p==="string"},q=p,l=false,k;if(e){h.o=e;if(e.single){q=m.createSingle(q,h,e,r);l=true}if(e.target){q=m.createTargeted(q,h,e,r,l);l=true}if(e.delay){q=m.createDelayed(q,h,e,r,l);l=true}if(e.buffer){q=m.createBuffered(q,h,e,r,l);l=true}if(m.observable.isElement){k=e.type;if(k){h.type=k}}}h.fireFn=q;h.wrapped=l;return h},findListener:function(j,h){var g=this.listeners,e=g.length,k;while(e--){k=g[e];if(k){if(k.fn===j&&k.scope==h){return e}}}return -1},isListening:function(g,e){return this.findListener(g,e)!==-1},removeListener:function(r,t,p){var q=this,o=false,e=q.observable,n=q.name,h,v,u,l,j,s,g,m;p=p||q.findListener(r,t);if(p!=-1){h=q.listeners[p];u=h.o;v=q._highestNegativePriorityIndex;if(q.firing){q.listeners=q.listeners.slice(0)}if(h.task){h.task.cancel();delete h.task}l=h.tasks&&h.tasks.length;if(l){while(l--){h.tasks[l].cancel()}delete h.tasks}q.listeners.splice(p,1);j=h.manager;if(j){s=j.managedListeners;if(s){for(m=s.length;m--;){g=s[m];if(g.item===q.observable&&g.ename===n&&g.fn===r&&g.scope===t){s.splice(m,1)}}}}if(v){if(p<v){q._highestNegativePriorityIndex--}else{if(p===v&&p===q.listeners.length){delete q._highestNegativePriorityIndex}}}if(e.isElement){e._getPublisher(n).unsubscribe(e,n,u.delegated!==false,u.capture)}o=true}return o},clearListeners:function(){var g=this.listeners,e=g.length,h;while(e--){h=g[e];this.removeListener(h.fn,h.scope)}},suspend:function(){++this.suspended},resume:function(){if(this.suspended){--this.suspended}},isSuspended:function(){return this.suspended>0},fire:function(){var u=this,v=u.listeners,p=v.length,s=u.observable.isElement,x,w,l,m,r,h,o,k,g,t,j,n,q;if(!u.suspended&&p>0){u.firing=true;r=arguments.length?d.call(arguments,0):[];o=r.length;if(s){q=r[0]}for(m=0;m<p;m++){h=v[m];x=h.o;if(s){if(g){q.setCurrentTarget(g)}t=h.type;if(t){j=q;q=r[0]=j.chain({type:t})}Ext.EventObject=q}n=r;if(x){if(s){w=x.delegate;if(w){k=q.getTarget("#"+q.currentTarget.id+" "+w);if(k){r[1]=k;g=q.currentTarget;q.setCurrentTarget(k)}else{continue}}}r[o]=x;if(x.args){n=x.args.concat(r)}}l=u.getFireInfo(h);if(l.fn.apply(l.scope,n)===false){return(u.firing=false)}if(j){q=r[0]=j;j=null}}}u.firing=false;return true},getFireInfo:function(l,k){var m=this.observable,e=l.fireFn,j=l.scope,g=l.namedScope,h;if(!k&&l.wrapped){b.fn=e;return b}h=k?l.fn:e;if(l.lateBound){if(!j||g){j=(l.caller||m).resolveListenerScope(l.defaultScope)}h=j[h]}else{if(g&&g.isController){j=(l.caller||m).resolveListenerScope(l.defaultScope)}else{if(!j||g){j=m}}}b.fn=h;b.scope=j;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}return 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(h,j,k,g,e){return function(){var l=j.ev,m;if(l.removeListener(j.fn,g)&&l.observable){l.observable.hasListeners[l.name]--}if(!e){m=l.getFireInfo(j,true);h=m.fn;g=m.scope}return h.apply(g,arguments)}}}},1,0,0,0,0,0,[Ext.util,"Event"],0));(Ext.cmd.derive("Ext.mixin.Identifiable",Ext.Base,{statics:{uniqueIds:{}},isIdentifiable:true,mixinId:"identifiable",idCleanRegex:/\.|[^\w\-]/g,defaultIdPrefix:"ext-",defaultIdSeparator:"-",getOptimizedId:function(){return this.id},getUniqueId:function(){var 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.mixin.Observable",Ext.Mixin,function(a){var d=Ext.emptyFn,c=[],e=Array.prototype,g=e.slice,b=function(h){if(h instanceof b){return h}this.observable=h;if(arguments[1].isObservable){this.managedListeners=true}this.args=g.call(arguments,1)};b.prototype.destroy=function(){this.destroy=Ext.emptyFn;var h=this.observable;h[this.managedListeners?"mun":"un"].apply(h,this.args)};return{mixinConfig:{id:"observable",after:{destroy:"clearListeners"}},statics:{releaseCapture:function(h){h.fireEventArgs=this.prototype.fireEventArgs},capture:function(l,j,h){var k=function(m,n){return j.apply(h,[m].concat(n))};this.captureArgs(l,k,h)},captureArgs:function(k,j,h){k.fireEventArgs=Ext.Function.createInterceptor(k.fireEventArgs,j,h)},observe:function(h,j){if(h){if(!h.isObservable){Ext.applyIf(h,new this());this.captureArgs(h.prototype,h.fireEventArgs,h)}if(Ext.isObject(j)){h.on(j)}}return h},prepareClass:function(m,s,n){var r=m.listeners=[],p=n||m.prototype,h=p.listeners,l=s?s.listeners:m.superclass.self.listeners,j,t,q;if(l){r.push(l)}if(h){t=h.scope;if(!t){h.scope="self"}else{q=Ext._namedScopes[t];if(q&&q.isController){h.scope="self.controller"}}r.push(h);p.listeners=null}if(!m.HasListeners){var o=function(){},k=m.superclass.HasListeners||(s&&s.HasListeners)||a.HasListeners;m.prototype.HasListeners=m.HasListeners=o;o.prototype=m.hasListeners=new k()}}},isObservable:true,eventsSuspended:0,constructor:function(k){var m=this,j=m.self,h,l,n;m.hasListeners=new m.HasListeners();m.events=m.events||{};h=j.listeners;if(h&&!m._addDeclaredListeners(h)){j.listeners=null}l=(k&&k.listeners)||m.listeners;if(l){if(l instanceof Array){Ext.each(l,m.on,m)}else{m.on(l)}}n=(k&&k.bubbleEvents)||m.bubbleEvents;if(n){m.enableBubble(n)}if(m.$applyConfigs){Ext.apply(m,k)}else{m.initConfig(k)}if(l){m.listeners=null}},onClassExtended:function(h,j){if(!h.HasListeners){a.prepareClass(h,h.prototype.$observableMixedIn?undefined:j)}},$eventOptions:{scope:1,delay:1,buffer:1,onFrame:1,single:1,args:1,destroyable:1,priority:1,order:1},$orderToPriority:{before:100,current:0,after:-100},_addDeclaredListeners:function(h){var j=this;if(h instanceof Array){Ext.each(h,j._addDeclaredListeners,j)}else{j._addedDeclaredListeners=true;j.addListener(h)}return j._addedDeclaredListeners},addManagedListener:function(p,l,n,q,r,k){var m=this,o=m.managedListeners=m.managedListeners||[],j,h;if(typeof l!=="string"){h=arguments.length>4?r:l;r=l;for(l in r){if(r.hasOwnProperty(l)){j=r[l];if(!p.$eventOptions[l]){m.addManagedListener(p,l,j.fn||j,j.scope||r.scope||q,j.fn?j:h,true)}}}if(r&&r.destroyable){return new b(m,p,r)}}else{if(n!==d){p.doAddListener(l,n,q,r,null,m,m);if(!k&&r&&r.destroyable){return new b(m,p,l,n,q)}}}},removeManagedListener:function(p,k,n,q){var m=this,r,j,o,h,l;if(typeof k!=="string"){r=k;for(k in r){if(r.hasOwnProperty(k)){j=r[k];if(!p.$eventOptions[k]){m.removeManagedListener(p,k,j.fn||j,j.scope||r.scope||q)}}}}else{o=m.managedListeners?m.managedListeners.slice():[];k=Ext.canonicalEventName(k);for(l=0,h=o.length;l<h;l++){m.removeManagedListenerItem(false,o[l],p,k,n,q)}}},fireEvent:function(h){return this.fireEventArgs(h,g.call(arguments,1))},resolveListenerScope:function(j){var h=Ext._namedScopes[j];if(h){if(h.isSelf||h.isThis){j=null}}return j||this},fireEventArgs:function(h,k){h=Ext.canonicalEventName(h);var n=this,l=n.events,m=l&&l[h],j=true;if(n.hasListeners[h]){j=n.doFireEvent(h,k||c,m?m.bubble:false)}return j},fireAction:function(j,l,n,m,k,h){k=k?Ext.Object.chain(k):{};k.single=true;k.priority=((h==="after")?-99.5:99.5);this.doAddListener(j,n,m,k);this.fireEventArgs(j,l)},doFireEvent:function(k,m,j){var o=this,h,n,l=true;do{if(o.eventsSuspended){if((h=o.eventQueue)){h.push([k,m])}return l}else{n=o.events&&o.events[k];if(n&&n!==true){if((l=n.fire.apply(n,m))===false){break}}}}while(j&&(o=o.getBubbleParent()));return l},getBubbleParent:function(){var j=this,h=j.getBubbleTarget&&j.getBubbleTarget();if(h&&h.isObservable){return h}return null},addListener:function(m,s,t,u,k,h){var r=this,n=Ext._namedScopes,j,q,o,p,l;if(typeof m!=="string"){u=m;t=u.scope;q=t&&n[t];o=q&&q.isSelf;l=((r.isComponent||r.isWidget)&&u.element)?r.$elementEventOptions:r.$eventOptions;for(m in u){j=u[m];if(!l[m]){p=j.scope;if(p&&o){q=n[p];if(q&&q.isController){p="self.controller"}}r.doAddListener(m,j.fn||j,p||t,j.fn?j:u,k,h)}}if(u&&u.destroyable){return new b(r,u)}}else{r.doAddListener(m,s,t,u,k,h);if(u&&u.destroyable){return new b(r,m,s,t,u)}}return r},removeListener:function(l,n,m,h){var o=this,k,j;if(typeof l!=="string"){j=l;h=h||o.$eventOptions;for(l in j){if(j.hasOwnProperty(l)){k=j[l];if(!o.$eventOptions[l]){o.doRemoveListener(l,k.fn||k,k.scope||j.scope)}}}}else{o.doRemoveListener(l,n,m)}return o},clearListeners:function(){var m=this,k=m.events,h=m.hasListeners,l,j;if(k){for(j in k){if(k.hasOwnProperty(j)){l=k[j];if(l.isEvent){delete h[j];l.clearListeners()}}}}m.clearManagedListeners()},clearManagedListeners:function(){var l=this,j=l.managedListeners?l.managedListeners.slice():[],k=0,h=j.length;for(;k<h;k++){l.removeManagedListenerItem(true,j[k])}l.managedListeners=[]},removeManagedListenerItem:function(j,h,n,k,m,l){if(j||(h.item===n&&h.ename===k&&(!m||h.fn===m)&&(!l||h.scope===l))){h.item.doRemoveListener(h.ename,h.fn,h.scope,h.options);if(!j){Ext.Array.remove(this.managedListeners,h)}}},hasListener:function(h){h=Ext.canonicalEventName(h);return !!this.hasListeners[h]},isSuspended:function(k){var j=this.eventsSuspended>0,h=this.events;if(!j&&k&&h){k=h[k];if(k&&k.isEvent){return k.isSuspended()}}return j},suspendEvents:function(h){++this.eventsSuspended;if(h&&!this.eventQueue){this.eventQueue=[]}},suspendEvent:function(){var n=this,l=n.events,h=arguments.length,k,m,j;for(k=0;k<h;k++){j=arguments[k];j=Ext.canonicalEventName(j);m=l[j];if(!m||!m.isEvent){m=n._initEvent(j)}m.suspend()}},resumeEvent:function(){var k=this.events||0,h=k&&arguments.length,j,l;for(j=0;j<h;j++){l=k[arguments[j]];if(l&&l.resume){l.resume()}}},resumeEvents:function(h){var j=this,m=j.eventQueue,l,k;if(j.eventsSuspended&&!--j.eventsSuspended){delete j.eventQueue;if(!h&&m){l=m.length;for(k=0;k<l;k++){j.fireEventArgs.apply(j,m[k])}}}},relayEvents:function(j,l,o){var n=this,h=l.length,k=0,m,p={};for(;k<h;k++){m=l[k];p[m]=n.createRelayer(o?o+m:m)}n.mon(j,p,null,null,undefined);return new b(n,j,p)},createRelayer:function(h,j){var k=this;return function(){return k.fireEventArgs.call(k,h,j?g.apply(arguments,j):arguments)}},enableBubble:function(p){if(p){var n=this,o=(typeof p=="string")?arguments:p,k=n.events,m=k&&o.length,j,l,h;for(h=0;h<m;++h){j=o[h];j=Ext.canonicalEventName(j);l=k[j];if(!l||!l.isEvent){l=n._initEvent(j)}n.hasListeners._incr_(j);l.bubble=true}}},destroy:function(){this.clearListeners();this.callParent()},privates:{doAddListener:function(l,o,r,s,k,j,m){var n=this,h,q,p;k=k||(s&&s.order);if(k){p=(s&&s.priority);if(!p){s=s?Ext.Object.chain(s):{};s.priority=n.$orderToPriority[k]}}l=Ext.canonicalEventName(l);if(!m&&(r&&r.isObservable&&(r!==n))){m=r}if(m){q=m.managedListeners=m.managedListeners||[];q.push({item:n,ename:l,fn:o,scope:r,options:s})}h=(n.events||(n.events={}))[l];if(!h||!h.isEvent){h=n._initEvent(l)}if(o!==d){if(h.addListener(o,r,s,j,m)){n.hasListeners._incr_(l)}}},doRemoveListener:function(j,l,k){var n=this,h=n.events,m;j=Ext.canonicalEventName(j);m=h&&h[j];if(m&&m.isEvent){if(m.removeListener(l,k)){n.hasListeners._decr_(j)}}},_initEvent:function(h){return(this.events[h]=new Ext.util.Event(this,h))}},deprecated:{"5.0":{methods:{addEvents:null}},"5.1":{methods:{addBeforeListener:function(h,l,k,j){return this.addListener(h,l,k,j,"before")},addAfterListener:function(h,l,k,j){return this.addListener(h,l,k,j,"after")},removeBeforeListener:function(h,l,k,j){return this.removeListener(h,l,k,j,"before")},removeAfterListener:function(h,l,k,j){return this.removeListener(h,l,k,j,"after")},onBefore:"addBeforeListener",onAfter:"addAfterListener",unBefore:"removeBeforeListener",unAfter:"removeAfterListener"}}}}},1,0,0,0,0,[[Ext.mixin.Identifiable.prototype.mixinId||Ext.mixin.Identifiable.$className,Ext.mixin.Identifiable]],[Ext.mixin,"Observable"],function(){var b=this,e=b.prototype,c=function(){},g=function(h){if(!h.HasListeners){var j=h.prototype;j.$observableMixedIn=1;b.prepareClass(h,this);h.onExtended(function(k,l){b.prepareClass(k,null,l)});if(j.onClassMixedIn){Ext.override(h,{onClassMixedIn:function(k){g.call(this,k);this.callParent(arguments)}})}else{j.onClassMixedIn=function(k){g.call(this,k)}}}a.call(this,h)},a=e.onClassMixedIn;c.prototype={_decr_:function(h){if(!--this[h]){delete this[h]}},_incr_:function(h){if(this.hasOwnProperty(h)){++this[h]}else{this[h]=1}}};e.HasListeners=b.HasListeners=c;b.createAlias({on:"addListener",un:"removeListener",mon:"addManagedListener",mun:"removeManagedListener",setListeners:"addListener"});b.observeClass=b.observe;function d(o){var n=(this.methodEvents=this.methodEvents||{})[o],k,j,l,m=this,h;if(!n){this.methodEvents[o]=n={};n.originalFn=this[o];n.methodName=o;n.before=[];n.after=[];h=function(r,q,p){if((j=r.apply(q||m,p))!==undefined){if(typeof j=="object"){if(j.returnValue!==undefined){k=j.returnValue}else{k=j}l=!!j.cancel}else{if(j===false){l=true}else{k=j}}}};this[o]=function(){var r=Array.prototype.slice.call(arguments,0),q,s,p;k=j=undefined;l=false;for(s=0,p=n.before.length;s<p;s++){q=n.before[s];h(q.fn,q.scope,r);if(l){return k}}if((j=n.originalFn.apply(m,r))!==undefined){k=j}for(s=0,p=n.after.length;s<p;s++){q=n.after[s];h(q.fn,q.scope,r);if(l){return k}}return k}}return n}Ext.apply(e,{onClassMixedIn:g,beforeMethod:function(k,j,h){d.call(this,k).before.push({fn:j,scope:h})},afterMethod:function(k,j,h){d.call(this,k).after.push({fn:j,scope:h})},removeMethodListener:function(n,l,k){var m=this.getMethodEvent(n),j,h;for(j=0,h=m.before.length;j<h;j++){if(m.before[j].fn==l&&m.before[j].scope==k){Ext.Array.erase(m.before,j,1);return}}for(j=0,h=m.after.length;j<h;j++){if(m.after[j].fn==l&&m.after[j].scope==k){Ext.Array.erase(m.after,j,1);return}}},toggleEventLogging:function(h){Ext.util.Observable[h?"capture":"releaseCapture"](this,function(j){if(Ext.isDefined(Ext.global.console)){Ext.global.console.log(j,arguments)}})}})}));(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.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:Ext.defer(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:"x-hidden-display",src:Ext.SSL_SECURE_URL,tabIndex:-1});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(p,q,g,d){var l=this,b=Ext.apply({},q.headers||{},l.getDefaultHeaders()||{}),o=l.getDefaultPostHeader(),m=q.jsonData,a=q.xmlData,k="Content-Type",c=Ext.isDefined(q.useDefaultXhrHeader)?q.useDefaultXhrHeader:l.getUseDefaultXhrHeader(),n,h;if(!b.hasOwnProperty(k)&&(g||d)){if(g){if(q.rawData){o="text/plain"}else{if(a&&Ext.isDefined(a)){o="text/xml"}else{if(m&&Ext.isDefined(m)){o="application/json"}}}}b[k]=o}if(c&&!b["X-Requested-With"]){b["X-Requested-With"]=l.getDefaultXhrHeader()}if(b[k]===undefined||b[k]===null){delete b[k]}try{for(n in b){if(b.hasOwnProperty(n)){h=b[n];p.setRequestHeader(n,h)}}}catch(j){l.fireEvent("exception",n,h)}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.AnimationQueue",Ext.Base,{singleton:true,constructor:function(){this.queue=[];this.taskQueue=[];this.runningQueue=[];this.idleQueue=[];this.isRunning=false;this.isIdle=true;this.run=Ext.Function.bind(this.run,this);if(Ext.os.is.iOS){Ext.interval(this.watch,500,this)}},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=Ext.defer(this.whenIdle,100,this)}},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=Ext.defer(this.processIdleQueueItem,1,this)}},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=Ext.defer(this.processTaskQueueItem,15,this)}},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.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 e=this,d=e.all,c=a.getId(),b=e.onAvailableCallbacks;d[c]=a;if(a.reference){e.references[c]=a}++e.count;if(e.count===1){e.initFocusListener()}b=b&&b[c];if(b&&b.length){e.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)},byElement:function(c){var a=document.body,e=Ext.Component.componentIdAttribute,d,g=Ext.getDom(c),b;while(g&&g.nodeType===1&&g!==a){d=g.getAttribute(e)||g.id;if(d){b=this.all[d];if(b){return b}}g=g.parentNode}return null},getActiveComponent:function(){return this.byElement(Ext.dom.Element.getActiveElement())},initFocusListener:function(){Ext.on("focus",this.onGlobalFocus,this)},onGlobalFocus:function(g){var j=this,d=g.toElement,h=g.fromElement,c=j.byElement(d),k=j.byElement(h),l=j.getCommonAncestor(k,c),a,b;if(k&&!k.isDestroyed){if(k.focusable&&h===k.getFocusEl().dom){a=new Ext.event.Event(g.event);a.type="blur";a.target=h;a.relatedTarget=d;k.onBlur(a)}for(b=k;b&&b!==l;b=b.getRefOwner()){b.onFocusLeave({event:g.event,type:"focusleave",target:h,relatedTarget:d,fromComponent:k,toComponent:c})}}if(c&&!c.isDestroyed){if(c.focusable&&d===c.getFocusEl().dom){a=new Ext.event.Event(g.event);a.type="focus";a.relatedTarget=h;a.target=d;c.onFocus(a)}for(b=c;b&&b!==l;b=b.getRefOwner()){b.onFocusEnter({event:g.event,type:"focusenter",relatedTarget:h,target:d,fromComponent:k,toComponent:c})}}},getCommonAncestor:function(b,a){if(b===a){return b}while(b&&!(b.isAncestor(a)||b===a)){b=b.getRefOwner()}return b},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(a,e){var d=this,c,b;d.removeAtKey(a);b=d.last;c={prev:b,next:null,key:a,value:e};if(b){b.next=c}else{d.first=c}d.last=c;Ext.util.HashMap.prototype.add.call(this,a,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(D,E,x,w){var H=[],C=0,v=D.length,G,z,F,u,B,A,y;if(E.charAt(0)==="@"){G=true;E=E.substr(1)}if(E.charAt(0)==="?"){G=true;z=true;E=E.substr(1)}for(;C<v;C++){F=D[C];y=F.self.$config.configs[E];if(y){u=F[y.names.get]()}else{if(G&&!F.hasOwnProperty(E)){continue}else{u=F[E]}}if(z){H.push(F)}else{if(x==="~="){if(u){if(!Ext.isArray(u)){u=u.split(" ")}for(B=0,A=u.length;B<A;B++){if(t[x](Ext.coerce(u[B],w),w)){H.push(F);break}}}}else{if(x==="/="){if(u!=null&&w.test(u)){H.push(F)}}else{if(!w?!!F[E]:t[x](Ext.coerce(u,w),w)){H.push(F)}}}}}return H},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.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],l=this.shadow,b=(l&&this.constrainShadow&&!l.disabled)?l.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.setXY([a,d]);b.setSize(c.width,c.height);b.afterSetPosition(a,d);return b},constrainBox:function(d){var c=this,b,a,e;if(c.constrain||c.constrainHeader){a=("x" in d)?d.x:d.left;e=("y" in d)?d.y:d.top;b=c.calculateConstrainedPosition(null,[a,e],false,[d.width,d.height]);if(b){d.x=b[0];d.y=b[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{arguments.callee.$previous.call(this,c)}return b}});(Ext.cmd.derive("Ext.dom.UnderlayPool",Ext.Base,{constructor:function(a){this.elementConfig=a;this.cache=[]},checkOut:function(){var a=this.cache.shift();if(!a){a=Ext.Element.create(this.elementConfig);a.setVisibilityMode(2)}return a},checkIn:function(a){this.cache.push(a)},reset:function(){var a=this.cache,b=a.length;while(b--){a[b].destroy()}this.cache=[]}},1,0,0,0,0,0,[Ext.dom,"UnderlayPool"],0));(Ext.cmd.derive("Ext.dom.Underlay",Ext.Base,{constructor:function(a){Ext.apply(this,a)},beforeShow:Ext.emptyFn,getInsertionTarget:function(){return this.target},getPool:function(){return this.pool||(this.self.prototype.pool=new Ext.dom.UnderlayPool(this.elementConfig))},hide:function(){var b=this,a=b.el;if(a){a.hide();b.getPool().checkIn(a);b.el=null;b.hidden=true}},realign:function(j,h,a,k){var e=this,b=e.el,d=e.target,c=e.offsets,g=Math.max;if(b){if(j==null){j=d.getX()}if(h==null){h=d.getY()}if(a==null){a=d.getWidth()}if(k==null){k=d.getHeight()}if(c){j=g(j+c.x,0);h=g(h+c.y,0);a=g(a+c.w,0);k=g(k+c.h,0)}b.setXY([j,h]);b.setSize(a,k)}},setZIndex:function(a){this.zIndex=a;if(this.el){this.el.setStyle("z-index",a)}},show:function(){var b=this,d=b.target,g=b.zIndex,a=b.el,c=b.getInsertionTarget().dom,e;if(!a){a=b.el=b.getPool().checkOut()}b.beforeShow();if(g==null){g=(parseInt(d.getStyle("z-index"),10))}if(g){a.setStyle("z-index",g)}a.setStyle("position",b.fixed?"fixed":"");e=a.dom;if(e.nextSibling!==c){d.dom.parentNode.insertBefore(e,c)}a.show();b.realign();b.hidden=false}},1,0,0,0,0,0,[Ext.dom,"Underlay"],0));(Ext.cmd.derive("Ext.dom.Shadow",Ext.dom.Underlay,{alternateClassName:"Ext.Shadow",mode:"drop",offset:4,cls:"x-"+(!Ext.supports.CSS3BoxShadow?"ie":"css")+"-shadow",constructor:function(b){var d=this,e,c,g,a;Ext.dom.Underlay.prototype.constructor.call(this,b);d.elementConfig={cls:d.cls,role:"presentation"};g=d.offset;a=Math.floor(g/2);d.opacity=50;switch(d.mode.toLowerCase()){case"drop":e={x:0,y:0,w:g,h:g};if(Ext.supports.CSS3BoxShadow){c={x:g,y:g,h:-g,w:-g}}else{c={x:-a,y:-a,h:-a,w:-a}}break;case"sides":e={x:-g,y:0,w:g*2,h:g};if(Ext.supports.CSS3BoxShadow){c={x:0,y:g,h:-g,w:0}}else{c={x:1+a-2*g,y:-(1+a),h:-1,w:a-1}}break;case"frame":e={x:-g,y:-g,w:g*2,h:g*2};if(Ext.supports.CSS3BoxShadow){c={x:0,y:0,h:0,w:0}}else{c={x:1+a-2*g,y:1+a-2*g,h:g-a-1,w:g-a-1}}break;case"bottom":e={x:-g,y:0,w:g*2,h:g};if(Ext.supports.CSS3BoxShadow){c={x:0,y:g,h:-g,w:0}}else{c={x:0,y:g,h:0,w:0}}break}d.offsets=c;d.outerOffsets=e},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},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}()),beforeShow:function(){var b=this,a=b.el.dom.style,c=b.shim;if(Ext.supports.CSS3BoxShadow){a[b.boxShadowProperty]="0 0 "+(b.offset+2)+"px #888"}else{a.filter="progid:DXImageTransform.Microsoft.alpha(opacity="+b.opacity+") progid:DXImageTransform.Microsoft.Blur(pixelradius="+(b.offset)+")"}if(c){c.realign()}},setOpacity:function(a){var b=this.el;if(b){if(Ext.isIE&&!Ext.supports.CSS3BoxShadow){a=Math.floor(a*100/2)/100}this.opacity=a;b.setOpacity(a)}}},1,0,0,0,0,0,[Ext.dom,"Shadow",Ext,"Shadow"],0));(Ext.cmd.derive("Ext.dom.Shim",Ext.dom.Underlay,{cls:"x-shim",constructor:function(a){Ext.dom.Underlay.prototype.constructor.call(this,a);this.elementConfig={tag:"iframe",cls:this.cls,role:"presentation",frameBorder:"0",src:Ext.SSL_SECURE_URL,tabindex:"-1"}},getInsertionTarget:function(){var a=this.shadow;return(a&&a.el)||this.target}},1,0,0,0,0,0,[Ext.dom,"Shim"],0));(Ext.cmd.derive("Ext.dom.ElementEvent",Ext.util.Event,{addListener:function(h,l,m,c,e){var g=this,j=false,a=g.name,b,d,k;m=m||{};if(m.delegated===false||Ext.event.publisher.Dom.instance.directEvents[a]){if(m.capture){k=g.directCaptures||(g.directCaptures=new Ext.util.Event(g.observable,a));j=k.addListener(h,l,m,c,e)}else{d=g.directs||(g.directs=new Ext.util.Event(g.observable,a));j=d.addListener(h,l,m,c,e)}}else{if(m.capture){b=g.captures||(g.captures=new Ext.util.Event(g.observable,a));j=b.addListener(h,l,m,c,e)}else{j=Ext.util.Event.prototype.addListener.call(this,h,l,m,c,e)}}return j},removeListener:function(e,d){var g=this,a=g.captures,c=g.directs,h=g.directCaptures,j=false,b=g.findListener(e,d);if(b!==-1){j=Ext.util.Event.prototype.removeListener.call(this,e,d,b)}else{if(c){b=c.findListener(e,d)}if(b!==-1){j=c.removeListener(e,d,b)}else{if(a){b=a.findListener(e,d)}if(b!==-1){j=a.removeListener(e,d,b)}else{if(h){b=h.findListener(e,d);if(b!==-1){j=h.removeListener(e,d,b)}}}}}return j},clearListeners:function(){var c=this,d=c.directCaptures,b=c.directs,a=c.captures;if(d){d.clearListeners()}if(b){b.clearListeners()}if(a){a.clearListeners()}Ext.util.Event.prototype.clearListeners.call(this)},suspend:function(){var c=this,d=c.directCaptures,b=c.directs,a=c.captures;if(d){d.suspend()}if(b){b.suspend()}if(a){a.suspend()}Ext.util.Event.prototype.suspend.call(this)},resume:function(){var c=this,d=c.directCaptures,b=c.directs,a=c.captures;if(d){d.resume()}if(b){b.resume()}if(a){a.resume()}Ext.util.Event.prototype.resume.call(this)}},0,0,0,0,0,0,[Ext.dom,"ElementEvent"],0));(Ext.cmd.derive("Ext.event.publisher.Publisher",Ext.Base,{handledEvents:[],statics:{publishers:{},publishersByEvent:{}},constructor:function(){var b=this,a=b.type;b.handles={};b.registerEvents();Ext.event.publisher.Publisher.publishers[a]=b},registerEvents:function(e){var h=this,d=Ext.event.publisher.Publisher.publishersByEvent,b=e||h.handledEvents,g=b.length,a,c;for(c=0;c<g;c++){a=b[c];h.handles[a]=1;d[a]=h}},fire:function(c,a,b){var d;if(c.hasListeners[a]){d=c.events[a];if(d){d.fire.apply(d,b)}}},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.call(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(!a||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(!b||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(!b||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},clickEvents:{click:1,dblclick:1},touchEvents:{touchstart:1,touchmove:1,touchend:1,touchcancel:1},focusEvents:{focus:1,blur:1,focusin:1,focusout:1,focusenter:1,focusleave:1},pointerTypes:{2:"touch",3:"pen",4:"mouse",touch:"touch",pen:"pen",mouse:"mouse"}},constructor:function(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.forwardTab!==undefined&&k.focusEvents[h]){g.forwardTab=k.forwardTab}if(k.mouseEvents[h]||k.clickEvents[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(){var c=this,e=c.xy;if(!e){e=c.xy=[c.pageX,c.pageY];var b=e[0],h,d,g,a;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},getY:function(){return this.getXY()[1]},hasModifier:function(){var a=this;return !!(a.ctrlKey||a.altKey||a.shiftKey||a.metaKey)},isNavKeyPress:function(c){var b=this,a=b.keyCode;return(a>=33&&a<=40)||(!c&&(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(c,d,a){var b;if(c){b=d?this.getRelatedTarget():this.getTarget()}return b?Ext.fly(c).contains(b)||!!(a&&b===Ext.getDom(c)):false},deprecated:{"4.0":{methods:{getPageX:"getX",getPageY:"getY"}}}},1,0,0,0,0,0,[Ext.event,"Event",Ext,"EventObjectImpl"],function(a){var b=a.prototype,c={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 d;if(Ext.isGecko){d=3}else{if(Ext.isMac){if(Ext.isSafari&&Ext.webKitVersion>=532){d=120}else{d=12}d*=3}else{d=120}}return d}())};Ext.apply(a,c);Ext.apply(b,c);b.getTrueXY=b.getXY}));Ext.define("Ext.overrides.event.Event",{override:"Ext.event.Event",mousedownEvents:{mousedown:1,pointerdown:1,touchstart:1},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 c=this,b=c.browserEvent,a,d;if(typeof b.type!=="unknown"){if(b.preventDefault){b.preventDefault()}else{if(b.type==="mousedown"){d=b.target;a=d.getAttribute("unselectable");if(a!=="on"){d.setAttribute("unselectable","on");Ext.defer(function(){d.setAttribute("unselectable",a)},1)}}b.returnValue=false;if(b.ctrlKey||b.keyCode>111&&b.keyCode<124){b.keyCode=-1}}}return c},stopPropagation:function(){var b=this,a=b.browserEvent;if(typeof a.type!=="unknown"){if(b.mousedownEvents[b.type]){Ext.GlobalEvents.fireMouseDown(b)}arguments.callee.$previous.call(this)}return b},deprecated:{"5.0":{methods:{clone:function(){return new this.self(this.browserEvent,this)}}}}},function(){var a=this,d,c=function(g){if(g.keyCode===9){a.forwardTab=!g.shiftKey}},b=function(g){if(g.keyCode===9){delete a.forwardTab}};if(Ext.isIE9m){d={0:0,1:0,4:1,2:2};a.override({statics:{enableIEAsync:function(h){var e,g={};for(e in h){g[e]=h[e]}return g}},constructor:function(j,k,g,e){var h=this;h.callParent([j,k,g,e]);h.button=d[j.button];if(j.type==="contextmenu"){h.button=2}h.toElement=j.toElement;h.fromElement=j.fromElement},mouseLeaveRe:/(mouseout|mouseleave)/,mouseEnterRe:/(mouseover|mouseenter)/,enableIEAsync:function(e){this.browserEvent=this.self.enableIEAsync(e)},getRelatedTarget:function(g,l,e){var j=this,h,k;if(!j.relatedTarget){h=j.type;if(j.mouseLeaveRe.test(h)){k=j.toElement}else{if(j.mouseEnterRe.test(h)){k=j.fromElement}}if(k){j.relatedTarget=j.self.resolveTextNode(k)}}return j.callParent([g,l,e])}});document.attachEvent("onkeydown",c);document.attachEvent("onkeyup",b);window.attachEvent("onunload",function(){document.detachEvent("onkeydown",c);document.detachEvent("onkeyup",b)})}else{if(document.addEventListener){document.addEventListener("keydown",c,true);document.addEventListener("keyup",b,true)}}});(Ext.cmd.derive("Ext.event.publisher.Dom",Ext.event.publisher.Publisher,{type:"dom",handledDomEvents:[],reEnterCount:0,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,hashchange:1},blockedPointerEvents:{pointerover:1,pointerout:1,pointerenter:1,pointerleave:1,MSPointerOver:1,MSPointerOut:1,MSPointerEnter:1,MSPointerLeave:1},blockedCompatibilityMouseEvents:{mouseenter:1,mouseleave:1},constructor:function(){var a=this;a.bubbleSubscribers={};a.captureSubscribers={};a.directSubscribers={};a.directCaptureSubscribers={};a.delegatedListeners={};a.initHandlers();Ext.onReady(a.onReady,a);Ext.event.publisher.Publisher.prototype.constructor.call(this)},registerEvents:function(){var g=this,d=Ext.event.publisher.Publisher.publishersByEvent,a=g.handledDomEvents,e=a.length,c=0,b;for(;c<e;c++){b=a[c];g.handles[b]=1;d[b]=g}Ext.event.publisher.Publisher.prototype.registerEvents.call(this)},onReady:function(){var d=this,a=d.handledDomEvents,c,b;if(a){for(b=0,c=a.length;b<c;b++){d.addDelegatedListener(a[b])}}Ext.getWin().on("unload",d.destroy,d)},initHandlers:function(){var a=this;a.onDelegatedEvent=Ext.bind(a.onDelegatedEvent,a);a.onDirectEvent=Ext.bind(a.onDirectEvent,a);a.onDirectCaptureEvent=Ext.bind(a.onDirectCaptureEvent,a)},addDelegatedListener:function(a){this.delegatedListeners[a]=1;this.target.addEventListener(a,this.onDelegatedEvent,!!this.captureEvents[a])},removeDelegatedListener:function(a){delete this.delegatedListeners[a];this.target.removeEventListener(a,this.onDelegatedEvent,!!this.captureEvents[a])},addDirectListener:function(b,c,a){c.dom.addEventListener(b,a?this.onDirectCaptureEvent:this.onDirectEvent,a)},removeDirectListener:function(b,c,a){c.dom.removeEventListener(b,a?this.onDirectCaptureEvent:this.onDirectEvent,a)},subscribe:function(c,b,g,a){var d=this,e,h;if(g&&!d.directEvents[b]){e=a?d.captureSubscribers:d.bubbleSubscribers;if(!d.handles[b]&&!d.delegatedListeners[b]){d.addDelegatedListener(b)}if(e[b]){++e[b]}else{e[b]=1}}else{e=a?d.directCaptureSubscribers:d.directSubscribers;h=c.id;e=e[b]||(e[b]={});if(e[h]){++e[h]}else{e[h]=1;d.addDirectListener(b,c,a)}}},unsubscribe:function(e,g,b,k){var j=this,h,d,a,c;if(b&&!j.directEvents[g]){h=j.captureSubscribers;d=j.bubbleSubscribers;a=k?h:d;if(a[g]){--a[g]}if(!j.handles[g]&&!d[g]&&!h[g]){this.removeDelegatedListener(g)}}else{a=k?j.directCaptureSubscribers:j.directSubscribers;c=e.id;a=a[g];if(a[c]){--a[c]}if(!a[c]){delete a[c];j.removeDirectListener(g,e,k)}}},getPropagatingTargets:function(d){var c=d,b=[],a;while(c){b.push(c);a=c.parentNode;if(!a){a=c.defaultView}c=a}return b},publish:function(b,k,j){var h=this,a,d,c,g;if(Ext.isArray(k)){a=k}else{if(h.captureEvents[b]){d=Ext.cache[k.id];a=d?[d]:[]}else{a=h.getPropagatingTargets(k)}}g=a.length;if(h.captureSubscribers[b]){for(c=g;c--;){d=Ext.cache[a[c].id];if(d){h.fire(d,b,j,false,true);if(j.isStopped){break}}}}if(!j.isStopped&&h.bubbleSubscribers[b]){for(c=0;c<g;c++){d=Ext.cache[a[c].id];if(d){h.fire(d,b,j,false,false);if(j.isStopped){break}}}}},fire:function(c,b,g,h,a){var d;if(c.hasListeners[b]){d=c.events[b];if(d){if(a&&h){d=d.directCaptures}else{if(a){d=d.captures}else{if(h){d=d.directs}}}if(d){g.setCurrentTarget(c.dom);d.fire(g,g.target)}}}},onDelegatedEvent:function(a){if(Ext.elevateFunction){Ext.elevateFunction(this.doDelegatedEvent,this,[a])}else{this.doDelegatedEvent(a)}},doDelegatedEvent:function(d,c){var b=this,a=d.timeStamp;d=new Ext.event.Event(d);if(b.isEventBlocked(d)){return false}b.beforeEvent(d);Ext.frameStartTime=a;b.reEnterCount++;b.publish(d.type,d.target,d);b.reEnterCount--;if(c!==false){b.afterEvent(d)}return d},onDirectEvent:function(a){if(Ext.elevateFunction){Ext.elevateFunction(this.doDirectEvent,this,[a,false])}else{this.doDirectEvent(a,false)}},onDirectCaptureEvent:function(a){if(Ext.elevateFunction){Ext.elevateFunction(this.doDirectEvent,this,[a,true])}else{this.doDirectEvent(a,true)}},doDirectEvent:function(g,b){var c=this,d=g.currentTarget,a=g.timeStamp,d;g=new Ext.event.Event(g);if(c.isEventBlocked(g)){return}c.beforeEvent(g);Ext.frameStartTime=a;c.reEnterCount++;c.fire(Ext.cache[d.id],g.type,g,true,b);c.reEnterCount--;c.afterEvent(g)},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(d.self.pointerEvents[c]&&d.pointerType!=="mouse"){b.lastScreenPointerEventTime=Ext.now()}if(c==="touchend"){b.lastTouchEndTime=Ext.now()}if(!this.reEnterCount&&a.hasListeners.idle&&!a.idleEventMask[c]){a.fireEvent("idle")}},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)},destroy:function(){var a;for(a in this.delegatedListeners){this.removeDelegatedListener(a)}},reset:function(){var a=Ext.event.publisher.Dom;a.lastScreenPointerEventTime=a.lastTouchEndTime=a.lastTouchStartX=a.lastTouchStartY=undefined}},1,0,0,0,0,0,[Ext.event.publisher,"Dom"],function(b){var d=document,c=d.defaultView,a=b.prototype;if((Ext.os.is.iOS&&Ext.os.version.getMajor()<5)||Ext.browser.is.AndroidStock||!(c&&c.addEventListener)){a.target=d}else{a.target=c}b.instance=new b()}));Ext.define("Ext.overrides.event.publisher.Dom",{override:"Ext.event.publisher.Dom"},function(){var d=Ext.event.publisher.Dom,b=d.prototype,c=document.body,b,a;if(Ext.isIE9m){b=d.prototype;b.target=document;b.directBoundListeners={};a=function(j,h,g){j.target=j.srcElement||window;j.currentTarget=this;if(g){h.onDirectCaptureEvent(j)}else{h.onDirectEvent(j)}};onDirectCaptureEvent=function(h,g){h.target=h.srcElement||window;h.currentTarget=this;g.onDirectCaptureEvent(h)};d.override({addDelegatedListener:function(e){this.delegatedListeners[e]=1;this.target.attachEvent("on"+e,this.onDelegatedEvent)},removeDelegatedListener:function(e){delete this.delegatedListeners[e];this.target.detachEvent("on"+e,this.onDelegatedEvent)},addDirectListener:function(j,k,h){var m=this,n=k.dom,l=Ext.Function.bind(a,n,[m,h],true),e=m.directBoundListeners,g=e[j]||(e[j]={});g[n.id]=l;if(n.attachEvent){n.attachEvent("on"+j,l)}else{m.callParent(arguments)}},removeDirectListener:function(e,g){var h=g.dom;if(h.detachEvent){h.detachEvent("on"+e,this.directBoundListeners[e][h.id])}else{this.callParent(arguments)}},doDelegatedEvent:function(h,g){h.target=h.srcElement||window;if(h.type==="focusin"){h.relatedTarget=h.fromElement===c?null:h.fromElement}else{if(h.type==="focusout"){h.relatedTarget=h.toElement===c?null:h.toElement}}return this.callParent([h,g])}});Ext.apply(b.directEvents,b.captureEvents);b.captureEvents={}}});(Ext.cmd.derive("Ext.event.publisher.Gesture",Ext.event.publisher.Dom,{type:"gesture",config:{async:true},isCancelEvent:{touchcancel:1,pointercancel:1,MSPointerCancel:1},handledEvents:[],handledDomEvents:[],constructor:function(b){var h=this,c=h.handledDomEvents,n=Ext.supports,l=n.TouchEvents,m=Ext.Function,d=h.onTouchStart,a=h.onTouchMove,k=h.onTouchEnd,g=m.createAnimationFrame(h.onTouchStart,h,null,1),e=m.createAnimationFrame(h.onTouchMove,h),j=m.createAnimationFrame(h.onTouchEnd,h,null,1);h._handlers={touchstart:d,touchmove:a,touchend:k,touchcancel:k,pointerdown:d,pointermove:a,pointerup:k,pointercancel:k,MSPointerDown:d,MSPointerMove:a,MSPointerUp:k,MSPointerCancel:k,mousedown:d,mousemove:a,mouseup:k};h._asyncHandlers={touchstart:g,touchmove:e,touchend:j,touchcancel:j,pointerdown:g,pointermove:e,pointerup:j,pointercancel:j,MSPointerDown:g,MSPointerMove:e,MSPointerUp:j,MSPointerCancel:j,mousedown:g,mousemove:e,mouseup:j};h.activeTouchesMap={};h.activeTouches=[];h.changedTouches=[];h.recognizers=[];if(l){h.onTargetTouchMove=h.onTargetTouchMove.bind(h);h.onTargetTouchEnd=h.onTargetTouchEnd.bind(h)}if(n.PointerEvents){c.push("pointerdown","pointermove","pointerup","pointercancel")}else{if(n.MSPointerEvents){c.push("MSPointerDown","MSPointerMove","MSPointerUp","MSPointerCancel")}else{if(l){c.push("touchstart","touchmove","touchend","touchcancel")}}}if(!c.length||(l&&Ext.isWebKit&&Ext.os.is.Desktop)){c.push("mousedown","mousemove","mouseup")}h.initConfig(b);return Ext.event.publisher.Dom.prototype.constructor.call(this)},onReady:function(){Ext.event.publisher.Dom.prototype.onReady.call(this);Ext.Array.sort(this.recognizers,function(g,e){var d=g.priority,c=e.priority;return(d>c)?1:(d<c)?-1:0})},registerRecognizer:function(a){var e=this,b=a.handledEvents,d=b.length,c;a.setOnRecognized(e.onRecognized);a.setCallbackScope(e);for(c=0;c<d;c++){e.handledEvents.push(b[c])}e.registerEvents(b);e.recognizers.push(a)},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,h){var b=this.recognizers,g=b.length,d,a;if(c==="onStart"){for(d=0;d<g;d++){b[d].isActive=true}}for(d=0;d<g;d++){a=b[d];if(a.isActive&&a[c].call(a,h)===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(!d){h=Ext.event.Event.resolveTextNode(n.target);d=l[j]={identifier:j,target:h,targets:o.getPropagatingTargets(h)};a.push(d)}if(b){delete l[j];Ext.Array.remove(a,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},doDelegatedEvent:function(b){var a=this;b=Ext.event.publisher.Dom.prototype.doDelegatedEvent.call(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.elevateFunction){Ext.elevateFunction(this.doTargetTouchMove,this,[a])}else{this.doTargetTouchMove(a)}},doTargetTouchMove:function(a){if(!Ext.getBody().contains(a.target)){this.onTouchMove(new Ext.event.Event(a))}},onTargetTouchEnd:function(a){if(Ext.elevateFunction){Ext.elevateFunction(this.doTargetTouchEnd,this,[a])}else{this.doTargetTouchEnd(a)}},doTargetTouchEnd: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))}},updateAsync:function(a){this.handlers=a?this._asyncHandlers:this._handlers},reset:function(){var e=this,b=e.recognizers,d=b.length,c,a;e.activeTouchesMap={};e.activeTouches=[];e.changedTouches=[];for(c=0;c<d;c++){a=b[c];a.reset();a.isActive=false}Ext.event.publisher.Dom.prototype.reset.call(this)}},1,0,0,0,0,0,[Ext.event.publisher,"Gesture"],function(a){a.instance=new a()}));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])},doDelegatedEvent:function(a){this.callParent([Ext.event.Event.enableIEAsync(a)])}})}});(Ext.cmd.derive("Ext.event.publisher.Focus",Ext.event.publisher.Dom,{type:"focus",handledEvents:["focusenter","focusleave"],handledDomEvents:["focusin","focusout"],doDelegatedEvent:function(d,c){var b=this,a;d=Ext.event.publisher.Dom.prototype.doDelegatedEvent.call(this,d,false);if(d){if(d.type==="focusout"){if(d.relatedTarget==null){b.processFocusIn(d,d.target,document.body,c)}}else{a=d.relatedTarget;b.processFocusIn(d,(a==null||!a.tagName)?document.body:a,d.target,c)}}},processFocusIn:function(j,k,g,m){var l=this,n=Ext.Element.getCommonAncestor(g,k,true),d,h=[],a,c,b;for(d=k;d&&d!==n;d=d.parentNode){h.push(d)}if(h.length){a=l.createSyntheticEvent("focusleave",j,k,g);l.publish("focusleave",h,a);h.length=0;if(a.isStopped){return}}for(d=g;d!==n;d=d.parentNode){h.push(d)}a=l.createSyntheticEvent("focusenter",j,g,k);l.publish("focusenter",h,a);if(a.isStopped){return}if(m){l.afterEvent(j)}Ext.GlobalEvents.fireEvent("focus",{event:a,toElement:g,fromElement:k})},createSyntheticEvent:function(b,e,d,a){var c=new Ext.event.Event(e);c.type=b;c.relatedTarget=a;c.target=d;return c}},0,0,0,0,0,0,[Ext.event.publisher,"Focus"],function(b){var a;if(!Ext.supports.FocusinFocusoutEvents){this.override({handledDomEvents:["focus","blur"],doDelegatedEvent:function(h,g){var d=this;h=d.callSuper([h,false]);if(h){clearTimeout(a);a=0;if(h.type==="blur"){var c=h.target===window?document.body:h.target;a=setTimeout(function(){a=0;d.processFocusIn(h,c,document.body,g);b.previousActiveElement=null},0);if(h.target===window||h.target===document){b.previousActiveElement=null}else{b.previousActiveElement=h.target}}else{d.processFocusIn(h,b.previousActiveElement||document.body,h.target===window?document.body:h.target,g)}}}})}b.instance=new b()}));(Ext.cmd.derive("Ext.mixin.Templatable",Ext.Mixin,{mixinConfig:{id:"templatable"},referenceAttributeName:"reference",referenceSelector:"[reference]",getElementConfig:function(){return{reference:"element"}},getElementTemplate:function(){var 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.TaskQueue",Ext.Base,{singleton:true,pending:false,mode:true,constructor:function(){this.readQueue=[];this.writeQueue=[];this.run=Ext.Function.bind(this.run,this);if(Ext.os.is.iOS){Ext.interval(this.watch,500,this)}},requestRead:function(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){Ext.defer(this.run,1,this)}else{Ext.Function.requestAnimationFrame(this.run)}}},watch:function(){if(this.pending&&Date.now()-this.pendingTime>=500){this.run()}},run:function(){this.pending=false;var 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.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.callParent()}},1,0,0,0,0,[[Ext.mixin.Templatable.prototype.mixinId||Ext.mixin.Templatable.$className,Ext.mixin.Templatable]],[Ext.util.sizemonitor,"Abstract"],0));(Ext.cmd.derive("Ext.util.sizemonitor.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,{type:"size",handledEvents:["resize"],constructor:function(){this.monitors={};this.subscribers={};Ext.event.publisher.Publisher.prototype.constructor.apply(this,arguments)},subscribe:function(b){var d=b.id,c=this.subscribers,a=this.monitors;if(c[d]){++c[d]}else{c[d]=1;a[d]=new Ext.util.SizeMonitor({element:b,callback:this.onElementResize,scope:this,args:[b]})}b.on("painted","forceRefresh",a[d]);return true},unsubscribe:function(c){var e=c.id,d=this.subscribers,b=this.monitors,a;if(d[e]&&!--d[e]){delete d[e];a=b[e];c.un("painted","forceRefresh",a);a.destroy();delete b[e]}},onElementResize:function(a,b){Ext.TaskQueue.requestRead("fire",this,[a,"resize",[a,b]])}},1,0,0,0,0,0,[Ext.event.publisher,"ElementSize"],function(a){a.instance=new a()}));(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.callParent()}},1,0,0,0,0,0,[Ext.util.paintmonitor,"Abstract"],0));(Ext.cmd.derive("Ext.util.paintmonitor.CssAnimation",Ext.util.paintmonitor.Abstract,{eventName:Ext.browser.is.WebKit?"webkitAnimationEnd":"animationend",monitorClass:"cssanimation",onElementPainted:function(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,{type:"paint",handledEvents:["painted"],constructor:function(){this.monitors={};this.subscribers={};Ext.event.publisher.Publisher.prototype.constructor.apply(this,arguments)},subscribe:function(a){var c=a.id,b=this.subscribers;if(b[c]){++b[c]}else{b[c]=1;this.monitors[c]=new Ext.util.PaintMonitor({element:a,callback:this.onElementPainted,scope:this,args:[a]})}},unsubscribe:function(b){var d=b.id,c=this.subscribers,a=this.monitors;if(c[d]&&!--c[d]){delete c[d];a[d].destroy();delete a[d]}},onElementPainted:function(a){Ext.TaskQueue.requestRead("fire",this,[a,"painted",[a]])}},1,0,0,0,0,0,[Ext.event.publisher,"ElementPaint"],function(a){a.instance=new a()}));(Ext.cmd.derive("Ext.dom.Element",Ext.Base,function(o){var t=window,L=document,X="ext-window",G="ext-document",g="width",J="height",U="min-width",c="min-height",p="max-width",z="max-height",M="top",Y="right",H="bottom",D="left",j="visibility",V="hidden",b="display",N="none",m="z-index",P="position",r="relative",s="static",x="-",v=/\w/g,F=/\s+/,W=/[\s]+/,a=/^(?:transparent|(?:rgba[(](?:\s*\d+\s*[,]){3}\s*0\s*[)]))$/i,E=/table-row|table-.*-group/,u={t:"border-top-width",r:"border-right-width",b:"border-bottom-width",l:"border-left-width"},T={t:"padding-top",r:"padding-right",b:"padding-bottom",l:"padding-left"},l={t:"margin-top",r:"margin-right",b:"margin-bottom",l:"margin-left"},C=[T.l,T.r,T.t,T.b],d=[u.l,u.r,u.t,u.b],S=/\d+$/,h=/\d+(px|em|%|en|ex|pt|in|cm|mm|pc)$/i,K="px",I=/(-[a-z])/gi,Z=/([a-z0-9-]+)\s*:\s*([^;\s]+(?:\s*[^;\s]+)*);?/gi,q=/^\d+(?:\.\d*)?px$/i,w={},O=function(aa,ab){return ab.charAt(1).toUpperCase()},A="x-hidden-visibility",y="x-hidden-display",k="x-hidden-offsets",R="x-no-touch-scroll",n={style:"style",className:"className",cls:"cls",classList:"classList",text:"text",hidden:"hidden",html:"html",children:"children"},Q,B,e;return{alternateClassName:["Ext.Element"],observableType:"element",isElement:true,skipGarbageCollection:true,identifiablePrefix:"ext-element-",styleHooks:{},validIdRe:Ext.validIdRe,blockedEvents:Ext.supports.EmulatedMouseOver?{mouseover:1}:{},longpressEvents:{longpress:1,taphold:1},constructor:function(ab){var aa=this,ac;if(typeof ab==="string"){ab=L.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;Ext.cache[ac]=aa;aa.mixins.observable.constructor.call(aa)},inheritableStatics:{cache:Ext.cache={},VISIBILITY:1,DISPLAY:2,OFFSETS:3,unitRe:h,useDelegatedEvents:true,validNodeTypes:{1:1,9:1},addUnits:function(ab,aa){if(typeof ab==="number"){return ab+(aa||K)}if(ab===""||ab==="auto"||ab==null){return ab||""}if(S.test(ab)){return ab+(aa||K)}if(!h.test(ab)){return ab||""}return ab},create:function(ac,ab){var ai=this,af=n.hidden,ae,aj,al,ak,aa,ad,ah,ag;if(!ac){ac={}}if(ac.isElement){return ab?ac.dom:ac}else{if("nodeType" in ac){return ab?ac:Ext.get(ac)}}if(typeof ac==="string"){return L.createTextNode(ac)}al=ac.tag;if(!al){al="div"}if(ac.namespace){ae=L.createElementNS(ac.namespace,al)}else{ae=L.createElement(al)}aj=ae.style;if(ac[af]){ag=ac.className;ag=(ag==null)?"":ag+" ";ac.className=ag+y;delete ac[af]}for(aa in ac){if(aa!=="tag"){ak=ac[aa];switch(aa){case n.style:if(typeof ak==="string"){ae.setAttribute(aa,ak)}else{for(ad in ak){if(ak.hasOwnProperty(ad)){aj[ad]=ak[ad]}}}break;case n.className:case n.cls:ae.className=ak;break;case n.classList:ae.className=ak.join(" ");break;case n.text:ae.textContent=ak;break;case n.html:ae.innerHTML=ak;break;case n.children:for(ad=0,ah=ak.length;ad<ah;ad++){ae.appendChild(ai.create(ak[ad],true))}break;default:if(ak!=null){ae.setAttribute(aa,ak)}}}}if(ab){return ae}else{return ai.get(ae)}},detach:function(){var aa=this.dom;if(aa&&aa.parentNode&&aa.tagName!=="BODY"){aa.parentNode.removeChild(aa)}return this},fly:function(ab,aa){return Ext.fly(ab,aa)},fromPoint:function(aa,ab){return Ext.get(L.elementFromPoint(aa,ab))},get:function(ac){var ag=this,aa=Ext.cache,ae,ad,ab,aj,ai,af,ah;if(!ac){return null}if(ac.isFly){ac=ac.dom}if(typeof ac==="string"){ab=ac;if(aa.hasOwnProperty(ab)){aj=aa[ab];if(aj.skipGarbageCollection||!Ext.isGarbage(aj.dom)){return aj}else{aj.destroy()}}if(ab===X){return o.get(t)}else{if(ab===G){return o.get(L)}}ad=Ext.getElementById?Ext.getElementById(ab):L.getElementById(ab);if(ad){return new o(ad)}}ae=ac.nodeType;if(ae){ai=(ae===9);ah=ag.validNodeTypes[ae]}else{af=(ac.window==ac)}if(ah||af){ab=ac.id;if(aa.hasOwnProperty(ab)){aj=aa[ab];if(aj.skipGarbageCollection||ac===aj.dom||!Ext.isGarbage(aj.dom)){return aj}else{aj.destroy()}}if(ac===L){ac.id=G}if(ac==t){ac.id=X}ac=new o(ac);if(af||ai){ac.skipGarbageCollection=true}return ac}if(ac.isElement){return ac}if(ac.isComposite){return ac}if(Ext.isIterable(ac)){return ag.select(ac)}return null},getActiveElement:function(){var aa=L.activeElement;if(!aa||!aa.focus){aa=L.body}return aa},getDocumentHeight:function(){return Math.max(!Ext.isStrict?L.body.scrollHeight:L.documentElement.scrollHeight,this.getViewportHeight())},getDocumentWidth:function(){return Math.max(!Ext.isStrict?L.body.scrollWidth:L.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(aa){return w[aa]||(w[aa]=aa.replace(I,O))},parseBox:function(ac){ac=ac||0;var aa=typeof ac,ad,ab;if(aa==="number"){return{top:ac,right:ac,bottom:ac,left:ac}}else{if(aa!=="string"){return ac}}ad=ac.split(" ");ab=ad.length;if(ab===1){ad[1]=ad[2]=ad[3]=ad[0]}else{if(ab===2){ad[2]=ad[0];ad[3]=ad[1]}else{if(ab===3){ad[3]=ad[1]}}}return{top:parseFloat(ad[0])||0,right:parseFloat(ad[1])||0,bottom:parseFloat(ad[2])||0,left:parseFloat(ad[3])||0}},parseStyles:function(ab){var aa={},ac;if(ab){Z.lastIndex=0;while((ac=Z.exec(ab))){aa[ac[1]]=ac[2]||""}}return aa},select:function(aa,ac,ab){return Ext.fly(ab||L).select(aa,ac)},query:function(ab,aa,ac){return Ext.fly(ac||L).query(ab,aa)},unitizeBox:function(ac,aa){var ab=this;ac=ab.parseBox(ac);return ab.addUnits(ac.top,aa)+" "+ab.addUnits(ac.right,aa)+" "+ab.addUnits(ac.bottom,aa)+" "+ab.addUnits(ac.left,aa)},serializeForm:function(ac){var ad=ac.elements||(L.forms[ac]||Ext.getDom(ac)).elements,am=false,al=encodeURIComponent,ag="",af=ad.length,ah,aa,ak,ao,an,ai,ae,aj,ab;for(ai=0;ai<af;ai++){ah=ad[ai];aa=ah.name;ak=ah.type;ao=ah.options;if(!ah.disabled&&aa){if(/select-(one|multiple)/i.test(ak)){aj=ao.length;for(ae=0;ae<aj;ae++){ab=ao[ae];if(ab.selected){an=ab.hasAttribute("value");ag+=Ext.String.format("{0}={1}&",al(aa),al(an?ab.value:ab.text))}}}else{if(!(/file|undefined|reset|button/i.test(ak))){if(!(/radio|checkbox/i.test(ak)&&!ah.checked)&&!(ak=="submit"&&am)){ag+=al(aa)+"="+al(ah.value)+"&";am=/submit/i.test(ak)}}}}}return ag.substr(0,ag.length-1)},getCommonAncestor:function(ac,ab,aa){e=e||new Ext.dom.Fly();e.attach(Ext.getDom(ac));while(!e.isAncestor(ab)){if(e.dom.parentNode){e.attach(e.dom.parentNode)}else{e.attach(document.body);break}}return aa?e.dom:Ext.get(e)}},addCls:function(ai,ag,ak){var aj=this,al,ae,ab,ac,af,ah,aa,ad=aj.getData();if(!ai){return aj}if(!ad.isSynchronized){aj.synchronize()}ae=aj.dom;ab=ad.classMap;ac=ad.classList;ag=ag?ag+x:"";ak=ak?x+ak:"";if(typeof ai==="string"){ai=ai.split(F)}for(af=0,ah=ai.length;af<ah;af++){aa=ag+ai[af]+ak;if(!ab[aa]){ab[aa]=true;ac.push(aa);al=true}}if(al){ae.className=ac.join(" ")}return aj},addStyles:function(ah,ag){var ac=0,af=(ah||"").match(v),ae,aa=af.length,ad,ab=[];if(aa===1){ac=Math.abs(parseFloat(this.getStyle(ag[af[0]]))||0)}else{if(aa){for(ae=0;ae<aa;ae++){ad=af[ae];ab.push(ag[ad])}ab=this.getStyle(ab);for(ae=0;ae<aa;ae++){ad=af[ae];ac+=parseFloat(ab[ag[ad]])||0}}}return ac},addUnits:function(ab,aa){return o.addUnits(ab,aa)},adjustDirect2DDimension:function(ac){var ah=this,ab=ah.dom,af=ah.getStyle("display"),ae=ab.style.display,ai=ab.style.position,ag=ac===g?0:1,aa=ab.currentStyle,ad;if(af==="inline"){ab.style.display="inline-block"}ab.style.position=af.match(E)?"absolute":"static";ad=(parseFloat(aa[ac])||parseFloat(aa.msTransformOrigin.split(" ")[ag])*2)%1;ab.style.position=ai;if(af==="inline"){ab.style.display=ae}return ad},animate:function(aa){aa=new Ext.fx.Animation(aa);aa.setElement(this);this._activeAnimation=aa;aa.on({animationend:this._onAnimationEnd});Ext.Animator.run(aa)},_onAnimationEnd:function(){this._activeAnimation=null},getActiveAnimation:function(){return this._activeAnimation},append:function(){this.appendChild.apply(this,arguments)},appendChild:function(ac,ab){var ad=this,af,aa,ae;if(ac.nodeType||ac.dom||typeof ac==="string"){ac=Ext.getDom(ac);ad.dom.appendChild(ac);return !ab?Ext.get(ac):ac}else{if(ac.length){af=Ext.fly(document.createDocumentFragment());aa=ac.length;for(ae=0;ae<aa;ae++){af.appendChild(ac[ae],ab)}ad.dom.appendChild(af.dom);return ab?af.dom:af}else{return ad.createChild(ac,null,ab)}}},appendTo:function(aa){Ext.getDom(aa).appendChild(this.dom);return this},applyStyles:function(aa){if(aa){if(typeof aa==="function"){aa=aa.call()}if(typeof aa==="string"){aa=o.parseStyles(aa)}if(typeof aa==="object"){this.setStyle(aa)}}return this},blur:function(){var aa=this,ac=aa.dom;if(ac!==L.body){try{ac.blur()}catch(ab){}return aa}else{return aa.focus(undefined,ac)}},cacheScrollValues:function(){var ae=this,af=[],ad=[],ag,ac,ab,aa;B=B||new Ext.dom.Fly();ag=ae.query("*");for(ab=0,aa=ag.length;ab<aa;ab++){ac=ag[ab];if(ac.scrollTop>0||ac.scrollLeft!==0){ad.push(ac);af.push(B.attach(ac).getScroll())}}return function(){var ai,aj,ah;for(aj=0,ah=ad.length;aj<ah;aj++){ai=af[aj];B.attach(ad[aj]);B.setScrollLeft(ai.left);B.setScrollTop(ai.top)}}},center:function(aa){return this.alignTo(aa||L,"c-c")},child:function(aa,ab){var ac=this,ad=Ext.get(ac).id;return ac.selectNode(Ext.makeIdSelector(ad)+" > "+aa,!!ab)},constrainScrollLeft:function(aa){var ab=this.dom;return Math.max(Math.min(aa,ab.scrollWidth-ab.clientWidth),0)},constrainScrollTop:function(aa){var ab=this.dom;return Math.max(Math.min(aa,ab.scrollHeight-ab.clientHeight),0)},createChild:function(ab,aa,ac){ab=ab||{tag:"div"};if(aa){return Ext.DomHelper.insertBefore(aa,ab,ac!==true)}else{return Ext.DomHelper.append(this.dom,ab,ac!==true)}},contains:function(aa){if(!aa){return false}var ab=this,ac=Ext.getDom(aa);return(ac===ab.dom)||ab.isAncestor(ac)},destroy:function(){var aa=this,ab=aa.dom;if(ab&&ab.parentNode){ab.parentNode.removeChild(ab)}aa.collect()},detach:function(){var aa=this.dom;if(aa&&aa.parentNode&&aa.tagName!=="BODY"){aa.parentNode.removeChild(aa)}return this},disableShadow:function(){var aa=this.shadow;if(aa){aa.hide();aa.disabled=true}},disableShim:function(){var aa=this.shim;if(aa){aa.hide();aa.disabled=true}},disableTouchContextMenu:function(){this._contextMenuListenerRemover=this.on({MSHoldVisual:function(aa){aa.preventDefault()},destroyable:true,delegated:false})},disableTouchScroll:function(){this.addCls(R);this.on({touchmove:function(aa){aa.preventDefault()},translate:false})},doReplaceWith:function(aa){var ab=this.dom;ab.parentNode.replaceChild(Ext.getDom(aa),ab)},doScrollIntoView:function(aa,ae,ab,af,al,ai){B=B||new Ext.dom.Fly();var aj=this,ag=aj.dom,am=B.attach(aa)[al](),ak=aa.scrollTop,ah=aj.getScrollIntoViewXY(aa,am,ak),ad=ah.x,ac=ah.y;if(af){if(ab){ab=Ext.apply({listeners:{afteranimate:function(){B.attach(ag).highlight()}}},ab)}else{B.attach(ag).highlight()}}if(ac!==ak){B.attach(aa).scrollTo("top",ac,ab)}if(ae!==false&&(ad!==am)){B.attach(aa)[ai]("left",ad,ab)}return aj},down:function(aa,ab){return this.selectNode(aa,!!ab)},enableShadow:function(ab,aa){var ac=this,ae=ac.shadow||(ac.shadow=new Ext.dom.Shadow(Ext.apply({target:ac},ab))),ad=ac.shim;if(ad){ad.offsets=ae.outerOffsets;ad.shadow=ae;ae.shim=ad}if(aa===true||(aa!==false&&ac.isVisible())){ae.show()}else{ae.hide()}ae.disabled=false},enableShim:function(ab,aa){var ac=this,ae=ac.shim||(ac.shim=new Ext.dom.Shim(Ext.apply({target:ac},ab))),ad=ac.shadow;if(ad){ae.offsets=ad.outerOffsets;ae.shadow=ad;ad.shim=ae}if(aa===true||(aa!==false&&ac.isVisible())){ae.show()}else{ae.hide()}ae.disabled=false},findParent:function(ag,ab,aa){var ad=this,ae=ad.dom,ac=L.documentElement,af=0;if(ab||ab===0){if(typeof ab!=="number"){ac=Ext.getDom(ab);ab=Number.MAX_VALUE}}else{ab=50}while(ae&&ae.nodeType===1&&af<ab&&ae!==ac){if(Ext.fly(ae).is(ag)){return aa?Ext.get(ae):ae}af++;ae=ae.parentNode}return null},findParentNode:function(ad,ab,aa){var ac=Ext.fly(this.dom.parentNode);return ac?ac.findParent(ad,ab,aa):null},first:function(aa,ab){return this.matchNode("nextSibling","firstChild",aa,ab)},focus:function(ad,ac){var aa=this;ac=ac||aa.dom;try{if(Number(ad)){Ext.defer(aa.focus,ad,aa,[null,ac])}else{Ext.GlobalEvents.fireEvent("beforefocus",ac);ac.focus()}}catch(ab){}return aa},collect:function(){var aa=this,ab=aa.dom,ad=aa.shadow,ac=aa.shim;if(!aa.isFly){aa.clearListeners();delete Ext.cache[aa.id];aa.isDestroyed=true}if(ab){ab._extData=aa.dom=null}if(ad){ad.hide();aa.shadow=null}if(ac){ac.hide();aa.shim=null}},getAnchorToXY:function(ad,aa,ac,ab){return ad.getAnchorXY(aa,ac,ab)},getAttribute:function(aa,ab){var ac=this.dom;return ab?(ac.getAttributeNS(ab,aa)||ac.getAttribute(ab+":"+aa)):(ac.getAttribute(aa)||ac[aa]||null)},getAttributes:function(){var ad=this.dom.attributes,ac={},ab,ae,aa;for(ae=0,aa=ad.length;ae<aa;ae++){ab=ad[ae];ac[ab.name]=ab.value}return ac},getBottom:function(aa){return(aa?this.getLocalY():this.getY())+this.getHeight()},getById:function(ac,aa){var ab=L.getElementById(ac)||this.dom.querySelector(Ext.makeIdSelector(ac));return aa?ab:(ab?Ext.get(ab):null)},getBorderPadding:function(){var aa=this.getStyle(C),ab=this.getStyle(d);return{beforeX:(parseFloat(ab[u.l])||0)+(parseFloat(aa[T.l])||0),afterX:(parseFloat(ab[u.r])||0)+(parseFloat(aa[T.r])||0),beforeY:(parseFloat(ab[u.t])||0)+(parseFloat(aa[T.t])||0),afterY:(parseFloat(ab[u.b])||0)+(parseFloat(aa[T.b])||0)}},getBorderWidth:function(aa){return this.addStyles(aa,u)},getData:function(aa){var ac=this.dom,ab;if(ac){ab=ac._extData;if(!ab&&!aa){ac._extData=ab={}}}return ab},getFirstChild:function(){return Ext.get(this.dom.firstElementChild)},getHeight:function(ad,ab){var ac=this,ae=ac.isStyle("display","none"),aa,af;if(ae){return 0}aa=ac.dom.offsetHeight;if(Ext.supports.Direct2DBug){af=ac.adjustDirect2DDimension(J);if(ab){aa+=af}else{if(af>0&&af<0.5){aa++}}}if(ad){aa-=ac.getBorderWidth("tb")+ac.getPadding("tb")}return(aa<0)?0:aa},getHtml:function(){return this.dom?this.dom.innerHTML:""},getLeft:function(aa){return aa?this.getLocalX():this.getX()},getLocalX:function(){var ac=this,ab,aa=ac.getStyle("left");if(!aa||aa==="auto"){aa=0}else{if(q.test(aa)){aa=parseFloat(aa)}else{aa=ac.getX();ab=ac.dom.offsetParent;if(ab){aa-=Ext.fly(ab).getX()}}}return aa},getLocalXY:function(){var ad=this,ac,ab=ad.getStyle(["left","top"]),aa=ab.left,ae=ab.top;if(!aa||aa==="auto"){aa=0}else{if(q.test(aa)){aa=parseFloat(aa)}else{aa=ad.getX();ac=ad.dom.offsetParent;if(ac){aa-=Ext.fly(ac).getX()}}}if(!ae||ae==="auto"){ae=0}else{if(q.test(ae)){ae=parseFloat(ae)}else{ae=ad.getY();ac=ad.dom.offsetParent;if(ac){ae-=Ext.fly(ac).getY()}}}return[aa,ae]},getLocalY:function(){var ab=this,aa,ac=ab.getStyle("top");if(!ac||ac==="auto"){ac=0}else{if(q.test(ac)){ac=parseFloat(ac)}else{ac=ab.getY();aa=ab.dom.offsetParent;if(aa){ac-=Ext.fly(aa).getY()}}}return ac},getMargin:(function(){var ab={t:"top",l:"left",r:"right",b:"bottom"},aa=["margin-top","margin-left","margin-right","margin-bottom"];return function(ad){var af=this,ae,ac,ag;if(!ad){ae=af.getStyle(aa);ag={};if(ae&&typeof ae==="object"){ag={};for(ac in l){ag[ac]=ag[ab[ac]]=parseFloat(ae[l[ac]])||0}}}else{ag=af.addStyles(ad,l)}return ag}})(),getPadding:function(aa){return this.addStyles(aa,T)},getParent:function(){return Ext.get(this.dom.parentNode)},getRight:function(aa){return(aa?this.getLocalX():this.getX())+this.getWidth()},getScroll:function(){var ac=this,af=ac.dom,ab=L.documentElement,ae,ad,aa=document.body;if(af===L||af===aa){ae=ab.scrollLeft||(aa?aa.scrollLeft:0);ad=ab.scrollTop||(aa?aa.scrollTop:0)}else{ae=af.scrollLeft;ad=af.scrollTop}return{left:ae,top:ad}},getScrollIntoViewXY:function(af,am,al){var ao=this.dom,ab=Ext.getDom(af),ac=this.getOffsetsTo(ab),ak=ao.offsetWidth,ah=ao.offsetHeight,aa=ac[0]+am,ag=ac[1]+al,ae=ag+ah,aq=aa+ak,ai=ab.clientHeight,an=ab.clientWidth,ap=am,aj=al,ad=aj+ai,ar=ap+an;if(ah>ai||ag<aj){al=ag}else{if(ae>ad){al=ae-ai}}if(ak>an||aa<ap){am=aa}else{if(aq>ar){am=aq-an}}return{x:am,y:al}},getScrollLeft:function(){var aa=this.dom;if(aa===L||aa===document.body){return this.getScroll().left}else{return aa.scrollLeft}},getScrollTop:function(){var aa=this.dom;if(aa===L||aa===document.body){return this.getScroll().top}else{return aa.scrollTop}},getSize:function(aa){return{width:this.getWidth(aa),height:this.getHeight(aa)}},getStyle:function(am,ah){var ai=this,ad=ai.dom,ap=typeof am!=="string",an=ai.styleHooks,ab=am,aj=ab,ag=1,af,ao,al,ak,ac,aa,ae;if(ap){al={};ab=aj[0];ae=0;if(!(ag=aj.length)){return al}}if(!ad||ad.documentElement){return al||""}af=ad.style;if(ah){aa=af}else{aa=ad.ownerDocument.defaultView.getComputedStyle(ad,null);if(!aa){ah=true;aa=af}}do{ak=an[ab];if(!ak){an[ab]=ak={name:o.normalize(ab)}}if(ak.get){ac=ak.get(ad,ai,ah,aa)}else{ao=ak.name;ac=aa[ao]}if(!ap){return ac}al[ab]=ac;ab=aj[++ae]}while(ae<ag);return al},getStyleValue:function(aa){return this.dom.style.getPropertyValue(aa)},getTop:function(aa){return aa?this.getLocalY():this.getY()},getValue:function(ab){var aa=this.dom.value;return ab?parseInt(aa,10):aa},getViewSize:function(){var aa=this.dom;if(aa===L||aa===L.body){return{width:o.getViewportWidth(),height:o.getViewportHeight()}}else{return{width:aa.clientWidth,height:aa.clientHeight}}},getVisibilityMode:function(){var aa=this,ab=aa.getData(),ac=ab.visibilityMode;if(ac===undefined){ab.visibilityMode=ac=o.DISPLAY}return ac},getWidth:function(aa,af){var ad=this,ag=ad.dom,ae=ad.isStyle("display","none"),ac,ab,ah;if(ae){return 0}if(Ext.supports.BoundingClientRect){ac=ag.getBoundingClientRect();ab=(ad.vertical&&!Ext.supports.RotatedBoundingClientRect)?(ac.bottom-ac.top):(ac.right-ac.left);ab=af?ab:Math.ceil(ab)}else{ab=ag.offsetWidth}if(Ext.supports.Direct2DBug&&!ad.vertical){ah=ad.adjustDirect2DDimension(g);if(af){ab+=ah}else{if(ah>0&&ah<0.5){ab++}}}if(aa){ab-=ad.getBorderWidth("lr")+ad.getPadding("lr")}return(ab<0)?0:ab},getX:function(){return this.getXY()[0]},getXY:function(){var ac=Math.round,af=this.dom,ab=0,ag=0,ae,aa;if(af!==L&&af!==L.body){try{ae=af.getBoundingClientRect()}catch(ad){ae={left:0,top:0}}ab=ac(ae.left);ag=ac(ae.top);aa=Ext.getDoc().getScroll();ab+=aa.left;ag+=aa.top}return[ab,ag]},getY:function(){return this.getXY()[1]},getZIndex:function(){return parseInt(this.getStyle("z-index"),10)},hasCls:function(aa){var ab=this.getData();if(!ab.isSynchronized){this.synchronize()}return ab.classMap.hasOwnProperty(aa)},hide:function(){this.setVisible(false);return this},insertAfter:function(aa){aa=Ext.getDom(aa);aa.parentNode.insertBefore(this.dom,aa.nextSibling);return this},insertBefore:function(aa){aa=Ext.getDom(aa);aa.parentNode.insertBefore(this.dom,aa);return this},insertFirst:function(ab,aa){ab=ab||{};if(ab.nodeType||ab.dom||typeof ab==="string"){ab=Ext.getDom(ab);this.dom.insertBefore(ab,this.dom.firstChild);return !aa?Ext.get(ab):ab}else{return this.createChild(ab,this.dom.firstChild,aa)}},insertHtml:function(ab,ac,aa){var ad=Ext.DomHelper.insertHtml(ab,this.dom,ac);return aa?Ext.get(ad):ad},insertSibling:function(ab,ae,ah){var ag=this,ai=Ext.DomHelper,aj=(ae||"before").toLowerCase()==="after",ad,aa,ac,af;if(Ext.isIterable(ab)){ac=ab.length;aa=Ext.fly(document.createDocumentFragment());if(Ext.isArray(ab)){for(af=0;af<ac;af++){ad=aa.appendChild(ab[af],ah)}}else{for(af=0;af<ac;af++){aa.dom.appendChild(ad=ab[0])}if(ah===false){ad=Ext.get(ad)}}ag.dom.parentNode.insertBefore(aa.dom,aj?ag.dom.nextSibling:ag.dom);return ad}ab=ab||{};if(ab.nodeType||ab.dom){ad=ag.dom.parentNode.insertBefore(Ext.getDom(ab),aj?ag.dom.nextSibling:ag.dom);if(!ah){ad=Ext.get(ad)}}else{if(aj&&!ag.dom.nextSibling){ad=ai.append(ag.dom.parentNode,ab,!ah)}else{ad=ai[aj?"insertAfter":"insertBefore"](ag.dom,ab,!ah)}}return ad},is:function(aa){var ac=this.dom,ab;if(!aa){ab=true}else{if(!ac.tagName){ab=false}else{if(Ext.isFunction(aa)){ab=aa(ac)}else{ab=ac[Ext.supports.matchesSelector](aa)}}}return ab},isAncestor:function(ab){var aa=false,ac=this.dom,ad=Ext.getDom(ab);if(ac&&ad){if(ac.contains){return ac.contains(ad)}else{if(ac.compareDocumentPosition){return !!(ac.compareDocumentPosition(ad)&16)}else{while((ad=ad.parentNode)){aa=ad===ac||aa}}}}return aa},isPainted:(function(){return !Ext.browser.is.IE?function(){var aa=this.dom;return Boolean(aa&&aa.offsetParent)}:function(){var aa=this.dom;return Boolean(aa&&(aa.offsetHeight!==0&&aa.offsetWidth!==0))}})(),isStyle:function(aa,ab){return this.getStyle(aa)===ab},isVisible:function(ab){var ac=this.dom,aa;if(!ac){return false}if(!Q){Q=new Ext.dom.Fly()}for(aa=ac.ownerDocument.documentElement;ac!==aa;ac=ac.parentNode){if(!ac||ac.nodeType===11||(Q.attach(ac)).isStyle(j,V)||Q.isStyle(b,N)){return false}if(!ab){break}}return true},last:function(aa,ab){return this.matchNode("previousSibling","lastChild",aa,ab)},matchNode:function(ab,af,aa,ac){var ad=this.dom,ae;if(!ad){return null}ae=ad[af];while(ae){if(ae.nodeType===1&&(!aa||Ext.fly(ae,"_matchNode").is(aa))){return !ac?Ext.get(ae):ae}ae=ae[ab]}return null},next:function(aa,ab){return this.matchNode("nextSibling","nextSibling",aa,ab)},parent:function(aa,ab){return this.matchNode("parentNode","parentNode",aa,ab)},position:function(ae,ad,aa,ac){var ab=this;if(!ae&&ab.isStyle(P,s)){ab.setStyle(P,r)}else{if(ae){ab.setStyle(P,ae)}}if(ad){ab.setStyle(m,ad)}if(aa||ac){ab.setXY([aa||false,ac||false])}},prev:function(aa,ab){return this.matchNode("previousSibling","previousSibling",aa,ab)},query:function(ac,ak,ai){var ae=this.dom,ag,ah,aj,ab,aa,af,ad;if(!ae){return null}ak=(ak!==false);ac=ac.split(",");if(!ai){ag=[]}for(af=0,ah=ac.length;af<ah;af++){if(typeof ac[af]==="string"){if(ai){ab=ae.querySelector(ac[af]);return ak?ab:Ext.get(ab)}aa=ae.querySelectorAll(ac[af]);for(ad=0,aj=aa.length;ad<aj;ad++){ag.push(ak?aa[ad]:Ext.get(aa[ad]))}}}return ag},radioCls:function(ad){var ae=this.dom.parentNode.childNodes,ab;ad=Ext.isArray(ad)?ad:[ad];for(var ac=0,aa=ae.length;ac<aa;ac++){ab=ae[ac];if(ab&&ab.nodeType===1){Ext.fly(ab).removeCls(ad)}}return this.addCls(ad)},redraw:function(){var ab=this.dom,aa=ab.style;aa.display="none";ab.offsetHeight;aa.display=""},remove:function(){this.destroy()},removeChild:function(aa){this.dom.removeChild(Ext.getDom(aa));return this},removeCls:function(ai,ag,ak){var aj=this,al,ae,ab,ac,af,ah,aa,ad=aj.getData();if(!ai){return aj}if(!ad.isSynchronized){aj.synchronize()}if(!ak){ak=""}ae=aj.dom;ab=ad.classMap;ac=ad.classList;ag=ag?ag+x:"";ak=ak?x+ak:"";if(typeof ai==="string"){ai=ai.split(F)}for(af=0,ah=ai.length;af<ah;af++){aa=ag+ai[af]+ak;if(ab[aa]){delete ab[aa];Ext.Array.remove(ac,aa);al=true}}if(al){ae.className=ac.join(" ")}return aj},repaint:function(){var aa=this;aa.addCls("x-repaint");Ext.defer(function(){if(aa.dom){Ext.fly(aa.dom).removeCls("x-repaint")}},1);return aa},replace:function(ac,ab){ac=Ext.getDom(ac);var aa=ac.parentNode,ae=ac.id,ad=this.dom;if(ab!==false&&ae&&Ext.cache[ae]){aa.insertBefore(ad,ac);Ext.get(ac).destroy()}else{aa.replaceChild(ad,ac)}return this},replaceCls:function(ac,aj,ah,al){var ak=this,af,ab,ad,ag,ai,aa,ae=ak.getData();if(!ac&&!aj){return ak}ac=ac||[];aj=aj||[];if(!ae.isSynchronized){ak.synchronize()}if(!al){al=""}af=ak.dom;ab=ae.classMap;ad=ae.classList;ah=ah?ah+x:"";al=al?x+al:"";if(typeof ac==="string"){ac=ac.split(F)}if(typeof aj==="string"){aj=aj.split(F)}for(ag=0,ai=ac.length;ag<ai;ag++){aa=ah+ac[ag]+al;if(ab[aa]){delete ab[aa];Ext.Array.remove(ad,aa)}}for(ag=0,ai=aj.length;ag<ai;ag++){aa=ah+aj[ag]+al;if(!ab[aa]){ab[aa]=true;ad.push(aa)}}af.className=ad.join(" ");return ak},replaceWith:function(ad){var ae=this,af=ae.dom,ac=af.parentNode,aa=Ext.cache,ab;ae.clearListeners();if(ad.nodeType||ad.dom||typeof ad==="string"){ad=Ext.get(ad);ab=ac.insertBefore(ad.dom,af)}else{ab=Ext.DomHelper.insertBefore(af,ad)}ac.removeChild(af);ae.dom=ab;if(!ae.isFly){delete aa[ae.id];aa[ae.id=Ext.id(ab)]=ae}return ae},resolveListenerScope:function(ab){var aa=this.component;return aa?aa.resolveListenerScope(ab):this},scroll:function(ai,aa,ac){if(!this.isScrollable()){return false}ai=ai.charAt(0);var ah=this,ae=ah.dom,ag=ai==="r"||ai==="l"?"left":"top",ab=false,ad,af;if(ai==="l"||ai==="t"||ai==="u"){aa=-aa}if(ag==="left"){ad=ae.scrollLeft;af=ah.constrainScrollLeft(ad+aa)}else{ad=ae.scrollTop;af=ah.constrainScrollTop(ad+aa)}if(af!==ad){this.scrollTo(ag,af,ac);ab=true}return ab},scrollBy:function(ab,aa,ac){var ad=this,ae=ad.dom;if(ab.length){ac=aa;aa=ab[1];ab=ab[0]}else{if(typeof ab!="number"){ac=aa;aa=ab.y;ab=ab.x}}if(ab){ad.scrollTo("left",ad.constrainScrollLeft(ae.scrollLeft+ab),ac)}if(aa){ad.scrollTo("top",ad.constrainScrollTop(ae.scrollTop+aa),ac)}return ad},scrollChildIntoView:function(ab,aa){Ext.fly(ab).scrollIntoView(this,aa)},scrollIntoView:function(aa,ad,ac,ab){aa=Ext.getDom(aa)||Ext.getBody().dom;return this.doScrollIntoView(aa,ad,ac,ab,"getScrollLeft","scrollTo")},scrollTo:function(ac,ae,aa){var af=/top/i.test(ac),ad=this,ah=af?"scrollTop":"scrollLeft",ag=ad.dom,ab;if(!aa||!ad.anim){ag[ah]=ae;ag[ah]=ae}else{ab={to:{}};ab.to[ah]=ae;if(Ext.isObject(aa)){Ext.applyIf(ab,aa)}ad.animate(ab)}return ad},select:function(ab,ad){var aa,ac;if(typeof ab==="string"){ac=this.query(ab,!ad)}else{ac=ab;aa=true}return ad?new Ext.CompositeElement(ac,!aa):new Ext.CompositeElementLite(ac,true)},selectNode:function(ab,aa){return this.query(ab,aa,true)},set:function(aa,ab){var ad=this,af=ad.dom,ac,ae;for(ac in aa){if(aa.hasOwnProperty(ac)){ae=aa[ac];if(ac==="style"){ad.applyStyles(ae)}else{if(ac==="cls"){af.className=ae}else{if(ab!==false){if(ae===undefined){af.removeAttribute(ac)}else{af.setAttribute(ac,ae)}}else{af[ac]=ae}}}}}return ad},setBottom:function(aa){this.dom.style[H]=o.addUnits(aa);return this},setBorder:function(aa){var ac=this,ab=ac.dom.style;if(aa||aa===0){aa=ac.self.unitizeBox((aa===true)?1:aa);ab.setProperty("border-width",aa,"important")}else{ab.removeProperty("border-top-width");ab.removeProperty("border-right-width");ab.removeProperty("border-bottom-width");ab.removeProperty("border-left-width")}},setCls:function(ad){var af=this,ac=af.getData(),ag=ac.classMap,ab,ae,aa;if(typeof ad==="string"){ad=ad.split(F)}for(ab=0,ae=ad.length;ab<ae;ab++){aa=ad[ab];if(!ag[aa]){ag[aa]=true}}ac.classList=ad.slice();af.dom.className=ad.join(" ")},setHeight:function(aa){var ab=this;ab.dom.style[J]=o.addUnits(aa);if(ab.shadow||ab.shim){ab.syncUnderlays()}return ab},setHtml:function(aa){if(this.dom){this.dom.innerHTML=aa}},setId:function(ad){var ac=this,aa=ac.id,ab=Ext.cache;if(aa){delete ab[aa]}ac.dom.id=ad;ac.id=ad;ab[ad]=ac;return ac},setLeft:function(ab){var aa=this;aa.dom.style[D]=o.addUnits(ab);if(aa.shadow||aa.shim){aa.syncUnderlays()}return aa},setLocalX:function(aa){var ac=this,ab=ac.dom.style;ab.right="auto";ab.left=(aa===null)?"auto":aa+"px";if(ac.shadow||ac.shim){ac.syncUnderlays()}return ac},setLocalXY:function(aa,ad){var ac=this,ab=ac.dom.style;ab.right="auto";if(aa&&aa.length){ad=aa[1];aa=aa[0]}if(aa===null){ab.left="auto"}else{if(aa!==undefined){ab.left=aa+"px"}}if(ad===null){ab.top="auto"}else{if(ad!==undefined){ab.top=ad+"px"}}if(ac.shadow||ac.shim){ac.syncUnderlays()}return ac},setLocalY:function(ab){var aa=this;aa.dom.style.top=(ab===null)?"auto":ab+"px";if(aa.shadow||aa.shim){aa.syncUnderlays()}return aa},setMargin:function(ac){var ab=this,aa=ab.dom.style;if(ac||ac===0){ac=ab.self.unitizeBox((ac===true)?5:ac);aa.setProperty("margin",ac,"important")}else{aa.removeProperty("margin-top");aa.removeProperty("margin-right");aa.removeProperty("margin-bottom");aa.removeProperty("margin-left")}},setMaxHeight:function(aa){this.dom.style[z]=o.addUnits(aa);return this},setMaxWidth:function(aa){this.dom.style[p]=o.addUnits(aa);return this},setMinHeight:function(aa){this.dom.style[c]=o.addUnits(aa);return this},setMinWidth:function(aa){this.dom.style[U]=o.addUnits(aa);return this},setPadding:function(ac){var ab=this,aa=ab.dom.style;if(ac||ac===0){ac=ab.self.unitizeBox((ac===true)?5:ac);aa.setProperty("padding",ac,"important")}else{aa.removeProperty("padding-top");aa.removeProperty("padding-right");aa.removeProperty("padding-bottom");aa.removeProperty("padding-left")}},setRight:function(aa){this.dom.style[Y]=o.addUnits(aa);return this},setScrollLeft:function(aa){this.dom.scrollLeft=aa;return this},setScrollTop:function(aa){this.dom.scrollTop=aa;return this},setSize:function(ac,aa){var ad=this,ab=ad.dom.style;if(Ext.isObject(ac)){aa=ac.height;ac=ac.width}ab.width=o.addUnits(ac);ab.height=o.addUnits(aa);if(ad.shadow||ad.shim){ad.syncUnderlays()}return ad},setSizeState:function(ae){var ad=this,ac=["x-sized","x-unsized","x-stretched"],aa=[true,false,null],ab=aa.indexOf(ae),af;if(ab!==-1){af=ac[ab];ac.splice(ab,1);ad.addCls(af)}ad.removeCls(ac);return ad},setStyle:function(ah,af){var ad=this,ag=ad.dom,aa=ad.styleHooks,ac=ag.style,ab=ah,ae;if(typeof ab==="string"){ae=aa[ab];if(!ae){aa[ab]=ae={name:o.normalize(ab)}}af=(af==null)?"":af;if(ae.set){ae.set(ag,af,ad)}else{ac[ae.name]=af}if(ae.afterSet){ae.afterSet(ag,af,ad)}}else{for(ab in ah){if(ah.hasOwnProperty(ab)){ae=aa[ab];if(!ae){aa[ab]=ae={name:o.normalize(ab)}}af=ah[ab];af=(af==null)?"":af;if(ae.set){ae.set(ag,af,ad)}else{ac[ae.name]=af}if(ae.afterSet){ae.afterSet(ag,af,ad)}}}}return ad},setText:function(aa){this.dom.textContent=aa},setTop:function(ab){var aa=this;aa.dom.style[M]=o.addUnits(ab);if(aa.shadow||aa.shim){aa.syncUnderlays()}return aa},setUnderlaysVisible:function(aa){var ac=this.shadow,ab=this.shim;if(ac&&!ac.disabled){if(aa){ac.show()}else{ac.hide()}}if(ab&&!ab.disabled){if(aa){ab.show()}else{ab.hide()}}},setVisibility:function(aa){var ab=this.dom.style;if(aa){ab.removeProperty("visibility")}else{ab.setProperty("visibility","hidden","important")}},setVisibilityMode:function(aa){this.getData().visibilityMode=aa;return this},setVisible:function(ac){var aa=this,ab=aa.getVisibilityMode(),ad=ac?"removeCls":"addCls";switch(ab){case o.DISPLAY:aa.removeCls([A,k]);aa[ad](y);break;case o.VISIBILITY:aa.removeCls([y,k]);aa[ad](A);break;case o.OFFSETS:aa.removeCls([A,y]);aa[ad](k);break}if(aa.shadow||aa.shim){aa.setUnderlaysVisible(ac)}return aa},setWidth:function(aa){var ab=this;ab.dom.style[g]=o.addUnits(aa);if(ab.shadow||ab.shim){ab.syncUnderlays()}return ab},setX:function(aa){return this.setXY([aa,false])},setXY:function(ac){var ab=this,ad=ab.translatePoints(ac),aa=ab.dom.style,ae;ab.position();aa.right="auto";for(ae in ad){if(!isNaN(ad[ae])){aa[ae]=ad[ae]+"px"}}if(ab.shadow||ab.shim){ab.syncUnderlays()}return ab},setY:function(aa){return this.setXY([false,aa])},setZIndex:function(aa){var ab=this;if(ab.shadow){ab.shadow.setZIndex(aa)}if(ab.shim){ab.shim.setZIndex(aa)}return ab.setStyle("z-index",aa)},show:function(){this.setVisible(true);return this},swapCls:function(ab,ag,aa,ae){if(aa===undefined){aa=true}var ad=this,af=aa?ab:ag,ac=aa?ag:ab;if(ac){ad.removeCls(ae?ae+"-"+ac:ac)}if(af){ad.addCls(ae?ae+"-"+af:af)}return ad},synchronize:function(){var ah=this,ad=ah.dom,ai={},ag=ad.className,ab,ae,af,aa,ac=ah.getData();if(ag&&ag.length>0){ab=ad.className.split(W);for(ae=0,af=ab.length;ae<af;ae++){aa=ab[ae];ai[aa]=true}}else{ab=[]}ac.classList=ab;ac.classMap=ai;ac.isSynchronized=true;return ah},syncUnderlays:function(){var ad=this,ah=ad.shadow,aa=ad.shim,ab=ad.dom,ai,af,ae,ag,ac;if(ad.isVisible()){ai=ad.getXY();af=ai[0];ae=ai[1];ag=ab.offsetWidth;ac=ab.offsetHeight;if(ah&&!ah.hidden){ah.realign(af,ae,ag,ac)}if(aa&&!aa.hidden){aa.realign(af,ae,ag,ac)}}},toggleCls:function(aa,ab){if(typeof ab!=="boolean"){ab=!this.hasCls(aa)}return(ab)?this.addCls(aa):this.removeCls(aa)},toggle:function(){this.setVisible(!this.isVisible());return this},translate:function(){var aa="webkitTransform" in L.createElement("div").style?"webkitTransform":"transform";return function(ab,ad,ac){this.dom.style[aa]="translate3d("+(ab||0)+"px, "+(ad||0)+"px, "+(ac||0)+"px)"}}(),unwrap:function(){var ac=this.dom,aa=ac.parentNode,ab;if(aa){ab=aa.parentNode;ab.insertBefore(ac,aa);ab.removeChild(aa)}else{ab=document.createDocumentFragment();ab.appendChild(ac)}return this},up:function(ac,aa,ab){return this.findParentNode(ac,aa,!ab)},update:function(aa){return this.setHtml(aa)},wrap:function(ab,ac,aa){var ad=this,ag=ad.dom,af=Ext.DomHelper.insertBefore(ag,ab||{tag:"div"},!ac),ae=af;if(aa){ae=af.selectNode(aa,ac)}ae.appendChild(ag);return af},privates:{doAddListener:function(af,ai,aj,ak,ab,aa,ac){var ah=this,ad,ae,ag;if(!ah.blockedEvents[af]){ad=ah.mixins.observable.doAddListener;ak=ak||{};if(ah.longpressEvents[af]){ah.disableTouchContextMenu()}if(o.useDelegatedEvents===false){ak.delegated=ak.delegated||false}if(ak.translate!==false){ae=ah.additiveEvents[af];if(ae){ak.type=af;af=ae;ad.call(ah,af,ai,aj,ak,ab,aa,ac)}ag=ah.eventMap[af];if(ag){ak.type=ak.type||af;af=ag}}ad.call(ah,af,ai,aj,ak,ab,aa,ac);delete ak.type}},doRemoveListener:function(aa,ae,ad){var af=this,ac,ah,ag,ab;if(!af.blockedEvents[aa]){ac=af.mixins.observable.doRemoveListener;if(af.longpressEvents[aa]){ab=this._contextMenuListenerRemover;if(ab){ab.destroy()}}ag=af.additiveEvents[aa];if(ag){aa=ag;ac.call(af,aa,ae,ad)}ah=af.eventMap[aa];if(ah){ac.call(af,ah,ae,ad)}ac.call(af,aa,ae,ad)}},_initEvent:function(aa){return(this.events[aa]=new Ext.dom.ElementEvent(this,aa))},_getPublisher:function(aa){var ac=Ext.event.publisher.Publisher,ab=ac.publishersByEvent[aa];if(!ab||(this.dom===window&&aa==="resize")){ab=ac.publishers.dom}return ab}},deprecated:{"5.0":{methods:{cssTranslate:null,getHTML:"getHtml",getOuterHeight:null,getOuterWidth:null,getPageBox:function(ac){var af=this,ad=af.dom,ah=ad.nodeName==="BODY",ai=ah?o.getViewportWidth():ad.offsetWidth,ae=ah?o.getViewportHeight():ad.offsetHeight,ak=af.getXY(),aj=ak[1],aa=ak[0]+ai,ag=ak[1]+ae,ab=ak[0];if(ac){return new Ext.util.Region(aj,aa,ag,ab)}else{return{left:ab,top:aj,width:ai,height:ae,right:aa,bottom:ag}}},getScrollParent:null,isDescendent:null,isTransparent:function(ab){var aa=this.getStyle(ab);return aa?a.test(aa):false},purgeAllListeners:"clearListeners",removeAllListeners:"clearListeners",setHTML:"setHtml",setTopLeft:null}}}}},1,0,0,0,0,[[Ext.util.Positionable.prototype.mixinId||Ext.util.Positionable.$className,Ext.util.Positionable],[Ext.mixin.Observable.prototype.mixinId||Ext.mixin.Observable.$className,Ext.mixin.Observable]],[Ext.dom,"Element",Ext,"Element"],function(r){var b=document,n=r.prototype,y=Ext.supports,F="pointerdown",e="pointermove",c="pointerup",d="pointercancel",j="MSPointerDown",o="MSPointerMove",B="MSPointerUp",a="MSPointerCancel",u="mousedown",A="mousemove",v="mouseup",G="mouseover",E="mouseout",q="mouseenter",g="mouseleave",x="touchstart",m="touchmove",C="touchend",h="touchcancel",s="click",k="dblclick",w="tap",D="doubletap",l=n.eventMap={},t=n.additiveEvents={},p=Ext.id,z;Ext.id=function(J,I){var H=Ext.getDom(J,true),K,L;if(!H){L=p(J,I)}else{if(!(L=H.id)){L=p(null,I||r.prototype.identifiablePrefix);if(Ext.isSandboxed){K=Ext.sandboxPrefix||(Ext.sandboxPrefix=Ext.sandboxName.toLowerCase()+"-");L=K+L}H.id=L}}return L};if(y.PointerEvents){l[u]=F;l[A]=e;l[v]=c;l[x]=F;l[m]=e;l[C]=c;l[h]=d;l[s]=w;l[k]=D;l[G]="pointerover";l[E]="pointerout";l[q]="pointerenter";l[g]="pointerleave"}else{if(y.MSPointerEvents){l[F]=j;l[e]=o;l[c]=B;l[d]=a;l[u]=j;l[A]=o;l[v]=B;l[x]=j;l[m]=o;l[C]=B;l[h]=a;l[s]=w;l[k]=D;l[G]="MSPointerOver";l[E]="MSPointerOut"}else{if(y.TouchEvents){l[F]=x;l[e]=m;l[c]=C;l[d]=h;l[u]=x;l[A]=m;l[v]=C;l[s]=w;l[k]=D;if(Ext.isWebKit&&Ext.os.is.Desktop){l[x]=u;l[m]=A;l[C]=v;l[h]=v;t[u]=u;t[A]=A;t[v]=v;t[x]=x;t[m]=m;t[C]=C;t[h]=h;t[F]=u;t[e]=A;t[c]=v;t[d]=v}}else{l[F]=u;l[e]=A;l[c]=v;l[d]=v;l[x]=u;l[m]=A;l[C]=v;l[h]=v}}}if(Ext.isWebKit){l.transitionend=Ext.browser.getVendorProperyName("transitionEnd");l.animationstart=Ext.browser.getVendorProperyName("animationStart");l.animationend=Ext.browser.getVendorProperyName("animationEnd")}if(!Ext.supports.MouseWheel&&!Ext.isOpera){l.mousewheel="DOMMouseScroll"}z=n.$eventOptions=Ext.Object.chain(n.$eventOptions);z.translate=z.capture=z.delegate=z.delegated=z.stopEvent=z.preventDefault=z.stopPropagation=z.element=1;n.getTrueXY=n.getXY;Ext.select=r.select;Ext.query=r.query;Ext.apply(Ext,{get:function(H){return r.get(H)},getDom:function(H){if(!H||!b){return null}return H.dom||(typeof H==="string"?Ext.getElementById(H):H)},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(J){var K=J&&J.id,I=Ext.cache[K],H;if(I){I.destroy()}else{if(J&&J.tagName.toUpperCase()!=="BODY"){H=J.parentNode;if(H){H.removeChild(J)}}}}});Ext.isGarbage=function(H){return H&&H.nodeType===1&&H.tagName!=="BODY"&&H.tagName!=="HTML"&&(!H.parentNode||(!H.offsetParent&&((Ext.isIE8?b.all[H.id]:b.getElementById(H.id))!==H)&&!(Ext.detachedBodyEl&&Ext.detachedBodyEl.isAncestor(H))))}}));(Ext.cmd.derive("Ext.util.Filter",Ext.Base,{isFilter:true,config:{property:null,value:null,filterFn:null,id:null,anyMatch:false,exactMatch:false,caseSensitive:false,disabled:false,disableOnEmpty:false,operator:null,root:null,serializer:null,convert:null},scope:null,$configStrict:false,statics:{createFilterFn:function(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){if(!a.filterFn){if(!a.property){return"A Filter requires either a property or a filterFn to be set"}if(!a.hasOwnProperty("value")&&!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)},preventConvert:{"in":1},filter:function(b){var a=this,e=a._filterFn||a.getFilterFn(),d=a.getConvert(),c=a._value;a._filterValue=c;a.isDateValue=Ext.isDate(c);if(a.isDateValue){a.dateValue=c.getTime()}if(d&&!a.preventConvert[a.getOperator()]){a._filterValue=d.call(a.scope||a,c)}return e.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(),b=this.getSerializer();delete a.id;delete a.serializer;if(b){b.call(this,a)}return a},updateOperator:function(){this._filterFn=null},updateValue:function(a){this._filterFn=null;if(this.getDisableOnEmpty()){this.setDisabled(Ext.isEmpty(a))}},updateDisableOnEmpty:function(a){var b=false;if(a){b=Ext.isEmpty(this.getValue())}this.setDisabled(b)},privates:{getCandidateValue:function(c,b,e){var d=this,g=d._convert,a=d.getPropertyValue(c);if(g){a=g.call(d.scope||d,a)}else{if(!e){a=Ext.coerce(a,b)}}return a}}},1,0,0,0,0,0,[Ext.util,"Filter"],function(){var a=this.prototype,b=(a.operatorFns={"<":function(d){var c=this._filterValue;return this.getCandidateValue(d,c)<c},"<=":function(d){var c=this._filterValue;return this.getCandidateValue(d,c)<=c},"=":function(d){var e=this,c=e._filterValue;d=e.getCandidateValue(d,c);if(e.isDateValue&&d instanceof Date){d=d.getTime();c=e.dateValue}return d==c},"===":function(d){var e=this,c=e._filterValue;d=e.getCandidateValue(d,c,true);if(e.isDateValue&&d instanceof Date){d=d.getTime();c=e.dateValue}return d===c},">=":function(d){var c=this._filterValue;return this.getCandidateValue(d,c)>=c},">":function(d){var c=this._filterValue;return this.getCandidateValue(d,c)>c},"!=":function(d){var e=this,c=e._filterValue;d=e.getCandidateValue(d,c);if(e.isDateValue&&d instanceof Date){d=d.getTime();c=e.dateValue}return d!=c},"!==":function(d){var e=this,c=e._filterValue;d=e.getCandidateValue(d,c,true);if(e.isDateValue&&d instanceof Date){d=d.getTime();c=e.dateValue}return d!==c},"in":function(d){var c=this._filterValue;return Ext.Array.contains(c,this.getCandidateValue(d,c))},like:function(d){var c=this._filterValue;return c&&this.getCandidateValue(d,c).toLowerCase().indexOf(c.toLowerCase())>-1}});b["=="]=b["="];b.gt=b[">"];b.ge=b[">="];b.lt=b["<"];b.le=b["<="];b.eq=b["="];b.ne=b["!="]}));(Ext.cmd.derive("Ext.util.Observable",Ext.mixin.Observable,{$applyConfigs:true},0,0,0,0,0,0,[Ext.util,"Observable"],0));(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=Ext.defer(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.Element.prototype.constructor.call(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.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.Fly",Ext.dom.Element,{alternateClassName:"Ext.dom.Element.Fly",validNodeTypes:{1:1,9:1,11:1},isFly:true,constructor:function(a){this.dom=a;this.el=this},attach:function(b){var a=this;if(!b){return a.detach()}a.dom=b;if(!Ext.cache[b.id]){a.getData().isSynchronized=false}return a},detach:function(){this.dom=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(j,d){var g=null,e=Ext.fly,c,h;d=d||(e.caller&&e.caller.$name)||"_global";j=Ext.getDom(j);if(j){c=j.nodeType;if(a.prototype.validNodeTypes[c]||(!c&&(j.window==j))){g=Ext.cache[j.id];if(!g||g.dom!==j){g=b[d]||(b[d]=new a());g.dom=j;h=g.getData(true);if(h){h.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(b,a){return Ext.Array.slice(this.elements,b,a)},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.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="x-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,nonSpaceRe=/\S/,typeRe=/\stype=([\'\"])(.*?)\1/i,msRe=/^-ms-/,camelRe=/(-[a-z])/gi,camelReplaceFn=function(m,a){return a.charAt(1).toUpperCase()},XMASKED="x-masked",XMASKEDRELATIVE="x-masked-relative",EXTELMASKMSG="x-mask-msg",mouseEnterLeaveRe=/^(?:mouseenter|mouseleave)$/,bodyRe=/^body/i,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,inputTags={INPUT:true,TEXTAREA:true};return{override:"Ext.dom.Element",mixins:["Ext.util.Animate"],skipGarbageCollection:false,_init:function(E){Element=E},statics:{selectableCls:"x-selectable",unselectableCls:"x-unselectable",tabIndexAttributeName:Ext.isIE8?"tabIndex":"tabindex",tabbableSelector:'a[href],button,iframe,input,select,textarea,[tabindex],[contenteditable="true"]',naturallyFocusableTags:{BUTTON:true,IFRAME:true,EMBED:true,INPUT:true,OBJECT:true,SELECT:true,TEXTAREA:true,HTML:Ext.isIE?true:false},naturallyTabbableTags:{BUTTON:true,IFRAME:true,INPUT:true,SELECT:true,TEXTAREA:true,OBJECT:Ext.isIE8m?true:false},tabbableSavedFlagAttribute:"data-tabindexsaved",tabbableSavedAttribute:"data-savedtabindex",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}},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))},afterAnimate:function(){var shadow=this.shadow;if(shadow&&!shadow.disabled&&!shadow.animate){shadow.show()}},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));anim.on({afteranimate:"afterAnimate",beforeanimate:"beforeAnimate",scope:me,single:true});if(listeners){anim.on(listeners)}Ext.fx.Manager.queueFx(anim);if(end){anim.jumpToEnd()}}return me},beforeAnimate:function(){var shadow=this.shadow;if(shadow&&!shadow.disabled&&!shadow.animate){shadow.hide()}},boxWrap:function(cls){cls=cls||"x-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},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();arguments.callee.$previous.call(this)},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},destroy:function(){var me=this,dom=me.dom,data=me.getData(),maskEl,maskMsg;if(dom&&me.isAnimate){me.stopAnimation()}arguments.callee.$previous.call(this);if(dom&&Ext.isIE8&&(dom.window!=dom)&&(dom.nodeType!==9)&&(dom.tagName!=="BODY")&&(dom.tagName!=="HTML")){garbageBin=garbageBin||DOC.createElement("div");garbageBin.appendChild(dom);garbageBin.innerHTML=""}if(data){maskEl=data.maskEl;maskMsg=data.maskMsg;if(maskEl){maskEl.destroy()}if(maskMsg){maskMsg.destroy()}}},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},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(){var dom=this.dom,focusable=false,nodeName;if(dom&&!dom.disabled){nodeName=dom.nodeName;focusable=!!Ext.Element.naturallyFocusableTags[nodeName]||((nodeName==="A"||nodeName==="LINK")&&!!dom.href)||dom.getAttribute("tabindex")!=null||dom.contentEditable==="true";if(Ext.isIE8&&nodeName==="INPUT"&&dom.type==="hidden"){focusable=false}focusable=focusable&&this.isVisible(true)}return focusable},isInputField:function(){var dom=this.dom,contentEditable=dom.contentEditable;if((inputTags[dom.tagName]&&dom.type!=="button")||(contentEditable===""||contentEditable==="true")){return true}return false},isTabbable:function(){var dom=this.dom,tabbable=false,nodeName,hasIndex,tabIndex;if(dom&&!dom.disabled){nodeName=dom.nodeName;tabIndex=dom.getAttribute("tabindex");hasIndex=tabIndex!=null;tabIndex-=0;if(nodeName==="A"||nodeName==="LINK"){if(dom.href){tabbable=hasIndex&&tabIndex<0?false:true}else{if(dom.contentEditable==="true"){tabbable=!hasIndex||(hasIndex&&tabIndex>=0)?true:false}else{tabbable=hasIndex&&tabIndex>=0?true:false}}}else{if(dom.contentEditable==="true"||Ext.Element.naturallyTabbableTags[nodeName]){tabbable=hasIndex&&tabIndex<0?false:true}else{if(hasIndex&&tabIndex>=0){tabbable=true}}}if(Ext.isIE8&&nodeName==="INPUT"&&dom.type==="hidden"){tabbable=false}tabbable=tabbable&&(!this.component||this.component.isVisible(true))&&this.isVisible(true)}return tabbable},isMasked:function(deep){var me=this,data=me.getData(),maskEl=data.maskEl,maskMsg=data.maskMsg,hasMask=false,parent;if(maskEl&&maskEl.isVisible()){if(maskMsg){maskMsg.center(me)}hasMask=true}else{if(deep){parent=me.findParentNode();if(parent){return Ext.fly(parent).isMasked(deep)}}}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;if(!(bodyRe.test(dom.tagName)&&me.getStyle("position")==="static")){me.addCls(XMASKEDRELATIVE)}if(maskEl){maskEl.destroy()}maskEl=Ext.DomHelper.append(dom,{role:"presentation",cls:"x-mask x-border-box",children:{role:"presentation",cls:msgCls?EXTELMASKMSG+" "+msgCls:EXTELMASKMSG,cn:{tag:"div",role:"presentation",cls:"x-mask-msg-inner",cn:{tag:"div",role:"presentation",cls:"x-mask-msg-text",html:msg||""}}}},true);maskMsg=Ext.get(maskEl.dom.firstChild);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("x-mask-fixed")}else{me.saveTabbableState()}me.saveChildrenTabbableState();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=Ext.defer(handler,delay,scope||me,[e])},mouseenter:function(){clearTimeout(timer)}};me.on(listeners);return listeners},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},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){var me=this;if(typeof value==="boolean"){value=value?getDisplay(me):NONE}me.setStyle(DISPLAY,value);if(me.shadow||me.shim){me.setUnderlaysVisible(value!==NONE)}return me},setHeight:function(height,animate){var me=this;if(!animate||!me.anim){arguments.callee.$previous.apply(this,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=Ext.interval(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)},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);if(me.shadow||me.shim){me.syncUnderlays()}}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;if(me.shadow||me.shim){me.setUnderlaysVisible(visible)}return me},setWidth:function(width,animate){var me=this;if(!animate||!me.anim){arguments.callee.$previous.apply(this,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){arguments.callee.$previous.call(this,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,elData=dest._extData;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(elData){elData.isSynchronized=false}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,style;if(maskEl){style=maskEl.dom.style;if(style.clearExpression){style.clearExpression("width");style.clearExpression("height")}if(maskEl){maskEl.destroy();delete data.maskEl}me.removeCls([XMASKED,XMASKEDRELATIVE])}me.restoreChildrenTabbableState();if(me.dom!==DOC.body){me.restoreTabbableState()}},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){arguments.callee.$previous.apply(this,arguments)}else{if(x!=null){this.dom.style.left=x+"px"}if(y!=null){this.dom.style.top=y+"px"}}},unselectable:function(){var me=this;if(Ext.isOpera){me.dom.unselectable="on"}me.removeCls(Element.selectableCls);me.addCls(Element.unselectableCls);return me},privates:{needsTabIndex:function(){var dom=this.dom,nodeName,isFocusable;if(dom){nodeName=dom.nodeName;isFocusable=!!Ext.Element.naturallyFocusableTags[nodeName]||((nodeName==="A"||nodeName==="LINK")&&!!dom.href)||dom.getAttribute("tabindex")!=null||dom.contentEditable==="true";return !isFocusable}},findTabbableElements:function(asDom,selector,limit,backward){asDom=asDom!=undefined?asDom:true;var me=this,selection;selection=me.selectTabbableElements(asDom,selector,limit,backward);if(me.isTabbable()){selection.unshift(asDom?me.dom:me)}return selection},selectTabbableElements:function(asDom,selector,limit,backward){var selection=[],nodes,node,el,i,len,to,step,tabIndex;asDom=asDom!=undefined?asDom:true;nodes=this.dom.querySelectorAll(selector||Ext.Element.tabbableSelector);len=nodes.length;if(!len){return selection}if(backward){i=len-1;to=0;step=-1}else{i=0;to=len-1;step=1}for(;;i+=step){if((step>0&&i>to)||(step<0&&i<to)){break}node=nodes[i];tabIndex=node.getAttribute("tabindex")-0;if(!(tabIndex<0)){el=asDom?Ext.fly(node):Ext.get(node);if(el.isTabbable()){selection.push(asDom?node:el)}}if(selection.length>=limit){return selection}}return selection},selectFirstTabbableElement:function(asDom,selector){var els=this.selectTabbableElements(asDom,selector,1,false);return els[0]},selectLastTabbableElement:function(asDom,selector){var el=this.selectTabbableElements(true,selector,1,true)[0];return(asDom!==false)?el:Ext.get(el)},saveTabbableState:function(attribute){var tabbableSavedFlagAttribute=Ext.Element.tabbableSavedFlagAttribute,dom=this.dom;if(dom.hasAttribute(tabbableSavedFlagAttribute)){return}attribute=attribute||Ext.Element.tabbableSavedAttribute;if(dom.hasAttribute("tabindex")){dom.setAttribute(attribute,dom.getAttribute("tabindex"))}else{dom.setAttribute(attribute,"none")}dom.setAttribute("tabindex",-1);dom.setAttribute(tabbableSavedFlagAttribute,true);return this},restoreTabbableState:function(attribute){var tabbableSavedFlagAttribute=Ext.Element.tabbableSavedFlagAttribute,dom=this.dom,idx;attribute=attribute||Ext.Element.tabbableSavedAttribute;if(!dom.hasAttribute(tabbableSavedFlagAttribute)||!dom.hasAttribute(attribute)){return}idx=dom.getAttribute(attribute);if(idx==="none"){dom.removeAttribute("tabindex")}else{dom.setAttribute("tabindex",idx)}dom.removeAttribute(attribute);dom.removeAttribute(tabbableSavedFlagAttribute);return this},saveChildrenTabbableState:function(attribute){var children,child,i,len;if(this.dom){children=this.selectTabbableElements();for(i=0,len=children.length;i<len;i++){child=Ext.fly(children[i]);child.saveTabbableState(attribute)}}return children},restoreChildrenTabbableState:function(attribute,children){var child,i,len;if(this.dom){attribute=attribute||Ext.Element.tabbableSavedAttribute;children=children||this.dom.querySelectorAll("["+attribute+"]");for(i=0,len=children.length;i<len;i++){child=Ext.fly(children[i]);child.restoreTabbableState(attribute)}}return children}},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);if(me.shadow||me.shim){me.syncUnderlays()}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 r=Ext.dom.Element,q=r.prototype,y=!Ext.isIE8,b=document,n=b.defaultView,x=/alpha\(opacity=(.*)\)/i,j=/^\s+|\s+$/g,z=q.styleHooks,v=Ext.supports,u,g,e,p,d,t,h,A;q._init(r);delete q._init;Ext.plainTableCls="x-table-plain";Ext.plainListCls="x-list-plain";if(Ext.CompositeElementLite){Ext.CompositeElementLite.importElementMethods()}z.opacity={name:"opacity",afterSet:function(C,B,k){var D=k.shadow;if(D){D.setOpacity(B)}}};if(!v.Opacity&&Ext.isIE){Ext.apply(z.opacity,{get:function(D){var C=D.style.filter,B,k;if(C.match){B=C.match(x);if(B){k=parseFloat(B[1]);if(!isNaN(k)){return k?k/100:0}}}return 1},set:function(D,B){var k=D.style,C=k.filter.replace(x,"").replace(j,"");k.zoom=1;if(typeof(B)==="number"&&B>=0&&B<1){B*=100;k.filter=C+(C.length?" ":"")+"alpha(opacity="+B+")"}else{k.filter=C}}})}if(!v.matchesSelector){var l=/^([a-z]+|\*)?(?:\.([a-z][a-z\-_0-9]*))?$/i,m=/\-/g,a,w=function(k,B){var C=new RegExp("(?:^|\\s+)"+B.replace(m,"\\-")+"(?:\\s+|$)");if(k&&k!=="*"){k=k.toUpperCase();return function(D){return D.tagName===k&&C.test(D.className)}}return function(D){return C.test(D.className)}},s=function(k){k=k.toUpperCase();return function(B){return B.tagName===k}},o={};q.matcherCache=o;q.is=function(k){if(!k){return true}var B=this.dom,H,D,G,F,E,C,I;if(B.nodeType!==1){return false}if(!(G=Ext.isFunction(k)?k:o[k])){if(!(D=k.match(l))){F=B.parentNode;if(!F){E=true;F=a||(a=b.createDocumentFragment());a.appendChild(B)}C=Ext.Array.indexOf(Ext.fly(F,"_is").query(k),B)!==-1;if(E){a.removeChild(B)}return C}I=D[1];H=D[2];o[k]=G=H?w(I,H):s(I)}return G(B)}}if(!n||!n.getComputedStyle){q.getStyle=function(O,J){var K=this,F=K.dom,Q=typeof O!=="string",C=O,L=C,I=1,D=J,B=K.styleHooks,P,H,N,M,E,k,G;if(Q){N={};C=L[0];G=0;if(!(I=L.length)){return N}}if(!F||F.documentElement){return N||""}H=F.style;if(J){k=H}else{k=F.currentStyle;if(!k){D=true;k=H}}do{M=B[C];if(!M){B[C]=M={name:r.normalize(C)}}if(M.get){E=M.get(F,K,D,k)}else{P=M.name;E=k[P]}if(!Q){return E}N[C]=E;C=L[++G]}while(G<I);return N}}if(Ext.isIE8){function c(D,B,C,k){if(k[this.styleName]==="none"){return"0px"}return k[this.name]}d=["Top","Right","Bottom","Left"];t=d.length;while(t--){h=d[t];A="border"+h+"Width";z["border-"+h.toLowerCase()+"-width"]=z[A]={name:A,styleName:"border"+h+"Style",get:c}}}Ext.apply(Ext,{enableGarbageCollector:true,isBorderBox:true,useShims:false,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(C){var B=b.getElementById(C),k;if(!B&&(k=Ext.detachedBodyEl)){B=k.dom.querySelector(Ext.makeIdSelector(C))}return B},addBehaviors:function(E){if(!Ext.isReady){Ext.onReady(function(){Ext.addBehaviors(E)})}else{var B={},D,k,C;for(k in E){if((D=k.split("@"))[1]){C=D[0];if(!B[C]){B[C]=Ext.fly(document).select(C,true)}B[C].on(D[1],E[k])}}B=null}}});if(Ext.isIE8){u=Ext.removeNode;Ext.removeNode=function(k){u(k);g=g||b.createElement("div");g.appendChild(k);g.innerHTML=""}}if(Ext.isIE9m){Ext.getElementById=function(C){var B=b.getElementById(C),k;if(!B&&(k=Ext.detachedBodyEl)){B=k.dom.all[C]}return B};q.getById=function(F,k){var E=this.dom,B=null,D,C;if(E){C=(y&&b.getElementById(F))||E.all[F];if(C){if(k){B=C}else{D=Ext.cache[F];if(D){if(D.skipGarbageCollection||!Ext.isGarbage(D.dom)){B=D}else{D.destroy()}}B=B||new Ext.Element(C)}}}return B}}else{if(!b.querySelector){Ext.getDetachedBody=Ext.getBody;Ext.getElementById=function(k){return b.getElementById(k)};q.getById=function(C,k){var B=b.getElementById(C);return k?B:(B?Ext.get(B):null)}}}if(Ext.isIE&&!(Ext.isIE9p&&b.documentMode>=9)){q.getAttribute=function(k,C){var D=this.dom,B;if(C){B=typeof D[C+":"+k];if(B!="undefined"&&B!="unknown"){return D[C+":"+k]||null}return null}if(k==="for"){k="htmlFor"}return D[k]||null}}Ext.onReady(function(){var D=/^(?:transparent|(?:rgba[(](?:\s*\d+\s*[,]){3}\s*0\s*[)]))$/i,B=[],I=q.setWidth,J=q.setHeight,N=q.setSize,O=/^\d+(?:\.\d*)?px$/i,H,F,k,M;if(v.FixedTableWidthBug){z.width={name:"width",set:function(U,T,R){var Q=U.style,P=R._needsTableWidthFix,S=Q.display;if(P){Q.display="none"}Q.width=T;if(P){U.scrollWidth;Q.display=S}}};q.setWidth=function(S,Q){var U=this,V=U.dom,R=V.style,P=U._needsTableWidthFix,T=R.display;if(P&&!Q){R.display="none"}I.call(U,S,Q);if(P&&!Q){V.scrollWidth;R.display=T}return U};q.setSize=function(T,Q,R){var V=this,W=V.dom,S=W.style,P=V._needsTableWidthFix,U=S.display;if(P&&!R){S.display="none"}N.call(V,T,Q,R);if(P&&!R){W.scrollWidth;S.display=U}return V}}if(Ext.isIE8){z.height={name:"height",set:function(U,T,R){var Q=R.component,S,P;if(Q&&Q._syncFrameHeight&&this===Q.el){P=Q.frameBody.dom.style;if(O.test(T)){S=Q.getFrameInfo();if(S){P.height=(parseInt(T,10)-S.height)+"px"}}else{if(!T||T==="auto"){P.height=""}}}U.style.height=T}};q.setHeight=function(P,R){var S=this.component,T,Q;if(S&&S._syncFrameHeight&&this===S.el){Q=S.frameBody.dom.style;if(!P||P==="auto"){Q.height=""}else{T=S.getFrameInfo();if(T){Q.height=(P-T.height)+"px"}}}return J.call(this,P,R)};q.setSize=function(T,P,R){var S=this.component,U,Q;if(S&&S._syncFrameHeight&&this===S.el){Q=S.frameBody.dom.style;if(!P||P==="auto"){Q.height=""}else{U=S.getFrameInfo();if(U){Q.height=(P-U.height)+"px"}}}return N.call(this,T,P,R)}}Ext.getDoc().on("selectstart",function(T,U){var S=r.selectableCls,R=r.unselectableCls,P=U&&U.tagName;P=P&&P.toLowerCase();if(P==="input"||P==="textarea"){return}while(U&&U.nodeType===1&&U!==b.documentElement){var Q=Ext.fly(U);if(Q.hasCls(S)){return}if(Q.hasCls(R)){T.stopEvent();return}U=U.parentNode}});function G(T,Q,S,P){var R=P[this.name]||"";return D.test(R)?"transparent":R}function L(Q,R,P){return function(){Q.selectionStart=R;Q.selectionEnd=P}}function K(T){var R=v.DisplayChangeInputSelectionBug,S=v.DisplayChangeTextAreaSelectionBug,U,P,V,Q;if(R||S){U=r.getActiveElement();P=U&&U.tagName;if((S&&P==="TEXTAREA")||(R&&P==="INPUT"&&U.type==="text")){if(Ext.fly(T).isAncestor(U)){V=U.selectionStart;Q=U.selectionEnd;if(Ext.isNumber(V)&&Ext.isNumber(Q)){return L(U,V,Q)}}}}return Ext.emptyFn}function E(V,S,U,R){var P=R.marginRight,Q,T;if(P!=="0px"){Q=V.style;T=Q.display;Q.display="inline-block";P=(U?R:V.ownerDocument.defaultView.getComputedStyle(V,null)).marginRight;Q.display=T}return P}function C(W,T,V,S){var P=S.marginRight,R,Q,U;if(P!=="0px"){R=W.style;Q=K(W);U=R.display;R.display="inline-block";P=(V?S:W.ownerDocument.defaultView.getComputedStyle(W,"")).marginRight;R.display=U;Q()}return P}if(!v.RightMargin){z.marginRight=z["margin-right"]={name:"marginRight",get:(v.DisplayChangeInputSelectionBug||v.DisplayChangeTextAreaSelectionBug)?C:E}}if(!v.TransparentColor){H=["background-color","border-color","color","outline-color"];for(F=H.length;F--;){k=H[F];M=r.normalize(k);z[k]=z[M]={name:M,get:G}}}q.verticalStyleHooks90=e=Ext.Object.chain(z);q.verticalStyleHooks270=p=Ext.Object.chain(z);e.width=z.height||{name:"height"};e.height=z.width||{name:"width"};e["margin-top"]={name:"marginLeft"};e["margin-right"]={name:"marginTop"};e["margin-bottom"]={name:"marginRight"};e["margin-left"]={name:"marginBottom"};e["padding-top"]={name:"paddingLeft"};e["padding-right"]={name:"paddingTop"};e["padding-bottom"]={name:"paddingRight"};e["padding-left"]={name:"paddingBottom"};e["border-top"]={name:"borderLeft"};e["border-right"]={name:"borderTop"};e["border-bottom"]={name:"borderRight"};e["border-left"]={name:"borderBottom"};p.width=z.height||{name:"height"};p.height=z.width||{name:"width"};p["margin-top"]={name:"marginRight"};p["margin-right"]={name:"marginBottom"};p["margin-bottom"]={name:"marginLeft"};p["margin-left"]={name:"marginTop"};p["padding-top"]={name:"paddingRight"};p["padding-right"]={name:"paddingBottom"};p["padding-bottom"]={name:"paddingLeft"};p["padding-left"]={name:"paddingTop"};p["border-top"]={name:"borderRight"};p["border-right"]={name:"borderBottom"};p["border-bottom"]={name:"borderLeft"};p["border-left"]={name:"borderTop"};if(!Ext.scopeCss){B.push("x-body")}if(v.Touch){B.push("x-touch")}if(Ext.isIE&&Ext.isIE9m){B.push("x-ie","x-ie9m");B.push("x-ie8p");if(Ext.isIE8){B.push("x-ie8")}else{B.push("x-ie9","x-ie9p")}if(Ext.isIE8m){B.push("x-ie8m")}}if(Ext.isIE10){B.push("x-ie10")}if(Ext.isIE11){B.push("x-ie11")}if(Ext.isGecko){B.push("x-gecko")}if(Ext.isOpera){B.push("x-opera")}if(Ext.isOpera12m){B.push("x-opera12m")}if(Ext.isWebKit){B.push("x-webkit")}if(Ext.isSafari){B.push("x-safari")}if(Ext.isChrome){B.push("x-chrome")}if(Ext.isMac){B.push("x-mac")}if(Ext.isLinux){B.push("x-linux")}if(!v.CSS3BorderRadius){B.push("x-nbr")}if(!v.CSS3LinearGradient){B.push("x-nlg")}if(v.Touch){B.push("x-touch")}Ext.getBody().addCls(B)},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;a.callParent();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(d,h,j,k,c,b,e){var a,g;if(d==="ready"){g=h}else{if(typeof d!=="string"){for(a in d){if(a==="ready"){g=d[a]}}}}if(g){Ext.onReady(g)}this.callParent([d,h,j,k,c,b,e])}}}}});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.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];}'}}b[b.length]='if(neg&&fnum!=="'+(h?"0."+Ext.String.repeat("0",h):"0")+'") { fnum="-"+fnum; }';if(p){b[b.length]='fnum=fnum.replace(trailingZeroes,"");'}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,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"],function(d){var c=/\{\d+\}/,a=function(g){if(c.test(g)){g=new d(g,b);return function(){return g.apply(arguments)}}else{return function(){return g}}},b={useFormat:false,compiled:true,stringFormat:true},e={};Ext.String.format=Ext.util.Format.format=function(h){var g=e[h]||(e[h]=a(h));return g.apply(this,arguments)}}));(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 c=this,b=Ext._namedScopes[d],a;if(!b){a=c.getInheritedConfig("defaultListenerScope",true)||d||c}else{if(b.isController){a=c.getInheritedConfig("controller",!b.isSelf)}else{if(b.isSelf){a=c.getInheritedConfig("defaultListenerScope")||c}else{if(b.isThis){a=c}}}}return a||null},lookupReferenceHolder:function(a){return this.getInheritedConfig("referenceHolder",a!==false)||null},getRefOwner:function(){return this.ownerCt||this.initOwnerCt||this.ownerCmp||this.floatParent},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),h=e.getConfig("session",true),g=e.getDefaultListenerScope();if(b){d.controller=b}if(g){d.defaultListenerScope=e}else{if(b){d.defaultListenerScope=b}}if(c){if(!c.isViewModel){c=e}d.viewModel=c}if(h){if(!h.isSession){h=e}d.session=h}if(a){e.referenceKey=(d.referencePath||"")+a;e.viewModelKey=(d.viewModelPath||"")+a}},lookupController:function(a){return this.getInheritedConfig("controller",a)||null},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()){if(!(h.calls===0&&(k==null||k===j.getInitialConfig()[l]))){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){if(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"},observableType:"component",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)},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.Evented.prototype.destroy.call(this);Ext.ComponentManager.unregister(e)},doSetWidth:function(a){this.element.setWidth(a)},doSetHeight:function(a){this.element.setHeight(a)},getElementConfig:function(){var b=this,a=b.element;if(!("children" in a)){a=Ext.apply({children:b.getTemplate()},a)}return a},getItemId:function(){return this.itemId||this.id},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)}},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]},resolveListenerScope:function(a){return this.mixins.inheritable.resolveListenerScope.call(this,a)},setSize:function(b,a){if(b!==undefined){this.setWidth(b)}if(a!==undefined){this.setHeight(a)}},privates:{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},doAddListener:function(d,h,g,c,a,b,e){if(c&&"element" in c){this[c.element].doAddListener(d,h,g||this,c,a)}Ext.Evented.prototype.doAddListener.call(this,d,h,g,c,a,b,e)},filterLengthValue:function(a){if(a==="auto"||(!a&&a!==0)){return null}return a},getFocusEl:function(){return this.element},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()}}}},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"],function(a){(a.prototype.$elementEventOptions=Ext.Object.chain(Ext.Element.prototype.$eventOptions)).element=1}));Ext.define("Ext.overrides.Widget",{override:"Ext.Widget",$configStrict:false,isComponent:true,liquidLayout:true,rendered:true,rendering:true,cachedConfig:{baseCls:"x-widget"},constructor:function(a){(arguments.callee.$previous||Ext.Evented.prototype.constructor).call(this,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"x-"+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){d=b.childNodes[a];if(d){b.insertBefore(c,d);return}}b.appendChild(c)},setPosition:function(a,b){this.el.setLocalXY(a,b)},up:function(){return Ext.Component.prototype.up.apply(this,arguments)},isAncestor:function(){return Ext.Component.prototype.isAncestor.apply(this,arguments)},onFocusEnter:function(){return Ext.Component.prototype.onFocusEnter.apply(this,arguments)},onFocusLeave:function(){return Ext.Component.prototype.onFocusLeave.apply(this,arguments)}},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.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){n=Ext.canonicalEventName(n);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 w=this,m=w.bus,h=w.idProperty,j=w.monitoredClasses,e=j.length,l=n.getId(),v=(w.type==="component"),q=v?n.getRefMap():null,s,k,t,r,b,c,a,p,o,u,g;for(r in d){o=d[r];if(v){r=q[r]||r}if(o){if(h){r=r==="*"?r:r.substring(1)}for(u in o){b=null;c=o[u];a=n;u=Ext.canonicalEventName(u);p=new Ext.util.Event(n,u);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]}p.addListener(c,a,b);for(s=0;s<e;++s){g=j[s].hasListeners;if(g){g._incr_(u)}}k=m[u]||(m[u]={});k=k[r]||(k[r]={});t=k[l]||(k[l]={controller:n,list:[]});t.list.push(p)}}}},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(d){var n=this.bus,a=d,r=this.monitoredClasses,l=r.length,b,o,s,m,q,e,p,k,h,c,g;if(d.isController){a=d.getId()}for(o in n){o=Ext.canonicalEventName(o);if(n.hasOwnProperty(o)&&(p=n[o])){for(e in p){b=p[e];c=b[a];if(c){s=c.list;if(s){for(k=0,m=s.length;k<m;++k){q=s[k];q.clearListeners();for(h=0;h<l;++h){g=r[h].hasListeners;if(g){g._decr_(q.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(){this.callParent();this.monitor(Ext.Widget)},dispatch:function(g,d,c){var b=g.lookupController(false),e,a;while(b){e=b.compDomain;if(e){if(e.dispatch(g,d,c)===false){return false}}a=b.getView();b=a?a.lookupController(true):null}return this.callParent(arguments)},match:function(b,a){return b.is(a)}},1,0,0,0,0,0,[Ext.app.domain,"Component"],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.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.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 g.isInstance?g: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(g){var e=g.prototype,h=e.factoryConfig,d=e.alias,c={},b,a;d=d&&d.length&&d[0];if(d&&(b=d.lastIndexOf("."))>0){c.type=d.substring(0,b);c.defaultType=d.substring(b+1)}if(h){delete e.factoryConfig;Ext.apply(c,h)}a=Ext.Factory.define(c.type,c);if(g.create===Ext.Base.create){g.create=a}}},0,0,0,0,0,0,[Ext.mixin,"Factoryable"],0));(Ext.cmd.derive("Ext.scroll.Scroller",Ext.Evented,{factoryConfig:{defaultType:"dom"},isScroller:true,config:{direction:undefined,directionLock:false,disabled:null,element:undefined,indicators:null,maxPosition:null,maxUserPosition:null,minPosition:{x:0,y:0},minUserPosition:{x:0,y:0},momentumEasing:null,size:null,x:true,y:true},statics:{create:function(a){return Ext.Factory.scroller(a,Ext.supports.Touch?"touch":"dom")}},constructor:function(a){var b=this;Ext.Evented.prototype.constructor.call(this,a);b.onDomScrollEnd=Ext.Function.createBuffered(b.onDomScrollEnd,100,b)},addPartner:function(d,b){var c=this,e=c._partners||(c._partners={}),a=d._partners||(d._partners={});e[d.getId()]={scroller:d,axis:b};a[c.getId()]={scroller:c,axis:b}},applyElement:function(a){var b;if(a){if(a.isElement){b=a}else{b=Ext.get(a)}}return b},updateDirectionLock:Ext.emptyFn,updateDisabled:Ext.emptyFn,updateIndicators:Ext.emptyFn,updateMaxPosition:Ext.emptyFn,updateMaxUserPosition:Ext.emptyFn,updateMinPosition:Ext.emptyFn,updateMinUserPosition:Ext.emptyFn,updateMomenumEasing:Ext.emptyFn,updateSize:Ext.emptyFn,updateX:Ext.emptyFn,updateY:Ext.emptyFn,updateElement:function(a){a.on("scroll","onDomScroll",this)},refresh:function(){this.fireEvent("refresh",this);return this},removePartner:function(b){var c=this._partners,a=b._partners;if(c){delete c[b.getId()]}if(a){delete (a[this.getId()])}},scrollBy:function(c,b,d){var a=this.getPosition();if(c){if(c.length){d=b;b=c[1];c=c[0]}else{if(typeof c!=="number"){d=b;b=c.y;c=c.x}}}c=(typeof c==="number")?c+a.x:null;b=(typeof b==="number")?b+a.y:null;return this.doScrollTo(c,b,d)},scrollIntoView:function(c,d,b,g){var j=this,h=j.getPosition(),e,a,k;e=Ext.fly(c).getScrollIntoViewXY(j.getElement(),h.x,h.y);a=(d===false)?h.x:e.x;k=e.y;if(g){j.on({scrollend:"doHighlight",scope:j,single:true,args:[c,g]})}j.doScrollTo(a,k,b)},scrollTo:function(a,d,b){var c;if(a){if(a.length){b=d;d=a[1];a=a[0]}else{if(typeof a!=="number"){b=d;d=a.y;a=a.x}}}if(a<0||d<0){c=this.getMaxPosition();if(a<0){a+=c.x}if(d<0){d+=c.y}}this.doScrollTo(a,d,b)},updateDirection:function(c){var b=this,a,d;if(!c){a=b.getX();d=b.getY();if(a&&d){c=(d==="scroll"&&a==="scroll")?"both":"auto"}else{if(d){c="vertical"}else{if(a){c="horizontal"}}}b._direction=c}else{if(c==="auto"){a=true;d=true}else{if(c==="vertical"){a=false;d=true}else{if(c==="horizontal"){a=true;d=false}else{if(c==="both"){a="scroll";d="scroll"}}}}b.setX(a);b.setY(d)}},deprecated:{"5":{methods:{getScroller:function(){return this}}},"5.1.0":{methods:{scrollToTop:function(a){return this.scrollTo(0,0,a)},scrollToEnd:function(a){return this.scrollTo(Infinity,Infinity,a)}}}},privates:{convertX:function(a){return a},doHighlight:function(b,a){if(a!==true){Ext.fly(b).highlight(a)}else{Ext.fly(b).highlight()}},fireScrollStart:function(a,d){var c=this,b=c.component;c.invokePartners("onPartnerScrollStart",a,d);if(c.hasListeners.scrollstart){c.fireEvent("scrollstart",c,a,d)}if(b&&b.onScrollStart){b.onScrollStart(a,d)}},fireScroll:function(a,d){var c=this,b=c.component;c.invokePartners("onPartnerScroll",a,d);if(c.hasListeners.scroll){c.fireEvent("scroll",c,a,d)}if(b&&b.onScrollMove){b.onScrollMove(a,d)}},fireScrollEnd:function(a,d){var c=this,b=c.component;c.invokePartners("onPartnerScrollEnd",a,d);if(c.hasListeners.scrollend){c.fireEvent("scrollend",c,a,d)}if(b&&b.onScrollEnd){b.onScrollEnd(a,d)}},invokePartners:function(g,a,e){var c=this._partners,b,d;if(!this.suspendSync){for(d in c){b=c[d];if(!b.suspendSync){b.scroller[g](this,a,e)}}}},suspendPartnerSync:function(){this.suspendSync=(this.suspendSync||0)+1},resumePartnerSync:function(){if(this.suspendSync){this.suspendSync--}},onDomScroll:function(){var c=this,b=c.getPosition(),a=b.x,d=b.y;if(!c.isScrolling){c.isScrolling=true;c.fireScrollStart(a,d)}c.fireScroll(a,d);c.onDomScrollEnd()},onDomScrollEnd:function(){var b=this,a=b.getPosition();b.isScrolling=false;b.fireScrollEnd(a.x,a.y)},onPartnerScroll:function(c,a,d){var b=c._partners[this.getId()].axis;if(b){if(b==="x"){d=null}else{if(b==="y"){a=null}}}this.doScrollTo(a,d,null,true)},onPartnerScrollEnd:Ext.privateFn,onPartnerScrollStart:Ext.privateFn}},1,0,0,0,["scroller.scroller"],[[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable]],[Ext.scroll,"Scroller"],0));(Ext.cmd.derive("Ext.fx.easing.Abstract",Ext.Base,{config:{startTime:0,startValue:0},isEasing:true,isEnded:false,constructor:function(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.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.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.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.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.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.Evented.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.Dom.prototype.destroy.call(this)}},0,0,0,0,0,0,[Ext.util.translatable,"CssTransform"],0));(Ext.cmd.derive("Ext.util.translatable.ScrollPosition",Ext.util.translatable.Dom,{type:"scrollposition",config:{useWrapper:true},getWrapper:function(){var c=this.wrapper,b=this.getElement(),a;if(!c){a=b.getParent();if(!a){return null}if(a.hasCls("x-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.Dom.prototype.destroy.call(this)}},0,0,0,0,0,0,[Ext.util.translatable,"ScrollPosition"],0));(Ext.cmd.derive("Ext.util.translatable.ScrollParent",Ext.util.translatable.Dom,{isScrollParent:true,applyElement:function(a){var b=Ext.get(a);if(b){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.Dom.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.Indicator",Ext.Widget,{config:{axis:null,hideAnimation:true,hideDelay:0,scroller:null,minLength:24},defaultHideAnimation:{to:{opacity:0},duration:300},names:{x:{side:"l",getSize:"getHeight",setLength:"setWidth",translate:"translateX"},y:{side:"t",getSize:"getWidth",setLength:"setHeight",translate:"translateY"}},oppositeAxis:{x:"y",y:"x"},cls:"x-scroll-indicator",applyHideAnimation:function(a){if(a){a=Ext.mergeIf({onEnd:this.onHideAnimationEnd,scope:this},this.defaultHideAnimation,a)}return a},constructor:function(a){var c=this,b;Ext.Widget.prototype.constructor.call(this,a);b=c.getAxis();c.names=c.names[b];c.element.addCls(c.cls+" "+c.cls+"-"+b)},hide:function(){var b=this,a=b.getHideDelay();if(a){b._hideTimer=Ext.defer(b.doHide,a,b)}else{b.doHide()}},setValue:function(o){var m=this,c=m.element,l=m.names,d=m.getAxis(),j=m.getScroller(),h=j.getMaxUserPosition()[d],p=j.getElementSize()[d],k=m.length,b=m.getMinLength(),a=k,g=p-k-m.sizeAdjust,q=Math.round,n=Math.max,e;if(o<0){a=q(n(k+(k*o/p),b));e=0}else{if(o>h){a=q(n(k-(k*(o-h)/p),b));e=g+k-a}else{e=q(o/h*g)}}m[l.translate](e);c[l.setLength](a)},show:function(){var b=this,a=b.element,c=a.getActiveAnimation();if(c){c.end()}if(!b._inDom){b.getScroller().getElement().appendChild(a);b._inDom=true;if(!b.size){b.cacheStyles()}}b.refreshLength();clearTimeout(b._hideTimer);a.setStyle("opacity","")},privates:{cacheStyles:function(){var c=this,b=c.element,a=c.getAxis(),d=c.names;c.size=b[d.getSize]();c.margin=b.getMargin(d.side)},doHide:function(){var b=this.getHideAnimation(),a=this.element;if(b){a.animate(b)}else{a.setStyle("opacity",0)}},hasOpposite:function(){return this.getScroller().isAxisEnabled(this.oppositeAxis[this.getAxis()])},onHideAnimationEnd:function(){this.element.setStyle("opacity","0")},refreshLength:function(){var k=this,j=k.names,d=k.getAxis(),g=k.getScroller(),a=g.getSize()[d],l=g.getElementSize()[d],h=l/a,c=k.margin*2,e=k.hasOpposite()?(c+k.size):c,b=Math.max(Math.round((l-e)*h),k.getMinLength());k.sizeAdjust=e;k.length=b;k.element[j.setLength](b)},translateX:function(a){this.element.translate(a)},translateY:function(a){this.element.translate(0,a)}}},1,["scrollindicator"],["widget","scrollindicator"],{widget:true,scrollindicator:true},["widget.scrollindicator"],0,[Ext.scroll,"Indicator"],0));(Ext.cmd.derive("Ext.scroll.TouchScroller",Ext.scroll.Scroller,{isTouchScroller:true,config:{autoRefresh:true,bounceEasing:{duration:400},elementSize:undefined,indicators:true,fps:"auto",maxAbsoluteVelocity:6,momentumEasing:{momentum:{acceleration:30,friction:0.5},bounce:{acceleration:30,springTension:0.3},minVelocity:1},outOfBoundRestrictFactor:0.5,innerElement:null,size:undefined,slotSnapEasing:{duration:150},slotSnapSize:{x:0,y:0},slotSnapOffset:{x:0,y:0},startMomentumResetTime:300,translatable:{translationMethod:"auto",useWrapper:false}},cls:"x-scroll-container",scrollerCls:"x-scroll-scroller",dragStartTime:0,dragEndTime:0,isDragging:false,isAnimating:false,isMouseEvent:{mousedown:1,mousemove:1,mouseup:1},listenerMap:{touchstart:"onTouchStart",touchmove:"onTouchMove",touchend:"onTouchEnd",dragstart:"onDragStart",drag:"onDrag",dragend:"onDragEnd"},refreshCounter:0,constructor:function(a){var b=this,c="onEvent";b.elementListeners={touchstart:c,touchmove:c,touchend:c,dragstart:c,drag:c,dragend:c,scope:b};b.minPosition={x:0,y:0};b.startPosition={x:0,y:0};b.position={x:0,y:0};b.velocity={x:0,y:0};b.isAxisEnabledFlags={x:false,y:false};b.flickStartPosition={x:0,y:0};b.flickStartTime={x:0,y:0};b.lastDragPosition={x:0,y:0};b.dragDirection={x:0,y:0};Ext.GlobalEvents.on("idle",b.onIdle,b);Ext.scroll.Scroller.prototype.constructor.call(this,a);b.refreshAxes()},applyBounceEasing:function(b){var a=Ext.fx.easing.EaseOut;return{x:Ext.factory(b,a),y:Ext.factory(b,a)}},applyElementSize:function(b){var c=this.getElement(),d,a,e;if(!c){return null}d=c.dom;if(!d){return}if(b==null){a=d.clientWidth;e=d.clientHeight}else{a=b.x;e=b.y}return{x:a,y:e}},applyIndicators:function(g,c){var e=this,b,d,a,h;if(g){if(g===true){b=d={}}else{a=g.x;h=g.y;if(a||h){b=(a==null||a===true)?{}:a;d=(a==null||h===true)?{}:h}else{b=d=g}}if(c){if(b){c.x.setConfig(b)}else{c.x.destroy();c.x=null}if(d){c.y.setConfig(d)}else{c.y.destroy();c.y=null}g=c}else{g={x:null,y:null};if(b){g.x=new Ext.scroll.Indicator(Ext.applyIf({axis:"x",scroller:e},b))}if(d){g.y=new Ext.scroll.Indicator(Ext.applyIf({axis:"y",scroller:e},d))}}}else{if(c){c.x.destroy();c.y.destroy();c.x=null;c.y=null}}return g},applyMomentumEasing:function(b){var a=Ext.fx.easing.BoundMomentum;return{x:Ext.factory(b,a),y:Ext.factory(b,a)}},applyInnerElement:function(a){if(a&&!a.isElement){a=Ext.get(a)}return a},applySize:function(b){var c,e,d,a,g;if(b==null){c=this.getElement();if(!c){return null}e=c.dom;d=this.getInnerElement().dom;a=Math.max(d.scrollWidth,e.clientWidth);g=Math.max(d.scrollHeight,e.clientHeight)}else{if(typeof b==="number"){a=b;g=b}else{a=b.x;g=b.y}}return{x:a,y:g}},applySlotSnapOffset:function(a){if(typeof a=="number"){return{x:a,y:a}}return a},applySlotSnapSize:function(a){if(typeof a=="number"){return{x:a,y:a}}return a},applySlotSnapEasing:function(b){var a=Ext.fx.easing.EaseOut;return{x:Ext.factory(b,a),y:Ext.factory(b,a)}},applyTranslatable:function(b,a){return Ext.factory(b,Ext.util.Translatable,a)},destroy:function(){var c=this,b=c.getElement(),d=c.getInnerElement(),a=c.sizeMonitors;if(a){a.element.destroy();a.container.destroy()}if(b&&!b.isDestroyed){b.removeCls(c.cls)}if(d&&!d.isDestroyed){d.removeCls(c.scrollerCls)}if(c._isWrapped){if(!b.isDestroyed){c.unwrapContent()}d.destroy();if(c.FixedHBoxStretching){d.parent().destroy()}}c.setElement(null);c.setInnerElement(null);Ext.GlobalEvents.un("idle",c.onIdle,c);Ext.destroy(c.getTranslatable());Ext.scroll.Scroller.prototype.destroy.apply(this,arguments)},getPosition:function(){return this.position},refresh:function(a,b){++this.refreshCounter;if(a){this.doRefresh(b)}},updateAutoRefresh:function(a){this.toggleResizeListeners(a)},updateBounceEasing:function(a){this.getTranslatable().setEasingX(a.x).setEasingY(a.y)},updateElementSize:function(){if(!this.isConfiguring){this.refreshAxes()}},updateDisabled:function(a){if(!this.isConfiguring){if(a){this.detachListeners()}else{this.attachListeners()}}},updateElement:function(b,a){var d=this,e=d.getInnerElement(),g=this.FixedHBoxStretching,c;if(!e){e=b.dom.firstChild;if(g&&e){e=e.dom.firstChild}if(!e||e.nodeType!==1||!Ext.fly(e).hasCls(d.scrollerCls)){e=d.wrapContent(b)}d.setInnerElement(e)}if(!g){b.addCls(d.cls)}if(d.isConfiguring){if(!d.getTranslatable().isScrollParent){c=d.elementListeners;c.mousewheel="onMouseWheel";c.scroll={fn:"onElementScroll",delegated:false,scope:d}}}if(!d.getDisabled()){d.attachListeners()}if(!d.isConfiguring){if(d.getAutoRefresh()){d.toggleResizeListeners(true)}d.setSize(null);d.setElementSize(null)}Ext.scroll.Scroller.prototype.updateElement.call(this,b,a)},updateFps:function(a){if(a!=="auto"){this.getTranslatable().setFps(a)}},updateMaxUserPosition:function(){this.snapToBoundary()},updateMinUserPosition:function(){this.snapToBoundary()},updateInnerElement:function(a){if(a){a.addCls(this.scrollerCls)}this.getTranslatable().setElement(a)},updateSize:function(){if(!this.isConfiguring){this.refreshAxes()}},updateTranslatable:function(a){a.setElement(this.getInnerElement());a.on({animationframe:"onAnimationFrame",animationend:"onAnimationEnd",scope:this})},updateX:function(){if(!this.isConfiguring){this.refreshAxes()}},updateY:function(){if(!this.isConfiguring){this.refreshAxes()}},privates:{attachListeners:function(){this.getElement().on(this.elementListeners)},constrainX:function(a){var b=this.getMaxPosition().x;return Math.min(this.getMaxPosition().x,Math.max(a,0))},constrainY:function(b){var a=this.getMaxPosition().y;return Math.min(this.getMaxPosition().y,Math.max(b,0))},convertEasingConfig:function(a){return a},detachListeners:function(){this.getElement().un(this.elementListeners)},doRefresh:function(b){var d=this,c,a;if(d.refreshCounter&&d.getElement()){d.stopAnimation();d.getTranslatable().refresh();if(b){c=b.size;a=b.elementSize;if(c){d.setSize(c)}if(a){d.setElementSize(a)}}else{d.setSize(null);d.setElementSize(null)}d.fireEvent("refresh",d);d.refreshCounter=0}},doScrollTo:function(l,k,b,g){var j=this,h=j.isDragging,a;if(j.isDestroyed||!j.getElement()){return j}g=g||j.isDragging;var m=j.getTranslatable(),c=j.position,n=false,e,d;if(!h||j.isAxisEnabled("x")){if(isNaN(l)||typeof l!="number"){l=c.x}else{if(!g){l=j.constrainX(l)}if(c.x!==l){c.x=l;n=true}}e=j.convertX(-l)}if(!h||j.isAxisEnabled("y")){if(isNaN(k)||typeof k!="number"){k=c.y}else{if(!g){k=j.constrainY(k)}if(c.y!==k){c.y=k;n=true}}d=-k}if(n){if(b){a=function(){j.onScroll()};if(b===true){b={callback:a}}else{if(b.callback){b.callback=Ext.Function.createSequence(b.callback,a)}else{b.callback=a}}m.translateAnimated(e,d,b)}else{m.translate(e,d);j.onScroll()}}return j},getAnimationEasing:function(j,m){if(!this.isAxisEnabled(j)){return null}var o=this,h=o.position[j],d=o.getMinUserPosition()[j],l=o.getMaxUserPosition()[j],b=o.getMaxAbsoluteVelocity(),g=null,c=o.dragEndTime,k=m.flick.velocity[j],p=j==="x",a,n;if(h<d){g=d}else{if(h>l){g=l}}if(p){h=o.convertX(h);g=o.convertX(g)}if(g!==null){n=o.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=o.getMomentumEasing()[j];a={startTime:c,startValue:-h,startVelocity:k*1.5,minMomentumValue:-l,maxMomentumValue:0};if(p){o.convertEasingConfig(a)}n.setConfig(a);return n},getSnapPosition:function(c){var d=this,j=d.getSlotSnapSize()[c],e=null,a,h,g,b;if(j!==0&&d.isAxisEnabled(c)){a=d.position[c];h=d.getSlotSnapOffset()[c];g=d.getMaxUserPosition()[c];b=Math.floor((a-h)%j);if(b!==0){if(a!==g){if(Math.abs(b)>j/2){e=Math.min(g,a+((b>0)?j-b:b-j))}else{e=a-b}}else{e=a-b}}}return e},hideIndicators:function(){var c=this,d=c.getIndicators(),a,b;if(d){if(c.isAxisEnabled("x")){a=d.x;if(a){a.hide()}}if(c.isAxisEnabled("y")){b=d.y;if(b){b.hide()}}}},isAxisEnabled:function(a){this.getX();this.getY();return this.isAxisEnabledFlags[a]},onAnimationEnd:function(){this.snapToBoundary();this.onScrollEnd()},onAnimationFrame:function(c,b,d){var a=this.position;a.x=this.convertX(-b);a.y=-d;this.onScroll()},onAxisDrag:function(d,r){if(!this.isAxisEnabled(d)){return}var s=this,m=s.flickStartPosition,t=s.flickStartTime,k=s.lastDragPosition,o=s.dragDirection,a=s.position[d],p=s.getMinUserPosition()[d],q=s.getMaxUserPosition()[d],h=s.startPosition[d],l=k[d],n=h-r,j=o[d],g=s.getOutOfBoundRestrictFactor(),b=s.getStartMomentumResetTime(),c=Ext.Date.now(),e;if(n<p){n*=g}else{if(n>q){e=n-q;n=q+e*g}}if(n>l){o[d]=1}else{if(n<l){o[d]=-1}}if((j!==0&&(o[d]!==j))||(c-t[d])>b){m[d]=a;t[d]=c}k[d]=n},onDomScroll:function(){var b=this,c,a;if(b.getTranslatable().isScrollParent){c=b.getElement().dom;a=b.position;a.x=c.scrollLeft;a.y=c.scrollTop}Ext.scroll.Scroller.prototype.onDomScroll.call(this)},onDrag:function(c){var a=this,b=a.lastDragPosition;if(!a.isDragging){return}a.onAxisDrag("x",a.convertX(c.deltaX));a.onAxisDrag("y",c.deltaY);a.doScrollTo(b.x,b.y)},onDragEnd:function(d){var c=this,b,a;if(!c.isDragging){return}c.dragEndTime=Ext.Date.now();c.onDrag(d);c.isDragging=false;b=c.getAnimationEasing("x",d);a=c.getAnimationEasing("y",d);if(b||a){c.getTranslatable().animate(b,a)}else{c.onScrollEnd()}},onDragStart:function(n){var o=this,r=o.getDirection(),h=n.absDeltaX,g=n.absDeltaY,m=o.getDirectionLock(),k=o.startPosition,d=o.flickStartPosition,l=o.flickStartTime,j=o.lastDragPosition,c=o.position,b=o.dragDirection,q=c.x,p=c.y,a=Ext.Date.now();o.isDragging=true;if(m&&r!=="both"){if((r==="horizontal"&&h>g)||(r==="vertical"&&g>h)){n.stopPropagation()}else{o.isDragging=false;return}}j.x=q;j.y=p;d.x=q;d.y=p;k.x=q;k.y=p;l.x=a;l.y=a;b.x=0;b.y=0;o.dragStartTime=a;o.isDragging=true;o.onScrollStart()},onElementResize:function(a,b){this.refresh(true,{elementSize:{x:b.width,y:b.height}})},onElementScroll:function(a,b){b.scrollTop=b.scrollLeft=0},onEvent:function(b){var a=this,c=b.browserEvent;if((!a.self.isTouching||a.isTouching)&&((!a.getTranslatable().isScrollParent)||(!a.isMouseEvent[c.type]&&c.pointerType!=="mouse"))&&(a.getY()||a.getX())){a[a.listenerMap[b.type]](b)}},onIdle:function(){this.doRefresh()},onInnerElementResize:function(a,b){this.refresh(true,{size:{x:b.width,y:b.height}})},onMouseWheel:function(l){var m=this,o=l.getWheelDeltas(),d=-o.x,b=-o.y,h=m.position,g=m.getMaxUserPosition(),a=m.getMinUserPosition(),n=Math.max,c=Math.min,k=n(c(h.x+d,g.x),a.x),j=n(c(h.y+b,g.y),a.y);d=k-h.x;b=j-h.y;if(!d&&!b){return}l.stopEvent();m.onScrollStart();m.scrollBy(d,b);m.onScroll();m.onScrollEnd()},onPartnerScrollEnd:function(){this.hideIndicators()},onPartnerScrollStart:function(){this.showIndicators()},onScroll:function(){var e=this,c=e.position,b=c.x,h=c.y,g=e.getIndicators(),a,d;if(g){if(e.isAxisEnabled("x")){a=g.x;if(a){a.setValue(b)}}if(e.isAxisEnabled("y")){d=g.y;if(d){d.setValue(h)}}}e.fireScroll(b,h)},onScrollEnd:function(){var b=this,a=b.position;if(!b.isTouching&&!b.snapToSlot()){b.hideIndicators();Ext.isScrolling=false;b.fireScrollEnd(a.x,a.y)}},onScrollStart:function(){var b=this,a=b.position;b.showIndicators();Ext.isScrolling=true;b.fireScrollStart(a.x,a.y)},onTouchEnd:function(){var a=this;a.isTouching=a.self.isTouching=false;if(!a.isDragging&&a.snapToSlot()){a.onScrollStart()}},onTouchMove:function(a){a.preventDefault()},onTouchStart:function(){this.isTouching=this.self.isTouching=true;this.stopAnimation()},refreshAxes:function(){var e=this,c=e.isAxisEnabledFlags,m=e.getSize(),l=e.getElementSize(),k=e.getIndicators(),b,a,j,h,d,g;if(!m||!l){return}b=Math.max(0,m.x-l.x);a=Math.max(0,m.y-l.y);j=e.getX();h=e.getY();e.setMaxPosition({x:b,y:a});if(j===true||j==="auto"){c.x=!!b}else{if(j===false){c.x=false;d=k&&k.x;if(d){d.hide()}}else{if(j==="scroll"){c.x=true}}}if(h===true||h==="auto"){c.y=!!a}else{if(h===false){c.y=false;g=k&&k.y;if(g){g.hide()}}else{if(h==="scroll"){c.y=true}}}e.setMaxUserPosition({x:c.x?b:0,y:c.y?a:0})},showIndicators:function(){var c=this,d=c.getIndicators(),a,b;if(d){if(c.isAxisEnabled("x")){a=d.x;if(a){a.show()}}if(c.isAxisEnabled("y")){b=d.y;if(b){b.show()}}}},snapToBoundary:function(){if(this.isConfiguring){return}var j=this,h=j.position,c=j.getMinUserPosition(),g=j.getMaxUserPosition(),e=c.x,d=c.y,b=g.x,a=g.y,l=Math.round(h.x),k=Math.round(h.y);if(l<e){l=e}else{if(l>b){l=b}}if(k<d){k=d}else{if(k>a){k=a}}j.doScrollTo(l,k)},snapToSlot:function(){var a=this,c=a.getSnapPosition("x"),b=a.getSnapPosition("y"),d=a.getSlotSnapEasing();if(c!==null||b!==null){a.doScrollTo(c,b,{easingX:d.x,easingY:d.y});return true}return false},stopAnimation:function(){this.getTranslatable().stopAnimation()},toggleResizeListeners:function(a){var c=this,b=c.getElement(),d=a?"on":"un";if(b){b[d]("resize","onElementResize",c);c.getInnerElement()[d]("resize","onInnerElementResize",c)}},unwrapContent:function(){var a=this.getInnerElement().dom,b=this.getElement().dom,c;while((c=a.firstChild)){b.insertBefore(c,a)}},wrapContent:function(a){var b=document.createElement("div"),c=a.dom,d;while(d=c.lastChild){b.insertBefore(d,b.firstChild)}c.appendChild(b);this.setInnerElement(b);this._isWrapped=true;return this.getInnerElement()}}},1,0,0,0,["scroller.touch"],0,[Ext.scroll,"TouchScroller"],0));(Ext.cmd.derive("Ext.scroll.DomScroller",Ext.scroll.Scroller,{isDomScroller:true,constructor:function(a){var b=this;Ext.scroll.Scroller.prototype.constructor.call(this,a)},getMaxPosition:function(){var b=this.getElement(),a=0,d=0,c;if(b&&!b.isDestroyed){c=b.dom;a=c.scrollWidth-c.clientWidth;d=c.scrollHeight-c.clientHeight}return{x:a,y:d}},getMaxUserPosition:function(){var c=this,b=c.getElement(),a=0,e=0,d;if(b&&!b.isDestroyed){d=b.dom;if(c.getX()){a=d.scrollWidth-d.clientWidth}if(c.getY()){e=d.scrollHeight-d.clientHeight}}return{x:a,y:e}},getPosition:function(){var c=this.getElement(),b=0,d=0,a;if(c&&!c.isDestroyed){a=this.getElementScroll(c);b=a.left;d=a.top}return{x:b,y:d}},getSize:function(){var b=this.getElement(),a,c;if(b&&!b.isDestroyed){c=b.dom;a={x:c.scrollWidth,y:c.scrollHeight}}else{a={x:0,y:0}}return a},setSize:Ext.emptyFn,updateElement:function(b,a){this.initXStyle();this.initYStyle();Ext.scroll.Scroller.prototype.updateElement.call(this,b,a)},updateX:function(a){this.initXStyle()},updateY:function(a){this.initYStyle()},privates:{doScrollTo:function(j,h,a){var g=this,c=g.getElement(),d,b,k,l,e;if(c&&!c.isDestroyed){b=this.getElement().dom;l=(j===Infinity);e=(h===Infinity);if(l||e){d=g.getMaxPosition();if(l){j=d.x}if(e){h=d.y}}j=g.convertX(j);if(a){k={};if(h!=null){k.scrollTop=h}if(j!=null){k.scrollLeft=j}c.animate(Ext.mergeIf({to:{scrollTop:h,scrollLeft:j}},a))}else{if(h!=null){b.scrollTop=h}if(j!=null){b.scrollLeft=j}}}},getElementScroll:function(a){return a.getScroll()},initXStyle:function(){var b=this.getElement(),a=this.getX();if(!a){a="hidden"}else{if(a===true){a="auto"}}if(b){b.setStyle("overflow-x",a)}},initYStyle:function(){var a=this.getElement(),b=this.getY();if(!b){b="hidden"}else{if(b===true){b="auto"}}if(a){a.setStyle("overflow-y",b)}},stopAnimation:function(){var a=this.getElement().getActiveAnimation();if(a){a.end()}}}},1,0,0,0,["scroller.dom"],0,[Ext.scroll,"DomScroller"],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:"x-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} ','x-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,_layerCls:"x-layer",_fixedLayerCls:"x-fixed-layer",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 j=this,d={},b=j.protoEl,h=j.el,e,k,c,g,a;j.finishRenderChildren();j._renderState=4;if(j.contentEl){c="x-";g=c+"hidden-";a=j.contentEl=Ext.get(j.contentEl);a.component=j;a.removeCls([c+"hidden",g+"display",g+"offsets"]);j.getContentTarget().appendChild(a.dom)}b.writeTo(d);k=d.removed;if(k){h.removeCls(k)}k=d.cls;if(k.length){h.addCls(k)}k=d.style;if(d.style){h.setStyle(k)}j.protoEl=null;if(!j.ownerCt){j.updateLayout()}if(!(j.x&&j.y)&&(j.pageX||j.pageY)){j.setPagePosition(j.pageX,j.pageY)}if(j.disableOnRender){j.onDisable()}else{if(j.enableOnRender){j.onEnable()}}if(Ext.enableAria){j.ariaApplyAfterRenderAttributes()}e=j.controller;if(e&&e.afterRender){e.afterRender(j)}},afterFirstLayout:function(d,m){var g=this,l=g.x,j=g.y,k=g.defaultAlign,b=g.alignOffset,e,c,a,h,n;if(!g.ownerLayout){c=l!==undefined;a=j!==undefined}if(g.floating&&!g.preventDefaultAlign&&(!c||!a)){if(g.floatParent){h=g.floatParent.getTargetEl().getViewRegion();n=g.el.getAlignToXY(g.alignTarget||g.floatParent.getTargetEl(),k,b);h.x=n[0]-h.x;h.y=n[1]-h.y}else{n=g.el.getAlignToXY(g.alignTarget||g.container,k,b);h=g.container.translateXY(n[0],n[1])}l=c?l:h.x;j=a?j:h.y;c=a=true}if(c||a){g.setPosition(l,j)}g.onBoxReady(d,m);e=g.controller;if(e&&e.boxReady){e.boxReady(g)}},beforeRender:function(){var d=this,e=d.floating,c=d.getComponentLayout(),b,a;d._renderState=1;a=d.controller;if(a&&a.beforeRender){a.beforeRender(d)}d.initBindable();if(d.renderConfigs){d.flushRenderConfigs()}if(d.reference){d.publishState()}if(e){d.addCls(d.fixed?d._fixedLayerCls:d._layerCls);b=e.cls;if(b){d.addCls(b)}}d.frame=d.frame||d.alwaysFramed;if(!c.initialized){c.initLayout()}d.initOverflow();d.setUI(d.ui);if(d.disabled){d.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.wrapPrimaryEl(d);d=e.el}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 r=this,k=r.frameInfoCache,c=r.getFramingInfoCls()+"-frameInfo",s=k[c],j,n,h,t,d,g,l,m,u,q,b,o,a,e,p;if(s==null){j=Ext.fly(r.getStyleProxy(c),"frame-style-el");n=j.getStyle("font-family");if(n){n=n.split("-");h=parseInt(n[1],10);t=parseInt(n[2],10);d=parseInt(n[3],10);g=parseInt(n[4],10);m=parseInt(n[5],10);u=parseInt(n[6],10);q=parseInt(n[7],10);b=parseInt(n[8],10);o=parseInt(n[9],10);a=parseInt(n[10],10);e=parseInt(n[11],10);p=parseInt(n[12],10);s={table:n[0].charAt(0)==="t",vertical:n[0].charAt(1)==="v",top:h,right:t,bottom:d,left:g,width:g+t,height:h+d,border:{top:m,right:u,bottom:q,left:b,width:b+u,height:m+q},padding:{top:o,right:a,bottom:e,left:p,width:p+a,height:o+e}}}else{s=false}k[c]=s}r.frame=!!s;r.frameSize=s;return s},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 d=this,a=d.getOverflowStyle(),g=d.scrollFlags,e=d.getOverflowEl(),c=(g.y||g.x),b=d.touchScroll=(c&&Ext.supports.touchScroll);if(!c||!e||!e.isElement){return}d.overflowInited=true;if(b===2){e.setStyle("overflow","hidden")}else{e.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,fireIdleEvent:false})}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",animateShadow:false,constrain:false,config:{activeCounter:0,alwaysOnTop:false},preventDefaultAlign:false,_visModeMap:{visibility:1,display:2,offsets:3},constructor:function(){var d=this,c=d.el,e=d.shadow,a,b;if(e){b={mode:(e===true)?"sides":e};a=d.shadowOffset;if(a){b.offset=a}b.animate=d.animateShadow;b.fixed=d.fixed;c.enableShadow(b,false)}if(d.shim||Ext.useShims){c.enableShim({fixed:d.fixed},false)}c.setVisibilityMode(d._visModeMap[d.hideMode]);if(d.modal&&!(Ext.enableFocusManager)){d.mon(d.el,{keydown:d.onKeyDown,scope:d})}d.mon(d.el,{mousedown:d.onMouseDown,scope:d,capture:true});d.registerWithOwnerCt();d.initHierarchyEvents()},initFloatConstrain:function(){var a=this,b=a.floatParent;if((a.constrain||a.constrainHeader)&&!a.constrainTo){a.constrainTo=b?b.getTargetEl():a.container}},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.floatParent=b||a;c.initFloatConstrain();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(h){var c=this,a=c.focusTask,b=h.parentEvent,d=b&&b.type==="touchstart",g,j,k;if(c.floating&&(!a||!a.id)){g=h.target;j=c.el.dom;while(!d&&g&&g!==j){if(Ext.fly(g).isFocusable()){d=true}g=g.parentNode}k=Ext.WindowManager.getActive()===c&&(g===j||d);if(!k){c.toFront(d)}}},onBeforeFloatLayout:function(){this.el.preventSync=true},onAfterFloatLayout:function(){var a=this.el;if(a.shadow||a.shim){a.setUnderlaysVisible(true);a.syncUnderlays()}},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)}},updateActiveCounter:function(a){var b=this.zIndexParent;if(b&&this.bringParentToFront!==false){b.setActiveCounter(++Ext.ZIndexManager.activeCounter)}if(b=this.zIndexManager){b.onComponentUpdate(this)}},updateAlwaysOnTop:function(a){var b=this.zIndexManager;if(b){b.onComponentUpdate(this)}},toFront:function(b){var a=this;if(a.zIndexManager.bringToFront(a,b||!a.focusOnToFront)){if(a.hasListeners.tofront){a.fireEvent("tofront",a,a.el.getZIndex())}}return a},setActive:function(c,d,a){var b=this;if(c){if(b.el.shadow&&!b.maximized){b.el.enableShadow(null,true)}if(a){if(!b.el.contains(Ext.Element.getActiveElement())){b.focus()}}b.fireEvent("activate",b)}else{b.fireEvent("deactivate",b)}},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.util.Focusable",Ext.Base,{mixinId:"focusable",focusable:false,focusCls:"focus",initFocusable:Ext.emptyFn,initFocusableEvents:function(){this.initFocusableElement()},destroyFocusable:function(){this.focusListeners=Ext.destroy(this.focusListeners);delete this.focusTask},enableFocusable:Ext.emptyFn,disableFocusable:function(){var c=this,b=c.focusCls,a;a=c.getFocusClsEl();if(b&&a){a.removeCls(c.removeClsWithUI(b,true))}},isFocusable:function(a){var c=this,b;if(!c.focusable&&(!c.isContainer||!a)){return false}b=c.getFocusEl();if(b&&c.canFocus()){return b.isFocusable(a)}return false},canFocus:function(){var a=this;return(a.isContainer||a.focusable)&&a.rendered&&!a.destroying&&!a.isDestroyed&&!a.disabled&&a.isVisible(true)},focus:function(g,c,j,d){var e=this,a,h,b;if((!e.focusable&&!e.isContainer)||e.isDestroyed||e.destroying){return}if(c){e.getFocusTask().delay(Ext.isNumber(c)?c:10,e.focus,e,[g,false,j,d]);return e}e.cancelFocus();if(e.canFocus()&&(a=e.getFocusEl())){if(a.isComponent){return a.focus(g,c,j,d)}h=a.dom;if(h){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{if(h.select){h.select()}else{if(e.selectText){e.selectText()}}}}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},cancelFocus:function(){var a=this.getFocusTask();if(a){a.cancel()}},beforeBlur:Ext.emptyFn,onBlur:function(g){var d=this,b=d.focusableContainer,c=d.focusCls,a;if(!d.focusable||d.destroying){return}d.beforeBlur(g);if(b){b.beforeFocusableChildBlur(d,g)}a=d.getFocusClsEl();if(c&&a){a.removeCls(d.removeClsWithUI(c,true))}if(d.validateOnBlur){d.validate()}d.hasFocus=false;d.fireEvent("blur",d,g);d.postBlur(g);if(b){b.afterFocusableChildBlur(d,g)}},postBlur:Ext.emptyFn,beforeFocus:Ext.emptyFn,onFocus:function(g){var d=this,b=d.focusableContainer,c=d.focusCls,a;if(!d.focusable){return}if(d.canFocus()){d.beforeFocus(g);if(b){b.beforeFocusableChildFocus(d,g)}a=d.getFocusClsEl();if(c&&a){a.addCls(d.addClsWithUI(c,true))}if(!d.hasFocus){d.hasFocus=true;d.fireEvent("focus",d,g)}d.postFocus(g);if(b){b.afterFocusableChildFocus(d,g)}}},postFocus:Ext.emptyFn,getTabIndex:function(){var c=this,b,a;if(!c.focusable){return}b=c.getFocusEl();if(b){if(b.isComponent){a=b.getTabIndex()}else{if(b.isElement){a=b.getAttribute(Ext.Element.tabIndexAttributeName)}else{return}}c.tabIndex=a}else{a=c.tabIndex}return a-0},setTabIndex:function(c){var b=this,a;if(!b.focusable){return}b.tabIndex=c;a=b.getFocusEl();if(a){if(a.isComponent){a.setTabIndex(c)}else{if(a.isElement){a.set({tabindex:c})}}}},onFocusEnter:function(b){var a=this;a.previousFocus=b.relatedTarget;a.containsFocus=true;a.fireEvent("focusenter",a,b)},onFocusLeave:function(b){var a=this;a.previousFocus=null;a.containsFocus=false;a.fireEvent("focusleave",a,b)},privates:{initFocusableElement:function(){var d=this,a=d.tabIndex,c=d.getFocusEl(),b;if(c&&!c.isComponent){b=c.needsTabIndex();if(b||a!=null){c.dom.setAttribute("tabindex",a)}c.dom.setAttribute(Ext.Component.componentIdAttribute,d.id)}},getFocusEl:function(){return this.element||this.el},getFocusClsEl:function(){return this.getFocusEl()},getFocusTask:function(){if(!this.focusTask){this.focusTask=Ext.focusTask}return this.focusTask},blur:function(){var b=this,a;if(!b.focusable||!b.rendered){return}a=b.getFocusEl();if(a){b.blurring=true;a.blur();delete b.blurring}return b},disableTabbing:function(){var c=this,b=c.el,a;if(!c.focusable){return}a=c.getFocusEl();if(b){b.saveChildrenTabbableState()}if(a){a=a.isComponent?a.getFocusEl():a;a.saveTabbableState()}},enableTabbing:function(){var c=this,b=c.el,a;if(!c.focusable){return}a=c.getFocusEl();if(a){a=a.isComponent?a.getFocusEl():a;a.restoreTabbableState()}if(b){b.restoreChildrenTabbableState()}}}},0,0,0,0,0,0,[Ext.util,"Focusable"],function(){if(!Ext.focusTask){Ext.focusTask=new Ext.util.DelayedTask()}}));(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,maxHeight:null,maxWidth:null,minHeight:null,minWidth:null,scrollable:null},defaultBindProperty:"html",alignTarget:null,autoRender:false,autoShow:false,baseCls:"x-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:"x-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:"x-border-box",componentLayoutCounter:0,contentPaddingProperty:"padding",deferLayouts:false,frameSize:null,horizontalPosProp:"left",isComponent:true,_isLayoutRoot:false,layoutSuspendCount:0,liquidLayout:false,maskOnDisable:true,offsetsCls:"x-hidden-offsets",rendered:false,rootCls:"x-body",scrollerCls:"x-scroll-scroller",scrollerSelector:".x-scroll-scroller",_scrollFlags:{auto:{auto:{overflowX:"auto",overflowY:"auto",x:true,y:true,both:true},"false":{overflowX:"auto",overflowY:"hidden",x:true,y:false,both:false},scroll:{overflowX:"auto",overflowY:"scroll",x:true,y:true,both:true}},"false":{auto:{overflowX:"hidden",overflowY:"auto",x:false,y:true,both:false},"false":{overflowX:"hidden",overflowY:"hidden",x:false,y:false,both:false},scroll:{overflowX:"hidden",overflowY:"scroll",x:false,y:true,both:false}},scroll:{auto:{overflowX:"scroll",overflowY:"auto",x:true,y:true,both:true},"false":{overflowX:"scroll",overflowY:"hidden",x:true,y:false,both:false},scroll:{overflowX:"scroll",overflowY:"scroll",x:true,y:true,both:true}},none:{overflowX:"",overflowY:"",x:false,y:false,both:false}},_scrollableCfg:{x:{x:true,y:false},y:{x:false,y:true},horizontal:{x:true,y:false},vertical:{x:false,y:true},both:{x:true,y:true},"true":{x:true,y:true}},validIdRe:Ext.validIdRe,constructor:function(a){var h=this,c,g,j,e,l,d,b,k;a=a||{};if(a.initialConfig){if(a.isAction){h.baseAction=a}a=a.initialConfig}else{if(a.tagName||a.dom||Ext.isString(a)){a={applyTo:a,id:a.id||a}}}h.initialConfig=a;h.getId();h.protoEl=new Ext.util.ProtoElement();h.initConfig(a);if(h.scrollable==null){l=h.autoScroll;if(l){k=!!l}else{d=h.overflowX;b=h.overflowY;if(d||b){k={x:(d&&d!=="hidden")?d:false,y:(b&&b!=="hidden")?b:false}}}if(k){h.setScrollable(k)}}j=h.xhooks;if(j){delete h.xhooks;Ext.override(h,j)}h.mixins.elementCt.constructor.call(h);h.setupProtoEl();if(h.cls){h.initialCls=h.cls;h.protoEl.addCls(h.cls)}if(h.style){h.initialStyle=h.style;h.protoEl.setStyle(h.style)}h.renderData=h.renderData||{};h.initComponent();if(!h.preventRegister){Ext.ComponentManager.register(h)}h.mixins.state.constructor.call(h);h.addStateEvents("resize");e=h.getController();if(e){e.init(h)}if(h.plugins){for(c=0,g=h.plugins.length;c<g;c++){h.plugins[c]=h.initPlugin(h.plugins[c])}}h.loader=h.getLoader();if(h.renderTo){h.render(h.renderTo)}if(h.autoShow&&!h.initOwnerCt){h.show()}if(h.baseAction){h.baseAction.addComponent(h)}},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()}},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=["x-"+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=["x-"+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,c){var d=this,b=d.focusableContainer;d.hiddenByLayout=null;if(this.ownerLayout){this.updateLayout({isRoot:false})}Ext.callback(a,c||d);d.fireHierarchyEvent("hide");d.fireEvent("hide",d);if(b){b.onFocusableChildHide(d)}},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)},applyScrollable:function(b,d){var a=this,g=a.rendered,e,c;if(b){if(b===true||typeof b==="string"){e=a._scrollableCfg[b];b=e}if(d){d.setConfig(b);b=d}else{b=Ext.Object.chain(b);if(g){b.element=a.getOverflowEl();c=a.getScrollerEl();if(c){b.innerElement=c}}b.autoRefresh=false;if(Ext.supports.touchScroll===1){b.translatable={translationMethod:"scrollparent"};b.indicators=false}b=Ext.scroll.Scroller.create(b);b.component=a}}else{if(d){d.setConfig({x:false,y:false});d.destroy()}}if(a.rendered){a.getOverflowStyle();a.updateLayout()}return b},beforeComponentLayout:function(){return true},beforeDestroy: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},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 g=this,c=g.renderSelectors,b=g.getConfig("viewModel",true),h=g.getConfig("session",true),a,e,d;if(!g.isDestroyed){if(!g.hasListeners.beforedestroy||g.fireEvent("beforedestroy",g)!==false){g.destroying=true;e=g.floatParent||g.ownerCt;if(g.floating){delete g.floatParent;if(g.zIndexManager){g.zIndexManager.unregister(g);g.zIndexManager=null}}g.removeBindings();g.beforeDestroy();if(b&&b.isViewModel){b.destroy();g.viewModel=null}if(h&&h.isSession){if(h.getAutoDestroy()){h.destroy()}g.session=null}if(e&&e.remove){e.remove(g,false)}g.stopAnimation();g.onDestroy();Ext.destroy(g.plugins);g.componentLayout=null;if(g.hasListeners.destroy){g.fireEvent("destroy",g)}if(!g.preventRegister){Ext.ComponentManager.unregister(g)}g.mixins.state.destroy.call(g);g.clearListeners();if(g.rendered){if(!g.preserveElOnDestroy){g.el.destroy()}g.mixins.elementCt.destroy.call(g);if(c){for(a in c){if(c.hasOwnProperty(a)){d=g[a];if(d){delete g[a];d.destroy()}}}}g.data=g.el=g.frameBody=g.rendered=null}g.destroying=false;g.isDestroyed=true}}},disable:function(b){var c=this,a=c.focusableContainer;c.enableOnRender=false;c.addCls(c.disabledCls);if(c.rendered){c.onDisable()}else{c.disableOnRender=true}c.disabled=true;if(b!==true){delete c.resetDisable;c.fireEvent("disable",c)}if(a){a.onFocusableChildDisable(c)}return c},enable:function(b){var c=this,a=c.focusableContainer;c.disableOnRender=false;c.removeCls(c.disabledCls);if(c.rendered){c.onEnable()}else{c.enableOnRender=true}c.disabled=false;delete c.resetDisable;if(b!==true){c.fireEvent("enable",c)}if(a){a.onFocusableChildEnable(c)}return c},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]}}},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]}}return null},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.getScrollable();return a?a.getPosition().x:0},getScrollY:function(){var a=this.getScrollable();return a?a.getPosition().y:0},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 b=this.rendered?this.el:this.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){if(d.floating){d.setActive(false)}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()}c.pluginsInitialized=true;if(b!=null||a!=null){c.setSize(b,a)}if(c.listeners){c.on(c.listeners);c.listeners=null}if(c.focusable){c.initFocusable()}},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])}}}}if(e.focusable){e.initFocusableEvents()}},is:function(a){return Ext.ComponentQuery.is(this,a)},isDescendantOf:function(a){var b;for(b=this.getRefOwner();b&&b!==a;b=b.getRefOwner()){}return b||null},isAncestor:function(a){while(a){if(a.getRefOwner()===this){return true}a=a.getRefOwner()}},isDisabled:function(){return this.disabled},isDraggable:function(){return !!this.draggable},isDroppable:function(){return !!this.droppable},isFloating:function(){return this.floating},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},isLayoutChild:function(a){return !this.floating&&!!this.up(a)},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]},isMasked:function(a){var b=this;return b.masked||(b.loadMask&&b.loadMask.isVisible())||(a&&!!b.getInherited().masked)},setMasked:function(c){var b=this,a=b.focusableContainer;if(c){b.masked=true;b.getInherited().masked=c}else{b.masked=false;delete b.getInherited().masked}if(a){a.onFocusableChildMasked(b,c)}return 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);this.setMasked(true)},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(c,b){var d=this,a=d.scrollable;if(d.resizable){d.initResizable(d.resizable)}if(d.draggable){d.initDraggable()}if(a){if(d.touchScroll){a.setInnerElement(d.getScrollerEl())}a.setElement(d.getOverflowEl())}if(d.hasListeners.boxready){d.fireEvent("boxready",d,c,b)}},onDestroy:function(){var c=this,b=c.controller,a=c.focusableContainer;if(c.bind){c.removeBindings()}if(b){b.destroy()}c.controller=null;if(c.rendered){Ext.destroy(c.dd,c.resizer,c.proxy,c.proxyWrap,c.resizerComponent,c.scrollable,c.contentEl)}if(a){a.onFocusableChildDestroy(c)}if(c.focusable){c.destroyFocusable()}Ext.destroy(c.componentLayout,c.loadMask,c.floatingDescendants)},onDisable:function(){var a=this,b,c;if(a.focusable){a.disableFocusable()}if(a.maskOnDisable){b=a.el.dom;c=b.nodeName;if(a.disabledRe.test(c)){b.disabled=true}if(!a.nonMaskableRe.test(c)){a.mask()}}},onEnable:function(){var a=this,b,c;if(a.focusable){a.enableFocusable()}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,b,g){var h=this,d,e,c,a=h.previousFocus;h.previousFocus=null;if(h.floating&&a&&h.containsFocus){if(!a.isComponent){a=Ext.fly(a)}if(Ext.isIE8||a.isFocusable()){a.focus()}}j=h.getAnimateTarget(j);if(!h.ghost){j=null}if(j){c={x:j.getX(),y:j.getY(),width:j.dom.offsetWidth,height:j.dom.offsetHeight};d=h.ghost();d.el.stopAnimation();e=h.getSize();d.el.animate({to:c,listeners:{afteranimate:function(){delete d.componentLayout.lastComponentSize;d.el.hide();d.setHiddenState(true);d.el.setSize(e);h.afterHide(b,g)}}})}h.el.hide();if(!j){h.afterHide(b,g)}},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,c){var d=this,b=d.focusableContainer;if(d.floating){d.onFloatShow()}Ext.callback(a,c||d);d.fireEvent("show",d);if(b){b.onFocusableChildShow(d)}delete d.hiddenByLayout},onShowVeto: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(c,b,d){var a=this.getScrollable();if(a){a.scrollBy(c,b,d)}},scrollTo:function(b,d,c){var a=this.getScrollable();if(a){a.scrollTo(b,d,c)}},setAutoScroll:function(a){this.setScrollable(!!a);return this},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.margin=c;a.margin$=null;a.getEl().setStyle("margin",c);if(!b){a.updateLayout(a._notAsLayoutRoot)}}else{a.margin=c}},setOverflowXY:function(b,a){this.setScrollable({x:(b&&b!=="hidden")?b:false,y:(a&&a!=="hidden")?a:false});return this},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(b,c){var a=this.getScrollable();if(a){a.scrollTo(b,null,c)}},setScrollY:function(c,b){var a=this.getScrollable();if(a){a.scrollTo(null,c,b)}},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(c._notAsLayoutRoot)}return c},setStyle:function(c,b){var a=this.el||this.protoEl;a.setStyle(c,b);return this},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();this.setMasked(false)},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(c,g,k){var j=this,l=(j.tpl&&!Ext.isString(c)),h=j.getScrollable(),b=j.focusableContainer,e,a,d;if(l){j.data=(c&&c.isEntity)?c.getData(true):c}else{j.html=Ext.isObject(c)?Ext.DomHelper.markup(c):c}if(j.rendered){e=j.getSizeModel();a=e.width.shrinkWrap||e.height.shrinkWrap;if(j.isContainer){d=j.layout.getRenderTarget();a=a||j.items.items.length>0}else{d=j.touchScroll?j.getScrollerEl():j.getTargetEl()}if(l){j.tpl[j.tplWriteMode](d,j.data||{})}else{d.setHtml(j.html,g,k)}if(a){j.updateLayout()}if(h){h.refresh(true)}if(b){b.onFocusableChildUpdate(j)}}},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},_notAsLayoutRoot:{isRoot:false},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)}}},updateMaxHeight:function(b,a){this.changeConstraint(b,a,"min","max-height","height")},updateMaxWidth:function(b,a){this.changeConstraint(b,a,"min","max-width","width")},updateMinHeight:function(b,a){this.changeConstraint(b,a,"max","min-height","height")},updateMinWidth:function(a,b){this.changeConstraint(a,b,"max","min-width","width")},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:{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)}}}}},changeConstraint:function(h,c,a,e,b){var g=this,d=g[b];if(h!=null&&typeof d==="number"){g[b]=Math[a](d,h)}if(g.liquidLayout){if(h!=null){g.setStyle(e,h+"px")}else{if(c){g.setStyle(e,"")}}}if(g.rendered){g.updateLayout()}},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},doAddListener:function(d,l,m,o,b,a,e){var k=this,j,h,c,n,g;if(Ext.isObject(l)||(o&&o.element)){if(o.element){n=o.element;j={};j[d]=l;if(m){j.scope=m}c=k.$elementEventOptions;for(h in o){if(c[h]){j[h]=o[h]}}}else{j=l;n=d}g=k[n];if(g&&g.isObservable){k.mon(g,j)}else{k.afterRenderEvents=k.afterRenderEvents||{};if(!k.afterRenderEvents[n]){k.afterRenderEvents[n]=[]}k.afterRenderEvents[n].push(j)}return}k.mixins.observable.doAddListener.call(k,d,l,m,o,b,a,e)},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},getOverflowEl:function(){return this.getTargetEl()},getOverflowStyle:function(){var d=this,b=d.getScrollable(),c=d._scrollFlags,a,g,e;if(b){a=b.getX();if(a===true){a="auto"}g=b.getY();if(g===true){g="auto"}e=c[a][g]}else{e=c.none}d.scrollFlags=e;return{overflowX:e.overflowX,overflowY:e.overflowY}},getPlugins:function(){var a=this.plugins;a=(a&&a.processed)?a:this.constructPlugins();return a||null},getProxy:function(){var a=this,b;if(!a.proxy){b=Ext.getBody();a.proxy=a.el.createProxy("x-proxy-el",b,true)}return a.proxy},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"x-"+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],c=b.getComponentLayout().targetCls;if(c){a.push(c)}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.constrain||(a&&a.constrain))?(b.constrainTo||(b.floatParent?b.floatParent.getTargetEl():b.container)):undefined,handles:b.resizeHandles},a);a.target=b;b.resizer=new Ext.resizer.Resizer(a)},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)}}}},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},owns:function(b){var a=false,c;if(b.isEvent){b=b.target}else{if(b.isElement){b=b.dom}}c=Ext.ComponentManager.byElement(b);if(c){a=(c===this)||(!!c.up(this))}return a},parseBox:function(a){return Ext.Element.parseBox(a)},refreshScroll:function(){var a=this.getScrollable();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(d){var c=this,b=c.getInherited(),a=c.zIndexManager;c.hidden=d;if(d){b.hidden=true}else{delete b.hidden}if(a){a.onComponentShowHide(c)}},setupProtoEl:function(){var a=this.initCls();this.protoEl.addCls(a)},wrapPrimaryEl:function(c){var b=this,a=b.el;if(!a||!a.isElement){b.el=Ext.get(c)}if(b.floating){this.mixins.floating.constructor.call(this)}}},deprecated:{5:{methods:{addClass:"addCls",doComponentLayout:function(){this.updateLayout();return this},removeClass:"removeCls",forceComponentLayout:"updateLayout",setDocked:"setDock"}}}},1,["box","component"],["component","box"],{component:true,box: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.util.Focusable.prototype.mixinId||Ext.util.Focusable.$className,Ext.util.Focusable]],[Ext,"Component",Ext,"AbstractComponent"],function(a){(a.prototype.$elementEventOptions=Ext.Object.chain(Ext.Element.prototype.$eventOptions)).element=1;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.define("Ext.overrides.app.domain.Component",{override:"Ext.app.domain.Component"},function(a){a.monitor(Ext.Component)});(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",constructor:function(){var a=this;a.callParent();a.monitor(Ext.GlobalEvents)},listen:function(b,a){this.callParent([{global:b},a])},match:Ext.returnTrue},1,0,0,0,0,0,[Ext.app.domain,"Global"],0));(Ext.cmd.derive("Ext.app.BaseController",Ext.Base,{isController:true,config:{id:null,control:null,listen:null,routes:null,before:null},constructor:function(a){var b=this;Ext.apply(b,a);delete b.control;delete b.listen;b.eventbus=Ext.app.EventBus;b.mixins.observable.constructor.call(b,a);b.ensureId()},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){this.ensureId();if(a){this.control(a)}},updateListen:function(a){this.ensureId();if(a){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 b=this,a=b.eventbus;Ext.app.route.Router.disconnectAll(b);if(a){a.unlisten(b);b.eventbus=null}b.clearListeners();b.callParent()},redirectTo:function(b,c){if(b.isModel){b=b.toUrl()}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,[[Ext.mixin.Observable.prototype.mixinId||Ext.mixin.Observable.$className,Ext.mixin.Observable]],[Ext.app,"BaseController"],0));(Ext.cmd.derive("Ext.app.Util",Ext.Base,{},0,0,0,0,0,0,[Ext.app,"Util"],function(){Ext.apply(Ext.app,{namespaces:{Ext:{}},addNamespaces:function(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.getNamespace=Ext.app.getNamespace}));(Ext.cmd.derive("Ext.util.CollectionKey",Ext.Base,{isCollectionKey:true,observerPriority:-200,config:{collection:null,keyFn:null,property:null,rootProperty:null,unique:true},generation:0,map:null,mapRebuilds:0,constructor:function(a){this.initConfig(a)},get:function(a){var b=this.map||this.getMap();return b[a]||null},clear:function(){this.map=null},getRootProperty:function(){var b=this,a=(arguments.callee.$previous||Ext.Base.prototype.getRootProperty).call(this);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,$endUpdatePriority:1001,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.requestedIndex=c.length;c.splice(c.length,0,a);delete c.requestedIndex;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 c=this,d=c.generation,a=d?c.items:[],b,e;if(d){c.items=[];c.length=0;c.map={};c.indices={};c.generation++;b=c.getExtraKeys();if(b){for(e in b){b[e].clear()}}}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.requestedIndex=c;d.splice(c,0,a);delete d.requestedIndex;b=(a.length===1)?a[0]:a}return b},itemChanged:function(v,h,n,o){var w=this,c=n===0||!!n,k=w.filtered&&w.getAutoFilter(),e=false,d=0,q=w.items,m=w.length-1,a=w.sorted&&m>0,s=w.getSource(),x,r=0,j,l=false,b,p=false,u,t,g;if(s&&!s.updating){s.itemChanged(v,h,n,o)}else{t=w.getKey(v);if(k){j=w.indexOfKey(c?n:t);p=(j<0);l=w.isItemFiltered(v);e=(p!==l)}if(e){if(l){r=[v];b=-1}else{x=[v];b=w.length}}else{if(a&&!l){if(!k){j=w.indexOfKey(c?n:t)}g=w.getSortFn();if(j&&g(q[j-1],q[j])>0){d=-1;b=Ext.Array.binarySearch(q,v,0,j,g)}else{if(j<m&&g(q[j],q[j+1])>0){d=1;b=Ext.Array.binarySearch(q,v,j+1,g)}}if(d){x=[v]}}}u={item:v,key:t,index:b,filterChanged:e,keyChanged:c,indexChanged:!!d,filtered:l,oldIndex:j,newIndex:b,wasFiltered:p,meta:o};if(c){u.oldKey=n}if(h){u.modified=h}w.beginUpdate();w.notify("beforeitemchange",[u]);if(c){w.updateKey(v,n)}if(x||r){w.splice(b,r,x)}if(d>0){u.newIndex--}else{if(d<0){u.oldIndex++}}w.notify(l?"filtereditemchange":"itemchange",[u]);w.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},replace:function(b){var a=this.indexOf(b);if(a===-1){this.add(b)}else{this.insert(a,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,g)}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);b=m.indices;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;r.atItem=c===0?null:s[c-1];++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--}}}},findInsertIndex:function(d){var e=this.getSource(),g=e.items,b=e.indexOf(d)-1,c,a;while(b>-1){c=g[b];a=this.indexOf(c);if(a>-1){return a+1}--b}return 0},onCollectionAdd:function(a,b){var l=this,o=b.atItem,k=b.items,g=l.requestedIndex,j,h,c,e,m,d;if(!l.sorted){if(g!==undefined){h=g}else{if(o){h=l.indexOf(o);if(h===-1){h=l.findInsertIndex(k[0])}else{++h}}else{h=0}}}if(l.getAutoFilter()&&l.filtered){for(e=0,d=k.length;e<d;++e){m=k[e];if(l.isItemFiltered(m)){if(!c){c=k.slice(0,e)}if(!j){j=[]}j.push(m)}else{if(c){c.push(m)}}}}l.splice((h<0)?l.length:h,0,c||k);if(j){l.notify("filteradd",[j])}},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,a.meta)},onCollectionFilteredItemChange:null,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",filtereditemchange:"onCollectionFilteredItemChange",refresh:"onCollectionRefresh",remove:"onCollectionRemove",beforesort:"beforeCollectionSort",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;if(d.length>1){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,a){var g=this,d=a||{},c,b,h;for(b in e){h=e[b];if(!h.isCollectionKey){c={collection:g};if(Ext.isString(h)){c.property=h}else{Ext.apply(c,h)}h=new Ext.util.CollectionKey(c)}d[b]=g[b]=h;h.name=b}return d},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",scope:c,priority:c.$endUpdatePriority});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;a.notify("beforesort",[a.getSorters()]);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 c=this,a=c.getGroups(),e=c.getSorters(),d;c.onSorterChange();c.grouped=!!b;if(b){if(!a){a=new Ext.util.GroupCollection({itemRoot:c.getRootProperty()});c.addObserver(a);c.setGroups(a)}a.setGrouper(b);d=true}else{if(a){c.removeObserver(a);a.destroy()}c.setGroups(null)}if(!e.updating){c.onEndUpdateSorters(e)}if(d){a.onCollectionRefresh(c)}},updateSorters:function(a,b){var c=this;if(b){b.un("endupdate","onEndUpdateSorters",c)}if(a){a.on({endupdate:"onEndUpdateSorters",scope:c,priority:c.$endUpdatePriority});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(k,s){var r=this,q=r.map,g=k.length,d=0,l=r.items,t=l.length,j=[],h=0,n=[],a=r.getSorters(),m,c,o,e,p,b;r.items=n;for(b=0;b<g;b=c){e=k[b];for(;d<t;++d){if(a.sortFn(e,p=l[d])<0){break}n.push(p)}if(d===t){j[h++]={at:n.length,itemAt:n[n.length-1],items:(m=[])};if(h>1){j[h-2].next=j[h-1]}for(;b<g;++b){m.push(e=k[b]);n.push(e)}break}j[h++]={at:n.length,itemAt:n[n.length-1],items:(m=[e])};if(h>1){j[h-2].next=j[h-1]}n.push(e);for(c=b+1;c<g;++c){if(a.sortFn(e=k[c],p)>=0){break}n.push(e);m.push(e)}}for(;d<t;++d){n.push(l[d])}for(o=0;o<g;++o){q[s[o]]=k[o]}r.length=n.length;++r.generation;r.indices=null;for(o=0;o<h;++o){r.notify("add",[j[o]])}},getGroups:function(){return(arguments.callee.$previous||Ext.Base.prototype.getGroups).call(this)||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.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)||Ext.isFunction(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.')},processLoad:function(b,c,a,d){return a},checkMembership:Ext.emptyFn,adoptAssociated:function(b,c){var a=this.getAssociatedItem(b);if(a){c.adopt(a)}},createAssociationStore:function(g,m,e,n){var j=this,d=j.association,h=d.getFieldName(),k=d.isManyToMany,b=j.storeConfig,a=m.getId(),c={model:j.cls,role:j,session:g,associatedEntity:m,disableMetaChangeEvent:true,pageSize:null,remoteFilter:true,trackRemoved:!g},l;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)}l=Ext.Factory.store(c);j.onStoreCreate(l,g,a);if(h||(k&&g)){l.on({scope:j,add:"onAddToMany",remove:"onRemoveFromMany",clear:"onRemoveFromMany"})}if(e){l.loadData(e);l.complete=!!n}return l},onStoreCreate:Ext.emptyFn,getAssociatedStore:function(g,s,r,b,q){var k=this,l=k.getStoreName(),n=g[l],p=s&&s.reload,a=g.$source,j=g.session,h,d,e,o,c,m;if(!n){if(!b&&a){a=a[l];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(j.getRecord(c.self,c.id))}q=true}}n=k.createAssociationStore(j,g,b,q);n.$source=m;if(!b&&(k.autoLoad||s)){p=true}g[l]=n}if(s){if(p||n.isLoading()){n.on("load",function(v,u,w,t){h=[v,t];r=r||s.scope||g;if(w){Ext.callback(s.success,r,h)}else{Ext.callback(s.failure,r,h)}h.push(w);Ext.callback(s,r,h);Ext.callback(s.callback,r,h)},null,{single:true})}else{h=[n,null];r=r||s.scope||g;Ext.callback(s.success,r,h);h.push(true);Ext.callback(s,r,h);Ext.callback(s.callback,r,h)}}if(p&&!n.isLoading()){n.load()}return n},getAssociatedItem:function(b){var a=this.isMany?this.getStoreName():this.getInstanceName();return b[a]||null},onDrop:Ext.emptyFn,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&&!a.isReader){if(Ext.isString(a)){a={type:a}}Ext.applyIf(a,{model:d,rootProperty:b,useSimpleAccessors:e,type:c.defaultReaderType});a=c.reader=Ext.createByAlias("reader."+a.type,a)}return a},getInstanceName:function(){var a=this;return a.instanceName||(a.instanceName=a.association.schema.getNamer().instanceName(a.role))},getStoreName:function(){var a=this;return a.storeName||(a.storeName=a.association.schema.getNamer().storeName(a.role))},constructReader:function(e){var g=this,a=g.getReader(),h=g.cls,j=!g.associationKey,b=g.getReaderRoot(),c,d;if(!a){d=h.getProxy();if(d){c=d.getReader();a=new c.self();a.copyFrom(c);a.setRootProperty(b)}else{a=new e.self({model:h,useSimpleAccessors:j,rootProperty:b})}g.reader=a}return a},read:function(b,g,c,e){var d=this,a=this.constructReader(c);return a.read(g,e)},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 j=this,n=j.cls,e=j.association.getFieldName(),l=j.getInstanceName(),k=b[l],a=o&&o.reload,d=k!==undefined&&!a,h=b.session,c,g;if(!d){if(h){c=b.get(e);if(c||c===0){d=h.peekRecord(n,c,true)&&!a;k=h.getRecord(n,c,false)}else{d=true;b[l]=k=null}}else{if(e){c=b.get(e);if(!c&&c!==0){d=true;b[l]=k=null}else{if(!k){k=n.createWithId(c)}}}else{d=true}}}else{if(k){d=!k.isLoading()}}if(d){if(o){g=[k,null];m=m||o.scope||b;Ext.callback(o.success,m,g);g.push(true);Ext.callback(o,m,g);Ext.callback(o.callback,m,g)}}else{b[l]=k;o=j.getCallbackOptions(o,m,b);k.load(o)}return k},doSetFK:function(a,j,n,m){var h=this,d=h.association.getFieldName(),k=h.getInstanceName(),e=a[k],b=h.inverse,c=b.setterName,g=a.session,l;if(j&&j.isEntity){if(e!==j){if(d){a.set(d,j.getId())}a[k]=j;if(c){j[c](a)}}}else{l=(a.changingKey&&!b.isMany)||a.set(d,j);if(l&&e&&e.isEntity&&!e.isEqual(e.getId(),j)){a[k]=undefined;if(!b.isMany){e[b.getInstanceName()]=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",onDrop:function(a,b){var c=this.getAssociatedItem(a);a[this.getInstanceName()]=null;if(c){c[this.inverse.getInstanceName()]=null}},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.getInstanceName(),c=a[b],d=a.session;if(!c&&d){}return c||null},doSet:function(a,e){var b=this.getInstanceName(),d=a[b],c=this.inverse.setterName;if(d!==e){a[b]=e;if(c){e[c](a)}}return d},read:function(b,e,c,g){var d=this,a=d.callParent([b,e,c,g]),h=a.getRecords()[0];if(h){h[d.inverse.getInstanceName()]=b;b[d.getInstanceName()]=h;delete b.data[d.role]}}}),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)}},onDrop:function(g,d){var b=this,c=b.association.field,a=b.getAssociatedItem(g),e;if(b.inverse.owner){if(d){e=g.get(c.name);if(e||e===0){a=d.getEntry(b.cls,e).record;if(a){a.drop()}}}else{if(a){a.drop()}}}if(c){g.set(c.name,null)}g[b.getInstanceName()]=null;if(a){a[b.inverse.getInstanceName()]=null}},onValueChange:function(j,h,g){var e=this,a=e.getAssociatedItem(j),d=g||g===0,c=e.getInstanceName(),b=e.cls;j.changingKey=true;e.doSetFK(j,g);if(!d){j[c]=null}else{if(h&&b){j[c]=h.peekRecord(b,g)||undefined}}if(e.inverse.owner&&a){e.association.schema.queueKeyCheck(a,e)}j.changingKey=false},checkKeyForDrop:function(a){var b=this.inverse.getAssociatedItem(a);if(!b){a.drop()}},read:function(b,c,k,d){var g=this,l=g.callParent([b,c,k,d]),h=l.getRecords()[0],j=this.association.field,e=b.session,a;if(h){h[g.inverse.getInstanceName()]=b;b[g.getInstanceName()]=h;delete b.data[g.role];if(j){a=b.data[j.name];if(a!==h.id){b.data[j.name]=h.id;if(e){e.updateReference(b,j,h.id,a)}}}}}})},0,0,0,0,0,0,[Ext.data.schema,"OneToOne"],0));(Ext.cmd.derive("Ext.data.schema.ManyToOne",Ext.data.schema.Association,{isManyToOne:true,isToOne:true,kind:"many-to-one",Left:Ext.define(null,{extend:"Ext.data.schema.Role",isMany:true,onDrop:function(h,e){var g=this,k=g.getAssociatedItem(h),b,d,c,j,a;if(k){b=k.removeAll();if(b&&g.inverse.owner){for(c=0,d=b.length;c<d;++c){b[c].drop()}}k.destroy();h[g.getStoreName()]=null}else{if(e){b=e.getRefs(h,g);if(b){for(a in b){b[a].drop()}}}}},processUpdate:function(g,b){var h=this,d=h.inverse.cls,e=b.R,a,j,k,c;if(e){for(a in e){j=g.peekRecord(d,a);if(j){c=g.getEntityList(h.cls,e[a]);k=h.getAssociatedItem(j);if(k){k.loadData(c);k.complete=true}else{j[h.getterName](null,null,c)}}else{g.onInvalidAssociationEntity(d,a)}}}},findRecords:function(j,k,d){var h=d,l=j.getRefs(k,this,true),c,b,e,g,a;if(!k.phantom){h=[];if(l){if(d){a={};for(e=0,g=d.length;e<g;++e){c=d[e];b=c.id;if(l[b]){h.push(c)}a[b]=true}}for(b in l){if(!a||!a[b]){h.push(l[b])}}}}return h},processLoad:function(b,a,e,d){var c=e;if(d){c=this.findRecords(d,a,e)}this.onLoadMany(a,c,d);return c},adoptAssociated:function(b,g){var c=this.getAssociatedItem(b),e,d,a;if(c){c.setSession(g);e=c.getData().items;for(d=0,a=e.length;d<a;++d){g.adopt(e[d])}}},createGetter:function(){var a=this;return function(c,d,g){var e=this.session,b=!!g;if(e){g=a.findRecords(e,this,g);if(!b&&(!g||!g.length)){g=null}}return a.getAssociatedStore(this,c,d,g,b)}},createSetter:null,onAddToMany:function(a,b){this.syncFK(b,a.getAssociatedEntity(),false)},onLoadMany:function(l,e,k){var n=this.inverse.getInstanceName(),b=l.getId(),m=this.association.field,h,j,d,c,g,a;if(m){for(h=0,j=e.length;h<j;++h){d=e[h];d[n]=l;if(m){a=m.name;g=d.data;c=g[a];if(c!==b){g[a]=b;if(k){k.updateReference(d,m,b,c)}}}}}},onRemoveFromMany:function(a,b){this.syncFK(b,a.getAssociatedEntity(),true)},read:function(h,a,l,c){var g=this,k=g.inverse.getInstanceName(),m=g.callParent([h,a,l,c]),j,b,e,d;if(m.getReadRoot()){j=h[g.getterName](null,null,m.getRecords());delete h.data[g.role];b=j.getData().items;for(d=0,e=b.length;d<e;++d){b[d][k]=h}}},syncFK:function(d,j,k){var h=this.association.getFieldName(),e=this.inverse.setterName,g=d.length,a=j.getId(),b,c;while(g-->0){c=d[g];b=!c.isEqual(a,c.get(h));if(b!==k){c.changingKey=true;if(e){c[e](k?null:j)}else{c.set(h,k?null:a)}c.changingKey=false}}}}),Right:Ext.define(null,{extend:"Ext.data.schema.Role",left:false,side:"right",onDrop:function(c,b){var a=this.association.field;if(a){c.set(a.name,null)}c[this.getInstanceName()]=null},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)}},checkMembership:function(c,d){var b=this.association.field,a;a=this.getSessionStore(c,d.get(b.name));if(a&&!a.contains(d)){a.add(d)}},onValueChange:function(d,j,b,a){var k=this,n=k.getInstanceName(),p=k.cls,c,o,m,e,g,l,h;if(!d.changingKey){c=b||b===0;if(!c){d[n]=null}if(j){m=k.getSessionStore(j,a);if(m){m.remove(d)}if(c){m=k.getSessionStore(j,b);if(m&&!m.isLoading()){m.add(d)}if(p){h=j.peekRecord(p,b)}d[n]=h||undefined}}else{o=d.joined;if(o){for(e=0,g=o.length;e<g;++e){m=o[e];if(m.isStore){l=m.getAssociatedEntity();if(l&&l.self===k.cls&&l.getId()===a){m.remove(d)}}}}}}if(k.owner&&b===null){k.association.schema.queueKeyCheck(d,k)}},checkKeyForDrop:function(b){var a=this.association.field;if(b.get(a.name)===null){b.drop()}},getSessionStore:function(c,b){var a=this.cls,d;if(a){d=c.peekRecord(a,b);if(d){return this.inverse.getAssociatedItem(d)}}},read:function(g,d,c,e){var b=this.callParent([g,d,c,e]),a=b.getRecords()[0];if(a){g[this.getInstanceName()]=a;delete g.data[this.role]}}})},0,0,0,0,0,0,[Ext.data.schema,"ManyToOne"],0));(Ext.cmd.derive("Ext.data.schema.ManyToMany",Ext.data.schema.Association,{isManyToMany:true,isToMany:true,kind:"many-to-many",Left:Ext.define(null,{extend:"Ext.data.schema.Role",isMany:true,digitRe:/^\d+$/,findRecords:function(l,m,d){var n=l.getMatrixSlice(this.inverse,m.id),e=n.members,k=[],o=this.cls,a,h,j,b,g,c;if(d){a={};for(h=0,j=d.length;h<j;++h){c=d[h];b=c.id;g=e[b];if(!(g&&g[2]===-1)){k.push(c)}a[b]=true}}for(b in e){g=e[b];if(!a||!a[b]&&(g&&g[2]!==-1)){c=l.peekRecord(o,b);if(c){k.push(c)}}}return k},processLoad:function(b,a,e,d){var c=e;if(d){c=this.findRecords(d,a,e);this.onAddToMany(b,c,true)}return c},processUpdate:function(g,b){var h=this,d=h.inverse.cls,e=b.R,a,j,k,c;if(e){for(a in e){j=g.peekRecord(d,a);if(j){c=g.getEntityList(h.cls,e[a]);k=h.getAssociatedItem(j);if(k){k.loadData(c);k.complete=true}else{j[h.getterName](null,null,c)}}else{g.onInvalidAssociationEntity(d,a)}}}h.processMatrixBlock(g,b.C,1);h.processMatrixBlock(g,b.D,-1)},checkMembership:function(j,k){var l=j.getMatrix(this.association,true),h,d,e,n,o,a,c,g,b,m;if(!l){return}h=this.left?l.right:l.left;d=h.inverse.role.cls;e=this.inverse;o=h.slices;if(o){n=o[k.id];if(n){c=n.members;for(a in c){g=c[a];if(g[2]!==-1){b=j.peekRecord(d,a);if(b){m=e.getAssociatedItem(b);if(m){m.matrixUpdate=1;m.add(k);m.matrixUpdate=0}}}}}}},onStoreCreate:function(b,d,e){var c=this,a;if(d){a=d.getMatrixSlice(c.inverse,e);a.attach(b);a.notify=c.onMatrixUpdate;a.scope=c}},processMatrixBlock:function(e,d,c){var a=this.inverse,b=this.digitRe,g,h;if(d){for(h in d){if(b.test(h)){h=parseInt(h,10)}g=e.getMatrixSlice(a,h);g.update(d[h],c)}}},createGetter:function(){var a=this;return function(c,d,g){var e=this.session,b;if(e){b=!!g;g=a.findRecords(e,this,g);if(!b&&!g.length){g=null}}return a.getAssociatedStore(this,c,d,g,b)}},onAddToMany:function(a,c,b){if(!a.matrixUpdate){a.matrixUpdate=1;a.matrix.update(c,b===true?0:1);a.matrixUpdate=0}},onRemoveFromMany:function(b,a){if(!b.matrixUpdate){b.matrixUpdate=1;b.matrix.update(a,-1);b.matrixUpdate=0}},read:function(b,e,c,g){var d=this,a=d.callParent([b,e,c,g]);if(a.getReadRoot()){b[d.getterName](null,null,a.getRecords());delete b.data[d.role]}},onMatrixUpdate:function(e,h,d){var a=e.store,b,g,c;if(a&&!a.loading&&!a.matrixUpdate){a.matrixUpdate=1;b=a.indexOfId(h);if(d<0){if(b>=0){a.remove([b])}}else{if(b<0){c=a.getSession().getEntry(this.type,h);g=c&&c.record;if(g){a.add(g)}}}a.matrixUpdate=0}},adoptAssociated:function(b,g){var d=this.getAssociatedItem(b),c,e,a;if(d){d.setSession(g);this.onStoreCreate(d,g,b.getId());c=d.getData().items;for(e=0,a=c.length;e<a;++e){g.adopt(c[e])}}}},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"},instanceName:function(a){return this.apply("underscore",a)},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)){d=Ext.ClassManager.get(a);if(d&&(!d.prototype||!d.prototype.isEntity)){d=null}if(!d){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,keyCheckDelay:10,namer:"default",namespace:null,proxy:{type:"ajax",url:"{prefix}/{entityName}"},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,associationKey:c.associationKey},right:{cls:l.cls,type:r,role:n,field:k,associationKey:s.associationKey}});j.associations[p.right.role]=p.right;l.associations[p.left.role]=p.left;if(j.cls){t.associationEntityMap[j.cls.entityName]=true}if(l.cls){t.associationEntityMap[l.cls.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){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(b,c){if(Ext.isString(c)){c={model:c}}c.legacy=true;c.type=this.getEntityName(c.model);var a=c.associatedName||c.name;if(a){c.role=a}return c},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,c=a.timer;delete a.setConfig;if(c){window.clearTimeout(c);a.timer=null}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)},processKeyChecks:function(d){var g=this,b=g.keyCheckQueue,h=g.timer,a,c,e;if(h){window.clearTimeout(h);g.timer=null}if(!b){return}do{b=g.keyCheckQueue;g.keyCheckQueue=[];for(c=0,a=b.length;c<a;++c){e=b[c];e.role.checkKeyForDrop(e.record)}}while(d&&g.keyCheckQueue.length)},queueKeyCheck:function(a,e){var c=this,b=c.keyCheckQueue,d=c.timer;if(!b){c.keyCheckQueue=b=[]}b.push({record:a,role:e});if(!d){c.timer=d=Ext.Function.defer(c.processKeyChecks,c.getKeyCheckDelay(),c)}},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.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)}},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.add(b);return a},applySorters:function(b,a){if(!a){a=this.createSortersCollection()}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(b,c,a){if(Ext.isString(b)){b={property:b,value:c}}this.suppressNextFilter=!!a;this.getFilters().add(b);this.suppressNextFilter=false},removeFilter:function(a,d){var c=this,b=c.getFilters();c.suppressNextFilter=!!d;if(a instanceof Ext.util.Filter){b.remove(a)}else{b.removeByKey(a)}c.suppressNextFilter=false},updateRemoteSort:function(c){var a=this,d=a.getSorters(),b=a.getData();if(c){d.on("endupdate",a.onSorterEndUpdate,a);b.un("beforesort",a.onBeforeCollectionSort,a)}else{d.un("endupdate",a.onSorterEndUpdate,a);b.on("beforesort",a.onBeforeCollectionSort,a)}},updateRemoteFilter:function(c){var b=this,a=b.getFilters();if(c){a.on("endupdate",b.onFilterEndUpdate,b)}else{a.un("endupdate",b.onFilterEndUpdate,b)}},addFilter:function(b,a){this.suppressNextFilter=!!a;this.getFilters().add(b);this.suppressNextFilter=false},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,isLoaded:Ext.emptyFn,isLoading:Ext.emptyFn,destroy:function(){var a=this;a.clearListeners();if(a.getStoreId()){Ext.data.StoreManager.unregister(a)}a.onDestroy();a.callParent()},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)}},onBeforeCollectionSort:function(a,b){this.fireEvent("beforesort",this,b.getRange())},onSorterEndUpdate:function(){var a=this,b;if(a.settingGroups){return}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(a){if(a){this.setGrouper({property:a,direction:this.getGroupDir()})}else{this.setGrouper(null)}},getGrouper:function(){return this.getData().getGrouper()},group:function(a,c){var b=this,d=a||b.getSorters().getCount()>0;if(a&&typeof a==="string"){a={property:a,direction:c||b.getGroupDir()}}b.settingGroups=true;b.getData().setGrouper(a);delete b.settingGroups;if(b.isLoadBlocked()){return}if(d){if(b.getRemoteSort()){b.attemptLoad({scope:b,callback:b.fireGroupChange})}else{b.fireEvent("datachanged",b);b.fireEvent("refresh",b);b.fireGroupChange()}}else{b.fireGroupChange()}},fireGroupChange:function(){this.fireEvent("groupchange",this,this.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,privates:{loadsSynchronously:Ext.privateFn},deprecated:{5:{methods:{destroyStore:function(){this.destroy()}}}}},1,0,0,0,0,[[Ext.mixin.Observable.prototype.mixinId||Ext.mixin.Observable.$className,Ext.mixin.Observable],[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable]],[Ext.data,"AbstractStore"],0));(Ext.cmd.derive("Ext.data.Error",Ext.Base,{isError:true,$configPrefixed:false,config:{field:null,message:""},constructor:function(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(g){var k=this,h=g.fields,d=g.data,m,l,n,e,j,c,b,a;for(e=0,j=h.length;e<j;++e){l=h[e];a=l.name;b=d[a];if(l.validate&&!l.validate.$nullFn){m=k.length;c=l.validate(b,null,k);if(m===k.length&&c!==true){k.add(a,c)}}}return k},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.MixedCollection.prototype.add.call(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.operation.Operation",Ext.Base,{alternateClassName:"Ext.data.Operation",isOperation:true,config:{synchronous:false,url:"",params:undefined,callback:undefined,scope:undefined,resultSet:null,response:null,request:null,records:null,id:undefined,proxy:null,batch:null,recordCreator:null,internalCallback:null,internalScope:null},order:0,foreignKeyDirection:1,started:false,running:false,complete:false,success:undefined,exception:false,error:undefined,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.SortTypes",Ext.Base,{singleton:true,none:Ext.identityFn,stripCommasRe:/,/g,stripTagsRE:/<\/?[^>]+>/gi,asText:function(a){return(a!=null)?String(a).replace(this.stripTagsRe,""):"\x00"},asUCText:function(a){return(a!=null)?String(a).toUpperCase().replace(this.stripTagsRe,""):"\x00"},asUCString:function(a){return(a!=null)?String(a).toUpperCase():"\x00"},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(this.stripCommasRe,""));return isNaN(b)?0:b},asInt:function(a){var b=parseInt(String(a).replace(this.stripCommasRe,""),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,unique:false,rank:null,stripRe:/[\$,%]/g,calculated:false,evil:false,identifier:false,onClassExtended:function(c,e){var g=e.sortType,d=c.prototype,a=d.validators,b=e.validators;if(g&&Ext.isString(g)){d.sortType=Ext.data.SortTypes[g]}if(b){if(!Ext.isArray(b)){b=[b]}delete e.validators;if(a){b=a.concat(b)}d.validators=b}},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 m=this,o=m.calculateRe,h,p,n,j,c,a,k,b,l,e,g;if(d){if(Ext.isString(d)){m.name=d}else{g=d.validators;if(g){delete d.validators;m.instanceValidators=g}Ext.apply(m,d)}}if(!m.allowNull){m.allowNull=!!m.reference}h=m.calculate;c=m.depends;if(h){m.convert=m.doCalculate;if(!c){if(!(c=h.$depends)){a={};l=h.toString();h.$depends=c=[];k=m.argumentNamesRe.exec(l);b=k?k[1]:"data";while((k=o.exec(l))){if(b===k[1]&&!a[e=k[2]]){a[e]=1;c.push(e)}}}m.depends=c}}n=m.defaultValue;if(m.convert){if(n!==undefined){m.defaultValue=n=m.convert(n)}m.calculated=p=m.convert.length>1;m.evil=p&&!c}if(m.persist===null){m.persist=!p}j=m.sortType;if(!m.sortType){m.sortType=Ext.data.SortTypes.none}else{if(Ext.isString(j)){m.sortType=Ext.data.SortTypes[j]}}if(c&&typeof c==="string"){m.depends=[c]}m.cloneDefaultValue=n!==undefined&&(Ext.isDate(n)||Ext.isArray(n)||Ext.isObject(n))},setModelValidators:function(a){this._validators=null;this.modelValidators=a},compileValidators:function(){var a=this;a._validators=[];a.constructValidators(a.validators);a.constructValidators(a.modelValidators);a.constructValidators(a.instanceValidators)},constructValidators:function(a){if(a){if(!(a instanceof Array)){a=[a]}var e=a.length,c=this._validators,b,d;for(b=0;b<e;++b){d=a[b];if(d.fn){d=d.fn}c.push(Ext.Factory.dataValidator(d))}}},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)?0:((a<e)?-1:1)},compare:function(b,a){return(b===a)?0:((b<a)?-1:1)},isEqual:function(b,a){return this.compare(b,a)===0},convert:null,serialize:null,validate:function(k,e,j){var h=this,g="",l,a,c,b,d;if(!h._validators){h.compileValidators()}c=h._validators;for(d=0,b=c.length;d<b;++d){a=c[d];l=a.validate(k);if(l!==true){l=l||h.defaultInvalidMessage;if(j){j.add(h.name,l);g=g||l}else{if(e){if(g){g+=e}g+=l}else{g=l;break}}}}return g||true},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},getSortType:function(){return this.sortType},getType:function(){return"auto"},deprecated:{5.1:{methods:{getSortDir:function(){return this.sortDir}}}}},1,0,0,0,["data.field.auto"],[[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable]],[Ext.data.field,"Field",Ext.data,"Field"],0));(Ext.cmd.derive("Ext.data.field.Boolean",Ext.data.field.Field,{isBooleanField:true,trueRe:/^\s*(?:true|yes|on|1)\s*$/i,convert:function(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,numericType:"int",convert:function(b){if(typeof b==="number"){return this.getNumber(b)}var d=b===undefined||b===null||b==="",a=this.allowNull,c;if(d){c=a?null:0}else{c=this.parse(b);if(a&&isNaN(c)){c=null}}return c},getNumber:function(a){return parseInt(a,10)},getType:function(){return this.numericType},parse:function(a){return parseInt(String(a).replace(this.stripRe,""),10)},sortType:function(a){if(a==null){a=Infinity}return a}},0,0,0,0,["data.field.int","data.field.integer"],0,[Ext.data.field,"Integer"],0));(Ext.cmd.derive("Ext.data.field.Number",Ext.data.field.Integer,{isIntegerField:false,isNumberField:true,numericType:"float",getNumber:Ext.identityFn,parse:function(a){return parseFloat(String(a).replace(this.stripRe,""))}},0,0,0,0,["data.field.float","data.field.number"],0,[Ext.data.field,"Number"],0));(Ext.cmd.derive("Ext.data.field.String",Ext.data.field.Field,{sortType:"asUCString",isStringField:true,convert:function(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;c.rejecting=true;if(b){c.set(b,c._rejectOptions)}delete c.rejecting;c.clearState();if(!a){c.callJoined("afterReject")}},commit:function(b,d){var c=this,g=c.versionProperty,e=c.data,a;c.clearState();if(!c.rejecting){if(g&&!c.phantom&&!isNaN(e[g])){++e[g]}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(b){var d=this,c=d.associations,e=d.session,a;if(d.erased||d.dropped){return}d.dropped=true;if(c&&b!==false){for(a in c){c[a].onDrop(d,e)}}d.callJoined("afterDrop");if(d.phantom){d.setErased()}},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&&g.length,b=d.store,c;if(a===1&&g[0]===e){g.length=0}else{if(a){Ext.Array.remove(g,e)}}if(b===e){b=null;if(g){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},toUrl:function(){var b=this.$className.split("."),a=b[b.length-1].toLowerCase();return a+"/"+this.getId()},erase:function(a){var b=this;b.erasing=true;b.drop();delete b.erasing;return b.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(n){var k=this,b=k.associations,l,g,m,j,c,a,h,e,d;n=n||{};k.$gathering=1;for(d in b){e=b[d];m=e.getAssociatedItem(k);if(!m||m.$gathering){continue}if(m.isStore){m.$gathering=1;j=m.getData().items;a=j.length;c=[];for(g=0;g<a;++g){h=j[g];l=!h.$gathering;h.$gathering=1;c.push(h.getData(l));delete h.$gathering}delete m.$gathering}else{c=m.getData(true)}n[d]=c}delete k.$gathering;return n},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;if(l){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,d=a.calculated?(new b(c)).id:c[a.name];return d},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){if(typeof a==="string"){a={type:a}}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(e,a,c){var b={},d;b[this.prototype.idProperty]=e;d=new this(b,c);d.load(a);return d}},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(j){for(a=0,b=j.length;a<b;++a){k=j[a];if(k&&(h=k[d])){h.apply(k,c)}}}h=e&&e[d];if(h){h.apply(e,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(v,b,p){var k=Ext.data.field.Field,d=v.fields,q=[],l={},g={},a=[],u=p.fields,m=v.versionProperty||p.versionProperty,n=b.idProperty,h,c,s,e,w,r,j,t,o;b.fields=p.fields=q;b.fieldOrdinals=p.fieldOrdinals=l;b.fieldsMap=p.fieldsMap=g;b.references=p.references=a;if(u){for(s=0,e=u.length;s<e;++s){q[s]=c=Ext.Object.chain(u[s]);c.dependents=null;c.owner=b;l[w=c.name]=s;g[w]=c;c.rank=null;if(c.generated){t=c}}}if(d){delete v.fields;for(s=0,e=d.length;s<e;++s){c=d[s];j=c.reference;if(j&&typeof j!=="string"){j=Ext.merge({},j)}c.$reference=j;c=k.create(d[s]);w=c.name;r=l[w];if(r===undefined){l[w]=r=q.length}g[w]=c;q[r]=c;c.definedBy=c.owner=b;c.ordinal=r;if(w===n){o=true}}}h=g[n];if(!h){if(t&&t.generated){r=t.ordinal}else{r=q.length}h=new k(n);q[r]=h;l[n]=r;g[n]=h;h.definedBy=b;h.ordinal=r;h.generated=true}else{if(o&&t&&t.generated){Ext.Array.remove(q,t);delete g[t.name];delete l[t.name];for(s=0,e=q.length;s<e;++s){c=q[s];q.ordinal=s;l[c.name]=s}}}h.allowNull=h.critical=h.identifier=true;h.defaultValue=null;b.idField=p.idField=h;if(m){c=g[m];if(!c){r=q.length;c=new k({name:m,type:"int"});q[r]=c;l[m]=r;g[m]=c;c.definedBy=b;c.ordinal=r;c.generated=true}c.defaultValue=1;c.critical=true}},initValidators:function(h,p,k){var n=k.validators,e,m,c,l,g,d,j,b,a,o;if(n){e={};for(m in n){e[m]=Ext.Array.clone(n[m])}}l=h.validators||h.validations;if(l){delete h.validators;e=e||{};if(Ext.isArray(l)){c={};for(g=0,d=l.length;g<d;++g){o=l[g];b=o.field;if(!c[b]){c[b]=[]}o=o.fn||o;c[b].push(o)}l=c}for(b in l){j=l[b];if(!Ext.isArray(j)){j=[j]}a=e[b];if(e[b]){Ext.Array.push(a,j)}else{e[b]=j}}}if(e){for(b in e){m=p.getField(b);if(m){m.setModelValidators(e[b])}}}p.validators=k.validators=e},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},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.fields=[];d.fieldsMap=c.fieldsMap={};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=l.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);d.initValidators(l,e,k);e.fields.items=e.fields;if(h){j.addEntity(e);d.initAssociations(j,l,e)}g=l.proxy;if(g){delete l.proxy}else{if(m!==d){g=m.proxyConfig||m.proxy}}e.proxyConfig=g})}));(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=1;b.mixins.observable.constructor.call(b,a);--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},getNullResultSet:function(){return 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.isModel){k.raw=b}}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){if(!c){return}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("val = extractors["+b+"](raw); if (val !== undefined) { data['"+a+"'] = val; }");l.push(c);++b}}if(e.length){d={extractors:l,fn:new Function("raw","data","extractors","var val;"+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,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;if(b){e=Ext.define(null,{extend:"Ext.data.Model",fields:b,clientIdProperty:a});g.setModel(e);d=g.getProxy();if(d){d.setModel(e)}}else{if(a){c=g.getModel();if(c){c.self.prototype.clientIdProperty=a}}}},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},privates:{copyFrom:function(a){var b=this;a.buildExtractors();b.setModel(a.getModel());b.getTotal=a.getTotal;b.getSuccess=a.getSuccess;b.getMessage=a.getMessage;++b.duringInit;b.setTotalProperty(a.getTotalProperty());b.setSuccessProperty(a.getSuccessProperty());b.setMessageProperty(a.getMessageProperty());--b.duringInit}}},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[e]||c.name,q=k.id,d=n.getWriteAllFields(),m,b,g,s,p,l,j,o;if(c.serialize){q=c.serialize(q)}if(!d&&h&&h.isDestroyOperation){m={};m[r]=q}else{b=n.getDateFormat();g=k.phantom;s=(g||d)?n.getAllDataOptions():n.getPartialDataOptions();p=g&&n.getClientIdProperty();l=k.getFieldsMap();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(b){var a=this.getReader();b=Ext.Factory.writer(b);if(b.getRecord&&!b.getRecord()&&a&&a.getRecord){a=a.getRecord();if(a){b.setRecord(a)}}return b},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:{$value:null,merge:function(d,a,c,b){if(Ext.isArray(d)){return Ext.Array.clone(d)}else{return Ext.clone(d)}}}},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.ProxyStore",Ext.data.AbstractStore,{config:{model:undefined,fields:null,proxy:undefined,autoLoad:undefined,autoSync:false,batchUpdateMode:"operation",sortOnLoad:true,trackRemoved:true,autoLoadDelay:1},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,loadsWhileBlocked: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(null,null,null,null,false));a.delay(c.autoLoadDelay,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();a=this.getModel()}return a},applyProxy:function(b){var a=this.getModel();if(b!==null){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);b.autoCreated=true}}else{if(a){b=a.getProxy()}}if(!b){b=Ext.createByAlias("proxy.memory");b.autoCreated=true}}return b},updateProxy:function(b,a){var d=this,c={scope:d,beginprocessresponse:d.beginUpdate,endprocessresponse:d.endUpdate};if(!d.disableMetaChangeEvent){c.metachange=d.onMetaChange}if(a){a.un(c)}if(b){b.on(c)}},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)}},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)},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)},load:function(b){if(this.isLoadBlocked()){return}var e=this,c=e.getProxy(),a={internalScope:e,internalCallback:e.onProxyLoad},d,g;if(e.getRemoteFilter()){d=e.getFilters();if(d.getCount()){a.filters=d.getRange()}}if(e.getRemoteSort()){g=e.getSorters();if(g.getCount()){a.sorters=g.getRange()}e.fireEvent("beforesort",e,a.sorters)}Ext.apply(a,b);a.scope=a.scope||e;e.lastOptions=a;a=c.createOperation("read",a);if(e.fireEvent("beforeload",e,a)!==false){e.onBeforeLoad(a);e.loading=true;e.clearLoadTask();a.execute()}return e},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 b=this,a=b.getProxy();b.blockLoad();b.clearData();b.setProxy(null);if(a.autoCreated){a.destroy()}b.setModel(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,privates:{attemptLoad:function(a){if(this.isLoadBlocked()){++this.loadsWhileBlocked;return}this.load(a)},blockLoad:function(a){++this.blockLoadCounter},clearLoadTask:function(){var a=this.loadTask;if(a){a.cancel();this.loadTask=null}},isLoadBlocked:function(){return !!this.blockLoadCounter},loadsSynchronously:function(){return this.getProxy().isSynchronous},onBeforeLoad:Ext.privateFn,unblockLoad:function(a){var c=this,b=c.loadsWhileBlocked;--c.blockLoadCounter;if(!c.blockLoadCounter){c.loadsWhileBlocked=0;if(a&&b){c.load()}}}}},1,0,0,0,0,0,[Ext.data,"ProxyStore"],0));(Ext.cmd.derive("Ext.data.LocalStore",Ext.Mixin,{mixinConfig:{id:"localstore"},config:{extraKeys:null},applyExtraKeys:function(a){var c,b=this.getData();b.setExtraKeys(a);a=b.getExtraKeys();for(c in a){this[c]=a[c]}},add:function(a){return this.insert(this.getCount(),arguments.length===1?a:arguments)},constructDataCollection:function(){var a=new Ext.util.Collection({rootProperty:"data",extraKeys:{byInternalId:{property:"internalId",rootProperty:""}}}),b;this.byInternalId=a.byInternalId;b=a.getSorters();b.setSorterConfigure(this.addFieldTransform,this);return a},createModel:function(a){var b=this.getSession();if(!a.isModel){var c=this.getModel();a=new c(a,b)}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))},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},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)}}}},queryRecordsBy:function(e,d){var h=this.getData(),g=[],a,c,b;h=(h.getSource()||h).items;d=d||this;for(c=0,a=h.length;c<a;++c){b=h[c];if(e.call(d,b)===true){g.push(b)}}return g},queryRecords:function(h,g){var e=this.getData(),d=[],a,c,b;e=(e.getSource()||e).items;for(c=0,a=e.length;c<a;++c){b=e[c];if(b.get(h)===g){d.push(b)}}return d}},0,0,0,0,0,0,[Ext.data,"LocalStore"],0));(Ext.cmd.derive("Ext.data.proxy.Server",Ext.data.proxy.Proxy,{alternateClassName:"Ext.data.ServerProxy",isRemote:true,config:{url:"",pageParam:"page",startParam:"start",limitParam:"limit",groupParam:"group",groupDirectionParam:"groupDir",sortParam:"sort",filterParam:"filter",directionParam:"dir",idParam:"id",simpleSortMode:false,simpleGroupMode:false,noCache:true,cacheString:"_dc",timeout:30000,api:{create:undefined,read:undefined,update:undefined,destroy:undefined},extraParams:{}},create:function(){return this.doRequest.apply(this,arguments)},read:function(){return this.doRequest.apply(this,arguments)},update:function(){return this.doRequest.apply(this,arguments)},erase:function(){return this.doRequest.apply(this,arguments)},setExtraParam:function(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(),url:a.getUrl(),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;g.fireEvent("beginprocessresponse",g,b,c);if(j===true){a=g.getReader();if(b.status===204){e=a.getNullResultSet()}else{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);g.fireEvent("endprocessresponse",g,b,c)},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:(arguments.callee.$previous||Ext.data.proxy.Proxy.prototype.getUrl).call(this)},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.call(this,c,b)},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(Ext.data.reader.Reader.prototype.buildExtractors.apply(this,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.call(this,d,e)},getModelData:function(a){return this.getPreserveRawData()?Ext.apply({},a):a},createAccessor:(function(){var a=/[\[\.]/;return function(r){var n=this,b=n.getUseSimpleAccessors(),e,u,k,g,d,q,t,p,o,l,m,h,s,j;if(!(r||r===0)){return}if(typeof r==="function"){return r}if(!b){e=String(r).search(a)}if(b===true||e<0){u=function(c){return c[r]}}else{k="raw";g=[];d="";q=0;j=r.length;for(h=0;h<=j;++h){m=r[h];t=m===".";p=m==="[";o=m==="]";l=t||p||o||!m;if(!l||q>1||(q&&!o)){d+=m}else{if(l){s=false;if(p){++q}else{if(o){--q;s=true}}if(d){if(s){d="["+d+"]"}else{d="."+d}k+=d;g.push(""+k);d=""}}}}u=g.join(" && ");u=Ext.functionFactory("raw","return "+u)}return u}}()),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)}}},privates:{copyFrom:function(b){var c=this,a;c.duringInit++;a=Ext.data.reader.Reader.prototype.copyFrom.call(this,b);c.getRoot=b.getRoot;c.setRootProperty(b.getRootProperty());--c.duringInit}}},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)}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},$endUpdatePriority:2001},0,0,0,0,0,0,[Ext.util,"Group"],0));(Ext.cmd.derive("Ext.util.SorterCollection",Ext.util.Collection,{isSorterCollection:true,$sortable:null,sortFn:null,config:{sorterOptionsFn:null,sorterOptionsScope:null},constructor:function(a){var b=this;b.sortFn=Ext.util.Sorter.createComparator(b);Ext.util.Collection.prototype.constructor.call(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.isSorter){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.call(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:{grouper:null,itemRoot:null},observerPriority:-100,onCollectionAdd:function(b,a){this.addItemsToGroups(b,a.items)},onCollectionBeforeItemChange:function(b,a){this.changeDetails=a},onCollectionBeginUpdate:function(){this.beginUpdate()},onCollectionEndUpdate:function(){this.endUpdate()},onCollectionItemChange:function(c,a){var b=a.item;if(!a.indexChanged){this.syncItemGrouping(c,b,c.getKey(b),a.oldKey,a.oldIndex)}this.changeDetails=null},onCollectionRefresh:function(a){this.removeAll();this.addItemsToGroups(a,a.items)},onCollectionRemove:function(a,b){var h=this,l=h.changeDetails,g,j,k,e,c,d,m;if(l){m=l.item;k=h.findGroupForItem(m);g=[];if(k){g.push({group:k,items:[m]})}}else{g=h.groupItems(a,b.items,false)}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(d,b){var a=b.index,c=b.item;if(!b.indexChanged){a=d.indexOf(c);this.syncItemGrouping(d,c,b.newKey,b.oldKey,a)}},addItemsToGroups:function(b,a){this.groupItems(b,a,true)},groupItems:function(b,l,d){var m=this,a={},j=[],c=b.getGrouper(),o=m.itemGroupKeys,n,p,r,h,q,e,k,g;for(h=0,k=l.length;h<k;++h){r=c.getGroupString(q=l[h]);e=b.getKey(q);if(d){(o||(m.itemGroupKeys=o={}))[e]=r}else{if(o){delete o[e]}}if(!(n=a[r])){if(!(p=m.getByKey(r))&&d){(g||(g=[])).push(p=m.createGroup(b,r))}j.push(a[r]=n={group:p,items:[]})}n.items.push(q)}for(h=0,k=j.length;h<k;++h){n=j[h];n.group.add(n.items)}if(g){m.add(g)}return j},syncItemGrouping:function(a,q,g,k,b){var o=this,l=o.itemGroupKeys||(o.itemGroupKeys={}),c=a.getGrouper(),r=c.getGroupString(q),h=0,n=-1,m,p,e,j,d;if(k){j=l[k];delete l[k]}else{j=l[g]}l[g]=r;if(!(p=o.get(r))){p=o.createGroup(a,r);m=[p]}if(p.get(g)!==q){if(p.getCount()>0&&a.getSorters().getCount()===0){d=a.indexOf(p.items[0]);if(b<d){n=0}else{n=b-d}}if(n===-1){p.add(q)}else{p.insert(n,q)}}else{p.itemChanged(q)}if(r!==j&&(j===0||j)){e=o.get(j);if(e){e.remove(q);if(!e.length){h=[e]}}}if(m){o.splice(0,h,m)}else{if(h){o.splice(0,h)}}},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()},createSortFn:function(){var c=this,a=c.getGrouper(),b=c.getSorters().getSortFn();if(!a){return b}return function(d,e){return a.sort(d.items[0],e.items[0])||b(d,e)}},updateGrouper:function(a){var b=this;b.grouped=!!a;b.onSorterChange();b.onEndUpdateSorters(b.getSorters())},privates:{findGroupForItem:function(d){var b=this.items,a=b.length,c,e;for(c=0;c<a;++c){e=b[c];if(e.contains(d)){return e}}}}},0,0,0,0,0,0,[Ext.util,"GroupCollection"],0));(Ext.cmd.derive("Ext.data.Store",Ext.data.ProxyStore,{config:{data:0,clearRemovedOnLoad:true,clearOnPageLoad:true,associatedEntity:null,role:null,session:null},addRecordsOptions:{addRecords:true},loadCount:0,complete:false,moveMapCount:0,constructor:function(a){var b=this,c;if(a){if(a.buffered){return new Ext.data.BufferedStore(a)}}Ext.data.ProxyStore.prototype.constructor.apply(this,arguments);b.getData().addObserver(this);c=b.inlineData;if(c){delete b.inlineData;b.loadInlineData(c)}},onCollectionBeginUpdate:function(){this.beginUpdate()},onCollectionEndUpdate:function(){this.endUpdate()},applyData:function(c,a){var b=this;b.getFields();b.getModel();if(c&&c.isCollection){a=c}else{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.blockLoadCounter;c.blockLoadCounter=0;c.suspendEvents();c.read();c.resumeEvents();c.blockLoadCounter=a}else{c.removeAll(true);c.suspendEvents();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.ProxyStore.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.ProxyStore.prototype.updateRemoteSort.apply(this,arguments)},onCollectionAdd:function(b,a){this.onCollectionAddItems(b,a.items,a)},onCollectionFilterAdd:function(b,a){this.onCollectionAddItems(b,a)},onCollectionAddItems:function(g,b,a){var l=this,j=b.length,n=a?!a.next:false,h=l.getRemovedRecords(),e=l.ignoreCollectionAdd,k=l.getSession(),p=a&&a.replaced,c,m,d,o;for(c=0;c<j;++c){d=b[c];if(k){k.adopt(d)}if(!e){d.join(l);if(h&&h.length){Ext.Array.remove(h,d)}m=m||d.phantom||d.dirty}}if(e){return}if(p){o=[];do{Ext.Array.push(o,p.items);p=p.next}while(p);l.setMoving(o,true)}if(a){l.fireEvent("add",l,b,a.at);if(n){l.fireEvent("datachanged",l)}}if(p){l.setMoving(o,false)}l.needsSync=l.needsSync||m},onCollectionFilteredItemChange:function(){this.onCollectionItemChange.apply(this,arguments)},onCollectionItemChange:function(g,e){var d=this,a=e.item,c=e.modified||null,b=e.meta;d.onUpdate(a,b,c,e);d.fireEvent("update",d,a,b,c,e)},afterChange:function(a,c,b){this.getData().itemChanged(a,c||null,undefined,b)},afterCommit:function(a,b){this.afterChange(a,b,Ext.data.Model.COMMIT)},afterEdit:function(a,b){this.needsSync=this.needsSync||a.dirty;this.afterChange(a,b,Ext.data.Model.EDIT)},afterReject:function(a){this.afterChange(a,null,Ext.data.Model.REJECT)},afterDrop:function(a){this.getData().remove(a)},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)},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,b){var m=this,h=m.removed,c=b.items,k=c.length,j=b.at,o=m.removeIsMove,l=m.removeIsSilent,n=!b.next,a=b.replacement,d,e;if(m.ignoreCollectionRemove){return}if(a){m.setMoving(a.items,true)}for(d=0;d<k;++d){e=c[d];e.unjoin(m);if(h&&!o&&!e.phantom&&!e.erasing){e.removedFrom=j+d;h.push(e);m.needsSync=true}}if(!l){m.fireEvent("remove",m,c,j,o);if(n){m.fireEvent("datachanged",m)}}if(a){m.setMoving(a.items,false)}},onFilterEndUpdate:function(){Ext.data.ProxyStore.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=d.getRange();if(d.length){c.removeIsSilent=true;c.callObservers("BeforeRemoveAll");d.removeAll();c.removeIsSilent=false;if(!b){c.fireEvent("clear",c,a);c.fireEvent("datachanged",c)}c.callObservers("AfterRemoveAll",[!!b])}return a},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(),d;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!=null?b.page:c.currentPage;b.start=(b.start!==undefined)?b.start:(b.page-1)*a;b.limit=b.limit!=null?b.limit:a}b.addRecords=b.addRecords||false;if(!b.recordCreator){d=c.getSession();if(d){b.recordCreator=d.recordCreator}}return Ext.data.ProxyStore.prototype.load.call(this,b)},onProxyLoad:function(b){var d=this,c=b.getResultSet(),a=b.getRecords(),e=b.wasSuccessful();if(d.isDestroyed){return}if(c){d.totalCount=c.getTotal()}if(e){a=d.processAssociation(a);d.loadRecords(a,b.getAddRecords()?{addRecords:true}:undefined)}else{d.loading=false}if(d.hasListeners.load){d.fireEvent("load",d,a,e,b)}d.callObservers("AfterLoad",[a,e,b])},getUnfiltered:function(){var a=this.getData();return a.getSource()||a},getNewRecords:function(){return this.getUnfiltered().createFiltered(this.filterNew).getRange()},getUpdatedRecords:function(){return this.getUnfiltered().createFiltered(this.filterUpdated).getRange()},loadData:function(g,a){var e=this,d=g.length,c=[],b;for(b=0;b<d;b++){c.push(e.createModel(g[b]))}c=e.processAssociation(c);e.loadRecords(c,a?e.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(a,c){var h=this,g=a.length,j=h.getData(),e,d,b;if(c){e=c.addRecords}if(!h.getRemoteSort()&&!h.getSortOnLoad()){b=true;j.setAutoSort(false)}if(!e){h.clearData(true)}h.loading=false;h.ignoreCollectionAdd=true;h.callObservers("BeforePopulate");j.add(a);h.ignoreCollectionAdd=false;if(b){j.setAutoSort(true)}for(d=0;d<g;d++){a[d].join(h)}++h.loadCount;h.complete=true;h.fireEvent("datachanged",h);h.fireEvent("refresh",h);h.callObservers("AfterPopulate")},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,e){var d=this,g=d.removed,b,c,a;e=e||d.getData();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);this.fireEvent("idchanged",this,c,b,a)},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},filterRejects:function(a){return a.phantom||a.dirty},getRejectRecords:function(){return this.getData().createFiltered(this.filterRejects).getRange()},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,d=b.getData(),c=d.getSource();Ext.data.ProxyStore.prototype.onDestroy.call(this);b.setSession(null);b.observers=null;if(a){a.cancel();b.loadTask=null}b.clearData(false,c||d);d.destroy();if(c){c.destroy()}b.setData(null)},privates:{onBeforeLoad:function(a){this.callObservers("BeforeLoad",[a])},isMoving:function(c,e){var g=this.moveMap,b=0,a,d;if(g){if(c){if(Ext.isArray(c)){for(d=0,a=c.length;d<a;++d){b+=g[c[d].id]?1:0}}else{if(g[c.id]){++b}}}else{b=e?g:this.moveMapCount}}return b},setMoving:function(b,g){var d=this,e=d.moveMap||(d.moveMap={}),a=b.length,c,h;for(c=0;c<a;++c){h=b[c].id;if(g){if(e[h]){++e[h]}else{e[h]=1;++d.moveMapCount}}else{if(--e[h]===0){delete e[h];--d.moveMapCount}}}if(d.moveMapCount===0){d.moveMap=null}},processAssociation:function(a){var c=this,b=c.getAssociatedEntity();if(b){a=c.getRole().processLoad(c,b,a,c.getSession())}return a}}},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.call(this,e,a)}},0,0,0,0,["store.array"],0,[Ext.data,"ArrayStore",Ext.data,"SimpleStore"],0));(Ext.cmd.derive("Ext.data.StoreManager",Ext.util.MixedCollection,{alternateClassName:["Ext.StoreMgr","Ext.data.StoreMgr","Ext.StoreManager"],singleton:true,register:function(){for(var 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.app.domain.Store",Ext.app.EventDomain,{singleton:true,type:"store",prefix:"store.",idMatchRe:/^\#/,constructor:function(){var a=this;a.callParent();a.monitor(Ext.data.AbstractStore)},match:function(d,b){var a=false,c=d.alias;if(b==="*"){a=true}else{if(this.idMatchRe.test(b)){a=d.getStoreId()===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,"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 a=this;a.hiddenField=null;a.ready=false;a.currentToken=null;a.mixins.observable.constructor.call(a)},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.get(a.win).on("hashchange",a.onHashChange,a)}else{Ext.TaskManager.start({fireIdleEvent:false,run:a.onHashChange,interval:50,scope:a})}a.ready=true;a.fireEvent("ready",a)},onHashChange:function(){var b=this,a=b.getHash();if(a!==b.hash){b.hash=a;b.handleStateChange(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;b.hash=b.getHash();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"},profile:{getter:"getProfile",upper:"Profiles"}},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},resolveNamespace:function(a,g){var h=Ext.app.Controller,e=h.controllerRegex,d,c,b;d=Ext.getClassName(a);c=g.$namespace||g.namespace||Ext.app.getNamespace(d)||((b=e.exec(d))&&b[1]);return c},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}},models:null,views:null,stores:null,controllers:null,config:{application:null,refs:null,active:true,moduleClassName:null},onClassExtended:function(b,c,a){var d=a.onBeforeCreated;a.onBeforeCreated=function(e,k){var l=Ext.app.Controller,h=[],g,j;j=e.prototype;g=l.resolveNamespace(e,k);if(g){j.$namespace=g}l.processDependencies(j,h,g,"model",k.models);l.processDependencies(j,h,g,"view",k.views);l.processDependencies(j,h,g,"store",k.stores);l.processDependencies(j,h,g,"controller",k.controllers);Ext.require(h,Ext.Function.pass(d,arguments,this))}},constructor:function(a){this.initAutoGetters();Ext.app.BaseController.prototype.constructor.apply(this,arguments)},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},getRefMap:function(){var g=this,c=g._refMap,a,e,d,b;if(!c){a=g.getRefs();c=g._refMap={};if(a){for(b=0,d=a.length;b<d;b++){e=a[b];c[e.ref]=e.selector}}}return c},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.getApplication();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},getProfile:function(a){a=Ext.app.Controller.getFullName(a,"profile",this.$namespace);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.app.Application",Ext.app.Controller,{isApplication:true,scope:undefined,namespaces:[],paths:null,appFolder:"app",config:{name:"",appProperty:"app",profiles:[],currentProfile:null,mainView:{$value:null,lazy:true},defaultToken:null,glyphFontFamily:null},onClassExtended:function(k,c,j){var b=Ext.app.Controller,d=k.prototype,m=[],e,l,a,g,h;a=c.name||k.superclass.name;h=c.appFolder||k.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&&h){Ext.Loader.setPath(a,h)}l=c.paths;if(l){for(g in l){if(l.hasOwnProperty(g)){Ext.Loader.setPath(g,l[g])}}}}else{delete c["paths processed"]}b.processDependencies(d,m,a,"profile",c.profiles);d.getDependencies(k,c,m);if(m.length){e=j.onBeforeCreated;j.onBeforeCreated=function(n,p){var o=Ext.Array.clone(arguments);Ext.require(m,function(){return e.apply(this,o)})}}},getDependencies:Ext.emptyFn,constructor:function(b){var c=this;Ext.app.route.Router.application=c;Ext.app.Controller.prototype.constructor.apply(this,arguments);c.doInit(c);c.initNamespace();var a=this.getProfiles();if(a&&a.length){Ext.require(a,this.onProfilesLoaded,this)}else{this.onProfilesReady()}},onProfilesReady:function(){var a=this;a.initControllers();a.onBeforeLaunch();a.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 k=this,e=Ext.util.History,a=k.getDefaultToken(),h=k.getCurrentProfile(),b,j,l,g,d;k.initMainView();if(h){h.launch()}k.launch.call(k.scope||k);k.launched=true;k.fireEvent("launch",k);b=k.controllers.items;l=b.length;for(j=0;j<l;j++){g=b[j];g.onLaunch(k)}if(!e.ready){e.init()}d=e.getToken();if(d){k.redirectTo(d,true)}else{if(a){e.add(a)}}},getModuleClassName:function(a,b){return Ext.app.Controller.getFullName(a,b,this.getName()).absoluteName},initMainView:function(){var c=this,b=c.getCurrentProfile(),a;if(b){a=b.getMainView()}if(a){c.setMainView(a)}else{c.getMainView()}},applyMainView:function(b){var a;a=this.getView(b);return a.create()},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.call(this,a,true);if(b&&b[d]===c){delete b[d]}},updateGlyphFontFamily:function(a){Ext.setGlyphFontFamily(a)},applyProfiles:function(a){var b=this;return Ext.Array.map(a,function(c){return b.getModuleClassName(c,"profile")})},onProfilesLoaded:function(){var l=this,n=l.getProfiles(),d=n.length,a=[],k,j,p,r,c,q,o,h,m,e,b,g;for(j=0;j<d;j++){a[j]=Ext.create(n[j],{application:l});if(a[j].isActive()&&!k){k=a[j];p=k.getDependencies();r=p.all;l.setCurrentProfile(k);q=p.controller;if(q.length){c=l.controllers=(l.controllers||[]);c.push.apply(c,q)}h=p.view;if(h.length){o=l.views=(l.views||[]);o.push.apply(o,h)}e=p.store;if(e.length){m=l.stores=(l.stores||[]);m.push.apply(m,e)}g=p.model;if(g.length){b=l.models=(l.models||[]);b.push.apply(b,g)}}}if(r){Ext.require(r,l.onProfilesReady,l)}else{l.onProfilesReady()}}},1,0,0,0,0,0,[Ext.app,"Application"],0));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.define("Ext.overrides.app.Application",{override:"Ext.app.Application",autoCreateViewport:false,config:{enableQuickTips:true},applyMainView:function(e){var b=this.getView(e),d=b.prototype,c,a;if(!d.isViewport){a=d.plugins;a=["viewport"].concat(a?Ext.Array.from(a,true):[]);c={plugins:a}}return b.create(c)},getDependencies:function(a,g,d){var h=Ext.app.Controller,e=a.prototype,c=g.$namespace,b=g.autoCreateViewport;if(b){if(b===true){b="Viewport"}else{d.push("Ext.plugin.Viewport")}h.processDependencies(e,d,c,"view",b)}},onBeforeLaunch:function(){var b=this,a=b.autoCreateViewport;if(b.getEnableQuickTips()){b.initQuickTips()}if(a){b.initViewport()}arguments.callee.$previous.apply(this,arguments)},getViewportName:function(){var a=null,b=this.autoCreateViewport;if(b){a=(b===true)?"Viewport":b}return a},initViewport:function(){this.setMainView(this.getViewportName())},initQuickTips:function(){Ext.tip.QuickTipManager.init()}});(Ext.cmd.derive("Ext.app.Profile",Ext.Base,{config:{namespace:"auto",name:"auto",mainView:{$value:null,lazy:true},application:null,controllers:[],models:[],views:[],stores:[]},constructor:function(a){this.initConfig(a);this.mixins.observable.constructor.apply(this,arguments)},isActive:function(){return false},launch:Ext.emptyFn,applyNamespace:function(a){if(a=="auto"){a=this.getName()}return a.toLowerCase()},applyName:function(a){if(a=="auto"){var b=this.$className.split(".");a=b[b.length-1]}return a},onClassExtended:function(b,c,a){var d=a.onBeforeCreated;a.onBeforeCreated=function(e,k){var l=Ext.app.Controller,h=[],j=e.prototype,g;g=l.resolveNamespace(e,k);l.processDependencies(j,h,g,"model",k.models);l.processDependencies(j,h,g,"view",k.views);l.processDependencies(j,h,g,"store",k.stores);l.processDependencies(j,h,g,"controller",k.controllers);Ext.require(h,Ext.Function.pass(d,arguments,this))}},getDependencies:function(){var b=[],a=this.getApplication().getName(),c=this.getNamespace(),e={model:this.getModels(),view:this.getViews(),controller:this.getControllers(),store:this.getStores()},d,g;for(d in e){g=[];Ext.each(e[d],function(h){if(Ext.isString(h)){if(Ext.isString(h)&&(Ext.ClassManager.getPrefix(h)===""||h===a)){h=a+"."+d+"."+c+"."+h}g.push(h);b.push(h)}},this);e[d]=g}e.all=b;return e}},1,0,0,0,0,[["observable",Ext.mixin.Observable]],[Ext.app,"Profile"],0));(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},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.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.destroy();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 j=this,b=j.timer,d=j.getCycleLimit(),c=Ext.GlobalEvents,l,e,k,h,g,a;if(b){window.clearTimeout(b);j.timer=null}while(j.scheduledCount){if(d){--d}else{j.firing=null;break}if(!a){a=true;if(c.hasListeners.beforebindnotify){c.fireEvent("beforebindnotify",j)}}++j.passes;if(!(g=j.orderedItems)){j.sort();g=j.orderedItems}h=g.length;if(h){j.firing=j.items;for(e=0;e<h;++e){k=g[e];if(k.scheduled){k.scheduled=false;--j.scheduledCount;j.notifyIndex=e;k.react();if(!j.scheduledCount){break}}}}}j.firing=null;j.notifyIndex=-1;if((l=j.busyCounter)!==j.lastBusyCounter){if(!(j.lastBusyCounter=l)){j.fireEvent("idle",j)}}},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)}},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.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,r=b.slices,h,p,o,q,a,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=r[a];if(l){delete l.members[m]}p=1}else{if(!h){h=[a,a,g];h[k]=m;s[a]=h;l=r[a];if(!l){r[a]=l=new j(b,a)}l.members[m]=h;p=1}else{if(g!==h[2]&&g!==0){h[2]=g;l=r[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);k.setupOptions(p)}m=g.getData(p)}o=k.result||(k.result={});d=o[a]||(o[a]={});d=d[n]||(d[n]=[]);d.push(m)},setupOptions:function(a){a.serialize=true},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)},setupOptions:function(a){Ext.data.session.ChangesVisitor.prototype.setupOptions.call(this,a);a.serialize=false},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,autoDestroy:true,crudProperties:{create:"C",read:"R",update:"U",drop:"D"}},destroyed:false,crudOperations:[{type:"R",entityMethod:"readEntities"},{type:"C",entityMethod:"createEntities"},{type:"U",entityMethod:"updateEntities"},{type:"D",entityMethod:"dropEntities"}],crudKeys:{C:1,R:1,U:1,D:1},constructor:function(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(b){var d=this,c=b.associations,a;if(b.session!==d){b.session=d;d.add(b);if(c){for(a in c){c[a].adoptAssociated(b,d)}}}},commit:function(){var c=this.data,b,d,e,a;for(b in c){d=c[b];for(e in d){a=d[e].record;if(a){a.commit()}}}},createRecord:function(b,c){var d=b.$isClass?b:this.getSchema().getEntity(b),a=this.getParent(),e;if(c&&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;m.getSchema().processKeyChecks(true);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 e=this,g=b.id,d=e.getEntry(b.self,g),c,a;d.record=b;e.registerReferences(b);c=b.associations;for(a in c){c[a].checkMembership(e,b)}},afterErase:function(a){this.evict(a)},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)}}},evict:function(a){var b=a.entityName,d=this.data[b],e=a.id,c;if(d){delete d[e]}},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){if(b.isModel){g=b.getId();b=b.self}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},getRefs:function(d,c,j){var g=this.getEntry(d),e=g&&g.refs&&g.refs[c.role],h=j&&this.getParent(),k,a,b;if(h){k=h.getRefs(d,c);if(k){for(a in k){b=k[a];if((!e||!e[a])){this.getRecord(b.self,b.id)}}e=g&&g.refs&&g.refs[c.role]}}return e||null},getIdentifier:function(g){var e=this.getParent(),a,c,d,b;if(e){b=e.getIdentifier(g)}else{a=this.identifierCache;c=g.identifier;d=c.id||g.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,e){var d=a.isManyToMany?a.name:a,c=this.matrices,b;b=c[d];if(!b&&!e){b=c[d]=new Ext.data.matrix.Matrix(this,a)}return b||null},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;k.getSchema().processKeyChecks(true);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 b=this,a=b.owner;Ext.util.Schedulable.prototype.destroy.call(this);if(a){a.onBindDestroy()}b.scope=b.callback=b.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.call(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)},bindValidationField:function(c,a){var b=this.stub;return b&&b.bindValidationField(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;if(!(a&&a.twoWay===false)){if(b){return b.isReadOnly()}}return true},refresh:function(){},setValue:function(a){this.stub.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){Ext.app.bind.BaseBinding.prototype.schedule.call(this)}},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)}},privates:{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},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:{trackHadValue:function(e,a,h,g){var c=g&&g.children,j,b,d;d=e!==undefined;if(!a.hadValue[h]){a.hadValue[h]=d}if(g){g.hadValue=d}if(e&&(e.constructor===Object||e.isModel)){if(e.isModel){e=e.data}for(b in e){Ext.app.bind.Stub.trackHadValue(e[b],a,h+"."+b,c&&c[b])}}}},constructor:function(a,b,c){var d=this,e=b;Ext.app.bind.AbstractStub.prototype.constructor.call(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=e},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)},bindValidation:function(c,b){var a=this.parent;return a&&a.descend([this.validationKey,this.name]).bind(c,b)},bindValidationField:function(g,d){var c=this.parent,b=this.name,e=typeof g==="string",a;if(c){a=c.bind(function(h){var j=null;if(h&&h.isModel){j=h.getField(b)}if(e){d[g](j,null,this)}else{g.call(d,j,null,this)}})}return a||null},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;d.invalidate(true,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.call(this,e)},isLoading:function(){var d=this,c=d.parent,h=false,b,g,e,a;if(c&&!(h=c.isLoading())){g=d.getParentValue();e=d.inspectValue(g);if(e){h=e.isLoading()}else{if(g&&g.isModel){b=g.associations;if(!(b&&d.name in b)){h=false;a=true}}if(!a){h=!d.hadValue&&d.getRawValue()===undefined}}}return h},invalidate:function(b,a){var e=this,d=e.children,c;e.dirty=true;if(!a&&!e.isLoading()){if(!e.scheduled){e.schedule()}}if(b&&d){for(c in d){d[c].invalidate(b,a)}}},isReadOnly:function(){var a=this.formula;return !!(a&&!a.set)},set:function(j){var h=this,k=h.parent,a=h.name,e=h.formula,g,c,b,d;if(e&&!e.settingValue&&e.set){e.setValue(j);return}else{if(h.isLinkStub){d=h.getLinkFormulaStub();e=d?d.formula:null;if(e){e.setValue(j);return}}}g=k.getDataObject();if(g.isEntity){c=g.associations;if(c&&(a in c)){b=c[a];g[b.setterName](j);h.invalidate(true)}else{g.set(a,j)}}else{if((j&&j.constructor===Object)||j!==g[a]){if(!h.setByLink(j)){if(j===undefined){delete g[a]}else{g[a]=j;Ext.app.bind.Stub.trackHadValue(j,h.owner,h.path,h)}h.inspectValue(g);h.invalidate(true)}}}},onStoreLoad:function(){this.invalidate(true)},afterLoad:function(a){this.invalidate(true)},afterCommit:function(a){this.afterEdit(a,null)},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:{collect:function(){var c=this,a=Ext.app.bind.AbstractStub.prototype.collect.call(this),b=c.storeBinding?1:0,d=c.formula?1:0;return a+b+d},getLinkFormulaStub:function(){var a=this;while(a.isLinkStub){a=a.binding.stub}return a.formula?a:null},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(j){var k=this,a=k.name,g=k.boundValue,c=null,d,b,l,e,h;if(j&&j.isEntity){d=j.associations;if(d&&(a in d)){b=d[a];c=j[b.getterName]();if(c&&c.isStore){c.$associatedStore=true}}else{if(a===k.validationKey){c=j.getValidation();k.lastValidationGeneration=null}}}else{if(j){l=j[a];if(l&&(l.isModel||l.isStore)){c=l}}}e=g!==c;if(e){if(g){k.detachBound()}if(c){if(c.isModel){c.join(k)}else{h=c.associatedEntity;if(h&&!h.phantom&&!c.complete&&!c.hasPendingLoad()){c.load()}c.on("load",k.onStoreLoad,k,{single:true})}}k.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;Ext.app.bind.AbstractStub.prototype.sort.call(this);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.Stub.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:{collect:function(){var b=this,a=Ext.app.bind.Stub.prototype.collect.call(this),c=b.binding?1:0;return a+c},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){if(!c.getLinkFormulaStub()){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,h,c,b){var d=this,g=b&&b.trackStatics;Ext.app.bind.BaseBinding.prototype.constructor.call(this,a,h,c,b);d.bindings=[];d.literal=e.$literal;if(e.constructor===Object){if(g){d.staticKeys=[]}d.addObject(e,d.lastValue={},d.staticKeys)}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);return !this.isBindingStatic(h)},addArray:function(c,k){var g=this,j=c.length,d=false,h,a,e;for(e=0;e<j;++e){a=c[e];if(a&&(a.reference||Ext.isString(a))){h=g.add(a,k,e)}else{if(Ext.isArray(a)){h=g.addArray(a,k[e]=[])}else{if(a&&a.constructor===Object){h=g.addObject(a,k[e]={})}else{k[e]=a;h=false}}}d=d||h}return d},addObject:function(c,g,j){var h=this,e=false,k,a,d;for(d in c){a=c[d];if(a&&(a.reference||Ext.isString(a))){k=h.add(a,g,d)}else{if(Ext.isArray(a)){k=h.addArray(a,g[d]=[])}else{if(a&&a.constructor===Object){k=h.addObject(a,g[d]={})}else{g[d]=a;k=false}}}if(j&&!k){j.push(d)}e=e||k}return e},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},isBindingStatic:function(a){return a.isTemplateBinding&&a.isStatic},isStatic:function(){var d=this.bindings,a=d.length,b,c;for(b=0;b<a;++b){c=d[b];if(!this.isBindingStatic(c)){return false}}return true},pruneStaticKeys:function(){var d=Ext.apply({},this.lastValue),c=this.staticKeys,a=c.length,b;for(b=0;b<a;++b){delete d[c[b]]}return d},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+"\\(\\s*(['\"])(.*?)\\1\\s*\\)";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()}},setValue:function(a){this.set.call(this.stub.owner,a)},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.call(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.app.bind.BaseBinding.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.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)},blockLoad:Ext.emptyFn,unblockLoad:Ext.emptyFn,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},getSession:function(){return this.getSource().getSession()},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(g,e){var d=this,a=e.item,c=e.modified||null,b=e.meta;d.onUpdate(a,b,c,e);d.fireEvent("update",d,a,b,c,e)},onUpdate:Ext.emptyFn,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(b,a){this.fireEvent("beforeload",this,a)},onSourceAfterLoad:function(c,b,d,a){this.fireEvent("load",this,b,d,a)},onFilterEndUpdate:function(){Ext.data.AbstractStore.prototype.onFilterEndUpdate.apply(this,arguments);this.callObservers("Filter")},onSourceBeforePopulate:function(){this.ignoreCollectionAdd=true;this.callObservers("BeforePopulate")},onSourceAfterPopulate:function(){var a=this;a.ignoreCollectionAdd=false;a.fireEvent("datachanged",a);a.fireEvent("refresh",a);this.callObservers("AfterPopulate")},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 this.getSource().hasPendingLoad()},isLoaded:function(){return this.getSource().isLoaded()},isLoading:function(){return this.getSource().isLoading()},onDestroy:function(){var a=this;a.observers=null;a.setSource(null);a.getData().destroy(true);a.data=null},privates:{isMoving:function(){var a=this.getSource();return a.isMoving?a.isMoving.apply(a,arguments):false},loadsSynchronously:function(){return this.getSource().loadsSynchronously()}}},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,collectTimeout:100,expressionRe:/^(?:\{[!]?(?:(\d+)|([a-z_][\w\-\.]*))\})$/i,$configStrict:false,config:{data:true,formulas:{$value:null,merge:function(d,a,c,b){return this.mergeNew(d,a,c,b)}},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 j=this,g=j._scheduler,a=j.storeInfo,h=j.getParent(),c=j.collectTask,e,b,d;j.destroy=Ext.emptyFn;j.destroying=true;if(c){c.cancel();j.collectTask=null}if(a){for(e in a){b=a[e];d=b.autoDestroy;if(d||(!b.$wasInstance&&d!==false)){b.destroy()}Ext.destroy(b.$binding)}}if(h){h.unregisterChild(j)}j.getRoot().destroy();if(g&&g.$owner===j){g.$owner=null;g.destroy()}j.hadValue=j.children=j.storeInfo=j._session=j._view=j._scheduler=j._root=j._parent=j.formulaFn=j.$formulaData=null;j.destroying=false},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),h,c,b;if(a.isModel){a={type:a.entityName,id:a.id}}c=a.type||a.reference;if(c){h=a.id;if(a.create){h=undefined}g.set(e.getRecord(c,h))}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,g){var d=this.getSession(),e=b,c=g!==undefined,a;if(d){if(c){a=d.getRecord(b,g)}else{a=d.createRecord(b)}}else{if(!e.$isClass){e=this.getSchema().getEntity(e)}if(c){a=e.createWithId(g);a.load()}else{a=new e()}}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 c=this,b=c.getParent(),a=c.collectTask;if(b){b.collect();return}if(!a){a=c.collectTask=new Ext.util.DelayedTask(c.doCollect,c)}if(c.collectTimeout===0){c.doCollect()}else{a.delay(c.collectTimeout)}},doCollect:function(){var b=this.children,a;if(b){for(a in b){b[a].doCollect()}}this.getRoot().collect()},onBindDestroy:function(){var b=this,a;if(b.destroying){return}a=b.getParent();if(a){a.onBindDestroy()}else{b.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,{trackStatics:true});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({},h.pruneStaticKeys());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.blockLoad();b.setConfig(a);b.unblockLoad(true)}},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.app.domain.Controller",Ext.app.EventDomain,{singleton:true,type:"controller",prefix:"controller.",idMatchRe:/^\#/,constructor:function(){var a=this;a.callParent();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.direct.Manager",Ext.Base,{singleton:true,exceptions:{TRANSPORT:"xhr",PARSE:"parse",DATA:"data",LOGIN:"login",SERVER:"exception"},providerClasses:{},remotingMethods:{},config:{varName:"Ext.app.REMOTING_API"},apiNotFoundError:"Ext Direct API was not found at {0}",constructor:function(){var a=this;a.mixins.observable.constructor.call(a);a.transactions=new Ext.util.MixedCollection();a.providers=new Ext.util.MixedCollection()},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},loadProvider:function(b,l,m){var h=this,c=h.providerClasses,j,a,d,k,e,g;if(Ext.isArray(b)){for(e=0,g=b.length;e<g;e++){h.loadProvider(b[e],l,m)}return}j=b.type;a=b.url;if(c[j]&&c[j].checkConfig(b)){k=h.addProvider(b);h.fireEventArgs("providerload",[a,k]);Ext.callback(l,m,[a,k]);return}d=b.varName||h.getVarName();delete b.varName;delete b.url;Ext.Loader.loadScript({url:a,scope:h,onLoad:function(){this.onApiLoadSuccess({url:a,varName:d,config:b,callback:l,scope:m})},onError:function(){this.onApiLoadFailure({url:a,callback:l,scope:m})}})},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(d){var g=Ext.global,c=0,b,e,a;if(Ext.isFunction(d)){b=d}else{if(Ext.isString(d)){b=this.remotingMethods[d];if(!b){e=d.split(".");a=e.length;while(g&&c<a){g=g[e[c]];++c}b=Ext.isFunction(g)?g:null}}}return b||null},privates:{addProviderClass:function(b,a){this.providerClasses[b]=a},onApiLoadSuccess:function(options){var me=this,url=options.url,varName=options.varName,api,provider,error;try{api=Ext.apply(options.config,eval(varName));provider=me.addProvider(api)}catch(e){error=e+""}if(error){me.fireEventArgs("providerloaderror",[url,error]);Ext.callback(options.callback,options.scope,[url,error])}else{me.fireEventArgs("providerload",[url,provider]);Ext.callback(options.callback,options.scope,[url,provider])}},onApiLoadFailure:function(c){var b=c.url,a;a=Ext.String.format(this.apiNotFoundError,b);this.fireEventArgs("providerloaderror",[b,a]);Ext.callback(c.callback,c.scope,[b,a])},registerMethod:function(a,b){this.remotingMethods[a]=b}}},1,0,0,0,0,[[Ext.mixin.Observable.prototype.mixinId||Ext.mixin.Observable.$className,Ext.mixin.Observable]],[Ext.direct,"Manager"],function(){Ext.Direct=Ext.direct.Manager}));(Ext.cmd.derive("Ext.direct.Provider",Ext.Base,{isProvider:true,subscribers:0,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)},destroy:function(){var a=this;a.disconnect(true);a.mixins.observable.destroy.call(a)},isConnected:function(){return this.subscribers>0},connect:function(){var a=this;if(a.subscribers===0){a.doConnect();a.fireEventArgs("connect",[a])}a.subscribers++},doConnect:Ext.emptyFn,disconnect:function(b){var a=this;if(a.subscribers>0){if(b){a.subscribers=0}else{a.subscribers--}if(a.subscribers===0){a.doDisconnect();a.fireEventArgs("disconnect",[a])}}},doDisconnect:Ext.emptyFn,inheritableStatics:{checkConfig:Ext.returnFalse},onClassExtended:function(b,c,a){if(c.type){Ext.direct.Manager.addProviderClass(c.type,b)}}},1,0,0,0,["direct.provider"],[[Ext.util.Observable.prototype.mixinId||Ext.util.Observable.$className,Ext.util.Observable]],[Ext.direct,"Provider"],0));(Ext.cmd.derive("Ext.app.domain.Direct",Ext.app.EventDomain,{singleton:true,type:"direct",idProperty:"id",constructor:function(){var a=this;a.callParent();a.monitor(Ext.direct.Provider)}},1,0,0,0,0,0,[Ext.app.domain,"Direct"],0));(Ext.cmd.derive("Ext.data.PageMap",Ext.util.LruCache,{config:{store:null,pageSize:0,rootProperty:""},clear:function(a){var b=this;b.pageMapGeneration=(b.pageMapGeneration||0)+1;b.indexMap={};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]=+d[c]}Ext.Array.sort(d,Ext.Array.numericSortFn);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(m,a){var j=this,l=j.getPageSize(),c=m+Math.floor((a.length-1)/l),k,h=(m-1)*l,g=j.indexMap,e,b,d;for(k=0;m<=c;m++,k+=l){e=Ext.Array.slice(a,k,k+l);for(b=0,d=e.length;b<d;b++){g[e[b].internalId]=h++}j.add(m,e);j.fireEvent("pageadd",j,m,e)}},getCount:function(){var a=Ext.util.LruCache.prototype.getCount.call(this);if(a){a=(a-1)*this.getPageSize()+this.last.value.length}return a},getByInternalId:function(a){var b=this.indexMap[a];if(b!==-1){return this.getAt(b)}},indexOf:function(b){var a=-1;if(b){a=this.indexMap[b.internalId];if(a==null){a=-1}}return a},insert:function(){},remove:function(){},removeAt:function(){},removeAtKey:function(g){var e=this,c=e.getPage(g),b,d,a;if(c){if(e.fireEvent("beforepageremove",e,g,c)!==false){b=c.length;for(d=0;d<b;d++){delete e.indexMap[c[d].internalId]}a=Ext.util.LruCache.prototype.removeAtKey.apply(this,arguments);e.fireEvent("pageremove",e,g,c);c.length=0}}return a},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)},peekPage:function(a){return this.map[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 g=this,h=g.getPageSize(),l=g.getPageFromRecordIndex(a),d=g.getPageFromRecordIndex(b),c=(l-1)*h,n=(d*h)-1,j=l,o=[],m,e,k;for(;j<=d;j++){if(j===l){m=a-c;k=true}else{m=0;k=false}if(j===d){e=h-(n-b);k=true}if(k){Ext.Array.push(o,Ext.Array.slice(g.getPage(j),m,e))}else{Ext.Array.push(o,g.getPage(j))}}return o}},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},applyProxy:function(a){a=Ext.data.ProxyStore.prototype.applyProxy.call(this,a);if(a&&a.setEnablePaging){a.setEnablePaging(true)}return a},createFiltersCollection:function(){return new Ext.util.FilterCollection()},createSortersCollection:function(){return new Ext.util.SorterCollection()},updateGroupField:function(b){var a=this;if(a.isInitializing){a.blockLoad()}a.group(b);if(a.isInitializing){a.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.relayEvents(a,["beforepageremove","pageadd","pageremove"]);b.pageRequests={};return a},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(h.loading){return}if(!m){m={}}delete h.totalCount;d.clear(true);a=function(){if(h.rangeCached(j,Math.min(b,h.getTotalCount()))){h.loading=false;d.un("pageadd",a);c=d.getRange(j,b+1);h.fireEvent("load",h,c,true);h.fireEvent("refresh",h)}};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}j=Math.max(j-k,0);b+=k;g=h.getPageFromRecordIndex(j);l=h.getPageFromRecordIndex(b);if(h.fireEvent("beforeload",h,m)!==false){h.loading=true;d.on("pageadd",a);for(e=g;e<=l;e++){h.prefetchPage(e,m)}}},filter:function(){if(this.remoteSort){this.getData().clear();Ext.data.ProxyStore.prototype.filter.apply(this,arguments)}Ext.data.ProxyStore.prototype.filter.apply(this,arguments)},clearFilter:function(){this.getData().clear();Ext.data.ProxyStore.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}},getCount:function(){return this.totalCount||0},getRange:function(d,h,n){var m=this,e=m.totalCount-1,g=m.lastRequestStart,o=[],j=m.getData(),c,l,b,a,k;n=Ext.apply({prefetchStart:d,prefetchEnd:h},n);h=(h>=m.totalCount)?e:h;l=d===0?0:d-1;b=h===e?h:h+1;m.lastRequestStart=d;m.lastRequestEnd=h;if(m.rangeCached(l,b)){m.onRangeAvailable(n);o=j.getRange(d,h+1)}else{m.fireEvent("cachemiss",m,d,h);a=m.getPageFromRecordIndex(l);k=m.getPageFromRecordIndex(b);c=function(p,r,q){if(r>=a&&r<=k&&m.rangeCached(l,b)){m.fireEvent("cachefilled",m,d,h);j.un("pageadd",c);m.onRangeAvailable(n)}};j.on("pageadd",c);m.prefetchRange(d,h)}m.primeCache(d,h,d<g?-1:1);return o},getById:function(b){var a=this.data.findBy(function(c){return c.getId()===b});return a},getAt:function(a){var b=this.getData();if(b.hasRange(a,a)){return b.getAt(a)}},getByInternalId:function(a){return this.data.getByInternalId(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("pageadd",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?(p-l+1)+h:0)}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("pageadd",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.getPageSize()){g.setPageSize(a)}}else{e.pageSize=g.setPageSize(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.relayEvents(g,["beforepageremove","pageadd","pageremove"]);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.data.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(b,a,c){if(arguments.length===0){this.clearAndLoad()}else{this.getSorters().addSort(b,a,c)}},onSorterEndUpdate:function(){var a=this,b=a.getSorters().getRange();if(b.length){a.clearAndLoad({callback:function(){a.fireEvent("sort",a,b)}})}else{a.fireEvent("sort",a,b)}},clearAndLoad:function(a){this.getData().clear();this.loadPage(1,a)},privates:{isMoving:function(){return false}}},0,0,0,0,["store.buffered"],0,[Ext.data,"BufferedStore"],0));(Ext.cmd.derive("Ext.data.proxy.Direct",Ext.data.proxy.Server,{alternateClassName:"Ext.data.DirectProxy",config:{paramOrder:undefined,paramsAsHash:true,directFn:undefined,api:undefined,metadata:undefined},paramOrderRe:/[\s,|]/,applyParamOrder:function(a){if(Ext.isString(a)){a=a.split(this.paramOrderRe)}return a},updateApi:function(){this.methodsResolved=false},updateDirectFn:function(){this.methodsResolved=false},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)}}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(d){var j=this,a,e,c,b,h,g,k,l;if(!j.methodsResolved){j.resolveMethods()}e=j.buildRequest(d);c=e.getAction();g=j.getApi();if(g){k=g[c]}k=k||j.getDirectFn();a=j.getWriter();if(a&&d.allowWrite()){e=a.write(e)}if(c==="read"){b=e.getParams()}else{b=e.getJsonData()}h=k.directCfg.method.getArgs({params:b,paramOrder:j.getParamOrder(),paramsAsHash:j.getParamsAsHash(),metadata:j.getMetadata(),callback:j.createRequestCallback(e,d),scope:j});e.setConfig({args:h,directFn:k});k.apply(window,h);return e},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,extraParams");Ext.copyTo(b.reader,a,"totalProperty,root,rootProperty,idProperty");a.proxy=b}Ext.data.Store.prototype.constructor.call(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=Ext.defer(k.handleTimeout,n,k,[g])}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.call(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.call(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},b={silent:true};return{isNode:true,firstChild:null,lastChild:null,parentNode:null,previousSibling:null,nextSibling:null,constructor:function(){var c=this;c.mixins.observable.constructor.call(c);c.callParent(arguments);c.childNodes=[];return c},createNode:function(c){var k=this,h=k.childType,n,l,e,m,j,g,d=k.self;if(!c.isModel){if(h){d=k.schema.getEntity(h)}else{n=k.getTreeStore();l=n&&n.getProxy().getReader();e=k.getProxy();m=e?e.getReader():null;j=!l||(m&&m.initialConfig.typeProperty)?m:l;if(j){g=j.getTypeProperty();if(g){d=j.getChildType(k.schema,c,g)}}}c=new d(c)}if(!c.childNodes){c.firstChild=c.lastChild=c.parentNode=c.previousSibling=c.nextSibling=null;c.childNodes=[]}return c},isLeaf:function(){return this.get("leaf")===true},setFirstChild:function(c){this.firstChild=c},setLastChild:function(c){this.lastChild=c},updateInfo:function(j,u){var w=this,d=w.data,v=d.depth,g={},e=w.childNodes,t=e.length,k=w.phantom,r=w.fields,h=w.modified||(w.modified={}),p,o,c,l,x,m=u.parentId,n,q,s;for(p in u){c=r[w.fieldOrdinals[p]];o=u[p];q=c&&c.persist;l=d[p];n=q&&(p==="index")&&(l!==-1)&&(m&&m!==h.parentId);if(!n&&w.isEqual(l,o)){continue}d[p]=o;if(q){if(!n&&h.hasOwnProperty(p)){if(w.isEqual(h[p],o)){delete h[p];w.dirty=false;for(x in h){if(h.hasOwnProperty(x)){w.dirty=true;break}}}}else{w.dirty=true;h[p]=l}}}if(j){w.commit();w.phantom=k}if(w.data.depth!==v){g={depth:w.data.depth+1};for(s=0;s<t;s++){e[s].updateInfo(j,g)}}},isLast:function(){return this.get("isLast")},isFirst:function(){return this.get("isFirst")},hasChildNodes:function(){return !this.isLeaf()&&this.childNodes.length>0},isExpandable:function(){var c=this;if(c.get("expandable")){return !(c.isLeaf()||(c.isLoaded()&&!c.phantom&&!c.hasChildNodes()))}return false},triggerUIUpdate:function(){this.callJoined("afterEdit",[])},appendChild:function(g,o,h){var m=this,j,l,k,n,c,q={isLast:true,parentId:m.getId(),depth:(m.data.depth||0)+1},p,e=m.getTreeStore(),d=e&&e.bulkUpdate;Ext.suspendLayouts();if(Ext.isArray(g)){l=g.length;p=new Array(l);m.callTreeStore("beginFill");for(j=0;j<l;j++){p[j]=m.appendChild(g[j],o,h)}m.callTreeStore("endFill",[p])}else{g=m.createNode(g);if(o!==true&&m.fireEventArgs("beforeappend",[m,g])===false){return false}k=m.childNodes.length;n=g.parentNode;if(n){if(n.removeChild(g,false,o,n.getTreeStore()===e)===false){return false}}e&&e.beginUpdate();k=m.childNodes.length;if(k===0){m.setFirstChild(g)}m.childNodes[k]=g;g.parentNode=m;g.nextSibling=null;m.setLastChild(g);c=m.childNodes[k-1];if(c){g.previousSibling=c;c.nextSibling=g;c.updateInfo(h,{isLast:false});if(!d){c.triggerUIUpdate()}}else{g.previousSibling=null}q.isFirst=k===0;q.index=k;g.updateInfo(h,q);if(m.isLeaf()){m.set("leaf",false)}if(!m.isLoaded()){if(d){m.data.loaded=true}else{m.set("loaded",true)}}else{if(m.childNodes.length===1&&!d){m.triggerUIUpdate()}}if(k&&m.childNodes[k-1].isExpanded()&&!d){m.childNodes[k-1].cascadeBy(m.triggerUIUpdate)}if(e){e.registerNode(m,!d);if(d){e.registerNode(g)}}if(o!==true){m.fireEventArgs("append",[m,g,k]);if(n){g.fireEventArgs("move",[g,n,m,k])}}m.callTreeStore("onNodeAppend",[g,k]);p=g;if(e){e.endUpdate()}}Ext.resumeLayouts(true);return p},getOwnerTree:function(){var c=this.getTreeStore();if(c){return c.ownerTree}},getTreeStore:function(){var c=this;while(c&&!c.treeStore){c=c.parentNode}return c&&c.treeStore},removeChild:function(h,e,o,n){var m=this,l=m.indexOf(h),k,j,c,g=m.getTreeStore(),d=g&&g.bulkUpdate;if(l===-1||(o!==true&&m.fireEventArgs("beforeremove",[m,h,!!n])===false)){return false}Ext.suspendLayouts();g&&g.beginUpdate();Ext.Array.erase(m.childNodes,l,1);if(m.firstChild===h){m.setFirstChild(h.nextSibling)}if(m.lastChild===h){m.setLastChild(h.previousSibling)}c=h.previousSibling;if(c){h.previousSibling.nextSibling=h.nextSibling}if(h.nextSibling){h.nextSibling.previousSibling=h.previousSibling;if(l===0){h.nextSibling.updateInfo(false,{isFirst:true})}for(k=l,j=m.childNodes.length;k<j;k++){m.childNodes[k].updateInfo(false,{index:k})}}else{if(c){c.updateInfo(false,{isLast:true});if(!d){if(c.isExpanded()){c.cascadeBy(m.triggerUIUpdate)}else{c.triggerUIUpdate()}}}}if(!m.childNodes.length&&!d){m.triggerUIUpdate()}Ext.resumeLayouts(true);if(o!==true){m.callTreeStore("beforeNodeRemove",[[h],!!n]);h.previousSibling=h.nextSibling=h.parentNode=null;m.fireEventArgs("remove",[m,h,!!n]);m.callTreeStore("onNodeRemove",[[h],!!n])}if(e){h.erase(true)}else{h.clear()}if(!n){h.set({parentId:null,lastParentId:m.getId()},b)}if(g){g.endUpdate()}return h},copy:function(g,e){var j=this,d=j.callParent([g,e]),c=j.childNodes?j.childNodes.length:0,h;if(e){for(h=0;h<c;h++){d.appendChild(j.childNodes[h].copy(undefined,true))}}return d},clear:function(c){var d=this;d.parentNode=d.previousSibling=d.nextSibling=null;if(c){d.firstChild=d.lastChild=d.childNodes=null}},drop:function(){var h=this,k=h.childNodes,d=h.parentNode,c=k?k.length:0,e,g,j;h.callParent();if(d){j=h.getTreeStore();d.removeChild(h)}else{if(h.get("root")){j=h.getTreeStore();j.setRoot(null)}}j&&j.beginUpdate();for(e=0;e<c;e++){g=k[e];g.clear();g.drop()}j&&j.endUpdate()},erase:function(d){var h=this,j=h.childNodes,c=j&&j.length,e,g;h.remove();h.clear(true);h.callParent([d]);for(e=0;e<c;e++){g=j[e];g.parentNode=null;g.erase(d)}},insertBefore:function(g,l,p){var m=this,k=m.indexOf(l),n=g.parentNode,o=k,h,c,j,e=m.getTreeStore(),d=e&&e.bulkUpdate;if(!l){return m.appendChild(g)}if(g===l){return false}g=m.createNode(g);if(p!==true&&m.fireEventArgs("beforeinsert",[m,g,l])===false){return false}if(n===m&&m.indexOf(g)<k){o--}if(n){if(n.removeChild(g,false,p,n.getTreeStore()===e)===false){return false}}e&&e.beginUpdate();if(o===0){m.setFirstChild(g)}Ext.Array.splice(m.childNodes,o,0,g);g.parentNode=m;g.nextSibling=l;l.previousSibling=g;c=m.childNodes[o-1];if(c){g.previousSibling=c;c.nextSibling=g}else{g.previousSibling=null}g.updateInfo(false,{parentId:m.getId(),index:o,isFirst:o===0,isLast:false,depth:(m.data.depth||0)+1});for(j=o+1,h=m.childNodes.length;j<h;j++){m.childNodes[j].updateInfo(false,{index:j})}if(!m.isLoaded()){if(d){m.data.loaded=true}else{m.set("loaded",true)}}else{if(m.childNodes.length===1&&!d){m.triggerUIUpdate()}}if(e){e.registerNode(m,!d)}if(p!==true){m.fireEventArgs("insert",[m,g,l]);if(n){g.fireEventArgs("move",[g,n,m,o,l])}}m.callTreeStore("onNodeInsert",[g,o]);if(e){e.endUpdate()}return g},insertChild:function(c,e){var d=this.childNodes[c];if(d){return this.insertBefore(e,d)}else{return this.appendChild(e)}},isLastVisible:function(){var e=this,c=e.data.isLast,d=e.nextSibling;if(!c&&e.getTreeStore().isFiltered()){while(d){if(d.data.visible){return false}d=d.nextSibling}return true}return c},remove:function(d,e){var g=this,c=g.parentNode;if(c){c.removeChild(g,d,e)}else{if(d){g.erase(true)}}return g},removeAll:function(c,m,g){var k=this,l=k.childNodes,h=0,j=l.length,e,d;if(!j){return}if(!g){d=k.getTreeStore();d&&d.beginUpdate();d.suspendEvent("remove");k.callTreeStore("beforeNodeRemove",[l,false])}for(;h<j;++h){e=l[h];e.previousSibling=e.nextSibling=e.parentNode=null;k.fireEventArgs("remove",[k,e,false]);if(c){e.erase(true)}else{e.removeAll(false,m,true)}}if(!g){d.resumeEvent("remove");k.callTreeStore("onNodeRemove",[l,false]);d&&d.endUpdate()}k.firstChild=k.lastChild=null;k.childNodes.length=0;if(!g){k.triggerUIUpdate()}return k},getChildAt:function(c){return this.childNodes[c]},replaceChild:function(c,g,e){var d=g?g.nextSibling:null;this.removeChild(g,false,e);this.insertBefore(c,d,e);return g},indexOf:function(c){return Ext.Array.indexOf(this.childNodes,c)},indexOfId:function(g){var e=this.childNodes,c=e.length,d=0;for(;d<c;++d){if(e[d].getId()===g){return d}}return -1},getPath:function(g,e){g=g||this.idProperty;e=e||"/";var d=[this.get(g)],c=this.parentNode;while(c){d.unshift(c.get(g));c=c.parentNode}return e+d.join(e)},getDepth:function(){return this.get("depth")},bubble:function(e,d,c){var g=this;while(g){if(e.apply(d||g,c||[g])===false){break}g=g.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(j,e,c,l){var h=this;if(arguments.length===1&&!Ext.isFunction(j)){l=j.after;e=j.scope;c=j.args;j=j.before}if(!j||j.apply(e||h,c||[h])!==false){var k=h.childNodes,g=k.length,d;for(d=0;d<g;d++){k[d].cascadeBy.call(k[d],j,e,c,l)}if(l){l.apply(e||h,c||[h])}}},eachChild:function(g,e,c){var j=this.childNodes,h=j.length,d;for(d=0;d<h;d++){if(g.apply(e||this,c||[j[d]])===false){break}}},findChild:function(d,e,c){return this.findChildBy(function(){return this.get(d)==e},null,c)},findChildBy:function(k,j,d){var h=this.childNodes,c=h.length,g=0,l,e;for(;g<c;g++){l=h[g];if(k.call(j||l,l)===true){return l}else{if(d){e=l.findChildBy(k,j,d);if(e!==null){return e}}}}return null},contains:function(c){return c.isAncestor(this)},isAncestor:function(c){var d=this.parentNode;while(d){if(d===c){return true}d=d.parentNode}return false},sort:function(m,e,l){var j=this,k=j.childNodes,h=k.length,g,d,c={isFirst:true};if(h>0){if(!m){m=j.getTreeStore().getSortFn()}Ext.Array.sort(k,m);j.setFirstChild(k[0]);j.setLastChild(k[h-1]);for(g=0;g<h;g++){d=k[g];d.previousSibling=k[g-1];d.nextSibling=k[g+1];c.isLast=(g===h-1);c.index=g;d.updateInfo(false,c);c.isFirst=false;if(e&&!d.isLeaf()){d.sort(m,true,true)}}if(l!==true){j.fireEventArgs("sort",[j,k]);j.callTreeStore("onNodeSort",[k])}}},isExpanded:function(){return this.get("expanded")},isLoaded:function(){return this.get("loaded")},isBranchLoaded:function(){var c=!this.isLeaf()&&this.isLoaded();if(c){this.cascadeBy(function(d){if(!d.isLeaf()){c=c||d.isBranchLoaded()}return c})}return c},isLoading:function(){return this.get("loading")},isRoot:function(){return !this.parentNode},isVisible:function(){var c=this.parentNode;while(c){if(!c.isExpanded()){return false}c=c.parentNode}return true},expand:function(c,j,d){var e=this,g,h;if(!e.isLeaf()){if(e.isLoading()){e.on("expand",function(){e.expand(c,j,d)},e,{single:true})}else{if(!e.isExpanded()){if(e.fireEventArgs("beforeexpand",[e])!==false){if(c){if(e.parentNode&&e.parentNode.isSynchronousRecursiveExpand){e.isSynchronousRecursiveExpand=true}else{g=e.getTreeStore();if(g.getProxy().isSynchronous||e.isBranchLoaded()){e.isSynchronousRecursiveExpand=true;g.suspendEvent("add");h=true}}}e.callTreeStore("onBeforeNodeExpand",[e.onChildNodesAvailable,e,[c,j,d]]);if(h){g.resumeEvent("add");g.fireEvent("refresh",g)}e.isSynchronousRecursiveExpand=false}}else{if(c){e.expandChildren(true,j,d)}else{Ext.callback(j,d||e,[e.childNodes])}}}}else{Ext.callback(j,d||e)}},onChildNodesAvailable:function(g,e,m,n){var k=this,d=k.getTreeStore(),c=d&&d.bulkUpdate,j,h,l;Ext.suspendLayouts();for(j=k.parentNode;j;j=j.parentNode){if(!j.isExpanded()){(l||(l=[])).unshift(j)}}if(c){k.data.expanded=true}else{k.set("expanded",true)}if(l){for(h=1;h<l.length;h++){j=l[h];if(c){j.data.expanded=true}else{j.set("expanded",true)}}l[0].expand();for(h=1;h<l.length;h++){j=l[h];j.fireEventArgs("expand",[j,j.childNodes])}}else{k.callTreeStore("onNodeExpand",[g,false])}k.fireEventArgs("expand",[k,g]);if(e){k.expandChildren(true,m,n)}else{Ext.callback(m,n||k,[k.childNodes])}Ext.resumeLayouts(true)},expandChildren:function(h,o,p,j){var m=this,n,k,d,c,l,g,e;if(Ext.isBoolean(o)){n=o;o=p;p=j;j=n}if(j===undefined){e=m.getTreeStore();j=e&&e.singleExpand}d=m.childNodes;c=[];l=j?Math.min(d.length,1):d.length;for(k=0;k<l;++k){g=d[k];if(!g.isLeaf()){c[c.length]=g}}l=c.length;for(k=0;k<l;++k){c[k].expand(h)}if(o){Ext.callback(o,p||m,[m.childNodes])}},collapse:function(e,m,n){var l=this,j=l.isExpanded(),d=l.getTreeStore(),c=d&&d.bulkUpdate,k=l.childNodes.length,g,h;if(!l.isLeaf()&&((!j&&e)||l.fireEventArgs("beforecollapse",[l])!==false)){Ext.suspendLayouts();if(l.isExpanded()){if(e){h=function(){for(g=0;g<k;g++){l.childNodes[g].setCollapsed(true)}};if(m){m=Ext.Function.createSequence(h,Ext.Function.bind(m,n,[l.childNodes]))}else{m=h}}else{if(m){m=Ext.Function.bind(m,n,[l.childNodes])}}if(c){l.data.expanded=false}else{l.set("expanded",false)}l.callTreeStore("onNodeCollapse",[l.childNodes,m,n]);l.fireEventArgs("collapse",[l,l.childNodes]);m=null}else{if(e){for(g=0;g<k;g++){l.childNodes[g].setCollapsed(true)}}}Ext.resumeLayouts(true)}Ext.callback(m,n||l,[l.childNodes])},setCollapsed:function(d){var g=this,c=g.childNodes.length,e;if(!g.isLeaf()&&g.fireEventArgs("beforecollapse",[g])!==false){g.data.expanded=false;g.fireEventArgs("collapse",[g,g.childNodes]);if(d){for(e=0;e<c;e++){g.childNodes[e].setCollapsed(true)}}}},collapseChildren:function(e,l,m){var k=this,h,c=k.childNodes,j=c.length,g=[],d;for(h=0;h<j;++h){d=c[h];if(!d.isLeaf()&&d.isLoaded()&&d.isExpanded()){g.push(d)}}j=g.length;if(j){for(h=0;h<j;++h){d=g[h];if(h===j-1){d.collapse(e,l,m)}else{d.collapse(e)}}}else{Ext.callback(l,m)}},fireEvent:function(c){return this.fireEventArgs(c,Ext.Array.slice(arguments,1))},fireEventArgs:function(d,g){var j=Ext.mixin.Observable.prototype.fireEventArgs,c,h,e;if(a[d]){for(h=this;c!==false&&h;h=(e=h).parentNode){if(h.hasListeners&&h.hasListeners[d]){c=j.call(h,d,g)}}if(c!==false){h=e.getTreeStore();if(h&&h.hasListeners&&h.hasListeners[d="node"+d]){c=h.fireEventArgs(d,g)}}return c}else{return j.apply(this,arguments)}},serialize:function(){var d=Ext.data.writer.Json.prototype.getRecordData(this),h=this.childNodes,c=h.length,g,e;if(c>0){g=[];for(e=0;e<c;e++){g.push(h[e].serialize())}d.children=g}return d},callTreeStore:function(h,c){var e=this,g=e.getTreeStore(),d=g&&g[h];if(g&&d){c=c||[];if(c[0]!==e){c.unshift(e)}d.apply(g,c)}},privates:{join:function(c){if(c.isTreeStore){if(this.isRoot()){this.treeStore=this.store=c}}else{this.callParent([c])}},callJoined:function(d,c){this.callParent([d,c]);this.callTreeStore(d,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(Ext.Array.indexOf(b,"loaded")!==-1){return this.add(this.retrieveChildNodes(a))}if(Ext.Array.indexOf(b,"expanded")!==-1){return this.filter()}if(Ext.Array.indexOf(b,"sorted")!==-1){return this.sort()}}Ext.data.Store.prototype.afterEdit.apply(this,arguments)},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)}},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.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",parentIdProperty:null,clearOnLoad:true,clearRemovedOnLoad:true,nodeParam:"node",defaultRootId:"root",defaultRootText:"Root",folderSort:false},fillCount:0,bulkUpdate:0,_silentOptions:{silent:true},constructor:function(a){var b=this;b.byIdMap={};b.byInternalIdMap={};Ext.data.NodeStore.prototype.constructor.call(this,a)},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(),e=c.getFolderSort();if(b&&(e||d.length)){if(c.getRemoteSort()){if(d.length){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)},updateFolderSort:function(a){this.needsFolderSort=a;this.onSorterEndUpdate()},getSortFn:function(){return this._sortFn||(this._sortFn=this.createSortFn())},createSortFn:function(){var a=this,b=this.sorters.getSortFn();return function(e,d){var g,h,c=0;if(a.needsFolderSort){g=e.data.leaf?1:0;h=d.data.leaf?1:0;c=g-h}if(a.needsIndexSort&&c===0){c=e.data.index-d.data.index}return c||b(e,d)}},afterEdit:function(c,b){var a=this;if(a.needsLocalFilter()){a.doFilter(c)}Ext.data.NodeStore.prototype.afterEdit.call(this,c,b)},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.NodeStore.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}},updateProxy:function(b){var a;if(b){if(b.setIdParam){b.setIdParam(this.getNodeParam())}a=b.getReader();if(Ext.isEmpty(a.getRootProperty())){a.setRootProperty(this.getDefaultRootProperty())}}},setProxy:function(a){this.changingProxy=true;(arguments.callee.$previous||Ext.data.NodeStore.prototype.setProxy).call(this,a);this.changingProxy=false},applyModel:function(a){return Ext.data.NodeStore.prototype.applyModel.apply(this,arguments)||Ext.data.TreeModel},updateModel:function(a){var b=a.prototype.isNode;Ext.data.NodeInterface.decorate(a);if(!b&&!this.changingProxy){this.getProxy().getReader().buildExtractors(true)}},onFilterEndUpdate:function(g){var e=this,d=g.length,a=e.getRoot(),j,c,h,b;if(!e.getRemoteFilter()){if(d){e.doFilter(a)}else{a.cascadeBy({after:function(k){k.set("visible",true,e._silentOptions)}})}if(d){h=[];j=a.childNodes;for(b=0,d=j.length;b<d;b++){c=j[b];if(c.get("visible")){h.push(c)}}}else{h=a.childNodes}e.onNodeFilter(a,h);a.fireEvent("filterchange",a,h);e.fireEvent("filterchange",e,g);e.suppressNextFilter=true;Ext.data.NodeStore.prototype.onFilterEndUpdate.call(this,g);e.suppressNextFilter=false}else{Ext.data.NodeStore.prototype.onFilterEndUpdate.call(this,g)}},onNodeFilter:function(a,e){var c=this,d=c.getData(),b=[];if(c.getRootVisible()){if(e.length){b.push(a)}else{a.set("visible",false,c._silentOptions)}}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;a=g.getRoot(b.raw||b.data);if(a||(b.phantom&&!b.isRoot())){e=b.childType;if(a){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{if(b.isRoot()){j.clearLoadTask()}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(d,a,h,c){var e=this,b=e.indexOf(d)+1,g;if(!e.recursive&&d!==e.getRoot()){return}if(e.needsLocalFilter()){a=Ext.Array.filter(a,e.filterVisible)}if(a.length&&e.data.contains(a[0])){g=e.indexOfNextVisibleNode(d);e.removeAt(b,g-b)}Ext.callback(h,c)},indexOfNextVisibleNode:function(b){var a;while(b.parentNode){for(a=b.nextSibling;a&&!a.get("visible");a=a.nextSibling){}if(a){return this.indexOf(a)}b=b.parentNode}return this.getCount()},filterNew:function(a){return Ext.data.NodeStore.prototype.filterNew.call(this,a)&&!a.get("root")},getNewRecords:function(){return Ext.Array.filter(Ext.Object.getValues(this.byIdMap),this.filterNew,this)},getUpdatedRecords:function(){return Ext.Array.filter(Ext.Object.getValues(this.byIdMap),this.filterUpdated)},beforeNodeRemove:function(b,g){if(!Ext.isArray(g)){g=[g]}var e=this,a=g.length,d,c;for(d=0;!c&&d<a;d++){if(g[d].get("visible")){c=g[d]}}if(c){e.startRemoveIndex=e.indexOf(g[0]);e.lastRemoveIndexPlusOne=e.indexOfNextVisibleNode(g[g.length-1])}else{e.startRemoveIndex=-1;e.lastRemoveIndexPlusOne=0}},afterDrop:Ext.emptyFn,onNodeRemove:function(d,k,j){var h=this,e=h.removedNodes,g=k.length,a=h.startRemoveIndex,b=h.lastRemoveIndexPlusOne,c;h.suspendAutoSync();if(a!==-1){h.removeIsMove=j;h.removeAt(a,b-a);h.removeIsMove=false}for(c=0;c<g;c++){k[c].cascadeBy(function(l){h.unregisterNode(l);if(e&&!j){if(!l.phantom&&!l.erasing&&!h.loading){l.removedFrom=h.indexOf(l);e.push(l);h.needsSync=true}}})}h.resumeAutoSync()},onNodeAppend:function(b,c,a){this.onNodeInsert(b,c,a)},onNodeInsert:function(n,a,g){var j=this,c=a.raw||a.data,h,o,k,b,l,e,m,d;if(n&&j.needsLocalFilter()){j.doFilter(n)}j.beginUpdate();if(j.isVisible(a)){if(g===0||!a.previousSibling){h=n}else{for(o=a.previousSibling;o&&!o.get("visible");o=o.previousSibling){}while(o.isExpanded()&&o.lastChild){o=o.lastChild}h=o}j.insert(j.indexOf(h)+1,a);if(!a.isLeaf()&&a.isExpanded()){if(a.isLoaded()){j.onNodeExpand(a,a.childNodes)}else{if(!j.fillCount){a.set("expanded",false);a.expand()}}}}j.needsSync=j.needsSync||a.phantom||a.dirty;if(!a.isLeaf()&&!a.isLoaded()&&!j.lazyFill){k=j.getProxy().getReader();b=a.getProxy();l=b?b.getReader():null;e=l&&l.initialConfig.rootProperty?l:k;m=e.getRoot(c);if(m){d=a.childType;j.fillNode(a,e.extractData(m,d?{model:d}:undefined))}}j.endUpdate()},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.getRootVisible())&&b.isExpanded())){Ext.suspendLayouts();a.onNodeCollapse(b,c);a.onNodeExpand(b,c);Ext.resumeLayouts(true)}a.resumeAutoSync(a.autoSync)},applyRoot:function(e){var b=this,d=b.getModel(),a=d.prototype.idProperty,c=b.getDefaultRootId();if(e&&!e.isNode){e=Ext.apply({text:b.getDefaultRootText(),root:true,isFirst:true,isLast:true,depth:0,index:0,parentId:null,allowDrag:false},e);if(c&&e[a]===undefined){e[a]=c}e=new d(e);e.store=e.treeStore=b}return e},updateRoot:function(e,b){var c=this,d,a=!b;c.byIdMap={};c.byInternalIdMap={};c.getTrackRemoved();c.suspendEvent("add","remove");if(b&&b.isModel){c.beforeNodeRemove(null,[b]);b.set("root",false);c.onNodeRemove(null,[b]);b.fireEvent("remove",null,b,false);b.fireEvent("rootchange",null);b.store=b.treeStore=null}c.getData().clear();if(e){if(e.fireEventArgs("beforeappend",[null,e])===false){e=null}else{d=e.parentNode;if(d){if(!d.removeChild(e,false,false,d.getTreeStore()===c)){return}}else{if((d=e.getTreeStore())&&d!==c&&e===d.getRoot()){d.setRoot(null)}}e.set("root",true);e.updateInfo(true,{isFirst:true,isLast:true,depth:0,index:0,parentId:null});c.registerNode(e,true);e.fireEvent("append",null,e,false);e.fireEvent("rootchange",e);c.onNodeAppend(null,e,0);e.phantom=true}}c.fireEvent("rootchange",e,b);if(e&&(c.getAutoLoad()||e.isExpanded())){if(e.isLoaded()){c.onNodeExpand(e,e.childNodes);c.fireEvent("datachanged",c);c.fireEvent("refresh",c)}else{e.data.expanded=false;e.expand(false,function(){c.fireEvent("datachanged",c);c.fireEvent("refresh",c)})}}else{if(!a){c.fireEvent("datachanged",c);c.fireEvent("refresh",c)}}c.resumeEvent("add","remove");return e},getNodeById:function(a){return this.byIdMap[a]||null},findNode:function(h,g,d,c,b){if(Ext.isEmpty(g,false)){return null}if(g===this.model.idProperty&&arguments.length<3){return this.byIdMap[g]}var e=Ext.String.createRegex(g,d,c,b),a=null;Ext.Object.eachValue(this.byIdMap,function(j){if(j&&e.test(j.get(h))){a=j;return false}});return a},load:function(c){c=c||{};c.params=c.params||{};var h=this,g=c.node||h.getRoot(),d=h.getProxy(),j=c.callback,e=c.scope,a=h.getClearOnLoad(),b;if(!g){h.setRoot({expanded:true});return}if(g.data.expanded){g.data.loaded=false;if(a){g.data.expanded=false}c.callback=function(l,k,m){if(!a){g.collapse()}g.expand();Ext.callback(j,e,[l,k,m])}}c.id=g.getId();c=Ext.apply({filters:h.getFilters().items,sorters:h.getSorters().items,node:c.node||g,internalScope:h,internalCallback:h.onProxyLoad},c);h.lastOptions=Ext.apply({},c);b=d.createOperation("read",c);if(h.fireEvent("beforeload",h,b)!==false){h.loading=true;h.clearLoadTask();if(a){if(h.getClearRemovedOnLoad()){h.clearRemoved(g)}g.removeAll(false)}b.execute()}if(h.loading&&g){g.set("loading",true)}return h},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.length=0;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.get("lastParentId");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(),j=false,a=h.sortOnLoad&&b>1&&!h.remoteSort&&h.getFolderSort()||g.length,m,k,e,l;++h.bulkUpdate;if(b){if(h.needsLocalFilter()){l=h.getFilters().getFilterFn();d[0].set("visible",l(d[0]))}for(e=1;e<b;e++){m=d[e];k=d[e-1];if(l){m.set("visible",l(m))}j=m.data.index!==k.data.index}if(a){h.needsIndexSort=true;Ext.Array.sort(d,h.getSortFn());h.needsIndexSort=false}else{if(j){Ext.Array.sort(d,h.sortByIndex)}}}if(h.bulkUpdate===1){c.set("loaded",true)}else{c.data.loaded=true}if(d.length){c.appendChild(d,undefined,true)}--h.bulkUpdate;return d},beginFill:function(){var a=this;if(!a.fillCount++){a.beginUpdate();a.suspendEvent("add","update");a.suspendAutoSync();a.fillArray=[]}},endFill:function(e,b){var g=this,h=g.fillArray,d,a,c;h.push(b);if(!--g.fillCount){g.resumeAutoSync();g.resumeEvent("add","update");for(d=0,a=h.length;d<a;d++){c=g.indexOf(h[d][0]);if(c!==-1){g.fireEvent("add",g,h[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.NodeStore.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){++h.loadCount;if(!h.getClearOnLoad()){a=h.cleanRecords(g,a)}if(h.parentIdProperty){a=h.treeify(g,a)}a=h.fillNode(g,a)}Ext.callback(d.onChildNodesAvailable,e,c);h.fireEvent("load",h,a,j,b,g)},treeify:function(e,b){var j=this,k=e.getId(),g=b.length,c,a,d,l=[],h={};for(c=0;c<g;c++){a=b[c];h[a.getId()]=a}for(c=0;c<g;c++){a=b[c];d=a.data[j.parentIdProperty];if(!d||d===k){l.push(a)}else{h[d].appendChild(a)}}return l},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.NodeStore.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.getRootVisible())},getRootNode:function(){return this.getRoot()},setRootNode:function(a){this.setRoot(a);return this.getRoot()},privates:{doFilter:function(b){var a=this.getRoot(),c=this.getFilters().getFilterFn();this.filterNodes(a,b,c)},filterNodes:function(b,e,g){var c=false,h=e.childNodes,a=h&&h.length,d,j;if(a){for(d=0;d<a;++d){this.filterNodes(b,h[d],g)}}c=e===b||g(e);e.set("visible",c,this._silentOptions);return c},needsLocalFilter:function(){return !this.getRemoteFilter()&&this.getFilters().length}},deprecated:{5:{properties:{tree:null}}}},1,0,0,0,["store.tree"],0,[Ext.data,"TreeStore"],0));(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,10)}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 u=this,v=u.data,d=u.record,l=d.fields,o=d.generation,t=d.data,k=d.validationSeparator,c=null,e,h,m,a,r,p,n,s,q,g,x,w;if(b||u.syncGeneration!==o){u.syncGeneration=o;for(p=0,q=l.length;p<q;++p){a=l[p];w=a.name;x=t[w];e=a.defaultInvalidMessage;m=0;if(!(w in v)){v[w]=h=true}else{h=v[w]}if(a.validate!==Ext.emptyFn){g=a.validate(x,k);if(g!==true){m=g||e}}if(!m){m=true}if(m!==h){(c||(c={}))[w]=m}}if(c){u.set(c)}}}},0,0,0,0,0,0,[Ext.data,"Validation"],0));(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),q=m.detachedDiv,p;q.innerHTML=l;p=q.firstChild;return Ext.supports.ChildContentClearedWhenSettingInnerHTML?p.cloneNode(true):p},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){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.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.call(this,a,b)},readRecords:function(b,a){if(Ext.isArray(b)){b=b[0]}this.xmlData=b;return Ext.data.reader.Reader.prototype.readRecords.call(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"},selectorRe:/[^>\s]+/g,writeRecords:function(b,c){var j=this,g=[],d=0,h=c.length,l=j.getDocumentRoot(),k=j.getRecord(),e=k.match(this.selectorRe),m=e.length,n=c.length!==1&&m===1,a;a=this.getTransform();if(a){c=a(c,b)}g.push(j.getHeader()||"");if(!l&&n){l=j.getDefaultDocumentRoot()}if(l){g.push("<",l,">")}for(d=0;d<m-1;d++){g.push("<",e[d],">")}k=e[d];for(d=0;d<h;++d){this.objectToElement(k,c[d],g)}for(d=m-2;d>-1;d--){g.push("</",e[d],">")}if(l){g.push("</",l,">")}b.setXmlData(g.join(""));return b},objectToElement:function(b,e,g){var p,m,h=[],d,c,k,j,l,a,n;if(!g){g=[]}g.push("<",b);for(p in e){m=e[p];if(p[0]==="@"){g.push(" ",p.substr(1),'="',m,'"')}else{if(typeof m==="object"){this.objectToElement(p,m,h)}else{d=p.match(this.selectorRe);if((c=d.length)>1){l=l||{};for(j=l,k=0;k<c;k++){a=j;n=d[k];j=j[n]||(j[n]={})}a[n]=m}else{h.push("<",p,">",m,"</",p,">")}}}}g.push(">");g.push.apply(g,h);if(l){for(p in l){m=l[p];this.objectToElement(p,m,g)}}g.push("</",b,">");return g}},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.call(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.call(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.Client.prototype.constructor.apply(this,arguments);this.cache={};this.initialize()},create:function(e){var k=this,d=e.getRecords(),c=d.length,a=k.getIds(),b,h,g,j;if(k.isHierarchical===undefined){k.isHierarchical=!!d[0].isNode;if(k.isHierarchical){k.getStorageObject().setItem(k.getTreeKey(),true)}}for(g=0;g<c;g++){h=d[g];if(h.phantom){h.phantom=false;j=h.identifier;if(j&&j.isUnique){b=h.getId()}else{b=k.getNextId()}}else{b=h.getId()}k.setRecord(h,b);h.commit();a.push(b)}k.setIds(a);e.setSuccessful(true)},read:function(k){var v=this,u,r=[],d=true,h=v.getModel(),e=0,t=k.getRecordCreator(),g,a,s,n,m,b,o,c,w,l,q,p;if(v.isHierarchical){r=v.getTreeData()}else{o=v.getIds();c=o.length;l=k.getId();if(l){w=v.getRecord(l);if(w!==null){b=t?t(w,h):new h(w)}if(b){r.push(b)}else{d=false}}else{a=k.getSorters();g=k.getFilters();s=k.getLimit();u=[];for(q=0;q<c;q++){w=v.getRecord(o[q]);b=t?t(w,h):new h(w);u.push(b)}if(a){Ext.Array.sort(u,Ext.util.Sorter.createComparator(a))}for(q=k.getStart()||0;q<c;q++){b=u[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;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;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+=encodeURIComponent(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.Ajax.prototype.buildUrl.call(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.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=this.validateValue(g),a;if(h!==true){return h}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},validateValue:function(a){if(a===undefined||a===null){return this.getEmptyMessage()}return true},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 at least {0}",maxOnlyMessage:"Length must be no more 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",allowEmpty:false},validate:function(b){var a=!(b===undefined||b===null);if(a&&!this.getAllowEmpty()){a=!(b==="")}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 must be at least {0}",maxOnlyMessage:"Must be no more than than {0}",bothMessage:"Must be between {0} and {1}",nanMessage:"Must be numeric"},validateValue:function(a){var b=Ext.data.validator.Bound.prototype.validateValue.call(this,a);if(b===true&&isNaN(a)){b=this.getNanMessage()}return b}},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.JsonProvider",Ext.direct.Provider,{parseResponse:function(a){var b=a&&a.responseText;if(b){if(Ext.isObject(b)||Ext.isArray(b)){return b}return Ext.decode(b)}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,{type:"polling",interval:3000,constructor:function(a){var b=this;Ext.direct.JsonProvider.prototype.constructor.call(this,a);b.pollTask=Ext.TaskManager.newTask({run:b.runPoll,interval:b.interval,scope:b})},destroy:function(){this.pollTask=null;Ext.direct.JsonProvider.prototype.destroy.call(this)},doConnect:function(){var c=this,a=c.url,b=c.pollFn;if(b&&Ext.isString(b)){c.pollFn=b=Ext.direct.Manager.parseMethod(b)}else{if(Ext.isFunction(a)){c.pollFn=b=a;c.url=a=null}}if(a||b){c.setInterval(c.interval);c.pollTask.start()}},doDisconnect:function(){this.pollTask.stop()},getInterval:function(){return this.pollTask.interval},setInterval:function(a){var b=this,c=b.pollTask;b.interval=c.interval=a;if(b.isConnected()){c.restart(a)}},runPoll:function(){var d=this,b=d.url,c=d.pollFn,e=d.baseParams,a;if(d.fireEvent("beforepoll",d)!==false){if(c){a=c.directCfg.method.getArgs({params:e!==undefined?e:{},callback:d.onPollFn,scope:d});c.apply(window,a)}else{Ext.Ajax.request({url:b,callback:d.onData,scope:d,params:e})}d.fireEvent("poll",d)}},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)}},onPollFn:function(a,c,d,b){this.onData(null,d,{responseText:a})},inheritableStatics:{checkConfig:function(a){return a&&a.type==="polling"&&(a.url||a.pollFn)}}},1,0,0,0,["direct.pollingprovider"],0,[Ext.direct,"PollingProvider"],0));(Ext.cmd.derive("Ext.direct.RemotingMethod",Ext.Base,{constructor:function(c){var j=this,e=c.params,h=c.len,l=c.metadata,k={},a,g,b,d;j.name=c.name;if(c.formHandler){j.formHandler=c.formHandler}else{if(Ext.isNumeric(h)){j.len=h;j.ordered=true}else{j.named=true;j.strict=c.strict!==undefined?c.strict:true;j.params={};g=e&&e.length;for(b=0;b<g;b++){d=e[b];a=Ext.isObject(d)?d.name:d;j.params[a]=true}}}if(l){e=l.params;h=l.len;if(Ext.isNumeric(h)){k.ordered=true;k.len=h}else{if(Ext.isArray(e)){k.named=true;k.params={};for(b=0,g=e.length;b<g;b++){d=e[b];k.params[d]=true}k.strict=l.strict!==undefined?l.strict:true}}j.metadata=k}},getArgs:function(b){var h=this,c=b.params,j=b.paramOrder,a=b.paramsAsHash,k=b.metadata,l=b.options,g=[],d,e;if(h.ordered){if(h.len>0){if(j){for(d=0,e=j.length;d<e;d++){g.push(c[j[d]])}}else{if(a){g.push(c)}}}}else{g.push(c)}g.push(b.callback,b.scope||window);if(l||k){l=Ext.apply({},l);if(k){l.metadata=k}g.push(l)}return g},getCallData:function(g){var h=this,d=null,e=h.len,c=h.params,k=h.strict,b,l,m,a,n,j;if(h.ordered){l=g[e];m=g[e+1];n=g[e+2];if(e!==0){d=g.slice(0,e)}}else{if(h.formHandler){b=g[0];l=g[1];m=g[2];n=g[3]}else{d=Ext.apply({},g[0]);l=g[1];m=g[2];n=g[3];if(k){for(a in d){if(d.hasOwnProperty(a)&&!c[a]){delete d[a]}}}}}if(h.metadata&&n&&n.metadata){if(h.metadata.ordered){j=n.metadata.slice(0,h.metadata.len)}else{j=Ext.apply({},n.metadata);if(h.metadata.strict){for(a in j){if(j.hasOwnProperty(a)&&!h.metadata.params[a]){delete j[a]}}}}delete n.metadata}return{form:b,data:d,metadata:j,callback:l,scope:m,options:n}}},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,{type:"remoting",enableBuffer:10,maxRetries:1,constructor:function(a){var b=this;Ext.direct.JsonProvider.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=[]},doConnect:function(){if(!this.apiCreated){this.initAPI();this.apiCreated=true}},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,c,a;b=b||Ext.global;g=e.toString().split(".");for(c=0,a=g.length;c<a;c++){d=g[c];b[d]=b[d]||{};b=b[d]}return b},initAPI:function(){var k=this,g=k.actions,d=k.namespace,b=Ext.direct.Manager,e,m,c,h,j,a,l;for(e in g){if(g.hasOwnProperty(e)){if(k.disableNestedActions){m=d[e];if(!m){m=d[e]={}}}else{m=k.getNamespace(d,e);if(!m){m=k.createNamespaces(d,e)}}c=g[e];for(h=0,j=c.length;h<j;++h){a=new Ext.direct.RemotingMethod(c[h]);m[a.name]=l=k.createHandler(e,a);b.registerMethod(l.$name,l)}}}},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(){b.configureFormRequest(c,e,d.call(arguments,0))}}a.name=a.$name=c+"."+e.name;a.$directFn=true;a.directCfg=a.$directCfg={action:c,method:e};return a},connect:function(){var a=this;Ext.direct.JsonProvider.prototype.connect.call(this)},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},getPayload:function(b){var a={action:b.action,method:b.method,data:b.data,type:"rpc",tid:b.id};if(b.metadata){a.metadata=b.metadata}return a},sendRequest:function(a){var h=this,d,b,c,k=h.enableUrlEncode,j,e,g;d={url:h.url,callback:h.onData,scope:h,transaction:a,timeout:h.timeout};if(a.timeout){d.timeout=a.timeout}if(Ext.isArray(a)){b=[];for(e=0,g=a.length;e<g;++e){j=h.getPayload(a[e]);b.push(j)}}else{b=h.getPayload(a)}if(k){c={};c[Ext.isString(k)?k:"data"]=Ext.encode(b);d.params=c}else{d.jsonData=b}Ext.Ajax.request(d)},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=[]}},configureTransaction:function(d,a,g,h){var e,b,j,k,c;e=a.getCallData(g);b=e.callback;j=e.scope;k=e.options;b=b&&j?Ext.Function.bind(b,j):b;c=Ext.apply({},{provider:this,args:g,action:d,method:a.name,form:e.form,data:e.data,metadata:e.metadata,callbackOptions:k,callback:b,isForm:h});if(k&&k.timeout!=null){c.timeout=k.timeout}return new Ext.direct.Transaction(c)},configureRequest:function(c,e,a){var b=this,d;d=b.configureTransaction(c,e,a);if(b.fireEvent("beforecall",b,d,e)!==false){Ext.direct.Manager.addTransaction(d);b.queueTransaction(d);b.fireEvent("call",b,d,e)}},configureFormRequest:function(e,j,b){var d=this,g,c,a,h;g=d.configureTransaction(e,j,b,true);if(d.fireEvent("beforecall",d,g,j)!==false){Ext.direct.Manager.addTransaction(g);c=g.form;a=String(c.getAttribute("enctype")).toLowerCase()==="multipart/form-data";h={extTID:g.id,extAction:e,extMethod:j.name,extType:"rpc",extUpload:String(a)};if(g.metadata){h.extMetadata=Ext.JSON.encode(g.metadata)}Ext.apply(g,{form:c,isUpload:a,params:h});d.sendFormRequest(g);d.fireEvent("call",d,g,j)}},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})},inheritableStatics:{checkConfig:function(a){return a&&a.type==="remoting"&&a.url&&Ext.isArray(a.actions)}}},1,0,0,0,["direct.remotingprovider"],0,[Ext.direct,"RemotingProvider"],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.lastTime=Ext.now();a.resume()},collect:function(){var k=this,a=Ext.cache,b,g,c,l,h,d;for(b in a){if(!a.hasOwnProperty(b)){continue}c=a[b];if(c.skipGarbageCollection){continue}g=c.dom;try{h=Ext.isGarbage(g)}catch(j){delete a[b];continue}if(h){if(c&&c.dom){c.collect()}}}if(Ext.isIE9m){l={};for(b in a){if(a.hasOwnProperty(b)){l[b]=a[b]}}Ext.cache=l}k.lastTime=Ext.now()},pause:function(){clearTimeout(this.timerId)},resume:function(){var a=this,b=a.lastTime;if(Ext.enableGarbageCollector&&(Ext.now()-b>a.interval)){a.collect()}a.timerId=Ext.interval(a.collect,a.interval)}},1,0,0,0,0,0,[Ext.dom,"GarbageCollector"],0));(Ext.cmd.derive("Ext.event.gesture.Recognizer",Ext.Base,{priority:0,handledEvents:[],config:{onRecognized:Ext.emptyFn,callbackScope:null},constructor:function(a){this.initConfig(a);Ext.event.publisher.Gesture.instance.registerRecognizer(this)},onStart:Ext.emptyFn,onEnd:Ext.emptyFn,onTouchStart:Ext.emptyFn,onTouchMove:Ext.emptyFn,onTouchEnd:Ext.emptyFn,onTouchCancel:Ext.emptyFn,fail:function(){return false},fire:function(){this.getOnRecognized().apply(this.getCallbackScope(),arguments)},reset:Ext.emptyFn},1,0,0,0,0,[[Ext.mixin.Identifiable.prototype.mixinId||Ext.mixin.Identifiable.$className,Ext.mixin.Identifiable]],[Ext.event.gesture,"Recognizer"],0));(Ext.cmd.derive("Ext.event.gesture.SingleTouch",Ext.event.gesture.Recognizer,{inheritableStatics:{NOT_SINGLE_TOUCH:"Not Single Touch",TOUCH_MOVED:"Touch Moved",EVENT_CANCELED:"Event Canceled"},onTouchStart:function(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,{priority:300,inheritableStatics:{DIFFERENT_TARGET:"Different Target"},config:{moveDistance:8,tapDistance:24,maxDuration:300},handledEvents:["singletap","doubletap"],singleTapTimer:null,startTime:0,lastTapTime:0,onTouchStart:function(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=Ext.defer(function(){a.fireSingleTap(b)},a.getMaxDuration())},fireSingleTap:function(a,b){this.fire("singletap",a,{touch:b});this.startPoint=null},reset:function(){var a=this;a.startTime=a.lastTapTime=0;a.lastStartPoint=a.startPoint=a.singleTapTimer=null}},0,0,0,0,0,0,[Ext.event.gesture,"DoubleTap"],function(a){var b=Ext.manifest.gestures;a.instance=new a(b&&b.doubleTap)}));(Ext.cmd.derive("Ext.event.gesture.Drag",Ext.event.gesture.SingleTouch,{priority:100,isStarted:false,startPoint:null,previousPoint:null,lastPoint:null,handledEvents:["dragstart","drag","dragend","dragcancel"],config:{minDistance:8},constructor:function(){Ext.event.gesture.SingleTouch.prototype.constructor.apply(this,arguments);this.initInfo()},initInfo:function(){this.info={touch:null,previous:{x:0,y:0},x:0,y:0,delta:{x:0,y:0},absDelta:{x:0,y:0},flick:{velocity:{x:0,y:0}},direction:{x:0,y:0},time:0,previousTime:{x:0,y:0}}},onTouchStart:function(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}},reset:function(){var a=this;a.isStarted=a.lastPoint=a.startPoint=a.previousPoint=a.lastPoint=a.lastMoveEvent=null;a.initInfo()}},1,0,0,0,0,0,[Ext.event.gesture,"Drag"],function(a){var b=Ext.manifest.gestures;a.instance=new a(b&&b.drag)}));(Ext.cmd.derive("Ext.event.gesture.Swipe",Ext.event.gesture.SingleTouch,{priority:500,handledEvents:["swipestart","swipe","swipecancel"],inheritableStatics:{MAX_OFFSET_EXCEEDED:"Max Offset Exceeded",MAX_DURATION_EXCEEDED:"Max Duration Exceeded",DISTANCE_NOT_ENOUGH:"Distance Not Enough"},config:{minDistance:80,maxOffset:35,maxDuration:1000},onTouchStart:function(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},reset:function(){var a=this;a.startTime=a.isHorizontal=a.isVertical=a.startX=a.startY=null}},0,0,0,0,0,0,[Ext.event.gesture,"Swipe"],function(a){var b=Ext.manifest.gestures;a.instance=new a(b&&b.swipe)}));(Ext.cmd.derive("Ext.event.gesture.EdgeSwipe",Ext.event.gesture.Swipe,{priority:800,handledEvents:["edgeswipe","edgeswipestart","edgeswipeend","edgeswipecancel"],inheritableStatics:{NOT_NEAR_EDGE:"Not Near Edge"},config:{minDistance:60},onTouchStart:function(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},reset:function(){var a=this;a.started=a.direction=a.isHorizontal=a.isVertical=a.startX=a.startY=a.startTime=a.distance=null}},0,0,0,0,0,0,[Ext.event.gesture,"EdgeSwipe"],function(a){var b=Ext.manifest.gestures;a.instance=new a(b&&b.edgeSwipe)}));(Ext.cmd.derive("Ext.event.gesture.LongPress",Ext.event.gesture.SingleTouch,{priority:400,inheritableStatics:{DURATION_NOT_ENOUGH:"Duration Not Enough"},config:{moveDistance:8,minDuration:1000},handledEvents:["longpress","taphold"],fireLongPress:function(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=Ext.defer(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.SingleTouch.prototype.fail.apply(this,arguments)},reset:function(){this.isLongPress=this.startPoint=null},fire:function(a){if(a==="longpress"){var b=Array.prototype.slice.call(arguments);b[0]="taphold";this.fire.apply(this,b)}return Ext.event.gesture.SingleTouch.prototype.fire.apply(this,arguments)}},0,0,0,0,0,0,[Ext.event.gesture,"LongPress"],function(a){var b=Ext.manifest.gestures;a.instance=new a(b&&b.longPress)}));(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)}}},reset:function(){this.isTracking=this.isStarted=false}},0,0,0,0,0,0,[Ext.event.gesture,"MultiTouch"],0));(Ext.cmd.derive("Ext.event.gesture.Pinch",Ext.event.gesture.MultiTouch,{priority:600,handledEvents:["pinchstart","pinch","pinchend","pinchcancel"],startDistance:0,lastTouches:null,onTouchMove:function(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.MultiTouch.prototype.fail.apply(this,arguments)},reset:function(){this.lastTouches=null;this.startDistance=0;Ext.event.gesture.MultiTouch.prototype.reset.call(this)}},0,0,0,0,0,0,[Ext.event.gesture,"Pinch"],function(a){var b=Ext.manifest.gestures;a.instance=new a(b&&b.pinch)}));(Ext.cmd.derive("Ext.event.gesture.Rotate",Ext.event.gesture.MultiTouch,{priority:700,handledEvents:["rotatestart","rotate","rotateend","rotatecancel"],startAngle:0,lastTouches:null,lastAngle:null,onTouchMove:function(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)},reset:function(){var a=this;a.lastTouches=a.lastAngle=a.startAngle=null;Ext.event.gesture.MultiTouch.prototype.reset.call(this)}},0,0,0,0,0,0,[Ext.event.gesture,"Rotate"],function(a){var b=Ext.manifest.gestures;a.instance=new a(b&&b.rotate)}));(Ext.cmd.derive("Ext.event.gesture.Tap",Ext.event.gesture.SingleTouch,{priority:200,handledEvents:["tap","tapcancel"],config:{moveDistance:8},onTouchStart:function(a){if(Ext.event.gesture.SingleTouch.prototype.onTouchStart.call(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},reset:function(){this.startPoint=null}},0,0,0,0,0,0,[Ext.event.gesture,"Tap"],function(b){var a=Ext.manifest.gestures;b.instance=new b(a&&a.tap)}));(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},end:function(){this.stop()},stop:function(){this.fireEvent("stop",this)},destroy:function(){this.stop();Ext.Evented.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={};Ext.Evented.prototype.constructor.call(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,{alternateClassName:"Ext.Animator",singleton:true,listenersAttached:false,constructor:function(){this.runningAnimationsData={};return this.callParent(arguments)},attachListeners:function(){this.listenersAttached=true;Ext.getWin().on("transitionend","onTransitionEnd",this)},onTransitionEnd:function(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");b.setAttribute("tabindex",-1);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",Ext,"Animator"],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)}},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.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.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.fx.layout.card.Abstract.prototype.constructor.call(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(){this.listenersAttached=true;Ext.getWin().on({animationstart:"onAnimationStart",animationend:"onAnimationEnd",scope: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.define("Ext.mixin.Mashup",function(a){return{extend:"Ext.Mixin",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)}}});(Ext.cmd.derive("Ext.mixin.Responsive",Ext.Mixin,function(a){return{mixinConfig:{id:"responsive",after:{destroy:"destroy"}},config:{responsiveConfig:{$value:undefined,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]={fn:null,config:h[d]}}}return b}},responsiveFormulas:{$value:0,merge:function(e,b,d,c){return this.mergeNew(e,b,d,c)}}},destroy:function(){a.unregister(this);this.callParent()},privates:{statics:{active:false,all:{},context:Ext.Object.chain(Ext.platformTags),count:0,nextId:0,activate:function(){a.active=true;a.updateContext();Ext.on("resize",a.onResize,a)},deactivate:function(){a.active=false;Ext.un("resize",a.onResize,a)},notify:function(){var d=a.all,c=a.context,b=Ext.GlobalEvents,g=a.timer,e;if(g){a.timer=null;Ext.Function.cancelAnimationFrame(g)}a.updateContext();Ext.suspendLayouts();b.fireEvent("beforeresponsiveupdate",c);for(e in d){d[e].setupResponsiveContext()}b.fireEvent("beginresponsiveupdate",c);for(e in d){d[e].updateResponsiveState()}b.fireEvent("responsiveupdate",c);Ext.resumeLayouts(true)},onResize:function(){if(!a.timer){a.timer=Ext.Function.requestAnimationFrame(a.onTimer)}},onTimer:function(){a.timer=null;a.notify()},processConfig:function(b,j,g){var h=j&&j[g],e=b.config,c,d;if(h){d=b.getConfigurator();c=d.configs[g];e[g]=c.merge(h,e[g],b)}},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()}}},updateContext:function(){var e=Ext.Element,d=e.getViewportWidth(),b=e.getViewportHeight(),c=a.context;c.width=d;c.height=b;c.tall=d<b;c.wide=!c.tall;c.landscape=c.portrait=false;if(!c.platform){c.platform=Ext.platformTags}c[Ext.dom.Element.getOrientation()]=true}},afterClassMixedIn:function(g){var e=g.prototype,b=e.responsiveConfig,d=e.responsiveFormulas,c;if(b||d){c={};if(b){delete e.responsiveConfig;c.responsiveConfig=b}if(d){delete e.responsiveFormulas;c.responsiveFormulas=d}g.getConfigurator().add(c)}},applyResponsiveConfig:function(c){for(var b in c){c[b].fn=Ext.createRuleFn(b)}return c},applyResponsiveFormulas:function(d){var c={},e,b;if(d){for(b in d){if(Ext.isString(e=d[b])){e=Ext.createRuleFn(e)}c[b]=e}}return c},getResponsiveState:function(){var c=a.context,g=this.getResponsiveConfig(),b={},d,e;if(g){for(e in g){d=g[e];if(d.fn.call(this,c)){Ext.merge(b,d.config)}}}return b},setupResponsiveContext:function(){var c=this.getResponsiveFormulas(),d=a.context,b;if(c){for(b in c){d[b]=c[b].call(this,d)}}},transformInstanceConfig:function(d){var c=this,b;a.register(c);if(d){a.processConfig(c,d,"responsiveConfig");a.processConfig(c,d,"responsiveFormulas")}c.setupResponsiveContext();b=c.getResponsiveState();if(d){b=Ext.merge({},d,b);delete b.responsiveConfig;delete b.responsiveFormulas}return b},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.plugin.Abstract",Ext.Base,{alternateClassName:"Ext.AbstractPlugin",isPlugin:true,constructor:function(a){if(a){this.pluginConfig=a;this.initConfig(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,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.define("Ext.overrides.plugin.Abstract",{override:"Ext.plugin.Abstract",$configStrict:false,$configPrefixed:false,disabled:false,getState:null,applyState:null,enable:function(){this.disabled=false},disable:function(){this.disabled=true}});(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.DelimitedValue",Ext.Base,{dateFormat:"C",delimiter:"\t",lineBreak:"\n",quote:'"',parseREs:{},quoteREs:{},constructor:function(a){if(a){Ext.apply(this,a)}},decode:function(l,b){var j=this,c=(b||j.delimiter),o=[],p=[o],a=j.quote,g=j.quoteREs,m=j.parseREs,n=m[c]||(m[c]=new RegExp("(\\"+c+"|\\r?\\n|\\r|^)(?:\\"+a+"([^\\"+a+"]*(?:\\"+a+"\\"+a+"[^\\"+a+"]*)*)\\"+a+'|([^"\\'+c+"\\r\\n]*))","gi")),e=g[a]||(g[a]=new RegExp("\\"+a+"\\"+a,"g")),h,d,k;while(h=n.exec(l)){d=h[1];if(d.length&&d!==c){p.push(o=[])}if(h[2]){k=h[2].replace(e,'"')}else{k=h[3]}o.push(k)}return p},encode:function(m,c){var k=this,e=c||k.delimiter,d=k.dateFormat,b=k.quote,l=m.length,o=[],a=[],g,h,n,j;while(l-->0){n=m[l];a.length=h=n.length;while(h-->0){g=n[h];if(g==null){g=""}else{if(typeof g==="string"){if(g&&g.indexOf(b)>-1){if(!j){j=b+b}g=b+g.split(b).join(j)+b}}else{if(Ext.isDate(g)){g=Ext.Date.format(g,d)}}}a[h]=g}o[l]=a.join(e)}return o.join(k.lineBreak)}},1,0,0,0,0,0,[Ext.util,"DelimitedValue"],0));(Ext.cmd.derive("Ext.util.CSV",Ext.util.DelimitedValue,{singleton:true,delimiter:","},0,0,0,0,0,0,[Ext.util,"CSV"],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=Ext.defer(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.TSV",Ext.util.DelimitedValue,{singleton:true,delimiter:"\t"},0,0,0,0,0,0,[Ext.util,"TSV"],0));(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:"x-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.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.mixins.observable.constructor.call(c);c.setTarget(c.target);if(c.autoLoad){a=c.autoLoad;if(a===true){a=null}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=Ext.interval(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,loadOnRender:false,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;if(b&&a.loadOnRender){if(b.rendered){a.doLoadOnRender()}else{a.mon(b,"render",a.doLoadOnRender,a)}}},doLoadOnRender:function(){var a=this.loadOnRender;this.load(Ext.isObject(a)?a:null)},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,calculatedFrom:true,names:{width:"width",height:"height"}});new e({name:"calculatedFromNatural",natural:true,calculatedFrom:true});new e({name:"calculatedFromShrinkWrap",shrinkWrap:true,calculatedFrom: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("x-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},afterCollapse:function(a,b){if(b){this.onContentChange(a)}},afterExpand:function(a,b){if(b){this.onContentChange(a)}},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(a){return this.owner.items.indexOf(a)+1},moveItemBefore:function(c,d){var a=this.owner,b=a.items,e;if(c===d){return c}e=d?b.indexOf(d):b.length;return a.insert(e,c)},setupRenderTpl:function(a){a.renderBody=this.doRenderBody;a.renderContainer=this.doRenderContainer;a.renderItems=this.doRenderItems},getContentTarget:function(){return this.owner.getDefaultContentTarget()},onAdd:function(a){if(!a.liquidLayout){++this.activeItemCount}Ext.layout.Layout.prototype.onAdd.call(this,a)},onRemove:function(a){if(!a.liquidLayout){--this.activeItemCount}Ext.layout.Layout.prototype.onRemove.call(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:"x-autocontainer-outerCt",innerCtCls:"x-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.container.Container.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(b){var a=this,d=b.target,c=a.owner.getOverflowEl();b.outerCtContext=b.getEl("outerCt",a);b.innerCtContext=b.getEl("innerCt",a);b.overflowContext=(c===b.el)?b:b.getEl(c);if(d[d.contentPaddingProperty]!==undefined){b.paddingContext=b.innerCtContext}},initLayout:function(){var c=this,b=Ext.getScrollbarSize().width,a=c.owner;Ext.layout.container.Container.prototype.initLayout.call(this);if(b&&c.manageOverflow&&!c.hasOwnProperty("lastOverflowAdjust")){if(a.scrollable||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}}if(Ext.isSafari){g=this.outerCt.dom;c=g.style;c.display="table-cell";g.offsetWidth;g.style.display=""}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,activeCounter:0},constructor:function(a){var b=this;b.id=Ext.id(null,"zindex-mgr-");b.zIndexStack=new Ext.util.Collection({sorters:{sorterFn:function(e,d){var c=(e.alwaysOnTop||0)-(d.alwaysOnTop||0);if(!c){c=e.getActiveCounter()-d.getActiveCounter()}return c}},filters:{filterFn:function(c){return c.isVisible()}}});b.zIndexStack.addObserver(b);b.front=null;b.globalListeners=Ext.GlobalEvents.on({hide:b.onComponentShowHide,show:b.onComponentShowHide,scope:b,destroyable:true});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()})}},getId:function(){return this.id},getNextZSeed:function(){return(Ext.ZIndexManager.zBase+=10000)},setBase:function(a){this.zseed=a;return this.onCollectionSort()},onCollectionSort:function(){var j=this,e=j.front,k=j.zseed,l=j.zIndexStack.getRange(),h=l.length,d,g,c,b,m=false;for(d=0;d<h;d++){g=l[d];k=g.setZIndex(k);if(!g.hidden){b=g;if(g.modal){c=g}}}if(b!==e){if(e&&!e.destroying){e.setActive(false)}if(b){m=b.modal||((!e||e.isVisible())&&((b.focusOnToFront&&!b.preventFocusOnActivate)))&&b.isFocusable(true);b.setActive(true,null,m)}}j.front=b;if(c){j._showModalMask(c)}else{j._hideModalMask()}return k},onComponentUpdate:function(a){if(this.zIndexStack.contains(a)){this.zIndexStack.sort()}},onComponentRender:function(a){this.zIndexStack.itemChanged(a,"hidden")},onComponentShowHide:function(a){var b=this.zIndexStack;if(a.isFloating()&&!this.hidingAll&&(b.getSource()||b).contains(a)){b.itemChanged(a,"hidden");b.sort()}},_showModalMask:function(e){var g=this,l=e.el,h=l.getStyle("zIndex")-4,a=e.floatParent?e.floatParent.getTargetEl():e.container,m=g.mask,d=g.maskShim,j,b,k,c;if(!m){m=g.mask=Ext.getBody().createChild({role:"presentation",cls:"x-mask",style:"height:0;width:0"});m.setVisibilityMode(Ext.Element.DISPLAY);m.on("click",g._onMaskClick,g)}else{g._hideModalMask()}m.maskTarget=a;j=g._getMaskBox();if(d){d.setStyle("zIndex",h);d.show();d.setBox(j)}m.setStyle("zIndex",h);b="data-savedtabindex-"+a.getId();k=b+"-temp";c=l.findTabbableElements();if(c.length){l.saveTabbableState(k);l.saveChildrenTabbableState(k)}a.saveTabbableState(b);a.saveChildrenTabbableState(b);if(c.length){l.restoreChildrenTabbableState(k);l.restoreTabbableState(k)}m.show();m.setBox(j)},_hideModalMask:function(){var c=this.mask,a=this.maskShim,d,b;if(c&&c.isVisible()){d=c.maskTarget;b="data-savedtabindex-"+d.getId();d.restoreChildrenTabbableState(b);d.restoreTabbableState(b);c.maskTarget=undefined;c.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(a){var b=this;if(a.zIndexManager){a.zIndexManager.unregister(a)}a.zIndexManager=b;if(!a.rendered){a.on("render",b.onComponentRender,b,{single:true})}b.zIndexStack.add(a)},unregister:function(a){var b=this;delete a.zIndexManager;a.un("render",b.onComponentRender,b);b.zIndexStack.remove(a);b.onCollectionSort()},get:function(a){return a.isComponent?a:this.zIndexStack.get(a)},bringToFront:function(b,e){var c=this,h=c.zIndexStack,a=h.last(),d,g;b=c.get(b);if(!b||h.find("alwaysOnTop",true)){return false}g=b.preventFocusOnActivate;b.preventFocusOnActivate=e;b.setActiveCounter(++Ext.ZIndexManager.activeCounter);b.preventFocusOnActivate=g;d=h.last();return(d===b&&d!==a)},sendToBack:function(a){a=this.get(a);if(a){a.setActiveCounter(0)}return a||null},hideAll:function(){var c=this.zIndexStack.getRange(),a=c.length,b;this.hidingAll=true;for(b=0;b<a;b++){c[b].hide()}this.hidingAll=true},hide:function(){var g=this,e=Ext.Element.getActiveElement(),d=g.tempHidden=g.zIndexStack.getRange(),a=d.length,c,b;g.focusRestoreElement=null;for(c=0;c<a;c++){b=d[c];if(b.el.contains(e)){g.focusRestoreElement=e}b.el.hide();b.hidden=true}},show:function(){var d=this,c,e=d.tempHidden,a=e?e.length:0,b;for(c=0;c<a;c++){b=e[c];b.el.show();b.hidden=false;b.setPosition(b.x,b.y)}d.tempHidden=null;if(d.focusRestoreElement){d.focusRestoreElement.focus()}},getActive:function(){return this.zIndexStack.last()},getBy:function(b,a){return this.zIndexStack.filterBy(b,a).getRange()},each:function(b,a){this.zIndexStack.each(b,a)},eachBottomUp:function(g,e){var b=this.zIndexStack.getRange(),d,a=b.length,c;for(d=0;d<a;d++){c=b[d];if(c.isComponent&&g.call(e||c,c)===false){return}}},eachTopDown:function(e,d){var a=this.zIndexStack.getRange(),c,b;for(c=a.length;c-->0;){b=a[c];if(b.isComponent&&e.call(d||b,b)===false){return}}},destroy:function(){var d=this,b=d.zIndexStack.getRange(),a=b.length,c;for(c=0;c<a;c++){Ext.destroy(b[c])}Ext.destroy(d.mask,d.maskShim,d.zIndexStack,d.globalListeners);d.zIndexStack=d.container=d.targetEl=d.globalListeners=null}},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,items:undefined,layout:"auto",suspendLayout:false,_applyDefaultsOptions:{defaults:true,strict:false},ariaRole:"presentation",baseCls:"x-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(c){var b=this,a=b.getScrollable();++b.layoutCounter;if(a&&b.layoutCounter>1){a.refresh()}if(b.hasListeners.afterlayout){b.fireEvent("afterlayout",b,c)}},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.Component.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 g=this.maskOnDisable,e=this.getChildItemsToDisable(),d=e.length,c,b,a;for(b=0;b<d;b++){c=e[b];if(c.resetDisable!==false&&!c.disabled){a=c.maskOnDisable;c.maskOnDisable=!g;c.disable();c.maskOnDisable=a;c.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},getDefaultFocus:function(){var b=this.defaultFocus,a;if(b!=undefined){a=this.down(b)}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.call(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)},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}e=Math.min(e,a.getCount());a.insert(e,c);d.onMove(c,b,e);if(d.hasListeners.childmove){d.fireEvent("childmove",d,c,b,e)}d.updateLayout()}return c},moveBefore:function(a,b){if(a!==b){a=this.layout.moveItemBefore(a,b)}return a},moveAfter:function(c,d){var b=this.layout,a;if(c!==d){a=d?b.getMoveAfterIndex(d):0;c=b.moveItemBefore(c,this.items.getAt(a))}return c},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,c=b.defaults;if(c){if(Ext.isFunction(c)){c=c.call(b,a)}if(Ext.isString(a)){a=Ext.ComponentManager.get(a)}if(a.isComponent){a.setConfig(c,null,b._applyDefaultsOptions)}else{a=b.getConfigurator().merge(b,Ext.Object.fork(c),a)}}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(){Ext.Component.prototype.finishRenderChildren.call(this);var a=this.getLayout();if(a){a.finishRender()}},getChildItemsToDisable:function(){return this.query("[isFormField],[isFocusableContainer],button")},getComponentId:function(a){return a.getItemId&&a.getItemId()},getContentTarget:function(){return this.getLayout().getContentTarget()},getDefaultContentTarget:function(){return this.el},getFocusEl:function(){var a=this.getDefaultFocus();if(a){return a}else{if(this.focusable){return this.getTargetEl()}}return undefined},getScrollerEl:function(){return this.layout.getScrollerEl()||Ext.Component.prototype.getScrollerEl.call(this)},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){Ext.Component.prototype.setupRenderTpl.apply(this,arguments);this.getLayout().setupRenderTpl(a)}}},0,["container"],["component","box","container"],{component:true,box: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,baseCls:"x-editor",editing:false,preventDefaultAlign:true,specialKeyDelay:1,initComponent:function(){var a=this,b=a.field=Ext.ComponentManager.create(a.field||{},"textfield");b.msgTarget=b.msgTarget||"qtip";a.mon(b,{scope:a,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)},onAdded:function(a){this.ownerCmp=a},onFieldAutosize:function(){this.updateLayout()},afterRender:function(b,a){var c=this,e=c.field,d=e.inputEl;Ext.container.Container.prototype.afterRender.apply(this,arguments);if(d){d.dom.name="";if(c.swallowKeys){d.swallowEvent(["keypress","keydown"])}}},onSpecialKey:function(h,g){var e=this,c=g.getKey(),a=e.completeOnEnter&&c===g.ENTER,d=e.cancelOnEsc&&c===g.ESC,b=e.specialKeyTask;if(a||d){g.stopEvent();if(!b){e.specialKeyTask=b=new Ext.util.DelayedTask()}b.delay(e.specialKeyDelay,a?e.completeEdit:e.cancelEdit,e)}e.fireEvent("specialkey",e,h,g)},startEdit:function(b,d){var c=this,e=c.field,h,a,g;c.completeEdit();c.boundEl=Ext.get(b);h=c.boundEl.dom;d=Ext.isDefined(d)?d:Ext.String.trim(h.textContent||h.innerText||h.innerHTML);if(c.fireEvent("beforestartedit",c,c.boundEl,d)!==false){Ext.suspendLayouts();if(!c.rendered){a=c.ownerCt;g=c.renderTo||(a&&a.getEl())||Ext.getBody();Ext.fly(g).position();c.renderTo=g}c.startValue=d;c.show();c.realign(true);e.suspendEvents();e.setValue(d);e.resetOriginalValue();e.resumeEvents();e.focus(e.selectOnFocus?true:[Number.MAX_VALUE]);if(e.autoSize){e.autoSize()}Ext.resumeLayouts(true);c.toggleBoundEl(false);c.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 c=this,e=c.field,b=c.startValue,d;if(!c.editing){return}if(e.assertValue){e.assertValue()}d=c.getValue();if(!e.isValid()){if(c.revertInvalid!==false){c.cancelEdit(a)}return}if(c.ignoreNoChange&&!e.didValueChange(d,b)){c.onEditComplete(a);return}if(c.fireEvent("beforecomplete",c,d,b)!==false){d=c.getValue();if(c.updateEl&&c.boundEl){c.boundEl.setHtml(d)}c.onEditComplete(a);c.fireEvent("complete",c,d,b)}},onShow:function(){var a=this;Ext.container.Container.prototype.onShow.apply(this,arguments);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){this.editing=false;if(a!==true){this.hide();this.toggleBoundEl(true)}},onFocusLeave:function(b){var a=this;if(a.allowBlur===true&&a.editing&&a.selectSameEditor!==true){this.completeEdit()}Ext.container.Container.prototype.onFocusLeave.call(this,b)},onHide:function(){var a=this,b=a.field;if(a.editing){a.completeEdit()}else{if(b.collapse){b.collapse()}}Ext.container.Container.prototype.onHide.apply(this,arguments)},getValue:function(){return this.field.getValue()},setValue:function(a){this.field.setValue(a)},toggleBoundEl:function(a){if(this.hideEl!==false){this.boundEl.setVisible(a)}},beforeDestroy:function(){var b=this,a=b.specialKeyTask;if(a){a.cancel()}b.specialKeyTask=b.field=b.boundEl=Ext.destroy(b.field);Ext.container.Container.prototype.beforeDestroy.apply(this,arguments)}},0,["editor"],["component","box","container","editor"],{component:true,box: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(g.test){return g}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(d){var c=this,e,b,a;if(c.enabled){e=c.bindings;b=0;a=e.length;c.lastKeyEvent=d=c.processEvent.apply(c.processEventScope||c,arguments);if(c.ignoreInputFields&&Ext.fly(d.target).isInputField()){return}if(!d.getKey){return d}c.processing=true;for(;b<a;++b){c.processBinding(e[b],d)}c.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;if(h.test){if(h.test(String.fromCharCode(a.getCharCode()))){if(j.call(k,g,a)!==true&&b){a[b]()}}}else{if(h.length){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,{capture:a.capture});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",disabled:false,defaultEventAction:false,forceKeyDown:false,eventName:"keypress",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.doConstruction(a)},legacyConstructor:function(b,a){this.doConstruction(Ext.apply({target:b},a))},doConstruction:function(a){var c=this,b={target:a.target,ignoreInputFields:a.ignoreInputFields,eventName:c.getKeyEvent("forceKeyDown" in a?a.forceKeyDown:c.forceKeyDown,a.eventName),capture:a.capture},d;if(c.map){c.map.destroy()}c.initConfig(a);if(a.processEvent){b.processEvent=a.processEvent;b.processEventScope=a.processEventScope||c}if(a.keyMap){d=c.map=a.keyMap}else{d=c.map=new Ext.util.KeyMap(b);c.destroyKeyMap=true}this.addBindings(a);d.disable();if(!a.disabled){d.enable()}},addBindings:function(h){var c=this,b,e,d=c.map,a=Ext.util.KeyNav.keyOptions,g=h.scope||c;for(b in h){e=h[b];if(e&&(b.length===1||(b=a[b])||(!isNaN(b=parseInt(b,10))))){if(typeof e==="function"){e={handler:e,defaultEventAction:(h.defaultEventAction!==undefined)?h.defaultEventAction:c.defaultEventAction}}d.addBinding({key:b,ctrl:e.ctrl,shift:e.shift,alt:e.alt,handler:Ext.Function.bind(c.handleEvent,e.scope||g,[e.handler||e.fn,c],true),defaultEventAction:(e.defaultEventAction!==undefined)?e.defaultEventAction:c.defaultEventAction})}}},handleEvent:function(d,c,b,a){a.lastKeyEvent=c;return b.call(this,c)},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:"x-focus-element",focusFrameCls:"x-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("panel")||m.up(":root");if(o){l=o.getRefItems(true)}}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:"x-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.Component.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]||g}b.html="&#"+d+";";if(g){b.style=b.style||{};b.style.fontFamily=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.Component.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(e){var d=this,g=Ext._glyphFontFamily,a=d.glyph,b=d.el,c;d.glyph=e;if(d.rendered&&e!=a){if(typeof e==="string"){c=e.split("@");e=c[0];g=c[1]||g}b.dom.innerHTML="&#"+e+";";if(g){b.setStyle("font-family",g)}}}},0,["image","imagecomponent"],["component","box","image","imagecomponent"],{component:true,box: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=c?null:d[a];if(b!==e){if(e){d.onUnbindStore(e,c,a);if(d.isComponent&&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,e)}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 b=this.getStoreListeners(a);if(b){b=Ext.apply({},b);if(!b.scope){b.scope=this}this.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:"x-mask-loading",msgWrapCls:"x-mask-msg",useMsg:true,useTargetEl:false,cls:"x-mask",componentCls:"x-border-box",ariaRole:"status",focusable:true,tabIndex:0,autoEl:{tag:"div",role:"status"},childEls:["msgWrapEl","msgEl","msgTextEl"],renderTpl:['<div id="{id}-msgWrapEl" data-ref="msgWrapEl" class="{[values.$comp.msgWrapCls]}">','<div id="{id}-msgEl" data-ref="msgEl" class="{[values.$comp.msgCls]} ',"x-",'mask-msg-inner {childElCls}">','<div id="{id}-msgTextEl" data-ref="msgTextEl" class="',"x-","mask-msg-text",'{childElCls}">{msg}</div>',"</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.call(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)}},initRenderData:function(){var a=Ext.Component.prototype.initRenderData.apply(this,arguments);a.msg=this.msg||"";return a},onRender:function(){Ext.Component.prototype.onRender.apply(this,arguments);this.maskEl=this.el},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(){var a=this;Ext.Component.prototype.afterRender.apply(this,arguments);if(Ext.isIE){a.el.on("mousedown",a.onMouseDown,a)}this.el.skipGarbageCollection=true},onMouseDown:function(b){var a=this.el;if(b.within(a)){b.preventDefault();a.focus()}},onOwnerToFront:function(a,b){this.el.setStyle("zIndex",b+1)},onContainerShow:function(a){if(!this.isHierarchicallyHidden()){this.onComponentShow()}},onContainerHide:function(a){if(this.isHierarchicallyHidden()){this.onComponentHide()}},onContainerExpand:function(a){if(!this.isHierarchicallyHidden()){this.onComponentShow()}},onContainerCollapse:function(a){if(this.isHierarchicallyHidden()){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.activeOwner||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.el.setSize(a.getSize()).alignTo(a,"tl-tl")}b.msgWrapEl.center(b.el)}},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.loadsSynchronously()){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.ownerCmp||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(){var b=this,a=b.ownerCt;if(b.isElement){a.unmask();b.fireEvent("hide",this);return}b.restoreFocus();a.enableTabbing();a.setMasked(false);delete b.showNext;return Ext.Component.prototype.hide.apply(this,arguments)},show:function(){var a=this;if(a.isElement){a.ownerCt.mask(this.useMsg?this.msg:"",this.msgCls);a.fireEvent("show",this);return}return Ext.Component.prototype.show.apply(this,arguments)},afterShow:function(){var c=this,b=c.ownerCt,a=c.el;c.loading=true;Ext.Component.prototype.afterShow.apply(this,arguments);if(c.hasOwnProperty("msgWrapCls")){a.dom.className=c.msgWrapCls}if(c.useMsg){c.msgTextEl.setHtml(c.msg)}else{c.msgEl.hide()}if(c.shim||Ext.useShims){a.enableShim(null,true)}else{a.disableShim()}b.disableTabbing();b.setMasked(true);a.restoreTabbableState();c.saveFocus();c.sizeMask()},onLoad:function(){this.loading=false;this.hide()},beforeDestroy:function(){this.ownerCt=null;this.bindStore(null);Ext.Component.prototype.beforeDestroy.call(this)},onDestroy:function(){var a=this;if(a.isElement){a.ownerCt.unmask()}Ext.Component.prototype.onDestroy.call(this)},privates:{getFocusEl:function(){return this.el},saveFocus:function(){var c=this,b=c.ownerCt.el,a=Ext.Element.getActiveElement();if(b.contains(a)){c.previouslyFocused=a;c.el.focus()}},restoreFocus:function(){var d=this,b=d.ownerCt,c=d.previouslyFocused,a;if(d.el.dom===document.activeElement){if(c){if(Ext.fly(c).isFocusable()){a=c}}else{if(b.getDefaultFocus){a=b.getDefaultFocus()}else{if(b.canFocus()){a=b.getFocusEl()}}}if(a){a.focus()}}delete d.previouslyFocused}}},1,["loadmask"],["component","box","loadmask"],{component:true,box: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(d,r){var m=this,c=m.owner,h=d.ownerCtContext,j=d.heightModel,k=d.widthModel,l=c.el.dom===document.body,g=c.lastBox||m.nullBox,o=c.el.lastBox||m.nullBox,a=!l,e=d.isTopLevel,n,p,b,q;Ext.layout.Layout.prototype.beginLayoutCycle.apply(this,arguments);if(r){if(m.usesContentWidth){++d.consumersContentWidth}if(m.usesContentHeight){++d.consumersContentHeight}if(m.usesWidth){++d.consumersWidth}if(m.usesHeight){++d.consumersHeight}if(h&&!h.hasRawContent){n=c.ownerLayout;if(n){if(n.usesWidth){++d.consumersWidth}if(n.usesHeight){++d.consumersHeight}}}}if(k.configured){b=c[k.names.width];if(e&&k.calculatedFrom){b=g.width}if(!l){a=m.setWidthInDom||(r?b!==o.width:k.constrained)}d.setWidth(b,a)}else{if(e){if(k.calculated){p=g.width;d.setWidth(p,p!=o.width)}p=g.x;d.setProp("x",p,p!=o.x)}}if(j.configured){q=c[j.names.height];if(e&&j.calculatedFrom){q=g.height}if(!l){a=r?q!==o.height:j.constrained}d.setHeight(q,a)}else{if(e){if(j.calculated){p=g.height;d.setHeight(p,p!=o.height)}p=g.y;d.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.component.Auto.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:"x-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.Component.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.Component.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"],["component","box","progressbar"],{component:true,box: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:"x-progress",textCls:"x-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"],["widget","progressbarwidget"],{widget:true,progressbarwidget:true},["widget.progressbarwidget"],0,[Ext,"ProgressBarWidget"],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.call(this,b,c,a)},onRemoved:function(a){this.removeClsWithUI(this.uiCls);Ext.container.Container.prototype.onRemoved.call(this,a)},beforeRender:function(){if(!this.ownerCt){this.initOrientation()}Ext.container.Container.prototype.beforeRender.call(this)},setDock:function(d){var c=this,b,a;if(d!==c.dock){Ext.suspendLayouts();c.clearOrientation();Ext.container.Container.prototype.setDock.call(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 c=this,b=c.dock,a=c.vertical=(b?b in c._verticalSides:c.vertical);c.addClsWithUI([this.vertical?"vertical":"horizontal",c.getDockName()])}}},0,0,["component","box","container"],{component:true,box: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}{childElCls}" 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:"x-title-align-left",center:"x-title-align-center",right:"x-title-align-right"},_iconAlignClasses:{top:"x-title-icon-top",right:"x-title-icon-right",bottom:"x-title-icon-bottom",left:"x-title-icon-left"},_rotationClasses:{0:"x-title-rotate-none",1:"x-title-rotate-right",2:"x-title-rotate-left"},_rotationAngles:{1:90,2:270},baseCls:"x-title",_titleSuffix:"-title",_glyphCls:"x-title-glyph",_iconWrapCls:"x-title-icon-wrap",_baseIconCls:"x-title-icon",_itemCls:"x-title-item",_textCls:"x-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.Component.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.Component.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=Ext.apply({text:b.getText(),headerRole:b.headerRole,id:b.id,ui:b.ui,itemCls:b._itemCls,textCls:b._textCls,iconMarkup:null,iconBeforeTitle:null},Ext.Component.prototype.initRenderData.call(this));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.call(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"],["component","box","title"],{component:true,box:true,title:true},["widget.title"],0,[Ext.panel,"Title"],0));(Ext.cmd.derive("Ext.panel.Tool",Ext.Component,{isTool:true,focusable:true,baseCls:"x-tool",disabledCls:"x-tool-disabled",toolPressedCls:"x-tool-pressed",toolOverCls:"x-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.Component.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"],["component","box","tool"],{component:true,box: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",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:"x-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.panel.Bar.prototype.afterLayout.call(this)},applyTitle:function(e,c){var d=this,a,b;e=e||"";a=typeof e==="string";if(a){e={text:e}}if(c){Ext.suspendLayouts();c.setConfig(e);Ext.resumeLayouts(true);e=c}else{if(a){e.xtype="title"}e.ui=d.ui;e.headerRole=d.headerRole;b=("rotation" in e);e=Ext.create(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.panel.Bar.prototype.beforeLayout.call(this);this.syncBeforeAfterTitleClasses()},beforeRender:function(){var b=this,a=b.itemPosition;b.protoEl.unselectable();Ext.panel.Bar.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.panel.Bar.prototype.onAdd.call(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.call(this,b,c,a)},onRemoved:function(b,c,a){this.syncNoBorderCls();Ext.panel.Bar.prototype.onRemoved.call(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.call(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=Ext.panel.Bar.prototype.getFramingInfoCls.call(this),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"],["component","box","container","header"],{component:true,box:true,container:true,header:true},["widget.header"],0,[Ext.panel,"Header"],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.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(a){this.el.un("mouseover",this.handleMouseReturn,this);if(this.pressedCls){this.el.addCls(this.pressedCls)}this.click(a)},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.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:"x-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="x-",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.call(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:"x-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:{fn:a.handleMouseMove,capture:false},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.resizer.Splitter",Ext.Component,{childEls:["collapseEl"],renderTpl:['<tpl if="collapsible===true">','<div id="{id}-collapseEl" data-ref="collapseEl" role="presentation" class="',"x-","collapse-el ","x-",'layout-split-{collapseDir}{childElCls}">&#160;',"</div>","</tpl>"],isSplitter:true,baseCls:"x-splitter",collapsedClsInternal:"x-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.Component.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.Component.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:"x-layout-split-top"},right:{cls:"x-layout-split-right"},bottom:{cls:"x-layout-split-bottom"},left:{cls:"x-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"],["component","box","splitter"],{component:true,box:true,splitter:true},["widget.splitter"],0,[Ext.resizer,"Splitter"],0));(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"},itemCls:"x-box-item",targetCls:"x-box-layout-ct",targetElCls:"x-box-target",innerCls:"x-box-inner",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(r,s){var m=this,k=m.sizePolicy,h=m.align,g=r.flex,p=h,l=m.names,j=l.height,o=l.width,b=r[o],q=r[j],d=m._percentageRe,c=d.test(b),e=(h==="stretch"),a=(h==="stretchmax"),n=m.constrainAlign;if(!s&&(e||g||c||(n&&!a))){s=m.owner.getSizeModel()}if(e){if(!d.test(q)&&s[j].shrinkWrap){p="stretchmax"}}else{if(!a){if(d.test(q)){p="stretch"}else{if(n&&!s[j].shrinkWrap){p="stretchmax"}else{p=""}}}}if(g||c){if(!s[o].shrinkWrap){k=k.flex}}return k[p]},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.floor(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 j=this,b=j.owner,d=b.stretchMaxPartner,a=j.innerCt.dom.style,h=j.names,g=j.overflowHandler,k=b.getScrollable(),c;e.boxNames=h;if(g){g.beginLayout(e)}if(typeof d==="string"){d=Ext.getCmp(d)||b.query(d)[0]}e.stretchMaxPartner=d&&e.context.getCmp(d);Ext.layout.container.Container.prototype.beginLayout.apply(this,arguments);e.innerCtContext=e.getEl("innerCt",j);e.targetElContext=e.getEl("targetEl",j);e.ownerScrollable=k=b.getScrollable();if(k){c=k.getPosition();e.scrollRestore={};e.scrollRestore[h.x]=c[h.x];e.scrollRestore[h.y]=c[h.y]}a.width="";a.height=""},beginLayoutCycle:function(d,o){var l=this,a=d.state,m=d.ownerScrollable,j=l.align,k=d.boxNames,n=l.pack,c=l._centerRe,e=l.overflowHandler,b=d.state.canScroll,h,g;if(e){e.beginLayoutCycle(d,o)}Ext.layout.container.Container.prototype.beginLayoutCycle.apply(this,arguments);d.parallelSizeModel=h=d[k.widthModel];d.perpendicularSizeModel=g=d[k.heightModel];d.boxOptions={align:j={stretch:j==="stretch",stretchmax:j==="stretchmax",center:c.test(j),bottom:l._endRe.test(j)},pack:n={center:c.test(n),end:n==="end"}};if(m){if(!b){a.canScroll={parallel:!h.shrinkWrap&&m[k.getX](),perpendicular:!g.shrinkWrap&&m[k.getY]()}}if(!a.actualScroll){a.actualScroll={parallel:false,perpendicular:false}}}if(j.stretch&&g.shrinkWrap){j.stretchmax=true;j.stretch=false}j.nostretch=!(j.stretch||j.stretchmax);if(h.shrinkWrap){n.center=n.end=false}l.cacheFlexes(d);l.targetEl.setWidth(20000)},cacheFlexes:function(m){var B=this,n=m.boxNames,a=n.widthModel,h=n.heightModel,c=m.boxOptions.align.nostretch,t=0,b=m.childItems,v=b.length,z=[],o=0,w=0,s=0,l=n.minWidth,y=n.minHeight,j=B._percentageRe,x=0,A=0,g,q,u,k,d,e,r,p;while(v--){q=b[v];g=q.target;e=q[a];if(e.calculated){q.flex=u=g.flex;if(u){t+=u;z.push(q);o+=g[l]||0}else{k=j.exec(g[n.width]);q.percentageParallel=parseFloat(k[1])/100;++x}}if(e.configured){r=g[n.width]}else{r=g[l]||0}s+=r;d=q[h];if(c&&d.calculated){k=j.exec(g[n.height]);q.percentagePerpendicular=parseFloat(k[1])/100;++A}if(d.configured){p=g[n.height]}else{p=g[y]||0}if(p>w){w=p}}m.flexedItems=z;m.flexedMinWidth=o;m.smallestWidth=s;m.smallestHeight=w;m.totalFlex=t;m.percentageWidths=x;m.percentageHeights=A;Ext.Array.sort(z,B.flexSortFn)},calculate:function(e){var k=this,j=e.boxNames,a=e.state,h=a.actualScroll,m=a.needsScroll,c=a.canScroll,l=a.boxPlan||(a.boxPlan={}),g=k.overflowHandler,d=e.parallelSizeModel.shrinkWrap,b=e.perpendicularSizeModel.shrinkWrap;l.targetSize=k.getContainerSize(e);if(c&&!m){a.needsScroll=m={parallel:c.parallel&&l.targetSize[j.width]<e.smallestWidth,perpendicular:c.perpendicular&&l.targetSize[j.height]<e.smallestHeight}}if(!a.parallelDone){a.parallelDone=k.calculateParallel(e,j,l)}if(!a.perpendicularDone){a.perpendicularDone=k.calculatePerpendicular(e,j,l)}if(a.parallelDone&&a.perpendicularDone){if(c&&!a.scrollPass){if(m.parallel!==h.parallel||m.perpendicular!==h.perpendicular){e.invalidate({state:{scrollPass:true,canScroll:c,needsScroll:h}});k.done=false;return}}k.publishInnerCtSize(e);if(k.done&&e.boxOptions.align.stretchmax&&!a.stretchMaxDone){k.calculateStretchMax(e,j,l);a.stretchMaxDone=true}if(g){g.calculate(e)}}else{k.done=false}},calculateParallel:function(x,L,C){var r=this,o=x.parallelSizeModel.shrinkWrap,D=L.width,h=x.childItems,t=L.beforeX,H=L.afterX,l=L.setWidth,A=h.length,w=x.flexedItems,G=w.length,q=x.boxOptions.pack,I=r.padding,b=C.targetSize,p=b[D],M=x.state,z=M.needsScroll,s=M.canScroll,B=0,j=I[t],F=j+I[H],u=Ext.getScrollbarSize(),e=u[L.width],a=u[L.height],J,y,g,m,n,k,c,K,E,v,d;if(!o&&!b[L.gotWidth]){return false}for(J=0;J<A;++J){n=h[J];y=n.marginInfo||n.getMarginInfo();B+=y[D];if(!n[L.widthModel].calculated){E=n.getProp(D);F+=E;if(isNaN(F)){return false}}}F+=B;if(x.percentageWidths){v=p-B;if(isNaN(v)){return false}for(J=0;J<A;++J){n=h[J];if(n.percentageParallel){E=Math.ceil(v*n.percentageParallel);E=n.setWidth(E);F+=E}}}if(o){d=0;C.tooNarrow=false}else{d=p-F;if(z&&z.perpendicular){d-=a}C.tooNarrow=d<x.flexedMinWidth;if(C.tooNarrow&&s&&s.parallel){M.actualScroll.parallel=true}}K=F;g=d;m=x.totalFlex;for(J=0;J<G;J++){n=w[J];k=n.flex;c=r.roundFlex((k/m)*g);c=n[l](c);K+=c;g=Math.max(0,g-c);m-=k}if(q.center){j+=g/2;if(j<0){j=0}}else{if(q.end){j+=g}}for(J=0;J<A;++J){n=h[J];y=n.marginInfo;j+=y[t];n.setProp(L.x,j);j+=y[H]+n.props[D]}K+=x.targetContext.getPaddingInfo()[D];x.state.contentWidth=K;if(z&&z.perpendicular){if(o){K+=e}x[L.hasOverflowY]=true;x.target.componentLayout[L.setWidthInDom]=true;x[L.invalidateScrollY]=Ext.isIE8}x[L.setContentWidth](K);return true},calculatePerpendicular:function(v,M,B){var t=this,Q=v.state,x=Q.needsScroll,u=Q.canScroll,d=v.perpendicularSizeModel.shrinkWrap,b=B.targetSize,j=v.childItems,A=j.length,m=Math.max,l=M.height,n=M.setHeight,h=M.beforeY,s=M.y,J=t.padding,k=J[h],o=b[l]-k-J[M.afterY],G=v.boxOptions.align,p=G.stretch,q=G.stretchmax,P=G.center,O=G.bottom,I=t.constrainAlign,H=0,D=0,F=t.onBeforeConstrainInvalidateChild,C=t.onAfterConstrainInvalidateChild,a=Ext.getScrollbarSize().height,z,K,E,w,y,c,r,e,N,L,g;if(!d&&!b[M.gotHeight]){return false}if(p||((P||O)&&!d)){if(isNaN(o)){return false}}if(x&&x.parallel){if(d){L=true}else{o-=a;B.targetSize[l]-=a}}if(p){c=o;H=m(c,v.smallestHeight)}else{for(K=0;K<A;K++){r=j[K];w=(r.marginInfo||r.getMarginInfo())[l];if(!(g=r.percentagePerpendicular)){E=r.getProp(l)}else{++D;if(d){continue}else{E=g*o-w;E=r[M.setHeight](E)}}if(!d&&I&&r[M.heightModel].shrinkWrap&&E>o){r.invalidate({before:F,after:C,layout:t,childHeight:o,names:M});v.state.parallelDone=false}if(isNaN(H=m(H,E+w,r.target[M.minHeight]||0))){return false}}}if(L){H+=a;v[M.hasOverflowX]=true;v.target.componentLayout[M.setHeightInDom]=true;v[M.invalidateScrollX]=Ext.isIE8}e=v.stretchMaxPartner;if(e){v.setProp("maxChildHeight",H);N=e.childItems;if(N&&N.length){H=m(H,e.getProp("maxChildHeight"));if(isNaN(H)){return false}}}v[M.setContentHeight](H+t.padding[l]+v.targetContext.getPaddingInfo()[l]);if(L){H-=a}if(H>b[l]&&u&&u.perpendicular){Q.actualScroll.perpendicular=true}B.maxSize=H;if(q){c=H}else{if(P||O||D){if(I){c=d?H:o}else{c=d?H:m(o,H)}c-=v.innerCtContext.getBorderInfo()[l]}}for(K=0;K<A;K++){r=j[K];w=r.marginInfo||r.getMarginInfo();z=k+w[h];if(p){r[n](c-w[l])}else{g=r.percentagePerpendicular;if(d&&g){w=r.marginInfo||r.getMarginInfo();E=g*c-w[l];E=r.setHeight(E)}if(P){y=c-r.props[l];if(y>0){z=k+Math[t.alignRoundingMethod](y/2)}}else{if(O){z=m(0,c-z-r.props[l])}}}r.setProp(s,z)}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 m=this,l=b.boxNames,j=b.invalidateScrollX,h=b.invalidateScrollY,c=m.overflowHandler,k=b.restoreScroll,e,a,g,d,p,o,n;if(c){c.completeLayout(b)}if(j||h){a=m.getTarget();e=a.dom;p=e.style;if(j){g=a.getStyle("overflowX");if(g==="auto"){g=p.overflowX;p.overflowX="scroll"}else{j=false}}if(h){d=a.getStyle("overflowY");if(d==="auto"){d=p.overflowY;p.overflowY="scroll"}else{h=false}}if(j||h){e.scrollWidth;if(j){p.overflowX=g}if(h){p.overflowY=d}}}if(k){n=b.ownerScrollable;o=k[l.x];if(o){n[l.setX](o)}o=k[l.y];if(o){n[l.setY](o)}}},finishedLayout:function(b){var a=this.overflowHandler;if(a){a.finishedLayout(b)}Ext.layout.container.Container.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(b,d){d=d||0;var k=this,a=b.state,j=b.boxNames,h=j.height,m=j.width,g=b.boxOptions.align,o=k.padding,l=a.boxPlan,e=l.targetSize,q=l.maxSize,n=a.needsScroll,r=b.innerCtContext,c,p;if(b.parallelSizeModel.shrinkWrap||(l.tooNarrow&&a.canScroll)){c=a.contentWidth-b.targetContext.getPaddingInfo()[m]}else{c=e[m];if(n&&n.perpendicular){c-=Ext.getScrollbarSize()[m]}}c-=d;k.owner.tooNarrow=l.tooNarrow;if(g.stretch){p=q}else{p=l.maxSize+o[j.beforeY]+o[j.afterY]+r.getBorderInfo()[h];if(!b.perpendicularSizeModel.shrinkWrap&&(g.center||g.bottom)){p=Math.max(e[h],p)}}r[j.setWidth](c);r[j.setHeight](p);b.targetElContext.setWidth(b.innerCtContext.props.width-(k.vertical?0:(d||0)));if(isNaN(c+p)){k.done=false}},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 e=this,c=e.overflowHandler,a=e.owner,d=e._props;Ext.apply(e,b?d.vbox:d.hbox);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",getX:"getX",setX:"setX",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",getY:"getY",setY:"setY",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",getX:"getY",setX:"setY",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",getY:"getX",setY:"setX",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.util.FocusableContainer",Ext.Mixin,{mixinConfig:{id:"focusablecontainer",before:{onAdd:"onFocusableChildAdd",onRemove:"onFocusableChildRemove",destroy:"destroyFocusableContainer",onFocusEnter:"onFocusEnter"},after:{afterRender:"initFocusableContainer",onFocusLeave:"onFocusLeave"}},isFocusableContainer:true,enableFocusableContainer:true,activeChildTabIndex:0,inactiveChildTabIndex:-1,privates:{initFocusableContainer:function(){if(this.enableFocusableContainer){this.doInitFocusableContainer()}},doInitFocusableContainer:function(){var b=this,a;a=b.getFocusableContainerEl();b.activateFocusableContainerEl(a);b.mon(a,"mousedown",b.onFocusableContainerMousedown,b);b.focusableKeyNav=b.createFocusableContainerKeyNav(a)},createFocusableContainerKeyNav:function(a){var b=this;return new Ext.util.KeyNav(a,{ignoreInputFields:true,scope:b,tab:b.onFocusableContainerTabKey,enter:b.onFocusableContainerEnterKey,space:b.onFocusableContainerSpaceKey,up:b.onFocusableContainerUpKey,down:b.onFocusableContainerDownKey,left:b.onFocusableContainerLeftKey,right:b.onFocusableContainerRightKey})},destroyFocusableContainer:function(){if(this.enableFocusableContainer){this.doDestroyFocusableContainer()}},doDestroyFocusableContainer:function(){var a=this.focusableKeyNav;if(a){a.destroy();delete this.focusableKeyNav}},getFocusables:function(){return this.items.items},initDefaultFocusable:function(k){var g=this,j=g.activeChildTabIndex,c=false,e,h,b,d,a;e=g.getFocusables();d=e.length;if(!d){return}for(b=0;b<d;b++){h=e[b];if(h.focusable){c=true;a=h.getTabIndex();if(a!=null&&a>=j){return h}}}if(!c){return}h=g.findNextFocusableChild(null,true,e,k);if(h){g.activateFocusable(h)}return h},clearFocusables:function(){var e=this,b=e.getFocusables(),a=b.length,d,c;for(c=0;c<a;c++){d=b[c];if(d.focusable){e.deactivateFocusable(d)}}},activateFocusable:function(c,b){var a=b!=null?b:this.activeChildTabIndex;c.setTabIndex(a)},deactivateFocusable:function(c,b){var a=b!=null?b:this.inactiveChildTabIndex;c.setTabIndex(a)},onFocusableContainerTabKey:function(){return true},onFocusableContainerEnterKey:function(){return true},onFocusableContainerSpaceKey:function(){return true},onFocusableContainerUpKey:function(a){return this.moveChildFocus(a,false)},onFocusableContainerLeftKey:function(a){return this.moveChildFocus(a,false)},onFocusableContainerRightKey:function(a){return this.moveChildFocus(a,true)},onFocusableContainerDownKey:function(a){return this.moveChildFocus(a,true)},getFocusableFromEvent:function(a){var b=Ext.ComponentManager.byElement(a.getTarget());return b},moveChildFocus:function(b,a){var c=this.getFocusableFromEvent(b);return this.focusChild(c,a,b)},focusChild:function(c,a){var b=this.findNextFocusableChild(c,a);if(b){b.focus()}return b},findNextFocusableChild:function(j,h,c,e){var g,b,d,a;c=c||this.getFocusables();b=Ext.Array.indexOf(c,j);h=h===true?1:h===false?-1:h;a=c.length;d=h>0?(b<a?b+h:0):(b>0?b+h:a-1);for(;;d+=h){if(b<0&&(d>=a||d<0)){return null}else{if(d>=a){d=-1;continue}else{if(d<0){d=a;continue}else{if(d===b){return null}}}}g=c[d];if(!g||!g.focusable){continue}if(e||g.isFocusable()){return g}}return null},getFocusableContainerEl:function(){return this.el},onFocusableChildAdd:function(a){return this.doFocusableChildAdd(a)},activateFocusableContainerEl:function(a){a=a||this.getFocusableContainerEl();a.set({tabindex:this.activeChildTabIndex})},deactivateFocusableContainerEl:function(a){a=a||this.getFocusableContainerEl();a.set({tabindex:this.inactiveChildTabIndex})},doFocusableChildAdd:function(a){if(a.focusable){a.focusableContainer=this;this.deactivateFocusable(a)}},onFocusableChildRemove:function(a){return this.doFocusableChildRemove(a)},doFocusableChildRemove:function(a){if(a===this.lastFocusedChild){this.lastFocusedChild=null;this.activateFocusableContainerEl()}delete a.focusableContainer},onFocusableContainerMousedown:function(c,b){var a=Ext.ComponentManager.byElement(b);this.mousedownTimestamp=a===this?Ext.Date.now():0},onFocusEnter:function(c){var a=this,b=c.toComponent,d=a.mousedownTimestamp,h=50,g;a.mousedownTimestamp=0;if(b===a){if(!d||Ext.Date.now()-d>h){g=a.initDefaultFocusable();if(g){a.deactivateFocusableContainerEl();g.focus()}}}else{a.deactivateFocusableContainerEl()}return b},onFocusLeave:function(c){var b=this,a=b.lastFocusedChild;if(!b.isDestroyed){b.clearFocusables();if(a){b.activateFocusable(a)}else{b.activateFocusableContainerEl()}}},beforeFocusableChildBlur:Ext.privateFn,afterFocusableChildBlur:Ext.privateFn,beforeFocusableChildFocus:function(b){var a=this;a.clearFocusables();a.activateFocusable(b);if(b.needArrowKeys){a.guardFocusableChild(b)}},guardFocusableChild:function(d){var c=this,a=c.activeChildTabIndex,b;b=c.findNextFocusableChild(d,-1);if(b){b.setTabIndex(a)}b=c.findNextFocusableChild(d,1);if(b){b.setTabIndex(a)}},afterFocusableChildFocus:function(a){this.lastFocusedChild=a},onFocusableChildShow:Ext.privateFn,onFocusableChildHide:Ext.privateFn,onFocusableChildEnable:Ext.privateFn,onFocusableChildDisable:Ext.privateFn,onFocusableChildMasked:Ext.privateFn,onFocusableChildDestroy:Ext.privateFn,onFocusableChildUpdate:Ext.privateFn}},0,0,0,0,0,0,[Ext.util,"FocusableContainer"],0));(Ext.cmd.derive("Ext.toolbar.Toolbar",Ext.container.Container,{alternateClassName:"Ext.Toolbar",isToolbar:true,baseCls:"x-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:"x-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=Ext.container.Container.prototype.applyDefaults.apply(this,arguments)}return a},trackMenu:function(c,a){var b=this;if(b.trackMenus&&c.menu){c[a?"un":"on"]({mouseover:b.onButtonOver,menushow:b.onButtonMenuShow,menuhide:b.onButtonMenuHide,scope:b})}},getChildItemsToDisable:function(){return this.items.getRange()},onButtonOver:function(a,b){if(this.activeMenuBtn&&this.activeMenuBtn!==a){this.activeMenuBtn.hideMenu();a.focus();a.showMenu(b);this.activeMenuBtn=a}},onButtonMenuShow:function(a){this.activeMenuBtn=a},onButtonMenuHide:function(a){this.activeMenuBtn=null}}},0,["toolbar"],["component","box","container","toolbar"],{component:true,box:true,container:true,toolbar:true},["widget.toolbar"],[[Ext.util.FocusableContainer.prototype.mixinId||Ext.util.FocusableContainer.$className,Ext.util.FocusableContainer]],[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){Ext.defer(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="x-dd-drop-icon" role="presentation"></div><div id="{id}-ghost" data-ref="ghost" class="x-dd-drag-ghost" role="presentation"></div>'],repairCls:"x-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:"x-dd-drag-proxy "+this.dropNotAllowed,shadow:a.shadow||false,renderTo:Ext.getDetachedBody()});Ext.Component.prototype.constructor.apply(this,arguments);this.dropStatus=this.dropNotAllowed},dropAllowed:"x-dd-drop-ok",dropNotAllowed:"x-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="x-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.syncUnderlays()},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.setUnderlaysVisible(false);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,["component","box"],{component:true,box:true},0,0,[Ext.dd,"StatusProxy"],0));(Ext.cmd.derive("Ext.dd.DragSource",Ext.dd.DDProxy,{dropAllowed:"x-dd-drop-ok",dropNotAllowed:"x-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.call(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.DDProxy.prototype.handleMouseDown.apply(this,arguments)}},onBeforeDrag:function(a,b){return true},onStartDrag:Ext.emptyFn,alignElWithMouse:function(){this.proxy.ensureAttachedToBody(true);return Ext.dd.DDProxy.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.DDProxy.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:"x-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.call(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.component.Component.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:["x-docked-noborder-top","x-docked-noborder-right","x-docked-noborder-bottom","x-docked-noborder-left"],noBorderClassesSides:{top:"x-docked-noborder-top",right:"x-docked-noborder-right",bottom:"x-docked-noborder-bottom",left:"x-docked-noborder-left"},borderWidthProps:{top:"border-top-width",right:"border-right-width",bottom:"border-bottom-width",left:"border-left-width"},_itemCls:"x-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.component.Component.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("x-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.component.Component.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.component.Component.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,dockedItems:null,tbar:null,bbar:null,fbar:null,lbar:null,rbar:null,buttons:null,floatable:true,frame:false,frameHeader:true,hideCollapseTool:false,manageHeight:true,maskElement:"el",minButtonWidth:75,preventHeader:false,shrinkWrapDock:false,titleCollapse:undefined,baseCls:"x-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.container.Container.prototype.addUIClsToElement.apply(this,arguments);c.addBodyCls(["x-"+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("x-animating-size")}if(c){c.afterCollapse(a,b)}a.setHiddenDocked();a.fireEvent("collapse",a)},afterExpand:function(b){var a=this,c=a.ownerLayout;a.isCollapsingOrExpanding=0;a.updateCollapseTool();if(b){a.removeCls("x-animating-size")}if(c){c.afterExpand(a,b)}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()}b.afterHeaderInit=true;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:true,shadow:false,frame:c,shim:b.shim,alwaysFramed:b.alwaysFramed,overlapHeader:b.overlapHeader,headerPosition:b.getHeaderPosition(),titleRotation:b.getTitleRotation(),baseCls:b.baseCls,getRefOwner:function(){return b.getRefOwner()},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("x-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(),g="x-border-region-slide-in",d=h.collapsed,k=h.ownerCt||h,b,c,e;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();j.el.show();j.hidden=false;h.el.hide();h.setHiddenState(true);h.collapsed=d;k.updateLayout();e=h.getBox(false,true);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.width=a.width;h.setLocalXY(e.x,e.y+a.height);break;case"right":h.height=a.height;h.setLocalXY(e.x-a.width,e.y);break;case"bottom":h.width=a.width;h.setLocalXY(e.x,e.y-a.height);break;case"left":h.height=a.height;h.setLocalXY(e.x+a.width,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=e.getBox(false,true);switch(b.floated){case"top":b.width=c;b.setLocalY(g.y+g.height);break;case"right":b.height=a;b.setLocalX(g.x-d.width);break;case"bottom":b.width=c;b.setLocalY(g.y-d.height);break;case"left":b.height=a;b.setLocalX(g.x+g.width);break}b.updateLayout({isRoot:true})},getAnimationProps:function(){var b=this,c=b.animCollapse,a;a=Ext.container.Container.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},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(["x-region-collapsed-placeholder","x-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:"x-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.container.Container.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.container.Container.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));a.el.dom.removeAttribute("tabIndex")}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])}k.setTitlePosition(0);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("x-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();a.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.container.Container.prototype.initRenderData.call(this);a.initBodyStyles();a.protoBody.writeTo(b);delete a.protoBody;return b},calculateConstrainedPosition:function(g,b,e,a){var h=this,j=h.header,d,c;if(h.constrainHeader){d=j.lastBox;if(a){if(!j.vertical){a=[a[0],d?d.height:a[1]]}else{a=[d?d.width:a[0],a[1]]}}else{if(d){a=[d.width,d.height]}}c=h.floatParent;g=g||h.constrainTo||(c?c.getTargetEl():null)||h.container||h.el.parent()}return Ext.container.Container.prototype.calculateConstrainedPosition.call(this,g,b,e,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.container.Container.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.container.Container.prototype.isVisible.apply(this,arguments)},onBoxReady:function(){Ext.container.Container.prototype.onBoxReady.apply(this,arguments);if(this.collapsed){this.setHiddenDocked()}},onHide:function(e,b,c){var d=this,a=d.dd;if(d.floatedFromCollapse){d.slideOutFloatedPanel(true)}if(d.draggable&&a){a.endDrag()}if(d.collapsed&&d.placeholder){d.placeholder.hide()}else{Ext.container.Container.prototype.onHide.call(this,e,b,c)}},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.container.Container.prototype.onShow.apply(this,arguments)}},placeholderCollapse:function(g,a){var d=this,c=d.ownerCt,j=g||d.collapseDirection,b="x-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="x-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.container.Container.prototype.removeUIClsFromElement.apply(this,arguments);c.removeBodyCls(["x-"+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},setCollapsed:function(a){this[a?"collapse":"expand"]()},setGlyph:function(c){var b=this,a=b.glyph,e=b.header,d=b.placeholder;if(c!==a){b.glyph=c;if(e){if(e.isHeader){e.setGlyph(c)}else{e.glyph=c}}else{if(b.rendered||b.afterHeaderInit){b.updateHeader()}}if(d&&d.setGlyph){d.setGlyph(c)}b.fireEvent("glyphchange",b,c,a)}},setIcon:function(a){var b=this,c=b.icon,e=b.header,d=b.placeholder;if(a!==c){b.icon=a;if(e){if(e.isHeader){e.setIcon(a)}else{e.icon=a}}else{if(b.rendered||b.afterHeaderInit){b.updateHeader()}}if(d&&d.setIcon){d.setIcon(a)}b.fireEvent("iconchange",b,a,c)}},setIconCls:function(b){var c=this,a=c.iconCls,e=c.header,d=c.placeholder;if(b!==a){c.iconCls=b;if(e){if(e.isHeader){e.setIconCls(b)}else{e.iconCls=b}}else{if(c.rendered||c.afterHeaderInit){c.updateHeader()}}if(d&&d.setIconCls){d.setIconCls(b)}c.fireEvent("iconclschange",c,b,a)}},setTitle:function(e){var c=this,b=c.title,g=c.header,a=c.reExpander,d=c.placeholder;if(e!==b){c.title=e;if(g){if(g.isHeader){g.setTitle(e)}}else{if(c.rendered||c.afterHeaderInit){c.updateHeader()}}if(a){a.setTitle(e)}if(d&&d.setTitle){d.setTitle(e)}c.fireEvent("titlechange",c,e,b)}},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.container.Container.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)}}},updateHeaderPosition:function(a){var b=this.header;if(b&&b.isHeader){b.setDock(a)}},updateIconAlign:function(b){var a=this.header;if(a&&a.isHeader){a.setIconAlign(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){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()}}},privates:{addUIToElement:function(){var a=this;Ext.container.Container.prototype.addUIToElement.apply(this,arguments);a.addBodyCls(a.baseCls+"-body-"+a.ui)},applyTargetCls:function(a){this.getProtoBody().addCls(a)},getDefaultContentTarget:function(){return this.body},getTargetEl:function(){var a=this;return a.body||a.protoBody||a.frameBody||a.el},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(){Ext.container.Container.prototype.initResizable.apply(this,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;Ext.container.Container.prototype.removeUIFromElement.apply(this,arguments);a.removeBodyCls(a.baseCls+"-body-"+a.ui)},setupRenderTpl:function(a){Ext.container.Container.prototype.setupRenderTpl.apply(this,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("x-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"],["component","box","container","panel"],{component:true,box: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.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">{labelSeparator}</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:"x-form-item",labelCls:"x-form-item-label",topLabelCls:"x-form-item-label-top",rightLabelCls:"x-form-item-label-right",labelInnerCls:"x-form-item-label-inner",topLabelSideErrorCls:"x-form-item-label-top-side-error",errorMsgCls:"x-form-error-msg",errorWrapCls:"x-form-error-wrap",errorWrapSideCls:"x-form-error-wrap-side",errorWrapUnderCls:"x-form-error-wrap-under",errorWrapUnderSideLabelCls:"x-form-error-wrap-under-side-label",baseBodyCls:"x-form-item-body",invalidIconCls:"x-form-invalid-icon",invalidUnderCls:"x-form-invalid-under",noLabelCls:"x-form-item-no-label",fieldBodyCls:"",invalidCls:"x-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,c;if(b){return}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);c=Ext.apply({},b.tagConfig);c.attribute="errorqtip";b.setTagConfig(c)},destroyTip:function(){this.tip=Ext.destroy(this.tip)}},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(d){d=d||"";var e=this,g=e.labelSeparator,c=e.labelEl,b=e.errorWrapEl,j=(e.labelAlign!=="top"),a=e.noLabelCls,h=e.errorWrapUnderSideLabelCls;e.fieldLabel=d;if(e.rendered){if(Ext.isEmpty(d)&&e.hideEmptyLabel){e.addCls(a);if(j&&b){b.removeCls(h)}}else{if(g){d=e.trimLabelSeparator()+g}c.dom.firstChild.innerHTML=d;e.removeCls(a);if(j&&b){b.addCls(h)}}e.updateLayout()}},setHideLabel:function(a){var b=this;if(a!==b.hideLabel){b.hideLabel=a;if(b.rendered){b[a?"addCls":"removeCls"](b.noLabelCls);b.updateLayout()}}},setHideEmptyLabel:function(a){var c=this,b;if(a!==c.hideEmptyLabel){c.hideEmptyLabel=a;if(c.rendered&&!c.hideLabel){b=a&&!c.getFieldLabel();c[b?"addCls":"removeCls"](c.noLabelCls);c.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}}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+(q.labelStyle||""),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("x-"+a.ownerLayout.type+"-form-item")}if(!a.hasVisibleLabel()){a.addCls(a.noLabelCls)}},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:"x-list-plain"});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.lastActiveError=b;c.fireEvent("errorchange",c,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,validationField:null},disabled:false,submitValue:true,validateOnChange:true,valuePublishEvent:"change",suspendCheckChange:0,dirty:false,initField:function(){var d=this,c=d.valuePublishEvent,a,b;d.initValue();if(Ext.isString(c)){d.on(c,d.publishValue,d)}else{for(b=0,a=c.length;b<a;++b){d.on(c[b],d.publishValue,d)}}},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()},publishValue:function(){var a=this;if(a.rendered&&!a.getErrors().length){a.publishState("value",a.getValue())}},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(d){var e=[],c=this.getValidationField(),b=this.getValidation(),a;if(c){a=c.validate(d);if(a!==true){e.push(a)}}if(b&&b!==true){e.push(b)}return e},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(a,b){if(b){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"],focusable:true,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 != null"> 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",isTextInput:true,invalidText:"The value in this field is invalid",fieldCls:"x-form-field",focusCls:"form-focus",dirtyCls:"x-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:"x-form-readonly",validateOnBlur:true,hasFocus:false,baseCls:"x-field",fieldBodyCls:"x-field-body",maskOnDisable:false,stretchInputElFixed:true,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("x-form-type-"+a.inputType)},getInputId:function(){return this.inputId||(this.inputId=this.id+"-inputEl")},getSubTplData:function(b){var d=this,c=d.inputType,a=d.getInputId(),e;e=Ext.apply({ui:d.ui,id:a,cmpId:d.id,name:d.name||a,disabled:d.disabled,readOnly:d.readOnly,value:d.getRawValue(),type:c,fieldCls:d.fieldCls,fieldStyle:d.getFieldStyle(),childElCls:b.childElCls,tabIdx:d.tabIndex,inputCls:d.inputCls,typeCls:"x-form-"+(d.isTextInput?"text":c),role:d.ariaRole},d.subTplData);d.getInsertionRenderData(e,d.subTplInsertions);return e},getSubTplMarkup:function(b){var c=this,d=c.getSubTplData(b),e=c.getTpl("preSubTpl"),g=c.getTpl("postSubTpl"),a="";if(e){a+=e.apply(d)}a+=c.getTpl("fieldSubTpl").apply(d);if(g){a+=g.apply(d)}return a},initRenderData:function(){return Ext.applyIf(Ext.Component.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(){this.callParent(arguments);this.mixins.labelable.self.initTip();this.renderActiveError()},onFocusLeave:function(a){Ext.Component.prototype.onFocusLeave.call(this,a);this.completeEdit()},completeEdit:Ext.emptyFn,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.apply(this,arguments);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 e=this,h=e.inputEl,g=e.onFieldMutation,c=e.checkChangeEvents,a=c.length,b,d;if(h){e.mon(h,Ext.supports.SpecialKeyDownRepeat?"keydown":"keypress",e.fireKey,e);for(b=0;b<a;++b){d=c[b];if(d==="propertychange"){e.usesPropertychange=true}e.mon(h,d,g,e)}}Ext.Component.prototype.initEvents.call(this)},onFieldMutation:function(c){var b=this,a=b.checkChangeTask;if(!(c.type=="propertychange"&&b.ignoreChangeRe.test(c.browserEvent.propertyName))){if(!a){b.checkChangeTask=a=new Ext.util.DelayedTask(b.doCheckChangeTask,b)}if(!b.bindNotifyListener){b.bindNotifyListener=Ext.on("beforebindnotify",b.onBeforeNotify,b,{destroyable:true})}a.delay(b.checkChangeBuffer)}},doCheckChangeTask:function(){var a=this.bindNotifyListener;if(a){a.destroy();this.bindNotifyListener=null}this.checkChange()},publishValue:function(){var a=this;if(a.rendered&&!a.getErrors().length){a.publishState("value",a.getValue())}},bindPropertyChange:function(c){var b=this,a=b.usesPropertychange;if(a){b[c?"mon":"mun"](b.inputEl,"propertychange",b.onFieldMutation)}},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)},beforeDestroy:function(){var b=this,a=b.checkChangeTask;if(a){a.cancel()}b.checkChangeTask=b.bindNotifyListener=Ext.destroy(b.bindNotifyListener);Ext.Component.prototype.beforeDestroy.call(this)},privates:{applyBind:function(g,c){var b=this,a=c&&c.value,e,d;e=Ext.Component.prototype.applyBind.call(this,g,c);d=e.value;b.hasBindingValue=!!d;if(d!==a&&b.getInherited().modelValidation){b.updateValueBinding(e)}return e},applyRenderSelectors:function(){var a=this;Ext.Component.prototype.applyRenderSelectors.call(this);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 Ext.Component.prototype.initRenderTpl.call(this)},onBeforeNotify:function(){this.checkChangeTask.cancel();this.checkChange()},updateValueBinding:function(d){var c=this,b=d.value,a=d.$fieldBinding;if(a){a.destroy();d.$fieldBinding=null}if(b&&b.bindValidationField){c.fieldBinding=b.bindValidationField("setValidationField",c)}}},deprecated:{"5":{methods:{doComponentLayout:function(){this.bindPropertyChange(false);this.callParent(arguments);this.bindPropertyChange(true)}}}}},0,["field"],["component","box","field"],{component:true,box: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}],focusable:false,readOnly:true,fieldCls:"x-form-display-field",fieldBodyCls:"x-form-display-field-body",htmlEncode:false,noWrap:false,validateOnChange:false,initEvents:Ext.emptyFn,submitValue:false,getValue:function(){return this.value},valueToRaw:function(a){if(a||a===0||a===false){return a}else{return""}},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(b){var a=Ext.form.field.Base.prototype.getSubTplData.apply(this,arguments);a.value=this.getDisplayValue();return a}},0,["displayfield"],["component","box","field","displayfield"],{component:true,box:true,field:true,displayfield: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:"x-fit-item",targetCls:"x-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:"x-grid",extraBodyCls:"x-grid-body",defaultBindProperty:"store",layout:"fit",ariaRole:"grid",config:{selection:null},publishes:["selection"],twoWayBindable:["selection"],autoLoad:false,variableRowHeight:false,numFromEdge:2,trailingBufferZone:10,leadingBufferZone:20,hasView:false,viewType:null,deferRowRender:false,sortableColumns:true,multiColumnSort:false,enableLocking:false,scrollerOwner:true,enableColumnMove:true,sealedColumns:false,enableColumnResize:true,rowLines:true,bufferedRenderer:true,ownerGrid:null,colLinesCls:"x-grid-with-col-lines",rowLinesCls:"x-grid-with-row-lines",noRowLinesCls:"x-grid-no-row-lines",hiddenHeaderCtCls:"x-grid-header-ct-hidden",hiddenHeaderCls:"x-grid-header-hidden",resizeMarkerCls:"x-grid-resize-marker",emptyCls:"x-grid-empty",focusable:true,constructor:function(b){var c=this,a;c.ownerGrid=(b&&b.ownerGrid)||c;Ext.panel.Panel.prototype.constructor.call(this,b);a=this.store;a.trackStateChanges=true;if(c.autoLoad){a.unblockLoad();a.load()}},initComponent:function(){var g=this,d=g.columns||g.colModel||[],h,c,e,k,j=g.store=Ext.data.StoreManager.lookup(g.store||"ext-empty-store"),b,a;g.enableLocking=g.enableLocking||g.hasLockedColumns(d);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(d.isRootHeader){if(g.hideHeaders){d.setHeight(0);d.hiddenHeaders=true}g.headerCt=d;g.headerCt.grid=g;g.headerCt.forceFit=!!g.forceFit;g.columnManager=d.columnManager;g.visibleColumnManager=d.visibleColumnManager}else{if(Ext.isArray(d)){d={items:d}}Ext.apply(d,{grid:g,forceFit:g.forceFit,sortable:g.sortableColumns,enableColumnMove:g.enableColumnMove,enableColumnResize:g.enableColumnResize,columnLines:g.columnLines,sealed:g.sealedColumns});if(g.hideHeaders){d.height=0;d.hiddenHeaders=true}if(Ext.isDefined(g.enableColumnHide)){d.enableColumnHide=g.enableColumnHide}g.headerCt=new Ext.grid.header.Container(d)}g.headerCt.setScrollable({x:false,y:false})}g.columns=b=g.headerCt.getGridColumns();g.scrollTask=new Ext.util.DelayedTask(g.syncHorizontalScroll,g);g.cls=(g.cls||"")+(" "+g.extraBaseCls);delete g.autoScroll;k=g.plugins&&Ext.Array.findBy(g.plugins,function(l){return l.isBufferedRenderer});if(k){g.bufferedRenderer=k}if(!g.hasView){if(j.isBufferedStore&&!j.remoteSort){for(c=0,e=b.length;c<e;c++){b[c].sortable=false}}if(g.hideHeaders){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||{};h=g.getView();g.items=[h];g.hasView=true;if(!g.hideHeaders){a=h.getScrollable();if(a){g.headerCt.getScrollable().addPartner(a,"x")}}g.bindStore(j,true);g.mon(h,{viewready:g.onViewReady,refresh:g.onRestoreHorzScroll,scope:g})}g.selModel=g.view.getSelectionModel();if(g.selModel.isRowModel){g.selModel.on("selectionchange",g.updateBindSelection,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","beforeitemkeyup","itemkeyup","beforeitemkeypress","itemkeypress","beforecontainermousedown","beforecontainermouseup","beforecontainermouseover","beforecontainermouseout","beforecontainerclick","beforecontainerdblclick","beforecontainercontextmenu","beforecontainerkeydown","beforecontainerkeyup","beforecontainerkeypress","containermouseup","containermousedown","containermouseover","containermouseout","containerclick","containerdblclick","containercontextmenu","containerkeydown","containerkeyup","containerkeypress","selectionchange","beforeselect","select","beforedeselect","deselect"]);Ext.panel.Panel.prototype.initComponent.apply(this,arguments);g.addStateEvents(["columnresize","columnmove","columnhide","columnshow","sortchange","filterchange","groupchange"])},beforeRender:function(){var a=this,b=a.bufferedRenderer;if(!a.lockable){if(b&&a.getSizeModel().height.auto){a.bufferedRenderer=b=false}if(b&&!b.isBufferedRenderer){b={xclass:"Ext.grid.plugin.BufferedRenderer"};Ext.copyTo(b,a,"variableRowHeight,numFromEdge,trailingBufferZone,leadingBufferZone,scrollToLoadBuffer");a.bufferedRenderer=a.addPlugin(b)}}Ext.panel.Panel.prototype.beforeRender.apply(this,arguments)},focus:function(){this.getView().focus()},disableColumnHeaders:function(){this.headerCt.disable()},enableColumnHeaders:function(){this.headerCt.enable()},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 c=this,a,d,b;if(!c.view){b=c.viewConfig;a=b.scroll||c.scroll;d=c.scrollable;if(d==null&&b.scrollable==null&&a!==null){if(a===true||a==="both"){d=true}else{if(a===false||a==="none"){d=false}else{if(a==="vertical"){d={x:false,y:true}}else{if(a==="horizontal"){d={x:true,y:false}}}}}}b=Ext.apply({grid:c,ownerGrid:c.ownerGrid,deferInitialRefresh:c.deferRowRender,variableRowHeight:c.variableRowHeight,preserveScrollOnRefresh:true,trackOver:c.trackMouseOver!==false,throttledUpdate:c.throttledUpdate===true,xtype:c.viewType,store:c.store,headerCt:c.headerCt,columnLines:c.columnLines,rowLines:c.rowLines,navigationModel:"grid",features:c.features,panel:c,emptyText:c.emptyText||""},c.viewConfig);if(d!=null){b.scrollable=d;c.scrollable=null}Ext.create(b);if(c.view.emptyText){c.view.emptyText='<div class="'+c.emptyCls+'">'+c.view.emptyText+"</div>"}c.view.getComponentLayout().headerCt=c.headerCt;c.mon(c.view,{uievent:c.processEvent,scope:c});c.headerCt.view=c.view;if(c.hasListeners.viewcreated){c.fireEvent("viewcreated",c,c.view)}}return c.view},getColumnManager:function(){return this.columnManager},getVisibleColumnManager:function(){return this.visibleColumnManager},getTopLevelColumnManager:function(){return this.ownerGrid.getColumnManager()},getTopLevelVisibleColumnManager:function(){return this.ownerGrid.getVisibleColumnManager()},setAutoScroll:Ext.emptyFn,applyScrollable:function(a){if(this.view){this.view.setScrollable(a)}return a},getScrollable:function(){return null},processEvent:function(g,j,k,a,h,d,c,l){var b=d.position.column;if(b){return b.processEvent.apply(b,arguments)}},ensureVisible:function(a,b){this.doEnsureVisible(a,b)},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(){var a=this.view.getScrollable(),b;if(a){b=a.getSize();if(b){a.setSize({x:this.headerCt.getTableWidth(),y:b.y})}}},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()},updateSelection:function(a){var b=this,c;if(!b.ignoreNextSelection){b.ignoreNextSelection=true;c=b.getSelectionModel();if(a){c.select(a)}else{c.deselectAll()}b.ignoreNextSelection=false}},updateBindSelection:function(a,c){var d=this,b=null;if(!d.ignoreNextSelection){d.ignoreNextSelection=true;if(c.length){b=a.getLastSelected();d.hasHadSelection=true}if(d.hasHadSelection){d.setSelection(b)}d.ignoreNextSelection=false}},getNavigationModel:function(){return this.getView().getNavigationModel()},getSelectionModel:function(){return this.getView().getSelectionModel()},getScrollTarget:function(){var a=this.getScrollerOwner().query("tableview");return a[a.length-1]},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();if(b){d.store=b;if(a.store!==b){a.bindStore(b,false)}d.mon(b,{load:d.onStoreLoad,scope:d});d.storeRelayers=d.relayEvents(b,["filterchange","groupchange"])}else{d.unbindStore()}},unbindStore:function(){var c=this,b=c.store,a;if(b){c.store=null;c.mun(b,{load:c.onStoreLoad,scope:c});Ext.destroy(c.storeRelayers);a=c.view;if(a.store){a.bindStore(null)}}},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);Ext.suspendLayouts();if(d.lockable){d.reconfigureLockable(a,c)}else{if(c){delete d.scrollXPos;e.removeAll();e.add(c)}if(a&&(a=Ext.StoreManager.lookup(a))!==g){d.unbindStore();d.bindStore(a)}else{d.getView().refreshView()}}Ext.resumeLayouts(true);d.fireEvent("reconfigure",d,a,c,g,b);delete d.reconfiguring},beforeDestroy:function(){var b=this,a=b.scrollTask;if(a){a.cancel();b.scrollTask=null}Ext.destroy(b.focusEnterLeaveListeners);Ext.panel.Panel.prototype.beforeDestroy.call(this)},onDestroy:function(){var a=this;if(a.lockable){a.destroyLockable()}a.unbindStore();Ext.panel.Panel.prototype.onDestroy.call(this);a.columns=a.storeRelayers=a.columnManager=a.visibleColumnManager=null},destroy:function(){var a=this;Ext.panel.Panel.prototype.destroy.call(this);if(a.isDestroyed){a.view=a.selModel=a.headerCt=null}},privates:{initFocusableElement:function(){},doEnsureVisible:function(d,m){if(this.lockable){return this.ensureLockedVisible(d,m)}if(typeof d!=="number"&&!d.isEntity){d=this.store.getById(d)}var e=this,j,k,a,b,h,l,g=e.getView(),c=g.getNode(d);if(m){j=m.callback;k=m.scope;a=m.animate;b=m.highlight;h=m.select;l=m.focus}if(c){g.getScrollable().scrollIntoView(c,null,a,b);if(!d.isEntity){d=g.getRecord(c)}if(h){g.getSelectionModel().select(d)}if(l){g.getNavigationModel().setPosition(d,0)}Ext.callback(j,k||e,[true,d,c])}else{if(g.bufferedRenderer){g.bufferedRenderer.scrollTo(d,{animate:a,highlight:b,select:h,focus:l,callback:function(p,n,o){Ext.callback(j,k||e,[true,n,o])}})}else{Ext.callback(j,k||e,[false,null])}}},getFocusEl:function(){return this.getView().getFocusEl()}}},1,["tablepanel"],["component","box","container","panel","tablepanel"],{component:true,box:true,container:true,panel:true,tablepanel:true},["widget.tablepanel"],0,[Ext.panel,"Table"],0));(Ext.cmd.derive("Ext.selection.Model",Ext.mixin.Observable,{alternateClassName:"Ext.AbstractSelectionModel",factoryConfig:{defaultType:"dataviewmodel"},$configPrefixed:false,$configStrict:false,config:{store:null,selected:{}},isSelectionModel:true,allowDeselect:undefined,toggleOnClick:true,selected:null,pruneRemoved:true,suspendChange:0,ignoreRightMouseSelection:false,constructor:function(a){var b=this;b.modes={SINGLE:true,SIMPLE:true,MULTI:true};Ext.mixin.Observable.prototype.constructor.call(this,a);b.setSelectionMode(b.mode);if(b.selectionMode!=="SINGLE"){b.allowDeselect=true}},updateStore:function(a,b){this.bindStore(a,!b)},applySelected:function(a){if(!a.isCollection){a=new Ext.util.Collection(Ext.apply({rootProperty:"data"},a))}return a},onBindStore:function(a,b){this.mixins.storeholder.onBindStore.call(this,[a,b]);if(a){this.refresh()}},getStoreListeners:function(){var a=this;return{add:a.onStoreAdd,clear:a.onStoreClear,remove:a.onStoreRemove,update:a.onStoreUpdate,idchanged:a.onIdChanged,load:a.onStoreLoad,refresh:a.onStoreRefresh,pageadd:a.onPageAdd,pageremove:a.onPageRemove}},suspendChanges:function(){++this.suspendChange},resumeChanges:function(){if(this.suspendChange){--this.suspendChange}},selectAll:function(a){var c=this,b=c.store.getRange(),d=c.getSelection().length;c.suspendChanges();c.doSelect(b,true,a);c.resumeChanges();if(!a){c.maybeFireSelectionChange(c.getSelection().length!==d)}},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(){return this.selectionStart},setSelectionStart:function(a){this.selectionStart=a},selectWithEvent:function(b,g){var d=this,c=d.isSelected(b),a=g.shiftKey;switch(d.selectionMode){case"MULTI":d.selectWithEventMulti(b,g,c);break;case"SIMPLE":d.selectWithEventSimple(b,g,c);break;case"SINGLE":d.selectWithEventSingle(b,g,c);break}if(!a){if(d.isSelected(b)){d.selectionStart=b}else{d.selectionStart=null}}},vetoSelection:function(a){if(a.type!=="keydown"&&a.button!==0){if(this.ignoreRightMouseSelection||this.isSelected(a.record)){return true}}else{return a.type==="mousedown"}},onNavigate:function(h){if(!h.record||this.vetoSelection(h.keyEvent)){return}this.onBeforeNavigate(h);var k=this,j=h.keyEvent,b=j.ctrlKey||h.ctrlKey,d=h.recordIndex,g=h.record,o=h.previousRecord,c=k.isSelected(g),m=(k.selectionStart&&k.isSelected(h.previousRecord))?k.selectionStart:(k.selectionStart=h.previousRecord),a=h.previousRecordIndex,n=j.getCharCode(),p=n===j.SPACE,l=n===j.UP||n===j.PAGE_UP?"up":(n===j.DOWN||n===j.DOWN?"down":null);switch(k.selectionMode){case"MULTI":if(n===j.A&&b){k.selected.beginUpdate();k.selectRange(0,k.store.getCount()-1);k.selected.endUpdate()}else{if(p){if(j.shiftKey){k.selectRange(m,g,b)}else{if(c){if(k.allowDeselect){k.doDeselect(g)}}else{k.doSelect(g,b)}}}else{if(j.shiftKey&&m){if(l==="up"&&a<=d){k.deselectRange(o,d+1)}else{if(l==="down"&&a>=d){k.deselectRange(o,d-1)}else{if(m!==g){k.selectRange(m,g,b)}}}k.lastSelected=g}else{if(n){if(!b){k.doSelect(g,false)}}else{k.selectWithEvent(g,j)}}}}break;case"SIMPLE":if(n===j.A&&b){k.selected.beginUpdate();k.selectRange(0,k.store.getCount()-1);k.selected.endUpdate()}else{if(c){k.doDeselect(g)}else{k.doSelect(g,true)}}break;case"SINGLE":if(p){if(c){if(k.allowDeselect){k.doDeselect(g)}}else{k.doSelect(g)}}else{if(b){break}else{if(k.allowDeselect&&c){k.doDeselect(g)}else{k.doSelect(g,false)}}}break}if(!j.shiftKey){if(k.isSelected(g)){k.selectionStart=g}}},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{if(a){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){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,k);if(m[0]){h.maybeFireSelectionChange(m[1]>0&&!k);return}else{j=m[1]>0}}c=function(){if(!b.getCount()){h.selectionStart=e}b.add(e);j=true};for(d=0;d<g;d++){e=a[d];if(h.isSelected(e)){continue}h.onSelectChange(e,true,k,c)}h.lastSelected=e;h.maybeFireSelectionChange(j&&!k)},deselectDuringSelect:function(d,j){var h=this,a=h.selected.getRange(),g=a.length,c=0,e=false,k,b;h.suspendChanges();h.deselectingDuringSelect=true;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.deselectingDuringSelect=false;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);if(e===j.selectionStart){j.selectionStart=null}};h=a.length;j.suspendChanges();for(;d<h;d++){e=a[d];if(j.isSelected(e)){if(j.lastSelected===e){j.lastSelected=b.last()}++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();var h=d.deselectDuringSelect([a],b);d.resumeChanges();if(h[0]){return false}}d.lastSelected=a;if(!c.getCount()){d.selectionStart=a}c.add(a);g=true};d.onSelectChange(a,true,b,e);if(g){d.maybeFireSelectionChange(!b)}},maybeFireSelectionChange:function(a){var b=this;if(a&&!b.suspendChange){b.fireEvent("selectionchange",b,b.getSelection())}},getLastSelected:function(){return this.lastSelected},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(){var a=this.getSelected();return !!(a&&a.getCount())},refresh:function(){var m=this,p=m.store,b,h=[],l=[],g=m.getSelection(),j=g.length,o,c=m.getSelected(),n,e=0,k,a;if(!p||!(c.isCollection||c.isRows)||!c.getCount()){return}a=p.getData();if(a.getSource){k=a.getSource();if(k){a=k}}m.refreshing=true;m.suspendChanges();for(;e<j;e++){o=g[e];if(a.indexOf(o)!==-1){h.push(o)}else{if(!m.pruneRemoved){b=a.get(o.getId());if(b){h.push(b)}else{l.push(o)}}}if(m.mode==="SINGLE"&&l.length){break}}if(c.getCount()!==(h.length+l.length)){n=true}m.clearSelections();if(h.length){m.doSelect(h,false,true)}if(l.length){c.add(l);if(!m.lastSelected){m.lastSelected=l[l.length-1]}}m.resumeChanges();m.refreshing=false;m.maybeFireSelectionChange(n)},clearSelections:function(){var a=this.getSelected();if(a){a.clear()}this.lastSelected=null},onStoreAdd:Ext.emptyFn,onStoreClear:function(){if(!this.store.isLoading()&&this.hasSelection()){this.clearSelections();this.maybeFireSelectionChange(true)}},onStoreRemove:function(k,b,e,l){var j=this,a=b,d,g,c,h;if(j.selectionStart&&Ext.Array.contains(b,j.selectionStart)){j.selectionStart=null}if(l||j.locked||!j.pruneRemoved){return}h=k.isMoving(null,true);if(h){a=null;for(d=0,g=b.length;d<g;++d){c=b[d];if(!h[c.id]){(a||(a=[])).push(c)}}}if(a){j.deselect(a)}},onPageRemove:function(b,a,c){this.onStoreRemove(this.store,c)},onPageAdd:function(d,c,e){var a=e.length,g,b;for(g=0;g<a;g++){b=e[g];if(this.selected.get(b.id)){this.selected.replace(b)}}},getCount:function(){return this.selected.getCount()},onUpdate:Ext.emptyFn,destroy:function(){var a=this;a.clearListeners();a.clearSelections();a.bindStore(null);a.selected=Ext.destroy(a.selected);Ext.mixin.Observable.prototype.destroy.call(this)},onStoreUpdate:Ext.emptyFn,onIdChanged:function(a,d,c,b){this.selected.updateKey(d,c)},onStoreRefresh:function(){this.updateSelectedInstances(this.selected)},updateSelectedInstances:function(c){var g=this,j=g.getStore(),h=g.lastSelected,e,a,d,k,b;if(j.isBufferedStore){return}e=c.getRange();a=e.length;if(h){g.lastSelected=j.getById(h.id)}g.refreshing=true;for(d=0;d<a;++d){k=e[d];b=j.getById(k.id);if(b){if(b!==k){c.replace(b)}}else{if(g.pruneRemovedOnRefresh()){c.remove(k)}}}g.refreshing=false},pruneRemovedOnRefresh:function(){return this.pruneRemoved},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)}}},onEditorKey:Ext.emptyFn,beforeViewRender:function(a){Ext.Array.include(this.views||(this.views=[]),a)},onHeaderClick:Ext.emptyFn,resolveListenerScope:function(c){var a=this.view,b;if(a){b=a.resolveListenerScope(c)}return b||Ext.mixin.Observable.prototype.resolveListenerScope.call(this,c)},onVetoUIEvent:Ext.emptyFn,bindComponent:Ext.emptyFn,privates:{onBeforeNavigate:Ext.privateFn,selectWithEventMulti:function(k,m,d){var n=this,g=m.shiftKey,a=m.ctrlKey,c=g?(n.getSelectionStart()):null,h=n.getSelection(),l=h.length,b,j,o;if(g&&c){n.selectRange(c,k,a)}else{if(a&&d){if(n.allowDeselect){n.doDeselect(k,false)}}else{if(a){n.doSelect(k,true,false)}else{if(d&&!g&&!a&&l>1){if(n.allowDeselect){b=[];for(j=0;j<l;++j){o=h[j];if(o!==k){b.push(o)}}n.doDeselect(b)}}else{if(!d){n.doSelect(k,false)}}}}}},selectWithEventSimple:function(a,c,b){if(b){this.doDeselect(a)}else{this.doSelect(a,true)}},selectWithEventSingle:function(b,g,c){var d=this,a=d.allowDeselect;if(a&&!g.ctrlKey){a=d.toggleOnClick}if(a&&c){d.doDeselect(b)}else{d.doSelect(b,false)}}}},1,0,0,0,["selection.abstract"],[[Ext.util.StoreHolder.prototype.mixinId||Ext.util.StoreHolder.$className,Ext.util.StoreHolder],[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable]],[Ext.selection,"Model",Ext,"AbstractSelectionModel"],0));(Ext.cmd.derive("Ext.selection.DataViewModel",Ext.selection.Model,{deselectOnContainerClick:true,bindComponent:function(a){var c=this,b;if(c.view!==a){if(c.view){c.navigationModel=null;Ext.destroy(c.viewListeners,c.navigationListeners)}c.view=a;if(a){b=c.getViewListeners();b.scope=c;b.destroyable=true;c.navigationModel=a.getNavigationModel();c.viewListeners=a.on(b);c.navigationListeners=c.navigationModel.on({navigate:c.onNavigate,scope:c,destroyable:true})}}},getViewListeners:function(){var a=this,b={};b[a.view.triggerCtEvent]=a.onContainerClick;return b},onUpdate:function(b){var a=this.view;if(a&&this.isSelected(b)){a.onItemSelect(b)}},onContainerClick:function(){if(this.deselectOnContainerClick){this.deselectAll()}},onSelectChange:function(b,g,e,j){var h=this,a=h.view,d=g?"select":"deselect",c=h.store.indexOf(b);if((e||h.fireEvent("before"+d,h,b,c))!==false&&j()!==false){if(a){if(g){a.onItemSelect(b)}else{a.onItemDeselect(b)}}if(!e){h.fireEvent(d,h,b,c)}}},destroy:function(){this.bindComponent();Ext.destroy(this.keyNav);Ext.selection.Model.prototype.destroy.call(this)}},0,0,0,0,["selection.dataviewmodel"],0,[Ext.selection,"DataViewModel"],0));(Ext.cmd.derive("Ext.view.NavigationModel",Ext.Base,{focusCls:"x-view-item-focused",constructor:function(){this.mixins.observable.constructor.call(this)},bindComponent:function(a){if(this.view!==a){this.view=a;this.bindView(a)}},bindView:function(a){var c=this,d=a.dataSource,b;c.initKeyNav(a);if(c.dataSource!==d){c.dataSource=d;b=c.getStoreListeners();b.destroyable=true;c.dataSourceListeners=a.dataSource.on(b)}b=c.getViewListeners();b.destroyable=true;c.viewListeners=c.viewListeners||[];c.viewListeners.push(a.on(b))},getStoreListeners:function(){var a=this;return{clear:a.onStoreClear,remove:a.onStoreRemove,scope:a}},getViewListeners:function(){var a=this;return{containermousedown:a.onContainerMouseDown,itemmousedown:a.onItemMouseDown,itemclick:a.onItemClick,itemcontextmenu:a.onItemMouseDown,scope:a}},initKeyNav:function(a){var b=this;b.keyNav=new Ext.util.KeyNav({target:a,ignoreInputFields:true,eventName:"itemkeydown",defaultEventAction:"stopEvent",processEvent:function(d,c,h,e,g){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,tab:b.onKeyTab,space:b.onKeySpace,enter:b.onKeyEnter,A:{ctrl:true,handler:b.onSelectAllKeyPress},scope:b})},addKeyBindings:function(a){this.keyNav.addBindings(a)},enable:function(){this.keyNav.enable();this.disabled=false},disable:function(){this.keyNav.disable();this.disabled=true},onContainerMouseDown:function(a,b){if(this.view.containsFocus){b.preventDefault()}},onItemMouseDown:function(b,a,g,d,c){var e=c.parentEvent;if(!e||e.type!=="touchstart"){this.setPosition(d)}},onItemClick:function(c,b,e,d,a){if(this.record===b){this.fireNavigateEvent(a)}else{this.setPosition(d,a)}},beforeViewRefresh:function(){this.focusRestorePosition=this.view.dataSource.isBufferedStore?this.recordIndex:this.record},onViewRefresh:function(){if(this.focusRestorePosition!=null){this.setPosition(this.focusRestorePosition);this.focusRestorePosition=null}},onStoreClear:function(){this.setPosition()},onStoreRemove:function(){this.setPosition(this.getRecord(),null,null,true)},setPosition:function(c,h,l,d){var j=this,k=j.view,e=k.getSelectionModel(),a=k.dataSource,g,b;if(c==null||!k.all.getCount()){j.record=j.recordIndex=null}else{if(typeof c==="number"){b=Math.max(Math.min(c,a.getCount()-1),0);g=a.getAt(c)}else{if(c.isEntity){g=a.getById(c.id);b=a.indexOf(g);if(b===-1){g=a.getAt(0);b=0}}else{if(c.tagName){g=k.getRecord(c);b=a.indexOf(g)}else{g=b=null}}}}if(g===j.record){return j.focusPosition(j.recordIndex)}if(j.item){j.item.removeCls(j.focusCls)}j.previousRecordIndex=j.recordIndex;j.previousRecord=j.record;j.previousItem=j.item;j.recordIndex=b;j.record=g;d=d||j.record===j.lastFocused;if(g){j.focusPosition(j.recordIndex)}else{j.item=null}if(!l){e.fireEvent("focuschange",e,j.previousRecord,j.record)}if(!d&&h){j.fireNavigateEvent(h)}},focusPosition:function(a){var b=this;if(a!=null&&a!==-1){if(a.isEntity){a=b.view.dataSource.indexOf(a)}b.item=b.view.all.item(a);if(b.item){b.lastFocused=b.record;b.lastFocusedIndex=b.recordIndex;b.focusItem(b.item)}else{b.record=null}}else{b.item=null}},focusItem:function(a){a.addCls(this.focusCls);a.focus()},getPosition:function(){return this.record?this.recordIndex:null},getRecordIndex:function(){return this.recordIndex},getItem:function(){return this.item},getRecord:function(){return this.record},getLastFocused:function(){if(this.view.dataSource.indexOf(this.lastFocused)===-1){return null}return this.lastFocused},onKeyUp:function(b){var a=this.recordIndex-1;if(a<0){a=this.view.all.getCount()-1}this.setPosition(a,b)},onKeyDown:function(b){var a=this.recordIndex+1;if(a>this.view.all.getCount()-1){a=0}this.setPosition(a,b)},onKeyRight:function(b){var a=this.recordIndex+1;if(a>this.view.all.getCount()-1){a=0}this.setPosition(a,b)},onKeyLeft:function(b){var a=this.recordIndex-1;if(a<0){a=this.view.all.getCount()-1}this.setPosition(a,b)},onKeyPageDown:Ext.emptyFn,onKeyPageUp:Ext.emptyFn,onKeyHome:function(a){this.setPosition(0,a)},onKeyEnd:function(a){this.setPosition(this.view.all.getCount()-1,a)},onKeyTab:function(b){var a=this.view;a.toggleChildrenTabbability(false);return true},onKeySpace:function(a){this.fireNavigateEvent(a)},onKeyEnter:function(a){a.stopEvent();a.view.fireEvent("itemclick",a.view,a.record,a.item,a.recordIndex,a)},onSelectAllKeyPress:function(a){this.fireNavigateEvent(a)},fireNavigateEvent:function(b){var a=this;a.fireEvent("navigate",{navigationModel:a,keyEvent:b,previousRecordIndex:a.previousRecordIndex,previousRecord:a.previousRecord,previousItem:a.previousItem,recordIndex:a.recordIndex,record:a.record,item:a.item})},destroy:function(){var a=this;Ext.destroy(a.dataSourceListeners,a.viewListeners,a.keyNav);a.keyNav=a.dataSourceListeners=a.viewListeners=a.dataSource=null;a.callParent()}},1,0,0,0,["view.navigation.default"],[[Ext.util.Observable.prototype.mixinId||Ext.util.Observable.$className,Ext.util.Observable],[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable]],[Ext.view,"NavigationModel"],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.getAttribute("data-boundView"))}},defaultBindProperty:"store",renderBuffer:document.createElement("div"),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)}},config:{selection:null,store:"ext-empty-store",navigationModel:{type:"default"},selectionModel:{type:"dataviewmodel"}},publishes:["selection"],twoWayBindable:["selection"],throttledUpdate:false,deferInitialRefresh:false,itemCls:"x-dataview-item",loadingText:"Loading...",loadMask:true,loadingUseMsg:true,selectedItemCls:"x-item-selected",emptyText:"",deferEmptyText:true,trackOver:false,blockRefresh:false,preserveScrollOnRefresh:false,ariaRole:"listbox",itemAriaRole:"option",last:false,focusable:true,tabIndex:0,triggerEvent:"itemclick",triggerCtEvent:"containerclick",refreshNeeded:true,addCmpEvents:Ext.emptyFn,constructor:function(a){if(a&&a.selModel){a.selectionModel=a.selModel}Ext.Component.prototype.constructor.call(this,a)},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.getNavigationModel().bindComponent(this);c.bindStore(c.dataSource,true,"dataSource");if(!c.all){c.all=new Ext.CompositeElementLite()}c.scrollState={top:0,left:0};c.savedTabIndexAttribute="data-savedtabindex-"+c.id},getElConfig:function(){var a=this.mixins.renderable.getElConfig.call(this);if(this.focusable){a.tabIndex=0}return a},onRender:function(){var a=this.loadMask;Ext.Component.prototype.onRender.apply(this,arguments);if(a){this.createMask(a)}},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.Component.prototype.beforeRender.apply(this,arguments);this.getSelectionModel().beforeViewRender(this)},afterRender:function(){Ext.Component.prototype.afterRender.apply(this,arguments);if(this.focusable){this.focusEl=this.el}},getRefItems:function(){var b=this.loadMask,a=[];if(b&&b.isComponent){a.push(b)}return a},getSelection:function(){return this.getSelectionModel().getSelection()},updateSelection:function(a){var b=this,c;if(!b.ignoreNextSelection){b.ignoreNextSelection=true;c=b.getSelectionModel();if(a){c.select(a)}else{c.deselectAll()}b.ignoreNextSelection=false}},updateBindSelection:function(a,c){var d=this,b=null;if(!d.ignoreNextSelection){d.ignoreNextSelection=true;if(c.length){b=a.getLastSelected();d.hasHadSelection=true}if(d.hasHadSelection){d.setSelection(b)}d.ignoreNextSelection=false}},applySelectionModel:function(a,c){var b=this,d;if(c){c.un("selectionchange",b.updateBindSelection,b);Ext.destroy(b.selModelRelayer);a=Ext.Factory.selection(a)}else{if(a&&a.isSelectionModel){a.locked=b.disableSelection}else{if(b.simpleSelect){d="SIMPLE"}else{if(b.multiSelect){d="MULTI"}else{d="SINGLE"}}if(typeof a==="string"){a={type:a}}a=Ext.Factory.selection(Ext.apply({allowDeselect:b.allowDeselect||b.multiSelect,mode:d,locked:b.disableSelection},a))}}b.selModelRelayer=b.relayEvents(a,["selectionchange","beforeselect","beforedeselect","select","deselect","focuschange"]);a.on("selectionchange",b.updateBindSelection,b);return a},updateSelectionModel:function(a){this.selModel=a},applyNavigationModel:function(a){return Ext.Factory.viewNavigation(a)},onFocusEnter:function(d){var c=this,b=c.getNavigationModel(),a;if(!c.itemFocused&&c.all.getCount()){a=b.getLastFocused();b.setPosition(a||0,d.event,null,!a);c.itemFocused=b.getPosition()!=null}if(c.itemFocused){this.el.dom.setAttribute("tabindex","-1")}},onFocusLeave:function(b){var a=this;if(a.itemFocused){a.getNavigationModel().setPosition(null,b.event,null,true);a.itemFocused=false;a.el.dom.setAttribute("tabindex",0)}},onRemoved:function(a){Ext.Component.prototype.onRemoved.call(this,a);this.onFocusLeave({})},refresh:function(){var l=this,p=l.all,a=p.getCount(),h=l.refreshCounter,n,j,e,d,k,g=l.getSelectionModel(),c=l.getNavigationModel(),m=c.getPosition(),o=h&&p.getCount()&&l.preserveScrollOnRefresh&&!l.bufferedRenderer,b;if(!l.rendered||l.isDestroyed||l.preventRefresh){return}if(!l.hasListeners.beforerefresh||l.fireEvent("beforerefresh",l)!==false){l.refreshing=true;c.beforeViewRefresh();n=l.getTargetEl();d=l.getViewRange();e=n.dom;if(o){j=l.getOverflowEl();b=j.getScroll()}if(h){k=true;l.clearViewEl();l.refreshCounter++}else{l.refreshCounter=1}l.tpl.append(n,l.collectData(d,p.startIndex||0));if(d.length<1){if(l.emptyText&&!l.getStore().isLoading()&&(!l.deferEmptyText||k)){l.emptyEl=Ext.core.DomHelper.insertHtml("beforeEnd",n.dom,l.emptyText)}p.clear()}else{l.collectNodes(n.dom);l.updateIndexes(0)}c.onViewRefresh();if(l.refreshSelmodelOnRefresh!==false){g.refresh()}l.refreshNeeded=false;l.refreshSize(p.getCount()!==a);l.fireEvent("refresh",l,d);if(o){j.setScrollLeft(b.left);j.setScrollTop(b.top)}if(!l.viewReady){l.viewReady=true;l.fireEvent("viewready",l)}l.refreshing=false;l.refreshScroll()}},toggleChildrenTabbability:function(c){var a=this.savedTabIndexAttribute,b=this.getTargetEl();if(c){b.restoreChildrenTabbableState(a)}else{b.saveChildrenTabbableState(a)}},collectNodes:function(b){var a=this.all;a.fill(Ext.fly(b).query(this.getItemSelector()),a.startIndex||0);if(this.focusable){a.set({tabindex:"-1"})}},getViewRange:function(){return this.dataSource.getRange()},refreshSize:function(d){var c=this,b=c.getSizeModel(),a=c.getScrollable();if(b.height.shrinkWrap||b.width.shrinkWrap||d){c.updateLayout()}else{if(c.touchScroll&&!c.bufferedRenderer){if(a){a.refresh()}else{c.on({boxready:c.refreshScroll,scope:c,single:true})}}}},onResize:function(){var b=this,a=b.getScrollable();if(a&&!b._hasScrollListener){a.on({scroll:b.onViewScroll,scope:b,onFrame:!!Ext.global.requestAnimationFrame});b._hasScrollListener=true}Ext.Component.prototype.onResize.apply(this,arguments)},clearViewEl:function(){var b=this,c=b.getTargetEl(),a=b.getNodeContainer()===c;b.clearEmptyEl();b.all.clear(!a);if(a){c.dom.innerHTML=""}},clearEmptyEl:function(){var a=this.emptyEl;if(a){a.parentNode.removeChild(a)}this.emptyEl=null},onViewScroll:function(b,a,c){this.fireEvent("scroll",this,a,c)},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(d,e){var h=this,j=h.renderBuffer,b=document.createDocumentFragment(),c,a,g;h.tpl.overwrite(j,h.collectData(d,e));c=Ext.fly(j).query(h.getItemSelector());for(g=0,a=c.length;g<a;g++){b.appendChild(c[g])}b.childrenArray=c;return b},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(d,b,c,h,e){var g=this,a=e&&e.filtered;if(!a&&g.getNode(b)){if(g.throttledUpdate){g.statics().queueRecordChange(g,d,b,c,h)}else{g.handleUpdate.apply(g,arguments)}}},handleUpdate:function(c,a){var g=this,d,e,b=g.getSelectionModel();if(g.viewReady){d=g.dataSource.indexOf(a);if(d>-1){if(g.getNode(a)){e=g.bufferRender([a],d).childrenArray[0];g.all.replaceElement(d,e,true);g.updateIndexes(d,d);b.onUpdate(a);g.refreshSizePending=true;if(b.isSelected(a)){g.onItemSelect(a)}if(g.hasListeners.itemupdate){g.fireEvent("itemupdate",a,d,e)}return e}}}},onReplace:function(l,m,b,c){var k=this,g,o=k.all,a,n,e,d,h=k.getSelectionModel();if(k.rendered){a=k.bufferRender(c,m,true);n=o.item(m);if(n){o.item(m).insertSibling(a,"before",true)}else{k.appendNodes(a)}o.insert(m,a.childrenArray);m+=c.length;g=m+b.length-1;o.removeRange(m,g,true);if(k.refreshSelmodelOnRefresh!==false){h.refresh()}k.updateIndexes(m);if(k.hasListeners.itemremove){for(e=b.length,d=g;e>=0;--e,--d){k.fireEvent("itemremove",b[e],d,k)}}if(k.hasListeners.itemadd){k.fireEvent("itemadd",c,m,a.childrenArray)}k.refreshSize()}},onAdd:function(d,c,e){var g=this,b,a=g.getSelectionModel();if(g.rendered){if(g.all.getCount()===0){g.refresh();b=g.all.slice()}else{b=g.doAdd(c,e);if(g.refreshSelmodelOnRefresh!==false){a.refresh()}g.updateIndexes(e);g.refreshSizePending=true}if(g.hasListeners.itemadd){g.fireEvent("itemadd",c,e,b)}}},appendNodes:function(a){this.getNodeContainer().appendChild(a)},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.childrenArray);return b.childrenArray},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(h,g){var b=this.all.elements,e,a=this.getViewRange(),d,c=this.id;h=h||0;g=g||((g===0)?0:(b.length-1));for(d=h;d<=g;d++){e=b[d];e.setAttribute("data-recordIndex",d);e.setAttribute("data-recordId",a[d].internalId);e.setAttribute("data-boundView",c)}},bindStore:function(b,c,e){var d=this,a=d.getSelectionModel();a.bindStore(b);a.bindComponent(b?d:null);d.mixins.storeholder.bindStore.apply(d,arguments);if(b&&d.componentLayoutCounter&&!d.preventRefresh){d.doFirstRefresh(b,!c)}},doFirstRefresh:function(a,c){var b=this;if(b.deferInitialRefresh&&!c){Ext.defer(b.doFirstRefresh,1,b,[a,true])}else{if(a&&!a.isLoading()){b.refresh()}}},onUnbindStore:function(b,c,a){if(a==="store"){this.setMaskBind(null);this.getSelectionModel().bindStore(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(this.rendered&&a&&b&&!a.bindStore){a=this.createMask()}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:function(){Ext.suspendLayouts()},onEndUpdate:function(){Ext.resumeLayouts(true);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.getSelectionModel().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].getAttribute("data-recordId"))}return b},getRecord:function(a){return this.dataSource.getByInternalId(Ext.getDom(a).getAttribute("data-recordId"))},isSelected:function(b){var a=this.getRecord(b);return this.getSelectionModel().isSelected(a)},select:function(b,c,a){this.getSelectionModel().select(b,c,a)},deselect:function(b,a){this.getSelectionModel().deselect(b,a)},getNode:function(b){var c=this,a;if(c.rendered&&(b||b===0)){if(Ext.isString(b)){a=document.getElementById(b)}else{if(b.isModel){a=c.getNodeByRecord(b)}else{if(Ext.isNumber(b)){a=c.all.elements[b]}else{if(b.target){b=b.target}a=Ext.fly(b).findParent(c.itemSelector,c.getTargetEl())}}}}return a||null},getNodeByRecord:function(a){var b=this.store.indexOf(a);return this.all.elements[b]||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(a.getAttribute("data-recordIndex")){return Number(a.getAttribute("data-recordIndex"))}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.navigationModel,a.selectionModel)},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)}},updateStore:function(a){if(!this.isConfiguring){delete this.store;this.bindStore(a)}},privates:{createMask:function(b){var d=this,c=d.getMaskStore(),a;if(c&&!c.isEmptyStore&&!c.loadsSynchronously()){a={target:d,msg:d.loadingText,useMsg:d.loadingUseMsg,store:c};if(d.loadingCls){a.msgCls=d.loadingCls}if(Ext.isObject(b)){a=Ext.apply(a,b)}d.loadMask=new Ext.LoadMask(a);d.loadMask.on({scope:d,beforeshow:d.onMaskBeforeShow,hide:d.onMaskHide})}return d.loadMask},getFocusEl:function(){return this.el},getOverflowEl:function(){return Ext.Component.prototype.getTargetEl.call(this)},getTargetEl:function(){return this.touchScroll?this.getScrollerEl():Ext.Component.prototype.getTargetEl.call(this)}}},1,0,["component","box"],{component:true,box: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,keyEventRe:/^key/,inheritableStatics:{EventMap:{longpress:"LongPress",mousedown:"MouseDown",mouseup:"MouseUp",click:"Click",dblclick:"DblClick",contextmenu:"ContextMenu",mouseover:"MouseOver",mouseout:"MouseOut",mouseenter:"MouseEnter",mouseleave:"MouseLeave",keydown:"KeyDown",keyup:"KeyUp",keypress:"KeyPress",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,keyup:a.handleEvent,keypress: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 c=this,b=c.keyEventRe.test(d.type),a=c.getNavigationModel();d.view=c;if(b){d.item=a.getItem();d.record=a.getRecord()}if(!d.item){d.item=d.getTarget(c.itemSelector)}if(d.item&&!d.record){d.record=c.getRecord(d.item)}if(c.processUIEvent(d)!==false){c.processSpecialEvent(d)}if(b&&((d.getKey()===d.SPACE&&!Ext.fly(d.target).isInputField())||d.isNavKeyPress(true))){d.preventDefault()}},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=g.recordIndex=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,onItemKeyUp:Ext.emptyFn,onItemKeyPress: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,onBeforeItemKeyUp:Ext.emptyFn,onBeforeItemKeyPress: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,onContainerKeyUp:Ext.emptyFn,onContainerKeyPress: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,onBeforeContainerKeyUp:Ext.emptyFn,onBeforeContainerKeyPress: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(c,d,b){var e=this,g=e[b],a=e.getSelectionModel();if(g&&g.isFeatureStore){a.bindStore(g.store);a.bindComponent(e);if(c.isFeatureStore){e.bindStoreListeners(c);g.bindStore(g.store)}else{g.bindStore(c)}}else{Ext.view.AbstractView.prototype.bindStore.call(this,c,d,b)}},privates:{repaintBorder:function(b){var a=this.getNode(b);if(a){a.className=a.className}}}},0,["dataview"],["component","box","dataview"],{component:true,box: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.column===a.column}return false},setPosition:function(c,a){var b=this;if(arguments.length===1){if(c.length){a=c[0];a=c[1]}else{if(c.view){b.view=c.view}a=c.column;c=c.row}}b.setRow(c);b.setColumn(a);return b},setAll:function(b,c,d,a,g){var e=this;e.view=b;e.rowIdx=c;e.colIdx=d;e.record=a;e.column=g;return e},setRow:function(c){var a=this,b=a.view.dataSource;if(c!==undefined){if(typeof c==="number"){a.rowIdx=Math.max(Math.min(c,b.getCount()-1),0);a.record=b.getAt(c)}else{if(c.isModel){a.record=c;a.rowIdx=b.indexOf(c)}else{if(c.tagName){a.record=a.view.getRecord(c);a.rowIdx=b.indexOf(a.record)}}}}},setColumn:function(a){var c=this,b=c.view.getVisibleColumnManager();if(a!==undefined){if(typeof a==="number"){c.colIdx=a;c.column=b.getHeaderAtIndex(a)}else{if(a.isHeader){c.column=a;c.colIdx=b.indexOf(a)}}}},next:function(){var a=this,b=a.view.getVisibleColumnManager();a.colIdx++;if(a.colIdx===b.getColumns().length){a.setPosition(Math.min(a.rowIdx+1,a.view.dataSource.getCount()-1),a.colIdx)}else{a.setColumn(a.colIdx)}},equal:function(a){return(a&&a.isCellContext&&a.view===this.view&&a.record===this.record&&a.column===this.column)},clone:function(){var b=this,a=new b.self(b.view);a.rowIdx=b.rowIdx;a.colIdx=b.colIdx;a.record=b.record;a.column=b.column;return a}},1,0,0,0,0,0,[Ext.grid,"CellContext"],0));(Ext.cmd.derive("Ext.view.TableLayout",Ext.layout.component.Auto,{type:"tableview",beginLayout:function(d){var c=this,b=c.owner.lockingPartner,a=d.context;if(!c.columnFlusherId){c.columnFlusherId=c.id+"-columns";c.rowHeightFlusherId=c.id+"-rows"}Ext.layout.component.Auto.prototype.beginLayout.call(this,d);if(b&&b.grid.isVisible()){if(!d.lockingPartnerContext){(d.lockingPartnerContext=a.getCmp(b)).lockingPartnerContext=d}d.rowHeightSynchronizer=c.owner.syncRowHeightBegin()}(d.headerContext=a.getCmp(c.headerCt)).viewContext=d},beginLayoutCycle:function(b,a){Ext.layout.component.Auto.prototype.beginLayoutCycle.call(this,b,a);if(b.syncRowHeights){b.target.syncRowHeightClear(b.rowHeightSynchronizer);b.syncRowHeights=false}},calculate:function(e){var n=this,b=e.context,h=e.lockingPartnerContext,d=e.headerContext,k=e.ownerCtContext,c=n.owner,j=d.getProp("columnsChanged"),a=e.state,o,g,q,p,l=c.body.dom,r,m;if(!c.all.getCount()&&(!l||!c.body.child("table"))){e.setProp("viewOverflowY",false);Ext.layout.component.Auto.prototype.calculate.call(this,e);return}if(j===undefined){n.done=false;return}if(j){if(!(o=a.columnFlusher)){b.queueFlush(a.columnFlusher=o={ownerContext:e,columnsChanged:j,layout:n,id:n.columnFlusherId,flush:n.flushColumnWidths})}if(!o.flushed){n.done=false;return}}if(h){if(!(p=a.rowHeightFlusher)){if(!(q=a.rowHeights)){a.rowHeights=q=e.rowHeightSynchronizer;n.owner.syncRowHeightMeasure(q);e.setProp("rowHeights",q)}if(!(g=h.getProp("rowHeights"))){n.done=false;return}b.queueFlush(a.rowHeightFlusher=p={ownerContext:e,synchronizer:q,otherSynchronizer:g,layout:n,id:n.rowHeightFlusherId,flush:n.flushRowHeights})}if(!p.flushed){n.done=false;return}}Ext.layout.component.Auto.prototype.calculate.call(this,e);if(!e.heightModel.shrinkWrap){m=k.target.layout.getContainerSize(k);if(!m.gotHeight){n.done=false;return}r=l.offsetHeight;e.setProp("viewOverflowY",r>m.height)}},measureContentHeight:function(c){var a=this.owner,b=a.body.dom,d;if(!b){b=a.el.down("."+a.ownerCt.emptyCls,true)}d=b?b.offsetHeight:0;if(c.headerContext.state.boxPlan.tooNarrow){d+=Ext.getScrollbarSize().height}return d},flushColumnWidths:function(){var l=this,k=l.layout,b=l.ownerContext,d=l.columnsChanged,a=b.target,j=d.length,c,g,e,h;if(b.state.columnFlusher!==l){return}for(g=0;g<j;g++){if(!(c=d[g])){continue}e=c.props.width;a.body.select(a.getColumnSizerSelector(c.target)).setWidth(e);h=c.lastBox;if(h){h.width=e}}l.flushed=true;if(!k.pending){b.context.queueLayout(k)}},flushRowHeights:function(){var a=this,b=a.layout,c=a.ownerContext;if(c.state.rowHeightFlusher!==a){return}c.target.syncRowHeightFinish(a.synchronizer,a.otherSynchronizer);a.flushed=true;c.syncRowHeights=true;if(!b.pending){c.context.queueLayout(b)}},finishedLayout:function(a){var b=Ext.fly(this.owner.getNodeContainer());Ext.layout.component.Auto.prototype.finishedLayout.call(this,a);if(b){b.setWidth(a.headerContext.props.contentWidth)}}},0,0,0,0,["layout.tableview"],0,[Ext.view,"TableLayout"],0));(Ext.cmd.derive("Ext.grid.locking.RowSynchronizer",Ext.Base,{constructor:function(a,b){var c=this,d;c.view=a;c.rowEl=b;c.els={};c.add("data",a.rowSelector);for(d=a.rowTpl;d;d=d.nextTpl){if(d.beginRowSync){d.beginRowSync(c)}}},add:function(b,a){var c=Ext.fly(this.rowEl).down(a,true);if(c){this.els[b]={el:c}}},finish:function(g){var h=this,c=h.els,k=g.els,e,j=0,b=0,l,a,d;for(a in c){e=k[a];d=e?e.height:0;l=d-c[a].height;if(l>0){j+=l;Ext.fly(c[a].el).setHeight(d)}else{b-=l}}d=g.rowHeight+b;if(h.rowHeight+j<d){Ext.fly(h.rowEl).setHeight(d)}},measure:function(){var c=this,b=c.els,a;c.rowHeight=c.rowEl.offsetHeight;for(a in b){b[a].height=b[a].el.offsetHeight}},reset:function(){var c=this,d=c.dataEl,b=c.els,a;this.rowEl.style.height="";for(a in b){b[a].el.style.height=""}}},1,0,0,0,0,0,[Ext.grid.locking,"RowSynchronizer"],0));(Ext.cmd.derive("Ext.view.NodeCache",Ext.Base,{statics:{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=d.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 e},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)},moveBlock:function(a){var g=this,h=g.elements,e,b,d,c;if(a<0){c=g.startIndex-1;b=g.endIndex;d=1}else{c=g.endIndex+1;b=g.startIndex;d=-1}g.startIndex+=a;g.endIndex+=a;do{c+=d;e=h[c+a]=h[c];e.setAttribute("data-recordIndex",c+a);if(c<g.startIndex||c>g.endIndex){delete h[c]}}while(c!==b);delete h[c]},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++){e=a[h];if(d&&h<g){e.parentNode.removeChild(e)}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,r=g.length,j,d,b,h,m=o.getNodeContainer(),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-=r);for(j=0;j<r;j++){a[n.startIndex+j]=h.childrenArray[j]}m.insertBefore(h,m.firstChild);if(l){o.fireEvent("itemadd",g,n.startIndex,h.childrenArray)}}}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<r;j++){a[n.endIndex+=1]=h.childrenArray[j]}m.appendChild(h);if(l){o.fireEvent("itemadd",g,n.endIndex+1,h.childrenArray)}}n.count=n.endIndex-n.startIndex+1;return h.childrenArray},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(){Ext.dom.CompositeElementLite.importElementMethods.call(this)}));(Ext.cmd.derive("Ext.view.Table",Ext.view.View,{alternateClassName:"Ext.grid.View",isTableView:true,config:{selectionModel:{type:"rowmodel"}},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","rowclick","rowcontextmenu","rowdblclick","rowkeydown","rowmouseup","rowmousedown","rowkeydown","beforeitemkeydown","beforeitemcontextmenu","beforeitemdblclick","beforeitemclick","beforeitemmouseleave","beforeitemmouseenter","beforeitemmouseup","beforeitemmousedown","statesave","beforestatesave","staterestore","beforestaterestore","uievent","groupcollapse","groupexpand"]},scrollable:true,componentLayout:"tableview",baseCls:"x-grid-view",unselectableCls:"x-unselectable",firstCls:"x-grid-cell-first",lastCls:"x-grid-cell-last",itemCls:"x-grid-item",selectedItemCls:"x-grid-item-selected",selectedCellCls:"x-grid-cell-selected",focusedItemCls:"x-grid-item-focused",overItemCls:"x-grid-item-over",altRowCls:"x-grid-item-alt",dirtyCls:"x-grid-dirty-cell",rowClsRe:new RegExp("(?:^|\\s*)x-grid-item-alt(?:\\s+|$)","g"),cellRe:new RegExp("x-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="x-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="{itemStyle};width:0">',"{%","this.nextTpl.applyOut(values, out, parent)","%}","</table>",{priority:9999}],rowTpl:["{%",'var dataRowCls = values.recordIndex === -1 ? "" : " x-grid-row";',"%}",'<tr class="{[values.rowClasses.join(" ")]} {[dataRowCls]}" {rowAttr:attributes} {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>" tabindex="-1" {ariaCellAttr} data-columnid="{[values.column.getItemId()]}">','<div {unselectableAttr} class="x-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:["x-grid-cell x-grid-td"]},constructor:function(a){if(a.grid.isTree){a.baseCls="x-tree-view"}Ext.view.View.prototype.constructor.call(this,a)},hasVariableRowHeight:function(a){var b=this;return b.variableRowHeight||b.store.isGrouped()||b.getVisibleColumnManager().hasVariableRowHeight()||(!a&&b.lockingPartner&&b.lockingPartner.hasVariableRowHeight(true))},initComponent:function(){var a=this;if(a.columnLines){a.addCls(a.grid.colLinesCls)}if(a.rowLines){a.addCls(a.grid.rowLinesCls)}a.body=new Ext.dom.Fly();a.body.id=a.id+"gridBody";if(!a.trackOver){a.overItemCls=null}a.headerCt.view=a;a.grid.view=a;a.initFeatures(a.grid);a.itemSelector=a.getItemSelector();a.all=new Ext.view.NodeCache(a);Ext.view.View.prototype.initComponent.call(this)},applySelectionModel:function(a,d){var c=this,b=c.ownerGrid,e=a.type;if(!d){if(!(a&&a.isSelectionModel)){a=b.selModel||a}}if(a){if(a.isSelectionModel){a.allowDeselect=b.allowDeselect||a.selectionMode!=="SINGLE";a.locked=b.disableSelection}else{if(typeof a==="string"){a={type:a}}else{a.type=b.selType||a.selType||a.type||e}if(!a.mode){if(b.simpleSelect){a.mode="SIMPLE"}else{if(b.multiSelect){a.mode="MULTI"}}}a=Ext.Factory.selection(Ext.apply({allowDeselect:b.allowDeselect,locked:b.disableSelection},a))}}return a},updateSelectionModel:function(a,c){var b=this;if(c){c.un("selectionchange",b.updateBindSelection,b);Ext.destroy(b.selModelRelayer)}b.selModelRelayer=b.relayEvents(a,["selectionchange","beforeselect","beforedeselect","select","deselect","focuschange"]);a.on("selectionchange",b.updateBindSelection,b);b.selModel=a},getVisibleColumnManager:function(){return this.ownerCt.getVisibleColumnManager()},getColumnManager:function(){return this.ownerCt.getColumnManager()},getTopLevelVisibleColumnManager:function(){return this.ownerGrid.getVisibleColumnManager()},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.View.prototype.beforeRender.call(this);if(!a.enableTextSelection){a.protoEl.unselectable()}},onBindStore:function(a){var b=this,c=b.bufferedRenderer;if(c&&c.store!==a){c.bindStore(a)}if(b.all&&b.all.getCount()){if(c){c.setBodyTop(0)}b.clearViewEl()}Ext.view.View.prototype.onBindStore.apply(this,arguments)},getStoreListeners:function(){var a=Ext.view.View.prototype.getStoreListeners.call(this);a.beforepageremove=this.beforePageRemove;return a},beforePageRemove:function(c,b){var d=this.all,a=c.getPageSize();if(d.startIndex>=(b-1)*a&&d.endIndex<=(b*a-1)){c.get(b);return false}},onViewScroll:function(b,a,c){if(!this.ignoreScroll){Ext.view.View.prototype.onViewScroll.call(this,b,a,c)}},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(c,d){var e=this,g=e.renderBuffer,a,b=document.createRange?document.createRange():null;e.tpl.overwrite(g,e.collectData(c,d));g=Ext.fly(g).down(e.getNodeContainerSelector(),true);if(b){b.selectNodeContents(g);a=b.extractContents()}else{a=document.createDocumentFragment();while(g.firstChild){a.appendChild(g.firstChild)}}a.childrenArray=Ext.Array.toArray(a.childNodes);return a},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.View.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)}Ext.view.View.prototype.clearViewEl.call(this);g=Ext.fly(e.getNodeContainer());if(g&&!j){h=e.getTargetEl();if(h.dom!==g.dom){g.destroy()}}},getMaskTarget:function(){return this.ownerCt.body},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="',"x-","grid-cell-",e[d].getItemId(),'" style="width:'+g+'px">')}c.push("</colgroup>")},renderRow:function(h,a,g){var k=this,e=a===-1,j=k.selectionModel,n=k.rowValues,d=n.itemClasses,c=n.rowClasses,b=k.itemCls,m,l=k.rowTpl;n.rowAttr={};n.record=h;n.recordId=h.internalId;n.recordIndex=k.store.indexOf(h);n.rowIndex=a;n.rowId=k.getRowId(h);n.itemCls=n.rowCls="";if(!n.columns){n.columns=k.ownerCt.getVisibleColumnManager().getColumns()}d.length=c.length=0;if(!e){d[0]=b;if(!k.ownerCt.disableSelection&&j.isRowSelected){if(j.isRowSelected(h)){d.push(k.selectedItemCls)}}if(k.stripeRows&&a%2!==0){d.push(k.altRowCls)}if(k.getRowClass){m=k.getRowClass(h,a,null,k.dataSource);if(m){c.push(m)}}}if(g){l.applyOut(n,g,k.tableValues)}else{return l.apply(n,k.tableValues)}},renderCell:function(d,h,g,o,k,e){var m=this,b,j=m.selectionModel,l=m.cellValues,c=l.classes,a=h.data[d.dataIndex],p=m.cellTpl,q,n,r=m.navigationModel.getPosition();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.dirty&&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.isSpreadsheetModel)&&j.isCellSelected(m,g,d)){c[n++]=m.selectedCellCls}if(r&&r.record.id===h.id&&r.column===d){c[n++]=m.focusedItemCls}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.x-grid-item-container",nodeContainerSelector:"div.x-grid-item-container",itemSelector:"table.x-grid-item",rowSelector:"tr.x-grid-row",cellSelector:"td.x-grid-cell",sizerSelector:".x-grid-cell",innerSelector:"div.x-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)}},getCellInclusive: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},getCellByPosition:function(a,c){if(a){var b=a.view||this,d=b.getRow(a.record||a.row),e=a.column.isColumn?a.column:b.getVisibleColumnManager().getHeaderAtIndex(a.column);if(e&&d){return Ext.fly(d).down(b.getCellSelector(e),c)}}return false},onFocusEnter:function(c){var d=this,a,j=d.getNavigationModel(),k,b,l=d.bufferedRenderer,g,h;c=c.event;if(!d.cellFocused&&d.all.getCount()&&d.dataSource.getCount()){h=c.getTarget(null,null,true);if(h&&d.el.contains(h)&&h!==d.el&&!h.is(d.getCellSelector())){if(j.lastFocused){j.position=j.lastFocused}d.cellFocused=true}else{k=b=d.getLastFocused();if(!b){a=d.isLockingView?(d.lockedGrid.isVisible()?d.lockedView:d.normalView):d;g=d.dataSource.getAt(l?l.getFirstVisibleRowIndex():0);if(!g.isNonData){b=new Ext.grid.CellContext(a).setPosition({row:g,column:0})}}if(!b){c.stopEvent();c.getTarget().blur();return}j.setPosition(b,null,c,null,true);d.cellFocused=!!j.getPosition()}}if(d.cellFocused){d.el.dom.setAttribute("tabindex","-1")}},onFocusLeave:function(b){var a=this;if(a.cellFocused){if(b.toComponent!==a.lockingPartner){a.getNavigationModel().setPosition(null,null,b.event,null,true)}a.cellFocused=false;a.focusEl=a.el;a.focusEl.dom.setAttribute("tabindex",0)}},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(d,a){var c=this,b=c.getFocusTask();if(a){b.delay(Ext.isNumber(a)?a:10,c.focusRow,c,[d,false]);return}b.cancel();if(c.isVisible(true)){c.getNavigationModel().setPosition(c.getRecord(d))}},focusNode:function(b,a){this.focusRow(b,a)},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.getNavigationModel().setPosition(b)}},getLastFocused:function(){var b=this,a=b.lastFocused;if(a&&a.record&&a.column){if(b.dataSource.indexOf(a.record)!==-1&&b.getVisibleColumnManager().indexOf(a.column)!==-1&&b.getNode(a.record)){return a}}},scrollCellIntoView:function(a,b){if(a.isCellContext){a=this.getCellByPosition(a)}if(a){this.scrollElIntoView(a,null,b)}},scrollElIntoView:function(c,d,b){var a=this.getScrollable();if(a){a.scrollIntoView(c,d,b)}},syncRowHeightBegin:function(){var g=this,k=g.all,e=k.count,c=[],h=Ext.grid.locking.RowSynchronizer,b,a,d;for(b=0,a=k.startIndex;b<e;b++,a++){c[b]=d=new h(g,k.elements[a]);d.reset()}return c},syncRowHeightClear:function(b){var d=this,e=d.all,c=e.count,a;for(a=0;a<c;a++){b[a].reset()}},syncRowHeightMeasure:function(b){var c=b.length,a;for(a=0;a<c;a++){b[a].measure()}},syncRowHeightFinish:function(b,d){var c=b.length,a;for(a=0;a<c;a++){b[a].finish(d[a])}},handleUpdate:function(n,g,p,z){var H=this,s=H.rowTpl,l=H.markDirty,w=H.dirtyCls,v=[],x=H.variableRowHeight,t=0,D=H.ownerCt,F,r,o,h,q,B,E,k,u,c,e,C,A,m,b,d,y,G,a,j;if(H.viewReady){r=H.getNodeByRecord(g);if(r){u=H.overItemCls;c=H.ownerCt.getVisibleColumnManager().getColumns();for(A=0,C=c.length;A<C;A++){e=c[A];m=H.shouldUpdateCell(g,e,z);if(m){t=t|m;v[v.length]=e;x=x||e.variableRowHeight}}if(!H.getRowFromItem(r)||(t&1)||(r.tBodies[0].childNodes.length>1)){F=Ext.fly(r,"_internal");j=r._extData;h=H.createRowElement(g,H.dataSource.indexOf(g),v);if(F.hasCls(u)){Ext.fly(h).addCls(u)}if(Ext.isIE9m&&r.mergeAttributes){r.mergeAttributes(h,true)}else{q=h.attributes;B=q.length;for(k=0;k<B;k++){E=q[k].name;if(E!=="id"){r.setAttribute(E,q[k].value)}}}if(j){j.isSynchronized=false}if(c.length&&(o=H.getRow(r))){H.updateColumns(o,Ext.fly(h).down(H.rowSelector,true),v)}while(s){if(s.syncContent){if(s.syncContent(r,h,z?v:null)===false){break}}s=s.nextTpl}}else{if(!H.cellFly){H.cellFly=new Ext.dom.Fly()}for(A=0,C=v.length;A<C;A++){e=v[A];d=e.dataIndex;y=g.get(d);b=r.firstChild.firstChild.childNodes[e.getVisibleIndex()];if(l){H.cellFly.attach(b);if(g.isModified(e.dataIndex)){H.cellFly.addCls(w)}else{H.cellFly.removeCls(w)}}G=e.usingDefaultRenderer;a=G?e:e.scope;if(e.updater){Ext.callback(e.updater,a,[b,y,g,H,H.dataSource],0,e,D)}else{if(e.renderer){y=Ext.callback(e.renderer,a,[y,null,g,0,0,H.dataSource,H],0,e,D)}if(e.producesHTML){b.childNodes[0].innerHTML=y}else{b.childNodes[0].childNodes[0].data=y}}if(H.highlightClass){Ext.fly(b).addCls(H.highlightClass);if(!H.changedCells){H.self.prototype.changedCells=[];H.prototype.clearChangedTask=new Ext.util.DelayedTask(H.clearChangedCells,H.prototype);H.clearChangedTask.delay(H.unhighlightDelay)}H.changedCells.push({cell:b,cls:H.highlightClass,expires:Ext.Date.now()+1000})}}if(l&&!g.dirty){Ext.fly(r,"_internal").select("."+w).removeCls(w)}}if(x){Ext.suspendLayouts()}H.fireEvent("itemupdate",g,H.store.indexOf(g),r);if(x){if(H.bufferedRenderer){H.bufferedRenderer.refreshSize();H.ownerGrid.updateLayout()}else{H.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 b=this,a;Ext.view.View.prototype.refresh.apply(this,arguments);b.headerCt.setSortState();if(b.touchScroll&&b.el&&!b.all.getCount()&&b.headerCt&&b.headerCt.tooNarrow){a=b.getScrollable();if(a){a.setSize({x:b.headerCt.getTableWidth(),y:a.getSize().y})}}},processContainerEvent:function(b){var a=Ext.ComponentManager.byElement(b.target.parentNode);if(a&&a.up(this.ownerCt)){return false}},processItemEvent:function(d,t,m,s){var x=this,o=x.self,w=o.EventMap,g=s.type,k,a,p,j=x.features,r=j.length,q,l,n,h,c,b=x.getNavigationModel(),v,u=s.position=x.eventPosition||(x.eventPosition=new Ext.grid.CellContext());if(Ext.isIE&&g==="mouseup"&&!s.within(x.el)){return false}if(x.indexInStore(t)!==-1){k=u.rowElement=Ext.fly(t).down(x.rowSelector,true);if(Ext.String.startsWith(s.type,"key")&&(v=b.getPosition())){a=(a=b.getCell())&&a.dom;c=v.column}if(!a){a=s.getTarget(x.getCellSelector(),k)}g=o.TouchEventMap[g]||g;if(a){if(!a.parentNode){return false}if(!c){c=x.getHeaderByCell(a)}l=x.ownerCt.getColumnManager().getHeaderIndex(c)}else{l=-1}u.setAll(x,m,c?x.getVisibleColumnManager().getHeaderIndex(c):-1,d,c);u.cellElement=a;n=x.fireEvent("uievent",g,x,a,m,l,s,d,k);if((n===false||Ext.view.View.prototype.processItemEvent.apply(this,arguments)===false)){p=x.getSelectionModel();if(p.onVetoUIEvent){p.onVetoUIEvent(g,x,a,m,l,s,d,k)}return false}for(q=0;q<r;++q){h=j[q];if(h.wrapsItem){if(h.vetoEvent(d,k,m,s)===false){x.processSpecialEvent(s);s.preventDefault();return false}}}if(a&&g!=="mouseover"&&g!=="mouseout"){n=!((x["onBeforeCell"+w[g]](a,l,d,k,m,s)===false)||(x.fireEvent("beforecell"+g,x,a,l,d,k,m,s)===false)||(x["onCell"+w[g]](a,l,d,k,m,s)===false)||(x.fireEvent("cell"+g,x,a,l,d,k,m,s)===false))}if(n!==false){n=x.fireEvent("row"+g,x,d,k,m,s)}return n}else{this.processSpecialEvent(s);s.preventDefault();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}n=m.self.TouchEventMap[n]||n;for(d=0;d<l;d++){o=c[d];if(o.hasFeatureEvent){h=j.getTarget(o.eventSelector,m.getTargetEl());if(h){g=o.eventPrefix;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,onCellKeyUp:Ext.emptyFn,onCellKeyPress:Ext.emptyFn,onBeforeCellMouseDown:Ext.emptyFn,onBeforeCellLongPress:Ext.emptyFn,onBeforeCellMouseUp:Ext.emptyFn,onBeforeCellClick:Ext.emptyFn,onBeforeCellDblClick:Ext.emptyFn,onBeforeCellContextMenu:Ext.emptyFn,onBeforeCellKeyDown:Ext.emptyFn,onBeforeCellKeyUp:Ext.emptyFn,onBeforeCellKeyPress: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().getHeaderById(a.getAttribute("data-columnId"))}return false},walkCells:function(n,o,k,p,b,r){if(!n){return false}var l=this,s=typeof n.row==="number"?n.row:n.rowIdx,g=typeof n.column==="number"?n.column:n.colIdx,m=l.dataSource.getCount(),d=l.ownerCt.getVisibleColumnManager(),a=d.getHeaderIndex(d.getFirst()),j=d.getHeaderIndex(d.getLast()),q=s,h=g,c=d.getHeaderAtIndex(g);if(!c||c.hidden||!m){return false}k=k||{};o=o.toLowerCase();switch(o){case"right":if(g===j){if(p||s===m-1){return false}if(!k.ctrlKey){q=l.walkRows(s,1);if(q!==s){h=a}}}else{if(!k.ctrlKey){h=d.getHeaderIndex(d.getNextSibling(c))}else{h=j}}break;case"left":if(g===a){if(p||s===0){return false}if(!k.ctrlKey){q=l.walkRows(s,-1);if(q!==s){h=j}}}else{if(!k.ctrlKey){h=d.getHeaderIndex(d.getPreviousSibling(c))}else{h=a}}break;case"up":if(s===0){return false}else{if(!k.ctrlKey){q=l.walkRows(s,-1)}else{q=l.walkRows(-1,1)}}break;case"down":if(s===m-1){return false}else{if(!k.ctrlKey){q=l.walkRows(s,1)}else{q=l.walkRows(m,-1)}}break}if(b&&b.call(r||l,{row:q,column:h})!==true){return false}h=d.getHeaderAtIndex(h);return new Ext.grid.CellContext(l).setPosition(q,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)},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.cellFly=d.featuresMC=null;Ext.view.View.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.View.prototype.onReplace.apply(this,arguments)}c.setPendingStripe(e)},onAdd:function(b,a,c){var d=this,e=d.bufferedRenderer;if(d.rendered&&e){e.onReplace(b,c,[],a)}else{Ext.view.View.prototype.onAdd.apply(this,arguments)}d.setPendingStripe(c)},onRemove:function(b,a,c){var d=this,e=d.bufferedRenderer;if(d.rendered&&e){e.onReplace(b,c,a,[])}else{Ext.view.View.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}Ext.view.View.prototype.onDataRefresh.call(this)},getViewRange:function(){var a=this;if(a.bufferedRenderer){return a.bufferedRenderer.getViewRange()}return Ext.view.View.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,c=a.stripeOnUpdate,b=a.all.startIndex;if(a.rendered&&(c||c===0)){if(c<b){c=b}a.doStripeRows(c);a.stripeOnUpdate=null}Ext.view.View.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:{refreshScroll:function(){var a=this,b=a.bufferedRenderer;if(b){b.refreshSize()}else{Ext.view.View.prototype.refreshScroll.call(this)}}}},1,["gridview","tableview"],["component","box","dataview","tableview","gridview"],{component:true,box:true,dataview:true,tableview:true,gridview:true},["widget.gridview","widget.tableview"],0,[Ext.view,"Table",Ext.grid,"View"],0));(Ext.cmd.derive("Ext.grid.Panel",Ext.panel.Table,{alternateClassName:["Ext.list.ListView","Ext.ListView","Ext.grid.GridPanel"],viewType:"tableview",lockable:false,rowLines:true},0,["grid","gridpanel"],["component","box","container","panel","tablepanel","gridpanel","grid"],{component:true,box:true,container:true,panel:true,tablepanel:true,gridpanel:true,grid: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 != null"> 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:"x-form-cb-wrap",checked:false,checkedCls:"x-form-cb-checked",boxLabelCls:"x-form-cb-label",boxLabelAlign:"after",afterLabelCls:"x-form-cb-after",wrapInnerCls:"x-form-cb-wrap-inner",noBoxLabelCls:"x-form-cb-wrap-inner-no-box-label",inputValue:"on",checkChangeEvents:[],inputType:"checkbox",isTextInput:false,ariaRole:"checkbox",onRe:/^on$/i,inputCls:"x-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.form.field.Base.prototype.getElConfig.call(this)},getSubTplData:function(a){var c=this,b=c.boxLabel,e=c.boxLabelAlign,d=b&&e==="before";return Ext.apply(Ext.form.field.Base.prototype.getSubTplData.apply(this,arguments),{disabled:c.readOnly||c.disabled,wrapInnerCls:c.wrapInnerCls,boxLabel:b,boxLabelCls:c.boxLabelCls,boxLabelAlign:e,labelAlignedBefore:d,afterLabelCls:d?c.afterLabelCls:"",noBoxLabelCls:!b?c.noBoxLabelCls:"",role:c.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;Ext.callback(d.handler,d.scope,[d,b],0,d);Ext.form.field.Base.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.Base.prototype.resetOriginalValue.call(this)},beforeDestroy:function(){Ext.form.field.Base.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"],["component","box","field","checkboxfield","checkbox"],{component:true,box:true,field:true,checkboxfield:true,checkbox: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:"x-bindinspector-stub-active",descriptorCls:"x-bindinspector-descriptor",multipleCls:"x-bindinspector-mult-val",directCls:"x-bindinspector-direct-val",inheritedCls:"x-bindinspector-inherited-val",componentKeyCls:"x-bindinspector-comp-key",componentDescCls:"x-bindinspector-comp-desc",componentValCls:"x-bindinspector-comp-val",lastItemCls:"x-bindinspector-last-item",vmPreviewDefault:{xtype:"container",region:"east",split:true,width:"50%",cls:"x-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;⇒ &nbsp;&nbsp;&nbsp;",d=g.getInheritedVM(e),c,k;h.bindingsPreviewDefault={xtype:"panel",border:false,region:"center",cls:"x-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:"x-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="x-componentlist-tip" class="x-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="x-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="x-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="x-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"],["component","box","container","panel","bindinspector-componentdetail"],{component:true,box:true,container:true,panel:true,"bindinspector-componentdetail":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,{config:{selectionModel:{type:"treemodel"}},isTreeView:true,loadingCls:"x-grid-tree-loading",expandedCls:"x-grid-tree-node-expanded",leafCls:"x-grid-tree-node-leaf",expanderSelector:".x-tree-expander",checkboxSelector:".x-tree-checkbox",expanderIconOverCls:"x-tree-expander-over",nodeAnimWrapCls:"x-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.Table.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 c=this,b=c.stretcher,a=c.getScrollable();Ext.view.Table.prototype.afterComponentLayout.apply(this,arguments);if(b){b.setWidth((this.getWidth()-Ext.getScrollbarSize().width))}if(a&&!c.bufferedRenderer){a.refresh()}},processUIEvent:function(a){if(a.getTarget("."+this.nodeAnimWrapCls,this.el)){return false}return Ext.view.Table.prototype.processUIEvent.apply(this,arguments)},setRootNode:function(a){this.node=a},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,e=c[0],k=e.parentNode,l=j.all,n,d=j.getAnimWrap(k),m,b,g,a;if(!d||!d.expanding){return Ext.view.Table.prototype.doAdd.apply(this,arguments)}a=j.bufferRender(c,h,true);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.childrenArray);return a.childrenArray},onRemove:function(g,a,b){var d=this,e,c;if(d.viewReady){e=d.store.getCount()===0;if(d.bufferedRenderer){return Ext.view.Table.prototype.onRemove.apply(this,arguments)}if(e){d.refresh()}else{for(c=a.length-1,b+=c;c>=0;--c,--b){d.doRemove(a[c],b)}d.refreshSizePending=true}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.Table.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){j.isExpandingOrCollapsing=false;h.fireEvent("afteritemexpand",j,g,c);return}b=d.animateEl;k=d.targetEl;b.stopAnimation();e[a]=true;Ext.on("idle",function(){b.dom.style.height="0px"},null,{single:true});b.animate({from:{height:0},to:{height:k.dom.scrollHeight},duration:h.expandDuration,listeners:{afteranimate:function(){var l=k.dom.childNodes,m=Ext.Element.getActiveElement();if(l.length){if(!k.contains(m)){m=null}d.el.insertSibling(l,"before",true);if(m){m.focus()}}d.el.destroy();h.animWraps[d.record.internalId]=e[a]=null}},callback:function(){j.isExpandingOrCollapsing=false;if(!h.isDestroyed){h.refreshSize(true)}h.fireEvent("afteritemexpand",j,g,c)}})},onBeforeCollapse:function(e,b,c,h,d){var g=this,a;if(g.rendered&&g.all.getCount()){if(g.animate){if(e.isVisible()){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()||!d.isVisible()){return}if(!b){d.isExpandingOrCollapsing=false;g.fireEvent("afteritemcollapse",d,c,e);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();g.animWraps[b.record.internalId]=a[j]=null}},callback:function(){d.isExpandingOrCollapsing=false;if(!g.isDestroyed){g.refreshSize(true)}g.fireEvent("afteritemcollapse",d,c,e);Ext.callback(b.callback,b.scope);b.callback=b.scope=null}})},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.Table.prototype.onItemDblClick.apply(this,arguments);if(d.toggleOnDblClick&&a.isExpandable()&&!(b&&b.clicksToEdit===2)){d.toggle(a)}},onBeforeItemMouseDown:function(a,c,b,d){if(d.getTarget(this.expanderSelector,c)){return false}return Ext.view.Table.prototype.onBeforeItemMouseDown.apply(this,arguments)},onItemClick:function(a,c,b,d){if(d.getTarget(this.expanderSelector,c)&&a.isExpandable()){this.toggle(a,d.ctrlKey);return false}return Ext.view.Table.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.Table.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},onBindStore:function(a,c,d,e){var b=e&&e.getRootNode(),g=a&&a.getRootNode();Ext.view.Table.prototype.onBindStore.apply(this,arguments);if(g!==b){this.onRootChange(g,b)}},onRootChange:function(c,a){var b=this;if(a){b.rootListeners.destroy();b.rootListeners=null}if(c){b.rootListeners=c.on({beforeexpand:b.onBeforeExpand,expand:b.onExpand,beforecollapse:b.onBeforeCollapse,collapse:b.onCollapse,destroyable:true,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"],["component","box","dataview","tableview","gridview","treeview"],{component:true,box:true,dataview:true,tableview:true,gridview:true,treeview:true},["widget.treeview"],0,[Ext.tree,"View"],0));(Ext.cmd.derive("Ext.selection.RowModel",Ext.selection.DataViewModel,{enableKeyNav:true,isRowModel:true,deselectOnContainerClick:false,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.view,d=a.all.first(),b,c;if(d){b=d.getHeight();c=a.el.getHeight();e=Math.floor(c/b)}return e},onSelectChange:function(g,b,l,a){var j=this,m=j.views||[j.view],c=m.length,d=j.store.indexOf(g),h=b?"select":"deselect",e,k;if((l||j.fireEvent("before"+h,j,g,d))!==false&&a()!==false){for(e=0;e<c;e++){k=m[e];d=k.indexOf(g);if(k.indexOf(g)!==-1){if(b){k.onRowSelect(d,l)}else{k.onRowDeselect(d,l)}}}if(!l){j.fireEvent(h,j,g,d)}}},onEditorTab:function(d,k){var g=this,c=d.context.view,b=d.getActiveRecord(),a=d.context,j=k.shiftKey?"left":"right",h;do{h=a;a=c.walkCells(a,j,k,g.preventWrap);if(h&&h.isEqual(a)){return}}while(a&&(!a.column.getEditor(b)||!d.startEditByPosition(a)))},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,b){if(!a.isCellContext){a=new Ext.grid.CellContext(this.view).setPosition(a.row,a.column)}this.select(a.record,b)},selectNext:function(h,c){var g=this,b=g.store,e=g.getSelection(),a=e[e.length-1],d=g.view.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.view.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)}},0,0,0,0,["selection.rowmodel"],0,[Ext.selection,"RowModel"],0));(Ext.cmd.derive("Ext.selection.TreeModel",Ext.selection.RowModel,{selectOnExpanderClick:false,constructor:function(a){var b=this;Ext.selection.RowModel.prototype.constructor.call(this,a);if(b.pruneRemoved){b.pruneRemoved=false;b.pruneRemovedNodes=true}},getStoreListeners:function(){var b=this,a=Ext.selection.RowModel.prototype.getStoreListeners.call(this);a.noderemove=b.onNodeRemove;return a},onNodeRemove:function(c,d,a){if(!a){var b=[];this.gatherSelected(d,b);if(b.length){this.deselect(b)}}},pruneRemovedOnRefresh:function(){return this.pruneRemovedNodes},vetoSelection:function(d){var c=this.view,b=this.selectOnExpanderClick,a=!b&&d.type==="click"&&d.getTarget(c.expanderSelector||(c.lockingPartner&&c.lockingPartner.expanderSelector));return a||Ext.selection.RowModel.prototype.vetoSelection.call(this,d)},privates:{gatherSelected:function(d,c){var e=d.childNodes,b,a,g;if(this.selected.containsKey(d.id)){c.push(d)}if(e){for(b=0,a=e.length;b<a;++b){g=e[b];this.gatherSelected(g,c)}}}}},1,0,0,0,["selection.treemodel"],0,[Ext.selection,"TreeModel"],0));(Ext.cmd.derive("Ext.grid.ColumnLayout",Ext.layout.container.HBox,{type:"gridcolumn",firstHeaderCls:"x-column-header-first",lastHeaderCls:"x-column-header-last",initLayout:function(){Ext.layout.container.HBox.prototype.initLayout.call(this);if(this.scrollbarWidth===undefined){this.self.prototype.scrollbarWidth=Ext.getScrollbarSize().width}},beginLayout:function(c){var j=this,a=j.owner,k=a.grid?a.grid.getView():null,d=j.firstHeaderCls,m=j.lastHeaderCls,b=[d,m],h=j.getVisibleItems(),g=h.length,e,l;if(k&&k.scrollFlags.x){j.viewScrollX=k.getScrollX();a.suspendEvent("scroll");k.suspendEvent("scroll")}Ext.layout.container.HBox.prototype.beginLayout.call(this,c);for(e=0;e<g;e++){l=h[e];if(g===1){l.addCls(b)}else{if(e===0){l.addCls(d);l.removeCls(m)}else{if(e===g-1){l.removeCls(d);l.addCls(m)}else{l.removeCls(b)}}}}j.scrollbarWidth=0;if(a.isRootHeader){j.determineScrollbarWidth(c)}if(!j.scrollbarWidth){c.manageScrollbar=false}},moveItemBefore:function(b,c){var a=b.ownerCt;if(b!==c&&a){a.remove(b,false)}return Ext.layout.container.HBox.prototype.moveItemBefore.call(this,b,c)},determineScrollbarWidth:function(h){var g=this,a=g.owner,e=a.grid,c=a.reserveScrollbar===false,b=e.reserveScrollbar&&!c,d=!b&&!c&&e.view.scrollFlags.y;h.manageScrollbar=d;if(!e.ownerGrid.collapsed&&(b||d)){delete g.scrollbarWidth}},calculate:function(d){var p=this,a=p.owner.grid,l=d.viewContext,b=d.state,c=d.context,k,q,m,h,o,n,g,j,e;Ext.layout.container.HBox.prototype.calculate.call(this,d);if(a&&b.parallelDone){k=l.lockingPartnerContext;q=a.ownerGrid;if(q.forceFit&&!b.reflexed){if(p.convertWidthsToFlexes(d)){p.cacheFlexes(d);p.done=false;d.invalidate({state:{reflexed:true,scrollbarAdjustment:p.getScrollbarAdjustment(d)}});return}}if((m=b.columnsChanged)===undefined){h=d.target.getVisibleGridColumns();m=false;for(n=0,o=h.length;n<o;n++){g=c.getCmp(h[n]);if(!g.lastBox||g.props.width!==g.lastBox.width){(m||(m=[]))[n]=g}}b.columnsChanged=m;d.setProp("columnsChanged",m)}if(d.manageScrollbar){j=p.getScrollbarAdjustment(d);if(j){e=l.getProp("viewOverflowY");if(e===undefined){p.done=false;return}if(!e){if(k){k.invalidate();k.headerContext.invalidate()}l.invalidate();d.invalidate({state:{scrollbarAdjustment:0}})}}}}},finishedLayout:function(d){var c=this,a=c.owner,b=a.grid?a.grid.getView():null,e=c.viewScrollX;Ext.layout.container.HBox.prototype.finishedLayout.call(this,d);if(b&&b.scrollFlags.x){if(e!==undefined&&a.tooNarrow&&a.componentLayoutCounter){a.setScrollX(e)}b.resumeEvent("scroll");a.resumeEvent("scroll")}},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},getScrollbarAdjustment:function(d){var b=this,c=d.state,a=b.owner.grid,e=c.scrollbarAdjustment;if(e===undefined){e=0;if(a.reserveScrollbar||(d.manageScrollbar&&!a.ownerGrid.layout.ownerContext.heightModel.shrinkWrap)){e=b.scrollbarWidth}c.scrollbarAdjustment=e}return e},getContainerSize:function(b){var e=this,g,j,h,c,d,a,k,l;if(e.owner.isRootHeader){l=Ext.layout.container.HBox.prototype.getContainerSize.call(this,b);if(l.gotWidth){l.width-=e.getScrollbarAdjustment(b)}}else{h=b.paddingContext.getPaddingInfo();g=j=0;if(!b.widthModel.shrinkWrap){++j;a=b.getProp("innerWidth");c=(typeof a==="number");if(c){++g;a-=h.width;if(a<0){a=0}}}if(!b.heightModel.shrinkWrap){++j;k=b.getProp("innerHeight");d=(typeof k==="number");if(d){++g;k-=h.height;if(k<0){k=0}}}return{width:a,height:k,needed:j,got:g,gotAll:g==j,gotWidth:c,gotHeight:d}}return l},publishInnerCtSize:function(e){var d=this,a=d.owner,b=e.peek("contentWidth"),c=0;if(b!=null&&a.isRootHeader){c=-e.state.scrollbarAdjustment}return Ext.layout.container.HBox.prototype.publishInnerCtSize.call(this,e,c)}},0,0,0,0,["layout.gridcolumn"],0,[Ext.grid,"ColumnLayout"],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,a=c.delegate;c.el=b=Ext.get(b);if(a&&a.isElement){c.handle=a}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:"x-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 g=this,b=g.dragHd.el,e,h=g.ownerGrid,d=h.getSizeModel().width,c=d.shrinkWrap?g.headerCt.getWidth()-g.headerCt.visibleColumnManager.getColumns().length*g.minColWidth:g.maxColWidth,a;if(g.headerCt.forceFit){e=g.dragHd.nextNode("gridcolumn:not([hidden]):not([isGroupHeader])");if(e&&g.headerInSameGrid(e)){c=b.getWidth()+(e.getWidth()-g.minColWidth)}}else{if(h.isLocked&&d.shrinkWrap){c=g.dragHd.up("[scrollerOwner]").getTargetEl().getWidth(true)-h.getWidth()-(h.ownerLockable.normalGrid.visibleColumnManager.getColumns().length*g.minColWidth+Ext.getScrollbarSize().width)}}a=g.adjustConstrainRegion(b.getRegion(),0,0,0,g.minColWidth);a.right=b.getX()+c;return a},onStart:function(h){var j=this,g=j.dragHd,b=g.el.getWidth(),d=g.getRootHeaderCt(),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]-c.xDelta);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.call(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:".x-column-header",colInnerSelector:".x-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.call(this,b.el);a.proxy.el.addCls("x-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.DragZone.prototype.onDragDrop.apply(this,arguments)},afterRepair:function(){Ext.dd.DragZone.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)}a.id=0;a.el=null;a.dir=""},startProc:function(d,b){var e=this,h,g,c,a=e.proc;e.clearProc();a.el=d;a.dir=b;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=Ext.interval(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.call(this,this.el.dom,this.ddGroup||this.group,{isTarget:true})},dropAllowed:"x-dd-drop-ok",dropNotAllowed:"x-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.DDTarget.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:"x-column-header",proxyOffsets:[-4,-9],constructor:function(b){var a=this;a.headerCt=b;a.ddGroup=a.getDDGroup();a.autoGroup=true;Ext.dd.DropZone.prototype.constructor.call(this,b.el)},destroy:function(){Ext.dd.DropZone.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:"x-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:"x-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()},getNestedHeader:function(d,b){var a=d.items,c;if(d.isGroupHeader&&a.length){c=!b?"first":"last";d=this.getNestedHeader(a[c](),b)}return d},onNodeDrop:function(m,c,q,u){if(!this.valid){return}var r=this,n=u.header,h=u.dropLocation,p=h.pos,k=h.header,t=n.ownerCt,a=k.ownerCt,d=r.headerCt.visibleColumnManager,o=d.getHeaderIndex(n),b,l,s,j,g;if(u.isLock||u.isUnlock){j=t.up("[scrollerOwner]");b=a.items.indexOf(k);if(p==="after"){b++}if(u.isLock){j.lock(n,b,a)}else{j.unlock(n,b,a)}}else{b=p==="after"?d.getHeaderIndex(r.getNestedHeader(k,1))+1:d.getHeaderIndex(r.getNestedHeader(k,0));r.invalidateDrop();g=n.getWidth();Ext.suspendLayouts();t.isDDMoveInGrid=a.isDDMoveInGrid=!u.crossPanel;if(n.isGroupHeader&&k.isGroupHeader){n.setNestedParent(k)}if(p==="before"){k.insertNestedHeader(n)}else{s="move"+p.charAt(0).toUpperCase()+p.substr(1);a[s](n,k)}if(b>=0&&!(k.isGroupHeader&&!k.items.length)&&o!==b){l=n.isGroupHeader?n.query(":not([hidden]):not([isGroupHeader])").length:1;if((o<=b)&&l>1){b-=l}a.getRootHeaderCt().grid.view.moveColumn(o,b,l)}(t.ownerCt||t).fireEvent("columnmove",t,n,o,b);t.isDDMoveInGrid=a.isDDMoveInGrid=false;if(a.isGroupHeader&&!t.isGroupHeader){if(t!==a){n.savedFlex=n.flex;delete n.flex;n.width=g}}else{if(!t.isGroupHeader){if(n.savedFlex){n.flex=n.savedFlex;delete n.width}}}Ext.resumeLayouts(true)}}},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:"x-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:"x-column-header-open",menuSortAscCls:"x-hmenu-sort-asc",menuSortDescCls:"x-hmenu-sort-desc",menuColsIcon:"x-cols-icon",ddLock:false,dragging:false,sortOnClick:true,enableFocusableContainer: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=a.isFocusableContainer=false;a.focusable=true;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;if(!a.hiddenHeaders){a.enableFocusableContainer=true;a.ariaRole="row"}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)},insertNestedHeader:function(g){var b=this,e=g.ownerCt,a=b.ownerCt,d=a.layout.owner,c;if(e){if(b.isGroupHeader&&!a.isNestedParent){c=d.items.indexOf(b)}e.remove(g,false)}if(c===undefined){c=d.items.indexOf(b)}d.insert(c,g)},isNested:function(){return !!this.getRootHeaderCt().down("[isNestedParent]")},isNestedGroupHeader:function(){var b=this,a=b.getRefOwner().query(">:not([hidden])");return(a.length===1&&a[0]===b)},maybeShowNestedGroupHeader:function(){var a=this.items,b;if(a&&a.length===1&&(b=a.getAt(0))&&b.hidden){b.show()}},setNestedParent:function(a){a.isNestedParent=false;a.ownerCt.isNestedParent=!!(this.ownerCt.items.length===1&&a.ownerCt.items.length===1)},initEvents:function(){var c=this,a,b;Ext.container.Container.prototype.initEvents.call(this);if(!c.isColumn&&!c.isGroupHeader){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}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((!h.isGroupHeader&&!h.isContainer)||d.within(g)){if(d.type==="click"||d.type==="tap"){a=h.onTitleElClick(d,g,c.sortOnClick);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(b,d,c)}},getHeaderElByEvent:function(a){return a.getTarget("."+Ext.grid.column.Column.prototype.baseCls)},isLayoutRoot:function(){if(this.hiddenHeaders){return false}return Ext.container.Container.prototype.isLayoutRoot.call(this)},getRootHeaderCt: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(h){if(!h||!h.length){return}var p=this,n=p.items.items,m=n.length,j=0,b=h.length,o,d,a,l,q=false,k=[],e={},g=[];for(o=0;o<b;o++){a=h[o];a.index=o;e[a.id]=a}for(j=0;j<m;j++){d=n[j];a=e[d.getStateId()];if(a){l=a.index;k[l]=d;if(j!==l){q=true}if(d.applyColumnState){d.applyColumnState(a)}}else{g.push({index:j,column:d})}}k=Ext.Array.clean(k);b=g.length;if(b){for(j=0;j<b;j++){a=g[j];l=a.index;if(l<k.length){q=true;Ext.Array.splice(k,l,0,a.column)}else{k.push(a.column)}}}if(q){p.removeAll(false);p.add(k);p.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(c,e){var d=this,b=d.items,a;if(c.isComponent){a=c;c=b.indexOf(a)}else{a=b.getAt(c)}a.visibleFromIdx=d.getRootHeaderCt().visibleColumnManager.indexOf(a);Ext.container.Container.prototype.move.apply(this,arguments)},onMove:function(a,d,h){var g=this,e=g.getRootHeaderCt(),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.isNestedParent&&a&&!b.items.getCount()){if(d.rendered){b.detachComponent(d)}Ext.suspendLayouts();a.remove(b);Ext.resumeLayouts(true)}}},onHeadersChanged:function(e,a){var b,d=this.getRootHeaderCt();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(!a){return}if(b.forceFit){delete b.flex}b.onHeaderVisibilityChange(c,true);a.onHeaderShow(b,c);b.fireEvent("columnshow",b,c);b.fireEvent("columnschanged",this)},onHeaderHide:function(c){var b=this,a=b.ownerCt;if(!a){return}b.onHeaderVisibilityChange(c,false);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(g,d,b){var c=this,a=g.getView().getSelectionModel();g.fireEvent("headerclick",c,g,d,b);if(c.fireEvent("headerclick",c,g,d,b)!==false){if(a.onHeaderClick){a.onHeaderClick(c,g,d)}}},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){if(d.activeMenu){if(c.pointerType){d.activeMenu.hide()}else{d.activeMenu.focus()}}else{b.showMenuBy(c,a,d)}}},showMenuBy:function(a,c,h){var e=this.getMenu(),g=e.down("#ascItem"),d=e.down("#descItem"),b;e.activeHeader=e.ownerCmp=h;h.setMenuActive(e);b=h.sortable?"enable":"disable";if(g){g[b]()}if(d){d[b]()}e.autoFocus=!a||!a.pointerType;e.showBy(c,"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;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.length?c:null},onColumnCheckChange:function(a,c){var d=Ext.getCmp(a.headerId),b;if(d.rendered){d[c?"show":"hide"]();b=d.lastCheckedHeaderId;if(c&&b){d.getRootHeaderCt().getMenu().down("[headerId="+b+"]").setChecked(true);d.lastCheckedHeaderId=null}}else{d.hidden=!c}},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(){var h=this,c,e,b,a,d,g;if(h.gridVisibleColumns){return h.gridVisibleColumns}c=h.getGridColumns();e=h.getRootHeaderCt();b=[];a=c.length;for(d=0;d<a;d++){g=c[d];if(!g.hidden&&!g.isColumnHidden(e)){b[b.length]=g}}h.gridVisibleColumns=b;return b},isColumnHidden:function(b){var a=this.getRefOwner();while(a&&a!==b){if(a.hidden){return true}a=a.getRefOwner()}return false},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;if(e){for(b=0,d=e.length;b<d;b++){j=e[b];if(j.isGroupHeader){j.visibleIndex=k.length;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.getRootHeaderCt().columnManager}return this.columnManager.getHeaderIndex(a)},getHeaderAtIndex:function(a){if(!this.columnManager){this.columnManager=this.getRootHeaderCt().columnManager}return this.columnManager.getHeaderAtIndex(a)},getVisibleHeaderClosestToIndex:function(a){if(!this.visibleColumnManager){this.visibleColumnManager=this.getRootHeaderCt().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)}}},privates:{getFocusables:function(){return this.isRootHeader?this.getVisibleGridColumns():this.items.items},createFocusableContainerKeyNav:function(a){var b=this;return new Ext.util.KeyNav(a,{scope:b,down:b.showHeaderMenu,left:b.onFocusableContainerLeftKey,right:b.onFocusableContainerRightKey,space:b.onHeaderActivate,enter:b.onHeaderActivate})},showHeaderMenu:function(b){var a=this.getFocusableFromEvent(b);if(a&&a.triggerEl){this.onHeaderTriggerClick(a,b,a.triggerEl)}},onHeaderActivate:function(b){var a=this.getFocusableFromEvent(b);if(a){if(a.sortable&&this.sortOnClick){a.toggleSortState()}this.onHeaderClick(a,b,a.el)}},onFocusableContainerMousedown:function(c,b){var a=Ext.ComponentManager.byElement(b);if(a===this){c.preventDefault()}else{a.focus()}}}},0,["headercontainer"],["component","box","container","headercontainer"],{component:true,box:true,container:true,headercontainer:true},["widget.headercontainer"],[[Ext.util.FocusableContainer.prototype.mixinId||Ext.util.FocusableContainer.$className,Ext.util.FocusableContainer]],[Ext.grid.header,"Container"],0));(Ext.cmd.derive("Ext.grid.ColumnComponentLayout",Ext.layout.component.Auto,{type:"columncomponent",setWidthInDom:true,_paddingReset:{paddingTop:"",paddingBottom:""},beginLayout:function(a){Ext.layout.component.Auto.prototype.beginLayout.apply(this,arguments);a.titleContext=a.getEl("titleEl")},beginLayoutCycle:function(c){var b=this,a=b.owner;Ext.layout.component.Auto.prototype.beginLayoutCycle.apply(this,arguments);if(c.widthModel.shrinkWrap){a.el.setWidth("")}a.titleEl.setStyle(b._paddingReset)},publishInnerHeight:function(d,c){var b=this,a=b.owner,e;if(a.getRootHeaderCt().hiddenHeaders){d.setProp("innerHeight",0);return}if(!d.hasRawContent){if(a.headerWrap&&!d.hasDomProp("width")){b.done=false;return}e=c-d.getBorderInfo().height;d.setProp("innerHeight",e-a.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:"x-column-header",hoverCls:"x-column-header-over",handleWidth:Ext.supports.Touch?10:4,ariaRole:"columnheader",enableFocusableContainer:false,sortState:null,possibleSortStates:["ASC","DESC"],childEls:["titleEl","triggerEl","textEl"],headerWrap:false,renderTpl:['<div id="{id}-titleEl" data-ref="titleEl" {tipMarkup}class="',"x-",'column-header-inner<tpl if="!$comp.isContainer"> ',"x-","leaf-column-header</tpl>",'<tpl if="empty"> ',"x-",'column-header-inner-empty</tpl>">','<span class="',"x-",'column-header-text-container">','<span class="',"x-",'column-header-text-wrapper">','<span id="{id}-textEl" data-ref="textEl" class="',"x-","column-header-text",'{childElCls}">',"{text}","</span>","</span>","</span>",'<tpl if="!menuDisabled">','<div id="{id}-triggerEl" data-ref="triggerEl" role="presentation" class="',"x-","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:"",producesHTML:true,isHeader:true,isColumn:true,tabIndex:-1,ascSortCls:"x-column-header-sort-ASC",descSortCls:"x-column-header-sort-DESC",componentLayout:"columncomponent",groupSubHeaderCls:"x-group-sub-header",groupHeaderCls:"x-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||"")+" x-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("x-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.getRootHeaderCt();if(a){return a.view}},onResize:function(d,a,c,h){var e=this,b,g;Ext.grid.header.Container.prototype.onResize.apply(this,arguments);if(c&&e.cellWrap){b=e.getView();if(b){g=b.bufferedRenderer;if(g){g.onWrappedColumnWidthChange(c,d)}}}},onFocusLeave:function(a){Ext.grid.header.Container.prototype.onFocusLeave.call(this,a);if(this.activeMenu){this.activeMenu.hide()}},initItems:function(){var a=this;Ext.grid.header.Container.prototype.initItems.apply(this,arguments);if(a.isGroupHeader){if(a.config.hidden||!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(a.groupSubHeaderCls)}if(a.isGroupHeader&&a.hidden&&a.hasVisibleChildColumns()){a.show()}Ext.grid.header.Container.prototype.onAdd.call(this,b)},onRemove:function(b){var a=this;if(b.isSubHeader){b.isSubHeader=false;b.removeCls(a.groupSubHeaderCls)}Ext.grid.header.Container.prototype.onRemove.call(this,b);if(!(a.isDestroyed||a.destroying)&&!a.hasVisibleChildColumns()&&!a.ownerCt.isNested()){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.grid.header.Container.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}}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.getRootHeaderCt().getHeaderIndex(this)},getVisibleIndex:function(){return this.visibleIndex!=null?this.visibleIndex:this.isGroupColumn?false:Ext.Array.indexOf(this.getRootHeaderCt().getVisibleGridColumns(),this)},beforeRender:function(){var b=this,a=b.getRootHeaderCt();Ext.grid.header.Container.prototype.beforeRender.call(this);if(!b.isSortable()&&!b.groupable&&!b.lockable&&(a.grid.enableColumnHide===false||!a.getHideableColumns().length)){b.menuDisabled=true}if(b.cellWrap){b.variableRowHeight=true}b.protoEl.unselectable()},afterRender:function(){var b=this,a=b.triggerEl;Ext.grid.header.Container.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,b,g){var e=this,c=e.getRootHeaderCt();Ext.grid.header.Container.prototype.afterComponentLayout.apply(this,arguments);if(c&&(b!=null||e.flex)&&d!==b){c.onHeaderResize(e,d)}},onDestroy:function(){var a=this;Ext.destroy(a.field);a.field=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(d){var b=this,a,c,g;if(b.isOnLeftEdge(d)){a=b.previousNode("gridcolumn:not([hidden]):not([isGroupHeader])");if(a&&a.getRootHeaderCt()===b.getRootHeaderCt()){a.autoSize()}}else{if(b.isOnRightEdge(d)){if(b.isGroupHeader&&d.getPoint().isContainedBy(b.layout.innerCt)){c=b.query("gridcolumn:not([hidden]):not([isGroupHeader])");b.getRootHeaderCt().autoSizeColumn(c[c.length-1]);return}else{g=b.getRootHeaderCt();if(g.visibleColumnManager.getColumns().length===1&&g.forceFit){return}}b.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=b.getRootHeaderCt();Ext.suspendLayouts();for(a=0;a<e;a++){d.autoSizeColumn(c[a])}Ext.resumeLayouts(true);return}b.getRootHeaderCt().autoSizeColumn(b)},onTitleElClick:function(h,c,d){var g=this,a,b;if(Ext.supports.Touch){b=g.previousSibling(":not([hidden])");if(!g.menuDisabled&&g.isOnRightEdge(h,parseInt(g.triggerEl.getStyle("width")))){if(!g.menuDisabled){a=g}}else{if(b&&!b.menuDisabled&&g.isOnLeftEdge(h)){a=b}}}else{a=g.triggerEl&&(h.target===g.triggerEl.dom||c===g.triggerEl||h.within(g.triggerEl))?g:null}if(d!==false&&(!a&&!g.isOnLeftEdge(h)&&!g.isOnRightEdge(h)||h.getKey())){g.toggleSortState()}return a},processEvent:function(g,b,a,c,d,h){return this.fireEvent.apply(this,arguments)},isSortable:function(){var b=this.getRootHeaderCt(),a=b?b.grid:null,c=this.sortable;if(a&&a.sortableColumns===false){c=false}return c},toggleSortState:function(){if(this.isSortable()){this.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(h){var c=this,d=h&&h.getDirection(),g=c.ascSortCls,a=c.descSortCls,b=c.getRootHeaderCt(),e;switch(d){case"DESC":if(!c.hasCls(a)){c.addCls(a);c.sortState="DESC";e=true}c.removeCls(g);break;case"ASC":if(!c.hasCls(g)){c.addCls(g);c.sortState="ASC";e=true}c.removeCls(a);break;default:c.removeCls([g,a]);c.sortState=null;break}if(e){b.fireEvent("sortchange",b,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(){var d=this,c=d.getRootHeaderCt(),a=d.getRefOwner(),b;if(a.constructing){Ext.grid.header.Container.prototype.hide.call(this);return d}if(d.rendered&&!d.isVisible()){return d}if(c.forceFit){d.visibleSiblingCount=c.getVisibleGridColumns().length-1;if(d.flex){d.savedWidth=d.getWidth();d.flex=null}}if(a.isGroupHeader){if(d.isNestedGroupHeader()){a.hide()}if(d.isSubHeader&&!d.isGroupHeader&&a.query(">:not([hidden])").length===1){a.lastCheckedHeaderId=d.id}}Ext.suspendLayouts();Ext.grid.header.Container.prototype.hide.call(this);c.onHeaderHide(d);Ext.resumeLayouts(true);return d},show:function(){var c=this,a=c.getRootHeaderCt(),b=c.ownerCt;if(c.isVisible()){return c}if(c.rendered){if(a.forceFit){a.applyForceFit(c)}}Ext.suspendLayouts();if(c.isSubHeader&&b.hidden){b.show(false,true)}Ext.grid.header.Container.prototype.show.apply(this,arguments);if(c.isGroupHeader){c.maybeShowNestedGroupHeader()}b=c.getRootHeaderCt();if(b){b.onHeaderShow(c)}Ext.resumeLayouts(true);return c},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"x-grid-cell-"+this.getItemId()},getCellSelector:function(){return"."+this.getCellId()},getCellInnerSelector:function(){return this.getCellSelector()+" .x-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.activeMenu=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"],["component","box","container","headercontainer","gridcolumn"],{component:true,box:true,container:true,headercontainer:true,gridcolumn:true},["widget.gridcolumn"],0,[Ext.grid.column,"Column",Ext.grid,"Column"],0));(Ext.cmd.derive("Ext.tree.Column",Ext.grid.column.Column,{tdCls:"x-grid-cell-treecolumn",autoLock:true,lockable:false,draggable:false,hideable:false,iconCls:"x-tree-icon",checkboxCls:"x-tree-checkbox",elbowCls:"x-tree-elbow",expanderCls:"x-tree-expander",textCls:"x-tree-node-text",innerCls:"x-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"],["component","box","container","headercontainer","gridcolumn","treecolumn"],{component:true,box:true,container:true,headercontainer:true,gridcolumn:true,treecolumn:true},["widget.treecolumn"],0,[Ext.tree,"Column"],0));(Ext.cmd.derive("Ext.grid.NavigationModel",Ext.view.NavigationModel,{focusCls:"x-grid-item-focused",getViewListeners:function(){var a=this;return{containermousedown:a.onContainerMouseDown,cellmousedown:a.onCellMouseDown,cellclick:a.onCellClick,itemmousedown:a.onItemMouseDown,itemclick:a.onItemClick,itemcontextmenu:a.onItemClick,scope:a}},initKeyNav:function(a){var b=this;b.position=new Ext.grid.CellContext(a);b.keyNav=new Ext.util.KeyNav({target:a,ignoreInputFields:true,eventName:"itemkeydown",defaultEventAction:"stopEvent",processEvent:function(d,c,h,e,g){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,tab:b.onKeyTab,space:b.onKeySpace,enter:b.onKeyEnter,A:{ctrl:true,handler:b.onSelectAllKeyPress},scope:b})},onCellMouseDown:function(c,a,g,b,j,e,d){var h=d.parentEvent;if(!h||h.type!=="touchstart"){this.setPosition(d.position,null,d)}},onCellClick:function(d,b,g,c,h,e,a){if(this.position.isEqual(a.position)){this.fireNavigateEvent(a)}else{this.setPosition(a.position,null,a)}},onItemMouseDown:function(m,g,p,j,a){var k=this,n,d,h,e,c,l,o=a.parentEvent;if(!o||o.type!=="touchstart"){if(!a.position.cellElement){n=a.getX();d=m.getVisibleColumnManager().getColumns();h=d.length;for(e=0;e<h;e++){c=d[e];l=d[e].getBox();if(n>=l.left&&n<l.right){k.setPosition(g,d[e],a);return}}}}},onItemClick:function(c,b,e,d,a){if(!a.position.cellElement){this.fireNavigateEvent(a)}},beforeViewRefresh:function(){var a=this.getPosition();if(a&&a.view===this){this.focusRestorePosition=a}else{this.focusRestorePosition=null}},onStoreRemove:function(){if(this.position){this.setPosition(this.getPosition(),null,null,null,true)}},deferSetPosition:function(c,b,d,g,a,h){var e=this.view.getFocusTask();e.delay(c,this.setPosition,this,[b,d,g,a,h]);return e},setPosition:function(e,l,m,q,h){var n=this,p,j,a,b,c,k,g,o=e==null&&l==null,d=n.record==null&&n.recordIndex==null&&n.item==null;if(e&&e.isCellContext){p=e.view}else{if(m&&m.view){p=m.view}else{if(n.lastFocused){p=n.lastFocused.view}else{p=n.view}}}j=p.getSelectionModel();a=p.dataSource;p.getFocusTask().cancel();if(p.isDestroyed||!p.refreshCounter||o&&d||!p.all.getCount()){return}if(e&&e.isCellContext){k=e.record;b=e.rowIdx;c=e.colIdx;g=e.column;if(a.indexOf(k)===-1){b=a.indexOfId(k.id);if(b===-1){n.recordIndex=-1;k=a.getAt(0);b=0;c=0;g=p.getVisibleColumnManager().getColumns()[0]}else{k=a.getById(k.id)}}}else{if(o){k=b=null}else{if(l==null){l=n.lastFocused?n.lastFocused.column:0}if(typeof e==="number"){b=Math.max(Math.min(e,a.getCount()-1),0);k=a.getAt(e)}else{if(e.isEntity){k=e;b=a.indexOf(k)}else{if(e.tagName){k=p.getRecord(e);b=a.indexOf(k);if(b===-1){k=null}}else{if(d){return}o=true;k=b=null}}}}if(k){if(b===-1){n.recordIndex=-1;k=a.getAt(0);b=0;l=null}if(l==null){if(!(g=n.column)){c=0;g=p.getVisibleColumnManager().getColumns()[0]}}else{if(typeof l==="number"){g=p.getVisibleColumnManager().getColumns()[l];c=l}else{g=l;c=p.getVisibleColumnManager().indexOf(l)}}}else{o=true;g=c=null}}if(b===n.recordIndex&&c===n.columnIndex){return n.focusPosition(n.position)}if(n.cell){n.cell.removeCls(n.focusCls)}n.previousRecordIndex=n.recordIndex;n.previousRecord=n.record;n.previousItem=n.item;n.previousCell=n.cell;n.previousColumn=n.column;n.previousColumnIndex=n.columnIndex;n.previousPosition=n.position.clone();n.position.setAll(p,n.recordIndex=b,n.columnIndex=c,n.record=k,n.column=g);if(o){n.item=n.cell=null}else{n.focusPosition(n.position,h)}if(!q){j.fireEvent("focuschange",j,n.previousRecord,n.record);p.fireEvent("rowfocus",n.record,n.item,n.recordIndex);p.fireEvent("cellfocus",n.record,n.cell,n.position)}if(m&&!h&&n.cell!==n.previousCell){n.fireNavigateEvent(m)}},focusPosition:function(a){var d=this,b,c,e;d.item=d.cell=null;if(a&&a.record&&a.column){b=a.view;if(a.rowElement){e=d.item=a.rowElement}else{c=b.all.item(a.rowIdx,true);if(c){e=d.item=b.getRow(c)}}if(e){d.cell=a.cellElement||Ext.fly(e).down(a.column.getCellSelector(),true);if(d.cell){d.cell=new Ext.dom.Fly(d.cell);b.lastFocused=d.lastFocused=d.position.clone();d.focusItem(d.cell);b.focusEl=d.cell}else{d.position.setAll();d.record=d.column=d.recordIndex=d.columnIndex=null}}else{e=b.dataSource.indexOf(a.record);d.position.setAll();d.record=d.column=d.recordIndex=d.columnIndex=null;if(e!==-1&&b.bufferedRenderer){d.lastKeyEvent=null;b.bufferedRenderer.scrollTo(e,false,d.afterBufferedScrollTo,d)}}}},focusItem:function(a){a.addCls(this.focusCls);a.focus()},getCell:function(){return this.cell},getPosition:function(){var d=this,a=d.position,c,b,e;if(a.record&&a.column){b=a.view;e=b.dataSource;c=e.indexOf(a.record);if(c===-1){c=e.indexOfId(a.record.id);if(c===-1){c=a.rowIdx;if(!e.getAt(c)){c=-1}}a.record=e.getAt(c)}if(c===-1||b.getVisibleColumnManager().indexOf(a.column)===-1){a.setAll();d.record=d.column=d.recordIndex=d.columnIndex=null}else{return a}}return null},getLastFocused:function(){var c=this,a,b=c.lastFocused;if(b&&b.record&&b.column){a=b.view;if(a.dataSource.indexOf(b.record)!==-1&&a.getVisibleColumnManager().indexOf(b.column)!==-1){return b}}},onKeyUp:function(b){var a=b.view.walkRecs(b.record,-1);if(a){this.setPosition(a,this.columnIndex,b)}},onKeyDown:function(b){var a=b.record.isExpandingOrCollapsing?null:b.view.walkRecs(b.record,1);if(a){this.setPosition(a,this.columnIndex,b)}},onKeyRight:function(b){var a=this.move("right",b);if(a){this.setPosition(a,null,b)}},onKeyLeft:function(b){var a=this.move("left",b);if(a){this.setPosition(a,null,b)}},move:function(b,d){var c=this,a=c.getPosition();if(a&&a.record){return a.view.walkCells(a,b,null,c.preventWrap)}},onKeyPageDown:function(e){var d=this,a=e.view,g=d.getRowsVisible(),c,b;if(g){if(a.bufferedRenderer){c=Math.min(e.recordIndex+g,a.dataSource.getCount()-1);d.lastKeyEvent=e;a.bufferedRenderer.scrollTo(c,false,d.afterBufferedScrollTo,d)}else{b=a.walkRecs(e.record,g);d.setPosition(b,null,e)}}},onKeyPageUp:function(e){var d=this,a=e.view,g=d.getRowsVisible(),c,b;if(g){if(a.bufferedRenderer){c=Math.max(e.recordIndex-g,0);d.lastKeyEvent=e;a.bufferedRenderer.scrollTo(c,false,d.afterBufferedScrollTo,d)}else{b=a.walkRecs(e.record,-g);d.setPosition(b,null,e)}}},onKeyHome:function(c){var b=this,a=c.view;if(c.altKey){if(a.bufferedRenderer){b.lastKeyEvent=c;a.bufferedRenderer.scrollTo(0,false,b.afterBufferedScrollTo,b)}else{b.setPosition(a.walkRecs(c.record,-a.dataSource.indexOf(c.record)),null,c)}}else{b.setPosition(c.record,0,c)}},afterBufferedScrollTo:function(b,a){this.setPosition(a,null,this.lastKeyEvent,null,!this.lastKeyEvent)},onKeyEnd:function(c){var b=this,a=c.view;if(c.altKey){if(a.bufferedRenderer){b.lastKeyEvent=c;a.bufferedRenderer.scrollTo(a.store.getCount()-1,false,b.afterBufferedScrollTo,b)}else{b.setPosition(a.walkRecs(c.record,a.dataSource.getCount()-1-a.dataSource.indexOf(c.record)),null,c)}}else{b.setPosition(c.record,c.view.getVisibleColumnManager().getColumns().length-1,c)}},getRowsVisible:function(){var e=false,a=this.view,d=a.all.first(),b,c;if(d){b=d.getHeight();c=a.el.getHeight();e=Math.floor(c/b)}return e},fireNavigateEvent:function(b){var a=this;a.fireEvent("navigate",{view:a.position.view,navigationModel:a,keyEvent:b||new Ext.event.Event({}),previousPosition:a.previousPosition,previousRecordIndex:a.previousRecordIndex,previousRecord:a.previousRecord,previousItem:a.previousItem,previousCell:a.previousCell,previousColumnIndex:a.previousColumnIndex,previousColumn:a.previousColumn,position:a.position,recordIndex:a.recordIndex,record:a.record,item:a.item,cell:a.cell,columnIndex:a.columnIndex,column:a.column})}},0,0,0,0,["view.navigation.grid"],0,[Ext.grid,"NavigationModel"],0));(Ext.cmd.derive("Ext.tree.NavigationModel",Ext.grid.NavigationModel,{initKeyNav:function(a){var c=this,b=c.view.ownerGrid.columns;c.isTreeGrid=b&&b.length>1;Ext.grid.NavigationModel.prototype.initKeyNav.call(this,a);c.keyNav.map.addBinding([{key:"8",shift:true,handler:c.onAsterisk,scope:c},{key:Ext.event.Event.NUM_MULTIPLY,handler:c.onAsterisk,scope:c}]);c.view.grid.on({columnschanged:c.onColumnsChanged,scope:c})},onColumnsChanged:function(){this.isTreeGrid=this.view.ownerGrid.getVisibleColumnManager().getColumns().length>1},onKeyLeft:function(d){var c=this,b=d.view,a=c.record;if(c.isTreeGrid&&!d.ctrlKey){return Ext.grid.NavigationModel.prototype.onKeyLeft.call(this,d)}if(d.position.column.isTreeColumn&&a.isExpanded()){b.collapse(a)}else{a=a.parentNode;if(a&&!(a.isRoot()&&!b.rootVisible)){c.setPosition(a,null,d)}}},onKeyRight:function(c){var b=this,a=b.record;if(b.isTreeGrid&&!c.ctrlKey){return Ext.grid.NavigationModel.prototype.onKeyRight.call(this,c)}if(!a.isLeaf()){if(c.position.column.isTreeColumn&&!a.isExpanded()){c.view.expand(a)}else{if(a.isExpanded()){a=a.childNodes[0];if(a){b.setPosition(a)}}}}},onKeyEnter:function(a){if(this.record.data.checked!=null){this.toggleCheck(a)}else{Ext.grid.NavigationModel.prototype.onKeyEnter.call(this,a)}},onKeySpace:function(a){if(this.record.data.checked!=null){this.toggleCheck(a)}else{Ext.grid.NavigationModel.prototype.onKeySpace.call(this,a)}},toggleCheck:function(a){this.view.onCheckChange(this.record)},onAsterisk:function(a){this.view.ownerCt.expandAll()}},0,0,0,0,["view.navigation.tree"],0,[Ext.tree,"NavigationModel"],0));(Ext.cmd.derive("Ext.tree.Panel",Ext.panel.Table,{alternateClassName:["Ext.tree.TreePanel","Ext.TreePanel"],viewType:"treeview",treeCls:"x-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:"x-tree-arrows",linesCls:"x-tree-lines",noLinesCls:"x-tree-no-lines",autoWidthCls:"x-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.call(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,navigationModel:"tree"},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);a=d.getView();d.relayEvents(a,["checkchange","afteritemexpand","afteritemcollapse"])},bindStore:function(b,c){var d=this,a=b.getRoot(),e=d.bufferedRenderer;Ext.panel.Table.prototype.bindStore.apply(this,arguments);if(e){if(e.store){e.bindStore(b)}}b.singleExpand=d.singleExpand;d.storeListeners=d.mon(b,{destroyable:true,rootchange:d.onRootChange,scope:d});d.storeRelayers=d.relayEvents(b,["beforeload","load"]);d.rootRelayers=d.mon(a,{destroyable:true,append:d.createRelayer("itemappend"),remove:d.createRelayer("itemremove"),move:d.createRelayer("itemmove",[0,4]),insert:d.createRelayer("iteminsert"),beforeappend:d.createRelayer("beforeitemappend"),beforeremove:d.createRelayer("beforeitemremove"),beforemove:d.createRelayer("beforeitemmove"),beforeinsert:d.createRelayer("beforeiteminsert"),expand:d.createRelayer("itemexpand",[0,1]),collapse:d.createRelayer("itemcollapse",[0,1]),beforeexpand:d.createRelayer("beforeitemexpand",[0,1]),beforecollapse:d.createRelayer("beforeitemcollapse",[0,1])});if(!d.rootVisible&&!b.autoLoad&&!(a.isExpanded()||a.isLoading())){if(a.isLoaded()){a.data.expanded=true;b.onNodeExpand(a,a.childNodes)}else{if(b.autoLoad!==false){a.data.expanded=false;a.expand()}}}b.ownerTree=d;if(!c){d.view.setRootNode(a)}},unbindStore:function(){var b=this,a=b.store;if(a){Ext.panel.Table.prototype.unbindStore.call(this);Ext.destroy(b.storeListeners,b.storeRelayers,b.rootRelayers);delete a.ownerTree;a.singleExpand=null}},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(d,b){var c=this,a=c.getRootNode();if(a){Ext.suspendLayouts();a.expand(true,d,b||c);Ext.resumeLayouts(true)}},collapseAll:function(e,c){var d=this,b=d.getRootNode(),a=d.getView();if(b){Ext.suspendLayouts();c=c||d;if(a.rootVisible){b.collapse(true,e,c)}else{b.collapseChildren(true,e,c)}Ext.resumeLayouts(true)}},expandPath:function(p,r){var e=arguments,g=this,h=g.view,j=(r&&r.field)||g.store.model.idProperty,k,q,b=(r&&r.separator)||"/",l,o,d,c,n,a,m;if(r&&typeof r==="object"){j=r.field||g.store.model.idProperty;b=r.separator||"/";l=r.callback;o=r.scope;k=r.select;q=r.focus}else{j=e[1]||g.store.model.idProperty;b=e[2]||"/";l=e[3];o=e[4]}if(Ext.isEmpty(p)){return Ext.callback(l,o||g,[false,null])}n=p.split(b);a=!n[0];if(a){d=g.getRootNode();c=1}else{d=g.store.findNode(j,n[0]);c=0}if(!d||(a&&d.get(j)!==n[1])){return Ext.callback(l,o||g,[false,d])}m=function(w){var u=this,s,t,v;if(++c===n.length){if(k){h.getSelectionModel().select(u)}if(q){h.getNavigationModel().setPosition(u,0)}return Ext.callback(l,o||g,[true,u,h.getNode(u)])}for(t=0,s=w?w.length:0;t<s;t++){u=w[t];v=u.get(j);if(v||v===0){v=v.toString()}if(v===n[c]){return u.expand(false,m)}}u=this;Ext.callback(l,o||g,[false,u,h.getNode(u)])};d.expand(false,m)},ensureVisible:function(n,o){if(n.isEntity){return Ext.panel.Table.prototype.ensureVisible.call(this,n,o)}var g=this,h=(o&&o.field)||g.store.model.idProperty,e=(o&&o.separator)||"/",k,m,l,a,j,b,d,c=function(s,q,p,r){if(!r&&s&&q){r=q.findChild(h,j)}if(r){g.doEnsureVisible(r,o)}else{Ext.callback(k,m||g,[false,q])}};if(o){k=o.callback;m=o.scope}l=n.split(e);a=!l[0];j=l.pop();if(l.length&&!(a&&l.length===1)){g.expandPath(l.join(e),h,e,c)}else{b=g.store.findNode(h,j);if(b){d=b.parentNode;if(d&&!d.isExpanded()){d.expand()}c(true,null,null,b)}else{Ext.callback(k,m||g,[false,null])}}},selectPath:function(d,c,b,e,a){this.ensureVisible(d,{field:c,separator:b,select:true,callback:e,scope:a})}},1,["treepanel"],["component","box","container","panel","tablepanel","treepanel"],{component:true,box: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,hidden:false,hideOnReadOnly:undefined,weight:0,preventMouseDown:true,baseCls:"x-form-trigger",focusCls:"x-form-trigger-focus",overCls:"x-form-trigger-over",clickCls:"x-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:{mousedown:d.onClickRepeaterMouseDown,scope:d},scope:d})}else{d.field.mon(b,{click:d.onClick,mousedown:d.onMouseDown,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)},onMouseDown:function(a){if(a.pointerType!=="touch"&&!this.field.owns(Ext.Element.getActiveElement())){this.field.inputEl.focus()}if(this.preventMouseDown){a.preventDefault()}},onClickRepeaterMouseDown:function(b,a){if(!a.parentEvent||a.parentEvent.type==="mousedown"){this.field.inputEl.focus()}a.preventDefault()},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:"x-form-empty-field",requiredCls:"x-form-required-field",valueContainsPlaceholder:false,ariaRole:"textbox",editable:true,repeatTriggerClick:false,triggerWrapCls:"x-form-trigger-wrap",triggerWrapFocusCls:"x-form-trigger-wrap-focus",triggerWrapInvalidCls:"x-form-trigger-wrap-invalid",fieldBodyCls:"x-form-text-field-body",inputWrapCls:"x-form-text-wrap",inputWrapFocusCls:"x-form-text-wrap-focus",inputWrapInvalidCls:"x-form-text-wrap-invalid",growCls:"x-form-text-grow",monitorTab:true,mimicing:false,needArrowKeys:true,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")},initEvents:function(){var b=this,a=b.inputEl;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.Base.prototype.onChange.apply(this,arguments);this.autoSize()},getSubTplData:function(b){var c=this,d=c.getRawValue(),g=c.emptyText&&d.length<1,a=c.maxLength,e;if(c.enforceMaxLength){if(a===Number.MAX_VALUE){a=undefined}}else{a=undefined}if(g){if(Ext.supports.Placeholder){e=c.emptyText}else{d=c.emptyText;c.valueContainsPlaceholder=true}}return Ext.apply(Ext.form.field.Base.prototype.getSubTplData.apply(this,arguments),{triggerWrapCls:c.triggerWrapCls,inputWrapCls:c.inputWrapCls,triggers:c.orderedTriggers,maxLength:a,readOnly:!c.editable||c.readOnly,placeholder:e,value:d,fieldCls:c.fieldCls+((g&&(e||d))?" "+c.emptyUICls:"")+(c.allowBlank?"":" "+c.requiredCls)})},onRender:function(){var c=this,b=c.getTriggers(),d=[],e,a;if(Ext.supports.FixedTableWidthBug){c.el._needsTableWidthFix=true}(arguments.callee.$previous||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.form.field.Base.prototype.afterRender.call(this);a.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:"x-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.call(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.Base.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)}else{b.inputEl.removeCls(b.emptyUICls)}b.autoSize()}},afterFirstLayout:function(){Ext.form.field.Base.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.field.Base.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.form.field.Base.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;Ext.form.field.Base.prototype.onFocus.apply(this,arguments);if(a.emptyText){a.autoSize()}a.addCls(a.fieldFocusCls);a.triggerWrap.addCls(a.triggerWrapFocusCls);a.inputWrap.addCls(a.inputWrapFocusCls);a.invokeTriggers("onFieldFocus",[b])},onBlur:function(b){var a=this;Ext.form.field.Base.prototype.onBlur.apply(this,arguments);a.removeCls(a.fieldFocusCls);a.triggerWrap.removeCls(a.triggerWrapFocusCls);a.inputWrap.removeCls(a.inputWrapFocusCls);a.invokeTriggers("onFieldBlur",[b])},completeEdit:function(){var a=this.inputFocusTask;Ext.form.field.Base.prototype.completeEdit.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.form.field.Base.prototype.getState.call(this),"value")},applyState:function(a){Ext.form.field.Base.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){m=arguments.length?(m==null?"":m):this.processRawValue(this.getRawValue());var g=this,k=Ext.form.field.Base.prototype.getErrors.call(this,m),a=g.validator,d=g.vtype,h=Ext.form.field.VTypes,j=g.regex,l=Ext.String.format,b,e,c;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,b){var h=this,d=h.getRawValue(),a=d.length,e=true,g=h.inputEl.dom,c;if(a>0){j=j===undefined?0:Math.min(j,a);b=b===undefined?a:Math.min(b,a);if(g.setSelectionRange){g.setSelectionRange(j,b)}else{if(g.createTextRange){c=g.createTextRange();c.moveStart("character",j);c.moveEnd("character",b-a);c.select()}}}},getGrowWidth:function(){return this.inputEl.dom.value},autoSize:function(){var e=this,d,k,b,h,j,c,a,g;if(e.grow&&e.rendered&&e.getSizeModel().width.auto){j=e.inputEl;d=e.getTriggers();h=0;g=Ext.util.Format.htmlEncode(e.getGrowWidth()||(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.form.field.Base.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"],["component","box","field","textfield"],{component:true,box: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:"x-bindings-icon",vmIconCls:"x-vm-icon",missingDataCls:"x-bindinspector-missing-data",filterVisibleCls:"x-bindinspector-filter-visible",lastItemCls:"x-bindinspector-last-item",bindingsIcon:"☍",vmIcon:"☶",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:"x-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:"x-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:"x-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='x-binding-tip-descriptor'>"+k+"</span><hr>"}c=a===e?a:e;g+=c.get("name")+":";g+="<br>&nbsp;&nbsp;&nbsp;&nbsp;";g+="<span class='x-binding-tip-value'>"+Ext.app.bindinspector.Util.valueRenderer(c.get("value"))+"</span>";j.tdCls="x-bindindicator-vm-src";j.tdAttr='data-qclass="x-componentlist-tip" data-qtip="'+g+'"'}},onDestroy:function(){this.bindingsTip.destroy();Ext.tree.Panel.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="x-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="x-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="x-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"],["component","box","container","panel","tablepanel","treepanel","bindinspector-componentlist"],{component:true,box:true,container:true,panel:true,tablepanel:true,treepanel:true,"bindinspector-componentlist":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.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"],["component","box","splitter","bordersplitter"],{component:true,box:true,splitter:true,bordersplitter:true},["widget.bordersplitter"],0,[Ext.resizer,"BorderSplitter"],0));(Ext.cmd.derive("Ext.layout.container.Border",Ext.layout.container.Container,{alternateClassName:"Ext.layout.BorderLayout",targetCls:"x-border-layout-ct",itemCls:["x-border-item","x-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}}return Ext.layout.container.Container.prototype.moveItemBefore.call(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.container.Container.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.Fit.prototype.getRenderTree.apply(this,arguments)}}},renderChildren:function(){var a=this,b=a.getActiveItem();if(!a.deferredRender){Ext.layout.container.Fit.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 c=this,b=c.activeItem===undefined?(c.owner&&c.owner.activeItem):c.activeItem,a=c.parseActiveItem(b);if(a&&c.owner.items.indexOf(a)!==-1){c.activeItem=a}return a==null?null:(c.activeItem||c.owner.activeItem)},parseActiveItem:function(a){var b;if(a&&a.isComponent){b=a}else{if(typeof a==="number"||a===undefined){b=this.getLayoutItems()[a||0]}else{if(a===null){b=null}else{b=this.owner.getComponent(a)}}}return b},configureItem:function(a){a.setHiddenState(a!==this.getActiveItem());Ext.layout.container.Fit.prototype.configureItem.apply(this,arguments)},onRemove:function(a){Ext.layout.container.Fit.prototype.onRemove.call(this,a);if(a===this.activeItem){this.activeItem=undefined}},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,h=a.rendered,c,g;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(h){Ext.suspendLayouts();if(!b.rendered){e.renderItem(b,e.getRenderTarget(),a.items.length)}if(d){if(e.hideInactive){g=d.el.contains(Ext.Element.getActiveElement());d.hide();if(d.hidden){d.hiddenByLayout=true;d.fireEvent("deactivate",d,b)}else{return false}}}if(b.hidden){b.show()}if(b.hidden){e.activeItem=b=null}else{e.activeItem=b;if(g){if(!b.defaultFocus){b.defaultFocus=":focusable"}b.focus()}}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.dom.ButtonElement",Ext.dom.Element,{setSize:function(d,a,b){var e=this,c=e.component;Ext.dom.Element.prototype.setSize.call(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.call(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.call(this,a,b);this.component.btnEl.setStyle("height",(!a||a==="auto")?"":"auto");return this},setWidth:function(b,a){Ext.dom.Element.prototype.setWidth.call(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:".x-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",groups:{},hideAll:function(){var d=Ext.ComponentQuery.query("menu[floating]:not([hidden])"),b=d.length,c,a=false;for(c=0;c<b;c++){d[c].hide();a=true}return a},get:function(c,b){var a;if(typeof c==="string"){a=Ext.getCmp(c);if(a instanceof Ext.menu.Menu){c=a}}else{if(Ext.isArray(c)){b=Ext.apply({items:c},b);c=new Ext.menu.Menu(b)}else{if(!c.isComponent){b=Ext.apply({},c,b);c=Ext.ComponentManager.create(b,"menu")}}}return c},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.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:"x-btn",hrefTarget:"_blank",destroyMenu:true,focusable:true,ariaRole:"button",defaultBindProperty:"text",childEls:["btnEl","btnWrap","btnInnerEl","btnIconEl"],publishes:{pressed:1},menuClickBuffer:250,_btnWrapCls:"x-btn-wrap",_btnCls:"x-btn-button",_baseIconCls:"x-btn-icon-el",_glyphCls:"x-btn-glyph",_innerCls:"x-btn-inner",_textCls:"x-btn-text",_noTextCls:"x-btn-no-text",_hasIconCls:"x-btn-icon",_pressedCls:"x-btn-pressed",overCls:"x-btn-over",_disabledCls:"x-btn-disabled",_menuActiveCls:"x-btn-menu-active",_operaArrowCls:"x-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" 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" class="{baseCls}-close-btn"><tpl if="closeText"> {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("x-unselectable");if(Ext.isOpera12m&&(a.split||a.menu)&&a.getArrowVisible()){a.addCls(a._operaArrowCls+"-"+a.arrowAlign)}Ext.Component.prototype.initComponent.call(this);if(a.menu){a.split=true;a.setMenu(a.menu,false,true)}if(a.url){a.href=a.url}a.configuredWithPreventDefault=a.hasOwnProperty("preventDefault");if(a.href&&!a.configuredWithPreventDefault){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.Component.prototype.getElConfig.call(this),a=c.getHref(),d=c.hrefTarget;if(b.tag==="a"){if(!c.disabled){b.tabIndex=c.tabIndex}if(a){if(!c.disabled){b.href=a;if(d){b.target=d}}}}return b},beforeRender:function(){Ext.Component.prototype.beforeRender.call(this);if(this.pressed){this.addCls(this._pressedCls)}},initRenderData:function(){return Ext.apply(Ext.Component.prototype.initRenderData.call(this),this.getTemplateArgs())},getMenu:function(){return this.menu||null},setMenu:function(e,d,b){var c=this,a=c.menu;if(a&&!b){if(d!==false&&c.destroyMenu){a.destroy()}a.ownerCmp=null}if(e){e=Ext.menu.Manager.get(e,{ownerCmp:c});e.ownerCmp=c;c.mon(e,{scope:c,show:c.onMenuShow,hide:c.onMenuHide});if(!a&&c.getArrowVisible()){c.split=true;if(c.rendered){c._addSplitCls();c.updateLayout()}}c.menu=e}else{if(c.rendered){c._removeSplitCls();c.updateLayout()}c.split=false;c.menu=null}},onRender:function(){var c=this,d,a,b;Ext.Component.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)},onFocusLeave:function(a){Ext.Component.prototype.onFocusLeave.call(this,a);if(this.menu){this.menu.hide()}},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,d=b.hrefTarget,c;b.href=a;if(!b.configuredWithPreventDefault){b.preventDefault=!a}if(b.rendered){c=b.el.dom;if(!a||b.disabled){c.removeAttribute("href");c.removeAttribute("hrefTarget")}else{c.href=b.getHref();if(d){c.target=d}}}},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(c){var a=this,b;a.params=c;if(a.rendered){b=a.el.dom;if(a.disabled){b.removeAttribute("href")}else{b.href=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()}Ext.destroy(a.repeater);Ext.Component.prototype.beforeDestroy.call(this)},onDestroy:function(){var a=this,b=a.menu;if(a.rendered){Ext.destroy(a.keyMap);delete a.keyMap}if(b&&a.destroyMenu){a.menu=Ext.destroy(b)}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(b){var a=this;if(a.menu&&!a.ignoreNextClick){a.showMenu(b)}},showMenu:function(a){var c=this,d=c.menu,b=!a||a.pointerType;if(d&&c.rendered){if(c.tooltip&&Ext.quickTipsActive&&c.getTipAttr()!=="title"){Ext.tip.QuickTipManager.getQuickTip().cancelShow(c.el)}if(d.isVisible()){if(b){d.hide()}else{d.focus()}}else{if(!a||c.showEmptyMenu||d.items.getCount()>0){d.autoFocus=!b;d.showBy(c.el,c.menuAlign)}}}return c},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(b);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&&!a.isDestroyed){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(b){var c=this,a=c.href,e=c.hrefTarget,d;Ext.Component.prototype.enable.apply(this,arguments);c.removeCls(c._disabledCls);if(c.rendered){d=c.el.dom;d.setAttribute("tabindex",c.tabIndex);if(a){d.href=a}if(e){d.target=e}}return c},disable:function(a){var b=this,c;Ext.Component.prototype.disable.apply(this,arguments);b.addCls(b._disabledCls);b.removeCls(b.overCls);if(b.rendered){c=b.el.dom;c.removeAttribute("tabindex");if(b.href){c.removeAttribute("href")}if(b.hrefTarget){c.removeAttribute("target")}}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.call(this,b)},onMouseDown:function(b){var a=this;if(Ext.isIE||b.pointerType==="touch"){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)},restoreClick:function(){this.ignoreNextClick=0},onDownKey:function(a,c){var b=this;if(b.menu&&!b.disabled){b.showMenu(c);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"x-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);Ext.Component.prototype.wrapPrimaryEl.call(this,a)}}},0,["button"],["component","box","button"],{component:true,box:true,button: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.tab.Tab",Ext.button.Button,{isTab:true,tabIndex:-1,baseCls:"x-tab",closeElOverCls:"x-tab-close-btn-over",closeElPressedCls:"x-tab-close-btn-pressed",config:{rotation:"default",tabPosition:"top"},closable:true,closeText:"Close Tab",active:false,childEls:["closeEl"],scale:false,ariaRole:"tab",_btnWrapCls:"x-tab-wrap",_btnCls:"x-tab-button",_baseIconCls:"x-tab-icon-el",_glyphCls:"x-tab-glyph",_innerCls:"x-tab-inner",_textCls:"x-tab-text",_noTextCls:"x-tab-no-text",_hasIconCls:"x-tab-icon",_activeCls:"x-tab-active",_closableCls:"x-tab-closable",overCls:"x-tab-over",_pressedCls:"x-tab-pressed",_disabledCls:"x-tab-disabled",_rotateClasses:{1:"x-tab-rotate-right",2:"x-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.button.Button.prototype.onAdded.call(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()}},beforeClick: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){Ext.Button.superclass.wrapPrimaryEl.call(this,a)}}},0,["tab"],["component","box","button","tab"],{component:true,box:true,button: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.component.Auto.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:"x-tab-bar",componentLayout:"body",isTabBar:true,config:{tabRotation:"default",tabStretchMax:true,activateOnFocus:true},defaultType:"tab",plain:false,ariaRole:"tablist",childEls:["body","strip"],_stripCls:"x-tab-bar-strip",_baseBodyCls:"x-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.panel.Bar.prototype.initRenderData.call(this),{bodyCls:a.bodyCls,baseBodyCls:a._baseBodyCls,bodyTargetCls:a.bodyTargetCls,stripCls:a._stripCls,dock:a.dock})},setDock:function(h){var g=this,a=g.items,c=g.ownerCt,e,b,d;a=a&&a.items;if(a){for(b=0,d=a.length;b<d;b++){e=a[b];if(e.isTab){e.setTabPosition(h)}}}if(g.rendered){g.resetItemMargins();if(c&&c.isHeader){c.resetItemMargins()}g.needsScroll=true}Ext.panel.Bar.prototype.setDock.call(this,h)},updateTabRotation:function(g){var e=this,a=e.items,b,d,c;a=a&&a.items;if(a){for(b=0,d=a.length;b<d;b++){c=a[b];if(c.isTab){c.setRotation(g)}}}if(e.rendered){e.resetItemMargins();e.needsScroll=true;e.updateLayout()}},onRender:function(){var a=this;Ext.panel.Bar.prototype.onRender.call(this);if(Ext.isIE8&&a.vertical){a.el.on({mousemove:a.onMouseMove,scope:a})}},afterLayout:function(){this.adjustTabPositions();Ext.panel.Bar.prototype.afterLayout.apply(this,arguments)},onAdded:function(b,c,a){if(b.isHeader){this.addCls(b.baseCls+"-"+b.ui+"-tab-bar")}Ext.panel.Bar.prototype.onAdded.call(this,b,c,a)},onRemove:function(a){var b=this;if(a===b.previousTab){b.previousTab=null}Ext.panel.Bar.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.call(this,b)},afterComponentLayout:function(c){var d=this,b=d.needsScroll,a=d.layout.overflowHandler;Ext.panel.Bar.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(".x-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||!c.isTab){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();c.deactivateFocusable(c.activeTab)}}b.activate();c.activateFocusable(b);c.activeTab=b;c.needsScroll=true;if(!a){c.fireEvent("change",c,b,b.card);c.updateLayout()}}},privates:{adjustTabPositions:function(){var h=this,a=h.items.items,d=a.length,g,b,e,c,j;if(!Ext.isIE8){j=h._getTabAdjustProp();while(d--){g=a[d];e=g.el;b=g.lastBox;c=g.isTab?g.getActualRotation():0;if(c===1&&g.isVisible()){e.setStyle(j,(b.x+b.width)+"px")}else{if(c===2&&g.isVisible()){e.setStyle(j,(b.x-b.height)+"px")}}}}},applyTargetCls:function(a){this.bodyTargetCls=a},_getTabAdjustProp:function(){return"left"},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(".x-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()){c.beforeClick(b);if(c.closable&&b){c.onCloseClick()}else{d.doActivateTab(c)}}},doActivateTab:function(a){var b=this.tabPanel;if(b){if(!a.disabled){b.setActiveTab(a.card)}}else{this.setActiveTab(a)}},onFocusableContainerFocus:function(c){var b=this,a=b.mixins.focusablecontainer,d;d=a.onFocusableContainerFocus.call(b,c);if(d&&d.isTab){b.doActivateTab(d)}},onFocusableContainerFocusEnter:function(c){var b=this,a=b.mixins.focusablecontainer,d;d=a.onFocusableContainerFocusEnter.call(b,c);if(d&&d.isTab){b.doActivateTab(d)}},focusChild:function(e,b){var c=this,a=c.mixins.focusablecontainer,d;d=a.focusChild.call(c,e,b);if(c.activateOnFocus&&d&&d.isTab){c.doActivateTab(d)}}}},0,["tabbar"],["component","box","container","tabbar"],{component:true,box:true,container:true,tabbar:true},["widget.tabbar"],[[Ext.util.FocusableContainer.prototype.mixinId||Ext.util.FocusableContainer.$className,Ext.util.FocusableContainer]],[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:"x-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!==null?(h.activeTab||0):null,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){e=h.header=Ext.apply({},e);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.panel.Panel.prototype.onRender.apply(this,arguments);for(c=0;c<a;++c){b[c].getBind()}},setActiveTab:function(a){var c=this,b;if(!Ext.isObject(a)||a.isComponent){a=c.getComponent(a)}b=c.getActiveTab();if(a){Ext.suspendLayouts();if(!a.isComponent){a=c.add(a)}if(b===a||c.fireEvent("beforetabchange",c,a,b)===false){Ext.resumeLayouts();return b}c.activeTab=a;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}return b},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.call(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",title:g.title,icon:g.icon,iconCls:g.iconCls,glyph:g.glyph,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,glyphchange:e.onItemGlyphChange,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()}if(e.rendered&&e.loader&&e.activeTab===undefined&&e.layout.activeItem!==null){e.setActiveTab(0)}},onItemEnable:function(a){a.tab.enable()},onItemDisable:function(a){a.tab.disable()},onItemBeforeShow:function(a){if(a!==this.activeTab){this.setActiveTab(a);return false}},onItemGlyphChange:function(a,b){a.tab.setGlyph(b)},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,iconchange:a.onItemIconChange,iconclschange:a.onItemIconClsChange,glyphchange:a.onItemGlyphChange,titlechange:a.onItemTitleChange});if(b.tab&&!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(d.tab&&(a=c.tabBar.items.indexOf(c.tabBar.findNextActivatable(d.tab)))!==-1){c.setActiveTab(a)}}Ext.panel.Panel.prototype.doRemove.apply(this,arguments);if(d.tab){delete d.tab.card;delete d.tab}}}},0,["tabpanel"],["component","box","container","panel","tabpanel"],{component:true,box: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:"x-bindinspector-viewmodeldetail",inheritedCls:"x-bindinspector-inherited",notInheritedCls:"x-bindinspector-not-inherited",highlightedCls:"x-bindinspector-highlighted",unhighlightedCls:"x-bindinspector-unhighlighted",lastItemCls:"x-bindinspector-last-item",initComponent:function(){var d=this,c=d.vm,e="VM &nbsp;&nbsp;&nbsp;⇒ &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:"x-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:"x-bindinspector-isloading",zeroBindingCls:"x-bi-zero-bind-count",dataOnlyCls:"x-bindinspector-data-only",stubOnlyCls:"x-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="x-bindinspector-data-search-cell";d.tdAttr='data-qclass="x-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?"◓":"-");k=g>1?"VMs":"VM";m.tdAttr='data-qclass="x-componentlist-tip" data-qtip="<b>'+n+"</b>&nbsp; provided by this VM and "+(g-1)+" ancestor "+k+'"'}else{if(d){b=a?"●":"";m.tdAttr='data-qclass="x-componentlist-tip" data-qtip="<b>'+n+'</b>&nbsp; is provided by this VM"'}else{if(h){b=a?"○":"";k=g>1?"VMs":"VM";m.tdAttr='data-qclass="x-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="x-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="x-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"],["component","box","container","panel","tablepanel","treepanel","bindinspector-viewmodeldetail"],{component:true,box:true,container:true,panel:true,tablepanel:true,treepanel:true,"bindinspector-viewmodeldetail":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:"x-bindinspector-container",componentPreviewDefault:{xtype:"container",cls:"x-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"],["component","box","container","bindinspector-container"],{component:true,box:true,container:true,"bindinspector-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.call(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,l,b,d,c=j.proxy?j.proxy.el:g.el,k=c.shadow,a=(k&&!j.constrainDelegate&&g.constrainShadow&&!k.disabled)?k.getShadowSize():0;if(!(h instanceof Ext.util.Region)){l=Ext.fly(h);h=l.getViewRegion();h.right=h.left+l.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:"x-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:"x-window-item",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.panel.Panel.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.panel.Panel.prototype.onRender.apply(this,arguments);if(c.header){c.header.on({scope:c,click:c.onHeaderClick})}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.panel.Panel.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=[],b=[];Ext.panel.Panel.prototype.addTools.call(this);if(a.minimizable){c.push({type:"minimize",handler:"minimize",scope:a})}if(a.maximizable){c.push({type:a.maximized?"restore":"maximize",handler:"toggleMaximize",scope:a})}if(c.length){a.addTool(c)}},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.panel.Panel.prototype.afterHide.apply(this,arguments)},onWindowResize:function(){var b=this,a;if(!b.isDestroyed){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();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.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.setType("restore")}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("x-window-maximized");e.container.addCls("x-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("x-window-maximized");if(g){g.suspendLayouts();if(d.maximize){d.maximize.setType("maximize")}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(null,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("x-window-maximized-ct");c.syncMonitorWindowResize();if(!b){c.el.enableShadow(null,true);c.maximized=false;c.fireEvent("restore",c)}}return c},syncMonitorWindowResize:function(){var b=this,c=b._monitoringResize,d=b.monitorResize||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},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(Ext.validIdRe.test(a)){b=c.down(Ext.makeIdSelector(a))}if(!b){b=c.down(a)}}else{if(d.focus){b=d}}}}return b},privates:{getFocusEl:function(){var a=this;return Ext.enableFocusManager?a.el:(a.getDefaultFocus()||a.el)},initDraggable:function(){this.initSimpleDraggable()},onHeaderClick:function(c,b){var a;if(c.el.contains(b.getTarget())){a=this.getDefaultFocus();if(a){a.focus()}}},initResizable:function(){Ext.panel.Panel.prototype.initResizable.apply(this,arguments);if(this.maximized){this.resizer.disable()}}}},0,["window"],["component","box","container","panel","window"],{component:true,box:true,container:true,panel:true,window:true},["widget.window"],0,[Ext.window,"Window",Ext,"Window"],0));(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:"x-tip",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.panel.Panel.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"],["component","box","container","panel","tip"],{component:true,box: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.tip.Tip.prototype.onRender.apply(this,arguments);c.anchorCls="x-tip-anchor-"+c.getAnchorPosition();c.anchorEl=c.el.createChild({role:"presentation",cls:"x-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="x-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}},calculateConstrainedPosition:function(b){var c=this,e,a,d;if(!b&&c.isContainedFloater()){e=c.isVisible();if(!e){c.el.show()}a=c.getTargetXY();if(!e){c.el.hide()}d=c.floatParent.getTargetEl().getViewRegion();a[0]-=d.left;a[1]-=d.top}else{a=c.callOverridden(arguments)}return a},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.tip.Tip.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.tip.Tip.prototype.hide.apply(this,arguments);delete a.triggerElement},show:function(b){var a=this;Ext.tip.Tip.prototype.show.call(this);if(this.hidden===false){if(a.anchor){a.anchor=a.origAnchor}if(!a.calledFromShowAt){a.showAt(b||a.getTargetXY())}}},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.syncUnderlays();if(a.dismissDelay&&a.autoHide!==false){a.dismissTimer=Ext.defer(a.hide,a.dismissDelay,a)}}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)},afterSetPosition:function(a,c){var b=this;Ext.tip.Tip.prototype.afterSetPosition.apply(this,arguments);if(b.anchor){b.syncAnchor();if(!b.anchorEl.isVisible()){b.anchorEl.show()}}else{b.anchorEl.hide()}},_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.tip.Tip.prototype.onShow.call(this);a.mon(Ext.getDoc(),"mousedown",a.onDocMouseDown,a)},onHide:function(){var a=this;Ext.tip.Tip.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.tip.Tip.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.tip.Tip.prototype.beforeDestroy.call(this)},onDestroy:function(){Ext.getDoc().un("mousedown",this.onDocMouseDown,this);Ext.tip.Tip.prototype.onDestroy.call(this)}},0,["tooltip"],["component","box","container","panel","tip","tooltip"],{component:true,box: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)},setTagConfig:function(a){this.tagConfig=Ext.apply({},a);delete this.tagConfig.attr},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=this.tagConfig,a=b.attr||(b.attr=b.namespace+b.attribute),g;if(this.interceptTitles&&c&&Ext.isString(c)){e.setAttribute(a,c);e.removeAttribute("title");return{text:c}}else{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.call(this,e)},hide:function(){delete this.activeTarget;Ext.tip.ToolTip.prototype.hide.call(this)}},0,["quicktip"],["component","box","container","panel","tip","tooltip","quicktip"],{component:true,box:true,container:true,panel:true,tip:true,tooltip:true,quicktip: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.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,["component","box","container","panel","window"],{component:true,box:true,container:true,panel:true,window:true},0,0,[Ext.app.bindinspector,"Inspector"],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(b);a.fireEvent("arrowclick",a,b);if(a.arrowHandler){a.arrowHandler.call(a.scope||a,a,b)}}else{a.doToggle();a.fireHandler(b)}}}},0,["splitbutton"],["component","box","button","splitbutton"],{component:true,box:true,button: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(g,a){var e=this,b=e.changeHandler,d=e.forceIcon,c=e.forceGlyph;e.settingActive=true;if(!Ext.isObject(g)){g=e.menu.getComponent(g)}if(g){e.setText(e.getButtonText(g));e.setIconCls(d?d:g.iconCls);e.setGlyph(c?c:g.glyph);e.activeItem=g;if(!g.checked){g.setChecked(true,false)}if(!a){Ext.callback(e.changeHandler,e.scope,[e,g],0,e);e.fireEvent("change",e,g)}}e.settingActive=false},getActiveItem:function(){return this.activeItem},initComponent:function(){var g=this,e=0,b,c,a,d;b=(g.menu.items||[]).concat(g.items||[]);g.menu=Ext.applyIf({cls:"x-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.Split.prototype.initComponent.apply(this,arguments);g.on("click",g.toggleSelected,g);g.setActiveItem(e,true)},checkHandler:function(a,b){if(b&&!this.settingActive){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"],["component","box","button","splitbutton","cycle"],{component:true,box:true,button:true,splitbutton:true,cycle: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},defaultBindProperty:"value",publishes:["value"],twoWayBindable:["value"],layout:"segmentedbutton",defaultType:"button",maskOnDisable:false,isSegmentedButton:true,baseCls:"x-segmented-button",itemCls:"x-segmented-button-item",_firstCls:"x-segmented-button-first",_lastCls:"x-segmented-button-last",_middleCls:"x-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.call(this,c)},onRemove:function(b){var a=this;b.removeCls(a.itemCls+a._getClsSuffix());a._syncItemClasses();Ext.container.Container.prototype.onRemove.call(this,b)},beforeLayout:function(){if(Ext.isChrome){this.el.dom.offsetWidth}Ext.container.Container.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"],["component","box","container","segmentedbutton"],{component:true,box: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:"x-table-layout-ct",tableCls:"x-table-layout",cellCls:"x-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:"x-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.panel.Panel.prototype.onBeforeAdd.apply(this,arguments)},privates:{applyDefaults:function(a){if(!Ext.isString(a)){a=Ext.panel.Panel.prototype.applyDefaults.apply(this,arguments)}return a}}},0,["buttongroup"],["component","box","container","panel","buttongroup"],{component:true,box:true,container:true,panel:true,buttongroup: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,responsiveFormulas:b.responsiveFormulas},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(c){var b=Ext.mixin.Responsive.prototype.transformInstanceConfig.call(this,c);if(b.ptype){b=Ext.apply({},b);delete b.ptype}this.transformed=b;var a=Ext.apply({},c);delete a.ptype;delete a.responsiveConfig;delete a.responsiveFormulas;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.decorate(a);if(a.renderConfigs){a.flushRenderConfigs()}a.setupViewport()}},statics:{decorate:function(a){Ext.applyIf(a.prototype||a,{ariaRole:"application",viewportCls:"x-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 c=this,b=c.el=Ext.getBody();Ext.getScrollbarSize();c.width=c.height=undefined;Ext.fly(document.documentElement).addCls(c.viewportCls);b.setHeight=b.setWidth=Ext.emptyFn;b.dom.scroll="no";c.allowDomMove=false;c.renderTo=c.el;if(Ext.supports.Touch){c.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 d=this,b=Ext.rootInheritedState,c;for(c in b){if(c!=="rtl"){delete b[c]}}d.removeUIFromElement();d.el.removeCls(d.baseCls);Ext.fly(document.body.parentNode).removeCls(d.viewportCls);d.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)},disableTabbing:function(){var b=this.el;if(b){b.saveChildrenTabbableState()}},enableTabbing:function(){var b=this.el;if(b){b.restoreChildrenTabbableState()}},getOverflowEl:function(){return Ext.get(document.documentElement)}}})}},privates:{updateResponsiveState:function(){this.cmp.handleViewportResize();Ext.plugin.Responsive.prototype.updateResponsiveState.call(this)}}},0,0,0,0,["plugin.viewport"],0,[Ext.plugin,"Viewport"],function(a){a.prototype.decorate=a.decorate}));(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"],["component","box","container","viewport"],{component:true,box: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.decorate(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.Auto.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:"x-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,loadMessage:"Loading...",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.panel.Panel.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.panel.Panel.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"],["component","box","container","panel","dashboard-panel"],{component:true,box:true,container:true,panel:true,"dashboard-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:"x-dashboard-column",synthetic:true,onRemove:function(c,g){var h=this,e=h.ownerCt,d,a,j=0,b;if(e&&h.items.getCount()===0){d=Ext.Array.filter(e.query(">"+h.xtype+"[rowIndex="+h.rowIndex+"]"),function(k){return k!==h});a=d.length;if(!h.destroying&&!h.isDestroyed){e.remove(h);if(a===1){d[0].columnWidth=1}else{for(b=0;b<a;b++){j+=d[b].columnWidth||0}for(b=0;b<a;b++){d[b].columnWidth=d[b].columnWidth/j}}if(g){e.updateLayout()}}}}},0,["dashboard-column"],["component","box","container","dashboard-column"],{component:true,box: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:"x-column",targetCls:"x-column-layout-ct",columnWidthSizePolicy:{readsWidth:0,readsHeight:1,setsWidth:1,setsHeight:0},createsInnerCt:true,manageOverflow:true,setsItemSize:true,needsItemSize: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:"x-resizable-overlay",createDragOverlay:function(){var a,b=Ext.dom.Element;a=this.overlay=Ext.getBody().createChild({role:"presentation",cls:this.overlayCls,html:"&#160;"});a.unselectable();a.setSize(b.getDocumentWidth(),b.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===c.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,{onStart:function(a){Ext.apply(this.getSplitter().el.dom.style,{top:0,left:0});Ext.resizer.SplitterTracker.prototype.onStart.apply(this,arguments)},endDrag:function(){var a=this;Ext.resizer.SplitterTracker.prototype.endDrag.apply(this,arguments);a.getSplitter().el.dom.style.left=0},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}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"],["component","box","splitter","columnsplitter"],{component:true,box:true,splitter:true,columnsplitter:true},["widget.columnsplitter"],0,[Ext.layout.container,"ColumnSplitter"],0));(Ext.cmd.derive("Ext.layout.container.Dashboard",Ext.layout.container.Column,{type:"dashboard",firstColumnCls:"x-dashboard-column-first",lastColumnCls:"x-dashboard-column-last",getSplitterConfig:function(){return{xtype:"columnsplitter"}},getColumns:function(a){var b=Ext.Array;return b.filter(b.from(a),function(c){return c.target&&c.target.isSplitter!==true})},beginLayout:function(e){var n=this;Ext.layout.container.Column.prototype.beginLayout.call(this,e);var k=e.childItems,q=(e.rows=[]),d=k.length,l=2,h=0,r=0,p=n.owner.getMaxColumns(),c,j,g,o,a,m,b;for(j=0;j<d;++j){m=(c=k[j]).target;a=m&&m.isSplitter;h+=(a?0:1);b=a?0:m.columnWidth||1;if(l+b>1||(p&&(h>p))){if(g){g.orphan=1;g.el.setHeight(0)}l=0;h=1;if(q.length){r=q.length-1;n.syncFirstLast(n.getColumns(q[r].items))}q.push(o={index:q.length,items:[],maxHeight:0})}l+=b;o.items.push(c);c.row=o;m.rowIndex=o.index;if(a){c.el.setHeight(1)}g=c}if(q.length){n.syncFirstLast(n.getColumns(q[q.length-1].items))}},beforeLayoutCycle:function(c){var b=this,a=b.owner.items;if(b.splitterGen!==a.generation){b.syncSplitters();b.splitterGen=a.generation}Ext.layout.container.Column.prototype.beforeLayoutCycle.apply(this,arguments)},finishedLayout:function(e){var b=e.childItems,a=b.length,d,j,c,g,h;Ext.layout.container.Column.prototype.finishedLayout.call(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);g.width=d.width}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(e){var g=this,b=g.firstColumnCls,j=g.lastColumnCls,d,a=[b,j],c,k,h;e=Ext.Array.from(e);d=e.length;for(c=0;c<d;++c){k=e[c].target;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.dashboard"],0,[Ext.layout.container,"Dashboard"],0));(Ext.cmd.derive("Ext.dashboard.DropZone",Ext.dd.DropTarget,{ddScrollConfig:{vthresh:50,hthresh:-1,animate:true,increment:200},containerScroll:true,overClass:"x-dashboard-dd-over",constructor:function(b,a){this.dashboard=b;b.body.ddScrollConfig=this.ddScrollConfig;Ext.dd.DropTarget.prototype.constructor.call(this,b.body,a)},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:null,dashboard:o,above:null,extensible:false,beforeAfter:0,data:B,panel:B.panel,rawEvent:u,source:z,status:this.dropAllowed},m,A,r,p,v,l,s,a,g;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(u.within(v.el)){q.columnIndex=r;q.column=v;q.extensible=this.isRowExtensible(v.rowIndex);m=Math.min(80,l*0.2);q.beforeAfter=m=(q.extensible&&((j<m)?-1:((j>l-m)?1:0)));if(!m||!q.extensible){a=v.items.items;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(q,j,h){var n=this,o=n.dashboard,k=n.getOverEvent(q,j,h),c=k.column&&k.column.el,m=q.proxy,b,d=k.above,g,a=0,p,l=o.hasListeners;h.lastOver=k;if((!l.validatedrop||o.fireEvent("validatedrop",k)!==false)&&(!l.beforedragover||o.fireEvent("beforedragover",k)!==false)){b=q.panelProxy.getProxy();m.getProxy().setWidth("auto");if(c){a=g=c.getWidth();if(k.beforeAfter){q.panelProxy.moveProxy(c.dom,c.dom.firstChild);a=g/2;b.setWidth(a)}else{if(d){q.panelProxy.moveProxy(d.el.dom.parentNode,d.el.dom)}else{q.panelProxy.moveProxy(c.dom,null)}b.setWidth("auto")}if(a){}b.setStyle({"float":"none",clear:"none","margin-left":(k.beforeAfter>0)?(g-a-c.getPadding("lr"))+"px":"","margin-top":"7px"})}else{p=o.body.getPadding("lr");b.setStyle({"float":"left",clear:"left",margin:"0 7px 0 7px"});b.setWidth(o.body.getWidth()-p);q.panelProxy.moveProxy(o.body.dom.firstChild.firstChild,null)}this.scrollPos=o.body.getScroll();if(l.dragover){o.fireEvent("dragover",k)}}return k.status},isRowExtensible:function(d){var c=this,b=c.dashboard,a=b.getMaxColumns()||1;return Ext.Array.from(b.query(">dashboard-column[rowIndex="+d+"]")).length<a},notifyDrop:function(q,h,c){Ext.dd.DropTarget.prototype.notifyDrop.apply(this,arguments);var m=this.dashboard,j=c.lastOver,a=j.panel,n=a.ownerCt,d=j.column,l=d?j.beforeAfter:1,g=n.items.indexOf(a),p=d?(j.above?d.items.indexOf(j.above):d.items.getCount()):0,o,b,k=m.hasListeners;if(n===d){if(n.items.getCount()===1){return}if(!l){if(g<p){--p}if(g===p){return}}}if((k.validatedrop&&m.fireEvent("validatedrop",j)===false)||(k.beforedrop&&m.fireEvent("beforedrop",j)===false)){return}Ext.suspendLayouts();a.isMoving=true;if(l){o=m.items.indexOf(d);if(o<0){o=m.items.getCount()}else{if(l>0){++o}}b=m.createColumn();if(d){b.columnWidth=d.columnWidth=d.columnWidth/2;delete d.width}else{b.columnWidth=1}d=m.insert(o,b);p=0}a.el.dom.style.display="";d.insert(p,a);a.isMoving=false;d.updateLayout();Ext.resumeLayouts(true);if(k.drop){m.fireEvent("drop",j)}}},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:"x-dashboard",bodyCls:"x-dashboard-body",defaultType:"dashboard-column",scrollable:true,layout:null,stateful:false,idSeed:1,config:{parts:null},renderConfig:{maxColumns:4},initComponent:function(){var a=this;if(!a.layout){a.layout={type:"dashboard"}}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(c,b,e){var d=this,a=d.getPart(c);a.displayForm(null,null,function(g){g.type=c;d.addView(g,b,e)})},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(!c){b=h.add(0,h.createColumn({columnWidth:1}));c=1;a=h.columnWidths=[]}if(d>=c){d=c-1;j=1}if(!j){b=g.getAt(d);if(b){return b.add(k)}}if(j>0){++d}b=h.createColumn();if(a){b.columnWidth=a[d]||(a[d]=1)}if(!b.items){b.items=[]}b.items.push(k);b=h.add(d,b);return b.items.first()},createColumn:function(a){var b=this.cycleLayout;return Ext.apply({items:[],bubbleEvents:["add","remove","childmove","resize"],listeners:{remove:this.onRemoveItem,expand:b,collapse:b,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++)}a.bubbleEvents=Ext.Array.from(a.bubbleEvents).concat(["expand","collapse"]);a.stateful=e.stateful;return a},initEvents:function(){Ext.panel.Panel.prototype.initEvents.call(this);this.dd=new Ext.dashboard.DropZone(this,this.dropConfig)},cycleLayout:function(){this.updateLayout()},beforeDestroy:function(){if(this.dd){Ext.destroy(this.dd)}Ext.panel.Panel.prototype.beforeDestroy.call(this)},applyState:function(g){delete g.items;var e=this;Ext.panel.Panel.prototype.applyState.call(this,g);var b=g.columnWidths,a=e.items.items,d=a.length,c,h;if(b){h=b.length;e.columnWidths=[];for(c=0;c<d;++c){e.columnWidths.push(a[c].columnWidth=(c<h)?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();g.columnWidths=b;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(g){var k=this,c=g.length,e=[],a=k.columnWidths,n=k.getMaxColumns(),d,j,b,h,m,l;for(h=0;h<c;++h){l=g[h];j=Math.min(l.columnIndex||0,n-1);delete l.columnIndex;if(!(d=e[j])){e[j]=d=k.createColumn();b=a&&a[j];if(b){d.columnWidth=b}}m=k.createView(l);d.items.push(m)}for(h=0,c=e.length;h<c;++h){d=e[h];if(!d.columnWidth){d.columnWidth=1/c}}return e},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.stateful&&!b.isMoving){Ext.state.Manager.clear(b.getStateId())}}},0,["dashboard"],["component","box","container","panel","dashboard"],{component:true,box:true,container:true,panel:true,dashboard:true},["widget.dashboard"],0,[Ext.dashboard,"Dashboard"],0));(Ext.cmd.derive("Ext.dom.Layer",Ext.Element,{alternateClassName:"Ext.Layer",isLayer:true,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,n="x-"+(c.fixed?"fixed-layer":"layer"),d,b,e,m;if(h){d=Ext.getDom(h);if(!d.parentNode){g.appendChild(d)}}if(!d){d=k.append(g,c.dh||{tag:"div",cls:n})}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.call(this,d);if(h){l.addCls(n)}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;m={offset:l.shadowOffset,fixed:c.fixed};if(c.shadow!==true){m.mode=c.shadow}l.enableShadow(m)}else{l.shadowOffset=0}if(c.shim){l.enableShim({fixed:c.fixed})}if(c.hidden===true){l.hide()}else{if(c.hidden===false){l.show()}}}},1,0,0,0,0,0,[Ext.dom,"Layer",Ext,"Layer"],0));(Ext.cmd.derive("Ext.event.publisher.MouseEnterLeave",Ext.event.publisher.Dom,{type:"mouseEnterLeave"},0,0,0,0,0,0,[Ext.event.publisher,"MouseEnterLeave"],function(a){var b={mouseover:"mouseenter",mouseout:"mouseleave"};if(!Ext.supports.MouseEnterLeave){a.override({handledDomEvents:["mouseover","mouseout"],handledEvents:["mouseenter","mouseleave"],doDelegatedEvent:function(k){var j,c,l,g,d,h;k=this.callParent([k]);j=k.getTarget();c=k.getRelatedTarget();if(c&&Ext.fly(j).contains(c)){return}l=j.id;if(l){g=Ext.cache[l];if(g){d=b[k.type];k=k.chain({type:d});if(g.hasListeners[d]){h=g.events[d];if(h){h=h.directs;if(h){k.setCurrentTarget(g.dom);h.fire(k,k.target)}}}}}}})}a.instance=new a()}));(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.Component.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.Component.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"],["component","box","flash"],{component:true,box: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){var c=this.form,b=c&&!c.destroying&&!c.isDestroyed;this.response=a;this.failureType=Ext.form.action.Action.CONNECT_FAILURE;if(b){c.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),d=this.form,c=d&&!d.destroying&&!d.isDestroyed;if(a===true||!a.success||!a.data){this.failureType=Ext.form.action.Action.LOAD_FAILURE;if(c){d.afterAction(this,false)}return}if(c){d.clearInvalid();d.setValues(a.data);d.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?(Ext.isString(k.target)?k.target:Ext.fly(k.target).dom.name):"_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 d=this.form,c=d&&!d.destroying&&!d.isDestroyed,e=true,a=this.processResponse(b);if(a!==true&&!a.success){if(a.errors&&c){d.markInvalid(a.errors)}this.failureType=Ext.form.action.Action.SERVER_INVALID;e=false}if(c){d.afterAction(this,e)}},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 != null"> 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,returnRe:/\r/g,inputCls:"x-form-textarea",extraFieldBodyCls:"x-form-textarea-body",getSubTplData:function(b){var d=this,c=d.getFieldStyle(),a=Ext.form.field.Text.prototype.getSubTplData.apply(this,arguments);if(d.grow){if(d.preventScrollbars){a.fieldStyle=(c||"")+";overflow:hidden;height:"+d.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.Text.prototype.getValue.call(this))},valueToRaw:function(a){a=this.stripReturns(a);return Ext.form.field.Text.prototype.valueToRaw.call(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&&d.getSizeModel().height.auto){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.form.field.Text.prototype.beforeDestroy.call(this)}},0,["textarea","textareafield"],["component","box","field","textfield","textareafield","textarea"],{component:true,box:true,field:true,textfield:true,textareafield:true,textarea: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:"x-message-box-info",WARNING:"x-message-box-warning",QUESTION:"x-message-box-question",ERROR:"x-message-box-error",hideMode:"offsets",closeAction:"hide",resizable:false,scrollable:true,title:"&#160;",defaultMinWidth:250,defaultMaxWidth:600,defaultMinHeight:110,defaultMaxHeight:500,minWidth:null,maxWidth:null,minHeight:null,maxHeight:null,constrain:true,cls:["x-message-box","x-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:"x-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,c){var b=this,d,e;if(c&&c.type==="keydown"&&!c.isSpecialKey()){c.getTarget(null,null,true).on({keyup:function(g){b.btnCallback(a,g)},single:true});return}if(b.cfg.prompt||b.cfg.multiline){if(b.cfg.multiline){e=b.textArea}else{e=b.textField}d=e.getValue();e.reset()}b.hide();b.userCallback(a.itemId,d,b.cfg)},hide:function(){var b=this,a=b.cfg?b.cfg.cls:"";b.progressBar.reset();if(a){b.removeCls(a)}Ext.window.Window.prototype.hide.apply(this,arguments)},constructor:function(a){var b=this;Ext.window.Window.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.Component({id:b+"-msg",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 r=this,o=0,e=true,s=r.buttonText,d=r.resizer,m=r.header,q=m&&!m.isHeader,c=b&&(b.message||b.msg),t,k,h,n,p,g,a,j,l;r.updateButtonText();r.cfg=b=b||{};if(b.width){k=b.width}if(b.height){h=b.height}r.minWidth=b.minWidth||r.defaultMinWidth;r.maxWidth=b.maxWidth||r.defaultMaxWidth;r.minHeight=b.minHeight||r.defaultMinHeight;r.maxHeight=b.maxHeight||r.defaultMaxHeight;if(d){t=d.resizeTracker;d.minWidth=t.minWidth=r.minWidth;d.maxWidth=t.maxWidth=r.maxWidth;d.minHeight=t.minHeight=r.minHeight;d.maxHeight=t.maxHeight=r.maxHeight}delete r.defaultFocus;if(b.defaultFocus){r.defaultFocus=b.defaultFocus}r.animateTarget=b.animateTarget||undefined;r.modal=b.modal!==false;r.setTitle(b.title||(q&&m.title)||r.title);r.setIconCls(b.iconCls||(q&&m.iconCls)||r.iconCls);if(Ext.isObject(b.buttons)){r.buttonText=b.buttons;o=0}else{r.buttonText=b.buttonText||r.buttonText;o=Ext.isNumber(b.buttons)?b.buttons:0}o=o|r.updateButtonText();r.buttonText=s;Ext.suspendLayouts();r.width=r.height=null;if(k||h){if(k){r.setWidth(k)}if(h){r.setHeight(h)}}r.hidden=false;if(!r.rendered){r.render(Ext.getBody())}r.closable=b.closable!==false&&!b.wait;m=r.header;if(m){m.child("[type=close]").setVisible(r.closable);if(!b.title&&!r.closable&&!b.iconCls){m.hide()}else{m.show()}}r.liveDrag=!b.proxyDrag;r.userCallback=Ext.Function.bindCallback(b.callback||b.fn||Ext.emptyFn,b.scope||Ext.global);r.setIcon(b.icon);a=r.msg;if(c){a.setHtml(c);a.show()}else{a.hide()}p=r.textArea;g=r.textField;if(b.prompt||b.multiline){r.multiline=b.multiline;if(b.multiline){p.setValue(b.value);p.setHeight(b.defaultTextHeight||r.defaultTextHeight);p.show();g.hide();r.defaultFocus=p}else{g.setValue(b.value);p.hide();g.show();r.defaultFocus=g}}else{p.hide();g.hide()}j=r.progressBar;if(b.progress||b.wait){j.show();r.updateProgress(0,b.progressText);if(b.wait===true){j.wait(b.waitConfig)}}else{j.hide()}l=r.msgButtons;for(n=0;n<4;n++){if(o&Math.pow(2,n)){if(!r.defaultFocus){r.defaultFocus=l[n]}l[n].show();e=false}else{l[n].hide()}}if(e){r.bottomTb.hide()}else{r.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.window.Window.prototype.show.call(this);return c},onShow:function(){Ext.window.Window.prototype.onShow.apply(this,arguments);this.center()},updateText:function(a){this.msg.setHtml(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("x-dlg-icon");g.addCls(e.messageIconCls=d)}else{g.removeCls("x-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"],["component","box","container","panel","window","messagebox"],{component:true,box:true,container:true,panel:true,window:true,messagebox:true},["widget.messagebox"],0,[Ext.window,"MessageBox"],function(a){Ext.onReady(function(){Ext.MessageBox=Ext.Msg=new a()})}));(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.fieldMonitors={validitychange:d.checkValidityDelay,enable:d.checkValidityDelay,disable:d.checkValidityDelay,dirtychange:d.checkDirtyDelay,errorchange:d.checkErrorDelay,scope:d};d.checkValidityTask=new Ext.util.DelayedTask(d.checkValidity,d);d.checkDirtyTask=new Ext.util.DelayedTask(d.checkDirty,d);d.checkErrorTask=new Ext.util.DelayedTask(d.checkError,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.checkErrorTask.cancel();b.checkValidityTask=b.checkDirtyTask=b.checkErrorTask=null;b.isDestroyed=true},onFieldAdd:function(a){a.on(this.fieldMonitors);this.onMonitorInvalidate()},onFieldRemove:function(a){a.un(this.fieldMonitors);this.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()}},checkError:function(){this.fireEvent("errorchange",this)},checkErrorDelay:function(){var a=this.taskDelay;if(a){this.checkErrorTask.delay(a)}else{this.checkError()}},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="x-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"},before:{destroy:"onBeforeDestroy"}},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,onBeforeDestroy:function(){this.monitor.unbind()}},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.containerEl;Ext.layout.component.Auto.prototype.beginLayout.apply(this,arguments);b.hasRawContent=true;a.setStyle("width","");a.setStyle("height","");b.containerElContext=b.getEl("containerEl")},measureContentHeight:function(a){return a.hasDomProp("containerLayoutDone")?Ext.layout.component.Auto.prototype.measureContentHeight.apply(this,arguments):NaN},measureContentWidth:function(a){return a.hasDomProp("containerLayoutDone")?Ext.layout.component.Auto.prototype.measureContentWidth.apply(this,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)},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)}},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:"x-form-fieldcontainer",shrinkWrap:true,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.container.Container.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(b){var d=this,a=d.getTpl("fieldSubTpl"),c;if(!a.renderContent){d.setupRenderTpl(a)}c=a.apply(d.getSubTplData(b));return c},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 Ext.container.Container.prototype.initRenderTpl.call(this)}}},0,["fieldcontainer"],["component","box","container","fieldcontainer"],{component:true,box: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="x-table-plain" 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.container.Container.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:"x-form-check-group",extraFieldBodyCls:"x-form-checkboxgroup-body",layout:"checkboxgroup",componentCls:"x-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(){Ext.suspendLayouts();for(a=0;a<k;a++){e=d[a];c=e.getName();j=false;if(h){if(Ext.isArray(h[c])){j=Ext.Array.contains(h[c],e.inputValue)}else{j=h[c]}}e.setValue(j)}Ext.resumeLayouts(true)});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"],["component","box","container","fieldcontainer","checkboxgroup"],{component:true,box:true,container:true,fieldcontainer:true,checkboxgroup: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,{focusable:true,checkboxUI:"default",collapsed:false,toggleOnTitleClick:true,baseCls:"x-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.container.Container.prototype.initRenderData.call(this);b.bodyTargetCls=a.bodyTargetCls;a.protoBody.writeTo(b);delete a.protoBody;return b},getState:function(){var a=Ext.container.Container.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;Ext.container.Container.prototype.finishRender.call(this);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){Ext.container.Container.prototype.setupRenderTpl.apply(this,arguments);a.renderLegend=this.doRenderLegend}}},0,["fieldset"],["component","box","container","fieldset"],{component:true,box: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.Component.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"],["component","box","label"],{component:true,box: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.panel.Panel.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"],["component","box","container","panel","form"],{component:true,box:true,container:true,panel:true,form: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",tabIndex:0,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.form.field.Checkbox.prototype.onRemoved.apply(this,arguments);this.formId=null},setValue:function(c){var b=this,a,d;if(Ext.isBoolean(c)){Ext.form.field.Checkbox.prototype.setValue.apply(this,arguments)}else{d=b.getManager().getWithValue(b.name,c,b.getFormId()).getAt(0);if(d){d.setValue(true)}}return b},getSubmitValue:function(){return this.checked?this.inputValue:null},getModelData:function(){var a=Ext.form.field.Checkbox.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"],["component","box","field","checkboxfield","checkbox","radiofield","radio"],{component:true,box:true,field:true,checkboxfield:true,checkbox:true,radiofield:true,radio: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:"x-form-radio-group",ariaRole:"radiogroup",getBoxes:function(b,a){return(a||this).query("[isRadio]"+(b||""))},checkChange:function(){var b=this.getValue(),a=Ext.Object.getKeys(b)[0];if(Ext.isArray(b[a])){return}Ext.form.CheckboxGroup.prototype.checkChange.apply(this,arguments)},setValue:function(d){var j,g,e,h,c,a,b;if(Ext.isObject(d)){Ext.suspendLayouts();g=this.items.first();e=g?g.getFormId():null;for(b in d){j=d[b];h=Ext.form.RadioManager.getWithValue(b,j,e).items;a=h.length;for(c=0;c<a;++c){h[c].setValue(true)}}Ext.resumeLayouts(true)}return this},privates:{getFocusables:function(){return this.getBoxes()},initDefaultFocusable:function(a){var d=this,c,b;c=d.getChecked();if(c.length){b=c[0]}else{b=d.findNextFocusableChild(null,true,null,a)}if(b){d.activateFocusable(b)}return b},onFocusableContainerFocusLeave:function(){this.clearFocusables();this.initDefaultFocusable()},doFocusableChildAdd:function(g){var e=this,b=e.mixins.focusablecontainer,d,c,a;d=g.isContainer?e.getBoxes("",g):[g];for(c=0,a=d.length;c<a;c++){b.doFocusableChildAdd.call(e,d[c])}},doFocusableChildRemove:function(g){var e=this,b=e.mixins.focusablecontainer,d,c,a;d=g.isContainer?e.getBoxes("",g):[g];for(c=0,a=d.length;c<a;c++){b.doFocusableChildRemove.call(e,d[c])}},focusChild:function(c,b,d){var a=this.mixins.focusablecontainer.focusChild.apply(this,arguments);if(!d.ctrlKey){a.setValue(true)}}}},0,["radiogroup"],["component","box","container","fieldcontainer","checkboxgroup","radiogroup"],{component:true,box:true,container:true,fieldcontainer:true,checkboxgroup:true,radiogroup:true},["widget.radiogroup"],[[Ext.util.FocusableContainer.prototype.mixinId||Ext.util.FocusableContainer.$className,Ext.util.FocusableContainer]],[Ext.form,"RadioGroup"],0));(Ext.cmd.derive("Ext.form.action.DirectAction",Ext.Mixin,{mixinConfig:{id:"directaction"},resolveMethod:function(c){var e=this,d=e.form,b=d.api,a;a=b[c];if(typeof a!=="function"){b[c]=a=Ext.direct.Manager.parseMethod(a)}return a}},0,0,0,0,0,0,[Ext.form.action,"DirectAction"],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,b=e.metadata||d.metadata,g=e.timeout||d.timeout,a,c;c=e.resolveMethod("load");a=c.directCfg.method.getArgs({params:e.getParams(),paramOrder:d.paramOrder,paramsAsHash:d.paramsAsHash,options:g!=null?{timeout:g*1000}:null,metadata:b,callback:e.onComplete,scope:e});c.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"],[[Ext.form.action.DirectAction.prototype.mixinId||Ext.form.action.DirectAction.$className,Ext.form.action.DirectAction]],[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,b=e.metadata||d.metadata,g=e.timeout||d.timeout,c,h,a;c=e.resolveMethod("submit");h=e.buildForm();a=c.directCfg.method.getArgs({params:h.formEl,options:g!=null?{timeout:g*1000}:null,metadata:b,callback:e.onComplete,scope:e});c.apply(window,a);e.cleanup(h)},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"],[[Ext.form.action.DirectAction.prototype.mixinId||Ext.form.action.DirectAction.$className,Ext.form.action.DirectAction]],[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"}}},isPickerField:true,matchFieldWidth:true,pickerAlign:"tl-bl?",openCls:"x-pickerfield-open",isExpanded:false,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.call(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(a){if(!this.isExpanded){a.stopEvent();this.onTriggerClick()}},expand:function(){var c=this,a,b,d,e;if(c.rendered&&!c.isExpanded&&!c.isDestroyed){a=c.bodyEl;b=c.getPicker();d=Ext.getDoc();e=c.collapseIf;b.setMaxHeight(b.initialConfig.maxHeight);if(c.matchFieldWidth){b.width=c.bodyEl.getWidth()}b.show();c.isExpanded=true;c.alignPicker();a.addCls(c.openCls);c.hideListeners=d.on({mousewheel:c.collapseIf,touchstart:c.collapseIf,scope:c,delegated:false,destroyable:true});Ext.on("resize",c.alignPicker,c);c.fireEvent("expand",c);c.onExpand()}},onExpand:Ext.emptyFn,alignPicker:function(){var b=this,a=b.getPicker();if(a.isVisible()){if(a.isFloating()){b.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,a="-above";b.hide();d.isExpanded=false;d.bodyEl.removeCls([c,c+a]);b.el.removeCls(b.baseCls+a);d.hideListeners.destroy();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)&&!Ext.fly(b.target).isFocusable()){a.collapse()}},getPicker:function(){var b=this,a=b.picker;if(!a){b.picker=a=b.createPicker();a.ownerCmp=b}return b.picker},onFocusLeave:function(b){var a=this;a.collapse();Ext.form.field.Text.prototype.onFocusLeave.call(this,b)},getRefItems:function(){var a=[];if(this.picker){a[0]=this.picker}return a},createPicker:Ext.emptyFn,onTriggerClick:function(b){var a=this;if(!a.readOnly&&!a.disabled){if(a.isExpanded){a.collapse()}else{a.expand()}}},beforeDestroy:function(){var b=this,a=b.picker;Ext.form.field.Text.prototype.beforeDestroy.call(this);Ext.un("resize",b.alignPicker,b);Ext.destroy(b.keyNav,a);if(a){b.picker=a.pickerField=null}}},0,["pickerfield"],["component","box","field","textfield","pickerfield"],{component:true,box:true,field:true,textfield:true,pickerfield:true},["widget.pickerfield"],0,[Ext.form.field,"Picker",Ext.form,"Picker"],0));(Ext.cmd.derive("Ext.view.BoundListKeyNav",Ext.view.NavigationModel,{navigateOnSpace:true,initKeyNav:function(a){var b=this,c=a.pickerField;if(!b.keyNav){Ext.view.NavigationModel.prototype.initKeyNav.call(this,a)}if(!c){return}if(!c.rendered){c.on("render",Ext.Function.bind(b.initKeyNav,b,[a],0),b,{single:true});return}b.fieldKeyNav=new Ext.util.KeyNav({disabled:true,target:c.inputEl,forceKeyDown:true,up:b.onKeyUp,down:b.onKeyDown,right:b.onKeyRight,left:b.onKeyLeft,pageDown:b.onKeyPageDown,pageUp:b.onKeyPageUp,home:b.onKeyHome,end:b.onKeyEnd,tab:b.onKeyTab,space:b.onKeySpace,enter:b.onKeyEnter,A:{ctrl:true,handler:b.onSelectAllKeyPress},scope:b})},enable:function(){this.fieldKeyNav.enable();Ext.view.NavigationModel.prototype.enable.call(this)},disable:function(){this.fieldKeyNav.disable();Ext.view.NavigationModel.prototype.disable.call(this)},onItemMouseDown:function(b,a,e,c,d){Ext.view.NavigationModel.prototype.onItemMouseDown.call(this,b,a,e,c,d);d.preventDefault()},onKeyUp:function(){var e=this,b=e.view,d=b.all,g=b.highlightedItem,c=g?b.indexOf(g):-1,a=c>0?c-1:d.getCount()-1;e.setPosition(a)},onKeyDown:function(){var e=this,b=e.view,d=b.all,g=b.highlightedItem,c=g?b.indexOf(g):-1,a=c<d.getCount()-1?c+1:0;e.setPosition(a)},onKeyLeft:Ext.returnTrue,onKeyRight:Ext.returnTrue,onKeyTab:function(c){var a=this.view,b=a.pickerField;if(a.isVisible()){if(b.selectOnTab){this.selectHighlighted(c)}if(b.collapse){b.collapse()}}return true},onKeyEnter:function(g){var a=this.view,b=a.getSelectionModel(),d=a.pickerField,c=b.getCount();g.stopEvent();this.selectHighlighted(g);if(!d.multiSelect&&c===b.getCount()&&d.collapse){d.collapse()}},onKeySpace:function(){if(this.navigateOnSpace){Ext.view.NavigationModel.prototype.onKeySpace.apply(this,arguments)}return true},focusItem:function(c){var b=this,a=b.view;if(typeof c==="number"){c=a.all.item(c)}if(c){c=c.dom;a.highlightItem(c);a.getOverflowEl().scrollChildIntoView(c,false)}},selectHighlighted:function(h){var g=this,b=g.view,a=b.getSelectionModel(),c,d=g.recordIndex;if(b.all.getCount()){c=g.getRecord();if(c){if(h.getKey()===h.ENTER||!a.isSelected(c)){a.selectWithEvent(c,h);if(!b.store.data.contains(c)){g.setPosition(Math.min(d,b.store.getCount()-1))}}}}},destroy:function(){Ext.destroy(this.fieldKeyNav);Ext.view.NavigationModel.prototype.destroy.call(this)}},0,0,0,0,["view.navigation.boundlist"],0,[Ext.view,"BoundListKeyNav"],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.component.Auto.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.Auto.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.Item",Ext.Component,{alternateClassName:"Ext.Toolbar.Item",enable:Ext.emptyFn,disable:Ext.emptyFn,focus:Ext.emptyFn},0,["tbitem"],["component","box","tbitem"],{component:true,box:true,tbitem:true},["widget.tbitem"],0,[Ext.toolbar,"Item",Ext.Toolbar,"Item"],0));(Ext.cmd.derive("Ext.toolbar.TextItem",Ext.toolbar.Item,{alternateClassName:"Ext.Toolbar.TextItem",text:"",baseCls:"x-toolbar-text",ariaRole:null,beforeRender:function(){var a=this.text;Ext.toolbar.Item.prototype.beforeRender.call(this);if(a){this.html=a}},setText:function(a){this.update(a)}},0,["tbtext"],["component","box","tbitem","tbtext"],{component:true,box: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:"x-form-trigger-spinner",spinnerCls:"x-form-spinner",spinnerUpCls:"x-form-spinner-up",spinnerDownCls:"x-form-spinner-down",focusCls:"x-form-spinner-focus",overCls:"x-form-spinner-over",clickCls:"x-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>',destroy:function(){var a=this;if(a.spinnerEl){a.spinnerEl.destroy();a.spinnerEl=a.upEl=a.downEl=null}Ext.form.trigger.Trigger.prototype.destroy.call(this)},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.call(this,b)},onRender:function(){var b=this,a=b.getTrigger("spinner");(arguments.callee.$previous||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"],["component","box","field","textfield","spinnerfield"],{component:true,box:true,field:true,textfield:true,spinnerfield: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.Spinner.prototype.initComponent.call(this);a.setMinValue(a.minValue);a.setMaxValue(a.maxValue)},getErrors:function(c){c=arguments.length>0?c:this.processRawValue(this.getRawValue());var b=this,e=Ext.form.field.Spinner.prototype.getErrors.call(this,c),d=Ext.String.format,a;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.Spinner.prototype.getSubmitValue.call(this);if(!a.submitLocaleSeparator){b=b.replace(a.decimalSeparator,".")}return b},onChange:function(){this.toggleSpinners();Ext.form.field.Spinner.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))},onBlur:function(c){var b=this,a=b.rawToValue(b.getRawValue());if(!Ext.isEmpty(a)){b.setValue(a)}Ext.form.field.Spinner.prototype.onBlur.call(this,c)},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(b){var a=this;if(a.enforceMaxLength){if(a.fixPrecision(b).toString().length>a.maxLength){return}}a.setValue(b)}},0,["numberfield"],["component","box","field","textfield","spinnerfield","numberfield"],{component:true,box:true,field:true,textfield:true,spinnerfield:true,numberfield: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,emptyPageData:{total:0,currentPage:0,pageCount:0,toRecord:0,fromRecord:0},defaultBindProperty:"store",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:"x-tbar-page-first",disabled:true,handler:b.moveFirst,scope:b},{itemId:"prev",tooltip:b.prevText,overflowText:b.prevText,iconCls:"x-tbar-page-prev",disabled:true,handler:b.movePrevious,scope:b},"-",b.beforePageText,{xtype:"numberfield",itemId:"inputItem",name:"inputItem",cls:"x-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:"x-tbar-page-next",disabled:true,handler:b.moveNext,scope:b},{itemId:"last",tooltip:b.lastText,overflowText:b.lastText,iconCls:"x-tbar-page-last",disabled:true,handler:b.moveLast,scope:b},"-",{itemId:"refresh",tooltip:b.refreshText,overflowText:b.refreshText,iconCls:"x-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(){Ext.toolbar.Toolbar.prototype.beforeRender.apply(this,arguments);this.updateBarInfo()},updateBarInfo:function(){var a=this;if(!a.store.isLoading()){a.calledInternal=true;a.onLoad();a.calledInternal=false}},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.calledInternal){h.fireEvent("change",h,d||h.emptyPageData)}},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}},onBindStore:function(){if(this.rendered){this.updateBarInfo()}},onDestroy:function(){this.bindStore(null);Ext.toolbar.Toolbar.prototype.onDestroy.call(this)}},0,["pagingtoolbar"],["component","box","container","toolbar","pagingtoolbar"],{component:true,box:true,container:true,toolbar:true,pagingtoolbar: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:"x-boundlist",itemCls:"x-boundlist-item",listItemCls:"",shadow:false,trackOver:true,preserveScrollOnRefresh:true,enableInitialSelection:false,refreshSelmodelOnRefresh:true,componentLayout:"boundlist",navigationModel:"boundlist",scrollable: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="x-list-plain">',"</ul>","</div>","{%","var pagingToolbar=values.$comp.pagingToolbar;","if (pagingToolbar) {","Ext.DomHelper.generateMarkup(pagingToolbar.getRenderTree(), out);","}","%}",{disableFormats:true}],focusOnToFront:false,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.x-list-plain";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.View.prototype.initComponent.call(this)},getRefOwner:function(){return this.pickerField||Ext.view.View.prototype.getRefOwner.call(this)},getRefItems:function(){var a=Ext.view.View.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+"}"},onShow:function(){Ext.view.View.prototype.onShow.call(this);if(Ext.Element.getActiveElement()!==this.pickerField.inputEl.dom){this.focus()}},onHide:function(){var a=this.pickerField.inputEl.dom;if(Ext.Element.getActiveElement()!==a&&Ext.EventObject.pointerType!=="touch"){a.focus()}Ext.view.View.prototype.onHide.apply(this,arguments)},afterComponentLayout:function(d,a,b,e){var c=this.pickerField;Ext.view.View.prototype.afterComponentLayout.apply(this,arguments);if(c&&c.alignPicker){c.alignPicker()}},onItemClick:function(a){var d=this,e=d.pickerField,b=e.valueField,c=d.getSelectionModel().getSelection();if(!e.multiSelect&&c.length){c=c[0];if(c&&e.isEqual(a.get(b),c.get(b))&&e.collapse){e.collapse()}}},onDestroy:function(){Ext.view.View.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;Ext.view.View.prototype.finishRenderChildren.apply(this,arguments);if(a){a.finishRender()}}}},0,["boundlist"],["component","box","dataview","boundlist"],{component:true,box:true,dataview:true,boundlist: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.form.field.ComboBox",Ext.form.field.Picker,{alternateClassName:"Ext.form.ComboBox",config:{filters:null,selection:null,valueNotFoundText:null},publishes:["selection"],twoWayBindable:["selection"],triggerCls:"x-form-arrow-trigger",hiddenName:"",collapseOnSelect:false,hiddenDataCls:"x-hidden-display x-form-data-hidden",ariaRole:"combobox",childEls:{hiddenDataEl:true},filtered:false,afterRender:function(){var a=this;Ext.form.field.Picker.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,getGrowWidth:function(){var d=this,g=d.inputEl.dom.value,e,h,j,c,b,k,a;if(d.growToLongestValue){e=d.displayField;h=d.store;j=h.data.length;c=0;for(b=0;b<j;b++){k=h.getAt(b).data[e];a=k.length;if(a>c){c=a;g=k}}}return g},initComponent:function(){var e=this,c=Ext.isDefined,b=e.store,d=e.transform,h=e.displayTpl,a,g;if("pinList" in e){e.collapseOnSelect=!e.pinList}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);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)}}g=e.queryMode==="local";if(!c(e.queryDelay)){e.queryDelay=g?10:500}if(!c(e.minChars)){e.minChars=g?0:4}Ext.form.field.Picker.prototype.initComponent.call(this);e.doQueryTask=new Ext.util.DelayedTask(e.doRawQuery,e);if(a){if(e.transformInPlace){e.render(a.parentNode,a);delete e.renderTo}Ext.removeNode(a)}},getSubTplMarkup:function(c){var d=this,a="",b=Ext.form.field.Picker.prototype.getSubTplMarkup.apply(this,arguments);if(d.hiddenName){a='<div id="'+c.id+'-hiddenDataEl" data-ref="hiddenDataEl" class="'+d.hiddenDataCls+'" role="presentation"></div>'}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},applyValueNotFoundText:function(a){var b=this,c=b.valueNotFoundRecord||(b.valueNotFoundRecord=new Ext.data.Model());c.set(b.displayField,a);if(b.valueField&&b.displayField!==b.valueField){c.set(b.valueField,a)}return a},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},completeEdit:function(c){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(b){var a=this;Ext.form.field.Picker.prototype.onFocus.call(this,b);if(a.triggerAction!=="all"&&a.queryFilter&&a.queryMode==="local"&&a.clearFilterOnBlur){delete a.lastQuery;a.doRawQuery()}},assertValue:function(){var c=this,d=c.getRawValue(),e,b,a=c.getDisplayValue();if(c.forceSelection){if(c.multiSelect){if(d!==a){c.setRawValue(a)}}else{e=c.findRecordByDisplay(d);if(e){b=c.value;if(!c.findRecordByValue(b)){c.select(e,true)}}else{if(c.lastSelection){c.setRawValue(a)}}}}c.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.Picker.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.changingFilters=true;c.getStore().getFilters().remove(b);c.changingFilters=false}c.pickerSelectionModel.destroy();if(a){a.bindStore(null)}},onBindStore:function(a,c){var e=this,b=e.picker,d,g;if(a){if(a.autoCreated){e.queryMode="local";e.valueField=e.displayField="field1";if(!a.expanded){e.displayField="field2"}}if(!Ext.isDefined(e.valueField)){e.valueField=e.displayField}d={byValue:{rootProperty:"data",unique:false}};d.byValue.property=e.valueField;a.setExtraKeys(d);if(e.displayField===e.valueField){a.byText=a.byValue}else{d.byText={rootProperty:"data",unique:false};d.byText.property=e.displayField;a.setExtraKeys(d)}g={rootProperty:"data",extraKeys:{byInternalId:{property:"internalId"},byValue:{property:"",rootProperty:"data"}},listeners:{beginupdate:e.onValueCollectionBeginUpdate,endupdate:e.onValueCollectionEndUpdate,scope:e}};g.extraKeys.byValue.property=e.valueField;e.valueCollection=new Ext.util.Collection(g);e.pickerSelectionModel=new Ext.selection.DataViewModel({mode:e.multiSelect?"SIMPLE":"SINGLE",enableInitialSelection:false,pruneRemoved:false,selected:e.valueCollection,store:a});if(!c){e.resetToDefault()}if(b){b.setSelectionModel(e.pickerSelectionModel);if(b.getStore()!==a){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{datachanged:a.onDataChanged,load:a.onLoad,exception:a.onException,update:a.onStoreUpdate,remove:a.checkValueOnChange,filterchange:a.checkValueOnChange}},onDataChanged:function(){var a=this;if(a.grow&&a.growToLongestValue){a.autoSize()}},checkValueOnChange:function(){var a=this;if(a.multiSelect){}else{if(a.forceSelection&&!a.changingFilters&&!a.findRecordByValue(a.value)){a.setValue(null)}}},onStoreUpdate:function(b,a){if(a.get(this.valueField)===this.value){this.setValue(a)}},onException:function(){this.collapse()},onLoad:function(b,a,c){if(c&&!(b.lastOptions&&"rawQuery" in b.lastOptions)){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(){var a=this,b=a.inputEl.dom.value;if(a.multiSelect){b=b.split(a.delimiter).pop()}a.doQuery(b,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){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;d.changingFilters=true;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();d.changingFilters=false;if(d.store.getCount()||d.getPicker().emptyText){d.expand()}else{d.collapse()}d.afterQuery(a)},doRemoteQuery:function(b){var c=this,a=function(){if(!c.isDestroyed){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(a.rawQuery){if(b.picker&&!b.picker.getSelectionModel().hasSelection()){b.doAutoSelect()}}else{b.doAutoSelect()}}b.checkChange()},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;if(a&&b.autoSelect&&b.store.getCount()>0){a.getNavigationModel().setPosition(b.picker.getSelectionModel().lastSelected||0)}},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;if(!a.readOnly&&!a.disabled){if(a.isExpanded){a.collapse()}else{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)}}}}},onFieldMutation:function(h){var d=this,b=h.getKey(),c=b===h.BACKSPACE||b===h.DELETE,g=d.inputEl.dom.value,a=g.length;if((g!==d.lastMutatedValue||c)&&b!==h.TAB){d.lastMutatedValue=g;d.lastKey=b;if(a&&(h.type!=="keyup"||(!h.isSpecialKey()||c))){d.doQueryTask.delay(d.queryDelay)}else{if(!a&&(!b||c)){if(!d.multiSelect){d.value=null;d.displayTplData=undefined}d.collapse();if(d.queryFilter){d.changingFilters=true;d.store.removeFilter(d.queryFilter,true);d.changingFilters=false}}Ext.form.field.Picker.prototype.onFieldMutation.call(this,h)}}},onDestroy:function(){var a=this;a.doQueryTask.cancel();if(a.typeAheadTask){a.typeAheadTask.cancel();a.typeAheadTask=null}a.bindStore(null);a.valueCollection=Ext.destroy(a.valueCollection);Ext.form.field.Picker.prototype.onDestroy.call(this)},onAdded:function(){var a=this;Ext.form.field.Picker.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,selectionModel:c.pickerSelectionModel,floating:true,hidden:true,store:c.getPickerStore(),displayField:c.displayField,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)}if(!b.initialConfig.maxHeight){b.on({beforeshow:c.onBeforePickerShow,scope:c})}b.getSelectionModel().on({beforeselect:c.onBeforeSelect,beforedeselect:c.onBeforeDeselect,scope:c});b.getNavigationModel().navigateOnSpace=false;return b},getPickerStore:function(){return this.store},onBeforePickerShow:function(a){var b=this,d=b.getPosition()[1]-Ext.getBody().getScroll().top,c=Ext.Element.getViewportHeight()-d-b.getHeight();a.maxHeight=Math.max(d,c)-5},onBeforeSelect:function(c,a,b){return this.fireEvent("beforeselect",this,a,b)},onBeforeDeselect:function(c,a,b){return this.fireEvent("beforedeselect",this,a,b)},getSelection:function(){var a=this.getPicker().getSelectionModel(),b=a.getSelection();return b.length?a.getLastSelected():null},updateSelection:function(a){var b=this,c;if(!b.ignoreNextSelection){b.ignoreNextSelection=true;c=b.getPicker().getSelectionModel();if(a){c.select(a)}else{c.deselectAll()}b.ignoreNextSelection=false}},updateBindSelection:function(a,c){var d=this,b=null;if(!d.ignoreNextSelection){d.ignoreNextSelection=true;if(c.length){b=a.getLastSelected();d.hasHadSelection=true}if(d.hasHadSelection){d.setSelection(b)}d.ignoreNextSelection=false}},onValueCollectionBeginUpdate:Ext.emptyFn,onValueCollectionEndUpdate:function(){var d=this,c=d.store,e=d.valueCollection.getRange(),b=e[0],a=e.length;d.updateBindSelection(d.pickerSelectionModel,e);if(d.isSelectionUpdating()){return}Ext.suspendLayouts();d.updateValue();if(a&&((!d.multiSelect&&c.contains(b))||d.collapseOnSelect||!c.getCount())){d.updatingValue=true;d.collapse();d.updatingValue=false}Ext.resumeLayouts(true);if(a&&!d.suspendCheckChange){if(!d.multiSelect){e=b}d.fireEvent("select",d,e)}},isSelectionUpdating:function(){var a=this.pickerSelectionModel;return a.deselectingDuringSelect||a.refreshing},onExpand:function(){var a=this.getPicker().getNavigationModel();if(a){a.enable()}},onCollapse:function(){var a=this.getPicker().getNavigationModel();if(a){a.disable()}if(this.updatingValue){this.doQueryTask.cancel()}},select:function(d,a){var c=this,b=c.picker,e;if(d&&d.isModel&&a===true&&b){e=!b.getSelectionModel().isSelected(d)}if(!e){c.suspendEvent("select")}c.setValue(d);c.resumeEvent("select")},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(b){var a=this.store.byValue.get(b);if(a){return a[0]||a}},findRecordByDisplay:function(b){var a=this.store.byText.get(b);if(a){return a[0]||a}},addValue:function(a){return this.doSetValue(a,true)},setValue:function(a){return this.doSetValue(a)},doSetValue:function(p,m){var v=this,g=v.getStore(),j=g.getModel(),s=[],e=[],w,r=v.autoLoadOnValue,d=g.getCount()>0||g.isLoaded(),a=g.hasPendingLoad(),n=r&&!d&&!a,k=v.forceSelection,o=v.pickerSelectionModel,h=v.displayTplData||(v.displayTplData=[]),b=v.displayField===v.valueField,t,u,c,q,l;if(p!=null&&!b&&(a||n||!d||g.isEmptyStore)){if(p.isModel){h.length=0;h.push(p.data);l=v.getDisplayValue()}if(m){v.value=Ext.Array.from(v.value).concat(p)}else{if(p.isModel){p=p.get(v.valueField)}v.value=p}v.setHiddenValue(v.value);v.setRawValue(l||"");if(n&&g.getProxy().isRemote){g.load()}return v}p=m?Ext.Array.from(v.value).concat(p):Ext.Array.from(p);for(t=0,u=p.length;t<u;t++){c=p[t];if(!c||!c.isModel){c=v.findRecordByValue(w=c);if(!c){c=v.valueCollection.find(v.valueField,w)}}if(!c){if(!k){if(!c){q={};q[v.displayField]=p[t];if(v.valueField&&v.displayField!==v.valueField){q[v.valueField]=p[t]}c=new j(q)}}else{if(v.valueNotFoundRecord){c=v.valueNotFoundRecord}}}if(c){s.push(c);e.push(c.get(v.valueField))}}v.lastSelection=s;v.suspendEvent("select");v.valueCollection.beginUpdate();if(s.length){o.select(s,false)}else{o.deselectAll()}v.valueCollection.endUpdate();v.resumeEvent("select");return v},updateValue:function(){var e=this,j=e.valueCollection.getRange(),a=j.length,d=[],g=e.displayTplData||(e.displayTplData=[]),h=e.inputEl,c,b;g.length=0;for(c=0;c<a;c++){b=j[c];g.push(b.data);if(b!==e.valueNotFoundRecord){d.push(b.get(e.valueField))}}e.setHiddenValue(d);e.value=e.multiSelect?d:d[0];if(!Ext.isDefined(e.value)){e.value=undefined}e.displayTplData=g;if(h&&e.emptyText&&!Ext.isEmpty(e.value)){h.removeCls(e.emptyCls)}e.setRawValue(e.getDisplayValue());e.checkChange();e.applyEmptyText()},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){b.displayTplData=undefined;if(a){b.valueCollection.suspendEvents();a.getSelectionModel().deselectAll();b.valueCollection.resumeEvents()}if(b.multiSelect||b.forceSelection){c=b.value=undefined}else{c=b.value=d}}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([])},onEditorTab:function(b){var a=this.getPicker().getNavigationModel();if(this.selectOnTab&&a&&this.isExpanded){a.selectHighlighted(b)}}},0,["combo","combobox"],["component","box","field","textfield","pickerfield","combobox","combo"],{component:true,box:true,field:true,textfield:true,pickerfield:true,combobox:true,combo: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",isMonthPicker:true,focusable:true,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="x-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:"x-monthpicker",showButtons:true,measureWidth:35,measureMaxHeight:20,smallCls:"x-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.Component.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.Component.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;Ext.Component.prototype.finishRenderChildren.apply(this,arguments);if(this.showButtons){a.okBtn.finishRender();a.cancelBtn.finishRender()}}}},0,["monthpicker"],["component","box","monthpicker"],{component:true,box:true,monthpicker:true},["widget.monthpicker"],0,[Ext.picker,"Month",Ext,"MonthPicker"],0));(Ext.cmd.derive("Ext.picker.Date",Ext.Component,{alternateClassName:"Ext.DatePicker",isDatePicker:true,focusable:true,childEls:["innerEl","eventEl","prevEl","nextEl","middleBtnEl","footerEl"],border:true,renderTpl:['<div id="{id}-innerEl" data-ref="innerEl">','<div class="{baseCls}-header">','<div id="{id}-prevEl" data-ref="prevEl" class="{baseCls}-prev {baseCls}-arrow" role="button" title="{prevText}"></div>','<div id="{id}-middleBtnEl" data-ref="middleBtnEl" class="{baseCls}-month" role="heading">{%this.renderMonthBtn(values, out)%}</div>','<div id="{id}-nextEl" data-ref="nextEl" class="{baseCls}-next {baseCls}-arrow" role="button" title="{nextText}"></div>',"</div>",'<table role="grid" id="{id}-eventEl" data-ref="eventEl" class="{baseCls}-inner" {%','if (values.$comp.focusable) {out.push("tabindex=\\"0\\"");}','%} cellspacing="0">','<thead><tr role="row">','<tpl for="dayNames">','<th role="columnheader" class="{parent.baseCls}-column-header" aria-label="{.}">','<div role="presentation" class="{parent.baseCls}-column-header-inner">{.:this.firstInitial}</div>',"</th>","</tpl>","</tr></thead>",'<tbody><tr role="row">','<tpl for="days">',"{#:this.isEndOfWeek}",'<td role="gridcell">','<div hidefocus="on" class="{parent.baseCls}-date"></div>',"</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",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:"x-datepicker",longDayFormat:"F d, Y",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.Component.prototype.getRefOwner.call(this)},getRefItems:function(){var a=[],c=this.monthBtn,b=this.todayBtn;if(c){a.push(c)}if(b){a.push(b)}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.Component.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.Component.prototype.onRender.apply(this,arguments);c.cells=c.eventEl.select("tbody td");c.textNodes=c.eventEl.query("tbody td div");c.eventEl.set({"aria-labelledby":c.monthBtn.id});c.mon(c.eventEl,{scope:c,mousewheel:c.handleMouseWheel,click:{fn:c.handleDateClick,delegate:"div."+c.baseCls+"-date"}})},initEvents:function(){var c=this,d=c.pickerField,a=Ext.Date,b=a.DAY;Ext.Component.prototype.initEvents.call(this);if(!c.focusable){c.el.on({mousedown:c.onMouseDown})}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(d?d.inputEl:c.eventEl,Ext.apply({scope:c,capture:true,left:function(g){if(g.ctrlKey){c.showPrevMonth()}else{c.update(a.add(c.activeDate,b,-1))}},right:function(g){if(g.ctrlKey){c.showNextMonth()}else{c.update(a.add(c.activeDate,b,1))}},up:function(g){if(g.ctrlKey){c.showNextYear()}else{c.update(a.add(c.activeDate,b,-7))}},down:function(g){if(g.ctrlKey){c.showPrevYear()}else{c.update(a.add(c.activeDate,b,7))}},pageUp:function(g){if(g.ctrlKey){c.showPrevYear()}else{c.showPrevMonth()}},pageDown:function(g){if(g.ctrlKey){c.showNextYear()}else{c.showNextMonth()}},tab:function(g){c.handleTabClick(g);return true},enter:function(g){c.handleDateClick(g,c.activeCell.firstChild)},space:function(){c.setValue(new Date(c.activeCell.firstChild.dateValue));var e=c.startValue,g=c.value,h;if(d){h=d.getValue();if(h&&e&&h.getTime()===g.getTime()){d.setValue(e)}else{d.setValue(g)}}},home:function(g){c.update(a.getFirstDateOfMonth(c.activeDate))},end:function(g){c.update(a.getLastDateOfMonth(c.activeDate))}},c.keyNavConfig));if(c.disabled){c.syncDisabled(true)}c.update(c.value)},onMouseDown:function(a){a.preventDefault()},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)){c.setValue(new Date(a.dateValue));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,e=g.length,h,b;k.removeCls(l);for(b=0;b<e;b++){h=g[b].firstChild;if(h.dateValue==j){return h}}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)},onEnable:function(){Ext.Component.prototype.onEnable.call(this);this.syncDisabled(false);this.update(this.activeDate)},onShow:function(){Ext.Component.prototype.onShow.call(this);this.syncDisabled(false);if(this.pickerField){this.startValue=this.pickerField.getValue()}},onHide:function(){Ext.Component.prototype.onHide.call(this);this.syncDisabled(true)},onDisable:function(){Ext.Component.prototype.onDisable.call(this);this.syncDisabled(true)},getActive:function(){return this.activeDate||this.value},runAnimation:function(c){var b=this.monthPicker,a={duration:200,callback:function(){b.setVisible(!c)}};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.floatParent=null;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,ownerCmp:b,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.setValue(new Date(a.dateValue));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(e){var h=this,g=e.getTime(),d=h.cells,b=h.selectedCls,k,j=d.getCount(),a;a=h.activeCell;if(a){Ext.fly(a).removeCls(b);a.setAttribute("aria-selected",false)}for(k=0;k<j;k++){a=d.item(k);if(h.textNodes[k].dateValue==g){h.activeCell=a.dom;h.eventEl.dom.setAttribute("aria-activedescendant",a.dom.id);a.dom.setAttribute("aria-selected",true);a.addCls(b);h.fireEvent("highlightitem",h,a);break}}},fullUpdate:function(z){var D=this,d=D.cells.elements,c=D.textNodes,F=D.disabledCellCls,m=Ext.Date,v=0,C=0,k=+m.clearTime(z,true),y=+m.clearTime(new Date()),t=D.minDate?m.clearTime(D.minDate,true):Number.NEGATIVE_INFINITY,u=D.maxDate?m.clearTime(D.maxDate,true):Number.POSITIVE_INFINITY,B=D.disabledDatesRE,s=D.disabledDatesText,G=D.disabledDays?D.disabledDays.join(""):false,A=D.disabledDaysText,w=D.format,j=m.getDaysInMonth(z),p=m.getFirstDateOfMonth(z),e=p.getDay()-D.startDay,x=m.add(z,m.MONTH,-1),o=D.ariaTitleDateFormat,h,q,a,E,l,n,b,g,r;if(e<0){e+=7}j+=e;h=m.getDaysInMonth(x)-e;q=new Date(x.getFullYear(),x.getMonth(),h,D.initHour);if(D.showToday){E=m.clearTime(new Date());a=(E<t||E>u||(B&&w&&B.test(m.dateFormat(E,w)))||(G&&G.indexOf(E.getDay())!=-1));if(!D.disabled){D.todayBtn.setDisabled(a)}}l=function(J,I){var H=d[J];r=+m.clearTime(q,true);H.setAttribute("aria-label",m.format(q,o));H.firstChild.dateValue=r;if(r==y){I+=" "+D.todayCls;H.firstChild.title=D.todayText;D.todayElSpan=Ext.DomHelper.append(H.firstChild,{tag:"span",cls:"x-hidden-clip",html:D.todayText},true)}if(r==k){D.activeCell=H;D.eventEl.dom.setAttribute("aria-activedescendant",H.id);H.setAttribute("aria-selected",true);I+=" "+D.selectedCls;D.fireEvent("highlightitem",D,H)}else{H.setAttribute("aria-selected",false)}if(r<t){I+=" "+F;H.setAttribute("aria-label",D.minText)}else{if(r>u){I+=" "+F;H.setAttribute("aria-label",D.maxText)}else{if(G&&G.indexOf(q.getDay())!==-1){H.setAttribute("aria-label",A);I+=" "+F}else{if(B&&w){g=m.dateFormat(q,w);if(B.test(g)){H.setAttribute("aria-label",s.replace("%0",g));I+=" "+F}}}}}H.className=I+" "+D.cellCls};for(;v<D.numDays;++v){if(v<e){n=(++h);b=D.prevCls}else{if(v>=j){n=(++C);b=D.nextCls}else{n=v-e+1;b=D.activeCls}}c[v].innerHTML=n;q.setDate(q.getDate()+1);l(v,b)}D.monthBtn.setText(Ext.Date.format(z,D.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.keyNav,a.monthPicker,a.monthBtn,a.nextRepeater,a.prevRepeater,a.todayBtn,a.todayElSpan);delete a.textNodes;delete a.cells.elements}Ext.Component.prototype.beforeDestroy.call(this)},privates:{finishRenderChildren:function(){var a=this;Ext.Component.prototype.finishRenderChildren.call(this);a.monthBtn.finishRender();if(a.showToday){a.todayBtn.finishRender()}},getFocusEl:function(){return this.eventEl},syncDisabled:function(b){var c=this,a=c.keyNav;if(a){a.setDisabled(b);c.prevRepeater.setDisabled(b);c.nextRepeater.setDisabled(b);if(c.todayBtn){c.todayBtn.setDisabled(b)}}}}},0,["datepicker"],["component","box","datepicker"],{component:true,box: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:"x-form-date-trigger",showToday:true,useStrict:undefined,initTime:"12",initTimeFormat:"H",matchFieldWidth:false,startDay:0,valuePublishEvent:["select","blur"],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.Picker.prototype.initComponent.call(this)},initValue:function(){var a=this,b=a.value;if(Ext.isString(b)){a.value=a.rawToValue(b)}Ext.form.field.Picker.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){q=arguments.length>0?q:this.formatDate(this.processRawValue(this.getRawValue()));var j=this,p=Ext.String.format,k=Ext.Date.clearTime,o=Ext.form.field.Picker.prototype.getErrors.call(this,q),n=j.disabledDays,d=j.disabledDatesRE,m=j.minValue,h=j.maxValue,g=n?n.length:0,e=0,a,b,l,c;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,floating:true,focusable:false,hidden: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()}}})},onSelect:function(a,c){var b=this;b.setValue(c);b.fireEvent("select",b,c);b.collapse()},onExpand:function(){var a=this.getValue();this.picker.setValue(Ext.isDate(a)?a:new Date())},onBlur:function(c){var b=this,a=b.rawToValue(b.getRawValue());if(Ext.isDate(a)){b.setValue(a)}Ext.form.field.Picker.prototype.onBlur.call(this,c)}},0,["datefield"],["component","box","field","textfield","pickerfield","datefield"],{component:true,box:true,field:true,textfield:true,pickerfield:true,datefield: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:"x-form-file-input",cls:"x-form-file-btn",preventDefault:false,tabIndex:null,autoEl:{tag:"div",unselectable:"on"},afterTpl:['<input id="{id}-fileInputEl" data-ref="fileInputEl" class="{childElCls} {inputCls}" ','type="file" size="1" name="{inputName}" role="{role}" ','<tpl if="tabIndex != null">tabindex="{tabIndex}"</tpl>',">"],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.button.Button.prototype.afterRender.apply(this,arguments);a.fileInputEl.on({scope:a,change:a.fireChange,focus:a.onFocus,blur:a.onBlur})},fireChange:function(a){this.fireEvent("change",this,a,this.fileInputEl.dom.value)},createFileInput:function(b){var c=this,a=c.fileInputEl=c.el.createChild({name:c.inputName,id:!b?c.id+"-fileInputEl":undefined,cls:c.inputCls,tag:"input",type:"file",size:1,role:"button"});a.dom.setAttribute(Ext.Component.componentIdAttribute,c.id);a.on({scope:c,change:c.fireChange,focus:c.onFocus,blur:c.onBlur})},reset:function(a){var b=this;if(a){b.fileInputEl.destroy()}b.createFileInput(!a)},restoreInput:function(a){var b=this;b.fileInputEl.destroy();a=Ext.get(a);b.el.appendChild(a);b.fileInputEl=a},onDisable:function(){Ext.button.Button.prototype.onDisable.call(this);this.fileInputEl.dom.disabled=true},onEnable:function(){Ext.button.Button.prototype.onEnable.call(this);this.fileInputEl.dom.disabled=false},privates:{getFocusEl:function(){return this.fileInputEl},getFocusClsEl:function(){return this.el}}},0,["filebutton"],["component","box","button","filebutton"],{component:true,box:true,button:true,filebutton:true},["widget.filebutton"],0,[Ext.form.field,"FileButton"],0));(Ext.cmd.derive("Ext.form.trigger.Component",Ext.form.trigger.Trigger,{cls:"x-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()}Ext.form.trigger.Trigger.prototype.destroy.call(this)}},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"],needArrowKeys:false,triggers:{filebutton:{type:"component",hideOnReadOnly:false,preventMouseDown:false}},buttonText:"Browse...",buttonOnly:false,buttonMargin:3,clearOnSubmit:true,extraFieldBodyCls:"x-form-file-wrap",inputCls:"x-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.call(this,a)}},getSubTplData:function(a){var b=Ext.form.field.Text.prototype.getSubTplData.call(this,a);b.tabIdx=-1;return b},onRender:function(){var d=this,e,c,a,b;(arguments.callee.$previous||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.form.field.Text.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="x-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(){this.fileInputEl=this.button=null;Ext.form.field.Text.prototype.onDestroy.call(this)},getButtonMarginProp:function(){return"margin-left:"},privates:{getFocusEl:function(){return this.button}}},0,["filefield","fileuploadfield"],["component","box","field","textfield","filefield","fileuploadfield"],{component:true,box:true,field:true,textfield:true,filefield:true,fileuploadfield: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",focusable:false,inputType:"hidden",isTextInput:false,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"],["component","box","field","hiddenfield","hidden"],{component:true,box:true,field:true,hiddenfield:true,hidden: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",focusable:true,componentCls:"x-color-picker",selectedCls:"x-color-picker-selected",itemCls:"x-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.Component.prototype.initRenderData.call(this),{itemCls:a.itemCls,colors:a.colors})},onRender:function(){var b=this,a=b.clickEvent;Ext.Component.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.Component.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 e=this,h=e.selectedCls,g=e.value,c,d;b=b.replace("#","");if(!e.rendered){e.value=b;return}if(b!=g||e.allowReselect){c=e.el;if(e.value){d=c.down("a.color-"+g,true);Ext.fly(d).removeCls(h)}d=c.down("a.color-"+b,true);Ext.fly(d).addCls(h);e.value=b;if(a!==true){e.fireEvent("select",e,b)}}},clear:function(){var b=this,c=b.value,a;if(c&&b.rendered){a=b.el.down("a.color-"+c,true);Ext.fly(a).removeCls(b.selectedCls)}b.value=null},getValue:function(){return this.value||null}},0,["colorpicker"],["component","box","colorpicker"],{component:true,box:true,colorpicker: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(j){var h=this,d=j.widthModel,c=j.heightModel,b=h.owner,g=b.iframeEl,e=b.textareaEl,a=(c.natural||c.shrinkWrap)?h.naturalHeight:"";Ext.layout.component.field.FieldContainer.prototype.beginLayoutCycle.apply(this,arguments);if(d.shrinkWrap){g.setStyle("width","");e.setStyle("width","")}else{if(d.natural){j.bodyCellContext.setWidth(h.naturalWidth)}}g.setStyle("height",a);e.setStyle("height",a)},finishedLayout:function(){var a=this.owner;Ext.layout.component.field.FieldContainer.prototype.finishedLayout.apply(this,arguments);if(Ext.isGecko){a.textareaEl.dom.value=this.lastValue}}},0,0,0,0,["layout.htmleditor"],0,[Ext.layout.component.field,"HtmlEditor"],0));(Ext.cmd.derive("Ext.toolbar.Separator",Ext.toolbar.Item,{alternateClassName:"Ext.Toolbar.Separator",baseCls:"x-toolbar-separator",ariaRole:"separator"},0,["tbseparator"],["component","box","tbitem","tbseparator"],{component:true,box:true,tbitem:true,tbseparator:true},["widget.tbseparator"],0,[Ext.toolbar,"Separator",Ext.Toolbar,"Separator"],0));(Ext.cmd.derive("Ext.layout.container.boxOverflow.Menu",Ext.layout.container.boxOverflow.None,{alternateClassName:"Ext.layout.boxOverflow.Menu",noItemsMenuText:'<div class="x-toolbar-no-items" role="menuitem">(None)</div>',menuCls:"x-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 x-toolbar-item",plain:a.usePlainButtons,ownerCt:a,ownerLayout:c,iconCls:"x-"+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();j.removeAll(false);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:null});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.overflowClone){g.add(c.overflowClone)}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)))}}}}}}}},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.form.field.HtmlEditor",Ext.form.FieldContainer,{alternateClassName:"Ext.form.HtmlEditor",focusable:true,componentLayout:"htmleditor",textareaCls:"x-htmleditor-textarea",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:"x-html-editor-wrap",defaultButtonUI:"default-toolbar",initialized:false,activated:false,sourceEditMode:false,iframePad:3,hideMode:"offsets",maskOnDisable:true,containerElCls:"x-html-editor-container",reStripQuotes:/^['"]*|['"]*$/g,textAlignRE:/text-align:(.*?);/i,safariNonsenseRE:/\sclass="(?:Apple-style-span|Apple-tab-span|khtml-block-placeholder)"/gi,nonDigitsRE:/\D/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:a.textareaCls+" x-hidden",value:a.value,iframeName:Ext.id(),iframeSrc:Ext.SSL_SECURE_URL,iframeCls:"x-htmleditor-iframe"};a.getInsertionRenderData(b,a.subTplInsertions);return{flex:1,xtype:"component",tpl:a.getTpl("componentTpl"),childEls:["iframeEl","textareaEl"],id:c,cls:"x-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="x-",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:"x-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.form.FieldContainer.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="x-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(c){var b=this,a=b.textareaEl;if(c===null||c===undefined){c=""}if(b.value!==c){if(a){a.dom.value=c}b.pushValue();if(!b.rendered&&b.inputCmp){b.inputCmp.data.value=c}b.mixins.field.setValue.call(b,c)}return b},cleanHtml:function(a){a=String(a);if(Ext.isWebKit){a=a.replace(this.safariNonsenseRE,"")}if(a.charCodeAt(0)===parseInt(this.defaultValue.replace(this.nonDigitsRE,""),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(g.textAlignRE);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).destroy();if(c.hasOwnProperty){for(g in c){try{if(c.hasOwnProperty(g)){delete c[g]}}catch(b){}}}}delete a.iframeEl;delete a.textareaEl;delete a.toolbar;delete a.inputCmp}Ext.form.FieldContainer.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(l){var j=this,h=j.getWin(),k=j.getDoc(),c,g,d,m,e,b,a;if(j.activated){h.focus();if(h.getSelection){c=h.getSelection();if(c.getRangeAt&&c.rangeCount){g=c.getRangeAt(0);g.deleteContents();d=k.createElement("div");d.innerHTML=l;m=k.createDocumentFragment();while((e=d.firstChild)){b=m.appendChild(e)}a=m.firstChild;g.insertNode(m);if(b){g=g.cloneRange();g.setStartAfter(b);g.collapse(true);c.removeAllRanges();c.addRange(g)}}}else{if(k.selection&&c.type!=="Control"){c=k.selection;g=c.createRange();g.collapse(true);c.createRange().pasteHTML(l)}}j.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:"x-html-editor-tip"},italic:{title:"Italic (Ctrl+I)",text:"Make the selected text italic.",cls:"x-html-editor-tip"},underline:{title:"Underline (Ctrl+U)",text:"Underline the selected text.",cls:"x-html-editor-tip"},increasefontsize:{title:"Grow Text",text:"Increase the font size.",cls:"x-html-editor-tip"},decreasefontsize:{title:"Shrink Text",text:"Decrease the font size.",cls:"x-html-editor-tip"},backcolor:{title:"Text Highlight Color",text:"Change the background color of the selected text.",cls:"x-html-editor-tip"},forecolor:{title:"Font Color",text:"Change the color of the selected text.",cls:"x-html-editor-tip"},justifyleft:{title:"Align Text Left",text:"Align text to the left.",cls:"x-html-editor-tip"},justifycenter:{title:"Center Text",text:"Center text in the editor.",cls:"x-html-editor-tip"},justifyright:{title:"Align Text Right",text:"Align text to the right.",cls:"x-html-editor-tip"},insertunorderedlist:{title:"Bullet List",text:"Start a bulleted list.",cls:"x-html-editor-tip"},insertorderedlist:{title:"Numbered List",text:"Start a numbered list.",cls:"x-html-editor-tip"},createlink:{title:"Hyperlink",text:"Make the selected text a hyperlink.",cls:"x-html-editor-tip"},sourceedit:{title:"Source Edit",text:"Switch to source editing mode.",cls:"x-html-editor-tip"}},privates:{deferFocus:function(){this.focus(false,true)},getFocusEl:function(){return this.sourceEditMode?this.textareaEl:this.iframeEl}}},0,["htmleditor"],["component","box","container","fieldcontainer","htmleditor"],{component:true,box: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,delimiter:",",forceSelection:true,createNewOnEnter:false,createNewOnBlur:false,encodeSubmitValue:false,triggerOnClick:true,stacked:false,filterPickList:false,grow:true,growMin:false,growMax:false,selectOnFocus:true,fieldSubTpl:['<div id="{cmpId}-listWrapper" data-ref="listWrapper" class="x-tagfield {fieldCls} {typeCls} {typeCls}-{ui} style="{wrapperStyle}">','<ul id="{cmpId}-itemList" data-ref="itemList" class="x-tagfield-list{itemListCls}">','<li id="{cmpId}-inputElCt" data-ref="inputElCt" class="x-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 != null">tabindex="{tabIdx}" </tpl>','<tpl if="disabled"> disabled="disabled"</tpl>','class="x-tagfield-input-field {inputElCls}" autocomplete="off">',"</li>","</ul>","</div>",{disableFormats:true}],extraFieldBodyCls:"x-tagfield-body",childEls:["listWrapper","itemList","inputEl","inputElCt","emptyEl"],emptyInputCls:"x-tagfield-emptyinput",tagItemSelector:".x-tagfield-item",tagItemCloseSelector:".x-tagfield-item-close",tagSelectedCls:"x-tagfield-item-selected",initComponent:function(){var c=this,b=c.typeAhead,a=c.delimiter;if(c.createNewOnEnter||c.createNewOnBlur){c.forceSelection=false}c.typeAhead=false;c.selectionModel=new Ext.selection.Model({mode:"MULTI",onSelectChange:function(d,g,e,h){h()},listeners:{scope:c,selectionchange:c.onSelectionChange,focuschange:c.onFocusChange}});Ext.form.field.ComboBox.prototype.initComponent.call(this);c.typeAhead=b;if(a&&c.multiSelect){c.delimiterRegexp=new RegExp(Ext.String.escapeRegex(a))}},initEvents:function(){var a=this,b=a.inputEl;Ext.form.field.ComboBox.prototype.initEvents.apply(this,arguments);if(!a.enableKeyEvents){b.on("keydown",a.onKeyDown,a);b.on("keyup",a.onKeyUp,a)}a.listWrapper.on("click",a.onItemListClick,a)},isValid:function(){var b=this,a=b.disabled,c=b.forceValidation||!a;return c?b.validateValue(b.getValue()):a},onBindStore:function(a){var b=this;Ext.form.field.ComboBox.prototype.onBindStore.call(this,a);if(a){b.valueStore=new Ext.data.Store({model:a.getModel()});b.selectionModel.bindStore(b.valueStore);if(b.filterPickList){b.listFilter=new Ext.util.Filter({scope:b,filterFn:b.filterPicked});b.changingFilters=true;a.filter(b.listFilter);b.changingFilters=false}}},filterPicked:function(a){return !this.valueCollection.contains(a)},onUnbindStore:function(a){var c=this,d=c.valueStore,b=c.picker;if(b){b.bindStore(null)}if(d){d.destroy();c.valueStore=null}if(c.filterPickList){c.changingFilters=true;a.removeFilter(c.listFilter);c.changingFilters=false}Ext.form.field.ComboBox.prototype.onUnbindStore.apply(this,arguments)},onValueCollectionEndUpdate:function(){var a=this,c=a.valueCollection.items,b=a.valueStore;if(a.isSelectionUpdating()){return}if(a.filterPickList){a.changingFilters=true;a.store.filter(a.listFilter);a.changingFilters=false}Ext.form.field.ComboBox.prototype.onValueCollectionEndUpdate.call(this);Ext.suspendLayouts();if(b){b.suspendEvents();b.loadRecords(c);b.resumeEvents()}Ext.resumeLayouts(true)},checkValueOnDataChange:Ext.emptyFn,onSelectionChange:function(a,b){this.applyMultiselectItemMarkup();this.fireEvent("valueselectionchange",this,b)},onFocusChange:function(a,c,b){this.fireEvent("valuefocuschange",this,c,b)},onDestroy:function(){this.selectionModel=Ext.destroy(this.selectionModel);Ext.form.field.ComboBox.prototype.onDestroy.apply(this,arguments)},getSubTplData:function(d){var g=this,h=Ext.form.field.ComboBox.prototype.getSubTplData.apply(this,arguments),a=g.emptyText,c=g.emptyInputCls,j=a&&h.value.length<1,e=g.growMin,b=g.growMax;h.value="";h.emptyText=j?a:"";h.emptyCls=j?g.emptyCls:c;h.inputElCls=j?c:"";h.wrapperStyle="";h.itemListCls="";if(g.grow){if(Ext.isNumber(e)&&e>0){wrapperStyle+="min-height:"+e+"px;"}if(Ext.isNumber(b)&&b>0){wrapperStyle+="max-height:"+b+"px;"}}if(g.stacked===true){h.itemListCls+=" x-tagfield-stacked"}if(!g.multiSelect){h.itemListCls+=" x-tagfield-singleselect"}return h},afterRender:function(){var a=this,b=a.inputEl;if(Ext.supports.Placeholder&&b&&a.emptyText){b.dom.removeAttribute("placeholder")}a.applyMultiselectItemMarkup();Ext.form.field.ComboBox.prototype.afterRender.apply(this,arguments)},findRecord:function(c,b){var a=this.getStore().queryRecords(c,b);return a.length?a[0]:false},getCursorPosition:function(){var a;if(document.selection){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 c=this.inputEl.dom,b,a;if(document.selection){b=document.selection;a=b.createRange();return(a.parentElement()===c)}else{return c.selectionStart!==c.selectionEnd}},onKeyDown:function(g){var h=this,l=g.getKey(),k=h.inputEl,c=k.dom.value,a=h.valueCollection,d=h.selectionModel,b=false,j;if(h.readOnly||h.disabled||!h.editable){return}if(a.getCount()>0&&(c===""||(h.getCursorPosition()===0&&!h.hasSelectedText()))){j=(d.getCount()>0)?a.indexOf(d.getLastSelected()):-1;if(l===g.BACKSPACE||l===g.DELETE){if(j>-1){if(d.getCount()>1){j=-1}a.remove(d.getSelection())}else{a.remove(a.last())}d.clearSelections();if(j>0){d.select(j-1)}else{if(a.getCount()){d.select(a.last())}}b=true}else{if(l===g.RIGHT||l===g.LEFT){if(j===-1&&l===g.LEFT){d.select(a.last());b=true}else{if(j>-1){if(l===g.RIGHT){if(j<(a.getCount()-1)){d.select(j+1,g.shiftKey);b=true}else{if(!g.shiftKey){d.deselectAll();b=true}}}else{if(l===g.LEFT&&(j>0)){d.select(j-1,g.shiftKey);b=true}}}}}else{if(l===g.A&&g.ctrlKey){d.selectAll();b=g.A}}}}if(b){h.preventKeyUpEvent=b;g.stopEvent();return}if(h.isExpanded&&l===g.ENTER&&h.picker.highlightedItem){h.preventKeyUpEvent=true}if(h.enableKeyEvents){Ext.form.field.ComboBox.prototype.onKeyDown.apply(this,arguments)}if(!g.isSpecialKey()&&!g.hasModifier()){d.deselectAll()}},onKeyUp:function(h,b){var c=this,g=c.inputEl,d=g.dom.value,a=c.preventKeyUpEvent;if(c.preventKeyUpEvent){h.stopEvent();if(a===true||h.getKey()===a){delete c.preventKeyUpEvent}return}if(c.multiSelect&&c.delimiterRegexp&&c.delimiterRegexp.test(d)||(c.createNewOnEnter&&h.getKey()===h.ENTER)){d=Ext.Array.clean(d.split(c.delimiterRegexp));g.dom.value="";c.setValue(c.valueStore.getRange().concat(d));g.focus()}Ext.form.field.ComboBox.prototype.onKeyUp.call(this,h,b)},onTypeAhead:function(){var g=this,e=g.displayField,d=g.inputEl.dom,c=g.getPicker(),b=g.getStore().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(d){var c=this,a=c.selectionModel,b=d.getTarget(c.tagItemSelector),g=b?d.getTarget(c.tagItemCloseSelector):false;if(c.readOnly||c.disabled){return}d.stopPropagation();if(b){if(g){c.removeByListItemNode(b);if(c.valueStore.getCount()>0){c.fireEvent("select",c,c.valueStore.getRange())}}else{c.toggleSelectionByListItemNode(b,d.shiftKey)}if(!Ext.supports.TouchEvents){c.inputEl.focus()}}else{if(a.getCount()>0){a.deselectAll()}c.inputEl.focus();if(c.triggerOnClick){c.onTriggerClick()}}},getMultiSelectItemMarkup:function(){var b=this,c="x-",a=b.valueField;if(!b.multiSelectItemTpl){if(!b.labelTpl){b.labelTpl="{"+b.displayField+"}"}b.labelTpl=b.getTpl("labelTpl");b.multiSelectItemTpl=new Ext.XTemplate(['<tpl for=".">','<li data-selectionIndex="{[xindex - 1]}" data-recordId="{internalId}" data-value="{[this.getItemValue(values)]}" class="'+c+"tagfield-item",'<tpl if="this.isSelected(values)">'," "+b.tagSelectedCls,"</tpl>","{%","values = values.data;","%}",'" qtip="{'+b.displayField+'}">','<div class="'+c+'tagfield-item-text">{[this.getItemLabel(values)]}</div>','<div class="'+c+'tagfield-item-close"></div>',"</li>","</tpl>",{isSelected:function(d){return b.selectionModel.isSelected(d)},getItemLabel:function(d){return b.labelTpl.apply(d)},getItemValue:function(d){return d.get(a)},strict:true}])}if(!b.multiSelectItemTpl.isTemplate){b.multiSelectItemTpl=this.getTpl("multiSelectItemTpl")}return b.multiSelectItemTpl.apply(b.valueCollection.getRange())},applyMultiselectItemMarkup:function(){var b=this,a=b.itemList;if(a){a.select(".x-tagfield-item").destroy();b.inputElCt.insertHtml("beforeBegin",b.getMultiSelectItemMarkup());b.autoSize()}},getRecordByListItemNode:function(a){return this.valueCollection.items[Number(a.getAttribute("data-selectionIndex"))]},toggleSelectionByListItemNode:function(b,d){var c=this,e=c.getRecordByListItemNode(b),a=c.selectionModel;if(e){if(a.isSelected(e)){a.deselect(e)}else{a.select(e,d)}}},removeByListItemNode:function(a){var b=this,c=b.getRecordByListItemNode(a);if(c){b.pickerSelectionModel.deselect(c)}},getDisplayValue:function(){return this.getRawValue()},getRawValue:function(){var b=this,c=b.inputEl,a;b.inputEl=false;a=Ext.form.field.ComboBox.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.ComboBox.prototype.setRawValue.call(this,c);b.inputEl=d;return a},removeValue:function(h){var g=this,b=g.valueCollection,a,c,e,d=[];if(h){h=Ext.Array.from(h);for(c=0,a=h.length;c<a;++c){e=h[c];if(!e.isModel){e=b.byValue.get(e)}if(e){d.push(e)}}g.valueCollection.beginUpdate();g.pickerSelectionModel.deselect(d);g.valueCollection.endUpdate()}},setValue:function(j,m,n){var h=this,p=h.valueStore,o=h.valueField,g=[],k=h.store,d,e,c,a,l,b;if(Ext.isEmpty(j)){j=null}if(Ext.isString(j)&&h.multiSelect){j=j.split(h.delimiter)}j=Ext.Array.from(j,true);for(c=0,e=j.length;c<e;c++){d=j[c];if(!d||!d.isModel){a=p.findExact(o,d);if(a>-1){j[c]=p.getAt(a)}else{a=h.findRecord(o,d);if(!a){if(h.forceSelection){g.push(d)}else{a={};a[h.valueField]=d;a[h.displayField]=d;l=h.valueStore.getModel();a=new l(a)}}if(a){j[c]=a}}}}if(!k.isEmptyStore&&n!==true&&g.length>0&&h.queryMode==="remote"){b={};b[h.valueParam||h.valueField]=g.join(h.delimiter);k.load({params:b,callback:function(){if(h.itemList){h.itemList.unmask()}h.setValue(j,m,true);h.autoSize();h.lastQuery=false}});return false}if(!h.multiSelect&&j.length>0){for(c=j.length-1;c>=0;c--){if(j[c].isModel){j=j[c];break}}if(Ext.isArray(j)){j=j[j.length-1]}}return Ext.form.field.ComboBox.prototype.setValue.call(this,j,m)},updateValue:function(){var d=this,c=d.valueCollection.getRange(),a=c.length,b;for(b=0;b<a;b++){c[b]=c[b].get(d.valueField)}d.setHiddenValue(c);d.value=d.multiSelect?c:c[0];if(!Ext.isDefined(d.value)){d.value=undefined}d.applyMultiselectItemMarkup();d.checkChange()},getValueRecords:function(){return this.valueCollection.getRange()},getSubmitData:function(){var a=this,b=Ext.form.field.ComboBox.prototype.getSubmitData.apply(this,arguments);if(a.multiSelect&&a.encodeSubmitValue&&b&&b[a.name]){b[a.name]=Ext.encode(b[a.name])}return b},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()},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 g=this,b=g.emptyText,d=g.emptyEl,h=g.inputEl,a=g.listWrapper,e=g.emptyCls,c=g.emptyInputCls,j;if(g.rendered&&b){j=Ext.isEmpty(g.value)&&!g.hasFocus;if(j){h.dom.value="";d.setHtml(b);d.addCls(e);d.removeCls(c);a.addCls(e);h.addCls(c)}else{d.addCls(c);d.removeCls(e);a.removeCls(e);h.removeCls(c)}g.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.ComboBox.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.ComboBox.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"],["component","box","field","textfield","pickerfield","combobox","combo","tagfield"],{component:true,box:true,field:true,textfield:true,pickerfield:true,combobox:true,combo:true,tagfield:true},["widget.tagfield"],0,[Ext.form.field,"Tag"],0));(Ext.cmd.derive("Ext.picker.Time",Ext.view.BoundList,{config:{store:true},statics:{createStore:function(h,c){var b=Ext.Date,d=b.clearTime,g=this.prototype.initDate,j=[],e=d(new Date(g[0],g[1],g[2])),a=b.add(d(new Date(g[0],g[1],g[2])),"mi",(24*60)-1);while(e<=a){j.push({disp:b.dateFormat(e,h),date:e});e=b.add(e,"mi",c)}return new Ext.data.Store({model:Ext.picker.Time.prototype.modelType,data:j})}},increment:15,format:"g:i A",displayField:"disp",initDate:[2008,0,1],componentCls:"x-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.updateList();Ext.view.BoundList.prototype.initComponent.call(this)},applyStore:function(a,b){if(a===true){a=Ext.picker.Time.createStore(this.format,this.increment)}return a},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()}},0,["timepicker"],["component","box","dataview","boundlist","timepicker"],{component:true,box:true,dataview:true,boundlist: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:"x-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,valuePublishEvent:["select","blur"],initDate:"1/1/2008",initDateParts:[2008,0,1],initDateFormat:"j/n/Y",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.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)});c.store=Ext.picker.Time.createStore(c.format,c.increment);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){l=arguments.length>0?l:this.getRawValue();var g=this,k=Ext.String.format,j=Ext.form.field.ComboBox.prototype.getErrors.call(this,l),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 a=this;a.listConfig=Ext.apply({xtype:"timepicker",pickerField:a,cls:undefined,minValue:a.minValue,maxValue:a.maxValue,increment:a.increment,format:a.format,maxHeight:a.pickerMaxHeight},a.listConfig);return Ext.form.field.ComboBox.prototype.createPicker.call(this)},completeEdit:function(){var a=this,b=a.getValue();Ext.form.field.ComboBox.prototype.completeEdit.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.call(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.call(this,a)},getValue:function(){return this.rawToValue(Ext.form.field.ComboBox.prototype.getValue.apply(this,arguments))}},0,["timefield"],["component","box","field","textfield","pickerfield","combobox","combo","timefield"],{component:true,box:true,field:true,textfield:true,pickerfield:true,combobox:true,combo: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:"x-form-arrow-trigger",inheritableStatics:{warnDeprecated:function(){}},onClassExtended:function(){this.warnDeprecated()},constructor:function(a){this.self.warnDeprecated();Ext.form.field.Text.prototype.constructor.call(this,a)}},1,["trigger","triggerfield"],["component","box","field","textfield","triggerfield","trigger"],{component:true,box:true,field:true,textfield:true,triggerfield:true,trigger: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,{alignment:"l-l?",hideEl:false,cls:"x-small-editor x-grid-editor x-grid-cell-editor",treeNodeSelector:".x-tree-node-text",shim:false,shadow:false,constructor:function(a){var b;this.y=0;a=Ext.apply({},a);b=a.field;if(b){b.monitorTab=false}Ext.Editor.prototype.constructor.call(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=c;a.on(b)}},afterFirstLayout:function(b,a){delete this.y;Ext.Editor.prototype.afterFirstLayout.call(this,b,a)},beforeViewRefresh:function(){var a=this,b=a.el&&a.el.dom;if(b){if(a.editing&&!(a.field.column&&a.field.column.sorting)){a.grid.view.cellFocused=false;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.grid.view.cellFocused=true;a.field.focus()}else{if(!b){Ext.getDetachedBody().dom.appendChild(c)}}if(a.editing&&b){a.completeEdit()}}},startEdit:function(a,b){this.context=this.editingPlugin.context;Ext.Editor.prototype.startEdit.call(this,a,b)},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(){var c=this,b=c.context,a;c.restoreCell();if(b&&c.el.contains(Ext.Element.getActiveElement())){a=b.clone();Ext.on({idle:function(){if(Ext.Element.getActiveElement()===document.body){b.view.getNavigationModel().setPosition(a,null,null,null,true)}},single:true});c.context=null}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})}},onCheckBoxMouseDown:function(){this.completeEdit=Ext.emptyFn},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)}},onFocusLeave:function(a){this.previousFocus=null;Ext.Editor.prototype.onFocusLeave.call(this,a);this.selectSameEditor=false}},1,0,["component","box","container","editor"],{component:true,box: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="x-",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.container.Container.prototype.constructor.call(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=Ext.container.Container.prototype.getFrameInfo.call(this);a.top=true;return a}}},1,["roweditorbuttons"],["component","box","container","roweditorbuttons"],{component:true,box: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,_wrapCls:"x-grid-row-editor-wrap",errorCls:"x-grid-row-editor-errors-item",buttonUI:"default",hideMode:"offsets",initComponent:function(){var d=this,b=d.editingPlugin.grid,a=Ext.container.Container,c,e,g;d.cls="x-grid-editor x-grid-row-editor";d.layout={type:"hbox",align:"middle"};d.lockable=b.lockable;if(d.lockable){d.items=[g=d.lockedColumnContainer=new a({id:b.id+"-locked-editor-cells",scrollable:{x:false,y:false},layout:{type:"hbox",align:"middle"},margin:"0 1 0 0"}),e=d.normalColumnContainer=new a({scrollable:{x:false,y:false},flex:1,id:b.id+"-normal-editor-cells",layout:{type:"hbox",align:"middle"}})];g.getScrollable().addPartner(b.lockedGrid.view.getScrollable(),"x");e.getScrollable().addPartner(b.normalGrid.view.getScrollable(),"x")}else{d.setScrollable({x:false,y:false});d.getScrollable().addPartner(b.view.getScrollable(),"x");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.on("validitychange",d.onValidityChange,d);c.on("errorchange",d.onErrorChange,d)},onGridResize:function(){var c=this,e=c.getClientWidth(),a=c.editingPlugin.grid,d=a.body,b=c.getFloatingButtons();c.wrapEl.setLocalX(d.getOffsetsTo(a)[0]+d.getBorderWidth("l")-a.el.getBorderWidth("l"));c.setWidth(e);b.setLocalX((e-b.getWidth())/2);if(c.lockable){c.lockedColumnContainer.setWidth(a.lockedGrid.view.el.dom.clientWidth)}},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(b,a){this.updateButton(a);this.isValid=a},onErrorChange:function(){var b=this,a;if(b.errorSummary&&b.isVisible()){a=b.getForm().isValid();b[a?"hideToolTip":"showToolTip"]()}},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.form.Panel.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,d);if(d.lockable){b.lockedGrid.view.on("resize","onGridResize",d)}d.el.swallowEvent(["keypress","keydown"]);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.onEnterKey,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,h=c.scrollingView,d=h.getScrollY(),g=h.getScrollX(),a=d!==c.lastScrollTop,e;c.lastScrollTop=d;c.lastScrollLeft=g;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)}}},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()}},isLayoutChild:function(a){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.form.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,m=b&&b.row,d=0,l=h.wrapEl,a,c,e,j;if(m&&Ext.isElement(m)){e=h.syncButtonPosition(h.getScrollDelta());if(!h.editingPlugin.grid.rowLines){d=-parseInt(Ext.fly(m).first().getStyle("border-bottom-width"),10)}a=h.calculateLocalRowTop(m);c=h.calculateEditorTop(a)+d;if(!g){j=function(){if(e){h.scrollingViewEl.scrollBy(0,e,true)}h.focusColumnField(b.column)}}h.syncEditorClip();if(k){l.animate(Ext.applyIf({to:{top:c},duration:k.duration||125,callback:j},k))}else{l.setLocalY(c);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];if(a<0){a-=b.getBorderPadding().beforeY}else{if(a>0){a=Math.max(a+e.getHeight()+e.floatingButtons.getHeight()-d.clientHeight-b.getBorderWidth("b"),0);if(a>0){a-=b.getBorderPadding().afterY}}}}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}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+=" x-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,l,k;for(c=0;c<b;c++){k=h[c];k.suspendEvents();k.reset()}a.loadRecord(d);for(c=0;c<b;c++){h[c].resumeEvents()}if(a.hasInvalidField()===a.wasValid){delete a.wasValid}l=a.isValid();if(j.errorSummary){if(l){j.hideToolTip()}else{j.showToolTip()}}j.updateButton(l);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)},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(b,j){var h=this,c=h.editingPlugin,e=c.grid,d=h.context=c.context,g=h.isVisible(),a=h.wrapEl;Ext.suspendLayouts();if(!h.rendered){h.width=h.getClientWidth();h.render(e.el,e.el.dom.firstChild);a=h.wrapEl=h.el.wrap();a.setVisibilityMode(3);a.addCls(h._wrapCls);h.getFloatingButtons().render(a);h.onViewScroll()}d.grid.getSelectionModel().selectByPosition({row:b,column:j});h.onGridResize();h.loadRecord(b);Ext.resumeLayouts(g);if(g){h.reposition(true)}else{h.show()}},syncButtonPosition:function(c){var b=this,a=b.getFloatingButtons(),e=b.scrollingView,d=b.getScrollDelta()-(e.getScrollable().getSize().y-e.getScrollY()-b.scrollingViewEl.dom.clientHeight);if(d>0){if(!b._buttonsOnTop){a.setButtonPosition("top");b._buttonsOnTop=true}c=0}else{if(b._buttonsOnTop!==false){a.setButtonPosition("bottom");b._buttonsOnTop=false}}return c},syncEditorClip:function(){var j=this,b=j.getScrollDelta(),a=j.el,e=j.floatingButtons,d=e.el,k=Math.max,g,c,h;if(b){j.isOverflowing=true;g=j.body;c=e.getHeight();h=j.getHeight();k=Math.max;if(b>0){if(j._buttonsOnTop){b-=(c-g.getBorderWidth("b"));j.clipBottom(a,k(h-b),0);b-=(h-g.getBorderWidth("t"));if(b>0){j.clipBottom(d,k(c-b,0))}else{j.clearClip(d)}}else{j.clipBottom(d,k(c-b,0));b-=(c-g.getBorderWidth("b"));if(b>0){j.clipBottom(a,k(h-b,0))}else{j.clearClip(a)}}}else{if(b<0){b=Math.abs(b);j.clipTop(a,b);b-=(h-g.getBorderWidth("b"));if(b>0){j.clipTop(d,b)}else{j.clearClip(d)}}}}else{if(j.isOverflowing){j.clearClip(d);j.clearClip(a);j.isOverflowing=false}}},focusColumnField:function(b){var c,a;if(b&&!b.isDestroyed){if(b.isVisible()){c=this.getEditor(b);if(c&&c.isFocusable(true)){a=true;c.focus()}}if(!a){this.focusColumnField(b.next())}}},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;a.wrapEl.show();a.previousFocus=Ext.Element.getActiveElement();Ext.form.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;if(a.el.contains(Ext.Element.getActiveElement())){if(a.context){a.context.view.grid.focus();a.context=null}else{a.previousFocus.focus()}}a.wrapEl.hide();Ext.form.Panel.prototype.onHide.apply(this,arguments);if(a.tooltip){a.hideToolTip()}},onResize:function(b,a){this.wrapEl.setSize(b,a)},isDirty:function(){return this.getForm().isDirty()},getToolTip:function(){var b=this,c=b.tooltip,a=b.editingPlugin.grid;if(!c){b.tooltip=c=new Ext.tip.ToolTip({cls:"x-grid-row-editor-errors",title:b.errorsText,autoHide:false,closable:true,closeAction:"disable",anchor:"left",anchorToTarget:true,constrainPosition:true,constrainTo:document.body});a.add(c);b.mon(a,{afterlayout:b.onGridLayout,scope:b})}return c},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.update(a.getErrors());a.repositionTip();b.enable()},onGridLayout:function(){if(this.tooltip&&this.tooltip.isVisible()){this.repositionTip()}},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.anchorTarget=j.editingPlugin.grid.view.el;k.mouseOffset=[0,m.getOffsetsTo(l)[1]];k.show();j.hiddenTip=false}else{k.hide();j.hiddenTip=true}},getErrors:function(){var e=this,h=[],b=e.query(">[isFormField]"),d=b.length,c,a,g;for(c=0;c<d;c++){g=b[c];a=g.getErrors();if(a.length){h.push(e.createErrorListItem(a[0],g.column.text))}}if(!h.length&&!e.autoCancel&&e.isDirty()){h[0]=e.createErrorListItem(e.dirtyText)}return'<ul class="x-list-plain">'+h.join("")+"</ul>"},createErrorListItem:function(b,a){b=a?a+": "+b:b;return'<li class="'+this.errorCls+'">'+b+"</li>"},beforeDestroy:function(){Ext.destroy(this.floatingButtons,this.tooltip);Ext.form.Panel.prototype.beforeDestroy.call(this)},clipBottom:function(a,b){a.setStyle("clip","rect(0 auto "+b+"px 0)")},clipTop:function(a,b){a.setStyle("clip","rect("+b+"px, auto, auto, 0)")},clearClip:function(a){a.setStyle("clip",Ext.isIE8?"rect(-1000px auto 1000px auto)":"auto")}},0,["roweditor"],["component","box","container","panel","form","roweditor"],{component:true,box:true,container:true,panel:true,form:true,roweditor:true},["widget.roweditor"],0,[Ext.grid,"RowEditor"],0));(Ext.cmd.derive("Ext.view.DropZone",Ext.dd.DropZone,{indicatorCls:"x-grid-drop-indicator",indicatorHtml:['<div class="',"x-",'grid-drop-indicator-left" role="presentation"></div>','<div class="x-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.DropZone.prototype.constructor.call(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()}if(j.touchScroll===2){k+=j.getScrollY()}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.DropZone.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="x-grid-drop-indicator-left" role="presentation"></div><div class="x-grid-drop-indicator-right" role="presentation"></div>',indicatorCls:"x-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);j.getNavigationModel().setPosition(b.records[0])}},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("x-action-col-(\\d+)"),altText:"",menuText:"<i>Actions</i>",sortable:false,innerCls:"x-grid-cell-inner-action-col",actionIconCls:"x-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.grid.column.Column.prototype.constructor.call(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="x-",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+=" x-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,e,c,b,g){var d={};a.firstChild.innerHTML=this.defaultRenderer(e,d,c,null,null,g,b);Ext.fly(a).addCls(d.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(".x-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(".x-action-col-"+b).addCls(c.disabledCls);if(!a){c.fireEvent("disable",c)}},beforeDestroy:function(){this.renderer=this.items=null;return Ext.grid.column.Column.prototype.beforeDestroy.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(n&&!Ext.fly(g).findParent(m.getCellSelector())){g=Ext.fly(o).down(".x-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==="mousedown"){if(p.stopSelection){h.preventDefault()}return false}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[]},privates:{getFocusables:function(){return[]}}},1,["actioncolumn"],["component","box","container","headercontainer","gridcolumn","actioncolumn"],{component:true,box:true,container:true,headercontainer:true,gridcolumn:true,actioncolumn: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.innerHTML=Ext.grid.column.Boolean.prototype.defaultRenderer.call(this,b)}},0,["booleancolumn"],["component","box","container","headercontainer","gridcolumn","booleancolumn"],{component:true,box:true,container:true,headercontainer:true,gridcolumn:true,booleancolumn: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:"x-grid-cell-checkcolumn",innerCls:"x-grid-cell-inner-checkcolumn",clickTargetName:"el",defaultFilterType:"boolean",constructor:function(){this.scope=this;Ext.grid.column.Column.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.grid.column.Column.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="x-",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"],["component","box","container","headercontainer","gridcolumn","checkcolumn"],{component:true,box:true,container:true,headercontainer:true,gridcolumn:true,checkcolumn: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"],["component","box","container","headercontainer","gridcolumn","datecolumn"],{component:true,box:true,container:true,headercontainer:true,gridcolumn:true,datecolumn: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"],["component","box","container","headercontainer","gridcolumn","numbercolumn"],{component:true,box:true,container:true,headercontainer:true,gridcolumn: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.grid.column.Column.prototype.constructor.apply(this,arguments);b.sortable=false;b.scope=b},resizable:false,hideable:false,menuDisabled:true,dataIndex:"",cls:"x-row-numberer",tdCls:"x-grid-cell-row-numberer x-grid-cell-special",innerCls:"x-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(b&&d){b.tdAttr='rowspan="'+d+'"'}if(h>1){l+=(h-1)*a.pageSize}return l+1},updater:function(a,d,c,b,e){a.firstChild.innerHTML=this.defaultRenderer(d,null,c,null,null,e,b)}},1,["rownumberer"],["component","box","container","headercontainer","gridcolumn","rownumberer"],{component:true,box:true,container:true,headercontainer:true,gridcolumn: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"],["component","box","container","headercontainer","gridcolumn","templatecolumn"],{component:true,box:true,container:true,headercontainer:true,gridcolumn: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,onWidgetAttach:null,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.listenerScopeFn=function(c){if(c==="this"){return this}return a.resolveListenerScope(c)};a.liveWidgets={};a.cachedStyles={};a.freeWidgetStack=[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 b=this,a;Ext.grid.column.Column.prototype.onAdded.apply(this,arguments);a=b.getView();if(a){b.setupViewListeners(a);if(a&&a.viewReady&&b.rendered&&a.getEl().down(b.getCellSelector())){b.onViewRefresh(a,a.getViewRange())}}},onRemoved:function(c){var d=this,a=d.liveWidgets,b=d.viewListeners,g,e;if(d.rendered){d.viewListeners=Ext.destroy(d.viewListeners);if(!c){for(g in a){e=a[g];Ext.detachedBodyEl.dom.appendChild((e.el||e.element).dom)}}}Ext.grid.column.Column.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?b.freeWidgetStack.pop():null;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;a.ownerCmp=b}return a},onBeforeRefresh:function(){var a=this.liveWidgets,b;for(b in a){Ext.detachedBodyEl.appendChild(a[b].el.dom)}},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(e.defaultBindProperty&&m.dataIndex){e.setConfig(e.defaultBindProperty,g.get(m.dataIndex))}e.$widgetColumn=m;e.$widgetRecord=g;if(k){Ext.callback(m.onWidgetAttach,m.scope,[m,e,g],0,m)}if(b=(e.el||e.element)){q.appendChild(b.dom);if(!p){e.setWidth(a)}}else{if(!p){e.width=a}e.render(q)}}}}},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)}},onItemUpdate:function(a,b,c){this.updateWidget(a)},onViewRefresh:function(l,o){var s=this,j=l.all,h=!!s.onWidgetAttach,k=s.liveWidgets,t=s.dataIndex,u=s.isFixedSize,b,g,c,n,a,r,e,d,m,q,p;if(s.rendered&&!s.hidden){s.liveWidgets={};Ext.suspendLayouts();for(r=j.startIndex,e=0;r<=j.endIndex;r++,e++){d=o[e];if(d.isNonData){continue}a=d.internalId;b=l.getRow(j.item(r)).cells[s.getVisibleIndex()].firstChild;g=s.liveWidgets[a]=k[a]||s.getFreeWidget();delete k[a];q=s.lastBox;if(q&&!u&&n===undefined){n=q.width-parseInt(s.getCachedStyle(b,"padding-left"),10)-parseInt(s.getCachedStyle(b,"padding-right"),10)}if(g.defaultBindProperty&&t){g.setConfig(g.defaultBindProperty,o[e].get(t))}g.$widgetRecord=d;g.$widgetColumn=s;if(h){Ext.callback(s.onWidgetAttach,s.scope,[s,g,d],0,s)}if(c=(g.el||g.element)){p=c.dom;if(p.parentNode!==b){Ext.fly(b).empty();b.appendChild(c.dom)}if(!u){g.setWidth(n)}}else{if(!u){g.width=n}Ext.fly(b).empty();g.render(b)}}Ext.resumeLayouts(true);for(m in k){g=k[m];g.$widgetRecord=g.$widgetColumn=null;s.freeWidgetStack.unshift(g);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});if(Ext.isIE8){a.on("beforerefresh",b.onBeforeRefresh,b)}},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"],["component","box","container","headercontainer","gridcolumn","widgetcolumn"],{component:true,box:true,container:true,headercontainer:true,gridcolumn: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:"x-grid-row-summary",summaryRowSelector:".x-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="x-grid-item"}},toggleSummaryRow:function(e,a){var d=this,c=d.showSummaryRow,b;e=e!=null?!!e:!d.showSummaryRow;d.showSummaryRow=e;if(e&&e!==c){d.updateNext=true}if(d.lockingPartner){if(!a){d.lockingPartner.toggleSummaryRow(e,true);b=true}}else{b=true}if(b){d.grid.ownerGrid.getView().refresh()}},createRenderer:function(e,b){var g=this,c=b.ownerGroup,a=c?g.summaryData[c]:g.summaryData,d=e.dataIndex||e.getItemId();return function(j,h){return e.summaryRenderer?e.summaryRenderer(b.data[d],a,d,h):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(a){var e=this,c=e.view.store.getProxy().getReader(),j={},h={},b,d,g,k;g=c.getRootProperty();c.setRootProperty(e.remoteRoot);c.buildExtractors(true);k=c.getRoot(c.rawData);if(k){if(!Ext.isArray(k)){k=[k]}d=k.length;for(b=0;b<d;++b){j=c.extractRecordData(k[b],e.readDataOptions);if(a){h[j[a]]=j}}}c.setRootProperty(g);c.buildExtractors(true);return a?h:j},setSummaryData:function(c,d,b,e){var a=this.summaryData;if(e){if(!a[e]){a[e]={}}a[e][d]=b}else{a[d]=b}},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.getItemId();if(!n){b=k.getSummary(o,c.summaryType,q,p);h.set(q,b)}else{b=h.get(c.dataIndex)}k.setSummaryData(h,c.getItemId(),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];if(!c){c=b[a]={lastGeneration:null,aggregateRecord:new Ext.data.Model()}}return c},getAggregateRecord:function(b,a){var c;if(a===true||b.dirty||!b.aggregateRecord){c=new Ext.data.Model();b.aggregateRecord=c;c.isNonData=c.isSummary=true}return b.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(!a||b.store!==a){Ext.destroy(b.storeListeners);b.store=null}if(a){b.storeListeners=a.on({groupchange:b.onGroupChange,remove:b.onRemove,add:b.onAdd,idchanged:b.onIdChanged,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[a]=l;o.placeholder=q=new c(p);q.isNonData=q.isCollapsedPlaceholder=true;q.group=o;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},isLoading:function(){return false},getData:function(){return this.data},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.store.getByInternalId(a)||this.data.byInternalId.get(a)},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[a.getGroupField()]=b;e=d.placeholder=new g(c);e.isNonData=e.isCollapsedPlaceholder=true;e.group=d}return d.placeholder},indexOf:function(a){if(!a.isCollapsedPlaceholder){return this.data.indexOf(a)}return -1},indexOfId:function(a){return this.data.indexOfKey(a)},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){var e=this;if(c.isMoving()){return}e.processStore(e.store);e.fireEvent("refresh",e)},onClear:function(b,a,d){var c=this;c.processStore(c.store);c.fireEvent("clear",c)},onAdd:function(b,a,d){var c=this;c.processStore(c.store);c.fireEvent("replace",c,c.indexOf(a[0]),[],a)},onIdChanged:function(a,d,c,b){this.data.updateKey(d,c)},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(b,a){if(!a){this.processStore(b)}this.fireEvent("groupchange",b,a)},destroy:function(){var a=this;a.bindStore(null);a.clearListeners();Ext.destroyMembers(a,"data","groupingFeature")}},1,0,0,0,0,0,[Ext.grid.feature,"GroupStore"],0));(Ext.cmd.derive("Ext.grid.feature.Grouping",Ext.grid.feature.Feature,{eventPrefix:"group",eventSelector:".x-grid-group-hd",refreshData:{},groupInfo:{},wrapsItem:true,groupHeaderTpl:"{columnName}: {name}",depthToIndent:17,collapsedCls:"x-grid-group-collapsed",hdCollapsedCls:"x-grid-group-hd-collapsed",hdNotCollapsibleCls:"x-grid-group-hd-not-collapsible",collapsibleCls:"x-grid-group-hd-collapsible",ctCls:"x-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 data-groupname="{groupName:htmlEncode}" class="',"x-",'grid-group-hd {collapsibleCls}" nottabindex="0" hidefocus="on" {ariaCellInnerAttr}>','<div class="',"x-",'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,beginRowSync:function(b){var a=this.owner;b.add("header",a.eventSelector);b.add("summary",a.summaryRowSelector)},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,g;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=g=d.dataSource}else{e.dataSource=a.dataSource=g=new Ext.grid.feature.GroupStore(e,b)}}c=c.ownerLockable||c;c.on({beforeReconfigure:e.beforeReconfigure,scope:e});a.on({afterrender:e.afterViewRender,scope:e,single:true});if(g){g.on("groupchange",e.onGroupChange,e)}else{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;if(a.lockingPartner){a.lockingPartner.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;if(a.lockingPartner){a.lockingPartner.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||this.view.headerCt.getVisibleGridColumns().length<2?"disable":"enable";m[h]()}if(l.rendered&&n){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(a,c,j){var h=this.getMenu(),d=h.down("#groupMenuItem"),b=j.groupable===false||!j.dataIndex||this.view.headerCt.getVisibleGridColumns().length<2?"disable":"enable",g=h.down("#groupToggleMenuItem"),e=this.view.store.isGrouped();d[b]();if(g){g.setChecked(e,true);g[e?"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:"x-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()}a.isGrouping=true;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(h){var e=this.view.getEl(),c,d,b,a,g;if(e){h=Ext.htmlEncode(h);c=e.query(this.eventSelector);for(d=0,b=c.length;d<b;++d){g=c[d];if(g.getAttribute("data-groupName")===h){return g}}}},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){if(e){a.scrollElIntoView(Ext.fly(e).up(a.getItemSelector()),false,true)}else{if(a.bufferedRenderer){a.bufferedRenderer.scrollTo(c.dataSource.indexOf(c.getGroup(g).getAt(0)))}}}},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=l.group.getGroupKey();m=l.group.items;r.isFirstRow=r.isLastRow=true;r.groupHeaderCls=n.hdCollapsedCls;r.isCollapsedGroup=r.needsWrap=true;r.groupName=q;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;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.groupName=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("x-grid-group-last")}}r.needsWrap=(r.isFirstRow||r.summaryRecord)}},setup:function(e,g){var c=this,d=c.refreshData,a=g.view,b=a.isGrouping=!c.disabled&&a.store.isGrouped();c.skippedRows=0;if(a.bufferedRenderer){a.bufferedRenderer.variableRowHeight=a.bufferedRenderer.variableRowHeight||b}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},generateSummaryData:function(){var m=this,p=m.view.store,d=p.getGroups().items,j=p.getProxy().getReader(),b=m.getGroupField(),l=m.lockingPartner,n=m.updateNext,g={},e,k,q,a,h,c,o;if(m.remoteRoot&&j.rawData){c=true;o=m.mixins.summary.generateSummaryData.call(m,b)}for(e=0,k=d.length;e<k;++e){q=d[e];a=m.getGroupInfo(q);if(n||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}m.updateNext=false;return g},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){return Ext.htmlDecode(h.getAttribute("data-groupname"))}},getRecordGroup:function(a){var b=this.view.getStore().getGrouper();if(b){return this.groupCache[b.getGroupString(a)]}},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;Ext.destroy(a.storeListeners);a.view=a.prunedHeader=a.grid=a.groupCache=a.dataSource=null;Ext.grid.feature.Feature.prototype.destroy.call(this);if(b){b.bindStore(null);Ext.destroy(b)}},beforeReconfigure:function(c,k,d,a,e){var h=this,j=h.view,b=h.dataSource,g;if(k&&k!==a){g=k.isBufferedStore;if(!b){Ext.destroy(h.storeListeners);h.storeListeners=k.on({groupchange:h.onGroupChange,scope:h,destroyable:true})}if(g!==a.isBufferedStore){Ext.Error.raise("Cannot reconfigure grouping switching between buffered and non-buffered stores")}j.isGrouping=!!k.getGrouper();b.bindStore(k)}}},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&&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:"x-grid-row-body",rowBodyHiddenCls:"x-grid-row-body-hidden",rowBodyTdSelector:"td.x-grid-cell-rowbody",eventPrefix:"rowbody",eventSelector:"tr.x-grid-rowbody-tr",colSpanDecrement:0,bodyBefore:false,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:["{%","if(this.rowBody.bodyBefore) {","values.view.renderColumnSizer(values, out);","} else {","this.nextTpl.applyOut(values, out, parent);","}","values.view.rowBodyFeature.setupRowData(values.record, values.recordIndex, values);","%}",'<tr class="x-grid-rowbody-tr {rowBodyCls}" {ariaRowAttr}>','<td class="x-grid-td x-grid-cell-rowbody" colspan="{rowBodyColspan}" {ariaCellAttr}>','<div class="x-grid-rowbody {rowBodyDivCls}" {ariaCellInnerAttr}>{rowBody}</div>',"</td>","</tr>","{%","if(this.rowBody.bodyBefore) {","this.nextTpl.applyOut(values, out, parent);","}","%}",{priority:100,beginRowSync:function(a){a.add("rowBody",this.owner.eventSelector)},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")).rowBody=c;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||a.nextSibling)).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].setAttribute("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=this.view.headerCt.visibleColumnManager.getColumns().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:"x-docked-summary",summaryItemCls:"x-grid-item-summary",panelBodyCls:"x-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>"],scrollable:{x:false,y:false},hidden:!c.showSummaryRow,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(c,d,e){var b=c.view,g=b.findFeature("summary"),a;if(g.showSummaryRow){a=g.summaryRecord;d.push('<table class="x-table-plain '+g.summaryItemCls+'">');g.outputSummaryRecord((a&&a.isModel)?a:g.createSummaryRecord(b),c,d,e);d.push("</table>")}},toggleSummaryRow:function(d,a){var c=this,b=c.summaryBar;Ext.grid.feature.AbstractSummary.prototype.toggleSummaryRow.call(this,d,a);if(b){b.setVisible(c.showSummaryRow);c.onViewScroll()}},getSummaryBar:function(){return this.summaryBar},vetoEvent:function(a,c,d,b){return !b.getTarget(this.summaryRowSelector)},onViewScroll:function(){this.summaryBar.setScrollX(this.view.getScrollX())},createSummaryRecord:function(j){var h=this,d=j.headerCt.getVisibleGridColumns(),a=h.remoteRoot,g=h.summaryRecord,l=d.length,e,c,k,b,m;if(!g){m={id:j.id+"-summary-record"};g=h.summaryRecord=new Ext.data.Model(m)}g.beginEdit();if(a&&j.store.proxy.reader.rawData){g.set(h.generateSummaryData())}else{if(!a){for(e=0;e<l;e++){c=d[e];k=c.dataIndex||c.getItemId();b=h.getSummary(j.store,c.summaryType,k);g.set(k,b);h.setSummaryData(g,c.getItemId(),b)}}}g.endEdit(true);g.commit(true);g.isSummary=true;return g},onStoreUpdate:function(){var e=this,b=e.view,a=e.createSummaryRecord(b),d=b.createRowElement(a,-1).firstChild.firstChild,c,g;if(!b.rendered){return}if(e.dock){g=e.summaryBar.item.dom.firstChild;c=g.firstChild}else{c=e.view.getRow(a);g=c?c.parentNode:null}if(g){g.insertBefore(d,c);g.removeChild(c)}if(e.dock){e.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:"x-menu-item-active",ariaRole:"menuitem",clickHideDelay:0,destroyMenu:true,disabledCls:"x-menu-item-disabled",hideOnClick:true,menuAlign:"tl-tr?",menuExpandDelay:200,menuHideDelay:200,tooltipType:"qtip",focusable:true,baseCls:"x-menu-item",arrowCls:"x-menu-item-arrow",baseIconCls:"x-menu-item-icon",textCls:"x-menu-item-text",indentCls:"x-menu-item-indent",indentNoSeparatorCls:"x-menu-item-indent-no-separator",indentRightIconCls:"x-menu-item-indent-right-icon",indentRightArrowCls:"x-menu-item-indent-right-arrow",linkCls:"x-menu-item-link",linkHrefCls:"x-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 != null"> 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",canFocus:function(){var a=this;return a.focusable&&a.rendered&&a.canActivate!==false&&!a.destroying&&!a.isDestroyed&&a.isVisible(true)},onFocus:function(b){var a=this;Ext.Component.prototype.onFocus.call(this,b);if(!a.plain){a.addCls(a.activeCls)}a.activated=true;if(a.hasListeners.activate){a.fireEvent("activate",a)}},onFocusLeave:function(b){var a=this;Ext.Component.prototype.onFocusLeave.call(this,b);if(a.activated){if(!a.plain){a.removeCls(a.activeCls)}a.doHideMenu();a.activated=false;if(a.hasListeners.deactivate){a.fireEvent("deactivate",a)}}},doHideMenu:function(){var a=this.menu;if(a&&a.isVisible()){a.hide()}},cancelDeferHide:function(){clearTimeout(this.hideMenuTimer)},deferHideParentMenus:function(){var b=this.getRefOwner(),a;if(b.floating){b.bubble(function(c){if(!c.floating&&!c.isMenuItem){return false}if(c.isMenu){b=c}});b.hide()}},expandMenu:function(c,a){var b=this;if(b.menu){b.hideOnClick=false;b.cancelDeferHide();if(a===0){b.doExpandMenu(c)}else{clearTimeout(b.expandMenuTimer);b.expandMenuTimer=Ext.defer(b.doExpandMenu,a||b.menuExpandDelay,b,[c])}}},doExpandMenu:function(a){var b=this,c=b.menu;if(b.activated&&(!c.rendered||!c.isVisible())){b.parentMenu.activeChild=c;c.ownerCmp=b;c.parentMenu=b.parentMenu;c.constrainTo=document.body;c.autoFocus=!a||!a.pointerType;c.showBy(b,b.menuAlign)}},getRefItems:function(a){var c=this.menu,b;if(c){b=c.getRefItems(a);b.unshift(c)}return b||[]},getValue:function(){return this.value},hideMenu:function(a){var b=this;if(b.menu){clearTimeout(b.expandMenuTimer);b.hideMenuTimer=Ext.defer(b.doHideMenu,Ext.isNumber(a)?a:b.menuHideDelay,b)}},initComponent:function(){var b=this,a=b.cls?[b.cls]:[],c;if(b.hasOwnProperty("canActivate")){b.focusable=b.canActivate}if(b.plain){a.push("x-menu-item-plain")}if(a.length){b.cls=a.join(" ")}if(b.menu){c=b.menu;b.menu=null;b.setMenu(c)}Ext.Component.prototype.initComponent.apply(this,arguments)},onClick:function(g){var d=this,c=d.clickHideDelay,h=g.browserEvent,b,a;if(!d.href||d.disabled){g.stopEvent();if(d.disabled){return false}}if(d.disabled||d.handlingClick){return}if(d.hideOnClick){if(!c){d.deferHideParentMenus()}else{d.deferHideParentMenusTimer=Ext.defer(d.deferHideParentMenus,c,d)}}b=d.fireEvent("click",d,g);if(d.isDestroyed){return}if(b!==false&&d.handler){Ext.callback(d.handler,d.scope,[d,g],0,d)}if(Ext.isIE9m){a=h.returnValue===false?true:false}else{a=!!h.defaultPrevented}if(d.href&&g.type!=="click"&&!a){d.handlingClick=true;d.itemEl.dom.click();d.handlingClick=false}if(!d.hideOnClick){d.focus()}return b},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.ownerCmp=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.Component.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?"x-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.Component.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){b.ownerCmp=b.parentMenu=null;if(d===true||(d!==false&&c.destroyMenu)){Ext.destroy(b)}}if(e){e=c.menu=Ext.menu.Manager.get(e,{ownerCmp:c,focusOnToFront:false});e.ownerCmp=c}else{e=c.menu=null}if(e&&c.rendered&&!c.destroying&&a){a[e?"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.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"],["component","box","menuitem"],{component:true,box: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:"x-menu-item-checked",uncheckedCls:"x-menu-item-unchecked",groupCls:"x-menu-group-icon",hideOnClick:false,checkChangeDisabled:false,ariaRole:"menuitemcheckbox",childEls:["checkEl"],showCheckbox:true,isMenuCheckItem:true,checkboxCls:"x-menu-item-checkbox",initComponent:function(){var a=this;a.checked=!!a.checked;Ext.menu.Item.prototype.initComponent.apply(this,arguments);if(a.group){Ext.menu.Manager.registerCheckable(a);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.menu.Item.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);if(b.type==="keydown"&&a.menu){return false}}Ext.menu.Item.prototype.onClick.call(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"],["component","box","menuitem","menucheckitem"],{component:true,box:true,menuitem:true,menucheckitem:true},["widget.menucheckitem"],0,[Ext.menu,"CheckItem"],0));(Ext.cmd.derive("Ext.menu.Separator",Ext.menu.Item,{focusable:false,canActivate:false,hideOnClick:false,plain:true,separatorCls:"x-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"],["component","box","menuitem","menuseparator"],{component:true,box: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?",focusOnToFront:false,bringParentToFront:false,defaultFocus:":focusable",baseCls:"x-menu",_iconSeparatorCls:"x-menu-icon-separator",_itemCmpCls:"x-menu-item-cmp",layout:{type:"vbox",align:"stretchmax",overflowHandler:"Scroller"},initComponent:function(){var b=this,a=["x-menu"],c=b.bodyCls?[b.bodyCls]:[],d=b.floating!==false;if(b.plain){a.push("x-menu-plain")}b.cls=a.join(" ");c.push("x-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})},initFloatConstrain:Ext.emptyFn,getInherited:function(){var a=Ext.panel.Panel.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.focusableKeyNav.map.addBinding([{key:27,handler:b.onEscapeKey,scope:b},{key:/[\w]/,handler:b.onShortcutKey,scope:b,shift:false,ctrl:false,alt:false}]);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);if(Ext.supports.MSPointerEvents||Ext.supports.PointerEvents){b.mon(b.el,{scope:b,click:b.preventClick,translate:false})}b.mouseMonitor=b.el.monitorMouseLeave(100,b.onMouseLeave,b)},onFocusLeave:function(b){var a=this;Ext.panel.Panel.prototype.onFocusLeave.call(this,b);a.mixins.focusablecontainer.onFocusLeave.call(a,b);a.hide()},canActivateItem:function(a){return a&&a.isFocusable()},deactivateActiveItem:function(){var a=this,b=a.lastFocusedChild;if(b){b.blur()}},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)}}if(!b.dock){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="x-",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(" ")}c.$extraMenuCls=a}}this.callParent(arguments)},onRemove:function(a){Ext.panel.Panel.prototype.onRemove.call(this,a);if(!a.isDestroyed&&a.$extraMenuCls){a.el.removeCls(a.$extraMenuCls)}},onClick:function(h){var g=this,c=h.type,d,b,a=c==="keydown";if(g.disabled){h.stopEvent();return}d=g.getItemFromEvent(h);if(d&&d.isMenuItem){if(!d.menu||!g.ignoreParentClicks){b=d.onClick(h)}else{h.stopEvent()}if(d.menu&&b!==false&&a){d.expandMenu(h,0)}}if(!d||d.disabled){d=undefined}g.fireEvent("click",g,d,h)},onDestroy:function(){var a=this;a.parentMenu=a.ownerCmp=null;if(a.rendered){a.el.un(a.mouseMonitor);Ext.destroy(a.iconSepEl)}Ext.panel.Panel.prototype.onDestroy.apply(this,arguments)},onMouseLeave:function(a){if(this.disabled){return}this.fireEvent("mouseleave",this,a)},onMouseOver:function(h){var g=this,j=h.getRelatedTarget(),b=!g.el.contains(j),d=g.getItemFromEvent(h),c=g.parentMenu,a=g.ownerCmp;if(b&&c){c.setActiveItem(a);a.cancelDeferHide();c.mouseMonitor.mouseenter()}if(g.disabled){return}if(d){if(!d.containsFocus){d.focus()}if(d.expandMenu){d.expandMenu(h)}}if(b){g.fireEvent("mouseenter",g,h)}g.fireEvent("mouseover",g,d,h)},setActiveItem:function(b){var a=this;if(b&&(b!==a.lastFocusedChild)){a.focusChild(b,1)}},onEscapeKey:function(){if(this.floating){this.hide()}},onShortcutKey:function(j,h){var b=String.fromCharCode(h.getCharCode()),c=this.query(">[text]"),a=c.length,g=this.lastFocusedChild,k=Ext.Array.indexOf(c,g),d=k;for(;;){if(++d===a){d=0}g=c[d];if(d===k){return}if(g.text&&g.text[0].toUpperCase()===b){g.focus();return}}},onFocusableContainerTabKey:function(a){if(this.floating){this.hide()}},onFocusableContainerEnterKey:function(a){this.onClick(a)},onFocusableContainerSpaceKey:function(a){this.onClick(a)},onFocusableContainerLeftKey:function(a){if(this.parentMenu){this.ownerCmp.focus();this.hide()}},onFocusableContainerRightKey:function(b){var a=this,c=a.lastFocusedChild;if(c&&c.expandMenu){c.expandMenu(b,0)}},beforeShow:function(){var b=this,c,a;if(b.floating){c=Ext.Element.getActiveElement();b.focusAnchor=c===document.body?null:c;b.savedMaxHeight=b.maxHeight;a=b.container.getViewSize().height;b.maxHeight=Math.min(b.maxHeight||a,a)}Ext.panel.Panel.prototype.beforeShow.apply(this,arguments);if(Ext.supports.Touch){b.tapListener=Ext.getBody().on({touchstart:b.onBodyTap,scope:b,destroyable:true})}},onBodyTap:function(a){if(!this.owns(a)){this.tapListener.destroy();this.hide()}},afterShow:function(){var a=this;Ext.panel.Panel.prototype.afterShow.apply(this,arguments);if(a.floating&&a.autoFocus){a.maxHeight=a.savedMaxHeight;a.focus()}},onHide:function(e,b,c){var d=this,a;if(d.el.contains(Ext.Element.getActiveElement())){a=d.focusAnchor||d.ownerCmp||d.up(":focusable");if(a){d.previousFocus=a}}Ext.panel.Panel.prototype.onHide.call(this,e,b,c)},preventClick:function(a){if(!this.getItemFromEvent(a).href){a.preventDefault()}}},0,["menu"],["component","box","container","panel","menu"],{component:true,box:true,container:true,panel:true,menu:true},["widget.menu"],[[Ext.util.FocusableContainer.prototype.mixinId||Ext.util.FocusableContainer.$className,Ext.util.FocusableContainer]],[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"},updateBuffer:500},active:false,type:"string",dataIndex:null,menu:null,isGridFilter:true,defaultRoot:"data",filterIdPrefix:"x-gridfilter",constructor:function(a){var c=this,b;c.initConfig(a);b=c.column;b.on("destroy",c.destroy,c);c.dataIndex=c.dataIndex||b.dataIndex;c.task=new Ext.util.DelayedTask(c.setValue,c)},destroy:function(){this.grid=this.menu=Ext.destroy(this.menu)},addStoreFilter:function(a){this.getGridStore().getFilters().add(a)},createFilter:function(a,b){return new Ext.util.Filter(this.getFilterConfig(a,b))},getFilterConfig:function(a,b){a.id=this.getBaseIdPrefix();if(!a.property){a.property=this.dataIndex}if(!a.root){a.root=this.defaultRoot}if(b){a.id+="-"+b}return a},createMenu:function(){this.menu=Ext.widget(this.getMenuConfig())},getBaseIdPrefix:function(){return this.filterIdPrefix+"-"+this.dataIndex},getMenuConfig:function(){return Ext.apply({},this.getMenuDefaults())},getGridStore:function(){return this.grid.getStore()},getStoreFilter:function(a){var b=this.getBaseIdPrefix();if(a){b+="-"+a}return this.getGridStore().getFilters().get(b)},onValueChange:function(d,c){var b=this,a=b.updateBuffer;if(d.isFormField&&c.getKey()===c.RETURN&&d.isValid()){b.menu.hide();return}if(a){b.task.delay(a,null,null,[b.getValue(d)])}else{b.setValue(b.getValue(d))}},preprocess:Ext.emptyFn,removeStoreFilter:function(a){this.getGridStore().getFilters().remove(a)},getValue:Ext.emptyFn,setActive:function(c){var b=this,a=b.owner.activeFilterMenuItem,d;if(b.active!==c){b.active=c;b.preventDefault=true;d=b.getGridStore().getFilters();d.beginUpdate();if(c){b.activate()}else{b.deactivate()}d.endUpdate();b.preventDefault=false;if(a&&a.activeFilter===b){a.setChecked(c)}b.setColumnActive(c)}},setColumnActive:function(a){this.column[a?"addCls":"removeCls"](this.owner.filterCls)},showMenu:function(a){var b=this;if(!b.menu){b.createMenu()}a.activeFilter=b;a.setMenu(b.menu,false);a.setChecked(b.active);a.setDisabled(b.disabled===true);b.activate(true)},updateStoreFilter:function(){this.getGridStore().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 c=this,b,d;Ext.grid.filters.filter.Base.prototype.constructor.call(this,a);d=c.value;b=c.getStoreFilter();if(b){c.active=true}else{if(c.grid.stateful&&c.getGridStore().saveStatefulFilters){d=undefined}c.active=(a.active!=undefined)?a.active:d!==undefined;b=c.createFilter({operator:c.operator,value:d});if(c.active){c.addStoreFilter(b)}}if(c.active){c.setColumnActive(true)}c.filter=b},activate:function(a){if(a){this.activateMenu()}else{this.addStoreFilter(this.filter)}},deactivate:function(){this.removeStoreFilter(this.filter)},getValue:function(a){return a.getValue()},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",updateBuffer:0,createMenu:function(a){var c=this,d=Ext.id(),b={scope:c,click:c.onClick},e=c.getItemDefaults();Ext.grid.filters.filter.SingleFilter.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.value=b;a.updateStoreFilter()}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={},e,h,c,k,b;Ext.grid.filters.filter.Base.prototype.constructor.call(this,d);k=j.value;h=j.getStoreFilter("lt");e=j.getStoreFilter("gt");c=j.getStoreFilter("eq");if(h||e||c){g=j.active=true;if(h){j.onStateRestore(h)}if(e){j.onStateRestore(e)}if(c){j.onStateRestore(c)}}else{if(j.grid.stateful&&j.getGridStore().saveStatefulFilters){k=undefined}j.active=!!k}a.lt=h||j.createFilter({operator:"lt",value:(!g&&k&&k.lt)||null},"lt");a.gt=e||j.createFilter({operator:"gt",value:(!g&&k&&k.gt)||null},"gt");a.eq=c||j.createFilter({operator:"eq",value:(!g&&k&&k.eq)||null},"eq");j.filter=a;if(j.active){j.setColumnActive(true);if(!g){for(b in k){j.addStoreFilter(j.filter[b])}}}},activate:function(d){var g=this,e=this.filter,a=g.fields,c,j,b,h;if(g.preventFilterRemoval){return}for(b in e){c=e[b];j=a[b];h=c.getValue();if(h){j.setValue(h);j.up("menuitem").setChecked(true,true);if(!d){g.addStoreFilter(c)}}}},deactivate:function(){var c=this,b=c.filter,d,a;if(!c.hasActiveFilter()||c.preventFilterRemoval){return}c.preventFilterRemoval=true;for(d in b){a=b[d];if(a.getValue()){c.removeStoreFilter(a)}}c.preventFilterRemoval=false},hasActiveFilter:function(){var d=false,b=this.filter,e=this.getGridStore().getFilters(),c=this.getBaseIdPrefix(),a;if(e.length){for(a in b){if(e.get(c+"-"+a)){d=true;break}}}return d},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)}}},onStateRestore:Ext.emptyFn,setValue:function(m){var k=this,h=k.fields,b=k.filter,o=[],g=[],c=false,e=k.getGridStore().getFilters(),l,a,n,d,j;if(k.preventFilterRemoval){return}k.preventFilterRemoval=true;if("eq" in m){n=b.lt.getValue();if(n||n===0){g.push(h.lt)}n=b.gt.getValue();if(n||n===0){g.push(h.gt)}n=m.eq;if(n||n===0){o.push(h.eq);b.eq.setValue(n)}else{g.push(h.eq)}}else{n=b.eq.getValue();if(n||n===0){g.push(h.eq)}if("lt" in m){n=m.lt;if(n||n===0){o.push(h.lt);b.lt.setValue(n)}else{g.push(h.lt)}}if("gt" in m){n=m.gt;if(n||n===0){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.preventFilterRemoval=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},updateBuffer:0,dateFormat:undefined},itemDefaults:{xtype:"menucheckitem",selectOnFocus:true,width:125,menu:{layout:"auto",plain:true}},applyDateFormat:function(a){return a||Ext.Date.defaultFormat},createMenu:function(b){var k=this,l={scope:k,checkchange:k.onCheckChange},a=k.menuItems,g,c,d,e,j,n,o,h,m;Ext.grid.filters.filter.TriFilter.prototype.createMenu.apply(this,arguments);c=k.getItemDefaults();g=k.getFields();d=Ext.apply({minDate:k.minDate,maxDate:k.maxDate,format:k.dateFormat,listeners:{scope:k,select:k.onMenuSelect}},k.getPickerDefaults());k.fields={};for(e=0,j=a.length;e<j;e++){n=a[e];if(n!=="-"){h={menu:{items:[Ext.apply({itemId:n},d)]}};if(c){Ext.merge(h,c)}if(g){Ext.merge(h,g[n])}o=k.menu.add(h);m=k.fields[n]=o.down("datepicker");m.filter=k.filter[n];m.filterKey=n;o.on(l)}else{k.menu.add(n)}}},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)},onStateRestore:function(a){a.setSerializer(this.getSerializer());a.setConvert(this.convertDateOnly)},getFilterConfig:function(a,b){a=Ext.grid.filters.filter.TriFilter.prototype.getFilterConfig.call(this,a,b);a.serializer=this.getSerializer();a.convert=this.convertDateOnly;return a},convertDateOnly:function(b){var a=null;if(b){a=Ext.Date.clearTime(b,true).getTime()}return a},getSerializer:function(){var a=this;return function(c){var b=c.value;if(b){c.value=Ext.Date.format(b,a.getDateFormat())}}},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",labelIndex:null,loadingText:"Loading...",loadOnShow:true,single:false,plain:true,constructor:function(c){var d=this,b,a;Ext.grid.filters.filter.SingleFilter.prototype.constructor.call(this,c);b=d.options;a=d.store;if(!b&&!a){d.getGridStore().on({scope:d,add:d.onDataChanged,refresh:d.onDataChanged,remove:d.onDataChanged,update:d.onDataChanged})}d.labelIndex=d.labelIndex||d.column.dataIndex},destroy:function(){var c=this,a=c.store,b=c.autoStore;if(a){if(b||a.autoDestroy){a.destroy()}else{a.un("load",c.bindMenuStore,c)}c.store=null}if(b){c.getGridStore().un({scope:c,add:c.onDataChanged,refresh:c.onDataChanged,remove:c.onDataChanged,update:c.onDataChanged})}Ext.grid.filters.filter.SingleFilter.prototype.destroy.call(this)},activateMenu:function(){var e=this,g=e.filter.getValue(),c,d,a,b;if(!g||!g.length){return}c=e.menu.items;for(d=0,a=c.length;d<a;d++){b=c.getAt(d);if(Ext.Array.indexOf(g,b.value)>-1){b.setChecked(true,true)}}},bindMenuStore:function(a){var b=this;if(b.grid.isDestroyed||b.preventFilterRemoval){return}b.createListStore(a);b.createMenuItems(b.store);b.loaded=true},createListStore:function(q){var k=this,p=k.store,l=q.isStore,c=k.idField,e=k.labelField,m=false,a,d,h,g,j,n,b;if(l){if(q!==k.getGridStore()){m=true;p=k.store=q}else{k.autoStore=true;a=k.getOptionsFromStore(q)}}else{a=[];for(g=0,j=q.length;g<j;g++){n=q[g];switch(Ext.typeOf(n)){case"array":a.push(n);break;case"object":a.push(n);break;default:if(n!=null){d={};d[c]=n;d[e]=n;a.push(d)}}}}if(!m){if(p){p.destroy()}p=k.store=new Ext.data.Store({fields:[c,e],data:a});k.loaded=true}k.setStoreFilter(p)},createMenu:function(c){var e=this,d=e.getGridStore(),a=e.store,b=e.options,g;if(a){e.store=a=Ext.StoreManager.lookup(a)}Ext.grid.filters.filter.SingleFilter.prototype.createMenu.call(this,c);g=e.menu;if(a){if(!a.getCount()){g.add({text:e.loadingText,iconCls:"x-mask-msg-text"});g.on("show",e.show,e);a.on("load",e.bindMenuStore,e,{single:true})}else{e.createMenuItems(a)}}else{if(b){e.bindMenuStore(b)}else{if(d.getCount()||d.data.filtered){e.bindMenuStore(d)}else{d.on("load",e.bindMenuStore,e,{single:true})}}}},createMenuItems:function(q){var o=this,c=o.menu,n=q.getCount(),h=Ext.Array.contains,p,d,l,m,b,a,j,g,k,r,e;if(n&&c){p={checkchange:o.onCheckChange,scope:o};d=o.getItemDefaults();c.suspendLayouts();c.removeAll(true);m=o.single?Ext.id():null;a=o.idField;g=o.labelField;e=[];for(k=0;k<n;k++){l=q.getAt(k);b=l.get(a);j=l.get(g);if(j==null||h(e,b)){continue}e.push(j);r=c.add(Ext.apply({text:j,group:m,value:b,listeners:p},d))}c.resumeLayouts(true)}},getFilterConfig:function(a,b){a.value=a.value||[];return Ext.grid.filters.filter.SingleFilter.prototype.getFilterConfig.call(this,a,b)},getOptionsFromStore:function(n){var l=this,h=n.getData(),b={},j=[],m=l.dataIndex,a=l.labelIndex,k,g,d,o,c,e;if(n.isFiltered()){h=h.getSource()}k=h.items;d=k.length;for(g=0;g<d;++g){o=k[g].data;c=o[m];e=o[a];if(e===undefined){e=c}if(!b[c]){b[c]=1;j.push([c,e])}}return j},onCheckChange:function(){var b=this,a=b.updateBuffer;if(a){b.task.delay(a,null,null)}else{b.setValue()}},onDataChanged:function(a){if(!this.preventDefault){this.bindMenuStore(a)}},setStoreFilter:function(k){var h=this,j=h.value,a=h.filter,c,d,e,b,g;if(j){if(!Ext.isArray(j)){j=[j]}a.setValue(j)}if(h.active){h.preventFilterRemoval=true;h.addStoreFilter(a);h.preventFilterRemoval=false}},setValue:function(){var e=this,c=e.menu.items,g=[],d,a,b;e.preventDefault=true;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()}else{e.setActive(!!a)}e.preventDefault=false},show:function(){var a=this.store;if(this.loadOnShow&&!this.loaded&&!a.hasPendingLoad()){a.load()}}},1,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:"x-grid-filters-gt",margin:"0 0 3px 0"},lt:{iconCls:"x-grid-filters-lt",margin:"0 0 3px 0"},eq:{iconCls:"x-grid-filters-eq",margin:0}}},emptyText:"Enter Number...",itemDefaults:{xtype:"numberfield",enableKeyEvents:true,hideEmptyLabel:false,labelSeparator:"",labelWidth:29,selectOnFocus:false},menuDefaults:{bodyPadding:3,showSeparator:false},createMenu:function(){var h=this,j={scope:h,keyup:h.onValueChange,spin:{fn:h.onInputSpin,buffer:200},el:{click:h.stopFn}},b=h.getItemDefaults(),a=h.menuItems,d=h.getFields(),k,c,g,l,m,e;Ext.grid.filters.filter.TriFilter.prototype.createMenu.call(this);h.fields={};for(c=0,g=a.length;c<g;c++){l=a[c];if(l!=="-"){k=d[l];e={labelClsExtra:"x-grid-filters-icon "+k.iconCls};if(b){Ext.merge(e,b)}Ext.merge(e,k);e.emptyText=e.emptyText||h.emptyText;delete e.iconCls;h.fields[l]=m=h.menu.add(e);m.filter=h.filter[l];m.filterKey=l;m.on(j)}else{h.menu.add(l)}}},getValue:function(b){var a={};a[b.filterKey]=b.getValue();return 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",emptyText:"Enter Filter Text...",itemDefaults:{xtype:"textfield",enableKeyEvents:true,hideEmptyLabel:false,iconCls:"x-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.SingleFilter.prototype.createMenu.call(this);a=Ext.apply({},b.getItemDefaults());if(a.iconCls&&!("labelClsExtra" in a)){a.labelClsExtra="x-grid-filters-icon "+a.iconCls}delete a.iconCls;a.emptyText=a.emptyText||b.emptyText;b.inputItem=b.menu.add(a);b.inputItem.on({scope:b,keyup:b.onValueChange,el:{click:function(c){c.stopPropagation()}}})},setValue:function(b){var a=this;if(a.inputItem){a.inputItem.setValue(b)}a.filter.setValue(b);if(b&&a.active){a.value=b;a.updateStoreFilter()}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:"x-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,destroy:c.onGridDestroy,beforereconfigure:c.onBeforeReconfigure,reconfigure:c.onReconfigure});c.bindStore(a);if(b.stateful){a.statefulFilters=true}c.initColumns()},initColumns:function(){var a=this.grid,k=a.getStore(),d=a.columnManager.getColumns(),j=d.length,h,c,b,g,e;for(h=0;h<j;h++){c=d[h];b=c.filter;if(b&&!b.isGridFilter){if(!g){g=k.getFilters();g.beginUpdate()}this.createColumnFilter(c)}}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.getModel();h=b&&b.getField(e.dataIndex);c=h&&h.type;d.type=(c&&g.defaultFilterTypes[c])||e.defaultFilterType||"string"}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(d,a){var c=this,b;c.sep=d.add("-");b=d.add({checked:false,itemId:"filters",text:c.menuFilterText,listeners:{scope:c,checkchange:c.onCheckChange}});return(c.menuItems[a]=b)},onGridDestroy:function(){var c=this,a=c.menuItems,b;c.bindStore(null);c.sep=Ext.destroy(c.sep);for(b in a){a[b].destroy()}c.grid=null},onUnbindStore:function(a){a.getFilters().un("remove",this.onFilterRemove,this)},onBindStore:function(a,b,c){this.local=!a.getRemoteFilter();a.getFilters().on("remove",this.onFilterRemove,this)},onFilterRemove:function(j,g){var b=g.items.length,a=this.grid.columnManager,c,e,h,d;for(c=0;c<b;c++){e=g.items[c];h=a.getHeaderByDataIndex(e.getProperty());if(h){d=h.filter;if(!d||!d.menu||e.getId().indexOf(d.getBaseIdPrefix())===-1){continue}if(!d.preventFilterRemoval){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 j=this,a=j.grid,l=j.store,d=false,m=true,k,e,g,h,b,n;if(!Ext.isArray(c)){c=[c]}for(g=0,h=c.length;g<h;g++){b=c[g];k=b.dataIndex;e=a.columnManager.getHeaderByDataIndex(k);if(e){d=true;if(b.value){m=false}n=e.filter;if(n&&n.isGridFilter){n.deactivate();n.destroy();if(j.activeFilterMenuItem){j.activeFilterMenuItem.menu=null}}e.filter=b}}if(d){l.suppressNextFilter=m;j.initColumns();l.suppressNextFilter=false}},addFilters:function(a){if(a){this.addFilter(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(a){a.getFilters().beginUpdate()}this.reconfiguring=true},onReconfigure:function(c,a,b,e){var d=this;if(a&&e!==a){d.bindStore(a)}if(b){d.initColumns()}if(a){a.getFilters().endUpdate()}d.reconfiguring=false}},0,0,0,0,["plugin.gridfilters"],[[Ext.util.StoreHolder.prototype.mixinId||Ext.util.StoreHolder.$className,Ext.util.StoreHolder]],[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.grid.header.Container.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)}},disable:function(){var a=this.lockable;a.lockedGrid.headerCt.disable();a.normalGrid.headerCt.disable()},enable:function(){var a=this.lockable;a.lockedGrid.headerCt.enable();a.normalGrid.headerCt.enable()}},1,0,["component","box","container","headercontainer"],{component:true,box: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.ownerGrid=a.ownerGrid;d.ownerGrid.view=d;d.navigationModel=a.locked.xtype==="treepanel"?new Ext.tree.NavigationModel(d):new Ext.grid.NavigationModel(d);a.locked.viewConfig.bindStore=Ext.emptyFn;a.normal.viewConfig.bindStore=d.subViewBindStore;a.normal.viewConfig.isNormalView=a.locked.viewConfig.isLockedView=true;a.locked.viewConfig.beforeLayout=a.normal.viewConfig.beforeLayout=d.beforeLayout;a.locked.viewConfig.navigationModel=a.normal.viewConfig.navigationModel=d.navigationModel;d.lockedGrid=d.ownerGrid.lockedGrid=Ext.ComponentManager.create(a.locked);d.lockedView=c=d.lockedGrid.getView();if(d.ownerGrid.shrinkWrapLocked){d.lockedGrid.width+=(Ext.num(c.getSelectionModel().headerWidth,0)+(d.lockedGrid.getVisibleColumnManager().getColumns().length?1:0))}d.selModel=a.normal.viewConfig.selModel=c.getSelectionModel();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.ownerGrid.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.ownerGrid.on({render:d.onPanelRender,scope:d});d.loadingText=b.loadingText;d.loadingCls=b.loadingCls;d.loadingUseMsg=b.loadingUseMsg;d.all=b.all;d.bindStore(b.dataSource,true,"dataSource")},subViewBindStore:function(b){var a=this.getSelectionModel();if(b!==null){b=this.store}a.bindStore(b);a.bindComponent(this)},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.ownerGrid,msg:c.loadingText,msgCls:c.loadingCls,useMsg:c.loadingUseMsg,store:c.ownerGrid.store};c.el=c.ownerGrid.getTargetEl();c.rendered=true;c.initFocusableEvents();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.ownerGrid},getVisibleColumnManager:function(){return this.ownerGrid.getVisibleColumnManager()},getTopLevelVisibleColumnManager:function(){return this.ownerGrid.getVisibleColumnManager()},getGridColumns:function(){return this.getVisibleColumnManager().getColumns()},getEl:function(a){return this.getViewForColumn(a).getEl()},getCellSelector:function(){return this.normalView.getCellSelector()},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 d=this,a=d.lockedView;d.relayingOperation=true;a[c].apply(a,b);a=d.normalView;a[c].apply(a,b);d.relayingOperation=false},getSelectionModel:function(){return this.normalView.getSelectionModel()},getNavigationModel:function(){return this.navigationModel},getStore:function(){return this.ownerGrid.store},onBindStore:function(a,b,d){var c=this;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,beginupdate:a.onBeginUpdate,endupdate:a.onEndUpdate}},onBeginUpdate:function(){Ext.suspendLayouts();this.relayFn("onBeginUpdate",arguments);Ext.resumeLayouts(true)},onEndUpdate:function(){Ext.suspendLayouts();this.relayFn("onEndUpdate",arguments);Ext.resumeLayouts(true)},onDataRefresh:function(){Ext.suspendLayouts();this.relayFn("onDataRefresh",arguments);Ext.resumeLayouts(true)},onReplace:function(){Ext.suspendLayouts();this.relayFn("onReplace",arguments);Ext.resumeLayouts(true)},onAdd:function(){Ext.suspendLayouts();this.relayFn("onAdd",arguments);Ext.resumeLayouts(true)},onRemove:function(){Ext.suspendLayouts();this.relayFn("onRemove",arguments);Ext.resumeLayouts(true)},onUpdate:function(){var a=this.normalGrid.view;Ext.suspendLayouts();this.relayFn("onUpdate",arguments);if(a.hasVariableRowHeight()&&a.bufferedRenderer){Ext.on({afterlayout:a.bufferedRenderer.refreshSize,scope:a.bufferedRenderer,single:true})}Ext.resumeLayouts(true)},refresh:function(){Ext.suspendLayouts();this.relayFn("refresh",arguments);Ext.resumeLayouts(true)},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 a=this.ownerGrid.down(">tablepanel:not(hidden)>tableview");if(a){a.focus()}},focusRow:function(c){var a,b=this.getNavigationModel().lastFocused;a=b?b.view:this.normalView;a.focusRow(c)},focusCell:function(a){a.view.focusCell(a)},onRowFocus:function(){this.relayFn("onRowFocus",arguments)},isVisible:function(a){return this.ownerGrid.isVisible(a)},getFocusEl:function(){var a,b=this.getNavigationModel().lastFocused;a=b?b.view:this.normalView;return a.getFocusEl()},getCellInclusive: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.getCellInclusive(d,b)}else{return this.lockedView.getCellInclusive(d,b)}},getHeaderByCell:function(a){if(a){return this.getVisibleColumnManager().getHeaderById(a.getAttribute("data-columnId"))}return false},onRowSelect:function(){this.relayFn("onRowSelect",arguments)},onRowDeselect:function(){this.relayFn("onRowDeselect",arguments)},onCellSelect:function(a){a.column.getView().onCellSelect({record:a.record,column:a.column})},onCellDeselect:function(a){a.column.getView().onCellDeselect({record:a.record,column:a.column})},getCellByPosition:function(e,c){var d=this,a=e.view,b=e.column;if(a===d){a=b.getView()}return a.getCellByPosition(e,c)},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)},ensureVisible:function(){var a=this.normalView;a.ensureVisible.apply(a,arguments)},disable:function(){this.relayFn("disable",arguments)},enable:function(){this.relayFn("enable",arguments)},addElListener:function(){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 a=this;a.bindStore(null,false,"dataSource");a.isDestroyed=true;a.clearListeners();Ext.destroy(a.loadMask,a.navigationModel,a.selModel)}},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.util.Focusable.prototype.mixinId||Ext.util.Focusable.$className,Ext.util.Focusable]],[Ext.grid.locking,"View",Ext.grid,"LockingView"],function(){this.borrow(Ext.Component,["up"]);this.borrow(Ext.view.AbstractView,["doFirstRefresh","applyFirstRefresh"]);this.borrow(Ext.view.Table,["cellSelector","selectedCellCls","selectedItemCls"])}));(Ext.cmd.derive("Ext.grid.locking.Lockable",Ext.Base,{alternateClassName:"Ext.grid.Lockable",syncRowHeight:true,headerCounter:0,scrollDelta:40,lockedGridCls:"x-grid-inner-locked",normalGridCls:"x-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.focusable=false;this.lockable=true;this.hasView=true;var v=this,k=Ext.getScrollbarSize(),o=k.width,d=v.store=Ext.StoreManager.lookup(v.store),c=v.lockedViewConfig,u=v.normalViewConfig,m=Ext.Object,h,j,s,g,l,b,e,r,t=v.viewConfig,a=t&&t.loadMask,n=(a!==undefined)?a:v.loadMask,p=v.bufferedRenderer,q=o>0&&Ext.supports.touchScroll!==2;h=v.constructLockableFeatures();v.features=null;j=v.constructLockablePlugins();v.plugins=j.topPlugins;s={id:v.id+"-locked",isLocked:true,bufferedRenderer:p,ownerGrid:v,ownerLockable:v,xtype:v.determineXTypeToCreate(true),store:d,reserveScrollbar:q,scrollable:{indicators:{x:true,y:false}},scrollerOwner:false,animate:false,border:false,cls:v.lockedGridCls,isLayoutRoot:function(){return this.floatedFromCollapse||v.normalGrid.floatedFromCollapse},features:h.lockedFeatures,plugins:j.lockedPlugins};g={id:v.id+"-normal",isLocked:false,bufferedRenderer:p,ownerGrid:v,ownerLockable:v,xtype:v.determineXTypeToCreate(),store:d,reserveScrollbar:v.reserveScrollbar,scrollerOwner:false,border:false,cls:v.normalGridCls,isLayoutRoot:function(){return this.floatedFromCollapse||v.lockedGrid.floatedFromCollapse},features:h.normalFeatures,plugins:j.normalPlugins};v.addCls("x-grid-locked");Ext.copyTo(g,v,v.bothCfgCopy,true);Ext.copyTo(s,v,v.bothCfgCopy,true);Ext.copyTo(g,v,v.normalCfgCopy,true);Ext.copyTo(s,v,v.lockedCfgCopy,true);Ext.apply(g,v.normalGridConfig);Ext.apply(s,v.lockedGridConfig);for(l=0;l<v.normalCfgCopy.length;l++){delete v[v.normalCfgCopy[l]]}for(l=0;l<v.lockedCfgCopy.length;l++){delete v[v.lockedCfgCopy[l]]}v.addStateEvents(["lockcolumn","unlockcolumn"]);b=v.processColumns(v.columns||[],s);s.columns=b.locked;if(!s.columns.items.length){s.hidden=true}g.columns=b.normal;if(!g.columns.items.length){g.hidden=true}g.flex=1;s.viewConfig=c=(c?m.chain(c):{});g.viewConfig=u=(u?m.chain(u):{});c.loadingUseMsg=false;c.loadMask=false;if(q){c.margin="0 -"+o+" 0 0"}u.loadMask=false;Ext.applyIf(c,t);Ext.applyIf(u,t);if(!v.initialConfig.layout){v.layout={type:"hbox",align:"stretch"}}v.getLayout();if(v.layout.type==="border"){if(v.split){s.split=true}if(!s.region){s.region="west"}if(!g.region){g.region="center"}v.addCls("x-grid-locked-split")}if(!(v.layout instanceof Ext.layout.container.Box)){v.split=false}v.view=new Ext.grid.locking.View({loadMask:n,locked:s,normal:g,ownerGrid:v});s=v.lockedGrid;g=v.normalGrid;g.getView().getScrollable().addPartner(s.getView().getScrollable(),"y");if(k.height&&Ext.supports.touchScroll!==2){s.on({afterlayout:v.afterLockedViewLayout,scope:v});s.getView().getOverflowStyle()}e=s.headerCt;r=g.headerCt;if(q){e.reserveScrollbar=false}v.headerCt=v.view.headerCt=new Ext.grid.locking.HeaderContainer(v);e.lockedCt=true;e.lockableInjected=true;r.lockableInjected=true;e.on({add:v.delaySyncLockedWidth,remove:v.delaySyncLockedWidth,columnshow:v.delaySyncLockedWidth,columnhide:v.delaySyncLockedWidth,sortchange:v.onLockedHeaderSortChange,columnresize:v.delaySyncLockedWidth,scope:v});r.on({add:v.delaySyncLockedWidth,remove:v.delaySyncLockedWidth,columnshow:v.delaySyncLockedWidth,columnhide:v.delaySyncLockedWidth,sortchange:v.onNormalHeaderSortChange,scope:v});v.modifyHeaderCt();v.items=[s];if(v.split){v.addCls("x-grid-locked-split");v.items[1]={xtype:"splitter"}}v.items.push(g);v.relayHeaderCtEvents(e);v.relayHeaderCtEvents(r);v.storeRelayers=v.relayEvents(d,["filterchange","groupchange"]);v.gridRelayers=v.relayEvents(g,["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=!(d.width||d.flex),a;if(!n.hasOwnProperty("shrinkWrapLocked")){n.shrinkWrapLocked=o}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}m.constructing=true;for(h=0,k=g.length;h<k;++h){e=g[h];if(!e.isComponent){e=m.applyDefaults(e);e.initOwnerCt=m;e=m.lookupComponent(e);delete e.initOwnerCt}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}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 e=this,b=e.lockedGrid,d=e.normalGrid,l=b.getView(),c=d.getView(),a=Ext.getScrollbarSize().height,k=(l.scrollFlags.x&&b.headerCt.tooNarrow?a:0),j=(c.scrollFlags.x&&d.headerCt.tooNarrow?a:0),g=c.getScrollable(),h=l.getScrollable();if(k!==j){if(k){g.setX("scroll");h.setX(true)}else{h.setX("scroll");g.setX(true)}}else{h.setX(j?"scroll":true);g.setX(true)}},ensureLockedVisible:function(){this.lockedGrid.ensureVisible.apply(this.lockedGrid,arguments);this.normalGrid.ensureVisible.apply(this.normalGrid,arguments)},syncRowHeights:function(){if(!this.isDestroyed){var d=this,b=d.normalGrid.getView(),c=d.lockedGrid.getView(),g=b.syncRowHeightBegin(),a=c.syncRowHeightBegin(),e;b.syncRowHeightMeasure(g);c.syncRowHeightMeasure(a);b.syncRowHeightFinish(g,a);c.syncRowHeightFinish(a,g);e=b.getScrollY();c.setScrollY(e)}},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(a,c,h){var g=this.getMenu(),d=g.down("#unlockItem"),e=g.down("#lockItem"),b=d.prev();if(h.lockable===false){b.hide();d.hide();e.hide()}else{b.show();d.show();e.show();if(!d.initialConfig.disabled){d.setDisabled(h.lockable===false)}if(!e.initialConfig.disabled){e.setDisabled(!h.isLockable())}}},getMenuItems:function(g,c){var h=this,j=h.unlockText,a=h.lockText,k="x-hmenu-unlock",b="x-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}},delaySyncLockedWidth:function(){var b=this,a=b.syncLockedWidthTask;if(!a){a=b.syncLockedWidthTask=new Ext.util.DelayedTask(b.syncLockedWidth,b)}a.delay(1)},syncLockedWidth:function(){var g=this,c=g.lockedGrid,e=c.view,d=e.el.dom,j=g.normalGrid,h=c.getVisibleColumnManager().getColumns().length,a=j.getVisibleColumnManager().getColumns().length,b=g.syncLockedWidthTask;if(b){b.cancel()}Ext.suspendLayouts();if(a){j.show();if(h){if(g.shrinkWrapLocked&&!c.headerCt.forceFit){delete c.flex;c.setWidth(c.headerCt.getTableWidth()+c.el.getBorderWidth("lr"))}c.addCls(g.lockedGridCls);c.show();if(g.split){g.child("splitter").show()}}else{c.getView().clearViewEl(true);c.hide();if(g.split){g.child("splitter").hide()}}if(Ext.supports.touchScroll!==2&&Ext.Component.pendingLayouts){e.getScrollable().setX(true)}g.ignoreMousewheel=e.scrollFlags.y}else{j.hide();d.style.borderBottomWidth="0";c.flex=1;delete c.width;c.removeCls(g.lockedGridCls);c.show();g.ignoreMousewheel=true}Ext.resumeLayouts(true);return[h,a]},onLockedHeaderSortChange:Ext.emptyFn,onNormalHeaderSortChange:Ext.emptyFn,lock:function(g,m,e){var j=this,h=j.normalGrid,c=j.lockedGrid,d=h.view,n=c.view,l=h.headerCt,k,a,b;g=g||l.getMenu().activeHeader;b=g.hasFocus;e=e||c.headerCt;a=g.ownerCt;if(!g.isLockable()){return}if(g.flex){g.width=g.getWidth();g.flex=null}Ext.suspendLayouts();if(c.hidden){c.show()}d.blockRefresh=n.blockRefresh=true;a.remove(g,false);g.locked=true;if(Ext.isDefined(m)){e.insert(m,g)}else{e.add(g)}d.blockRefresh=n.blockRefresh=false;k=j.syncLockedWidth();if(k[0]){c.getView().refreshView()}if(k[1]){h.getView().refreshView()}Ext.resumeLayouts(true);if(b){g.focus()}j.fireEvent("lockcolumn",j,g)},unlock:function(e,l,d){var h=this,g=h.normalGrid,b=h.lockedGrid,c=g.view,m=b.view,k=b.headerCt,j,a;if(!Ext.isDefined(l)){l=0}e=e||k.getMenu().activeHeader;a=e.hasFocus;d=d||g.headerCt;Ext.suspendLayouts();c.blockRefresh=m.blockRefresh=true;e.ownerCt.remove(e,false);e.locked=false;d.insert(l,e);c.blockRefresh=m.blockRefresh=false;j=h.syncLockedWidth();if(j[0]){b.getView().refreshView()}if(j[1]){g.getView().refreshView()}Ext.resumeLayouts(true);if(a){e.focus()}h.fireEvent("unlockcolumn",h,e)},reconfigureLockable:function(b,c){var d=this,h=d.store,g=d.lockedGrid,e=d.normalGrid,a;if(c){g.reconfiguring=e.reconfiguring=true;g.headerCt.removeAll();e.headerCt.removeAll();c=d.processColumns(c,g);g.headerCt.add(c.locked.items);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.view.blockRefresh=e.view.blockrefresh=true;g.bindStore(b);a=g.view;a.store=b;if(!a.dataSource.isFeatureStore){a.dataSource=b}if(a.bufferedRenderer){a.bufferedRenderer.bindStore(b)}e.bindStore(b);a=e.view;a.store=b;if(!a.dataSource.isFeatureStore){a.dataSource=b}if(a.bufferedRenderer){a.bufferedRenderer.bindStore(b)}d.view.store=b;d.view.bindStore(e.view.dataSource,false,"dataSource");g.view.blockRefresh=e.view.blockrefresh=false}g.getView().refreshView();e.getView().refreshView()},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(){var b=this,a=b.syncLockedWidthTask;if(a){a.cancel();b.syncLockedWidthTask=null}Ext.destroy(b.view,b.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,loadId:0,init:function(c){var d=this,a=c.view,b={scroll:d.onViewScroll,resize:d.onViewResize,refresh:d.onViewRefresh,columnschanged:d.checkVariableRowHeight,boxready:d.onViewBoxReady,scope:d,destroyable:true},e=a.initialConfig;if(c.isTree||(c.ownerLockable&&c.ownerLockable.isTree)){a.blockRefresh=false;if(e&&e.loadMask===undefined){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:"onReconfigure",scope:d,destroyable:true});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,beforeload:d.onBeforeStoreLoad,load:d.onStoreLoad,destroyable:true});d.store=c}if(d.view.componentLayout.layoutCount){delete d.viewSize;if(c.isBufferedStore){c.setViewSize(d.viewSize)}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},onBeforeStoreLoad:function(){var a=this.view;if(a&&a.rendered){a.el.dom.style.pointerEvents="none"}this.disable()},onStoreLoad:function(){var a=this.view;if(a&&a.rendered){a.el.dom.style.pointerEvents=""}this.enable()},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){this.refreshSize()},onViewBoxReady:function(a){this.refreshScroller(a,this.scrollHeight)},onViewRefresh:function(b,c){var d=this,e=b.all,a;d.checkVariableRowHeight();if(!b.componentLayoutCounter&&(b.headerCt.down("{flex}")||d.variableRowHeight)){b.on({boxready:Ext.Function.pass(d.onViewRefresh,[b,c],d),single:true});return}if(!b.hasOwnProperty("rowHeight")&&e.getCount()){delete d.rowHeight}d.refreshSize();if(d.refreshing){return}if(d.scrollTop!==b.getScrollY()){d.onViewScroll()}else{if(!d.hasOwnProperty("bodyTop")){d.bodyTop=e.startIndex*d.rowHeight;b.setScrollY(d.bodyTop)}d.setBodyTop(d.bodyTop);a=b.getHeight();if(e.getCount()&&a>0){d.onViewResize(b,null,a);if(c&&(e.getCount()!==c.length)){c.length=0;c.push.apply(c,d.store.getRange(e.startIndex,e.endIndex))}}}},refreshSize:function(){var c=this,a=c.view,d=c.scrollHeight,b;b=c.getScrollHeight();if(a.all.endIndex===(c.store.getCount())-1){c.stretchView(a,c.scrollHeight=c.bodyTop+a.body.dom.offsetHeight)}else{if(b!==d){c.stretchView(a,b)}}},onViewResize:function(c,e,a,b,h){var g=this,d;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}},onWrappedColumnWidthChange:function(b,d){var c=this,a=c.view;if(c.store.getCount()&&c.bodyTop){c.refreshSize();c.setViewSize(Math.ceil(a.getHeight()/c.rowHeight)+c.trailingBufferZone+c.leadingBufferZone);if(c.viewSize>=c.store.getCount()){c.setBodyTop(0)}else{if(d>b&&c.bodyTop+a.body.dom.offsetHeight-1>c.scrollHeight){c.setBodyTop(Math.max(0,c.scrollHeight-a.body.dom.offsetHeight))}else{if(c.bodyTop>c.scrollTop||c.bodyTop+a.body.dom.offsetHeight<c.scrollTop+a.getHeight(true)){c.setBodyTop(c.scrollTop-c.trailingBufferZone*c.rowHeight)}}}}},stretchView:function(b,a){var e=this,d=e.store.getCount(),c,g;if(e.scrollTop>a){e.position=e.scrollTop=a-b.body.dom.offsetHeight;b.setScrollY(e.scrollTop)}if(e.bodyTop>a){b.body.translate(null,e.bodyTop=e.position)}if(b.touchScroll){if(b.getScrollable()){e.refreshScroller(b,a)}else{if(!e.pendingScrollerRefresh){b.on({boxready:function(){e.refreshScroller(b,a);e.pendingScrollerRefresh=false},single:true});e.pendingScrollerRefresh=true}}}if(!Ext.supports.touchScroll||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=""}}},refreshScroller:function(c,b){var a=c.getScrollable();a.setSize({x:c.headerCt.getTableWidth(),y:b})},setViewSize:function(o,b){var n=this,r=n.store,p=n.view,s=p.all,e=s.getCount(),a,d,l=n.view.lockingPartner&&n.view.lockingPartner.bufferedRenderer,q=e-o,h,g,c,k,m;if(l&&!b&&l.view.componentLayoutCounter){if(l.viewSize>o){o=l.viewSize}else{l.setViewSize(o,true)}}q=e-o;if(q){n.scrollTop=p.getScrollY();n.viewSize=o;if(r.isBufferedStore){r.setViewSize(o)}if(e){m=r.getCount();a=s.startIndex;d=Math.min(a+o-1,m-1);if(!(a===s.startIndex&&d===s.endIndex)){if(l){l.disable()}if(q<0){if(m>e){r.getRange(s.endIndex+1,d,{callback:function(j,t){k=p.doAdd(j,t);p.fireEvent("itemadd",j,t,k)}})}}else{a=s.endIndex-(q-1);d=s.endIndex;s.removeRange(a,d,true);if(p.hasListeners.itemremove){c=r.getRange(a,d);for(h=d,g=c.length-1;g>=0;--h,--g){p.fireEvent("itemremove",c[g],h,n)}}}if(l){l.enable()}}}}return o},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||a.defaultViewSize)-1)}else{return[]}},onReplace:function(k,l,e,g){var h=this,j=h.view,n=j.all,a,d=n.getCount(),c=l+e.length-1,m=g.length-e.length,b=m*h.rowHeight;if(d&&c<n.startIndex){n.moveBlock(m);h.refreshSize();a=n.startIndex;if(m>0){h.handleViewScroll(-1)}if(n.startIndex===a){if(n.startIndex){h.setBodyTop(h.bodyTop+=b);j.suspendEvent("scroll");j.scrollBy(0,b);j.resumeEvent("scroll");h.position=h.scrollTop=j.getScrollY()}}else{j.suspendEvent("scroll");j.scrollBy(0,(a-n.startIndex)*h.rowHeight);j.resumeEvent("scroll")}j.refreshSize(n.getCount()!==d);return}if(d&&l>n.endIndex){h.refreshSize();if(m>0){h.handleViewScroll(1)}j.refreshSize(n.getCount()!==d);return}if(l<n.startIndex&&c<n.endIndex){h.refreshView(n.startIndex-e.length+g.length);return}if(l<n.startIndex&&c<=n.endIndex&&b){j.suspendEvent("scroll");j.setScrollY(h.position=h.scrollTop+=b);j.resumeEvent("scroll")}h.refreshView()},scrollTo:function(s,d){var b=arguments,w=this,p=w.view,u=p.el.dom,n=w.store,y=n.getCount(),m,x,g,e,r,o,c,v,l=0,t,q,k,h,j,a;if(d&&typeof d==="object"){t=d.select;q=d.focus;h=d.highlight;k=d.animate;j=d.callback;a=d.scope}else{t=b[1];j=b[2];a=b[3]}if((r=p.dataSource.groupingFeature)&&(r.collapsible)){if(s.isEntity){c=s}else{c=p.store.getAt(Math.min(Math.max(s,0),p.store.getCount()-1))}o=r.getGroup(c);if(o.isCollapsed){r.expand(o.getGroupKey());y=n.getCount()}s=r.indexOf(c)}else{if(s.isEntity){c=s;s=n.indexOf(c);if(s===-1){return}}else{s=Math.min(Math.max(s,0),y-1);c=n.getAt(s)}}if(c&&(g=p.getNode(c))){p.getScrollable().scrollIntoView(g,null,k,h);w.onViewScroll();if(t){p.selModel.select(c)}if(q){p.getNavigationModel().setPosition(c,0)}if(j){j.call(a||w,s,c,g)}return}if(s<p.all.startIndex){v=-1;m=Math.max(Math.min(s-(Math.floor((w.leadingBufferZone+w.trailingBufferZone)/2)),y-w.viewSize+1),0);x=Math.min(m+w.viewSize-1,y-1)}else{v=1;x=Math.min(s+(Math.floor((w.leadingBufferZone+w.trailingBufferZone)/2)),y-1);m=Math.max(x-(w.viewSize-1),0)}e=Math.max(m*w.rowHeight,0);n.getRange(m,x,{callback:function(B,C,A){var z=p.getScrollable();w.renderRange(C,A,true,true);c=n.data.getRange(s,s+1)[0];g=p.getNode(c);if(!g){return}p.body.translate(null,w.bodyTop=e);p.suspendEvent("scroll");if(v===1){l=u.clientHeight-g.offsetHeight}w.position=w.scrollTop=Math.min(Math.max(0,e-p.body.getOffsetsTo(g)[1])-l,z.getSize().y-u.clientHeight);z.scrollIntoView(g,null,k,h);p.resumeEvent("scroll");if(t){p.selModel.select(c)}if(q){p.getNavigationModel().setPosition(c,0)}if(j){j.call(a||w,s,c,g)}}})},onViewScroll:function(){var d=this,b=d.store,a=(b.getCount()),c,g,e=d.scrollTop=d.view.getScrollY();if(!(d.disabled||a<d.viewSize)){c=e-d.position;g=c>0?1:-1;if(Math.abs(c)>=20||(g!==d.lastScrollDirection)){d.lastScrollDirection=g;d.handleViewScroll(d.lastScrollDirection)}}},handleViewScroll:function(h){var e=this,g=e.view.all,a=e.store,j=e.viewSize,c=(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){e.loadId++}else{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,j=c.viewSize,e=c.view.all,a=c.store,h=a.getCount(),b=h-1,d;if(h<j){g=0;d=b}else{g=Math.max(0,Math.min(g==null?e.startIndex:g,b-(j-c.leadingBufferZone)+1));d=Math.min(g+j-1,b);if(d-g+1>j){g=d-j+1}}a.getRange(g,d,{callback:c.doRefreshView,scope:c})},doRefreshView:function(o,h,c,e){var t=this,n=t.view,d=n.getNavigationModel(),s=d.getPosition(),l=n.all,r=l.startIndex,g=l.endIndex,j,a,b=l.getCount(),m,k=h!==l.startIndex,q,p;if(n.refreshCounter){if(s&&s.view===n){s=s.clone();d.setPosition()}else{s=null}n.refreshing=t.refreshing=true;n.clearViewEl(true);n.refreshCounter++;if(o.length){m=n.doAdd(o,h);if(k){j=l.item(r,true);a=l.item(g,true);if(j){p=-j.offsetTop}else{if(a){p=a.offsetTop+a.offsetHeight}}if(p){t.setBodyTop(t.bodyTop+=p);n.suspendEvent("scroll");n.setScrollY(t.position=t.scrollTop=t.bodyTop?t.scrollTop+p:0);n.resumeEvent("scroll")}else{t.setBodyTop(t.bodyTop=q=h*t.rowHeight);n.suspendEvent("scroll");n.setScrollY(t.position=t.scrollTop=Math.max(q-t.rowHeight*(q<t.bodyTop?t.leadingBufferZone:t.trailingBufferZone,0)));n.resumeEvent("scroll")}}}t.refreshSize();n.refreshSize(l.getCount()!==b);n.fireEvent("refresh",n,o);if(s){n.cellFocused=true;d.setPosition(s,null,null,null,true)}n.headerCt.setSortState();n.refreshNeeded=n.refreshing=t.refreshing=false}else{n.refresh()}},renderRange:function(h,a,g,c){var d=this,e=d.view.all,b=d.store;if(!(h===e.startIndex&&a===e.endIndex)){if(b.rangeCached(h,a)){d.cancelLoad();if(d.synchronousRender||g){d.onRangeFetched(null,h,a,null,c)}else{if(!d.renderTask){d.renderTask=new Ext.util.DelayedTask(d.onRangeFetched,d,null,false)}d.renderTask.delay(1,null,null,[null,h,a,null,c])}}else{d.attemptLoad(h,a)}}},onRangeFetched:function(n,g,e,d,o){var v=this,m=v.view,c,l=m.all,h,u=0,r,j,k=v.view.lockingPartner&&v.view.lockingPartner.bufferedRenderer,s,b,t,a,q,p=v.variableRowHeight;if(m.isDestroyed){return}if(n){v.scrollTop=v.view.getScrollY()}else{n=v.store.getRange(g,e);if(!n){return}}r=g*v.rowHeight;if(g<l.startIndex&&e>l.endIndex){t=l.startIndex-g;m.clearViewEl(true);s=m.doAdd(n,g);m.fireEvent("itemadd",n,g,s);for(q=0;q<t;q++){u-=s[q].offsetHeight}j=v.bodyTop+u}else{if(v.teleported||g>l.endIndex||e<l.startIndex){j=r;if(p){a=v.scrollTop<v.position?v.leadingBufferZone:v.trailingBufferZone;if(g>a){j=v.scrollTop-v.rowHeight*a}}m.clearViewEl(true);v.teleported=false}if(!l.getCount()){s=m.doAdd(n,g);m.fireEvent("itemadd",n,g,s)}else{if(e>l.endIndex){h=Math.max(g-l.startIndex,0);if(p){u=l.item(l.startIndex+h,true).offsetTop}s=l.scroll(Ext.Array.slice(n,l.endIndex+1-g),1,h,g,e);if(p){j=v.bodyTop+u}else{j=r}}else{h=Math.max(l.endIndex-e,0);c=l.startIndex;s=l.scroll(Ext.Array.slice(n,0,l.startIndex-g),-1,h,g,e);if(p){j=v.bodyTop-l.item(c,true).offsetTop;if(!l.startIndex){if(j){m.setScrollY(v.position=(v.scrollTop-=j));j=0}}else{if(j<0){u=l.startIndex*v.rowHeight;m.setScrollY(v.position=(v.scrollTop+=u));j=v.bodyTop+u}}}else{j=r}}}v.position=v.scrollTop}j=Math.max(Math.floor(j),0);if(m.positionBody){v.setBodyTop(j)}if(k&&!k.disabled&&!o){k.scrollTop=k.position=v.scrollTop;b=k.onRangeFetched(null,g,e,d,true);if(k.bodyTop!==j){k.setBodyTop(j)}k.view.setScrollY(v.scrollTop);if(p){v.syncRowHeights(s,b)}}return s},syncRowHeights:function(g,a){var j=this,h=g.length,l=a.length,k=[],b=[],d=Ext.grid.locking.RowSynchronizer,c,e;if(h!==l){g=j.view.all.slice();a=j.view.lockingPartner.all.slice();h=l=g.length}for(c=0;c<h;c++){k[c]=e=new d(j.view,g[c]);e.measure()}for(c=0;c<l;c++){b[c]=e=new d(j.view.lockingPartner,a[c]);e.measure()}for(c=0;c<h;c++){k[c].finish(b[c]);b[c].finish(k[c])}},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.getCount())-1){e.stretchView(b,e.scrollHeight=e.bodyTop+a.dom.offsetHeight-1)}else{if(e.bodyTop+a.dom.offsetHeight-1>e.scrollHeight){e.stretchView(b,e.scrollHeight+=((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.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.doAttemptLoad(c,a)}},cancelLoad:function(){if(this.loadTask){this.loadTask.cancel()}},doAttemptLoad:function(c,a){var b=this;this.store.getRange(c,a,{loadId:++b.loadId,callback:function(e,h,d,g){if(g.loadId===b.loadId){this.onRangeFetched(e,h,d,g)}},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,b.stretcher)}},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(a){return this.grid.resolveListenerScope(a)},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();b.view.getNavigationModel().addKeyBindings({enter:b.onEnterKey,esc:b.onEscKey,scope:b})},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})},onColumnAdd:function(a,b){this.initFieldAccessors(b)},onColumnMove:Ext.emptyFn,onEnterKey:function(j){var g=this,c=g.grid,b,a,k,d,h;if(g.editing){h=Ext.getCmp(j.getTarget().getAttribute("componentId"));if(!(h&&h.isPickerField&&h.isExpanded)){g.completeEdit()}}else{if(j.view===g.view){b=c.getView().getNavigationModel();k=b.getPosition();if(k){a=k.record;d=k.column}if(a&&d){g.startEdit(a,d)}}}},onEscKey:function(b){if(this.editing){var a=Ext.getCmp(b.getTarget().getAttribute("componentId"));if(!(a&&a.isPickerField&&a.isExpanded)){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.disabled||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.visibleColumnManager,j,k,b,d,l;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.getRootHeaderCt().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}l=new Ext.grid.CellContext(j).setAll(j,b,d,e,c);l.grid=a;l.store=j.dataSource;l.field=c.dataIndex;l.value=l.originalValue=e.get(c.dataIndex);l.row=k;l.node=j.getNode(e);return l},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){d=e.editor||e.field}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 b=this,a=b.grid;b.mon(a,{columnresize:b.cancelEdit,columnmove:b.cancelEdit,scope:b})},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(b,g,c){var e=this,a,h,j,d;if(!c){e.preventBeforeCheck=true;c=Ext.grid.plugin.Editing.prototype.startEdit.apply(this,arguments);delete e.preventBeforeCheck;if(c===false){return false}}if(c&&c.view.isVisible(true)){b=c.record;g=c.column;h=(g&&g.getEditor(b))&&!(e.beforeEdit(c)===false||e.fireEvent("beforeedit",e,c)===false||c.cancel);if(h){j=e.getActiveEditor();d=e.getEditor(b,g);if(j){a=d===j;e.completeEdit(!!d);if(e.editing){return false}}}else{return false}e.context=c;c.view.scrollCellIntoView(c.view.getCell(b,g));if(d){if(a){d.editing=false;if(Ext.isIE){d.selectSameEditor=true}}e.showEditor(d,c,c.value);if(j&&!a){j.hide()}return true}return false}},showEditor:function(e,a,k){var h=this,d=a.record,j=a.view,c=a.column,b=j.getSelectionModel(),g;if(!c.up(h.view.ownerCt)){return h.lockingPartner.showEditor(e,h.lockingPartner.getEditingContext(d,c),k)}h.setEditingContext(a);h.setActiveEditor(e);h.setActiveRecord(d);h.setActiveColumn(c);g=b.getSelectionMode();if(!b.isCellSelected(j,d,c)&&(g!=="MULTI"||!b.getSelection().length||(b.getSelection().length===1&&b.isSelected(d)))){b.selectByPosition({row:d,column:c,view:j},g==="MULTI")}if(!j.cellFocused){j.getNavigationModel().setPosition(a,null,null,null,true)}j.getNavigationModel().setPosition();e.startEdit(j.getCell(d,c),k,a);h.editing=true;h.scroll=j.el.getScroll()},completeEdit:function(a){var b=this.getActiveEditor();if(b){b.completeEdit(a)}},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("x-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.getRefOwner().getSelectionModel();return d.onEditorTab(a.editingPlugin,b)}},onEditComplete:function(d,j,c){var h=this,g=h.getActiveColumn(),e=h.context,b,a;if(g){b=e.view;a=e.record;h.setActiveEditor(null);h.setActiveColumn(null);h.setActiveRecord(null);e.value=j;if(!h.validateEdit()){h.editing=false;return}if(!a.isEqual(j,c)){a.set(g.dataIndex,j);e.rowIdx=b.indexOf(a)}h.fireEvent("edit",h,e);h.editing=false}},cancelEdit:function(){var e=this,c=e.context,b,h,a,g,d=e.getActiveEditor();if(d){e.setActiveEditor(null);e.setActiveColumn(null);e.setActiveRecord(null);b=c.view;h=b.getSelectionModel();g=h.getSelectionMode()==="MULTI"&&(h.getSelection().length>1||!h.isSelected(a));if(d.field){e.context.value=("editedValue" in d)?d.editedValue:d.getValue();d.cancelEdit()}c.view.getNavigationModel().deferSetPosition(100,c,null,null,null,g);Ext.grid.plugin.Editing.prototype.cancelEdit.apply(this,arguments);return}return true},startEditByPosition:function(b){var d=this,a=d.grid.getColumnManager(),c;if(!b.isCellContext){b.column=d.grid.getColumnManager().getColumns()[b.column];b.record=d.view.dataSource.getAt(b.row)}c=a.getHeaderIndex(b.column);b.column=a.getVisibleHeaderClosestToIndex(c);return d.startEdit(b.record,b.column)}},0,0,0,0,["plugin.cellediting"],0,[Ext.grid.plugin,"CellEditing"],0));(Ext.cmd.derive("Ext.plugin.AbstractClipboard",Ext.plugin.Abstract,{cachedConfig:{formats:{text:{get:"getTextData",put:"putTextData"}}},config:{memory:null,source:"system",system:"text"},destroy:function(){var a=this,c=a.keyMap,b=a.shared;if(c){a.keyMap=Ext.destroy(c);if(!--b.counter){b.textArea=Ext.destroy(b.textArea)}}else{a.renderListener=Ext.destroy(a.renderListener)}a.callParent()},init:function(a){var b=this;if(a.rendered){this.finishInit(a)}else{b.renderListener=a.on({render:function(){b.renderListener=null;b.finishInit(a)},destroyable:true,single:true})}},privates:{shared:{counter:0,data:null,textArea:null},applyMemory:function(a){a=this.applySource(a);return a},applySource:function(a){if(a){if(Ext.isString(a)){a=[a]}else{if(a.length===0){a=null}}}return a||null},doCutCopy:function(e,b){var d=this,a=d.allFormats||d.syncFormats(),h=d.getData(b,a),j=d.getMemory(),c=d.getSystem(),g;d.shared.data=j&&h;if(c){g=h[c];if(a[c]<3){delete h[c]}d.setClipboardData(g)}},doPaste:function(c,b){var a=this.getFormats();this[a[c].put](b,c)},finishInit:function(a){var b=this;b.keyMap=new Ext.util.KeyMap({target:a.el,binding:[{ctrl:true,key:"x",fn:b.onCut,scope:b},{ctrl:true,key:"c",fn:b.onCopy,scope:b},{ctrl:true,key:"v",fn:b.onPaste,scope:b}]});++b.shared.counter;a.on({destroy:"destroy",scope:b})},getData:function(d,j){var e=this,a=e.getFormats(),g,c,b,h;if(Ext.isString(j)){g=e[a[j].get](j,d)}else{g={};h=[];if(j){for(b in j){h.push(b)}}else{h=Ext.Object.getAllKeys(a)}for(c=h.length;c-->0;){g[b]=e[a[b].get](b,d&&!c)}}return g},getHiddenTextArea:function(){var b=this.shared,a=b.textArea;if(!a){b.textArea=a=Ext.getBody().createChild({tag:"textarea",tabIndex:-1,style:{position:"absolute",top:"-1000px",width:"1px"}})}return a},onCopy:function(a){this.doCutCopy(a,false)},onCut:function(a){this.doCutCopy(a,true)},onPaste:function(){var d=this,a=d.shared.data,e=d.getSource(),b,g,c;if(e){for(b=0,g=e.length;b<g;++b){c=e[b];if(c==="system"){c=d.getSystem();d.pasteClipboardData(c);break}else{if(a&&(c in a)){d.doPaste(c,a[c]);break}}}}},pasteClipboardData:function(d){var c=this,b,a;if(window.clipboardData&&clipboardData.getData){c.doPaste(d,clipboardData.getData("text"))}else{a=Ext.Element.getActiveElement();b=c.getHiddenTextArea().dom;b.value="";b.focus();Ext.defer(function(){if(a){a.focus()}c.doPaste(d,b.value);b.value=""},100,c)}},setClipboardData:function(d){if(window.clipboardData&&clipboardData.setData){clipboardData.setData("text",d)}else{var c=this,b=c.getHiddenTextArea().dom,a=Ext.Element.getActiveElement();b.value=d;b.focus();b.select();Ext.defer(function(){b.value="";if(a){a.focus()}},50)}},syncFormats:function(){var d=this,e={},g=d.getMemory(),c=d.getSystem(),a,b;if(c){e[c]=1}if(g){for(a=g.length;a-->0;){b=g[a];e[b]=e[b]?3:2}}return d.allFormats=e},updateMemory:function(){this.allFormats=null},updateSystem:function(){this.allFormats=null}}},0,0,0,0,0,0,[Ext.plugin,"AbstractClipboard"],0));(Ext.cmd.derive("Ext.grid.plugin.Clipboard",Ext.plugin.AbstractClipboard,{formats:{cell:{get:"getCells"},html:{get:"getCellData"},raw:{get:"getCellData"}},getCellData:function(n,b){var k=this.getCmp(),g=k.getSelectionModel(),h=[],m=n==="raw",e=n==="text",q,o,c,l,a,d,p,j;g.getSelected().eachCell(function(r){j=r.column.getView();d=r.record;if(a!==d){a=d;h.push(p=[])}l=r.column.dataIndex;if(m){c=d.data[l]}else{q=j.all.item(r.rowIdx);if(!q){q=Ext.fly(j.createRowElement(d,r.rowIdx))}o=q.down(r.column.getCellInnerSelector());c=o.dom.innerHTML;if(e){c=Ext.util.Format.stripTags(c)}}p.push(c);if(b&&l){d.set(l,null)}});return Ext.util.TSV.encode(h)},getCells:function(j,b){var g=this.getCmp(),d=g.getSelectionModel(),e=[],h,a,c,k;d.getSelected().eachCell(function(l){c=l.record;if(a!==c){a=c;e.push(k={model:c.self,fields:[]})}h=l.column.dataIndex;k.fields.push({name:h,value:c.data[h]});if(b&&h){c.set(h,null)}});return e},getTextData:function(b,a){return this.getCellData(b,a)},putCellData:function(g,n){var p=Ext.util.TSV.decode(g),q,r=p.length,o=r?p[0].length:0,h,l,k=this.getCmp().getView(),a=k.dataSource.getCount()-1,e=k.getVisibleColumnManager().getColumns().length-1,c=k.getNavigationModel(),j=c.getPosition(),m,b,d={};if(j){j=new Ext.grid.CellContext(k).setPosition(j.record,j.column)}else{j=new Ext.grid.CellContext(k).setPosition(0,0)}b=j.colIdx;for(h=0;h<r;h++){q=p[h];for(l=0;l<o;l++){m=j.column.dataIndex;if(m){switch(n){case"raw":d[m]=q[l];break;case"text":d[m]=q[l];break;case"html":break}}if(j.colIdx===e){break}j.setColumn(j.colIdx+1)}j.record.set(d);if(j.rowIdx===a){break}j.setPosition(j.rowIdx+1,b)}},putTextData:function(a,b){this.putCellData(a,b)}},0,0,0,0,["plugin.clipboard"],0,[Ext.grid.plugin,"Clipboard"],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()}(arguments.callee.$previous||Ext.plugin.Abstract.prototype.enable).call(this)},disable:function(){var a=this;if(a.dragZone){a.dragZone.lock()}if(a.dropZone){a.dropZone.lock()}(arguments.callee.$previous||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.call(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})},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.call(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,bodyBefore:false,rowBodyTrSelector:".x-grid-rowbody-tr",rowBodyHiddenCls:"x-grid-row-body-hidden",rowCollapsedCls:"x-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,bodyBefore:c.bodyBefore,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.grid=b}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,h=n.getScrollable(),q=n,c=n.getNode(b),e=Ext.fly(c),d,j=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(j)[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);j=d.down(m.rowBodyTrSelector,true);Ext.fly(j)[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,j);if(n.getSizeModel().height.shrinkWrap||a){n.refreshSize(true)}if(h){if(p){p.refreshSize()}else{h.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);b.grid=c.normalGrid}else{c.lock(b.expanderColumn,0)}}},onColumnLock:function(c,a){var b=this,e,d;c=b.grid.ownerLockable;e=c.lockedGrid.visibleColumnManager.getColumns();if(e.length===1){b.grid=d=c.lockedGrid;d.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:"x-grid-cell-special",innerCls:"x-grid-cell-inner-row-expander",renderer:function(){return'<div class="x-grid-row-expander" role="presentation"></div>'},processEvent:function(j,g,c,l,h,k,d){if(k.getTarget(".x-grid-row-expander")){if(j==="click"){b.toggleRow(l,d);return b.selectRowOnExpand}}},isLocked:function(){return a&&(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:"x-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={type:"cellmodel",onCellSelect:function(b){b.column=a.valueColumn;b.colIdx=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.grid.Panel.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.getConfigProp(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.setConfigProp(a,"type",g)}}}},getConfigProp:function(e,d,a){var c=this.sourceConfig[e],b;if(c){b=c[d]}return b||a},setConfigProp: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.column=b;k.colIdx=b.getVisibleIndex();return k},getCellEditor:function(a,d){var g=this,h=a.get(g.nameField),j=a.get(g.valueField),c=g.getConfigProp(h,"editor"),b=g.getConfigProp(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.setConfigProp(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.grid.Panel.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"],["component","box","container","panel","tablepanel","gridpanel","grid","propertygrid"],{component:true,box:true,container:true,panel:true,tablepanel:true,gridpanel:true,grid:true,propertygrid: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:"x-grid-property-name",nameColumnInnerCls:"x-grid-cell-inner-property-name",constructor:function(b,a){var c=this;c.grid=b;c.store=a;Ext.grid.header.Container.prototype.constructor.call(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,scope:c,renderer:c.renderProp,itemId:b.nameField,menuDisabled:true,tdCls:c.nameColumnCls,innerCls:c.nameColumnInnerCls},{header:c.valueText,scope:c,renderer:c.renderCell,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.getAt(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.getConfigProp(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.getConfigProp(a,"displayName",a)}},1,0,["component","box","container","headercontainer"],{component:true,box: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.call(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.call(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.grid.selection.Selection",Ext.Base,{constructor:function(a){this.view=a.ownerGrid.view}},1,0,0,0,0,0,[Ext.grid.selection,"Selection"],0));(Ext.cmd.derive("Ext.grid.selection.Cells",Ext.grid.selection.Selection,{type:"cells",isCells:true,clone:function(){var b=this,a=new b.self(b.view);if(b.startCell){a.startCell=b.startCell.clone();a.endCell=b.endCell.clone()}return a},contains:function(a){var b;if(!a||!a.isCellContext){return false}if(this.startCell){b=this.getRowRange();if(a.rowIdx>=b[0]&&a.rowIdx<=b[1]){b=this.getColumnRange();return(a.colIdx>=b[0]&&a.colIdx<=b[1])}}return false},eachRow:function(c,b){var e=this,g=e.getRowRange(),a=new Ext.grid.CellContext(e.view),d;for(d=g[0];d<=g[1];d++){a.setRow(d);if(c.call(b||e,a.record)===false){return}}},eachColumn:function(d,c){var e=this,a=e.getColumnRange(),b=new Ext.grid.CellContext(e.view),g;for(g=a[0];g<=a[1];g++){b.setColumn(g);if(d.call(c||e,b.column,g)===false){return}}},eachCell:function(d,c){var g=this,h=g.getRowRange(),a=g.getColumnRange(),b=new Ext.grid.CellContext(g.view),e,j;for(e=h[0];e<=h[1];e++){b.setRow(e);for(j=a[0];j<=a[1];j++){b.setColumn(j);if(d.call(c||g,b,j,e)===false){return}}}},getFirstRowIndex:function(){return this.startCell?Math.min(this.startCell.rowIdx,this.endCell.rowIdx):0},getLastRowIndex:function(){return this.startCell?Math.max(this.startCell.rowIdx,this.endCell.rowIdx):-1},getFirstColumnIndex:function(){return this.startCell?Math.min(this.startCell.colIdx,this.endCell.colIdx):0},getLastColumnIndex:function(){return this.startCell?Math.max(this.startCell.colIdx,this.endCell.colIdx):-1},privates:{clear:function(){var b=this,a=b.view;b.eachCell(function(c){a.onCellDeselect(c)});b.startCell=b.endCell=null},setRangeStart:function(a){this.startCell=(this.endCell=a.clone()).clone();this.view.onCellSelect(a)},setRangeEnd:function(b){var l=this,j,h,c,k,g,o,a,e,m=l.view,p=m.all,n=new Ext.grid.CellContext(m),d=m.getVisibleColumnManager().getColumns().length-1;l.endCell=b.clone();j=l.getRange();h=l.lastRange||j;c=Math.max(Math.min(j[0][1],h[0][1]),p.startIndex);k=Math.min(Math.max(j[1][1],h[1][1]),p.endIndex);g=Math.min(j[0][0],h[0][0]);o=Math.min(Math.max(j[1][0],h[1][0]),d);for(a=c;a<=k;a++){for(e=g;e<=o;e++){n.setPosition(a,e);if(a<j[0][1]||a>j[1][1]||e<j[0][0]||e>j[1][0]){m.onCellDeselect(n)}else{m.onCellSelect(n)}}}l.lastRange=j},getRange:function(){return[[this.getFirstColumnIndex(),this.getFirstRowIndex()],[this.getLastColumnIndex(),this.getLastRowIndex()]]},getRangeSize:function(){return this.getCount()},getCount:function(){var a=this.getRange();return(a[1][0]-a[0][0]+1)*(a[1][1]-a[0][1]+1)},selectAll:function(){var b=this,a=b.view;b.clear();b.setRangeStart(new Ext.grid.CellContext(a).setPosition(0,0));b.setRangeEnd(new Ext.grid.CellContext(a).setPosition(a.dataSource.getCount()-1,a.getVisibleColumnManager().getColumns().length-1))},isAllSelected:function(){var b=this.rangeStart,a=this.rangeEnd;if(b){if(!b.colIdx&&!b.rowIdx){return a.colIdx===a.view.getVisibleColumnManager().getColumns().length-1&&a.rowIdx===a.view.dataSource.getCount-1}}return false},getColumnRange:function(){return[this.getFirstColumnIndex(),this.getLastColumnIndex()]},getRowRange:function(){return[this.getFirstRowIndex(),this.getLastRowIndex()]}}},0,0,0,0,0,0,[Ext.grid.selection,"Cells"],0));(Ext.cmd.derive("Ext.grid.selection.Columns",Ext.grid.selection.Selection,{type:"columns",isColumns:true,clone:function(){var c=this,a=new c.self(c.view),b=c.selectedColumns;if(b){a.selectedColumns=Ext.Array.slice(b)}return a},eachRow:function(c,b){var a=this.selectedColumns;if(a&&a.length){this.view.dataSource.each(c,b||this)}},eachColumn:function(h,g){var j=this,b=j.view,e=j.selectedColumns,a,d,c=new Ext.grid.CellContext(b);if(e){a=e.length;for(d=0;d<a;d++){c.setColumn(e[d]);if(h.call(g||j,c.column,c.colIdx)===false){return false}}}},eachCell:function(h,g){var j=this,b=j.view,e=j.selectedColumns,a,d,c=new Ext.grid.CellContext(b);if(e){a=e.length;b.dataSource.each(function(k){c.setRow(k);for(d=0;d<a;d++){c.setColumn(e[d]);if(h.call(g||j,c,c.colIdx,c.rowIdx)===false){return false}}})}},contains:function(b){var a=this.selectedColumns;if(b&&b.isColumn&&a&&a.length){return Ext.Array.contains(a,b)}return false},getCount:function(){var a=this.selectedColumns;return a?a.length:0},getColumns:function(){return this.selectedColumns||[]},privates:{add:function(a){Ext.Array.include((this.selectedColumns||(this.selectedColumns=[])),a);this.refreshColumns(a)},clear:function(){var a=this,b=a.selectedColumns;if(b&&b.length){a.selectedColumns=[];a.refreshColumns.apply(a,b)}},isAllSelected:function(){var a=this.selectedColumns;return a&&a.length===this.view.ownerGrid.getVisibleColumnManager().getColumns().length},refreshColumns:function(b){var j=this,k=j.view,l=k.all,a,c=arguments,h=c.length,e,g=new Ext.grid.CellContext(k),d=[];if(k.rendered){for(e=0;e<h;e++){d[e]=j.contains(c[e])}for(a=l.startIndex;a<=l.endIndex;a++){g.setRow(a);for(e=0;e<h;e++){g.setColumn(c[e]);if(d[e]){k.onCellSelect(g)}else{k.onCellDeselect(g)}}}}},remove:function(a){if(this.selectedColumns){Ext.Array.remove(this.selectedColumns,a);this.refreshColumns(a)}},selectAll:function(){var a=this;a.clear();a.selectedColumns=a.view.getVisibleColumnManager().getColumns();a.refreshColumns.apply(a,a.selectedColumns)}}},0,0,0,0,0,0,[Ext.grid.selection,"Columns"],0));(Ext.cmd.derive("Ext.grid.selection.Rows",Ext.grid.selection.Selection,{type:"rows",isRows:true,clone:function(){var b=this,a=new b.self(b.view);if(b.selectedRecords){a.selectedRecords=b.selectedRecords.clone()}if(b.rangeStart){a.setRangeStart(b.rangeStart);a.setRangeEnd(b.rangeEnd)}return a},add:function(a){var b=this.selectedRecords||(this.selectedRecords=this.createRecordCollection());if(!b.byInternalId.get(a.internalId)){b.add(a);this.view.onRowSelect(a)}},remove:function(a){var b=this;if(b.selectedRecords&&b.selectedRecords.byInternalId.get(a.internalId)){b.selectedRecords.remove(a);b.view.onRowDeselect(a);b.allSelected=false;return true}},contains:function(c){if(!c||!c.isModel){return false}var e=this,b=false,g=e.selectedRecords,a,d;if(e.allSelected){e.add(c);return true}if(g){b=!!g.byInternalId.get(c.internalId)}if(!b&&e.rangeStart!=null){d=e.getRange();a=e.view.dataSource.indexOf(c);b=a>=d[0]&&a<=d[1]}return b},getCount:function(){var e=this,g=e.selectedRecords,a=g?g.getCount():0,c=e.getRange(),d,b=e.view.dataSource;for(d=c[0];d<=c[1];d++){if(!g||!g.byInternalId.get(b.getAt(d).internalId)){a++}}return a},getRecords:function(){var a=this.selectedRecords;return a?a.getRange():[]},selectAll:function(){var a=this;a.clear();a.setRangeStart(0);a.setRangeEnd(a.view.dataSource.getCount()-1);a.addRange();a.allSelected=true},eachRow:function(b,a){var c=this.selectedRecords;if(c){c.each(b,a||this)}},eachColumn:function(e,d){var c=this.view.getVisibleColumnManager().getColumns(),a=c.length,b;if(this.selectedRecords){for(b=0;b<a;b++){if(e.call(this||d,c[b],b)===false){return}}}},eachCell:function(k,o){var h=this,m=h.selectedRecords,l=h.view,b=l.ownerGrid.getVisibleColumnManager().getColumns(),n,e,c,a,g,p,d=false;if(b){n=b.length;a=new Ext.grid.CellContext(l);if(m){m.each(function(j){a.setRow(j);for(e=0;e<n;e++){a.setColumn(b[e]);if(k.call(o||h,a,a.colIdx,a.rowIdx)===false){d=true;return false}}})}if(!d&&h.rangeStart!=null){g=h.getRange();h.view.dataSource.getRange(g[0],g[1],{callback:function(j){p=j.length;for(e=0;!d&&e<p;e++){a.setRow(j[e]);for(c=0;!d&&c<n;c++){a.setColumn(b[c]);if(k.call(o||h,a,a.colIdx,a.rowIdx)===false){d=true}}}}})}}},destroy:function(){this.selectedRecords=Ext.destroy(this.selectedRecords)},privates:{clear:function(){var b=this,a=b.view;b.allSelected=false;if(b.selectedRecords){b.eachRow(function(c){a.onRowDeselect(c)});b.selectedRecords.clear()}},isAllSelected:function(){return !!this.allSelected},setRangeStart:function(a){this.allSelected=false;this.rangeStart=this.rangeEnd=a;this.view.onRowSelect(a)},setRangeEnd:function(c){var h=this,g,e,a,m,j=h.view,k=j.dataSource,l=j.all,d=h.selectedRecords,b;h.rangeEnd=c;g=h.getRange();e=h.lastRange||g;for(a=Math.max(Math.min(g[0],e[0]),l.startIndex),c=Math.min(Math.max(g[1],e[1]),l.endIndex);a<=c;a++){m=l.item(a);if(a<g[0]||a>g[1]){if(d&&(b=d.byInternalId.get(k.getAt(a).internalId))){d.remove(b)}j.onRowDeselect(a)}else{j.onRowSelect(a)}}h.lastRange=g},getRange:function(){var b=this.rangeStart,a=this.rangeEnd;if(b==null){return[0,-1]}else{if(b<=a){return[b,a]}}return[a,b]},getRangeSize:function(){var a=this.getRange();return a[1]-a[0]+1},createRecordCollection:function(){var a=new Ext.util.Collection({rootProperty:"data",extraKeys:{byInternalId:{rootProperty:false,property:"internalId"}}});return a},addRange:function(){var c=this,a,b;if(c.rangeStart!=null){a=c.getRange();b=c.selectedRecords||(c.selectedRecords=c.createRecordCollection());c.view.dataSource.getRange(a[0],a[1],{callback:function(d){b.add.apply(b,d)}});c.setRangeStart(c.lastRange=null)}}}},0,0,0,0,0,0,[Ext.grid.selection,"Rows"],0));(Ext.cmd.derive("Ext.grid.selection.SpreadsheetModel",Ext.selection.Model,{isSpreadsheetModel:true,config:{columnSelect:{$value:false,lazy:true},cellSelect:{$value:true,lazy:true},rowSelect:{$value:true,lazy:true},dragSelect:{$value:true,lazy:true},selected:null},checkboxSelect:false,checkboxColumnIndex:0,showHeaderCheckbox:true,checkboxHeaderWidth:24,rowNumbererHeaderWidth:46,columnSelectCls:"x-ssm-column-select",rowNumbererHeaderCls:"x-ssm-row-numberer-hd",rowNumbererTdCls:Ext.grid.column.RowNumberer.prototype.tdCls+" x-ssm-row-numberer-cell",checkerOnCls:"x-grid-hd-checker-on",tdCls:"x-grid-cell-special x-grid-cell-row-checker",bindComponent:function(a){var c=this,b,d;if(c.view!==a){if(c.view){c.navigationModel=null;Ext.destroy(c.viewListeners,c.navigationListeners)}c.view=a;if(a){c.getCellSelect();d=a.ownerGrid.lockedGrid;if(d){c.hasLockedHeader=true;c.onViewCreated(d,d.getView())}else{a.grid.on({viewcreated:c.onViewCreated,scope:c,single:true})}c.gridListeners=a.ownerGrid.on({columnschanged:c.onColumnsChanged,scope:c,destroyable:true});b=c.getViewListeners();b.scope=c;b.destroyable=true;c.viewListeners=a.on(b);c.navigationModel=a.getNavigationModel();c.navigationListeners=c.navigationModel.on({navigate:c.onNavigate,scope:c,destroyable:true});if(c.getColumnSelect()){a.ownerGrid.addCls(c.columnSelectCls)}}}},getCheckboxHeaderConfig:function(){var a=this,b=a.showHeaderCheckbox!==false;return{isCheckerHd:b,text:"&#160;",clickTargetName:"el",width:a.checkboxHeaderWidth,sortable:false,draggable:false,resizable:false,hideable:false,menuDisabled:true,dataIndex:"",tdCls:a.tdCls,cls:b?"x-column-header-checkbox ":"",defaultRenderer:a.checkboxRenderer.bind(a),editRenderer:"&#160;",locked:a.hasLockedHeader}},checkboxRenderer:function(){return'<div class="x-grid-row-checker" role="presentation">&#160;</div>'},onHeaderClick:function(d,g,c){var a=this,b=a.selected;if(g===a.numbererColumn||g===a.checkColumn){c.stopEvent();if(!b||!b.isAllSelected()){a.selectAll(d.view)}else{a.deselectAll()}a.updateHeaderState()}else{if(a.columnSelect){if(a.isColumnSelected(g)){a.deselectColumn(g)}else{a.selectColumn(g,c.ctrlKey)}}}},updateHeaderState:function(){var e=this,c=e.view.dataSource,j=c.getCount(),b=e.views,g=e.selected,h=g&&g.isRows&&!c.isBufferedStore&&j>0&&(j===g.getCount()),d=e.checkColumn,a=e.checkerOnCls;if(b&&b.length){if(d){if(h){d.addCls(a)}else{d.removeCls(a)}}}},onReconfigure:function(c,a,b){if(b){this.addCheckbox(this.views[0])}},getCellContext:function(a,b){return new Ext.grid.CellContext(this.view.ownerGrid.getView()).setPosition(a,b)},select:function(b,m,l){var h=this,a=h.selected,j=h.view,k=j.dataSource,g,d,e,c=false;if(!a||!a.isRows||a.view!==j){h.resetSelection(true);a=h.selected=new Ext.grid.selection.Rows(j)}else{if(!m){a.clear()}}if(!Ext.isArray(b)){b=[b]}g=b.length;for(d=0;d<g;d++){e=b[d];if(typeof e==="number"){e=k.getAt(e)}if(!a.contains(e)){a.add(e);c=true}}if(c){h.updateHeaderState();if(l){h.fireSelectionChange()}}},deselect:function(b,k){var h=this,a=h.selected,j=h.view.dataSource,g,d,e,c=false;if(a&&a.isRows){if(!Ext.isArray(b)){b=[b]}g=b.length;for(d=0;d<g;d++){e=b[d];if(typeof e==="number"){e=j.getAt(e)}c=c||a.remove(e)}}if(c){h.updateHeaderState();if(!k){h.fireSelectionChange()}}},selectCells:function(g,e,b){var c=this,a=c.view.ownerGrid.view,d;g=g.isCellContext?g.clone():new Ext.grid.CellContext(a).setPosition(g);e=e.isCellContext?e.clone():new Ext.grid.CellContext(a).setPosition(e);c.resetSelection(true);c.selected=d=new Ext.grid.selection.Cells(g.view);d.setRangeStart(g);d.setRangeEnd(e);if(!b){c.fireSelectionChange()}},selectAll:function(c){var d=this,e=d.selected,a,b=d.view;if(d.rowSelect){if(!e||!e.isRows){d.resetSelection(true);d.selected=e=new Ext.grid.selection.Rows(b)}a=true}else{if(d.cellSelect){if(!e||!e.isCells){d.resetSelection(true);d.selected=e=new Ext.grid.selection.Cells(b)}a=true}else{if(d.columnSelect){if(!e||!e.isColumns){d.resetSelection(true);d.selected=e=new Ext.grid.selection.Columns(b)}a=true}}}if(a){e.selectAll();d.updateHeaderState();if(!c){d.fireSelectionChange()}}},deselectAll:function(a){var b=this.selected;if(b&&b.getCount()){b.clear();if(!a){this.fireSelectionChange()}}},selectRows:function(j,e,c){var g=this,h=g.selected,b=h&&!h.isRows,a=j.length,d;if(!e||b){g.resetSelection(true)}if(!b){g.selected=h=new Ext.grid.selection.Rows(g.view)}for(d=0;d<a;d++){h.add(j[d])}if(!c){g.fireSelectionChange()}},isSelected:function(a){return this.isRowSelected(a)},selectColumn:function(d,c,b){var e=this,g=e.selected,a=d.getView();if(!g||!g.isColumns||g.view!==a.ownerGrid.view){e.resetSelection(true);e.selected=g=new Ext.grid.selection.Columns(a)}if(!g.contains(d)){if(!c){g.clear()}g.add(d);e.updateHeaderState();if(!b){e.fireSelectionChange()}}},deselectColumn:function(b,a){var c=this,d=c.getSelected();if(d&&d.isColumns&&d.contains(b)){d.remove(b);c.updateHeaderState();if(!a){c.fireSelectionChange()}}},getSelection:function(){var a=this.selected;if(a&&a.isRows){return a.getRecords()}return[]},destroy:function(){var b=this,a=b.scrollEls;Ext.destroy(b.gridListeners,b.viewListeners,b.selected,b.navigationListeners);if(a){Ext.dd.ScrollManager.unregister(a)}b.selected=b.gridListeners=b.viewListeners=b.selectionData=b.navigationListeners=b.scrollEls=null;Ext.selection.Model.prototype.destroy.call(this)},privates:{getViewListeners:function(){return{beforerefresh:this.onBeforeViewRefresh,keyup:{element:"el",fn:this.onViewKeyUp,scope:this}}},onViewKeyUp:function(b){var a=this.selected;if(b.keyCode===b.SHIFT&&a&&a.isRows&&a.getRangeSize()){a.addRange()}},onColumnsChanged:function(){var e=this.selected,g,d,h,c,a,b;if(e&&e.isCells){a=e.view;b=new Ext.grid.CellContext(a);g=e.getRowRange();d=a.getVisibleColumnManager().getColumns().length;for(c=g[0];c<=g[1];c++){b.setRow(c);for(h=0;h<d;h++){b.setColumn(h);a.onCellDeselect(b)}}}},onBeforeViewRefresh:function(a){var b=this.selected;if(a.refreshCounter){if(b&&b.isCells){this.resetSelection()}}},resetSelection:function(a){var b=this.selected;if(b){b.clear();if(!a){this.fireSelectionChange()}}},onViewCreated:function(b,a){var c=this,e=a.ownerGrid,g=a.headerCt,d=e.shrinkWrapLocked;if(!e.lockable||a.isLockedView){if(c.getRowSelect()&&!g.down("rownumberer")){c.numbererColumn=g.add(0,{xtype:"rownumberer",width:c.rowNumbererHeaderWidth,editRenderer:"&#160;",tdCls:c.rowNumbererTdCls,cls:c.rowNumbererHeaderCls,locked:c.hasLockedHeader});if(d){b.width+=c.numbererColumn.width}}if(c.checkboxSelect){c.addCheckbox(a,true);c.mon(a.ownerGrid,"reconfigure",c.onReconfigure,c);if(d){b.width+=c.checkColumn.width}}}g.sortOnClick=!c.getColumnSelect();if(c.getDragSelect()){a.on("render",c.onViewRender,c,{single:true})}},onViewRender:function(a){var c=this,b=a.getEl();b.ddScrollConfig={vthresh:50,hthresh:50,frequency:300,increment:100};Ext.dd.ScrollManager.register(b);(c.scrollEls||(c.scrollEls=[])).push(b);a.on("cellmousedown",c.handleMouseDown,c);if(a.lockingPartner){a.lockingPartner.on("cellmousedown",c.handleMouseDown,c)}},handleMouseDown:function(n,c,m,h,k,a,j){var l=this,b=l.selected,g=j.position.column,d,o;if(j.button||j.shiftKey||j.altKey||j.pointerType==="touch"){return}if(g){d=g===l.checkColumn;if(g===l.numbererColumn||d||!l.cellSelect){if(l.rowSelect){if(b&&b.isRows){if(!j.ctrlKey&&!d){b.clear()}}else{if(b){b.clear()}b=l.selected=new Ext.grid.selection.Rows(n)}o=true}}else{if(b){b.clear()}if(!b||!b.isCells){b=l.selected=new Ext.grid.selection.Cells(n)}o=true}l.lastOverRecord=l.lastOverColumn=null;Ext.getBody().on("mouseup",l.onMouseUp,l,{single:true,view:b.view});if(o){b.view.el.on("mousemove",l.onMouseMove,l,{view:b.view})}}},onMouseMove:function(h,j,a){var m=this,o=a.view,g,b,p=h.getTarget(o.cellSelector),d=a.view.getHeaderByCell(p),l=m.selected,n,k,c;if(d){g=o.getRecord(p.parentNode);b=m.store.indexOf(g);k=g!==m.lastOverRecord;c=d!==m.lastOverColumn;if(k||c){n=m.getCellContext(g,d)}if(l.isRows){if(k){if(m.lastOverRecord){l.setRangeEnd(b)}else{l.setRangeStart(b)}}}else{if(k||c){if(m.lastOverRecord){l.setRangeEnd(n)}else{l.setRangeStart(n)}}}if(k||c){o.getNavigationModel().setPosition(new Ext.grid.CellContext(d.getView()).setPosition(g,d))}m.lastOverColumn=d;m.lastOverRecord=g}},onMouseUp:function(g,d,c){var b=this,a=c.view;if(a&&!a.isDestroyed){a.el.un("mousemove",b.onMouseMove,b);if(b.selected.isRows){b.selected.addRange()}b.fireSelectionChange()}},addCheckbox:function(a,b){var c=this,d=c.checkboxColumnIndex,e=a.headerCt;if(d!==false){if(d==="first"){d=0}else{if(d==="last"){d=e.getColumnCount()}}c.checkColumn=e.add(d,c.getCheckboxHeaderConfig())}if(b!==true){a.refresh()}},onNavigate:function(e){var g=this,j=e.view.ownerGrid.view,c=e.record,a=g.selected,h=new Ext.grid.CellContext(j).setPosition(c,e.column),d=e.keyEvent,k=d.getKey(),b;if(d.ctrlKey&&(k===d.UP||k===d.LEFT||k===d.RIGHT||k===d.DOWN)){return}if(!(g.cellSelect||g.columnSelect||g.rowSelect)||!e.record||d.type==="mousedown"){return}if(d.ctrlKey&&d.keyCode===d.A){if(!a||a.getCount()<2){g.selectAll()}else{g.deselectAll()}g.updateHeaderState();return}if(d.shiftKey){if(h.column===g.numbererColumn||h.column===g.checkColumn||!g.cellSelect||(a&&a.isRows)){if(g.rowSelect){if(!a||!a.isRows||a.view!==j){g.resetSelection(true);a=g.selected=new Ext.grid.selection.Rows(j)}if(!a.getRangeSize()){a.setRangeStart(e.previousRecordIndex||0)}a.setRangeEnd(e.recordIndex);b=true}}else{if(g.cellSelect){if(!a||!a.isCells||a.view!==j){g.resetSelection(true);a=g.selected=new Ext.grid.selection.Cells(j)}if(!a.getRangeSize()){a.setRangeStart(e.previousPosition||g.getCellContext(0,0))}a.setRangeEnd(h);b=true}}}else{if(h.column===g.numbererColumn||h.column===g.checkColumn||!g.cellSelect){if(g.rowSelect){if(!a||!a.isRows||a.view!==j){g.resetSelection(true);a=g.selected=new Ext.grid.selection.Rows(j)}if(d.ctrlKey||h.column===g.checkColumn){if(a.contains(c)){a.remove(c)}else{a.add(c)}}else{a.clear();a.add(c)}b=true}}else{if(g.cellSelect){if(!a||!a.isCells||a.view!==j){g.resetSelection(true);g.selected=a=new Ext.grid.selection.Cells(j)}else{a.clear()}a.setRangeStart(h);b=true}}}if(b){if(a.isRows){g.updateHeaderState()}g.fireSelectionChange()}},isRowSelected:function(a){var b=this,c=b.selected;if(c&&c.isRows){a=Ext.isNumber(a)?b.store.getAt(a):a;return c.contains(a)}else{return false}},isColumnSelected:function(a){var b=this,c=b.selected;if(c&&c.isColumns){return c.contains(a)}else{return false}},isCellSelected:function(a,g,c){var d=this,b,e=d.selected;a=a.ownerGrid.view;if(e){if(e.isColumns){if(typeof c==="number"){c=a.getVisibleColumnManager().getColumns()[c]}return e.contains(c)}if(e.isCells){b=new Ext.grid.CellContext(a).setPosition({row:g,column:c});return e.contains(b)}}return false},applySelected:function(a){return a},updateSelected:function(g,h){var c,e,b,d,a;if(h){h.clear()}if(g&&g.getCount()){c=g.view;if(g.isRows){g.eachRow(c.onRowSelect,c)}else{if(g.isColumns){e=g.getColumns();b=e.length;if(b){a=new Ext.grid.CelContext(c);c.store.each(function(j){a.setRow(j);for(d=0;d<b;d++){a.setColumn(e[d]);c.onCellSelect(a)}})}}else{if(g.isCells){g.eachCell(c.onCellSelect,c)}}}}},updateRowSelect:function(c){var b=this,d=b.selected,a=b.view;if(a&&a.rendered){if(a.isNormalView){a=a.lockingPartner}if(c){if(b.checkColumn){b.checkColumn.show()}if(b.numbererColumn){b.numbererColumn.show()}else{b.numbererColumn=a.headerCt.add(0,{xtype:"rownumberer",width:b.rowNumbererHeaderWidth,editRenderer:"&#160;",tdCls:b.rowNumbererTdCls,cls:b.rowNumbererHeaderCls,locked:b.hasLockedHeader})}}else{if(b.checkColumn){b.checkColumn.hide()}if(b.numbererColumn){b.numbererColumn.hide()}}if(!c&&d&&d.isRows){d.clear()}}},updateColumnSelect:function(g){var d=this,e=d.selected,b=d.views,a=b?b.length:0,c;for(c=0;c<a;c++){b[c].headerCt.sortOnClick=!g}if(!g&&e&&e.isColumns){e.clear()}if(g){d.view.ownerGrid.addCls(d.columnSelectCls)}else{d.view.ownerGrid.removeCls(d.columnSelectCls)}},updateCellSelect:function(a){var b=this,c=b.selected;if(!a&&c&&c.isCells){c.clear()}},fireSelectionChange:function(){var a=this.view.ownerGrid;a.fireEvent("selectionchange",a,this.selected)},onIdChanged:function(a,e,d,b){var c=this.selected;if(c&&c.isRows&&c.selectedRecords){c.selectedRecords.updateKey(e,d)}},onPageAdd:function(d,c,e){var j=this.selected,a=e.length,g,b,h=j.selectedRecords;if(j&&j.isRows&&h){for(g=0;g<a;g++){b=e[g];if(h.get(b.id)){h.replace(b)}}}},refresh:function(){var a=this.getSelected();if(a&&a.isRows){Ext.selection.Model.prototype.refresh.call(this)}},onStoreAdd:function(){var a=this.getSelected();if(a&&a.isRows){Ext.selection.Model.prototype.onStoreAdd.apply(this,arguments);this.updateHeaderState()}},onStoreClear:function(){this.resetSelection()},onStoreLoad:function(){var a=this.getSelected();if(a&&a.isRows){Ext.selection.Model.prototype.onStoreLoad.apply(this,arguments);this.updateHeaderState()}},onStoreRefresh:function(){var a=this.selected;if(a&&a.isRows&&a.selectedRecords){this.updateSelectedInstances(a.selectedRecords)}this.updateHeaderState()},onStoreRemove:function(){var a=this.getSelected();if(a&&a.isRows){Ext.selection.Model.prototype.onStoreRemove.apply(this,arguments)}}}},0,0,0,0,["selection.spreadsheet"],0,[Ext.grid.selection,"SpreadsheetModel"],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);u=t.target;b=t.el;t.id=u.id;t.flushedProps={};t.props=g={};t.styles={};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)}},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("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);g=Ext.fx.Manager.getFxQueue(p.el.id)[0];m.$layoutAnim=g;g.on({afteranimate:function(){delete m.$layoutAnim;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},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=o=(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)}}},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,columnsChanged:a,rowHeights:a,viewOverflowY: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.up(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},isDescendant:function(a,b){if(a.isContainer){for(var d=b.ownerCt;d;d=d.ownerCt){if(d===a){return true}}}return false},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.isLayoutChild(c)){a=false;break}if(c.isLayoutChild(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.isFloating&&d.up(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.isLayoutChild(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&&!a.collapsed){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]}}},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}},beginLayout:function(b){var a=this.owner.legend;Ext.layout.component.Body.prototype.beginLayout.call(this,b);if(a){b.legendContext=b.context.getCmp(a)}},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=this.lastComponentSize;b.setContentWidth((a&&a.contentWidth)||this.defaultCollapsedWidth)}}},finishedLayout:function(c){var a=this.owner,b=c.restoreMinHeight;Ext.layout.component.Body.prototype.finishedLayout.apply(this,arguments);if(b){a.minHeight=b}},calculateOwnerWidthFromContentWidth:function(c,a){var b=c.legendContext;if(b){a=Math.max(a,b.getProp("width"))}return Ext.layout.component.Body.prototype.calculateOwnerWidthFromContentWidth.call(this,c,a)},calculateOwnerHeightFromContentHeight:function(d,c){var a=d.getBorderInfo(),b=d.legendContext;return d.getProp("contentHeight")+d.getPaddingInfo().height+(Ext.isIE8?d.bodyContext.getPaddingInfo().top:0)+(b?b.getProp("height"):a.top)+a.bottom},publishInnerHeight:function(d,a){var c=d.legendContext,b=0;if(c){b=c.getProp("height")}if(b===undefined){this.done=false}else{Ext.layout.component.Body.prototype.publishInnerHeight.call(this,d,a-b)}},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:"x-abs-layout-ct",itemCls:"x-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.container.Anchor.prototype.isItemLayoutRoot.apply(this,arguments)},isItemShrinkWrap:function(a){return true},beginLayout:function(b){var a=this,c=a.getTarget();Ext.layout.container.Anchor.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.container.Anchor.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:"x-accordion-layout-ct",itemCls:["x-box-item","x-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.VBox.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("x-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="x-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.container.VBox.prototype.getItemsRenderTree.apply(this,arguments)},renderItems:function(a,b){this.beforeRenderItems(a);Ext.layout.container.VBox.prototype.renderItems.apply(this,arguments)},configureItem:function(a){Ext.layout.container.VBox.prototype.configureItem.apply(this,arguments);a.ignoreHeaderBorderManagement=true;a.animCollapse=false;if(this.fill){a.flex=1}},beginLayout:function(a){Ext.layout.container.VBox.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("x-accordion-hd");if(a){g.removeCls("x-accordion-hd-sibling-expanded")}else{g.addCls("x-accordion-hd-sibling-expanded")}if(b+1==d&&h.collapsed){g.addCls("x-accordion-hd-last-collapsed")}else{g.removeCls("x-accordion-hd-last-collapsed")}a=h.collapsed}},onBeforeComponentExpand:function(j){var d=this,a=d.owner,h=d.multi,g=!h&&!d.animate&&d.activeOnTop,c,b,e;if(!d.processing){d.processing=true;b=a.deferLayouts;a.deferLayouts=true;if(!h){c=d.getExpanded()[0];if(c&&c!==j){e=c.$layoutAnim;if(e){e.jumpToEnd()}c.collapse()}}if(g){Ext.suspendLayouts();a.insert(0,j);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.VBox.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.VBox.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},afterCollapse:Ext.emptyFn,afterExpand:Ext.emptyFn},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:"x-center-layout-item",targetCls:"x-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:"x-form-layout-wrap",formWrapAutoLabelCls:"x-form-layout-auto-label",formWrapSizedLabelCls:"x-form-layout-sized-label",formColGroupCls:"x-form-layout-colgroup",formColumnCls:"x-form-layout-column",formLabelColumnCls:"x-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:"x-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},onDestroy:function(){if(this.rendered){var b=this.getRenderTarget(),a;while((a=b.last())){a.destroy()}}}},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:"x-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"],["component","box","container","panel","menu","colormenu"],{component:true,box:true,container:true,panel:true,menu:true,colormenu:true},["widget.colormenu"],0,[Ext.menu,"ColorPicker"],0));(Ext.cmd.derive("Ext.menu.DatePicker",Ext.menu.Menu,{ariaRole:"dialog",ariaLabel:"Date picker",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:"x-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"],["component","box","container","panel","menu","datemenu"],{component:true,box:true,container:true,panel:true,menu:true,datemenu: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 z=this,a=z.splitter,o=a.collapseTarget,d=a.defaultSplitMin,h=a.vertical?"Width":"Height",c="min"+h,v="max"+h,j="get"+h,u=a.neighbors,e=u.length,n=o.el.getBox(),g=n.x,p=n.y,y=n.right,k=n.bottom,r=a.vertical?(y-g):(k-p),x,l,s,m,w,t,q,b;m=(o[c]||Math.min(r,d))-r;w=o[v];if(!w){w=1000000000}else{w-=r}b=r;for(x=0;x<e;++x){l=u[x];r=l[j]();s=l[v];if(s===null){s=undefined}t=r-s;q=r-(l[c]||Math.min(r,d));if(!isNaN(t)){if(m<t){m=t}}if(w>q){w=q}}if(w-m<2){return null}n=new Ext.util.Region(p,y,k,g);z.constraintAdjusters[z.getCollapseDirection()](n,m,w,a);z.dragInfo={minRange:m,maxRange:w,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:"x-resizable-handle",region:"",ariaRole:"presentation",beforeRender:function(){var a=this;Ext.Component.prototype.beforeRender.call(this);a.protoEl.unselectable();a.addCls(a.baseHandleCls,a.baseHandleCls+"-"+a.region,a.handleCls)}},0,0,["component","box"],{component:true,box:true},0,0,[Ext.resizer,"Handle"],0));(Ext.cmd.derive("Ext.resizer.ResizeTracker",Ext.dd.DragTracker,{dynamic:true,preserveRatio:false,constrainTo:null,proxyCls:"x-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("x-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:"x-resizable-handle",overCls:"x-resizable-handle-over",pinnedCls:"x-resizable-pinned",wrapCls:"x-resizable-wrap",wrappedCls:"x-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 l=this,q=l.handles,k=Ext.dom.Element.unselectableCls,o=[],p,c,n,s,h,e,m,a,g,d,r,j;if(Ext.isString(b)||Ext.isElement(b)||b.dom){p=b;b=arguments[1]||{};b.target=p}l.mixins.observable.constructor.call(l,b);p=l.target;if(p){if(p.isComponent){p.addClsWithUI("resizable");if(p.minWidth){l.minWidth=p.minWidth}if(p.minHeight){l.minHeight=p.minHeight}if(p.maxWidth){l.maxWidth=p.maxWidth}if(p.maxHeight){l.maxHeight=p.maxHeight}if(p.floating){if(!l.hasOwnProperty("handles")){l.handles="n ne e se s sw w nw"}}l.el=p.getEl()}else{p=l.el=l.target=Ext.get(p)}}else{p=l.target=l.el=Ext.get(l.el)}l.el.addCls(Ext.Component.prototype.borderBoxCls);if(Ext.isNumber(l.width)){l.width=Ext.Number.constrain(l.width,l.minWidth,l.maxWidth)}if(Ext.isNumber(l.height)){l.height=Ext.Number.constrain(l.height,l.minHeight,l.maxHeight)}if(l.width!==null||l.height!==null){l.target.setSize(l.width,l.height)}s=l.el.dom.tagName.toUpperCase();if(s==="TEXTAREA"||s==="IMG"||s==="TABLE"){l.originalTarget=l.target;d=p.isComponent?p.getEl():p;l.el.addCls(l.wrappedCls);l.target=l.el=l.el.wrap({role:"presentation",cls:l.wrapCls,id:l.el.id+"-rzwrap",style:d.getStyle(["margin-top","margin-bottom"])});r=d.getPositioning();l.el.setPositioning(r);d.clearPositioning();g=d.getBox();if(r.position!=="absolute"){g.x=0;g.y=0}l.el.setBox(g);d.setStyle("position","absolute");l.isTargetWrapped=true}l.el.position();if(l.pinned){l.el.addCls(l.pinnedCls)}l.resizeTracker=new Ext.resizer.ResizeTracker({disabled:l.disabled,target:p,el:l.el,constrainTo:l.constrainTo,handleCls:l.handleCls,overCls:l.overCls,throttle:l.throttle,proxy:l.originalTarget?l.el:null,dynamic:l.originalTarget?true:l.dynamic,originalTarget:l.originalTarget,delegate:"."+l.handleCls,preserveRatio:l.preserveRatio,heightIncrement:l.heightIncrement,widthIncrement:l.widthIncrement,minHeight:l.minHeight,maxHeight:l.maxHeight,minWidth:l.minWidth,maxWidth:l.maxWidth});l.resizeTracker.on({mousedown:l.onBeforeResize,drag:l.onResize,dragend:l.onResizeEnd,scope:l});if(l.handles==="all"){l.handles="n s e w ne nw se sw"}q=l.handles=l.handles.split(l.delimiterRe);n=l.possiblePositions;h=q.length;c=l.handleCls+" "+l.handleCls+"-{0}";if(l.target.isComponent){j=l.target.baseCls;c+=" "+j+"-handle "+j+"-handle-{0}";if(Ext.supports.CSS3BorderRadius){c+=" "+j+"-handle-{0}-br"}}for(e=0;e<h;e++){if(q[e]&&n[q[e]]){m=n[q[e]];o.push('<div id="',l.el.id,"-",m,'-handle" class="',Ext.String.format(c,m)," ",k,'" unselectable="on" role="presentation"',"></div>")}}Ext.DomHelper.append(l.el,o.join(""));o.length=0;for(e=0;e<h;e++){if(q[e]&&n[q[e]]){m=n[q[e]];a=l[m]=l.el.getById(l.el.id+"-"+m+"-handle");o.push(a);a.region=m;if(l.transparent){a.setOpacity(0)}}}l.resizeTracker.handleEls=o},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();if(e.isTargetWrapped){e.target.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.selection.CellModel",Ext.selection.DataViewModel,{isCellModel:true,deselectOnContainerClick:false,enableKeyNav:true,preventWrap:false,bindComponent:function(a){var c=this,b;if(c.view&&c.gridListeners){c.gridListeners.destroy()}Ext.selection.DataViewModel.prototype.bindComponent.call(this,a);if(a){b=a.grid||a.ownerCt;if(b.optimizedColumnMove!==false){c.gridListeners=b.on({columnmove:c.onColumnMove,scope:c,destroyable:true})}}},getViewListeners:function(){var a=Ext.selection.DataViewModel.prototype.getViewListeners.call(this);a.refresh=this.onViewRefresh;return a},getHeaderCt:function(){var b=this.navigationModel.getPosition(),a=b?b.view:this.primaryView;return a.headerCt},onNavigate:function(a){if(!a.record){return}this.setPosition(a.position)},selectWithEvent:function(a,b){this.select(a)},select:function(h,e,b){var d=this,g,c=d.getPosition(),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()}},getCurrentPosition:function(){var a=this.selecting?this.nextSelection:this.selection;return a?{view:a.view,record:a.record,row:a.rowIdx,columnHeader:a.column,column:a.view.getColumnManager().indexOf(a.column)}:a},getPosition:function(){return(this.selecting?this.nextSelection:this.selection)||null},setCurrentPosition:function(c,a,b){if(c&&!c.isCellContext){c=new Ext.grid.CellContext(this.view).setPosition({row:c.row,column:typeof c.column==="number"?this.view.getColumnManager().getColumns()[c.column]:c.column})}return this.setPosition(c,a,b)},setPosition:function(e,a,d){var c=this,b=c.selection;if(e){e=e.isCellContext?e.clone():new Ext.grid.CellContext(c.view).setPosition(e)}if(!d&&b){if(e&&(e.record===b.record&&e.column===b.column&&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.getPosition();if(g&&g.view===a){b=new Ext.grid.CellContext(a).setPosition({row:e,column:typeof c==="number"?a.getColumnManager().getColumns()[c]:c});return(b.record===g.record)&&(b.column===g.column)}},onStoreRemove:function(b,a,d){var c=this,e=c.getPosition();Ext.selection.DataViewModel.prototype.onStoreRemove.apply(this,arguments);if(e&&b.isMoving(e.record)){return}if(e&&b.getCount()&&b.indexOf(e.record)!==-1){e.setRow(e.record)}else{c.selection=null}},onStoreClear:function(){Ext.selection.DataViewModel.prototype.onStoreClear.apply(this,arguments);this.selection=null},onStoreAdd:function(){var a=this,b=a.getPosition();Ext.selection.DataViewModel.prototype.onStoreAdd.apply(this,arguments);if(b){b.setRow(b.record)}else{a.selection=null}},onCellClick:function(c,a,g,b,j,d,h){if(d!==-1){this.setPosition(h.position)}},onCellSelect:function(a,b){if(a&&a.rowIdx!==undefined&&a.rowIdx>-1){this.doSelect(a.record,false,b)}},onCellDeselect:function(a,b){if(a&&a.rowIdx!==undefined){this.doDeselect(a.record,b)}},onSelectChange:function(c,b,j,a){var e=this,g,d,h,k;if(b){g=e.nextSelection;d="select"}else{g=e.selection;d="deselect"}h=g.view||e.primaryView;if((j||e.fireEvent("before"+d,e,c,g.rowIdx,g.colIdx))!==false&&a()!==false){if(b){h.onCellSelect(g)}else{h.onCellDeselect(g);delete e.selection}if(!j){e.fireEvent(d,e,c,g.rowIdx,g.colIdx)}}},onEditorTab:function(b,g){var c=this,d=g.shiftKey?"left":"right",h=b.context,a=h.view.walkCells(h,d,g,c.preventWrap);if(a){if(b.startEdit(a.record,a.column)){c.wasEditing=false}else{a.view.getNavigationModel().setPosition(a,null,g);c.wasEditing=true}}},refresh:function(){var b=this.getPosition(),a;if(b&&(a=this.store.indexOf(this.selected.last()))!==-1){b.rowIdx=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 e=this,h=e.getPosition(),c,g=b.headerCt,a,d;if(h&&h.view===b){a=h.record;d=h.column;if(!d.isDescendantOf(g)){d=g.queryById(d.id)||g.down('[text="'+d.text+'"]')||g.down('[dataIndex="'+d.dataIndex+'"]')}if(h.record){if(d&&(b.store.indexOfId(a.getId())!==-1)){c=new Ext.grid.CellContext(b).setPosition({row:a,column:d});e.setPosition(c)}}else{e.selection=null}}},selectByPosition:function(a,b){this.setPosition(a,b)}},0,0,0,0,["selection.cellmodel"],0,[Ext.selection,"CellModel"],0));(Ext.cmd.derive("Ext.selection.CheckboxModel",Ext.selection.RowModel,{mode:"MULTI",injectCheckbox:0,checkOnly:false,showHeaderCheckbox:undefined,checkSelector:".x-grid-row-checker",allowDeselect:true,headerWidth:24,checkerOnCls:"x-grid-hd-checker-on",tdCls:"x-grid-cell-special x-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.RowModel.prototype.beforeViewRender.apply(this,arguments);if(!c.hasLockedHeader()||b.headerCt.lockedCt){c.addCheckbox(b,true);a=b.ownerCt;if(b.headerCt.lockedCt){a=a.ownerCt}c.mon(a,"reconfigure",c.onReconfigure,c)}},bindComponent:function(a){this.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}c.column=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===this.column){b.stopEvent();var a=this,d=g.el.hasCls("x-grid-hd-checker-on");if(d){a.deselectAll()}else{a.selectAll()}}},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?"x-column-header-checkbox ":"",defaultRenderer:a.renderer.bind(a),editRenderer:a.editRenderer||a.renderEmpty,locked:a.hasLockedHeader()}},renderEmpty:function(){return"&#160;"},refresh:function(){Ext.selection.RowModel.prototype.refresh.apply(this,arguments);this.updateHeaderState()},renderer:function(g,c,b,h,e,d,a){return'<div class="x-grid-row-checker" role="presentation">&#160;</div>'},selectByPosition:function(a,b){if(!a.isCellContext){a=new Ext.grid.CellContext(this.view).setPosition(a.row,a.column)}if(!this.checkOnly||a.column!==this.column){Ext.selection.RowModel.prototype.selectByPosition.call(this,a,b)}},onSelectChange:function(){Ext.selection.RowModel.prototype.onSelectChange.apply(this,arguments);if(!this.suspendChange){this.updateHeaderState()}},onStoreLoad:function(){Ext.selection.RowModel.prototype.onStoreLoad.apply(this,arguments);this.updateHeaderState()},onStoreAdd:function(){Ext.selection.RowModel.prototype.onStoreAdd.apply(this,arguments);this.updateHeaderState()},onStoreRemove:function(){Ext.selection.RowModel.prototype.onStoreRemove.apply(this,arguments);this.updateHeaderState()},onStoreRefresh:function(){Ext.selection.RowModel.prototype.onStoreRefresh.apply(this,arguments);this.updateHeaderState()},maybeFireSelectionChange:function(a){if(a&&!this.suspendChange){this.updateHeaderState()}Ext.selection.RowModel.prototype.maybeFireSelectionChange.apply(this,arguments)},resumeChanges:function(){Ext.selection.RowModel.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)}},vetoSelection:function(g){var c=this,b=c.column,a,d,h;if(c.checkOnly){d=g.type==="click"&&g.getTarget(c.checkSelector);h=g.getKey()===g.SPACE&&g.position.column===b;a=!(d||h)}return a||Ext.selection.RowModel.prototype.vetoSelection.call(this,g)},destroy:function(){this.column=null;Ext.selection.RowModel.prototype.destroy.call(this)},privates:{onBeforeNavigate:function(a){var b=a.keyEvent;if(this.selectionMode!=="SINGLE"){a.ctrlKey=a.ctrlKey||b.ctrlKey||(b.type==="click"&&!b.shiftKey)||b.getKey()===b.SPACE}},selectWithEventMulti:function(a,d,b){var c=this;if(!d.shiftKey&&!d.ctrlKey&&d.getTarget(c.checkSelector)){if(b){c.doDeselect(a,true)}else{c.doSelect(a,true)}}else{Ext.selection.RowModel.prototype.selectWithEventMulti.call(this,a,d,b)}}}},1,0,0,0,["selection.checkboxmodel"],0,[Ext.selection,"CheckboxModel"],0));(Ext.cmd.derive("Ext.slider.Thumb",Ext.Base,{overCls:"x-slider-thumb-over",constructor:function(a){var b=this;Ext.apply(b,a||{},{cls:"x-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(k,b){var g=this,c=g.el,a=g.slider,d=a.vertical?"bottom":a.horizontalProp,h,j,e;k+="%";if(!b){c.dom.style[d]=k}else{h={};h[d]=k;if(!Ext.supports.GetPositionPercentage){j={};j[d]=c.dom.style[d]}e={target:c,duration:350,from:j,to:h,scope:g,callback:g.onAnimComplete};if(b!==true){Ext.apply(e,b)}g.anim=new Ext.fx.Anim(e)}},onAnimComplete:function(){this.anim=null},enable:function(){var a=this.el;this.disabled=false;if(a){a.removeCls(this.slider.disabledCls)}},disable:function(){var a=this.el;this.disabled=true;if(a){a.addCls(this.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});a.el.hover(a.addOverCls,a.removeOverCls,a)},addOverCls:function(){var a=this;if(!a.disabled){a.el.addCls(a.overCls)}},removeOverCls:function(){this.el.removeCls(this.overCls)},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("x-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("x-slider-thumb-drag");b.dragging=a.dragging=false;a.fireEvent("dragend",a,d);if(b.dragStartValue!=c){a.fireEvent("changecomplete",a,c,b)}},destroy:function(){var a=this,b=this.anim;if(b){b.end()}a.el=a.tracker=a.anim=Ext.destroy(a.el,a.tracker)}},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"],["component","box","container","panel","tip","slidertip"],{component:true,box:true,container:true,panel:true,tip:true,slidertip:true},["widget.slidertip"],0,[Ext.slider,"Tip"],0));(Ext.cmd.derive("Ext.slider.Multi",Ext.form.field.Base,{alternateClassName:"Ext.slider.MultiSlider",focusable:true,needArrowKeys:true,tabIndex:0,focusCls:"slider-focus",childEls:["endEl","innerEl"],fieldSubTpl:['<div id="{id}" role="{role}" {inputAttrTpl} class="x-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="x-slider-end" role="presentation">','<div id="{cmpId}-innerEl" data-ref="innerEl" class="x-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",defaultBindProperty:"values",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="x-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(a){var b=this;return Ext.apply(Ext.form.field.Base.prototype.getSubTplData.apply(this,arguments),{$comp:b,isVertical:b.vertical,vertical:b.vertical?"x-slider-vert":"x-slider-horz",minValue:b.minValue,maxValue:b.maxValue,value:b.value,tabIdx:b.tabIndex,childElCls:""})},onRender:function(){var e=this,b=e.thumbs,a=b.length,d=0,c;(arguments.callee.$previous||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;Ext.form.field.Base.prototype.initEvents.call(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,checkChange:Ext.emptyFn,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}},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(e,k,b,d){var j=this,h=j.thumbs,a,g,c,l;if(Ext.isArray(e)){l=e;b=k;for(c=0,g=l.length;c<g;++c){a=h[c];if(a){j.setValue(c,l[c],b)}}return j}a=j.thumbs[e];k=j.normalizeValue(k);if(k!==a.value&&j.fireEvent("beforechange",j,k,a.value,a)!==false){a.value=k;if(j.rendered){if(Ext.isDefined(b)){b=b===false?false:b}else{b=j.animate}a.move(j.calculateThumbPosition(k),b);j.fireEvent("change",j,k,a);j.checkDirty();if(d){j.fireEvent("changecomplete",j,k,a)}}}return j},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:"x-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;if(e.rendered){for(;d<a;d++){c=b[d];Ext.destroy(c)}}Ext.form.field.Base.prototype.beforeDestroy.call(this)}},0,["multislider"],["component","box","field","multislider"],{component:true,box:true,field:true,multislider:true},["widget.multislider"],0,[Ext.slider,"Multi",Ext.slider,"MultiSlider"],0));(Ext.cmd.derive("Ext.slider.Single",Ext.slider.Multi,{alternateClassName:["Ext.Slider","Ext.form.SliderField","Ext.slider.SingleSlider","Ext.slider.Slider"],defaultBindProperty:"value",initComponent:function(){if(this.publishOnComplete){this.valuePublishEvent="changecomplete"}Ext.slider.Multi.prototype.initComponent.call(this)},publishOnComplete:true,getValue:function(){return Ext.slider.Multi.prototype.getValue.call(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"],["component","box","field","multislider","slider","sliderfield"],{component:true,box: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:"x-slider",listeners:{mousedown:"onMouseDown",dragstart:"cancelDrag",drag:"cancelDrag",dragend:"cancelDrag"},children:[{reference:"endEl",cls:"x-slider-end",children:[{reference:"innerEl",cls:"x-slider-inner"}]}]},thumbCls:"x-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("x-slider-"+(b?"vert":"horz"));this.element.addCls("x-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){Ext.getDoc().on({scope:b,capture:true,selectstart:b.stopSelect});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(c,a){var b=this;b.doMouseMove(c,a,true);Ext.getDoc().un({scope:b,capture:true,selectstart:b.stopSelect});delete b.animateOnSetValue},stopSelect:function(a){a.stopEvent();return false},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"],["widget","sliderwidget"],{widget:true,sliderwidget: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:"x-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:"x-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.call(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"],["widget","sparklinebar"],{widget:true,sparklinebar: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"],["widget","sparklinebox"],{widget:true,sparklinebox: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"],["widget","sparklinebullet"],{widget:true,sparklinebullet: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.BarBase.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"],["widget","sparklinediscrete"],{widget:true,sparklinediscrete: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"],["widget","sparklineline"],{widget:true,sparklineline: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"],["widget","sparklinepie"],{widget:true,sparklinepie: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"],["widget","sparklinetristate"],{widget:true,sparklinetristate: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:"x-breadcrumb",layout:"hbox",config:{buttonUI:"plain-toolbar",displayField:"text",overflowHandler:null,showIcons:null,showMenuIcons:null,store:null,useSplitButtons:true},renderConfig:{selection:"root"},publishes:["selection"],twoWayBindable:["selection"],_breadcrumbCls:"x-breadcrumb",_btnCls:"x-breadcrumb-btn",_folderIconCls:"x-breadcrumb-icon-folder",_leafIconCls:"x-breadcrumb-icon-leaf",initComponent:function(){var c=this,b=c.layout,a=c.getOverflowHandler();if(typeof b==="string"){b={type:b}}if(a){b.overflowHandler=a}c.layout=b;c.defaultButtonUI=c.getButtonUI();c._buttons=[];c.addCls([c._breadcrumbCls,c._breadcrumbCls+"-"+c.ui]);Ext.container.Container.prototype.initComponent.call(this)},onDestroy:function(){var a=this;a._buttons=Ext.destroy(a._buttons);a.setStore(null);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(b){var a=this.getStore();if(a){b=(b==="root")?this.getStore().getRoot():b}else{b=null}return b},updateSelection:function(l){var r=this,o=r._buttons,h=[],q=r.items.getCount(),k=r._needsSync,m=r.getDisplayField(),d,e,b,p,s,c,g,a,j,t,n;Ext.suspendLayouts();if(l){c=l;t=l.get("depth");s=t+1;n=t;while(c){j=c.getId();a=o[n];if(!k&&a&&a._breadcrumbNodeId===j){break}g=c.get(m);if(a){a.setText(g)}else{a=o[n]=Ext.create({xtype:r.getUseSplitButtons()?"splitbutton":"button",ui:r.getButtonUI(),cls:r._btnCls+" "+r._btnCls+"-"+r.ui,text:g,showEmptyMenu:true,menu:{listeners:{click:"_onMenuClick",beforeshow:"_onMenuBeforeShow",scope:this}},handler:"_onButtonClick",scope:r})}d=this.getShowIcons();if(d!==false){e=c.get("glyph");p=c.get("icon");b=c.get("iconCls");if(e){a.setGlyph(e);a.setIcon(null);a.setIconCls(b)}else{if(p){a.setGlyph(null);a.setIconCls(null);a.setIcon(p)}else{if(b){a.setGlyph(null);a.setIcon(null);a.setIconCls(b)}else{if(d){a.setGlyph(null);a.setIcon(null);a.setIconCls((c.isLeaf()?r._leafIconCls:r._folderIconCls)+"-"+r.ui)}else{a.setGlyph(null);a.setIcon(null);a.setIconCls(null)}}}}}a.setArrowVisible(c.hasChildNodes());a._breadcrumbNodeId=c.getId();c=c.parentNode;n--}if(s>q){h=o.slice(q,t+1);r.add(h)}else{for(n=q-1;n>=s;n--){r.remove(r.items.items[n],false)}}}else{r.removeAll(false)}Ext.resumeLayouts(true);r.fireEvent("selectionchange",r,l);r._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},applyStore:function(a){if(a){a=Ext.data.StoreManager.lookup(a)}return a},updateStore:function(a,b){this._needsSync=true;if(a&&!this.isConfiguring){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(c){var k=this,d=k.getStore().getNodeById(c.ownerCmp._breadcrumbNodeId),g=k.getDisplayField(),a=k.getShowMenuIcons(),o,b,l,j,e,m,n,h,p;if(d.hasChildNodes()){o=d.childNodes;j=[];for(e=0,h=o.length;e<h;e++){b=o[e];p={text:b.get(g),_breadcrumbNodeId:b.getId()};if(a!==false){l=b.get("glyph");m=b.get("icon");n=b.get("iconCls");if(l){p.glyph=l;p.iconCls=n}else{if(m){p.icon=m}else{if(n){p.iconCls=n}else{if(a){p.iconCls=(b.isLeaf()?k._leafIconCls:k._folderIconCls)+"-"+k.ui}}}}}j.push(p)}c.removeAll();c.add(j)}else{return false}}}},0,["breadcrumb"],["component","box","container","breadcrumb"],{component:true,box:true,container:true,breadcrumb:true},["widget.breadcrumb"],[[Ext.util.FocusableContainer.prototype.mixinId||Ext.util.FocusableContainer.$className,Ext.util.FocusableContainer]],[Ext.toolbar,"Breadcrumb"],0));(Ext.cmd.derive("Ext.toolbar.Fill",Ext.Component,{alternateClassName:"Ext.Toolbar.Fill",ariaRole:"presentation",isFill:true,flex:1},0,["tbfill"],["component","box","tbfill"],{component:true,box:true,tbfill:true},["widget.tbfill"],0,[Ext.toolbar,"Fill",Ext.Toolbar,"Fill"],0));(Ext.cmd.derive("Ext.toolbar.Spacer",Ext.Component,{alternateClassName:"Ext.Toolbar.Spacer",baseCls:"x-toolbar-spacer",ariaRole:"presentation"},0,["tbspacer"],["component","box","tbspacer"],{component:true,box: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.call(this,c);e.ddel=document.createElement("div");e.ddel.className="x-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.DragZone.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();Ext.fly(e.ddel).setHtml(e.getDragText());e.proxy.update(e.ddel);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:"x-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(k.touchScroll===2){m+=k.getScrollY()}if(d==="before"){b=h.isFirst()?"x-tree-drop-ok-above":"x-tree-drop-ok-between";l.showAt(0,m);j.proxy.show()}else{if(d==="after"){b=h.isLast()?"x-tree-drop-ok-below":"x-tree-drop-ok-between";m+=Ext.fly(a).getHeight();l.showAt(0,m);j.proxy.show()}else{b="x-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);a.getNavigationModel().setPosition(h)}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.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.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(c){var g=document.cookie.split("; "),a=g.length,e,d,b;for(d=0;d<a;++d){e=g[d].split("=");if(e[0]===c){b=e[1];return b?unescape(b):""}}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}}},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||{type:"checkboxmodel",pruneRemoved:false,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.panel.Panel.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"],["component","box","container","panel","multiselector-search"],{component:true,box:true,container:true,panel:true,"multiselector-search":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:"✖",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.grid.Panel.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,tdCls:"x-multiselector-remove",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(a).hasCls("x-multiselector-remove")){this.store.remove(b);if(this.searchPopup){this.searchPopup.deselectRecords(b)}}},renderRemoveRow:function(){return'<span data-qtip="'+this.removeRowTip+'" role="button">'+this.removeRowText+"</span>"},beforeDestroy:function(){Ext.un({mousedown:"onDismissSearch",scope:this});Ext.grid.Panel.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"],["component","box","container","panel","tablepanel","gridpanel","grid","multiselector"],{component:true,box:true,container:true,panel:true,tablepanel:true,gridpanel:true,grid:true,multiselector:true},["widget.multiselector"],0,[Ext.view,"MultiSelector"],0));(Ext.cmd.derive("Ext.window.Toast",Ext.window.Window,{isToast:true,cls:"x-toast",bodyPadding:10,autoClose:true,plain:false,draggable:false,resizable:false,shadow:false,focus:Ext.emptyFn,anchor:null,useXAxis:false,align:"br",animate:true,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.call(this)},onRender:function(){var a=this;Ext.window.Window.prototype.onRender.apply(this,arguments);a.el.hover(a.onMouseEnter,a.onMouseLeave,a);if(a.closeOnMouseDown){Ext.getDoc().on("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.window.Window.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);if(e.animate){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})}else{e.setLocalXY(e.xPos,e.yPos)}},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();if(e.animate){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.window.Window.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()}}}},getFocusEl:Ext.emptyFn,hide:function(){var b=this,a=b.el;b.cancelAutoClose();if(b.isHiding){if(!b.isFading){Ext.window.Window.prototype.hide.apply(this,arguments);b.removeFromAnchor();b.isHiding=false}}else{b.isHiding=true;b.isFading=true;b.cancelAutoClose();if(a){if(b.animate){a.fadeOut({opacity:0,easing:"easeIn",duration:b.hideDuration,listeners:{afteranimate:function(){b.isFading=false;b.hide(b.animateTarget,b.doClose,b)}}})}else{b.isFading=false;b.hide(b.animateTarget,b.doClose,b)}}}return b}},0,["toast"],["component","box","container","panel","window","toast"],{component:true,box:true,container:true,panel:true,window:true,toast: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}}));
})(this.Ext5 || (this.Ext5 = {}));
