	// classe slide
	function slide(place){
		
		// settaggio dello script =================================================
		// durata del fade
		var fade_length = 2000;
		// durata del ciclo		
		var interval = 6000;
		// ========================================================================
		
		// variabile in cui registro il setInterval
		var periodic = null;
		// indice di partenza dell'array immagini
		var start = 0;
		// array immagini cicliche
		var set = document.getElementById(place).getElementsByTagName("a");	
		// giro di assegnazione degli z-index
		// setto gli z-index via js
		// faccio il tutto SOTTRAENDO 1 in modo che l'immagine registrata nell'array set con indice 0 sia 
		// quella con z-index maggiore 
		for(var i=0; i<set.length; i++){
			set[i].style.zIndex = 100 - i;
		}

		
		// incrementa tutti gli z-index di 1 per restare sempre nello stesso range di valori z-index
		function growth(){
			for(var i=0; i<set.length; i++){
				set[i].style.zIndex = parseInt(set[i].style.zIndex) + 1;
			}
		} 
		
		// funzione di debug per lettura variabili private
		this.read = function(){
			alert(set.length)
		}
		
		this.go = function(){
			var imag = set[start];
			var fade_img = new Fx.Style(imag, 'opacity', {duration: fade_length});
			var fade_fast = new Fx.Style(imag, 'opacity', {duration: 1});
			fade_img.start(1,0).chain(
				function(){
					// sposto in profondità l'img appena sbiadita 
					imag.style.zIndex = parseInt(imag.style.zIndex) - set.length;
					// riporto i valori di opacity allo stato originale ...
					fade_fast.start(0,1);
					growth();
				});
			
			// incrementa l'indice che si usa nell'array set per prendere l'immagine di turno	
			(start < set.length-1) ? start = start + 1 : start = 0;
			
			// qui evito esplosioni combinatorie ammazzando la precendente periodicità del metodo go()  
			clearInterval(periodic);
			periodic = setInterval("slide.go()", interval);		
		}	
	}


	//var slide = new slide("superproj")
	
	//slide.go();
