var imgList = new Object();
var imgsLoaded = false;
var nRe = /(.+)_ro_/;

function rollover() {
	var sRe = /[\/]{2}[^\/]+[\/]{1}(.+)[\/]{1}(.+)([\.]{1}[\w]{3})$/;

	if(document.images.length) {
		for(var x=0; x<document.images.length; x++) {

			if(document.images[x].id && nRe.test(document.images[x].id)) {
				var iD = '/' + sRe.exec(document.images[x].src)[1] + '/';
				var iN = nRe.exec(document.images[x].id)[1];
				var iS = sRe.exec(document.images[x].src)[2];
				var iX = sRe.exec(document.images[x].src)[3];

				imgList[iN] = new Image();
				imgList[iN].src = iD + iS + iX;

				imgList[iN + '_on'] = new Image();
				imgList[iN + '_on'].src = iD + iS + '_on' + iX;
			}
		}

		imgsLoaded = true;

		document.onmouseover = mOver;
		document.onmouseout = mOut;
	}
}

function mOver(e) {
	if(e && e.target) var se = e.target;
	else if(event.srcElement) var se = event.srcElement;

	if(imgsLoaded && se.id && nRe.test(se.id)) {
		var img = nRe.exec(se.id)[1];
		se.src = imgList[img + '_on'].src;
	}
}

function mOut(e) {
	if(e && e.target) var se = e.target;
	else if(event.srcElement) var se = event.srcElement;

	if(imgsLoaded && se.id && nRe.test(se.id)) {
		var img = nRe.exec(se.id)[1];
		se.src = imgList[img].src;
	}
}