//var usubsource = jQuery(".USUBSOURCE > optgroup");

		jQuery(".USUBSOURCETEMP").append(jQuery(".USUBSOURCE > optgroup"));
		
		jQuery(".USUBSOURCE > optgroup").remove();

		
		
		function setsource2(this1){
			var this1 = jQuery(this1)

			jQuery(".USUBSOURCE option[value!='0']").remove();

			
			//jQuery(".USUBSOURCE").append(jQuery(".USUBSOURCETEMP optgroup[label=\""+this1.val()+"\"]"));

			//jQuery(".USUBSOURCE").append();
			jQuery(".USUBSOURCETEMP optgroup[label=\""+this1.val()+"\"] > option").clone().appendTo(".USUBSOURCE");
			//console.log(jQuery(".USUBSOURCETEMP optgroup[label=\""+this1.val()+"\"] > option").clone());
			
			//jQuery("[label=\""+this1.val()+"\"]", usubsource).show();
			//jQuery("[label=\""+this1.val()+"\"] option", usubsource).show();
		
		}

		
		function setsource(this1){
			var toset = jQuery("#bUSOURCE");
			var select = jQuery(":selected", jQuery(this1));
			var selectpar = select.parent(); 

			if(selectpar.is("optgroup")){
				toset.val(selectpar.attr("label"));
			}else{
				toset.val(select.val());
			}
		}


		
		function validatethis(this1){

			var eles = jQuery("input,textarea,select",jQuery(this1))
			
			var valid=true;

			for(i=0; i<eles.length; i++){
				var ele=jQuery(eles[i]);
				var valid2=true;

				
				if(ele.hasClass("notEmpty") && !validate_notEmpty(ele)){
					valid=false;
					valid2=false;			
				}else if(ele.hasClass("number") && !validete_number(ele)){
					valid=false;
					valid2=false;
				}else if(ele.hasClass("valemail") && !validate_email(ele)){
					valid=false;
					valid2=false;
				}else if(ele.hasClass("notO") && !validate_notO(ele)){
					valid=false;
					valid2=false;
				}else if(ele.hasClass("startcap") && !validate_startcap(ele)){
					valid=false;
					valid2=false;
				}

				if(valid2==false){
					ele.css("border", "2px solid red");
				}else{
					ele.css("border", "2px solid #E2E2E2");
				}
			}

			if(!valid){
				jQuery(".validmessage").css("display", "block");
			}
			
			
			
			return valid;
		}

		function validate_email(this1){
			if(this1.val().match(/[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}/)){
				return true;
			}
			return false;
		}

		
		function validate_notEmpty(this1){

			if(this1.val()==""){

				return false;
			}
				
			return true;
		}

		function validete_number(this1){
			if(this1.val().match(/^[\d\+\(\)\s]*$/)){
				return true;
			}
			return false;
		}
		function validate_notO(this1){
			
			
			if(this1.val() == "0"){
				return false;
			}
			return true;
		}

		function validate_startcap(this1){
			if(this1.val().match(/^[A-Z]/)){
				return true;
			}
			return false;
		}
		

		
			function cleartext(this1){
				if(this1.value==this1.defaultValue){
					this1.value="";
				}
			}

			function cleartest2(this1){
				var fields = jQuery("input[type=text]",this1)
				for(var i=0; i<fields.length; i++){
					cleartext(fields[i]);
				}
			}

			//if validation faild, put back
			function puttextback2(this1){
				var fields = jQuery("input[type=text]",this1)
				for(var i=0; i<fields.length;i++){
					if(fields[i].value==""){
						fields[i].value=fields[i].defaultValue;
					}
				}
			}
			

			function wharedid(this1){
				if(jQuery(".USUBSOURCE", this1)[0].value == jQuery(".USUBSOURCE", this1)[0].defaultValue){
					alert("please select how you found us");
				}
			}
			

			function MM_findObj(n, d) {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;}

			
			var popup_bruchure_errors="";
			
			function MM_validateForm() {
				var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
				for (i=0; i<(args.length-2); i+=3) { 
					test=args[i+2]; val=MM_findObj(args[i]);
					if (val) { nm=val.name; if ((val=val.value)!="") {
						if (test.indexOf('isEmail')!=-1) {
							p=val.indexOf('@');
							if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
						} else if (test!='R') { 
							num = parseFloat(val);
							if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
							if (test.indexOf('inRange') != -1) {
								p=test.indexOf(':');
								min=test.substring(8,p);
								max=test.substring(p+1);
								if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';}
							}
						} else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; 
					}
				} if (errors) popup_bruchure_errors += 'The following error(s) occurred:\n'+errors+'\n';
				document.MM_returnValue = (errors == '');
			}

			function MM_showerrors(){
				if(popup_bruchure_errors!=""){
					alert(popup_bruchure_errors);
					return false;
				}else{
					return true;
				}

				
			}

