(function($) {

		// Declare the CrossFade plugin
	$.fn.crossfade = function(options) {
			// Set the default settings
		var settings = {
					fadeWait: 4000,
					fadeTime: 1500
		}
		var fadeCount = 0 ;
		
			// If options are passed in, merge them with the default settings
		$.extend(settings, options) ;
		
			// the onload event handler that starts the fading
		var elts = this ;
		$(elts).hide().slice(0,1).show() ;
		setInterval(function() { $.crossfade.doCrossfade(elts,settings.fadeTime,fadeCount++) ; }, settings.fadeWait ) ;
	
			// Don't break the chain!
		return this ;
	}
	
		// Set the helper functions and variables
	$.crossfade = {
		doCrossfade: function(elts,fadeTime,fadeCurr) {
			fadeCurr = fadeCurr % $(elts).length ;
			fadeNext = fadeCurr + 1;
			if (fadeNext == $(elts).length) fadeNext = 0 ;
			$(elts).slice(fadeCurr,fadeCurr+1).fadeOut(fadeTime) ;
			$(elts).slice(fadeNext,fadeNext+1).fadeIn(fadeTime) ;				
		}
	}

})(jQuery);
