/*sniffers*/
var agt=navigator.userAgent.toLowerCase();
var appVer=navigator.appVersion.toLowerCase();
var is_minor=parseFloat(appVer);
var is_major=parseInt(is_minor,10);
var is_opera=(agt.indexOf("opera")!= -1)?true:false;
var is_mac=(agt.indexOf("mac")!=-1)?true:false;
var iePos=appVer.indexOf("msie");
if(iePos!=-1){
	if(is_mac){
		iePos=agt.indexOf("msie");
		is_minor=parseFloat(agt.substring(iePos+5,agt.indexOf(";",iePos)));
	}
	else is_minor=parseFloat(appVer.substring(iePos+5,appVer.indexOf(";",iePos)));
	is_major=parseInt(is_minor,10);
}
is_mac=(agt.indexOf("mac")!=-1)?true:false;
var is_konq=(agt.indexOf("konqueror")!=-1)?true:false;
var is_safari=((agt.indexOf("safari")!=-1)&&(agt.indexOf("mac")!=-1))?true:false;
var is_khtml=(is_safari||is_konq)?true:false;
var is_gecko;
var is_fb;
var is_fx;
var is_moz;
var is_aol;
var is_webtv;
function isDOM(){
	var is_getElementById=(document.getElementById)?"true":"false";
	var is_getElementsByTagName=(document.getElementsByTagName)?"true":"false";
	var is_documentElement=(document.documentElement)?"true":"false";
}
function isOpera(){
	var fullApp=new Array();
	var is_opera2=(agt.indexOf("opera 2")!= -1||agt.indexOf("opera/2")!= -1);
	if(is_opera2){
		is_opera_ver="2";
	}
	var is_opera3=(agt.indexOf("opera 3")!= -1||agt.indexOf("opera/3")!= -1);
	if(is_opera3){
		is_opera_ver="3";
	}
	var is_opera4=(agt.indexOf("opera 4")!= -1||agt.indexOf("opera/4")!= -1);
	if(is_opera4){
		is_opera_ver="4";
	}
	var is_opera5=(agt.indexOf("opera 5")!= -1||agt.indexOf("opera/5")!= -1);
	if(is_opera5){
		is_opera_ver="5";
	}
	var is_opera6=(agt.indexOf("opera 6")!= -1||agt.indexOf("opera/6")!= -1);
	if(is_opera6){
		is_opera_ver="6";
	}
	var is_opera7=(agt.indexOf("opera 7")!= -1||agt.indexOf("opera/7")!= -1);
	if(is_opera7){
		is_opera_ver="7";
	}
	var is_opera8=(agt.indexOf("opera 8")!= -1||agt.indexOf("opera/8")!= -1);
	if(is_opera8){
		is_opera_ver="8";
	}
	var is_opera9=(agt.indexOf("opera 9")!= -1||agt.indexOf("opera/9")!= -1);
	if(is_opera9){
		is_opera_ver="9";
	}
	var is_opera5up=(is_opera&&!is_opera2&&!is_opera3&&!is_opera4);
	var is_opera6up=(is_opera&&!is_opera2&&!is_opera3&&!is_opera4&&!is_opera5);
	var is_opera7up=(is_opera&&!is_opera2&&!is_opera3&&!is_opera4&&!is_opera5&&!is_opera6);
	var is_opera8up=(is_opera&&!is_opera2&&!is_opera3&&!is_opera4&&!is_opera5&&!is_opera6&&!is_opera7);
	var is_opera9up=(is_opera&&!is_opera2&&!is_opera3&&!is_opera4&&!is_opera5&&!is_opera6&&!is_opera7 &&!is_opera8);
	fullApp[0]=is_opera;
	fullApp[1]=is_opera_ver;
	return fullApp;
}
function isMac(){
	if(iePos!=-1){
	if(is_mac){
		var iePos=agt.indexOf("msie");
		is_minor=parseFloat(agt.substring(iePos+5,agt.indexOf(";",iePos)));
	}
	else is_minor=parseFloat(appVer.substring(iePos+5,appVer.indexOf(";",iePos)));
	is_major=parseInt(is_minor,10);
	}
}
function isKonqueror(){
	is_konq=false;
	var kqPos=agt.indexOf("konqueror");
	if(kqPos!=-1){
		is_konq=true;
		is_minor=parseFloat(agt.substring(kqPos+10,agt.indexOf(";",kqPos)));
		is_major=parseInt(is_minor,10);
	}
}
function isSafari(){
	is_safari=((agt.indexOf("safari")!=-1)&&(agt.indexOf("mac")!=-1))?true:false;
}
function isGecko(){
	is_khtml=(is_safari||is_konq);
	is_gecko=((!is_khtml)&&(navigator.product)&&(navigator.product.toLowerCase()=="gecko"))?true:false;
	var is_gver=0;
	if(is_gecko) is_gver=navigator.productSub;
	return is_gecko;
}
function isFirebird(){
	is_fb=((agt.indexOf("mozilla/5")!=-1)&&(agt.indexOf("spoofer")==-1)&&(agt.indexOf("compatible")==-1)&&(agt.indexOf("opera")==-1) &&(agt.indexOf("webtv")==-1)&&(agt.indexOf("hotjava")==-1)&&(is_gecko)&&(navigator.vendor=="Firebird"));
	if((is_moz)||(is_fb)||(is_fx)){
		var is_moz_ver=(navigator.vendorSub)?navigator.vendorSub:0;
		if(is_fx&&!is_moz_ver){
			is_moz_ver=agt.indexOf("firefox/");
			is_moz_ver=agt.substring(is_moz_ver+8);
			is_moz_ver=parseFloat(is_moz_ver);
		}
		if(!(is_moz_ver)){
			is_moz_ver=agt.indexOf("rv:");
			is_moz_ver=agt.substring(is_moz_ver+3);
			is_paren=is_moz_ver.indexOf(")");
			is_moz_ver=is_moz_ver.substring(0,is_paren);
		}
		is_minor=is_moz_ver;
		is_major=parseInt(is_moz_ver,10);
	}
	var is_fb_ver=is_moz_ver;
	var is_fx_ver=is_moz_ver;
}
function isFirefox(){
	var fullApp=new Array();
	is_gecko=isGecko();
	is_fx=((agt.indexOf("mozilla/5")!=-1)&&(agt.indexOf("spoofer")==-1)&&(agt.indexOf("compatible")==-1)&&(agt.indexOf("opera")==-1) &&(agt.indexOf("webtv")==-1)&&(agt.indexOf("hotjava")==-1)&&(is_gecko)&&((navigator.vendor=="Firefox")||(agt.indexOf("firefox")!=-1)));
	if(is_fx){
		var is_moz_ver=(navigator.vendorSub)?navigator.vendorSub:0;
		if(is_fx&&!is_moz_ver){
			is_moz_ver=agt.indexOf("firefox/");
			is_moz_ver=agt.substring(is_moz_ver+8);
			is_moz_ver=parseFloat(is_moz_ver);
		}
		if(!(is_moz_ver)){
			is_moz_ver=agt.indexOf("rv:");
			is_moz_ver=agt.substring(is_moz_ver+3);
			is_paren=is_moz_ver.indexOf(")");
			is_moz_ver=is_moz_ver.substring(0,is_paren);
		}
		is_minor=is_moz_ver;
		is_major=parseInt(is_moz_ver,10);
	}
	var is_fx_ver=is_moz_ver;
	fullApp[0]=is_fx;
	fullApp[1]=is_moz_ver;
	return fullApp;
}
function isMozilla(){
	is_moz=((agt.indexOf("mozilla/5")!=-1)&&(agt.indexOf("spoofer")==-1)&&(agt.indexOf("compatible")==-1)&&(agt.indexOf("opera")==-1) &&(agt.indexOf("webtv")==-1)&&(agt.indexOf("hotjava")==-1)&&(is_gecko)&&(!is_fb)&&(!is_fx)&&((navigator.vendor==="")||(navigator.vendor=="Mozilla")||(navigator.vendor=="Debian")));
	if((is_moz)||(is_fb)||(is_fx)){
		var is_moz_ver=(navigator.vendorSub)?navigator.vendorSub:0;
		if(is_fx&&!is_moz_ver){
			is_moz_ver=agt.indexOf("firefox/");
			is_moz_ver=agt.substring(is_moz_ver+8);
			is_moz_ver=parseFloat(is_moz_ver);
		}
		if(!(is_moz_ver)){
			is_moz_ver=agt.indexOf("rv:");
			is_moz_ver=agt.substring(is_moz_ver+3);
			is_paren=is_moz_ver.indexOf(")");
			is_moz_ver=is_moz_ver.substring(0,is_paren);
		}
		is_minor=is_moz_ver;
		is_major=parseInt(is_moz_ver,10);
	}
	var is_fb_ver=is_moz_ver;
	var is_fx_ver=is_moz_ver;
}
function isNavigator(){
	var is_nav=((agt.indexOf("mozilla")!=-1)&&(agt.indexOf("spoofer")==-1)&&(agt.indexOf("compatible")==-1)&&(agt.indexOf("opera")==-1)&&(agt.indexOf("webtv")==-1)&&(agt.indexOf("hotjava")==-1)&&(!is_khtml)&&(!(is_moz))&&(!is_fb)&&(!is_fx));
	if((navigator.vendor)&&((navigator.vendor=="Netscape6")||(navigator.vendor=="Netscape"))&&(is_nav)){
		is_major=parseInt(navigator.vendorSub,10);
		is_minor=parseFloat(navigator.vendorSub,10);
	}
	var is_nav2=(is_nav&&(is_major==2));
	var is_nav3=(is_nav&&(is_major==3));
	var is_nav4=(is_nav&&(is_major==4));
	var is_nav4up=(is_nav&&is_minor >= 4);
	var is_navonly=(is_nav&&((agt.indexOf(";nav")!= -1)||(agt.indexOf(";nav")!= -1)));
	var is_nav6=(is_nav&&is_major==6);
	var is_nav6up=(is_nav&&is_minor >= 6);
	var is_nav5=(is_nav&&is_major==5&&!is_nav6);
	var is_nav5up=(is_nav&&is_minor >= 5);
	var is_nav7=(is_nav&&is_major==7);
	var is_nav7up=(is_nav&&is_minor >= 7);
	var is_nav8=(is_nav&&is_major==8);
	var is_nav8up=(is_nav&&is_minor >= 8);
}
function isExplorer(){
	var fullApp=new Array();
	var is_ie=((iePos!=-1)&&(!is_opera)&&(!is_khtml));
	var is_ie3=(is_ie&&(is_major<4));
	var is_ie4=(is_ie&&is_major==4);
	var is_ie4up=(is_ie&&is_minor >= 4);
	var is_ie5=(is_ie&&is_major==5);
	var is_ie5up=(is_ie&&is_minor >= 5);
	var is_ie5_5=(is_ie&&(agt.indexOf("msie 5.5")!=-1));
	var is_ie5_5up=(is_ie&&is_minor >= 5.5);
	var is_ie6=(is_ie&&is_major==6);
	var is_ie6up=(is_ie&&is_minor >= 6);
	var is_ie7=(is_ie&&is_major==7);
	var is_ie7up=(is_ie&&is_minor >= 7);
	fullApp[0]=is_ie;
	fullApp[1]=is_major;
	fullApp[2]=is_minor;
	return fullApp;
}
// KNOWN BUG: On AOL4, returns false if IE3 is embedded browser
	// or if this is the first browser window opened.  Thus the
	// variables is_aol, is_aol3, and is_aol4 aren"t 100% reliable.
