/* Simple AJAX Code-Kit (SACK) v1.6.1 */
/* 2005 Gregory Wild-Smith */
/* www.twilightuniverse.com */
/* Software licenced under a modified X11 licence,
   see documentation or authors website for more details */

function sack(file) {
	this.xmlhttp = null;

	this.resetData = function() {
		this.method = "POST";
  		this.queryStringSeparator = "?";
		this.argumentSeparator = "&";
		this.URLString = "";
		this.encodeURIString = true;
  		this.execute = false;
  		this.element = null;
		this.elementObj = null;
		this.requestFile = file;
		this.vars = new Object();
		this.responseStatus = new Array(2);
  	};

	this.resetFunctions = function() {
  		this.onLoading = function() { };
  		this.onLoaded = function() { };
  		this.onInteractive = function() { };
  		this.onCompletion = function() { };
  		this.onError = function() { };
		this.onFail = function() { };
	};

	this.reset = function() {
		this.resetFunctions();
		this.resetData();
	};

	this.createAJAX = function() {
		try {
			this.xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e1) {
			try {
				this.xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e2) {
				this.xmlhttp = null;
			}
		}

		if (! this.xmlhttp) {
			if (typeof XMLHttpRequest != "undefined") {
				this.xmlhttp = new XMLHttpRequest();
			} else {
				this.failed = true;
			}
		}
	};

	this.setVar = function(name, value){
		this.vars[name] = Array(value, false);
	};

	this.encVar = function(name, value, returnvars) {
		//alert(value+'='+URLEncode(value));
		if (true == returnvars) {
			return Array(encodeURIComponent(name), encodeURIComponent(value));
		} else {
			this.vars[name] = Array(Xencode(value), true);
			//this.vars[name] = Array(URLEncode(value), true);
			//this.vars[encodeURIComponent(name)] = Array(encodeURIComponent(value), true);
		}
		
		
			
		/*
		if (true == returnvars) {
			return Array(encodeURIComponent(name), encodeURIComponent(value));
		} else {
			this.vars[encodeURIComponent(name)] = Array(encodeURIComponent(value), true);
		}
		*/
	
	}

	this.processURLString = function(string, encode) {
		encoded = encodeURIComponent(this.argumentSeparator);
		regexp = new RegExp(this.argumentSeparator + "|" + encoded);
		varArray = string.split(regexp);
		for (i = 0; i < varArray.length; i++){
			urlVars = varArray[i].split("=");
			if (true == encode){
				this.encVar(urlVars[0], urlVars[1]);
			} else {
				this.setVar(urlVars[0], urlVars[1]);
			}
		}
	}

	this.createURLString = function(urlstring) {
	
		if (urlstring) {
			if (this.URLString.length) {
				this.URLString += this.argumentSeparator + urlstring;
			} else {
				this.URLString = urlstring;
			}
		}
		
		if (this.encodeURIString && this.URLString.length) {
			this.processURLString(this.URLString, true);
		}
		
		// prevents caching of URLString
		this.setVar("rndval", new Date().getTime());
		urlstringtemp = new Array();
		for (key in this.vars) {
			if (false == this.vars[key][1] && true == this.encodeURIString) {
				encoded = this.encVar(key, this.vars[key][0], true);
				delete this.vars[key];
				this.vars[encoded[0]] = Array(encoded[1], true);
				key = encoded[0];
			}
			urlstringtemp[urlstringtemp.length] = key + "=" + this.vars[key][0];
		}
		
		if (urlstring){
			this.URLString += this.argumentSeparator + urlstringtemp.join(this.argumentSeparator);
		} else {
			this.URLString += urlstringtemp.join(this.argumentSeparator);
		}
	}

	this.runResponse = function() {
		eval(this.response);
	}

	this.runAJAX = function(urlstring) {
		if (this.failed) {
			this.onFail();
		} else {
			this.createURLString(urlstring);
			if (this.element) {
				this.elementObj = document.getElementById(this.element);
			}
			if (this.xmlhttp) {
				var self = this;
				if (this.method == "GET") {
					totalurlstring = this.requestFile + this.queryStringSeparator + this.URLString;
					this.xmlhttp.open(this.method, totalurlstring, true);
				} else {
					this.xmlhttp.open(this.method, this.requestFile, true);
					try {
						this.xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded")
					} catch (e) { }
				}

				this.xmlhttp.onreadystatechange = function() {
					switch (self.xmlhttp.readyState) {
						case 1:
							self.onLoading();
							break;
						case 2:
							self.onLoaded();
							break;
						case 3:
							self.onInteractive();
							break;
						case 4:
							self.response = self.xmlhttp.responseText;
							self.responseXML = self.xmlhttp.responseXML;
							self.responseStatus[0] = self.xmlhttp.status;
							self.responseStatus[1] = self.xmlhttp.statusText;

							if (self.execute) {
								self.runResponse();
							}

							if (self.elementObj) {
								elemNodeName = self.elementObj.nodeName;
								elemNodeName.toLowerCase();
								if (elemNodeName == "input"
								|| elemNodeName == "select"
								|| elemNodeName == "option"
								|| elemNodeName == "textarea") {
									self.elementObj.value = self.response;
								} else {
									self.elementObj.innerHTML = self.response;
								}
							}
							if (self.responseStatus[0] == "200") {
								self.onCompletion();
							} else {
								alert('Erro ao receber dados do Servidor.\nSe o problema persistir, entre em contacto com o suporte tcnico da Expertmedia.');
								self.onError();
							}
							/* These lines were added by Alf Magne Kalleland ref. info on the sack home page. It prevents memory leakage in IE */
							self.URLString = "";
							delete self.xmlhttp['onreadystatechange'];
							self.xmlhttp=null;
							self.responseStatus=null;
							self.response=null;
							self.responseXML=null;
							
							break;
					}
				};
				this.xmlhttp.send(this.URLString);
			}
		}
	};

	this.reset();
	this.createAJAX();
}

