var Request={
send:function(url,method,callback,data,urlencoded){
	var req
	if(window.XMLHttpRequest){
		req=new XMLHttpRequest()
	}else if(window.ActiveXObject){
		req=new ActiveXObject("Microsoft.XMLHTTP")
	}
	req.onreadystatechange=function(){
		if (req.readyState==4){
			if (req.status < 400){
				(method=="POST") ? callback(req):callback(req,data)
			}else{
				alert("There was a problem loading data :\n" + req.status+ "/" + req.statusText);
			}
		}
	}
	req.open(method,url,true)
	if (method=="POST"){
		if (urlencoded)req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded')
		req.send(data)
	}else{
		req.send(null)
	}
	return req
},
sendRawPOST:function(url,data,callback){Request.send(url,"POST",callback,data,false)},
sendPOST:function(url,data,callback){Request.send(url,"POST",callback,data,true)},
sendGET:function(url,callback,args){return Request.send(url,"GET",callback,args)}
}