function isAOL(){
	var is_aol=(agt.indexOf("aol")!= -1);
	var is_aol3=(is_aol&&is_ie3);
	var is_aol4=(is_aol&&is_ie4);
	var is_aol5=(agt.indexOf("aol 5")!= -1);
	var is_aol6=(agt.indexOf("aol 6")!= -1);
	var is_aol7=((agt.indexOf("aol 7")!=-1)||(agt.indexOf("aol7")!=-1));
	var is_aol8=((agt.indexOf("aol 8")!=-1)||(agt.indexOf("aol8")!=-1));
}
function isWebTV(){
	var is_webtv=(agt.indexOf("webtv")!= -1);
}
//  Cookie Functions -- "Night of the Living Cookie" Version(25-Jul-96)
//
//  Written by:  Bill Dortch, hIdaho Design <bdortch@hidaho.com>
//  The following functions are released to the public domain.
//
//  This version takes a more aggressive approach to deleting
//  cookies.  Previous versions set the expiration date to one
//  millisecond prior to the current time;however, this method
//  did not work in Netscape 2.02(though it does in earlier and
//  later versions), resulting in "zombie" cookies that would not
//  die.  DeleteCookie now sets the expiration date to the earliest
//  usable date(one second into 1970), and sets the cookie's value
//  to null for good measure.
//
//  Also, this version adds optional path and domain parameters to
//  the DeleteCookie function.  If you specify a path and/or domain
//  when creating(setting) a cookie**, you must specify the same
//  path/domain when deleting it, or deletion will not occur.
//
//  The FixCookieDate function must now be called explicitly to
//  correct for the 2.x Mac date bug.  This function should be
//  called *once* after a Date object is created and before it
//  is passed(as an expiration date) to SetCookie.  Because the
//  Mac date bug affects all dates, not just those passed to
//  SetCookie, you might want to make it a habit to call
//  FixCookieDate any time you create a new Date object:
//
//    var theDate=new Date();
//    FixCookieDate(theDate);
//
//  Calling FixCookieDate has no effect on platforms other than
//  the Mac, so there is no need to determine the user's platform
//  prior to calling it.
//
//  This version also incorporates several minor coding improvements.
//
//  **Note that it is possible to set multiple cookies with the same
//  name but different(nested) paths.  For example:
//
//    SetCookie("color","red",null,"/outer");
//    SetCookie("color","blue",null,"/outer/inner");
//
//  However, GetCookie cannot distinguish between these and will return
//  the first cookie that matches a given name.  It is therefore
//  recommended that you *not* use the same name for cookies with
//  different paths. (Bear in mind that there is *always* a path
//  associated with a cookie;if you don't explicitly specify one,
//  the path of the setting document is used.)
//
//  Revision History:
//
//    "Toss Your Cookies" Version(22-Mar-96)
//     -Added FixCookieDate() function to correct for Mac date bug
//
//    "Second Helping" Version(21-Jan-96)
//     -Added path, domain and secure parameters to SetCookie
//     -Replaced home-rolled encode/decode functions with Netscape's
//        new(then) escape and unescape functions
//
//    "Free Cookies" Version(December 95)
//
//
//  For information on the significance of cookie parameters, and
//  and on cookies in general, please refer to the official cookie
//  spec, at:
//
//      http://www.netscape.com/newsref/std/cookie_spec.html
//
//******************************************************************
//
// "Internal" function to return the decoded value of a cookie
//
function getCookieVal(offset){
	var endstr=document.cookie.indexOf(";", offset);
	if(endstr==-1)
		endstr=document.cookie.length;
	return unescape(document.cookie.substring(offset,endstr));
}
//
//  Function to correct for 2.x Mac date bug.  Call this function to
//  fix a date object prior to passing it to SetCookie.
//  IMPORTANT:  This function should only be called *once* for
//  any given date object!  See example at the end of this document.
//
function FixCookieDate(date){
	var base=new Date(0);
	var skew=base.getTime();// dawn of(Unix) time-should be 0
	if(skew>0)  // Except on the Mac-ahead of its time
		date.setTime(date.getTime()-skew);
}
//
//  Function to return the value of the cookie specified by "name".
//    name-String object containing the cookie name.
//    returns-String object containing the cookie value,or null if
//      the cookie does not exist.
//
function GetCookie(name){
	var arg=name+"=";
	var alen=arg.length;
	var clen=document.cookie.length;
	var i=0;
	while(i<clen){
		var j=i+alen;
		if(document.cookie.substring(i,j)==arg)
			return getCookieVal(j);
		i=document.cookie.indexOf(" ",i)+1;
		if(i===0) break;
	}
	return null;
}
//
//  Function to create or update a cookie.
//    name-String object containing the cookie name.
//    value-String object containing the cookie value.  May contain
//      any valid string characters.
//    [expires]-Date object containing the expiration data of the cookie.  If
//      omitted or null, expires the cookie at the end of the current session.
//    [path]-String object indicating the path for which the cookie is valid.
//      If omitted or null, uses the path of the calling document.
//    [domain]-String object indicating the domain for which the cookie is
//      valid.  If omitted or null, uses the domain of the calling document.
//    [secure]-Boolean(true/false) value indicating whether cookie transmission
//      requires a secure channel(HTTPS).
//
//  The first two parameters are required.  The others, if supplied, must
//  be passed in the order listed above.  To omit an unused optional field,
//  use null as a place holder.  For example, to call SetCookie using name,
//  value and path, you would code:
//
//      SetCookie("myCookieName", "myCookieValue", null, "/");
//
//  Note that trailing omitted parameters do not require a placeholder.
//
//  To set a secure cookie for path "/myPath", that expires after the
//  current session, you might code:
//
//      SetCookie(myCookieVar, cookieValueVar, null, "/myPath", null, true);
//
function SetCookie(name,value,expires,path,domain,secure){
	document.cookie=name+"="+escape(value) +((expires)?";expires="+expires.toGMTString():"") +((path)?";path="+path:"") +((domain)?";domain="+domain:"") +((secure)?";secure":"");
}
//  Function to delete a cookie.(Sets expiration date to start of epoch)
//    name-  String object containing the cookie name
//    path-  String object containing the path of the cookie to delete.  This MUST
//             be the same as the path used to create the cookie, or null/omitted if
//             no path was specified when creating the cookie.
//    domain-String object containing the domain of the cookie to delete.  This MUST
//             be the same as the domain used to create the cookie, or null/omitted if
//             no domain was specified when creating the cookie.
//
function DeleteCookie(name,path,domain){
	if(GetCookie(name)){
		document.cookie=name+"=" +
			((path)?";path="+path:"") +
			((domain)?";domain="+domain:"") +
			";expires=Thu, 01-Jan-70 00:00:01 GMT";
	}
}
/* styles */
/* computed style */
var IE_computedStyle=function(){
	var isIE=/*@cc_on true || @*/false;
	var borderRegex=/thin|medium|thick/i;// regex for css border width keywords
	var styleEl;
	var getPos=function(which){
	if(/auto/i.test(styleEl.currentStyle[which])){
		return "auto";
		} else{
			return grabLength(styleEl.currentStyle[which])+"px";
		}
	};
	var getMargin=function(which){
		if(/auto/i.test(styleEl.currentStyle["margin"+which])){
			return "0px";
		} else{
			return grabLength(styleEl.currentStyle["margin"+which])+"px";
		}
	};
	var getBorderWidth=function(which){
		var borderWidth=styleEl.currentStyle["border"+which+"Width"];
		if(styleEl.currentStyle["border"+which+"Style"] != "none" &&
								((/Top|Bottom/i.test(which) && styleEl.offsetHeight>styleEl.clientHeight) ||
								(/Right|Left/i.test(which) && styleEl.offsetWidth>styleEl.clientWidth))){
						if(!borderRegex.test(borderWidth)){
								return grabLength(borderWidth)+"px";
						} else if(borderRegex.test(borderWidth)){
								var temp=document.createElement("DIV");
								temp.style.width="10px";
								temp.style.border=borderWidth+" "+styleEl.currentStyle["border"+which+"Style"]+" #000000";
								styleEl.parentNode.appendChild(temp);
								borderWidth=Math.round((temp.offsetWidth-10)/2);
								styleEl.parentNode.removeChild(temp);
								return borderWidth+"px";
						}
				} else{
						return "0px";
				}
		};
		var getPadding=function(which){
				return grabLength(styleEl.currentStyle["padding"+which])+"px";
		};
		var getWidth=function(){
				var width=styleEl.offsetWidth;// currently the width including padding+border
				width-=parseInt(getPadding("Right"),10);
				width-=parseInt(getPadding("Left"),10);
				width-=parseInt(getBorderWidth("Right"),10);
				width-=parseInt(getBorderWidth("Left"),10);
				return width+"px";
		};
		var getHeight=function(){
				var height=styleEl.offsetHeight;// currently the height including padding+border
				height-=parseInt(getPadding("Top"),10);
				height-=parseInt(getPadding("Bottom"),10);
				height-=parseInt(getBorderWidth("Top"),10);
				height-=parseInt(getBorderWidth("Bottom"),10);
				return height;
		};
		var grabLength=function(length){
				var temp=document.createElement("DIV");
				temp.style.width=length;
				styleEl.parentNode.appendChild(temp);
				length=Math.round(temp.offsetWidth);
				styleEl.parentNode.removeChild(temp);
				return length;
		};
		return {
				get:function(el,styleP){
						var rValue;
						styleEl =(typeof(el)=="string")?document.getElementById(el):el;
						var styleProp =(typeof(styleP)=="string")?styleP.toLowerCase():"";
						styleProp=styleProp.replace(/\-/g,"");
						if(!isIE || !(/block/i.test(styleEl.currentStyle["display"]))){
							return false;
						}
						switch(styleProp){ // run through the valid css properties,return undefined if none match
							case "top": rValue=getPos("top");break;
							case "right": rValue=getPos("right");break;
							case "bottom": rValue=getPos("bottom");break;
							case "left": rValue=getPos("left");break;
							case "margintop": rValue=getMargin("Top");break;
							case "marginright": rValue=getMargin("Right");break;
							case "marginbottom": rValue=getMargin("Bottom");break;
							case "marginleft": rValue=getMargin("Left");break;
							case "bordertopwidth": rValue=getBorderWidth("Top");break;
							case "borderrightwidth": rValue=getBorderWidth("Right");break;
							case "borderbottomwidth": rValue=getBorderWidth("Bottom");break;
							case "borderleftwidth": rValue=getBorderWidth("Left");break;
							case "paddingtop": rValue=getPadding("Top");break;
							case "paddingright": rValue=getPadding("Right");break;
							case "paddingbottom": rValue=getPadding("Bottom");break;
							case "paddingleft": rValue=getPadding("Left");break;
							case "width": rValue=getWidth();break;
							case "height": rValue=getHeight();break;
							default:
								break;
						}
						return rValue;
				}
		};
}();
function setFrameHeight(obj,node,delta){
	var n=document.getElementById(node);
	var x;
	var b=navigator.userAgent.toLowerCase();
	if(String(b).indexOf("msie") > -1){
		x=IE_computedStyle.get(n,"height");
	}
	else {
		x=document.defaultView.getComputedStyle(n,"").height;
		x=Number(x.substring(0,x.length-2));
	}
	x+=delta;
	x=x+"px";
	window.parent.document.getElementById(obj).style.height=x;
}
function getComputedWidth(obj){
	var x;
	var b=navigator.userAgent.toLowerCase();
	if(String(b).indexOf("msie") > -1){
		x=IE_computedStyle.get(obj,"width");
	}
	else {
		x=document.defaultView.getComputedStyle(obj,"").width;
	}
	return x=Number(x.substring(0,x.length-2));
}
function setComputedWidth(obj,node,delta){
	var n=document.getElementById(node);
	var x;
	var b=navigator.userAgent.toLowerCase();
	if(String(b).indexOf("msie") > -1){
		x=IE_computedStyle.get(n,"width");
	}
	else {
		x=document.defaultView.getComputedStyle(n,"").width;
	}
	x=Number(x.substring(0,x.length-2));
	x+=Number(delta);
	x=w+"px";
	document.getElementById(obj).style.width=x;
}
function setComputedHeight(obj,node,delta){
	var n=document.getElementById(node);
	var x;
	var b=navigator.userAgent.toLowerCase();
	if(String(b).indexOf("msie") > -1){
		x=IE_computedStyle.get(n,"height");
	}
	else {
		x=document.defaultView.getComputedStyle(n,"").height;
	}
	x=Number(x.substring(0,x.length-2));
	x+=Number(delta);
	x=w+"px";
	document.getElementById(obj).style.height=x;
}