function URLEncode(plaintext)
{
	var SAFECHARS = "0123456789" +					// Numeric
					"ABCDEFGHIJKLMNOPQRSTUVWXYZ" +	// Alphabetic
					"abcdefghijklmnopqrstuvwxyz" +
					"-_.!~*'()";					// RFC2396 Mark characters
	var HEX = "0123456789ABCDEF";
	var encoded = "";
	for (var i = 0; i < plaintext.length; i++ ) {
		var ch = plaintext.charAt(i);
	    if (ch == " ") {
		    encoded += "+";				// x-www-urlencoded, rather than %20
		} else if (SAFECHARS.indexOf(ch) != -1) {
		    encoded += ch;
		} else {
		    var charCode = ch.charCodeAt(0);
			if (charCode > 255) {
			    alert( "Unicode Character '" 
                        + ch 
                        + "' cannot be encoded using standard URL encoding.\n" +
				          "(URL encoding only supports 8-bit characters.)\n" +
						  "A space (+) will be substituted." );
				encoded += "+";
			} else {
				encoded += "%";
				encoded += HEX.charAt((charCode >> 4) & 0xF);
				encoded += HEX.charAt(charCode & 0xF);
			}
		}
	} // for
	return encoded;
};

function URLDecode(encoded)
{
   var HEXCHARS = "0123456789ABCDEFabcdef"; 
   var plaintext = "";
   var i = 0;
   while (i < encoded.length) {
       var ch = encoded.charAt(i);
	   if (ch == "+") {
	       plaintext += " ";
		   i++;
	   } else if (ch == "%") {
			if (i < (encoded.length-2) 
					&& HEXCHARS.indexOf(encoded.charAt(i+1)) != -1 
					&& HEXCHARS.indexOf(encoded.charAt(i+2)) != -1 ) {
				plaintext += unescape( encoded.substr(i,3) );
				i += 3;
			} else {
				alert( 'Bad escape combination near ...' + encoded.substr(i) );
				plaintext += "%[ERROR]";
				i++;
			}
		} else {
		   plaintext += ch;
		   i++;
		}
	} // while
   return plaintext;
};


