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_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_findObj(n, d) { //v4.01
  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 && d.getElementById) x=d.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];}
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

function hasValidAreaCode(theValue) {
	var isValid=true; var areaCode;
	theareaCode=theValue;
	if(theareaCode != "787" && theareaCode != "939") isValid=false;
	return isValid;
}
function isValidPhonePrefix(theValue) {
	var objRegExp  = /^(\d{3})$/;
	return objRegExp.test(theValue);
}
function isValidPhoneNum(theValue) {
	var objRegExp  = /^(\d{4})$/;
	return objRegExp.test(theValue);
}
function isValidAccount(theValue) {
	var objRegExp  = /^(\d{9})$/;
	return objRegExp.test(theValue);
}
function isValidSS(theValue) {
	var objRegExp  = /^(\d{4})$/;
	return objRegExp.test(theValue);
}
function isValidSScorp(theValue) {
	var objRegExp  = /^(\d{9})$/;
	return objRegExp.test(theValue);
}
function isValidZipcode(theValue) {
	var objRegExp  = /^(\d{5})$/;
	return objRegExp.test(theValue);
}
function minCharacters(theValue) {
	var isValid = true;
    if (theValue.length <= 6) isValid=false;
	return isValid;
}
function illegalCharacters(theValue) {
	var illegalChars = /\W/;
	var isValid = true;
    if (illegalChars.test(theValue)) isValid=false;
	return isValid;
}
function numberCheck(theValue) {
	var numbers = "0123456789"
	var  hasNumber= false;
	var temp;
	for (var i=0; i<theValue.length; i++) {
		temp = "" + theValue.substring(i, i+1);
		if (numbers.indexOf(temp) != -1) {
			hasNumber = true;
			break;
		}
	}
	return hasNumber;
}
function isCurrency(theField) {
	var nNum = 0;
	var nDollarSign = 0;
	var nDecimal = 0;
	var nCommas = 0;
	var txtLen;
	var xTxt;
	var sDollarVal;
	var bComma;				
	var decPos;
	var nNumCount = 0;
	var i;
	var x;
	xTxt = theField;
	txtLen = xTxt.value.length
	for(i = 0; i < txtLen; i++)	{
		x = xTxt.value.substr(i, 1);
		if(x == "$") nDollarSign = nDollarSign + 1;
		else if(x == ".") nDecimal = nDecimal + 1;
		else if(x == ",") nCommas = nCommas + 1;
		else if(parseInt(x) >= 0 || parseInt(x) <= 9)
			nNum = nNum + 1;
		else {
			 return false;
		} 
	} 
	if(nDollarSign > 1) {
		return false;
	}
	if(nDecimal > 1) {
		return false;
	} 
	if(nDollarSign == 1) {
		if(xTxt.value.indexOf("$") != 0) {
			return false;
		} 
	}
	if(nDecimal == 1) {
		decPos = (txtLen - 1) - xTxt.value.indexOf(".");
		if(decPos > 2) {
			return false;
		}
	}	
	if(nCommas == 0) {
		return true;
	}
	else {
		nNum = nNum - decPos;
		if(xTxt.value.indexOf("$", 0) == 0)
			 sDollarVal = xTxt.value.substr(1, (nNum + nCommas));
		else sDollarVal = xTxt.value.substr(0, (nNum + nCommas));
		if(sDollarVal.lastIndexOf("0", 0) == 0 ) {
		return false;
		} else if(sDollarVal.lastIndexOf(",", 0) == 0) {
		return false;
		} else if(sDollarVal.indexOf(",", (sDollarVal.length - 1)) == (sDollarVal.length - 1)) {
		return false;
		} else {
		bComma = false;
			for(i = 0; i < sDollarVal.length; i++) {
				x = sDollarVal.substr(i, 1);
				if(parseInt(x) >= 0 || parseInt(x) <= 9) {
				nNumCount = nNumCount + 1;
					if(nNumCount > 3) {
					return false;
					}
				} 
				else {
				if(nNumCount != 3 && bComma) {
					return false;
					}
					nNumCount = 0;
					bComma = true;
				}
			} 
			if(nNumCount != 3 && bComma) {
			return false;
			} 
		} 
	} 
return true;
}

function trim(str) {
   return str.replace(/^\s*|\s*$/g,"");
}
function writeValidation(msg,divName) {
	MM_findObj("div"+divName).innerHTML=msg;
}

function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}