/* toggles */
function toggleSection(obj,stat){
	var s,el,i;
	var a=new Array();
	var str=new String(document.getElementById(obj).className);
	str=str.replace(/ disabled/,"");
	document.getElementById(obj).className=(stat=="off")?str+" disabled": str;
	s=document.getElementById(obj);
	a=s.getElementsByTagName("input");
	for(i=0; i<a.length; i++){
		if(document.getElementById(a[i].id)){
			el=document.getElementById(a[i].id);
		}
		if(el.type.toLowerCase() !="hidden"){
			el.disabled=(stat=="off")?true:false;
			if(stat=="off"){
				switch(el.type.toLowerCase()){
					case "text":
						el.value="";
						break;
					case "checkbox":
						el.checked=false;
						break;
					case "radio":
						el.checked=false;
						break;
					default:
						break;
				}
			}
		}
	}
	a=s.getElementsByTagName("select");
	for(i=0; i<a.length; i++){
		el=document.getElementById(a[i].id);
		el.disabled=(stat=="off")?true:false;
		if(stat=="off"){
			el.selectedIndex=0;
		}
	}
	a=s.getElementsByTagName("textarea");
	for(i=0; i<a.length; i++){
		el=document.getElementById(a[i].id);
		el.disabled=(stat=="off")?true:false;
		if(stat=="off"){
			el.value="";
		}
	}
	a=s.getElementsByTagName("img");
	for(i=0; i<a.length; i++){
		if(a[i].id){
			el=document.getElementById(a[i].id);
			if(el){
				if(el.className=="req"){
					el.src=(stat=="off")?"/atf/cf/{77dee951-b24f-42a6-9d0e-d7e5b841384d}/rqd_disabled.gif":"/atf/cf/{77dee951-b24f-42a6-9d0e-d7e5b841384d}/rqd.gif";
				}
			}
		}
	}
}
function toggleDisplay(obj,disp){
	document.getElementById(obj).style.display=(document.getElementById(obj).style.display=="none")?disp:"none";
}
/* gets */
function getCellValue(cellOrId){
	var cell= typeof cellOrId=='string'?(document.all?document.all[cellOrId]:document.getElementById(cellOrId)):cellOrId;
	return cell.innerHTML;
}
function getElementsByClass(searchClass,node,tag){
	var classElements=new Array();
	node=(!node)?document:document.getElementById(node);
	if(!tag){
		tag='*';
	}
	var els=node.getElementsByTagName(tag);
	var elsLen=els.length;
	var pattern=new RegExp('(^|\\s)'+searchClass+'(\\s|$)');
	for(i=0,j=0;i<elsLen;i++){
		if(pattern.test(els[i].className)){
			classElements[j]=els[i];
			j++;
		}
	}
	return classElements;
}
/* setting */
function changeSrc(obj,x){
	document.getElementById(obj).src=x;
}
function changeClassName(obj,x){
	document.getElementById(obj).className=x;
}
function changeHeight(obj,h){
	document.getElementById(obj).style.height=h;
}
function setDisplay(obj,disp){
	document.getElementById(obj).style.display=disp;
}
function setCursor(obj,curs){
	document.getElementById(obj).style.cursor=curs;
}
function setFocus(obj){
	document.getElementById(obj).focus();
}
function setReadOnly(obj,x){
	document.getElementById(obj).readOnly=x;
}
function goToLocation(loc){
	location.href=loc;
}