function Xencode(pValue){
	pValue = escape(pValue);
	pValue = pValue.replace(/%u20AC/g, "%80"); 
	pValue = pValue.replace(/%u201A/g, "%82"); 
	pValue = pValue.replace(/%u0192/g, "%83"); 
	pValue = pValue.replace(/%u201E/g, "%84"); 
	pValue = pValue.replace(/%u2026/g, "%85"); 
	pValue = pValue.replace(/%u2020/g, "%86"); 
	pValue = pValue.replace(/%u2021/g, "%87"); 
	pValue = pValue.replace(/%u02C6/g, "%88"); 
	pValue = pValue.replace(/%u2030/g, "%89"); 
	pValue = pValue.replace(/%u0160/g, "%8A"); 
	pValue = pValue.replace(/%u2039/g, "%8B"); 
	pValue = pValue.replace(/%u0152/g, "%8C"); 
	pValue = pValue.replace(/%u017D/g, "%8E"); 
	pValue = pValue.replace(/%u2018/g, "%91"); 
	pValue = pValue.replace(/%u2019/g, "%92"); 
	pValue = pValue.replace(/%u201C/g, "%93"); 
	pValue = pValue.replace(/%u201D/g, "%94"); 
	pValue = pValue.replace(/%u2022/g, "%95"); 
	pValue = pValue.replace(/%u2013/g, "%96"); 
	pValue = pValue.replace(/%u2014/g, "%97"); 
	pValue = pValue.replace(/%u02DC/g, "%98"); 
	pValue = pValue.replace(/%u2122/g, "%99"); 
	pValue = pValue.replace(/%u0161/g, "%9A"); 
	pValue = pValue.replace(/%u203A/g, "%9B"); 
	pValue = pValue.replace(/%u0153/g, "%9C"); 
	pValue = pValue.replace(/%u017E/g, "%9E"); 
	pValue = pValue.replace(/%u0178/g, "%9F"); 
	pValue = pValue.replace(/%20/g, "+"); 
	return pValue;
}

