var Config=new Class({setConfig:function(){this.config=$extend.run([this.config].extend(arguments));return this}});Native.implement([Element,Window,Document],{xHasEvent:function(b){var a=this.retrieve("events",{});return(a&&a[b])?true:false}});String.implement({xToClass:function(a){return"."+this},xWrap:function(d,c){return[d,this,c].join("")}});Number.implement({xToMs:function(){return this*1000}});Element.implement({xReplaceClass:function(b,a){return this.removeClass(b).addClass(a)},xHide:function(){var a=this.getStyle("display");if(a=="none"){return}this.store("base:display",a);this.setStyle("display","none");this.fireEvent("hide");return this},xShow:function(){var a=this.getStyle("display");if(a!="none"){return}a=this.retrieve("base:display","block");this.setStyle("display",a);this.fireEvent("show");return this},xFade:function(c,b){if(["show","hide"].xIn(c)){var d=Number(c=="show");this.set("opacity",d);this.fireEvent("fade",[d])}else{var d=Number(c=="in");if(!isNaN(c)&&(c>=0&&c<=1)){d=c}var b=$merge({transition:"linear",duration:"normal",onComplete:function(){this.fireEvent("fade",[d])}.bind(this)},b);var a=new Fx.Tween(this,b);a.start("opacity",d)}return this}});Events.implement({xHasEvent:function(a){return(this.$events&&this.$events[a]!=null)?true:false}});Array.implement({xPick:function(a){var b=this.slice(a,a+1);this.splice(a,1);return b},xIn:function(d,a){a=$pick(a,false);for(var b=0;b<this.length;b++){var c=this[b];if(a){if(c===d){return true}}else{if(c==d){return true}}}return false}});Browser.isIE=function(cond){if(!this.Engine.trident){return false}if($undef(cond)){return true}var version=this.Engine.version+2;return(eval(version+cond))};function $clone(a){return $merge({},a)}function $keys(b){var a=[];$each(b,function(d,c){a.push(c)});return a}function $undef(a){return(!$chk(a))}function $clean(b){var a=/^\d*(\.\d+)?$/;$each(b,function(d,c){if(["object","array"].indexOf($type(d))!=-1){$clean(d)}else{if($type(d)=="string"){if(d.length){if(a.test(d)){b[c]=d.toFloat()}}}}})}function $shift(b,a){if(!b[a]){return}var c=b[a];delete b[a];return c}function $move(c,b,a){var d=$shift(c,a);if($chk(d)){return b[a]=d}return false};
