jQuery.fn.slideshow = function(options) {	var settings = {		timeout: '2000',		type: 'sequence',		pauselink: null,		playcallback: null,		pausecallback: null	}	if(options)		jQuery.extend(settings, options);		var pauseState = 0;	var current = 1;	var last = 0;	var timer = '';		var change = function () {		if ( pauseState == 0 ) {			for (var i = 0; i < slides.length; i++) {				jQuery(slides[i]).css('display', 'none');			}			jQuery(slides[last]).css('display', 'block').css('zIndex', '0');			jQuery(slides[current]).css('zIndex', '1').fadeIn('slow');						if ( settings.type == 'sequence' ) {				if ( ( current + 1 ) < slides.length ) {					current = current + 1;					last = current - 1;				}				else {					current = 0;					last = slides.length - 1;				}			}			else if ( settings.type == 'random' ) {				last = current;				while (	current == last ) {					current = Math.floor ( Math.random ( ) * ( slides.length ) );				}			}			else {				alert('type must either be \'sequence\' or \'random\'');			}			timer = setTimeout(change, settings.timeout);		}	}		var pause = function() {		if ( pauseState == 0 ) {			pauseState = 1;			clearTimeout(timer);			if ( settings.playcallback != null ) {				settings.pausecallback(jQuery('#' + settings.pauselink));			}		}		else {			pauseState = 0;			change();			if ( settings.playcallback != null ) {				settings.playcallback(jQuery('#' + settings.pauselink));			}		}		return false;	}		this.css('position', 'relative');	var slides = this.find('img').get();	jQuery.each(slides, function(i){		jQuery(slides[i]).css('zIndex', slides.length - i).css('position', 'absolute').css('top', '0').css('left', '0');	});	if ( settings.type == 'sequence' ) {		timer = setTimeout(change, settings.timeout);	}	else if ( settings.type == 'random' ) {		do { current = Math.floor ( Math.random ( ) * ( slides.length ) ); } while ( current == 0 )		timer = setTimeout(change, settings.timeout);	}	else {		alert('type must either be \'sequence\' or \'random\'');	}		if ( settings.pauselink != null ) {		jQuery('#' + settings.pauselink).click(pause);	}		return this;};