// <![CDATA[
// Begin Ad Muncher helper script
// Do not remove without removing all references to this in the below page (eg: everything containing "Yxz" or "Yxb")
// Retrieved from: 208.75.149.97:80
function Yxzn(){return false;};function YxzbHelp(a,b){YxzXgp(a);YxzXbn();return;};function Yxzb(a,b,c,d){YxzXgp(a);YxzXbn();return YxzXfw(b);};function YxzXpp(a){YxzXppa=a;if(a)YxzXorgsti("YxzXppa=0;",500);};function YxzbtePopup(a,b,c,d,e,f){YxzXgp();YxzXbn();return YxzXfw();};function YxzbModalDialog(a,b,c){YxzXgp(a);YxzXbn();return YxzXfw();};function YxzXj(m,u,l){if(YxzXolp){YxzXqn=YxzXqnbu;YxzXolp=0;};return true;};function YxzbModelessDialog(a,b,c){YxzXgp(a);YxzXbn();return YxzXfw();};function YxzXpl(a,b,c){while(a.indexOf(b)!=-1)a=a.replace(b,c);return a;};function YxzXtry(a,z){if(YxzXtryk())eval("try{"+a+"}catch(e){};");else eval(a);};function Yxzc(){YxzXqn=YxzXqnbu=10;YxzXorgsti("YxzXqn=YxzXqnbu=0;",500);return;};function YxzX__amscript_addonload(a){YxzX_ams_onload[YxzX_ams_onload_i++]=(typeof(a)=="function")?a:new Function(a);};function YxzX__amscript_addonunload(a){YxzX_ams_onunload[YxzX_ams_onunload_i++]=(typeof(a)=="function")?a:new Function(a);};function YxzXfcs(z){YxzXfcsr=0;if(z){YxzXfcsrz=z;YxzXtry("YxzXfcsr=YxzXfcsd();");};return YxzXfcsr;};function YxzXfc(a,z){for(var i=0;i<a.length;i++)if(a[i].name==z||YxzXfc(a[i].frames,z))return 1;return 0;};function Yxb(z){if(typeof(z.location)!="undefined"||typeof(z.blur)=="undefined")return false;return z.blur();};function Yxzf(z){if(typeof(z.location)!="undefined"||typeof(z.focus)=="undefined")return false;return z.focus();};function YxzXHelp(a,b){if(YxzXck(a))return;if(YxzXqn)YxzXqn-=1;if(b)return showHelp(a,b);else return showHelp(a);};function YxzTimeout(a,b){if(((!YxzXqn&&!YxzXa)||YxzXppa||YxzXul)&&typeof(a)=="string")return YxzXorgsti("YxzXpp(1);"+a+";YxzXpp(0);",b);return YxzXorgsti(a,b);};function YxzInterval(a,b){if(((!YxzXqn&&!YxzXa)||YxzXppa||YxzXul)&&typeof(a)=="string")return YxzXorgsin("YxzXpp(1);"+a+";YxzXpp(0);",b);return YxzXorgsin(a,b);};function YxzXbn(){if(YxzXd&&YxzXm){if(YxzXb){YxzXc="s";YxzXb+=", "+YxzXm;}else{YxzXc="";YxzXb=YxzXm;};YxzXi="Popup"+YxzXc+" on page blocked by Ad Muncher: "+YxzXb;YxzXu();};};function YxzXox(){var x;for(var i=0;i<YxzX_ams_onunload.length;i++){if(typeof(YxzX_ams_onunload[i])=="function")YxzX_ams_onunload[i]();};if(typeof(YxzXffad)!="undefined"&&!YxzXffadd){if(YxzXkou)YxzXul=1;YxzXffadd=1;if(typeof(YxzXffad)=="function")x=YxzXffad();else eval(YxzXffad);YxzXul=0;};return x;};function YxzXModalDialog(a,b,c){if(YxzXck(a,b))return YxzXfw();if(YxzXqn)YxzXqn-=1;if(c)return showModalDialog(a,b,c);else if(b)return showModalDialog(a,b);else return showModalDialog(a);};function YxzXs(a){if((typeof(a.target)!="undefined"&&typeof(a.action)!="undefined"&&a.target&&YxzXnw(a.target)&&YxzXck(a.action))||typeof(a.submit)=="undefined")return false;return a.submit();};function YxzXt(a){if((YxzXqn||YxzXa)&&!YxzXppa&&!YxzXul){if(YxzXqn)YxzXqn-=1;return alert(a);};if(a&&YxzXd){YxzXi="Alert message blocked by Ad Muncher: "+YxzXpl(a,"\n"," ");YxzXu();};return false;};function YxzXModelessDialog(a,b,c){if(YxzXck(a,b))return YxzXfw();if(YxzXqn)YxzXqn-=1;if(c)return showModelessDialog(a,b,c);else if(b)return showModelessDialog(a,b);else return showModelessDialog(a);};function YxzXsp(a,z){if(a.split)return a.split(z);var j,c,s,n,b,e;j=b=0;c=on.length;s=new Array();a+=z;n=a.length;while(b<n){e=z?a.indexOf(z,b):b+1;s[j++]=a.substring(b,e);b=e+c;};return s.length=j,s;};function YxzXu(a){YxzXi=YxzXpl(YxzXpl(YxzXi.substring(0,1024),'"',"<~am~`"),"<~am~`",'\\"');YxzXir='defaultStatus="'+YxzXi+'";';if(!YxzXss){YxzXss=1;YxzXorgsin("eval(YxzXir);",3000);};YxzXorgsti("eval(YxzXir);",1000);};function YxzXe(){YxzXa=0;YxzXqnbu=YxzXqn;YxzXqn=0;YxzXolp=1;YxzXorgsti("YxzXa=1;",1000);if(!YxzXffd){YxzXffd=1;for(var i=0;i<YxzX_ams_onload.length;i++){if(typeof(YxzX_ams_onload[i])=="function")YxzX_ams_onload[i]();};if(typeof(YxzXff)!="undefined"){if(typeof(YxzXff)=="function")YxzXff();else eval(YxzXff);};};YxzXqn=YxzXqnbu;YxzXolp=0;YxzXx();};function YxzXnw(a){YxzXagt=navigator.userAgent.toLowerCase();if(a!="_self"&&a!="_top"&&a!="_main"&&a!="_parent"&&!YxzXfcs(a)&&((YxzXagt.indexOf("msie")==-1||YxzXagt.indexOf("opera")!=-1)||(a!="_search"&&a!="_media")))return 1;return 0;};function YxzXobx(){var x;if(typeof(YxzXffreunload)!="undefined"&&!YxzXffreunloadd){if(YxzXkou)YxzXul=1;YxzXffreunloadd=1;if(typeof(YxzXffreunload)=="function")x=YxzXffreunload();else eval(YxzXffreunload);YxzXffreunloadd=0;YxzXul=0;};return x;};function YxzXtryk(){var b=navigator.userAgent.toLowerCase();var c=parseInt(navigator.appVersion);if((b.indexOf("mozilla")!=-1&&b.indexOf("compatible")== -1&&c>=5)||(b.indexOf("opera")!=-1&&c>=6)||(b.indexOf("msie")!=-1&&c>=4))return 1;return 0;};function YxzXfcsd(){var v=self;if(YxzXfc(v.frames,YxzXfcsrz)||(typeof(v.name)!="undefined"&&v.name==YxzXfcsrz))return 1;while(v!=v.parent){v=v.parent;if(YxzXfc(v.frames,YxzXfcsrz)||(typeof(v.name)!="undefined"&&v.name==YxzXfcsrz))return 1;};return 0;};function YxzXtePopup(a,b,c,d,e,f){if(YxzXck())return YxzXfw();if(YxzXqn)YxzXqn-=1;if(f)return createPopup(a,b,c,d,e,f);else if(e)return createPopup(a,b,c,d,e);else if(d)return createPopup(a,b,c,d);else if(c)return createPopup(a,b,c);else if(b)return createPopup(a,b);else return createPopup(a);};function YxzXmc(){if(typeof(document.layers)!="undefined")document.captureEvents(Event.KeyDown|Event.MouseUp|Event.Blur|Event.KeyPress|Event.Move|Event.Click|Event.KeyUp|Event.Reset|Event.Change|Event.Load|Event.Resize|Event.DblClick|Event.MouseDown|Event.Select|Event.DragDrop|Event.MouseMove|Event.Submit|Event.Error|Event.MouseOut|Event.Unload|Event.Focus|Event.MouseOver);document.onmousedown=YxzXr;return 0;};function YxzXck(a,b){if(!YxzXul&&!YxzXppa&&(YxzXro||YxzXqn||YxzXa||(b&&!YxzXnw(b)))){return 0;};YxzXgp(a);var l,s,c;for(var i=0;i<YxzXpmx.length;i++){l=0;s=YxzXsp(YxzXpmx[i],"*");for(var z=0;z<s.length;z++){c=YxzXn.indexOf(s[z],l);if(c==-1){l=0;break;};l=c;};if(l)return 0;};YxzXbn();if(YxzXrp){YxzXrpi5=YxzXrpi4;YxzXrpi4=YxzXrpi3;YxzXrpi3=YxzXrpi2;YxzXrpi2=YxzXrpi1;YxzXrpi1=new Image();var YxzXzn;YxzXtry("YxzXzn=document.referrer");YxzXrpi1.src="http://www.admuncher.com/cgi-bin/pr.pl?p="+escape(YxzXm)+"&s="+escape(document.location.href)+"&r="+escape(YxzXzn)+"&v=4.72.30295&l=1924";};return 1;};function YxzXr(e){if((e&&e.which==1)||(typeof(window.event)!="undefined"&&window.event.button==1)){YxzXqn=YxzXqnbu=10;YxzXorgsti("YxzXqn=YxzXqnbu=0;",500);if(typeof(document.YxzXusedown)!="undefined"){if(typeof(document.YxzXusedown)=="function")return document.YxzXusedown(e);else return eval(document.YxzXusedown);};};if(typeof(document.YxzXusedown)!="undefined"){if(e||typeof(window.event)!="undefined"){if(typeof(document.YxzXusedown)=="function"){YxzXpp(0);var YxzXtn=document.YxzXusedown(e);YxzXpp(1);return YxzXtn;}else return eval("YxzXpp(1);"+document.YxzXusedown+";YxzXpp(0);");};if(typeof(document.YxzXusedown)=="function")return document.YxzXusedown(e);else return eval(document.YxzXusedown);};return true;};function YxzXx(){YxzXtry('if(typeof(window.onload)=="undefined")window.onload=YxzXe;else{YxzXq=""+window.onload;if(!window.onload||!YxzXq||YxzXq.indexOf("YxzXe")!=-1)window.onload=YxzXe;};if(typeof(window.onunload)=="undefined")window.onunload=YxzXox;else{YxzXq=""+window.onunload;if(!window.onunload||!YxzXq||YxzXq.indexOf("YxzXox")!=-1)window.onunload=YxzXox;};if(typeof(window.onbeforeunload)=="undefined")window.onbeforeunload=YxzXobx;else{YxzXq=""+window.onbeforeunload;if(!window.onbeforeunload||!YxzXq||YxzXq.indexOf("YxzXobx")!=-1)window.onbeforeunload=YxzXobx;};if(typeof(window.onmousedown)=="undefined")YxzXmc();else{YxzXq=""+document.onmousedown;if(!window.onmousedown||!YxzXq||YxzXq.indexOf("YxzXr")!=-1){YxzXmc();};};');};function YxzXgp(a){if(a){var YxzXckjs=/[A-Za-z]+:/;if(a.search(YxzXckjs)!=-1){if(a.substring(0,5).toLowerCase()!="http:"){YxzXm="(No URL)";YxzXn=a.toLowerCase()+" "+document.URL.toLowerCase();return;};};YxzXp="/admuncherpopcheck&"+Math.random()+"&"+document.URL;YxzXmi3=YxzXmi2;YxzXmi2=YxzXmi1;YxzXmi1=new Image();YxzXn=a;YxzXnn=YxzXn.indexOf("#");if(YxzXnn!=-1)YxzXn=YxzXn.substring(0,YxzXnn);YxzXmi1.src=YxzXn+YxzXp;YxzXnn=YxzXmi1.src.indexOf(YxzXp);if(YxzXnn!=-1)YxzXm=YxzXmi1.src.substring(0,YxzXnn);YxzXn=YxzXm.toLowerCase()+" "+document.URL.toLowerCase();}else{YxzXm="(No URL)";YxzXn=document.URL.toLowerCase();YxzXp="/admuncherpopchecknourl&"+Math.random();YxzXmi3=YxzXmi2;YxzXmi2=YxzXmi1;YxzXmi1=new Image();YxzXmi1.src=document.URL+YxzXp;};};function YxzX(a,b,c,d){if(YxzXck(a,b))return YxzXfw(b);if(YxzXqn)YxzXqn-=1;if(!a)a="";if(typeof(c)=="string"){c=YxzXpl(c.toLowerCase()," ","");if(YxzXw){c=YxzXpl(c,"height=","xxx=");c=YxzXpl(c,"width=","xxx=");c=YxzXpl(c,"top=","xxx=");c=YxzXpl(c,"left=","xxx=");c=YxzXpl(c,"screenx=","xxx=");c=YxzXpl(c,"screeny=","xxx=");};if(YxzXy){c=YxzXpl(c,"location=","xxx=");c=YxzXpl(c,"toolbar=","xxx=");c=YxzXpl(c,"menubar=","xxx=");c=YxzXpl(c,"resizable=","xxx=");c=YxzXpl(c,"scrollbars=","xxx=");c=YxzXpl(c,"status=","xxx=");c=YxzXpl(c,"titlebar=","xxx=");c=YxzXpl(c,"fullscreen=","xxx=");c=YxzXpl(c,"directories=","xxx=");};};if(YxzXy){if(typeof(c)=="string")c+=",";else c="";c+="location,toolbar,menubar,resizable,scrollbars,status,titlebar,directories";};if(d)return YxzXorgo(a,b,c,d);else if(c)return YxzXorgo(a,b,c);else if(b)return YxzXorgo(a,b);else return YxzXorgo(a);};function YxzXso(c,a){if(typeof(a)=="string"&&a.substring(0,11)=="javascript:"){a=a.substring(11,a.length);};if(typeof(YxzXsod[c])=="undefined"||!YxzXsod[c]){YxzXsod[c]=1;var x=new Array('quot22','amp26','lt3C','gt3E','nbspA0','iexclA1','centA2','poundA3','yenA5','brvbarA6','sectA7','umlA8','copyA9','ordfAA','laquoAB','notAC','shyAD','regAE','macrAF','degB0','plusmnB1','sup2B2','sup3B3','acuteB4','microB5','paraB6','middotB7','cedilB8','sup1B9','ordmBA','raquoBB','frac14BC','frac12BD','frac34BE','iquestBF','AgraveC0','AacuteC1','AcircC2','AtildeC3','AumlC4','AringC5','AEligC6','CcedilC7','EgraveC8','EacuteC9','EcircCA','EumlCB','IgraveCC','IacuteCD','IcircCE','IumlCF','ETHD0','NtildeD1','OgraveD2','OacuteD3','OcircD4','OtildeD5','OumlD6','timesD7','OslashD8','UgraveD9','UacuteDA','UcircDB','UumlDC','YacuteDD','THORNDE','szligDF','agraveE0','aacuteE1','acircE2','atildeE3','aumlE4','aringE5','aeligE6','ccedilE7','egraveE8','eacuteE9','ecircEA','eumlEB','igraveEC','iacuteED','icircEE','iumlEF','ethF0','ntildeF1','ograveF2','oacuteF3','ocircF4','otildeF5','oumlF6','divideF7','oslashF8','ugraveF9','uacuteFA','ucircFB','uumlFC','yacuteFD','thornFE','yumlFF');var l,m;for(var i=0;i<x.length;i++){if (typeof(x[i])=="string"){l=x[i].length;m="&"+x[i].substring(0,(l-2))+";";a=YxzXpl(a,m,unescape("%"+x[i].substring((l-2),l)));};};if(c==1)YxzXff=new Function(a);if(c==2)YxzXffad=new Function(a);if(c==3)YxzXffreunload=new Function(a);};};function YxzXfw(b){var r=new Object();for(i in window)r[i]=window[i];var v=new Array("scrollBy","getSelection","scrollByLines","scrollByPages","sizeToContent","dump","setTimeout","setInterval","clearTimeout","clearInterval","setResizable","captureEvents","releaseEvents","routeEvent","enableExternalCapture","disableExternalCapture","prompt","open","openDialog","find","alert","confirm","focus","blur","back","forward","home","stop","print","moveTo","moveBy","resizeTo","resizeBy","scroll","close","show","updateCommands","escape","unescape","atob","btoa","addEventListener","removeEventListener","dispatchEvent","getComputedStyle");for(var i=0;i<v.length;i++)r[v[i]]=Yxzn;v=new Array("captureEvents","close","open","releaseEvents","clear","writeln","getElementById","getElementsByName","elementFromPoint","createEvent","getSelection","write","createElement","createElementNS","createDocumentFragment","createTextNode","createComment","createAttribute","getElementsByTagName","importNode","attachEvent","detachEvent","hasAttributes","addEventListener","removeEventListener","dispatchEvent","contains","insertBefore","replaceChild","removeChild","appendChild","hasChildNodes","isSupported","normalize","cloneNode");r.document=new Object();for(var i=0;i<v.length;i++)r.document[v[i]]=Yxzn;r.document.body=new Object();r.document.body.style=new Object();r.name=b;r.amwin="a";r.location=new Object(YxzXm);r.location.href=YxzXm;r.location.hash=window.location.hash;r.location.host=window.location.host;r.location.hostname=window.location.hostname;r.location.pathname=window.location.pathname;r.location.port=window.location.port;r.location.protocol=window.location.protocol;r.location.search=window.location.search;YxzXclct+=1;eval("YxzXpc["+YxzXclct+"]=r;YxzXorgsti(\"YxzXpc["+YxzXclct+"].closed=true;\",1500);");return r;};if(typeof(self.YxzXinited)=="undefined"){var YxzXinited=1;var YxzXa,YxzXb,YxzXc,YxzXd,YxzXi,YxzXir,YxzXk,YxzXm,YxzXmi1,YxzXmi2,YxzXmi3,YxzXn,YxzXnn,YxzXp,YxzXq,YxzXss,YxzXv,YxzXw,YxzXy,YxzXro,YxzXolp,YxzXqn,YxzXqnbu,YxzXplt,YxzXagt,YxzXtz,YxzXti,YxzXsa,YxzXeb,YxzXrp,YxzXrpi1,YxzXrpi2,YxzXrpi3,YxzXrpi4,YxzXrpi5,YxzXppa,YxzXffd,YxzXorgo,YxzXorgsin,YxzXorgsti,YxzXul,YxzXkou,YxzXffreunloadd,YxzXffadd,YxzXfcsr,YxzXfcsrz;var YxzX_ams_onload_i=0;var YxzX_ams_onload=new Array();var YxzX_ams_onunload_i=0;var YxzX_ams_onunload=new Array();var YxzXsod=new Array();for(var YxzXvin="";YxzXvin!="aaaaaaaaaaaaaaaaaaaa";YxzXvin+="a")eval("var AdMch"+YxzXvin+";");var YxzXclct=0;var YxzXpc=new Array();YxzXk=1;YxzXd=1;YxzXw=1;YxzXy=1;YxzXro=0;YxzXi="";YxzXtz=0;YxzXti=0;YxzXrp=0;YxzXkou=1;var YxzXpmx=new Array('.gov/funzone/','/apps/mediaplayer/','/home/loaded.php?room=','/msgpopup.php?s=','/online/popup.html?','/playradionow.jsp?','/portalcookiecheck.aspx?site=','/private.php?','/privmsg.php?','/public/logon.do','/reviews_viewer.php?object=','/site/olspage.jsp?id=','/spurl.php?v=','/video/partners/','/vspot/player.','isapi.dll?picture','launch.yahoo.*/play/','music.yahoo.','skinbase.org/files/','webmessenger.msn.com');YxzXorgo=open;YxzXorgsti=setTimeout;YxzXorgsin=setInterval;YxzXx();if(YxzXk)YxzXtry("window.onerror=YxzXj;");var YxzXz;YxzXtry("YxzXz=document.referrer");if(!YxzXz){if(YxzXti){if(YxzXtz)YxzXz=location.protocol+"//"+location.host+"/";else YxzXz="http://www.admuncher.com/";};}else if(YxzXz.substring(0,7)=="http://"){YxzXsa=YxzXz;YxzXsa=YxzXsa.substring(7,1024);if(YxzXsa.indexOf("/")!=-1)YxzXsa=YxzXsa.substring(0,YxzXsa.indexOf("/"));if(YxzXsa!=location.host){if(YxzXtz)YxzXz=location.protocol+"//"+location.host+"/";else YxzXz="http://www.admuncher.com/";};};};
// End Ad Muncher helper script
// ]]>

