var user;
var domain;
var suffix;
function jemail(user, domain, suffix){
document.write('<a href="' + 'mailto:' + user + '@' + domain + '.' + suffix + '">' + user + '@' + domain + '.' + suffix + '</a>');
}
function shadowText() {
	if (parseInt(navigator.appVersion)>=4) {
		var textcolor = "color: " + ((arguments[0]==null) ? "black" : arguments[0]) + ";"
		var shadowcolor = "color: " + ((arguments[1]==null) ? "gray" : arguments[1]) + ";"
		var fontInfo = (arguments[2]==null) ? "" : "font:" + arguments[2] + ";"
		var offx = "left: " + ((arguments[3]==null) ? 1 : arguments[3]) + ";"
		var offy = "top: " + ((arguments[4]==null) ? 1 : arguments[4]) + ";"
		var str = "<SPAN STYLE=\"position: relative;" + fontInfo + "\">"
		str += "<SPAN STYLE=\"position: absolute; " + fontInfo + offx + offy + shadowcolor + "\">" + this.toString() + "</SPAN>"
		str += "<SPAN STYLE=\"position: relative;" + fontInfo + textcolor + "\">" + this.toString() + "</SPAN>"
		str += "</SPAN>"
	}
	else // not a 4.0 browser
	str = "<DIV>" + this.toString() + "</DIV>"
	return str
}
function shadowTextb() {
	if (parseInt(navigator.appVersion)>=4) {
		var textcolor = "color: " + ((arguments[0]==null) ? "black" : arguments[0]) + ";"
		var shadowcolor = "color: " + ((arguments[1]==null) ? "gray" : arguments[1]) + ";"
		var fontInfo = (arguments[2]==null) ? "" : "font:" + arguments[2] + ";"
		var offx = "left: " + ((arguments[3]==null) ? 1 : arguments[3]) + ";"
		var offy = "top: " + ((arguments[4]==null) ? 1 : arguments[4]) + ";"
		var str = "<SPAN STYLE=\"position: relative;" + fontInfo + "\">"
		str += "<SPAN STYLE=\"position: absolute; " + fontInfo + offx + offy + shadowcolor + "\"><b>" + this.toString() + "</b></SPAN>"
		str += "<SPAN STYLE=\"position: relative;" + fontInfo + textcolor + "\"><b>" + this.toString() + "</b></SPAN>"
		str += "</SPAN>"
	}
	else // not a 4.0 browser
	str = "<DIV>" + this.toString() + "</DIV>"
	return str
}
function shadowTextbe() {
	if (parseInt(navigator.appVersion)>=4) {
		var textcolor = "color: " + ((arguments[0]==null) ? "black" : arguments[0]) + ";"
		var shadowcolor = "color: " + ((arguments[1]==null) ? "gray" : arguments[1]) + ";"
		var fontInfo = (arguments[2]==null) ? "" : "font:" + arguments[2] + ";"
		var offx = "left: " + ((arguments[3]==null) ? 1 : arguments[3]) + ";"
		var offy = "top: " + ((arguments[4]==null) ? 1 : arguments[4]) + ";"
		var str = "<SPAN STYLE=\"position: relative;" + fontInfo + "\">"
		str += "<SPAN STYLE=\"letter-spacing: 1px; position: absolute; " + fontInfo + offx + offy + shadowcolor + "\"><b>" + this.toString() + "</b></SPAN>"
		str += "<SPAN STYLE=\"letter-spacing: 1px; position: relative;" + fontInfo + textcolor + "\"><b>" + this.toString() + "</b></SPAN>"
		str += "</SPAN>"
	}
	else // not a 4.0 browser
	str = "<DIV>" + this.toString() + "</DIV>"
	return str
}
function shadowTexte() {
	if (parseInt(navigator.appVersion)>=4) {
		var textcolor = "color: " + ((arguments[0]==null) ? "black" : arguments[0]) + ";"
		var shadowcolor = "color: " + ((arguments[1]==null) ? "gray" : arguments[1]) + ";"
		var fontInfo = (arguments[2]==null) ? "" : "font:" + arguments[2] + ";"
		var offx = "left: " + ((arguments[3]==null) ? 1 : arguments[3]) + ";"
		var offy = "top: " + ((arguments[4]==null) ? 1 : arguments[4]) + ";"
		var str = "<SPAN STYLE=\"position: relative;" + fontInfo + "\">"
		str += "<SPAN STYLE=\"letter-spacing: 1px; position: absolute; " + fontInfo + offx + offy + shadowcolor + "\">" + this.toString() + "</SPAN>"
		str += "<SPAN STYLE=\"letter-spacing: 1px; position: relative;" + fontInfo + textcolor + "\">" + this.toString() + "</SPAN>"
		str += "</SPAN>"
	}
	else // not a 4.0 browser
	str = "<DIV>" + this.toString() + "</DIV>"
	return str
}
String.prototype.shadow = shadowText;
String.prototype.shadowb = shadowTextb;
String.prototype.shadowbe = shadowTextbe;
String.prototype.shadowe = shadowTexte;
function stextb(text,color,size,font) {
	document.write(text.shadowb(color,"gray",size+"pt "+font))
}
function stextbe(text,color,size,font) {
	document.write(text.shadowbe(color,"gray",size+"pt "+font))
}
function stextbe_dkbg(text,color,size,font) {
	document.write(text.shadowbe(color,"#000000",size+"pt "+font))
}
function stextb_dkbg(text,color,size,font) {
	document.write(text.shadowb(color,"#000000",size+"pt "+font))
}
function stexte(text,color,size,font) {
	document.write(text.shadowe(color,"gray",size+"pt "+font))
}
function stext(text,color,size,font) {
	document.write(text.shadow(color,"gray",size+"pt "+font))
}
function showcursor() {
	hoverItem=event.srcElement;
	hoverItem.style.cursor="hand"; }
