function Validate(theForm) {
   if (Trim(theForm.Email.value) == "")
  {
    alert("Please enter your email address.");
    theForm.Email.focus();
    return (false);
  }

	var checkStr = theForm.Email.value;
	var ch = checkStr.indexOf('@');

	if (ch==0 || ch==-1) {
		alert("Please enter a valid email address.");
		theForm.Email.focus();
		return (false);
	}
	var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzƒŠŒŽšœžŸÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþ0123456789-@.-_'";
	var checkStr = theForm.Email.value;
	var allValid = true;
	for (i = 0;  i < checkStr.length;  i++) {
		ch = checkStr.charAt(i);
		for (j = 0;  j < checkOK.length;  j++)
			if (ch == checkOK.charAt(j))
				break;
				if (j == checkOK.length) {
					allValid = false;
					break;
				}
	}
	if (!allValid) {
		alert("Please enter only letter, digit and \"@.-_'\" characters in the \"Email\" field.");
		theForm.Email.focus();
		return (false);
	}
	 if ((theForm.ConfEmail.value) != (theForm.Email.value))
  {
    alert("Please Confirm your Email.");
    theForm.ConfEmail.focus();
    return (false);
  }
   if (Trim(theForm.FirstName.value) == "")
  {
    alert("Please enter your first name.");
    theForm.FirstName.focus();
    return (false);
  }
   if (Trim(theForm.Zip.value) == "")
  {
    alert("Please enter your zip code.");
    theForm.Zip.focus();
    return (false);
  }
  var checkOK = "0123456789";
	var checkStr = theForm.Zip.value;
	var allValid = true;
	for (i = 0;  i < checkStr.length;  i++) {
		ch = checkStr.charAt(i);
		for (j = 0;  j < checkOK.length;  j++)
			if (ch == checkOK.charAt(j))
				break;
				if (j == checkOK.length) {
					allValid = false;
					break;
				}
	}
	if (!allValid) {
		alert("Please enter only digit for the zip code.");
		theForm.Zip.focus();
		return (false);
	}
  
   if (Trim(theForm.boxCode.value )== "")   
      {
      alert("Please enter the secret code. The form will not be submitted unless the correct letters and digits are entered.  If you are having trouble viewing the code, you can refresh your Internet screen, and a new code will appear.");
      theForm.boxCode.focus();
      return (false);
      }
		return (true);
}