function ConvertAsciiToText(pValue)
{
pValue = pValue.replace("&#32;", " ");
pValue = pValue.replace("&#33;", "!");
pValue = pValue.replace("&#34;", "\"");
pValue = pValue.replace("&#35;", "#");
pValue = pValue.replace("&#36;", "$");
pValue = pValue.replace("&#37;", "%");
pValue = pValue.replace("&#38;", "&");
pValue = pValue.replace("&#39;", "'");
pValue = pValue.replace("&#40;", "(");
pValue = pValue.replace("&#41;", ")");
pValue = pValue.replace("&#42;", "*");
pValue = pValue.replace("&#43;", "+");
pValue = pValue.replace("&#44;", ",");
pValue = pValue.replace("&#45;", "-");
pValue = pValue.replace("&#46;", ".");
pValue = pValue.replace("&#47;", "/");
pValue = pValue.replace("&#48;", "0");
pValue = pValue.replace("&#49;", "1");
pValue = pValue.replace("&#50;", "2");
pValue = pValue.replace("&#51;", "3");
pValue = pValue.replace("&#52;", "4");
pValue = pValue.replace("&#53;", "5");
pValue = pValue.replace("&#54;", "6");
pValue = pValue.replace("&#55;", "7");
pValue = pValue.replace("&#56;", "8");
pValue = pValue.replace("&#57;", "9");
pValue = pValue.replace("&#58;", ":");
pValue = pValue.replace("&#59;", ";");
pValue = pValue.replace("&#60;", "<");
pValue = pValue.replace("&#61;", "=");
pValue = pValue.replace("&#62;", ">");
pValue = pValue.replace("&#63;", "?");
pValue = pValue.replace("&#64;", "@");
pValue = pValue.replace("&#65;", "A");
pValue = pValue.replace("&#66;", "B");
pValue = pValue.replace("&#67;", "C");
pValue = pValue.replace("&#68;", "D");
pValue = pValue.replace("&#69;", "E");
pValue = pValue.replace("&#70;", "F");
pValue = pValue.replace("&#71;", "G");
pValue = pValue.replace("&#72;", "H");
pValue = pValue.replace("&#73;", "I");
pValue = pValue.replace("&#74;", "J");
pValue = pValue.replace("&#75;", "K");
pValue = pValue.replace("&#76;", "L");
pValue = pValue.replace("&#77;", "M");
pValue = pValue.replace("&#78;", "N");
pValue = pValue.replace("&#79;", "O");
pValue = pValue.replace("&#80;", "P");
pValue = pValue.replace("&#81;", "Q");
pValue = pValue.replace("&#82;", "R");
pValue = pValue.replace("&#83;", "S");
pValue = pValue.replace("&#84;", "T");
pValue = pValue.replace("&#85;", "U");
pValue = pValue.replace("&#86;", "V");
pValue = pValue.replace("&#87;", "W");
pValue = pValue.replace("&#88;", "X");
pValue = pValue.replace("&#89;", "Y");
pValue = pValue.replace("&#90;", "Z");
pValue = pValue.replace("&#91;", "[");
pValue = pValue.replace("&#92;", "\\");
pValue = pValue.replace("&#93;", "]");
pValue = pValue.replace("&#94;", "^");
pValue = pValue.replace("&#95;", "_");
pValue = pValue.replace("&#96;", "`");
pValue = pValue.replace("&#97;", "a");
pValue = pValue.replace("&#98;", "b");
pValue = pValue.replace("&#99;", "c");
pValue = pValue.replace("&#100;", "d");
pValue = pValue.replace("&#101;", "e");
pValue = pValue.replace("&#102;", "f");
pValue = pValue.replace("&#103;", "g");
pValue = pValue.replace("&#104;", "h");
pValue = pValue.replace("&#105;", "i");
pValue = pValue.replace("&#106;", "j");
pValue = pValue.replace("&#107;", "k");
pValue = pValue.replace("&#108;", "l");
pValue = pValue.replace("&#109;", "m");
pValue = pValue.replace("&#110;", "n");
pValue = pValue.replace("&#111;", "o");
pValue = pValue.replace("&#112;", "p");
pValue = pValue.replace("&#113;", "q");
pValue = pValue.replace("&#114;", "r");
pValue = pValue.replace("&#115;", "s");
pValue = pValue.replace("&#116;", "t");
pValue = pValue.replace("&#117;", "u");
pValue = pValue.replace("&#118;", "v");
pValue = pValue.replace("&#119;", "w");
pValue = pValue.replace("&#120;", "x");
pValue = pValue.replace("&#121;", "y");
pValue = pValue.replace("&#122;", "z");
pValue = pValue.replace("&#123;", "{");
pValue = pValue.replace("&#124;", "|");
pValue = pValue.replace("&#125;", "}");
pValue = pValue.replace("&#126;", "~");
pValue = pValue.replace("&#127;", "");
pValue = pValue.replace("&#128;", "");
pValue = pValue.replace("&#129;", "");
pValue = pValue.replace("&#130;", "");
pValue = pValue.replace("&#131;", "");
pValue = pValue.replace("&#132;", "");
pValue = pValue.replace("&#133;", "");
pValue = pValue.replace("&#134;", "");
pValue = pValue.replace("&#135;", "");
pValue = pValue.replace("&#136;", "");
pValue = pValue.replace("&#137;", "");
pValue = pValue.replace("&#138;", "");
pValue = pValue.replace("&#139;", "");
pValue = pValue.replace("&#140;", "");
pValue = pValue.replace("&#141;", "");
pValue = pValue.replace("&#142;", "");
pValue = pValue.replace("&#143;", "");
pValue = pValue.replace("&#144;", "");
pValue = pValue.replace("&#145;", "");
pValue = pValue.replace("&#146;", "");
pValue = pValue.replace("&#147;", "");
pValue = pValue.replace("&#148;", "");
pValue = pValue.replace("&#149;", "");
pValue = pValue.replace("&#150;", "");
pValue = pValue.replace("&#151;", "");
pValue = pValue.replace("&#152;", "");
pValue = pValue.replace("&#153;", "");
pValue = pValue.replace("&#154;", "");
pValue = pValue.replace("&#155;", "");
pValue = pValue.replace("&#156;", "");
pValue = pValue.replace("&#157;", "");
pValue = pValue.replace("&#158;", "");
pValue = pValue.replace("&#159;", "");
pValue = pValue.replace("&#160;", " ");
pValue = pValue.replace("&#161;", "");
pValue = pValue.replace("&#162;", "");
pValue = pValue.replace("&#163;", "");
pValue = pValue.replace("&#164;", "");
pValue = pValue.replace("&#165;", "");
pValue = pValue.replace("&#166;", "");
pValue = pValue.replace("&#167;", "");
pValue = pValue.replace("&#168;", "");
pValue = pValue.replace("&#169;", "");
pValue = pValue.replace("&#170;", "");
pValue = pValue.replace("&#171;", "");
pValue = pValue.replace("&#172;", "");
pValue = pValue.replace("&#173;", "&shy;");
pValue = pValue.replace("&#174;", "");
pValue = pValue.replace("&#175;", "");
pValue = pValue.replace("&#176;", "");
pValue = pValue.replace("&#177;", "");
pValue = pValue.replace("&#178;", "");
pValue = pValue.replace("&#179;", "");
pValue = pValue.replace("&#180;", "");
pValue = pValue.replace("&#181;", "");
pValue = pValue.replace("&#182;", "");
pValue = pValue.replace("&#183;", "");
pValue = pValue.replace("&#184;", "");
pValue = pValue.replace("&#185;", "");
pValue = pValue.replace("&#186;", "");
pValue = pValue.replace("&#187;", "");
pValue = pValue.replace("&#188;", "");
pValue = pValue.replace("&#189;", "");
pValue = pValue.replace("&#190;", "");
pValue = pValue.replace("&#191;", "");
pValue = pValue.replace("&#192;", "");
pValue = pValue.replace("&#193;", "");
pValue = pValue.replace("&#194;", "");
pValue = pValue.replace("&#195;", "");
pValue = pValue.replace("&#196;", "");
pValue = pValue.replace("&#197;", "");
pValue = pValue.replace("&#198;", "");
pValue = pValue.replace("&#199;", "");
pValue = pValue.replace("&#200;", "");
pValue = pValue.replace("&#201;", "");
pValue = pValue.replace("&#202;", "");
pValue = pValue.replace("&#203;", "");
pValue = pValue.replace("&#204;", "");
pValue = pValue.replace("&#205;", "");
pValue = pValue.replace("&#206;", "");
pValue = pValue.replace("&#207;", "");
pValue = pValue.replace("&#208;", "");
pValue = pValue.replace("&#209;", "");
pValue = pValue.replace("&#210;", "");
pValue = pValue.replace("&#211;", "");
pValue = pValue.replace("&#212;", "");
pValue = pValue.replace("&#213;", "");
pValue = pValue.replace("&#214;", "");
pValue = pValue.replace("&#215;", "");
pValue = pValue.replace("&#216;", "");
pValue = pValue.replace("&#217;", "");
pValue = pValue.replace("&#218;", "");
pValue = pValue.replace("&#219;", "");
pValue = pValue.replace("&#220;", "");
pValue = pValue.replace("&#221;", "");
pValue = pValue.replace("&#222;", "");
pValue = pValue.replace("&#223;", "");
pValue = pValue.replace("&#224;", "");
pValue = pValue.replace("&#225;", "");
pValue = pValue.replace("&#226;", "");
pValue = pValue.replace("&#227;", "");
pValue = pValue.replace("&#228;", "");
pValue = pValue.replace("&#229;", "");
pValue = pValue.replace("&#230;", "");
pValue = pValue.replace("&#231;", "");
pValue = pValue.replace("&#232;", "");
pValue = pValue.replace("&#233;", "");
pValue = pValue.replace("&#234;", "");
pValue = pValue.replace("&#235;", "");
pValue = pValue.replace("&#236;", "");
pValue = pValue.replace("&#237;", "");
pValue = pValue.replace("&#238;", "");
pValue = pValue.replace("&#239;", "");
pValue = pValue.replace("&#240;", "");
pValue = pValue.replace("&#241;", "");
pValue = pValue.replace("&#242;", "");
pValue = pValue.replace("&#243;", "");
pValue = pValue.replace("&#244;", "");
pValue = pValue.replace("&#245;", "");
pValue = pValue.replace("&#246;", "");
pValue = pValue.replace("&#247;", "");
pValue = pValue.replace("&#248;", "");
pValue = pValue.replace("&#249;", "");
pValue = pValue.replace("&#250;", "");
pValue = pValue.replace("&#251;", "");
pValue = pValue.replace("&#252;", "");
pValue = pValue.replace("&#253;", "");
pValue = pValue.replace("&#254;", "");
pValue = pValue.replace("&#255;", "");
pValue = pValue.replace("&amp;", "&");
pValue = pValue.replace("&quot;", "\"");
pValue = pValue.replace("&lt;", "<");
pValue = pValue.replace("&gt;", ">");
pValue = pValue.replace("&Agrave;", "");
pValue = pValue.replace("&Aacute;", "");
pValue = pValue.replace("&Acirc;", "");
pValue = pValue.replace("&Atilde;", "");
pValue = pValue.replace("&Auml;", "");
pValue = pValue.replace("&Aring;", "");
pValue = pValue.replace("&AElig;", "");
pValue = pValue.replace("&Ccedil;", "");
pValue = pValue.replace("&Egrave;", "");
pValue = pValue.replace("&Eacute;", "");
pValue = pValue.replace("&Ecirc;", "");
pValue = pValue.replace("&Euml;", "");
pValue = pValue.replace("&Igrave;", "");
pValue = pValue.replace("&Iacute;", "");
pValue = pValue.replace("&Icirc;", "");
pValue = pValue.replace("&Iuml;", "");
pValue = pValue.replace("&ETH;", "");
pValue = pValue.replace("&Ntilde;", "");
pValue = pValue.replace("&Otilde;", "");
pValue = pValue.replace("&Ouml;", "");
pValue = pValue.replace("&Ouml;", "");
pValue = pValue.replace("&Oslash;", "");
pValue = pValue.replace("&copy;", "");
pValue = pValue.replace("&reg;", "");
pValue = pValue.replace(" ", " ");
return pValue;
}


