var Clientcide={version:"700",setAssetLocation:function(c){if(window.StickyWin&&StickyWin.ui){var d=StickyWin.ui.bind(window);StickyWin.ui=function(f,e,g){return d(f,e,$merge({baseHref:c+"/stickyWinHTML/"},g))};if(StickyWin.alert){var b=StickyWin.alert.bind(window);StickyWin.alert=function(g,f,e){return b(g,f,e||c+"/simple.error.popup")}}}if(window.TagMaker){TagMaker=TagMaker.refactor({options:{baseHref:c+"/tips/"}})}if(window.ProductPicker){ProductPicker.refactor({options:{baseHref:c+"/Picker"}})}if(window.Autocompleter){var a={options:{baseHref:c+"/autocompleter/"}};Autocompleter.Base.refactor(a);if(Autocompleter.Ajax){["Base","Xhtml","Json"].each(function(e){if(Autocompleter.Ajax[e]){Autocompleter.Ajax[e].refactor(a)}})}if(Autocompleter.Local){Autocompleter.Local.refactor(a)}if(Autocompleter.JsonP){Autocompleter.JsonP.refactor(a)}}if(window.Lightbox){Lightbox.refactor({options:{assetBaseUrl:c+"/slimbox/"}})}if(window.Waiter){Waiter.refactor({options:{baseHref:c+"/waiter/"}})}}};setCNETAssetBaseHref=Clientcide.setAssetLocation;Class.refactor=function(c,a){a=$extend($unlink(a),{Extends:c});var b=new Class(a);$each(c,function(e,d){b[d]=b[d]||e});return b};$extend(Class.prototype,{refactor:function(a){this.prototype=Class.refactor(this,a).prototype;return this}});Class.Binds=new Class({bindMethods:function(){var a=arguments.length>0?arguments:this.binds;Array.flatten(a).each(function(c){var b=this[c];this[c]=function(){return b.apply(this,arguments)}.bind(this);this[c].parent=b.parent},this);return this}});if(window.Options){Options=Class.refactor(Options,{setOptions:function(){this.parent.apply(this,arguments);return this.bindMethods?this.bindMethods():this}})}(function(){var b={wait:function(c){return this.chain(function(){this.callChain.delay($pick(c,500),this)}.bind(this))}};Chain.implement(b);if(window.Fx){Fx.implement(b);["Css","Tween","Elements"].each(function(c){if(Fx[c]){Fx[c].implement(b)}})}try{Element.implement({chains:function(c){$splat($pick(c,["tween","morph","reveal"])).each(function(d){this.get(d).setOptions({link:"chain"})},this);return this},pauseFx:function(d,c){this.chains(c).get($pick(c,"tween")).wait(d);return this}})}catch(a){}})();$extend(Browser,{getHost:function(a){a=$pick(a,window.location.href);var b=a;if(a.test("http://")){a=a.substring(a.indexOf("http://")+7,a.length);if(a.test(":")){a=a.substring(0,a.indexOf(":"))}if(a.test("/")){return a.substring(0,a.indexOf("/"))}return a}return false},getQueryStringValue:function(b,a){try{return Browser.getQueryStringValues(a)[b]}catch(c){return null}},getQueryStringValues:function(b){var a=$pick(b,window.location.search,"").split("?")[1];if(!$chk(a)){return{}}if(a.test("#")){a=a.substring(0,a.indexOf("#"))}try{if(a){return a.parseQuery()}}catch(c){return null}return{}},getPort:function(c){c=$pick(c,window.location.href);var d=new RegExp(":([0-9]{4})");var a=d.exec(c);if(a==null){return false}else{var b=false;a.each(function(e){if($chk(parseInt(e))){b=e}})}return b}});window.addEvent("domready",function(){var b=0;function a(){function c(){b++;if(b<20){a.delay(50)}}try{if(!Browser.getQueryStringValues()){c()}else{Browser.qs=Browser.getQueryStringValues()}}catch(d){c()}}a()});$extend(Browser,{fixPNG:function(d){try{if(Browser.Engine.trident4){d=$(d);if(!d){return d}if(d.get("tag")=="img"&&d.get("src").test(".png")){var h=d.isVisible();try{dim=d.getSize()}catch(i){}if(!h){var g={};["visibility","display","position"].each(function(e){g[e]=this.style[e]||""},this);this.setStyles({visibility:"hidden",display:"block",position:"absolute"});dim=d.getSize();this.setStyles(g);d.hide()}var c=new Element("span",{id:(d.id)?d.id:"","class":(d.className)?d.className:"",title:(d.title)?d.title:(d.alt)?d.alt:"",styles:{display:h?"inline-block":"none",width:dim.x,height:dim.y,filter:"progid:DXImageTransform.Microsoft.AlphaImageLoader (src='"+d.src+"', sizingMethod='scale');"},src:d.src});if(d.style.cssText){try{var f={};var b=d.style.cssText.split(";");b.each(function(e){var j=e.split(":");f[j[0]]=j[1]});c.setStyle(f)}catch(i){}}if(c.cloneEvents){c.cloneEvents(d)}c.replaces(d)}else{if(d.get("tag")!="img"){var a=d.getStyle("background-image");if(a.test(/\((.+)\)/)){d.setStyles({background:"",filter:"progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled='true', sizingMethod='crop', src="+a.match(/\((.+)\)/)[1]+")"})}}}}}catch(i){}},pngTest:/\.png$/,scanForPngs:function(c,b){b=b||"fixPNG";if(document.getElements){c=$(c||document.body);c.getElements("img[src$=.png]").addClass(b)}else{var a=$$("img").each(function(d){if(Browser.pngTest(d.src)){d.addClass(b)}})}}});if(Browser.Engine.trident4){window.addEvent("domready",function(){$$("img.fixPNG").each(Browser.fixPNG)})}var IframeShim=new Class({Implements:[Options,Events],options:{name:"",className:"iframeShim",display:false,zindex:null,margin:0,offset:{x:0,y:0},browsers:(Browser.Engine.trident4||(Browser.Engine.gecko&&!Browser.Engine.gecko19&&Browser.Platform.mac))},initialize:function(b,a){this.setOptions(a);if(this.options.offset&&this.options.offset.top){this.options.offset.y=this.options.offset.top}if(this.options.offset&&this.options.offset.left){this.options.offset.x=this.options.offset.left}this.element=$(b);this.makeShim();return},makeShim:function(){this.shim=new Element("iframe");this.id=this.options.name||new Date().getTime()+"_shim";if(!this.options.browsers){return}if(this.element.getStyle("z-Index").toInt()<1||isNaN(this.element.getStyle("z-Index").toInt())){this.element.setStyle("z-Index",5)}var b=this.element.getStyle("z-Index")-1;if($chk(this.options.zindex)&&this.element.getStyle("z-Index").toInt()>this.options.zindex){b=this.options.zindex}this.shim.setStyles({position:"absolute",zIndex:b,border:"none",filter:"progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)"}).setProperties({src:(window.location.protocol=="https")?"://0":"javascript:void(0)",frameborder:"0",scrolling:"no",id:this.id}).addClass(this.options.className);this.element.store("shim",this);var a=function(){this.shim.inject(this.element,"after");if(this.options.display){this.show()}else{this.hide()}this.fireEvent("onInject")};if(this.options.browsers){if(Browser.Engine.trident&&!IframeShim.ready){window.addEvent("load",a.bind(this))}else{a.run(null,this)}}},position:function(c){if(!this.options.browsers||!IframeShim.ready){return this}var b=this.element.expose();var a=this.element.getSize();b();if($type(this.options.margin)){a.x=a.x-(this.options.margin*2);a.y=a.y-(this.options.margin*2);this.options.offset.x+=this.options.margin;this.options.offset.y+=this.options.margin}this.shim.setStyles({width:a.x,height:a.y}).setPosition({relativeTo:this.element,offset:this.options.offset});return this},hide:function(){if(this.options.browsers){this.shim.setStyle("display","none")}return this},show:function(){if(!this.options.browsers){return this}this.shim.setStyle("display","block");return this.position()},dispose:function(){if(this.options.browsers){this.shim.dispose()}return this}});window.addEvent("load",function(){IframeShim.ready=true});Browser.Popup=new Class({Implements:[Options,Events],options:{width:500,height:300,x:50,y:50,toolbar:0,location:0,directories:0,status:0,scrollbars:"auto",resizable:1,name:"popup"},initialize:function(b,a){this.url=b||false;this.setOptions(a);if(this.url){this.openWin()}},openWin:function(b){b=b||this.url;var a="toolbar="+this.options.toolbar+",location="+this.options.location+",directories="+this.options.directories+",status="+this.options.status+",scrollbars="+this.options.scrollbars+",resizable="+this.options.resizable+",width="+this.options.width+",height="+this.options.height+",top="+this.options.y+",left="+this.options.x;this.window=window.open(b,this.options.name,a);if(!this.window){this.window=window.open("",this.options.name,a);this.window.location.href=b}this.focus.delay(100,this);return this},focus:function(){if(this.window){this.window.focus()}else{if(this.focusTries<10){this.focus.delay(100,this)}else{this.blocked=true;this.fireEvent("onBlock")}}return this},focusTries:0,blocked:null,close:function(){this.window.close();return this}});new Native({name:"Date",initialize:Date,protect:true});["now","parse","UTC"].each(function(a){Native.genericize(Date,a,true)});Date.$Methods=new Hash();["Date","Day","FullYear","Hours","Milliseconds","Minutes","Month","Seconds","Time","TimezoneOffset","Week","Timezone","GMTOffset","DayOfYear","LastMonth","UTCDate","UTCDay","UTCFullYear","AMPM","UTCHours","UTCMilliseconds","UTCMinutes","UTCMonth","UTCSeconds"].each(function(a){Date.$Methods.set(a.toLowerCase(),a)});$each({ms:"Milliseconds",year:"FullYear",min:"Minutes",mo:"Month",sec:"Seconds",hr:"Hours"},function(b,a){Date.$Methods.set(a,b)});Date.implement({set:function(b,c){b=b.toLowerCase();var a=Date.$Methods;if(a.has(b)){this["set"+a.get(b)](c)}return this},get:function(b){b=b.toLowerCase();var a=Date.$Methods;if(a.has(b)){return this["get"+a.get(b)]()}return null},clone:function(){return new Date(this.get("time"))},increment:function(a,b){return this.multiply(a,b)},decrement:function(a,b){return this.multiply(a,b,false)},multiply:function(b,g,a){b=b||"day";g=$pick(g,1);a=$pick(a,true);var h=a?1:-1;var e=this.format("%m").toInt()-1;var c=this.format("%Y").toInt();var d=this.get("time");var f=0;switch(b){case"year":g.times(function(i){if(Date.isLeapYear(c+i)&&e>1&&h>0){i++}if(Date.isLeapYear(c+i)&&e<=1&&h<0){i--}f+=Date.$units.year(c+i)});break;case"month":g.times(function(k){if(h<0){k++}var j=e+(k*h);var i=i;if(j<0){i--;j=12+j}if(j>11||j<0){i+=(j/12).toInt()*h;j=j%12}f+=Date.$units.month(j,i)});break;case"day":return this.set("date",this.get("date")+(h*g));default:f=Date.$units[b]()*g;break}this.set("time",d+(f*h));return this},isLeapYear:function(){return Date.isLeapYear(this.get("year"))},clearTime:function(){["hr","min","sec","ms"].each(function(a){this.set(a,0)},this);return this},diff:function(e,b){b=b||"day";if($type(e)=="string"){e=Date.parse(e)}switch(b){case"year":return e.format("%Y").toInt()-this.format("%Y").toInt();break;case"month":var a=(e.format("%Y").toInt()-this.format("%Y").toInt())*12;return a+e.format("%m").toInt()-this.format("%m").toInt();break;default:var c=e.get("time")-this.get("time");if(c<0&&Date.$units[b]()>(-1*(c))){return 0}else{if(c>=0&&c<Date.$units[b]()){return 0}}return((e.get("time")-this.get("time"))/Date.$units[b]()).round()}},getWeek:function(){var a=(new Date(this.get("year"),0,1)).get("date");return Math.round((this.get("dayofyear")+(a>3?a-4:a+3))/7)},getTimezone:function(){return this.toString().replace(/^.*? ([A-Z]{3}).[0-9]{4}.*$/,"$1").replace(/^.*?\(([A-Z])[a-z]+ ([A-Z])[a-z]+ ([A-Z])[a-z]+\)$/,"$1$2$3")},getGMTOffset:function(){var a=this.get("timezoneOffset");return((a>0)?"-":"+")+Math.floor(Math.abs(a)/60).zeroise(2)+(a%60).zeroise(2)},parse:function(a){this.set("time",Date.parse(a));return this},format:function(a){a=a||"%x %X";if(!this.valueOf()){return"invalid date"}if(Date.$formats[a.toLowerCase()]){a=Date.$formats[a.toLowerCase()]}var b=this;return a.replace(/\%([aAbBcdHIjmMpSUWwxXyYTZ])/g,function(d,f){switch(f){case"a":return Date.$days[b.get("day")].substr(0,3);case"A":return Date.$days[b.get("day")];case"b":return Date.$months[b.get("month")].substr(0,3);case"B":return Date.$months[b.get("month")];case"c":return b.toString();case"d":return b.get("date").zeroise(2);case"H":return b.get("hr").zeroise(2);case"I":return((b.get("hr")%12)||12);case"j":return b.get("dayofyear").zeroise(3);case"m":return(b.get("mo")+1).zeroise(2);case"M":return b.get("min").zeroise(2);case"p":return b.get("hr")<12?"AM":"PM";case"S":return b.get("seconds").zeroise(2);case"U":return b.get("week").zeroise(2);case"W":throw new Error("%W is not supported yet");case"w":return b.get("day");case"x":var e=Date.$cultures[Date.$culture];return b.format("%"+e[0].substr(0,1)+e[3]+"%"+e[1].substr(0,1)+e[3]+"%"+e[2].substr(0,1).toUpperCase());case"X":return b.format("%I:%M%p");case"y":return b.get("year").toString().substr(2);case"Y":return b.get("year");case"T":return b.get("GMTOffset");case"Z":return b.get("Timezone");case"%":return"%"}return f})},setAMPM:function(a){a=a.toUpperCase();if(this.format("%H").toInt()>11&&a=="AM"){return this.decrement("hour",12)}else{if(this.format("%H").toInt()<12&&a=="PM"){return this.increment("hour",12)}}return this}});Date.prototype.compare=Date.prototype.diff;Date.prototype.strftime=Date.prototype.format;Date.$nativeParse=Date.parse;$extend(Date,{$months:["January","February","March","April","May","June","July","August","September","October","November","December"],$days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],$daysInMonth:function(b,a){if(Date.isLeapYear(a.toInt())&&b===1){return 29}return[31,28,31,30,31,30,31,31,30,31,30,31][b]},$epoch:-1,$era:-2,$units:{ms:function(){return 1},second:function(){return 1000},minute:function(){return 60000},hour:function(){return 3600000},day:function(){return 86400000},week:function(){return 608400000},month:function(c,a){var b=new Date();return Date.$daysInMonth($pick(c,b.format("%m").toInt()),$pick(a,b.format("%Y").toInt()))*86400000},year:function(a){a=a||new Date().format("%Y").toInt();return Date.isLeapYear(a.toInt())?31622400000:31536000000}},$formats:{db:"%Y-%m-%d %H:%M:%S",compact:"%Y%m%dT%H%M%S",iso8601:"%Y-%m-%dT%H:%M:%S%T",rfc822:"%a, %d %b %Y %H:%M:%S %Z","short":"%d %b %H:%M","long":"%B %d, %Y %H:%M"},isLeapYear:function(a){return new Date(a,1,29).getDate()==29},parseUTC:function(b){var a=new Date(b);var c=Date.UTC(a.get("year"),a.get("mo"),a.get("date"),a.get("hr"),a.get("min"),a.get("sec"));return new Date(c)},parse:function(g){var c=$type(g);if(c=="number"){return new Date(g)}if(c!="string"){return g}if(!g.length){return null}for(var b=0,a=Date.$parsePatterns.length;b<a;b++){var d=Date.$parsePatterns[b].re.exec(g);if(d){try{return Date.$parsePatterns[b].handler(d)}catch(f){return null}}}return new Date(Date.$nativeParse(g))},parseMonth:function(d,c){var b=-1;switch($type(d)){case"object":b=Date.$months[d.get("mo")];break;case"number":b=Date.$months[d-1]||false;if(!b){throw new Error("Invalid month index value must be between 1 and 12:"+index)}break;case"string":var a=Date.$months.filter(function(e){return this.test(e)},new RegExp("^"+d,"i"));if(!a.length){throw new Error("Invalid month string")}if(a.length>1){throw new Error("Ambiguous month")}b=a[0]}return(c)?Date.$months.indexOf(b):b},parseDay:function(a,d){var c=-1;switch($type(a)){case"number":c=Date.$days[a-1]||false;if(!c){throw new Error("Invalid day index value must be between 1 and 7")}break;case"string":var b=Date.$days.filter(function(e){return this.test(e)},new RegExp("^"+a,"i"));if(!b.length){throw new Error("Invalid day string")}if(b.length>1){throw new Error("Ambiguous day")}c=b[0]}return(d)?Date.$days.indexOf(c):c},fixY2K:function(b){if(!isNaN(b)){var a=new Date(b);if(a.get("year")<2000&&b.toString().indexOf(a.get("year"))<0){a.increment("year",100)}return a}else{return b}},$cultures:{US:["month","date","year","/"],GB:["date","month","year","/"]},$culture:"US",$language:"enUS",$cIndex:function(a){return Date.$cultures[Date.$culture].indexOf(a)+1},$parsePatterns:[{re:/^(\d{1,2})[\.\-\/](\d{1,2})[\.\-\/](\d{2,4})$/,handler:function(b){var c=new Date();var a=Date.$cultures[Date.$culture];c.set("year",b[Date.$cIndex("year")]);c.set("month",b[Date.$cIndex("month")]-1);c.set("date",b[Date.$cIndex("date")]);return Date.fixY2K(c)}},{re:/^(\d{1,2})[\.\-\/](\d{1,2})[\.\-\/](\d{2,4})\s(\d{1,2}):(\d{1,2})(\w{2})$/,handler:function(a){var b=new Date();b.set("year",a[Date.$cIndex("year")]);b.set("month",a[Date.$cIndex("month")]-1);b.set("date",a[Date.$cIndex("date")]);b.set("hr",a[4]);b.set("min",a[5]);b.set("ampm",a[6]);return Date.fixY2K(b)}}]});Number.implement({zeroise:function(a){return String(this).zeroise(a)}});String.implement({repeat:function(c){var a=[];for(var b=0;b<c;b++){a.push(this)}return a.join("")},zeroise:function(a){return"0".repeat(a-this.length)+this}});["LastDayOfMonth","Ordinal"].each(function(a){Date.$Methods.set(a.toLowerCase(),a)});Date.implement({timeDiffInWords:function(){var a=(arguments.length>0)?arguments[1]:new Date();return Date.distanceOfTimeInWords(this,a)},getOrdinal:function(){var a=this.get("date");return(a>3&&a<21)?"th":["th","st","nd","rd","th"][Math.min(a%10,4)]},getDayOfYear:function(){return((Date.UTC(this.getFullYear(),this.getMonth(),this.getDate()+1,0,0,0)-Date.UTC(this.getFullYear(),0,1,0,0,0))/Date.$units.day())},getLastDayOfMonth:function(){var a=this.clone();a.setMonth(a.getMonth()+1,0);return a.getDate()}});Date.alias("timeDiffInWords","timeAgoInWords");$extend(Date,{distanceOfTimeInWords:function(b,a){return Date.getTimePhrase(((a.getTime()-b.getTime())/1000).toInt(),b,a)},getTimePhrase:function(e,d,b){var a=Date.$resources[Date.$language];var c=function(){if(e>=0){if(e<60){return a.ago.lessThanMinute}else{if(e<120){return a.ago.minute}else{if(e<(45*60)){e=(e/60).round();return a.ago.minutes}else{if(e<(90*60)){return a.ago.hour}else{if(e<(24*60*60)){e=(e/3600).round();return a.ago.hours}else{if(e<(48*60*60)){return a.ago.day}else{e=(e/86400).round();return a.ago.days}}}}}}}if(e<0){e=e*-1;if(e<60){return a.until.lessThanMinute}else{if(e<120){return a.until.minute}else{if(e<(45*60)){e=(e/60).round();return a.until.minutes}else{if(e<(90*60)){return a.until.hour}else{if(e<(24*60*60)){e=(e/3600).round();return a.until.hours}else{if(e<(48*60*60)){return a.until.day}else{e=(e/86400).round();return a.until.days}}}}}}}};return c().substitute({delta:e})}});Date.$resources={enUS:{ago:{lessThanMinute:"less than a minute ago",minute:"about a minute ago",minutes:"{delta} minutes ago",hour:"about an hour ago",hours:"about {delta} hours ago",day:"1 day ago",days:"{delta} days ago"},until:{lessThanMinute:"less than a minute from now",minute:"about a minute from now",minutes:"{delta} minutes from now",hour:"about an hour from now",hours:"about {delta} hours from now",day:"1 day from now",days:"{delta} days from now"}}};Date.$parsePatterns.extend([{re:/^(\d{4})(?:-?(\d{2})(?:-?(\d{2})(?:[T ](\d{2})(?::?(\d{2})(?::?(\d{2})(?:\.(\d+))?)?)?(?:Z|(?:([-+])(\d{2})(?::?(\d{2}))?)?)?)?)?)?$/,handler:function(a){var c=0;var b=new Date(a[1],0,1);if(a[2]){b.setMonth(a[2]-1)}if(a[3]){b.setDate(a[3])}if(a[4]){b.setHours(a[4])}if(a[5]){b.setMinutes(a[5])}if(a[6]){b.setSeconds(a[6])}if(a[7]){b.setMilliseconds(("0."+a[7]).toInt()*1000)}if(a[9]){c=(a[9].toInt()*60)+a[10].toInt();c*=((a[8]=="-")?1:-1)}b.setTime((b*1)+(c*60*1000).toInt());return b}},{re:/^tod/i,handler:function(){return new Date()}},{re:/^tom/i,handler:function(){return new Date().increment()}},{re:/^yes/i,handler:function(){return new Date().decrement()}},{re:/^(\d{1,2})(st|nd|rd|th)?$/i,handler:function(a){var b=new Date();b.setDate(a[1].toInt());return b}},{re:/^(\d{1,2})(?:st|nd|rd|th)? (\w+)$/i,handler:function(a){var b=new Date();b.setMonth(Date.parseMonth(a[2],true),a[1].toInt());return b}},{re:/^(\d{1,2})(?:st|nd|rd|th)? (\w+),? (\d{4})$/i,handler:function(a){var b=new Date();b.setMonth(Date.parseMonth(a[2],true),a[1].toInt());b.setYear(a[3]);return b}},{re:/^(\w+) (\d{1,2})(?:st|nd|rd|th)?,? (\d{4})$/i,handler:function(a){var b=new Date();b.setMonth(Date.parseMonth(a[1],true),a[2].toInt());b.setYear(a[3]);return b}},{re:/^next (\w+)$/i,handler:function(e){var f=new Date();var b=f.getDay();var c=Date.parseDay(e[1],true);var a=c-b;if(c<=b){a+=7}f.setDate(f.getDate()+a);return f}},{re:/^\d+\s[a-zA-z]..\s\d.\:\d.$/,handler:function(b){var c=new Date();b=b[0].split(" ");c.setDate(b[0]);var a;Date.$months.each(function(e,d){if(new RegExp("^"+b[1]).test(e)){a=d}});c.setMonth(a);c.setHours(b[2].split(":")[0]);c.setMinutes(b[2].split(":")[1]);c.setMilliseconds(0);return c}},{re:/^last (\w+)$/i,handler:function(a){return Date.parse("next "+a[0]).decrement("day",7)}}]);Hash.implement({getFromPath:function(a){var b=this.getClean();a.replace(/\[([^\]]+)\]|\.([^.[]+)|[^[.]+/g,function(c){if(!b){return}var d=arguments[2]||arguments[1]||arguments[0];b=(d in b)?b[d]:null;return c});return b},cleanValues:function(a){a=a||$defined;this.each(function(c,b){if(!a(c)){this.erase(b)}},this);return this},run:function(){var a=$arguments;this.each(function(c,b){if($type(c)=="function"){c.run(a)}})}});String.implement({stripTags:function(){return this.replace(/<\/?[^>]+>/gi,"")},parseQuery:function(c,a){c=$pick(c,true);a=$pick(a,true);var d=this.split(/[&;]/);var b={};if(d.length){d.each(function(f){var e=f.split("=");if(e.length&&e.length==2){b[(c)?encodeURIComponent(e[0]):e[0]]=(a)?encodeURIComponent(e[1]):e[1]}})}return b},tidy:function(){var a=this.toString();$each({"[\xa0\u2002\u2003\u2009]":" ","\xb7":"*","[\u2018\u2019]":"'","[\u201c\u201d]":'"',"\u2026":"...","\u2013":"-","\u2014":"--","\uFFFD":"&raquo;"},function(c,b){a=a.replace(new RegExp(b,"g"),c)});return a},cleanQueryString:function(a){return this.split("&").filter(a||function(b){return $chk(b.split("=")[1])}).join("&")},findAllEmails:function(){return this.match(new RegExp("[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?","gi"))||[]}});Element.implement({expose:function(){if(this.getStyle("display")!="none"){return $empty}var b={};var a={visibility:"hidden",display:"block",position:"absolute"};$each(a,function(d,c){b[c]=this.style[c]||""},this);this.setStyles(a);return(function(){this.setStyles(b)}).bind(this)},getDimensions:function(a){a=$merge({computeSize:false},a);var f={};function d(g,e){return(e.computeSize)?g.getComputedSize(e):g.getSize()}if(this.getStyle("display")=="none"){var b=this.expose();f=d(this,a);b()}else{try{f=d(this,a)}catch(c){}}return $chk(f.x)?$extend(f,{width:f.x,height:f.y}):$extend(f,{x:f.width,y:f.height})},getComputedSize:function(a){a=$merge({styles:["padding","border"],plains:{height:["top","bottom"],width:["left","right"]},mode:"both"},a);var c={width:0,height:0};switch(a.mode){case"vertical":delete c.width;delete a.plains.width;break;case"horizontal":delete c.height;delete a.plains.height;break}var b=[];$each(a.plains,function(g,f){g.each(function(h){a.styles.each(function(i){b.push((i=="border")?i+"-"+h+"-width":i+"-"+h)})})});var e=this.getStyles.apply(this,b);var d=[];$each(a.plains,function(g,f){c["total"+f.capitalize()]=0;c["computed"+f.capitalize()]=0;g.each(function(h){c["computed"+h.capitalize()]=0;b.each(function(k,j){if(k.test(h)){e[k]=e[k].toInt();if(isNaN(e[k])){e[k]=0}c["total"+f.capitalize()]=c["total"+f.capitalize()]+e[k];c["computed"+h.capitalize()]=c["computed"+h.capitalize()]+e[k]}if(k.test(h)&&f!=k&&(k.test("border")||k.test("padding"))&&!d.contains(k)){d.push(k);c["computed"+f.capitalize()]=c["computed"+f.capitalize()]-e[k]}})})});if($chk(c.width)){c.width=c.width+this.offsetWidth+c.computedWidth;c.totalWidth=c.width+c.totalWidth;delete c.computedWidth}if($chk(c.height)){c.height=c.height+this.offsetHeight+c.computedHeight;c.totalHeight=c.height+c.totalHeight;delete c.computedHeight}return $extend(e,c)}});Element.implement({setPosition:function(n){$each(n||{},function(p,o){if(!$defined(p)){delete n[o]}});n=$merge({relativeTo:document.body,position:{x:"center",y:"center"},edge:false,offset:{x:0,y:0},returnPos:false,relFixedPosition:false,ignoreMargins:false},n);var a={x:0,y:0};var f=false;var g=this.expose();var b=$(this.getOffsetParent());g();if(b&&b!=this.getDocument().body){var g=b.expose();a=b.getPosition();g();f=true;n.offset.x=n.offset.x-a.x;n.offset.y=n.offset.y-a.y}function m(o){if($type(o)!="string"){return o}o=o.toLowerCase();var p={};if(o.test("left")){p.x="left"}else{if(o.test("right")){p.x="right"}else{p.x="center"}}if(o.test("upper")||o.test("top")){p.y="top"}else{if(o.test("bottom")){p.y="bottom"}else{p.y="center"}}return p}n.edge=m(n.edge);n.position=m(n.position);if(!n.edge){if(n.position.x=="center"&&n.position.y=="center"){n.edge={x:"center",y:"center"}}else{n.edge={x:"left",y:"top"}}}this.setStyle("position","absolute");var l=$(n.relativeTo)||document.body;var k=(l==document.body)?window.getScroll().y:l.getPosition().y;var e=(l==document.body)?window.getScroll().x:l.getPosition().x;if(k<0){k=0}if(e<0){e=0}var h=this.getDimensions({computeSize:true,styles:["padding","border","margin"]});if(n.ignoreMargins){n.offset.x=n.offset.x-h["margin-left"];n.offset.y=n.offset.y-h["margin-top"]}var j={};var c=n.offset.y.toInt();var d=n.offset.x.toInt();switch(n.position.x){case"left":j.x=e+d;break;case"right":j.x=e+d+l.offsetWidth;break;default:j.x=e+(((l==document.body)?window.getSize().x:l.offsetWidth)/2)+d;break}switch(n.position.y){case"top":j.y=k+c;break;case"bottom":j.y=k+c+l.offsetHeight;break;default:j.y=k+(((l==document.body)?window.getSize().y:l.offsetHeight)/2)+c;break}if(n.edge){var i={};switch(n.edge.x){case"left":i.x=0;break;case"right":i.x=-h.x-h.computedRight-h.computedLeft;break;default:i.x=-(h.x/2);break}switch(n.edge.y){case"top":i.y=0;break;case"bottom":i.y=-h.y-h.computedTop-h.computedBottom;break;default:i.y=-(h.y/2);break}j.x=j.x+i.x;j.y=j.y+i.y}j={left:((j.x>=0||f)?j.x:0).toInt(),top:((j.y>=0||f)?j.y:0).toInt()};if(l.getStyle("position")=="fixed"||n.relFixedPosition){j.top=j.top.toInt()+window.getScroll().y;j.left=j.left.toInt()+window.getScroll().x}if(n.returnPos){return j}else{this.setStyles(j)}return this}});Element.implement({isVisible:function(){return this.getStyle("display")!="none"},toggle:function(){return this[this.isVisible()?"hide":"show"]()},hide:function(){var b;try{if("none"!=this.getStyle("display")){b=this.getStyle("display")}}catch(a){}this.store("originalDisplay",b||"block");this.setStyle("display","none");return this},show:function(a){original=this.retrieve("originalDisplay")?this.retrieve("originalDisplay"):this.get("originalDisplay");this.setStyle("display",(a||original||"block"));return this},swapClass:function(a,b){return this.removeClass(a).addClass(b)},fxOpacityOk:function(){return !Browser.Engine.trident4}});$G=function(a){return $splat($(a)||$$(a))};Fx.Move=new Class({Extends:Fx.Morph,options:{relativeTo:document.body,position:"center",edge:false,offset:{x:0,y:0}},start:function(a){return this.parent(this.element.setPosition($merge(this.options,a,{returnPos:true})))}});Element.Properties.move={set:function(a){var b=this.retrieve("move");if(b){b.cancel()}return this.eliminate("move").store("move:options",$extend({link:"cancel"},a))},get:function(a){if(a||!this.retrieve("move")){if(a||!this.retrieve("move:options")){this.set("move",a)}this.store("move",new Fx.Move(this,this.retrieve("move:options")))}return this.retrieve("move")}};Element.implement({move:function(a){this.get("move").start(a);return this}});Fx.Reveal=new Class({Extends:Fx.Morph,options:{styles:["padding","border","margin"],transitionOpacity:true,mode:"vertical",heightOverride:null,widthOverride:null},dissolve:function(){try{if(!this.hiding&&!this.showing){if(this.element.getStyle("display")!="none"){this.hiding=true;this.showing=false;this.hidden=true;var c=this.element.getComputedSize({styles:this.options.styles,mode:this.options.mode});var f=this.element.style.height===""||this.element.style.height=="auto";this.element.setStyle("display","block");if(this.element.fxOpacityOk()&&this.options.transitionOpacity){c.opacity=1}var a={};$each(c,function(g,e){a[e]=[g,0]},this);var d=this.element.getStyle("overflow");this.element.setStyle("overflow","hidden");this.$chain=this.$chain||[];this.$chain.unshift(function(){if(this.hidden){this.hiding=false;$each(c,function(g,e){c[e]=g},this);this.element.setStyles($merge({display:"none",overflow:d},c));if(f){this.element.setStyle("height","auto")}}this.fireEvent("onHide",this.element);this.callChain()}.bind(this));this.start(a)}else{this.callChain.delay(10,this);this.fireEvent("onComplete",this.element);this.fireEvent("onHide",this.element)}}else{if(this.options.link=="chain"){this.chain(this.dissolve.bind(this))}else{if(this.options.link=="cancel"&&!this.hiding){this.cancel();this.dissolve()}}}}catch(b){this.hiding=false;this.element.hide();this.callChain.delay(10,this);this.fireEvent("onComplete",this.element);this.fireEvent("onHide",this.element)}return this},reveal:function(){try{if(!this.showing&&!this.hiding){if(this.element.getStyle("display")=="none"||this.element.getStyle("visiblity")=="hidden"||this.element.getStyle("opacity")==0){this.showing=true;this.hiding=false;this.hidden=false;var b=this.element.getStyles("visibility","display","position");this.element.setStyles({visibility:"hidden",display:"block",position:"absolute"});var g=this.element.style.height===""||this.element.style.height=="auto";if(this.element.fxOpacityOk()&&this.options.transitionOpacity){this.element.setStyle("opacity",0)}var d=this.element.getComputedSize({styles:this.options.styles,mode:this.options.mode});this.element.setStyles(b);$each(d,function(h,e){d[e]=h},this);if($chk(this.options.heightOverride)){d.height=this.options.heightOverride.toInt()}if($chk(this.options.widthOverride)){d.width=this.options.widthOverride.toInt()}if(this.element.fxOpacityOk()&&this.options.transitionOpacity){d.opacity=1}var a={height:0,display:"block"};$each(d,function(h,e){a[e]=0},this);var f=this.element.getStyle("overflow");this.element.setStyles($merge(a,{overflow:"hidden"}));this.start(d);if(!this.$chain){this.$chain=[]}this.$chain.unshift(function(){if(!this.options.heightOverride&&g){if(["vertical","both"].contains(this.options.mode)){this.element.setStyle("height","auto")}if(["width","both"].contains(this.options.mode)){this.element.setStyle("width","auto")}}if(!this.hidden){this.showing=false}this.element.setStyle("overflow",f);this.callChain();this.fireEvent("onShow",this.element)}.bind(this))}else{this.callChain();this.fireEvent("onComplete",this.element);this.fireEvent("onShow",this.element)}}else{if(this.options.link=="chain"){this.chain(this.reveal.bind(this))}else{if(this.options.link=="cancel"&&!this.showing){this.cancel();this.reveal()}}}}catch(c){this.element.setStyles({display:"block",visiblity:"visible",opacity:1});this.showing=false;this.callChain.delay(10,this);this.fireEvent("onComplete",this.element);this.fireEvent("onShow",this.element)}return this},toggle:function(){try{if(this.element.getStyle("display")=="none"||this.element.getStyle("visiblity")=="hidden"||this.element.getStyle("opacity")==0){this.reveal()}else{this.dissolve()}}catch(a){this.show()}return this}});Element.Properties.reveal={set:function(a){var b=this.retrieve("reveal");if(b){b.cancel()}return this.eliminate("reveal").store("reveal:options",$extend({link:"cancel"},a))},get:function(a){if(a||!this.retrieve("reveal")){if(a||!this.retrieve("reveal:options")){this.set("reveal",a)}this.store("reveal",new Fx.Reveal(this,this.retrieve("reveal:options")))}return this.retrieve("reveal")}};Element.Properties.dissolve=Element.Properties.reveal;Element.implement({reveal:function(a){this.get("reveal",a).reveal();return this},dissolve:function(a){this.get("reveal",a).dissolve();return this}});Element.implement({nix:function(){var a=Array.link(arguments,{destroy:Boolean.type,options:Object.type});this.get("reveal",a.options).dissolve().chain(function(){this[a.destroy?"destroy":"erase"]()}.bind(this));return this}});var Waiter=new Class({Implements:[Options,Events,Chain],options:{baseHref:"http://www.cnet.com/html/rb/assets/global/waiter/",containerProps:{styles:{position:"absolute","text-align":"center"},"class":"waiterContainer"},containerPosition:{},msg:false,msgProps:{styles:{"text-align":"center",fontWeight:"bold"},"class":"waiterMsg"},img:{src:"waiter.gif",styles:{width:24,height:24},"class":"waiterImg"},layer:{styles:{width:0,height:0,position:"absolute",zIndex:999,display:"none",opacity:0.9,background:"#fff"},"class":"waitingDiv"},useIframeShim:true,fxOptions:{}},initialize:function(c,a){this.target=$(c)||$(document.body);this.setOptions(a);this.waiterContainer=new Element("div",this.options.containerProps).inject(document.body);if(this.options.msg){this.msgContainer=new Element("div",this.options.msgProps);this.waiterContainer.adopt(this.msgContainer);if(!$(this.options.msg)){this.msg=new Element("p").appendText(this.options.msg)}else{this.msg=$(this.options.msg)}this.msgContainer.adopt(this.msg)}if(this.options.img){this.waiterImg=$(this.options.img.id)||new Element("img").inject(this.waiterContainer)}this.waiterOverlay=$(this.options.layer.id)||new Element("div").inject(document.body).adopt(this.waiterContainer);this.waiterOverlay.set(this.options.layer);try{if(this.options.useIframeShim){this.shim=new IframeShim(this.waiterOverlay,this.options.iframeShimOptions)}}catch(b){this.options.useIframeShim=false}this.waiterFx=this.waiterFx||new Fx.Elements($$(this.waiterContainer,this.waiterOverlay),this.options.fxOptions)},toggle:function(b,a){b=$(b)||$(this.active)||$(this.target);if(!$(b)){return this}if(this.active&&b!=this.active){return this.stop(this.start.bind(this,b))}if((!this.active||a)&&a!==false){this.start(b)}else{if(this.active&&!a){this.stop()}}return this},reset:function(){this.waiterFx.cancel().set({0:{opacity:[0]},1:{opacity:[0]}})},start:function(a){this.reset();a=$(a)||$(this.target);if(this.options.img){this.waiterImg.set($merge(this.options.img,{src:this.options.baseHref+this.options.img.src}))}var b=function(){var c=a.getComputedSize();this.active=a;this.waiterOverlay.setStyles({width:this.options.layer.width||c.totalWidth,height:this.options.layer.height||c.totalHeight,display:"block"}).setPosition({relativeTo:a,position:"upperLeft"});this.waiterContainer.setPosition($merge({relativeTo:this.waiterOverlay},this.options.containerPosition));if(this.options.useIframeShim){this.shim.show()}this.waiterFx.start({0:{opacity:[1]},1:{opacity:[this.options.layer.styles.opacity]}}).chain(function(){if(this.active==a){this.fireEvent("onShow",a)}this.callChain()}.bind(this))}.bind(this);if(this.active&&this.active!=a){this.stop(b)}else{b()}return this},stop:function(a){if(!this.active){if($type(a)=="function"){a.attempt()}return this}this.waiterFx.cancel();this.waiterFx.clearChain();this.waiterFx.start({0:{opacity:[0]},1:{opacity:[0]}}).chain(function(){this.active=null;this.waiterOverlay.hide();if(this.options.useIframeShim){this.shim.hide()}this.fireEvent("onHide",this.active);this.callChain();this.clearChain();if($type(a)=="function"){a.attempt()}}.bind(this));return this}});if(typeof Request!="undefined"&&Request.HTML){Request.HTML=Class.refactor(Request.HTML,{options:{useWaiter:false,waiterOptions:{},waiterTarget:false},initialize:function(a){this._send=this.send;this.send=function(b){if(this.waiter){this.waiter.start().chain(this._send.bind(this,b))}else{this._send(b)}return this};this.parent(a);if(this.options.useWaiter&&($(this.options.update)||$(this.options.waiterTarget))){this.waiter=new Waiter(this.options.waiterTarget||this.options.update,this.options.waiterOptions);["onComplete","onException","onCancel"].each(function(b){this.addEvent(b,this.waiter.stop.bind(this.waiter))},this)}}})}Element.Properties.waiter={set:function(a){var b=this.retrieve("waiter");return this.eliminate("wait").store("waiter:options")},get:function(a){if(a||!this.retrieve("waiter")){if(a||!this.retrieve("waiter:options")){this.set("waiter",a)}this.store("waiter",new Waiter(this,this.retrieve("waiter:options")))}return this.retrieve("waiter")}};Element.implement({wait:function(a){this.get("waiter",a).start();return this},release:function(){var a=Array.link(arguments,{options:Object.type,callback:Function.type});this.get("waiter",a.options).stop(a.callback);return this}});var Collapsable=new Class({Extends:Fx.Reveal,initialize:function(a,c,b){this.clicker=$(a);this.section=$(c);this.parent(this.section,b);this.addEvents()},addEvents:function(){this.clicker.addEvent("click",this.toggle.bind(this))}});var HoverGroup=new Class({Implements:[Options,Events,Class.Binds],options:{elements:[],delay:300,start:["mouseenter"],remain:[],end:["mouseleave"]},binds:["enter","leave","remain"],initialize:function(a){this.setOptions(a);this.attachTo(this.options.elements);this.addEvents({leave:function(){this.active=false},enter:function(){this.active=true}})},elements:[],attachTo:function(a,b){var c={};a=$G(a);this.options.start.each(function(d){c[d]=this.enter},this);this.options.end.each(function(d){c[d]=this.leave},this);this.options.remain.each(function(d){c[d]=this.remain},this);if(b){a.each(function(d){d.removeEvents(c);this.elements.erase(d)})}else{a.addEvents(c);this.elements.combine(a)}return this},detachFrom:function(a){this.attachTo(a,true)},enter:function(){this.isMoused=true;this.assert()},leave:function(){this.isMoused=false;this.assert()},remain:function(){if(this.active){this.enter()}},assert:function(){$clear(this.assertion);this.assertion=(function(){if(!this.isMoused&&this.active){this.fireEvent("leave")}else{if(this.isMoused&&!this.active){this.fireEvent("enter")}}}).delay(this.options.delay,this)}});var TabSwapper=new Class({Implements:[Options,Events],options:{selectedClass:"tabSelected",mouseoverClass:"tabOver",deselectedClass:"",rearrangeDOM:true,initPanel:0,smooth:false,smoothSize:false,maxSize:null,effectOptions:{duration:500},cookieName:null,cookieDays:999},tabs:[],sections:[],clickers:[],sectionFx:[],initialize:function(a){this.setOptions(a);var b=this.setup();if(b){return b}if(this.options.cookieName&&this.recall()){this.show(this.recall().toInt())}else{this.show(this.options.initPanel)}},setup:function(){var a=this.options;sections=$$(a.sections);tabs=$$(a.tabs);if(tabs[0]&&tabs[0].retrieve("tabSwapper")){return tabs[0].retrieve("tabSwapper")}clickers=$$(a.clickers);tabs.each(function(c,b){this.addTab(c,sections[b],clickers[b],b)},this)},addTab:function(c,d,a,b){c=$(c);a=$(a);d=$(d);if(this.tabs.indexOf(c)>=0&&c.retrieve("tabbered")&&this.tabs.indexOf(c)!=b&&this.options.rearrangeDOM){this.moveTab(this.tabs.indexOf(c),b);return this}if(!$defined(b)){b=this.tabs.length}if(b>0&&this.tabs[b-1]&&this.options.rearrangeDOM){c.inject(this.tabs[b-1],"after");d.inject(this.tabs[b-1].retrieve("section"),"after")}this.tabs.splice(b,0,c);a=a||c;c.addEvents({mouseout:function(){c.removeClass(this.options.mouseoverClass)}.bind(this),mouseover:function(){c.addClass(this.options.mouseoverClass)}.bind(this)});a.addEvent("click",function(f){f.preventDefault();this.show(b)}.bind(this));c.store("tabbered",true);c.store("section",d);c.store("clicker",a);this.hideSection(b);return this},removeTab:function(b){var a=this.tabs[this.now];if(this.now==b){if(b>0){this.show(b-1)}else{if(b<this.tabs.length){this.show(b+1)}}}this.now=this.tabs.indexOf(a);return this},moveTab:function(h,g){var c=this.tabs[h];var b=c.retrieve("clicker");var e=c.retrieve("section");var a=this.tabs[g];var f=a.retrieve("clicker");var d=a.retrieve("section");this.tabs.erase(c).splice(g,0,c);c.inject(a,"before");b.inject(f,"before");e.inject(d,"before");return this},show:function(a){if(!$chk(this.now)){this.tabs.each(function(c,b){if(a!=b){this.hideSection(b)}},this)}this.showSection(a).save(a);return this},save:function(a){if(this.options.cookieName){Cookie.write(this.options.cookieName,a,{duration:this.options.cookieDays})}return this},recall:function(){return(this.options.cookieName)?$pick(Cookie.read(this.options.cookieName),false):false},hideSection:function(a){var c=this.tabs[a];if(!c){return this}var b=c.retrieve("section");if(!b){return this}if(b.getStyle("display")!="none"){this.lastHeight=b.getSize().y;b.setStyle("display","none");c.swapClass(this.options.selectedClass,this.options.deselectedClass);this.fireEvent("onBackground",[a,b,c])}return this},showSection:function(a){var e=this.tabs[a];if(!e){return this}var b=e.retrieve("section");if(!b){return this}var f=this.options.smooth&&(!Browser.Engine.trident4||(Browser.Engine.trident4&&b.fxOpacityOk()));if(this.now!=a){if(!e.retrieve("tabFx")){e.store("tabFx",new Fx.Morph(b,this.options.effectOptions))}var g={display:"block",overflow:"hidden"};if(f){g.opacity=0}var d=false;if(f){d={opacity:1}}else{if(b.getStyle("opacity").toInt()<1){b.setStyle("opacity",1);if(!this.options.smoothSize){this.fireEvent("onActiveAfterFx",[a,b,e])}}}if(this.options.smoothSize){var c=b.getDimensions().height;if($chk(this.options.maxSize)&&this.options.maxSize<c){c=this.options.maxSize}if(!d){d={}}d.height=c}if($chk(this.now)){this.hideSection(this.now)}if(this.options.smoothSize&&this.lastHeight){g.height=this.lastHeight}b.setStyles(g);if(d){e.retrieve("tabFx").start(d).chain(function(){this.fireEvent("onActiveAfterFx",[a,b,e]);b.setStyle("height","auto")}.bind(this))}this.now=a;this.fireEvent("onActive",[a,b,e])}e.swapClass(this.options.deselectedClass,this.options.selectedClass);return this}});var Confirmer=new Class({Implements:[Options,Events],options:{reposition:true,positionOptions:{relativeTo:false,position:"upperRight",offset:{x:-225,y:0},zIndex:9999},msg:"your changes have been saved",msgContainerSelector:".body",delay:250,pause:1000,effectOptions:{duration:500},prompterStyle:{padding:"2px 6px",border:"1px solid #9f0000",backgroundColor:"#f9d0d0",fontWeight:"bold",color:"#000",width:210}},initialize:function(a){this.setOptions(a);this.options.positionOptions.relativeTo=$(this.options.positionOptions.relativeTo)||document.body;this.prompter=($(this.options.msg))?$(this.options.msg):this.makePrompter(this.options.msg);if(this.options.reposition){this.prompter.setStyles({position:"absolute",display:"none",zIndex:this.options.positionOptions.zIndex});if(this.prompter.fxOpacityOk()){this.prompter.setStyle("opacity",0)}}else{if(this.prompter.fxOpacityOk()){this.prompter.setStyle("opacity",0)}else{this.prompter.setStyle("visibility","hidden")}}if(!this.prompter.getParent()){window.addEvent("domready",function(){this.prompter.inject(document.body)}.bind(this))}try{this.msgHolder=this.prompter.getElement(this.options.msgContainerSelector);if(!this.msgHolder){this.msgHolder=this.prompter}}catch(b){}},makePrompter:function(a){return new Element("div").setStyles(this.options.prompterStyle).appendText(a)},prompt:function(a){if(!this.paused){this.stop()}var b=(a)?a.msg:false;a=$merge(this.options,{saveAsDefault:false},a||{});if($(a.msg)&&b){this.msgHolder.empty().adopt(a.msg)}else{if(!$(a.msg)&&a.msg){this.msgHolder.empty().appendText(a.msg)}}if(!this.paused){if(a.reposition){this.position(a.positionOptions)}(function(){this.timer=this.fade(a.pause)}).delay(a.delay,this)}if(a.saveAsDefault){this.setOptions(a)}return this},fade:function(a){this.paused=true;a=$pick(a,this.options.pause);if(!this.fx&&this.prompter.fxOpacityOk()){this.fx=new Fx.Tween(this.prompter,$merge({property:"opacity"},this.options.effectOptions))}if(this.options.reposition){this.prompter.setStyle("display","block")}if(this.prompter.fxOpacityOk()){this.prompter.setStyle("visibility","visible");this.fx.start(0,1).chain(function(){this.timer=(function(){this.fx.start(0).chain(function(){if(this.options.reposition){this.prompter.hide()}this.paused=false}.bind(this))}).delay(a,this)}.bind(this))}else{this.prompter.setStyle("visibility","visible");this.timer=(function(){this.prompter.setStyle("visibility","hidden");this.fireEvent("onComplete");this.paused=false}).delay(a+this.options.effectOptions.duration,this)}return this},stop:function(){this.paused=false;$clear(this.timer);if(this.fx){this.fx.set(0)}if(this.options.reposition){this.prompter.hide()}return this},position:function(a){this.prompter.setPosition($merge(this.options.positionOptions,a));return this}});var OverText=new Class({Implements:[Options,Events],options:{positionOptions:{position:"upperLeft",edge:"upperLeft",offset:{x:4,y:2}},poll:false,pollInterval:250},overTxtEls:[],initialize:function(a,b){this.setOptions(b);$$(a).each(this.addElement,this);OverText.instances.push(this);if(this.options.poll){this.poll()}},addElement:function(b){if(this.overTxtEls.contains(b)||b.retrieve("overtext")){return}var c=this.options.textOverride||b.get("alt")||b.get("title");if(!c){return}this.overTxtEls.push(b);var a=new Element("div",{"class":"overTxtDiv",styles:{lineHeight:"normal"},html:c,events:{click:this.hideTxt.pass([b,true],this)}}).inject(b,"after");b.addEvents({focus:this.hideTxt.pass([b,true],this),blur:this.testOverTxt.pass(b,this),change:this.testOverTxt.pass(b,this)}).store("overtext",a);window.addEvent("resize",this.repositionAll.bind(this));this.testOverTxt(b);this.repositionOverTxt(b)},startPolling:function(){this.pollingPaused=false;return this.poll()},poll:function(a){if(this.poller&&!a){return this}var b=function(){if(this.pollingPaused==true){return}this.overTxtEls.each(function(c){if(c.retrieve("ot_paused")){return}this.testOverTxt(c)},this)}.bind(this);if(a){$clear(this.poller)}else{this.poller=b.periodical(this.options.pollInterval,this)}return this},stopPolling:function(){this.pollingPaused=true;return this.poll(true)},hideTxt:function(c,b){var a=c.retrieve("overtext");if(a&&a.isVisible()&&!c.get("disabled")){a.hide();try{if(b){c.fireEvent("focus").focus()}}catch(d){}this.fireEvent("onTextHide",[a,c]);c.store("ot_paused",true)}return this},showTxt:function(b){var a=b.retrieve("overtext");if(a&&!a.isVisible()){a.show();this.fireEvent("onTextShow",[a,b]);b.store("ot_paused",false)}return this},testOverTxt:function(a){if(a.get("value")){this.hideTxt(a)}else{this.showTxt(a)}},repositionAll:function(){this.overTxtEls.each(this.repositionOverTxt.bind(this));return this},repositionOverTxt:function(b){if(!b){return}try{var a=b.retrieve("overtext");if(!a||!b.getParent()){return}this.testOverTxt(b);a.setPosition($merge(this.options.positionOptions,{relativeTo:b}));if(b.offsetHeight){this.testOverTxt(b)}else{this.hideTxt(b)}}catch(c){}return this}});OverText.instances=[];OverText.update=function(){return OverText.instances.map(function(a){return a.repositionAll()})};