function XMLHTTP()
{
	var e;
	try {
		if(document.all) {
			this.xmlhttp = new ActiveXObject('MSXML2.XMLHTTP');
		} else {
			this.xmlhttp = new XMLHttpRequest();
		}
	} catch(e) {
		return false;
	}

	this.open = function(target) {
		var e;
		try {
			this.xmlhttp.open('POST', target, false);
			this.boundary = '----' + Math.ceil(Math.random() * 1000000000);
			this.xmlhttp.setRequestHeader('Content-Type', 'multipart/form-data; boundary=' + this.boundary);
			return true;
		} catch(e) {
			return false;
		}
	}

	this.send = function(posts) {
		var e;
		try {
			var i, senddata = '';
			if(posts) {
				for(var i in posts) {
					senddata += '--' + this.boundary + "\r\n";
					senddata += 'Content-Disposition: form-data; name="' + i + "\"\r\n";
					senddata += "\r\n";
					senddata += posts[i]+ "\r\n";
				}
			}
			senddata += '--' + this.boundary + "--\r\n";
			this.xmlhttp.send(senddata);
			return true;
		} catch(e) {
			return false;
		}
	}

	this.getText = function() {
		return this.xmlhttp.responseText;
	}
	this.getValue = function(key) {
		return this.xmlhttp.responseXML.getElementsByTagName(key)[0].firstChild.data;
	}
	return true;
}
