if (!String.prototype.trim) {
	String.prototype.trim = function() {
		var value = this.toString();
		if(value == null)
			return null;
		while(value.indexOf(" ") == 0 
			|| value.indexOf("\t") == 0
			|| value.indexOf("\r") == 0
			|| value.indexOf("\n") == 0)
			value = value.substring(1);
		while(value.length != 0 &&
			(value.lastIndexOf(" ") == value.length - 1 
			|| value.lastIndexOf("\t") == value.length - 1
			|| value.lastIndexOf("\r") == value.length - 1
			|| value.lastIndexOf("\n") == value.length - 1))
			value = value.substring(0,value.length - 1);	
		return value;
	}
}
if (!String.prototype.replaceAll) {
	String.prototype.replaceAll = function(regex, replacement) {
		var value = this.toString();
		if(value == null)
			return null;
		if(typeof(regex) == "function" || typeof(regex) == "object") {
			for(var matcher = regex.exec(value);
				matcher != null;
				matcher = regex.exec(value))
			value = value.replace(matcher[0],replacement);
		}
		else {
			while(value.indexOf(regex) > -1)
				value = value.replace(regex, replacement);
		}
		return value;
	}
}