	var slideShowSpeed = 3500;
	var crossFadeDuration = 3;
	var t = new Array();
	var j = new Array();
	var p = new Array();
	var direction = new Array();
	var play = new Array();
	var wait =  new Array();

	var preloadImages = new Array();
	var currentImage = new Array();
							
	function loadImages(Obj, File, sAlt){
		var iObj;
		var iImages;

		if (parseInt(navigator.appVersion) >= 4) {

			iObj = Obj.name.substring(3,Obj.name.length);
			iImages = preloadImages[iObj].length;

			preloadImages[iObj][iImages] = new Image;
			preloadImages[iObj][iImages].src = File;
			preloadImages[iObj][iImages].alt = sAlt;
		}
	}

	function getImage(Obj, direction){
		var iObj;
		var iImg;
		var iImages;
		
		if (parseInt(navigator.appVersion) >= 4) {

			iObj = Obj.name.substring(3,Obj.name.length);

			iImages = preloadImages[iObj].length;

			iImg = parseInt(currentImage[iObj]);

			iImg = (direction > -1) ? iImg+1 : iImg-1;
			iImg = (iImg > iImages - 1) ? 0 : iImg;
			iImg = (iImg < 0) ? iImages - 1 : iImg;

			currentImage[iObj] = iImg;
			Obj.src = preloadImages[iObj][iImg].src;
			Obj.alt = preloadImages[iObj][iImg].alt;

		}
		return false;
	}

	function setSlideShowButtons(iObj){
		objPrevious = eval('document.images.DiaPrevious' + iObj);
		objPause = eval('document.images.DiaPause' + iObj);
		objNext = eval('document.images.DiaNext' + iObj);

		if(play[iObj]){
			objPrevious.src = imgPreviousHalt.src;
			objPause.src = imgPauseGo.src;
			objNext.src = imgNextHalt.src;
			objPrevious.alt = imgPreviousHalt.alt;
			objPause.alt = imgPauseGo.alt;
			objNext.alt = imgNextHalt.alt;
		} else {
			objPrevious.src = imgPreviousGo.src;
			objPause.src = imgPauseHalt.src;
			objNext.src = imgNextGo.src;
			objPrevious.alt = imgPreviousGo.alt;
			objPause.alt = imgPauseHalt.alt;
			objNext.alt = imgNextGo.alt;
		}
	}

//////////////////////////////////////////
// ctrlSlideShow(command)				//
// controls the direction and motion	//
// of runSlideShow()					//
//////////////////////////////////////////
function ctrlSlideShow(command, iObj){
	if (wait[iObj] == 0){												//has it stopped?
	
	if (command == 2 & !play[iObj]){
		command = 1;
	}
	
	if (command == 4 & play[iObj]){
		command = 2;
	}
	
	if (command == 1){ 											//play forward 
		if (play[iObj]){if (direction[iObj] == 2)direction[iObj] = 1;	else{}} 	//running so turn around or do nothing
		else{play[iObj] = true; direction[iObj] = 1; runSlideShow(iObj);}		//start running forward
		}		

	if (command == 2){play[iObj] = false;	wait[iObj] = 1;}					//stop running then wait till it's done
								
	if (command == 3){						//play backward
		 if (play[iObj]){if (direction[iObj] == 1)direction[iObj]=2; else{} }		//running so turn around or do nothing
		 else{play[iObj] = true; direction[iObj] = 2; runSlideShow(iObj); }		//start running backwards
		}
	}
	
	//setSlideShowButtons(iObj);

}

//////////////////////////////////////////
// runSlideShow() 						//
// fades pictures in array in and out   //
// if play is true (ns just changes)	//
// direction 1 is forward, 2 is			//
// backward. Check disallows dubbelloop //
//////////////////////////////////////////

function runSlideShow(iObj){ // obj = document.images.objname
	if (play[iObj]){
		obj = eval('document.images.Img' + iObj);

		if (direction[iObj] == 2){j[iObj] = j[iObj] - 1;if (j[iObj] < 0) j[iObj]=(p[iObj]-1);} 										//one pic backwards 
		if (direction[iObj] == 1){j[iObj] = j[iObj] + 1;if (j[iObj] > (p[iObj]-1)) j[iObj]=0;} //one pic forward
		if (document.all){ 																		//control the blending and speed
	    	obj.style.filter="blendTrans(duration=2)";
	    	obj.style.filter="blendTrans(duration=crossFadeDuration)";
	    	obj.filters.blendTrans.Apply();}
	   		obj.src = preloadImages[iObj][j[iObj]].src; 										//preload before transition
	   		if (document.all){obj.filters.blendTrans.Play();} 				//transition
	 			t[iObj] = setTimeout('runSlideShow(' + iObj + ')', slideShowSpeed);
	 	} 										//loop
	else {wait[iObj] = 0;}																			//make sure it doen't dubbelloop
}