function ConvertTextAscii(pValue)
{
pValue = pValue.replace(" ","&#32;");
pValue = pValue.replace("!","&#33;");
pValue = pValue.replace("\"","&#34;");
pValue = pValue.replace("#","&#35;");
pValue = pValue.replace("$","&#36;");
pValue = pValue.replace("%","&#37;");
pValue = pValue.replace("&","&#38;");
pValue = pValue.replace("'","&#39;");
pValue = pValue.replace("(","&#40;");
pValue = pValue.replace(")","&#41;");
pValue = pValue.replace("*","&#42;");
pValue = pValue.replace("+","&#43;");
pValue = pValue.replace(",","&#44;");
pValue = pValue.replace("-","&#45;");
pValue = pValue.replace(".","&#46;");
pValue = pValue.replace("/","&#47;");
pValue = pValue.replace("0","&#48;");
pValue = pValue.replace("1","&#49;");
pValue = pValue.replace("2","&#50;");
pValue = pValue.replace("3","&#51;");
pValue = pValue.replace("4","&#52;");
pValue = pValue.replace("5","&#53;");
pValue = pValue.replace("6","&#54;");
pValue = pValue.replace("7","&#55;");
pValue = pValue.replace("8","&#56;");
pValue = pValue.replace("9","&#57;");
pValue = pValue.replace(":","&#58;");
pValue = pValue.replace(";","&#59;");
pValue = pValue.replace("<","&#60;");
pValue = pValue.replace("=","&#61;");
pValue = pValue.replace(">","&#62;");
pValue = pValue.replace("?","&#63;");
pValue = pValue.replace("@","&#64;");
pValue = pValue.replace("A","&#65;");
pValue = pValue.replace("B","&#66;");
pValue = pValue.replace("C","&#67;");
pValue = pValue.replace("D","&#68;");
pValue = pValue.replace("E","&#69;");
pValue = pValue.replace("F","&#70;");
pValue = pValue.replace("G","&#71;");
pValue = pValue.replace("H","&#72;");
pValue = pValue.replace("I","&#73;");
pValue = pValue.replace("J","&#74;");
pValue = pValue.replace("K","&#75;");
pValue = pValue.replace("L","&#76;");
pValue = pValue.replace("M","&#77;");
pValue = pValue.replace("N","&#78;");
pValue = pValue.replace("O","&#79;");
pValue = pValue.replace("P","&#80;");
pValue = pValue.replace("Q","&#81;");
pValue = pValue.replace("R","&#82;");
pValue = pValue.replace("S","&#83;");
pValue = pValue.replace("T","&#84;");
pValue = pValue.replace("U","&#85;");
pValue = pValue.replace("V","&#86;");
pValue = pValue.replace("W","&#87;");
pValue = pValue.replace("X","&#88;");
pValue = pValue.replace("Y","&#89;");
pValue = pValue.replace("Z","&#90;");
pValue = pValue.replace("[","&#91;");
pValue = pValue.replace("\\","&#92;");
pValue = pValue.replace("]","&#93;");
pValue = pValue.replace("^","&#94;");
pValue = pValue.replace("_","&#95;");
pValue = pValue.replace("`","&#96;");
pValue = pValue.replace("a","&#97;");
pValue = pValue.replace("b","&#98;");
pValue = pValue.replace("c","&#99;");
pValue = pValue.replace("d","&#100;");
pValue = pValue.replace("e","&#101;");
pValue = pValue.replace("f","&#102;");
pValue = pValue.replace("g","&#103;");
pValue = pValue.replace("h","&#104;");
pValue = pValue.replace("i","&#105;");
pValue = pValue.replace("j","&#106;");
pValue = pValue.replace("k","&#107;");
pValue = pValue.replace("l","&#108;");
pValue = pValue.replace("m","&#109;");
pValue = pValue.replace("n","&#110;");
pValue = pValue.replace("o","&#111;");
pValue = pValue.replace("p","&#112;");
pValue = pValue.replace("q","&#113;");
pValue = pValue.replace("r","&#114;");
pValue = pValue.replace("s","&#115;");
pValue = pValue.replace("t","&#116;");
pValue = pValue.replace("u","&#117;");
pValue = pValue.replace("v","&#118;");
pValue = pValue.replace("w","&#119;");
pValue = pValue.replace("x","&#120;");
pValue = pValue.replace("y","&#121;");
pValue = pValue.replace("z","&#122;");
pValue = pValue.replace("{","&#123;");
pValue = pValue.replace("|","&#124;");
pValue = pValue.replace("}","&#125;");
pValue = pValue.replace("~","&#126;");
pValue = pValue.replace("","&#127;");
pValue = pValue.replace("","&#128;");
pValue = pValue.replace("","&#129;");
pValue = pValue.replace("","&#130;");
pValue = pValue.replace("","&#131;");
pValue = pValue.replace("","&#132;");
pValue = pValue.replace("","&#133;");
pValue = pValue.replace("","&#134;");
pValue = pValue.replace("","&#135;");
pValue = pValue.replace("","&#136;");
pValue = pValue.replace("","&#137;");
pValue = pValue.replace("","&#138;");
pValue = pValue.replace("","&#139;");
pValue = pValue.replace("","&#140;");
pValue = pValue.replace("","&#141;");
pValue = pValue.replace("","&#142;");
pValue = pValue.replace("","&#143;");
pValue = pValue.replace("","&#144;");
pValue = pValue.replace("","&#145;");
pValue = pValue.replace("","&#146;");
pValue = pValue.replace("","&#147;");
pValue = pValue.replace("","&#148;");
pValue = pValue.replace("","&#149;");
pValue = pValue.replace("","&#150;");
pValue = pValue.replace("","&#151;");
pValue = pValue.replace("","&#152;");
pValue = pValue.replace("","&#153;");
pValue = pValue.replace("","&#154;");
pValue = pValue.replace("","&#155;");
pValue = pValue.replace("","&#156;");
pValue = pValue.replace("","&#157;");
pValue = pValue.replace("","&#158;");
pValue = pValue.replace("","&#159;");
pValue = pValue.replace(",","&#160;");
pValue = pValue.replace("","&#161;");
pValue = pValue.replace("","&#162;");
pValue = pValue.replace("","&#163;");
pValue = pValue.replace("","&#164;");
pValue = pValue.replace("","&#165;");
pValue = pValue.replace("","&#166;");
pValue = pValue.replace("","&#167;");
pValue = pValue.replace("","&#168;");
pValue = pValue.replace("","&#169;");
pValue = pValue.replace("","&#170;");
pValue = pValue.replace("","&#171;");
pValue = pValue.replace("","&#172;");
pValue = pValue.replace("&shy;","&#173;");
pValue = pValue.replace("","&#174;");
pValue = pValue.replace("","&#175;");
pValue = pValue.replace("","&#176;");
pValue = pValue.replace("","&#177;");
pValue = pValue.replace("","&#178;");
pValue = pValue.replace("","&#179;");
pValue = pValue.replace("","&#180;");
pValue = pValue.replace("","&#181;");
pValue = pValue.replace("","&#182;");
pValue = pValue.replace("","&#183;");
pValue = pValue.replace("","&#184;");
pValue = pValue.replace("","&#185;");
pValue = pValue.replace("","&#186;");
pValue = pValue.replace("","&#187;");
pValue = pValue.replace("","&#188;");
pValue = pValue.replace("","&#189;");
pValue = pValue.replace("","&#190;");
pValue = pValue.replace("","&#191;");
pValue = pValue.replace("","&#192;");
pValue = pValue.replace("","&#193;");
pValue = pValue.replace("","&#194;");
pValue = pValue.replace("","&#195;");
pValue = pValue.replace("","&#196;");
pValue = pValue.replace("","&#197;");
pValue = pValue.replace("","&#198;");
pValue = pValue.replace("","&#199;");
pValue = pValue.replace("","&#200;");
pValue = pValue.replace("","&#201;");
pValue = pValue.replace("","&#202;");
pValue = pValue.replace("","&#203;");
pValue = pValue.replace("","&#204;");
pValue = pValue.replace("","&#205;");
pValue = pValue.replace("","&#206;");
pValue = pValue.replace("","&#207;");
pValue = pValue.replace("","&#208;");
pValue = pValue.replace("","&#209;");
pValue = pValue.replace("","&#210;");
pValue = pValue.replace("","&#211;");
pValue = pValue.replace("","&#212;");
pValue = pValue.replace("","&#213;");
pValue = pValue.replace("","&#214;");
pValue = pValue.replace("","&#215;");
pValue = pValue.replace("","&#216;");
pValue = pValue.replace("","&#217;");
pValue = pValue.replace("","&#218;");
pValue = pValue.replace("","&#219;");
pValue = pValue.replace("","&#220;");
pValue = pValue.replace("","&#221;");
pValue = pValue.replace("","&#222;");
pValue = pValue.replace("","&#223;");
pValue = pValue.replace("","&#224;");
pValue = pValue.replace("","&#225;");
pValue = pValue.replace("","&#226;");
pValue = pValue.replace("","&#227;");
pValue = pValue.replace("","&#228;");
pValue = pValue.replace("","&#229;");
pValue = pValue.replace("","&#230;");
pValue = pValue.replace("","&#231;");
pValue = pValue.replace("","&#232;");
pValue = pValue.replace("","&#233;");
pValue = pValue.replace("","&#234;");
pValue = pValue.replace("","&#235;");
pValue = pValue.replace("","&#236;");
pValue = pValue.replace("","&#237;");
pValue = pValue.replace("","&#238;");
pValue = pValue.replace("","&#239;");
pValue = pValue.replace("","&#240;");
pValue = pValue.replace("","&#241;");
pValue = pValue.replace("","&#242;");
pValue = pValue.replace("","&#243;");
pValue = pValue.replace("","&#244;");
pValue = pValue.replace("","&#245;");
pValue = pValue.replace("","&#246;");
pValue = pValue.replace("","&#247;");
pValue = pValue.replace("","&#248;");
pValue = pValue.replace("","&#249;");
pValue = pValue.replace("","&#250;");
pValue = pValue.replace("","&#251;");
pValue = pValue.replace("","&#252;");
pValue = pValue.replace("","&#253;");
pValue = pValue.replace("","&#254;");
pValue = pValue.replace("","&#255;");
pValue = pValue.replace("&","&amp;");
pValue = pValue.replace("\"","&quot;");
pValue = pValue.replace("<","&lt;");
pValue = pValue.replace(">","&gt;");
pValue = pValue.replace("","&Agrave;");
pValue = pValue.replace("","&Aacute;");
pValue = pValue.replace("","&Acirc;");
pValue = pValue.replace("","&Atilde;");
pValue = pValue.replace("","&Auml;");
pValue = pValue.replace("","&Aring;");
pValue = pValue.replace("","&AElig;");
pValue = pValue.replace("","&Ccedil;");
pValue = pValue.replace("","&Egrave;");
pValue = pValue.replace("","&Eacute;");
pValue = pValue.replace("","&Ecirc;");
pValue = pValue.replace("","&Euml;");
pValue = pValue.replace("","&Igrave;");
pValue = pValue.replace("","&Iacute;");
pValue = pValue.replace("","&Icirc;");
pValue = pValue.replace("","&Iuml;");
pValue = pValue.replace("","&ETH;");
pValue = pValue.replace("","&Ntilde;");
pValue = pValue.replace("","&Otilde;");
pValue = pValue.replace("","&Ouml;");
pValue = pValue.replace("","&Ouml;");
pValue = pValue.replace("","&Oslash;");
pValue = pValue.replace("","&copy;");
pValue = pValue.replace("","&reg;");
pValue = pValue.replace(" "," ");
return pValue; 
}
