		var imgAlts = new Object;
		var imgSrcs = new Object;
		var imgLabels = new Object;
		var imgLinks = new Object;
		var imgLinkTitles = new Object;
		var imgDevs = new Object;
		var imgTypes = new Object;
		var imgNews = new Object;
		var imgOffers = new Object;
		
		function genericRequestSubmit(theMethod, theURL, theArgs){
			var ajaxRequest;  // The variable that makes Ajax possible!
			//isLoading();
			
			
			try{
				// Opera 8.0+, Firefox, Safari
				ajaxRequest = new XMLHttpRequest();
			} catch (e){
				// Internet Explorer Browsers
				try{
					ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
				} catch (e) {
					try{
						ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
					} catch (e){
						// Something went wrong
						alert("It appears that XMLHttp is not supported on your browser.");
						return false;
					}
				}
			}
			
			// Create a function that will receive data sent from the server
			ajaxRequest.onreadystatechange = function(){
				if(ajaxRequest.readyState == 4){
					var xmldoc = ajaxRequest.responseXML; 
					
					if(xmldoc) {
						finishedLoading();
						var rootNodeName = xmldoc.documentElement.nodeName;
						if(rootNodeName.match("public_country_details")) {
							//debugObj.group("COUNTRY DETAILS");
							signUpCountryObj.processRequest(xmldoc);
							//miscObj.processRequest(xmldoc);
							
							this.processed = 0;
							
							
							//debugObj.groupEnd();
						}
						//miscObj.initBanding();
					}
				}
			}
			
			// add random num so page don't cache!
    	var random_num = (Math.round((Math.random()*5999)+1));
			if(theArgs || theURL.match("userid")) {
					ajaxRequest.open(theMethod, theURL+theArgs+"&rdm="+random_num, true);
			}
			else {
					ajaxRequest.open(theMethod, theURL+"?rdm="+random_num, true);
			}
			ajaxRequest.send(null);
			
	}



			
queueRequests = new Array;
var timeOutID;

function finishedLoading() {

}

function addRequest(theSearch, theProcessMethod) {
		queueRequests.push(theSearch);
		setTimeout('processRequests()', 250);
}

function processRequests() {
  var theRequest = queueRequests.pop();
  if(theRequest) {
  	//alert("SEND: "+theRequest);
  	if(theRequest.length < 1800) {
  		genericRequest("GET", theRequest, "");
  	}
  	else {
  		genericRequest("POST", theRequest, "");
  	}
  	timeOutID = setTimeout('processRequests()', 100);
  }
  else {
  	if(timeOutID) {
  		clearTimeout(timeOutID);
  		timeoutID = "";
  	}
  }
  
}

function genericRequest(theMethod, theURL, theArgs) {
	genericRequestSubmit(theMethod, theURL, theArgs);
}