  
	var errorList = '';
	var errorId = '';

	/*
	function showPackage ( divId )
	{
	   if (document.getElementById('check'+divId).checked )
			document.getElementById(divId+'Option').style.display='block';
	   else
			 document.getElementById(divId+'Option').style.display='none';
	}
  	*/
	function validateUserCall ()
   	{
    	trimAll();
		if( !isRequired(document.getElementById('departmentName').value) )
		{
			errorList += '- '+E_JS_VALIDDEPARTMENTNAME+'\n';
			errorId += ',busi';    
		}
		
/*    	if( !isUserName(document.all.defaultuser.value) )
		{
			errorList += '- '+E_JS_VALIDUSER+'.'+E_JS_VALIDREGX+'\n';
			errorId += ',busi';    
		}
*/
	}
   function validateStep1 ()
   {
    	trimAll();
		if( !isRequired(document.all.business.value) )
		{
			errorList += '- '+E_JS_COMPANYNAME+'.\n';
			errorId += ',busi';    
		}
		/*		
		else if(rpcSvr.CompanyNameExist(document.all.business.value,"ALL"))
		//else if(rpcSvr.CompanyDomainExist(document.all.domainText.value,"subdomain"))
		{
			errorList += '- Company with this business name already exist \n';
			errorId += ',busi';
		}	
		*/			


	   if ( !document.all.oldCust[0].checked && !document.all.oldCust[1].checked) {
		   errorList += '- '+E_JS_EXISTINGCUSTOMER+'\n';
		  errorId += ',oldCustomer'; }


	 //  alert(document.all.oldCust[0].checked + '|' +  document.all.oldCust[1].checked);
	   if ( document.all.oldCust[0].checked )
	   {
		  validateFHuser();
		  //userAuthentication();
	   }


	   if (!document.signinform.packages[0].checked && !document.signinform.packages[1].checked) {
		  errorList += '- '+E_JS_SELECT_PACKAGE+'\n';
		  errorId += ',packageText'; }

/*
	   if (!document.signinform.expiry[0].checked && !document.signinform.expiry[1].checked && !document.signinform.expiry[2].checked && !document.signinform.packages[0].checked && !document.signinform.packages[1].checked)
		{
		  errorList += '- '+E_JS_SELECT_TIME+'\n';
		  errorId += ',expiryText';
		}
*/		if(document.getElementById('infiniLive'))
		if(!document.getElementById('infiniLive').value)
		{
			if(document.signinform.packages[1].checked && document.getElementById("mailingAddress").value=="")
			{
			  errorList += '- '+E_JS_MAIL_ADDRESS+'\n';
			  errorId += ',mailAddress';
			}
			
			if(document.signinform.packages[1].checked && document.getElementById("mailingCity").value=="")
			{
			  errorList += '- '+E_JS_MAIL_CITY+'\n';
			  errorId += ',mailAddress';
			}
		}
   }


   function validateFHuser()
   {
	   if ( !isAlphaNumeric(document.all.FHid.value) )
	   {
			 errorList += '- '+E_JS_VALIDUSERID+'\n';
			 errorId += ',oldID';
	   }
	   if ( !isRequired(document.all.FHpw.value) && document.all.cuid.value == "" )
	   {
			 errorList += '-'+E_JS_VALIDPASSWORD+'\n';
			 errorId += ',oldpw';
	   }
   }


   function userAuthentication ()
   {
	   if ( isDigit (document.all.FHid.value) &&  isRequired(document.all.FHpw.value) )
	   {
			 result = rpcSvr.AuthenticateUser(document.all.FHid.value,document.all.FHpw.value);
			 if ( ( result == '-1' ) || ( result == '') )
			 {
					 errorList += '- '+E_JS_VALIDUSERIDPASS+' \n';
					 errorId += ',oldpw,oldID';
			 }
			 else
			 {
					 document.signinform.id.value = result;
//					 document.getElementById('fhCustomer').style.display = 'block';
//					 document.getElementById('button').style.display = 'none';
			 }
	   }


   }


   function validateContactInfo()
   {
		trimAll();
		if( !isRequired(document.all.contactName.value) ){
			errorList += '- '+E_JS_VALIDCONTACT+'.\n';
			errorId += ',contName';    }
		if( document.all.custPw.value != document.all.reCustPw.value) {
			errorList += '- '+E_JS_SAMEPASSWORD+'.\n';
			errorId += ',passwd,repw';    }
		if( !isPassword ( document.all.custPw.value) ){
			errorList += '-'+E_JS_VALIDPASSWORD+'.\n';
			errorId += ',passwd,repw';    }
		if( !isValidEmail(document.all.custEmail.value) ){
			errorList += '-'+E_JS_VALIDEMAIL+'.\n';
			errorId += ',email';    }
		if( !isAscii(document.all.custDesc.value) ){
			errorList += '- '+E_JS_SPECIALCHAR+'.\n';
			errorId += ',email';    }
   }


   function validateUserInfo()
   {
		trimAll();
/*		if( !isAlphaSpace(document.all.defaultuser.value) ){
			errorList += '- '+E_JS_VALIDUSER+'.\n';
			errorId += ',contName';    }
*/	}
   function validatePaymentOption()
   {
		trimAll();
		var card = document.all.cardtype.value;
		if( document.all.cardtype.value == "none" ) {
                 errorList += '- '+E_JS_SELECT_CARD+'.\n';
                 errorId += ',paymentType';    }
				 
		if( ! isAlphaSpace ( document.all.cardholdername.value ) ){
                 errorList += '- '+E_JS_HOLDERNAME+'.\n';
                 errorId += ',paymentBy';    }


		if( ! isDigit ( document.all.cardnumber.value ) ){
                 errorList += '- '+E_JS_VALIDCARDNUMBER+'.\n';
                 errorId += ',paymentNo';    }


		if (card == "Debit Card")
		{
			if( ! isDigit ( document.all.securitycode.value ) ){
					 errorList += '- '+E_JS_VALIDSECCODE+'.\n';
					 errorId += ',securityCode';    }
		}
		else if ( card == "AMEX Card" )
		{
			if( document.all.securitycode.value != '' && document.all.securitycode.value.length != 4 ){
				errorList += '- '+E_JS_VALIDSECCODE+'.\n';
				errorId += ',securityCode';    }
		}
		else
		{
			if( document.all.securitycode.value != '' && document.all.securitycode.value.length != 3 ){
				errorList += '- '+E_JS_VALIDSECCODE+'.\n';
				errorId += ',securityCode';    }
		}		


		if( document.all.cardaddress.value == "" ){
			errorList += '- '+E_JS_VALIDCARDADDRESS+'.\n';
			errorId += ',paymentAddress';    }
			
		if ( card == "Debit Card" )
		{
			if( ! isDigit ( document.all.issueno.value ) ){
				errorList += '- '+E_JS_VALIDISSUENUM+'.\n';
				errorId += ',paymentIssue';    }
				
			validateDateFormat ( 'exp' )  ;
		}
		else if ( card == "AMEX Card" )
		{
			validateDateFormat ( 'start' )  ;
			validateDateFormat ( 'exp' )  ;		
		}
		else
		{
			validateDateFormat ( 'exp' )  ;
		}
   }


  	function validateDateFormat ( period )
	{
/*  if ( document.getElementById ( period+'Day' ).value == "none" ) {
    errorList += '- Please select '+period+' day.\n';
    errorId += ',card'+ period;    }
*/
    if ( document.getElementById ( period+'Mon' ).value == "none" ) {
    errorList += '- '+E_JS_SELECT+' '+period+' '+E_JS_MONTH+'.\n';
    errorId += ',card'+ period;    }


    if ( document.getElementById ( period+'Year' ).value == "none" ) {
    errorList += '- '+E_JS_SELECT+' '+period+' '+E_JS_YEAR+'.\n';
    errorId += ',card'+ period;    }
	}
	
   function showErrors( )
	{
		var msg = "";


		msg  = "______________________________________________________\n\n";
		msg += E_JS_ERRMSG+".\n";
		msg += E_JS_ERRMSG1+".\n";
		msg += "______________________________________________________\n\n";


		msg += errorList ;
		alert(msg);
		// markError();
		errorList = '' ;
	}


	function markError()
	{
		 ids = errorId.split(',');
		 for (var i = 1; i < ids.length; i++ )
		 {
			 document.getElementById(ids[i]).style.color='#C03434';
		 }
	}


	function unmarkError()
	{
		 ids = errorId.split(',');
		 for (var i = 1; i < ids.length; i++ )
		 {
			 document.getElementById( ids[i] ).style.color='black';
		 }
		 errorId = '' ;
	}


	function UpdateNewSubdomain()
	{
		var r=1;
		while(r)
		{
			var x = (Math.floor(Math.random() * 99999999)+1).toString();
			document.all.domainText.value=x;
			
			if(!rpcSvr.CompanyDomainExist(document.all.domainText.value,"subdomain"))
			{
				r=0;
			}		
		}
	}
	
	function validateDomain()
	{
		if(!isAlphaNumeric(document.all.domainText.value))
		{
			errorList += '- Please give valid Sub-Domain\n';
			errorId += ',domainID';
			return false;
		}
		else if(errorList == "")
		{
			if(rpcSvr.CompanyDomainExist(document.all.domainText.value,"subdomain"))
			{
				errorList += '- Sub-Domain already exists\n';
				errorId += ',domainID';
				return false;
			}
		}
		
		return true;
	}
	var isCompName = false;
	var isCustomerExists = false;
   	function CompanyNameValidationCB(response)
	{
		//alert(response.responseText);
		if(response.responseText == "false")
			alert("Sorry! the company name already exist. Please try with different Company Name.");
		else 
			isCompName = true;
		return isCompName;
    }	
	function OldCustomerValidationCB(response)
	{
		//alert("res::"+response.responseText);
		//var res = eval(response.responseText);
		var res = JSON.decode(response.responseText);
		
		if(res['ERRORCODE'] != "0")
		{
			alert("Invalid Customer ID or Password provided.");	
			isCustomerExists = false;
		}	
		else if(res['ERRORCODE'] == "0")
			isCustomerExists = true;
		else
			isCustomerExists = false;	
		return isCustomerExists;
	}
   function gotoNextStep ( step )
   {
		//alert(step);
   		//UpdateHiddenVars();
   		var oldCuid = document.getElementById('FHid');
   		var oldPass = document.getElementById('FHpw');

	   if (step == '1')
	   {
			if(document.getElementById('businessName'))
			{
				var companyname = document.getElementById('businessName').value;
				
				var url = '/registration/signup.php?isajaxcall=1&businessname='+companyname;
				
				var myAjax = new Ajax.Request( url,
					{ asynchronous: false, method: 'post', onSuccess: CompanyNameValidationCB , onError: function(response){alert("Failure:"+response.responseText);} });

				if(!isCompName)
					return isCompName;
			}
			
			if(oldCuid.value != "")
			{
				if(oldPass.value != "")
				{
					var url = '/registration/signup.php?isajaxcall=2&oldcuid='+oldCuid.value+'&oldpass='+oldPass.value;	
					var myAjax = new Ajax.Request( url,
						{ asynchronous: false, method: 'post', onSuccess: OldCustomerValidationCB , onError: function(response){} });
					
					//if(!isCustomerExists)
					//	return isCustomerExists;
				}
			}
				
			if(document.all.usertype.value=="2")
				validateUserCall();
			else
				validateStep1();
				
			/*if(document.getElementById("noservice").checked || document.getElementById("voiponly").checked)
			{
				document.all.ordercheckbox.checked = true;
				document.all.profileButton.value= T_JS_FINISH;
				document.all.profileButton.onclick=function(){gotoNextStep('3');};
			}
			else*/
			{	
				// document.all.ordercheckbox.checked = false;
				document.all.profileButton.value= T_JS_CONTINUES;
				document.all.profileButton.onclick=function(){gotoNextStep('2');};
			}				
				
			//validateDomain();
		
			if ( errorList != '')
			{
				showErrors();
                //document.all.companyButton.disabled = false ;
				return false;
			}
			
			/*
			if (!confirm('Are you sure you want to continue with following services?\n- IO 500\n- Mail'))
			{
				return false;
			}
			*/			
			
			// udpate prod price div
			UpdateProductPrices();
            if ( document.all.oldCust[0].checked )
				showStep ( 1, 3 )
            else
				showStep ( 1, 2 )
		}


		if ( step == '2' )
		{


			//document.all.profileButton.disabled = true ;
			// unmarkError();
			validateContactInfo () ;
			if ( errorList != '' )
			{
				showErrors();
				//document.all.profileButton.disabled = false ;
				return false;
			}

			showStep ( 2, 3 )
		}
        if ( step == '3' )
        {
          //document.all.payButton.disabled = true ;
		 // alert(document.all.profileButton.value);
		  	if(document.all.submitbtn.value==T_JS_FINISH)
		  	{
		  		if(document.all.usertype.value=="1" || document.all.usertype.value=="")
		  			validateStep1();
				else
					validateUserCall();
		  	}
			else if(document.all.profileButton.value==T_JS_FINISH)
				validateContactInfo() ;				
			
			if ( errorList != '' )
			{
				document.all.payButton.disabled = false ;
				showErrors();
				return false;
			}				


			if ( !document.all.ordercheckbox.checked )
			{
			
				validatePaymentOption ();


				if ( errorList != '' )
				{
					document.all.payButton.disabled = false ;
					showErrors();
					return false;
				}
				
				document.all.backButton.disabled = true ;
				document.all.payButton.disabled = true ;
				document.all.signinform.submit();
			}
			else
			{
				document.all.backButton.disabled = true ;
				document.all.payButton.disabled = true ;
				document.all.signinform.submit();
			}
        }
	}

	function UpdateProductPrices()
	{
		//debugger;
//		alert('val:'+document.forms[0].packages.value);
//		alert('len:'+document.forms[0].packages.length);
		var packLocationId = '';
		var packId = '';
		var prodLocationId = '';
		var prodId = '';
		
		var selected = document.forms['signinform'].packages;	
		for(var x=0; x<selected.length; x++)
		{
			if (selected[x].checked)
			{
				if (selected[x].value == 1)
				{
					var packLocationId = $('locationid500').value;
					var packId = $('entityid500').value;
				}
				else if (selected[x].value == 2)
				{
					var prodLocationId = $('locationidMail').value;
					var prodId = $('entityidMail').value;
				}
				else if (selected[x].value == 3)
				{
					var packLocationId = $('locationid500').value;
					var packId = $('entityid500').value;
				}
			}
		}
		var url = '/registration/pricelist.php';
		var pars = 'isajaxcall=1&packId='+packId+'&packLocationId='+packLocationId+'&prodId='+prodId+'&prodLocationId='+prodLocationId;
		//alert(pars);
		var myAjax = new Ajax.Request( url,
		{ method: 'get', parameters: pars, onFailure: function(){} , onSuccess: UpdateProductPricesCallback});
	}
	
	function UpdateProductPricesCallback(r)
	{
//		alert(r.responseText);
		var o = eval(r.responseText);
		var t = $('serviceTableBody');

//		alert(t.rows);
		
		while(t.rows.length)
		{
//			alert(t.rows.length);
			t.deleteRow();
		}
//		alert(o.length);
		var total=0;
		for (i=0;i<o.length;i++)
		{
			var trProd = document.createElement('<tr group="gr_card" valign=top bgcolor="#F0F5FB">');
			var tdProd = document.createElement('<td bgcolor="#F3F8FC" class="text">');
	        tdProd.innerHTML = o[i].name;
	
			var tdPrice = document.createElement('<td width="34%" bgcolor="#F3F8FC" class="text">');
			var p = parseInt(o[i].price)+parseInt(o[i].setup);
			total += p;
			
	        tdPrice.innerHTML = '&pound; '+p;
					
			trProd.appendChild(tdProd);
			trProd.appendChild(tdPrice);
			
//			alert(trProd.innerHTML);
			
			t.appendChild(trProd);
//			alert(t.innerHTML);
		}
		
		var trProd = document.createElement('<tr group="gr_card" height=30 bgcolor="#F0F5FB">');
		var tdProd = document.createElement('<td bgcolor="#F3F8FC" class="text">');
        tdProd.innerHTML = "Total";

		var tdPrice = document.createElement('<td width="34%" bgcolor="#F3F8FC" class="text">');
        tdPrice.innerHTML = '<b>&pound; '+total+'</b>';
				
		trProd.appendChild(tdProd);
		trProd.appendChild(tdPrice);
		t.appendChild(trProd);
	}
	
    function showStep ( thisStep, nextStep )
    {
       
    // alert("in Show Step :  "  + thisStep + "  ,  NextStep :"+ nextStep);
	  
      if (document.getElementById("trackURLflag").value =="1")
      	getTrackURL(nextStep,'');
	  document.getElementById( "divStep" + thisStep ).style.display = "none";
	  document.getElementById( "divStep" + nextStep ).style.display = "block";
      
            
      
    }


    function payByCheck( flag )
    {
		if(flag)
			 ShowGroup("payTable","gr_card",false);
		else
			 ShowGroup("payTable","gr_card");
			 
		document.all.cardtype.disabled = flag;
		document.all.cardholdername.disabled = flag;
		document.all.cardnumber.disabled = flag;
		document.all.cardaddress.disabled = flag;
		document.all.securitycode.disabled = flag;
		document.all.issueno.disabled = flag ;
		cardDateStatus ( 'start', flag )  ;
		// cardDateStatus ( 'end', flag )  ;
		cardDateStatus ( 'exp', flag )  ;
    }


    function cardDetail( option )
    {
		if ( option == "Debit Card" )
		{
			document.getElementById("securitycode").maxLength = 3;
			document.getElementById("tr_issueno").style.display = "block";
			cardDateStatus ( 'start', true ) ;
			cardDateStatus ( 'exp', false )  ;
		}
		else if ( option == "AMEX Card" )
		{
			document.getElementById("securitycode").maxLength = 4;
			document.getElementById("tr_issueno").style.display = "none";
			cardDateStatus ( 'start', false )  ;
			cardDateStatus ( 'exp', false )  ;
		}
		else
		{
			document.getElementById("securitycode").maxLength = 3;
			document.getElementById("tr_issueno").style.display = "none";
			cardDateStatus ( 'start', true )  ;
			cardDateStatus ( 'exp', false )  ;
		}
    }


    function cardDateStatus ( period, flag )
    {
		document.getElementById ( 'tr_'+period+'date' ).style.display = (flag)?"none":"block";
		/*
		document.getElementById ( period+'Day' ).disabled = flag ;
        document.getElementById ( period+'Mon' ).disabled = flag ;
        document.getElementById ( period+'year' ).disabled = flag ;
		*/
    }
    
    
    
    
 //----------------------------  Landing Page JS Function  ---------------------------//
    
	function getTrackURL(step,extraInfo)
	{
		var trackId = document.getElementById('trackid').value;
		var o = new Array(trackId,step,extraInfo);
		o = JSON.encode(o);
		var url = "/index.php?object=trackcustomer&function=GetUserInfo&page=&isajaxcall=1";
	
		var pars = 'param='+o
		var myAjax = new Ajax.Request( url,
			{ method: 'post', parameters: pars, onFailure: reportError , onSuccess: shareTaskRightsCallback});		
	
	}
	function reportError(request)
	{
			alert('an UNKWOWN error');
	}
				
	function shareTaskRightsCallback(response)
	{
		return;
	}
	function SwitchCustomer(val)
	{
		
	
		if(val!='show')
		{
			document.all.fhdiv.style.display='none';
			document.all.oldCust.checked=false;
	
				/*document.all.submitbtn.value='<?=T_CONTINUES?>';
				document.all.ordercheckbox.checked = false;
				document.all.submitbtn.onclick=function(){gotoNextStep('1');};*/
			
		}
		else
		{
			document.all.fhdiv.style.display='block';
			document.all.oldCust.checked=true;
	
		
				/*document.all.submitbtn.value='<?=T_CONTINUES?>';
				document.all.ordercheckbox.checked = false;
				document.all.submitbtn.onclick=function(){gotoNextStep('1');};*/
			
		}
	}
	var entity_type;
	form = document.forms[0];
	
	
	var selected_id;
	function ShowCities(s_id,check)
	{
		//debugger;
		if (check == undefined)
			check = true;
			
		selected_id = s_id;
	 
		var duration;
		var country;
		var servicetype;
		
		if (selected_id =="1") 
		{	
			entity_type = 1;
			servicetype = "";
			packagetype = "1";
			country = "usercountry";
			duration = document.getElementById('expiryIo500').value;

		}	
		else if(selected_id =="2") 
		{
			entity_type = 2;
			servicetype = 4;
			packagetype = "1";
			country = "mailcountry";
			duration = document.getElementById('expiryMail').value;
		}
		else if(selected_id =="3") 
		{
			entity_type = 1;
			servicetype = "";
			packagetype = "2";
			country = "usercountry";
			duration = document.getElementById('expiryIo500').value;
		}
		var uc = document.getElementById(""+country);
		if(uc.all.length > 0)
		{
			var countryname = uc.options[uc.selectedIndex].value;
			try
			{
				x_GetAllCities(countryname,servicetype,entity_type,duration,packagetype,cb_populatecities1);
			}
			catch(e)
			{
				alert(e.message);	
			}
		}
	
	}
	
	function cb_populatecities1(citiesData)
	{
	//	alert();
		//debugger;
		if(citiesData['count'] <= 0)
		{
			var exp = (selected_id ==2) ? "expiryMail" : "expiryIo500";
			alert("Sorry! Currently the service is inactive with selected duration. ");
			document.getElementById(exp).options[2].selected=true ;
			ShowCities(selected_id);
			return;
		}
		if(selected_id == 2)
		{	
			var country = "mailcountry";	
			var city = "mailcity";	
			var min_duration = citiesData[0]["min_duration"];
			expiry = document.getElementById('expiryMail').options;
		}
		else if(selected_id == 3)
		{
			var country = "usercountry";	
			var city = "usercity";	
			var min_duration = 3;
			expiry = document.getElementById('expiryIo500').options;
		}
		else
		{	
			var country = "usercountry";	
			var city = "usercity";	
			var min_duration = 3;
			expiry = document.getElementById('expiryIo500').options;
		}
	
		var usercountry = document.getElementById(""+country).value;
		var opts = document.getElementById(""+city).options;
		var city = document.getElementById(""+city);
		
		opts.length = 0;
		
		var arr = new Array();
	
		for(var i=0; i<citiesData["count"]; i++)
		{
			
			arr[i] = document.createElement("option");
			arr[i].value = citiesData[i]["city"];
			arr[i].setAttribute("pid",citiesData[i]["id"]);
			arr[i].setAttribute("locationid",citiesData[i]["location_id"]);
			arr[i].setAttribute("period",citiesData[i]["duration"]);
			
			arr[i].innerHTML = citiesData[i]["city"]
			if (citiesData[i]["city_code"] && selected_id != 2)
				arr[i].innerHTML += " (" + citiesData[i]["city_code"] + ")";
				
			arr[i].id = "city_"+citiesData[0]["type"];
			
			city.appendChild(arr[i]);
		}
		
		city.style.display= (usercountry!='UNITED KINGDOM' && citiesData["count"]>0)?"block":"none";
		
		var lastIndex = expiry.options.selectedIndex;
	
		expiry.length = 0;
	
		switch(parseInt(min_duration))
		{
			case 3:
			expiry.options[expiry.options.length] = new Option("3 months",3);
	
			case 6:
			expiry.options[expiry.options.length] = new Option("6 months",6);
			
			case 12:
			expiry.options[expiry.options.length] = new Option("12 months",12);
		}
		
		if (expiry.options[lastIndex])
			expiry.options[lastIndex].selected = true;
		else
			expiry.options[expiry.options.length-1].selected = true;	
	
		UpdateHiddenVars();
	}
	
	
		function showPeriodTR()
		{
			
			var elems;
			var nosrvradio;
			elems = document.forms[0].elements;
		
			
		   	for(var i=0;i<elems.length;i++)
			{
			if(elems[i].type=="radio")
			{
				if(elems[i].getAttribute && elems[i].getAttribute("group")=="package")
			{
			   /* if (nosrvradio.checked || voipradio.checked)
			{
			   elems[i].checked=false;
				elems[i].disabled=true;
			}
			else*/
				{
					elems[i].disabled=false;
					elems[i].checked=true;
				}
			}
			}
		}
		
		/*var cust=document.getElementById('custRadio');
		if(cust.checked)
		{
			document.all.ordercheckbox.checked = true;
			document.all.submitbtn.value= '<?=T_FINISH?>';
			document.all.submitbtn.onclick=function(){gotoNextStep('3');};
		}
		else*/
		{
			document.all.ordercheckbox.checked = false;
			document.all.submitbtn.value= 'Continue';
			document.all.submitbtn.onclick=function(){gotoNextStep('1');};
		}
		

			var val ='';
			if(document.all.packages[0].checked==true)
				val=1;
			else
				val=2;
			ShowCities(val);
		}
    
  

  
   
//--------------------------- End of LandingPage JS ---------------------------------//
    
    
    
    
    
    
    
    
    
    
