(function(list){
// JSmile for jQuery - Andrea Giammarchi [webreflection.blogspot.com] - V0.4
jQuery.fn.extend({
	smile: (function(){
		function smile(show){
			show = !arguments.length || !!show;
			this.each(function(i, firstChild){
				jQuery.each(firstChild.childNodes, function(i, firstChild){
					switch(firstChild.nodeType){
						case	1:
							show ? jQuery(firstChild).smile(show) : smile.remove(firstChild);
							break;
						case	3:
							if(show && !smile.nodeName[firstChild.parentNode.nodeName.toLowerCase()])
								smile.add(firstChild);
							break;
					}
				});
			});
			return	this;
		};
		smile.add	= function(firstChild){
			var	parentNode	= firstChild.parentNode,
				nodeValue	= firstChild.nodeValue,
				i           = 0,
				length		= 0,
				img;
			nodeValue.replace(
				smile.RegExp,
				function(createTextNode, pos){
					if(++length < smile.max && list[createTextNode]){
                        if(smile.list[createTextNode])
                            img = smile.list[createTextNode].cloneNode(true);
                        else {
    						img             = new Image();
    						img.className   = smile.className;
    						img.src         = "data:image/gif;base64," + list[createTextNode];
                            img.alt         = img.title = createTextNode;
                            smile.list[createTextNode]  = img;
                        };
						jQuery(firstChild).before(document.createTextNode(nodeValue.substring(i, pos))).before(img);
						i   = pos + createTextNode.length;
					}
				}
			);
			if(i)
				jQuery(firstChild).before(document.createTextNode(nodeValue.substring(i))).remove();
		};
		smile.remove	= function(firstChild){
			jQuery(firstChild).find("img." + smile.className).each(function(i, firstChild){
				jQuery(firstChild).replaceWith(document.createTextNode(firstChild.alt || firstChild.title));
			});
		};
        smile.max       = 20;
        smile.list      = {};
        smile.className = "jsmile";
        smile.nodeName  = {"code":1,"noscript":1,"pre":1,"script":1,"style":1};
        smile.RegExp    = /:arrow:|:cry:|:evil:|:geek:|:idea:|:lol:|:mrgreen:|:oops:|:roll:|:shock:|:twisted:|:ugeek:|8-\)|:o|:x|:\||:!:|:\(|:\)|:\?:|:\?|:D|:P|;\)/g;
        return  smile;
    })()
});
})({
"x)": "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAJpSURBVDjLpZPLS5RhFMZ/7/eNM6Xf6GhYSeU0FUFGdMUWRdIiEqSgqDataldLwU3WXyC0jxYFEUFKbTIkyLCgoIhuRPcGC7LQHPPS5+f7vue0CCa70KLO8nDOj8N5nseoKv9TqV8b7oaJVGlXoVWEZlVQ4a4IfSqczO7SydnzZvYF7oZpUeGMaewomFwzmq4D9Wg8gi89IHnVVRThUO0eHfgN4PrNHs21XAoWHiQOMjwduMn8hpCqyPH2mWNhIU9DwwKSd90knwb21h/Qy2WA7Td1qgyGay5EEozjp4uUhko8vD2GKizJC4Xlgsk0EmbW8OXO4UkR8g0HdTQAUKE9yHdGmgZJivT3FKmpSWhpzbBlm7I0P8HN6wY3/gSfvKFyVWcknnaAAECENlO7GZkuoi5m++5avoMtYcoCsGXrCGoncWP3SeVWIp62sgoiNJGpRuIxXj+uBZMF84s8qqgbZXHdNSDBewplgAqxuuk03lGX30jlvOWYIPx5XzxTnx6h472gigjhjws8RWy8DtJURTHZBSsIUhU/AbxN8J+vYoJKxKewCa9n/6DXjjzApBsJkgHs1w/AbIcqdvwNfL5Iqnot8cggdobesoylS6ZehLfR5nOR2Be4qUHCXBsVuQ2gnmT4FjPvTxPOXYSp3snglSOTzrJs/TEdLhtp+KLZl6rf0T2ncS+EE7jSPXz8AXXTmFSWMLsOzzJKz69Setm3f0On9vxm5aHzZod4TlU1dRTS81YTVAQgDpd4poZe8vFOV9FZjm48rn1/zALA+7MmEk+HCK3e0+xmwFnuOkufs3RtOvGXMP1LfQPtZUr+1SCKsQAAAABJRU5ErkJggg%3D%3D",

":D": "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAJcSURBVDjLpZPNS9RRFIaf+5tx/JqxUZGKQtEkyJBKw1ZhG0mSFkW1aVW7Wgpusv4CoX20KIgIKowgZSgwrIVghFQbM2swQRM/xmx05jf33nNaBJNWtKizPJzzcDjv+xpV5X8q+mvDPTdxVXpV6BahQxVUGBchpcL1xEnNbp43my9wz02nCrdMfV+jSXagsRpQj+aW8JkJwg8DaREuVJ/S0d8AbsSc0mTnYLDjPFqxDb8xiYTLqMuDKSMoa8bYgPDzA8KF0dN15/RREWBHTI0qM5HWe3EJ1vD5NNhviAtRn/8BEcWU1hMpbeXr2MWsCA07z+tKAKBCb9DQH9cYSJgGt87I4yWQAvgCL56B2Cxu7R0+/EjFvv64eHoBAgARekz1ESSfRl0OFcuxE+WoWNRbjnZmUQlRm8Wtviaa3It4eooqiNBCaRWSW2X6bTWYBJhf5FFF3Qq7a54CId7TWASokFOXj+EdNQ3tVNTuwQSRrfviWV94g64NgSoiRH5e4EljcwchRmU8R2J7M0G0ZAvA2xC/PIwJKhAfxYZMb/7BkF2awMTqCcJR7MYcsNmhil37CMv3iVYdILc0gy0wVJQxM2jqRPgUP3InLvY9bn2GSLKHkmQbqCdcfElh9iaR8l2YquPMPLmUdZamQ1d0sWikxfvmTLSu60FZ/WmIfMNlXuFzc6jLY6IJIomDeJrITA6TmUqdbevXh79Zef6u6RLPjcqWvsZY7X6CkgDE4ULP+vwUX8YG0s5yuf2qpv6YBYDZ2yYunj4Rur2nwxXAWcadJeUsA4ev/SVM/1LfAVOtXW4xpbWpAAAAAElFTkSuQmCC",

":)": "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAJnSURBVDjLpZPNS9RhEMc/z29t1d1tfSmhCAwjioqoKNYuYkRRFB300MWT3eooeMn6C4TunYoiOgSKkGAUhh0SjJCwsBdtfQMN17Ta2v39nueZ6WBtktGh5jLDMPPhC/Mdo6r8T5T93nCPTUqVDhVOi5BRBRVGRBhQ4drGc5pfO2/WKnCPTbMKN0x9Z4OpzqDxWlCPFnL45VHCd91ZEdprWnRoHcANmhatbu4JtrShiSr8t9dIuIS6IpgKgoqdGBsQztwj/DDUWndee0sAO2hqVZmO7b+bkuAzvpgF+wVxIeqLqxBRTHk9sfL9fBq+kBdh+9Y2/RgAqNARbO9KaRwkzIL7ymBfDiQCH/HkIYjN4z6P4cNJEnu6UuLpAAgARDhrahqRYhZ1BVQsx85UomJRb2lqzqMSojaPW3lOWfUuxHN2LWAv5WnErZSWVCzqItRHP2qL+ggJc0CI9zSUACoU1BXBOx71PmXq7dzqorc/csj05BKDD+ZQsaCKCLFfCjxZbAGIc7R5N+9ezTI7uYD6EBXLTHaZiTfLZBrTmCCB+DJsyETJSCL029zowaC6nkRynqNNDYw9m2L8xSx4S7LSkMlUkUzEKEsfoJCbxkb0l8643GPqRHifarydEvsGnx9HohXUhYj7eUaIJXdi0qeYvn8x7yw7Dl3WxQCgplUXRWj/NnELdBuxdCMmVouKgihBfDMb6k6gieMsvezDRrQfuqyL66w8f8ecFM/15N7OhvimfQQbAhCHCz1f59+yMNyddZZLh6/owB9/AWD2pkmJp1OE096TcRE4y4izDDhL95Grf3mmf4nvrQOLvcb/mlMAAAAASUVORK5CYII%3D",

":o": "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAJ3SURBVDjLpZO/a5NRFIaf+yWmNU1iolQsSqRiBZXiT1ocpC5FURwUdXHSTcdCF6t/QcFdHBREBBVFUCkIFV1KK+LgorYaqtCa9rOpaUzy5d57joMQi4qDnvFweDjnvO9rVJX/qfivDffUpFQZUOGQCD2qoMKECCMqXE4f1cryebN8A/fU9KlwzeQHO022B02sBvVoLcSXXhFNDhdEOJM7ps9+A7hRc0yzffeCdafR5Cp89Q0SfUFdHUwrQetmjA2IPt4hKj473n5K7zcBdtSsVmU61n0rJUEZXy+AXUJchPr6D4gopiVPrKWbr2NnKyJs7DitCwGACgPBxqGUJkCiArhvjD4IQRrgGzx/AmIruPJrfPSe5NahlHgGAAIAEY6YXC9SL6CuhorlwOGVqFjUW/b3VVCJUFvBLb4knt2CeI40VRBhGy0ZpLaIiqW65Jn/nGBxoQ1Fyaa/kksXaQkaqAuBCO/pbAJUqKmrJ/AOfIPiTJzUhhPk93UDEE6/Jpy6yvpcESUAVUSI/TzBU8DWgAQqloUvK+jo6iWZWUsys5aOrl5KS2tQaWCCJOLj2Iip5T94ZMNXmEQeFcjlqsxOjlMtz1EtzzE7OU42WQQNiGd2UAunsQ0eNWUs3TPtInxI9d5IiX1LJZwinIuxWE6DCpnkPLnkDG3ZDkzmINMPz1WcZdOuCzrfNNL8bXMi3t5/pzV/HGJLuNILfG0GdXVMPE0svRPPJkpvHlN6N3Jy95De/c3KszdNv3iutG0b7Eys2U6wIgBxuMjzbfYdn8eGC85yfs9FHfljFgA+XTcp8QyKcMh7elwDnGXCWUacZXjvpb+E6V/qO6evcx8oUQKYAAAAAElFTkSuQmCC",

":P": "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAJpSURBVDjLpZM7aFRRFEXXffPyJokzmkSFWBiJiGBEDH5io8QmIIqFojbaaGkZSBVtbAOCpZU2IhhRLJSAEFELISIpRBB/wxgwakYnn5d5n3vvORZCjB8sdJeHw2Jzzt5GVfkfhb8O3ANTUmVQhQMi9KmCChMijKlwsXxY4+X7ZrkD98D0q3DFdA11m7Y+NOoA9WhSw9cnyV6PVEQ43X5EH/4GcOPmiLb13wo6T6Ktq/CNl0j2BXUpmGaC5k0YG5C9HyX79PDo2hN6ewlgx02HKtXCtuslCebxaQXsAuIy1KffIaKYYheF4jbmnpyJRdiw7qR+DQBUGAw2DJc0Askq4BYZv1MDycHnPLoPYmPc/HN89pbWLcMl8QwCBAAiHDLte5C0groEFcv+gy2oWNRb9vXHqGSojXGzzwjbNiOeQ0tfEKGH4kokmeVT9SstLdAUOUJy1OXYzJIuepJFWN1RAzK8p3sJoEKiLo3wjpmpORoLOXnqsVawVaEUBuAD4kTZe8qCKiIUfjjwVLBJL0T07G5HXYa6hM+VmNl3RdYYg00MU/UEE7QiPsRmvFl+g7u2NomJulAB9TnqLFGzJ2ukaJLjFhIkbBCu3E5Sq2Jz7v4AeC41XlyIcWWCaD2oQSWjvMrRtGWetzN1qvNzrD/ciRa3M/34QmwzLv0UpJkb5li4dmC0uesoFBZw9af45APqUkxYplDuxbOR+st71F+NHd8xrDd/i/L0NTMgnssreoa6o9VbCZoCEIfLPIvTr/j4ZKTiLGd3ntOxP3YBYOqqKYlnSIQD3tPncnCWCWcZc5aRXef/UqZ/0TcrHX7i2ZbMyQAAAABJRU5ErkJggg%3D%3D",

":(": "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAJlSURBVDjLpZNNSJRhEMd/z7u6666b6VaQFoohgYpYFHoKo2+SDnbo4smOHQUvfVy6CoHHTkUQHYLCgyAEK32AUUSHCqKMxYIs3ErXV3ff93memQ7FJhkdak7DMPPjz8z8jaryP1Hze8HNmKwqoyqcEKFPFVR4IsK0Clc2ndJwfb9Zr8DNmAEVrpnWsXbT2Icmc6AeLRfx354TvR0viDDSNKT3NwBc3gxp48CdYPswmtmMX3uNRF9QVwFTR1DXgbEB0fvbRJ/vn952Ru9WATZvcqrMJ3puZSUo4SsFsCuIi1Bf+QERxaRaSaR6WJ49G4rQ1jysXwMAFUaDtgtZTYJEBXCr5CeLIDH4mAf3QGyIK73AR+/IdF7IimcUIAAQYdA09SOVAurKqFgOnkyjYlFvOTAQohKhNsQtPaOmcTfiGVwP6CLVgLil6pCKRV2M+vhnblEfI1ERiPCe9uoZVSirqyTxDnxMuFzixdM5St9CEEd9xtDd3UAm5VECUEWExC8FngK2DCQJl1eYzb+iZUeWw8d3cehYG80taR4/WiBcKWOCDOJrsBFzVQUiTNni8z1BYyvp2rf0D3RSX1tGfAX1ETtbkuSae0n7j9Q09FIuzmNjptYrmFh7dTnEbSKR7SSbBpUIfFzdR9p/JFHfgaZ6WXh4ObQRE1VA02ldFGFkbe4G6A4SDf2YRA4VBVGC5FZqtx1BM4f48nISGzOy97wubnjlhZvmqHiu1neNtSe3dBPUBiAOF3lWF97waXa84Czn9l3U6T96AeDDdZMVz5gIJ7ynz8XgLE+cZdpZxvdf+ouZ/iW+AxEldjf3XZxpAAAAAElFTkSuQmCC",

";)": "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAJaSURBVDjLpZNPSFVREIe/c9/r+tD36vW/IA2rTUYlZbp0FQTRQqmgXFW7loIra+NWCFxFENQmgsyEQnGlSIFUVIsURKuHBZmlWWnee985Z6aNaWa0qFkOwzczv/mNUVX+J9K/J9yAyarSrMIxEWpVQYUnIvSpcCV3Qud/rTe/TuAGTL0KN0xFS6XJ16LhBlCPRtP42Rck4+0FEc6tb9DBVQDXbxo0X38v2NaElq7DL4wiyQzqYjAZgswejA1I3naSTA02bj6t3UsA2282qDKR2n87K8E3fFwAO4e4BPUx32YWePk84kBdJfktNXwdOj8vws7tTfo5AFChOdjZmtUQJCnQdfUZXdfH6L45Ab7I2MgCmRLP8ONxfPKa0r2tWfE0L4kowvHU+jp8PIy6iMYLu1EXoz5BbcyhGhBfRG2M+/KMcOsZxHMcuPQTUEXJWiT6gorlzcgmTDqHQUEVWNTJOXbk7wMJ3lO5NIEKkbo4xDvwRcqPnAUTrjiviqc0v525x12gigip5RU8BWxUDSEqlmy+jCBTsco06mNMUIr4NDbhFUCwuEKPnX6BCStQAff1EahbBbAzg6TXHiSansAW6VkGeDoWRtrmcTmCsJzixwckk7eR4qfFzhHFqV6S991oyUEmH7bN24SOFUb6dMecTG8+2pmpaITUHG72KT56j7oYk86RylXj2cXsaC+zY32nDrXq3VVWnrxljornWllVS2W4cR/BmgDE4RLP98kxPgy1F5zl4uFL2vfHXwB4d9NkxdMiwjHvqXVFcJYnztLnLO01l//yTP8SPwD79F9Uvnnx1AAAAABJRU5ErkJggg%3D%3D"
});
