facebook-workplaceoutlookemailmicrosoft-teamsdiscordmessengercustom-servicesmacoslinuxwindowsinboxwhatsappicloudtweetdeckhipchattelegramhangoutsslackgmailskype
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1 lines
1.6 MiB
1 lines
1.6 MiB
var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.defineProperty=typeof Object.defineProperties=='function'?Object.defineProperty:function(b,c,a){a=a;if(b==Array.prototype||b==Object.prototype){return}b[c]=a.value};$jscomp.getGlobal=function(a){return typeof window!='undefined'&&window===a?a:typeof global!='undefined'&&global!=null?global:a};$jscomp.global=$jscomp.getGlobal(this);$jscomp.polyfill=function(i,f,j,k){if(!f){return}var a=$jscomp.global;var b=i.split('.');for(var e=0;e<b.length-1;e++){var d=b[e];if(!(d in a)){a[d]={}}a=a[d]}var g=b[b.length-1];var h=a[g];var c=f(h);if(c==h||c==null){return}$jscomp.defineProperty(a,g,{configurable:!0,writable:!0,value:c})};$jscomp.polyfill('Array.prototype.copyWithin',function(a){if(a){return a}var b=function(d,c,b){var e=this.length;d=Number(d);c=Number(c);b=Number(b!=null?b:e);if(d<c){b=Math.min(b,e);while(c<b){if(c in this){this[d++]=this[c++]}else {delete this[d++];c++}}}else {b=Math.min(b,e+c-d);d+=b-c;while(b>c){if(--b in this){this[--d]=this[b]}else {delete this[d]}}}return this};return b},'es6-impl','es3');$jscomp.SYMBOL_PREFIX='jscomp_symbol_';$jscomp.initSymbol=function(){$jscomp.initSymbol=function(){};if(!$jscomp.global['Symbol']){$jscomp.global['Symbol']=$jscomp.Symbol}};$jscomp.symbolCounter_=0;$jscomp.Symbol=function(a){return $jscomp.SYMBOL_PREFIX+(a||'')+$jscomp.symbolCounter_++};$jscomp.initSymbolIterator=function(){$jscomp.initSymbol();var a=$jscomp.global['Symbol'].iterator;if(!a){a=$jscomp.global['Symbol'].iterator=$jscomp.global['Symbol']('iterator')}if(typeof Array.prototype[a]!='function'){$jscomp.defineProperty(Array.prototype,a,{configurable:!0,writable:!0,value:function(){return $jscomp.arrayIterator(this)}})}$jscomp.initSymbolIterator=function(){}};$jscomp.arrayIterator=function(a){var b=0;return $jscomp.iteratorPrototype(function(){if(b<a.length){return {done:!1,value:a[b++]}}else {return {done:!0}}})};$jscomp.iteratorPrototype=function(b){$jscomp.initSymbolIterator();var a={next:b};a[$jscomp.global['Symbol'].iterator]=function(){return this};return a};$jscomp.iteratorFromArray=function(a,d){$jscomp.initSymbolIterator();if(a instanceof String){a=a+''}var c=0;var b={next:function(){if(c<a.length){var e=c++;return {value:d(e,a[e]),done:!1}}b.next=function(){return {done:!0,value:void 0}};return b.next()}};$jscomp.initSymbol();$jscomp.initSymbolIterator();b[Symbol.iterator]=function(){return b};return b};$jscomp.polyfill('Array.prototype.entries',function(a){if(a){return a}var b=function(){return $jscomp.iteratorFromArray(this,function(b,c){return [b,c]})};return b},'es6-impl','es3');$jscomp.polyfill('Array.prototype.fill',function(a){if(a){return a}var b=function(f,c,b){var d=this.length||0;if(c<0){c=Math.max(0,d+c)}if(b==null||b>d){b=d}b=Number(b);if(b<0){b=Math.max(0,d+b)}for(var e=Number(c||0);e<b;e++){this[e]=f}return this};return b},'es6-impl','es3');$jscomp.findInternal=function(a,d,e){if(a instanceof String){a=String(a)}var f=a.length;for(var b=0;b<f;b++){var c=a[b];if(d.call(e,c,b,a)){return {i:b,v:c}}}return {i:-1,v:void 0}};$jscomp.polyfill('Array.prototype.find',function(a){if(a){return a}var b=function(c,b){return $jscomp.findInternal(this,c,b).v};return b},'es6-impl','es3');$jscomp.polyfill('Array.prototype.findIndex',function(a){if(a){return a}var b=function(c,b){return $jscomp.findInternal(this,c,b).i};return b},'es6-impl','es3');$jscomp.polyfill('Array.from',function(a){if(a){return a}var b=function(b,c,g){$jscomp.initSymbolIterator();c=c!=null?c:function(d){return d};var d=[];$jscomp.initSymbol();$jscomp.initSymbolIterator();var f=b[Symbol.iterator];if(typeof f=='function'){b=f.call(b);var h;while(!(h=b.next()).done){d.push(c.call(g,h.value))}}else {var i=b.length;for(var e=0;e<i;e++){d.push(c.call(g,b[e]))}}return d};return b},'es6-impl','es3');$jscomp.polyfill('Object.is',function(a){if(a){return a}var b=function(b,c){if(b===c){return b!==0||1/b===1/c}else {return b!==b&&c!==c}};return b},'es6-impl','es3');$jscomp.polyfill('Array.prototype.includes',function(a){if(a){return a}var b=function(d,e){var b=this;if(b instanceof String){b=String(b)}var f=b.length;for(var c=e||0;c<f;c++){if(b[c]==d||Object.is(b[c],d)){return !0}}return !1};return b},'es7','es3');$jscomp.polyfill('Array.prototype.keys',function(a){if(a){return a}var b=function(){return $jscomp.iteratorFromArray(this,function(b){return b})};return b},'es6-impl','es3');$jscomp.polyfill('Array.of',function(a){if(a){return a}var b=function(b){return Array.from(arguments)};return b},'es6-impl','es3');$jscomp.polyfill('Array.prototype.values',function(a){if(a){return a}var b=function(){return $jscomp.iteratorFromArray(this,function(c,b){return b})};return b},'es6','es3');$jscomp.makeIterator=function(a){$jscomp.initSymbolIterator();$jscomp.initSymbol();$jscomp.initSymbolIterator();var b=a[Symbol.iterator];return b?b.call(a):$jscomp.arrayIterator(a)};$jscomp.EXPOSE_ASYNC_EXECUTOR=!0;$jscomp.FORCE_POLYFILL_PROMISE=!1;$jscomp.polyfill('Promise',function(c){if(c&&!$jscomp.FORCE_POLYFILL_PROMISE){return c}function AsyncExecutor(){this.batch_=null}AsyncExecutor.prototype.asyncExecute=function(a){if(this.batch_==null){this.batch_=[];this.asyncExecuteBatch_()}this.batch_.push(a);return this};AsyncExecutor.prototype.asyncExecuteBatch_=function(){var a=this;this.asyncExecuteFunction(function(){a.executeBatch_()})};var e=$jscomp.global['setTimeout'];AsyncExecutor.prototype.asyncExecuteFunction=function(a){e(a,0)};AsyncExecutor.prototype.executeBatch_=function(){while(this.batch_&&this.batch_.length){var b=this.batch_;this.batch_=[];for(var a=0;a<b.length;++a){var d=b[a];delete b[a];try{d()}catch(f){this.asyncThrow_(f)}}}this.batch_=null};AsyncExecutor.prototype.asyncThrow_=function(a){this.asyncExecuteFunction(function(){throw a})};var b={PENDING:0,FULFILLED:1,REJECTED:2};var a=function(d){this.state_=b.PENDING;this.result_=undefined;this.onSettledCallbacks_=[];var a=this.createResolveAndReject_();try{d(a.resolve,a.reject)}catch(f){a.reject(f)}};a.prototype.createResolveAndReject_=function(){var b=this;var a=!1;function firstCallWins(d){return function(e){if(!a){a=!0;d.call(b,e)}}}return {resolve:firstCallWins(this.resolveTo_),reject:firstCallWins(this.reject_)}};a.prototype.resolveTo_=function(b){if(b===this){this.reject_(new TypeError('A Promise cannot resolve to itself'))}else {if(b instanceof a){this.settleSameAsPromise_(b)}else {if(isObject(b)){this.resolveToNonPromiseObj_(b)}else {this.fulfill_(b)}}}};a.prototype.resolveToNonPromiseObj_=function(b){var a=undefined;try{a=b.then}catch(f){this.reject_(f);return}if(typeof a=='function'){this.settleSameAsThenable_(a,b)}else {this.fulfill_(b)}};function isObject(a){switch(typeof a){case 'object':return a!=null;case 'function':return !0;default:return !1;}}a.prototype.reject_=function(a){this.settle_(b.REJECTED,a)};a.prototype.fulfill_=function(a){this.settle_(b.FULFILLED,a)};a.prototype.settle_=function(d,a){if(this.state_!=b.PENDING){throw new Error('Cannot settle('+d+', '+a|'): Promise already settled in state'+this.state_)}this.state_=d;this.result_=a;this.executeOnSettledCallbacks_()};a.prototype.executeOnSettledCallbacks_=function(){if(this.onSettledCallbacks_!=null){var b=this.onSettledCallbacks_;for(var a=0;a<b.length;++a){b[a].call();b[a]=null}this.onSettledCallbacks_=null}};var d=new AsyncExecutor();a.prototype.settleSameAsPromise_=function(b){var a=this.createResolveAndReject_();b.callWhenSettled_(a.resolve,a.reject)};a.prototype.settleSameAsThenable_=function(b,d){var a=this.createResolveAndReject_();try{b.call(d,a.resolve,a.reject)}catch(f){a.reject(f)}};a.prototype.then=function(f,g){var b;var d;var e=new a(function(a,e){b=a;d=e});function createCallback(a,e){if(typeof a=='function'){return function(h){try{b(a(h))}catch(i){d(i)}}}else {return e}}this.callWhenSettled_(createCallback(f,b),createCallback(g,d));return e};a.prototype['catch']=function(a){return this.then(undefined,a)};a.prototype.callWhenSettled_=function(e,f){var a=this;function callback(){switch(a.state_){case b.FULFILLED:e(a.result_);break;case b.REJECTED:f(a.result_);break;default:throw new Error('Unexpected state: '+a.state_);}}if(this.onSettledCallbacks_==null){d.asyncExecute(callback)}else {this.onSettledCallbacks_.push(function(){d.asyncExecute(callback)})}};a.resolve=function(b){if(b instanceof a){return b}else {return new a(function(a,d){a(b)})}};a.reject=function(b){return new a(function(d,a){a(b)})};a.race=function(b){return new a(function(f,g){var e=$jscomp.makeIterator(b);for(var d=e.next();!d.done;d=e.next()){a.resolve(d.value).callWhenSettled_(f,g)}})};a.all=function(e){var d=$jscomp.makeIterator(e);var b=d.next();if(b.done){return a.resolve([])}else {return new a(function(h,i){var f=[];var g=0;function onFulfilled(a){return function(b){f[a]=b;g--;if(g==0){h(f)}}}do{f.push(undefined);g++;a.resolve(b.value).callWhenSettled_(onFulfilled(f.length-1),i);b=d.next()}while(!b.done)})}};if($jscomp.EXPOSE_ASYNC_EXECUTOR){a['$jscomp$new$AsyncExecutor']=function(){return new AsyncExecutor()}}return a},'es6-impl','es3');$jscomp.executeAsyncGenerator=function(a){function passValueToGenerator(b){return a.next(b)}function passErrorToGenerator(b){return a['throw'](b)}return new Promise(function(b,c){function handleGeneratorRecord(d){if(d.done){b(d.value)}else {Promise.resolve(d.value).then(passValueToGenerator,passErrorToGenerator).then(handleGeneratorRecord,c)}}handleGeneratorRecord(a.next())})};$jscomp.owns=function(b,a){return Object.prototype.hasOwnProperty.call(b,a)};$jscomp.polyfill('WeakMap',function(c){function isConformant(){if(!c||!Object.seal){return !1}try{var b=Object.seal({});var d=Object.seal({});var a=new c([[b,2],[d,3]]);if(a.get(b)!=2||a.get(d)!=3){return !1}a['delete'](b);a.set(d,4);return !a.has(b)&&a.get(d)==4}catch(e){return !1}}if(isConformant()){return c}var a='$jscomp_hidden_'+Math.random().toString().substring(2);function insert(b){if(!$jscomp.owns(b,a)){var d={};$jscomp.defineProperty(b,a,{value:d})}}function patch(a){var b=Object[a];if(b){Object[a]=function(d){insert(d);return b(d)}}}patch('freeze');patch('preventExtensions');patch('seal');var d=0;var b=function(a){this.id_=(d+=Math.random()+1).toString();if(a){$jscomp.initSymbol();$jscomp.initSymbolIterator();var f=$jscomp.makeIterator(a);var b;while(!(b=f.next()).done){var e=b.value;this.set(e[0],e[1])}}};b.prototype.set=function(b,d){insert(b);if(!$jscomp.owns(b,a)){throw new Error('WeakMap key fail: '+b)}b[a][this.id_]=d;return this};b.prototype.get=function(b){return $jscomp.owns(b,a)?b[a][this.id_]:undefined};b.prototype.has=function(b){return $jscomp.owns(b,a)&&$jscomp.owns(b[a],this.id_)};b.prototype['delete']=function(b){if(!$jscomp.owns(b,a)||!$jscomp.owns(b[a],this.id_)){return !1}return delete b[a][this.id_]};return b},'es6-impl','es3');$jscomp.MapEntry=function(){this.previous;this.next;this.head;this.key;this.value};$jscomp.ASSUME_NO_NATIVE_MAP=!1;$jscomp.polyfill('Map',function(b){var g=!$jscomp.ASSUME_NO_NATIVE_MAP&&function(){if(!b||!b.prototype.entries||typeof Object.seal!='function'){return !1}try{b=b;var e=Object.seal({x:4});var c=new b($jscomp.makeIterator([[e,'s']]));if(c.get(e)!='s'||c.size!=1||c.get({x:4})||c.set({x:4},'t')!=c||c.size!=2){return !1}var d=c.entries();var a=d.next();if(a.done||a.value[0]!=e||a.value[1]!='s'){return !1}a=d.next();if(a.done||a.value[0].x!=4||a.value[1]!='t'||!d.next().done){return !1}return !0}catch(j){return !1}}();if(g){return b}$jscomp.initSymbol();$jscomp.initSymbolIterator();var e=new WeakMap();var a=function(a){this.data_={};this.head_=f();this.size=0;if(a){var e=$jscomp.makeIterator(a);var c;while(!(c=e.next()).done){var d=c.value;this.set(d[0],d[1])}}};a.prototype.set=function(e,d){var a=c(this,e);if(!a.list){a.list=this.data_[a.id]=[]}if(!a.entry){a.entry={next:this.head_,previous:this.head_.previous,head:this.head_,key:e,value:d};a.list.push(a.entry);this.head_.previous.next=a.entry;this.head_.previous=a.entry;this.size++}else {a.entry.value=d}return this};a.prototype['delete']=function(d){var a=c(this,d);if(a.entry&&a.list){a.list.splice(a.index,1);if(!a.list.length){delete this.data_[a.id]}a.entry.previous.next=a.entry.next;a.entry.next.previous=a.entry.previous;a.entry.head=null;this.size--;return !0}return !1};a.prototype.clear=function(){this.data_={};this.head_=this.head_.previous=f();this.size=0};a.prototype.has=function(a){return !!c(this,a).entry};a.prototype.get=function(d){var a=c(this,d).entry;return a&&a.value};a.prototype.entries=function(){return d(this,function(a){return [a.key,a.value]})};a.prototype.keys=function(){return d(this,function(a){return a.key})};a.prototype.values=function(){return d(this,function(a){return a.value})};a.prototype.forEach=function(e,d){var f=this.entries();var c;while(!(c=f.next()).done){var a=c.value;e.call(d,a[1],a[0],this)}};$jscomp.initSymbol();$jscomp.initSymbolIterator();a.prototype[Symbol.iterator]=a.prototype.entries;var c=function(g,e){var f=i(e);var a=g.data_[f];if(a&&$jscomp.owns(g.data_,f)){for(var d=0;d<a.length;d++){var c=a[d];if(e!==e&&c.key!==c.key||e===c.key){return {id:f,list:a,index:d,entry:c}}}}return {id:f,list:a,index:-1,entry:undefined}};var d=function(c,d){var a=c.head_;return $jscomp.iteratorPrototype(function(){if(a){while(a.head!=c.head_){a=a.previous}while(a.next!=a.head){a=a.next;return {done:!1,value:d(a)}}a=null}return {done:!0,value:void 0}})};var f=function(){var a={};a.previous=a.next=a.head=a;return a};var h=0;var i=function(a){var c=a&&typeof a;if(c=='object'||c=='function'){a=a;if(!e.has(a)){var d=''+ ++h;e.set(a,d);return d}return e.get(a)}return 'p_'+a};return a},'es6-impl','es3');$jscomp.polyfill('Math.acosh',function(a){if(a){return a}var b=function(b){b=Number(b);return Math.log(b+Math.sqrt(b*b-1))};return b},'es6-impl','es3');$jscomp.polyfill('Math.asinh',function(a){if(a){return a}var b=function(b){b=Number(b);if(b===0){return b}var c=Math.log(Math.abs(b)+Math.sqrt(b*b+1));return b<0?-c:c};return b},'es6-impl','es3');$jscomp.polyfill('Math.log1p',function(a){if(a){return a}var b=function(b){b=Number(b);if(b<0.25&&b>-0.25){var f=b;var g=1;var c=b;var d=0;var e=1;while(d!=c){f*=b;e*=-1;c=(d=c)+e*f/++g}return c}return Math.log(1+b)};return b},'es6-impl','es3');$jscomp.polyfill('Math.atanh',function(b){if(b){return b}var a=Math.log1p;var c=function(c){c=Number(c);return (a(c)-a(-c))/2};return c},'es6-impl','es3');$jscomp.polyfill('Math.cbrt',function(a){if(a){return a}var b=function(b){if(b===0){return b}b=Number(b);var c=Math.pow(Math.abs(b),1/3);return b<0?-c:c};return b},'es6-impl','es3');$jscomp.polyfill('Math.clz32',function(a){if(a){return a}var b=function(b){b=Number(b)>>>0;if(b===0){return 32}var c=0;if((b&4.29490176E9)===0){b<<=16;c+=16}if((b&4.27819008E9)===0){b<<=8;c+=8}if((b&4.02653184E9)===0){b<<=4;c+=4}if((b&3.221225472E9)===0){b<<=2;c+=2}if((b&2.147483648E9)===0){c++}return c};return b},'es6-impl','es3');$jscomp.polyfill('Math.cosh',function(a){if(a){return a}var b=Math.exp;var c=function(c){c=Number(c);return (b(c)+b(-c))/2};return c},'es6-impl','es3');$jscomp.polyfill('Math.expm1',function(a){if(a){return a}var b=function(b){b=Number(b);if(b<0.25&&b>-0.25){var e=b;var f=1;var c=b;var d=0;while(d!=c){e*=b/++f;c=(d=c)+e}return c}return Math.exp(b)-1};return b},'es6-impl','es3');$jscomp.polyfill('Math.hypot',function(a){if(a){return a}var b=function(c,d,h){c=Number(c);d=Number(d);var b,g,f;var e=Math.max(Math.abs(c),Math.abs(d));for(b=2;b<arguments.length;b++){e=Math.max(e,Math.abs(arguments[b]))}if(e>1.0E100||e<1.0E-100){c=c/e;d=d/e;f=c*c+d*d;for(b=2;b<arguments.length;b++){g=Number(arguments[b])/e;f+=g*g}return Math.sqrt(f)*e}else {f=c*c+d*d;for(b=2;b<arguments.length;b++){g=Number(arguments[b]);f+=g*g}return Math.sqrt(f)}};return b},'es6-impl','es3');$jscomp.polyfill('Math.imul',function(a){if(a){return a}var b=function(b,c){b=Number(b);c=Number(c);var f=b>>>16&65535;var d=b&65535;var g=c>>>16&65535;var e=c&65535;var h=f*e+d*g<<16>>>0;return d*e+h|0};return b},'es6-impl','es3');$jscomp.polyfill('Math.log10',function(a){if(a){return a}var b=function(b){return Math.log(b)/Math.LN10};return b},'es6-impl','es3');$jscomp.polyfill('Math.log2',function(a){if(a){return a}var b=function(b){return Math.log(b)/Math.LN2};return b},'es6-impl','es3');$jscomp.polyfill('Math.sign',function(a){if(a){return a}var b=function(b){b=Number(b);return b===0||isNaN(b)?b:b>0?1:-1};return b},'es6-impl','es3');$jscomp.polyfill('Math.sinh',function(a){if(a){return a}var b=Math.exp;var c=function(c){c=Number(c);if(c===0){return c}return (b(c)-b(-c))/2};return c},'es6-impl','es3');$jscomp.polyfill('Math.tanh',function(a){if(a){return a}var b=function(b){b=Number(b);if(b===0){return b}var c=Math.exp(-2*Math.abs(b));var d=(1-c)/(1+c);return b<0?-d:d};return b},'es6-impl','es3');$jscomp.polyfill('Math.trunc',function(a){if(a){return a}var b=function(b){b=Number(b);if(isNaN(b)||b===Infinity||b===-Infinity||b===0){return b}var c=Math.floor(Math.abs(b));return b<0?-c:c};return b},'es6-impl','es3');$jscomp.polyfill('Number.EPSILON',function(a){return Math.pow(2,-52)},'es6-impl','es3');$jscomp.polyfill('Number.MAX_SAFE_INTEGER',function(){return 9.007199254740991E15},'es6-impl','es3');$jscomp.polyfill('Number.MIN_SAFE_INTEGER',function(){return -9.007199254740991E15},'es6-impl','es3');$jscomp.polyfill('Number.isFinite',function(a){if(a){return a}var b=function(b){if(typeof b!=='number'){return !1}return !isNaN(b)&&b!==Infinity&&b!==-Infinity};return b},'es6-impl','es3');$jscomp.polyfill('Number.isInteger',function(a){if(a){return a}var b=function(b){if(!Number.isFinite(b)){return !1}return b===Math.floor(b)};return b},'es6-impl','es3');$jscomp.polyfill('Number.isNaN',function(a){if(a){return a}var b=function(b){return typeof b==='number'&&isNaN(b)};return b},'es6-impl','es3');$jscomp.polyfill('Number.isSafeInteger',function(a){if(a){return a}var b=function(b){return Number.isInteger(b)&&Math.abs(b)<=Number.MAX_SAFE_INTEGER};return b},'es6-impl','es3');$jscomp.polyfill('Object.assign',function(a){if(a){return a}var b=function(e,f){for(var d=1;d<arguments.length;d++){var b=arguments[d];if(!b){continue}for(var c in b){if($jscomp.owns(b,c)){e[c]=b[c]}}}return e};return b},'es6-impl','es3');$jscomp.polyfill('Object.entries',function(a){if(a){return a}var b=function(c){var d=[];for(var b in c){if($jscomp.owns(c,b)){d.push([b,c[b]])}}return d};return b},'es8','es3');$jscomp.polyfill('Object.getOwnPropertySymbols',function(a){if(a){return a}return function(){return []}},'es6-impl','es5');$jscomp.polyfill('Reflect.ownKeys',function(b){if(b){return b}var a='jscomp_symbol_';function isSymbol(c){return c.substring(0,a.length)==a}var c=function(e){var f=[];var c=Object.getOwnPropertyNames(e);var d=Object.getOwnPropertySymbols(e);for(var a=0;a<c.length;a++){(isSymbol(c[a])?d:f).push(c[a])}return f.concat(d)};return c},'es6','es5');$jscomp.polyfill('Object.getOwnPropertyDescriptors',function(a){if(a){return a}var b=function(e){var d={};var c=Reflect.ownKeys(e);for(var b=0;b<c.length;b++){d[c[b]]=Object.getOwnPropertyDescriptor(e,c[b])}return d};return b},'es8','es5');$jscomp.polyfill('Object.setPrototypeOf',function(a){if(a){return a}if(typeof ''.__proto__!='object'){return null}var b=function(b,c){b.__proto__=c;if(b.__proto__!==c){throw new TypeError(b+' is not extensible')}return b};return b},'es6','es5');$jscomp.polyfill('Object.values',function(a){if(a){return a}var b=function(b){var c=[];for(var d in b){if($jscomp.owns(b,d)){c.push(b[d])}}return c};return b},'es8','es3');$jscomp.polyfill('Reflect.apply',function(a){if(a){return a}var c=Function.prototype.apply;var b=function(e,d,b){return c.call(e,d,b)};return b},'es6','es3');$jscomp.polyfill('Reflect.construct',function(a){if(a){return a}var b=function(c,e,b){if(b===undefined){b=c}var f=b.prototype||Object.prototype;var d=Object.create(f);var g=Reflect.apply(c,d,e);return g||d};return b},'es6','es5');$jscomp.polyfill('Reflect.defineProperty',function(a){if(a){return a}var b=function(e,d,c){try{Object.defineProperty(e,d,c);var b=Object.getOwnPropertyDescriptor(e,d);if(!b){return !1}return b.configurable===(c.configurable||!1)&&b.enumerable===(c.enumerable||!1)&&('value' in b?b.value===c.value&&b.writable===(c.writable||!1):b.get===c.get&&b.set===c.set)}catch(f){return !1}};return b},'es6','es5');$jscomp.polyfill('Reflect.deleteProperty',function(a){if(a){return a}var b=function(c,b){if(!$jscomp.owns(c,b)){return !0}try{return delete c[b]}catch(d){return !1}};return b},'es6','es3');$jscomp.polyfill('Reflect.getOwnPropertyDescriptor',function(a){return a||Object.getOwnPropertyDescriptor},'es6','es5');$jscomp.polyfill('Reflect.getPrototypeOf',function(a){return a||Object.getPrototypeOf},'es6','es5');$jscomp.findDescriptor=function(d,c){var a=d;while(a){var b=Reflect.getOwnPropertyDescriptor(a,c);if(b){return b}a=Reflect.getPrototypeOf(a)}return undefined};$jscomp.polyfill('Reflect.get',function(a){if(a){return a}var b=function(d,c,e){if(arguments.length<=2){return d[c]}var b=$jscomp.findDescriptor(d,c);if(b){return b.get?b.get.call(e):b.value}return undefined};return b},'es6','es5');$jscomp.polyfill('Reflect.has',function(a){if(a){return a}var b=function(c,b){return b in c};return b},'es6','es3');$jscomp.polyfill('Reflect.isExtensible',function(a){if(a){return a}if(typeof Object.isExtensible=='function'){return Object.isExtensible}return function(){return !0}},'es6','es3');$jscomp.polyfill('Reflect.preventExtensions',function(a){if(a){return a}if(typeof Object.preventExtensions!='function'){return function(){return !1}}var b=function(b){Object.preventExtensions(b);return !Object.isExtensible(b)};return b},'es6','es3');$jscomp.polyfill('Reflect.set',function(a){if(a){return a}var b=function(b,d,e,f){var c=$jscomp.findDescriptor(b,d);if(!c){if(Reflect.isExtensible(b)){b[d]=e;return !0}return !1}if(c.set){c.set.call(arguments.length>3?f:b,e);return !0}else {if(c.writable&&!Object.isFrozen(b)){b[d]=e;return !0}}return !1};return b},'es6','es5');$jscomp.polyfill('Reflect.setPrototypeOf',function(a){if(a){return a}if(typeof ''.__proto__!='object'){return null}var b=function(b,c){try{b.__proto__=c;return b.__proto__===c}catch(d){return !1}};return b},'es6','es5');$jscomp.ASSUME_NO_NATIVE_SET=!1;$jscomp.polyfill('Set',function(b){var c=!$jscomp.ASSUME_NO_NATIVE_SET&&function(){if(!b||!b.prototype.entries||typeof Object.seal!='function'){return !1}try{b=b;var d=Object.seal({x:4});var c=new b($jscomp.makeIterator([d]));if(!c.has(d)||c.size!=1||c.add(d)!=c||c.size!=1||c.add({x:4})!=c||c.size!=2){return !1}var e=c.entries();var a=e.next();if(a.done||a.value[0]!=d||a.value[1]!=d){return !1}a=e.next();if(a.done||a.value[0]==d||a.value[0].x!=4||a.value[1]!=a.value[0]){return !1}return e.next().done}catch(f){return !1}}();if(c){return b}$jscomp.initSymbol();$jscomp.initSymbolIterator();var a=function(a){this.map_=new Map();if(a){var e=$jscomp.makeIterator(a);var c;while(!(c=e.next()).done){var d=c.value;this.add(d)}}this.size=this.map_.size};a.prototype.add=function(a){this.map_.set(a,a);this.size=this.map_.size;return this};a.prototype['delete']=function(c){var a=this.map_['delete'](c);this.size=this.map_.size;return a};a.prototype.clear=function(){this.map_.clear();this.size=0};a.prototype.has=function(a){return this.map_.has(a)};a.prototype.entries=function(){return this.map_.entries()};a.prototype.values=function(){return this.map_.values()};a.prototype.keys=a.prototype.values;$jscomp.initSymbol();$jscomp.initSymbolIterator();a.prototype[Symbol.iterator]=a.prototype.values;a.prototype.forEach=function(c,a){var d=this;this.map_.forEach(function(e){return c.call(a,e,e,d)})};return a},'es6-impl','es3');$jscomp.checkStringArgs=function(a,c,b){if(a==null){throw new TypeError("The 'this' value for String.prototype."+b+' must not be null or undefined')}if(c instanceof RegExp){throw new TypeError('First argument to String.prototype.'+b+' must not be a regular expression')}return a+''};$jscomp.polyfill('String.prototype.codePointAt',function(a){if(a){return a}var b=function(b){var e=$jscomp.checkStringArgs(this,null,'codePointAt');var f=e.length;b=Number(b)||0;if(!(b>=0&&b<f)){return void 0}b=b|0;var c=e.charCodeAt(b);if(c<55296||c>56319||b+1===f){return c}var d=e.charCodeAt(b+1);if(d<56320||d>57343){return c}return (c-55296)*1024+d+9216};return b},'es6-impl','es3');$jscomp.polyfill('String.prototype.endsWith',function(a){if(a){return a}var b=function(b,c){var d=$jscomp.checkStringArgs(this,b,'endsWith');b=b+'';if(c===void 0){c=d.length}var f=Math.max(0,Math.min(c|0,d.length));var e=b.length;while(e>0&&f>0){if(d[--f]!=b[--e]){return !1}}return e<=0};return b},'es6-impl','es3');$jscomp.polyfill('String.fromCodePoint',function(a){if(a){return a}var b=function(e){var c='';for(var d=0;d<arguments.length;d++){var b=Number(arguments[d]);if(b<0||b>1114111||b!==Math.floor(b)){throw new RangeError('invalid_code_point '+b)}if(b<=65535){c+=String.fromCharCode(b)}else {b-=65536;c+=String.fromCharCode(b>>>10&1023|55296);c+=String.fromCharCode(b&1023|56320)}}return c};return b},'es6-impl','es3');$jscomp.polyfill('String.prototype.includes',function(a){if(a){return a}var b=function(b,c){var d=$jscomp.checkStringArgs(this,b,'includes');return d.indexOf(b,c||0)!==-1};return b},'es6-impl','es3');$jscomp.polyfill('String.prototype.repeat',function(a){if(a){return a}var b=function(b){var c=$jscomp.checkStringArgs(this,null,'repeat');if(b<0||b>1342177279){throw new RangeError('Invalid count value')}b=b|0;var d='';while(b){if(b&1){d+=c}if(b>>>=1){c+=c}}return d};return b},'es6-impl','es3');$jscomp.stringPadding=function(c,a){var b=c!==undefined?String(c):' ';if(!(a>0)||!b){return ''}var d=Math.ceil(a/b.length);return b.repeat(d).substring(0,a)};$jscomp.polyfill('String.prototype.padEnd',function(a){if(a){return a}var b=function(d,c){var b=$jscomp.checkStringArgs(this,null,'padStart');var e=d-b.length;return b+$jscomp.stringPadding(c,e)};return b},'es8','es3');$jscomp.polyfill('String.prototype.padStart',function(a){if(a){return a}var b=function(d,c){var b=$jscomp.checkStringArgs(this,null,'padStart');var e=d-b.length;return $jscomp.stringPadding(c,e)+b};return b},'es8','es3');$jscomp.polyfill('String.prototype.startsWith',function(a){if(a){return a}var b=function(b,g){var c=$jscomp.checkStringArgs(this,b,'startsWith');b=b+'';var h=c.length;var e=b.length;var f=Math.max(0,Math.min(g|0,c.length));var d=0;while(d<e&&f<h){if(c[f++]!=b[d++]){return !1}}return d>=e};return b},'es6-impl','es3');$jscomp.arrayFromIterator=function(c){var b;var a=[];while(!(b=c.next()).done){a.push(b.value)}return a};$jscomp.arrayFromIterable=function(a){if(a instanceof Array){return a}else {return $jscomp.arrayFromIterator($jscomp.makeIterator(a))}};$jscomp.inherits=function(a,b){function tempCtor(){}tempCtor.prototype=b.prototype;a.superClass_=b.prototype;a.prototype=new tempCtor();a.prototype.constructor=a;for(var c in b){if(Object.defineProperties){var d=Object.getOwnPropertyDescriptor(b,c);if(d){Object.defineProperty(a,c,d)}}else {a[c]=b[c]}}};$jscomp.polyfill('WeakSet',function(b){function isConformant(){if(!b||!Object.seal){return !1}try{var c=Object.seal({});var d=Object.seal({});var a=new b([c]);if(!a.has(c)||a.has(d)){return !1}a['delete'](c);a.add(d);return !a.has(c)&&a.has(d)}catch(e){return !1}}if(isConformant()){return b}var a=function(a){this.map_=new WeakMap();if(a){$jscomp.initSymbol();$jscomp.initSymbolIterator();var e=$jscomp.makeIterator(a);var c;while(!(c=e.next()).done){var d=c.value;this.add(d)}}};a.prototype.add=function(a){this.map_.set(a,!0);return this};a.prototype.has=function(a){return this.map_.has(a)};a.prototype['delete']=function(a){return this.map_['delete'](a)};return a},'es6-impl','es3');try{if(Array.prototype.values.toString().indexOf('[native code]')==-1){delete Array.prototype.values}}catch(a){}var Ext=Ext||{};if(!Ext.Toolbar){Ext.Toolbar={}}if(!Ext.app){Ext.app={}}if(!Ext.app.bind){Ext.app.bind={}}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.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.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.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.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.header){Ext.grid.header={}}if(!Ext.grid.locking){Ext.grid.locking={}}if(!Ext.grid.plugin){Ext.grid.plugin={}}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.boxOverflow){Ext.layout.container.boxOverflow={}}if(!Ext.list){Ext.list={}}if(!Ext.locale){Ext.locale={}}if(!Ext.locale.en){Ext.locale.en={}}if(!Ext.locale.en.data){Ext.locale.en.data={}}if(!Ext.locale.en.data.validator){Ext.locale.en.data.validator={}}if(!Ext.locale.en.form){Ext.locale.en.form={}}if(!Ext.locale.en.form.field){Ext.locale.en.form.field={}}if(!Ext.locale.en.grid){Ext.locale.en.grid={}}if(!Ext.locale.en.grid.filters){Ext.locale.en.grid.filters={}}if(!Ext.locale.en.grid.filters.filter){Ext.locale.en.grid.filters.filter={}}if(!Ext.locale.en.grid.header){Ext.locale.en.grid.header={}}if(!Ext.locale.en.grid.plugin){Ext.locale.en.grid.plugin={}}if(!Ext.locale.en.picker){Ext.locale.en.picker={}}if(!Ext.locale.en.toolbar){Ext.locale.en.toolbar={}}if(!Ext.locale.en.view){Ext.locale.en.view={}}if(!Ext.locale.en.window){Ext.locale.en.window={}}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.state){Ext.state={}}if(!Ext.tab){Ext.tab={}}if(!Ext.theme){Ext.theme={}}if(!Ext.theme.crisp){Ext.theme.crisp={}}if(!Ext.theme.crisp.view){Ext.theme.crisp.view={}}if(!Ext.tip){Ext.tip={}}if(!Ext.toolbar){Ext.toolbar={}}if(!Ext.tree){Ext.tree={}}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.layout){Ext.ux.layout={}}if(!Ext.ux.statusbar){Ext.ux.statusbar={}}if(!Ext.view){Ext.view={}}if(!Ext.window){Ext.window={}}var ExtThemeNeptune=ExtThemeNeptune||{};if(!ExtThemeNeptune.form){ExtThemeNeptune.form={}}if(!ExtThemeNeptune.form.field){ExtThemeNeptune.form.field={}}if(!ExtThemeNeptune.layout){ExtThemeNeptune.layout={}}if(!ExtThemeNeptune.layout.component){ExtThemeNeptune.layout.component={}}if(!ExtThemeNeptune.menu){ExtThemeNeptune.menu={}}if(!ExtThemeNeptune.panel){ExtThemeNeptune.panel={}}if(!ExtThemeNeptune.resizer){ExtThemeNeptune.resizer={}}if(!ExtThemeNeptune.toolbar){ExtThemeNeptune.toolbar={}}var Rambox=Rambox||{};if(!Rambox.model){Rambox.model={}}if(!Rambox.overrides){Rambox.overrides={}}if(!Rambox.overrides.grid){Rambox.overrides.grid={}}if(!Rambox.overrides.grid.column){Rambox.overrides.grid.column={}}if(!Rambox.overrides.layout){Rambox.overrides.layout={}}if(!Rambox.overrides.layout.container){Rambox.overrides.layout.container={}}if(!Rambox.overrides.layout.container.boxOverflow){Rambox.overrides.layout.container.boxOverflow={}}if(!Rambox.profile){Rambox.profile={}}if(!Rambox.store){Rambox.store={}}if(!Rambox.util){Rambox.util={}}if(!Rambox.ux){Rambox.ux={}}if(!Rambox.ux.mixin){Rambox.ux.mixin={}}if(!Rambox.view){Rambox.view={}}if(!Rambox.view.add){Rambox.view.add={}}if(!Rambox.view.main){Rambox.view.main={}}if(!Rambox.view.preferences){Rambox.view.preferences={}}(function(q){var e,p=['constructor','toString','valueOf','toLocaleString'],n={},m={},k=0,l,j,a,b,o,f,c,d,g,h,i,t=function(){var s,t;j=Ext.Base;a=Ext.ClassManager;b=Ext.Class;for(s=p.length;s-->0;){t=1<<s;m[n[t]=p[s]]=t}for(s in m){k|=m[s]}k=~k;Function.prototype.$isFunction=1;i=!!a.addAlias;o=b.getPreprocessor('config').fn;f=b.getPreprocessor('cachedConfig');f=f&&f.fn;h=b.getPreprocessor('privates');h=h&&h.fn;d=b.getPreprocessor('platformConfig');d=d&&d.fn;c=a.postprocessors.platformConfig;c=c&&c.fn;g=a.postprocessors.deprecated;g=g&&g.fn;e=j.$staticMembers;if(!e){e=[];for(l in j){if(j.hasOwnProperty(l)){e.push(l)}}}q.derive=r;return r.apply(this,arguments)},s=function(f,d,o){var l=o.enumerableMembers,j=f.prototype,b,h,k,e,m;if(!d){return}if(i){f.addMembers(d)}else {for(b in d){e=d[b];if(e&&e.$isFunction&&!e.$isClass&&e!==Ext.emptyFn&&e!==Ext.identityFn){m=j.hasOwnProperty(b)&&j[b];if(m){e.$previous=m}j[b]=h=e;h.$owner=f;h.$name=b}else {j[b]=e}}for(k=1;l;k<<=1){if(l&k){l&=~k;b=n[k];j[b]=h=d[b];h.$owner=f;h.$name=b}}}if(d.platformConfig&&c){c.call(a,f.$className,f,d)}if(d.deprecated&&g){g.call(a,f.$className,f,d)}},r=function(u,Q,c,L,E,M,O,B,D,G,N){var g=function ctor(){return this.constructor.apply(this,arguments)||null},m=g,v={enumerableMembers:L&k,onCreated:N,onBeforeCreated:s,aliases:B},p=c.alternateClassName||[],P=Ext.global,F,z,l,K,y,C,H,r,x,w,n,I,t,J=a.alternateToName||a.maps.alternateToName,A=a.nameToAlternates||a.maps.nameToAlternates;for(l=e.length;l-->0;){H=e[l];g[H]=j[H]}if(c.$isFunction){c=c(g)}v.data=c;x=c.statics;delete c.statics;c.$className=u;if('$className' in c){g.$className=c.$className}g.extend(Q);r=g.prototype;if(E){g.xtype=c.xtype=E[0];r.xtypes=E}r.xtypesChain=M;r.xtypesMap=O;c.alias=B;m.triggerExtended(g,c,v);if(c.onClassExtended){g.onExtended(c.onClassExtended,g);delete c.onClassExtended}if(c.privates&&h){h.call(b,g,c)}if(x){if(i){g.addStatics(x)}else {for(w in x){if(x.hasOwnProperty(w)){t=x[w];if(t&&t.$isFunction&&!t.$isClass&&t!==Ext.emptyFn&&t!==Ext.identityFn){g[w]=I=t;I.$owner=g;I.$name=w}g[w]=t}}}}if(c.inheritableStatics){g.addInheritableStatics(c.inheritableStatics);delete c.inheritableStatics}if(r.onClassExtended){m.onExtended(r.onClassExtended,m);delete r.onClassExtended}if(c.platformConfig&&d){d.call(b,g,c);delete c.platformConfig}if(c.config){o.call(b,g,c)}if(c.cachedConfig&&f){f.call(b,g,c);delete c.cachedConfig}v.onBeforeCreated(g,v.data,v);for(l=0,y=D&&D.length;l<y;++l){g.mixin.apply(g,D[l])}for(l=0,y=B.length;l<y;l++){F=B[l];a.setAlias?a.setAlias(g,F):a.addAlias(g,F)}if(c.singleton){m=new g()}if(!(p instanceof Array)){p=[p]}n=a.getName(m);for(l=0,K=p.length;l<K;l++){z=p[l];a.classes[z]=m;if(i){a.addAlternate(g,z)}else {if(n){J[z]=n;p=A[n]||(A[n]=[]);p.push(z)}}}for(l=0,y=G.length;l<y;l+=2){C=G[l];if(!C){C=P}C[G[l+1]]=m}a.classes[u]=m;if(!i){if(n&&n!==u){J[u]=n;p=A[n]||(A[n]=[]);p.push(u)}}delete r.alternateClassName;if(v.onCreated){v.onCreated.call(m,m)}if(u){a.triggerCreated(u)}return m};q.derive=t})(Ext.cmd={});var Ext=Ext||{};Ext._startTime=Date.now?Date.now():+new Date();(function(){var d=this,h=Object.prototype,c=h.toString,b=['valueOf','toLocaleString','toString','constructor'],a=function(){},f=function(){},e=function(a){return a},g=function(){var a=g.caller.caller;return a.$owner.prototype[a.$name].apply(this,arguments)},k=Ext.manifest||{},l,i=/\[object\s*(?:Array|Arguments|\w*Collection|\w*List|HTML\s+document\.all\s+class)\]/,j=/^\\?\/Date\(([-+])?(\d+)(?:[+-]\d{4})?\)\\?\/$/;Ext.global=d;a.$nullFn=e.$nullFn=a.$emptyFn=e.$identityFn=f.$nullFn=!0;f.$privacy='framework';Ext['suspendLayouts']=Ext['resumeLayouts']=a;for(l in {toString:1}){b=null}Ext.enumerables=b;Ext.apply=function(c,a,g){if(g){Ext.apply(c,g)}if(c&&a&&typeof a==='object'){var e,f,d;for(e in a){c[e]=a[e]}if(b){for(f=b.length;f--;){d=b[f];if(a.hasOwnProperty(d)){c[d]=a[d]}}}}return c};Ext.buildSettings=Ext.apply({baseCSSPrefix:'x-'},Ext.buildSettings||{});Ext.apply(Ext,{idSeed:0,idPrefix:'ext-',isSecure:/^https/i.test(window.location.protocol),enableGarbageCollector:!1,enableListenerCollection:!0,name:Ext.sandboxName||'Ext',privateFn:f,emptyFn:a,identityFn:e,frameStartTime:+new Date(),manifest:k,validIdRe:/^[a-z_][a-z0-9\-_]*$/i,BLANK_IMAGE_URL:'data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==',makeIdSelector:function(a){return '#'+a},id:function(a,c){if(a&&a.id){return a.id}var b=(c||Ext.idPrefix)+ ++Ext.idSeed;if(a){a.id=b}return b},returnId:function(a){return a.getId()},returnTrue:function(){return !0},emptyString:new String(),baseCSSPrefix:Ext.buildSettings.baseCSSPrefix,$eventNameMap:{},$vendorEventRe:/^(Moz.+|MS.+|webkit.+)/,canonicalEventName:function(a){return Ext.$eventNameMap[a]||(Ext.$eventNameMap[a]=Ext.$vendorEventRe.test(a)?a:a.toLowerCase())},applyIf:function(b,c){var a;if(b){for(a in c){if(b[a]===undefined){b[a]=c[a]}}}return b},now:d.performance&&d.performance.now?function(){return performance.now()}:Date.now||(Date.now=function(){return +new Date()}),destroy:function(){var c=arguments.length,b,a;for(b=0;b<c;b++){a=arguments[b];if(a){if(Ext.isArray(a)){this.destroy.apply(this,a)}else {if(Ext.isFunction(a.destroy)){a.destroy()}}}}return null},destroyMembers:function(c){for(var a,d,b=1,e=arguments,f=e.length;b<f;b++){a=c[d=e[b]];if(a!=null){c[d]=Ext.destroy(a)}}},override:function(a,c){if(a.$isClass){a.override(c)}else {if(typeof a==='function'){Ext.apply(a.prototype,c)}else {var e=a.self,b,d;if(e&&e.$isClass){for(b in c){if(c.hasOwnProperty(b)){d=c[b];if(typeof d==='function'){d.$name=b;d.$owner=e;d.$previous=a.hasOwnProperty(b)?a[b]:g}a[b]=d}}}else {Ext.apply(a,c)}}}return a},valueFrom:function(a,b,c){return Ext.isEmpty(a,c)?b:a},isEmpty:function(a,b){return a==null||(!b?a==='':!1)||Ext.isArray(a)&&a.length===0},isArray:'isArray' in Array?Array.isArray:function(a){return c.call(a)==='[object Array]'},isDate:function(a){return c.call(a)==='[object Date]'},isMSDate:function(a){if(!Ext.isString(a)){return !1}return j.test(a)},isObject:c.call(null)==='[object Object]'?function(a){return a!==null&&a!==undefined&&c.call(a)==='[object Object]'&&a.ownerDocument===undefined}:function(a){return c.call(a)==='[object Object]'},isSimpleObject:function(a){return a instanceof Object&&a.constructor===Object},isPrimitive:function(b){var a=typeof b;return a==='string'||a==='number'||a==='boolean'},isFunction:typeof document!=='undefined'&&typeof document.getElementsByTagName('body')==='function'?function(a){return !!a&&c.call(a)==='[object Function]'}:function(a){return !!a&&typeof a==='function'},isNumber:function(a){return typeof a==='number'&&isFinite(a)},isNumeric:function(a){return !isNaN(parseFloat(a))&&isFinite(a)},isString:function(a){return typeof a==='string'},isBoolean:function(a){return typeof a==='boolean'},isElement:function(a){return a?a.nodeType===1:!1},isTextNode:function(a){return a?a.nodeName==='#text':!1},isDefined:function(a){return typeof a!=='undefined'},isIterable:function(a){if(!a||typeof a.length!=='number'||typeof a==='string'||Ext.isFunction(a)){return !1}if(!a.propertyIsEnumerable){return !!a.item}if(a.hasOwnProperty('length')&&!a.propertyIsEnumerable('length')){return !0}return i.test(c.call(a))},isDebugEnabled:a,clone:function(a){if(a===null||a===undefined){return a}if(a.nodeType&&a.cloneNode){return a.cloneNode(!0)}var g=c.call(a),e,i,f,d,h;if(g==='[object Date]'){return new Date(a.getTime())}if(g==='[object Array]'){e=a.length;d=[];while(e--){d[e]=Ext.clone(a[e])}}else {if(g==='[object Object]'&&a.constructor===Object){d={};for(h in a){d[h]=Ext.clone(a[h])}if(b){for(i=b.length;i--;){f=b[i];if(a.hasOwnProperty(f)){d[f]=a[f]}}}}}return d||a},getUniqueGlobalNamespace:function(){var a=this.uniqueGlobalNamespace,b;if(a===undefined){b=0;do{a='ExtBox'+ ++b}while(d[a]!==undefined);d[a]=Ext;this.uniqueGlobalNamespace=a}return a},functionFactoryCache:{},cacheableFunctionFactory:function(){var f=this,a=Array.prototype.slice.call(arguments),e=f.functionFactoryCache,d,b,c;if(Ext.isSandboxed){c=a.length;if(c>0){c--;a[c]='var Ext=window.'+Ext.name+';'+a[c]}}d=a.join('');b=e[d];if(!b){b=Function.prototype.constructor.apply(Function.prototype,a);e[d]=b}return b},functionFactory:function(){var b=Array.prototype.slice.call(arguments),a;if(Ext.isSandboxed){a=b.length;if(a>0){a--;b[a]='var Ext=window.'+Ext.name+';'+b[a]}}return Function.prototype.constructor.apply(Function.prototype,b)},Logger:{verbose:a,log:a,info:a,warn:a,error:function(a){throw new Error(a)},deprecate:a},getElementById:function(a){return document.getElementById(a)},splitAndUnescape:function(){var a={};return function(e,c){if(!e){return []}else {if(!c){return [e]}}var g=a[c]||(a[c]=new RegExp('\\\\'+c,'g')),f=[],d,b;d=e.split(c);while((b=d.shift())!==undefined){while(b.charAt(b.length-1)==='\\'&&d.length>0){b=b+c+d.shift()}b=b.replace(g,c);f.push(b)}return f}}()});Ext.returnTrue.$nullFn=Ext.returnId.$nullFn=!0})();(function(){function toString(){var d=this,b=d.sourceClass,a=d.sourceMethod,c=d.msg;if(a){if(c){a+='(): ';a+=c}else {a+='()'}}if(b){a=a?b+'.'+a:b}return a||c||''}Ext.Error=function(b){if(Ext.isString(b)){b={msg:b}}var a=new Error();Ext.apply(a,b);a.message=a.message||a.msg;a.toString=toString;return a};Ext.apply(Ext.Error,{ignore:!1,raise:function(a){a=a||{};if(Ext.isString(a)){a={msg:a}}var d=this,c=d.raise.caller,e,b;if(c){if(!a.sourceMethod&&(b=c.$name)){a.sourceMethod=b}if(!a.sourceClass&&(b=c.$owner)&&(b=b.$className)){a.sourceClass=b}}if(d.handle(a)!==!0){e=toString.call(a);throw new Ext.Error(a)}},handle:function(){return this.ignore}})})();Ext.deprecated=function(a){return Ext.emptyFn};Ext.Array=function(){var c=Array.prototype,b=c.slice,f=function(){var a=[],b,c=20;if(!a.splice){return !1}while(c--){a.push('A')}a.splice(15,0,'F','F','F','F','F','F','F','F','F','F','F','F','F','F','F','F','F','F','F','F','F');b=a.length;a.splice(13,0,'XXX');if(b+1!==a.length){return !1}return !0}(),i='indexOf' in c,h=!0;function stableSort(b,e){var d=b.length,c=new Array(d),a;for(a=0;a<d;a++){c[a]=a}c.sort(function(a,c){return e(b[a],b[c])||a-c});for(a=0;a<d;a++){c[a]=b[c[a]]}for(a=0;a<d;a++){b[a]=c[a]}return b}try{if(typeof document!=='undefined'){b.call(document.getElementsByTagName('body'))}}catch(q){h=!1}var g=function(b,a){return a<0?Math.max(0,b.length+a):Math.min(b.length,a)},e=function(a,n,m,d){var e=d?d.length:0,i=a.length,f=g(a,n);if(f===i){if(e){a.push.apply(a,d)}}else {var k=Math.min(m,i-f),c=f+k,h=c+e-k,l=i-c,j=i-k,b;if(h<c){for(b=0;b<l;++b){a[h+b]=a[c+b]}}else {if(h>c){for(b=l;b--;){a[h+b]=a[c+b]}}}if(e&&f===j){a.length=j;a.push.apply(a,d)}else {a.length=j+e;for(b=0;b<e;++b){a[f+b]=d[b]}}}return a},k=function(a,c,d,b){if(b&&b.length){if(c===0&&!d){a.unshift.apply(a,b)}else {if(c<a.length){a.splice.apply(a,[c,d].concat(b))}else {a.push.apply(a,b)}}}else {a.splice(c,d)}return a},o=function(b,c,a){return e(b,c,a)},m=function(a,c,b){a.splice(c,b);return a},n=function(a,f,c){var d=g(a,f),h=a.slice(f,g(a,d+c));if(arguments.length<4){e(a,d,c)}else {e(a,d,c,b.call(arguments,3))}return h},l=function(a){return a.splice.apply(a,b.call(arguments,1))},d=f?m:o,j=f?k:e,p=f?l:n,a={binarySearch:function(h,i,c,b,d){var g=h.length,e,f;if(c instanceof Function){d=c;c=0;b=g}else {if(b instanceof Function){d=b;b=g}else {if(c===undefined){c=0}if(b===undefined){b=g}d=d||a.lexicalCompare}}--b;while(c<=b){e=c+b>>1;f=d(i,h[e]);if(f>=0){c=e+1}else {if(f<0){b=e-1}}}return c},defaultCompare:function(a,b){return a<b?-1:a>b?1:0},lexicalCompare:function(a,b){a=String(a);b=String(b);return a<b?-1:a>b?1:0},each:function(c,e,d,g){c=a.from(c);var b,f=c.length;if(g!==!0){for(b=0;b<f;b++){if(e.call(d||c[b],c[b],b,c)===!1){return b}}}else {for(b=f-1;b>-1;b--){if(e.call(d||c[b],c[b],b,c)===!1){return b}}}return !0},forEach:'forEach' in c?function(a,c,b){return a.forEach(c,b)}:function(b,d,c){for(var a=0,e=b.length;a<e;a++){d.call(c,b[a],a,b)}},indexOf:i?function(a,d,b){return c.indexOf.call(a,d,b)}:function(d,e,b){var a,c=d.length;for(a=b<0?Math.max(0,c+b):b||0;a<c;a++){if(d[a]===e){return a}}return -1},contains:i?function(a,b){return c.indexOf.call(a,b)!==-1}:function(b,d){var a,c;for(a=0,c=b.length;a<c;a++){if(b[a]===d){return !0}}return !1},toArray:function(a,d,c){if(!a||!a.length){return []}if(typeof a==='string'){a=a.split('')}if(h){return b.call(a,d||0,c||a.length)}var f=[],e;d=d||0;c=c?c<0?a.length+c:c:a.length;for(e=d;e<c;e++){f.push(a[e])}return f},pluck:function(b,f){var d=[],a,e,c;for(a=0,e=b.length;a<e;a++){c=b[a];d.push(c[f])}return d},map:'map' in c?function(a,c,b){return a.map(c,b)}:function(b,f,d){var c=[],a=0,e=b.length;for(;a<e;a++){c[a]=f.call(d,b[a],a,b)}return c},every:'every' in c?function(a,c,b){return a.every(c,b)}:function(b,d,c){var a=0,e=b.length;for(;a<e;++a){if(!d.call(c,b[a],a,b)){return !1}}return !0},some:'some' in c?function(a,c,b){return a.some(c,b)}:function(b,d,c){var a=0,e=b.length;for(;a<e;++a){if(d.call(c,b[a],a,b)){return !0}}return !1},equals:function(b,c){var d=b.length,e=c.length,a;if(b===c){return !0}if(d!==e){return !1}for(a=0;a<d;++a){if(b[a]!==c[a]){return !1}}return !0},clean:function(d){var c=[],b=0,e=d.length,a;for(;b<e;b++){a=d[b];if(!Ext.isEmpty(a)){c.push(a)}}return c},unique:function(e){var b=[],d=0,f=e.length,c;for(;d<f;d++){c=e[d];if(a.indexOf(b,c)===-1){b.push(c)}}return b},filter:'filter' in c?function(a,c,b){return a.filter(c,b)}:function(b,e,d){var c=[],a=0,f=b.length;for(;a<f;a++){if(e.call(d,b[a],a,b)){c.push(b[a])}}return c},findBy:function(b,e,c){var a=0,d=b.length;for(;a<d;a++){if(e.call(c||b,b[a],a)){return b[a]}}return null},from:function(c,e){if(c===undefined||c===null){return []}if(Ext.isArray(c)){return e?b.call(c):c}var d=typeof c;if(c&&c.length!==undefined&&d!=='string'&&(d!=='function'||!c.apply)){return a.toArray(c)}return [c]},remove:function(b,e){var c=a.indexOf(b,e);if(c!==-1){d(b,c,1)}return b},removeAt:function(c,b,a){var e=c.length;if(b>=0&&b<e){a=a||1;a=Math.min(a,e-b);d(c,b,a)}return c},include:function(b,c){if(!a.contains(b,c)){b.push(c)}},clone:function(a){return b.call(a)},merge:function(){var e=b.call(arguments),d=[],c,f;for(c=0,f=e.length;c<f;c++){d=d.concat(e[c])}return a.unique(d)},intersect:function(){var m=[],f=b.call(arguments),g,o,r,e,k,j,q,n,p,l,c,h,i;if(!f.length){return m}g=f.length;for(c=k=0;c<g;c++){j=f[c];if(!e||j.length<e.length){e=j;k=c}}e=a.unique(e);d(f,k,1);q=e.length;g=f.length;for(c=0;c<q;c++){n=e[c];l=0;for(h=0;h<g;h++){o=f[h];r=o.length;for(i=0;i<r;i++){p=o[i];if(n===p){l++;break}}}if(l===g){m.push(n)}}return m},difference:function(i,f){var c=b.call(i),h=c.length,e,a,g;for(e=0,g=f.length;e<g;e++){for(a=0;a<h;a++){if(c[a]===f[e]){d(c,a,1);a--;h--}}}return c},slice:[1,2].slice(1,undefined).length?function(a,c,d){return b.call(a,c,d)}:function(a,c,d){if(typeof c==='undefined'){return b.call(a)}if(typeof d==='undefined'){return b.call(a,c)}return b.call(a,c,d)},sort:function(c,b){return stableSort(c,b||a.lexicalCompare)},flatten:function(b){var a=[];function rFlatten(f){var c,e,d;for(c=0,e=f.length;c<e;c++){d=f[c];if(Ext.isArray(d)){rFlatten(d)}else {a.push(d)}}return a}return rFlatten(b)},min:function(d,e){var b=d[0],c,f,a;for(c=0,f=d.length;c<f;c++){a=d[c];if(e){if(e(b,a)===1){b=a}}else {if(a<b){b=a}}}return b},max:function(d,e){var b=d[0],c,f,a;for(c=0,f=d.length;c<f;c++){a=d[c];if(e){if(e(b,a)===-1){b=a}}else {if(a>b){b=a}}}return b},mean:function(b){return b.length>0?a.sum(b)/b.length:undefined},sum:function(b){var d=0,a,e,c;for(a=0,e=b.length;a<e;a++){c=b[a];d+=c}return d},toMap:function(c,b,e){var d={},a=c.length;if(!b){while(a--){d[c[a]]=a+1}}else {if(typeof b==='string'){while(a--){d[c[a][b]]=a+1}}else {while(a--){d[b.call(e,c[a])]=a+1}}}return d},toValueMap:function(g,d,k,f){var b={},e=g.length,j,i,h,l,c,a;if(!d){while(e--){a=g[e];b[a]=a}}else {if(!(l=typeof d!=='string')){f=k}i=f===1;j=f===2;while(e--){a=g[e];c=l?d.call(k,a):a[d];if(i){if(c in b){b[c].push(a)}else {b[c]=[a]}}else {if(j&&c in b){if((h=b[c]) instanceof Array){h.push(a)}else {b[c]=[h,a]}}else {b[c]=a}}}}return b},erase:d,insert:function(a,b,c){return j(a,b,0,c)},replace:j,splice:p,push:function(a){var d=arguments.length,c=1,b;if(a===undefined){a=[]}else {if(!Ext.isArray(a)){a=[a]}}for(;c<d;c++){b=arguments[c];Array.prototype.push[Ext.isIterable(b)?'apply':'call'](a,b)}return a},numericSortFn:function(a,b){return a-b}};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 m=/^[\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,i=/([-.*+?\^${}()|\[\]\/\\])/g,k=/^\s+|\s+$/g,j=/\s+/,l=/(^[^a-z]*|[^\w])/gi,c,a,b,d,h=function(b,a){return c[a]},g=function(c,b){return b in a?a[b]:String.fromCharCode(parseInt(b.substr(2),10))},e=function(b,a){if(b===null||b===undefined||a===null||a===undefined){return !1}return a.length<=b.length},f;return f={insert:function(b,c,a){if(!b){return c}if(!c){return b}var d=b.length;if(!a&&a!==0){a=d}if(a<0){a*=-1;if(a>=d){a=0}else {a=d-a}}if(a===0){b=c+b}else {if(a>=b.length){b+=c}else {b=b.substr(0,a)+c+b.substr(a)}}return b},startsWith:function(b,a,d){var c=e(b,a);if(c){if(d){b=b.toLowerCase();a=a.toLowerCase()}c=b.lastIndexOf(a,0)===0}return c},endsWith:function(b,a,d){var c=e(b,a);if(c){if(d){b=b.toLowerCase();a=a.toLowerCase()}c=b.indexOf(a,b.length-a.length)!==-1}return c},createVarName:function(a){return a.replace(l,'')},htmlEncode:function(a){return !a?a:String(a).replace(b,h)},htmlDecode:function(a){return !a?a:String(a).replace(d,g)},hasHtmlCharacters:function(a){return b.test(a)},addCharacterEntities:function(g){var i=[],h=[],e,f;for(e in g){f=g[e];a[e]=f;c[f]=e;i.push(f);h.push(e)}b=new RegExp('('+i.join('|')+')','g');d=new RegExp('('+h.join('|')+'|&#[0-9]{1,5};)','g')},resetCharacterEntities:function(){c={};a={};this.addCharacterEntities({'&':'&','>':'>','<':'<','"':'"',''':"'"})},urlAppend:function(a,b){if(!Ext.isEmpty(b)){return a+(a.indexOf('?')===-1?'?':'&')+b}return a},trim:function(a){if(a){a=a.replace(m,'')}return a||''},capitalize:function(a){if(a){a=a.charAt(0).toUpperCase()+a.substr(1)}return a||''},uncapitalize:function(a){if(a){a=a.charAt(0).toLowerCase()+a.substr(1)}return a||''},ellipsis:function(a,c,e){if(a&&a.length>c){if(e){var b=a.substr(0,c-2),d=Math.max(b.lastIndexOf(' '),b.lastIndexOf('.'),b.lastIndexOf('!'),b.lastIndexOf('?'));if(d!==-1&&d>=c-15){return b.substr(0,d)+'...'}}return a.substr(0,c-3)+'...'}return a},escapeRegex:function(a){return a.replace(i,'\\$1')},createRegex:function(b,d,e,c){var a=b;if(b!=null&&!b.exec){a=f.escapeRegex(String(b));if(d!==!1){a='^'+a}if(e!==!1){a+='$'}a=new RegExp(a,c!==!1?'i':'')}return a},escape:function(a){return a.replace(n,'\\$1')},toggle:function(b,a,c){return b===a?c:a},leftPad:function(c,d,b){var a=String(c);b=b||' ';while(a.length<d){a=b+a}return a},repeat:function(c,a,d){if(a<1){a=0}for(var b=[],e=a;e--;){b.push(c)}return b.join(d||'')},splitWords:function(a){if(a&&typeof a=='string'){return a.replace(k,'').split(j)}return a||[]}}}();Ext.String.resetCharacterEntities();Ext.htmlEncode=Ext.String.htmlEncode;Ext.htmlDecode=Ext.String.htmlDecode;Ext.urlAppend=Ext.String.urlAppend;Ext.Date=function(){var a,b=Date,d=/(\\.)/g,h=/([gGhHisucUOPZ]|MS)/,g=/([djzmnYycU]|MS)/,i=/\\/gi,e=/\{(\d+)\}/g,f=new RegExp('\\/Date\\(([-+])?(\\d+)(?:[+-]\\d{4})?\\)\\/'),c=Ext.String.leftPad,j=['var me = this, dt, y, m, d, h, i, s, ms, o, O, z, zz, u, v, W, year, jan4, week1monday, daysInMonth, dayMatched,','def = me.defaults,','from = Ext.Number.from,','results = String(input).match(me.parseRegexes[{0}]);','if(results){','{1}','if(u != null){','v = new Date(u * 1000);','}else{','dt = me.clearTime(new Date);','y = from(y, from(def.y, dt.getFullYear()));','m = from(m, from(def.m - 1, dt.getMonth()));','dayMatched = d !== undefined;','d = from(d, from(def.d, dt.getDate()));','if (!dayMatched) {','dt.setDate(1);','dt.setMonth(m);','dt.setFullYear(y);','daysInMonth = me.getDaysInMonth(dt);','if (d > daysInMonth) {','d = daysInMonth;','}','}','h = from(h, from(def.h, dt.getHours()));','i = from(i, from(def.i, dt.getMinutes()));','s = from(s, from(def.s, dt.getSeconds()));','ms = from(ms, from(def.ms, dt.getMilliseconds()));','if(z >= 0 && y >= 0){','v = me.add(new Date(y < 100 ? 100 : y, 0, 1, h, i, s, ms), me.YEAR, y < 100 ? y - 100 : 0);','v = !strict? v : (strict === true && (z <= 364 || (me.isLeapYear(v) && z <= 365))? me.add(v, me.DAY, z) : null);','}else if(strict === true && !me.isValid(y, m + 1, d, h, i, s, ms)){','v = null;','}else{','if (W) {','year = y || (new Date()).getFullYear();','jan4 = new Date(year, 0, 4, 0, 0, 0);','d = jan4.getDay();','week1monday = new Date(jan4.getTime() - ((d === 0 ? 6 : d - 1) * 86400000));','v = Ext.Date.clearTime(new Date(week1monday.getTime() + ((W - 1) * 604800000 + 43200000)));','} else {','v = me.add(new Date(y < 100 ? 100 : y, m, d, h, i, s, ms), me.YEAR, y < 100 ? y - 100 : 0);','}','}','}','}','if(v){','if(zz != null){','v = me.add(v, me.SECOND, -v.getTimezoneOffset() * 60 - zz);','}else if(o){',"v = me.add(v, me.MINUTE, -v.getTimezoneOffset() + (sn == '+'? -1 : 1) * (hr * 60 + mn));",'}','}','return (v != null) ? v : null;'].join('\n');if(!Date.prototype.toISOString){Date.prototype.toISOString=function(){var a=this;return c(a.getUTCFullYear(),4,'0')+'-'+c(a.getUTCMonth()+1,2,'0')+'-'+c(a.getUTCDate(),2,'0')+'T'+c(a.getUTCHours(),2,'0')+':'+c(a.getUTCMinutes(),2,'0')+':'+c(a.getUTCSeconds(),2,'0')+'.'+c(a.getUTCMilliseconds(),3,'0')+'Z'}}function xf(a){var b=Array.prototype.slice.call(arguments,1);return a.replace(e,function(d,c){return b[c]})}return a={now:b.now,toString:function(a){if(!a){a=new b()}return a.getFullYear()+'-'+c(a.getMonth()+1,2,'0')+'-'+c(a.getDate(),2,'0')+'T'+c(a.getHours(),2,'0')+':'+c(a.getMinutes(),2,'0')+':'+c(a.getSeconds(),2,'0')},getElapsed:function(b,c){return Math.abs(b-(c||a.now()))},useStrict:!1,formatCodeToRegex:function(c,d){var b=a.parseCodes[c];if(b){b=typeof b==='function'?b():b;a.parseCodes[c]=b}return b?Ext.applyIf({c:b.c?xf(b.c,d||'{0}'):b.c},b):{g:0,c:null,s:Ext.String.escapeRegex(c)}},parseFunctions:{'MS':function(c,d){var a=(c||'').match(f);return a?new b(((a[1]||'')+a[2])*1):null},'time':function(c,d){var a=parseInt(c,10);if(a||a===0){return new b(a)}return null},'timestamp':function(c,d){var a=parseInt(c,10);if(a||a===0){return new b(a*1000)}return null}},parseRegexes:[],formatFunctions:{'MS':function(){return '\\/Date('+this.getTime()+')\\/'},'time':function(){return this.getTime().toString()},'timestamp':function(){return a.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(b){return a.monthNames[b].substring(0,3)},getShortDayName:function(b){return a.dayNames[b].substring(0,3)},getMonthNumber:function(b){return a.monthNumbers[b.substring(0,1).toUpperCase()+b.substring(1,3).toLowerCase()]},formatContainsHourInfo:function(a){return h.test(a.replace(d,''))},formatContainsDateInfo:function(a){return g.test(a.replace(d,''))},unescapeFormat:function(a){return a.replace(i,'')},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 e='Y-m-dTH:i:sP',d=[],b,f=e.length,c;for(b=0;b<f;++b){c=e.charAt(b);d.push(c==='T'?"'T'":a.getFormatCode(c))}return d.join(' + ')},C:function(){return 'm.toISOString()'},U:'Math.round(m.getTime() / 1000)'},isValid:function(d,j,i,f,g,h,e){f=f||0;g=g||0;h=h||0;e=e||0;var c=a.add(new b(d<100?100:d,j-1,i,f,g,h,e),a.YEAR,d<100?d-100:0);return d===c.getFullYear()&&j===c.getMonth()+1&&i===c.getDate()&&f===c.getHours()&&g===c.getMinutes()&&h===c.getSeconds()&&e===c.getMilliseconds()},parse:function(e,b,c){var d=a.parseFunctions;if(d[b]==null){a.createParser(b)}return d[b].call(a,e,Ext.isDefined(c)?c:a.useStrict)},parseDate:function(d,b,c){return a.parse(d,b,c)},getFormatCode:function(c){var b=a.formatCodes[c];if(b){b=typeof b==='function'?b():b;a.formatCodes[c]=b}return b||"'"+Ext.String.escape(c)+"'"},createFormat:function(f){var d=[],c=!1,b='',e;for(e=0;e<f.length;++e){b=f.charAt(e);if(!c&&b==='\\'){c=!0}else {if(c){c=!1;d.push("'"+Ext.String.escape(b)+"'")}else {if(b==='\n'){d.push("'\\n'")}else {d.push(a.getFormatCode(b))}}}}a.formatFunctions[f]=Ext.functionFactory('var m=this;return '+d.join('+'))},createParser:function(f){var k=a.parseRegexes.length,i=1,d=[],g=[],c=!1,e='',h=0,m=f.length,l=[],b;for(;h<m;++h){e=f.charAt(h);if(!c&&e==='\\'){c=!0}else {if(c){c=!1;g.push(Ext.String.escape(e))}else {b=a.formatCodeToRegex(e,i);i+=b.g;g.push(b.s);if(b.g&&b.c){if(b.calcAtEnd){l.push(b.c)}else {d.push(b.c)}}}}}d=d.concat(l);a.parseRegexes[k]=new RegExp('^'+g.join('')+'$','i');a.parseFunctions[f]=Ext.functionFactory('input','strict',xf(j,k,d.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 c=[],b=0;b<7;c.push(a.getShortDayName(b)),++b){}return {g:0,c:null,s:'(?:'+c.join('|')+')'}},l:function(){return {g:0,c:null,s:'(?:'+a.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:'('+a.monthNames.join('|')+')'}},M:function(){for(var c=[],b=0;b<12;c.push(a.getShortMonthName(b)),++b){}return Ext.applyIf({s:'('+c.join('|')+')'},a.formatCodeToRegex('F'))},m:{g:1,c:'m = parseInt(results[{0}], 10) - 1;\n',s:'(1[0-2]|0[1-9])'},n:{g:1,c:'m = parseInt(results[{0}], 10) - 1;\n',s:'(1[0-2]|[1-9])'},t:{g:0,c:null,s:'(?:\\d{2})'},L:{g:0,c:null,s:'(?:1|0)'},o:{g:1,c:'y = parseInt(results[{0}], 10);\n',s:'(\\d{4})'},Y:{g:1,c:'y = parseInt(results[{0}], 10);\n',s:'(\\d{4})'},y:{g:1,c:'var ty = parseInt(results[{0}], 10);\ny = ty > me.y2kYear ? 1900 + ty : 2000 + ty;\n',s:'(\\d{2})'},a:{g:1,c:'if (/(am)/i.test(results[{0}])) {\nif (!h || h == 12) { h = 0; }\n} else { if (!h || h < 12) { h = (h || 0) + 12; }}',s:'(am|pm|AM|PM)',calcAtEnd:!0},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:!0},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 d=[],b=[a.formatCodeToRegex('Y',1),a.formatCodeToRegex('m',2),a.formatCodeToRegex('d',3),a.formatCodeToRegex('H',4),a.formatCodeToRegex('i',5),a.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){",a.formatCodeToRegex('P',8).c,'}else{',a.formatCodeToRegex('O',8).c,'}','}'].join('\n')}],c,e;for(c=0,e=b.length;c<e;++c){d.push(b[c].c)}return {g:1,c:d.join(''),s:[b[0].s,'(?:','-',b[1].s,'(?:','-',b[2].s,'(?:','(?:T| )?',b[3].s,':',b[4].s,'(?::',b[5].s,')?','(?:(?:\\.|,)(\\d+))?','(Z|(?:[-+]\\d{2}(?::)?\\d{2}))?',')?',')?',')?'].join('')}},U:{g:1,c:'u = parseInt(results[{0}], 10);\n',s:'(-?\\d+)'}},dateFormat:function(c,b){return a.format(c,b)},isEqual:function(a,b){if(a&&b){return a.getTime()===b.getTime()}return !(a||b)},format:function(d,b){var c=a.formatFunctions;if(!Ext.isDate(d)){return ''}if(c[b]==null){a.createFormat(b)}return c[b].call(d)+''},getTimezone:function(a){return a.toString().replace(/^.* (?:\((.*)\)|([A-Z]{1,5})(?:[\-+][0-9]{4})?(?: -?\d+)?)$/,'$1$2').replace(/[^A-Z]/g,'')},getGMTOffset:function(c,b){var a=c.getTimezoneOffset();return (a>0?'-':'+')+Ext.String.leftPad(Math.floor(Math.abs(a)/60),2,'0')+(b?':':'')+Ext.String.leftPad(Math.abs(a%60),2,'0')},getDayOfYear:function(c){var e=0,b=a.clone(c),f=c.getMonth(),d;for(d=0,b.setDate(1),b.setMonth(0);d<f;b.setMonth(++d)){e+=a.getDaysInMonth(b)}return e+c.getDate()-1},getWeekOfYear:function(){var a=86400000,c=7*a;return function(d){var f=b.UTC(d.getFullYear(),d.getMonth(),d.getDate()+3)/a,e=Math.floor(f/7),g=(new b(e*c)).getUTCFullYear();return e-Math.floor(b.UTC(g,0,7)/c)+1}}(),isLeapYear:function(b){var a=b.getFullYear();return !!((a&3)===0&&(a%100||a%400===0&&a))},getFirstDayOfMonth:function(b){var a=(b.getDay()-(b.getDate()-1))%7;return a<0?a+7:a},getLastDayOfMonth:function(b){return a.getLastDateOfMonth(b).getDay()},getFirstDateOfMonth:function(a){return new b(a.getFullYear(),a.getMonth(),1)},getLastDateOfMonth:function(c){return new b(c.getFullYear(),c.getMonth(),a.getDaysInMonth(c))},getDaysInMonth:function(){var b=[31,28,31,30,31,30,31,31,30,31,30,31];return function(c){var d=c.getMonth();return d===1&&a.isLeapYear(c)?29:b[d]}}(),getSuffix:function(a){switch(a.getDate()){case 1:case 21:case 31:return 'st';case 2:case 22:return 'nd';case 3:case 23:return 'rd';default:return 'th';}},clone:function(a){return new b(a.getTime())},isDST:function(a){return (new b(a.getFullYear(),0,1)).getTimezoneOffset()!==a.getTimezoneOffset()},clearTime:function(b,f){if(f){return a.clearTime(a.clone(b))}var e=b.getDate(),c,d;b.setHours(0);b.setMinutes(0);b.setSeconds(0);b.setMilliseconds(0);if(b.getDate()!==e){for(c=1,d=a.add(b,a.HOUR,c);d.getDate()!==e;c++,d=a.add(b,a.HOUR,c)){}b.setDate(e);b.setHours(d.getHours())}return b},add:function(f,h,c){var b=a.clone(f),d,g,e=0;if(!h||c===0){return b}g=c-parseInt(c,10);c=parseInt(c,10);if(c){switch(h.toLowerCase()){case a.MILLI:b.setTime(b.getTime()+c);break;case a.SECOND:b.setTime(b.getTime()+c*1000);break;case a.MINUTE:b.setTime(b.getTime()+c*60*1000);break;case a.HOUR:b.setTime(b.getTime()+c*60*60*1000);break;case a.DAY:b.setDate(b.getDate()+c);break;case a.MONTH:d=f.getDate();if(d>28){d=Math.min(d,a.getLastDateOfMonth(a.add(a.getFirstDateOfMonth(f),a.MONTH,c)).getDate())};b.setDate(d);b.setMonth(f.getMonth()+c);break;case a.YEAR:d=f.getDate();if(d>28){d=Math.min(d,a.getLastDateOfMonth(a.add(a.getFirstDateOfMonth(f),a.YEAR,c)).getDate())};b.setDate(d);b.setFullYear(f.getFullYear()+c);break;}}if(g){switch(h.toLowerCase()){case a.MILLI:e=1;break;case a.SECOND:e=1000;break;case a.MINUTE:e=1000*60;break;case a.HOUR:e=1000*60*60;break;case a.DAY:e=1000*60*60*24;break;case a.MONTH:d=a.getDaysInMonth(b);e=1000*60*60*24*d;break;case a.YEAR:d=a.isLeapYear(b)?366:365;e=1000*60*60*24*d;break;}if(e){b.setTime(b.getTime()+e*g)}}return b},subtract:function(d,b,c){return a.add(d,b,-c)},between:function(c,b,d){var a=c.getTime();return b.getTime()<=a&&a<=d.getTime()},compat:function(){var c,g=['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'],h=['dateFormat','format','getTimezone','getGMTOffset','getDayOfYear','getWeekOfYear','isLeapYear','getFirstDayOfMonth','getLastDayOfMonth','getDaysInMonth','getSuffix','clone','isDST','clearTime','add','between'],j=g.length,i=h.length,f,e,d;for(d=0;d<j;d++){f=g[d];b[f]=a[f]}for(c=0;c<i;c++){e=h[c];b.prototype[e]=function(){var b=Array.prototype.slice.call(arguments);b.unshift(this);return a[e].apply(a,b)}}},diff:function(e,d,f){var b,c=+d-e;switch(f){case a.MILLI:return c;case a.SECOND:return Math.floor(c/1000);case a.MINUTE:return Math.floor(c/60000);case a.HOUR:return Math.floor(c/3600000);case a.DAY:return Math.floor(c/86400000);case 'w':return Math.floor(c/604800000);case a.MONTH:b=d.getFullYear()*12+d.getMonth()-(e.getFullYear()*12+e.getMonth());if(a.add(e,f,b)>d){return b-1};return b;case a.YEAR:b=d.getFullYear()-e.getFullYear();if(a.add(e,f,b)>d){return b-1}else {return b};}},align:function(e,f,d){var c=new b(+e);switch(f.toLowerCase()){case a.MILLI:return c;case a.SECOND:c.setUTCSeconds(c.getUTCSeconds()-c.getUTCSeconds()%d);c.setUTCMilliseconds(0);return c;case a.MINUTE:c.setUTCMinutes(c.getUTCMinutes()-c.getUTCMinutes()%d);c.setUTCSeconds(0);c.setUTCMilliseconds(0);return c;case a.HOUR:c.setUTCHours(c.getUTCHours()-c.getUTCHours()%d);c.setUTCMinutes(0);c.setUTCSeconds(0);c.setUTCMilliseconds(0);return c;case a.DAY:if(d===7||d===14){c.setUTCDate(c.getUTCDate()-c.getUTCDay()+1)};c.setUTCHours(0);c.setUTCMinutes(0);c.setUTCSeconds(0);c.setUTCMilliseconds(0);return c;case a.MONTH:c.setUTCMonth(c.getUTCMonth()-(c.getUTCMonth()-1)%d,1);c.setUTCHours(0);c.setUTCMinutes(0);c.setUTCSeconds(0);c.setUTCMilliseconds(0);return c;case a.YEAR:c.setUTCFullYear(c.getUTCFullYear()-c.getUTCFullYear()%d,1,1);c.setUTCHours(0);c.setUTCMinutes(0);c.setUTCSeconds(0);c.setUTCMilliseconds(0);return e;}}}}();Ext.Function=function(){var g=0,e,b=[],j=[],k=0,d={},c=window,i=c.requestAnimationFrame||c.webkitRequestAnimationFrame||c.mozRequestAnimationFrame||c.oRequestAnimationFrame||function(d){var b=Ext.now(),a=Math.max(0,16-(b-g)),e=c.setTimeout(function(){d(b+a)},a);g=b+a;return e},f=function(){var g=b.length,f,c,a;e=null;for(c=0;c<g;c++){a=b[c];f=a[3];if(d[f]){a[0].apply(a[1]||Ext.global,a[2]||j);delete d[f]}}b=b.slice(g)},h=function(){Ext.elevateFunction(f)},a={flexSetter:function(a){return function(b,e){var c,d;if(b!==null){if(typeof b!=='string'){for(c in b){if(b.hasOwnProperty(c)){a.call(this,c,b[c])}}if(Ext.enumerables){for(d=Ext.enumerables.length;d--;){c=Ext.enumerables[d];if(b.hasOwnProperty(c)){a.call(this,c,b[c])}}}}else {a.call(this,b,e)}}return this}},bind:function(e,c,b,a){if(arguments.length===2){return function(){return e.apply(c,arguments)}}var f=e,d=Array.prototype.slice;return function(){var g=b||arguments;if(a===!0){g=d.call(arguments,0);g=g.concat(b)}else {if(typeof a=='number'){g=d.call(arguments,0);Ext.Array.insert(g,a,b)}}return f.apply(c||Ext.global,g)}},bindCallback:function(b,e,a,d,c){return function(){var f=Ext.Array.slice(arguments);return Ext.callback(b,e,a?a.concat(f):f,d,c)}},pass:function(c,a,b){if(!Ext.isArray(a)){if(Ext.isIterable(a)){a=Ext.Array.clone(a)}else {a=a!==undefined?[a]:[]}}return function(){var d=a.slice();d.push.apply(d,arguments);return c.apply(b||this,d)}},alias:function(a,b){return function(){return a[b].apply(a,arguments)}},clone:function(a){return function(){return a.apply(this,arguments)}},createInterceptor:function(c,b,d,a){if(!Ext.isFunction(b)){return c}else {a=Ext.isDefined(a)?a:null;return function(){var e=this,f=arguments;b.target=e;b.method=c;return b.apply(d||e||Ext.global,f)!==!1?c.apply(e||Ext.global,f):a}}},createDelayed:function(a,e,b,c,d){if(b||c){a=Ext.Function.bind(a,b,c,d)}return function(){var g=this,f=Array.prototype.slice.call(arguments);setTimeout(function(){if(Ext.elevateFunction){Ext.elevateFunction(a,g,f)}else {a.apply(g,f)}},e)}},defer:function(a,b,d,e,c){a=Ext.Function.bind(a,d,e,c);if(b>0){return setTimeout(function(){if(Ext.elevateFunction){Ext.elevateFunction(a)}else {a()}},b)}a();return 0},interval:function(a,c,d,e,b){a=Ext.Function.bind(a,d,e,b);return setInterval(function(){if(Ext.elevateFunction){Ext.elevateFunction(a)}else {a()}},c)},createSequence:function(a,b,c){if(!b){return a}else {return function(){var d=a.apply(this,arguments);b.apply(c||this,arguments);return d}}},createBuffered:function(b,c,d,e){var a;return function(){var f=e||Array.prototype.slice.call(arguments,0),g=d||this;if(a){clearTimeout(a)}a=setTimeout(function(){if(Ext.elevateFunction){Ext.elevateFunction(b,g,f)}else {b.apply(g,f)}},c)}},createAnimationFrame:function(f,d,e,c){var b;c=c||3;return function(){var g=e||Array.prototype.slice.call(arguments,0);d=d||this;if(c===3&&b){a.cancelAnimationFrame(b)}if(c&1||!b){b=a.requestAnimationFrame(function(){b=null;f.apply(d,g)})}}},requestAnimationFrame:function(l,g,j){var a=++k,c=Array.prototype.slice.call(arguments,0);c[3]=a;d[a]=1;b.push(c);if(!e){e=i(Ext.elevateFunction?h:f)}return a},cancelAnimationFrame:function(a){delete d[a]},createThrottled:function(h,f,a){var e=0,d,c,b,g=function(){if(Ext.elevateFunction){Ext.elevateFunction(h,a,c)}else {h.apply(a,c)}e=Ext.now();b=null};return function(){if(!a){a=this}d=Ext.now()-e;c=arguments;if(d>=f){clearTimeout(b);g()}else {if(!b){b=Ext.defer(g,f-d)}}}},createBarrier:function(a,c,b){return function(){if(!--a){c.apply(b,arguments)}}},interceptBefore:function(b,a,e,d){var c=b[a]||Ext.emptyFn;return b[a]=function(){var f=e.apply(d||this,arguments);c.apply(this,arguments);return f}},interceptAfter:function(b,a,e,d){var c=b[a]||Ext.emptyFn;return b[a]=function(){c.apply(this,arguments);return e.apply(d||this,arguments)}},makeCallback:function(b,a){return function(){return a[b].apply(a,arguments)}}};Ext.defer=a.defer;Ext.interval=a.interval;Ext.pass=a.pass;Ext.bind=a.bind;Ext.deferCallback=a.requestAnimationFrame;return a}();Ext.Number=new function(){var b=this,d=(0.9).toFixed()!=='1',c=Math,a={count:!1,inclusive:!1,wrap:!0};Ext.apply(b,{Clip:{DEFAULT:a,COUNT:Ext.applyIf({count:!0},a),INCLUSIVE:Ext.applyIf({inclusive:!0},a),NOWRAP:Ext.applyIf({wrap:!1},a)},clipIndices:function(d,c,f){f=f||a;var h=0,i=f.wrap,g,b,e;c=c||[];for(e=0;e<2;++e){g=b;b=c[e];if(b==null){b=h}else {if(e&&f.count){b+=g;b=b>d?d:b}else {if(i){b=b<0?d+b:b}if(e&&f.inclusive){++b}b=b<0?0:b>d?d:b}}h=d}c[0]=g;c[1]=b<g?g:b;return c},constrain:function(c,b,a){var d=parseFloat(c);if(b===null){b=c}if(a===null){a=c}return d<b?b:d>a?a:d},snap:function(a,c,e,f){var d;if(a===undefined||a<e){return e||0}if(c){d=a%c;if(d!==0){a-=d;if(d*2>=c){a+=c}else {if(d*2<-c){a-=c}}}}return b.constrain(a,e,f)},snapInRange:function(a,d,c,e){var f;c=c||0;if(a===undefined||a<c){return c}if(d&&(f=(a-c)%d)){a-=f;f*=2;if(f>=d){a+=d}}if(e!==undefined){if(a>(e=b.snapInRange(e,d,c))){a=e}}return a},sign:function(a){a=+a;if(a===0||isNaN(a)){return a}return a>0?1:-1},toFixed:d?function(d,a){a=a||0;var b=c.pow(10,a);return (c.round(d*b)/b).toFixed(a)}:function(b,a){return b.toFixed(a)},from:function(a,b){if(isFinite(a)){a=parseFloat(a)}return !isNaN(a)?a:b},randomInt:function(a,b){return c.floor(c.random()*(b-a+1)+a)},correctFloat:function(a){return parseFloat(a.toPrecision(14))}});Ext.num=function(){return b.from.apply(this,arguments)}}();(function(){var b=function(){},d=/^\?/,f=/(\[):?([^\]]*)\]/g,e=/^([^\[]+)/,c=/\+/g,a=Ext.Object={chain:Object.create||function(a){b.prototype=a;var c=new b();b.prototype=null;return c},clear:function(a){for(var b in a){delete a[b]}return a},freeze:Object.freeze?function(b,c){if(b&&typeof b==='object'&&!Object.isFrozen(b)){Object.freeze(b);if(c){for(var d in b){a.freeze(b[d],c)}}}return b}:Ext.identityFn,toQueryObjects:function(e,c,f){var g=a.toQueryObjects,d=[],b,h;if(Ext.isArray(c)){for(b=0,h=c.length;b<h;b++){if(f){d=d.concat(g(e+'['+b+']',c[b],!0))}else {d.push({name:e,value:c[b]})}}}else {if(Ext.isObject(c)){for(b in c){if(c.hasOwnProperty(b)){if(f){d=d.concat(g(e+'['+b+']',c[b],!0))}else {d.push({name:e,value:c[b]})}}}}else {d.push({name:e,value:c})}}return d},toQueryString:function(g,j){var c=[],h=[],d,e,i,f,b;for(d in g){if(g.hasOwnProperty(d)){c=c.concat(a.toQueryObjects(d,g[d],j))}}for(e=0,i=c.length;e<i;e++){f=c[e];b=f.value;if(Ext.isEmpty(b)){b=''}else {if(Ext.isDate(b)){b=Ext.Date.toString(b)}}h.push(encodeURIComponent(f.name)+'='+encodeURIComponent(String(b)))}return h.join('&')},fromQueryString:function(u,v){var s=u.replace(d,'').split('&'),i={},j,o,a,g,n,t,q,h,l,m,r,k,b,p;for(n=0,t=s.length;n<t;n++){q=s[n];if(q.length>0){o=q.split('=');a=o[0];a=a.replace(c,'%20');a=decodeURIComponent(a);g=o[1];if(g!==undefined){g=g.replace(c,'%20');g=decodeURIComponent(g)}else {g=''}if(!v){if(i.hasOwnProperty(a)){if(!Ext.isArray(i[a])){i[a]=[i[a]]}i[a].push(g)}else {i[a]=g}}else {m=a.match(f);r=a.match(e);a=r[0];k=[];if(m===null){i[a]=g;continue}for(h=0,l=m.length;h<l;h++){b=m[h];b=b.length===2?'':b.substring(1,b.length-1);k.push(b)}k.unshift(a);j=i;for(h=0,l=k.length;h<l;h++){b=k[h];if(h===l-1){if(Ext.isArray(j)&&b===''){j.push(g)}else {j[b]=g}}else {if(j[b]===undefined||typeof j[b]==='string'){p=k[h+1];j[b]=Ext.isNumeric(p)||p===''?[]:{}}j=j[b]}}}}}return i},each:function(a,f,c){var d=Ext.enumerables,e,b;if(a){c=c||a;for(b in a){if(a.hasOwnProperty(b)){if(f.call(c,b,a[b],a)===!1){return}}}if(d){for(e=d.length;e--;){if(a.hasOwnProperty(b=d[e])){if(f.call(c,b,a[b],a)===!1){return}}}}}},eachValue:function(a,f,c){var d=Ext.enumerables,e,b;c=c||a;for(b in a){if(a.hasOwnProperty(b)){if(f.call(c,a[b])===!1){return}}}if(d){for(e=d.length;e--;){if(a.hasOwnProperty(b=d[e])){if(f.call(c,a[b])===!1){return}}}}},merge:function(d){var g=1,j=arguments.length,i=a.merge,h=Ext.clone,f,c,b,e;for(;g<j;g++){f=arguments[g];for(c in f){b=f[c];if(b&&b.constructor===Object){e=d[c];if(e&&e.constructor===Object){i(e,b)}else {d[c]=h(b)}}else {d[c]=b}}}return d},mergeIf:function(c){var e=1,g=arguments.length,f=Ext.clone,d,b,a;for(;e<g;e++){d=arguments[e];for(b in d){if(!(b in c)){a=d[b];if(a&&a.constructor===Object){c[b]=f(a)}else {c[b]=a}}}}return c},getAllKeys:function(c){var b=[],a;for(a in c){b.push(a)}return b},getKey:function(b,c){for(var a in b){if(b.hasOwnProperty(a)&&b[a]===c){return a}}return null},getValues:function(b){var c=[],a;for(a in b){if(b.hasOwnProperty(a)){c.push(b[a])}}return c},getKeys:typeof Object.keys=='function'?function(a){if(!a){return []}return Object.keys(a)}:function(b){var c=[],a;for(a in b){if(b.hasOwnProperty(a)){c.push(a)}}return c},getSize:function(b){var c=0,a;for(a in b){if(b.hasOwnProperty(a)){c++}}return c},isEmpty:function(a){for(var b in a){if(a.hasOwnProperty(b)){return !1}}return !0},equals:function(){var a=function(b,c){var a;for(a in b){if(b.hasOwnProperty(a)){if(b[a]!==c[a]){return !1}}}return !0};return function(b,c){if(b===c){return !0}if(b&&c){return a(b,c)&&a(c,b)}else {if(!b&&!c){return b===c}else {return !1}}}}(),fork:function(c){var d,e,b;if(c&&c.constructor===Object){d=a.chain(c);for(e in c){b=c[e];if(b){if(b.constructor===Object){d[e]=a.fork(b)}else {if(b instanceof Array){d[e]=Ext.Array.clone(b)}}}}}else {d=c}return d},defineProperty:'defineProperty' in Object?Object.defineProperty:function(b,c,a){if(!Object.prototype.__defineGetter__){return}if(a.get){b.__defineGetter__(c,a.get)}if(a.set){b.__defineSetter__(c,a.set)}},classify:function(c){var h=c,e=[],f={},g=function(){var b=0,d=e.length,a;for(;b<d;b++){a=e[b];this[a]=new f[a]()}},b,d;for(b in c){if(c.hasOwnProperty(b)){d=c[b];if(d&&d.constructor===Object){e.push(b);f[b]=a.classify(d)}}}g.prototype=h;return g}};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,e=/([\W]{1})/g,a=/^(\d)/g,d=function(b,a){return '\\'+a},b=function(b,a){return '\\00'+a.charCodeAt(0).toString(16)+' '};return function(f){return c.test(f)?f:f.replace(e,d).replace(a,b)}}(),callback:function(b,a,d,h,c,g){if(!b){return}var f=a in Ext._namedScopes;if(b.charAt){if((!a||f)&&c){a=c.resolveListenerScope(f?a:g)}b=a[b]}else {if(f){a=g||c}else {if(!a){a=c}}}var e;if(b&&Ext.isFunction(b)){a=a||Ext.global;if(h){Ext.defer(b,h,a,d)}else {if(Ext.elevateFunction){e=Ext.elevateFunction(b,a,d)}else {if(d){e=b.apply(a,d)}else {e=b.call(a)}}}}return e},coerce:function(a,e){var d=Ext.typeOf(a),c=Ext.typeOf(e),b=typeof a==='string';if(d!==c){switch(c){case 'string':return String(a);case 'number':return Number(a);case 'boolean':return b&&(!a||a==='false')?!1:Boolean(a);case 'null':return b&&(!a||a==='null')?null:a;case 'undefined':return b&&(!a||a==='undefined')?undefined:a;case 'date':return b&&isNaN(a)?Ext.Date.parse(a,Ext.Date.defaultFormat):Date(Number(a));}}return a},copyTo:function(e,d,a,f){if(typeof a==='string'){a=a.split(Ext.propertyNameSplitRe)}for(var b,c=0,g=a?a.length:0;c<g;c++){b=a[c];if(f||d.hasOwnProperty(b)){e[b]=d[b]}}return e},propertyNameSplitRe:/[,;\s]+/,copyToIf:function(c,e,a){if(typeof a==='string'){a=a.split(Ext.propertyNameSplitRe)}for(var b,d=0,f=a?a.length:0;d<f;d++){b=a[d];if(c[b]===undefined){c[b]=e[b]}}return c},extend:function(){var a=Object.prototype.constructor,b=function(b){for(var a in b){if(!b.hasOwnProperty(a)){continue}this[a]=b[a]}};return function(c,d,g){if(Ext.isObject(d)){g=d;d=c;c=g.constructor!==a?g.constructor:function(){d.apply(this,arguments)}}var h=function(){},e,f=d.prototype;h.prototype=f;e=c.prototype=new h();e.constructor=c;c.superclass=f;if(f.constructor===a){f.constructor=d}c.override=function(a){Ext.override(c,a)};e.override=b;e.proto=e;c.override(g);c.extend=function(a){return Ext.extend(c,a)};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]=!1}return b+Ext.Object.toQueryString.apply(Ext.Object,a)},urlDecode:function(){return Ext.Object.fromQueryString.apply(Ext.Object,arguments)},getScrollbarSize:function(d){var b=Ext._scrollbarSize;if(d||!b){var c=document.body,a=document.createElement('div');a.style.width=a.style.height='100px';a.style.overflow='scroll';a.style.position='absolute';c.appendChild(a);Ext._scrollbarSize=b={width:a.offsetWidth-a.clientWidth,height:a.offsetHeight-a.clientHeight};c.removeChild(a)}return b},typeOf:function(){var a=/\S/,d=Object.prototype.toString,c={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(e){if(e===null){return 'null'}var f=typeof e,g,h;if(c[f]){return f}g=b[h=d.call(e)];if(g){return g}if(f==='function'){return 'function'}if(f==='object'){if(e.nodeType!==undefined){if(e.nodeType===3){return a.test(e.nodeValue)?'textnode':'whitespace'}else {return 'element'}}return 'object'}return h}}(),factory:function(a,f,b,d){var e=Ext.ClassManager,c;if(!a||a.isInstance){if(b&&b!==a){b.destroy()}return a}if(d){if(typeof a==='string'){return e.instantiateByAlias(d+'.'+a)}else {if(Ext.isObject(a)&&'type' in a){return e.instantiateByAlias(d+'.'+a.type,a)}}}if(a===!0){return b||Ext.create(f)}if('xtype' in a){c=e.instantiateByAlias('widget.'+a.xtype,a)}else {if('xclass' in a){c=Ext.create(a.xclass,a)}}if(c){if(b){b.destroy()}return c}if(b){return b.setConfig(a)}return Ext.create(f,a)},log:function(){var a=function(){};a.info=a.warn=a.error=Ext.emptyFn;return a}()});(function(){var b=[''],c=/([^\d\.])/,e=/[^\d]/g,f=/[\-+]/g,g=/\s/g,d=/_/g,a;Ext.Version=a=function(k,p){var b=this,n=b.padModes,o,m,g,h,j,l,i;if(k.isVersion){k=k.version}b.version=i=String(k).toLowerCase().replace(d,'.').replace(f,'');o=i.charAt(0);if(o in n){i=i.substring(1);g=n[o]}else {g=p?n[p]:0}b.pad=g;l=i.search(c);b.shortVersion=i;if(l!==-1){b.release=j=i.substr(l,k.length);b.shortVersion=i.substr(0,l);j=a.releaseValueMap[j]||j}b.releaseValue=j||g;b.shortVersion=b.shortVersion.replace(e,'');b.parts=h=i.split('.');for(m=h.length;m--;){h[m]=parseInt(h[m],10)}if(g===Infinity){h.push(g)}b.major=h[0]||g;b.minor=h[1]||g;b.patch=h[2]||g;b.build=h[3]||g;return b};a.prototype={isVersion:!0,padModes:{'~':NaN,'^':Infinity},release:'',compareTo:function(f){var g=this,m=g.pad,j=g.parts,h=j.length,e=f.isVersion?f:new a(f),n=e.pad,k=e.parts,i=k.length,l=Math.max(h,i),b,c,d;for(b=0;b<l;b++){c=b<h?j[b]:m;d=b<i?k[b]:n;if(c<d){return -1}if(c>d){return 1}}c=g.releaseValue;d=e.releaseValue;if(c<d){return -1}if(c>d){return 1}return 0},toString:function(){return this.version},valueOf:function(){return this.version},getMajor:function(){return this.major},getMinor:function(){return this.minor},getPatch:function(){return this.patch},getBuild:function(){return this.build},getRelease:function(){return this.release},getReleaseValue:function(){return this.releaseValue},isGreaterThan:function(a){return this.compareTo(a)>0},isGreaterThanOrEqual:function(a){return this.compareTo(a)>=0},isLessThan:function(a){return this.compareTo(a)<0},isLessThanOrEqual:function(a){return this.compareTo(a)<=0},equals:function(a){return this.compareTo(a)===0},match:function(a){a=String(a);return this.version.substr(0,a.length)===a},toArray:function(){var a=this;return [a.getMajor(),a.getMinor(),a.getPatch(),a.getBuild(),a.getRelease()]},getShortVersion:function(){return this.shortVersion},gt:function(a){return this.compareTo(a)>0},lt:function(a){return this.compareTo(a)<0},gtEq:function(a){return this.compareTo(a)>=0},ltEq:function(a){return this.compareTo(a)<=0}};Ext.apply(a,{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(a){return !a?0:isNaN(a)?this.releaseValueMap[a]||a:parseInt(a,10)},compare:function(b,c){var d=b.isVersion?b:new a(b);return d.compareTo(c)},set:function(g,f,c){var b=a.aliases.to[f],d=c.isVersion?c:new a(c),e;g[f]=d;if(b){for(e=b.length;e-->0;){g[b[e]]=d}}return d}});Ext.apply(Ext,{compatVersions:{},versions:{},lastRegisteredVersion:null,getCompatVersion:function(b){var c=Ext.compatVersions,d;if(!b){d=c.ext||c.touch||c.core}else {d=c[a.aliases.from[b]||b]}return d||Ext.getVersion(b)},setCompatVersion:function(b,c){a.set(Ext.compatVersions,b,c)},setVersion:function(b,c){Ext.lastRegisteredVersion=a.set(Ext.versions,b,c);return this},getVersion:function(c){var b=Ext.versions;if(!c){return b.ext||b.touch||b.core}return b[a.aliases.from[c]||c]},checkVersion:function(o,j){var p=Ext.isArray(o),s=a.aliases.from,q=p?o:b,t=q.length,n=Ext.versions,r=n.ext||n.touch,l,c,f,i,h,m,d,e,k;if(!p){b[0]=o}for(l=0;l<t;++l){if(!Ext.isString(d=q[l])){f=Ext.checkVersion(d.and||d.or,!d.or);if(d.not){f=!f}}else {if(d.indexOf(' ')>=0){d=d.replace(g,'')}c=d.indexOf('@');if(c<0){e=d;k=r}else {m=d.substring(0,c);if(!(k=n[s[m]||m])){if(j){return !1}continue}e=d.substring(c+1)}c=e.indexOf('-');if(c<0){if(e.charAt(c=e.length-1)==='+'){i=e.substring(0,c);h=null}else {i=h=e}}else {if(c>0){i=e.substring(0,c);h=e.substring(c+1)}else {i=null;h=e.substring(c+1)}}f=!0;if(i){i=new a(i,'~');f=i.ltEq(k)}if(f&&h){h=new a(h,'~');f=h.gtEq(k)}}if(f){if(!j){return !0}}else {if(j){return !1}}}return !!j},deprecate:function(b,e,c,d){if(a.compare(Ext.getVersion(b),e)<1){c.call(d)}}})})();(function(c){var d=c&&c.packages||{},b=c&&c.compatibility,a,e;for(a in d){e=d[a];Ext.setVersion(a,e.version)}if(b){if(Ext.isString(b)){Ext.setCompatVersion('core',b)}else {for(a in b){Ext.setCompatVersion(a,b[a])}}}if(!d.ext&&!d.touch){Ext.setVersion('ext','5')}})(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(a){var b=Ext.Config.map,c=b[a]||(b[a]=new Ext.Config(a));return c};Ext.Config.prototype={self:Ext.Config,isConfig:!0,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(b,d,f,e){var a,c;if(!d){a=b}else {if(!b){a=d}else {a=Ext.Object.chain(d);for(c in b){if(!e||!(c in a)){a[c]=b[c]}}}}return a},mergeSets:function(a,f,e){var b=f?Ext.Object.chain(f):{},c,d;if(a instanceof Array){for(c=a.length;c--;){d=a[c];if(!e||!(d in b)){b[d]=!0}}}else {if(a){if(a.constructor===Object){for(c in a){d=a[c];if(!e||!(c in b)){b[c]=d}}}else {if(!e||!(a in b)){b[a]=!0}}}}return b},makeGetter:function(){var b=this.name,a=this.names.internal;return function(){var c=this.$configPrefixed?a:b;return this[c]}},makeInitGetter:function(){var e=this.name,a=this.names,d=a.set,c=a.get,b=a.initializing;return function(){var a=this;a[b]=!0;delete a[c];a[d](a.config[e]);delete a[b];return a[c].apply(a,arguments)}},makeSetter:function(){var g=this.name,a=this.names,e=a.internal,f=a.get,d=a.apply,c=a.update,b;b=function(b){var a=this,h=a.$configPrefixed?e:g,i=a[h];delete a[f];if(!a[d]||(b=a[d](b,i))!==undefined){if(b!==(i=a[h])){a[h]=b;if(a[c]){a[c](b,i)}}}return a};b.$isDefault=!0;return b}};(function(){var c=Ext.Config,b=c.map,a=Ext.Object;Ext.Configurator=function(d){var b=this,e=d.prototype,c=d.superclass?d.superclass.self.$config:null;b.cls=d;if(c){b.configs=a.chain(c.configs);b.cachedConfigs=a.chain(c.cachedConfigs);b.initMap=a.chain(c.initMap);b.values=a.chain(c.values);b.needsFork=c.needsFork}else {b.configs={};b.cachedConfigs={};b.initMap={};b.values={}}e.config=e.defaultConfig=b.values;d.$config=b};Ext.Configurator.prototype={self:Ext.Configurator,needsFork:!1,initList:null,add:function(t,l){var i=this,n=i.cls,k=i.configs,v=i.cachedConfigs,p=i.initMap,g=n.prototype,r=l&&l.$config.configs,u=i.values,m,f,s,h,b,j,e,q,o,d;for(e in t){d=t[e];m=d&&d.constructor===Object;f=m&&'$value' in d?d:null;if(f){s=!!f.cached;d=f.$value;m=d&&d.constructor===Object}h=f&&f.merge;b=k[e];if(b){if(l){h=b.merge;if(!h){continue}f=null}else {h=h||b.merge}j=u[e];if(h){d=h.call(b,d,j,n,l)}else {if(m){if(j&&j.constructor===Object){d=a.merge({},j,d)}}}}else {if(r){b=r[e];f=null}else {b=c.get(e)}k[e]=b;if(b.cached||s){v[e]=!0}q=b.names;if(!g[o=q.get]){g[o]=b.getGetter()}if(!g[o=q.set]){g[o]=b.getSetter()}}if(f){if(b.owner!==n){k[e]=b=Ext.Object.chain(b);b.owner=n}Ext.apply(b,f);delete b.$value}if(!i.needsFork&&d&&(d.constructor===Object||d instanceof Array)){i.needsFork=!0}if(d!==null){p[e]=!0}else {if(g.$configPrefixed){g[k[e].names.internal]=null}else {g[k[e].name]=null}if(e in p){p[e]=!1}}u[e]=d}},configure:function(c,h){var k=this,u=k.configs,x=k.initMap,q=k.initListMap,o=k.initList,j=k.cls.prototype,i=k.values,r=0,v=!o,n,b,m,w,d,p,l,f,e,g,t,s;i=k.needsFork?a.fork(i):a.chain(i);if(v){k.initList=o=[];k.initListMap=q={};c.isFirstInstance=!0;for(e in x){w=x[e];b=u[e];t=b.cached;if(w){f=b.names;g=i[e];if(!j[f.set].$isDefault||j[f.apply]||j[f.update]||typeof g==='object'){if(t){(n||(n=[])).push(b)}else {o.push(b);q[e]=!0}c[f.get]=b.initGetter||b.getInitGetter()}else {j[b.getInternalName(j)]=g}}else {if(t){j[b.getInternalName(j)]=undefined}}}}l=n&&n.length;if(l){for(d=0;d<l;++d){p=n[d].getInternalName(j);c[p]=null}for(d=0;d<l;++d){f=(b=n[d]).names;m=f.get;if(c.hasOwnProperty(m)){c[f.set](i[b.name]);delete c[m]}}for(d=0;d<l;++d){p=n[d].getInternalName(j);j[p]=c[p];delete c[p]}}if(h&&h.platformConfig){h=k.resolvePlatformConfig(c,h)}if(v){if(c.afterCachedConfig&&!c.afterCachedConfig.$nullFn){c.afterCachedConfig(h)}}c.isConfiguring=!0;c.config=i;for(d=0,l=o.length;d<l;++d){b=o[d];c[b.names.get]=b.initGetter||b.getInitGetter()}if(c.transformInstanceConfig){h=c.transformInstanceConfig(h)}if(h){for(e in h){g=h[e];b=u[e];if(!b){c[e]=g}else {if(!b.lazy){++r}if(!q[e]){c[b.names.get]=b.initGetter||b.getInitGetter()}if(b.merge){g=b.merge(g,i[e],c)}else {if(g&&g.constructor===Object){s=i[e];if(s&&s.constructor===Object){g=a.merge(i[e],g)}else {g=Ext.clone(g)}}}}i[e]=g}}if(c.beforeInitConfig&&!c.beforeInitConfig.$nullFn){if(c.beforeInitConfig(h)===!1){return}}if(h){for(e in h){if(!r){break}b=u[e];if(b&&!b.lazy){--r;f=b.names;m=f.get;if(c.hasOwnProperty(m)){c[f.set](i[e]);delete c[f.get]}}}}for(d=0,l=o.length;d<l;++d){b=o[d];f=b.names;m=f.get;if(!b.lazy&&c.hasOwnProperty(m)){c[f.set](i[b.name]);delete c[m]}}delete c.isConfiguring},getCurrentConfig:function(c){var e=c.defaultConfig,d={},a;for(a in e){d[a]=c[b[a].names.get]()}return d},merge:function(g,c,f){var h=this.configs,b,a,d,e;for(b in f){a=f[b];e=h[b];if(e){if(e.merge){a=e.merge(a,c[b],g)}else {if(a&&a.constructor===Object){d=c[b];if(d&&d.constructor===Object){a=Ext.Object.merge(d,a)}else {a=Ext.clone(a)}}}}c[b]=a}return c},reconfigure:function(c,f,g){var m=c.config,i=[],p=c.$configStrict,k=this.configs,o=g&&g.defaults,n=g&&g.strict===!1,d,j,h,l,a,e,q;for(a in f){if(o&&c.hasOwnProperty(a)){continue}m[a]=f[a];d=k[a];if(d){c[d.names.get]=d.initGetter||d.getInitGetter()}else {if(p){continue}}i.push(a)}for(h=0,l=i.length;h<l;h++){a=i[h];d=k[a];if(d){e=d.names;j=e.get;if(c.hasOwnProperty(j)){c[e.set](f[a]);delete c[j]}}else {d=b[a]||Ext.Config.get(a);e=d.names;if(c[e.set]){c[e.set](f[a])}else {if(n){c[a]=f[a]}}}}},resolvePlatformConfig:function(g,e){var f=e&&e.platformConfig,b=e,c,a,d;if(f){a=Ext.getPlatformConfigKeys(f);d=a.length;if(d){b=Ext.merge({},b);for(c=0,d=a.length;c<d;++c){this.merge(g,b,f[a[c]])}}}return b}}})();Ext.Base=function(j){var c=[],d,g=[],k=function(d,f){var b=this,a,e,c;if(d){e=Ext.Config.map[d];c=e.names.get;if(f&&b.hasOwnProperty(c)){a=b.config[d]}else {a=b[c]()}}else {a=b.getCurrentConfig()}return a},i=function(a){return function(){return this[a].apply(this,arguments)}},l=Ext.Version,h=/^\d/,f={},e={},a=function(){},b=a.prototype;Ext.apply(a,{$className:'Ext.Base',$isClass:!0,create:function(){return Ext.create.apply(Ext,[this].concat(Array.prototype.slice.call(arguments,0)))},addDeprecations:function(o){var s=this,n=[],t=Ext.getCompatVersion(o.name),c,g,r,u,e,k,p,f,m,b,v,a,q,d;for(g in o){if(h.test(g)){d=new Ext.Version(g);d.deprecations=o[g];n.push(d)}}n.sort(l.compare);for(r=n.length;r--;){c=(d=n[r]).deprecations;e=s.prototype;q=c.statics;k=t&&t.lt(d);if(!k){break}while(c){m=c.methods;if(m){for(b in m){a=m[b];f=null;if(!a){}else {if(Ext.isString(a)){if(k){f=i(a)}}else {u='';if(a.message||a.fn){a=a.fn}p=e.hasOwnProperty(b)&&e[b];if(k&&a){a.$owner=s;a.$name=b;if(p){a.$previous=p}f=a}}}if(f){e[b]=f}}}c=q;q=null;e=s}}},extend:function(e){var c=this,h=e.prototype,d,a,i,g,f;d=c.prototype=Ext.Object.chain(h);d.self=c;c.superclass=d.superclass=h;if(!e.$isClass){for(a in b){if(a in d){d[a]=b[a]}}}f=h.$inheritableStatics;if(f){for(a=0,i=f.length;a<i;a++){g=f[a];if(!c.hasOwnProperty(g)){c[g]=e[g]}}}if(e.$onExtended){c.$onExtended=e.$onExtended.slice()}c.getConfigurator()},$onExtended:[],triggerExtended:function(){var c=this.$onExtended,d=c.length,a,b;if(d>0){for(a=0;a<d;a++){b=c[a];b.fn.apply(b.scope||this,arguments)}}},onExtended:function(b,a){this.$onExtended.push({fn:b,scope:a});return this},addStatics:function(a){this.addMembers(a,!0);return this},addInheritableStatics:function(e){var c,b,d=this.prototype,a,f;c=d.$inheritableStatics;b=d.$hasInheritableStatics;if(!c){c=d.$inheritableStatics=[];b=d.$hasInheritableStatics={}}for(a in e){if(e.hasOwnProperty(a)){f=e[a];this[a]=f;if(!b[a]){b[a]=!0;c.push(a)}}}return this},addMembers:function(d,f,q){var e=this,m=Ext.Function.clone,c=f?e:e.prototype,n=!f&&c.defaultConfig,l=Ext.enumerables,g=d.privates,h,i,p,a,b,o,k;if(g){delete d.privates;if(!f){k=g.statics;delete g.statics}e.addMembers(g,f,o);if(k){e.addMembers(k,!0,o)}}for(b in d){if(d.hasOwnProperty(b)){a=d[b];if(typeof a==='function'&&!a.$isClass&&!a.$nullFn){if(a.$owner){a=m(a)}if(c.hasOwnProperty(b)){a.$previous=c[b]}a.$owner=e;a.$name=b}else {if(n&&b in n&&!c.config.hasOwnProperty(b)){(h||(h={}))[b]=a;continue}}c[b]=a}}if(h){e.addConfig(h)}if(l){for(i=0,p=l.length;i<p;++i){if(d.hasOwnProperty(b=l[i])){a=d[b];if(a&&!a.$nullFn){if(a.$owner){a=m(a)}a.$owner=e;a.$name=b;if(c.hasOwnProperty(b)){a.$previous=c[b]}}c[b]=a}}}return this},addMember:function(a,b){f[a]=b;this.addMembers(f);delete f[a];return this},borrow:function(f,a){var g=f.prototype,d={},b,e,c;a=Ext.Array.from(a);for(b=0,e=a.length;b<e;b++){c=a[b];d[c]=g[c]}return this.addMembers(d)},override:function(a){var b=this,d=a.statics,c=a.inheritableStatics,e=a.config,g=a.mixins,f=a.cachedConfig;if(d||c||e){a=Ext.apply({},a)}if(d){b.addMembers(d,!0);delete a.statics}if(c){b.addInheritableStatics(c);delete a.inheritableStatics}if(e){b.addConfig(e);delete a.config}if(f){b.addCachedConfig(f);delete a.cachedConfig}delete a.mixins;b.addMembers(a);if(g){b.mixin(g)}return b},callParent:function(b){var a;return (a=this.callParent.caller)&&(a.$previous||(a=a.$owner?a:a.caller)&&a.$owner.superclass.self[a.$name]).apply(this,b||c)},callSuper:function(b){var a;return (a=this.callSuper.caller)&&((a=a.$owner?a:a.caller)&&a.$owner.superclass.self[a.$name]).apply(this,b||c)},mixin:function(m,g){var c=this,a,b,e,i,d,k,h,l,f;if(typeof m!=='string'){f=m;if(f instanceof Array){for(d=0,k=f.length;d<k;d++){a=f[d];c.mixin(a.prototype.mixinId||a.$className,a)}}else {for(var n in f){c.mixin(n,f[n])}}return}a=g.prototype;b=c.prototype;if(a.onClassMixedIn){a.onClassMixedIn.call(g,c)}if(!b.hasOwnProperty('mixins')){if('mixins' in b){b.mixins=Ext.Object.chain(b.mixins)}else {b.mixins={}}}for(e in a){l=a[e];if(e==='mixins'){Ext.applyIf(b.mixins,l)}else {if(!(e==='mixinId'||e==='config')&&b[e]===undefined){b[e]=l}}}i=a.$inheritableStatics;if(i){for(d=0,k=i.length;d<k;d++){h=i[d];if(!c.hasOwnProperty(h)){c[h]=g[h]}}}if('config' in a){c.addConfig(a.config,g)}b.mixins[m]=a;if(a.afterClassMixedIn){a.afterClassMixedIn.call(g,c)}return c},addConfig:function(b,a){var c=this.$config||this.getConfigurator();c.add(b,a)},addCachedConfig:function(c,d){var b={},a;for(a in c){b[a]={cached:!0,$value:c[a]}}this.addConfig(b,d)},getConfigurator:function(){return this.$config||new Ext.Configurator(this)},getName:function(){return Ext.getClassName(this)},createAlias:j(function(a,b){e[a]=function(){return this[b].apply(this,arguments)};this.override(e);delete e[a]})});for(d in a){if(a.hasOwnProperty(d)){g.push(d)}}a.$staticMembers=g;a.getConfigurator();a.addMembers({$className:'Ext.Base',isInstance:!0,$configPrefixed:!0,$configStrict:!0,isConfiguring:!1,isFirstInstance:!1,statics:function(){var a=this.statics.caller,b=this.self;if(!a){return b}return a.$owner},callParent:function(d){var a,b=(a=this.callParent.caller)&&(a.$previous||(a=a.$owner?a:a.caller)&&a.$owner.superclass[a.$name]);return b.apply(this,d||c)},callSuper:function(d){var a,b=(a=this.callSuper.caller)&&((a=a.$owner?a:a.caller)&&a.$owner.superclass[a.$name]);return b.apply(this,d||c)},self:a,constructor:function(){return this},getConfigurator:function(){return this.$config||this.self.getConfigurator()},initConfig:function(b){var a=this,c=a.getConfigurator();a.initConfig=Ext.emptyFn;a.initialConfig=b||{};c.configure(a,b);return a},beforeInitConfig:Ext.emptyFn,getConfig:k,setConfig:function(b,e,d){var c=this,a;if(b){if(typeof b==='string'){a={};a[b]=e}else {a=b}c.getConfigurator().reconfigure(c,a,d)}return c},getCurrentConfig:function(){var a=this.getConfigurator();return a.getCurrentConfig(this)},hasConfig:function(a){return a in this.defaultConfig},getInitialConfig:function(b){var a=this.config;if(!b){return a}return a[b]},$links:null,link:function(c,b){var a=this,d=a.$links||(a.$links={});d[c]=!0;a[c]=b;return b},unlink:function(e){var d=this,b,f,c,a;for(b=0,f=e.length;b<f;b++){c=e[b];a=d[c];if(a){if(a.isInstance&&!a.isDestroyed){a.destroy()}else {if(a.parentNode&&'nodeType' in a){a.parentNode.removeChild(a)}}}d[c]=null}return d},destroy:function(){var a=this,b=a.$links;a.destroy=Ext.emptyFn;a.isDestroyed=!0;if(b){a.$links=null;a.unlink(Ext.Object.getKeys(b))}}});b.callOverridden=b.callParent;return a}(Ext.Function.flexSetter);(function(b,a){(Ext.util||(Ext.util={})).Cache=b=function(e){var d=this,c;if(e){Ext.apply(d,e)}d.head=c={key:null,value:null};d.map={};c.next=c.prev=c};b.prototype=a={maxSize:100,count:0,clear:function(){var e=this,d=e.head,c=d.next;d.next=d.prev=d;if(!e.evict.$nullFn){for(;c!==d;c=c.next){e.evict(c.key,c.value)}}e.count=0},each:function(f,d){d=d||this;for(var e=this.head,c=e.next;c!==e;c=c.next){if(f.call(d,c.key,c.value)){break}}},get:function(e){var c=this,f=c.head,g=c.map,d=g[e];if(d){if(d.prev!==f){c.unlinkEntry(d);c.linkEntry(d)}}else {g[e]=d={key:e,value:c.miss.apply(c,arguments)};c.linkEntry(d);++c.count;while(c.count>c.maxSize){c.unlinkEntry(f.prev,!0);--c.count}}return d.value},evict:Ext.emptyFn,linkEntry:function(c){var d=this.head,e=d.next;c.next=e;c.prev=d;d.next=c;e.prev=c},unlinkEntry:function(c,f){var d=c.next,e=c.prev;e.next=d;d.prev=e;if(f){this.evict(c.key,c.value)}}};a.destroy=a.clear})();(function(){var a,d=Ext.Base,b=d.$staticMembers,c=function(a,b){return a.length-b.length||(a<b?-1:a>b?1:0)};function makeCtor(a){function constructor(){return this.constructor.apply(this,arguments)||null}return constructor}Ext.Class=a=function(b,c,d){if(typeof b!='function'){d=c;c=b;b=null}if(!c){c={}}b=a.create(b,c);a.process(b,c,d);return b};Ext.apply(a,{makeCtor:makeCtor,onBeforeCreated:function(a,c,b){a.addMembers(c);b.onCreated.call(a,a)},create:function(a,f){var e=b.length,c;if(!a){a=makeCtor()}while(e--){c=b[e];a[c]=d[c]}return a},process:function(l,f,k){var j=f.preprocessors||a.defaultPreprocessors,o=this.preprocessors,e={onBeforeCreated:this.onBeforeCreated},d=[],b,c,g,n,h,m,i;delete f.preprocessors;l._classHooks=e;for(g=0,n=j.length;g<n;g++){b=j[g];if(typeof b=='string'){b=o[b];c=b.properties;if(c===!0){d.push(b.fn)}else {if(c){for(h=0,m=c.length;h<m;h++){i=c[h];if(f.hasOwnProperty(i)){d.push(b.fn);break}}}}}else {d.push(b)}}e.onCreated=k?k:Ext.emptyFn;e.preprocessors=d;this.doProcess(l,f,e)},doProcess:function(f,g,b){var c=this,d=b.preprocessors,a=d.shift(),e=c.doProcess;for(;a;a=d.shift()){if(a.call(c,f,g,b,e)===!1){return}}b.onBeforeCreated.apply(c,arguments)},preprocessors:{},registerPreprocessor:function(a,e,b,c,d){if(!c){c='last'}if(!b){b=[a]}this.preprocessors[a]={name:a,properties:b||!1,fn:e};this.setDefaultPreprocessorPosition(a,c,d);return this},getPreprocessor:function(a){return this.preprocessors[a]},getPreprocessors:function(){return this.preprocessors},defaultPreprocessors:[],getDefaultPreprocessors:function(){return this.defaultPreprocessors},setDefaultPreprocessors:function(a){this.defaultPreprocessors=Ext.Array.from(a);return this},setDefaultPreprocessorPosition:function(d,a,e){var b=this.defaultPreprocessors,c;if(typeof a=='string'){if(a==='first'){b.unshift(d);return this}else {if(a==='last'){b.push(d);return this}}a=a==='after'?1:-1}c=Ext.Array.indexOf(b,e);if(c!==-1){Ext.Array.splice(b,Math.max(0,c+a),0,d)}return this}});a.registerPreprocessor('extend',function(b,c,i){var h=Ext.Base,g=h.prototype,f=c.extend,a,e,d;delete c.extend;if(f&&f!==Object){a=f}else {a=h}e=a.prototype;if(!a.$isClass){for(d in g){if(!e[d]){e[d]=g[d]}}}b.extend(a);b.triggerExtended.apply(b,arguments);if(c.onClassExtended){b.onExtended(c.onClassExtended,b);delete c.onClassExtended}},!0);a.registerPreprocessor('privates',function(d,e){var a=e.privates,c=a.statics,b=a.privacy||!0;delete e.privates;delete a.statics;d.addMembers(a,!1,b);if(c){d.addMembers(c,!0,b)}});a.registerPreprocessor('statics',function(b,a){b.addStatics(a.statics);delete a.statics});a.registerPreprocessor('inheritableStatics',function(b,a){b.addInheritableStatics(a.inheritableStatics);delete a.inheritableStatics});Ext.createRuleFn=function(a){return new Function('$c','with($c) { return ('+a+'); }')};Ext.expressionCache=new Ext.util.Cache({miss:Ext.createRuleFn});Ext.ruleKeySortFn=c;Ext.getPlatformConfigKeys=function(e){var b=[],a,d;for(a in e){d=Ext.expressionCache.get(a);if(d(Ext.platformTags)){b.push(a)}}b.sort(c);return b};a.registerPreprocessor('platformConfig',function(t,j,u){var f=j.platformConfig,b=j.config,e,r,n,h,g,p,a,i,m,o,d,c,k,l,q,s;delete j.platformConfig;if(f instanceof Array){b=b||{};s=(Ext.theme||(Ext.theme={name:'Default'})).name;for(c=0,k=f.length;c<k;c++){d=f[c];m=d.platform;delete d.platform;o=[].concat(d.theme);q=o.length;delete d.theme;if(m&&Ext.filterPlatform(m)){Ext.merge(b,d)}if(q){for(l=0;l<q;l++){if(s===o[l]){Ext.merge(b,d)}}}}}else {h=t.getConfigurator();r=h.configs;p=Ext.getPlatformConfigKeys(f);for(c=0,k=p.length;c<k;++c){n=f[p[c]];g=e=null;for(a in n){i=n[a];if(b&&a in b){(e||(e={}))[a]=i;(g||(g={}))[a]=b[a];delete b[a]}else {if(a in r){(e||(e={}))[a]=i}else {j[a]=i}}}if(g){h.add(g)}if(e){h.add(e)}}}});a.registerPreprocessor('config',function(b,a){if(a.hasOwnProperty('$configPrefixed')){b.prototype.$configPrefixed=a.$configPrefixed}b.addConfig(a.config);delete a.config});a.registerPreprocessor('cachedConfig',function(b,a){if(a.hasOwnProperty('$configPrefixed')){b.prototype.$configPrefixed=a.$configPrefixed}b.addCachedConfig(a.cachedConfig);delete a.cachedConfig});a.registerPreprocessor('mixins',function(e,b,a){var d=b.mixins,c=a.onCreated;delete b.mixins;a.onCreated=function(){a.onCreated=c;e.mixin(d);return a.onCreated.apply(this,arguments)}});Ext.extend=function(d,c,b){if(arguments.length===2&&Ext.isObject(c)){b=c;c=d;d=null}var e;if(!c){throw new Error('[Ext.extend] Attempting to extend from a class which has not been loaded on the page.')}b.extend=c;b.preprocessors=['extend','statics','inheritableStatics','mixins','platformConfig','config'];if(d){e=new a(d,b);e.prototype.constructor=d}else {e=new a(b)}e.prototype.override=function(e){for(var a in e){if(e.hasOwnProperty(a)){this[a]=e[a]}}};return e}})();Ext.Inventory=function(){var a=this;a.names=[];a.paths={};a.alternateToName={};a.aliasToName={};a.nameToAliases={};a.nameToAlternates={}};Ext.Inventory.prototype={_array1:[0],prefixes:null,dotRe:/\./g,wildcardRe:/\*/g,addAlias:function(a,b){return this.addMapping(a,b,this.aliasToName,this.nameToAliases)},addAlternate:function(b,a){return this.addMapping(b,a,this.alternateToName,this.nameToAlternates)},addMapping:function(h,m,k,j){var f=h.$className||h,c=f,l=this._array1,d,a,b,e,i,g;if(Ext.isString(f)){c={};c[f]=m}for(b in c){a=c[b];if(Ext.isString(a)){l[0]=a;a=l}i=a.length;g=j[b]||(j[b]=[]);for(e=0;e<i;++e){if(!(d=a[e])){continue}if(k[d]!==b){k[d]=b;g.push(d)}}}},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(k,e,r){var g=this,q=g.aliasToName,p=g.alternateToName,m=g.nameToAliases,o=g.nameToAlternates,i=r?e:{},l=[],n=Ext.isString(k)?[k]:k,t=n.length,s=g.wildcardRe,f,j,c,b,d,a,h;for(j=0;j<t;++j){if((f=n[j]).indexOf('*')<0){if(!(a=q[f])){if(!(a=p[f])){a=f}}if(!(a in i)&&!(e&&a in e)){i[a]=1;l.push(a)}}else {h=new RegExp('^'+f.replace(s,'(.*?)')+'$');for(a in m){if(!(a in i)&&!(e&&a in e)){if(!(b=h.test(a))){d=(c=m[a]).length;while(!b&&d-->0){b=h.test(c[d])}c=o[a];if(c&&!b){d=c.length;while(!b&&d-->0){b=h.test(c[d])}}}if(b){i[a]=1;l.push(a)}}}}}return l},getPath:function(a){var e=this,d=e.paths,b='',c;if(a in d){b=d[a]}else {c=e.getPrefix(a);if(c){a=a.substring(c.length+1);b=d[c];if(b){b+='/'}}b+=a.replace(e.dotRe,'/')+'.js'}return b},getPrefix:function(a){if(a in this.paths){return a}var d=this.getPrefixes(),e=d.length,b,c;while(e-->0){b=(c=d[e]).length;if(b<a.length&&a.charAt(b)==='.'&&c===a.substring(0,b)){return c}}return ''},getPrefixes:function(){var b=this,a=b.prefixes;if(!a){b.prefixes=a=b.names.slice(0);a.sort(b._compareNames)}return a},removeName:function(a){var c=this,j=c.aliasToName,i=c.alternateToName,h=c.nameToAliases,g=c.nameToAlternates,f=h[a],e=g[a],b,d;delete h[a];delete g[a];if(f){for(b=f.length;b--;){if(a===(d=f[b])){delete j[d]}}}if(e){for(b=e.length;b--;){if(a===(d=e[b])){delete i[d]}}}},resolveName:function(a){var c=this,b;if(!(a in c.nameToAliases)){if(!(b=c.aliasToName[a])){b=c.alternateToName[a]}}return b||a},select:function(b,f){var e=this,a={},d={excludes:a,exclude:function(){e.getNamesByExpression(arguments,a,!0);return this}},c;for(c in b){d[c]=e.selectMethod(a,b[c],f||b)}return d},selectMethod:function(a,c,b){var d=this;return function(f){var e=Ext.Array.slice(arguments,1);e.unshift(d.getNamesByExpression(f,a));return c.apply(b,e)}},setPath:Ext.Function.flexSetter(function(b,c){var a=this;a.paths[b]=c;a.names.push(b);a.prefixes=null;return a}),_compareNames:function(b,c){var a=b.length-c.length;if(!a){a=b<c?-1:1}return a}};Ext.ClassManager=function(m,c,n,g,e){var p=Ext.Class.makeCtor,a=Ext.apply(new Ext.Inventory(),{classes:{},classState:{},existCache:{},namespaceRewrites:[{from:'Ext.',to:Ext}],enableNamespaceParseCache:!0,namespaceParseCache:{},instantiators:[],isCreated:function(f){var h,j,d,b,i;if(a.classes[f]||a.existCache[f]){return !0}b=e;i=a.parseNamespace(f);for(h=0,j=i.length;h<j;h++){d=i[h];if(typeof d!=='string'){b=d}else {if(!b||!b[d]){return !1}b=b[d]}}a.triggerCreated(f);return !0},createdListeners:[],nameCreatedListeners:{},existsListeners:[],nameExistsListeners:{},overrideMap:{},triggerCreated:function(b,d){a.existCache[b]=d||1;a.classState[b]+=40;a.notify(b,a.createdListeners,a.nameCreatedListeners)},onCreated:function(f,d,b){a.addListener(f,d,b,a.createdListeners,a.nameCreatedListeners)},notify:function(l,d,p){var o=a.getAlternatesByName(l),h=[l],b,j,k,q,f,i;for(b=0,j=d.length;b<j;b++){f=d[b];f.fn.call(f.scope,l)}while(h){for(b=0,j=h.length;b<j;b++){i=h[b];d=p[i];if(d){for(k=0,q=d.length;k<q;k++){f=d[k];f.fn.call(f.scope,i)}delete p[i]}}h=o;o=null}},addListener:function(b,h,a,i,d){if(Ext.isArray(a)){b=Ext.Function.createBarrier(a.length,b,h);for(f=0;f<a.length;f++){this.addListener(b,null,a[f],i,d)}return}var f,j={fn:b,scope:h};if(a){if(this.isCreated(a)){b.call(h,a);return}if(!d[a]){d[a]=[]}d[a].push(j)}else {i.push(j)}},parseNamespace:function(f){var l=this.namespaceParseCache,a,j,o,b,k,d,h,i,p;if(this.enableNamespaceParseCache){if(l.hasOwnProperty(f)){return l[f]}}a=[];j=this.namespaceRewrites;o=e;b=f;for(i=0,p=j.length;i<p;i++){k=j[i];d=k.from;h=k.to;if(b===d||b.substring(0,d.length)===d){b=b.substring(d.length);if(typeof h!=='string'){o=h}else {a=a.concat(h.split('.'))}break}}a.push(o);a=a.concat(b.split('.'));if(this.enableNamespaceParseCache){l[f]=a}return a},setNamespace:function(k,j){var a=e,f=this.parseNamespace(k),i=f.length-1,h=f[i],d,b;for(d=0;d<i;d++){b=f[d];if(typeof b!=='string'){a=b}else {if(!a[b]){a[b]={}}a=a[b]}}a[h]=j;return a[h]},createNamespaces:function(){var b=e,h,a,d,f,j,i;for(d=0,j=arguments.length;d<j;d++){h=this.parseNamespace(arguments[d]);for(f=0,i=h.length;f<i;f++){a=h[f];if(typeof a!=='string'){b=a}else {if(!b[a]){b[a]={}}b=b[a]}}}return b},set:function(a,f){var b=this,d=b.getName(f);b.classes[a]=b.setNamespace(a,f);if(d&&d!==a){b.addAlternate(d,a)}return this},get:function(h){var i=this.classes,a,f,b,d,j;if(i[h]){return i[h]}a=e;f=this.parseNamespace(h);for(d=0,j=f.length;d<j;d++){b=f[d];if(typeof b!=='string'){a=b}else {if(!a||!a[b]){return null}a=a[b]}}return a},addNameAliasMappings:function(a){this.addAlias(a)},addNameAlternateMappings:function(a){this.addAlternate(a)},getByAlias:function(a){return this.get(this.getNameByAlias(a))},getName:function(a){return a&&a.$className||''},getClass:function(a){return a&&a.self||null},create:function(d,b,h){var f=p(d);if(typeof b==='function'){b=b(f)}b.$className=d;return new m(f,b,function(){var p=b.postprocessors||a.defaultPostprocessors,s=a.postprocessors,j=[],f,k,r,l,q,i,o;delete b.postprocessors;for(k=0,r=p.length;k<r;k++){f=p[k];if(typeof f==='string'){f=s[f];i=f.properties;if(i===!0){j.push(f.fn)}else {if(i){for(l=0,q=i.length;l<q;l++){o=i[l];if(b.hasOwnProperty(o)){j.push(f.fn);break}}}}}else {j.push(f)}}b.postprocessors=j;b.createdFn=h;a.processCreate(d,this,b)})},processCreate:function(a,b,f){var d=this,h=f.postprocessors.shift(),i=f.createdFn;if(!h){if(a){d.set(a,b)}delete b._classHooks;if(i){i.call(b,b)}if(a){d.triggerCreated(a)}return}if(h.call(d,a,b,f,d.processCreate)!==!1){d.processCreate(a,b,f)}},createOverride:function(h,d,o){var f=this,i=d.override,p=d.requires,r=d.uses,b=d.mixins,k,q=d.compatibility,j,l=function(){var a,s,q,t,u;if(!j){s=p?p.slice(0):[];if(b){if(!(k=b instanceof Array)){for(t in b){if(Ext.isString(a=b[t])){s.push(a)}}}else {for(q=0,u=b.length;q<u;++q){if(Ext.isString(a=b[q])){s.push(a)}}}}j=!0;if(s.length){Ext.require(s,l);return}}if(k){for(q=0,u=b.length;q<u;++q){if(Ext.isString(a=b[q])){b[q]=Ext.ClassManager.get(a)}}}else {if(b){for(t in b){if(Ext.isString(a=b[t])){b[t]=Ext.ClassManager.get(a)}}}}a=f.get(i);delete d.override;delete d.compatibility;delete d.requires;delete d.uses;Ext.override(a,d);Ext.Loader.history.push(h);if(r){Ext['Loader'].addUsedClasses(r)}if(o){o.call(a,a)}};a.overrideMap[h]=!0;if(!q||Ext.checkVersion(q)){f.onCreated(l,f,i)}f.triggerCreated(h,2);return f},instantiateByAlias:function(){var d=arguments[0],a=n.call(arguments),b=this.getNameByAlias(d);a[0]=b;return Ext.create.apply(Ext,a)},instantiate:function(){return Ext.create.apply(Ext,arguments)},dynInstantiate:function(b,a){a=g(a,!0);a.unshift(b);return Ext.create.apply(Ext,a)},getInstantiator:function(d){var h=this.instantiators,b,a,f;b=h[d];if(!b){a=d;f=[];for(a=0;a<d;a++){f.push('a['+a+']')}b=h[d]=new Function('c','a','return new c('+f.join(',')+')')}return b},postprocessors:{},defaultPostprocessors:[],registerPostprocessor:function(a,h,b,d,f){if(!d){d='last'}if(!b){b=[a]}this.postprocessors[a]={name:a,properties:b||!1,fn:h};this.setDefaultPostprocessorPosition(a,d,f);return this},setDefaultPostprocessors:function(a){this.defaultPostprocessors=g(a);return this},setDefaultPostprocessorPosition:function(f,a,h){var b=this.defaultPostprocessors,d;if(typeof a==='string'){if(a==='first'){b.unshift(f);return this}else {if(a==='last'){b.push(f);return this}}a=a==='after'?1:-1}d=Ext.Array.indexOf(b,h);if(d!==-1){Ext.Array.splice(b,Math.max(0,d+a),0,f)}return this}});a.registerPostprocessor('alias',function(i,h,f){var b=Ext.Array.from(f.alias),a,d;for(a=0,d=b.length;a<d;a++){c=b[a];this.addAlias(h,c)}},['xtype','alias']);a.registerPostprocessor('singleton',function(b,d,a,f){if(a.singleton){f.call(this,b,new d(),a)}else {return !0}return !1});a.registerPostprocessor('alternateClassName',function(j,i,h){var a=h.alternateClassName,b,f,d;if(!(a instanceof Array)){a=[a]}for(b=0,f=a.length;b<f;b++){d=a[b];this.set(d,i)}});a.registerPostprocessor('debugHooks',function(f,a,d){var b=a.isInstance?a.self:a;delete b.prototype.debugHooks});a.registerPostprocessor('deprecated',function(f,a,d){var b=a.isInstance?a.self:a;b.addDeprecations(d.deprecated);delete b.prototype.deprecated});Ext.apply(Ext,{create:function(){var b=arguments[0],h=typeof b,d=n.call(arguments,1),f;if(h==='function'){f=b}else {if(h!=='string'&&d.length===0){d=[b];if(!(b=b.xclass)){b=d[0].xtype;if(b){b='widget.'+b}}}b=a.resolveName(b);f=a.get(b)}if(!f){Ext.syncRequire(b);f=a.get(b)}return a.getInstantiator(d.length)(f,d)},widget:function(j,b){var h=j,f,d,i;if(typeof h!=='string'){b=j;h=b.xtype;d=b.xclass}else {b=b||{}}if(b.isComponent){return b}if(!d){f='widget.'+h;d=a.getNameByAlias(f)}if(d){i=a.get(d)}if(!i){return Ext.create(d||f,b)}return new i(b)},createByAlias:c(a,'instantiateByAlias'),define:function(b,d,f){if(d.override){a.classState[b]=20;return a.createOverride.apply(a,arguments)}a.classState[b]=10;return a.create.apply(a,arguments)},undefine:function(b){var j=a.classes,f,h,d,i;delete a.namespaceParseCache[b];delete j[b];delete a.existCache[b];delete a.classState[b];a.removeName(b);f=a.parseNamespace(b);h=f.length-1;d=f[0];for(i=1;i<h;i++){d=d[f[i]];if(!d){return}}try{delete d[f[h]]}catch(r){d[f[h]]=undefined}},getClassName:c(a,'getName'),getDisplayName:function(a){if(a){if(a.displayName){return a.displayName}if(a.$name&&a.$class){return Ext.getClassName(a.$class)+'#'+a.$name}if(a.$className){return a.$className}}return 'Anonymous'},getClass:c(a,'getClass'),namespace:c(a,'createNamespaces')});Ext.createWidget=Ext.widget;Ext.ns=Ext.namespace;m.registerPreprocessor('className',function(b,a){if('$className' in a){b.$className=a.$className}},!0,'first');m.registerPreprocessor('alias',function(r,f){var o=r.prototype,d=g(f.xtype),j=g(f.alias),k='widget.',q=k.length,l=Array.prototype.slice.call(o.xtypesChain||[]),i=Ext.merge({},o.xtypesMap||{}),a,h,p,b;for(a=0,h=j.length;a<h;a++){p=j[a];if(p.substring(0,q)===k){b=p.substring(q);Ext.Array.include(d,b)}}r.xtype=f.xtype=d[0];f.xtypes=d;for(a=0,h=d.length;a<h;a++){b=d[a];if(!i[b]){i[b]=!0;l.push(b)}}f.xtypesChain=l;f.xtypesMap=i;Ext.Function.interceptAfter(f,'onClassCreated',function(){var j=o.mixins,k,p;for(k in j){if(j.hasOwnProperty(k)){p=j[k];d=p.xtypes;if(d){for(a=0,h=d.length;a<h;a++){b=d[a];if(!i[b]){i[b]=!0;l.push(b)}}}}}});for(a=0,h=d.length;a<h;a++){b=d[a];Ext.Array.include(j,k+b)}f.alias=j},['xtype','alias']);if(Ext.manifest){var j=Ext.manifest,l=j.classes,d=j.paths,k={},i={},b,f,q,h,o;if(d){if(j.bootRelative){o=Ext.Boot.baseUrl;for(h in d){if(d.hasOwnProperty(h)){d[h]=o+d[h]}}}a.setPath(d)}if(l){for(b in l){i[b]=[];k[b]=[];f=l[b];if(f.alias){k[b]=f.alias}if(f.alternates){i[b]=f.alternates}}}a.addAlias(k);a.addAlternate(i)}return a}(Ext.Class,Ext.Function.alias,Array.prototype.slice,Ext.Array.from,Ext.global);(Ext.env||(Ext.env={})).Browser=function(e,r){var i=this,s=i.browserPrefixes,t=i.enginePrefixes,m=e.match(new RegExp('((?:'+Ext.Object.getValues(s).join(')|(?:')+'))([\\w\\._]+)')),q=e.match(new RegExp('((?:'+Ext.Object.getValues(t).join(')|(?:')+'))([\\w\\._]+)')),j=i.browserNames,c=j.other,k=i.engineNames,g=k.other,f='',l='',a='',o=!1,d,p,b,h,u;i.userAgent=e;if(m){c=j[Ext.Object.getKey(s,m[1])];if(c==='Safari'&&/^Opera/.test(e)){c='Opera'}f=new Ext.Version(m[2])}if(q){g=k[Ext.Object.getKey(t,q[1])];l=new Ext.Version(q[2])}if(g==='Trident'&&c!=='IE'){c='IE';var n=e.match(/.*rv:(\d+.\d+)/);if(n&&n.length){n=n[1];f=new Ext.Version(n)}}if(e.match(/FB/)&&c==='Other'){c=j.safari;g=k.webkit}if(e.match(/Android.*Chrome/g)){c='ChromeMobile'}if(e.match(/OPR/)){c='Opera';m=e.match(/OPR\/(\d+.\d+)/);f=new Ext.Version(m[1])}Ext.apply(this,{engineName:g,engineVersion:l,name:c,version:f});this.setFlag(c,!0,r);if(f){a=f.getMajor()||'';if(i.is.IE){a=parseInt(a,10);b=document.documentMode;if(b===7||a===7&&b!==8&&b!==9&&b!==10){a=7}else {if(b===8||a===8&&b!==8&&b!==9&&b!==10){a=8}else {if(b===9||a===9&&b!==7&&b!==8&&b!==10){a=9}else {if(b===10||a===10&&b!==7&&b!==8&&b!==9){a=10}else {if(b===11||a===11&&b!==7&&b!==8&&b!==9&&b!==10){a=11}}}}}u=Math.max(a,11);for(d=7;d<=u;++d){p='isIE'+d;if(a<=d){Ext[p+'m']=!0}if(a===d){Ext[p]=!0}if(a>=d){Ext[p+'p']=!0}}}if(i.is.Opera&&parseInt(a,10)<=12){Ext.isOpera12m=!0}Ext.chromeVersion=Ext.isChrome?a:0;Ext.firefoxVersion=Ext.isFirefox?a:0;Ext.ieVersion=Ext.isIE?a:0;Ext.operaVersion=Ext.isOpera?a:0;Ext.safariVersion=Ext.isSafari?a:0;Ext.webKitVersion=Ext.isWebKit?a:0;this.setFlag(c+a,!0,r);this.setFlag(c+f.getShortVersion())}for(d in j){if(j.hasOwnProperty(d)){h=j[d];this.setFlag(h,c===h)}}this.setFlag(h);if(l){this.setFlag(g+(l.getMajor()||''));this.setFlag(g+l.getShortVersion())}for(d in k){if(k.hasOwnProperty(d)){h=k[d];this.setFlag(h,g===h,r)}}this.setFlag('Standalone',!!navigator.standalone);this.setFlag('Ripple',!!document.getElementById('tinyhippos-injected')&&!Ext.isEmpty(window.top.ripple));this.setFlag('WebWorks',!!window.blackberry);if(window.PhoneGap!==undefined||window.Cordova!==undefined||window.cordova!==undefined){o=!0;this.setFlag('PhoneGap');this.setFlag('Cordova')}else {if(!!window.isNK){o=!0;this.setFlag('Sencha')}}if(/(Glass)/i.test(e)){this.setFlag('GoogleGlass')}if(/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)(?!.*FBAN)/i.test(e)){o=!0}this.setFlag('WebView',o);this.isStrict=Ext.isStrict=document.compatMode==='CSS1Compat';this.isSecure=Ext.isSecure;this.identity=c+a+(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(b,a,c){if(a===undefined){a=!0}this.is[b]=a;this.is[b.toLowerCase()]=a;if(c){Ext['is'+b]=a}return this},getStyleDashPrefix:function(){return this.styleDashPrefixes[this.engineName]},getStylePrefix:function(){return this.stylePrefixes[this.engineName]},getVendorProperyName:function(b){var a=this.propertyPrefixes[this.engineName];if(a.length>0){return a+Ext.String.capitalize(b)}return b},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,!0);Ext.userAgent=a.toLowerCase();Ext.SSL_SECURE_URL=Ext.isSecure&&Ext.isIE?"javascript:''":'about:blank'})(Ext.global.navigator.userAgent);Ext.env.OS=function(k,l,a){var j=this,g=j.names,h=j.prefixes,b,c='',n=j.is,d,m,f,i,e;a=a||Ext.browser;for(d in h){if(h.hasOwnProperty(d)){m=h[d];f=k.match(new RegExp('(?:'+m+')([^\\s;]+)'));if(f){b=g[d];e=f[1];if(e&&e==='HTC_'){c=new Ext.Version('2.3')}else {if(e&&e==='Silk/'){c=new Ext.Version('2.3')}else {c=new Ext.Version(f[f.length-1])}}break}}}if(!b){b=g[(k.toLowerCase().match(/mac|win|linux/)||['other'])[0]];c=new Ext.Version('')}this.name=b;this.version=c;if(l){this.setFlag(l.replace(/ simulator$/i,''))}this.setFlag(b);if(c){this.setFlag(b+(c.getMajor()||''));this.setFlag(b+c.getShortVersion())}for(d in g){if(g.hasOwnProperty(d)){i=g[d];if(!n.hasOwnProperty(b)){this.setFlag(i,b===i)}}}if(this.name==='iOS'&&window.screen.height===568){this.setFlag('iPhone5')}if(a.is.Safari||a.is.Silk){if(this.is.Android2||this.is.Android3||a.version.shortVersion===501){a.setFlag('AndroidStock');a.setFlag('AndroidStock2')}if(this.is.Android4){a.setFlag('AndroidStock');a.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(b,a){if(a===undefined){a=!0}if(this.flags){this.flags[b]=a}this.is[b]=a;this.is[b.toLowerCase()]=a;return this}};(function(){var h=Ext.global.navigator,i=h.userAgent,e=Ext.env.OS,f=Ext.is||(Ext.is={}),a,c,b;e.prototype.flags=f;Ext.os=a=new e(i,h.platform);c=a.name;Ext['is'+c]=!0;Ext.isMac=f.Mac=f.MacOS;var d=window.location.search.match(/deviceType=(Tablet|Phone)/),g=window.deviceType;if(d&&d[1]){b=d[1]}else {if(g==='iPhone'){b='Phone'}else {if(g==='iPad'){b='Tablet'}else {if(!a.is.Android&&!a.is.iOS&&!a.is.WindowsPhone&&/Windows|Linux|MacOS/.test(c)){b='Desktop';Ext.browser.is.WebView=!!Ext.browser.is.Ripple}else {if(a.is.iPad||a.is.RIMTablet||a.is.Android3||Ext.browser.is.Silk||a.is.Android4&&i.search(/mobile/i)===-1){b='Tablet'}else {b='Phone'}}}}}a.setFlag(b,!0);a.deviceType=b;delete e.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(a,d){var b=this.getTestElement(d).style,c=Ext.String.capitalize(a);if(typeof b[a]!=='undefined'||typeof b[Ext.browser.getStylePrefix(a)+c]!=='undefined'){return !0}return !1},isStyleSupportedWithoutPrefix:function(b,c){var a=this.getTestElement(c).style;if(typeof a[b]!=='undefined'){return !0}return !1},isEventSupported:function(e,d){if(d===undefined){d=window}var a=this.getTestElement(d),b='on'+e.toLowerCase(),c=b in a;if(!c){if(a.setAttribute&&a.removeAttribute){a.setAttribute(b,'');c=typeof a[b]==='function';if(typeof a[b]!=='undefined'){a[b]=undefined}a.removeAttribute(b)}}return c},getStyle:function(a,c){var b=a.ownerDocument.defaultView,d=b?b.getComputedStyle(a,null):a.currentStyle;return (d||a.style)[c]},getSupportedPropertyName:function(c,a){var b=Ext.browser.getVendorProperyName(a);if(b in c){return b}else {if(a in c){return a}}return null},detect:function(f){var a=this,e=document,k=a.toRun||a.tests,h=k.length,d=e.createElement('div'),i=[],l=Ext.supports,m=a.has,g,b,j,c;if(!Ext.theme){Ext.theme={name:'Default'}}Ext.theme.is={};Ext.theme.is[Ext.theme.name]=!0;d.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(f){e.body.appendChild(d)}j=a.preDetected[Ext.browser.identity]||[];while(h--){b=k[h];c=j[h];g=b.name;if(c===undefined){if(!f&&b.ready){i.push(b);continue}c=b.fn.call(a,e,d)}l[g]=m[g]=c}if(f){e.body.removeChild(d)}a.toRun=i},report:function(){var b=[],c=this.tests.length,a;for(a=0;a<c;++a){b.push(this.has[this.tests[a].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 a=this.getTestElement(),b=!1;a.innerHTML='<!--[if vml]><br><![endif]-->';b=a.childNodes.length===1;a.innerHTML='';return b}},{name:'touchScroll',fn:function(){var b=Ext.supports,a=0;if(navigator.msMaxTouchPoints||Ext.isWebKit&&b.TouchEvents&&Ext.os.is.Desktop){a=1}else {if(b.Touch){a=2}}return a}},{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():!1;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 !0}}catch(b){}return !1}},{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 !1}},{name:'NumericInputPlaceHolder',fn:function(){return !(Ext.browser.is.AndroidStock4&&Ext.os.version.getMinor()<2)}},{name:'ProperHBoxStretching',ready:!0,fn:function(){var a=document.createElement('div'),b=a.appendChild(document.createElement('div')),d=b.appendChild(document.createElement('div')),c;a.setAttribute('style','width: 100px; height: 100px; position: relative;');b.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(a);c=b.offsetWidth;document.body.removeChild(a);return c>100}},{name:'matchesSelector',fn:function(){var a=document.documentElement,d='matches',e='webkitMatchesSelector',b='msMatchesSelector',c='mozMatchesSelector';return a[d]?d:a[e]?e:a[b]?b:a[c]?c:null}},{name:'RightMargin',ready:!0,fn:function(c,b){var a=c.defaultView;return !(a&&a.getComputedStyle(b.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:!0,fn:function(c,b,a){a=c.defaultView;return !(a&&a.getComputedStyle(b.lastChild,null).backgroundColor!=='transparent')}},{name:'ComputedStyle',ready:!0,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:!0,fn:function(d){var b=['borderRadius','BorderRadius','MozBorderRadius','WebkitBorderRadius','OBorderRadius','KhtmlBorderRadius'],c=!1,a;for(a=0;a<b.length;a++){if(d.documentElement.style[b[a]]!==undefined){c=!0}}return c&&!Ext.isIE9}},{name:'CSS3LinearGradient',fn:function(i,c){var a='background-image:',e='-webkit-gradient(linear, left top, right bottom, from(black), to(white))',b='linear-gradient(left top, black, white)',g='-moz-'+b,h='-ms-'+b,f='-o-'+b,d=[a+e,a+b,a+g,a+h,a+f];c.style.cssText=d.join(';');return (''+c.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(b,a){if(Ext.isIE8){return !1}a.firstChild.style.cssText='opacity:0.73';return a.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:!0,fn:function(e){var d=e.body,c=!1,b=this.getTestElement(),a=b.style;if(b.getBoundingClientRect){a.WebkitTransform=a.MozTransform=a.msTransform=a.OTransform=a.transform='rotate(90deg)';a.width='100px';a.height='30px';d.appendChild(b);c=b.getBoundingClientRect().height!==100;d.removeChild(b)}return c}},{name:'ChildContentClearedWhenSettingInnerHTML',ready:!0,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:!0,fn:function(b,a){return a.childNodes[1].firstChild.offsetWidth===210}},{name:'IncludePaddingInHeightCalculation',ready:!0,fn:function(b,a){return a.childNodes[1].firstChild.offsetHeight===210}},{name:'TextAreaMaxLength',fn:function(a){return 'maxlength' in a.createElement('textarea')}},{name:'GetPositionPercentage',ready:!0,fn:function(b,a){return Ext.feature.getStyle(a.childNodes[2],'left')==='10%'}},{name:'PercentageHeightOverflowBug',ready:!0,fn:function(d){var c=!1,b,a;if(Ext.getScrollbarSize().height){a=this.getTestElement();b=a.style;b.height='50px';b.width='50px';b.overflow='auto';b.position='absolute';a.innerHTML=['<div style="display:table;height:100%;">','<div style="width:51px;"></div>','</div>'].join('');d.body.appendChild(a);if(a.firstChild.offsetHeight===50){c=!0}d.body.removeChild(a)}return c}},{name:'xOriginBug',ready:!0,fn:function(e,b){b.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 a=document.getElementById('b1').getBoundingClientRect(),c=document.getElementById('b2').getBoundingClientRect(),d=document.getElementById('b3').getBoundingClientRect();return c.left!==a.left&&d.right!==a.right}},{name:'ScrollWidthInlinePaddingBug',ready:!0,fn:function(c){var d=!1,a,b;b=c.createElement('div');a=b.style;a.height='50px';a.width='50px';a.padding='10px';a.overflow='hidden';a.position='absolute';b.innerHTML='<span style="display:inline-block;zoom:1;height:60px;width:60px;"></span>';c.body.appendChild(b);if(b.scrollWidth===70){d=!0}c.body.removeChild(b);return d}},{name:'rtlVertScrollbarOnRight',ready:!0,fn:function(d,c){c.innerHTML='<div style="height:100px;width:100px;direction:rtl;overflow:scroll"><div style="width:20px;height:200px;"></div></div>';var a=c.firstChild,b=a.firstChild;return b.offsetLeft+b.offsetWidth!==a.offsetLeft+a.offsetWidth}},{name:'rtlVertScrollbarOverflowBug',ready:!0,fn:function(c,b){b.innerHTML='<div style="height:100px;width:100px;direction:rtl;overflow:auto"><div style="width:95px;height:200px;"></div></div>';var a=b.firstChild;return a.clientHeight===a.offsetHeight}},{identity:'defineProperty',fn:function(){if(Ext.isIE8m){Ext.Object.defineProperty=Ext.emptyFn;return !1}return !0}},{identify:'nativeXhr',fn:function(){if(typeof XMLHttpRequest!=='undefined'){return !0}XMLHttpRequest=function(){try{return new ActiveXObject('MSXML2.XMLHTTP.3.0')}catch(b){return null}};return !1}},{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:!0,fn:function(){if(Ext.isIE8){return !1}var a=document.createElement('div'),b=document.createElement('div'),c;a.setAttribute('style','display:table;table-layout:fixed;');b.setAttribute('style','display:table-cell;min-width:50px;');a.appendChild(b);document.body.appendChild(a);a.offsetWidth;a.style.width='25px';c=a.offsetWidth;document.body.removeChild(a);return c===50}},{name:'FocusinFocusoutEvents',fn:function(){return !Ext.isGecko}},0]};Ext.feature.tests.pop();Ext.supports={};Ext.feature.detect();Ext.env.Ready={blocks:(location.search||'').indexOf('ext-pauseReadyFire')>0?1:0,bound:0,delay:1,firing:!1,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,!1)}b.addEventListener('DOMContentLoaded',a.onReadyEvent,!1);window.addEventListener('load',a.onReadyEvent,!1)}}},block:function(){++this.blocks;Ext.isReady=!1},fireReady:function(){var a=Ext.env.Ready;if(!a.state){Ext._readyTime=Ext.now();Ext.isDomReady=!0;a.state=1;Ext.feature.detect(!0);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(b){var a=this;if(!a.timer){a.timer=Ext.defer(function(){a.timer=null;a.handleReady()},b||a.delay)}},invoke:function(a){var b=a.delay;if(b){Ext.defer(a.fn,b,a.scope)}else {if(Ext.elevateFunction){Ext.elevateFunction(a.fn,a.scope)}else {a.fn.call(a.scope)}}},invokeAll:function(){if(Ext.elevateFunction){Ext.elevateFunction(this.doInvokeAll,this)}else {this.doInvokeAll()}},doInvokeAll:function(){var a=this,b=a.listeners,c;if(!a.blocks){Ext.isReady=!0}a.firing=!0;while(b.length){if(a.sortGeneration!==a.generation){a.sortGeneration=a.generation;b.sort(a.sortFn)}c=b.pop();if(a.blocks&&!c.dom){b.push(c);break}a.invoke(c)}a.firing=!1},makeListener:function(d,c,b){var a={fn:d,id:++this.nextId,scope:c,dom:!1,priority:0};if(b){Ext.apply(a,b)}a.phase=a.dom?0:1;return a},on:function(e,d,c){var a=Ext.env.Ready,b=a.makeListener(e,d,c);if(a.state===2&&!a.firing&&(b.dom||!a.blocks)){a.invoke(b)}else {a.listeners.push(b);++a.generation;if(!a.bound){a.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(a,b){return -(a.phase-b.phase||b.priority-a.priority||a.id-b.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,!1)}b.removeEventListener('DOMContentLoaded',a.onReadyEvent,!1);window.removeEventListener('load',a.onReadyEvent,!1)}};(function(){var a=Ext.env.Ready;if(Ext.isIE9m){Ext.apply(a,{scrollTimer:null,readyStatesRe:/complete/i,pollScroll:function(){var b=!0;try{document.documentElement.doScroll('left')}catch(c){b=!1}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 b=document,c;try{c=window.frameElement===undefined}catch(d){}if(!c||!b.documentElement.doScroll){a.pollScroll=Ext.emptyFn}else {if(a.pollScroll()){return}}if(b.readyState==='complete'){a.onReadyEvent({type:'already '+(b.readyState||'body')})}else {b.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:!0};if(b){Ext.apply(c,b)}a.on(e,d,c)};Ext.onReady=function(d,c,b){a.on(d,c,b)};Ext.onInternalReady=function(d,c,b){a.on(d,c,Ext.apply({priority:1000},b))};a.bind()})();Ext.Loader=new function(){var a=this,b=Ext.ClassManager,i=Ext.Boot,o=Ext.Class,c=Ext.env.Ready,k=Ext.Function.alias,h=['extend','mixins','requires'],j={},m=[],f=[],g=[],l={},d={},e={enabled:!0,scriptChainDelay:!1,disableCaching:!0,disableCachingParam:'_dc',paths:b.paths,preserveScripts:!0,scriptCharset:undefined},n={disableCaching:!0,disableCachingParam:!0,preserveScripts:!0,scriptChainDelay:'loadDelay'};Ext.apply(a,{isInHistory:j,isLoading:!1,history:m,config:e,readyListeners:f,optionalRequires:g,requiresMap:l,hasFileLoadError:!1,scriptsLoading:0,syncModeEnabled:!1,missingQueue:d,init:function(){var k=document.getElementsByTagName('script'),m=k[k.length-1].src,n=m.substring(0,m.lastIndexOf('/')+1),l=Ext._classPathMetadata,h=Ext.Microloader,g=Ext.manifest,d,i,j,e,f;if(!b.getPath('Ext')){b.setPath('Ext',n+'src')}if(l){Ext._classPathMetadata=null;a.addClassPathMappings(l)}if(g){d=g.loadOrder;i=Ext.Boot.baseUrl;if(d&&g.bootRelative){for(j=d.length,e=0;e<j;e++){f=d[e];f.path=i+f.path}}}if(h){c.block();h.onMicroloaderReady(function(){c.unblock()})}},setConfig:Ext.Function.flexSetter(function(b,d){if(b==='paths'){a.setPath(d)}else {e[b]=d;var c=n[b];if(c){i.setConfig(c===!0?b:c,d)}}return a}),getConfig:function(a){return a?e[a]:e},setPath:function(){b.setPath.apply(b,arguments);return a},addClassPathMappings:function(c){b.setPath(c);return a},addBaseUrlClassPathMappings:function(a){for(var b in a){a[b]=i.baseUrl+a[b]}Ext.Loader.addClassPathMappings(a)},getPath:function(a){return b.getPath(a)},require:function(c,f,e,d){if(d){return a.exclude(d).require(c,f,e)}var g=b.getNamesByExpression(c);return a.load(g,f,e)},syncRequire:function(){var b=a.syncModeEnabled;a.syncModeEnabled=!0;var c=a.require.apply(a,arguments);a.syncModeEnabled=b;return c},exclude:function(d){var c=b.select({require:function(b,e,c){return a.load(b,e,c)},syncRequire:function(b,g,e){var c=a.syncModeEnabled;a.syncModeEnabled=!0;var f=a.load(b,g,e);a.syncModeEnabled=c;return f}});c.exclude(d);return c},load:function(h,c,k){if(c){if(c.length){c=a.makeLoadCallback(h,c)}c=c.bind(k||Ext.global)}var g=[],m=h.length,f,i,j,l=[],n=b.classState;for(i=0;i<m;++i){f=b.resolveName(h[i]);if(!b.isCreated(f)){g.push(f);d[f]=a.getPath(f);if(!n[f]){l.push(d[f])}}}j=g.length;if(j){a.missingCount+=j;b.onCreated(function(){if(c){Ext.callback(c,k,arguments)}a.checkReady()},a,g);if(!e.enabled){Ext.Error.raise('Ext.Loader is not enabled, so dependencies cannot be resolved dynamically. Missing required class'+(g.length>1?'es':'')+': '+g.join(', '))}if(l.length){a.loadScripts({url:l,_classNames:g})}else {a.checkReady()}}else {if(c){c.call(k)}a.checkReady()}if(a.syncModeEnabled){if(m===1){return b.get(h[0])}}return a},makeLoadCallback:function(a,c){return function(){var e=[],d=a.length;while(d-->0){e[d]=b.get(a[d])}return c.apply(this,e)}},onLoadFailure:function(){var b=this,c=b.onError;a.hasFileLoadError=!0;--a.scriptsLoading;if(c){c.call(b.userScope,b)}a.checkReady()},onLoadSuccess:function(){var b=this,c=b.onLoad;--a.scriptsLoading;if(c){c.call(b.userScope,b)}a.checkReady()},onReady:function(g,e,h,d){if(h){c.on(g,e,d)}else {var b=c.makeListener(g,e,d);if(a.isLoading){f.push(b)}else {c.invoke(b)}}},addUsedClasses:function(b){var c,d,e;if(b){b=typeof b==='string'?[b]:b;for(d=0,e=b.length;d<e;d++){c=b[d];if(typeof c==='string'&&!Ext.Array.contains(g,c)){g.push(c)}}}return a},triggerReady:function(){var d,b=g;if(a.isLoading&&b.length){g=[];a.require(b)}else {a.isLoading=!1;f.sort(c.sortFn);while(f.length&&!a.isLoading){d=f.pop();c.invoke(d)}c.unblock()}},historyPush:function(c){if(c&&!j[c]&&!b.overrideMap[c]){j[c]=!0;m.push(c)}return a},loadScripts:function(g){var c=Ext.manifest,f=c&&c.loadOrder,d=c&&c.loadOrderMap,b;++a.scriptsLoading;if(f&&!d){c.loadOrderMap=d=i.createLoadOrderMap(f)}a.checkReady();b=Ext.apply({loadOrder:f,loadOrderMap:d,charset:e.scriptCharset,success:a.onLoadSuccess,failure:a.onLoadFailure,sync:a.syncModeEnabled,_classNames:[]},g);b.userScope=b.scope;b.scope=b;i.load(b)},loadScriptsSync:function(c){var b=a.syncModeEnabled;a.syncModeEnabled=!0;a.loadScripts({url:c});a.syncModeEnabled=b},loadScriptsSyncBasePrefix:function(c){var b=a.syncModeEnabled;a.syncModeEnabled=!0;a.loadScripts({url:c,prependBaseUrl:!0});a.syncModeEnabled=b},loadScript:function(b){var d=typeof b==='string',e=b instanceof Array,c=!e&&!d,j=c?b.url:b,f=c&&b.onError,h=c&&b.onLoad,i=c&&b.scope,g={url:j,scope:i,onLoad:h,onError:f,_classNames:[]};a.loadScripts(g)},flushMissingQueue:function(){var a,f,e=0,c=0;for(a in d){e++;f=d[a];if(b.isCreated(a)){delete d[a]}else {if(b.existCache[a]===2){delete d[a]}else {++c}}}this.missingCount=c},checkReady:function(){var d=a.isLoading,b;a.flushMissingQueue();b=a.missingCount+a.scriptsLoading;if(b&&!d){c.block();a.isLoading=!!b}else {if(!b&&d){a.triggerReady()}}}});Ext.require=k(a,'require');Ext.syncRequire=k(a,'syncRequire');Ext.exclude=k(a,'exclude');o.registerPreprocessor('loader',function(o,g,q,p){var r=this,j=[],t,k=b.getName(o),i,e,n,m,d,f,c,s;for(i=0,n=h.length;i<n;i++){f=h[i];if(g.hasOwnProperty(f)){c=g[f];if(typeof c==='string'){j.push(c)}else {if(c instanceof Array){for(e=0,m=c.length;e<m;e++){d=c[e];if(typeof d==='string'){j.push(d)}}}else {if(typeof c!=='function'){for(e in c){if(c.hasOwnProperty(e)){d=c[e];if(typeof d==='string'){j.push(d)}}}}}}}}if(j.length===0){return}if(k){l[k]=j}(k?a.exclude(k):a).require(j,function(){for(i=0,n=h.length;i<n;i++){f=h[i];if(g.hasOwnProperty(f)){c=g[f];if(typeof c==='string'){g[f]=b.get(c)}else {if(c instanceof Array){for(e=0,m=c.length;e<m;e++){d=c[e];if(typeof d==='string'){g[f][e]=b.get(d)}}}else {if(typeof c!=='function'){for(var a in c){if(c.hasOwnProperty(a)){d=c[a];if(typeof d==='string'){g[f][a]=b.get(d)}}}}}}}}p.call(r,o,g,q)});return !1},!0,'after','className');b.registerPostprocessor('uses',function(l,m,h){var d=Ext.manifest,e=d&&d.loadOrder,k=d&&d.classes,b,g,i,j,c,f;if(e){g=k[l];if(g&&!isNaN(c=g.idx)){i=e[c];b=i.uses;f={};for(j=b.length,c=0;c<j;c++){f[b[c]]=!0}b=Ext.Boot.getPathsFromIndexes(f,e,!0);if(b.length>0){a.loadScripts({url:b,sequential:!0})}}}if(h.uses){b=h.uses;a.addUsedClasses(b)}});b.onCreated(a.historyPush);a.init()}();Ext._endTime=(new Date()).getTime();if(Ext._beforereadyhandler){Ext._beforereadyhandler()}Ext.cmd.derive('Ext.Mixin',Ext.Base,function(a){return {statics:{addHook:function(e,c,d,h){var g=Ext.isFunction(e),b=function(){var b=arguments,i=g?e:h[e],f=this.callParent(b);i.apply(this,b);return f},f=c.hasOwnProperty(d)&&c[d];if(g){e.$previous=Ext.emptyFn}b.$name=d;b.$owner=c.self;if(f){b.$previous=f.$previous;f.$previous=b}else {c[d]=b}}},onClassExtended:function(k,c){var b=c.mixinConfig,d=c.xhooks,j=k.superclass,i=c.onClassMixedIn,h,f,g,e;if(d){delete c.xhooks;(b||(c.mixinConfig=b={})).on=d}if(b){h=j.mixinConfig;if(h){c.mixinConfig=b=Ext.merge({},h,b)}c.mixinId=b.id;f=b.before;g=b.after;d=b.on;e=b.extended}if(f||g||d||e){c.onClassMixedIn=function(b){var h=this.prototype,l=b.prototype,j;if(f){Ext.Object.each(f,function(e,d){b.addMember(e,function(){if(h[d].apply(this,arguments)!==!1){return this.callParent(arguments)}})})}if(g){Ext.Object.each(g,function(e,d){b.addMember(e,function(){var f=this.callParent(arguments);h[d].apply(this,arguments);return f})})}if(d){for(j in d){a.addHook(d[j],l,j,h)}}if(e){b.onExtended(function(){var d=Ext.Array.slice(arguments,0);d.unshift(b);return e.apply(this,d)},this)}if(i){i.apply(this,arguments)}}}}}},0,0,0,0,0,0,[Ext,'Mixin'],0);Ext.util=Ext.util||{};Ext.util.DelayedTask=function(e,c,d,b,g){var a=this,f,h=function(){var f=Ext.GlobalEvents;clearInterval(a.id);a.id=null;e.apply(c,d||[]);if(g!==!1&&f.hasListeners.idle){f.fireEvent('idle')}};b=typeof b==='boolean'?b:!0;a.id=null;a.delay=function(i,l,j,k){if(b){a.cancel()}if(typeof i==='number'){f=i}e=l||e;c=j||c;d=k||d;if(!a.id){a.id=Ext.interval(h,f)}};a.cancel=function(){if(a.id){clearInterval(a.id);a.id=null}}};Ext.cmd.derive('Ext.util.Event',Ext.Base,function(){var d=Array.prototype.slice,c=Ext.Array.insert,b=Ext.Array.toArray,a={};return {isEvent:!0,suspended:0,noOptions:{},constructor:function(a,b){this.name=b;this.observable=a;this.listeners=[]},addListener:function(r,q,g,t,s){var a=this,p=!1,l=a.observable,o=a.name,d,m,i,h,f,k,j,b,e,n;if(a.findListener(r,q)===-1){m=a.createListener(r,q,g,t,s);if(a.firing){a.listeners=a.listeners.slice(0)}d=a.listeners;b=j=d.length;i=g&&g.priority;f=a._highestNegativePriorityIndex;k=f!==undefined;if(i){h=i<0;if(!h||k){for(e=h?f:0;e<j;e++){n=d[e].o?d[e].o.priority||0:0;if(n<i){b=e;break}}}else {a._highestNegativePriorityIndex=b}}else {if(k){b=f}}if(!h&&b<=f){a._highestNegativePriorityIndex++}if(b===j){d[j]=m}else {c(d,b,[m])}if(l.isElement){l._getPublisher(o).subscribe(l,o,g.delegated!==!1,g.capture)}p=!0}return p},createListener:function(h,e,a,k,j){var f=this,i=Ext._namedScopes[e],b={fn:h,scope:e,ev:f,caller:k,manager:j,namedScope:i,defaultScope:i?e||f.observable:undefined,lateBound:typeof h==='string'},c=h,d=!1,g;if(a){b.o=a;if(a.single){c=f.createSingle(c,b,a,e);d=!0}if(a.target){c=f.createTargeted(c,b,a,e,d);d=!0}if(a.delay){c=f.createDelayed(c,b,a,e,d);d=!0}if(a.buffer){c=f.createBuffered(c,b,a,e,d);d=!0}if(f.observable.isElement){g=a.type;if(g){b.type=g}}}b.fireFn=c;b.wrapped=d;return b},findListener:function(e,d){var c=this.listeners,b=c.length,a;while(b--){a=c[b];if(a){if(a.fn===e&&a.scope==d){return b}}}return -1},removeListener:function(o,n,c){var a=this,m=!1,i=a.observable,j=a.name,b,f,l,h,k,d,e,g;c=c||a.findListener(o,n);if(c!=-1){b=a.listeners[c];l=b.o;f=a._highestNegativePriorityIndex;if(a.firing){a.listeners=a.listeners.slice(0)}if(b.task){b.task.cancel();delete b.task}h=b.tasks&&b.tasks.length;if(h){while(h--){b.tasks[h].cancel()}delete b.tasks}a.listeners.splice(c,1);k=b.manager;if(k){d=k.managedListeners;if(d){for(g=d.length;g--;){e=d[g];if(e.item===a.observable&&e.ename===j&&e.fn===o&&e.scope===n){d.splice(g,1)}}}}if(f){if(c<f){a._highestNegativePriorityIndex--}else {if(c===f&&c===a.listeners.length){delete a._highestNegativePriorityIndex}}}if(i.isElement){i._getPublisher(j).unsubscribe(i,j,l.delegated!==!1,l.capture)}m=!0}return m},clearListeners:function(){var b=this.listeners,c=b.length,a;while(c--){a=b[c];this.removeListener(a.fn,a.scope)}},suspend:function(){++this.suspended},resume:function(){if(this.suspended){--this.suspended}},isSuspended:function(){return this.suspended>0},fire:function(){var e=this,p=e.listeners,q=p.length,l=e.observable.isElement,b,m,n,i,c,h,r,g,j,o,f,k,a;if(!e.suspended&&q>0){e.firing=!0;c=arguments.length?d.call(arguments,0):[];r=c.length;if(l){a=c[0]}for(i=0;i<q;i++){h=p[i];b=h.o;if(l){if(j){a.setCurrentTarget(j)}o=h.type;if(o){f=a;a=c[0]=f.chain({type:o})}Ext.EventObject=a}k=c;if(b){if(l){m=b.delegate;if(m){g=a.getTarget('#'+a.currentTarget.id+' '+m);if(g){c[1]=g;j=a.currentTarget;a.setCurrentTarget(g)}else {continue}}if(b.preventDefault){a.preventDefault()}if(b.stopPropagation){a.stopPropagation()}if(b.stopEvent){a.stopEvent()}}c[r]=b;if(b.args){k=b.args.concat(c)}}n=e.getFireInfo(h);if(n.fn.apply(n.scope,k)===!1){return e.firing=!1}if(f){a=c[0]=f;f=null}}}e.firing=!1;return !0},getFireInfo:function(b,g){var f=this.observable,h=b.fireFn,c=b.scope,d=b.namedScope,e;if(!g&&b.wrapped){a.fn=h;return a}e=g?b.fn:h;if(b.lateBound){if(!c||d){c=(b.caller||f).resolveListenerScope(b.defaultScope)}e=c[e]}else {if(d&&d.isController){c=(b.caller||f).resolveListenerScope(b.defaultScope)}else {if(!c||d){c=f}}}a.fn=e;a.scope=c;return a},createTargeted:function(b,a,e,c,d){return function(){if(e.target===arguments[0]){var f;if(!d){f=a.ev.getFireInfo(a,!0);b=f.fn;c=f.scope}return b.apply(c,arguments)}}},createBuffered:function(c,a,f,d,e){a.task=new Ext.util.DelayedTask();return function(){var g;if(!e){g=a.ev.getFireInfo(a,!0);c=g.fn;d=g.scope}a.task.delay(f.buffer,c,d,b(arguments))}},createDelayed:function(c,a,f,d,e){return function(){var h=new Ext.util.DelayedTask(),g;if(!e){g=a.ev.getFireInfo(a,!0);c=g.fn;d=g.scope}if(!a.tasks){a.tasks=[]}a.tasks.push(h);h.delay(f.delay||10,c,d,b(arguments))}},createSingle:function(c,a,e,b,d){return function(){var f=a.ev,g;if(f.removeListener(a.fn,b)&&f.observable){f.observable.hasListeners[f.name]--}if(!d){g=f.getFireInfo(a,!0);c=g.fn;b=g.scope}return c.apply(b,arguments)}}}},1,0,0,0,0,0,[Ext.util,'Event'],0);Ext.cmd.derive('Ext.mixin.Identifiable',Ext.Base,{statics:{uniqueIds:{}},isIdentifiable:!0,mixinId:'identifiable',idCleanRegex:/\.|[^\w\-]/g,defaultIdPrefix:'ext-',defaultIdSeparator:'-',getOptimizedId:function(){return this.id},getUniqueId:function(){var e=this.id,c,b,f,d,a;if(!(e||e===0)){c=this.self.prototype;b=this.defaultIdSeparator;d=Ext.mixin.Identifiable.uniqueIds;if(!c.hasOwnProperty('identifiablePrefix')){f=this.xtype;if(f){a=this.defaultIdPrefix+f.replace(this.idCleanRegex,b)+b}else {if(!(a=c.$className)){a=this.defaultIdPrefix+'anonymous'+b}else {a=a.replace(this.idCleanRegex,b).toLowerCase()+b}}c.identifiablePrefix=a}a=this.identifiablePrefix;if(!d.hasOwnProperty(a)){d[a]=0}e=this.id=a+ ++d[a]}this.getUniqueId=this.getOptimizedId;return e},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(c){var d=Ext.emptyFn,f=[],e=Array.prototype,b=e.slice,a=function(d){if(d instanceof a){return d}this.observable=d;if(arguments[1].isObservable){this.managedListeners=!0}this.args=b.call(arguments,1)};a.prototype.destroy=function(){this.destroy=Ext.emptyFn;var a=this.observable;a[this.managedListeners?'mun':'un'].apply(a,this.args)};return {mixinConfig:{id:'observable',after:{destroy:'clearListeners'}},statics:{releaseCapture:function(a){a.fireEventArgs=this.prototype.fireEventArgs},capture:function(e,d,a){var b=function(b,f){return d.apply(a,[b].concat(f))};this.captureArgs(e,b,a)},captureArgs:function(a,d,b){a.fireEventArgs=Ext.Function.createInterceptor(a.fireEventArgs,d,b)},observe:function(a,b){if(a){if(!a.isObservable){Ext.applyIf(a,new this());this.captureArgs(a.prototype,a.fireEventArgs,a)}if(Ext.isObject(b)){a.on(b)}}return a},prepareClass:function(a,d,l){var i=a.listeners=[],j=l||a.prototype,b=j.listeners,g=d?d.listeners:a.superclass.self.listeners,m,f,e;if(g){i.push(g)}if(b){f=b.scope;if(!f){b.scope='self'}else {e=Ext._namedScopes[f];if(e&&e.isController){b.scope='self.controller'}}i.push(b);j.listeners=null}if(!a.HasListeners){var h=function(){},k=a.superclass.HasListeners||d&&d.HasListeners||c.HasListeners;a.prototype.HasListeners=a.HasListeners=h;h.prototype=a.hasListeners=new k()}}},isObservable:!0,eventsSuspended:0,constructor:function(d){var a=this,h=a.self,f,b,g,i,e;if(a.$observableInitialized){return}a.$observableInitialized=!0;a.hasListeners=new a.HasListeners();a.events=a.events||{};f=h.listeners;if(f&&!a._addDeclaredListeners(f)){h.listeners=null}b=d&&d.listeners||a.listeners;if(b){if(b instanceof Array){for(e=0,i=b.length;e<i;++e){a.addListener(b[e])}}else {a.addListener(b)}}g=d&&d.bubbleEvents||a.bubbleEvents;if(g){a.enableBubble(g)}if(a.$applyConfigs){Ext.apply(a,d)}else {a.initConfig(d)}if(b){a.listeners=null}},onClassExtended:function(a,b){if(!a.HasListeners){c.prepareClass(a,a.prototype.$observableMixedIn?undefined:b)}},$eventOptions:{scope:1,delay:1,buffer:1,onFrame:1,single:1,args:1,destroyable:1,priority:1,order:1},$orderToPriority:{before:100,current:0,after:-100},_addDeclaredListeners:function(b){var a=this;if(b instanceof Array){Ext.each(b,a._addDeclaredListeners,a)}else {a._addedDeclaredListeners=!0;a.addListener(b)}return a._addedDeclaredListeners},addManagedListener:function(h,e,j,i,b,l){var f=this,m=f.managedListeners=f.managedListeners||[],g,k;if(typeof e!=='string'){k=arguments.length>4?b:e;b=e;for(e in b){if(b.hasOwnProperty(e)){g=b[e];if(!h.$eventOptions[e]){f.addManagedListener(h,e,g.fn||g,g.scope||b.scope||i,g.fn?g:k,!0)}}}if(b&&b.destroyable){return new a(f,h,b)}}else {if(j!==d){h.doAddListener(e,j,i,b,null,f,f);if(!l&&b&&b.destroyable){return new a(f,h,e,j,i)}}}},removeManagedListener:function(h,a,k,j){var e=this,b,d,g,i,f;if(typeof a!=='string'){b=a;for(a in b){if(b.hasOwnProperty(a)){d=b[a];if(!h.$eventOptions[a]){e.removeManagedListener(h,a,d.fn||d,d.scope||b.scope||j)}}}}else {g=e.managedListeners?e.managedListeners.slice():[];a=Ext.canonicalEventName(a);for(f=0,i=g.length;f<i;f++){e.removeManagedListenerItem(!1,g[f],h,a,k,j)}}},fireEvent:function(a){return this.fireEventArgs(a,b.call(arguments,1))},resolveListenerScope:function(a){var b=Ext._namedScopes[a];if(b){if(b.isSelf||b.isThis){a=null}}return a||this},fireEventArgs:function(a,h){a=Ext.canonicalEventName(a);var b=this,d=b.events,e=d&&d[a],g=!0;if(b.hasListeners[a]){g=b.doFireEvent(a,h||f,e?e.bubble:!1)}return g},fireAction:function(b,f,g,e,a,d){a=a?Ext.Object.chain(a):{};a.single=!0;a.priority=d==='after'?-99.5:99.5;this.doAddListener(b,g,e,a);this.fireEventArgs(b,f)},doFireEvent:function(e,g,h){var a=this,f,b,d=!0;do{if(a.eventsSuspended){if(f=a.eventQueue){f.push([e,g])}return d}else {b=a.events&&a.events[e];if(b&&b!==!0){if((d=b.fire.apply(b,g))===!1){break}}}}while(h&&(a=a.getBubbleParent()));return d},getBubbleParent:function(){var b=this,a=b.getBubbleTarget&&b.getBubbleTarget();if(a&&a.isObservable){return a}return null},addListener:function(e,o,h,b,n,m){var d=this,l=Ext._namedScopes,g,f,j,i,k;if(typeof e!=='string'){b=e;h=b.scope;f=h&&l[h];j=f&&f.isSelf;k=(d.isComponent||d.isWidget)&&b.element?d.$elementEventOptions:d.$eventOptions;for(e in b){g=b[e];if(!k[e]){i=g.scope;if(i&&j){f=l[i];if(f&&f.isController){i='self.controller'}}d.doAddListener(e,g.fn||g,i||h,g.fn?g:b,n,m)}}if(b&&b.destroyable){return new a(d,b)}}else {d.doAddListener(e,o,h,b,n,m);if(b&&b.destroyable){return new a(d,e,o,h,b)}}return d},removeListener:function(a,h,g,f){var d=this,e,b;if(typeof a!=='string'){b=a;f=f||d.$eventOptions;for(a in b){if(b.hasOwnProperty(a)){e=b[a];if(!d.$eventOptions[a]){d.doRemoveListener(a,e.fn||e,e.scope||b.scope)}}}}else {d.doRemoveListener(a,h,g)}return d},clearListeners:function(){var e=this,a=e.events,f=e.hasListeners,d,b;if(a){for(b in a){if(a.hasOwnProperty(b)){d=a[b];if(d.isEvent){delete f[b];d.clearListeners()}}}}e.clearManagedListeners()},clearManagedListeners:function(){var a=this,d=a.managedListeners?a.managedListeners.slice():[],b=0,e=d.length;for(;b<e;b++){a.removeManagedListenerItem(!0,d[b])}a.managedListeners=[]},removeManagedListenerItem:function(b,a,g,f,e,d){if(b||a.item===g&&a.ename===f&&(!e||a.fn===e)&&(!d||a.scope===d)){a.item.doRemoveListener(a.ename,a.fn,a.scope,a.options);if(!b){Ext.Array.remove(this.managedListeners,a)}}},hasListener:function(a){a=Ext.canonicalEventName(a);return !!this.hasListeners[a]},isSuspended:function(a){var b=this.eventsSuspended>0,d=this.events;if(!b&&a&&d){a=d[a];if(a&&a.isEvent){return a.isSuspended()}}return b},suspendEvents:function(a){++this.eventsSuspended;if(a&&!this.eventQueue){this.eventQueue=[]}},suspendEvent:function(){var e=this,f=e.events,g=arguments.length,d,b,a;for(d=0;d<g;d++){a=arguments[d];a=Ext.canonicalEventName(a);b=f[a];if(!b||!b.isEvent){b=e._initEvent(a)}b.suspend()}},resumeEvent:function(){var d=this.events||0,e=d&&arguments.length,b,a;for(b=0;b<e;b++){a=d[arguments[b]];if(a&&a.resume){a.resume()}}},resumeEvents:function(f){var a=this,d=a.eventQueue,e,b;if(a.eventsSuspended&&!--a.eventsSuspended){delete a.eventQueue;if(!f&&d){e=d.length;for(b=0;b<e;b++){a.fireEventArgs.apply(a,d[b])}}}},relayEvents:function(h,g,i){var e=this,j=g.length,f=0,b,d={};for(;f<j;f++){b=g[f];d[b]=e.createRelayer(i?i+b:b)}e.mon(h,d,null,null,undefined);return new a(e,h,d)},createRelayer:function(e,a){var d=this;return function(){return d.fireEventArgs.call(d,e,a?b.apply(arguments,a):arguments)}},enableBubble:function(e){if(e){var f=this,h=typeof e=='string'?arguments:e,g=f.events,i=g&&h.length,a,b,d;for(d=0;d<i;++d){a=h[d];a=Ext.canonicalEventName(a);b=g[a];if(!b||!b.isEvent){b=f._initEvent(a)}f.hasListeners._incr_(a);b.bubble=!0}}},destroy:function(){this.clearListeners();this.callParent()},privates:{doAddListener:function(f,j,g,a,i,m,e){var b=this,h,k,l;i=i||a&&a.order;if(i){l=a&&a.priority;if(!l){a=a?Ext.Object.chain(a):{};a.priority=b.$orderToPriority[i]}}f=Ext.canonicalEventName(f);if(!e&&(g&&g.isObservable&&g!==b)){e=g}if(e){k=e.managedListeners=e.managedListeners||[];k.push({item:b,ename:f,fn:j,scope:g,options:a})}h=(b.events||(b.events={}))[f];if(!h||!h.isEvent){h=b._initEvent(f)}if(j!==d){if(h.addListener(j,g,a,m,e)){b.hasListeners._incr_(f)}}},doRemoveListener:function(a,g,f){var e=this,d=e.events,b;a=Ext.canonicalEventName(a);b=d&&d[a];if(b&&b.isEvent){if(b.removeListener(g,f)){e.hasListeners._decr_(a)}}},_initEvent:function(a){return this.events[a]=new Ext.util.Event(this,a)}},deprecated:{'5.0':{methods:{addEvents:null}},'5.1':{methods:{addBeforeListener:function(a,e,d,b){return this.addListener(a,e,d,b,'before')},addAfterListener:function(a,e,d,b){return this.addListener(a,e,d,b,'after')},removeBeforeListener:function(a,e,d,b){return this.removeListener(a,e,d,b,'before')},removeAfterListener:function(a,e,d,b){return this.removeListener(a,e,d,b,'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 a=this,c=a.prototype,d=function(){},b=function(c){if(!c.HasListeners){var d=c.prototype;d.$observableMixedIn=1;a.prepareClass(c,this);c.onExtended(function(d,b){a.prepareClass(d,null,b)});if(d.onClassMixedIn){Ext.override(c,{onClassMixedIn:function(a){b.call(this,a);this.callParent(arguments)}})}else {d.onClassMixedIn=function(a){b.call(this,a)}}}e.call(this,c)},e=c.onClassMixedIn;d.prototype={_decr_:function(a){if(!--this[a]){delete this[a]}},_incr_:function(a){if(this.hasOwnProperty(a)){++this[a]}else {this[a]=1}}};c.HasListeners=a.HasListeners=d;a.createAlias({on:'addListener',un:'removeListener',mon:'addManagedListener',mun:'removeManagedListener',setListeners:'addListener'});a.observeClass=a.observe;function getMethodEvent(e){var a=(this.methodEvents=this.methodEvents||{})[e],c,b,d,g=this,f;if(!a){this.methodEvents[e]=a={};a.originalFn=this[e];a.methodName=e;a.before=[];a.after=[];f=function(h,a,f){if((b=h.apply(a||g,f))!==undefined){if(typeof b=='object'){if(b.returnValue!==undefined){c=b.returnValue}else {c=b}d=!!b.cancel}else {if(b===!1){d=!0}else {c=b}}}};this[e]=function(){var k=Array.prototype.slice.call(arguments,0),i,h,j;c=b=undefined;d=!1;for(h=0,j=a.before.length;h<j;h++){i=a.before[h];f(i.fn,i.scope,k);if(d){return c}}if((b=a.originalFn.apply(g,k))!==undefined){c=b}for(h=0,j=a.after.length;h<j;h++){i=a.after[h];f(i.fn,i.scope,k);if(d){return c}}return c}}return a}Ext.apply(c,{onClassMixedIn:b,beforeMethod:function(a,c,b){getMethodEvent.call(this,a).before.push({fn:c,scope:b})},afterMethod:function(a,c,b){getMethodEvent.call(this,a).after.push({fn:c,scope:b})},removeMethodListener:function(f,e,d){var b=this.getMethodEvent(f),a,c;for(a=0,c=b.before.length;a<c;a++){if(b.before[a].fn==e&&b.before[a].scope==d){Ext.Array.erase(b.before,a,1);return}}for(a=0,c=b.after.length;a<c;a++){if(b.after[a].fn==e&&b.after[a].scope==d){Ext.Array.erase(b.after,a,1);return}}},toggleEventLogging:function(a){Ext.util.Observable[a?'capture':'releaseCapture'](this,function(b){if(Ext.isDefined(Ext.global.console)){Ext.global.console.log(b,arguments)}})}})});Ext.cmd.derive('Ext.util.HashMap',Ext.Base,{generation:0,config:{keyFn:null},constructor:function(c){var a=this,b;a.mixins.observable.constructor.call(a,c);a.clear(!0);b=a.getKeyFn();if(b){a.getKey=b}},getCount:function(){return this.length},getData:function(b,a){if(a===undefined){a=b;b=this.getKey(a)}return [b,a]},getKey:function(a){return a.id},add:function(c,b){var a=this;if(arguments.length===1){b=c;c=a.getKey(b)}if(a.containsKey(c)){return a.replace(c,b)}a.map[c]=b;++a.length;a.generation++;if(a.hasListeners.add){a.fireEvent('add',a,c,b)}return b},replace:function(b,c){var a=this,d=a.map,e;if(arguments.length===1){c=b;b=a.getKey(c)}if(!a.containsKey(b)){a.add(b,c)}e=d[b];d[b]=c;a.generation++;if(a.hasListeners.replace){a.fireEvent('replace',a,b,c,e)}return c},remove:function(b){var a=this.findKey(b);if(a!==undefined){return this.removeAtKey(a)}return !1},removeAtKey:function(b){var a=this,c;if(a.containsKey(b)){c=a.map[b];delete a.map[b];--a.length;a.generation++;if(a.hasListeners.remove){a.fireEvent('remove',a,b,c)}return !0}return !1},get:function(a){var b=this.map;return b.hasOwnProperty(a)?b[a]:undefined},clear:function(b){var a=this;if(b||a.generation){a.map={};a.length=0;a.generation=b?0:a.generation+1}if(b!==!0&&a.hasListeners.clear){a.fireEvent('clear',a)}return a},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(!0)},getValues:function(){return this.getArray(!1)},getArray:function(d){var c=[],a,b=this.map;for(a in b){if(b.hasOwnProperty(a)){c.push(d?a:b[a])}}return c},each:function(e,c){var b=Ext.apply({},this.map),a,d=this.length;c=c||this;for(a in b){if(b.hasOwnProperty(a)){if(e.call(c,a,b[a],d)===!1){break}}}return this},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])}}a.resumeEvents();return a},findKey:function(c){var a,b=this.map;for(a in b){if(b.hasOwnProperty(a)&&b[a]===c){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.data.flash.BinaryXhr',Ext.Base,{statics:{flashPluginActivated:function(){Ext.data.flash.BinaryXhr.flashPluginActive=!0;Ext.data.flash.BinaryXhr.flashPlugin=document.getElementById('ext-flash-polyfill');Ext.GlobalEvents.fireEvent('flashready')},flashPluginActive:!1,flashPluginInjected:!1,connectionIndex:1,liveConnections:{},flashPlugin:null,onFlashStateChange:function(b,c,d){var a;a=this.liveConnections[Number(b)];if(a){a.onFlashStateChange(c,d)}},registerConnection:function(b){var a=this.connectionIndex;this.conectionIndex=this.connectionIndex+1;this.liveConnections[a]=b;return a},injectFlashPlugin:function(){var c=this,b,a;c.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'}]}]});b=[Ext.Loader.getPath('Ext.data.Connection'),'../../../plugins/flash/swfobject.js'].join('/');a='/plugins/flash/FlashPlugin.swf';if(Ext.flashPluginPath){a=Ext.flashPluginPath}Ext.Loader.loadScript({url:b,onLoad:function(){var d='11.4.0';var e='playerProductInstall.swf';var f={};var b={};b.quality='high';b.bgcolor='#ffffff';b.allowscriptaccess='sameDomain';b.allowfullscreen='true';var c={};c.id='ext-flash-polyfill';c.name='polyfill';c.align='middle';swfobject.embedSWF(a,'ext-flash-polyfill','0','0',d,e,f,b,c)},onError:function(){},scope:c});Ext.data.flash.BinaryXhr.flashPluginInjected=!0}},readyState:0,status:0,statusText:'',responseBytes:null,javascriptId:null,constructor:function(b){if(!Ext.data.flash.BinaryXhr.flashPluginInjected){Ext.data.flash.BinaryXhr.injectFlashPlugin()}var a=this;Ext.apply(a,b);a.requestHeaders={}},abort:function(){var a=this;if(a.readyState==4){return}a.aborted=!0;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(c,b){a.push(c+': '+b)});return a.join('\r\n')},getResponseHeader:function(b){var a=this.responseHeaders;return a&&a[b]||null},open:function(c,f,d,e,b){var a=this;a.method=c;a.url=f;a.async=d!==!1;a.user=e;a.password=b},overrideMimeType:function(a){this.mimeType=a},send:function(b){var a=this;a.body=b;if(!Ext.data.flash.BinaryXhr.flashPluginActive){Ext.GlobalEvents.addListener('flashready',a.onFlashReady,a)}else {this.onFlashReady()}},onFlashReady:function(){var a=this,b,c;a.javascriptId=Ext.data.flash.BinaryXhr.registerConnection(a);b={method:a.method,url:a.url,user:a.user,password:a.password,mimeType:a.mimeType,requestHeaders:a.requestHeaders,body:a.body,javascriptId:a.javascriptId};c=Ext.data.flash.BinaryXhr.flashPlugin.postBinary(b)},setReadyState:function(b){var a=this;if(a.readyState!=b){a.readyState=b;a.onreadystatechange()}},setRequestHeader:function(a,b){this.requestHeaders[a]=b},onreadystatechange:Ext.emptyFn,parseData:function(a){var b=this;this.status=a.status||0;b.responseHeaders={};if(b.mimeType){b.responseHeaders['content-type']=b.mimeType}if(a.reason=='complete'){this.responseBytes=a.data;b.responseHeaders['content-length']=a.data.length}else {if(a.reason=='error'||a.reason=='securityError'){this.statusText=a.text;b.responseHeaders['content-length']=0}}},onFlashStateChange:function(b,c){var a=this;if(b==4){a.parseData(c);delete Ext.data.flash.BinaryXhr.liveConnections[a.javascriptId]}a.setReadyState(b)}},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:!0,username:'',password:'',disableCaching:!0,withCredentials:!1,binary:!1,cors:!1,isXdr:!1,defaultXdrContentType:'text/plain',disableCachingParam:'_dc',timeout:30000,extraParams:null,autoAbort:!1,method:null,defaultHeaders:null,defaultPostHeader:'application/x-www-form-urlencoded; charset=UTF-8',useDefaultXhrHeader:!0,defaultXhrHeader:'XMLHttpRequest'},constructor:function(a){this.mixins.observable.constructor.call(this,a);this.requests={}},request:function(b){b=b||{};var a=this,k=b.scope||window,j=b.username||a.getUsername(),i=b.password||a.getPassword()||'',f,d,c,h,g,e;if(a.fireEvent('beforerequest',a,b)!==!1){d=a.setOptions(b,k);if(a.isFormUpload(b)){a.upload(b.form,d.url,d.data,b);return null}if(b.autoAbort||a.getAutoAbort()){a.abort()}f=b.async!==!1?b.async||a.getAsync():!1;e=a.openRequest(b,d,f,j,i);g=a.getIsXdr();if(!g){h=a.setupHeaders(e,b,d.data,d.params)}c={id:++Ext.data.Connection.requestId,xhr:e,headers:h,options:b,async:f,binary:b.binary||a.getBinary(),timeout:Ext.defer(function(){c.timedout=!0;a.abort(c)},b.timeout||a.getTimeout())};a.requests[c.id]=c;a.latestId=c.id;if(f){if(!g){e.onreadystatechange=Ext.Function.bind(a.onStateChange,a,[c])}}if(g){a.processXdrRequest(c,e)}e.send(d.data);if(!f){return a.onComplete(c)}return c}else {Ext.callback(b.callback,b.scope,[b,undefined,undefined]);return null}},processXdrRequest:function(a,c){var b=this;delete a.headers;a.contentType=a.options.contentType||b.getDefaultXdrContentType();c.onload=Ext.Function.bind(b.onStateChange,b,[a,!0]);c.onerror=c.ontimeout=Ext.Function.bind(b.onStateChange,b,[a,!1])},processXdrResponse:function(a,b){a.getAllResponseHeaders=function(){return []};a.getResponseHeader=function(){return ''};a.contentType=b.contentType||this.getDefaultXdrContentType()},upload:function(a,r,n,k){a=Ext.getDom(a);k=k||{};var d=Ext.id(),f=document.createElement('iframe'),j=[],m='multipart/form-data',q={target:a.target,method:a.method,encoding:a.encoding,enctype:a.enctype,action:a.action},l=function(c,b){e=document.createElement('input');Ext.fly(e).set({type:'hidden',value:b,name:c});a.appendChild(e);j.push(e)},e,g,b,c,p,i,o,h;Ext.fly(f).set({id:d,name:d,cls:'x-hidden-display',src:Ext.SSL_SECURE_URL,tabIndex:-1});document.body.appendChild(f);if(document.frames){document.frames[d].name=d}Ext.fly(a).set({target:d,method:'POST',enctype:m,encoding:m,action:r||q.action});if(n){g=Ext.Object.fromQueryString(n)||{};for(c in g){if(g.hasOwnProperty(c)){b=g[c];if(Ext.isArray(b)){p=b.length;for(i=0;i<p;i++){l(c,b[i])}}else {l(c,b)}}}}Ext.get(f).on({load:Ext.Function.bind(this.onUploadComplete,this,[f,k]),single:!Ext.isOpera});a.submit();Ext.fly(a).set(q);for(o=j.length,h=0;h<o;h++){Ext.removeNode(j[h])}},onUploadComplete:function(e,c){var h=this,b={responseText:'',responseXML:null},g,f,a,d;try{a=e&&(e.contentWindow.document||e.contentDocument)||(window.frames[e.id]||{}).document;if(a){if(Ext.isOpera&&a.location==Ext.SSL_SECURE_URL){return}if(a.body){if((d=a.body.firstChild)&&/pre/i.test(d.tagName)){b.responseText=d.textContent||d.innerText}else {if(d=a.getElementsByTagName('textarea')[0]){b.responseText=d.value}else {b.responseText=a.body.textContent||a.body.innerText}}}b.responseXML=a.XMLDocument||a;g=c.success;f=!0}else {Ext.Error.raise('Could not acquire a suitable connection for the file upload service.')}}catch(i){b.responseText='{success:false,message:"'+Ext.String.trim(i.message||i.description)+'"}';g=c.failure;f=!1}h.fireEvent(f?'requestcomplete':'requestexception',h,b,c);Ext.callback(g,c.scope,[b,c]);Ext.callback(c.callback,c.scope,[c,f,b]);Ext.defer(Ext.removeNode,100,Ext,[e])},isFormUpload:function(a){var b=this.getForm(a);if(b){return a.isUpload||/multipart\/form-data/i.test(b.getAttribute('enctype'))}return !1},getForm:function(b){var a=b.form||null;if(a){a=Ext.getDom(a)}return a},setOptions:function(a,k){var e=this,b=a.params||{},g=e.getExtraParams(),f=a.urlParams,c=a.url||e.getUrl(),l=a.cors,i=a.jsonData,h,j,d;if(l!==undefined){e.setCors(l)}if(Ext.isFunction(b)){b=b.call(k,a)}if(Ext.isFunction(c)){c=c.call(k,a)}c=this.setupUrl(a,c);d=a.rawData||a.binaryData||a.xmlData||i||null;if(i&&!Ext.isPrimitive(i)){d=Ext.encode(d)}if(a.binaryData){if(e.nativeBinaryPostSupport()){d=new Uint8Array(a.binaryData);if(Ext.isChrome&&Ext.chromeVersion<22||Ext.isSafari||Ext.isGecko){d=d.buffer}}}if(Ext.isObject(b)){b=Ext.Object.toQueryString(b)}if(Ext.isObject(g)){g=Ext.Object.toQueryString(g)}b=b+(g?(b?'&':'')+g:'');f=Ext.isObject(f)?Ext.Object.toQueryString(f):f;b=this.setupParams(a,b);h=(a.method||e.getMethod()||(b||d?'POST':'GET')).toUpperCase();this.setupMethod(a,h);j=a.disableCaching!==!1?a.disableCaching||e.getDisableCaching():!1;if(h==='GET'&&j){c=Ext.urlAppend(c,(a.disableCachingParam||e.getDisableCachingParam())+'='+(new Date()).getTime())}if((h=='GET'||d)&&b){c=Ext.urlAppend(c,b);b=null}if(f){c=Ext.urlAppend(c,f)}return {url:c,method:h,data:d||b||null}},setupUrl:function(c,a){var b=this.getForm(c);if(b){a=a||b.action}return a},setupParams:function(c,a){var d=this.getForm(c),b;if(d&&!this.isFormUpload(c)){b=Ext.Element.serializeForm(d);a=a?a+'&'+b:b}return a},setupMethod:function(a,b){if(this.isFormUpload(a)){return 'POST'}return b},setupHeaders:function(m,b,j,l){var e=this,a=Ext.apply({},b.headers||{},e.getDefaultHeaders()||{}),f=e.getDefaultPostHeader(),h=b.jsonData,i=b.xmlData,c='Content-Type',k=Ext.isDefined(b.useDefaultXhrHeader)?b.useDefaultXhrHeader:e.getUseDefaultXhrHeader(),d,g;if(!a.hasOwnProperty(c)&&(j||l)){if(j){if(b.rawData){f='text/plain'}else {if(i&&Ext.isDefined(i)){f='text/xml'}else {if(h&&Ext.isDefined(h)){f='application/json'}}}}a[c]=f}if(k&&!a['X-Requested-With']){a['X-Requested-With']=e.getDefaultXhrHeader()}if(a[c]===undefined||a[c]===null){delete a[c]}try{for(d in a){if(a.hasOwnProperty(d)){g=a[d];m.setRequestHeader(d,g)}}}catch(n){e.fireEvent('exception',d,g)}return a},newRequest:function(c){var a=this,b;if(c.binaryData){if(a.nativeBinaryPostSupport()){b=a.getXhrInstance()}else {b=new Ext.data.flash.BinaryXhr()}}else {if(a.getCors()&&Ext.isIE&&Ext.ieVersion<=9){b=a.getXdrInstance();a.setIsXdr(!0)}else {b=a.getXhrInstance();a.setIsXdr(!1)}}return b},openRequest:function(d,b,f,e,g){var c=this,a=c.newRequest(d);if(e){a.open(b.method,b.url,f,e,g)}else {if(c.getIsXdr()){a.open(b.method,b.url)}else {a.open(b.method,b.url,f)}}if(d.binary||c.getBinary()){if(window.Uint8Array){a.responseType='arraybuffer'}else {if(a.overrideMimeType){a.overrideMimeType('text/plain; charset=x-user-defined')}}}if(d.withCredentials||c.getWithCredentials()){a.withCredentials=!0}return a},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 c=[function(){return new XMLHttpRequest()},function(){return new ActiveXObject('MSXML2.XMLHTTP.3.0')},function(){return new ActiveXObject('MSXML2.XMLHTTP')},function(){return new ActiveXObject('Microsoft.XMLHTTP')}],b=0,d=c.length,a;for(;b<d;++b){try{a=c[b];a();break}catch(e){}}return a}(),isLoading:function(a){if(!a){a=this.getLatest()}if(!(a&&a.xhr)){return !1}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(a){var b=this,c;if(!a){a=b.getLatest()}if(a&&b.isLoading(a)){c=a.xhr;try{c.onreadystatechange=null}catch(d){c.onreadystatechange=Ext.emptyFn}c.abort();b.clearTimeout(a);if(!a.timedout){a.aborted=!0}b.onComplete(a);b.cleanup(a)}},abortAll:function(){var a=this.requests,b;for(b in a){if(a.hasOwnProperty(b)){this.abort(a[b])}}},getLatest:function(){var b=this.latestId,a;if(b){a=this.requests[b]}return a||null},onStateChange:function(a,d){var b=this,c=Ext.GlobalEvents;if(a.xhr&&a.xhr.readyState==4||b.getIsXdr()){b.clearTimeout(a);b.onComplete(a,d);b.cleanup(a);if(c.hasListeners.idle){c.fireEvent('idle')}}},clearTimeout:function(a){clearTimeout(a.timeout);delete a.timeout},cleanup:function(a){a.xhr=null;delete a.xhr},onComplete:function(d,h){var b=this,a=d.options,g,e,f,c;try{g=d.xhr;e=b.parseStatus(g.status);if(e.success){e.success=g.readyState===4}}catch(i){e={success:!1,isException:!1}}f=b.getIsXdr()?h:e.success;if(f){c=b.createResponse(d);b.fireEvent('requestcomplete',b,c,a);Ext.callback(a.success,a.scope,[c,a])}else {if(e.isException||d.aborted||d.timedout){c=b.createException(d)}else {c=b.createResponse(d)}b.fireEvent('requestexception',b,c,a);Ext.callback(a.failure,a.scope,[c,a])}Ext.callback(a.callback,a.scope,[a,f,c]);delete b.requests[d.id];return c},parseStatus:function(a){a=a==1223?204:a;var c=a>=200&&a<300||a==304,b=!1;if(!c){switch(a){case 12002:case 12029:case 12030:case 12031:case 12152:case 13030:b=!0;break;}}return {success:c,isException:b}},createResponse:function(c){var g=this,a=c.xhr,i=g.getIsXdr(),f={},j=i?[]:a.getAllResponseHeaders().replace(/\r\n/g,'\n').split('\n'),h=j.length,e,d,k,b,l;while(h--){e=j[h];d=e.indexOf(':');if(d>=0){k=e.substr(0,d).toLowerCase();if(e.charAt(d+1)==' '){++d}f[k]=e.substr(d+1)}}c.xhr=null;delete c.xhr;b={request:c,requestId:c.id,status:a.status,statusText:a.statusText,getResponseHeader:function(a){return f[a.toLowerCase()]},getAllResponseHeaders:function(){return f}};if(i){g.processXdrResponse(b,a)}if(c.binary){b.responseBytes=g.getByteArray(a)}else {b.responseText=a.responseText;b.responseXML=a.responseXML}a=null;return b},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(b){var e=b.response,g=b.responseBody,h=Ext.data.flash&&Ext.data.flash.BinaryXhr,a,d,f,c;if(b instanceof h){a=b.responseBytes}else {if(window.Uint8Array){a=e?new Uint8Array(e):[]}else {if(Ext.isIE9p){try{a=(new VBArray(g)).toArray()}catch(i){a=[]}}else {if(Ext.isIE){if(!this.self.vbScriptInjected){this.injectVBScript()}getIEByteArray(b.responseBody,a=[])}else {a=[];d=b.responseText;f=d.length;for(c=0;c<f;c++){a.push(d.charCodeAt(c)&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=!0},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:!0,autoAbort:!1},0,0,0,0,0,0,[Ext,'Ajax'],0);Ext.cmd.derive('Ext.AnimationQueue',Ext.Base,{singleton:!0,constructor:function(){this.queue=[];this.taskQueue=[];this.runningQueue=[];this.idleQueue=[];this.isRunning=!1;this.isIdle=!0;this.run=Ext.Function.bind(this.run,this);if(Ext.os.is.iOS){Ext.interval(this.watch,500,this)}},start:function(c,a,b){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=!1;this.isRunning=!0;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(g,e,f){if(!this.isRunning){return}var c=this.queue,d=c.length,a,b;for(a=0;a<d;a++){b=c[a];if(b[0]===g&&b[1]===e&&b[2]===f){c.splice(a,1);a--;d--}}if(d===0){this.doStop();this.isRunning=!1;this.idleTimer=Ext.defer(this.whenIdle,100,this)}},onIdle:function(g,e,f){var c=this.idleQueue,b,d,a;for(b=0,d=c.length;b<d;b++){a=c[b];if(g===a[0]&&e===a[1]&&f===a[2]){return}}c.push(arguments);if(this.isIdle){this.processIdleQueue()}},unIdle:function(g,e,f){var c=this.idleQueue,a,d,b;for(a=0,d=c.length;a<d;a++){b=c[a];if(g===b[0]&&e===b[1]&&f===b[2]){c.splice(a,1);return !0}}return !1},queueTask:function(c,a,b){this.taskQueue.push(arguments);this.processTaskQueue()},dequeueTask:function(g,e,f){var c=this.taskQueue,a,d,b;for(a=0,d=c.length;a<d;a++){b=c[a];if(g===b[0]&&e===b[1]&&f===b[2]){c.splice(a,1);a--;d--}}},invoke:function(b){var a=b[0],c=b[1],d=b[2];a=typeof a=='string'?c[a]:a;if(Ext.isArray(d)){a.apply(c,d)}else {a.call(c,d)}},whenIdle:function(){this.isIdle=!0;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.onInternalReady(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 f=Ext.getCmp('__currentFps'),e=Ext.getCmp('__averageFps'),h=Ext.getCmp('__minFps'),g=Ext.getCmp('__maxFps'),b=1000,a=0,c=0,d=0;Ext.AnimationQueue.onFpsChanged=function(i){c++;if(!(c%10)){b=1000;a=0}d+=i;b=Math.min(b,i);a=Math.max(a,i);f.setHtml(Math.round(i));e.setHtml(Math.round(d/c));h.setHtml(Math.round(b));g.setHtml(Math.round(a))}}},1,0,0,0,0,0,[Ext,'AnimationQueue'],function(){});Ext.cmd.derive('Ext.ComponentManager',Ext.Base,{alternateClassName:'Ext.ComponentMgr',singleton:!0,count:0,typeName:'xtype',constructor:function(b){var a=this;Ext.apply(a,b||{});a.all={};a.references={};a.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(c){var a=this,e=a.all,d=c.getId(),b=a.onAvailableCallbacks;e[d]=c;if(c.reference){a.references[d]=c}++a.count;if(!a.hasFocusListener){Ext.on('focus',a.onGlobalFocus,a);a.hasFocusListener=!0}b=b&&b[d];if(b&&b.length){a.notifyAvailable(c)}},unregister:function(a){var b=a.getId();if(a.reference){delete this.references[b]}delete this.all[b];this.count--},markReferencesDirty:function(){this.referencesDirty=!0},fixReferences:function(){var c=this,a=c.references,b;if(c.referencesDirty){for(b in a){if(a.hasOwnProperty(b)){a[b].fixReference()}}c.referencesDirty=!1}},onAvailable:function(a,f,d){var g=this,b=g.onAvailableCallbacks,e=g.all,c;if(a in e){c=e[a];f.call(d||c,c)}else {if(a){if(!Ext.isArray(b[a])){b[a]=[]}b[a].push(function(b){f.call(d||b,b)})}}},notifyAvailable:function(a){var b=this.onAvailableCallbacks[a&&a.getId()]||[];while(b.length){b.shift()(a)}},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)},getActiveComponent:function(){return Ext.Component.fromElement(Ext.dom.Element.getActiveElement())},onGlobalFocus:function(g){var i=this,f=g.toElement,e=g.fromElement,d=Ext.Component.fromElement(f),b=Ext.Component.fromElement(e),h=i.getCommonAncestor(b,d),c,a;if(b&&!(b.isDestroyed||b.destroying)){if(b.focusable&&e===b.getFocusEl().dom){c=new Ext.event.Event(g.event);c.type='blur';c.target=e;c.relatedTarget=f;b.onBlur(c)}for(a=b;a&&a!==h;a=a.getRefOwner()){if(!(a.isDestroyed||a.destroying)){a.onFocusLeave({event:g.event,type:'focusleave',target:e,relatedTarget:f,fromComponent:b,toComponent:d})}}}if(d&&!d.isDestroyed){if(d.focusable&&f===d.getFocusEl().dom){c=new Ext.event.Event(g.event);c.type='focus';c.relatedTarget=e;c.target=f;d.onFocus(c)}for(a=d;a&&a!==h;a=a.getRefOwner()){a.onFocusEnter({event:g.event,type:'focusenter',relatedTarget:e,target:f,fromComponent:b,toComponent:d})}}},getCommonAncestor:function(a,b){if(a===b){return a}while(a&&!(a.isAncestor(b)||a===b)){a=a.getRefOwner()}return a},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(a,b){return a==b},'!=':function(a,b){return a!=b},'^=':function(a,b){return a&&a.substr(0,b.length)==b},'$=':function(a,b){return a&&a.substr(a.length-b.length)==b},'*=':function(a,b){return a&&a.indexOf(b)!==-1},'%=':function(a,b){return a%b===0},'|=':function(a,b){return a&&(a==b||a.substr(0,b.length+1)==b+'-')},'~=':function(a,b){return a&&(' '+a+' ').indexOf(' '+b+' ')!=-1}};Ext.cmd.derive('Ext.util.LruCache',Ext.util.HashMap,{config:{maxSize:null},add:function(d,e){var b=this,a,c;b.removeAtKey(d);c=b.last;a={prev:c,next:null,key:d,value:e};if(c){c.next=a}else {b.first=a}b.last=a;Ext.util.HashMap.prototype.add.call(this,d,a);b.prune();return e},insertBefore:function(f,d,a){var c=this,e,b;if(a=this.map[this.findKey(a)]){e=c.findKey(d);if(e){c.unlinkEntry(b=c.map[e])}else {b={prev:a.prev,next:a,key:f,value:d}}if(a.prev){b.prev.next=b}else {c.first=b}b.next=a;a.prev=b;c.prune();return d}else {return c.add(f,d)}},get:function(b){var a=this.map[b];if(a){if(a.next){this.moveToEnd(a)}return a.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 b=[],a=this.first;while(a){b.push(c?a.key:a.value);a=a.next}return b},each:function(f,c,d){var b=this,a=d?b.last:b.first,e=b.length;c=c||b;while(a){if(f.call(c,a.key,a.value,e)===!1){break}a=d?a.prev:a.next}return b},findKey:function(c){var a,b=this.map;for(a in b){if(b.hasOwnProperty(a)&&b[a].value===c){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 a=this,c=a.getMaxSize(),b=c?a.length-c:0;if(b>0){for(;a.first&&b;b--){a.removeAtKey(a.first.key)}}}},0,0,0,0,0,0,[Ext.util,'LruCache'],0);Ext.cmd.derive('Ext.ComponentQuery',Ext.Base,{singleton:!0},0,0,0,0,0,0,[Ext,'ComponentQuery'],function(){var a=this,f=Ext.util.Operators,r=/(\d*)n\+?(\d*)/,q=/\D/,c=/^(\s)+/,b=/\\(.)/g,j=new Ext.util.LruCache({maxSize:100}),m=['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(''),d=function(b,a){return a.method.apply(this,[b].concat(a.args))},e=function(d,g){var b=[],c=0,e=d.length,a,f=g!=='>';for(;c<e;c++){a=d[c];if(a.getRefItems){b=b.concat(a.getRefItems(f))}}return b},h=function(d){var c=[],b=0,e=d.length,a;for(;b<e;b++){a=d[b];while(!!(a=a.getRefOwner())){c.push(a)}}return c},g=function(b,e,f){if(e==='*'){return b.slice()}else {var d=[],c=0,g=b.length,a;for(;c<g;c++){a=b[c];if(a.isXType(e,f)){d.push(a)}}return d}},l=function(n,c,g,d){var e=[],k=0,o=n.length,i,l,b,a,h,m,j;if(c.charAt(0)==='@'){i=!0;c=c.substr(1)}if(c.charAt(0)==='?'){i=!0;l=!0;c=c.substr(1)}for(;k<o;k++){b=n[k];j=b.self.$config.configs[c];if(j){a=b[j.names.get]()}else {if(i&&!b.hasOwnProperty(c)){continue}else {a=b[c]}}if(l){e.push(b)}else {if(g==='~='){if(a){if(!Ext.isArray(a)){a=a.split(' ')}for(h=0,m=a.length;h<m;h++){if(f[g](Ext.coerce(a[h],d),d)){e.push(b);break}}}}else {if(g==='/='){if(a!=null&&d.test(a)){e.push(b)}}else {if(!d?!!b[c]:f[g](Ext.coerce(a,d),d)){e.push(b)}}}}}return e},i=function(d,f){var c=[],b=0,e=d.length,a;for(;b<e;b++){a=d[b];if(a.getItemId()===f){c.push(a)}}return c},n=function(b,d,c){return a.pseudos[d](b,c)},p=/^(\s?([>\^])\s?|\s|$)/,o=/^(#)?((?:\\\.|[\w\-])+|\*)(?:\((true|false)\))?/,k=[{re:/^\.((?:\\\.|[\w\-])+)(?:\((true|false)\))?/,method:g,argTransform:function(a){if(a[1]!==undefined){a[1]=a[1].replace(b,'$1')}return a.slice(1)}},{re:/^(?:\[((?:[@?$])?[\w\-]*)\s*(?:([\^$*~%!\/]?=)\s*(['"])?((?:\\\]|.)*?)\3)?(?!\\)\])/,method:l,argTransform:function(c){var g=c[0],f=c[1],e=c[2],a=c[4],d;if(a!==undefined){a=a.replace(b,'$1')}if(e==='/='){d=j.get(a);if(d){a=d}else {a=j.add(a,new RegExp(a))}}return [f,e,a]}},{re:/^#((?:\\\.|[\w\-])+)/,method:i},{re:/^\:([\w\-]+)(?:\(((?:\{[^\}]+\})|(?:(?!\{)[^\s>\/]*?(?!\})))\))?/,method:n,argTransform:function(a){if(a[2]!==undefined){a[2]=a[2].replace(b,'$1')}return a.slice(1)}},{re:/^(?:\{([^\}]+)\})/,method:m}];a.Query=Ext.extend(Object,{constructor:function(a){a=a||{};Ext.apply(this,a)},execute:function(f){var c=this.operations,b=[],e,a,d;for(a=0,d=c.length;a<d;a++){e=c[a];b=b.concat(this._execute(f,e))}return b},_execute:function(b,g){var f=0,i=g.length,c,a;if(!b){a=Ext.ComponentManager.getAll()}else {if(Ext.isIterable(b)){a=b}else {if(b.isMixedCollection){a=b.items}}}for(;f<i;f++){c=g[f];if(c.mode==='^'){a=h(a||[b])}else {if(c.mode){a=e(a||[b],c.mode)}else {a=d(a||e([b]),c)}}if(f===i-1){return a}}return []},is:function(f){var c=this.operations,b=!1,d=c.length,e,a;if(d===0){return !0}for(a=0;a<d;a++){e=c[a];b=this._is(f,e);if(b){return b}}return !1},_is:function(m,l){var k=l.length,a=[m],g,c,f,b,i,j;for(c=k-1;c>=0;--c){g=l[c];b=g.mode;if(b){if(b==='^'){a=e(a,' ')}else {if(b==='>'){i=[];for(f=0,k=a.length;f<k;++f){j=a[f].getRefOwner();if(j){i.push(j)}}a=i}else {a=h(a)}}if(a.length===0){return !1}}else {a=d(a,g);if(a.length===0){return !1}}}return !0},getMatches:function(a,c){var e=c.length,b;for(b=0;b<e;++b){a=d(a,c[b]);if(a.length===0){break}}return a},isMultiMatch:function(){return this.operations.length>1}});Ext.apply(a,{cache:new Ext.util.LruCache({maxSize:100}),pseudos:{not:function(d,f){var c=0,g=d.length,e=[],h=-1,b;for(;c<g;++c){b=d[c];if(!a.is(b,f)){e[++h]=b}}return e},first:function(a){var b=[];if(a.length>0){b.push(a[0])}return b},last:function(a){var b=a.length,c=[];if(b>0){c.push(a[b-1])}return c},focusable:function(d){var e=d.length,c=[],b=0,a;for(;b<e;b++){a=d[b];if(a.isFocusable&&a.isFocusable()){c.push(a)}}return c},'nth-child':function(i,a){var d=[],h=r.exec(a==='even'&&'2n'||a==='odd'&&'2n+1'||!q.test(a)&&'n+'+a||a),g=(h[1]||1)-0,e=h[2]-0,b,f,c;for(b=0;f=i[b];b++){c=b+1;if(g===1){if(e===0||c===e){d.push(f)}}else {if((c+e)%g===0){d.push(f)}}}return d}},query:function(c,j){if(!c){return Ext.ComponentManager.all.getArray()}var b=[],g=[],h={},d=a.cache.get(c),i,e,f;if(!d){d=a.cache.add(c,a.parse(c))}b=d.execute(j);if(d.isMultiMatch()){i=b.length;for(f=0;f<i;f++){e=b[f];if(!h[e.id]){g.push(e);h[e.id]=!0}}b=g}return b},visitPreOrder:function(c,e,f,d,b){a._visit(!0,c,e,f,d,b)},visitPostOrder:function(c,e,f,d,b){a._visit(!1,c,e,f,d,b)},_visit:function(i,c,b,l,k,e){var j=a.cache.get(c),g=[b],h,m=0,d,f;if(!j){j=a.cache.add(c,a.parse(c))}f=j.is(b);if(b.getRefItems){h=b.getRefItems();m=h.length}if(e){Ext.Array.push(g,e)}if(i){if(f){if(l.apply(k||b,g)===!1){return !1}}}for(d=0;d<m;d++){if(a._visit.call(a,i,c,h[d],l,k,e)===!1){return !1}}if(!i){if(f){if(l.apply(k||b,g)===!1){return !1}}}},is:function(d,b){if(!b){return !0}var c=a.cache.get(b);if(!c){c=a.cache.add(b,a.parse(b))}return c.is(d)},parse:function(g){var d=[],c,f,b,e;c=Ext.splitAndUnescape(g,',');for(b=0,e=c.length;b<e;b++){f=Ext.String.trim(c[b]);d.push(a._parse(f))}return new a.Query({operations:d})},_parse:function(a){var h=[],v=Ext.String.trim,t=k.length,r,e,n,s,j,d,m,l,f,u,q;while(a&&r!==a){r=a;e=a.match(o);if(e){s=e[1];n=v(e[2]).replace(b,'$1');if(s==='#'){h.push({method:i,args:[n]})}else {h.push({method:g,args:[n,Boolean(e[3])]})}a=a.replace(e[0],'').replace(c,'$1')}while(!(j=a.match(p))){for(l=0;a&&l<t;l++){f=k[l];d=a.match(f.re);u=f.method;m=f.argTransform;if(d){if(m){q=m(d)}else {q=d.slice(1)}h.push({method:Ext.isString(f.method)?Ext.functionFactory('items',Ext.String.format.apply(Ext.String,[u].concat(d.slice(1)))):f.method,args:q});a=a.replace(d[0],'').replace(c,'$1');break}if(l===t-1){Ext.Error.raise('Invalid ComponentQuery selector: "'+arguments[0]+'"')}}}if(j[1]){h.push({mode:j[2]||j[1]});a=a.replace(j[0],'').replace(c,'')}}return h}})});Ext.cmd.derive('Ext.Evented',Ext.Base,{alternateClassName:'Ext.EventedBase',statics:{generateSetter:function(c){var a=c.names,g=c.name,e=a.internal,f=a.apply,d=a.changeEvent,b=a.doSet;return function(i){var h=this,k=h.$configPrefixed?e:g,m=h.initialized,j,l=h[f];if(l){i=l.call(h,i,h[k]);if(i===undefined){return h}}j=h[k];if(i!==j){if(m){h.fireAction(d,[h,i,j],h.doSet,h,{nameMap:a})}else {h[k]=i;if(h[b]){h[b](i,j)}}}return this}}},initialized:!1,constructor:function(a){this.mixins.observable.constructor.call(this,a);this.initialized=!0},doSet:function(b,c,d,e){var a=e.nameMap;b[a.internal]=c;if(b[a.doSet]){b[a.doSet].call(this,c,d)}},onClassExtended:function(g,c){if(!c.hasOwnProperty('eventedConfig')){return}var f=c.config,b=c.eventedConfig,e='eventedSetter',d,a;if(f){Ext.applyIf(f,b)}else {g.addConfig(b)}for(d in b){if(b.hasOwnProperty(d)){a=Ext.Config.get(d);c[a.names.set]=a[e]||(a[e]=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(a,c){var b=this.getConstrainVector(c,a);if(b){a[0]+=b[0];a[1]+=b[1]}return a},alignTo:function(e,d,f,b){var a=this,c=a.el;return a.setXY(a.getAlignToXY(e,d,f),c.anim&&!!b?c.anim(b):!1)},calculateAnchorXY:function(f,k,l,e){var g=this,j=g.el,i=document,h=j.dom===i.body||j.dom===i,d=Math.round,a,b,c;f=(f||'tl').toLowerCase();e=e||{};b=e.width||(h?Ext.Element.getViewportWidth():g.getWidth());c=e.height||(h?Ext.Element.getViewportHeight():g.getHeight());switch(f){case 'tl':a=[0,0];break;case 'bl':a=[0,c];break;case 'tr':a=[b,0];break;case 'c':a=[d(b*0.5),d(c*0.5)];break;case 't':a=[d(b*0.5),0];break;case 'l':a=[0,d(c*0.5)];break;case 'r':a=[b,d(c*0.5)];break;case 'b':a=[d(b*0.5),c];break;case 'tc':a=[d(b*0.5),0];break;case 'bc':a=[d(b*0.5),c];break;case 'br':a=[b,c];}return [a[0]+k,a[1]+l]},convertPositionSpec:Ext.identityFn,getAlignToXY:function(g,b,n){var d=this,h,a,m,r,q,j,i,c,p,o,w,k,l,t,s,v,u,e,f;g=Ext.get(g.el||g);if(!g||!g.dom){}n=n||[0,0];b=(!b||b==='?'?'tl-bl?':!/-/.test(b)&&b!==''?'tl-'+b:b||'tl-bl').toLowerCase();b=d.convertPositionSpec(b);m=b.match(d._alignRe);k=m[1];l=m[2];w=!!m[3];r=d.getAnchorXY(k,!0);q=d.getAnchorToXY(g,l,!1);e=q[0]-r[0]+n[0];f=q[1]-r[1]+n[1];if(w){h=d.constrainTo||d.container||d.el.parent();h=Ext.get(h.el||h);a=h.getConstrainRegion();a.right=a.left+h.el.dom.clientWidth;j=d.getWidth();i=d.getHeight();c=g.getRegion();t=k.charAt(0);s=k.charAt(k.length-1);v=l.charAt(0);u=l.charAt(l.length-1);p=e<c.right&&e+j>=c.left&&(t=='t'&&v=='b'||t=='b'&&v=='t');o=f<c.bottom&&f+i>=c.top&&(s=='r'&&u=='l'||s=='l'&&u=='r');if(e+j>a.right){if(o){e=c.left-j;o=!1}else {e=a.right-j}}if(e<a.left){e=o?c.right:a.left}if(f+i>a.bottom){if(p){f=c.top-i;p=!1}else {f=a.bottom-i}}if(f<a.top){f=p?c.bottom:a.top}}return [e,f]},getAnchorXY:function(h,e,k){var b=this,f=b.getXY(),a=b.el,g=document,c=a.dom==g.body||a.dom==g,d=a.getScroll(),i=c?d.left:e?0:f[0],j=c?d.top:e?0:f[1];return b.calculateAnchorXY(h,i,j,k)},getBox:function(j,k){var b=this,i=k?b.getLocalXY():b.getXY(),c=i[0],d=i[1],h=b.getWidth(),g=b.getHeight(),a,e,f;if(j){a=b.getBorderPadding();e=a.beforeX;f=a.beforeY;c+=e;d+=f;h-=e+a.afterX;g-=f+a.afterY}return {x:c,left:c,0:c,y:d,top:d,1:d,width:h,height:g,right:c+h,bottom:d+g}},calculateConstrainedPosition:function(h,c,j,l){var a=this,e,k=a.floatParent,i=k?k.getTargetEl():null,d,g,b,f=!1,m;if(j&&k){d=i.getXY();g=i.getBorderPadding();d[0]+=g.beforeX;d[1]+=g.beforeY;if(c){b=[c[0]+d[0],c[1]+d[1]]}}else {b=c}h=h||a.constrainTo||i||a.container||a.el.parent();if(j&&b){b=a.reverseTranslateXY(b)}e=(a.constrainHeader&&a.header.rendered?a.header:a).getConstrainVector(h,b,l);if(e){f=c||a.getPosition(j);f[0]+=e[0];f[1]+=e[1]}return f},getConstrainRegion:function(){var k=this,a=k.el,j=a.dom.nodeName==='BODY',h=a.dom,g=a.getBorders(),i=a.getXY(),e=i[0]+g.beforeX,f=i[1]+g.beforeY,c,d,b;if(j){c=a.getScroll();e=c.left;f=c.top;d=Ext.Element.getViewportWidth();b=Ext.Element.getViewportHeight()}else {d=h.clientWidth;b=h.clientHeight}return new Ext.util.Region(f,e+d,f+b,e)},getConstrainVector:function(a,g,i){var b=this.getRegion(),d=[0,0],f=this.shadow&&this.constrainShadow&&!this.shadowDisabled?this.shadow.getShadowSize():undefined,e=!1,h,c=this.constraintInsets;if(!(a instanceof Ext.util.Region)){a=Ext.get(a.el||a);h=a.getViewSize();a=a.getConstrainRegion();a.right=a.left+h.width;a.bottom=a.top+h.height}if(c){c=Ext.isObject(c)?c:Ext.Element.parseBox(c);a.adjust(c.top,c.right,c.bottom,c.length)}if(g){b.translateBy(g[0]-b.x,g[1]-b.y)}if(i){b.right=b.left+i[0];b.bottom=b.top+i[1]}if(f){a.adjust(f[0],-f[1],-f[2],f[3])}if(b.right>a.right){e=!0;d[0]=a.right-b.right}if(b.left+d[0]<a.left){e=!0;d[0]=a.left-b.left}if(b.bottom>a.bottom){e=!0;d[1]=a.bottom-b.bottom}if(b.top+d[1]<a.top){e=!0;d[1]=a.top-b.top}return e?d:!1},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 a=this,i=a.el,j=i.dom.nodeName==='BODY',d,f,h,c,b,g,e;if(j){f=i.getScroll();b=f.left;c=f.top;g=Ext.Element.getViewportWidth();e=Ext.Element.getViewportHeight()}else {d=a.getBorderPadding();h=a.getXY();b=h[0]+d.beforeX;c=h[1]+d.beforeY;g=a.getWidth(!0);e=a.getHeight(!0)}return new Ext.util.Region(c,b+g,c+e,b)},move:function(a,b,l){var j=this,k=j.getXY(),c=k[0],d=k[1],i=[c-b,d],g=[c+b,d],f=[c,d-b],e=[c,d+b],h={l:i,left:i,r:g,right:g,t:f,top:f,up:f,b:e,bottom:e,down:e};a=a.toLowerCase();j.setXY([h[a][0],h[a][1]],l)},setBox:function(a){var b=this,c,d;if(a.isRegion){a={x:a.left,y:a.top,width:a.right-a.left,height:a.bottom-a.top}}b.constrainBox(a);c=a.x;d=a.y;b.setXY([c,d]);b.setSize(a.width,a.height);b.afterSetPosition(c,d);return b},constrainBox:function(a){var c=this,b,d,e;if(c.constrain||c.constrainHeader){d='x' in a?a.x:a.left;e='y' in a?a.y:a.top;b=c.calculateConstrainedPosition(null,[d,e],!1,[a.width,a.height]);if(b){a.x=b[0];a.y=b[1]}}},translatePoints:function(b,c){var a=this.translateXY(b,c);return {left:a.x,top:a.y}},translateXY:function(a,g){var f=this,e=f.el,d=e.getStyle(f._positionTopLeft),h=d.position==='relative',b=parseFloat(d.left),c=parseFloat(d.top),i=f.getXY();if(Ext.isArray(a)){g=a[1];a=a[0]}if(isNaN(b)){b=h?0:e.dom.offsetLeft}if(isNaN(c)){c=h?0:e.dom.offsetTop}b=typeof a==='number'?a-i[0]+b:undefined;c=typeof g==='number'?g-i[1]+c:undefined;return {x:b,y:c}},reverseTranslateXY:function(d){var h=d,b=this.el,j=[],i=b.dom,a=i.offsetParent,g,c,e,f;if(a){g=b.isStyle('position','relative'),c=Ext.fly(a).getXY(),e=d[0]+c[0]+a.clientLeft;f=d[1]+c[1]+a.clientTop;if(g){e+=b.getPadding('l');f+=b.getPadding('t')}h=[e,f]}return h}},0,0,0,0,0,0,[Ext.util,'Positionable'],0);Ext.define('Ext.overrides.util.Positionable',{override:'Ext.util.Positionable',anchorTo:function(e,f,i,h,c,g){var a=this,d=!Ext.isEmpty(c),b=function(){a.alignTo(e,f,i,h);Ext.callback(g,a)},j=a.getAnchor();a.removeAnchor();Ext.apply(j,{fn:b,scroll:d});Ext.on('resize',b,null);if(d){Ext.getWin().on('scroll',b,null,{buffer:!isNaN(c)?c:50})}b();return a},getAnchor:function(){var c=this.el,b,a;if(!c.dom){return}b=c.getData();a=b._anchor;if(!a){a=b._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(a,c){var b=this;if(a.isRegion){a={x:a.left,y:a.top,width:a.right-a.left,height:a.bottom-a.top}}if(c){b.constrainBox(a);b.animate(Ext.applyIf({to:a,listeners:{afteranimate:Ext.Function.bind(b.afterSetPosition,b,[a.x,a.y])}},c))}else {arguments.callee.$previous.call(this,a)}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 a=this,b=a.el;if(b){b.hide();a.getPool().checkIn(b);a.el=null;a.hidden=!0}},realign:function(d,e,c,b){var h=this,g=h.el,f=h.target,a=h.offsets,i=Math.max;if(g){if(d==null){d=f.getX()}if(e==null){e=f.getY()}if(c==null){c=f.getWidth()}if(b==null){b=f.getHeight()}if(a){d=d+a.x;e=e+a.y;c=i(c+a.w,0);b=i(b+a.h,0)}g.setXY([d,e]);g.setSize(c,b)}},setZIndex:function(a){this.zIndex=a;if(this.el){this.el.setStyle('z-index',a)}},show:function(){var a=this,f=a.target,c=a.zIndex,b=a.el,e=a.getInsertionTarget().dom,d;if(!b){b=a.el=a.getPool().checkOut()}a.beforeShow();if(c==null){c=parseInt(f.getStyle('z-index'),10)}if(c){b.setStyle('z-index',c)}b.setStyle('position',a.fixed?'fixed':'');d=b.dom;if(d.nextSibling!==e){f.dom.parentNode.insertBefore(d,e)}b.show();a.realign();a.hidden=!1}},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(f){var d=this,e,c,a,b;Ext.dom.Underlay.prototype.constructor.call(this,f);d.elementConfig={cls:d.cls,role:'presentation'};a=d.offset;b=Math.floor(a/2);d.opacity=50;switch(d.mode.toLowerCase()){case 'drop':e={x:0,y:0,w:a,h:a};if(Ext.supports.CSS3BoxShadow){c={x:a,y:a,h:-a,w:-a}}else {c={x:-b,y:-b,h:-b,w:-b}};break;case 'sides':e={x:-a,y:0,w:a*2,h:a};if(Ext.supports.CSS3BoxShadow){c={x:0,y:a,h:-a,w:0}}else {c={x:1+b-2*a,y:-(1+b),h:-1,w:b-1}};break;case 'frame':e={x:-a,y:-a,w:a*2,h:a*2};if(Ext.supports.CSS3BoxShadow){c={x:0,y:0,h:0,w:0}}else {c={x:1+b-2*a,y:1+b-2*a,h:a-b-1,w:a-b-1}};break;case 'bottom':e={x:-a,y:0,w:a*2,h:a};if(Ext.supports.CSS3BoxShadow){c={x:0,y:a,h:-a,w:0}}else {c={x:0,y:a,h:0,w:0}};break;}d.offsets=c;d.outerOffsets=e},getShadowSize:function(){var b=this,a=b.el?b.offset:0,c=[a,a,a,a],d=b.mode.toLowerCase();if(b.el&&d!=='frame'){c[0]=0;if(d=='drop'){c[3]=0}}return c},boxShadowProperty:function(){var a='boxShadow',b=document.documentElement.style;if(!('boxShadow' in b)){if('WebkitBoxShadow' in b){a='WebkitBoxShadow'}else {if('MozBoxShadow' in b){a='MozBoxShadow'}}}return a}(),beforeShow:function(){var a=this,b=a.el.dom.style,c=a.shim;if(Ext.supports.CSS3BoxShadow){b[a.boxShadowProperty]='0 0 '+(a.offset+2)+'px #888'}else {b.filter='progid:DXImageTransform.Microsoft.alpha(opacity='+a.opacity+') progid:DXImageTransform.Microsoft.Blur(pixelradius='+a.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,f,b,e,d){var a=this,c=!1,g=a.name,j,k,i;b=b||{};if(b.delegated===!1||Ext.event.publisher.Dom.instance.directEvents[g]){if(b.capture){i=a.directCaptures||(a.directCaptures=new Ext.util.Event(a.observable,g));c=i.addListener(h,f,b,e,d)}else {k=a.directs||(a.directs=new Ext.util.Event(a.observable,g));c=k.addListener(h,f,b,e,d)}}else {if(b.capture){j=a.captures||(a.captures=new Ext.util.Event(a.observable,g));c=j.addListener(h,f,b,e,d)}else {c=Ext.util.Event.prototype.addListener.call(this,h,f,b,e,d)}}return c},removeListener:function(c,b){var e=this,g=e.captures,h=e.directs,f=e.directCaptures,d=!1,a=e.findListener(c,b);if(a!==-1){d=Ext.util.Event.prototype.removeListener.call(this,c,b,a)}else {if(h){a=h.findListener(c,b)}if(a!==-1){d=h.removeListener(c,b,a)}else {if(g){a=g.findListener(c,b)}if(a!==-1){d=g.removeListener(c,b,a)}else {if(f){a=f.findListener(c,b);if(a!==-1){d=f.removeListener(c,b,a)}}}}}return d},clearListeners:function(){var a=this,b=a.directCaptures,d=a.directs,c=a.captures;if(b){b.clearListeners()}if(d){d.clearListeners()}if(c){c.clearListeners()}Ext.util.Event.prototype.clearListeners.call(this)},suspend:function(){var a=this,b=a.directCaptures,d=a.directs,c=a.captures;if(b){b.suspend()}if(d){d.suspend()}if(c){c.suspend()}Ext.util.Event.prototype.suspend.call(this)},resume:function(){var a=this,b=a.directCaptures,d=a.directs,c=a.captures;if(b){b.resume()}if(d){d.resume()}if(c){c.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 a=this,b=a.type;a.handles={};a.registerEvents();Ext.event.publisher.Publisher.publishers[b]=a},registerEvents:function(f){var c=this,e=Ext.event.publisher.Publisher.publishersByEvent,d=f||c.handledEvents,g=d.length,b,a;for(a=0;a<g;a++){b=d[a];c.handles[b]=1;e[b]=c}},fire:function(c,b,d){var a;if(c.hasListeners[b]){a=c.events[b];if(a){a.fire.apply(a,d)}}},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:!0,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(e,d,b,c){var a=this;a.y=a.top=a[1]=e;a.right=d;a.bottom=b;a.x=a.left=a[0]=c},contains:function(a){var b=this;return a.x>=b.x&&a.right<=b.right&&a.y>=b.y&&a.bottom<=b.bottom},intersect:function(a){var b=this,f=Math.max(b.y,a.y),e=Math.min(b.right,a.right),c=Math.min(b.bottom,a.bottom),d=Math.max(b.x,a.x);if(c>f&&e>d){return new this.self(f,e,c,d)}else {return !1}},union:function(a){var b=this,f=Math.min(b.y,a.y),e=Math.max(b.right,a.right),c=Math.max(b.bottom,a.bottom),d=Math.min(b.x,a.x);return new this.self(f,e,c,d)},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(e,d,b,c){var a=this;a.top=a.y+=e;a.left=a.x+=c;a.right+=d;a.bottom+=b;return a},getOutOfBoundOffset:function(b,a){if(!Ext.isObject(b)){if(b=='x'){return this.getOutOfBoundOffsetX(a)}else {return this.getOutOfBoundOffsetY(a)}}else {a=b;var c=new Ext.util.Offset();c.x=this.getOutOfBoundOffsetX(a.x);c.y=this.getOutOfBoundOffsetY(a.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(b,a){if(!Ext.isObject(b)){if(b=='x'){return this.isOutOfBoundX(a)}else {return this.isOutOfBoundY(a)}}else {a=b;return this.isOutOfBoundX(a.x)||this.isOutOfBoundY(a.y)}},isOutOfBoundX:function(a){return a<this.x||a>this.right},isOutOfBoundY:function(a){return a<this.y||a>this.bottom},restrict:function(d,a,b){if(Ext.isObject(d)){var c;b=a;a=d;if(a.copy){c=a.copy()}else {c={x:a.x,y:a.y}}c.x=this.restrictX(a.x,b);c.y=this.restrictY(a.y,b);return c}else {if(d=='x'){return this.restrictX(a,b)}else {return this.restrictY(a,b)}}},restrictX:function(a,b){if(!b){b=1}if(a<=this.x){a-=(a-this.x)*b}else {if(a>=this.right){a-=(a-this.right)*b}}return a},restrictY:function(a,b){if(!b){b=1}if(a<=this.y){a-=(a-this.y)*b}else {if(a>=this.bottom){a-=(a-this.bottom)*b}}return a},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(b,c){if(arguments.length==1){c=b.y;b=b.x}var a=this;a.top=a.y+=c;a.right+=b;a.bottom+=c;a.left=a.x+=b;return a},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(b,a){if(typeof a=='number'){return this.getDistanceTo(b)<=a}var e=b.x,f=b.y,c=a.x,d=a.y;return this.x<=e+c&&this.x>=e-c&&this.y<=f+d&&this.y>=f-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(a){if(!a||typeof a!=='object'){a=this.origin}var b=this.x-a.x,c=this.y-a.y;return Math.sqrt(b*b+c*c)},getAngleTo:function(a){if(!a||typeof a!=='object'){a=this.origin}var b=this.x-a.x,c=this.y-a.y;return Math.atan2(c,b)*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:!1,defaultPrevented:!1,isEvent:!0,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 a=this,c=a.self,h=a.self.resolveTextNode,i=b.changedTouches,g=i?i[0]:b,d=b.type,e,f;a.pageX=g.pageX;a.pageY=g.pageY;a.target=a.delegatedTarget=h(b.target);f=b.relatedTarget;if(f){a.relatedTarget=h(f)}a.browserEvent=a.event=b;a.type=d;a.button=b.button||0;a.shiftKey=b.shiftKey;a.ctrlKey=b.ctrlKey||b.metaKey||!1;a.altKey=b.altKey;a.charCode=b.charCode;a.keyCode=b.keyCode;a.buttons=b.buttons;if(a.button===0&&a.buttons===0){a.buttons=1}if(c.forwardTab!==undefined&&c.focusEvents[d]){a.forwardTab=c.forwardTab}if(c.mouseEvents[d]||c.clickEvents[d]){e='mouse'}else {if(c.pointerEvents[d]){e=c.pointerTypes[b.pointerType]}else {if(c.touchEvents[d]){e='touch'}}}if(e){a.pointerType=e}a.timeStamp=a.time=+(b.timeStamp||new Date())},chain:function(b){var a=Ext.Object.chain(this);a.parentEvent=this;return Ext.apply(a,b)},correctWheelDelta:function(a){var c=this.WHEEL_SCALE,b=Math.round(a/c);if(!b&&a){b=a<0?-1:1}return b},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(d,e,c){var a=this.relatedTarget,b=null;if(a){if(d){b=Ext.fly(a).findParent(d,e,c)}else {b=c?Ext.get(a):a}}return b},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,a=d.browserEvent,c=0,b=0;if(Ext.isDefined(a.wheelDeltaX)){c=a.wheelDeltaX;b=a.wheelDeltaY}else {if(a.wheelDelta){b=a.wheelDelta}else {if(a.detail){b=-a.detail;if(b>100){b=3}else {if(b<-100){b=-3}}if(Ext.isDefined(a.axis)&&a.axis===a.HORIZONTAL_AXIS){c=b;b=0}}}}return {x:d.correctWheelDelta(c),y:d.correctWheelDelta(b)}},getX:function(){return this.getXY()[0]},getXY:function(){var d=this,c=d.xy;if(!c){c=d.xy=[d.pageX,d.pageY];var g=c[0],e,f,a,b;if(!g&&g!==0){e=d.browserEvent;f=document;a=f.documentElement;b=f.body;c[0]=e.clientX+(a&&a.scrollLeft||b&&b.scrollLeft||0)-(a&&a.clientLeft||b&&b.clientLeft||0);c[1]=e.clientY+(a&&a.scrollTop||b&&b.scrollTop||0)-(a&&a.clientTop||b&&b.clientTop||0)}}return c},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(){var a=this,b=a.parentEvent;a.defaultPrevented=!0;if(b){b.defaultPrevented=!0}a.browserEvent.preventDefault();return a},setCurrentTarget:function(a){this.currentTarget=this.delegatedTarget=a},stopEvent:function(){return this.preventDefault().stopPropagation()},stopPropagation:function(){var a=this,b=a.browserEvent,c=a.parentEvent;a.isStopped=!0;if(c){c.isStopped=!0}if(!b.stopPropagation){b.cancelBubble=!0;return a}b.stopPropagation();return a},within:function(b,d,c){var a;if(b){a=d?this.getRelatedTarget():this.getTarget()}return a?Ext.fly(b).contains(a)||!!(c&&a===Ext.getDom(b)):!1},deprecated:{'4.0':{methods:{getPageX:'getX',getPageY:'getY'}}}},1,0,0,0,0,0,[Ext.event,'Event',Ext,'EventObjectImpl'],function(c){var a=c.prototype,b={BACKSPACE:8,TAB:9,NUM_CENTER:12,ENTER:13,RETURN:13,SHIFT:16,CTRL:17,ALT:18,PAUSE:19,CAPS_LOCK:20,ESC:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,PRINT_SCREEN:44,INSERT:45,DELETE:46,ZERO:48,ONE:49,TWO:50,THREE:51,FOUR:52,FIVE:53,SIX:54,SEVEN:55,EIGHT:56,NINE:57,A:65,B:66,C:67,D:68,E:69,F:70,G:71,H:72,I:73,J:74,K:75,L:76,M:77,N:78,O:79,P:80,Q:81,R:82,S:83,T:84,U:85,V:86,W:87,X:88,Y:89,Z:90,CONTEXT_MENU:93,NUM_ZERO:96,NUM_ONE:97,NUM_TWO:98,NUM_THREE:99,NUM_FOUR:100,NUM_FIVE:101,NUM_SIX:102,NUM_SEVEN:103,NUM_EIGHT:104,NUM_NINE:105,NUM_MULTIPLY:106,NUM_PLUS:107,NUM_MINUS:109,NUM_PERIOD:110,NUM_DIVISION:111,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,WHEEL_SCALE:function(){var a;if(Ext.isGecko){a=3}else {if(Ext.isMac){if(Ext.isSafari&&Ext.webKitVersion>=532){a=120}else {a=12}a*=3}else {a=120}}return a}()};Ext.apply(c,b);Ext.apply(a,b);a.getTrueXY=a.getXY});Ext.define('Ext.overrides.event.Event',{override:'Ext.event.Event',mousedownEvents:{mousedown:1,pointerdown:1,touchstart:1},injectEvent:function(){var a,b={},c;if(!Ext.isIE9m&&document.createEvent){a={createHtmlEvent:function(e,d,c,b){var a=e.createEvent('HTMLEvents');a.initEvent(d,c,b);return a},createMouseEvent:function(d,n,h,f,m,b,c,i,k,g,j,l,e){var a=d.createEvent('MouseEvents'),o=d.defaultView||window;if(a.initMouseEvent){a.initMouseEvent(n,h,f,o,m,b,c,b,c,i,k,g,j,l,e)}else {a=d.createEvent('UIEvents');a.initEvent(n,h,f);a.view=o;a.detail=m;a.screenX=b;a.screenY=c;a.clientX=b;a.clientY=c;a.ctrlKey=i;a.altKey=k;a.metaKey=j;a.shiftKey=g;a.button=l;a.relatedTarget=e}return a},createUIEvent:function(b,f,d,c,e){var a=b.createEvent('UIEvents'),g=b.defaultView||window;a.initUIEvent(f,d,c,g,e);return a},fireEvent:function(a,c,b){a.dispatchEvent(b)}}}else {if(document.createEventObject){c={0:1,1:4,2:2};a={createHtmlEvent:function(d,e,c,b){var a=d.createEventObject();a.bubbles=c;a.cancelable=b;return a},createMouseEvent:function(n,o,i,g,m,b,d,j,l,h,k,e,f){var a=n.createEventObject();a.bubbles=i;a.cancelable=g;a.detail=m;a.screenX=b;a.screenY=d;a.clientX=b;a.clientY=d;a.ctrlKey=j;a.altKey=l;a.shiftKey=h;a.metaKey=k;a.button=c[e]||e;a.relatedTarget=f;return a},createUIEvent:function(d,f,c,b,e){var a=d.createEventObject();a.bubbles=c;a.cancelable=b;return a},fireEvent:function(a,c,b){a.fireEvent('on'+c,b)}}}}Ext.Object.each({load:[!1,!1],unload:[!1,!1],select:[!0,!1],change:[!0,!1],submit:[!0,!0],reset:[!0,!1],resize:[!0,!1],scroll:[!0,!1]},function(c,d){var f=d[0],e=d[1];b[c]=function(b,h){var g=a.createHtmlEvent(c,f,e);a.fireEvent(b,c,g)}});function createMouseEventDispatcher(b,d){var c=b!=='mousemove';return function(f,e){var g=e.getXY(),h=a.createMouseEvent(f.ownerDocument,b,!0,c,d,g[0],g[1],e.ctrlKey,e.altKey,e.shiftKey,e.metaKey,e.button,e.relatedTarget);a.fireEvent(f,b,h)}}Ext.each(['click','dblclick','mousedown','mouseup','mouseover','mousemove','mouseout'],function(a){b[a]=createMouseEventDispatcher(a,1)});Ext.Object.each({focusin:[!0,!1],focusout:[!0,!1],activate:[!0,!0],focus:[!1,!1],blur:[!1,!1]},function(c,d){var f=d[0],e=d[1];b[c]=function(b,h){var g=a.createUIEvent(b.ownerDocument,c,f,e,1);a.fireEvent(b,c,g)}});if(!a){b={};a={}}function cannotInject(b,a){}return function(a){var c=this,d=b[c.type]||cannotInject,e=a?a.dom||a:c.getTarget();d(e,c)}}(),preventDefault:function(){var c=this,a=c.browserEvent,e=c.parentEvent,d,b;if(typeof a.type!=='unknown'){c.defaultPrevented=!0;if(e){e.defaultPrevented=!0}if(a.preventDefault){a.preventDefault()}else {if(a.type==='mousedown'){b=a.target;d=b.getAttribute('unselectable');if(d!=='on'){b.setAttribute('unselectable','on');Ext.defer(function(){b.setAttribute('unselectable',d)},1)}}a.returnValue=!1;if(a.ctrlKey||a.keyCode>111&&a.keyCode<124){a.keyCode=-1}}}return c},stopPropagation:function(){var a=this,b=a.browserEvent;if(typeof b.type!=='unknown'){if(a.mousedownEvents[a.type]){Ext.GlobalEvents.fireMouseDown(a)}arguments.callee.$previous.call(this)}return a},deprecated:{'5.0':{methods:{clone:function(){return new this.self(this.browserEvent,this)}}}}},function(){var c=this,d,a=function(a){if(a.keyCode===9){c.forwardTab=!a.shiftKey}},b=function(a){if(a.keyCode===9){delete c.forwardTab}};if(Ext.isIE9m){d={0:0,1:0,4:1,2:2};c.override({statics:{enableIEAsync:function(b){var a,c={};for(a in b){c[a]=b[a]}return c}},constructor:function(a,f,e,c){var b=this;b.callParent([a,f,e,c]);b.button=d[a.button];if(a.type==='contextmenu'){b.button=2}b.toElement=a.toElement;b.fromElement=a.fromElement},mouseLeaveRe:/(mouseout|mouseleave)/,mouseEnterRe:/(mouseover|mouseenter)/,enableIEAsync:function(a){this.browserEvent=this.self.enableIEAsync(a)},getRelatedTarget:function(f,d,e){var a=this,c,b;if(!a.relatedTarget){c=a.type;if(a.mouseLeaveRe.test(c)){b=a.toElement}else {if(a.mouseEnterRe.test(c)){b=a.fromElement}}if(b){a.relatedTarget=a.self.resolveTextNode(b)}}return a.callParent([f,d,e])}});document.attachEvent('onkeydown',a);document.attachEvent('onkeyup',b);window.attachEvent('onunload',function(){document.detachEvent('onkeydown',a);document.detachEvent('onkeyup',b)})}else {if(document.addEventListener){document.addEventListener('keydown',a,!0);document.addEventListener('keyup',b,!0)}}});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.onInternalReady(a.onReady,a);Ext.event.publisher.Publisher.prototype.constructor.call(this)},registerEvents:function(){var b=this,e=Ext.event.publisher.Publisher.publishersByEvent,d=b.handledDomEvents,f=d.length,c=0,a;for(;c<f;c++){a=d[c];b.handles[a]=1;e[a]=b}Ext.event.publisher.Publisher.prototype.registerEvents.call(this)},onReady:function(){var a=this,c=a.handledDomEvents,d,b;if(c){for(b=0,d=c.length;b<d;b++){a.addDelegatedListener(c[b])}}Ext.getWin().on('unload',a.destroy,a)},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(f,b,g,e){var c=this,a,d;if(g&&!c.directEvents[b]){a=e?c.captureSubscribers:c.bubbleSubscribers;if(!c.handles[b]&&!c.delegatedListeners[b]){c.addDelegatedListener(b)}if(a[b]){++a[b]}else {a[b]=1}}else {a=e?c.directCaptureSubscribers:c.directSubscribers;d=f.id;a=a[b]||(a[b]={});if(a[d]){++a[d]}else {a[d]=1;c.addDirectListener(b,f,e)}}},unsubscribe:function(h,b,i,g){var c=this,e,f,a,d;if(i&&!c.directEvents[b]){e=c.captureSubscribers;f=c.bubbleSubscribers;a=g?e:f;if(a[b]){--a[b]}if(!c.handles[b]&&!f[b]&&!e[b]){this.removeDelegatedListener(b)}}else {a=g?c.directCaptureSubscribers:c.directSubscribers;d=h.id;a=a[b];if(a[d]){--a[d]}if(!a[d]){delete a[d];c.removeDirectListener(b,h,g)}}},getPropagatingTargets:function(d){var a=d,c=[],b;while(a){c.push(a);b=a.parentNode;if(!b){b=a.defaultView}a=b}return c},publish:function(e,g,f){var d=this,c,a,b,h;if(Ext.isArray(g)){c=g}else {if(d.captureEvents[e]){a=Ext.cache[g.id];c=a?[a]:[]}else {c=d.getPropagatingTargets(g)}}h=c.length;if(d.captureSubscribers[e]){for(b=h;b--;){a=Ext.cache[c[b].id];if(a){d.fire(a,e,f,!1,!0);if(f.isStopped){break}}}}if(!f.isStopped&&d.bubbleSubscribers[e]){for(b=0;b<h;b++){a=Ext.cache[c[b].id];if(a){d.fire(a,e,f,!1,!1);if(f.isStopped){break}}}}},fire:function(b,d,c,f,e){var a;if(b.hasListeners[d]){a=b.events[d];if(a){if(e&&f){a=a.directCaptures}else {if(e){a=a.captures}else {if(f){a=a.directs}}}if(a){c.setCurrentTarget(b.dom);a.fire(c,c.target)}}}},onDelegatedEvent:function(a){if(Ext.elevateFunction){Ext.elevateFunction(this.doDelegatedEvent,this,[a])}else {this.doDelegatedEvent(a)}},doDelegatedEvent:function(a,c){var b=this,d=a.timeStamp;a=new Ext.event.Event(a);if(b.isEventBlocked(a)){return !1}b.beforeEvent(a);Ext.frameStartTime=d;b.reEnterCount++;b.publish(a.type,a.target,a);b.reEnterCount--;if(c!==!1){b.afterEvent(a)}return a},onDirectEvent:function(a){if(Ext.elevateFunction){Ext.elevateFunction(this.doDirectEvent,this,[a,!1])}else {this.doDirectEvent(a,!1)}},onDirectCaptureEvent:function(a){if(Ext.elevateFunction){Ext.elevateFunction(this.doDirectEvent,this,[a,!0])}else {this.doDirectEvent(a,!0)}},doDirectEvent:function(a,e){var b=this,c=a.currentTarget,d=a.timeStamp;a=new Ext.event.Event(a);if(b.isEventBlocked(a)){return}b.beforeEvent(a);Ext.frameStartTime=d;b.reEnterCount++;b.fire(Ext.cache[c.id],a.type,a,!0,e);b.reEnterCount--;b.afterEvent(a)},beforeEvent:function(e){var c=e.browserEvent,d=Ext.event.publisher.Dom,a,b;if(c.type==='touchstart'){a=c.touches;if(a.length===1){b=a[0];d.lastTouchStartX=b.pageX;d.lastTouchStartY=b.pageY}}},afterEvent:function(c){var e=c.browserEvent,b=e.type,d=Ext.event.publisher.Dom,a=Ext.GlobalEvents;if(c.self.pointerEvents[b]&&c.pointerType!=='mouse'){d.lastScreenPointerEventTime=Ext.now()}if(b==='touchend'){d.lastTouchEndTime=Ext.now()}if(!this.reEnterCount&&a.hasListeners.idle&&!a.idleEventMask[b]){a.fireEvent('idle')}},isEventBlocked:function(a){var d=this,c=a.type,b=Ext.event.publisher.Dom,e=Ext.now();return d.blockedPointerEvents[c]&&a.pointerType!=='mouse'||d.blockedCompatibilityMouseEvents[c]&&e-b.lastScreenPointerEventTime<1000||Ext.supports.TouchEvents&&a.self.mouseEvents[a.type]&&Math.abs(a.pageX-b.lastTouchStartX)<15&&Math.abs(a.pageY-b.lastTouchStartY)<15&&Ext.now()-b.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,a=d.defaultView,c=b.prototype;if(Ext.os.is.iOS&&Ext.os.version.getMajor()<5||Ext.browser.is.AndroidStock||!(a&&a.addEventListener)){c.target=d}else {c.target=a}b.instance=new b()});Ext.define('Ext.overrides.event.publisher.Dom',{override:'Ext.event.publisher.Dom'},function(c){if(Ext.isIE9m){var d=document.body,a=c.prototype,b,e;a.target=document;a.directBoundListeners={};b=function(a,b,d){a.target=a.srcElement||window;a.currentTarget=this;if(d){b.onDirectCaptureEvent(a)}else {b.onDirectEvent(a)}};e=function(a,b){a.target=a.srcElement||window;a.currentTarget=this;b.onDirectCaptureEvent(a)};c.override({addDelegatedListener:function(a){this.delegatedListeners[a]=1;this.target.attachEvent('on'+a,this.onDelegatedEvent)},removeDelegatedListener:function(a){delete this.delegatedListeners[a];this.target.detachEvent('on'+a,this.onDelegatedEvent)},addDirectListener:function(d,j,i){var e=this,a=j.dom,g=Ext.Function.bind(b,a,[e,i],!0),f=e.directBoundListeners,h=f[d]||(f[d]={});h[a.id]=g;if(a.attachEvent){a.attachEvent('on'+d,g)}else {e.callParent(arguments)}},removeDirectListener:function(b,d){var a=d.dom;if(a.detachEvent){a.detachEvent('on'+b,this.directBoundListeners[b][a.id])}else {this.callParent(arguments)}},doDelegatedEvent:function(a,b){a.target=a.srcElement||window;if(a.type==='focusin'){a.relatedTarget=a.fromElement===d?null:a.fromElement}else {if(a.type==='focusout'){a.relatedTarget=a.toElement===d?null:a.toElement}}return this.callParent([a,b])}});Ext.apply(a.directEvents,a.captureEvents);a.captureEvents={}}});Ext.cmd.derive('Ext.event.publisher.Gesture',Ext.event.publisher.Dom,{type:'gesture',config:{async:!0},isCancelEvent:{touchcancel:1,pointercancel:1,MSPointerCancel:1},handledEvents:[],handledDomEvents:[],constructor:function(l){var a=this,d=a.handledDomEvents,j=Ext.supports,i=j.TouchEvents,k=Ext.Function,g=a.onTouchStart,h=a.onTouchMove,c=a.onTouchEnd,e=k.createAnimationFrame(a.onTouchStart,a,null,1),f=k.createAnimationFrame(a.onTouchMove,a),b=k.createAnimationFrame(a.onTouchEnd,a,null,1);a._handlers={touchstart:g,touchmove:h,touchend:c,touchcancel:c,pointerdown:g,pointermove:h,pointerup:c,pointercancel:c,MSPointerDown:g,MSPointerMove:h,MSPointerUp:c,MSPointerCancel:c,mousedown:g,mousemove:h,mouseup:c};a._asyncHandlers={touchstart:e,touchmove:f,touchend:b,touchcancel:b,pointerdown:e,pointermove:f,pointerup:b,pointercancel:b,MSPointerDown:e,MSPointerMove:f,MSPointerUp:b,MSPointerCancel:b,mousedown:e,mousemove:f,mouseup:b};a.activeTouchesMap={};a.activeTouches=[];a.changedTouches=[];a.recognizers=[];if(i){a.onTargetTouchMove=a.onTargetTouchMove.bind(a);a.onTargetTouchEnd=a.onTargetTouchEnd.bind(a)}if(j.PointerEvents){d.push('pointerdown','pointermove','pointerup','pointercancel');a.mousePointerType='mouse'}else {if(j.MSPointerEvents){d.push('MSPointerDown','MSPointerMove','MSPointerUp','MSPointerCancel');a.mousePointerType=4}else {if(i){d.push('touchstart','touchmove','touchend','touchcancel')}}}if(!d.length||i&&Ext.isWebKit&&Ext.os.is.Desktop){d.push('mousedown','mousemove','mouseup')}a.initConfig(l);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(c,d){var a=c.priority,b=d.priority;return a>b?1:a<b?-1:0})},registerRecognizer:function(b){var a=this,d=b.handledEvents,e=d.length,c;b.setOnRecognized(a.onRecognized);b.setCallbackScope(a);for(c=0;c<e;c++){a.handledEvents.push(d[c])}a.registerEvents(d);a.recognizers.push(b)},onRecognized:function(g,c,a){var j=this,b=c.changedTouches,i=b.length,e,f,d,h;a=a||{};a.type=g;a.target=b[0].target;a.isStopped=!1;c=c.chain(a);if(i>1){e=[];for(d=0;d<i;d++){h=b[d];e.push(h.targets)}f=j.getCommonTargets(e)}else {f=b[0].targets}j.publish(g,f,c)},getCommonTargets:function(e){var d=e[0],h=e.length;if(h===1){return d}var a=[],g=1,b,f,c;while(!0){b=d[d.length-g];if(!b){return a}for(c=1;c<h;c++){f=e[c];if(f[f.length-g]!==b){return a}}a.unshift(b);g++}return a},invokeRecognizers:function(d,f){var c=this.recognizers,e=c.length,a,b;if(d==='onStart'){for(a=0;a<e;a++){c[a].isActive=!0}}for(a=0;a<e;a++){b=c[a];if(b.isActive&&b[d].call(b,f)===!1){b.isActive=!1}}},updateTouches:function(i,p){var h=this,m=i.browserEvent,n=m.changedTouches||[m],f=h.activeTouches,e=h.activeTouchesMap,l=[],b,c,a,g,d,o,j,k;for(d=0,o=n.length;d<o;d++){b=n[d];if('identifier' in b){c=b.identifier}else {if('pointerId' in b){c=b.pointerId}else {c=1}}a=e[c];if(!a){g=Ext.event.Event.resolveTextNode(b.target);a=e[c]={identifier:c,target:g,targets:h.getPropagatingTargets(g)};f.push(a)}if(p){delete e[c];Ext.Array.remove(f,a)}j=b.pageX;k=b.pageY;a.pageX=j;a.pageY=k;a.point=new Ext.util.Point(j,k);l.push(a)}i.touches=Ext.Array.clone(f);i.changedTouches=l},doDelegatedEvent:function(a){var b=this;a=Ext.event.publisher.Dom.prototype.doDelegatedEvent.call(this,a,!1);if(a){if(!a.button||a.button<1){b.handlers[a.type].call(b,a)}b.afterEvent(a)}},onTouchStart:function(b){var a=this,c=b.target;if(b.browserEvent.type==='touchstart'){c.addEventListener('touchmove',a.onTargetTouchMove);c.addEventListener('touchend',a.onTargetTouchEnd);c.addEventListener('touchcancel',a.onTargetTouchEnd)}a.updateTouches(b);if(!a.isStarted){a.isStarted=!0;a.invokeRecognizers('onStart',b);if(Ext.enableGarbageCollector){Ext.dom.GarbageCollector.pause()}}a.invokeRecognizers('onTouchStart',b)},onTouchMove:function(a){var b=this,c=b.mousePointerType;if(b.isStarted){if(c&&a.browserEvent.pointerType===c&&a.buttons===0){a.type=Ext.dom.Element.prototype.eventMap.touchend;a.button=0;b.onTouchEnd(a);return}b.updateTouches(a);if(a.changedTouches.length>0){b.invokeRecognizers('onTouchMove',a)}}},onTouchEnd:function(b){var a=this;if(!a.isStarted){return}a.updateTouches(b,!0);a.invokeRecognizers(a.isCancelEvent[b.type]?'onTouchCancel':'onTouchEnd',b);if(!a.activeTouches.length){a.isStarted=!1;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 b=this,a=c.target;a.removeEventListener('touchmove',b.onTargetTouchMove);a.removeEventListener('touchend',b.onTargetTouchEnd);a.removeEventListener('touchcancel',b.onTargetTouchEnd);if(!Ext.getBody().contains(a)){b.onTouchEnd(new Ext.event.Event(c))}},updateAsync:function(a){this.handlers=a?this._asyncHandlers:this._handlers},reset:function(){var a=this,d=a.recognizers,e=d.length,b,c;a.activeTouchesMap={};a.activeTouches=[];a.changedTouches=[];a.isStarted=!1;for(b=0;b<e;b++){c=d[b];c.reset();c.isActive=!1}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(a,d){var b=a.browserEvent,c=a.getXY();b.pageX=c[0];b.pageY=c[1];this.callParent([a,d])},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(a,c){var d=this,b;a=Ext.event.publisher.Dom.prototype.doDelegatedEvent.call(this,a,!1);if(a){if(a.type==='focusout'){if(a.relatedTarget==null){d.processFocusIn(a,a.target,document.body,c)}}else {b=a.relatedTarget;d.processFocusIn(a,b==null||!b.tagName?document.body:b,a.target,c)}}},processFocusIn:function(g,d,e,i){var f=this,h=Ext.Element.getCommonAncestor(e,d,!0),a,c=[],b;for(a=d;a&&a!==h;a=a.parentNode){c.push(a)}if(c.length){b=f.createSyntheticEvent('focusleave',g,d,e);f.publish('focusleave',c,b);c.length=0;if(b.isStopped){return}}for(a=e;a!==h;a=a.parentNode){c.push(a)}b=f.createSyntheticEvent('focusenter',g,e,d);f.publish('focusenter',c,b);if(b.isStopped){return}if(i){f.afterEvent(g)}Ext.GlobalEvents.fireEvent('focus',{event:b,toElement:e,fromElement:d})},createSyntheticEvent:function(d,c,e,b){var a=new Ext.event.Event(c);a.type=d;a.relatedTarget=b;a.target=e;return a}},0,0,0,0,0,0,[Ext.event.publisher,'Focus'],function(a){var b;if(!Ext.supports.FocusinFocusoutEvents){this.override({handledDomEvents:['focus','blur'],doDelegatedEvent:function(c,e){var d=this;c=d.callSuper([c,!1]);if(c){clearTimeout(b);b=0;if(c.type==='blur'){var f=c.target===window?document.body:c.target;b=setTimeout(function(){b=0;d.processFocusIn(c,f,document.body,e);a.previousActiveElement=null},0);if(c.target===window||c.target===document){a.previousActiveElement=null}else {a.previousActiveElement=c.target}}else {d.processFocusIn(c,a.previousActiveElement||document.body,c.target===window?document.body:c.target,e)}}}})}a.instance=new a()});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(),!0));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 d=this.referenceAttributeName,e,c,b,g,a,f;e=this.elementTemplate.cloneNode(!0);c=e.querySelectorAll(this.referenceSelector);for(b=0,g=c.length;b<g;b++){a=c[b];f=a.getAttribute(d);a.removeAttribute(d);this.linkElement(f,a)}}},0,0,0,0,0,0,[Ext.mixin,'Templatable'],0);Ext.cmd.derive('Ext.TaskQueue',Ext.Base,{singleton:!0,pending:!1,mode:!0,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,a,b){this.request(!0);this.readQueue.push(arguments)},requestWrite:function(c,a,b){this.request(!1);this.writeQueue.push(arguments)},request:function(a){if(!this.pending){this.pendingTime=Date.now();this.pending=!0;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=!1;var i=this.readQueue,h=this.writeQueue,c=null,d;if(this.mode){d=i;if(h.length>0){c=!1}}else {d=h;if(i.length>0){c=!0}}var g=d.slice(),f,j,b,a,e;d.length=0;for(f=0,j=g.length;f<j;f++){b=g[f];a=b[0];e=b[1];if(typeof a==='string'){a=e[a]}if(b.length>2){a.apply(e,b[2])}else {a.call(e)}}g.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(!0)},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 b=this.getElement();if(!b||b.isDestroyed){return !1}var h=b.getWidth(),g=b.getHeight(),d=this.getContentWidth(),c=this.getContentHeight(),j=this.contentWidth,i=this.contentHeight,a=this.info,f=!1,e;this.width=h;this.height=g;this.contentWidth=d;this.contentHeight=c;e=(j!==d?1:0)+(i!==c?2:0);if(e>0){a.width=h;a.height=g;a.contentWidth=d;a.contentHeight=c;a.flag=e;f=!0;this.getCallback().apply(this.getScope(),this.getArgs())}return f},refresh:function(a){if(this.refreshSize()||a){Ext.TaskQueue.requestWrite('refreshMonitors',this)}},destroy:function(){var a=this.getElement();this.bindListeners(!1);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,!0);this.shrinkMonitor[a]('scroll',this.onScroll,!0)},forceRefresh:function(){Ext.TaskQueue.requestRead('refresh',this,[!0])},onScroll:function(){Ext.TaskQueue.requestRead('refresh',this)},refreshMonitors:function(){var a=this.expandMonitor,b=this.shrinkMonitor,c=1000000;if(a&&!a.isDestroyed){a.scrollLeft=c;a.scrollTop=c}if(b&&!b.isDestroyed){b.scrollLeft=c;b.scrollTop=c}}},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,!0);this.shrinkMonitor[a](Ext.browser.is.Firefox?'overflow':'overflowchanged',this.onShrink,!0)},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 b=this.expandHelper,c=this.shrinkHelper,d=this.getContentBounds(),f=d.width,e=d.height,a;if(b&&!b.isDestroyed){a=b.style;a.width=f+1+'px';a.height=e+1+'px'}if(c&&!c.isDestroyed){a=c.style;a.width=f+'px';a.height=e+'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(b){var a=Ext.util.sizemonitor;if(Ext.browser.is.Firefox){return new a.OverflowChange(b)}else {if(Ext.browser.is.WebKit){if(!Ext.browser.is.Silk&&Ext.browser.engineVersion.gtEq('535')){return new a.OverflowChange(b)}else {return new a.Scroll(b)}}else {if(Ext.browser.is.IE11){return new a.Scroll(b)}else {return new a.Default(b)}}}}},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 a=b.id,c=this.subscribers,d=this.monitors;if(c[a]){++c[a]}else {c[a]=1;d[a]=new Ext.util.SizeMonitor({element:b,callback:this.onElementResize,scope:this,args:[b]})}b.on('painted','forceRefresh',d[a]);return !0},unsubscribe:function(e){var a=e.id,c=this.subscribers,d=this.monitors,b;if(c[a]&&!--c[a]){delete c[a];b=d[a];e.un('painted','forceRefresh',b);b.destroy();delete d[a]}},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,!0)},applyElement:function(a){if(a){return Ext.get(a)}},updateElement:function(a){this.monitorElement=Ext.Element.create({classList:['x-paint-monitor',this.monitorClass]},!0);a.appendChild(this.monitorElement);a.addCls('x-paint-monitored');this.bindListeners(!0)},onElementPainted:function(){},destroy:function(){var b=this.monitorElement,c=b.parentNode,a=this.getElement();this.bindListeners(!1);delete this.monitorElement;if(a&&!a.isDestroyed){a.removeCls('x-paint-monitored');delete this._element}if(c){c.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(c){var a=c.id,b=this.subscribers;if(b[a]){++b[a]}else {b[a]=1;this.monitors[a]=new Ext.util.PaintMonitor({element:c,callback:this.onElementPainted,scope:this,args:[c]})}},unsubscribe:function(d){var a=d.id,b=this.subscribers,c=this.monitors;if(b[a]&&!--b[a]){delete b[a];c[a].destroy();delete c[a]}},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(a){var h=window,b=document,C='ext-window',B='ext-document',u='width',v='height',O='min-width',L='min-height',N='max-width',K='max-height',_='top',Y='right',U='bottom',$='left',M='visibility',V='hidden',R='display',D='none',X='z-index',s='position',P='relative',W='static',i='-',T=/\w/g,j=/\s+/,F=/[\s]+/,I=/^(?:transparent|(?:rgba[(](?:\s*\d+\s*[,]){3}\s*0\s*[)]))$/i,E=/table-row|table-.*-group/,Z=/top/i,d={t:'border-top-width',r:'border-right-width',b:'border-bottom-width',l:'border-left-width'},f={t:'padding-top',r:'padding-right',b:'padding-bottom',l:'padding-left'},t={t:'margin-top',r:'margin-right',b:'margin-bottom',l:'margin-left'},J=[f.l,f.r,f.t,f.b],z=[d.l,d.r,d.t,d.b],Q=/\d+$/,w=/\d+(px|em|%|en|ex|pt|in|cm|mm|pc)$/i,A='px',S=/(-[a-z])/gi,x=/([a-z0-9\-]+)\s*:\s*([^;\s]+(?:\s*[^;\s]+)*);?/gi,p=/^\d+(?:\.\d*)?px$/i,y={},H=function(c,b){return b.charAt(1).toUpperCase()},q='x-hidden-visibility',l='x-hidden-display',r='x-hidden-offsets',n='x-sized',m='x-unsized',k='x-stretched',G='x-no-touch-scroll',g={style:'style',className:'className',cls:'cls',classList:'classList',text:'text',hidden:'hidden',html:'html',children:'children'},o,c,e;return {alternateClassName:['Ext.Element'],observableType:'element',isElement:!0,skipGarbageCollection:!0,identifiablePrefix:'ext-element-',styleHooks:{},validIdRe:Ext.validIdRe,blockedEvents:Ext.supports.EmulatedMouseOver?{mouseover:1}:{},longpressEvents:{longpress:1,taphold:1},constructor:function(d){var c=this,e;if(typeof d==='string'){d=b.getElementById(d)}if(!d){return null}c.dom=d;e=d.id;if(e){c.id=e}else {e=d.id=c.getUniqueId()}c.el=c;Ext.cache[e]=c;c.mixins.observable.constructor.call(c)},inheritableStatics:{cache:Ext.cache={},VISIBILITY:1,DISPLAY:2,OFFSETS:3,unitRe:w,useDelegatedEvents:!0,validNodeTypes:{1:1,9:1},addUnits:function(b,c){if(typeof b==='number'){return b+(c||A)}if(b===''||b==='auto'||b==null){return b||''}if(Q.test(b)){return b+(c||A)}if(!w.test(b)){return b||''}return b},create:function(c,k){var p=this,n=g.hidden,e,m,j,d,h,f,o,i;if(!c){c={}}if(c.isElement){return k?c.dom:c}else {if('nodeType' in c){return k?c:Ext.get(c)}}if(typeof c==='string'){return b.createTextNode(c)}j=c.tag;if(!j){j='div'}if(c.namespace){e=b.createElementNS(c.namespace,j)}else {e=b.createElement(j)}m=e.style;if(c[n]){i=c.className;i=i==null?'':i+' ';c.className=i+l;delete c[n]}for(h in c){if(h!=='tag'){d=c[h];switch(h){case g.style:if(typeof d==='string'){e.setAttribute(h,d)}else {for(f in d){if(d.hasOwnProperty(f)){m[f]=d[f]}}};break;case g.className:case g.cls:e.className=d;break;case g.classList:e.className=d.join(' ');break;case g.text:e.textContent=d;break;case g.html:e.innerHTML=d;break;case g.children:for(f=0,o=d.length;f<o;f++){e.appendChild(p.create(d[f],!0))};break;default:if(d!=null){e.setAttribute(h,d)};}}}if(k){return e}else {return p.get(e)}},detach:function(){var b=this.dom;if(b&&b.parentNode&&b.tagName!=='BODY'){b.parentNode.removeChild(b)}return this},fly:function(c,b){return Ext.fly(c,b)},fromPoint:function(c,d){return Ext.get(b.elementFromPoint(c,d))},get:function(c){var m=this,g=Ext.cache,f,j,e,d,l,i,k;if(!c){return null}if(c.isFly){c=c.dom}if(typeof c==='string'){e=c;if(g.hasOwnProperty(e)){d=g[e];if(d.skipGarbageCollection||!Ext.isGarbage(d.dom)){return d}else {d.destroy()}}if(e===C){return a.get(h)}else {if(e===B){return a.get(b)}}j=Ext.getElementById?Ext.getElementById(e):b.getElementById(e);if(j){return new a(j)}}f=c.nodeType;if(f){l=f===9;k=m.validNodeTypes[f]}else {i=c.window==c}if(k||i){e=c.id;if(g.hasOwnProperty(e)){d=g[e];if(d.skipGarbageCollection||c===d.dom||!Ext.isGarbage(d.dom)){return d}else {d.destroy()}}if(c===b){c.id=B}if(c==h){c.id=C}c=new a(c);if(i||l){c.skipGarbageCollection=!0}return c}if(c.isElement){return c}if(c.isComposite){return c}if(Ext.isIterable(c)){return m.select(c)}return null},getActiveElement:function(){var c=b.activeElement;if(!c||!c.focus){c=b.body}return c},getDocumentHeight:function(){return Math.max(!Ext.isStrict?b.body.scrollHeight:b.documentElement.scrollHeight,this.getViewportHeight())},getDocumentWidth:function(){return Math.max(!Ext.isStrict?b.body.scrollWidth:b.documentElement.scrollWidth,this.getViewportWidth())},getOrientation:function(){if(Ext.supports.OrientationChange){return h.orientation==0?'portrait':'landscape'}return h.innerHeight>h.innerWidth?'portrait':'landscape'},getViewportHeight:function(){return h.innerHeight},getViewportWidth:function(){return h.innerWidth},getViewSize:function(){return {width:a.getViewportWidth(),height:a.getViewportHeight()}},normalize:function(b){return y[b]||(y[b]=b.replace(S,H))},parseBox:function(c){c=c||0;var e=typeof c,b,d;if(e==='number'){return {top:c,right:c,bottom:c,left:c}}else {if(e!=='string'){return c}}b=c.split(' ');d=b.length;if(d===1){b[1]=b[2]=b[3]=b[0]}else {if(d===2){b[2]=b[0];b[3]=b[1]}else {if(d===3){b[3]=b[1]}}}return {top:parseFloat(b[0])||0,right:parseFloat(b[1])||0,bottom:parseFloat(b[2])||0,left:parseFloat(b[3])||0}},parseStyles:function(c){var d={},b;if(c){x.lastIndex=0;while(b=x.exec(c)){d[b[1]]=b[2]||''}}return d},select:function(d,c,e){return Ext.fly(e||b).select(d,c)},query:function(c,d,e){return Ext.fly(e||b).query(c,d)},unitizeBox:function(b,d){var c=this;b=c.parseBox(b);return c.addUnits(b.top,d)+' '+c.addUnits(b.right,d)+' '+c.addUnits(b.bottom,d)+' '+c.addUnits(b.left,d)},serializeForm:function(l){var m=l.elements||(b.forms[l]||Ext.getDom(l)).elements,n=!1,f=encodeURIComponent,g='',q=m.length,c,h,d,k,o,i,j,p,e;for(i=0;i<q;i++){c=m[i];h=c.name;d=c.type;k=c.options;if(!c.disabled&&h){if(/select-(one|multiple)/i.test(d)){p=k.length;for(j=0;j<p;j++){e=k[j];if(e.selected){o=e.hasAttribute('value');g+=Ext.String.format('{0}={1}&',f(h),f(o?e.value:e.text))}}}else {if(!/file|undefined|reset|button/i.test(d)){if(!(/radio|checkbox/i.test(d)&&!c.checked)&&!(d=='submit'&&n)){g+=f(h)+'='+f(c.value)+'&';n=/submit/i.test(d)}}}}}return g.substr(0,g.length-1)},getCommonAncestor:function(c,d,b){e=e||new Ext.dom.Fly();e.attach(Ext.getDom(c));while(!e.isAncestor(d)){if(e.dom.parentNode){e.attach(e.dom.parentNode)}else {e.attach(document.body);break}}return b?e.dom:Ext.get(e)}},addCls:function(c,e,f){var d=this,h=d.getData(),m,n,l,k,g,o,b;if(!c){return d}if(!h.isSynchronized){d.synchronize()}n=d.dom;l=h.classMap;k=h.classList;e=e?e+i:'';f=f?i+f:'';if(typeof c==='string'){c=c.split(j)}for(g=0,o=c.length;g<o;g++){b=c[g];if(b){b=e+b+f;if(!l[b]){l[b]=!0;k.push(b);m=!0}}}if(m){n.className=k.join(' ')}return d},addStyles:function(i,h){var g=0,d=(i||'').match(T),b,f=d.length,e,c=[];if(f===1){g=Math.abs(parseFloat(this.getStyle(h[d[0]]))||0)}else {if(f){for(b=0;b<f;b++){e=d[b];c.push(h[e])}c=this.getStyle(c);for(b=0;b<f;b++){e=d[b];g+=parseFloat(c[h[e]])||0}}}return g},addUnits:function(c,b){return a.addUnits(c,b)},adjustDirect2DDimension:function(e){var g=this,b=g.dom,c=g.getStyle('display'),i=b.style.display,h=b.style.position,j=e===u?0:1,d=b.currentStyle,f;if(c==='inline'){b.style.display='inline-block'}b.style.position=c.match(E)?'absolute':'static';f=(parseFloat(d[e])||parseFloat(d.msTransformOrigin.split(' ')[j])*2)%1;b.style.position=h;if(c==='inline'){b.style.display=i}return f},animate:function(b){b=new Ext.fx.Animation(b);b.setElement(this);this._activeAnimation=b;b.on({animationend:this._onAnimationEnd});Ext.Animator.run(b)},_onAnimationEnd:function(){this._activeAnimation=null},getActiveAnimation:function(){return this._activeAnimation},append:function(){this.appendChild.apply(this,arguments)},appendChild:function(b,d){var f=this,c,g,e;if(b.nodeType||b.dom||typeof b==='string'){b=Ext.getDom(b);f.dom.appendChild(b);return !d?Ext.get(b):b}else {if(b.length){c=Ext.fly(document.createDocumentFragment());g=b.length;for(e=0;e<g;e++){c.appendChild(b[e],d)}f.dom.appendChild(c.dom);return d?c.dom:c}else {return f.createChild(b,null,d)}}},appendTo:function(b){Ext.getDom(b).appendChild(this.dom);return this},applyStyles:function(b){if(b){if(typeof b==='function'){b=b.call()}if(typeof b==='string'){b=a.parseStyles(b)}if(typeof b==='object'){this.setStyle(b)}}return this},blur:function(){var d=this,c=d.dom;if(c!==b.body){try{c.blur()}catch(aa){}return d}else {return d.focus(undefined,c)}},cacheScrollValues:function(){var i=this,g=[],e=[],f,b,d,h;c=c||new Ext.dom.Fly();f=i.query('*');for(d=0,h=f.length;d<h;d++){b=f[d];if(b.scrollTop>0||b.scrollLeft!==0){e.push(b);g.push(c.attach(b).getScroll())}}return function(){var d,b,f;for(b=0,f=e.length;b<f;b++){d=g[b];c.attach(e[b]);c.setScrollLeft(d.left);c.setScrollTop(d.top)}}},center:function(c){return this.alignTo(c||b,'c-c')},child:function(d,c){var b=this,e=Ext.get(b).id;return b.selectNode(Ext.makeIdSelector(e)+' > '+d,!!c)},constrainScrollLeft:function(c){var b=this.dom;return Math.max(Math.min(c,b.scrollWidth-b.clientWidth),0)},constrainScrollTop:function(c){var b=this.dom;return Math.max(Math.min(c,b.scrollHeight-b.clientHeight),0)},createChild:function(b,c,d){b=b||{tag:'div'};if(c){return Ext.DomHelper.insertBefore(c,b,d!==!0)}else {return Ext.DomHelper.append(this.dom,b,d!==!0)}},contains:function(b){if(!b){return !1}var d=this,c=Ext.getDom(b);return c===d.dom||d.isAncestor(c)},destroy:function(){var c=this,b=c.dom;if(b&&b.parentNode){b.parentNode.removeChild(b)}c.collect()},detach:function(){var b=this.dom;if(b&&b.parentNode&&b.tagName!=='BODY'){b.parentNode.removeChild(b)}return this},disableShadow:function(){var b=this.shadow;if(b){b.hide();b.disabled=!0}},disableShim:function(){var b=this.shim;if(b){b.hide();b.disabled=!0}},disableTouchContextMenu:function(){this._contextMenuListenerRemover=this.on({MSHoldVisual:function(b){b.preventDefault()},destroyable:!0,delegated:!1})},disableTouchScroll:function(){this.addCls(G);this.on({touchmove:function(b){b.preventDefault()},translate:!1})},doReplaceWith:function(c){var b=this.dom;b.parentNode.replaceChild(Ext.getDom(c),b)},doScrollIntoView:function(b,o,d,m,l,n){c=c||new Ext.dom.Fly();var e=this,k=e.dom,i=c.attach(b)[l](),j=b.scrollTop,h=e.getScrollIntoViewXY(b,i,j),f=h.x,g=h.y;if(m){if(d){d=Ext.apply({listeners:{afteranimate:function(){c.attach(k).highlight()}}},d)}else {c.attach(k).highlight()}}if(g!==j){c.attach(b).scrollTo('top',g,d)}if(o!==!1&&f!==i){c.attach(b)[n]('left',f,d)}return e},down:function(c,b){return this.selectNode(c,!!b)},enableShadow:function(f,e){var c=this,b=c.shadow||(c.shadow=new Ext.dom.Shadow(Ext.apply({target:c},f))),d=c.shim;if(d){d.offsets=b.outerOffsets;d.shadow=b;b.shim=d}if(e===!0||e!==!1&&c.isVisible()){b.show()}else {b.hide()}b.disabled=!1},enableShim:function(f,e){var c=this,b=c.shim||(c.shim=new Ext.dom.Shim(Ext.apply({target:c},f))),d=c.shadow;if(d){b.offsets=d.outerOffsets;b.shadow=d;d.shim=b}if(e===!0||e!==!1&&c.isVisible()){b.show()}else {b.hide()}b.disabled=!1},findParent:function(g,d,h){var i=this,c=i.dom,e=b.documentElement,f=0;if(d||d===0){if(typeof d!=='number'){e=Ext.getDom(d);d=Number.MAX_VALUE}}else {d=50}while(c&&c.nodeType===1&&f<d&&c!==e){if(Ext.fly(c).is(g)){return h?Ext.get(c):c}f++;c=c.parentNode}return null},findParentNode:function(c,e,d){var b=Ext.fly(this.dom.parentNode);return b?b.findParent(c,e,d):null},first:function(c,b){return this.matchNode('nextSibling','firstChild',c,b)},focus:function(d,b){var c=this;b=b||c.dom;try{if(Number(d)){Ext.defer(c.focus,d,c,[null,b])}else {Ext.GlobalEvents.fireEvent('beforefocus',b);b.focus()}}catch(aa){}return c},collect:function(){var b=this,e=b.dom,c=b.shadow,d=b.shim;if(!b.isFly){b.mixins.observable.destroy.call(b);delete Ext.cache[b.id];b.isDestroyed=!0;b.el=null}if(e){e._extData=b.dom=null}if(c){c.hide();b.shadow=null}if(d){d.hide();b.shim=null}},getAnchorToXY:function(e,b,d,c){return e.getAnchorXY(b,d,c)},getAttribute:function(b,d){var c=this.dom;return d?c.getAttributeNS(d,b)||c.getAttribute(d+':'+b):c.getAttribute(b)||c[b]||null},getAttributes:function(){var d=this.dom.attributes,e={},c,b,f;for(b=0,f=d.length;b<f;b++){c=d[b];e[c.name]=c.value}return e},getBottom:function(b){return (b?this.getLocalY():this.getY())+this.getHeight()},getById:function(d,e){var c=b.getElementById(d)||this.dom.querySelector(Ext.makeIdSelector(d));return e?c:c?Ext.get(c):null},getBorderPadding:function(){var c=this.getStyle(J),b=this.getStyle(z);return {beforeX:(parseFloat(b[d.l])||0)+(parseFloat(c[f.l])||0),afterX:(parseFloat(b[d.r])||0)+(parseFloat(c[f.r])||0),beforeY:(parseFloat(b[d.t])||0)+(parseFloat(c[f.t])||0),afterY:(parseFloat(b[d.b])||0)+(parseFloat(c[f.b])||0)}},getBorders:function(){var b=this.getStyle(z);return {beforeX:parseFloat(b[d.l])||0,afterX:parseFloat(b[d.r])||0,beforeY:parseFloat(b[d.t])||0,afterY:parseFloat(b[d.b])||0}},getBorderWidth:function(b){return this.addStyles(b,d)},getData:function(d){var c=this.dom,b;if(c){b=c._extData;if(!b&&!d){c._extData=b={}}}return b},getFirstChild:function(){return Ext.get(this.dom.firstElementChild)},getHeight:function(e,f){var c=this,g=c.isStyle('display','none'),b,d;if(g){return 0}b=c.dom.offsetHeight;if(Ext.supports.Direct2DBug){d=c.adjustDirect2DDimension(v);if(f){b+=d}else {if(d>0&&d<0.5){b++}}}if(e){b-=c.getBorderWidth('tb')+c.getPadding('tb')}return b<0?0:b},getHtml:function(){return this.dom?this.dom.innerHTML:''},getLeft:function(b){return b?this.getLocalX():this.getX()},getLocalX:function(){var d=this,c,b=d.getStyle('left');if(!b||b==='auto'){b=0}else {if(p.test(b)){b=parseFloat(b)}else {b=d.getX();c=d.dom.offsetParent;if(c){b-=Ext.fly(c).getX()}}}return b},getLocalXY:function(){var e=this,d,f=e.getStyle(['left','top']),b=f.left,c=f.top;if(!b||b==='auto'){b=0}else {if(p.test(b)){b=parseFloat(b)}else {b=e.getX();d=e.dom.offsetParent;if(d){b-=Ext.fly(d).getX()}}}if(!c||c==='auto'){c=0}else {if(p.test(c)){c=parseFloat(c)}else {c=e.getY();d=e.dom.offsetParent;if(d){c-=Ext.fly(d).getY()}}}return [b,c]},getLocalY:function(){var d=this,c,b=d.getStyle('top');if(!b||b==='auto'){b=0}else {if(p.test(b)){b=parseFloat(b)}else {b=d.getY();c=d.dom.offsetParent;if(c){b-=Ext.fly(c).getY()}}}return b},getMargin:function(){var c={t:'top',l:'left',r:'right',b:'bottom'},b=['margin-top','margin-left','margin-right','margin-bottom'];return function(g){var h=this,e,f,d;if(!g){e=h.getStyle(b);d={};if(e&&typeof e==='object'){d={};for(f in t){d[f]=d[c[f]]=parseFloat(e[t[f]])||0}}}else {d=h.addStyles(g,t)}return d}}(),getPadding:function(b){return this.addStyles(b,f)},getParent:function(){return Ext.get(this.dom.parentNode)},getRight:function(b){return (b?this.getLocalX():this.getX())+this.getWidth()},getScroll:function(){var h=this,d=h.dom,g=b.documentElement,e,f,c=document.body;if(d===b||d===c){e=g.scrollLeft||(c?c.scrollLeft:0);f=g.scrollTop||(c?c.scrollTop:0)}else {e=d.scrollLeft;f=d.scrollTop}return {left:e,top:f}},getScrollIntoViewXY:function(r,b,c){var p=this.dom,h=Ext.getDom(r),j=this.getOffsetsTo(h),o=p.offsetWidth,m=p.offsetHeight,f=j[0]+b,g=j[1]+c,l=g+m,n=f+o,d=h.clientHeight,e=h.clientWidth,i=b,k=c,q=k+d,s=i+e;if(m>d||g<k){c=g}else {if(l>q){c=l-d}}if(o>e||f<i){b=f}else {if(n>s){b=n-e}}return {x:b,y:c}},getScrollLeft:function(){var c=this.dom;if(c===b||c===document.body){return this.getScroll().left}else {return c.scrollLeft}},getScrollTop:function(){var c=this.dom;if(c===b||c===document.body){return this.getScroll().top}else {return c.scrollTop}},getSize:function(b){return {width:this.getWidth(b),height:this.getHeight(b)}},getStyle:function(n,i){var k=this,e=k.dom,m=typeof n!=='string',p=k.styleHooks,b=n,j=b,q=1,h,o,f,d,g,c,l;if(m){f={};b=j[0];l=0;if(!(q=j.length)){return f}}if(!e||e.documentElement){return f||''}h=e.style;if(i){c=h}else {c=e.ownerDocument.defaultView.getComputedStyle(e,null);if(!c){i=!0;c=h}}do{d=p[b];if(!d){p[b]=d={name:a.normalize(b)}}if(d.get){g=d.get(e,k,i,c)}else {o=d.name;g=c[o]}if(!m){return g}f[b]=g;b=j[++l]}while(l<q);return f},getStyleValue:function(b){return this.dom.style.getPropertyValue(b)},getTop:function(b){return b?this.getLocalY():this.getY()},getValue:function(c){var b=this.dom.value;return c?parseInt(b,10):b},getViewSize:function(){var c=this.dom;if(c===b||c===b.body){return {width:a.getViewportWidth(),height:a.getViewportHeight()}}else {return {width:c.clientWidth,height:c.clientHeight}}},getVisibilityMode:function(){var d=this,c=d.getData(),b=c.visibilityMode;if(b===undefined){c.visibilityMode=b=a.DISPLAY}return b},getWidth:function(h,f){var c=this,g=c.dom,i=c.isStyle('display','none'),d,b,e;if(i){return 0}if(Ext.supports.BoundingClientRect){d=g.getBoundingClientRect();b=c.vertical&&!Ext.supports.RotatedBoundingClientRect?d.bottom-d.top:d.right-d.left;b=f?b:Math.ceil(b)}else {b=g.offsetWidth}if(Ext.supports.Direct2DBug&&!c.vertical){e=c.adjustDirect2DDimension(u);if(f){b+=e}else {if(e>0&&e<0.5){b++}}}if(h){b-=c.getBorderWidth('lr')+c.getPadding('lr')}return b<0?0:b},getX:function(){return this.getXY()[0]},getXY:function(){var h=Math.round,e=this.dom,f=0,g=0,c,d;if(e!==b&&e!==b.body){try{c=e.getBoundingClientRect()}catch(aa){c={left:0,top:0}}f=h(c.left);g=h(c.top);d=Ext.getDoc().getScroll();f+=d.left;g+=d.top}return [f,g]},getY:function(){return this.getXY()[1]},getZIndex:function(){return parseInt(this.getStyle('z-index'),10)},hasCls:function(c){var b=this.getData();if(!b.isSynchronized){this.synchronize()}return b.classMap.hasOwnProperty(c)},hide:function(){this.setVisible(!1);return this},insertAfter:function(b){b=Ext.getDom(b);b.parentNode.insertBefore(this.dom,b.nextSibling);return this},insertBefore:function(b){b=Ext.getDom(b);b.parentNode.insertBefore(this.dom,b);return this},insertFirst:function(b,c){b=b||{};if(b.nodeType||b.dom||typeof b==='string'){b=Ext.getDom(b);this.dom.insertBefore(b,this.dom.firstChild);return !c?Ext.get(b):b}else {return this.createChild(b,this.dom.firstChild,c)}},insertHtml:function(d,e,c){var b=Ext.DomHelper.insertHtml(d,this.dom,e);return c?Ext.get(b):b},insertSibling:function(b,k,f){var d=this,j=Ext.DomHelper,h=(k||'before').toLowerCase()==='after',c,g,i,e;if(Ext.isIterable(b)){i=b.length;g=Ext.fly(document.createDocumentFragment());if(Ext.isArray(b)){for(e=0;e<i;e++){c=g.appendChild(b[e],f)}}else {for(e=0;e<i;e++){g.dom.appendChild(c=b[0])}if(f===!1){c=Ext.get(c)}}d.dom.parentNode.insertBefore(g.dom,h?d.dom.nextSibling:d.dom);return c}b=b||{};if(b.nodeType||b.dom){c=d.dom.parentNode.insertBefore(Ext.getDom(b),h?d.dom.nextSibling:d.dom);if(!f){c=Ext.get(c)}}else {if(h&&!d.dom.nextSibling){c=j.append(d.dom.parentNode,b,!f)}else {c=j[h?'insertAfter':'insertBefore'](d.dom,b,!f)}}return c},is:function(c){var d=this.dom,b;if(!c){b=!0}else {if(!d.tagName){b=!1}else {if(Ext.isFunction(c)){b=c(d)}else {b=d[Ext.supports.matchesSelector](c)}}}return b},isAncestor:function(e){var d=!1,c=this.dom,b=Ext.getDom(e);if(c&&b){if(c.contains){return c.contains(b)}else {if(c.compareDocumentPosition){return !!(c.compareDocumentPosition(b)&16)}else {while(b=b.parentNode){d=b===c||d}}}}return d},isPainted:function(){return !Ext.browser.is.IE?function(){var b=this.dom;return Boolean(b&&b.offsetParent)}:function(){var b=this.dom;return Boolean(b&&(b.offsetHeight!==0&&b.offsetWidth!==0))}}(),isStyle:function(b,c){return this.getStyle(b)===c},isVisible:function(d){var b=this.dom,c;if(!b){return !1}if(!o){o=new Ext.dom.Fly()}for(c=b.ownerDocument.documentElement;b!==c;b=b.parentNode){if(!b||b.nodeType===11||o.attach(b).isStyle(M,V)||o.isStyle(R,D)){return !1}if(!d){break}}return !0},last:function(c,b){return this.matchNode('previousSibling','lastChild',c,b)},matchNode:function(g,f,c,e){var d=this.dom,b;if(!d){return null}b=d[f];while(b){if(b.nodeType===1&&(!c||Ext.fly(b,'_matchNode').is(c))){return !e?Ext.get(b):b}b=b[g]}return null},next:function(c,b){return this.matchNode('nextSibling','nextSibling',c,b)},parent:function(c,b){return this.matchNode('parentNode','parentNode',c,b)},position:function(c,d,e,f){var b=this;if(b.dom.tagName!=='BODY'){if(!c&&b.isStyle(s,W)){b.setStyle(s,P)}else {if(c){b.setStyle(s,c)}}if(d){b.setStyle(X,d)}if(e||f){b.setXY([e||!1,f||!1])}}},prev:function(c,b){return this.matchNode('previousSibling','previousSibling',c,b)},query:function(b,e,j){var i=this.dom,g,l,k,h,f,c,d;if(!i){return null}e=e!==!1;b=b.split(',');if(!j){g=[]}for(c=0,l=b.length;c<l;c++){if(typeof b[c]==='string'){if(j){h=i.querySelector(b[c]);return e?h:Ext.get(h)}f=i.querySelectorAll(b[c]);for(d=0,k=f.length;d<k;d++){g.push(e?f[d]:Ext.get(f[d]))}}}return g},radioCls:function(b){var e=this.dom.parentNode.childNodes,c;b=Ext.isArray(b)?b:[b];for(var d=0,f=e.length;d<f;d++){c=e[d];if(c&&c.nodeType===1){Ext.fly(c).removeCls(b)}}return this.addCls(b)},redraw:function(){var c=this.dom,b=c.style;b.display='none';c.offsetHeight;b.display=''},remove:function(){this.destroy()},removeChild:function(b){this.dom.removeChild(Ext.getDom(b));return this},removeCls:function(c,e,f){var d=this,h=d.getData(),m,n,l,k,g,o,b;if(!c){return d}if(!h.isSynchronized){d.synchronize()}n=d.dom;l=h.classMap;k=h.classList;e=e?e+i:'';f=f?i+f:'';if(typeof c==='string'){c=c.split(j)}for(g=0,o=c.length;g<o;g++){b=c[g];if(b){b=e+b+f;if(l[b]){delete l[b];Ext.Array.remove(k,b);m=!0}}}if(m){n.className=k.join(' ')}return d},repaint:function(){var b=this;b.addCls('x-repaint');Ext.defer(function(){if(b.dom){Ext.fly(b.dom).removeCls('x-repaint')}},1);return b},replace:function(b,f){b=Ext.getDom(b);var c=b.parentNode,e=b.id,d=this.dom;if(f!==!1&&e&&Ext.cache[e]){c.insertBefore(d,b);Ext.get(b).destroy()}else {c.replaceChild(d,b)}return this},replaceCls:function(c,b,g,f){var k=this,o,h,l,e,m,d,n=k.getData();if(!c&&!b){return k}c=c||[];b=b||[];if(!n.isSynchronized){k.synchronize()}if(!f){f=''}o=k.dom;h=n.classMap;l=n.classList;g=g?g+i:'';f=f?i+f:'';if(typeof c==='string'){c=c.split(j)}if(typeof b==='string'){b=b.split(j)}for(e=0,m=c.length;e<m;e++){d=g+c[e]+f;if(h[d]){delete h[d];Ext.Array.remove(l,d)}}for(e=0,m=b.length;e<m;e++){d=g+b[e]+f;if(!h[d]){h[d]=!0;l.push(d)}}o.className=l.join(' ');return k},replaceWith:function(c){var b=this,e=b.dom,f=e.parentNode,g=Ext.cache,d;b.clearListeners();if(c.nodeType||c.dom||typeof c==='string'){c=Ext.get(c);d=f.insertBefore(c.dom,e)}else {d=Ext.DomHelper.insertBefore(e,c)}f.removeChild(e);b.dom=d;if(!b.isFly){delete g[b.id];g[b.id=Ext.id(d)]=b}return b},resolveListenerScope:function(c){var b=this.component;return b?b.resolveListenerScope(c):this},scroll:function(b,e,j){if(!this.isScrollable()){return !1}b=b.charAt(0);var f=this,i=f.dom,h=b==='r'||b==='l'?'left':'top',g=!1,c,d;if(b==='l'||b==='t'||b==='u'){e=-e}if(h==='left'){c=i.scrollLeft;d=f.constrainScrollLeft(c+e)}else {c=i.scrollTop;d=f.constrainScrollTop(c+e)}if(d!==c){this.scrollTo(h,d,j);g=!0}return g},scrollBy:function(b,c,e){var d=this,f=d.dom;if(b.length){e=c;c=b[1];b=b[0]}else {if(typeof b!='number'){e=c;c=b.y;b=b.x}}if(b){d.scrollTo('left',d.constrainScrollLeft(f.scrollLeft+b),e)}if(c){d.scrollTo('top',d.constrainScrollTop(f.scrollTop+c),e)}return d},scrollChildIntoView:function(c,b){Ext.fly(c).scrollIntoView(this,b)},scrollIntoView:function(b,e,d,c){b=Ext.getDom(b)||Ext.getBody().dom;return this.doScrollIntoView(b,e,d,c,'getScrollLeft','scrollTo')},scrollTo:function(g,e,d){var i=Z.test(g),c=this,f=i?'scrollTop':'scrollLeft',h=c.dom,b;if(!d||!c.anim){h[f]=e}else {b={to:{}};b.to[f]=e;if(Ext.isObject(d)){Ext.applyIf(b,d)}c.animate(b)}return c},select:function(c,e){var d,b;if(typeof c==='string'){b=this.query(c,!e)}else {b=c;d=!0}return e?new Ext.CompositeElement(b,!d):new Ext.CompositeElementLite(b,!0)},selectNode:function(b,c){return this.query(b,c,!0)},set:function(e,g){var f=this,d=f.dom,b,c;for(b in e){if(e.hasOwnProperty(b)){c=e[b];if(b==='style'){f.applyStyles(c)}else {if(b==='cls'){d.className=c}else {if(g!==!1){if(c===undefined){d.removeAttribute(b)}else {d.setAttribute(b,c)}}else {d[b]=c}}}}}return f},setBottom:function(b){this.dom.style[U]=a.addUnits(b);return this},setBorder:function(b){var d=this,c=d.dom.style;if(b||b===0){b=d.self.unitizeBox(b===!0?1:b);c.setProperty('border-width',b,'important')}else {c.removeProperty('border-top-width');c.removeProperty('border-right-width');c.removeProperty('border-bottom-width');c.removeProperty('border-left-width')}},setCls:function(b){var g=this,d=g.getData(),c,h,e,f;if(!d.isSynchronized){g.synchronize()}f=d.classMap;if(typeof b==='string'){b=b.split(j)}for(c=0,h=b.length;c<h;c++){e=b[c];if(!f[e]){f[e]=!0}}d.classList=b.slice();g.dom.className=b.join(' ')},setHeight:function(c){var b=this;b.dom.style[v]=a.addUnits(c);if(b.shadow||b.shim){b.syncUnderlays()}return b},setHtml:function(b){if(this.dom){this.dom.innerHTML=b}},setId:function(c){var b=this,d=b.id,e=Ext.cache;if(d){delete e[d]}b.dom.id=c;b.id=c;e[c]=b;return b},setLeft:function(c){var b=this;b.dom.style[$]=a.addUnits(c);if(b.shadow||b.shim){b.syncUnderlays()}return b},setLocalX:function(d){var b=this,c=b.dom.style;c.right='auto';c.left=d===null?'auto':d+'px';if(b.shadow||b.shim){b.syncUnderlays()}return b},setLocalXY:function(b,e){var d=this,c=d.dom.style;c.right='auto';if(b&&b.length){e=b[1];b=b[0]}if(b===null){c.left='auto'}else {if(b!==undefined){c.left=b+'px'}}if(e===null){c.top='auto'}else {if(e!==undefined){c.top=e+'px'}}if(d.shadow||d.shim){d.syncUnderlays()}return d},setLocalY:function(c){var b=this;b.dom.style.top=c===null?'auto':c+'px';if(b.shadow||b.shim){b.syncUnderlays()}return b},setMargin:function(b){var d=this,c=d.dom.style;if(b||b===0){b=d.self.unitizeBox(b===!0?5:b);c.setProperty('margin',b,'important')}else {c.removeProperty('margin-top');c.removeProperty('margin-right');c.removeProperty('margin-bottom');c.removeProperty('margin-left')}},setMaxHeight:function(b){this.dom.style[K]=a.addUnits(b);return this},setMaxWidth:function(b){this.dom.style[N]=a.addUnits(b);return this},setMinHeight:function(b){this.dom.style[L]=a.addUnits(b);return this},setMinWidth:function(b){this.dom.style[O]=a.addUnits(b);return this},setPadding:function(b){var d=this,c=d.dom.style;if(b||b===0){b=d.self.unitizeBox(b===!0?5:b);c.setProperty('padding',b,'important')}else {c.removeProperty('padding-top');c.removeProperty('padding-right');c.removeProperty('padding-bottom');c.removeProperty('padding-left')}},setRight:function(b){this.dom.style[Y]=a.addUnits(b);return this},setScrollLeft:function(b){this.dom.scrollLeft=b;return this},setScrollTop:function(b){this.dom.scrollTop=b;return this},setSize:function(b,d){var c=this,e=c.dom.style;if(Ext.isObject(b)){d=b.height;b=b.width}e.width=a.addUnits(b);e.height=a.addUnits(d);if(c.shadow||c.shim){c.syncUnderlays()}return c},setSizeState:function(d){var e=this,c,b;if(d===!0){c=n;b=[m,k]}else {if(d===!1){c=m;b=[n,k]}else {if(d===null){c=k;b=[n,m]}else {b=[n,m,k]}}}if(c){e.addCls(c)}e.removeCls(b);return e},setStyle:function(h,c){var e=this,f=e.dom,g=e.styleHooks,i=f.style,d=h,b;if(typeof d==='string'){b=g[d];if(!b){g[d]=b={name:a.normalize(d)}}c=c==null?'':c;if(b.set){b.set(f,c,e)}else {i[b.name]=c}if(b.afterSet){b.afterSet(f,c,e)}}else {for(d in h){if(h.hasOwnProperty(d)){b=g[d];if(!b){g[d]=b={name:a.normalize(d)}}c=h[d];c=c==null?'':c;if(b.set){b.set(f,c,e)}else {i[b.name]=c}if(b.afterSet){b.afterSet(f,c,e)}}}}return e},setText:function(b){this.dom.textContent=b},setTop:function(c){var b=this;b.dom.style[_]=a.addUnits(c);if(b.shadow||b.shim){b.syncUnderlays()}return b},setUnderlaysVisible:function(d){var b=this.shadow,c=this.shim;if(b&&!b.disabled){if(d){b.show()}else {b.hide()}}if(c&&!c.disabled){if(d){c.show()}else {c.hide()}}},setVisibility:function(c){var b=this.dom.style;if(c){b.removeProperty('visibility')}else {b.setProperty('visibility','hidden','important')}},setVisibilityMode:function(b){this.getData().visibilityMode=b;return this},setVisible:function(d){var b=this,e=b.getVisibilityMode(),c=d?'removeCls':'addCls';switch(e){case a.DISPLAY:b.removeCls([q,r]);b[c](l);break;case a.VISIBILITY:b.removeCls([l,r]);b[c](q);break;case a.OFFSETS:b.removeCls([q,l]);b[c](r);break;}if(b.shadow||b.shim){b.setUnderlaysVisible(d)}return b},setWidth:function(c){var b=this;b.dom.style[u]=a.addUnits(c);if(b.shadow||b.shim){b.syncUnderlays()}return b},setX:function(b){return this.setXY([b,!1])},setXY:function(f){var b=this,d=b.translatePoints(f),e=b.dom.style,c;b.position();e.right='auto';for(c in d){if(!isNaN(d[c])){e[c]=d[c]+'px'}}if(b.shadow||b.shim){b.syncUnderlays()}return b},setY:function(b){return this.setXY([!1,b])},setZIndex:function(c){var b=this;if(b.shadow){b.shadow.setZIndex(c)}if(b.shim){b.shim.setZIndex(c)}return b.setStyle('z-index',c)},show:function(){this.setVisible(!0);return this},swapCls:function(h,g,c,b){if(c===undefined){c=!0}var f=this,e=c?h:g,d=c?g:h;if(d){f.removeCls(b?b+'-'+d:d)}if(e){f.addCls(b?b+'-'+e:e)}return f},synchronize:function(){var e=this,i=e.dom,f={},g=i.className,b,c,j,h,d=e.getData();if(g&&g.length>0){b=i.className.split(F);for(c=0,j=b.length;c<j;c++){h=b[c];f[h]=!0}}else {b=[]}d.classList=b;d.classMap=f;d.isSynchronized=!0;return e},syncUnderlays:function(){var b=this,c=b.shadow,d=b.shim,j=b.dom,e,h,i,g,f;if(b.isVisible()){e=b.getXY();h=e[0];i=e[1];g=j.offsetWidth;f=j.offsetHeight;if(c&&!c.hidden){c.realign(h,i,g,f)}if(d&&!d.hidden){d.realign(h,i,g,f)}}},toggleCls:function(b,c){if(typeof c!=='boolean'){c=!this.hasCls(b)}return c?this.addCls(b):this.removeCls(b)},toggle:function(){this.setVisible(!this.isVisible());return this},translate:function(){var c='webkitTransform' in b.createElement('div').style?'webkitTransform':'transform';return function(b,d,e){this.dom.style[c]='translate3d('+(b||0)+'px, '+(d||0)+'px, '+(e||0)+'px)'}}(),unwrap:function(){var e=this.dom,d=e.parentNode,b,c=Ext.fly(Ext.Element.getActiveElement()),f;if(this.contains(c)){Ext.GlobalEvents.suspendEvent('focus');c.suspendEvent('focus','blur');f=!0}if(d){b=d.parentNode;b.insertBefore(e,d);b.removeChild(d)}else {b=document.createDocumentFragment();b.appendChild(e)}if(f){c.focus();Ext.GlobalEvents.resumeEvent('focus');c.resumeEvent('focus','blur')}return this},up:function(b,d,c){return this.findParentNode(b,d,!c)},update:function(b){return this.setHtml(b)},wrap:function(j,e,f){var i=this,h=i.dom,c=Ext.DomHelper.insertBefore(h,j||{tag:'div'},!e),g=c,b=Ext.fly(Ext.Element.getActiveElement()),d;if(f){g=c.selectNode(f,e)}if(i.contains(b)){Ext.GlobalEvents.suspendEvent('focus');b.suspendEvent('focus','blur');d=!0}g.appendChild(h);if(d){b.focus();b.resumeEvent('focus','blur');Ext.GlobalEvents.resumeEvent('focus')}return c},privates:{doAddListener:function(b,l,k,c,j,i,h){var d=this,e,g,f;b=Ext.canonicalEventName(b);if(!d.blockedEvents[b]){e=d.mixins.observable.doAddListener;c=c||{};if(d.longpressEvents[b]){d.disableTouchContextMenu()}if(a.useDelegatedEvents===!1){c.delegated=c.delegated||!1}if(c.translate!==!1){g=d.additiveEvents[b];if(g){c.type=b;b=g;e.call(d,b,l,k,c,j,i,h)}f=d.eventMap[b];if(f){c.type=c.type||b;b=f}}e.call(d,b,l,k,c,j,i,h);delete c.type}},doRemoveListener:function(c,i,h){var b=this,d,f,g,e;if(!b.blockedEvents[c]){d=b.mixins.observable.doRemoveListener;if(b.longpressEvents[c]){e=this._contextMenuListenerRemover;if(e){e.destroy()}}g=b.additiveEvents[c];if(g){c=g;d.call(b,c,i,h)}f=b.eventMap[c];if(f){d.call(b,f,i,h)}d.call(b,c,i,h)}},_initEvent:function(b){return this.events[b]=new Ext.dom.ElementEvent(this,b)},_getPublisher:function(d){var c=Ext.event.publisher.Publisher,b=c.publishersByEvent[d];if(!b||this.dom===window&&d==='resize'){b=c.publishers.dom}return b}},deprecated:{'5.0':{methods:{cssTranslate:null,getHTML:'getHtml',getOuterHeight:null,getOuterWidth:null,getPageBox:function(l){var e=this,c=e.dom,d=c.nodeName==='BODY',k=d?a.getViewportWidth():c.offsetWidth,g=d?a.getViewportHeight():c.offsetHeight,b=e.getXY(),j=b[1],i=b[0]+k,f=b[1]+g,h=b[0];if(l){return new Ext.util.Region(j,i,f,h)}else {return {left:h,top:j,width:k,height:g,right:i,bottom:f}}},getScrollParent:null,isDescendent:null,isTransparent:function(c){var b=this.getStyle(c);return b?I.test(b):!1},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(q){var j=document,o=q.prototype,w=Ext.supports,l='pointerdown',m='pointermove',n='pointerup',p='pointercancel',r='MSPointerDown',s='MSPointerMove',t='MSPointerUp',C='MSPointerCancel',e='mousedown',f='mousemove',b='mouseup',z='mouseover',A='mouseout',D='mouseenter',E='mouseleave',g='touchstart',h='touchmove',i='touchend',k='touchcancel',x='click',v='dblclick',y='tap',u='doubletap',a=o.eventMap={},c=o.additiveEvents={},B=Ext.id,d;Ext.id=function(e,d){var b=Ext.getDom(e,!0),c,a;if(!b){a=B(e,d)}else {if(!(a=b.id)){a=B(null,d||q.prototype.identifiablePrefix);if(Ext.isSandboxed){c=Ext.sandboxPrefix||(Ext.sandboxPrefix=Ext.sandboxName.toLowerCase()+'-');a=c+a}b.id=a}}return a};if(w.PointerEvents){a[e]=l;a[f]=m;a[b]=n;a[g]=l;a[h]=m;a[i]=n;a[k]=p;a[x]=y;a[v]=u;a[z]='pointerover';a[A]='pointerout';a[D]='pointerenter';a[E]='pointerleave'}else {if(w.MSPointerEvents){a[l]=r;a[m]=s;a[n]=t;a[p]=C;a[e]=r;a[f]=s;a[b]=t;a[g]=r;a[h]=s;a[i]=t;a[k]=C;a[x]=y;a[v]=u;a[z]='MSPointerOver';a[A]='MSPointerOut'}else {if(w.TouchEvents){a[l]=g;a[m]=h;a[n]=i;a[p]=k;a[e]=g;a[f]=h;a[b]=i;a[x]=y;a[v]=u;if(Ext.isWebKit&&Ext.os.is.Desktop){a[g]=e;a[h]=f;a[i]=b;a[k]=b;c[e]=e;c[f]=f;c[b]=b;c[g]=g;c[h]=h;c[i]=i;c[k]=k;c[l]=e;c[m]=f;c[n]=b;c[p]=b}}else {a[l]=e;a[m]=f;a[n]=b;a[p]=b;a[g]=e;a[h]=f;a[i]=b;a[k]=b}}}if(Ext.isWebKit){a.transitionend=Ext.browser.getVendorProperyName('transitionEnd');a.animationstart=Ext.browser.getVendorProperyName('animationStart');a.animationend=Ext.browser.getVendorProperyName('animationEnd')}if(!Ext.supports.MouseWheel&&!Ext.isOpera){a.mousewheel='DOMMouseScroll'}d=o.$eventOptions=Ext.Object.chain(o.$eventOptions);d.translate=d.capture=d.delegate=d.delegated=d.stopEvent=d.preventDefault=d.stopPropagation=d.element=1;o.getTrueXY=o.getXY;Ext.select=q.select;Ext.query=q.query;Ext.apply(Ext,{get:function(a){return q.get(a)},getDom:function(a){if(!a||!j){return null}return a.dom||(typeof a==='string'?Ext.getElementById(a):a)},getBody:function(){if(!Ext._bodyEl){if(!j.body){throw new Error('[Ext.getBody] document.body does not yet exist')}Ext._bodyEl=Ext.get(j.body)}return Ext._bodyEl},getHead:function(){if(!Ext._headEl){Ext._headEl=Ext.get(j.head||j.getElementsByTagName('head')[0])}return Ext._headEl},getDoc:function(){if(!Ext._docEl){Ext._docEl=Ext.get(j)}return Ext._docEl},getWin:function(){if(!Ext._winEl){Ext._winEl=Ext.get(window)}return Ext._winEl},removeNode:function(a){a=a.dom||a;var d=a&&a.id,c=Ext.cache[d],b;if(c){c.destroy()}else {if(a&&(a.nodeType===3||a.tagName.toUpperCase()!=='BODY')){b=a.parentNode;if(b){b.removeChild(a)}}}}});Ext.isGarbage=function(a){return a&&a.nodeType===1&&a.tagName!=='BODY'&&a.tagName!=='HTML'&&(!a.parentNode||!a.offsetParent&&(Ext.isIE8?j.all[a.id]:j.getElementById(a.id))!==a&&!(Ext.detachedBodyEl&&Ext.detachedBodyEl.isAncestor(a)))}});Ext.cmd.derive('Ext.util.Filter',Ext.Base,{isFilter:!0,config:{property:null,value:null,filterFn:null,id:null,anyMatch:!1,exactMatch:!1,caseSensitive:!1,disabled:!1,disableOnEmpty:!1,operator:null,root:null,serializer:null,convert:null},scope:null,$configStrict:!1,statics:{createFilterFn:function(a){if(!a){return Ext.returnTrue}return function(f){var e=a.isCollection?a.items:a,g=e.length,d=!0,b,c;for(b=0;d&&b<g;b++){c=e[b];if(!c.getDisabled()){d=c.filter(f)}}return d}},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 !1}},constructor:function(a){this.initConfig(a)},preventConvert:{'in':1},filter:function(e){var a=this,d=a._filterFn||a.getFilterFn(),c=a.getConvert(),b=a._value;a._filterValue=b;a.isDateValue=Ext.isDate(b);if(a.isDateValue){a.dateValue=b.getTime()}if(c&&!a.preventConvert[a.getOperator()]){a._filterValue=c.call(a.scope||a,b)}return d.call(a.scope||a,e)},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,a=b._filterFn,c;if(!a){c=b.getOperator();if(c){a=b.operatorFns[c]}else {a=b.createRegexFilter()}b._filterFn=a}return a},createRegexFilter:function(){var a=this,b=!!a.getAnyMatch(),d=!!a.getExactMatch(),e=a.getValue(),c=Ext.String.createRegex(e,!b,!b&&d,!a.getCaseSensitive());return function(d){var b=a.getPropertyValue(d);return c?c.test(b):b==null}},getPropertyValue:function(a){var b=this._root,c=b==null?a:a[b];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(b){var a=!1;if(b){a=Ext.isEmpty(this.getValue())}this.setDisabled(a)},privates:{getCandidateValue:function(e,f,d){var b=this,c=b._convert,a=b.getPropertyValue(e);if(c){a=c.call(b.scope||b,a)}else {if(!d){a=Ext.coerce(a,f)}}return a}}},1,0,0,0,0,0,[Ext.util,'Filter'],function(){var b=this.prototype,a=b.operatorFns={'<':function(b){var a=this._filterValue;return this.getCandidateValue(b,a)<a},'<=':function(b){var a=this._filterValue;return this.getCandidateValue(b,a)<=a},'=':function(a){var b=this,c=b._filterValue;a=b.getCandidateValue(a,c);if(b.isDateValue&&a instanceof Date){a=a.getTime();c=b.dateValue}return a==c},'===':function(a){var b=this,c=b._filterValue;a=b.getCandidateValue(a,c,!0);if(b.isDateValue&&a instanceof Date){a=a.getTime();c=b.dateValue}return a===c},'>=':function(b){var a=this._filterValue;return this.getCandidateValue(b,a)>=a},'>':function(b){var a=this._filterValue;return this.getCandidateValue(b,a)>a},'!=':function(a){var b=this,c=b._filterValue;a=b.getCandidateValue(a,c);if(b.isDateValue&&a instanceof Date){a=a.getTime();c=b.dateValue}return a!=c},'!==':function(a){var b=this,c=b._filterValue;a=b.getCandidateValue(a,c,!0);if(b.isDateValue&&a instanceof Date){a=a.getTime();c=b.dateValue}return a!==c},'in':function(b){var a=this._filterValue;return Ext.Array.contains(a,this.getCandidateValue(b,a))},like:function(b){var a=this._filterValue;return a&&this.getCandidateValue(b,a).toLowerCase().indexOf(a.toLowerCase())>-1}};a['==']=a['='];a.gt=a['>'];a.ge=a['>='];a.lt=a['<'];a.le=a['<='];a.eq=a['='];a.ne=a['!=']});Ext.cmd.derive('Ext.util.Observable',Ext.mixin.Observable,{$applyConfigs:!0},0,0,0,0,0,0,[Ext.util,'Observable'],function(a){var b=Ext.mixin.Observable;a.releaseCapture=b.releaseCapture;a.capture=b.capture;a.captureArgs=b.captureArgs;a.observe=a.observeClass=b.observe});Ext.cmd.derive('Ext.util.AbstractMixedCollection',Ext.Base,{isMixedCollection:!0,generation:0,indexGeneration:0,constructor:function(b,c){var a=this;if(arguments.length===1&&Ext.isObject(b)){a.initialConfig=b;Ext.apply(a,b)}else {a.allowFunctions=b===!0;if(c){a.getKey=c}a.initialConfig={allowFunctions:a.allowFunctions,getKey:a.getKey}}a.items=[];a.map={};a.keys=[];a.indexMap={};a.length=0;a.mixins.observable.constructor.call(a)},allowFunctions:!1,add:function(b,d){var c=this.length,a;if(arguments.length===1){a=this.insert(c,b)}else {a=this.insert(c,b,d)}return a},getKey:function(a){return a.id},replace:function(b,c){var a=this,d,e;if(arguments.length==1){c=arguments[0];b=a.getKey(c)}d=a.map[b];if(typeof b=='undefined'||b===null||typeof d=='undefined'){return a.add(b,c)}a.generation++;e=a.indexOfKey(b);a.items[e]=c;a.map[b]=c;if(a.hasListeners.replace){a.fireEvent('replace',b,d,c)}return c},updateKey:function(b,c){var a=this,e=a.map,d=a.indexOfKey(b),f=a.indexMap,g;if(d>-1){g=e[b];delete e[b];delete f[b];e[c]=g;f[c]=d;a.keys[d]=c;a.indexGeneration=++a.generation}},addAll:function(a){var c=this,b;if(arguments.length>1||Ext.isArray(a)){c.insert(c.length,arguments.length>1?arguments:a)}else {for(b in a){if(a.hasOwnProperty(b)){if(c.allowFunctions||typeof a[b]!='function'){c.add(b,a[b])}}}}},each:function(f,e){var c=Ext.Array.push([],this.items),a=0,d=c.length,b;for(;a<d;a++){b=c[a];if(f.call(e||b,b,a,d)===!1){break}}},eachKey:function(f,e){var b=this.keys,d=this.items,a=0,c=b.length;for(;a<c;a++){f.call(e||window,b[a],d[a],a,c)}},findBy:function(f,c){var d=this.keys,b=this.items,a=0,e=b.length;for(;a<e;a++){if(f.call(c||window,b[a],d[a])){return b[a]}}return null},insert:function(c,b,d){var a;if(Ext.isIterable(b)){a=this.doInsert(c,b,d)}else {if(arguments.length>2){a=this.doInsert(c,[b],[d])}else {a=this.doInsert(c,[b])}a=a[0]}return a},doInsert:function(f,e,d){var b=this,c,i,a,g=e.length,j=g,o=b.hasListeners.add,k,h={},l,n,m;if(d!=null){b.useLinearSearch=!0}else {d=e;e=new Array(g);for(a=0;a<g;a++){e[a]=this.getKey(d[a])}}b.suspendEvents();for(a=0;a<g;a++){c=e[a];i=b.indexOfKey(c);if(i!==-1){if(i<f){f--}b.removeAt(i)}if(c!=null){if(h[c]!=null){l=!0;j--}h[c]=a}}b.resumeEvents();if(l){n=e;m=d;e=new Array(j);d=new Array(j);a=0;for(c in h){e[a]=n[h[c]];d[a]=m[h[c]];a++}g=j}k=f===b.length&&b.indexGeneration===b.generation;Ext.Array.insert(b.items,f,d);Ext.Array.insert(b.keys,f,e);b.length+=g;b.generation++;if(k){b.indexGeneration=b.generation}for(a=0;a<g;a++,f++){c=e[a];if(c!=null){b.map[c]=d[a];if(k){b.indexMap[c]=f}}if(o){b.fireEvent('add',f,d[a],c)}}return d},remove:function(d){var a=this,c,b;if(!a.useLinearSearch&&(c=a.getKey(d))){b=a.indexOfKey(c)}else {b=Ext.Array.indexOf(a.items,d)}return b===-1?!1:a.removeAt(b)},removeAll:function(b){var a=this,c;if(b||a.hasListeners.remove){if(b){for(c=b.length-1;c>=0;--c){a.remove(b[c])}}else {while(a.length){a.removeAt(0)}}}else {a.length=a.items.length=a.keys.length=0;a.map={};a.indexMap={};a.generation++;a.indexGeneration=a.generation}},removeAt:function(b){var a=this,d,c;if(b<a.length&&b>=0){a.length--;d=a.items[b];Ext.Array.erase(a.items,b,1);c=a.keys[b];if(typeof c!='undefined'){delete a.map[c]}Ext.Array.erase(a.keys,b,1);if(a.hasListeners.remove){a.fireEvent('remove',d,c)}a.generation++;return d}return !1},removeRange:function(c,b){var a=this,i,f,d,e,g,h;if(c<a.length&&c>=0){if(!b){b=1}e=Math.min(c+b,a.length);b=e-c;h=e===a.length;g=h&&a.indexGeneration===a.generation;for(d=c;d<e;d++){f=a.keys[d];if(f!=null){delete a.map[f];if(g){delete a.indexMap[f]}}}i=a.items[d-1];a.length-=b;a.generation++;if(g){a.indexGeneration=a.generation}if(h){a.items.length=a.keys.length=a.length}else {a.items.splice(c,b);a.keys.splice(c,b)}return i}return !1},removeAtKey:function(d){var b=this,c=b.keys,a;if(d==null){for(a=c.length-1;a>=0;a--){if(c[a]==null){b.removeAt(a)}}}else {return b.removeAt(b.indexOfKey(d))}},getCount:function(){return this.length},indexOf:function(b){var a=this,c;if(b!=null){if(!a.useLinearSearch&&(c=a.getKey(b))){return this.indexOfKey(c)}return Ext.Array.indexOf(a.items,b)}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 b=this,d=b.indexMap={},c=b.keys,e=c.length,a;for(a=0;a<e;a++){d[c[a]]=a}b.indexGeneration=b.generation},get:function(a){var b=this,d=b.map[a],c=d!==undefined?d:typeof a=='number'?b.items[a]:undefined;return typeof c!='function'||b.allowFunctions?c:null},getAt:function(a){return this.items[a]},getByKey:function(a){return this.map[a]},contains:function(a){var c=this,b;if(a!=null){if(!c.useLinearSearch&&(b=c.getKey(a))){return this.map[b]!=null}return Ext.Array.indexOf(this.items,a)!==-1}return !1},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(f,h,c,a){var d=this.extractValues(f,h),g=d.length,e=0,b;c=c||0;a=a||a===0?a:g-1;for(b=c;b<=a;b++){e+=d[b]}return e},collect:function(h,j,g){var e=this.extractValues(h,j),i=e.length,f={},d=[],a,c,b;for(b=0;b<i;b++){a=e[b];c=String(a);if((g||!Ext.isEmpty(a))&&!f[c]){f[c]=!0;d.push(a)}}return d},extractValues:function(c,b){var a=this.items;if(b){a=Ext.Array.pluck(a,b)}return Ext.Array.pluck(a,c)},hasRange:function(b,a){return a<this.length},getRange:function(b,a){var h=this,f=h.items,c=[],d=f.length,g,e;if(d<1){return c}if(b>a){e=!0;g=b;b=a;a=g}if(b<0){b=0}if(a==null||a>=d){a=d-1}c=f.slice(b,a+1);if(e&&c.length){c.reverse()}return c},filter:function(a,e,d,c){var b=[];if(Ext.isString(a)){b.push(new Ext.util.Filter({property:a,value:e,anyMatch:d,caseSensitive:c}))}else {if(Ext.isArray(a)||a instanceof Ext.util.Filter){b=b.concat(a)}}return this.filterBy(Ext.util.Filter.createFilterFn(b))},filterBy:function(h,g){var a=this,c=new a.self(a.initialConfig),e=a.keys,d=a.items,f=d.length,b;c.getKey=a.getKey;for(b=0;b<f;b++){if(h.call(g||a,d[b],e[b])){c.add(e[b],d[b])}}c.useLinearSearch=a.useLinearSearch;return c},findIndex:function(d,a,e,c,b){if(Ext.isEmpty(a,!1)){return -1}a=this.createValueMatcher(a,c,b);return this.findIndexBy(function(f){return f&&a.test(f[d])},null,e)},findIndexBy:function(h,d,e){var b=this,f=b.keys,c=b.items,a=e||0,g=c.length;for(;a<g;a++){if(h.call(d||b,c[a],f[a])){return a}}return -1},createValueMatcher:function(a,e,c,d){if(!a.exec){var b=Ext.String.escapeRegex;a=String(a);if(e===!0){a=b(a)}else {a='^'+b(a);if(d===!0){a+='$'}}a=new RegExp(a,c?'':'i')}return a},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:!0,config:{property:null,sorterFn:null,root:null,transform:null,direction:'ASC',id:undefined},statics:{createComparator:function(b,a){a=a||0;return function(f,g){var e=b.isCollection?b.items:b,h=e.length,d,c;for(c=0;c<h;++c){d=e[c].sort(f,g);if(d){return d}}return a&&a(f,g)}}},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,e){var g=this,c=g._transform,f=g._root,h=g._property,a,b;if(f){d=d[f];e=e[f]}a=d[h];b=e[h];if(c){a=c(a);b=c(b)}return a>b?1:a<b?-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:!0,$configPrefixed:!1,$configStrict:!1,config:{sorters:null},defaultSortDirection:'ASC',multiSortLimit:3,statics:{createComparator:function(a){return a&&a.length?function(d,e){var b=a[0].sort(d,e),f=a.length,c=1;for(;!b&&c<f;c++){b=a[c].sort.call(this,d,e)}return b}:function(){return 0}}},applySorters:function(b){var c=this,a=c.getSorters()||new Ext.util.MixedCollection(!1,Ext.returnId);if(b){a.addAll(c.decodeSorters(b))}return a},sort:function(a,f,e,h){var b=this,d,g,c=b.getSorters();if(!c){b.setSorters(null);c=b.getSorters()}if(Ext.isArray(a)){h=e;e=f}else {if(Ext.isObject(a)){a=[a];h=e;e=f}else {if(Ext.isString(a)){d=c.get(a);if(!d){d={property:a,direction:f}}else {if(f==null){d.toggle()}else {d.setDirection(f)}}a=[d]}}}if(a&&a.length){a=b.decodeSorters(a);switch(e){case 'multi':c.insert(0,a[0]);g=c.getCount()-b.multiSortLimit;if(g>0){c.removeRange(b.multiSortLimit,g)};break;case 'prepend':c.insert(0,a);break;case 'append':c.addAll(a);break;case undefined:case null:case 'replace':c.clear();c.addAll(a);break;default:}}if(h!==!1){b.fireEvent('beforesort',b,a);b.onBeforeSort(a);if(b.getSorterCount()){b.doSort(b.generateComparator())}}return a},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(b){if(!Ext.isArray(b)){if(b===undefined){b=[]}else {b=[b]}}var g=b.length,f=Ext.util.Sorter,e=this.getModel?this.getModel():this.model,d,a,c;for(c=0;c<g;c++){a=b[c];if(!(a instanceof f)){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(e&&!a.transform){d=e.getField(a.property);a.transform=d&&d.sortType!==Ext.identityFn?d.sortType:undefined}b[c]=new Ext.util.Sorter(a)}}return b},getFirstSorter:function(){var c=this.getSorters().items,d=c.length,b=0,a;for(;b<d;++b){a=c[b];if(!a.isGrouper){return a}}return null}},0,0,0,0,0,0,[Ext.util,'Sortable'],function(){this.prototype.createComparator=this.createComparator});Ext.cmd.derive('Ext.util.MixedCollection',Ext.util.AbstractMixedCollection,{constructor:function(){this.initConfig();Ext.util.AbstractMixedCollection.prototype.constructor.apply(this,arguments)},doSort:function(a){this.sortBy(a)},_sort:function(h,j,g){var b=this,a,d,k=String(j).toUpperCase()=='DESC'?-1:1,c=[],i=b.keys,f=b.items,e;g=g||function(a,b){return a-b};for(a=0,d=f.length;a<d;a++){c[c.length]={key:i[a],value:f[a],index:a}}Ext.Array.sort(c,function(a,b){return g(a[h],b[h])*k||(a.index<b.index?-1:1)});for(a=0,d=c.length;a<d;a++){e=c[a];f[a]=e.value;i[a]=e.key;b.indexMap[e.key]=a}b.generation++;b.indexGeneration=b.generation;b.fireEvent('sort',b)},sortBy:function(h){var b=this,c=b.items,f,g=b.keys,d,e=c.length,a;for(a=0;a<e;a++){c[a].$extCollectionIndex=a}Ext.Array.sort(c,function(a,b){return h(a,b)||(a.$extCollectionIndex<b.$extCollectionIndex?-1:1)});for(a=0;a<e;a++){f=c[a];d=b.getKey(f);g[a]=d;b.indexMap[d]=a;delete c.$extCollectionIndex}b.generation++;b.indexGeneration=b.generation;b.fireEvent('sort',b,c,g)},findInsertionIndex:function(h,d){var g=this,f=g.items,b=0,e=f.length-1,a,c;if(!d){d=g.generateComparator()}while(b<=e){a=b+e>>1;c=d(h,f[a]);if(c>=0){b=a+1}else {if(c<0){e=a-1}}}return b},reorder:function(e){var b=this,f=b.items,a=0,h=f.length,c=[],g=[],d;b.suspendEvents();for(d in e){c[e[d]]=f[d]}for(a=0;a<h;a++){if(e[a]==undefined){g.push(f[a])}}for(a=0;a<h;a++){if(c[a]==undefined){c[a]=g.shift()}}b.clear();b.addAll(c);b.resumeEvents();b.fireEvent('sort',b)},sortByKey:function(a,b){this._sort('key',a,b||function(e,f){var c=String(e).toUpperCase(),d=String(f).toUpperCase();return c>d?1:c<d?-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(b){var a=this;if(typeof b=='number'){a.interval=b}else {if(b){Ext.apply(a,b)}}a.tasks=[];a.timerFn=Ext.Function.bind(a.onTick,a)},newTask:function(b){var a=new Ext.util.TaskRunner.Task(b);a.manager=this;return a},start:function(a){var b=this,c=Ext.Date.now();if(!a.pending){b.tasks.push(a);a.pending=!0}a.stopped=!1;a.taskStartTime=c;a.taskRunTime=a.fireOnStart!==!1?0:a.taskStartTime;a.taskRunCount=0;if(!b.firing){if(a.fireOnStart!==!1){b.startTimer(0,c)}else {b.startTimer(a.interval,c)}}return a},stop:function(a){if(!a.stopped){a.stopped=!0;if(a.onStop){a.onStop.call(a.scope||a,a)}}return a},stopAll:function(){Ext.each(this.tasks,this.stop,this)},firing:!1,nextExpires:1.0E99,onTick:function(){var b=this,h=b.tasks,g=Ext.Date.now(),k=1.0E99,m=h.length,l=Ext.GlobalEvents,f,c,e,a,i,d,j;b.timerId=null;b.firing=!0;for(e=0;e<m||e<(m=h.length);++e){a=h[e];if(!(d=a.stopped)){f=a.taskRunTime+a.interval;if(f<=g){i=1;if(a.hasOwnProperty('fireIdleEvent')){j=a.fireIdleEvent}else {j=b.fireIdleEvent}try{i=a.run.apply(a.scope||a,a.args||[++a.taskRunCount])}catch(n){try{if(a.onError){i=a.onError.call(a.scope||a,a,n)}}catch(o){}}a.taskRunTime=g;if(i===!1||a.taskRunCount===a.repeat){b.stop(a);d=!0}else {d=a.stopped;f=g+a.interval}}if(!d&&a.duration&&a.duration<=g-a.taskStartTime){b.stop(a);d=!0}}if(d){a.pending=!1;if(!c){c=h.slice(0,e)}}else {if(c){c.push(a)}if(k>f){k=f}}}if(c){b.tasks=c}b.firing=!1;if(b.tasks.length){b.startTimer(k-g,Ext.Date.now())}if(j!==!1&&l.hasListeners.idle){l.fireEvent('idle')}},startTimer:function(b,e){var a=this,d=e+b,c=a.timerId;if(c&&a.nextExpires-d>a.interval){clearTimeout(c);c=null}if(!c){if(b<a.interval){b=a.interval}a.timerId=Ext.defer(a.timerFn,b);a.nextExpires=d}}},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:!0,stopped:!0,fireOnStart:!1,constructor:function(a){Ext.apply(this,a)},restart:function(a){if(a!==undefined){this.interval=a}this.manager.start(this)},start:function(a){if(this.stopped){this.restart(a)}},stop:function(){this.manager.stop(this)}});a=b.Task.prototype;a.destroy=a.stop});Ext.cmd.derive('Ext.fx.target.Target',Ext.Base,{isAnimTarget:!0,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(c,b,a){if(a===undefined){if(b==='x'){a=c.getX()}else {if(b==='y'){a=c.getY()}else {if(b==='scrollTop'){a=c.getScroll().top}else {if(b==='scrollLeft'){a=c.getScroll().left}else {if(b==='height'){a=c.getHeight()}else {if(b==='width'){a=c.getWidth()}else {a=c.getStyle(b)}}}}}}}return a},getAttr:function(b,c){var a=this.target;return [[a,this.getElVal(a,b,c)]]},setAttr:function(f){var h=f.length,a,b,e,c,d,g;for(c=0;c<h;c++){a=f[c].attrs;for(b in a){if(a.hasOwnProperty(b)){g=a[b].length;for(d=0;d<g;d++){e=a[b][d];this.setElVal(e[0],b,e[1])}}}}},setElVal:function(a,c,b){if(c==='x'){a.setX(b)}else {if(c==='y'){a.setY(b)}else {if(c==='scrollTop'){a.scrollTo('top',b)}else {if(c==='scrollLeft'){a.scrollTo('left',b)}else {if(c==='width'){a.setWidth(b)}else {if(c==='height'){a.setHeight(b)}else {a.setStyle(c,b)}}}}}}}},0,0,0,0,0,0,[Ext.fx.target,'Element'],0);Ext.cmd.derive('Ext.fx.target.ElementCSS',Ext.fx.target.Element,{setAttr:function(j,f){var d={attrs:[],duration:[],easing:[]},m=j.length,n=function(){this.setStyle(Ext.supports.CSS3Prefix+'TransitionProperty',null);this.setStyle(Ext.supports.CSS3Prefix+'TransitionDuration',null);this.setStyle(Ext.supports.CSS3Prefix+'TransitionTimingFunction',null)},o={single:!0},k,a,e,h,g,b,c,i,l;for(c=0;c<m;c++){a=j[c];g=a.duration;h=a.easing;a=a.attrs;for(e in a){if(Ext.Array.indexOf(d.attrs,e)==-1){d.attrs.push(e.replace(/[A-Z]/g,function(a){return '-'+a.toLowerCase()}));d.duration.push(g+'ms');d.easing.push(h)}}}k=d.attrs.join(',');g=d.duration.join(',');h=d.easing.join(', ');for(c=0;c<m;c++){a=j[c].attrs;for(e in a){l=a[e].length;for(i=0;i<l;i++){b=a[e][i];b[0].setStyle(Ext.supports.CSS3Prefix+'TransitionProperty',f?'':k);b[0].setStyle(Ext.supports.CSS3Prefix+'TransitionDuration',f?'':g);b[0].setStyle(Ext.supports.CSS3Prefix+'TransitionTimingFunction',f?'':h);b[0].setStyle(e,b[1]);if(f){b=b[0].dom.offsetWidth}else {b[0].on(Ext.supports.CSS3TransitionEnd,n,b[0],o)}}}}}},0,0,0,0,0,0,[Ext.fx.target,'ElementCSS'],0);Ext.cmd.derive('Ext.fx.target.CompositeElement',Ext.fx.target.Element,{isComposite:!0,constructor:function(a){a.id=a.id||Ext.id(null,'ext-composite-');Ext.fx.target.Element.prototype.constructor.call(this,a)},getAttr:function(g,h){var e=[],d=this.target,c=d.elements,f=c.length,b,a;for(b=0;b<f;b++){a=c[b];if(a){a=d.getElement(a);e.push([a,this.getElVal(a,g,h)])}}return e},setAttr:function(g){var i=this.target,m=g.length,h=i.elements,l=h.length,j,f,a,b,c,d,e,k;for(d=0;d<m;d++){a=g[d].attrs;for(b in a){if(a.hasOwnProperty(b)){k=a[b].length;for(e=0;e<k;e++){j=a[b][e][1];for(f=0;f<l;++f){c=h[f];if(c){c=i.getElement(c);this.setElVal(c,b,j)}}}}}}},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,c){var a;switch(c){case 'rotate':case 'rotation':a=b.attr.rotation;return {x:a.x||0,y:a.y||0,degrees:a.degrees||0};case 'scale':case 'scaling':a=b.attr.scaling;return {x:a.x||1,y:a.y||1,cx:a.cx||0,cy:a.cy||0};case 'translate':case 'translation':a=b.attr.translation;return {x:a.x||0,y:a.y||0};default:return b.attr[c];}},getAttr:function(b,a){return [[this.target,a!==undefined?a:this.getFromPrim(this.target,b)]]},setAttr:function(n){var m=n.length,f=[],k,a,i,b,l,j,g,c,h,d,e,o;for(c=0;c<m;c++){k=n[c].attrs;for(a in k){i=k[a];o=i.length;for(h=0;h<o;h++){l=i[h][0];b=i[h][1];if(a==='translate'||a==='translation'){g={x:b.x,y:b.y}}else {if(a==='rotate'||a==='rotation'){d=b.x;if(isNaN(d)){d=null}e=b.y;if(isNaN(e)){e=null}g={degrees:b.degrees,x:d,y:e}}else {if(a==='scale'||a==='scaling'){d=b.x;if(isNaN(d)){d=null}e=b.y;if(isNaN(e)){e=null}g={x:d,y:e,cx:b.cx,cy:b.cy}}else {if(a==='width'||a==='height'||a==='x'||a==='y'){g=parseFloat(b)}else {g=b}}}}j=Ext.Array.indexOf(f,l);if(j===-1){f.push([l,{}]);j=f.length-1}f[j][1][a]=g}}}m=f.length;for(c=0;c<m;c++){f[c][0].setAttributes(f[c][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(g,e){var d=[],c=[].concat(this.target.items),f=c.length,a,b;for(a=0;a<f;a++){b=c[a];d.push([b,e!==undefined?e:this.getFromPrim(b,g)])}return d}},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(!0)[1]},left:function(){return this.getPosition(!0)[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(b,a){return [[this.target,a!==undefined?a:this.getPropMethod[b].call(this.target)]]},setAttr:function(k,q,o){var h=this,p=k.length,d,c,a,e,f,l,m,n,j,i,b={},g;for(e=0;e<p;e++){d=k[e].attrs;for(c in d){l=d[c].length;for(f=0;f<l;f++){a=d[c][f];g=b[h.setMethods[c]]||(b[h.setMethods[c]]={});g.target=a[0];g[c]=a[1]}}if(b.setPosition){a=b.setPosition;m=a.left===undefined?undefined:parseFloat(a.left);n=a.top===undefined?undefined:parseFloat(a.top);a.target.setPosition(m,n)}if(b.setPagePosition){a=b.setPagePosition;a.target.setPagePosition(a.x,a.y)}if(b.setSize){a=b.setSize;j=a.width===undefined?a.target.getWidth():parseFloat(a.width);i=a.height===undefined?a.target.getHeight():parseFloat(a.height);a.target.el.setSize(j,i);if(o||h.dynamic){Ext.GlobalEvents.on({idle:Ext.Function.bind(a.target.setSize,a.target,[j,i]),single:!0})}}if(b.setOpacity){a=b.setOpacity;a.target.el.setStyle('opacity',a.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(b){var a=this.targets.get(b);if(a){return a.fxDefaults}return {}},setFxDefaults:function(b,c){var a=this.targets.get(b);if(a){a.fxDefaults=Ext.apply(a.fxDefaults||{},c)}},stopAnimation:function(c){var d=this,b=d.getFxQueue(c),a=b.length;while(a){b[a-1].end();a--}},getActiveAnimation:function(b){var a=this.getFxQueue(b);return a&&!!a.length?a[0]:!1},hasFxBlock:function(b){var a=this.getFxQueue(b);return a&&a[0]&&a[0].block},getFxQueue:function(a){if(!a){return !1}var b=this,d=b.fxQueue[a],c=b.targets.get(a);if(!c){return !1}if(!d){b.fxQueue[a]=[];if(c.type!=='element'){c.target.on('destroy',function(){b.fxQueue[a]=[]})}}return b.fxQueue[a]},queueFx:function(a){var e=this,c=a.target,b,d;if(!c){return}b=e.getFxQueue(c.getId());d=b.length;if(d){if(a.concurrent){a.paused=!1}else {b[d-1].on('afteranimate',function(){a.paused=!1})}}else {a.paused=!1}a.on('afteranimate',function(){Ext.Array.remove(b,a);if(b.length===0){e.targets.remove(a.target)}if(a.remove){if(c.type==='element'){var d=Ext.get(c.id);if(d){d.destroy()}}}},e,{single:!0});b.push(a)}},1,0,0,0,0,0,[Ext.fx,'Queue'],0);Ext.cmd.derive('Ext.fx.Manager',Ext.Base,{singleton:!0,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:!0,createTarget:function(a){var d=this,c=!d.forceJS&&Ext.supports.Transitions,b;d.useCSS3=c;if(a){if(a.tagName||Ext.isString(a)||a.isFly){a=Ext.get(a);b=new Ext.fx.target['Element'+(c?'CSS':'')](a)}else {if(a.dom){b=new Ext.fx.target['Element'+(c?'CSS':'')](a)}else {if(a.isComposite){b=new Ext.fx.target['CompositeElement'+(c?'CSS':'')](a)}else {if(a.isSprite){b=new Ext.fx.target.Sprite(a)}else {if(a.isCompositeSprite){b=new Ext.fx.target.CompositeSprite(a)}else {if(a.isComponent){b=new Ext.fx.target.Component(a)}else {if(a.isAnimTarget){return a}else {return null}}}}}}}d.targets.add(b);return b}else {return null}},addAnim:function(d){var a=this,c=a.items,b=a.task;c.add(d.id,d);if(!b&&c.length){b=a.task={run:a.runner,interval:a.interval,scope:a};a.taskRunner.start(b)}},removeAnim:function(d){var a=this,b=a.items,c=a.task;b.removeAtKey(d.id);if(c&&!b.length){a.taskRunner.stop(c);delete a.task}},runner:function(){var c=this,d=c.items.getRange(),a=0,e=d.length,b;c.targetArr={};c.timestamp=new Date();for(;a<e;a++){b=d[a];if(b.isReady()){c.startAnim(b)}}for(a=0;a<e;a++){b=d[a];if(b.isRunning()){c.runAnim(b)}}c.applyPendingAttrs()},startAnim:function(a){a.start(this.timestamp)},runAnim:function(a,h){if(!a){return}var g=this,f=g.useCSS3&&a.target.type==='element',d=g.timestamp-a.startTime,e=d>=a.duration,b,c;if(h){d=a.duration;e=!0}b=this.collectTargetData(a,d,f,e);if(f){a.target.setAttr(b.anims[a.id].attributes,!0);g.collectTargetData(a,a.duration,f,e);a.paused=!0;b=a.target.target;if(a.target.isComposite){b=a.target.target.last()}c={};c[Ext.supports.CSS3TransitionEnd]=a.lastFrame;c.scope=a;c.single=!0;b.on(c)}return b},jumpToEnd:function(b){var a=this.runAnim(b,!0);this.applyAnimAttrs(a,a.anims[b.id])},collectTargetData:function(a,d,f,e){var c=a.target.getId(),b=this.targetArr[c];if(!b){b=this.targetArr[c]={id:c,el:a.target,anims:{}}}b.anims[a.id]={id:a.id,anim:a,elapsed:d,isLastFrame:e,attributes:[{duration:a.duration,easing:f&&a.reverse?a.easingFn.reverse().toCSS3():a.easing,attrs:a.runAnim(d)}]};return b},applyAnimAttrs:function(c,a){var b=a.anim;if(a.attributes&&b.isRunning()){c.el.setAttr(a.attributes,!1,a.isLastFrame);if(a.isLastFrame){b.lastFrame()}}},applyPendingAttrs:function(){var c=this.targetArr,b,d,a,f,e;for(d in c){if(c.hasOwnProperty(d)){b=c[d];for(e in b.anims){if(b.anims.hasOwnProperty(e)){a=b.anims[e];f=a.anim;if(a.attributes&&f.isRunning()){b.el.setAttr(a.attributes,!1,a.isLastFrame);if(a.isLastFrame){f.lastFrame()}}}}}}}},1,0,0,0,0,[['queue',Ext.fx.Queue]],[Ext.fx,'Manager'],0);Ext.cmd.derive('Ext.fx.Animator',Ext.Base,{isAnimator:!0,duration:250,delay:0,delayStart:0,dynamic:!1,easing:'ease',running:!1,paused:!1,damper:1,iterations:1,currentIteration:0,keyframeStep:0,animKeyFramesRE:/^(from|to|\d+%?)$/,constructor:function(b){var a=this;b=Ext.apply(a,b||{});a.config=b;a.id=Ext.id(null,'ext-animator-');a.mixins.observable.constructor.call(a,b);a.timeline=[];a.createTimeline(a.keyframes);if(a.target){a.applyAnimator(a.target);Ext.fx.Manager.addAnim(a)}},sorter:function(a,b){return a.pct-b.pct},createTimeline:function(e){var d=this,b=[],k=d.to||{},g=d.duration,h,j,c,i,a,f;for(a in e){if(e.hasOwnProperty(a)&&d.animKeyFramesRE.test(a)){f={attrs:Ext.apply(e[a],k)};if(a==='from'){a=0}else {if(a==='to'){a=100}}f.pct=parseInt(a,10);b.push(f)}}Ext.Array.sort(b,d.sorter);i=b.length;for(c=0;c<i;c++){h=b[c-1]?g*(b[c-1].pct/100):0;j=g*(b[c].pct/100);d.timeline.push({duration:j-h,attrs:b[c].attrs})}},applyAnimator:function(j){var b=this,e=[],g=b.timeline,f=g.length,a,i,h,d,c;if(b.fireEvent('beforeanimate',b)!==!1){for(c=0;c<f;c++){a=g[c];d=a.attrs;i=d.easing||b.easing;h=d.damper||b.damper;delete d.easing;delete d.damper;a=new Ext.fx.Anim({target:j,easing:i,damper:h,duration:a.duration,paused:!0,to:d});e.push(a)}b.animations=e;b.target=a.target;for(c=0;c<f-1;c++){a=e[c];a.nextAnim=e[c+1];a.on('afteranimate',function(){this.nextAnim.paused=!1});a.on('afteranimate',function(){this.fireEvent('keyframe',this,++this.keyframeStep)},b)}e[f-1].on('afteranimate',function(){this.lastFrame()},b)}},start:function(b){var a=this,d=a.delay,c=a.delayStart,e;if(d){if(!c){a.delayStart=b;return}else {e=b-c;if(e<d){return}else {b=new Date(c.getTime()+d)}}}if(a.fireEvent('beforeanimate',a)!==!1){a.startTime=b;a.running=!0;a.animations[a.keyframeStep].paused=!1}},lastFrame:function(){var a=this,c=a.iterations,b=a.currentIteration;b++;if(b<c){a.startTime=new Date();a.currentIteration=b;a.keyframeStep=0;a.applyAnimator(a.target);a.animations[a.keyframeStep].paused=!1}else {a.currentIteration=0;a.end()}},end:function(){var a=this;a.fireEvent('afteranimate',a,a.startTime,new Date()-a.startTime)},isReady:function(){return this.paused===!1&&this.running===!1&&this.iterations>0},isRunning:function(){return !1}},1,0,0,0,0,[['observable',Ext.util.Observable]],[Ext.fx,'Animator'],0);Ext.cmd.derive('Ext.fx.CubicBezier',Ext.Base,{singleton:!0,cubicBezierAtTime:function(l,d,e,i,j,h){var a=3*d,b=3*(i-d)-a,f=1-a-b,c=3*e,g=3*(j-e)-c,k=1-c-g;function sampleCurveX(c){return ((f*c+b)*c+a)*c}function solve(f,b){var a=solveCurveX(f,b);return ((k*a+g)*a+c)*a}function solveCurveX(n,q){var g,k,c,m,o,p;for(c=n,p=0;p<8;p++){m=sampleCurveX(c)-n;if(Math.abs(m)<q){return c}o=(3*f*c+2*b)*c+a;if(Math.abs(o)<1.0E-6){break}c=c-m/o}g=0;k=1;c=n;if(c<g){return g}if(c>k){return k}while(g<k){m=sampleCurveX(c);if(Math.abs(m-n)<q){return c}if(n>m){g=c}else {k=c}c=(k-g)/2+g}return c}return solve(l,1/(200*h))},cubicBezier:function(b,d,c,e){var a=function(a){return Ext.fx.CubicBezier.cubicBezierAtTime(a,b,d,c,e,1)};a.toCSS3=function(){return 'cubic-bezier('+[b,d,c,e].join(',')+')'};a.reverse=function(){return Ext.fx.CubicBezier.cubicBezier(1-c,1-e,1-b,1-d)};return a}},0,0,0,0,0,0,[Ext.fx,'CubicBezier'],0);Ext.cmd.derive('Ext.fx.Easing',Ext.Base,function(){var b=Math,g=b.PI,a=b.pow,f=b.sin,e=b.sqrt,d=b.abs,c=1.70158;return {singleton:!0,linear:Ext.identityFn,ease:function(k){var c=0.07813-k/2,f=e(0.0066+c*c),g=f-c,i=a(d(g),1/3)*(g<0?-1:1),h=-f-c,j=a(d(h),1/3)*(h<0?-1:1),b=i+j+0.25;return a(1-b,2)*3*b*0.1+(1-b)*3*b*b+b*b*b},easeIn:function(b){return a(b,1.7)},easeOut:function(b){return a(b,0.48)},easeInOut:function(k){var c=0.48-k/1.04,f=e(0.1734+c*c),g=f-c,i=a(d(g),1/3)*(g<0?-1:1),h=-f-c,j=a(d(h),1/3)*(h<0?-1:1),b=i+j+0.5;return (1-b)*3*b*b+b*b*b},backIn:function(a){return a*a*((c+1)*a-c)},backOut:function(a){a=a-1;return a*a*((c+1)*a+c)+1},elasticIn:function(b){if(b===0||b===1){return b}var c=0.3,d=c/4;return a(2,-10*b)*f((b-d)*(2*g)/c)+1},elasticOut:function(a){return 1-Ext.fx.Easing.elasticIn(1-a)},bounceIn:function(a){return 1-Ext.fx.Easing.bounceOut(1-a)},bounceOut:function(a){var d=7.5625,b=2.75,c;if(a<1/b){c=d*a*a}else {if(a<2/b){a-=1.5/b;c=d*a*a+0.75}else {if(a<2.5/b){a-=2.25/b;c=d*a*a+0.9375}else {a-=2.625/b;c=d*a*a+0.984375}}}return c}}},0,0,0,0,0,0,[Ext.fx,'Easing'],function(c){var b=c.self,a=b.prototype;b.addMembers({'back-in':a.backIn,'back-out':a.backOut,'ease-in':a.easeIn,'ease-out':a.easeOut,'elastic-in':a.elasticIn,'elastic-out':a.elasticOut,'bounce-in':a.bounceIn,'bounce-out':a.bounceOut,'ease-in-out':a.easeInOut})});Ext.cmd.derive('Ext.fx.DrawPath',Ext.Base,{singleton:!0,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(c){if(!c){return null}var d={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},a=[],b=this;if(b.is(c,'array')&&b.is(c[0],'array')){a=b.pathClone(c)}if(!a.length){String(c).replace(b.pathCommandRE,function(i,g,h){var e=[],f=g.toLowerCase();h.replace(b.pathValuesRE,function(b,a){if(a){e.push(+a)}});if(f=='m'&&e.length>2){a.push([g].concat(Ext.Array.splice(e,0,2)));f='l';g=g=='m'?'l':'L'}while(e.length>=d[f]){a.push([g].concat(Ext.Array.splice(e,0,d[f])));if(!d[f]){break}}})}a.toString=b.path2string;return a},pathClone:function(a){var d=[],c,f,b,e;if(!this.is(a,'array')||!this.is(a&&a[0],'array')){a=this.parsePathString(a)}for(b=0,e=a.length;b<e;b++){d[b]=[];for(c=0,f=a[b].length;c<f;c++){d[b][c]=a[b][c]}}d.toString=this.path2string;return d},pathToAbsolute:function(d){if(!this.is(d,'array')||!this.is(d&&d[0],'array')){d=this.parsePathString(d)}var i=[],f=0,g=0,j=0,k=0,h=0,l=d.length,b,a,c,e;if(l&&d[0][0]=='M'){f=+d[0][1];g=+d[0][2];j=f;k=g;h++;i[0]=['M',f,g]}for(;h<l;h++){b=i[h]=[];a=d[h];if(a[0]!=a[0].toUpperCase()){b[0]=a[0].toUpperCase();switch(b[0]){case 'A':b[1]=a[1];b[2]=a[2];b[3]=a[3];b[4]=a[4];b[5]=a[5];b[6]=+(a[6]+f);b[7]=+(a[7]+g);break;case 'V':b[1]=+a[1]+g;break;case 'H':b[1]=+a[1]+f;break;case 'M':j=+a[1]+f;k=+a[2]+g;default:c=1;e=a.length;for(;c<e;c++){b[c]=+a[c]+(c%2?f:g)};}}else {c=0;e=a.length;for(;c<e;c++){i[h][c]=a[c]}}switch(b[0]){case 'Z':f=j;g=k;break;case 'H':f=b[1];break;case 'V':g=b[1];break;case 'M':a=i[h];e=a.length;j=a[e-2];k=a[e-1];default:a=i[h];e=a.length;f=a[e-2];g=a[e-1];}}i.toString=this.path2string;return i},interpolatePaths:function(o,n){var k=this,c=k.pathToAbsolute(o),b=k.pathToAbsolute(n),e={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},d={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},l=function(a,d){if(a[d].length>7){a[d].shift();var e=a[d];while(e.length){Ext.Array.splice(a,d++,0,['C'].concat(Ext.Array.splice(e,0,6)))}Ext.Array.erase(a,d,1);j=Math.max(c.length,b.length||0)}},m=function(d,f,e,g,a){if(d&&f&&d[a][0]=='M'&&f[a][0]!='M'){Ext.Array.splice(f,a,0,['M',g.x,g.y]);e.bx=0;e.by=0;e.x=d[a][1];e.y=d[a][2];j=Math.max(c.length,b.length||0)}},a,j,g,f,i,h;for(a=0,j=Math.max(c.length,b.length||0);a<j;a++){c[a]=k.command2curve(c[a],e);l(c,a);b[a]=k.command2curve(b[a],d);l(b,a);m(c,b,e,d,a);m(b,c,d,e,a);g=c[a];f=b[a];i=g.length;h=f.length;e.x=g[i-2];e.y=g[i-1];e.bx=parseFloat(g[i-4])||e.x;e.by=parseFloat(g[i-3])||e.y;d.bx=parseFloat(f[h-4])||d.x;d.by=parseFloat(f[h-3])||d.y;d.x=f[h-2];d.y=f[h-1]}return [c,b]},command2curve:function(b,a){var c=this;if(!b){return ['C',a.x,a.y,a.x,a.y,a.x,a.y]}if(b[0]!='T'&&b[0]!='Q'){a.qx=a.qy=null}switch(b[0]){case 'M':a.X=b[1];a.Y=b[2];break;case 'A':b=['C'].concat(c.arc2curve.apply(c,[a.x,a.y].concat(b.slice(1))));break;case 'S':b=['C',a.x+(a.x-(a.bx||a.x)),a.y+(a.y-(a.by||a.y))].concat(b.slice(1));break;case 'T':a.qx=a.x+(a.x-(a.qx||a.x));a.qy=a.y+(a.y-(a.qy||a.y));b=['C'].concat(c.quadratic2curve(a.x,a.y,a.qx,a.qy,b[1],b[2]));break;case 'Q':a.qx=b[1];a.qy=b[2];b=['C'].concat(c.quadratic2curve(a.x,a.y,b[1],b[2],b[3],b[4]));break;case 'L':b=['C'].concat(a.x,a.y,b[1],b[2],b[1],b[2]);break;case 'H':b=['C'].concat(a.x,a.y,b[1],a.y,b[1],a.y);break;case 'V':b=['C'].concat(a.x,a.y,a.x,b[1],a.x,b[1]);break;case 'Z':b=['C'].concat(a.x,a.y,a.X,a.Y,a.X,a.Y);break;}return b},quadratic2curve:function(g,h,c,d,e,f){var a=1/3,b=2/3;return [a*g+b*c,a*h+b*d,a*e+b*c,a*f+b*d,e,f]},rotate:function(d,e,b){var a=Math.cos(b),c=Math.sin(b),f=d*a-e*c,g=d*c+e*a;return {x:f,y:g}},arc2curve:function(m,n,d,c,K,X,v,e,f,o){var s=this,k=Math.PI,Y=s.radian,Q=k*120/180,w=Y*(+K||0),g=[],p=Math,B=p.cos,C=p.sin,N=p.sqrt,R=p.abs,M=p.asin,t,i,j,u,x,y,I,q,r,b,a,z,S,V,T,W,J,D,E,F,l,G,H,A,h,U,L,O,P;if(!o){t=s.rotate(m,n,-w);m=t.x;n=t.y;t=s.rotate(e,f,-w);e=t.x;f=t.y;i=(m-e)/2;j=(n-f)/2;u=i*i/(d*d)+j*j/(c*c);if(u>1){u=N(u);d=u*d;c=u*c}x=d*d;y=c*c;I=(X==v?-1:1)*N(R((x*y-x*j*j-y*i*i)/(x*j*j+y*i*i)));q=I*d*j/c+(m+e)/2;r=I*-c*i/d+(n+f)/2;b=M(((n-r)/c).toFixed(7));a=M(((f-r)/c).toFixed(7));b=m<q?k-b:b;a=e<q?k-a:a;if(b<0){b=k*2+b}if(a<0){a=k*2+a}if(v&&b>a){b=b-k*2}if(!v&&a>b){a=a-k*2}}else {b=o[0];a=o[1];q=o[2];r=o[3]}z=a-b;if(R(z)>Q){L=a;O=e;P=f;a=b+Q*(v&&a>b?1:-1);e=q+d*B(a);f=r+c*C(a);g=s.arc2curve(e,f,d,c,K,0,v,O,P,[a,L,q,r])}z=a-b;S=B(b);V=C(b);T=B(a);W=C(a);J=p.tan(z/4);D=4/3*d*J;E=4/3*c*J;F=[m,n];l=[m+D*V,n-E*S];G=[e+D*W,f-E*T];H=[e,f];l[0]=2*F[0]-l[0];l[1]=2*F[1]-l[1];if(o){return [l,G,H].concat(g)}else {g=[l,G,H].concat(g).join().split(',');A=[];U=g.length;for(h=0;h<U;h++){A[h]=h%2?s.rotate(g[h-1],g[h],w).y:s.rotate(g[h],g[h+1],w).x}return A}}},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(c,d,e,f,i){e=typeof e=='number'?e:1;var g=this.unitRE,a=g.exec(c),h,b;if(a){c=a[1];b=a[2];if(!this.scrollRE.test(i)&&!b&&this.pixelDefaultsRE.test(i)){b='px'}}c=+c||0;a=g.exec(d);if(a){d=a[1];b=a[2]||b}d=+d||0;h=f!=null?f:c;return {from:c,delta:(d-h)*e,units:b}},get:function(b,e,i,h,j){var l=b.length,f=[],a,d,g,c,k;for(a=0;a<l;a++){if(h){d=h[a][1].from}if(Ext.isArray(b[a][1])&&Ext.isArray(e)){g=[];c=0;k=b[a][1].length;for(;c<k;c++){g.push(this.computeDelta(b[a][1][c],e[c],i,d,j))}f.push([b[a][0],g])}else {f.push([b[a][0],this.computeDelta(b[a][1],e,i,d,j)])}}return f},set:function(d,g){var i=d.length,e=[],b,a,f,h,c;for(b=0;b<i;b++){a=d[b][1];if(Ext.isArray(a)){f=[];c=0;h=a.length;for(;c<h;c++){f.push(a[c].from+a[c].delta*g+(a[c].units||0))}e.push([d[b][0],f])}else {e.push([d[b][0],a.from+a.delta*g+(a.units||0)])}}return e}},stringHandler:{computeDelta:function(a,b,d,c,e){return {from:a,delta:b}},get:function(b,g,e,i,f){var h=b.length,c=[],a,d;for(a=0;a<h;a++){c.push([b[a][0],this.computeDelta(b[a][1],g,e,d,f)])}return c},set:function(b,f){var e=b.length,c=[],a,d;for(a=0;a<e;a++){d=b[a][1];c.push([b[a][0],d.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(f,d){d=typeof d=='number'?d:1;var g=!1,e=[this.hexRE,this.rgbRE,this.hex3RE],i=e.length,a,c,h,b;for(b=0;b<i;b++){h=e[b];c=b%2===0?16:10;a=h.exec(f);if(a&&a.length===4){if(b===2){a[1]+=a[1];a[2]+=a[2];a[3]+=a[3]}g={red:parseInt(a[1],c),green:parseInt(a[2],c),blue:parseInt(a[3],c)};break}}return g||f},computeDelta:function(d,a,c,e){d=this.parseColor(d);a=this.parseColor(a,c);var b=e?e:d,f=typeof b,g=typeof a;if(f==='string'||f==='undefined'||g==='string'||g==='undefined'){return a||b}return {from:d,delta:{red:Math.round((a.red-b.red)*c),green:Math.round((a.green-b.green)*c),blue:Math.round((a.blue-b.blue)*c)}}},get:function(b,g,f,c){var h=b.length,e=[],a,d;for(a=0;a<h;a++){if(c){d=c[a][1].from}e.push([b[a][0],this.computeDelta(b[a][1],g,f,d)])}return e},set:function(f,e){var i=f.length,h=[],b,a,g,d,c;for(b=0;b<i;b++){a=f[b][1];if(a){d=a.from;c=a.delta;a=typeof a==='object'&&'red' in a?'rgb('+a.red+', '+a.green+', '+a.blue+')':a;a=typeof a==='object'&&a.length?a[0]:a;if(typeof a==='undefined'){return []}g=typeof a==='string'?a:'rgb('+[(d.red+Math.round(c.red*e))%256,(d.green+Math.round(c.green*e))%256,(d.blue+Math.round(c.blue*e))%256].join(',')+')';h.push([f[b][0],g])}}return h}},object:{interpolate:function(c,a){a=typeof a==='number'?a:1;var d={},b;for(b in c){d[b]=parseFloat(c[b])*a}return d},computeDelta:function(a,b,f,d){a=this.interpolate(a);b=this.interpolate(b,f);var g=d?d:a,e={},c;for(c in b){e[c]=b[c]-g[c]}return {from:a,delta:e}},get:function(b,g,f,c){var h=b.length,e=[],a,d;for(a=0;a<h;a++){if(c){d=c[a][1].from}e.push([b[a][0],this.computeDelta(b[a][1],g,f,d)])}return e},set:function(c,i){var j=c.length,h=[],f={},a,d,g,e,b;for(a=0;a<j;a++){e=c[a][1];d=e.from;g=e.delta;for(b in d){f[b]=d[b]+g[b]*i}h.push([c[a][0],f])}return h}},path:{computeDelta:function(b,c,a,d){a=typeof a==='number'?a:1;var e;b=+b||0;c=+c||0;e=d!=null?d:b;return {from:b,delta:(c-e)*a}},forcePath:function(a){if(!Ext.isArray(a)&&!Ext.isArray(a[0])){a=Ext.fx.DrawPath.parsePathString(a)}return a},get:function(g,p,o,i){var f=this.forcePath(p),m=[],n=g.length,j,k,e,c,l,a,d,h,b;for(e=0;e<n;e++){b=this.forcePath(g[e][1]);c=Ext.fx.DrawPath.interpolatePaths(b,f);b=c[0];f=c[1];j=b.length;h=[];for(a=0;a<j;a++){c=[b[a][0]];k=b[a].length;for(d=1;d<k;d++){l=i&&i[0][1][a][d].from;c.push(this.computeDelta(b[a][d],f[a][d],o,l))}h.push(c)}m.push([g[e][0],h])}return m},set:function(g,k){var l=g.length,j=[],c,a,d,f,e,b,h,i;for(c=0;c<l;c++){b=g[c][1];f=[];h=b.length;for(a=0;a<h;a++){e=[b[a][0]];i=b[a].length;for(d=1;d<i;d++){e.push(b[a][d].from+b[a][d].delta*k)}f.push(e.join(','))}j.push([g[c][0],f.join(',')])}return j}}}},0,0,0,0,0,0,[Ext.fx,'PropertyHandler'],function(){var b=['outlineColor','backgroundColor','borderColor','borderTopColor','borderRightColor','borderBottomColor','borderLeftColor','fill','stroke'],d=b.length,a=0,c;for(;a<d;a++){c=b[a];this[c]=this.color}b=['cursor'];d=b.length;a=0;for(;a<d;a++){c=b[a];this[c]=this.stringHandler}});Ext.cmd.derive('Ext.fx.Anim',Ext.Base,{isAnimation:!0,duration:250,delay:0,delayStart:0,dynamic:!1,easing:'ease',damper:1,bezierRE:/^(?:cubic-)?bezier\(([^,]+),([^,]+),([^,]+),([^\)]+)\)/,reverse:!1,running:!1,paused:!1,iterations:1,autoEnd:!1,alternate:!1,currentIteration:0,startTime:0,frameCount:0,constructor:function(b){var a=this,c;b=b||{};if(b.keyframes){return new Ext.fx.Animator(b)}Ext.apply(a,b);if(a.from===undefined){a.from={}}a.propHandlers={};a.config=b;a.target=Ext.fx.Manager.createTarget(a.target);a.easingFn=Ext.fx.Easing[a.easing];a.target.dynamic=a.dynamic;if(!a.easingFn){a.easingFn=String(a.easing).match(a.bezierRE);if(a.easingFn&&a.easingFn.length===5){c=a.easingFn;a.easingFn=Ext.fx.CubicBezier.cubicBezier(+c[1],+c[2],+c[3],+c[4])}}a.id=Ext.id(null,'ext-anim-');a.mixins.observable.constructor.call(a);Ext.fx.Manager.addAnim(a);if(b.autoEnd){a.running=!0;a.jumpToEnd()}},setAttr:function(b,a){return Ext.fx.Manager.items.get(this.id).setAttr(this.target,b,a)},initAttrs:function(){var b=this,i=b.from,e=b.to,h=b.initialFrom||{},g={},f,d,c,a;for(a in e){if(e.hasOwnProperty(a)){f=b.target.getAttr(a,i[a]);d=e[a];if(!Ext.fx.PropertyHandler[a]){if(Ext.isObject(d)){c=b.propHandlers[a]=Ext.fx.PropertyHandler.object}else {c=b.propHandlers[a]=Ext.fx.PropertyHandler.defaultHandler}}else {c=b.propHandlers[a]=Ext.fx.PropertyHandler[a]}g[a]=c.get(f,d,b.damper,h[a],a)}}b.currentAttrs=g},start:function(b){var a=this,d=a.delay,c=a.delayStart,e;if(d){if(!c){a.delayStart=b;return}else {e=b-c;if(e<d){return}else {b=new Date(c.getTime()+d)}}}if(a.fireEvent('beforeanimate',a)!==!1){a.startTime=b;if(!a.paused&&!a.currentAttrs){a.initAttrs()}a.running=!0;a.frameCount=0}},jumpToEnd:function(){var a=this;if(!a.endWasCalled){if(!a.currentAttrs){a.initAttrs()}Ext.fx.Manager.jumpToEnd(a);a.end()}},runAnim:function(b){var a=this,e=a.currentAttrs,d=a.duration,k=a.easingFn,j=a.propHandlers,i={},g,h,c,f;if(b>=d){b=d;f=!0}if(a.reverse){b=d-b}for(c in e){if(e.hasOwnProperty(c)){h=e[c];g=f?1:k(b/d);i[c]=j[c].set(h,g)}}a.frameCount++;return i},lastFrame:function(){var a=this,c=a.iterations,b=a.currentIteration;b++;if(b<c){if(a.alternate){a.reverse=!a.reverse}a.startTime=new Date();a.currentIteration=b;a.paused=!1}else {a.currentIteration=0;a.end();a.fireEvent('lastframe',a,a.startTime)}},endWasCalled:0,end:function(){var a=this;if(a.endWasCalled++){return}a.startTime=0;a.paused=!1;a.running=!1;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===!1&&this.running===!1&&this.iterations>0},isRunning:function(){return this.paused===!1&&this.running===!0&&this.isAnimator!==!0}},1,0,0,0,0,[['observable',Ext.util.Observable]],[Ext.fx,'Anim'],0);Ext.enableFx=!0;Ext.cmd.derive('Ext.util.Animate',Ext.Base,{mixinId:'animate',isAnimate:!0,animate:function(b){var a=this;if(Ext.fx.Manager.hasFxBlock(a.id)){return a}Ext.fx.Manager.queueFx(new Ext.fx.Anim(a.anim(b)));return this},anim:function(a){if(!Ext.isObject(a)){return a?{}:!1}var b=this;if(a.stopAnimation){b.stopAnimation()}Ext.applyIf(a,Ext.fx.Manager.getFxDefaults(b.id));return Ext.apply({target:b,paused:!0},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:!0});return this},sequenceFx:function(){Ext.fx.Manager.setFxDefaults(this.id,{concurrent:!1});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:!0,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=!1}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(b){var a={};b.cache=a;Ext.fly=function(c,e){var d=null,h=Ext.fly,f,g;e=e||h.caller&&h.caller.$name||'_global';c=Ext.getDom(c);if(c){f=c.nodeType;if(b.prototype.validNodeTypes[f]||!f&&c.window==c){d=Ext.cache[c.id];if(!d||d.dom!==c){d=a[e]||(a[e]=new b());d.dom=c;g=d.getData(!0);if(g){g.isSynchronized=!1}}}}return d}});Ext.cmd.derive('Ext.dom.CompositeElementLite',Ext.Base,{alternateClassName:['Ext.CompositeElementLite'],isComposite:!0,isLite:!0,statics:{importElementMethods:function(){var b=Ext.dom.Element,a=this.prototype;Ext.Object.each(b.prototype,function(b,c){if(typeof c==='function'&&!a[b]){a[b]=function(){return this.invoke(b,arguments)}}})}},constructor:function(a,b){if(b){this.elements=a||[]}else {this.elements=[];this.add(a)}},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(a,e){var d=this.elements,b,c;if(!a){return this}if(typeof a=='string'){a=Ext.fly(e||document).query(a)}else {if(a.isComposite){a=a.elements}else {if(!Ext.isIterable(a)){a=[a]}}}for(b=0,c=a.length;b<c;++b){d.push(this.transformElement(a[b]))}return this},invoke:function(g,f){var b=this,e=b.elements,h=e.length,d,c,a;if(a!==0){d=(b.isLite?Ext.dom.Fly:Ext.dom.Element).prototype;for(a=0;a<h;a++){c=e[a];if(c){d[g].apply(b.getElement(c),f)}}}return b},item:function(c){var b=this.elements[c],a=null;if(b){a=this.getElement(b)}return a},slice:function(a,b){return Ext.Array.slice(this.elements,a,b)},each:function(g,e){var c=this,d=c.elements,f=d.length,b,a;for(b=0;b<f;b++){a=d[b];if(a){a=this.getElement(a);if(g.call(e||a,a,c,b)===!1){break}}}return c},fill:function(b){var a=this;a.elements=[];a.add(b);return a},insert:function(a,b){Ext.Array.insert(this.elements,a,b)},filter:function(e){var b=this,f=b.elements,i=f.length,g=[],d=0,h=typeof e=='function',c,a;for(;d<i;d++){a=f[d];c=!1;if(a){a=b.getElement(a);if(h){c=e.call(a,a,b,d)!==!1}else {c=a.is(e)}if(c){g.push(b.transformElement(a))}}}b.elements=g;return b},indexOf:function(a){return Ext.Array.indexOf(this.elements,this.transformElement(a))},replaceElement:function(d,a,e){var c=!isNaN(d)?d:this.indexOf(d),b;if(c>-1){a=Ext.getDom(a);if(e){b=this.elements[c];b.parentNode.insertBefore(a,b);Ext.removeNode(b)}Ext.Array.splice(this.elements,c,1,a)}return this},clear:function(c){var d=this,b=d.elements,a=b.length-1;if(c){for(;a>=0;a--){Ext.removeNode(b[a])}}this.elements=[]},addElements:function(a,d){if(!a){return this}if(typeof a==='string'){a=Ext.dom.Element.selectorFunction(a,d)}var e=this.elements,c=a.length,b;for(b=0;b<c;b++){e.push(Ext.get(a[b]))}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(b,g){b=[].concat(b);var f=this,e=f.elements,h=b.length,a,c,d;for(d=0;d<h;d++){a=b[d];if(c=e[a]||e[a=f.indexOf(a)]){if(g){if(c.dom){c.destroy()}else {Ext.removeNode(c)}}Ext.Array.erase(e,a,1)}}return f},destroy:function(){return this.invoke('destroy',arguments)}},1,0,0,0,0,0,[Ext.dom,'CompositeElementLite',Ext,'CompositeElementLite'],function(a){var b=a.prototype;a.importElementMethods();b.on=b.addListener});Ext.define('Ext.overrides.dom.Element',function(){var a,e=window,b=document,f='hidden',h='isClipped',k='overflow',i='overflow-x',j='overflow-y',q='originalClip',G='height',J='width',s='visibility',d='display',l='none',E='offsets',m='originalDisplay',v='visibilityMode',B='isVisible',O='x-hidden-offsets',C=['<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(''),x=/(?:<script([^>]*)?>)((\n|\r|.)*?)(?:<\/script>)/ig,M=/(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)/ig,K=/\ssrc=([\'\"])(.*?)\1/i,z=/\S/,I=/\stype=([\'\"])(.*?)\1/i,L=/^-ms-/,F=/(-[a-z])/gi,N=function(b,a){return a.charAt(1).toUpperCase()},w='x-masked',n='x-masked-relative',p='x-mask-msg',H=/^body/i,o={},u=function(c){var b=c.getData(),a=b[m];if(a===undefined){b[m]=a=''}return a},y=function(d){var c=d.getData(),b=c[v];if(b===undefined){c[v]=b=a.VISIBILITY}return b},g=b.createRange?b.createRange():null,D={INPUT:!0,TEXTAREA:!0};if(Ext.isIE8){var A=Ext.removeNode,t=b.createElement('div'),c=[],r=Ext.Function.createBuffered(function(){var b=c.length,a;for(a=0;a<b;a++){t.appendChild(c[a])}t.innerHTML='';c.length=0},10);Ext.removeNode=function(a){a=a.dom||a;A(a);c[c.length]=a;r()}}return {override:'Ext.dom.Element',mixins:[Ext.util.Animate],skipGarbageCollection:!1,_init:function(b){a=b},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:!0,IFRAME:!0,EMBED:!0,INPUT:!0,OBJECT:!0,SELECT:!0,TEXTAREA:!0,HTML:Ext.isIE?!0:!1},naturallyTabbableTags:{BUTTON:!0,IFRAME:!0,INPUT:!0,SELECT:!0,TEXTAREA:!0,OBJECT:Ext.isIE8m?!0:!1},tabbableSavedFlagAttribute:'data-tabindexsaved',tabbableSavedAttribute:'data-savedtabindex',normalize:function(a){if(a==='float'){a=Ext.supports.Float?'cssFloat':'styleFloat'}return o[a]||(o[a]=a.replace(L,'ms-').replace(F,N))},getViewportHeight:function(){return Ext.isIE9m?b.documentElement.clientHeight:e.innerHeight},getViewportWidth:function(){return !Ext.isStrict&&!Ext.isOpera?document.body.clientWidth:Ext.isIE9m?b.documentElement.clientWidth:e.innerWidth}},addClsOnClick:function(b,c,f){var a=this,d=a.dom,e=Ext.isFunction(c);a.on('mousedown',function(){if(e&&c.call(f||a,a)===!1){return !1}Ext.fly(d).addCls(b);var h=Ext.getDoc(),g=function(){Ext.fly(d).removeCls(b);h.removeListener('mouseup',g)};h.on('mouseup',g)});return a},addClsOnFocus:function(b,c,f){var a=this,d=a.dom,e=Ext.isFunction(c);a.on('focus',function(){if(e&&c.call(f||a,a)===!1){return !1}Ext.fly(d).addCls(b)});a.on('blur',function(){Ext.fly(d).removeCls(b)});return a},addClsOnOver:function(b,c,f){var a=this,d=a.dom,e=Ext.isFunction(c);a.hover(function(){if(e&&c.call(f||a,a)===!1){return}Ext.fly(d).addCls(b)},function(){Ext.fly(d).removeCls(b)});return a},addKeyListener:function(a,d,c){var b;if(typeof a!=='object'||Ext.isArray(a)){b={target:this,key:a,fn:d,scope:c}}else {b={target:this,key:a.key,shift:a.shift,ctrl:a.ctrl,alt:a.alt,fn:d,scope:c}}return new Ext.util.KeyMap(b)},addKeyMap:function(a){return new Ext.util.KeyMap(Ext.apply({target:this},a))},afterAnimate:function(){var a=this.shadow;if(a&&!a.disabled&&!a.animate){a.show()}},anchorAnimX:function(a){var b=a==='l'?'right':'left';this.dom.style[b]='0px'},anim:function(b){if(!Ext.isObject(b)){return b?{}:!1}var c=this,d=b.duration||Ext.fx.Anim.prototype.duration,e=b.easing||'ease',a;if(b.stopAnimation){c.stopAnimation()}Ext.applyIf(b,Ext.fx.Manager.getFxDefaults(c.id));Ext.fx.Manager.setFxDefaults(c.id,{delay:0});a={target:c.dom,remove:b.remove,alternate:b.alternate||!1,duration:d,easing:e,callback:b.callback,listeners:b.listeners,iterations:b.iterations||1,scope:b.scope,block:b.block,concurrent:b.concurrent,delay:b.delay||0,paused:!0,keyframes:b.keyframes,from:b.from||{},to:Ext.apply({},b)};Ext.apply(a.to,b.to);delete a.to.to;delete a.to.from;delete a.to.remove;delete a.to.alternate;delete a.to.keyframes;delete a.to.iterations;delete a.to.listeners;delete a.to.target;delete a.to.paused;delete a.to.callback;delete a.to.scope;delete a.to.duration;delete a.to.easing;delete a.to.concurrent;delete a.to.block;delete a.to.stopAnimation;delete a.to.delay;return a},animate:function(a){var c=this,f=c.dom.id||Ext.id(c.dom),d,b,e;if(!Ext.fx.Manager.hasFxBlock(f)){if(a.listeners){d=a.listeners;delete a.listeners}if(a.internalListeners){a.listeners=a.internalListeners;delete a.internalListeners}e=a.autoEnd;delete a.autoEnd;b=new Ext.fx.Anim(c.anim(a));b.on({afteranimate:'afterAnimate',beforeanimate:'beforeAnimate',scope:c,single:!0});if(d){b.on(d)}Ext.fx.Manager.queueFx(b);if(e){b.jumpToEnd()}}return c},beforeAnimate:function(){var a=this.shadow;if(a&&!a.disabled&&!a.animate){a.hide()}},boxWrap:function(a){a=a||'x-box';var b=Ext.get(this.insertHtml('beforeBegin',"<div class='"+a+"' role='presentation'>"+Ext.String.format(C,a)+'</div>'));b.selectNode('.'+a+'-mc').appendChild(this.dom);return b},clean:function(g){var c=this,d=c.dom,e=c.getData(),a=d.firstChild,f=-1,b;if(e.isCleaned&&g!==!0){return c}while(a){b=a.nextSibling;if(a.nodeType===3){if(!z.test(a.nodeValue)){d.removeChild(a)}else {if(b&&b.nodeType===3){a.appendData(Ext.String.trim(b.data));d.removeChild(b);b=a.nextSibling;a.nodeIndex=++f}}}else {Ext.fly(a,'_clean').clean();a.nodeIndex=++f}a=b}e.isCleaned=!0;return c},empty:g?function(){var a=this.dom;if(a.firstChild){g.setStartBefore(a.firstChild);g.setEndAfter(a.lastChild);g.deleteContents()}}:function(){var a=this.dom;while(a.lastChild){a.removeChild(a.lastChild)}},clearListeners:function(){this.removeAnchor();arguments.callee.$previous.call(this)},clearPositioning:function(a){a=a||'';return this.setStyle({left:a,right:a,top:a,bottom:a,'z-index':'',position:'static'})},createProxy:function(b,e,f){b=typeof b==='object'?b:{tag:'div',role:'presentation',cls:b};var d=this,c=e?Ext.DomHelper.append(e,b,!0):Ext.DomHelper.insertBefore(d.dom,b,!0);c.setVisibilityMode(a.DISPLAY);c.hide();if(f&&d.setBox&&d.getBox){c.setBox(d.getBox())}return c},clearOpacity:function(){return this.setOpacity('')},clip:function(){var a=this,c=a.getData(),b;if(!c[h]){c[h]=!0;b=a.getStyle([k,i,j]);c[q]={o:b[k],x:b[i],y:b[j]};a.setStyle(k,f);a.setStyle(i,f);a.setStyle(j,f)}return a},destroy:function(){var b=this,a=b.dom,f=b.getData(),e,d;if(a&&b.isAnimate){b.stopAnimation()}arguments.callee.$previous.call(this);if(a&&Ext.isIE8&&a.window!=a&&a.nodeType!==9&&a.tagName!=='BODY'&&a.tagName!=='HTML'){c[c.length]=a;r()}if(f){e=f.maskEl;d=f.maskMsg;if(e){e.destroy()}if(d){d.destroy()}}},enableDisplayMode:function(c){var b=this;b.setVisibilityMode(a.DISPLAY);if(c!==undefined){b.getData()[m]=c}return b},fadeIn:function(c){var a=this,b=a.dom;a.animate(Ext.apply({},c,{opacity:1,internalListeners:{beforeanimate:function(d){var a=Ext.fly(b,'_anim');if(a.isStyle('display','none')){a.setDisplayed('')}else {a.show()}}}}));return this},fadeOut:function(a){var b=this,c=b.dom;a=Ext.apply({opacity:0,internalListeners:{afteranimate:function(d){if(c&&d.to.opacity===0){var b=Ext.fly(c,'_anim');if(a.useDisplay){b.setDisplayed(!1)}else {b.hide()}}}}},a);b.animate(a);return b},fixDisplay:function(){var a=this;if(a.isStyle(d,l)){a.setStyle(s,f);a.setStyle(d,u(a));if(a.isStyle(d,l)){a.setStyle(d,'block')}}},frame:function(b,c,a){var d=this,f=d.dom,e;b=b||'#C3DAF9';c=c||1;a=a||{};e=function(){var g=Ext.fly(f,'_anim'),i=this,d,e,h;g.show();d=g.getBox();e=Ext.getBody().createChild({role:'presentation',id:g.dom.id+'-anim-proxy',style:{position:'absolute','pointer-events':'none','z-index':35000,border:'0px solid '+b}});h=new Ext.fx.Anim({target:e,duration:a.duration||1000,iterations:c,from:{top:d.y,left:d.x,borderWidth:0,opacity:1,height:d.height,width:d.width},to:{top:d.y-20,left:d.x-20,borderWidth:10,opacity:0,height:d.height+40,width:d.width+40}});h.on('afteranimate',function(){e.destroy();i.end()})};d.animate({duration:Math.max(a.duration,500)*2||2000,listeners:{beforeanimate:{fn:e}},callback:a.callback,scope:a.scope});return d},getColor:function(h,f,c){var a=this.getStyle(h),b=c||c===''?c:'#',d,g,e=0;if(!a||/transparent|inherit/.test(a)){return f}if(/^r/.test(a)){a=a.slice(4,a.length-1).split(',');g=a.length;for(;e<g;e++){d=parseInt(a[e],10);b+=(d<16?'0':'')+d.toString(16)}}else {a=a.replace('#','');b+=a.length===3?a.replace(/^(\w)(\w)(\w)$/,'$1$1$2$2$3$3'):a}return b.length>5?b.toLowerCase():f},getLoader:function(){var c=this,b=c.getData(),a=b.loader;if(!a){b.loader=a=new Ext.ElementLoader({target:c})}return a},getPositioning:function(c){var a=this.getStyle(['left','top','position','z-index']),b=this.dom;if(c){if(a.left==='auto'){a.left=b.offsetLeft+'px'}if(a.top==='auto'){a.top=b.offsetTop+'px'}}return a},ghost:function(a,e){var b=this,d=b.dom,c;a=a||'b';c=function(){var h=Ext.fly(d,'_anim'),g=h.getWidth(),f=h.getHeight(),c=h.getXY(),i=h.getPositioning(),b={opacity:0};switch(a){case 't':b.y=c[1]-f;break;case 'l':b.x=c[0]-g;break;case 'r':b.x=c[0]+g;break;case 'b':b.y=c[1]+f;break;case 'tl':b.x=c[0]-g;b.y=c[1]-f;break;case 'bl':b.x=c[0]-g;b.y=c[1]+f;break;case 'br':b.x=c[0]+g;b.y=c[1]+f;break;case 'tr':b.x=c[0]+g;b.y=c[1]-f;break;}this.to=b;this.on('afteranimate',function(){var b=Ext.fly(d,'_anim');if(b){b.hide();b.clearOpacity();b.setPositioning(i)}})};b.animate(Ext.applyIf(e||{},{duration:500,easing:'ease-out',listeners:{beforeanimate:c}}));return b},hide:function(a){if(typeof a==='string'){this.setVisible(!1,a);return this}this.setVisible(!1,this.anim(a));return this},highlight:function(l,b){var h=this,f=h.dom,k={},j,i,c,d,a,g;b=b||{};d=b.listeners||{};c=b.attr||'backgroundColor';k[c]=l||'ffff9c';if(!b.to){i={};i[c]=b.endColor||h.getColor(c,'ffffff','')}else {i=b.to}b.listeners=Ext.apply(Ext.apply({},d),{beforeanimate:function(){j=f.style[c];var h=Ext.fly(f,'_anim');h.clearOpacity();h.show();a=d.beforeanimate;if(a){g=a.fn||a;return g.apply(a.scope||d.scope||e,arguments)}},afteranimate:function(){if(f){f.style[c]=j}a=d.afteranimate;if(a){g=a.fn||a;g.apply(a.scope||d.scope||e,arguments)}}});h.animate(Ext.apply({},b,{duration:1000,easing:'ease-in',from:k,to:i}));return h},hover:function(d,e,c,b){var a=this;a.on('mouseenter',d,c||a.dom,b);a.on('mouseleave',e,c||a.dom,b);return a},initDD:function(c,b,a){var d=new Ext.dd.DD(Ext.id(this.dom),c,b);return Ext.apply(d,a)},initDDProxy:function(c,b,a){var d=new Ext.dd.DDProxy(Ext.id(this.dom),c,b);return Ext.apply(d,a)},initDDTarget:function(c,b,a){var d=new Ext.dd.DDTarget(Ext.id(this.dom),c,b);return Ext.apply(d,a)},isFocusable:function(){var a=this.dom,b=!1,c;if(a&&!a.disabled){c=a.nodeName;b=!!Ext.Element.naturallyFocusableTags[c]||(c==='A'||c==='LINK')&&!!a.href||a.getAttribute('tabindex')!=null||a.contentEditable==='true';if(Ext.isIE8&&c==='INPUT'&&a.type==='hidden'){b=!1}b=b&&this.isVisible(!0)}return b},isInputField:function(){var a=this.dom,b=a.contentEditable;if(D[a.tagName]&&a.type!=='button'||(b===''||b==='true')){return !0}return !1},isTabbable:function(){var c=this.dom,a=!1,e,d,b;if(c&&!c.disabled){e=c.nodeName;b=c.getAttribute('tabindex');d=b!=null;b-=0;if(e==='A'||e==='LINK'){if(c.href){a=d&&b<0?!1:!0}else {if(c.contentEditable==='true'){a=!d||d&&b>=0?!0:!1}else {a=d&&b>=0?!0:!1}}}else {if(c.contentEditable==='true'||Ext.Element.naturallyTabbableTags[e]){a=d&&b<0?!1:!0}else {if(d&&b>=0){a=!0}}}if(Ext.isIE8&&e==='INPUT'&&c.type==='hidden'){a=!1}a=a&&(!this.component||this.component.isVisible(!0))&&this.isVisible(!0)}return a},isMasked:function(g){var b=this,f=b.getData(),e=f.maskEl,d=f.maskMsg,c=!1,a;if(e&&e.isVisible()){if(d){d.center(b)}c=!0}else {if(g){a=b.findParentNode();if(a){return Ext.fly(a).isMasked(g)}}}return c},isScrollable:function(){var a=this.dom;return a.scrollHeight>a.clientHeight||a.scrollWidth>a.clientWidth},load:function(a){this.getLoader().load(a);return this},mask:function(h,f,i){var a=this,e=a.dom,g=a.getData(),c=g.maskEl,d;if(!(H.test(e.tagName)&&a.getStyle('position')==='static')){a.addCls(n)}if(c){c.destroy()}c=Ext.DomHelper.append(e,{role:'presentation',cls:'x-mask x-border-box',children:{role:'presentation',cls:f?p+' '+f:p,cn:{tag:'div',role:'presentation',cls:'x-mask-msg-inner',cn:{tag:'div',role:'presentation',cls:'x-mask-msg-text',html:h||''}}}},!0);d=Ext.get(c.dom.firstChild);g.maskEl=c;a.addCls(w);c.setDisplayed(!0);if(typeof h==='string'){d.setDisplayed(!0);d.center(a)}else {d.setDisplayed(!1)}if(e===b.body){c.addCls('x-mask-fixed')}else {a.saveTabbableState()}a.saveChildrenTabbableState();if(Ext.isIE9m&&e!==b.body&&a.isStyle('height','auto')){c.setSize(undefined,i||a.getHeight())}return c},monitorMouseLeave:function(e,d,f){var c=this,b,a={mouseleave:function(a){if(Ext.isIE9m){a.enableIEAsync()}b=Ext.defer(d,e,f||c,[a])},mouseenter:function(){clearTimeout(b)}};c.on(a);return a},puff:function(a){var c=this,e=c.dom,d,b=c.getBox(),f=c.getStyle(['width','height','left','right','top','bottom','position','z-index','font-size','opacity'],!0);a=Ext.applyIf(a||{},{easing:'ease-out',duration:500,useDisplay:!1});d=function(){var c=Ext.fly(e,'_anim');c.clearOpacity();c.show();this.to={width:b.width*2,height:b.height*2,x:b.x-b.width/2,y:b.y-b.height/2,opacity:0,fontSize:'200%'};this.on('afteranimate',function(){var b=Ext.fly(e,'_anim');if(b){if(a.useDisplay){b.setDisplayed(!1)}else {b.hide()}b.setStyle(f);Ext.callback(a.callback,a.scope)}})};c.animate({duration:a.duration,easing:a.easing,listeners:{beforeanimate:{fn:d}}});return c},selectable:function(){var b=this;b.dom.unselectable='';b.removeCls(a.unselectableCls);b.addCls(a.selectableCls);return b},setCapture:function(){var a=this.dom;if(Ext.isIE9m&&a.setCapture){a.setCapture()}},setDisplayed:function(b){var a=this;if(typeof b==='boolean'){b=b?u(a):l}a.setStyle(d,b);if(a.shadow||a.shim){a.setUnderlaysVisible(b!==l)}return a},setHeight:function(c,a){var b=this;if(!a||!b.anim){arguments.callee.$previous.apply(this,arguments)}else {if(!Ext.isObject(a)){a={}}b.animate(Ext.applyIf({to:{height:c}},a))}return b},setHorizontal:function(){var a=this,b=a.verticalCls;delete a.vertical;if(b){delete a.verticalCls;a.removeCls(b)}delete a.setWidth;delete a.setHeight;if(!Ext.isIE8){delete a.getWidth;delete a.getHeight}delete a.styleHooks},updateText:function(d){var e=this,c,a;if(c){a=c.firstChild;if(!a||(a.nodeType!==3||a.nextSibling)){a=b.createTextNode();e.empty();c.appendChild(a)}if(d){a.data=d}}},setHtml:function(c,i,g){var a=this,f,d,h;if(!a.dom){return a}c=c||'';d=a.dom;if(i!==!0){d.innerHTML=c;Ext.callback(g,a);return a}f=Ext.id();c+='<span id="'+f+'" role="presentation"></span>';h=Ext.interval(function(){var o,d,l,k,j,n,m;if(!(n=b.getElementById(f))){return !1}clearInterval(h);Ext.removeNode(n);o=Ext.getHead().dom;while(d=x.exec(c)){l=d[1];k=l?l.match(K):!1;if(k&&k[2]){m=b.createElement('script');m.src=k[2];j=l.match(I);if(j&&j[2]){m.type=j[2]}o.appendChild(m)}else {if(d[2]&&d[2].length>0){(e.execScript||e['eval'])(d[2])}}}Ext.callback(g,a)},20);d.innerHTML=c.replace(M,'');return a},setOpacity:function(c,b){var a=this;if(!a.dom){return a}if(!b||!a.anim){a.setStyle('opacity',c)}else {if(typeof b!='object'){b={duration:350,easing:'ease-in'}}a.animate(Ext.applyIf({to:{opacity:c}},b))}return a},setPositioning:function(a){return this.setStyle(a)},setVertical:function(e,d){var b=this,c=a.prototype;b.vertical=!0;if(d){b.addCls(b.verticalCls=d)}b.setWidth=c.setHeight;b.setHeight=c.setWidth;if(!Ext.isIE8){b.getWidth=c.getHeight;b.getHeight=c.getWidth}b.styleHooks=e===270?c.verticalStyleHooks270:c.verticalStyleHooks90},setSize:function(c,e,d){var b=this;if(Ext.isObject(c)){d=e;e=c.height;c=c.width}if(!d||!b.anim){b.dom.style.width=a.addUnits(c);b.dom.style.height=a.addUnits(e);if(b.shadow||b.shim){b.syncUnderlays()}}else {if(d===!0){d={}}b.animate(Ext.applyIf({to:{width:c,height:e}},d))}return b},setVisible:function(c,e){var b=this,h=b.dom,g=y(b);if(typeof e==='string'){switch(e){case d:g=a.DISPLAY;break;case s:g=a.VISIBILITY;break;case E:g=a.OFFSETS;break;}b.setVisibilityMode(g);e=!1}if(!e||!b.anim){if(g===a.DISPLAY){return b.setDisplayed(c)}else {if(g===a.OFFSETS){b[c?'removeCls':'addCls'](O)}else {if(g===a.VISIBILITY){b.fixDisplay();h.style.visibility=c?'':f}}}}else {if(c){b.setOpacity(0.01);b.setVisible(!0)}if(!Ext.isObject(e)){e={duration:350,easing:'ease-in'}}b.animate(Ext.applyIf({callback:function(){if(!c){Ext.fly(h).setVisible(!1).setOpacity(1)}},to:{opacity:c?1:0}},e))}b.getData()[B]=c;if(b.shadow||b.shim){b.setUnderlaysVisible(c)}return b},setWidth:function(c,a){var b=this;if(!a||!b.anim){arguments.callee.$previous.apply(this,arguments)}else {if(!Ext.isObject(a)){a={}}b.animate(Ext.applyIf({to:{width:c}},a))}return b},setX:function(b,a){return this.setXY([b,this.getY()],a)},setXY:function(b,a){var c=this;if(!a||!c.anim){arguments.callee.$previous.call(this,b)}else {if(!Ext.isObject(a)){a={}}c.animate(Ext.applyIf({to:{x:b[0],y:b[1]}},a))}return this},setY:function(b,a){return this.setXY([this.getX(),b],a)},show:function(a){if(typeof a==='string'){this.setVisible(!0,a);return this}this.setVisible(!0,this.anim(a));return this},slideIn:function(a,c,d){var b=this,g=b.dom,h=g.style,j,e,f,i;a=a||'t';c=c||{};j=function(){var p=this,o=c.listeners,m=Ext.fly(g,'_anim'),j,n,l,k;if(!d){m.fixDisplay()}j=m.getBox();if((a=='t'||a=='b')&&j.height===0){j.height=g.scrollHeight}else {if((a=='l'||a=='r')&&j.width===0){j.width=g.scrollWidth}}n=m.getStyle(['width','height','left','right','top','bottom','position','z-index'],!0);m.setSize(j.width,j.height);if(c.preserveScroll){f=m.cacheScrollValues()}k=m.wrap({role:'presentation',id:Ext.id()+'-anim-wrap-for-'+m.dom.id,style:{visibility:d?'visible':'hidden'}});i=k.dom.parentNode;k.setPositioning(m.getPositioning());if(k.isStyle('position','static')){k.position('relative')}m.clearPositioning('auto');k.clip();if(f){f()}m.setStyle({visibility:'',position:'absolute'});if(d){k.setSize(j.width,j.height)}switch(a){case 't':l={from:{width:j.width+'px',height:'0px'},to:{width:j.width+'px',height:j.height+'px'}};h.bottom='0px';break;case 'l':l={from:{width:'0px',height:j.height+'px'},to:{width:j.width+'px',height:j.height+'px'}};b.anchorAnimX(a);break;case 'r':l={from:{x:j.x+j.width,width:'0px',height:j.height+'px'},to:{x:j.x,width:j.width+'px',height:j.height+'px'}};b.anchorAnimX(a);break;case 'b':l={from:{y:j.y+j.height,width:j.width+'px',height:'0px'},to:{y:j.y,width:j.width+'px',height:j.height+'px'}};break;case 'tl':l={from:{x:j.x,y:j.y,width:'0px',height:'0px'},to:{width:j.width+'px',height:j.height+'px'}};h.bottom='0px';b.anchorAnimX('l');break;case 'bl':l={from:{y:j.y+j.height,width:'0px',height:'0px'},to:{y:j.y,width:j.width+'px',height:j.height+'px'}};b.anchorAnimX('l');break;case 'br':l={from:{x:j.x+j.width,y:j.y+j.height,width:'0px',height:'0px'},to:{x:j.x,y:j.y,width:j.width+'px',height:j.height+'px'}};b.anchorAnimX('r');break;case 'tr':l={from:{x:j.x+j.width,width:'0px',height:'0px'},to:{x:j.x,width:j.width+'px',height:j.height+'px'}};h.bottom='0px';b.anchorAnimX('r');break;}k.show();e=Ext.apply({},c);delete e.listeners;e=new Ext.fx.Anim(Ext.applyIf(e,{target:k,duration:500,easing:'ease-out',from:d?l.to:l.from,to:d?l.from:l.to}));e.on('afteranimate',function(){var b=Ext.fly(g,'_anim');b.setStyle(n);if(d){if(c.useDisplay){b.setDisplayed(!1)}else {b.hide()}}if(k.dom){if(k.dom.parentNode){k.dom.parentNode.insertBefore(b.dom,k.dom)}else {i.appendChild(b.dom)}k.destroy()}if(f){f()}p.end()});if(o){e.on(o)}};b.animate({duration:c.duration?Math.max(c.duration,500)*2:1000,listeners:{beforeanimate:j}});return b},slideOut:function(a,b){return this.slideIn(a,b,!0)},swallowEvent:function(a,f){var b=this,c,d,e=function(b){b.stopPropagation();if(f){b.preventDefault()}};if(Ext.isArray(a)){d=a.length;for(c=0;c<d;c++){b.on(a[c],e)}return b}b.on(a,e);return b},switchOff:function(a){var c=this,b=c.dom,d;a=Ext.applyIf(a||{},{easing:'ease-in',duration:500,remove:!1,useDisplay:!1});d=function(){var c=Ext.fly(b,'_anim'),h=this,d=c.getSize(),g=c.getXY(),e,f;c.clearOpacity();c.clip();f=c.getPositioning();e=new Ext.fx.Animator({target:b,duration:a.duration,easing:a.easing,keyframes:{33:{opacity:0.3},66:{height:1,y:g[1]+d.height/2},100:{width:1,x:g[0]+d.width/2}}});e.on('afteranimate',function(){var c=Ext.fly(b,'_anim');if(a.useDisplay){c.setDisplayed(!1)}else {c.hide()}c.clearOpacity();c.setPositioning(f);c.setSize(d);h.end()})};c.animate({duration:Math.max(a.duration,500)*2,listeners:{beforeanimate:{fn:d}},callback:a.callback,scope:a.scope});return c},syncContent:function(d){d=Ext.getDom(d);var i=d.childNodes,k=i.length,e=this.dom,j=e.childNodes,n=j.length,b,c,a,g,f,l,h,m=e._extData;if(Ext.isIE9m&&e.mergeAttributes){e.mergeAttributes(d,!0);e.src=d.src}else {f=d.attributes;l=f.length;for(b=0;b<l;b++){h=f[b].name;if(h!=='id'){e.setAttribute(h,f[b].value)}}}if(m){m.isSynchronized=!1}if(k!==n){e.innerHTML=d.innerHTML;return}for(b=0;b<k;b++){a=i[b];c=j[b];g=a.nodeType;if(g!==c.nodeType||g===1&&a.tagName!==c.tagName){e.innerHTML=d.innerHTML;return}if(g===3){c.data=a.data}else {if(a.id&&c.id!==a.id){c.id=a.id}c.style.cssText=a.style.cssText;c.className=a.className;Ext.fly(c,'_syncContent').syncContent(a)}}},toggle:function(b){var a=this;a.setVisible(!a.isVisible(),a.anim(b));return a},unmask:function(){var a=this,e=a.getData(),c=e.maskEl,d;if(c){d=c.dom.style;if(d.clearExpression){d.clearExpression('width');d.clearExpression('height')}if(c){c.destroy();delete e.maskEl}a.removeCls([w,n])}a.restoreChildrenTabbableState();if(a.dom!==b.body){a.restoreTabbableState()}},unclip:function(){var b=this,c=b.getData(),a;if(c[h]){c[h]=!1;a=c[q];if(a.o){b.setStyle(k,a.o)}if(a.x){b.setStyle(i,a.x)}if(a.y){b.setStyle(j,a.y)}}return b},translate:function(a,b,c){if(Ext.supports.CssTransforms&&!Ext.isIE9m){arguments.callee.$previous.apply(this,arguments)}else {if(a!=null){this.dom.style.left=a+'px'}if(b!=null){this.dom.style.top=b+'px'}}},unselectable:function(){var b=this;if(Ext.isOpera){b.dom.unselectable='on'}b.removeCls(a.selectableCls);b.addCls(a.unselectableCls);return b},privates:{needsTabIndex:function(){var a=this.dom,b,c;if(a){b=a.nodeName;c=!!Ext.Element.naturallyFocusableTags[b]||(b==='A'||b==='LINK')&&!!a.href||a.getAttribute('tabindex')!=null||a.contentEditable==='true';return !c}},findTabbableElements:function(a,e,f,d){a=a!=undefined?a:!0;var b=this,c;c=b.selectTabbableElements(a,e,f,d);if(b.isTabbable()){c.unshift(a?b.dom:b)}return c},selectTabbableElements:function(c,l,m,k){var b=[],h,d,i,a,f,g,e,j;c=c!=undefined?c:!0;h=this.dom.querySelectorAll(l||Ext.Element.tabbableSelector);f=h.length;if(!f){return b}if(k){a=f-1;g=0;e=-1}else {a=0;g=f-1;e=1}for(;;a+=e){if(e>0&&a>g||e<0&&a<g){break}d=h[a];j=d.getAttribute('tabindex')-0;if(!(j<0)){i=c?Ext.fly(d):Ext.get(d);if(i.isTabbable()){b.push(c?d:i)}}if(b.length>=m){return b}}return b},selectFirstTabbableElement:function(b,a){var c=this.selectTabbableElements(b,a,1,!1);return c[0]},selectLastTabbableElement:function(c,b){var a=this.selectTabbableElements(!0,b,1,!0)[0];return c!==!1?a:Ext.get(a)},saveTabbableState:function(b){var c=Ext.Element.tabbableSavedFlagAttribute,a=this.dom;if(a.hasAttribute(c)){return}b=b||Ext.Element.tabbableSavedAttribute;if(a.hasAttribute('tabindex')){a.setAttribute(b,a.getAttribute('tabindex'))}else {a.setAttribute(b,'none')}a.setAttribute('tabindex',-1);a.setAttribute(c,!0);return this},restoreTabbableState:function(b){var d=Ext.Element.tabbableSavedFlagAttribute,a=this.dom,c;b=b||Ext.Element.tabbableSavedAttribute;if(!a.hasAttribute(d)||!a.hasAttribute(b)){return}c=a.getAttribute(b);if(c==='none'){a.removeAttribute('tabindex')}else {a.setAttribute('tabindex',c)}a.removeAttribute(b);a.removeAttribute(d);return this},saveChildrenTabbableState:function(e){var a,c,b,d;if(this.dom){a=this.selectTabbableElements();for(b=0,d=a.length;b<d;b++){c=Ext.fly(a[b]);c.saveTabbableState(e)}}return a},restoreChildrenTabbableState:function(b,a){var d,c,e;if(this.dom){b=b||Ext.Element.tabbableSavedAttribute;a=a||this.dom.querySelectorAll('['+b+']');for(c=0,e=a.length;c<e;c++){d=Ext.fly(a[c]);d.restoreTabbableState(b)}}return a}},deprecated:{'4.0':{methods:{pause:function(b){var a=this;Ext.fx.Manager.setFxDefaults(a.id,{delay:b});return a},scale:function(c,a,b){this.animate(Ext.apply({},b,{width:c,height:a}));return this},shift:function(a){this.animate(a);return this}}},'4.2':{methods:{moveTo:function(b,c,a){return this.setXY([b,c],a)},setBounds:function(d,e,c,b,a){return this.setBox({x:d,y:e,width:c,height:b},a)},setLeftTop:function(d,e){var b=this,c=b.dom.style;c.left=a.addUnits(d);c.top=a.addUnits(e);if(b.shadow||b.shim){b.syncUnderlays()}return b},setLocation:function(b,c,a){return this.setXY([b,c],a)}}},'5.0':{methods:{getAttributeNS:function(a,b){return this.getAttribute(b,a)},getCenterXY:function(){return this.getAlignToXY(b,'c-c')},getComputedHeight:function(){return Math.max(this.dom.offsetHeight,this.dom.clientHeight)||parseFloat(this.getStyle(G))||0},getComputedWidth:function(){return Math.max(this.dom.offsetWidth,this.dom.clientWidth)||parseFloat(this.getStyle(J))||0},getStyleSize:function(){var d=this,e=this.dom,h=e===b||e===b.body,c,g,f;if(h){return {width:a.getViewportWidth(),height:a.getViewportHeight()}}c=d.getStyle(['height','width'],!0);if(c.width&&c.width!=='auto'){g=parseFloat(c.width)}if(c.height&&c.height!=='auto'){f=parseFloat(c.height)}return {width:g||d.getWidth(!0),height:f||d.getHeight(!0)}},isBorderBox:function(){return !0},isDisplayed:function(){return !this.isStyle('display','none')},focusable:'isFocusable'}}}}}(),function(){var g=Ext.dom.Element,a=g.prototype,s=!Ext.isIE8,f=document,p=f.defaultView,o=/alpha\(opacity=(.*)\)/i,v=/^\s+|\s+$/g,b=a.styleHooks,e=Ext.supports,d,c,l,m,i,j,n;a._init(g);delete a._init;Ext.plainTableCls='x-table-plain';Ext.plainListCls='x-list-plain';if(Ext.CompositeElementLite){Ext.CompositeElementLite.importElementMethods()}b.opacity={name:'opacity',afterSet:function(d,b,c){var a=c.shadow;if(a){a.setOpacity(b)}}};if(!e.Opacity&&Ext.isIE){Ext.apply(b.opacity,{get:function(d){var c=d.style.filter,b,a;if(c.match){b=c.match(o);if(b){a=parseFloat(b[1]);if(!isNaN(a)){return a?a/100:0}}}return 1},set:function(d,a){var b=d.style,c=b.filter.replace(o,'').replace(v,'');b.zoom=1;if(typeof a==='number'&&a>=0&&a<1){a*=100;b.filter=c+(c.length?' ':'')+'alpha(opacity='+a+')'}else {b.filter=c}}})}if(!e.matchesSelector){var q=/^([a-z]+|\*)?(?:\.([a-z][a-z\-_0-9]*))?$/i,u=/\-/g,h,r=function(a,c){var b=new RegExp('(?:^|\\s+)'+c.replace(u,'\\-')+'(?:\\s+|$)');if(a&&a!=='*'){a=a.toUpperCase();return function(d){return d.tagName===a&&b.test(d.className)}}return function(d){return b.test(d.className)}},t=function(a){a=a.toUpperCase();return function(b){return b.tagName===a}},k={};a.matcherCache=k;a.is=function(a){if(!a){return !0}var b=this.dom,g,e,d,c,j,l,i;if(b.nodeType!==1){return !1}if(!(d=Ext.isFunction(a)?a:k[a])){if(!(e=a.match(q))){c=b.parentNode;if(!c){j=!0;c=h||(h=f.createDocumentFragment());h.appendChild(b)}l=Ext.Array.indexOf(Ext.fly(c,'_is').query(a),b)!==-1;if(j){h.removeChild(b)}return l}i=e[1];g=e[2];k[a]=d=g?r(i,g):t(i)}return d(b)}}if(!p||!p.getComputedStyle){a.getStyle=function(o,p){var j=this,e=j.dom,n=typeof o!=='string',a=o,i=a,r=1,m=p,l=j.styleHooks,q,h,d,c,f,b,k;if(n){d={};a=i[0];k=0;if(!(r=i.length)){return d}}if(!e||e.documentElement){return d||''}h=e.style;if(p){b=h}else {b=e.currentStyle;if(!b){m=!0;b=h}}do{c=l[a];if(!c){l[a]=c={name:g.normalize(a)}}if(c.get){f=c.get(e,j,m,b)}else {q=c.name;f=b[q]}if(!n){return f}d[a]=f;a=i[++k]}while(k<r);return d}}if(Ext.isIE8){n=function(c,d,b,a){if(a[this.styleName]==='none'){return '0px'}return a[this.name]};l=['Top','Right','Bottom','Left'];m=l.length;while(m--){i=l[m];j='border'+i+'Width';b['border-'+i.toLowerCase()+'-width']=b[j]={name:j,styleName:'border'+i+'Style',get:n}}}Ext.apply(Ext,{enableGarbageCollector:!0,isBorderBox:!0,useShims:!1,getDetachedBody:function(){var a=Ext.detachedBodyEl;if(!a){a=f.createElement('div');Ext.detachedBodyEl=a=new Ext.dom.Fly(a);a.isDetachedBody=!0}return a},getElementById:function(c){var a=f.getElementById(c),b;if(!a&&(b=Ext.detachedBodyEl)){a=b.dom.querySelector(Ext.makeIdSelector(c))}return a},addBehaviors:function(e){if(!Ext.isReady){Ext.onInternalReady(function(){Ext.addBehaviors(e)})}else {var b={},c,d,a;for(d in e){if((c=d.split('@'))[1]){a=c[0];if(!b[a]){b[a]=Ext.fly(document).select(a,!0)}b[a].on(c[1],e[d])}}b=null}}});if(Ext.isIE9m){Ext.getElementById=function(c){var a=f.getElementById(c),b;if(!a&&(b=Ext.detachedBodyEl)){a=b.dom.all[c]}return a};a.getById=function(d,g){var e=this.dom,b=null,a,c;if(e){c=s&&f.getElementById(d)||e.all[d];if(c){if(g){b=c}else {a=Ext.cache[d];if(a){if(a.skipGarbageCollection||!Ext.isGarbage(a.dom)){b=a}else {a.destroy()}}b=b||new Ext.Element(c)}}}return b}}else {if(!f.querySelector){Ext.getDetachedBody=Ext.getBody;Ext.getElementById=function(a){return f.getElementById(a)};a.getById=function(c,b){var a=f.getElementById(c);return b?a:a?Ext.get(a):null}}}if(Ext.isIE&&!(Ext.isIE9p&&f.documentMode>=9)){a.getAttribute=function(a,c){var d=this.dom,b;if(c){b=typeof d[c+':'+a];if(b!=='undefined'&&b!=='unknown'){return d[c+':'+a]||null}return null}if(a==='for'){a='htmlFor'}return d[a]||null}}Ext.onInternalReady(function(){var o=/^(?:transparent|(?:rgba[(](?:\s*\d+\s*[,]){3}\s*0\s*[)]))$/i,h=[],p=a.setWidth,n=a.setHeight,m=a.setSize,q=/^\d+(?:\.\d*)?px$/i,i,l,k,j;if(e.FixedTableWidthBug){b.width={name:'width',set:function(c,e,f){var a=c.style,b=f._needsTableWidthFix,d=a.display;if(b){a.display='none'}a.width=e;if(b){c.scrollWidth;a.display=d}}};a.setWidth=function(g,b){var a=this,e=a.dom,c=e.style,d=a._needsTableWidthFix,f=c.display;if(d&&!b){c.display='none'}p.call(a,g,b);if(d&&!b){e.scrollWidth;c.display=f}return a};a.setSize=function(h,g,b){var a=this,e=a.dom,c=e.style,d=a._needsTableWidthFix,f=c.display;if(d&&!b){c.display='none'}m.call(a,h,g,b);if(d&&!b){e.scrollWidth;c.display=f}return a}}if(Ext.isIE8){b.height={name:'height',set:function(e,b,f){var a=f.component,d,c;if(a&&a._syncFrameHeight&&this===a.el){c=a.frameBody.dom.style;if(q.test(b)){d=a.getFrameInfo();if(d){c.height=parseInt(b,10)-d.height+'px'}}else {if(!b||b==='auto'){c.height=''}}}e.style.height=b}};a.setHeight=function(b,e){var a=this.component,d,c;if(a&&a._syncFrameHeight&&this===a.el){c=a.frameBody.dom.style;if(!b||b==='auto'){c.height=''}else {d=a.getFrameInfo();if(d){c.height=b-d.height+'px'}}}return n.call(this,b,e)};a.setSize=function(f,b,e){var a=this.component,d,c;if(a&&a._syncFrameHeight&&this===a.el){c=a.frameBody.dom.style;if(!b||b==='auto'){c.height=''}else {d=a.getFrameInfo();if(d){c.height=b-d.height+'px'}}}return m.call(this,f,b,e)}}Ext.getDoc().on('selectstart',function(h,a){var e=g.selectableCls,d=g.unselectableCls,b=a&&a.tagName;b=b&&b.toLowerCase();if(b==='input'||b==='textarea'){return}while(a&&a.nodeType===1&&a!==f.documentElement){var c=Ext.fly(a);if(c.hasCls(e)){return}if(c.hasCls(d)){h.stopEvent();return}a=a.parentNode}});function fixTransparent(d,e,c,b){var a=b[this.name]||'';return o.test(a)?'transparent':a}function makeSelectionRestoreFn(a,b,c){return function(){a.selectionStart=b;a.selectionEnd=c}}function getRightMarginFixCleaner(i){var h=e.DisplayChangeInputSelectionBug,f=e.DisplayChangeTextAreaSelectionBug,a,d,b,c;if(h||f){a=g.getActiveElement();d=a&&a.tagName;if(f&&d==='TEXTAREA'||h&&d==='INPUT'&&a.type==='text'){if(Ext.fly(i).isAncestor(a)){b=a.selectionStart;c=a.selectionEnd;if(Ext.isNumber(b)&&Ext.isNumber(c)){return makeSelectionRestoreFn(a,b,c)}}}}return Ext.emptyFn}function fixRightMargin(c,g,f,e){var b=e.marginRight,a,d;if(b!=='0px'){a=c.style;d=a.display;a.display='inline-block';b=(f?e:c.ownerDocument.defaultView.getComputedStyle(c,null)).marginRight;a.display=d}return b}function fixRightMarginAndInputFocus(b,h,g,f){var c=f.marginRight,a,d,e;if(c!=='0px'){a=b.style;d=getRightMarginFixCleaner(b);e=a.display;a.display='inline-block';c=(g?f:b.ownerDocument.defaultView.getComputedStyle(b,'')).marginRight;a.display=e;d()}return c}if(!e.RightMargin){b.marginRight=b['margin-right']={name:'marginRight',get:e.DisplayChangeInputSelectionBug||e.DisplayChangeTextAreaSelectionBug?fixRightMarginAndInputFocus:fixRightMargin}}if(!e.TransparentColor){i=['background-color','border-color','color','outline-color'];for(l=i.length;l--;){k=i[l];j=g.normalize(k);b[k]=b[j]={name:j,get:fixTransparent}}}a.verticalStyleHooks90=d=Ext.Object.chain(b);a.verticalStyleHooks270=c=Ext.Object.chain(b);d.width=b.height||{name:'height'};d.height=b.width||{name:'width'};d['margin-top']={name:'marginLeft'};d['margin-right']={name:'marginTop'};d['margin-bottom']={name:'marginRight'};d['margin-left']={name:'marginBottom'};d['padding-top']={name:'paddingLeft'};d['padding-right']={name:'paddingTop'};d['padding-bottom']={name:'paddingRight'};d['padding-left']={name:'paddingBottom'};d['border-top']={name:'borderLeft'};d['border-right']={name:'borderTop'};d['border-bottom']={name:'borderRight'};d['border-left']={name:'borderBottom'};c.width=b.height||{name:'height'};c.height=b.width||{name:'width'};c['margin-top']={name:'marginRight'};c['margin-right']={name:'marginBottom'};c['margin-bottom']={name:'marginLeft'};c['margin-left']={name:'marginTop'};c['padding-top']={name:'paddingRight'};c['padding-right']={name:'paddingBottom'};c['padding-bottom']={name:'paddingLeft'};c['padding-left']={name:'paddingTop'};c['border-top']={name:'borderRight'};c['border-right']={name:'borderBottom'};c['border-bottom']={name:'borderLeft'};c['border-left']={name:'borderTop'};if(!Ext.scopeCss){h.push('x-body')}if(e.Touch){h.push('x-touch')}if(Ext.isIE&&Ext.isIE9m){h.push('x-ie','x-ie9m');h.push('x-ie8p');if(Ext.isIE8){h.push('x-ie8')}else {h.push('x-ie9','x-ie9p')}if(Ext.isIE8m){h.push('x-ie8m')}}if(Ext.isIE10){h.push('x-ie10')}if(Ext.isIE11){h.push('x-ie11')}if(Ext.isGecko){h.push('x-gecko')}if(Ext.isOpera){h.push('x-opera')}if(Ext.isOpera12m){h.push('x-opera12m')}if(Ext.isWebKit){h.push('x-webkit')}if(Ext.isSafari){h.push('x-safari')}if(Ext.isChrome){h.push('x-chrome')}if(Ext.isMac){h.push('x-mac')}if(Ext.isLinux){h.push('x-linux')}if(!e.CSS3BorderRadius){h.push('x-nbr')}if(!e.CSS3LinearGradient){h.push('x-nlg')}if(e.Touch){h.push('x-touch')}Ext.getBody().addCls(h)},null,{priority:1500})});Ext.cmd.derive('Ext.GlobalEvents',Ext.mixin.Observable,{alternateClassName:'Ext.globalEvents',observableType:'global',singleton:!0,resizeBuffer:100,idleEventMask:{mousemove:1,touchmove:1,pointermove:1,MSPointerMove:1,unload:1},constructor:function(){var a=this;a.callParent();Ext.onInternalReady(function(){a.attachListeners()})},attachListeners:function(){Ext.get(window).on('resize',this.fireResize,this,{buffer:this.resizeBuffer})},fireResize:function(){var a=this,d=Ext.Element,c=d.getViewportWidth(),b=d.getViewportHeight();if(a.curHeight!==b||a.curWidth!==c){a.curHeight=b;a.curWidth=c;a.fireEvent('resize',c,b)}}},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(a,d,i,f,h,g,e){var c,b;if(a==='ready'){b=d}else {if(typeof a!=='string'){for(c in a){if(c==='ready'){b=a[c]}}}}if(b){Ext.onReady(b)}this.callParent([a,d,i,f,h,g,e])}}}}});Ext.USE_NATIVE_JSON=!1;Ext.JSON=new function(){var me=this,hasNative=window.JSON&&JSON.toString()==='[object JSON]',useHasOwn=!!{}.hasOwnProperty,pad=function(a){return a<10?'0'+a:a},doDecode=function(json){return eval('('+json+')')},doEncode=function(a,b){if(a===null||a===undefined){return 'null'}else {if(Ext.isDate(a)){return me.encodeDate(a)}else {if(Ext.isString(a)){if(Ext.isMSDate(a)){return me.encodeMSDate(a)}else {return me.encodeString(a)}}else {if(typeof a==='number'){return isFinite(a)?String(a):'null'}else {if(Ext.isBoolean(a)){return String(a)}else {if(a.toJSON){return a.toJSON()}else {if(Ext.isArray(a)){return encodeArray(a,b)}else {if(Ext.isObject(a)){return encodeObject(a,b)}else {if(typeof a==='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(a){return '"'+a.replace(charToReplace,function(b){var c=m[b];return typeof c==='string'?c:'\\u'+('0000'+b.charCodeAt(0).toString(16)).slice(-4)})+'"'},encodeMSDate=function(a){return '"'+a+'"'},encodeArrayPretty=function(e,d){var f=e.length,c=d+' ',g=','+c,a=['[',c],b;for(b=0;b<f;b+=1){a.push(me.encodeValue(e[b],c),g)}a[a.length-1]=d+']';return a.join('')},encodeObjectPretty=function(e,f){var d=f+' ',g=','+d,b=['{',d],c,a;for(c in e){a=e[c];if(!useHasOwn||e.hasOwnProperty(c)){if(typeof a==='function'||a===undefined){continue}b.push(me.encodeValue(c)+': '+me.encodeValue(a,d),g)}}b[b.length-1]=f+'}';return b.join('')},encodeArray=function(c,d){if(d){return encodeArrayPretty(c,d)}var a=['[',''],e=c.length,b;for(b=0;b<e;b+=1){a.push(me.encodeValue(c[b]),',')}a[a.length-1]=']';return a.join('')},encodeObject=function(d,e){if(e){return encodeObjectPretty(d,e)}var b=['{',''],c,a;for(c in d){a=d[c];if(!useHasOwn||d.hasOwnProperty(c)){if(typeof a==='function'||a===undefined){continue}b.push(me.encodeValue(c),':',me.encodeValue(a),',')}}b[b.length-1]='}';return b.join('')};me.encodeString=encodeString;me.encodeValue=doEncode;me.encodeDate=function(a){return '"'+a.getFullYear()+'-'+pad(a.getMonth()+1)+'-'+pad(a.getDate())+'T'+pad(a.getHours())+':'+pad(a.getMinutes())+':'+pad(a.getSeconds())+'"'};me.encode=function(a){if(hasNative&&Ext.USE_NATIVE_JSON){return JSON.stringify(a)}return me.encodeValue(a)};me.decode=function(a,b){try{if(hasNative&&Ext.USE_NATIVE_JSON){return JSON.parse(a)}return doDecode(a)}catch(c){if(b){return null}Ext.Error.raise({sourceClass:'Ext.JSON',sourceMethod:'decode',msg:"You're trying to decode an invalid JSON String: "+a})}};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:!0,defaultDateFormat:'m/d/Y',thousandSeparator:',',decimalSeparator:'.',currencyPrecision:2,currencySign:'$',percentSign:'%',currencyAtEnd:!1,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(a){return a!==undefined?a:''},defaultValue:function(a,b){return a!==undefined&&a!==''?a:b},substr:'ab'.substr(-1)!='b'?function(d,a,c){var b=String(d);return a<0?b.substr(Math.max(b.length+a,0),c):b.substr(a,c)}:function(c,b,a){return String(c).substr(b,a)},lowercase:function(a){return String(a).toLowerCase()},uppercase:function(a){return String(a).toUpperCase()},usMoney:function(b){return a.currency(b,'$',2)},currency:function(b,f,c,h){var d='',e=',0',g=0;b=b-0;if(b<0){b=-b;d='-'}c=Ext.isDefined(c)?c:a.currencyPrecision;e+=c>0?'.':'';for(;g<c;g++){e+='0'}b=a.number(b,e);if((h||a.currencyAtEnd)===!0){return Ext.String.format('{0}{1}{2}',d,b,f||a.currencySign)}else {return Ext.String.format('{0}{1}{2}',d,f||a.currencySign,b)}},date:function(a,b){if(!a){return ''}if(!Ext.isDate(a)){a=new Date(Date.parse(a))}return Ext.Date.dateFormat(a,b||Ext.Date.defaultFormat)},dateRenderer:function(b){return function(c){return a.date(c,b)}},hex:function(c,b){var a=parseInt(c||0,10).toString(16);if(b){if(b<0){b=-b;if(a.length>b){a=a.substring(a.length-b)}}while(a.length<b){a='0'+a}}return a},or:function(b,a){return b||a},pick:function(a,d,c){if(Ext.isNumber(a)){var b=arguments[a+1];if(b){return b}}return a?c:d},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 a=1024,b=1048576,c=1073741824;return function(d){var e;if(d<a){if(d===1){e='1 byte'}else {e=d+' bytes'}}else {if(d<b){e=Math.round(d*10/a)/10+' KB'}else {if(d<c){e=Math.round(d*10/b)/10+' MB'}else {e=Math.round(d*10/c)/10+' GB'}}}return e}}(),math:function(){var a={};return function(c,b){if(!a[b]){a[b]=Ext.functionFactory('v','return v '+b+';')}return a[b](c)}}(),round:function(c,a){var b=Number(c);if(typeof a==='number'){a=Math.pow(10,a);b=Math.round(c*a)/a}else {if(a===undefined){b=Math.round(b)}}return b},number:function(k,c){if(!c){return k}if(isNaN(k)){return ''}var j=a.formatFns[c];if(!j){var n=c,o=a.thousandSeparator,g=a.decimalSeparator,d=0,l='',h,e,i,f,b,m;if(c.substr(c.length-2)==='/i'){if(!a.I18NFormatCleanRe||a.lastDecimalSeparator!==g){a.I18NFormatCleanRe=new RegExp('[^\\d\\'+g+']','g');a.lastDecimalSeparator=g}c=c.substr(0,c.length-2);h=c.indexOf(o)!==-1;e=c.replace(a.I18NFormatCleanRe,'').split(g)}else {h=c.indexOf(',')!==-1;e=c.replace(a.formatCleanRe,'').split('.')}i=c.replace(a.formatPattern,'');if(e.length>2){}else {if(e.length===2){d=e[1].length;f=e[1].match(a.hashRe);if(f){m=f[0].length;l='trailingZeroes=new RegExp(Ext.String.escapeRegex(utilFormat.decimalSeparator) + "*0{0,'+m+'}$")'}}}b=['var utilFormat=Ext.util.Format,extNumber=Ext.Number,neg,absVal,fnum,parts'+(h?',thousandSeparator,thousands=[],j,n,i':'')+(i?',formatString="'+c+'",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, '+d+');',l,';'];if(h){if(d){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(d){b[b.length]='fnum += utilFormat.decimalSeparator+parts[1];'}}else {if(d){b[b.length]='if(utilFormat.decimalSeparator!=="."){parts=fnum.split(".");fnum=parts[0]+utilFormat.decimalSeparator+parts[1];}'}}b[b.length]='if(neg&&fnum!=="'+(d?'0.'+Ext.String.repeat('0',d):'0')+'") { fnum="-"+fnum; }';if(f){b[b.length]='fnum=fnum.replace(trailingZeroes,"");'}b[b.length]='return ';if(i){b[b.length]='formatString.replace(formatPattern, fnum);'}else {b[b.length]='fnum;'}b[b.length]='};';j=a.formatFns[n]=Ext.functionFactory('Ext',b.join(''))(Ext)}return j(k)},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(a){if(typeof a==='object'){var c=[],b;for(b in a){if(a.hasOwnProperty(b)){c.push(b,'="',b==='style'?Ext.DomHelper.generateStyles(a[b],null,!0):Ext.htmlEncode(a[b]),'" ')}}a=c.join('')}return a||''},plural:function(c,b,a){return c+' '+(c===1?b:a?a:b+'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(b){b=b||0;if(typeof b==='number'){return {top:b,right:b,bottom:b,left:b}}var a=b.split(' '),c=a.length;if(c===1){a[1]=a[2]=a[3]=a[0]}else {if(c===2){a[2]=a[0];a[3]=a[1]}else {if(c===3){a[3]=a[1]}}}return {top:parseInt(a[0],10)||0,right:parseInt(a[1],10)||0,bottom:parseInt(a[2],10)||0,left:parseInt(a[3],10)||0}}}},1,0,0,0,0,0,[Ext.util,'Format'],0);Ext.cmd.derive('Ext.Template',Ext.Base,{inheritableStatics:{from:function(a,b){a=Ext.getDom(a);return new this(a.value||a.innerHTML,b||'')}},useEval:Ext.isGecko,constructor:function(g){var d=this,c=arguments,f=[],e,b=c.length,a;d.initialConfig={};if(b===1&&Ext.isArray(g)){c=g;b=c.length}if(b>1){for(e=0;e<b;e++){a=c[e];if(typeof a==='object'){Ext.apply(d.initialConfig,a);Ext.apply(d,a)}else {f.push(a)}}}else {f.push(g)}d.html=f.join('')},isTemplate:!0,disableFormats:!1,tokenRe:/\{(?:(?:(\d+)|([a-z_][\w\-]*))(?::([a-z_\.]+)(?:\(([^\)]*?)?\))?)?)\}/gi,apply:function(b){var a=this;if(a.compiled){if(!a.fn){a.compile()}return a.fn(b).join('')}return a.evaluate(b)},evaluate:function(a){var b=this,e=!b.disableFormats,c=Ext.util.Format,d=b;function fn(i,h,b,g,f){if(b==null||b===''){b=h}if(g&&e){if(f){f=[a[b]].concat(Ext.functionFactory('return ['+f+'];')())}else {f=[a[b]]}if(g.substr(0,5)==='this.'){return d[g.substr(5)].apply(d,f)}else {if(c[g]){return c[g].apply(c,f)}else {return i}}}else {return a[b]!==undefined?a[b]:''}}return b.html.replace(b.tokenRe,fn)},applyOut:function(c,b){var a=this;if(a.compiled){if(!a.fn){a.compile()}b.push.apply(b,a.fn(c))}else {b.push(a.apply(c))}return b},applyTemplate:function(){return this.apply.apply(this,arguments)},set:function(c,b){var a=this;a.html=c;a.compiled=!!b;a.fn=null;return a},compileARe:/\\/g,compileBRe:/(\r\n|\n)/g,compileCRe:/'/g,compile:function(){var a=this,b;b=a.html.replace(a.compileARe,'\\\\').replace(a.compileBRe,'\\n').replace(a.compileCRe,"\\'").replace(a.tokenRe,a.regexReplaceFn.bind(a));b=(this.disableFormats!==!0?'var fm=Ext.util.Format;':'')+(a.useEval?'$=':'return')+" function(v){return ['"+b+"'];};";a.fn=a.useEval?a.evalCompiled(b):(new Function('Ext',b))(Ext);a.compiled=!0;return a},evalCompiled:function($){eval($);return $},regexReplaceFn:function(d,b,e,a,c){if(b==null||b===''){b='"'+e+'"'}else {if(this.stringFormat){b=parseInt(b)+1}}if(a&&this.disableFormats!==!0){c=c?','+c:'';if(a.substr(0,5)==='this.'){a=a+'('}else {if(Ext.util.Format[a]){a='fm.'+a+'('}else {return d}}return "',"+a+'v['+b+']'+c+"),'"}else {return "',v["+b+"] == undefined ? '' : v["+b+"],'"}},insertFirst:function(c,b,a){return this.doInsert('afterBegin',c,b,a)},insertBefore:function(c,b,a){return this.doInsert('beforeBegin',c,b,a)},insertAfter:function(c,b,a){return this.doInsert('afterEnd',c,b,a)},append:function(c,b,a){return this.doInsert('beforeEnd',c,b,a)},doInsert:function(d,e,c,b){var a=Ext.DomHelper.insertHtml(d,Ext.getDom(e),this.apply(c));return b?Ext.get(a):a},overwrite:function(d,c,b){var a=Ext.DomHelper.overwrite(Ext.getDom(d),this.apply(c));return b?Ext.get(a):a}},1,0,0,0,0,0,[Ext,'Template'],function(d){var e=/\{\d+\}/,b=function(a){if(e.test(a)){a=new d(a,c);return function(){return a.apply(arguments)}}else {return function(){return a}}},c={useFormat:!1,compiled:!0,stringFormat:!0},a={};Ext.String.format=Ext.util.Format.format=function(c){var e=a[c]||(a[c]=b(c));return e.apply(this,arguments)}});Ext.cmd.derive('Ext.mixin.Inheritable',Ext.Mixin,{mixinConfig:{id:'inheritable'},getInherited:function(h){var a=this,b=h&&a.inheritedStateInner||a.inheritedState,g=a.ownerCt||a.initOwnerCt,e=a.isContainer,c,d,f;if(!b||b.invalid){c=a.getRefOwner();if(g){f=a.ownerLayout===g.layout}a.inheritedState=b=Ext.Object.chain(c?c.getInherited(f):Ext.rootInheritedState);if(e){a.inheritedStateInner=d=Ext.Object.chain(b)}a.initInheritedState(b,d);b=e&&h?a.inheritedStateInner:a.inheritedState}return b},getInheritedConfig:function(b,e){var a=this.inheritedState,d,c;if(!a||a.invalid){a=this.getInherited()}c=a[b];if(e&&a.hasOwnProperty(b)){d=c;delete a[b];c=a[b];a[b]=d}return c},fixReference:function(){var b=this,a;if(b.reference){a=b.lookupReferenceHolder();if(a){a.attachReference(b)}}},resolveListenerScope:function(f,d){var a=this,e=typeof d==='boolean',b=Ext._namedScopes[f],c;if(!b){c=a.getInheritedConfig('defaultListenerScope',e?d:!0)||f||a}else {if(b.isController){c=a.getInheritedConfig('controller',e?d:!b.isSelf)}else {if(b.isSelf){c=a.getInheritedConfig('defaultListenerScope',e&&d)||a}else {if(b.isThis){c=a}}}}return c||null},resolveSatelliteListenerScope:function(e,d){var c=this,b=Ext._namedScopes[d],a;if(!b){a=c.getInheritedConfig('defaultListenerScope')||d||c}else {if(b.isController){a=c.getInheritedConfig('controller')}else {if(b.isSelf){a=c.getInheritedConfig('defaultListenerScope')||e}else {if(b.isThis){a=e}}}}return a||null},lookupReferenceHolder:function(a){return this.getInheritedConfig('referenceHolder',a!==!1)||null},getRefOwner:function(){return this.ownerCt||this.initOwnerCt||this.ownerCmp||this.floatParent},invalidateInheritedState:function(){var a=this.inheritedState;if(a){a.invalid=!0;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:!0},controller:null,defaultListenerScope:!1,publishes:{$value:null,lazy:!0,merge:function(a,b){return this.mergeSets(a,b)}},reference:null,session:{$value:null,lazy:!0},twoWayBindable:{$value:null,lazy:!0,merge:function(a,b){return this.mergeSets(a,b)}},viewModel:{$value:null,lazy:!0}},defaultBindProperty:null,validRefRe:/^[a-z_][a-z0-9_]*$/i,initInheritedState:function(b){var a=this,f=a.getReference(),c=a.getController(),d=a.getConfig('viewModel',!0),e=a.getConfig('session',!0),g=a.getDefaultListenerScope();if(c){b.controller=c}if(g){b.defaultListenerScope=a}else {if(c){b.defaultListenerScope=c}}if(d){if(!d.isViewModel){d=a}b.viewModel=d}if(e){if(!e.isSession){e=a}b.session=e}if(f){a.referenceKey=(b.referencePath||'')+f;a.viewModelKey=(b.viewModelPath||'')+f}},lookupController:function(a){return this.getInheritedConfig('controller',a)||null},lookupSession:function(b){var a=b?null:this.getSession();if(!a){a=this.getInheritedConfig('session',b);if(a&&!a.isSession){a=a.getInherited().session=a.getSession()}}return a||null},lookupViewModel:function(b){var a=b?null:this.getViewModel();if(!a){a=this.getInheritedConfig('viewModel',b);if(a&&!a.isViewModel){a=a.getInherited().viewModel=a.getViewModel()}}return a||null},publishState:function(b,a){var c=this,g=c.viewModelKey,d=c.publishedState,i=c.getBind(),e=i&&b&&i[b],j=0,f,h,k;if(e&&!e.syncing&&!e.isReadOnly()){if(!(e.calls===0&&(a==null||a===c.getInitialConfig()[b]))){e.setValue(a)}}if(!g||!(h=c.getPublishes())){return}if(!(k=c.lookupViewModel())){return}if(b&&d){if(!h[b]){return}if(!(a&&a.constructor===Object)&&!(a instanceof Array)){if(d[b]===a){return}}g+='.';g+=b}else {d=d||(c.publishedState={});for(f in h){++j;if(f===b){d[f]=a}else {d[f]=c[f]}}if(!j){return}a=d}k.set(g,a)},privates:{addBindableUpdater:function(d){var b=this,e=b.self.$config.configs,a=e[d],c;if(a&&!b.hasOwnProperty(c=a.names.update)){b[c]=a.bindableUpdater||(a.root.bindableUpdater=b.makeBindableUpdater(a))}},applyBind:function(e,d){var c=this,i=c.lookupViewModel(),g=c.getTwoWayBindable(),h=c._getBindTemplateScope,a,b,f;if(!d||typeof d==='string'){d={}}if(Ext.isString(e)){a=e;e={};e[c.defaultBindProperty]=a}for(b in e){f=e[b];a=d[b];if(a&&typeof a!=='string'){a.destroy();a=null}if(f){a=i.bind(f,c.onBindNotify,c);a._config=Ext.Config.get(b);a.getTemplateScope=h}d[b]=a;if(g&&g[b]&&!a.isReadOnly()){c.addBindableUpdater(b)}}return d},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(a){if(!a){return null}if(!a.isSession){var b=this.lookupSession(!0),c=a===!0?{}:a;if(b){a=b.spawn(c)}else {a=new Ext.data['Session'](c)}}return a},applyViewModel:function(a){var c=this,b,d;if(!(a&&a.isViewModel)){b={parent:c.lookupViewModel(!0)};b.session=c.getSession();if(!d&&!b.parent){b.session=c.lookupSession()}if(a){if(a.constructor===Object){Ext.apply(b,a)}else {if(typeof a==='string'){b.type=a}}}a=Ext.Factory.viewModel(b)}return a},_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(d,f){var c=this,e=c.self.prototype[b];if(e){e.call(c,d,f)}c.publishState(a.name,d)}},onBindNotify:function(b,c,a){a.syncing=a.syncing+1||1;this[a._config.names.set](b);--a.syncing},removeBindings:function(){var a=this.bind,c,b;if(a&&typeof a!=='string'){for(c in a){b=a[c];b.destroy();b._config=b.getTemplateScope=null}}this.bind=null},updateSession:function(a){var b=this.getInherited();if(a){b.session=a}else {delete b.session}},updateViewModel:function(a){var c=this.getInherited(),b=this.getController();if(a){c.viewModel=a;a.setView(this);if(b){b.initViewModel(a)}}else {delete c.viewModel}}}},0,0,0,0,0,0,[Ext.mixin,'Bindable'],0);Ext.cmd.derive('Ext.Widget',Ext.Evented,{isWidget:!0,element:{reference:'element'},observableType:'component',eventedConfig:{width:null,height:null},template:[],constructor:function(b){var a=this;a.initId(b);a.initElement();a.mixins.observable.constructor.call(a,b);Ext.ComponentManager.register(a)},afterCachedConfig:function(){var c=this,j=c.self.prototype,f=c.referenceList,i=c.renderElement.dom,d,h,a,b,g,e;j.renderTemplate=d=document.createDocumentFragment();d.appendChild(i.cloneNode(!0));e=d.querySelectorAll('[id]');for(a=0,b=e.length;a<b;a++){h=e[a];h.removeAttribute('id')}for(a=0,b=f.length;a<b;a++){g=f[a];c[g].dom.removeAttribute('reference')}},applyWidth:function(a){return this.filterLengthValue(a)},applyHeight:function(a){return this.filterLengthValue(a)},destroy:function(){var a=this,d=a.referenceList,c,e,b;for(c=0,e=d.length;c<e;c++){b=d[c];if(a.hasOwnProperty(b)){a[b].destroy();a[b]=null}}Ext.Evented.prototype.destroy.call(this);Ext.ComponentManager.unregister(a)},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 a=this,j=a.self.prototype,m=a.getId(),l=a.referenceList=[],i=!0,c,d,h,g,f,k,b,e;if(j.hasOwnProperty('renderTemplate')){c=a.renderTemplate.cloneNode(!0);d=c.firstChild}else {i=!1;c=document.createDocumentFragment();d=Ext.Element.create(a.processElementConfig.call(j),!0);c.appendChild(d)}g=c.querySelectorAll('[reference]');for(f=0,k=g.length;f<k;f++){b=g[f];e=b.getAttribute('reference');if(i){b.removeAttribute('reference')}if(e==='element'){b.id=m;h=a.el=a.addElementReference(e,b)}else {a.addElementReferenceOnDemand(e,b)}l.push(e)}if(d===h.dom){a.renderElement=h}else {a.addElementReferenceOnDemand('renderElement',d)}},is:function(a){return Ext.ComponentQuery.is(this,a)},isXType:function(a,b){return b?Ext.Array.indexOf(this.xtypes,a)!==-1:!!this.xtypesMap[a]},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:!0})}},addElementReference:function(f,g){var b=this,c=b[f]=Ext.get(g),a=b._elementListeners[f],e,d;c.skipGarbageCollection=!0;c.component=b;if(a){a=Ext.clone(a);a.scope=b;for(e in a){d=a[e];if(typeof d==='object'){d.scope=b}}c.on(a)}return c},detachFromBody:function(){Ext.getDetachedBody().appendChild(this.element);this.isDetached=!0},doAddListener:function(d,e,c,a,b,g,f){if(a&&'element' in a){this[a.element].doAddListener(d,e,c||this,a,b)}Ext.Evented.prototype.doAddListener.call(this,d,e,c,a,b,g,f)},filterLengthValue:function(a){if(a==='auto'||!a&&a!==0){return null}return a},getFocusEl:function(){return this.element},initElementListeners:function(a){var c=this,k=c.self.superclass,d=k._elementListeners,h=a.reference,i=a.children,f,b,g,j,e;if(c.hasOwnProperty('_elementListeners')){f=c._elementListeners}else {f=c._elementListeners=d?Ext.Object.chain(d):{}}if(h){b=a.listeners;if(b){if(d){g=d[h];if(g){b=Ext.Object.chain(g);Ext.apply(b,a.listeners)}}f[h]=b;a.listeners=null}}if(i){for(e=0,j=i.length;e<j;e++){c.initElementListeners(i[e])}}},initId:function(d){var a=this,c=a.config,b=d&&d.id||c&&c.id;if(b){a.setId(b);a.id=b}else {a.getId()}},processElementConfig:function(){var a=this,c=a.self.superclass,b;if(a.hasOwnProperty('_elementConfig')){b=a._elementConfig}else {b=a._elementConfig=a.getElementConfig();if(c.isWidget){a.processElementConfig.call(c)}a.initElementListeners(b)}return b},reattachToBody:function(){this.isDetached=!1}}},1,['widget'],['widget'],{'widget':!0},['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:!1,isComponent:!0,liquidLayout:!0,rendered:!0,rendering:!0,config:{renderTo:null},cachedConfig:{baseCls:'x-widget'},constructor:function(c){var b=this,a;(arguments.callee.$previous||Ext.Evented.prototype.constructor).call(this,c);b.getComponentLayout();a=b.getRenderTo();if(a){b.render(a)}},addCls:function(a){this.el.addCls(a)},addClsWithUI:function(a){this.el.addCls(a)},afterComponentLayout:Ext.emptyFn,finishRender:function(){this.rendering=!1;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(c,e,d){var a=this,b=a.inheritedState;a.ownerCt=c;if(b&&d){a.invalidateInheritedState()}if(a.reference){a.fixReference()}},onRemoved:function(c){var a=this,b;if(a.reference){b=a.lookupReferenceHolder();if(b){b.clearReference(a)}}if(!c){a.removeBindings()}if(a.inheritedState&&!c){a.invalidateInheritedState()}a.ownerCt=a.ownerLayout=null},parseBox:function(a){return Ext.Element.parseBox(a)},removeCls:function(a){this.el.removeCls(a)},removeClsWithUI:function(a){this.el.removeCls(a)},render:function(c,e){var d=this,a=d.element,f=Ext.Component.prototype,b;if(!d.ownerCt||d.floating){if(Ext.scopeCss){a.addCls(f.rootCls)}a.addCls(f.borderBoxCls)}if(e){b=c.childNodes[e];if(b){Ext.fly(c).insertBefore(a,b);return}}Ext.fly(c).appendChild(a)},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)},focus:Ext.emptyFn,isFocusable:Ext.emptyFn},function(b){var a=b.prototype;if(Ext.isIE8){a.addElementReferenceOnDemand=a.addElementReference}});Ext.cmd.derive('Ext.util.XTemplateParser',Ext.Base,{constructor:function(a){Ext.apply(this,a)},doTpl:Ext.emptyFn,parse:function(g){var b=this,q=g.length,s={elseif:'elif'},p=b.topRe,r=b.actionsRe,j,e,d,c,h,n,l,m,i,f,a,k,o;b.level=0;b.stack=e=[];for(j=0;j<q;j=f){p.lastIndex=j;c=p.exec(g);if(!c){b.doText(g.substring(j,q));break}i=c.index;f=p.lastIndex;if(j<i){d=g.substring(j,i);if(!(o&&Ext.String.trim(d)==='')){b.doText(d)}}o=!1;if(c[1]){f=g.indexOf('%}',i+2);b.doEval(g.substring(i+2,f));f+=2}else {if(c[2]){f=g.indexOf(']}',i+2);b.doExpr(g.substring(i+2,f));f+=2}else {if(c[3]){b.doTag(c[3])}else {if(c[4]){a=null;while((m=r.exec(c[4]))!==null){d=m[2]||m[3];if(d){d=Ext.String.htmlDecode(d);h=m[1];h=s[h]||h;a=a||{};n=a[h];if(typeof n=='string'){a[h]=[n,d]}else {if(n){a[h].push(d)}else {a[h]=d}}}}if(!a){if(b.elseRe.test(c[4])){b.doElse()}else {if(b.defaultRe.test(c[4])){b.doDefault()}else {b.doTpl();e.push({type:'tpl'})}}}else {if(a['if']){b.doIf(a['if'],a);e.push({type:'if'})}else {if(a['switch']){b.doSwitch(a['switch'],a);e.push({type:'switch'});o=!0}else {if(a['case']){b.doCase(a['case'],a)}else {if(a['elif']){b.doElseIf(a['elif'],a)}else {if(a['for']){++b.level;if(k=b.propRe.exec(c[4])){a.propName=k[1]||k[2]}b.doFor(a['for'],a);e.push({type:'for',actions:a})}else {if(a['foreach']){++b.level;if(k=b.propRe.exec(c[4])){a.propName=k[1]||k[2]}b.doForEach(a['foreach'],a);e.push({type:'foreach',actions:a})}else {if(a.exec){b.doExec(a.exec,a);e.push({type:'exec',actions:a})}}}}}}}}}else {if(c[0].length===5){e.push({type:'tpl'})}else {l=e.pop();b.doEnd(l.type,l.actions);if(l.type=='for'||l.type=='foreach'){--b.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:!0,propNameRe:/^[\w\d\$]*$/,compile:function(c){var a=this,b=a.generate(c);return a.useEval?a.evalTpl(b):(new Function('Ext',b))(Ext)},generate:function(d){var a=this,b='var fm=Ext.util.Format,ts=Object.prototype.toString;',c;a.maxLevel=0;a.body=['var c0=values, a0='+a.createArrayTest(0)+', p0=parent, n0=xcount, i0=xindex, k0, v;\n'];if(a.definitions){if(typeof a.definitions==='string'){a.definitions=[a.definitions,b]}else {a.definitions.push(b)}}else {a.definitions=[b]}a.switches=[];a.parse(d);a.definitions.push((a.useEval?'$=':'return')+' function ('+a.fnArgs+') {',a.body.join(''),'}');c=a.definitions.join('\n');a.definitions.length=a.body.length=a.switches.length=0;delete a.definitions;delete a.body;delete a.switches;return c},doText:function(a){var b=this,c=b.body;a=a.replace(b.aposRe,"\\'").replace(b.newLineRe,'\\n');if(b.useIndex){c.push("out[out.length]='",a,"'\n")}else {c.push("out.push('",a,"')\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(b){var a=this.parseTag(b);if(a){this.doExpr(a)}else {this.doText('{'+b+'}')}},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(b){var a=this,c;if(b==='.'||b==='#'){c=b==='.'?'values':'xindex';a.body.push('switch (',c,') {\n')}else {if(a.propNameRe.test(b)){a.body.push('switch (',a.parseTag(b),') {\n')}else {a.body.push('switch (',a.addFn(b),a.callFn,') {\n')}}a.switches.push(0)},doCase:function(e){var a=this,c=Ext.isArray(e)?e:[e],d=a.switches.length-1,f,b;if(a.switches[d]){a.body.push('break;\n')}else {a.switches[d]++}for(b=0,d=c.length;b<d;++b){f=a.intRe.exec(c[b]);c[b]=f?f[1]:"'"+c[b].replace(a.aposRe,"\\'")+"'"}a.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(c,d){var a=this,b=a.level-1;if(c=='for'||c=='foreach'){if(d.exec){a.doExec(d.exec)}a.body.push('}\n');a.body.push('parent=p',b,';values=r',b+1,';xcount=n'+b+';xindex=i',b,'+1;xkey=k',b,';\n')}else {if(c=='if'||c=='switch'){a.body.push('}\n')}}},doFor:function(c,d){var b=this,f,a=b.level,e=a-1,g;if(c==='.'){f='values'}else {if(b.propNameRe.test(c)){f=b.parseTag(c)}else {f=b.addFn(c)+b.callFn}}if(b.maxLevel<a){b.maxLevel=a;b.body.push('var ')}if(c=='.'){g='c'+a}else {g='a'+e+'?c'+e+'[i'+e+']:c'+e}b.body.push('i',a,'=0,n',a,'=0,c',a,'=',f,',a',a,'=',b.createArrayTest(a),',r',a,'=values,p',a,',k',a,';\n','p',a,'=parent=',g,'\n','if (c',a,'){if(a',a,'){n',a,'=c',a,'.length;}else if (c',a,'.isMixedCollection){c',a,'=c',a,'.items;n',a,'=c',a,'.length;}else if(c',a,'.isStore){c',a,'=c',a,'.data.items;n',a,'=c',a,'.length;}else{c',a,'=[c',a,'];n',a,'=1;}}\n','for (xcount=n',a,';i',a,'<n'+a+';++i',a,'){\n','values=c',a,'[i',a,']');if(d.propName){b.body.push('.',d.propName)}b.body.push('\n','xindex=i',a,'+1\n');if(d.between){b.body.push('if(xindex>1){ out.push("',d.between,'"); } \n')}},doForEach:function(c,d){var b=this,f,a=b.level,e=a-1,g;if(c==='.'){f='values'}else {if(b.propNameRe.test(c)){f=b.parseTag(c)}else {f=b.addFn(c)+b.callFn}}if(b.maxLevel<a){b.maxLevel=a;b.body.push('var ')}if(c=='.'){g='c'+a}else {g='a'+e+'?c'+e+'[i'+e+']:c'+e}b.body.push('i',a,'=-1,n',a,'=0,c',a,'=',f,',a',a,'=',b.createArrayTest(a),',r',a,'=values,p',a,',k',a,';\n','p',a,'=parent=',g,'\n','for(k',a,' in c',a,'){\n','xindex=++i',a,'+1;\n','xkey=k',a,';\n','values=c',a,'[k',a,'];');if(d.propName){b.body.push('.',d.propName)}if(d.between){b.body.push('if(xindex>1){ out.push("',d.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 a=this,c='f'+a.definitions.length,b=a.guards[a.strict?0:1];a.definitions.push('function '+c+'('+a.fnArgs+') {',b.doTry,' var $v = values; with($v) {',' '+d,' }',b.doCatch,'}');a.body.push(c+a.callFn+'\n')},guards:[{doTry:'',doCatch:''},{doTry:'try { ',doCatch:' } catch(e) {\n}'}],addFn:function(c){var a=this,b='f'+a.definitions.length,d=a.guards[a.strict?0:1];if(c==='.'){a.definitions.push('function '+b+'('+a.fnArgs+') {',' return values','}')}else {if(c==='..'){a.definitions.push('function '+b+'('+a.fnArgs+') {',' return parent','}')}else {a.definitions.push('function '+b+'('+a.fnArgs+') {',d.doTry,' var $v = values; with($v) {',' return('+c+')',' }',d.doCatch,'}')}}return b},parseTag:function(h){var e=this,f=e.tagRe.exec(h),a,c,d,g,b;if(!f){return null}a=f[1];c=f[2];d=f[3];g=f[4];if(a=='.'){if(!e.validTypes){e.definitions.push('var validTypes={string:1,number:1,boolean:1};');e.validTypes=!0}b='validTypes[typeof values] || ts.call(values) === "[object Date]" ? values : ""'}else {if(a=='#'){b='xindex'}else {if(a=='$'){b='xkey'}else {if(a.substr(0,7)=='parent.'){b=a}else {if(isNaN(a)&&a.indexOf('-')==-1&&a.indexOf('.')!=-1){b='values.'+a}else {b="values['"+a+"']"}}}}}if(g){b='('+b+g+')'}if(c&&e.useFormat){d=d?','+d:'';if(c.substr(0,5)!='this.'){c='fm.'+c+'('}else {c+='('}}else {return b}return c+b+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:!1,apply:function(b,a){return this.applyOut(b,[],a).join('')},applyOut:function(e,b,d){var a=this,c;if(!a.fn){c=new Ext.util.XTemplateCompiler({useFormat:a.disableFormats!==!0,definitions:a.definitions,strict:a.strict});a.fn=c.compile(a.html)}if(a.strict){a.fn(b,e,d||a.emptyObj,1,1)}else {try{a.fn(b,e,d||a.emptyObj,1,1)}catch(f){}}return b},compile:function(){return this},statics:{getTpl:function(c,d){var b=c[d],a;if(b&&!b.isTemplate){b=Ext.ClassManager.dynInstantiate('Ext.XTemplate',b);if(c.hasOwnProperty(d)){a=c}else {for(a=c.self.prototype;a&&!a.hasOwnProperty(d);a=a.superclass){}}a[d]=b;b.owner=a}return b||null}}},0,0,0,0,0,0,[Ext,'XTemplate'],0);Ext.cmd.derive('Ext.app.EventDomain',Ext.Base,{statics:{instances:{}},isEventDomain:!0,isInstance:!1,constructor:function(){var a=this;if(!a.isInstance){Ext.app.EventDomain.instances[a.type]=a}a.bus={};a.monitoredClasses=[]},dispatch:function(l,h,m){h=Ext.canonicalEventName(h);var j=this,n=j.bus,b=n[h],c,a,i,g,e,k,d,f;if(!b){return !0}for(c in b){if(b.hasOwnProperty(c)&&j.match(l,c,j.controller)){a=b[c];for(i in a){if(a.hasOwnProperty(i)){g=a[i];if(g.controller.isActive()){e=g.list;k=e.length;for(d=0;d<k;d++){f=e[d];if(f.fire.apply(f,m)===!1){return !1}}}}}}}return !0},listen:function(p,e){var i=this,r=i.bus,t=i.idProperty,n=i.monitoredClasses,s=n.length,o=e.getId(),m=i.type==='component',u=m?e.getRefMap():null,j,f,q,a,d,b,h,l,g,c,k;for(a in p){g=p[a];if(m){a=u[a]||a}if(g){if(t){a=a==='*'?a:a.substring(1)}for(c in g){d=null;b=g[c];h=e;c=Ext.canonicalEventName(c);l=new Ext.util.Event(e,c);if(Ext.isObject(b)){d=b;b=d.fn;h=d.scope||e;delete d.fn;delete d.scope}if(typeof b==='string'){b=h[b]}l.addListener(b,h,d);for(j=0;j<s;++j){k=n[j].hasListeners;if(k){k._incr_(c)}}f=r[c]||(r[c]={});f=f[a]||(f[a]={});q=f[o]||(f[o]={controller:e,list:[]});q.list.push(l)}}}},match:function(c,b){var a=this.idProperty;if(a){return b==='*'||c[a]===b}return !1},monitor:function(a){var c=this,b=a.isInstance?a:a.prototype,d=b.doFireEvent;c.monitoredClasses.push(a);b.doFireEvent=function(e,f){var b=d.apply(this,arguments);if(b!==!1&&!this.isSuspended(e)){b=c.dispatch(this,e,f)}return b}},unlisten:function(f){var k=this.bus,l=f,m=this.monitoredClasses,p=m.length,g,a,b,o,j,n,h,c,d,i,e;if(f.isController){l=f.getId()}for(a in k){a=Ext.canonicalEventName(a);if(k.hasOwnProperty(a)&&(h=k[a])){for(n in h){g=h[n];i=g[l];if(i){b=i.list;if(b){for(c=0,o=b.length;c<o;++c){j=b[c];j.clearListeners();for(d=0;d<p;++d){e=m[d].hasListeners;if(e){e._decr_(j.name)}}}delete g[l]}}}}}},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:!0,type:'component',constructor:function(){this.callParent();this.monitor(Ext.Widget)},dispatch:function(d,f,e){var a=d.lookupController(!1),b,c;while(a){b=a.compDomain;if(b){if(b.dispatch(d,f,e)===!1){return !1}}c=a.getView();a=c?c.lookupController(!0):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 a=Ext.String.splitWords,b=Ext.Array.toMap;return {isProtoEl:!0,clsProp:'cls',styleProp:'style',removedProp:'removed',styleIsText:!1,constructor:function(f){var c=this,e,d;if(f){Ext.apply(c,f);e=c.cls;d=c.style;delete c.cls}c.classList=e?a(e):[];c.classMap=e?b(c.classList):{};if(d){if(typeof d==='string'){c.style=Ext.Element.parseStyles(d)}else {if(Ext.isFunction(d)){c.styleFn=d;delete c.style}else {c.style=Ext.apply({},d)}}}},flush:function(){this.flushClassList=[];this.removedClasses={};delete this.style;delete this.unselectableAttr},addCls:function(d){if(!d){return this}var c=this,g=typeof d==='string'?a(d):d,i=g.length,j=c.classList,h=c.classMap,f=c.flushClassList,e=0,b;for(;e<i;++e){b=g[e];if(!h[b]){h[b]=!0;j.push(b);if(f){f.push(b);delete c.removedClasses[b]}}}return c},hasCls:function(a){return a in this.classMap},removeCls:function(l){var d=this,g=d.classList,i=d.classList=[],k=b(a(l)),j=g.length,h=d.classMap,f=d.removedClasses,e,c;for(e=0;e<j;++e){c=g[e];if(k[c]){if(f){if(h[c]){f[c]=!0;Ext.Array.remove(d.flushClassList,c)}}delete h[c]}else {i.push(c)}}return d},setStyle:function(a,d){var b=this,c=b.style||(b.style={});if(typeof a==='string'){if(arguments.length===1){b.setStyle(Ext.Element.parseStyles(a))}else {c[a]=d}}else {Ext.apply(c,a)}return b},unselectable:function(){this.addCls(Ext.dom.Element.unselectableCls);if(Ext.isOpera){this.unselectableAttr=!0}},writeTo:function(d){var a=this,e=a.flushClassList||a.classList,c=a.removedClasses,b;if(a.styleFn){b=Ext.apply({},a.styleFn());Ext.apply(b,a.style)}else {b=a.style}d[a.clsProp]=e.join(' ');if(b){d[a.styleProp]=a.styleIsText?Ext.DomHelper.generateStyles(b,null,!0):b}if(c){c=Ext.Object.getKeys(c);if(c.length){d[a.removedProp]=c.join(' ')}}if(a.unselectableAttr){d.unselectable='on'}return d}}},1,0,0,0,0,0,[Ext.util,'ProtoElement'],0);Ext.cmd.derive('Ext.dom.CompositeElement',Ext.dom.CompositeElementLite,{alternateClassName:'Ext.CompositeElement',isLite:!1,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(b){var a=this;a.aliasPrefix=b+'.';a.cache={};a.name=b.replace(a.fixNameRe,a.fixNameFn);a.type=b};Ext.Factory.prototype={defaultProperty:'type',instanceProp:'isInstance',create:function(a,i){var e=this,f=Ext.ClassManager,h=e.cache,g,d,b,c;if(a){if(a[e.instanceProp]){return a}if(typeof a==='string'){c=a;a={};a[e.defaultProperty]=c}d=a.xclass;c=a.type}if(d){if(!(b=f.get(d))){return f.instantiate(d,a)}}else {if(!(c=c||i||e.defaultType)){b=e.defaultClass}if(!b&&!(b=h[c])){g=e.aliasPrefix+c;d=f.getNameByAlias(g);if(!(b=d&&f.get(d))){return f.instantiateByAlias(g,a)}h[c]=b}}return b.isInstance?b:new b(a)},fixNameRe:/\.[a-z]/ig,fixNameFn:function(a){return a.substring(1).toUpperCase()},clearCache:function(){this.cache={}}};Ext.Factory.define=function(d,b){var c=Ext.Factory,f,a,e;if(d.constructor===Object){Ext.Object.each(d,c.define,c)}else {a=new Ext.Factory(d);if(b){if(b.constructor===Object){Ext.apply(a,b);if(typeof (f=a.xclass)==='string'){a.defaultClass=Ext.ClassManager.get(f)}}else {a.defaultType=b}}c[a.name]=e=a.create.bind(a);e.instance=a}return e};Ext.cmd.derive('Ext.mixin.Factoryable',Ext.Base,{mixinId:'factoryable',onClassMixedIn:function(c){var d=c.prototype,f=d.factoryConfig,a=d.alias,b={},e,g;a=a&&a.length&&a[0];if(a&&(e=a.lastIndexOf('.'))>0){b.type=a.substring(0,e);b.defaultType=a.substring(e+1)}if(f){delete d.factoryConfig;Ext.apply(b,f)}g=Ext.Factory.define(b.type,b);if(c.create===Ext.Base.create){c.create=g}}},0,0,0,0,0,0,[Ext.mixin,'Factoryable'],0);Ext.cmd.derive('Ext.scroll.Scroller',Ext.Evented,{factoryConfig:{defaultType:'dom'},isScroller:!0,config:{direction:undefined,directionLock:!1,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:!0,y:!0},statics:{create:function(a){return Ext.Factory.scroller(a,Ext.supports.Touch?'touch':'dom')}},constructor:function(b){var a=this;Ext.Evented.prototype.constructor.call(this,b);a.onDomScrollEnd=Ext.Function.createBuffered(a.onDomScrollEnd,100,a)},addPartner:function(a,c){var b=this,e=b._partners||(b._partners={}),d=a._partners||(a._partners={});e[a.getId()]={scroller:a,axis:c};d[b.getId()]={scroller:b,axis:c}},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(c){var b=this._partners,a=c._partners;if(b){delete b[c.getId()]}if(a){delete a[this.getId()]}},scrollBy:function(a,b,c){var d=this.getPosition();if(a){if(a.length){c=b;b=a[1];a=a[0]}else {if(typeof a!=='number'){c=b;b=a.y;a=a.x}}}a=typeof a==='number'?a+d.x:null;b=typeof b==='number'?b+d.y:null;return this.doScrollTo(a,b,c)},scrollIntoView:function(d,i,h,e){var a=this,c=a.getPosition(),b,f,g,j=a.getElement();if(d){b=Ext.fly(d).getScrollIntoViewXY(j,c.x,c.y);f=i===!1?c.x:b.x;g=b.y;if(e){a.on({scrollend:'doHighlight',scope:a,single:!0,args:[d,e]})}a.doScrollTo(f,g,h)}},scrollTo:function(a,b,d){var c;if(a){if(a.length){d=b;b=a[1];a=a[0]}else {if(typeof a!=='number'){d=b;b=a.y;a=a.x}}}if(a<0||b<0){c=this.getMaxPosition();if(a<0){a+=c.x}if(b<0){b+=c.y}}this.doScrollTo(a,b,d)},updateDirection:function(a){var d=this,b,c;if(!a){b=d.getX();c=d.getY();if(b&&c){a=c==='scroll'&&b==='scroll'?'both':'auto'}else {if(c){a='vertical'}else {if(b){a='horizontal'}}}d._direction=a}else {if(a==='auto'){b=!0;c=!0}else {if(a==='vertical'){b=!1;c=!0}else {if(a==='horizontal'){b=!0;c=!1}else {if(a==='both'){b='scroll';c='scroll'}}}}d.setX(b);d.setY(c)}},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!==!0){Ext.fly(b).highlight(a)}else {Ext.fly(b).highlight()}},fireScrollStart:function(b,c){var a=this,d=a.component;a.invokePartners('onPartnerScrollStart',b,c);if(a.hasListeners.scrollstart){a.fireEvent('scrollstart',a,b,c)}if(d&&d.onScrollStart){d.onScrollStart(b,c)}Ext.GlobalEvents.fireEvent('scrollstart',a,b,c)},fireScroll:function(b,c){var a=this,d=a.component;a.invokePartners('onPartnerScroll',b,c);if(a.hasListeners.scroll){a.fireEvent('scroll',a,b,c)}if(d&&d.onScrollMove){d.onScrollMove(b,c)}Ext.GlobalEvents.fireEvent('scroll',a,b,c)},fireScrollEnd:function(b,c){var a=this,d=a.component;a.invokePartners('onPartnerScrollEnd',b,c);if(a.hasListeners.scrollend){a.fireEvent('scrollend',a,b,c)}if(d&&d.onScrollEnd){d.onScrollEnd(b,c)}Ext.GlobalEvents.fireEvent('scrollend',a,b,c)},initXStyle:function(){var b=this.getElement(),a=this.getX();if(!a){a='hidden'}else {if(a===!0){a='auto'}}if(b){b.setStyle('overflow-x',a)}},initYStyle:function(){var b=this.getElement(),a=this.getY();if(!a){a='hidden'}else {if(a===!0){a='auto'}}if(b){b.setStyle('overflow-y',a)}},invokePartners:function(d,e,f){var a=this._partners,b,c;if(!this.suspendSync){for(c in a){b=a[c].scroller;b[d](this,e,f)}}},suspendPartnerSync:function(){this.suspendSync=(this.suspendSync||0)+1},resumePartnerSync:function(){if(this.suspendSync){this.suspendSync--}},onDomScroll:function(){var a=this,b=a.getPosition(),c=b.x,d=b.y;if(!a.isScrolling){a.isScrolling=!0;a.fireScrollStart(c,d)}a.fireScroll(c,d);a.onDomScrollEnd()},onDomScrollEnd:function(){var a=this,b=a.getPosition(),c=b.x,d=b.y;a.isScrolling=!1;a.trackingScrollLeft=c;a.trackingScrollTop=d;a.fireScrollEnd(c,d)},onPartnerScroll:function(d,b,c){var a=d._partners[this.getId()].axis;if(a){if(a==='x'){c=null}else {if(a==='y'){b=null}}}this.doScrollTo(b,c)},restoreState:function(){var a=this,c=a.getElement(),b;if(c){b=c.dom;if(a.trackingScrollTop!==undefined){b.scrollTop=a.trackingScrollTop;b.scrollLeft=a.trackingScrollLeft}}},onPartnerScrollStart:function(){this.suspendPartnerSync()},onPartnerScrollEnd:function(){this.resumePartnerSync()}}},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:!0,isEnded:!1,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=!1},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(),a=b/this.getAcceleration(),c=a*Math.pow(Math.E,-this.getSpringTension()*a);return this.getStartValue()+this.getStartVelocity()*c}},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(b,a){return Ext.factory(b,Ext.fx.easing.Momentum,a)},applyBounce:function(b,a){return Ext.factory(b,Ext.fx.easing.Bounce,a)},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=!1;this.isOutOfBound=!1;return Ext.fx.easing.Abstract.prototype.reset.apply(this,arguments)},getValue:function(){var d=this.getMomentum(),j=this.getBounce(),f=d.getStartVelocity(),b=f>0?1:-1,i=this.getMinMomentumValue(),h=this.getMaxMomentumValue(),g=b==1?h:i,c=this.lastValue,a,e;if(f===0){return this.getStartValue()}if(!this.isOutOfBound){a=d.getValue();e=d.getVelocity();if(Math.abs(e)<this.getMinVelocity()){this.isEnded=!0}if(a>=i&&a<=h){return a}this.isOutOfBound=!0;j.setStartTime(Ext.Date.now()).setStartVelocity(e).setStartValue(g)}a=j.getValue();if(!this.isEnded){if(!this.isBouncingBack){if(c!==null){if(b==1&&a<c||b==-1&&a>c){this.isBouncingBack=!0}}}else {if(Math.round(a)==g){this.isEnded=!0}}}this.lastValue=a;return a}},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=!0;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 a=Ext.Date.now()-this.getStartTime(),b=this.getDuration(),d=this.getStartValue(),f=this.getEndValue(),e=this.distance,i=a/b,h=1-i,g=1-Math.pow(h,this.getExponent()),c=d+g*e;if(a>=b){this.isEnded=!0;return f}return c}},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:!1,isTranslatable:!0,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,b,c){if(c){return this.translateAnimated(a,b,c)}if(this.isAnimating){this.stopAnimation()}if(!isNaN(a)&&typeof a=='number'){this.x=a}if(!isNaN(b)&&typeof b=='number'){this.y=b}this.doTranslate(a,b)},translateAxis:function(e,a,d){var b,c;if(e=='x'){b=a}else {c=a}return this.translate(b,c,d)},getPosition:function(){var b=this,a=b.position;a.x=-b.x;a.y=-b.y;return a},animate:function(a,b){this.activeEasingX=a;this.activeEasingY=b;this.isAnimating=!0;this.lastX=null;this.lastY=null;Ext.AnimationQueue.start(this.doAnimationFrame,this);this.fireEvent('animationstart',this,this.x,this.y);return this},translateAnimated:function(g,h,a){var b=this;if(!Ext.isObject(a)){a={}}if(b.isAnimating){b.stopAnimation()}b.callback=a.callback;b.callbackScope=a.scope;var f=Ext.Date.now(),e=a.easing,c=typeof g=='number'?a.easingX||e||b.getEasingX()||!0:null,d=typeof h=='number'?a.easingY||e||b.getEasingY()||!0:null;if(c){c=b.factoryEasing(c);c.setStartTime(f);c.setStartValue(b.x);c.setEndValue(g);if('duration' in a){c.setDuration(a.duration)}}if(d){d=b.factoryEasing(d);d.setStartTime(f);d.setStartValue(b.y);d.setEndValue(h);if('duration' in a){d.setDuration(a.duration)}}return b.animate(c,d)},doAnimationFrame:function(){var a=this,d=a.activeEasingX,e=a.activeEasingY,f=Date.now(),b,c;if(!a.isAnimating){return}a.lastRun=f;if(d===null&&e===null){a.stopAnimation();return}if(d!==null){a.x=b=Math.round(d.getValue());if(d.isEnded){a.activeEasingX=null;a.fireEvent('axisanimationend',a,'x',b)}}else {b=a.x}if(e!==null){a.y=c=Math.round(e.getValue());if(e.isEnded){a.activeEasingY=null;a.fireEvent('axisanimationend',a,'y',c)}}else {c=a.y}if(a.lastX!==b||a.lastY!==c){a.doTranslate(b,c);a.lastX=b;a.lastY=c}a.fireEvent('animationframe',a,b,c)},stopAnimation:function(){var a=this;if(!a.isAnimating){return}a.activeEasingX=null;a.activeEasingY=null;a.isAnimating=!1;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(b,c){var a=this.getElement();if(!this.isDestroyed&&!a.isDestroyed){a.translate(b,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:!0},getWrapper:function(){var a=this.wrapper,c=this.getElement(),b;if(!a){b=c.getParent();if(!b){return null}if(b.hasCls('x-translatable-hboxfix')){b=b.getParent()}if(this.getUseWrapper()){a=c.wrap()}else {a=b}c.addCls('x-translatable');a.addCls('x-translatable-container');this.wrapper=a;a.on('painted',function(){if(!this.isAnimating){this.refresh()}},this);this.refresh()}return a},doTranslate:function(c,d){var b=this.getWrapper(),a;if(b){a=b.dom;if(typeof c=='number'){a.scrollLeft=500000-c}if(typeof d=='number'){a.scrollTop=500000-d}}},destroy:function(){var b=this.getElement(),a=this.wrapper;if(a){if(!b.isDestroyed){if(this.getUseWrapper()){a.doReplaceWith(b)}b.removeCls('x-translatable')}if(!a.isDestroyed){a.removeCls('x-translatable-container');a.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:!0,applyElement:function(b){var a=Ext.get(b);if(a){this.parent=a.parent()}return a},doTranslate:function(b,c){var a=this.parent;a.setScrollLeft(Math.round(-b));a.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(b,c){var a=this.getElement().dom.style;if(typeof b=='number'){a.left=b+'px'}if(typeof c=='number'){a.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:!0,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(c){var a=this,b;Ext.Widget.prototype.constructor.call(this,c);b=a.getAxis();a.names=a.names[b];a.element.addCls(a.cls+' '+a.cls+'-'+b)},hide:function(){var a=this,b=a.getHideDelay();if(b){a._hideTimer=Ext.defer(a.doHide,b,a)}else {a.doHide()}},setValue:function(c){var a=this,o=a.element,l=a.names,m=a.getAxis(),k=a.getScroller(),f=k.getMaxUserPosition()[m],g=k.getElementSize()[m],b=a.length,j=a.getMinLength(),e=b,i=g-b-a.sizeAdjust,h=Math.round,n=Math.max,d;if(c<0){e=h(n(b+b*c/g,j));d=0}else {if(c>f){e=h(n(b-b*(c-f)/g,j));d=i+b-e}else {d=h(c/f*i)}}a[l.translate](d);o[l.setLength](e)},show:function(){var a=this,b=a.element,c=b.getActiveAnimation();if(c){c.end()}if(!a._inDom){a.getScroller().getElement().appendChild(b);a._inDom=!0;if(!a.size){a.cacheStyles()}}a.refreshLength();clearTimeout(a._hideTimer);b.setStyle('opacity','')},privates:{cacheStyles:function(){var a=this,c=a.element,b=a.names;a.size=c[b.getSize]();a.margin=c.getMargin(b.side)},doHide:function(){var a=this.getHideAnimation(),b=this.element;if(a){b.animate(a)}else {b.setStyle('opacity',0)}},hasOpposite:function(){return this.getScroller().isAxisEnabled(this.oppositeAxis[this.getAxis()])},onHideAnimationEnd:function(){this.element.setStyle('opacity','0')},refreshLength:function(){var a=this,i=a.names,g=a.getAxis(),e=a.getScroller(),h=e.getSize()[g],c=e.getElementSize()[g],j=c/h,b=a.margin*2,d=a.hasOpposite()?b+a.size:b,f=Math.max(Math.round((c-d)*j),a.getMinLength());a.sizeAdjust=d;a.length=f;a.element[i.setLength](f)},translateX:function(a){this.element.translate(a)},translateY:function(a){this.element.translate(0,a)}}},1,['scrollindicator'],['widget','scrollindicator'],{'widget':!0,'scrollindicator':!0},['widget.scrollindicator'],0,[Ext.scroll,'Indicator'],0);Ext.cmd.derive('Ext.scroll.TouchScroller',Ext.scroll.Scroller,{isTouchScroller:!0,config:{autoRefresh:!0,bounceEasing:{duration:400},elementSize:undefined,indicators:!0,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:!1}},cls:'x-scroll-container',scrollerCls:'x-scroll-scroller',dragStartTime:0,dragEndTime:0,isDragging:!1,isAnimating:!1,isMouseEvent:{mousedown:1,mousemove:1,mouseup:1},listenerMap:{touchstart:'onTouchStart',touchmove:'onTouchMove',dragstart:'onDragStart',drag:'onDrag',dragend:'onDragEnd'},refreshCounter:0,constructor:function(c){var a=this,b='onEvent';a.elementListeners={touchstart:b,touchmove:b,dragstart:b,drag:b,dragend:b,scope:a};a.minPosition={x:0,y:0};a.startPosition={x:0,y:0};a.position={x:0,y:0};a.velocity={x:0,y:0};a.isAxisEnabledFlags={x:!1,y:!1};a.flickStartPosition={x:0,y:0};a.flickStartTime={x:0,y:0};a.lastDragPosition={x:0,y:0};a.dragDirection={x:0,y:0};Ext.GlobalEvents.on('idle',a.onIdle,a);Ext.scroll.Scroller.prototype.constructor.call(this,c);a.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 e=this.getElement(),a,c,d;if(!e){return null}a=e.dom;if(!a){return}if(b==null){c=a.clientWidth;d=a.clientHeight}else {c=b.x;d=b.y}return {x:c,y:d}},applyIndicators:function(b,a){var g=this,c,d,e,f;if(b){if(b===!0){c=d={}}else {e=b.x;f=b.y;if(e||f){c=e==null||e===!0?{}:e;d=e==null||f===!0?{}:f}else {c=d=b}}if(a){if(c){a.x.setConfig(c)}else {a.x.destroy();a.x=null}if(d){a.y.setConfig(d)}else {a.y.destroy();a.y=null}b=a}else {b={x:null,y:null};if(c){b.x=new Ext.scroll.Indicator(Ext.applyIf({axis:'x',scroller:g},c))}if(d){b.y=new Ext.scroll.Indicator(Ext.applyIf({axis:'y',scroller:g},d))}}}else {if(a){a.x.destroy();a.y.destroy();a.x=null;a.y=null}}return b},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(a){var f,e,d,b,c;if(a==null){f=this.getElement();if(!f){return null}e=f.dom;d=this.getInnerElement().dom;b=Math.max(d.scrollWidth,e.clientWidth);c=Math.max(d.scrollHeight,e.clientHeight)}else {if(typeof a==='number'){b=a;c=a}else {b=a.x;c=a.y}}return {x:b,y:c}},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 a=this,c=a.getElement(),b=a.getInnerElement(),d=a.sizeMonitors;if(d){d.element.destroy();d.container.destroy()}if(c&&!c.isDestroyed){c.removeCls(a.cls)}if(b&&!b.isDestroyed){b.removeCls(a.scrollerCls)}if(a._isWrapped){if(!c.isDestroyed){a.unwrapContent()}b.destroy();if(a.FixedHBoxStretching){b.parent().destroy()}}a.setElement(null);a.setInnerElement(null);Ext.GlobalEvents.un('idle',a.onIdle,a);Ext.destroy(a.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(c,f){var a=this,b=a.getInnerElement(),e=this.FixedHBoxStretching,d;if(!b){b=c.dom.firstChild;if(e&&b){b=b.dom.firstChild}if(!b||b.nodeType!==1||!Ext.fly(b).hasCls(a.scrollerCls)){b=a.wrapContent(c)}a.setInnerElement(b)}if(!e){c.addCls(a.cls)}if(a.isConfiguring){if(!a.getTranslatable().isScrollParent){d=a.elementListeners;d.mousewheel='onMouseWheel';d.scroll={fn:'onElementScroll',delegated:!1,scope:a}}}if(!a.getDisabled()){a.attachListeners()}if(!a.isConfiguring){if(a.getAutoRefresh()){a.toggleResizeListeners(!0)}a.setSize(null);a.setElementSize(null)}Ext.scroll.Scroller.prototype.updateElement.call(this,c,f)},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){return Math.min(this.getMaxPosition().x,Math.max(a,0))},constrainY:function(a){return Math.min(this.getMaxPosition().y,Math.max(a,0))},convertEasingConfig:function(a){return a},detachListeners:function(){this.getElement().un(this.elementListeners)},doRefresh:function(c){var a=this,d,b;if(a.refreshCounter&&a.getElement()){a.stopAnimation();a.getTranslatable().refresh();if(c){d=c.size;b=c.elementSize;if(d){a.setSize(d)}if(b){a.setElementSize(b)}}else {a.setSize(null);a.setElementSize(null)}a.fireEvent('refresh',a);a.refreshCounter=0}},doScrollTo:function(c,d,b,g){var a=this,l=a.isDragging,f;if(a.isDestroyed||!a.getElement()){return a}g=g||a.isDragging;var k=a.getTranslatable(),e=a.position,h=!1,i,j;if(!l||a.isAxisEnabled('x')){if(isNaN(c)||typeof c!=='number'){c=e.x}else {if(!g){c=a.constrainX(c)}if(e.x!==c){e.x=c;h=!0}}i=a.convertX(-c)}if(!l||a.isAxisEnabled('y')){if(isNaN(d)||typeof d!=='number'){d=e.y}else {if(!g){d=a.constrainY(d)}if(e.y!==d){e.y=d;h=!0}}j=-d}if(h){if(b){f=function(){a.onScroll()};if(b===!0){b={callback:f}}else {if(b.callback){b.callback=Ext.Function.createSequence(b.callback,f)}else {b.callback=f}}k.translateAnimated(i,j,b)}else {k.translate(i,j);a.onScroll()}}return a},getAnimationEasing:function(b,m){if(!this.isAxisEnabled(b)){return null}var a=this,d=a.position[b],k=a.getMinUserPosition()[b],i=a.getMaxUserPosition()[b],g=a.getMaxAbsoluteVelocity(),e=null,j=a.dragEndTime,c=m.flick.velocity[b],l=b==='x',h,f;if(d<k){e=k}else {if(d>i){e=i}}if(l){d=a.convertX(d);e=a.convertX(e)}if(e!==null){f=a.getBounceEasing()[b];f.setConfig({startTime:j,startValue:-d,endValue:-e});return f}if(c===0){return null}if(c<-g){c=-g}else {if(c>g){c=g}}if(Ext.browser.is.IE){c*=2}f=a.getMomentumEasing()[b];h={startTime:j,startValue:-d,startVelocity:c*1.5,minMomentumValue:-i,maxMomentumValue:0};if(l){a.convertEasingConfig(h)}f.setConfig(h);return f},getSnapPosition:function(d){var e=this,c=e.getSlotSnapSize()[d],f=null,b,h,g,a;if(c!==0&&e.isAxisEnabled(d)){b=e.position[d];h=e.getSlotSnapOffset()[d];g=e.getMaxUserPosition()[d];a=Math.floor((b-h)%c);if(a!==0){if(b!==g){if(Math.abs(a)>c/2){f=Math.min(g,b+(a>0?c-a:a-c))}else {f=b-a}}else {f=b-a}}}return f},hideIndicators:function(){var d=this,a=d.getIndicators(),b,c;if(a){if(d.isAxisEnabled('x')){b=a.x;if(b){b.hide()}}if(d.isAxisEnabled('y')){c=a.y;if(c){c.hide()}}}},isAxisEnabled:function(a){this.getX();this.getY();return this.isAxisEnabledFlags[a]},onAnimationEnd:function(){this.snapToBoundary();this.onScrollEnd()},onAnimationFrame:function(d,b,c){var a=this.position;a.x=this.convertX(-b);a.y=-c;this.onScroll()},onAxisDrag:function(a,o){if(!this.isAxisEnabled(a)){return}var b=this,n=b.flickStartPosition,g=b.flickStartTime,f=b.lastDragPosition,d=b.dragDirection,r=b.position[a],q=b.getMinUserPosition()[a],e=b.getMaxUserPosition()[a],p=b.startPosition[a],k=f[a],c=p-o,i=d[a],h=b.getOutOfBoundRestrictFactor(),m=b.getStartMomentumResetTime(),l=Ext.Date.now(),j;if(c<q){c*=h}else {if(c>e){j=c-e;c=e+j*h}}if(c>k){d[a]=1}else {if(c<k){d[a]=-1}}if(i!==0&&d[a]!==i||l-g[a]>m){n[a]=r;g[a]=l}f[a]=c},onDomScroll:function(){var c=this,b,a;if(c.getTranslatable().isScrollParent){b=c.getElement().dom;a=c.position;a.x=b.scrollLeft;a.y=b.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 a=this,b,c;if(!a.isDragging){return}a.dragEndTime=Ext.Date.now();a.onDrag(d);a.isDragging=!1;b=a.getAnimationEasing('x',d);c=a.getAnimationEasing('y',d);if(b||c){a.getTranslatable().animate(b,c)}else {a.onScrollEnd()}},onDragStart:function(d){var a=this,b=a.getDirection(),m=d.absDeltaX,n=d.absDeltaY,o=a.getDirectionLock(),l=a.startPosition,g=a.flickStartPosition,j=a.flickStartTime,h=a.lastDragPosition,i=a.position,k=a.dragDirection,e=i.x,f=i.y,c=Ext.Date.now();a.isDragging=!0;if(o&&b!=='both'){if(b==='horizontal'&&m>n||b==='vertical'&&n>m){d.stopPropagation()}else {a.isDragging=!1;return}}h.x=e;h.y=f;g.x=e;g.y=f;l.x=e;l.y=f;j.x=c;j.y=c;k.x=0;k.y=0;a.dragStartTime=c;a.isDragging=!0;a.onScrollStart()},onElementResize:function(b,a){this.refresh(!0,{elementSize:{x:a.width,y:a.height}})},onElementScroll:function(b,a){a.scrollTop=a.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(b,a){this.refresh(!0,{size:{x:a.width,y:a.height}})},onMouseWheel:function(j){var a=this,g=j.getWheelDeltas(),c=-g.x,d=-g.y,b=a.position,e=a.getMaxUserPosition(),f=a.getMinUserPosition(),h=Math.max,i=Math.min,k=h(i(b.x+c,e.x),f.x),l=h(i(b.y+d,e.y),f.y);c=k-b.x;d=l-b.y;if(!c&&!d){return}j.stopEvent();a.onScrollStart();a.scrollBy(c,d);a.onScroll();a.onScrollEnd()},onPartnerScrollEnd:function(){this.hideIndicators()},onPartnerScrollStart:function(){this.showIndicators()},onScroll:function(){var a=this,e=a.position,f=e.x,g=e.y,b=a.getIndicators(),c,d;if(b){if(a.isAxisEnabled('x')){c=b.x;if(c){c.setValue(f)}}if(a.isAxisEnabled('y')){d=b.y;if(d){d.setValue(g)}}}a.fireScroll(f,g)},onScrollEnd:function(){var a=this,b=a.position;if(!a.isTouching&&!a.snapToSlot()){a.hideIndicators();Ext.isScrolling=!1;a.fireScrollEnd(b.x,b.y)}},onScrollStart:function(){var a=this,b=a.position;a.showIndicators();Ext.isScrolling=!0;a.fireScrollStart(b.x,b.y)},onTouchEnd:function(){var a=this;a.isTouching=a.self.isTouching=!1;if(!a.isDragging&&a.snapToSlot()){a.onScrollStart()}},onTouchMove:function(a){a.preventDefault()},onTouchStart:function(){var a=this;a.isTouching=a.self.isTouching=!0;Ext.getDoc().on({touchend:'onTouchEnd',scope:a,single:!0});a.stopAnimation()},refreshAxes:function(){var a=this,b=a.isAxisEnabledFlags,k=a.getSize(),h=a.getElementSize(),e=a.getIndicators(),f,g,c,d,i,j;if(!k||!h){return}f=Math.max(0,k.x-h.x);g=Math.max(0,k.y-h.y);c=a.getX();d=a.getY();a.setMaxPosition({x:f,y:g});if(c===!0||c==='auto'){b.x=!!f}else {if(c===!1){b.x=!1;i=e&&e.x;if(i){i.hide()}}else {if(c==='scroll'){b.x=!0}}}if(d===!0||d==='auto'){b.y=!!g}else {if(d===!1){b.y=!1;j=e&&e.y;if(j){j.hide()}}else {if(d==='scroll'){b.y=!0}}}a.setMaxUserPosition({x:b.x?f:0,y:b.y?g:0});if(Ext.supports.touchScroll===1){a.initXStyle();a.initYStyle()}},showIndicators:function(){var d=this,a=d.getIndicators(),b,c;if(a){if(d.isAxisEnabled('x')){b=a.x;if(b){b.show()}}if(d.isAxisEnabled('y')){c=a.y;if(c){c.show()}}}},snapToBoundary:function(){if(this.isConfiguring){return}var c=this,f=c.position,e=c.getMinUserPosition(),d=c.getMaxUserPosition(),i=e.x,j=e.y,g=d.x,h=d.y,a=Math.round(f.x),b=Math.round(f.y);if(a<i){a=i}else {if(a>g){a=g}}if(b<j){b=j}else {if(b>h){b=h}}c.doScrollTo(a,b)},snapToSlot:function(){var a=this,c=a.getSnapPosition('x'),d=a.getSnapPosition('y'),b=a.getSlotSnapEasing();if(c!==null||d!==null){a.doScrollTo(c,d,{easingX:b.x,easingY:b.y});return !0}return !1},stopAnimation:function(){this.getTranslatable().stopAnimation()},toggleResizeListeners:function(d){var a=this,b=a.getElement(),c=d?'on':'un';if(b){b[c]('resize','onElementResize',a);a.getInnerElement()[c]('resize','onInnerElementResize',a)}},unwrapContent:function(){var a=this.getInnerElement().dom,c=this.getElement().dom,b;while(b=a.firstChild){c.insertBefore(b,a)}},wrapContent:function(d){var a=document.createElement('div'),c=d.dom,b;while(b=c.lastChild){a.insertBefore(b,a.firstChild)}c.appendChild(a);this.setInnerElement(a);this._isWrapped=!0;return this.getInnerElement()}}},1,0,0,0,['scroller.touch'],0,[Ext.scroll,'TouchScroller'],0);Ext.cmd.derive('Ext.scroll.DomScroller',Ext.scroll.Scroller,{isDomScroller:!0,getMaxPosition:function(){var b=this.getElement(),c=0,d=0,a;if(b&&!b.isDestroyed){a=b.dom;c=a.scrollWidth-a.clientWidth;d=a.scrollHeight-a.clientHeight}return {x:c,y:d}},getMaxUserPosition:function(){var c=this,b=c.getElement(),d=0,e=0,a;if(b&&!b.isDestroyed){a=b.dom;if(c.getX()){d=a.scrollWidth-a.clientWidth}if(c.getY()){e=a.scrollHeight-a.clientHeight}}return {x:d,y:e}},getPosition:function(){var b=this.getElement(),c=0,d=0,a;if(b&&!b.isDestroyed){a=this.getElementScroll(b);c=a.left;d=a.top}return {x:c,y:d}},getSize:function(){var a=this.getElement(),b,c;if(a&&!a.isDestroyed){c=a.dom;b={x:c.scrollWidth,y:c.scrollHeight}}else {b={x:0,y:0}}return b},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(a,b,j){var h=this,d=h.getElement(),c,g,i,e,f;if(d&&!d.isDestroyed){g=this.getElement().dom;e=a===Infinity;f=b===Infinity;if(e||f){c=h.getMaxPosition();if(e){a=c.x}if(f){b=c.y}}a=h.convertX(a);if(j){i={};if(b!=null){i.scrollTop=b}if(a!=null){i.scrollLeft=a}d.animate(Ext.mergeIf({to:{scrollTop:b,scrollLeft:a}},j))}else {if(b!=null){g.scrollTop=b}if(a!=null){g.scrollLeft=a}}}},getElementScroll:function(a){return a.getScroll()},stopAnimation:function(){var a=this.getElement().getActiveAnimation();if(a){a.end()}}}},0,0,0,0,['scroller.dom'],0,[Ext.scroll,'DomScroller'],0);Ext.cmd.derive('Ext.util.Floating',Ext.Base,{mixinId:'floating',focusOnToFront:!0,shadow:'sides',animateShadow:!1,constrain:!1,config:{activeCounter:0,alwaysOnTop:!1},preventDefaultAlign:!1,_visModeMap:{visibility:1,display:2,offsets:3},constructor:function(){var a=this,e=a.el,d=a.shadow,c,b;if(d){b={mode:d===!0?'sides':d};c=a.shadowOffset;if(c){b.offset=c}b.animate=a.animateShadow;b.fixed=a.fixed;e.enableShadow(b,!1)}if(a.shim||Ext.useShims){e.enableShim({fixed:a.fixed},!1)}e.setVisibilityMode(a._visModeMap[a.hideMode]);if(a.modal&&!Ext.enableFocusManager){a.el.on('keydown',a.onKeyDown,a)}a.el.on({mousedown:a.onMouseDown,scope:a,capture:!0});a.registerWithOwnerCt();a.initHierarchyEvents()},alignTo:function(c,b,e,d){var a=this;if(!a._lastAlignToEl){Ext.on('scroll',a.onAlignToScroll,a)}a._lastAlignToEl=c;a._lastAlignToPos=b;a.mixins.positionable.alignTo.call(a,c,b,e,d)},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=!0}},registerWithOwnerCt:function(){var a=this,c=a.ownerCt,b=a.zIndexParent;if(b){b.unregisterFloatingItem(a)}b=a.zIndexParent=a.up('[floating]');a.floatParent=c||b;a.initFloatConstrain();delete a.ownerCt;if(b){b.registerFloatingItem(a)}else {Ext.WindowManager.register(a)}},onKeyDown:function(b){var f=this,d,a,c,e;if(b.getKey()===b.TAB){d=b.shiftKey;a=f.query(':focusable');if(a.length){c=a[0];e=a[a.length-1];if(!d&&e.hasFocus){b.stopEvent();c.focus()}else {if(d&&c.hasFocus){b.stopEvent();e.focus()}}}}},onMouseDown:function(h){var b=this,g=b.focusTask,f=h.parentEvent,c=f&&f.type==='touchstart',a,d,e;if(b.floating&&(!g||!g.id)){a=h.target;d=b.el.dom;while(!c&&a&&a!==d){if(Ext.fly(a).isFocusable()){c=!0}a=a.parentNode}e=Ext.WindowManager.getActive()===b&&(a===d||c);if(!e){b.toFront(c)}}},onBeforeFloatLayout:function(){this.el.preventSync=!0},onAfterFloatLayout:function(){var a=this.el;if(a.shadow||a.shim){a.setUnderlaysVisible(!0);a.syncUnderlays()}},syncHidden:function(){var a=this,d=a.hidden||!a.rendered,c=a.hierarchicallyHidden=a.isHierarchicallyHidden(),b=a.pendingShow;if(d!==c){if(c){a.hide();a.pendingShow=!0}else {if(b){delete a.pendingShow;if(b.length){a.show.apply(a,b)}else {a.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(c){var a=this,b=a.calculateConstrainedPosition(c,null,!0);if(b){a.setPosition(b)}},updateActiveCounter:function(b){var a=this.zIndexParent;if(a&&this.bringParentToFront!==!1){a.setActiveCounter(++Ext.ZIndexManager.activeCounter)}a=this.zIndexManager;if(a){a.onComponentUpdate(this)}},updateAlwaysOnTop:function(b){var a=this.zIndexManager;if(a){a.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(d,c){var a=this,b;if(d){if(a.el.shadow&&!a.maximized){a.el.enableShadow(null,!0)}if(c){b=Ext.ComponentManager.getActiveComponent();if(!b||!b.up(a)){a.focus()}}a.fireEvent('activate',a)}else {a.fireEvent('deactivate',a)}},toBack:function(){this.zIndexManager.sendToBack(this);return this},center:function(){var a=this,b;if(a.isVisible()){b=a.getAlignToXY(a.container,'c-c');a.setPagePosition(b)}else {a.needsCenter=!0}return a},onFloatShow:function(){if(this.needsCenter){this.center()}delete this.needsCenter;if(this.toFrontOnShow){this.toFront()}},fitContainer:function(f){var d=this,c=d.floatParent,a=c?c.getTargetEl():d.container,b=a.getViewSize(),e=c||a.dom!==document.body?[0,0]:a.getXY();b.x=e[0];b.y=e[1];d.setBox(b,f)},privates:{onFloatDestroy:function(){this.clearAlignEl()},clearAlignEl:function(){var a=this;if(a._lastAlignToEl){Ext.un('scroll',a.onAlignToScroll,a);a._lastAlignPos=a._lastAlignToEl=null}},onAlignToScroll:function(d){var b=this,a=b._lastAlignToEl,c;if(a&&!d.getElement().contains(b.el)){c=a.isElement?a.dom:a;if(c&&!Ext.isGarbage(c)){b.alignTo(a,b._lastAlignToPos)}else {b.clearAlignEl()}}}}},1,0,0,0,0,0,[Ext.util,'Floating'],0);Ext.cmd.derive('Ext.util.ElementContainer',Ext.Base,{mixinId:'elementCt',config:{childEls:{$value:{},cached:!0,lazy:!0,merge:function(d,f,g,e){var c=f?Ext.Object.chain(f):{},b,a;if(d instanceof Array){for(b=d.length;b--;){a=d[b];if(!e||!(a in c)){if(typeof a==='string'){c[a]={name:a,itemId:a}}else {c[a.name]=a}}}}else {if(d){if(d.constructor===Object){for(b in d){if(!e||!(b in c)){a=d[b];if(a===!0){c[b]={itemId:b}}else {if(typeof a==='string'){c[b]={itemId:a}}else {c[b]=a;if(!('itemId' in a)){a.itemId=b}}}c[b].name=b}}}else {if(!e||!(d in c)){c[d]={name:d,itemId:d}}}}}return c}}},destroy:function(){var c=this,d=c.getChildEls(),a,b;for(b in d){a=c[b];if(a){if(a.destroy){a.component=null;a.destroy()}c[b]=null}}},privates:{afterClassMixedIn:function(a){var c=a.prototype,b=c.childEls;if(b){delete c.childEls;a.getConfigurator().add({childEls:b})}},attachChildEls:function(h,n){var i=this,k=i.getChildEls(),e=n||i,m=e.id+'-',l=!e.frame,f,g,b,j,c,a,d;for(f in k){b=k[f];if(l&&b.frame){continue}c=b.select;if(c){a=h.select(c,!0)}else {if(!(c=b.selectNode)){if(!(d=b.id)){d=m+b.itemId;a=Ext.cache[d]}else {a=Ext.cache[d]||h.getById(d)}}else {a=h.selectNode(c,!1)}}if(a){if(a.isElement){a.component=e}else {if(a.isComposite&&!a.isLite){g=a.elements;for(j=g.length;j--;){g[j].component=e}}}}i[f]=a||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="{frameBodyCls} {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="{frameBodyCls} {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(c,b){var a=c.name;return function(g){var d=this,f=d.renderConfigs||(d.renderConfigs={}),e=f[b];if(d._renderState>=b){(c.setter||c.getSetter()).call(d,g)}else {if(!e){f[b]=e={}}if(!(a in e)){e[a]=d[a]}d[a]=g}return d}},processRenderConfig:function(g,e,c){var h=this.prototype,j=this.getConfigurator(),k=Ext.util.Renderable,l=k.makeRenderSetter,d=g[e],b,a,i,f;for(i in d){a=Ext.Config.get(i);if(!h[f=a.names.set]){b=a.renderSetter||(a.renderSetter={});h[f]=b[c]||(b[c]=l(a,c))}}delete g[e];j.add(d)}},onClassMixedIn:function(a){var e=a.override,c=this.processRenderConfig,d=function(b){if(b.beforeRenderConfig){this.processRenderConfig(b,'beforeRenderConfig',1)}if(b.renderConfig){this.processRenderConfig(b,'renderConfig',3)}e.call(this,b)},b=function(e,b){e.override=d;e.processRenderConfig=c;if(b.beforeRenderConfig){e.processRenderConfig(b,'beforeRenderConfig',1)}if(b.renderConfig){e.processRenderConfig(b,'renderConfig',3)}};b(a,a.prototype);a.onExtended(b)},afterRender:function(){var a=this,c={},i=a.protoEl,g=a.el,d,b,h,f,e;a.finishRenderChildren();a._renderState=4;if(a.contentEl){h='x-';f=h+'hidden-';e=a.contentEl=Ext.get(a.contentEl);e.component=a;e.removeCls([h+'hidden',f+'display',f+'offsets']);a.getContentTarget().appendChild(e.dom)}i.writeTo(c);b=c.removed;if(b){g.removeCls(b)}b=c.cls;if(b.length){g.addCls(b)}b=c.style;if(c.style){g.setStyle(b)}a.protoEl=null;if(!a.ownerCt){a.updateLayout()}if(!(a.x&&a.y)&&(a.pageX||a.pageY)){a.setPagePosition(a.pageX,a.pageY)}if(a.disableOnRender){a.onDisable()}if(Ext.enableAria){a.ariaApplyAfterRenderAttributes()}d=a.controller;if(d&&d.afterRender){d.afterRender(a)}},afterFirstLayout:function(l,k){var a=this,g=a.x,h=a.y,j=a.defaultAlign,i=a.alignOffset,f,d,e,b,c;if(!a.ownerLayout){d=g!==undefined;e=h!==undefined}if(a.floating&&!a.preventDefaultAlign&&(!d||!e)){if(a.floatParent){b=a.floatParent.getTargetEl().getViewRegion();c=a.el.getAlignToXY(a.alignTarget||a.floatParent.getTargetEl(),j,i);b.x=c[0]-b.x;b.y=c[1]-b.y}else {c=a.el.getAlignToXY(a.alignTarget||a.container,j,i);b=a.el.translateXY(c[0],c[1])}g=d?g:b.x;h=e?h:b.y;d=e=!0}if(d||e){a.setPosition(g,h)}a.onBoxReady(l,k);f=a.controller;if(f&&f.boxReady){f.boxReady(a)}},beforeRender:function(){var a=this,d=a.floating,e=a.getComponentLayout(),c,b;a._renderState=1;b=a.controller;if(b&&b.beforeRender){b.beforeRender(a)}a.initBindable();if(a.renderConfigs){a.flushRenderConfigs()}if(a.reference){a.publishState()}if(d){a.addCls(a.fixed?a._fixedLayerCls:a._layerCls);c=d.cls;if(c){a.addCls(c)}}a.frame=a.frame||a.alwaysFramed;if(!e.initialized){e.initLayout()}a.initOverflow();a.setUI(a.ui)},doApplyRenderTpl:function(d,a){var c=a.$comp,b;if(!c.rendered){b=c.initRenderTpl();b.applyOut(a.renderData,d)}},getElConfig:function(){var a=this,e=a.autoEl,c=a.getFrameInfo(),b={tag:'div',tpl:c?a.initFramingTpl(c.table):a.initRenderTpl()},f=a.layoutTargetCls,d=a.protoEl,g;a.initStyles(d);if(f&&!c){d.addCls(f)}d.writeTo(b);d.flush();if(Ext.isString(e)){b.tag=e}else {Ext.apply(b,e)}if(Ext.enableAria&&a.ariaRenderAttributesToElement){Ext.apply(b,a.ariaGetRenderAttributes())}b.id=a.id;if(b.tpl){if(c){b.tplData=g=a.getFrameRenderData();g.renderData=a.initRenderData()}else {b.tplData=a.initRenderData()}}return b},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 a=this,b=null;if(!a.hasListeners.beforerender||a.fireEvent('beforerender',a)!==!1){a._renderState=1;a.beforeRender();a.rendering=!0;a._renderState=2;b=a.getElConfig();if(a.el){b.id=a.$pid=Ext.id(null,a.el.identifiablePrefix)}}return b},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(i,h){var a=this,e=a.x,f=a.y,b=null,g=a.el,d,c;a.applyRenderSelectors();a.rendering=null;a.rendered=!0;a._renderState=3;if(a.renderConfigs){a.flushRenderConfigs()}if(e!=null){b={x:e}}if(f!=null){(b=b||{}).y=f}if(!a.getFrameInfo()){d=a.width;c=a.height;if(typeof d==='number'){b=b||{};b.width=d}if(typeof c==='number'){b=b||{};b.height=c}}if(a.touchScroll===1){a.getOverflowEl().disableTouchScroll()}a.lastBox=g.lastBox=b},render:function(c,g){var a=this,b=a.el,f=a.ownerLayout,h,d,e;if(b&&!b.isElement){a.wrapPrimaryEl(b);b=a.el}Ext.suspendLayouts();c=a.initContainer(c);e=a.getInsertPosition(g);if(!b){d=a.getRenderTree();if(f&&f.transformItemRenderTree){d=f.transformItemRenderTree(d)}if(d){if(e){b=Ext.DomHelper.insertBefore(e,d)}else {b=Ext.DomHelper.append(c,d)}a.wrapPrimaryEl(b);a.cacheRefEls(b)}}else {if(!a.hasListeners.beforerender||a.fireEvent('beforerender',a)!==!1){a.beforeRender();a.needsRenderTpl=a.rendering=!0;a._renderState=2;a.initStyles(b);if(a.allowDomMove!==!1){if(e){c.dom.insertBefore(b.dom,e)}else {c.dom.appendChild(b.dom)}}}else {h=!0}}if(b&&!h){a.finishRender(g)}Ext.resumeLayouts(!a.hidden&&!c.isDetachedBody)},ensureAttachedToBody:function(c){var a=this,b;while(a.ownerCt){a=a.ownerCt}if(a.container.isDetachedBody){a.container=b=Ext.getBody();b.appendChild(a.el.dom);if(c){a.updateLayout()}if(typeof a.x==='number'||typeof a.y==='number'){a.setPosition(a.x,a.y)}}},privates:{applyRenderSelectors:function(){var a=this,b=a.renderSelectors,e=a.el,d,c;a.attachChildEls(e);if(b){for(c in b){d=b[c];if(d){a[c]=e.selectNode(d,!1)}}}},cacheRefEls:function(a){a=a||this.el;var e=Ext.cache,h=Ext.dom.Element,f=a.isElement?a.dom:a,d=f.querySelectorAll('[data-ref]'),g=d.length,c,b;for(b=0;b<g;b++){c=d[b];if(!e[c.id]){new h(c)}}},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(c,d){var a=d.$comp,b=a.data;if(a.html){Ext.DomHelper.generateMarkup(a.html,c);delete a.html}if(a.tpl){if(!a.tpl.isTemplate){a.tpl=new Ext.XTemplate(a.tpl)}if(b){a.data=b=b.isEntity?b.getData(!0):b;a.tpl.applyOut(b,c)}}},doRenderFramingDockedItems:function(d,a,c){var b=a.$comp;if(!b.rendered&&b.doRenderDockedItems){a.renderData.$skipDockedItems=!0;b.doRenderDockedItems.call(this,d,a,c)}},flushRenderConfigs:function(){var b=this,f=b.renderConfigs,h=b._renderState,e,c,a,d,g;if(f){for(c=0;c<=h;++c){e=f[c];if(e){f[c]=null;for(a in e){g=e[a];(d||(d={}))[a]=b[a];b[a]=g}}}if(d){b.setConfig(d)}}},finishRender:function(j){var a=this,g=Ext.cache,d,h,f,e,i,b,c;if(!a.el||a.$pid){if(a.container){c=g[a.id];b=c?c.dom:a.container.getById(a.id,!0)}else {f=a.$pid||a.id;c=g[f];b=c?c.dom:Ext.getDom(f)}if(!a.el){a.wrapPrimaryEl(b)}else {delete a.$pid;if(!a.el.dom){a.wrapPrimaryEl(a.el)}b.parentNode.insertBefore(a.el.dom,b);d=b;b=a.el.dom;h=b.firstChild;while(d.firstChild){b.insertBefore(d.firstChild,h)}a.el.addCls(d.className);Ext.removeNode(d)}}else {if(a.needsRenderTpl){e=a.initRenderTpl();if(e){i=a.initRenderData();e.insertFirst(a.getTargetEl(),i)}a.cacheRefEls()}}a.el.component=a;if(!a.container){a.container=Ext.get(a.el.dom.parentNode)}if(a.ctCls){a.container.addCls(a.ctCls)}a.onRender(a.container,j);if(!a.overflowInited){a.initOverflow()}a.el.setVisibilityMode(Ext.Element[a.hideMode.toUpperCase()]);if(a.overCls){a.el.hover(a.addOverCls,a.removeOverCls,a)}if(a.hasListeners.render){a.fireEvent('render',a)}a.afterRender();if(a.hasListeners.afterrender){a.fireEvent('afterrender',a)}a.initEvents();if(a.hidden){a.el.hide()}},finishRenderChildren:function(){var a=this.getComponentLayout();a.finishRender()},getFrameRenderData:function(){var a=this,b=a.frameSize,c='';if(a._syncFrameHeight&&a.height){c='height:'+(a.height-b.height)+'px'}return {$comp:a,fgid:a.id+'-frame',ui:a.ui,uiCls:a.uiCls,frameCls:a.frameCls,frameBodyCls:a.layoutTargetCls||'',baseCls:a.baseCls,top:!!b.top,left:!!b.left,right:!!b.right,bottom:!!b.bottom,mcStyle:c,frameElCls:''}},getFrameInfo:function(){if(Ext.supports.CSS3BorderRadius||!this.frame){return !1}var c=this,q=c.frameInfoCache,p=c.getFramingInfoCls()+'-frameInfo',b=q[p],r,a,o,l,j,n,g,e,d,f,m,i,h,k;if(b==null){r=Ext.fly(c.getStyleProxy(p),'frame-style-el');a=r.getStyle('font-family');if(a){a=a.split('-');o=parseInt(a[1],10);l=parseInt(a[2],10);j=parseInt(a[3],10);n=parseInt(a[4],10);g=parseInt(a[5],10);e=parseInt(a[6],10);d=parseInt(a[7],10);f=parseInt(a[8],10);m=parseInt(a[9],10);i=parseInt(a[10],10);h=parseInt(a[11],10);k=parseInt(a[12],10);b={table:a[0].charAt(0)==='t',vertical:a[0].charAt(1)==='v',top:o,right:l,bottom:j,left:n,width:n+l,height:o+j,border:{top:g,right:e,bottom:d,left:f,width:f+e,height:g+d},padding:{top:m,right:i,bottom:h,left:k,width:k+i,height:m+h}}}else {b=!1}q[p]=b}c.frame=!!b;c.frameSize=b;return b},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,!0));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=!1}b.container=a.dom?a:Ext.get(a);return b.container},initOverflow:function(){var a=this,e=a.getOverflowStyle(),d=a.scrollFlags,b=a.getOverflowEl(),c=d.y||d.x,f=a.touchScroll=c&&Ext.supports.touchScroll;if(!c||!b||!b.isElement){return}a.overflowInited=!0;if(f===2){b.setStyle('overflow','hidden')}else {b.setStyle(e)}},doRenderPadding:function(c,b){var a=b.$comp;if(a.touchScroll){c.push('padding:',a.unitizeBox(a.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 a=this,p=a.el.dom,l=a.frameTable,h=a.frameBody,g=h.dom,q=a.getFrameInfo(),j,b,c,f,d,m,n,o,k,e,i;c=document.createElement('div');m=a.getFrameRenderData();o=a.getFrameTpl(q.table);o.insertFirst(c,m);i=c.querySelectorAll('[data-ref]');e=c.querySelector('[data-ref="frameBody"]');for(d=g;d.parentNode!==p;){d=d.parentNode}while(c.firstChild){p.insertBefore(c.firstChild,d)}e.parentNode.replaceChild(g,e);g.className=e.className;h.setSize();j=a.getChildEls();if(l){l.destroy();a.frameTable=null}for(b in j){if(j[b].frame){f=a[b];if(f&&f!==h){f.destroy();a[b]=null}}}for(k=i.length;k--;){b=(n=i[k]).getAttribute('data-ref');if(b!=='frameBody'){a[b]=new Ext.dom.Element(n)}}},frameInfoCache:{}}},0,0,0,0,0,0,[Ext.util,'Renderable'],0);Ext.cmd.derive('Ext.state.Provider',Ext.Base,{prefix:'ext-',constructor:function(b){var a=this;Ext.apply(a,b);a.state={};a.mixins.observable.constructor.call(a)},get:function(c,b){var a=this.state[c];return a===undefined?b:a},clear:function(b){var a=this;delete a.state[b];a.fireEvent('statechange',a,b,null)},set:function(c,b){var a=this;a.state[c]=b;a.fireEvent('statechange',a,c,b)},decodeValue:function(a){var i=this,j=/^(a|n|d|b|s|o|e)\:(.*)$/,e=j.exec(unescape(a)),d,h,g,c,f,b;if(!e||!e[1]){return}h=e[1];a=e[2];switch(h){case 'e':return null;case 'n':return parseFloat(a);case 'd':return new Date(Date.parse(a));case 'b':return a==='1';case 'a':d=[];if(a){c=a.split('^');f=c.length;for(b=0;b<f;b++){a=c[b];d.push(i.decodeValue(a))}};return d;case 'o':d={};if(a){c=a.split('^');f=c.length;for(b=0;b<f;b++){a=c[b];g=a.split('=');d[g[0]]=i.decodeValue(g[1])}};return d;default:return a;}},encodeValue:function(a){var c='',e=0,b,f,d;if(a==null){return 'e:1'}else {if(typeof a==='number'){b='n:'+a}else {if(typeof a==='boolean'){b='b:'+(a?'1':'0')}else {if(Ext.isDate(a)){b='d:'+a.toUTCString()}else {if(Ext.isArray(a)){for(f=a.length;e<f;e++){c+=this.encodeValue(a[e]);if(e!==f-1){c+='^'}}b='a:'+c}else {if(typeof a==='object'){for(d in a){if(typeof a[d]!=='function'&&a[d]!==undefined){c+=d+'='+this.encodeValue(a[d])+'^'}}b='o:'+c.substring(0,c.length-1)}else {b='s:'+a}}}}}}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:!0,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(b,a){this.provider.set(b,a)},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:!1,saveDelay:100,constructor:function(){var a=this;if(!a.stateEvents){a.stateEvents=[]}if(a.stateful!==!1){a.addStateEvents(a.stateEvents);a.initState()}},addStateEvents:function(f){var a=this,e,b,c,d;if(a.stateful&&a.getStateId()){d=typeof f==='string'?arguments:f;c=a.stateEventsByName||(a.stateEventsByName={});for(e=d.length;e--;){b=d[e];if(b&&!c[b]){c[b]=1;a.on(b,a.onStateChange,a)}}}},onStateChange:function(){var a=this,d=a.saveDelay,b,c;if(!a.stateful){return}if(d){if(!a.stateTask){b=Ext.state.Stateful;c=b.runner||(b.runner=new Ext.util.TaskRunner());a.stateTask=c.newTask({run:a.saveState,scope:a,interval:d,repeat:1,fireIdleEvent:!1})}a.stateTask.start()}else {a.saveState()}},saveState:function(){var a=this,i=a.stateful&&a.getStateId(),g=a.hasListeners,f,c,d,h,b,e;if(i){b=a.getState()||{};f=a.getPlugins()||[];for(d=0,h=f.length;d<h;d++){c=f[d];if(c&&c.getState){e=c.getState(b);if(e&&!b[c.ptype]){b[c.ptype]=e}}}if(!g.beforestatesave||a.fireEvent('beforestatesave',a,b)!==!1){Ext.state.Manager.set(i,b);if(g.statesave){a.fireEvent('statesave',a,b)}}}},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 a=this,j=a.stateful&&a.getStateId(),h=a.hasListeners,d,b,e,i,g,c,f;if(j){b=Ext.state.Manager.get(j);if(b){d=Ext.apply({},b);if(!h.beforestaterestore||a.fireEvent('beforestaterestore',a,b)!==!1){g=a.getPlugins()||[];for(e=0,i=g.length;e<i;e++){c=g[e];if(c){f=c.ptype;if(c.applyState){c.applyState(d[f],b)}delete d[f]}}a.applyState(d);if(h.staterestore){a.fireEvent('staterestore',a,b)}}}}},savePropToState:function(a,d,f){var b=this,e=b[a],c=b.initialConfig;if(b.hasOwnProperty(a)){if(!c||c[a]!==e){if(d){d[f||a]=e}return !0}}return !1},savePropsToState:function(a,c){var d=this,b,e;if(typeof a==='string'){d.savePropToState(a,c)}else {for(b=0,e=a.length;b<e;++b){d.savePropToState(a[b],c)}}return c},destroy:function(){var a=this,b=a.stateTask;if(b){b.destroy();a.stateTask=null}a.clearListeners()}},1,0,0,0,0,0,[Ext.state,'Stateful'],0);Ext.cmd.derive('Ext.util.Focusable',Ext.Base,{mixinId:'focusable',hasFocus:!1,focusable:!1,focusCls:'focus',initFocusable:Ext.emptyFn,initFocusableEvents:function(){this.initFocusableElement()},getFocusClsEl:function(){return this.getFocusEl()},getFocusEl:function(){return this.element||this.el},destroyFocusable:function(){this.focusListeners=Ext.destroy(this.focusListeners);delete this.focusTask},enableFocusable:Ext.emptyFn,disableFocusable:function(){var a=this,b,d=a.focusCls,c;if(a.hasFocus){b=a.findFocusTarget();if(b){b.focus()}}c=a.getFocusClsEl();if(d&&c){c.removeCls(a.removeClsWithUI(d,!0))}},isFocusable:function(c){var a=this,b;if(!a.focusable&&(!a.isContainer||!c)){return !1}b=a.getFocusEl();if(b&&a.canFocus()){return b.isFocusable(c)}return !1},canFocus:function(){var a=this;return (a.isContainer||a.focusable)&&a.rendered&&!a.destroying&&!a.isDestroyed&&!a.disabled&&a.isVisible(!0)},focus:function(c,e,f,g){var a=this,b,d,h;if(!a.focusable&&!a.isContainer||a.isDestroyed||a.destroying){return}if(e){a.getFocusTask().delay(Ext.isNumber(e)?e:10,a.focus,a,[c,!1,f,g]);return a}a.cancelFocus();if(a.canFocus()){if(b=a.getFocusEl()){if(b.isComponent){return b.focus(c,e,f,g)}d=b.dom;if(d){if(b.needsTabIndex()){d.tabIndex=-1}if(a.floating){h=a.container.dom.scrollTop}b.focus();if(c){if(Ext.isArray(c)){if(a.selectText){a.selectText.apply(a,c)}}else {if(d.select){d.select()}else {if(a.selectText){a.selectText()}}}}Ext.callback(f,g)}if(a.floating){if(a!==a.zIndexManager.getActive()){a.toFront(!0)}if(h!==undefined){a.container.dom.scrollTop=h}}}}else {b=a.findFocusTarget();if(b){return b.focus(c,e,f,g)}}return a},cancelFocus:function(){var a=this.getFocusTask();if(a){a.cancel()}},beforeBlur:Ext.emptyFn,onBlur:function(b){var a=this,c=a.focusableContainer,e=a.focusCls,d;if(!a.focusable||a.destroying){return}a.beforeBlur(b);if(c){c.beforeFocusableChildBlur(a,b)}d=a.getFocusClsEl();if(e&&d){d.removeCls(a.removeClsWithUI(e,!0))}if(a.validateOnBlur){a.validate()}a.hasFocus=!1;a.fireEvent('blur',a,b);a.postBlur(b);if(c){c.afterFocusableChildBlur(a,b)}},postBlur:Ext.emptyFn,beforeFocus:Ext.emptyFn,onFocus:function(b){var a=this,c=a.focusableContainer,e=a.focusCls,d;if(!a.focusable){return}if(a.canFocus()){a.beforeFocus(b);if(c){c.beforeFocusableChildFocus(a,b)}d=a.getFocusClsEl();if(e&&d){d.addCls(a.addClsWithUI(e,!0))}if(!a.hasFocus){a.hasFocus=!0;a.fireEvent('focus',a,b)}a.postFocus(b);if(c){c.afterFocusableChildFocus(a,b)}}},postFocus:Ext.emptyFn,getTabIndex:function(){var c=this,a,b;if(!c.focusable){return}a=c.getFocusEl();if(a){if(a.isComponent){b=a.getTabIndex()}else {if(a.isElement){b=a.getAttribute(Ext.Element.tabIndexAttributeName)}else {return}}c.tabIndex=b}else {b=c.tabIndex}return b-0},setTabIndex:function(b){var c=this,a;if(!c.focusable){return}c.tabIndex=b;a=c.getFocusEl();if(a){if(a.isComponent){a.setTabIndex(b)}else {if(a.isElement){a.set({tabindex:b})}}}},onFocusEnter:function(b){var a=this;a.previousFocus=b.fromComponent||b.relatedTarget;a.containsFocus=!0;a.fireEvent('focusenter',a,b)},onFocusLeave:function(b){var a=this;a.previousFocus=null;a.containsFocus=!1;a.fireEvent('focusleave',a,b)},privates:{revertFocus:function(){var b=this,a=b.previousFocus;b.previousFocus=null;if(a&&b.containsFocus){if(a.isComponent){a.focus()}else {a=Ext.fly(a);if(Ext.isIE8||a.isFocusable&&a.isFocusable()){a.focus()}}}},findFocusTarget:function(){var c=this,a,b;for(a=c.up(':not([disabled])');a;a=a.up(':not([disabled])')){b=Ext.ComponentQuery.query(':focusable:not([hasFocus])',a);if(b.length){return b[0]}if(a.isFocusable&&a.isFocusable()){return a}}},initFocusableElement:function(){var b=this,d=b.tabIndex,a=b.getFocusEl(),c;if(a&&!a.isComponent){c=a.needsTabIndex();if(c||d!=null){a.dom.setAttribute('tabindex',d)}a.dom.setAttribute(Ext.Component.componentIdAttribute,b.id)}},getFocusTask:function(){if(!this.focusTask){this.focusTask=Ext.focusTask}return this.focusTask},blur:function(){var a=this,b;if(!a.focusable||!a.rendered){return}b=a.getFocusEl();if(b){a.blurring=!0;b.blur();delete a.blurring}return a},disableTabbing:function(){var b=this,c=b.el,a;if(!b.focusable){return}a=b.getFocusEl();if(c){c.saveChildrenTabbableState()}if(a){a=a.isComponent?a.getFocusEl():a;a.saveTabbableState()}},enableTabbing:function(){var b=this,c=b.el,a;if(!b.focusable){return}a=b.getFocusEl();if(a){a=a.isComponent?a.getFocusEl():a;a.restoreTabbableState()}if(c){c.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(c,b){var a=this.runningLayoutContext||this.pendingLayouts;if(a){a.cancelComponent(c,!1,b)}},fromElement:function(g,b){var e=Ext.Component.componentIdAttribute,a=Ext.getDom(g),f=Ext.ComponentManager.all,c,d;if(b){b=Ext.getDom(b)}else {b=document.body.parentNode}while(a&&a.nodeType===1&&a!==b){c=a.getAttribute(e)||a.id;if(c){d=f[c];if(d){return d}}a=a.parentNode}return null},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 a=this.callParent();if(Ext.GlobalEvents.hasListeners.afterlayout){Ext.GlobalEvents.fireEvent('afterlayout')}return a}});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 a=this,d=a.runningLayoutContext,c;if(d){d.queueInvalidate(b)}else {c=a.pendingLayouts||(a.pendingLayouts=new Ext.layout.Context());c.queueInvalidate(b);if(!e&&!a.layoutSuspendCount&&!b.isLayoutSuspended()){a.flushLayouts()}}}},$configPrefixed:!1,$configStrict:!1,config:{data:null,maxHeight:null,maxWidth:null,minHeight:null,minWidth:null,scrollable:null},defaultBindProperty:'html',alignTarget:null,autoRender:!1,autoShow:!1,baseCls:'x-component',childEls:{frameTable:{frame:!0},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:!1,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:!1,floating:!1,hidden:!1,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:!0,synthetic:!1,tplWriteMode:'overwrite',ui:'default',uiCls:[],weight:null,allowDomMove:!0,autoGenId:!1,borderBoxCls:'x-border-box',componentLayoutCounter:0,contentPaddingProperty:'padding',deferLayouts:!1,frameSize:null,horizontalPosProp:'left',isComponent:!0,_isLayoutRoot:!1,layoutSuspendCount:0,liquidLayout:!1,maskOnDisable:!0,offsetsCls:'x-hidden-offsets',rendered:!1,rootCls:'x-body',scrollerCls:'x-scroll-scroller',scrollerSelector:'.x-scroll-scroller',_scrollFlags:{auto:{auto:{overflowX:'auto',overflowY:'auto',x:!0,y:!0,both:!0},'false':{overflowX:'auto',overflowY:'hidden',x:!0,y:!1,both:!1},scroll:{overflowX:'auto',overflowY:'scroll',x:!0,y:!0,both:!0}},'false':{auto:{overflowX:'hidden',overflowY:'auto',x:!1,y:!0,both:!1},'false':{overflowX:'hidden',overflowY:'hidden',x:!1,y:!1,both:!1},scroll:{overflowX:'hidden',overflowY:'scroll',x:!1,y:!0,both:!1}},scroll:{auto:{overflowX:'scroll',overflowY:'auto',x:!0,y:!0,both:!0},'false':{overflowX:'scroll',overflowY:'hidden',x:!0,y:!1,both:!1},scroll:{overflowX:'scroll',overflowY:'scroll',x:!0,y:!0,both:!0}},none:{overflowX:'',overflowY:'',x:!1,y:!1,both:!1}},_scrollableCfg:{x:{x:!0,y:!1},y:{x:!1,y:!0},horizontal:{x:!0,y:!1},vertical:{x:!1,y:!0},both:{x:!0,y:!0},'true':{x:!0,y:!0}},validIdRe:Ext.validIdRe,constructor:function(b){var a=this,e,j,i,h,g,c,d,f;b=b||{};if(b.initialConfig){if(b.isAction){a.baseAction=b}b=b.initialConfig}else {if(b.tagName||b.dom||Ext.isString(b)){b={applyTo:b,id:b.id||b}}}a.initialConfig=b;a.getId();a.protoEl=new Ext.util.ProtoElement();a.initConfig(b);if(a.scrollable==null){g=a.autoScroll;if(g){f=!!g}else {c=a.overflowX;d=a.overflowY;if(c||d){f={x:c&&c!=='hidden'?c:!1,y:d&&d!=='hidden'?d:!1}}}if(f){a.setScrollable(f)}}i=a.xhooks;if(i){delete a.xhooks;Ext.override(a,i)}a.mixins.elementCt.constructor.call(a);a.setupProtoEl();if(a.cls){a.initialCls=a.cls;a.protoEl.addCls(a.cls)}if(a.style){a.initialStyle=a.style;a.protoEl.setStyle(a.style)}a.renderData=a.renderData||{};a.initComponent();if(!a.preventRegister){Ext.ComponentManager.register(a)}a.mixins.state.constructor.call(a);a.addStateEvents('resize');h=a.getController();if(h){h.init(a)}if(a.plugins){for(e=0,j=a.plugins.length;e<j;e++){a.plugins[e]=a.initPlugin(a.plugins[e])}}a.loader=a.getLoader();if(a.disabled){a.disabled=!1;a.disable(!0)}if(a.renderTo){a.render(a.renderTo)}if(a.autoShow&&!a.initOwnerCt){a.show()}if(a.baseAction){a.baseAction.addComponent(a)}},beforeInitConfig:function(){this.mixins.observable.constructor.call(this)},addCls:function(c){var a=this,b=a.rendered?a.el:a.protoEl;b.addCls.apply(b,arguments);return a},addClsWithUI:function(a,i){var b=this,d=[],e=0,h=b.uiCls=Ext.Array.clone(b.uiCls),f=b.activeUI,g,c;if(typeof a==='string'){a=a.indexOf(' ')<0?[a]:Ext.String.splitWords(a)}g=a.length;for(;e<g;e++){c=a[e];if(c&&!b.hasUICls(c)){h.push(c);if(f){d=d.concat(b.addUIClsToElement(c))}}}if(i!==!0&&f){b.addCls(d)}return d},afterComponentLayout:function(c,b,e,d){var a=this;if(++a.componentLayoutCounter===1){a.afterFirstLayout(c,b)}if(c!==e||b!==d){a.onResize(c,b,e,d)}if(a.floating){a.onAfterFloatLayout()}},addPlugin:function(a){var b=this;a=b.constructPlugin(a);if(b.plugins){b.plugins.push(a)}else {b.plugins=[a]}if(b.pluginsInitialized){b.initPlugin(a)}return a},addPropertyToState:function(b,a,c){var d=this,e=arguments.length;if(e===3||d.hasOwnProperty(a)){if(e<3){c=d[a]}if(c!==d.initialConfig[a]){(b||(b={}))[a]=c}}return b},addUIClsToElement:function(f){var a=this,d=a.baseCls+'-'+a.ui+'-'+f,h=['x-'+f,a.baseCls+'-'+f,d],e,c,g,b;if(a.rendered&&a.frame&&!Ext.supports.CSS3BorderRadius){d+='-';e=a.getChildEls();for(c in e){b=e[c].frame;if(b&&b!==!0){g=a[c];if(g){g.addCls(d+b)}}}}return h},removeUIClsFromElement:function(f){var a=this,d=a.baseCls+'-'+a.ui+'-'+f,h=['x-'+f,a.baseCls+'-'+f,d],e,c,g,b;if(a.rendered&&a.frame&&!Ext.supports.CSS3BorderRadius){d+='-';e=a.getChildEls();for(c in e){b=e[c].frame;if(b&&b!==!0){g=a[c];if(g){g.removeCls(d+b)}}}}return h},adjustPosition:function(c,d){var b=this,a;if(b.isContainedFloater()){a=b.floatParent.getTargetEl().getViewRegion();c+=a.left;d+=a.top}return {x:c,y:d}},afterHide:function(d,c){var a=this,b=a.focusableContainer;a.hiddenByLayout=null;if(this.ownerLayout){this.updateLayout({isRoot:!1})}Ext.callback(d,c||a);a.fireHierarchyEvent('hide');a.fireEvent('hide',a);if(b){b.onFocusableChildHide(a)}},afterSetPosition:function(b,c){var a=this;a.onPosition(b,c);if(a.hasListeners.move){a.fireEvent('move',a,b,c)}},afterShow:function(b,h,g){var a=this,c=a.el,f,e,d;b=a.getAnimateTarget(b);if(!a.ghost){b=null}if(b){e={x:c.getX(),y:c.getY(),width:c.dom.offsetWidth,height:c.dom.offsetHeight};f={x:b.getX(),y:b.getY(),width:b.dom.offsetWidth,height:b.dom.offsetHeight};c.addCls(a.offsetsCls);d=a.ghost();d.el.stopAnimation();d.setX(-10000);a.ghostBox=e;d.el.animate({from:f,to:e,listeners:{afteranimate:function(){delete d.componentLayout.lastComponentSize;a.unghost();delete a.ghostBox;c.removeCls(a.offsetsCls);a.onShowComplete(h,g)}}})}else {a.onShowComplete(h,g)}a.fireHierarchyEvent('show')},animate:function(b){var a=this,e,d,j,k,c,r,q,i,p,h,o,f,n,l,m,g;b=b||{};c=b.to||{};if(Ext.fx.Manager.hasFxBlock(a.id)){return a}e=Ext.isDefined(c.width);if(e){k=Ext.Number.constrain(c.width,a.minWidth,a.maxWidth)}d=Ext.isDefined(c.height);if(d){j=Ext.Number.constrain(c.height,a.minHeight,a.maxHeight)}if(!b.dynamic&&(e||d)){i=(b.from?b.from.width:undefined)||a.getWidth();p=i;h=(b.from?b.from.height:undefined)||a.getHeight();o=h;f=!1;if(d&&j>h){o=j;f=!0}if(e&&k>i){p=k;f=!0}if(d||e){g=a.el.getStyle('overflow');if(g!=='hidden'){a.el.setStyle('overflow','hidden')}}if(f){r=!Ext.isNumber(a.width);q=!Ext.isNumber(a.height);a.setSize(p,o);a.el.setSize(i,h);if(r){delete a.width}if(q){delete a.height}}if(e){c.width=k}if(d){c.height=j}}n=a.constrain;l=a.constrainHeader;if(n||l){a.constrain=a.constrainHeader=!1;m=b.callback;b.callback=function(){a.constrain=n;a.constrainHeader=l;if(m){m.call(b.scope||a,arguments)}if(g!=='hidden'){a.el.setStyle('overflow',g)}}}return a.mixins.animate.animate.apply(a,arguments)},applyScrollable:function(a,c){var b=this,f=b.rendered,e,d;if(a){if(a===!0||typeof a==='string'){e=b._scrollableCfg[a];a=e}if(c){c.setConfig(a);a=c}else {a=Ext.Object.chain(a);if(f){a.element=b.getOverflowEl();d=b.getScrollerEl();if(d){a.innerElement=d}}a.autoRefresh=!1;if(Ext.supports.touchScroll===1){a.translatable={translationMethod:'scrollparent'};a.indicators=!1}a=Ext.scroll.Scroller.create(a);a.component=b}}else {if(c){c.setConfig({x:!1,y:!1});c.destroy()}}if(b.rendered){b.getOverflowStyle();b.updateLayout()}return a},beforeComponentLayout:function(){return !0},beforeDestroy:Ext.emptyFn,beforeLayout:function(){if(this.floating){this.onBeforeFloatLayout()}},beforeSetPosition:function(a,b,f){var d=this,c=null,e,g,h,i;if(a){if(Ext.isNumber(e=a[0])){f=b;b=a[1];a=e}else {if((e=a.x)!==undefined){f=b;b=a.y;a=e}}}if(d.constrain||d.constrainHeader){c=d.calculateConstrainedPosition(null,[a,b],!0);if(c){a=c[0];b=c[1]}}g=a!==undefined;h=b!==undefined;if(g||h){d.x=a;d.y=b;i=d.adjustPosition(a,b);c={x:i.x,y:i.y,anim:f,hasX:g,hasY:h}}return c},beforeShow:Ext.emptyFn,bubble:function(d,b,c){var a=this;while(a){if(d.apply(b||a,c||[a])===!1){break}a=a.getBubbleTarget()}return this},cloneConfig:function(a){a=a||{};var d=a.id||Ext.id(),c=Ext.applyIf(a,this.initialConfig),b;c.id=d;b=Ext.getClass(this);return new b(c)},destroy:function(){var a=this,e=a.renderSelectors,f=a.getConfig('viewModel',!0),d=a.getConfig('session',!0),b,c,g;if(!a.isDestroyed){if(!a.hasListeners.beforedestroy||a.fireEvent('beforedestroy',a)!==!1){a.destroying=!0;c=a.floatParent||a.ownerCt;if(a.floating){delete a.floatParent;if(a.zIndexManager){a.zIndexManager.unregister(a);a.zIndexManager=null}}a.removeBindings();a.beforeDestroy();if(f&&f.isViewModel){f.destroy();a.viewModel=null}if(d&&d.isSession){if(d.getAutoDestroy()){d.destroy()}a.session=null}if(c&&c.remove){c.remove(a,!1)}a.stopAnimation();a.onDestroy();Ext.destroy(a.plugins);a.componentLayout=null;if(a.hasListeners.destroy){a.fireEvent('destroy',a)}if(!a.preventRegister){Ext.ComponentManager.unregister(a)}a.mixins.state.destroy.call(a);if(a.floating){a.onFloatDestroy()}a.clearListeners();if(a.rendered){if(!a.preserveElOnDestroy){a.el.destroy()}a.el.component=null;a.mixins.elementCt.destroy.call(a);if(e){for(b in e){if(e.hasOwnProperty(b)){g=a[b];if(g){delete a[b];g.destroy()}}}}a.data=a.el=a.frameBody=a.rendered=null}a.destroying=!1;a.isDestroyed=!0}}},disable:function(e,d){var a=this,b=a.focusableContainer,c=a.getInherited();if(!d){c.disabled=!0}if(a.maskOnDisable){c.disableMask=!0}if(!a.disabled){a.addCls(a.disabledCls);if(a.rendered){a.onDisable()}else {a.disableOnRender=!0}a.disabled=!0;if(e!==!0){a.fireEvent('disable',a)}if(b){b.onFocusableChildDisable(a)}}return a},enable:function(e,b){var a=this,c=a.focusableContainer,d=a.getInherited();if(!b){delete a.getInherited().disabled}if(a.maskOnDisable){delete d.disableMask}if(a.disabled){if(!(b&&d.hasOwnProperty('disabled'))){a.disableOnRender=!1;a.removeCls(a.disabledCls);if(a.rendered){a.onEnable()}a.disabled=!1;if(e!==!0){a.fireEvent('enable',a)}if(c){c.onFocusableChildEnable(a)}}}return a},findParentBy:function(b){var a;for(a=this.getRefOwner();a&&!b(a,this);a=a.getRefOwner()){}return a||null},findParentByType:function(a){return Ext.isFunction(a)?this.findParentBy(function(b){return b.constructor===a}):this.up(a)},findPlugin:function(c){var a,b=this.plugins,d=b&&b.length;for(a=0;a<d;a++){if(b[a].ptype===c){return b[a]}}},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(b){var a=this,c=a.componentLayout;if(a.hidden){b.hidden=!0}if(a.collapseImmune){b.collapseImmune=!0}if(a.modelValidation!==undefined){b.modelValidation=a.modelValidation}a.mixins.bindable.initInheritedState.call(a,b);if(c&&c.initInheritedState){c.initInheritedState(b)}},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 a=this,b=a.loader;if(b){if(!b.isLoader){a.loader=new Ext.ComponentLoader(Ext.apply({target:a},b))}else {b.setTarget(a)}return a.loader}return null},getMaskTarget:function(){return this.maskElement?this[this.maskElement]:null},getPlugin:function(c){var a,b=this.plugins,d=b&&b.length;for(a=0;a<d;a++){if(b[a].pluginId===c){return b[a]}}return null},getPosition:function(e){var a=this,b,d=a.isContainedFloater(),c;if(e===!0&&!d){return [a.getLocalX(),a.getLocalY()]}b=a.getXY();if(e===!0&&d){c=a.floatParent.getTargetEl().getViewRegion();b[0]-=c.left;b[1]-=c.top}return b},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(g){var c=this,a=Ext.layout.SizeModel,h=c.componentLayout.ownerContext,q=c.width,p=c.height,n,m,j,i,d,k,f,b,l,e,o=c.floating||c.floated;if(h){e=h.widthModel;d=h.heightModel}if(!e||!d){j=(n=typeof q)==='number';i=(m=typeof p)==='number';l=o||!(k=c.ownerLayout);if(l){f=Ext.layout.Layout.prototype.autoSizePolicy;b=o?3:c.shrinkWrap;if(j){e=a.configured}if(i){d=a.configured}}else {f=k.getItemSizePolicy(c,g);b=k.isItemShrinkWrap(c)}if(h){h.ownerSizePolicy=f}b=b===!0?3:b||0;if(l&&b){if(q&&n==='string'){b&=2}if(p&&m==='string'){b&=1}}if(b!==3){if(!g){g=c.ownerCt&&c.ownerCt.getSizeModel()}if(g){b|=(g.width.shrinkWrap?1:0)|(g.height.shrinkWrap?2:0)}}if(!e){if(!f.setsWidth){if(j){e=a.configured}else {e=b&1?a.shrinkWrap:a.natural}}else {if(f.readsWidth){if(j){e=a.calculatedFromConfigured}else {e=b&1?a.calculatedFromShrinkWrap:a.calculatedFromNatural}}else {e=a.calculated}}}if(!d){if(!f.setsHeight){if(i){d=a.configured}else {d=b&2?a.shrinkWrap:a.natural}}else {if(f.readsHeight){if(i){d=a.calculatedFromConfigured}else {d=b&2?a.calculatedFromShrinkWrap:a.calculatedFromNatural}}else {d=a.calculated}}}}return e.pairsByHeightOrdinal[d.ordinal]},getState:function(){var b=this,a=null,c=b.getSizeModel();if(c.width.configured){a=b.addPropertyToState(a,'width')}if(c.height.configured){a=b.addPropertyToState(a,'height')}return a},getWidth:function(){return this.el.getWidth()},getXType:function(){return this.self.xtype},getXTypes:function(){var c=this.self,b,a,d;if(!c.xtypes){b=[];a=this;while(a){d=a.xtypes;if(d!==undefined){b.unshift.apply(b,d)}a=a.superclass}c.xtypeChain=b;c.xtypes=b.join('/')}return c.xtypes},hasCls:function(b){var a=this.rendered?this.el:this.protoEl;return a.hasCls.apply(a,arguments)},hasUICls:function(b){var c=this,a=c.uiCls||[];return Ext.Array.contains(a,b)},hide:function(b,d,c){var a=this;if(a.pendingShow){a.pendingShow=!1}if(!(a.rendered&&!a.isVisible())){if(!a.hasListeners.beforehide||a.fireEvent('beforehide',a)!==!1||a.hierarchicallyHidden){a.getInherited().hidden=a.hidden=!0;if(a.rendered){a.onHide.apply(a,arguments)}}}return a},initComponent:function(){var a=this,c=a.width,b=a.height;if(a.plugins&&!a.plugins.processed){a.plugins=a.constructPlugins()}a.pluginsInitialized=!0;if(c!=null||b!=null){a.setSize(c,b)}if(a.listeners){a.on(a.listeners);a.listeners=null}if(a.focusable){a.initFocusable()}},initEvents:function(){var a=this,d=a.afterRenderEvents,e,c,f,b,g;if(d){for(f in d){c=a[f];if(c&&c.on){e=d[f];for(b=0,g=e.length;b<g;++b){a.mon(c,e[b])}}}}if(a.focusable){a.initFocusableEvents()}},is:function(a){return Ext.ComponentQuery.is(this,a)},isDescendantOf:function(b){var a;for(a=this.getRefOwner();a&&a!==b;a=a.getRefOwner()){}return a||null},isAncestor:function(a){while(a){if(a.getRefOwner()===this){return !0}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 a=this,b=!1,c,d;for(;c=a.ownerCt||a.floatParent;a=c){d=c.getInherited();if(d.hidden){b=!0;break}if(a.getInherited().collapseImmune){if(c.collapsed&&!a.collapseImmune){b=!0;break}}else {b=!!d.collapsed;break}}return b},isLayoutChild:function(a){return !this.floating&&!!this.up(a)},isLayoutRoot:function(){var a=this,b=a.ownerLayout;if(!b||a._isLayoutRoot||a.floating){return !0}return b.isItemLayoutRoot(a)},isLayoutSuspended:function(){var a=this,b;while(a){if(a.layoutSuspendCount||a.suspendLayout){return !0}b=a.ownerLayout;if(!b){break}a=b.owner}return !1},isVisible:function(c){var a=this,b;if(a.hidden||!a.rendered||a.isDestroyed){b=!0}else {if(c){b=a.isHierarchicallyHidden()}}return !b},isXType:function(a,b){return b?Ext.Array.indexOf(this.xtypes,a)!==-1:!!this.xtypesMap[a]},isMasked:function(b){var a=this;return !!(a.masked||a.loadMask&&a.loadMask.isVisible()||b&&a.getInherited().masked)},setMasked:function(b){var a=this,c=a.focusableContainer;if(b){a.masked=!0;a.getInherited().masked=b}else {a.masked=!1;delete a.getInherited().masked}if(c){c.onFocusableChildMasked(a,b)}return a},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(!0)},nextNode:function(b,i){var c=this,f=c.ownerCt,g,d,h,e,a;if(i&&c.is(b)){return c}if(f){for(d=f.items.items,e=Ext.Array.indexOf(d,c)+1,h=d.length;e<h;e++){a=d[e];if(a.is(b)){return a}if(a.down){g=a.down(b);if(g){return g}}}return f.nextNode(b)}return null},nextSibling:function(c){var f=this.ownerCt,b,d,a,e;if(f){b=f.items;a=b.indexOf(this)+1;if(a){if(c){for(d=b.getCount();a<d;a++){if((e=b.getAt(a)).is(c)){return e}}}else {if(a<b.getCount()){return b.getAt(a)}}}}return null},onAdded:function(b,e,d){var a=this,c=a.inheritedState;a.ownerCt=b;if(c&&d){a.invalidateInheritedState()}if(a.reference){a.fixReference()}if(a.hasListeners&&a.hasListeners.added){a.fireEvent('added',a,b,e)}if(Ext.GlobalEvents.hasListeners.added){a.fireHierarchyEvent('added')}},onRemoved:function(c){var a=this,b;if(Ext.GlobalEvents.hasListeners.removed){a.fireHierarchyEvent('removed')}if(a.hasListeners.removed){a.fireEvent('removed',a,a.ownerCt)}if(a.reference){b=a.lookupReferenceHolder();if(b){b.clearReference(a)}}if(!c){a.removeBindings()}if(a.inheritedState&&!c){a.invalidateInheritedState()}a.ownerCt=a.ownerLayout=null},onBoxReady:function(d,c){var a=this,b=a.scrollable;if(a.resizable){a.initResizable(a.resizable)}if(a.draggable){a.initDraggable()}if(b){if(a.touchScroll&&b.isTouchScroller){b.setInnerElement(a.getScrollerEl())}b.setElement(a.getOverflowEl());if(Ext.isIE){Ext.on('show',a.onGlobalShow,a)}}if(a.hasListeners.boxready){a.fireEvent('boxready',a,d,c)}},onDestroy:function(){var a=this,b=a.controller,c=a.focusableContainer;if(a.bind){a.removeBindings()}if(b){b.destroy()}a.controller=null;if(a.rendered){Ext.destroy(a.dd,a.resizer,a.proxy,a.proxyWrap,a.resizerComponent,a.scrollable,a.contentEl)}if(c){c.onFocusableChildDestroy(a)}if(a.focusable){a.destroyFocusable()}Ext.destroy(a.componentLayout,a.loadMask,a.floatingDescendants)},onDisable:function(){var a=this,c,b;if(a.focusable){a.disableFocusable()}if(a.maskOnDisable&&!a.getInheritedConfig('disableMask',!0)){c=a.el.dom;b=c.nodeName;if(a.disabledRe.test(b)){c.disabled=!0}if(!a.nonMaskableRe.test(b)){a.mask()}}},onEnable:function(){var a=this,c,b;if(a.focusable){a.enableFocusable()}if(a.maskOnDisable&&a.getInherited().hasOwnProperty('masked')){c=a.el.dom;b=c.nodeName;if(a.disabledRe.test(b)){c.disabled=!1}if(!a.nonMaskableRe.test(b)){a.unmask()}}},onGlobalShow:function(a){if(this.up(a)){this.getScrollable().restoreState()}},onHide:function(a,g,e){var b=this,c,d,f;b.revertFocus();a=b.getAnimateTarget(a);if(!b.ghost){a=null}if(a){f={x:a.getX(),y:a.getY(),width:a.dom.offsetWidth,height:a.dom.offsetHeight};c=b.ghost();c.el.stopAnimation();d=b.getSize();c.el.animate({to:f,listeners:{afteranimate:function(){delete c.componentLayout.lastComponentSize;c.el.hide();c.setHiddenState(!0);c.el.setSize(d);b.afterHide(g,e)}}})}b.el.hide();if(!a){b.afterHide(g,e)}},onPosition:Ext.emptyFn,onResize:function(e,d,b,c){var a=this;if(a.floating&&a.constrain){a.doConstrain()}if(b){a.refreshScroll()}if(a.hasListeners.resize){a.fireEvent('resize',a,e,d,b,c)}},onShow:function(){var a=this;a.el.show();a.updateLayout({isRoot:!1});if(a.floating){if(a.maximized){a.fitContainer()}else {if(a.constrain){a.doConstrain()}}}},onShowComplete:function(d,c){var a=this,b=a.focusableContainer;if(a.floating){a.onFloatShow()}Ext.callback(d,c||a);a.fireEvent('show',a);if(b){b.onFocusableChildShow(a)}delete a.hiddenByLayout},onShowVeto:Ext.emptyFn,previousNode:function(c,h){var d=this,f=d.ownerCt,a,g,e,b;if(h&&d.is(c)){return d}if(f){for(g=f.items.items,e=Ext.Array.indexOf(g,d)-1;e>-1;e--){b=g[e];if(b.query){a=b.query(c);a=a[a.length-1];if(a){return a}}if(b.is(c)){return b}}return f.previousNode(c,!0)}return null},previousSibling:function(c){var e=this.ownerCt,b,a,d;if(e){b=e.items;a=b.indexOf(this);if(a!==-1){if(c){for(--a;a>=0;a--){if((d=b.getAt(a)).is(c)){return d}}}else {if(a){return b.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(c){var a=this,b=a.rendered?a.el:a.protoEl;b.removeCls.apply(b,arguments);return a},removeClsWithUI:function(a,k){var b=this,d=[],e=0,g=Ext.Array,i=g.remove,j=b.uiCls=g.clone(b.uiCls),f=b.activeUI,h,c;if(typeof a==='string'){a=a.indexOf(' ')<0?[a]:Ext.String.splitWords(a)}h=a.length;for(e=0;e<h;e++){c=a[e];if(c&&b.hasUICls(c)){i(j,c);if(f){d=d.concat(b.removeUIClsFromElement(c))}}}if(k!==!0&&f){b.removeCls(d)}return d},resumeLayouts:function(b){var a=this;if(!a.rendered){return}if(a.layoutSuspendCount&&!--a.layoutSuspendCount){a.suspendLayout=!1;if(b&&!a.isLayoutSuspended()){a.updateLayout(b)}}},scrollBy:function(c,d,b){var a=this.getScrollable();if(a){a.scrollBy(c,d,b)}},scrollTo:function(c,d,b){var a=this.getScrollable();if(a){a.scrollTo(c,d,b)}},setAutoScroll:function(a){this.setScrollable(!!a);return this},setBorder:function(a,c){var b=this,d=!!c;if(b.rendered||d){if(!d){c=b.el}if(!a){a=0}else {if(a===!0){a='1px'}else {a=this.unitizeBox(a)}}c.setStyle('border-width',a);if(!d){b.updateLayout()}}b.border=a},setDock:function(c){var a=this,b=a.ownerCt;if(c!==a.dock){if(b&&b.moveDocked){b.moveDocked(a,c)}else {a.dock=c}}return a},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 a=this,b={target:a};if(a.rendered){if(c!==!1){if(Ext.isString(c)){b.msg=c}else {Ext.apply(b,c)}if(!a.loadMask||!a.loadMask.isLoadMask){if(d&&b.useTargetEl==null){b.useTargetEl=!0}a.loadMask=new Ext.LoadMask(b)}else {Ext.apply(a.loadMask,b)}if(a.loadMask.isVisible()){a.loadMask.afterShow()}else {a.loadMask.show()}}else {if(a.loadMask&&a.loadMask.isLoadMask){a.loadMask.hide()}}}return a.loadMask},setMargin:function(a,c){var b=this;if(b.rendered){if(!a&&a!==0){a=''}else {if(a===!0){a=5}a=this.unitizeBox(a)}b.margin=a;b.margin$=null;b.getEl().setStyle('margin',a);if(!c){b.updateLayout(b._notAsLayoutRoot)}}else {b.margin=a}},setOverflowXY:function(a,b){this.setScrollable({x:a&&a!=='hidden'?a:!1,y:b&&b!=='hidden'?b:!1});return this},setPagePosition:function(a,c,f){var b=this,d,e;if(Ext.isArray(a)){c=a[1];a=a[0]}b.pageX=a;b.pageY=c;if(b.floating){if(b.isContainedFloater()){e=b.floatParent.getTargetEl().getViewRegion();if(Ext.isNumber(a)&&Ext.isNumber(e.left)){a-=e.left}if(Ext.isNumber(c)&&Ext.isNumber(e.top)){c-=e.top}}else {d=b.el.translateXY(a,c);a=d.x;c=d.y}b.setPosition(a,c,f)}else {d=b.el.translateXY(a,c);b.setPosition(d.x,d.y,f)}return b},setPosition:function(b,c,e){var a=this,d=a.beforeSetPosition.apply(a,arguments);if(d&&a.rendered){b=d.x;c=d.y;if(e){if(b!==a.getLocalX()||c!==a.getLocalY()){a.stopAnimation();a.animate(Ext.apply({duration:1000,listeners:{afteranimate:Ext.Function.bind(a.afterSetPosition,a,[b,c])},to:{left:b,top:c}},e))}}else {a.setLocalXY(b,c);a.afterSetPosition(b,c)}}return a},setScrollX:function(c,b){var a=this.getScrollable();if(a){a.scrollTo(c,null,b)}},setScrollY:function(c,b){var a=this.getScrollable();if(a){a.scrollTo(null,c,b)}},setSize:function(b,c){var a=this,e,d,g=a.width,f=a.height;if(b&&typeof b==='object'){c=b.height;b=b.width}if(typeof b==='number'){a.width=Ext.Number.constrain(b,a.minWidth,a.maxWidth)}else {if(b===null){delete a.width}else {if(typeof b==='string'){e=!0;a.width=b}}}if(typeof c==='number'){a.height=Ext.Number.constrain(c,a.minHeight,a.maxHeight)}else {if(c===null){delete a.height}else {if(typeof c==='string'){d=!0;a.height=c}}}if(a.rendered&&a.isVisible()){if(g!==a.width||f!==a.height){if(a.liquidLayout||e||d){a.el.setSize(a.width,a.height)}a.updateLayout(a._notAsLayoutRoot)}}return a},setStyle:function(b,a){var c=this.el||this.protoEl;c.setStyle(b,a);return this},setUI:function(c){var a=this,e=a.uiCls,d=a.activeUI,b;if(c===d){return}if(d){b=a.removeClsWithUI(e,!0);if(b.length){a.removeCls(b)}a.removeUIFromElement()}else {a.uiCls=[]}a.ui=c;a.activeUI=c;a.addUIToElement();b=a.addClsWithUI(e,!0);if(b.length){a.addCls(b)}if(a.rendered){a.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(c,e,d){var a=this,b=a.rendered;if(a.hierarchicallyHidden||a.floating&&!b&&a.isHierarchicallyHidden()){if(!b){a.initHierarchyEvents()}if(arguments.length>1){arguments[0]=null;a.pendingShow=arguments}else {a.pendingShow=!0}}else {if(b&&a.isVisible()){if(a.floating){a.onFloatShow()}}else {if(a.fireEvent('beforeshow',a)!==!1){a.hidden=!1;delete this.getInherited().hidden;Ext.suspendLayouts();if(!b&&(a.autoRender||a.floating)){a.doAutoRender();b=a.rendered}if(b){a.beforeShow();Ext.resumeLayouts();a.onShow.apply(a,arguments);a.afterShow.apply(a,arguments)}else {Ext.resumeLayouts(!0)}}else {a.onShowVeto()}}}return a},showAt:function(b,c,d){var a=this;if(!a.rendered&&(a.autoRender||a.floating)){a.x=b;a.y=c;return a.show()}if(a.floating){a.setPosition(b,c,d)}else {a.setPagePosition(b,c,d)}a.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=!0}},unitizeBox:function(a){return Ext.Element.unitizeBox(a)},unmask:function(){(this.getMaskTarget()||this.el).unmask();this.setMasked(!1)},unregisterFloatingItem:function(b){var a=this;if(a.floatingDescendants){a.floatingDescendants.unregister(b)}},up:function(c,b){var a=this.getRefOwner(),f=typeof b==='string',g=typeof b==='number',e=b&&b.isComponent,d=0;if(c){for(;a;a=a.getRefOwner()){d++;if(c.isComponent){if(a===c){return a}}else {if(Ext.ComponentQuery.is(a,c)){return a}}if(f&&a.is(b)){return}if(g&&d===b){return}if(e&&a===b){return}}}return a},update:function(b,i,j){var a=this,h=a.tpl&&!Ext.isString(b),g=a.getScrollable(),f=a.focusableContainer,e,c,d;if(h){a.data=b&&b.isEntity?b.getData(!0):b}else {a.html=Ext.isObject(b)?Ext.DomHelper.markup(b):b}if(a.rendered){e=a.getSizeModel();c=e.width.shrinkWrap||e.height.shrinkWrap;if(a.isContainer){d=a.layout.getRenderTarget();c=c||a.items.items.length>0}else {d=a.touchScroll?a.getScrollerEl():a.getTargetEl()}if(h){a.tpl[a.tplWriteMode](d,a.data||{})}else {d.setHtml(a.html,i,j)}if(c){a.updateLayout()}if(g){g.refresh(!0)}if(f){f.onFocusableChildUpdate(a)}}},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:!0},_notAsLayoutRoot:{isRoot:!1},updateLayout:function(b){var a=this,e,d=a.lastBox,c=b&&b.isRoot;if(d){d.invalid=!0}if(!a.rendered||a.layoutSuspendCount||a.suspendLayout){return}if(a.hidden){Ext.Component.cancelLayout(a)}else {if(typeof c!=='boolean'){c=a.isLayoutRoot()}}if(c||!a.ownerLayout||!a.ownerLayout.onContentChange(a)){if(!a.isLayoutSuspended()){e=b&&b.hasOwnProperty('defer')?b.defer:a.deferLayouts;Ext.Component.updateLayout(a,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(b,a){this.changeConstraint(b,a,'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(b,a){this.el.setX(b,a)},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 a=this,d=a.baseCls+'-'+a.ui,e,c,f,b;a.addCls(d);if(a.rendered&&a.frame&&!Ext.supports.CSS3BorderRadius){d+='-';e=a.getChildEls();for(c in e){b=e[c].frame;if(b&&b!==!0){f=a[c];if(f){f.addCls(d+b)}}}}},changeConstraint:function(b,g,f,c,d){var a=this,e=a[d];if(b!=null&&typeof e==='number'){a[d]=Math[f](e,b)}if(a.liquidLayout){if(b!=null){a.setStyle(c,b+'px')}else {if(g){a.setStyle(c,'')}}}if(a.rendered){a.updateLayout()}},constructPlugin:function(a){var b=this;if(typeof a==='string'){a=Ext.PluginManager.create({},a,b)}else {a=Ext.PluginManager.create(a,null,b)}return a},constructPlugins:function(){var d=this,a=d.plugins,c,b,e;if(a){c=[];c.processed=!0;if(!Ext.isArray(a)){a=[a]}for(b=0,e=a.length;b<e;b++){c[b]=d.constructPlugin(a[b])}}d.pluginsInitialized=!0;return c},detachFromBody:function(){Ext.getDetachedBody().appendChild(this.el);Ext.Component.cancelLayout(this);this.isDetached=!0},doAddListener:function(h,g,i,c,m,l,k){var a=this,b,f,j,d,e;if(Ext.isObject(g)||c&&c.element){if(c.element){d=c.element;b={};b[h]=g;if(i){b.scope=i}j=a.$elementEventOptions;for(f in c){if(j[f]){b[f]=c[f]}}}else {b=g;d=h}e=a[d];if(e&&e.isObservable){a.mon(e,b)}else {a.afterRenderEvents=a.afterRenderEvents||{};if(!a.afterRenderEvents[d]){a.afterRenderEvents[d]=[]}a.afterRenderEvents[d].push(b)}return}a.mixins.observable.doAddListener.call(a,h,g,i,c,m,l,k)},fireHierarchyEvent:function(b){var a=Ext.GlobalEvents;if(a.hasListeners[b]){a.fireEvent(b,this)}},getActionEl:function(){return this.el},getAutoId:function(){this.autoGenId=!0;return ++Ext.Component.AUTO_ID},getContentTarget:function(){return this.el},getDragEl:function(){return this.el},getOverflowEl:function(){return this.getTargetEl()},getOverflowStyle:function(){var e=this,d=e.getScrollable(),f=e._scrollFlags,b,c,a;if(d){b=d.getX();if(b===!0){b='auto'}c=d.getY();if(c===!0){c='auto'}a=f[b][c]}else {a=f.none}e.scrollFlags=a;return {overflowX:a.overflowX,overflowY:a.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,!0)}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 a=this,b=[a.baseCls],c=a.getComponentLayout().targetCls;if(c){b.push(c)}if(a.componentCls){b.push(a.componentCls)}else {a.componentCls=a.baseCls}return b},initDraggable:function(){var a=this,c=a.resizer&&a.resizer.el!==a.el?a.resizerComponent=new Ext.Component({ariaRole:'presentation',el:a.resizer.el,rendered:!0,container:a.container}):a,b=Ext.applyIf({el:c.getDragEl(),constrainTo:a.constrain||a.draggable.constrain?a.constrainTo||(a.floatParent?a.floatParent.getTargetEl():a.container):undefined},a.draggable);if(a.constrain||a.constrainDelegate){b.constrain=a.constrain;b.constrainDelegate=a.constrainDelegate}a.dd=new Ext.util.ComponentDragger(c,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===!0?5:b))}}},initPlugin:function(a){a.init(this);return a},initResizable:function(b){var a=this;b=Ext.apply({target:a,dynamic:!1,constrainTo:a.constrain||b&&b.constrain?a.constrainTo||(a.floatParent?a.floatParent.getTargetEl():a.container):undefined,handles:a.resizeHandles},b);b.target=a;a.resizer=new Ext.resizer.Resizer(b)},initStyles:function(b){var a=this,g=a.margin,j=a.border,i=a.cls,h=a.style,e=a.x,f=a.y,k=a.liquidLayout,d,c;a.initPadding(b);if(g!=null){b.setStyle('margin',this.unitizeBox(g===!0?5:g))}if(j!=null){a.setBorder(j,b)}if(i&&i!==a.initialCls){b.addCls(i);a.cls=a.initialCls=null}if(h&&h!==a.initialStyle){b.setStyle(h);a.style=a.initialStyle=null}if(e!=null){b.setStyle(a.horizontalPosProp,typeof e==='number'?e+'px':e)}if(f!=null){b.setStyle('top',typeof f==='number'?f+'px':f)}if(!a.ownerCt||a.floating){if(Ext.scopeCss){b.addCls(a.rootCls)}b.addCls(a.borderBoxCls)}if(k||!a.getFrameInfo()){d=a.width;c=a.height;if(d!=null){if(typeof d==='number'){b.setStyle('width',d+'px')}else {b.setStyle('width',d)}}if(c!=null){if(typeof c==='number'){b.setStyle('height',c+'px')}else {b.setStyle('height',c)}}}},isContainedFloater:function(){return this.floating&&this.floatParent},isDescendant:function(b){if(b.isContainer){for(var a=this.ownerCt;a;a=a.ownerCt){if(a===b){return !0}}}return !1},owns:function(a){var c=!1,b;if(a.isEvent){a=a.target}else {if(a.isElement){a=a.dom}}b=Ext.Component.fromElement(a);if(b){c=b===this||!!b.up(this)}return c},parseBox:function(a){return Ext.Element.parseBox(a)},reattachToBody:function(){this.isDetached=!1},refreshScroll:function(){var a=this.getScrollable();if(a){a.refresh()}},removeManagedListenerItem:function(d,a,h,g,f,e){var c=this,b=a.options?a.options.element:null;if(b){b=c[b];if(b&&b.un){if(d||a.item===h&&a.ename===g&&(!f||a.fn===f)&&(!e||a.scope===e)){b.un(a.ename,a.fn,a.scope);if(!d){Ext.Array.remove(c.managedListeners,a)}}}}else {return c.mixins.observable.removeManagedListenerItem.apply(c,arguments)}},removeOverCls:function(){this.el.removeCls(this.overCls)},removePlugin:function(a){Ext.Array.remove(this.plugins,a);a.destroy()},removeUIFromElement:function(){var a=this,d=a.baseCls+'-'+a.ui,e,c,f,b;a.removeCls(d);if(a.rendered&&a.frame&&!Ext.supports.CSS3BorderRadius){d+='-';e=a.getChildEls();for(c in e){b=e[c].frame;if(b&&b!==!0){f=a[c];if(f){f.removeCls(d+b)}}}}},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 a=this,b=a.getInherited(),c=a.zIndexManager;a.hidden=d;if(d){b.hidden=!0}else {delete b.hidden}if(c){c.onComponentShowHide(a)}},setupProtoEl:function(){var a=this.initCls();this.protoEl.addCls(a)},wrapPrimaryEl:function(c){var a=this,b=a.el;if(!b||!b.isElement){a.el=Ext.get(c)}if(a.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':!0,'box':!0},['widget.box','widget.component'],[[Ext.mixin.Inheritable.prototype.mixinId||Ext.mixin.Inheritable.$className,Ext.mixin.Inheritable],[Ext.util.Floating.prototype.mixinId||Ext.util.Floating.$className,Ext.util.Floating],[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.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(!0)};Ext.setGlyphFontFamily=function(b){Ext._glyphFontFamily=b};a.hierarchyEventSource=a.prototype.hierarchyEventSource=Ext.GlobalEvents});Ext.define('ExtThemeNeptune.Component',{override:'Ext.Component',initComponent:function(){arguments.callee.$previous.call(this);if(this.dock&&this.border===undefined){this.border=!1}},privates:{initStyles:function(){var a=this,b=a.hasOwnProperty('border'),c=a.border;if(a.dock){a.border=null}arguments.callee.$previous.apply(this,arguments);if(b){a.border=c}else {delete a.border}}}});Ext.cmd.derive('Ext.data.SortTypes',Ext.Base,{singleton:!0,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(b){var a=parseFloat(String(b).replace(this.stripCommasRe,''));return isNaN(a)?0:a},asInt:function(b){var a=parseInt(String(b).replace(this.stripCommasRe,''),10);return isNaN(a)?0:a}},0,0,0,0,0,0,[Ext.data,'SortTypes'],0);Ext.cmd.derive('Ext.data.Types',Ext.Base,{singleton:!0},0,0,0,0,0,0,[Ext.data,'Types'],function(a){var b=Ext.data.SortTypes;Ext.apply(a,{stripRe:/[\$,%]/g,AUTO:{sortType:b.none,type:'auto'},STRING:{convert:function(b){var c=this.getAllowNull()?null:'';return b===undefined||b===null?c:String(b)},sortType:b.asUCString,type:'string'},INT:{convert:function(b){if(typeof b==='number'){return parseInt(b,10)}return b!==undefined&&b!==null&&b!==''?parseInt(String(b).replace(a.stripRe,''),10):this.getAllowNull()?null:0},sortType:b.none,type:'int'},FLOAT:{convert:function(b){if(typeof b==='number'){return b}return b!==undefined&&b!==null&&b!==''?parseFloat(String(b).replace(a.stripRe,''),10):this.getAllowNull()?null:0},sortType:b.none,type:'float'},BOOL:{convert:function(b){if(typeof b==='boolean'){return b}if(this.getAllowNull()&&(b===undefined||b===null||b==='')){return null}return b==='true'||b==1},sortType:b.none,type:'bool'},DATE:{convert:function(b){var d=this.getDateReadFormat()||this.getDateFormat(),c;if(!b){return null}if(b instanceof Date){return b}if(d){return Ext.Date.parse(b,d)}c=Date.parse(b);return c?new Date(c):null},sortType:b.asDate,type:'date'}});a.BOOLEAN=a.BOOL;a.INTEGER=a.INT;a.NUMBER=a.FLOAT});Ext.cmd.derive('Ext.form.Labelable',Ext.Mixin,{isLabelable:!0,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} ','{childElCls} {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:!0}],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 > 1">\n</tpl>{.}</tpl>','</tpl>'],isFieldLabelable:!0,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:!1,hideEmptyLabel:!0,preventMark:!1,autoFitErrors:!0,msgTarget:'qtip',msgTargets:{qtip:1,title:1,under:1,side:1,none:1},noWrap:!0,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(Ext.isIE8){a.restoreDisplay=Ext.Function.createDelayed(a.doRestoreDisplay,0,a)}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 b=this,c=b.labelSeparator,a=b.fieldLabel||'',d=a.substr(a.length-1);return d===c?a.slice(0,-1):a},getFieldLabel:function(){return this.trimLabelSeparator()},setFieldLabel:function(b){b=b||'';var a=this,f=a.labelSeparator,h=a.labelEl,c=a.errorWrapEl,g=a.labelAlign!=='top',e=a.noLabelCls,d=a.errorWrapUnderSideLabelCls;a.fieldLabel=b;if(a.rendered){if(Ext.isEmpty(b)&&a.hideEmptyLabel){a.addCls(e);if(g&&c){c.removeCls(d)}}else {if(f){b=a.trimLabelSeparator()+f}h.dom.firstChild.innerHTML=b;a.removeCls(e);if(g&&c){c.addCls(d)}}a.updateLayout()}},setHideLabel:function(b){var a=this;if(b!==a.hideLabel){a.hideLabel=b;if(a.rendered){a[b?'addCls':'removeCls'](a.noLabelCls);a.updateLayout()}}},setHideEmptyLabel:function(b){var a=this,c;if(b!==a.hideEmptyLabel){a.hideEmptyLabel=b;if(a.rendered&&!a.hideLabel){c=b&&!a.getFieldLabel();a[c?'addCls':'removeCls'](a.noLabelCls);a.updateLayout()}}},getInsertionRenderData:function(c,d){var e=d.length,b,a;while(e--){b=d[e];a=this[b];if(a){if(typeof a!=='string'){if(!a.isTemplate){a=Ext.XTemplate.getTpl(this,b)}a=a.apply(c)}}c[b]=a||''}return c},getLabelableRenderData:function(){var a=this,l=a.labelAlign,o=l==='top',r=l==='right',c=a.msgTarget==='side',h=a.msgTarget==='under',q=a.errorMsgCls,b=a.labelPad,m=a.labelWidth,d=a.labelClsExtra||'',j=c?a.errorWrapSideCls:a.errorWrapUnderCls,g='',f='',p=a.hasVisibleLabel(),k=a.autoFitErrors,e=a.defaultBodyWidth,n,i;if(o){d+=' '+a.topLabelCls;if(b){f='padding-bottom:'+b+'px;'}if(c&&!k){d+=' '+a.topLabelSideErrorCls}}else {if(r){d+=' '+a.rightLabelCls}if(b){g+=a.getHorizontalPaddingStyle()+b+'px;'}g+='width:'+(m+(b?b:0))+'px;';f='width:'+m+'px'}if(p){if(!o&&h){j+=' '+a.errorWrapUnderSideLabelCls}}if(e){n='min-width:'+e+'px;max-width:'+e+'px;'}i={id:a.id,inputId:a.getInputId(),labelCls:a.labelCls,labelClsExtra:d,labelStyle:g+(a.labelStyle||''),labelInnerStyle:f,labelInnerCls:a.labelInnerCls,unselectableCls:Ext.Element.unselectableCls,bodyStyle:n,baseBodyCls:a.baseBodyCls,fieldBodyCls:a.fieldBodyCls,extraFieldBodyCls:a.extraFieldBodyCls,errorWrapCls:a.errorWrapCls,errorWrapExtraCls:j,renderError:c||h,invalidMsgCls:c?a.invalidIconCls:h?a.invalidUnderCls:'',errorMsgCls:q,growCls:a.grow?a.growCls:'',errorWrapStyle:c&&!k?'visibility:hidden':'display:none',fieldLabel:a.getFieldLabel(),labelSeparator:a.labelSeparator};a.getInsertionRenderData(i,a.labelableInsertions);return i},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 a=this,f={},e=Ext.Element,d=a.errorWrapEl,c,b;if(d){d.setVisibilityMode(a.msgTarget==='side'&&!a.autoFitErrors?e.VISIBILITY:e.DISPLAY)}if(a.extraMargins){c=a.el.getMargin();for(b in c){if(c.hasOwnProperty(b)){f['margin-'+b]=c[b]+a.extraMargins[b]+'px'}}a.el.setStyle(f)}},hasVisibleLabel:function(){if(this.hideLabel){return !1}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(d){var a=this,g=a.errorWrapEl,c=a.msgTarget,f=c==='side',h=c==='qtip',b,i,e;d=Ext.Array.from(d);i=a.getTpl('activeErrorsTpl');a.activeErrors=d;b=a.activeError=i.apply({fieldLabel:a.fieldLabel,errors:d,listCls:'x-list-plain'});a.renderActiveError();if(a.rendered){if(f){a.errorEl.dom.setAttribute('data-errorqtip',b)}else {if(h){a.getActionEl().dom.setAttribute('data-errorqtip',b)}else {if(c==='title'){a.getActionEl().dom.setAttribute('title',b)}}}if(f||h){Ext.form.Labelable.initTip()}if(!a.msgTargets[c]){e=Ext.get(c);if(e){e.dom.innerHTML=b}}}if(g){g.setVisible(d.length>0);if(f&&a.autoFitErrors){a.labelEl.addCls(a.topLabelSideErrorCls)}a.updateLayout()}},unsetActiveError:function(){var a=this,d=a.errorWrapEl,b=a.msgTarget,c,e=a.restoreDisplay;if(a.hasActiveError()){delete a.activeError;delete a.activeErrors;a.renderActiveError();if(a.rendered){if(b==='qtip'){a.getActionEl().dom.removeAttribute('data-errorqtip')}else {if(b==='title'){a.getActionEl().dom.removeAttribute('title')}}if(!a.msgTargets[b]){c=Ext.get(b);if(c){c.dom.innerHTML=''}}if(d){d.hide();if(b==='side'&&a.autoFitErrors){a.labelEl.removeCls(a.topLabelSideErrorCls)}a.updateLayout();if(e){a.el.dom.style.display='block';a.restoreDisplay()}}}}},doRestoreDisplay:function(){var a=this.el;if(a&&a.dom){a.dom.style.display=''}},renderActiveError:function(){var a=this,b=a.getActiveError(),c=!!b;if(b!==a.lastActiveError){a.lastActiveError=b;a.fireEvent('errorchange',a,b)}if(a.rendered&&!a.isDestroyed&&!a.preventMark){a.toggleInvalidCls(c);if(a.errorEl){a.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:!0,config:{validation:null,validationField:null},disabled:!1,submitValue:!0,validateOnChange:!0,valuePublishEvent:'change',suspendCheckChange:0,dirty:!1,initField:function(){var a=this,b=a.valuePublishEvent,d,c;a.initValue();if(Ext.isString(b)){a.on(b,a.publishValue,a)}else {for(c=0,d=b.length;c<d;++c){a.on(b[c],a.publishValue,a)}}},initValue:function(){var a=this;if('value' in a){a.suspendCheckChange++;a.setValue(a.value);a.suspendCheckChange--}a.initialValue=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(a,b){return String(a)===String(b)},isEqualAsString:function(a,b){return String(Ext.valueFrom(a,''))===String(Ext.valueFrom(b,''))},getSubmitData:function(){var a=this,b=null;if(!a.disabled&&a.submitValue){b={};b[a.getName()]=''+a.getValue()}return b},getModelData:function(d,c){var a=this,b=null;if(!a.disabled&&(a.submitValue||!c)){b={};b[a.getFieldIdentifier()]=a.getValue()}return b},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 a=this,b,c;if(!a.suspendCheckChange){b=a.getValue();c=a.lastValue;if(!a.isDestroyed&&a.didValueChange(b,c)){a.lastValue=b;a.fireEvent('change',a,b,c);a.onChange(b,c)}}},didValueChange:function(a,b){return !this.isEqual(a,b)},onChange:function(b){var a=this;if(a.validateOnChange){a.validate()}a.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(e){var b=[],d=this.getValidationField(),a=this.getValidation(),c;if(d){c=d.validate(e);if(c!==!0){b.push(c)}}if(a&&a!==!0){b.push(a)}return b},isValid:function(){var a=this;return a.disabled||Ext.isEmpty(a.getErrors())},validate:function(){return this.checkValidityChange(this.isValid())},checkValidityChange:function(a){var b=this;if(a!==b.wasValid){b.wasValid=a;b.fireEvent('validitychange',b,a)}return a},batchChanges:function(a){try{this.suspendCheckChange++;a()}catch(b){throw b}finally{this.suspendCheckChange--}this.checkChange()},isFileUpload:function(){return !1},extractFileInput:function(){return null},markInvalid:Ext.emptyFn,clearInvalid:Ext.emptyFn,updateValidation:function(b,a){if(a){this.validate()}},privates:{resetToInitialValue:function(){var a=this,b=a.originalValue;a.originalValue=a.initialValue;a.reset();a.originalValue=b}}},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:!0,shrinkWrap:!0,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:!0}],defaultBindProperty:'value',subTplInsertions:['inputAttrTpl'],childEls:['inputEl'],inputType:'text',isTextInput:!0,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:!0,readOnly:!1,readOnlyCls:'x-form-readonly',validateOnBlur:!0,hasFocus:!1,baseCls:'x-field',fieldBodyCls:'x-field-body',maskOnDisable:!1,stretchInputElFixed:!0,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(e){var a=this,d=a.inputType,c=a.getInputId(),b;b=Ext.apply({ui:a.ui,id:c,cmpId:a.id,name:a.name||c,disabled:a.disabled,readOnly:a.readOnly,value:a.getRawValue(),type:d,fieldCls:a.fieldCls,fieldStyle:a.getFieldStyle(),childElCls:e.childElCls,tabIdx:a.tabIndex,inputCls:a.inputCls,typeCls:'x-form-'+(a.isTextInput?'text':d),role:a.ariaRole},a.subTplData);a.getInsertionRenderData(b,a.subTplInsertions);return b},getSubTplMarkup:function(f){var b=this,c=b.getSubTplData(f),e=b.getTpl('preSubTpl'),d=b.getTpl('postSubTpl'),a='';if(e){a+=e.apply(c)}a+=b.getTpl('fieldSubTpl').apply(c);if(d){a+=d.apply(c)}return a},initRenderData:function(){return Ext.applyIf(Ext.Component.prototype.initRenderData.call(this),this.getLabelableRenderData())},setFieldStyle:function(b){var c=this,a=c.inputEl;if(a){a.applyStyles(b)}c.fieldStyle=b},getFieldStyle:function(){var a=this.fieldStyle;return Ext.isObject(a)?Ext.DomHelper.generateStyles(a,null,!0):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 a=this,b=a.inputEl?a.inputEl.getValue():Ext.valueFrom(a.rawValue,'');a.rawValue=b;return b},setRawValue:function(b){var a=this,c=a.rawValue;if(!a.transformRawValue.$nullFn){b=a.transformRawValue(b)}b=Ext.valueFrom(b,'');if(c===undefined||c!==b||a.valueContainsPlaceholder){a.rawValue=b;if(a.inputEl){a.bindChangeEvents(!1);a.inputEl.dom.value=b;a.bindChangeEvents(!0)}if(a.rendered&&a.reference){a.publishState('rawValue',b)}}return b},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=!0;if(a.hasActiveError()){a.clearInvalid();a.hadErrorOnDisable=!0}}if(a.wasValid===!1){a.checkValidityChange(!0)}},onEnable:function(){var a=this,b=a.inputEl,d=a.preventMark,c;Ext.Component.prototype.onEnable.call(this);if(b){b.dom.disabled=!1}if(a.wasValid!==undefined){a.forceValidation=!0;a.preventMark=!a.hadErrorOnDisable;c=a.isValid();a.forceValidation=!1;a.preventMark=d;a.checkValidityChange(c)}delete a.hadErrorOnDisable},setReadOnly:function(b){var a=this,c=a.inputEl,d=a.readOnly;b=!!b;a[b?'addCls':'removeCls'](a.readOnlyCls);a.readOnly=b;if(c){c.dom.readOnly=b}else {if(a.rendering){a.setReadOnlyOnBoxReady=!0}}if(b!==d){a.fireEvent('writeablechange',a,b)}},fireKey:function(a){if(a.isSpecialKey()){this.fireEvent('specialkey',this,a)}},initEvents:function(){var a=this,d=a.inputEl,f=a.onFieldMutation,e=a.checkChangeEvents,g=e.length,c,b;if(d){a.mon(d,Ext.supports.SpecialKeyDownRepeat?'keydown':'keypress',a.fireKey,a);for(c=0;c<g;++c){b=e[c];if(b==='propertychange'){a.usesPropertychange=!0}if(b==='textInput'){a.usesTextInput=!0}a.mon(d,b,f,a)}}Ext.Component.prototype.initEvents.call(this)},onFieldMutation:function(c){var a=this,b=a.checkChangeTask;if(!a.readOnly&&!(c.type==='propertychange'&&a.ignoreChangeRe.test(c.browserEvent.propertyName))){if(!b){a.checkChangeTask=b=new Ext.util.DelayedTask(a.doCheckChangeTask,a)}if(!a.bindNotifyListener){a.bindNotifyListener=Ext.on('beforebindnotify',a.onBeforeNotify,a,{destroyable:!0})}b.delay(a.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())}},onDirtyChange:function(b){var a=this;a[b?'addCls':'removeCls'](a.dirtyCls);if(a.rendered&&a.reference){a.publishState('dirty',b)}},isValid:function(){var a=this,b=a.disabled,c=a.forceValidation||!b;return c?a.validateValue(a.processRawValue(a.getRawValue())):b},validateValue:function(d){var a=this,c=a.getErrors(d),b=Ext.isEmpty(c);if(!a.preventMark){if(b){a.clearInvalid()}else {a.markInvalid(c)}}return b},markInvalid:function(c){var a=this,d=a.getActiveError(),b;a.setActiveErrors(Ext.Array.from(c));b=a.getActiveError();if(d!==b){a.setError(b)}},clearInvalid:function(){var a=this,b=a.hasActiveError();delete a.hadErrorOnDisable;a.unsetActiveError();if(b){a.setError('')}},setError:function(d){var a=this,b=a.msgTarget,c;if(a.rendered){if(b==='title'||b==='qtip'){c=b==='qtip'?'data-errorqtip':'title';a.getActionEl().dom.setAttribute(c,d||'')}else {a.updateLayout()}}},renderActiveError:function(){var a=this,c=a.hasActiveError(),b=a.invalidCls+'-field';if(a.inputEl){a.inputEl[c?'addCls':'removeCls']([b,b+'-'+a.ui])}a.mixins.labelable.renderActiveError.call(a)},beforeDestroy:function(){var a=this,b=a.checkChangeTask;if(b){b.cancel()}a.checkChangeTask=a.bindNotifyListener=Ext.destroy(a.bindNotifyListener);Ext.Component.prototype.beforeDestroy.call(this)},privates:{applyBind:function(f,b){var d=this,e=b&&b.value,a,c;a=Ext.Component.prototype.applyBind.call(this,f,b);c=a.value;d.hasBindingValue=!!c;if(c!==e&&d.getInherited().modelValidation){d.updateValueBinding(a)}return a},applyRenderSelectors:function(){var a=this;Ext.Component.prototype.applyRenderSelectors.call(this);if(!a.inputEl){a.inputEl=a.el.getById(a.getInputId())}},bindChangeEvents:function(c){var b=c?'resumeEvent':'suspendEvent',a=this.inputEl;if(this.usesPropertychange){a[b]('propertychange')}if(this.usesTextInput){a[b]('textInput')}},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(b){var d=this,a=b.value,c=b.$fieldBinding;if(c){c.destroy();b.$fieldBinding=null}if(a&&a.bindValidationField){d.fieldBinding=a.bindValidationField('setValidationField',d)}}},deprecated:{5:{methods:{doComponentLayout:function(){this.bindChangeEvents(!1);this.callParent(arguments);this.bindChangeEvents(!0)}}}}},0,['field'],['component','box','field'],{'component':!0,'box':!0,'field':!0},['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.VTypes',Ext.Base,function(){var b=/^[a-zA-Z_]+$/,a=/^[a-zA-Z0-9_]+$/,c=/^(")?(?:[^\."])(?:(?:[\.])?(?:[\w\-!#$%&'*+/=?^_`{|}~]))*\1@(\w[\-\w]*\.){1,5}([A-Za-z]){2,6}$/,d=/(((^https?)|(^ftp)):\/\/((([\-\w]+\.)+\w{2,3}(\/[%\-\w]+(\.\w{2,})?)*(([\w\-\.\?\\\/+@&#;`~=%!]*)(\.\w{2,})?)*)|(localhost|LOCALHOST))\/?)/i;return {singleton:!0,alternateClassName:'Ext.form.VTypes','email':function(a){return c.test(a)},'emailText':'This field should be an e-mail address in the format "[email protected]"','emailMask':/[\w.\-@'"!#$%&'*+/=?^_`{|}~]/i,'url':function(a){return d.test(a)},'urlText':'This field should be a URL in the format "http://www.example.com"','alpha':function(a){return b.test(a)},'alphaText':'This field should only contain letters and _','alphaMask':/[a-z_]/i,'alphanum':function(b){return a.test(b)},'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.util.ClickRepeater',Ext.util.Observable,{constructor:function(c,b){var a=this;a.el=Ext.get(c);a.el.unselectable();Ext.apply(a,b);Ext.util.Observable.prototype.constructor.call(this);if(!a.disabled){a.disabled=!0;a.enable()}if(a.handler){a.on('click',a.handler,a.scope||a)}},interval:20,delay:250,preventDefault:!0,stopDefault:!1,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=!1},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=!0},setDisabled:function(a){this[a?'disable':'enable']()},eventOptions:function(a){if(this.preventDefault){a.preventDefault()}if(this.stopDefault){a.stopEvent()}},destroy:function(){this.disable(!0);this.clearListeners()},handleDblClick:function(a){clearTimeout(this.timer);this.fireEvent('mousedown',this,a);this.fireEvent('click',this,a)},handleMouseDown:function(a){clearTimeout(this.timer);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(d,a,b,c){return d===c?a+b:b*(-Math.pow(2,-10*d/c)+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.form.trigger.Trigger',Ext.Base,{factoryConfig:{defaultType:'trigger'},repeatClick:!1,hidden:!1,hideOnReadOnly:undefined,weight:0,preventMouseDown:!0,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(c){var a=this,b;Ext.apply(a,c);if(a.compat4Mode){b=a.cls;a.focusCls=[a.focusCls,b+'-focus'];a.overCls=[a.overCls,b+'-over'];a.clickCls=[a.clickCls,b+'-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=!0},getBodyRenderData:Ext.emptyFn,getEl:function(){return this.el||null},getStateEl:function(){return this.el},hide:function(){var b=this,a=b.el;b.hidden=!0;if(a){a.hide()}},initEvents:function(){var a=this,b=a.isFieldEnabled,c=a.getStateEl(),d=a.el;c.addClsOnOver(a.overCls,b,a);c.addClsOnClick(a.clickCls,b,a);if(a.repeatClick){a.clickRepeater=new Ext.util.ClickRepeater(d,{preventDefault:!0,handler:a.onClick,listeners:{mousedown:a.onClickRepeaterMouseDown,scope:a},scope:a})}else {a.field.mon(d,{click:a.onClick,mousedown:a.onMouseDown,scope:a})}},isFieldEnabled:function(){return !this.field.disabled},isVisible:function(){var a=this,c=a.field,b=!1;if(a.hidden||!c||!a.rendered||a.isDestroyed){b=!0}return !b},onClick:function(){var a=this,c=arguments,e=a.clickRepeater?c[1]:c[0],d=a.handler,b=a.field;if(d&&!b.readOnly&&a.isFieldEnabled()){Ext.callback(a.handler,a.scope,[b,a,e],0,b)}},resolveListenerScope:function(a){return this.field.resolveSatelliteListenerScope(this,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 a=this,b=a.el=a.field.triggerWrap.selectNode('#'+a.domId,!1);b.setVisibilityMode(Ext.Element.DISPLAY);a.rendered=!0},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(b){var a=this,d=a.width,c=a.hidden?'display:none;':'';if(d){c+='width:'+d}return Ext.XTemplate.getTpl(a,'renderTpl').apply({$trigger:a,fieldData:b,ui:b.ui,childElCls:b.childElCls,triggerId:a.domId=a.field.id+'-trigger-'+a.id,cls:a.cls,triggerStyle:c,extraCls:a.extraCls,baseCls:a.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=!1;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.util.TextMetrics',Ext.Base,{statics:{shared:null,measure:function(d,e,c){var b=this,a=b.shared;if(!a){a=b.shared=new b(d,c)}a.bind(d);a.setFixedWidth(c||'auto');return a.getSize(e)},destroy:function(){var a=this;Ext.destroy(a.shared);a.shared=null}},constructor:function(c,b){var d=this,a=Ext.getBody().createChild({role:'presentation',cls:'x-textmetrics'});d.measure=a;if(c){d.bind(c)}a.position('absolute');a.setLocalXY(-1000,-1000);a.hide();if(b){a.setWidth(b)}},getSize:function(c){var a=this.measure,b;a.setHtml(c);b=a.getSize();a.setHtml('');return b},bind:function(b){var a=this;a.el=Ext.get(b);a.measure.setStyle(a.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(a,c,b){return Ext.Number.constrain(Ext.util.TextMetrics.measure(this.dom,Ext.valueFrom(a,this.dom.innerHTML,!0)).width,c||0,b||1000000)}})});Ext.cmd.derive('Ext.form.field.Text',Ext.form.field.Base,{alternateClassName:['Ext.form.TextField','Ext.form.Text'],config:{hideTrigger:!1,triggers:undefined},growMin:30,growMax:800,growAppend:'W',allowBlank:!0,validateBlank:!1,allowOnlyWhitespace:!0,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:!1,ariaRole:'textbox',editable:!0,repeatTriggerClick:!1,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:!0,mimicing:!1,needArrowKeys:!0,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 a=this,b=a.emptyCls;if(a.allowOnlyWhitespace===!1){a.allowBlank=!1}if(a.size){a.defaultBodyWidth=a.size*6.5+20}if(!a.onTrigger1Click){a.onTrigger1Click=a.onTriggerClick}Ext.form.field.Base.prototype.initComponent.call(this);if(a.readOnly){a.setReadOnly(a.readOnly)}a.fieldFocusCls=a.baseCls+'-focus';a.emptyUICls=b+' '+b+'-'+a.ui;a.addStateEvents('change')},initEvents:function(){var a=this,b=a.inputEl;Ext.form.field.Base.prototype.initEvents.call(this);if(a.selectOnFocus||a.emptyText){a.mon(b,'mousedown',a.onMouseDown,a)}if(a.maskRe||a.vtype&&a.disableKeyFilter!==!0&&(a.maskRe=Ext.form.field.VTypes[a.vtype+'Mask'])){a.mon(b,'keypress',a.filterKeys,a)}if(a.enableKeyEvents){a.mon(b,{scope:a,keyup:a.onKeyUp,keydown:a.onKeyDown,keypress:a.onKeyPress})}},isEqual:function(a,b){return this.isEqualAsString(a,b)},onChange:function(a,b){Ext.form.field.Base.prototype.onChange.apply(this,arguments);this.autoSize()},getSubTplData:function(f){var a=this,c=a.getRawValue(),e=a.emptyText&&c.length<1,b=a.maxLength,d;if(a.enforceMaxLength){if(b===Number.MAX_VALUE){b=undefined}}else {b=undefined}if(e){if(Ext.supports.Placeholder){d=a.emptyText}else {c=a.emptyText;a.valueContainsPlaceholder=!0}}return Ext.apply(Ext.form.field.Base.prototype.getSubTplData.apply(this,arguments),{triggerWrapCls:a.triggerWrapCls,inputWrapCls:a.inputWrapCls,triggers:a.orderedTriggers,maxLength:b,readOnly:!a.editable||a.readOnly,placeholder:d,value:c,fieldCls:a.fieldCls+(e&&(d||c)?' '+a.emptyUICls:'')+(a.allowBlank?'':' '+a.requiredCls)})},onRender:function(){var a=this,b=a.getTriggers(),c=[],d,e;if(Ext.supports.FixedTableWidthBug){a.el._needsTableWidthFix=!0}(arguments.callee.$previous||Ext.form.field.Base.prototype.onRender).call(this);if(b){this.invokeTriggers('onFieldRender');for(d in b){c.push(b[d].el)}e=a.triggerEl=a.triggerCell=new Ext.CompositeElement(c,!0)}a.inputCell=a.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){Ext.getDoc().on('mouseup',Ext.emptyFn,a,{single:!0,preventDefault:!0})}},applyTriggers:function(c){var a=this,j=a.getHideTrigger(),k=a.readOnly,f=a.orderedTriggers=[],i=a.repeatTriggerClick,e,b,h,g,d;if(!c){c={};if(a.triggerCls&&!a.trigger1Cls){a.trigger1Cls=a.triggerCls}for(d=1;g=a['trigger'+d+'Cls'];d++){c['trigger'+d]={cls:g,extraCls:'x-trigger-index-'+d,handler:'onTrigger'+d+'Click',compat4Mode:!0,scope:a}}}for(e in c){if(c.hasOwnProperty(e)){b=c[e];b.field=a;b.id=e;if(k&&b.hideOnReadOnly!==!1||j&&b.hidden!==!1){b.hidden=!0}if(i&&b.repeatClick!==!1){b.repeatClick=!0}h=c[e]=Ext.form.trigger.Trigger.create(b);f.push(h)}}Ext.Array.sort(f,Ext.form.trigger.Trigger.weightComparator);return c},invokeTriggers:function(d,e){var f=this,a=f.getTriggers(),c,b;if(a){for(c in a){if(a.hasOwnProperty(c)){b=a[c];b[d].apply(b,e||[])}}}},getTrigger:function(a){return this.getTriggers()[a]},updateHideTrigger:function(a){this.invokeTriggers(a?'hide':'show')},setEditable:function(b){var a=this;a.editable=b;if(a.rendered){a.setReadOnlyAttr(!b||a.readOnly)}},setReadOnly:function(a){var b=this,d=b.getTriggers(),f=b.getHideTrigger(),c,e;a=!!a;Ext.form.field.Base.prototype.setReadOnly.call(this,a);if(b.rendered){b.setReadOnlyAttr(a||!b.editable)}if(d){for(e in d){c=d[e];if(c.hideOnReadOnly===!0||c.hideOnReadOnly!==!1&&!f){c.setVisible(!a)}}}},setReadOnlyAttr:function(c){var d=this,a='readonly',b=d.inputEl.dom;if(c){b.setAttribute(a,a)}else {b.removeAttribute(a)}},processRawValue:function(b){var d=this,c=d.stripCharsRe,a;if(c){a=b.replace(c,'');if(a!==b){d.setRawValue(a);b=a}}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 a=this,b=a.emptyText,c;if(a.rendered&&b){c=a.getRawValue().length<1&&!a.hasFocus;if(Ext.supports.Placeholder){a.inputEl.dom.placeholder=b}else {if(c){a.setRawValue(b);a.valueContainsPlaceholder=!0}}if(c){a.inputEl.addCls(a.emptyUICls)}else {a.inputEl.removeCls(a.emptyUICls)}a.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(b){var a=b?'addCls':'removeCls';Ext.form.field.Base.prototype.toggleInvalidCls.call(this);this.triggerWrap[a](this.triggerWrapInvalidCls);this.inputWrap[a](this.inputWrapInvalidCls)},beforeFocus:function(){var a=this,b=a.inputEl,c=a.emptyText,d;Ext.form.field.Base.prototype.beforeFocus.apply(this,arguments);if(c&&!Ext.supports.Placeholder&&(b.dom.value===a.emptyText&&a.valueContainsPlaceholder)){a.setRawValue('');d=!0;b.removeCls(a.emptyUICls);a.valueContainsPlaceholder=!1}else {if(Ext.supports.Placeholder){b.removeCls(a.emptyUICls)}}},onFocus:function(b){var a=this;Ext.form.field.Base.prototype.onFocus.apply(this,arguments);if(a.selectOnFocus){a.inputEl.dom.select()}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(a){Ext.form.field.Base.prototype.completeEdit.call(this,a);this.applyEmptyText()},filterKeys:function(a){if(a.ctrlKey&&!a.altKey||a.isSpecialKey()){return}var b=String.fromCharCode(a.getCharCode());if(!this.maskRe.test(b)){a.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(c){var a=this,b=a.inputEl;if(b&&a.emptyText&&!Ext.isEmpty(c)){b.removeCls(a.emptyUICls);a.valueContainsPlaceholder=!1}Ext.form.field.Base.prototype.setValue.apply(this,arguments);a.applyEmptyText();return a},getErrors:function(b){b=arguments.length?b==null?'':b:this.processRawValue(this.getRawValue());var a=this,c=Ext.form.field.Base.prototype.getErrors.call(this,b),f=a.validator,d=a.vtype,j=Ext.form.field.VTypes,k=a.regex,i=Ext.String.format,e,h,g;if(Ext.isFunction(f)){e=f.call(a,b);if(e!==!0){c.push(e)}}h=a.allowOnlyWhitespace?b:Ext.String.trim(b);if(h.length<1||b===a.emptyText&&a.valueContainsPlaceholder){if(!a.allowBlank){c.push(a.blankText)}if(!a.validateBlank){return c}g=!0}if(!g&&b.length<a.minLength){c.push(i(a.minLengthText,a.minLength))}if(b.length>a.maxLength){c.push(i(a.maxLengthText,a.maxLength))}if(d){if(!j[d](b,a)){c.push(a.vtypeText||j[d+'Text'])}}if(k&&!k.test(b)){c.push(a.regexText||a.invalidText)}return c},selectText:function(a,b){var f=this,g=f.getRawValue(),c=g.length,e=f.inputEl.dom,d;if(c>0){a=a===undefined?0:Math.min(a,c);b=b===undefined?c:Math.min(b,c);if(e.setSelectionRange){e.setSelectionRange(a,b)}else {if(e.createTextRange){d=e.createTextRange();d.moveStart('character',a);d.moveEnd('character',b-c);d.select()}}}},getGrowWidth:function(){return this.inputEl.dom.value},autoSize:function(){var a=this,d,f,c,g,b,e;if(a.grow&&a.rendered&&a.getSizeModel().width.auto){g=a.inputEl;d=a.getTriggers();c=0;e=Ext.util.Format.htmlEncode(a.getGrowWidth()||(a.hasFocus?'':a.emptyText)||'');e+=a.growAppend;for(f in d){c+=d[f].el.getWidth()}b=g.getTextWidth(e)+c+a.inputWrap.getBorderWidth('lr')+a.triggerWrap.getBorderWidth('lr');b=Math.min(Math.max(b,a.growMin),a.growMax);a.bodyEl.setWidth(b);a.updateLayout();a.fireEvent('autosize',a,b)}},onDestroy:function(){var a=this;a.invokeTriggers('destroy');Ext.destroy(a.triggerRepeater);Ext.form.field.Base.prototype.onDestroy.call(this)},onTriggerClick:Ext.emptyFn,privates:{getTdType:function(){return 'textfield'}},deprecated:{5:{methods:{getTriggerWidth:function(){var a=this.getTriggers(),c=0,b;if(a&&this.rendered){for(b in a){if(a.hasOwnProperty(b)){c+=a[b].el.getWidth()}}}return c}}}}},0,['textfield'],['component','box','field','textfield'],{'component':!0,'box':!0,'field':!0,'textfield':!0},['widget.textfield'],0,[Ext.form.field,'Text',Ext.form,'TextField',Ext.form,'Text'],0);Ext.cmd.derive('Ext.util.KeyMap',Ext.Base,{alternateClassName:'Ext.KeyMap',eventName:'keydown',constructor:function(b){var a=this;if(arguments.length!==1||typeof b==='string'||b.dom||b.tagName||b===document||b.isComponent){a.legacyConstructor.apply(a,arguments);return}Ext.apply(a,b);a.bindings=[];if(!a.target.isComponent){a.target=Ext.get(a.target)}if(a.binding){a.addBinding(a.binding)}else {if(b.key){a.addBinding(b)}}a.enable()},legacyConstructor:function(d,b,c){var a=this;Ext.apply(a,{target:Ext.get(d),eventName:c||a.eventName,bindings:[]});if(b){a.addBinding(b)}a.enable()},addBinding:function(b){var a=this,e=b.key,c,d;if(a.processing){a.bindings=a.bindings.slice(0)}if(Ext.isArray(b)){for(c=0,d=b.length;c<d;c++){a.addBinding(b[c])}return}a.bindings.push(Ext.apply({keyCode:a.processKeys(e)},b))},removeBinding:function(b){var c=this,e=c.bindings,g=e.length,d,a,f;if(c.processing){c.bindings=e.slice(0)}f=c.processKeys(b.key);for(d=0;d<g;++d){a=e[d];if((a.fn||a.handler)===(b.fn||b.handler)&&a.scope===b.scope){if(b.alt===a.alt&&b.crtl===a.crtl&&b.shift===a.shift){if(Ext.Array.equals(a.keyCode,f)){Ext.Array.erase(c.bindings,d,1);return}}}}},processKeys:function(a){var g=!1,f,e,d,c,b;if(a.test){return a}if(Ext.isString(a)){e=[];d=a.toUpperCase();for(b=0,c=d.length;b<c;++b){e.push(d.charCodeAt(b))}a=e;g=!0}if(!Ext.isArray(a)){a=[a]}if(!g){for(b=0,c=a.length;b<c;++b){f=a[b];if(Ext.isString(f)){a[b]=f.toUpperCase().charCodeAt(0)}}}return a},handleTargetEvent:function(b){var a=this,d,c,e;if(a.enabled){d=a.bindings;c=0;e=d.length;b=a.processEvent.apply(a.processEventScope||a,arguments);if(b){a.lastKeyEvent=b;if(a.ignoreInputFields&&Ext.fly(b.target).isInputField()){return}if(!b.getKey){return b}a.processing=!0;for(;c<e;++c){a.processBinding(d[c],b)}a.processing=!1}}},processEvent:Ext.identityFn,processBinding:function(b,a){if(this.checkModifiers(b,a)){var f=a.getKey(),g=b.fn||b.handler,h=b.scope||this,c=b.keyCode,d=b.defaultEventAction,e,i;if(c.test){if(c.test(String.fromCharCode(a.getCharCode()))){if(g.call(h,f,a)!==!0&&d){a[d]()}}}else {if(c.length){for(e=0,i=c.length;e<i;++e){if(f===c[e]){if(g.call(h,f,a)!==!0&&d){a[d]()}break}}}}}},checkModifiers:function(e,f){var d=['shift','ctrl','alt'],c=0,g=d.length,b,a;for(;c<g;++c){a=d[c];b=e[a];if(!(b===undefined||b===f[a+'Key'])){return !1}}return !0},on:function(a,g,f){var b,c,d,e;if(Ext.isObject(a)&&!Ext.isArray(a)){b=a.key;c=a.shift;d=a.ctrl;e=a.alt}else {b=a}this.addBinding({key:b,shift:c,ctrl:d,alt:e,fn:g,scope:f})},un:function(a,g,f){var b,c,d,e;if(Ext.isObject(a)&&!Ext.isArray(a)){b=a.key;c=a.shift;d=a.ctrl;e=a.alt}else {b=a}this.removeBinding({key:b,shift:c,ctrl:d,alt:e,fn:g,scope:f})},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=!0}},disable:function(){var a=this;if(a.enabled){a.target.removeListener(a.eventName,a.handleTargetEvent,a);a.enabled=!1}},setDisabled:function(a){if(a){this.disable()}else {this.enable()}},destroy:function(b){var a=this,c=a.target;a.bindings=[];a.disable();if(b){c.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:!1,defaultEventAction:!1,forceKeyDown:!1,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(b){var a=this;if(arguments.length===2){a.legacyConstructor.apply(a,arguments);return}a.doConstruction(b)},legacyConstructor:function(b,a){this.doConstruction(Ext.apply({target:b},a))},doConstruction:function(a){var b=this,d={target:a.target,ignoreInputFields:a.ignoreInputFields,eventName:b.getKeyEvent('forceKeyDown' in a?a.forceKeyDown:b.forceKeyDown,a.eventName),capture:a.capture},c;if(b.map){b.map.destroy()}b.initConfig(a);if(a.processEvent){d.processEvent=a.processEvent;d.processEventScope=a.processEventScope||b}if(a.keyMap){c=b.map=a.keyMap}else {c=b.map=new Ext.util.KeyMap(d);b.destroyKeyMap=!0}this.addBindings(a);c.disable();if(!a.disabled){c.enable()}},addBindings:function(d){var c=this,b,a,g=c.map,f=Ext.util.KeyNav.keyOptions,e=d.scope||c;for(b in d){a=d[b];if(a&&(b.length===1||(b=f[b])||!isNaN(b=parseInt(b,10)))){if(typeof a==='function'){a={handler:a,defaultEventAction:d.defaultEventAction!==undefined?d.defaultEventAction:c.defaultEventAction}}g.addBinding({key:b,ctrl:a.ctrl,shift:a.shift,alt:a.alt,handler:Ext.Function.bind(c.handleEvent,a.scope||e,[a.handler||a.fn,c],!0),defaultEventAction:a.defaultEventAction!==undefined?a.defaultEventAction:c.defaultEventAction})}}},handleEvent:function(d,a,b,c){c.lastKeyEvent=a;return b.call(this,a)},destroy:function(a){if(this.destroyKeyMap){this.map.destroy(a)}delete this.map},enable:function(){if(this.map){this.map.enable();this.disabled=!1}},disable:function(){if(this.map){this.map.disable()}this.disabled=!0},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.form.field.Picker',Ext.form.field.Text,{alternateClassName:'Ext.form.Picker',config:{triggers:{picker:{handler:'onTriggerClick',scope:'this'}}},isPickerField:!0,matchFieldWidth:!0,pickerAlign:'tl-bl?',openCls:'x-pickerfield-open',isExpanded:!1,editable:!0,applyTriggers:function(a){var c=this,b=a.picker;if(!b.cls){b.cls=c.triggerCls}return Ext.form.field.Text.prototype.applyTriggers.call(this,a)},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:!1},scope:a,forceKeyDown:!0});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 a=this,c,b,d,e;if(a.rendered&&!a.isExpanded&&!a.isDestroyed){c=a.bodyEl;b=a.getPicker();d=Ext.getDoc();e=a.collapseIf;b.setMaxHeight(b.initialConfig.maxHeight);if(a.matchFieldWidth){b.width=a.bodyEl.getWidth()}b.show();a.isExpanded=!0;a.alignPicker();c.addCls(a.openCls);a.hideListeners=d.on({mousewheel:a.collapseIf,touchstart:a.collapseIf,scope:a,delegated:!1,destroyable:!0});Ext.on('resize',a.alignPicker,a,{buffer:1});a.fireEvent('expand',a);a.onExpand()}},onExpand:Ext.emptyFn,alignPicker:function(){if(!this.isDestroyed){var a=this.getPicker();if(a.isVisible()&&a.isFloating()){this.doAlign()}}},doAlign:function(){var a=this,c=a.picker,d='-above',b;a.picker.alignTo(a.triggerWrap,a.pickerAlign,a.pickerOffset);b=c.el.getY()<a.inputEl.getY();a.bodyEl[b?'addCls':'removeCls'](a.openCls+d);c[b?'addCls':'removeCls'](c.baseCls+d)},collapse:function(){var a=this;if(a.isExpanded&&!a.isDestroyed&&!a.destroying){var d=a.openCls,b=a.picker,c='-above';b.hide();a.isExpanded=!1;a.bodyEl.removeCls([d,d+c]);b.el.removeCls(b.baseCls+c);a.hideListeners.destroy();Ext.un('resize',a.alignPicker,a);a.fireEvent('collapse',a);a.onCollapse()}},onCollapse:Ext.emptyFn,collapseIf:function(b){var a=this;if(!a.isDestroyed&&!b.within(a.bodyEl,!1,!0)&&!a.owns(b.target)&&!Ext.fly(b.target).isFocusable()){a.collapse()}},getPicker:function(){var a=this,b=a.picker;if(!b){a.creatingPicker=!0;a.picker=b=a.createPicker();b.ownerCmp=a;delete a.creatingPicker}return a.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 a=this,b=a.picker;Ext.form.field.Text.prototype.beforeDestroy.call(this);Ext.un('resize',a.alignPicker,a);Ext.destroy(a.keyNav,b);if(b){a.picker=b.pickerField=null}}},0,['pickerfield'],['component','box','field','textfield','pickerfield'],{'component':!0,'box':!0,'field':!0,'textfield':!0,'pickerfield':!0},['widget.pickerfield'],0,[Ext.form.field,'Picker',Ext.form,'Picker'],0);Ext.cmd.derive('Ext.util.CollectionKey',Ext.Base,{isCollectionKey:!0,observerPriority:-200,config:{collection:null,keyFn:null,property:null,rootProperty:null,unique:!0},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(i,b){var j=this.map||this.getMap(),c=j[i],e=this.getCollection(),h=e.length,d,a,f,g;if(!c){return -1}if(b===undefined){b=-1}if(c instanceof Array){f=c;a=h;for(g=f.length;g-->0;){d=e.indexOf(f[g]);if(d<a&&d>b){a=d}}if(a===h){return -1}}else {a=e.indexOf(c)}return a>b?a:-1},updateKey:function(e,d){var f=this,c=f.map,a,b;if(c){a=c[d];if(a instanceof Array){b=Ext.Array.indexOf(a,e);if(b>=0){if(a.length>2){a.splice(b,1)}else {c[d]=a[1-b]}}}else {if(a){delete c[d]}}f.add([e])}},onCollectionAdd:function(b,a){if(this.map){this.add(a.items)}},onCollectionItemChange:function(a,b){this.map=null},onCollectionRefresh:function(){this.map=null},onCollectionRemove:function(g,h){var a=this,f=a.map,d=h.items,c=d.length,b,i,e;if(f){if(a.getUnique()&&c<g.length/2){for(b=0;b<c;++b){e=a.getKey(i=d[b]);delete f[e]}}else {a.map=null}}},add:function(i){var f=this,c=f.map,b,d,e,a,g,h;g=i.length;h=f.getUnique();for(d=0;d<g;++d){a=f.getKey(e=i[d]);if(h||!(a in c)){c[a]=e}else {if(!((b=c[a]) instanceof Array)){c[a]=b=[b]}b.push(e)}}},applyKeyFn:function(a){if(Ext.isString(a)){this.getKey=function(b){return b[a]()}}else {this.getKey=a}},updateProperty: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)},clone:function(){return new Ext.util.CollectionKey(this.getCurrentConfig())}},1,0,0,0,0,[[Ext.mixin.Identifiable.prototype.mixinId||Ext.mixin.Identifiable.$className,Ext.mixin.Identifiable]],[Ext.util,'CollectionKey'],0);Ext.cmd.derive('Ext.util.Grouper',Ext.util.Sorter,{isGrouper:!0,config:{groupFn:null,sortProperty:null},constructor:function(a){Ext.util.Sorter.prototype.constructor.apply(this,arguments)},getGroupString:function(b){var a=this._groupFn(b);return a!=null?String(a):''},sortFn:function(d,e){var c=this,a=c._groupFn(d),b=c._groupFn(e),g=c._sortProperty,i=c._root,h=c._sorterFn,f=c._transform;if(a===b){return 0}if(g||h){if(h){return h.call(this,d,e)}if(i){d=d[i];e=e[i]}a=d[g];b=e[g];if(f){a=f(a);b=f(b)}}return a>b?1:a<b?-1:0},standardGroupFn:function(a){var b=this._root;return (b?a[b]:a)[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:!0,config:{autoFilter:!0,autoSort:!0,autoGroup:!0,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:!1,sorted:!1,filtered:!1,$endUpdatePriority:1001,constructor:function(b){var a=this;a.items=[];a.map={};a.length=0;if(b&&b.keyFn){a.getKey=b.keyFn}a.mixins.observable.constructor.call(a,b)},destroy:function(){var a=this,b=a._filters,c=a._sorters,d=a._groups;if(b){b.destroy();a._filters=null}if(c){c.destroy();a._sorters=null}if(d){d.destroy();a._groups=null}a.setSource(null);a.observers=a.items=a.map=null},add:function(d){var b=this,a=b.decodeItems(arguments,0),c=a;if(a.length){b.requestedIndex=b.length;b.splice(b.length,0,a);delete b.requestedIndex;c=a.length===1?a[0]:a}return c},replaceAll:function(){var b=this,d=b.length,c,a;if(d===0){return b.add.apply(b,arguments)}a=b.decodeItems(arguments,0);c=a;if(a.length){b.splice(0,b.length,a);c=a.length===1?a[0]:a}else {b.removeAll()}return c},aggregate:function(d,c,e,g,f){var a=this,b=Ext.Array.slice(arguments);b.unshift(a.items);return a.aggregateItems.apply(a,b)},aggregateByGroup:function(b,a,d){var c=this.getGroups();return this.aggregateGroups(c,b,a,d)},aggregateItems:function(a,m,b,c,d,p){var e=this,o=Ext.Number.clipIndices(a.length,[c,d]),k=c!==0&&d!==a.length,f,g,n,j,i,h,l;c=o[0];d=o[1];if(!Ext.isFunction(b)){b=e._aggregators[b];return b.call(e,a,c,d,m,e.getRootProperty())}j=e.getRootProperty();h=new Array(n);l=k?new Array(n):a;for(f=c,g=0;f<d;++f,g++){if(k){l[g]=i=a[f]}h[g]=(j?i[j]:i)[m]}return b.call(p||e,a,h,0)},aggregateGroups:function(i,e,c,j){var f=i.items,k=f.length,h=!Ext.isFunction(c),g={},b,a,d;for(b=0;b<k;++b){a=f[b];if(!h){d=this.aggregateItems(a.items,e,c,null,null,j)}else {d=a[c](e)}g[a.getGroupKey()]=d}return g},beginUpdate:function(){if(!this.updating++){this.notify('beginupdate')}},clear:function(){var a=this,c=a.generation,e=c?a.items:[],b,d;if(c){a.items=[];a.length=0;a.map={};a.indices={};a.generation++;b=a.getExtraKeys();if(b){for(d in b){b[d].clear()}}}return e},clone:function(){var a=this,b=new a.self(a.initialConfig);b.add(a.items);return b},collect:function(i,e,h){var d=this.items,j=d.length,f={},g=[],b,c,a;for(b=0;b<j;++b){a=d[b];a=(e?a[e]:a)[i];c=String(a);if((h||!Ext.isEmpty(a))&&!f[c]){f[c]=1;g.push(a)}}return g},contains:function(a){var c=!1,b;if(a!=null){b=this.getKey(a);c=this.map[b]===a}return c},containsKey:function(a){return a in this.map},createFiltered:function(a,j,n,l,m){var d=this,k=new d.self(d.initialConfig),h=d.getRootProperty(),g=d.items,e,b,c,i,f;if(Ext.isFunction(a)){i=a;f=j}else {if(Ext.isString(a)){c=[new Ext.util.Filter({property:a,value:j,root:h,anyMatch:n,caseSensitive:l,exactMatch:m})]}else {if(a instanceof Ext.util.Filter){c=[a];a.setRoot(h)}else {if(Ext.isArray(a)){c=a.slice(0);for(b=0,e=c.length;b<e;++b){c[b].setRoot(h)}}}}i=Ext.util.Filter.createFilterFn(c)}f=f||d;for(b=0,e=g.length;b<e;b++){if(i.call(f,g[b])){k.add(g[b])}}return k},filterBy:function(b,a){return this.createFiltered(b,a)},each:function(f,c){var b=this.items,d=b.length,a,e;if(d){c=c||this;b=b.slice(0);for(a=0;a<d;a++){e=f.call(c,b[a],a,d);if(e===!1){break}}}return e},eachKey:function(i,c){var f=this,b=f.items,d=b.length,a,g,h,e;if(d){c=c||f;b=b.slice(0);for(a=0;a<d;a++){h=f.getKey(g=b[a]);e=i.call(c,h,g,a,d);if(e===!1){break}}}return e},endUpdate:function(){if(!--this.updating){this.notify('endupdate')}},find:function(f,a,h,d,e,c){if(Ext.isEmpty(a,!1)){return null}var g=Ext.String.createRegex(a,d,e,c),b=this.getRootProperty();return this.findBy(function(i){return i&&g.test((b?i[b]:i)[f])},null,h)},findBy:function(i,c,g){var d=this,b=d.items,h=b.length,a,e,f;c=c||d;for(a=g||0;a<h;a++){f=d.getKey(e=b[a]);if(i.call(c,e,f)){return b[a]}}return null},findIndex:function(e,g,f,c,d,b){var a=this.find(e,g,f,c,d,b);return a?this.indexOf(a):-1},findIndexBy:function(d,b,c){var a=this.findBy(d,b,c);return a?this.indexOf(a):-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(b){var a=b.id;return a===0||a?a:(a=b._id)===0||a?a:b.getId()},getRange:function(d,e){var c=this.items,b=c.length,a;if(!b){a=[]}else {a=Ext.Number.clipIndices(b,[d,e]);a=c.slice(a[0],a[1])}return a},getValues:function(h,f,i,c){var d=this.items,e=Ext.Number.clipIndices(d.length,[i,c]),g=[],b,a;for(b=e[0],c=e[1];b<c;++b){a=d[b];a=(f?a[f]:a)[h];g.push(a)}return g},indexOf:function(a){if(!a){return -1}var b=this.getKey(a);return this.indexOfKey(b)},indexOfKey:function(c){var b=this,a=b.indices;if(c in b.map){if(!a){a=b.getIndices()}return a[c]}return -1},insert:function(c,e){var b=this,a=b.decodeItems(arguments,1),d=a;if(a.length){b.requestedIndex=c;b.splice(c,0,a);delete b.requestedIndex;d=a.length===1?a[0]:a}return d},itemChanged:function(c,p,f,u){var a=this,j=f===0||!!f,s=a.filtered&&a.getAutoFilter(),n=!1,h=0,i=a.items,t=a.length-1,v=a.sorted&&t>0&&a.getAutoSort(),r=a.getSource(),m,q=0,b,g=!1,d,o=!1,e,l,k;if(r&&!r.updating){r.itemChanged(c,p,f,u)}else {l=a.getKey(c);if(s){b=a.indexOfKey(j?f:l);o=b<0;g=a.isItemFiltered(c);n=o!==g}if(n){if(g){q=[c];d=-1}else {m=[c];d=a.length}}else {if(v&&!g){if(!s){b=a.indexOfKey(j?f:l)}k=a.getSortFn();if(b&&k(i[b-1],i[b])>0){h=-1;d=Ext.Array.binarySearch(i,c,0,b,k)}else {if(b<t&&k(i[b],i[b+1])>0){h=1;d=Ext.Array.binarySearch(i,c,b+1,k)}}if(h){m=[c]}}}e={item:c,key:l,index:d,filterChanged:n,keyChanged:j,indexChanged:!!h,filtered:g,oldIndex:b,newIndex:d,wasFiltered:o,meta:u};if(j){e.oldKey=f}if(p){e.modified=p}a.beginUpdate();a.notify('beforeitemchange',[e]);if(j){a.updateKey(c,f)}if(m||q){a.splice(d,q,m)}if(h>0){e.newIndex--}else {if(h<0){e.oldIndex++}}a.notify(g?'filtereditemchange':'itemchange',[e]);a.endUpdate()}},remove:function(d){var a=this,c=a.decodeRemoveItems(arguments,0),b=a.length;a.splice(0,c);return b-a.length},removeAll:function(){var a=this,b=a.length;if(a.generation&&b){a.splice(0,b)}return a},removeAt:function(j,f){var a=this,e=a.length,i=Ext.Number,g=i.clipIndices(e,[j,f===undefined?1:f],i.Clip.COUNT),c=g[0],d=g[1]-c,h=d===1&&a.getAt(c),b;a.splice(c,d);b=a.length-e;return h&&b?h:b},removeByKey:function(b){var a=this.getByKey(b);if(!a||!this.remove(a)){return !1}return a},replace:function(a){var b=this.indexOf(a);if(b===-1){this.add(a)}else {this.insert(b,a)}},splice:function(K,C,L){var b=this,B=b.sorted&&b.getAutoSort(),D=b.map,n=b.items,r=b.length,o=C instanceof Array?b.decodeRemoveItems(C):null,F=!o,I=Ext.Number,H=I.clipIndices(r,[K,F?C:0],I.Clip.COUNT),m=H[0],J=H[1],w=J-m,p=b.decodeItems(arguments,2),h=p?p.length:0,c,E,A,g=m,k=b.indices||(h||o?b.getIndices():null),d=null,i=w?[m]:null,l=null,t=b.getSource(),j,z,y,a,u,f,v,e,s,q,x,G;if(t&&!t.updating){if(F){o=[];for(a=0;a<w;++a){o.push(n[m+a])}}if(m<r){a=t.indexOf(n[m])}else {a=t.length}t.splice(a,o,p);return b}if(h){c=p;l=[];E={};if(B){G=b.getSorters();if(h>1){if(!c.$cloned){p=c=c.slice(0)}b.sortData(c)}}for(a=0;a<h;++a){e=b.getKey(u=p[a]);if((v=E[e])!==undefined){(x||(x={}))[v]=1}else {f=k[e];if(f<m||J<=f){(i||(i=[])).push(f)}}E[e]=a;l.push(e)}if(x){s=l;c=[];l=[];c.$cloned=!0;for(a=0;a<h;++a){if(!x[a]){u=p[a];c.push(u);l.push(s[a])}}h=c.length}d={items:c,keys:l}}for(a=o?o.length:0;a-->0;){e=b.getKey(o[a]);if((f=k[e])!==undefined){(i||(i=[])).push(f)}}if(!d&&!i){return b}b.beginUpdate();if(i){j=null;y=[];A={};if(i.length>1){i.sort(Ext.Array.numericSortFn)}for(a=0,q=i.length;a<q;++a){e=b.getKey(u=n[f=i[a]]);if(!(e in D)){continue}delete D[e];if(!j||f>j.at+z.length){y.push(j={at:f,items:z=[],keys:s=[],map:A,next:j,replacement:d});if(d){d.replaced=j}}z.push(A[e]=u);s.push(e);if(f<g){--g}if(w>1&&f===m){--w;i[a--]=++m}}if(d){d.at=g}for(v=y.length;v-->0;){j=y[v];a=j.at;q=j.items.length;if(a+q<r){b.indices=k=null}b.length=r-=q;n.splice(a,q);if(k){s=j.keys;for(a=0;a<q;++a){delete k[s[a]]}}++b.generation;b.notify('remove',[j])}}if(d){if(B&&h>1&&r){b.spliceMerge(c,l)}else {if(B){if(h>1){g=0;b.indices=k=null}else {g=G.findInsertionIndex(d.items[0],n,b.getSortFn())}}if(g===r){n.push.apply(n,c);k=b.indices;if(k){for(a=0;a<h;++a){k[l[a]]=g+a}}}else {b.indices=null;Ext.Array.insert(n,g,c)}for(a=0;a<h;++a){D[l[a]]=c[a]}b.length+=h;d.at=g;d.atItem=g===0?null:n[g-1];++b.generation;b.notify('add',[d])}}b.endUpdate();return b},update:function(c,b){var a=this;a.beginUpdate();try{return c.call(b||a,a)}catch(d){throw d}finally{a.endUpdate()}},updateKey:function(d,b){var a=this,f=a.map,e=a.indices,g=a.getSource(),c;if(g&&!g.updating){g.updateKey(d,b)}else {if((c=a.getKey(d))!==b){if(f[b]===d&&!(c in f)){delete f[b];a.updating++;a.generation++;f[c]=d;if(e){e[c]=e[b];delete e[b]}a.notify('updatekey',[{item:d,newKey:c,oldKey:b}]);a.updating--}}}},findInsertIndex:function(f){var d=this.getSource(),e=d.items,b=d.indexOf(f)-1,c,a;while(b>-1){c=e[b];a=this.indexOf(c);if(a>-1){return a+1}--b}return 0},onCollectionAdd:function(l,i){var a=this,j=i.atItem,d=i.items,h=a.requestedIndex,c,b,e,f,g,k;if(!a.sorted){if(h!==undefined){b=h}else {if(j){b=a.indexOf(j);if(b===-1){b=a.findInsertIndex(d[0])}else {++b}}else {b=0}}}if(a.getAutoFilter()&&a.filtered){for(f=0,k=d.length;f<k;++f){g=d[f];if(a.isItemFiltered(g)){if(!e){e=d.slice(0,f)}if(!c){c=[]}c.push(g)}else {if(e){e.push(g)}}}}a.splice(b<0?a.length:b,0,e||d);if(c){a.notify('filteradd',[c])}},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(i){var a=this,h={},e={},c,g,b,d,f;b=i.items;b=a.filtered&&a.getAutoFilter()?Ext.Array.filter(b,a.getFilterFn()):b.slice(0);if(a.sorted){a.sortData(b)}a.items=b;a.length=f=b.length;a.map=h;a.indices=e;for(c=0;c<f;++c){d=a.getKey(g=b[c]);h[d]=g;e[d]=c}a.notify('refresh')},onCollectionRemove:function(b,a){this.splice(0,a.items)},onCollectionUpdateKey:function(b,a){this.updateKey(a.item,a.oldKey)},_aggregators:{average:function(e,a,b,d,f){var c=b-a;return c&&this._aggregators.sum.call(this,e,a,b,d,f)/c},bounds:function(h,g,i,f,e){for(var a,b,c,d=g;d<i;++d){a=h[d];a=(e?a[e]:a)[f];if(!(a<b)){b=a}if(!(a>c)){c=a}}return [c,b]},count:function(a){return a.length},extremes:function(k,j,l,i,f){var e=null,d=null,c,b,g,h,a;for(c=j;c<l;++c){b=k[c];a=(f?b[f]:b)[i];if(!(a<g)){g=a;e=b}if(!(a>h)){h=a;d=b}}return [d,e]},max:function(c,b,e,a,d){var f=this._aggregators.bounds.call(this,c,b,e,a,d);return f[1]},maxItem:function(c,b,e,a,d){var f=this._aggregators.extremes.call(this,c,b,e,a,d);return f[1]},min:function(c,b,e,a,d){var f=this._aggregators.bounds.call(this,c,b,e,a,d);return f[0]},minItem:function(c,b,e,a,d){var f=this._aggregators.extremes.call(this,c,b,e,a,d);return f[0]},sum:function(g,f,h,e,c){for(var a,d=0,b=f;b<h;++b){a=g[b];a=(c?a[c]:a)[e];d+=a}return d}},_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(c){var b=this,a=b.observers;if(!a){b.observers=a=[]}a.push(c);if(a.length>1){Ext.Array.sort(a,b.prioritySortFn)}},prioritySortFn:function(a,b){var c=a.observerPriority||0,d=b.observerPriority||0;return c-d},applyExtraKeys:function(e,g){var d=this,f=g||{},b,c,a;for(c in e){a=e[c];if(!a.isCollectionKey){b={collection:d};if(Ext.isString(a)){b.property=a}else {b=Ext.apply(b,a)}a=new Ext.util.CollectionKey(b)}else {a.setCollection(d)}f[c]=d[c]=a;a.name=c}return f},applyGrouper:function(a){if(a){a=this.getSorters().decodeSorter(a,'Ext.util.Grouper')}return a},decodeItems:function(e,d){var g=this,a=d===undefined?e:e[d],b,f,c;if(!a||!a.$cloned){b=e.length>d+1||!Ext.isIterable(a);if(b){a=Ext.Array.slice(e,d);if(a.length===1&&a[0]===undefined){a.length=0}}f=g.getDecoder();if(f){if(!b){a=a.slice(0);b=!0}for(c=a.length;c-->0;){if((a[c]=f.call(g,a[c]))===!1){a.splice(c,1)}}}if(b){a.$cloned=!0}}return a},getIndices:function(){var a=this,c=a.indices,d=a.items,f=d.length,b,e;if(!c){a.indices=c={};++a.indexRebuilds;for(b=0;b<f;++b){e=a.getKey(d[b]);c[e]=b}}return c},notify:function(d,b){var a=this,e=a.observers,g=a._eventToMethodMap[d],j=0,c,i,f,h;b=b||[];if(e&&g){for(c=0,i=e.length;c<i;++c){f=(h=e[c])[g];if(f){if(!j++){b.unshift(a)}f.apply(h,b)}}}if(!a.hasListeners){return}if(a.hasListeners[d]){if(!j){b.unshift(a)}a.fireEventArgs(d,b)}},getFilterFn:function(){return this.getFilters().getFilterFn()},getFilters:function(b){var a=this._filters;if(!a&&b!==!1){a=new Ext.util.FilterCollection();this.setFilters(a)}return a},isItemFiltered:function(a){return !this.getFilters().filterFn(a)},onFilterChange:function(f){var a=this,b=a.getSource(),c,d,e;if(!b){c=a.getExtraKeys();if(c){d={};for(e in c){d[e]=c[e].clone(a)}}b=new Ext.util.Collection({keyFn:a.getKey,extraKeys:d,rootProperty:a.getRootProperty()});if(a.length){b.add(a.items)}a.setSource(b);a.autoSource=b}else {if(b.length||a.length){a.onCollectionRefresh(b)}}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(b,c){var a=this;if(c){c.un('endupdate','onEndUpdateFilters',a)}if(b){b.on({endupdate:'onEndUpdateFilters',scope:a,priority:a.$endUpdatePriority});b.$filterable=a}a.onEndUpdateFilters(b)},onEndUpdateFilters:function(a){var b=this,d=b.filtered,c=!!a&&a.length>0;if(d||c){b.filtered=c;b.onFilterChange(a)}},getSortFn:function(){return this._sortFn||this.createSortFn()},getSorters:function(b){var a=this._sorters;if(!a&&b!==!1){a=new Ext.util.SorterCollection();this.setSorters(a)}return a},onSortChange:function(){if(this.sorted){this.sortItems()}},sort:function(c,b,d){var a=this.getSorters();a.addSort.apply(a,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(!1)]);if(a.length){Ext.Array.sort(a.items,b)}a.notify('sort')},sortBy:function(a){return this.sortItems(a)},findInsertionIndex:function(c,b,a){if(!b){b=this.items}if(!a){a=this.getSortFn()}return Ext.Array.binarySearch(b,c,a)},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 d=this,b=d.getGrouper(),c=d.getSorters(!1),a=c?c.getSortFn():null;if(!b){return a}return function(d,e){var c=b.sort(d,e);if(!c&&a){c=a(d,e)}return c}},updateGrouper:function(c){var a=this,b=a.getGroups(),e=a.getSorters(),d;a.onSorterChange();a.grouped=!!c;if(c){if(!b){b=new Ext.util.GroupCollection({itemRoot:a.getRootProperty()});b.$groupable=a;a.setGroups(b)}b.setGrouper(c);d=!0}else {if(b){a.removeObserver(b);b.destroy()}a.setGroups(null)}if(!e.updating){a.onEndUpdateSorters(e)}if(d){b.onCollectionRefresh(a)}},updateSorters:function(b,c){var a=this;if(c){c.un('endupdate','onEndUpdateSorters',a)}if(b){b.on({endupdate:'onEndUpdateSorters',scope:a,priority:a.$endUpdatePriority});b.$sortable=a}a.onSorterChange();a.onEndUpdateSorters(b)},onSorterChange:function(){this._sortFn=null},onEndUpdateSorters:function(b){var a=this,d=a.sorted,c=a.grouped&&a.getAutoGroup()||b&&b.length>0;if(d||c){a.sorted=!!c;a.onSortChange(b)}},removeObserver:function(b){var a=this.observers;if(a){Ext.Array.remove(a,b)}},spliceMerge:function(i,q){var f=this,r=f.map,k=i.length,g=0,n=f.items,m=n.length,h=[],c=0,a=[],p=f.getSortFn(),l,j,d,b,o,e;f.items=a;for(e=0;e<k;e=j){b=i[e];for(;g<m;++g){if(p(b,o=n[g])<0){break}a.push(o)}if(g===m){h[c++]={at:a.length,itemAt:a[a.length-1],items:l=[]};if(c>1){h[c-2].next=h[c-1]}for(;e<k;++e){l.push(b=i[e]);a.push(b)}break}h[c++]={at:a.length,itemAt:a[a.length-1],items:l=[b]};if(c>1){h[c-2].next=h[c-1]}a.push(b);for(j=e+1;j<k;++j){if(p(b=i[j],o)>=0){break}a.push(b);l.push(b)}}for(;g<m;++g){a.push(n[g])}for(d=0;d<k;++d){r[q[d]]=i[d]}f.length=a.length;++f.generation;f.indices=null;for(d=0;d<c;++d){f.notify('add',[h[d]])}},getGroups:function(){return (arguments.callee.$previous||Ext.Base.prototype.getGroups).call(this)||null},updateAutoGroup:function(b){var a=this.getGroups();if(a){a.setAutoGroup(b)}this.onEndUpdateSorters(this._sorters)},updateGroups:function(a,b){if(b){this.removeObserver(b)}if(a){this.addObserver(a)}},updateSource:function(a,b){var c=this.autoSource;if(b){b.removeObserver(this);if(b===c){c.destroy();this.autoSource=null}}if(a){a.addObserver(this);if(a.length||this.length){this.onCollectionRefresh(a)}}}},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(a,c,d){return this.aggregate(a,b,c,d)};a[b+'ByGroup']=function(a){return this.aggregateByGroup(a,b)}})});Ext.cmd.derive('Ext.util.ObjectTemplate',Ext.Base,{isObjectTemplate:!0,excludeProperties:{},valueRe:/^[{][a-z\.]+[}]$/i,statics:{create:function(a,b){return a.isObjectTemplate?a:new Ext.util.ObjectTemplate(a,b)}},constructor:function(a,b){Ext.apply(this,b);this.template=a},apply:function(b){var a=this;delete a.apply;a.apply=a.compile(a.template);return a.apply(b)},privates:{compile:function(a){var e=this,g=e.excludeProperties,d,b,f,c;if(Ext.isString(a)){if(a.indexOf('{')<0){c=function(){return a}}else {if(e.valueRe.test(a)){a=a.substring(1,a.length-1).split('.');c=function(d){for(var b=d,c=0;b&&c<a.length;++c){b=b[a[c]]}return b}}else {a=new Ext.XTemplate(a);c=function(b){return a.apply(b)}}}}else {if(!a||Ext.isPrimitive(a)||Ext.isFunction(a)){c=function(){return a}}else {if(a instanceof Array){d=[];for(b=0,f=a.length;b<f;++b){d[b]=e.compile(a[b])}c=function(e){var c=[],b;for(b=0;b<f;++b){c[b]=d[b](e)}return c}}else {d={};for(b in a){if(!g[b]){d[b]=e.compile(a[b])}}c=function(f){var e={},b,c;for(b in a){c=g[b]?a[b]:d[b](f);if(c!==undefined){e[b]=c}}return e}}}}return c}}},1,0,0,0,0,0,[Ext.util,'ObjectTemplate'],0);Ext.cmd.derive('Ext.data.schema.Role',Ext.Base,{isRole:!0,left:!0,owner:!1,side:'left',isMany:!1,defaultReaderType:'json',_internalReadOptions:{recordsOnly:!0,asRoot:!0},constructor:function(b,d){var a=this,c=d.extra;Ext.apply(a,d);if(c){delete c.type;Ext.apply(a,c);delete a.extra}a.association=b;if(b.owner===a.side){b.owner=a;a.owner=!0}},processUpdate:function(){Ext.Error.raise('Only the "many" for an association may be processed. "'+this.role+'" is not valid.')},processLoad:function(d,b,a,c){return a},checkMembership:Ext.emptyFn,adoptAssociated:function(c,b){var a=this.getAssociatedItem(c);if(a){b.adopt(a)}},createAssociationStore:function(e,k,i,l){var a=this,g=a.association,d=g.getFieldName(),j=g.isManyToMany,h=a.storeConfig,f=k.getId(),c={model:a.cls,role:a,session:e,associatedEntity:k,disableMetaChangeEvent:!0,pageSize:null,remoteFilter:!0,trackRemoved:!e},b;if(j){c.filters=[{property:a.inverse.field,value:f,exactMatch:!0}]}else {if(d){c.filters=[{property:d,value:f,exactMatch:!0}];c.foreignKeyName=d}}if(h){Ext.apply(c,h)}b=Ext.Factory.store(c);a.onStoreCreate(b,e,f);if(d||j&&e){b.on({scope:a,add:'onAddToMany',remove:'onRemoveFromMany',clear:'onRemoveFromMany'})}if(i){b.loadData(i);b.complete=!!l}return b},onStoreCreate:Ext.emptyFn,getAssociatedStore:function(e,a,b,g,o){var m=this,i=m.getStoreName(),d=e[i],j=a&&a.reload,f=e.$source,p=e.session,c,h,q,k,l,n;if(!d){if(!g&&f){f=f[i];if(f&&!f.isLoading()){n=f;g=[];k=f.getData().items;for(h=0,q=k.length;h<q;++h){l=k[h];g.push(p.getRecord(l.self,l.id))}o=!0}}d=m.createAssociationStore(p,e,g,o);d.$source=n;if(!g&&(m.autoLoad||a)){j=!0}e[i]=d}if(a){if(j||d.isLoading()){d.on('load',function(h,i,d,f){c=[h,f];b=b||a.scope||e;if(d){Ext.callback(a.success,b,c)}else {Ext.callback(a.failure,b,c)}c.push(d);Ext.callback(a,b,c);Ext.callback(a.callback,b,c)},null,{single:!0})}else {c=[d,null];b=b||a.scope||e;Ext.callback(a.success,b,c);c.push(!0);Ext.callback(a,b,c);Ext.callback(a.callback,b,c)}}if(j&&!d.isLoading()){d.load()}return d},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 b=this,a=b.reader,d=b.cls,c=!b.associationKey,e=this.getReaderRoot();if(a&&!a.isReader){if(Ext.isString(a)){a={type:a}}Ext.applyIf(a,{model:d,rootProperty:e,useSimpleAccessors:c,type:b.defaultReaderType});a=b.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))},getOldInstanceName:function(){return this.oldInstanceName||(this.oldInstanceName='$old'+this.getInstanceName())},getStoreName:function(){var a=this;return a.storeName||(a.storeName=a.association.schema.getNamer().storeName(a.role))},constructReader:function(h){var b=this,a=b.getReader(),e=b.cls,g=!b.associationKey,f=b.getReaderRoot(),c,d;if(!a){d=e.getProxy();if(d){c=d.getReader();a=new c.self();a.copyFrom(c);a.setRootProperty(f)}else {a=new h.self({model:e,useSimpleAccessors:g,rootProperty:f})}b.reader=a}return a},read:function(f,e,d,c){var a=this.constructReader(d),b=a.getRoot(e);if(b){return a.readRecords(b,c,this._internalReadOptions)}},getCallbackOptions:function(a,c,b){if(typeof a==='function'){a={callback:a,scope:c||b}}else {if(a){a=Ext.apply({},a);a.scope=c||a.scope||b}}return a},doGetFK:function(d,b,f){var i=this,l=i.cls,j=i.association.getFieldName(),h=i.getInstanceName(),a=d[h],m=b&&b.reload,e=a!==undefined&&!m,k=d.session,c,g;if(!e){if(k){c=d.get(j);if(c||c===0){e=k.peekRecord(l,c,!0)&&!m;a=k.getRecord(l,c,!1)}else {e=!0;d[h]=a=null}}else {if(j){c=d.get(j);if(!c&&c!==0){e=!0;d[h]=a=null}else {if(!a){a=l.createWithId(c)}}}else {e=!0}}}else {if(a){e=!a.isLoading()}}if(e){if(b){g=[a,null];f=f||b.scope||d;Ext.callback(b.success,f,g);g.push(!0);Ext.callback(b,f,g);Ext.callback(b.callback,f,g)}}else {d[h]=a;b=i.getCallbackOptions(b,f,d);a.load(b)}return a},doSetFK:function(a,c,e,l){var f=this,i=f.association.getFieldName(),h=f.getInstanceName(),b=a[h],d=f.inverse,j=d.setterName,m=a.session,k,g;if(c&&c.isEntity){if(b!==c){g=f.getOldInstanceName();a[g]=b;a[h]=c;if(b&&b.isEntity){b[d.getInstanceName()]=undefined}if(i){a.set(i,c.getId())}delete a[g];if(j){c[j](a)}}}else {k=a.changingKey&&!d.isMany||a.set(i,c);if(k&&b&&b.isEntity&&!b.isEqual(b.getId(),c)){a[h]=undefined;if(!d.isMany){b[d.getInstanceName()]=undefined}}}if(e){if(Ext.isFunction(e)){e={callback:e,scope:l||a}}return a.save(e)}}},1,0,0,0,0,0,[Ext.data.schema,'Role'],0);Ext.cmd.derive('Ext.data.schema.Association',Ext.Base,{isOneToOne:!1,isManyToOne:!1,isManyToMany:!1,owner:null,field:null,constructor:function(d){var a=this,c,b;Ext.apply(a,d);a.left=c=new a.Left(a,a.left);a.right=b=new a.Right(a,a.right);c.inverse=b;b.inverse=c},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:!0,isToOne:!0,kind:'one-to-one',Left:Ext.define(null,{extend:'Ext.data.schema.Role',onDrop:function(a,c){var b=this.getAssociatedItem(a);a[this.getInstanceName()]=null;if(b){b[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 c=this.getInstanceName(),b=a[c],d=a.session;if(!b&&d){}return b||null},doSet:function(a,b){var d=this.getInstanceName(),e=a[d],c=this.inverse.setterName;if(e!==b){a[d]=b;if(c){b[c](a)}}return e},read:function(a,g,f,e){var c=this,d=c.callParent([a,g,f,e]),b;if(d){b=d[0];if(b){b[c.inverse.getInstanceName()]=a;a[c.getInstanceName()]=b;delete a.data[c.role]}}}}),Right:Ext.define(null,{extend:'Ext.data.schema.Role',left:!1,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(c,f){var b=this,e=b.association.field,a=b.getAssociatedItem(c),d;if(b.inverse.owner){if(f){d=c.get(e.name);if(d||d===0){a=f.getEntry(b.cls,d).record;if(a){a.drop()}}}else {if(a){a.drop()}}}if(e){c.set(e.name,null)}c[b.getInstanceName()]=null;if(a){a[b.inverse.getInstanceName()]=null}},onValueChange:function(b,f,c){var a=this,e=b[a.getOldInstanceName()]||a.getAssociatedItem(b),h=c||c===0,d=a.getInstanceName(),g=a.cls;b.changingKey=!0;a.doSetFK(b,c);if(!h){b[d]=null}else {if(f&&g){b[d]=f.peekRecord(g,c)||undefined}}if(a.inverse.owner&&e){a.association.schema.queueKeyCheck(e,a)}b.changingKey=!1},checkKeyForDrop:function(a){var b=this.inverse.getAssociatedItem(a);if(!b){a.drop()}},read:function(a,o,n,m){var e=this,l=e.callParent([a,o,n,m]),b,g,f,c,k,h,j,i,d;if(l){b=l[0];g=e.association.field;f=g.name;c=a.session;d=a.data;if(b){if(c){k=c.getRefs(b,this.inverse,!0);i=k&&k[a.id]||d[f]===undefined}else {i=!0}if(i){if(g){j=d[f];h=b.id;if(j!==h){d[f]=h;if(c){c.updateReference(a,g,h,j)}}}b[e.inverse.getInstanceName()]=a;a[e.getInstanceName()]=b}delete d[e.role]}}}})},0,0,0,0,0,0,[Ext.data.schema,'OneToOne'],0);Ext.cmd.derive('Ext.data.schema.ManyToOne',Ext.data.schema.Association,{isManyToOne:!0,isToOne:!0,kind:'many-to-one',Left:Ext.define(null,{extend:'Ext.data.schema.Role',isMany:!0,onDrop:function(d,f){var b=this,e=b.getAssociatedItem(d),a,g,c,i,h;if(e){a=e.removeAll();if(a&&b.inverse.owner){for(c=0,g=a.length;c<g;++c){a[c].drop()}}e.destroy();d[b.getStoreName()]=null}else {if(f){a=f.getRefs(d,b);if(a){for(h in a){a[h].drop()}}}}},processUpdate:function(f,i){var d=this,h=d.inverse.cls,g=i.R,c,a,b,e;if(g){for(c in g){a=f.peekRecord(h,c);if(a){e=f.getEntityList(d.cls,g[c]);b=d.getAssociatedItem(a);if(b){b.loadData(e);b.complete=!0}else {a[d.getterName](null,null,e)}}else {f.onInvalidAssociationEntity(h,c)}}}},findRecords:function(k,f,e,i){var d=e,b=k.getRefs(f,this,!0),l=this.association.field,j=l.name,a,c,h,m,g;if(!f.phantom){d=[];if(b||i){if(e){g={};for(h=0,m=e.length;h<m;++h){a=e[h];c=a.id;if(b&&b[c]){d.push(a)}else {if(i&&a.data[j]===undefined){d.push(a);a.data[j]=f.id;k.updateReference(a,l,f.id,undefined)}}g[c]=!0}}if(b){for(c in b){if(!g||!g[c]){d.push(b[c])}}}}}return d},processLoad:function(e,d,c,a){var b=c;if(a){b=this.findRecords(a,d,c)}this.onLoadMany(d,b,a);return b},adoptAssociated:function(f,d){var c=this.getAssociatedItem(f),b,a,e;if(c){c.setSession(d);b=c.getData().items;for(a=0,e=b.length;a<e;++a){d.adopt(b[a])}}},createGetter:function(){var a=this;return function(e,f,b){var d=this.session,c=!!b;if(d){b=a.findRecords(d,this,b,!0);if(!c&&(!b||!b.length)){b=null}}return a.getAssociatedStore(this,e,f,b,c)}},createSetter:null,onAddToMany:function(b,a){this.syncFK(a,b.getAssociatedEntity(),!1)},onLoadMany:function(i,h,j){var l=this.inverse.getInstanceName(),g=i.getId(),b=this.association.field,c,k,a,d,e,f;if(b){for(c=0,k=h.length;c<k;++c){a=h[c];a[l]=i;if(b){f=b.name;e=a.data;d=e[f];if(d!==g){e[f]=g;if(j){j.updateReference(a,b,g,d)}}}}}},onRemoveFromMany:function(b,a){this.syncFK(a,b.getAssociatedEntity(),!0)},read:function(b,j,i,h){var c=this,g=c.inverse.getInstanceName(),a=c.callParent([b,j,i,h]),e,f,d;if(a){e=b[c.getterName](null,null,a);delete b.data[c.role];a=e.getData().items;for(d=0,f=a.length;d<f;++d){a[d][g]=b}}},syncFK:function(c,d,f){var i=this.association.getFieldName(),g=this.inverse,k=g.setterName,j=g.getInstanceName(),h=c.length,l=d.getId(),e,a,b;while(h-->0){a=c[h];e=!a.isEqual(l,a.get(i));b=f?null:d;if(e!==f){a.changingKey=!0;a[k](b);a.changingKey=!1}else {a[j]=b}}}}),Right:Ext.define(null,{extend:'Ext.data.schema.Role',left:!1,side:'right',onDrop:function(a,c){var b=this.association.field;if(b){a.set(b.name,null)}a[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,b){var d=this.association.field,a;a=this.getSessionStore(c,b.get(d.name));if(a&&!a.contains(b)){a.add(b)}},onValueChange:function(b,f,d,l){var c=this,j=c.getInstanceName(),m=c.cls,i,g,a,h,n,e,k;if(!b.changingKey){i=d||d===0;if(!i){b[j]=null}if(f){a=c.getSessionStore(f,l);if(a){a.remove(b)}if(i){a=c.getSessionStore(f,d);if(a&&!a.isLoading()){a.add(b)}if(m){k=f.peekRecord(m,d)}b[j]=k||undefined}}else {g=b.joined;if(g){for(h=0,n=g.length;h<n;++h){a=g[h];if(a.isStore){e=a.getAssociatedEntity();if(e&&e.self===c.cls&&e.getId()===l){a.remove(b)}}}}}}if(c.owner&&d===null){c.association.schema.queueKeyCheck(b,c)}},checkKeyForDrop:function(a){var b=this.association.field;if(a.get(b.name)===null){a.drop()}},getSessionStore:function(c,d){var b=this.cls,a;if(b){a=c.peekRecord(b,d);if(a){return this.inverse.getAssociatedItem(a)}}},read:function(b,f,e,d){var c=this.callParent([b,f,e,d]),a;if(c){a=c[0];if(a){b[this.getInstanceName()]=a;delete b.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:!0,isToMany:!0,kind:'many-to-many',Left:Ext.define(null,{extend:'Ext.data.schema.Role',isMany:!0,digitRe:/^\d+$/,findRecords:function(i,k,f){var l=i.getMatrixSlice(this.inverse,k.id),g=l.members,h=[],m=this.cls,d,e,j,a,c,b;if(f){d={};for(e=0,j=f.length;e<j;++e){b=f[e];a=b.id;c=g[a];if(!(c&&c[2]===-1)){h.push(b)}d[a]=!0}}for(a in g){c=g[a];if(!d||!d[a]&&(c&&c[2]!==-1)){b=i.peekRecord(m,a);if(b){h.push(b)}}}return h},processLoad:function(e,d,b,c){var a=b;if(c){a=this.findRecords(c,d,b);this.onAddToMany(e,a,!0)}return a},processUpdate:function(b,f){var a=this,i=a.inverse.cls,h=f.R,e,c,d,g;if(h){for(e in h){c=b.peekRecord(i,e);if(c){g=b.getEntityList(a.cls,h[e]);d=a.getAssociatedItem(c);if(d){d.loadData(g);d.complete=!0}else {c[a.getterName](null,null,g)}}else {b.onInvalidAssociationEntity(i,e)}}}a.processMatrixBlock(b,f.C,1);a.processMatrixBlock(b,f.D,-1)},checkMembership:function(l,i){var d=l.getMatrix(this.association,!0),g,j,k,f,e,h,c,m,b,a;if(!d){return}g=this.left?d.right:d.left;j=g.inverse.role.cls;k=this.inverse;e=g.slices;if(e){f=e[i.id];if(f){c=f.members;for(h in c){m=c[h];if(m[2]!==-1){b=l.peekRecord(j,h);if(b){a=k.getAssociatedItem(b);if(a){a.matrixUpdate=1;a.add(i);a.matrixUpdate=0}}}}}}},onStoreCreate:function(d,c,e){var b=this,a;if(c){a=c.getMatrixSlice(b.inverse,e);a.attach(d);a.notify=b.onMatrixUpdate;a.scope=b}},processMatrixBlock:function(f,b,g){var e=this.inverse,d=this.digitRe,c,a;if(b){for(a in b){if(d.test(a)){a=parseInt(a,10)}c=f.getMatrixSlice(e,a);c.update(b[a],g)}}},createGetter:function(){var a=this;return function(e,f,b){var d=this.session,c;if(d){c=!!b;b=a.findRecords(d,this,b);if(!c&&!b.length){b=null}}return a.getAssociatedStore(this,e,f,b,c)}},onAddToMany:function(a,b,c){if(!a.matrixUpdate){a.matrixUpdate=1;a.matrix.update(b,c===!0?0:1);a.matrixUpdate=0}},onRemoveFromMany:function(a,b){if(!a.matrixUpdate){a.matrixUpdate=1;a.matrix.update(b,-1);a.matrixUpdate=0}},read:function(a,f,e,d){var b=this,c=b.callParent([a,f,e,d]);if(c){a[b.getterName](null,null,c);delete a.data[b.role]}},onMatrixUpdate:function(f,e,g){var a=f.store,b,c,d;if(a&&!a.loading&&!a.matrixUpdate){a.matrixUpdate=1;b=a.indexOfId(e);if(g<0){if(b>=0){a.remove([b])}}else {if(b<0){d=a.getSession().getEntry(this.type,e);c=d&&d.record;if(c){a.add(c)}}}a.matrixUpdate=0}},adoptAssociated:function(e,d){var a=this.getAssociatedItem(e),c,b,f;if(a){a.setSession(d);this.onStoreCreate(a,d,e.getId());c=a.getData().items;for(b=0,f=c.length;b<f;++b){d.adopt(c[b])}}}},function(){var a=this;Ext.ClassManager.onCreated(function(){Ext.data.schema.ManyToMany.prototype.Right=Ext.define(null,{extend:a,left:!1,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:!0,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(a){if(this.isTransnumeral(a)){return a}var e=this.plurals,f=e.length,d,b,c;for(c=0;c<f;c++){d=e[c];b=d[0];if(b==a||b.test&&b.test(a)){return a.replace(b,d[1])}}return a},singularize:function(a){if(this.isTransnumeral(a)){return a}var e=this.singulars,f=e.length,d,b,c;for(c=0;c<f;c++){d=e[c];b=d[0];if(b==a||b.test&&b.test(a)){return a.replace(b,d[1])}}return a},classify:function(a){return Ext.String.capitalize(this.singularize(a))},ordinalize:function(a){var c=parseInt(a,10),d=c%10,b=c%100;if(11<=b&&b<=13){return a+'th'}else {switch(d){case 1:return a+'st';case 2:return a+'nd';case 3:return a+'rd';default:return a+'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:!0,capitalize:function(a){return Ext.String.capitalize(a)},fieldRole:function(a){var b=a.match(this.endsWithIdRe,'');if(b){a=a.substr(0,a.length-(b[1]||b[2]).length)}return this.apply('uncapitalize',a)},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(c){if(c.indexOf('.')<0){return c}var a=c.split('.'),b=a.length;while(b-->1){a[b]=this.apply('capitalize',a[b])}return a.join('')},getterName:function(a){var b=a.role;if(a&&a.isMany){return b}return 'get'+this.apply('capitalize',b)},inverseFieldRole:function(e,f,c,d){var a=this,b=a.apply(f?'uniRole':'multiRole',e),g=a.apply('pluralize',c),h=a.apply('undotted,pluralize',d);if(g.toLowerCase()!==h.toLowerCase()){b=c+a.apply('capitalize',b)}return b},manyToMany:function(c,e,d){var b=this,a=b.apply('undotted,capitalize,singularize',e)+b.apply('undotted,capitalize,pluralize',d);if(c){a=b.apply('capitalize',c+a)}return a},manyToOne:function(d,b,a,c){return this.apply('capitalize,singularize',a)+this.apply('capitalize',b)},matrixRole:function(a,c){var b=this.apply(a?'multiRole,capitalize':'multiRole',c);return a?a+b:b},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(b,c){var e=this,h=e.cache,i=h[c]||(h[c]={}),a=i[b],d,g,f;if(!a){if(b.indexOf(',')<0){a=e[b](c)}else {g=(f=b.split(',')).length;a=c;for(d=0;d<g;++d){a=e.apply(f[d],a)}}i[b]=a}return a}},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:!0,type:'default',statics:{instances:{},get:function(a){var f=this,g=f.instances,c='default',e=a&&Ext.isString(a),b,d;if(a){if(a.isSchema){return a}c=e?a:a.id||c}if(!(b=g[c])){g[c]=b=f.create(a);b.id=c}else {if(a&&!e){d=Ext.merge({},b.config);Ext.merge(d,a);b.setConfig(d);b.config=d}}return b},lookupEntity:function(b){var a=null,e=this.instances,c,d,f;if(b){if(b.isEntity){a=b.self}else {if(Ext.isFunction(b)){a=b}else {if(Ext.isString(b)){a=Ext.ClassManager.get(b);if(a&&(!a.prototype||!a.prototype.isEntity)){a=null}if(!a){for(d in e){f=e[d];c=f.getEntity(b);if(c){if(a){Ext.Error.raise('Ambiguous entity name "'+b+'". Defined by schema "'+a.schema.type+'" and "'+d+'"')}a=c}}}if(!a){Ext.Error.raise('No such Entity "'+b+'".')}}}}}return a}},assocCount:0,entityCount:0,config:{defaultIdentifier:null,keyCheckDelay:10,namer:'default',namespace:null,proxy:{type:'ajax',url:'{prefix}/{entityName}'},urlPrefix:''},onClassExtended:function(c,b){var a=b.alias;if(a&&!b.type){if(!Ext.isString(a)){a=a[0]}c.prototype.type=a.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(a){if(a){var b=a.length-1;if(a.charAt(b)!=='.'){a+='.'}}return a},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])===!1){break}}}},eachEntity:function(d,c){var b=this.entities,a;for(a in b){if(b.hasOwnProperty(a)){if(d.call(c,a,b[a].cls)===!1){break}}}},getAssociation:function(b){var a=this.associations[b];return a||null},getEntity:function(b){var a=this.entityClasses[b]||this.entities[b];return a&&a.cls||null},getEntityName:function(c){var d=this.getNamespace(),b,a;if(typeof c==='string'){a=c}else {a=c.$className||null}if(a){if(d){b=d.length;if(a.substring(0,b)!==d){return a}}if(b){a=a.substring(b)}}return a},hasAssociations:function(a){a=a.entityName||a;return !!this.associationEntityMap[a]},hasEntity:function(b){var a=this.getEntityName(b);return !!(this.entities[a]||this.entityClasses[a])},addMatrix:function(n,k,l,j,i){var a=this,h=a.getNamer(),m=a.associations,g=a.entities,c=j.type,b=i.type,p=j.field||h.apply('idField',c),o=i.field||h.apply('idField',b),r=j.role||h.matrixRole(l,c),q=i.role||h.matrixRole(l,b),d,f,e;f=g[c]||(g[c]={cls:null,name:c,associations:{}});e=g[b]||(g[b]={cls:null,name:b,associations:{}});++a.assocCount;m[k]=d=new Ext.data.schema.ManyToMany({name:k,schema:a,definedBy:n,left:{cls:f.cls,type:c,role:r,field:p,associationKey:j.associationKey},right:{cls:e.cls,type:b,role:q,field:o,associationKey:i.associationKey}});f.associations[d.right.role]=d.right;e.associations[d.left.role]=d.left;if(f.cls){a.associationEntityMap[f.cls.entityName]=!0}if(e.cls){a.associationEntityMap[e.cls.entityName]=!0}a.decorateModel(d)},addReference:function(g,f,b,m){var e=this,j=e.getNamer(),o=e.entities,s=e.associations,k=g.entityName,a=b.association,t=!!b.legacy,q=b.child,p=b.parent,c=b.role,d=b.type||p||q,l=b.inverse,n=Ext.isString(l)?{role:l}:l,h=n&&n.role,i,r;if(!c){if(t){c=j.apply('uncapitalize',d)}else {c=j.apply('fieldRole',f.name)}}if(!h){h=j.inverseFieldRole(k,m,c,d)}if(!a){if(m){a=j.oneToOne(g,h,d,c)}else {a=j.manyToOne(g,h,d,c)}}i=o[d]||(o[d]={cls:null,name:d,associations:{}});r=m?Ext.data.schema.OneToOne:Ext.data.schema.ManyToOne;a=new r({name:a,owner:q?'left':p?'right':null,definedBy:g,schema:e,field:f,nullable:f?!!f.allowBlank:!0,legacy:b.legacy,left:{cls:g,type:k,role:h,extra:n},right:{cls:i.cls,type:d,role:c,extra:b}});g.associations[c]=a.right;i.associations[h]=a.left;if(f){f.reference=a.right;g.references.push(f)}++e.assocCount;e.associationEntityMap[k]=!0;if(i.cls){e.associationEntityMap[i.cls.entityName]=!0}s[a.name]=a;if(a.right.cls){e.decorateModel(a)}},privates:{addEntity:function(a){var c=this,i=c.entities,e=a.entityName,b=i[e],j=a.fields,d,g,f,k,h;if(!b){i[e]=b={name:e,associations:{}}}else {d=b.associations;for(h in d){d[h].inverse.cls=a;c.associationEntityMap[e]=!0;c.decorateModel(d[h].association)}}b.cls=a;a.prototype.associations=a.associations=b.associations;c.entityClasses[a.$className]=b;++c.entityCount;for(f=0,k=j.length;f<k;++f){g=j[f];if(g.reference){c.addReferenceDescr(a,g)}}},addMatrices:function(c,a){var e=this,b,f,d;if(Ext.isString(a)){e.addMatrixDescr(c,null,a)}else {if(a[0]){for(b=0,f=a.length;b<f;++b){e.addMatrixDescr(c,null,a[b])}}else {for(d in a){e.addMatrixDescr(c,d,a[d])}}}},addMatrixDescr:function(i,f,a){var h=this,d=i.entityName,k=h.associations,e=h.getNamer(),c=a.left,b=a.right,j,g;if(Ext.isString(a)){if(a.charAt(0)==='#'){c={type:d};b={type:a.substring(1)}}else {if(a.charAt(j=a.length-1)==='#'){c={type:a.substring(0,j)};b={type:d}}else {if(e.apply('multiRole',d)<e.apply('multiRole',a)){c={type:d};b={type:a}}else {c={type:a};b={type:d}}}}}else {g=a.relation;if(c||!b&&e.apply('multiRole',d)<e.apply('multiRole',a.type)){if(!c||c===!0){c={type:d}}else {c=Ext.apply({type:d},c)}b=a}else {if(!b||b===!0){b={type:d}}else {b=Ext.apply({type:d},b)}c=a}}if(!f){f=e.manyToMany(g,c.type,b.type)}if(!(f in k)){h.addMatrix(i,f,g,c,b)}},addReferenceDescr:function(c,b){var d=this,a=b.$reference;if(Ext.isString(a)){a={type:a}}else {a=Ext.apply({},a)}if(a.legacy){if(a.single){d.addLegacySingle(c,a)}else {d.addLegacyHasMany(c,a)}}else {d.addReference(c,b,a,b.unique)}},addPending:function(b,c,d,e){var a=this.pending;if(!a[b]){a[b]=[]}a[b].push([c,d,e])},addLegacyBelongsTo:function(a,b){this.addLegacySingle(a,b)},addLegacyHasOne:function(a,b){this.addLegacySingle(a,b)},addLegacySingle:function(c,a){var d,e,b;a=this.constructLegacyAssociation(c,a);a.single=!0;e=a.type;d=a.foreignKey||e.toLowerCase()+'_id';b=c.getField(d);if(b){b.$reference=a}this.addReference(c,b,a,!0)},addLegacyHasMany:function(g,a){var j=this,l=j.entities,h=j.pending,f=a.associationKey,i,b,c,e,k,d;a=this.constructLegacyAssociation(g,a);b=a.type;e=l[b];if(e&&e.cls){a.type=g.entityName;k=a.foreignKey||a.type.toLowerCase()+'_id';i=e.cls;c=i.getField(k);a.inverse=a||{};d=a.name;if(d||f){if(d){a.inverse.role=d}if(f){a.inverse.associationKey=f}}if(c){c.$reference=a}j.addReference(i,c,a,!1)}else {if(!h[b]){h[b]=[]}h[b].push([g,a])}},constructLegacyAssociation:function(c,a){if(Ext.isString(a)){a={model:a}}a.legacy=!0;a.type=this.getEntityName(a.model);var b=a.associatedName||a.name;if(b){a.role=b}return a},afterLegacyAssociations:function(f){var c=this.pending,d=f.entityName,b=c[d],a,e;if(b){for(a=0,e=b.length;a<e;++a){this.addLegacyHasMany.apply(this,b[a])}delete c[d]}},clear:function(c){var a=this,b=a.timer;delete a.setConfig;if(b){window.clearTimeout(b);a.timer=null}a.associations={};a.associationEntityMap={};a.entities={};a.entityClasses={};a.pending={};a.assocCount=a.entityCount=0;if(c){a.setNamespace(null)}},constructProxy:function(c){var b=this,a=Ext.Object.chain(c),d=b.getProxy();a.schema=b;a.prefix=b.getUrlPrefix();return d.apply(a)},applyDecoration:function(a){var g=this,f=a.inverse.cls,e=g.getNamer(),b,c,d;if(f&&!a.decorated){a.decorated=!0;d=f.prototype;if(!(b=a.getterName)){a.getterName=b=e.getterName(a)}d[b]=a.createGetter();if(a.createSetter){if(!(c=a.setterName)){a.setterName=c=e.setterName(a)}d[c]=a.createSetter()}}},decorateModel:function(a){this.applyDecoration(a.left);this.applyDecoration(a.right)},processKeyChecks:function(g){var a=this,b=a.keyCheckQueue,e=a.timer,f,c,d;if(e){window.clearTimeout(e);a.timer=null}if(!b){return}do{b=a.keyCheckQueue;a.keyCheckQueue=[];for(c=0,f=b.length;c<f;++c){d=b[c];d.role.checkKeyForDrop(d.record)}}while(g&&a.keyCheckQueue.length)},queueKeyCheck:function(d,e){var a=this,b=a.keyCheckQueue,c=a.timer;if(!b){a.keyCheckQueue=b=[]}b.push({record:d,role:e});if(!c){a.timer=c=Ext.Function.defer(a.processKeyChecks,a.getKeyCheckDelay(),a)}},rankEntities:function(){var d=this,e=d.entities,b=Ext.Object.getKeys(e),f=b.length,c,a;d.nextRank=1;b.sort();for(a=0;a<f;++a){c=e[b[a]].cls;if(!c.rank){d.rankEntity(c)}}},rankEntity:function(d){var c=d.associations,b,a,e;for(e in c){a=c[e];if(!a.left&&a.association.field){b=a.cls;if(!b.rank){this.rankEntity(b)}}}d.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:!1,$configStrict:!1,config:{filters:null,autoDestroy:undefined,storeId:null,statefulFilters:!1,sorters:null,remoteSort:{lazy:!0,$value:!1},remoteFilter:{lazy:!0,$value:!1},groupField:undefined,groupDir:'ASC',grouper:null,pageSize:25},currentPage:1,loading:!1,isDestroyed:!1,isStore:!0,updating:0,constructor:function(c){var a=this,b;a.isInitializing=!0;a.mixins.observable.constructor.call(a,c);a.isInitializing=!1;b=a.getStoreId();if(!b&&(c&&c.id)){a.setStoreId(b=c.id)}if(b){Ext.data.StoreManager.register(a)}},getCount:function(){return this.getData().getCount()},rangeCached:function(a,b){return this.getData().getCount()>=Math.max(a,b)},find:function(g,h,d,e,b,c){var a=!e,f=!!(a&&c);return this.getData().findIndex(g,h,d,a,f,!b)},findRecord:function(){var a=this,b=a.find.apply(a,arguments);return b!==-1?a.getAt(b):null},findExact:function(a,c,b){return this.getData().findIndexBy(function(d){return d.isEqual(d.get(a),c)},this,b)},findBy:function(c,a,b){return this.getData().findIndexBy(c,a,b)},getAt:function(a){return this.getData().getAt(a)||null},getRange:function(d,b,a){var c=this.getData().getRange(d,Ext.isNumber(b)?b+1:b);if(a&&a.callback){a.callback.call(a.scope||this,c,d,b,a)}return c},getFilters:function(b){var a=(arguments.callee.$previous||Ext.Base.prototype.getFilters).call(this);if(!a&&b!==!1){this.setFilters([]);a=(arguments.callee.$previous||Ext.Base.prototype.getFilters).call(this)}return a},applyFilters:function(c,a){var b;if(!a){a=this.createFiltersCollection();b=!0}a.add(c);if(b){this.onRemoteFilterSet(a,this.getRemoteFilter())}return a},getSorters:function(b){var a=(arguments.callee.$previous||Ext.Base.prototype.getSorters).call(this);if(!a&&b!==!1){this.setSorters([]);a=(arguments.callee.$previous||Ext.Base.prototype.getSorters).call(this)}return a},applySorters:function(c,a){var b;if(!a){a=this.createSortersCollection();b=!0}a.add(c);if(b){this.onRemoteSortSet(a,this.getRemoteSort())}return a},filter:function(a,c,b){if(Ext.isString(a)){a={property:a,value:c}}this.suppressNextFilter=!!b;this.getFilters().add(a);this.suppressNextFilter=!1},removeFilter:function(a,d){var b=this,c=b.getFilters();b.suppressNextFilter=!!d;if(a instanceof Ext.util.Filter){c.remove(a)}else {c.removeByKey(a)}b.suppressNextFilter=!1},updateRemoteSort:function(a){this.onRemoteSortSet(this.getSorters(!1),a)},updateRemoteFilter:function(a){this.onRemoteFilterSet(this.getFilters(!1),a)},addFilter:function(b,a){this.suppressNextFilter=!!a;this.getFilters().add(b);this.suppressNextFilter=!1},filterBy:function(b,a){this.getFilters().add({filterFn:b,scope:a||this})},clearFilter:function(c){var b=this,a=b.getFilters(!1);if(!a||a.getCount()===0){return}b.suppressNextFilter=!!c;a.removeAll();b.suppressNextFilter=!1},isFiltered:function(){return this.getFilters().getCount()>0},isSorted:function(){var a=this.getSorters(!1);return !!(a&&a.length>0)||this.isGrouped()},addFieldTransform:function(b){if(b.getTransform()){return}var e=b.getProperty(),d=this.getModel(),c,a;if(d){c=d.getField(e);a=c?c.getSortType():null}if(a&&a!==Ext.identityFn){b.setTransform(a)}},beginUpdate:function(){if(!this.updating++){this.fireEvent('beginupdate')}},endUpdate:function(){if(this.updating&&!--this.updating){this.fireEvent('endupdate');this.onEndUpdate()}},getState:function(){var c=this,e=[],g=c.getFilters(),f=c.getGrouper(),a,d,b;c.getSorters().each(function(a){e[e.length]=a.getState();d=!0});if(c.statefulFilters&&c.saveStatefulFilters){d=!0;a=[];g.each(function(b){a[a.length]=b.getState()})}if(f){d=!0}if(d){b={};if(e.length){b.sorters=e}if(a){b.filters=a}if(f){b.grouper=f.getState()}}return b},applyState:function(a){var b=this,e=a.sorters,c=a.filters,d=a.grouper;if(e){b.getSorters().replaceAll(e)}if(c){b.saveStatefulFilters=!0;b.getFilters().replaceAll(c)}if(d){this.setGrouper(d)}},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(b,a){if(a){this.fireEvent('beforesort',this,a.getRange())}},onSorterEndUpdate:function(){var a=this,b;b=a.getSorters(!1);if(a.settingGroups||!b){return}b=b.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 a=this,b=a.suppressNextFilter;if(a.getRemoteFilter()){a.currentPage=1;if(!b){a.attemptLoad()}}else {if(!b){a.fireEvent('datachanged',a);a.fireEvent('refresh',a)}}if(a.trackStateChanges){a.saveStatefulFilters=!0}a.fireEvent('filterchange',a,a.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(b,d){var a=this,c=a.getSorters(!1),e=b||c&&c.length;if(b&&typeof b==='string'){b={property:b,direction:d||a.getGroupDir()}}a.settingGroups=!0;a.getData().setGrouper(b);delete a.settingGroups;if(a.isLoadBlocked()){return}if(e){if(a.getRemoteSort()){a.attemptLoad({scope:a,callback:a.fireGroupChange})}else {a.fireEvent('datachanged',a);a.fireEvent('refresh',a);a.fireGroupChange()}}else {a.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,onRemoteFilterSet:function(a,b){if(a){a[b?'on':'un']('endupdate',this.onFilterEndUpdate,this)}},onRemoteSortSet:function(c,b){var a=this;if(c){c[b?'on':'un']('endupdate',a.onSorterEndUpdate,a);a.getData()[b?'un':'on']('beforesort',a.onBeforeCollectionSort,a)}}},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:!0,$configPrefixed:!1,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(h){var b=this,g=h.fields,k=h.data,f,a,l,c,i,e,j,d;for(c=0,i=g.length;c<i;++c){a=g[c];d=a.name;j=k[d];if(a.validate&&!a.validate.$nullFn){f=b.length;e=a.validate(j,null,b);if(f===b.length&&e!==!0){b.add(d,e)}}}return b},add:function(b,f){var e=this,d=Ext.data.field.Field.defaultInvalidMessage,a=b,c;if(Ext.isString(b)){a=new Ext.data.Error({field:b,message:f||d})}else {if(!a.isError){a=new Ext.data.Error({field:a.field||a.name,message:a.error||a.message||a.msg||d})}b=a.field}c=e.get(b);if(c){if(Ext.isArray(c)){c.push(a);return c}e.removeAtKey(b);a=[c,a];a.field=b;a=[a]}return Ext.util.MixedCollection.prototype.add.call(this,a)},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:!0,config:{synchronous:!1,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:!1,running:!1,complete:!1,success:undefined,exception:!1,error:undefined,idPrefix:'ext-operation-',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}this._internalId=Ext.id(this,this.idPrefix)},getAction:function(){return this.action},execute:function(){var a=this;delete a.error;delete a.success;a.complete=a.exception=!1;a.setStarted();return a.request=a.doExecute()},doExecute:Ext.emptyFn,abort:function(){var a=this,b=a.request;if(a.running&&b){a.getProxy().abort(b);a.request=null}},process:function(c,e,d,b){var a=this;b=b!==!1;a.setResponse(d);a.setResultSet(c);if(c.getSuccess()){a.doProcess(c,e,d);a.setSuccessful(b)}else {if(b){a.setException(c.getMessage())}}},_commitSetOptions:{convert:!0,commit:!0},doProcess:function(l,n,m){var j=this,i=j._commitSetOptions,e=j.getRecords(),k=e.length,g=e[0].clientIdProperty,f=l.getRecords(),h=f?f.length:0,d,c,b,a;if(h&&g){d=Ext.Array.toValueMap(e,'id');for(a=0;a<h;++a){c=f[a];b=d[c[g]];if(b){delete d[b.id];delete c[g];b.set(c,i)}}for(a in d){d[a].commit()}}else {for(a=0;a<k;++a){b=e[a];if(h===0||!(c=f[a])){b.commit()}else {b.set(c,i)}}}},setStarted:function(){this.started=this.running=!0},setCompleted:function(){var a=this,b=a.getProxy();a.complete=!0;a.running=!1;a.triggerCallbacks();if(b){b.completeOperation(a)}},setSuccessful:function(a){this.success=!0;if(a){this.setCompleted()}},setException:function(b){var a=this;a.exception=!0;a.success=a.running=!1;a.error=b;a.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===!0},allowWrite:function(){return !0}},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:!0,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:!0,order:30,foreignKeyDirection:-1,doProcess:function(){var b=this.getRecords(),c=b.length,a;for(a=0;a<c;++a){b[a].setErased()}},doExecute:function(){return this.getProxy().erase(this)},getRecordData:function(a,e){var b={},d=a.idField,c=this.getNameProperty()||'name';b[d[c]]=a.id;return b}},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:!0,config:{filters:undefined,sorters:undefined,grouper:undefined,start:undefined,limit:undefined,page:undefined,addRecords:!1},doExecute:function(){return this.getProxy().read(this)},doProcess:Ext.emptyFn,allowWrite:function(){return !1}},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:!0,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.validator.Validator',Ext.Base,{isValidator:!0,type:'base',statics:{all:{},register:function(a,c){var b=this.all;b[a.toUpperCase()]=b[a.toLowerCase()]=b[a]=c.prototype}},onClassExtended:function(b,a){if(a.type){Ext.data.validator.Validator.register(a.type,b)}},constructor:function(a){if(typeof a==='function'){this.fnOnly=!0;this.validate=a}else {this.initConfig(a)}},validate:function(){return !0},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:!0,isField:!0,allowBlank:!0,allowNull:!1,critical:!1,defaultInvalidMessage:'This field is invalid',defaultValue:undefined,definedBy:null,depends:null,dependents:null,mapping:null,name:null,ordinal:undefined,persist:null,reference:null,unique:!1,rank:null,stripRe:/[\$,%]/g,calculated:!1,evil:!1,identifier:!1,onClassExtended:function(f,d){var b=d.sortType,c=f.prototype,e=c.validators,a=d.validators;if(b&&Ext.isString(b)){c.sortType=Ext.data.SortTypes[b]}if(a){if(!Ext.isArray(a)){a=[a]}delete d.validators;if(e){a=e.concat(a)}c.validators=a}},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 a=this,n=a.calculateRe,c,l,f,h,b,j,e,m,k,i,g;if(d){if(Ext.isString(d)){a.name=d}else {g=d.validators;if(g){delete d.validators;a.instanceValidators=g}Ext.apply(a,d)}}if(!a.allowNull){a.allowNull=!!a.reference}c=a.calculate;b=a.depends;if(c){a.convert=a.doCalculate;if(!b){if(!(b=c.$depends)){j={};k=c.toString();c.$depends=b=[];e=a.argumentNamesRe.exec(k);m=e?e[1]:'data';while(e=n.exec(k)){if(m===e[1]&&!j[i=e[2]]){j[i]=1;b.push(i)}}}a.depends=b}}f=a.defaultValue;if(a.convert){a.calculated=l=a.convert.length>1;a.evil=l&&!b}if(a.persist===null){a.persist=!c}h=a.sortType;if(!a.sortType){a.sortType=Ext.data.SortTypes.none}else {if(Ext.isString(h)){a.sortType=Ext.data.SortTypes[h]}}if(b&&typeof b==='string'){a.depends=[b]}a.cloneDefaultValue=f!==undefined&&(Ext.isDate(f)||Ext.isArray(f)||Ext.isObject(f))},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 d=a.length,e=this._validators,c,b;for(c=0;c<d;++c){b=a[c];if(b.fn){b=b.fn}e.push(Ext.Factory.dataValidator(b))}}},collate:function(d,e){var c=this,a=d,b=e;if(c.sortType){a=c.sortType(a);b=c.sortType(b)}return a===b?0:a<b?-1:1},compare:function(a,b){return a===b?0:a<b?-1:1},isEqual:function(a,b){return this.compare(a,b)===0},convert:null,serialize:null,validate:function(j,f,h){var c=this,b='',a,g,e,i,d;if(!c._validators){c.compileValidators()}e=c._validators;for(d=0,i=e.length;d<i;++d){g=e[d];a=g.validate(j);if(a!==!0){a=a||c.defaultInvalidMessage;if(h){h.add(c.name,a);b=b||a}else {if(f){if(b){b+=f}b+=a}else {b=a;break}}}}return b||!0},doCalculate:function(b,a){return a?this.calculate(a.data):b},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:!0,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:!0,dateFormat:null,dateReadFormat:null,dateWriteFormat:null,compare:function(d,e){var b=d instanceof Date,c=e instanceof Date,a;if(c&&b){a=d.getTime()-e.getTime();if(a===0){a=0}else {a=a<0?-1:1}}else {if(b===c){a=0}else {a=b?1:-1}}return a},convert:function(a){if(!a){return null}if(a instanceof Date){return a}var c=this.dateReadFormat||this.dateFormat,b;if(c){return Ext.Date.parse(a,c)}b=Date.parse(a);return b?new Date(b):null},serialize:function(b){var c=null,a;if(Ext.isDate(b)){a=this.getDateWriteFormat();c=a?Ext.Date.format(b,a):b}return c},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:!0,isIntegerField:!0,numericType:'int',convert:function(a){if(typeof a==='number'){return this.getNumber(a)}var d=a===undefined||a===null||a==='',c=this.allowNull,b;if(d){b=c?null:0}else {b=this.parse(a);if(c&&isNaN(b)){b=null}}return b},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:!1,isNumberField:!0,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:!0,convert:function(a){var b=this.allowNull?null:'';return a===undefined||a===null?b:String(a)},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':!0,factoryConfig:{defaultType:'sequential'},isGenerator:!0,config:{id:null},constructor:function(a){var c=this,d,b;c.initConfig(a);b=c.getId();if(b){d=a&&a.cache||Ext.data.identifier.Generator.all;d[b]=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 b=this,a=Ext.Factory,c=a.dataIdentifier;a.dataIdentifier=function(a){var d=Ext.isString(a)?a:a&&a.id,e=d&&(a&&a.cache||b.all)[d];return e||c(a)}});Ext.cmd.derive('Ext.data.identifier.Sequential',Ext.data.identifier.Generator,{config:{increment:1,prefix:null,seed:1},generate:function(){var a=this,c=a._seed,b=a._prefix;a._seed+=a._increment;return b!==null?b+c:c}},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:!0,isModel:!0,validIdRe:null,erasing:!1,observableType:'record',constructor:function(b,e){var a=this,c=a.self,g=c.identifier,n=Ext.data.Model,k=n.identifier,l=a.idField.name,j,d,h,m,o,f,i;a.data=a.data=b||(b={});a.session=e||null;a.internalId=m=k.generate();if((j=b) instanceof Array){a.data=b={};i=a.getFields();o=Math.min(i.length,j.length);for(f=0;f<o;++f){b[i[f].name]=j[f]}}if(!(h=c.initializeFn)){c.initializeFn=h=n.makeInitializeFn(c)}if(!h.$nullFn){c.initializeFn(a)}if(!(a.id=d=b[l])&&d!==0){if(e){g=e.getIdentifier(c);d=g.generate()}else {if(k===g){d=m}else {d=g.generate()}}b[l]=a.id=d;a.phantom=!0}if(e){e.add(a)}if(a.init&&Ext.isFunction(a.init)){a.init()}},editing:!1,dirty:!1,session:null,dropped:!1,erased:!1,clientIdProperty:null,evented:!1,phantom:!1,idProperty:'id',manyToMany:null,identifier:null,previousValues:undefined,proxy:undefined,schema:'default',versionProperty:null,generation:1,validationSeparator:null,convertOnSet:!0,beginEdit:function(){var a=this,c=a.modified,b=a.previousValues;if(!a.editing){a.editing=!0;a.editMemento={dirty:a.dirty,data:Ext.apply({},a.data),generation:a.generation,modified:c&&Ext.apply({},c),previousValues:b&&Ext.apply({},b)}}},cancelEdit:function(){var a=this,b=a.editMemento;if(b){a.editing=!1;Ext.apply(a,b);a.editMemento=null}},endEdit:function(d,b){var a=this,c=a.editMemento;if(c){a.editing=!1;a.editMemento=null;a.previousValues=c.previousValues;if(!d){if(!b){b=a.getModifiedFieldNames(c.data)}if(a.dirty||b&&b.length){a.callJoined('afterEdit',[b])}}}},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(a){var b;if(this.isModified(a)){b=this.modified[a]}return b},get:function(a){return this.data[a]},_singleProp:{},_rejectOptions:{convert:!1,silent:!0},set:function(i,E,I){var a=this,A=a.self,t=a.data,f=a.modified,F=a.previousValues,r=a.session,n=Ext.isString(i),e=n?I:E,C=e?e.convert!==!1:a.convertOnSet,H=a.fieldsMap,x=e&&e.silent,w=e&&e.commit,G=!(e&&e.refs===!1)&&r,y=!(e&&e.dirty===!1&&!w),k=null,j,b,D,B,c,z,o,u,p,v,d=0,q,s,l,m,h,g;if(n){g=a._singleProp;g[i]=E}else {g=i}if(!(l=A.rankedFields)){l=A.rankFields()}q=l.length;do{for(c in g){h=g[c];j=t[c];o=a;b=H[c];if(b){if(C&&b.convert){h=b.convert(h,a)}o=b;m=b.reference}else {m=null}if(o.isEqual(j,h)){continue}t[c]=h;(k||(k=[])).push(c);(F||(a.previousValues=F={}))[c]=j;if(m&&m.cls){if(G){r.updateReference(a,b,h,j)}m.onValueChange(a,r,h,j)}v=(p=b&&b.dependents)&&p.length;while(v-->0){(u=p[v]).dirty=!0;d=d?Math.min(d,u.rank):u.rank}if(!b||b.persist){if(f&&f.hasOwnProperty(c)){if(!y||o.isEqual(f[c],h)){delete f[c];a.dirty=-1}}else {if(y){if(!f){a.modified=f={}}a.dirty=!0;f[c]=j}}}if(c===a.idField.name){D=!0;z=j;s=h}}if(!d){break}b=l[d-1];b.dirty=!1;if(n){delete g[i]}else {g=a._singleProp;n=!0}i=b.name;g[i]=t[i];C=!0;for(;d<q;++d){if(l[d].dirty){break}}if(d<q){++d}else {d=0}}while(1);if(a.dirty<0){a.dirty=!1;for(B in f){if(f.hasOwnProperty(B)){a.dirty=!0;break}}}if(n){delete g[i]}++a.generation;if(D){a.id=s;a.callJoined('onIdChanged',[z,s])}if(w){a.commit(x,k)}else {if(!x&&!a.editing&&k){a.callJoined('afterEdit',[k])}}return k},reject:function(c){var a=this,b=a.modified;if(b){a.set(b,a._rejectOptions)}a.dropped=!1;a.clearState();if(!c){a.callJoined('afterReject')}},commit:function(f,e){var a=this,b=a.versionProperty,d=a.data,c;a.clearState();if(b&&!a.phantom&&!isNaN(d[b])){++d[b]}a.phantom=!1;if(a.dropped){a.erased=c=!0}if(!f){if(c){a.callJoined('afterErase')}else {a.callJoined('afterCommit',[e])}}},clearState:function(){var a=this;a.dirty=a.editing=!1;a.editMemento=a.modified=null},drop:function(d){var a=this,b=a.associations,e=a.session,c;if(a.erased||a.dropped){return}a.dropped=!0;if(b&&d!==!1){for(c in b){b[c].onDrop(a,e)}}a.callJoined('afterDrop');if(a.phantom){a.setErased()}},join:function(b){var c=this,a=c.joined;if(!a){a=c.joined=[b]}else {if(!a.length){a[0]=b}else {Ext.Array.include(a,b)}}if(b.isStore&&!c.store){c.store=b}},unjoin:function(b){var f=this,a=f.joined,d=a&&a.length,c=f.store,e;if(d===1&&a[0]===b){a.length=0}else {if(d){Ext.Array.remove(a,b)}}if(c===b){c=null;if(a){for(e=0,d=a.length;e<d;++e){b=a[e];if(b.isStore){c=b;break}}}f.store=c}},clone:function(d){var a=this,c=a.modified,b=a.copy(a.id,d);if(c){b.modified=Ext.apply({},c)}b.dirty=a.dirty;b.dropped=a.dropped;b.phantom=a.phantom;return b},copy:function(a,e){var c=this,b=Ext.apply({},c.data),d=c.idProperty,f=c.self;if(a||a===0){b[d]=a}else {if(a===null){delete b[d]}}return new f(b,e)},getProxy:function(){return this.self.getProxy()},getValidation:function(c){var b=this,a=b.validation;if(!a){b.validation=a=new Ext.data.Validation();a.attach(b)}if(c===!0||c!==!1&&a.syncGeneration!==b.generation){a.refresh(c)}return a},validate:function(){return (new Ext.data.ErrorCollection()).init(this)},isValid:function(){return this.getValidation().isValid()},toUrl:function(){var a=this.$className.split('.'),b=a[a.length-1].toLowerCase();return b+'/'+this.getId()},erase:function(b){var a=this;a.erasing=!0;a.drop();a.erasing=!1;return a.save(b)},setErased:function(){this.erased=!0;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(g,a){var c=this,n=c.associations,i,j,b,m,f,o,e,p,l,d,h,k;g=g||{};c.$gathering=1;if(a){a=Ext.Object.chain(a)}for(l in n){p=n[l];b=p.getAssociatedItem(c);if(!b||b.$gathering){continue}if(b.isStore){b.$gathering=1;m=b.getData().items;o=m.length;f=[];for(j=0;j<o;++j){e=m[j];i=!e.$gathering;e.$gathering=1;if(a){k=a.associated;if(k===undefined){a.associated=i;h=!0}else {if(!i){a.associated=!1;h=!0}}d=a}else {d=i?c._getAssociatedOptions:c._getNotAssociatedOptions}f.push(e.getData(d));if(h){a.associated=k;h=!1}delete e.$gathering}delete b.$gathering}else {d=a||c._getAssociatedOptions;if(a&&a.associated===undefined){d.associated=!0}f=b.getData(d)}g[l]=f}delete c.$gathering;return g},getData:function(m){var a=this,f={},e=m===!0?a._getAssociatedOptions:m||f,h=a.data,n=e.associated,k=e.changes,p=k&&e.critical,l=k?a.modified:h,o=a.fieldsMap,q=e.persist,j=e.serialize,g,b,i,d,c;if(l){for(d in l){c=h[d];b=o[d];if(b){if(q&&!b.persist){continue}if(j&&b.serialize){c=b.serialize(c,a)}}f[d]=c}}if(p){g=a.self.criticalFields||a.getCriticalFields();for(i=g.length;i-->0;){d=(b=g[i]).name;if(!(d in f)){c=h[d];if(j&&b.serialize){c=b.serialize(c,a)}f[d]=c}}}if(n){a.getAssociatedData(f,e)}return f},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(a){a=Ext.apply({},a);var b=this,d=a.scope||b,g=b.getProxy(),f=a.callback,c=b.loadOperation,h=b.getId(),e;if(c){e=c.extraCalls;if(!e){e=c.extraCalls=[]}e.push(a);return c}a.id=h;a.recordCreator=function(e,f,c){var d=b.session;if(c){c.recordCreator=d?d.recordCreator:null}b.set(e,b._commitOptions);return b};a.internalCallback=function(e){var h=e.wasSuccessful()&&e.getRecords().length>0,l=b.loadOperation,i=l.extraCalls,c=[b,e],j=[b,e,h],g,k;b.loadOperation=null;if(h){Ext.callback(a.success,d,c)}else {Ext.callback(a.failure,d,c)}Ext.callback(f,d,j);if(i){for(g=0,k=i.length;g<k;++g){a=i[g];if(h){Ext.callback(a.success,d,c)}else {Ext.callback(a.failure,d,c)}Ext.callback(a.callback,d,j)}}b.callJoined('afterLoad')};delete a.callback;b.loadOperation=c=g.createOperation('read',a);c.execute();return c},save:function(a){a=Ext.apply({},a);var b=this,f=b.phantom,e=b.dropped,h=e?'destroy':f?'create':'update',d=a.scope||b,g=a.callback,i=b.getProxy(),c;a.records=[b];a.internalCallback=function(e){var c=[b,e],f=e.wasSuccessful();if(f){Ext.callback(a.success,d,c)}else {Ext.callback(a.failure,d,c)}c.push(f);Ext.callback(g,d,c)};delete a.callback;c=i.createOperation(h,a);if(e&&f){c.setResultSet(Ext.data.reader.Reader.prototype.nullResultSet);b.setErased();c.setSuccessful(!0)}else {c.execute()}return c},inheritableStatics:{addFields:function(a){this.replaceFields(a)},replaceFields:function(k,i){var c=this,m=c.prototype,n=Ext.data.field.Field,f=c.fields,j=c.fieldsMap,e=c.fieldOrdinals,d,a,g,h,b,l;if(i===!0){f.length=0;c.fieldsMap=j={};c.fieldOrdinals=e={}}else {if(i){for(a=i.length;a-->0;){b=i[a];if(b in e){delete e[b];delete j[b]}}for(a=0,h=f.length;a<h;++a){b=(d=f[a]).name;if(b in e){e[b]=a}else {f.splice(a,1);--a;--h}}}}for(a=0,h=k?k.length:0;a<h;a++){b=(d=k[a]).name;if(!(b in e)){e[b]=l=f.length;f.push(d=n.create(d));j[b]=d;d.ordinal=l;d.definedBy=d.owner=this}}c.idField=m.idField=g=j[m.idProperty];g.allowNull=g.critical=g.identifier=!0;g.defaultValue=null;c.initializeFn=c.rankedFields=c.transientFields=c.criticalFields=null},removeFields:function(a){this.replaceFields(null,a)},getIdFromData:function(b){var c=this,a=c.idField,d=a.calculated?(new c(b)).id:b[a.name];return d},createWithId:function(c,b,e){var a=b,d=this;if(c||c===0){a={};if(b){Ext.apply(a,b)}a[d.idField.name]=c}return new d(a,e)},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(a){var b=this,c;if(a){if(!a.isProxy){a=Ext.Factory.proxy(a)}else {c=a.getModel();if(c&&c!==b){a=a.clone()}}a.setModel(b)}return b.prototype.proxy=b.proxy=a},load:function(e,c,d){var b={},a;b[this.prototype.idProperty]=e;a=new this(b,d);a.load(c);return a}},deprecated:{5:{methods:{hasId:null,markDirty:null,setDirty:null,eachStore:function(c,d){var f=this,b=f.stores,e=b.length,a;for(a=0;a<e;++a){c.call(d,b[a])}},join:function(b){var a=this,d=a.stores,c=a.joined;if(!c){c=a.joined=[b]}else {c.push(b)}if(b.isStore){a.store=a.store||b;if(!d){d=a.stores=[]}d.push(b)}},unjoin:function(b){var c=this,d=c.stores,a=c.joined;if(a.length===1){a.length=0}else {Ext.Array.remove(a,b)}if(b.isStore){Ext.Array.remove(d,b);c.store=d[0]||null}}},properties:{persistenceProperty:null},inheritableStatics:{methods:{setFields:null}}}},privates:{_commitOptions:{commit:!0},_getChangesOptions:{changes:!0},_getAssociatedOptions:{associated:!0},_getNotAssociatedOptions:{associated:!1},copyFrom:function(c){var a=this,i=a.fields,k=i.length,g=[],j,f=0,e,h,l=a.idProperty,b,d;if(c){e=a.data;h=c.data;for(;f<k;f++){j=i[f];b=j.name;if(b!==l){d=h[b];if(d!==undefined&&!a.isEqual(e[b],d)){e[b]=d;g.push(b)}}}if(a.phantom&&!c.phantom){a.beginEdit();a.setId(c.getId());a.endEdit(!0);a.commit(!0)}}return g},callJoined:function(h,a){var f=this,d=f.joined,c=f.session,g,i,b,e;if(!d&&!c){return}if(a){a.unshift(f)}else {a=[f]}if(d){for(g=0,i=d.length;g<i;++g){e=d[g];if(e&&(b=e[h])){b.apply(e,a)}}}b=c&&c[h];if(b){b.apply(c,a)}},setSession:function(a){this.session=a;if(a){a.add(this)}},getModifiedFieldNames:function(f){var c=this,b=c.data,d=[],e=f||c.editMemento.data,a;for(a in b){if(b.hasOwnProperty(a)){if(!c.isEqual(b[a],e[a],a)){d.push(a)}}}return d},isEqual:function(b,c,a){var d;if(a){d=a.isField?a:this.fieldsMap[a];if(d){return d.compare(b,c)===0}}if(b instanceof Date&&c instanceof Date){return b.getTime()===c.getTime()}return b===c},statics:{EDIT:'edit',REJECT:'reject',COMMIT:'commit',rankFields:function(){var d=this,g=d.prototype,h=d.fields,f=h.length,c=[],j=[],i=[],e,a,b;d.rankedFields=g.rankedFields=c;d.criticalFields=g.criticalFields=j;d.transientFields=g.transientFields=i;for(b=0;b<f;++b){a=h[b];if(a.critical){j.push(a)}if(!a.persist){i.push(a)}if(a.evil){(e||(e=[])).push(a)}else {if(!a.depends){c.push(a);a.rank=c.length}}}for(b=0;b<f;++b){if(!(a=h[b]).rank&&!a.evil){d.topoAdd(a)}}if(e){for(b=0,f=e.length;b<f;++b){c.push(a=e[b]);a.rank=c.length}}return c},topoAdd:function(b){var d=this,e=b.depends,g=e?e.length:0,f=d.rankedFields,c,a;for(c=0;c<g;++c){a=d.fieldsMap[e[c]];(a.dependents||(a.dependents=[])).push(b);if(!a.rank){d.topoAdd(a)}}f.push(b);b.rank=f.length},initFields:function(u,g,j){var t=Ext.data.field.Field,q=u.fields,e=[],h={},f={},v=[],r=j.fields,p=u.versionProperty||j.versionProperty,l=g.idProperty,d,a,b,n,k,c,m,i,o,s;g.fields=j.fields=e;g.fieldOrdinals=j.fieldOrdinals=h;g.fieldsMap=j.fieldsMap=f;g.references=j.references=v;if(r){for(b=0,n=r.length;b<n;++b){e[b]=a=Ext.Object.chain(r[b]);a.dependents=null;a.owner=g;h[k=a.name]=b;f[k]=a;a.rank=null;if(a.generated){i=a;o=a.name}}}if(q){delete u.fields;for(b=0,n=q.length;b<n;++b){a=q[b];m=a.reference;if(m&&typeof m!=='string'){m=Ext.merge({},m)}a.$reference=m;a=t.create(q[b]);k=a.name;c=h[k];if(c===undefined){h[k]=c=e.length}f[k]=a;e[c]=a;a.definedBy=a.owner=g;a.ordinal=c;if(k===l){s=a}}}d=f[l];if(!d){if(i&&i.generated){c=i.ordinal}else {c=e.length}delete f[o];delete h[o];d=new t(l);e[c]=d;h[l]=c;f[l]=d;d.definedBy=g;d.ordinal=c;d.generated=!0}else {if(s&&i&&i.generated){Ext.Array.remove(e,i);delete f[o];delete h[o];f[l]=s;for(b=0,n=e.length;b<n;++b){a=e[b];e.ordinal=b;h[a.name]=b}}}d.allowNull=d.critical=d.identifier=!0;d.defaultValue=null;g.idField=j.idField=d;if(p){a=f[p];if(!a){c=e.length;a=new t({name:p,type:'int'});e[c]=a;h[p]=c;f[p]=a;a.definedBy=g;a.ordinal=c;a.generated=!0}a.defaultValue=1;a.critical=!0}},initValidators:function(j,n,m){var i=m.validators,b,e,g,c,h,l,d,a,k,f;if(i){b={};for(e in i){b[e]=Ext.Array.clone(i[e])}}c=j.validators||j.validations;if(c){delete j.validators;b=b||{};if(Ext.isArray(c)){g={};for(h=0,l=c.length;h<l;++h){f=c[h];a=f.field;if(!g[a]){g[a]=[]}f=f.fn||f;g[a].push(f)}c=g}for(a in c){d=c[a];if(!Ext.isArray(d)){d=[d]}k=b[a];if(b[a]){Ext.Array.push(k,d)}else {b[a]=d}}}if(b){for(a in b){e=n.getField(a);if(e){e.setModelValidators(b[a])}}}n.validators=m.validators=b},initAssociations:function(d,b,e){var f=b.associations,g=b.belongsTo,h=b.hasMany,i=b.hasOne,k=b.manyToMany,a,c,j;delete b.manyToMany;if(k){d.addMatrices(e,k)}delete b.associations;delete b.belongsTo;delete b.hasMany;delete b.hasOne;if(f){f=Ext.isArray(f)?f:[f];for(a=0,c=f.length;a<c;++a){j=f[a];switch(j.type){case 'belongsTo':d.addLegacyBelongsTo(e,j);break;case 'hasMany':d.addLegacyHasMany(e,j);break;case 'hasOne':d.addLegacyHasOne(e,j);break;}}}if(g){g=Ext.isArray(g)?g:[g];for(a=0,c=g.length;a<c;++a){d.addLegacyBelongsTo(e,g[a])}}if(h){h=Ext.isArray(h)?h:[h];for(a=0,c=h.length;a<c;++a){d.addLegacyHasMany(e,h[a])}}if(i){i=Ext.isArray(i)?i:[i];for(a=0,c=i.length;a<c;++a){d.addLegacyHasOne(e,i[a])}}d.afterLegacyAssociations(e)},initIdentifier:function(d,e,f){var a=d.identifier||d.idgen,b=f.identifier||e.schema._defaultIdentifier,c;if(a){delete d.identifier;delete d.idgen;a=Ext.Factory.dataIdentifier(a)}else {if(b){if(b.clone&&!b.getId()){a=b.clone()}else {if(b.isGenerator){a=b}else {a=Ext.Factory.dataIdentifier(b)}}}}e.identifier=f.identifier=a;if(!a){c=e.entityName;if(!c){c=Ext.id(null,'extModel')}e.identifier=Ext.Factory.dataIdentifier({type:'sequential',prefix:c+'-'})}},findValidator:function(f,g,d){var h=d.type||d,b=f[g],e,a,c;if(b){for(a=0,e=b.length;a<e;++a){c=b[a];if(c.type===h){return c}}}return null},makeInitializeFn:function(o){var a=['var '],g=['\nreturn function (e) {\n var data = e.data, v;\n'],p=[],n=0,i,j,h,c,l,f,e,d,k,b,m;if(!(e=o.rankedFields)){e=o.rankFields()}for(b=0,m=e.length;b<m;++b){f=e[b];p[b]=d='f'+b;h=f.convert;if(b){a.push(', \n ')}a.push(d,' = $fields['+b+']');if((k=f.defaultValue!==undefined)||h){c='data["'+f.name+'"]';++n;i=j='';if(f.cloneDefaultValue){i='Ext.clone(';j=')'}g.push('\n');if(h&&k){g.push(' v = ',c,';\n if (v !== undefined) {\n v = ',d,'.convert(v, e);\n }\n if (v === undefined) {\n v = ',i,d,'.defaultValue',j,';\n }\n ',c,' = v;')}else {if(h){g.push(' v = ',d,'.convert(',c,',e);\n if (v !== undefined) {\n ',c,' = v;\n }\n')}else {if(k){g.push(' if (',c,' === undefined) {\n ',c,' = ',i,d,'.defaultValue',j,';\n }\n')}}}}}if(!n){return Ext.emptyFn}a.push(';\n');a.push.apply(a,g);a.push('}');a=a.join('');l=new Function('$fields','Ext',a);return l(e,Ext)}}}},1,0,0,0,0,0,[Ext.data,'Model',Ext.data,'Record'],function(){var a=this,b=a.prototype,c=Ext.data.schema.Schema,d;a.proxyConfig=b.proxy;delete b.proxy;a.fields=[];a.fieldsMap=b.fieldsMap={};a.schema=b.schema=c.get(b.schema);b.idField=new Ext.data.field.Field(b.idProperty);a.identifier=new Ext.data.identifier.Sequential();a.onExtended(function(b,e){var f=b.prototype,k=e.schema,j=f.superclass.self,g,h,i;b.idProperty=e.idProperty||f.idProperty;if(k){delete e.schema;g=c.get(k)}else {if(!(g=f.schema)){g=d||(d=c.get('default'))}}b.rankFields=a.rankFields;b.topoAdd=a.topoAdd;f.schema=b.schema=g;if(!(h=e.entityName)){f.entityName=h=g.getEntityName(b)}b.entityName=h;b.fieldExtractors={};a.initIdentifier(e,b,f);a.initFields(e,b,f);a.initValidators(e,b,f);b.fields.items=b.fields;if(h){g.addEntity(b);a.initAssociations(g,e,b)}i=e.proxy;if(i){delete e.proxy}else {if(j!==a){i=j.proxyConfig||j.proxy}}b.proxyConfig=i})});Ext.cmd.derive('Ext.data.ResultSet',Ext.Base,{isResultSet:!0,$configPrefixed:!1,config:{loaded:!0,count:null,total:null,success:!1,records:null,message:null},constructor:function(a){this.initConfig(a)},getCount:function(){var b=(arguments.callee.$previous||Ext.Base.prototype.getCount).call(this),a;if(!b){a=this.getRecords();if(a){b=a.length}}return b}},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:!0,readRecordsOnFailure:!0,model:null,proxy:null,transform:null,keepRawData:!0},isReader:!0,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(!0)}},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:!1,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:!0,msg:a}},readRecords:function(b,l,f){var a=this,m=f&&f.recordsOnly,n=f&&f.asRoot,h,g,d,e,j,c,k,i;i=this.getTransform();if(i){b=i(b)}a.buildExtractors();if(a.getKeepRawData()){a.rawData=b}b=a.getData(b);h=!0;g=0;d=[];if(a.getSuccessProperty()){c=a.getSuccess(b);if(c===!1||c==='false'){h=!1}}if(a.getMessageProperty()){k=a.getMessage(b)}if(h||a.getReadRecordsOnFailure()){e=n||Ext.isArray(b)?b:a.getRoot(b);if(e){j=e.length}if(a.getTotalProperty()){c=parseInt(a.getTotal(b),10);if(!isNaN(c)){j=c}}if(e){d=a.extractData(e,l);g=d.length}}return m?d:new Ext.data.ResultSet({total:j||g,count:g,records:d,success:h,message:k})},extractData:function(f,c){var b=this,h=c&&c.model?Ext.data.schema.Schema.lookupEntity(c.model):b.getModel(),k=h.schema,o=k.hasAssociations(h)&&b.getImplicitIncludes(),n=b.getFieldExtractorInfo(h.fieldExtractors),i=f.length,m=new Array(i),l=b.getTypeProperty(),j,e,d,a,g;if(!i&&Ext.isObject(f)){f=[f];i=1}for(g=0;g<i;g++){a=f[g];if(!a.isModel){e=a;if(l&&(d=b.getChildType(k,e,l))){j=d.getProxy().getReader();a=j.extractRecord(e,c,d,k.hasAssociations(d)&&j.getImplicitIncludes(),j.getFieldExtractorInfo(d.fieldExtractors))}else {a=b.extractRecord(e,c,h,o,n)}if(a.isModel&&a.isNode){a.raw=e}}if(a.onLoad){a.onLoad()}m[g]=a}return m},getChildType:function(d,c,a){var b;switch(typeof a){case 'string':return d.getEntity(c[a]);case 'object':b=a.namespace;return d.getEntity((b?b+'.':'')+c[a.name]);case 'function':return d.getEntity(a(c));}},extractRecordData:function(d,a){var b=a&&a.model?Ext.data.schema.Schema.lookupEntity(a.model):this.getModel(),c=this.getFieldExtractorInfo(b.fieldExtractors);return this.extractRecord(d,a,b,!1,c)},extractRecord:function(e,b,g,i,f){var a=this,h=b&&b.recordCreator||a.defaultRecordCreator,d,c;d=a.extractModelData(e,f);c=h.call(a,d,g||a.getModel(),b);if(i&&c.isModel){a.readAssociated(c,e,b)}return c},getFieldExtractorInfo:function(a){if(!a){return}var c=this.$className,b=a[c];if(b===undefined){a[c]=b=this.buildFieldExtractors()}return b},buildFieldExtractors:function(){var f=this.getFields(),j=f.length,c=[],e=[],i=null,h=0,d,g,a,b;for(a=0;a<j;++a){d=f[a];b=this.createFieldAccessor(d);if(b){g=d.name;c.push('val = extractors['+h+"](raw); if (val !== undefined) { data['"+g+"'] = val; }");e.push(b);++h}}if(c.length){i={extractors:e,fn:new Function('raw','data','extractors','var val;'+c.join(''))}}return i},defaultRecordCreator:function(c,b){var a=new b(c);a.phantom=!1;return a},getModelData:function(a){return {}},extractModelData:function(c,a){var b=this.getModelData(c),d;if(a){d=a.fn;d(c,b,a.extractors)}return b},readAssociated:function(d,f,e){var a=d.associations,c,b;for(c in a){if(a.hasOwnProperty(c)){b=a[c];if(b.cls){b.read(d,f,this,e)}}}},getFields:function(){return this.getModel().fields},getData:Ext.identityFn,getRoot:Ext.identityFn,getResponseData:function(a){},onMetaChange:function(a){var b=this,g=a.fields,e,d,c,f;b.metaData=a;if(a.root){b.setRootProperty(a.root)}if(a.totalProperty){b.setTotalProperty(a.totalProperty)}if(a.successProperty){b.setSuccessProperty(a.successProperty)}if(a.messageProperty){b.setMessageProperty(a.messageProperty)}c=a.clientIdProperty;if(g){d=Ext.define(null,{extend:'Ext.data.Model',fields:g,clientIdProperty:c});b.setModel(d);f=b.getProxy();if(f){f.setModel(d)}}else {if(c){e=b.getModel();if(e){e.self.prototype.clientIdProperty=c}}}},buildExtractors:function(e){var a=this,d,c,b;if(e||!a.hasExtractors){d=a.getTotalProperty();c=a.getSuccessProperty();b=a.getMessageProperty();if(d){a.getTotal=a.getAccessor(d)}if(c){a.getSuccess=a.getAccessor(c)}if(b){a.getMessage=a.getAccessor(b)}a.hasExtractors=!0;return !0}},getAccessor:function(b){var c=this,e=c.extractorCache,a,d;if(typeof b==='string'){d=c.getAccessorKey(b);a=e.get(d);if(!a){a=c.createAccessor(b);e.add(d,a)}}else {a=c.createAccessor(b)}return a},getAccessorKey:function(a){return this.$className+a},createAccessor:Ext.emptyFn,createFieldAccessor:Ext.emptyFn,destroy:function(){var a=this;a.model=a.getTotal=a.getSuccess=a.getMessage=a.rawData=null},privates:{copyFrom:function(b){var a=this;b.buildExtractors();a.getTotal=b.getTotal;a.getSuccess=b.getSuccess;a.getMessage=b.getMessage;++a.duringInit;a.setConfig(b.getConfig());--a.duringInit;a.hasExtractors=!0}}},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(b){var a=b.prototype;Ext.apply(a,{nullResultSet:new Ext.data.ResultSet({total:0,count:0,records:[],success:!0,message:''})});a.extractorCache=new Ext.util.LruCache()});Ext.cmd.derive('Ext.data.writer.Writer',Ext.Base,{factoryConfig:{defaultType:null},alternateClassName:['Ext.data.DataWriter','Ext.data.Writer'],config:{clientIdProperty:null,allDataOptions:{persist:!0},partialDataOptions:{changes:!0,critical:!0},writeAllFields:!1,dateFormat:null,nameProperty:'name',writeRecordId:!0,transform:null},isWriter:!0,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(d){var b=d.getOperation(),c=b.getRecords()||[],f=c.length,e=[],a;for(a=0;a<f;a++){e.push(this.getRecordData(c[a],b))}return this.writeRecords(d,e)},writeRecords:Ext.emptyFn,getRecordData:function(e,p){var d=this,j=d.getNameProperty(),l=j!=='name',h=e.self.idField,b=h[j]||h.name,a=e.id,q=d.getWriteAllFields(),c,k,n,m,i,o,f,g;if(h.serialize){a=h.serialize(a)}if(!q&&p&&p.isDestroyOperation){c={};c[b]=a}else {k=d.getDateFormat();n=e.phantom;m=n||q?d.getAllDataOptions():d.getPartialDataOptions();i=n&&d.getClientIdProperty();o=e.getFieldsMap();m.serialize=!1;f=e.getData(m);c=l?{}:f;if(i){c[i]=a;delete f[b]}else {if(!d.getWriteRecordId()){delete f[b]}}for(b in f){a=f[b];if(!(g=o[b])){if(l){c[b]=a}}else {if(g.isDateField&&k&&Ext.isDate(a)){a=Ext.Date.format(a,k)}else {if(g.serialize){a=g.serialize(a,e)}}if(l){b=g[j]||b}c[b]=a}}}return c}},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:!1,alternateClassName:['Ext.data.DataProxy','Ext.data.Proxy'],config:{batchOrder:'create,update,destroy',batchActions:!0,model:undefined,reader:{type:'json'},writer:{type:'json'}},isProxy:!0,isSynchronous:!1,constructor:function(a){this.mixins.observable.constructor.call(this,a);this.pendingOperations={}},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(a,l){var c=this,m=c.getBatchActions(),b,d,h,j,e,f,g,k,i;if(a.operations===undefined){a={operations:a,listeners:l}}if(a.batch){if(Ext.isDefined(a.batch.runOperation)){b=Ext.applyIf(a.batch,{proxy:c,listeners:{}})}}else {a.batch={proxy:c,listeners:a.listeners||{}}}if(!b){b=new Ext.data.Batch(a.batch)}b.on('complete',Ext.bind(c.onBatchComplete,c,[a],0));h=c.getBatchOrder().split(',');j=h.length;for(f=0;f<j;f++){e=h[f];d=a.operations[e];if(d){if(m){b.add(c.createOperation(e,{records:d,params:a.params}))}else {k=d.length;for(g=0;g<k;g++){i=d[g];b.add(c.createOperation(e,{records:[i],params:a.params}))}}}}b.start();return b},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(b,c){var a=Ext.createByAlias('data.operation.'+b,c);a.setProxy(this);this.pendingOperations[a._internalId]=a;return a},completeOperation:function(a){delete this.pendingOperations[a._internalId]},clone:function(){return new this.self(this.getInitialConfig())},destroy:function(){var c=this.pendingOperations,b,a;for(b in c){a=c[b];if(a&&a.isRunning()){a.abort()}}this.pendingOperations=null}},1,0,0,0,['proxy.proxy'],[[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable],[Ext.mixin.Observable.prototype.mixinId||Ext.mixin.Observable.$className,Ext.mixin.Observable]],[Ext.data.proxy,'Proxy',Ext.data,'DataProxy',Ext.data,'Proxy'],0);Ext.cmd.derive('Ext.data.proxy.Client',Ext.data.proxy.Proxy,{alternateClassName:'Ext.data.ClientProxy',isSynchronous:!0,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:!0,config:{enablePaging:!1,data:{$value:null,merge:function(a,b,d,c){if(Ext.isArray(a)){return Ext.Array.clone(a)}else {return Ext.clone(a)}}}},finishOperation:function(b){var a=0,c=b.getRecords(),d=c.length;for(a;a<d;a++){c[a].commit()}b.setSuccessful(!0)},create:function(a){this.finishOperation(a)},update:function(a){this.finishOperation(a)},erase:function(a){this.finishOperation(a)},read:function(b){var g=this,a=g.getReader().read(g.getData()),d=a.getRecords(),c=b.getSorters(),h=b.getGrouper(),f=b.getFilters(),e=b.getStart(),i=b.getLimit();if(b.process(a,null,null,!1)!==!1){if(f&&f.length){a.setRecords(d=Ext.Array.filter(d,Ext.util.Filter.createFilterFn(f)));a.setTotal(d.length)}if(h){c=c?c.concat(h):c}if(c&&c.length){a.setRecords(d=Ext.Array.sort(d,Ext.util.Sortable.createComparator(c)))}if(g.getEnablePaging()&&e!==undefined&&i!==undefined){if(e>=a.getTotal()){a.setConfig({success:!1,records:[],total:0})}else {a.setRecords(Ext.Array.slice(d,e,e+i))}}b.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:!1,batchUpdateMode:'operation',sortOnLoad:!0,trackRemoved:!0,autoLoadDelay:1},onClassExtended:function(e,d,b){var c=d.model,a;if(typeof c==='string'){a=b.onBeforeCreated;b.onBeforeCreated=function(){var g=this,f=arguments;Ext.require(c,function(){a.apply(g,f)})}}},implicitModel:!1,blockLoadCounter:0,loadsWhileBlocked:0,autoSyncSuspended:0,constructor:function(b){var a=this;a.removed=[];a.blockLoad();Ext.data.AbstractStore.prototype.constructor.apply(this,arguments);a.unblockLoad()},updateAutoLoad:function(b){var a=this,c;a.getData();if(b){c=a.loadTask||(a.loadTask=new Ext.util.DelayedTask(null,null,null,null,!1));c.delay(a.autoLoadDelay,a.attemptLoad,a,Ext.isObject(b)?[b]:undefined)}},getTotalCount:function(){return this.totalCount||0},applyFields:function(c){var b=this,d,a;if(c){b.implicitModel=!0;b.setModel(d=Ext.define(null,{extend:'Ext.data.Model',fields:c,proxy:a=b.getProxy()}));if(a&&!a.getModel()){a.setModel(d)}}},applyModel:function(a){if(a){a=Ext.data.schema.Schema.lookupEntity(a)}else {this.getFields();a=this.getModel()}return a},applyProxy:function(a){var b=this.getModel();if(a!==null){if(a){if(a.isProxy){a.setModel(b)}else {if(Ext.isString(a)){a={type:a,model:b}}else {if(!a.model){a=Ext.apply({model:b},a)}}a=Ext.createByAlias('proxy.'+a.type,a);a.autoCreated=!0}}else {if(b){a=b.getProxy()}}if(!a){a=Ext.createByAlias('proxy.memory');a.autoCreated=!0}}return a},applyState:function(c){var a=this,b=a.getAutoLoad()||a.isLoaded();a.blockLoad();Ext.data.AbstractStore.prototype.applyState.call(this,c);a.unblockLoad(b)},updateProxy:function(b,a){this.proxyListeners=Ext.destroy(this.proxyListeners)},updateTrackRemoved:function(a){this.cleanRemoved();this.removed=a?[]:null},onMetaChange:function(b,a){this.fireEvent('metachange',this,a)},create:function(f,a){var b=this,e=b.getModel(),d=new e(f),c;a=Ext.apply({},a);if(!a.records){a.records=[d]}a.internalScope=b;a.internalCallback=b.onProxyWrite;c=b.createOperation('create',a);return c.execute()},read:function(){return this.load.apply(this,arguments)},update:function(a){var b=this,c;a=Ext.apply({},a);if(!a.records){a.records=b.getUpdatedRecords()}a.internalScope=b;a.internalCallback=b.onProxyWrite;c=b.createOperation('update',a);return c.execute()},onProxyWrite:function(a){var b=this,c=a.wasSuccessful(),d=a.getRecords();switch(a.getAction()){case 'create':b.onCreateRecords(d,a,c);break;case 'update':b.onUpdateRecords(d,a,c);break;case 'destroy':b.onDestroyRecords(d,a,c);break;}if(c){b.fireEvent('write',b,a);b.fireEvent('datachanged',b)}},onCreateRecords:Ext.emptyFn,onUpdateRecords:Ext.emptyFn,onDestroyRecords:function(c,b,a){if(a){this.cleanRemoved()}},erase:function(a){var b=this,c;a=Ext.apply({},a);if(!a.records){a.records=b.getRemovedRecords()}a.internalScope=b;a.internalCallback=b.onProxyWrite;c=b.createOperation('destroy',a);return c.execute()},onBatchOperationComplete:function(b,a){return this.onProxyWrite(a)},onBatchComplete:function(e,f){var a=this,c=e.operations,d=c.length,b;if(a.batchUpdateMode!=='operation'){a.suspendEvents();for(b=0;b<d;b++){a.onProxyWrite(c[b])}a.resumeEvents()}a.isSyncing=!1;a.fireEvent('datachanged',a)},onBatchException:function(b,a){},filterNew:function(a){return a.phantom===!0&&a.isValid()},getNewRecords:function(){return []},getUpdatedRecords:function(){return []},getModifiedRecords:function(){return [].concat(this.getNewRecords(),this.getUpdatedRecords())},filterUpdated:function(a){return a.dirty===!0&&a.phantom!==!0&&a.isValid()},getRemovedRecords:function(){return this.removed},sync:function(d){var a=this,b={},f=a.getNewRecords(),g=a.getUpdatedRecords(),e=a.getRemovedRecords(),c=!1;a.needsSync=!1;if(f.length>0){b.create=f;c=!0}if(g.length>0){b.update=g;c=!0}if(e.length>0){b.destroy=e;c=!0}if(c&&a.fireEvent('beforesync',b)!==!1){a.isSyncing=!0;d=d||{};a.proxy.batch(Ext.apply(d,{operations:b,listeners:a.getBatchListeners()}))}return a},getBatchListeners:function(){var a=this,b={scope:a,exception:a.onBatchException,complete:a.onBatchComplete};if(a.batchUpdateMode==='operation'){b.operationcomplete=a.onBatchOperationComplete}return b},save:function(){return this.sync.apply(this,arguments)},load:function(e){if(this.isLoadBlocked()){return}var a=this,b={internalScope:a,internalCallback:a.onProxyLoad},c,d;if(a.getRemoteFilter()){c=a.getFilters(!1);if(c&&c.getCount()){b.filters=c.getRange()}}if(a.getRemoteSort()){d=a.getSorters(!1);if(d&&d.getCount()){b.sorters=d.getRange()}a.fireEvent('beforesort',a,b.sorters)}Ext.apply(b,e);b.scope=b.scope||a;a.lastOptions=b;b=a.createOperation('read',b);if(a.fireEvent('beforeload',a,b)!==!1){a.onBeforeLoad(b);a.loading=!0;a.clearLoadTask();b.execute()}return a},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(b){var a=this;if(a.contains(b)){a.onUpdate(b,Ext.data.Model.REJECT,null);a.fireEvent('update',a,b,Ext.data.Model.REJECT,null)}},afterCommit:function(c,a){var b=this;if(!a){a=null}if(b.contains(c)){b.onUpdate(c,Ext.data.Model.COMMIT,a);b.fireEvent('update',b,c,Ext.data.Model.COMMIT,a)}},afterErase:function(a){this.onErase(a)},onErase:Ext.emptyFn,onUpdate:Ext.emptyFn,onDestroy:function(){var a=this,b=a.getProxy();a.blockLoad();a.clearData();a.setProxy(null);if(b.autoCreated){b.destroy()}a.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}},cleanRemoved:function(){var a=this.removed,c,b;if(a){for(b=0,c=a.length;b<c;++b){a[b].unjoin(this)}a.length=0}},createOperation:function(e,d){var a=this,c=a.getProxy(),b;if(!a.proxyListeners){b={scope:a,destroyable:!0,beginprocessresponse:a.beginUpdate,endprocessresponse:a.endUpdate};if(!a.disableMetaChangeEvent){b.metachange=a.onMetaChange}a.proxyListeners=c.on(b)}return c.createOperation(e,d)},isLoadBlocked:function(){return !!this.blockLoadCounter},loadsSynchronously:function(){return this.getProxy().isSynchronous},onBeforeLoad:Ext.privateFn,removeFromRemoved:function(b){var a=this.removed;if(a){Ext.Array.remove(a,b);b.unjoin(this)}},unblockLoad:function(c){var a=this,b=a.loadsWhileBlocked;--a.blockLoadCounter;if(!a.blockLoadCounter){a.loadsWhileBlocked=0;if(c&&b){a.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 b,c=this.getData();c.setExtraKeys(a);a=c.getExtraKeys();for(b in a){this[b]=a[b]}},add:function(a){return this.insert(this.getCount(),arguments.length===1?a:arguments)},constructDataCollection:function(){return new Ext.util.Collection({rootProperty:'data'})},createModel:function(a){var c=this.getSession(),b;if(!a.isModel){b=this.getModel();a=new b(a,c)}return a},createFiltersCollection:function(){return this.getData().getFilters()},createSortersCollection:function(){var a=this.getData().getSorters();a.setSorterConfigure(this.addFieldTransform,this);return a},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(f,e){var c=this.data.items,d=c.length,b,a;for(a=0;a<d;++a){b=c[a];if(f.call(e||b,b,a,d)===!1){break}}},collect:function(d,c,b){var e=this,a=e.getData();if(b===!0&&a.filtered){a=a.getSource()}return a.collect(d,'data',c)},getById:function(b){var a=this.getData();if(a.filtered){a=a.getSource()}return a.get(b)||null},getByInternalId:function(c){var a=this.getData(),b;if(!this.hasInternalKeys){b={byInternalId:{property:'internalId',rootProperty:''}};this.hasInternalKeys=!0}if(a.filtered){if(b){a.setExtraKeys(b)}a=a.getSource()}if(b){a.setExtraKeys(b)}return a.byInternalId.get(c)||null},indexOf:function(a){return this.getData().indexOf(a)},indexOfId:function(a){return this.indexOf(this.getById(a))},insert:function(e,a){var d=this,c,b;if(a){if(!Ext.isIterable(a)){a=[a]}else {a=Ext.Array.clone(a)}c=a.length}if(!c){return []}for(b=0;b<c;++b){a[b]=d.createModel(a[b])}d.getData().insert(e,a);return a},queryBy:function(c,b){var a=this.getData();return (a.getSource()||a).createFiltered(c,b)},query:function(e,f,d,b,c){var a=this.getData();return (a.getSource()||a).createFiltered(e,f,d,b,c)},first:function(a){return this.getData().first(a)||null},last:function(a){return this.getData().last(a)||null},sum:function(a,c){var b=this.getData();return c&&this.isGrouped()?b.sumByGroup(a):b.sum(a)},count:function(b){var a=this.getData();return b&&this.isGrouped()?a.countByGroup():a.count()},min:function(a,c){var b=this.getData();return c&&this.isGrouped()?b.minByGroup(a):b.min(a)},max:function(a,c){var b=this.getData();return c&&this.isGrouped()?b.maxByGroup(a):b.max(a)},average:function(a,c){var b=this.getData();return c&&this.isGrouped()?b.averageByGroup(a):b.average(a)},aggregate:function(i,g,j,f){var a=this,c,h,e,d,b;if(j&&a.isGrouped()){c=a.getGroups().items;h=c.length;e={};for(b=0;b<h;++b){d=c[b];e[d.getGroupKey()]=a.getAggregate(i,g||a,d.items,f)}return e}else {return a.getAggregate(i,g,a.getData().items,f)}},getAggregate:function(g,e,b,d){var c=[],f=b.length,a;for(a=0;a<f;++a){c[a]=b[a].get(d)}return g.call(e||this,b,c)},addObserver:function(b){var a=this.observers;if(!a){this.observers=a=new Ext.util.Collection()}a.add(b)},removeObserver:function(b){var a=this.observers;if(a){a.remove(b)}},callObservers:function(h,a){var f=this.observers,g,e,c,d,b;if(f){e=f.items;if(a){a.unshift(this)}else {a=[this]}for(c=0,g=e.length;c<g;++c){b=e[c];d='onSource'+h;if(b[d]){b[d].apply(b,a)}}}},queryRecordsBy:function(g,d){var a=this.getData(),e=[],f,b,c;a=(a.getSource()||a).items;d=d||this;for(b=0,f=a.length;b<f;++b){c=a[b];if(g.call(d,c)===!0){e.push(c)}}return e},queryRecords:function(f,g){var a=this.getData(),d=[],e,b,c;a=(a.getSource()||a).items;for(b=0,e=a.length;b<e;++b){c=a[b];if(c.get(f)===g){d.push(c)}}return d},privates:{isLast:function(a){return a===this.last()}}},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:!0,config:{url:'',pageParam:'page',startParam:'start',limitParam:'limit',groupParam:'group',groupDirectionParam:'groupDir',sortParam:'sort',filterParam:'filter',directionParam:'dir',idParam:'id',simpleSortMode:!1,simpleGroupMode:!1,noCache:!0,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(b,a){this.getExtraParams()[b]=a},buildRequest:function(a){var c=this,g=Ext.apply({},a.getParams()),d=Ext.applyIf(g,c.getExtraParams()||{}),b,e,f;Ext.applyIf(d,c.getParams(a));e=a.getId();f=c.getIdParam();if(e!==undefined&&d[f]===undefined){d[f]=e}b=new Ext.data.Request({params:d,action:a.getAction(),records:a.getRecords(),url:a.getUrl(),operation:a,proxy:c});b.setUrl(c.buildUrl(b));a.setRequest(b);return b},processResponse:function(h,b,g,c){var a=this,d,f,e;a.fireEvent('beginprocessresponse',a,c,b);if(h===!0){f=a.getReader();if(c.status===204){e=f.getNullResultSet()}else {e=f.read(a.extractResponseData(c),{recordCreator:b.getRecordCreator()})}b.process(e,g,c);d=!b.wasSuccessful()}else {a.setException(b,c);d=!0}if(d){a.fireEvent('exception',a,c,b)}a.afterRequest(g,h);a.fireEvent('endprocessresponse',a,c,b)},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(c,d){var b=[],e=c.length,a;for(a=0;a<e;a++){b[a]=c[a].serialize()}return this.applyEncoding(d?b[0]:b)},encodeFilters:function(b){var c=[],d=b.length,a,e;for(a=0;a<d;a++){c[a]=b[a].serialize()}return this.applyEncoding(c)},getParams:function(c){if(!c.isReadOperation){return {}}var a=this,b={},e=c.getGrouper(),d=c.getSorters(),j=c.getFilters(),q=c.getPage(),k=c.getStart(),p=c.getLimit(),u=a.getSimpleSortMode(),s=a.getSimpleGroupMode(),o=a.getPageParam(),n=a.getStartParam(),m=a.getLimitParam(),g=a.getGroupParam(),r=a.getGroupDirectionParam(),i=a.getSortParam(),l=a.getFilterParam(),t=a.getDirectionParam(),h,f;if(o&&q){b[o]=q}if(n&&(k||k===0)){b[n]=k}if(m&&p){b[m]=p}h=g&&e;if(h){if(s){b[g]=e.getProperty();b[r]=e.getDirection()}else {b[g]=a.encodeSorters([e],!0)}}if(i&&d&&d.length>0){if(u){f=0;if(d.length>1&&h){f=1}b[i]=d[f].getProperty();b[t]=d[f].getDirection()}else {b[i]=a.encodeSorters(d)}}if(l&&j&&j.length>0){b[l]=a.encodeFilters(j)}return b},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(a){var b;if(a){b=a.getUrl()||this.getApi()[a.getAction()]}return b?b:(arguments.callee.$previous||Ext.data.proxy.Proxy.prototype.getUrl).call(this)},doRequest:function(a){},afterRequest:Ext.emptyFn,destroy:function(){Ext.data.proxy.Proxy.prototype.destroy.call(this);Ext.destroy(this.getReader(),this.getWriter());this.reader=this.writer=null}},0,0,0,0,['proxy.server'],0,[Ext.data.proxy,'Server',Ext.data,'ServerProxy'],0);Ext.cmd.derive('Ext.data.proxy.Ajax',Ext.data.proxy.Server,{alternateClassName:['Ext.data.HttpProxy','Ext.data.AjaxProxy'],defaultActionMethods:{create:'POST',read:'GET',update:'POST',destroy:'POST'},config:{binary:!1,headers:undefined,paramsAsJson:!1,withCredentials:!1,useDefaultXhrHeader:!0,username:null,password:null,actionMethods:{create:'POST',read:'GET',update:'POST',destroy:'POST'}},doRequest:function(e){var a=this,g=a.getWriter(),b=a.buildRequest(e),f=a.getMethod(b),c,d;if(g&&e.allowWrite()){b=g.write(b)}b.setConfig({binary:a.getBinary(),headers:a.getHeaders(),timeout:a.getTimeout(),scope:a,callback:a.createRequestCallback(b,e),method:f,useDefaultXhrHeader:a.getUseDefaultXhrHeader(),disableCaching:!1});if(f.toUpperCase()!=='GET'&&a.getParamsAsJson()){d=b.getParams();if(d){c=b.getJsonData();if(c){c=Ext.Object.merge({},c,d)}else {c=d}b.setJsonData(c);b.setParams(undefined)}}if(a.getWithCredentials()){b.setWithCredentials(!0);b.setUsername(a.getUsername());b.setPassword(a.getPassword())}return a.sendRequest(b)},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(d){var a=this.getActionMethods(),b=d.getAction(),c;if(a){c=a[b]}return c||this.defaultActionMethods[b]},createRequestCallback:function(b,c){var a=this;return function(f,e,d){if(b===a.lastRequest){a.lastRequest=null}a.processResponse(e,c,b,d)}},destroy:function(){this.lastRequest=null;Ext.data.proxy.Server.prototype.destroy.call(this)}},0,0,0,0,['proxy.ajax'],0,[Ext.data.proxy,'Ajax',Ext.data,'HttpProxy',Ext.data,'AjaxProxy'],0);Ext.cmd.derive('Ext.data.reader.Json',Ext.data.reader.Reader,{alternateClassName:'Ext.data.JsonReader',config:{record:null,metaProperty:'metaData',useSimpleAccessors:!1,preserveRawData:!1},updateRootProperty:function(){this.forceBuildExtractors()},updateMetaProperty:function(){this.forceBuildExtractors()},readRecords:function(a,e,d){var b=this,c;if(b.getMeta){c=b.getMeta(a);if(c){b.onMetaChange(c)}}else {if(a.metaData){b.onMetaChange(a.metaData)}}return Ext.data.reader.Reader.prototype.readRecords.call(this,a,e,d)},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 a=this,b,c;if(Ext.data.reader.Reader.prototype.buildExtractors.apply(this,arguments)){b=a.getMetaProperty();c=a.getRootProperty();if(c){a.getRoot=a.getAccessor(c)}else {a.getRoot=Ext.identityFn}if(b){a.getMeta=a.getAccessor(b)}}},extractData:function(a,f){var e=this.getRecord(),d=[],c,b;if(e){c=a.length;if(!c&&Ext.isObject(a)){c=1;a=[a]}for(b=0;b<c;b++){d[b]=a[b][e]}}else {d=a}return Ext.data.reader.Reader.prototype.extractData.call(this,d,f)},getModelData:function(a){return this.getPreserveRawData()?Ext.apply({},a):a},createAccessor:function(){var a=/[\[\.]/;return function(c){var r=this,o=r.getUseSimpleAccessors(),n,f,j,m,b,e,p,l,g,k,d,h,i,q;if(!(c||c===0)){return}if(typeof c==='function'){return c}if(!o){n=String(c).search(a)}if(o===!0||n<0){f=function(a){return a[c]}}else {j='raw';m=[];b='';e=0;q=c.length;for(h=0;h<=q;++h){d=c[h];p=d==='.';l=d==='[';g=d===']';k=p||l||g||!d;if(!k||e>1||e&&!g){b+=d}else {if(k){i=!1;if(l){++e}else {if(g){--e;i=!0}}if(b){if(i){b='['+b+']'}else {b='.'+b}j+=b;m.push(''+j);b=''}}}}f=m.join(' && ');f=Ext.functionFactory('raw','return '+f)}return f}}(),createFieldAccessor:function(b){var e=this,a=b.mapping,c=a||a===0,d=c?a:b.name;if(c){if(typeof d==='function'){return function(a){return b.mapping(a,e)}}else {return e.createAccessor(d)}}},getAccessorKey:function(b){var a=this.getUseSimpleAccessors()?'simple':'';return this.$className+a+b},privates:{copyFrom:function(a){Ext.data.reader.Reader.prototype.copyFrom.call(this,a);this.getRoot=a.getRoot}}},0,0,0,0,['reader.json'],0,[Ext.data.reader,'Json',Ext.data,'JsonReader'],0);Ext.cmd.derive('Ext.data.writer.Json',Ext.data.writer.Writer,{alternateClassName:'Ext.data.JsonWriter',config:{rootProperty:undefined,encode:!1,allowSingle:!0,expandData:!1},getExpandedData:function(f){var h=f.length,g=0,a,c,b,d,e,i=function(c,b){var a={};a[c]=b;return a};for(;g<h;g++){a=f[g];for(c in a){if(a.hasOwnProperty(c)){b=c.split('.');d=b.length-1;if(d>0){e=a[c];for(;d>0;d--){e=i(b[d],e)}a[b[0]]=a[b[0]]||{};Ext.Object.merge(a[b[0]],e);delete a[c]}}}}return f},writeRecords:function(b,a){var c=this,e=c.getRootProperty(),d,g,f;if(c.getExpandData()){a=c.getExpandedData(a)}if(c.getAllowSingle()&&a.length===1){a=a[0];g=!0}f=this.getTransform();if(f){a=f(a,b)}if(c.getEncode()){if(e){b.setParam(e,Ext.encode(a))}else {}}else {if(g||a&&a.length){d=b.getJsonData()||{};if(e){d[e]=a}else {d=a}b.setJsonData(d)}}return b}},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:!0,$sortable:null,sortFn:null,config:{sorterOptionsFn:null,sorterOptionsScope:null},constructor:function(b){var a=this;a.sortFn=Ext.util.Sorter.createComparator(a);Ext.util.Collection.prototype.constructor.call(this,b);a.setDecoder(a.decodeSorter)},addSort:function(b,c,d){var a=this,f,j,k,g,h,i,e;if(!b){a.beginUpdate();a.endUpdate()}else {g=a.getOptions();if(b instanceof Array){e=b;d=c;c=null}else {if(Ext.isString(b)){if(!(i=a.get(b))){e=[{property:b,direction:c||g.getDefaultSortDirection()}]}else {e=[i]}}else {if(Ext.isFunction(b)){e=[{sorterFn:b,direction:c||g.getDefaultSortDirection()}]}else {e=[b];d=c;c=null}}}d=a._sortModes[d||'replace'];h=a.getAt(0);f=a.length;j=d.append?f:0;a.beginUpdate();a.splice(j,d.replace?f:0,e);if(d.multi){f=a.length;k=g.getMultiSortLimit();if(f>k){a.removeAt(k,f)}}if(i&&c){i.setDirection(c)}else {if(j===0&&h&&h===a.getAt(0)){h.toggle()}}a.endUpdate()}},getSortFn:function(){return this.sortFn},getByProperty:function(d){var c=this.items,e=c.length,a,b;for(a=0;a<e;++a){b=c[a];if(b.getProperty()===d){return b}}return null},_sortModes:{append:{append:1},multi:{multi:1},prepend:{prepend:1},replace:{replace:1}},decodeSorter:function(a,i){var c=this,g=c.getOptions(),h=g.getRootProperty(),f=c.getSorterOptionsFn(),d,b,e;if(a.isSorter){if(!a.getRoot()){a.setRoot(h)}}else {b={direction:g.getDefaultSortDirection(),root:h};e=typeof a;if(e==='string'){d=c.get(a);if(d){return d}b.property=a}else {if(e==='function'){b.sorterFn=a}else {b=Ext.apply(b,a);if(b.fn){b.sorterFn=b.fn;delete b.fn}}}a=Ext.create(i||'Ext.util.Sorter',b)}if(f){f.call(c.getSorterOptionsScope()||c,a)}return a},setSorterConfigure:function(b,a){this.setSorterOptionsFn(b);this.setSorterOptionsScope(a)},decodeRemoveItems:function(e,d){var k=this,b=d===undefined?e:e[d];if(!b||!b.$cloned){if(e.length>d+1||!Ext.isIterable(b)){b=Ext.Array.slice(e,d)}var j=k.items,l=b.length,c=[],f,g,i,a,h;for(f=0;f<l;f++){a=b[f];if(a&&a.isSorter){c.push(a)}else {h=typeof a;if(h==='string'){a=k.get(a);if(a){c.push(a)}}else {if(h==='function'){for(i=j.length;i-->0;){g=j[i];if(g.getSorterFn()===a){c.push(g)}}}}}}b=c;b.$cloned=!0}return b},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:!0,$filterable:null,filterFn:null,constructor:function(b){var a=this;a.filterFn=Ext.util.Filter.createFilterFn(a);Ext.util.Collection.prototype.constructor.call(this,b);a.setDecoder(a.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(b){var d=this.getOptions(),c=d.getRootProperty(),a;if(b.isFilter){if(!b.getRoot()){b.setRoot(c)}}else {a={root:c};if(Ext.isFunction(b)){a.filterFn=b}else {a=Ext.apply(a,b);if(a.fn){a.filterFn=a.fn;delete a.fn}if(Ext.util.Filter.isInvalid(a)){return !1}}b=new Ext.util.Filter(a)}return b},decodeRemoveItems:function(f,e){var p=this,b=e===undefined?f:f[e];if(!b.$cloned){if(f.length>e+1||!Ext.isIterable(b)){b=Ext.Array.slice(f,e)}var k=p.items,o=b.length,h=[],a,g,l,n,m,c,d,j,i;for(g=0;g<o;g++){a=b[g];if(a&&a.isFilter){h.push(a)}else {i=typeof a;l=i==='function';n=a.property!==undefined&&a.value!==undefined;m=i==='string';for(j=k.length;j-->0;){c=k[j];d=!1;if(m){d=c.getProperty()===a}else {if(l){d=c.getFilterFn()===a}else {if(n){d=c.getProperty()===a.property&&c.getValue()===a.value}}}if(d){h.push(c)}}}}b=h;b.$cloned=!0}return b},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:!0,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(b,a){var c=a.item;if(!a.indexChanged){this.syncItemGrouping(b,c,b.getKey(c),a.oldKey,a.oldIndex)}this.changeDetails=null},onCollectionRefresh:function(a){this.removeAll();this.addItemsToGroups(a,a.items)},onCollectionRemove:function(k,j){var d=this,g=d.changeDetails,b,h,a,e,i,c,f;if(g){f=g.item;a=d.findGroupForItem(f);b=[];if(a){b.push({group:a,items:[f]})}}else {b=d.groupItems(k,j.items,!1)}for(e=0,i=b.length;e<i;++e){a=(h=b[e]).group;if(a){a.remove(h.items);if(!a.length){(c||(c=[])).push(a)}}}if(c){d.remove(c)}},onCollectionSort:function(g){var f=this,b=g.getSorters(!1),e,d,a,c;if(b){e=f.items;d=f.length;for(a=0;a<d;++a){c=e[a];if(c.getSorters()!==b){c.setSorters(b)}}}},onCollectionUpdateKey:function(b,a){var c=a.index,d=a.item;if(!a.indexChanged){c=b.indexOf(d);this.syncItemGrouping(b,d,a.newKey,a.oldKey,c)}},addItemsToGroups:function(a,b){this.groupItems(a,b,!0)},groupItems:function(j,o,n){var d=this,m={},g=[],p=j.getGrouper(),e=d.itemGroupKeys,c,k,b,a,l,i,h,f;for(a=0,h=o.length;a<h;++a){b=p.getGroupString(l=o[a]);i=j.getKey(l);if(n){(e||(d.itemGroupKeys=e={}))[i]=b}else {if(e){delete e[i]}}if(!(c=m[b])){if(!(k=d.getByKey(b))&&n){(f||(f=[])).push(k=d.createGroup(j,b))}g.push(m[b]=c={group:k,items:[]})}c.items.push(l)}for(a=0,h=g.length;a<h;++a){c=g[a];c.group.add(c.items)}if(f){d.add(f)}return g},syncItemGrouping:function(i,d,m,n,o){var b=this,f=b.itemGroupKeys||(b.itemGroupKeys={}),p=i.getGrouper(),h=p.getGroupString(d),g=0,j=-1,l,a,e,c,k;if(n){c=f[n];delete f[n]}else {c=f[m]}f[m]=h;if(!(a=b.get(h))){a=b.createGroup(i,h);l=[a]}if(a.get(m)!==d){if(a.getCount()>0&&i.getSorters().getCount()===0){k=i.indexOf(a.items[0]);if(o<k){j=0}else {j=o-k}}if(j===-1){a.add(d)}else {a.insert(j,d)}}else {a.itemChanged(d)}if(h!==c&&(c===0||c)){e=b.get(c);if(e){e.remove(d);if(!e.length){g=[e]}}}if(l){b.splice(0,g,l)}else {if(g){b.splice(0,g)}}},createGroup:function(a,c){var b=new Ext.util.Group({groupKey:c,rootProperty:this.getItemRoot(),sorters:a.getSorters()});return b},getKey:function(a){return a.getGroupKey()},createSortFn:function(){var c=this,b=c.getGrouper(),a=c.getSorters().getSortFn();if(!b){return a}return function(c,d){return b.sort(c.items[0],d.items[0])||a(c,d)}},updateGrouper:function(b){var a=this;a.grouped=!!(b&&a.$groupable.getAutoGroup());a.onSorterChange();a.onEndUpdateSorters(a.getSorters())},destroy:function(){this.$groupable=null;Ext.util.Collection.prototype.destroy.call(this)},privates:{findGroupForItem:function(d){var c=this.items,e=c.length,a,b;for(a=0;a<e;++a){b=c[a];if(b.contains(d)){return b}}}}},0,0,0,0,0,0,[Ext.util,'GroupCollection'],0);Ext.cmd.derive('Ext.data.Store',Ext.data.ProxyStore,{config:{data:0,clearRemovedOnLoad:!0,clearOnPageLoad:!0,associatedEntity:null,role:null,session:null},addRecordsOptions:{addRecords:!0},loadCount:0,complete:!1,moveMapCount:0,constructor:function(b){var a=this,c;if(b){if(b.buffered){return new Ext.data.BufferedStore(b)}}Ext.data.ProxyStore.prototype.constructor.call(this,b);a.getData().addObserver(a);c=a.inlineData;if(c){delete a.inlineData;a.loadInlineData(c)}},onCollectionBeginUpdate:function(){this.beginUpdate()},onCollectionEndUpdate:function(){this.endUpdate()},applyData:function(a,c){var b=this;b.getFields();b.getModel();if(a&&a.isCollection){c=a}else {if(!c){c=b.constructDataCollection()}if(a){if(b.isInitializing){b.inlineData=a}else {b.loadData(a)}}}return c},loadInlineData:function(d){var a=this,b=a.getProxy(),c;if(b&&b.isMemoryProxy){b.setData(d);c=a.blockLoadCounter;a.blockLoadCounter=0;a.suspendEvents();a.read();a.resumeEvents();a.blockLoadCounter=c}else {a.removeAll(!0);a.suspendEvents();a.loadData(d);a.resumeEvents()}},onCollectionAdd:function(b,a){this.onCollectionAddItems(b,a.items,a)},onCollectionFilterAdd:function(a,b){this.onCollectionAddItems(a,b)},onCollectionAddItems:function(n,g,c){var a=this,m=g.length,l=c?!c.next:!1,h=a.getRemovedRecords(),j=a.ignoreCollectionAdd,k=a.getSession(),e=c&&c.replaced,f,i,b,d;for(f=0;f<m;++f){b=g[f];if(k){k.adopt(b)}if(!j){b.join(a);if(h&&h.length){Ext.Array.remove(h,b)}i=i||b.phantom||b.dirty}}if(j){return}if(e){d=[];do{Ext.Array.push(d,e.items);e=e.next}while(e);a.setMoving(d,!0)}if(c){a.fireEvent('add',a,g,c.at);if(l){a.fireEvent('datachanged',a)}}if(d){a.setMoving(d,!1)}a.needsSync=a.needsSync||i},onCollectionFilteredItemChange:function(){this.onCollectionItemChange.apply(this,arguments)},onCollectionItemChange:function(f,a){var b=this,c=a.item,d=a.modified||null,e=a.meta;if(b.fireChangeEvent(c)){b.onUpdate(c,e,d,a);b.fireEvent('update',b,c,e,d,a)}},fireChangeEvent:function(b){var a=this.getData();a=a.getSource()||a;return a.contains(b)},afterChange:function(b,a,c){this.getData().itemChanged(b,a||null,undefined,c)},afterCommit:function(b,a){this.afterChange(b,a,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)},afterErase:function(a){this.removeFromRemoved(a)},addSorted:function(c){var a=this,d=a.getRemoteSort(),b=a.getData(),e;if(d){b.setSorters(a.getSorters())}e=b.findInsertionIndex(c);if(d){b.setSorters(null)}return a.insert(e,c)},remove:function(c,h,i){var e=this,g=e.getData(),d,f,b,a;if(c){if(c.isModel){if(e.indexOf(c)>-1){b=[c];d=1}else {d=0}}else {b=[];for(f=0,d=c.length;f<d;++f){a=c[f];if(a&&a.isEntity){if(!g.contains(a)){continue}}else {if(!(a=g.getAt(a))){continue}}b.push(a)}d=b.length}}if(!d){return []}e.removeIsMove=h===!0;e.removeIsSilent=i;g.remove(b);e.removeIsSilent=!1;return b},onCollectionRemove:function(n,f){var a=this,h=a.removed,g=f.items,m=g.length,j=f.at,i=a.removeIsMove,l=a.removeIsSilent,k=!f.next,d=f.replacement,e=a.getData(),c,b;if(a.ignoreCollectionRemove){return}e=e.getSource()||e;if(d){a.setMoving(d.items,!0)}for(c=0;c<m;++c){b=g[c];if(!e.contains(b)){if(h&&!i&&!b.phantom&&!b.erasing){b.removedFrom=j+c;h.push(b);a.needsSync=!0}else {b.unjoin(a)}}}if(!l){a.fireEvent('remove',a,g,j,i);if(k){a.fireEvent('datachanged',a)}}if(d){a.setMoving(d.items,!1)}},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(d){var a=this,b=a.getData(),e=a.hasListeners.clear,c=b.getRange();if(b.length){a.removeIsSilent=!0;a.callObservers('BeforeRemoveAll');b.removeAll();a.removeIsSilent=!1;if(!d){a.fireEvent('clear',a,c);a.fireEvent('datachanged',a)}a.callObservers('AfterRemoveAll',[!!d])}return c},setRecords:function(a){var b=this.getCount();++this.loadCount;if(b){this.getData().splice(0,b,a)}else {this.add(a)}},splice:function(b,a,c){return this.getData().splice(b,a,c)},load:function(a){var b=this,c=b.getPageSize(),d;if(typeof a==='function'){a={callback:a}}else {a=Ext.apply({},a)}if(b.getRemoteSort()&&!a.grouper&&b.getGrouper()){a.grouper=b.getGrouper()}if(c||'start' in a||'limit' in a||'page' in a){a.page=a.page!=null?a.page:b.currentPage;a.start=a.start!==undefined?a.start:(a.page-1)*c;a.limit=a.limit!=null?a.limit:c;b.currentPage=a.page}a.addRecords=a.addRecords||!1;if(!a.recordCreator){d=b.getSession();if(d){a.recordCreator=d.recordCreator}}return Ext.data.ProxyStore.prototype.load.call(this,a)},onProxyLoad:function(b){var a=this,e=b.getResultSet(),c=b.getRecords(),d=b.wasSuccessful();if(a.isDestroyed){return}if(e){a.totalCount=e.getTotal()}if(d){c=a.processAssociation(c);a.loadRecords(c,b.getAddRecords()?{addRecords:!0}:undefined)}else {a.loading=!1}if(a.hasListeners.load){a.fireEvent('load',a,c,d,b)}a.callObservers('AfterLoad',[c,d,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(d,e){var b=this,f=d.length,a=[],c;for(c=0;c<f;c++){a.push(b.createModel(d[c]))}a=b.processAssociation(a);b.loadRecords(a,e?b.addRecordsOptions:undefined)},loadRawData:function(g,f){var a=this,c=a.getSession(),b=a.getProxy().getReader().read(g,c?{recordCreator:c.recordCreator}:undefined),e=b.getRecords(),d=b.getSuccess();if(d){a.totalCount=b.getTotal();a.loadRecords(e,f?a.addRecordsOptions:undefined)}return d},loadRecords:function(c,g){var a=this,h=c.length,d=a.getData(),e,b,f;if(g){e=g.addRecords}if(!a.getRemoteSort()&&!a.getSortOnLoad()){f=!0;d.setAutoSort(!1)}if(!e){a.clearData(!0)}a.loading=!1;a.ignoreCollectionAdd=!0;a.callObservers('BeforePopulate');d.add(c);a.ignoreCollectionAdd=!1;if(f){d.setAutoSort(!0)}for(b=0;b<h;b++){c[b].join(a)}++a.loadCount;a.complete=!0;a.fireEvent('datachanged',a);a.fireEvent('refresh',a);a.callObservers('AfterPopulate')},loadPage:function(c,b){var a=this,d=a.getPageSize();a.currentPage=c;b=Ext.apply({page:c,start:(c-1)*d,limit:d,addRecords:!a.getClearOnPageLoad()},b);a.read(b)},nextPage:function(a){this.loadPage(this.currentPage+1,a)},previousPage:function(a){this.loadPage(this.currentPage-1,a)},clearData:function(h){var a=this,c=a.removed,b=a.getData(),g=a.getClearRemovedOnLoad(),j=c&&h&&!g,e,f,d,i,k;b=b.getSource()||b;if(b){e=b.items;for(d=0,i=e.length;d<i;++d){f=e[d];if(j&&Ext.Array.contains(c,f)){continue}f.unjoin(a)}a.ignoreCollectionRemove=!0;a.callObservers('BeforeClear');b.removeAll();a.ignoreCollectionRemove=!1;a.callObservers('AfterClear')}if(c&&(!h||g)){c.length=0}},onIdChanged:function(b,a,c){this.getData().updateKey(b,a);this.fireEvent('idchanged',this,b,a,c)},commitChanges:function(){var a=this,c=a.getModifiedRecords(),d=c.length,b=0;Ext.suspendLayouts();a.beginUpdate();for(;b<d;b++){c[b].commit()}a.cleanRemoved();a.endUpdate();Ext.resumeLayouts(!0)},filterNewOnly:function(a){return a.phantom===!0},filterRejects:function(a){return a.phantom||a.dirty},getRejectRecords:function(){return this.getData().createFiltered(this.filterRejects).getRange()},rejectChanges:function(){var b=this,c=b.getRejectRecords(),f=c.length,a,d,e,g,h,i;Ext.suspendLayouts();b.beginUpdate();for(a=0;a<f;a++){d=c[a];if(d.phantom){e=e||[];e.push(d)}else {d.reject()}}if(e){b.remove(e);for(a=0,f=e.length;a<f;++a){e[a].reject()}}c=b.removed;if(c){f=c.length;g=!b.getRemoteSort()&&b.isSorted();if(g){h=b.getData();i=h.getAutoSort();h.setAutoSort(!1)}for(a=f-1;a>=0;a--){d=c[a];d.reject();if(!g){b.insert(d.removedFrom||0,d)}}if(g){h.setAutoSort(i);b.add(c)}c.length=0}b.endUpdate();Ext.resumeLayouts(!0)},onDestroy:function(){var a=this,d=a.loadTask,c=a.getData(),b=c.getSource();Ext.data.ProxyStore.prototype.onDestroy.call(this);a.setSession(null);a.observers=null;if(d){d.cancel();a.loadTask=null}a.clearData();c.destroy();if(b){b.destroy()}a.setData(null)},privates:{onBeforeLoad:function(a){this.callObservers('BeforeLoad',[a])},onRemoteFilterSet:function(a,b){if(a){this.getData().setFilters(b?null:a)}Ext.data.ProxyStore.prototype.onRemoteFilterSet.call(this,a,b)},onRemoteSortSet:function(b,a){var c=this.getData();if(b){c.setSorters(a?null:b)}c.setAutoGroup(!a);Ext.data.ProxyStore.prototype.onRemoteSortSet.call(this,b,a)},isMoving:function(a,f){var c=this.moveMap,b=0,e,d;if(c){if(a){if(Ext.isArray(a)){for(d=0,e=a.length;d<e;++d){b+=c[a[d].id]?1:0}}else {if(c[a.id]){++b}}}else {b=f?c:this.moveMapCount}}return b},setMoving:function(e,f){var b=this,c=b.moveMap||(b.moveMap={}),g=e.length,d,a;for(d=0;d<g;++d){a=e[d].id;if(f){if(c[a]){++c[a]}else {c[a]=1;++b.moveMapCount}}else {if(--c[a]===0){delete c[a];--b.moveMapCount}}}if(b.moveMapCount===0){b.moveMap=null}},processAssociation:function(b){var a=this,c=a.getAssociatedEntity();if(c){b=a.getRole().processLoad(a,c,b,a.getSession())}return b}}},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(a){var b=a.mapping,d=a.hasMapping()?b:a.ordinal,c;a.mapping=d;c=Ext.data.reader.Json.prototype.createFieldAccessor.apply(this,arguments);a.mapping=b;return c},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(a,d){if(this.expandData){var c=[],b=0,e=a.length;for(;b<e;b++){c[c.length]=[a[b]]}a=c}Ext.data.Store.prototype.loadData.call(this,a,d)}},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:!0,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(a){if(Ext.isArray(a)){var f=['field1'],e=!Ext.isArray(a[0]),d=a,b,c;if(e){d=[];for(b=0,c=a.length;b<c;++b){d.push([a[b]])}}else {for(b=2,c=a[0].length;b<=c;++b){f.push('field'+b)}}return new Ext.data.ArrayStore({data:d,fields:f,autoDestroy:!0,autoCreated:!0,expanded:e})}if(Ext.isString(a)){return this.get(a)}else {return Ext.Factory.store(a)}},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(b,a){var c;if(Ext.isObject(b)){a=b}else {if(Ext.data.StoreManager.containsKey(b)){return Ext.data.StoreManager.lookup(b)}a.storeId=b}if(a instanceof Ext.data.Store){c=a}else {c=new Ext.data.Store(a)}Ext.data.StoreManager.register(c);return c};Ext.getStore=function(a){return Ext.data.StoreManager.lookup(a)};var a=Ext.regStore('ext-empty-store',{proxy:'memory',useModelWarning:!1});a.isEmptyStore=!0});Ext.cmd.derive('Ext.util.StoreHolder',Ext.Base,{mixinId:'storeholder',bindStore:function(d,e,b){b=b||'store';var a=this,c=e?null:a[b];if(d!==c){if(c){a.onUnbindStore(c,e,b);if(a.isComponent&&b==='store'&&c.autoDestroy){c.destroy()}else {a.unbindStoreListeners(c)}}if(d){a[b]=d=Ext.data.StoreManager.lookup(d);a.bindStoreListeners(d);a.onBindStore(d,e,b,c)}else {a[b]=null}}return a},getStore:function(){return this.store},setStore:function(a){this.bindStore(a)},unbindStoreListeners:function(b){var a=this.storeListeners;if(a){b.un(a)}},bindStoreListeners:function(b){var a=this.getStoreListeners(b);if(a){a=Ext.apply({},a);if(!a.scope){a.scope=this}this.storeListeners=a;b.on(a)}},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:!0,msg:'Loading...',msgCls:'x-mask-loading',msgWrapCls:'x-mask-msg',useMsg:!0,useTargetEl:!1,cls:'x-mask',componentCls:'x-border-box',ariaRole:'status',focusable:!0,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(c){var a=this,b;if(arguments.length===2){b=a.target=c;c=arguments[1]}else {b=c.target}Ext.Component.prototype.constructor.call(this,c);if(b.isComponent){a.ownerCt=b;a.hidden=!0;a.renderTo=a.getMaskTarget();a.external=a.renderTo===Ext.getBody();a.bindComponent(b)}else {b=Ext.get(b);a.isElement=!0;a.renderTo=a.target}a.render(a.renderTo);if(a.store){a.bindStore(a.store,!0)}},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(b){var a=this,c={scope:this,resize:a.sizeMask};if(a.external){c.added=a.onComponentAdded;c.removed=a.onComponentRemoved;if(b.floating){c.move=a.sizeMask;a.activeOwner=b}else {if(b.ownerCt){a.onComponentAdded(b.ownerCt)}}}a.mon(b,c);if(a.external){a.mon(Ext.GlobalEvents,{show:a.onContainerShow,hide:a.onContainerHide,expand:a.onContainerExpand,collapse:a.onContainerCollapse,scope:a})}},onComponentAdded:function(b){var a=this;delete a.activeOwner;a.floatParent=b;if(!b.floating){b=b.up('[floating]')}if(b){a.activeOwner=b;a.mon(b,'move',a.sizeMask,a);a.mon(b,'tofront',a.onOwnerToFront,a)}else {a.preventBringToFront=!0}b=a.floatParent.ownerCt;if(a.rendered&&a.isVisible()&&b){a.floatOwner=b;a.mon(b,'afterlayout',a.sizeMask,a,{single:!0})}},onComponentRemoved:function(d){var a=this,b=a.activeOwner,c=a.floatOwner;if(b){a.mun(b,'move',a.sizeMask,a);a.mun(b,'tofront',a.onOwnerToFront,a)}if(c){a.mun(c,'afterlayout',a.sizeMask,a)}delete a.activeOwner;delete a.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=!0},onMouseDown:function(b){var a=this.el;if(b.within(a)){b.preventDefault();a.focus()}},onOwnerToFront:function(b,a){this.el.setStyle('zIndex',a+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=!0}},onComponentShow:function(){if(this.showNext){this.show()}delete this.showNext},sizeMask:function(){var a=this,b=a.activeOwner||a.target,c=a.external?a.getOwner().el:a.getMaskTarget();if(a.rendered&&a.isVisible()){if(a.external){if(!a.isElement&&b.floating){a.onOwnerToFront(b,b.el.getZIndex())}a.el.setSize(c.getSize()).alignTo(c,'tl-tl')}a.msgWrapEl.center(a.el)}},bindStore:function(b,c){var a=this;a.mixins.storeholder.bindStore.apply(a,arguments);b=a.store;if(b&&b.isLoading()){a.onBeforeLoad()}},getStoreListeners:function(d){var c=this.onLoad,b=this.onBeforeLoad,a={cachemiss:b,cachefilled:{fn:c,buffer:100}};if(!d.loadsSynchronously()){a.beforeload=b;a.load=c}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 b=this,a=b.getOwner(),c;if(!b.disabled){b.loading=!0;if(a.componentLayoutCounter){b.maybeShow()}else {c=a.afterComponentLayout;a.afterComponentLayout=function(){a.afterComponentLayout=c;c.apply(a,arguments);b.maybeShow()}}}},maybeShow:function(){var a=this,b=a.getOwner();if(!b.isVisible(!0)){a.showNext=!0}else {if(a.loading&&b.rendered){a.show()}}},hide:function(){var a=this,b=a.ownerCt;if(a.isElement){b.unmask();a.fireEvent('hide',this);return}b.enableTabbing();b.setMasked(!1);delete a.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 a=this,c=a.ownerCt,b=a.el;a.loading=!0;Ext.Component.prototype.afterShow.apply(this,arguments);if(a.hasOwnProperty('msgWrapCls')){b.dom.className=a.msgWrapCls}if(a.useMsg){a.msgTextEl.setHtml(a.msg)}else {a.msgEl.hide()}if(a.shim||Ext.useShims){b.enableShim(null,!0)}else {b.disableShim()}c.disableTabbing();c.setMasked(!0);b.restoreTabbableState();if(c.containsFocus){a.focus()}a.sizeMask()},onLoad:function(){this.loading=!1;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}}},1,['loadmask'],['component','box','loadmask'],{'component':!0,'box':!0,'loadmask':!0},['widget.loadmask'],[[Ext.util.StoreHolder.prototype.mixinId||Ext.util.StoreHolder.$className,Ext.util.StoreHolder]],[Ext,'LoadMask'],0);Ext.cmd.derive('Ext.selection.Model',Ext.mixin.Observable,{alternateClassName:'Ext.AbstractSelectionModel',factoryConfig:{defaultType:'dataviewmodel'},$configPrefixed:!1,$configStrict:!1,config:{store:null,selected:{}},isSelectionModel:!0,allowDeselect:undefined,toggleOnClick:!0,selected:null,pruneRemoved:!0,suspendChange:0,ignoreRightMouseSelection:!1,constructor:function(b){var a=this;a.modes={SINGLE:!0,SIMPLE:!0,MULTI:!0};Ext.mixin.Observable.prototype.constructor.call(this,b);a.setSelectionMode(a.mode);if(a.selectionMode!=='SINGLE'){a.allowDeselect=!0}},updateStore:function(b,a){this.bindStore(b,!a)},applySelected:function(a){if(!a.isCollection){a=new Ext.util.Collection(Ext.apply({rootProperty:'data'},a))}return a},onBindStore:function(b,c){var a=this;a.mixins.storeholder.onBindStore.call(a,[b,c]);if(b&&!a.preventRefresh){a.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(b){var a=this,c=a.store.getRange(),d=a.getSelection().length;a.suspendChanges();a.doSelect(c,!0,b);a.resumeChanges();if(!b&&!a.isDestroyed){a.maybeFireSelectionChange(a.getSelection().length!==d)}},deselectAll:function(f){var a=this,b=a.getSelection(),d={},i=a.store,h=b.length,c,g,e;for(c=0,g=b.length;c<g;c++){e=b[c];d[e.id]=i.indexOf(e)}b=Ext.Array.sort(b,function(c,e){var a=d[c.id],b=d[e.id];return a<b?-1:1});a.suspendChanges();a.doDeselect(b,f);a.resumeChanges();if(!f&&!a.isDestroyed){a.maybeFireSelectionChange(a.getSelection().length!==h)}},getSelectionStart:function(){return this.selectionStart},setSelectionStart:function(a){this.selectionStart=a},selectWithEvent:function(b,c){var a=this,d=a.isSelected(b),e=c.shiftKey;switch(a.selectionMode){case 'MULTI':a.selectWithEventMulti(b,c,d);break;case 'SIMPLE':a.selectWithEventSimple(b,c,d);break;case 'SINGLE':a.selectWithEventSingle(b,c,d);break;}if(!e){if(a.isSelected(b)){a.selectionStart=b}else {a.selectionStart=null}}},vetoSelection:function(a){if(a.type!=='keydown'&&a.button!==0){if(this.ignoreRightMouseSelection||this.isSelected(a.record)){return !0}}else {return a.type==='mousedown'}},onNavigate:function(d){if(!d.record||this.vetoSelection(d.keyEvent)){return}this.onBeforeNavigate(d);var a=this,c=d.keyEvent,f=c.ctrlKey||d.ctrlKey,g=d.recordIndex,b=d.record,k=d.previousRecord,i=a.isSelected(b),h=a.selectionStart&&a.isSelected(d.previousRecord)?a.selectionStart:a.selectionStart=d.previousRecord,l=d.previousRecordIndex,e=c.getCharCode(),m=e===c.SPACE,j=e===c.UP||e===c.PAGE_UP?'up':e===c.DOWN||e===c.DOWN?'down':null;switch(a.selectionMode){case 'MULTI':a.setSelectionStart(d.selectionStart);if(e===c.A&&f){a.selected.beginUpdate();a.selectRange(0,a.store.getCount()-1);a.selected.endUpdate()}else {if(m){if(c.shiftKey){a.selectRange(h,b,f)}else {if(i){if(a.allowDeselect){a.doDeselect(b)}}else {a.doSelect(b,f)}}}else {if(c.shiftKey&&h){if(j==='up'&&l<=g){a.deselectRange(k,g+1)}else {if(j==='down'&&l>=g){a.deselectRange(k,g-1)}else {if(h!==b){a.selectRange(h,b,f)}}}a.lastSelected=b}else {if(e){if(!f){a.doSelect(b,!1)}}else {a.selectWithEvent(b,c)}}}};break;case 'SIMPLE':if(e===c.A&&f){a.selected.beginUpdate();a.selectRange(0,a.store.getCount()-1);a.selected.endUpdate()}else {if(i){a.doDeselect(b)}else {a.doSelect(b,!0)}};break;case 'SINGLE':if(j){if(!f){a.doSelect(b,!1)}}else {if(i){if(a.allowDeselect){a.doDeselect(b)}}else {a.doSelect(b)}};}if(!c.shiftKey&&!a.isDestroyed){if(a.isSelected(b)){a.selectionStart=b}}},selectRange:function(d,f,m){var b=this,i=b.store,l=b.selected.items,h,a,g,e,c,j,k;if(b.isLocked()){return}h=b.normalizeRowRange(d,f);d=h[0];f=h[1];e=[];for(a=d;a<=f;a++){if(!b.isSelected(i.getAt(a))){e.push(i.getAt(a))}}if(!m){c=[];b.suspendChanges();for(a=0,g=l.length;a<g;++a){k=l[a];j=i.indexOf(k);if(j<d||j>f){c.push(k)}}for(a=0,g=c.length;a<g;++a){b.doDeselect(c[a])}b.resumeChanges()}if(!b.isDestroyed){if(e.length){b.doMultiSelect(e,!0)}else {if(c){b.maybeFireSelectionChange(c.length>0)}}}},deselectRange:function(d,e){var a=this,h=a.store,g,c,b,f;if(a.isLocked()){return}g=a.normalizeRowRange(d,e);d=g[0];e=g[1];b=[];for(c=d;c<=e;c++){f=h.getAt(c);if(a.isSelected(f)){b.push(f)}}if(b.length){a.doDeselect(b)}},normalizeRowRange:function(a,b){var c=this.store,d;if(!Ext.isNumber(a)){a=c.indexOf(a)}a=Math.max(0,a);if(!Ext.isNumber(b)){b=c.indexOf(b)}b=Math.min(b,c.getCount()-1);if(a>b){d=b;b=a;a=d}return [a,b]},select:function(a,c,b){if(Ext.isDefined(a)&&!(Ext.isArray(a)&&!a.length)){this.doSelect(a,c,b)}},deselect:function(b,a){this.doDeselect(b,a)},doSelect:function(a,e,d){var c=this,b;if(c.locked){return}if(typeof a==='number'){b=c.store.getAt(a);if(!b){return}a=[b]}if(c.selectionMode==='SINGLE'&&a){b=a.length?a[0]:a;c.doSingleSelect(b,d)}else {c.doMultiSelect(a,e,d)}},doMultiSelect:function(b,k,d){var a=this,g=a.selected,h=!1,e,f,j,c,i;if(a.locked){return}b=!Ext.isArray(b)?[b]:b;j=b.length;if(!k&&g.getCount()>0){e=a.deselectDuringSelect(b,d);if(a.isDestroyed){return}if(e[0]){a.maybeFireSelectionChange(e[1]>0&&!d);return}else {h=e[1]>0}}i=function(){if(!g.getCount()){a.selectionStart=c}g.add(c);h=!0};for(f=0;f<j;f++){c=b[f];if(a.isSelected(c)){continue}a.onSelectChange(c,!0,d,i);if(a.isDestroyed){return}}a.lastSelected=c;a.maybeFireSelectionChange(h&&!d)},deselectDuringSelect:function(h,g){var a=this,f=a.selected.getRange(),i=f.length,c=0,d=!1,e,b;a.suspendChanges();a.deselectingDuringSelect=!0;for(b=0;b<i;++b){e=f[b];if(!Ext.Array.contains(h,e)){if(a.doDeselect(e,g)){++c}else {d=!0}}if(a.isDestroyed){d=!0;c=0;break}}a.deselectingDuringSelect=!1;a.resumeChanges();return [d,c]},doDeselect:function(c,f){var a=this,h=a.selected,e=0,j,b,g=0,d=0,i;if(a.locked||!a.store){return !1}if(typeof c==='number'){b=a.store.getAt(c);if(!b){return !1}c=[b]}else {if(!Ext.isArray(c)){c=[c]}}i=function(){++d;h.remove(b);if(b===a.selectionStart){a.selectionStart=null}};j=c.length;a.suspendChanges();for(;e<j;e++){b=c[e];if(a.isSelected(b)){if(a.lastSelected===b){a.lastSelected=h.last()}++g;a.onSelectChange(b,!1,f,i);if(a.isDestroyed){return !1}}}a.resumeChanges();a.maybeFireSelectionChange(d>0&&!f);return d===g},doSingleSelect:function(b,c){var a=this,e=!1,d=a.selected,f;if(a.locked){return}if(a.isSelected(b)){return}f=function(){if(d.getCount()){a.suspendChanges();var f=a.deselectDuringSelect([b],c);if(a.isDestroyed){return}a.resumeChanges();if(f[0]){return !1}}a.lastSelected=b;if(!d.getCount()){a.selectionStart=b}d.add(b);e=!0};a.onSelectChange(b,!0,c,f);if(e&&!a.isDestroyed){a.maybeFireSelectionChange(!c)}},maybeFireSelectionChange:function(b){var a=this;if(b&&!a.suspendChange){a.fireEvent('selectionchange',a,a.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(b,c){var e=this,f=e.store,a,d;d=e.normalizeRowRange(b,c);b=d[0];c=d[1];for(a=b;a<=c;a++){if(!e.isSelected(f.getAt(a))){return !1}}return !0},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 a=this,l=a.store,e=[],c=[],k=a.getSelection(),m=k.length,b=a.getSelected(),h,j,d,g,i,f;if(!l||!(b.isCollection||b.isRows)||!b.getCount()){return}d=l.getData();if(d.getSource){j=d.getSource();if(j){d=j}}a.refreshing=!0;b.beginUpdate();a.suspendChanges();for(f=0;f<m;f++){g=k[f];i=d.get(g.getId());if(i){e.push(i)}else {if(!a.pruneRemoved){c.push(g)}}if(a.mode==='SINGLE'&&c.length){break}}if(b.getCount()!==e.length+c.length){h=!0}a.clearSelections();if(e.length){a.doSelect(e,!1,!0)}if(c.length){b.add(c);if(!a.lastSelected){a.lastSelected=c[c.length-1]}}a.resumeChanges();if(h){b.endUpdate()}else {b.updating--}a.refreshing=!1;a.maybeFireSelectionChange(h)},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(!0)}},onStoreRemove:function(i,c,j,h){var a=this,b=c,d,g,f,e;if(a.selectionStart&&Ext.Array.contains(c,a.selectionStart)){a.selectionStart=null}if(h||a.locked||!a.pruneRemoved){return}e=i.isMoving(null,!0);if(e){b=null;for(d=0,g=c.length;d<g;++d){f=c[d];if(!e[f.id]){(b||(b=[])).push(f)}}}if(b){a.deselect(b)}},onPageRemove:function(c,b,a){this.onStoreRemove(this.store,a)},onPageAdd:function(f,e,c){var d=c.length,a,b;for(a=0;a<d;a++){b=c[a];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(d,b,a,c){this.selected.updateKey(b,a)},onStoreRefresh:function(){this.updateSelectedInstances(this.selected)},updateSelectedInstances:function(f){var a=this,h=a.getStore(),e=a.lastSelected,j=0,l=a.pruneRemovedOnRefresh(),g,k,d,b,c,i;if(h.isBufferedStore){return}g=f.getRange();k=g.length;if(e){a.lastSelected=h.getById(e.id);i=a.lastSelected!==e}a.refreshing=!0;for(d=0;d<k;++d){b=g[d];c=h.getById(b.id);if(c){if(c!==b){f.replace(c)}}else {if(l){f.remove(b);++j}}}a.refreshing=!1;a.maybeFireSelectionChange(j>0);if(i){a.fireEvent('lastselectedchanged',a,a.getSelection(),a.lastSelected)}},pruneRemovedOnRefresh:function(){return this.pruneRemoved},onStoreLoad:Ext.emptyFn,onSelectChange:function(d,e,b,f){var a=this,c=e?'select':'deselect';if((b||a.fireEvent('before'+c,a,d))!==!1&&f()!==!1){if(!b){a.fireEvent(c,a,d)}}},onEditorKey:Ext.emptyFn,beforeViewRender:function(a){Ext.Array.include(this.views||(this.views=[]),a)},onHeaderClick:Ext.emptyFn,resolveListenerScope:function(a){var c=this.view,b;if(c){b=c.resolveSatelliteListenerScope(this,a)}return b||Ext.mixin.Observable.prototype.resolveListenerScope.call(this,a)},bindComponent:Ext.emptyFn,privates:{onBeforeNavigate:Ext.privateFn,selectWithEventMulti:function(b,l,e){var a=this,g=l.shiftKey,c=l.ctrlKey,j=g?a.getSelectionStart():null,i=a.getSelection(),k=i.length,f,d,h;if(g&&j){a.selectRange(j,b,c)}else {if(c&&e){if(a.allowDeselect){a.doDeselect(b,!1)}}else {if(c){a.doSelect(b,!0,!1)}else {if(e&&!g&&!c&&k>1){if(a.allowDeselect){f=[];for(d=0;d<k;++d){h=i[d];if(h!==b){f.push(h)}}a.doDeselect(f)}}else {if(!e){a.doSelect(b,!1)}}}}}},selectWithEventSimple:function(a,c,b){if(b){this.doDeselect(a)}else {this.doSelect(a,!0)}},selectWithEventSingle:function(c,e,d){var a=this,b=a.allowDeselect;if(b&&!e.ctrlKey){b=a.toggleOnClick}if(b&&d){a.doDeselect(c)}else {a.doSelect(c,!1)}}}},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:!0,bindComponent:function(b){var a=this,c;if(a.view!==b){if(a.view){a.navigationModel=null;Ext.destroy(a.viewListeners,a.navigationListeners)}a.view=b;if(b){c=a.getViewListeners();c.scope=a;c.destroyable=!0;a.navigationModel=b.getNavigationModel();a.viewListeners=b.on(c);a.navigationListeners=a.navigationModel.on({navigate:a.onNavigate,scope:a,destroyable:!0})}}},getViewListeners:function(){var b=this,a={};a[b.view.triggerCtEvent]=b.onContainerClick;return a},onUpdate:function(a){var b=this.view;if(b&&this.isSelected(a)){b.onItemSelect(a)}},onContainerClick:function(){if(this.deselectOnContainerClick){this.deselectAll()}},onSelectChange:function(b,f,d,h){var a=this,c=a.view,g=f?'select':'deselect',e=a.store.indexOf(b);if((d||a.fireEvent('before'+g,a,b,e))!==!1&&h()!==!1){if(c){if(f){c.onItemSelect(b)}else {c.onItemDeselect(b)}}if(!d){a.fireEvent(g,a,b,e)}}},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(c){var a=this,d=c.dataSource,b;a.initKeyNav(c);if(a.dataSource!==d){a.dataSource=d;b=a.getStoreListeners();b.destroyable=!0;a.dataSourceListeners=c.dataSource.on(b)}b=a.getViewListeners();b.destroyable=!0;a.viewListeners=a.viewListeners||[];a.viewListeners.push(c.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(b){var a=this;a.keyNav=new Ext.util.KeyNav({target:b,ignoreInputFields:!0,eventName:'itemkeydown',defaultEventAction:'stopEvent',processEvent:a.processViewEvent,up:a.onKeyUp,down:a.onKeyDown,right:a.onKeyRight,left:a.onKeyLeft,pageDown:a.onKeyPageDown,pageUp:a.onKeyPageUp,home:a.onKeyHome,end:a.onKeyEnd,tab:a.onKeyTab,space:a.onKeySpace,enter:a.onKeyEnter,A:{ctrl:!0,handler:a.onSelectAllKeyPress},scope:a})},processViewEvent:function(e,b,d,c,a){return a},addKeyBindings:function(a){this.keyNav.addBindings(a)},enable:function(){this.keyNav.enable();this.disabled=!1},disable:function(){this.keyNav.disable();this.disabled=!0},onContainerMouseDown:function(b,a){if(this.view.containsFocus){a.preventDefault()}},onItemMouseDown:function(f,d,e,c,b){var a=b.parentEvent;if(!a||a.type!=='touchstart'){this.setPosition(c)}},onItemClick:function(e,b,d,c,a){if(this.record===b){this.fireNavigateEvent(a)}else {this.setPosition(c,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,!0)},setPosition:function(d,h,j,g){var a=this,f=a.view,i=f.getSelectionModel(),e=f.dataSource,b,c;if(d==null||!f.all.getCount()){a.record=a.recordIndex=null}else {if(typeof d==='number'){c=Math.max(Math.min(d,e.getCount()-1),0);b=e.getAt(d)}else {if(d.isEntity){b=e.getById(d.id);c=e.indexOf(b);if(c===-1){b=e.getAt(0);c=0}}else {if(d.tagName){b=f.getRecord(d);c=e.indexOf(b)}else {b=c=null}}}}if(b===a.record){a.recordIndex=c;return a.focusPosition(c)}if(a.item){a.item.removeCls(a.focusCls)}a.previousRecordIndex=a.recordIndex;a.previousRecord=a.record;a.previousItem=a.item;a.recordIndex=c;a.record=b;g=g||a.record===a.lastFocused;if(b){a.focusPosition(a.recordIndex)}else {a.item=null}if(!j){i.fireEvent('focuschange',i,a.previousRecord,a.record)}if(!g&&h){a.fireNavigateEvent(h)}},focusPosition:function(b){var a=this;if(b!=null&&b!==-1){if(b.isEntity){b=a.view.dataSource.indexOf(b)}a.item=a.view.all.item(b);if(a.item){a.lastFocused=a.record;a.lastFocusedIndex=a.recordIndex;a.focusItem(a.item)}else {a.record=null}}else {a.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(!1);return !0},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,o,d,m,f){var a=this,g=a.changeQueue||(a.changeQueue={}),i=d.internalId,h,b,l,e,c,j,k;h=g[i]||(g[i]={operation:m,record:d,data:{},views:[]});b=h.data;Ext.Array.include(h.views,n);if(f&&(l=f.length)){for(e=0;e<l;e++){c=f[e];j=d.data[c];if(b.hasOwnProperty(c)){if(d.isEqual(b[c],j)){delete b[c];k=!0}}else {b[c]=j}}if(k&&!Ext.Object.getKeys(b).length){delete g[i]}}else {Ext.apply(b,d.data)}if(!a.flushQueueTask){a.flushQueueTask=Ext.util.TaskManager.newTask({run:Ext.global.requestAnimationFrame?Ext.Function.createAnimationFrame(a.onFlushTick,a):Ext.Function.bind(a.onFlushTick,a),interval:Ext.view.AbstractView.updateDelay,repeat:1})}a.flushQueueTask.start()},onFlushTick:function(){Ext.AnimationQueue.start(this.flushChangeQueue,this)},flushChangeQueue:function(){var c=this,f,h,e,a,g,d,b;if(Ext.isScrolling){c.flushQueueTask.start();return}e=c.changeQueue;this.changeQueue={};for(g in e){a=e[g];f=a.views;h=f.length;for(d=0;d<h;d++){b=f[d];if(!b.isDestroyed){b.handleUpdate(b.dataSource,a.record,a.operation,Ext.Object.getKeys(a.data))}}}Ext.AnimationQueue.stop(c.flushChangeQueue,c)}},config:{selection:null,store:'ext-empty-store',navigationModel:{type:'default'},selectionModel:{type:'dataviewmodel'}},publishes:['selection'],twoWayBindable:['selection'],throttledUpdate:!1,deferInitialRefresh:!1,itemCls:'x-dataview-item',loadingText:'Loading...',loadMask:!0,loadingUseMsg:!0,selectedItemCls:'x-item-selected',emptyText:'',deferEmptyText:!0,trackOver:!1,blockRefresh:!1,preserveScrollOnRefresh:!1,ariaRole:'listbox',itemAriaRole:'option',last:!1,focusable:!0,tabIndex:0,triggerEvent:'itemclick',triggerCtEvent:'containerclick',refreshNeeded:!0,updateSuspendCounter:0,addCmpEvents:Ext.emptyFn,constructor:function(a){if(a&&a.selModel){a.selectionModel=a.selModel}Ext.Component.prototype.constructor.call(this,a)},initComponent:function(){var a=this,d=Ext.isDefined,b=a.itemTpl,c={};if(b){if(Ext.isArray(b)){b=b.join('')}else {if(Ext.isObject(b)){c=Ext.apply(c,b.initialConfig);b=b.html}}if(!a.itemSelector){a.itemSelector='.'+a.itemCls}b=Ext.String.format('<tpl for="."><div class="{0}" role="{2}">{1}</div></tpl>',a.itemCls,b,a.itemAriaRole);a.tpl=new Ext.XTemplate(b,c)}Ext.Component.prototype.initComponent.call(this);a.tpl=a.getTpl('tpl');if(a.overItemCls){a.trackOver=!0}a.addCmpEvents();a.store=Ext.data.StoreManager.lookup(a.store||'ext-empty-store');if(!a.dataSource){a.dataSource=a.store}a.getNavigationModel().bindComponent(this);a.bindStore(a.dataSource,!0,'dataSource');if(!a.all){a.all=new Ext.CompositeElementLite()}a.scrollState={top:0,left:0};a.savedTabIndexAttribute='data-savedtabindex-'+a.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)}}},onMaskBeforeShow:function(){var a=this,b=a.loadingHeight;if(b&&b>a.getHeight()){a.hasLoadingHeight=!0;a.oldMinHeight=a.minHeight;a.minHeight=b;a.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 a=this.loadMask,b=[];if(a&&a.isComponent){b.push(a)}return b},getSelection:function(){return this.getSelectionModel().getSelection()},updateSelection:function(c){var a=this,b;if(!a.ignoreNextSelection){a.ignoreNextSelection=!0;b=a.getSelectionModel();if(c){b.select(c)}else {b.deselectAll()}a.ignoreNextSelection=!1}},updateBindSelection:function(d,c){var a=this,b=null;if(!a.ignoreNextSelection){a.ignoreNextSelection=!0;if(c.length){b=d.getLastSelected();a.hasHadSelection=!0}if(a.hasHadSelection){a.setSelection(b)}a.ignoreNextSelection=!1}},applySelectionModel:function(b,d){var a=this,c;if(d){d.un({scope:a,lastselectedchanged:a.updateBindSelection,selectionchange:a.updateBindSelection});Ext.destroy(a.selModelRelayer);b=Ext.Factory.selection(b)}else {if(b&&b.isSelectionModel){b.locked=a.disableSelection}else {if(a.simpleSelect){c='SIMPLE'}else {if(a.multiSelect){c='MULTI'}else {c='SINGLE'}}if(typeof b==='string'){b={type:b}}b=Ext.Factory.selection(Ext.apply({allowDeselect:a.allowDeselect||a.multiSelect,mode:c,locked:a.disableSelection},b))}}a.selModelRelayer=a.relayEvents(b,['selectionchange','beforeselect','beforedeselect','select','deselect','focuschange']);b.on({scope:a,lastselectedchanged:a.updateBindSelection,selectionchange:a.updateBindSelection});return b},updateSelectionModel:function(a){this.selModel=a},applyNavigationModel:function(a){return Ext.Factory.viewNavigation(a)},onFocusEnter:function(d){var a=this,b=a.getNavigationModel(),c;if(!a.itemFocused&&a.all.getCount()){c=b.getLastFocused();b.setPosition(c||0,d.event,null,!c);a.itemFocused=b.getPosition()!=null}if(a.itemFocused){this.el.dom.setAttribute('tabindex','-1')}},onFocusLeave:function(b){var a=this;if(a.itemFocused){a.getNavigationModel().setPosition(null,b.event,null,!0);a.itemFocused=!1;a.el.dom.setAttribute('tabindex',0)}},onRemoved:function(a){Ext.Component.prototype.onRemoved.call(this,a);this.onFocusLeave({})},refresh:function(){var a=this,b=a.all,j=b.getCount(),h=a.refreshCounter,d,c,l,e,k=a.getSelectionModel(),i=a.getNavigationModel(),g=h&&b.getCount()&&a.preserveScrollOnRefresh&&!a.bufferedRenderer,f;if(!a.rendered||a.isDestroyed||a.preventRefresh){return}if(!a.hasListeners.beforerefresh||a.fireEvent('beforerefresh',a)!==!1){a.refreshing=!0;i.beforeViewRefresh(a);d=a.getTargetEl();e=a.getViewRange();l=d.dom;if(g){c=a.getOverflowEl();f=c.getScroll()}if(h){a.clearViewEl();a.refreshCounter++}else {a.refreshCounter=1}a.tpl.append(d,a.collectData(e,b.startIndex||0));if(e.length<1){a.addEmptyText();b.clear()}else {a.collectNodes(d.dom);a.updateIndexes(0)}i.onViewRefresh();if(a.refreshSelmodelOnRefresh!==!1){k.refresh()}a.refreshNeeded=!1;a.refreshSize(b.getCount()!==j);a.fireEvent('refresh',a,e);if(g){c.setScrollLeft(f.left);c.setScrollTop(f.top)}if(!a.viewReady){a.viewReady=!0;a.fireEvent('viewready',a)}a.refreshing=!1;a.refreshScroll()}},addEmptyText:function(){var a=this;if(a.emptyText&&!a.getStore().isLoading()&&(!a.deferEmptyText||a.refreshCounter>1)){a.emptyEl=Ext.core.DomHelper.insertHtml('beforeEnd',a.getTargetEl().dom,a.emptyText)}},toggleChildrenTabbability:function(c){var b=this.savedTabIndexAttribute,a=this.getTargetEl();if(c){a.restoreChildrenTabbableState(b)}else {a.saveChildrenTabbableState(b)}},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 a=this,b=a.getSizeModel(),c=a.getScrollable();if(b.height.shrinkWrap||b.width.shrinkWrap||d){a.updateLayout()}else {if(a.touchScroll&&!a.bufferedRenderer){if(c){c.refresh()}else {a.on({boxready:a.refreshScroll,scope:a,single:!0})}}}},onResize:function(){var a=this,b=a.getScrollable();if(b&&!a._hasScrollListener){b.on({scroll:a.onViewScroll,scope:a,onFrame:!!Ext.global.requestAnimationFrame});a._hasScrollListener=!0}Ext.Component.prototype.onResize.apply(this,arguments)},clearViewEl:function(){var a=this,c=a.getTargetEl(),b=a.getNodeContainer()===c;a.clearEmptyEl();a.all.clear(!b);if(b){c.dom.innerHTML=''}},clearEmptyEl:function(){var a=this.emptyEl;if(a){Ext.removeNode(a)}this.emptyEl=null},onViewScroll:function(c,a,b){this.fireEvent('scroll',this,a,b)},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(c,f,e){var a,b,d;if(e){a=e.getAssociatedData();for(b in a){if(a.hasOwnProperty(b)){if(!d){c=Ext.Object.chain(c);d=!0}c[b]=a[b]}}}return c},collectData:function(c,e){var d=[],a=0,f=c.length,b;for(;a<f;a++){b=c[a];d[a]=this.prepareData(b.data,e+a,b)}return d},bufferRender:function(g,h){var b=this,e=b.renderBuffer,d=document.createDocumentFragment(),a,f,c;b.tpl.overwrite(e,b.collectData(g,h));a=Ext.fly(e).query(b.getItemSelector());for(c=0,f=a.length;c<f;c++){d.appendChild(a[c])}return {fragment:d,children:a}},nodeContainerSelector:null,getNodeContainer:function(){var b=this.getTargetEl(),a=this.nodeContainerSelector;return a?b.down(a,!0):b},getNodeContainerSelector:function(){return this.nodeContainerSelector},onUpdate:function(g,c,f,d,b){var a=this,e=b&&b.filtered;if(!e&&a.getNode(c)){if(a.throttledUpdate){a.statics().queueRecordChange(a,g,c,f,d)}else {a.handleUpdate.apply(a,arguments)}}},handleUpdate:function(f,b){var a=this,c,d,e=a.getSelectionModel();if(a.viewReady){c=a.dataSource.indexOf(b);if(c>-1){if(a.getNode(b)){d=a.bufferRender([b],c).children[0];a.all.replaceElement(c,d,!0);a.updateIndexes(c,c);e.onUpdate(b);a.refreshSizePending=!0;if(e.isSelected(b)){a.onItemSelect(b)}if(a.hasListeners.itemupdate){a.fireEvent('itemupdate',b,c,d)}return d}}}},onReplace:function(n,b,f,e){var a=this,h,c=a.all,m=a.getSelectionModel(),j,l,d,k,i,g;if(a.rendered){j=a.bufferRender(e,b,!0);i=j.fragment;g=j.children;l=c.item(b);if(l){c.item(b).insertSibling(i,'before',!0)}else {a.appendNodes(i)}c.insert(b,g);b+=e.length;h=b+f.length-1;c.removeRange(b,h,!0);if(a.refreshSelmodelOnRefresh!==!1){m.refresh()}a.updateIndexes(b);if(a.hasListeners.itemremove){for(d=f.length,k=h;d>=0;--d,--k){a.fireEvent('itemremove',f[d],k,a)}}if(a.hasListeners.itemadd){a.fireEvent('itemadd',e,b,g)}a.refreshSize()}},onAdd:function(f,d,b){var a=this,c,e=a.getSelectionModel();if(a.rendered){if(a.all.getCount()===0){a.refresh();c=a.all.slice()}else {c=a.doAdd(d,b);if(a.refreshSelmodelOnRefresh!==!1){e.refresh()}a.updateIndexes(b);a.refreshSizePending=!0}if(a.hasListeners.itemadd){a.fireEvent('itemadd',d,b,c)}}},appendNodes:function(a){var b=this.all,c=b.getCount();if(this.nodeContainerSelector){this.getNodeContainer().appendChild(a)}else {b.item(c-1).insertSibling(a,'after')}},doAdd:function(j,b){var d=this,g=d.bufferRender(j,b,!0),f=g.fragment,c=g.children,a=d.all,h=a.getCount(),e=a.startIndex||0,i=a.endIndex||h-1;if(h===0||b>i){d.appendNodes(f)}else {if(b<=e){a.item(e).insertSibling(f,'before',!0)}else {a.item(b).insertSibling(c,'before',!0)}}a.insert(b,c);return c},onRemove:function(k,d,b){var a=this,i=a.all,g=a.hasListeners.itemremove,e,c,j,f,h;if(i.getCount()){if(a.dataSource.getCount()===0){if(g){a.fireEvent('itemremove',d,b,a.getNodes(b,b+d.length-1))}a.refresh()}else {if(g){f=[]}for(c=d.length-1;c>=0;--c){j=d[c];e=b+c;if(f){h=i.item(e);f[c]=h?h.dom:undefined}if(i.item(e)){a.doRemove(j,e)}}if(g){a.fireEvent('itemremove',d,b,f,a)}a.updateIndexes(b)}a.refreshSizePending=!0}},doRemove:function(b,a){this.all.removeElement(a,!0)},refreshNode:function(a){if(Ext.isNumber(a)){a=this.store.getAt(a)}this.onUpdate(this.dataSource,a)},updateIndexes:function(d,b){var e=this.all.elements,c,f=this.getViewRange(),a,g=this.id;d=d||0;b=b||(b===0?0:e.length-1);for(a=d;a<=b;a++){c=e[a];c.setAttribute('data-recordIndex',a);c.setAttribute('data-recordId',f[a].internalId);c.setAttribute('data-boundView',g)}},bindStore:function(c,d,e){var a=this,b=a.getSelectionModel();b.preventRefresh=!0;b.bindStore(c);b.bindComponent(c?a:null);b.preventRefresh=!1;a.mixins.storeholder.bindStore.apply(a,arguments);if(c&&a.componentLayoutCounter&&!a.preventRefresh){a.doFirstRefresh(c,!d)}},doFirstRefresh:function(b,c){var a=this;if(a.deferInitialRefresh&&!c){Ext.defer(a.doFirstRefresh,1,a,[b,!0])}else {if(b&&!b.isLoading()){a.refresh()}}},onUnbindStore:function(c,b,a){if(a==='store'){this.setMaskBind(null);this.getSelectionModel().bindStore(null)}},onBindStore:function(b,d,c){var a=this;a.setMaskBind(b);if(!d&&c==='store'){a.preventRefresh=!0;a.store=b;a.bindStore(b,!1,'dataSource');a.preventRefresh=!1}},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(){++this.updateSuspendCounter;Ext.suspendLayouts()},onEndUpdate:function(){var a=this;if(a.updateSuspendCounter){--a.updateSuspendCounter}Ext.resumeLayouts(!0);if(a.refreshSizePending){a.refreshSize(!0);a.refreshSizePending=!1}},onDataRefresh:function(){this.refreshView()},refreshView:function(){var a=this,b=a.blockRefresh||!a.rendered||a.up('[collapsed],[isCollapsingOrExpanding],[hidden]');if(b){a.refreshNeeded=!0}else {if(a.bufferedRenderer&&a.all.getCount()){a.bufferedRenderer.refreshView()}else {a.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 c=[],b=this.getSelectionModel().getSelection(),d=b.length,a=0;for(;a<d;a++){c.push(this.getNode(b[a]))}return c},getRecords:function(c){var a=[],b=0,e=c.length,d=this.dataSource.data;for(;b<e;b++){a[a.length]=d.getByKey(c[b].getAttribute('data-recordId'))}return a},getRecord:function(a){return this.dataSource.getByInternalId(Ext.getDom(a).getAttribute('data-recordId'))},isSelected:function(a){var b=this.getRecord(a);return this.getSelectionModel().isSelected(b)},select:function(c,b,a){this.getSelectionModel().select(c,b,a)},deselect:function(b,a){this.getSelectionModel().deselect(b,a)},getNode:function(a){var c=this,b;if(c.rendered&&(a||a===0)){if(Ext.isString(a)){b=document.getElementById(a)}else {if(a.isModel){b=c.getNodeByRecord(a)}else {if(Ext.isNumber(a)){b=c.all.elements[a]}else {if(a.target){a=a.target}b=Ext.fly(a).findParent(c.itemSelector,c.getTargetEl())}}}}return b||null},getNodeByRecord:function(a){var b=this.store.indexOf(a);return this.all.elements[b]||null},getNodes:function(b,a){var c=this.all;if(a!==undefined){a++}return c.slice(b,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,b=a.updateSuspendCounter;a.all.clear();a.emptyEl=null;Ext.Component.prototype.onDestroy.call(this);a.bindStore(null);Ext.destroy(a.navigationModel,a.selectionModel);while(b--){Ext.resumeLayouts(!0)}},onItemSelect:function(b){var a=this.getNode(b);if(a){Ext.fly(a).addCls(this.selectedItemCls)}},onItemDeselect:function(b){var a=this.getNode(b);if(a){Ext.fly(a).removeCls(this.selectedItemCls)}},getItemSelector:function(){return this.itemSelector},addItemCls:function(b,c){var a=this.getNode(b);if(a){Ext.fly(a).addCls(c)}},removeItemCls:function(b,c){var a=this.getNode(b);if(a){Ext.fly(a).removeCls(c)}},updateStore:function(a){if(!this.isConfiguring){delete this.store;this.bindStore(a)}},privates:{createMask:function(d){var a=this,c=a.getStore(),b;if(c&&!c.isEmptyStore&&!c.loadsSynchronously()){b={target:a,msg:a.loadingText,useMsg:a.loadingUseMsg,store:c};if(a.loadingCls){b.msgCls=a.loadingCls}if(Ext.isObject(d)){b=Ext.apply(b,d)}a.loadMask=new Ext.LoadMask(b);a.loadMask.on({scope:a,beforeshow:a.onMaskBeforeShow,hide:a.onMaskHide})}return a.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':!0,'box':!0},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(d,c,b){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 a=this.getSelectionModel();return a.select.apply(a,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(b){var a=this,d=a.getTargetSelector(),c=b.getTarget(d);if(!a.isDestroyed){if(c){if(a.mouseOverItem!==c&&a.el.contains(c)){a.mouseOverItem=b.item=c;b.newType='mouseenter';a.handleEvent(b)}}else {a.handleEvent(b)}}},handleMouseOut:function(a){var e=this.getTargetSelector(),b=a.getTarget(e),d=a.getRelatedTarget(e),c;if(b===d&&!(b===null&&d===null)){return}if(!this.isDestroyed){if(b&&(c=this.self.getBoundView(b))){a.item=b;a.newType='mouseleave';c.handleEvent(a);c.mouseOverItem=null}else {this.handleEvent(a)}}},handleEvent:function(a){var b=this,c=b.keyEventRe.test(a.type),d=b.getNavigationModel();a.view=b;if(c){a.item=d.getItem();a.record=d.getRecord()}if(!a.item){a.item=a.getTarget(b.itemSelector)}if(a.item&&!a.record){a.record=b.getRecord(a.item)}if(b.processUIEvent(a)!==!1){b.processSpecialEvent(a)}if(c&&!Ext.fly(a.target).isInputField()){if(a.getKey()===a.SPACE||a.isNavKeyPress(!0)){a.preventDefault()}}},processItemEvent:Ext.emptyFn,processContainerEvent:Ext.emptyFn,processSpecialEvent:Ext.emptyFn,processUIEvent:function(b){if(!Ext.getBody().isAncestor(b.target)){return}var a=this,f=b.item,j=a.self,h=j.EventMap,i=j.TouchEventMap,g,e=b.record,d=b.type,c=d;if(b.newType){c=b.newType}if(f){c=i[c]||c;g=b.recordIndex=a.indexInStore?a.indexInStore(e):a.indexOf(f);if(!e||a.processItemEvent(e,f,g,b)===!1){return !1}if(a['onBeforeItem'+h[c]](e,f,g,b)===!1||a.fireEvent('beforeitem'+c,a,e,f,g,b)===!1||a['onItem'+h[c]](e,f,g,b)===!1){return !1}a.fireEvent('item'+c,a,e,f,g,b)}else {d=i[d]||d;if(a.processContainerEvent(b)===!1||a['onBeforeContainer'+h[d]](b)===!1||a.fireEvent('beforecontainer'+d,a,b)===!1||a['onContainer'+h[d]](b)===!1){return !1}a.fireEvent('container'+d,a,b)}return !0},onItemMouseEnter:function(b,a,c,d){if(this.trackOver){this.highlightItem(a)}},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 a=this,b=a.highlightedItem,d=a.overItemCls;if(b!==c){if(b){Ext.fly(b).removeCls(d);if(Ext.isIE8){a.repaintBorder(b);a.repaintBorder(b.nextSibling)}if(a.hasListeners.unhighlightitem){a.fireEvent('unhighlightitem',a,b)}}a.highlightedItem=c;if(c){Ext.fly(c).addCls(a.overItemCls);if(Ext.isIE8){a.repaintBorder(c.nextSibling)}if(a.hasListeners.highlightitem){a.fireEvent('highlightitem',a,c)}}}},highlightItem:function(a){this.setHighlightedItem(a)},clearHighlight:function(){this.setHighlightedItem(undefined)},handleUpdate:function(f,e){var a=this,d,c,b;if(a.viewReady){d=a.getNode(e);c=Ext.view.AbstractView.prototype.handleUpdate.apply(this,arguments);b=a.highlightedItem;if(b&&b===d){delete a.highlightedItem;if(c){a.highlightItem(c)}}}},refresh:function(){this.clearHighlight();Ext.view.AbstractView.prototype.refresh.apply(this,arguments)},focusNode:function(h){var g=this,e=g.getNode(h),f=g.el,d=0,c=0,a=f.getRegion(),b;a.bottom=a.top+f.dom.clientHeight;a.right=a.left+f.dom.clientWidth;if(e){b=Ext.fly(e).getRegion();if(b.top<a.top){d=b.top-a.top}else {if(b.bottom>a.bottom){d=b.bottom-a.bottom}}if(b.left<a.left){c=b.left-a.left}else {if(b.right>a.right){c=b.right-a.right}}if(c||d){g.scrollBy(c,d,!1)}Ext.fly(e).set({tabIndex:-1});e.focus()}},bindStore:function(c,f,d){var b=this,a=b[d],e=b.getSelectionModel();if(a&&a.isFeatureStore&&b.rendered){e.bindStore(a.store);e.bindComponent(b);if(c.isFeatureStore){b.bindStoreListeners(c);a.bindStore(a.store)}else {a.bindStore(c)}}else {Ext.view.AbstractView.prototype.bindStore.call(this,c,f,d)}},privates:{repaintBorder:function(b){var a=this.getNode(b);if(a){a.className=a.className}}}},0,['dataview'],['component','box','dataview'],{'component':!0,'box':!0,'dataview':!0},['widget.dataview'],0,[Ext.view,'View',Ext,'DataView'],0);Ext.cmd.derive('Ext.view.BoundListKeyNav',Ext.view.NavigationModel,{navigateOnSpace:!0,initKeyNav:function(c){var a=this,b=c.pickerField;if(!a.keyNav){Ext.view.NavigationModel.prototype.initKeyNav.call(this,c);a.keyNav.map.addBinding({key:Ext.event.Event.ESC,fn:a.onKeyEsc,scope:a})}if(!b){return}if(!b.rendered){b.on('render',Ext.Function.bind(a.initKeyNav,a,[c],0),a,{single:!0});return}a.fieldKeyNav=new Ext.util.KeyNav({disabled:!0,target:b.inputEl,forceKeyDown:!0,up:a.onKeyUp,down:a.onKeyDown,right:a.onKeyRight,left:a.onKeyLeft,pageDown:a.onKeyPageDown,pageUp:a.onKeyPageUp,home:a.onKeyHome,end:a.onKeyEnd,tab:a.onKeyTab,space:a.onKeySpace,enter:a.onKeyEnter,A:{ctrl:!0,handler:a.onSelectAllKeyPress},scope:a})},processViewEvent:function(b,c,e,d,a){if(a.within(b.listWrap)){return a}if(a.getKey()===a.ESC){if(Ext.fly(a.target).isInputField()){a.target=a.target.parentNode}return a}},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(e,b,d,c,a){Ext.view.NavigationModel.prototype.onItemMouseDown.call(this,e,b,d,c,a);a.preventDefault()},onKeyUp:function(){var d=this,a=d.view,f=a.all,c=a.highlightedItem,b=c?a.indexOf(c):-1,e=b>0?b-1:f.getCount()-1;d.setPosition(e)},onKeyDown:function(){var d=this,a=d.view,f=a.all,c=a.highlightedItem,b=c?a.indexOf(c):-1,e=b<f.getCount()-1?b+1:0;d.setPosition(e)},onKeyLeft:Ext.returnTrue,onKeyRight:Ext.returnTrue,onKeyTab:function(c){var b=this.view,a=b.pickerField;if(b.isVisible()){if(a.selectOnTab){this.selectHighlighted(c)}if(a.collapse){a.collapse()}}return !0},onKeyEnter:function(d){var c=this.view,b=c.getSelectionModel(),a=c.pickerField,e=b.getCount();d.stopEvent();this.selectHighlighted(d);if(!a.multiSelect&&e===b.getCount()&&a.collapse){a.collapse()}},onKeySpace:function(){if(this.navigateOnSpace){Ext.view.NavigationModel.prototype.onKeySpace.apply(this,arguments)}return !0},onKeyEsc:function(){if(this.view.pickerField){this.view.pickerField.collapse()}},focusItem:function(a){var c=this,b=c.view;if(typeof a==='number'){a=b.all.item(a)}if(a){a=a.dom;b.highlightItem(a);b.getScrollable().scrollIntoView(a,!1)}},selectHighlighted:function(d){var c=this,b=c.view,e=b.getSelectionModel(),a,f=c.recordIndex;if(b.all.getCount()){a=c.getRecord();if(a){if(d.getKey()===d.ENTER||!e.isSelected(a)){e.selectWithEvent(a,d);if(!b.store.data.contains(a)){c.setPosition(Math.min(f,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.SizeModel',Ext.Base,{constructor:function(e){var a=this,b=a.self,d=b.sizeModelsArray,c;Ext.apply(a,e);a[c=a.name]=!0;a.fixed=!(a.auto=a.natural||a.shrinkWrap);d[a.ordinal=d.length]=b[c]=b.sizeModels[c]=a},statics:{sizeModelsArray:[],sizeModels:{}},calculated:!1,configured:!1,constrainedMax:!1,constrainedMin:!1,natural:!1,shrinkWrap:!1,calculatedFromConfigured:!1,calculatedFromNatural:!1,calculatedFromShrinkWrap:!1,names:null},1,0,0,0,0,0,[Ext.layout,'SizeModel'],function(){var a=this,d=a.sizeModelsArray,b,c,f,g,e;new a({name:'calculated'});new a({name:'configured',names:{width:'width',height:'height'}});new a({name:'natural'});new a({name:'shrinkWrap'});new a({name:'calculatedFromConfigured',configured:!0,calculatedFrom:!0,names:{width:'width',height:'height'}});new a({name:'calculatedFromNatural',natural:!0,calculatedFrom:!0});new a({name:'calculatedFromShrinkWrap',shrinkWrap:!0,calculatedFrom:!0});new a({name:'constrainedMax',configured:!0,constrained:!0,names:{width:'maxWidth',height:'maxHeight'}});new a({name:'constrainedMin',configured:!0,constrained:!0,names:{width:'minWidth',height:'minHeight'}});new a({name:'constrainedDock',configured:!0,constrained:!0,constrainedByMin:!0,names:{width:'dockConstrainedWidth',height:'dockConstrainedHeight'}});for(b=0,f=d.length;b<f;++b){e=d[b];e.pairsByHeightOrdinal=g=[];for(c=0;c<f;++c){g.push({width:e,height:d[c]})}}});Ext.cmd.derive('Ext.layout.Layout',Ext.Base,{factoryConfig:{type:'layout'},isLayout:!0,initialized:!1,running:!1,needsItemSize:!0,setsItemSize:!0,autoSizePolicy:{readsWidth:1,readsHeight:1,setsWidth:0,setsHeight:0},$configPrefixed:!1,$configStrict:!1,constructor:function(b){var a=this;a.id=Ext.id(null,a.type+'-');a.initConfig(b);delete a.type;a.layoutCount=0},beginLayout:Ext.emptyFn,beginLayoutCycle:function(b){var a=this,d=a.context,c;if(a.lastWidthModel!==b.widthModel){if(a.lastWidthModel){c=!0}a.lastWidthModel=b.widthModel}if(a.lastHeightModel!==b.heightModel){if(a.lastWidthModel){c=!0}a.lastHeightModel=b.heightModel}if(c){(d=b.context).clearTriggers(a,!1);d.clearTriggers(a,!0);a.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 !1},isItemLayoutRoot:function(d){var a=d.getSizeModel(),c=a.width,b=a.height;if(!d.componentLayout.lastComponentSize&&(c.calculated||b.calculated)){return !1}return !c.shrinkWrap&&!b.shrinkWrap},isItemShrinkWrap:function(a){return a.shrinkWrap},isRunning:function(){return !!this.ownerContext},getItemsRenderTree:function(g,c){var f=g.length,d,a,b,e;if(f){e=[];for(d=0;d<f;++d){a=g[d];if(!a.rendered){if(c&&c[a.id]!==undefined){b=c[a.id]}else {this.configureItem(a);b=a.getRenderTree();if(c){c[a.id]=b}}if(b){e.push(b)}}}}return e},finishRender:Ext.emptyFn,finishRenderItems:function(e,c){var d=c.length,a,b;for(a=0;a<d;a++){b=c[a];if(b.rendering){b.finishRender(a)}}},renderChildren:function(){var a=this,c=a.getLayoutItems(),b=a.getRenderTarget();a.renderItems(c,b)},renderItems:function(e,d){var c=this,f=e.length,b=0,a;if(f){Ext.suspendLayouts();for(;b<f;b++){a=e[b];if(a&&!a.rendered){c.renderItem(a,d,b)}else {if(!c.isValidParent(a,d,b)){c.moveItem(a,d,b)}else {c.configureItem(a)}}}Ext.resumeLayouts(!0)}},isValidParent:function(e,d,a){var b=d&&d.dom||d,c=this.getItemLayoutEl(e);if(c&&b){if(typeof a==='number'){a=this.getPositionOffset(a);return c===b.childNodes[a]}return c.parentNode===b}return !1},getItemLayoutEl:function(c){var a=c.el?c.el.dom:Ext.getDom(c),d=a.parentNode,b;if(d){b=d.className;if(b&&b.indexOf('x-resizable-wrap')!==-1){a=a.parentNode}}return a},getPositionOffset:function(a){return a},configureItem:function(a){a.ownerLayout=this},renderItem:function(a,c,b){var d=this;if(!a.rendered){d.configureItem(a);a.render(c,b)}},moveItem:function(c,a,b){a=a.dom||a;if(typeof b==='number'){b=a.childNodes[b]}a.insertBefore(c.el.dom,b||null);c.container=Ext.get(a);this.configureItem(c)},onContentChange:function(){this.owner.updateLayout();return !0},initLayout:function(){this.initialized=!0},setOwner:function(a){this.owner=a},getLayoutItems:function(){return []},onAdd:function(a){a.ownerLayout=this},onRemove:Ext.emptyFn,onDestroy:Ext.emptyFn,afterRemove:function(b){var d=this,e=b.el,c=d.owner,a;if(b.rendered){a=[].concat(d.itemCls||[]);if(c.itemCls){a=Ext.Array.push(a,c.itemCls)}if(a.length){e.removeCls(a)}}delete b.ownerLayout},afterCollapse:function(b,a){if(a){this.onContentChange(b)}},afterExpand:function(b,a){if(a){this.onContentChange(b)}},destroy:function(){var a=this,b;if(a.targetCls){b=a.getTarget();if(b){b.removeCls(a.targetCls)}}a.onDestroy()},sortWeightedItems:function(b,d){for(var a=0,c=b.length;a<c;++a){b[a].$i=a}Ext.Array.sort(b,function(c,e){var a=e.weight-c.weight;if(!a){a=c.$i-e.$i;if(c[d]){a=-a}}return a});for(a=0;a<c;++a){delete b[a].$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.component.Component',Ext.layout.Layout,{type:'component',isComponentLayout:!0,nullBox:{},usesContentHeight:!0,usesContentWidth:!0,usesHeight:!0,usesWidth:!0,widthCache:{},heightCache:{},beginLayoutCycle:function(a,j){var c=this,f=c.owner,p=a.ownerCtContext,g=a.heightModel,h=a.widthModel,o=f.el.dom===document.body,e=f.lastBox||c.nullBox,d=f.el.lastBox||c.nullBox,m=!o,k=a.isTopLevel,i,b,n,l;Ext.layout.Layout.prototype.beginLayoutCycle.call(this,a,j);if(j){if(c.usesContentWidth){++a.consumersContentWidth}if(c.usesContentHeight){++a.consumersContentHeight}if(c.usesWidth){++a.consumersWidth}if(c.usesHeight){++a.consumersHeight}if(p&&!p.hasRawContent){i=f.ownerLayout;if(i){if(i.usesWidth){++a.consumersWidth}if(i.usesHeight){++a.consumersHeight}}}}if(h.configured){n=f[h.names.width];if(k&&h.calculatedFrom){n=e.width}if(!o){m=c.setWidthInDom||(j?n!==d.width:h.constrained)}a.setWidth(n,m)}else {if(k){if(h.calculated){b=e.width;a.setWidth(b,b!==d.width)}b=e.x;a.setProp('x',b,b!==d.x)}}if(g.configured){l=f[g.names.height];if(k&&g.calculatedFrom){l=e.height}if(!o){m=j?l!==d.height:g.constrained}a.setHeight(l,m)}else {if(k){if(g.calculated){b=e.height;a.setHeight(b,b!==d.height)}b=e.y;a.setProp('y',b,b!==d.y)}}},finishedLayout:function(c){var h=this,e=c.children,g=h.owner,i,d,f,a,b;if(e){i=e.length;for(d=0;d<i;d++){f=e[d];f.el.lastBox=f.props}}c.previousSize=h.lastComponentSize;h.lastComponentSize=g.el.lastBox=b=c.props;a=g.lastBox||(g.lastBox={});a.x=b.x;a.y=b.y;a.width=b.width;a.height=b.height;a.invalid=!1;Ext.layout.Layout.prototype.finishedLayout.call(this,c)},notifyOwner:function(e){var c=this,d=c.lastComponentSize,a=e.previousSize,b=[d.width,d.height,undefined,undefined];if(a){b[2]=a.width;b[3]=a.height}c.owner.afterComponentLayout.apply(c.owner,b)},getTarget:function(){return this.owner.el},getRenderTarget:function(){return this.owner.el},cacheTargetInfo:function(d){var c=this,a=c.targetInfo,b;if(!a){b=d.getEl('getTarget',c);c.targetInfo=a={padding:b.getPaddingInfo(),border:b.getBorderInfo()}}return a},measureAutoDimensions:function(a,w){var h=this,u=h.owner,i=u.layout,t=a.heightModel,s=a.widthModel,g=a.boxParent,n=a.isBoxParent,j=a.target,q=a.props,r,b={gotWidth:!1,gotHeight:!1,isContainer:r=!a.hasRawContent},v=w||3,p,o,m=0,d=0,c,e,f,l,k;if(s.shrinkWrap&&a.consumersContentWidth){++m;p=!(v&1);if(r){if(p){b.contentWidth=0;b.gotWidth=!0;++d}else {if((b.contentWidth=a.getProp('contentWidth'))!==undefined){b.gotWidth=!0;++d}}}else {e=q.contentWidth;if(typeof e==='number'){b.contentWidth=e;b.gotWidth=!0;++d}else {if(p){c=!0}else {if(!a.hasDomProp('containerChildrenSizeDone')){c=!1}else {if(n||!g||g.widthModel.shrinkWrap){c=!0}else {c=g.hasDomProp('width')}}}if(c){if(p){f=0}else {if(i&&i.measureContentWidth){f=i.measureContentWidth(a)}else {if(j.cacheWidth){l=j.xtype+'-'+j.ui;k=h.widthCache;f=k[l]||(k[l]=h.measureContentWidth(a))}else {f=h.measureContentWidth(a)}}}if(!isNaN(b.contentWidth=f)){a.setContentWidth(f,!0);b.gotWidth=!0;++d}}}}}else {if(s.natural&&a.consumersWidth){++m;e=q.width;if(typeof e==='number'){b.width=e;b.gotWidth=!0;++d}else {if(n||!g){c=!0}else {c=g.hasDomProp('width')}if(c){if(!isNaN(b.width=h.measureOwnerWidth(a))){a.setWidth(b.width,!1);b.gotWidth=!0;++d}}}}}if(t.shrinkWrap&&a.consumersContentHeight){++m;o=!(v&2);if(r){if(o){b.contentHeight=0;b.gotHeight=!0;++d}else {if((b.contentHeight=a.getProp('contentHeight'))!==undefined){b.gotHeight=!0;++d}}}else {e=q.contentHeight;if(typeof e==='number'){b.contentHeight=e;b.gotHeight=!0;++d}else {if(o){c=!0}else {if(!a.hasDomProp('containerChildrenSizeDone')){c=!1}else {if(u.noWrap){c=!0}else {if(!s.shrinkWrap){c=(a.bodyContext||a).hasDomProp('width')}else {if(n||!g||g.widthModel.shrinkWrap){c=!0}else {c=g.hasDomProp('width')}}}}}if(c){if(o){f=0}else {if(i&&i.measureContentHeight){f=i.measureContentHeight(a)}else {if(j.cacheHeight){l=j.xtype+'-'+j.ui;k=h.heightCache;f=k[l]||(k[l]=h.measureContentHeight(a))}else {f=h.measureContentHeight(a)}}}if(!isNaN(b.contentHeight=f)){a.setContentHeight(f,!0);b.gotHeight=!0;++d}}}}}else {if(t.natural&&a.consumersHeight){++m;e=q.height;if(typeof e==='number'){b.height=e;b.gotHeight=!0;++d}else {if(n||!g){c=!0}else {c=g.hasDomProp('width')}if(c){if(!isNaN(b.height=h.measureOwnerHeight(a))){a.setHeight(b.height,!1);b.gotHeight=!0;++d}}}}}if(g){a.onBoxMeasured()}b.gotAll=d===m;return b},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:!1,setWidthInDom:!1,waitForOuterHeightInDom:!1,waitForOuterWidthInDom:!1,beginLayoutCycle:function(d,f){var a=this,c=a.lastWidthModel,b=a.lastHeightModel,e=a.owner.el;Ext.layout.component.Component.prototype.beginLayoutCycle.apply(this,arguments);if(c&&c.fixed&&d.widthModel.shrinkWrap){e.setWidth(null)}if(b&&b.fixed&&d.heightModel.shrinkWrap){e.setHeight(null)}},calculate:function(b){var a=this,c=a.measureAutoDimensions(b),f=b.heightModel,g=b.widthModel,e,d;if(c.gotWidth){if(g.shrinkWrap){a.publishOwnerWidth(b,c.contentWidth)}else {if(a.publishInnerWidth){a.publishInnerWidth(b,c.width)}}}else {if(!g.auto&&a.publishInnerWidth){e=a.waitForOuterWidthInDom?b.getDomProp('width'):b.getProp('width');if(e===undefined){a.done=!1}else {a.publishInnerWidth(b,e)}}}if(c.gotHeight){if(f.shrinkWrap){a.publishOwnerHeight(b,c.contentHeight)}else {if(a.publishInnerHeight){a.publishInnerHeight(b,c.height)}}}else {if(!f.auto&&a.publishInnerHeight){d=a.waitForOuterHeightInDom?b.getDomProp('height'):b.getProp('height');if(d===undefined){a.done=!1}else {a.publishInnerHeight(b,d)}}}if(!c.gotAll){a.done=!1}},calculateOwnerHeightFromContentHeight:function(b,a){return a+b.getFrameInfo().height},calculateOwnerWidthFromContentWidth:function(b,a){return a+b.getFrameInfo().width},publishOwnerHeight:function(b,h){var c=this,g=c.owner,a=c.calculateOwnerHeightFromContentHeight(b,h),d,f,e;if(isNaN(a)){c.done=!1}else {d=Ext.Number.constrain(a,g.minHeight,g.maxHeight);if(d===a){f=c.setHeightInDom}else {e=c.sizeModels[d<a?'constrainedMax':'constrainedMin'];a=d;if(b.heightModel.calculatedFromShrinkWrap){b.heightModel=e}else {b.invalidate({heightModel:e})}}b.setHeight(a,f)}},publishOwnerWidth:function(b,h){var c=this,g=c.owner,a=c.calculateOwnerWidthFromContentWidth(b,h),d,f,e;if(isNaN(a)){c.done=!1}else {d=Ext.Number.constrain(a,g.minWidth,g.maxWidth);if(d===a){f=c.setWidthInDom}else {e=c.sizeModels[d<a?'constrainedMax':'constrainedMin'];a=d;if(b.widthModel.calculatedFromShrinkWrap){b.widthModel=e}else {b.invalidate({widthModel:e})}}b.setWidth(a,f)}}},0,0,0,0,['layout.autocomponent'],0,[Ext.layout.component,'Auto'],0);Ext.cmd.derive('Ext.layout.component.BoundList',Ext.layout.component.Auto,{type:'component',beginLayout:function(a){var d=this,b=d.owner,c=b.pagingToolbar;d.scrollPos=b.listWrap.getScroll();Ext.layout.component.Auto.prototype.beginLayout.apply(this,arguments);if(b.floating){a.savedXY=b.getXY();b.setXY([0,-9999])}if(c){a.toolbarContext=a.context.getCmp(c)}a.listContext=a.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 !0},finishedLayout:function(e){var a=this,d=e.savedXY,f=a.owner,c=f.listWrap,b=a.scrollPos;Ext.layout.component.Auto.prototype.finishedLayout.apply(this,arguments);if(d){a.owner.setXY(d)}c.setScrollLeft(b.left);c.setScrollTop(b.top)},measureContentWidth:function(a){return this.owner.listWrap.getWidth()},measureContentHeight:function(a){return this.owner.listWrap.getHeight()},publishInnerHeight:function(b,d){var c=b.toolbarContext,a=0;if(c){a=c.getProp('height')}if(a===undefined){this.done=!1}else {b.listContext.setHeight(d-b.getFrameInfo().height-a)}},calculateOwnerHeightFromContentHeight:function(c){var b=Ext.layout.component.Auto.prototype.calculateOwnerHeightFromContentHeight.apply(this,arguments),a=c.toolbarContext;if(a){b+=a.getProp('height')}return b}},0,0,0,0,['layout.boundlist'],0,[Ext.layout.component,'BoundList'],0);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:!0,usesContainerWidth:!0,usesHeight:!0,usesWidth:!0,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(a,c){var b=this;Ext.layout.Layout.prototype.beginLayoutCycle.apply(this,arguments);if(c){if(b.usesContainerHeight){++a.consumersContainerHeight}if(b.usesContainerWidth){++a.consumersContainerWidth}}},cacheChildItems:function(b){var d=this,f,e,c,g,a;if(d.needsItemSize||d.setsItemSize){f=b.context;e=b.childItems=[];c=b.visibleItems=d.getVisibleItems();g=c.length;for(a=0;a<g;++a){e.push(f.getCmp(c[a]))}}},cacheElements:function(){var a=this.owner;this.attachChildEls(a.el,a)},calculate:function(a){var b=a.props,c=a.el;if(a.widthModel.shrinkWrap&&isNaN(b.width)){a.setContentWidth(c.getWidth())}if(a.heightModel.shrinkWrap&&isNaN(b.height)){a.setContentHeight(c.getHeight())}},configureItem:function(f){var c=this,b=c.itemCls,d=c.owner.itemCls,e,a;f.ownerLayout=c;if(b){if(typeof b==='string'){a=[b]}else {a=b;e=!!a}}if(d){if(e){a=Ext.Array.clone(a)}a=Ext.Array.push(a||[],d)}if(a){f.addCls(a)}},doRenderBody:function(b,a){this.renderItems(b,a);this.renderContent(b,a)},doRenderContainer:function(d,b){var a=b.$comp.layout,e=a.getRenderTpl(),c=a.getRenderData();e.applyOut(c,d)},doRenderItems:function(c,b){var d=b.$layout,a=d.getRenderTree();if(a){Ext.DomHelper.generateMarkup(a,c)}},finishRender:function(){var a=this,b,c;Ext.layout.Layout.prototype.finishRender.call(this);a.cacheElements();b=a.getRenderTarget();c=a.getLayoutItems();a.finishRenderItems(b,c)},notifyOwner:function(){this.owner.afterLayout(this)},getContainerSize:function(d,k){var c=d.targetContext,i=c.getFrameInfo(),j=d.paddingContext.getPaddingInfo(),f=0,e=0,h,g,b,a;if(!d.widthModel.shrinkWrap){++e;b=k?c.getDomProp('width'):c.getProp('width');h=typeof b==='number';if(h){++f;b-=i.width+j.width;if(b<0){b=0}}}if(!d.heightModel.shrinkWrap){++e;a=k?c.getDomProp('height'):c.getProp('height');g=typeof a==='number';if(g){++f;a-=i.height+j.height;if(a<0){a=0}}}return {width:b,height:a,needed:e,got:f,gotAll:f===e,gotWidth:h,gotHeight:g}},getPositionOffset:function(a){if(!this.createsInnerCt){var b=this.owner.itemNodeOffset;if(b){a+=b}}return a},getLayoutItems:function(){var b=this.owner,a=b&&b.items;return a&&a.items||[]},getRenderData:function(){var a=this.owner;return {$comp:a,$layout:this,ownerId:a.id}},getRenderedItems:function(){var c=this,f=c.getRenderTarget(),e=c.getLayoutItems(),g=e.length,d=[],a,b;for(a=0;a<g;a++){b=e[a];if(b.rendered&&c.isValidParent(b,f,a)){d.push(b)}}return d},getRenderTarget:function(){return this.owner.getTargetEl()},getElementTarget:function(){return this.getRenderTarget()},getRenderTpl:function(){var b=this,a=Ext.XTemplate.getTpl(this,'renderTpl');if(!a.renderContent){b.owner.setupRenderTpl(a)}return a},getRenderTree:function(){var b,c=this.owner.items,a,d={};do{a=c.generation;b=this.getItemsRenderTree(this.getLayoutItems(),d)}while(c.generation!==a);return b},renderChildren:function(){var a=this,b=a.owner.items,e=a.getRenderTarget(),c,d;do{c=b.generation;d=a.getLayoutItems();a.renderItems(d,e)}while(b.generation!==c)},getScrollbarsNeeded:function(d,b,h,e){var c=Ext.getScrollbarSize(),i=typeof d==='number',f=typeof b==='number',g=0,a=0;if(!c.width){return 0}if(f&&b<e){a=2;d-=c.width}if(i&&d<h){g=1;if(!a&&f){b-=c.height;if(b<e){a=2}}}return a+g},getTarget:function(){return this.owner.getTargetEl()},getVisibleItems:function(){var e=this.getRenderTarget(),d=this.getLayoutItems(),f=d.length,c=[],b,a;for(b=0;b<f;b++){a=d[b];if(a.rendered&&this.isValidParent(a,e,b)&&a.hidden!==!0&&!a.floated){c.push(a)}}return c},getMoveAfterIndex:function(a){return this.owner.items.indexOf(a)+1},moveItemBefore:function(b,c){var f=this.owner,d=f.items,e=d.indexOf(b),a;if(b===c){return b}if(c){a=d.indexOf(c);if(e>-1&&e<a){--a}}else {a=d.length}return f.insert(a,b)},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:!1,managePadding:!0,manageOverflow:!1,needsItemSize:!1,setsItemSize:!1,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 a=this.owner,c=a.inheritedState,b=a.inheritedStateInner;if(!c||c.invalid){c=a.getInherited();b=a.inheritedStateInner}if(d.widthModel.shrinkWrap){b.inShrinkWrapTable=!0}else {delete b.inShrinkWrapTable}},beginLayoutCycle:function(e){var a=this,g=a.outerCt,l=a.lastOuterCtWidth||'',k=a.lastOuterCtHeight||'',j=a.lastOuterCtTableLayout||'',i=e.state,f,d,c,b,h;Ext.layout.container.Container.prototype.beginLayoutCycle.apply(this,arguments);d=c=b='';if(!e.widthModel.shrinkWrap){d='100%';h=a.owner.inheritedStateInner;f=a.getOverflowXStyle(e);b=h.inShrinkWrapTable||f==='auto'||f==='scroll'?'':'fixed'}if(!e.heightModel.shrinkWrap&&!Ext.supports.PercentageHeightOverflowBug){c='100%'}if(d!==l||a.hasOuterCtPxWidth){g.setStyle('width',d);a.lastOuterCtWidth=d;a.hasOuterCtPxWidth=!1}if(b!==j){g.setStyle('table-layout',b);a.lastOuterCtTableLayout=b}if(c!==k||a.hasOuterCtPxHeight){g.setStyle('height',c);a.lastOuterCtHeight=c;a.hasOuterCtPxHeight=!1}if(a.hasInnerCtPxHeight){a.innerCt.setStyle('height','');a.hasInnerCtPxHeight=!1}i.overflowAdjust=i.overflowAdjust||a.lastOverflowAdjust},calculate:function(b){var a=this,d=b.state,c=a.getContainerSize(b,!0),e=d.calculatedItems||(d.calculatedItems=a.calculateItems?a.calculateItems(b,c):!0);a.setCtSizeIfNeeded(b,c);if(e&&b.hasDomProp('containerChildrenSizeDone')){a.calculateContentSize(b);if(c.gotAll){if(a.manageOverflow&&!b.state.secondPass&&!a.reserveScrollbar){a.calculateOverflow(b,c)}return}}a.done=!1},calculateContentSize:function(a){var b=this,f=(a.widthModel.shrinkWrap?1:0)|(a.heightModel.shrinkWrap?2:0),d=f&1||undefined,c=f&2||undefined,e=0,g=a.props;if(d){if(isNaN(g.contentWidth)){++e}else {d=undefined}}if(c){if(isNaN(g.contentHeight)){++e}else {c=undefined}}if(e){if(d&&!a.setContentWidth(b.measureContentWidth(a))){b.done=!1}if(c&&!a.setContentHeight(b.measureContentHeight(a))){b.done=!1}}},calculateOverflow:function(d){var c=this,g,f,e,a,h,i,b;h=c.getOverflowXStyle(d)==='auto';i=c.getOverflowYStyle(d)==='auto';if(h||i){e=Ext.getScrollbarSize();b=d.overflowContext.el.dom;a=0;if(b.scrollWidth>b.clientWidth){a|=1}if(b.scrollHeight>b.clientHeight){a|=2}g=i&&a&2?e.width:0;f=h&&a&1?e.height:0;if(g!==c.lastOverflowAdjust.width||f!==c.lastOverflowAdjust.height){c.done=!1;d.invalidate({state:{overflowAdjust:{width:g,height:f},overflowState:a,secondPass:!0}})}}},completeLayout:function(a){this.lastOverflowAdjust=a.state.overflowAdjust},doRenderBody:function(b,a){var c=a.$layout,d=Ext.XTemplate,e=c.beforeBodyTpl,f=c.afterBodyTpl;if(e){d.getTpl(c,'beforeBodyTpl').applyOut(a,b)}this.renderItems(b,a);this.renderContent(b,a);if(f){d.getTpl(c,'afterBodyTpl').applyOut(a,b)}},doRenderPadding:function(d,b){var e=b.$layout,a=b.$layout.owner,c=a[a.contentPaddingProperty];if(e.managePadding&&c){d.push('padding:',a.unitizeBox(c))}},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(c,d){var b=Ext.layout.container.Container.prototype.getContainerSize.apply(this,arguments),a=c.state.overflowAdjust;if(a){b.width-=a.width;b.height-=a.height}return b},getRenderData:function(){var b=this,a=Ext.layout.container.Container.prototype.getRenderData.call(this);a.innerCtCls=b.innerCtCls;a.outerCtCls=b.outerCtCls;return a},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(a){var b=this,d=a.target,c=b.owner.getOverflowEl();a.outerCtContext=a.getEl('outerCt',b);a.innerCtContext=a.getEl('innerCt',b);a.overflowContext=c===a.el?a:a.getEl(c);if(d[d.contentPaddingProperty]!==undefined){a.paddingContext=a.innerCtContext}},initLayout:function(){var a=this,b=Ext.getScrollbarSize().width,c=a.owner;Ext.layout.container.Container.prototype.initLayout.call(this);if(b&&a.manageOverflow&&!a.hasOwnProperty('lastOverflowAdjust')){if(c.scrollable||a.reserveScrollbar){a.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(f){var a,b,e,c,d;if(this.chromeCellMeasureBug){a=this.innerCt.dom;b=a.style;e=b.display;if(e==='table-cell'){b.display='';a.offsetWidth;b.display=e}}if(Ext.isSafari){a=this.outerCt.dom;b=a.style;b.display='table-cell';a.offsetWidth;a.style.display=''}c=this.outerCt.getWidth();d=f.target;if(this.managePadding&&d[d.contentPaddingProperty]===undefined){c+=f.targetContext.getPaddingInfo().width}return c},setCtSizeIfNeeded:function(a,h){var c=this,b=h.height,k=a.paddingContext.getPaddingInfo(),g=c.getTarget(),f=c.getOverflowXStyle(a),j=f==='auto'||f==='scroll',i=Ext.getScrollbarSize(),e,d;if(b&&!a.heightModel.shrinkWrap){if(Ext.supports.PercentageHeightOverflowBug){e=!0}if(Ext.isIE8){d=!0}if((e||d)&&j&&g.dom.scrollWidth>g.dom.clientWidth){b=Math.max(b-i.height,0)}if(e){a.outerCtContext.setProp('height',b+k.height);c.hasOuterCtPxHeight=!0}if(d){a.innerCtContext.setProp('height',b);c.hasInnerCtPxHeight=!0}}},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(b){var a=this;a.id=Ext.id(null,'zindex-mgr-');a.zIndexStack=new Ext.util.Collection({sorters:{sorterFn:function(c,d){var a=(c.alwaysOnTop||0)-(d.alwaysOnTop||0);if(!a){a=c.getActiveCounter()-d.getActiveCounter()}return a}},filters:{filterFn:function(a){return a.isVisible()}}});a.zIndexStack.addObserver(a);a.front=null;a.globalListeners=Ext.GlobalEvents.on({hide:a.onComponentShowHide,show:a.onComponentShowHide,scope:a,destroyable:!0});if(b){if(b.isContainer){b.on('resize',a.onContainerResize,a);a.zseed=Ext.Number.from(a.rendered?b.getEl().getStyle('zIndex'):undefined,a.getNextZSeed());a.targetEl=b.getTargetEl();a.container=b}else {Ext.on('resize',a.onContainerResize,a);a.zseed=a.getNextZSeed();a.targetEl=Ext.get(b)}}else {a.zseed=a.getNextZSeed();Ext.onInternalReady(function(){Ext.on('resize',a.onContainerResize,a);a.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 d=this,b=d.front,g=d.zseed,i=d.zIndexStack.getRange(),j=i.length,e,c,f,a,h=!1;for(e=0;e<j;e++){c=i[e];g=c.setZIndex(g);if(!c.hidden){a=c;if(c.modal){f=c}}}if(a!==b){if(b&&!b.destroying){b.setActive(!1)}if(a){h=a.modal||(!b||b.isVisible())&&(a.focusOnToFront&&!a.preventFocusOnActivate)&&a.isFocusable(!0);a.setActive(!0,h)}}d.front=a;if(f){d.showModalMask(f)}else {d.hideModalMask()}return g},onComponentUpdate:function(a){if(this.zIndexStack.contains(a)){this.zIndexStack.sort()}},onComponentRender:function(a){this.zIndexStack.itemChanged(a,'hidden')},onComponentShowHide:function(b){var a=this.zIndexStack;if(b.isFloating()&&!this.hidingAll&&(a.getSource()||a).contains(b)){a.itemChanged(b,'hidden');a.sort()}},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:!0})}b.zIndexStack.add(a)},unregister:function(b){var a=this;delete b.zIndexManager;b.un('render',a.onComponentRender,a);a.zIndexStack.remove(b);a.onCollectionSort()},get:function(a){return a.isComponent?a:this.zIndexStack.get(a)},bringToFront:function(a,f){var e=this,b=e.zIndexStack,g=b.last(),c,d;a=e.get(a);if(!a||b.find('alwaysOnTop',!0)){return !1}d=a.preventFocusOnActivate;a.preventFocusOnActivate=f;a.setActiveCounter(++Ext.ZIndexManager.activeCounter);a.preventFocusOnActivate=d;c=b.last();return c===a&&c!==g},sendToBack:function(a){a=this.get(a);if(a){a.setActiveCounter(0)}return a||null},hideAll:function(){var b=this.zIndexStack.getRange(),c=b.length,a;this.hidingAll=!0;for(a=0;a<c;a++){b[a].hide()}this.hidingAll=!1},hide:function(){var b=this,d=Ext.Element.getActiveElement(),e=b.tempHidden=b.zIndexStack.getRange(),f=e.length,c,a;b.focusRestoreElement=null;for(c=0;c<f;c++){a=e[c];if(a.el.contains(d)){b.focusRestoreElement=d}a.el.hide();a.hidden=!0}},show:function(){var b=this,c,d=b.tempHidden,e=d?d.length:0,a;for(c=0;c<e;c++){a=d[c];a.el.show();a.hidden=!1;a.setPosition(a.x,a.y)}b.tempHidden=null;if(b.focusRestoreElement){b.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(f,d){var c=this.zIndexStack.getRange(),b,e=c.length,a;for(b=0;b<e;b++){a=c[b];if(a.isComponent&&f.call(d||a,a)===!1){return}}},eachTopDown:function(e,d){var c=this.zIndexStack.getRange(),b,a;for(b=c.length;b-->0;){a=c[b];if(a.isComponent&&e.call(d||a,a)===!1){return}}},destroy:function(){var a=this,c=a.zIndexStack.getRange(),d=c.length,b;for(b=0;b<d;b++){Ext.destroy(c[b])}Ext.destroy(a.mask,a.maskShim,a.zIndexStack,a.globalListeners);a.zIndexStack=a.container=a.targetEl=a.globalListeners=null},privates:{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()}},hideModalMask:function(){var a=this.mask,d=this.maskShim,b,c;if(a&&a.isVisible()){b=a.maskTarget;c='data-savedtabindex-'+b.getId();b.restoreChildrenTabbableState(c);b.restoreTabbableState(c);a.maskTarget=undefined;a.hide();if(d){d.hide()}}},onContainerResize:function(){var d=this,b=d.mask,a=d.maskShim,c;if(b&&b.isVisible()){b.hide();if(a){a.hide()}c=d.getMaskBox();if(a){a.setSize(c);a.show()}b.setSize(c);b.show()}},onMaskClick:function(){if(this.front){this.front.focus()}},showModalMask:function(g){var b=this,c=g.el,k=c.getStyle('zIndex')-4,f=g.floatParent?g.floatParent.getTargetEl():g.container,a=b.mask,h=b.maskShim,j,e,d,i;if(!a){b.mask=a=Ext.getBody().createChild({role:'presentation',cls:'x-mask x-border-box',style:'height:0;width:0'});a.setVisibilityMode(Ext.Element.DISPLAY);a.on('click',b.onMaskClick,b)}else {b.hideModalMask()}a.maskTarget=f;j=b.getMaskBox();if(h){h.setStyle('zIndex',k);h.show();h.setBox(j)}a.setStyle('zIndex',k);e='data-savedtabindex-'+f.getId();d=e+'-temp';i=c.findTabbableElements();if(i.length){c.saveTabbableState(d);c.saveChildrenTabbableState(d)}f.saveTabbableState(e);f.saveChildrenTabbableState(e);if(i.length){c.restoreChildrenTabbableState(d);c.restoreTabbableState(d)}a.show();a.setBox(j)}}},1,0,0,0,0,0,[Ext,'ZIndexManager',Ext,'WindowGroup'],function(){Ext.WindowManager=Ext.WindowMgr=new this()});Ext.cmd.derive('Ext.mixin.Queryable',Ext.Base,{mixinId:'queryable',isQueryable:!0,query:function(a){a=a||'*';return Ext.ComponentQuery.query(a,this.getQueryRoot())},queryBy:function(g,e){var d=[],c=this.getQueryRoot().getRefItems(!0),b=0,f=c.length,a;for(;b<f;++b){a=c[b];if(g.call(e||a,a)!==!1){d.push(a)}}return d},queryById:function(a){return this.down(Ext.makeIdSelector(a))},child:function(b){var a=this.getQueryRoot().getRefItems();if(b&&b.isComponent){return this.matchById(a,b.getItemId())}if(b){a=Ext.ComponentQuery.query(b,a)}if(a.length){return a[0]}return null},down:function(a){if(a&&a.isComponent){return this.matchById(this.getRefItems(!0),a.getItemId())}a=a||'';return this.query(a)[0]||null},visitPreOrder:function(b,d,c,a){Ext.ComponentQuery._visit(!0,b,this.getQueryRoot(),d,c,a)},visitPostOrder:function(b,d,c,a){Ext.ComponentQuery._visit(!1,b,this.getQueryRoot(),d,c,a)},getRefItems:function(){return []},getQueryRoot:function(){return this},privates:{matchById:function(c,e){var d=c.length,a,b;for(a=0;a<d;++a){b=c[a];if(b.getItemId()===e){return b}}return null}}},0,0,0,0,0,0,[Ext.mixin,'Queryable'],0);Ext.cmd.derive('Ext.container.Container',Ext.Component,{alternateClassName:['Ext.Container','Ext.AbstractContainer'],renderTpl:'{%this.renderContainer(out,values)%}',isContainer:!0,autoDestroy:!0,defaultType:'panel',detachOnRemove:!0,items:undefined,layout:'auto',suspendLayout:!1,_applyDefaultsOptions:{defaults:!0,strict:!1},ariaRole:'presentation',baseCls:'x-container',layoutCounter:0,add:function(){var a=this,e=Ext.Array.slice(arguments),l=typeof e[0]==='number'?e.shift():-1,m=a.getLayout(),k=!1,j,d,f,h,b,c,i,g;if(e.length===1&&Ext.isArray(e[0])){d=e[0];j=!0}else {d=e}if(a.rendered){Ext.suspendLayouts()}i=d=a.prepareItems(d,!0);h=d.length;if(!j&&h===1){i=d[0]}for(f=0;f<h;f++){b=d[f];c=l<0?a.items.length:l+f;g=!!b.instancedCmp;delete b.instancedCmp;if(b.floating){a.floatingItems.add(b);b.onAdded(a,c,g);delete b.initOwnerCt;if(a.hasListeners.add){a.fireEvent('add',a,b,c)}}else {if((!a.hasListeners.beforeadd||a.fireEvent('beforeadd',a,b,c)!==!1)&&a.onBeforeAdd(b)!==!1){a.items.insert(c,b);b.onAdded(a,c,g);delete b.initOwnerCt;a.onAdd(b,c);m.onAdd(b,c);k=!0;if(a.hasListeners.add){a.fireEvent('add',a,b,c)}}}}if(k){a.updateLayout()}if(a.rendered){Ext.resumeLayouts(!0)}return i},onAdded:function(b,c,a){Ext.Component.prototype.onAdded.apply(this,arguments);if(a){Ext.ComponentManager.markReferencesDirty()}},onRemoved:function(b){var a;if(!b){a=this.lookupReferenceHolder();if(a){Ext.ComponentManager.markReferencesDirty();a.clearReferences()}}Ext.Component.prototype.onRemoved.apply(this,arguments)},afterComponentLayout:function(){var c=this.floatingItems.items,d=c.length,b,a;Ext.Component.prototype.afterComponentLayout.apply(this,arguments);for(b=0;b<d;b++){a=c[b];if(!a.rendered&&a.autoShow){a.show()}}},afterLayout:function(c){var a=this,b=a.getScrollable();++a.layoutCounter;if(b&&a.layoutCounter>1){b.refresh()}if(a.hasListeners.afterlayout){a.fireEvent('afterlayout',a,c)}},onDestroy:function(){Ext.Component.prototype.onDestroy.call(this);this.refs=null},beforeDestroy:function(){var a=this,d=a.items,c=a.floatingItems,b;if(d){while(b=d.first()){a.doRemove(b,!0)}}if(c){while(b=c.first()){a.doRemove(b,!0)}}Ext.destroy(a.layout);Ext.Component.prototype.beforeDestroy.call(this)},beforeRender:function(){var a=this,c=a.getLayout(),b;a.preventChildDisable=!0;Ext.Component.prototype.beforeRender.call(this);a.preventChildDisable=!1;if(!c.initialized){c.initLayout()}b=c.targetCls;if(b){a.applyTargetCls(b)}},cascade:function(f,e,d){var a=this,h=a.items?a.items.items:[],j=h.length,g=0,b,c=d?d.concat(a):[a],i=c.length-1;if(f.apply(e||a,c)!==!1){for(;g<j;g++){b=h[g];if(b.cascade){b.cascade(f,e,d)}else {c[i]=b;f.apply(e||b,c)}}}return this},contains:function(a,c){var b=!1;if(c){this.cascade(function(d){if(d.contains&&d.contains(a)){b=!0;return !1}});return b}else {return this.items.contains(a)||this.floatingItems.contains(a)}},disable:function(e,d){var a=this,g=a.disabled,c,f,b;Ext.Component.prototype.disable.call(this,e,d);if(!d&&!a.preventChildDisable&&!g){c=a.getChildItemsToDisable();f=c.length;for(b=0;b<f;b++){c[b].disable(e,!0)}}return a},doLayout:function(){this.updateLayout();return this},enable:function(d,g){var c=this,f=c.disabled,b,e,a;Ext.Component.prototype.enable.call(this,d,g);if(f){b=c.getChildItemsToDisable();e=b.length;for(a=0;a<e;a++){b[a].enable(d,!0)}}return c},getChildByElement:function(b,e){var a,c,d=0,f=this.getRefItems(),g=f.length;b=Ext.getDom(b);for(;d<g;d++){a=f[d];c=a.getEl();if(c&&(c.dom===b||c.contains(b))){return e&&a.getChildByElement?a.getChildByElement(b,e):a}}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},getFocusEl:function(){var a=this.getDefaultFocus();if(a){return a}else {if(this.focusable){return this.getTargetEl()}}return undefined},getLayout:function(){var b=this,a=b.layout;if(!a||!a.isLayout){b.setLayout(a)}return b.layout},getRefItems:function(f){var g=this,d=g.items.items,e=d.length,c=0,b,a=[];for(;c<e;c++){b=d[c];a[a.length]=b;if(f&&b.getRefItems){a.push.apply(a,b.getRefItems(!0))}}d=g.floatingItems.items;e=d.length;for(c=0;c<e;c++){b=d[c];a[a.length]=b;if(f&&b.getRefItems){a.push.apply(a,b.getRefItems(!0))}}return a},getDefaultFocus:function(){var a=this.defaultFocus,b;if(a){b=this.down(a)}return b},initComponent:function(){var a=this;Ext.Component.prototype.initComponent.call(this);a.getLayout();a.constructing=!0;a.initItems();if(a.disabled){a.disabled=!1;a.disable(!0)}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(!1,b.getComponentId);b.floatingItems=new Ext.util.MixedCollection(!1,b.getComponentId);if(a){if(!Ext.isArray(a)){a=[a]}b.add(a)}}},initInheritedState:function(b,e){var a=this,f=a.controller,d=a.layout,h=a.session,i=a.viewModel,g=a.reference,c=a.referenceHolder;Ext.Component.prototype.initInheritedState.call(this,b,e);if(a.collapsed){b.collapsed=!0}if(f){b.referenceHolder=f;c=!0}else {if(c){b.referenceHolder=a}}if(c){b.referencePath=''}else {if(g&&a.isParentReference){b.referencePath=a.referenceKey+'.'}}if(h){b.session=h}if(i){b.viewModelPath=''}else {if(g&&a.isParentReference){b.viewModelPath=a.viewModelKey+'.'}}if(d&&d.initInheritedState){d.initInheritedState(b,e)}},insert:function(c,a){var b;if(a&&a.isComponent){b=this.items.indexOf(a);if(b!==-1){return this.move(b,c)}}return this.add(c,a)},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(a,c){var d=this,e=d.items,b;if(a.isComponent){a=e.indexOf(a)}b=e.getAt(a);if(a!==c){b=e.removeAt(a);if(b===!1){return !1}c=Math.min(c,e.getCount());e.insert(c,b);d.onMove(b,a,c);if(d.hasListeners.childmove){d.fireEvent('childmove',d,b,a,c)}d.updateLayout()}return b},moveBefore:function(a,b){if(a!==b){a=this.layout.moveItemBefore(a,b)}return a},moveAfter:function(a,b){var c=this.layout,d;if(a!==b){d=b?c.getMoveAfterIndex(b):0;a=c.moveItemBefore(a,this.items.getAt(d))}return a},nextChild:function(g,e){var c=this,b=c.items,d=b.indexOf(g),f=0,h=b.length,a;if(d!==-1){if(e){for(;f<h;f++){a=b.getAt(d+f);if(!a||Ext.ComponentQuery.is(a,e)){break}}}else {a=b.getAt(d+1)}if(!a&&c.ownerCt){a=c.ownerCt.nextChild(c,e)}}return a},onAdd:Ext.emptyFn,onBeforeAdd:function(b){var a=b.ownerCt;if(a&&a!==this){a.remove(b,!1)}},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(g,e){var c=this,b=c.items,d=b.indexOf(g),f=0,h=b.length,a;if(d!==-1){if(e){for(;f<h;f++){a=b.getAt(d-f);if(!a||Ext.ComponentQuery.is(a,e)){break}}}else {a=b.getAt(d-1)}if(!a&&c.ownerCt){a=c.ownerCt.nextChild(c,e)}}return a},remove:function(d,c){var a=this,b=a.getComponent(d);if(b&&(!a.hasListeners.beforeremove||a.fireEvent('beforeremove',a,b)!==!1)){a.doRemove(b,c);if(a.hasListeners.remove){a.fireEvent('remove',a,b)}if(!a.destroying&&!b.floating){a.updateLayout()}}return b},removeAll:function(g){var a=this,d=a.items.items.slice().concat(a.floatingItems.items),e=[],c=0,f=d.length,b;Ext.suspendLayouts();a.removingAll=!0;for(;c<f;c++){b=d[c];a.remove(b,g);if(b.ownerCt!==a){e.push(b)}}a.removingAll=!1;Ext.resumeLayouts(!!f);return e},setLayout:function(a){var e=this,b=e.layout,f=b&&b.isLayout,c,d;if(typeof a==='string'){a={type:a}}d=a.type;if(f&&(!d||d===b.type)){delete a.type;b.setConfig(a)}else {if(f){b.setOwner(null)}c=e.self.prototype.layout;if(typeof c==='string'){a.type=d||c}else {Ext.merge(Ext.merge({},c),a)}a=this.layout=Ext.Factory.layout(a);a.setOwner(this)}if(e.rendered){e.updateLayout()}},setActiveItem:function(a){return this.getLayout().setActiveItem(a)},privates:{applyDefaults:function(a){var c=this,b=c.defaults;if(b){if(Ext.isFunction(b)){b=b.call(c,a)}if(Ext.isString(a)){a=Ext.ComponentManager.get(a)}if(a.isComponent){a.setConfig(b,null,c._applyDefaultsOptions)}else {a=c.getConfigurator().merge(c,Ext.Object.fork(b),a)}}return a},applyReference:function(a){var b;if(a&&a.charAt(b=a.length-1)==='>'){this.isParentReference=!0;a=a.substring(0,b)}return a},applyTargetCls:function(a){this.layoutTargetCls=a},attachReference:function(b){var a=this,d,c;if(a.destroying||a.isDestroyed){return}c=a.refs||(a.refs={});d=b.referenceKey;c[d]=b},clearReference:function(a){var b=this.refs,c=a.referenceKey;if(b&&c){a.viewModelKey=a.referenceKey=b[c]=null}},clearReferences:function(){this.refs=null},detachComponent:function(a){Ext.getDetachedBody().appendChild(a.getEl())},doRemove:function(a,c){c=c===!0||c!==!1&&this.autoDestroy;var b=this,e=b.layout,g=e&&b.rendered,d=a.destroying||c,f=a.floating;if(f){b.floatingItems.remove(a)}else {b.items.remove(a)}if(g&&!f){if(e.running){Ext.Component.cancelLayout(a,d)}e.onRemove(a,d)}a.onRemoved(d);b.onRemove(a,d);if(c){a.destroy()}else {if(g&&!f){e.afterRemove(a)}if(b.detachOnRemove&&a.rendered){b.detachComponent(a)}}},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},getScrollerEl:function(){return this.layout.getScrollerEl()||Ext.Component.prototype.getScrollerEl.call(this)},prepareItems:function(a,f){if(Ext.isArray(a)){a=a.slice()}else {a=[a]}var e=this,c=0,d=a.length,b;for(;c<d;c++){b=a[c];if(b==null){Ext.Array.erase(a,c,1);--c;--d}else {if(f){b=this.applyDefaults(b)}b.initOwnerCt=e;if(b.isComponent){b.instancedCmp=!0}a[c]=e.lookupComponent(b);delete b.initOwnerCt}}return a},repositionFloatingItems:function(){var c=this.floatingItems.items,d=c.length,b,a;for(b=0;b<d;b++){a=c[b];if(a.el&&!a.hidden){a.setPosition(a.x,a.y)}}},_noMargin:{'margin-top':'','margin-right':'','margin-bottom':'','margin-left':''},resetItemMargins:function(){var b=this.items.items,c=b.length,d=this._noMargin,a;while(c--){a=b[c];a.margin$=null;a.el.setStyle(d)}},setupRenderTpl:function(a){Ext.Component.prototype.setupRenderTpl.apply(this,arguments);this.getLayout().setupRenderTpl(a)}}},0,['container'],['component','box','container'],{'component':!0,'box':!0,'container':!0},['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.boxOverflow.None',Ext.Base,{alternateClassName:'Ext.layout.boxOverflow.None',factoryConfig:{defaultType:'none'},isBoxOverflowHandler:!0,$configPrefixed:!1,$configStrict:!1,constructor:function(a){this.initConfig(a)},handleOverflow:Ext.emptyFn,clearOverflow:Ext.emptyFn,beginLayout:Ext.emptyFn,beginLayoutCycle:Ext.emptyFn,calculate:function(b){var c=this,d=b.state.boxPlan,a;if(d&&d.tooNarrow){a=c.handleOverflow(b);if(a){if(a.reservedSpace){c.layout.publishInnerCtSize(b,a.reservedSpace)}}}else {c.clearOverflow()}},completeLayout:Ext.emptyFn,finishedLayout:function(e){var b=this,d=b.layout.owner,c,a;if(d.hasListeners.overflowchange){c=d.query('>[hidden]');a=c.length;if(a!==b.lastHiddenCount){d.fireEvent('overflowchange',b.lastHiddenCount,a,c);b.lastHiddenCount=a}}},onRemove:Ext.emptyFn,getItem:function(a){return this.layout.owner.getComponent(a)},getOwnerType:function(b){var a;if(b.isToolbar){a='toolbar'}else {if(b.isTabBar){a='tab-bar'}else {if(b.isMenu){a='menu'}else {if(b.isBreadcrumb){a='breadcrumb'}else {a=b.getXType()}}}}return a},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.layout.container.boxOverflow.Scroller',Ext.layout.container.boxOverflow.None,{alternateClassName:'Ext.layout.boxOverflow.Scroller',animateScroll:!1,scrollIncrement:20,wheelIncrement:10,scrollRepeatInterval:60,scrollDuration:400,scrollerCls:'x-box-scroller',beforeSuffix:'-before-scroller',afterSuffix:'-after-scroller',constructor:function(b){var a=this;a.mixins.observable.constructor.call(a,b);a.scrollPosition=0;a.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(g){var c=this,d=c.layout,b=d.owner,e=c.getOwnerType(b),a=c.scrollerCls,f=a+' '+a+'-'+d.names[g]+' '+a+'-'+e+' '+a+'-'+e+'-'+b.ui;if(b.plain){f+=' '+a+'-plain'}return f},getOverflowCls:function(a){return this.scrollerCls+'-body-'+a},beginLayout:function(a){a.innerCtScrollPos=this.getScrollPosition();Ext.layout.container.boxOverflow.None.prototype.beginLayout.apply(this,arguments)},finishedLayout:function(a){var b=this,f=a.state.boxPlan,e=b.layout,d=e.names,g=Math.min(b.getMaxScrollPosition(),a.innerCtScrollPos),c;if(f&&f.tooNarrow){c=a.childItems[a.childItems.length-1].props;b.scrollSize=c[d.x]+c[d.width];b.updateScrollButtons()}e.innerCt[d.setScrollLeft](g);Ext.layout.container.boxOverflow.None.prototype.finishedLayout.call(this,a)},handleOverflow:function(i){var a=this,d=a.layout.names,h=d.getWidth,f=d.parallelMargins,g,e,b,c;a.showScrollers();b=a.getBeforeScroller();c=a.getAfterScroller();g=b[h]()+c[h]()+b.getMargin(f)+c.getMargin(f);e=i.targetContext.getPaddingInfo()[d.width];return {reservedSpace:Math.max(g-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,f,e){var b=this,d=b.layout.owner,c=b.scrollerCls,a;a=d.el.getById(d.id+g);a.addClsOnOver(c+'-hover');a.addClsOnClick(c+'-pressed');a.setVisibilityMode(Ext.Element.DISPLAY);b[f]=new Ext.util.ClickRepeater(a,{interval:b.scrollRepeatInterval,handler:e,scope:b});return a},createWheelListener:function(){var a=this;a.wheelListener=a.layout.innerCt.on('mousewheel',a.onMouseWheel,a,{destroyable:!0})},onMouseWheel:function(a){a.stopEvent();this.scrollBy(this.getWheelDelta(a)*this.wheelIncrement*-1,!1)},getWheelDelta:function(a){return a.getWheelDelta()},clearOverflow:function(){this.hideScrollers()},showScrollers:function(){var a=this;if(!a.wheelListener){a.createWheelListener()}a.getBeforeScroller().show();a.getAfterScroller().show();a.layout.owner.addClsWithUI(a.layout.direction==='vertical'?'vertical-scroller':'scroller')},hideScrollers:function(){var a=this,b=a.getBeforeScroller(),c=a.getAfterScroller();if(b){b.hide();c.hide();a.layout.owner.removeClsWithUI(a.layout.direction==='vertical'?'vertical-scroller':'scroller')}},destroy:function(){Ext.destroyMembers(this,'beforeRepeater','afterRepeater','_beforeScroller','_afterScroller','wheelListener')},scrollBy:function(b,a){this.scrollTo(this.getScrollPosition()+b,a)},getScrollAnim:function(){return {duration:this.scrollDuration,callback:this.updateScrollButtons,scope:this}},updateScrollButtons:function(){var a=this,c=a.getBeforeScroller(),d=a.getAfterScroller(),b;if(!c||!d){return}b=a.scrollerCls+'-disabled';c[a.atExtremeBefore()?'addCls':'removeCls'](b);d[a.atExtremeAfter()?'addCls':'removeCls'](b);a.scrolling=!1},scrollLeft:function(){this.scrollBy(-this.scrollIncrement,!1)},scrollRight:function(){this.scrollBy(this.scrollIncrement,!1)},getScrollPosition:function(){var b=this,c=b.layout,a;if(isNaN(b.scrollPosition)){a=c.innerCt[c.names.getScrollLeft]()}else {a=b.scrollPosition}return a},getMaxScrollPosition:function(){var c=this,b=c.layout,a=c.scrollSize-b.innerCt[b.names.getWidth]();return a<0?0:a},atExtremeBefore:function(){return !this.getScrollPosition()},atExtremeAfter:function(){return this.getScrollPosition()>=this.getMaxScrollPosition()},setVertical:function(){var c=this,d=c.getBeforeScroller(),e=c.getAfterScroller(),b=c.layout.names,a=c.scrollerCls;d.removeCls(a+'-'+b.beforeY);e.removeCls(a+'-'+b.afterY);d.addCls(a+'-'+b.beforeX);e.addCls(a+'-'+b.afterX);Ext.layout.container.boxOverflow.None.prototype.setVertical.call(this)},scrollTo:function(g,b){var a=this,d=a.layout,e=d.names,f=a.getScrollPosition(),c=Ext.Number.constrain(g,0,a.getMaxScrollPosition());if(c!==f&&!a.scrolling){a.scrollPosition=NaN;if(b===undefined){b=a.animateScroll}d.innerCt[e.scrollTo](e.beforeScrollX,c,b?a.getScrollAnim():!1);if(b){a.scrolling=!0}else {a.updateScrollButtons()}a.fireEvent('scroll',a,c,b?a.getScrollAnim():!1)}},scrollToItem:function(a,i){var c=this,e=c.layout,h=e.owner,f=e.names,j=e.innerCt,d,g,b;a=c.getItem(a);if(a!==undefined){if(a===h.items.first()){b=0}else {if(a===h.items.last()){b=c.getMaxScrollPosition()}else {d=c.getItemVisibility(a);if(!d.fullyVisible){g=a.getBox(!1,!0);b=g[f.x];if(d.hiddenEnd){b-=j[f.getWidth]()-g[f.width]}}}}if(b!==undefined){c.scrollTo(b,i)}}},getItemVisibility:function(i){var d=this,h=d.getItem(i).getBox(!0,!0),g=d.layout,c=g.names,b=h[c.x],f=b+h[c.width],a=d.getScrollPosition(),e=a+g.innerCt[c.getWidth]();return {hiddenStart:b<a,hiddenEnd:f>e,fullyVisible:b>=a&&f<=e}}},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.define('Rambox.overrides.layout.container.boxOverflow.Scroller',{override:'Ext.layout.container.boxOverflow.Scroller',scrollIncrement:250,wheelIncrement:50,animateScroll:!0,scrollDuration:250,scrollLeft:function(){this.scrollBy(-this.scrollIncrement)},scrollRight:function(){this.scrollBy(this.scrollIncrement)}});Ext.cmd.derive('Ext.dd.DragDropManager',Ext.Base,{singleton:!0,alternateClassName:['Ext.dd.DragDropMgr','Ext.dd.DDM'],ids:{},handleIds:{},dragCurrent:null,dragOvers:{},deltaX:0,deltaY:0,preventDefault:!0,stopPropagation:!0,initialized:!1,locked:!1,init:function(){this.initialized=!0},POINT:0,INTERSECT:1,mode:0,notifyOccluded:!1,dragCls:'x-dd-drag-current',_execOnAll:function(f,g){var c=this.ids,d,e,b,a;for(d in c){if(c.hasOwnProperty(d)){a=c[d];for(e in a){if(a.hasOwnProperty(e)){b=a[e];if(!this.isTypeOfDD(b)){continue}b[f].apply(b,g)}}}}},addListeners:function(){var a=this;a.init();Ext.getDoc().on({mouseup:a.handleMouseUp,mousemove:{fn:a.handleMouseMove,capture:!1},dragstart:a.preventDrag,drag:a.preventDrag,dragend:a.preventDrag,capture:!0,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=!0},unlock:function(){this.locked=!1},isLocked:function(){return this.locked},locationCache:{},useCache:!0,clickPixelThresh:8,dragThreshMet:!1,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(c,f){var a=this,d=a.ids,e=c.groups,b;if(a.clearingAll){return}if(a.dragCurrent===c){a.dragCurrent=null}for(b in e){if(e.hasOwnProperty(b)){if(f){delete d[b]}else {if(d[b]){delete d[b][c.id]}}}}delete a.handleIds[c.id]},regHandle:function(a,b){if(!this.handleIds[a]){this.handleIds[a]={}}this.handleIds[a][b]=b},isDragDrop:function(a){return this.getDDById(a)?!0:!1},getRelated:function(f,e){var b=[],c,d,a;for(c in f.groups){for(d in this.ids[c]){a=this.ids[c][d];if(!this.isTypeOfDD(a)){continue}if(!e||a.isTarget){b[b.length]=a}}}return b},isLegalTarget:function(e,d){var b=this.getRelated(e,!0),a,c;for(a=0,c=b.length;a<c;++a){if(b[a].id===d.id){return !0}}return !1},isTypeOfDD:function(a){return a&&a.__ygDragDrop},isHandle:function(a,b){return this.handleIds[a]&&this.handleIds[a][b]},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(b,e){var a=this,d,c;a.isMouseDown=!0;if(Ext.quickTipsActive){Ext.tip.QuickTipManager.ddDisable()}a.currentPoint=b.getPoint();if(a.dragCurrent){a.handleMouseUp(b)}a.mousedownEvent=b;a.currentTarget=b.getTarget();a.dragCurrent=e;c=e.getEl();Ext.fly(c).setCapture();d=b.getXY();a.startX=d[0];a.startY=d[1];a.offsetX=a.offsetY=0;a.deltaX=a.startX-c.offsetLeft;a.deltaY=a.startY-c.offsetTop;a.dragThreshMet=!1},startDrag:function(d,e){var b=this,a=b.dragCurrent,c;clearTimeout(b.clickTimeout);if(a){a.b4StartDrag(d,e);a.startDrag(d,e);c=a.getDragEl();if(c){Ext.fly(c).addCls(b.dragCls)}}b.dragThreshMet=!0},handleMouseUp:function(b){var a=this;a.isMouseDown=!1;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,!0)}a.stopDrag(b);a.stopEvent(b)},stopEvent:function(a){if(this.stopPropagation){a.stopPropagation()}if(this.preventDefault){a.preventDefault()}},stopDrag:function(d){var a=this,b=a.dragCurrent,c;if(b){if(a.dragThreshMet){c=b.getDragEl();if(c){Ext.fly(c).removeCls(a.dragCls)}b.b4EndDrag(d);b.endDrag(d)}a.dragCurrent.onMouseUp(d)}a.dragCurrent=null;a.dragOvers={}},handleMouseMove:function(b){var a=this,c=a.dragCurrent,f=a.currentPoint=b.getPoint(),g=f.x,h=f.y,d,e;a.offsetX=g-a.startX;a.offsetY=h-a.startY;if(!c){return !0}if(!a.dragThreshMet){d=Math.abs(a.offsetX);e=Math.abs(a.offsetY);if(d>a.clickPixelThresh||e>a.clickPixelThresh){a.startDrag(a.startX,a.startY)}}if(a.dragThreshMet){c.b4Drag(b);c.onDrag(b);if(!c.moveOnly){a.fireEvents(b,!1)}}a.stopEvent(b);return !0},fireEvents:function(e,t){var d=this,s=Ext.supports.Touch,c=d.dragCurrent,l=d.currentPoint,v=l.x,w=l.y,j=[],r=[],h=[],i=[],g=[],k=[],u=s?document.documentElement.clientWidth/window.innerWidth:1,p,b,o,q,a,f,n,m;if(!c||c.isLocked()){return}m=!(c.deltaX<0||c.deltaY<0);if(s||!d.notifyOccluded&&(!Ext.supports.CSSPointerEvents||Ext.isIE10m||Ext.isOpera)&&m){p=c.getDragEl();if(m){p.style.visibility='hidden'}e.target=document.elementFromPoint(v/u,w/u);if(m){p.style.visibility='visible'}}for(a in d.dragOvers){b=d.dragOvers[a];delete d.dragOvers[a];if(!d.isTypeOfDD(b)||b.isDestroyed){continue}if(d.notifyOccluded){if(!this.isOverTarget(l,b,d.mode)){h.push(b)}}else {if(!e.within(b.getEl())){h.push(b)}}r[a]=!0}for(n in c.groups){if('string'!==typeof n){continue}for(a in d.ids[n]){b=d.ids[n][a];if(d.isTypeOfDD(b)&&(o=b.getEl())&&b.isTarget&&!b.isLocked()&&Ext.fly(o).isVisible(!0)&&(b!==c||c.ignoreSelf===!1)){if(d.notifyOccluded){if((b.zIndex=d.getZIndex(o))!==-1){q=!0}j.push(b)}else {if(e.within(b.getEl())){j.push(b);break}}}}}if(q){Ext.Array.sort(j,d.byZIndex)}for(a=0,f=j.length;a<f;a++){b=j[a];if(d.isOverTarget(l,b,d.mode)){if(t){g.push(b)}else {if(!r[b.id]){k.push(b)}else {i.push(b)}d.dragOvers[b.id]=b}if(!d.notifyOccluded){break}}}if(d.mode){if(h.length){c.b4DragOut(e,h);c.onDragOut(e,h)}if(k.length){c.onDragEnter(e,k)}if(i.length){c.b4DragOver(e,i);c.onDragOver(e,i)}if(g.length){c.b4DragDrop(e,g);c.onDragDrop(e,g)}}else {for(a=0,f=h.length;a<f;++a){c.b4DragOut(e,h[a].id);c.onDragOut(e,h[a].id)}for(a=0,f=k.length;a<f;++a){c.onDragEnter(e,k[a].id)}for(a=0,f=i.length;a<f;++a){c.b4DragOver(e,i[a].id);c.onDragOver(e,i[a].id)}for(a=0,f=g.length;a<f;++a){c.b4DragDrop(e,g[a].id);c.onDragDrop(e,g[a].id)}}if(t&&!g.length){c.onInvalidDrop(e)}},getZIndex:function(a){var d=document.body,c,b=-1;a=Ext.getDom(a);while(a!==d){if(!isNaN(c=Number(Ext.fly(a).getStyle('zIndex')))){b=c}a=a.parentNode}return b},byZIndex:function(a,b){return a.zIndex<b.zIndex},getBestMatch:function(d){var a=null,e=d.length,c,b;if(e===1){a=d[0]}else {for(c=0;c<e;++c){b=d[c];if(b.cursorIsOver){a=b;break}else {if(!a||a.overlap.getArea()<b.overlap.getArea()){a=b}}}}return a},refreshCache:function(e){var b,d,a,c;for(b in e){if('string'!==typeof b){continue}for(d in this.ids[b]){a=this.ids[b][d];if(this.isTypeOfDD(a)){c=this.getLocation(a);if(c){this.locationCache[a.id]=c}else {delete this.locationCache[a.id]}}}}},verifyEl:function(b){if(b){var a;if(Ext.isIE){try{a=b.offsetParent}catch(c){}}else {a=b.offsetParent}if(a){return !0}}return !1},getLocation:function(a){if(!this.isTypeOfDD(a)){return null}if(a.getRegion){return a.getRegion()}var c=a.getEl(),b,d,f,e,g,k,j,h,i;try{b=Ext.fly(c).getXY()}catch(l){}if(!b){return null}d=b[0];f=d+c.offsetWidth;e=b[1];g=e+c.offsetHeight;k=e-a.padding[0];j=f+a.padding[1];h=g+a.padding[2];i=d-a.padding[3];return new Ext.util.Region(k,j,h,i)},isOverTarget:function(g,a,i){var c=this.locationCache[a.id],b,d,f,h,e;if(!c||!this.useCache){c=this.getLocation(a);this.locationCache[a.id]=c}if(!c){return !1}a.cursorIsOver=c.contains(g);b=this.dragCurrent;if(!b||!b.getTargetCoord||!i&&!b.constrainX&&!b.constrainY){return a.cursorIsOver}a.overlap=null;d=b.getTargetCoord(g.x,g.y);f=b.getDragEl();h=new Ext.util.Region(d.y,d.x+f.offsetWidth,d.y+f.offsetHeight,d.x);e=h.intersect(c);if(e){a.overlap=e;return i?!0:a.cursorIsOver}else {return !1}},_onUnload:function(b,a){Ext.dd.DragDropManager.unregAll()},unregAll:function(){var a=this,b=a.elementCache,c;if(a.dragCurrent){a.stopDrag();a.dragCurrent=null}a.clearingAll=!0;a._execOnAll('unreg',[]);delete a.clearingAll;for(c in b){delete b[c]}a.elementCache={};a.ids={};a.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(a,b){if(a.swapNode){a.swapNode(b)}else {var c=b.parentNode,d=b.nextSibling;if(d===a){c.insertBefore(a,b)}else {if(b===a.nextSibling){c.insertBefore(b,a)}else {a.parentNode.replaceChild(b,a);c.insertBefore(a,d)}}}},getScroll:function(){var e=window.document,a=e.documentElement,b=e.body,d=0,c=0;if(a&&(a.scrollTop||a.scrollLeft)){d=a.scrollTop;c=a.scrollLeft}else {if(b){d=b.scrollTop;c=b.scrollLeft}}return {top:d,left:c}},getStyle:function(b,a){return Ext.fly(b).getStyle(a)},getScrollTop:function(){return this.getScroll().top},getScrollLeft:function(){return this.getScroll().left},moveToEl:function(c,a){var b=Ext.fly(a).getXY();Ext.fly(c).setXY(b)},numericSort:function(a,b){return a-b},handleWasClicked:function(b,c){if(this.isHandle(c,b.id)){return !0}else {var a=b.parentNode;while(a){if(this.isHandle(c,a.id)){return !0}else {a=a.parentNode}}}return !1}},0,0,0,0,0,0,[Ext.dd,'DragDropManager',Ext.dd,'DragDropMgr',Ext.dd,'DDM'],function(a){Ext.onInternalReady(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}"> ','</div>','</tpl>'],isSplitter:!0,baseCls:'x-splitter',collapsedClsInternal:'x-splitter-collapsed',canResize:!0,collapsible:null,collapseOnDblClick:!0,defaultSplitMin:40,defaultSplitMax:1000,collapseTarget:'next',horizontal:!1,vertical:!1,size:5,tracker:null,ariaRole:'separator',focusable:!0,tabIndex:0,getTrackerConfig:function(){return Ext.apply({xclass:'Ext.resizer.SplitterTracker',el:this.el,splitter:this},this.tracker)},beforeRender:function(){var a=this,c=a.getCollapseTarget(),b=a.collapsible;Ext.Component.prototype.beforeRender.call(this);if(c.collapsed){a.addCls(a.collapsedClsInternal)}if(!a.canResize){a.addCls(a.baseCls+'-noresize')}Ext.applyIf(a.renderData,{collapseDir:a.getCollapseDirection(),collapsible:b!==null?b:c.collapsible});a.protoEl.unselectable()},onRender:function(){var a=this,b;Ext.Component.prototype.onRender.apply(this,arguments);if(a.performCollapse!==!1){if(a.renderData.collapsible){a.mon(a.collapseEl,'click',a.toggleTargetCmp,a)}if(a.collapseOnDblClick){a.mon(a.el,'dblclick',a.toggleTargetCmp,a)}}a.getCollapseTarget().on({collapse:a.onTargetCollapse,expand:a.onTargetExpand,beforeexpand:a.onBeforeTargetExpand,beforecollapse:a.onBeforeTargetCollapse,scope:a});if(a.canResize){a.tracker=Ext.create(a.getTrackerConfig());a.relayEvents(a.tracker,['beforedragstart','dragstart','dragend'])}b=a.collapseEl;if(b){b.lastCollapseDirCls=a.collapseDirProps[a.collapseDirection].cls}},getCollapseDirection:function(){var b=this,a=b.collapseDirection,c,f,d,e;if(!a){c=b.collapseTarget;if(c.isComponent){a=c.collapseDirection}if(!a){e=b.ownerCt.layout.type;if(c.isComponent){d=b.ownerCt.items;f=Number(d.indexOf(c)===d.indexOf(b)-1)<<1|Number(e==='hbox')}else {f=Number(b.collapseTarget==='prev')<<1|Number(e==='hbox')}a=['bottom','right','top','left'][f]}b.collapseDirection=a}b.setOrientation(a==='top'||a==='bottom'?'horizontal':'vertical');return a},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(b){var a=this;if(b===a.getCollapseTarget()&&b[a.orientation==='vertical'?'collapsedHorizontal':'collapsedVertical']()){a.el.addCls(a.collapsedClsInternal+' '+(a.collapsedCls||''))}a.setCollapseEl('')},onTargetExpand:function(b){var a=this;a.el.removeCls(a.collapsedClsInternal+' '+(a.collapsedCls||''));a.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,a=c.collapseEl,d=c.collapseDirProps[c.collapseDirection],b;if(a){b=a.lastCollapseDirCls;if(b){a.removeCls(b)}a.addCls(a.lastCollapseDirCls=d.cls)}},applyOrientation:function(){var a=this,e=a.orientation,b=a.orientationProps[e],f=a.size,d=b.fixedAxis,c=b.stretchedAxis,g=a.baseCls+'-';a[e]=!0;a[b.opposite]=!1;if(!a.hasOwnProperty(d)||a[d]==='100%'){a[d]=f}if(!a.hasOwnProperty(c)||a[c]===f){a[c]='100%'}a.removeCls(g+b.opposite);a.addCls(g+e)},setOrientation:function(b){var a=this;if(a.orientation!==b){a.orientation=b;a.applyOrientation()}},updateOrientation:function(){delete this.collapseDirection;this.getCollapseDirection();this.applyCollapseDirection()},toggleTargetCmp:function(d,e){var a=this.getCollapseTarget(),c=a.placeholder,b;if(Ext.isFunction(a.expand)&&Ext.isFunction(a.collapse)){if(c&&!c.hidden){b=!0}else {b=!a.hidden}if(b){if(a.collapsed){a.expand()}else {if(a.collapseDirection){a.collapse()}else {a.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':!0,'box':!0,'splitter':!0},['widget.splitter'],0,[Ext.resizer,'Splitter'],0);Ext.define('ExtThemeNeptune.resizer.Splitter',{override:'Ext.resizer.Splitter',size:8});Ext.cmd.derive('Ext.layout.container.Box',Ext.layout.container.Container,{alternateClassName:'Ext.layout.BoxLayout',type:'box',config:{align:'begin',constrainAlign:!1,enableSplitters:!0,overflowHandler:{$value:null,merge:function(a,b){if(typeof a==='string'){a={type:a}}return Ext.merge(b?Ext.Object.chain(b):{},a)}},padding:0,pack:'start',stretchMaxPartner:undefined,vertical:!1,alignRoundingMethod:'round'},itemCls:'x-box-item',targetCls:'x-box-layout-ct',targetElCls:'x-box-target',innerCls:'x-box-inner',manageMargins:!0,createsInnerCt:!0,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:!0,definitions:'var dh=Ext.DomHelper;'}],constructor:function(c){var a=this,b;Ext.layout.container.Container.prototype.constructor.apply(this,arguments);a.setVertical(a.vertical);a.flexSortFn=a.flexSort.bind(a);b=typeof a.padding;if(b==='string'||b==='number'){a.padding=Ext.util.Format.parseBox(a.padding);a.padding.height=a.padding.top+a.padding.bottom;a.padding.width=a.padding.left+a.padding.right}},_beginRe:/^(?:begin|left|top)$/,_centerRe:/^(?:center|middle)$/,_endRe:/^(?:end|right|bottom)$/,_percentageRe:/^\s*(\d+(?:\.\d*)?)\s*[%]\s*$/,getItemSizePolicy:function(h,b){var a=this,f=a.sizePolicy,g=a.align,p=h.flex,c=g,o=a.names,e=o.height,m=o.width,q=h[m],n=h[e],d=a._percentageRe,i=d.test(q),l=g==='stretch',j=g==='stretchmax',k=a.constrainAlign;if(!b&&(l||p||i||k&&!j)){b=a.owner.getSizeModel()}if(l){if(!d.test(n)&&b[e].shrinkWrap){c='stretchmax'}}else {if(!j){if(d.test(n)){c='stretch'}else {if(k&&!b[e].shrinkWrap){c='stretchmax'}else {c=''}}}}if(p||i){if(!b[m].shrinkWrap){f=f.flex}}return f[c]},flexSort:function(o,p){var k=this.names.maxWidth,l=this.names.minWidth,j=Infinity,c=o.target,d=p.target,m=c.flex,n=d.flex,a=0,g,i,f,h,e,b;f=c[k]||j;h=d[k]||j;g=c[l]||0;i=d[l]||0;e=isFinite(g)||isFinite(i);b=isFinite(f)||isFinite(h);if(e||b){if(b){a=f-h}if(a===0&&e){a=i-g}if(a===0){if(b){a=n-m}else {a=m-n}}}return a},isItemBoxParent:function(a){return !0},isItemShrinkWrap:function(a){return !0},roundFlex:function(a){return Math.floor(a)},beginCollapse:function(a){var b=this;if(b.direction==='vertical'&&a.collapsedVertical()){a.collapseMemento.capture(['flex']);delete a.flex}else {if(b.direction==='horizontal'&&a.collapsedHorizontal()){a.collapseMemento.capture(['flex']);delete a.flex}}},beginExpand:function(a){a.collapseMemento.restore(['flex'])},beginLayout:function(a){var c=this,d=c.owner,b=d.stretchMaxPartner,g=c.innerCt.dom.style,h=c.names,f=c.overflowHandler,e=d.getScrollable(),i;a.boxNames=h;if(f){f.beginLayout(a)}if(typeof b==='string'){b=Ext.getCmp(b)||d.query(b)[0]}a.stretchMaxPartner=b&&a.context.getCmp(b);Ext.layout.container.Container.prototype.beginLayout.apply(this,arguments);a.innerCtContext=a.getEl('innerCt',c);a.targetElContext=a.getEl('targetEl',c);a.ownerScrollable=e=d.getScrollable();if(e){a.scrollRestore=e.getPosition()}g.width='';g.height=''},beginLayoutCycle:function(a,l){var c=this,i=a.state,g=a.ownerScrollable,b=c.align,e=a.boxNames,d=c.pack,k=c._centerRe,j=c.overflowHandler,m=a.state.canScroll,h,f;if(j){j.beginLayoutCycle(a,l)}Ext.layout.container.Container.prototype.beginLayoutCycle.apply(this,arguments);a.parallelSizeModel=h=a[e.widthModel];a.perpendicularSizeModel=f=a[e.heightModel];a.boxOptions={align:b={stretch:b==='stretch',stretchmax:b==='stretchmax',center:k.test(b),bottom:c._endRe.test(b)},pack:d={center:k.test(d),end:d==='end'}};if(g){if(!m){i.canScroll={parallel:!h.shrinkWrap&&g[e.getX](),perpendicular:!f.shrinkWrap&&g[e.getY]()}}if(!i.actualScroll){i.actualScroll={parallel:!1,perpendicular:!1}}}if(b.stretch&&f.shrinkWrap){b.stretchmax=!0;b.stretch=!1}b.nostretch=!(b.stretch||b.stretchmax);if(h.shrinkWrap){d.center=d.end=!1}c.cacheFlexes(a);c.targetEl.setWidth(20000)},cacheFlexes:function(a){var u=this,d=a.boxNames,x=d.widthModel,w=d.heightModel,z=a.boxOptions.align.nostretch,s=0,r=a.childItems,v=r.length,h=[],t=0,g=0,o=0,p=d.minWidth,y=d.minHeight,q=u._percentageRe,n=0,m=0,b,c,l,f,i,j,k,e;while(v--){c=r[v];b=c.target;j=c[x];if(j.calculated){c.flex=l=b.flex;if(l){s+=l;h.push(c);t+=b[p]||0}else {f=q.exec(b[d.width]);c.percentageParallel=parseFloat(f[1])/100;++n}}if(j.configured){k=b[d.width]}else {k=b[p]||0}o+=k;i=c[w];if(z&&i.calculated){f=q.exec(b[d.height]);c.percentagePerpendicular=parseFloat(f[1])/100;++m}if(i.configured){e=b[d.height]}else {e=b[y]||0}if(e>g){g=e}}a.flexedItems=h;a.flexedMinWidth=t;a.smallestWidth=o;a.smallestHeight=g;a.totalFlex=s;a.percentageWidths=n;a.percentageHeights=m;Ext.Array.sort(h,u.flexSortFn)},calculate:function(b){var c=this,f=b.boxNames,a=b.state,h=a.actualScroll,g=a.needsScroll,e=a.canScroll,d=a.boxPlan||(a.boxPlan={}),i=c.overflowHandler;d.targetSize=c.getContainerSize(b);if(e&&!g){a.needsScroll=g={parallel:e.parallel&&d.targetSize[f.width]<b.smallestWidth,perpendicular:e.perpendicular&&d.targetSize[f.height]<b.smallestHeight}}if(!a.parallelDone){a.parallelDone=c.calculateParallel(b,f,d)}if(!a.perpendicularDone){a.perpendicularDone=c.calculatePerpendicular(b,f,d)}if(a.parallelDone&&a.perpendicularDone){if(e&&!a.scrollPass){if(g.parallel!==h.parallel||g.perpendicular!==h.perpendicular){b.invalidate({state:{scrollPass:!0,canScroll:e,needsScroll:h}});c.done=!1;return}}c.publishInnerCtSize(b);if(c.done&&b.boxOptions.align.stretchmax&&!a.stretchMaxDone){c.calculateStretchMax(b,f,d);a.stretchMaxDone=!0}if(i){i.calculate(b)}}else {c.done=!1}},calculateParallel:function(c,d,p){var D=this,s=c.parallelSizeModel.shrinkWrap,m=d.width,o=c.childItems,G=d.beforeX,y=d.afterX,K=d.setWidth,q=o.length,x=c.flexedItems,H=x.length,C=c.boxOptions.pack,B=D.padding,z=p.targetSize,E=z[m],v=c.state,n=v.needsScroll,A=v.canScroll,u=0,e=B[G],h=e+B[y],F=Ext.getScrollbarSize(),J=F[d.width],I=F[d.height],b,k,f,t,a,w,l,g,i,r,j;if(!s&&!z[d.gotWidth]){return !1}for(b=0;b<q;++b){a=o[b];k=a.marginInfo||a.getMarginInfo();u+=k[m];if(!a[d.widthModel].calculated){i=a.getProp(m);h+=i;if(isNaN(h)){return !1}}}h+=u;if(c.percentageWidths){r=E-u;if(isNaN(r)){return !1}for(b=0;b<q;++b){a=o[b];if(a.percentageParallel){i=Math.ceil(r*a.percentageParallel);i=a.setWidth(i);h+=i}}}if(s){j=0;p.tooNarrow=!1}else {j=E-h;if(n&&n.perpendicular){j-=I}p.tooNarrow=j<c.flexedMinWidth;if(p.tooNarrow&&A&&A.parallel){v.actualScroll.parallel=!0}}g=h;f=j;t=c.totalFlex;for(b=0;b<H;b++){a=x[b];w=a.flex;l=D.roundFlex(w/t*f);l=a[K](l);g+=l;f=Math.max(0,f-l);t-=w}if(C.center){e+=f/2;if(e<0){e=0}}else {if(C.end){e+=f}}for(b=0;b<q;++b){a=o[b];k=a.marginInfo;e+=k[G];a.setProp(d.x,e);e+=k[y]+a.props[m]}g+=c.targetContext.getPaddingInfo()[m];c.state.contentWidth=g;if(n&&n.perpendicular){if(s){g+=J}c[d.hasOverflowY]=!0;c.target.componentLayout[d.setWidthInDom]=!0;c[d.invalidateScrollY]=Ext.isIE8}c[d.setContentWidth](g);return !0},calculatePerpendicular:function(c,d,t){var l=this,C=c.state,G=C.needsScroll,H=C.canScroll,h=c.perpendicularSizeModel.shrinkWrap,y=t.targetSize,x=c.childItems,E=x.length,o=Math.max,e=d.height,N=d.setHeight,F=d.beforeY,M=d.y,J=l.padding,u=J[F],j=y[e]-u-J[d.afterY],r=c.boxOptions.align,z=r.stretch,O=r.stretchmax,B=r.center,A=r.bottom,I=l.constrainAlign,b=0,D=0,K=l.onBeforeConstrainInvalidateChild,L=l.onAfterConstrainInvalidateChild,q=Ext.getScrollbarSize().height,n,k,g,i,s,f,a,p,w,v,m;if(!h&&!y[d.gotHeight]){return !1}if(z||(B||A)&&!h){if(isNaN(j)){return !1}}if(G&&G.parallel){if(h){v=!0}else {j-=q;t.targetSize[e]-=q}}if(z){f=j;b=o(f,c.smallestHeight)}else {for(k=0;k<E;k++){a=x[k];i=(a.marginInfo||a.getMarginInfo())[e];if(!(m=a.percentagePerpendicular)){g=a.getProp(e)}else {++D;if(h){continue}else {g=m*j-i;g=a[d.setHeight](g)}}if(!h&&I&&a[d.heightModel].shrinkWrap&&g>j){a.invalidate({before:K,after:L,layout:l,childHeight:j,names:d});c.state.parallelDone=!1}if(isNaN(b=o(b,g+i,a.target[d.minHeight]||0))){return !1}}}if(v){b+=q;c[d.hasOverflowX]=!0;c.target.componentLayout[d.setHeightInDom]=!0;c[d.invalidateScrollX]=Ext.isIE8}p=c.stretchMaxPartner;if(p){c.setProp('maxChildHeight',b);w=p.childItems;if(w&&w.length){b=o(b,p.getProp('maxChildHeight'));if(isNaN(b)){return !1}}}c[d.setContentHeight](b+l.padding[e]+c.targetContext.getPaddingInfo()[e]);if(v){b-=q}if(b>y[e]&&H&&H.perpendicular){C.actualScroll.perpendicular=!0}t.maxSize=b;if(O){f=b}else {if(B||A||D){if(I){f=h?b:j}else {f=h?b:o(j,b)}f-=c.innerCtContext.getBorderInfo()[e]}}for(k=0;k<E;k++){a=x[k];i=a.marginInfo||a.getMarginInfo();n=u+i[F];if(z){a[N](f-i[e])}else {m=a.percentagePerpendicular;if(h&&m){i=a.marginInfo||a.getMarginInfo();g=m*f-i[e];g=a.setHeight(g)}if(B){s=f-a.props[e];if(s>0){n=u+Math[l.alignRoundingMethod](s/2)}}else {if(A){n=o(0,f-n-a.props[e])}}}a.setProp(M,n)}return !0},onBeforeConstrainInvalidateChild:function(b,c){var a=c.names.heightModel;if(!b[a].constrainedMin){b[a]=Ext.layout.SizeModel.calculated}},onAfterConstrainInvalidateChild:function(a,c){var b=c.names;a.setProp(b.beforeY,0);if(a[b.heightModel].calculated){a[b.setHeight](c.childHeight)}},calculateStretchMax:function(k,c,o){var f=this,h=c.height,l=c.width,g=k.childItems,n=g.length,m=o.maxSize,i=f.onBeforeStretchMaxInvalidateChild,j=f.onAfterStretchMaxInvalidateChild,a,b,d,e;for(d=0;d<n;++d){a=g[d];b=a.props;e=m-a.getMarginInfo()[h];if(e!==b[h]||a[c.heightModel].constrained){a.invalidate({before:i,after:j,layout:f,childWidth:b[l],childHeight:e,childX:b.x,childY:b.y,names:c})}}},onBeforeStretchMaxInvalidateChild:function(b,c){var a=c.names.heightModel;if(!b[a].constrainedMax){b[a]=Ext.layout.SizeModel.calculated}},onAfterStretchMaxInvalidateChild:function(a,b){var c=b.names,d=b.childHeight,e=b.childWidth;a.setProp('x',b.childX);a.setProp('y',b.childY);if(a[c.heightModel].calculated){a[c.setHeight](d)}if(a[c.widthModel].calculated){a[c.setWidth](e)}},completeLayout:function(b){var k=this,n=b.boxNames,c=b.invalidateScrollX,d=b.invalidateScrollY,j=k.overflowHandler,h=b.scrollRestore,i,g,e,f,a,m,l;if(j){j.completeLayout(b)}if(c||d){g=k.getTarget();i=g.dom;a=i.style;if(c){e=g.getStyle('overflowX');if(e==='auto'){e=a.overflowX;a.overflowX='scroll'}else {c=!1}}if(d){f=g.getStyle('overflowY');if(f==='auto'){f=a.overflowY;a.overflowY='scroll'}else {d=!1}}if(c||d){i.scrollWidth;if(c){a.overflowX=e}if(d){a.overflowY=f}}}if(h){b.ownerScrollable.scrollTo(h.x,h.y)}},finishedLayout:function(b){var a=this.overflowHandler;if(a){a.finishedLayout(b)}Ext.layout.container.Container.prototype.finishedLayout.apply(this,arguments)},getLayoutItems:function(){var h=Ext.layout.container.Container.prototype.getLayoutItems.call(this),i=h.length,e,c,g,f,b,d,a;for(g=0;g<i;++g){if((f=h[g]).isSplitter){continue}a=f.splitter;if(f.hidden){if(a){if(!a.hidden){a.hidden=!0;if(a.el){a.el.hide()}}}continue}if(a){d=a.collapseTarget==='next'}else {d=!1}c=null;if(e&&b){if(b.hidden){b.hidden=!1;if(b.el){b.el.show()}}if(d){c=!0}}else {if(d){c=!e}}if(c!==null&&a.hidden!==c){a.hidden=c;if(a.el){a.el.setVisible(!c)}}b=!d&&a;e=f}if(e&&b&&!b.hidden){b.hidden=!0;if(b.el){b.el.hide()}}return h},getScrollerEl:function(){return this.innerCt},insertSplitter:function(c,e,d,a){var b={xtype:'splitter',id:c.id+'-splitter',hidden:d,splitterFor:c,synthetic:!0},f=e+(a.collapseTarget==='prev'?1:0);b[this.names.height]='100%';if(a){Ext.apply(b,a)}c.splitter=this.owner.add(f,b)},publishInnerCtSize:function(a,f){f=f||0;var h=this,g=a.state,d=a.boxNames,m=d.height,j=d.width,k=a.boxOptions.align,o=h.padding,e=g.boxPlan,n=e.targetSize,p=e.maxSize,l=g.needsScroll,i=a.innerCtContext,c,b;if(a.parallelSizeModel.shrinkWrap||e.tooNarrow&&g.canScroll){c=g.contentWidth-a.targetContext.getPaddingInfo()[j]}else {c=n[j];if(l&&l.perpendicular){c-=Ext.getScrollbarSize()[j]}}c-=f;h.owner.tooNarrow=e.tooNarrow;if(k.stretch){b=p}else {b=e.maxSize+o[d.beforeY]+o[d.afterY]+i.getBorderInfo()[m];if(!a.perpendicularSizeModel.shrinkWrap&&(k.center||k.bottom)){b=Math.max(n[m],b)}}i[d.setWidth](c);i[d.setHeight](b);a.targetElContext.setWidth(a.innerCtContext.props.width-(h.vertical?0:f||0));if(isNaN(c+b)){h.done=!1}},onAdd:function(b,d){var c=this,a=c.enableSplitters&&b.split&&!b.isButton;Ext.layout.container.Container.prototype.onAdd.apply(this,arguments);if(a){if(a===!0){a={collapseTarget:'next'}}else {if(Ext.isString(a)){a={collapseTarget:a==='before'?'next':'prev'}}else {a=Ext.apply({collapseTarget:a.side==='before'?'next':'prev'},a)}}c.insertSplitter(b,d,!!b.hidden,a)}},onRemove:function(a,h){var c=this,g=c.names,e=c.owner,d=a.splitter,f=c.overflowHandler,b;Ext.layout.container.Container.prototype.onRemove.apply(this,arguments);if(d&&e.contains(d)){e.doRemove(d,!0);a.splitter=null}if(f){f.onRemove(a)}if(a.layoutMarginCap===c.id){delete a.layoutMarginCap}if(!e.destroying&&!h&&a.rendered){b=a.getEl();if(b){b.setStyle(g.beforeY,'');b.setStyle(g.beforeX,'');b.setStyle('margin','')}}},applyOverflowHandler:function(a,b){var c;if(typeof a==='string'){a={type:a}}c=a.type;if(b&&b.type===a.type){delete a.type;b.setConfig(a);return b}a.layout=this;return Ext.Factory.boxOverflow(a)},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(c){var a=this,b=a.overflowHandler,d=a.owner,e=a._props;Ext.apply(a,c?e.vbox:e.hbox);if(b&&d&&d.rendered){b.setVertical(c)}},_props:{'hbox':{direction:'horizontal',oppositeDirection:'vertical',horizontal:!0,vertical:!1,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:!1,vertical:!0,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:!1},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:!0},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:!0,enableFocusableContainer:!0,activeChildTabIndex:0,inactiveChildTabIndex:-1,privates:{initFocusableContainer:function(){if(this.enableFocusableContainer){this.doInitFocusableContainer()}},doInitFocusableContainer:function(){var a=this,b;b=a.getFocusableContainerEl();a.activateFocusableContainerEl(b);a.mon(b,'mousedown',a.onFocusableContainerMousedown,a);a.focusableKeyNav=a.createFocusableContainerKeyNav(b)},createFocusableContainerKeyNav:function(b){var a=this;return new Ext.util.KeyNav(b,{ignoreInputFields:!0,scope:a,tab:a.onFocusableContainerTabKey,enter:a.onFocusableContainerEnterKey,space:a.onFocusableContainerSpaceKey,up:a.onFocusableContainerUpKey,down:a.onFocusableContainerDownKey,left:a.onFocusableContainerLeftKey,right:a.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(h){var c=this,i=c.activeChildTabIndex,g=!1,b,a,d,f,e;b=c.getFocusables();f=b.length;if(!f){return}for(d=0;d<f;d++){a=b[d];if(a.focusable){g=!0;e=a.getTabIndex();if(e!=null&&e>=i){return a}}}if(!g){return}a=c.findNextFocusableChild(null,!0,b,h);if(a){c.activateFocusable(a)}return a},clearFocusables:function(){var d=this,c=d.getFocusables(),e=c.length,b,a;for(a=0;a<e;a++){b=c[a];if(b.focusable){d.deactivateFocusable(b)}}},activateFocusable:function(c,a){var b=a!=null?a:this.activeChildTabIndex;c.setTabIndex(b)},deactivateFocusable:function(c,a){var b=a!=null?a:this.inactiveChildTabIndex;c.setTabIndex(b)},onFocusableContainerTabKey:function(){return !0},onFocusableContainerEnterKey:function(){return !0},onFocusableContainerSpaceKey:function(){return !0},onFocusableContainerUpKey:function(a){return this.moveChildFocus(a,!1)},onFocusableContainerLeftKey:function(a){return this.moveChildFocus(a,!1)},onFocusableContainerRightKey:function(a){return this.moveChildFocus(a,!0)},onFocusableContainerDownKey:function(a){return this.moveChildFocus(a,!0)},getFocusableFromEvent:function(b){var a=Ext.Component.fromElement(b.getTarget());return a},moveChildFocus:function(a,b){var c=this.getFocusableFromEvent(a);return this.focusChild(c,b,a)},focusChild:function(c,b){var a=this.findNextFocusableChild(c,b);if(a){a.focus()}return a},findNextFocusableChild:function(h,b,f,g){var d,c,a,e;f=f||this.getFocusables();c=Ext.Array.indexOf(f,h);b=b===!0?1:b===!1?-1:b;e=f.length;a=b>0?c<e?c+b:0:c>0?c+b:e-1;for(;;a+=b){if(c<0&&(a>=e||a<0)){return null}else {if(a>=e){a=-1;continue}else {if(a<0){a=e;continue}else {if(a===c){return null}}}}d=f[a];if(!d||!d.focusable){continue}if(g||d.isFocusable&&d.isFocusable()){return d}}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.Component.fromElement(b);this.mousedownTimestamp=a===this?Ext.Date.now():0},onFocusEnter:function(f){var a=this,d=f.toComponent,c=a.mousedownTimestamp,e=50,b;a.mousedownTimestamp=0;if(d===a){if(!c||Ext.Date.now()-c>e){b=a.initDefaultFocusable();if(b){a.deactivateFocusableContainerEl();b.focus()}}}else {a.deactivateFocusableContainerEl()}return d},onFocusLeave:function(c){var a=this,b=a.lastFocusedChild;if(!a.isDestroyed){a.clearFocusables();if(b){a.activateFocusable(b)}else {a.activateFocusableContainerEl()}}},beforeFocusableChildBlur:Ext.privateFn,afterFocusableChildBlur:Ext.privateFn,beforeFocusableChildFocus:function(a){var b=this;b.clearFocusables();b.activateFocusable(a);if(a.needArrowKeys){b.guardFocusableChild(a)}},guardFocusableChild:function(c){var b=this,d=b.activeChildTabIndex,a;a=b.findNextFocusableChild(c,-1);if(a){a.setTabIndex(d)}a=b.findNextFocusableChild(c,1);if(a){a.setTabIndex(d)}},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:!0,baseCls:'x-toolbar',ariaRole:'toolbar',defaultType:'button',layout:undefined,vertical:undefined,enableOverflow:!1,overflowHandler:null,defaultButtonUI:'default-toolbar',defaultFieldUI:'default',defaultFooterButtonUI:'default',defaultFooterFieldUI:'default',trackMenus:!0,itemCls:'x-toolbar-item',statics:{shortcuts:{'-':'tbseparator',' ':'tbspacer'},shortcutsHV:{0:{'->':{xtype:'tbfill',height:0}},1:{'->':{xtype:'tbfill',width:0}}}},initComponent:function(){var a=this,b=a.layout,c=a.vertical;if(c===undefined){a.vertical=c=a.dock==='right'||a.dock==='left'}a.layout=b=Ext.applyIf(Ext.isString(b)?{type:b}:b||{},{type:c?'vbox':'hbox',align:c?'stretchmax':'middle'});if(a.overflowHandler){b.overflowHandler=a.overflowHandler}else {if(a.enableOverflow){b.overflowHandler='menu'}}if(c){a.addClsWithUI('vertical')}if(a.ui==='footer'){a.ignoreBorderManagement=!0}Ext.container.Container.prototype.initComponent.call(this)},getRefItems:function(d){var c=this,b=Ext.container.Container.prototype.getRefItems.apply(this,arguments),e=c.layout,a;if(d&&(c.enableOverflow||c.overflowHandler==='menu')){a=e.overflowHandler;if(a&&a.menu){b=b.concat(a.menu.getRefItems(d))}}return b},lookupComponent:function(a){var d=arguments,b,c;if(typeof a==='string'){c=Ext.toolbar.Toolbar;b=c.shortcutsHV[this.vertical?1:0][a]||c.shortcuts[a];if(typeof b==='string'){a={xtype:b}}else {if(b){a=Ext.apply({},b)}else {a={xtype:'tbtext',text:a}}}this.applyDefaults(a);d=[a]}return Ext.container.Container.prototype.lookupComponent.apply(this,d)},onBeforeAdd:function(a){var b=this,d=b.ui==='footer',c=d?b.defaultFooterButtonUI:b.defaultButtonUI;if(a.isSegmentedButton){if(a.getDefaultUI()==='default'&&!a.config.hasOwnProperty('defaultUI')){a.setDefaultUI(c)}}else {if(a.ui==='default'&&!a.hasOwnProperty('ui')){if(a.isButton){a.ui=c}else {if(a.isFormField){a.ui=d?b.defaultFooterFieldUI:b.defaultFieldUI}}}}if(a instanceof Ext.toolbar.Separator){a.setUI(b.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,!0)},privates:{applyDefaults:function(a){if(!Ext.isString(a)){a=Ext.container.Container.prototype.applyDefaults.apply(this,arguments)}return a},trackMenu:function(b,c){var a=this;if(a.trackMenus&&b.menu){b[c?'un':'on']({mouseover:a.onButtonOver,menushow:a.onButtonMenuShow,menuhide:a.onButtonMenuHide,scope:a})}},getChildItemsToDisable:function(){return this.items.getRange()},onButtonOver:function(a,c){var b=this.activeMenuBtn;if(b&&b!==a){b.hideMenu();a.focus();a.showMenu(c);this.activeMenuBtn=a}},onButtonMenuShow:function(a){this.activeMenuBtn=a},onButtonMenuHide:function(a){this.activeMenuBtn=null}}},0,['toolbar'],['component','box','container','toolbar'],{'component':!0,'box':!0,'container':!0,'toolbar':!0},['widget.toolbar'],[[Ext.util.FocusableContainer.prototype.mixinId||Ext.util.FocusableContainer.$className,Ext.util.FocusableContainer]],[Ext.toolbar,'Toolbar',Ext,'Toolbar'],0);Ext.define('ExtThemeNeptune.toolbar.Toolbar',{override:'Ext.toolbar.Toolbar',usePlainButtons:!1,border:!1});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':!0,'box':!0,'tbitem':!0},['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':!0,'box':!0,'tbitem':!0,'tbtext':!0},['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:!0,vertical:!0,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(){var a=this,d=arguments,c=a.clickRepeater?d[1]:d[0],b=a.field;if(!b.readOnly&&!b.disabled){if(a.upEl.contains(c.target)){Ext.callback(a.upHandler,a.scope,[b,a,c],0,b)}else {if(a.downEl.contains(c.target)){Ext.callback(a.downHandler,a.scope,[b,a,c],0,b)}}}b.inputEl.focus()},onFieldRender:function(){var a=this,d=a.vertical,c,b;Ext.form.trigger.Trigger.prototype.onFieldRender.call(this);c=a.spinnerEl=a.el.select('.'+a.spinnerCls,!0);b=c.elements;a.upEl=d?b[0]:b[1];a.downEl=d?b[1]:b[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:!0,spinDownEnabled:!0,keyNavEnabled:!0,mouseWheelEnabled:!0,repeatTriggerClick:!0,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 a=this,b=a.getTrigger('spinner');(arguments.callee.$previous||Ext.form.field.Text.prototype.onRender).call(this);if(a.keyNavEnabled){a.spinnerKeyNav=new Ext.util.KeyNav(a.inputEl,{scope:a,up:a.spinUp,down:a.spinDown})}if(a.mouseWheelEnabled){a.mon(a.bodyEl,'mousewheel',a.onMouseWheel,a)}a.spinUpEl=b.upEl;a.spinDownEl=b.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(b){var a=this,c=a.spinUpEnabled;a.spinUpEnabled=b;if(c!==b&&a.rendered){a.getTrigger('spinner').setUpEnabled(b)}},setSpinDownEnabled:function(b){var a=this,c=a.spinDownEnabled;a.spinDownEnabled=b;if(c!==b&&a.rendered){a.getTrigger('spinner').setDownEnabled(b)}},onMouseWheel:function(c){var b=this,a;if(b.hasFocus){a=c.getWheelDelta();if(a>0){b.spinUp()}else {if(a<0){b.spinDown()}}c.stopEvent()}},onDestroy:function(){Ext.destroyMembers(this,'spinnerKeyNav');Ext.form.field.Text.prototype.onDestroy.call(this)}},0,['spinnerfield'],['component','box','field','textfield','spinnerfield'],{'component':!0,'box':!0,'field':!0,'textfield':!0,'spinnerfield':!0},['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:!0,allowDecimals:!0,decimalSeparator:null,submitLocaleSeparator:!0,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:!1,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)},setValue:function(d){var a=this,c,b;if(a.hasFocus){c=a.getBind();b=c&&c.value;if(b&&b.syncing&&d===a.value){return a}}return Ext.form.field.Spinner.prototype.setValue.call(this,d)},getErrors:function(b){b=arguments.length>0?b:this.processRawValue(this.getRawValue());var a=this,c=Ext.form.field.Spinner.prototype.getErrors.call(this,b),e=Ext.String.format,d;if(b.length<1){return c}b=String(b).replace(a.decimalSeparator,'.');if(isNaN(b)){c.push(e(a.nanText,b))}d=a.parseValue(b);if(a.minValue===0&&d<0){c.push(this.negativeText)}else {if(d<a.minValue){c.push(e(a.minText,a.minValue))}}if(d>a.maxValue){c.push(e(a.maxText,a.maxValue))}return c},rawToValue:function(b){var a=this.fixPrecision(this.parseValue(b));if(a===null){a=b||null}return a},valueToRaw:function(a){var b=this,c=b.decimalSeparator;a=b.parseValue(a);a=b.fixPrecision(a);a=Ext.isNumber(a)?a:parseFloat(String(a).replace(c,'.'));a=isNaN(a)?'':String(a).replace('.',c);return a},getSubmitValue:function(){var b=this,a=Ext.form.field.Spinner.prototype.getSubmitValue.call(this);if(!b.submitLocaleSeparator){a=a.replace(b.decimalSeparator,'.')}return a},onChange:function(){this.toggleSpinners();Ext.form.field.Spinner.prototype.onChange.apply(this,arguments)},toggleSpinners:function(){var a=this,c=a.getValue(),d=c===null,b;if(a.spinUpEnabled||a.spinUpDisabledByToggle){b=d||c<a.maxValue;a.setSpinUpEnabled(b,!0)}if(a.spinDownEnabled||a.spinDownDisabledByToggle){b=d||c>a.minValue;a.setSpinDownEnabled(b,!0)}},setMinValue:function(c){var a=this,b;a.minValue=Ext.Number.from(c,Number.NEGATIVE_INFINITY);a.toggleSpinners();if(a.disableKeyFilter!==!0){b=a.baseChars+'';if(a.allowExponential){b+=a.decimalSeparator+'e+-'}else {if(a.allowDecimals){b+=a.decimalSeparator}if(a.minValue<0){b+='-'}}b=Ext.String.escapeRegex(b);a.maskRe=new RegExp('['+b+']');if(a.autoStripChars){a.stripCharsRe=new RegExp('[^'+b+']','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(a){var d=this,c=isNaN(a),b=d.decimalPrecision;if(c||!a){return c?'':a}else {if(!d.allowDecimals||b<=0){b=0}}return parseFloat(Ext.Number.toFixed(parseFloat(a),b))},onBlur:function(c){var a=this,b=a.rawToValue(a.getRawValue());if(!Ext.isEmpty(b)){a.setValue(b)}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':!0,'box':!0,'field':!0,'textfield':!0,'spinnerfield':!0,'numberfield':!0},['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:!1,prependButtons:!1,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 a=this,b={scope:a,blur:a.onPagingBlur};b[Ext.supports.SpecialKeyDownRepeat?'keydown':'keypress']=a.onPagingKeyDown;return [{itemId:'first',tooltip:a.firstText,overflowText:a.firstText,iconCls:'x-tbar-page-first',disabled:!0,handler:a.moveFirst,scope:a},{itemId:'prev',tooltip:a.prevText,overflowText:a.prevText,iconCls:'x-tbar-page-prev',disabled:!0,handler:a.movePrevious,scope:a},'-',a.beforePageText,{xtype:'numberfield',itemId:'inputItem',name:'inputItem',cls:'x-tbar-page-number',allowDecimals:!1,minValue:1,hideTrigger:!0,enableKeyEvents:!0,keyNavEnabled:!1,selectOnFocus:!0,submitValue:!1,isFormField:!1,width:a.inputItemWidth,margin:'-1 2 3 2',listeners:b},{xtype:'tbtext',itemId:'afterTextItem',text:Ext.String.format(a.afterPageText,1)},'-',{itemId:'next',tooltip:a.nextText,overflowText:a.nextText,iconCls:'x-tbar-page-next',disabled:!0,handler:a.moveNext,scope:a},{itemId:'last',tooltip:a.lastText,overflowText:a.lastText,iconCls:'x-tbar-page-last',disabled:!0,handler:a.moveLast,scope:a},'-',{itemId:'refresh',tooltip:a.refreshText,overflowText:a.refreshText,iconCls:'x-tbar-loading',disabled:a.store.isLoading(),handler:a.doRefresh,scope:a}]},initComponent:function(){var a=this,c=a.items||a.buttons||[],b;a.bindStore(a.store||'ext-empty-store',!0);b=a.getPagingItems();if(a.prependButtons){a.items=c.concat(b)}else {a.items=b.concat(c)}delete a.buttons;if(a.displayInfo){a.items.push('->');a.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=!0;a.onLoad();a.calledInternal=!1}},updateInfo:function(){var a=this,d=a.child('#displayItem'),f=a.store,b=a.getPageData(),e,c;if(d){e=f.getCount();if(e===0){c=a.emptyMsg}else {c=Ext.String.format(a.displayMsg,b.fromRecord,b.toRecord,b.total)}d.setText(c)}},onLoad:function(){var a=this,f,c,b,g,h,d,e;h=a.store.getCount();d=h===0;if(!d){f=a.getPageData();c=f.currentPage;b=f.pageCount;if(c>b){if(b>0){a.store.loadPage(b)}else {a.getInputItem().reset()}return}g=Ext.String.format(a.afterPageText,isNaN(b)?1:b)}else {c=0;b=0;g=Ext.String.format(a.afterPageText,0)}Ext.suspendLayouts();e=a.child('#afterTextItem');if(e){e.setText(g)}e=a.getInputItem();if(e){e.setDisabled(d).setValue(c)}a.setChildDisabled('#first',c===1||d);a.setChildDisabled('#prev',c===1||d);a.setChildDisabled('#next',c===b||d);a.setChildDisabled('#last',c===b||d);a.setChildDisabled('#refresh',!1);a.updateInfo();Ext.resumeLayouts(!0);if(!a.calledInternal){a.fireEvent('change',a,f||a.emptyPageData)}},setChildDisabled:function(c,b){var a=this.child(c);if(a){a.setDisabled(b)}},getPageData:function(){var a=this.store,b=a.getTotalCount();return {total:b,currentPage:a.currentPage,pageCount:Math.ceil(b/a.pageSize),fromRecord:(a.currentPage-1)*a.pageSize+1,toRecord:Math.min(a.currentPage*a.pageSize,b)}},onLoadError:function(){this.setChildDisabled('#refresh',!1)},getInputItem:function(){return this.child('#inputItem')},readPageFromInput:function(d){var a=this.getInputItem(),b=!1,c;if(a){c=a.getValue();b=parseInt(c,10);if(!c||isNaN(b)){a.setValue(d.currentPage);return !1}}return b},onPagingBlur:function(c){var a=this.getInputItem(),b;if(a){b=this.getPageData().currentPage;a.setValue(b)}},onPagingKeyDown:function(a,b){this.processKeyEvent(a,b)},processKeyEvent:function(g,b){var e=this,c=b.getKey(),d=e.getPageData(),f=b.shiftKey?10:1,a;if(c===b.RETURN){b.stopEvent();a=e.readPageFromInput(d);if(a!==!1){a=Math.min(Math.max(1,a),d.pageCount);if(a!==d.currentPage&&e.fireEvent('beforechange',e,a)!==!1){e.store.loadPage(a)}}}else {if(c===b.HOME||c===b.END){b.stopEvent();a=c===b.HOME?1:d.pageCount;g.setValue(a)}else {if(c===b.UP||c===b.PAGE_UP||c===b.DOWN||c===b.PAGE_DOWN){b.stopEvent();a=e.readPageFromInput(d);if(a){if(c===b.DOWN||c===b.PAGE_DOWN){f*=-1}a+=f;if(a>=1&&a<=d.pageCount){g.setValue(a)}}}}}},beforeLoad:function(){this.setChildDisabled('#refresh',!0)},moveFirst:function(){if(this.fireEvent('beforechange',this,1)!==!1){this.store.loadPage(1);return !0}return !1},movePrevious:function(){var a=this,b=a.store,c=b.currentPage-1;if(c>0){if(a.fireEvent('beforechange',a,c)!==!1){b.previousPage();return !0}}return !1},moveNext:function(){var a=this,b=a.store,d=a.getPageData().pageCount,c=b.currentPage+1;if(c<=d){if(a.fireEvent('beforechange',a,c)!==!1){b.nextPage();return !0}}return !1},moveLast:function(){var a=this,b=a.getPageData().pageCount;if(a.fireEvent('beforechange',a,b)!==!1){a.store.loadPage(b);return !0}return !1},doRefresh:function(){var a=this,c=a.store,b=c.currentPage;if(a.fireEvent('beforechange',a,b)!==!1){c.loadPage(b);return !0}return !1},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':!0,'box':!0,'container':!0,'toolbar':!0,'pagingtoolbar':!0},['widget.pagingtoolbar'],[[Ext.util.StoreHolder.prototype.mixinId||Ext.util.StoreHolder.$className,Ext.util.StoreHolder]],[Ext.toolbar,'Paging',Ext,'PagingToolbar'],0);Ext.define('ExtThemeNeptune.toolbar.Paging',{override:'Ext.toolbar.Paging',defaultButtonUI:'plain-toolbar',inputItemWidth:40});Ext.cmd.derive('Ext.view.BoundList',Ext.view.View,{alternateClassName:'Ext.BoundList',pageSize:0,baseCls:'x-boundlist',itemCls:'x-boundlist-item',listItemCls:'',shadow:!1,trackOver:!0,preserveScrollOnRefresh:!0,enableInitialSelection:!1,refreshSelmodelOnRefresh:!0,componentLayout:'boundlist',navigationModel:'boundlist',scrollable:!0,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:!0}],focusOnToFront:!1,initComponent:function(){var a=this,b=a.baseCls,c=a.itemCls;a.selectedItemCls=b+'-selected';if(a.trackOver){a.overItemCls=b+'-item-over'}a.itemSelector='.'+c;a.scrollerSelector='ul.x-list-plain';if(a.floating){a.addCls(b+'-floating')}if(!a.tpl){a.tpl=new Ext.XTemplate('<tpl for=".">','<li role="option" unselectable="on" class="'+c+'">'+a.getInnerTpl(a.displayField)+'</li>','</tpl>')}else {if(!a.tpl.isTemplate){a.tpl=new Ext.XTemplate(a.tpl)}}if(a.pageSize){a.pagingToolbar=a.createPagingToolbar()}Ext.view.View.prototype.initComponent.call(this)},getRefOwner:function(){return this.pickerField||Ext.view.View.prototype.getRefOwner.call(this)},getRefItems:function(){var b=Ext.view.View.prototype.getRefItems.call(this),a=this.pagingToolbar;if(a){b.push(a)}return b},createPagingToolbar:function(){return Ext.widget('pagingtoolbar',{id:this.id+'-paging-toolbar',pageSize:this.pageSize,store:this.dataSource,border:!1,ownerCt:this,ownerLayout:this.getComponentLayout()})},getNodeContainer:function(){return this.listEl},refresh:function(){var b=this,a=b.tpl;a.field=b.pickerField;a.store=b.store;Ext.view.View.prototype.refresh.call(this);a.field=a.store=null},bindStore:function(c,b){var a=this.pagingToolbar;Ext.view.View.prototype.bindStore.apply(this,arguments);if(a){a.bindStore(c,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||Ext.EventObject.pointerType!=='touch')){a.focus()}Ext.view.View.prototype.onHide.apply(this,arguments)},afterComponentLayout:function(e,d,c,b){var a=this.pickerField;Ext.view.View.prototype.afterComponentLayout.apply(this,arguments);if(a&&a.alignPicker){a.alignPicker()}},onItemClick:function(e){var d=this,a=d.pickerField,c=a.valueField,b=d.getSelectionModel().getSelection();if(!a.multiSelect&&b.length){b=b[0];if(b&&a.isEqual(e.get(c),b.get(c))&&a.collapse){a.collapse()}}},onContainerClick:function(a){if(this.pagingToolbar&&this.pagingToolbar.rendered&&a.within(this.pagingToolbar.el)){return !1}},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':!0,'box':!0,'dataview':!0,'boundlist':!0},['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,displayTpl:!1,delimiter:', ',displayField:'text'},publishes:['selection'],twoWayBindable:['selection'],triggerCls:'x-form-arrow-trigger',hiddenName:'',collapseOnSelect:!1,hiddenDataCls:'x-hidden-display x-form-data-hidden',ariaRole:'combobox',childEls:{'hiddenDataEl':!0},filtered:!1,afterRender:function(){var a=this;Ext.form.field.Picker.prototype.afterRender.apply(this,arguments);a.setHiddenValue(a.value)},multiSelect:!1,triggerAction:'all',allQuery:'',queryParam:'query',queryMode:'remote',queryCaching:!0,autoLoadOnValue:!1,pageSize:0,anyMatch:!1,caseSensitive:!1,autoSelect:!0,typeAhead:!1,typeAheadDelay:250,selectOnTab:!0,forceSelection:!1,growToLongestValue:!0,clearFilterOnBlur:!0,defaultListConfig:{loadingHeight:70,minWidth:70,maxHeight:300,shadow:'sides'},transformInPlace:!0,clearValueOnEmpty:!0,getGrowWidth:function(){var a=this,i=a.inputEl.dom.value,h,e,g,c,b,f,d;if(a.growToLongestValue){h=a.displayField;e=a.store;g=e.data.length;c=0;for(b=0;b<g;b++){f=e.getAt(b).data[h];d=f.length;if(d>c){c=d;i=f}}}return i},initComponent:function(){var a=this,d=Ext.isDefined,f=a.store,e=a.transform,b,c;if('pinList' in a){a.collapseOnSelect=!a.pinList}if(e){b=Ext.getDom(e);if(b){if(!a.store){f=Ext.Array.map(Ext.Array.from(b.options),function(a){return [a.value,a.text]})}if(!a.name){a.name=b.name}if(!('value' in a)){a.value=b.value}}}a.bindStore(f||'ext-empty-store',!0,!0);c=a.queryMode==='local';if(!d(a.queryDelay)){a.queryDelay=c?10:500}if(!d(a.minChars)){a.minChars=c?0:4}Ext.form.field.Picker.prototype.initComponent.call(this);a.doQueryTask=new Ext.util.DelayedTask(a.doRawQuery,a);if(b){if(a.transformInPlace){a.render(b.parentNode,b);delete a.renderTo}Ext.removeNode(b)}},getSubTplMarkup:function(c){var b=this,a='',d=Ext.form.field.Picker.prototype.getSubTplMarkup.apply(this,arguments);if(b.hiddenName){a='<div id="'+c.id+'-hiddenDataEl" data-ref="hiddenDataEl" class="'+b.hiddenDataCls+'" role="presentation"></div>'}return a+d},applyDisplayTpl:function(a){var b=this;if(!a){a=new Ext.XTemplate('<tpl for=".">{[typeof values === "string" ? values : values["'+b.getDisplayField()+'"]]}<tpl if="xindex < xcount">'+b.getDelimiter()+'</tpl></tpl>')}else {if(!a.isTemplate){a=new Ext.XTemplate(a)}}return a},applyFilters:function(b,a){var c=this;if(b===null||b.isFilterCollection){return b}if(b){if(!a){a=this.getFilters()}a.beginUpdate();a.splice(0,a.length,b);a.each(function(d){d.ownerId=c.id});a.endUpdate()}return a},applyValueNotFoundText:function(b){var a=this,c=a.valueNotFoundRecord||(a.valueNotFoundRecord=new Ext.data.Model());c.set(a.displayField,b);if(a.valueField&&a.displayField!==a.valueField){c.set(a.valueField,b)}return b},getFilters:function(b){var a=this.filters;if(!a&&b!==!1){a=new Ext.util.FilterCollection();this.setFilters(a)}return a},updateFilters:function(a,c){var b=this;if(c){c.un('endupdate','onEndUpdateFilters',b)}if(a){a.on('endupdate','onEndUpdateFilters',b)}b.onEndUpdateFilters(a)},onEndUpdateFilters:function(a){var b=this,f=b.filtered,e=!!a&&a.length>0,d,c;if(f||e){b.filtered=e;d=[];c=b.store.getFilters();c.each(function(c){if(c.ownerId===b.id&&!a.contains(c)){d.push(c)}});c.splice(0,d,a.items)}},completeEdit:function(c){var a=this,b=a.queryFilter;Ext.form.field.Picker.prototype.completeEdit.call(this,c);a.doQueryTask.cancel();a.assertValue();if(b&&a.queryMode==='local'&&a.clearFilterOnBlur){a.getStore().getFilters().remove(b)}},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 a=this,e=a.getRawValue(),c=a.getDisplayValue(),d=a.lastSelectedRecords,b;if(a.forceSelection){if(a.multiSelect){if(e!==c){a.setRawValue(c)}}else {b=a.findRecordByDisplay(e);if(b){if(a.getDisplayValue([a.getRecordDisplayData(b)])!==c){a.select(b,!0)}}else {if(d){a.setValue(d)}else {a.setRawValue('')}}}}a.collapse()},onTypeAhead:function(){var a=this,e=a.displayField,d=a.store.findRecord(e,a.getRawValue()),f=a.getPicker(),b,g,c;if(d){b=d.get(e);g=b.length;c=a.getRawValue().length;f.highlightItem(f.getNode(d));if(c!==0&&c!==g){a.setRawValue(b);a.selectText(c,b.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 a=this,c=a.picker,b=a.queryFilter;if(b&&!a.store.isDestroyed){a.changingFilters=!0;a.getStore().removeFilter(b,!0);a.changingFilters=!1}a.pickerSelectionModel.destroy();if(c){c.bindStore(null)}},onBindStore:function(b,f){var a=this,d=a.picker,c,e;if(b){if(b.autoCreated){a.queryMode='local';a.valueField=a.displayField='field1';if(!b.expanded){a.displayField='field2'}a.setDisplayTpl(null)}if(!Ext.isDefined(a.valueField)){a.valueField=a.displayField}c={byValue:{rootProperty:'data',unique:!1}};c.byValue.property=a.valueField;b.setExtraKeys(c);if(a.displayField===a.valueField){b.byText=b.byValue}else {c.byText={rootProperty:'data',unique:!1};c.byText.property=a.displayField;b.setExtraKeys(c)}e={rootProperty:'data',extraKeys:{byInternalId:{property:'internalId'},byValue:{property:a.valueField,rootProperty:'data'}},listeners:{beginupdate:a.onValueCollectionBeginUpdate,endupdate:a.onValueCollectionEndUpdate,scope:a}};a.valueCollection=new Ext.util.Collection(e);a.pickerSelectionModel=new Ext.selection.DataViewModel({mode:a.multiSelect?'SIMPLE':'SINGLE',deselectOnContainerClick:!1,enableInitialSelection:!1,pruneRemoved:!1,selected:a.valueCollection,store:b,listeners:{scope:a,lastselectedchanged:a.updateBindSelection}});if(!f){a.resetToDefault()}if(d){d.setSelectionModel(a.pickerSelectionModel);if(d.getStore()!==b){d.bindStore(b)}}}},bindStore:function(a,e,c){var b=this,d=b.queryFilter;b.mixins.storeholder.bindStore.call(b,a,c);a=b.getStore();if(a&&d&&!e){a.getFilters().add(d)}if(!c&&a&&!a.isEmptyStore){b.setValueOnData()}},getStoreListeners:function(c){if(!c.isEmptyStore){var a=this,b={datachanged:a.onDataChanged,load:a.onLoad,exception:a.onException,update:a.onStoreUpdate,remove:a.checkValueOnChange};if(!c.getRemoteFilter()){b.filterchange=a.checkValueOnChange}return b}},onDataChanged:function(){if(this.grow&&this.growToLongestValue){this.autoSize()}},checkValueOnChange:function(){var a=this,b=a.getStore();if(!a.destroying&&b.isLoaded()){if(a.multiSelect){}else {if(a.forceSelection&&!a.changingFilters&&!a.findRecordByValue(a.value)){a.setValue(null)}}}},onStoreUpdate:function(b,a){this.updateValue()},onException:function(){this.collapse()},onLoad:function(b,e,d){var a=this,c=!a.valueCollection.byValue.get(a.value);if(d&&c&&!(b.lastOptions&&'rawQuery' in b.lastOptions)){a.setValueOnData()}a.checkValueOnChange()},setValueOnData:function(){var a=this;a.setValue(a.value);if(a.isExpanded&&a.getStore().getCount()){a.doAutoSelect()}},doRawQuery:function(){var a=this,b=a.inputEl.dom.value;if(a.multiSelect){b=b.split(a.delimiter).pop()}a.doQuery(b,!1,!0)},doQuery:function(c,d,e){var a=this,b=a.beforeQuery({query:c||'',rawQuery:e,forceAll:d,combo:a,cancel:!1});if(b!==!1&&!b.cancel){if(a.queryCaching&&b.query===a.lastQuery){a.expand()}else {a.lastQuery=b.query;if(a.queryMode==='local'){a.doLocalQuery(b)}else {a.doRemoteQuery(b)}}}return !0},beforeQuery:function(a){var b=this;if(b.fireEvent('beforequery',a)===!1){a.cancel=!0}else {if(!a.cancel){if(a.query.length<b.minChars&&!a.forceAll){a.cancel=!0}}}return a},doLocalQuery:function(d){var a=this,c=d.query,e=a.getStore(),b=a.queryFilter;a.queryFilter=null;a.changingFilters=!0;if(b){e.removeFilter(b,!0)}if(c){b=a.queryFilter=new Ext.util.Filter({id:a.id+'-filter',anyMatch:a.anyMatch,caseSensitive:a.caseSensitive,root:'data',property:a.displayField,value:a.enableRegEx?new RegExp(c):c});e.addFilter(b,!0)}a.changingFilters=!1;if(a.store.getCount()||a.getPicker().emptyText){a.getPicker().refresh();a.expand()}else {a.collapse()}a.afterQuery(d)},doRemoteQuery:function(b){var a=this,c=function(){if(!a.isDestroyed){a.afterQuery(b)}};a.expand();if(a.pageSize){a.loadPage(1,{rawQuery:b.rawQuery,callback:c})}else {a.store.load({params:a.getParams(b.query),rawQuery:b.rawQuery,callback:c})}},afterQuery:function(b){var a=this;if(a.store.getCount()){if(a.typeAhead){a.doTypeAhead()}if(b.rawQuery){if(a.picker&&!a.picker.getSelectionModel().hasSelection()){a.doAutoSelect()}}else {a.doAutoSelect()}}a.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 !1},getParams:function(c){var a={},b=this.queryParam;if(b){a[b]=c}return a},doAutoSelect:function(){var a=this,b=a.picker;if(b&&a.autoSelect&&a.store.getCount()>0){b.getNavigationModel().setPosition(a.picker.getSelectionModel().lastSelected||0)}},doTypeAhead:function(){var a=this,b=Ext.event.Event;if(!a.typeAheadTask){a.typeAheadTask=new Ext.util.DelayedTask(a.onTypeAhead,a)}if(a.lastKey!==b.BACKSPACE&&a.lastKey!==b.DELETE){a.typeAheadTask.delay(a.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,!0)}else {if(a.triggerAction==='last'){a.doQuery(a.lastQuery,!0)}else {a.doQuery(a.getRawValue(),!1,!0)}}}}},onFieldMutation:function(b){var a=this,c=b.getKey(),d=c===b.BACKSPACE||c===b.DELETE,e=a.inputEl.dom.value,f=e.length;if(!a.readOnly&&(e!==a.lastMutatedValue||d)&&c!==b.TAB){a.lastMutatedValue=e;a.lastKey=c;if(f&&(b.type!=='keyup'||(!b.isSpecialKey()||d))){a.doQueryTask.delay(a.queryDelay)}else {if(!f&&(!c||d)){if(!a.multiSelect){a.value=null;a.displayTplData=undefined}if(a.clearValueOnEmpty){a.valueCollection.removeAll()}a.collapse();if(a.queryFilter){a.changingFilters=!0;a.store.removeFilter(a.queryFilter,!0);a.changingFilters=!1}}Ext.form.field.Picker.prototype.onFieldMutation.call(this,b)}}},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 a=this,b,c=Ext.apply({xtype:'boundlist',pickerField:a,selectionModel:a.pickerSelectionModel,floating:!0,hidden:!0,store:a.getPickerStore(),displayField:a.displayField,preserveScrollOnRefresh:!0,pageSize:a.pageSize,tpl:a.tpl},a.listConfig,a.defaultListConfig);b=a.picker=Ext.widget(c);if(a.pageSize){b.pagingToolbar.on('beforechange',a.onPageChange,a)}if(!b.initialConfig.maxHeight){b.on({beforeshow:a.onBeforePickerShow,scope:a})}b.getSelectionModel().on({beforeselect:a.onBeforeSelect,beforedeselect:a.onBeforeDeselect,scope:a});b.getNavigationModel().navigateOnSpace=!1;return b},getPickerStore:function(){return this.store},onBeforePickerShow:function(d){var b=this,a=b.getPosition()[1]-Ext.getBody().getScroll().top,c=Ext.Element.getViewportHeight()-a-b.getHeight();d.maxHeight=Math.max(a,c)-5},onBeforeSelect:function(c,b,a){return this.fireEvent('beforeselect',this,b,a)},onBeforeDeselect:function(c,b,a){return this.fireEvent('beforedeselect',this,b,a)},getSelection:function(){var a=this.getPicker().getSelectionModel(),b=a.getSelection();return b.length?a.getLastSelected():null},updateSelection:function(c){var a=this,b;if(!a.ignoreNextSelection){a.ignoreNextSelection=!0;b=a.getPicker().getSelectionModel();if(c){b.select(c);a.hasHadSelection=!0}else {b.deselectAll()}a.ignoreNextSelection=!1}},updateBindSelection:function(d,c){var a=this,b=null;if(!a.ignoreNextSelection){a.ignoreNextSelection=!0;if(c.length){b=d.getLastSelected();a.hasHadSelection=!0}if(a.hasHadSelection){a.setSelection(b)}a.ignoreNextSelection=!1}},onValueCollectionBeginUpdate:Ext.emptyFn,onValueCollectionEndUpdate:function(){var a=this,e=a.store,b=a.valueCollection.getRange(),d=b[0],c=b.length;a.updateBindSelection(a.pickerSelectionModel,b);if(a.isSelectionUpdating()){return}Ext.suspendLayouts();a.lastSelection=b;if(c){a.lastSelectedRecords=b}a.updateValue();if(c&&(!a.multiSelect&&e.contains(d)||a.collapseOnSelect||!e.getCount())){a.updatingValue=!0;a.collapse();a.updatingValue=!1}Ext.resumeLayouts(!0);if(c&&!a.suspendCheckChange){if(!a.multiSelect){b=d}a.fireEvent('select',a,b)}},isSelectionUpdating:function(){var a=this.pickerSelectionModel;return a.deselectingDuringSelect||a.refreshing},onExpand:function(){var a=this.getPicker().getNavigationModel();if(a){a.enable()}this.doAutoSelect()},onCollapse:function(){var a=this.getPicker().getNavigationModel();if(a){a.disable()}if(this.updatingValue){this.doQueryTask.cancel()}},select:function(b,e){var a=this,d=a.picker,c;if(b&&b.isModel&&e===!0&&d){c=!d.getSelectionModel().isSelected(b)}if(!c){a.suspendEvent('select')}a.setValue(b);a.resumeEvent('select')},findRecord:function(c,d){var b=this.store,a=b.findExact(c,d);return a!==-1?b.getAt(a):!1},getSelectedRecord:function(){return this.findRecordByValue(this.value)||null},findRecordByValue:function(c){var a=this.store.byValue.get(c),b=!1;if(a){b=a[0]||a}return b},findRecordByDisplay:function(c){var a=this.store.byText.get(c),b=!1;if(a){b=a[0]||a}return b},addValue:function(a){if(a!=null){return this.doSetValue(a,!0)}},setValue:function(b){var a=this;if(b!=null){return a.doSetValue(b)}else {a.suspendEvent('select');a.valueCollection.beginUpdate();a.pickerSelectionModel.deselectAll();a.valueCollection.endUpdate();a.lastSelectedRecords=null;a.resumeEvent('select')}},setRawValue:function(a){Ext.form.field.Picker.prototype.setRawValue.call(this,a);this.lastMutatedValue=a},doSetValue:function(c,p){var a=this,f=a.getStore(),v=f.getModel(),e=[],u=[],r=a.autoLoadOnValue,m=f.getCount()>0||f.isLoaded(),l=f.hasPendingLoad(),o=r&&!m&&!l,t=a.forceSelection,n=a.pickerSelectionModel,s=a.displayField===a.valueField,j=f.isEmptyStore,k=a.lastSelection,d,h,b,i,g,q;if(l||o||!m||j){if(!c.isModel){if(p){a.value=Ext.Array.from(a.value).concat(c)}else {a.value=c}a.setHiddenValue(a.value);a.setRawValue(s?c:'')}if(o&&!j){f.load()}if(!c.isModel||j){return a}}c=p?Ext.Array.from(a.value).concat(c):Ext.Array.from(c);for(d=0,h=c.length;d<h;d++){b=c[d];if(!b||!b.isModel){b=a.findRecordByValue(q=b);if(!b){b=a.valueCollection.find(a.valueField,q)}}if(!b){if(!t){if(!b&&c[d]){i={};i[a.displayField]=c[d];if(a.valueField&&a.displayField!==a.valueField){i[a.valueField]=c[d]}b=new v(i)}}else {if(a.valueNotFoundRecord){b=a.valueNotFoundRecord}}}if(b){e.push(b);u.push(b.get(a.valueField))}}if(k){h=k.length;if(h===e.length){for(d=0;!g&&d<h;d++){if(Ext.Array.indexOf(a.lastSelection,e[d])===-1){g=!0}}}else {g=!0}}else {g=e.length}if(g){a.suspendEvent('select');a.valueCollection.beginUpdate();if(e.length){n.select(e,!1)}else {n.deselectAll()}a.valueCollection.endUpdate();a.resumeEvent('select')}else {a.updateValue()}return a},updateValue:function(){var a=this,f=a.valueCollection.getRange(),h=f.length,b=[],e=a.displayTplData||(a.displayTplData=[]),g=a.inputEl,d,c;e.length=0;for(d=0;d<h;d++){c=f[d];e.push(a.getRecordDisplayData(c));if(c!==a.valueNotFoundRecord){b.push(c.get(a.valueField))}}a.setHiddenValue(b);a.value=a.multiSelect?b:b[0];if(!Ext.isDefined(a.value)){a.value=undefined}a.displayTplData=e;if(g&&a.emptyText&&!Ext.isEmpty(a.value)){g.removeCls(a.emptyCls)}a.setRawValue(a.getDisplayValue());a.checkChange();a.applyEmptyText()},setHiddenValue:function(f){var h=this,i=h.hiddenName,e,d,b,g,c,a;if(!h.hiddenDataEl||!i){return}f=Ext.Array.from(f);d=h.hiddenDataEl.dom;b=d.childNodes;g=b[0];c=f.length;a=b.length;if(!g&&c>0){h.hiddenDataEl.setHtml(Ext.DomHelper.markup({tag:'input',type:'hidden',name:i}));a=1;g=d.firstChild}while(a>c){d.removeChild(b[0]);--a}while(a<c){d.appendChild(g.cloneNode(!0));++a}for(e=0;e<c;e++){b[e].value=f[e]}},getDisplayValue:function(a){a=a||this.displayTplData;return this.getDisplayTpl().apply(a)},getRecordDisplayData:function(a){return a.data},getValue:function(){var a=this,e=a.getStore(),d=a.picker,c=a.getRawValue(),b=a.value;if(!e.isEmptyStore&&a.getDisplayValue()!==c){a.displayTplData=undefined;if(d){a.valueCollection.suspendEvents();d.getSelectionModel().deselectAll();a.valueCollection.resumeEvents();a.lastSelection=null}if(e.isLoaded()&&(a.multiSelect||a.forceSelection)){b=a.value=undefined}else {b=a.value=c}}a.value=b==null?null:b;return a.value},getSubmitValue:function(){var a=this.getValue();if(Ext.isEmpty(a)){a=''}return a},isEqual:function(b,c){var e=Ext.Array.from,a,d;b=e(b);c=e(c);d=b.length;if(d!==c.length){return !1}for(a=0;a<d;a++){if(c[a]!==b[a]){return !1}}return !0},clearValue:function(){this.setValue(null)},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':!0,'box':!0,'field':!0,'textfield':!0,'pickerfield':!0,'combobox':!0,'combo':!0},['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.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(e,b){var a=this,d=a.items,c=a.addHandler;if(!a.disabled){if(c){c.call(a.scope||b,b)}if(d){d.add(b)}}},onItemRemove:function(e,b){var a=this,d=a.items,c=a.removeHandler;if(!a.disabled){if(c){c.call(a.scope||b,b)}if(d){d.remove(b)}}},onContainerAdd:function(c,i){var a=this,d,e,h=a.handleAdd,g=a.handleRemove,b,f;if(c.isContainer){c.on('add',h,a);c.on('dockedadd',h,a);c.on('remove',g,a);c.on('dockedremove',g,a)}if(i!==!0){d=c.query(a.selector);for(b=0,e=d.length;b<e;++b){f=d[b];a.onItemAdd(f.ownerCt,f)}}d=c.query('>container');for(b=0,e=d.length;b<e;++b){a.onContainerAdd(d[b],!0)}},handleRemove:function(c,a){var b=this;if(!b.disabled){if(a.is(b.selector)){b.onItemRemove(c,a)}if(a.isQueryable){b.onContainerRemove(c,a)}}},onContainerRemove:function(g,c){var d=this,b,a,e,f;if(!c.isDestroyed&&!c.destroying&&c.isContainer){d.removeCtListeners(c);b=c.query(d.selector);for(a=0,e=b.length;a<e;++a){f=b[a];d.onItemRemove(f.ownerCt,f)}b=c.query('container');for(a=0,e=b.length;a<e;++a){d.removeCtListeners(b[a])}}else {d.invalidateItems(!0)}},removeCtListeners:function(b){var a=this;b.un('add',a.handleAdd,a);b.un('dockedadd',a.handleAdd,a);b.un('remove',a.handleRemove,a);b.un('dockedremove',a.handleRemove,a)},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 a=this,b=a.invalidateHandler;if(c&&b){b.call(a.scope||a,a)}a.items=null}},1,0,0,0,0,0,[Ext.container,'Monitor'],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(a){var c=a.fieldDefaults,b=this.fieldDefaults;if(b){if(c){a.fieldDefaults=Ext.apply(Ext.Object.chain(c),b)}else {a.fieldDefaults=b}}},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(b,c){var a=this;if(b!==a){a.fireEvent('fieldvaliditychange',a,b,c);a.onFieldValidityChange(b,c)}},handleFieldErrorChange:function(b,c){var a=this;if(b!==a){a.fireEvent('fielderrorchange',a,b,c);a.onFieldErrorChange(b,c)}},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:!0,waitForOuterWidthInDom:!0,beginLayout:function(a){var b=this.owner.containerEl;Ext.layout.component.Auto.prototype.beginLayout.apply(this,arguments);a.hasRawContent=!0;b.setStyle('width','');b.setStyle('height','');a.containerElContext=a.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:!0,childEls:['containerEl'],combineLabels:!1,labelConnector:', ',combineErrors:!1,maskOnDisable:!1,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(b){var a=this;if(b.isLabelable&&Ext.isGecko&&a.layout.type==='absolute'&&!a.hideLabel&&a.labelAlign!=='top'){b.x+=a.labelWidth+a.labelPad}Ext.container.Container.prototype.onAdd.apply(this,arguments);if(b.isLabelable&&a.combineLabels){b.oldHideLabel=b.hideLabel;b.hideLabel=!0}a.updateLabel()},onRemove:function(a,c){var b=this;Ext.container.Container.prototype.onRemove.apply(this,arguments);if(!c){if(a.isLabelable&&b.combineLabels){a.hideLabel=a.oldHideLabel}b.updateLabel()}},initRenderData:function(){var b=this,a=Ext.container.Container.prototype.initRenderData.call(this);a.containerElCls=b.containerElCls;return Ext.applyIf(a,b.getLabelableRenderData())},getFieldLabel:function(){var a=this.fieldLabel||'';if(!a&&this.combineLabels){a=Ext.Array.map(this.query('[isFieldLabelable]'),function(a){return a.getFieldLabel()}).join(this.labelConnector)}return a},getSubTplData:function(){var a=this.initRenderData();Ext.apply(a,this.subTplData);return a},getSubTplMarkup:function(d){var b=this,a=b.getTpl('fieldSubTpl'),c;if(!a.renderContent){b.setupRenderTpl(a)}c=a.apply(b.getSubTplData(d));return c},updateLabel:function(){var a=this,b=a.labelEl;if(b){a.setFieldLabel(a.getFieldLabel())}},onFieldErrorChange:function(){if(this.combineErrors){var a=this,d=a.getActiveError(),c=Ext.Array.filter(a.query('[isFormField]'),function(a){return a.hasActiveError()}),b=a.getCombinedErrors(c);if(b){a.setActiveErrors(b)}else {a.unsetActiveError()}if(d!==a.getActiveError()){a.updateLayout()}}},getCombinedErrors:function(f){var g=[],b,j=f.length,d,c,a,i,h,e;for(b=0;b<j;b++){d=f[b];c=d.getActiveErrors();i=c.length;for(a=0;a<i;a++){h=c[a];e=d.getFieldLabel();g.push((e?e+': ':'')+h)}}return g},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':!0,'box':!0,'container':!0,'fieldcontainer':!0},['widget.fieldcontainer'],[['labelable',Ext.form.Labelable],['fieldAncestor',Ext.form.FieldAncestor]],[Ext.form,'FieldContainer'],0);Ext.cmd.derive('Ext.panel.Bar',Ext.container.Container,{vertical:!1,_verticalSides:{left:1,right:1},initComponent:function(){var a=this,b=a.vertical;a.dock=a.dock||(b?'left':'top');a.layout=Ext.apply(b?{type:'vbox',align:'middle',alignRoundingMethod:'ceil'}:{type:'hbox',align:'middle',alignRoundingMethod:'floor'},a.layout);Ext.container.Container.prototype.initComponent.call(this)},onAdded:function(a,c,b){this.initOrientation();Ext.container.Container.prototype.onAdded.call(this,a,c,b)},onRemoved:function(a){this.removeClsWithUI(this.uiCls);Ext.container.Container.prototype.onRemoved.call(this,a)},beforeRender:function(){var a=this;if(a.forceOrientation||!a.ownerCt){a.initOrientation()}Ext.container.Container.prototype.beforeRender.call(this)},setDock:function(d){var a=this,c,b;if(d!==a.dock){Ext.suspendLayouts();a.clearOrientation();Ext.container.Container.prototype.setDock.call(this,d);a.initOrientation();b=a.vertical;c=a.layout;c.setVertical(b);c.setAlignRoundingMethod(b?'ceil':'floor');Ext.resumeLayouts(!0)}},privates:{clearOrientation:function(){this.removeClsWithUI([this.vertical?'vertical':'horizontal',this.getDockName()])},getDockName:function(){return this.dock},initOrientation:function(){var a=this,b=a.dock,c=a.vertical=b?b in a._verticalSides:a.vertical;a.addClsWithUI([c?'vertical':'horizontal',a.getDockName()])}}},0,0,['component','box','container'],{'component':!0,'box':!0,'container':!0},0,0,[Ext.panel,'Bar'],0);Ext.cmd.derive('Ext.panel.Title',Ext.Component,{isTitle:!0,noWrap:!0,textAlign:'left',iconAlign:'left',rotation:0,text:' ',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"> </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 b=this,c=b.getRotation(),a,d,e;if(c&&!Ext.isIE8){e=b.el;a=b.lastBox;d=a.x;e.setStyle(b._getVerticalAdjustDirection(),d+(c===1?a.width:-a.height)+'px')}Ext.Component.prototype.afterComponentLayout.call(this)},onRender:function(){var a=this,b=a.getRotation(),c=a.el;Ext.Component.prototype.onRender.call(this);if(b){c.setVertical(a._rotationAngles[b])}if(Ext.supports.FixedTableWidthBug){c._needsTableWidthFix=!0}},applyText:function(a){if(!a){a=' '}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 a=this,g=a.getIcon(),f=a.getIconCls(),b=a.getGlyph(),d=Ext._glyphFontFamily,e=a.getIconAlign(),c;if(typeof b==='string'){c=b.split('@');b=c[0];d=c[1]}return {id:a.id,ui:a.ui,itemCls:a._itemCls,iconUrl:g,iconCls:f,iconWrapCls:a._iconWrapCls,baseIconCls:a._baseIconCls,iconAlignCls:a._iconAlignClasses[e],glyph:b,glyphCls:b?a._glyphCls:'',glyphFontFamily:d}},initRenderData:function(){var a=this,c,b;b=Ext.apply({text:a.getText(),headerRole:a.headerRole,id:a.id,ui:a.ui,itemCls:a._itemCls,textCls:a._textCls,iconMarkup:null,iconBeforeTitle:null},Ext.Component.prototype.initRenderData.call(this));if(a._hasIcon()){c=a.getIconAlign();b.iconMarkup=a.getIconMarkup();b.iconBeforeTitle=c==='top'||c==='left'}return b},onAdded:function(a,f,e){var d=this,c=d._titleSuffix,b=a.baseCls;d.addCls([b+c,b+c+'-'+a.ui]);Ext.Component.prototype.onAdded.call(this,a,f,e)},updateGlyph:function(a,g){a=a||0;var b=this,f=b._glyphCls,c,d,e;b.glyph=a;if(b.rendered){b._syncIconVisibility();c=b.iconEl;if(typeof a==='string'){e=a.split('@');a=e[0];d=e[1]||Ext._glyphFontFamily}if(!a){c.dom.innerHTML='';c.removeCls(f)}else {if(g!==a){c.dom.innerHTML='&#'+a+';';c.addCls(f)}}if(d){c.setStyle('font-family',d)}if(b._didIconStateChange(g,a)){b.updateLayout()}}},updateIcon:function(a,c){a=a||'';var b=this,d;if(b.rendered&&a!==c){b._syncIconVisibility();d=b.iconEl;d.setStyle('background-image',a?'url('+a+')':'');if(b._didIconStateChange(c,a)){b.updateLayout()}}},updateIconAlign:function(d,f){var a=this,b=a.iconWrapEl,e,c;if(a.iconWrapEl){e=a.el;c=a._iconAlignClasses;if(f){b.removeCls(c[f])}b.addCls(c[d]);if(d==='top'||d==='left'){e.insertFirst(b)}else {e.appendChild(b)}a.updateLayout()}},updateIconCls:function(a,c){a=a||'';var b=this,d;if(b.rendered&&c!==a){b._syncIconVisibility();d=b.iconEl;if(c){d.removeCls(c)}d.addCls(a);if(b._didIconStateChange(c,a)){b.updateLayout()}}},updateRotation:function(d,e){var a=this,b,c;if(a.rendered){b=a.el;c=a._rotationClasses;a.removeCls(c[e]);a.addCls(c[d]);b.setHorizontal();if(d){b.setVertical(a._rotationAngles[d])}b.setStyle({right:'',left:'',top:'',height:'',width:''});a.lastBox=null;a.updateLayout()}},updateText:function(a){if(this.rendered){this.textEl.setHtml(a);this.updateLayout()}},updateTextAlign:function(d,c){var a=this,b=a._textAlignClasses;if(a.rendered){if(c){a.removeCls(b[c])}a.addCls(b[d]);a.updateLayout()}},privates:{_getVerticalAdjustDirection:function(){return 'left'},_didIconStateChange:function(c,b){var a=Ext.isEmpty(b);return Ext.isEmpty(c)?!a:a},_hasIcon:function(){return !!(this.getIcon()||this.getIconCls()||this.getGlyph())},_syncIconVisibility:function(){var a=this,f=a.el,e=a._hasIcon(),b=a.iconWrapEl,d,c;if(e&&!b){c=a.iconAlign;d=c==='left'||c==='top';f.dom.insertAdjacentHTML(d?'afterbegin':'beforeend',a.getIconMarkup());b=a.iconWrapEl=f[d?'first':'last']();a.iconEl=b.first()}if(b){b.setDisplayed(e)}}}},0,['title'],['component','box','title'],{'component':!0,'box':!0,'title':!0},['widget.title'],0,[Ext.panel,'Title'],0);Ext.cmd.derive('Ext.panel.Tool',Ext.Component,{isTool:!0,focusable:!0,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:!0,cacheHeight:!0,cacheWidth:!0,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(b,c){var a=this,g=a.tooltip,d=a.tooltipType,h=a.id,f=a.el,e;if(g&&Ext.quickTipsActive&&Ext.isObject(g)){Ext.tip.QuickTipManager.unregister(h)}a.tooltip=b;if(c){a.tooltipType=c}if(b){if(Ext.quickTipsActive&&Ext.isObject(b)){Ext.tip.QuickTipManager.register(Ext.apply({target:h},b))}else {if(f){if(c&&d&&c!==d){e=a.tipAttrs[d]||'title';f.dom.removeAttribute(e)}e=a.tipAttrs[c||d]||'title';f.dom.setAttribute(e,b)}}}},setType:function(b){var a=this,c=a.type;a.type=b;if(a.rendered){if(c){a.toolEl.removeCls(a.baseCls+'-'+c)}a.toolEl.addCls(a.baseCls+'-'+b)}else {a.renderData.type=b}return a},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(b,c){var a=this;if(a.disabled){return !1}a.el.removeCls(a.toolPressedCls+' '+a.toolOverCls);if(a.stopEvent!==!1){b.stopEvent()}if(a.handler){Ext.callback(a.handler,a.scope,[b,c,a.ownerCt,a],0,a)}else {if(a.callback){Ext.callback(a.callback,a.scope,[a.toolOwner||a.ownerCt,a,b],0,a)}}a.fireEvent('click',a,b,a.toolOwner||a.ownerCt);return !0},onMouseDown:function(){if(this.disabled){return !1}this.el.addCls(this.toolPressedCls)},onMouseOver:function(){if(this.disabled){return !1}this.el.addCls(this.toolOverCls)},onMouseOut:function(){this.el.removeCls(this.toolOverCls)}}},0,['tool'],['component','box','tool'],{'component':!0,'box':!0,'tool':!0},['widget.tool'],0,[Ext.panel,'Tool'],0);Ext.cmd.derive('Ext.panel.Header',Ext.panel.Bar,{isHeader:!0,defaultType:'tool',indicateDrag:!1,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(a,b){if(typeof a==='string'){a={text:a}}return Ext.merge(b?Ext.Object.chain(b):{},a)}},titleAlign:null,titlePosition:null,titleRotation:null},headerCls:'x-header',initComponent:function(){var a=this,b=a.items,d=a.itemPosition,c=[a.headerCls];a.tools=a.tools||[];a.items=b=b?b.slice():[];if(d!==undefined){a._userItems=b.slice();a.items=b=[]}a.indicateDragCls=a.headerCls+'-draggable';if(a.indicateDrag){c.push(a.indicateDragCls)}a.addCls(c);a.syncNoBorderCls();Ext.Array.push(b,a.tools);a.tools.length=0;Ext.panel.Bar.prototype.initComponent.call(this);a.on({dblclick:a.onDblClick,click:a.onClick,element:'el',scope:a})},addTool:function(a){this.add(Ext.ComponentManager.create(a,'tool'))},afterLayout:function(){var a=this,e,b,c,d;if(a.vertical){b=a.frameTR;if(b){e=a.frameBR;c=a.frameTL;d=a.getWidth()-b.getPadding('r')-(c?c.getPadding('l'):a.el.getBorderWidth('l'))+'px';e.setStyle('background-position-x',d);b.setStyle('background-position-x',d)}}Ext.panel.Bar.prototype.afterLayout.call(this)},applyTitle:function(a,d){var b=this,c,e;a=a||'';c=typeof a==='string';if(c){a={text:a}}if(d){Ext.suspendLayouts();d.setConfig(a);Ext.resumeLayouts(!0);a=d}else {if(c){a.xtype='title'}a.ui=b.ui;a.headerRole=b.headerRole;e='rotation' in a;a=Ext.create(a);if(!e&&b.vertical&&b.titleRotation==='default'){a.rotation=1}}return a},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 a=this,b=a.itemPosition;a.protoEl.unselectable();Ext.panel.Bar.prototype.beforeRender.call(this);if(b!==undefined){a.insert(b,a._userItems)}},getTools:function(){return this.tools.slice()},onAdd:function(a,c){var b=this.tools;Ext.panel.Bar.prototype.onAdd.call(this,a,c);if(a.isTool){b.push(a);b[a.type]=a}},onAdded:function(a,c,b){this.syncNoBorderCls();Ext.panel.Bar.prototype.onAdded.call(this,a,c,b)},onRemoved:function(a,c,b){this.syncNoBorderCls();Ext.panel.Bar.prototype.onRemoved.call(this,a,c,b)},setDock:function(e){var a=this,c=a.getTitle(),b=a.getTitleRotation(),d=c.getRotation();Ext.suspendLayouts();Ext.panel.Bar.prototype.setDock.call(this,e);if(b==='default'){b=a.vertical?1:0;if(b!==d){c.setRotation(b)}if(a.rendered){a.resetItemMargins()}}Ext.resumeLayouts(!0)},updateGlyph:function(a){this.getTitle().setGlyph(a)},updateIcon:function(a){this.getTitle().setIcon(a)},updateIconAlign:function(a,b){this.getTitle().setIconAlign(a)},updateIconCls:function(a){this.getTitle().setIconCls(a)},updateTitle:function(a,b){if(!b){this.insert(this.getTitlePosition(),a);this._titleInItems=!0}this.titleCmp=a},updateTitleAlign:function(a,b){this.getTitle().setTextAlign(a)},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(c,a){var b='.'+Ext.panel.Tool.prototype.baseCls;if(!a.getTarget(b)){this.fireEvent(c,this,a)}},getFocusEl:function(){return this.el},getFramingInfoCls:function(){var a=this,c=Ext.panel.Bar.prototype.getFramingInfoCls.call(this),b=a.ownerCt;if(!a.expanding&&b&&(b.collapsed||a.isCollapsedExpander)){c+='-'+b.collapsedCls}return c+'-'+a.dock},onClick:function(a){this.fireClickEvent('click',a)},onDblClick:function(a){this.fireClickEvent('dblclick',a)},syncBeforeAfterTitleClasses:function(l){var c=this,j=c.items,i=j.items,h=c.getTitlePosition(),k=i.length,g=j.generation,f=c.syncBeforeAfterGen,e,d,b,a;if(!l&&f===g){return}c.syncBeforeAfterGen=g;for(b=0;b<k;++b){a=i[b];e=a.afterTitleCls||(a.afterTitleCls=a.baseCls+'-after-title');d=a.beforeTitleCls||(a.beforeTitleCls=a.baseCls+'-before-title');if(!c.title||b<h){if(f){a.removeCls(e)}a.addCls(d)}else {if(b>h){if(f){a.removeCls(d)}a.addCls(e)}}}},syncNoBorderCls:function(){var a=this,b=this.ownerCt,c=a.headerCls+'-noborder';if(b?b.border===!1&&!b.frame:a.border===!1){a.addCls(c)}else {a.removeCls(c)}}}},0,['header'],['component','box','container','header'],{'component':!0,'box':!0,'container':!0,'header':!0},['widget.header'],0,[Ext.panel,'Header'],0);Ext.cmd.derive('Ext.dd.DragDrop',Ext.Base,{constructor:function(a,c,b){if(a){this.init(a,c,b)}},id:null,config:null,dragElId:null,handleElId:null,invalidHandleTypes:null,invalidHandleIds:null,invalidHandleClasses:null,startPageX:0,startPageY:0,groups:null,locked:!1,lock:function(){this.locked=!0},moveOnly:!1,unlock:function(){this.locked=!1},isTarget:!0,padding:null,_domRef:null,__ygDragDrop:!0,constrainX:!1,constrainY:!1,minX:0,maxX:0,minY:0,maxY:0,maintainOffset:!1,xTicks:null,yTicks:null,primaryButtonOnly:!0,available:!1,hasOuterHandles:!1,triggerEvent:'mousedown',b4StartDrag:function(a,b){},startDrag:function(a,b){},b4Drag:function(a){},onDrag:function(a){},onDragEnter:function(b,a){},b4DragOver:function(a){},onDragOver:function(b,a){},b4DragOut:function(a){},onDragOut:function(b,a){},b4DragDrop:function(a){},onDragDrop:function(b,a){},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(j,a,k){if(Ext.isNumber(a)){a={left:a,right:a,top:a,bottom:a}}a=a||this.defaultPadding;var c=Ext.get(this.getEl()).getBox(),e=Ext.get(j),i=e.getScroll(),b,d=e.dom,h,g,f;if(d===document.body){b={x:i.left,y:i.top,width:Ext.Element.getViewportWidth(),height:Ext.Element.getViewportHeight()}}else {h=e.getXY();b={x:h[0],y:h[1],width:d.clientWidth,height:d.clientHeight}}g=c.y-b.y;f=c.x-b.x;this.resetConstraints();this.setXConstraint(f-(a.left||0),b.width-f-c.width-(a.right||0),this.xTickSize);this.setYConstraint(g-(a.top||0),b.height-g-c.height-(a.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(b,d,c){var a=this;a.el=a.el||Ext.get(b);a.initTarget(b,d,c);Ext.get(a.id).on(a.triggerEvent,a.handleMouseDown,a)},initTarget:function(a,b,c){this.config=c||{};this.DDMInstance=Ext.dd.DragDropManager;this.groups={};if(typeof a!=='string'){a=Ext.id(a)}this.id=a;this.addToGroup(b?b:'default');this.handleElId=a;this.setDragElId(a);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!==!1;this.maintainOffset=this.config.maintainOffset;this.primaryButtonOnly=this.config.primaryButtonOnly!==!1},handleOnAvailable:function(){this.available=!0;this.resetConstraints();this.onAvailable()},setPadding:function(a,b,c,d){if(!b&&0!==b){this.padding=[a,a,a,a]}else {if(!c&&0!==c){this.padding=[a,b,a,b]}else {this.padding=[a,b,c,d]}}},setInitPosition:function(e,f){var d=this.getEl(),b,c,a;if(!this.DDMInstance.verifyEl(d)){return}b=e||0;c=f||0;a=Ext.fly(d).getXY();this.initPageX=a[0]-b;this.initPageY=a[1]-c;this.lastPageX=a[0];this.lastPageY=a[1];this.setStartPosition(a)},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]=!0;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=!0},unreg:function(){var a=this,b;if(a._domRef){b=Ext.fly(a.id);if(b){b.un(a.triggerEvent,a.handleMouseDown,a)}}a._domRef=null;a.DDMInstance._remove(a,a.autoGroup)},destroy:function(){this.unreg();this.isDestroyed=!0},isLocked:function(){return this.DDMInstance.isLocked()||this.locked},handleMouseDown:function(b,c){var a=this;if(a.primaryButtonOnly&&b.button||a.isLocked()){return}a.DDMInstance.refreshCache(a.groups);if(a.hasOuterHandles||a.DDMInstance.isOverTarget(b.getPoint(),a)){if(a.clickValidator(b)){a.setStartPosition();a.b4MouseDown(b);a.onMouseDown(b);a.DDMInstance.handleMouseDown(b,a);a.DDMInstance.stopEvent(b)}}},clickValidator:function(b){var a=b.getTarget();return this.isValidHandleChild(a)&&(this.id===this.handleElId||this.DDMInstance.handleWasClicked(a,this.id))},addInvalidHandleType:function(b){var a=b.toUpperCase();this.invalidHandleTypes[a]=a},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(c){var b=this.invalidHandleClasses,d=b.length,a;for(a=0;a<d;++a){if(b[a]===c){delete b[a]}}},isValidHandleChild:function(b){var a=!0,d,c,e;try{d=b.nodeName.toUpperCase()}catch(f){d=b.nodeName}a=a&&!this.invalidHandleTypes[d];a=a&&!this.invalidHandleIds[b.id];for(c=0,e=this.invalidHandleClasses.length;a&&c<e;++c){a=!Ext.fly(b).hasCls(this.invalidHandleClasses[c])}return a},setXTicks:function(d,c){this.xTicks=[];this.xTickSize=c;var b={},a;for(a=this.initPageX;a>=this.minX;a=a-c){if(!b[a]){this.xTicks[this.xTicks.length]=a;b[a]=!0}}for(a=this.initPageX;a<=this.maxX;a=a+c){if(!b[a]){this.xTicks[this.xTicks.length]=a;b[a]=!0}}Ext.Array.sort(this.xTicks,this.DDMInstance.numericSort)},setYTicks:function(d,c){this.yTicks=[];this.yTickSize=c;var b={},a;for(a=this.initPageY;a>=this.minY;a=a-c){if(!b[a]){this.yTicks[this.yTicks.length]=a;b[a]=!0}}for(a=this.initPageY;a<=this.maxY;a=a+c){if(!b[a]){this.yTicks[this.yTicks.length]=a;b[a]=!0}}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=!0},clearConstraints:function(){this.constrainX=!1;this.constrainY=!1;this.clearTicks()},clearTicks:function(){this.xTicks=null;this.yTicks=null;this.xTickSize=0;this.yTickSize=0},setYConstraint:function(c,b,a){this.topConstraint=c;this.bottomConstraint=b;this.minY=this.initPageY-c;this.maxY=this.initPageY+b;if(a){this.setYTicks(this.initPageY,a)}this.constrainY=!0},resetConstraints:function(){if(this.initPageX||this.initPageX===0){var a=this.maintainOffset?this.lastPageX-this.initPageX:0,b=this.maintainOffset?this.lastPageY-this.initPageY:0;this.setInitPosition(a,b)}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(d,a){if(!a){return d}else {if(a[0]>=d){return a[0]}else {var b,g,c,e,f;for(b=0,g=a.length;b<g;++b){c=b+1;if(a[c]&&a[c]>=d){e=d-a[b];f=a[c]-d;return f>e?a[b]:a[c]}}return a[a.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(a,c,b){if(a){this.init(a,c,b)}},scroll:!0,autoOffset:function(a,b){var c=a-this.startPageX,d=b-this.startPageY;this.setDelta(c,d)},setDelta:function(a,b){this.deltaX=a;this.deltaY=b},setDragElPos:function(a,b){var c=this.getDragEl();this.alignElWithMouse(c,a,b)},alignElWithMouse:function(d,j,k){var a=this.getTargetCoord(j,k),c=d.dom?d:Ext.fly(d,'_dd'),e=c.getSize(),i=Ext.Element,b,g,f,h;if(!this.deltaSetXY){b=this.cachedViewportSize={width:i.getDocumentWidth(),height:i.getDocumentHeight()};g=[Math.max(0,Math.min(a.x,b.width-e.width)),Math.max(0,Math.min(a.y,b.height-e.height))];c.setXY(g);f=this.getLocalX(c);h=c.getLocalY();this.deltaSetXY=[f-a.x,h-a.y]}else {b=this.cachedViewportSize;this.setLocalXY(c,Math.max(0,Math.min(a.x+this.deltaSetXY[0],b.width-e.width)),Math.max(0,Math.min(a.y+this.deltaSetXY[1],b.height-e.height)))}this.cachePosition(a.x,a.y);this.autoScroll(a.x,a.y,d.offsetHeight,d.offsetWidth);return a},cachePosition:function(b,c){if(b){this.lastPageX=b;this.lastPageY=c}else {var a=Ext.fly(this.getEl()).getXY();this.lastPageX=a[0];this.lastPageY=a[1]}},autoScroll:function(e,f,m,n){if(this.scroll){var g=Ext.Element.getViewportHeight(),h=Ext.Element.getViewportWidth(),b=this.DDMInstance.getScrollTop(),a=this.DDMInstance.getScrollLeft(),l=m+f,j=n+e,k=g+b-f-this.deltaY,i=h+a-e-this.deltaX,d=40,c=document.all?80:30;if(l>g&&k<d){window.scrollTo(a,b+c)}if(f<b&&b>0&&f-b<d){window.scrollTo(a,b-c)}if(j>h&&i<d){window.scrollTo(a+c,b)}if(e<a&&a>0&&e-a<d){window.scrollTo(a-c,b)}}},getTargetCoord:function(c,d){var a=c-this.deltaX,b=d-this.deltaY;if(this.constrainX){if(a<this.minX){a=this.minX}if(a>this.maxX){a=this.maxX}}if(this.constrainY){if(b<this.minY){b=this.minY}if(b>this.maxY){b=this.maxY}}a=this.getTick(a,this.xTicks);b=this.getTick(b,this.yTicks);return {x:a,y:b}},applyConfig:function(){Ext.dd.DragDrop.prototype.applyConfig.call(this);this.scroll=this.config.scroll!==!1},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(a,b,c){a.setLocalXY(b,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(a,c,b){if(a){this.init(a,c,b);this.initFrame()}},resizeFrame:!0,centerFrame:!1,createFrame:function(){var d=this,c=document.body,a,b;if(!c||!c.firstChild){Ext.defer(function(){d.createFrame()},50);return}a=this.getDragEl();if(!a){a=document.createElement('div');a.id=this.dragElId;a.setAttribute('role','presentation');b=a.style;b.position='absolute';b.visibility='hidden';b.cursor='move';b.border='2px solid #aaa';b.zIndex=999;c.insertBefore(a,c.firstChild)}},initFrame:function(){this.createFrame()},applyConfig:function(){Ext.dd.DD.prototype.applyConfig.call(this);this.resizeFrame=this.config.resizeFrame!==!1;this.centerFrame=this.config.centerFrame;this.setDragElId(this.config.dragElId||Ext.dd.DDProxy.dragElId)},showFrame:function(d,e){var a=this,b=a.getDragEl(),c=b.style;a._resizeProxy();if(a.centerFrame){a.setDelta(Math.round(parseInt(c.width,10)/2),Math.round(parseInt(c.height,10)/2))}a.setDragElPos(d,e);Ext.fly(b).show()},_resizeProxy:function(){if(this.resizeFrame){var a=this.getEl();Ext.fly(this.getDragEl()).setSize(a.offsetWidth,a.offsetHeight)}},b4MouseDown:function(d){var a=d.getXY(),b=a[0],c=a[1];this.autoOffset(b,c);this.setDragElPos(b,c)},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:!1,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:!0,floating:!0,id:b.id||Ext.id(),cls:'x-dd-drag-proxy '+this.dropNotAllowed,shadow:a.shadow||!1,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(c){var a=this,b='x-dd-drag-proxy ';a.el.replaceCls(b+a.dropAllowed,b+a.dropNotAllowed);a.dropStatus=a.dropNotAllowed;if(c){a.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(!0)}},stop:function(){if(this.anim&&this.anim.isAnimated&&this.anim.isAnimated()){this.anim.stop()}},sync:function(){this.el.syncUnderlays()},repair:function(b,c,d){var a=this;a.callback=c;a.scope=d;if(b&&a.animRepair!==!1){a.el.addCls(a.repairCls);a.el.setUnderlaysVisible(!1);a.anim=a.el.animate({duration:a.repairDuration||500,easing:'ease-out',to:{x:b[0],y:b[1]},stopAnimation:!0,callback:a.afterRepair,scope:a})}else {a.afterRepair()}},afterRepair:function(){var a=this;a.hide(!0);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':!0,'box':!0},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:!0,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:!1,isTarget:!1,scroll:this.scroll===!0});this.dragging=!1},getDragData:function(a){return this.dragData},onDragEnter:function(c,b){var a=Ext.dd.DragDropManager.getDDById(b),d;this.cachedTarget=a;if(this.beforeDragEnter(a,c,b)!==!1){if(a.isNotifyTarget){d=a.notifyEnter(this,c,this.dragData);this.proxy.setStatus(d)}else {this.proxy.setStatus(this.dropAllowed)}if(this.afterDragEnter){this.afterDragEnter(a,c,b)}}},beforeDragEnter:function(a,c,b){return !0},onDragOver:function(c,b){var a=this.cachedTarget||Ext.dd.DragDropManager.getDDById(b),d;if(this.beforeDragOver(a,c,b)!==!1){if(a.isNotifyTarget){d=a.notifyOver(this,c,this.dragData);this.proxy.setStatus(d)}if(this.afterDragOver){this.afterDragOver(a,c,b)}}},beforeDragOver:function(a,c,b){return !0},onDragOut:function(c,b){var a=this.cachedTarget||Ext.dd.DragDropManager.getDDById(b);if(this.beforeDragOut(a,c,b)!==!1){if(a.isNotifyTarget){a.notifyOut(this,c,this.dragData)}this.proxy.reset();if(this.afterDragOut){this.afterDragOut(a,c,b)}}this.cachedTarget=null},beforeDragOut:function(a,c,b){return !0},onDragDrop:function(c,b){var a=this.cachedTarget||Ext.dd.DragDropManager.getDDById(b);if(this.beforeDragDrop(a,c,b)!==!1){if(a.isNotifyTarget){if(a.notifyDrop(this,c,this.dragData)!==!1){this.onValidDrop(a,c,b)}else {this.onInvalidDrop(a,c,b)}}else {this.onValidDrop(a,c,b)}if(this.afterDragDrop){this.afterDragDrop(a,c,b)}}delete this.cachedTarget},beforeDragDrop:function(a,c,b){return !0},onValidDrop:function(a,c,b){this.hideProxy();if(this.afterValidDrop){this.afterValidDrop(a,c,b)}},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)!==!1){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=!1},beforeInvalidDrop:function(a,c,b){return !0},handleMouseDown:function(b){if(this.dragging){return}var a=this.getDragData(b);if(a&&this.onBeforeDrag(a,b)!==!1){this.dragData=a;this.proxy.stop();Ext.dd.DDProxy.prototype.handleMouseDown.apply(this,arguments)}},onBeforeDrag:function(a,b){return !0},onStartDrag:Ext.emptyFn,alignElWithMouse:function(){this.proxy.ensureAttachedToBody(!0);return Ext.dd.DDProxy.prototype.alignElWithMouse.apply(this,arguments)},startDrag:function(a,b){this.proxy.reset();this.proxy.hidden=!1;this.dragging=!0;this.proxy.update('');this.onInitDrag(a,b);this.proxy.show()},onInitDrag:function(b,c){var a=this.el.dom.cloneNode(!0);a.id=Ext.id();this.proxy.update(a);this.onStartDrag(b,c);return !0},getProxy:function(){return this.proxy},hideProxy:function(){this.proxy.hide();this.proxy.reset(!0);this.dragging=!1},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:!0,constructor:function(c,b){var a=this;a.panel=c;a.id=a.panel.id+'-ddproxy';Ext.apply(a,b)},insertProxy:!0,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 a=this,b;if(!a.ghost){b=a.panel.getSize();a.panel.el.setVisibilityMode(Ext.Element.DISPLAY);a.ghost=a.panel.ghost();if(a.insertProxy){a.proxy=a.panel.el.insertSibling({role:'presentation',cls:'x-panel-dd-spacer'});a.proxy.setSize(b)}}},repair:function(c,a,b){this.hide();Ext.callback(a,b||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,c){var a=this;a.panel=b;a.dragData={panel:b};a.panelProxy=new Ext.panel.Proxy(b,c);a.proxy=a.panelProxy.proxy;Ext.dd.DragSource.prototype.constructor.call(this,b.el,c);a.setupEl(b)},setupEl:function(c){var a=this,b=c.header,d=c.body;if(b){a.setHandleElId(b.id);d=b.el}if(d){d.setStyle('cursor','move');a.scroll=!1}else {c.on('boxready',a.setupEl,a,{single:!0})}},showFrame:Ext.emptyFn,startDrag:Ext.emptyFn,b4StartDrag:function(a,b){this.panelProxy.show()},b4MouseDown:function(b){var a=b.getXY(),c=a[0],d=a[1];this.autoOffset(c,d)},onInitDrag:function(a,b){this.onStartDrag(a,b);return !0},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(d,b,c){var a=this;if(a.beforeInvalidDrop(d,b,c)!==!1){if(a.cachedTarget){if(a.cachedTarget.isNotifyTarget){a.cachedTarget.notifyOut(a,b,a.dragData)}a.cacheTarget=null}if(a.afterInvalidDrop){a.afterInvalidDrop(b,c)}}}},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:!0,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:!1,marginBegin:'margin-top',maxSize:'maxHeight',minSize:'minHeight',pos:'y',setSize:'setHeight',shrinkWrapDock:'shrinkWrapDockHeight',size:'height',sizeModel:'heightModel'},initializedBorders:-1,horizontalCollapsePolicy:{width:!0,x:!0},verticalCollapsePolicy:{height:!0,y:!0},finishRender:function(){var a=this,b,c;Ext.layout.component.Component.prototype.finishRender.call(this);b=a.getRenderTarget();c=a.getDockedItems();a.finishRenderItems(b,c)},isItemBoxParent:function(a){return !0},isItemShrinkWrap:function(a){return !0},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 c=this,b=c.owner,a,l,k=c.lastDockedItems,j=c.borders,m=b.dockedItems.generation,i=c.noBorderClassesSides,n=c.borderWidthProps,f,h,d,g,e,o=c.collapsed;if(c.initializedBorders===m||b.border&&!b.manageBodyBorders||b.collapsed&&b.collapseMode==='mini'){return}c.initializedBorders=m;c.collapsed=!1;c.lastDockedItems=l=c.getLayoutItems();c.collapsed=o;a={top:[],right:[],bottom:[],left:[]};for(f=0,h=l.length;f<h;f++){d=l[f];g=d.dock;if(d.ignoreBorderManagement){continue}if(!a[g].satisfied){a[g].push(d);a[g].satisfied=!0}if(!a.top.satisfied&&g!=='bottom'){a.top.push(d)}if(!a.right.satisfied&&g!=='left'){a.right.push(d)}if(!a.bottom.satisfied&&g!=='top'){a.bottom.push(d)}if(!a.left.satisfied&&g!=='right'){a.left.push(d)}}if(k){for(f=0,h=k.length;f<h;f++){d=k[f];if(!d.isDestroyed&&!d.ignoreBorderManagement&&!b.manageBodyBorders){d.removeCls(c.noBorderClasses)}}}if(j){for(e in j){if(b.manageBodyBorders&&j[e].satisfied){b.setBodyStyle(n[e],'')}}}for(e in a){h=a[e].length;if(!b.manageBodyBorders){for(f=0;f<h;f++){a[e][f].addCls(i[e])}if(!a[e].satisfied&&!b.bodyBorder||b.bodyBorder===!1){b.addBodyCls(i[e])}else {b.removeBodyCls(i[e])}}else {if(a[e].satisfied){b.setBodyStyle(n[e],'1px')}}}c.borders=a},beforeLayoutCycle:function(a){var g=this,e=g.owner,f=g.sizeModels.shrinkWrap,b=e.shrinkWrapDock,c,d;if(e.collapsed){if(e.collapsedVertical()){d=!0;a.measureDimensions=1}else {c=!0;a.measureDimensions=2}}a.collapsedVert=d;a.collapsedHorz=c;if(d){a.heightModel=f}else {if(c){a.widthModel=f}}b=b===!0?3:b||0;a.shrinkWrapDockHeight=b&1&&a.heightModel.shrinkWrap;a.shrinkWrapDockWidth=b&2&&a.widthModel.shrinkWrap},beginLayout:function(a){var c=this,e=c.owner,l=c.getLayoutItems(),n=a.context,m=l.length,j=c.lastCollapsedState,k,g,f,d,b,h,i;Ext.layout.component.Component.prototype.beginLayout.apply(this,arguments);h=e.getCollapsed();if(h!==j&&j!==undefined){if(c.owner.collapsed){a.isCollapsingOrExpanding=1;e.addClsWithUI(e.collapsedCls)}else {a.isCollapsingOrExpanding=2;e.removeClsWithUI(e.collapsedCls);a.lastCollapsedState=c.lastCollapsedState}}c.lastCollapsedState=h;a.dockedItems=k=[];for(g=0;g<m;g++){f=l[g];if(f.rendered){i=f.dock;d=n.getCmp(f);d.dockedAt={x:0,y:0};d.offsets=b=Ext.Element.parseBox(f.offsets||0);d.horizontal=i==='top'||i==='bottom';b.width=b.left+b.right;b.height=b.top+b.bottom;k.push(d)}}a.bodyContext=a.getEl('body')},beginLayoutCycle:function(a){var c=this,i=a.dockedItems,j=i.length,b=c.owner,d=b.frameBody,h=c.lastHeightModel,e,g,f;Ext.layout.component.Component.prototype.beginLayoutCycle.apply(this,arguments);if(c.owner.manageHeight){if(c.lastBodyDisplay){b.body.dom.style.display=c.lastBodyDisplay=''}}else {if(c.lastBodyDisplay!=='inline-block'){b.body.dom.style.display=c.lastBodyDisplay='inline-block'}if(h&&h.shrinkWrap&&!a.heightModel.shrinkWrap){b.body.dom.style.marginBottom=''}}if(a.widthModel.auto){if(a.widthModel.shrinkWrap){b.el.setWidth(null)}b.body.setWidth(null);if(d){d.setWidth(null)}}if(a.heightModel.auto){b.body.setHeight(null);if(d){d.setHeight(null)}}if(a.collapsedVert){a.setContentHeight(0)}else {if(a.collapsedHorz){a.setContentWidth(0)}}for(e=0;e<j;e++){g=i[e].target;f=g.dock;if(f==='right'){g.setLocalX(0)}else {if(f!=='left'){continue}}}},calculate:function(a){var b=this,l=b.measureAutoDimensions(a,a.measureDimensions),j=a.state,e=j.horzDone,f=j.vertDone,g=a.bodyContext,k,c,d,i,h;a.borderInfo||a.getBorderInfo();a.paddingInfo||a.getPaddingInfo();a.frameInfo||a.getFrameInfo();g.borderInfo||g.getBorderInfo();g.paddingInfo||g.getPaddingInfo();if(!a.frameBorder){if(!(k=a.framing)){a.frameBorder=a.borderInfo;a.framePadding=a.paddingInfo}else {a.frameBorder=k.border;a.framePadding=k.padding}}c=!e&&b.createAxis(a,l.contentWidth,a.widthModel,b.horzAxisProps,a.collapsedHorz);d=!f&&b.createAxis(a,l.contentHeight,a.heightModel,b.vertAxisProps,a.collapsedVert);for(i=0,h=a.dockedItems.length;h--;++i){if(c){b.dockChild(a,c,h,i)}if(d){b.dockChild(a,d,h,i)}}if(c&&b.finishAxis(a,c)){j.horzDone=e=c}if(d&&b.finishAxis(a,d)){j.vertDone=f=d}if(e&&f&&b.finishConstraints(a,e,f)){b.finishPositions(a,e,f)}else {b.done=!1}},createAxis:function(b,s,d,a,k){var r=this,e=0,q=r.owner,n=q[a.maxSize],o=q[a.minSize]||0,f=a.dockBegin,h=a.dockEnd,p=a.pos,g=a.size,m=n!=null,t=d.shrinkWrap,l,i,j,c;if(t){if(k){c=0}else {l=b.bodyContext;c=s+l.borderInfo[g]}}else {i=b.frameBorder;j=b.framePadding;e=i[f]+j[f];c=b.getProp(g)-(i[h]+j[h])}return {shrinkWrap:d.shrinkWrap,sizeModel:d,initialBegin:e,begin:e,end:c,collapsed:k,horizontal:a.horizontal,ignoreFrameBegin:null,ignoreFrameEnd:null,initialSize:c-e,maxChildSize:0,hasMinMaxConstraints:(o||m)&&d.shrinkWrap,minSize:o,maxSize:m?n:1000000000,bodyPosProp:r.owner.manageHeight?p:a.marginBegin,dockBegin:f,dockEnd:h,posProp:p,sizeProp:g,setSize:a.setSize,shrinkWrapDock:b[a.shrinkWrapDock],sizeModelName:a.sizeModel,dockedPixelsEnd:0}},dockChild:function(c,a,j,k){var f=this,b=c.dockedItems[a.shrinkWrap?j:k],d=b.target,h=d.dock,g=a.sizeProp,e,i;if(d.ignoreParentFrame&&c.isCollapsingOrExpanding){b.clearMarginCache()}if(!b.marginInfo){b.getMarginInfo()}if(h===a.dockBegin){if(a.shrinkWrap){e=f.dockOutwardBegin(c,b,d,a)}else {e=f.dockInwardBegin(c,b,d,a)}}else {if(h===a.dockEnd){if(a.shrinkWrap){e=f.dockOutwardEnd(c,b,d,a)}else {e=f.dockInwardEnd(c,b,d,a)}}else {if(a.shrinkWrapDock){i=b.getProp(g)+b.marginInfo[g];a.maxChildSize=Math.max(a.maxChildSize,i);e=0}else {e=f.dockStretch(c,b,d,a)}}}b.dockedAt[a.posProp]=e},dockInwardBegin:function(g,b,e,a){var j=a.begin,h=a.sizeProp,f=e.ignoreParentFrame,c,i,d;if(f){a.ignoreFrameBegin=b;d=e.dock;c=g.frameBorder[d];j-=c+g.framePadding[d]}if(!e.overlay){i=b.getProp(h)+b.marginInfo[h];a.begin+=i;if(f){a.begin-=c}}return j},dockInwardEnd:function(f,c,b,a){var g=a.sizeProp,h=c.getProp(g)+c.marginInfo[g],e=a.end-h,d;if(!b.overlay){a.end=e}if(b.ignoreParentFrame){a.ignoreFrameEnd=c;d=f.frameBorder[b.dock];e+=d+f.framePadding[b.dock];a.end+=d}return e},dockOutwardBegin:function(g,b,e,a){var c=a.begin,d=a.sizeProp,f;if(a.collapsed){a.ignoreFrameBegin=a.ignoreFrameEnd=b}else {if(e.ignoreParentFrame){a.ignoreFrameBegin=b}}if(!e.overlay){f=b.getProp(d)+b.marginInfo[d];c-=f;a.begin=c}return c},dockOutwardEnd:function(g,b,e,a){var f=a.end,d=a.sizeProp,c;c=b.getProp(d)+b.marginInfo[d];if(a.collapsed){a.ignoreFrameBegin=a.ignoreFrameEnd=b}else {if(e.ignoreParentFrame){a.ignoreFrameEnd=b}}if(!e.overlay){a.end=f+c;a.dockedPixelsEnd+=c}return f},dockStretch:function(h,c,f,a){var n=f.dock,e=a.sizeProp,i=n==='top'||n==='bottom',l=h.frameBorder,j=c.offsets,k=h.framePadding,o=i?'right':'bottom',d=i?'left':'top',g=a.begin+j[d],m,b;if(f.stretch!==!1){b=a.end-g-j[o];if(f.ignoreParentFrame){g-=k[d]+l[d];b+=k[e]+l[e]}m=c.marginInfo;b-=m[e];c[a.setSize](b)}return g},finishAxis:function(h,a){if(isNaN(a.maxChildSize)){return !1}var g=a.begin,e=a.end-g,l=a.collapsed,v=a.setSize,k=a.dockBegin,s=a.dockEnd,n=h.framePadding,t=h.frameBorder,b=t[k],i=h.framing,j=i&&i[k],f=l?0:n[k],w=a.sizeProp,p=a.ignoreFrameBegin,q=a.ignoreFrameEnd,r=h.bodyContext,o=Math.max(b+f-j,0),c,m,d,u;if(a.shrinkWrap){m=a.initialSize;if(i){d=-g+b+f;c=d-j-o}else {c=-g;d=c+f}if(!l){e+=n[w]}if(p){d-=b;c-=b;p.dockedAt[a.posProp]-=f}else {e+=b}if(l){}else {if(q){q.dockedAt[a.posProp]+=n[s]}else {e+=t[s]}}a.size=e;if(!a.horizontal&&!this.owner.manageHeight){u=!1}}else {if(i){d=0;c=g-j-o}else {d=-b;c=g-f-b}m=e}a.delta=d;r[v](m,u);r.setProp(a.bodyPosProp,c);return !isNaN(e)},beforeInvalidateShrinkWrapDock:function(b,c){var a=c.axis.sizeModelName;if(!b[a].constrainedMin){b[a]=Ext.layout.SizeModel.calculated}},afterInvalidateShrinkWrapDock:function(a,c){var b=c.axis,e=c.layout,d;if(a[b.sizeModelName].calculated){d=e.dockStretch(c.ownerContext,a,a.target,b);a.setProp(b.posProp,b.delta+d)}},finishConstraints:function(a,g,e){var o=this,i=o.sizeModels,q=g.shrinkWrap,p=e.shrinkWrap,n=o.owner,r,l,m,c,b,d,k,j,f,h;if(q){d=g.size;k=g.collapsed?0:g.minSize;j=g.maxSize;f=g.maxChildSize;h=Math.max(d,f);if(h>j){b=i.constrainedMax;m=j}else {if(h<k){b=i.constrainedMin;m=k}else {if(d<f){b=i.constrainedDock;n.dockConstrainedWidth=m=f}else {m=d}}}}if(p){d=e.size;k=e.collapsed?0:e.minSize;j=e.maxSize;f=e.maxChildSize;h=Math.max(d,f+d-e.initialSize);if(h>j){c=i.constrainedMax;l=j}else {if(h<k){c=i.constrainedMin;l=k}else {if(d<f){c=i.constrainedDock;n.dockConstrainedHeight=l=f}else {if(!a.collapsedVert&&!n.manageHeight){r=!1;a.bodyContext.setProp('margin-bottom',e.dockedPixelsEnd)}l=d}}}}if(b||c){if(b&&c&&b.constrainedMax&&c.constrainedByMin){a.invalidate({widthModel:b});return !1}if(!a.widthModel.calculatedFromShrinkWrap&&!a.heightModel.calculatedFromShrinkWrap){a.invalidate({widthModel:b,heightModel:c});return !1}}else {o.invalidateAxes(a,g,e)}if(q){a.setWidth(m);if(b){a.widthModel=b}}if(p){a.setHeight(l,r);if(c){a.heightModel=c}}return !0},invalidateAxes:function(l,b,a){var p=this.beforeInvalidateShrinkWrapDock,q=this.afterInvalidateShrinkWrapDock,m=b.end-b.begin,n=a.initialSize,k=b.shrinkWrapDock&&b.maxChildSize<=m,h=a.shrinkWrapDock&&a.maxChildSize<=n,i,o,g,c,e,j,d,f;if(k||h){if(h){a.begin=a.initialBegin;a.end=a.begin+a.initialSize}i=l.dockedItems;for(g=0,o=i.length;g<o;++g){c=i[g];j=c.horizontal;d=null;if(k&&j){f=b.sizeProp;e=m;d=b}else {if(h&&!j){f=a.sizeProp;e=n;d=a}}if(d){e-=c.getMarginInfo()[f];if(e!==c.props[f]){c.invalidate({before:p,after:q,axis:d,ownerContext:l,layout:this})}}}}},finishPositions:function(d,h,i){var c=d.dockedItems,g=c.length,e=h.delta,f=i.delta,b,a;for(b=0;b<g;++b){a=c[b];a.setProp('x',e+a.dockedAt.x);a.setProp('y',f+a.dockedAt.y)}},finishedLayout:function(a){var c=this,b=a.target;Ext.layout.component.Component.prototype.finishedLayout.apply(this,arguments);if(!a.animatePolicy){if(a.isCollapsingOrExpanding===1){b.afterCollapse(!1)}else {if(a.isCollapsingOrExpanding===2){b.afterExpand(!1)}}}},getAnimatePolicy:function(b){var d=this,a,c;if(b.isCollapsingOrExpanding===1){a=d.lastCollapsedState}else {if(b.isCollapsingOrExpanding===2){a=b.lastCollapsedState}}if(a==='left'||a==='right'){c=d.horizontalCollapsePolicy}else {if(a==='top'||a==='bottom'){c=d.verticalCollapsePolicy}}return c},getDockedItems:function(c,k){var d=this,i=c==='visual',a=i?Ext.ComponentQuery.query('[rendered]',d.owner.dockedItems.items):d.owner.dockedItems.items,f=a&&a.length&&c!==!1,j,h,b,e,g,l;if(k==null){b=f&&!i?a.slice():a}else {b=[];for(e=0,l=a.length;e<l;++e){h=a[e].dock;g=h==='top'||h==='left';if(k?g:!g){b.push(a[e])}}f=f&&b.length}if(f){j=(c=c||'render')==='render';Ext.Array.sort(b,function(e,f){var a,b;if(j&&(a=d.owner.dockOrder[e.dock])!==(b=d.owner.dockOrder[f.dock])){if(!(a+b)){return a-b}}a=d.getItemWeight(e,c);b=d.getItemWeight(f,c);if(a!==undefined&&b!==undefined){return a-b}return 0})}return b||[]},getItemWeight:function(b,c){var a=b.weight||this.owner.defaultDockWeights[b.dock];return a[c]||a},getLayoutItems:function(){var e=this,c,f,d,b,a;if(e.owner.collapsed){a=e.owner.getCollapsedDockedItems()}else {c=e.getDockedItems('visual');f=c.length;a=[];for(b=0;b<f;b++){d=c[b];if(!d.hidden){a.push(d)}}}return a},measureContentWidth:function(b){var a=b.bodyContext;return a.el.getWidth()-a.getBorderInfo().width},measureContentHeight:function(b){var a=b.bodyContext;return a.el.getHeight()-a.getBorderInfo().height},redoLayout:function(b){var c=this,a=c.owner;if(b.isCollapsingOrExpanding===1){if(a.reExpander){a.reExpander.el.show()}a.addClsWithUI(a.collapsedCls);b.redo(!0)}else {if(b.isCollapsingOrExpanding===2){a.removeClsWithUI(a.collapsedCls);b.bodyContext.redo()}}},renderChildren:function(){var a=this,c=a.getDockedItems(),b=a.getRenderTarget();a.handleItemBorders();a.renderItems(c,b)},renderItems:function(j,i){var f=this,h=j.length,e=0,b=0,k=0,l=f.getRenderTarget().dom.childNodes,m=l.length,g,c,d,a;for(g=0,c=0;g<m;g++){d=l[g];if(d.nodeType===1&&Ext.fly(d).hasCls('x-resizable-handle')){break}for(c=0;c<h;c++){a=j[c];if(a.rendered&&a.el.dom===d){break}}if(c===h){k++}}for(;e<h;e++,b++){a=j[e];if(e===b&&(a.dock==='right'||a.dock==='bottom')){b+=k}if(a&&!a.rendered){f.renderItem(a,i,b)}else {if(!f.isValidParent(a,i,b)){f.moveItem(a,i,b)}}}},undoLayout:function(b){var c=this,a=c.owner;if(b.isCollapsingOrExpanding===1){if(a.reExpander){a.reExpander.el.hide()}a.removeClsWithUI(a.collapsedCls);b.undo(!0)}else {if(b.isCollapsingOrExpanding===2){a.addClsWithUI(a.collapsedCls);b.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(g,c){var f=this,b=f.sizePolicy,a=f.owner.shrinkWrapDock,e,d;if(g.stretch===!1){return b.nostretch}e=g.dock;d=e==='left'||e==='right';a=a===!0?3:a||0;if(d){b=b.vert;a=a&1}else {b=b.horz;a=a&2}if(a){if(!c){c=f.owner.getSizeModel()}if(c[d?'height':'width'].shrinkWrap){return b.shrinkWrap}}return b.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=!0},borderCollapseMap:{},getBorderCollapseTable:function(){var f=this,b=f.borderCollapseMap,e=f.owner,a=e.baseCls,d=e.ui,c;b=b[a]||(b[a]={});c=b[d];if(!c){a+='-'+d+'-outer-border-';b[d]=c=[0,a+'l',a+'b',a+'bl',a+'r',a+'rl',a+'rb',a+'rbl',a+'t',a+'tl',a+'tb',a+'tbl',a+'tr',a+'trl',a+'trb',a+'trbl']}return c}},0,0,0,0,['layout.dock'],0,[Ext.layout.component,'Dock',Ext.layout.component,'AbstractDock'],0);Ext.define('ExtThemeNeptune.layout.component.Dock',{override:'Ext.layout.component.Dock',noBorderClassTable:[0,'x-noborder-l','x-noborder-b','x-noborder-bl','x-noborder-r','x-noborder-rl','x-noborder-rb','x-noborder-rbl','x-noborder-t','x-noborder-tl','x-noborder-tb','x-noborder-tbl','x-noborder-tr','x-noborder-trl','x-noborder-trb','x-noborder-trbl'],edgeMasks:{top:8,right:4,bottom:2,left:1},handleItemBorders:function(){var d=this,i=0,o=8,n=4,l=2,m=1,r=d.owner,s=r.bodyBorder,j=r.border,x=d.collapsed,y=d.edgeMasks,k=d.noBorderClassTable,v=r.dockedItems.generation,a,q,u,b,t,w,g,p,h,c,f,e;if(d.initializedBorders===v){return}f=[];e=[];q=d.getBorderCollapseTable();k=d.getBorderClassTable?d.getBorderClassTable():k;d.initializedBorders=v;d.collapsed=!1;u=d.getDockedItems();d.collapsed=x;for(t=0,w=u.length;t<w;t++){g=u[t];if(g.ignoreBorderManagement){continue}p=g.dock;c=b=0;f.length=0;e.length=0;if(p!=='bottom'){if(i&o){a=g.border}else {a=j;if(a!==!1){b+=o}}if(a===!1){c+=o}}if(p!=='left'){if(i&n){a=g.border}else {a=j;if(a!==!1){b+=n}}if(a===!1){c+=n}}if(p!=='top'){if(i&l){a=g.border}else {a=j;if(a!==!1){b+=l}}if(a===!1){c+=l}}if(p!=='right'){if(i&m){a=g.border}else {a=j;if(a!==!1){b+=m}}if(a===!1){c+=m}}if((h=g.lastBorderMask)!==c){g.lastBorderMask=c;if(h){e[0]=k[h]}if(c){f[0]=k[c]}}if((h=g.lastBorderCollapse)!==b){g.lastBorderCollapse=b;if(h){e[e.length]=q[h]}if(b){f[f.length]=q[b]}}if(e.length){g.removeCls(e)}if(f.length){g.addCls(f)}i|=y[p]}c=b=0;f.length=0;e.length=0;if(i&o){a=s}else {a=j;if(a!==!1){b+=o}}if(a===!1){c+=o}if(i&n){a=s}else {a=j;if(a!==!1){b+=n}}if(a===!1){c+=n}if(i&l){a=s}else {a=j;if(a!==!1){b+=l}}if(a===!1){c+=l}if(i&m){a=s}else {a=j;if(a!==!1){b+=m}}if(a===!1){c+=m}if((h=d.lastBodyBorderMask)!==c){d.lastBodyBorderMask=c;if(h){e[0]=k[h]}if(c){f[0]=k[c]}}if((h=d.lastBodyBorderCollapse)!==b){d.lastBodyBorderCollapse=b;if(h){e[e.length]=q[h]}if(b){f[f.length]=q[b]}}if(e.length){r.removeBodyCls(e)}if(f.length){r.addBodyCls(f)}},onRemove:function(a){var b=a.lastBorderMask;if(!a.isDestroyed&&!a.ignoreBorderManagement&&b){a.lastBorderMask=0;a.removeCls(this.noBorderClassTable[b])}(arguments.callee.$previous||Ext.layout.component.Component.prototype.onRemove).call(this,a)}});Ext.cmd.derive('Ext.util.Memento',Ext.Base,function(){function captureOne(d,c,a,b){d[b?b+a:a]=c[a]}function removeOne(b,c,a){delete b[a]}function restoreOne(e,f,a,b){var d=b?b+a:a,c=e[d];if(c||e.hasOwnProperty(d)){restoreValue(f,a,c)}}function restoreValue(a,c,b){if(Ext.isDefined(b)){a[c]=b}else {delete a[c]}}function doMany(f,c,e,a,d){if(c){if(Ext.isArray(a)){var b,g=a.length;for(b=0;b<g;b++){f(c,e,a[b],d)}}else {f(c,e,a,d)}}}return {data:null,target:null,constructor:function(a,b){this.data={};if(a){this.target=a;if(b){this.capture(b)}}},capture:function(d,c,b){var a=this;doMany(captureOne,a.data||(a.data={}),c||a.target,d,b)},remove:function(a){doMany(removeOne,this.data,null,a)},restore:function(a,d,c,b){doMany(restoreOne,this.data,c||this.target,a,b);if(d!==!1){this.remove(a)}},restoreAll:function(c,d){var e=this,f=d||this.target,b=e.data,a;c=c!==!1;for(a in b){if(b.hasOwnProperty(a)){restoreValue(f,a,b[a]);if(c){delete b[a]}}}}}}(),1,0,0,0,0,0,[Ext.util,'Memento'],0);Ext.cmd.derive('Ext.container.DockingContainer',Ext.Base,{isDockingContainer:!0,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(c,d){var b=this,k=b.rendered,f=0,g=b.dockedItems,i=g.getCount(),e,h,a,j;c=b.prepareItems(c);j=c.length;if(k){Ext.suspendLayouts()}if(d===undefined){d=i}else {d=Math.min(d,i)}for(;f<j;f++){a=c[f];a.dock=a.dock||'top';if(a.dock==='left'||a.dock==='right'){b.horizontalDocks++}e=d+f;g.insert(e,a);h=!!a.instancedCmp;delete a.instancedCmp;a.onAdded(b,e,h);delete a.initOwnerCt;if(b.onDockedAdd!==Ext.emptyFn){b.onDockedAdd(a)}if(b.hasListeners.dockedadd){b.fireEvent('dockedadd',b,a,e)}}if(b.rendered){b.updateLayout();Ext.resumeLayouts(!0)}return c},destroyDockedItems:function(){var a=this.dockedItems,b;if(a){while(b=a.first()){this.removeDocked(b,!0)}}},doRenderDockedItems:function(f,d,e){var g=d.$comp,a=g.componentLayout,b,c;if(a.getDockedItems&&!d.$skipDockedItems){b=a.getDockedItems('render',!e);c=b&&a.getItemsRenderTree(b);if(c){Ext.DomHelper.generateMarkup(c,f)}}},getDockedComponent:function(a){if(Ext.isObject(a)){a=a.getItemId()}return this.dockedItems.get(a)},getDockedItems:function(b,c){var a=this.getComponentLayout().getDockedItems('render',c);if(b&&a.length){a=Ext.ComponentQuery.query(b,a)}return a},getDockingRefItems:function(e,d){var b=e&&'*,* *',a=this.getDockedItems(b,!0),c;a.push.apply(a,d);c=this.getDockedItems(b,!1);a.push.apply(a,c);return a},initDockingItems:function(){var b=this,a=b.dockedItems;if(!a||!a.isMixedCollection){b.dockedItems=new Ext.util.AbstractMixedCollection(!1,b.getComponentId);if(a){b.addDocked(a)}}},insertDocked:function(b,a){this.addDocked(a,b)},onDockedAdd:Ext.emptyFn,onDockedRemove:Ext.emptyFn,removeDocked:function(a,c){var b=this,d,e;c=c===!0||c!==!1&&b.autoDestroy;if(!b.dockedItems.contains(a)){return a}if(a.dock==='left'||a.dock==='right'){b.horizontalDocks--}d=b.componentLayout;e=d&&b.rendered;if(e){d.onRemove(a)}b.dockedItems.remove(a);a.onRemoved(a.destroying||c);b.onDockedRemove(a);if(c){a.destroy()}else {if(e){d.afterRemove(a)}}if(b.hasListeners.dockedremove){b.fireEvent('dockedremove',b,a)}if(!b.destroying){b.updateLayout()}return a},moveDocked:function(a,c){var b=this;if(b.rendered){Ext.suspendLayouts()}b.removeDocked(a,!1);a.dock=c;b.addDocked(a);if(b.rendered){if(a.frame){Ext.getDetachedBody().appendChild(a.el);a.updateFrame()}Ext.resumeLayouts(!0)}},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:!0,closable:!1,closeAction:'destroy',collapsed:!1,collapsedCls:'collapsed',collapseFirst:!0,collapsible:undefined,constrain:!1,constrainHeader:!1,dockedItems:null,tbar:null,bbar:null,fbar:null,lbar:null,rbar:null,buttons:null,floatable:!0,frame:!1,frameHeader:!0,hideCollapseTool:!1,manageHeight:!0,maskElement:'el',minButtonWidth:75,preventHeader:!1,shrinkWrapDock:!1,titleCollapse:undefined,baseCls:'x-panel',bodyPosProps:{x:'x',y:'y'},componentLayout:'dock',contentPaddingProperty:'bodyPadding',emptyArray:[],isPanel:!0,defaultBindProperty:'title',addBodyCls:function(c){var a=this,b=a.rendered?a.body:a.getProtoBody();b.addCls(c);return a},addTool:function(b){if(!Ext.isArray(b)){b=[b]}var c=this,a=c.header,g=b.length,f=c.tools,e,d;if(!a||!a.isHeader){a=null;if(!f){c.tools=f=[]}}for(e=0;e<g;e++){d=b[e];d.toolOwner=c;if(a){a.addTool(d)}else {f.push(d)}}c.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 a=this,c=Ext.container.Container.prototype.addUIClsToElement.apply(this,arguments);a.addBodyCls(['x-'+b,a.baseCls+'-body-'+b,a.baseCls+'-body-'+a.ui+'-'+b]);return c},afterCollapse:function(c){var a=this,b=a.ownerLayout;a.isCollapsingOrExpanding=0;a.updateCollapseTool();if(c){a.removeCls('x-animating-size')}if(b){b.afterCollapse(a,c)}a.setHiddenDocked();a.fireEvent('collapse',a)},afterExpand:function(c){var a=this,b=a.ownerLayout;a.isCollapsingOrExpanding=0;a.updateCollapseTool();if(c){a.removeCls('x-animating-size')}if(b){b.afterExpand(a,c)}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 a=this,b;Ext.container.Container.prototype.beforeRender.call(this);a.initTools();if(!(a.preventHeader||a.header===!1)){a.updateHeader()}a.afterHeaderInit=!0;if(a.collapsed){if(a.isPlaceHolderCollapse()){if(!a.hidden){a.setHiddenState(!0);a.preventCollapseFire=!0;a.placeholderCollapse();delete a.preventCollapseFire;b=a.collapsed;a.collapsed=!1}}else {a.beginCollapse();a.addClsWithUI(a.collapsedCls)}}if(b){a.collapsed=b}},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 a=this,g=a.lastBox,f=a.rendered,d=a.getMemento('collapse'),e=a.getSizeModel(),b=a.header,c;d.capture(['height','minHeight','width','minWidth']);if(g){d.capture(a.restoreDimension(),g,'last.')}if(a.collapsedVertical()){if(e.width.shrinkWrap){a.width=f?a.getWidth():a.width||a.minWidth||100}delete a.height;a.minHeight=0}else {if(a.collapsedHorizontal()){if(e.height.shrinkWrap){a.height=f?a.getHeight():a.height||a.minHeight||100}delete a.width;a.minWidth=0}}if(a.ownerCt){a.ownerCt.getLayout().beginCollapse(a)}if(!a.isPlaceHolderCollapse()&&b!==!1){if(b===(c=a.getReExpander())){b.collapseImmune=!0;b.getInherited().collapseImmune=!0;b.addClsWithUI(a.getHeaderCollapsedClasses(b));if(b.rendered){b.updateFrame()}}else {if(c.el){c.el.show();c.hidden=!1}}}if(a.resizer){a.resizer.disable()}},beginDrag:function(){if(this.floatingDescendants){this.floatingDescendants.hide()}},beginExpand:function(){var a=this,f=a.lastBox,c=a.getMemento('collapse'),e=a.restoreDimension(),b=a.header,d;if(c){c.restore(['minHeight','minWidth',e]);if(f){c.restore(e,!0,f,'last.')}}if(a.ownerCt){a.ownerCt.getLayout().beginExpand(a)}if(!a.isPlaceHolderCollapse()&&b!==!1){if(b===(d=a.getReExpander())){delete b.collapseImmune;delete b.getInherited().collapseImmune;b.removeClsWithUI(a.getHeaderCollapsedClasses(b));if(b.rendered){b.expanding=!0;b.updateFrame();delete b.expanding}}else {d.hidden=!0;d.el.hide()}}if(a.resizer){a.resizer.enable()}},bridgeToolbars:function(){var a=this,b=[],d=a.minButtonWidth,c,e;function initToolbar(b,d,c){if(Ext.isArray(b)){b={xtype:'toolbar',items:b}}else {if(!b.xtype){b.xtype='toolbar'}}b.dock=d;if(c){b.layout=Ext.applyIf(b.layout||{},{pack:{left:'start',center:'center'}[a.buttonAlign]||'end'})}return b}if(a.tbar){b.push(initToolbar(a.tbar,'top'));a.tbar=null}if(a.bbar){b.push(initToolbar(a.bbar,'bottom'));a.bbar=null}if(a.buttons){a.fbar=a.buttons;a.buttons=null}if(a.fbar){c=initToolbar(a.fbar,'bottom',!0);c.ui='footer';if(d){e=c.defaults;c.defaults=function(c){var a=e||{},b=!c.xtype||c.isButton,f;if(!b){f=Ext.ClassManager.getByAlias('widget.'+c.xtype);if(f){b=f.prototype.isButton}}if(b&&!('minWidth' in a)){a=Ext.apply({minWidth:d},a)}return a}}b.push(c);a.fbar=null}if(a.lbar){b.push(initToolbar(a.lbar,'left'));a.lbar=null}if(a.rbar){b.push(initToolbar(a.rbar,'right'));a.rbar=null}if(a.dockedItems){if(a.dockedItems.isMixedCollection){a.addDocked(b)}else {if(!Ext.isArray(a.dockedItems)){a.dockedItems=[a.dockedItems]}a.dockedItems=a.dockedItems.concat(b)}}else {a.dockedItems=b}},close:function(){if(this.fireEvent('beforeclose',this)!==!1){this.doClose()}},collapse:function(c,b){var a=this,f=c||a.collapseDirection,g=a.ownerCt,e=a.ownerLayout,d=a.rendered;if(a.isCollapsingOrExpanding){return a}if(arguments.length<2){b=a.animCollapse}if(a.collapsed||a.fireEvent('beforecollapse',a,c,b)===!1){return a}if(e&&e.onBeforeComponentCollapse){if(e.onBeforeComponentCollapse(a)===!1){return a}}if(d&&g&&a.isPlaceHolderCollapse()){return a.placeholderCollapse(c,b)}a.collapsed=f;if(d){a.beginCollapse()}a.getInherited().collapsed=!0;a.fireHierarchyEvent('collapse');if(d){a.doCollapseExpand(1,b)}return a},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(d){var a=this,b=a.header,c=a.frame&&!a.alwaysFramed;return {xtype:'panel',hidden:!1,header:b?{titleAlign:b.getTitleAlign()}:null,ui:c?a.ui.replace(/-framed$/,''):a.ui,id:a.id+'-ghost',renderTo:Ext.getBody(),resizable:!1,draggable:!1,closable:!1,floating:!0,shadow:!1,frame:c,shim:a.shim,alwaysFramed:a.alwaysFramed,overlapHeader:a.overlapHeader,headerPosition:a.getHeaderPosition(),titleRotation:a.getTitleRotation(),baseCls:a.baseCls,getRefOwner:function(){return a.getRefOwner()},cls:a.baseCls+'-ghost '+(d||'')}},createReExpander:function(c,h){var a=this,g=c==='left',e=c==='right',d=g||e,f=a.ownerCt,b=Ext.apply({hideMode:'offsets',title:a.getTitle(),titleAlign:a.getTitleAlign(),vertical:d,textCls:a.headerTextCls,icon:a.getIcon(),iconCls:a.getIconCls(),iconAlign:a.getIconAlign(),glyph:a.getGlyph(),baseCls:a.self.prototype.baseCls+'-header',ui:a.ui,frame:a.frame&&a.frameHeader,ignoreParentFrame:a.frame||a.overlapHeader,ignoreBorderManagement:a.frame||a.ignoreHeaderBorderManagement,indicateDrag:a.draggable,collapseImmune:!0,headerRole:a.headerRole,ownerCt:f&&a.collapseMode==='placeholder'?f:a,ownerLayout:a.componentLayout,forceOrientation:!0,margin:a.margin},h);if(a.collapseMode==='mini'){if(d){b.width=1}else {b.height=1}}if(!a.hideCollapseTool){if(g||e&&a.isPlaceHolderCollapse()){b.titlePosition=1}b.tools=[{xtype:'tool',type:'expand-'+a.getOppositeDirection(c),uiCls:['top'],handler:a.toggleCollapse,scope:a}]}b=new Ext.panel.Header(b);b.addClsWithUI(a.getHeaderCollapsedClasses(b));return b},doClose:function(){this.fireEvent('close',this);this[this.closeAction]()},doCollapseExpand:function(e,b){var a=this,d=a.animCollapse,c=a.ownerLayout;a.animCollapse=b;a.isCollapsingOrExpanding=e;if(b){a.addCls('x-animating-size')}if(c&&!b){c.onContentChange(a)}else {a.updateLayout({isRoot:!0})}a.animCollapse=d;return a},endDrag:function(){if(this.floatingDescendants){this.floatingDescendants.show()}},expand:function(b){var a=this,c=a.ownerLayout,d=a.rendered;if(a.isCollapsingOrExpanding){return a}if(!arguments.length){b=a.animCollapse}if(!a.collapsed&&!a.floatedFromCollapse){return a}if(a.fireEvent('beforeexpand',a,b)===!1){return a}if(c&&c.onBeforeComponentExpand){if(c.onBeforeComponentExpand(a)===!1){return a}}delete a.getInherited().collapsed;if(d&&a.isPlaceHolderCollapse()){return a.placeholderExpand(b)}a.restoreHiddenDocked();if(d){a.beginExpand()}a.collapsed=!1;if(a.rendered){a.doCollapseExpand(2,b)}return a},findReExpander:function(g){var f=this,c=Ext.Component,d=f.dockedItems.items,e=d.length,a,b;if(f.collapseMode==='mini'){return}switch(g){case c.DIRECTION_TOP:case c.DIRECTION_BOTTOM:for(b=0;b<e;b++){a=d[b];if(!a.hidden){if(a.isHeader&&(!a.dock||a.dock==='top'||a.dock==='bottom')){return a}}};break;case c.DIRECTION_LEFT:case c.DIRECTION_RIGHT:for(b=0;b<e;b++){a=d[b];if(!a.hidden){if(a.isHeader&&(a.dock==='left'||a.dock==='right')){return a}}};break;default:throw 'Panel#findReExpander must be passed a valid collapseDirection';}},floatCollapsedPanel:function(){var a=this,c=a.placeholder,d=c.getSize(),i='x-border-region-slide-in',h=a.collapsed,g=a.ownerCt||a,f,e,b;if(a.isSliding){return}if(a.el.hasCls(i)){a.slideOutFloatedPanel();return}a.isSliding=!0;c.el.hide();c.hidden=!0;a.el.show();a.setHiddenState(!1);a.collapsed=!1;g.updateLayout();c.el.show();c.hidden=!1;a.el.hide();a.setHiddenState(!0);a.collapsed=h;g.updateLayout();b=a.getBox(!1,!0);a.slideOutTask=a.slideOutTask||new Ext.util.DelayedTask(a.slideOutFloatedPanel,a);if(Ext.supports.Touch){Ext.on('mousedown',e=function(b){if(!b.within(a.el)){Ext.un('mousedown',e);a.slideOutFloatedPanel()}})}if(!a.placeholderListener){a.placeholderListener=c.on({resize:a.onPlaceholderResize,scope:a,destroyable:!0})}c.el.on('mouseleave',a.onMouseLeaveFloated,a);a.el.on('mouseleave',a.onMouseLeaveFloated,a);c.el.on('mouseenter',a.onMouseEnterFloated,a);a.el.on('mouseenter',a.onMouseEnterFloated,a);a.el.addCls(i);a.floated=h;if(a.collapseTool){a.collapseTool.el.hide()}switch(a.collapsed){case 'top':a.width=d.width;a.setLocalXY(b.x,b.y+d.height);break;case 'right':a.height=d.height;a.setLocalXY(b.x-d.width,b.y);break;case 'bottom':a.width=d.width;a.setLocalXY(b.x,b.y-d.height);break;case 'left':a.height=d.height;a.setLocalXY(b.x+d.width,b.y);break;}f=a.convertCollapseDir(a.collapsed);a.floatedFromCollapse=a.collapsed;a.collapsed=!1;a.setHiddenState(!1);a.el.slideIn(f,{preserveScroll:!0,duration:Ext.Number.from(a.animCollapse,Ext.fx.Anim.prototype.duration),listeners:{afteranimate:function(){a.isSliding=!1;a.fireEvent('float',a)}}})},onPlaceholderResize:function(f,d,c){var a=this,e=a.getBox(!1,!0),b=f.getBox(!1,!0);switch(a.floated){case 'top':a.width=d;a.setLocalY(b.y+b.height);break;case 'right':a.height=c;a.setLocalX(b.x-e.width);break;case 'bottom':a.width=d;a.setLocalY(b.y-e.height);break;case 'left':a.height=c;a.setLocalX(b.x+b.width);break;}a.updateLayout({isRoot:!0})},getAnimationProps:function(){var c=this,b=c.animCollapse,a;a=Ext.container.Container.prototype.getAnimationProps.call(this);if(typeof b==='number'){a.duration=b}return a},getCollapsed:function(){var a=this;if(a.collapsed===!0){return a.collapseDirection}return a.collapsed},getCollapsedDockedItems:function(){var a=this;return a.header===!1||a.collapseMode==='placeholder'?a.emptyArray:[a.getReExpander()]},getComponent:function(b){var a=Ext.container.Container.prototype.getComponent.apply(this,arguments);if(a===undefined&&!Ext.isNumber(b)){a=this.getDockedComponent(b)}return a},getHeader:function(){return this.header},getHeaderCollapsedClasses:function(d){var a=this,c=a.collapsedCls,b;b=[c,c+'-'+d.getDockName()];if(a.border&&(!a.frame||a.frame&&Ext.supports.CSS3BorderRadius)){b.push(c+'-border-'+d.getDockName())}return b},getKeyMap:function(){return this.keyMap||(this.keyMap=new Ext.util.KeyMap(Ext.apply({target:this.el},this.keys)))},getOppositeDirection:function(b){var a=Ext.Component;switch(b){case a.DIRECTION_TOP:return a.DIRECTION_BOTTOM;case a.DIRECTION_RIGHT:return a.DIRECTION_LEFT;case a.DIRECTION_BOTTOM:return a.DIRECTION_TOP;case a.DIRECTION_LEFT:return a.DIRECTION_RIGHT;}},getPlaceholder:function(g){var a=this,d=g||a.collapseDirection,f=null,b=a.placeholder,e=a.floatable,c=a.titleCollapse;if(!b){if(e||a.collapsible&&c){f={click:{fn:!c&&e?a.floatCollapsedPanel:a.toggleCollapse,element:'el',scope:a}}}a.placeholder=b=Ext.widget(a.createReExpander(d,{id:a.id+'-placeholder',listeners:f}))}if(!b.placeholderFor){if(!b.isComponent){a.placeholder=b=a.lookupComponent(b)}Ext.applyIf(b,{margin:a.margin,placeholderFor:a,synthetic:!0});b.addCls(['x-region-collapsed-placeholder','x-region-collapsed-'+d+'-placeholder',a.collapsedCls])}return b},getProtoBody:function(){var a=this,b=a.protoBody;if(!b){a.protoBody=b=new Ext.util.ProtoElement({cls:a.bodyCls,style:a.bodyStyle,clsProp:'bodyCls',styleProp:'bodyStyle',styleIsText:!0})}return b},getReExpander:function(d){var a=this,b=d||a.collapseDirection,c=a.reExpander||a.findReExpander(b);a.expandDirection=a.getOppositeDirection(b);if(!c){a.reExpander=c=a.createReExpander(b,{dock:b,cls:'x-docked '+a.baseCls+'-'+a.ui+'-collapsed',isCollapsedExpander:!0});a.dockedItems.insert(0,c)}return c},getRefItems:function(b){var a=Ext.container.Container.prototype.getRefItems.apply(this,arguments);return this.getDockingRefItems(b,a)},getState:function(){var b=this,a=Ext.container.Container.prototype.getState.call(this)||{},e=b.collapsed,d=b.floated,c;if(d){b.collapsed=d}a=b.addPropertyToState(a,'collapsed');if(d){b.collapsed=e}if(b.getCollapsed()){c=b.getMemento('collapse').data;a=b.addPropertyToState(a,'collapsed',c);if(b.collapsedVertical()){delete a.height;if(c){a=b.addPropertyToState(a,'height',c.height)}}else {delete a.width;if(c){a=b.addPropertyToState(a,'width',c.width)}}}return a},applyState:function(b){var d=this,c={},a;if(b){a=b.collapsed;if(a){c=d.getMemento('collapse');Ext.Object.merge(c.data,a);b.collapsed=!0}Ext.container.Container.prototype.applyState.apply(this,arguments)}},ghost:function(k){var b=this,a=b.ghostPanel,d=b.getBox(),j=b.header,c,g,h,e,f,i;if(!a){b.ghostPanel=a=Ext.widget(b.createGhost(k));a.el.dom.removeAttribute('tabIndex')}else {a.el.show()}a.setHiddenState(!1);a.floatParent=b.floatParent;a.toFront();if(j&&!b.preventHeader){c=a.header;c.suspendLayouts();g=c.query('tool');for(i=g.length;i--;){c.remove(g[i])}c.setTitlePosition(0);a.addTool(b.ghostTools());a.setTitle(b.getTitle());c.setTitlePosition(j.titlePosition);e=b.getIconCls();if(e){a.setIconCls(e)}else {h=b.getIcon();if(h){a.setIcon(h)}else {f=b.getGlyph();if(f){a.setGlyph(f)}}}c.addCls('x-header-ghost');c.resumeLayouts()}a.setPagePosition(d.x,d.y);a.setSize(d.width,d.height);b.el.hide();return a},ghostTools:function(){var c=[],d=this.header,b=d?d.query('tool[hidden=false]'):[],a,e,f;if(b.length){a=0;e=b.length;for(;a<e;a++){f=b[a];c.push({type:f.type})}}else {c=[{type:'placeholder'}]}return c},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 a=this,b=a.getProtoBody();if(a.bodyPadding!==undefined){if(a.layout.managePadding){b.setStyle('padding',0)}else {b.setStyle('padding',this.unitizeBox(a.bodyPadding===!0?5:a.bodyPadding))}}a.initBodyBorder()},initBorderProps:function(){var a=this;if(a.frame&&a.border&&a.bodyBorder===undefined){a.bodyBorder=!1}if(a.frame&&a.border&&(a.bodyBorder===!1||a.bodyBorder===0)){a.manageBodyBorders=!0}},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(d,g,h,a){var c=this,f=c.header,b,e;if(c.constrainHeader){b=f.lastBox;if(a){if(!f.vertical){a=[a[0],b?b.height:a[1]]}else {a=[b?b.width:a[0],a[1]]}}else {if(b){a=[b.width,b.height]}}e=c.floatParent;d=d||c.constrainTo||(e?e.getTargetEl():null)||c.container||c.el.parent()}return Ext.container.Container.prototype.calculateConstrainedPosition.call(this,d,g,h,a)},initTools:function(){var a=this,c=a.tools,b,d;a.tools=[];for(b=c&&c.length;b;){--b;a.tools[b]=d=c[b];d.toolOwner=a}if(a.collapsible&&!(a.hideCollapseTool||a.header===!1||a.preventHeader)){a.updateCollapseTool();if(a.collapseFirst){a.tools.unshift(a.collapseTool)}}a.addTools();if(a.pinnable){a.initPinnable()}if(a.closable){a.addClsWithUI('closable');a.addTool({xtype:'tool',type:'close',scope:a,handler:a.close})}if(a.collapseTool&&!a.collapseFirst){a.addTool(a.collapseTool)}},isLayoutRoot:function(){if(this.floatedFromCollapse){return !0}return Ext.container.Container.prototype.isLayoutRoot.call(this)},isPlaceHolderCollapse:function(){return this.collapseMode==='placeholder'},isVisible:function(b){var a=this;if(a.collapsed&&a.placeholder){return a.placeholder.isVisible(b)}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(c,e,d){var a=this,b=a.dd;if(a.floatedFromCollapse){a.slideOutFloatedPanel(!0)}if(a.draggable&&b){b.endDrag()}if(a.collapsed&&a.placeholder){if(a.splitter){Ext.suspendLayouts();a.splitter.hide();Ext.resumeLayouts()}a.placeholder.hide()}else {Ext.container.Container.prototype.onHide.call(this,c,e,d)}},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,!1)}Ext.container.Container.prototype.onRemoved.apply(this,arguments)},onShow:function(){var a=this;if(a.collapsed&&a.isPlaceHolderCollapse()){if(a.splitter){Ext.suspendLayouts();a.splitter.show();Ext.resumeLayouts()}a.setHiddenState(!0);a.placeholderCollapse()}else {Ext.container.Container.prototype.onShow.apply(this,arguments)}},placeholderCollapse:function(h,g){var a=this,e=a.ownerCt,d=h||a.collapseDirection,f='x-border-region-slide-in',b=a.getPlaceholder(d),c;a.isCollapsingOrExpanding=1;a.setHiddenState(!0);a.collapsed=d;if(b.rendered){if(b.el.dom.parentNode!==a.el.dom.parentNode){a.el.dom.parentNode.insertBefore(b.el.dom,a.el.dom)}b.hidden=!1;b.setHiddenState(!1);b.el.show();e.updateLayout()}else {e.insert(e.items.indexOf(a),b)}if(a.rendered){a.el.setVisibilityMode(a.placeholderCollapseHideMode);if(g){a.el.addCls(f);b.el.hide();c=a.convertCollapseDir(d);a.el.slideOut(c,{preserveScroll:!0,duration:Ext.Number.from(g,Ext.fx.Anim.prototype.duration),listeners:{afteranimate:function(){a.el.removeCls(f);b.el.show().setStyle('display','none').slideIn(c,{easing:'linear',duration:100,listeners:{afteranimate:function(){b.focus();b.setHiddenState(!1);a.isCollapsingOrExpanding=0;a.fireEvent('collapse',a)}}})}}})}else {a.el.hide();b.setHiddenState(!1);a.isCollapsingOrExpanding=0;a.fireEvent('collapse',a)}}else {a.isCollapsingOrExpanding=0;if(!a.preventCollapseFire){a.fireEvent('collapse',a)}}return a},placeholderExpand:function(d){var a=this,g=a.collapsed,c='x-border-region-slide-in',e,b,f=a.ownerLayout?a.ownerLayout.centerRegion:null;if(Ext.Component.layoutSuspendCount){d=!1}if(a.floatedFromCollapse){b=a.getPosition(!0);a.slideOutFloatedPanelBegin();a.slideOutFloatedPanelEnd();a.floated=!1}if(d){Ext.suspendLayouts();a.placeholder.hide();a.el.show();a.collapsed=!1;a.setHiddenState(!1);if(f&&!b){f.hidden=!0}Ext.resumeLayouts(!0);f.hidden=!1;a.el.addCls(c);a.isCollapsingOrExpanding=2;if(b){e=a.getXY();a.setLocalXY(b[0],b[1]);a.setXY([e[0],e[1]],{duration:Ext.Number.from(d,Ext.fx.Anim.prototype.duration),listeners:{afteranimate:function(){a.el.removeCls(c);a.isCollapsingOrExpanding=0;a.fireEvent('expand',a)}}})}else {a.el.hide();a.placeholder.el.show();a.placeholder.hidden=!1;a.setHiddenState(!1);a.el.slideIn(a.convertCollapseDir(g),{preserveScroll:!0,duration:Ext.Number.from(d,Ext.fx.Anim.prototype.duration),listeners:{afteranimate:function(){a.el.removeCls(c);a.placeholder.hide();a.updateLayout();a.isCollapsingOrExpanding=0;a.fireEvent('expand',a)}}})}}else {a.floated=a.collapsed=!1;a.el.removeCls(c);Ext.suspendLayouts();a.placeholder.hide();a.show();Ext.resumeLayouts(!0);a.fireEvent('expand',a)}return a},remove:function(a,b){if(this.dockedItems.contains(a)){this.removeDocked(a,b)}else {Ext.container.Container.prototype.remove.call(this,a,b)}return a},removeBodyCls:function(c){var a=this,b=a.rendered?a.body:a.getProtoBody();b.removeCls(c);return a},removeUIClsFromElement:function(b){var a=this,c=Ext.container.Container.prototype.removeUIClsFromElement.apply(this,arguments);a.removeBodyCls(['x-'+b,a.baseCls+'-body-'+b,a.baseCls+'-body-'+a.ui+'-'+b]);return c},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(a,d){var b=this,c=b.rendered?b.body:b.getProtoBody();if(Ext.isFunction(a)){a=a()}if(arguments.length===1){if(Ext.isString(a)){a=Ext.Element.parseStyles(a)}c.setStyle(a)}else {c.setStyle(a,d)}return b},setBorder:function(a,d){if(d){return}var b=this,c=b.header;if(!a){a=0}else {if(a===!0){a='1px'}else {a=b.unitizeBox(a)}}if(c){if(c.isHeader){c.setBorder(a)}else {c.border=a}}if(b.rendered&&b.bodyBorder!==!1){b.body.setStyle('border-width',a)}b.updateLayout();b.border=a},setCollapsed:function(a){this[a?'collapse':'expand']()},setGlyph:function(b){var a=this,e=a.glyph,c=a.header,d=a.placeholder;if(b!==e){a.glyph=b;if(c){if(c.isHeader){c.setGlyph(b)}else {c.glyph=b}}else {if(a.rendered||a.afterHeaderInit){a.updateHeader()}}if(d&&d.setGlyph){d.setGlyph(b)}a.fireEvent('glyphchange',a,b,e)}},setIcon:function(b){var a=this,e=a.icon,c=a.header,d=a.placeholder;if(b!==e){a.icon=b;if(c){if(c.isHeader){c.setIcon(b)}else {c.icon=b}}else {if(a.rendered||a.afterHeaderInit){a.updateHeader()}}if(d&&d.setIcon){d.setIcon(b)}a.fireEvent('iconchange',a,b,e)}},setIconCls:function(b){var a=this,e=a.iconCls,c=a.header,d=a.placeholder;if(b!==e){a.iconCls=b;if(c){if(c.isHeader){c.setIconCls(b)}else {c.iconCls=b}}else {if(a.rendered||a.afterHeaderInit){a.updateHeader()}}if(d&&d.setIconCls){d.setIconCls(b)}a.fireEvent('iconclschange',a,b,e)}},setTitle:function(b){var a=this,f=a.title,d=a.header,e=a.reExpander,c=a.placeholder;if(b!==f){a.title=b;if(d){if(d.isHeader){d.setTitle(b)}}else {if(a.rendered||a.afterHeaderInit){a.updateHeader()}}if(e){e.setTitle(b)}if(c&&c.setTitle){c.setTitle(b)}a.fireEvent('titlechange',a,b,f)}},setHiddenDocked:function(){var b=this,c=b.hiddenOnCollapse,f=b.getDockedItems(),g=f.length,d=0,a,e;if(b.header!==!1){e=b.getReExpander()}c.add(b.body);for(;d<g;d++){a=f[d];if(a&&a!==e&&a.el){c.add(a.el)}}c.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 a=this,b=a.collapseTool;if(!b&&a.collapsible){a.collapseDirection=a.collapseDirection||a.getHeaderPosition()||'top';a.collapseTool=a.expandTool=b=Ext.widget({xtype:'tool',handler:a.toggleCollapse,scope:a})}if(b){if(a.collapsed&&!a.isPlaceHolderCollapse()){b.setType('expand-'+a.getOppositeDirection(a.collapseDirection))}else {b.setType('collapse-'+a.collapseDirection)}}},updateHeaderPosition:function(b){var a=this.header;if(a&&a.isHeader){a.setDock(b)}},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(b){var a=this.header;if(a&&a.isHeader){a.setTitleRotation(b)}},unghost:function(e,c,d){var a=this,b=a.ghostPanel;if(!b){return}if(e!==!1){a.el.show();if(c!==!1){a.setPagePosition(b.getXY());if(a.hideMode==='offsets'){delete a.el.hideModeStyles}}if(d){a.focus(!1,10)}}b.el.hide();b.setHiddenState(!0)},updateHeader:function(k){var a=this,b=a.header,g=a.getTitle(),c=a.tools,h=a.getIcon(),f=a.getGlyph(),e=a.getIconCls(),j=f||h||e,d=a.getHeaderPosition(),i=d==='left'||d==='right';if(Ext.isObject(b)||b!==!1&&(k||(g||j)||c&&c.length||a.collapsible&&!a.titleCollapse)){if(b&&b.isHeader){b.show()}else {b=a.header=Ext.widget(Ext.merge({xtype:'header',title:g,titleAlign:a.getTitleAlign(),vertical:i,dock:a.getHeaderPosition()||'top',titleRotation:a.getTitleRotation(),textCls:a.headerTextCls,iconCls:e,iconAlign:a.getIconAlign(),icon:h,glyph:f,baseCls:a.baseCls+'-header',tools:c,ui:a.ui,id:a.id+'_header',overCls:a.headerOverCls,indicateDrag:a.draggable,frame:(a.frame||a.alwaysFramed)&&a.frameHeader,ignoreParentFrame:a.frame||a.overlapHeader,ignoreBorderManagement:a.frame||a.ignoreHeaderBorderManagement,headerRole:a.headerRole,ownerCt:a,synthetic:!0,listeners:a.collapsible&&a.titleCollapse?{click:a.toggleCollapse,scope:a}:null},a.header));a.addDocked(b,0)}}else {if(b){b.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 a=this,b,c;if(!a.header){a.updateHeader(!0)}if(a.header){b=Ext.applyIf({el:a.el,delegate:'#'+a.header.id},a.draggable);if(a.constrain||a.constrainHeader){b.constrain=a.constrain;b.constrainDelegate=a.constrainHeader;b.constrainTo=a.constrainTo||a.container}c=a.dd=new Ext.util.ComponentDragger(a,b);a.relayEvents(c,['dragstart','drag','dragend']);if(a.maximized){c.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(e){var a=this,d=a.el,b,c=function(){a.slideOutFloatedPanelEnd();a.el.removeCls('x-border-region-slide-in')};if(a.isSliding||a.isDestroyed){return}a.isSliding=!0;a.floated=!1;a.slideOutFloatedPanelBegin();if(e){d.hide();return c()}if(typeof a.collapsed==='string'){b=a.convertCollapseDir(a.collapsed)}d.slideOut(b,{preserveScroll:!0,duration:Ext.Number.from(a.animCollapse,Ext.fx.Anim.prototype.duration),listeners:{afteranimate:c}})},slideOutFloatedPanelBegin:function(){var a=this,b=a.placeholder.el,c=a.el;a.collapsed=a.floatedFromCollapse;a.setHiddenState(!0);a.floatedFromCollapse=null;b.un('mouseleave',a.onMouseLeaveFloated,a);c.un('mouseleave',a.onMouseLeaveFloated,a);b.un('mouseenter',a.onMouseEnterFloated,a);c.un('mouseenter',a.onMouseEnterFloated,a)},slideOutFloatedPanelEnd:function(b){var a=this;if(a.collapseTool){a.collapseTool.el.show()}a.slideOutTask.cancel();a.isSliding=!1;if(!b){a.fireEvent('unfloat',a)}}}},0,['panel'],['component','box','container','panel'],{'component':!0,'box':!0,'container':!0,'panel':!0},['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.define('ExtThemeNeptune.panel.Panel',{override:'Ext.panel.Panel',border:!1,bodyBorder:!1,initBorderProps:Ext.emptyFn,initBodyBorder:function(){if(this.bodyBorder!==!0){arguments.callee.$previous.call(this)}}});Ext.cmd.derive('Ext.tip.Tip',Ext.panel.Panel,{alternateClassName:'Ext.Tip',minWidth:40,maxWidth:500,shadow:'sides',defaultAlign:'tl-bl?',constrainPosition:!0,autoRender:!0,hidden:!0,baseCls:'x-tip',focusOnToFront:!1,closeAction:'hide',alwaysFramed:!0,frameHeader:!1,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(!0)}},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':!0,'box':!0,'container':!0,'panel':!0,'tip':!0},['widget.tip'],0,[Ext.tip,'Tip',Ext,'Tip'],0);Ext.cmd.derive('Ext.tip.ToolTip',Ext.tip.Tip,{alternateClassName:'Ext.ToolTip',autoHide:!0,showDelay:500,hideDelay:200,dismissDelay:5000,trackMouse:!1,anchorToTarget:!0,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(c,b){var a=this;Ext.tip.Tip.prototype.onRender.apply(this,arguments);a.anchorCls='x-tip-anchor-'+a.getAnchorPosition();a.anchorEl=a.el.createChild({role:'presentation',cls:'x-tip-anchor '+a.anchorCls})},setTarget:function(d){var a=this,b=Ext.get(d),c;if(a.target){c=Ext.get(a.target);if(Ext.supports.Touch){a.mun(c,'tap',a.onTargetOver,a)}else {a.mun(c,{mouseover:a.onTargetOver,mouseout:a.onTargetOut,mousemove:a.onMouseMove,scope:a})}}a.target=b;if(b){if(Ext.supports.Touch){a.mon(b,{tap:a.onTargetOver,scope:a})}else {a.mon(b,{mouseover:a.onTargetOver,mouseout:a.onTargetOut,mousemove:a.onMouseMove,scope:a})}}if(a.anchor){a.anchorTarget=a.target}},onMouseMove:function(c){var a=this,d,b;if(!a.target||a.target.contains(c.target)){d=a.delegate?c.getTarget(a.delegate):a.triggerElement=!0;if(d){a.targetXY=c.getXY();if(d===a.triggerElement){if(!a.hidden&&a.trackMouse){b=a.getTargetXY();if(a.constrainPosition){b=a.el.adjustForConstraints(b,a.el.parent())}a.setPagePosition(b)}}else {a.hide();a.lastActive=new Date(0);a.onTargetOver(c)}}else {if(!a.closable&&a.isVisible()&&a.autoHide!==!1){a.delayHide()}}}},getTargetXY:function(){var a=this,c,d,h,m,l,f,e,j,k,b,g,i;if(a.delegate){a.anchorTarget=a.triggerElement}if(a.anchor){a.targetCounter++;d=a.getOffsets();h=a.anchorToTarget&&!a.trackMouse?a.getAlignToXY(a.anchorTarget,a.getAnchorAlign()):a.targetXY;m=Ext.Element.getViewportWidth()-5;l=Ext.Element.getViewportHeight()-5;f=document.documentElement;e=document.body;j=(f.scrollLeft||e.scrollLeft||0)+5;k=(f.scrollTop||e.scrollTop||0)+5;b=[h[0]+d[0],h[1]+d[1]];g=a.getSize();i=a.constrainPosition;a.anchorEl.removeCls(a.anchorCls);if(a.targetCounter<2&&i){if(b[0]<j){if(a.anchorToTarget){a.defaultAlign='l-r';if(a.mouseOffset){a.mouseOffset[0]*=-1}}a.anchor='left';return a.getTargetXY()}if(b[0]+g.width>m){if(a.anchorToTarget){a.defaultAlign='r-l';if(a.mouseOffset){a.mouseOffset[0]*=-1}}a.anchor='right';return a.getTargetXY()}if(b[1]<k){if(a.anchorToTarget){a.defaultAlign='t-b';if(a.mouseOffset){a.mouseOffset[1]*=-1}}a.anchor='top';return a.getTargetXY()}if(b[1]+g.height>l){if(a.anchorToTarget){a.defaultAlign='b-t';if(a.mouseOffset){a.mouseOffset[1]*=-1}}a.anchor='bottom';return a.getTargetXY()}}a.anchorCls='x-tip-anchor-'+a.getAnchorPosition();a.anchorEl.addCls(a.anchorCls);a.targetCounter=0;return b}else {c=a.getMouseOffset();return a.targetXY?[a.targetXY[0]+c[0],a.targetXY[1]+c[1]]:c}},calculateConstrainedPosition:function(e){var a=this,d,b,c;if(!e&&a.isContainedFloater()){d=a.isVisible();if(!d){a.el.show()}b=a.getTargetXY();if(!d){a.el.hide()}c=a.floatParent.getTargetEl().getViewRegion();b[0]-=c.left;b[1]-=c.top}else {b=a.callOverridden(arguments)}return b},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 a=this,b;if(a.anchor){a.tipAnchor=a.anchor.charAt(0)}else {b=a.defaultAlign.match(/^([a-z]+)-([a-z]+)(\?)?$/);a.tipAnchor=b[1].charAt(0)}switch(a.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 b=this,c,a,d=b.getAnchorPosition().charAt(0);if(b.anchorToTarget&&!b.trackMouse){switch(d){case 't':a=[0,9];break;case 'b':a=[0,-13];break;case 'r':a=[-13,0];break;default:a=[9,0];break;}}else {switch(d){case 't':a=[-15-b.anchorOffset,30];break;case 'b':a=[-19-b.anchorOffset,-13-b.el.dom.offsetHeight];break;case 'r':a=[-15-b.el.dom.offsetWidth,-13-b.anchorOffset];break;default:a=[25,-13-b.anchorOffset];break;}}c=b.getMouseOffset();a[0]+=c[0];a[1]+=c[1];return a},onTargetOver:function(b){var a=this,d=a.delegate,c;if(a.disabled||b.within(a.target.dom,!0)){return}c=d?b.getTarget(d):!0;if(c){a.triggerElement=c;a.triggerEvent=b;a.clearTimer('hide');a.targetXY=b.getXY();a.delayShow()}},delayShow:function(c){var a=this,b=a.el&&(c===!1||!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!==!1){a.show(b)}}},showFromDelay:function(b){var a=this;if(a.disabled){return}a.fromDelayShow=!0;a.show(b);delete a.fromDelayShow},onShowVeto:function(){Ext.tip.Tip.prototype.onShowVeto.call(this);delete this.triggerElement;this.clearTimer('show')},onTargetOut:function(d){var a=this,b=a.triggerElement,c=b===!0?a.target:b;if(a.disabled||!b||d.within(c,!0)){return}if(a.showTimer){a.clearTimer('show');a.triggerElement=null}if(a.autoHide!==!1){a.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===!1){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=!0;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(!0);a.el.syncUnderlays();if(a.dismissDelay&&a.autoHide!==!1){a.dismissTimer=Ext.defer(a.hide,a.dismissDelay,a)}}delete a.calledFromShowAt},syncAnchor:function(){var a=this,b,c,d;switch(a.tipAnchor.charAt(0)){case 't':b='b';c='tl';d=[20+a.anchorOffset,1];break;case 'r':b='l';c='tr';d=[-1,12+a.anchorOffset];break;case 'b':b='t';c='bl';d=[20+a.anchorOffset,-1];break;default:b='r';c='tl';d=[1,12+a.anchorOffset];break;}a.anchorEl.alignTo(a.el,b+'-'+c,d);a.anchorEl.setStyle('z-index',parseInt(a.el.getZIndex(),10)||0+1).setVisibilityMode(Ext.Element.DISPLAY)},afterSetPosition:function(b,c){var a=this;Ext.tip.Tip.prototype.afterSetPosition.apply(this,arguments);if(a.anchor){a.syncAnchor();if(!a.anchorEl.isVisible()){a.anchorEl.show()}}else {a.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':!0,'box':!0,'container':!0,'panel':!0,'tip':!0,'tooltip':!0},['widget.tooltip'],0,[Ext.tip,'ToolTip',Ext,'ToolTip'],0);Ext.cmd.derive('Ext.tip.QuickTip',Ext.tip.ToolTip,{alternateClassName:'Ext.QuickTip',interceptTitles:!1,title:' ',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:!0,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},text:null,register:function(a){var f=Ext.isArray(a)?a:arguments,d=0,g=f.length,b,c,e;for(;d<g;d++){a=f[d];b=a.target;if(b){if(Ext.isArray(b)){for(c=0,e=b.length;c<e;c++){this.targets[Ext.id(b[c])]=a}}else {this.targets[Ext.id(b)]=a}}}},unregister:function(a){delete this.targets[Ext.id(a)]},cancelShow:function(b){var c=this,a=c.activeTarget;b=Ext.get(b).dom;if(c.isVisible()){if(a&&a.el===b){c.hide()}}else {if(a&&a.el===b){c.clearTimer('show')}}},getTipCfg:function(a,f){var b=a.title,c=this.tagConfig,d=c.attr||(c.attr=c.namespace+c.attribute),e;if(this.interceptTitles&&b&&Ext.isString(b)){a.setAttribute(d,b);a.removeAttribute('title');return {text:b}}else {a=Ext.fly(a).findParent(function(b){return e=b.getAttribute(d)});if(a){return {target:a,text:e}}}},onTargetOver:function(a){this.doTargetOver(a.getTarget(this.delegate),null,a)},doTargetOver:function(b,p,l){var a=this,f,n,j,c,d,e,g,k,i,h,o,m;if(a.disabled){return}if(typeof b==='string'){b=Ext.getDom(b)}a.targetXY=p||(l?l.getXY():Ext.fly(b).getXY());if(!b||b.nodeType!==1||b===document.documentElement||b===document.body){return}if(a.activeTarget&&(b===a.activeTarget.el||Ext.fly(a.activeTarget.el).contains(b))){if(a.targetTextEmpty()){a.onShowVeto();delete a.activeTarget}else {a.clearTimer('hide');a.show()}return}if(b){i=a.targets;for(m in i){if(i.hasOwnProperty(m)){o=i[m];h=Ext.fly(o.target);if(h&&(h.dom===b||h.contains(b))){c=h.dom;break}}}if(c){a.activeTarget=a.targets[c.id];a.activeTarget.el=b;a.anchor=a.activeTarget.anchor;if(a.anchor){a.anchorTarget=b}f=parseInt(a.activeTarget.showDelay,10);if(f){j=a.showDelay;a.showDelay=f}a.delayShow();if(f){a.showDelay=j}if(!(n=a.activeTarget.hideAction)){delete a.hideAction}else {a.hideAction=n}return}}c=Ext.fly(b,'_quicktip-target');d=a.tagConfig;e=d.namespace;g=a.getTipCfg(b,l);if(g){if(g.target){b=g.target;c=Ext.fly(b,'_quicktip-target')}k=c.getAttribute(e+d.hide);a.activeTarget={el:b,text:g.text,width:+c.getAttribute(e+d.width)||null,autoHide:k!=='user'&&k!=='false',title:c.getAttribute(e+d.title),cls:c.getAttribute(e+d.cls),align:c.getAttribute(e+d.align),showDelay:parseInt(c.getAttribute(e+d.showDelay)||0,10),hideAction:c.getAttribute(e+d.hideAction),anchorTarget:c.getAttribute(e+d.anchorTarget)};if(!a.initialConfig.hasOwnProperty('anchor')){a.anchor=c.getAttribute(e+d.anchor)}if(a.anchor&&!a.initialConfig.hasOwnProperty('anchorTarget')){a.anchorTarget=a.activeTarget.anchorTarget||b}f=parseInt(a.activeTarget.showDelay,10);if(f){j=a.showDelay;a.showDelay=f}a.delayShow();if(f){a.showDelay=j}}},onTargetOut:function(d){var a=this,c=a.activeTarget,b,e;if(c&&d.within(a.activeTarget.el)&&!a.getTipCfg(d.getTarget(),d)){return}a.clearTimer('show');delete a.activeTarget;if(a.autoHide!==!1){b=c&&parseInt(c.hideDelay,10);if(b){e=a.hideDelay;a.hideDelay=b}a.delayHide();if(b){a.hideDelay=e}}},targetTextEmpty:function(){var c=this,a=c.activeTarget,e=c.tagConfig,b,d;if(a){b=a.el;if(b){d=b.getAttribute(e.namespace+e.attribute);if(!d&&!c.targets[Ext.id(a.target)]){return !0}}}return !1},show:function(){var a=this,b=a.fromDelayShow;if(b&&a.targetTextEmpty()){a.onShowVeto();delete a.activeTarget;return}Ext.tip.ToolTip.prototype.show.apply(this,arguments)},showAt:function(d){var a=this,b=a.activeTarget,f=a.header,e,c;if(b){if(!a.rendered){a.render(Ext.getBody());a.activeTarget=b}a.suspendLayouts();if(b.title){a.setTitle(b.title);f.show()}else {if(f){f.hide()}}a.update(b.text);a.autoHide=b.autoHide;e=b.dismissDelay;a.dismissDelay=Ext.isNumber(e)?e:a.dismissDelay;if(b.mouseOffset){d[0]+=b.mouseOffset[0];d[1]+=b.mouseOffset[1]}c=a.lastCls;if(c){a.removeCls(c);delete a.lastCls}c=b.cls;if(c){a.addCls(c);a.lastCls=c}a.setWidth(b.width);if(a.anchor){a.constrainPosition=!1}else {if(b.align){d=a.getAlignToXY(b.el,b.align);a.constrainPosition=!1}else {a.constrainPosition=!0}}a.resumeLayouts(!0)}Ext.tip.ToolTip.prototype.showAt.call(this,d)},hide:function(){delete this.activeTarget;Ext.tip.ToolTip.prototype.hide.call(this)}},0,['quicktip'],['component','box','container','panel','tip','tooltip','quicktip'],{'component':!0,'box':!0,'container':!0,'panel':!0,'tip':!0,'tooltip':!0,'quicktip':!0},['widget.quicktip'],0,[Ext.tip,'QuickTip',Ext,'QuickTip'],0);Ext.cmd.derive('Ext.tip.QuickTipManager',Ext.Base,{singleton:!0,alternateClassName:'Ext.QuickTips',disabled:!1,init:function(d,e){var c=this;if(!c.tip){if(!Ext.isReady){Ext.onInternalReady(function(){Ext.tip.QuickTipManager.init(d,e)});return !1}var a=Ext.apply({disabled:c.disabled,id:'ext-quicktips-tip'},e),b=a.className,f=a.xtype;if(b){delete a.className}else {if(f){b='widget.'+f;delete a.xtype}}if(d!==!1){a.renderTo=document.body}c.tip=Ext.create(b||'Ext.tip.QuickTip',a);Ext.quickTipsActive=!0}},destroy:function(){Ext.destroy(this.tip);this.tip=undefined},ddDisable:function(){var b=this,a=b.tip;if(a&&!b.disabled){a.disable()}},ddEnable:function(){var b=this,a=b.tip;if(a&&!b.disabled){a.enable()}},enable:function(){var b=this,a=b.tip;if(a){a.enable()}b.disabled=!1},disable:function(){var b=this,a=b.tip;if(a){a.disable()}b.disabled=!0},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.picker.Color',Ext.Component,{alternateClassName:'Ext.ColorPalette',focusable:!0,componentCls:'x-color-picker',selectedCls:'x-color-picker-selected',itemCls:'x-color-picker-item',value:null,clickEvent:'click',allowReselect:!1,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:#{.}"> </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,!0)}},initRenderData:function(){var a=this;return Ext.apply(Ext.Component.prototype.initRenderData.call(this),{itemCls:a.itemCls,colors:a.colors})},onRender:function(){var a=this,b=a.clickEvent;Ext.Component.prototype.onRender.apply(this,arguments);a.mon(a.el,b,a.handleClick,a,{delegate:'a'});if(b!=='click'){a.mon(a.el,'click',Ext.emptyFn,a,{delegate:'a',stopEvent:!0})}},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,!0)}},handleClick:function(c){var a=this,b;c.stopEvent();if(!a.disabled){b=c.currentTarget.className.match(a.colorRe)[1];a.select(b.toUpperCase())}},select:function(b,g){var a=this,e=a.selectedCls,f=a.value,d,c;b=b.replace('#','');if(!a.rendered){a.value=b;return}if(b!==f||a.allowReselect){d=a.el;if(a.value){c=d.down('a.color-'+f,!0);Ext.fly(c).removeCls(e)}c=d.down('a.color-'+b,!0);Ext.fly(c).addCls(e);a.value=b;if(g!==!0){a.fireEvent('select',a,b)}}},clear:function(){var a=this,b=a.value,c;if(b&&a.rendered){c=a.el.down('a.color-'+b,!0);Ext.fly(c).removeCls(a.selectedCls)}a.value=null},getValue:function(){return this.value||null}},0,['colorpicker'],['component','box','colorpicker'],{'component':!0,'box':!0,'colorpicker':!0},['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(a){var b=this.owner,c;if(Ext.isGecko){c=b.textareaEl.dom;this.lastValue=c.value;c.value=''}Ext.layout.component.field.FieldContainer.prototype.beginLayout.apply(this,arguments);a.toolbarContext=a.context.getCmp(b.toolbar);a.inputCmpContext=a.context.getCmp(b.inputCmp);a.bodyCellContext=a.getEl('bodyEl');a.textAreaContext=a.getEl('textareaEl');a.iframeContext=a.getEl('iframeEl')},beginLayoutCycle:function(a){var b=this,e=a.widthModel,c=a.heightModel,h=b.owner,f=h.iframeEl,d=h.textareaEl,g=c.natural||c.shrinkWrap?b.naturalHeight:'';Ext.layout.component.field.FieldContainer.prototype.beginLayoutCycle.apply(this,arguments);if(e.shrinkWrap){f.setStyle('width','');d.setStyle('width','')}else {if(e.natural){a.bodyCellContext.setWidth(b.naturalWidth)}}f.setStyle('height',g);d.setStyle('height',g)},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.util.TaskManager',Ext.util.TaskRunner,{alternateClassName:['Ext.TaskManager'],singleton:!0},0,0,0,0,0,0,[Ext.util,'TaskManager',Ext,'TaskManager'],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':!0,'box':!0,'tbitem':!0,'tbseparator':!0},['widget.tbseparator'],0,[Ext.toolbar,'Separator',Ext.Toolbar,'Separator'],0);Ext.cmd.derive('Ext.dom.ButtonElement',Ext.dom.Element,{setSize:function(b,a,e){var d=this,c=d.component;Ext.dom.Element.prototype.setSize.call(this,b,a,e);c.btnWrap.setStyle('table-layout',!b||b==='auto'?'':'fixed');c.btnEl.setStyle('height',!a||a==='auto'?'':'auto');return d},setStyle:function(a,c){var f=this,e=f.component,d,b;Ext.dom.Element.prototype.setStyle.call(this,a,c);if(a){if(a==='width'||typeof a!=='string'&&'width' in a){d=c||a.width;e.btnWrap.setStyle('table-layout',!d||d==='auto'?'':'fixed')}if(a==='height'||typeof a!=='string'&&'height' in a){b=c||a.height;e.btnEl.setStyle('height',!b||b==='auto'?'':'auto')}}return f},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(a,b){Ext.dom.Element.prototype.setWidth.call(this,a,b);this.component.btnWrap.setStyle('table-layout',!a||a==='auto'?'':'fixed');return this}},0,0,0,0,0,0,[Ext.dom,'ButtonElement'],0);Ext.cmd.derive('Ext.button.Manager',Ext.Base,{singleton:!0,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=!0}},onDocumentKeyDown:function(a){var c=a.getKey(),b;if(c===a.SPACE||c===a.ENTER){b=a.getTarget(this.buttonSelector);if(b){Ext.getCmp(b.id).onClick(a)}}},onButtonMousedown:function(b,c){var a=this.pressedButton;if(a){a.onMouseUp(c)}this.pressedButton=b},onDocumentMouseUp:function(b){var a=this.pressedButton;if(a){a.onMouseUp(b);this.pressedButton=null}},toggleGroup:function(c,e){if(e){var b=this.groups[c.toggleGroup],d=b.length,a;for(a=0;a<d;a++){if(b[a]!==c){b[a].toggle(!1)}}}},register:function(a){var c=this,d=this.groups,b=d[a.toggleGroup];c.init();if(!a.toggleGroup){return}if(!b){b=d[a.toggleGroup]=[]}b.push(a);a.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 a=this.groups[d],b=0,c;if(a){for(c=a.length;b<c;b++){if(a[b].pressed===!0){return a[b]}}}return null}},0,0,0,0,0,0,[Ext.button,'Manager',Ext,'ButtonToggleManager'],0);Ext.cmd.derive('Ext.menu.Manager',Ext.Base,{singleton:!0,alternateClassName:'Ext.menu.MenuMgr',groups:{},visible:[],constructor:function(){var a=this;a.onShow=function(){delete a.onShow;Ext.on('mousedown',a.checkActiveMenus,a);return a.onShow.apply(a,arguments)}},checkActiveMenus:function(e){var a=this.visible,d=a.length,b,c;if(d){a=a.slice();for(b=0;b<d;++b){c=a[b];if(!c.owns(e)){c.hide()}}}},onShow:function(a){if(a.floating){Ext.Array.include(this.visible,a)}},onHide:function(a){if(a.floating){Ext.Array.remove(this.visible,a)}},hideAll:function(){var a=this.visible,d=a.length,c=!1,b;if(d){a=a.slice();for(b=0;b<d;b++){a[b].hide();c=!0}}return c},get:function(a,b){var c;if(typeof a==='string'){c=Ext.getCmp(a);if(c instanceof Ext.menu.Menu){a=c}}else {if(Ext.isArray(a)){b=Ext.apply({items:a},b);a=new Ext.menu.Menu(b)}else {if(!a.isComponent){b=Ext.apply({},a,b);a=Ext.ComponentManager.create(b,'menu')}}}return a},registerCheckable:function(c){var b=this.groups,a=c.group;if(a){if(!b[a]){b[a]=[]}b[a].push(c)}},unregisterCheckable:function(a){var c=this.groups,b=a.group;if(b){Ext.Array.remove(c[b],a)}},onCheckChange:function(d,h){var g=this.groups,e=d.group,c=0,a,f,b;if(e&&h){a=g[e];f=a.length;for(;c<f;c++){b=a[c];if(b!==d){b.setChecked(!1)}}}}},1,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:!0},isButton:!0,_syncFrameHeight:!0,liquidLayout:!0,hidden:!1,disabled:!1,pressed:!1,tabIndex:0,enableToggle:!1,menuAlign:'tl-bl?',showEmptyMenu:!1,clickEvent:'click',preventDefault:!0,handleMouseEvents:!0,tooltipType:'qtip',baseCls:'x-btn',hrefTarget:'_blank',destroyMenu:!0,focusable:!0,ariaRole:'button',defaultBindProperty:'text',childEls:['btnEl','btnWrap','btnInnerEl','btnIconEl'],publishes:{pressed:1},_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"> </tpl></span>',scale:'small',allowedScales:['small','medium','large'],arrowAlign:'right',arrowCls:'arrow',maskOnDisable:!1,shrinkWrap:3,frame:!0,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=!0;a.setMenu(a.menu,!1,!0)}if(a.url){a.href=a.url}a.configuredWithPreventDefault=a.hasOwnProperty('preventDefault');if(a.href&&!a.configuredWithPreventDefault){a.preventDefault=!1}if(Ext.isString(a.toggleGroup)&&a.toggleGroup!==''){a.enableToggle=!0}if(a.html&&!a.text){a.text=a.html;delete a.html}},getElConfig:function(){var b=this,a=Ext.Component.prototype.getElConfig.call(this),d=b.getHref(),c=b.hrefTarget;if(a.tag==='a'){if(!b.disabled){a.tabIndex=b.tabIndex}if(d){if(!b.disabled){a.href=d;if(c){a.target=c}}}}return a},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(b,e,f){var a=this,c=a.menu,d;if(c&&!f){if(e!==!1&&a.destroyMenu){c.destroy()}c.ownerCmp=null}if(b){d=b.isMenu;b=Ext.menu.Manager.get(b,{ownerCmp:a});b.setOwnerCmp(a,d);b.menuClickBuffer=250;a.mon(b,{scope:a,show:a.onMenuShow,hide:a.onMenuHide});if(!c&&a.getArrowVisible()){a.split=!0;if(a.rendered){a._addSplitCls();a.updateLayout()}}a.menu=b}else {if(a.rendered){a._removeSplitCls();a.updateLayout()}a.split=!1;a.menu=null}},onRender:function(){var a=this,d,c,b;Ext.Component.prototype.onRender.apply(this,arguments);c=a.el;if(a.tooltip){a.setTooltip(a.tooltip,!0)}if(a.handleMouseEvents){b={scope:a,mouseover:a.onMouseOver,mouseout:a.onMouseOut,mousedown:a.onMouseDown};if(a.split){b.mousemove=a.onMouseMove}}else {b={scope:a}}if(Ext.supports.Touch){b.touchstart=a.onTouchStart}if(a.menu){a.keyMap=new Ext.util.KeyMap({target:a.el,key:Ext.event.Event.prototype.DOWN,handler:a.onDownKey,scope:a})}if(a.repeat){a.mon(new Ext.util.ClickRepeater(c,Ext.isObject(a.repeat)?a.repeat:{}),'click',a.onRepeatClick,a)}else {if(b[a.clickEvent]){d=!0}else {b[a.clickEvent]=a.onClick}}a.mon(c,b);if(a.hasFrameTable()){a.mon(a.frameTable,'click',a.frameTableListener,a)}if(d){a.mon(c,a.clickEvent,a.onClick,a)}Ext.button.Manager.register(a)},onFocusLeave:function(a){Ext.Component.prototype.onFocusLeave.call(this,a);if(this.menu){this.menu.hide()}},getTemplateArgs:function(){var a=this,i=a._btnCls,j=a._baseIconCls,d=a.getIconAlign(),b=a.glyph,f=Ext._glyphFontFamily,e=a.text,h=a._hasIcon(),g=a._hasIconCls,c;if(typeof b==='string'){c=b.split('@');b=c[0];f=c[1]}return {innerCls:a._innerCls,splitCls:a.getArrowVisible()?a.getSplitCls():'',iconUrl:a.icon,iconCls:a.iconCls,glyph:b,glyphCls:b?a._glyphCls:'',glyphFontFamily:f,text:e||' ',closeText:a.closeText,textCls:e?a._textCls:'',noTextCls:e?'':a._noTextCls,hasIconCls:h?g:'',btnWrapCls:a._btnWrapCls,btnWrapStyle:a.width?'table-layout:fixed;':'',btnElStyle:a.height?'height:auto;':'',btnCls:i,baseIconCls:j,iconBeforeText:d==='left'||d==='top',iconAlignCls:h?g+'-'+d:'',textAlignCls:i+'-'+a.getTextAlign()}},renderIcon:function(a){return this.getTpl('iconTpl').apply(a)},setHref:function(c){var a=this,d=a.hrefTarget,b;a.href=c;if(!a.configuredWithPreventDefault){a.preventDefault=!c}if(a.rendered){b=a.el.dom;if(!c||a.disabled){b.removeAttribute('href');b.removeAttribute('hrefTarget')}else {b.href=a.getHref();if(d){b.target=d}}}},getHref:function(){var a=this,b=a.href;return b?Ext.urlAppend(b,Ext.Object.toQueryString(Ext.apply({},a.params,a.baseParams))):!1},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 a=this,d=a.btnIconEl,c=a.icon||'';a.icon=b;if(b!==c){if(d){d.setStyle('background-image',b?'url('+b+')':'');a._syncHasIconCls();if(a.didIconStateChange(c,b)){a.updateLayout()}}a.fireEvent('iconchange',a,c,b)}return a},setIconCls:function(b){b=b||'';var a=this,d=a.btnIconEl,c=a.iconCls||'';a.iconCls=b;if(c!==b){if(d){d.removeCls(c);d.addCls(b);a._syncHasIconCls();if(a.didIconStateChange(c,b)){a.updateLayout()}}a.fireEvent('iconchange',a,c,b)}return a},setGlyph:function(b){b=b||0;var a=this,c=a.btnIconEl,f=a.glyph,g=a._glyphCls,d,e;a.glyph=b;if(c){if(typeof b==='string'){e=b.split('@');b=e[0];d=e[1]||Ext._glyphFontFamily}if(!b){c.dom.innerHTML='';c.removeCls(g)}else {if(f!==b){c.dom.innerHTML='&#'+b+';';c.addCls(g)}}if(d){c.setStyle('font-family',d)}a._syncHasIconCls();if(a.didIconStateChange(f,b)){a.updateLayout()}}a.fireEvent('glyphchange',a,a.glyph,f);return a},setTooltip:function(b,c){var a=this;if(a.rendered){if(!c||!b){a.clearTip()}if(b){if(Ext.quickTipsActive&&Ext.isObject(b)){Ext.tip.QuickTipManager.register(Ext.apply({target:a.el.id},b));a.tooltip=b}else {a.el.dom.setAttribute(a.getTipAttr(),b)}}}else {a.tooltip=b}return a},updateIconAlign:function(e,f){var b=this,a,d,c;if(b.rendered){a=b.btnEl;d=b.btnIconEl;c=b._hasIconCls;if(f){a.removeCls(c+'-'+f)}a.addCls(c+'-'+e);if(e==='top'||e==='left'){a.insertFirst(d)}else {a.appendChild(d)}b.updateLayout()}},updateTextAlign:function(e,d){var a=this,c=a.btnEl,b=a._btnCls;if(a.rendered){c.removeCls(b+'-'+d);c.addCls(b+'-'+e)}},getTipAttr:function(){return this.tooltipType==='qtip'?'data-qtip':'title'},getRefItems:function(c){var b=this.menu,a;if(b){a=b.getRefItems(c);a.unshift(b)}return a||[]},clearTip:function(){var a=this,b=a.el;if(Ext.quickTipsActive&&Ext.isObject(a.tooltip)){Ext.tip.QuickTipManager.unregister(b)}else {b.dom.removeAttribute(a.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(a,b){this.handler=a;if(arguments.length>1){this.scope=b}return this},updateText:function(b,c){b=b==null?'':String(b);c=c||'';var a=this,e=a.btnInnerEl,d=a.btnEl;if(a.rendered){e.setHtml(b||' ');d[b?'addCls':'removeCls'](a._textCls);d[b?'removeCls':'addCls'](a._noTextCls);a.updateLayout()}a.fireEvent('textchange',a,c,b)},didIconStateChange:function(c,b){var a=Ext.isEmpty(b);return Ext.isEmpty(c)?!a:a},setPressed:function(a){return this.toggle(a!==!1)},toggle:function(b,c){var a=this;b=b===undefined?!a.pressed:!!b;if(b!==a.pressed){a[b?'addCls':'removeCls'](a._pressedCls);a.pressed=b;if(!c){a.fireEvent('toggle',a,b);Ext.callback(a.toggleHandler,a.scope,[a,b],0,a);if(a.reference&&a.publishState){a.publishState('pressed',b)}}}return a},maybeShowMenu:function(a){if(this.menu){this.showMenu(a)}},showMenu:function(c){var a=this,b=a.menu,d=!c||c.pointerType;if(b&&a.rendered){if(a.tooltip&&Ext.quickTipsActive&&a.getTipAttr()!=='title'){Ext.tip.QuickTipManager.getQuickTip().cancelShow(a.el)}if(b.isVisible()){if(d){b.hide()}else {b.focus()}}else {if(!c||a.showEmptyMenu||b.items.getCount()>0){b.autoFocus=!d;b.showBy(a.el,a.menuAlign)}}}return a},hideMenu:function(){if(this.hasVisibleMenu()){this.menu.hide()}return this},hasVisibleMenu:function(){var a=this.menu;return a&&a.rendered&&a.isVisible()},onRepeatClick:function(b,a){this.onClick(a)},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)!==!1&&!a.isDestroyed){Ext.callback(a.handler,a.scope,[a,b],0,a)}},doToggle:function(){var a=this;if(a.enableToggle&&(a.allowDepress!==!1||!a.pressed)){a.toggle()}},onMouseOver:function(b){var a=this;if(!a.disabled&&!b.within(a.el,!0,!0)){a.onMouseEnter(b)}},onMouseOut:function(b){var a=this;if(!b.within(a.el,!0,!0)){if(a.overMenuTrigger){a.onMenuTriggerOut(b)}a.onMouseLeave(b)}},onMouseMove:function(b){var a=this,c=a.overMenuTrigger;if(a.split){if(a.isWithinTrigger(b)){if(!c){a.onMenuTriggerOver(b)}}else {if(c){a.onMenuTriggerOut(b)}}}},isWithinTrigger:function(d){var a=this,e=a.el,c,b;c=a.arrowAlign==='right'?d.getX()-a.getX():d.getY()-e.getY();b=a.getTriggerRegion();return c>b.begin&&c<b.end},getTriggerRegion:function(){var a=this,b=a._triggerRegion,d=a.arrowAlign==='right',e=d?'getRight':'getBottom',c=d?a.getWidth():a.getHeight();b.begin=c-(a.el[e]()-a.btnEl[e]());b.end=c;return b},onMouseEnter:function(a){this.fireEvent('mouseover',this,a)},onMouseLeave:function(a){this.fireEvent('mouseout',this,a)},onMenuTriggerOver:function(c){var a=this,b=a.arrowTooltip;a.overMenuTrigger=!0;if(a.split&&b){a.btnWrap.dom.setAttribute(a.getTipAttr(),b)}a.fireEvent('menutriggerover',a,a.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(e){var a=this,d=a.href,c=a.hrefTarget,b;Ext.Component.prototype.enable.apply(this,arguments);a.removeCls(a._disabledCls);if(a.rendered){b=a.el.dom;b.setAttribute('tabindex',a.tabIndex);if(d){b.href=d}if(c){b.target=c}}return a},disable:function(c){var a=this,b;Ext.Component.prototype.disable.apply(this,arguments);a.addCls(a._disabledCls);a.removeCls(a.overCls);if(a.rendered){b=a.el.dom;b.removeAttribute('tabindex');if(a.href){b.removeAttribute('href')}if(a.hrefTarget){b.removeAttribute('target')}}return a},setScale:function(b){var a=this,c=a.ui.replace('-'+a.scale,'');if(!Ext.Array.contains(a.allowedScales,b)){throw '#setScale: scale must be an allowed scale ('+a.allowedScales.join(', ')+')'}a.scale=b;a.setUI(c)},setUI:function(a){var b=this;if(b.scale&&!a.match(b.scale)){a=a+'-'+b.scale}Ext.Component.prototype.setUI.call(this,a)},onMouseDown:function(b){var a=this;if(Ext.isIE||b.pointerType==='touch'){Ext.defer(function(){if(!b.defaultPrevented){var c=a.getFocusEl();if(c){c.focus()}}},1)}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.addCls(a._menuActiveCls);a.fireEvent('menushow',a,a.menu)},onMenuHide:function(b){var a=this;a.removeCls(a._menuActiveCls);a.fireEvent('menuhide',a,a.menu)},onDownKey:function(c,b){var a=this;if(a.menu&&!a.disabled){a.showMenu(b);b.stopEvent();return !1}},updateArrowVisible:function(b){var a=this;if(a.rendered){if(b){if(a.menu||a.isSplitButton){a.split=!0;a._addSplitCls()}}else {a._removeSplitCls();a.split=!1}}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 a=this,c=a.btnEl,b=a._hasIconCls;if(c){c[a._hasIcon()?'addCls':'removeCls']([b,b+'-'+a.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':!0,'box':!0,'button':!0},['widget.button'],[[Ext.mixin.Queryable.prototype.mixinId||Ext.mixin.Queryable.$className,Ext.mixin.Queryable]],[Ext.button,'Button',Ext,'Button'],0);Ext.cmd.derive('Ext.layout.container.boxOverflow.Menu',Ext.layout.container.boxOverflow.None,{alternateClassName:'Ext.layout.boxOverflow.Menu',noItemsMenuText:'<div class="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.call(this,a);b.menuItems=[]},beginLayout:function(a){Ext.layout.container.boxOverflow.None.prototype.beginLayout.call(this,a);this.clearOverflow(a)},beginLayoutCycle:function(a,b){Ext.layout.container.boxOverflow.None.prototype.beginLayoutCycle.call(this,a,b);if(!b){this.clearOverflow(a);this.layout.cacheChildItems(a)}},onRemove:function(a){Ext.Array.remove(this.menuItems,a)},clearItem:function(a){var b=a.menu;if(a.isButton&&b){a.setMenu(b,!1)}},getSuffixConfig:function(){var a=this,c=a.layout,b=c.owner,d=b.id;a.menu=new Ext.menu.Menu({listeners:{scope:a,beforeshow:a.beforeMenuShow}});a.menuTrigger=new Ext.button.Button({id:d+'-menu-trigger',cls:a.menuCls+'-after x-toolbar-item',plain:b.usePlainButtons,ownerCt:b,ownerLayout:c,iconCls:'x-'+a.getOwnerType(b)+'-more-icon',ui:b.defaultButtonUI||'default',menu:a.menu,showEmptyMenu:!0,getSplitCls:function(){return ''}});return a.menuTrigger.getRenderTree()},getOverflowCls:function(a){return this.menuCls+'-body-'+a},handleOverflow:function(b){var a=this,c=a.layout;a.showTrigger(b);if(c.direction!=='vertical'){a.menuTrigger.setLocalY((b.state.boxPlan.maxSize-a.menuTrigger[c.names.getHeight]())/2)}return {reservedSpace:a.triggerTotalWidth}},captureChildElements:function(){var b=this,a=b.menuTrigger,c=b.layout.names;if(a.rendering){a.finishRender();b.triggerTotalWidth=a[c.getWidth]()+a.el.getMargin(c.parallelMargins)}},clearOverflow:function(h){var b=this,d=b.menuItems,g=d.length,e=b.layout.owner,f=e._asLayoutRoot,a,c;e.suspendLayouts();b.captureChildElements();b.hideTrigger();e.resumeLayouts();for(c=0;c<g;c++){a=d[c];a.suspendLayouts();a.show();b.clearItem(a);a.resumeLayouts(f)}d.length=0},showTrigger:function(i){var b=this,m=b.layout,o=m.owner,n=m.names,p=n.x,l=n.width,q=i.state.boxPlan,k=q.targetSize[l],j=i.childItems,e=b.menuTrigger,f=b.menuItems,d,h,a,g,c;e.suspendLayouts();e.show();e.resumeLayouts(b._asLayoutRoot);k-=b.triggerTotalWidth;o.suspendLayouts();for(a=0,c=f.length;a<c;++a){b.clearItem(f[a])}f.length=0;for(a=0,c=j.length;a<c;a++){d=j[a];g=d.props;if(g[p]+g[l]>k){h=d.target;b.menuItems.push(h);h.hide()}}o.resumeLayouts()},hideTrigger:function(){var a=this.menuTrigger;if(a){a.hide()}},beforeMenuShow:function(a){var e=this,g=e.menuItems,d=0,h=g.length,b,c,f=function(b,c){return b.isXType('buttongroup')&&!(c instanceof Ext.toolbar.Separator)};a.suspendLayouts();a.removeAll(!1);for(;d<h;d++){b=g[d];if(!d&&b instanceof Ext.toolbar.Separator){continue}if(c&&(f(b,c)||f(c,b))){a.add('-')}e.addComponentToMenu(a,b);c=b}if(a.items.length<1){a.add(e.noItemsMenuText)}a.resumeLayouts()},createMenuConfig:function(a,d){var b=Ext.apply({},a.initialConfig),c=a.toggleGroup;Ext.copyTo(b,a,['iconCls','icon','itemId','disabled','handler','scope','menu','tabIndex']);Ext.applyIf(b,{text:a.overflowText||a.text,hideOnClick:d,destroyMenu:!1,listeners:null});if(a.isFormField){b.value=a.getValue();b.listeners={change:function(e,b,c){a.setValue(b)}}}else {if(c||a.enableToggle){Ext.apply(b,{hideOnClick:!1,group:c,checked:a.pressed,handler:function(c,b){a.onClick(b)}})}}if(a.isButton&&!a.changeListenersAdded){a.on({textchange:this.onButtonAttrChange,iconchange:this.onButtonAttrChange,toggle:this.onButtonToggle});a.changeListenersAdded=!0}delete b.margin;delete b.ownerCt;delete b.xtype;delete b.id;delete b.itemId;return b},onButtonAttrChange:function(b){var a=b.overflowClone;a.suspendLayouts();a.setText(b.text);a.setIcon(b.icon);a.setIconCls(b.iconCls);a.resumeLayouts(!0)},onButtonToggle:function(b,a){if(b.overflowClone.checked!==a){b.overflowClone.setChecked(a)}},addComponentToMenu:function(b,a){var c=this,d,e,f;if(a instanceof Ext.toolbar.Fill){return}else {if(a instanceof Ext.toolbar.Separator){b.add('-')}else {if(a.overflowClone){b.add(a.overflowClone)}else {if(a.isComponent){if(a.isXType('splitbutton')){a.overflowClone=b.add(c.createMenuConfig(a,!0))}else {if(a.isXType('button')){a.overflowClone=b.add(c.createMenuConfig(a,!a.menu))}else {if(a.isXType('buttongroup')){e=a.items.items;f=e.length;for(d=0;d<f;d++){c.addComponentToMenu(b,e[d])}}else {a.overflowClone=b.add(Ext.create(Ext.getClassName(a),c.createMenuConfig(a)))}}}}}}}},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:!0,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:!0}],stretchInputElFixed:!0,subTplInsertions:['beforeTextAreaTpl','afterTextAreaTpl','beforeIFrameTpl','afterIFrameTpl','iframeAttrTpl','inputAttrTpl'],enableFormat:!0,enableFontSize:!0,enableColors:!0,enableAlignments:!0,enableLists:!0,enableSourceEdit:!0,enableLinks:!0,enableFont:!0,createLinkText:'Please enter the URL for the link:',defaultLinkValue:'http://',fontFamilies:['Arial','Courier New','Tahoma','Times New Roman','Verdana'],defaultValue:Ext.isOpera?' ':'​',extraFieldBodyCls:'x-html-editor-wrap',defaultButtonUI:'default-toolbar',initialized:!1,activated:!1,sourceEditMode:!1,iframePad:3,hideMode:'offsets',maskOnDisable:!0,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'};if(a.value==null){a.value=''}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 a=this,b=[],e,f=Ext.quickTipsActive&&Ext.tip.QuickTipManager.isEnabled(),c='x-',g,d;function btn(b,g,e){return {itemId:b,cls:c+'btn-icon',iconCls:c+'edit-'+b,enableToggle:g!==!1,scope:a,handler:e||a.relayBtnCmd,clickEvent:'mousedown',tooltip:f?a.buttonTips[b]||d:d,overflowText:a.buttonTips[b].title||d,tabIndex:-1}}if(a.enableFont&&!Ext.isSafari2){g=Ext.widget('component',{itemId:'fontSelect',renderTpl:['<select id="{id}-selectEl" data-ref="selectEl" class="'+c+'font-select">','</select>'],childEls:['selectEl'],afterRender:function(){a.fontSelect=this.selectEl;Ext.Component.prototype.afterRender.apply(this,arguments)},onDisable:function(){var a=this.selectEl;if(a){a.dom.disabled=!0}Ext.Component.prototype.onDisable.apply(this,arguments)},onEnable:function(){var a=this.selectEl;if(a){a.dom.disabled=!1}Ext.Component.prototype.onEnable.apply(this,arguments)},listeners:{change:function(){a.win.focus();a.relayCmd('fontName',a.fontSelect.dom.value);a.deferFocus()},element:'selectEl'}});b.push(g,'-')}if(a.enableFormat){b.push(btn('bold'),btn('italic'),btn('underline'))}if(a.enableFontSize){b.push('-',btn('increasefontsize',!1,a.adjustFont),btn('decreasefontsize',!1,a.adjustFont))}if(a.enableColors){b.push('-',{itemId:'forecolor',cls:c+'btn-icon',iconCls:c+'edit-forecolor',overflowText:a.buttonTips.forecolor.title,tooltip:f?a.buttonTips.forecolor||d:d,tabIndex:-1,menu:Ext.widget('menu',{plain:!0,items:[{xtype:'colorpicker',allowReselect:!0,focus:Ext.emptyFn,value:'000000',plain:!0,clickEvent:'mousedown',handler:function(c,b){a.relayCmd('forecolor',Ext.isWebKit||Ext.isIE?'#'+b:b);this.up('menu').hide()}}]})},{itemId:'backcolor',cls:c+'btn-icon',iconCls:c+'edit-backcolor',overflowText:a.buttonTips.backcolor.title,tooltip:f?a.buttonTips.backcolor||d:d,tabIndex:-1,menu:Ext.widget('menu',{plain:!0,items:[{xtype:'colorpicker',focus:Ext.emptyFn,value:'FFFFFF',plain:!0,allowReselect:!0,clickEvent:'mousedown',handler:function(c,b){if(Ext.isGecko){a.execCmd('useCSS',!1);a.execCmd('hilitecolor','#'+b);a.execCmd('useCSS',!0);a.deferFocus()}else {a.relayCmd(Ext.isOpera?'hilitecolor':'backcolor',Ext.isWebKit||Ext.isIE||Ext.isOpera?'#'+b:b)}this.up('menu').hide()}}]})})}if(a.enableAlignments){b.push('-',btn('justifyleft'),btn('justifycenter'),btn('justifyright'))}if(!Ext.isSafari2){if(a.enableLinks){b.push('-',btn('createlink',!1,a.createLink))}if(a.enableLists){b.push('-',btn('insertorderedlist'),btn('insertunorderedlist'))}if(a.enableSourceEdit){b.push('-',btn('sourceedit',!0,function(){a.toggleSourceEdit(!a.sourceEditMode)}))}}for(e=0;e<b.length;e++){if(b[e].itemId!=='sourceedit'){b[e].disabled=!0}}return {xtype:'toolbar',defaultButtonUI:a.defaultButtonUI,cls:'x-html-editor-tb',enableOverflow:!0,items:b,listeners:{click:function(a){a.preventDefault()},element:'el'}}},getMaskTarget:function(){return Ext.isGecko?this.inputCmp.el:this.bodyEl},setReadOnly:function(b){var a=this,d=a.textareaEl,e=a.iframeEl,c;a.readOnly=b;if(d){d.dom.readOnly=b}if(a.initialized){c=a.getEditorBody();if(Ext.isIE){e.setDisplayed(!1);c.contentEditable=!b;e.setDisplayed(!0)}else {a.setDesignMode(!b)}if(c){c.style.cursor=b?'default':'text'}a.disableItems(b)}},getDocMarkup:function(){var a=this,b=a.iframeEl.getHeight()-a.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:'+(a.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>',a.iframePad,b,a.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 b=this,h=0,c,a,f,e,d,i,g;if(!b.defaultFont){a=b.textareaEl.getStyle('font-family');a=Ext.String.capitalize(a.split(',')[0]);c=Ext.Array.clone(b.fontFamilies);Ext.Array.include(c,a);c.sort();b.defaultFont=a;f=b.down('#fontSelect').selectEl.dom;for(d=0,i=c.length;d<i;++d){a=c[d];g=a.toLowerCase();e=new Option(a,g);if(a===b.defaultFont){h=d}e.style.fontFamily=g;if(Ext.isIE){f.add(e)}else {f.options.add(e)}}f.options[h].selected=!0}},isEqual:function(a,b){return this.isEqualAsString(a,b)},afterRender:function(){var a=this,b=a.inputCmp;Ext.form.FieldContainer.prototype.afterRender.apply(this,arguments);a.iframeEl=b.iframeEl;a.textareaEl=b.textareaEl;a.inputEl=a.iframeEl;if(a.enableFont){a.initDefaultFont()}a.monitorTask=Ext.TaskManager.start({run:a.checkDesignMode,scope:a,interval:100})},initFrameDoc:function(){var a=this,b,c;Ext.TaskManager.stop(a.monitorTask);b=a.getDoc();a.win=a.getWin();b.open();b.write(a.getDocMarkup());b.close();c={run:function(){var b=a.getDoc();if(b.body||b.readyState==='complete'){Ext.TaskManager.stop(c);a.setDesignMode(!0);Ext.defer(a.initEditor,10,a)}},interval:10,duration:10000,scope:a};Ext.TaskManager.start(c)},checkDesignMode:function(){var a=this,b=a.getDoc();if(b&&(!b.editorInitialized||a.getDesignMode()!=='on')){a.initFrameDoc()}},setDesignMode:function(a){var c=this,b=c.getDoc();if(b){if(c.readOnly){a=!1}b.designMode=/on|true/i.test(String(a).toLowerCase())?'on':'off'}},getDesignMode:function(){var a=this.getDoc();return !a?'':String(a.designMode).toLowerCase()},disableItems:function(d){var c=this.getToolbar().items.items,a,e=c.length,b;for(a=0;a<e;a++){b=c[a];if(b.getItemId()!=='sourceedit'){b.setDisabled(d)}}},toggleSourceEdit:function(b){var a=this,e=a.iframeEl,c=a.textareaEl,d='x-hidden',f=a.getToolbar().getComponent('sourceedit');if(!Ext.isBoolean(b)){b=!a.sourceEditMode}a.sourceEditMode=b;if(f.pressed!==b){f.toggle(b)}if(b){a.disableItems(!0);a.syncValue();e.addCls(d);c.removeCls(d);c.dom.removeAttribute('tabindex');c.focus();a.inputEl=c}else {if(a.initialized){a.disableItems(a.readOnly)}a.pushValue();e.removeCls(d);c.addCls(d);c.dom.setAttribute('tabindex',-1);a.deferFocus();a.inputEl=e}a.fireEvent('editmodechange',a,b);a.updateLayout()},createLink:function(){var a=prompt(this.createLinkText,this.defaultLinkValue);if(a&&a!=='http://'){this.relayCmd('createlink',a)}},clearInvalid:Ext.emptyFn,setValue:function(b){var a=this,c=a.textareaEl;if(b===null||b===undefined){b=''}if(a.value!==b){if(c){c.dom.value=b}a.pushValue();if(!a.rendered&&a.inputCmp){a.inputCmp.data.value=b}a.mixins.field.setValue.call(a,b)}return a},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 b=this,e,g,a,f,d,c;if(b.initialized){e=b.getEditorBody();a=e.innerHTML;c=b.textareaEl.dom;if(Ext.isWebKit){f=e.getAttribute('style');d=f.match(b.textAlignRE);if(d&&d[1]){a='<div style="'+d[0]+'">'+a+'</div>'}}a=b.cleanHtml(a);if(b.fireEvent('beforesync',b,a)!==!1){if(Ext.isGecko&&c.value===''&&a==='<br>'){a=''}if(c.value!==a){c.value=a;g=!0}b.fireEvent('sync',b,a);if(g){b.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 a=this,b;if(a.initialized){b=a.textareaEl.dom.value||'';if(!a.activated&&b.length<1){b=a.defaultValue}if(a.fireEvent('beforepush',a,b)!==!1){a.getEditorBody().innerHTML=b;if(Ext.isGecko){a.setDesignMode(!1);a.setDesignMode(!0)}a.fireEvent('push',a,b)}}},focus:function(e,c){var a=this,d,b;if(c){if(!a.focusTask){a.focusTask=new Ext.util.DelayedTask(a.focus)}a.focusTask.delay(Ext.isNumber(c)?c:10,null,a,[e,!1])}else {if(e){if(a.textareaEl&&a.textareaEl.dom){d=a.textareaEl.dom.value}if(d&&d.length){a.execCmd('selectall',!0)}}b=a.getFocusEl();if(b&&b.focus){b.focus()}}return a},initEditor:function(){var a=this,e,f,d,c,b;if(a.destroying||a.isDestroyed){return}e=a.getEditorBody();if(!e){setTimeout(function(){a.initEditor()},10);return}f=a.textareaEl.getStyle(['font-size','font-family','background-image','background-repeat','background-color','color']);f['background-attachment']='fixed';e.bgProperties='fixed';Ext.DomHelper.applyStyles(e,f);d=a.getDoc();c=Ext.get(d);if(c){try{c.clearListeners()}catch(g){}b=a.onEditorEvent.bind(a);c.on({mousedown:b,dblclick:b,click:b,keyup:b,delegated:!1,buffer:100});b=a.onRelayedEvent;c.on({mousedown:b,mousemove:b,mouseup:b,click:b,dblclick:b,delegated:!1,scope:a});if(Ext.isGecko){c.on('keypress',a.applyCommand,a)}if(a.fixKeys){c.on('keydown',a.fixKeys,a,{delegated:!1})}if(a.fixKeysAfter){c.on('keyup',a.fixKeysAfter,a,{delegated:!1})}if(Ext.isIE9){Ext.get(d.documentElement).on('focus',a.focus,a)}if(Ext.isIE8){c.on('focusout',function(){a.savedSelection=d.selection.type!=='None'?d.selection.createRange():null},a);c.on('focusin',function(){if(a.savedSelection){a.savedSelection.select()}},a)}Ext.getWin().on('beforeunload',a.beforeDestroy,a);d.editorInitialized=!0;a.initialized=!0;a.pushValue();a.setReadOnly(a.readOnly);a.fireEvent('initialize',a)}},beforeDestroy:function(){var a=this,d=a.monitorTask,b,c;if(d){Ext.TaskManager.stop(d)}if(a.rendered){Ext.getWin().un(a.beforeDestroy,a);b=a.getDoc();if(b){Ext.get(b).destroy();if(b.hasOwnProperty){for(c in b){try{if(b.hasOwnProperty(c)){delete b[c]}}catch(e){}}}}delete a.iframeEl;delete a.textareaEl;delete a.toolbar;delete a.inputCmp}Ext.form.FieldContainer.prototype.beforeDestroy.call(this)},onRelayedEvent:function(a){var b=this.iframeEl,c=Ext.fly(b).getTrueXY(),e=a.getXY(),d=a.getXY();a.xy=[c[0]+d[0],c[1]+d[1]];a.injectEvent(b);a.xy=e},onFirstFocus:function(){var a=this,b,c;a.activated=!0;a.disableItems(a.readOnly);if(Ext.isGecko){a.win.focus();b=a.win.getSelection();if(b.focusNode&&!a.getValue().length){c=b.getRangeAt(0);c.selectNodeContents(a.getEditorBody());c.collapse(!0);a.deferFocus()}try{a.execCmd('useCSS',!0);a.execCmd('styleWithCSS',!1)}catch(d){}}a.fireEvent('activate',a)},adjustFont:function(e){var b=e.getItemId()==='increasefontsize'?1:-1,a=this.getDoc().queryCommandValue('FontSize')||'2',d=Ext.isString(a)&&a.indexOf('px')!==-1,c;a=parseInt(a,10);if(d){if(a<=10){a=1+b}else {if(a<=13){a=2+b}else {if(a<=16){a=3+b}else {if(a<=18){a=4+b}else {if(a<=24){a=5+b}else {a=6+b}}}}}a=Ext.Number.constrain(a,1,6)}else {c=Ext.isSafari;if(c){b*=2}a=Math.max(1,a+b)+(c?'px':0)}this.relayCmd('FontSize',a)},onEditorEvent:function(){this.updateToolbar()},updateToolbar:function(){var a=this,c,i,h,g,b,d,f,e;if(a.readOnly){return}if(!a.activated){a.onFirstFocus();return}h=a.getToolbar().items.map;g=a.getDoc();if(a.enableFont&&!Ext.isSafari2){d=g.queryCommandValue('fontName');b=(d?d.split(',')[0].replace(a.reStripQuotes,''):a.defaultFont).toLowerCase();f=a.fontSelect.dom;if(b!==f.value||b!==d){f.value=b}}function updateButtons(){var a;for(c=0,i=arguments.length,b;c<i;c++){b=arguments[c];try{a=g.queryCommandState(b)}catch(j){a=!1}h[b].toggle(a)}}if(a.enableFormat){updateButtons('bold','italic','underline')}if(a.enableAlignments){updateButtons('justifyleft','justifycenter','justifyright')}if(!Ext.isSafari2&&a.enableLists){updateButtons('insertorderedlist','insertunorderedlist')}e=a.toolbar.query('menu');for(c=0;c<e.length;c++){e[c].hide()}a.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,a){var b=this,d=b.getDoc();d.execCommand(c,!1,a===undefined?null:a);b.syncValue()},applyCommand:function(d){if(d.ctrlKey){var c=this,b=d.getCharCode(),a;if(b>0){b=String.fromCharCode(b);switch(b){case 'b':a='bold';break;case 'i':a='italic';break;case 'u':a='underline';break;}if(a){c.win.focus();c.execCmd(a);c.deferFocus();d.preventDefault()}}}},insertAtCursor:function(j){var e=this,g=e.getWin(),d=e.getDoc(),b,a,h,c,i,f,k;if(e.activated){g.focus();if(g.getSelection){b=g.getSelection();if(b.getRangeAt&&b.rangeCount){a=b.getRangeAt(0);a.deleteContents();h=d.createElement('div');h.innerHTML=j;c=d.createDocumentFragment();while(i=h.firstChild){f=c.appendChild(i)}k=c.firstChild;a.insertNode(c);if(f){a=a.cloneRange();a.setStartAfter(f);a.collapse(!0);b.removeAllRanges();b.addRange(a)}}}else {if(d.selection&&b.type!=='Control'){b=d.selection;a=b.createRange();a.collapse(!0);b.createRange().pasteHTML(j)}}e.deferFocus()}},fixKeys:function(){var a;if(Ext.isIE){return function(c){var f=this,h=c.getKey(),d=f.getDoc(),g=f.readOnly,b,e;if(h===c.TAB){c.stopEvent();if(!g){b=d.selection.createRange();if(b){if(b.collapse){b.collapse(!0);b.pasteHTML('    ')}f.deferFocus()}}}else {if(h===c.ENTER){if(!g){if(Ext.isIE10m){b=d.selection.createRange();if(b){e=b.parentElement();if(!e||e.tagName.toLowerCase()!=='li'){c.stopEvent();b.pasteHTML('<br />');b.collapse(!1);b.select()}}}else {b=d.getSelection().getRangeAt(0);if(b&&b.commonAncestorContainer.parentNode.tagName.toLowerCase()!=='li'){c.stopEvent();a=d.createElement('div');b.insertNode(a)}}}}}}}if(Ext.isOpera){return function(b){var a=this,d=b.getKey(),c=a.readOnly;if(d===b.TAB){b.stopEvent();if(!c){a.win.focus();a.execCmd('InsertHTML','    ');a.deferFocus()}}}}return null}(),fixKeysAfter:function(){if(Ext.isIE){return function(b){var d=this,e=b.getKey(),c=d.getDoc(),f=d.readOnly,a;if(!f&&(e===b.BACKSPACE||e===b.DELETE)){a=c.body.innerHTML;if(a==='<p> </p>'||a==='<P> </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(!1,!0)},getFocusEl:function(){return this.sourceEditMode?this.textareaEl:this.iframeEl}}},0,['htmleditor'],['component','box','container','fieldcontainer','htmleditor'],{'component':!0,'box':!0,'container':!0,'fieldcontainer':!0,'htmleditor':!0},['widget.htmleditor'],[['field',Ext.form.field.Field]],[Ext.form.field,'HtmlEditor',Ext.form,'HtmlEditor'],0);Ext.define('ExtThemeNeptune.form.field.HtmlEditor',{override:'Ext.form.field.HtmlEditor',defaultButtonUI:'plain-toolbar'});Ext.onReady(function(){if(Ext.data&&Ext.data.Types){Ext.data.Types.stripRe=/[\$,%]/g}if(Ext.Date){Ext.Date.monthNames=['January','February','March','April','May','June','July','August','September','October','November','December'];Ext.Date.getShortMonthName=function(a){return Ext.Date.monthNames[a].substring(0,3)};Ext.Date.monthNumbers={Jan:0,Feb:1,Mar:2,Apr:3,May:4,Jun:5,Jul:6,Aug:7,Sep:8,Oct:9,Nov:10,Dec:11};Ext.Date.getMonthNumber=function(a){return Ext.Date.monthNumbers[a.substring(0,1).toUpperCase()+a.substring(1,3).toLowerCase()]};Ext.Date.dayNames=['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'];Ext.Date.getShortDayName=function(a){return Ext.Date.dayNames[a].substring(0,3)};Ext.Date.parseCodes.S.s='(?:st|nd|rd|th)'}if(Ext.util&&Ext.util.Format){Ext.apply(Ext.util.Format,{thousandSeparator:',',decimalSeparator:'.',currencySign:'$',dateFormat:'m/d/Y'})}});Ext.define('Ext.locale.en.data.validator.Bound',{override:'Ext.data.validator.Bound',emptyMessage:'Must be present'});Ext.define('Ext.locale.en.data.validator.Email',{override:'Ext.data.validator.Email',message:'Is not a valid email address'});Ext.define('Ext.locale.en.data.validator.Exclusion',{override:'Ext.data.validator.Exclusion',message:'Is a value that has been excluded'});Ext.define('Ext.locale.en.data.validator.Format',{override:'Ext.data.validator.Format',message:'Is in the wrong format'});Ext.define('Ext.locale.en.data.validator.Inclusion',{override:'Ext.data.validator.Inclusion',message:'Is not in the list of acceptable values'});Ext.define('Ext.locale.en.data.validator.Length',{override:'Ext.data.validator.Length',minOnlyMessage:'Length must be at least {0}',maxOnlyMessage:'Length must be no more than {0}',bothMessage:'Length must be between {0} and {1}'});Ext.define('Ext.locale.en.data.validator.Presence',{override:'Ext.data.validator.Presence',message:'Must be present'});Ext.define('Ext.locale.en.data.validator.Range',{override:'Ext.data.validator.Range',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'});Ext.define('Ext.locale.en.view.View',{override:'Ext.view.View',emptyText:''});Ext.define('Ext.locale.en.grid.plugin.DragDrop',{override:'Ext.grid.plugin.DragDrop',dragText:'{0} selected row{1}'});Ext.define('Ext.locale.en.view.AbstractView',{override:'Ext.view.AbstractView',loadingText:'Loading...'});Ext.define('Ext.locale.en.picker.Date',{override:'Ext.picker.Date',todayText:'Today',minText:'This date is before the minimum date',maxText:'This date is after the maximum date',disabledDaysText:'',disabledDatesText:'',nextText:'Next Month (Control+Right)',prevText:'Previous Month (Control+Left)',monthYearText:'Choose a month (Control+Up/Down to move years)',todayTip:'{0} (Spacebar)',format:'m/d/y',startDay:0});Ext.define('Ext.locale.en.picker.Month',{override:'Ext.picker.Month',okText:' OK ',cancelText:'Cancel'});Ext.define('Ext.locale.en.toolbar.Paging',{override:'Ext.PagingToolbar',beforePageText:'Page',afterPageText:'of {0}',firstText:'First Page',prevText:'Previous Page',nextText:'Next Page',lastText:'Last Page',refreshText:'Refresh',displayMsg:'Displaying {0} - {1} of {2}',emptyMsg:'No data to display'});Ext.define('Ext.locale.en.form.Basic',{override:'Ext.form.Basic',waitTitle:'Please Wait...'});Ext.define('Ext.locale.en.form.field.Base',{override:'Ext.form.field.Base',invalidText:'The value in this field is invalid'});Ext.define('Ext.locale.en.form.field.Text',{override:'Ext.form.field.Text',minLengthText:'The minimum length for this field is {0}',maxLengthText:'The maximum length for this field is {0}',blankText:'This field is required',regexText:'',emptyText:null});Ext.define('Ext.locale.en.form.field.Number',{override:'Ext.form.field.Number',decimalPrecision:2,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'});Ext.define('Ext.locale.en.form.field.Date',{override:'Ext.form.field.Date',disabledDaysText:'Disabled',disabledDatesText:'Disabled',minText:'The date in this field must be after {0}',maxText:'The date in this field must be before {0}',invalidText:'{0} is not a valid date - it must be in the format {1}',format:'m/d/y',altFormats:'m/d/Y|m-d-y|m-d-Y|m/d|m-d|md|mdy|mdY|d|Y-m-d'});Ext.define('Ext.locale.en.form.field.ComboBox',{override:'Ext.form.field.ComboBox',valueNotFoundText:undefined},function(){Ext.apply(Ext.form.field.ComboBox.prototype.defaultListConfig,{loadingText:'Loading...'})});Ext.define('Ext.locale.en.form.field.VTypes',{override:'Ext.form.field.VTypes',emailText:'This field should be an e-mail address in the format "[email protected]"',urlText:'This field should be a URL in the format "http://www.example.com"',alphaText:'This field should only contain letters and _',alphanumText:'This field should only contain letters, numbers and _'});Ext.define('Ext.locale.en.form.field.HtmlEditor',{override:'Ext.form.field.HtmlEditor',createLinkText:'Please enter the URL for the link:'},function(){Ext.apply(Ext.form.field.HtmlEditor.prototype,{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'}}})});Ext.define('Ext.locale.en.grid.header.Container',{override:'Ext.grid.header.Container',sortAscText:'Sort Ascending',sortDescText:'Sort Descending',columnsText:'Columns'});Ext.define('Ext.locale.en.grid.GroupingFeature',{override:'Ext.grid.feature.Grouping',emptyGroupText:'(None)',groupByText:'Group by this field',showGroupsText:'Show in Groups'});Ext.define('Ext.locale.en.grid.PropertyColumnModel',{override:'Ext.grid.PropertyColumnModel',nameText:'Name',valueText:'Value',dateFormat:'m/j/Y',trueText:'true',falseText:'false'});Ext.define('Ext.locale.en.grid.BooleanColumn',{override:'Ext.grid.BooleanColumn',trueText:'true',falseText:'false',undefinedText:' '});Ext.define('Ext.locale.en.grid.NumberColumn',{override:'Ext.grid.NumberColumn',format:'0,000.00'});Ext.define('Ext.locale.en.grid.DateColumn',{override:'Ext.grid.DateColumn',format:'m/d/Y'});Ext.define('Ext.locale.en.form.field.Time',{override:'Ext.form.field.Time',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'});Ext.define('Ext.locale.en.form.field.File',{override:'Ext.form.field.File',buttonText:'Browse...'});Ext.define('Ext.locale.en.form.CheckboxGroup',{override:'Ext.form.CheckboxGroup',blankText:'You must select at least one item in this group'});Ext.define('Ext.locale.en.form.RadioGroup',{override:'Ext.form.RadioGroup',blankText:'You must select one item in this group'});Ext.define('Ext.locale.en.window.MessageBox',{override:'Ext.window.MessageBox',buttonText:{ok:'OK',cancel:'Cancel',yes:'Yes',no:'No'}});Ext.define('Ext.locale.en.grid.filters.Filters',{override:'Ext.grid.filters.Filters',menuFilterText:'Filters'});Ext.define('Ext.locale.en.grid.filters.filter.Boolean',{override:'Ext.grid.filters.filter.Boolean',yesText:'Yes',noText:'No'});Ext.define('Ext.locale.en.grid.filters.filter.Date',{override:'Ext.grid.filters.filter.Date',fields:{lt:{text:'Before'},gt:{text:'After'},eq:{text:'On'}},dateFormat:null});Ext.define('Ext.locale.en.grid.filters.filter.List',{override:'Ext.grid.filters.filter.List',loadingText:'Loading...'});Ext.define('Ext.locale.en.grid.filters.filter.Number',{override:'Ext.grid.filters.filter.Number',emptyText:'Enter Number...'});Ext.define('Ext.locale.en.grid.filters.filter.String',{override:'Ext.grid.filters.filter.String',emptyText:'Enter Filter Text...'});Ext.define('Ext.locale.en.Component',{override:'Ext.Component'});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:!0,constructor:function(){var a=this,b=Ext.app.EventDomain.instances;a.callParent();a.domains=b;a.bus=b.component.bus},control:function(b,a){return this.domains.component.listen(b,a)},listen:function(b,c){var d=this.domains,a;for(a in b){if(b.hasOwnProperty(a)){d[a].listen(b[a],c)}}},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:!0,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:!0,config:{id:null,control:null,listen:null,routes:null,before:null},constructor:function(b){var a=this;Ext.apply(a,b);delete a.control;delete a.listen;a.eventbus=Ext.app.EventBus;a.mixins.observable.constructor.call(a,b);a.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,f=e.getBefore()||{},g=Ext.app.route.Router,c,a,d;for(c in b){a=b[c];if(Ext.isString(a)){a={action:a}}d=a.action;if(!a.before){a.before=f[d]}g.connect(c,a,e)}}},isActive:function(){return !0},control:function(b,c,f){var e=this,d=f,a;if(Ext.isString(b)){a={};a[b]=c}else {a=b;d=c}e.eventbus.control(a,d||e)},listen:function(b,a){this.eventbus.listen(b,a||this)},destroy:function(){var a=this,b=a.eventbus;Ext.app.route.Router.disconnectAll(a);if(b){b.unlisten(a);a.eventbus=null}a.clearListeners();a.callParent()},redirectTo:function(a,c){if(a.isModel){a=a.toUrl()}if(!c){var b=Ext.util.History.getToken();if(b===a){return !1}}else {Ext.app.route.Router.onStateChange(a)}Ext.util.History.add(a);return !0}},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(a){var d=Ext.app.namespaces,b,c;if(!Ext.isArray(a)){a=[a]}for(b=0,c=a.length;b<c;b++){d[a[b]]=!0}},clearNamespaces:function(){Ext.app.namespaces={}},getNamespace:function(d){var c=Ext.apply({},Ext.ClassManager.paths,Ext.app.namespaces),b='',a;for(a in c){if(c.hasOwnProperty(a)&&a.length>b.length&&a+'.'===d.substring(0,a.length+1)){b=a}}return b===''?undefined:b}});Ext.getNamespace=Ext.app.getNamespace});Ext.cmd.derive('Ext.app.domain.Store',Ext.app.EventDomain,{singleton:!0,type:'store',prefix:'store.',idMatchRe:/^\#/,constructor:function(){var a=this;a.callParent();a.monitor(Ext.data.AbstractStore)},match:function(c,a){var b=!1,d=c.alias;if(a==='*'){b=!0}else {if(this.idMatchRe.test(a)){b=c.getStoreId()===a.substring(1)}else {if(d){b=Ext.Array.indexOf(d,this.prefix+a)>-1}}}return b}},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 c=this.queue,a=c.removeAt(0),b;if(a){b=a&&a.route;b.execute(this.token,a.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:!1,url:null,before:null,caseInsensitive:!1,matcherRegex:null,paramMatchingRegex:null,paramsInMatchString:null,constructor:function(c){var a=this,b;Ext.apply(a,c,{conditions:{}});b=a.url;a.paramMatchingRegex=new RegExp(/:([0-9A-Za-z\_]*)/g);a.paramsInMatchString=b.match(a.paramMatchingRegex)||[];a.matcherRegex=a.createMatcherRegex(b)},recognize:function(b){var a=this,d=a.controller,e,c;if((a.allowInactive||d.isActive())&&a.recognizes(b)){e=a.matchesFor(b);c=b.match(a.matcherRegex);c.shift();return Ext.applyIf(e,{controller:d,action:a.action,historyUrl:b,args:c})}return !1},recognizes:function(a){return this.matcherRegex.test(a)},execute:function(h,d,f,g){var e=d.args||[],a=this.before,c=this.controller,b=this.createCallback(d,f,g);if(a){e.push(b);if(Ext.isString(a)){a=this.before=c[a]}if(a){a.apply(c,e)}}else {b.resume()}},matchesFor:function(f){var b={},d=this.paramsInMatchString,c=f.match(this.matcherRegex),a=0,e=d.length;c.shift();for(;a<e;a++){b[d[a].replace(':','')]=c[a]}return b},createMatcherRegex:function(b){var d=this.paramsInMatchString,g=this.conditions,c=0,j=d.length,i=Ext.util.Format.format,h=this.caseInsensitive?'i':'',a,f,e;for(;c<j;c++){a=d[c];f=g[a];e=i('{0}',f||'([%a-zA-Z0-9\\-\\_\\s,]+)');b=b.replace(new RegExp(a),e)}return new RegExp('^'+b+'$',h)},createCallback:function(a,b,c){var d=this;c=c||d;return {resume:function(){var g=d.controller,e=d.action,f;if(Ext.isString(e)){e=g[e]}a=a&&a.args?a.args:[];f=a.pop();if(f&&!Ext.isObject(f)){a.push(f)}if(e){d.action=e;e.apply(g,a)}if(b){b.call(c)}},stop:function(d){if(b){b.call(c,d)}}}}},1,0,0,0,0,0,[Ext.app.route,'Route'],0);Ext.cmd.derive('Ext.util.History',Ext.Base,{singleton:!0,alternateClassName:'Ext.History',useTopWindow:!1,constructor:function(){var a=this;a.hiddenField=null;a.ready=!1;a.currentToken=null;a.mixins.observable.constructor.call(a)},getHash:function(){return this.win.location.hash.substr(1)},setHash:function(a){try{this.win.location.hash=a;this.currentToken=a}catch(b){}},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:!1,run:a.onHashChange,interval:50,scope:a})}a.ready=!0;a.fireEvent('ready',a)},onHashChange:function(){var a=this,b=a.getHash();if(b!==a.hash){a.hash=b;a.handleStateChange(b)}},init:function(b,c){var a=this;if(a.ready){Ext.callback(b,c,[a]);return}if(!Ext.isReady){Ext.onInternalReady(function(){a.init(b,c)});return}a.win=a.useTopWindow?window.top:window;a.hash=a.getHash();if(b){a.on('ready',b,c,{single:!0})}a.startUp()},add:function(a,d){var c=this,b=!1;if(d===!1||c.getToken()!==a){c.setHash(a);b=!0}return b},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:!0,multipleToken:'|',queueRoutes:!0,constructor:function(){var a=Ext.util.History;if(!a.ready){a.init()}a.on('change',this.onStateChange,this);this.clear()},onStateChange:function(a){var d=this,l=d.application,j=d.routes,n=j.length,f=d.queueRoutes,k=a.split(d.multipleToken),i=0,m=k.length,e,h,b,c,g;for(;i<m;i++){a=k[i];g=!1;if(f){h=new Ext.app.route.Queue({token:a})}for(e=0;e<n;e++){b=j[e];c=b.recognize(a);if(c){g=!0;if(f){h.queueAction(b,c)}else {b.execute(a,c)}}}if(f){h.runQueue()}if(!g&&l){l.fireEvent('unmatchedroute',a)}}},connect:function(d,a,c){var b={url:d,action:a,controller:c};if(Ext.isObject(a)){Ext.merge(b,a)}this.routes.push(new Ext.app.route.Route(b))},disconnectAll:function(e){var d=this.routes,f=d.length,c=[],a,b;for(a=0;a<f;++a){b=d[a];if(b.controller!==e){c.push(b)}}this.routes=c},recognize:function(f){var d=this.routes||[],c=0,e=d.length,a,b;for(;c<e;c++){a=d[c];b=a.recognize(f);if(b){return {route:a,args:b}}}return !1},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(f,d){var b='get',c=f.split('.'),e=c.length,a;for(a=0;a<e;a++){b+=Ext.String.capitalize(c[a])}b+=d;return b},resolveNamespace:function(g,d){var e=Ext.app.Controller,f=e.controllerRegex,a,b,c;a=Ext.getClassName(g);b=d.$namespace||d.namespace||Ext.app.getNamespace(a)||(c=f.exec(a))&&c[1];return b},processDependencies:function(o,n,m,d,a){if(!a||!a.length){return}var b=this,j=b.strings[d],f,g,i,e,c,l,h,k;if(!Ext.isArray(a)){a=[a]}for(c=0,l=a.length;c<l;c++){e=a[c];f=b.getFullName(e,d,m);g=f.absoluteName;i=f.shortName;n.push(g);h=b.getGetterName(i,j.upper);o[h]=k=b.createGetter(j.getter,e);if(d!=='controller'){k['Ext.app.getter']=!0}}},getFullName:function(a,f,e){var c=a,d,b;if((d=a.indexOf('@'))>0){c=a.substring(0,d);b=a.substring(d+1)+'.'+c}else {if(a.indexOf('.')>0&&(Ext.ClassManager.isCreated(a)||this.hasRegisteredPrefix(a))){b=a}else {if(e){b=e+'.'+f+'.'+a;c=a}else {b=a}}}return {absoluteName:b,shortName:c}},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:!0,moduleClassName:null},onClassExtended:function(d,c,a){var b=a.onBeforeCreated;a.onBeforeCreated=function(j,i){var g=Ext.app.Controller,h=[],e,f;f=j.prototype;e=g.resolveNamespace(j,i);if(e){f.$namespace=e}g.processDependencies(f,h,e,'model',i.models);g.processDependencies(f,h,e,'view',i.views);g.processDependencies(f,h,e,'store',i.stores);g.processDependencies(f,h,e,'controller',i.controllers);Ext.require(h,Ext.Function.pass(b,arguments,this))}},constructor:function(a){this.initAutoGetters();Ext.app.BaseController.prototype.constructor.apply(this,arguments)},normalizeRefs:function(a){var c=this,b=[];if(a){if(Ext.isObject(a)){Ext.Object.each(a,function(d,c){if(Ext.isString(c)){c={selector:c}}c.ref=d;b.push(c)})}else {if(Ext.isArray(a)){b=Ext.Array.merge(b,a)}}}a=c.refs;if(a){c.refs=null;a=c.normalizeRefs(a);if(a){b=Ext.Array.merge(b,a)}}return b},getRefMap:function(){var e=this,a=e._refMap,b,d,f,c;if(!a){b=e.getRefs();a=e._refMap={};if(b){for(c=0,f=b.length;c<f;c++){d=b[c];a[d.ref]=d.selector}}}return a},applyRefs:function(a){return this.normalizeRefs(Ext.clone(a))},updateRefs:function(a){if(a){this.ref(a)}},initAutoGetters:function(){var b=this.self.prototype,c,a;for(c in b){a=b[c];if(a&&a['Ext.app.getter']){a.call(this)}}},doInit:function(b){var a=this;if(!a._initialized){a.init(b);a._initialized=!0}},finishInit:function(f){var c=this,a=c.controllers,d,b,e;if(c._initialized&&a&&a.length){for(b=0,e=a.length;b<e;b++){d=c.getController(a[b]);d.finishInit(f)}}},init:Ext.emptyFn,onLaunch:Ext.emptyFn,activate:function(){this.setActive(!0)},deactivate:function(){this.setActive(!1)},isActive:function(){return this.getActive()},ref:function(b){var a=this,f=0,g=b.length,d,c,e;b=Ext.Array.from(b);a.references=a.references||[];for(;f<g;f++){d=b[f];c=d.ref;e='get'+Ext.String.capitalize(c);if(!a[e]){a[e]=Ext.Function.pass(a.getRef,[c,d],a)}a.references.push(c.toLowerCase())}},addRef:function(a){this.ref(a)},getRef:function(d,a,e){var f=this,c=f.refCache||(f.refCache={}),b=c[d];a=a||{};e=e||{};Ext.apply(a,e);if(a.forceCreate){return Ext.ComponentManager.create(a,'component')}if(!b){if(a.selector){c[d]=b=Ext.ComponentQuery.query(a.selector)[0]}if(!b&&a.autoCreate){c[d]=b=Ext.ComponentManager.create(a,'component')}if(b){b.on('beforedestroy',function(){c[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(a){var c,b;c=a.indexOf('@')===-1?a:a.split('@')[0];b=Ext.StoreManager.get(c);if(!b){a=Ext.app.Controller.getFullName(a,'store',this.$namespace);if(a){b=Ext.create(a.absoluteName,{storeId:c})}}return b},getModel:function(b){var c=Ext.app.Controller.getFullName(b,'model',this.$namespace),a=Ext.ClassManager.get(c.absoluteName);if(!a){a=Ext.data.schema.Schema.lookupEntity(b)}return a},getProfile:function(a){a=Ext.app.Controller.getFullName(a,'profile',this.$namespace);return a},getView:function(b){var a=Ext.app.Controller.getFullName(b,'view',this.$namespace);return a&&Ext.ClassManager.get(a.absoluteName)},ensureId:function(){var a=this.getId();if(!a){this.setId(this.getModuleClassName(this.$className,'controller'))}},destroy:function(e,f){var b=this,d=b.application,a,c;if(!f&&d){d.unregister(b)}b.application=null;if(e){a=b.refCache;for(c in a){if(a.hasOwnProperty(c)){Ext.destroy(a[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:!0,scope:undefined,namespaces:[],paths:null,appFolder:'app',config:{name:'',appProperty:'app',profiles:[],currentProfile:null,mainView:{$value:null,lazy:!0},defaultToken:null,glyphFontFamily:null},onClassExtended:function(e,a,i){var k=Ext.app.Controller,j=e.prototype,d=[],h,c,b,f,g;b=a.name||e.superclass.name;g=a.appFolder||e.superclass.appFolder;if(b){a.$namespace=b;Ext.app.addNamespaces(b)}if(a.namespaces){Ext.app.addNamespaces(a.namespaces)}if(!a['paths processed']){if(b&&g){Ext.Loader.setPath(b,g)}c=a.paths;if(c){for(f in c){if(c.hasOwnProperty(f)){Ext.Loader.setPath(f,c[f])}}}}else {delete a['paths processed']}k.processDependencies(j,d,b,'profile',a.profiles);j.getDependencies(e,a,d);if(d.length){h=i.onBeforeCreated;i.onBeforeCreated=function(f,c){var b=Ext.Array.clone(arguments);Ext.require(d,function(){return h.apply(this,b)})}}},getDependencies:Ext.emptyFn,constructor:function(c){var a=this;Ext.app.route.Router.application=a;Ext.app.Controller.prototype.constructor.apply(this,arguments);a.doInit(a);a.initNamespace();var b=this.getProfiles();if(b&&b.length){Ext.require(b,this.onProfilesLoaded,this)}else {this.onProfilesReady()}},onProfilesReady:function(){var a=this;a.initControllers();a.onBeforeLaunch();a.finishInitControllers()},initNamespace:function(){var b=this,c=b.getAppProperty(),a;a=Ext.namespace(b.getName());if(a){a.getApplication=function(){return b};if(c){if(!a[c]){a[c]=b}}}},initControllers:function(){var a=this,c=Ext.Array.from(a.controllers);a.controllers=new Ext.util.MixedCollection();for(var b=0,d=c.length;b<d;b++){a.getController(c[b])}},finishInitControllers:function(){var c=this,b,a,d;b=c.controllers.getRange();for(a=0,d=b.length;a<d;a++){b[a].finishInit(c)}},launch:Ext.emptyFn,onBeforeLaunch:function(){var a=this,b=Ext.util.History,g=a.getDefaultToken(),f=a.getCurrentProfile(),d,c,i,h,e;a.initMainView();if(f){f.launch()}a.launch.call(a.scope||a);a.launched=!0;a.fireEvent('launch',a);d=a.controllers.items;i=d.length;for(c=0;c<i;c++){h=d[c];h.onLaunch(a)}if(!b.ready){b.init()}e=b.getToken();if(e){Ext.app.route.Router.onStateChange(e)}else {if(g){b.add(g)}}},getModuleClassName:function(b,a){return Ext.app.Controller.getFullName(b,a,this.getName()).absoluteName},initMainView:function(){var b=this,c=b.getCurrentProfile(),a;if(c){a=c.getMainView()}if(a){b.setMainView(a)}else {b.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,!0)}Ext.destroy(a)},getController:function(d,j){var c=this,f=c.controllers,b,a,i,e,h,g;a=f.get(d);if(!a){g=f.items;for(e=0,i=g.length;e<i;++e){h=g[e];b=h.getModuleClassName();if(b&&b===d){a=h;break}}}if(!a&&!j){b=c.getModuleClassName(d,'controller');a=Ext.create(b,{application:c,moduleClassName:d});f.add(a);if(c._initialized){a.doInit(c)}}return a},unregister:function(a){this.controllers.remove(a)},getApplication:function(){return this},destroy:function(d){var a=this,c=a.controllers,b=Ext.namespace(a.getName()),e=a.getAppProperty();Ext.destroy(a.viewport);if(c){c.each(function(a){a.destroy(d,!0)})}a.controllers=null;Ext.app.Controller.prototype.destroy.call(this,d,!0);if(b&&b[e]===a){delete b[e]}},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 a=this,o=a.getProfiles(),p=o.length,j=[],d,b,c,k,i,e,n,h,m,g,l,f;for(b=0;b<p;b++){j[b]=Ext.create(o[b],{application:a});if(j[b].isActive()&&!d){d=j[b];c=d.getDependencies();k=c.all;a.setCurrentProfile(d);e=c.controller;if(e.length){i=a.controllers=a.controllers||[];i.push.apply(i,e)}h=c.view;if(h.length){n=a.views=a.views||[];n.push.apply(n,h)}g=c.store;if(g.length){m=a.stores=a.stores||[];m.push.apply(m,g)}f=c.model;if(f.length){l=a.models=a.models||[];l.push.apply(l,f)}}}if(k){Ext.require(k,a.onProfilesReady,a)}else {a.onProfilesReady()}}},1,0,0,0,0,0,[Ext.app,'Application'],0);Ext.application=function(a){var d=function(b){Ext.onReady(function(){Ext.app.Application.instance=new b()})},b=a.paths,c;if(typeof a==='string'){Ext.require(a,function(){d(Ext.ClassManager.get(a))})}else {a=Ext.apply({extend:'Ext.app.Application'},a);Ext.Loader.setPath(a.name,a.appFolder||'app');if(b){for(c in b){if(b.hasOwnProperty(c)){Ext.Loader.setPath(c,b[c])}}}a['paths processed']=!0;Ext.define(a.name+'.$application',a,function(){d(this)})}};Ext.define('Ext.overrides.app.Application',{override:'Ext.app.Application',autoCreateViewport:!1,config:{enableQuickTips:!0},applyMainView:function(e){var d=this.getView(e),c=d.prototype,b,a;if(!c.isViewport){a=c.plugins;a=['viewport'].concat(a?Ext.Array.from(a,!0):[]);b={plugins:a}}return d.create(b)},getDependencies:function(g,c,b){var d=Ext.app.Controller,f=g.prototype,e=c.$namespace,a=c.autoCreateViewport;if(a){if(a===!0){a='Viewport'}else {b.push('Ext.plugin.Viewport')}d.processDependencies(f,b,e,'view',a)}},onBeforeLaunch:function(){var a=this,b=a.autoCreateViewport;if(a.getEnableQuickTips()){a.initQuickTips()}if(b){a.initViewport()}arguments.callee.$previous.apply(this,arguments)},getViewportName:function(){var b=null,a=this.autoCreateViewport;if(a){b=a===!0?'Viewport':a}return b},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:!0},application:null,controllers:[],models:[],views:[],stores:[]},constructor:function(a){this.initConfig(a);this.mixins.observable.constructor.apply(this,arguments)},isActive:function(){return !1},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(d,c,a){var b=a.onBeforeCreated;a.onBeforeCreated=function(j,h){var e=Ext.app.Controller,g=[],i=j.prototype,f;f=e.resolveNamespace(j,h);e.processDependencies(i,g,f,'model',h.models);e.processDependencies(i,g,f,'view',h.views);e.processDependencies(i,g,f,'store',h.stores);e.processDependencies(i,g,f,'controller',h.controllers);Ext.require(g,Ext.Function.pass(b,arguments,this))}},getDependencies:function(){var d=[],e=this.getApplication().getName(),f=this.getNamespace(),a={model:this.getModels(),view:this.getViews(),controller:this.getControllers(),store:this.getStores()},b,c;for(b in a){c=[];Ext.each(a[b],function(a){if(Ext.isString(a)){if(Ext.isString(a)&&(Ext.ClassManager.getPrefix(a)===''||a===e)){a=e+'.'+b+'.'+f+'.'+a}c.push(a);d.push(a)}},this);a[b]=c}a.all=d;return a}},1,0,0,0,0,[['observable',Ext.mixin.Observable]],[Ext.app,'Profile'],0);Ext.cmd.derive('Ext.app.domain.View',Ext.app.EventDomain,{isInstance:!0,constructor:function(a){Ext.app.EventDomain.prototype.constructor.apply(this,arguments);this.controller=a;this.monitoredClasses=[Ext.Component]},match:function(c,b,d){var a=!1;if(b==='#'){a=d===c.getController()}else {a=c.is(b)}return a},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:!0,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 b=this.getView(),a;if(b){a=this.getCloseViewAction();b[a]()}},control:function(a,c){var b=a;if(Ext.isString(a)){b={};b[a]=c}this.compDomain.listen(b,this)},listen:function(a,c){var b=a.component;if(b){a=Ext.apply({},a);delete a.component;this.control(b)}this.callParent([a,c])},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 a=this.view,b=!1;if(a){b=a.fireEvent.apply(a,arguments)}return b},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(a)}}}},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.Bag',Ext.Base,{isBag:!0,constructor:function(){this.items=[];this.map={}},generation:0,length:0,add:function(b){var a=this,g=a.getKey(b),f=a.map,c=a.items,d=f[g],e;if(d===undefined){c.push(b);f[g]=a.length++;e=b}else {e=c[d];c[d]=b}++a.generation;return e},clear:function(){var a=this,b=a.generation||a.length,c=b?a.items:[];if(b){a.items=[];a.length=0;a.map={};++a.generation}return c},clone:function(){var a=this,b=new a.self(),c=a.length;if(c){Ext.apply(b.map,a.map);b.items=a.items.slice();b.length=a.length}return b},contains:function(a){var d=!1,c=this.map,b;if(a!=null){b=this.getKey(a);if(b in c){d=this.items[c[b]]===a}}return d},containsKey:function(a){return a in this.map},destroy:function(){this.items=this.map=null;this.callParent()},getAt:function(a){var b=null;if(a<this.length){b=this.items[a]}return b},getByKey:function(a){var b=this.map,c=null;if(a in b){c=this.items[b[a]]}return c},getCount:function(){return this.length},getKey:function(a){return a.id||a.getId()},remove:function(h){var a=this,e=a.map,c=a.items,f=null,b,g,d;if(a.length){b=e[g=a.getKey(h)];if(b!==undefined){delete e[g];f=c[b];d=c.pop();if(b<--a.length){c[b]=d;e[a.getKey(d)]=b}++a.generation}}return f},removeByKey:function(b){var a=this.getByKey(b);if(a){this.remove(a)}return a||null},sort:function(e){var a=this,c=a.items,b=c.length,d;if(b){Ext.Array.sort(c,e);a.map={};while(b-->0){d=c[b];a.map[a.getKey(d)]=b}++a.generation}}},1,0,0,0,0,0,[Ext.util,'Bag'],0);Ext.cmd.derive('Ext.util.Scheduler',Ext.Base,{busyCounter:0,lastBusyCounter:0,destroyed:!1,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.Bag()},destroy:function(){var a=this,b=a.timer;if(b){window.clearTimeout(b);a.timer=null}a.destroyed=!0;a.items.destroy();a.items=a.orderedItems=null;a.destroy=Ext.emptyFn},add:function(c){var a=this,b=a.items;if(b===a.firing){a.items=b=b.clone()}c.id=c.id||++a.nextId;c.scheduler=a;b.add(c);if(!a.sortMap){a.orderedItems=null}},remove:function(c){var a=this,b=a.items;if(a.destroyed){return}if(b===a.firing){a.items=b=b.clone()}if(c.scheduled){a.unscheduleItem(c);c.scheduled=!1}b.remove(c);a.orderedItems=null},sort:function(){var a=this,b=a.items,f={},e=a.getPreSort(),c,d;a.orderedItems=[];a.sortMap=f;if(e){b.sort(e)}b=b.items;for(c=0;c<b.length;++c){d=b[c];if(!f[d.id]){a.sortItem(d)}}a.sortMap=null},sortItem:function(a){var b=this,d=b.sortMap,e=b.orderedItems,c;if(!a.scheduler){b.add(a)}c=a.id;if(!(c in d)){d[c]=0;if(!a.sort.$nullFn){a.sort()}d[c]=1;a.order=b.orderedItems.length;e.push(a)}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(e){if(typeof e==='function'){return e}var b=e.split(','),d=[],g=b.length,c,a,f;for(a=0;a<g;++a){d[a]=1;f=b[a];if((c=f.charAt(0))==='-'){d[a]=-1}else {if(c!=='+'){c=0}}if(c){b[a]=f.substring(1)}}return function(j,k){var f=0,a,c,h,i;for(a=0;!f&&a<g;++a){c=b[a];h=j[c];i=k[c];f=d[a]*(h<i?-1:i<h?1:0)}return f}},notify:function(){var a=this,j=a.timer,h=a.getCycleLimit(),f=Ext.GlobalEvents,g,b,d,e,c,i;if(j){window.clearTimeout(j);a.timer=null}while(a.scheduledCount){if(h){--h}else {a.firing=null;break}if(!i){i=!0;if(f.hasListeners.beforebindnotify){f.fireEvent('beforebindnotify',a)}}++a.passes;if(!(c=a.orderedItems)){a.sort();c=a.orderedItems}e=c.length;if(e){a.firing=a.items;for(b=0;b<e;++b){d=c[b];if(d.scheduled){d.scheduled=!1;--a.scheduledCount;a.notifyIndex=b;d.react();if(!a.scheduledCount){break}}}}}a.firing=null;a.notifyIndex=-1;if((g=a.busyCounter)!==a.lastBusyCounter){if(!(a.lastBusyCounter=g)){a.fireEvent('idle',a)}}},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(c){var a=this,b=a.busyCounter+c;a.busyCounter=b;if(b){if(!a.lastBusyCounter){a.lastBusyCounter=b;a.fireEvent('busy',a)}}else {if(a.lastBusyCounter&&!a.timer){a.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:!1},current:-1,total:0,running:!1,complete:!1,exception:!1,constructor:function(b){var a=this;a.mixins.observable.constructor.call(a,b);a.operations=[];a.exceptions=[]},add:function(a){var b=this,c,d;if(Ext.isArray(a)){for(c=0,d=a.length;c<d;++c){b.add(a[c])}}else {b.total++;a.setBatch(b);b.operations.push(a)}return b},sort:function(){this.operations.sort(this.sortFn)},sortFn:function(b,e){var f=b.order-e.order;if(f){return f}var a=b.entityType,d=e.entityType,c;if(!a||!d){return 0}if(!(c=a.rank)){a.schema.rankEntities();c=a.rank}return (c-d.rank)*b.foreignKeyDirection},start:function(b){var a=this;if(!a.operations.length||a.running){return a}a.exceptions.length=0;a.exception=!1;a.running=!0;return a.runOperation(Ext.isDefined(b)?b:a.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=!1;return this},getOperations:function(){return this.operations},getExceptions:function(){return this.exceptions},getCurrent:function(){var b=null,a=this.current;if(!(a===-1||this.complete)){b=this.operations[a]}return b},getTotal:function(){return this.total},isRunning:function(){return this.running},isComplete:function(){return this.complete},hasException:function(){return this.exception},runOperation:function(d){var a=this,c=a.operations,b=c[d];if(b===undefined){a.running=!1;a.complete=!0;a.fireEvent('complete',a,c[c.length-1])}else {a.current=d;b.setInternalCallback(a.onOperationComplete);b.setInternalScope(a);b.execute()}return a},onOperationComplete:function(b){var a=this,c=b.hasException();if(c){a.exception=!0;a.exceptions.push(b);a.fireEvent('exception',a,b)}if(c&&a.getPauseOnException()){a.pause()}else {a.fireEvent('operationcomplete',a,b);a.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(b){var a=this;a.store=b;b.matrix=a;b.on('load',a.onStoreLoad,a,{single:!0})},changeId:function(b){var g=this,c=g.id,f=g.side,e=f.slices,j=e[c],h=j.members,l=f.index,k=f.inverse.slices,i,d,a;g.id=b;e[b]=j;delete e[c];for(d in h){i=h[d];i[l]=b;a=k[d].members;a[b]=a[c];delete a[c]}},onStoreLoad:function(a){this.update(a.getData().items,0)},update:function(l,d){var e=this,p=Ext.data.matrix.Slice,o=e.side,q=o.index,r=l.length,i=e.id,k=e.members,m=o.inverse,g=m.slices,c,f,j,h,b,a,n;for(j=0;j<r;++j){f=n=null;h=l[j];b=h.isEntity?(n=h).id:h;c=k[b];if(d<0&&c&&c[2]===1){delete k[b];a=g[b];if(a){delete a.members[i]}f=1}else {if(!c){c=[b,b,d];c[q]=i;k[b]=c;a=g[b];if(!a){g[b]=a=new p(m,b)}a.members[i]=c;f=1}else {if(d!==c[2]&&d!==0){c[2]=d;a=g[b];f=1}}}if(f){if(e.notify){e.notify.call(e.scope,e,b,d)}if(a&&a.notify){a.notify.call(a.scope,a,i,d)}}}},destroy:function(){var a=this,b=a.store;if(b){b.matrix=null;b.un('load',a.onStoreLoad,a)}a.notify=a.scope=a.store=a.side=a.members=null;a.callParent()}},1,0,0,0,0,0,[Ext.data.matrix,'Slice'],0);Ext.cmd.derive('Ext.data.matrix.Side',Ext.Base,{constructor:function(b,c,d){var a=this;a.matrix=b;a.index=c;a.role=d;a.slices={}},get:function(a,b){var e=this,c=e.slices,d=c[a]||(c[a]=new Ext.data.matrix.Slice(e,a));return b||b===0?d.members[b]:d},update:function(c,d,b){var a=this.get(c);return a.update(d,b)},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(f,c){var a=this,b=c.isManyToMany?c:f.getSchema().getAssociation(c),g=Ext.data.matrix.Side,e=new g(a,0,b.left),d=new g(a,1,b.right);a.association=b;a.session=f;a.left=e;a.right=d;e.inverse=d;d.inverse=e},update:function(b,c,a){return this.left.update(b,c,a)},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(b){var c=this,j=c.crud,g=b.phantom,e=b.dropped,n=!g&&!e,m=b.$className,k=g||e?'allDataOptions':'partialDataOptions',d=c.writerOptions,l=b.entityName,a,f,h,i;if(g&&e){return !1}j=g?c.createKey:e?c.dropKey:c.updateKey;d=d[m]||(d[m]={});if(e){if(!(a=d.drop)){d.drop=a={all:b.getProxy().getWriter().getWriteAllFields()}}if(!a.all){h=b.id}}if(!h){if(!(a=d[k])){a=b.getProxy().getWriter().getConfig(k);d[k]=a=Ext.Object.chain(a);c.setupOptions(a)}h=b.getData(a)}i=c.result||(c.result={});f=i[l]||(i[l]={});f=f[j]||(f[j]=[]);f.push(h)},setupOptions:function(a){a.serialize=!0},onMatrixChange:function(d,h,j,i){var b=this,g=d.left.type,e=d.right.role,f=i<0?b.dropKey:b.createKey,a,c;c=b.result||(b.result={});a=c[g]||(c[g]={});a=a[e]||(a[e]={});a=a[f]||(a[f]={});a=a[h]||(a[h]=[]);a.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=!1},onDirtyRecord:function(a){if(Ext.data.session.ChangesVisitor.prototype.onDirtyRecord.apply(this,arguments)!==!1){if(!a.$source&&(a.dropped||!a.phantom)){this.readEntity(a)}}},readEntity:function(b){var c=this,f=c.readKey,e=b.entityName,i=b.id,h=c.seen,g=e+i,d,a;if(h[g]){return}h[g]=!0;d=c.result||(c.result={});a=d[e]||(d[e]={});a=a[f]||(a[f]=[]);a.push(Ext.apply({},b.modified,b.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(h){var e=this.map,b=this.batch,c,d,g,a,f;if(e){if(!b){b=new Ext.data.Batch()}for(g in e){c=e[g];d=c.entity;f=d.getProxy();delete c.entity;for(a in c){a=f.createOperation(a,{records:c[a]});a.entityType=d;b.add(a)}}}if(b&&h!==!1){b.sort()}return b},onDirtyRecord:function(a){var f=this,c=a.phantom?'create':a.dropped?'destroy':'update',d=a.$className,e=f.map||(f.map={}),b=e[d]||(e[d]={entity:a.self});b=b[c]||(b[c]=[]);b.push(a)}},1,0,0,0,0,0,[Ext.data.session,'BatchVisitor'],0);Ext.cmd.derive('Ext.data.Session',Ext.Base,{isSession:!0,config:{schema:'default',parent:null,autoDestroy:!0,crudProperties:{create:'C',read:'R',update:'U',drop:'D'}},destroyed:!1,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(b){var a=this;a.data={};a.matrices={};a.identifierCache={};a.recordCreator=a.recordCreator.bind(a);a.initConfig(b)},destroy:function(){var a=this,f=a.matrices,g=a.data,e,d,b,c;for(c in f){f[c].destroy()}for(e in g){d=g[e];for(c in d){b=d[c].record;if(b){b.$source=b.session=null}}}a.recordCreator=a.matrices=a.data=null;a.setSchema(null);a.callParent()},adopt:function(a){var b=this,c=a.associations,d;if(a.session!==b){a.session=b;b.add(a);if(c){for(d in c){c[d].adoptAssociated(a,b)}}}},commit:function(){var d=this.data,c,a,e,b;for(c in d){a=d[c];for(e in a){b=a[e].record;if(b){b.commit()}}}},createRecord:function(c,b){var a=c.$isClass?c:this.getSchema().getEntity(c),e=this.getParent(),d;if(b&&e){d=a.getIdFromData(b);if(e.peekRecord(a,d)){Ext.Error.raise('A parent session already contains an entry for '+a.entityName+': '+d)}}return new a(b,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,h,e){var c=this,a=c.peekRecord(d,h),g,f,b;if(!a){g=d.$isClass?d:c.getSchema().getEntity(d);f=c.getParent();if(f){b=f.peekRecord(g,h)}if(b&&!b.isLoading()){a=b.copy(undefined,c);a.$source=b}else {a=g.createWithId(h,null,c);if(e!==!1){a.load(Ext.isObject(e)?e:undefined)}}}return a},getSaveBatch:function(b){var a=new Ext.data.session.BatchVisitor();this.visitData(a);return a.getBatch(b)},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,b,c){if(c){Ext.Error.raise('Cannot update, record dropped: '+this.getModelIdentifier(a,b))}else {Ext.Error.raise('Cannot update, record does not exist: '+this.getModelIdentifier(a,b))}},peekRecord:function(b,f,e){var h=b.$isClass?b:this.getSchema().getEntity(b),g=h.entityName,a=this.data[g],c,d;a=a&&a[f];c=a&&a.record;if(!c&&e){d=this.getParent();c=d&&d.peekRecord(b,f,e)}return c||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(e){var b=this,n=b.getSchema(),l=b.crudOperations,p=l.length,o=b.crudKeys,a,d,c,f,g,h,m,j,i,k;b.getSchema().processKeyChecks(!0);for(a in e){d=n.getEntity(a);c=e[a];for(f=0;f<p;++f){g=l[f];h=c[g.type];if(h){b[g.entityMethod](d,h)}}}for(a in e){d=n.getEntity(a);m=d.associations;c=e[a];for(j in c){if(o[j]){continue}i=m[j];k=c[i.role];i.processUpdate(b,k)}}},privates:{add:function(a){var c=this,f=a.id,e=c.getEntry(a.self,f),b,d;e.record=a;c.registerReferences(a);b=a.associations;for(d in b){b[d].checkMembership(c,a)}},afterErase:function(a){this.evict(a)},applySchema:function(a){return Ext.data.schema.Schema.get(a)},createEntities:function(a,f){var g=f.length,c,d,b,e;for(c=0;c<g;++c){d=f[c];e=a.getIdFromData(d);b=this.peekRecord(a,e);if(!b){b=this.createRecord(a,d)}else {this.onInvalidEntityCreate(a,e)}b.phantom=!0}},dropEntities:function(c,d){var g=d.length,b,e,a,f;if(g){f=Ext.isObject(d[0])}for(b=0;b<g;++b){a=d[b];if(f){a=c.getIdFromData(a)}e=this.peekRecord(c,a);if(e){e.drop()}else {this.onInvalidEntityDrop(c,a)}}},evict:function(b){var c=b.entityName,a=this.data[c],d=b.id,e;if(a){delete a[d]}},getEntityList:function(e,a){var g=a.length,b,d,c,f;for(b=0;b<g;++b){d=a[b];c=this.peekRecord(e,d);if(c){a[b]=c}else {f=!0;a[b]=null;this.onInvalidAssociationEntity(e,d)}}if(f){a=Ext.Array.clean(a)}return a},getEntry:function(a,c){if(a.isModel){c=a.getId();a=a.self}var f=a.$isClass?a:this.getSchema().getEntity(a),d=f.entityName,e=this.data,b;b=e[d]||(e[d]={});b=b[c]||(b[c]={});return b},getRefs:function(h,d,i){var a=this.getEntry(h),c=a&&a.refs&&a.refs[d.role],g=i&&this.getParent(),b,f,e;if(g){b=g.getRefs(h,d);if(b){for(f in b){e=b[f];if(!c||!c[f]){this.getRecord(e.self,e.id)}}c=a&&a.refs&&a.refs[d.role]}}return c||null},getIdentifier:function(d){var f=this.getParent(),c,b,e,a;if(f){a=f.getIdentifier(d)}else {c=this.identifierCache;b=d.identifier;e=b.id||d.entityName;a=c[e];if(!a){if(b.clone){a=b.clone({cache:c})}else {a=b}c[e]=a}}return a},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(a,d){var b=this.getMatrix(a.association),c=b[a.side];return c.get(d)},getModelIdentifier:function(a,b){return b+'@'+a.entityName},onIdChanged:function(b,i,o){var l=this,q=b.entityName,s=b.id,g=l.data[q],n=g[i],d=b.associations,k=n.refs,r=l._setNoRefs,e,m,h,p,c,a,f,j;delete g[i];g[o]=n;for(a in d){c=d[a];if(c.isMany){j=c.getAssociatedItem(b);if(j){h=j.matrix;if(h){h.changeId(o)}}}}if(k){for(a in k){f=k[a];c=d[a];e=c.association;if(e.isManyToMany){}else {m=e.field.name;for(p in f){f[p].set(m,s,r)}}}}l.registerReferences(b,i)},processManyBlock:function(f,e,d,i){var c=this,b,a,g,h;if(d){for(b in d){a=c.peekRecord(f,b);if(a){g=c.getEntityList(e.cls,d[b]);h=e.getAssociatedItem(a);c[i](e,h,a,g)}else {c.onInvalidAssociationEntity(f,b)}}}},processManyCreate:function(d,b,c,a){if(b){b.add(a)}else {c[d.getterName](null,null,a)}},processManyDrop:function(d,a,c,b){if(a){a.remove(b)}},processManyRead:function(d,b,c,a){if(b){b.setRecords(a)}else {c[d.getterName](null,null,a)}},readEntities:function(a,f){var g=f.length,c,d,b,e;for(c=0;c<g;++c){d=f[c];e=a.getIdFromData(d);b=this.peekRecord(a,e);if(!b){b=this.createRecord(a,d)}else {this.onInvalidEntityRead(a,e)}b.phantom=!1}},recordCreator:function(d,b){var c=this,e=b.getIdFromData(d),a=c.peekRecord(b,e,!0);if(!a){a=new b(d,c)}else {a=c.getRecord(b,e)}return a},registerReferences:function(c,h){var k=c.entityName,n=c.id,l=c.data,m=h||h===0,g,e,d,j,a,i,b,f;j=(i=c.references).length;for(e=0;e<j;++e){a=i[e];d=l[a.name];if(d||d===0){a=a.reference;k=a.type;f=a.inverse.role;g=this.getEntry(a.cls,d);b=g.refs||(g.refs={});b=b[f]||(b[f]={});b[n]=c;if(m){delete b[h]}}}},updateEntities:function(c,d){var h=d.length,f,e,a,b,g;if(Ext.isArray(d)){for(f=0;f<h;++f){e=d[f];b=c.getIdFromData(e);a=this.peekRecord(c,b);if(a){a.set(e)}else {this.onInvalidEntityUpdate(c,b)}}}else {for(b in d){e=d[b];a=this.peekRecord(c,b);if(a&&!a.dropped){g=a.set(e)}else {this.onInvalidEntityUpdate(c,b,!!a)}}}},updateReference:function(h,j,b,c){var g=j.reference,f=g.type,d=g.inverse.role,i=h.id,e,a;if(c||c===0){a=this.getEntry(f,c).refs[d];delete a[i]}if(b||b===0){e=this.getEntry(f,b);a=e.refs||(e.refs={});a=a[d]||(a[d]={});a[i]=h}},visitData:function(b){var j=this,n=j.data,k=j.matrices,i,l,d,o,f,e,c,a,m,g,h;j.getSchema().processKeyChecks(!0);for(c in n){i=n[c];for(d in i){a=i[d].record;if(a){if(a.phantom||a.dirty||a.dropped){if(b.onDirtyRecord){b.onDirtyRecord(a)}}else {if(b.onCleanRecord){b.onCleanRecord(a)}}}}}if(b.onMatrixChange){for(c in k){f=k[c].left;g=f.slices;l=f.role.association;for(d in g){m=g[d];e=m.members;for(o in e){h=(a=e[o])[2];if(h){b.onMatrixChange(l,a[0],a[1],h)}}}}}return b},_setNoRefs:{refs:!1}}},1,0,0,0,0,0,[Ext.data,'Session'],0);Ext.cmd.derive('Ext.util.Schedulable',Ext.Base,{'abstract':!0,isSchedulable:!0,scheduled:!1,constructor:function(){this.getScheduler().add(this)},destroy:function(){var a=this,b=a.getScheduler();if(b){b.remove(a)}a.destroyed=!0;a.scheduler=null;a.schedule=a.destroy=a.react=Ext.emptyFn},getFullName:function(){return this.name||this.id},privates:{getScheduler:function(){return this.scheduler},schedule:function(){var a=this,b;if(!a.scheduled){b=a.getScheduler();if(b){a.scheduled=!0;if(a.onSchedule){a.onSchedule()}b.scheduleItem(a)}}},unschedule:function(){var a=this,b;if(a.scheduled){b=a.getScheduler();if(b){b.unscheduleItem(a)}a.scheduled=!1}},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(d,c,e,b){var a=this;a.options=b;a.owner=d;a.scope=e;a.callback=c;a.lateBound=Ext.isString(c);if(b&&b.deep){a.deep=!0}Ext.util.Schedulable.prototype.constructor.call(this)},destroy:function(){var a=this,b=a.owner;Ext.util.Schedulable.prototype.destroy.call(this);if(b){b.onBindDestroy()}a.scope=a.callback=a.owner=null},privates:{getScheduler:function(){var a=this.owner;return a&&a.getScheduler()},getSession:function(){var a=this.owner;return a.isSession?a:a.getSession()},notify:function(b){var a=this,d=a.options||a.defaultOptions,c=a.lastValue;if(!a.calls||a.deep||c!==b||Ext.isArray(b)){++a.calls;a.lastValue=b;if(a.lateBound){a.scope[a.callback](b,c,a)}else {a.callback.call(a.scope,b,c,a)}if(d.single){a.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(a,c,e,d){var b=this;Ext.app.bind.BaseBinding.prototype.constructor.call(this,a.owner,c,e,d);b.stub=a;b.depth=a.depth;if(!a.isLoading()&&!a.scheduled){b.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(b,c){var a=this.stub;return a&&a.bindValidation(b,c)},bindValidationField:function(b,c){var a=this.stub;return a&&a.bindValidationField(b,c)},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===!1)){if(b){return b.isReadOnly()}}return !0},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(b){var a=this.stub;return a?b===a||a.isDescendantOf(b):!1},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(b,c){var a=this;a.owner=b;a.name=c;Ext.util.Schedulable.prototype.constructor.call(this)},destroy:function(){var a=this,d=a.children,c=a.bindings,f,b,e;if(c){for(b=0,f=c.length;b<f;++b){c[b].destroy(!0)}}for(e in d){d[e].destroy()}Ext.util.Schedulable.prototype.destroy.call(this);a.bindings=a.children=a.owner=null},add:function(a){var b=this;(b.children||(b.children={}))[a.name]=a;a.depth=b.depth+1;a.parent=b},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 b=this,a=b.fullName,d=b.parent,c;if(!a){a=b.name||b.id;if(d&&(c=d.getFullName())){a=(c.charAt(c.length-1)!==':'?c+'.':c)+a}b.fullName=a}return a},getSession:function(){var a=this.owner;return a.isSession?a:a.getSession()},bind:function(d,f,e){var a=this,b=new Ext.app.bind.Binding(a,d,f,e),c=a.bindings||(a.bindings=[]);b.depth=a.depth;c.push(b);return b},getValue:function(){return this.isLoading()?null:this.getRawValue()},graft:function(b){var a=this,c=a.bindings,e=a.name,d;a.parent=a.bindings=null;a.destroy();b.depth=a.depth;b.bindings=c;b.generation=a.generation+1;b.name=e;b.id=a.id;b.path=a.path;if(c){for(d=c.length;d-->0;){c[d].stub=b}}return b},isDescendantOf:function(b){for(var a=this;a=a.parent;){if(a===b){return !0}}return !1},onSchedule:function(){for(var c,e,b,a,d=this.parent;d;d=d.parent){a=d.bindings;if(a){for(c=0,e=a.length;c<e;++c){b=a[c];if(b.deep&&!b.scheduled){b.schedule()}}}}},react:function(){var b=this.bindings,c,a,d;if(b){for(a=0,d=b.length;a<d;++a){c=b[a];if(!c.scheduled){c.schedule()}}}},unbind:function(b){var a=this.bindings;if(a&&a.length){Ext.Array.remove(a,b)}},privates:{collect:function(){var a=this.children,f=this.bindings,b=0,d=0,c,e;if(a){for(e in a){c=a[e];d=c.collect();if(d===0){c.destroy();delete a[e]}b+=d}}if(f){b+=f.length}return b},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:!0,dirty:!0,formula:null,validationKey:'validation',statics:{trackHadValue:function(a,e,f,b){var g=b&&b.children,h,c,d;d=a!==undefined;if(!e.hadValue[f]){e.hadValue[f]=d}if(b){b.hadValue=d}if(a&&(a.constructor===Object||a.isModel)){if(a.isModel){a=a.data}for(c in a){Ext.app.bind.Stub.trackHadValue(a[c],e,f+'.'+c,g&&g[c])}}}},constructor:function(e,c,a){var b=this,d=c;Ext.app.bind.AbstractStub.prototype.constructor.call(this,e,c);b.boundValue=null;if(a){a.add(b);if(!a.isRootStub){d=a.path+'.'+c}}b.hadValue=e.hadValue[d];b.path=d},destroy:function(){var a=this,c=a.formula,d=a.parent,b=a.storeBinding;if(c){c.destroy()}if(b){b.destroy()}a.detachBound();a.parentValue=a.formula=a.storeBinding=null;Ext.app.bind.AbstractStub.prototype.destroy.call(this)},bindValidation:function(b,c){var a=this.parent;return a&&a.descend([this.validationKey,this.name]).bind(b,c)},bindValidationField:function(a,c){var b=this.parent,f=this.name,e=typeof a==='string',d;if(b){d=b.bind(function(d){var b=null;if(d&&d.isModel){b=d.getField(f)}if(e){c[a](b,null,this)}else {a.call(c,b,null,this)}})}return d||null},descend:function(c,g){var b=this,f=b.children||(b.children={}),d=g||0,e=c[d++],a;if(!(a=f[e])){a=new Ext.app.bind.Stub(b.owner,e,b)}if(d<c.length){a=a.descend(c,d)}return a},getChildValue:function(a){var c=this,d=c.name,b;if(!a&&!Ext.isString(a)){b=c.hadValue?null:undefined}else {b=c.inspectValue(a);if(!b){if(a.isEntity){b=a.data[d]}else {b=a[d]}}}return b},getDataObject:function(){var c=this,a=c.parent.getDataObject(),e=c.name,b=a?a[e]:null,d,f;if(!b&&a&&a.isEntity){d=a.associations;if(d&&e in d){b=a[d[e].getterName]()}}if(!b||!(b.$className||Ext.isObject(b))){a[e]=b={};c.hadValue=c.owner.hadValue[c.path]=!0;c.invalidate(!0,!0)}return b},getRawValue:function(){return this.getChildValue(this.getParentValue())},graft:function(a){var c=this,d=c.parent,b=c.children,f=c.name,e;a.parent=d;a.children=b;if(d){d.children[f]=a}if(b){for(e in b){b[e].parent=a}}c.children=null;return Ext.app.bind.AbstractStub.prototype.graft.call(this,a)},isLoading:function(){var a=this,g=a.parent,c=!1,d,b,e,f;if(g&&!(c=g.isLoading())){b=a.getParentValue();e=a.inspectValue(b);if(e){c=e.isLoading()}else {if(b&&b.isModel){d=b.associations;if(!(d&&a.name in d)){c=!1;f=!0}}if(!f){c=!a.hadValue&&a.getRawValue()===undefined}}}return c},invalidate:function(d,c){var a=this,b=a.children,e;a.dirty=!0;if(!c&&!a.isLoading()){if(!a.scheduled){a.schedule()}}if(d&&b){for(e in b){b[e].invalidate(d,c)}}},isReadOnly:function(){var a=this.formula;return !!(a&&!a.set)},set:function(b){var a=this,i=a.parent,e=a.name,d=a.formula,c,f,h,g;if(d&&!d.settingValue&&d.set){d.setValue(b);return}else {if(a.isLinkStub){g=a.getLinkFormulaStub();d=g?g.formula:null;if(d){d.setValue(b);return}}}c=i.getDataObject();if(c.isEntity){f=c.associations;if(f&&e in f){h=f[e];c[h.setterName](b);a.invalidate(!0)}else {c.set(e,b)}}else {if(b&&b.constructor===Object||b!==c[e]){if(!a.setByLink(b)){if(b===undefined){delete c[e]}else {c[e]=b;Ext.app.bind.Stub.trackHadValue(b,a.owner,a.path,a)}a.inspectValue(c);a.invalidate(!0)}}}},onStoreLoad:function(){this.invalidate(!0)},afterLoad:function(a){this.invalidate(!0)},afterCommit:function(a){this.afterEdit(a,null)},afterEdit:function(h,c){var a=this.children,g=c&&c.length,f=h.associations,e,b,d,i;if(a){if(g){for(b=0;b<g;++b){d=a[c[b]];if(d){d.invalidate()}}}else {for(e in a){if(!(f&&e in f)){a[e].invalidate()}}}}this.invalidate()},afterReject:function(a){this.afterEdit(a,null)},setByLink:function(g){var f=this,e=0,d,b,c,a;for(a=f;a;a=a.parent){if(a.isLinkStub){b=a;if(e){for(c=[],d=0,a=f;a!==b;a=a.parent){++d;c[e-d]=a.name}}break}++e}if(!b||!(a=b.getTargetStub())){return !1}if(c){a=a.descend(c)}a.set(g);return !0},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 b=this,a=this.boundValue,d=b.children,c;if(a){if(a.isValidation){a.refresh();c=a.generation;if(b.lastValidationGeneration===c){return}b.lastValidationGeneration=c}else {if(a.isModel){if(d&&d[b.validationKey]){a.isValid()}}else {if(a.isStore){if(a.isLoading()&&!a.loadCount){return}}}}}Ext.app.bind.AbstractStub.prototype.react.call(this)},privates:{collect:function(){var a=this,d=Ext.app.bind.AbstractStub.prototype.collect.call(this),b=a.storeBinding?1:0,c=a.formula?1:0;return d+b+c},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=!1}return a.parentValue},setStore:function(a){this.storeBinding=a},inspectValue:function(c){var b=this,f=b.name,i=b.boundValue,a=null,e,d,h,g;if(c&&c.isEntity){e=c.associations;if(e&&f in e){a=c[e[f].getterName]();if(a&&a.isStore){a.$associatedStore=!0}}else {if(f===b.validationKey){a=c.getValidation();b.lastValidationGeneration=null}}}else {if(c){d=c[f];if(d&&(d.isModel||d.isStore)){a=d}}}h=i!==a;if(h){if(i){b.detachBound()}if(a){if(a.isModel){a.join(b)}else {g=a.associatedEntity;if(g&&!g.phantom&&!a.complete&&!a.hasPendingLoad()){a.load()}a.on('load',b.onStoreLoad,b,{single:!0})}}b.boundValue=a}return a},detachBound:function(){var b=this,a=b.boundValue;if(a){if(a.isModel){a.unjoin(b)}else {a.un('load',b.onStoreLoad,b)}}},sort:function(){var a=this,d=a.formula,c=a.scheduler,b=a.storeBinding;Ext.app.bind.AbstractStub.prototype.sort.call(this);if(b){c.sortItem(b)}if(d){c.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:!0,binding:null,destroy:function(){var a=this,b=a.binding,c=a.owner;if(b){a.binding=null;b.destroy();if(c){delete c.linkData[a.name]}}a.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():!1},link:function(c,b){var a=this,d=a.binding;if(d){d.destroy()}b=a.target=b||a.owner;a.linkDescriptor=c;a.binding=b.bind(c,a.onChange,a);a.binding.deep=!0},onChange:function(){this.invalidate(!0)},react:function(){var a=this,b=a.owner.linkData;b[a.name]=a.getValue();Ext.app.bind.Stub.prototype.react.call(this)},privates:{collect:function(){var c=this,b=Ext.app.bind.Stub.prototype.collect.call(this),a=c.binding?1:0;return b+a},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:!0,depth:0,createRootChild:function(a,j){var e=this,d=e.owner,i=d.getData(),g=e.children,c=g&&g[a],f=c?null:e,h,b;if(j||i.hasOwnProperty(a)||!(h=d.getParent())){b=new Ext.app.bind.Stub(d,a,f)}else {b=new Ext.app.bind.LinkStub(d,a,c?null:f);b.link('{'+a+'}',h)}if(c){c.graft(b)}return b},createStubChild:function(a){return this.createRootChild(a,!0)},descend:function(a,g){var f=this,d=f.children,b=g||0,e=a[b++],c=d&&d[e]||f.createRootChild(e);if(b<a.length){c=c.descend(a,b)}return c},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 !1},isLoading:function(){return !1},set:function(g){var c=this,e=c.children||(c.children={}),d=c.owner,h=d.data,j=d.getParent(),f,a,i,b;for(b in g){if((i=g[b])!==undefined){if(!(a=e[b])){a=new Ext.app.bind.Stub(d,b,c)}else {if(a.isLinkStub){if(!a.getLinkFormulaStub()){f=a;a=new Ext.app.bind.Stub(d,b);f.graft(a)}}}a.set(i)}else {if(h.hasOwnProperty(b)){delete h[b];a=e[b];if(a&&!a.isLinkStub&&j){a=c.createRootChild(b)}a.invalidate(!0)}}}},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:!0,missing:1,deep:!0,constructor:function(b,f,e,g,c){var a=this,d=c&&c.trackStatics;Ext.app.bind.BaseBinding.prototype.constructor.call(this,f,e,g,c);a.bindings=[];a.literal=b.$literal;if(b.constructor===Object){if(d){a.staticKeys=[]}a.addObject(b,a.lastValue={},a.staticKeys)}else {a.addArray(b,a.lastValue=[])}if(!--a.missing&&!a.scheduled){a.schedule()}},destroy:function(){var a=this;a.bindings=Ext.destroy(a.bindings);Ext.app.bind.BaseBinding.prototype.destroy.call(this)},add:function(d,i,f){var a=this,h=a.owner,e=a.bindings,g=a.literal?d.reference?'bindEntity':'bindExpression':'bind',b,c;++a.missing;b=h[g](d,function(c){i[f]=c;if(b.calls===1){--a.missing}if(!a.missing&&!a.scheduled){a.schedule()}},a,null);c=b.depth;if(!e.length||c<a.depth){a.depth=c}e.push(b);return !this.isBindingStatic(b)},addArray:function(g,d){var f=this,h=g.length,e=!1,c,a,b;for(b=0;b<h;++b){a=g[b];if(a&&(a.reference||Ext.isString(a))){c=f.add(a,d,b)}else {if(Ext.isArray(a)){c=f.addArray(a,d[b]=[])}else {if(a&&a.constructor===Object){c=f.addObject(a,d[b]={})}else {d[b]=a;c=!1}}}e=e||c}return e},addObject:function(g,d,h){var f=this,e=!1,c,a,b;for(b in g){a=g[b];if(a&&(a.reference||Ext.isString(a))){c=f.add(a,d,b)}else {if(Ext.isArray(a)){c=f.addArray(a,d[b]=[])}else {if(a&&a.constructor===Object){c=f.addObject(a,d[b]={})}else {d[b]=a;c=!1}}}if(h&&!c){h.push(b)}e=e||c}return e},getFullName:function(){var c=this,a=c.fullName,d=c.bindings,e=d.length,b;if(!a){a='@[';for(b=0;b<e;++b){if(b){a+=','}a+=d[b].getFullName()}a+=']';c.fullName=a}return a},getRawValue:function(){return this.lastValue},isDescendantOf:function(){return !1},isLoading:function(){for(var a=this.bindings,b=a.length;b-->0;){if(a[b].isLoading()){return !0}}return !1},isBindingStatic:function(a){return a.isTemplateBinding&&a.isStatic},isStatic:function(){var b=this.bindings,d=b.length,a,c;for(a=0;a<d;++a){c=b[a];if(!this.isBindingStatic(c)){return !1}}return !0},pruneStaticKeys:function(){var b=Ext.apply({},this.lastValue),c=this.staticKeys,d=c.length,a;for(a=0;a<d;++a){delete b[c[a]]}return b},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(c){var b=this.formulaCache,a,d;if(!b){b=this.formulaCache=new Ext.util.LruCache({maxSize:20})}a=b.get(c);if(!a){d='[^\\.a-z0-9_]'+c+'\\(\\s*([\'"])(.*?)\\1\\s*\\)';a=new RegExp(d,'gi');b.add(c,a)}return a}},isFormula:!0,calculation:null,explicit:!1,set:null,single:!1,argumentNamesRe:/^function\s*\(\s*([^,\)\s]+)/,constructor:function(h,c){var a=this,g=h.owner,f,b,d,e;a.owner=g;a.stub=h;Ext.util.Schedulable.prototype.constructor.call(this);if(c instanceof Function){a.get=d=c}else {a.get=d=c.get;a.set=c.set;b=c.bind;if(c.single){a.single=c.single}if(b){f=b.bindTo;if(f){e=Ext.apply({},b);delete e.bindTo;b=f}}}if(b){a.explicit=!0}else {b=d.$expressions||a.parseFormula(d)}a.binding=g.bind(b,a.onChange,a,e)},destroy:function(){var a=this,b=a.binding,c=a.stub;if(b){b.destroy();a.binding=null}if(c){c.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(f){var g=f.toString(),b={$literal:!0},a,d,e,c;a=this.argumentNamesRe.exec(g);d=a?a[1]:'get';e=Ext.app.bind.Formula.getFormulaParser(d);while(a=e.exec(g)){c=a[2];b[c]=c}b.$literal=!0;f.$expressions=b;return b},react:function(){var a=this,c=a.owner,d=a.binding.lastValue,e=a.getterFn,b;if(a.explicit){b=d}else {b=c.getFormulaFn(d)}a.settingValue=!0;a.stub.set(a.calculation=a.get.call(c,b));a.settingValue=!1;if(a.single){a.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 b=this,a=b.binding;if(!a.destroyed){b.scheduler.sortItem(a)}}}},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 b=this,c=b._initters,a;b.text=d;for(a in c){b[a]=c[a]}},_initters:{apply:function(a,b){return this.parse().apply(a,b)},getTokens:function(){return this.parse().getTokens()}},apply:function(h,i){var f=this,e=f.slots,d=f.buffer,g=e.length,c,b,a;for(c=0;c<g;++c){b=e[c];if(b){if((a=h[b.pos])==null){a=''}if(b.not){a=!a}if(b.format){a=b.format(a,i)}d[c]=a}}return d.join('')},getTokens:function(){return this.tokens},parse:function(){var b=this,g=b.text,j=[],m=[],k=[],i={},d=0,p=b.tokenRe,l=0,h,n,f,c,o,a,e;for(n in b._initters){delete b[n]}b.buffer=j;b.slots=m;b.tokens=k;while(c=p.exec(g)){f=c.index-d;if(f){j[l++]=g.substring(d,d+f);d+=f}d+=(o=c[0]).length;a={fmt:h=c[3]||null,index:c[1]?parseInt(c[1],10):null,not:o.charAt(1)==='!',token:c[2]||null};e=a.token||String(a.index);if(e in i){a.pos=i[e]}else {i[e]=a.pos=k.length;k.push(e)}if(h){if(h.substring(0,5)==='this.'){a.fmt=h.substring(5)}else {a.scope=Ext.util.Format}b.parseArgs(c[4],a)}m[l++]=a}if(d<g.length){j[l++]=g.substring(d)}return b},parseArgs:function(e,d){var f=this,h=f.numberRe,i=f.stringRe,b,a,c,g;if(!e){a=[]}else {if(e.indexOf(',')<0){a=[e]}else {a=e.split(',')}}d=d||{};g=a.length;d.args=a;for(c=0;c<g;++c){b=a[c];if(b==='true'){a[c]=!0}else {if(b==='false'){a[c]=!1}else {if(b==='null'){a[c]=null}else {if(h.test(b)){a[c]=parseFloat(b)}else {if(i.test(b)){a[c]=b.substring(1,b.length-1)}else {d.fn=Ext.functionFactory('return ['+e+'];');d.format=f._formatEval;break}}}}}}if(!d.format){a.unshift(0);d.format=f._formatArgs}return d},parseFormat:function(e){var c=this,d=c.formatRe.exec(e),a={fmt:e,scope:Ext.util.Format},b;b=d[2];if(b){a.fmt=d[1];c.parseArgs(b,a)}else {a.args=[0];a.format=c._formatArgs}return a},_formatArgs:function(b,a){a=this.scope||a;this.args[0]=b;return a[this.fmt].apply(a,this.args)},_formatEval:function(c,a){var b=this.fn();b.unshift(c);a=this.scope||a;return a[this.fmt].apply(a,b)}},1,0,0,0,0,0,[Ext.app.bind,'Template'],0);Ext.cmd.derive('Ext.app.bind.TemplateBinding',Ext.app.bind.BaseBinding,{isTemplateBinding:!0,lastValue:undefined,value:undefined,constructor:function(f,d,e,h,g){var a=this,c=new Ext.app.bind.Template(f),b=c.getTokens();Ext.app.bind.BaseBinding.prototype.constructor.call(this,d,e,h,g);a.tpl=c;a.tokens=b;b.$literal=!0;if(b.length){a.multiBinding=new Ext.app.bind.Multi(b,d,a.onBindData,a)}else {a.isStatic=!0;a.onData(c.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 !1},isLoading:function(){var a=this.multiBinding;return a?a.isLoading():!1},onBindData:function(a){this.onData(this.tpl.apply(a,this.getTemplateScope()))},onData:function(c){var a=this,b=a.value;if(b!==(a.value=c)){a.lastValue=b;a.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:!1,remoteSort:!1},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 b=this,a=b.data;if(!a){b.data=a=b.constructDataCollection()}return a},getSession:function(){return this.getSource().getSession()},applySource:function(a){if(a){a=Ext.data.StoreManager.lookup(a)}return a},updateSource:function(b,c){var a=this,d;if(c){c.removeObserver(a)}if(b){d=a.getData();d.setSource(b.getData());if(!a.isInitializing){a.fireEvent('refresh',a);a.fireEvent('datachanged',a)}b.addObserver(a)}},getModel:function(){return this.getSource().getModel()},getProxy:function(){return null},onCollectionAdd:function(e,b){var a=this,d=b.items,c=!b.next;if(a.ignoreCollectionAdd){return}a.fireEvent('add',a,d,b.at);if(c){a.fireEvent('datachanged',a)}},onCollectionItemChange:function(f,a){var b=this,d=a.item,c=a.modified||null,e=a.meta;b.onUpdate(d,e,c,a);b.fireEvent('update',b,d,e,c,a)},onUpdate:Ext.emptyFn,onCollectionRemove:function(e,b){var a=this,d=b.items,c=!b.next;if(a.ignoreCollectionRemove){return}a.fireEvent('remove',a,d,b.at,!1);if(c){a.fireEvent('datachanged',a)}},onSourceBeforeLoad:function(b,a){this.fireEvent('beforeload',this,a)},onSourceAfterLoad:function(d,c,a,b){this.fireEvent('load',this,c,a,b)},onFilterEndUpdate:function(){Ext.data.AbstractStore.prototype.onFilterEndUpdate.apply(this,arguments);this.callObservers('Filter')},onSourceBeforePopulate:function(){this.ignoreCollectionAdd=!0;this.callObservers('BeforePopulate')},onSourceAfterPopulate:function(){var a=this;a.ignoreCollectionAdd=!1;a.fireEvent('datachanged',a);a.fireEvent('refresh',a);this.callObservers('AfterPopulate')},onSourceBeforeClear:function(){this.ignoreCollectionRemove=!0;this.callObservers('BeforeClear')},onSourceAfterClear:function(){this.ignoreCollectionRemove=!1;this.callObservers('AfterClear')},onSourceBeforeRemoveAll:function(){this.ignoreCollectionRemove=!0;this.callObservers('BeforeRemoveAll')},onSourceAfterRemoveAll:function(c,b){var a=this;a.ignoreCollectionRemove=!1;if(!b){a.fireEvent('clear',a);a.fireEvent('datachanged',a)}this.callObservers('AfterRemoveAll',[b])},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(!0);a.data=null},privates:{isMoving:function(){var a=this.getSource();return a.isMoving?a.isMoving.apply(a,arguments):!1},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:!0,factoryConfig:{name:'viewModel'},destroyed:!1,collectTimeout:100,expressionRe:/^(?:\{[!]?(?:(\d+)|([a-z_][\w\-\.]*))\})$/i,$configStrict:!1,config:{data:!0,formulas:{$value:null,merge:function(c,a,d,b){return this.mergeNew(c,a,d,b)}},links:null,parent:null,root:!0,scheduler:null,schema:'default',session:null,stores:null,view:null},constructor:function(a){this.hadValue={};this.initConfig(a)},destroy:function(){var a=this,c=a._scheduler,g=a.storeInfo,h=a.getParent(),i=a.collectTask,f=a.children,d,b,e;a.destroying=!0;if(i){i.cancel();a.collectTask=null}if(f){for(d in f){f[d].destroy()}}if(g){for(d in g){b=g[d];e=b.autoDestroy;if(e||!b.$wasInstance&&e!==!1){b.destroy()}Ext.destroy(b.$binding)}}if(h){h.unregisterChild(a)}a.getRoot().destroy();if(c&&c.$owner===a){c.$owner=null;c.destroy()}a.hadValue=a.children=a.storeInfo=a._session=a._view=a._scheduler=a._root=a._parent=a.formulaFn=a.$formulaData=null;a.callParent()},bind:function(a,f,c,b){var d=this,e;c=c||d;if(!b&&a.bindTo!==undefined&&!Ext.isString(a)){b=a;a=b.bindTo}if(!Ext.isString(a)){e=new Ext.app.bind.Multi(a,d,f,c,b)}else {if(d.expressionRe.test(a)){a=a.substring(1,a.length-1);e=d.bindExpression(a,f,c,b)}else {e=new Ext.app.bind.TemplateBinding(a,d,f,c,b)}}return e},getSession:function(){var b=this,a=b._session,c;if(!a&&(c=b.getParent())){b.setSession(a=c.getSession())}return a||null},getStore:function(c){var a=this.storeInfo,b;if(a){b=a[c]}return b||null},linkTo:function(i,a){var h=this,b=h.getStub(i),d,g,e,f,c;if(a.isModel){a={type:a.entityName,id:a.id}}e=a.type||a.reference;d=a.create;if(e){g=a.id;if(d){g=undefined}c=h.getRecord(e,g);if(Ext.isObject(d)){c.set(d);c.commit();c.phantom=!0}b.set(c)}else {if(!b.isLinkStub){f=new Ext.app.bind.LinkStub(h,b.name);b.graft(f);b=f}b.link(a)}},notify:function(){this.getScheduler().notify()},get:function(a){return this.getStub(a).getValue()},set:function(a,b){var d=this,e,c;d.getData();if(b===undefined&&a&&a.constructor===Object){c=d.getRoot();b=a}else {if(a&&a.indexOf('.')<0){e={};e[a]=b;b=e;c=d.getRoot()}else {c=d.getStub(a)}}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(!this.destroying&&a){delete a[b.getId()]}},getRecord:function(d,e){var c=this.getSession(),b=d,f=e!==undefined,a;if(c){if(f){a=c.getRecord(d,e)}else {a=c.createRecord(d)}}else {if(!b.$isClass){b=this.getSchema().getEntity(b)}if(f){a=b.createWithId(e);a.load()}else {a=new b()}}return a},notFn:function(a){return !a},bindExpression:function(a,d,f,e){var i=a.charAt(0),c=i==='!',g=c?a.substring(1):a,h=this.getStub(g),b;b=h.bind(d,f,e);if(c){b.transform=this.notFn}return b},applyScheduler:function(a){if(a&&!a.isInstance){a=new Ext.util.Scheduler(a);a.$owner=this}return a},getScheduler:function(){var b=this,a=b._scheduler,c,d;if(!a){if(!(c=b.getParent())){a=new Ext.util.Scheduler({preSort:'kind,-depth'});a.$owner=b}else {a=c.getScheduler()}b.setScheduler(a)}return a},getStub:function(a){var b=this.getRoot();return a?b.getChild(a):b},collect:function(){var a=this,c=a.getParent(),b=a.collectTask;if(c){c.collect();return}if(!b){b=a.collectTask=new Ext.util.DelayedTask(a.doCollect,a)}if(a.collectTimeout===0){a.doCollect()}else {b.delay(a.collectTimeout)}},doCollect:function(){var a=this.children,b;if(a){for(b in a){a[b].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(b,e){var a=this,d,c;a.getSession();if(!e){c=a.getParent();a.linkData=d=c?Ext.Object.chain(c.getData()):{};a.data=a._data=Ext.Object.chain(d)}if(b&&b.constructor===Object){a.getRoot().set(b)}},applyParent:function(a){if(a){a.registerChild(this)}return a},applyStores:function(f){var b=this,h=b.getRoot(),d,a,c,g,e,i;b.storeInfo={};b.listenerScopeFn=function(){return b.getView().getInheritedConfig('defaultListenerScope')};for(d in f){a=f[d];if(a.isStore){a.$wasInstance=!0;b.setupStore(a,d);continue}else {if(Ext.isString(a)){a={source:a}}else {a=Ext.apply({},a)}}e=a.listeners;delete a.listeners;c=b.bind(a,b.onStoreBind,b,{trackStatics:!0});if(c.isStatic()){c.destroy();b.createStore(d,a,e)}else {c.$storeKey=d;c.$listeners=e;g=h.createStubChild(d);g.setStore(c)}}},onStoreBind:function(a,g,d){var f=this.storeInfo,e=d.$storeKey,c=f[e],b;if(!c){this.createStore(e,a,d.$listeners,d)}else {a=Ext.merge({},d.pruneStaticKeys());b=a.proxy;delete a.type;delete a.model;delete a.fields;delete a.proxy;delete a.listeners;if(b){delete b.reader;delete b.writer;c.getProxy().setConfig(b)}c.blockLoad();c.setConfig(a);c.unblockLoad(!0)}},createStore:function(f,a,c,d){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=c;b=Ext.Factory.store(a);b.$binding=d;this.setupStore(b,f)},setupStore:function(a,b){a.resolveListenerScope=this.listenerScopeFn;this.storeInfo[b]=a;this.set(b,a)},applyFormulas:function(b){var c=this,e=c.getRoot(),a,d;c.getData();for(a in b){e.createStubChild(a);d=c.getStub(a);d.setFormula(b[a])}return b},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 b=new Ext.app.bind.RootStub(this),a=this.getParent();if(a){b.depth=a.getRoot().depth-1000}return b},getFormulaFn:function(c){var a=this,b=a.formulaFn;if(!b){b=a.formulaFn=function(b){return a.$formulaData[b]}}a.$formulaData=c;return b}}},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:!0,type:'controller',prefix:'controller.',idMatchRe:/^\#/,constructor:function(){var a=this;a.callParent();a.monitor(Ext.app.BaseController)},match:function(c,a){var b=!1,d=c.alias;if(a==='*'){b=!0}else {if(a==='#'){b=!!c.isApplication}else {if(this.idMatchRe.test(a)){b=c.getId()===a.substring(1)}else {if(d){b=Ext.Array.indexOf(d,this.prefix+a)>-1}}}}return b}},1,0,0,0,0,0,[Ext.app.domain,'Controller'],0);Ext.cmd.derive('Ext.data.PageMap',Ext.util.LruCache,{config:{store:null,pageSize:0,rootProperty:''},clear:function(b){var a=this;a.pageMapGeneration=(a.pageMapGeneration||0)+1;a.indexMap={};Ext.util.LruCache.prototype.clear.apply(this,arguments)},forEach:function(k,f){var d=this,b=Ext.Object.getKeys(d.map),h=b.length,j=d.getPageSize(),a,c,e,g,i;for(a=0;a<h;a++){b[a]=+b[a]}Ext.Array.sort(b,Ext.Array.numericSortFn);f=f||d;for(a=0;a<h;a++){e=b[a];g=d.getPage(e);i=g.length;for(c=0;c<i;c++){if(k.call(f,g[c],(e-1)*j+c)===!1){return}}}},findBy:function(d,a){var c=this,b=null;a=a||c;c.forEach(function(c,e){if(d.call(a,c,e)){b=c;return !1}});return b},findIndexBy:function(d,a){var c=this,b=-1;a=a||c;c.forEach(function(e,c){if(d.call(a,e)){b=c;return !1}});return b},find:function(f,a,h,d,e,c){if(Ext.isEmpty(a,!1)){return null}var g=Ext.String.createRegex(a,d,e,c),b=this.getRootProperty();return this.findBy(function(i){return i&&g.test((b?i[b]:i)[f])},null,h)},findIndex:function(f,a,h,d,e,c){if(Ext.isEmpty(a,!1)){return null}var g=Ext.String.createRegex(a,d,e,c),b=this.getRootProperty();return this.findIndexBy(function(i){return i&&g.test((b?i[b]:i)[f])},null,h)},getPageFromRecordIndex:function(a){return Math.floor(a/this.getPageSize())+1},addAll:function(a){this.addPage(1,a)},addPage:function(a,g){var c=this,d=c.getPageSize(),k=a+Math.floor((g.length-1)/d),e,i=(a-1)*d,j=c.indexMap,b,f,h;for(e=0;a<=k;a++,e+=d){b=Ext.Array.slice(g,e,e+d);for(f=0,h=b.length;f<h;f++){j[b[f].internalId]=i++}c.add(a,b);c.fireEvent('pageadd',c,a,b)}},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(b){var a=this.indexMap[b];if(a!==-1){return this.getAt(a)}},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(d){var b=this,a=b.getPage(d),f,c,e;if(a){if(b.fireEvent('beforepageremove',b,d,a)!==!1){f=a.length;for(c=0;c<f;c++){delete b.indexMap[a[c].internalId]}e=Ext.util.LruCache.prototype.removeAtKey.apply(this,arguments);b.fireEvent('pageremove',b,d,a);a.length=0}}return e},getPage:function(a){return this.get(a)},hasRange:function(c,d){var a=this.getPageFromRecordIndex(c),b=this.getPageFromRecordIndex(d);for(;a<=b;a++){if(!this.hasPage(a)){return !1}}return !0},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(j,d){d--;if(!this.hasRange(j,d)){Ext.Error.raise('PageMap asked for range which it does not have')}var b=this,h=b.getPageSize(),e=b.getPageFromRecordIndex(j),f=b.getPageFromRecordIndex(d),l=(e-1)*h,m=f*h-1,a=e,i=[],g,k,c;for(;a<=f;a++){if(a===e){g=j-l;c=!0}else {g=0;c=!1}if(a===f){k=h-(m-d);c=!0}if(c){Ext.Array.push(i,Ext.Array.slice(b.getPage(a),g,k))}else {Ext.Array.push(i,b.getPage(a))}}return i}},0,0,0,0,0,0,[Ext.data,'PageMap'],0);Ext.cmd.derive('Ext.data.BufferedStore',Ext.data.ProxyStore,{isBufferedStore:!0,buffered:!0,config:{data:0,pageSize:25,remoteSort:!0,remoteFilter:!0,sortOnLoad:!1,purgePageCount:5,trailingBufferZone:25,leadingBufferZone:200,defaultViewSize:100,viewSize:0,trackRemoved:!1},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(!0)}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 a=this,b=new Ext.data.PageMap({store:a,rootProperty:'data',pageSize:a.getPageSize(),maxSize:a.getPurgePageCount(),listeners:{clear:a.onPageMapClear,scope:a}});a.relayEvents(b,['beforepageremove','pageadd','pageremove']);a.pageRequests={};return b},removeAll:function(b){var a=this,c=a.getData();if(c){if(b){a.suspendEvent('clear')}c.clear();if(b){a.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(d){var a=this,e=a.getData(),i=Number.MAX_VALUE,b,c,j,k,f,g,h,l;if(a.loading){return}if(!d){d={}}e.clear(!0);g=function(){if(a.rangeCached(b,c)){a.loading=!1;e.un('pageadd',g);l=e.getRange(b,c+1);a.fireEvent('load',a,l,!0);a.fireEvent('refresh',a)}};h=Math.ceil((a.getLeadingBufferZone()+a.getTrailingBufferZone())/2);if(!a.lastRequestStart){b=d.start||0;c=b+(d.count||a.getPageSize())-1}else {b=a.lastRequestStart;c=a.lastRequestEnd;i=a.getTotalCount()}delete a.totalCount;b=Math.max(b-h,0);c=Math.min(c+h,i);j=a.getPageFromRecordIndex(b);k=a.getPageFromRecordIndex(c);if(a.fireEvent('beforeload',a,d)!==!1){a.loading=!0;e.on('pageadd',g);for(f=j;f<=k;f++){a.prefetchPage(f,d)}}},filter:function(){this.getData().clear();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 b=this,a=b.getData();if(a){a.clear()}},getCount:function(){return this.totalCount||0},getRange:function(c,b,f){var a=this,k=a.totalCount-1,m=a.lastRequestStart,l=[],h=a.getData(),g,d,e,i,j;f=Ext.apply({prefetchStart:c,prefetchEnd:b},f);b=b>=a.totalCount?k:b;d=c===0?0:c-1;e=b===k?b:b+1;a.lastRequestStart=c;a.lastRequestEnd=b;if(a.rangeCached(d,e)){a.onRangeAvailable(f);l=h.getRange(c,b+1)}else {a.fireEvent('cachemiss',a,c,b);i=a.getPageFromRecordIndex(d);j=a.getPageFromRecordIndex(e);g=function(l,k,m){if(k>=i&&k<=j&&a.rangeCached(d,e)){a.fireEvent('cachefilled',a,c,b);h.un('pageadd',g);a.onRangeAvailable(f)}};h.on('pageadd',g);a.prefetchRange(c,b)}a.primeCache(c,b,c<m?-1:1);return l},getById:function(b){var a=this.data.findBy(function(a){return a.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 a=this,c;if(b&&typeof b==='string'){c=a.grouper;if(!c){a.grouper=new Ext.util.Grouper({property:b,direction:d||'ASC',root:'data'})}else {if(d===undefined){c.toggle()}else {c.setDirection(d)}}}else {a.grouper=b?a.getSorters().decodeSorter(b,'Ext.util.Grouper'):null}if(a.isLoadBlocked()){return}a.getData().clear();a.loadPage(1,{callback:function(){a.fireEvent('groupchange',a,a.getGrouper())}})},getPageFromRecordIndex:function(a){return Math.floor(a/this.getPageSize())+1},calculatePageCacheSize:function(c){var a=this,b=a.getPurgePageCount();return b?Math.max(a.getData().getMaxSize()||0,Math.ceil((c+a.getTrailingBufferZone()+a.getLeadingBufferZone())/a.getPageSize())*2+b):0},loadToPrefetch:function(b){var a=this,f=b,h,d,i,e=b.start,k=b.start+b.limit-1,m=a.getViewSize()||b.limit,c=Math.min(k,b.start+m-1),p=a.getPageFromRecordIndex(Math.max(e-a.getTrailingBufferZone(),0)),q=a.getPageFromRecordIndex(k+a.getLeadingBufferZone()),g=a.getData(),j=function(){d=d||[];if(b.loadCallback){b.loadCallback.call(b.scope||a,d,o,!0)}if(b.callback){b.callback.call(b.scope||a,d,e||0,k||0,b)}},n=function(){a.fireEvent('datachanged',a);a.fireEvent('refresh',a);a.fireEvent('load',a,d,!0)},l=function(){if(a.rangeCached(e,c)){a.loading=!1;d=g.getRange(e,c+1);g.un('pageadd',l);if(a.hasListeners.guaranteedrange){a.guaranteeRange(e,c,b.callback,b.scope)}j();n()}},o;g.setMaxSize(a.calculatePageCacheSize(m));if(a.fireEvent('beforeload',a,b)!==!1){delete a.totalCount;a.loading=!0;if(b.callback){f=Ext.apply({},b);delete f.callback}a.on('prefetch',function(m,e,d,k){o=k;if(d){if(i=a.getTotalCount()){g.on('pageadd',l);c=Math.min(c,i-1);q=a.getPageFromRecordIndex(Math.min(c+a.getLeadingBufferZone(),i-1));for(h=p+1;h<=q;++h){a.prefetchPage(h,f)}}else {j();n()}}else {j();a.fireEvent('load',a,e,!1)}},null,{single:!0});a.prefetchPage(p,f)}},prefetch:function(b){var a=this,c=a.getPageSize(),e=a.getData(),d;if(c){if(a.lastPageSize&&c!=a.lastPageSize){Ext.Error.raise('pageSize cannot be dynamically altered')}if(!e.getPageSize()){e.setPageSize(c)}}else {a.pageSize=e.setPageSize(c=b.limit)}a.lastPageSize=c;if(!b.page){b.page=a.getPageFromRecordIndex(b.start);b.start=(b.page-1)*c;b.limit=Math.ceil(b.limit/c)*c}if(!a.pageRequests[b.page]){b=Ext.apply({action:'read',filters:a.getFilters().items,sorters:a.getSorters().items,grouper:a.getGrouper(),internalCallback:a.onProxyPrefetch,internalScope:a},b);d=a.createOperation('read',b);d.pageMapGeneration=e.pageMapGeneration;if(a.fireEvent('beforeprefetch',a,d)!==!1){a.pageRequests[b.page]=d.execute();if(a.getProxy().isSynchronous){delete a.pageRequests[b.page]}}}return a},onPageMapClear:function(){var a=this,f=a.wasLoading,c=a.pageRequests,d=a.getData(),e,b;d.clearListeners();d.on('clear',a.onPageMapClear,a);a.relayEvents(d,['beforepageremove','pageadd','pageremove']);a.loading=!0;a.totalCount=0;for(b in c){if(c.hasOwnProperty(b)){e=c[b];delete c[b];delete e.callback}}a.fireEvent('clear',a);a.loading=f},prefetchPage:function(d,e){var a=this,b=a.getPageSize(),f=(d-1)*b,c=a.totalCount;if(c!==undefined&&a.data.getCount()===c){return}a.prefetch(Ext.applyIf({page:d,start:f,limit:b},e))},onProxyPrefetch:function(b){var a=this,e=b.getResultSet(),d=b.getRecords(),c=b.wasSuccessful(),f=b.getPage(),g=a.totalCount;if(b.pageMapGeneration===a.getData().pageMapGeneration){if(e){a.totalCount=e.getTotal();if(a.totalCount!==g){a.fireEvent('totalcountchange',a.totalCount)}}if(f!==undefined){delete a.pageRequests[f]}a.loading=!1;a.fireEvent('prefetch',a,d,c,b);if(c){a.cachePage(d,b.getPage())}Ext.callback(b.getCallback(),b.getScope()||a,[d,b,c])}},cachePage:function(b,d){var a=this,e=b.length,c;if(!Ext.isDefined(a.totalCount)){a.totalCount=b.length;a.fireEvent('totalcountchange',a.totalCount)}for(c=0;c<e;c++){b[c].join(a)}a.getData().addPage(d,b)},rangeCached:function(a,b){return this.getData().hasRange(a,b)},pageCached:function(a){return this.getData().hasPage(a)},pagePending:function(a){return !!this.pageRequests[a]},rangeSatisfied:function(a,b){return this.rangeCached(a,b)},onRangeAvailable:function(a){var c=this,f=c.getTotalCount(),e=a.prefetchStart,b=a.prefetchEnd>f-1?f-1:a.prefetchEnd,d;b=Math.max(0,b);d=c.getData().getRange(e,b+1);if(a.fireEvent!==!1){c.fireEvent('guaranteedrange',d,e,b,a)}if(a.callback){a.callback.call(a.scope||c,d,e,b,a)}},guaranteeRange:function(d,e,b,c,a){a=Ext.apply({callback:b,scope:c},a);this.getRange(d,e+1,a)},prefetchRange:function(c,d){var a=this,e,f,b,g=a.getData();if(!a.rangeCached(c,d)){e=a.getPageFromRecordIndex(c);f=a.getPageFromRecordIndex(d);g.setMaxSize(a.calculatePageCacheSize(d-c+1));for(b=e;b<=f;b++){if(!a.pageCached(b)){a.prefetchPage(b)}}}},primeCache:function(a,b,g){var c=this,f=c.getLeadingBufferZone(),e=c.getTrailingBufferZone(),h=c.getPageSize(),d=c.totalCount;if(g===-1){a=Math.max(a-f,0);b=Math.min(b+e,d-1)}else {if(g===1){a=Math.max(Math.min(a-e,d-h),0);b=Math.min(b+f,d-1)}else {a=Math.min(Math.max(Math.floor(a-(f+e)/2),0),d-c.pageSize);b=Math.min(Math.max(Math.ceil(b+(f+e)/2),0),d-1)}}c.prefetchRange(a,b)},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){if(this.isLoadBlocked()){return}this.getData().clear();this.loadPage(1,a)},privates:{isLast:function(a){return this.indexOf(a)===this.getTotalCount()-1},isMoving:function(){return !1}}},0,0,0,0,['store.buffered'],0,[Ext.data,'BufferedStore'],0);Ext.cmd.derive('Ext.data.Request',Ext.Base,{config:{action:undefined,params:undefined,method:'GET',url:null,operation:null,proxy:null,disableCaching:!1,headers:{},callbackKey:null,rawRequest:null,jsonData:undefined,xmlData:undefined,withCredentials:!1,username:null,password:null,binary:!1,callback:null,scope:null,timeout:30000,records:null,directFn:null,args:null,useDefaultXhrHeader:null},constructor:function(a){this.initConfig(a)},getParam:function(b){var a=this.getParams(),c;if(a){return a[b]}return c},setParam:function(c,b){var a=this.getParams()||{};a[c]=b;this.setParams(a)}},1,0,0,0,0,0,[Ext.data,'Request'],0);Ext.cmd.derive('Ext.data.Validation',Ext.data.Model,{isValidation:!0,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(q){var d=this,i=d.data,e=d.record,m=e.fields,l=e.generation,p=e.data,r=e.validationSeparator,f=null,k,h,a,c,s,g,u,t,n,j,o,b;if(q||d.syncGeneration!==l){d.syncGeneration=l;for(g=0,n=m.length;g<n;++g){c=m[g];b=c.name;o=p[b];k=c.defaultInvalidMessage;a=0;if(!(b in i)){i[b]=h=!0}else {h=i[b]}if(c.validate!==Ext.emptyFn){j=c.validate(o,r);if(j!==!0){a=j||k}}if(!a){a=!0}if(a!==h){(f||(f={}))[b]=a}}if(f){d.set(f)}}}},0,0,0,0,0,0,[Ext.data,'Validation'],0);Ext.cmd.derive('Ext.dom.Helper',Ext.Base,function(){var b='afterbegin',d='afterend',a='beforebegin',c='beforeend',g=['BeforeBegin','previousSibling'],f=['AfterEnd','nextSibling'],e={beforebegin:g,afterend:f},h={beforebegin:g,afterend:f,afterbegin:['AfterBegin','firstChild'],beforeend:['BeforeEnd','lastChild']};return {singleton:!0,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 b=/([a-z])([A-Z])/g,a={};function decamel(c,a,b){return a+'-'+b.toLowerCase()}return function(c){return a[c]||(a[c]=c.replace(b,decamel))}}(),generateMarkup:function(a,b){var e=this,i=typeof a,d,c,f,g,h;if(i==='string'||i==='number'){b.push(a)}else {if(Ext.isArray(a)){for(g=0;g<a.length;g++){if(a[g]){e.generateMarkup(a[g],b)}}}else {f=a.tag||'div';b.push('<',f);for(d in a){if(a.hasOwnProperty(d)){c=a[d];if(c!==undefined&&!e.confRe.test(d)){if(typeof c==='object'){b.push(' ',d,'="');e.generateStyles(c,b,!0).push('"')}else {b.push(' ',e.attributeTransform[d]||d,'="',c,'"')}}}}if(e.emptyTags.test(f)){b.push('/>')}else {b.push('>');if(c=a.tpl){c.applyOut(a.tplData,b)}if(c=a.html){b.push(c)}if(c=a.cn||a.children){e.generateMarkup(c,b)}h=e.closeTags;b.push(h[f]||(h[f]='</'+f+'>'))}}}return b},generateStyles:function(c,d,f){var e=d||[],a,b;for(a in c){if(c.hasOwnProperty(a)){b=c[a];a=this.decamelizeName(a);if(f&&Ext.String.hasHtmlCharacters(b)){b=Ext.String.htmlEncode(b)}e.push(a,':',b,';')}}return d||e.join('')},markup:function(a){if(typeof a==='string'){return a}var b=this.generateMarkup(a,[]);return b.join('')},applyStyles:function(b,a){Ext.fly(b).applyStyles(a)},createContextualFragment:function(e){var d=this.detachedDiv,b=document.createDocumentFragment(),c,a;d.innerHTML=e;a=d.childNodes;c=a.length;while(c--){b.appendChild(a[0])}return b},createDom:function(e,f){var c=this,d=c.markup(e),b=c.detachedDiv,a;b.innerHTML=d;a=b.firstChild;return Ext.supports.ChildContentClearedWhenSettingInnerHTML?a.cloneNode(!0):a},insertHtml:function(g,f,j){var o=this,l,k,n,m,i;g=g.toLowerCase();if(f.insertAdjacentHTML){if(o.ieInsertHtml){i=o.ieInsertHtml(g,f,j);if(i){return i}}l=h[g];if(l){f.insertAdjacentHTML(l[0],j);return f[l[1]]}}else {if(f.nodeType===3){g=g===b?a:g;g=g===c?d:g}k=Ext.supports.CreateContextualFragment?f.ownerDocument.createRange():undefined;m='setStart'+(this.endRe.test(g)?'After':'Before');if(e[g]){if(k){k[m](f);i=k.createContextualFragment(j)}else {i=this.createContextualFragment(j)}f.parentNode.insertBefore(i,g===a?f:f.nextSibling);return f[(g===a?'previous':'next')+'Sibling']}else {n=(g===b?'first':'last')+'Child';if(f.firstChild){if(k){try{k[m](f[n]);i=k.createContextualFragment(j)}catch(p){i=this.createContextualFragment(j)}}else {i=this.createContextualFragment(j)}if(g===b){f.insertBefore(i,f.firstChild)}else {f.appendChild(i)}}else {f.innerHTML=j}return f[n]}}},insertBefore:function(c,d,b){return this.doInsert(c,d,b,a)},insertAfter:function(b,c,a){return this.doInsert(b,c,a,d)},insertFirst:function(c,d,a){return this.doInsert(c,d,a,b)},append:function(b,d,a){return this.doInsert(b,d,a,c)},overwrite:function(b,c,e){var d=this,a;b=Ext.getDom(b);c=d.markup(c);if(d.ieOverwrite){a=d.ieOverwrite(b,c)}if(!a){b.innerHTML=c;a=b.firstChild}return e?Ext.get(a):a},doInsert:function(f,j,k,g){var i=this,h;f=f.dom||Ext.getDom(f);if('innerHTML' in f){h=i.insertHtml(g,f,i.markup(j))}else {h=i.createDom(j,null);if(f.nodeType===3){g=g===b?a:g;g=g===c?d:g}if(e[g]){f.parentNode.insertBefore(h,g===a?f:f.nextSibling)}else {if(f.firstChild&&g===b){f.insertBefore(h,f.firstChild)}else {f.appendChild(h)}}}return k?Ext.get(h):h},createTemplate:function(b){var a=this.markup(b);return new Ext.Template(a)},createHtml:function(a){return this.markup(a)}}},0,0,0,0,0,0,[Ext.dom,'Helper',Ext,'DomHelper',Ext.core,'DomHelper'],0);Ext.define('Ext.overrides.dom.Helper',function(){var a=/^(?:table|thead|tbody|tr|td)$/i,f=/td|tr|tbody|thead/i,e='<table>',d='</table>',c=e+'<tbody>',b='</tbody>'+d,h=c+'<tr>',g='</tr>'+b;return {override:'Ext.dom.Helper',ieInsertHtml:function(d,b,e){var c=null;if(Ext.isIE9m&&a.test(b.tagName)){c=this.insertIntoTable(b.tagName.toLowerCase(),d,b,e)}return c},ieOverwrite:function(b,c){if(Ext.isIE9m&&a.test(b.tagName)){while(b.firstChild){b.removeChild(b.firstChild)}if(c){return this.insertHtml('afterbegin',b,c)}}},ieTable:function(g,f,e,d){var h=-1,a=this.detachedDiv,b,c;a.innerHTML=[f,e,d].join('');while(++h<g){a=a.firstChild}b=a.nextSibling;if(b){b=a;a=document.createDocumentFragment();while(b){c=b.nextSibling;a.appendChild(b);b=c}}return a},insertIntoTable:function(a,k,i,o){var j,q,n=k==='beforebegin',l=k==='afterbegin',p=k==='beforeend',m=k==='afterend';if(a==='td'&&(l||p)||!f.test(a)&&(n||m)){return null}q=n?i:m?i.nextSibling:l?i.firstChild:null;if(n||m){i=i.parentNode}if(a==='td'||a==='tr'&&(p||l)){j=this.ieTable(4,h,o,g)}else {if((a==='tbody'||a==='thead')&&(p||l)||a==='tr'&&(n||m)){j=this.ieTable(3,c,o,b)}else {j=this.ieTable(2,e,o,d)}}i.insertBefore(j,q);return j}}}());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(g){var a=this,f=g.getRecords(),i=f.length,h=a.getIds(),c,b,d,e;if(a.isHierarchical===undefined){a.isHierarchical=!!f[0].isNode;if(a.isHierarchical){a.getStorageObject().setItem(a.getTreeKey(),!0)}}for(d=0;d<i;d++){b=f[d];if(b.phantom){b.phantom=!1;e=b.identifier;if(e&&e.isUnique){c=b.getId()}else {c=a.getNextId()}}else {c=b.getId()}a.setRecord(b,c);b.commit();h.push(c)}a.setIds(h);g.setSuccessful(!0)},read:function(a){var e=this,h,f=[],t=!0,j=e.getModel(),r=0,g=a.getRecordCreator(),i,l,n,s,o,b,p,m,d,q,c,k;if(e.isHierarchical){f=e.getTreeData()}else {p=e.getIds();m=p.length;q=a.getId();if(q){d=e.getRecord(q);if(d!==null){b=g?g(d,j):new j(d)}if(b){f.push(b)}else {t=!1}}else {l=a.getSorters();i=a.getFilters();n=a.getLimit();h=[];for(c=0;c<m;c++){d=e.getRecord(p[c]);b=g?g(d,j):new j(d);h.push(b)}if(l){Ext.Array.sort(h,Ext.util.Sorter.createComparator(l))}for(c=a.getStart()||0;c<m;c++){b=h[c];o=!0;if(i){for(k=0,s=i.length;k<s;k++){o=i[k].filter(b)}}if(o){f.push(b);r++}if(n&&r===n){break}}}}if(t){a.setResultSet(new Ext.data.ResultSet({records:f,total:f.length,loaded:!0}));a.setSuccessful(!0)}else {a.setException('Unable to load records')}},update:function(e){var f=e.getRecords(),g=f.length,d=this.getIds(),a,b,c;for(c=0;c<g;c++){a=f[c];this.setRecord(a);a.commit();b=a.getId();if(b!==undefined&&Ext.Array.indexOf(d,b)===-1){d.push(b)}}this.setIds(d);e.setSuccessful(!0)},erase:function(e){var c=this,f=e.getRecords(),h=c.getIds(),i=h.length,g=[],d={},a=f.length,b;for(;a--;){Ext.apply(d,c.removeRecord(f[a]))}for(a=0;a<i;a++){b=h[a];if(!d[b]){g.push(b)}}c.setIds(g);e.setSuccessful(!0)},getRecord:function(a){var c=this,d=c.cache,b=!d[a]?Ext.decode(c.getStorageObject().getItem(c.getRecordKey(a))):d[a];if(!b){return null}d[a]=b;b[c.getModel().prototype.idProperty]=a;return Ext.merge({},b)},setRecord:function(a,c){if(c){a.set('id',c,{commit:!0})}else {c=a.getId()}var d=this,l=a.getData(),b={},k=d.getModel(),j=k.getFields(),m=j.length,i=0,e,f,h,g;for(;i<m;i++){e=j[i];f=e.name;if(e.persist){b[f]=l[f]}}delete b[k.prototype.idProperty];if(a.isNode&&a.get('depth')===1){delete b.parentId}h=d.getStorageObject();g=d.getRecordKey(c);d.cache[c]=b;h.removeItem(g);h.setItem(g,Ext.encode(b))},removeRecord:function(a){var b=this,e=a.getId(),d={},f,c;d[e]=a;b.getStorageObject().removeItem(b.getRecordKey(e));delete b.cache[e];if(a.childNodes){c=a.childNodes;for(f=c.length;f--;){Ext.apply(d,b.removeRecord(c[f]))}}return d},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 d=this,a=(d.getStorageObject().getItem(d.getId())||'').split(','),c=a.length,e=this.getIdField().isStringField,b;if(c===1&&a[0]===''){a=[]}else {for(b=0;b<c;b++){a[b]=e?a[b]:+a[b]}}return a},getIdField:function(){return this.getModel().prototype.idField},setIds:function(d){var a=this.getStorageObject(),b=d.join(','),c=this.getId();a.removeItem(c);if(!Ext.isEmpty(b)){a.setItem(c,b)}},getNextId:function(){var b=this,e=b.getStorageObject(),d=b.getRecordCounterKey(),c=b.getIdField().isStringField,a;a=b.idGenerator.generate();e.setItem(d,a);if(c){a=a+''}return a},getTreeData:function(){var f=this,n=f.getIds(),i=n.length,d=[],k={},c=[],b=0,m=f.getModel(),o=m.prototype.idProperty,g,a,e,h,l,j;for(;b<i;b++){j=n[b];a=f.getRecord(j);d.push(a);k[j]=a;if(!a.parentId){c.push(a)}}g=c.length;Ext.Array.sort(d,f.sortByParentId);for(b=g;b<i;b++){a=d[b];h=a.parentId;if(!e||e[o]!==h){e=k[h];e.children=l=[]}l.push(a)}for(b=i;b--;){a=d[b];if(!a.children&&!a.leaf){a.loaded=!0}}for(b=g;b--;){a=c[b];c[b]=new m(a)}return c},sortByParentId:function(a,b){return (a.parentId||0)-(b.parentId||0)},initialize:function(){var a=this,b=a.getStorageObject(),c=+b.getItem(a.getRecordCounterKey()),d=a.getId();b.setItem(d,b.getItem(d)||'');if(b.getItem(a.getTreeKey())){a.isHierarchical=!0}a.idGenerator=new Ext.data.identifier.Sequential({seed:c?c+1:1})},clear:function(){var a=this,b=a.getStorageObject(),d=a.getIds(),e=d.length,c;for(c=0;c<e;c++){b.removeItem(a.getRecordKey(d[c]))}b.removeItem(a.getRecordCounterKey());b.removeItem(a.getTreeKey());b.removeItem(a.getId());a.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.dom.GarbageCollector',Ext.Base,{singleton:!0,interval:30000,constructor:function(){var a=this;a.collect=Ext.Function.bind(a.collect,a);a.lastTime=Ext.now();a.resume()},collect:function(){var g=this,b=Ext.cache,a,f,c,d,e,h;for(a in b){if(!b.hasOwnProperty(a)){continue}c=b[a];if(c.skipGarbageCollection){continue}f=c.dom;try{e=Ext.isGarbage(f)}catch(i){delete b[a];continue}if(e){if(c&&c.dom){c.collect()}}}if(Ext.isIE9m){d={};for(a in b){if(b.hasOwnProperty(a)){d[a]=b[a]}}Ext.cache=Ext.dom.Element.cache=d}g.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 !1},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 !1}},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 a=this,b;if(Ext.event.gesture.SingleTouch.prototype.onTouchStart.apply(this,arguments)===!1){return !1}b=a.lastStartPoint=c.changedTouches[0].point;a.startPoint=a.startPoint||b;a.startTime=c.time;clearTimeout(a.singleTapTimer)},onTouchMove:function(c){var a=this,b=c.changedTouches[0].point;if(Math.abs(b.getDistanceTo(a.lastStartPoint))>=a.getMoveDistance()){a.startPoint=null;return a.fail(a.self.TOUCH_MOVED)}},onTouchEnd:function(b){var a=this,f=a.getMaxDuration(),d=b.time,g=b.target,e=a.lastTapTime,h=a.lastTarget,i=b.changedTouches[0].point,c;a.lastTapTime=d;a.lastTarget=g;if(e){c=d-e;if(c<=f&&Math.abs(i.getDistanceTo(a.startPoint))<=a.getTapDistance()){if(g!==h){return a.fail(a.self.DIFFERENT_TARGET)}a.lastTarget=null;a.lastTapTime=0;a.fire('doubletap',b,{touch:b.changedTouches[0],duration:c});a.startPoint=null;return}}if(d-a.startTime>f){a.fireSingleTap(b)}else {a.setSingleTapTimer(b)}},setSingleTapTimer:function(b){var a=this;a.singleTapTimer=Ext.defer(function(){a.fireSingleTap(b)},a.getMaxDuration())},fireSingleTap:function(b,a){this.fire('singletap',b,{touch:a});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:!1,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)===!1){if(this.isStarted&&this.lastMoveEvent!==null){this.lastMoveEvent.isStopped=!1;this.onTouchEnd(this.lastMoveEvent)}return !1}this.startTime=a.time;this.startPoint=a.changedTouches[0].point},tryDragStart:function(a){var f=this.startPoint,b=a.changedTouches[0],c=b.point,e=this.getMinDistance(),d=this.info;if(Math.abs(c.getDistanceTo(f))>=e){this.isStarted=!0;this.previousPoint=this.lastPoint=c;this.resetInfo('x',a,b);this.resetInfo('y',a,b);d.time=a.time;this.fire('dragstart',a,d)}},onTouchMove:function(a){if(!this.isStarted){this.tryDragStart(a)}if(!this.isStarted){return}var b=a.changedTouches[0],c=b.point;if(this.lastPoint){this.previousPoint=this.lastPoint}this.lastPoint=c;this.lastMoveEvent=a;this.updateInfo('x',a,b);this.updateInfo('y',a,b);this.info.time=a.time;this.fire('drag',a,this.info)},onAxisDragEnd:function(b,a){var c=a.time-a.previousTime[b];if(c>0){a.flick.velocity[b]=(a[b]-a.previous[b])/c}},resetInfo:function(b,h,g){var f=this.lastPoint[b],d=this.startPoint[b],e=f-d,c=b.toUpperCase(),a=this.info;a.touch=g;a.delta[b]=e;a.absDelta[b]=Math.abs(e);a.previousTime[b]=this.startTime;a.previous[b]=d;a[b]=f;a.direction[b]=0;a['start'+c]=this.startPoint[b];a['previous'+c]=a.previous[b];a['page'+c]=a[b];a['delta'+c]=a.delta[b];a['absDelta'+c]=a.absDelta[b];a['previousDelta'+c]=0;a.startTime=this.startTime},updateInfo:function(b,l,k){var e=this,d=e.lastPoint[b],g=e.previousPoint[b],f=e.startPoint[b],i=d-f,a=e.info,h=a.direction,c=b.toUpperCase(),j=a.previous[b];a.touch=k;a.delta[b]=i;a.absDelta[b]=Math.abs(i);if(d!==j&&d!==a[b]){a.previous[b]=a[b];a.previousTime[b]=a.time}a[b]=d;if(d>g){h[b]=1}else {if(d<g){h[b]=-1}}a['start'+c]=f;a['previous'+c]=a.previous[b];a['page'+c]=a[b];a['delta'+c]=a.delta[b];a['absDelta'+c]=a.absDelta[b];a['previousDelta'+c]=a.previous[b]-f;a.startTime=e.startTime},onTouchEnd:function(a){this.doEnd(a)},onTouchCancel:function(a){this.doEnd(a,!0);return !1},doEnd:function(a,d){if(!this.isStarted){this.tryDragStart(a)}if(this.isStarted){var c=a.changedTouches[0],e=c.point,b=this.info;this.isStarted=!1;this.lastPoint=e;this.updateInfo('x',a,c);this.updateInfo('y',a,c);b.time=a.time;this.onAxisDragEnd('x',b);this.onAxisDragEnd('y',b);this.fire(d?'dragcancel':'dragend',a,b);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(b){var a=Ext.manifest.gestures;b.instance=new b(a&&a.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(b){if(Ext.event.gesture.SingleTouch.prototype.onTouchStart.apply(this,arguments)===!1){return !1}var a=b.changedTouches[0];this.startTime=b.time;this.isHorizontal=!0;this.isVertical=!0;this.startX=a.pageX;this.startY=a.pageY},onTouchMove:function(b){var f=b.changedTouches[0],h=f.pageX,i=f.pageY,k=h-this.startX,l=i-this.startY,c=Math.abs(h-this.startX),d=Math.abs(i-this.startY),j=b.time-this.startTime,g=this.getMinDistance(),m=b.time,a,e;if(m-this.startTime>this.getMaxDuration()){return this.fail(this.self.MAX_DURATION_EXCEEDED)}if(this.isHorizontal&&d>this.getMaxOffset()){this.isHorizontal=!1}if(this.isVertical&&c>this.getMaxOffset()){this.isVertical=!1}if(!this.isVertical||!this.isHorizontal){if(this.isHorizontal&&c<g){a=k<0?'left':'right';e=c}else {if(this.isVertical&&d<g){a=l<0?'up':'down';e=d}}}if(a&&!this.started){this.started=!0;this.fire('swipestart',b,{touch:f,direction:a,distance:e,duration:j})}if(!this.isHorizontal&&!this.isVertical){return this.fail(this.self.MAX_OFFSET_EXCEEDED)}},onTouchEnd:function(a){if(this.onTouchMove(a)===!1){return !1}var d=a.changedTouches[0],k=d.pageX,l=d.pageY,h=k-this.startX,i=l-this.startY,f=Math.abs(h),g=Math.abs(i),e=this.getMinDistance(),j=a.time-this.startTime,b,c;if(this.isVertical&&g<e){this.isVertical=!1}if(this.isHorizontal&&f<e){this.isHorizontal=!1}if(this.isHorizontal){b=h<0?'left':'right';c=f}else {if(this.isVertical){b=i<0?'up':'down';c=g}else {return this.fail(this.self.DISTANCE_NOT_ENOUGH)}}this.started=!1;this.fire('swipe',a,{touch:d,direction:b,distance:c,duration:j})},onTouchCancel:function(a){this.fire('swipecancel',a);return !1},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(b){var a=Ext.manifest.gestures;b.instance=new b(a&&a.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(b){if(Ext.event.gesture.Swipe.prototype.onTouchStart.apply(this,arguments)===!1){return !1}var a=b.changedTouches[0];this.started=!1;this.direction=null;this.isHorizontal=!0;this.isVertical=!0;this.startX=a.pageX;this.startY=a.pageY},onTouchMove:function(c){var e=c.changedTouches[0],l=e.pageX,m=e.pageY,f=l-this.startX,g=m-this.startY,i=Math.abs(m-this.startY),h=Math.abs(l-this.startX),d=this.getMinDistance(),j=this.getMaxOffset(),k=c.time-this.startTime,o=Ext.Viewport&&Ext.Element.getViewportWidth(),n=Ext.Viewport&&Ext.Element.getViewportHeight(),a,b;if(this.isVertical&&h>j){this.isVertical=!1}if(this.isHorizontal&&i>j){this.isHorizontal=!1}if(this.isVertical&&this.isHorizontal){if(i>h){this.isHorizontal=!1}else {this.isVertical=!1}}if(this.isHorizontal){a=f<0?'left':'right';b=f}else {if(this.isVertical){a=g<0?'up':'down';b=g}}a=this.direction||(this.direction=a);if(a==='up'){b=g*-1}else {if(a==='left'){b=f*-1}}this.distance=b;if(!b){return this.fail(this.self.DISTANCE_NOT_ENOUGH)}if(!this.started){if(a==='right'&&this.startX>d){return this.fail(this.self.NOT_NEAR_EDGE)}else {if(a==='down'&&this.startY>d){return this.fail(this.self.NOT_NEAR_EDGE)}else {if(a==='left'&&o-this.startX>d){return this.fail(this.self.NOT_NEAR_EDGE)}else {if(a==='up'&&n-this.startY>d){return this.fail(this.self.NOT_NEAR_EDGE)}}}}this.started=!0;this.startTime=c.time;this.fire('edgeswipestart',c,{touch:e,direction:a,distance:b,duration:k})}else {this.fire('edgeswipe',c,{touch:e,direction:a,distance:b,duration:k})}},onTouchEnd:function(a){var b;if(this.onTouchMove(a)!==!1){b=a.time-this.startTime;this.fire('edgeswipeend',a,{touch:a.changedTouches[0],direction:this.direction,distance:this.distance,duration:b})}},onTouchCancel:function(a){this.fire('edgeswipecancel',a,{touch:a.changedTouches[0]});return !1},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=!0},onTouchStart:function(a){if(Ext.event.gesture.SingleTouch.prototype.onTouchStart.apply(this,arguments)===!1){return !1}this.startPoint=a.changedTouches[0].point;this.isLongPress=!1;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(b){if(b==='longpress'){var a=Array.prototype.slice.call(arguments);a[0]='taphold';this.fire.apply(this,a)}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:!1,isStarted:!1,onTouchStart:function(a){var b=this.requiredTouchesCount,d=a.touches,c=d.length;if(c===b){this.start(a)}else {if(c>b){this.end(a)}}},onTouchEnd:function(a){this.end(a)},onTouchCancel:function(a){this.end(a,!0);return !1},start:function(){if(!this.isTracking){this.isTracking=!0;this.isStarted=!1}},end:function(b,a){if(this.isTracking){this.isTracking=!1;if(this.isStarted){this.isStarted=!1;this[a?'fireCancel':'fireEnd'](b)}}},reset:function(){this.isTracking=this.isStarted=!1}},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,e,d,a;e=b[0].point;d=b[1].point;a=e.getDistanceTo(d);if(a===0){return}if(!this.isStarted){this.isStarted=!0;this.startDistance=a;this.fire('pinchstart',c,{touches:b,distance:a,scale:1})}else {this.fire('pinch',c,{touches:b,distance:a,scale:a/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(b){var a=Ext.manifest.gestures;b.instance=new b(a&&a.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(g){if(!this.isTracking){return}var b=g.touches,c=this.lastAngle,i,h,a,e,d,f;i=b[0].point;h=b[1].point;a=i.getAngleTo(h);if(c!==null){f=Math.abs(c-a);e=a+360;d=a-360;if(Math.abs(e-c)<f){a=e}else {if(Math.abs(d-c)<f){a=d}}}this.lastAngle=a;if(!this.isStarted){this.isStarted=!0;this.startAngle=a;this.fire('rotatestart',g,{touches:b,angle:a,rotation:0})}else {this.fire('rotate',g,{touches:b,angle:a,rotation:a-this.startAngle})}this.lastTouches=Ext.Array.clone(b)},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(b){var a=Ext.manifest.gestures;b.instance=new b(a&&a.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)===!1){return !1}this.startPoint=a.changedTouches[0].point},onTouchMove:function(b){var a=b.changedTouches[0],c=a.point;if(Math.abs(c.getDistanceTo(this.startPoint))>=this.getMoveDistance()){this.fire('tapcancel',b,{touch:a});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 !1},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':!0,'background-image':!0,'background-position':!0,'border-bottom-color':!0,'border-bottom-width':!0,'border-color':!0,'border-left-color':!0,'border-left-width':!0,'border-right-color':!0,'border-right-width':!0,'border-spacing':!0,'border-top-color':!0,'border-top-width':!0,'border-width':!0,'bottom':!0,'color':!0,'crop':!0,'font-size':!0,'font-weight':!0,'height':!0,'left':!0,'letter-spacing':!0,'line-height':!0,'margin-bottom':!0,'margin-left':!0,'margin-right':!0,'margin-top':!0,'max-height':!0,'max-width':!0,'min-height':!0,'min-width':!0,'opacity':!0,'outline-color':!0,'outline-offset':!0,'outline-width':!0,'padding-bottom':!0,'padding-left':!0,'padding-right':!0,'padding-top':!0,'right':!0,'text-indent':!0,'text-shadow':!0,'top':!0,'vertical-align':!0,'visibility':!0,'width':!0,'word-spacing':!0,'z-index':!0,'zoom':!0,'transform':!0},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(d,a){var g=this.data,e=Ext.isArray(a),b=g.transform,c,f;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 d=='string'){switch(d){case 'translate':if(e){c=a.length;if(c==0){break}b.translateX=a[0];if(c==1){break}b.translateY=a[1];if(c==2){break}b.translateZ=a[2]}else {b.translateX=a};break;case 'rotate':if(e){c=a.length;if(c==0){break}b.rotateX=a[0];if(c==1){break}b.rotateY=a[1];if(c==2){break}b.rotateZ=a[2]}else {b.rotate=a};break;case 'scale':if(e){c=a.length;if(c==0){break}b.scaleX=a[0];if(c==1){break}b.scaleY=a[1];if(c==2){break}b.scaleZ=a[2]}else {b.scaleX=a;b.scaleY=a};break;case 'skew':if(e){c=a.length;if(c==0){break}b.skewX=a[0];if(c==1){break}b.skewY=a[1]}else {b.skewX=a};break;default:b[d]=a;}}else {for(f in d){if(d.hasOwnProperty(f)){a=d[f];this.setTransform(f,a)}}}},set:function(b,a){var d=this.data,c;if(typeof b!='string'){for(c in b){a=b[c];if(c==='transform'){this.setTransform(a)}else {d[c]=a}}}else {if(b==='transform'){this.setTransform(a)}else {d[b]=a}}return this},unset:function(b){var a=this.data;if(a.hasOwnProperty(b)){delete a[b]}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:!0,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:!1,replacePrevious:!0},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(a,b){if(a){return Ext.factory(a,Ext.fx.State,b)}},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(b){var c=this.stateNameRegex,a;for(a in b){if(c.test(a)){this.setState(a,b[a])}}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(c,d){var b=this.getStates(),a;a=Ext.factory(d,Ext.fx.State,b[c]);if(a){b[c]=a}return this},getState:function(a){return this.getStates()[a]},getData:function(){var a=this.getStates(),c={},e=this.getBefore(),f=this.getAfter(),j=a[this.STATE_FROM],k=a[this.STATE_TO],d=j.getData(),i=k.getData(),h,b,g;for(b in a){if(a.hasOwnProperty(b)){g=a[b];h=g.getData();c[b]=h}}if(Ext.browser.is.AndroidStock2){c['0.0001%']=d}return {before:e?e.getData():{},after:f?f.getData():{},states:c,from:d,to:i,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:!1,offset:0,easing:'auto',containerBox:'auto',elementBox:'auto',isElementBoxFit:!0,useCssTransform:!0},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 o=this.getElementBox(),b=this.getContainerBox(),a=o?o:b,j=this.getFrom(),m=this.getTo(),d=this.getOut(),c=this.getOffset(),g=this.getDirection(),n=this.getUseCssTransform(),p=this.getReverse(),e=0,f=0,h,i,k,l;if(p){g=this.reverseDirectionMap[g]}switch(g){case this.DIRECTION_UP:if(d){f=b.top-a.top-a.height-c}else {f=b.bottom-a.bottom+a.height+c};break;case this.DIRECTION_DOWN:if(d){f=b.bottom-a.bottom+a.height+c}else {f=b.top-a.height-a.top-c};break;case this.DIRECTION_RIGHT:if(d){e=b.right-a.right+a.width+c}else {e=b.left-a.left-a.width-c};break;case this.DIRECTION_LEFT:if(d){e=b.left-a.left-a.width-c}else {e=b.right-a.right+a.width+c};break;}h=d?0:e;i=d?0:f;if(n){j.setTransform({translateX:h,translateY:i})}else {j.set('left',h);j.set('top',i)}k=d?e:0;l=d?f:0;if(n){m.setTransform({translateX:k,translateY:l})}else {m.set('left',k);m.set('top',l)}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:!0}},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:!1,before:{display:null,opacity:0},after:{opacity:null},reverse:null},updateOut:function(c){var b=this.getTo(),a=this.getFrom();if(c){a.set('opacity',1);b.set('opacity',0)}else {a.set('opacity',0);b.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:!0,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:!1,out:null},getData:function(){var j=this.getFrom(),l=this.getTo(),i=this.getDirection(),b=this.getOut(),k=this.getHalf(),a=k?90:180,g=1,h=1,c=0,d=0,e=0,f=0;if(b){h=0.8}else {g=0.8}switch(i){case this.DIRECTION_UP:if(b){e=a}else {c=-a};break;case this.DIRECTION_DOWN:if(b){e=-a}else {c=a};break;case this.DIRECTION_RIGHT:if(b){f=a}else {d=-a};break;case this.DIRECTION_LEFT:if(b){f=-a}else {d=a};break;}j.setTransform({rotateX:c,rotateY:d,scale:g});l.setTransform({rotateX:e,rotateY:f,scale:h});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:!1,before:{display:null,opacity:0},after:{opacity:null}},getData:function(){var b=this.getTo(),a=this.getFrom(),c=this.getOut();if(c){a.set('opacity',1);a.setTransform({scale:1});b.set('opacity',0);b.setTransform({scale:0})}else {a.set('opacity',0);a.setTransform({scale:0});b.set('opacity',1);b.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:!0,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 c=Ext.fx.animation.Abstract,a;if(typeof b=='string'){a=b;b={}}else {if(b&&b.type){a=b.type}}if(a){if(Ext.browser.is.AndroidStock2){if(a=='pop'){a='fade'}if(a=='popIn'){a='fadeIn'}if(a=='popOut'){a='fadeOut'}}c=Ext.ClassManager.getByAlias('animation.'+a)}return Ext.factory(b,c)}},1,0,0,0,0,0,[Ext.fx,'Animation'],0);Ext.cmd.derive('Ext.fx.runner.Css',Ext.Evented,{prefixedProperties:{'transform':!0,'transform-origin':!0,'perspective':!0,'transform-style':!0,'transition':!0,'transition-property':!0,'transition-duration':!0,'transition-timing-function':!0,'transition-delay':!0,'animation':!0,'animation-name':!0,'animation-duration':!0,'animation-iteration-count':!0,'animation-direction':!0,'animation-timing-function':!0,'animation-delay':!0},lengthProperties:{'top':!0,'right':!0,'bottom':!0,'left':!0,'width':!0,'height':!0,'max-height':!0,'max-width':!0,'min-height':!0,'min-width':!0,'margin-bottom':!0,'margin-left':!0,'margin-right':!0,'margin-top':!0,'padding-bottom':!0,'padding-left':!0,'padding-right':!0,'padding-top':!0,'border-bottom-width':!0,'border-left-width':!0,'border-right-width':!0,'border-spacing':!0,'border-top-width':!0,'border-width':!0,'outline-width':!0,'letter-spacing':!0,'line-height':!0,'text-indent':!0,'word-spacing':!0,'font-size':!0,'translate':!0,'translateX':!0,'translateY':!0,'translateZ':!0,'translate3d':!0},durationProperties:{'transition-duration':!0,'transition-delay':!0,'animation-duration':!0,'animation-delay':!0},angleProperties:{rotate:!0,rotateX:!0,rotateY:!0,rotateZ:!0,skew:!0,skewX:!0,skewY:!0},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(j){var i=this.getStyleSheet(),h=this.ruleStylesCache,k=i.cssRules,d,g,b,c,f,a,e;for(d in j){g=j[d];b=h[d];if(b===undefined){f=k.length;i.insertRule(d+'{}',f);b=h[d]=k.item(f).style}c=b.$cache;if(!c){c=b.$cache={}}for(a in g){e=this.formatValue(g[a],a);a=this.formatName(a);if(c[a]!==e){c[a]=e;if(e===null){b.removeProperty(a)}else {b.setProperty(a,e,'important')}}}}return this},applyStyles:function(f){var c,e,d,b,a,g;for(c in f){if(f.hasOwnProperty(c)){e=document.getElementById(c);if(!e){return this}d=e.style;b=f[c];for(a in b){if(b.hasOwnProperty(a)){g=this.formatValue(b[a],a);a=this.formatName(a);if(g===null){d.removeProperty(a)}else {d.setProperty(a,g,'important')}}}}}return this},formatName:function(b){var c=this.formattedNameCache,a=c[b];if(!a){if((Ext.os.is.Tizen||!Ext.feature.has.CssTransformNoPrefix)&&this.prefixedProperties[b]){a=this.vendorPrefix+b}else {a=b}c[b]=a}return a},formatValue:function(a,c){var j=typeof a,i=this.DEFAULT_UNIT_LENGTH,g,d,b,f,h,e,k;if(a===null){return ''}if(j=='string'){if(this.lengthProperties[c]){k=a.match(this.lengthUnitRegex)[1];if(k.length>0){}else {return a+i}}return a}else {if(j=='number'){if(a==0){return '0'}if(this.lengthProperties[c]){return a+i}if(this.angleProperties[c]){return a+this.DEFAULT_UNIT_ANGLE}if(this.durationProperties[c]){return a+this.DEFAULT_UNIT_DURATION}}else {if(c==='transform'){g=this.transformMethods;h=[];for(b=0,f=g.length;b<f;b++){d=g[b];h.push(d+'('+this.formatValue(a[d],d)+')')}return h.join(' ')}else {if(Ext.isArray(a)){e=[];for(b=0,f=a.length;b<f;b++){e.push(this.formatValue(a[b],c))}return e.length>0?e.join(', '):'none'}}}}return a}},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:!0,listenersAttached:!1,constructor:function(){this.runningAnimationsData={};return this.callParent(arguments)},attachListeners:function(){this.listenersAttached=!0;Ext.getWin().on('transitionend','onTransitionEnd',this)},onTransitionEnd:function(c){var a=c.target,b=a.id;if(b&&this.runningAnimationsData.hasOwnProperty(b)){this.refreshRunningAnimationsData(Ext.get(a),[c.browserEvent.propertyName])}},onAnimationEnd:function(d,a,b,c,n){var l=d.getId(),j=this.runningAnimationsData[l],k={},h={},g,f,e,m,i;b.un('stop','onAnimationStop',this);if(j){g=j.nameMap}k[l]=h;if(a.onBeforeEnd){a.onBeforeEnd.call(a.scope||this,d,c)}b.fireEvent('animationbeforeend',b,d,c);this.fireEvent('animationbeforeend',this,b,d,c);if(n||!c&&!a.preserveEndState){f=a.toPropertyNames;for(e=0,m=f.length;e<m;e++){i=f[e];if(g&&!g.hasOwnProperty(i)){h[i]=null}}}if(a.after){Ext.merge(h,a.after)}this.applyStyles(k);if(a.onEnd){a.onEnd.call(a.scope||this,d,c)}b.fireEvent('animationend',b,d,c);this.fireEvent('animationend',this,b,d,c);Ext.AnimationQueue.stop(Ext.emptyFn,b)},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(c){var b=c.getId(),a=this.runningAnimationsData;return a.hasOwnProperty(b)&&a[b].sessions.length>0},refreshRunningAnimationsData:function(i,m,f,g){var s=i.getId(),r=this.runningAnimationsData,e=r[s];if(!e){return}var o=e.nameMap,n=e.nameList,c=e.sessions,h,j,p,d,b,a,k,q,l=!1;f=Boolean(f);g=Boolean(g);if(!c){return this}h=c.length;if(h===0){return this}if(g){e.nameMap={};n.length=0;for(b=0;b<h;b++){a=c[b];this.onAnimationEnd(i,a.data,a.animation,f,g)}c.length=0}else {for(b=0;b<h;b++){a=c[b];k=a.map;q=a.list;for(j=0,p=m.length;j<p;j++){d=m[j];if(k[d]){delete k[d];Ext.Array.remove(q,d);a.length--;if(--o[d]==0){delete o[d];Ext.Array.remove(n,d)}}}if(a.length==0){c.splice(b,1);b--;h--;l=!0;this.onAnimationEnd(i,a.data,a.animation,f)}}}if(!g&&!f&&c.length==0&&l){this.onAllAnimationsEnd(i)}},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,d,b,a;if(!c){d=document.createElement('iframe');d.setAttribute('tabindex',-1);a=d.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(d);b=d.contentDocument;b.open();b.writeln('</body>');b.close();this.testElement=c=b.createElement('div');c.style.setProperty('position','absolute','important');b.body.appendChild(c);this.testElementComputedStyle=window.getComputedStyle(c)}return c},getCssStyleValue:function(b,a){var c=this.getTestElement(),e=this.testElementComputedStyle,d=c.style;d.setProperty(b,a);if(Ext.browser.is.Firefox){c.offsetHeight}a=e.getPropertyValue(b);d.removeProperty(b);return a},run:function(s){var H=this,G=this.lengthProperties,D={},i={},c={},h,e,l,j,E,f,d,t,u,r,q,v,w,F,b,n,z,B,g,a,k,C,m,x,p,o,y,A;if(!this.listenersAttached){this.attachListeners()}s=Ext.Array.from(s);for(v=0,F=s.length;v<F;v++){b=s[v];b=Ext.factory(b,Ext.fx.Animation);h=b.getElement();Ext.AnimationQueue.start(Ext.emptyFn,b);B=window.getComputedStyle(h.dom);e=h.getId();c=Ext.merge({},b.getData());if(b.onBeforeStart){b.onBeforeStart.call(b.scope||this,h)}b.fireEvent('animationstart',b);this.fireEvent('animationstart',this,b);c[e]=c;E=c.before;l=c.from;j=c.to;c.fromPropertyNames=f=[];c.toPropertyNames=d=[];for(a in j){if(j.hasOwnProperty(a)){j[a]=k=this.formatValue(j[a],a);g=this.formatName(a);x=G.hasOwnProperty(a);if(!x){k=this.getCssStyleValue(g,k)}if(l.hasOwnProperty(a)){l[a]=m=this.formatValue(l[a],a);if(!x){m=this.getCssStyleValue(g,m)}if(k!==m){f.push(g);d.push(g)}}else {C=B.getPropertyValue(g);if(k!==C){d.push(g)}}}}n=d.length;if(n===0){this.onAnimationEnd(h,c,b);continue}r=this.getRunningData(e);y=r.sessions;if(y.length>0){this.refreshRunningAnimationsData(h,Ext.Array.merge(f,d),!0,c.replacePrevious)}p=r.nameMap;o=r.nameList;z={};for(w=0;w<n;w++){a=d[w];z[a]=!0;if(!p.hasOwnProperty(a)){p[a]=1;o.push(a)}else {p[a]++}}A={element:h,map:z,list:d.slice(),length:n,data:c,animation:b};y.push(A);b.on('stop','onAnimationStop',this);q=Ext.apply({},E);Ext.apply(q,l);if(o.length>0){f=Ext.Array.difference(o,f);d=Ext.Array.merge(f,d);q['transition-property']=f}D[e]=q;i[e]=Ext.apply({},j);i[e]['transition-property']=d;i[e]['transition-duration']=c.duration;i[e]['transition-timing-function']=c.easing;i[e]['transition-delay']=c.delay;b.startTime=Date.now()}u=this.$className;this.applyStyles(D);t=function(a){if(a.data===u&&a.source===window){window.removeEventListener('message',t,!1);H.applyStyles(i)}};if(Ext.browser.is.IE){Ext.Function.requestAnimationFrame(function(){window.addEventListener('message',t,!1);window.postMessage(u,'*')})}else {window.addEventListener('message',t,!1);window.postMessage(u,'*')}},onAnimationStop:function(h){var c=this.runningAnimationsData,e,f,d,b,g,a;for(e in c){if(c.hasOwnProperty(e)){f=c[e];d=f.sessions;for(b=0,g=d.length;b<g;b++){a=d[b];if(a.animation===h){this.refreshRunningAnimationsData(a.element,a.list.slice(),!1)}}}}}},1,0,0,0,0,0,[Ext.fx.runner,'CssTransition',Ext,'Animator'],0);Ext.cmd.derive('Ext.mixin.Responsive',Ext.Mixin,function(a){return {mixinConfig:{id:'responsive',after:{destroy:'destroy'}},config:{responsiveConfig:{$value:undefined,merge:function(c,d,g,f){if(!c){return d}var e=d?Ext.Object.chain(d):{},b;for(b in c){if(!f||!(b in e)){e[b]={fn:null,config:c[b]}}}return e}},responsiveFormulas:{$value:0,merge:function(c,d,e,b){return this.mergeNew(c,d,e,b)}}},destroy:function(){a.unregister(this);this.callParent()},privates:{statics:{active:!1,all:{},context:Ext.Object.chain(Ext.platformTags),count:0,nextId:0,activate:function(){a.active=!0;a.updateContext();Ext.on('resize',a.onResize,a)},deactivate:function(){a.active=!1;Ext.un('resize',a.onResize,a)},notify:function(){var b=a.all,e=a.context,d=Ext.GlobalEvents,f=a.timer,c;if(f){a.timer=null;Ext.Function.cancelAnimationFrame(f)}a.updateContext();Ext.suspendLayouts();d.fireEvent('beforeresponsiveupdate',e);for(c in b){b[c].setupResponsiveContext()}d.fireEvent('beginresponsiveupdate',e);for(c in b){b[c].updateResponsiveState()}d.fireEvent('responsiveupdate',e);Ext.resumeLayouts(!0)},onResize:function(){if(!a.timer){a.timer=Ext.Function.requestAnimationFrame(a.onTimer)}},onTimer:function(){a.timer=null;a.notify()},processConfig:function(c,d,b){var g=d&&d[b],f=c.config,h,e;if(g){e=c.getConfigurator();h=e.configs[b];f[b]=h.merge(g,f[b],c)}},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(),c=e.getViewportHeight(),b=a.context;b.width=d;b.height=c;b.tall=d<c;b.wide=!b.tall;b.landscape=b.portrait=!1;if(!b.platform){b.platform=Ext.platformTags}b[Ext.dom.Element.getOrientation()]=!0}},afterClassMixedIn:function(f){var c=f.prototype,e=c.responsiveConfig,d=c.responsiveFormulas,b;if(e||d){b={};if(e){delete c.responsiveConfig;b.responsiveConfig=e}if(d){delete c.responsiveFormulas;b.responsiveFormulas=d}f.getConfigurator().add(b)}},applyResponsiveConfig:function(b){for(var c in b){b[c].fn=Ext.createRuleFn(c)}return b},applyResponsiveFormulas:function(c){var e={},b,d;if(c){for(d in c){if(Ext.isString(b=c[d])){b=Ext.createRuleFn(b)}e[d]=b}}return e},getResponsiveState:function(){var f=a.context,c=this.getResponsiveConfig(),e={},b,d;if(c){for(d in c){b=c[d];if(b.fn.call(this,f)){Ext.merge(e,b.config)}}}return e},setupResponsiveContext:function(){var b=this.getResponsiveFormulas(),d=a.context,c;if(b){for(c in b){d[c]=b[c].call(this,d)}}},transformInstanceConfig:function(c){var d=this,b;a.register(d);if(c){a.processConfig(d,c,'responsiveConfig');a.processConfig(d,c,'responsiveFormulas')}d.setupResponsiveContext();b=d.getResponsiveState();if(c){b=Ext.merge({},c,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.perf.Accumulator',Ext.Base,function(){var b=null,d=Ext.global['chrome'],c,a=function(){a=Ext.now;var b,c;if(Ext.isChrome&&d&&d.Interval){b=new d.Interval();b.start();a=function(){return b.microseconds()/1000}}else {if(window.ActiveXObject){try{c=new ActiveXObject('SenchaToolbox.Toolbox');Ext.senchaToolbox=c;a=function(){return c.milliseconds}}catch(e){}}}Ext.perf.getTimestamp=Ext.perf.Accumulator.getTimestamp=a;return a()};function adjustSet(a,b){a.sum+=b;a.min=Math.min(a.min,b);a.max=Math.max(a.max,b)}function leaveFrame(f){var d=f?f:a()-this.time,e=this,c=e.accum;++c.count;if(!--c.depth){adjustSet(c.total,d)}adjustSet(c.pure,d-e.childTime);b=e.parent;if(b){++b.accum.childCount;b.childTime+=d}}function makeSet(){return {min:Number.MAX_VALUE,max:0,sum:0}}function makeTap(b,a){return function(){var c=b.enter(),d=a.apply(this,arguments);c.leave();return d}}function setToJSON(d,e,b,c){var a={avg:0,min:c.min,max:c.max,sum:0};if(d){b=b||0;a.sum=c.sum-e*b;a.avg=a.sum/d}return a}return {constructor:function(b){var a=this;a.count=a.childCount=a.depth=a.maxDepth=0;a.pure=makeSet();a.total=makeSet();a.name=b},statics:{getTimestamp:a},format:function(b){if(!c){c=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(a){return Math.round(a*100)/100}})}var a=this.getData(b);a.name=this.name;a.pure.type='Pure';a.total.type='Total';a.times=[a.pure,a.total];return c.apply(a)},getData:function(b){var a=this;return {count:a.count,childCount:a.childCount,depth:a.maxDepth,pure:setToJSON(a.count,a.childCount,b,a.pure),total:setToJSON(a.count,a.childCount,b,a.total)}},enter:function(){var c=this,d={accum:c,leave:leaveFrame,childTime:0,parent:b};++c.depth;if(c.maxDepth<c.depth){c.maxDepth=c.depth}b=d;d.time=a();return d},monitor:function(c,a,b){var d=this.enter();if(b){c.apply(a,b)}else {c.call(a)}d.leave()},report:function(){Ext.log(this.format())},tap:function(d,g){var j=this,k=typeof g==='string'?[g]:g,b,f,a,h,e,c,i,l;l=function(){if(typeof d==='string'){b=Ext.global;h=d.split('.');for(a=0,e=h.length;a<e;++a){b=b[h[a]]}}else {b=d}for(a=0,e=k.length;a<e;++a){c=k[a];f=c.charAt(0)==='!';if(f){c=c.substring(1)}else {f=!(c in b.prototype)}i=f?b:b.prototype;i[c]=makeTap(j,i[c])}};Ext.ClassManager.onCreated(l,j,d);return j}}},1,0,0,0,0,0,[Ext.perf,'Accumulator'],function(){Ext.perf.getTimestamp=this.getTimestamp});Ext.cmd.derive('Ext.perf.Monitor',Ext.Base,{singleton:!0,alternateClassName:'Ext.Perf',constructor:function(){this.accumulators=[];this.accumulatorsByName={}},calibrate:function(){var d=new Ext.perf.Accumulator('$'),g=d.total,a=Ext.perf.Accumulator.getTimestamp,e=0,f,c,b;b=a();do{f=d.enter();f.leave();++e}while(g.sum<100);c=a();return (c-b)/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(b,c,a){this.get(b).monitor(c,a)},report:function(){var a=this,b=a.accumulators,c=a.calibrate();b.sort(function(a,b){return a.name<b.name?-1:b.name<a.name?1:0});a.updateGC();Ext.log('Calibration: '+Math.round(c*100)/100+' msec/sample');Ext.each(b,function(a){Ext.log(a.format(c))})},getData:function(c){var a={},b=this.accumulators;Ext.each(b,function(b){if(c||b.count){a[b.name]=b.getData()}});return a},reset:function(){Ext.each(this.accumulators,function(b){var a=b;a.count=a.childCount=a.depth=a.maxDepth=0;a.pure={min:Number.MAX_VALUE,max:0,sum:0};a.total={min:Number.MAX_VALUE,max:0,sum:0}})},updateGC:function(){var b=this.accumulatorsByName.GC,c=Ext.senchaToolbox,a;if(b){b.count=c.garbageCollectionCounter||0;if(b.count){a=b.pure;b.total.sum=a.sum=c.garbageCollectionMilliseconds;a.min=a.max=a.sum/b.count;a=b.total;a.min=a.max=a.sum/b.count}}},watchGC:function(){Ext.perf.getTimestamp();var a=Ext.senchaToolbox;if(a){this.get('GC');a.watchGarbageCollector(!1)}},setup:function(a){if(!a){a={render:{'Ext.Component':'render'},layout:{'Ext.layout.Context':'run'}}}this.currentConfig=a;var d,c,f,b,e;for(d in a){if(a.hasOwnProperty(d)){c=a[d];f=Ext.Perf.get(d);for(b in c){if(c.hasOwnProperty(b)){e=c[b];f.tap(b,e)}}}}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:!0,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(c,b,d){var a=b.alias;if(a&&!b.ptype){if(Ext.isArray(a)){a=a[0]}c.prototype.ptype=a.split('plugin.')[1]}},resolveListenerScope:function(b){var a=this,d=a.getCmp(),c;if(d){c=d.resolveSatelliteListenerScope(a,b)}return c||a.mixins.observable.resolveListenerScope.call(a,b)}},1,0,0,0,0,0,[Ext.plugin,'Abstract',Ext,'AbstractPlugin'],0);Ext.define('Ext.overrides.plugin.Abstract',{override:'Ext.plugin.Abstract',$configStrict:!1,$configPrefixed:!1,disabled:!1,getState:null,applyState:null,enable:function(){this.disabled=!1},disable:function(){this.disabled=!0}});Ext.cmd.derive('Ext.ElementLoader',Ext.Base,{statics:{Renderer:{Html:function(c,a,b){c.getTarget().setHtml(a.responseText,b.scripts===!0);return !0}}},url:null,params:null,baseParams:null,autoLoad:!1,target:null,loadMask:!1,ajaxOptions:null,scripts:!1,isLoader:!0,constructor:function(c){var a=this,b;c=c||{};Ext.apply(a,c);a.mixins.observable.constructor.call(a);a.setTarget(a.target);if(a.autoLoad){b=a.autoLoad;if(b===!0){b=null}a.load(b)}},setTarget:function(a){var b=this;a=Ext.get(a);if(b.target&&b.target!==a){b.abort()}b.target=a},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===!0?null:a)},load:function(b){b=Ext.apply({},b);var a=this,d=Ext.isDefined(b.loadMask)?b.loadMask:a.loadMask,c=Ext.apply({},b.params),e=Ext.apply({},b.ajaxOptions),g=b.callback||a.callback,h=b.scope||a.scope||a,f=b.rendererScope||a.rendererScope||a;Ext.applyIf(e,a.ajaxOptions);Ext.applyIf(b,e);Ext.applyIf(c,a.params);Ext.apply(c,a.baseParams);Ext.applyIf(b,{url:a.url});Ext.apply(b,{scope:a,params:c,callback:a.onComplete});if(a.fireEvent('beforeload',a,b)===!1){return}if(d){a.addMask(d)}a.active={options:b,mask:d,scope:h,rendererScope:f,callback:g,success:b.success||a.success,failure:b.failure||a.failure,renderer:b.renderer||a.renderer,scripts:Ext.isDefined(b.scripts)?b.scripts:a.scripts};a.active.request=Ext.Ajax.request(b);a.setOptions(a.active,b)},setOptions:Ext.emptyFn,onComplete:function(d,e,c){var a=this,b=a.active,g,f;if(b){f=b.scope;g=b.rendererScope;if(e){e=a.getRenderer(b.renderer).call(g,a,c,b)!==!1}if(e){Ext.callback(b.success,f,[a,c,d]);a.fireEvent('load',a,c,d)}else {Ext.callback(b.failure,f,[a,c,d]);a.fireEvent('exception',a,c,d)}Ext.callback(b.callback,f,[a,e,c,d]);if(b.mask){a.removeMask()}}delete a.active},getRenderer:function(a){if(Ext.isFunction(a)){return a}return this.statics().Renderer.Html},startAutoRefresh:function(b,c){var a=this;a.stopAutoRefresh();a.autoRefresh=Ext.interval(function(){a.load(c)},b)},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(c,b,d){var a=!0;try{c.getTarget().update(Ext.decode(b.responseText))}catch(e){a=!1}return a},Component:function(f,d,e){var b=!0,a=f.getTarget(),c=[];try{c=Ext.decode(d.responseText)}catch(g){b=!1}if(b){a.suspendLayouts();if(e.removeAll){a.removeAll()}a.add(c);a.resumeLayouts(!0)}return b}}},target:null,loadOnRender:!1,loadMask:!1,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(!1)},addMask:function(a){this.target.setLoading(a)},setOptions:function(b,a){b.removeAll=Ext.isDefined(a.removeAll)?a.removeAll:this.removeAll},getRenderer:function(a){if(Ext.isFunction(a)){return a}var b=this.statics().Renderer;switch(a){case 'component':return b.Component;case 'data':return b.Data;default:return Ext.ElementLoader.Renderer.Html;}}},0,0,0,0,0,0,[Ext,'ComponentLoader'],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(e){var d=this,b=d.owner.autoSize,c=b&&b.width,a=d.sizePolicies;a=a[c]||a.$;c=b&&b.height;a=a[c]||a.$;return a},calculate:function(c){var f=this,a=f.owner,b=a.autoSize,e,d;if(b===!0){b=f.autoSizeDefault}if(b){e=f.getDimension(a,b.width,'getWidth',a.width);d=f.getDimension(a,b.height,'getHeight',a.height)}c.childItems[0].setSize(e,d);c.setWidth(e);c.setHeight(d);c.setContentSize(e||a.field.getWidth(),d||a.field.getHeight())},getDimension:function(c,d,a,b){switch(d){case 'boundEl':return c.boundEl[a]();case 'field':return undefined;default:return b;}}},0,0,0,0,['layout.editor'],0,[Ext.layout.container,'Editor'],0);Ext.cmd.derive('Ext.Editor',Ext.container.Container,{layout:'editor',allowBlur:!0,revertInvalid:!0,value:'',alignment:'c-c?',offsets:[0,0],shadow:'frame',constrain:!1,swallowKeys:!0,completeOnEnter:!0,cancelOnEsc:!0,updateEl:!1,focusOnToFront:!1,baseCls:'x-editor',editing:!1,preventDefaultAlign:!0,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(e,d){var b=this,c=b.field,a=c.inputEl;Ext.container.Container.prototype.afterRender.apply(this,arguments);if(a){a.dom.name='';if(b.swallowKeys){a.swallowEvent(['keypress','keydown'])}}},onSpecialKey:function(g,b){var a=this,e=b.getKey(),d=a.completeOnEnter&&e===b.ENTER,f=a.cancelOnEsc&&e===b.ESC,c=a.specialKeyTask;if(d||f){b.stopEvent();if(!c){a.specialKeyTask=c=new Ext.util.DelayedTask()}c.delay(a.specialKeyDelay,d?a.completeEdit:a.cancelEdit,a)}a.fireEvent('specialkey',a,g,b)},startEdit:function(g,c){var a=this,b=a.field,d,f,e;a.completeEdit();a.boundEl=Ext.get(g);d=a.boundEl.dom;c=Ext.isDefined(c)?c:Ext.String.trim(d.textContent||d.innerText||d.innerHTML);if(a.fireEvent('beforestartedit',a,a.boundEl,c)!==!1){Ext.suspendLayouts();if(!a.rendered){f=a.ownerCt;e=a.renderTo||f&&f.getEl()||Ext.getBody();Ext.fly(e).position();a.renderTo=e}a.startValue=c;a.show();a.realign(!0);b.suspendEvents();b.setValue(c);b.resetOriginalValue();b.resumeEvents();b.focus(b.selectOnFocus?!0:[Number.MAX_VALUE]);if(b.autoSize){b.autoSize()}Ext.resumeLayouts(!0);a.toggleBoundEl(!1);a.editing=!0}},realign:function(b){var a=this;if(b===!0){a.updateLayout()}a.alignTo(a.boundEl,a.alignment,a.offsets)},completeEdit:function(d){var a=this,c=a.field,e=a.startValue,b;if(!a.editing){return}if(c.assertValue){c.assertValue()}b=a.getValue();if(!c.isValid()){if(a.revertInvalid!==!1){a.cancelEdit(d)}return}if(a.ignoreNoChange&&!c.didValueChange(b,e)){a.onEditComplete(d);return}if(a.fireEvent('beforecomplete',a,b,e)!==!1){b=a.getValue();if(a.updateEl&&a.boundEl){a.boundEl.setHtml(b)}a.onEditComplete(d);a.fireEvent('complete',a,b,e)}},onShow:function(){var a=this;Ext.container.Container.prototype.onShow.apply(this,arguments);a.fireEvent('startedit',a,a.boundEl,a.startValue)},cancelEdit:function(e){var a=this,c=a.startValue,b=a.field,d;if(a.editing){if(b){d=a.editedValue=a.getValue();b.suspendEvents();a.setValue(c);b.resumeEvents()}a.onEditComplete(e);a.fireEvent('canceledit',a,d,c);delete a.editedValue}},onEditComplete:function(a){this.editing=!1;if(a!==!0){this.hide();this.toggleBoundEl(!0)}},onFocusLeave:function(b){var a=this;if(a.allowBlur===!0&&a.editing&&a.selectSameEditor!==!0){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!==!1){this.boundEl.setVisible(a)}},beforeDestroy:function(){var a=this,b=a.specialKeyTask;if(b){b.cancel()}a.specialKeyTask=a.field=a.boundEl=Ext.destroy(a.field);Ext.container.Container.prototype.beforeDestroy.apply(this,arguments)}},0,['editor'],['component','box','container','editor'],{'component':!0,'box':!0,'container':!0,'editor':!0},['widget.editor'],0,[Ext,'Editor'],0);Ext.cmd.derive('Ext.Img',Ext.Component,{autoEl:'img',baseCls:'x-img',src:'',alt:'',title:'',imgCls:'',ariaRole:'img',maskOnDisable:!1,initComponent:function(){if(this.glyph){this.autoEl='div'}Ext.Component.prototype.initComponent.call(this)},getElConfig:function(){var a=this,g=a.autoEl,b=Ext.Component.prototype.getElConfig.call(this),d=Ext._glyphFontFamily,e=a.glyph,c,f;if(g==='img'||Ext.isObject(g)&&g.tag==='img'){c=b}else {if(a.glyph){if(typeof e==='string'){f=e.split('@');e=f[0];d=f[1]||d}b.html='&#'+e+';';if(d){b.style=b.style||{};b.style.fontFamily=d}}else {b.cn=[c={tag:'img',role:a.ariaRole,id:a.id+'-img'}]}}if(c){if(a.imgCls){c.cls=(c.cls?c.cls+' ':'')+a.imgCls}c.src=a.src||Ext.BLANK_IMAGE_URL}if(a.alt){(c||b).alt=a.alt}if(a.title){(c||b).title=a.title}return b},onRender:function(){var a=this,b=a.autoEl,c;Ext.Component.prototype.onRender.apply(this,arguments);c=a.el;if(b==='img'||Ext.isObject(b)&&b.tag==='img'){a.imgEl=c}else {a.imgEl=c.getById(a.id+'-img')}},onDestroy:function(){var b=this,a=b.imgEl;if(a&&b.el!==a){a.destroy()}this.imgEl=null;Ext.Component.prototype.onDestroy.call(this)},setSrc:function(b){var c=this,a=c.imgEl;c.src=b;if(a){a.dom.src=b||Ext.BLANK_IMAGE_URL}},setGlyph:function(a){var c=this,b=Ext._glyphFontFamily,f=c.glyph,e=c.el,d;c.glyph=a;if(c.rendered&&a!==f){if(typeof a==='string'){d=a.split('@');a=d[0];b=d[1]||b}e.dom.innerHTML='&#'+a+';';if(b){e.setStyle('font-family',b)}}}},0,['image','imagecomponent'],['component','box','image','imagecomponent'],{'component':!0,'box':!0,'image':!0,'imagecomponent':!0},['widget.image','widget.imagecomponent'],0,[Ext,'Img'],0);Ext.cmd.derive('Ext.layout.component.ProgressBar',Ext.layout.component.Auto,{type:'progressbar',beginLayout:function(a){var d=this,c,b;Ext.layout.component.Auto.prototype.beginLayout.apply(this,arguments);if(!a.textEls){b=d.owner.textEl;if(b.isComposite){a.textEls=[];b=b.elements;for(c=b.length;c--;){a.textEls[c]=a.getEl(Ext.get(b[c]))}}else {a.textEls=[a.getEl('textEl')]}}},calculate:function(a){var e=this,d,b,c;Ext.layout.component.Auto.prototype.calculate.apply(this,arguments);if(Ext.isNumber(c=a.getProp('width'))){c-=a.getBorderInfo().width;b=a.textEls;for(d=b.length;d--;){b[d].setWidth(c)}}else {e.done=!1}}},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:!1,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,b=a.value||0;return Ext.apply(Ext.Component.prototype.initRenderData.call(this),{internalText:!a.hasOwnProperty('textEl'),text:a.text||' ',percentage:b*100})},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')}},applyValue:function(a){return a||0},updateValue:function(a){this.updateProgress(a,Math.round(a*100)+'%')},updateProgress:function(b,c,d){b=b||0;var a=this,f=a.value,e=a.getTextTpl();a.value=b||(b=0);if(c!=null){a.updateText(c)}else {if(e){a.updateText(e.apply({value:b,percent:b*100}))}}if(a.rendered&&!a.isDestroyed){if(d===!0||d!==!1&&a.animate){a.bar.stopAnimation();a.bar.animate(Ext.apply({from:{width:f*100+'%'},to:{width:b*100+'%'}},a.animate))}else {a.bar.setStyle('width',b*100+'%')}}a.fireEvent('update',a,b,c);return a},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(a){var b=this,c;if(!b.waitTimer){c=b;a=a||{};b.updateText(a.text);b.waitTimer=Ext.TaskManager.start({run:function(d){var c=a.increment||10;d-=1;b.updateProgress(((d+c)%c+1)*(100/c)*0.01,null,a.animate)},interval:a.interval||1000,duration:a.duration,onStop:function(){if(a.fn){a.fn.apply(a.scope||b)}b.reset()},scope:c})}return b},isWaiting:function(){return this.waitTimer!==null},reset:function(b){var a=this;a.updateProgress(0);a.clearTimer();if(b===!0){a.hide()}return a},clearTimer:function(){var a=this;if(a.waitTimer){a.waitTimer.onStop=null;Ext.TaskManager.stop(a.waitTimer);a.waitTimer=null}},onDestroy:function(){var a=this,b=a.bar;a.clearTimer();if(a.rendered){if(a.textEl.isComposite){a.textEl.clear()}Ext.destroyMembers(a,'textEl','progressBar');if(b&&a.animate){b.stopAnimation()}}Ext.Component.prototype.onDestroy.call(this)}},0,['progressbar'],['component','box','progressbar'],{'component':!0,'box':!0,'progressbar':!0},['widget.progressbar'],0,[Ext,'ProgressBar'],0);Ext.cmd.derive('Ext.layout.container.Fit',Ext.layout.container.Container,{alternateClassName:'Ext.layout.FitLayout',itemCls:'x-fit-item',type:'fit',manageMargins:!0,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(d,b){var a=b||this.owner.getSizeModel(),c=(a.width.shrinkWrap?0:1)|(a.height.shrinkWrap?0:2);return this.sizePolicies[c]},beginLayoutCycle:function(a,p){var f=this,j=f.lastHeightModel&&f.lastHeightModel.calculated,m=f.lastWidthModel&&f.lastWidthModel.calculated,l=m||j,h=0,i=0,b,k,g,e,q,n,c,d,o,r;Ext.layout.container.Container.prototype.beginLayoutCycle.apply(this,arguments);if(l&&a.targetContext.el.dom.tagName.toUpperCase()!=='TD'){l=m=j=!1}k=a.childItems;q=k.length;for(g=0;g<q;++g){e=k[g];if(p){b=e.target;c=b.minHeight;d=b.minWidth;if(d||c){n=e.marginInfo||e.getMarginInfo();c+=n.height;d+=n.height;if(h<c){h=c}if(i<d){i=d}}}if(l){o=e.el.dom.style;if(j){o.height=''}if(m){o.width=''}}}if(p){a.maxChildMinHeight=h;a.maxChildMinWidth=i}b=a.target;a.overflowX=!a.widthModel.shrinkWrap&&a.maxChildMinWidth&&b.scrollFlags.x||r;a.overflowY=!a.heightModel.shrinkWrap&&a.maxChildMinHeight&&b.scrollFlags.y||r},calculate:function(a){var d=this,p=a.childItems,m=p.length,b=d.getContainerSize(a),c={length:m,ownerContext:a,targetSize:b},o=a.widthModel.shrinkWrap,n=a.heightModel.shrinkWrap,j=a.overflowX,k=a.overflowY,e,f,l,g,i,h;a.state.info=c;if(j||k){e=d.getScrollbarsNeeded(j&&b.width,k&&b.height,a.maxChildMinWidth,a.maxChildMinHeight);if(e){f=Ext.getScrollbarSize();if(e&1){b.height-=f.height}if(e&2){b.width-=f.width}}}if(m>0){for(g=0;g<m;++g){c.index=g;d.fitItem(p[g],c)}}else {c.contentWidth=c.contentHeight=0}if(n||o){l=a.targetContext.getPaddingInfo();if(o){if(k&&!b.gotHeight){d.done=!1}else {i=c.contentWidth+l.width;if(e&2){i+=f.width}if(!a.setContentWidth(i)){d.done=!1}}}if(n){if(j&&!b.gotWidth){d.done=!1}else {h=c.contentHeight+l.height;if(e&1){h+=f.height}if(!a.setContentHeight(h)){d.done=!1}}}}},fitItem:function(b,a){var c=this;if(b.invalid){c.done=!1;return}a.margins=b.getMarginInfo();a.needed=a.got=0;c.fitItemWidth(b,a);c.fitItemHeight(b,a);if(a.got!==a.needed){c.done=!1}},fitItemWidth:function(b,a){var c,d;if(a.ownerContext.widthModel.shrinkWrap){d=b.getProp('width')+a.margins.width;c=a.contentWidth;if(c===undefined){a.contentWidth=d}else {a.contentWidth=Math.max(c,d)}}else {if(b.widthModel.calculated){++a.needed;if(a.targetSize.gotWidth){++a.got;this.setItemWidth(b,a)}else {return}}}this.positionItemX(b,a)},fitItemHeight:function(b,a){var c,d;if(a.ownerContext.heightModel.shrinkWrap){d=b.getProp('height')+a.margins.height;c=a.contentHeight;if(c===undefined){a.contentHeight=d}else {a.contentHeight=Math.max(c,d)}}else {if(b.heightModel.calculated){++a.needed;if(a.targetSize.gotHeight){++a.got;this.setItemHeight(b,a)}else {return}}}this.positionItemY(b,a)},positionItemX:function(b,c){var a=c.margins;if(c.index||a.left){b.setProp('x',a.left)}if(a.width){b.setProp('margin-right',a.width)}},positionItemY:function(b,c){var a=c.margins;if(c.index||a.top){b.setProp('y',a.top)}if(a.height){b.setProp('margin-bottom',a.height)}},setItemHeight:function(b,a){b.setHeight(a.targetSize.height-a.margins.height)},setItemWidth:function(b,a){b.setWidth(a.targetSize.width-a.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:!1,variableRowHeight:!1,numFromEdge:2,trailingBufferZone:10,leadingBufferZone:20,hasView:!1,viewType:null,deferRowRender:!1,sortableColumns:!0,multiColumnSort:!1,enableLocking:!1,scrollerOwner:!0,enableColumnMove:!0,sealedColumns:!1,enableColumnResize:!0,rowLines:!0,bufferedRenderer:!0,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:!0,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=!0;if(c.autoLoad){a.unblockLoad();a.load()}},initComponent:function(){var a=this,b=a.columns||a.colModel||[],c,d,i,e,h=a.store=Ext.data.StoreManager.lookup(a.store||'ext-empty-store'),g,f;a.enableLocking=a.enableLocking||a.hasLockedColumns(b);if(a.autoLoad){a.store.blockLoad()}if(a.plugins){a.plugins=a.constructPlugins()}if(a.columnLines){a.addBodyCls(a.colLinesCls)}a.addBodyCls(a.rowLines?a.rowLinesCls:a.noRowLinesCls);a.addBodyCls(a.extraBodyCls);if(a.enableLocking){a.self.mixin('lockable',Ext.grid.locking.Lockable);a.injectLockable()}else {if(b.isRootHeader){if(a.hideHeaders){b.setHeight(0);b.hiddenHeaders=!0}a.headerCt=b;a.headerCt.grid=a;a.headerCt.forceFit=!!a.forceFit;a.columnManager=b.columnManager;a.visibleColumnManager=b.visibleColumnManager}else {if(Ext.isArray(b)){b={items:b}}Ext.apply(b,{grid:a,forceFit:a.forceFit,sortable:a.sortableColumns,enableColumnMove:a.enableColumnMove,enableColumnResize:a.enableColumnResize,columnLines:a.columnLines,sealed:a.sealedColumns});if(a.hideHeaders){b.height=0;b.hiddenHeaders=!0}if(Ext.isDefined(a.enableColumnHide)){b.enableColumnHide=a.enableColumnHide}a.headerCt=new Ext.grid.header.Container(b)}a.headerCt.setScrollable({x:!1,y:!1})}a.columns=g=a.headerCt.getGridColumns();a.scrollTask=new Ext.util.DelayedTask(a.syncHorizontalScroll,a);a.cls=(a.cls||'')+(' '+a.extraBaseCls);delete a.autoScroll;e=a.plugins&&Ext.Array.findBy(a.plugins,function(a){return a.isBufferedRenderer});if(e){a.bufferedRenderer=e}if(!a.hasView){if(h.isBufferedStore&&!h.getRemoteSort()){for(d=0,i=g.length;d<i;d++){g[d].sortable=!1}}if(a.hideHeaders){a.headerCt.addCls(a.hiddenHeaderCtCls);a.addCls(a.hiddenHeaderCls)}a.relayHeaderCtEvents(a.headerCt);a.features=a.features||[];if(!Ext.isArray(a.features)){a.features=[a.features]}a.dockedItems=[].concat(a.dockedItems||[]);a.dockedItems.unshift(a.headerCt);a.viewConfig=a.viewConfig||{};c=a.getView();a.items=[c];a.hasView=!0;if(!a.hideHeaders){f=c.getScrollable();if(f){a.headerCt.getScrollable().addPartner(f,'x')}}a.bindStore(h,!0);a.mon(c,{viewready:a.onViewReady,refresh:a.onRestoreHorzScroll,scope:a})}a.selModel=a.view.getSelectionModel();if(a.selModel.isRowModel){a.selModel.on({scope:a,lastselectedchanged:a.updateBindSelection,selectionchange:a.updateBindSelection})}a.relayEvents(a.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);a.addStateEvents(['columnresize','columnmove','columnhide','columnshow','sortchange','filterchange','groupchange'])},beforeRender:function(){var b=this,a=b.bufferedRenderer;if(!b.lockable){if(a&&b.getSizeModel().height.auto){b.bufferedRenderer=a=!1}if(a&&!a.isBufferedRenderer){a={xclass:'Ext.grid.plugin.BufferedRenderer'};Ext.copyTo(a,b,'variableRowHeight,numFromEdge,trailingBufferZone,leadingBufferZone,scrollToLoadBuffer');b.bufferedRenderer=b.addPlugin(a)}}Ext.panel.Panel.prototype.beforeRender.apply(this,arguments)},getHeaderContainer:function(){return this.getView().getHeaderCt()},getColumns:function(){return this.getHeaderContainer().getGridColumns()},getVisibleColumns:function(){return this.getHeaderContainer().getVisibleGridColumns()},focus:function(){this.getView().focus()},disableColumnHeaders:function(){this.headerCt.disable()},enableColumnHeaders:function(){this.headerCt.enable()},hasLockedColumns:function(a){var b,d,c;if(a.isRootHeader){a=a.items.items}else {if(Ext.isObject(a)){a=a.items}}for(b=0,d=a.length;b<d;b++){c=a[b];if(!c.processed&&c.locked){return !0}}},relayHeaderCtEvents:function(a){this.relayEvents(a,['columnresize','columnmove','columnhide','columnshow','columnschanged','sortchange','headerclick','headercontextmenu','headertriggerclick'])},getState:function(){var b=this,a=Ext.panel.Panel.prototype.getState.call(this),c=b.store.getState();a=b.addPropertyToState(a,'columns',b.headerCt.getColumnsState());if(c){a.storeState=c}return a},applyState:function(b){var f=this,a=b.sort,d=b.storeState,c=f.store,e=b.columns;delete b.columns;Ext.panel.Panel.prototype.applyState.apply(this,arguments);if(e){f.headerCt.applyColumnsState(e)}if(a){if(c.getRemoteSort()){c.sort({property:a.property,direction:a.direction,root:a.root},null,!1)}else {c.sort(a.property,a.direction)}}else {if(d){c.applyState(d)}}},getStore:function(){return this.store},getView:function(){var a=this,c,b,d;if(!a.view){d=a.viewConfig;c=d.scroll||a.scroll;b=a.scrollable;if(b==null&&d.scrollable==null&&c!==null){if(c===!0||c==='both'){b=!0}else {if(c===!1||c==='none'){b=!1}else {if(c==='vertical'){b={x:!1,y:!0}}else {if(c==='horizontal'){b={x:!0,y:!1}}}}}}d=Ext.apply({grid:a,ownerGrid:a.ownerGrid,deferInitialRefresh:a.deferRowRender,variableRowHeight:a.variableRowHeight,preserveScrollOnRefresh:!0,trackOver:a.trackMouseOver!==!1,throttledUpdate:a.throttledUpdate===!0,xtype:a.viewType,store:a.store,headerCt:a.headerCt,columnLines:a.columnLines,rowLines:a.rowLines,navigationModel:'grid',features:a.features,panel:a,emptyText:a.emptyText||''},a.viewConfig);if(b!=null){d.scrollable=b;a.scrollable=null}Ext.create(d);if(a.view.emptyText){a.view.emptyText='<div class="'+a.emptyCls+'">'+a.view.emptyText+'</div>'}a.view.getComponentLayout().headerCt=a.headerCt;a.mon(a.view,{uievent:a.processEvent,scope:a});a.headerCt.view=a.view;if(a.hasListeners.viewcreated){a.fireEvent('viewcreated',a,a.view)}}return a.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,h,f,c,d,b,e,i){var a=b.position.column;if(a){return a.processEvent.apply(a,arguments)}},ensureVisible:function(b,a){this.doEnsureVisible(b,a)},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,f,b,c,d){var a=this;if(a.optimizedColumnMove===!1){a.view.refreshView()}else {a.view.moveColumn(c,d,b)}a.delayScroll()},onHeaderHide:function(b,d,c){var a=this.view;if(!b.childHideCount&&a.refreshCounter){a.refreshView()}},onHeaderShow:function(b,c){var a=this.view;if(a.refreshCounter){a.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 a=this,b=a.scrollXPos;if(b){a.syncHorizontalScroll(a,!0)}},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},!0))},getRhsMarker:function(){var a=this;return a.rhsMarker||(a.rhsMarker=Ext.DomHelper.append(a.el,{role:'presentation',cls:a.resizeMarkerCls},!0))},getSelection:function(){return this.getSelectionModel().getSelection()},updateSelection:function(c){var a=this,b;if(!a.ignoreNextSelection){a.ignoreNextSelection=!0;b=a.getSelectionModel();if(c){b.select(c)}else {b.deselectAll()}a.ignoreNextSelection=!1}},updateBindSelection:function(d,c){var a=this,b=null;if(!a.ignoreNextSelection){a.ignoreNextSelection=!0;if(c.length){b=d.getLastSelected();a.hasHadSelection=!0}if(a.hasHadSelection){a.setSelection(b)}a.ignoreNextSelection=!1}},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,b){var a=this,c=a.view.getScrollX(),d;b=b===!0;if(a.rendered&&(b||c!==a.scrollXPos)){if(b){d=a.getScrollTarget();d.setScrollX(c)}a.headerCt.setScrollX(c);a.scrollXPos=c}},onStoreLoad:Ext.emptyFn,getEditorParent:function(){return this.body},bindStore:function(b,d){var a=this,c=a.getView();if(b){a.store=b;if(c.store!==b){c.bindStore(b,!1)}a.mon(b,{load:a.onStoreLoad,scope:a});a.storeRelayers=a.relayEvents(b,['filterchange','groupchange'])}else {a.unbindStore()}},unbindStore:function(){var a=this,c=a.store,b;if(c){a.store=null;a.mun(c,{load:a.onStoreLoad,scope:a});Ext.destroy(a.storeRelayers);b=a.view;if(b.store){b.bindStore(null)}}},setColumns:function(a){if(a.length||this.getColumnManager().getColumns().length){this.reconfigure(undefined,a)}},setStore:function(a){this.reconfigure(a)},reconfigure:function(b,c){var a=this,f=a.store,e=a.headerCt,i=a.lockable,h=e?e.items.getRange():a.columns,d=a.getView(),j,g;if(arguments.length===1&&Ext.isArray(b)){c=b;b=null}if(c){c=Ext.Array.slice(c)}a.reconfiguring=!0;if(b){b=Ext.StoreManager.lookup(b)}a.fireEvent('beforereconfigure',a,b,c,f,h);Ext.suspendLayouts();if(i){a.reconfigureLockable(b,c)}else {j=d.blockRefresh;d.blockRefresh=!0;if(b&&b!==f){a.unbindStore();a.bindStore(b)}if(c){delete a.scrollXPos;e.removeAll();e.add(c)}d.blockRefresh=j;g=d.refreshCounter}Ext.resumeLayouts(!0);if(i){a.afterReconfigureLockable()}else {if(d.refreshCounter===g){d.refreshView()}}a.fireEvent('reconfigure',a,b,c,f,h);delete a.reconfiguring},beforeDestroy:function(){var a=this,b=a.scrollTask;if(b){b.cancel();a.scrollTask=null}Ext.destroy(a.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(a,b){if(this.lockable){return this.ensureLockedVisible(a,b)}if(typeof a!=='number'&&!a.isEntity){a=this.store.getById(a)}var d=this,e,g,i,h,k,j,c=d.getView(),f=c.getNode(a);if(!d.rendered||!c.refreshCounter){return}if(b){e=b.callback;g=b.scope;i=b.animate;h=b.highlight;k=b.select;j=b.focus}if(f){c.getScrollable().scrollIntoView(f,null,i,h);if(!a.isEntity){a=c.getRecord(f)}if(k){c.getSelectionModel().select(a)}if(j){c.getNavigationModel().setPosition(a,0)}Ext.callback(e,g||d,[!0,a,f])}else {if(c.bufferedRenderer){c.bufferedRenderer.scrollTo(a,{animate:i,highlight:h,select:k,focus:j,callback:function(h,f,c){Ext.callback(e,g||d,[!0,f,c])}})}else {Ext.callback(e,g||d,[!1,null])}}},getFocusEl:function(){return this.getView().getFocusEl()}}},1,['tablepanel'],['component','box','container','panel','tablepanel'],{'component':!0,'box':!0,'container':!0,'panel':!0,'tablepanel':!0},['widget.tablepanel'],0,[Ext.panel,'Table'],0);Ext.define('ExtThemeNeptune.panel.Table',{override:'Ext.panel.Table',initComponent:function(){var a=this;if(!a.hasOwnProperty('bodyBorder')&&!a.hideHeaders){a.bodyBorder=!0}(arguments.callee.$previous||Ext.panel.Panel.prototype.initComponent).call(this)}});Ext.cmd.derive('Ext.grid.CellContext',Ext.Base,{isCellContext:!0,constructor:function(a){this.view=a},isEqual:function(a){if(a){return this.record===a.record&&this.column===a.column}return !1},setPosition:function(a,b){var c=this;if(arguments.length===1){if(a.length){b=a[0];b=a[1]}else {if(a.view){c.view=a.view}b=a.column;a=a.row}}c.setRow(a);c.setColumn(b);return c},setAll:function(f,d,c,e,b){var a=this;a.view=f;a.rowIdx=d;a.colIdx=c;a.record=e;a.column=b;return a},setRow:function(a){var b=this,c=b.view.dataSource;if(a!==undefined){if(typeof a==='number'){b.rowIdx=Math.max(Math.min(a,c.getCount()-1),0);b.record=c.getAt(a)}else {if(a.isModel){b.record=a;b.rowIdx=c.indexOf(a)}else {if(a.tagName){b.record=b.view.getRecord(a);b.rowIdx=c.indexOf(b.record)}}}}},setColumn:function(a){var b=this,c=b.view.getVisibleColumnManager();if(a!==undefined){if(typeof a==='number'){b.colIdx=a;b.column=c.getHeaderAtIndex(a)}else {if(a.isHeader){b.column=a;b.colIdx=c.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 a=this,b=new a.self(a.view);b.rowIdx=a.rowIdx;b.colIdx=a.colIdx;b.record=a.record;b.column=a.column;return b}},1,0,0,0,0,0,[Ext.grid,'CellContext'],0);Ext.cmd.derive('Ext.view.TableLayout',Ext.layout.component.Auto,{type:'tableview',beginLayout:function(a){var b=this,c=b.owner.lockingPartner,d=a.context;if(!b.columnFlusherId){b.columnFlusherId=b.id+'-columns';b.rowHeightFlusherId=b.id+'-rows'}Ext.layout.component.Auto.prototype.beginLayout.call(this,a);if(c&&c.grid.isVisible()){if(!a.lockingPartnerContext){(a.lockingPartnerContext=d.getCmp(c)).lockingPartnerContext=a}a.rowHeightSynchronizer=b.owner.syncRowHeightBegin()}(a.headerContext=d.getCmp(b.headerCt)).viewContext=a},beginLayoutCycle:function(a,b){Ext.layout.component.Auto.prototype.beginLayoutCycle.call(this,a,b);if(a.syncRowHeights){a.target.syncRowHeightClear(a.rowHeightSynchronizer);a.syncRowHeights=!1}},calculate:function(a){var b=this,p=a.context,l=a.lockingPartnerContext,q=a.headerContext,g=a.ownerCtContext,k=b.owner,f=q.getProp('columnsChanged'),c=a.state,h,m,d,e,o=k.body.dom,n,j,i;if(!k.all.getCount()&&(!o||!k.body.child('table'))){a.setProp('viewOverflowY',!1);Ext.layout.component.Auto.prototype.calculate.call(this,a);return}if(f===undefined){b.done=!1;return}if(f){if(!(h=c.columnFlusher)){p.queueFlush(c.columnFlusher=h={ownerContext:a,columnsChanged:f,layout:b,id:b.columnFlusherId,flush:b.flushColumnWidths})}if(!h.flushed){b.done=!1;return}}if(l){if(!(e=c.rowHeightFlusher)){if(!(d=c.rowHeights)){c.rowHeights=d=a.rowHeightSynchronizer;b.owner.syncRowHeightMeasure(d);a.setProp('rowHeights',d)}if(!(m=l.getProp('rowHeights'))){b.done=!1;return}p.queueFlush(c.rowHeightFlusher=e={ownerContext:a,synchronizer:d,otherSynchronizer:m,layout:b,id:b.rowHeightFlusherId,flush:b.flushRowHeights})}if(!e.flushed){b.done=!1;return}}Ext.layout.component.Auto.prototype.calculate.call(this,a);if(!a.heightModel.shrinkWrap){i=!1;if(!g.heightModel.shrinkWrap){j=g.target.layout.getContainerSize(g);if(!j.gotHeight){b.done=!1;return}n=o.offsetHeight;i=n>j.height}a.setProp('viewOverflowY',i)}},measureContentHeight:function(e){var d=this.owner,b=d.body.dom,c=d.emptyEl,a=0;if(c){a+=c.offsetHeight}if(b){a+=b.offsetHeight}if(e.headerContext.state.boxPlan.tooNarrow){a+=Ext.getScrollbarSize().height}return a},flushColumnWidths:function(){var a=this,i=a.layout,d=a.ownerContext,g=a.columnsChanged,h=d.target,j=g.length,b,c,e,f;if(d.state.columnFlusher!==a){return}for(c=0;c<j;c++){if(!(b=g[c])){continue}e=b.props.width;h.body.select(h.getColumnSizerSelector(b.target)).setWidth(e);f=b.lastBox;if(f){f.width=e}}a.flushed=!0;if(!i.pending){d.context.queueLayout(i)}},flushRowHeights:function(){var a=this,c=a.layout,b=a.ownerContext;if(b.state.rowHeightFlusher!==a){return}b.target.syncRowHeightFinish(a.synchronizer,a.otherSynchronizer);a.flushed=!0;b.syncRowHeights=!0;if(!c.pending){b.context.queueLayout(c)}},finishedLayout:function(b){var a=Ext.fly(this.owner.getNodeContainer());Ext.layout.component.Auto.prototype.finishedLayout.call(this,b);if(a){a.setWidth(b.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(c,d){var b=this,a;b.view=c;b.rowEl=d;b.els={};b.add('data',c.rowSelector);for(a=c.rowTpl;a;a=a.nextTpl){if(a.beginRowSync){a.beginRowSync(b)}}},add:function(c,b){var a=Ext.fly(this.rowEl).down(b,!0);if(a){this.els[c]={el:a}}},finish:function(i){var f=this,e=f.els,j=i.els,d,h=0,g=0,b,c,a;for(c in e){d=j[c];a=d?d.height:0;b=a-e[c].height;if(b>0){h+=b;Ext.fly(e[c].el).setHeight(a)}else {g-=b}}a=i.rowHeight+g;if(f.rowHeight+h<a){Ext.fly(f.rowEl).setHeight(a)}},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 b=this.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(e){var a=this,b=a.elements,c=a.statics().range,d;if(a.count&&e){if(c){c.setStartBefore(b[a.startIndex]);c.setEndAfter(b[a.endIndex]);c.deleteContents()}else {for(d in b){Ext.removeNode(b[d])}}}a.elements={};a.count=a.startIndex=0;a.endIndex=-1},fill:function(f,a,c){c=c||0;var d=this,g=d.elements={},b,e=f.length-c;if(!a){a=0}for(b=0;b<e;b++){g[a+b]=f[b+c]}d.startIndex=a;d.endIndex=a+e-1;d.count=e;return this},insert:function(c,f){var b=this,e=b.elements,a,d=f.length;if(b.count){if(c<b.count){for(a=b.endIndex+d;a>=c+d;a--){e[a]=e[a-d];e[a].setAttribute('data-recordIndex',a)}}b.endIndex=b.endIndex+d}else {b.startIndex=c;b.endIndex=c+d-1}for(a=0;a<d;a++,c++){e[c]=f[a];e[c].setAttribute('data-recordIndex',c)}b.count+=d},invoke:function(d,e){var a=this,c,b;d=Ext.dom.Element.prototype[d];for(b=a.startIndex;b<=a.endIndex;b++){c=a.item(b);if(c){d.apply(c,e)}}return a},item:function(a,c){var d=this.elements[a],b=null;if(d){b=c?this.elements[a]:this.el.attach(this.elements[a])}return b},first:function(a){return this.item(this.startIndex,a)},last:function(a){return this.item(this.endIndex,a)},moveBlock:function(c){var b=this,d=b.elements,g,f,e,a;if(c<0){a=b.startIndex-1;f=b.endIndex;e=1}else {a=b.endIndex+1;f=b.startIndex;e=-1}b.startIndex+=c;b.endIndex+=c;do{a+=e;g=d[a+c]=d[a];g.setAttribute('data-recordIndex',a+c);if(a<b.startIndex||a>b.endIndex){delete d[a]}}while(a!==f);delete d[a]},getCount:function(){return this.count},slice:function(e,a){var d=this.elements,c=[],b;if(!a){a=this.endIndex}else {a=Math.min(this.endIndex,a-1)}for(b=e||this.startIndex;b<=a;b++){c.push(d[b])}return c},replaceElement:function(a,b,d){var e=this.elements,c=typeof a==='number'?a:this.indexOf(a);if(c>-1){b=Ext.getDom(b);if(d){a=e[c];a.parentNode.insertBefore(b,a);Ext.removeNode(a);b.setAttribute('data-recordIndex',c)}this.elements[c]=b}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(f,c,i){var a=this,d=a.elements,g,b,h,e;if(c==null){c=a.endIndex+1}else {c=Math.min(a.endIndex+1,c+1)}if(f==null){f=a.startIndex}h=c-f;for(b=f,e=c;b<=a.endIndex;b++,e++){g=d[b];if(i&&b<c){Ext.removeNode(g)}if(e<=a.endIndex){g=d[b]=d[e];g.setAttribute('data-recordIndex',b)}else {delete d[b]}}a.count-=h;a.endIndex-=h},removeElement:function(a,k){var b=this,i,f,h=b.elements,j,e,c=0,d,g;if(Ext.isArray(a)){i=a;a=[];e=i.length;for(c=0;c<e;c++){f=i[c];if(typeof f!=='number'){f=b.indexOf(f)}if(f>=b.startIndex&&f<=b.endIndex){a[a.length]=f}}Ext.Array.sort(a);e=a.length}else {if(a<b.startIndex||a>b.endIndex){return}e=1;a=[a]}for(d=g=a[0],c=0;d<=b.endIndex;d++,g++){if(c<e&&d===a[c]){g++;c++;if(k){Ext.removeNode(h[d])}}if(g<=b.endIndex&&g>=b.startIndex){j=h[d]=h[g];j.setAttribute('data-recordIndex',d)}else {delete h[d]}}b.endIndex-=e;b.count-=e},scroll:function(h,q,g){var b=this,c=b.view,m=c.store,d=b.elements,o=h.length,n=c.getNodeContainer(),l=c.hasListeners.itemremove,p=c.hasListeners.itemadd,f=b.statics().range,a,e,k,i,j;if(!h.length){return}if(q===-1){if(g){if(f){f.setStartBefore(d[b.endIndex-g+1]);f.setEndAfter(d[b.endIndex]);f.deleteContents();for(a=b.endIndex-g+1;a<=b.endIndex;a++){e=d[a];delete d[a];if(l){c.fireEvent('itemremove',m.getByInternalId(e.getAttribute('data-recordId')),a,e,c)}}}else {for(a=b.endIndex-g+1;a<=b.endIndex;a++){e=d[a];delete d[a];Ext.removeNode(e);if(l){c.fireEvent('itemremove',m.getByInternalId(e.getAttribute('data-recordId')),a,e,c)}}}b.endIndex-=g}if(h.length){j=c.bufferRender(h,b.startIndex-=o);i=j.children;for(a=0;a<o;a++){d[b.startIndex+a]=i[a]}n.insertBefore(j.fragment,n.firstChild);if(p){c.fireEvent('itemadd',h,b.startIndex,i)}}}else {if(g){k=b.startIndex+g;if(f){f.setStartBefore(d[b.startIndex]);f.setEndAfter(d[k-1]);f.deleteContents();for(a=b.startIndex;a<k;a++){e=d[a];delete d[a];if(l){c.fireEvent('itemremove',m.getByInternalId(e.getAttribute('data-recordId')),a,e,c)}}}else {for(a=b.startIndex;a<k;a++){e=d[a];delete d[a];Ext.removeNode(e);if(l){c.fireEvent('itemremove',m.getByInternalId(e.getAttribute('data-recordId')),a,e,c)}}}b.startIndex=k}j=c.bufferRender(h,b.endIndex+1);i=j.children;for(a=0;a<o;a++){d[b.endIndex+=1]=i[a]}n.appendChild(j.fragment);if(p){c.fireEvent('itemadd',h,b.endIndex+1,i)}}b.count=b.endIndex-b.startIndex+1;return i},sumHeights:function(){var b=0,c=this.elements,a;for(a=this.startIndex;a<=this.endIndex;a++){b+=c[a].offsetHeight}return b}},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:!0,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:!0,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:!0,positionCells:!1,stripeOnUpdate:null,trackOver:!0,getRowClass:null,stripeRows:!0,markDirty:!0,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:!1,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(b){var a=this;return a.variableRowHeight||a.store.isGrouped()||a.getVisibleColumnManager().hasVariableRowHeight()||!b&&a.lockingPartner&&a.lockingPartner.hasVariableRowHeight(!0)},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 e=this,b=e.ownerGrid,c=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||c}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(b,c){var a=this;if(c){c.un({scope:a,lastselectedchanged:a.updateBindSelection,selectionchange:a.updateBindSelection});Ext.destroy(a.selModelRelayer)}a.selModelRelayer=a.relayEvents(b,['selectionchange','beforeselect','beforedeselect','select','deselect','focuschange']);b.on({scope:a,lastselectedchanged:a.updateBindSelection,selectionchange:a.updateBindSelection});a.selModel=b},getVisibleColumnManager:function(){return this.ownerCt.getVisibleColumnManager()},getColumnManager:function(){return this.ownerCt.getColumnManager()},getTopLevelVisibleColumnManager:function(){return this.ownerGrid.getVisibleColumnManager()},moveColumn:function(c,h,k){var b=this,m=k>1,e=m&&document.createRange?document.createRange():null,g=m&&!e?document.createDocumentFragment():null,j=h,p=b.getGridColumns().length,l=p-1,r=(b.firstCls||b.lastCls)&&(h===0||h===p||c===0||c===l),f,i,q,n,d,a,o;if(b.rendered&&h!==c){q=b.el.query(b.rowSelector);if(h>c&&g){j-=1}for(f=0,n=q.length;f<n;f++){d=q[f];a=d.childNodes;if(r){if(a.length===1){Ext.fly(a[0]).addCls(b.firstCls);Ext.fly(a[0]).addCls(b.lastCls);continue}if(c===0){Ext.fly(a[0]).removeCls(b.firstCls);Ext.fly(a[1]).addCls(b.firstCls)}else {if(c===l){Ext.fly(a[l]).removeCls(b.lastCls);Ext.fly(a[l-1]).addCls(b.lastCls)}}if(h===0){Ext.fly(a[0]).removeCls(b.firstCls);Ext.fly(a[c]).addCls(b.firstCls)}else {if(h===p){Ext.fly(a[l]).removeCls(b.lastCls);Ext.fly(a[c]).addCls(b.lastCls)}}}if(m){if(e){e.setStartBefore(a[c]);e.setEndAfter(a[c+k-1]);g=e.extractContents()}else {for(i=0;i<k;i++){g.appendChild(a[c])}}d.insertBefore(g,a[j]||null)}else {d.insertBefore(a[c],a[j]||null)}}o=b.el.query('colgroup');for(f=0,n=o.length;f<n;f++){d=o[f];if(m){if(e){e.setStartBefore(d.childNodes[c]);e.setEndAfter(d.childNodes[c+k-1]);g=e.extractContents()}else {for(i=0;i<k;i++){g.appendChild(d.childNodes[c])}}d.insertBefore(g,d.childNodes[j]||null)}else {d.insertBefore(d.childNodes[c],d.childNodes[j]||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(b,a){var c=this.getRow(b);return Ext.fly(c).down(a.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 !0}})}},initFeatures:function(e){var a=this,d,c,b,f;a.tpl=Ext.XTemplate.getTpl(this,'tpl');a.rowTpl=Ext.XTemplate.getTpl(this,'rowTpl');a.addRowTpl(Ext.XTemplate.getTpl(this,'outerRowTpl'));a.cellTpl=Ext.XTemplate.getTpl(this,'cellTpl');a.featuresMC=new Ext.util.MixedCollection();c=a.features=a.constructFeatures();f=c?c.length:0;for(d=0;d<f;d++){b=c[d];b.view=a;b.grid=e;a.featuresMC.add(b);b.init(e)}},renderTHead:function(c,f,e){var b=c.view.headerFns,d,a;if(b){for(a=0,d=b.length;a<d;++a){b[a].call(this,c,f,e)}}},addHeaderFn:function(b){var a=this.headerFns;if(!a){a=this.headerFns=[]}a.push(b)},renderTFoot:function(c,f,e){var b=c.view.footerFns,d,a;if(b){for(a=0,d=b.length;a<d;++a){b[a].call(this,c,f,e)}}},addFooterFn:function(b){var a=this.footerFns;if(!a){a=this.footerFns=[]}a.push(b)},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(d,a){var e=this,b,c;if(a.isTemplate){a=Ext.Object.chain(a)}else {a=new Ext.XTemplate('{%this.nextTpl.applyOut(values, out, parent);%}',a)}for(b=e[d];a.priority<b.priority;b=b.nextTpl){c=b}if(c){c.nextTpl=a}else {e[d]=a}a.nextTpl=b;return a},tplApplyOut:function(b,c,a){if(this.before){if(this.before(b,c,a)===!1){return}}this.nextTpl.applyOut(b,c,a);if(this.after){this.after(b,c,a)}},constructFeatures:function(){var f=this,c=f.features,a,d,b=0,e;if(c){d=[];e=c.length;for(;b<e;b++){a=c[b];if(!a.isFeature){a=Ext.create('feature.'+a.ftype,a)}d[b]=a}}return d},beforeRender:function(){var a=this;Ext.view.View.prototype.beforeRender.call(this);if(!a.enableTextSelection){a.protoEl.unselectable()}},onBindStore:function(c){var b=this,a=b.bufferedRenderer;if(a&&a.store!==c){a.bindStore(c)}if(b.all&&b.all.getCount()){if(a){a.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,a){var d=this.all,b=c.getPageSize();if(d.startIndex>=(a-1)*b&&d.endIndex<=a*b-1){c.get(a);return !1}},onViewScroll:function(a,b,c){if(!this.ignoreScroll){Ext.view.View.prototype.onViewScroll.call(this,a,b,c)}},createRowElement:function(e,f,d){var a=this,c=a.renderBuffer,b=a.collectData([e],f);b.columns=d;a.tpl.overwrite(c,b);return Ext.fly(c).down(a.getNodeContainerSelector(),!0).firstChild},bufferRender:function(e,f){var c=this,a=c.renderBuffer,b,d=document.createRange?document.createRange():null;c.tpl.overwrite(a,c.collectData(e,f));a=Ext.fly(a).down(c.getNodeContainerSelector(),!0);if(d){d.selectNodeContents(a);b=d.extractContents()}else {b=document.createDocumentFragment();while(a.firstChild){b.appendChild(a.firstChild)}}return {fragment:b,children:Ext.Array.toArray(b.childNodes)}},collectData:function(c,b){var a=this;a.rowValues.view=a;a.tableValues.view=a;a.tableValues.rows=c;a.tableValues.columns=null;a.tableValues.viewStartIndex=b;a.tableValues.touchScroll=a.touchScroll;a.tableValues.tableStyle='width:'+a.headerCt.getTableWidth()+'px';return a.tableValues},collectNodes:function(a){this.all.fill(this.getNodeContainer().childNodes,this.all.startIndex)},refreshSize:function(c){var a=this,b=a.getBodySelector();if(b){a.body.attach(a.el.down(b,!0))}if(!a.hasLoadingHeight){Ext.suspendLayouts();Ext.view.View.prototype.refreshSize.apply(this,arguments);if(c||a.hasVariableRowHeight()&&a.dataSource.getCount()){a.grid.updateLayout()}Ext.resumeLayouts(!0)}},clearViewEl:function(g){var a=this,e=a.all,h=a.getStore(),b,d,c,f;for(b=e.startIndex;b<=e.endIndex;b++){d=e.item(b,!0);a.fireEvent('itemremove',h.getByInternalId(d.getAttribute('data-recordId')),b,d,a)}Ext.view.View.prototype.clearViewEl.call(this);c=Ext.fly(a.getNodeContainer());if(c&&!g){f=a.getTargetEl();if(f.dom!==c.dom){c.destroy()}}},getMaskTarget:function(){return this.ownerCt.body},statics:{getBoundView:function(a){return Ext.getCmp(a.getAttribute('data-boundView'))}},getRecord:function(a){var c=this,b;if(c.store.isDestroyed){return}if(a.isModel){return a}a=c.getNode(a);if(a){if(!c.hasActiveFeature()){b=a.getAttribute('data-recordIndex');if(b){b=parseInt(b,10);if(b>-1){return c.store.data.getAt(b)}}}return c.dataSource.getByInternalId(a.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(d,f,c,g){var a=this.rowValues,e=d.length,b;a.view=this;a.columns=f;for(b=0;b<e;b++,c++){a.itemClasses.length=a.rowClasses.length=0;this.renderRow(d[b],c,g)}a.view=a.columns=a.record=null},renderColumnSizer:function(f,d){var b=f.columns||this.getGridColumns(),g=b.length,a,c,e;d.push('<colgroup role="presentation">');for(a=0;a<g;a++){c=b[a];e=c.cellWidth?c.cellWidth:Ext.grid.header.Container.prototype.defaultWidth;d.push('<col role="presentation" class="','x-','grid-cell-',b[a].getItemId(),'" style="width:'+e+'px">')}d.push('</colgroup>')},renderRow:function(c,e,j){var a=this,k=e===-1,h=a.selectionModel,b=a.rowValues,d=b.itemClasses,g=b.rowClasses,l=a.itemCls,f,i=a.rowTpl;b.rowAttr={};b.record=c;b.recordId=c.internalId;b.recordIndex=a.store.indexOf(c);b.rowIndex=e;b.rowId=a.getRowId(c);b.itemCls=b.rowCls='';if(!b.columns){b.columns=a.ownerCt.getVisibleColumnManager().getColumns()}d.length=g.length=0;if(!k){d[0]=l;if(!a.ownerCt.disableSelection&&h.isRowSelected){if(h.isRowSelected(c)){d.push(a.selectedItemCls)}}if(a.stripeRows&&e%2!==0){d.push(a.altRowCls)}if(a.getRowClass){f=a.getRowClass(c,e,null,a.dataSource);if(f){g.push(f)}}}if(j){i.applyOut(b,j,a.tableValues)}else {return i.apply(b,a.tableValues)}},renderCell:function(b,f,j,n,k,p){var c=this,m,h=c.selectionModel,a=c.cellValues,d=a.classes,l=f.data[b.dataIndex],o=c.cellTpl,g,e,i=c.navigationModel.getPosition();a.record=f;a.column=b;a.recordIndex=j;a.rowIndex=n;a.columnIndex=k;a.cellIndex=k;a.align=b.align;a.innerCls=b.innerCls;a.tdCls=a.tdStyle=a.tdAttr=a.style='';a.unselectableAttr=c.enableTextSelection?'':'unselectable="on"';d[1]=b.getCellId();e=2;if(b.renderer&&b.renderer.call){m=c.ownerCt.columnManager.getHeaderIndex(b);g=b.renderer.call(b.usingDefaultRenderer?b:b.scope||c.ownerCt,l,a,f,j,m,c.dataSource,c);if(a.css){f.cssWarning=!0;a.tdCls+=' '+a.css;a.css=null}if(a.tdCls){d[e++]=a.tdCls}}else {g=l}a.value=g==null||g===''?b.emptyCellText:g;if(b.tdCls){d[e++]=b.tdCls}if(c.markDirty&&f.dirty&&f.isModified(b.dataIndex)){d[e++]=c.dirtyCls}if(b.isFirstVisible){d[e++]=c.firstCls}if(b.isLastVisible){d[e++]=c.lastCls}if(!c.enableTextSelection){d[e++]=c.unselectableCls}if(h&&(h.isCellModel||h.isSpreadsheetModel)&&h.isCellSelected(c,j,b)){d[e++]=c.selectedCellCls}if(i&&i.record.id===f.id&&i.column===b){d[e++]=c.focusedItemCls}d.length=e;a.tdCls=d.join(' ');o.applyOut(a,p);a.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,!0)}if(Ext.isNumber(a)){b=this.all.item(a);return b&&b.down(this.rowSelector,!0)}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,!1)},getRowById:function(a){a=this.constructRowId(a);return this.retrieveNode(a,!0)},getNodeByRecord:function(a){return this.retrieveNode(this.getRowId(a),!1)},getRowByRecord:function(a){return this.retrieveNode(this.getRowId(a),!0)},getRowFromItem:function(c){var b=Ext.getDom(c).tBodies[0].childNodes,d=b.length,a;for(a=0;a<d;a++){if(Ext.fly(b[a]).is(this.rowSelector)){return b[a]}}},retrieveNode:function(c,b){var a=this.el.getById(c,!0);if(b&&a){return Ext.fly(a).down(this.rowSelector,!0)}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,c){var a=this.getRow(b);if(a){Ext.fly(a).addCls(c)}},removeRowCls:function(b,c){var a=this.getRow(b);if(a){Ext.fly(a).removeCls(c)}},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,!0);if(a){Ext.fly(a).removeCls(this.selectedCellCls)}},getCellInclusive:function(a,d){if(a){var c=this.getRow(a.row),b=this.ownerCt.getColumnManager().getHeaderAtIndex(a.column);if(b&&c){return Ext.fly(c).down(this.getCellSelector(b),d)}}return !1},getCellByPosition:function(a,e){if(a){var b=a.view||this,d=b.getRow(a.record||a.row),c=a.column.isColumn?a.column:b.getVisibleColumnManager().getHeaderAtIndex(a.column);if(c&&d){return Ext.fly(d).down(b.getCellSelector(c),e)}}return !1},onFocusEnter:function(b){var a=this,g,c=a.getNavigationModel(),i,d,h=a.bufferedRenderer,f,e;b=b.event;if(!a.cellFocused&&a.all.getCount()&&a.dataSource.getCount()){e=b.getTarget();if(e&&a.el.contains(e)&&e!==a.el.dom&&!Ext.fly(e).is(a.getCellSelector())){if(c.lastFocused){c.position=c.lastFocused}a.cellFocused=!0}else {i=d=a.getLastFocused();if(!d){g=a.isNormalView?a.lockingPartner.isVisible()?a.lockingPartner:a.normalView:a;f=a.dataSource.getAt(h?h.getFirstVisibleRowIndex():0);if(f&&!f.isNonData){d=(new Ext.grid.CellContext(g)).setPosition({row:f,column:0})}}if(!d){b.stopEvent();b.getTarget().blur();return}c.setPosition(d,null,b,null,!0);a.cellFocused=!!c.getPosition()}}if(a.cellFocused){a.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,!0)}a.cellFocused=!1;a.focusEl=a.el;a.focusEl.dom.setAttribute('tabindex',0)}},onRowFocus:function(b,d,c){var a=this;if(d){a.addItemCls(b,a.focusedItemCls);if(!c){a.focusRow(b)}}else {a.removeItemCls(b,a.focusedItemCls)}if(Ext.isIE8){a.repaintBorder(b+1)}},focusRow:function(d,b){var a=this,c=a.getFocusTask();if(b){c.delay(Ext.isNumber(b)?b:10,a.focusRow,a,[d,!1]);return}c.cancel();if(a.isVisible(!0)){a.getNavigationModel().setPosition(a.getRecord(d))}},focusNode:function(b,a){this.focusRow(b,a)},scrollRowIntoView:function(a,b){a=this.getRow(a);if(a){this.scrollElIntoView(a,!1,b)}},focusCell:function(b,c){var a=this,e,d=a.getFocusTask();if(c){d.delay(Ext.isNumber(c)?c:10,a.focusCell,a,[b,!1]);return}d.cancel();if(a.isVisible(!0)&&(e=a.getCellByPosition(b))){a.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(d,c,b){var a=this.getScrollable();if(a){a.scrollIntoView(d,c,b)}},syncRowHeightBegin:function(){var f=this,b=f.all,h=b.count,d=[],g=Ext.grid.locking.RowSynchronizer,a,c,e;for(a=0,c=b.startIndex;a<h;a++,c++){d[a]=e=new g(f,b.elements[c]);e.reset()}return d},syncRowHeightClear:function(b){var e=this,c=e.all,d=c.count,a;for(a=0;a<d;a++){b[a].reset()}},syncRowHeightMeasure:function(b){var c=b.length,a;for(a=0;a<c;a++){b[a].measure()}},syncRowHeightFinish:function(c,d){var e=c.length,b=this.bufferedRenderer,a;for(a=0;a<e;a++){c[a].finish(d[a])}if(b){b.syncRowHeightsFinish()}},handleUpdate:function(I,d,y,B){y=y||Ext.data.Model.EDIT;var a=this,m=a.rowTpl,x=a.markDirty,j=a.dirtyCls,v=y!==Ext.data.Model.EDIT,h=[],n=a.variableRowHeight,s=0,G=a.ownerCt,k=a.cellFly||(a.self.prototype.cellFly=new Ext.dom.Fly()),F,c,D,i,o,H,z,l,u,p,b,q,g,t,f,E,e,C,r,A,w;if(a.viewReady){c=a.getNodeByRecord(d);if(c){u=a.overItemCls;p=a.ownerCt.getVisibleColumnManager().getColumns();for(g=0,q=p.length;g<q;g++){b=p[g];if(b.preventUpdate){f=Ext.fly(c).down(b.getCellSelector(),!0);if(!v&&x){k.attach(f);if(d.isModified(b.dataIndex)){k.addCls(j)}else {k.removeCls(j)}}}else {t=a.shouldUpdateCell(d,b,B);if(t){s=s|t;h[h.length]=b;n=n||b.variableRowHeight}}}if(a.getRowClass||!a.getRowFromItem(c)||s&1||c.tBodies[0].childNodes.length>1){F=Ext.fly(c,'_internal');A=c._extData;i=a.createRowElement(d,a.dataSource.indexOf(d),h);if(F.hasCls(u)){Ext.fly(i).addCls(u)}if(Ext.isIE9m&&c.mergeAttributes){c.mergeAttributes(i,!0)}else {o=i.attributes;H=o.length;for(l=0;l<H;l++){z=o[l].name;if(z!=='id'){c.setAttribute(z,o[l].value)}}}if(A){A.isSynchronized=!1}if(p.length&&(D=a.getRow(c))){a.updateColumns(D,Ext.fly(i).down(a.rowSelector,!0),h)}while(m){if(m.syncContent){if(m.syncContent(c,i,B?h:null)===!1){break}}m=m.nextTpl}}else {for(g=0,q=h.length;g<q;g++){b=h[g];E=b.dataIndex;e=d.get(E);f=Ext.fly(c).down(b.getCellSelector(),!0);if(!v&&x){k.attach(f);if(d.isModified(b.dataIndex)){k.addCls(j)}else {k.removeCls(j)}}C=b.usingDefaultRenderer;r=C?b:b.scope;if(b.updater){Ext.callback(b.updater,r,[f,e,d,a,a.dataSource],0,b,G)}else {if(b.renderer){e=Ext.callback(b.renderer,r,[e,null,d,0,0,a.dataSource,a],0,b,G)}w=e==null||e==='';e=w?b.emptyCellText:e;if(b.producesHTML||w){f.childNodes[0].innerHTML=e}else {f.childNodes[0].childNodes[0].data=e}}if(a.highlightClass){Ext.fly(f).addCls(a.highlightClass);if(!a.changedCells){a.self.prototype.changedCells=[];a.prototype.clearChangedTask=new Ext.util.DelayedTask(a.clearChangedCells,a.prototype);a.clearChangedTask.delay(a.unhighlightDelay)}a.changedCells.push({cell:f,cls:a.highlightClass,expires:Ext.Date.now()+1000})}}}if(v&&x&&!d.dirty){Ext.fly(c,'_internal').select('.'+j).removeCls(j)}if(n){Ext.suspendLayouts()}a.fireEvent('itemupdate',d,a.store.indexOf(d),c);if(n){if(a.bufferedRenderer){a.bufferedRenderer.refreshSize();a.ownerGrid.updateLayout()}else {a.refreshSize()}Ext.resumeLayouts(!0)}}}},clearChangedCells:function(){var a=this,e=Ext.Date.now(),b;for(var d=0,c=a.changedCells.length;d<c;){b=a.changedCells[d];if(b.expires<=e){Ext.fly(b.cell).removeCls(b.highlightClass);Ext.Array.erase(a.changedCells,d,1);c--}else {break}}if(c){a.clearChangedTask.delay(a.unhighlightDelay)}},updateColumns:function(b,f,h){var m=this,d,k,g,a,n=h.length,c,l,j,i,e=m.getCellSelector();if(b.mergeAttributes){b.mergeAttributes(f,!0)}else {d=f.attributes;k=d.length;for(a=0;a<k;a++){g=d[a].name;if(g!=='id'){b.setAttribute(g,d[a].value)}}}for(c=0;c<n;c++){l=h[c];e=m.getCellSelector(l);j=Ext.fly(b).selectNode(e);i=Ext.fly(f).selectNode(e);Ext.fly(j).syncContent(i)}},shouldUpdateCell:function(e,c,b){if(!c.preventUpdate){if(c.hasCustomRenderer){return 1}if(b){var f=b.length,a,d;for(a=0;a<f;++a){d=b[a];if(d===c.dataIndex||d===e.idProperty){return 2}}}else {return 2}}return 0},refresh:function(){var a=this,b;Ext.view.View.prototype.refresh.apply(this,arguments);a.headerCt.setSortState();if(a.touchScroll&&a.el&&!a.all.getCount()&&a.headerCt&&a.headerCt.tooNarrow){b=a.getScrollable();if(b){b.setSize({x:a.headerCt.getTableWidth(),y:b.getSize().y})}}},processContainerEvent:function(b){var a=Ext.Component.fromElement(b.target.parentNode);if(a&&a.up(this.ownerCt)){return !1}},processItemEvent:function(g,q,f,b){var a=this,r=a.self,s=r.EventMap,d=b.type,o=a.features,t=o.length,k,h,j,m,i,p=a.getNavigationModel(),l=b.position=a.eventPosition||(a.eventPosition=new Ext.grid.CellContext()),n,e,c;if(Ext.isIE&&d==='mouseup'&&!b.within(a.el)){return !1}if(a.indexInStore(q)!==-1){e=l.rowElement=Ext.fly(q).down(a.rowSelector,!0);if(Ext.String.startsWith(b.type,'key')&&(n=p.getPosition())){c=(c=p.getCell())&&c.dom;i=n.column}if(!c){c=b.getTarget(a.getCellSelector(),e)}d=r.TouchEventMap[d]||d;if(c){if(!c.parentNode){return !1}if(!i){i=a.getHeaderByCell(c)}h=a.ownerCt.getColumnManager().getHeaderIndex(i)}else {h=-1}l.setAll(a,f,i?a.getVisibleColumnManager().getHeaderIndex(i):-1,g,i);l.cellElement=c;j=a.fireEvent('uievent',d,a,c,f,h,b,g,e);if(j===!1||Ext.view.View.prototype.processItemEvent.apply(this,arguments)===!1){return !1}for(k=0;k<t;++k){m=o[k];if(m.wrapsItem){if(m.vetoEvent(g,e,f,b)===!1){a.processSpecialEvent(b);b.preventDefault();return !1}}}if(c&&d!=='mouseover'&&d!=='mouseout'){j=!(a['onBeforeCell'+s[d]](c,h,g,e,f,b)===!1||a.fireEvent('beforecell'+d,a,c,h,g,e,f,b)===!1||a['onCell'+s[d]](c,h,g,e,f,b)===!1||a.fireEvent('cell'+d,a,c,h,g,e,f,b)===!1)}if(j!==!1){j=a.fireEvent('row'+d,a,g,e,f,b)}return j}else {this.processSpecialEvent(b);b.preventDefault();return !1}},processSpecialEvent:function(f){var a=this,k=a.features,l=k.length,b=f.type,g,c,i,d,h,j,e=a.ownerCt;Ext.view.View.prototype.processSpecialEvent.apply(this,arguments);if(b==='mouseover'||b==='mouseout'){return}b=a.self.TouchEventMap[b]||b;for(g=0;g<l;g++){c=k[g];if(c.hasFeatureEvent){d=f.getTarget(c.eventSelector,a.getTargetEl());if(d){i=c.eventPrefix;h=c.getFireEventArgs('before'+i+b,a,d,f);j=c.getFireEventArgs(i+b,a,d,f);if(a.fireEvent.apply(a,h)===!1||e.fireEvent.apply(e,h)===!1||a.fireEvent.apply(a,j)===!1||e.fireEvent.apply(e,j)===!1){return !1}}}}return !0},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(b){var c=this,d=c.el.query(b.getCellInnerSelector()),j=b.getWidth(),f=0,i=d.length,g=c.body.select(c.getColumnSizerSelector(b)),h=Math.max,e=0,a;if(i>0){if(Ext.supports.ScrollWidthInlinePaddingBug){e+=c.getCellPaddingAfter(d[0])}if(c.columnLines){e+=Ext.fly(d[0].parentNode).getBorderWidth('lr')}}g.setWidth(1);b.textEl.setStyle({'text-overflow':'clip',display:'table-cell'});a=b.textEl.dom.offsetWidth+b.titleEl.getPadding('lr');b.textEl.setStyle({'text-overflow':'',display:''});for(;f<i;f++){a=h(a,d[f].scrollWidth)}a+=e;a=h(a+1,40);g.setWidth(j);return a},getPositionByEvent:function(b){var a=this,c=b.getTarget(a.cellSelector),d=b.getTarget(a.itemSelector),f=a.getRecord(d),e=a.getHeaderByCell(c);return a.getPosition(f,e)},getHeaderByCell:function(a){if(a){return this.ownerCt.getVisibleColumnManager().getHeaderById(a.getAttribute('data-columnId'))}return !1},walkCells:function(g,l,f,n,o,p){if(!g){return !1}var e=this,a=typeof g.row==='number'?g.row:g.rowIdx,j=typeof g.column==='number'?g.column:g.colIdx,i=e.dataSource.getCount(),c=e.ownerCt.getVisibleColumnManager(),k=c.getHeaderIndex(c.getFirst()),m=c.getHeaderIndex(c.getLast()),d=a,b=j,h=c.getHeaderAtIndex(j);if(!h||h.hidden||!i){return !1}f=f||{};l=l.toLowerCase();switch(l){case 'right':if(j===m){if(n||a===i-1){return !1}if(!f.ctrlKey){d=e.walkRows(a,1);if(d!==a){b=k}}}else {if(!f.ctrlKey){b=c.getHeaderIndex(c.getNextSibling(h))}else {b=m}};break;case 'left':if(j===k){if(n||a===0){return !1}if(!f.ctrlKey){d=e.walkRows(a,-1);if(d!==a){b=m}}}else {if(!f.ctrlKey){b=c.getHeaderIndex(c.getPreviousSibling(h))}else {b=k}};break;case 'up':if(a===0){return !1}else {if(!f.ctrlKey){d=e.walkRows(a,-1)}else {d=e.walkRows(-1,1)}};break;case 'down':if(a===i-1){return !1}else {if(!f.ctrlKey){d=e.walkRows(a,1)}else {d=e.walkRows(i,-1)}};break;}if(o&&o.call(p||e,{row:d,column:b})!==!0){return !1}b=c.getHeaderAtIndex(b);return (new Ext.grid.CellContext(e)).setPosition(d,b)},walkRows:function(g,f){var j=this,c=j.dataSource,h=0,e=g,i,b=f<0?0:(c.isBufferedStore?c.getTotalCount():c.getCount())-1,d=b?1:-1,a=g;do{if(b?a>=b:a<=b){return e||b}a+=d;if((i=Ext.fly(j.getRow(a)))&&i.isVisible(!0)){h+=d;e=a}}while(h!==f);return a},walkRecs:function(h,g){var k=this,a=k.dataSource,i=0,e=h,j,c=g<0?0:(a.isBufferedStore?a.getTotalCount():a.getCount())-1,f=c?1:-1,b=a.indexOf(h),d;do{if(c?b>=c:b<=c){return e}b+=f;d=a.getAt(b);if(!d.isCollapsedPlaceholder&&(j=Ext.fly(k.getNodeByRecord(d)))&&j.isVisible(!0)){i+=f;e=d}}while(i!==g);return e},getFirstVisibleRowIndex:function(){var a=this,c=a.dataSource.isBufferedStore?a.dataSource.getTotalCount():a.dataSource.getCount(),b=a.indexOf(a.all.first())-1;do{b+=1;if(b===c){return}}while(!Ext.fly(a.getRow(b)).isVisible(!0));return b},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(!0));return a},getHeaderCt:function(){return this.headerCt},getPosition:function(b,a){return (new Ext.grid.CellContext(this)).setPosition(b,a)},onDestroy:function(){var c=this,b=c.featuresMC,d,a;if(b){for(a=0,d=b.getCount();a<d;++a){b.getAt(a).destroy()}}c.cellFly=c.featuresMC=null;Ext.view.View.prototype.onDestroy.apply(this,arguments)},onReplace:function(f,c,e,d){var a=this,b=a.bufferedRenderer;if(a.rendered&&b){b.onReplace(f,c,e,d)}else {Ext.view.View.prototype.onReplace.apply(this,arguments)}a.setPendingStripe(c)},onAdd:function(e,d,c){var a=this,b=a.bufferedRenderer;if(a.rendered&&b){b.onReplace(e,c,[],d)}else {Ext.view.View.prototype.onAdd.apply(this,arguments)}a.setPendingStripe(c)},onRemove:function(e,d,c){var a=this,b=a.bufferedRenderer;if(a.rendered&&b){b.onReplace(e,c,d,[])}else {Ext.view.View.prototype.onRemove.apply(this,arguments)}a.setPendingStripe(c)},onDataRefresh:function(){var b=this,a=b.ownerCt;if(a&&a.isCollapsingOrExpanding===2){a.on('expand',b.onDataRefresh,b,{single:!0});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(b){var a=this.stripeOnUpdate;if(a===null){a=b}else {a=Math.min(a,b)}this.stripeOnUpdate=a},onEndUpdate:function(){var b=this,a=b.stripeOnUpdate,c=b.all.startIndex;if(b.rendered&&(a||a===0)){if(a<c){a=c}b.doStripeRows(a);b.stripeOnUpdate=null}Ext.view.View.prototype.onEndUpdate.apply(this,arguments)},doStripeRows:function(d,g){var a=this,e,f,c,b;if(a.rendered&&a.stripeRows){e=a.getNodes(d,g);for(c=0,f=e.length;c<f;c++){b=e[c];b.className=b.className.replace(a.rowClsRe,' ');d++;if(d%2===0){b.className+=' '+a.altRowCls}}}},hasActiveFeature:function(){return this.isGrouping&&this.store.isGrouped()||this.isRowWrapped},getCellPaddingAfter:function(a){return Ext.fly(a).getPadding('r')},privates:{refreshScroll:function(){var b=this,a=b.bufferedRenderer;if(a){a.refreshSize()}else {Ext.view.View.prototype.refreshScroll.call(this)}}}},1,['gridview','tableview'],['component','box','dataview','tableview','gridview'],{'component':!0,'box':!0,'dataview':!0,'tableview':!0,'gridview':!0},['widget.gridview','widget.tableview'],0,[Ext.view,'Table',Ext.grid,'View'],0);Ext.define('Ext.theme.crisp.view.Table',{override:'Ext.view.Table',stripeRows:!1});Ext.cmd.derive('Ext.grid.Panel',Ext.panel.Table,{alternateClassName:['Ext.list.ListView','Ext.ListView','Ext.grid.GridPanel'],viewType:'tableview',lockable:!1,rowLines:!0},0,['grid','gridpanel'],['component','box','container','panel','tablepanel','gridpanel','grid'],{'component':!0,'box':!0,'container':!0,'panel':!0,'tablepanel':!0,'gridpanel':!0,'grid':!0},['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:!0,getByName:function(b,a){return this.filterBy(function(c){return c.name===b&&c.getFormId()===a})}},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:!1,childEls:['boxLabelEl','innerWrapEl'],fieldSubTpl:['<div id="{cmpId}-innerWrapEl" data-ref="innerWrapEl" 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="!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:!0,compiled:!0}],publishes:{checked:1},subTplInsertions:['beforeBoxLabelTpl','afterBoxLabelTpl','beforeBoxLabelTextTpl','afterBoxLabelTextTpl','boxLabelAttrTpl','inputAttrTpl'],isCheckbox:!0,focusCls:'form-checkbox-focus',fieldBodyCls:'x-form-cb-wrap',checked:!1,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:!1,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 a=this,b=!!a.checked;a.originalValue=a.lastValue=b;a.setValue(b)},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(e){var a=this,d=a.boxLabel,c=a.boxLabelAlign,b=c==='before';return Ext.apply(Ext.form.field.Base.prototype.getSubTplData.apply(this,arguments),{disabled:a.readOnly||a.disabled,wrapInnerCls:a.wrapInnerCls,boxLabel:d,boxLabelCls:a.boxLabelCls,boxLabelAlign:c,labelAlignedBefore:b,afterLabelCls:b?a.afterLabelCls:'',noBoxLabelCls:!d?a.noBoxLabelCls:'',role:a.ariaRole})},initEvents:function(){var a=this;Ext.form.field.Base.prototype.initEvents.call(this);a.mon(a.inputEl,'click',a.onBoxClick,a,{translate:!1})},setBoxLabel:function(b){var a=this;a.boxLabel=b;if(a.rendered){a.boxLabelEl.setHtml(b);a.innerWrapEl[b?'removeCls':'addCls'](a.noBoxLabelCls);a.updateLayout()}},onBoxClick:function(){var a=this;if(!a.disabled&&!a.readOnly){a.setValue(!a.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(a,b){return a===!0||a==='true'||a==='1'||a===1||((Ext.isString(a)||Ext.isNumber(a))&&b?a==b:this.onRe.test(a))},setRawValue:function(d){var a=this,c=a.inputEl,b=a.isChecked(d,a.inputValue);if(c){a[b?'addCls':'removeCls'](a.checkedCls)}a.checked=a.rawValue=b;if(!a.duringSetValue){a.lastValue=b}return b},setValue:function(e){var a=this,c,b,f,d;if(Ext.isArray(e)){c=a.getManager().getByName(a.name,a.getFormId()).items;f=c.length;for(b=0;b<f;++b){d=c[b];d.setValue(Ext.Array.contains(e,d.inputValue))}}else {a.duringSetValue=!0;Ext.form.field.Base.prototype.setValue.apply(this,arguments);delete a.duringSetValue}return a},valueToRaw:Ext.identityFn,onChange:function(c,d){var a=this,b=a.handler;if(b){Ext.callback(b,a.scope,[a,c],0,a)}Ext.form.field.Base.prototype.onChange.apply(this,arguments);if(a.reference&&a.publishState){a.publishState('checked',c)}},resetOriginalValue:function(f){var c=this,b,d,e,a;if(!f){b=c.getManager().getByName(c.name,c.getFormId()).items;e=b.length;for(a=0;a<e;++a){d=b[a];if(d!==c){b[a].resetOriginalValue(!0)}}}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 b=this,a=b.inputEl;Ext.form.field.Base.prototype.onEnable.call(this);if(a){a.dom.disabled=b.readOnly}},setReadOnly:function(c){var b=this,a=b.inputEl;if(a){a.dom.disabled=!!c||b.disabled}Ext.form.field.Base.prototype.setReadOnly.apply(this,arguments)},getFormId:function(){var a=this,b;if(!a.formId){b=a.up('form');if(b){a.formId=b.id}}return a.formId}},0,['checkbox','checkboxfield'],['component','box','field','checkboxfield','checkbox'],{'component':!0,'box':!0,'field':!0,'checkboxfield':!0,'checkbox':!0},['widget.checkbox','widget.checkboxfield'],0,[Ext.form.field,'Checkbox',Ext.form,'Checkbox'],0);Ext.cmd.derive('Ext.selection.RowModel',Ext.selection.DataViewModel,{enableKeyNav:!0,isRowModel:!0,deselectOnContainerClick:!1,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,!0)}}},onSelectChange:function(c,g,e,j){var a=this,i=a.views||[a.view],k=i.length,b=a.store.indexOf(c),h=g?'select':'deselect',f,d;if((e||a.fireEvent('before'+h,a,c,b))!==!1&&j()!==!1){for(f=0;f<k;f++){d=i[f];b=d.indexOf(c);if(d.indexOf(c)!==-1){if(g){d.onRowSelect(b,e)}else {d.onRowDeselect(b,e)}}}if(!e){a.fireEvent(h,a,c,b)}}},onEditorTab:function(b,d){var h=this,g=b.context.view,f=b.getActiveRecord(),a=b.context,e=d.shiftKey?'left':'right',c;do{c=a;a=g.walkCells(a,e,d,h.preventWrap);if(c&&c.isEqual(a)){return}}while(a&&(!a.column.getEditor(f)||!b.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(f,e){var a=this,h=a.store,d=a.getSelection(),g=d[d.length-1],c=a.view.indexOf(g)+1,b;if(c===h.getCount()||c===0){b=!1}else {a.doSelect(c,f,e);b=!0}return b},selectPrevious:function(e,d){var b=this,f=b.getSelection(),g=f[0],c=b.view.indexOf(g)-1,a;if(c<0){a=!1}else {b.doSelect(c,e,d);a=!0}return a},isRowSelected:function(a){return this.isSelected(a)},isCellSelected:function(c,a,b){return this.isSelected(a)}},0,0,0,0,['selection.rowmodel'],0,[Ext.selection,'RowModel'],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(f){var a=this,d=a.owner,e=d.grid?d.grid.getView():null,g=a.firstHeaderCls,h=a.lastHeaderCls,j=[g,h],k=a.getVisibleItems(),i=k.length,c,b;if(e&&e.scrollFlags.x){a.viewScrollX=e.getScrollX();d.suspendEvent('scroll');e.suspendEvent('scroll')}Ext.layout.container.HBox.prototype.beginLayout.call(this,f);for(c=0;c<i;c++){b=k[c];if(i===1){b.addCls(j)}else {if(c===0){b.addCls(g);b.removeCls(h)}else {if(c===i-1){b.removeCls(g);b.addCls(h)}else {b.removeCls(j)}}}}a.scrollbarWidth=0;if(d.isRootHeader){a.determineScrollbarWidth(f)}if(!a.scrollbarWidth){f.manageScrollbar=!1}},moveItemBefore:function(a,c){var b=a.ownerCt;if(a!==c&&b){b.remove(a,!1)}return Ext.layout.container.HBox.prototype.moveItemBefore.call(this,a,c)},determineScrollbarWidth:function(g){var f=this,e=f.owner,a=e.grid,b=e.reserveScrollbar===!1,c=a.reserveScrollbar&&!b,d=!c&&!b&&a.view.scrollFlags.y;g.manageScrollbar=d;if(!a.ownerGrid.collapsed&&(c||d)){delete f.scrollbarWidth}},calculate:function(a){var b=this,m=b.owner.grid,i=a.viewContext,g=a.state,o=a.context,f,l,c,j,n,e,d,k,h;Ext.layout.container.HBox.prototype.calculate.call(this,a);if(m&&g.parallelDone){f=i.lockingPartnerContext;l=m.ownerGrid;if(l.forceFit&&!g.reflexed){if(b.convertWidthsToFlexes(a)){b.cacheFlexes(a);b.done=!1;a.invalidate({state:{reflexed:!0,scrollbarAdjustment:b.getScrollbarAdjustment(a)}});return}}if((c=g.columnsChanged)===undefined){j=a.target.getVisibleGridColumns();c=!1;for(e=0,n=j.length;e<n;e++){d=o.getCmp(j[e]);if(!d.lastBox||d.props.width!==d.lastBox.width){(c||(c=[]))[e]=d}}g.columnsChanged=c;a.setProp('columnsChanged',c)}if(a.manageScrollbar){k=b.getScrollbarAdjustment(a);if(k){h=i.getProp('viewOverflowY');if(h===undefined){b.done=!1;return}if(!h){if(f){f.invalidate();f.headerContext.invalidate()}i.invalidate();a.invalidate({state:{scrollbarAdjustment:0}})}}}}},finishedLayout:function(e){var d=this,a=d.owner,b=a.grid?a.grid.getView():null,c=d.viewScrollX;Ext.layout.container.HBox.prototype.finishedLayout.call(this,e);if(b&&b.scrollFlags.x){if(c!==undefined&&a.tooNarrow&&a.componentLayoutCounter){a.setScrollX(c)}b.resumeEvent('scroll');a.resumeEvent('scroll')}},convertWidthsToFlexes:function(d){var i=this,f=0,h=i.sizeModels.calculated,e,g,c,a,b;e=d.childItems;g=e.length;for(c=0;c<g;c++){a=e[c];b=a.target;f+=a.props.width;if(!(b.fixed||b.resizable===!1)){b.flex=d.childItems[c].flex=a.props.width;b.width=null;a.widthModel=h}}return f!==d.props.width},getScrollbarAdjustment:function(b){var e=this,c=b.state,d=e.owner.grid,a=c.scrollbarAdjustment;if(a===undefined){a=0;if(d.reserveScrollbar||b.manageScrollbar&&!d.ownerGrid.layout.ownerContext.heightModel.shrinkWrap){a=e.scrollbarWidth}c.scrollbarAdjustment=a}return a},getContainerSize:function(a){var j=this,e,d,i,h,g,c,b,f;if(j.owner.isRootHeader){f=Ext.layout.container.HBox.prototype.getContainerSize.call(this,a);if(f.gotWidth){f.width-=j.getScrollbarAdjustment(a)}}else {i=a.paddingContext.getPaddingInfo();e=d=0;if(!a.widthModel.shrinkWrap){++d;c=a.getProp('innerWidth');h=typeof c==='number';if(h){++e;c-=i.width;if(c<0){c=0}}}if(!a.heightModel.shrinkWrap){++d;b=a.getProp('innerHeight');g=typeof b==='number';if(g){++e;b-=i.height;if(b<0){b=0}}}return {width:c,height:b,needed:d,got:e,gotAll:e===d,gotWidth:h,gotHeight:g}}return f},publishInnerCtSize:function(a){var e=this,c=e.owner,d=a.peek('contentWidth'),b=0;if(d!=null&&c.isRootHeader){b=-a.state.scrollbarAdjustment}return Ext.layout.container.HBox.prototype.publishInnerCtSize.call(this,a,b)}},0,0,0,0,['layout.gridcolumn'],0,[Ext.grid,'ColumnLayout'],0);Ext.cmd.derive('Ext.dd.DragTracker',Ext.Base,{active:!1,trackOver:!1,tolerance:5,autoStart:!1,constructor:function(b){var a=this;Ext.apply(a,b);a.dragRegion=new Ext.util.Region(0,0,0,0);if(a.el){a.initEl(a.el)}a.mixins.observable.constructor.call(a);if(a.disabled){a.disable()}},initEl:function(b){var a=this,c=a.delegate;a.el=b=Ext.get(b);if(c&&c.isElement){a.handle=c}a.delegate=a.handle?undefined:a.delegate;if(!a.handle){a.handle=b}a.handleListeners={scope:a,delegate:a.delegate,mousedown:a.onMouseDown,dragstart:a.onDragStart};if(!Ext.supports.TouchEvents&&(a.trackOver||a.overCls)){Ext.apply(a.handleListeners,{mouseover:a.onMouseOver,mouseout:a.onMouseOut})}a.mon(a.handle,a.handleListeners);a.keyNav=new Ext.util.KeyNav({target:b,up:a.onResizeKeyDown,left:a.onResizeKeyDown,right:a.onResizeKeyDown,down:a.onResizeKeyDown,scope:a})},disable:function(){this.disabled=!0},enable:function(){this.disabled=!1},destroy:function(){var a=this;a.endDrag({});a.clearListeners();a.el=a.handle=null},onMouseOver:function(d,h){var a=this,f,b,e,g,c;if(!a.disabled){if(d.within(d.target,!0,!0)||a.delegate){f=a.handleCls;a.mouseIsOut=!1;if(f){for(e=0,g=a.handleEls.length;e<g;e++){b=a.handleEls[e];c=b.delegateCls;if(!c){c=b.delegateCls=[f,'-',b.region,'-over'].join('')}b.addCls([c,a.overCls])}}a.fireEvent('mouseover',a,d,a.delegate?d.getTarget(a.delegate,h):a.handle)}}},onMouseOut:function(e){var a=this,c,b,d;if(a.mouseIsDown){a.mouseIsOut=!0}else {if(a.handleCls){for(b=0,d=a.handleEls.length;b<d;b++){c=a.handleEls[b];c.removeCls([c.delegateCls,a.overCls])}}a.fireEvent('mouseout',a,e)}},onMouseDown:function(b,c){var a=this;if(a.disabled||b.dragTracked){return}a.dragTarget=a.delegate?c:a.handle.dom;a.startXY=a.lastXY=b.getXY();a.startRegion=Ext.fly(a.dragTarget).getRegion();if(a.fireEvent('mousedown',a,b)===!1||a.fireEvent('beforedragstart',a,b)===!1||a.onBeforeStart(b)===!1){return}a.mouseIsDown=!0;b.dragTracked=!0;a.el.setCapture();b.stopPropagation();if(a.preventDefault!==!1){b.preventDefault()}Ext.getDoc().on({scope:a,capture:!0,mouseup:a.onMouseUp,mousemove:a.onMouseMove,selectstart:a.stopSelect});a.dragEnded=!1;if(!a.tolerance){a.triggerStart()}else {if(a.autoStart){a.timer=Ext.defer(a.triggerStart,a.autoStart===!0?1000:a.autoStart,a,[b])}}},onMouseMove:function(b,e){var a=this,c=b.getXY(),d=a.startXY;b.stopPropagation();if(a.preventDefault!==!1){b.preventDefault()}if(a.dragEnded){return}a.lastXY=c;if(!a.active){if(Math.max(Math.abs(d[0]-c[0]),Math.abs(d[1]-c[1]))>a.tolerance){a.triggerStart(b)}else {return}}if(a.fireEvent('mousemove',a,b)===!1){a.onMouseUp(b)}else {a.onDrag(b);a.fireEvent('drag',a,b)}},onMouseUp:function(b){var a=this;a.mouseIsDown=!1;if(a.mouseIsOut){a.mouseIsOut=!1;a.onMouseOut(b)}if(a.preventDefault!==!1){b.preventDefault()}if(Ext.isIE&&document.releaseCapture){document.releaseCapture()}a.fireEvent('mouseup',a,b);a.endDrag(b)},endDrag:function(b){var a=this,c=a.active;Ext.getDoc().un({mousemove:a.onMouseMove,mouseup:a.onMouseUp,selectstart:a.stopSelect,capture:!0,scope:a});a.clearStart();a.active=!1;if(c){a.dragEnded=!0;a.onEnd(b);a.fireEvent('dragend',a,b)}a._constrainRegion=null},triggerStart:function(b){var a=this;a.clearStart();a.active=!0;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 !1},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 a=this.getXY(c),b=this.startXY;return [a[0]-b[0],a[1]-b[1]]},onDragStart:function(a){a.stopPropagation()},constrainModes:{point:function(d,b){var a=d.dragRegion,c=d.getConstrainRegion();if(!c){return b}a.x=a.left=a[0]=a.right=b[0];a.y=a.top=a[1]=a.bottom=b[1];a.constrainTo(c);return [a.left,a.top]},dragTarget:function(e,c){var f=e.startXY,a=e.startRegion.copy(),b=e.getConstrainRegion(),d;if(!b){return c}a.translateBy(c[0]-f[0],c[1]-f[1]);if(a.right>b.right){c[0]+=d=b.right-a.right;a.left+=d}if(a.left<b.left){c[0]+=b.left-a.left}if(a.bottom>b.bottom){c[1]+=d=b.bottom-a.bottom;a.top+=d}if(a.top<b.top){c[1]+=b.top-a.top}return c}}},1,0,0,0,0,[['observable',Ext.util.Observable]],[Ext.dd,'DragTracker'],0);Ext.cmd.derive('Ext.grid.plugin.HeaderResizer',Ext.plugin.Abstract,{disabled:!1,config:{dynamic:!1},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 a=this,b=a.headerCt,c=b.el;b.mon(c,'mousemove',a.onHeaderCtMouseMove,a);a.markerOwner=a.ownerGrid=a.headerCt.up('tablepanel');if(a.markerOwner.ownerLockable){a.markerOwner=a.markerOwner.ownerLockable}a.tracker=new Ext.dd.DragTracker({disabled:a.disabled,onBeforeStart:a.onBeforeStart.bind(a),onStart:a.onStart.bind(a),onDrag:a.onDrag.bind(a),onEnd:a.onEnd.bind(a),tolerance:3,autoStart:300,el:c})},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(e){var c=this,h=e.getTarget('.'+c.colHeaderCls,3,!0),g=c.ownerGrid,f=g.ownerLockable,a,b,d,i;if(h){a=Ext.getCmp(h.id);if(a.isAtEndEdge(e)){if(c.headerCt.visibleColumnManager.getColumns().length===1&&c.headerCt.forceFit){return}b=a}else {if(a.isAtStartEdge(e)){d=c.headerCt.visibleColumnManager.getColumns();i=a.isGroupHeader?a.getGridColumns()[0]:a;b=d[Ext.Array.indexOf(d,i)-1];if(!b&&f&&!g.isLocked){d=f.lockedGrid.headerCt.visibleColumnManager.getColumns();b=d[d.length-1]}}}if(b){if(b.isGroupHeader){d=b.getGridColumns();b=d[d.length-1]}if(b&&!(b.fixed||b.resizable===!1)){c.activeHd=b;a.el.dom.style.cursor=c.eResizeCursor;if(a.triggerEl){a.triggerEl.dom.style.cursor=c.eResizeCursor}}}else {a.el.dom.style.cursor='';if(a.triggerEl){a.triggerEl.dom.style.cursor=''}c.activeHd=null}}return c.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 !0}else {a.headerCt.dragging=!1;return !1}},getConstrainRegion:function(){var a=this,e=a.dragHd.el,c,b=a.ownerGrid,g=b.getSizeModel().width,d=g.shrinkWrap?a.headerCt.getWidth()-a.headerCt.visibleColumnManager.getColumns().length*a.minColWidth:a.maxColWidth,f;if(a.headerCt.forceFit){c=a.dragHd.nextNode('gridcolumn:not([hidden]):not([isGroupHeader])');if(c&&a.headerInSameGrid(c)){d=e.getWidth()+(c.getWidth()-a.minColWidth)}}else {if(b.isLocked&&g.shrinkWrap){d=a.dragHd.up('[scrollerOwner]').getTargetEl().getWidth(!0)-b.getWidth()-(b.ownerLockable.normalGrid.visibleColumnManager.getColumns().length*a.minColWidth+Ext.getScrollbarSize().width)}}f=a.adjustConstrainRegion(e.getRegion(),0,0,0,a.minColWidth);f.right=e.getX()+d;return f},onStart:function(k){var b=this,i=b.dragHd,j=i.el.getWidth(),h=i.getRootHeaderCt(),f,g,a,c,d,e;b.headerCt.dragging=!0;b.origWidth=j;if(!b.dynamic){a=b.markerOwner;if(a.frame&&a.resizable){b.gridOverflowSetting=a.el.dom.style.overflow;a.el.dom.style.overflow='hidden'}f=b.getLeftMarkerX(a);c=a.getLhsMarker();d=a.getRhsMarker();e=b.ownerGrid.body.getHeight()+h.getHeight();g=h.getOffsetsTo(a)[1]-a.el.getBorderWidth('t');c.setLocalY(g);d.setLocalY(g);c.setHeight(e);d.setHeight(e);b.setMarkerX(c,f);b.setMarkerX(d,f+j)}},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(c){var a=this,b;a.headerCt.dragging=!1;if(a.dragHd){if(!a.dynamic){b=a.headerCt.up('tablepanel');if(b.ownerLockable){b=b.ownerLockable}if('gridOverflowSetting' in a){b.el.dom.style.overflow=a.gridOverflowSetting}a.setMarkerX(b.getLhsMarker(),-9999);a.setMarkerX(b.getRhsMarker(),-9999)}a.doResize()}a.onHeaderCtMouseMove(c)},doResize:function(){var b=this,c=b.dragHd,a,d=b.tracker.getOffset('point');if(c&&d[0]){if(c.flex){delete c.flex}Ext.suspendLayouts();b.adjustColumnWidth(d[0]-b.xDelta);if(b.headerCt.forceFit){a=c.nextNode('gridcolumn:not([hidden]):not([isGroupHeader])');if(a&&!b.headerInSameGrid(a)){a=null}if(a){delete a.flex;a.setWidth(a.getWidth()-d[0])}}Ext.resumeLayouts(!0)}},headerInSameGrid:function(a){var b=this.dragHd.up('tablepanel');return !!a.up(b)},disable:function(){var a=this.tracker;this.disabled=!0;if(a){a.disable()}},enable:function(){var a=this.tracker;this.disabled=!1;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(a,b){a.setLocalX(b)},adjustConstrainRegion:function(a,e,d,b,c){return a.adjust(e,d,b,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(a,d){var c=this,b=c.containerScroll;Ext.dd.DragSource.prototype.constructor.call(this,a,d);if(b){a=c.scrollEl||a;a=Ext.get(a);if(Ext.isObject(b)){a.ddScrollConfig=b}Ext.dd.ScrollManager.register(a)}},getDragData:function(a){return Ext.dd.Registry.getHandleFromEvent(a)},onInitDrag:function(a,b){this.proxy.update(this.dragData.ddel.cloneNode(!0));this.onStartDrag(a,b);return !0},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=!0;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(c){if(c.getTarget(this.colInnerSelector)){var d=c.getTarget(this.colHeaderSelector),a,b;if(d){a=Ext.getCmp(d.id);if(!this.headerCt.dragging&&a.draggable&&!(a.isAtStartEdge(c)||a.isAtEndEdge(c))){b=document.createElement('div');b.role='presentation';b.innerHTML=a.text;return {ddel:b,header:a}}}}return !1},onBeforeDrag:function(){return !(this.headerCt.dragging||this.disabled)},onInitDrag:function(){this.headerCt.dragging=!0;this.headerCt.hideMenu();Ext.dd.DragZone.prototype.onInitDrag.apply(this,arguments)},onDragDrop:function(){this.headerCt.dragging=!1;Ext.dd.DragZone.prototype.onDragDrop.apply(this,arguments)},afterRepair:function(){Ext.dd.DragZone.prototype.afterRepair.call(this);this.headerCt.dragging=!1},getRepairXY:function(){return this.dragData.header.el.getXY()},disable:function(){this.disabled=!0},enable:function(){this.disabled=!1}},1,0,0,0,0,0,[Ext.grid.header,'DragZone'],0);Ext.cmd.derive('Ext.dd.DDTarget',Ext.dd.DragDrop,{constructor:function(a,c,b){if(a){this.initTarget(a,c,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:!0,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(b){var a=Ext.dd.ScrollManager;a.dragEl=null;a.clearProc()},triggerRefresh:function(){if(this.ddmInstance.dragCurrent){this.ddmInstance.refreshCache(this.ddmInstance.dragCurrent.groups)}},doScroll:function(){var d=this;if(d.ddmInstance.dragCurrent){var b=d.proc,h=b.el,g=b.component,c=b.el.ddScrollConfig,e=c&&c.increment?c.increment:d.increment,a=c&&'animate' in c?c.animate:d.animate,f=function(){d.triggerRefresh()};if(a){if(a===!0){a={callback:f}}else {a.callback=a.callback?Ext.Function.createSequence(a.callback,f):f}}if(g){e=e*d.dirTrans[b.dir];if(b.dir==='up'||b.dir==='down'){g.scrollBy(0,e,a)}else {g.scrollBy(e,0,a)}}else {h.scroll(b.dir,e,a)}if(!a){f()}}},clearProc:function(){var a=this.proc;if(a.id){clearInterval(a.id)}a.id=0;a.el=null;a.dir=''},startProc:function(a,f){var b=this,d=b.proc,c,e;b.clearProc();d.el=a;d.dir=f;c=a.ddScrollConfig?a.ddScrollConfig.ddGroup:undefined;e=a.ddScrollConfig&&a.ddScrollConfig.frequency?a.ddScrollConfig.frequency:b.frequency;if(c===undefined||b.ddmInstance.dragCurrent.ddGroup===c){d.id=Ext.interval(b.doScroll,e)}},onFire:function(j,i){var a=this,d,f,g,h,b,c,e;if(i||!a.ddmInstance.dragCurrent){return}if(!a.dragEl||a.dragEl!==a.ddmInstance.dragCurrent){a.dragEl=a.ddmInstance.dragCurrent;a.refreshCache()}d=j.getPoint();f=a.proc;g=a.els;for(h in g){b=g[h];c=b._region;e=b.ddScrollConfig||a;if(c&&c.contains(d)&&b.isScrollable()){if(c.bottom-d.y<=e.vthresh){if(f.el!==b){a.startProc(b,'down')}return}else {if(c.right-d.x<=e.hthresh){if(f.el!==b){a.startProc(b,'right')}return}else {if(d.y-c.top<=e.vthresh){if(f.el!==b){a.startProc(b,'up')}return}else {if(d.x-c.left<=e.hthresh){if(f.el!==b){a.startProc(b,'left')}return}}}}}}a.clearProc()},register:function(a){if(Ext.isArray(a)){for(var b=0,c=a.length;b<c;b++){this.register(a[b])}}else {a=Ext.get(a);this.els[a.id]=a}},unregister:function(a){if(Ext.isArray(a)){for(var b=0,c=a.length;b<c;b++){this.unregister(a[b])}}else {a=Ext.get(a);delete this.els[a.id]}},vthresh:25*(window.devicePixelRatio||1),hthresh:25*(window.devicePixelRatio||1),increment:100,frequency:500,animate:!0,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:!0})},containerScroll:!1,dropAllowed:'x-dd-drop-ok',dropNotAllowed:'x-dd-drop-nodrop',isTarget:!0,isNotifyTarget:!0,notifyEnter:function(b,c,a){if(this.overClass){this.el.addCls(this.overClass)}return this.dropAllowed},notifyOver:function(b,c,a){return this.dropAllowed},notifyOut:function(b,c,a){if(this.overClass){this.el.removeCls(this.overClass)}},notifyDrop:function(b,c,a){if(this.overClass){this.el.removeCls(this.overClass)}return !1},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:!0,constructor:function(){this.elements={};this.handles={};this.autoIdSeed=0},getId:function(a,c){if(typeof a==='string'){return a}var b=a.id;if(!b&&c!==!1){b='extdd-'+ ++this.autoIdSeed;a.id=b}return b},register:function(b,a){a=a||{};if(typeof b==='string'){b=document.getElementById(b)}a.ddel=b;this.elements[this.getId(b)]=a;if(a.isHandle!==!1){this.handles[a.ddel.id]=a}if(a.handles){var e=a.handles,c,d;for(c=0,d=e.length;c<d;c++){this.handles[this.getId(e[c])]=a}}},unregister:function(f){var e=this.getId(f,!1),b=this.elements[e],c,a,d;if(b){delete this.elements[e];if(b.handles){c=b.handles;for(a=0,d=c.length;a<d;a++){delete this.handles[this.getId(c[a],!1)]}}}},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,b,c,a){},onNodeOver:function(d,b,c,a){return this.dropAllowed},onNodeOut:function(d,b,c,a){},onNodeDrop:function(d,b,c,a){return !1},onContainerOver:function(b,c,a){return this.dropNotAllowed},onContainerDrop:function(b,c,a){return !1},notifyEnter:function(b,c,a){return this.dropNotAllowed},notifyOver:function(d,b,c){var a=this,e=a.getTargetFromEvent(b);if(!e){if(a.lastOverNode){a.onNodeOut(a.lastOverNode,d,b,c);a.lastOverNode=null}return a.onContainerOver(d,b,c)}if(a.lastOverNode!==e){if(a.lastOverNode){a.onNodeOut(a.lastOverNode,d,b,c)}a.onNodeEnter(e,d,b,c);a.lastOverNode=e}return a.onNodeOver(e,d,b,c)},notifyOut:function(b,c,a){if(this.lastOverNode){this.onNodeOut(this.lastOverNode,b,c,a);this.lastOverNode=null}},notifyDrop:function(d,b,c){var a=this,e=a.getTargetFromEvent(b),f=e?a.onNodeDrop(e,d,b,c):a.onContainerDrop(d,b,c);if(a.lastOverNode){a.onNodeOut(a.lastOverNode,d,b,c);a.lastOverNode=null}return f},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=!0;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:' '});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:' '})}return this.bottomIndicator},getLocation:function(d,c){var e=d.getXY()[0],a=Ext.fly(c).getRegion(),b;if(a.right-e<=(a.right-a.left)/2){b='after'}else {b='before'}return {pos:b,header:Ext.getCmp(c.id),node:c}},positionIndicator:function(t,v,w){var a=this,f=t.header,n=a.getLocation(w,v),b=n.header,c=n.pos,r,s,e,d,o,m,j,h,g,q,p,l,u,k,i;if(b===a.lastTargetHeader&&c===a.lastDropPos){return}r=f.nextSibling('gridcolumn:not([hidden])');s=f.previousSibling('gridcolumn:not([hidden])');a.lastTargetHeader=b;a.lastDropPos=c;if(!b.draggable&&c==='before'&&b.getIndex()===0){return !1}t.dropLocation=n;if(f!==b&&(c==='before'&&r!==b||c==='after'&&s!==b)&&!b.isDescendantOf(f)){l=Ext.dd.DragDropManager.getRelated(a);u=l.length;k=0;for(;k<u;k++){i=l[k];if(i!==a&&i.invalidateDrop){i.invalidateDrop()}}a.valid=!0;e=a.getTopIndicator();d=a.getBottomIndicator();if(c==='before'){o='bc-tl';m='tc-bl'}else {o='bc-tr';m='tc-br'}j=e.getAlignToXY(b.el,o);h=d.getAlignToXY(b.el,m);g=a.headerCt.el;q=g.getX()-a.indicatorXOffset;p=g.getX()+g.getWidth();j[0]=Ext.Number.constrain(j[0],q,p);h[0]=Ext.Number.constrain(h[0],q,p);e.setXY(j);d.setXY(h);e.show();d.show()}else {a.invalidateDrop()}},invalidateDrop:function(){this.valid=!1;this.hideIndicators()},onNodeOver:function(h,j,i,a){var c=this,d=a.header,b,g,e,f;if(a.header.el.dom===h){b=!1}else {a.isLock=a.isUnlock=a.crossPanel=!1;g=c.getLocation(i,h).header;b=d.ownerCt===g.ownerCt;if(!b&&(!d.ownerCt.sealed&&!g.ownerCt.sealed)){b=!0;e=d.up('tablepanel');f=g.up('tablepanel');if(e!==f){a.crossPanel=!0;a.isLock=f.isLocked&&!e.isLocked;a.isUnlock=!f.isLocked&&e.isLocked;if(a.isUnlock&&d.lockable===!1||a.isLock&&!d.isLockable()){b=!1}}}}if(b){c.positionIndicator(a,h,i)}else {c.valid=!1}return c.valid?c.dropAllowed:c.dropNotAllowed},hideIndicators:function(){var a=this;a.getTopIndicator().hide();a.getBottomIndicator().hide();a.lastTargetHeader=a.lastDropPos=null},onNodeOut:function(){this.hideIndicators()},getNestedHeader:function(a,b){var c=a.items,d;if(a.isGroupHeader&&c.length){d=!b?'first':'last';a=this.getNestedHeader(c[d](),b)}return a},onNodeDrop:function(r,q,s,f){if(!this.valid){return}var j=this,a=f.header,m=f.dropLocation,g=m.pos,c=m.header,e=a.ownerCt,p=e.getRootHeaderCt(),d=c.ownerCt,k=j.headerCt.visibleColumnManager,h=k.getHeaderIndex(a),b,i,n,l,o;if(f.isLock||f.isUnlock){l=e.up('[scrollerOwner]');b=d.items.indexOf(c);if(g==='after'){b++}if(f.isLock){l.lock(a,b,d)}else {l.unlock(a,b,d)}}else {b=g==='after'?k.getHeaderIndex(j.getNestedHeader(c,1))+1:k.getHeaderIndex(j.getNestedHeader(c,0));j.invalidateDrop();o=a.getWidth();Ext.suspendLayouts();e.isDDMoveInGrid=d.isDDMoveInGrid=!f.crossPanel;if(a.isGroupHeader&&c.isGroupHeader){a.setNestedParent(c)}if(g==='before'){c.insertNestedHeader(a)}else {n='move'+g.charAt(0).toUpperCase()+g.substr(1);d[n](a,c)}if(b>=0&&!(c.isGroupHeader&&!c.items.length)&&h!==b){i=a.isGroupHeader?a.query(':not([hidden]):not([isGroupHeader])').length:1;if(h<=b&&i>1){b-=i}d.getRootHeaderCt().grid.view.moveColumn(h,b,i)}p.fireEvent('columnmove',e,a,h,b);e.isDDMoveInGrid=d.isDDMoveInGrid=!1;if(d.isGroupHeader&&!e.isGroupHeader){if(e!==d){a.savedFlex=a.flex;delete a.flex;a.width=o}}else {if(!e.isGroupHeader){if(a.savedFlex){a.flex=a.savedFlex;delete a.width}}}Ext.resumeLayouts(!0)}}},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({boxready:this.onHeaderCtRender,single:!0,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=!1;if(this.dragZone){this.dragZone.enable()}},disable:function(){this.disabled=!0;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:!0,baseCls:'x-grid-header-ct',dock:'top',weight:100,defaultType:'gridcolumn',detachOnRemove:!1,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:!1,dragging:!1,sortOnClick:!0,enableFocusableContainer:!1,childHideCount:0,sortable:!0,enableColumnHide:!0,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=!1;a.focusable=!0;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=!0;if(!a.hiddenHeaders){a.enableFocusableContainer=!0;a.ariaRole='row'}a.columnManager=new Ext.grid.ColumnManager(!1,a);a.visibleColumnManager=new Ext.grid.ColumnManager(!0,a);if(a.grid){a.grid.columnManager=a.columnManager;a.grid.visibleColumnManager=a.visibleColumnManager}}else {a.visibleColumnManager=new Ext.grid.ColumnManager(!0,a);a.columnManager=new Ext.grid.ColumnManager(!1,a)}}a.menuTask=new Ext.util.DelayedTask(a.updateMenuDisabledState,a);Ext.container.Container.prototype.initComponent.call(this)},insertNestedHeader:function(d){var b=this,e=d.ownerCt,f=b.ownerCt,c=f.layout.owner,a;if(e){if(b.isGroupHeader&&!f.isNestedParent){a=c.items.indexOf(b)}e.remove(d,!1)}if(a===undefined){a=c.items.indexOf(b)}c.insert(a,d)},isNested:function(){return !!this.getRootHeaderCt().down('[isNestedParent]')},isNestedGroupHeader:function(){var a=this,b=a.getRefOwner().query('>:not([hidden])');return b.length===1&&b[0]===a},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=!1;a.ownerCt.isNestedParent=!!(this.ownerCt.items.length===1&&a.ownerCt.items.length===1)},initEvents:function(){var a=this,b,c;Ext.container.Container.prototype.initEvents.call(this);if(!a.isColumn&&!a.isGroupHeader){b=a.onHeaderCtEvent;c={click:b,dblclick:b,contextmenu:b,mouseover:a.onHeaderCtMouseOver,mouseout:a.onHeaderCtMouseOut,scope:a};if(Ext.supports.Touch){c.longpress=a.onHeaderCtLongPress}a.mon(a.el,c)}},onHeaderCtEvent:function(b,g){var c=this,f=c.getHeaderElByEvent(b),a,e,d;if(c.longPressFired){c.longPressFired=!1;return}if(f&&!c.ddLock){a=Ext.getCmp(f.id);if(a){e=a[a.clickTargetName];if(!a.isGroupHeader&&!a.isContainer||b.within(e)){if(b.type==='click'||b.type==='tap'){d=a.onTitleElClick(b,e,c.sortOnClick);if(d){c.onHeaderTriggerClick(d,b,Ext.supports.Touch?d.el:d.triggerEl)}else {c.onHeaderClick(a,b,g)}}else {if(b.type==='contextmenu'){c.onHeaderContextMenu(a,b,g)}else {if(b.type==='dblclick'&&a.resizable){a.onTitleElDblClick(b,e.dom)}}}}}}},onHeaderCtMouseOver:function(b,e){var c,a,d;if(!b.within(this.el,!0)){c=b.getTarget('.'+Ext.grid.column.Column.prototype.baseCls);a=c&&Ext.getCmp(c.id);if(a){d=a[a.clickTargetName];if(b.within(d)){a.onTitleMouseOver(b,d.dom)}}}},onHeaderCtMouseOut:function(c,g){var f='.'+Ext.grid.column.Column.prototype.baseCls,d=c.getTarget(f),e=c.getRelatedTarget(f),a,b;if(d!==e){if(d){a=Ext.getCmp(d.id);if(a){b=a[a.clickTargetName];a.onTitleMouseOut(c,b.dom)}}if(e){a=Ext.getCmp(e.id);if(a){b=a[a.clickTargetName];a.onTitleMouseOver(c,b.dom)}}}},onHeaderCtLongPress:function(d){var a=this,b=a.getHeaderElByEvent(d),c=Ext.getCmp(b.id);if(!c.menuDisabled){a.longPressFired=!0;a.showMenuBy(d,b,c)}},getHeaderElByEvent:function(a){return a.getTarget('.'+Ext.grid.column.Column.prototype.baseCls)},isLayoutRoot:function(){if(this.hiddenHeaders){return !1}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(g){if(!g||!g.length){return}var i=this,m=i.items.items,n=m.length,b=0,h=g.length,f,e,a,d,k=!1,c=[],l={},j=[];for(f=0;f<h;f++){a=g[f];a.index=f;l[a.id]=a}for(b=0;b<n;b++){e=m[b];a=l[e.getStateId()];if(a){d=a.index;c[d]=e;if(b!==d){k=!0}if(e.applyColumnState){e.applyColumnState(a)}}else {j.push({index:b,column:e})}}c=Ext.Array.clean(c);h=j.length;if(h){for(b=0;b<h;b++){a=j[b];d=a.index;if(d<c.length){k=!0;Ext.Array.splice(c,d,0,a.column)}else {c.push(a.column)}}}if(k){i.removeAll(!1);i.add(c);i.purgeCache()}},getColumnsState:function(){var c=this,b=[],a;c.items.each(function(c){a=c.getColumnState&&c.getColumnState();if(a){b.push(a)}});return b},onAdd:function(a){var b=this;if(!a.headerId){a.headerId=a.initialConfig.id||Ext.id(null,'header-')}if(a.sortable===undefined){a.sortable=b.sortable}if(!a.getStateId()){a.stateId=a.initialConfig.id||'h'+ ++b.headerCounter}Ext.container.Container.prototype.onAdd.apply(this,arguments);b.onHeadersChanged(a,b.isDDMoveInGrid)},move:function(b,e){var d=this,c=d.items,a;if(b.isComponent){a=b;b=c.indexOf(a)}else {a=c.getAt(b)}a.visibleFromIdx=d.getRootHeaderCt().visibleColumnManager.indexOf(a);Ext.container.Container.prototype.move.apply(this,arguments)},onMove:function(a,g,h){var e=this,d=e.getRootHeaderCt(),f=d.visibleColumnManager,c=1,b;e.onHeadersChanged(a,!0);b=f.indexOf(a);if(b>=a.visibleFromIdx){b++}Ext.container.Container.prototype.onMove.apply(this,arguments);if(a.isGroupHeader){c=a.visibleColumnManager.getColumns().length}d.onHeaderMoved(a,c,a.visibleFromIdx,b)},onRemove:function(b){var a=this,c=a.ownerCt;Ext.container.Container.prototype.onRemove.apply(this,arguments);if(!a.destroying){if(!a.isDDMoveInGrid){a.onHeadersChanged(b,!1)}if(a.isGroupHeader&&!a.isNestedParent&&c&&!a.items.getCount()){if(b.rendered){a.detachComponent(b)}Ext.suspendLayouts();c.remove(a);Ext.resumeLayouts(!0)}}},onHeadersChanged:function(c,d){var b,a=this.getRootHeaderCt();this.purgeHeaderCtCache(this);if(a){a.onColumnsChanged();if(!c.isGroupHeader){b=a.ownerCt;if(b&&!d){b.onHeadersChanged(a,c)}}}},onHeaderMoved:function(d,f,c,e){var a=this,b=a.ownerCt;if(a.rendered){if(b&&b.onHeaderMove){b.onHeaderMove(a,d,f,c,e)}a.fireEvent('columnmove',a,d,c,e)}},onColumnsChanged:function(){var a=this,b=a.menu,c,d;if(a.rendered){a.fireEvent('columnschanged',a);if(b&&(c=b.child('#columnItemSeparator'))){d=b.child('#columnItem');c.destroy();d.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 e=this.up('[store]').store,c=this.visibleColumnManager.getColumns(),f=c.length,a,b,d;for(a=0;a<f;a++){b=c[a];d=e.getSorters().get(b.getSortParam());b.setSortState(d)}},getHeaderMenu:function(){var b=this.getMenu(),a;if(b){a=b.child('#columnItem');if(a){return a.menu}}return null},onHeaderVisibilityChange:function(d,e){var a=this,c=a.getHeaderMenu(),b;a.purgeHeaderCtCache(d.ownerCt);if(c){b=a.getMenuItemForHeader(c,d);if(b){b.setChecked(e,!0)}if(c.isVisible()){a.menuTask.delay(50)}}},updateMenuDisabledState:function(e){var f=this,g=f.query(':not([hidden])'),b,h=g.length,d,a,c;if(!e){e=f.getMenu()}for(b=0;b<h;++b){d=g[b];a=f.getMenuItemForHeader(e,d);if(a){c=d.isHideable()?'enable':'disable';if(a.menu){c+='CheckChange'}a[c]()}}},getMenuItemForHeader:function(b,a){return a?b.down('menucheckitem[headerId='+a.id+']'):null},onHeaderShow:function(b){var a=this,c=a.ownerCt;if(!c){return}if(a.forceFit){delete a.flex}a.onHeaderVisibilityChange(b,!0);c.onHeaderShow(a,b);a.fireEvent('columnshow',a,b);a.fireEvent('columnschanged',this)},onHeaderHide:function(b){var a=this,c=a.ownerCt;if(!c){return}a.onHeaderVisibilityChange(b,!1);c.onHeaderHide(a,b);a.fireEvent('columnhide',a,b);a.fireEvent('columnschanged',this)},onHeaderResize:function(c,d){var a=this,b=a.ownerCt;if(b){b.onHeaderResize(a,c,d)}a.fireEvent('columnresize',a,c,d)},onHeaderClick:function(a,c,e){var b=this,d=a.getView().getSelectionModel();a.fireEvent('headerclick',b,a,c,e);if(b.fireEvent('headerclick',b,a,c,e)!==!1){if(d.onHeaderClick){d.onHeaderClick(b,a,c)}}},onHeaderContextMenu:function(a,b,c){a.fireEvent('headercontextmenu',this,a,b,c);this.fireEvent('headercontextmenu',this,a,b,c)},onHeaderTriggerClick:function(a,c,d){var b=this;if(a.fireEvent('headertriggerclick',b,a,c,d)!==!1&&b.fireEvent('headertriggerclick',b,a,c,d)!==!1){if(a.activeMenu){if(c.pointerType){a.activeMenu.hide()}else {a.activeMenu.focus()}}else {b.showMenuBy(c,d,a)}}},showMenuBy:function(d,g,c){var a=this.getMenu(),f=a.down('#ascItem'),e=a.down('#descItem'),b;a.activeHeader=a.ownerCmp=c;c.setMenuActive(a);b=c.sortable?'enable':'disable';if(f){f[b]()}if(e){e[b]()}a.autoFocus=!d||!d.pointerType;a.showBy(g,'tl-bl?');if(!a.isVisible()){this.onMenuHide(a)}},hideMenu:function(){if(this.menu){this.menu.hide()}},onMenuHide:function(a){a.activeHeader.setMenuActive(!1)},purgeHeaderCtCache:function(a){while(a){a.purgeCache();if(a.isRootHeader){return}a=a.ownerCt}},purgeCache:function(){var a=this,b=a.visibleColumnManager,c=a.columnManager;a.gridVisibleColumns=a.gridDataColumns=a.hideableColumns=null;if(b){b.invalidate();c.invalidate()}},getMenu:function(){var a=this;if(!a.menu){a.menu=new Ext.menu.Menu({hideOnParentHide:!1,items:a.getMenuItems(),listeners:{beforeshow:a.beforeMenuShow,hide:a.onMenuHide,scope:a}});a.fireEvent('menucreate',a,a.menu)}return a.menu},beforeMenuShow:function(d){var a=this,e=d.child('#columnItem'),b,c;if(!e){b=a.enableColumnHide?a.getColumnMenu(a):null;c=a.sortable?2:0;if(b&&b.length){d.insert(c,[{itemId:'columnItemSeparator',xtype:'menuseparator'},{itemId:'columnItem',text:a.columnsText,iconCls:a.menuColsIcon,menu:{items:b},hideOnClick:!1}])}}a.updateMenuDisabledState(a.menu)},getMenuItems:function(){var a=this,b=[],c=a.enableColumnHide?a.getColumnMenu(a):null;if(a.sortable){b=[{itemId:'ascItem',text:a.sortAscText,iconCls:a.menuSortAscCls,handler:a.onSortAscClick,scope:a},{itemId:'descItem',text:a.sortDescText,iconCls:a.menuSortDescCls,handler:a.onSortDescClick,scope:a}]}if(c&&c.length){if(a.sortable){b.push({itemId:'columnItemSeparator',xtype:'menuseparator'})}b.push({itemId:'columnItem',text:a.columnsText,iconCls:a.menuColsIcon,menu:c,hideOnClick:!1})}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(f){var b=[],c=0,a,e=f.query('>gridcolumn[hideable]'),g=e.length,d;for(;c<g;c++){a=e[c];d=new Ext.menu.CheckItem({text:a.menuText||a.text,checked:!a.hidden,hideOnClick:!1,headerId:a.id,menu:a.isGroupHeader?this.getColumnMenu(a):undefined,checkHandler:this.onColumnCheckChange,scope:this});b.push(d)}return b.length?b:null},onColumnCheckChange:function(d,c){var a=Ext.getCmp(d.headerId),b;if(a.rendered){a[c?'show':'hide']();b=a.lastCheckedHeaderId;if(c&&b){a.getRootHeaderCt().getMenu().down('[headerId='+b+']').setChecked(!0);a.lastCheckedHeaderId=null}}else {a.hidden=!c}},getColumnCount:function(){return this.getGridColumns().length},getTableWidth:function(){var b=0,c=this.getVisibleGridColumns(),d=c.length,a;for(a=0;a<d;a++){b+=c[a].getCellWidth()||0}return b},getVisibleGridColumns:function(){var b=this,e,f,a,g,d,c;if(b.gridVisibleColumns){return b.gridVisibleColumns}e=b.getGridColumns();f=b.getRootHeaderCt();a=[];g=e.length;for(d=0;d<g;d++){c=e[d];if(!c.hidden&&!c.isColumnHidden(f)){a[a.length]=c}}b.gridVisibleColumns=a;return a},isColumnHidden:function(b){var a=this.getRefOwner();while(a&&a!==b){if(a.hidden){return !0}a=a.getRefOwner()}return !1},getGridColumns:function(g,f){if(!g&&this.gridDataColumns){return this.gridDataColumns}var i=this,c=g||[],h,b,d,a,e;f=f||i.hidden;if(i.items){h=i.items.items;if(h){for(b=0,d=h.length;b<d;b++){a=h[b];if(a.isGroupHeader){a.visibleIndex=c.length;a.getGridColumns(c,f)}else {a.hiddenAncestor=f;c.push(a)}}}}if(!g){i.gridDataColumns=c}if(!g&&d){for(b=0,d=c.length;b<d;b++){a=c[b];a.fullColumnIndex=b;a.isFirstVisible=a.isLastVisible=!1;if(!(a.hidden||a.hiddenAncestor)){if(!e){a.isFirstVisible=!0}e=a}}if(e){e.isLastVisible=!0}}return c},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(b){var k=this,j=k.view,i=Ext.grid.plugin.HeaderResizer.prototype.minColWidth,l=!1,m=Ext.grid.header.Container.prototype.defaultWidth,h=k.el.dom.clientWidth-(j.el.dom.scrollHeight>j.el.dom.clientHeight?Ext.getScrollbarSize().width:0),n=0,e=k.getVisibleGridColumns(),o=b.hidden,f,c,a,g,d;function getTotalFlex(){for(c=0,f=e.length;c<f;c++){a=e[c];if(a===b){continue}a.flex=a.flex||a.width||a.getWidth();n+=a.flex;a.width=null}}function applyWidth(){var g;for(c=0,f=e.length;c<f;c++){a=e[c];g=a===b;if(l&&!g){a.flex=i;a.width=null}else {if(!g){d=a.flex||m;a.flex=Math.max(Math.ceil(d/n*h),i);a.width=null}}a.setWidth(a.width||a.flex)}}Ext.suspendLayouts();g=h-(e.length+1)*i;b.flex=null;if(o){d=b.width||b.savedWidth;b.savedWidth=null}else {d=j.getMaxContentWidth(b)}if(d>g){b.width=g;l=!0}else {b.width=d;h-=d+m;getTotalFlex()}applyWidth();Ext.resumeLayouts(!0)},autoSizeColumn:function(a){var b=this.view;if(b){b.autoSizeColumn(a);if(this.forceFit){this.applyForceFit(a)}}},privates:{beginChildHide:function(){++this.childHideCount},endChildHide:function(){--this.childHideCount},getFocusables:function(){return this.isRootHeader?this.getVisibleGridColumns():this.items.items},createFocusableContainerKeyNav:function(b){var a=this;return new Ext.util.KeyNav(b,{scope:a,down:a.showHeaderMenu,left:a.onFocusableContainerLeftKey,right:a.onFocusableContainerRightKey,space:a.onHeaderActivate,enter:a.onHeaderActivate})},showHeaderMenu:function(b){var a=this.getFocusableFromEvent(b);if(a&&a.isColumn&&a.triggerEl){this.onHeaderTriggerClick(a,b,a.triggerEl)}},onHeaderActivate:function(d){var a=this.getFocusableFromEvent(d),c,b;if(a&&a.isColumn){c=a.getView();if(a.sortable&&this.sortOnClick){b=c.getNavigationModel().getLastFocused();a.toggleSortState();if(b){c.ownerCt.ensureVisible(b.record)}}this.onHeaderClick(a,d,a.el)}},onFocusableContainerMousedown:function(c,b){var a=Ext.Component.fromElement(b);if(a===this){c.preventDefault()}else {a.focus()}}}},0,['headercontainer'],['component','box','container','headercontainer'],{'component':!0,'box':!0,'container':!0,'headercontainer':!0},['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:!0,_paddingReset:{paddingTop:'',paddingBottom:''},columnAutoCls:'x-column-header-text-container-auto',beginLayout:function(a){Ext.layout.component.Auto.prototype.beginLayout.apply(this,arguments);a.titleContext=a.getEl('titleEl')},beginLayoutCycle:function(d){var b=this,a=b.owner,c=d.widthModel.shrinkWrap;Ext.layout.component.Auto.prototype.beginLayoutCycle.apply(this,arguments);if(c){a.el.setWidth('')}a.textContainerEl[c?'addCls':'removeCls'](b.columnAutoCls);a.titleEl.setStyle(b._paddingReset)},publishInnerHeight:function(a,e){var d=this,b=d.owner,c;if(b.getRootHeaderCt().hiddenHeaders){a.setProp('innerHeight',0);return}if(!a.hasRawContent){if(b.headerWrap&&!a.hasDomProp('width')){d.done=!1;return}c=e-a.getBorderInfo().height;a.setProp('innerHeight',c-b.titleEl.getHeight(),!1)}},measureContentHeight:function(a){return a.el.dom.offsetHeight},publishInnerWidth:function(a,b){if(!a.hasRawContent){a.setProp('innerWidth',b-a.getBorderInfo().width,!1)}},calculateOwnerHeightFromContentHeight:function(a,c){var d=Ext.layout.component.Auto.prototype.calculateOwnerHeightFromContentHeight.apply(this,arguments),b=this.owner;if(!a.hasRawContent){if(!b.headerWrap||a.hasDomProp('width')){return c+b.titleEl.getHeight()+a.getBorderInfo().height}return null}return d},calculateOwnerWidthFromContentWidth:function(a,d){var c=this.owner,f=a.getPaddingInfo().width,e=this.getTriggerOffset(c,a),b;if(c.isGroupHeader){b=d}else {b=Math.max(d,c.textEl.getWidth()+a.titleContext.getPaddingInfo().width)}return b+f+e},getTriggerOffset:function(a,c){var b=0;if(c.widthModel.shrinkWrap&&!a.menuDisabled){if(a.query('>:not([hidden])').length===0){b=a.getTriggerElWidth()}}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:!1},baseCls:'x-column-header',hoverCls:'x-column-header-over',handleWidth:Ext.supports.Touch?10:4,ariaRole:'columnheader',enableFocusableContainer:!1,sortState:null,possibleSortStates:['ASC','DESC'],childEls:['titleEl','triggerEl','textEl','textContainerEl'],headerWrap:!1,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 id="{id}-textContainerEl" data-ref="textContainerEl" 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:' ',menuText:null,emptyCellText:' ',sortable:!0,resizable:!0,hideable:!0,menuDisabled:!1,renderer:!1,align:'left',draggable:!0,tooltipType:'qtip',initDraggable:Ext.emptyFn,tdCls:'',producesHTML:!0,isHeader:!0,isColumn:!0,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:!0,initResizable:Ext.emptyFn,rendererNames:{column:'renderer',edit:'editRenderer',summary:'summaryRenderer'},formatterNames:{column:'formatter',edit:'editFormatter',summary:'summaryFormatter'},initComponent:function(){var a=this;a.rendererScope=a.initialConfig.scope;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=!0;a.items=a.columns;a.columns=a.flex=a.width=null;a.cls=(a.cls||'')+' '+a.groupHeaderCls;a.sortable=a.resizable=!1;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(a){var b=this;return function(c){return a.format(c,a.scope||b.rendererScope||b.resolveListenerScope())}},bindRenderer:function(b){var a=this;a.hasCustomRenderer=!0;return function(){return Ext.callback(b,a.rendererScope,arguments,0,a)}},setupRenderer:function(c){c=c||'column';var a=this,b=a[a.formatterNames[c]],d=a[a.rendererNames[c]],f=c==='column',e;if(!b){if(d){if(typeof d==='string'){d=a[a.rendererNames[c]]=a.bindRenderer(d)}if(f){a.hasCustomRenderer=d.length>1}}else {if(f&&a.defaultRenderer){a.renderer=a.defaultRenderer;a.usingDefaultRenderer=!0}}}else {e=b.indexOf('this.')===0;if(e){b=b.substring(5)}b=Ext.app.bind.Template.prototype.parseFormat(b);a[a.formatterNames[c]]=null;if(e){b.scope=null}a[a.rendererNames[c]]=a.bindFormatter(b)}},getView:function(){var a=this.getRootHeaderCt();if(a){return a.view}},onResize:function(e,g,c,f){var d=this,b,a;Ext.grid.header.Container.prototype.onResize.apply(this,arguments);if(c&&d.cellWrap){b=d.getView();if(b){a=b.bufferedRenderer;if(a){a.onWrappedColumnWidthChange(c,e)}}}},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 c=this.items.items,d=c.length,a,b;for(a=0;a<d;++a){b=c[a];if(b.isColumn&&!b.hidden){return !0}}return !1},onAdd:function(b){var a=this;if(b.isColumn){b.isSubHeader=!0;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=!1;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,c='',d=b.tooltip,a=b.text,e=b.tooltipType==='qtip'?'data-qtip':'title';if(!Ext.isEmpty(d)){c=e+'="'+d+'" '}return Ext.applyIf(Ext.grid.header.Container.prototype.initRenderData.apply(this,arguments),{text:a,empty:a===' '||a===' '||a==='',menuDisabled:b.menuDisabled,tipMarkup:c,triggerStyle:this.getTriggerVisible()?'display:block':''})},applyColumnState:function(a){var b=this;b.applyColumnsState(a.columns);if(a.hidden!=null){b.hidden=a.hidden}if(a.locked!=null){b.locked=a.locked}if(a.sortable!=null){b.sortable=a.sortable}if(a.width!=null){b.flex=null;b.width=a.width}else {if(a.flex!=null){b.width=null;b.flex=a.flex}}},getColumnState:function(){var b=this,e=b.items.items,f=e?e.length:0,c,d=[],a={id:b.stateId||b.getStateId()};b.savePropsToState(['hidden','sortable','locked','flex','width'],a);if(b.isGroupHeader){for(c=0;c<f;c++){d.push(e[c].getColumnState())}if(d.length){a.columns=d}}if('width' in a){delete a.flex}return a},getStateId:function(){return this.stateId=this.stateId||this.headerId},setText:function(a){this.text=a;if(this.rendered){this.textEl.setHtml(a)}},getIndex:function(){return this.isGroupColumn?!1:this.getRootHeaderCt().getHeaderIndex(this)},getVisibleIndex:function(){return this.visibleIndex!=null?this.visibleIndex:this.isGroupColumn?!1:Ext.Array.indexOf(this.getRootHeaderCt().getVisibleGridColumns(),this)},beforeRender:function(){var a=this,b=a.getRootHeaderCt();Ext.grid.header.Container.prototype.beforeRender.call(this);if(!a.isSortable()&&!a.groupable&&!a.lockable&&(b.grid.enableColumnHide===!1||!b.getHideableColumns().length)){a.menuDisabled=!0}if(a.cellWrap){a.variableRowHeight=!0}a.protoEl.unselectable()},getTriggerElWidth:function(){var c=this,a=c.triggerEl,b=c.self.triggerElWidth;if(a&&b===undefined){a.setStyle('display','block');b=c.self.triggerElWidth=a.getWidth();a.setStyle('display','')}return b},afterComponentLayout:function(d,f,c,e){var a=this,b=a.getRootHeaderCt();Ext.grid.header.Container.prototype.afterComponentLayout.apply(this,arguments);if(b&&(c!=null||a.flex)&&d!==c){b.onHeaderResize(a,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(e){var a=this,b,c,d;if(a.isAtStartEdge(e)){b=a.previousNode('gridcolumn:not([hidden]):not([isGroupHeader])');if(b&&b.getRootHeaderCt()===a.getRootHeaderCt()){b.autoSize()}}else {if(a.isAtEndEdge(e)){if(a.isGroupHeader&&e.getPoint().isContainedBy(a.layout.innerCt)){c=a.query('gridcolumn:not([hidden]):not([isGroupHeader])');a.getRootHeaderCt().autoSizeColumn(c[c.length-1]);return}else {d=a.getRootHeaderCt();if(d.visibleColumnManager.getColumns().length===1&&d.forceFit){return}}a.autoSize()}}},autoSize:function(){var a=this,c,d,b,e;if(a.isGroupHeader){c=a.query('gridcolumn:not([hidden]):not([isGroupHeader])');d=c.length;e=a.getRootHeaderCt();Ext.suspendLayouts();for(b=0;b<d;b++){e.autoSizeColumn(c[b])}Ext.resumeLayouts(!0);return}a.getRootHeaderCt().autoSizeColumn(a)},onTitleElClick:function(b,f,e){var a=this,c,d;if(Ext.supports.Touch){d=a.previousSibling(':not([hidden])');if(!a.menuDisabled&&a.isAtEndEdge(b,parseInt(a.triggerEl.getStyle('width'),10))){if(!a.menuDisabled){c=a}}else {if(d&&!d.menuDisabled&&a.isAtStartEdge(b)){c=d}}}else {c=a.triggerEl&&(b.target===a.triggerEl.dom||f===a.triggerEl||b.within(a.triggerEl))?a:null}if(e!==!1&&(!c&&!a.isAtStartEdge(b)&&!a.isAtEndEdge(b)||b.getKey())){a.toggleSortState()}return c},processEvent:function(d,e,c,a,b,f){return this.fireEvent.apply(this,arguments)},isSortable:function(){var a=this.getRootHeaderCt(),c=a?a.grid:null,b=this.sortable;if(c&&c.sortableColumns===!1){b=!1}return b},toggleSortState:function(){if(this.isSortable()){this.sort()}},sort:function(c){var a=this,b=a.up('tablepanel'),d=b.store;Ext.suspendLayouts();a.sorting=!0;d.sort(a.getSortParam(),c,b.multiColumnSort?'multi':'replace');delete a.sorting;Ext.resumeLayouts(!0)},getSortParam:function(){return this.dataIndex},setSortState:function(g){var a=this,f=g&&g.getDirection(),c=a.ascSortCls,b=a.descSortCls,e=a.getRootHeaderCt(),d;switch(f){case 'DESC':if(!a.hasCls(b)){a.addCls(b);a.sortState='DESC';d=!0};a.removeCls(c);break;case 'ASC':if(!a.hasCls(c)){a.addCls(c);a.sortState='ASC';d=!0};a.removeCls(b);break;default:a.removeCls([c,b]);a.sortState=null;break;}if(d){e.fireEvent('sortchange',e,a,f)}},isHideable:function(){var a={hideCandidate:this,result:this.hideable};if(a.result){this.ownerCt.bubble(this.hasOtherMenuEnabledChildren,null,[a])}return a.result},hasOtherMenuEnabledChildren:function(b){var a,c;if(!this.isXType('headercontainer')){b.result=!1;return !1}a=this.query('>:not([hidden]):not([menuDisabled])');c=a.length;if(Ext.Array.contains(a,b.hideCandidate)){c--}if(c){return !1}b.hideCandidate=this},isLockable:function(){var a={result:this.lockable!==!1};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=!1;return !1}if(this.query('>:not([hidden])').length>1){return !1}},hide:function(){var a=this,b=a.getRootHeaderCt(),c=a.getRefOwner();if(c.constructing){Ext.grid.header.Container.prototype.hide.call(this);return a}if(a.rendered&&!a.isVisible()){return a}if(b.forceFit){a.visibleSiblingCount=b.getVisibleGridColumns().length-1;if(a.flex){a.savedWidth=a.getWidth();a.flex=null}}b.beginChildHide();Ext.suspendLayouts();if(c.isGroupHeader){if(a.isNestedGroupHeader()){c.hide()}if(a.isSubHeader&&!a.isGroupHeader&&c.query('>:not([hidden])').length===1){c.lastCheckedHeaderId=a.id}}Ext.grid.header.Container.prototype.hide.call(this);b.endChildHide();b.onHeaderHide(a);Ext.resumeLayouts(!0);return a},show:function(){var a=this,c=a.getRootHeaderCt(),b=a.ownerCt;if(a.isVisible()){return a}if(a.rendered){if(c.forceFit){c.applyForceFit(a)}}Ext.suspendLayouts();if(a.isSubHeader&&b.hidden){b.show(!1,!0)}Ext.grid.header.Container.prototype.show.apply(this,arguments);if(a.isGroupHeader){a.maybeShowNestedGroupHeader()}b=a.getRootHeaderCt();if(b){b.onHeaderShow(a)}Ext.resumeLayouts(!0);return a},getCellWidth:function(){var a=this,b;if(a.rendered&&a.componentLayout&&a.componentLayout.lastComponentSize){b=a.componentLayout.lastComponentSize.width}else {if(a.width){b=a.width}else {if(!a.isColumn){b=a.getTableWidth()}}}return b},getCellId:function(){return 'x-grid-cell-'+this.getItemId()},getCellSelector:function(){return '.'+this.getCellId()},getCellInnerSelector:function(){return this.getCellSelector()+' .x-grid-cell-inner'},isAtStartEdge:function(a){return a.getXY()[0]-this.getX()<this.handleWidth},isAtEndEdge: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':!0,'box':!0,'container':!0,'headercontainer':!0,'gridcolumn':!0},['widget.gridcolumn'],0,[Ext.grid.column,'Column',Ext.grid,'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(b){var a=this;a.position=new Ext.grid.CellContext(b);a.keyNav=new Ext.util.KeyNav({target:b,ignoreInputFields:!0,eventName:'itemkeydown',defaultEventAction:'stopEvent',processEvent:function(e,d,f,c,a){return a},up:a.onKeyUp,down:a.onKeyDown,right:a.onKeyRight,left:a.onKeyLeft,pageDown:a.onKeyPageDown,pageUp:a.onKeyPageUp,home:a.onKeyHome,end:a.onKeyEnd,tab:a.onKeyTab,space:a.onKeySpace,enter:a.onKeyEnter,A:{ctrl:!0,handler:a.onSelectAllKeyPress},scope:a})},onKeyTab:function(a){var d=a.position.view,c=d.getSelectionModel(),b=d.editingPlugin;if(b&&c.wasEditing){a.preventDefault();c.onEditorTab(b,a)}else {return Ext.view.NavigationModel.prototype.onKeyTab.call(this,a)}},onCellMouseDown:function(h,d,f,g,i,e,a){var c=a.parentEvent,b=Ext.Component.fromElement(a.target,d);if(b&&b.isFocusable&&b.isFocusable()){return}if(!c||c.type!=='touchstart'){this.setPosition(a.position,null,a)}},onCellClick:function(g,c,e,f,h,d,a){var b=Ext.Component.fromElement(a.target,c);this.preventCellFocus=b&&b.focusable&&b.isFocusable();if(this.position.isEqual(a.position)){this.fireNavigateEvent(a)}else {this.setPosition(a.position,null,a)}this.preventCellFocus=!1},onItemMouseDown:function(j,i,m,l,c){var k=this,e,b,g,a,h,d,f=c.parentEvent;if(!f||f.type!=='touchstart'){if(!c.position.cellElement){e=c.getX();b=j.getVisibleColumnManager().getColumns();g=b.length;for(a=0;a<g;a++){h=b[a];d=b[a].getBox();if(e>=d.left&&e<d.right){k.setPosition(i,b[a],c);return}}}}},onItemClick:function(e,b,d,c,a){if(!a.position.cellElement){this.fireNavigateEvent(a)}},beforeViewRefresh:function(b){var a=this.getPosition();if(a&&a.view===b){this.focusRestorePosition=a.clone()}else {this.focusRestorePosition=null}},onStoreRemove:function(){if(this.position){this.setPosition(this.getPosition(),null,null,null,!0)}},deferSetPosition:function(g,e,d,f,c,b){var a=this.view.getFocusTask();a.delay(g,this.setPosition,this,[e,d,f,c,b]);return a},setPosition:function(c,f,k,o,m){var a=this,b,l,g,e,h,d,i,j=c==null&&f==null,n=a.record==null&&a.recordIndex==null&&a.item==null;if(c&&c.isCellContext){b=c.view}else {if(k&&k.view){b=k.view}else {if(a.lastFocused){b=a.lastFocused.view}else {b=a.view}}}l=b.getSelectionModel();g=b.dataSource;b.getFocusTask().cancel();if(b.isDestroyed||!b.refreshCounter||j&&n||!b.all.getCount()){return}if(c&&c.isCellContext){d=c.record;e=c.rowIdx;h=c.colIdx;i=c.column;if(g.indexOf(d)===-1){e=g.indexOfId(d.id);if(e===-1){a.recordIndex=-1;d=g.getAt(0);e=0;h=0;i=b.getVisibleColumnManager().getColumns()[0]}else {d=g.getById(d.id)}}}else {if(j){d=e=null}else {if(f==null){f=a.lastFocused?a.lastFocused.column:0}if(typeof c==='number'){e=Math.max(Math.min(c,g.getCount()-1),0);d=g.getAt(c)}else {if(c.isEntity){d=c;e=g.indexOf(d)}else {if(c.tagName){d=b.getRecord(c);e=g.indexOf(d);if(e===-1){d=null}}else {if(n){return}j=!0;d=e=null}}}}if(d){if(e===-1){a.recordIndex=-1;d=g.getAt(0);e=0;f=null}if(f==null){if(!(i=a.column)){h=0;i=b.getVisibleColumnManager().getColumns()[0]}}else {if(typeof f==='number'){i=b.getVisibleColumnManager().getColumns()[f];h=f}else {i=f;h=b.getVisibleColumnManager().indexOf(f)}}}else {j=!0;i=h=null}}if(e===a.recordIndex&&h===a.columnIndex){return a.focusPosition(a.position)}if(a.cell){a.cell.removeCls(a.focusCls)}a.previousRecordIndex=a.recordIndex;a.previousRecord=a.record;a.previousItem=a.item;a.previousCell=a.cell;a.previousColumn=a.column;a.previousColumnIndex=a.columnIndex;a.previousPosition=a.position.clone();a.selectionStart=l.selectionStart;a.position.setAll(b,a.recordIndex=e,a.columnIndex=h,a.record=d,a.column=i);if(j){a.item=a.cell=null}else {a.focusPosition(a.position,m)}if(!o){l.fireEvent('focuschange',l,a.previousRecord,a.record);b.fireEvent('rowfocus',a.record,a.item,a.recordIndex);b.fireEvent('cellfocus',a.record,a.cell,a.position)}if(k&&!m&&a.cell!==a.previousCell){a.fireNavigateEvent(k)}},focusPosition:function(b){var a=this,c,d;a.item=a.cell=null;if(b&&b.record&&b.column){c=b.view;if(b.rowElement){d=a.item=b.rowElement}else {d=c.getRowByRecord(b.record)}if(d){a.cell=b.cellElement||Ext.fly(d).down(b.column.getCellSelector(),!0);if(a.cell){a.cell=new Ext.dom.Fly(a.cell);c.lastFocused=a.lastFocused=a.position.clone();a.focusItem(a.cell);c.focusEl=a.cell}else {a.position.setAll();a.record=a.column=a.recordIndex=a.columnIndex=null}}else {d=c.dataSource.indexOf(b.record);a.position.setAll();a.record=a.column=a.recordIndex=a.columnIndex=null;if(d!==-1&&c.bufferedRenderer){a.lastKeyEvent=null;c.bufferedRenderer.scrollTo(d,!1,a.afterBufferedScrollTo,a)}}}},focusItem:function(a){a.addCls(this.focusCls);if(!this.preventCellFocus){a.focus()}},getCell:function(){return this.cell},getPosition:function(){var c=this,a=c.position,b,e,d;if(a.record&&a.column){e=a.view;d=e.dataSource;b=d.indexOf(a.record);if(b===-1){b=a.rowIdx;if(!d.getAt(b)){b=-1}}if(b===-1||e.getVisibleColumnManager().indexOf(a.column)===-1){a.setAll();c.record=c.column=c.recordIndex=c.columnIndex=null}else {return a}}return null},getLastFocused:function(){var c=this,b,a=c.lastFocused;if(a&&a.record&&a.column){b=a.view;if(b.dataSource.indexOf(a.record)!==-1&&b.getVisibleColumnManager().indexOf(a.column)!==-1){return a}}},onKeyUp:function(a){var b=a.view.walkRecs(a.record,-1);if(b){this.setPosition(b,this.columnIndex,a)}},onKeyDown:function(a){var b=a.record.isExpandingOrCollapsing?null:a.view.walkRecs(a.record,1);if(b){this.setPosition(b,this.columnIndex,a)}},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(c,d){var b=this,a=b.getPosition();if(a&&a.record){return a.view.walkCells(a,c,null,b.preventWrap)}},onKeyPageDown:function(a){var b=this,c=a.view,d=b.getRowsVisible(),f,e;if(d){if(c.bufferedRenderer){f=Math.min(a.recordIndex+d,c.dataSource.getCount()-1);b.lastKeyEvent=a;c.bufferedRenderer.scrollTo(f,!1,b.afterBufferedScrollTo,b)}else {e=c.walkRecs(a.record,d);b.setPosition(e,null,a)}}},onKeyPageUp:function(a){var b=this,d=a.view,c=b.getRowsVisible(),f,e;if(c){if(d.bufferedRenderer){f=Math.max(a.recordIndex-c,0);b.lastKeyEvent=a;d.bufferedRenderer.scrollTo(f,!1,b.afterBufferedScrollTo,b)}else {e=d.walkRecs(a.record,-c);b.setPosition(e,null,a)}}},onKeyHome:function(a){var b=this,c=a.view;if(a.altKey){if(c.bufferedRenderer){b.lastKeyEvent=a;c.bufferedRenderer.scrollTo(0,!1,b.afterBufferedScrollTo,b)}else {b.setPosition(c.walkRecs(a.record,-c.dataSource.indexOf(a.record)),null,a)}}else {b.setPosition(a.record,0,a)}},afterBufferedScrollTo:function(b,a){this.setPosition(a,null,this.lastKeyEvent,null,!this.lastKeyEvent)},onKeyEnd:function(a){var c=this,b=a.view;if(a.altKey){if(b.bufferedRenderer){c.lastKeyEvent=a;b.bufferedRenderer.scrollTo(b.store.getCount()-1,!1,c.afterBufferedScrollTo,c)}else {c.setPosition(b.walkRecs(a.record,b.dataSource.getCount()-1-b.dataSource.indexOf(a.record)),null,a)}}else {c.setPosition(a.record,a.view.getVisibleColumnManager().getColumns().length-1,a)}},getRowsVisible:function(){var b=!1,e=this.view,d=e.all.first(),c,a;if(d){c=d.getHeight();a=e.el.getHeight();b=Math.floor(a/c)}return b},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,selectionStart:a.selectionStart,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(c){var a=this,b=a.view.ownerGrid.columns;a.isTreeGrid=b&&b.length>1;Ext.grid.NavigationModel.prototype.initKeyNav.call(this,c);a.keyNav.map.addBinding([{key:'8',shift:!0,handler:a.onAsterisk,scope:a},{key:Ext.event.Event.NUM_MULTIPLY,handler:a.onAsterisk,scope:a}]);a.view.grid.on({columnschanged:a.onColumnsChanged,scope:a})},onColumnsChanged:function(){this.isTreeGrid=this.view.ownerGrid.getVisibleColumnManager().getColumns().length>1},onKeyLeft:function(b){var c=this,d=b.view,a=c.record;if(c.isTreeGrid&&!b.ctrlKey){return Ext.grid.NavigationModel.prototype.onKeyLeft.call(this,b)}if(b.position.column.isTreeColumn&&a.isExpanded()){d.collapse(a)}else {a=a.parentNode;if(a&&!(a.isRoot()&&!d.rootVisible)){c.setPosition(a,null,b)}}},onKeyRight:function(b){var c=this,a=c.record;if(c.isTreeGrid&&!b.ctrlKey){return Ext.grid.NavigationModel.prototype.onKeyRight.call(this,b)}if(!a.isLeaf()){if(b.position.column.isTreeColumn&&!a.isExpanded()){b.view.expand(a)}else {if(a.isExpanded()){a=a.childNodes[0];if(a){c.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.layout.container.Card',Ext.layout.container.Fit,{alternateClassName:'Ext.layout.CardLayout',type:'card',hideInactive:!0,deferredRender:!1,scrollableCache:Ext.isGecko?{}:null,getRenderTree:function(){var b=this,a=b.getActiveItem();if(a){if(a.hasListeners.beforeactivate&&a.fireEvent('beforeactivate',a)===!1){a=b.activeItem=b.owner.activeItem=null}else {if(a.hasListeners.activate){a.on({boxready:function(){a.fireEvent('activate',a)},single:!0})}}if(b.deferredRender){if(a){return b.getItemsRenderTree([a])}}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(a,c,d){var b=a.el?a.el.dom:Ext.getDom(a);return b&&b.parentNode===(c.dom||c)||!1},getActiveItem:function(){var a=this,c=a.activeItem===undefined?a.owner&&a.owner.activeItem:a.activeItem,b=a.parseActiveItem(c);if(b&&a.owner.items.indexOf(b)!==-1){a.activeItem=b}return b==null?null:a.activeItem||a.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,c){var a=(b||{}).cardSwitchAnimation;if(a===!1){return !1}return a||c.cardSwitchAnimation},getNext:function(){var c=arguments[0],a=this.getLayoutItems(),b=Ext.Array.indexOf(a,this.activeItem);return a[b+1]||(c?a[0]:!1)},next:function(){var a=arguments[0],b=arguments[1];return this.setActiveItem(this.getNext(b),a)},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]:!1)},prev:function(){var a=arguments[0],b=arguments[1];return this.setActiveItem(this.getPrev(b),a)},setActiveItem:function(a){var c=this,e=c.scrollableCache,d=c.owner,b=c.activeItem,k=d.rendered,h,i,f,j,g;a=c.parseActiveItem(a);h=d.items.indexOf(a);if(h===-1){h=d.items.items.length;Ext.suspendLayouts();a=d.add(a);Ext.resumeLayouts()}if(a&&b!==a){if(a.fireEvent('beforeactivate',a,b)===!1){return !1}if(b&&b.fireEvent('beforedeactivate',b,a)===!1){return !1}if(k){Ext.suspendLayouts();if(!a.rendered){c.renderItem(a,c.getRenderTarget(),d.items.length)}if(b){if(c.hideInactive){i=b.el.contains(Ext.Element.getActiveElement());if(e&&(f=b.scrollable)){e[b.id]={position:f.getPosition()};f.scrollTo(0,0)}b.hide();if(b.hidden){b.hiddenByLayout=!0;b.fireEvent('deactivate',b,a)}else {return !1}}}if(a.hidden){a.show()}if(a.hidden){c.activeItem=a=null}else {c.activeItem=a;if(i){if(!a.defaultFocus){a.defaultFocus=':focusable'}a.focus()}}Ext.resumeLayouts(!0);if(e&&(j=e[a.id])){g=j.position;a.scrollable.scrollTo(g.x,g.y)}}else {c.activeItem=a}a.fireEvent('activate',a,b);return c.activeItem}return !1}},0,0,0,0,['layout.card'],0,[Ext.layout.container,'Card',Ext.layout,'CardLayout'],0);Ext.cmd.derive('Ext.tab.Tab',Ext.button.Button,{isTab:!0,tabIndex:-1,baseCls:'x-tab',closeElOverCls:'x-tab-close-btn-over',closeElPressedCls:'x-tab-close-btn-pressed',config:{rotation:'default',tabPosition:'top'},closable:!0,closeText:'Close Tab',active:!1,childEls:['closeEl'],scale:!1,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 a=this,g=a._rotateClasses,h=a.getTabPosition(),f=a.getActualRotation(),c=a._rotateCls,e=a._rotateCls=g[f],b=a._positionCls,d=a._positionCls=a._positions[h][f];if(c!==e){if(c){a.removeCls(c)}if(e){a.addCls(e)}}if(b!==d){if(b){a.removeClsWithUI(b)}if(d){a.addClsWithUI(d)}if(a.rendered){a.updateFrame()}}if(a.rendered){a.setElOrientation()}},onAdded:function(a,c,b){Ext.button.Button.prototype.onAdded.call(this,a,c,b);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 a=this,c=a.up('tabbar'),b=a.up('tabpanel');Ext.button.Button.prototype.beforeRender.call(this);if(a.active){a.addCls(a._activeCls)}a.syncClosableCls();if(!a.minWidth){a.minWidth=c?c.minTabWidth:a.minWidth;if(!a.minWidth&&b){a.minWidth=b.minTabWidth}if(a.minWidth&&a.iconCls){a.minWidth+=25}}if(!a.maxWidth){a.maxWidth=c?c.maxTabWidth:a.maxWidth;if(!a.maxWidth&&b){a.maxWidth=b.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(b){var a=this;Ext.button.Button.prototype.enable.apply(this,arguments);a.removeCls(a._disabledCls);return a},disable:function(b){var a=this;Ext.button.Button.prototype.disable.apply(this,arguments);a.addCls(a._disabledCls);return a},onDestroy:function(){var a=this;Ext.destroy(a.keyNav);delete a.keyNav;Ext.button.Button.prototype.onDestroy.apply(this,arguments)},setClosable:function(b){var a=this;b=!arguments.length||!!b;if(a.closable!==b){a.closable=b;if(a.card){a.card.closable=b}a.syncClosableCls();if(a.rendered){a.syncClosableElements();a.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 a=this,b=a._closableCls;if(a.closable){a.addCls(b)}else {a.removeCls(b)}},setCard:function(b){var a=this;a.card=b;if(b.iconAlign){a.setIconAlign(b.iconAlign)}if(b.textAlign){a.setTextAlign(b.textAlign)}a.setText(a.title||b.title);a.setIconCls(a.iconCls||b.iconCls);a.setIcon(a.icon||b.icon);a.setGlyph(a.glyph||b.glyph)},onCloseClick:function(){var a=this;if(a.fireEvent('beforeclose',a)!==!1){if(a.tabBar){if(a.tabBar.closeTab(a)===!1){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=!0;a.addCls(a._activeCls);if(b!==!0){a.fireEvent('activate',a)}},deactivate:function(b){var a=this;a.active=!1;a.removeCls(a._activeCls);if(b!==!0){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':!0,'box':!0,'button':!0,'tab':!0},['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,f){var a=this,c=a.lastWidthModel,b=a.lastHeightModel,e=a.owner.body;Ext.layout.component.Auto.prototype.beginLayoutCycle.apply(this,arguments);if(c&&c.fixed&&d.widthModel.shrinkWrap){e.setWidth(null)}if(b&&b.fixed&&d.heightModel.shrinkWrap){e.setHeight(null)}},calculateOwnerHeightFromContentHeight:function(a,c){var b=Ext.layout.component.Auto.prototype.calculateOwnerHeightFromContentHeight.apply(this,arguments);if(a.targetContext!==a){b+=a.getPaddingInfo().height}return b},calculateOwnerWidthFromContentWidth:function(a,c){var b=Ext.layout.component.Auto.prototype.calculateOwnerWidthFromContentWidth.apply(this,arguments);if(a.targetContext!==a){b+=a.getPaddingInfo().width}return b},measureContentWidth:function(a){return a.bodyContext.setWidth(a.bodyContext.el.dom.offsetWidth,!1)},measureContentHeight:function(a){return a.bodyContext.setHeight(a.bodyContext.el.dom.offsetHeight,!1)},publishInnerHeight:function(a,d){var b=d-a.getFrameInfo().height,c=a.targetContext;if(c!==a){b-=a.getPaddingInfo().height}return a.bodyContext.setHeight(b,!a.heightModel.natural)},publishInnerWidth:function(a,d){var b=d-a.getFrameInfo().width,c=a.targetContext;if(c!==a){b-=a.getPaddingInfo().width}a.bodyContext.setWidth(b,!a.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:!0,config:{tabRotation:'default',tabStretchMax:!0,activateOnFocus:!0},defaultType:'tab',plain:!1,ensureActiveVisibleOnChange:!0,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 a=this,b=a.initialConfig.layout,d=b&&b.align,c=b&&b.overflowHandler;if(a.plain){a.addCls(a.baseCls+'-plain')}Ext.panel.Bar.prototype.initComponent.call(this);a.setLayout({align:d||(a.getTabStretchMax()?'stretchmax':a._layoutAlign[a.dock]),overflowHandler:c||'scroller'});a.on({click:a.onClick,element:'el',scope:a})},ensureTabVisible:function(a){var b=this,d=b.tabPanel,c=b.layout.overflowHandler;if(b.rendered&&c&&b.tooNarrow&&c.scrollToItem){if(a||a===0){if(!a.isTab){if(Ext.isNumber(a)){a=this.items.getAt(a)}else {if(a.isComponent&&d&&d.items.contains(a)){a=a.tab}}}}if(!a){a=b.activeTab}if(a){c.scrollToItem(a)}}},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(f){var b=this,a=b.items,d=b.ownerCt,e,c,g;a=a&&a.items;if(a){for(c=0,g=a.length;c<g;c++){e=a[c];if(e.isTab){e.setTabPosition(f)}}}if(b.rendered){b.resetItemMargins();if(d&&d.isHeader){d.resetItemMargins()}b.needsScroll=!0}Ext.panel.Bar.prototype.setDock.call(this,f)},updateTabRotation:function(f){var b=this,a=b.items,c,e,d;a=a&&a.items;if(a){for(c=0,e=a.length;c<e;c++){d=a[c];if(d.isTab){d.setRotation(f)}}}if(b.rendered){b.resetItemMargins();b.needsScroll=!0;b.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)},onAdd:function(a,c){var b=this.onTabContentChange;if(this.ensureActiveVisibleOnChange){a.barListeners=a.on({scope:this,destroyable:!0,glyphchange:b,iconchange:b,textchange:b})}Ext.panel.Bar.prototype.onAdd.call(this,a,c)},onAdded:function(a,c,b){if(a.isHeader){this.addCls(a.baseCls+'-'+a.ui+'-tab-bar')}Ext.panel.Bar.prototype.onAdded.call(this,a,c,b)},onRemove:function(a,c){var b=this;if(b.ensureActiveVisibleOnChange){if(!c){a.barListeners.destroy()}a.barListeners=null}if(a===b.previousTab){b.previousTab=null}Ext.panel.Bar.prototype.onRemove.call(this,a,c)},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)},onTabContentChange:function(a){if(a===this.activeTab){this.ensureTabVisible(a)}},afterComponentLayout:function(d){var a=this,c=a.needsScroll,b=a.layout.overflowHandler;Ext.panel.Bar.prototype.afterComponentLayout.apply(this,arguments);if(b&&c&&a.tooNarrow&&b.scrollToItem){b.scrollToItem(a.activeTab)}delete a.needsScroll},onMouseMove:function(d){var b=this,c=b._overTab,e,a;if(d.getTarget('.x-box-scroller')){return}e=b.getTabInfoFromPoint(d.getXY());a=e.tab;if(a!==c){if(c&&c.rendered){c.onMouseLeave(d);b._overTab=null}if(a){a.onMouseEnter(d);b._overTab=a;if(!a.disabled){b.el.setStyle('cursor','pointer')}}else {b.el.setStyle('cursor','default')}}},onMouseLeave:function(b){var a=this._overTab;if(a&&a.rendered){a.onMouseLeave(b)}},getTabInfoFromPoint:function(x){var a=this,w=a.items.items,y=w.length,t=a.layout.innerCt,r=t.getXY(),v=new Ext.util.Point(x[0],x[1]),n=0,b,s,d,u,k,l,m,h,g,e,f,j,i,p,o,q,c;for(;n<y;n++){c=w[n];b=c.lastBox;if(!b||!c.isTab){continue}e=r[0]+b.x;f=r[1]-t.dom.scrollTop+b.y;j=b.width;i=b.height;s=new Ext.util.Region(f,e+j,f+i,e);if(s.contains(v)){d=c.closeEl;if(d){if(a._isTabReversed===undefined){a._isTabReversed=o=c.btnWrap.dom.currentStyle.filter.indexOf('rotation=2')!==-1}q=o?this._reverseDockNames[a.dock]:a.dock;h=d.getWidth();g=d.getHeight();k=a.getCloseXY(d,e,f,j,i,h,g,q);l=k[0];m=k[1];p=new Ext.util.Region(m,l+h,m+g,l);u=p.contains(v)}break}}return {tab:c,close:u}},getCloseXY:function(k,b,c,j,i,g,f,h){var a=k.getXY(),d,e;if(h==='right'){d=b+j-(a[1]-c+f);e=c+(a[0]-b)}else {d=b+(a[1]-c);e=c+b+i-a[0]-g}return [d,e]},closeTab:function(b){var e=this,a=b.card,d=e.tabPanel,c;if(a&&a.fireEvent('beforeclose',a)===!1){return !1}c=e.findNextActivatable(b);Ext.suspendLayouts();if(d&&a){delete b.ownerCt;a.fireEvent('close',a);d.remove(a);if(!d.getComponent(a)){b.fireClose();e.remove(b)}else {b.ownerCt=e;Ext.resumeLayouts(!0);return !1}}if(c){if(d){d.setActiveTab(c.card)}else {e.setActiveTab(c)}c.focus()}Ext.resumeLayouts(!0)},findNextActivatable:function(b){var a=this;if(b.active&&a.items.getCount()>1){return a.previousTab&&a.previousTab!==b&&!a.previousTab.disabled?a.previousTab:b.next('tab[disabled=false]')||b.prev('tab[disabled=false]')}},setActiveTab:function(b,c){var a=this;if(!b.disabled&&b!==a.activeTab){if(a.activeTab){if(a.activeTab.isDestroyed){a.previousTab=null}else {a.previousTab=a.activeTab;a.activeTab.deactivate();a.deactivateFocusable(a.activeTab)}}b.activate();a.activateFocusable(b);a.activeTab=b;a.needsScroll=!0;if(!c){a.fireEvent('change',a,b,b.card);a.updateLayout()}}},privates:{adjustTabPositions:function(){var g=this,f=g.items.items,h=f.length,a,b,e,c,d;if(!Ext.isIE8){d=g._getTabAdjustProp();while(h--){a=f[h];e=a.el;b=a.lastBox;c=a.isTab?a.getActualRotation():0;if(c===1&&a.isVisible()){e.setStyle(d,b.x+b.width+'px')}else {if(c===2&&a.isVisible()){e.setStyle(d,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(c,g){var f=this,e,a,b,d;if(c.getTarget('.x-box-scroller')){return}if(Ext.isIE8&&f.vertical){d=f.getTabInfoFromPoint(c.getXY());a=d.tab;b=d.close}else {e=c.getTarget('.'+Ext.tab.Tab.prototype.baseCls);a=e&&Ext.getCmp(e.id);b=a&&a.closeEl&&g===a.closeEl.dom}if(b){c.preventDefault()}if(a&&a.isDisabled&&!a.isDisabled()){a.beforeClick(b);if(a.closable&&b){a.onCloseClick()}else {f.doActivateTab(a)}}},doActivateTab:function(a){var b=this.tabPanel;if(b){if(!a.disabled){b.setActiveTab(a.card)}}else {this.setActiveTab(a)}},onFocusableContainerFocus:function(d){var b=this,c=b.mixins.focusablecontainer,a;a=c.onFocusableContainerFocus.call(b,d);if(a&&a.isTab){b.doActivateTab(a)}},onFocusableContainerFocusEnter:function(d){var b=this,c=b.mixins.focusablecontainer,a;a=c.onFocusableContainerFocusEnter.call(b,d);if(a&&a.isTab){b.doActivateTab(a)}},focusChild:function(d,c){var b=this,e=b.mixins.focusablecontainer,a;a=e.focusChild.call(b,d,c);if(b.activateOnFocus&&a&&a.isTab){b.doActivateTab(a)}}}},0,['tabbar'],['component','box','container','tabbar'],{'component':!0,'box':!0,'container':!0,'tabbar':!0},['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:!0},removePanelHeader:!0,plain:!1,itemCls:'x-tabpanel-child',minTabWidth:undefined,maxTabWidth:undefined,deferredRender:!0,_defaultTabRotation:{top:0,right:1,bottom:0,left:2},initComponent:function(){var a=this,c=a.activeTab!==null?a.activeTab||0:null,d=a.dockedItems,b=a.header,f=a.tabBarHeaderPosition,e=a.getTabBar(),g;a.layout=new Ext.layout.container.Card(Ext.apply({owner:a,deferredRender:a.deferredRender,itemCls:a.itemCls,activeItem:c},a.layout));if(f!=null){b=a.header=Ext.apply({},b);g=b.items=b.items?b.items.slice():[];b.itemPosition=f;g.push(e);b.hasTabBar=!0}else {d=[].concat(a.dockedItems||[]);d.push(e);a.dockedItems=d}Ext.panel.Panel.prototype.initComponent.apply(this,arguments);c=a.activeTab=a.getComponent(c);if(c){e.setActiveTab(c.tab,!0)}},onRender:function(){var b=this.items.items,c=b.length,a;Ext.panel.Panel.prototype.onRender.apply(this,arguments);for(a=0;a<c;++a){b[a].getBind()}},setActiveTab:function(a){var b=this,c;if(!Ext.isObject(a)||a.isComponent){a=b.getComponent(a)}c=b.getActiveTab();if(a){Ext.suspendLayouts();if(!a.isComponent){a=b.add(a)}if(c===a||b.fireEvent('beforetabchange',b,a,c)===!1){Ext.resumeLayouts(!0);return c}b.activeTab=a;b.layout.setActiveItem(a);a=b.activeTab=b.layout.getActiveItem();if(a&&a!==c){b.tabBar.setActiveTab(a.tab);Ext.resumeLayouts(!0);if(c!==a){b.fireEvent('tabchange',b,a,c)}}else {Ext.resumeLayouts(!0)}return a}return c},setActiveItem:function(a){return this.setActiveTab(a)},getActiveTab:function(){var a=this,b=a.getComponent(a.activeTab);if(b&&a.items.indexOf(b)!==-1){a.activeTab=b}else {a.activeTab=undefined}return a.activeTab},applyTabBar:function(c){var a=this,b=a.tabBarHeaderPosition!=null?a.getHeaderPosition():a.getTabPosition();return new Ext.tab.Bar(Ext.apply({ui:a.ui,dock:b,tabRotation:a.getTabRotation(),vertical:b==='left'||b==='right',plain:a.plain,tabStretchMax:a.getTabStretchMax(),tabPanel:a},c))},updateHeaderPosition:function(a,c){var b=this.getTabBar();if(b&&this.tabBarHeaderPosition!=null){b.setDock(a)}Ext.panel.Panel.prototype.updateHeaderPosition.call(this,a,c)},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(a,f){var b=this,d=Ext.apply({},a.tabConfig),c=b.getTabBar(),e={xtype:'tab',title:a.title,icon:a.icon,iconCls:a.iconCls,glyph:a.glyph,ui:c.ui,card:a,disabled:a.disabled,closable:a.closable,hidden:a.hidden&&!a.hiddenByLayout,tooltip:a.tooltip,tabBar:c,tabPosition:c.dock,rotation:c.getTabRotation()};if(a.closeText!==undefined){e.closeText=a.closeText}d=Ext.applyIf(d,e);a.tab=b.tabBar.insert(f,d);a.on({scope:b,enable:b.onItemEnable,disable:b.onItemDisable,beforeshow:b.onItemBeforeShow,iconchange:b.onItemIconChange,iconclschange:b.onItemIconClsChange,glyphchange:b.onItemGlyphChange,titlechange:b.onItemTitleChange});if(a.isPanel){if(b.removePanelHeader){if(a.rendered){if(a.header){a.header.hide()}}else {a.header=!1}}if(a.isPanel&&b.border){a.setBorder(!1)}}if(b.rendered){a.getBind()}if(b.rendered&&b.loader&&b.activeTab===undefined&&b.layout.activeItem!==null){b.setActiveTab(0)}},onMove:function(b,d,a){var c=this.getTabBar();Ext.panel.Panel.prototype.onMove.call(this,b,d,a);if(c.items.indexOf(b.tab)!==a){c.move(b.tab,a)}},onItemEnable:function(a){a.tab.enable()},onItemDisable:function(a){a.tab.disable()},onItemBeforeShow:function(a){if(a!==this.activeTab){this.setActiveTab(a);return !1}},onItemGlyphChange:function(b,a){b.tab.setGlyph(a)},onItemIconChange:function(b,a){b.tab.setIcon(a)},onItemIconClsChange:function(b,a){b.tab.setIconCls(a)},onItemTitleChange:function(b,a){b.tab.setText(a)},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(b,d){var a=this,c;if(a.removingAll||a.destroying||a.items.getCount()===1){a.activeTab=null}else {if(b.tab&&(c=a.tabBar.items.indexOf(a.tabBar.findNextActivatable(b.tab)))!==-1){a.setActiveTab(c)}}Ext.panel.Panel.prototype.doRemove.apply(this,arguments);if(b.tab){delete b.tab.card;delete b.tab}}}},0,['tabpanel'],['component','box','container','panel','tabpanel'],{'component':!0,'box':!0,'container':!0,'panel':!0,'tabpanel':!0},['widget.tabpanel'],0,[Ext.tab,'Panel',Ext,'TabPanel'],0);Ext.cmd.derive('Ext.util.ComponentDragger',Ext.dd.DragTracker,{autoStart:500,constructor:function(b,a){this.comp=b;this.initialConstrainTo=a.constrainTo;Ext.dd.DragTracker.prototype.constructor.call(this,a)},onStart:function(c){var a=this,b=a.comp;a.startPosition=b.getXY();if(b.ghost&&!b.liveDrag){a.proxy=b.ghost();a.dragTarget=a.proxy.header.el}if(a.constrain||a.constrainDelegate){a.constrainTo=a.calculateConstrainRegion()}if(b.beginDrag){b.beginDrag()}},calculateConstrainRegion:function(){var c=this,h=c.comp,b=c.initialConstrainTo,a=h.constraintInsets,i,d,f,j=c.proxy?c.proxy.el:h.el,g=j.shadow,e=g&&!c.constrainDelegate&&h.constrainShadow&&!g.disabled?g.getShadowSize():0;if(!(b instanceof Ext.util.Region)){i=Ext.fly(b);b=i.getConstrainRegion()}else {b=b.copy()}if(a){a=Ext.isObject(a)?a:Ext.Element.parseBox(a);b.adjust(a.top,a.right,a.bottom,a.length)}if(e){b.adjust(e[0],-e[1],-e[2],e[3])}if(!c.constrainDelegate){d=Ext.fly(c.dragTarget).getRegion();f=j.getRegion();b.adjust(d.top-f.top,d.right-f.right,d.bottom-f.bottom,d.left-f.left)}return b},onDrag:function(d){var a=this,c=a.proxy&&!a.comp.liveDrag?a.proxy:a.comp,b=a.getOffset(a.constrain||a.constrainDelegate?'dragTarget':null);c.setPagePosition(a.startPosition[0]+b[0],a.startPosition[1]+b[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:!0,draggable:!0,constrain:!1,constrainHeader:!1,plain:!1,minimizable:!1,maximizable:!1,minHeight:50,minWidth:50,expandOnShow:!0,collapsible:!1,closable:!0,hidden:!0,autoRender:!0,hideMode:'offsets',floating:!0,itemCls:'x-window-item',overlapHeader:!0,ignoreHeaderBorderManagement:!0,alwaysFramed:!0,isRootCfg:{isRoot:!0},isWindow:!0,ariaRole:'dialog',initComponent:function(){var a=this;a.frame=!1;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},getFocusEl:function(){var a=this;return Ext.enableFocusManager?a.el:a.getDefaultFocus()||a.el},getState:function(){var a=this,e=Ext.panel.Panel.prototype.getState.call(this)||{},c=!!a.maximized,d=a.ghostBox,b;e.maximized=c;if(c){b=a.restorePos}else {if(d){b=[d.x,d.y]}else {b=a.getPosition()}}Ext.apply(e,{size:c?a.restoreSize:a.getSize(),pos:b});return e},applyState:function(a){var b=this;if(a){b.maximized=a.maximized;if(b.maximized){b.hasSavedRestore=!0;b.restoreSize=a.size;b.restorePos=a.pos}else {Ext.apply(b,{width:a.size.width,height:a.size.height,x:a.pos[0],y:a.pos[1]})}}},onRender:function(c,b){var a=this;Ext.panel.Panel.prototype.onRender.apply(this,arguments);if(a.header){a.header.on({scope:a,click:a.onHeaderClick})}if(a.maximizable){a.header.on({scope:a,dblclick:a.toggleMaximize})}},afterRender:function(){var a=this,c=a.header,b;if(a.maximized){a.maximized=!1;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(c,b){var a=Ext['FocusManager'];if(!Ext.enableFocusManager||a.focusedCmp===this){b.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,b=[];Ext.panel.Panel.prototype.addTools.call(this);if(a.minimizable){b.push({type:'minimize',handler:'minimize',scope:a})}if(a.maximizable){b.push({type:a.maximized?'restore':'maximize',handler:'toggleMaximize',scope:a})}if(b.length){a.addTool(b)}},onShow:function(){var a=this;Ext.panel.Panel.prototype.onShow.apply(this,arguments);if(a.expandOnShow){a.expand(!1)}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 a=this,b;if(!a.isDestroyed){if(a.maximized){a.fitContainer()}else {b=a.getSizeModel();if(b.width.natural||b.height.natural){a.updateLayout()}a.doConstrain()}}},minimize:function(){this.fireEvent('minimize',this);return this},resumeHeaderLayout:function(a){this.header.resumeLayouts(a?this.isRootCfg:null)},afterCollapse:function(){var a=this,b=a.header,c=a.tools;if(b&&a.maximizable){b.suspendLayouts();c.maximize.hide();this.resumeHeaderLayout(!0)}if(a.resizer){a.resizer.disable()}Ext.panel.Panel.prototype.afterCollapse.apply(this,arguments)},afterExpand:function(){var a=this,c=a.header,d=a.tools,b;if(c){c.suspendLayouts();if(a.maximizable){d.maximize.show();b=!0}this.resumeHeaderLayout(b)}if(a.resizer){a.resizer.enable()}Ext.panel.Panel.prototype.afterExpand.apply(this,arguments)},maximize:function(c){var a=this,b=a.header,f=a.tools,g=a.width,e=a.height,h,d;if(!a.maximized){a.expand(!1);if(!a.hasSavedRestore){h=a.restoreSize={width:g?g:null,height:e?e:null};a.restorePos=a.getPosition()}if(b){b.suspendLayouts();if(f.maximize){f.maximize.setType('restore')}if(a.collapseTool){a.collapseTool.hide();d=!0}a.resumeHeaderLayout(d)}a.el.disableShadow();if(a.dd){a.dd.disable();if(b){b.removeCls(b.indicateDragCls)}}if(a.resizer){a.resizer.disable()}a.el.addCls('x-window-maximized');a.container.addCls('x-window-maximized-ct');a.syncMonitorWindowResize();a.fitContainer(c=c||!!a.animateTarget?{callback:function(){a.maximized=!0;a.fireEvent('maximize',a)}}:null);if(!c){a.maximized=!0;a.fireEvent('maximize',a)}}return a},restore:function(c){var a=this,f=a.tools,b=a.header,d=a.restoreSize,e;if(a.maximized){a.hasSavedRestore=null;a.removeCls('x-window-maximized');if(b){b.suspendLayouts();if(f.maximize){f.maximize.setType('maximize')}if(a.collapseTool){a.collapseTool.show();e=!0}a.resumeHeaderLayout(e)}d.x=a.restorePos[0];d.y=a.restorePos[1];a.setBox(d,c=c||!!a.animateTarget?{callback:function(){a.el.enableShadow(null,!0);a.maximized=!1;a.fireEvent('restore',a)}}:null);a.restorePos=a.restoreSize=null;if(a.dd){a.dd.enable();if(b){b.addCls(b.indicateDragCls)}}if(a.resizer){a.resizer.enable()}a.container.removeCls('x-window-maximized-ct');a.syncMonitorWindowResize();if(!c){a.el.enableShadow(null,!0);a.maximized=!1;a.fireEvent('restore',a)}}return a},syncMonitorWindowResize:function(){var a=this,b=a._monitoringResize,d=a.monitorResize||a.constrain||a.constrainHeader||a.maximized,c=a.hidden||a.destroying||a.isDestroyed;if(d&&!c){if(!b){Ext.on('resize',a.onWindowResize,a,{buffer:1});a._monitoringResize=!0}}else {if(b){Ext.un('resize',a.onWindowResize,a);a._monitoringResize=!1}}},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,a=c.defaultButton||c.defaultFocus,d;if(a!==undefined){if(Ext.isNumber(a)){b=c.query('button')[a]}else {if(Ext.isString(a)){d=a;if(Ext.validIdRe.test(d)){b=c.down(Ext.makeIdSelector(d))}if(!b){b=c.down(d)}}else {if(a.focus){b=a}}}}return b},privates:{initDraggable:function(){this.initSimpleDraggable()},onHeaderClick:function(b,c){var a;if(b.el.contains(c.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':!0,'box':!0,'container':!0,'panel':!0,'window':!0},['widget.window'],0,[Ext.window,'Window',Ext,'Window'],0);Ext.cmd.derive('Ext.button.Split',Ext.button.Button,{alternateClassName:'Ext.SplitButton',isSplitButton:!0,arrowCls:'split',split:!0,setArrowHandler:function(a,b){this.arrowHandler=a;this.scope=b},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':!0,'box':!0,'button':!0,'splitbutton':!0},['widget.splitbutton'],0,[Ext.button,'Split',Ext,'SplitButton'],0);Ext.cmd.derive('Ext.button.Cycle',Ext.button.Split,{alternateClassName:'Ext.CycleButton',getButtonText:function(c){var a=this,b='';if(c&&a.showText===!0){if(a.prependText){b+=a.prependText}b+=c.text;return b}return a.text},setActiveItem:function(b,f){var a=this,c=a.changeHandler,e=a.forceIcon,d=a.forceGlyph;a.settingActive=!0;if(!Ext.isObject(b)){b=a.menu.getComponent(b)}if(b){a.setText(a.getButtonText(b));a.setIconCls(e?e:b.iconCls);a.setGlyph(d?d:b.glyph);a.activeItem=b;if(!b.checked){b.setChecked(!0,!1)}if(!f){if(c){Ext.callback(c,a.scope,[a,b],0,a)}a.fireEvent('change',a,b)}}a.settingActive=!1},getActiveItem:function(){return this.activeItem},initComponent:function(){var a=this,e=0,d,c,f,b;d=(a.menu.items||[]).concat(a.items||[]);a.menu=Ext.applyIf({cls:'x-cycle-menu',items:[]},a.menu);f=d.length;for(c=0;c<f;c++){b=d[c];b=Ext.applyIf({group:a.id,itemIndex:c,checkHandler:a.checkHandler,scope:a,checked:b.checked||!1},b);a.menu.items.push(b);if(b.checked){e=c}}a.itemCount=a.menu.items.length;Ext.button.Split.prototype.initComponent.apply(this,arguments);a.on('click',a.toggleSelected,a);a.setActiveItem(e,!0)},checkHandler:function(b,a){if(a&&!this.settingActive){this.setActiveItem(b)}},toggleSelected:function(){var b=this,c=b.menu,a;a=b.activeItem.next(':not([disabled])')||c.items.getAt(0);a.setChecked(!0)}},0,['cycle'],['component','box','button','splitbutton','cycle'],{'component':!0,'box':!0,'button':!0,'splitbutton':!0,'cycle':!0},['widget.cycle'],0,[Ext.button,'Cycle',Ext,'CycleButton'],0);Ext.cmd.derive('Ext.button.Segmented',Ext.container.Container,{config:{allowDepress:!1,allowMultiple:!1,allowToggle:!0,vertical:!1,defaultUI:'default'},beforeRenderConfig:{value:undefined},defaultBindProperty:'value',publishes:['value'],twoWayBindable:['value'],layout:'segmentedbutton',defaultType:'button',maskOnDisable:!1,isSegmentedButton:!0,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(e,g){var f=this,k=f.getAllowMultiple(),b,c,d,i,j,a,h;d=e instanceof Array?e:e==null?[]:[e];i=g instanceof Array?g:g==null?[]:[g];f._isApplyingValue=!0;if(!f.rendered){j=f.items.items;for(a=0,h=j.length;a<h;a++){c=j[a];if(c.pressed){b=c.value;if(b==null){b=f.items.indexOf(c)}if(!Ext.Array.contains(d,b)){d.push(b)}}}}h=d.length;for(a=0;a<h;a++){e=d[a];c=f._lookupButtonByValue(e);if(c){b=c.value;if(b!=null&&b!==e){d[a]=b}if(!c.pressed){c.setPressed(!0)}}}e=k?d:h?d[0]:null;for(a=0,h=i.length;a<h;a++){g=i[a];if(!Ext.Array.contains(d,g)){f._lookupButtonByValue(g).setPressed(!1)}}f._isApplyingValue=!1;return e},beforeRender:function(){var a=this;a.addCls(a.baseCls+a._getClsSuffix());a._syncItemClasses(!0);Ext.container.Container.prototype.beforeRender.call(this)},onAdd:function(b){var a=this,c='_syncItemClasses';a.mon(b,{hide:c,show:c,toggle:'_onItemToggle',scope:a});if(a.getAllowToggle()){b.enableToggle=!0;if(!a.getAllowMultiple()){b.toggleGroup=a.getId();b.allowDepress=a.getAllowDepress()}}b.addCls(a.itemCls+a._getClsSuffix());a._syncItemClasses();Ext.container.Container.prototype.onAdd.call(this,b)},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(d){var a=this.items,c,b,e;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,e=a.length;b<e;b++){c=a[b];if(c.ui==='default'&&d!=='default'&&!c.hasOwnProperty('ui')){a[b].ui=d}}}}},privates:{_getClsSuffix:function(){return this.getVertical()?'-vertical':'-horizontal'},_getFirstCls:function(){return this._firstCls},_getLastCls:function(){return this._lastCls},_lookupButtonByValue:function(d){var c=this.items.items,g=c.length,f=0,a=null,b,e;for(;f<g;f++){e=c[f];b=e.value;if(b!=null&&b===d){a=e;break}}if(!a&&typeof d==='number'){a=c[d]}return a},_onItemToggle:function(e,g){if(this._isApplyingValue){return}var b=this,h=Ext.Array,f=b.allowMultiple,c=e.value!=null?e.value:b.items.indexOf(e),a=b.getValue(),d;if(f){d=h.indexOf(a,c)}if(g){if(f){if(d===-1){a.push(c)}}else {a=c}}else {if(f){if(d>-1){a.splice(d,1)}}else {if(a===c){a=null}}}b.setValue(a);b.fireEvent('toggle',b,e,g)},_syncItemClasses:function(j){var d=this,f,e,g,h,c,b,i,a;if(!j&&!d.rendered){return}f=d._getFirstCls();e=d._middleCls;g=d._getLastCls();h=d.items.items;c=h.length;b=[];for(a=0;a<c;a++){i=h[a];if(!i.hidden){b.push(i)}}c=b.length;for(a=0;a<c;a++){b[a].removeCls([f,e,g])}if(c>1){b[0].addCls(f);for(a=1;a<c-1;a++){b[a].addCls(e)}b[c-1].addCls(g)}}}},0,['segmentedbutton'],['component','box','container','segmentedbutton'],{'component':!0,'box':!0,'container':!0,'segmentedbutton':!0},['widget.segmentedbutton'],0,[Ext.button,'Segmented'],0);Ext.cmd.derive('Ext.plugin.Responsive',Ext.mixin.Responsive,{pluginId:'responsive',isPlugin:!0,constructor:function(c){var a=this,b=c.cmp,d=Ext.apply({responsiveConfig:b.responsiveConfig,responsiveFormulas:b.responsiveFormulas},c);delete d.cmp;a.cmp=b;a.initConfig(d);if(a.transformed){b.setConfig(a.transformed);a.transformed=null}},init:Ext.emptyFn,privates:{transformInstanceConfig:function(c){var a=Ext.mixin.Responsive.prototype.transformInstanceConfig.call(this,c);if(a.ptype){a=Ext.apply({},a);delete a.ptype}this.transformed=a;var b=Ext.apply({},c);delete b.ptype;delete b.responsiveConfig;delete b.responsiveFormulas;return b},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:!0,preserveElOnDestroy:!0,initComponent:function(){this.callParent();this.setupViewport()},getSizeModel:function(){var b=Ext.layout.SizeModel.configured;return b.pairsByHeightOrdinal[b.ordinal]},handleViewportResize:function(){var b=this,c=Ext.dom.Element,e=c.getViewportWidth(),d=c.getViewportHeight();if(e!==b.width||d!==b.height){b.setSize(e,d)}},setupViewport:function(){var b=this,c=document.body;if(!c.id){c.id=b.id}c.setAttribute(Ext.Component.componentIdAttribute,b.id);c=b.el=Ext.getBody();Ext.fly(document.documentElement).addCls(b.viewportCls);c.setHeight=c.setWidth=Ext.emptyFn;c.dom.scroll='no';b.allowDomMove=!1;b.renderTo=c;if(Ext.supports.Touch){b.addMeta('apple-mobile-web-app-capable','yes')}Ext.getScrollbarSize();b.width=b.height=undefined;b.initialViewportHeight=Ext.Element.getViewportHeight();b.initialViewportWidth=Ext.Element.getViewportWidth()},afterLayout:function(b){if(Ext.supports.Touch){document.body.scrollTop=0}this.callParent([b])},onRender:function(){var b=this;b.callParent(arguments);b.width=b.initialViewportWidth;b.height=b.initialViewportHeight;b.initialViewportWidth=b.initialViewportHeight=null;if(Ext.supports.TouchEvents){b.mon(Ext.getDoc(),{touchmove:function(b){b.preventDefault()},translate:!1,delegated:!1})}},initInheritedState:function(d,e){var b=this,c=Ext.rootInheritedState;if(d!==c){b.initInheritedState(b.inheritedState=c,b.inheritedStateInner=Ext.Object.chain(c))}else {b.callParent([d,e])}},beforeDestroy:function(){var b=this,d=Ext.rootInheritedState,c;for(c in d){if(c!=='rtl'){delete d[c]}}b.removeUIFromElement();b.el.removeCls(b.baseCls);Ext.fly(document.body.parentNode).removeCls(b.viewportCls);b.callParent()},addMeta:function(d,c){var b=document.createElement('meta');b.setAttribute('name',d);b.setAttribute('content',c);Ext.getHead().appendChild(b)},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.layout.container.Anchor',Ext.layout.container.Auto,{alternateClassName:'Ext.layout.AnchorLayout',type:'anchor',defaultAnchor:'100%',parseAnchorRE:/^(r|right|b|bottom)$/i,manageOverflow:!0,setsItemSize:!0,beginLayoutCycle:function(f){var h=this,c=0,b,a,e,d,g;Ext.layout.container.Auto.prototype.beginLayoutCycle.apply(this,arguments);e=f.childItems;g=e.length;for(d=0;d<g;++d){a=e[d];b=a.target.anchorSpec;if(b){if(a.widthModel.calculated&&b.right){c|=1}if(a.heightModel.calculated&&b.bottom){c|=2}if(c===3){break}}}f.anchorDimensions=c},calculateItems:function(i,b){var m=this,j=i.childItems,q=j.length,k=b.gotHeight,l=b.gotWidth,o=b.height,p=b.width,n=(l?1:0)|(k?2:0),f=i.anchorDimensions,h,a,g,c,e,d;if(!f){return !0}for(e=0;e<q;e++){a=j[e];g=a.getMarginInfo();h=a.target.anchorSpec;if(l&&a.widthModel.calculated){d=h.right(p)-g.width;d=m.adjustWidthAnchor(d,a);a.setWidth(d)}if(k&&a.heightModel.calculated){c=h.bottom(o)-g.height;c=m.adjustHeightAnchor(c,a);a.setHeight(c)}}return (n&f)===f},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(a,e,d){if(a&&a!=='none'){var b=this.anchorFactory,c;if(this.parseAnchorRE.test(a)){return b.standard(d-e)}if(a.indexOf('%')!==-1){return b.ratio(parseFloat(a.replace('%',''))*0.01)}c=parseInt(a,10);if(!isNaN(c)){return b.offset(c)}}return null},adjustWidthAnchor:function(a,b){return a},adjustHeightAnchor:function(a,b){return a},configureItem:function(a){var d=this,b=d.owner,g=a.anchor,f,c,e;Ext.layout.container.Auto.prototype.configureItem.apply(this,arguments);if(!a.anchor&&a.items&&!Ext.isNumber(a.width)){a.anchor=g=d.defaultAnchor}if(b.anchorSize){if(typeof b.anchorSize==='number'){c=b.anchorSize}else {c=b.anchorSize.width;e=b.anchorSize.height}}else {c=b.initialConfig.width;e=b.initialConfig.height}if(g){f=g.split(' ');a.anchorSpec={right:d.parseAnchor(f[0],a.initialConfig.width,c),bottom:d.parseAnchor(f[1],a.initialConfig.height,e)}}},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(e){var a=e.anchorSpec,d='$',c=this.sizePolicy,b;if(a){b=this.owner.getSizeModel();if(a.right&&!b.width.shrinkWrap){c=c.r}if(a.bottom&&!b.height.shrinkWrap){d='b'}}return c[d]}},0,0,0,0,['layout.anchor'],0,[Ext.layout.container,'Anchor',Ext.layout,'AnchorLayout'],0);Ext.cmd.derive('Ext.resizer.SplitterTracker',Ext.dd.DragTracker,{enabled:!0,overlayCls:'x-resizable-overlay',createDragOverlay:function(){var a,b=Ext.dom.Element;a=this.overlay=Ext.getBody().createChild({role:'presentation',cls:this.overlayCls,html:' '});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(g){var a=this,c=a.getPrevCmp(),b=a.getNextCmp(),e=a.getSplitter().collapseEl,f=g.getTarget(),d;if(!c||!b){return !1}if(e&&f===e.dom){return !1}if(b.collapsed||c.collapsed){return !1}a.prevBox=c.getEl().getBox();a.nextBox=b.getEl().getBox();a.constrainTo=d=a.calculateConstrainRegion();if(!d){return !1}return d},onStart:function(b){var a=this.getSplitter();this.createDragOverlay();a.addCls(a.baseCls+'-active')},onResizeKeyDown:function(b){var a=this,d=a.getSplitter(),f=b.getKey(),e=d.orientation==='vertical'?0:1,g=f===b.UP||f===b.LEFT?-1:1,c;if(!a.active&&a.onBeforeStart(b)){Ext.fly(b.target).on('keyup',a.onResizeKeyUp,a);a.triggerStart(b);a.onMouseDown(b);a.startXY=d.getXY();a.lastKeyDownXY=Ext.Array.slice(a.startXY);c=a.easing=new Ext.fx.easing.Linear();c.setStartTime(Ext.Date.now());c.setStartValue(1);c.setEndValue(4);c.setDuration(2000)}if(a.active){a.lastKeyDownXY[e]=Math.round(a.lastKeyDownXY[e]+g*a.easing.getValue());a.lastXY=a.lastKeyDownXY;d.setXY(a.getXY('dragTarget'))}},onResizeKeyUp:function(a){this.onMouseUp(a)},calculateConstrainRegion:function(){var a=this,k=a.getSplitter(),j=k.getWidth(),e=k.defaultSplitMin,l=k.orientation,c=a.prevBox,g=a.getPrevCmp(),b=a.nextBox,f=a.getNextCmp(),i,h,d;if(l==='vertical'){d={prevCmp:g,nextCmp:f,prevBox:c,nextBox:b,defaultMin:e,splitWidth:j};i=new Ext.util.Region(c.y,a.getVertPrevConstrainRight(d),c.bottom,a.getVertPrevConstrainLeft(d));h=new Ext.util.Region(b.y,a.getVertNextConstrainRight(d),b.bottom,a.getVertNextConstrainLeft(d))}else {i=new Ext.util.Region(c.y+(g.minHeight||e),c.right,(g.maxHeight?c.y+g.maxHeight:b.bottom-(f.minHeight||e))+j,c.x);h=new Ext.util.Region((f.maxHeight?b.bottom-f.maxHeight:c.y+(g.minHeight||e))-j,b.right,b.bottom-(f.minHeight||e),b.x)}return i.intersect(h)},performResize:function(p,b){var c=this,k=c.getSplitter(),n=k.orientation,f=c.getPrevCmp(),e=c.getNextCmp(),l=k.ownerCt,j=l.query('>[flex]'),o=j.length,h=n==='vertical',i=0,d=h?'width':'height',m=0,g,a;for(;i<o;i++){g=j[i];a=h?g.getWidth():g.getHeight();m+=a;g.flex=a}b=h?b[0]:b[1];if(f){a=c.prevBox[d]+b;if(f.flex){f.flex=a}else {f[d]=a}}if(e){a=c.nextBox[d]-b;if(e.flex){e.flex=a}else {e[d]=a}}l.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(f){var a=this,d=a.getOffset('dragTarget'),b=a.getSplitter(),c=b.getEl(),e=b.orientation;if(e==='vertical'){c.setX(a.startRegion.left+d[0])}else {c.setY(a.startRegion.top+d[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.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(c){var h,g,i,e,f,d;c=this.callParent([c]);h=c.getTarget();g=c.getRelatedTarget();if(g&&Ext.fly(h).contains(g)){return}i=h.id;if(i){e=Ext.cache[i];if(e){f=b[c.type];c=c.chain({type:f});if(e.hasListeners[f]){d=e.events[f];if(d){d=d.directs;if(d){c.setCurrentTarget(e.dom);d.fire(c,c.target)}}}}}}})}a.instance=new a()});Ext.cmd.derive('Ext.form.action.Action',Ext.Base,{alternateClassName:'Ext.form.Action',submitEmptyText:!0,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(c){var a=this.form,b=a&&!a.destroying&&!a.isDestroyed;this.response=c;this.failureType=Ext.form.action.Action.CONNECT_FAILURE;if(b){a.afterAction(this,!1)}},processResponse:function(a){this.response=a;if(!a.responseText&&!a.responseXML){return !0}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 a=this,c,b=a.form;return {success:a.onSuccess,failure:a.onFailure,scope:a,timeout:this.timeout*1000||b.timeout*1000,upload:b.fileUpload?a.onSuccess:c}},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(d){var b=this.processResponse(d),a=this.form,c=a&&!a.destroying&&!a.isDestroyed;if(b===!0||!b.success||!b.data){this.failureType=Ext.form.action.Action.LOAD_FAILURE;if(c){a.afterAction(this,!1)}return}if(c){a.clearInvalid();a.setValues(b.data);a.afterAction(this,!0)}},handleResponse:function(b){var c=this.form.reader,a,d;if(c){a=c.read(b);d=a.records&&a.records[0]?a.records[0].data:null;return {success:a.success,data:d}}return Ext.decode(b.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 a=this,b=a.form;if(a.clientValidation===!1||b.isValid()){a.doSubmit()}else {a.failureType=Ext.form.action.Action.CLIENT_INVALID;b.afterAction(a,!1)}},doSubmit:function(){var a=this,b=Ext.apply(a.createCallback(),{url:a.getUrl(),method:a.getMethod(),headers:a.headers}),e=a.form,d=a.jsonSubmit||e.jsonSubmit,f=d?'jsonData':'params',c;if(e.hasUpload()){c=a.buildForm();b.form=c.formEl;b.isUpload=!0}else {b[f]=a.getParams(d)}Ext.Ajax.request(b);if(c){a.cleanup(c)}},cleanup:function(b){var e=b.formEl,f=b.uploadEls,d=b.uploadFields,g=d.length,a,c;for(a=0;a<g;++a){c=d[a];if(!c.clearOnSubmit){c.restoreInput(f[a])}}if(e){Ext.removeNode(e)}},getParams:function(b){var a=!1,c=Ext.form.action.Action.prototype.getParams.call(this),d=this.form.getValues(a,a,this.submitEmptyText!==a,b,!0);return Ext.apply({},d,c)},buildForm:function(){var a=this,h=[],f,i,q=a.form,j=a.getParams(),c=[],n=[],o=q.getFields().items,b,l=o.length,k,e,d,g,p,m;for(b=0;b<l;++b){k=o[b];if(k.isFileUpload()){c.push(k)}}for(e in j){if(j.hasOwnProperty(e)){d=j[e];if(Ext.isArray(d)){p=d.length;for(g=0;g<p;g++){h.push(a.getFieldConfig(e,d[g]))}}else {h.push(a.getFieldConfig(e,d))}}}f={tag:'form',role:'presentation',action:a.getUrl(),method:a.getMethod(),target:a.target?Ext.isString(a.target)?a.target:Ext.fly(a.target).dom.name:'_self',style:'display:none',cn:h};if(c.length){f.encoding=f.enctype='multipart/form-data'}i=Ext.DomHelper.append(Ext.getBody(),f);l=c.length;for(b=0;b<l;++b){m=c[b].extractFileInput();i.appendChild(m);n.push(m)}return {formEl:i,uploadFields:c,uploadEls:n}},getFieldConfig:function(b,a){return {tag:'input',type:'hidden',name:b,value:Ext.String.htmlEncode(a)}},onSuccess:function(e){var a=this.form,c=a&&!a.destroying&&!a.isDestroyed,d=!0,b=this.processResponse(e);if(b!==!0&&!b.success){if(b.errors&&c){a.markInvalid(b.errors)}this.failureType=Ext.form.action.Action.SERVER_INVALID;d=!1}if(c){a.afterAction(this,d)}},handleResponse:function(g){var i=this.form,f=i.errorReader,e,a,b,h,c,d;if(f){e=f.read(g);c=e.records;a=[];if(c){for(b=0,h=c.length;b<h;b++){a[b]=c[b].data}}if(a.length<1){a=null}d={success:e.success,errors:a}}else {try{d=Ext.decode(g.responseText)}catch(j){d={success:!1,errors:[]}}}return d}},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:!0}],growMin:60,growMax:1000,growAppend:'\n-',enterIsSpecial:!1,preventScrollbars:!1,returnRe:/\r/g,inputCls:'x-form-textarea',extraFieldBodyCls:'x-form-textarea-body',getSubTplData:function(d){var a=this,c=a.getFieldStyle(),b=Ext.form.field.Text.prototype.getSubTplData.apply(this,arguments);if(a.grow){if(a.preventScrollbars){b.fieldStyle=(c||'')+';overflow:hidden;height:'+a.growMin+'px'}}return b},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,a=b.getValue(),c=b.maxLength;if(a.length>c){a=a.substr(0,c);b.setValue(a)}},fireKey:function(a){var b=this,c=a.getKey(),d;if(a.isSpecialKey()&&(b.enterIsSpecial||(c!==a.ENTER||a.hasModifier()))){b.fireEvent('specialkey',b,a)}if(b.needsMaxCheck&&c!==a.BACKSPACE&&c!==a.DELETE&&!a.isNavKeyPress()&&!b.isCutCopyPasteSelectAll(a,c)){d=b.getValue();if(d.length>=b.maxLength){a.stopEvent()}}},isCutCopyPasteSelectAll:function(a,b){if(a.ctrlKey){return b===a.A||b===a.C||b===a.V||b===a.X}return !1},autoSize:function(){var a=this,b,c,e,d;if(a.grow&&a.rendered&&a.getSizeModel().height.auto){b=a.inputEl;e=b.getWidth(!0);d=Ext.util.Format.htmlEncode(b.dom.value)||' ';d+=a.growAppend;d=d.replace(/\n/g,'<br/>');c=Ext.util.TextMetrics.measure(b,d,e).height+b.getPadding('tb')+a.inputWrap.getBorderWidth('tb')+a.triggerWrap.getBorderWidth('tb');c=Math.min(Math.max(c,a.growMin),a.growMax);a.bodyEl.setHeight(c);a.updateLayout();a.fireEvent('autosize',a,c)}},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':!0,'box':!0,'field':!0,'textfield':!0,'textareafield':!0,'textarea':!0},['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:!1,scrollable:!0,title:' ',defaultMinWidth:250,defaultMaxWidth:600,defaultMinHeight:110,defaultMaxHeight:500,minWidth:null,maxWidth:null,minHeight:null,maxHeight:null,constrain:!0,cls:['x-message-box','x-hidden-offsets'],layout:{type:'vbox',align:'stretch'},shrinkWrapDock:!0,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(b){var a=this.buttonIds[b];return new Ext.button.Button({handler:this.btnCallback,itemId:a,scope:this,text:this.buttonText[a],minWidth:75})},btnCallback:function(e,b){var a=this,d,c;if(b&&b.type==='keydown'&&!b.isSpecialKey()){b.getTarget(null,null,!0).on({keyup:function(c){a.btnCallback(e,c)},single:!0});return}if(a.cfg.prompt||a.cfg.multiline){if(a.cfg.multiline){c=a.textArea}else {c=a.textField}d=c.getValue();c.reset()}a.hide();a.userCallback(e.itemId,d,a.cfg)},hide:function(){var a=this,b=a.cfg?a.cfg.cls:'';a.progressBar.reset();if(b){a.removeCls(b)}Ext.window.Window.prototype.hide.apply(this,arguments)},constructor:function(b){var a=this;Ext.window.Window.prototype.constructor.apply(this,arguments);a.minWidth=a.defaultMinWidth=a.minWidth||a.defaultMinWidth;a.maxWidth=a.defaultMaxWidth=a.maxWidth||a.defaultMaxWidth;a.minHeight=a.defaultMinHeight=a.minHeight||a.defaultMinHeight;a.maxHeight=a.defaultMaxHeight=a.maxHeight||a.defaultMaxHeight},initComponent:function(e){var a=this,b=a.id,d,c;a.title=a.title||' ';a.iconCls=a.iconCls||'';a.topContainer=new Ext.container.Container({layout:'hbox',padding:10,style:{overflow:'hidden'},items:[a.iconComponent=new Ext.Component({cls:a.baseIconCls}),a.promptContainer=new Ext.container.Container({flex:1,layout:{type:'vbox',align:'stretch'},items:[a.msg=new Ext.Component({id:b+'-msg',cls:a.baseCls+'-text'}),a.textField=new Ext.form.field.Text({id:b+'-textfield',enableKeyEvents:!0,listeners:{keydown:a.onPromptKey,scope:a}}),a.textArea=new Ext.form.field.TextArea({id:b+'-textarea',height:75})]})]});a.progressBar=new Ext.ProgressBar({id:b+'-progressbar',margin:'0 10 10 10'});a.items=[a.topContainer,a.progressBar];a.msgButtons=[];for(d=0;d<4;d++){c=a.makeButton(d);a.msgButtons[c.itemId]=c;a.msgButtons.push(c)}a.bottomTb=new Ext.toolbar.Toolbar({id:b+'-toolbar',ui:'footer',dock:'bottom',layout:{pack:'center'},items:[a.msgButtons[0],a.msgButtons[1],a.msgButtons[2],a.msgButtons[3]]});a.dockedItems=[a.bottomTb];a.on('close',a.onClose,a);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(c,b){var a=this;if(b.keyCode===b.RETURN||b.keyCode===10){if(a.msgButtons.ok.isVisible()){a.msgButtons.ok.handler.call(a,a.msgButtons.ok)}else {if(a.msgButtons.yes.isVisible()){a.msgButtons.yes.handler.call(a,a.msgButtons.yes)}}}},reconfigure:function(b){var a=this,j=0,p=!0,s=a.buttonText,g=a.resizer,c=a.header,q=c&&!c.isHeader,r=b&&(b.message||b.msg),i,n,m,e,d,f,o,k,l,h;a.updateButtonText();a.cfg=b=b||{};h=b.wait;if(b.width){n=b.width}if(b.height){m=b.height}a.minWidth=b.minWidth||a.defaultMinWidth;a.maxWidth=b.maxWidth||a.defaultMaxWidth;a.minHeight=b.minHeight||a.defaultMinHeight;a.maxHeight=b.maxHeight||a.defaultMaxHeight;if(g){i=g.resizeTracker;g.minWidth=i.minWidth=a.minWidth;g.maxWidth=i.maxWidth=a.maxWidth;g.minHeight=i.minHeight=a.minHeight;g.maxHeight=i.maxHeight=a.maxHeight}delete a.defaultFocus;if(b.defaultFocus){a.defaultFocus=b.defaultFocus}a.animateTarget=b.animateTarget||undefined;a.modal=b.modal!==!1;a.setTitle(b.title||q&&c.title||a.title);a.setIconCls(b.iconCls||q&&c.iconCls||a.iconCls);if(Ext.isObject(b.buttons)){a.buttonText=b.buttons;j=0}else {a.buttonText=b.buttonText||a.buttonText;j=Ext.isNumber(b.buttons)?b.buttons:0}j=j|a.updateButtonText();a.buttonText=s;Ext.suspendLayouts();a.width=a.height=null;if(n||m){if(n){a.setWidth(n)}if(m){a.setHeight(m)}}a.hidden=!1;if(!a.rendered){a.render(Ext.getBody())}a.closable=b.closable!==!1&&!h;c=a.header;if(c){c.child('[type=close]').setVisible(a.closable);if(!b.title&&!a.closable&&!b.iconCls){c.hide()}else {c.show()}}a.liveDrag=!b.proxyDrag;a.userCallback=Ext.Function.bindCallback(b.callback||b.fn||Ext.emptyFn,b.scope||Ext.global);a.setIcon(b.icon);o=a.msg;if(r){o.setHtml(r);o.show()}else {o.hide()}d=a.textArea;f=a.textField;if(b.prompt||b.multiline){a.multiline=b.multiline;if(b.multiline){d.setValue(b.value);d.setHeight(b.defaultTextHeight||a.defaultTextHeight);d.show();f.hide();a.defaultFocus=d}else {f.setValue(b.value);d.hide();f.show();a.defaultFocus=f}}else {d.hide();f.hide()}k=a.progressBar;if(b.progress||h){k.show();a.updateProgress(0,b.progressText);if(h){k.wait(h===!0?b.waitConfig:h)}}else {k.hide()}l=a.msgButtons;for(e=0;e<4;e++){if(j&Math.pow(2,e)){if(!a.defaultFocus){a.defaultFocus=l[e]}l[e].show();p=!1}else {l[e].hide()}}if(p){a.bottomTb.hide()}else {a.bottomTb.show()}Ext.resumeLayouts(!0)},updateButtonText:function(){var b=this,c=b.buttonText,e=0,a,d;for(a in c){if(c.hasOwnProperty(a)){d=b.msgButtons[a];if(d){if(b.cfg&&b.cfg.buttonText){e=e|Math.pow(2,Ext.Array.indexOf(b.buttonIds,a))}if(d.text!==c[a]){d.setText(c[a])}}}}return e},show:function(b){var a=this,c;b=b||{};if(Ext.Component.layoutSuspendCount){Ext.on({resumelayouts:function(){a.show(b)},single:!0});return a}a.reconfigure(b);if(b.cls){a.addCls(b.cls)}c=a.query('textfield:not([hidden]),textarea:not([hidden]),button:not([hidden])');a.preventFocusOnActivate=!c.length;a.hidden=!0;Ext.window.Window.prototype.show.call(this);return a},onShow:function(){Ext.window.Window.prototype.onShow.apply(this,arguments);this.center()},updateText:function(a){this.msg.setHtml(a)},setIcon:function(e,d,c){var b=this,a=b.iconComponent,f=b.messageIconCls;if(f){a.removeCls(f)}if(e){a.show();if(d||c){a.setSize(d||a.getWidth(),c||a.getHeight())}a.addCls('x-dlg-icon');a.addCls(b.messageIconCls=e)}else {a.removeCls('x-dlg-icon');a.hide()}return b},updateProgress:function(c,b,a){this.progressBar.updateProgress(c,b);if(a){this.updateText(a)}return this},onEsc:function(){if(this.closable!==!1){Ext.window.Window.prototype.onEsc.apply(this,arguments)}},confirm:function(a,b,d,c){if(Ext.isString(a)){a={title:a,icon:this.QUESTION,message:b,buttons:this.YESNO,callback:d,scope:c}}return this.show(a)},prompt:function(a,c,f,d,b,e){if(Ext.isString(a)){a={prompt:!0,title:a,minWidth:this.minPromptWidth,message:c,buttons:this.OKCANCEL,callback:f,scope:d,multiline:b,value:e}}return this.show(a)},wait:function(a,c,b){if(Ext.isString(a)){a={title:c,message:a,closable:!1,wait:!0,modal:!0,minWidth:this.minProgressWidth,waitConfig:b}}return this.show(a)},alert:function(a,b,d,c){if(Ext.isString(a)){a={title:a,message:b,buttons:this.OK,fn:d,scope:c,minWidth:this.minWidth}}return this.show(a)},progress:function(a,c,b){if(Ext.isString(a)){a={title:a,message:c,progress:!0,progressText:b}}return this.show(a)}},1,['messagebox'],['component','box','container','panel','window','messagebox'],{'component':!0,'box':!0,'container':!0,'panel':!0,'window':!0,'messagebox':!0},['widget.messagebox'],0,[Ext.window,'MessageBox'],function(a){Ext.onInternalReady(function(){Ext.MessageBox=Ext.Msg=new a()})});Ext.cmd.derive('Ext.form.Basic',Ext.util.Observable,{alternateClassName:'Ext.form.BasicForm',taskDelay:10,constructor:function(c,d){var a=this,b;a.owner=c;a.fieldMonitors={validitychange:a.checkValidityDelay,enable:a.checkValidityDelay,disable:a.checkValidityDelay,dirtychange:a.checkDirtyDelay,errorchange:a.checkErrorDelay,scope:a};a.checkValidityTask=new Ext.util.DelayedTask(a.checkValidity,a);a.checkDirtyTask=new Ext.util.DelayedTask(a.checkDirty,a);a.checkErrorTask=new Ext.util.DelayedTask(a.checkError,a);a.monitor=new Ext.container.Monitor({selector:'[isFormField]:not([excludeForm])',scope:a,addHandler:a.onFieldAdd,removeHandler:a.onFieldRemove,invalidateHandler:a.onMonitorInvalidate});a.monitor.bind(c);Ext.apply(a,d);if(Ext.isString(a.paramOrder)){a.paramOrder=a.paramOrder.split(/[\s,|]/)}b=a.reader;if(b&&!b.isReader){if(typeof b==='string'){b={type:b}}a.reader=Ext.createByAlias('reader.'+b.type,b)}b=a.errorReader;if(b&&!b.isReader){if(typeof b==='string'){b={type:b}}a.errorReader=Ext.createByAlias('reader.'+b.type,b)}Ext.util.Observable.prototype.constructor.call(this)},initialize:function(){this.initialized=!0;this.onValidityChange(!this.hasInvalidField())},timeout:30,paramsAsHash:!1,waitTitle:'Please Wait...',trackResetOnLoad:!1,wasDirty:!1,destroy:function(){var a=this,b=a.monitor;if(b){b.unbind();a.monitor=null}a.clearListeners();a.checkValidityTask.cancel();a.checkDirtyTask.cancel();a.checkErrorTask.cancel();a.checkValidityTask=a.checkDirtyTask=a.checkErrorTask=null;a.isDestroyed=!0},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(a){var c=a.preventMark,b;a.preventMark=!0;b=a.isValid();a.preventMark=c;return !b})},isValid:function(){var b=this,a;Ext.suspendLayouts();a=b.getFields().filterBy(function(a){return !a.validate()});Ext.resumeLayouts(!0);return a.length<1},checkValidity:function(){var a=this,b;if(a.isDestroyed){return}b=!a.hasInvalidField();if(b!==a.wasValid){a.onValidityChange(b);a.fireEvent('validitychange',a,b);a.wasValid=b}},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(e){var d=this.getBoundItems(),b,a,f,c;if(d){b=d.items;f=b.length;for(a=0;a<f;a++){c=b[a];if(c.disabled===e){c.setDisabled(!e)}}}},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(a,b){if(Ext.isString(a)){a=Ext.ClassManager.instantiateByAlias('formaction.'+a,Ext.apply({},b,{form:this}))}if(this.fireEvent('beforeaction',this,a)!==!1){this.beforeAction(a);Ext.defer(a.run,100,a)}return this},submit:function(a){a=a||{};var c=this,b;if(a.standardSubmit||c.standardSubmit){b='standardsubmit'}else {b=c.api?'directsubmit':'submit'}return c.doAction(b,a)},load:function(a){return this.doAction(this.api?'directload':'load',a)},updateRecord:function(a){a=a||this._record;if(!a){return this}var d=a.self.fields,e=this.getFieldValues(),f={},c=0,g=d.length,b;for(;c<g;++c){b=d[c].name;if(e.hasOwnProperty(b)){f[b]=e[b]}}a.beginEdit();a.set(f);a.endEdit();return this},loadRecord:function(a){this._record=a;return this.setValues(a.getData())},getRecord:function(){return this._record},beforeAction:function(g){var a=this,c=g.waitMsg,f='x-mask-loading',h=a.getFields().items,e,i=h.length,d,b;for(e=0;e<i;e++){d=h[e];if(d.isFormField&&d.syncValue){d.syncValue()}}if(c){b=a.waitMsgTarget;if(b===!0){a.owner.el.mask(c,f)}else {if(b){b=a.waitMsgTarget=Ext.get(b);b.mask(c,f)}else {a.floatingAncestor=a.owner.up('[floating]');if(a.floatingAncestor){a.savePreventFocusOnActivate=a.floatingAncestor.preventFocusOnActivate;a.floatingAncestor.preventFocusOnActivate=!0}Ext.MessageBox.wait(c,g.waitTitle||a.waitTitle)}}}},afterAction:function(a,e){var b=this;if(a.waitMsg){var d=Ext.MessageBox,c=b.waitMsgTarget;if(c===!0){b.owner.el.unmask()}else {if(c){c.unmask()}else {d.hide()}}}if(b.floatingAncestor){b.floatingAncestor.preventFocusOnActivate=b.savePreventFocusOnActivate}if(e){if(a.reset){b.reset()}Ext.callback(a.success,a.scope||a,[b,a]);b.fireEvent('actioncomplete',b,a)}else {Ext.callback(a.failure,a.scope||a,[b,a]);b.fireEvent('actionfailed',b,a)}},findField:function(a){return this.getFields().findBy(function(b){return b.id===a||b.name===a||b.dataIndex===a})},markInvalid:function(a){var g=this,c,d,b,f,e;function mark(c,d){var b=g.findField(c);if(b){b.markInvalid(d)}}if(Ext.isArray(a)){d=a.length;for(c=0;c<d;c++){b=a[c];mark(b.id||b.field,b.msg||b.message)}}else {if(a instanceof Ext.data.ErrorCollection){d=a.items.length;for(c=0;c<d;c++){b=a.items[c];mark(b.field,b.message)}}else {for(e in a){if(a.hasOwnProperty(e)){f=a[e];mark(e,f,a)}}}}return this},setValues:function(a){var e=this,b,d,c;function setVal(c,d){var b=e.findField(c);if(b){b.setValue(d);if(e.trackResetOnLoad){b.resetOriginalValue()}}}Ext.suspendLayouts();if(Ext.isArray(a)){d=a.length;for(b=0;b<d;b++){c=a[b];setVal(c.id,c.value)}}else {Ext.iterate(a,setVal)}Ext.resumeLayouts(!0);return this},getValues:function(n,m,h,k,l){var a={},j=this.getFields().items,o=j.length,i=Ext.isArray,e,f,c,d,b,g;for(g=0;g<o;g++){e=j[g];if(!m||e.isDirty()){f=e[k?'getModelData':'getSubmitData'](h,l);if(Ext.isObject(f)){for(b in f){if(f.hasOwnProperty(b)){c=f[b];if(h&&c===''){c=e.emptyText||''}if(!e.isRadio){if(a.hasOwnProperty(b)){d=a[b];if(!i(d)){d=a[b]=[d]}if(i(c)){a[b]=d.concat(c)}else {d.push(c)}}else {a[b]=c}}else {a[b]=a[b]||c}}}}}}if(n){a=Ext.Object.toQueryString(a)}return a},getFieldValues:function(a){return this.getValues(!1,a,!1,!0)},clearInvalid:function(){Ext.suspendLayouts();var c=this,b=c.getFields().items,a,d=b.length;for(a=0;a<d;a++){b[a].clearInvalid()}Ext.resumeLayouts(!0);return c},reset:function(d){Ext.suspendLayouts();var b=this,c=b.getFields().items,a,e=c.length;for(a=0;a<e;a++){c[a].reset()}Ext.resumeLayouts(!0);if(d===!0){delete b._record}return b},applyToFields:function(d){var b=this.getFields().items,a,c=b.length;for(a=0;a<c;a++){Ext.apply(b[a],d)}return this},applyIfToFields:function(d){var b=this.getFields().items,a,c=b.length;for(a=0;a<c;a++){Ext.applyIf(b[a],d)}return this}},1,0,0,0,0,0,[Ext.form,'Basic',Ext.form,'BasicForm'],0);Ext.cmd.derive('Ext.layout.container.CheckboxGroup',Ext.layout.container.Container,{autoFlex:!0,type:'checkboxgroup',createsInnerCt:!0,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(i){var d=this,h,e,a,c,f,j=0,g=0,k=d.autoFlex,b=d.innerCt.dom.style;Ext.layout.container.Container.prototype.beginLayout.apply(this,arguments);h=d.columnNodes;i.innerCtContext=i.getEl('innerCt',d);if(!i.widthModel.shrinkWrap){e=h.length;if(d.columnsArray){for(a=0;a<e;a++){c=d.owner.columns[a];if(c<1){j+=c;g++}}for(a=0;a<e;a++){c=d.owner.columns[a];if(c<1){f=c/j*100+'%'}else {f=c+'px'}h[a].style.width=f}}else {for(a=0;a<e;a++){f=k?1/e*100+'%':'';h[a].style.width=f;g++}}if(!g){b.tableLayout='fixed';b.width=''}else {if(g<e){b.tableLayout='fixed';b.width='100%'}else {b.tableLayout='auto';if(k){b.width='100%'}else {b.width=''}}}}else {b.tableLayout='auto';b.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(a){var h=this,d,c,b,g,f,e;if(!a.getDomProp('containerChildrenSizeDone')){h.done=!1}else {d=a.innerCtContext;c=a.widthModel.shrinkWrap;b=a.heightModel.shrinkWrap;g=b||c;f=d.el.dom;e=g&&d.getPaddingInfo();if(c){a.setContentWidth(f.offsetWidth+e.width,!0)}if(b){a.setContentHeight(f.offsetHeight+e.height,!0)}}},doRenderColumn:function(m,h,g){var l=h.$layout,j=l.owner,f=h.columnCount,i=j.items.items,b=i.length,e,a,d,c,k;if(j.vertical){d=Math.ceil(b/f);a=g*d;b=Math.min(b,a+d);c=1}else {a=g;c=f}for(;a<b;a+=c){e=i[a];l.configureItem(e);k=e.getRenderTree();Ext.DomHelper.generateMarkup(k,m)}},getColumnCount:function(){var c=this,b=c.owner,a=b.columns;if(c.columnsArray){return a.length}if(Ext.isNumber(a)){return a}return b.items.length},getItemSizePolicy:function(a){return this.autoSizePolicy},getRenderData:function(){var c=this,d=Ext.layout.container.Container.prototype.getRenderData.call(this),k=c.owner,a,e=c.getColumnCount(),b,g,h,j=c.autoFlex,i=0,f=0;if(c.columnsArray){for(a=0;a<e;a++){b=c.owner.columns[a];if(b<1){i+=b;f++}}}d.colCls=k.groupCls;d.columnCount=e;d.columns=[];for(a=0;a<e;a++){g=d.columns[a]={};if(c.columnsArray){b=c.owner.columns[a];if(b<1){h=b/i*100+'%'}else {h=b+'px'}g.style='width:'+h}else {g.style='width:'+1/e*100+'%';f++}}d.tableStyle=!f?'table-layout:fixed;':f<e?'table-layout:fixed;width:100%':j?'table-layout:auto;width:100%':'table-layout:auto;';return d},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(i){var a=this,c=i.length,b,d,h,e,g,f;if(c){Ext.suspendLayouts();if(a.autoColumns){a.addMissingColumns(c)}e=a.columnNodes.length;h=Math.ceil(c/e);for(b=0;b<c;b++){d=i[b];g=a.getRenderRowIndex(b,h,e);f=a.getRenderColumnIndex(b,h,e);if(!d.rendered){a.renderItem(d,g,f)}else {if(!a.isItemAtPosition(d,g,f)){a.moveItem(d,g,f)}}}if(a.autoColumns){a.removeExceedingColumns(c)}Ext.resumeLayouts(!0)}},isItemAtPosition:function(c,b,a){return c.el.dom===this.getNodeAt(b,a)},getRenderColumnIndex:function(a,c,b){if(this.vertical){return Math.floor(a/c)}else {return a%b}},getRenderRowIndex:function(a,c,b){var d=this;if(d.vertical){return a%c}else {return Math.floor(a/b)}},getNodeAt:function(b,a){return this.columnNodes[a].childNodes[b]},addMissingColumns:function(e){var a=this,c=a.columnNodes.length,d,g,f,b;if(c<e){d=e-c;g=a.rowEl;f=a.owner.groupCls;for(b=0;b<d;b++){g.createChild({cls:f,tag:'td',vAlign:'top',role:'presentation'})}}},removeExceedingColumns:function(d){var f=this,c=f.columnNodes.length,b,e,a;if(c>d){b=c-d;e=f.rowEl;for(a=0;a<b;a++){e.last().destroy()}}},renderItem:function(a,d,c){var b=this;b.configureItem(a);a.render(Ext.get(b.columnNodes[c]),d)},moveItem:function(e,d,b){var f=this,a=f.columnNodes[b],c=a.childNodes[d];a.insertBefore(e.el.dom,c||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:!1,allowBlank:!0,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 a=this,b=a.value;a.originalValue=a.lastValue=b||a.getValue();if(b){a.setValue(b)}},onAdd:function(a){var b=this,d,e,c;if(a.isCheckbox){b.mon(a,'change',b.checkChange,b)}else {if(a.isContainer){d=a.items.items;for(c=0,e=d.length;c<e;c++){b.onAdd(d[c])}}}Ext.form.FieldContainer.prototype.onAdd.apply(this,arguments)},onRemove:function(a){var b=this,d,e,c;if(a.isCheckbox){b.mun(a,'change',b.checkChange,b)}else {if(a.isContainer){d=a.items.items;for(c=0,e=d.length;c<e;c++){b.onRemove(d[c])}}}Ext.form.FieldContainer.prototype.onRemove.apply(this,arguments)},isEqual:function(b,c){var a=Ext.Object.toQueryString;return a(b)===a(c)},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 b=this.getBoxes(),a,c=b.length;for(a=0;a<c;a++){if(b[a].isDirty()){return !0}}},setReadOnly:function(b){var c=this.getBoxes(),a,d=c.length;for(a=0;a<d;a++){c[a].setReadOnly(b)}this.readOnly=b},reset:function(){var a=this,c=a.hasActiveError(),b=a.preventMark;a.preventMark=!0;a.batchChanges(function(){var c=a.getBoxes(),b,d=c.length;for(b=0;b<d;b++){c[b].reset()}});a.preventMark=b;a.unsetActiveError();if(c){a.updateLayout()}},resetOriginalValue:function(){var a=this,c=a.getBoxes(),b,d=c.length;for(b=0;b<d;b++){c[b].resetOriginalValue()}a.originalValue=a.getValue();a.checkDirty()},setValue:function(b){var f=this,g=f.getBoxes(),e,h=g.length,d,c,a;f.batchChanges(function(){Ext.suspendLayouts();for(e=0;e<h;e++){d=g[e];c=d.getName();a=!1;if(b){if(Ext.isArray(b[c])){a=Ext.Array.contains(b[c],d.inputValue)}else {a=b[c]}}d.setValue(a)}Ext.resumeLayouts(!0)});return f},getValue:function(){var b={},g=this.getBoxes(),e,h=g.length,d,c,f,a;for(e=0;e<h;e++){d=g[e];c=d.getName();f=d.inputValue;if(d.getValue()){if(b.hasOwnProperty(c)){a=b[c];if(!Ext.isArray(a)){a=b[c]=[a]}a.push(f)}else {b[c]=f}}}return b},getSubmitData:function(){return null},getModelData:function(){return null},validate:function(){var a=this,c,b,d;if(a.disabled){b=!0}else {c=a.getErrors();b=Ext.isEmpty(c);d=a.wasValid;if(b){a.unsetActiveError()}else {a.setActiveError(c)}}if(b!==d){a.wasValid=b;a.fireEvent('validitychange',a,b);a.updateLayout()}return b}},0,['checkboxgroup'],['component','box','container','fieldcontainer','checkboxgroup'],{'component':!0,'box':!0,'container':!0,'fieldcontainer':!0,'checkboxgroup':!0},['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:!0,checkboxUI:'default',collapsed:!1,toggleOnTitleClick:!0,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:!1,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 a=this,b=a.baseCls;a.initFieldAncestor();Ext.container.Container.prototype.initComponent.call(this);a.layout.managePadding=a.layout.manageOverflow=!1;if(a.collapsed){a.addCls(b+'-collapsed');a.collapse()}if(a.title||a.checkboxToggle||a.collapsible){a.addTitleClasses();a.legend=Ext.widget(a.createLegendCt())}a.initMonitor()},initRenderData:function(){var b=this,a=Ext.container.Container.prototype.initRenderData.call(this);a.bodyTargetCls=b.bodyTargetCls;b.protoBody.writeTo(a);delete b.protoBody;return a},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 !0},collapsedVertical:function(){return !0},createLegendCt:function(){var a=this,b=[],c={xtype:'container',baseCls:a.baseCls+'-header',layout:'container',ui:a.ui,id:a.id+'-legend',autoEl:'legend',ariaRole:null,ariaLabelledBy:'.'+a.baseCls+'-header-text',items:b,ownerCt:a,shrinkWrap:!0,ownerLayout:a.componentLayout};if(a.checkboxToggle){b.push(a.createCheckboxCmp())}else {if(a.collapsible){b.push(a.createToggleCmp())}}b.push(a.createTitleCmp());return c},createTitleCmp:function(){var a=this,b={xtype:'component',html:a.title,ui:a.ui,cls:a.baseCls+'-header-text',id:a.id+'-legendTitle'};if(a.collapsible&&a.toggleOnTitleClick){b.listeners={click:{element:'el',scope:a,fn:a.toggle}};b.cls+=' '+a.baseCls+'-header-text-collapsible'}return a.titleCmp=Ext.widget(b)},createCheckboxCmp:function(){var a=this,c='-checkbox',b=a.baseCls+'-header'+c;b+=' '+b+'-'+a.ui;a.checkboxCmp=Ext.widget({xtype:'checkbox',hideEmptyLabel:!0,name:a.checkboxName||a.id+c,cls:b,id:a.id+'-legendChk',ui:a.checkboxUI,checked:!a.collapsed,msgTarget:'none',listeners:{change:a.onCheckChange,scope:a}});return a.checkboxCmp},createToggleCmp:function(){var a=this;a.toggleCmp=Ext.widget({xtype:'tool',cacheHeight:!1,cls:a.baseCls+'-header-tool-'+a.ui,type:'toggle',handler:a.toggle,id:a.id+'-legendToggle',scope:a});return a.toggleCmp},doRenderLegend:function(d,c){var e=c.$comp,a=e.legend,b;if(a){a.ownerLayout.configureItem(a);b=a.getRenderTree();Ext.DomHelper.generateMarkup(b,d)}},getCollapsed:function(){return this.collapsed?'top':!1},getCollapsedDockedItems:function(){var a=this.legend;return a?[a]:[]},setTitle:function(c){var a=this,b=a.legend;a.title=c;if(a.rendered){if(!b){a.legend=b=Ext.widget(a.createLegendCt());a.addTitleClasses();b.ownerLayout.configureItem(b);b.render(a.el,0)}a.titleCmp.update(c)}else {if(b){a.titleCmp.update(c)}else {a.addTitleClasses();a.legend=Ext.widget(a.createLegendCt())}}return a},addTitleClasses:function(){var a=this,c=a.title,b=a.baseCls;if(c){a.addCls(b+'-with-title')}if(c||a.checkboxToggle||a.collapsible){a.addCls(b+'-with-legend')}},expand:function(){return this.setExpanded(!0)},collapse:function(){return this.setExpanded(!1)},setExpanded:function(b){var a=this,c=a.checkboxCmp,d=b?'expand':'collapse';if(!a.rendered||a.fireEvent('before'+d,a)!==!1){b=!!b;if(c){c.setValue(b)}if(b){a.removeCls(a.baseCls+'-collapsed')}else {a.addCls(a.baseCls+'-collapsed')}a.collapsed=!b;if(b){delete a.getInherited().collapsed}else {a.getInherited().collapsed=!0}if(a.rendered){a.updateLayout({isRoot:!1});a.fireEvent(d,a)}}return a},getRefItems:function(c){var a=Ext.container.Container.prototype.getRefItems.apply(this,arguments),b=this.legend;if(b){a.unshift(b);if(c){a.unshift.apply(a,b.getRefItems(!0))}}return a},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:!0})}return a},getDefaultContentTarget:function(){return this.body},getTargetEl:function(){return this.body||this.frameBody||this.el},initPadding:function(d){var b=this,e=b.getProtoBody(),a=b.padding,c;if(a!==undefined){if(Ext.isIE8){a=b.parseBox(a);c=Ext.Element.parseBox(0);c.top=a.top;a.top=0;e.setStyle('padding',b.unitizeBox(c))}d.setStyle('padding',b.unitizeBox(a))}},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':!0,'box':!0,'container':!0,'fieldset':!0},['widget.fieldset'],[['fieldAncestor',Ext.form.FieldAncestor]],[Ext.form,'FieldSet'],0);Ext.cmd.derive('Ext.form.Label',Ext.Component,{autoEl:'label',maskOnDisable:!1,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!==!1;if(b){a.text=c;delete a.html}else {a.html=c;delete a.text}if(a.rendered){a.el.dom.innerHTML=b!==!1?Ext.util.Format.htmlEncode(c):c;a.updateLayout()}return a}},0,['label'],['component','box','label'],{'component':!0,'box':!0,'label':!0},['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=!1}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 d={},c=this.basicFormConfigs,e=c.length,b=0,a;for(;b<e;++b){a=c[b];d[a]=this[a]}return new Ext.form.Basic(this,d)},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,c,a,b){return this.getForm().getValues(d,c,a,b)},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 b=this.form.getFields().items,a,c=b.length;for(a=0;a<c;a++){b[a].checkChange()}}},0,['form'],['component','box','container','panel','form'],{'component':!0,'box':!0,'container':!0,'panel':!0,'form':!0},['widget.form'],[['fieldAncestor',Ext.form.FieldAncestor]],[Ext.form,'Panel',Ext,'FormPanel',Ext.form,'FormPanel'],0);Ext.cmd.derive('Ext.form.field.Hidden',Ext.form.field.Base,{alternateClassName:'Ext.form.Hidden',focusable:!1,inputType:'hidden',isTextInput:!1,hideLabel:!0,hidden:!0,ariaRole:'presentation',initComponent:function(){this.formItemCls+='-hidden';Ext.form.field.Base.prototype.initComponent.call(this)},isEqual:function(a,b){return this.isEqualAsString(a,b)},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':!0,'box':!0,'field':!0,'hiddenfield':!0,'hidden':!0},['widget.hidden','widget.hiddenfield'],0,[Ext.form.field,'Hidden',Ext.form,'Hidden'],0);Ext.cmd.derive('Ext.grid.CellEditor',Ext.Editor,{alignment:'l-l?',hideEl:!1,cls:'x-small-editor x-grid-editor x-grid-cell-editor',treeNodeSelector:'.x-tree-node-text',shim:!1,shadow:!1,constructor:function(a){var b;this.y=0;a=Ext.apply({},a);b=a.field;if(b){b.monitorTab=!1}Ext.Editor.prototype.constructor.call(this,a)},setGrid:function(d){var a=this,c=a.grid,e,b;if(d!==c){b={beforerefresh:a.beforeViewRefresh,refresh:a.onViewRefresh,scope:a};if(c){c.getView().un(b)}e=d.getView();a.renderTo=e.getTargetEl().dom;a.grid=d;e.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=!1;a.wasAllowBlur=a.allowBlur;a.allowBlur=!1}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=!0;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(){this.restoreCell();Ext.Editor.prototype.onHide.apply(this,arguments)},restoreCell:function(){var b=this,a=b.boundEl.first();if(a){if(b.isForTree){a=a.child(b.treeNodeSelector)}a.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(!1,10)},realign:function(j){var a=this,d=a.boundEl,b=d.first(),c=b.dom.firstChild,f=d.getWidth(),h=Ext.Array.clone(a.offsets),k=a.grid,e,i='',g=!c||c.nodeType===3&&!Ext.String.trim(i=c.data).length;if(a.isForTree){e=a.getTreeNodeOffset(b);f-=Math.abs(e);h[0]+=e}if(k.columnLines){f-=d.getBorderWidth('rl')}if(j===!0){a.field.setWidth(f)}if(g){b.dom.innerHTML='X'}a.alignTo(b,a.alignment,h);if(g){b.dom.firstChild.data=i}},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=!1}},1,0,['component','box','container','editor'],{'component':!0,'box':!0,'container':!0,'editor':!0},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 a=this,c=a.getColumns(),d=c.length,b;if(a.variableRowHeight==null){a.variableRowHeight=!1;for(b=0;!a.variableRowHeight&&b<d;b++){a.variableRowHeight=!!c[b].variableRowHeight}}return a.variableRowHeight},getHeaderIndex:function(a){if(a.isGroupHeader){a=this.getHeaderColumns(a)[0]}return Ext.Array.indexOf(this.getColumns(),a)},getHeaderAtIndex:function(b){var a=this.getColumns(),c=a[b];return c||null},getPreviousSibling:function(c){var a=this.getHeaderIndex(c),b=null;if(a>0){b=this.getColumns()[a-1]}return b},getNextSibling:function(c){var a=this.getHeaderIndex(c),b;if(a!==-1){b=this.getColumns()[a+1]}return b||null},getFirst:function(){var a=this.getColumns();return a.length>0?a[0]:null},getLast:function(){var a=this.getColumns(),b=a.length;return b>0?a[b-1]:null},getHeaderByDataIndex:function(d){var c=this.getColumns(),e=c.length,a,b;for(a=0;a<e;++a){b=c[a];if(b.dataIndex===d){return b}}return null},getHeaderById:function(e){var c=this.getColumns(),d=c.length,a,b;for(a=0;a<d;++a){b=c[a];if(b.getItemId()===e){return b}}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 a=this.getHeaderColumns(this.headerCt),b=this.secondHeaderCt;if(b){a=a.concat(this.getHeaderColumns(b))}this.columns=a},getHeaderColumns:function(a){var b=this.visibleOnly?a.getVisibleGridColumns():a.getGridColumns();return Ext.Array.clone(b)},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.column.Action',Ext.grid.column.Column,{alternateClassName:'Ext.grid.ActionColumn',stopSelection:!0,actionIdRe:new RegExp('x-action-col-(\\d+)'),altText:'',menuText:'<i>Actions</i>',sortable:!1,innerCls:'x-grid-cell-inner-action-col',actionIconCls:'x-action-col-icon',constructor:function(g){var a=this,b=Ext.apply({},g),d=b.items||a.items||[a],e,c,f;a.origRenderer=b.renderer||a.renderer;a.origScope=b.scope||a.scope;a.renderer=a.scope=b.renderer=b.scope=null;b.items=null;Ext.grid.column.Column.prototype.constructor.call(this,b);a.items=d;for(c=0,f=d.length;c<f;++c){if(d[c].getClass){e=!0;break}}if(a.origRenderer||e){a.hasCustomRenderer=!0}},initComponent:function(){var a=this;Ext.grid.column.Column.prototype.initComponent.call(this);if(a.sortable&&!a.dataIndex){a.sortable=!1}},defaultRenderer:function(q,j,l,m,k,p,n){var b=this,h='x-',d=b.origScope||b,i=b.items,o=i.length,c=0,a,g,e,f;g=Ext.isFunction(b.origRenderer)?b.origRenderer.apply(d,arguments)||'':'';j.tdCls+=' x-action-col-cell';for(;c<o;c++){a=i[c];e=a.disabled||(a.isDisabled?a.isDisabled.call(a.scope||d,n,m,k,a,l):!1);f=e?null:a.tooltip||(a.getTip?a.getTip.apply(a.scope||d,arguments):null);if(!a.hasActionConfiguration){a.stopSelection=b.stopSelection;a.disable=Ext.Function.bind(b.disableAction,b,[c],0);a.enable=Ext.Function.bind(b.enableAction,b,[c],0);a.hasActionConfiguration=!0}g+='<img role="button" alt="'+(a.altText||b.altText)+'" src="'+(a.icon||Ext.BLANK_IMAGE_URL)+'" class="'+b.actionIconCls+' '+h+'action-col-'+String(c)+' '+(e?h+'item-disabled':' ')+(Ext.isFunction(a.getClass)?a.getClass.apply(a.scope||d,arguments):a.iconCls||b.iconCls||'')+'"'+(f?' data-qtip="'+f+'"':'')+' />'}return g},updater:function(b,e,d,f,c){var a={};b.firstChild.innerHTML=this.defaultRenderer(e,a,d,null,null,c,f);Ext.fly(b).addCls(a.tdCls)},enableAction:function(a,c){var b=this;if(!a){a=0}else {if(!Ext.isNumber(a)){a=Ext.Array.indexOf(b.items,a)}}b.items[a].disabled=!1;b.up('tablepanel').el.select('.x-action-col-'+a).removeCls(b.disabledCls);if(!c){b.fireEvent('enable',b)}},disableAction:function(a,c){var b=this;if(!a){a=0}else {if(!Ext.isNumber(a)){a=Ext.Array.indexOf(b.items,a)}}b.items[a].disabled=!0;b.up('tablepanel').el.select('.x-action-col-'+a).addCls(b.disabledCls);if(!c){b.fireEvent('disable',b)}},beforeDestroy:function(){this.renderer=this.items=null;return Ext.grid.column.Column.prototype.beforeDestroy.apply(this,arguments)},processEvent:function(e,f,m,h,i,c,k,n){var b=this,d=c.getTarget(),g=e==='keydown'&&c.getKey(),l,a,j;if(g&&!Ext.fly(d).findParent(f.getCellSelector())){d=Ext.fly(m).down('.x-action-col-icon',!0)}if(d&&(l=d.className.match(b.actionIdRe))){a=b.items[parseInt(l[1],10)];j=a.disabled||(a.isDisabled?a.isDisabled.call(a.scope||b.origScope||b,f,h,i,a,k):!1);if(a&&!j){if(e==='mousedown'){if(a.stopSelection){c.preventDefault()}return !1}if(e==='click'||(g===c.ENTER||g===c.SPACE)){Ext.callback(a.handler||b.handler,a.scope||b.origScope,[f,h,i,a,c,k,n],undefined,b);if(a.stopSelection!==!1){return !1}}}}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':!0,'box':!0,'container':!0,'headercontainer':!0,'gridcolumn':!0,'actioncolumn':!0},['widget.actioncolumn'],0,[Ext.grid.column,'Action',Ext.grid,'ActionColumn'],0);Ext.define('Rambox.overrides.grid.column.Action',{override:'Ext.grid.column.Action',defaultRenderer:function(t,m,o,p,n,s,q){var b=this,e='x-',f=b.origScope||b,l=b.items,r=l.length,d=0,a,i,h,g,c,k,j;i=Ext.isFunction(b.origRenderer)?b.origRenderer.apply(f,arguments)||'':'';m.tdCls+=' x-action-col-cell';for(;d<r;d++){a=l[d];h=a.disabled||(a.isDisabled?a.isDisabled.call(a.scope||f,q,p,n,a,o):!1);g=h?null:a.tooltip||(a.getTip?a.getTip.apply(a.scope||f,arguments):null);if(Ext.isFunction(a.getGlyph)){c=a.getGlyph.apply(a.scope||f,arguments)}else {c=a.glyph}if(!a.hasActionConfiguration){a.stopSelection=b.stopSelection;a.disable=Ext.Function.bind(b.disableAction,b,[d],0);a.enable=Ext.Function.bind(b.enableAction,b,[d],0);a.hasActionConfiguration=!0}if(c){if(typeof c==='string'){k=c.split('@');c=k[0];j=k[1]}else {j=Ext._glyphFontFamily}i+='<span role="button" title="'+(a.altText||b.altText)+'" class="'+e+'action-col-icon '+e+'action-col-glyph '+e+'action-col-'+String(d)+' '+(h?e+'item-disabled':' ')+' '+(Ext.isFunction(a.getClass)?a.getClass.apply(a.scope||f,arguments):a.iconCls||b.iconCls||'')+'" style="font-family:'+j+'"'+(g?' data-qtip="'+g+'"':'')+'>&#'+c+';</span>'}else {i+='<img role="button" alt="'+(a.altText||b.altText)+'" src="'+(a.icon||Ext.BLANK_IMAGE_URL)+'" class="'+b.actionIconCls+' '+e+'action-col-'+String(d)+' '+(h?e+'item-disabled':' ')+(Ext.isFunction(a.getClass)?a.getClass.apply(a.scope||f,arguments):a.iconCls||b.iconCls||'')+'"'+(g?' data-qtip="'+g+'"':'')+' />'}}return i}});Ext.cmd.derive('Ext.grid.column.Check',Ext.grid.column.Column,{alternateClassName:['Ext.ux.CheckColumn','Ext.grid.column.CheckColumn'],align:'center',stopSelection:!0,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(e,m,l,d,k,b,i,n){var a=this,j=e==='keydown'&&b.getKey(),g=e==='mousedown',h=a.disabled,f=!1,c;if(!h&&(g||(j===b.ENTER||j===b.SPACE))){c=!a.isRecordChecked(i);if(a.fireEvent('beforecheckchange',a,d,c)!==!1){a.setRecordCheck(i,c,l,n,b);a.fireEvent('checkchange',a,d,c);if(g){b.stopEvent()}if(!a.stopSelection){m.selModel.selectByPosition({row:d,column:k})}}}else {if(!h&&e==='click'){f=!1}else {f=Ext.grid.column.Column.prototype.processEvent.apply(this,arguments)}}return f},onEnable:function(){Ext.grid.column.Column.prototype.onEnable.apply(this,arguments);this._setDisabled(!1)},onDisable:function(){this._setDisabled(!0)},_setDisabled:function(d){var b=this,c=b.disabledCls,a;a=b.up('tablepanel').el.select(b.getCellSelector());if(d){a.addCls(c)}else {a.removeCls(c)}},defaultRenderer:function(d,c){var a='x-',b=a+'grid-checkcolumn';if(this.disabled){c.tdCls+=' '+this.disabledCls}if(d){b+=' '+a+'grid-checkcolumn-checked'}return '<img class="'+b+'" src="'+Ext.BLANK_IMAGE_URL+'"/>'},isRecordChecked:function(a){var b=this.property;if(b){return a[b]}return a.get(this.dataIndex)},setRecordCheck:function(c,a,e,f,g){var b=this,d=b.property;if(d){c[d]=a;b.updater(e,a)}else {c.set(b.dataIndex,a)}},updater:function(c,d){var b={},a;c.firstChild.innerHTML=this.defaultRenderer(d,b);a=b.tdCls;if(a){Ext.fly(c).addCls(a)}}},1,['checkcolumn'],['component','box','container','headercontainer','gridcolumn','checkcolumn'],{'component':!0,'box':!0,'container':!0,'headercontainer':!0,'gridcolumn':!0,'checkcolumn':!0},['widget.checkcolumn'],0,[Ext.grid.column,'Check',Ext.ux,'CheckColumn',Ext.grid.column,'CheckColumn'],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=!0;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(b,a){b.firstChild.innerHTML=Ext.grid.column.CheckColumn.prototype.defaultRenderer.call(this,a)}},0,['templatecolumn'],['component','box','container','headercontainer','gridcolumn','templatecolumn'],{'component':!0,'box':!0,'container':!0,'headercontainer':!0,'gridcolumn':!0,'templatecolumn':!0},['widget.templatecolumn'],0,[Ext.grid.column,'Template',Ext.grid,'TemplateColumn'],0);Ext.cmd.derive('Ext.grid.feature.Feature',Ext.util.Observable,{wrapsItem:!1,isFeature:!0,disabled:!1,hasFeatureEvent:!0,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,c,a,d){return [b,c,a,d]},vetoEvent:Ext.emptyFn,enable:function(){this.disabled=!1},disable:function(){this.disabled=!0}},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(c,a,b){if(a.record.isSummary&&this.summaryFeature.showSummaryRow){this.summaryFeature.outputSummaryRecord(a.record,a,c,b)}else {this.nextTpl.applyOut(a,c,b)}},priority:1000},showSummaryRow:!0,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(a,d){var b=this,e=b.showSummaryRow,c;a=a!=null?!!a:!b.showSummaryRow;b.showSummaryRow=a;if(a&&a!==e){b.updateNext=!0}if(b.lockingPartner){if(!d){b.lockingPartner.toggleSummaryRow(a,!0);c=!0}}else {c=!0}if(c){b.grid.ownerGrid.getView().refresh()}},createRenderer:function(a,c){var e=this,d=c.ownerGroup,f=d?e.summaryData[d]:e.summaryData,b=a.dataIndex||a.getItemId();return function(e,d){return a.summaryRenderer?a.summaryRenderer(c.data[b],f,b,d):c.data[b]}},outputSummaryRecord:function(e,f,j){var c=f.view,i=c.rowValues,d=f.columns||c.headerCt.getVisibleGridColumns(),g=d.length,b,a,h={view:c,record:e,rowStyle:'',rowClasses:[this.summaryRowCls],itemClasses:[],recordIndex:-1,rowId:c.getRowId(e),columns:d};for(b=0;b<g;b++){a=d[b];a.savedRenderer=a.renderer;if(a.summaryType||a.summaryRenderer){a.renderer=this.createRenderer(a,e)}else {a.renderer=Ext.emptyFn}}c.rowValues=h;c.self.prototype.rowTpl.applyOut(h,j,parent);c.rowValues=i;for(b=0;b<g;b++){a=d[b];a.renderer=a.savedRenderer;a.savedRenderer=null}},getSummary:function(f,c,a,e){var d=!!e,b=d?e:f;if(c){if(Ext.isFunction(c)){if(d){return b.aggregate(a,c)}else {return b.aggregate(c,null,!1,[a])}}switch(c){case 'count':return b.count(a);case 'min':return b.min(a);case 'max':return b.max(a);case 'sum':return b.sum(a);case 'average':return b.average(a);default:return '';}}},generateSummaryData:function(e){var f=this,a=f.view.store.getProxy().getReader(),c={},g={},d,i,h,b;h=a.getRootProperty();a.setRootProperty(f.remoteRoot);a.buildExtractors(!0);b=a.getRoot(a.rawData);if(b){if(!Ext.isArray(b)){b=[b]}i=b.length;for(d=0;d<i;++d){c=a.extractRecordData(b[d],f.readDataOptions);if(e){g[c[e]]=c}}}a.setRootProperty(h);a.buildExtractors(!0);return e?g:c},setSummaryData:function(e,d,c,b){var a=this.summaryData;if(b){if(!a[b]){a[b]={}}a[b][d]=c}else {a[d]=c}}},0,0,0,0,['feature.abstractsummary'],0,[Ext.grid.feature,'AbstractSummary'],0);Ext.cmd.derive('Ext.grid.feature.GroupStore',Ext.util.Observable,{isStore:!0,defaultViewSize:100,isFeatureStore:!0,badGrouperKey:'[object Object]',constructor:function(b,c){var a=this;Ext.util.Observable.prototype.constructor.call(this);a.groupingFeature=b;a.bindStore(c)},bindStore:function(b){var a=this;if(!b||a.store!==b){Ext.destroy(a.storeListeners);a.store=null}if(b){a.storeListeners=b.on({groupchange:a.onGroupChange,remove:a.onRemove,add:a.onAdd,idchanged:a.onIdChanged,update:a.onUpdate,refresh:a.onRefresh,clear:a.onClear,scope:a,destroyable:!0});a.store=b;a.processStore(b)}},processStore:function(d){var k=this,a=k.groupingFeature,s=a.startCollapsed,e=k.data,q=Ext.Array,x=q.indexOf,y=q.splice,i=d.getGroups(),u=i?i.length:0,n=d.getGroupField(),g=i&&q.unique(Ext.Object.getValues(i.itemGroupKeys)),t=!1,l=a.getCache(),h,m,b,w,r,j,o,f,c,p,v;a.invalidateCache();m=a.getCache();if(e){e.clear()}else {e=k.data=new Ext.util.Collection({rootProperty:'data',extraKeys:{byInternalId:{property:'internalId',rootProperty:''}}})}if(d.getCount()){a.startCollapsed=!1;if(u>0){v=d.getModel();for(b=0;b<u;b++){j=i.getAt(b);c=j.getGroupKey();if(k.badGrouperKey===c&&(r=a.getGrouper(n))){a.startCollapsed=s;d.group(r);return}h=m[c]=l[c]||a.getMetaGroup(c);h.raw=j.getAt(0).get(n);y(g,x(g,c),1);t=h.isCollapsed=s||h.isCollapsed;if(t){p={};p[n]=c;h.placeholder=f=new v(p);f.isNonData=f.isCollapsedPlaceholder=!0;f.group=j;e.add(f)}else {e.insert(k.data.length,j.items)}}if(g.length){for(b=0,w=g.length;b<w;b++){o=g[b];m[o]=l[o]}}l=null}else {e.add(d.getRange())}}},isCollapsed:function(a){return this.groupingFeature.getCache()[a].isCollapsed},isLoading:function(){return !1},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,a){var c=this.data.getRange(d,Ext.isNumber(b)?b+1:b);if(a&&a.callback){a.callback.call(a.scope||this,c,d,b,a)}return c},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(b){var a=this,f=a.groupingFeature,e,d,c,g;if(typeof b==='string'){b=f.getGroup(b)}if(b){g=b.items;e=f.getMetaGroup(b);d=e.placeholder}if(g.length&&(c=a.data.indexOf(d))!==-1){e.isCollapsed=!1;a.isExpandingOrCollapsing=1;a.data.removeAt(c);a.data.insert(c,b.items);a.fireEvent('replace',a,c,[d],b.items);a.fireEvent('groupexpand',a,b);a.isExpandingOrCollapsing=0}},collapseGroup:function(b){var a=this,e=a.groupingFeature,d,f,g,c;if(typeof b==='string'){b=e.getGroup(b)}if(b){c=b.items}if(c&&(g=c.length)&&(d=a.data.indexOf(c[0]))!==-1){e.getMetaGroup(b).isCollapsed=!0;a.isExpandingOrCollapsing=2;a.data.removeAt(d,g);a.data.insert(d,f=a.getGroupPlaceholder(b));a.fireEvent('replace',a,d,c,[f]);a.fireEvent('groupcollapse',a,b);a.isExpandingOrCollapsing=0}},getGroupPlaceholder:function(c){var b=this.groupingFeature.getMetaGroup(c);if(!b.placeholder){var e=this.store,f=e.getModel(),d={},g=c.getGroupKey(),a;d[e.getGroupField()]=g;a=b.placeholder=new f(d);a.isNonData=a.isCollapsedPlaceholder=!0;a.group=c}return b.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(b,c,e,d){var a=this;if(b.isMoving()){return}a.processStore(a.store);a.fireEvent('refresh',a)},onClear:function(d,c,b){var a=this;a.processStore(a.store);a.fireEvent('clear',a)},onAdd:function(d,b,c){var a=this;a.processStore(a.store);a.fireEvent('replace',a,a.indexOf(b[0]),[],b)},onIdChanged:function(d,b,a,c){this.data.updateKey(b,a)},onUpdate:function(k,b,j,c){var a=this,f=a.groupingFeature,g,i,d,e,h;if(k.isGrouped()){g=b.group=f.getGroup(b);i=f.getMetaGroup(b);if(c&&Ext.Array.contains(c,f.getGroupField())){return a.onRefresh(a.store)}if(i.isCollapsed){a.fireEvent('update',a,i.placeholder)}else {Ext.suspendLayouts();a.fireEvent('update',a,b,j,c);h=g.items;d=h[0];e=h[h.length-1];if(d!==b){d.group=g;a.fireEvent('update',a,d,'edit',c);delete d.group}if(e!==b&&e!==d&&f.showSummaryRow){e.group=g;a.fireEvent('update',a,e,'edit',c);delete e.group}Ext.resumeLayouts(!0)}delete b.group}else {a.fireEvent('update',a,b,j,c)}},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:{},wrapsItem:!0,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:!1,startCollapsed:!1,enableGroupingMenu:!0,enableNoGroups:!0,collapsible:!0,groupers:null,expandTip:'Click to expand. CTRL key collapses all others',collapseTip:'Click to collapse. CTRL/click collapses all others',showSummaryRow:!1,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.metaGroupCache, parent) || " "]}','</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(a){var b=this.owner;a.add('header',b.eventSelector);a.add('summary',b.summaryRowSelector)},syncContent:function(b,a,f){b=Ext.fly(b,'syncDest');a=Ext.fly(a,'sycSrc');var c=this.owner,h=b.down(c.eventSelector,!0),g=a.down(c.eventSelector,!0),e=b.down(c.summaryRowSelector,!0),d=a.down(c.summaryRowSelector,!0);if(h&&g){Ext.fly(h).syncContent(g)}if(e&&d){if(f){this.groupingFeature.view.updateColumns(e,d,f)}else {Ext.fly(e).syncContent(d)}}}}],init:function(c){var a=this,b=a.view,f=a.getGridStore(),d,e;b.isGrouping=f.isGrouped();a.mixins.summary.init.call(a);Ext.grid.feature.Feature.prototype.init.call(this,c);b.headerCt.on({columnhide:a.onColumnHideShow,columnshow:a.onColumnHideShow,columnmove:a.onColumnMove,scope:a});b.addTpl(Ext.XTemplate.getTpl(a,'outerTpl')).groupingFeature=a;b.addRowTpl(Ext.XTemplate.getTpl(a,'groupRowTpl')).groupingFeature=a;b.preserveScrollOnRefresh=!0;if(f.isBufferedStore){a.collapsible=!1}else {d=a.lockingPartner;if(d&&d.dataSource){a.dataSource=b.dataSource=e=d.dataSource}else {a.dataSource=b.dataSource=e=new Ext.grid.feature.GroupStore(a,f)}}c=c.ownerLockable||c;c.on('beforereconfigure',a.beforeReconfigure,a);b.on({afterrender:a.afterViewRender,scope:a,single:!0});if(e){e.on('groupchange',a.onGroupChange,a)}else {a.setupStoreListeners(f)}},getGridStore:function(){return this.view.getStore()},indexOf:function(a){return this.dataSource.indexOf(a)},isInCollapsedGroup:function(d){var c=this,e=c.getGridStore(),b=!1,a;if(e.isGrouped()&&(a=c.getMetaGroup(d))){b=!!(a&&a.isCollapsed)}return b},createCache:function(){var b=this.metaGroupCache={},a=this.lockingPartner;if(a){a.metaGroupCache=b}return b},getCache:function(){return this.metaGroupCache||this.createCache()},invalidateCache:function(){var a=this.lockingPartner;this.metaGroupCache=null;if(a){a.metaGroupCache=null}},vetoEvent:function(c,d,b,a){if(a.type!=='mouseover'&&a.type!=='mouseout'&&a.type!=='mouseenter'&&a.type!=='mouseleave'&&a.getTarget(this.eventSelector)){return !1}},enable:function(){var a=this,c=a.view,e=a.getGridStore(),d=a.hideGroupedHeader&&a.getGroupedHeader(),b;c.isGrouping=!0;if(c.lockingPartner){c.lockingPartner.isGrouping=!0}Ext.grid.feature.Feature.prototype.enable.call(this);if(a.lastGrouper){e.group(a.lastGrouper);a.lastGrouper=null}if(d){d.hide()}b=a.view.headerCt.getMenu().down('#groupToggleMenuItem');if(b){b.setChecked(!0,!0)}},disable:function(){var a=this,c=a.view,f=a.getGridStore(),d=a.hideGroupedHeader&&a.getGroupedHeader(),e=f.getGrouper(),b;c.isGrouping=!1;if(c.lockingPartner){c.lockingPartner.isGrouping=!1}Ext.grid.feature.Feature.prototype.disable.call(this);if(e){a.lastGrouper=e;f.clearGrouping()}if(d){d.show()}b=a.view.headerCt.getMenu().down('#groupToggleMenuItem');if(b){b.setChecked(!1,!0);b.disable()}},afterViewRender:function(){var a=this,b=a.view;b.on({scope:a,groupclick:a.onGroupClick});if(a.enableGroupingMenu){a.injectGroupingMenu()}a.pruneGroupedHeader();a.lastGrouper=a.getGridStore().getGrouper();if(a.disabled){a.disable()}},injectGroupingMenu:function(){var a=this,b=a.view.headerCt;b.showMenuBy=a.showMenuBy;b.getMenuItems=a.getMenuItems()},onColumnHideShow:function(l,m){var a=this,e=a.view,k=e.headerCt,i=k.getMenu(),c=i.activeHeader,f=i.down('#groupMenuItem'),g,h=a.grid.getVisibleColumnManager().getColumns().length,d,j,b;if(c&&f){g=c.groupable===!1||!c.dataIndex||a.view.headerCt.getVisibleGridColumns().length<2?'disable':'enable';f[g]()}if(e.rendered&&h){d=e.el.query('.'+a.ctCls);for(b=0,j=d.length;b<j;++b){d[b].colSpan=h}}},onColumnMove:function(){var a=this,f=a.view,b,g,e,c,d,h;if(f.getStore().isGrouped()){g=a.getCache().map;Ext.suspendLayouts();for(b in g){e=a.getGroup(b);c=e.first();d=e.last();h=a.getMetaGroup(b);if(h.isCollapsed){c=d=a.dataSource.getGroupPlaceholder(b)}f.refreshNode(c);if(a.showSummaryRow&&d!==c){f.refreshNode(d)}}Ext.resumeLayouts(!0)}},showMenuBy:function(h,i,d){var a=this,e=a.getMenu(),f=e.down('#groupMenuItem'),g=d.groupable===!1||!d.dataIndex||a.view.headerCt.getVisibleGridColumns().length<2?'disable':'enable',b=e.down('#groupToggleMenuItem'),c=a.grid.getStore().isGrouped();f[g]();if(b){b.setChecked(c,!0);b[c?'enable':'disable']()}Ext.grid.header.Container.prototype.showMenuBy.apply(a,arguments)},getMenuItems:function(){var a=this,e=a.groupByText,f=a.disabled||!a.getGroupField(),c=a.showGroupsText,b=a.enableNoGroups,d=a.view.headerCt.getMenuItems;return function(){var g=d.call(this);g.push('-',{iconCls:'x-group-by-icon',itemId:'groupMenuItem',text:e,handler:a.onGroupMenuItemClick,scope:a});if(b){g.push({itemId:'groupToggleMenuItem',text:c,checked:!f,checkHandler:a.onGroupToggleMenuItemClick,scope:a})}return g}},onGroupMenuItemClick:function(c,g){var a=this,e=c.parentMenu,b=e.activeHeader,f=a.view,d=a.getGridStore();if(a.disabled){a.lastGrouper=null;a.block();a.enable();a.unblock()}f.isGrouping=!0;d.group(a.getGrouper(b.dataIndex)||b.dataIndex);a.pruneGroupedHeader()},block:function(b){var a=this;a.blockRefresh=a.view.blockRefresh=!0;if(a.lockingPartner&&!b){a.lockingPartner.block(!0)}},unblock:function(b){var a=this;a.blockRefresh=a.view.blockRefresh=!1;if(a.lockingPartner&&!b){a.lockingPartner.unblock(!0)}},onGroupToggleMenuItemClick:function(b,a){this[a?'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(!0)}},getHeaderNode:function(b){var f=this.view.getEl(),c,a,e,d;if(f){b=Ext.htmlEncode(b);c=f.query(this.eventSelector);for(a=0,e=c.length;a<e;++a){d=c[a];if(d.getAttribute('data-groupName')===b){return d}}}},getGroup:function(a){var b=this.getGridStore(),d=a,c;if(b.isGrouped()){if(a.isModel){a=a.get(b.getGroupField())}if(typeof a!=='string'){a=b.getGrouper().getGroupString(d)}c=b.getGroups().getByKey(a)}return c},getGrouper:function(b){var a=this.groupers;if(!a){return null}return Ext.Array.findBy(a,function(a){return a.property===b})},getGroupField:function(){return this.getGridStore().getGroupField()},getMetaGroup:function(a){var b=this.metaGroupCache||this.createCache(),d,c;if(a.isModel){a=this.getGroup(a)}if(a){d=typeof a==='string'?a:a.getGroupKey();c=b[d];if(!c){c=b[d]={isCollapsed:!1,lastGroup:null,lastGroupGeneration:null,lastFilterGeneration:null,aggregateRecord:new Ext.data.Model()};if(!b.map){b.map={}}b.map[d]=!0}}return c},isExpanded:function(a){return !this.getMetaGroup(a).isCollapsed},expand:function(a,b){this.doCollapseExpand(!1,a,b)},expandAll:function(){var c=this,b=c.getCache(),d=c.lockingPartner,a;for(a in b){if(b.hasOwnProperty(a)){b[a].isCollapsed=!1}}Ext.suspendLayouts();c.dataSource.onRefresh();Ext.resumeLayouts(!0);for(a in b){if(b.hasOwnProperty(a)){c.afterCollapseExpand(!1,a);if(d){d.afterCollapseExpand(!1,a)}}}},collapse:function(a,b){this.doCollapseExpand(!0,a,b)},isAllCollapsed:function(){var c=this,a=c.getCache(),b;for(b in a){if(a.hasOwnProperty(b)){if(!a[b].isCollapsed){return !1}}}return !0},isAllExpanded:function(){var c=this,a=c.getCache(),b;for(b in a){if(a.hasOwnProperty(b)){if(a[b].isCollapsed){return !1}}}return !0},collapseAll:function(){var d=this,c=d.getCache(),a,b=d.lockingPartner;for(a in c){if(c.hasOwnProperty(a)){c[a].isCollapsed=!0}}Ext.suspendLayouts();d.dataSource.onRefresh();if(b&&!b.isAllCollapsed()){b.collapseAll()}Ext.resumeLayouts(!0);for(a in c){if(c.hasOwnProperty(a)){d.afterCollapseExpand(!0,a);if(b){b.afterCollapseExpand(!0,a)}}}},doCollapseExpand:function(b,c,f){var a=this,e=a.lockingPartner,d=a.getGroup(c);if(a.getMetaGroup(d).isCollapsed!==b){Ext.suspendLayouts();if(b){a.dataSource.collapseGroup(d)}else {a.dataSource.expandGroup(d)}Ext.resumeLayouts(!0);a.afterCollapseExpand(b,c,f);if(e){e.afterCollapseExpand(b,c,!1)}}},afterCollapseExpand:function(f,c,g){var d=this,a=d.view,e=a.bufferedRenderer,b;b=d.getHeaderNode(c);a.fireEvent(f?'groupcollapse':'groupexpand',a,b,c);if(g){if(b){a.scrollElIntoView(Ext.fly(b).up(a.getItemSelector()),!1,!0)}else {if(e){e.scrollTo(d.getGroup(c).getAt(0))}}}},onGroupChange:function(b,a){if(!a){this.view.ownerGrid.getView().refresh()}else {this.lastGrouper=a}},getMenuItem:function(c){var b=this.view,a=b.headerCt.down('gridcolumn[dataIndex='+c+']'),d=b.headerCt.getMenu();return a?d.down('menuitem[headerId='+a.id+']'):null},onGroupKey:function(d,a){var b=this,c=b.getGroupName(a.target);if(c){b.onGroupClick(b.view,a.target,c,a)}},onGroupClick:function(i,h,b,g){var a=this,e=a.getCache(),f=e.map,d=!a.isExpanded(b),c;if(a.collapsible){if(g.ctrlKey){Ext.suspendLayouts();for(c in f){if(c===b){if(d){a.expand(b)}}else {if(!e[c].isCollapsed){a.doCollapseExpand(!0,c,!1)}}}Ext.resumeLayouts(!0);return}if(d){a.expand(b)}else {a.collapse(b)}}},setupRowData:function(e,r,a){var c=this,j=a.recordIndex,i=c.refreshData,b=c.getCache(),m=i.header,f=i.groupField,h=c.getGridStore(),q=c.view.dataSource,l=c.grid.columnManager.getHeaderByDataIndex(f),p=!!(l&&l.renderer),k,d,o,n,g;a.isCollapsedGroup=!1;a.summaryRecord=a.groupHeaderCls=null;if(i.doGrouping){k=h.getGrouper();if(e.isCollapsedPlaceholder){d=e.group.getGroupKey();g=e.group.items;a.isFirstRow=a.isLastRow=!0;a.groupHeaderCls=c.hdCollapsedCls;a.isCollapsedGroup=a.needsWrap=!0;a.groupName=d;a.metaGroupCache=b;b.groupField=f;b.name=b.renderedGroupValue=p?l.renderer(b[d].raw,{},e):d;b.groupValue=g[0].get(f);b.columnName=m?m.text:f;a.collapsibleCls=c.collapsible?c.collapsibleCls:c.hdNotCollapsibleCls;b.rows=b.children=g;if(c.showSummaryRow){a.summaryRecord=i.summaryData[d]}return}d=k.getGroupString(e);if(e.group){g=e.group.items;a.isFirstRow=e===g[0];a.isLastRow=e===g[g.length-1]}else {a.isFirstRow=j===0;if(!a.isFirstRow){o=h.getAt(j-1);if(o){a.isFirstRow=!o.isEqual(k.getGroupString(o),d)}}a.isLastRow=j===(h.isBufferedStore?h.getTotalCount():h.getCount())-1;if(!a.isLastRow){n=h.getAt(j+1);if(n){a.isLastRow=!n.isEqual(k.getGroupString(n),d)}}}if(a.isFirstRow){b.groupField=f;b.name=b.renderedGroupValue=p?l.renderer(b[d].raw,{},e):d;b.groupValue=e.get(f);b.columnName=m?m.text:f;a.collapsibleCls=c.collapsible?c.collapsibleCls:c.hdNotCollapsibleCls;a.groupName=d;if(!c.isExpanded(d)){a.itemClasses.push(c.hdCollapsedCls);a.isCollapsedGroup=!0}if(q.isBufferedStore){b.rows=b.children=[]}else {b.rows=b.children=c.getRecordGroup(e).items}a.metaGroupCache=b}if(a.isLastRow){if(c.showSummaryRow){a.summaryRecord=i.summaryData[d];a.itemClasses.push('x-grid-group-last')}}a.needsWrap=a.isFirstRow||a.summaryRecord}},setup:function(g,f){var a=this,b=a.refreshData,d=f.view,c=d.isGrouping=!a.disabled&&a.getGridStore().isGrouped(),e=d.bufferedRenderer;a.skippedRows=0;if(e){e.variableRowHeight=d.bufferedRenderer.variableRowHeight||c}b.groupField=a.getGroupField();b.header=a.getGroupedHeader(b.groupField);b.doGrouping=c;f.groupHeaderTpl=Ext.XTemplate.getTpl(a,'groupHeaderTpl');if(c&&a.showSummaryRow){b.summaryData=a.generateSummaryData()}},cleanup:function(c,a){var b=this.refreshData;a.metaGroupCache=a.groupHeaderTpl=a.isFirstRow=null;b.groupField=b.header=null},getAggregateRecord:function(b,c){var a;if(c===!0||!b.aggregateRecord){a=new Ext.data.Model();b.aggregateRecord=a;a.isNonData=a.isSummary=!0}return b.aggregateRecord},generateSummaryData:function(){var a=this,d=a.getGridStore(),i=d.getFilters(),k=d.getGroups().items,q=d.getProxy().getReader(),o=a.getGroupField(),n=a.lockingPartner,p=a.updateNext,l={},j=a.view.ownerCt,e,m,c,b,f,h,g;if(a.remoteRoot&&q.rawData){h=!0;g=a.mixins.summary.generateSummaryData.call(a,o)}for(e=0,m=k.length;e<m;++e){c=k[e];b=a.getMetaGroup(c);if(p||h||d.updating||a.didGroupChange(c,b,i)){f=a.populateRecord(c,b,g);if(!n||j===j.ownerLockable.normalGrid){b.lastGroup=c;b.lastGroupGeneration=c.generation;b.lastFilterGeneration=i.generation}}else {f=a.getAggregateRecord(b)}l[c.getGroupKey()]=f}a.updateNext=!1;return l},getGroupName:function(d){var e=this,f=e.view,c=e.eventSelector,a,b;a=Ext.fly(d).findParent(c);if(!a){b=Ext.fly(d).findParent(f.itemSelector);if(b){a=b.down(c,!0)}}if(a){return Ext.htmlDecode(a.getAttribute('data-groupname'))}},getRecordGroup:function(c){var b=this.getGridStore(),a=b.getGrouper();if(a){return b.getGroups().getByKey(a.getGroupString(c))}},getGroupedHeader:function(a){var d=this,f=d.view.headerCt,e=d.lockingPartner,c,b;a=a||d.getGroupField();if(a){c='[dataIndex='+a+']';b=f.down(c);if(!b&&e){b=e.view.headerCt.down(c)}}return b||null},getFireEventArgs:function(b,c,a,d){return [b,c,a,this.getGroupName(a),d]},destroy:function(){var a=this,b=a.dataSource;a.storeListeners=Ext.destroy(a.storeListeners);a.view=a.prunedHeader=a.grid=a.dataSource=a.groupers=null;a.invalidateCache();Ext.grid.feature.Feature.prototype.destroy.call(this);if(b){b.bindStore(null);Ext.destroy(b)}},beforeReconfigure:function(i,a,h,e,g){var b=this,f=b.view,d=b.dataSource,c;if(a&&a!==e){c=a.isBufferedStore;if(!d){Ext.destroy(b.storeListeners);b.setupStoreListeners(a)}if(c!==e.isBufferedStore){Ext.Error.raise('Cannot reconfigure grouping switching between buffered and non-buffered stores')}f.isGrouping=!!a.getGrouper();d.bindStore(a)}},populateRecord:function(l,m,h){var b=this,o=b.grid.ownerLockable?b.grid.ownerLockable.view:b.view,n=b.getGridStore(),a=b.getAggregateRecord(m),k=o.headerCt.getGridColumns(),p=k.length,j=l.getGroupKey(),f,d,g,c,i,e;a.beginEdit();if(h){f=h[j];for(d in f){if(f.hasOwnProperty(d)){if(d!==a.idProperty){a.set(d,f[d])}}}}for(g=0;g<p;++g){c=k[g];i=c.dataIndex||c.getItemId();if(!h){e=b.getSummary(n,c.summaryType,i,l);a.set(i,e)}else {e=a.get(c.dataIndex)}b.setSummaryData(a,c.getItemId(),e,j)}a.ownerGroup=j;a.endEdit(!0);a.commit();return a},privates:{didGroupChange:function(b,a,d){var c=!0;if(b===a.lastGroup){c=a.lastGroupGeneration!==b.generation||a.lastFilterGeneration!==d.generation}return c},setupStoreListeners:function(b){var a=this;a.storeListeners=b.on({groupchange:a.onGroupChange,scope:a,destroyable:!0})}}},0,0,0,0,['feature.grouping'],[['summary',Ext.grid.feature.AbstractSummary]],[Ext.grid.feature,'Grouping'],0);Ext.cmd.derive('Ext.menu.Item',Ext.Component,{alternateClassName:'Ext.menu.TextItem',isMenuItem:!0,activated:!1,activeCls:'x-menu-item-active',ariaRole:'menuitem',clickHideDelay:0,destroyMenu:!0,disabledCls:'x-menu-item-disabled',hideOnClick:!0,menuAlign:'tl-tr?',menuExpandDelay:200,menuHideDelay:200,tooltipType:'qtip',focusable:!0,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:!1,iconAlign:'left',canFocus:function(){var a=this;return a.focusable&&a.rendered&&a.canActivate!==!1&&!a.destroying&&!a.isDestroyed&&a.isVisible(!0)},onFocus:function(b){var a=this;Ext.Component.prototype.onFocus.call(this,b);if(!a.disabled){if(!a.plain){a.addCls(a.activeCls)}a.activated=!0;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=!1;if(a.hasListeners.deactivate){a.fireEvent('deactivate',a)}}},doHideMenu:function(){var a=this.menu;this.cancelDeferExpand();if(a&&a.isVisible()){a.hide()}},deferHideParentMenus:function(){var a=this.getRefOwner();if(a.floating){a.bubble(function(b){if(!b.floating&&!b.isMenuItem){return !1}if(b.isMenu){a=b}});a.hide()}},expandMenu:function(c,b){var a=this;if(a.activated&&a.menu){a.hideOnClick=!1;a.cancelDeferHide();b=b==null?a.menuExpandDelay:b;if(b===0){a.doExpandMenu(c)}else {a.cancelDeferExpand();a.expandMenuTimer=Ext.defer(a.doExpandMenu,b,a,[c])}}},doExpandMenu:function(c){var b=this,a=b.menu;if(!a.isVisible()){b.parentMenu.activeChild=a;a.ownerCmp=b;a.parentMenu=b.parentMenu;a.constrainTo=document.body;a.autoFocus=!c||!c.pointerType;a.showBy(b,b.menuAlign)}},getRefItems:function(c){var b=this.menu,a;if(b){a=b.getRefItems(c);a.unshift(b)}return a||[]},getValue:function(){return this.value},hideMenu:function(b){var a=this;if(a.menu){a.cancelDeferExpand();a.hideMenuTimer=Ext.defer(a.doHideMenu,Ext.isNumber(b)?b:a.menuHideDelay,a)}},initComponent:function(){var a=this,b=a.cls?[a.cls]:[],c;if(a.hasOwnProperty('canActivate')){a.focusable=a.canActivate}if(a.plain){b.push('x-menu-item-plain')}if(b.length){a.cls=b.join(' ')}if(a.menu){c=a.menu;a.menu=null;a.setMenu(c)}Ext.Component.prototype.initComponent.apply(this,arguments)},onClick:function(b){var a=this,e=a.clickHideDelay,f=b.browserEvent,d,c;if(!a.href||a.disabled){b.stopEvent();if(a.disabled){return !1}}if(a.disabled||a.handlingClick){return}if(a.hideOnClick){if(!e){a.deferHideParentMenus()}else {a.deferHideParentMenusTimer=Ext.defer(a.deferHideParentMenus,e,a)}}d=a.fireEvent('click',a,b);if(a.isDestroyed){return}if(d!==!1&&a.handler){Ext.callback(a.handler,a.scope,[a,b],0,a)}if(Ext.isIE9m){c=f.returnValue===!1?!0:!1}else {c=!!f.defaultPrevented}if(a.href&&b.type!=='click'&&!c){a.handlingClick=!0;a.itemEl.dom.click();a.handlingClick=!1}if(!a.hideOnClick){a.focus()}return d},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;a.cancelDeferExpand();a.cancelDeferHide();clearTimeout(a.deferHideParentMenusTimer);a.setMenu(null);Ext.Component.prototype.onDestroy.apply(this,arguments)},beforeRender:function(){var a=this,c=a.glyph,j=Ext._glyphFontFamily,b=!!(a.icon||a.iconCls||c),f=!!a.menu,i=a.iconAlign==='right'&&!f,e=a.isMenuCheckItem,d=[],k=a.ownerCt,g=k.plain,h;Ext.Component.prototype.beforeRender.call(this);if(b){if(f&&a.showCheckbox){b=!1}}if(typeof c==='string'){h=c.split('@');c=h[0];j=h[1]}if(!g||b&&!i||e){if(k.showSeparator&&!g){d.push(a.indentCls)}else {d.push(a.indentNoSeparatorCls)}}if(f){d.push(a.indentRightArrowCls)}else {if(b&&(i||e)){d.push(a.indentRightIconCls)}}Ext.applyIf(a.renderData,{hasHref:!!a.href,href:a.href||'#',hrefTarget:a.hrefTarget,icon:a.icon,iconCls:a.iconCls,glyph:c,glyphCls:c?'x-menu-item-glyph':undefined,glyphFontFamily:j,hasIcon:b,hasMenu:f,indent:!g||b||e,isCheckItem:e,rightIcon:i,plain:a.plain,text:a.text,arrowCls:a.arrowCls,baseIconCls:a.baseIconCls,textCls:a.textCls,indentCls:d.join(' '),linkCls:a.linkCls,linkHrefCls:a.linkHrefCls,groupCls:a.group?a.groupCls:'',tabIndex:a.tabIndex})},onRender:function(){var a=this;Ext.Component.prototype.onRender.apply(this,arguments);if(a.tooltip){a.setTooltip(a.tooltip,!0)}},getMenu:function(){return this.menu||null},setMenu:function(b,d){var a=this,c=a.menu,f=a.arrowEl,e;if(c){c.ownerCmp=c.parentMenu=null;if(d===!0||d!==!1&&a.destroyMenu){Ext.destroy(c)}}if(b){e=b.isMenu;b=a.menu=Ext.menu.Manager.get(b,{ownerCmp:a,focusOnToFront:!1});b.setOwnerCmp(a,e)}else {b=a.menu=null}if(b&&a.rendered&&!a.destroying&&f){f[b?'addCls':'removeCls'](a.arrowCls)}},setHandler:function(b,a){this.handler=b||null;this.scope=a},setIcon:function(a){var b=this.iconEl,c=this.icon;if(b){b.src=a||Ext.BLANK_IMAGE_URL}this.icon=a;this.fireEvent('iconchange',this,c,a)},setIconCls:function(b){var a=this,c=a.iconEl,d=a.iconCls;if(c){if(a.iconCls){c.removeCls(a.iconCls)}if(b){c.addCls(b)}}a.iconCls=b;a.fireEvent('iconchange',a,d,b)},setText:function(b){var a=this,d=a.textEl||a.el,c=a.text;a.text=b;if(a.rendered){d.setHtml(b||'');a.updateLayout()}a.fireEvent('textchange',a,c,b)},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(b,c){var a=this;if(a.rendered){if(!c){a.clearTip()}if(Ext.quickTipsActive&&Ext.isObject(b)){Ext.tip.QuickTipManager.register(Ext.apply({target:a.itemEl.id},b));a.tooltip=b}else {a.itemEl.dom.setAttribute(a.getTipAttr(),b)}}else {a.tooltip=b}return a},privates:{cancelDeferExpand:function(){window.clearTimeout(this.expandMenuTimer)},cancelDeferHide:function(){window.clearTimeout(this.hideMenuTimer)},getFocusEl:function(){return this.itemEl}}},0,['menuitem'],['component','box','menuitem'],{'component':!0,'box':!0,'menuitem':!0},['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:!1,checkChangeDisabled:!1,ariaRole:'menuitemcheckbox',childEls:['checkEl'],showCheckbox:!0,isMenuCheckItem:!0,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!==!1){a.hideOnClick=!0}}},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,!0);if(a.checkChangeDisabled){a.disableCheckChange()}},disableCheckChange:function(){var a=this,b=a.checkEl;if(b){b.addCls(a.disabledCls)}if(Ext.isIE8&&a.rendered){a.el.repaint()}a.checkChangeDisabled=!0},enableCheckChange:function(){var a=this,b=a.checkEl;if(b){b.removeCls(a.disabledCls)}a.checkChangeDisabled=!1},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 !1}}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(b,d){var a=this,f=a.checkedCls,e=a.uncheckedCls,c=a.el;if(a.checked!==b&&(d||a.fireEvent('beforecheckchange',a,b)!==!1)){if(c){if(b){c.addCls(f);c.removeCls(e)}else {c.addCls(e);c.removeCls(f)}}a.checked=b;Ext.menu.Manager.onCheckChange(a,b);if(!d){Ext.callback(a.checkHandler,a.scope||a,[a,b]);a.fireEvent('checkchange',a,b)}}}},0,['menucheckitem'],['component','box','menuitem','menucheckitem'],{'component':!0,'box':!0,'menuitem':!0,'menucheckitem':!0},['widget.menucheckitem'],0,[Ext.menu,'CheckItem'],0);Ext.cmd.derive('Ext.menu.Separator',Ext.menu.Item,{focusable:!1,canActivate:!1,hideOnClick:!1,plain:!0,separatorCls:'x-menu-item-separator',text:' ',ariaRole:'separator',beforeRender:function(c,b){var a=this;Ext.menu.Item.prototype.beforeRender.call(this);a.addCls(a.separatorCls)}},0,['menuseparator'],['component','box','menuitem','menuseparator'],{'component':!0,'box':!0,'menuitem':!0,'menuseparator':!0},['widget.menuseparator'],0,[Ext.menu,'Separator'],0);Ext.define('ExtThemeNeptune.menu.Separator',{override:'Ext.menu.Separator',border:!0});Ext.cmd.derive('Ext.menu.Menu',Ext.panel.Panel,{enableKeyNav:!0,allowOtherMenus:!1,ariaRole:'menu',floating:!0,constrain:!0,hidden:!0,hideMode:'visibility',ignoreParentClicks:!1,isMenu:!0,showSeparator:!0,minWidth:undefined,defaultMinWidth:120,defaultAlign:'tl-bl?',focusOnToFront:!1,bringParentToFront:!1,defaultFocus:':focusable',menuClickBuffer:0,baseCls:'x-menu',_iconSeparatorCls:'x-menu-icon-separator',_itemCmpCls:'x-menu-item-cmp',layout:{type:'vbox',align:'stretchmax',overflowHandler:'Scroller'},initComponent:function(){var a=this,d=['x-menu'],c=a.bodyCls?[a.bodyCls]:[],e=a.floating!==!1,b={element:'el',click:a.onClick,mouseover:a.onMouseOver,scope:a};if(Ext.supports.Touch){b.pointerdown=a.onMouseOver}a.on(b);a.on({beforeshow:a.onBeforeShow,scope:a});if(a.plain){d.push('x-menu-plain')}a.cls=d.join(' ');c.push('x-menu-body',Ext.dom.Element.unselectableCls);a.bodyCls=c.join(' ');if(e){if(a.minWidth===undefined){a.minWidth=a.defaultMinWidth}}else {a.hidden=!!a.initialConfig.hidden;a.constrain=!1}Ext.panel.Panel.prototype.initComponent.apply(this,arguments);Ext.override(a.getLayout(),{configureItem:a.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 a=this,b=a._iconSeparatorCls;a.focusableKeyNav.map.processEvent=function(b){if(b.keyCode===b.ESC){b.target=a.el.dom}return b};a.focusableKeyNav.map.addBinding([{key:27,handler:a.onEscapeKey,scope:a},{key:/[\w]/,handler:a.onShortcutKey,scope:a,shift:!1,ctrl:!1,alt:!1}]);Ext.panel.Panel.prototype.onBoxReady.apply(this,arguments);if(a.showSeparator){a.iconSepEl=a.body.insertFirst({role:'presentation',cls:b+' '+b+'-'+a.ui,html:' '})}if(Ext.supports.MSPointerEvents||Ext.supports.PointerEvents){a.el.on({scope:a,click:a.preventClick,translate:!1})}a.mouseMonitor=a.el.monitorMouseLeave(100,a.onMouseLeave,a)},onFocusLeave:function(b){var a=this;Ext.panel.Panel.prototype.onFocusLeave.call(this,b);a.mixins.focusablecontainer.onFocusLeave.call(a,b);if(a.floating){a.hide()}},canActivateItem:function(a){return a&&a.isFocusable()},deactivateActiveItem:function(){var b=this,a=b.lastFocusedChild;if(a){a.blur()}},getItemFromEvent:function(d){var c=this,b=c.layout.getRenderTarget().dom,a=d.getTarget();while(a.parentNode!==b){a=a.parentNode;if(!a){return}}return Ext.getCmp(a.id)},lookupComponent:function(a){var b=this;if(typeof a==='string'){a=b.lookupItemFromString(a)}else {if(Ext.isObject(a)){a=b.lookupItemFromObject(a)}}if(!a.dock){a.minWidth=a.minWidth||b.minWidth}return a},lookupItemFromObject:function(a){var b=this;if(!a.isComponent){if(!a.xtype){a=Ext.create('Ext.menu.'+(Ext.isBoolean(a.checked)?'Check':'')+'Item',a)}else {a=Ext.ComponentManager.create(a,a.xtype)}}if(a.isMenuItem){a.parentMenu=b}return a},lookupItemFromString:function(a){return a==='separator'||a==='-'?new Ext.menu.Separator():new Ext.menu.Item({canActivate:!1,hideOnClick:!1,plain:!0,text:a})},configureItem:function(a){var c=this.owner,f='x-',e=c.ui,b,d;if(a.isMenuItem){a.setUI(e)}else {if(c.items.getCount()>1&&!a.rendered&&!a.dock){d=c._itemCmpCls;b=[d+' '+d+'-'+e];if(!c.plain&&(a.indent!==!1||a.iconCls==='no-icon')){b.push(f+'menu-item-indent-'+e)}if(a.rendered){a.el.addCls(b)}else {a.cls=(a.cls||'')+' '+b.join(' ')}a.$extraMenuCls=b}}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(b){var c=this,f=b.type,a,d,e=f==='keydown';if(c.disabled){b.stopEvent();return}a=c.getItemFromEvent(b);if(a&&a.isMenuItem){if(!a.menu||!c.ignoreParentClicks){d=a.onClick(b)}else {b.stopEvent()}if(a.menu&&d!==!1&&e){a.expandMenu(b,0)}}if(!a||a.disabled){a=undefined}c.fireEvent('click',c,a,b)},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(c){var a=this,g=c.getRelatedTarget(),e=!a.el.contains(g),b=a.getItemFromEvent(c),d=a.parentMenu,f=a.ownerCmp;if(e&&d){d.setActiveItem(f);f.cancelDeferHide();d.mouseMonitor.mouseenter()}if(a.disabled){return}if(b){if(!b.containsFocus){b.focus()}if(b.expandMenu){b.expandMenu(c)}}if(e){a.fireEvent('mouseenter',a,c)}a.fireEvent('mouseover',a,b,c)},setActiveItem:function(a){var b=this;if(a&&a!==b.lastFocusedChild){b.focusChild(a,1)}},onEscapeKey:function(){if(this.floating){this.hide()}},onShortcutKey:function(h,g){var e=String.fromCharCode(g.getCharCode()),c=this.query('>[text]'),f=c.length,a=this.lastFocusedChild,d=Ext.Array.indexOf(c,a),b=d;for(;;){if(++b===f){b=0}a=c[b];if(b===d){return}if(a.text&&a.text[0].toUpperCase()===e){a.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(c){var b=this,a=b.lastFocusedChild;if(a&&a.expandMenu){a.expandMenu(c,0)}},onBeforeShow:function(){if(Ext.Date.getElapsed(this.lastHide)<this.menuClickBuffer){return !1}},beforeShow:function(){var a=this,c,b;if(a.floating){if(!a.hasFloatMenuParent()&&!a.allowOtherMenus){Ext.menu.Manager.hideAll()}c=Ext.Element.getActiveElement();a.focusAnchor=c===document.body?null:c;a.savedMaxHeight=a.maxHeight;b=a.container.getViewSize().height;a.maxHeight=Math.min(a.maxHeight||b,b)}Ext.panel.Panel.prototype.beforeShow.apply(this,arguments)},afterShow:function(){var a=this;Ext.panel.Panel.prototype.afterShow.apply(this,arguments);Ext.menu.Manager.onShow(a);if(a.floating&&a.autoFocus){a.maxHeight=a.savedMaxHeight;a.focus()}},onHide:function(c,e,d){var a=this,b;if(a.el.contains(Ext.Element.getActiveElement())){b=a.focusAnchor||a.ownerCmp||a.up(':focusable');if(b){a.previousFocus=b}}Ext.panel.Panel.prototype.onHide.call(this,c,e,d);a.lastHide=Ext.Date.now();Ext.menu.Manager.onHide(a)},preventClick:function(b){var a=this.getItemFromEvent(b);if(a&&!a.href){b.preventDefault()}},privates:{hasFloatMenuParent:function(){return this.parentMenu||this.up('menu[floating=true]')},setOwnerCmp:function(b,c){var a=this;a.parentMenu=b.isMenuItem?b:null;a.ownerCmp=b;a.registerWithOwnerCt();delete a.hierarchicallyHidden;if(a.inheritedState&&c){a.invalidateInheritedState()}if(a.reference){a.fixReference()}if(c){Ext.ComponentManager.markReferencesDirty()}}}},0,['menu'],['component','box','container','panel','menu'],{'component':!0,'box':!0,'container':!0,'panel':!0,'menu':!0},['widget.menu'],[[Ext.util.FocusableContainer.prototype.mixinId||Ext.util.FocusableContainer.$className,Ext.util.FocusableContainer]],[Ext.menu,'Menu'],0);Ext.define('ExtThemeNeptune.menu.Menu',{override:'Ext.menu.Menu',showSeparator:!1});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(d){var a=this,b=d.lockedGrid,c=d.normalGrid;a.lockable=d;Ext.grid.header.Container.prototype.constructor.call(this);b.visibleColumnManager.rootColumns=c.visibleColumnManager.rootColumns=d.visibleColumnManager=a.visibleColumnManager=new Ext.grid.ColumnManager(!0,b.headerCt,c.headerCt);b.columnManager.rootColumns=c.columnManager.rootColumns=d.columnManager=a.columnManager=new Ext.grid.ColumnManager(!1,b.headerCt,c.headerCt);a.relayEvents(b.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 a=this,b=a.lockable.lockedGrid.headerCt.getColumnsState(),c=a.lockable.normalGrid.headerCt.getColumnsState();return b.concat(c)},applyColumnsState:function(k){var l=this,j=l.lockable.lockedGrid,b=j.headerCt,c=l.lockable.normalGrid.headerCt,m=Ext.Array.toValueMap(b.items.items,'stateId'),n=Ext.Array.toValueMap(c.items.items,'stateId'),g=[],h=[],i=1,o=k.length,e,a,f,d;for(e=0;e<o;e++){d=k[e];f=m[d.id];a=f||n[d.id];if(a){if(a.applyColumnState){a.applyColumnState(d)}if(a.locked===undefined){a.locked=!!f}if(a.locked){g.push(a);if(!a.hidden&&typeof a.width==='number'){i+=a.width}}else {h.push(a)}}}if(g.length+h.length===b.items.getCount()+c.items.getCount()){b.removeAll(!1);c.removeAll(!1);b.add(g);c.add(h);j.setWidth(i)}},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':!0,'box':!0,'container':!0,'headercontainer':!0},0,0,[Ext.grid.locking,'HeaderContainer'],0);Ext.cmd.derive('Ext.grid.locking.View',Ext.Base,{alternateClassName:'Ext.grid.LockingView',isLockingView:!0,loadMask:!0,eventRelayRe:/^(beforeitem|beforecontainer|item|container|cell|refresh)/,constructor:function(b){var a=this,d,c;a.ownerGrid=b.ownerGrid;a.ownerGrid.view=a;a.navigationModel=b.locked.xtype==='treepanel'?new Ext.tree.NavigationModel(a):new Ext.grid.NavigationModel(a);b.locked.viewConfig.bindStore=Ext.emptyFn;b.normal.viewConfig.bindStore=a.subViewBindStore;b.normal.viewConfig.isNormalView=b.locked.viewConfig.isLockedView=!0;b.locked.viewConfig.beforeLayout=b.normal.viewConfig.beforeLayout=a.beforeLayout;b.locked.viewConfig.navigationModel=b.normal.viewConfig.navigationModel=a.navigationModel;a.lockedGrid=a.ownerGrid.lockedGrid=Ext.ComponentManager.create(b.locked);a.lockedView=d=a.lockedGrid.getView();if(a.ownerGrid.shrinkWrapLocked){a.lockedGrid.width+=Ext.num(d.getSelectionModel().headerWidth,0)+(a.lockedGrid.getVisibleColumnManager().getColumns().length?1:0)}a.selModel=b.normal.viewConfig.selModel=d.getSelectionModel();if(a.lockedGrid.isTree){a.lockedView.animate=!1;b.normal.store=d.store;b.normal.viewConfig.stripeRows=a.lockedView.stripeRows;b.normal.rowLines=a.lockedGrid.rowLines}a.normalGrid=a.ownerGrid.normalGrid=Ext.ComponentManager.create(b.normal);d.lockingPartner=c=a.normalView=a.normalGrid.getView();c.lockingPartner=d;a.loadMask=b.loadMask!==undefined?b.loadMask:a.loadMask;a.mixins.observable.constructor.call(a);a.relayEvents(d,Ext.view.Table.events);a.relayEvents(c,Ext.view.Table.events);c.on({scope:a,itemmouseleave:a.onItemMouseLeave,itemmouseenter:a.onItemMouseEnter});d.on({scope:a,itemmouseleave:a.onItemMouseLeave,itemmouseenter:a.onItemMouseEnter});a.ownerGrid.on({render:a.onPanelRender,scope:a});a.loadingText=c.loadingText;a.loadingCls=c.loadingCls;a.loadingUseMsg=c.loadingUseMsg;a.itemSelector=a.getItemSelector();a.all=c.all;a.bindStore(c.dataSource,!0,'dataSource')},subViewBindStore:function(b){var a=this,c=a.getSelectionModel();if(b!==null&&!a.ownerGrid.reconfiguring){b=a.store}c.bindStore(b);c.bindComponent(a)},beforeLayout:function(){var a=this.ownerCt.ownerLockable.view,b=a.lockedGrid.view,c=a.normalGrid.view;if(!a.relayingOperation){if(a.lockedGrid.isVisible()){if(b.refreshNeeded){b.doFirstRefresh(b.dataSource)}}if(c.refreshNeeded){c.doFirstRefresh(c.dataSource)}}},onPanelRender:function(){var a=this,b=a.loadMask,c={target:a.ownerGrid,msg:a.loadingText,msgCls:a.loadingCls,useMsg:a.loadingUseMsg,store:a.ownerGrid.store};a.el=a.ownerGrid.getTargetEl();a.rendered=!0;a.initFocusableEvents();a.fireEvent('render',a);if(b){if(Ext.isObject(b)){c=Ext.apply(c,b)}a.loadMask=new Ext.LoadMask(c)}},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()},getItemSelector:function(){return this.normalView.getItemSelector()},getViewForColumn:function(c){var b=this.lockedView,a;b.headerCt.cascade(function(b){if(b===c){a=!0;return !1}});return a?b:this.normalView},onItemMouseEnter:function(d,f){var e=this,b=e.lockedView,a=e.normalView,c;if(d.trackOver){if(d!==b){a=b}c=a.getNode(f);a.highlightItem(c)}},onItemMouseLeave:function(c,e){var d=this,a=d.lockedView,b=d.normalView;if(c.trackOver){if(c!==a){b=a}b.clearHighlight()}},relayFn:function(d,b){b=b||[];var c=this,a=c.lockedView;c.relayingOperation=!0;a[d].apply(a,b);a=c.normalView;a[d].apply(a,b);c.relayingOperation=!1},getSelectionModel:function(){return this.normalView.getSelectionModel()},getNavigationModel:function(){return this.navigationModel},getStore:function(){return this.ownerGrid.store},onBindStore:function(c,f,e){var d=this,b=d.lockedView,a=d.normalView;if(a.componentLayoutCounter&&!(b.blockRefresh&&a.blockRefresh)){Ext.suspendLayouts();b.doFirstRefresh(c);a.doFirstRefresh(c);Ext.resumeLayouts(!0)}},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(!0)},onEndUpdate:function(){Ext.suspendLayouts();this.relayFn('onEndUpdate',arguments);Ext.resumeLayouts(!0)},onDataRefresh:function(){Ext.suspendLayouts();this.relayFn('onDataRefresh',arguments);Ext.resumeLayouts(!0)},onReplace:function(){Ext.suspendLayouts();this.relayFn('onReplace',arguments);Ext.resumeLayouts(!0)},onAdd:function(){Ext.suspendLayouts();this.relayFn('onAdd',arguments);Ext.resumeLayouts(!0)},onRemove:function(){Ext.suspendLayouts();this.relayFn('onRemove',arguments);Ext.resumeLayouts(!0)},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:!0})}Ext.resumeLayouts(!0)},refresh:function(){Ext.suspendLayouts();this.relayFn('refresh',arguments);Ext.resumeLayouts(!0)},getNode:function(a){return this.normalView.getNode(a)},getRow:function(a){return this.normalView.getRow(a)},getCell:function(b,a){var c=this.getViewForColumn(a),d=c.getRow(b);return Ext.fly(d).down(a.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 b,a=this.getNavigationModel().lastFocused;b=a?a.view:this.normalView;b.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 b,a=this.getNavigationModel().lastFocused;b=a?a.view:this.normalView;return b.getFocusEl()},getCellInclusive:function(a,c){var d=a.column,b=this.lockedGrid.getColumnManager().getColumns().length;if(d>=b){a=Ext.apply({},a);a.column-=b;return this.normalView.getCellInclusive(a,c)}else {return this.lockedView.getCellInclusive(a,c)}},getHeaderByCell:function(a){if(a){return this.getVisibleColumnManager().getHeaderById(a.getAttribute('data-columnId'))}return !1},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(b,c){var e=this,a=b.view,d=b.column;if(a===e){a=d.getView()}return a.getCellByPosition(b,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,!1,'dataSource');a.isDestroyed=!0;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:!0,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(g){var f=this,a,b,d,e,c;if(f.subGridXType){a=f.subGridXType}else {if(!g){return 'gridpanel'}b=this.getXTypes().split('/');d=b.length;e=b[d-1];c=b[d-2];if(c!=='tablepanel'){a=c}else {a=e}}return a},injectLockable:function(){this.focusable=!1;this.lockable=!0;this.hasView=!0;var a=this,q=Ext.getScrollbarSize(),p=q.width,n=a.store=Ext.StoreManager.lookup(a.store),e=a.lockedViewConfig,g=a.normalViewConfig,s=Ext.Object,l,i,b,c,d,m,f,h,u,j=a.viewConfig,r=j&&j.loadMask,t=r!==undefined?r:a.loadMask,o=a.bufferedRenderer,k=p>0&&Ext.supports.touchScroll!==2;l=a.constructLockableFeatures();a.features=null;i=a.constructLockablePlugins();a.plugins=i.topPlugins;b={id:a.id+'-locked',isLocked:!0,bufferedRenderer:o,ownerGrid:a,ownerLockable:a,xtype:a.determineXTypeToCreate(!0),store:n,reserveScrollbar:k,scrollable:{indicators:{x:!0,y:!1}},scrollerOwner:!1,animate:!1,border:!1,cls:a.lockedGridCls,isLayoutRoot:function(){return this.floatedFromCollapse||a.normalGrid.floatedFromCollapse},features:l.lockedFeatures,plugins:i.lockedPlugins};c={id:a.id+'-normal',isLocked:!1,bufferedRenderer:o,ownerGrid:a,ownerLockable:a,xtype:a.determineXTypeToCreate(),store:n,reserveScrollbar:a.reserveScrollbar,scrollerOwner:!1,border:!1,cls:a.normalGridCls,isLayoutRoot:function(){return this.floatedFromCollapse||a.lockedGrid.floatedFromCollapse},features:l.normalFeatures,plugins:i.normalPlugins};a.addCls('x-grid-locked');Ext.copyTo(c,a,a.bothCfgCopy,!0);Ext.copyTo(b,a,a.bothCfgCopy,!0);Ext.copyTo(c,a,a.normalCfgCopy,!0);Ext.copyTo(b,a,a.lockedCfgCopy,!0);Ext.apply(c,a.normalGridConfig);Ext.apply(b,a.lockedGridConfig);for(d=0;d<a.normalCfgCopy.length;d++){delete a[a.normalCfgCopy[d]]}for(d=0;d<a.lockedCfgCopy.length;d++){delete a[a.lockedCfgCopy[d]]}a.addStateEvents(['lockcolumn','unlockcolumn']);m=a.processColumns(a.columns||[],b);b.columns=m.locked;if(!b.columns.items.length){b.hidden=!0}c.columns=m.normal;if(!c.columns.items.length){c.hidden=!0}c.flex=1;b.viewConfig=e=e?s.chain(e):{};c.viewConfig=g=g?s.chain(g):{};e.loadingUseMsg=!1;e.loadMask=!1;if(k){e.margin='0 -'+p+' 0 0'}g.loadMask=!1;Ext.applyIf(e,j);Ext.applyIf(g,j);if(!a.initialConfig.layout){a.layout={type:'hbox',align:'stretch'}}a.getLayout();if(a.layout.type==='border'){if(a.split){b.split=!0}if(!b.region){b.region='west'}if(!c.region){c.region='center'}a.addCls('x-grid-locked-split')}if(!(a.layout instanceof Ext.layout.container.Box)){a.split=!1}a.view=new Ext.grid.locking.View({loadMask:t,locked:b,normal:c,ownerGrid:a});b=a.lockedGrid;c=a.normalGrid;c.getView().getScrollable().addPartner(b.getView().getScrollable(),'y');if(q.height&&Ext.supports.touchScroll!==2){b.on({afterlayout:a.afterLockedViewLayout,scope:a});b.getView().getOverflowStyle()}f=b.headerCt;h=c.headerCt;if(k){f.reserveScrollbar=!1}a.headerCt=a.view.headerCt=new Ext.grid.locking.HeaderContainer(a);f.lockedCt=!0;f.lockableInjected=!0;h.lockableInjected=!0;f.on({add:a.delaySyncLockedWidth,remove:a.delaySyncLockedWidth,columnshow:a.delaySyncLockedWidth,columnhide:a.delaySyncLockedWidth,sortchange:a.onLockedHeaderSortChange,columnresize:a.delaySyncLockedWidth,scope:a});h.on({add:a.delaySyncLockedWidth,remove:a.delaySyncLockedWidth,columnshow:a.delaySyncLockedWidth,columnhide:a.delaySyncLockedWidth,sortchange:a.onNormalHeaderSortChange,scope:a});a.modifyHeaderCt();a.items=[b];if(a.split){a.addCls('x-grid-locked-split');a.items[1]={xtype:'splitter'}}a.items.push(c);a.relayHeaderCtEvents(f);a.relayHeaderCtEvents(h);a.storeRelayers=a.relayEvents(n,['filterchange','groupchange']);a.gridRelayers=a.relayEvents(c,['viewready'])},getLockingViewConfig:function(){return {xclass:'Ext.grid.locking.View',locked:this.lockedGrid,normal:this.normalGrid,panel:this}},processColumns:function(b,e){var d=this,f,n,a,c=new Ext.grid.header.Container(),h=[],i=[],l={itemId:'lockedHeaderCt',stretchMaxPartner:'^^>>#normalHeaderCt',items:h},m={itemId:'normalHeaderCt',stretchMaxPartner:'^^>>#lockedHeaderCt',items:i},j={lockedWidth:e.width||0,locked:l,normal:m},g=!(e.width||e.flex),k;if(!d.hasOwnProperty('shrinkWrapLocked')){d.shrinkWrapLocked=g}if(Ext.isObject(b)){Ext.applyIf(l,b);Ext.applyIf(m,b);k=Ext.apply({},b);delete k.items;Ext.apply(c,k);b=b.items}c.constructing=!0;for(f=0,n=b.length;f<n;++f){a=b[f];if(!a.isComponent){a=c.applyDefaults(a);a.initOwnerCt=c;a=c.lookupComponent(a);delete a.initOwnerCt}a.processed=!0;if(a.locked||a.autoLock){if(g&&!a.hidden){j.lockedWidth+=d.getColumnWidth(a)||c.defaultWidth}h.push(a)}else {i.push(a)}if(!a.headerId){a.headerId=(a.initialConfig||a).id||'h'+ ++d.headerCounter}}d.fireEvent('processcolumns',d,h,i);c.destroy();if(g){e.width=j.lockedWidth}return j},getColumnWidth:function(c){var d=c.width||0,b,e,a;if(!d&&c.isGroupHeader){b=c.items.items;e=b.length;for(a=0;a<e;a++){d+=this.getColumnWidth(b[a])}}return d},afterLockedViewLayout:function(){var j=this,f=j.lockedGrid,h=j.normalGrid,g=f.getView(),i=h.getView(),e=Ext.getScrollbarSize().height,c=g.scrollFlags.x&&f.headerCt.tooNarrow?e:0,d=i.scrollFlags.x&&h.headerCt.tooNarrow?e:0,b=i.getScrollable(),a=g.getScrollable();if(c!==d){if(c){b.setX('scroll');a.setX(!0)}else {a.setX('scroll');b.setX(!0)}}else {a.setX(d?'scroll':!0);b.setX(!0)}},ensureLockedVisible:function(){this.lockedGrid.ensureVisible.apply(this.lockedGrid,arguments);this.normalGrid.ensureVisible.apply(this.normalGrid,arguments)},onLockedViewMouseWheel:function(h){var b=this,e=-b.scrollDelta*h.getWheelDeltas().y,d=b.lockedGrid.getView(),c=d.el.dom,a,f,g;if(!b.ignoreMousewheel){if(c){a=d.getScrollY();f=a!==c.scrollHeight-c.clientHeight;g=a!==0}if(e<0&&g||e>0&&f){h.stopEvent();a+=e;d.setScrollY(a);b.normalGrid.getView().setScrollY(a);b.onNormalViewScroll()}}},onLockedViewScroll:function(){var f=this,e=f.lockedGrid.getView(),a=f.normalGrid.getView(),c=e.getScrollY(),g=a.getScrollY(),b,d;if(g!==c){a.setScrollY(c);if(a.bufferedRenderer){d=e.body.dom;b=a.body.dom;b.style.position='absolute';b.style.top=d.style.top}}},onNormalViewScroll:function(){var e=this,b=e.lockedGrid.getView(),c=e.normalGrid.getView(),f=b.getScrollY(),d=c.getScrollY(),a;if(d!==f){b.setScrollY(d);if(c.bufferedRenderer){a=b.body;if(a.dom){a.dom.style.position='absolute';a.translate(null,c.bufferedRenderer.bodyTop)}}}},syncRowHeights:function(){if(!this.isDestroyed){var f=this,b=f.normalGrid.getView(),a=f.lockedGrid.getView(),d=b.syncRowHeightBegin(),c=a.syncRowHeightBegin(),e;b.syncRowHeightMeasure(d);a.syncRowHeightMeasure(c);b.syncRowHeightFinish(d,c);a.syncRowHeightFinish(c,d);e=b.getScrollY();a.setScrollY(e)}},modifyHeaderCt:function(){var a=this;a.lockedGrid.headerCt.getMenuItems=a.getMenuItems(a.lockedGrid.headerCt.getMenuItems,!0);a.normalGrid.headerCt.getMenuItems=a.getMenuItems(a.normalGrid.headerCt.getMenuItems,!1);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(f,g,c){var d=this.getMenu(),a=d.down('#unlockItem'),b=d.down('#lockItem'),e=a.prev();if(c.lockable===!1){e.hide();a.hide();b.hide()}else {e.show();a.show();b.show();if(!a.initialConfig.disabled){a.setDisabled(c.lockable===!1)}if(!b.initialConfig.disabled){b.setDisabled(!c.isLockable())}}},getMenuItems:function(d,b){var a=this,f=a.unlockText,h=a.lockText,g='x-hmenu-unlock',i='x-hmenu-lock',c=a.onUnlockMenuClick.bind(a),e=a.onLockMenuClick.bind(a);return function(){var a=d.call(this);a.push('-',{itemId:'unlockItem',iconCls:g,text:f,handler:c,disabled:!b});a.push({itemId:'lockItem',iconCls:i,text:h,handler:e,disabled:b});return a}},delaySyncLockedWidth:function(){var a=this,b=a.syncLockedWidthTask;if(!b){b=a.syncLockedWidthTask=new Ext.util.DelayedTask(a.syncLockedWidth,a)}b.delay(1)},syncLockedWidth:function(){var b=this,c=b.rendered,a=b.lockedGrid,d=a.view,e=b.normalGrid,f=a.getVisibleColumnManager().getColumns().length,g=e.getVisibleColumnManager().getColumns().length,h=b.syncLockedWidthTask;if(h){h.cancel()}Ext.suspendLayouts();if(g){e.show();if(f){if(c&&b.shrinkWrapLocked&&!a.headerCt.forceFit){delete a.flex;a.setWidth(a.headerCt.getTableWidth()+a.el.getBorderWidth('lr'))}a.addCls(b.lockedGridCls);a.show();if(b.split){b.child('splitter').show()}}else {if(c){a.getView().clearViewEl(!0)}a.hide();if(b.split){b.child('splitter').hide()}}if(Ext.supports.touchScroll!==2&&Ext.Component.pendingLayouts){d.getScrollable().setX(!0)}if(c){b.ignoreMousewheel=d.scrollFlags.y}}else {e.hide();if(c){d.getEl().setStyle('border-bottom-width','0')}a.flex=1;delete a.width;a.removeCls(b.lockedGridCls);a.show();b.ignoreMousewheel=!0}Ext.resumeLayouts(!0);return [f,g]},onLockedHeaderSortChange:Ext.emptyFn,onNormalHeaderSortChange:Ext.emptyFn,lock:function(a,k,d){var c=this,f=c.normalGrid,b=c.lockedGrid,h=f.view,g=b.view,l=f.headerCt,e,j,i;a=a||l.getMenu().activeHeader;i=a.hasFocus;d=d||b.headerCt;j=a.ownerCt;if(!a.isLockable()){return}if(a.flex){a.width=a.getWidth();a.flex=null}Ext.suspendLayouts();if(b.hidden){b.show()}h.blockRefresh=g.blockRefresh=!0;j.remove(a,!1);a.locked=!0;if(Ext.isDefined(k)){d.insert(k,a)}else {d.add(a)}h.blockRefresh=g.blockRefresh=!1;e=c.syncLockedWidth();if(e[0]){b.getView().refreshView()}if(e[1]){f.getView().refreshView()}Ext.resumeLayouts(!0);if(i){a.focus()}c.fireEvent('lockcolumn',c,a)},unlock:function(a,f,g){var b=this,e=b.normalGrid,d=b.lockedGrid,i=e.view,h=d.view,k=d.headerCt,c,j;if(!Ext.isDefined(f)){f=0}a=a||k.getMenu().activeHeader;j=a.hasFocus;g=g||e.headerCt;Ext.suspendLayouts();i.blockRefresh=h.blockRefresh=!0;a.ownerCt.remove(a,!1);a.locked=!1;g.insert(f,a);i.blockRefresh=h.blockRefresh=!1;c=b.syncLockedWidth();if(c[0]){d.getView().refreshView()}if(c[1]){e.getView().refreshView()}Ext.resumeLayouts(!0);if(j){a.focus()}b.fireEvent('unlockcolumn',b,a)},reconfigureLockable:function(a,f){var e=this,g=e.store,c=e.lockedGrid,d=e.normalGrid,b;if(a&&a!==g){a=Ext.data.StoreManager.lookup(a);e.store=a;c.view.blockRefresh=d.view.blockRefresh=!0;c.bindStore(a);b=c.view;b.store=a;if(!b.dataSource.isFeatureStore){b.dataSource=a}if(b.bufferedRenderer){b.bufferedRenderer.bindStore(a)}d.bindStore(a);b=d.view;b.store=a;if(!b.dataSource.isFeatureStore){b.dataSource=a}if(b.bufferedRenderer){b.bufferedRenderer.bindStore(a)}e.view.store=a;e.view.bindStore(d.view.dataSource,!1,'dataSource');c.view.blockRefresh=d.view.blockRefresh=!1}if(f){c.reconfiguring=d.reconfiguring=!0;c.headerCt.removeAll();d.headerCt.removeAll();f=e.processColumns(f,c);c.headerCt.add(f.locked.items);d.headerCt.add(f.normal.items);c.reconfiguring=d.reconfiguring=!1;e.syncLockedWidth()}e.refreshCounter=c.view.refreshCounter},afterReconfigureLockable:function(){var a=this.lockedGrid.getView();if(this.refreshCounter===a.refreshCounter){this.view.refresh()}},constructLockableFeatures:function(){var b=this.features,a,e,c,d,f=0,g;if(b){if(!Ext.isArray(b)){b=[b]}c=[];d=[];g=b.length;for(;f<g;f++){a=b[f];if(!a.isFeature){a=Ext.create('feature.'+a.ftype,a)}switch(a.lockableScope){case 'locked':c.push(a);break;case 'normal':d.push(a);break;default:a.lockableScope='both';c.push(a);d.push(e=a.clone());e.lockingPartner=a;a.lockingPartner=e;}}}return {normalFeatures:d,lockedFeatures:c}},constructLockablePlugins:function(){var b=this.plugins,a,g,f,h,c,d,i=0,k,e,j;if(b){if(!Ext.isArray(b)){b=[b]}h=[];c=[];d=[];k=b.length;for(;i<k;i++){a=b[i];if(a.init){e=a.lockableScope}else {j=a.ptype?Ext.ClassManager.getByAlias('plugin.'+a.ptype):Ext.ClassManager.get(a.xclass);e=j.prototype.lockableScope}switch(e){case 'both':c.push(f=a.clonePlugin());d.push(g=a.clonePlugin());f.lockingPartner=g;g.lockingPartner=f;Ext.destroy(a);break;case 'locked':c.push(a);break;case 'normal':d.push(a);break;default:h.push(a);}}}return {topPlugins:h,normalPlugins:d,lockedPlugins:c}},destroyLockable:function(){var a=this,b=a.syncLockedWidthTask;if(b){b.cancel();a.syncLockedWidthTask=null}Ext.destroy(a.view,a.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:!0,lockableScope:'both',numFromEdge:2,trailingBufferZone:10,leadingBufferZone:20,synchronousRender:!0,scrollToLoadBuffer:200,viewSize:100,rowHeight:21,position:0,lastScrollDirection:1,bodyTop:0,scrollHeight:0,loadId:0,init:function(c){var a=this,b=c.view,e={scroll:a.onViewScroll,resize:a.onViewResize,refresh:a.onViewRefresh,columnschanged:a.checkVariableRowHeight,boxready:a.onViewBoxReady,scope:a,destroyable:!0},d=b.initialConfig;if(c.isTree||c.ownerLockable&&c.ownerLockable.isTree){b.blockRefresh=!1;if(d&&d.loadMask===undefined){b.loadMask=!0}}if(b.positionBody){e.refresh=a.onViewRefresh}a.grid=c;a.view=b;a.isRTL=b.getInherited().rtl;b.bufferedRenderer=a;b.preserveScrollOnRefresh=!0;b.animate=!1;a.bindStore(b.dataSource);if(b.hasOwnProperty('rowHeight')){a.rowHeight=b.rowHeight}a.position=0;a.gridListeners=c.on({reconfigure:'onReconfigure',scope:a,destroyable:!0});a.viewListeners=b.on(e)},checkVariableRowHeight:function(){var a=this,b=a.grid;a.variableRowHeight=a.view.hasVariableRowHeight();if(b.ownerLockable){b.ownerLockable.syncRowHeight=a.variableRowHeight}},bindStore:function(b){var a=this,e=a.view,c=e.dataSource,d=c&&c.isFeatureStore;if(d===b.isFeatureStore){if(a.store){a.unbindStore()}a.storeListeners=b.on({scope:a,groupchange:a.onStoreGroupChange,clear:a.onStoreClear,beforeload:a.onBeforeStoreLoad,load:a.onStoreLoad,destroyable:!0});a.store=b}if(a.view.componentLayout.layoutCount){delete a.viewSize;if(b.isBufferedStore){b.setViewSize(a.viewSize)}a.onViewResize(a.view,0,a.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 a=this,b=a.view;if(b.rendered&&!a.store.isDestroyed){if(a.scrollTop!==0){a.bodyTop=a.scrollTop=a.position=a.scrollHeight=0;a.view.setScrollY(0)}a.lastScrollDirection=a.scrollOffset=null;if(!b.hasOwnProperty('rowHeight')){delete a.rowHeight}}},onStoreGroupChange:function(a){this.refreshSize()},onViewBoxReady:function(a){this.refreshScroller(a,this.scrollHeight)},onViewRefresh:function(b,c){var a=this,d=b.all,e;a.checkVariableRowHeight();if(!b.componentLayoutCounter&&(b.headerCt.down('{flex}')||a.variableRowHeight)){b.on({boxready:Ext.Function.pass(a.onViewRefresh,[b,c],a),single:!0});return}if(!b.hasOwnProperty('rowHeight')&&d.getCount()){delete a.rowHeight}a.refreshSize();if(a.refreshing){return}if(a.scrollTop!==b.getScrollY()){a.onViewScroll()}else {if(!a.hasOwnProperty('bodyTop')){a.bodyTop=d.startIndex*a.rowHeight;b.setScrollY(a.bodyTop)}a.setBodyTop(a.bodyTop);e=b.getHeight();if(d.getCount()&&e>0){a.onViewResize(b,null,e);if(c&&d.getCount()!==c.length){c.length=0;c.push.apply(c,a.store.getRange(d.startIndex,d.endIndex))}}}},refreshSize:function(){var a=this,c=a.view,d=c.all,b=a.getScrollHeight();if(d.count&&d.endIndex===a.store.getCount()-1){b=a.scrollHeight=a.bodyTop+c.body.dom.offsetHeight}else {if(b!==a.scrollHeight){a.scrollHeight=b}}a.stretchView(c,b)},onViewResize:function(b,g,e,f,d){var a=this,c;if(!d||e!==d){c=Math.ceil(e/a.rowHeight)+a.trailingBufferZone+a.leadingBufferZone;a.viewSize=a.setViewSize(c);a.viewClientHeight=b.el.dom.clientHeight}if(b.touchScroll===2){b.getScrollable().setElementSize(null)}},onWrappedColumnWidthChange:function(d,c){var a=this,b=a.view;if(a.store.getCount()&&a.bodyTop){a.refreshSize();a.setViewSize(Math.ceil(b.getHeight()/a.rowHeight)+a.trailingBufferZone+a.leadingBufferZone);if(a.viewSize>=a.store.getCount()){a.setBodyTop(0)}else {if(c>d&&a.bodyTop+b.body.dom.offsetHeight-1>a.scrollHeight){a.setBodyTop(Math.max(0,a.scrollHeight-b.body.dom.offsetHeight))}else {if(a.bodyTop>a.scrollTop||a.bodyTop+b.body.dom.offsetHeight<a.scrollTop+b.getHeight(!0)){a.setBodyTop(a.scrollTop-a.trailingBufferZone*a.rowHeight)}}}}},stretchView:function(b,c){var a=this,f=a.store.getCount(),e,d;if(a.scrollTop>c){a.position=a.scrollTop=c-b.body.dom.offsetHeight;b.setScrollY(a.scrollTop)}if(a.bodyTop>c){b.body.translate(null,a.bodyTop=a.position)}if(b.touchScroll){if(b.getScrollable()){a.refreshScroller(b,c)}else {if(!a.pendingScrollerRefresh){b.on({boxready:function(){a.refreshScroller(b,c);a.pendingScrollerRefresh=!1},single:!0});a.pendingScrollerRefresh=!0}}}if(!Ext.supports.touchScroll||Ext.supports.touchScroll===1){if(!a.stretcher){e=b.getTargetEl();if(b.refreshCounter){b.fixedNodes++}d={role:'presentation',style:{width:'1px',height:'1px','marginTop':c-1+'px',position:'absolute'}};d.style[a.isRTL?'right':'left']=0;a.stretcher=e.createChild(d,e.dom.firstChild)}if(a.hasOwnProperty('viewSize')&&f<=a.viewSize){a.stretcher.dom.style.display='none'}else {a.stretcher.dom.style.marginTop=c-1+'px';a.stretcher.dom.style.display=''}}},refreshScroller:function(b,c){var a=b.getScrollable();if(a){a.setSize({x:b.headerCt.getTableWidth(),y:c})}},setViewSize:function(b,q){var g=this,h=g.store,f=g.view,c=f.all,j=c.getCount(),e,d,a=g.view.lockingPartner&&g.view.lockingPartner.bufferedRenderer,k=j-b,n,i,m,p,o,l;if(a&&!q&&a.view.componentLayoutCounter){if(a.viewSize>b){b=a.viewSize}else {a.setViewSize(b,!0)}}k=j-b;if(k){g.scrollTop=f.getScrollY();g.viewSize=b;if(h.isBufferedStore){h.setViewSize(b)}if(j){l=h.getCount();e=c.startIndex;d=Math.min(e+b-1,l-1);if(!(e===c.startIndex&&d===c.endIndex)){if(a){a.disable()}if(k<0){if(l>j){h.getRange(c.endIndex+1,d,{callback:function(a,c){o=f.doAdd(a,c);f.fireEvent('itemadd',a,c,o)}})}}else {e=c.endIndex-(k-1);d=c.endIndex;p=c.slice(e,d+1);c.removeRange(e,d,!0);if(f.hasListeners.itemremove){m=h.getRange(e,d);for(n=d,i=m.length-1;i>=0;--n,--i){f.fireEvent('itemremove',m[i],n,p[i])}}}if(a){a.enable()}}}}return b},getViewRange:function(){var d=this,c=d.view.all,a=d.store,b=0;if(c.getCount()){b=c.startIndex}else {if(a.isBufferedStore){if(!a.currentPage){a.currentPage=1}b=c.startIndex=(a.currentPage-1)*(a.pageSize||1);a.currentPage=1}}if(a.data.getCount()){return a.getRange(b,b+(d.viewSize||a.defaultViewSize)-1)}else {return []}},onReplace:function(l,d,j,k){var a=this,c=a.view,b=c.all,i,g=b.getCount(),h=d+j.length-1,e=k.length-j.length,f=e*a.rowHeight;if(d>=b.startIndex+a.viewSize){a.refreshSize();return}if(g&&h<b.startIndex){b.moveBlock(e);a.refreshSize();i=b.startIndex;if(e>0){a.doNotMirror=!0;a.handleViewScroll(-1);a.doNotMirror=!1}if(b.startIndex===i){if(b.startIndex){a.setBodyTop(a.bodyTop+=f);c.suspendEvent('scroll');c.scrollBy(0,f);c.resumeEvent('scroll');a.position=a.scrollTop=c.getScrollY()}}else {c.suspendEvent('scroll');c.scrollBy(0,(i-b.startIndex)*a.rowHeight);c.resumeEvent('scroll')}c.refreshSize(b.getCount()!==g);return}if(g&&d>b.endIndex){a.refreshSize();if(e>0){a.onRangeFetched(null,b.startIndex,Math.min(l.getCount(),b.startIndex+a.viewSize)-1,null,!0)}c.refreshSize(b.getCount()!==g);return}if(d<b.startIndex&&h<b.endIndex){a.refreshView(b.startIndex-j.length+k.length);return}if(d<b.startIndex&&h<=b.endIndex&&f){c.suspendEvent('scroll');c.setScrollY(a.position=a.scrollTop+=f);c.resumeEvent('scroll')}a.refreshView()},scrollTo:function(b,g){var v=arguments,a=this,d=a.view,f=d.lockingPartner&&d.lockingPartner.grid.isVisible()&&d.lockingPartner.bufferedRenderer,x=d.el.dom,j=a.store,m=j.getCount(),l,p,e,o,h,s,c,k,w=0,n,u,t,r,i,q;if(g&&typeof g==='object'){n=g.select;u=g.focus;r=g.highlight;t=g.animate;i=g.callback;q=g.scope}else {n=v[1];i=v[2];q=v[3]}if((h=d.dataSource.groupingFeature)&&h.collapsible){if(b.isEntity){c=b}else {c=d.store.getAt(Math.min(Math.max(b,0),d.store.getCount()-1))}s=h.getMetaGroup(c);if(s&&s.isCollapsed){h.expand(h.getGroup(c).getGroupKey());m=j.getCount()}b=h.indexOf(c)}else {if(b.isEntity){c=b;b=j.indexOf(c);if(b===-1){return}}else {b=Math.min(Math.max(b,0),m-1);c=j.getAt(b)}}if(c&&(e=d.getNode(c))){d.getScrollable().scrollIntoView(e,null,t,r);a.onViewScroll();if(n){d.selModel.select(c)}if(u){d.getNavigationModel().setPosition(c,0)}if(i){i.call(q||a,b,c,e)}return}if(b<d.all.startIndex){k=-1;l=Math.max(Math.min(b-Math.floor((a.leadingBufferZone+a.trailingBufferZone)/2),m-a.viewSize+1),0);p=Math.min(l+a.viewSize-1,m-1)}else {k=1;p=Math.min(b+Math.floor((a.leadingBufferZone+a.trailingBufferZone)/2),m-1);l=Math.max(p-(a.viewSize-1),0)}o=Math.max(l*a.rowHeight,0);j.getRange(l,p,{callback:function(p,l,m){var h=d.getScrollable();a.renderRange(l,m,!0,!0);c=j.data.getRange(b,b+1)[0];e=d.getNode(c);d.body.translate(null,a.bodyTop=o);if(k===1){a.refreshSize()}if(f){f.renderRange(l,m,!0,!0);a.syncRowHeights();f.view.body.translate(null,f.bodyTop=o);if(k===1){f.refreshSize()}}if(!e){return}if(k===1){w=x.clientHeight-e.offsetHeight}a.position=a.scrollTop=Math.min(Math.max(0,o-d.body.getOffsetsTo(e)[1])-w,h.getSize().y-x.clientHeight);if(f){f.position=f.scrollTop=a.scrollTop}h.scrollIntoView(e,null,t,r);if(n){d.selModel.select(c)}if(u){d.getNavigationModel().setPosition(c,0)}if(i){i.call(q||a,b,c,e)}}})},onViewScroll:function(){var a=this,f=a.store,d=f.getCount(),c,b,e=a.scrollTop=a.view.getScrollY();if(!(a.disabled||d<a.viewSize)){c=e-a.position;b=c>0?1:-1;if(Math.abs(c)>=20||b!==a.lastScrollDirection){a.lastScrollDirection=b;a.handleViewScroll(a.lastScrollDirection)}}},handleViewScroll:function(h){var a=this,d=a.view.all,g=a.store,f=a.viewSize,e=g.getCount()-1,b,c;if(h===-1){if(d.startIndex){if(a.topOfViewCloseToEdge()){b=Math.max(0,a.getLastVisibleRowIndex()+a.trailingBufferZone-f)}}}else {if(d.endIndex<e){if(a.bottomOfViewCloseToEdge()){b=Math.max(0,a.getFirstVisibleRowIndex()-a.trailingBufferZone)}}}if(b==null){a.loadId++}else {c=Math.min(b+f-1,e);if(a.variableRowHeight&&c===d.endIndex&&c<e){c++;a.viewSize=f++;if(g.isBufferedStore){g.setViewSize(a.viewSize)}}if(b!==d.startIndex||c!==d.endIndex){a.renderRange(b,c);return !0}}},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(a){var b=this,d=b.viewSize,h=b.view.all,g=b.store,f=g.getCount(),e=f-1,c;if(f<d){a=0;c=e}else {a=Math.max(0,Math.min(a==null?h.startIndex:a,e-(d-b.leadingBufferZone)+1));c=Math.min(a+d-1,e);if(c-a+1>d){a=c-d+1}}g.getRange(a,c,{callback:b.doRefreshView,scope:b})},doRefreshView:function(k,g,p,r){var b=this,a=b.view,j=a.getNavigationModel(),c=j.getPosition(),d=a.all,l=d.startIndex,m=d.endIndex,h,f,n=d.getCount(),q,o=g!==d.startIndex,i,e;if(a.refreshCounter){if(c&&c.view===a){if(c.rowIdx<g||c.rowIdx>p){c=null}else {c=c.clone()}j.setPosition()}else {c=null}a.refreshing=b.refreshing=!0;a.clearViewEl(!0);a.refreshCounter++;if(k.length){q=a.doAdd(k,g);if(o){h=d.item(l,!0);f=d.item(m,!0);if(h){e=-h.offsetTop}else {if(f){e=f.offsetTop+f.offsetHeight}}if(e){b.setBodyTop(b.bodyTop+=e);a.suspendEvent('scroll');a.setScrollY(b.position=b.scrollTop=b.bodyTop?b.scrollTop+e:0);a.resumeEvent('scroll')}else {b.setBodyTop(b.bodyTop=i=g*b.rowHeight);a.suspendEvent('scroll');a.setScrollY(b.position=b.scrollTop=Math.max(i-b.rowHeight*(i<b.bodyTop?b.leadingBufferZone:b.trailingBufferZone,0)));a.resumeEvent('scroll')}}}else {a.addEmptyText()}b.refreshSize();a.refreshSize(d.getCount()!==n);a.fireEvent('refresh',a,k);if(c){a.cellFocused=!0;j.setPosition(c,null,null,null,!0)}a.headerCt.setSortState();a.refreshNeeded=a.refreshing=b.refreshing=!1}else {a.refresh()}},renderRange:function(b,c,f,d){var a=this,e=a.view.all,g=a.store;if(!(b===e.startIndex&&c===e.endIndex)){if(g.rangeCached(b,c)){a.cancelLoad();if(a.synchronousRender||f){a.onRangeFetched(null,b,c,null,d)}else {if(!a.renderTask){a.renderTask=new Ext.util.DelayedTask(a.onRangeFetched,a,null,!1)}a.renderTask.delay(1,null,null,[null,b,c,null,d])}}else {a.attemptLoad(b,c)}}},onRangeFetched:function(g,d,i,t,s){var a=this,e=a.view,r,b=e.all,l,j=0,m,c,h=e.lockingPartner&&!s&&!a.doNotMirror&&e.lockingPartner.bufferedRenderer,f,q,p,o,n,k=a.variableRowHeight;if(e.isDestroyed){return}if(g){a.scrollTop=a.view.getScrollY()}else {g=a.store.getRange(d,i);if(!g){return}}m=d*a.rowHeight;if(d<b.startIndex&&i>b.endIndex){p=b.startIndex-d;e.clearViewEl(!0);f=e.doAdd(g,d);e.fireEvent('itemadd',g,d,f);for(n=0;n<p;n++){j-=f[n].offsetHeight}c=a.bodyTop+j}else {if(a.teleported||d>b.endIndex||i<b.startIndex){c=m;if(k){o=a.scrollTop<a.position?a.leadingBufferZone:a.trailingBufferZone;if(d>o){c=a.scrollTop-a.rowHeight*o}}e.clearViewEl(!0);a.teleported=!1}if(!b.getCount()){f=e.doAdd(g,d);e.fireEvent('itemadd',g,d,f)}else {if(i>b.endIndex){l=Math.max(d-b.startIndex,0);if(k){j=b.item(b.startIndex+l,!0).offsetTop}f=b.scroll(Ext.Array.slice(g,b.endIndex+1-d),1,l,d,i);if(k){c=a.bodyTop+j}else {c=m}}else {l=Math.max(b.endIndex-i,0);r=b.startIndex;f=b.scroll(Ext.Array.slice(g,0,b.startIndex-d),-1,l,d,i);if(k){c=a.bodyTop-b.item(r,!0).offsetTop;if(!b.startIndex){if(c){e.setScrollY(a.position=a.scrollTop-=c);c=0}}else {if(c<0){j=b.startIndex*a.rowHeight;e.setScrollY(a.position=a.scrollTop+=j);c=a.bodyTop+j}}}else {c=m}}}a.position=a.scrollTop}c=Math.max(Math.floor(c),0);if(e.positionBody){a.setBodyTop(c)}if(f&&h&&!h.disabled){h.scrollTop=h.position=a.scrollTop;q=h.onRangeFetched(null,d,i,t,!0);if(h.bodyTop!==c){h.setBodyTop(c)}h.view.setScrollY(a.scrollTop);if(k&&e.ownerGrid.syncRowHeights){a.syncRowHeights(f,q)}}return f},syncRowHeights:function(b,e){var d=this,c=0,f=1,i=[],h=[],j=Ext.grid.locking.RowSynchronizer,a,g;if(b&&e){c=b.length;f=e.length}if(c!==f){b=d.view.all.slice();e=d.view.lockingPartner.all.slice();c=f=b.length}for(a=0;a<c;a++){i[a]=g=new j(d.view,b[a]);g.measure()}for(a=0;a<f;a++){h[a]=g=new j(d.view.lockingPartner,e[a]);g.measure()}for(a=0;a<c;a++){i[a].finish(h[a]);h[a].finish(i[a])}d.syncRowHeightsFinish()},syncRowHeightsFinish:function(){var a=this,c=a.view,b=c.lockingPartner.bufferedRenderer;delete a.rowHeight;a.refreshSize();if(b.rowHeight!==a.rowHeight){delete b.rowHeight;b.refreshSize()}},setBodyTop:function(e){var a=this,b=a.view,d=a.store,c=b.body;c.translate(a.isRTL&&Ext.supports.xOriginBug&&b.scrollFlags.y?Ext.getScrollbarSize().width:null,a.bodyTop=e);if(a.variableRowHeight){if(b.all.endIndex===d.getCount()-1){a.stretchView(b,a.scrollHeight=a.bodyTop+c.dom.offsetHeight-1)}else {if(a.bodyTop+c.dom.offsetHeight-1>a.scrollHeight){a.stretchView(b,a.scrollHeight+=(d.getCount()-b.all.endIndex)*a.rowHeight)}}}},getFirstVisibleRowIndex:function(d,f,c,e){var a=this,k=a.view,g=k.all,j=g.elements,l=a.viewClientHeight,b,h,i=a.bodyTop;if(g.getCount()&&a.variableRowHeight){if(!arguments.length){d=g.startIndex;f=g.endIndex;c=a.scrollTop;e=c+l;if(i>e||i+k.body.dom.offsetHeight<c){a.teleported=!0;return Math.floor(a.scrollTop/a.rowHeight)}b=d+Math.min(a.numFromEdge+(a.lastScrollDirection===-1?a.leadingBufferZone:a.trailingBufferZone),Math.floor((f-d)/2))}else {b=d+Math.floor((f-d)/2)}h=i+j[b].offsetTop;if(h+j[b].offsetHeight<=c){return a.getFirstVisibleRowIndex(b+1,f,c,e)}if(h<=c){return b}else {if(b!==d){return a.getFirstVisibleRowIndex(d,b-1,c,e)}}}return Math.floor(a.scrollTop/a.rowHeight)},getLastVisibleRowIndex:function(f,d,e,c){var a=this,m=a.view,g=m.all,l=g.elements,h=a.viewClientHeight,b,i,k,j=a.bodyTop;if(g.getCount()&&a.variableRowHeight){if(!arguments.length){f=g.startIndex;d=g.endIndex;e=a.scrollTop;c=e+h;if(j>c||j+m.body.dom.offsetHeight<e){a.teleported=!0;return Math.floor(a.scrollTop/a.rowHeight)+Math.ceil(h/a.rowHeight)}b=d-Math.min(a.numFromEdge+(a.lastScrollDirection===1?a.leadingBufferZone:a.trailingBufferZone),Math.floor((d-f)/2))}else {b=f+Math.floor((d-f)/2)}i=j+l[b].offsetTop;if(i>c){return a.getLastVisibleRowIndex(f,b-1,e,c)}k=i+l[b].offsetHeight;if(k>=c){return b}else {if(b!==d){return a.getLastVisibleRowIndex(b+1,d,e,c)}}}return a.getFirstVisibleRowIndex()+Math.ceil(h/a.rowHeight)},getScrollHeight:function(g){var a=this,f=a.view,e=f.all,h=a.store,c=h.getCount(),d,b;if(!c){return 0}if(!a.hasOwnProperty('rowHeight')){d=e.getCount();if(d){a.rowHeight=a.variableRowHeight?Math.floor(f.body.dom.clientHeight/d):e.first(!0).offsetHeight}}b=Math.floor(c*a.rowHeight);if(!g){if(b&&e.endIndex===c-1){b=Math.max(b,a.bodyTop+f.body.dom.offsetHeight-1)}}return a.scrollHeight=b},attemptLoad:function(b,c){var a=this;if(a.scrollToLoadBuffer){if(!a.loadTask){a.loadTask=new Ext.util.DelayedTask(a.doAttemptLoad,a,[])}a.loadTask.delay(a.scrollToLoadBuffer,a.doAttemptLoad,a,[b,c])}else {a.doAttemptLoad(b,c)}},cancelLoad:function(){if(this.loadTask){this.loadTask.cancel()}},doAttemptLoad:function(b,c){var a=this;this.store.getRange(b,c,{loadId:++a.loadId,callback:function(e,f,g,d){if(d.loadId===a.loadId){this.onRangeFetched(e,f,g,d)}},scope:this,fireEvent:!1})},destroy:function(){var a=this,b=a.view;a.cancelLoad();if(b&&b.el){b.un('scroll',a.onViewScroll,a)}Ext.destroy(a.viewListeners,a.storeListeners,a.gridListeners,a.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(b){var a=this;Ext.plugin.Abstract.prototype.constructor.call(this,b);a.mixins.observable.constructor.call(a);a.on('edit',function(c,d){a.fireEvent('afteredit',c,d)})},init:function(b){var a=this;a.grid=b;a.view=b.view;a.initEvents();if(b.rendered){a.setup()}else {a.mon(b,{beforereconfigure:a.onBeforeReconfigure,reconfigure:a.onReconfigure,scope:a,beforerender:{fn:a.onBeforeRender,single:!0,scope:a}})}b.relayEvents(a,a.relayedEvents);if(a.grid.ownerLockable){a.grid.ownerLockable.relayEvents(a,a.relayedEvents)}b.isEditable=!0;b.editingPlugin=b.view.editingPlugin=a},onBeforeReconfigure:function(){this.reconfiguring=!0},onReconfigure:function(){this.setup();delete this.reconfiguring},onBeforeRender:function(){this.setup()},setup:function(){this.initFieldAccessors(this.grid.getTopLevelColumnManager().getColumns())},destroy:function(){var a=this,b=a.grid;Ext.destroy(a.keyNav);a.clearListeners();if(b){b.editingPlugin=b.view.editingPlugin=a.grid=a.view=a.editor=a.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,c,h=a.length,e=function(c,b){return d.getColumnField(this,b)},f=function(){return d.hasColumnField(this)},g=function(b){d.setColumnField(this,b)},b;for(c=0;c<h;c++){b=a[c];if(!b.getEditor){b.getEditor=e}if(!b.hasEditor){b.hasEditor=f}if(!b.setEditor){b.setEditor=g}}},removeFieldAccessors:function(a){if(a.isGroupHeader){a=a.getGridColumns()}else {if(!Ext.isArray(a)){a=[a]}}var c,d=a.length,b;for(c=0;c<d;c++){b=a[c];b.getEditor=b.hasEditor=b.setEditor=b.field=b.editor=null}},getColumnField:function(b,d){var c=this,a=b.field;if(!(a&&a.isFormField)){a=b.field=c.createColumnField(b,d)}if(a&&a.ui==='default'&&!a.hasOwnProperty('ui')){a.ui=c.defaultFieldUI}return a},hasColumnField:function(a){return !!(a.field&&a.field.isComponent)},setColumnField:function(a,b){a.field=b;a.field=this.createColumnField(a)},createColumnField:function(b,d){var a=b.field,c;if(!a&&b.editor){a=b.editor;b.editor=null}if(!a&&d){a=d}if(a){c=b.dataIndex;if(a.isComponent){a.column=b}else {if(Ext.isString(a)){a={name:c,xtype:a,column:b}}else {a=Ext.apply({name:c,column:b},a)}a=Ext.ComponentManager.create(a,this.defaultFieldXType)}a.dataIndex=c;a.isEditorComponent=!0;b.field=a}return a},initEvents:function(){var a=this;a.initEditTriggers();a.initCancelTriggers()},initCancelTriggers:Ext.emptyFn,initEditTriggers:function(){var a=this,b=a.view;if(a.triggerEvent==='cellfocus'){a.mon(b,'cellfocus',a.onCellFocus,a)}else {if(a.triggerEvent==='rowfocus'){a.mon(b,'rowfocus',a.onRowFocus,a)}else {if(b.getSelectionModel().isCellModel){b.onCellFocus=a.beforeViewCellFocus.bind(a)}a.mon(b,a.triggerEvent||'cell'+(a.clicksToEdit===1?'click':'dblclick'),a.onCellClick,a)}}a.initAddRemoveHeaderEvents();a.view.getNavigationModel().addKeyBindings({enter:a.onEnterKey,esc:a.onEscKey,scope:a})},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(b,a,c){this.startEdit(a,0)},onCellFocus:function(b,c,a){this.startEdit(a.row,a.column)},onCellClick:function(d,i,e,c,j,h,g){var a=d.expanderSelector,b=d.ownerCt.getColumnManager().getHeaderAtIndex(e),f=b.getEditor(c);if(this.shouldStartEdit(f)&&(!a||!g.getTarget(a))){this.startEdit(c,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(b,a){this.initFieldAccessors(a)},onColumnMove:Ext.emptyFn,onEnterKey:function(g){var a=this,h=a.grid,f,e,c,d,b;if(a.editing){b=Ext.getCmp(g.getTarget().getAttribute('componentId'));if(!(b&&b.isPickerField&&b.isExpanded)){a.completeEdit()}}else {if(g.view===a.view){f=h.getView().getNavigationModel();c=f.getPosition();if(c){e=c.record;d=c.column}if(e&&d){a.startEdit(e,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(e,c){var a=this,b,d=a.grid.lockable?a.grid:a.view;if(!d.componentLayoutCounter){d.on({boxready:Ext.Function.bind(a.startEdit,a,[e,c]),single:!0});return !1}if(a.disabled||a.grid.collapsed||!a.grid.view.isVisible(!0)){return !1}b=a.getEditingContext(e,c);if(b==null){return !1}if(!a.preventBeforeCheck){if(a.beforeEdit(b)===!1||a.fireEvent('beforeedit',a,b)===!1||b.cancel){return !1}}return b},getEditingContext:function(c,a){var j=this,i=j.grid,h=i.visibleColumnManager,d,e,f,g,b;if(Ext.isNumber(a)){a=h.getHeaderAtIndex(a)}if(!a){return}if(a.hidden){a=a.next(':not([hidden])')||a.prev(':not([hidden])')}d=a.getRootHeaderCt().view;e=d.getRow(c);if(!e){return}g=h.getHeaderIndex(a);if(Ext.isNumber(c)){f=c;c=d.getRecord(e)}else {f=d.indexOf(e)}if(!c){return}b=(new Ext.grid.CellContext(d)).setAll(d,f,g,c,a);b.grid=i;b.store=d.dataSource;b.field=a.dataIndex;b.value=b.originalValue=c.get(a.dataIndex);b.row=e;b.node=d.getNode(c);return b},cancelEdit:function(){var a=this;a.editing=!1;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=!1},validateEdit:function(){var a=this,b=a.context;return a.fireEvent('validateedit',a,b)!==!1&&!b.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(c){var b=this,a=b.lockingPartner;Ext.grid.plugin.Editing.prototype.init.apply(this,arguments);if(a){if(a.editors){b.editors=a.editors}else {b.editors=a.editors=new Ext.util.MixedCollection(!1,function(a){return a.editorId})}}else {b.editors=new Ext.util.MixedCollection(!1,function(a){return a.editorId})}},beforeGridHeaderDestroy:function(g){var d=this,e=d.grid.getColumnManager().getColumns(),f=e.length,c,a,b;for(c=0;c<f;c++){a=e[c];b=d.editors.getByKey(a.getItemId());if(!b){b=a.editor||a.field}Ext.destroy(b);d.removeFieldAccessors(a)}},onReconfigure:function(c,b,a){if(a){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 a=this,b=a.grid;a.mon(b,{columnresize:a.cancelEdit,columnmove:a.cancelEdit,scope:a})},isCellEditable:function(c,a){var d=this,b=d.getEditingContext(c,a);if(d.grid.view.isVisible(!0)&&b){a=b.column;c=b.record;if(a&&d.getEditor(c,a)){return !0}}},startEdit:function(f,e,a){var b=this,g,h,d,c;if(!a){b.preventBeforeCheck=!0;a=Ext.grid.plugin.Editing.prototype.startEdit.apply(this,arguments);delete b.preventBeforeCheck;if(a===!1){return !1}}if(a&&a.view.isVisible(!0)){f=a.record;e=a.column;h=e&&e.getEditor(f)&&!(b.beforeEdit(a)===!1||b.fireEvent('beforeedit',b,a)===!1||a.cancel);if(h){d=b.getActiveEditor();c=b.getEditor(f,e);if(d){g=c===d;b.completeEdit(!!c);if(b.editing){return !1}}}else {return !1}b.context=a;a.view.scrollCellIntoView(a.view.getCell(f,e));if(c){if(g){c.editing=!1;if(Ext.isIE){c.selectSameEditor=!0}}b.showEditor(c,a,a.value);if(d&&!g){d.hide()}return !0}return !1}},showEditor:function(g,c,i){var b=this,e=c.record,a=c.view,d=c.column,f=a.getSelectionModel(),h;if(!d.up(b.view.ownerCt)){return b.lockingPartner.showEditor(g,b.lockingPartner.getEditingContext(e,d),i)}b.setEditingContext(c);h=f.getSelectionMode();if(!f.isCellSelected(a,e,d)&&(h!=='MULTI'||!f.getSelection().length||f.getSelection().length===1&&f.isSelected(e))){f.selectByPosition({row:e,column:d,view:a},h==='MULTI')}if(!a.cellFocused){a.getNavigationModel().setPosition(c,null,null,null,!0)}a.getNavigationModel().setPosition();g.startEdit(a.getCell(e,d),i,c);if(g.editing){b.setActiveEditor(g);b.setActiveRecord(e);b.setActiveColumn(d);b.editing=!0;b.scroll=a.el.getScroll()}else {a.getNavigationModel().setPosition(c,null,null,null,!0)}},completeEdit:function(b){var a=this.getActiveEditor();if(a){a.completeEdit(b)}},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(g,c){var b=this,f=b.editors,e=c.getItemId(),a=f.getByKey(e),d=b.grid.ownerLockable||b.grid;if(!a){a=c.getEditor(g);if(!a){return !1}if(a instanceof Ext.grid.CellEditor){a.floating=!0}else {a=new Ext.grid.CellEditor({floating:!0,editorId:e,field:a})}a.field.excludeForm=!0;if(a.ownerCt!==d){d.add(a);a.on({scope:b,specialkey:b.onSpecialKey,complete:b.onEditComplete,canceledit:b.cancelEdit});c.on('removed',b.onColumnRemoved,b)}f.add(a)}if(c.isTreeColumn){a.isForTree=c.isTreeColumn;a.addCls('x-tree-cell-editor')}a.setGrid(b.grid);a.editingPlugin=b;return a},onColumnRemoved:function(b){var a=this,e=a.context,c,d=a.grid.ownerLockable||a.grid;if(e&&e.column===b){a.cancelEdit()}b.un('removed',a.onColumnRemoved,a);if(b.getEditor&&(c=b.getEditor())&&c.ownerCt===d){d.remove(c);c.un({scope:a,specialkey:a.onSpecialKey,complete:a.onEditComplete,canceledit:a.cancelEdit})}},setColumnField:function(a,c){var b=this.editors.getByKey(a.getItemId());Ext.destroy(b,a.field);this.editors.removeAtKey(a.getItemId());Ext.grid.plugin.Editing.prototype.setColumnField.apply(this,arguments)},getCell:function(b,a){return this.grid.getView().getCell(b,a)},onSpecialKey:function(b,d,a){var c;if(a.getKey()===a.TAB){a.stopEvent();a.position=this.context;if(b){b.onEditorTab(a)}c=b.getRefOwner().getSelectionModel();return c.onEditorTab(b.editingPlugin,a)}},onEditComplete:function(h,d,g){var a=this,e=a.getActiveColumn(),b=a.context,f,c;if(e){f=b.view;c=b.record;a.setActiveEditor(null);a.setActiveColumn(null);a.setActiveRecord(null);b.value=d;if(!a.validateEdit()){a.editing=!1;return}if(!c.isEqual(d,g)){c.set(e.dataIndex,d);b.rowIdx=f.indexOf(c)}a.fireEvent('edit',a,b);a.editing=!1}},cancelEdit:function(){var b=this,d=b.context,f,c,g,e,a=b.getActiveEditor();if(a){b.setActiveEditor(null);b.setActiveColumn(null);b.setActiveRecord(null);f=d.view;c=f.getSelectionModel();e=c.getSelectionMode()==='MULTI'&&(c.getSelection().length>1||!c.isSelected(g));if(a.field){b.context.value='editedValue' in a?a.editedValue:a.getValue();a.cancelEdit()}d.view.getNavigationModel().deferSetPosition(100,d,null,null,null,e);Ext.grid.plugin.Editing.prototype.cancelEdit.apply(this,arguments);return}return !0},startEditByPosition:function(a){var b=this,d=b.grid.getColumnManager(),c;if(!a.isCellContext){a.column=b.grid.getColumnManager().getColumns()[a.column];a.record=b.view.dataSource.getAt(a.row)}c=d.getHeaderIndex(a.column);a.column=d.getVisibleHeaderClosestToIndex(c);return b.startEdit(a.record,a.column)}},0,0,0,0,['plugin.cellediting'],0,[Ext.grid.plugin,'CellEditing'],0);Ext.cmd.derive('Ext.util.Queue',Ext.Base,{constructor:function(){this.clear()},add:function(b){var a=this,c=a.getKey(b);if(!a.map[c]){++a.length;a.items.push(b);a.map[c]=b}return b},clear:function(){var a=this,b=a.items;a.items=[];a.map={};a.length=0;return b},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(b){var a=this,e=a.getKey(b),d=a.items,c;if(a.map[e]){c=Ext.Array.indexOf(d,b);Ext.Array.erase(d,c,1);delete a.map[e];--a.length}return b}},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:!1,ownerSizePolicy:null,boxChildren:null,boxParent:null,children:[],dirty:null,dirtyCount:0,hasRawContent:!0,isContextItem:!0,isTopLevel:!1,consumersContentHeight:0,consumersContentWidth:0,consumersContainerHeight:0,consumersContainerWidth:0,consumersHeight:0,consumersWidth:0,ownerCtContext:null,remainingChildDimensions:0,props:null,state:null,wrapsComponent:!1,constructor:function(s){var a=this,o=Ext.layout.SizeModel.sizeModels,l=o.configured,g=o.shrinkWrap,r,c,f,d,k,i,b,p,m,q,n,h,e,j;Ext.apply(a,s);b=a.target;r=a.el;a.id=b.id;a.flushedProps={};a.props=k={};a.styles={};if(!b.isComponent){c=r.lastBox}else {a.wrapsComponent=!0;a.framing=b.frameSize||null;a.isComponentChild=b.ownerLayout&&b.ownerLayout.isComponentLayout;c=b.lastBox;f=b.ownerCt;if(f&&(d=f.el&&a.context.items[f.el.id])){a.ownerCtContext=d}a.sizeModel=i=b.getSizeModel(d&&d.widthModel.pairsByHeightOrdinal[d.heightModel.ordinal]);a.widthModel=h=i.width;a.heightModel=e=i.height;if(c&&c.invalid===!1){q=b.width===(p=c.width);n=b.height===(m=c.height);if(h===g&&e===g){j=!0}else {if(h===l&&q){j=e===g||e===l&&n}}if(j){a.optOut=!0;k.width=p;k.height=m}}}a.lastBox=c},init:function(r,i){var a=this,c=a.props,e=a.dirty,b=a.ownerCtContext,h=a.target.ownerLayout,j=!a.state,s=r||j,n,l,t,q,k,d,o=a.heightModel,p=a.widthModel,f,g,m=0;a.dirty=a.invalid=!1;a.props={};a.remainingChildDimensions=0;if(a.boxChildren){a.boxChildren.length=0}if(!j){a.clearAllBlocks('blocks');a.clearAllBlocks('domBlocks')}if(!a.wrapsComponent){return s}d=a.target;a.state={};if(j){if(d.beforeLayout&&d.beforeLayout!==Ext.emptyFn){d.beforeLayout()}if(!b&&(q=d.ownerCt)){b=a.context.items[q.el.id]}if(b){a.ownerCtContext=b;a.isBoxParent=h&&h.isItemBoxParent(a)}else {a.isTopLevel=!0}a.frameBodyContext=a.getEl('frameBody')}else {b=a.ownerCtContext;a.isTopLevel=!b;n=a.children;for(l=0,t=n.length;l<t;++l){n[l].init(!0)}}a.hasRawContent=!(d.isContainer&&d.items.items.length>0);if(r){a.widthModel=a.heightModel=null;k=d.getSizeModel(b&&b.widthModel.pairsByHeightOrdinal[b.heightModel.ordinal]);if(j){a.sizeModel=k}a.widthModel=k.width;a.heightModel=k.height;if(b&&!a.isComponentChild){if(h.needsItemSize||!d.liquidLayout){b.remainingChildDimensions+=2}else {if(a.widthModel.calculated){++b.remainingChildDimensions}if(a.heightModel.calculated){++b.remainingChildDimensions}}}}else {if(c){a.recoverProp('x',c,e);a.recoverProp('y',c,e);if(a.widthModel.calculated){a.recoverProp('width',c,e)}else {if('width' in c){++m}}if(a.heightModel.calculated){a.recoverProp('height',c,e)}else {if('height' in c){++m}}if(b&&!a.isComponentChild){b.remainingChildDimensions+=m}}}if(c&&h&&h.manageMargins){a.recoverProp('margin-top',c,e);a.recoverProp('margin-right',c,e);a.recoverProp('margin-bottom',c,e);a.recoverProp('margin-left',c,e)}if(i){f=i.heightModel;g=i.widthModel;if(g&&f&&p&&o){if(p.shrinkWrap&&o.shrinkWrap){if(g.constrainedMax&&f.constrainedMin){f=null}}}if(g){a.widthModel=g}if(f){a.heightModel=f}if(i.state){Ext.apply(a.state,i.state)}}return s},initContinue:function(f){var b=this,a=b.ownerCtContext,g=b.target,c=b.widthModel,e=g.getInherited(),d;if(c.fixed){e.inShrinkWrapTable=!1}else {delete e.inShrinkWrapTable}if(f){if(a&&c.shrinkWrap){d=a.isBoxParent?a:a.boxParent;if(d){d.addBoxChild(b)}}else {if(c.natural){b.boxParent=a}}}return f},initDone:function(d){var a=this,b=a.props,c=a.state;if(a.remainingChildDimensions===0){b.containerChildrenSizeDone=!0}if(d){b.containerLayoutDone=!0}if(a.boxChildren&&a.boxChildren.length&&a.widthModel.shrinkWrap){a.el.setWidth(10000);c.blocks=(c.blocks||0)+1}},initAnimation:function(){var a=this,b=a.target,c=a.ownerCtContext;if(c&&c.isTopLevel){a.animatePolicy=b.ownerLayout.getAnimatePolicy(a)}else {if(!c&&b.isCollapsingOrExpanding&&b.animCollapse){a.animatePolicy=b.componentLayout.getAnimatePolicy(a)}}if(a.animatePolicy){a.context.queueAnimation(a)}},addBlock:function(f,a,e){var b=this,d=b[f]||(b[f]={}),c=d[e]||(d[e]={});if(!c[a.id]){c[a.id]=a;++a.blockCount;++b.context.blockCount}},addBoxChild:function(a){var d=this,b,c=a.widthModel;a.boxParent=this;a.measuresBox=c.shrinkWrap?a.hasRawContent:c.natural;if(a.measuresBox){b=d.boxChildren;if(b){b.push(a)}else {d.boxChildren=[a]}}},addPositionStyles:function(b,c){var d=c.x,e=c.y,a=0;if(d!==undefined){b.left=d+'px';++a}if(e!==undefined){b.top=e+'px';++a}return a},addTrigger:function(c,e){var b=this,h=e?'domTriggers':'triggers',f=b[h]||(b[h]={}),g=b.context,a=g.currentLayout,d=f[c]||(f[c]={});if(!d[a.id]){d[a.id]=a;++a.triggerCount;d=g.triggers[e?'dom':'data'];(d[a.id]||(d[a.id]=[])).push({item:this,prop:c});if(b.props[c]!==undefined){if(!e||!(b.dirty&&c in b.dirty)){++a.firedTriggers}}}},boxChildMeasured:function(){var a=this,b=a.state,c=b.boxesMeasured=(b.boxesMeasured||0)+1;if(c===a.boxChildren.length){b.clearBoxWidth=1;++a.context.progressCount;a.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(b){var a=b.getStyles(b.borderNames,b.trblNames);a.width=a.left+a.right;a.height=a.top+a.bottom;return a},marginInfo:function(b){var a=b.getStyles(b.marginNames,b.trblNames);a.width=a.left+a.right;a.height=a.top+a.bottom;return a},paddingInfo:function(b){var c=b.frameBodyContext||b,a=c.getStyles(b.paddingNames,b.trblNames);a.width=a.left+a.right;a.height=a.top+a.bottom;return a}},checkCache:function(a){return this.cacheMissHandlers[a](this)},clearAllBlocks:function(c){var a=this[c],b;if(a){for(b in a){this.clearBlocks(c,b)}}},clearBlocks:function(g,f){var c=this[g],b=c&&c[f],d,a,e;if(b){delete c[f];d=this.context;for(e in b){a=b[e];--d.blockCount;if(!--a.blockCount&&!a.pending&&!a.done){d.queueLayout(a)}}}},block:function(b,a){this.addBlock('blocks',b,a)},domBlock:function(b,a){this.addBlock('domBlocks',b,a)},fireTriggers:function(g,e){var c=this[g],b=c&&c[e],f=this.context,a,d;if(b){for(d in b){a=b[d];++a.firedTriggers;if(!a.done&&!a.blockCount&&!a.pending){f.queueLayout(a)}}}},flush:function(){var a=this,d=a.dirty,b=a.state,c=a.el;a.dirtyCount=0;if('attributes' in a){c.set(a.attributes);delete a.attributes}if('innerHTML' in a){c.innerHTML=a.innerHTML;delete a.innerHTML}if(b&&b.clearBoxWidth){b.clearBoxWidth=0;a.el.setStyle('width',null);if(!--b.blocks){a.context.queueItemLayouts(a)}}if(d){delete a.dirty;a.writeProps(d,!0)}},flushAnimations:function(){var a=this,k=a.previousSize,c,h,l,f,d,g,e,m,b,j,i;if(k){c=a.target;h=c.getAnimationProps();l=h.duration;f=Ext.Object.getKeys(a.animatePolicy);d=Ext.apply({},{from:{},to:{},duration:l||Ext.fx.Anim.prototype.duration},h);for(g=0,e=0,m=f.length;e<m;e++){b=f[e];j=k[b];i=a.peek(b);if(j!==i){b=a.translateProps[b]||b;d.from[b]=j;d.to[b]=i;++g}}if(g){if(a.isCollapsingOrExpanding===1){c.componentLayout.undoLayout(a)}else {a.writeProps(d.from)}a.el.animate(d);d=Ext.fx.Manager.getFxQueue(a.el.id)[0];c.$layoutAnim=d;d.on({afteranimate:function(){delete c.$layoutAnim;if(a.isCollapsingOrExpanding===1){c.componentLayout.redoLayout(a);c.afterCollapse(!0)}else {if(a.isCollapsingOrExpanding===2){c.afterExpand(!0)}}}})}}},getBorderInfo:function(){var b=this,a=b.borderInfo;if(!a){b.borderInfo=a=b.checkCache('borderInfo')}return a},getEl:function(b,f){var d=this,c,a,e;if(b){if(b.dom){a=b}else {c=d.target;if(f){c=f}a=c[b];if(typeof a==='function'){a=a.call(c);if(a===d.el){return this}}}if(a){e=d.context.getEl(d,a)}}return e||null},getFrameInfo:function(){var c=this,d=c.frameInfo,a,b;if(!d){a=c.framing;b=c.getBorderInfo();c.frameInfo=d=a?{top:a.top+b.top,right:a.right+b.right,bottom:a.bottom+b.bottom,left:a.left+b.left,width:a.width+b.width,height:a.height+b.height}:b}return d},getMarginInfo:function(){var b=this,a=b.marginInfo,c,f,d,e;if(!a){if(!b.wrapsComponent){a=b.checkCache('marginInfo')}else {c=b.target;d=c.ownerLayout;e=d?d.id:null;f=d&&d.manageMargins;a=c.margin$;if(a&&a.ownerId!==e){a=null}if(!a){a=b.parseMargins(c,c.margin)||b.checkCache('marginInfo');if(f){b.setProp('margin-top',0);b.setProp('margin-right',0);b.setProp('margin-bottom',0);b.setProp('margin-left',0)}a.ownerId=e;c.margin$=a}a.width=a.left+a.right;a.height=a.top+a.bottom}b.marginInfo=a}return a},clearMarginCache:function(){delete this.marginInfo;delete this.target.margin$},getPaddingInfo:function(){var b=this,a=b.paddingInfo;if(!a){b.paddingInfo=a=b.checkCache('paddingInfo')}return a},getProp:function(a){var b=this,c=b.props[a];b.addTrigger(a);return c},getDomProp:function(b){var a=this,c=a.dirty&&b in a.dirty?undefined:a.props[b];a.addTrigger(b,!0);return c},getStyle:function(b){var e=this,c=e.styles,d,a;if(b in c){a=c[b]}else {d=e.styleInfo[b];a=e.el.getStyle(b);if(d&&d.parseInt){a=parseInt(a,10)||0}c[b]=a}return a},getStyles:function(f,e){var l=this,i=l.styles,j={},h=0,o=f.length,a,b,d,c,k,m,n,g;e=e||f;for(a=0;a<o;++a){c=f[a];if(c in i){j[e[a]]=i[c];++h;if(a&&h===1){b=f.slice(0,a);d=e.slice(0,a)}}else {if(h){(b||(b=[])).push(c);(d||(d=[])).push(e[a])}}}if(h<o){b=b||f;d=d||e;m=l.styleInfo;n=l.el.getStyle(b);for(a=b.length;a--;){c=b[a];k=m[c];g=n[c];if(k&&k.parseInt){g=parseInt(g,10)||0}j[d[a]]=g;i[c]=g}}return j},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(c,a){if(a===!0){a=5}var d=typeof a,b;if(d==='string'||d==='number'){b=c.parseBox(a)}else {if(a){b={top:0,right:0,bottom:0,left:0};if(a){a=Ext.apply(b,c.parseBox(a))}}}return b},peek:function(a){return this.props[a]},recoverProp:function(a,d,b){var c=this,f=c.props,e;if(a in d){f[a]=d[a];if(b&&a in b){e=c.dirty||(c.dirty={});e[a]=b[a]}}},redo:function(e){var c=this,b,d,a;c.revertProps(c.props);if(e&&c.wrapsComponent){if(c.childItems){for(a=0,b=c.childItems,d=b.length;a<d;a++){b[a].redo(e)}}for(a=0,b=c.children,d=b.length;a<d;a++){b[a].redo()}}},removeEl:function(b,e){var d=this,c,a;if(b){if(b.dom){a=b}else {c=d.target;if(e){c=e}a=c[b];if(typeof a==='function'){a=a.call(c);if(a===d.el){return this}}}if(a){d.context.removeEl(d,a)}}},revertProps:function(c){var a,d=this.flushedProps,b={};for(a in c){if(d.hasOwnProperty(a)){b[a]=c[a]}}this.writeProps(b)},setAttribute:function(c,b){var a=this;if(!a.attributes){a.attributes={}}a.attributes[c]=b;a.markDirty()},setBox:function(a){var b=this;if('left' in a){b.setProp('x',a.left)}if('top' in a){b.setProp('y',a.top)}b.setSize(a.width,a.height)},setContentHeight:function(b,a){if(!a&&this.hasRawContent){return 1}return this.setProp('contentHeight',b)},setContentWidth:function(b,a){if(!a&&this.hasRawContent){return 1}return this.setProp('contentWidth',b)},setContentSize:function(c,b,a){return this.setContentWidth(c,a)+this.setContentHeight(b,a)===2},setProp:function(b,c,f){var a=this,d=typeof c,e;if(d==='undefined'||d==='number'&&isNaN(c)){return 0}if(a.props[b]===c){return 1}a.props[b]=c;++a.context.progressCount;if(f===!1){a.fireTriggers('domTriggers',b);a.clearBlocks('domBlocks',b)}else {e=a.styleInfo[b];if(e){if(!a.dirty){a.dirty={}}a.dirty[b]=c;a.markDirty()}}a.fireTriggers('triggers',b);a.clearBlocks('blocks',b);return 1},setHeight:function(b,e){var a=this,h=a.target,c=a.ownerCtContext,d,f,i,g,j;if(b<0){b=0}if(!a.wrapsComponent){if(!a.setProp('height',b,e)){return NaN}}else {i=a.collapsedVert?0:h.minHeight||0;b=Ext.Number.constrain(b,i,h.maxHeight);g=a.props.height;if(!a.setProp('height',b,e)){return NaN}if(c&&!a.isComponentChild&&isNaN(g)){j=--c.remainingChildDimensions;if(!j){c.setProp('containerChildrenSizeDone',!0)}}d=a.frameBodyContext;if(d){f=a.getFrameInfo();d[a.el.vertical?'setWidth':'setHeight'](b-f.height,e)}}return b},setWidth:function(b,e){var a=this,h=a.target,c=a.ownerCtContext,d,f,i,g,j;if(b<0){b=0}if(!a.wrapsComponent){if(!a.setProp('width',b,e)){return NaN}}else {i=a.collapsedHorz?0:h.minWidth||0;b=Ext.Number.constrain(b,i,h.maxWidth);g=a.props.width;if(!a.setProp('width',b,e)){return NaN}if(c&&!a.isComponentChild&&isNaN(g)){j=--c.remainingChildDimensions;if(!j){c.setProp('containerChildrenSizeDone',!0)}}d=a.frameBodyContext;if(d){f=a.getFrameInfo();d.setWidth(b-f.width,e)}}return b},setSize:function(c,b,a){this.setWidth(c,a);this.setHeight(b,a)},translateProps:{x:'left',y:'top'},undo:function(e){var c=this,b,d,a;c.revertProps(c.lastBox);if(e&&c.wrapsComponent){if(c.childItems){for(a=0,b=c.childItems,d=b.length;a<d;a++){b[a].undo(e)}}for(a=0,b=c.children,d=b.length;a<d;a++){b[a].undo()}}},unsetProp:function(a){var b=this.dirty;delete this.props[a];if(b){delete b[a]}},writeProps:function(a,s){if(!(a&&typeof a==='object')){return}var b=this,q=b.el,d={},f=0,r=b.styleInfo,g,c,k,i=a.width,h=a.height,o=b.target,m,l,e,j,p,n;if('displayed' in a){q.setDisplayed(a.displayed)}for(c in a){if(s){b.fireTriggers('domTriggers',c);b.clearBlocks('domBlocks',c);b.flushedProps[c]=1}g=r[c];if(g&&g.dom){if(g.suffix&&(k=parseInt(a[c],10))){d[c]=k+g.suffix}else {d[c]=a[c]}++f}}if('x' in a||'y' in a){if(o.isComponent){o.setPosition(a.x,a.y)}else {f+=b.addPositionStyles(d,a)}}if(b.wrapsComponent&&Ext.isIE9){if((m=i!==undefined&&b.hasOverflowY)||(l=h!==undefined&&b.hasOverflowX)){e=b.isAbsolute;if(e===undefined){e=!1;n=b.target.getTargetEl();p=n.getStyle('position');b.isAbsolute=e=p==='absolute'}if(e){j=Ext.getScrollbarSize();if(m){i=parseInt(i,10)+j.width;d.width=i+'px';++f}if(l){h=parseInt(h,10)+j.height;d.height=h+'px';++f}}}}if(f){q.setStyle(d)}}},1,0,0,0,0,0,[Ext.layout,'ContextItem'],function(){var a={dom:!0,parseInt:!0,suffix:'px'},c={dom:!0},b={dom:!1};this.prototype.styleInfo={containerChildrenSizeDone:b,containerLayoutDone:b,displayed:b,done:b,x:b,y:b,columnsChanged:b,rowHeights:b,viewOverflowY:b,left:a,top:a,right:a,bottom:a,width:a,height:a,'border-top-width':a,'border-right-width':a,'border-bottom-width':a,'border-left-width':a,'margin-top':a,'margin-right':a,'margin-bottom':a,'margin-left':a,'padding-top':a,'padding-right':a,'padding-bottom':a,'padding-left':a,'line-height':c,display:c,clear:c}});Ext.cmd.derive('Ext.layout.Context',Ext.Base,{remainingLayouts:0,state:0,cycleWatchDog:200,constructor:function(b){var a=this;Ext.apply(a,b);a.items={};a.layouts={};a.blockCount=0;a.cycleCount=0;a.flushCount=0;a.calcCount=0;a.animateQueue=a.newQueue();a.completionQueue=a.newQueue();a.finalizeQueue=a.newQueue();a.finishQueue=a.newQueue();a.flushQueue=a.newQueue();a.invalidateData={};a.layoutQueue=a.newQueue();a.invalidQueue=[];a.triggers={data:{},dom:{}}},callLayout:function(a,b){this.currentLayout=a;a[b](this.getCmp(a.owner))},cancelComponent:function(a,p,o){var c=this,l=a,n=!a.isComponent,q=n?l.length:1,e,f,j,d,b,m,h,i,k,g;for(e=0;e<q;++e){if(n){a=l[e]}if(o&&a.ownerCt){g=this.items[a.ownerCt.el.id];if(g){Ext.Array.remove(g.childItems,c.getCmp(a))}}if(!p){h=c.invalidQueue;j=h.length;if(j){c.invalidQueue=m=[];for(f=0;f<j;++f){i=h[f];k=i.item.target;if(k!==a&&!k.up(a)){m.push(i)}}}}b=a.componentLayout;c.cancelLayout(b);if(b.getLayoutItems){d=b.getLayoutItems();if(d.length){c.cancelComponent(d,!0)}}if(a.isContainer&&!a.collapsed){b=a.layout;c.cancelLayout(b);d=b.getVisibleItems();if(d.length){c.cancelComponent(d,!0)}}}},cancelLayout:function(a){var b=this;b.completionQueue.remove(a);b.finalizeQueue.remove(a);b.finishQueue.remove(a);b.layoutQueue.remove(a);if(a.running){b.layoutDone(a)}a.ownerContext=null},clearTriggers:function(h,f){var g=h.id,a=this.triggers[f?'dom':'data'],c=a&&a[g],i=c&&c.length||0,b,e,d;for(b=0;b<i;++b){d=c[b];e=d.item;a=f?e.domTriggers:e.triggers;delete a[d.prop][g]}},flush:function(){var d=this,c=d.flushQueue.clear(),b=c.length,a;if(b){++d.flushCount;for(a=0;a<b;++a){c[a].flush()}}},flushAnimations:function(){var d=this,b=d.animateQueue.clear(),c=b.length,a;if(c){for(a=0;a<c;a++){if(b[a].target.animate!==!1){b[a].flushAnimations()}}Ext.fx.Manager.runner()}},flushInvalidates:function(){var b=this,f=b.invalidQueue,g=f&&f.length,a,d,e,c;b.invalidQueue=[];if(g){d=[];for(c=0;c<g;++c){a=(e=f[c]).item.target;if(!a.container.isDetachedBody){d.push(a);if(e.options){b.invalidateData[a.id]=e.options}}}b.invalidate(d,null)}},flushLayouts:function(d,g,h){var a=this,e=h?a[d].items:a[d].clear(),f=e.length,b,c;if(f){for(b=0;b<f;++b){c=e[b];if(!c.running){a.callLayout(c,g)}}a.currentLayout=null}},getCmp:function(a){return this.getItem(a,a.el)},getEl:function(b,c){var a=this.getItem(c,c);if(!a.parent){a.parent=b;if(b.children.length){b.children.push(a)}else {b.children=[a]}}return a},getItem:function(d,b){var c=b.id,a=this.items,e=a[c]||(a[c]=new Ext.layout.ContextItem({context:this,target:d,el:b}));return e},handleFailure:function(){var a=this.layouts,b,c;Ext.failedLayouts=(Ext.failedLayouts||0)+1;for(c in a){b=a[c];if(a.hasOwnProperty(c)){b.running=!1;b.ownerContext=null}}},invalidate:function(i,q){var d=this,o=!i.isComponent,l,h,m,k,c,a,g,p,e,b,f,n,j;for(k=0,p=o?i.length:1;k<p;++k){c=o?i[k]:i;if(c.rendered&&!c.hidden){h=c.ownerLayout;e=c.componentLayout;m=!e.ownerContext;j=!1;if((!h||!h.needsItemSize)&&c.liquidLayout){j=!0}if(!j||h&&h.setsItemSize){a=d.getCmp(c);b=c.isContainer&&!c.collapsed?c.layout:null;f=d.invalidateData[a.id];delete d.invalidateData[a.id];n=a.init(q,f)}if(j){continue}if(f){d.processInvalidate(f,a,'before')}if(e.beforeLayoutCycle){e.beforeLayoutCycle(a)}if(b&&b.beforeLayoutCycle){b.beforeLayoutCycle(a)}n=a.initContinue(n);l=!0;if(e.getLayoutItems){e.renderChildren();g=e.getLayoutItems();if(g.length){d.invalidate(g,!0)}}if(b){l=!1;b.renderChildren();if(b.needsItemSize||b.activeItemCount){g=b.getVisibleItems();if(g.length){d.invalidate(g,!0)}}}a.initDone(l);d.resetLayout(e,a,m);if(b){d.resetLayout(b,a,m)}a.initAnimation();if(f){d.processInvalidate(f,a,'after')}}}d.currentLayout=null},isDescendant:function(b,c){if(b.isContainer){for(var a=c.ownerCt;a;a=a.ownerCt){if(a===b){return !0}}}return !1},layoutDone:function(b){var a=b.ownerContext;b.running=!1;if(b.isComponentLayout){if(a.measuresBox){a.onBoxMeasured()}a.setProp('done',!0)}else {a.setProp('containerLayoutDone',!0)}--this.remainingLayouts;++this.progressCount},newQueue:function(){return new Ext.util.Queue()},processInvalidate:function(a,e,c){if(a[c]){var b=this,d=b.currentLayout;b.currentLayout=a.layout||null;a[c](e,a);b.currentLayout=d}},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(b,a,d){var c=this,g=b.layout,f=a.layout,e=b[d],h=a[d];return function(i){var j=c.currentLayout;if(e){c.currentLayout=g;e.call(b.scope||b,i,b)}c.currentLayout=f;h.call(a.scope||a,i,a);c.currentLayout=j}},purgeInvalidates:function(){var j=this,a=[],i=j.invalidQueue,k=i.length,c,b,h,e,d,f,g;for(c=0;c<k;++c){d=i[c];f=d.item.target;g=!0;for(b=a.length;b--;){h=a[b];e=h.item.target;if(f.isLayoutChild(e)){g=!1;break}if(e.isLayoutChild(f)){Ext.Array.erase(a,b,1)}}if(g){a.push(d)}}j.invalidQueue=a},queueInvalidate:function(d,a){var f=this,h=[],i=f.invalidQueue,k=i.length,c,e,g,b,j;if(d.isComponent){d=f.getCmp(c=d)}else {c=d.target}d.invalid=!0;while(k--){e=i[k];g=e.item.target;if(!c.isFloating&&c.up(g)){return}if(g===c){if(!(b=e.options)){e.options=a}else {if(a){if(a.widthModel){b.widthModel=a.widthModel}if(a.heightModel){b.heightModel=a.heightModel}if(!(j=b.state)){b.state=a.state}else {if(a.state){Ext.apply(j,a.state)}}if(a.before){b.before=f.chainFns(b,a,'before')}if(a.after){b.after=f.chainFns(b,a,'after')}}}return}if(!g.isLayoutChild(c)){h.push(e)}}h.push({item:d,options:a});f.invalidQueue=h},queueItemLayouts:function(c){var b=c.isComponent?c:c.target,a=b.componentLayout;if(!a.pending&&!a.invalid&&!a.done){this.queueLayout(a)}a=b.layout;if(a&&!a.pending&&!a.invalid&&!a.done&&!b.collapsed){this.queueLayout(a)}},queueLayout:function(a){this.layoutQueue.add(a);a.pending=!0},removeEl:function(d,e){var c=e.id,a=d.children,b=this.items;if(a){Ext.Array.remove(a,b[c])}delete b[c]},resetLayout:function(a,c,d){var b=this;b.currentLayout=a;a.done=!1;a.pending=!0;a.firedTriggers=0;b.layoutQueue.add(a);if(d){b.layouts[a.id]=a;a.running=!0;if(a.finishedLayout){b.finishQueue.add(a)}++b.remainingLayouts;++a.layoutCount;a.ownerContext=c;a.beginCount=0;a.blockCount=0;a.calcCount=0;a.triggerCount=0;if(!a.initialized){a.initLayout()}a.beginLayout(c)}else {++a.beginCount;if(!a.running){++b.remainingLayouts;a.running=!0;if(a.isComponentLayout){c.unsetProp('done')}b.completionQueue.remove(a);b.finalizeQueue.remove(a)}}a.beginLayoutCycle(c,d)},run:function(){var a=this,b=!1,c=a.cycleWatchDog;a.purgeInvalidates();a.flushInvalidates();a.state=1;a.totalCount=a.layoutQueue.getCount();a.flush();while((a.remainingLayouts||a.invalidQueue.length)&&c--){if(a.invalidQueue.length){a.flushInvalidates()}if(a.runCycle()){b=!1}else {if(!b){a.flush();b=!0;a.flushLayouts('completionQueue','completeLayout')}else {if(!a.invalidQueue.length){a.state=2;break}}}if(!(a.remainingLayouts||a.invalidQueue.length)){a.flush();a.flushLayouts('completionQueue','completeLayout');a.flushLayouts('finalizeQueue','finalizeLayout')}}return a.runComplete()},runComplete:function(){var a=this;a.state=2;if(a.remainingLayouts){a.handleFailure();return !1}a.flush();a.flushLayouts('finishQueue','finishedLayout',!0);a.flushLayouts('finishQueue','notifyOwner');a.flush();a.flushAnimations();return !0},runCycle:function(){var a=this,c=a.layoutQueue.clear(),d=c.length,b;++a.cycleCount;a.progressCount=0;for(b=0;b<d;++b){a.runLayout(a.currentLayout=c[b])}a.currentLayout=null;return a.progressCount>0},runLayout:function(a){var b=this,c=b.getCmp(a.owner);a.pending=!1;if(c.state.blocks){return}a.done=!0;++a.calcCount;++b.calcCount;a.calculate(c);if(a.done){b.layoutDone(a);if(a.completeLayout){b.queueCompletion(a)}if(a.finalizeLayout){b.queueFinalize(a)}}else {if(!a.pending&&!a.invalid&&!(a.blockCount+a.triggerCount-a.firedTriggers)){b.queueLayout(a)}}},setItemSize:function(a,g,f){var b=a,c=1,e,d;if(a.isComposite){b=a.elements;c=b.length;a=b[0]}else {if(!a.dom&&!a.el){c=b.length;a=b[0]}}for(d=0;d<c;){e=this.get(a);e.setSize(g,f);a=b[++d]}}},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(a){var b=this.owner.legend;Ext.layout.component.Body.prototype.beginLayout.call(this,a);if(b){a.legendContext=a.context.getCmp(b)}},beginLayoutCycle:function(a){var c=a.target,b;Ext.layout.component.Body.prototype.beginLayoutCycle.apply(this,arguments);if(c.collapsed){a.setContentHeight(0);a.restoreMinHeight=c.minHeight;delete c.minHeight;if(a.widthModel.shrinkWrap){b=this.lastComponentSize;a.setContentWidth(b&&b.contentWidth||this.defaultCollapsedWidth)}}},finishedLayout:function(b){var c=this.owner,a=b.restoreMinHeight;Ext.layout.component.Body.prototype.finishedLayout.apply(this,arguments);if(a){c.minHeight=a}},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(a,d){var c=a.getBorderInfo(),b=a.legendContext;return a.getProp('contentHeight')+a.getPaddingInfo().height+(Ext.isIE8?a.bodyContext.getPaddingInfo().top:0)+(b?b.getProp('height'):c.top)+c.bottom},publishInnerHeight:function(c,d){var b=c.legendContext,a=0;if(b){a=b.getProp('height')}if(a===undefined){this.done=!1}else {Ext.layout.component.Body.prototype.publishInnerHeight.call(this,c,d-a)}},getLayoutItems:function(){var a=this.owner.legend;return a?[a]:[]}},0,0,0,0,['layout.fieldset'],0,[Ext.layout.component,'FieldSet'],0);Ext.cmd.derive('Ext.layout.container.Center',Ext.layout.container.Fit,{alternateClassName:'Ext.ux.layout.Center',type:'center',percentRe:/^\d+(?:\.\d+)?\%$/,itemCls:'x-center-layout-item',childEls:['targetEl'],renderTpl:['<div id="{ownerId}-targetEl" data-ref="targetEl" class="{targetElCls}" role="presentation">{%this.renderBody(out, values)%}</div>'],targetElCls:'x-center-target',beginLayout:function(b){var h=this,f=h.percentRe,e,g,d,c,a,j,i;Ext.layout.container.Fit.prototype.beginLayout.call(this,b);e=b.childItems;for(d=0,g=e.length;d<g;++d){c=e[d];a=c.target;j=c.widthModel;i=c.heightModel;if(f.test(a.width)){a.getEl().setStyle('width','')}if(f.test(a.height)){a.getEl().setStyle('height','')}}b.targetElContext=b.getEl('targetEl',h)},beginLayoutCycle:function(b,c){var a=this.targetEl;Ext.layout.container.Fit.prototype.beginLayoutCycle.call(this,b,c);a.setStyle('width','');a.setStyle('height','')},getRenderData:function(){var a=Ext.layout.container.Fit.prototype.getRenderData.call(this);a.targetElCls=this.targetElCls;return a},getRenderTarget:function(){return this.targetEl},getItemSizePolicy:function(d,e){var a=this,c=e||a.owner.getSizeModel(),b=a.percentRe,f=(c.width.shrinkWrap||!b.test(d.width)?0:1)|(c.height.shrinkWrap||!b.test(d.height)?0:2);return a.sizePolicies[f]},isItemBoxParent:function(a){return !0},isItemShrinkWrap:function(a){return !0},calculate:function(a){var c=a.targetElContext,b;Ext.layout.container.Fit.prototype.calculate.call(this,a);b=a.state.info;if(a.widthModel.shrinkWrap){c.setWidth(b.contentWidth)}if(a.heightModel.shrinkWrap){c.setHeight(b.contentHeight)}},getPos:function(d,b,a){var e=a+'Model',f=d.props[a],c=0;if(!d[e].calculated){f+=b.margins[a]}if(!b.ownerContext[e].shrinkWrap){c=Math.round((b.targetSize[a]-f)/2);if(isNaN(c)){this.done=!1}}return Math.max(c,0)},positionItemX:function(a,b){var c=this.getPos(a,b,'width');a.setProp('x',c)},positionItemY:function(a,b){var c=this.getPos(a,b,'height');a.setProp('y',c)},setItemHeight:function(a,b){var c=parseFloat(a.target.height)/100;a.setHeight(Math.round((b.targetSize.height-b.margins.height)*c))},setItemWidth:function(a,b){var c=parseFloat(a.target.width)/100;a.setWidth(Math.round((b.targetSize.width-b.margins.width)*c))}},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.SegmentedButton',Ext.layout.container.Container,{needsItemSize:!1,setsItemSize:!1,_btnRowCls:'x-segmented-button-row',getRenderTree:function(){var d=this,b=Ext.layout.container.Container.prototype.getRenderTree.call(this),a,c;if(d.owner.getVertical()){for(a=0,c=b.length;a<c;a++){b[a]={cls:d._btnRowCls,cn:b[a]}}}return b},getItemLayoutEl:function(b){var a=b.el.dom;return this.owner.getVertical()?a.parentNode:a},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.plugin.Manager',Ext.Base,{alternateClassName:['Ext.PluginManager','Ext.PluginMgr'],singleton:!0,typeName:'ptype',create:function(a,e,c){var b,d;if(a.init){b=a}else {if(c){a=Ext.apply({},a);a.cmp=c}else {c=a.cmp}if(a.xclass){b=Ext.create(a)}else {d='plugin.'+(a.ptype||e);b=Ext.ClassManager.instantiateByAlias(d,a)}}if(b&&c&&b.setCmp&&!b.setCmpCalled){b.setCmp(c);b.setCmpCalled=!0}return b}},0,0,0,0,0,0,[Ext.plugin,'Manager',Ext,'PluginManager',Ext,'PluginMgr'],0);Ext.cmd.derive('Ext.resizer.ResizeTracker',Ext.dd.DragTracker,{dynamic:!0,preserveRatio:!1,constrainTo:null,proxyCls:'x-resizable-proxy',constructor:function(b){var a=this,d,c,e;if(!b.el){if(b.target.isComponent){a.el=b.target.getEl()}else {a.el=b.target}}Ext.dd.DragTracker.prototype.constructor.apply(this,arguments);if(a.preserveRatio&&a.minWidth&&a.minHeight){d=a.minWidth/a.el.getWidth();c=a.minHeight/a.el.getHeight();if(c>d){a.minWidth=a.el.getWidth()*c}else {a.minHeight=a.el.getHeight()*d}}if(a.throttle){e=Ext.Function.createThrottled(function(){Ext.resizer.ResizeTracker.prototype.resize.apply(a,arguments)},a.throttle);a.resize=function(f,d,c){if(c){Ext.resizer.ResizeTracker.prototype.resize.apply(a,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=!0}if(a.proxy){a.proxy.show();return a.proxy}},createProxy:function(a){var b,c=this.proxyCls;if(a.isComponent){b=a.getProxy().addCls(c)}else {b=a.createProxy({tag:'div',role:'presentation',cls:c,id:a.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(s,r){var c=this,h=c.activeResizeHandle.region,d=c.getOffset(c.constrainTo?'dragTarget':null),b=c.startBox,n,f=0,e=0,k,j,l=0,m=0,q,i,g,a,o,p;h=c.convertRegionName(h);switch(h){case 'south':e=d[1];g=2;break;case 'north':e=-d[1];m=-e;g=2;break;case 'east':f=d[0];g=1;break;case 'west':f=-d[0];l=-f;g=1;break;case 'northeast':e=-d[1];m=-e;f=d[0];i=[b.x,b.y+b.height];g=3;break;case 'southeast':e=d[1];f=d[0];i=[b.x,b.y];g=3;break;case 'southwest':f=-d[0];l=-f;e=d[1];i=[b.x+b.width,b.y];g=3;break;case 'northwest':e=-d[1];m=-e;f=-d[0];l=-f;i=[b.x+b.width,b.y+b.height];g=3;break;}a={width:b.width+f,height:b.height+e,x:b.x+l,y:b.y+m};k=Ext.Number.snap(a.width,c.widthIncrement);j=Ext.Number.snap(a.height,c.heightIncrement);if(k!==a.width||j!==a.height){switch(h){case 'northeast':a.y-=j-a.height;break;case 'north':a.y-=j-a.height;break;case 'southwest':a.x-=k-a.width;break;case 'west':a.x-=k-a.width;break;case 'northwest':a.x-=k-a.width;a.y-=j-a.height;}a.width=k;a.height=j}if(a.width<c.minWidth||a.width>c.maxWidth){a.width=Ext.Number.constrain(a.width,c.minWidth,c.maxWidth);if(l){a.x=b.x+(b.width-a.width)}}else {c.lastX=a.x}if(a.height<c.minHeight||a.height>c.maxHeight){a.height=Ext.Number.constrain(a.height,c.minHeight,c.maxHeight);if(m){a.y=b.y+(b.height-a.height)}}else {c.lastY=a.y}if(c.preserveRatio||s.shiftKey){n=c.startBox.width/c.startBox.height;o=Math.min(Math.max(c.minHeight,a.width/n),c.maxHeight);p=Math.min(Math.max(c.minWidth,a.height*n),c.maxWidth);if(g===1){a.height=o}else {if(g===2){a.width=p}else {q=Math.abs(i[0]-this.lastXY[0])/Math.abs(i[1]-this.lastXY[1]);if(q>n){a.height=o}else {a.width=p}if(h==='northeast'){a.y=b.y-(a.height-b.height)}else {if(h==='northwest'){a.y=b.y-(a.height-b.height);a.x=b.x-(a.width-b.width)}else {if(h==='southwest'){a.x=b.x-(a.width-b.width)}}}}}}c.setPosition=a.x!==c.startBox.x||a.y!==c.startBox.y;c.resize(a,r)},resize:function(b,e){var a=this,c,d=a.setPosition;if(a.dynamic||!a.dynamic&&e){if(d){a.target.setBox(b)}else {a.target.setSize(b.width,b.height)}}if(!e){c=a.getProxy();if(c&&c!==a.target){if(d||a.hideProxy){c.setBox(b)}else {c.setSize(b.width,b.height)}}}},onEnd:function(a){this.updateDimensions(a,!0);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:!0,handles:'s e se',height:null,width:null,heightIncrement:0,widthIncrement:0,minHeight:20,minWidth:20,maxHeight:10000,maxWidth:10000,pinned:!1,preserveRatio:!1,transparent:!1,possiblePositions:{n:'north',s:'south',e:'east',w:'west',se:'southeast',sw:'southwest',nw:'northwest',ne:'northeast'},ariaRole:'presentation',constructor:function(e){var a=this,d=a.handles,q=Ext.dom.Element.unselectableCls,h=[],b,k,i,m,p,c,f,n,l,g,o,j;if(Ext.isString(e)||Ext.isElement(e)||e.dom){b=e;e=arguments[1]||{};e.target=b}a.mixins.observable.constructor.call(a,e);b=a.target;if(b){if(b.isComponent){b.addClsWithUI('resizable');if(b.minWidth){a.minWidth=b.minWidth}if(b.minHeight){a.minHeight=b.minHeight}if(b.maxWidth){a.maxWidth=b.maxWidth}if(b.maxHeight){a.maxHeight=b.maxHeight}if(b.floating){if(!a.hasOwnProperty('handles')){a.handles='n ne e se s sw w nw'}}a.el=b.getEl()}else {b=a.el=a.target=Ext.get(b)}}else {b=a.target=a.el=Ext.get(a.el)}a.el.addCls(Ext.Component.prototype.borderBoxCls);if(Ext.isNumber(a.width)){a.width=Ext.Number.constrain(a.width,a.minWidth,a.maxWidth)}if(Ext.isNumber(a.height)){a.height=Ext.Number.constrain(a.height,a.minHeight,a.maxHeight)}if(a.width!==null||a.height!==null){a.target.setSize(a.width,a.height)}m=a.el.dom.tagName.toUpperCase();if(m==='TEXTAREA'||m==='IMG'||m==='TABLE'){a.originalTarget=a.target;g=b.isComponent?b.getEl():b;a.el.addCls(a.wrappedCls);a.target=a.el=a.el.wrap({role:'presentation',cls:a.wrapCls,id:a.el.id+'-rzwrap',style:g.getStyle(['margin-top','margin-bottom'])});o=g.getPositioning();a.el.setPositioning(o);g.clearPositioning();l=g.getBox();if(o.position!=='absolute'){l.x=0;l.y=0}a.el.setBox(l);g.setStyle('position','absolute');a.isTargetWrapped=!0}a.el.position();if(a.pinned){a.el.addCls(a.pinnedCls)}a.resizeTracker=new Ext.resizer.ResizeTracker({disabled:a.disabled,target:b,el:a.el,constrainTo:a.constrainTo,handleCls:a.handleCls,overCls:a.overCls,throttle:a.throttle,proxy:a.originalTarget?a.el:null,dynamic:a.originalTarget?!0:a.dynamic,originalTarget:a.originalTarget,delegate:'.'+a.handleCls,preserveRatio:a.preserveRatio,heightIncrement:a.heightIncrement,widthIncrement:a.widthIncrement,minHeight:a.minHeight,maxHeight:a.maxHeight,minWidth:a.minWidth,maxWidth:a.maxWidth});a.resizeTracker.on({mousedown:a.onBeforeResize,drag:a.onResize,dragend:a.onResizeEnd,scope:a});if(a.handles==='all'){a.handles='n s e w ne nw se sw'}d=a.handles=a.handles.split(a.delimiterRe);i=a.possiblePositions;p=d.length;k=a.handleCls+' '+a.handleCls+'-{0}';if(a.target.isComponent){j=a.target.baseCls;k+=' '+j+'-handle '+j+'-handle-{0}';if(Ext.supports.CSS3BorderRadius){k+=' '+j+'-handle-{0}-br'}}for(c=0;c<p;c++){if(d[c]&&i[d[c]]){f=i[d[c]];h.push('<div id="',a.el.id,'-',f,'-handle" class="',Ext.String.format(k,f),' ',q,'" unselectable="on" role="presentation"','></div>')}}Ext.DomHelper.append(a.el,h.join(''));h.length=0;for(c=0;c<p;c++){if(d[c]&&i[d[c]]){f=i[d[c]];n=a[f]=a.el.getById(a.el.id+'-'+f+'-handle');h.push(n);n.region=f;if(a.transparent){n.setOpacity(0)}}}a.resizeTracker.handleEls=h},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(c,e,d){var a=this,b;if(a.hasListeners[c]){b=a.el.getBox();return a.fireEvent(c,a,b.width,b.height,d)}},resizeTo:function(c,b){var a=this;a.target.setSize(c,b);a.fireEvent('resize',a,c,b,null)},getEl:function(){return this.el},getTarget:function(){return this.target},destroy:function(){var a=this,b,c=a.handles,f=c.length,e=a.possiblePositions,d;a.resizeTracker.destroy();if(a.isTargetWrapped){a.target.destroy()}for(b=0;b<f;b++){if(d=a[e[c[b]]]){d.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:!0,deselectOnContainerClick:!1,enableKeyNav:!0,preventWrap:!1,bindComponent:function(b){var a=this,c;if(a.view&&a.gridListeners){a.gridListeners.destroy()}Ext.selection.DataViewModel.prototype.bindComponent.call(this,b);if(b){c=b.grid||b.ownerCt;if(c.optimizedColumnMove!==!1){a.gridListeners=c.on({columnmove:a.onColumnMove,scope:a,destroyable:!0})}}},getViewListeners:function(){var a=Ext.selection.DataViewModel.prototype.getViewListeners.call(this);a.refresh=this.onViewRefresh;return a},getHeaderCt:function(){var a=this.navigationModel.getPosition(),b=a?a.view:this.primaryView;return b.headerCt},onNavigate:function(a){if(!a.record){return}this.setPosition(a.position)},selectWithEvent:function(a,b){this.select(a)},select:function(a,g,e){var b=this,c,d=b.getPosition(),f=b.view.store;if(a||a===0){if(a.isModel){c=f.indexOf(a);if(c!==-1){a={row:c,column:d?d.column:0}}else {a=null}}else {if(typeof a==='number'){a={row:a,column:0}}}}if(a){b.selectByPosition(a,e)}else {b.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(a,b,c){if(a&&!a.isCellContext){a=(new Ext.grid.CellContext(this.view)).setPosition({row:a.row,column:typeof a.column==='number'?this.view.getColumnManager().getColumns()[a.column]:a.column})}return this.setPosition(a,b,c)},setPosition:function(a,d,e){var b=this,c=b.selection;if(a){a=a.isCellContext?a.clone():(new Ext.grid.CellContext(b.view)).setPosition(a)}if(!e&&c){if(a&&(a.record===c.record&&a.column===c.column&&a.view===c.view)){a=null}else {b.onCellDeselect(b.selection,d)}}if(a){b.nextSelection=a;b.selecting=!0;b.onCellSelect(b.nextSelection,d);b.selecting=!1;return b.selection=a}},isCellSelected:function(d,e,c){var f=this,b,a=f.getPosition();if(a&&a.view===d){b=(new Ext.grid.CellContext(d)).setPosition({row:e,column:typeof c==='number'?d.getColumnManager().getColumns()[c]:c});return b.record===a.record&&b.column===a.column}},onStoreRemove:function(b,e,d){var c=this,a=c.getPosition();Ext.selection.DataViewModel.prototype.onStoreRemove.apply(this,arguments);if(a&&b.isMoving(a.record)){return}if(a&&b.getCount()&&b.indexOf(a.record)!==-1){a.setRow(a.record)}else {c.selection=null}},onStoreClear:function(){Ext.selection.DataViewModel.prototype.onStoreClear.apply(this,arguments);this.selection=null},onStoreAdd:function(){var b=this,a=b.getPosition();Ext.selection.DataViewModel.prototype.onStoreAdd.apply(this,arguments);if(a){a.setRow(a.record)}else {b.selection=null}},onCellClick:function(f,e,c,d,g,a,b){if(a!==-1){this.setPosition(b.position)}},onCellSelect:function(a,b){if(a&&a.rowIdx!==undefined&&a.rowIdx>-1){this.doSelect(a.record,!1,b)}},onCellDeselect:function(a,b){if(a&&a.rowIdx!==undefined){this.doDeselect(a.record,b)}},onSelectChange:function(g,f,e,h){var b=this,a,c,d;if(f){a=b.nextSelection;c='select'}else {a=b.selection;c='deselect'}d=a.view||b.primaryView;if((e||b.fireEvent('before'+c,b,g,a.rowIdx,a.colIdx))!==!1&&h()!==!1){if(f){d.onCellSelect(a)}else {d.onCellDeselect(a);delete b.selection}if(!e){b.fireEvent(c,b,g,a.rowIdx,a.colIdx)}}},onEditorTab:function(e,b){var c=this,f=b.shiftKey?'left':'right',d=b.position,a=d.view.walkCells(d,f,b,c.preventWrap);if(a){if(e.startEdit(a.record,a.column)){c.wasEditing=!1}else {a.view.getNavigationModel().setPosition(a,null,b);c.wasEditing=!0}}},refresh:function(){var b=this.getPosition(),a;if(b&&(a=this.store.indexOf(this.selected.last()))!==-1){b.rowIdx=a}},onColumnMove:function(b,d,c,e){var a=b.up('tablepanel');if(a){this.onViewRefresh(a.view)}},onUpdate:function(c){var a=this,b;if(a.isSelected(c)){b=a.selecting?a.nextSelection:a.selection;a.view.onCellSelect(b)}},onViewRefresh:function(d){var f=this,b=f.getPosition(),g,c=d.headerCt,e,a;if(b&&b.view===d){e=b.record;a=b.column;if(!a.isDescendantOf(c)){a=c.queryById(a.id)||c.down('[text="'+a.text+'"]')||c.down('[dataIndex="'+a.dataIndex+'"]')}if(b.record){if(a&&d.store.indexOfId(e.getId())!==-1){g=(new Ext.grid.CellContext(d)).setPosition({row:e,column:a});f.setPosition(g)}}else {f.selection=null}}},selectByPosition:function(b,a){this.setPosition(b,a)}},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:!1,showHeaderCheckbox:undefined,checkSelector:'.x-grid-row-checker',allowDeselect:!0,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!==!0){a.showHeaderCheckbox=!1}},beforeViewRender:function(c){var a=this,b;Ext.selection.RowModel.prototype.beforeViewRender.apply(this,arguments);if(!a.hasLockedHeader()||c.headerCt.lockedCt){a.addCheckbox(c,!0);b=c.ownerCt;if(c.headerCt.lockedCt){b=b.ownerCt}a.mon(b,'reconfigure',a.onReconfigure,a)}},bindComponent:function(a){this.sortable=!1;Ext.selection.RowModel.prototype.bindComponent.apply(this,arguments)},hasLockedHeader:function(){var b=this.views,c=b.length,a;for(a=0;a<c;a++){if(b[a].headerCt.lockedCt){return !0}}return !1},addCheckbox:function(c,e){var b=this,a=b.injectCheckbox,d=c.headerCt;if(a!==!1){if(a==='first'){a=0}else {if(a==='last'){a=d.getColumnCount()}}Ext.suspendLayouts();if(c.getStore().isBufferedStore){b.showHeaderCheckbox=!1}b.column=d.add(a,b.getHeaderConfig());Ext.resumeLayouts()}if(e!==!0){c.refresh()}},onReconfigure:function(c,b,a){if(a){this.addCheckbox(this.views[0])}},toggleUiHeader:function(c){var e=this.views[0],d=e.headerCt,a=d.child('gridcolumn[isCheckerHd]'),b=this.checkerOnCls;if(a){if(c){a.addCls(b)}else {a.removeCls(b)}}},onHeaderClick:function(e,a,d){if(a===this.column){d.stopEvent();var b=this,c=a.el.hasCls('x-grid-hd-checker-on');if(c){b.deselectAll()}else {b.selectAll()}}},getHeaderConfig:function(){var a=this,b=a.showHeaderCheckbox!==!1;return {xtype:'gridcolumn',isCheckerHd:b,text:' ',clickTargetName:'el',width:a.headerWidth,sortable:!1,draggable:!1,resizable:!1,hideable:!1,menuDisabled:!0,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 ' '},refresh:function(){Ext.selection.RowModel.prototype.refresh.apply(this,arguments);this.updateHeaderState()},renderer:function(f,b,d,c,a,e,g){return '<div class="x-grid-row-checker" role="presentation"> </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 a=this,e=a.store,g=e.getCount(),h=a.views,c=!1,f=0,d,i,b;if(!e.isBufferedStore&&g>0){d=a.selected;c=!0;for(b=0,i=d.getCount();b<i;++b){if(e.indexOfId(d.getAt(b).id)===-1){break}++f}c=g===f}if(h&&h.length){a.toggleUiHeader(c)}},vetoSelection:function(a){var b=this,f=b.column,e,c,d;if(b.checkOnly){c=a.type==='click'&&a.getTarget(b.checkSelector);d=a.getKey()===a.SPACE&&a.position.column===f;e=!(c||d)}return e||Ext.selection.RowModel.prototype.vetoSelection.call(this,a)},destroy:function(){this.column=null;Ext.selection.RowModel.prototype.destroy.call(this)},privates:{onBeforeNavigate:function(b){var a=b.keyEvent;if(this.selectionMode!=='SINGLE'){b.ctrlKey=b.ctrlKey||a.ctrlKey||a.type==='click'&&!a.shiftKey||a.getKey()===a.SPACE}},selectWithEventMulti:function(b,a,d){var c=this;if(!a.shiftKey&&!a.ctrlKey&&a.getTarget(c.checkSelector)){if(d){c.doDeselect(b)}else {c.doSelect(b,!0)}}else {Ext.selection.RowModel.prototype.selectWithEventMulti.call(this,b,a,d)}}}},1,0,0,0,['selection.checkboxmodel'],0,[Ext.selection,'CheckboxModel'],0);Ext.cmd.derive('Ext.toolbar.Fill',Ext.Component,{alternateClassName:'Ext.Toolbar.Fill',ariaRole:'presentation',isFill:!0,flex:1},0,['tbfill'],['component','box','tbfill'],{'component':!0,'box':!0,'tbfill':!0},['widget.tbfill'],0,[Ext.toolbar,'Fill',Ext.Toolbar,'Fill'],0);Ext.cmd.derive('Ext.util.CSS',Ext.Base,function(){var a,b=null,c=document,e=/(-[a-z])/gi,d=function(b,a){return a.charAt(1).toUpperCase()};return {singleton:!0,rules:b,initialized:!1,constructor:function(){a=this},createStyleSheet:function(e,g){var d,f=c.getElementsByTagName('head')[0],b=c.createElement('style');b.setAttribute('type','text/css');if(g){b.setAttribute('id',g)}d=b.styleSheet;if(d){f.appendChild(b);d.cssText=e}else {b.appendChild(c.createTextNode(e));f.appendChild(b);d=b.sheet}a.cacheStyleSheet(d);return d},removeStyleSheet:function(b){var a=c.getElementById(b);if(a){a.parentNode.removeChild(a)}},swapStyleSheet:function(d,e){var b;a.removeStyleSheet(d);b=c.createElement('link');b.setAttribute('rel','stylesheet');b.setAttribute('type','text/css');b.setAttribute('id',d);b.setAttribute('href',e);c.getElementsByTagName('head')[0].appendChild(b)},cacheStyleSheet:function(d){if(!b){b=a.rules={}}try{var h=d.cssRules||d.rules,g=h.length-1,f=d.imports,i=f?f.length:0,c,e;for(e=0;e<i;++e){a.cacheStyleSheet(f[e])}for(;g>=0;--g){c=h[g];if(c.styleSheet){a.cacheStyleSheet(c.styleSheet)}a.cacheRule(c,d)}}catch(j){}},cacheRule:function(d,g){if(d.styleSheet){return a.cacheStyleSheet(d.styleSheet)}var c=d.selectorText,f,e;if(c){c=c.split(',');f=c.length;for(e=0;e<f;e++){b[Ext.String.trim(c[e]).toLowerCase()]={parentStyleSheet:g,cssRule:d}}}},getRules:function(e){var d={},c;if(b===null||e){a.refreshCache()}for(c in b){d[c]=b[c].cssRule}return d},refreshCache:function(){var e=c.styleSheets,d=0,f=e.length;b=a.rules={};for(;d<f;d++){try{if(!e[d].disabled){a.cacheStyleSheet(e[d])}}catch(g){}}},getRule:function(c,g,f){var d,e;if(!b||g){a.refreshCache()}if(!Ext.isArray(c)){e=b[c.toLowerCase()];if(e&&!f){e=e.cssRule}return e||null}for(d=0;d<c.length;d++){if(b[c[d]]){return f?b[c[d].toLowerCase()]:b[c[d].toLowerCase()].cssRule}}return null},createRule:function(b,c,d){var f,e=b.cssRules||b.rules,g=e.length;if(b.insertRule){b.insertRule(c+' {'+d+'}',g)}else {b.addRule(c,d||' ')}a.cacheRule(f=e[g],b);return f},updateRule:function(c,b,i){var f,g,h;if(!Ext.isArray(c)){f=a.getRule(c);if(f){if(arguments.length===2){h=Ext.Element.parseStyles(b);for(b in h){f.style[b.replace(e,d)]=h[b]}}else {f.style[b.replace(e,d)]=i}return !0}}else {for(g=0;g<c.length;g++){if(a.updateRule(c[g],b,i)){return !0}}}return !1},deleteRule:function(f){var e=a.getRule(f,!1,!0),c,d;if(e){c=e.parentStyleSheet;d=Ext.Array.indexOf(c.cssRules||c.rules,e.cssRule);if(c.deleteRule){c.deleteRule(d)}else {c.removeRule(d)}delete b[f]}}}},1,0,0,0,0,0,[Ext.util,'CSS'],0);Ext.cmd.derive('Ext.util.Cookies',Ext.Base,{singleton:!0,set:function(h,g){var b=arguments,a=arguments.length,c=a>2?b[2]:null,e=a>3?b[3]:'/',d=a>4?b[4]:null,f=a>5?b[5]:!1;document.cookie=h+'='+escape(g)+(c===null?'':'; expires='+c.toUTCString())+(e===null?'':'; path='+e)+(d===null?'':'; domain='+d)+(f===!0?'; secure':'')},get:function(e){var d=document.cookie.split('; '),f=d.length,b,a,c;for(a=0;a<f;++a){b=d[a].split('=');if(b[0]===e){c=b[1];return c?unescape(c):''}}return null},clear:function(b,a){if(this.get(b)){a=a||'/';document.cookie=b+'=; expires=Thu, 01-Jan-1970 00:00:01 GMT; path='+a}}},0,0,0,0,0,0,[Ext.util,'Cookies'],0);Ext.cmd.derive('Ext.ux.BoxReorderer',Ext.Base,{itemSelector:'.x-box-item',animate:100,constructor:function(){this.mixins.observable.constructor.apply(this,arguments)},init:function(b){var a=this;a.container=b;a.animatePolicy={};a.animatePolicy[b.getLayout().names.x]=!0;a.container.on({scope:a,boxready:a.onBoxReady,beforedestroy:a.onContainerDestroy})},onContainerDestroy:function(){var a=this.dd;if(a){a.unreg();this.dd=null}},onBoxReady:function(){var a=this,d=a.container.getLayout(),c=d.names,b;b=a.dd=new Ext.dd.DD(d.innerCt,a.container.id+'-reorderer');Ext.apply(b,{animate:a.animate,reorderer:a,container:a.container,getDragCmp:a.getDragCmp,clickValidator:Ext.Function.createInterceptor(b.clickValidator,a.clickValidator,a,!1),onMouseDown:a.onMouseDown,startDrag:a.startDrag,onDrag:a.onDrag,endDrag:a.endDrag,getNewIndex:a.getNewIndex,doSwap:a.doSwap,findReorderable:a.findReorderable});b.dim=c.width;b.startAttr=c.beforeX;b.endAttr=c.afterX},getDragCmp:function(a){return this.container.getChildByElement(a.getTarget(this.itemSelector,10))},clickValidator:function(b){var a=this.getDragCmp(b);return !!(a&&a.reorderable!==!1)},onMouseDown:function(d){var a=this,e=a.container,c,f,b;a.dragCmp=a.getDragCmp(d);if(a.dragCmp){f=a.dragCmp.getEl();a.startIndex=a.curIndex=e.items.indexOf(a.dragCmp);b=f.getBox();a.lastPos=b[a.startAttr];c=e.el.getBox();if(a.dim==='width'){a.minX=c.left;a.maxX=c.right-b.width;a.minY=a.maxY=b.top;a.deltaX=d.getX()-b.left}else {a.minY=c.top;a.maxY=c.bottom-b.height;a.minX=a.maxX=b.left;a.deltaY=d.getY()-b.top}a.constrainY=a.constrainX=!0}},startDrag:function(){var a=this,b=a.dragCmp;if(b){b.setPosition=Ext.emptyFn;b.animate=!1;if(a.animate){a.container.getLayout().animatePolicy=a.reorderer.animatePolicy}a.dragElId=b.getEl().id;a.reorderer.fireEvent('StartDrag',a,a.container,b,a.curIndex);b.suspendEvents();b.disabled=!0;b.el.setStyle('zIndex',100)}else {a.dragElId=null}},findReorderable:function(a){var d=this,c=d.container.items,b;if(c.getAt(a).reorderable===!1){b=c.getAt(a);if(a>d.startIndex){while(b&&b.reorderable===!1){a++;b=c.getAt(a)}}else {while(b&&b.reorderable===!1){a--;b=c.getAt(a)}}}a=Math.min(Math.max(a,0),c.getCount()-1);if(c.getAt(a).reorderable===!1){return -1}return a},doSwap:function(b){var a=this,c=a.container.items,d=a.container,h=a.container._isLayoutRoot,f,e,g;b=a.findReorderable(b);if(b===-1){return}a.reorderer.fireEvent('ChangeIndex',a,d,a.dragCmp,a.startIndex,b);f=c.getAt(a.curIndex);e=c.getAt(b);c.remove(f);g=Math.min(Math.max(b,0),c.getCount()-1);c.insert(g,f);c.remove(e);c.insert(a.curIndex,e);d._isLayoutRoot=!0;d.updateLayout();d._isLayoutRoot=h;a.curIndex=b},onDrag:function(c){var a=this,b;b=a.getNewIndex(c.getPoint());if(b!==undefined){a.reorderer.fireEvent('Drag',a,a.container,a.dragCmp,a.startIndex,a.curIndex);a.doSwap(b)}},endDrag:function(d){if(d){d.stopEvent()}var a=this,b=a.container.getLayout(),c;if(a.dragCmp){delete a.dragElId;delete a.dragCmp.setPosition;a.dragCmp.animate=!0;a.dragCmp.lastBox[b.names.x]=a.dragCmp.getPosition(!0)[b.names.widthIndex];a.container._isLayoutRoot=!0;a.container.updateLayout();a.container._isLayoutRoot=undefined;c=Ext.fx.Manager.getFxQueue(a.dragCmp.el.id)[0];if(c){c.on({afteranimate:a.reorderer.afterBoxReflow,scope:a})}else {Ext.Function.defer(a.reorderer.afterBoxReflow,1,a)}if(a.animate){delete b.animatePolicy}a.reorderer.fireEvent('drop',a,a.container,a.dragCmp,a.startIndex,a.curIndex)}},afterBoxReflow:function(){var a=this;a.dragCmp.el.setStyle('zIndex','');a.dragCmp.disabled=!1;a.dragCmp.resumeEvents()},getNewIndex:function(k){var a=this,i=a.getDragEl(),c=Ext.fly(i).getBox(),f,e,d,b=0,h=a.container.items.items,j=h.length,g=a.lastPos;a.lastPos=c[a.startAttr];for(;b<j;b++){f=h[b].getEl();if(f.is(a.reorderer.itemSelector)){e=f.getBox();d=e[a.startAttr]+(e[a.dim]>>1);if(b<a.curIndex){if(c[a.startAttr]<g&&c[a.startAttr]<d-5){return b}}else {if(b>a.curIndex){if(c[a.startAttr]>g&&c[a.endAttr]>d+5){return b}}}}}}},1,0,0,0,0,[['observable',Ext.util.Observable]],[Ext.ux,'BoxReorderer'],0);Ext.cmd.derive('Ext.ux.statusbar.StatusBar',Ext.toolbar.Toolbar,{alternateClassName:'Ext.ux.StatusBar',cls:'x-statusbar',busyIconCls:'x-status-busy',busyText:'Loading...',autoClear:5000,emptyText:' ',activeThreadId:0,initComponent:function(){var a=this.statusAlign==='right';Ext.toolbar.Toolbar.prototype.initComponent.apply(this,arguments);this.currIconCls=this.iconCls||this.defaultIconCls;this.statusEl=Ext.create('Ext.toolbar.TextItem',{cls:'x-status-text '+(this.currIconCls||''),text:this.text||this.defaultText||''});if(a){this.cls+=' x-status-right';this.add('->');this.add(this.statusEl)}else {this.insert(0,this.statusEl);this.insert(1,'->')}},setStatus:function(b){var c=this;b=b||{};Ext.suspendLayouts();if(Ext.isString(b)){b={text:b}}if(b.text!==undefined){c.setText(b.text)}if(b.iconCls!==undefined){c.setIcon(b.iconCls)}if(b.clear){var a=b.clear,e=c.autoClear,d={useDefaults:!0,anim:!0};if(Ext.isObject(a)){a=Ext.applyIf(a,d);if(a.wait){e=a.wait}}else {if(Ext.isNumber(a)){e=a;a=d}else {if(Ext.isBoolean(a)){a=d}}}a.threadId=this.activeThreadId;Ext.defer(c.clearStatus,e,c,[a])}Ext.resumeLayouts(!0);return c},clearStatus:function(b){b=b||{};var a=this,c=a.statusEl;if(b.threadId&&b.threadId!==a.activeThreadId){return a}var e=b.useDefaults?a.defaultText:a.emptyText,d=b.useDefaults?a.defaultIconCls?a.defaultIconCls:'':'';if(b.anim){c.el.puff({remove:!1,useDisplay:!0,callback:function(){c.el.show();a.setStatus({text:e,iconCls:d})}})}else {a.setStatus({text:e,iconCls:d})}return a},setText:function(b){var a=this;a.activeThreadId++;a.text=b||'';if(a.rendered){a.statusEl.setText(a.text)}return a},getText:function(){return this.text},setIcon:function(b){var a=this;a.activeThreadId++;b=b||'';if(a.rendered){if(a.currIconCls){a.statusEl.removeCls(a.currIconCls);a.currIconCls=null}if(b.length>0){a.statusEl.addCls(b);a.currIconCls=b}}else {a.currIconCls=b}return a},showBusy:function(a){if(Ext.isString(a)){a={text:a}}a=Ext.applyIf(a||{},{text:this.busyText,iconCls:this.busyIconCls});return this.setStatus(a)}},0,['statusbar'],['component','box','container','toolbar','statusbar'],{'component':!0,'box':!0,'container':!0,'toolbar':!0,'statusbar':!0},['widget.statusbar'],0,[Ext.ux.statusbar,'StatusBar',Ext.ux,'StatusBar'],0);Ext.cmd.derive('Ext.ux.TabReorderer',Ext.ux.BoxReorderer,{itemSelector:'.x-tab',init:function(a){var b=this;Ext.ux.BoxReorderer.prototype.init.call(this,a.getTabBar());a.onAdd=Ext.Function.createSequence(a.onAdd,b.onAdd)},onBoxReady:function(){var b,d,c=0,a;Ext.ux.BoxReorderer.prototype.onBoxReady.apply(this,arguments);for(b=this.container.items.items,d=b.length;c<d;c++){a=b[c];if(a.card){a.reorderable=a.card.reorderable}}},onAdd:function(a,b){a.tab.reorderable=a.reorderable},afterBoxReflow:function(){var a=this;Ext.ux.BoxReorderer.prototype.afterBoxReflow.apply(a,arguments);if(a.dragCmp){a.container.tabPanel.setActiveTab(a.dragCmp.card);a.container.tabPanel.move(a.dragCmp.card,a.curIndex)}}},0,0,0,0,['plugin.tabreorderer'],0,[Ext.ux,'TabReorderer'],0);Ext.cmd.derive('Ext.window.Toast',Ext.window.Window,{isToast:!0,cls:'x-toast',bodyPadding:10,autoClose:!0,plain:!1,draggable:!1,resizable:!1,shadow:!1,focus:Ext.emptyFn,anchor:null,useXAxis:!1,align:'br',animate:!0,spacing:6,paddingX:30,paddingY:10,slideInAnimation:'easeIn',slideBackAnimation:'bounceOut',slideInDuration:1500,slideBackDuration:1000,hideDuration:500,autoCloseDelay:3000,stickOnClick:!0,stickWhileHover:!0,closeOnMouseDown:!1,isHiding:!1,isFading:!1,destroyAfterHide:!1,closeOnMouseOut:!1,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(d){var a=this,b=a.alignmentProps,e=b[d],c=b.x[d];if(c&&a.useXAxis){Ext.applyIf(a,c)}Ext.applyIf(a,e)},getXposAlignedToAnchor:function(){var b=this,d=b.align,e=b.anchor,c=e&&e.el,f=b.el,a=0;if(c&&c.dom){if(!b.useXAxis){a=f.getLeft()}else {if(d==='br'||d==='tr'||d==='r'){a+=c.getAnchorXY('r')[0];a-=f.getWidth()+b.paddingX}else {a+=c.getAnchorXY('l')[0];a+=b.paddingX}}}return a},getYposAlignedToAnchor:function(){var b=this,d=b.align,e=b.anchor,c=e&&e.el,f=b.el,a=0;if(c&&c.dom){if(b.useXAxis){a=f.getTop()}else {if(d==='br'||d==='bl'||d==='b'){a+=c.getAnchorXY('b')[1];a-=f.getHeight()+b.paddingY}else {a+=c.getAnchorXY('t')[1];a+=b.paddingY}}}return a},getXposAlignedToSibling:function(a){var c=this,d=c.align,e=c.el,b;if(!c.useXAxis){b=e.getLeft()}else {if(d==='tl'||d==='bl'||d==='l'){b=a.xPos+a.el.getWidth()+a.spacing}else {b=a.xPos-e.getWidth()-c.spacing}}return b},getYposAlignedToSibling:function(a){var d=this,c=d.align,e=d.el,b;if(d.useXAxis){b=e.getTop()}else {if(c==='tr'||c==='tl'||c==='t'){b=a.yPos+a.el.getHeight()+a.spacing}else {b=a.yPos-e.getHeight()-a.spacing}}return b},getToasts:function(){var c=this.anchor,b=this.anchorAlign,a=c.activeToasts||(c.activeToasts={});return a[b]||(a[b]=[])},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 a=this,d=a.el,c,b,e,f;Ext.window.Window.prototype.afterShow.apply(this,arguments);c=a.getToasts();e=c.length;b=e&&c[e-1];if(b){d.alignTo(b.el,a.siblingAlignment,[0,0]);a.xPos=a.getXposAlignedToSibling(b);a.yPos=a.getYposAlignedToSibling(b)}else {d.alignTo(a.anchor.el,a.anchorAlign,[a.paddingX*a.paddingFactorX,a.paddingY*a.paddingFactorY],!1);a.xPos=a.getXposAlignedToAnchor();a.yPos=a.getYposAlignedToAnchor()}Ext.Array.include(c,a);if(a.animate){f=d.getXY();d.animate({from:{x:f[0],y:f[1]},to:{x:a.xPos,y:a.yPos,opacity:1},easing:a.slideInAnimation,duration:a.slideInDuration,dynamic:!0})}else {a.setLocalXY(a.xPos,a.yPos)}},onDocumentMousedown:function(a){if(this.isVisible()&&!this.owns(a.getTarget())){this.hide()}},slideBack:function(){var a=this,f=a.anchor,e=f&&f.el,d=a.el,b=a.getToasts(),c=Ext.Array.indexOf(b,a);if(!a.isHiding&&d&&d.dom&&e&&e.isVisible()){if(c){a.xPos=a.getXposAlignedToSibling(b[c-1]);a.yPos=a.getYposAlignedToSibling(b[c-1])}else {a.xPos=a.getXposAlignedToAnchor();a.yPos=a.getYposAlignedToAnchor()}a.stopAnimation();if(a.animate){d.animate({to:{x:a.xPos,y:a.yPos},easing:a.slideBackAnimation,duration:a.slideBackDuration,dynamic:!0})}}},update:function(){var a=this;if(a.isVisible()){a.isHiding=!0;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=!0}},onMouseEnter:function(){this.mouseIsOver=!0},onMouseLeave:function(){var a=this;a.mouseIsOver=!1;if(a.closeOnMouseOut){a.closeOnMouseOut=!1;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 a=this,b=a.el;a.cancelAutoClose();if(a.isHiding){if(!a.isFading){Ext.window.Window.prototype.hide.apply(this,arguments);a.removeFromAnchor();a.isHiding=!1}}else {a.isHiding=!0;a.isFading=!0;a.cancelAutoClose();if(b){if(a.animate){b.fadeOut({opacity:0,easing:'easeIn',duration:a.hideDuration,listeners:{afteranimate:function(){a.isFading=!1;a.hide(a.animateTarget,a.doClose,a)}}})}else {a.isFading=!1;a.hide(a.animateTarget,a.doClose,a)}}}return a}},0,['toast'],['component','box','container','panel','window','toast'],{'component':!0,'box':!0,'container':!0,'panel':!0,'window':!0,'toast':!0},['widget.toast'],0,[Ext.window,'Toast'],function(a){Ext.toast=function(b,g,e,f){var c=b,d;if(Ext.isString(b)){c={title:g,html:b,iconCls:f};if(e){c.align=e}}d=new a(c);d.show();return d}});Ext.namespace('Ext.theme.is')['rambox-default-theme']=!0;Ext.theme.name='rambox-default-theme';Ext.override(Ext,{cq1:function(a){return Ext.ComponentQuery.query(a)[0]}});Ext.apply(Ext.form.field.VTypes,{daterange:function(e,a){var b=a.parseDate(e);if(!b){return !1}if(a.startDateField&&(!this.dateRangeMax||b.getTime()!=this.dateRangeMax.getTime())){var c=a.up('form').down('#'+a.startDateField);c.setMaxValue(b);c.validate();this.dateRangeMax=b}else {if(a.endDateField&&(!this.dateRangeMin||b.getTime()!=this.dateRangeMin.getTime())){var d=a.up('form').down('#'+a.endDateField);d.setMinValue(b);d.validate();this.dateRangeMin=b}}return !0},daterangeText:'Start date must be less than end date',password:function(c,a){if(a.initialPassField){var b=a.up('form').down('#'+a.initialPassField);return c==b.getValue()}return !0},passwordText:'Passwords do not match'});Ext.cmd.derive('Rambox.ux.Auth0',Ext.Base,{singleton:!0,lock:null,auth0:null,backupCurrent:!1,init:function(){var a=this;var b=require('auth0-lock')['default'];var c=require('auth0-js');a.lock=new b(auth0Cfg.clientID,auth0Cfg.domain,{autoclose:!0,autofocus:!0,auth:{redirect:!1,params:{scope:'openid offline_access'}},theme:{logo:'resources/Icon.png',primaryColor:'#0675A0'},languageDictionary:{title:'Rambox Account'},popupOptions:{nodeIntegration:'no'},language:localStorage.getItem('locale-auth0')===null?'en':localStorage.getItem('locale-auth0')});a.auth0=new c.WebAuth({clientID:auth0Cfg.clientID,domain:auth0Cfg.domain});a.defineEvents()},defineEvents:function(){var a=this;a.lock.on('authenticated',function(b){a.lock.getProfile(b.idToken,function(d,c){if(d){if(d.error===401||d.error==='Unauthorized'){return a.renewToken(a.checkConfiguration)}Ext.Msg.hide();return Ext.Msg.show({title:'Error',message:'There was an error getting the profile: '+d.error_description,icon:Ext.Msg.ERROR,buttons:Ext.Msg.OK})}Ext.Msg.wait(locale['app.window[29]'],locale['app.window[28]']);ga_storage._trackEvent('Users','loggedIn');Ext.util.Cookies.set('auth0',!0);localStorage.setItem('profile',JSON.stringify(c));localStorage.setItem('id_token',b.idToken);localStorage.setItem('refresh_token',b.refreshToken);if(!Ext.isEmpty(c.user_metadata)&&!Ext.isEmpty(c.user_metadata.services)&&!a.backupCurrent){Ext.each(c.user_metadata.services,function(e){var a=Ext.create('Rambox.model.Service',e);a.save();Ext.getStore('Services').add(a)});require('electron').remote.getCurrentWindow().reload()}Ext.Msg.hide();Ext.cq1('app-main').getViewModel().set('username',c.name);Ext.cq1('app-main').getViewModel().set('avatar',c.picture)})})},backupConfiguration:function(a){var b=this;Ext.Msg.wait('Saving backup...','Please wait...');var c=(new Date()).toJSON();var d=[];Ext.getStore('Services').each(function(c){var b=Ext.clone(c);delete b.data.id;delete b.data.zoomLevel;d.push(b.data)});Ext.Ajax.request({url:'https://rambox.auth0.com/api/v2/users/'+Ext.decode(localStorage.getItem('profile')).user_id,method:'PATCH',headers:{authorization:'Bearer '+localStorage.getItem('id_token')},jsonData:{user_metadata:{services:d,services_lastupdate:c}},success:function(e){Ext.Msg.hide();var d=Ext.decode(localStorage.getItem('profile'));if(!d.user_metadata){d.user_metadata={}}d.user_metadata.services_lastupdate=c;localStorage.setItem('profile',Ext.encode(d));Ext.cq1('app-main').getViewModel().set('last_sync',(new Date(c)).toUTCString());Ext.toast({html:'<i class="fa fa-check fa-3x fa-pull-left" aria-hidden="true"></i> Your configuration were successfully backed up.',title:'Synchronize Configuration',width:300,align:'t',closable:!1});if(Ext.isFunction(a)){a.bind(b)()}},failure:function(c){if(c.status===401){return b.renewToken(b.backupConfiguration)}Ext.Msg.hide();Ext.toast({html:'<i class="fa fa-times fa-3x fa-pull-left" aria-hidden="true"></i> Error occurred when trying to backup your configuration.',title:'Synchronize Configuration',width:300,align:'t',closable:!1});if(Ext.isFunction(a)){a.bind(b)()}console.error(c)}})},restoreConfiguration:function(){var a=this;a.lock.getProfile(localStorage.getItem('id_token'),function(b,c){if(b){if(b.error===401||b.error==='Unauthorized'){return a.renewToken(a.checkConfiguration)}return Ext.Msg.show({title:'Error',message:'There was an error getting the profile: '+b.error_description,icon:Ext.Msg.ERROR,buttons:Ext.Msg.OK})}Ext.cq1('app-main').getController().removeAllServices(!1,function(){Ext.each(c.user_metadata.services,function(d){var a=Ext.create('Rambox.model.Service',d);a.save();Ext.getStore('Services').add(a)});require('electron').remote.getCurrentWindow().reload()})})},checkConfiguration:function(){var a=this;a.lock.getProfile(localStorage.getItem('id_token'),function(b,c){if(b){if(b.error===401||b.error==='Unauthorized'){return a.renewToken(a.checkConfiguration)}return Ext.Msg.show({title:'Error',message:'There was an error getting the profile: '+b.error_description,icon:Ext.Msg.ERROR,buttons:Ext.Msg.OK})}if(!c.user_metadata){Ext.toast({html:"You don't have any backup yet.",title:'Synchronize Configuration',width:300,align:'t',closable:!1});return}if(Math.floor(new Date(c.user_metadata.services_lastupdate)/1000)>Math.floor(new Date(Ext.decode(localStorage.getItem('profile')).user_metadata.services_lastupdate)/1000)){Ext.toast({html:'Your settings are out of date.',title:'Synchronize Configuration',width:300,align:'t',closable:!1})}else {Ext.toast({html:'Latest backup is already applied.',title:'Synchronize Configuration',width:300,align:'t',closable:!1})}})},renewToken:function(a){var b=this;Ext.Ajax.request({url:'https://rambox.auth0.com/delegation',method:'POST',jsonData:{grant_type:'urn:ietf:params:oauth:grant-type:jwt-bearer',client_id:auth0Cfg.clientID,refresh_token:localStorage.getItem('refresh_token'),api_type:'app'},success:function(c){var d=Ext.decode(c.responseText);localStorage.setItem('id_token',d.id_token);if(Ext.isFunction(a)){a.bind(b)()}},failure:function(b){console.error(b)}})},login:function(){var a=this;a.lock.show()},logout:function(){var a=this;localStorage.removeItem('profile');localStorage.removeItem('id_token');localStorage.removeItem('refresh_token');Ext.util.Cookies.set('auth0',!1)}},0,0,0,0,0,0,[Rambox.ux,'Auth0'],0);Ext.cmd.derive('Rambox.util.MD5',Ext.Base,{singleton:!0,encypt:function(b,d,c,a){d=d||!1;c=c||!1;a=a||8;function safe_add(f,g){var e=(f&65535)+(g&65535);var h=(f>>16)+(g>>16)+(e>>16);return h<<16|e&65535}function bit_rol(f,e){return f<<e|f>>>32-e}function md5_cmn(g,e,f,j,h,i){return safe_add(bit_rol(safe_add(safe_add(e,g),safe_add(j,i)),h),f)}function md5_ff(f,e,g,h,k,i,j){return md5_cmn(e&g|~e&h,f,e,k,i,j)}function md5_gg(g,e,h,f,k,i,j){return md5_cmn(e&f|h&~f,g,e,k,i,j)}function md5_hh(f,e,g,h,k,i,j){return md5_cmn(e^g^h,f,e,k,i,j)}function md5_ii(f,e,g,h,k,i,j){return md5_cmn(g^(e|~h),f,e,k,i,j)}function core_md5(i,k){i[k>>5]|=128<<k%32;i[(k+64>>>9<<4)+14]=k;var e=1732584193;var f=-271733879;var g=-1732584194;var h=271733878;for(var j=0;j<i.length;j+=16){var l=e;var m=f;var n=g;var o=h;e=md5_ff(e,f,g,h,i[j+0],7,-680876936);h=md5_ff(h,e,f,g,i[j+1],12,-389564586);g=md5_ff(g,h,e,f,i[j+2],17,606105819);f=md5_ff(f,g,h,e,i[j+3],22,-1044525330);e=md5_ff(e,f,g,h,i[j+4],7,-176418897);h=md5_ff(h,e,f,g,i[j+5],12,1200080426);g=md5_ff(g,h,e,f,i[j+6],17,-1473231341);f=md5_ff(f,g,h,e,i[j+7],22,-45705983);e=md5_ff(e,f,g,h,i[j+8],7,1770035416);h=md5_ff(h,e,f,g,i[j+9],12,-1958414417);g=md5_ff(g,h,e,f,i[j+10],17,-42063);f=md5_ff(f,g,h,e,i[j+11],22,-1990404162);e=md5_ff(e,f,g,h,i[j+12],7,1804603682);h=md5_ff(h,e,f,g,i[j+13],12,-40341101);g=md5_ff(g,h,e,f,i[j+14],17,-1502002290);f=md5_ff(f,g,h,e,i[j+15],22,1236535329);e=md5_gg(e,f,g,h,i[j+1],5,-165796510);h=md5_gg(h,e,f,g,i[j+6],9,-1069501632);g=md5_gg(g,h,e,f,i[j+11],14,643717713);f=md5_gg(f,g,h,e,i[j+0],20,-373897302);e=md5_gg(e,f,g,h,i[j+5],5,-701558691);h=md5_gg(h,e,f,g,i[j+10],9,38016083);g=md5_gg(g,h,e,f,i[j+15],14,-660478335);f=md5_gg(f,g,h,e,i[j+4],20,-405537848);e=md5_gg(e,f,g,h,i[j+9],5,568446438);h=md5_gg(h,e,f,g,i[j+14],9,-1019803690);g=md5_gg(g,h,e,f,i[j+3],14,-187363961);f=md5_gg(f,g,h,e,i[j+8],20,1163531501);e=md5_gg(e,f,g,h,i[j+13],5,-1444681467);h=md5_gg(h,e,f,g,i[j+2],9,-51403784);g=md5_gg(g,h,e,f,i[j+7],14,1735328473);f=md5_gg(f,g,h,e,i[j+12],20,-1926607734);e=md5_hh(e,f,g,h,i[j+5],4,-378558);h=md5_hh(h,e,f,g,i[j+8],11,-2022574463);g=md5_hh(g,h,e,f,i[j+11],16,1839030562);f=md5_hh(f,g,h,e,i[j+14],23,-35309556);e=md5_hh(e,f,g,h,i[j+1],4,-1530992060);h=md5_hh(h,e,f,g,i[j+4],11,1272893353);g=md5_hh(g,h,e,f,i[j+7],16,-155497632);f=md5_hh(f,g,h,e,i[j+10],23,-1094730640);e=md5_hh(e,f,g,h,i[j+13],4,681279174);h=md5_hh(h,e,f,g,i[j+0],11,-358537222);g=md5_hh(g,h,e,f,i[j+3],16,-722521979);f=md5_hh(f,g,h,e,i[j+6],23,76029189);e=md5_hh(e,f,g,h,i[j+9],4,-640364487);h=md5_hh(h,e,f,g,i[j+12],11,-421815835);g=md5_hh(g,h,e,f,i[j+15],16,530742520);f=md5_hh(f,g,h,e,i[j+2],23,-995338651);e=md5_ii(e,f,g,h,i[j+0],6,-198630844);h=md5_ii(h,e,f,g,i[j+7],10,1126891415);g=md5_ii(g,h,e,f,i[j+14],15,-1416354905);f=md5_ii(f,g,h,e,i[j+5],21,-57434055);e=md5_ii(e,f,g,h,i[j+12],6,1700485571);h=md5_ii(h,e,f,g,i[j+3],10,-1894986606);g=md5_ii(g,h,e,f,i[j+10],15,-1051523);f=md5_ii(f,g,h,e,i[j+1],21,-2054922799);e=md5_ii(e,f,g,h,i[j+8],6,1873313359);h=md5_ii(h,e,f,g,i[j+15],10,-30611744);g=md5_ii(g,h,e,f,i[j+6],15,-1560198380);f=md5_ii(f,g,h,e,i[j+13],21,1309151649);e=md5_ii(e,f,g,h,i[j+4],6,-145523070);h=md5_ii(h,e,f,g,i[j+11],10,-1120210379);g=md5_ii(g,h,e,f,i[j+2],15,718787259);f=md5_ii(f,g,h,e,i[j+9],21,-343485551);e=safe_add(e,l);f=safe_add(f,m);g=safe_add(g,n);h=safe_add(h,o)}return [e,f,g,h]}function str2binl(g){var f=[];var h=(1<<a)-1;for(var e=0;e<g.length*a;e+=a){f[e>>5]|=(g.charCodeAt(e/a)&h)<<e%32}return f}function binl2str(f){var g='';var h=(1<<a)-1;for(var e=0;e<f.length*32;e+=a){g+=String.fromCharCode(f[e>>5]>>>e%32&h)}return g}function binl2hex(f){var g=c?'0123456789ABCDEF':'0123456789abcdef';var h='';for(var e=0;e<f.length*4;e++){h+=g.charAt(f[e>>2]>>e%4*8+4&15)+g.charAt(f[e>>2]>>e%4*8&15)}return h}return d?binl2str(core_md5(str2binl(b),b.length*a)):binl2hex(core_md5(str2binl(b),b.length*a))}},0,0,0,0,0,0,[Rambox.util,'MD5'],0);Ext.cmd.derive('Rambox.profile.Offline',Ext.app.Profile,{isActive:function(){return !localStorage.getItem('id_token')},launch:function(){console.warn('USER NOT LOGGED IN')}},0,0,0,0,0,0,[Rambox.profile,'Offline'],0);Ext.cmd.derive('Rambox.profile.Online',Ext.app.Profile,{isActive:function(){return localStorage.getItem('id_token')},launch:function(){console.info('USER LOGGED IN')}},0,0,0,0,0,0,[Rambox.profile,'Online'],0);Ext.cmd.derive('Rambox.model.ServiceList',Ext.data.Model,{fields:[{name:'id',type:'string'},{name:'logo',type:'string'},{name:'name',type:'string'},{name:'description',type:'string',defaultValue:locale['services[27]']},{name:'url',type:'string'},{name:'type',type:'string'},{name:'js_unread',type:'string',defaultValue:''},{name:'titleBlink',type:'boolean',defaultValue:!1},{name:'allow_popups',type:'boolean',defaultValue:!1},{name:'manual_notifications',type:'boolean',defaultValue:!1},{name:'userAgent',type:'string',defaultValue:''},{name:'note',type:'string',defaultValue:''},{name:'custom_domain',type:'boolean',defaultValue:!1},{name:'dont_update_unread_from_title',type:'boolean',defaultValue:!1}]},0,0,0,0,0,0,[Rambox.model,'ServiceList'],0);Ext.cmd.derive('Rambox.store.ServicesList',Ext.data.Store,{model:'Rambox.model.ServiceList',proxy:{type:'memory'},sorters:[{property:'name',direction:'ASC'}],autoLoad:!0,autoSync:!0,pageSize:100000,data:[{id:'whatsapp',logo:'whatsapp.png',name:'WhatsApp',description:locale['services[0]'],url:'https://web.whatsapp.com/',type:'messaging',js_unread:'function checkUnread(){var i=0;document.querySelectorAll(".unread").forEach(function(e){0===e.querySelectorAll("[data-icon=muted]").length&&i++});updateBadge(i)}function updateBadge(count) { if (count && count >= 1) { rambox.setUnreadCount(count); } else { rambox.clearUnreadCount(); } }setInterval(checkUnread,1e3);',dont_update_unread_from_title:!0},{id:'slack',logo:'slack.png',name:'Slack',description:locale['services[1]'],url:'https://___.slack.com/',type:'messaging',js_unread:'function checkUnread(){var e=$(".p-channel_sidebar__channel--unread:not(.p-channel_sidebar__channel--muted)").length,a=0;$(".p-channel_sidebar__badge").each(function(){a+=isNaN(parseInt($(this).html()))?0:parseInt($(this).html())}),updateBadge(e,a)}function updateBadge(e,a){var n=a>0?"("+a+") ":e>0?"(\u2022) ":"";document.title=n+originalTitle}var originalTitle=document.title;setInterval(checkUnread,3e3);'},{id:'noysi',logo:'noysi.png',name:'Noysi',description:locale['services[2]'],url:'https://noysi.com/#/identity/sign-in',type:'messaging'},{id:'messenger',logo:'messenger.png',name:'Messenger',description:locale['services[3]'],url:'https://www.messenger.com/login/',type:'messaging',titleBlink:!0,note:'To enable desktop notifications, you have to go to Options inside Messenger.'},{id:'skype',logo:'skype.png',name:'Skype',description:locale['services[4]'],url:'https://web.skype.com/',type:'messaging',userAgent:'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2486.0 Safari/537.36 Edge/13.10586',note:'Text and Audio calls are supported only. <a href="https://github.com/saenzramiro/rambox/wiki/Skype" target="_blank">Read more...</a>'},{id:'hangouts',logo:'hangouts.png',name:'Hangouts',description:locale['services[5]'],url:'https://hangouts.google.com/',type:'messaging',titleBlink:!0,manual_notifications:!0,dont_update_unread_from_title:!0,js_unread:'function checkUnread(){updateBadge(document.getElementById("hangout-landing-chat").lastChild.contentWindow.document.body.getElementsByClassName("ee").length)}function updateBadge(e){e>=1?rambox.setUnreadCount(e):rambox.clearUnreadCount()}setInterval(checkUnread,3000);'},{id:'hipchat',logo:'hipchat.png',name:'HipChat',description:locale['services[6]'],url:'https://___.hipchat.com/chat',type:'messaging',js_unread:'function checkUnread(){var e=document.getElementsByClassName("hc-badge"),t=0;for(i=0;i<e.length;i++)t+=parseInt(e[i].innerHTML.trim());updateBadge(t)}function updateBadge(e){e>=1?document.title="("+e+") "+originalTitle:document.title=originalTitle}var originalTitle=document.title;setInterval(checkUnread,3000);',custom_domain:!0},{id:'telegram',logo:'telegram.png',name:'Telegram',description:locale['services[7]'],url:'https://web.telegram.org/',type:'messaging',js_unread:'function checkUnread(){var e=document.getElementsByClassName("im_dialog_badge badge"),t=0;for(i=0;i<e.length;i++)if(!e[i].classList.contains("im_dialog_badge_muted")){t+=parseInt(e[i].innerHTML.trim())}updateBadge(t)}function updateBadge(e){e>=1?rambox.setUnreadCount(e):rambox.clearUnreadCount()}setInterval(checkUnread,3000);',dont_update_unread_from_title:!0},{id:'wechat',logo:'wechat.png',name:'WeChat',description:locale['services[8]'],url:'https://web.wechat.com/',type:'messaging'},{id:'gmail',logo:'gmail.png',name:'Gmail',description:locale['services[9]'],url:'https://mail.google.com/mail/',type:'email',allow_popups:!0,js_unread:'function checkUnread(){var a=document.getElementsByClassName("aim")[0];updateBadge(-1!=a.textContent.indexOf("(")&&(t=parseInt(a.textContent.replace(/[^0-9]/g,""))))}function updateBadge(a){a>=1?rambox.setUnreadCount(a):rambox.clearUnreadCount()}setInterval(checkUnread,3e3);',note:'To enable desktop notifications, you have to go to Settings inside Gmail. <a href="https://support.google.com/mail/answer/1075549?ref_topic=3394466" target="_blank">Read more...</a>',dont_update_unread_from_title:!0},{id:'inbox',logo:'inbox.png',name:'Inbox',description:locale['services[10]'],url:'http://inbox.google.com/?cid=imp',type:'email',manual_notifications:!0,js_unread:'function checkUnread(){updateBadge(document.getElementsByClassName("ss").length)}function updateBadge(a){a>=1?document.title="("+a+") "+originalTitle:document.title=originalTitle}var originalTitle=document.title;setInterval(checkUnread,3e3);',note:'Please be sure to sign out of Hangouts inside Inbox, as it causes problems. <a href="https://github.com/saenzramiro/rambox/wiki/Inbox" target="_blank">Read more...</a>'},{id:'chatwork',logo:'chatwork.png',name:'ChatWork',description:locale['services[11]'],url:'https://www.chatwork.com/login.php',type:'messaging',note:'To enable desktop notifications, you have to go to Options inside ChatWork.'},{id:'groupme',logo:'groupme.png',name:'GroupMe',description:locale['services[12]'],url:'https://web.groupme.com/signin',type:'messaging',note:'To enable desktop notifications, you have to go to Options inside GroupMe. To count unread messages, be sure to be in Chats.',js_unread:'function checkUnread(){var a=document.querySelectorAll(".badge-count:not(.ng-hide)"),b=0;for(i=0;i<a.length;i++)b+=parseInt(a[i].innerHTML.trim());updateBadge(b)}function updateBadge(a){a>=1?rambox.setUnreadCount(a):rambox.clearUnreadCount()}setInterval(checkUnread,3e3);',dont_update_unread_from_title:!0},{id:'grape',logo:'grape.png',name:'Grape',description:locale['services[13]'],url:'https://chatgrape.com/accounts/login/',type:'messaging'},{id:'gitter',logo:'gitter.png',name:'Gitter',description:locale['services[14]'],url:'https://gitter.im/',type:'messaging',js_unread:'function checkUnread(){var e=document.getElementsByClassName("room-item__unread-indicator"),t=0;for(i=0;i<e.length;i++)t+=isNaN(parseInt(e[i].innerHTML.trim())) ? 0 : parseInt(e[i].innerHTML.trim());updateBadge(t)}function updateBadge(e){e>=1?document.title="("+e+") "+originalTitle:document.title=originalTitle}var originalTitle=document.title;setInterval(checkUnread,3000);'},{id:'steam',logo:'steam.png',name:'Steam Chat',description:locale['services[15]'],url:'https://steamcommunity.com/chat',type:'messaging',note:'To enable desktop notifications, you have to go to Options inside Steam Chat.',js_unread:'CTitleManager.UpdateTitle = function(){};function checkUnread(){var e=document.getElementsByClassName("unread_message_count_value"),t=0;for(i=0;i<e.length;i++)t+=isNaN(parseInt(e[i].innerHTML.trim())) || e[i].parentNode.style.display === "none" ? 0 : parseInt(e[i].innerHTML.trim());updateBadge(t/2)}function updateBadge(e){e>=1?document.title="("+e+") "+originalTitle:document.title=originalTitle}var originalTitle=document.title;setInterval(checkUnread,3000);'},{id:'discord',logo:'discord.png',name:'Discord',description:locale['services[16]'],url:'https://discordapp.com/login',type:'messaging',titleBlink:!0,js_unread:'function checkUnread(){var a=document.getElementsByClassName("guild unread").length,b=0,c=document.getElementsByClassName("badge");for(i=0;i<c.length;i++)b+=parseInt(c[i].innerHTML.trim());updateBadge(a,b)}function updateBadge(a,b){var c=b>0?"("+b+") ":a>0?"(\u2022) ":"";document.title=c+originalTitle}var originalTitle=document.title;setInterval(checkUnread,3e3);',note:'To enable desktop notifications, you have to go to Options inside Discord.',dont_update_unread_from_title:!0,userAgent:'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36'},{id:'outlook',logo:'outlook.png',name:'Outlook',description:locale['services[17]'],url:'https://mail.live.com/',type:'email',manual_notifications:!0,js_unread:'function checkUnread(){var a=$(".subfolders [role=treeitem]:first .treeNodeRowElement").siblings().last().text();updateBadge(""===a?0:parseInt(a))}function updateBadge(a){a>=1?document.title="("+a+") "+originalTitle:document.title=originalTitle}var originalTitle=document.title;setInterval(checkUnread,3e3);'},{id:'outlook365',logo:'outlook365.png',name:'Outlook 365',description:locale['services[18]'],url:'https://outlook.office.com/owa/',type:'email',manual_notifications:!0,js_unread:'function checkUnread(){var a=$(".subfolders [role=treeitem]:first .treeNodeRowElement").siblings().last().text();updateBadge(""===a?0:parseInt(a))}function updateBadge(a){a>=1?document.title="("+a+") "+originalTitle:document.title=originalTitle}var originalTitle=document.title;setInterval(checkUnread,3e3);'},{id:'yahoo',logo:'yahoo.png',name:'Yahoo! Mail',description:locale['services[19]'],url:'https://mail.yahoo.com/',type:'email',note:'To enable desktop notifications, you have to go to Options inside Yahoo! Mail.',userAgent:'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36'},{id:'protonmail',logo:'protonmail.png',name:'ProtonMail',description:locale['services[20]'],url:'https://mail.protonmail.com/inbox',type:'email'},{id:'protonmailch',logo:'protonmail.png',name:'ProtonMail CH',description:locale['services[20]'],url:'https://app.protonmail.ch/inbox',type:'email',note:'Read <a href="https://protonmail.com/support/knowledge-base/what-is-the-difference-between-protonmail-com-and-protonmail-ch/" target="_blank">HERE</a> to see the differences between protonmail.com and protonmail.ch.'},{id:'tutanota',logo:'tutanota.png',name:'Tutanota',description:locale['services[21]'],url:'https://app.tutanota.de/',type:'email'},{id:'hushmail',logo:'hushmail.png',name:'Hushmail',description:locale['services[22]'],url:'https://www.hushmail.com/hushmail/index.php',type:'email'},{id:'missive',logo:'missive.png',name:'Missive',description:locale['services[23]'],url:'https://mail.missiveapp.com/login',type:'messaging',js_unread:'function checkUnread(){var e=document.getElementsByClassName("unseen-count"),t=0;for(i=0;i<e.length;i++)t+=parseInt(e[i].innerHTML.trim());updateBadge(t)}function updateBadge(e){e>=1?document.title="("+e+") "+originalTitle:document.title=originalTitle}var originalTitle=document.title;setInterval(checkUnread,3000);'},{id:'rocketchat',logo:'rocketchat.png',name:'Rocket Chat',description:locale['services[24]'],url:'___',type:'messaging',note:'You have to use this service by signing in with your email or username (No SSO allowed yet).'},{id:'wire',logo:'wire.png',name:'Wire',description:locale['services[25]'],url:'https://app.wire.com/',type:'messaging'},{id:'sync',logo:'sync.png',name:'Sync',description:locale['services[26]'],url:'https://m.wantedly.com/login',type:'messaging'},{id:'bearychat',logo:'bearychat.png',name:'BearyChat',url:'https://___.bearychat.com/',type:'messaging'},{id:'yahoomessenger',logo:'yahoomessenger.png',name:'Yahoo! Messenger',description:locale['services[28]'],url:'https://messenger.yahoo.com/',type:'messaging',js_unread:'function checkUnread(){updateBadge(document.getElementsByClassName("list-item-unread-indicator").length)}function updateBadge(e){e>=1?document.title="("+e+") "+originalTitle:document.title=originalTitle}var originalTitle=document.title;setInterval(checkUnread,3000);'},{id:'voxer',logo:'voxer.png',name:'Voxer',description:locale['services[29]'],url:'https://web.voxer.com/',type:'messaging'},{id:'dasher',logo:'dasher.png',name:'Dasher',description:locale['services[30]'],url:'https://dasher.im/',type:'messaging'},{id:'flowdock',logo:'flowdock.png',name:'Flowdock',description:locale['services[31]'],url:'https://www.flowdock.com/login',type:'messaging'},{id:'mattermost',logo:'mattermost.png',name:'Mattermost',description:locale['services[32]'],url:'___',type:'messaging',js_unread:'Object.defineProperty(document,"title",{configurable:!0,set:function(a){document.getElementsByTagName("title")[0].innerHTML=a[0]==="*"?"(\u2022) Mattermost":a},get:function(){return document.getElementsByTagName("title")[0].innerHTML}});'},{id:'dingtalk',logo:'dingtalk.png',name:'DingTalk',description:locale['services[33]'],url:'https://im.dingtalk.com/',type:'messaging'},{id:'mysms',logo:'mysms.png',name:'mysms',description:locale['services[34]'],url:'https://app.mysms.com/',type:'messaging',js_unread:'function checkUnread(){var e=document.getElementsByClassName("unread"),t=0;for(i=0;i<e.length;i++)t+=parseInt(e[i].firstChild.innerHTML.trim());updateBadge(t)}function updateBadge(e){e>=1?document.title="("+e+") "+originalTitle:document.title=originalTitle}"https://app.mysms.com/#login"===document.baseURI&&(document.getElementsByClassName("innerPanel")[0].rows[0].style.display="none",document.getElementsByClassName("innerPanel")[0].rows[1].cells[0].firstElementChild.style.display="none",document.getElementsByClassName("msisdnLoginPanel")[0].style.display="inline");var originalTitle=document.title;setInterval(checkUnread,3000);',note:'You have to use this service by signing in with your mobile number.'},{id:'icq',logo:'icq.png',name:'ICQ',description:locale['services[35]'],url:'https://web.icq.com/',type:'messaging',js_unread:'function checkUnread(){updateBadge(parseInt(document.getElementsByClassName("nwa-msg-counter")[0].style.display==="block"?document.getElementsByClassName("nwa-msg-counter")[0].innerHTML.trim():0))}function updateBadge(e){e>=1?document.title="("+e+") "+originalTitle:document.title=originalTitle}var originalTitle=document.title;setInterval(checkUnread,3000);',titleBlink:!0},{id:'tweetdeck',logo:'tweetdeck.png',name:'TweetDeck',description:locale['services[36]'],url:'https://tweetdeck.twitter.com/',type:'messaging'},{id:'custom',logo:'custom.png',name:'_Custom Service',description:locale['services[38]'],url:'___',type:'custom',allow_popups:!0},{id:'zinc',logo:'zinc.png',name:'Zinc',description:locale['services[39]'],url:'https://zinc-app.com/',type:'messaging'},{id:'freenode',logo:'freenode.png',name:'FreeNode',description:locale['services[40]'],url:'https://webchat.freenode.net/',type:'messaging'},{id:'mightytext',logo:'mightytext.png',name:'Mighty Text',description:locale['services[41]'],url:'https://mightytext.net/web/',type:'messaging'},{id:'roundcube',logo:'roundcube.png',name:'Roundcube',description:locale['services[42]'],url:'___',type:'email'},{id:'horde',logo:'horde.png',name:'Horde',description:locale['services[43]'],url:'___',type:'email',js_unread:'function checkUnread(){var e=document.getElementsByClassName("count"),t=0;for(i=0;i<e.length;i++)t+=parseInt(e[i].innerHTML.match(/d+/g));updateBadge(t)}function updateBadge(e){e>=1?document.title="("+e+") "+originalTitle:document.title=originalTitle}var originalTitle=document.title;setInterval(checkUnread,3000);',note:'To enable desktop notifications and automatic mail check, you have to go to Options inside Horde.'},{id:'squirrelmail',logo:'squirrelmail.png',name:'SquirrelMail',description:locale['services[44]'],url:'___',type:'email',js_unread:'function checkUnread(){var e=document.getElementsByClassName("leftunseen"),t=0;for(i=0;i<e.length;i++)t+=parseInt(e[i].innerHTML);updateBadge(t)}function updateBadge(e){e>=1?document.title="("+e+") "+originalTitle:document.title=originalTitle}var originalTitle=document.title;setInterval(checkUnread,3000);'},{id:'zohoemail',logo:'zohoemail.png',name:'Zoho Email',description:locale['services[45]'],url:'https://mail.zoho.com/',type:'email',js_unread:'zmail.aInfo[zmail.accId].mailId = "a";',note:'To enable desktop notifications, you have to go to Settings inside Zoho Email.'},{id:'zohochat',logo:'zohochat.png',name:'Zoho Chat',description:locale['services[46]'],url:'https://chat.zoho.com/',type:'messaging',js_unread:'NotifyByTitle.show = function(){};NotifyByTitle.start = function(){};NotifyByTitle.stop = function(){};function checkUnread(){var t=0;$(".msgnotify").each(function() { t += isNaN(parseInt($(this).html())) ? 0 : parseInt(parseInt($(this).html())) });updateBadge(t)}function updateBadge(e){e>=1?document.title="("+e+") "+originalTitle:document.title=originalTitle}var originalTitle=document.title;setInterval(checkUnread,3000);'},{id:'aol',logo:'aol.png',name:'Aol',description:'Free and simple (old) webmail service.',url:'https://mail.aol.com/',type:'email'},{id:'glip',logo:'glip.png',name:'Glip',description:'Glip is fully searchable, real-time group chat & video chat, task management, file sharing, calendars and more.',url:'https://glip.com/',type:'messaging',note:'To enable desktop notifications, you have to go to Options inside Glip.'},{id:'yandex',logo:'yandex.png',name:'Yandex Mail',description:'Yandex is a free webmail service with unlimited mail storage, protection from viruses and spam, access from web interface, etc.',url:'https://mail.yandex.com/',type:'email',js_unread:'function checkUnread(){var t=parseInt($(".mail-MessagesFilters-Item_unread .mail-LabelList-Item_count").html());updateBadge(isNaN(t)?0:t)}function updateBadge(e){e>=1?document.title="("+e+") "+originalTitle:document.title=originalTitle}var originalTitle=document.title;setInterval(checkUnread,3000);'},{id:'irccloud',logo:'irccloud.png',name:'IRCCloud',description:'IRCCloud is a modern IRC client that keeps you connected, with none of the baggage.',url:'https://www.irccloud.com/',type:'messaging',js_unread:'function checkUnread(){var t=0;[].map.call(document.querySelectorAll(".bufferBadges > .badge"),n=>n.textContent?parseInt(n.textContent,10):0).reduce((x,y)=>x+y,0);updateBadge(t)}function updateBadge(e){e>=1?document.title="("+e+") "+originalTitle:document.title=originalTitle}var originalTitle=document.title;setInterval(checkUnread,3000);',custom_domain:!0},{id:'ryver',logo:'ryver.png',name:'Ryver',description:'Ryver is a team communication tool that organizes team collaboration, chats, files, and even emails into a single location, for any size team, for FREE.',url:'https://___.ryver.com/',type:'messaging',js_unread:'function checkUnread(){updateBadge(parseInt(document.getElementsByClassName("scene-space-tab-button--flash").length))}function updateBadge(a){a>=1?rambox.setUnreadCount(a):rambox.clearUnreadCount()}setInterval(checkUnread,3e3);'},{id:'kiwi',logo:'kiwi.png',name:'Kiwi IRC',description:'KiwiIRC makes Web IRC easy. A hand-crafted IRC client that you can enjoy. Designed to be used easily and freely.',url:'https://kiwiirc.com/client',type:'messaging',js_unread:'function getUnreadCount(){var a=0;$(".activity").each(function(){a+=parseInt($(this).html())});var b=!1;return $(".panel[style*=\'display:block\'] .msg").each(function(){b?a++:$(this).hasClass("last_seen")&&(b=!0)}),a}function updateTitle(a){count=getUnreadCount(),cleanTitle=a.match(re),null!==cleanTitle&&cleanTitle.length>1?cleanTitle=cleanTitle[1]:cleanTitle=a,a=count>0?"("+getUnreadCount()+") "+cleanTitle:cleanTitle,$("title").text(a)}var re=/(d+)[ ](.*)/;Object.defineProperty(document,"title",{configurable:!0,set:function(a){updateTitle(a)},get:function(){return $("title").text()}}),setInterval(function(){updateTitle(document.title)},3e3);',custom_domain:!0},{id:'icloud',logo:'icloud.png',name:'iCloud Mail',description:'iCloud makes sure you always have the latest versions of your most important things \u2014 documents, photos, notes, contacts, and more \u2014 on all your devices. It can even help you locate a missing iPhone, iPad, iPod touch or Mac.',url:'https://www.icloud.com/#mail',type:'email',js_unread:'function checkUnread(){updateBadge(document.querySelector(".current-app").querySelector(".sb-badge").style.display==="none"?0:parseInt(document.querySelector(".current-app").querySelector(".text").innerHTML.trim()))}function updateBadge(a){a>=1?rambox.setUnreadCount(a):rambox.clearUnreadCount()}setInterval(checkUnread,3e3);',dont_update_unread_from_title:!0},{id:'rainloop',logo:'rainloop.png',name:'RainLoop',description:'RainLoop Webmail - Simple, modern & fast web-based email client.',url:'___',type:'email',js_unread:'function checkUnread(){var t=document.querySelectorAll(".e-item .e-link:not(.hidden) .badge.pull-right.count"),e=0;for(i=0;i<t.length;i++)parseInt(t[i].textContent.trim())%1==0&&"block"==window.getComputedStyle(t[i]).display&&(count=parseInt(t[i].textContent.trim()),e+=parseInt(t[i].textContent.trim()));updateBadge(e)}function updateBadge(t){document.title=t>=1?"("+t+") "+originalTitle:originalTitle}var originalTitle=document.title;setInterval(checkUnread,1e3);'},{id:'amium',logo:'amium.png',name:'Amium',description:'Amium turns any file into a real-time activity feed and conversation. So you can work better, together.',url:'https://___.amium.com/',type:'messaging'},{id:'hootsuite',logo:'hootsuite.png',name:'Hootsuite',description:'Enhance your social media management with Hootsuite, the leading social media dashboard. Manage multiple networks and profiles and measure your campaign results.',url:'https://hootsuite.com/dashboard',type:'messaging'},{id:'zimbra',logo:'zimbra.png',name:'Zimbra',description:'Over 500 million people rely on Zimbra and enjoy enterprise-class open source email collaboration at the lowest TCO in the industry. Discover the benefits!',url:'___',type:'email',js_unread:'function check_unread(){update_badge(appCtxt.getById(ZmFolder.ID_INBOX).numUnread)}function update_badge(a){document.title=a>0?"("+a+") "+original_title:original_title}const original_title=document.title;setInterval(check_unread,3e3);'},{id:'kaiwa',logo:'kaiwa.png',name:'Kaiwa',description:'A modern and Open Source Web client for XMPP.',url:'___',type:'messaging',js_unread:'function check_unread() { let count=0; for (let node of document.getElementsByClassName("unread")){ if (node.innerHTML){ count += parseInt(node.innerHTML); } } update_badge(count);}function update_badge(a) { document.title = a > 0 ? "(" + a + ") " + original_title : original_title}const original_title = document.title;setInterval(check_unread, 3e3);'},{id:'movim',logo:'movim.png',name:'Movim',description:'Movim is a decentralized social network, written in PHP and HTML5 and based on the XMPP standard protocol.',url:'https://___.movim.eu/',type:'messaging',js_unread:'function checkUnread(){var a=document.getElementsByClassName("color dark"),b=0;for(i=0;i<a.length;i++){var c=a[i].getElementsByClassName("counter");for(ii=0;ii<c.length;ii++)parseInt(c[ii].textContent.trim())%1===0&&(b+=parseInt(c[ii].textContent.trim()))}updateBadge(b)}function updateBadge(a){a>=1?document.title="("+a+") "+originalTitle:document.title=originalTitle}var originalTitle=document.title;setInterval(checkUnread,3e3);',custom_domain:!0},{id:'pushbullet',logo:'pushbullet.png',name:'Pushbullet',description:'Pushbullet connects your devices, making them feel like one.',url:'https://www.pushbullet.com/',type:'messaging'},{id:'riot',logo:'riot.png',name:'Riot',description:'Riot is a simple and elegant collaboration environment that gathers all of your different conversations and app integrations into one single app.',url:'https://riot.im/app/',type:'messaging',js_unread:'function checkUnread(){var a=document.getElementsByClassName("mx_RoomTile_nameContainer"),b=0;for(i=0;i<a.length;i++){var c=a[i].getElementsByClassName("mx_RoomTile_badge");for(ii=0;ii<c.length;ii++)parseInt(c[ii].textContent.trim())%1===0&&(b+=parseInt(c[ii].textContent.trim()))}updateBadge(b)}function updateBadge(a){a>=1?document.title="("+a+") "+originalTitle:document.title=originalTitle}var originalTitle=document.title;setInterval(checkUnread,1e3);',custom_domain:!0},{id:'socialcast',logo:'socialcast.png',name:'Socialcast',description:'Socialcast is the premier enterprise social networking platform that connects people to the knowledge, ideas and resources they need to work more effectively.',url:'https://___.socialcast.com/',type:'messaging'},{id:'fleep',logo:'fleep.png',name:'Fleep',description:'Fleep enables communication within and across organizations - be it your team chats, project communication or 1:1 conversations.',url:'https://fleep.io/chat',type:'messaging',js_unread:'document.getElementsByClassName("google-login-area")[0].remove();document.getElementsByClassName("microsoft-login-area")[0].remove();'},{id:'spark',logo:'spark.png',name:'Cisco Spark',description:'Cisco Spark is for group chat, video calling, and sharing documents with your team. It\u2019s all backed by Cisco security and reliability.',url:'https://web.ciscospark.com/',type:'messaging'},{id:'drift',logo:'drift.png',name:'Drift',description:'Drift is a messaging app that makes it easy for businesses to talk to their website visitors and customers in real-time, from anywhere.',url:'https://app.drift.com/',type:'messaging'},{id:'typetalk',logo:'typetalk.png',name:'Typetalk',description:'Typetalk brings fun and ease to team discussions through instant messaging on desktop and mobile devices.',url:'https://typetalk.in/signin',type:'messaging'},{id:'openmailbox',logo:'openmailbox.png',name:'Openmailbox',description:'Free mail hosting. Respect your rights and your privacy.',url:'https://app.openmailbox.org/webmail/',type:'email'},{id:'flock',logo:'flock.png',name:'Flock',description:'Flock is a free enterprise tool for business communication. Packed with tons of productivity features, Flock drives efficiency and boosts speed of execution.',url:'https://web.flock.co/',type:'messaging',js_unread:'function checkUnread(){var a=document.getElementsByClassName("unreadMessages no-unread-mentions has-unread"),b=0;for(i=0;i<a.length;i++)b+=parseInt(a[i].innerHTML.trim());updateBadge(b)}function updateBadge(a){a>=1?rambox.setUnreadCount(a):rambox.clearUnreadCount()}setInterval(checkUnread,3e3);',dont_update_unread_from_title:!0},{id:'crisp',logo:'crisp.png',name:'Crisp',description:'Connect your customers to your team.',url:'https://app.crisp.im/inbox',type:'messaging'},{id:'smooch',logo:'smooch.png',name:'Smooch',description:'Unified multi-channel messaging for businesses, bots and software makers.',url:'https://app.smooch.io/',type:'messaging'},{id:'xing',logo:'xing.png',name:'XING',description:'Career-oriented social networking',url:'https://www.xing.com/messages/conversations',type:'messaging',js_unread:"(function() { let originalTitle = document.title; function checkUnread() { let count = null; let notificationElement = document.querySelector('[data-update=\"unread_conversations\"]'); if (notificationElement && notificationElement.style.display !== 'none') { count = parseInt(notificationElement.textContent.trim(), 10); } updateBadge(count); } function updateBadge(count) { if (count && count >= 1) { rambox.setUnreadCount(count); } else { rambox.clearUnreadCount(); } } setInterval(checkUnread, 3000); checkUnread(); })();",dont_update_unread_from_title:!0},{id:'threema',logo:'threema.png',name:'Threema',description:'Seriously secure messaging',url:'https://web.threema.ch/',type:'messaging',js_unread:"(function () { let unreadCount = 0; function checkUnread() { let newUnread = 0; try { let webClientService = angular.element(document.documentElement).injector().get('WebClientService'); let conversations = webClientService.conversations.conversations; conversations.forEach(function(conversation) { newUnread += conversation.unreadCount; }); } catch (e) { } if (newUnread !== unreadCount) { unreadCount = newUnread; updateBadge(unreadCount); } } function updateBadge(count) { if (count && count >= 1) { rambox.setUnreadCount(count); } else { rambox.clearUnreadCount(); } } setInterval(checkUnread, 3000); checkUnread(); })();",dont_update_unread_from_title:!0},{id:'workplace',logo:'workplace.png',name:'Workplace',description:'Connect everyone in your company and turn ideas into action. Through group discussion, a personalised News Feed, and voice and video calling, work together and get more done. Workplace is an ad-free space, separate from your personal Facebook account.',url:'https://___.facebook.com/',type:'messaging'},{id:'teams',logo:'teams.png',name:'Teams',description:'Microsoft Teams is the chat-based workspace in Office 365 that integrates all the people, content, and tools your team needs to be more engaged and effective.',url:'https://teams.microsoft.com',type:'messaging',userAgent:'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.2883.87 Safari/537.36'},{id:'kezmo',logo:'kezmo.png',name:'Kezmo',description:'Kezmo is an enterprise chat and collaboration tool to help teams get things done. It\u2019s an email alternative for secure team communication.',url:'https://app.kezmo.com/web/',type:'messaging'},{id:'lounge',logo:'lounge.png',name:'The Lounge',description:'Self-hosted web IRC client.',url:'___',type:'messaging',js_unread:'function checkUnread(){var a=document.getElementsByClassName("badge highlight"),b=0;for(i=0;i<a.length;i++)parseInt(a[i].textContent.trim())%1===0&&(b+=parseInt(a[i].textContent.trim()));updateBadge(b)}function updateBadge(a){a>=1?document.title="("+a+") "+originalTitle:document.title=originalTitle}var originalTitle=document.title;setInterval(checkUnread,1e3);'},{id:'linkedin',logo:'linkedin.png',name:'LinkedIn Messaging',description:'Manage your professional identity. Build and engage with your professional network. Access knowledge, insights and opportunities.',url:'https://www.linkedin.com/messaging',type:'messaging'},{id:'zyptonite',logo:'zyptonite.png',name:'Zyptonite',description:'Zyptonite is the ultimate cyber secure communication tool for enterprise customers designed to address the need to securely communicate via voice, video, and chat, and transfer files and information across a global mobile workforce.',url:'https://app.zyptonite.com/',type:'messaging',js_unread:'function checkUnread(){var a=document.getElementsByClassName("z-messages"),b=0;for(i=0;i<a.length;i++)b+=parseInt(a[i].innerHTML.trim());updateBadge(b)}function updateBadge(a){a>=1?rambox.setUnreadCount(a):rambox.clearUnreadCount()}setInterval(checkUnread,3e3);',dont_update_unread_from_title:!0},{id:'fastmail',logo:'fastmail.png',name:'FastMail',description:'Secure, reliable email hosting for businesses, families and professionals. Premium email with no ads, excellent spam protection and rapid personal support.',url:'https://www.fastmail.com/mail/',type:'mail',js_unread:'function checkUnread(){var e=document.getElementsByClassName("v-FolderSource-badge"),t=0;for(i=0;i<e.length;i++)t+=isNaN(parseInt(e[i].innerHTML.trim())) ? 0 : parseInt(e[i].innerHTML.trim());updateBadge(t)}function updateBadge(e){e>=1?document.title="("+e+")"+originalTitle:document.title=originalTitle}var originalTitle=document.title;setInterval(checkUnread,3000);setTimeout(function(){O.WindowController.openExternal=function(a){var b=document.createElement("a");b.href=a,b.setAttribute("target","_blank"),b.click()};},3000);',note:'To enable desktop notifications, you have to go to Settings inside FastMail.'},{id:'hibox',logo:'hibox.png',name:'Hibox',description:'Hibox is a secure and private messaging platform for your business.',url:'https://app.hibox.co/',type:'messaging'},{id:'jandi',logo:'jandi.png',name:'Jandi',description:'Jandi is a group-oriented enterprise messaging platform with an integrated suite of collaboration tools for workplace.',url:'https://___.jandi.com/',type:'messaging'},{id:'messengerpages',logo:'messengerpages.png',name:'Messenger for Pages',description:'Chat with the people of your Facebook Page.',url:'https://facebook.com/___/inbox/',type:'messaging',js_unread:'function remove(e){var r=document.getElementById(e);return r.parentNode.removeChild(r)}remove("pagelet_bluebar"),remove("pages_manager_top_bar_container");'},{id:'vk',logo:'vk.png',name:'VK Messenger',description:'Simple and Easy App for Messaging on VK.',url:'https://vk.com/im',type:'messaging',js_unread:'function checkUnread(){updateBadge(parseInt(document.getElementById("l_msg").innerText.replace(/D+/g,"")))}function updateBadge(e){e>=1?document.title="("+e+") "+originalTitle:document.title=originalTitle}var originalTitle=document.title;setInterval(checkUnread,3000);'},{id:'mastodon',logo:'mastodon.png',name:'Mastodon',description:'Mastodon is a free, open-source social network server. A decentralized solution to commercial platforms, it avoids the risks of a single company monopolizing your communication. Anyone can run Mastodon and participate in the social network seamlessly.',url:'https://mastodon.social/auth/sign_in',type:'messaging',custom_domain:!0,note:'<a href="https://instances.mastodon.xyz/" target="_blank">List of instances</a>'},{id:'teamworkchat',logo:'teamworkchat.png',name:'Teamwork Chat',description:'Say goodbye to email. Take your online collaboration to the next level with Teamwork Chat and keep all team discussions in one place. Chat to your team in a fun and informal way with Teamwork Chat.',url:'https://___.teamwork.com/chat',type:'messaging',js_unread:'function checkUnread(){updateBadge(parseInt(document.getElementsByClassName("sidebar-notification-indicator").length > 0 ? document.getElementsByClassName("sidebar-notification-indicator")[0].innerHTML : 0))}function updateBadge(a){a>=1?rambox.setUnreadCount(a):rambox.clearUnreadCount()}setInterval(checkUnread,3e3);',dont_update_unread_from_title:!0},{id:'clocktweets',logo:'clocktweets.png',name:'ClockTweets',description:'Schedule your Tweets with love. Save time and manage your social media strategy easily.',url:'https://clocktweets.com/dashboard/',type:'messaging'},{id:'intercom',logo:'intercom.png',name:'Intercom',description:'Intercom makes it easy to communicate with your customers personally, at scale. Designed to feel like the messaging apps you use every day, Intercom lets you talk to consumers almost anywhere: inside your app, on your website, across social media and via email.',url:'https://app.intercom.io',type:'messaging',js_unread:'function checkUnread(){var a=document.getElementsByClassName("unread")[0];updateBadge(t=a===undefined?0:parseInt(a.textContent.replace(/[^0-9]/g,"")))}function updateBadge(a){a>=1?rambox.setUnreadCount(a):rambox.clearUnreadCount()}setInterval(checkUnread,3000);',dont_update_unread_from_title:!0},{id:'allo',logo:'allo.png',name:'Allo',description:'Google Allo is a smart messaging app that helps you say more and do more. Express yourself better with stickers, doodles, and HUGE emojis & text. Allo also brings you the Google Assistant.',url:'https://allo.google.com/web',type:'messaging',js_unread:'function checkUnread(){var e=document.querySelectorAll(".hasUnread.conversation_item"),n=0;for(i=0;i<e.length;i++){var r="none"===e[i].querySelector("#muted").style.display?parseInt(e[i].querySelector(".unreadCount").innerHTML.trim()):0;n+=isNaN(r)?0:r}updateBadge(n)}function updateBadge(e){e&&e>=1?rambox.setUnreadCount(e):rambox.clearUnreadCount()}setInterval(checkUnread,3e3);',dont_update_unread_from_title:!0},{id:'Kune',logo:'kune.png',name:'Kune',description:'Kune is a web tool, based on Apache Wave, for creating environments of constant inter-communication, collective intelligence, knowledge and shared work.',url:'https://kune.cc',type:'messaging'},{id:'googlevoice',logo:'googlevoice.png',name:'Google Voice',description:'A free phone number for life. Stay in touch from any screen. Use your free number to text, call, and check voicemail all from one app. Plus, Google Voice works on all of your devices so you can connect and communicate how you want.',url:'https://voice.google.com',type:'messaging',js_unread:'function parseIntOrZero(e){return isNaN(parseInt(e))?0:parseInt(e)}function checkUnread(){var e=document.querySelector(".msgCount"),n=0;e?n=parseIntOrZero(e.innerHTML.replace(/[() ]/gi,"")):["Messages","Calls","Voicemail"].forEach(function(e){var r=document.querySelector(\'gv-nav-button[tooltip="\'+e+\'"] div[aria-label="Unread count"]\');r&&(n+=parseIntOrZero(r.innerHTML))}),updateBadge(n)}function updateBadge(e){var n=e>0?"("+e+") ":"";document.title=n+originalTitle}var originalTitle=document.title;setInterval(checkUnread,3000);'},{id:'sandstorm',logo:'sandstorm.png',name:'Sandstorm',description:'Sandstorm is a self-hostable web productivity suite.',url:'https://oasis.sandstorm.io/',type:'messaging',custom_domain:!0,allow_popups:!0},{id:'gadugadu',logo:'gadugadu.png',name:'Gadu-Gadu',description:'The most popular Polish messenger.',url:'https://www.gg.pl/',type:'messaging'},{id:'mailru',logo:'mailru.png',name:'Mail.Ru',description:'Free voice and video calls, ICQ support, Odnoklassniki, VKontakte, Facebook, online games, free SMS.',url:'http://webagent.mail.ru/webim/agent/popup.html',type:'email'},{id:'zulip',logo:'zulip.png',name:'Zulip',description:"The world's most productive group chat",url:'https://___.zulipchat.com/',type:'messaging',custom_domain:!0}]},0,0,0,0,['store.serviceslist'],0,[Rambox.store,'ServicesList'],0);Ext.cmd.derive('Rambox.model.Service',Ext.data.Model,{identifier:'sequential',proxy:{type:'localstorage',id:'services'},fields:[{name:'id',type:'int'},{name:'position',type:'int'},{name:'type',type:'string'},{name:'logo',type:'string'},{name:'name',type:'string'},{name:'url',type:'string'},{name:'align',type:'string',defaultValue:'left'},{name:'notifications',type:'boolean',defaultValue:!0},{name:'muted',type:'boolean',defaultValue:!1},{name:'tabname',type:'boolean',defaultValue:!0},{name:'statusbar',type:'boolean',defaultValue:!0},{name:'displayTabUnreadCounter',type:'boolean',defaultValue:!0},{name:'includeInGlobalUnreadCounter',type:'boolean',defaultValue:!0},{name:'trust',type:'boolean',defaultValue:!1},{name:'enabled',type:'boolean',defaultValue:!0},{name:'js_unread',type:'string',defaultValue:''},{name:'zoomLevel',type:'number',defaultValue:0}]},0,0,0,0,0,0,[Rambox.model,'Service'],0);Ext.cmd.derive('Rambox.store.Services',Ext.data.Store,{model:'Rambox.model.Service',autoLoad:!0,autoSync:!0,groupField:'align',sorters:[{property:'position',direction:'ASC'}],listeners:{load:function(d,f,e){Ext.cq1('app-main').suspendEvent('add');var b=[];var a=[];d.each(function(c){if(!c.get('enabled')){return}var g={xtype:'webview',id:'tab_'+c.get('id'),title:c.get('name'),icon:c.get('type')!=='custom'?'resources/icons/'+c.get('logo'):c.get('logo')===''?'resources/icons/custom.png':c.get('logo'),src:c.get('url'),type:c.get('type'),muted:c.get('muted'),includeInGlobalUnreadCounter:c.get('includeInGlobalUnreadCounter'),displayTabUnreadCounter:c.get('displayTabUnreadCounter'),enabled:c.get('enabled'),record:c,tabConfig:{service:c}};c.get('align')==='left'?b.push(g):a.push(g)});if(!Ext.isEmpty(b)){Ext.cq1('app-main').insert(1,b)}if(!Ext.isEmpty(a)){Ext.cq1('app-main').add(a)}var c=ipc.sendSync('getConfig');switch(c.default_service){case 'last':Ext.cq1('app-main').setActiveTab(localStorage.getItem('last_active_service'));break;case 'ramboxTab':break;default:if(Ext.getCmp('tab_'+c.default_service)){Ext.cq1('app-main').setActiveTab('tab_'+c.default_service)};break;}d.suspendEvent('load');Ext.cq1('app-main').resumeEvent('add')}}},0,0,0,0,['store.services'],0,[Rambox.store,'Services'],0);Ext.cmd.derive('Rambox.Application',Ext.app.Application,{name:'Rambox',stores:['ServicesList','Services'],profiles:['Offline','Online'],config:{totalServicesLoaded:0,totalNotifications:0},launch:function(){ga_storage._setAccount('UA-80680424-1');ga_storage._trackPageview('/index.html','main');ga_storage._trackEvent('Versions',require('electron').remote.app.getVersion());Ext.Loader.loadScript({url:Ext.util.Format.format('ext/packages/ext-locale/build/ext-locale-{0}.js',localStorage.getItem('locale-auth0')||'en')});if(auth0Cfg.clientID!==''&&auth0Cfg.domain!==''){Rambox.ux.Auth0.init()}Ext.util.Cookies.set('version',require('electron').remote.app.getVersion());if(Ext.util.Cookies.get('auth0')===null){Ext.util.Cookies.set('auth0',!1)}if(require('electron').remote.process.argv.indexOf('--without-update')===-1){Rambox.app.checkUpdate(!0)}var a=new Ext.util.KeyMap({target:document,binding:[{key:'\t',ctrl:!0,alt:!1,shift:!1,handler:function(d){var a=Ext.cq1('app-main');var c=a.items.indexOf(a.getActiveTab());var b=c+1;if(b===a.items.items.length||b===a.items.items.length-1&&a.items.items[b].id==='tbfill'){b=0}while(a.items.items[b].id==='tbfill'){b++}a.setActiveTab(b)}},{key:'\t',ctrl:!0,alt:!1,shift:!0,handler:function(d){var b=Ext.cq1('app-main');var c=b.items.indexOf(b.getActiveTab());var a=c-1;if(a<0){a=b.items.items.length-1}while(b.items.items[a].id==='tbfill'||a<0){a--}b.setActiveTab(a)}},{key:Ext.event.Event.PAGE_DOWN,ctrl:!0,alt:!1,shift:!1,handler:function(d){var a=Ext.cq1('app-main');var c=a.items.indexOf(a.getActiveTab());var b=c+1;if(b===a.items.items.length||b===a.items.items.length-1&&a.items.items[b].id==='tbfill'){b=0}while(a.items.items[b].id==='tbfill'){b++}a.setActiveTab(b)}},{key:Ext.event.Event.PAGE_UP,ctrl:!0,alt:!1,shift:!1,handler:function(d){var b=Ext.cq1('app-main');var c=b.items.indexOf(b.getActiveTab());var a=c-1;if(a<0){a=b.items.items.length-1}while(b.items.items[a].id==='tbfill'||a<0){a--}b.setActiveTab(a)}},{key:[Ext.event.Event.NUM_PLUS,Ext.event.Event.NUM_MINUS,187,189],ctrl:!0,alt:!1,shift:!1,handler:function(b){var a=Ext.cq1('app-main');if(a.items.indexOf(a.getActiveTab())===0){return !1}b===Ext.event.Event.NUM_PLUS||b===187?a.getActiveTab().zoomIn():a.getActiveTab().zoomOut()}},{key:[Ext.event.Event.NUM_ZERO,'0'],ctrl:!0,alt:!1,shift:!1,handler:function(b){var a=Ext.cq1('app-main');if(a.items.indexOf(a.getActiveTab())===0){return !1}a.getActiveTab().resetZoom()}},{key:'123456789',ctrl:!0,alt:!1,handler:function(a){a=a-48;if(a>=Ext.cq1('app-main').items.indexOf(Ext.getCmp('tbfill'))){a++}Ext.cq1('app-main').setActiveTab(a)}},{key:188,ctrl:!0,alt:!1,handler:function(a){Ext.cq1('app-main').setActiveTab(0)}},{key:Ext.event.Event.F1,ctrl:!1,alt:!1,shift:!1,handler:function(b){var a=Ext.getCmp('disturbBtn');a.toggle();Ext.cq1('app-main').getController().dontDisturb(a,!0)}},{key:Ext.event.Event.F2,ctrl:!1,alt:!1,shift:!1,handler:function(b){var a=Ext.getCmp('lockRamboxBtn');Ext.cq1('app-main').getController().lockRambox(a)}}]});document.addEventListener('mousewheel',function(b){if(b.ctrlKey){var c=Math.max(-1,Math.min(1,b.wheelDelta||-b.detail));var a=Ext.cq1('app-main');if(a.items.indexOf(a.getActiveTab())===0){return !1}if(c===1){a.getActiveTab().zoomIn()}else {a.getActiveTab().zoomOut()}}});if(localStorage.getItem('dontDisturb')===null){localStorage.setItem('dontDisturb',!1)}ipc.send('setDontDisturb',localStorage.getItem('dontDisturb'));if(localStorage.getItem('locked')){console.info('Lock Rambox:','Enabled');Ext.cq1('app-main').getController().showLockWindow()}Ext.get('spinner').destroy()},updateTotalNotifications:function(a,b){a=parseInt(a);if(a>0){if(Ext.cq1('app-main').getActiveTab().record){document.title='Rambox ('+Rambox.util.Format.formatNumber(a)+') - '+Ext.cq1('app-main').getActiveTab().record.get('name')}else {document.title='Rambox ('+Rambox.util.Format.formatNumber(a)+')'}}else {if(Ext.cq1('app-main')&&Ext.cq1('app-main').getActiveTab().record){document.title='Rambox - '+Ext.cq1('app-main').getActiveTab().record.get('name')}else {document.title='Rambox'}}},checkUpdate:function(a){console.info('Checking for updates...');Ext.Ajax.request({url:'http://rambox.pro/api/latestversion.json',method:'GET',success:function(d){var b=Ext.decode(d.responseText);var c=new Ext.Version(require('electron').remote.app.getVersion());if(c.isLessThan(b.version)){console.info('New version is available',b.version);Ext.cq1('app-main').addDocked({xtype:'toolbar',dock:'top',ui:'newversion',items:['->',{xtype:'label',html:'<b>'+locale['app.update[0]']+'</b> ('+b.version+')'+(process.platform==='win32'?' Is downloading in the background and you will notify when is ready to install it.':'')},{xtype:'button',text:locale['app.update[1]'],href:process.platform==='darwin'?'https://getrambox.herokuapp.com/download/'+process.platform+'_'+process.arch:'https://github.com/saenzramiro/rambox/releases/latest',hidden:process.platform==='win32'},{xtype:'button',text:locale['app.update[2]'],ui:'decline',tooltip:'Click here to see more information about the new version.',href:'https://github.com/saenzramiro/rambox/releases/tag/'+b.version},'->',{glyph:'xf00d@FontAwesome',baseCls:'',style:'cursor:pointer;',handler:function(b){Ext.cq1('app-main').removeDocked(b.up('toolbar'),!0)}}]});if(process.platform==='win32'){ipc.send('autoUpdater:check-for-updates')}return}else {if(!a){Ext.Msg.show({title:locale['app.update[3]'],message:locale['app.update[4]'],icon:Ext.Msg.INFO,buttons:Ext.Msg.OK})}}console.info('Your version is the latest. No need to update.')}})}},0,0,0,0,0,0,[Rambox,'Application'],0);Ext.cmd.derive('Rambox.util.Format',Ext.Base,{singleton:!0,formatNumber:function(a){return a.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,'$1,')},stripNumber:function(a){return typeof a=='number'?a:a.match(/\d+/g)?parseInt(a.match(/\d+/g).join('')):0}},0,0,0,0,0,0,[Rambox.util,'Format'],0);Ext.cmd.derive('Rambox.util.IconLoader',Ext.Base,{singleton:!0,constructor:function(a){a=a||{};this.loadServiceIconUrl=function(b,c){switch(b.type){case 'slack':c.executeJavaScript("(()=>{let a=document.querySelector('.team_icon');if(!a){const d=document.querySelector('#team_menu');d&&(d.click(),a=document.querySelector('.team_icon'))}if(!a)return!1;const{style:{backgroundImage:b}}=a,c=document.createEvent('MouseEvents');return c.initEvent('mousedown',!0,!0),document.querySelector('.client_channels_list_container').dispatchEvent(c),b.slice(5,-2)})();",!1,function(d){if(d){b.setTitle('<img src="'+b.icon+'" width="" style="background-color: white;border-radius: 50%;position: absolute;left: 18px;top: 17px;width: 12px;">'+b.title);b.fireEvent('iconchange',b,d,b.icon)}});break;default:break;}}}},1,0,0,0,0,0,[Rambox.util,'IconLoader'],0);Ext.cmd.derive('Rambox.util.Notifier',Ext.Base,{singleton:!0,constructor:function(a){a=a||{};function getNotificationText(d,c){var b;switch(Ext.getStore('ServicesList').getById(d.type).get('type')){case 'messaging':b='You have '+Ext.util.Format.plural(c,'new message','new messages')+'.';break;case 'email':b='You have '+Ext.util.Format.plural(c,'new email','new emails')+'.';break;default:b='You have '+Ext.util.Format.plural(c,'new activity','new activities')+'.';break;}return b}this.dispatchNotification=function(b,d){var e=getNotificationText(b,d);var c=new Notification(b.record.get('name'),{body:e,icon:b.tab.icon,silent:b.record.get('muted')});c.onclick=function(){ipc.send('toggleWin',!0);Ext.cq1('app-main').setActiveTab(b)}}}},1,0,0,0,0,0,[Rambox.util,'Notifier'],0);Ext.cmd.derive('Rambox.util.UnreadCounter',Ext.Base,{singleton:!0,constructor:function(c){c=c||{};var a=new Map();var b=0;function updateAppUnreadCounter(){Rambox.app.setTotalNotifications(b)}this.getTotalUnreadCount=function(){return b};this.setUnreadCountForService=function(e,d){d=parseInt(d,10);if(a.has(e)){b-=a.get(e)}b+=d;a.set(e,d);updateAppUnreadCounter()};this.clearUnreadCountForService=function(d){if(a.has(d)){b-=a.get(d)}a['delete'](d);updateAppUnreadCounter()}}},1,0,0,0,0,0,[Rambox.util,'UnreadCounter'],0);Ext.cmd.derive('Rambox.ux.WebView',Ext.panel.Panel,{zoomLevel:0,currentUnreadCount:0,hideMode:'offsets',initComponent:function(b){var a=this;function getLocation(c){var a=c.match(/^(https?\:)\/\/(([^:\/?#]*)(?:\:([0-9]+))?)(\/[^?#]*)(\?[^#]*|)(#.*|)$/);return a&&{protocol:a[1],host:a[2],hostname:a[3],port:a[4],pathname:a[5],search:a[6],hash:a[7]}}Ext.apply(a,{items:a.webViewConstructor(),title:a.record.get('tabname')?a.record.get('name'):'',icon:a.record.get('type')==='custom'?a.record.get('logo')===''?'resources/icons/custom.png':a.record.get('logo'):'resources/icons/'+a.record.get('logo'),src:a.record.get('url'),type:a.record.get('type'),align:a.record.get('align'),notifications:a.record.get('notifications'),muted:a.record.get('muted'),tabConfig:{listeners:{afterrender:function(a){a.el.on('contextmenu',function(c){a.showMenu('contextmenu');c.stopEvent()})},scope:a},clickEvent:'',style:!a.record.get('enabled')?'-webkit-filter: grayscale(1)':'',menu:{plain:!0,items:[{xtype:'toolbar',items:[{xtype:'segmentedbutton',allowToggle:!1,flex:1,items:[{text:'Back',glyph:'xf053@FontAwesome',flex:1,scope:a,handler:a.goBack},{text:'Forward',glyph:'xf054@FontAwesome',iconAlign:'right',flex:1,scope:a,handler:a.goForward}]}]},'-',{text:'Zoom In',glyph:'xf00e@FontAwesome',scope:a,handler:a.zoomIn},{text:'Zoom Out',glyph:'xf010@FontAwesome',scope:a,handler:a.zoomOut},{text:'Reset Zoom',glyph:'xf002@FontAwesome',scope:a,handler:a.resetZoom},'-',{text:locale['app.webview[0]'],glyph:'xf021@FontAwesome',scope:a,handler:a.reloadService},'-',{text:locale['app.webview[3]'],glyph:'xf121@FontAwesome',scope:a,handler:a.toggleDevTools}]}},listeners:{afterrender:a.onAfterRender,beforedestroy:a.onBeforeDestroy}});if(a.record.get('statusbar')){Ext.apply(a,{bbar:a.statusBarConstructor(!1)})}else {a.items.push(a.statusBarConstructor(!0))}Ext.panel.Panel.prototype.initComponent.apply(this,b)},onBeforeDestroy:function(){var a=this;a.setUnreadCount(0)},webViewConstructor:function(c){var a=this;var b;c=c||a.record.get('enabled');if(!c){b={xtype:'container',html:'<h3>Service Disabled</h3>',style:'text-align:center;',padding:100}}else {b=[{xtype:'component',hideMode:'offsets',autoRender:!0,autoShow:!0,autoEl:{tag:'webview',src:a.record.get('url'),style:'width:100%;height:100%;visibility:visible;',partition:'persist:'+a.record.get('type')+'_'+a.id.replace('tab_','')+(localStorage.getItem('id_token')?'_'+Ext.decode(localStorage.getItem('profile')).user_id:''),plugins:'true',allowtransparency:'on',autosize:'on',webpreferences:'allowRunningInsecureContent=yes',useragent:Ext.getStore('ServicesList').getById(a.record.get('type')).get('userAgent'),preload:'./resources/js/rambox-service-api.js'}}];if(Ext.getStore('ServicesList').getById(a.record.get('type')).get('allow_popups')){b[0].autoEl.allowpopups='on'}}return b},statusBarConstructor:function(b){var a=this;return {xtype:'statusbar',hidden:!a.record.get('statusbar'),keep:a.record.get('statusbar'),y:b?'-18px':'auto',height:19,dock:'bottom',defaultText:'<i class="fa fa-check fa-fw" aria-hidden="true"></i> Ready',busyIconCls:'',busyText:'<i class="fa fa-circle-o-notch fa-spin fa-fw"></i> '+locale['app.webview[4]'],items:[{xtype:'tbtext',itemId:'url'},{xtype:'button',glyph:'xf00d@FontAwesome',scale:'small',ui:'decline',padding:0,scope:a,hidden:b,handler:a.closeStatusBar,tooltip:{text:'Close statusbar until next time',mouseOffset:[0,-60]}}]}},onAfterRender:function(){var a=this;if(!a.record.get('enabled')){return}var b=a.down('component').el.dom;ga_storage._trackEvent('Services','load',a.type,1,!0);a.setNotifications(localStorage.getItem('locked')||JSON.parse(localStorage.getItem('dontDisturb'))?!1:a.record.get('notifications'));b.addEventListener('did-start-loading',function(){console.info('Start loading...',a.src);if(!a.down('statusbar').closed||!a.down('statusbar').keep){a.down('statusbar').show()}a.down('statusbar').showBusy()});b.addEventListener('did-stop-loading',function(){a.down('statusbar').clearStatus({useDefaults:!0});if(!a.down('statusbar').keep){a.down('statusbar').hide()}});b.addEventListener('did-finish-load',function(c){Rambox.app.setTotalServicesLoaded(Rambox.app.getTotalServicesLoaded()+1);b.setZoomLevel(a.record.get('zoomLevel'));Rambox.util.IconLoader.loadServiceIconUrl(a,b)});b.addEventListener('new-window',function(b){switch(a.type){case 'skype':if(b.url.match('https://web.skype.com/../undefined')){b.preventDefault();return}else {if(b.url.indexOf('imgpsh_fullsize')>=0){ipc.send('image:download',b.url,b.target.partition);b.preventDefault();return}};break;case 'hangouts':b.preventDefault();if(b.url.indexOf('plus.google.com/u/0/photos/albums')>=0){ipc.send('image:popup',b.url,b.target.partition);return}else {if(b.url.indexOf('/el/CONVERSATION/')>=0){a.add({xtype:'window',title:'Video Call',width:'80%',height:'80%',maximizable:!0,resizable:!0,draggable:!0,collapsible:!0,items:{xtype:'component',hideMode:'offsets',autoRender:!0,autoShow:!0,autoEl:{tag:'webview',src:b.url,style:'width:100%;height:100%;',partition:a.getWebView().partition,useragent:Ext.getStore('ServicesList').getById(a.record.get('type')).get('userAgent')}}}).show();return}};break;case 'slack':if(b.url.indexOf('slack.com/call/')>=0){a.add({xtype:'window',title:b.options.title,width:b.options.width,height:b.options.height,maximizable:!0,resizable:!0,draggable:!0,collapsible:!0,items:{xtype:'component',hideMode:'offsets',autoRender:!0,autoShow:!0,autoEl:{tag:'webview',src:b.url,style:'width:100%;height:100%;',partition:a.getWebView().partition,useragent:Ext.getStore('ServicesList').getById(a.record.get('type')).get('userAgent')}}}).show();b.preventDefault();return};break;case 'icloud':if(b.url.indexOf('index.html#compose')>=0){a.add({xtype:'window',title:'iCloud - Compose',width:700,height:500,maximizable:!0,resizable:!0,draggable:!0,collapsible:!0,items:{xtype:'component',itemId:'webview',hideMode:'offsets',autoRender:!0,autoShow:!0,autoEl:{tag:'webview',src:b.url,style:'width:100%;height:100%;',partition:a.getWebView().partition,useragent:Ext.getStore('ServicesList').getById(a.record.get('type')).get('userAgent'),preload:'./resources/js/rambox-modal-api.js'}},listeners:{show:function(a){var c=a.down('#webview').el.dom;c.addEventListener('ipc-message',function(d){var c=d.channel;switch(c){case 'close':a.close();break;default:break;}})}}}).show();b.preventDefault();return};break;case 'flowdock':if(b.disposition==='new-window'){b.preventDefault();require('electron').shell.openExternal(b.url)};return;break;default:break;}var c=require('url').parse(b.url).protocol;if(c==='http:'||c==='https:'||c==='mailto:'){b.preventDefault();require('electron').shell.openExternal(b.url)}});b.addEventListener('will-navigate',function(a,b){a.preventDefault()});b.addEventListener('dom-ready',function(f){if(a.record.get('muted')||localStorage.getItem('locked')||JSON.parse(localStorage.getItem('dontDisturb'))){a.setAudioMuted(!0,!0)}var d='';if(a.record){var c=Ext.getStore('ServicesList').getById(a.record.get('type')).get('js_unread');c=c+a.record.get('js_unread');if(c!==''){console.groupCollapsed(a.record.get('type').toUpperCase()+' - JS Injected to Detect New Messages');console.info(a.type);console.log(c);d+=c}}if(Ext.getStore('ServicesList').getById(a.record.get('type')).get('titleBlink')){var e='var originalTitle=document.title;Object.defineProperty(document,"title",{configurable:!0,set:function(a){null===a.match(new RegExp("[(]([0-9\u2022]+)[)][ ](.*)","g"))&&a!==originalTitle||(document.getElementsByTagName("title")[0].innerHTML=a)},get:function(){return document.getElementsByTagName("title")[0].innerHTML}});';console.log(e);d+=e}console.groupEnd();d+='document.body.scrollTop=0;';b.getWebContents().on('certificate-error',function(c,g,e,d,b){if(a.record.get('trust')){c.preventDefault();b(!0)}else {b(!1)}a.down('statusbar').keep=!0;a.down('statusbar').show();a.down('statusbar').setStatus({text:'<i class="fa fa-exclamation-triangle" aria-hidden="true"></i> Certification Warning'});a.down('statusbar').down('button').show()});b.executeJavaScript(d)});b.addEventListener('ipc-message',function(b){var c=b.channel;switch(c){case 'rambox.setUnreadCount':handleSetUnreadCount(b);break;case 'rambox.clearUnreadCount':handleClearUnreadCount(b);break;case 'rambox.showWindowAndActivateTab':showWindowAndActivateTab(b);break;}function handleClearUnreadCount(){a.tab.setBadgeText('');a.currentUnreadCount=0;a.setUnreadCount(0)}function handleSetUnreadCount(d){if(Array.isArray(d.args)===!0&&d.args.length>0){var c=d.args[0];if(c===parseInt(c,10)){a.setUnreadCount(c)}}}function showWindowAndActivateTab(c){require('electron').remote.getCurrentWindow().show();Ext.cq1('app-main').setActiveTab(a)}});if(Ext.getStore('ServicesList').getById(a.record.get('type')).get('dont_update_unread_from_title')!==!0){b.addEventListener('page-title-updated',function(c){var b=c.title.match(/\(([^)]+)\)/);b=b?b[1]:'0';b=b==='\u2022'?b:Ext.isArray(b.match(/\d+/g))?b.match(/\d+/g).join(''):b.match(/\d+/g);b=b===null?'0':b;a.setUnreadCount(b)})}b.addEventListener('did-get-redirect-request',function(c){if(c.isMainFrame&&a.record.get('type')==='tweetdeck'){Ext.defer(function(){b.loadURL(c.newURL)},1000)}});b.addEventListener('update-target-url',function(b){a.down('statusbar #url').setText(b.url)})},setUnreadCount:function(a){var b=this;if(!isNaN(a)&&function(b){return (b|0)===b}(parseFloat(a))&&b.record.get('includeInGlobalUnreadCounter')===!0){Rambox.util.UnreadCounter.setUnreadCountForService(b.record.get('id'),a)}else {Rambox.util.UnreadCounter.clearUnreadCountForService(b.record.get('id'))}b.setTabBadgeText(Rambox.util.Format.formatNumber(a));b.doManualNotification(parseInt(a))},refreshUnreadCount:function(){this.setUnreadCount(this.currentUnreadCount)},doManualNotification:function(b){var a=this;if(Ext.getStore('ServicesList').getById(a.type).get('manual_notifications')&&a.currentUnreadCount<b&&a.record.get('notifications')&&!JSON.parse(localStorage.getItem('dontDisturb'))){Rambox.util.Notifier.dispatchNotification(a,b)}a.currentUnreadCount=b},setTabBadgeText:function(b){var a=this;if(a.record.get('displayTabUnreadCounter')===!0){a.tab.setBadgeText(b)}else {a.tab.setBadgeText('')}},clearUnreadCounter:function(){var a=this;a.tab.setBadgeText('');Rambox.util.UnreadCounter.clearUnreadCountForService(a.record.get('id'))},reloadService:function(c){var a=this;var b=a.down('component').el.dom;if(a.record.get('enabled')){a.clearUnreadCounter();b.loadURL(a.src)}},toggleDevTools:function(c){var b=this;var a=b.down('component').el.dom;if(b.record.get('enabled')){a.isDevToolsOpened()?a.closeDevTools():a.openDevTools()}},setURL:function(b){var a=this;var c=a.down('component').el.dom;a.src=b;if(a.record.get('enabled')){c.loadURL(b)}},setAudioMuted:function(a,c){var b=this;var d=b.down('component').el.dom;b.muted=a;if(!a&&!c&&JSON.parse(localStorage.getItem('dontDisturb'))){return}if(b.record.get('enabled')){d.setAudioMuted(a)}},closeStatusBar:function(){var a=this;a.down('statusbar').hide();a.down('statusbar').closed=!0;a.down('statusbar').keep=a.record.get('statusbar')},setStatusBar:function(b){var a=this;a.removeDocked(a.down('statusbar'),!0);if(b){a.addDocked(a.statusBarConstructor(!1))}else {a.add(a.statusBarConstructor(!0))}a.down('statusbar').keep=b},setNotifications:function(a,c){var b=this;var d=b.down('component').el.dom;b.notifications=a;if(a&&!c&&JSON.parse(localStorage.getItem('dontDisturb'))){return}if(b.record.get('enabled')){ipc.send('setServiceNotifications',d.partition,a)}},setEnabled:function(b){var a=this;a.clearUnreadCounter();a.removeAll();a.add(a.webViewConstructor(b));if(b){a.resumeEvent('afterrender');a.show();a.tab.setStyle('-webkit-filter','grayscale(0)');a.onAfterRender()}else {a.suspendEvent('afterrender');a.tab.setStyle('-webkit-filter','grayscale(1)')}},goBack:function(){var a=this;var b=a.down('component').el.dom;if(a.record.get('enabled')){b.goBack()}},goForward:function(){var a=this;var b=a.down('component').el.dom;if(a.record.get('enabled')){b.goForward()}},zoomIn:function(){var a=this;var b=a.down('component').el.dom;a.zoomLevel=a.zoomLevel+0.25;if(a.record.get('enabled')){b.setZoomLevel(a.zoomLevel);a.record.set('zoomLevel',a.zoomLevel)}},zoomOut:function(){var a=this;var b=a.down('component').el.dom;a.zoomLevel=a.zoomLevel-0.25;if(a.record.get('enabled')){b.setZoomLevel(a.zoomLevel);a.record.set('zoomLevel',a.zoomLevel)}},resetZoom:function(){var a=this;var b=a.down('component').el.dom;a.zoomLevel=0;if(a.record.get('enabled')){b.setZoomLevel(0);a.record.set('zoomLevel',a.zoomLevel)}},getWebView:function(){if(this.record.get('enabled')){return this.down('component').el.dom}else {return !1}}},0,['webview'],['component','box','container','panel','webview'],{'component':!0,'box':!0,'container':!0,'panel':!0,'webview':!0},['widget.webview'],0,[Rambox.ux,'WebView'],0);Ext.cmd.derive('Rambox.ux.mixin.Badge',Ext.Mixin,{mixinConfig:{id:'badge',after:{onRender:'renderBadgeText'}},config:{badgeText:null},renderBadgeText:function(){var a=this.getBadgeText();if(a&&typeof a==='string'){this.updateBadgeText(a)}},updateBadgeText:function(a,d){var b=this,c=b.el;if(b.rendered){c.set({'data-badge-text':Number(a)>0?a:''});c.toggleCls('x-badge',!!a);b.fireEvent('badgetextchange',b,a,d)}}},0,0,0,0,0,0,[Rambox.ux.mixin,'Badge'],function(a){Ext.override(Ext.button.Button,{mixins:[a]})});Ext.cmd.derive('Rambox.view.add.AddController',Ext.app.ViewController,{doCancel:function(b){var a=this;a.getView().close()},doSave:function(i){var h=this;var b=h.getView();if(!b.down('form').isValid()){return !1}var a=b.down('form').getValues();if(b.edit){if(b.service.get('url').indexOf('___')>=0){a.url=a.cycleValue==='1'?b.service.get('url').replace('___',a.url):a.url}var e=b.record.getData();b.record.set({logo:a.logo,name:a.serviceName,url:a.url,align:a.align,notifications:a.notifications,muted:a.muted,statusbar:a.statusbar,tabname:a.tabname,displayTabUnreadCounter:a.displayTabUnreadCounter,includeInGlobalUnreadCounter:a.includeInGlobalUnreadCounter,trust:a.trust,js_unread:a.js_unread});var c=Ext.getCmp('tab_'+b.record.get('id'));c.setTitle(a.tabname?a.serviceName:'');c.setAudioMuted(a.muted);c.setStatusBar(a.statusbar);c.setNotifications(a.notifications);if(b.record.get('type')==='custom'&&e.logo!==a.logo){Ext.getCmp('tab_'+b.record.get('id')).setConfig('icon',a.logo===''?'resources/icons/custom.png':a.logo)}if(e.url!==a.url){c.setURL(a.url)}if(e.align!==a.align){if(a.align==='left'){Ext.cq1('app-main').moveBefore(c,Ext.getCmp('tbfill'))}else {Ext.cq1('app-main').moveAfter(c,Ext.getCmp('tbfill'))}}if(b.down('textarea').isDirty()){Ext.Msg.confirm(locale['app.window[8]'].toUpperCase(),'Rambox needs to reload the service to execute the new JavaScript code. Do you want to do it now?',function(a){if(a==='yes'){c.reloadService()}})}c.record=b.record;c.tabConfig.service=b.record;c.refreshUnreadCount()}else {if(b.record.get('url').indexOf('___')>=0){a.url=a.cycleValue==='1'?b.record.get('url').replace('___',a.url):a.url}var d=Ext.create('Rambox.model.Service',{type:b.record.get('id'),logo:a.logo,name:a.serviceName,url:a.url,align:a.align,notifications:a.notifications,muted:a.muted,tabname:a.tabname,statusbar:a.statusbar,displayTabUnreadCounter:a.displayTabUnreadCounter,includeInGlobalUnreadCounter:a.includeInGlobalUnreadCounter,trust:a.trust,js_unread:a.js_unread});d.save();Ext.getStore('Services').add(d);var f={xtype:'webview',id:'tab_'+d.get('id'),record:d,tabConfig:{service:d}};if(a.align==='left'){var g=Ext.cq1('app-main').getTabBar().down('tbfill');Ext.cq1('app-main').insert(Ext.cq1('app-main').getTabBar().items.indexOf(g),f).show()}else {Ext.cq1('app-main').add(f).show()}}b.close()},onEnter:function(b,a){var c=this;if(a.getKey()==a.ENTER&&b.up('form').isValid()){c.doSave()}},onShow:function(a){var b=this;a.down('textfield[name="serviceName"]').focus(!0,100)}},0,0,0,0,['controller.add-add'],0,[Rambox.view.add,'AddController'],0);Ext.cmd.derive('Rambox.view.add.AddModel',Ext.app.ViewModel,{},0,0,0,0,['viewmodel.add-add'],0,[Rambox.view.add,'AddModel'],0);Ext.cmd.derive('Rambox.view.add.Add',Ext.window.Window,{controller:'add-add',viewModel:{type:'add-add'},record:null,service:null,edit:!1,modal:!0,width:500,autoShow:!0,resizable:!1,draggable:!1,bodyPadding:20,initComponent:function(){var a=this;a.title=(!a.edit?locale['app.window[0]']:locale['app.window[1]'])+' '+a.record.get('name');a.icon=a.record.get('type')==='custom'?!a.edit?'resources/icons/custom.png':a.record.get('logo')===''?'resources/icons/custom.png':a.record.get('logo'):'resources/icons/'+a.record.get('logo');a.items=[{xtype:'form',items:[{xtype:'textfield',fieldLabel:locale['app.window[2]'],labelWidth:40,value:a.record.get('type')==='custom'?a.edit?a.record.get('name'):'':a.record.get('name'),name:'serviceName',allowBlank:!0,listeners:{specialkey:'onEnter'}},{xtype:'container',layout:'hbox',hidden:a.edit?a.service.get('url').indexOf('___')===-1&&!a.service.get('custom_domain'):a.record.get('url').indexOf('___')===-1&&!a.record.get('custom_domain'),items:[{xtype:'label',text:locale['app.window[17]']+':',width:45},{xtype:'button',text:a.edit?a.service.get('url').split('___')[0]:a.record.get('url').split('___')[0],style:'border-top-right-radius:0;border-bottom-right-radius:0;',hidden:a.edit?a.service.get('url').indexOf('___')===-1?!0:a.service.get('type')==='custom'||a.service.get('url')==='___':a.record.get('url').indexOf('___')===-1?!0:a.record.get('type')==='custom'||a.record.get('url')==='___'},{xtype:'textfield',name:'url',value:a.edit&&a.service.get('url').indexOf('___')>=0?a.record.get('url').replace(a.service.get('url').split('___')[0],'').replace(a.service.get('url').split('___')[1],''):a.record.get('url').indexOf('___')===-1?a.record.get('url'):'',readOnly:a.edit?a.service.get('custom_domain')&&a.service.get('url')===a.record.get('url')?!0:a.service.get('url').indexOf('___')===-1&&!a.service.get('custom_domain'):a.record.get('url').indexOf('___')===-1&&a.record.get('custom_domain'),allowBlank:!1,submitEmptyText:!1,emptyText:a.record.get('url')==='___'?'http://':'',vtype:a.record.get('url')==='___'?'url':'',listeners:{specialkey:'onEnter'},flex:1},{xtype:'cycle',showText:!0,style:'border-top-left-radius:0;border-bottom-left-radius:0;',hidden:a.edit?a.service.get('type')==='custom'||a.service.get('url')==='___':a.record.get('type')==='custom'||a.record.get('url')==='___',arrowVisible:a.edit?a.service.get('url').indexOf('___')>=0&&!a.service.get('custom_domain')?!1:a.service.get('custom_domain'):a.record.get('url').indexOf('___')>=0&&!a.record.get('custom_domain')?!1:a.record.get('custom_domain'),menu:{items:[{text:a.edit?a.service.get('url').indexOf('___')===-1?'Official Server':Ext.String.endsWith(a.service.get('url'),'/')?a.service.get('url').split('___')[1].slice(0,-1):a.service.get('url').split('___')[1]:a.record.get('url').indexOf('___')===-1?'Official Server':Ext.String.endsWith(a.record.get('url'),'/')?a.record.get('url').split('___')[1].slice(0,-1):a.record.get('url').split('___')[1],checked:a.edit?a.service.get('custom_domain')&&a.service.get('url')===a.record.get('url')?!0:Ext.String.endsWith(a.record.get('url'),a.service.get('url').split('___')[1]):!0,disabled:a.edit?a.service.get('url')==='___':a.record.get('url')==='___'},{text:'Custom Server',checked:a.edit?a.service.get('custom_domain')&&a.service.get('url')===a.record.get('url')?!1:!Ext.String.endsWith(a.record.get('url'),a.service.get('url').split('___')[1]):!1,custom:!0,disabled:a.edit?!a.service.get('custom_domain'):!a.record.get('custom_domain')}]},arrowHandler:function(a,b){if(!a.arrowVisible){a.hideMenu()}},changeHandler:function(b,c){Ext.apply(b.previousSibling(),{emptyText:c.custom?'http://':' ',vtype:c.custom?'url':''});b.previousSibling().applyEmptyText();b.previousSibling().reset();if(a.edit&&b.nextSibling().originalValue!=='2'){a.service.get('custom_domain')&&!c.custom?b.previousSibling().reset():b.previousSibling().setValue('')}else {if(a.edit&&b.nextSibling().originalValue==='2'){a.service.get('custom_domain')&&!c.custom?b.previousSibling().setValue(a.service.get('url').indexOf('___')===-1&&a.service.get('custom_domain')?a.service.get('url'):''):b.previousSibling().reset()}else {if(!a.edit&&b.nextSibling().originalValue==='1'){c.custom?b.previousSibling().setValue(''):b.previousSibling().reset()}}}b.previousSibling().previousSibling().setHidden(c.custom?!0:a.edit?a.service.get('url').indexOf('___')===-1?!0:a.service.get('type')==='custom'||a.service.get('url')==='___':a.record.get('url').indexOf('___')===-1?!0:a.record.get('type')==='custom'||a.record.get('url')==='___');b.previousSibling().setReadOnly(c.custom?!1:a.edit?a.service.get('url').indexOf('___')===-1:a.record.get('url').indexOf('___')===-1);b.nextSibling().setValue(c.custom?2:1)}},{xtype:'hiddenfield',name:'cycleValue',value:a.edit?a.service.get('custom_domain')&&a.service.get('url')===a.record.get('url')?1:!Ext.String.endsWith(a.record.get('url'),a.service.get('url').split('___')[1])?2:1:1}]},{xtype:'textfield',fieldLabel:locale['app.window[18]'],emptyText:'http://url.com/image.png',name:'logo',vtype:a.record.get('type')==='custom'?'url':'',value:a.record.get('type')==='custom'?a.edit?a.record.get('logo'):'':a.record.get('logo'),allowBlank:!0,hidden:a.record.get('type')!=='custom',labelWidth:40,margin:'5 0 0 0',listeners:{specialkey:'onEnter'}},{xtype:'fieldset',title:locale['app.window[3]'],margin:'10 0 0 0',items:[{xtype:'checkboxgroup',columns:2,items:[{xtype:'checkbox',boxLabel:locale['app.window[4]'],checked:a.edit?a.record.get('align')==='right'?!0:!1:!1,name:'align',uncheckedValue:'left',inputValue:'right'},{xtype:'checkbox',boxLabel:locale['app.window[6]'],name:'muted',checked:a.edit?a.record.get('muted'):!1,uncheckedValue:!1,inputValue:!0},{xtype:'checkbox',boxLabel:'Show service name in Tab',name:'tabname',checked:a.edit?a.record.get('tabname'):!0,uncheckedValue:!1,inputValue:!0},{xtype:'checkbox',boxLabel:locale['app.window[5]'],name:'notifications',checked:a.edit?a.record.get('notifications'):!0,uncheckedValue:!1,inputValue:!0},{xtype:'checkbox',boxLabel:'Always display Status Bar',name:'statusbar',checked:a.edit?a.record.get('statusbar'):!0,uncheckedValue:!1,inputValue:!0},{xtype:'checkbox',boxLabel:locale['app.window[19]'],name:'trust',hidden:a.record.get('type')!=='custom',checked:a.edit?a.record.get('trust'):!1,uncheckedValue:!1,inputValue:!0}]}]},{xtype:'fieldset',title:'Unread counter',margin:'10 0 0 0',items:[{xtype:'checkboxgroup',columns:2,items:[{xtype:'checkbox',boxLabel:'Display tab unread counter',name:'displayTabUnreadCounter',checked:a.edit?a.record.get('displayTabUnreadCounter'):!0,uncheckedValue:!1,inputValue:!0},{xtype:'checkbox',boxLabel:'Include in global unread counter',name:'includeInGlobalUnreadCounter',checked:a.edit?a.record.get('includeInGlobalUnreadCounter'):!0,uncheckedValue:!1,inputValue:!0}]}]},{xtype:'fieldset',title:locale['app.window[7]'],margin:'10 0 0 0',collapsible:!0,collapsed:!0,items:[{xtype:'textarea',fieldLabel:locale['app.window[8]']+' (<a href="https://github.com/saenzramiro/rambox/wiki/Inject-JavaScript-Code" target="_blank">'+locale['app.window[9]']+'</a>)',allowBlank:!0,name:'js_unread',value:a.edit?a.record.get('js_unread'):'',anchor:'100%',height:120}]},{xtype:'container',hidden:a.edit?Ext.getStore('ServicesList').getById(a.record.get('type')).get('note')==='':a.record.get('note')==='',data:{note:a.edit?Ext.getStore('ServicesList').getById(a.record.get('type')).get('note'):a.record.get('note')},margin:'10 0 0 0',style:'background-color:#93CFE0;color:#053767;border-radius:6px;',tpl:['<i class="fa fa-info-circle" aria-hidden="true" style="font-size:40px;margin:20px;"></i>','<span style="font-size: 15px;position: absolute;padding: 10px 10px 10px 0;">{note}</span>']}]}];a.buttons=[{text:locale['button[1]'],ui:'decline',handler:'doCancel'},'->',{text:a.title,itemId:'submit',handler:'doSave'}];Ext.window.Window.prototype.initComponent.apply(this,this)},listeners:{show:'onShow'}},0,0,['component','box','container','panel','window'],{'component':!0,'box':!0,'container':!0,'panel':!0,'window':!0},0,0,[Rambox.view.add,'Add'],0);Ext.cmd.derive('Rambox.view.main.About',Ext.window.Window,{title:locale['app.about[0]'],autoShow:!0,modal:!0,resizable:!1,constrain:!0,width:300,height:450,bodyPadding:10,data:{version:require('electron').remote.app.getVersion(),platform:process.platform,arch:process.arch,electron:process.versions.electron,chromium:process.versions.chrome,node:process.versions.node},tpl:['<div style="text-align:center;"><img src="resources/Icon.png" width="100" /></div>','<h3>'+locale['app.about[1]']+'</h3>','<div><b>'+locale['app.about[2]']+':</b> {version}</div>','<div><b>'+locale['app.about[3]']+':</b> {platform} ({arch})</div>','<div><b>Electron:</b> {electron}</div>','<div><b>Chromium:</b> {chromium}</div>','<div><b>Node:</b> {node}</div>','<br />','<div style="text-align:center;"><a href="https://github.com/saenzramiro/rambox" target="_blank">GitHub</a> - <a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=WU75QWS7LH2CA" target="_blank">'+locale['app.main[25]']+'</a> - <a href="http://rambox.pro" target="_blank">rambox.pro</a></div>','<br />','<div style="text-align:center;"><i>'+locale['app.about[4]']+' Ramiro Saenz</i></div>']},0,['about'],['component','box','container','panel','window','about'],{'component':!0,'box':!0,'container':!0,'panel':!0,'window':!0,'about':!0},['widget.about'],0,[Rambox.view.main,'About'],0);Ext.cmd.derive('Rambox.view.main.MainController',Ext.app.ViewController,{onTabChange:function(c,a,d){var e=this;ga_storage._trackPageview('/index.html','main');localStorage.setItem('last_active_service',a.id);if(a.id==='ramboxTab'){if(Rambox.app.getTotalNotifications()>0){document.title='Rambox ('+Rambox.app.getTotalNotifications()+')'}else {document.title='Rambox'}return}if(!a.record.get('enabled')){return}var b=a.down('component').el.dom;if(b){b.focus()}if(Rambox.app.getTotalNotifications()>0){document.title='Rambox ('+Rambox.app.getTotalNotifications()+') - '+a.record.get('name')}else {document.title='Rambox - '+a.record.get('name')}},updatePositions:function(c,b){if(b.id==='ramboxTab'||b.id==='tbfill'){return !0}console.log('Updating Tabs positions...');var a=Ext.getStore('Services');a.suspendEvent('remove');Ext.each(c.items.items,function(d,f){if(d.id!=='ramboxTab'&&d.id!=='tbfill'&&d.record.get('enabled')){var e=a.getById(d.record.get('id'));if(e.get('align')==='right'){f--}e.set('position',f);e.save()}});a.load();a.resumeEvent('remove')},showServiceTab:function(d,a,e,c,b){if(b.position.colIdx===0){Ext.getCmp('tab_'+a.get('id')).show()}},onRenameService:function(b,a){var c=this;a.record.commit();Ext.getCmp('tab_'+a.record.get('id')).setTitle(a.record.get('name'))},onEnableDisableService:function(f,b,c,e,d){var a=Ext.getStore('Services').getAt(b);if(!c){Ext.getCmp('tab_'+a.get('id')).destroy()}else {Ext.cq1('app-main').insert(a.get('align')==='left'?a.get('position'):a.get('position')+1,{xtype:'webview',id:'tab_'+a.get('id'),title:a.get('name'),icon:a.get('type')!=='custom'?'resources/icons/'+a.get('logo'):a.get('logo')===''?'resources/icons/custom.png':a.get('logo'),src:a.get('url'),type:a.get('type'),muted:a.get('muted'),includeInGlobalUnreadCounter:a.get('includeInGlobalUnreadCounter'),displayTabUnreadCounter:a.get('displayTabUnreadCounter'),enabled:a.get('enabled'),record:a,hidden:d,tabConfig:{service:a}})}},onNewServiceSelect:function(d,a,c,b,e){Ext.create('Rambox.view.add.Add',{record:a})},removeServiceFn:function(b,g,f){var h=this;if(!b){return !1}var a=Ext.getStore('Services').getById(b);if(!a.get('enabled')){a.set('enabled',!0);h.onEnableDisableService(null,Ext.getStore('Services').indexOf(a),!0,null,!0);Ext.defer(function(){var c=Ext.getCmp('tab_'+b);var a=c.getWebView();a.addEventListener('did-start-loading',function(){clearData(a,c)})},1000)}else {var d=Ext.getCmp('tab_'+b);var e=d.getWebView();clearData(e,d)}var c=ipc.sendSync('getConfig');if(c.default_service===a.get('id')){ipc.send('setConfig',Ext.apply(c,{default_service:'ramboxTab'}))}function clearData(c,d){c.getWebContents().clearHistory();c.getWebContents().session.flushStorageData();c.getWebContents().session.clearCache(function(){c.getWebContents().session.clearStorageData(function(){c.getWebContents().session.cookies.flushStore(function(){Ext.getStore('Services').remove(a);d.close();if(g===f){Ext.Msg.hide()}})})})}},removeService:function(d,e,c,g,h,a,f){var b=this;Ext.Msg.confirm(locale['app.window[12]'],locale['app.window[13]']+' <b>'+a.get('name')+'</b>?',function(i){if(i==='yes'){Ext.Msg.wait('Please wait until we clear all.','Removing...');b.removeServiceFn(a.get('id'),1,1)}})},removeAllServices:function(d,a){var b=this;document.title='Rambox';if(d){Ext.Msg.confirm(locale['app.window[12]'],locale['app.window[14]'],function(c){if(c==='yes'){Ext.cq1('app-main').suspendEvent('remove');Ext.getStore('Services').load();Ext.Msg.wait('Please wait until we clear all.','Removing...');var e=Ext.getStore('Services').getCount();var f=1;Ext.Array.each(Ext.getStore('Services').collect('id'),function(g){b.removeServiceFn(g,e,f++)});if(Ext.isFunction(a)){a()}Ext.cq1('app-main').resumeEvent('remove');document.title='Rambox'}})}else {Ext.cq1('app-main').suspendEvent('remove');Ext.getStore('Services').load();var c=Ext.getStore('Services').getCount();var e=1;Ext.Array.each(Ext.getStore('Services').collect('id'),function(f){b.removeServiceFn(f,c,e++)});if(Ext.isFunction(a)){a()}Ext.cq1('app-main').resumeEvent('remove');document.title='Rambox'}},configureService:function(c,d,b,f,g,a,e){Ext.create('Rambox.view.add.Add',{record:a,service:Ext.getStore('ServicesList').getById(a.get('type')),edit:!0})},onSearchRender:function(a){a.focus(!1,1000)},onSearchEnter:function(a,c){var b=this;if(c.getKey()==c.ENTER&&Ext.getStore('ServicesList').getCount()===2){b.onNewServiceSelect(a.up().down('dataview'),Ext.getStore('ServicesList').getAt(0));b.onClearClick(a)}},doTypeFilter:function(a,b,c){var d=this;Ext.getStore('ServicesList').getFilters().replaceAll({fn:function(d){return Ext.Array.contains(Ext.Object.getKeys(a.getValue()),d.get('type'))||d.get('type')==='custom'}})},onSearchServiceChange:function(a,b,e){var d=this;var c=a.up().down('checkboxgroup');if(!Ext.isEmpty(b)&&b.length>0){a.getTrigger('search').hide();a.getTrigger('clear').show();Ext.getStore('ServicesList').getFilters().replaceAll({fn:function(d){if(d.get('type')==='custom'){return !0}if(!Ext.Array.contains(Ext.Object.getKeys(c.getValue()),d.get('type'))){return !1}return d.get('name').toLowerCase().indexOf(b.toLowerCase())>-1?!0:!1}})}else {a.getTrigger('clear').hide();a.getTrigger('search').show();Ext.getStore('ServicesList').getFilters().removeAll();d.doTypeFilter(c)}a.updateLayout()},onClearClick:function(a,d,e){var c=this;var b=a.up().down('checkboxgroup');a.reset();a.getTrigger('clear').hide();a.getTrigger('search').show();a.updateLayout();Ext.getStore('ServicesList').getFilters().removeAll();c.doTypeFilter(b)},dontDisturb:function(a,c,b){console.info('Dont Disturb:',a.pressed?'Enabled':'Disabled');if(!b){ga_storage._trackEvent('Usability','dontDisturb',a.pressed?'on':'off')}Ext.Array.each(Ext.getStore('Services').collect('id'),function(e){var d=Ext.getCmp('tab_'+e);if(!d){return}d.setAudioMuted(a.pressed?!0:d.record.get('muted'),!0);d.setNotifications(a.pressed?!1:d.record.get('notifications'),!0)});localStorage.setItem('dontDisturb',a.pressed);ipc.send('setDontDisturb',a.pressed);a.setText(locale['app.main[16]']+': '+(a.pressed?locale['app.window[20]']:locale['app.window[21]']));if(!c){return}Ext.toast({html:a.pressed?'ENABLED':'DISABLED',title:"Don't Disturb",width:200,align:'t',closable:!1})},lockRambox:function(b){var a=this;if(ipc.sendSync('getConfig').master_password){Ext.Msg.confirm(locale['app.main[19]'],'Do you want to use the Master Password as your temporal password?',function(a){if(a==='yes'){setLock(ipc.sendSync('getConfig').master_password)}else {showTempPass()}})}else {showTempPass()}function showTempPass(){var c=Ext.Msg.prompt(locale['app.main[19]'],locale['app.window[22]'],function(e,c){if(e==='ok'){var d=Ext.Msg.prompt(locale['app.main[19]'],locale['app.window[23]'],function(d,f){if(d==='ok'){if(c!==f){Ext.Msg.show({title:locale['app.window[24]'],message:locale['app.window[25]'],icon:Ext.Msg.WARNING,buttons:Ext.Msg.OK,fn:a.lockRambox});return !1}setLock(Rambox.util.MD5.encypt(c))}});d.textField.inputEl.dom.type='password'}});c.textField.inputEl.dom.type='password'}function setLock(c){console.info('Lock Rambox:','Enabled');localStorage.setItem('locked',c);ga_storage._trackEvent('Usability','locked');a.lookupReference('disturbBtn').setPressed(!0);a.dontDisturb(a.lookupReference('disturbBtn'),!1,!0);a.showLockWindow()}},showLockWindow:function(){var b=this;var c=function(){if(localStorage.getItem('locked')===Rambox.util.MD5.encypt(a.down('textfield').getValue())){console.info('Lock Rambox:','Disabled');localStorage.removeItem('locked');a.close();b.lookupReference('disturbBtn').setPressed(!1);b.dontDisturb(b.lookupReference('disturbBtn'),!1)}else {a.down('textfield').reset();a.down('textfield').markInvalid('Unlock password is invalid')}};var a=Ext.create('Ext.window.Window',{maximized:!0,closable:!1,resizable:!1,minimizable:!1,maximizable:!1,draggable:!1,onEsc:Ext.emptyFn,layout:'center',bodyStyle:'background-color:#2e658e;',items:[{xtype:'container',layout:'vbox',items:[{xtype:'image',src:'resources/Icon.png',width:256,height:256},{xtype:'component',autoEl:{tag:'h1',html:locale['app.window[26]'],style:'text-align:center;width:256px;'}},{xtype:'textfield',inputType:'password',width:256,listeners:{specialkey:function(b,a){if(a.getKey()==a.ENTER){c()}}}},{xtype:'button',text:locale['app.window[27]'],glyph:'xf13e@FontAwesome',width:256,scale:'large',handler:c}]}],listeners:{render:function(a){a.getEl().on('click',function(){a.down('textfield').focus(100)})}}}).show();a.down('textfield').focus(1000)},openPreferences:function(a){var b=this;Ext.create('Rambox.view.preferences.Preferences').show()},login:function(a){var b=this;Rambox.ux.Auth0.login()},logout:function(c){var b=this;var a=function(a){Ext.Msg.wait(locale['app.window[37]'],locale['app.main[21]']);ga_storage._trackEvent('Users','loggedOut');Rambox.ux.Auth0.logout();Ext.cq1('app-main').getViewModel().set('username','');Ext.cq1('app-main').getViewModel().set('avatar','');if(Ext.isFunction(a)){a()}};if(c){Ext.Msg.confirm(locale['app.main[21]'],locale['app.window[38]'],function(d){if(d==='yes'){a(b.removeAllServices.bind(b))}})}else {a()}},showDonate:function(a){Tooltip.API.show('zxzKWZfcmgRtHXgth')}},0,0,0,0,['controller.main'],0,[Rambox.view.main,'MainController'],0);Ext.cmd.derive('Rambox.view.main.MainModel',Ext.app.ViewModel,{data:{name:'Rambox',username:localStorage.getItem('profile')?JSON.parse(localStorage.getItem('profile')).name:'',avatar:localStorage.getItem('profile')?JSON.parse(localStorage.getItem('profile')).picture:'',last_sync:localStorage.getItem('profile')&&JSON.parse(localStorage.getItem('profile')).user_metadata&&JSON.parse(localStorage.getItem('profile')).user_metadata.services_lastupdate?(new Date(JSON.parse(localStorage.getItem('profile')).user_metadata.services_lastupdate)).toUTCString():''}},0,0,0,0,['viewmodel.main'],0,[Rambox.view.main,'MainModel'],0);Ext.cmd.derive('Rambox.view.main.Main',Ext.tab.Panel,{controller:'main',viewModel:{type:'main'},plugins:[{ptype:'tabreorderer'}],autoRender:!0,autoShow:!0,deferredRender:!1,items:[{icon:'resources/[email protected]',id:'ramboxTab',closable:!1,reorderable:!1,autoScroll:!0,layout:'hbox',tabConfig:{},items:[{xtype:'panel',title:locale['app.main[0]'],margin:'0 5 0 0',flex:2,header:{height:50},tools:[{xtype:'checkboxgroup',items:[{xtype:'checkbox',boxLabel:locale['app.main[1]'],name:'messaging',checked:!0,uncheckedValue:!1,inputValue:!0},{xtype:'checkbox',boxLabel:locale['app.main[2]'],margin:'0 10 0 10',name:'email',checked:!0,uncheckedValue:!1,inputValue:!0}],listeners:{change:'doTypeFilter'}},{xtype:'textfield',grow:!0,growMin:120,growMax:170,triggers:{clear:{weight:0,cls:'x-form-clear-trigger',hidden:!0,handler:'onClearClick'},search:{weight:1,cls:'x-form-search-trigger search-trigger'}},listeners:{change:'onSearchServiceChange',afterrender:'onSearchRender',specialkey:'onSearchEnter'}}],items:[{xtype:'dataview',store:'ServicesList',itemSelector:'div.service',tpl:['<tpl for=".">','<div class="service" data-qtip="{description}">','<img src="resources/icons/{logo}" width="48" />','<span>{name}</span>','</div>','</tpl>'],emptyText:'<div style="padding: 20px;">'+locale['app.main[3]']+'</div>',listeners:{itemclick:'onNewServiceSelect'}}]},{xtype:'grid',title:locale['app.main[4]'],store:'Services',hideHeaders:!0,margin:'0 0 0 5',flex:1,header:{height:50},features:[{ftype:'grouping',collapsible:!1,groupHeaderTpl:'{columnName:uppercase}: {name:capitalize} ({rows.length} {[values.rows.length > 1 ? "'+locale['app.main[9]']+'" : "'+locale['app.main[8]']+'"]})'}],plugins:{ptype:'cellediting',clicksToEdit:2},tools:[{xtype:'button',glyph:'xf1f8@FontAwesome',baseCls:'',tooltip:locale['app.main[10]'],handler:'removeAllServices'}],columns:[{xtype:'templatecolumn',width:50,variableRowHeight:!0,tpl:'<img src="{[ values.type !== "custom" ? "resources/icons/"+values.logo : (values.logo == "" ? "resources/icons/custom.png" : values.logo) ]}" data-qtip="{type:capitalize}" width="32" style="{[ values.enabled ? "-webkit-filter: grayscale(0)" : "-webkit-filter: grayscale(1)" ]}" />'},{dataIndex:'name',variableRowHeight:!0,flex:1,editor:{xtype:'textfield',allowBlank:!0}},{xtype:'actioncolumn',width:60,align:'right',items:[{glyph:61943,tooltip:locale['app.main[11]'],getClass:function(f,c,a,d,b,e,g){if(a.get('notifications')){return 'x-hidden'}}},{glyph:61478,tooltip:locale['app.main[12]'],getClass:function(f,c,a,d,b,e,g){if(!a.get('muted')){return 'x-hidden'}}}]},{xtype:'actioncolumn',width:60,align:'center',items:[{glyph:61459,tooltip:locale['app.main[13]'],handler:'configureService',getClass:function(){return 'x-hidden-display'}},{glyph:61944,tooltip:locale['app.main[14]'],handler:'removeService',getClass:function(){return 'x-hidden-display'}}]},{xtype:'checkcolumn',width:40,dataIndex:'enabled',renderer:function(b,a){a.tdAttr='data-qtip="Service '+(b?'Enabled':'Disabled')+'"';return this.defaultRenderer(b,a)},listeners:{checkchange:'onEnableDisableService'}}],viewConfig:{emptyText:locale['app.main[15]'],forceFit:!0,stripeRows:!0},listeners:{edit:'onRenameService',rowdblclick:'showServiceTab'}}],tbar:{xtype:'toolbar',height:42,ui:'main',enableOverflow:!0,overflowHandler:'menu',items:[{glyph:'xf1f7@FontAwesome',text:locale['app.main[16]']+': '+(JSON.parse(localStorage.getItem('dontDisturb'))?locale['app.window[20]']:locale['app.window[21]']),tooltip:locale['app.main[17]']+'<br/><b>'+locale['app.main[18]']+': F1</b>',enableToggle:!0,handler:'dontDisturb',reference:'disturbBtn',id:'disturbBtn',pressed:JSON.parse(localStorage.getItem('dontDisturb'))},{glyph:'xf023@FontAwesome',text:locale['app.main[19]'],tooltip:locale['app.main[20]']+'<br/><b>'+locale['app.main[18]']+': F2</b>',handler:'lockRambox',id:'lockRamboxBtn'},'->',{xtype:'image',id:'avatar',bind:{src:'{avatar}',hidden:'{!avatar}'},width:30,height:30,style:'border-radius: 50%;border:2px solid #d8d8d8;'},{id:'usernameBtn',bind:{text:'{username}',hidden:'{!username}'},menu:[{text:'Synchronize Configuration',glyph:'xf0c2@FontAwesome',menu:[{xtype:'label',bind:{html:'<b class="menu-title">Last Sync: {last_sync}</b>'}},{text:'Backup',glyph:'xf0ee@FontAwesome',scope:Rambox.ux.Auth0,handler:Rambox.ux.Auth0.backupConfiguration},{text:'Restore',glyph:'xf0ed@FontAwesome',scope:Rambox.ux.Auth0,handler:Rambox.ux.Auth0.restoreConfiguration},{text:'Check for updated backup',glyph:'xf021@FontAwesome',scope:Rambox.ux.Auth0,handler:Rambox.ux.Auth0.checkConfiguration}]},'-',{text:locale['app.main[21]'],glyph:'xf08b@FontAwesome',handler:'logout'}]},{text:locale['app.main[22]'],icon:'resources/auth0.png',id:'loginBtn',tooltip:locale['app.main[23]']+'<br /><br /><i>'+locale['app.main[24]']+' Auth0 (http://auth0.com)</i>',bind:{hidden:'{username}'},handler:'login'},{tooltip:locale['preferences[0]'],glyph:'xf013@FontAwesome',handler:'openPreferences'}]},bbar:[{xtype:'segmentedbutton',allowToggle:!1,items:[{text:'<b>Help us</b> with',pressed:!0},{text:locale['app.main[25]'],glyph:'xf21e@FontAwesome',handler:'showDonate'},{text:'Translation',glyph:'xf0ac@FontAwesome',href:'https://crowdin.com/project/rambox/invite'}]},'->',{xtype:'label',html:'<span class="fa fa-code" style="color:black;"></span> '+locale['app.main[26]']+' <span class="fa fa-heart" style="color:red;"></span> '+locale['app.main[27]'].replace('Argentina','<img src="resources/flag.png" alt="Argentina" data-qtip="Argentina" />')},'->',{xtype:'segmentedbutton',allowToggle:!1,items:[{text:'<b>Follow us</b>',pressed:!0},{glyph:'xf082@FontAwesome',href:'https://www.facebook.com/ramboxapp'},{glyph:'xf099@FontAwesome',href:'https://www.twitter.com/ramboxapp'},{glyph:'xf09b@FontAwesome',href:'https://www.github.com/saenzramiro/rambox'}]}]},{id:'tbfill',tabConfig:{xtype:'tbfill'}}],listeners:{tabchange:'onTabChange',add:'updatePositions',remove:'updatePositions',childmove:'updatePositions'}},0,['app-main'],['component','box','container','panel','tabpanel','app-main'],{'component':!0,'box':!0,'container':!0,'panel':!0,'tabpanel':!0,'app-main':!0},['widget.app-main'],0,[Rambox.view.main,'Main'],0);Ext.cmd.derive('Rambox.view.preferences.PreferencesController',Ext.app.ViewController,{cancel:function(b){var a=this;a.getView().close()},save:function(c){var b=this;var a=b.getView().down('form').getForm().getFieldValues();if(a.master_password===!0&&(Ext.isEmpty(a.master_password1)===!1&&Ext.isEmpty(a.master_password2)===!0||Ext.isEmpty(a.master_password1)===!0&&Ext.isEmpty(a.master_password2)===!1)){return}if(a.master_password===!0&&a.master_password1!==a.master_password2){return}if(a.master_password===!0&&Ext.isEmpty(a.master_password1)===!1&&Ext.isEmpty(a.master_password2)===!1){a.master_password=Rambox.util.MD5.encypt(a.master_password1);delete a.master_password1;delete a.master_password2}if(a.master_password===!0){delete a.master_password}if(a.proxy&&(Ext.isEmpty(a.proxyHost)||Ext.isEmpty(a.proxyPort))){return}if(a.window_display_behavior==='show_taskbar'&&a.window_close_behavior==='keep_in_tray'){Ext.Msg.alert('Action required','You need to change the window closing behaviour because "Keep in tray" is not possible.');return}if(a.locale!==ipc.sendSync('getConfig').locale){localStorage.setItem('locale',a.locale);localStorage.setItem('locale-auth0',b.getView().down('form').down('combo[name="locale"]').getSelection().get('auth0'));Ext.Msg.confirm('Action required','To change the language of Rambox, you need to reload the app. Do you want to do it now?',function(a){if(a==='yes'){ipc.send('relaunchApp')}})}if(a.rambox_theme!==ipc.sendSync('getConfig').rambox_theme){localStorage.setItem('rambox_theme',a.rambox_theme);Ext.Msg.confirm('Action required','To change the theme of Rambox, you need to reload the app. Do you want to do it now?',function(a){if(a==='yes'){ipc.send('relaunchApp')}})}ipc.send('setConfig',a);b.getView().close()}},0,0,0,0,['controller.preferences-preferences'],0,[Rambox.view.preferences,'PreferencesController'],0);Ext.cmd.derive('Rambox.view.preferences.PreferencesModel',Ext.app.ViewModel,{data:{}},0,0,0,0,['viewmodel.preferences-preferences'],0,[Rambox.view.preferences,'PreferencesModel'],0);Ext.cmd.derive('Rambox.view.preferences.Preferences',Ext.window.Window,{controller:'preferences-preferences',viewModel:{type:'preferences-preferences'},title:locale['preferences[0]'],width:420,modal:!0,closable:!0,minimizable:!1,maximizable:!1,draggable:!0,resizable:!1,buttons:[{text:locale['button[1]'],ui:'decline',handler:'cancel'},'->',{text:locale['button[4]'],handler:'save'}],initComponent:function(){var a=ipc.sendSync('getConfig');var b=[];b.push({value:'ramboxTab',label:'Rambox Tab'});b.push({value:'last',label:'Last Active Service'});Ext.getStore('Services').each(function(a){b.push({value:a.get('id'),label:a.get('name')})});var c=[];c.push({value:'default',label:'Default'});c.push({value:'light',label:'Light'});c.push({value:'dark',label:'Dark'});this.items=[{xtype:'form',bodyPadding:20,items:[{xtype:'container',layout:'hbox',items:[{xtype:'combo',name:'locale',fieldLabel:'Language',labelAlign:'left',flex:1,labelWidth:80,value:a.locale,displayField:'label',valueField:'value',editable:!1,store:Ext.create('Ext.data.Store',{fields:['value','label'],data:[{'value':'af','auth0':'af','label':'Afrikaans'},{'value':'ar','auth0':'en','label':'Arabic'},{'value':'bs2','auth0':'en','label':'Barndutsch, Switzerland'},{'value':'bn','auth0':'en','label':'Bengali'},{'value':'bg','auth0':'en','label':'Bulgarian'},{'value':'ca','auth0':'ca','label':'Catalan'},{'value':'zh-CN','auth0':'zh','label':'Chinese Simplified'},{'value':'zh-TW','auth0':'zh-tw','label':'Chinese Traditional'},{'value':'hr','auth0':'en','label':'Croatian'},{'value':'cs','auth0':'cs','label':'Czech'},{'value':'da','auth0':'da','label':'Danish'},{'value':'nl','auth0':'nl','label':'Dutch'},{'value':'en','auth0':'en','label':'English'},{'value':'fi','auth0':'fi','label':'Finnish'},{'value':'fr','auth0':'fr','label':'French'},{'value':'de','auth0':'de','label':'German'},{'value':'de-CH','auth0':'de','label':'German, Switzerland'},{'value':'el','auth0':'en','label':'Greek'},{'value':'he','auth0':'en','label':'Hebrew'},{'value':'hi','auth0':'en','label':'Hindi'},{'value':'hu','auth0':'hu','label':'Hungarian'},{'value':'id','auth0':'en','label':'Indonesian'},{'value':'it','auth0':'it','label':'Italian'},{'value':'ja','auth0':'ja','label':'Japanese'},{'value':'ko','auth0':'ko','label':'Korean'},{'value':'no','auth0':'no','label':'Norwegian'},{'value':'fa','auth0':'fa','label':'Persian'},{'value':'pl','auth0':'pl','label':'Polish'},{'value':'pt-PT','auth0':'pt-br','label':'Portuguese'},{'value':'pt-BR','auth0':'pt-br','label':'Portuguese (Brazilian)'},{'value':'ro','auth0':'ro','label':'Romanian'},{'value':'ru','auth0':'ru','label':'Russian'},{'value':'sr','auth0':'en','label':'Serbian (Cyrillic)'},{'value':'sk','auth0':'sk','label':'Slovak'},{'value':'es-ES','auth0':'es','label':'Spanish'},{'value':'sv-SE','auth0':'sv','label':'Swedish'},{'value':'tr','auth0':'tr','label':'Turkish'},{'value':'uk','auth0':'en','label':'Ukrainian'},{'value':'vi','auth0':'en','label':'Vietnamese'}]})},{xtype:'button',text:'Help us Translate',style:'border-top-left-radius:0;border-bottom-left-radius:0;',href:'https://crowdin.com/project/rambox/invite'}]},{xtype:'label',text:'English is the only language that has full translation. We are working with all the others, help us!',style:'display:block;font-size:10px;line-height:15px;',margin:'0 0 10 0'},{xtype:'checkbox',name:'auto_launch',boxLabel:locale['preferences[5]'],value:a.auto_launch},{xtype:'checkbox',name:'start_minimized',boxLabel:locale['preferences[4]'],value:a.start_minimized},{xtype:'checkbox',name:'hide_menu_bar',boxLabel:locale['preferences[1]']+' (<code>Alt</code> key to display)',value:a.hide_menu_bar,hidden:process.platform==='darwin'},{xtype:'combo',name:'rambox_theme',fieldLabel:'Theme to use for Rambox',labelAlign:'top',value:a.rambox_theme,displayField:'label',valueField:'value',editable:!1,store:Ext.create('Ext.data.Store',{fields:['value','label'],data:c})},{xtype:'combo',name:'default_service',fieldLabel:'Default service to display when Rambox starts',labelAlign:'top',value:a.default_service,displayField:'label',valueField:'value',editable:!1,store:Ext.create('Ext.data.Store',{fields:['value','label'],data:b})},{xtype:'combo',name:'window_display_behavior',fieldLabel:'Display behaviour',labelAlign:'left',width:380,labelWidth:105,value:a.window_display_behavior,displayField:'label',valueField:'value',editable:!1,store:Ext.create('Ext.data.Store',{fields:['value','label'],data:[{'value':'show_taskbar','label':'Show in Taskbar'},{'value':'show_trayIcon','label':'Show Tray Icon'},{'value':'taskbar_tray','label':'Show in Taskbar and Tray Icon'}]}),hidden:process.platform==='darwin'},{xtype:'combo',name:'window_close_behavior',fieldLabel:'When closing the main window',labelAlign:'left',width:380,labelWidth:180,value:a.window_close_behavior,displayField:'label',valueField:'value',editable:!1,store:Ext.create('Ext.data.Store',{fields:['value','label'],data:[{'value':'keep_in_tray','label':'Keep in tray'},{'value':'keep_in_tray_and_taskbar','label':'Keep in tray and/or taskbar'},{'value':'quit','label':'Quit'}]}),hidden:process.platform==='darwin'},{xtype:'checkbox',name:'always_on_top',boxLabel:'Always on top',value:a.always_on_top},{xtype:'checkbox',name:'systemtray_indicator',boxLabel:'Show System Tray indicator on unread messages',value:a.systemtray_indicator,hidden:process.platform==='darwin'},{xtype:'checkbox',name:'flash_frame',boxLabel:process.platform==='darwin'?locale['preferences[10]']:locale['preferences[9]'],value:a.flash_frame},{xtype:'checkbox',name:'disable_gpu',boxLabel:'Disable Hardware Acceleration (needs to relaunch)',value:a.disable_gpu},{xtype:'checkbox',name:'enable_hidpi_support',boxLabel:locale['preferences[8]'],value:a.enable_hidpi_support},{xtype:'fieldset',title:'Master Password - Ask for password on startup',collapsed:!a.master_password,checkboxToggle:!0,checkboxName:'master_password',margin:'10 0 0 0',padding:10,layout:'hbox',defaults:{labelAlign:'top'},items:[{xtype:'textfield',inputType:'password',fieldLabel:'Password',name:'master_password1',itemId:'pass',flex:1,listeners:{validitychange:function(a){a.next().validate()},blur:function(a){a.next().validate()}}},{xtype:'textfield',inputType:'password',fieldLabel:'Repeat Password',name:'master_password2',margin:'0 0 0 10',vtype:'password',initialPassField:'pass',flex:1}]},{xtype:'fieldset',title:'Proxy (needs to relaunch) - <a href="https://github.com/saenzramiro/rambox/wiki/FREE-PROXY-SERVERS" target="_blank">Free Proxy Servers</a>',collapsed:!a.proxy,checkboxToggle:!0,checkboxName:'proxy',margin:'10 0 0 0',padding:10,layout:'vbox',defaults:{labelAlign:'left'},items:[{xtype:'textfield',vtype:'url',fieldLabel:'Host',name:'proxyHost',value:a.proxyHost},{xtype:'numberfield',fieldLabel:'Port',name:'proxyPort',value:a.proxyPort},{xtype:'textfield',fieldLabel:'Login',name:'proxyLogin',value:a.proxyLogin,emptyText:'Optional'},{xtype:'textfield',fieldLabel:'Password',name:'proxyPassword',value:a.proxyPassword,emptyText:'Optional'}]}]}];Ext.window.Window.prototype.initComponent.call(this)}},0,['preferences'],['component','box','container','panel','window','preferences'],{'component':!0,'box':!0,'container':!0,'panel':!0,'window':!0,'preferences':!0},['widget.preferences'],0,[Rambox.view.preferences,'Preferences'],0);var auth0,lock;console.log(localStorage.rambox_theme,Ext.isDebugEnabled);if(localStorage.rambox_theme!=='default'){Ext.util.CSS.swapStyleSheet('rambox-default-theme','build/'+localStorage.rambox_theme+'/production/Rambox/resources/Rambox-all.css')}var ElectronCookies=require('@exponent/electron-cookies');ElectronCookies.enable({origin:'http://rambox.pro'});Ext.setGlyphFontFamily('FontAwesome');Ext.application({name:'Rambox',extend:Rambox.Application,autoCreateViewport:'Rambox.view.main.Main'});var ipc=require('electron').ipcRenderer;ipc.on('showAbout',function(b,a){!Ext.cq1('about')?Ext.create('Rambox.view.main.About'):''});ipc.on('showPreferences',function(b,a){!Ext.cq1('preferences')?Ext.create('Rambox.view.preferences.Preferences').show():''});ipc.on('autoUpdater:check-update',function(){Rambox.app.checkUpdate()});ipc.on('autoUpdater:update-not-available',function(){Ext.Msg.show({title:'You are up to date!',message:'You have the latest version of Rambox.',icon:Ext.Msg.INFO,buttons:Ext.Msg.OK})});ipc.on('autoUpdater:update-available',function(){Ext.Msg.show({title:'New Version available!',message:'Please wait until Rambox download the new version and ask you for install it.',icon:Ext.Msg.INFO,buttons:Ext.Msg.OK})});ipc.on('autoUpdater:update-downloaded',function(e,b,a,c,d){Ext.cq1('app-main').addDocked({xtype:'toolbar',dock:'top',ui:'newversion',items:['->',{xtype:'label',html:'<b>New version ready to install ('+a+')!</b> It will be installed the next time Rambox is relaunched.'},{xtype:'button',text:'Relaunch Now',handler:function(f){ipc.send('autoUpdater:quit-and-install')}},{xtype:'button',text:'Changelog',ui:'decline',href:'https://github.com/saenzramiro/rambox/releases/tag/'+a},'->',{glyph:'xf00d@FontAwesome',baseCls:'',style:'cursor:pointer;',handler:function(f){Ext.cq1('app-main').removeDocked(f.up('toolbar'),!0)}}]})});ipc.on('setBadge',function(e,b){b=b.toString();var c=document.createElement('canvas');c.height=140;c.width=140;var a=c.getContext('2d');a.fillStyle='red';a.beginPath();a.ellipse(70,70,70,70,0,0,2*Math.PI);a.fill();a.textAlign='center';a.fillStyle='white';var d=[{divider:1.0E18,suffix:'P'},{divider:1.0E15,suffix:'E'},{divider:1.0E12,suffix:'T'},{divider:1000000000,suffix:'G'},{divider:1000000,suffix:'M'},{divider:1000,suffix:'k'}];function formatNumber(c){c=parseInt(c);for(var a=0;a<d.length;a++){if(c>=d[a].divider){return Math.round(c/d[a].divider).toString()+d[a].suffix}}return c.toString()}if(b.length===3){a.font='75px sans-serif';a.fillText(''+b,70,98)}else {if(b.length===2){a.font='100px sans-serif';a.fillText(''+b,70,105)}else {if(b.length===1){a.font='125px sans-serif';a.fillText(''+b,70,112)}else {a.font='75px sans-serif';a.fillText(''+formatNumber(b),70,98)}}}ipc.send('setBadge',b,c.toDataURL())});ipc.on('reloadCurrentService',function(b){var a=Ext.cq1('app-main').getActiveTab();if(a.id!=='ramboxTab'){a.reloadService()}});window.addEventListener('focus',function(){if(Ext.cq1('app-main')){Ext.cq1('app-main').getActiveTab().down('component').el.dom.focus()}}); |