var beforeload=(new Date()).getTime();var loadTimeWasPosted='no';function addLoadEvent(func){var oldonload=window.onload;if(typeof window.onload!='function'){window.onload=func;}else{window.onload=function(){if(oldonload){oldonload();}
func();}}}
addLoadEvent(function(){postLoadedTime('1');});var isWorking=false;function getHTTPObject(){var xmlhttp;/*@cc_on 
 @if (@_jscript_version >= 5)
  try { 
   xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
  } catch (e) { 
   try { 
   xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  } catch (E) {
   xmlhttp = false;
     } 
  } 
 @else 
 xmlhttp = false; 
 @end @*/if(!xmlhttp&&typeof XMLHttpRequest!='undefined'){try{xmlhttp=new XMLHttpRequest();}catch(e){xmlhttp=false;}}
return xmlhttp;}
var http=getHTTPObject();function returnHttpResponse(){if(http.readyState==4){if(http.responseText.indexOf('invalid')==-1){results=http.responseText.split("|");if(results[0]=='y'){if(results[1]=='1'){document.getElementById('step1').innerHTML=results[2];document.getElementById('step2').innerHTML='<h4>Pick a Category</h4>';document.getElementById('step3').innerHTML='';document.getElementById('step4').innerHTML='';}else if(results[1]=='2'){document.getElementById('step2').innerHTML=results[2];document.getElementById('step3').innerHTML='<h4>Pick a Sub-Category</h4>';document.getElementById('step4').innerHTML='';}else if(results[1]=='3'){document.getElementById('step3').innerHTML=results[2];document.getElementById('step4').innerHTML='';}else if(results[1]=='4'){document.getElementById('step4').innerHTML=results[2];}}
isWorking=false;}}}
function browseType(type){if(type=='none'){document.getElementById('step1').innerHTML='';document.getElementById('step2').innerHTML='';document.getElementById('step3').innerHTML='';document.getElementById('step4').innerHTML='';}else{var getString="/browser/browser.php?type="+escape(type)+"&step=1";http.open("GET",getString,true);http.onreadystatechange=returnHttpResponse;http.send(null);}}
function browser(type,cat,catValue,step){clearClicked(step-1);var getString="/browser/browser.php?type="+escape(type)+"&cat="+escape(cat)+"&catValue="+escape(catValue)+"&step="+escape(step);http.open("GET",getString,true);http.onreadystatechange=returnHttpResponse;http.send(null);}
function browserItem(sku){clearClicked('3');var getString="/browser/browser.php?sku="+escape(sku)+"&step=4";http.open("GET",getString,true);http.onreadystatechange=returnHttpResponse;http.send(null);}
function clearClicked(step){var n=1;while(tag=document.getElementById(step+"i"+n)){tag.className='';n++;}}
function postLoadedTime(endTime){if(loadTimeWasPosted!='yes'){var randomnumber=Math.floor(Math.random()*100000001);afterload=(new Date()).getTime();secondes=(afterload-beforeload)/1000;endTime=secondes;var getString="/endtrack.php?time="+escape(endTime)+"&rand="+randomnumber;laksdfjlawji3=new Image();laksdfjlawji3.src=getString;loadTimeWasPosted='yes';}}
function returnHttpResponseTime(){isWorking=false;};var liveSearchReq=false;var t=null;var liveSearchLast="";var isIE=false;if(window.XMLHttpRequest){liveSearchReq=new XMLHttpRequest();newMastheadReq=new XMLHttpRequest();}
function liveSearchInit(){if(navigator.userAgent.indexOf("Safari")>0){document.getElementById('livesearch').addEventListener("keydown",liveSearchKeyPress,false);}else if(navigator.product=="Gecko"){document.getElementById('livesearch').addEventListener("keypress",liveSearchKeyPress,false);}else{document.getElementById('livesearch').attachEvent('onkeydown',liveSearchKeyPress);isIE=true;}
sf();}
function liveSearchKeyPress(event){if(event.keyCode==40)
{highlight=document.getElementById("searchhighlight");if(!highlight){highlight=document.getElementById("searchresult").firstChild.firstChild.nextSibling.nextSibling.firstChild;}else{highlight.removeAttribute("id");highlight=highlight.nextSibling;}
if(highlight){highlight.setAttribute("id","searchhighlight");}
if(!isIE){event.preventDefault();}}
else if(event.keyCode==38){highlight=document.getElementById("searchhighlight");if(!highlight){highlight=document.getElementById("searchresult").firstChild.firstChild.nextSibling.nextSibling.lastChild;}
else{highlight.removeAttribute("id");highlight=highlight.previousSibling;}
if(highlight){highlight.setAttribute("id","searchhighlight");}
if(!isIE){event.preventDefault();}}
else if(event.keyCode==27){highlight=document.getElementById("searchhighlight");if(highlight){highlight.removeAttribute("id");}
document.getElementById("searchresult").style.display="none";document.forms.searchform.s.value='';}}
function closeLiveSearch(){highlight=document.getElementById("searchhighlight");if(highlight){highlight.removeAttribute("id");}
document.getElementById("searchresult").style.display="none";document.forms.searchform.s.value='';}
function liveSearchStart(){if(t){window.clearTimeout(t);}
t=window.setTimeout("liveSearchDoSearch()",200);}
function liveSearchDoSearch(){if(liveSearchLast!=document.forms.searchform.s.value){if(liveSearchReq&&liveSearchReq.readyState<4){liveSearchReq.abort();}
if(document.forms.searchform.s.value==""){document.getElementById("searchresult").style.display="none";highlight=document.getElementById("searchhighlight");if(highlight){highlight.removeAttribute("id");}
return false;}
if(window.XMLHttpRequest){}else if(window.ActiveXObject){liveSearchReq=new ActiveXObject("Microsoft.XMLHTTP");}
liveSearchReq.onreadystatechange=liveSearchProcessReqChange;liveSearchReq.open("GET","/suggest.php?s="+document.forms.searchform.s.value);liveSearchLast=document.forms.searchform.s.value;liveSearchReq.send(null);}}
function liveSearchProcessReqChange(){if(liveSearchReq.readyState==4){var res=document.getElementById("searchresult");res.style.display="block";res.firstChild.innerHTML='<div id="searchcontrols"><div style="float: right;"><a href="javascript://" title="Close results" onclick="closeLiveSearch()">close (esc)</a></div><div style="float: left">tip: use arrow keys + enter!</div><br /></div><div id="searchheader">Top Results:</div>'+liveSearchReq.responseText;}}
function liveSearchSubmit(){var highlight=document.getElementById("searchhighlight");if(highlight&&highlight.firstChild){window.location=highlight.firstChild.getAttribute("href");return false;}else{return true;}}
function closeResults(){document.getElementById("searchresult").style.display="none";}
function sf(){s=document.getElementById('livesearch');s.focus();}
function popup(url){theWindow=window.open(url,"FramesByMail","status=0,toolbar=0,scrollbars=1,resizable=1,width=516,height=500");theWindow.focus();};var Prototype={Version:'1.3.0',emptyFunction:function(){}}
var Class={create:function(){return function(){this.initialize.apply(this,arguments);}}}
var Abstract=new Object();Object.extend=function(destination,source){for(property in source){destination[property]=source[property];}
return destination;}
Object.prototype.extend=function(object){return Object.extend.apply(this,[this,object]);}
Function.prototype.bind=function(object){var __method=this;return function(){__method.apply(object,arguments);}}
Function.prototype.bindAsEventListener=function(object){var __method=this;return function(event){__method.call(object,event||window.event);}}
Number.prototype.toColorPart=function(){var digits=this.toString(16);if(this<16)return'0'+digits;return digits;}
var Try={these:function(){var returnValue;for(var i=0;i<arguments.length;i++){var lambda=arguments[i];try{returnValue=lambda();break;}catch(e){}}
return returnValue;}}
var PeriodicalExecuter=Class.create();PeriodicalExecuter.prototype={initialize:function(callback,frequency){this.callback=callback;this.frequency=frequency;this.currentlyExecuting=false;this.registerCallback();},registerCallback:function(){setInterval(this.onTimerEvent.bind(this),this.frequency*1000);},onTimerEvent:function(){if(!this.currentlyExecuting){try{this.currentlyExecuting=true;this.callback();}finally{this.currentlyExecuting=false;}}}}
function $(){var elements=new Array();for(var i=0;i<arguments.length;i++){var element=arguments[i];if(typeof element=='string')
element=document.getElementById(element);if(arguments.length==1)
return element;elements.push(element);}
return elements;}
if(!Array.prototype.push){Array.prototype.push=function(){var startLength=this.length;for(var i=0;i<arguments.length;i++)
this[startLength+i]=arguments[i];return this.length;}}
if(!Function.prototype.apply){Function.prototype.apply=function(object,parameters){var parameterStrings=new Array();if(!object)object=window;if(!parameters)parameters=new Array();for(var i=0;i<parameters.length;i++)
parameterStrings[i]='parameters['+i+']';object.__apply__=this;var result=eval('object.__apply__('+
parameterStrings[i].join(', ')+')');object.__apply__=null;return result;}}
String.prototype.extend({stripTags:function(){return this.replace(/<\/?[^>]+>/gi,'');},escapeHTML:function(){var div=document.createElement('div');var text=document.createTextNode(this);div.appendChild(text);return div.innerHTML;},unescapeHTML:function(){var div=document.createElement('div');div.innerHTML=this.stripTags();return div.childNodes[0].nodeValue;}});var Ajax={getTransport:function(){return Try.these(function(){return new ActiveXObject('Msxml2.XMLHTTP')},function(){return new ActiveXObject('Microsoft.XMLHTTP')},function(){return new XMLHttpRequest()})||false;}}
Ajax.Base=function(){};Ajax.Base.prototype={setOptions:function(options){this.options={method:'post',asynchronous:true,parameters:''}.extend(options||{});},responseIsSuccess:function(){return this.transport.status==undefined||this.transport.status==0||(this.transport.status>=200&&this.transport.status<300);},responseIsFailure:function(){return!this.responseIsSuccess();}}
Ajax.Request=Class.create();Ajax.Request.Events=['Uninitialized','Loading','Loaded','Interactive','Complete'];Ajax.Request.prototype=(new Ajax.Base()).extend({initialize:function(url,options){this.transport=Ajax.getTransport();this.setOptions(options);this.request(url);},request:function(url){var parameters=this.options.parameters||'';if(parameters.length>0)parameters+='&_=';try{if(this.options.method=='get')
url+='?'+parameters;this.transport.open(this.options.method,url,this.options.asynchronous);if(this.options.asynchronous){this.transport.onreadystatechange=this.onStateChange.bind(this);setTimeout((function(){this.respondToReadyState(1)}).bind(this),10);}
this.setRequestHeaders();var body=this.options.postBody?this.options.postBody:parameters;this.transport.send(this.options.method=='post'?body:null);}catch(e){}},setRequestHeaders:function(){var requestHeaders=['X-Requested-With','XMLHttpRequest','X-Prototype-Version',Prototype.Version];if(this.options.method=='post'){requestHeaders.push('Content-type','application/x-www-form-urlencoded');if(this.transport.overrideMimeType)
requestHeaders.push('Connection','close');}
if(this.options.requestHeaders)
requestHeaders.push.apply(requestHeaders,this.options.requestHeaders);for(var i=0;i<requestHeaders.length;i+=2)
this.transport.setRequestHeader(requestHeaders[i],requestHeaders[i+1]);},onStateChange:function(){var readyState=this.transport.readyState;if(readyState!=1)
this.respondToReadyState(this.transport.readyState);},respondToReadyState:function(readyState){var event=Ajax.Request.Events[readyState];if(event=='Complete'&&this.responseIsFailure())
(this.options['on'+this.transport.status]||this.options.onFailure||Prototype.emptyFunction)(this.transport);(this.options['on'+event]||Prototype.emptyFunction)(this.transport);}});Ajax.Updater=Class.create();Ajax.Updater.ScriptFragment='(?:<script.*?>)((\n|.)*?)(?:<\/script>)';Ajax.Updater.prototype.extend(Ajax.Request.prototype).extend({initialize:function(container,url,options){this.containers={success:container.success?$(container.success):$(container),failure:container.failure?$(container.failure):(container.success?null:$(container))}
this.transport=Ajax.getTransport();this.setOptions(options);var onComplete=this.options.onComplete||Prototype.emptyFunction;this.options.onComplete=(function(){this.updateContent();onComplete(this.transport);}).bind(this);this.request(url);},updateContent:function(){var receiver=this.responseIsSuccess()?this.containers.success:this.containers.failure;var match=new RegExp(Ajax.Updater.ScriptFragment,'img');var response=this.transport.responseText.replace(match,'');var scripts=this.transport.responseText.match(match);if(receiver){if(this.options.insertion){new this.options.insertion(receiver,response);}else{receiver.innerHTML=response;}}
if(this.responseIsSuccess()){if(this.onComplete)
setTimeout((function(){this.onComplete(this.transport)}).bind(this),10);}
if(this.options.evalScripts&&scripts){match=new RegExp(Ajax.Updater.ScriptFragment,'im');setTimeout((function(){for(var i=0;i<scripts.length;i++)
eval(scripts[i].match(match)[1]);}).bind(this),10);}}});Ajax.PeriodicalUpdater=Class.create();Ajax.PeriodicalUpdater.prototype=(new Ajax.Base()).extend({initialize:function(container,url,options){this.setOptions(options);this.onComplete=this.options.onComplete;this.frequency=(this.options.frequency||2);this.decay=1;this.updater={};this.container=container;this.url=url;this.start();},start:function(){this.options.onComplete=this.updateComplete.bind(this);this.onTimerEvent();},stop:function(){this.updater.onComplete=undefined;clearTimeout(this.timer);(this.onComplete||Ajax.emptyFunction).apply(this,arguments);},updateComplete:function(request){if(this.options.decay){this.decay=(request.responseText==this.lastText?this.decay*this.options.decay:1);this.lastText=request.responseText;}
this.timer=setTimeout(this.onTimerEvent.bind(this),this.decay*this.frequency*1000);},onTimerEvent:function(){this.updater=new Ajax.Updater(this.container,this.url,this.options);}});document.getElementsByClassName=function(className){var children=document.getElementsByTagName('*')||document.all;var elements=new Array();for(var i=0;i<children.length;i++){var child=children[i];var classNames=child.className.split(' ');for(var j=0;j<classNames.length;j++){if(classNames[j]==className){elements.push(child);break;}}}
return elements;}
if(!window.Element){var Element=new Object();}
Object.extend(Element,{toggle:function(){for(var i=0;i<arguments.length;i++){var element=$(arguments[i]);element.style.display=(element.style.display=='none'?'':'none');}},hide:function(){for(var i=0;i<arguments.length;i++){var element=$(arguments[i]);element.style.display='none';}},show:function(){for(var i=0;i<arguments.length;i++){var element=$(arguments[i]);element.style.display='';}},remove:function(element){element=$(element);element.parentNode.removeChild(element);},getHeight:function(element){element=$(element);return element.offsetHeight;},hasClassName:function(element,className){element=$(element);if(!element)
return;var a=element.className.split(' ');for(var i=0;i<a.length;i++){if(a[i]==className)
return true;}
return false;},addClassName:function(element,className){element=$(element);Element.removeClassName(element,className);element.className+=' '+className;},removeClassName:function(element,className){element=$(element);if(!element)
return;var newClassName='';var a=element.className.split(' ');for(var i=0;i<a.length;i++){if(a[i]!=className){if(i>0)
newClassName+=' ';newClassName+=a[i];}}
element.className=newClassName;},cleanWhitespace:function(element){var element=$(element);for(var i=0;i<element.childNodes.length;i++){var node=element.childNodes[i];if(node.nodeType==3&&!/\S/.test(node.nodeValue))
Element.remove(node);}}});var Toggle=new Object();Toggle.display=Element.toggle;Abstract.Insertion=function(adjacency){this.adjacency=adjacency;}
Abstract.Insertion.prototype={initialize:function(element,content){this.element=$(element);this.content=content;if(this.adjacency&&this.element.insertAdjacentHTML){this.element.insertAdjacentHTML(this.adjacency,this.content);}else{this.range=this.element.ownerDocument.createRange();if(this.initializeRange)this.initializeRange();this.fragment=this.range.createContextualFragment(this.content);this.insertContent();}}}
var Insertion=new Object();Insertion.Before=Class.create();Insertion.Before.prototype=(new Abstract.Insertion('beforeBegin')).extend({initializeRange:function(){this.range.setStartBefore(this.element);},insertContent:function(){this.element.parentNode.insertBefore(this.fragment,this.element);}});Insertion.Top=Class.create();Insertion.Top.prototype=(new Abstract.Insertion('afterBegin')).extend({initializeRange:function(){this.range.selectNodeContents(this.element);this.range.collapse(true);},insertContent:function(){this.element.insertBefore(this.fragment,this.element.firstChild);}});Insertion.Bottom=Class.create();Insertion.Bottom.prototype=(new Abstract.Insertion('beforeEnd')).extend({initializeRange:function(){this.range.selectNodeContents(this.element);this.range.collapse(this.element);},insertContent:function(){this.element.appendChild(this.fragment);}});Insertion.After=Class.create();Insertion.After.prototype=(new Abstract.Insertion('afterEnd')).extend({initializeRange:function(){this.range.setStartAfter(this.element);},insertContent:function(){this.element.parentNode.insertBefore(this.fragment,this.element.nextSibling);}});var Field={clear:function(){for(var i=0;i<arguments.length;i++)
$(arguments[i]).value='';},focus:function(element){$(element).focus();},present:function(){for(var i=0;i<arguments.length;i++)
if($(arguments[i]).value=='')return false;return true;},select:function(element){$(element).select();},activate:function(element){$(element).focus();$(element).select();}}
var Form={serialize:function(form){var elements=Form.getElements($(form));var queryComponents=new Array();for(var i=0;i<elements.length;i++){var queryComponent=Form.Element.serialize(elements[i]);if(queryComponent)
queryComponents.push(queryComponent);}
return queryComponents.join('&');},getElements:function(form){var form=$(form);var elements=new Array();for(tagName in Form.Element.Serializers){var tagElements=form.getElementsByTagName(tagName);for(var j=0;j<tagElements.length;j++)
elements.push(tagElements[j]);}
return elements;},getInputs:function(form,typeName,name){var form=$(form);var inputs=form.getElementsByTagName('input');if(!typeName&&!name)
return inputs;var matchingInputs=new Array();for(var i=0;i<inputs.length;i++){var input=inputs[i];if((typeName&&input.type!=typeName)||(name&&input.name!=name))
continue;matchingInputs.push(input);}
return matchingInputs;},disable:function(form){var elements=Form.getElements(form);for(var i=0;i<elements.length;i++){var element=elements[i];element.blur();element.disabled='true';}},enable:function(form){var elements=Form.getElements(form);for(var i=0;i<elements.length;i++){var element=elements[i];element.disabled='';}},focusFirstElement:function(form){var form=$(form);var elements=Form.getElements(form);for(var i=0;i<elements.length;i++){var element=elements[i];if(element.type!='hidden'&&!element.disabled){Field.activate(element);break;}}},reset:function(form){$(form).reset();}}
Form.Element={serialize:function(element){var element=$(element);var method=element.tagName.toLowerCase();var parameter=Form.Element.Serializers[method](element);if(parameter)
return encodeURIComponent(parameter[0])+'='+
encodeURIComponent(parameter[1]);},getValue:function(element){var element=$(element);var method=element.tagName.toLowerCase();var parameter=Form.Element.Serializers[method](element);if(parameter)
return parameter[1];}}
Form.Element.Serializers={input:function(element){switch(element.type.toLowerCase()){case'submit':case'hidden':case'password':case'text':return Form.Element.Serializers.textarea(element);case'checkbox':case'radio':return Form.Element.Serializers.inputSelector(element);}
return false;},inputSelector:function(element){if(element.checked)
return[element.name,element.value];},textarea:function(element){return[element.name,element.value];},select:function(element){var value='';if(element.type=='select-one'){var index=element.selectedIndex;if(index>=0)
value=element.options[index].value||element.options[index].text;}else{value=new Array();for(var i=0;i<element.length;i++){var opt=element.options[i];if(opt.selected)
value.push(opt.value||opt.text);}}
return[element.name,value];}}
var $F=Form.Element.getValue;Abstract.TimedObserver=function(){}
Abstract.TimedObserver.prototype={initialize:function(element,frequency,callback){this.frequency=frequency;this.element=$(element);this.callback=callback;this.lastValue=this.getValue();this.registerCallback();},registerCallback:function(){setInterval(this.onTimerEvent.bind(this),this.frequency*1000);},onTimerEvent:function(){var value=this.getValue();if(this.lastValue!=value){this.callback(this.element,value);this.lastValue=value;}}}
Form.Element.Observer=Class.create();Form.Element.Observer.prototype=(new Abstract.TimedObserver()).extend({getValue:function(){return Form.Element.getValue(this.element);}});Form.Observer=Class.create();Form.Observer.prototype=(new Abstract.TimedObserver()).extend({getValue:function(){return Form.serialize(this.element);}});Abstract.EventObserver=function(){}
Abstract.EventObserver.prototype={initialize:function(element,callback){this.element=$(element);this.callback=callback;this.lastValue=this.getValue();if(this.element.tagName.toLowerCase()=='form')
this.registerFormCallbacks();else
this.registerCallback(this.element);},onElementEvent:function(){var value=this.getValue();if(this.lastValue!=value){this.callback(this.element,value);this.lastValue=value;}},registerFormCallbacks:function(){var elements=Form.getElements(this.element);for(var i=0;i<elements.length;i++)
this.registerCallback(elements[i]);},registerCallback:function(element){if(element.type){switch(element.type.toLowerCase()){case'checkbox':case'radio':element.target=this;element.prev_onclick=element.onclick||Prototype.emptyFunction;element.onclick=function(){this.prev_onclick();this.target.onElementEvent();}
break;case'password':case'text':case'textarea':case'select-one':case'select-multiple':element.target=this;element.prev_onchange=element.onchange||Prototype.emptyFunction;element.onchange=function(){this.prev_onchange();this.target.onElementEvent();}
break;}}}}
Form.Element.EventObserver=Class.create();Form.Element.EventObserver.prototype=(new Abstract.EventObserver()).extend({getValue:function(){return Form.Element.getValue(this.element);}});Form.EventObserver=Class.create();Form.EventObserver.prototype=(new Abstract.EventObserver()).extend({getValue:function(){return Form.serialize(this.element);}});if(!window.Event){var Event=new Object();}
Object.extend(Event,{KEY_BACKSPACE:8,KEY_TAB:9,KEY_RETURN:13,KEY_ESC:27,KEY_LEFT:37,KEY_UP:38,KEY_RIGHT:39,KEY_DOWN:40,KEY_DELETE:46,element:function(event){return event.target||event.srcElement;},isLeftClick:function(event){return(((event.which)&&(event.which==1))||((event.button)&&(event.button==1)));},pointerX:function(event){return event.pageX||(event.clientX+
(document.documentElement.scrollLeft||document.body.scrollLeft));},pointerY:function(event){return event.pageY||(event.clientY+
(document.documentElement.scrollTop||document.body.scrollTop));},stop:function(event){if(event.preventDefault){event.preventDefault();event.stopPropagation();}else{event.returnValue=false;}},findElement:function(event,tagName){var element=Event.element(event);while(element.parentNode&&(!element.tagName||(element.tagName.toUpperCase()!=tagName.toUpperCase())))
element=element.parentNode;return element;},observe:function(element,name,observer,useCapture){var element=$(element);useCapture=useCapture||false;if(name=='keypress'){if(navigator.appVersion.indexOf('AppleWebKit')>0){element.addEventListener('keydown',observer,useCapture);return;}
if(element.addEventListener){element.addEventListener('keypress',observer,useCapture);}else if(element.attachEvent){element.attachEvent('onkeydown',observer);}}else{if(element.addEventListener){element.addEventListener(name,observer,useCapture);}else if(element.attachEvent){element.attachEvent('on'+name,observer);}}},stopObserving:function(element,name,observer,useCapture){var element=$(element);useCapture=useCapture||false;if(name=='keypress'){if(navigator.appVersion.indexOf('AppleWebKit')>0){element.removeEventListener('keydown',observer,useCapture);return;}
if(element.removeEventListener){element.removeEventListener('keypress',observer,useCapture);}else if(element.detachEvent){element.detachEvent('onkeydown',observer);}}else{if(element.removeEventListener){element.removeEventListener(name,observer,useCapture);}else if(element.detachEvent){element.detachEvent('on'+name,observer);}}}});var Position={includeScrollOffsets:false,prepare:function(){this.deltaX=window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0;this.deltaY=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0;},realOffset:function(element){var valueT=0,valueL=0;do{valueT+=element.scrollTop||0;valueL+=element.scrollLeft||0;element=element.parentNode;}while(element);return[valueL,valueT];},cumulativeOffset:function(element){var valueT=0,valueL=0;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;element=element.offsetParent;}while(element);return[valueL,valueT];},within:function(element,x,y){if(this.includeScrollOffsets)
return this.withinIncludingScrolloffsets(element,x,y);this.xcomp=x;this.ycomp=y;this.offset=this.cumulativeOffset(element);return(y>=this.offset[1]&&y<this.offset[1]+element.offsetHeight&&x>=this.offset[0]&&x<this.offset[0]+element.offsetWidth);},withinIncludingScrolloffsets:function(element,x,y){var offsetcache=this.realOffset(element);this.xcomp=x+offsetcache[0]-this.deltaX;this.ycomp=y+offsetcache[1]-this.deltaY;this.offset=this.cumulativeOffset(element);return(this.ycomp>=this.offset[1]&&this.ycomp<this.offset[1]+element.offsetHeight&&this.xcomp>=this.offset[0]&&this.xcomp<this.offset[0]+element.offsetWidth);},overlap:function(mode,element){if(!mode)return 0;if(mode=='vertical')
return((this.offset[1]+element.offsetHeight)-this.ycomp)/element.offsetHeight;if(mode=='horizontal')
return((this.offset[0]+element.offsetWidth)-this.xcomp)/element.offsetWidth;},clone:function(source,target){source=$(source);target=$(target);target.style.position='absolute';var offsets=this.cumulativeOffset(source);target.style.top=offsets[1]+'px';target.style.left=offsets[0]+'px';target.style.width=source.offsetWidth+'px';target.style.height=source.offsetHeight+'px';}};Effect={}
Effect2=Effect;Effect.Transitions={}
Effect.Transitions.linear=function(pos){return pos;}
Effect.Transitions.sinoidal=function(pos){return(-Math.cos(pos*Math.PI)/2)+0.5;}
Effect.Transitions.reverse=function(pos){return 1-pos;}
Effect.Transitions.flicker=function(pos){return((-Math.cos(pos*Math.PI)/4)+0.75)+Math.random(0.25);}
Effect.Transitions.wobble=function(pos){return(-Math.cos(pos*Math.PI*(9*pos))/2)+0.5;}
Effect.Transitions.pulse=function(pos){return(Math.floor(pos*10)%2==0?(pos*10-Math.floor(pos*10)):1-(pos*10-Math.floor(pos*10)));}
Effect.Transitions.none=function(pos){return 0;}
Effect.Transitions.full=function(pos){return 1;}
Effect.Base=function(){};Effect.Base.prototype={setOptions:function(options){this.options={transition:Effect.Transitions.sinoidal,duration:1.0,fps:25.0,sync:false,from:0.0,to:1.0}.extend(options||{});},start:function(options){this.setOptions(options||{});this.currentFrame=0;this.startOn=new Date().getTime();this.finishOn=this.startOn+(this.options.duration*1000);if(this.options.beforeStart)this.options.beforeStart(this);if(!this.options.sync)this.loop();},loop:function(){timePos=new Date().getTime();if(timePos>=this.finishOn){this.render(this.options.to);if(this.finish)this.finish();if(this.options.afterFinish)this.options.afterFinish(this);return;}
pos=(timePos-this.startOn)/(this.finishOn-this.startOn);frame=Math.round(pos*this.options.fps*this.options.duration);if(frame>this.currentFrame){this.render(pos);this.currentFrame=frame;}
this.timeout=setTimeout(this.loop.bind(this),10);},render:function(pos){if(this.options.transition)pos=this.options.transition(pos);pos=pos*(this.options.to-this.options.from);pos+=this.options.from;if(this.options.beforeUpdate)this.options.beforeUpdate(this);if(this.update)this.update(pos);if(this.options.afterUpdate)this.options.afterUpdate(this);},cancel:function(){if(this.timeout)clearTimeout(this.timeout);}}
Effect.Parallel=Class.create();Effect.Parallel.prototype=(new Effect.Base()).extend({initialize:function(effects){this.effects=effects||[];this.start(arguments[1]);},update:function(position){for(var i=0;i<this.effects.length;i++)
this.effects[i].render(position);},finish:function(position){for(var i=0;i<this.effects.length;i++)
if(this.effects[i].finish)this.effects[i].finish(position);}});Effect.Opacity=Class.create();Effect.Opacity.prototype=(new Effect.Base()).extend({initialize:function(element){this.element=$(element);options={from:0.0,to:1.0}.extend(arguments[1]||{});this.start(options);},update:function(position){this.setOpacity(position);},setOpacity:function(opacity){opacity=(opacity==1)?0.99999:opacity;this.element.style.opacity=opacity;this.element.style.filter="alpha(opacity:"+opacity*100+")";}});Effect.MoveBy=Class.create();Effect.MoveBy.prototype=(new Effect.Base()).extend({initialize:function(element,toTop,toLeft){this.element=$(element);this.originalTop=parseFloat(this.element.style.top||'0');this.originalLeft=parseFloat(this.element.style.left||'0');this.toTop=toTop;this.toLeft=toLeft;if(this.element.style.position=="")
this.element.style.position="relative";this.start(arguments[3]);},update:function(position){topd=this.toTop*position+this.originalTop;leftd=this.toLeft*position+this.originalLeft;this.setPosition(topd,leftd);},setPosition:function(topd,leftd){this.element.style.top=topd+"px";this.element.style.left=leftd+"px";}});Effect.Scale=Class.create();Effect.Scale.prototype=(new Effect.Base()).extend({initialize:function(element,percent){this.element=$(element)
options={scaleX:true,scaleY:true,scaleContent:true,scaleFromCenter:false,scaleMode:'box',scaleFrom:100.0}.extend(arguments[2]||{});this.originalTop=this.element.offsetTop;this.originalLeft=this.element.offsetLeft;if(this.element.style.fontSize=="")this.sizeEm=1.0;if(this.element.style.fontSize&&this.element.style.fontSize.indexOf("em")>0)
this.sizeEm=parseFloat(this.element.style.fontSize);this.factor=(percent/100.0)-(options.scaleFrom/100.0);if(options.scaleMode=='box'){this.originalHeight=this.element.clientHeight;this.originalWidth=this.element.clientWidth;}else
if(options.scaleMode=='contents'){this.originalHeight=this.element.scrollHeight;this.originalWidth=this.element.scrollWidth;}else{this.originalHeight=options.scaleMode.originalHeight;this.originalWidth=options.scaleMode.originalWidth;}
this.start(options);},update:function(position){currentScale=(this.options.scaleFrom/100.0)+(this.factor*position);if(this.options.scaleContent&&this.sizeEm)
this.element.style.fontSize=this.sizeEm*currentScale+"em";this.setDimensions(this.originalWidth*currentScale,this.originalHeight*currentScale);},setDimensions:function(width,height){if(this.options.scaleX)this.element.style.width=width+'px';if(this.options.scaleY)this.element.style.height=height+'px';if(this.options.scaleFromCenter){topd=(height-this.originalHeight)/2;leftd=(width-this.originalWidth)/2;if(this.element.style.position=='absolute'){if(this.options.scaleY)this.element.style.top=this.originalTop-topd+"px";if(this.options.scaleX)this.element.style.left=this.originalLeft-leftd+"px";}else{if(this.options.scaleY)this.element.style.top=-topd+"px";if(this.options.scaleX)this.element.style.left=-leftd+"px";}}}});Effect.Highlight=Class.create();Effect.Highlight.prototype=(new Effect.Base()).extend({initialize:function(element){this.element=$(element);var endcolor="#ffffff";var current=this.element.style.backgroundColor;if(current&&current.slice(0,4)=="rgb("){endcolor="#";var cols=current.slice(4,current.length-1).split(',');var i=0;do{endcolor+=parseInt(cols[i]).toColorPart()}while(++i<3);}
var options={startcolor:"#ffff99",endcolor:endcolor}.extend(arguments[1]||{});this.colors_base=[parseInt(options.startcolor.slice(1,3),16),parseInt(options.startcolor.slice(3,5),16),parseInt(options.startcolor.slice(5),16)];this.colors_delta=[parseInt(options.endcolor.slice(1,3),16)-this.colors_base[0],parseInt(options.endcolor.slice(3,5),16)-this.colors_base[1],parseInt(options.endcolor.slice(5),16)-this.colors_base[2]];this.start(options);},update:function(position){var colors=[Math.round(this.colors_base[0]+(this.colors_delta[0]*position)),Math.round(this.colors_base[1]+(this.colors_delta[1]*position)),Math.round(this.colors_base[2]+(this.colors_delta[2]*position))];this.element.style.backgroundColor="#"+
colors[0].toColorPart()+colors[1].toColorPart()+colors[2].toColorPart();}});Effect.Fade=function(element){options={from:1.0,to:0.0,afterFinish:function(effect)
{Element.hide(effect.element);effect.setOpacity(1);}}.extend(arguments[1]||{});new Effect.Opacity(element,options);}
Effect.Appear=function(element){options={from:0.0,to:1.0,beforeStart:function(effect)
{effect.setOpacity(0);Element.show(effect.element);},afterUpdate:function(effect)
{Element.show(effect.element);}}.extend(arguments[1]||{});new Effect.Opacity(element,options);}
Effect.Puff=function(element){new Effect.Parallel([new Effect.Scale(element,200,{sync:true,scaleFromCenter:true}),new Effect.Opacity(element,{sync:true,to:0.0,from:1.0})],{duration:1.0,afterUpdate:function(effect)
{effect.effects[0].element.style.position='absolute';},afterFinish:function(effect)
{Element.hide(effect.effects[0].element);}});}
Effect.BlindUp=function(element){$(element)._overflow=$(element).style.overflow||'visible';$(element).style.overflow='hidden';new Effect.Scale(element,0,{scaleContent:false,scaleX:false,afterFinish:function(effect)
{Element.hide(effect.element);effect.element.style.overflow=effect.element._overflow;}}.extend(arguments[1]||{}));}
Effect.BlindDown=function(element){$(element).style.height='0px';$(element)._overflow=$(element).style.overflow||'visible';$(element).style.overflow='hidden';Element.show(element);new Effect.Scale(element,100,{scaleContent:false,scaleX:false,scaleMode:'contents',scaleFrom:0,afterFinish:function(effect){effect.element.style.overflow=effect.element._overflow;}}.extend(arguments[1]||{}));}
Effect.SwitchOff=function(element){new Effect.Appear(element,{duration:0.4,transition:Effect.Transitions.flicker,afterFinish:function(effect)
{effect.element.style.overflow='hidden';new Effect.Scale(effect.element,1,{duration:0.3,scaleFromCenter:true,scaleX:false,scaleContent:false,afterUpdate:function(effect){if(effect.element.style.position=="")
effect.element.style.position='relative';},afterFinish:function(effect){Element.hide(effect.element);}})}})}
Effect.DropOut=function(element){new Effect.Parallel([new Effect.MoveBy(element,100,0,{sync:true}),new Effect.Opacity(element,{sync:true,to:0.0,from:1.0})],{duration:0.5,afterFinish:function(effect)
{Element.hide(effect.effects[0].element);}});}
Effect.Shake=function(element){new Effect.MoveBy(element,0,20,{duration:0.05,afterFinish:function(effect){new Effect.MoveBy(effect.element,0,-40,{duration:0.1,afterFinish:function(effect){new Effect.MoveBy(effect.element,0,40,{duration:0.1,afterFinish:function(effect){new Effect.MoveBy(effect.element,0,-40,{duration:0.1,afterFinish:function(effect){new Effect.MoveBy(effect.element,0,40,{duration:0.1,afterFinish:function(effect){new Effect.MoveBy(effect.element,0,-20,{duration:0.05,afterFinish:function(effect){}})}})}})}})}})}});}
Effect.SlideDown=function(element){$(element)._overflow=$(element).style.overflow||'visible';$(element).style.height='0px';$(element).style.overflow='hidden';$(element).firstChild.style.position='relative';Element.show(element);new Effect.Scale(element,100,{scaleContent:false,scaleX:false,scaleMode:'contents',scaleFrom:0,afterUpdate:function(effect)
{effect.element.firstChild.style.bottom=(effect.originalHeight-effect.element.clientHeight)+'px';},afterFinish:function(effect)
{effect.element.style.overflow=effect.element._overflow;}}.extend(arguments[1]||{}));}
Effect.SlideUp=function(element){$(element)._overflow=$(element).style.overflow||'visible';$(element).style.overflow='hidden';$(element).firstChild.style.position='relative';Element.show(element);new Effect.Scale(element,0,{scaleContent:false,scaleX:false,afterUpdate:function(effect)
{effect.element.firstChild.style.bottom=(effect.originalHeight-effect.element.clientHeight)+'px';},afterFinish:function(effect)
{Element.hide(effect.element);effect.element.style.overflow=effect.element._overflow;}}.extend(arguments[1]||{}));}
Effect.Squish=function(element){new Effect.Scale(element,0,{afterFinish:function(effect){Element.hide(effect.element);}});}
Effect.Grow=function(element){element=$(element);var options=arguments[1]||{};var originalWidth=element.clientWidth;var originalHeight=element.clientHeight;element.style.overflow='hidden';Element.show(element);var direction=options.direction||'center';var moveTransition=options.moveTransition||Effect.Transitions.sinoidal;var scaleTransition=options.scaleTransition||Effect.Transitions.sinoidal;var opacityTransition=options.opacityTransition||Effect.Transitions.full;var initialMoveX,initialMoveY;var moveX,moveY;switch(direction){case'top-left':initialMoveX=initialMoveY=moveX=moveY=0;break;case'top-right':initialMoveX=originalWidth;initialMoveY=moveY=0;moveX=-originalWidth;break;case'bottom-left':initialMoveX=moveX=0;initialMoveY=originalHeight;moveY=-originalHeight;break;case'bottom-right':initialMoveX=originalWidth;initialMoveY=originalHeight;moveX=-originalWidth;moveY=-originalHeight;break;case'center':initialMoveX=originalWidth/2;initialMoveY=originalHeight/2;moveX=-originalWidth/2;moveY=-originalHeight/2;break;}
new Effect.MoveBy(element,initialMoveY,initialMoveX,{duration:0.01,beforeUpdate:function(effect){$(element).style.height='0px';},afterFinish:function(effect){new Effect.Parallel([new Effect.Opacity(element,{sync:true,to:1.0,from:0.0,transition:opacityTransition}),new Effect.MoveBy(element,moveY,moveX,{sync:true,transition:moveTransition}),new Effect.Scale(element,100,{scaleMode:{originalHeight:originalHeight,originalWidth:originalWidth},sync:true,scaleFrom:0,scaleTo:100,transition:scaleTransition})],options);}});}
Effect.Shrink=function(element){element=$(element);var options=arguments[1]||{};var originalWidth=element.clientWidth;var originalHeight=element.clientHeight;element.style.overflow='hidden';Element.show(element);var direction=options.direction||'center';var moveTransition=options.moveTransition||Effect.Transitions.sinoidal;var scaleTransition=options.scaleTransition||Effect.Transitions.sinoidal;var opacityTransition=options.opacityTransition||Effect.Transitions.none;var moveX,moveY;switch(direction){case'top-left':moveX=moveY=0;break;case'top-right':moveX=originalWidth;moveY=0;break;case'bottom-left':moveX=0;moveY=originalHeight;break;case'bottom-right':moveX=originalWidth;moveY=originalHeight;break;case'center':moveX=originalWidth/2;moveY=originalHeight/2;break;}
new Effect.Parallel([new Effect.Opacity(element,{sync:true,to:0.0,from:1.0,transition:opacityTransition}),new Effect.Scale(element,0,{sync:true,transition:moveTransition}),new Effect.MoveBy(element,moveY,moveX,{sync:true,transition:scaleTransition})],options);}
Effect.Pulsate=function(element){var options=arguments[1]||{};var transition=options.transition||Effect.Transitions.sinoidal;var reverser=function(pos){return transition(1-Effect.Transitions.pulse(pos))};reverser.bind(transition);new Effect.Opacity(element,{duration:3.0,afterFinish:function(effect){Element.show(effect.element);}}.extend(options).extend({transition:reverser}));}
Effect.Fold=function(element){$(element).style.overflow='hidden';new Effect.Scale(element,5,{scaleContent:false,scaleTo:100,scaleX:false,afterFinish:function(effect){new Effect.Scale(element,1,{scaleContent:false,scaleTo:0,scaleY:false,afterFinish:function(effect){Element.hide(effect.element)}});}}.extend(arguments[1]||{}));}
Element.setContentZoom=function(element,percent){var element=$(element);element.style.fontSize=(percent/100)+"em";if(navigator.appVersion.indexOf('AppleWebKit')>0)window.scrollBy(0,0);}