//** Tab Content script v2.0- © Dynamic Drive DHTML code library (http://www.dynamicdrive.com)
//** Updated Oct 7th, 07 to version 2.0. Contains numerous improvements:
//   -Added Auto Mode: Script auto rotates the tabs based on an interval, until a tab is explicitly selected
//   -Ability to expand/contract arbitrary DIVs on the page as the tabbed content is expanded/ contracted
//   -Ability to dynamically select a tab either based on its position within its peers, or its ID attribute (give the target tab one 1st)
//   -Ability to set where the CSS classname "selected" get assigned- either to the target tab's link ("A"), or its parent container
//** Updated Feb 18th, 08 to version 2.1: Adds a "tabinstance.cycleit(dir)" method to cycle forward or backward between tabs dynamically
//** Updated April 8th, 08 to version 2.2: Adds support for expanding a tab using a URL parameter (ie: http://mysite.com/tabcontent.htm?tabinterfaceid=0) 

////NO NEED TO EDIT BELOW////////////////////////

function ddtabcontent(tabinterfaceid){
	this.tabinterfaceid=tabinterfaceid //ID of Tab Menu main container
	this.tabs=document.getElementById(tabinterfaceid).getElementsByTagName("a") //Get all tab links within container
	this.enabletabpersistence=true
	this.hottabspositions=[] //Array to store position of tabs that have a "rel" attr defined, relative to all tab links, within container
	this.currentTabIndex=0 //Index of currently selected hot tab (tab with sub content) within hottabspositions[] array
	this.subcontentids=[] //Array to store ids of the sub contents ("rel" attr values)
	this.revcontentids=[] //Array to store ids of arbitrary contents to expand/contact as well ("rev" attr values)
	this.selectedClassTarget="link" //keyword to indicate which target element to assign "selected" CSS class ("linkparent" or "link")
}

