function ImageFader() {
	var setOpacity, swapImage, nextSpot = 2, nextImage = 1, fadeInt = null, fadeMe, fadeOpac = 0, spot = [], 
	images = ['./images/header1.jpg', './images/header2.jpg', './images/header3.jpg', './images/header4.jpg'];
	spot[1] = document.getElementById('header1');
	spot[2] = document.getElementById('header2');
	
	setOpacity = function (el, opacity) {
		opacity = '' + (opacity / 5);
		el.style.opacity = opacity;		// For CSS 3 compliant browsers
		el.style["-moz-opacity"] = opacity;	// For old FF
		el.style.filter = 'alpha(opacity=' + opacity * 100 + ')';	// For IE
	};
	
	fadeMe = function () {
		return function () {
			fadeOpac++;
			setOpacity(spot[nextSpot], fadeOpac);
			if (fadeOpac === 5) {
				window.clearInterval(fadeInt);
				fadeInt = null;
				fadeOpac = 0;
				spot[nextSpot].style.zIndex = 2;
				nextSpot = (nextSpot === 1) ? 2 : 1;
				spot[nextSpot].src = images[nextImage];
				setOpacity(spot[nextSpot], 0);
				spot[nextSpot].style.zIndex = 3;
				window.setTimeout(swapImage(), 5000);
			}
		};
	}
	
	swapImage = function () {
		return function () {
			nextImage = (nextImage === 3) ? 0 : nextImage + 1;
			fadeInt = window.setInterval(fadeMe(), 100);
		};
	};
	
	// init
	if (spot[1] && spot[2]) {
		setOpacity(spot[2], 0);
		window.setTimeout(swapImage(), 5000);
	}
}