Native.implement([Element,Window,Document],{hasEvent:function(b){var a=this.retrieve("events",{});return(a&&a[b])?true:false}});var Config=new Class({setConfig:function(){this.config=$extend.run([this.config].extend(arguments));return this}});String.implement({fFan:function(d){var b=[];for(var c=0;c<this.length;c++){b.push(this.charAt(c))}return b.join(d?d:"<br />")},fUnfan:function(a){return this.split(a?a:"<br />").join("")},_toCls:function(a){return"."+this},xWrap:function(d,c){return[d,this,c].join("")}});Number.implement({_toMs:function(){return this*1000}});Element.implement({replaceClass: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}});Events.implement({hasEvent:function(a){return(this.$events&&this.$events[a]!=null)?true:false}});Array.implement({fPick:function(a){var b=this.slice(a,a+1);this.splice(a,1);return b}});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};