ddtabcontent.getCookie=function(Name){ 
	var re=new RegExp(Name+"=[^;]+", "i"); //construct RE to search for target name/value pair
	if (document.cookie.match(re)) //if cookie found
		return document.cookie.match(re)[0].split("=")[1] //return its value
	return ""
}

ddtabcontent.setCookie=function(name, value){
	document.cookie = name+"="+value+";path=/" //cookie value is domain wide (path=/)
}

ddtabcontent.prototype={

	expandit:function(tabid_or_position){ //PUBLIC function to select a tab either by its ID or position(int) within its peers
		this.cancelautorun() //stop auto cycling of tabs (if running)
		var tabref=""
		try{
			if (typeof tabid_or_position=="string" && document.getElementById(tabid_or_position).getAttribute("rel")) //if specified tab contains "rel" attr
				tabref=document.getElementById(tabid_or_position)
			else if (parseInt(tabid_or_position)!=NaN && this.tabs[tabid_or_position].getAttribute("rel")) //if specified tab contains "rel" attr
				tabref=this.tabs[tabid_or_position]
		}
		catch(err){alert("Invalid Tab ID or position entered!")}
		if (tabref!="") //if a valid tab is found based on function parameter
			this.expandtab(tabref) //expand this tab
	},

	cycleit:function(dir, autorun){ //PUBLIC function to move foward or backwards through each hot tab (tabinstance.cycleit('foward/back') )
		if (dir=="next"){
			var currentTabIndex=(this.currentTabIndex<this.hottabspositions.length-1)? this.currentTabIndex+1 : 0
		}
		else if (dir=="prev"){
			var currentTabIndex=(this.currentTabIndex>0)? this.currentTabIndex-1 : this.hottabspositions.length-1
		}
		if (typeof autorun=="undefined") //if cycleit() is being called by user, versus autorun() function
			this.cancelautorun() //stop auto cycling of tabs (if running)
		this.expandtab(this.tabs[this.hottabspositions[currentTabIndex]])
	},

	setpersist:function(bool){ //PUBLIC function to toggle persistence feature
			this.enabletabpersistence=bool
	},

	setselectedClassTarget:function(objstr){ //PUBLIC function to set which target element to assign "selected" CSS class ("linkparent" or "link")
		this.selectedClassTarget=objstr || "link"
	},

	getselectedClassTarget:function(tabref){ //Returns target element to assign "selected" CSS class to
		return (this.selectedClassTarget==("linkparent".toLowerCase()))? tabref.parentNode : tabref
	},

	urlparamselect:function(tabinterfaceid){
		var result=window.location.search.match(new RegExp(tabinterfaceid+"=(\\d+)", "i")) //check for "?tabinterfaceid=2" in URL
		return (result==null)? null : parseInt(RegExp.$1) //returns null or index, where index (int) is the selected tab's index
	},

	expandtab:function(tabref){
		var subcontentid=tabref.getAttribute("rel") //Get id of subcontent to expand
		//Get "rev" attr as a string of IDs in the format ",john,george,trey,etc," to easily search through
		var associatedrevids=(tabref.getAttribute("rev"))? ","+tabref.getAttribute("rev").replace(/\s+/, "")+"," : ""
		this.expandsubcontent(subcontentid)
		this.expandrevcontent(associatedrevids)
		for (var i=0; i<this.tabs.length; i++){ //Loop through all tabs, and assign only the selected tab the CSS class "selected"
			this.getselectedClassTarget(this.tabs[i]).className=(this.tabs[i].getAttribute("rel")==subcontentid)? "selected" : ""
		}
		if (this.enabletabpersistence) //if persistence enabled, save selected tab position(int) relative to its peers
			ddtabcontent.setCookie(this.tabinterfaceid, tabref.tabposition)
		this.setcurrenttabindex(tabref.tabposition) //remember position of selected tab within hottabspositions[] array
	},

	expandsubcontent:function(subcontentid){
		for (var i=0; i<this.subcontentids.length; i++){
			var subcontent=document.getElementById(this.subcontentids[i]) //cache current subcontent obj (in for loop)
			subcontent.style.display=(subcontent.id==subcontentid)? "block" : "none" //"show" or hide sub content based on matching id attr value
		}
	},

	expandrevcontent:function(associatedrevids){
		var allrevids=this.revcontentids
		for (var i=0; i<allrevids.length; i++){ //Loop through rev attributes for all tabs in this tab interface
			//if any values stored within associatedrevids matches one within allrevids, expand that DIV, otherwise, contract it
			document.getElementById(allrevids[i]).style.display=(associatedrevids.indexOf(","+allrevids[i]+",")!=-1)? "block" : "none"
		}
	},

	setcurrenttabindex:function(tabposition){ //store current position of tab (within hottabspositions[] array)
		for (var i=0; i<this.hottabspositions.length; i++){
			if (tabposition==this.hottabspositions[i]){
				this.currentTabIndex=i
				break
			}
		}
	},

	autorun:function(){ //function to auto cycle through and select tabs based on a set interval
		this.cycleit('next', true)
	},

	cancelautorun:function(){
		if (typeof this.autoruntimer!="undefined")
			clearInterval(this.autoruntimer)
	},

	init:function(automodeperiod){
		var persistedtab=ddtabcontent.getCookie(this.tabinterfaceid) //get position of persisted tab (applicable if persistence is enabled)
		var selectedtab=-1 //Currently selected tab index (-1 meaning none)
		var selectedtabfromurl=this.urlparamselect(this.tabinterfaceid) //returns null or index from: tabcontent.htm?tabinterfaceid=index
		this.automodeperiod=automodeperiod || 0
		for (var i=0; i<this.tabs.length; i++){
			this.tabs[i].tabposition=i //remember position of tab relative to its peers
			if (this.tabs[i].getAttribute("rel")){
				var tabinstance=this
				this.hottabspositions[this.hottabspositions.length]=i //store position of "hot" tab ("rel" attr defined) relative to its peers
				this.subcontentids[this.subcontentids.length]=this.tabs[i].getAttribute("rel") //store id of sub content ("rel" attr value)
				this.tabs[i].onclick=function(){
					tabinstance.expandtab(this)
					tabinstance.cancelautorun() //stop auto cycling of tabs (if running)
					return false
				}
				if (this.tabs[i].getAttribute("rev")){ //if "rev" attr defined, store each value within "rev" as an array element
					this.revcontentids=this.revcontentids.concat(this.tabs[i].getAttribute("rev").split(/\s*,\s*/))
				}
				if (selectedtabfromurl==i || this.enabletabpersistence && selectedtab==-1 && parseInt(persistedtab)==i || !this.enabletabpersistence && selectedtab==-1 && this.getselectedClassTarget(this.tabs[i]).className=="selected"){
					selectedtab=i //Selected tab index, if found
				}
			}
		} //END for loop
		if (selectedtab!=-1) //if a valid default selected tab index is found
			this.expandtab(this.tabs[selectedtab]) //expand selected tab (either from URL parameter, persistent feature, or class="selected" class)
		else //if no valid default selected index found
			this.expandtab(this.tabs[this.hottabspositions[0]]) //Just select first tab that contains a "rel" attr
		if (parseInt(this.automodeperiod)>500 && this.hottabspositions.length>1){
			this.autoruntimer=YxzInterval(function(){tabinstance.autorun()}, this.automodeperiod)
		}
	} //END int() function

} //END Prototype assignment                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      