function validateThis() {
	//check loan type
	var ind = document.form1.loan_type.selectedIndex;
	var val = document.form1.loan_type.options[ind].value;
	if ((val == "Select") ||
	   ((val != "30") &&
	   (val != "15") &&
	   (val != "20") &&
	   (val != "723") &&
	   (val != "525") &&
	   (val != "5_1") &&
	   (val != "3_1") &&
	   (val != "30J") &&
	   (val != "15J") &&
	   (val != "5_1J") &&
	   (val != "3_1J"))) {
	  	alert("Select a Loan Type");
	  	//set back to initial state
	  	document.form1.loan_type.selectedIndex = 0;
	  	return false;
	 }
	
	
	//check rate
	var ind2 = document.form1.rate.selectedIndex;
	var val2 = document.form1.rate.options[ind2].value;
	if (val2 == "Select"){
	  	alert("Select a rate to track");
	  	//set back to initial state
	  	document.form1.rate.selectedIndex = 0;
	  	return false;
	 }
	//check for exact selections (no hacking)
	val2 = val2 * 1000;
	if ((val2 > 8000) || (val2 < 2000) || (val2 % 125)){
		alert("Select a rate from the list");
		//set back to initial state
	  	document.form1.rate.selectedIndex = 0;
	  	return false;
	 }
	 
	 
	 //check cancel after
	var ind3 = document.form1.cancel.selectedIndex;
	var val3 = document.form1.cancel.options[ind3].value;
	if ((val3 == "Select") ||
	   ((val3 != "1w") &&
	   (val3 != "2w") &&
	   (val3 != "1m") &&
	   (val3 != "3m") &&
	   (val3 != "6m") &&
	   (val3 != "1y") &&
	   (val3 != "Never"))) {
	  	alert("Select a 'Cancel After' period");
	  	//set back to initial state
	  	document.form1.cancel.selectedIndex = 0;
	  	return false;
	 }
	 
	//email verif
	var email = document.form1.email.value;
	//remove spaces
	email = (email.replace(/\s/g, ""));
	//do check 
	var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
    	//note- explaination of this expression is at:  http://www.breakingpar.com/bkp/home.nsf/Doc?OpenNavigator&U=87256B280015193F87256C40004CC8C6    Thanks guys.
    	if (re.test(email) == false) {
		alert("Email address is not valid.");
		return false;			
	}


	var program;
	if (val == "30") {program = "30 year fixed";}
	else if (val == "15") {program = "15 year fixed";}
	else if (val == "20") {program = "20 year fixed";}
	else if (val == "723") {program = "7 year balloon";}
	else if (val == "525") {program = "5 year balloon";}
	else if (val == "5_1") {program = "5 year ARM";}
	else if (val == "3_1") {program = "3 year ARM";}
	else if (val == "30J") {program = "30 year jumbo";}
	else if (val == "15J") {program = "15 year jumbo";}
	else if (val == "5_1J") {program = "5 year jumbo ARM";}
	else if (val == "3_1J") {program = "3 year jumbo ARM";}
	
	val2 = val2 / 1000;
	
	var cancel;
	if (val3 == "1w") {cancel = "We will stop tracking in 1 week";}
	else if (val3 == "2w") {cancel = "We will stop tracking in 2 weeks";}
	else if (val3 == "1m") {cancel = "We will stop tracking in 1 month";}
	else if (val3 == "3m") {cancel = "We will stop tracking in 3 months";}
	else if (val3 == "6m") {cancel = "We will stop tracking in 6 months";}
	else if (val3 == "1y") {cancel = "We will stop tracking in 1 year";}
	else if (val3 == "Never"){cancel = "";}
	
	
	//print alert request was submitted
	var message = "You will be notified when the "+program+" reaches "+val2+"%\nEmail will be sent to: "+email+"\n"+cancel;
	if (confirm(message)){
		return;
	}else {return false;}
	
	
		
}