function showarrow() {
	hoverItem=event.srcElement;
	hoverItem.style.cursor="default"; }

var destMAX = 10; //maximum number of items in dest list 

function inDest(dest, text, value) { 
var opt, o = 0; 
while (opt = dest[o++]) if (opt.value == value && opt.text == text) return true; 
return o > destMAX; 
} 

function toDest(s, dest) { 
var opt, o = 0; 
while (opt = s[o++]) if (opt.selected && !inDest(dest, opt.text, opt.value)) 
dest.options[dest.length] = new Option(opt.text,opt.value); 
if (navigator.appName == 'Netscape' && 
(navigator.appVersion.indexOf('Win') != -1 || 
navigator.appVersion.indexOf('Mac') != -1)) 
history.go(0); 
var opt, o = 0; 
while (opt = s[o++]) if (opt.selected) s[o-1] = null; 
} 

//courtesy M. Honnen ///////////// 
//http://www.faqts.com /////////// 
function moveSelected (select, down) { 
if (select.selectedIndex != -1) { 
if (down) { 
if (select.selectedIndex != select.options.length - 1) 
var x = select.selectedIndex + 1; 
else 
return; 
} 
else { 
if (select.selectedIndex != 0) 
var x = select.selectedIndex - 1; 
else 
return; 
} 
var swapOption = new Object(); 
swapOption.text = select.options[select.selectedIndex].text; 
swapOption.value = select.options[select.selectedIndex].value; 
swapOption.selected = select.options[select.selectedIndex].selected; 
swapOption.defaultSelected = select.options[select.selectedIndex].defaultSelected; 
for (var property in swapOption) 
select.options[select.selectedIndex][property] = select.options[x][property]; 
for (var property in swapOption) 
select.options[x][property] = swapOption[property]; 
} 
} 

function delSelected(dest) { 
var opt, o = 0; 
while (opt = dest[o++]) if (opt.selected) dest[o-1] = null; 
} 
function setHidden(f) { 
	
	var destVals = new Array(), opt = 0, separator = ',', d = f.partslist; 
	while (d[opt]) destVals[opt] = d[opt++].value; 
	f.partsItems.value = destVals.join(separator); 
	return true; 
} 
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
