function sfio()	
	{	var prm=sfio.arguments[0];
		this.dessin=prm['image'];
		this.mini=Number( prm['mini'] ) || 0;
		this.maxi=Number( prm['maxi'] ) || 100;
		this.delai=Number( prm['delai'] ) || 40;
		this.pas=Number( prm['pas'] ) || 1;
		this.opaImg=this.maxi;
		this.timid=0;
		this.tableau=prm['tableau'] || null;
		if ( this.tableau==null )
				{	this.imgout=prm['out'] || this.dessin.src;
					this.dessin.src=this.imgout;
					this.imgover=prm['over'];
					this.metStyle();
					var zis=this;
					
					this.dessin.onmouseover=function()
						{	clearTimeout( zis.timid );
							zis.opacite( '-', zis.imgover );
						};

					this.dessin.onmouseout=function()
						{	clearTimeout( zis.timid );
							zis.opacite( '-', zis.imgout );
						};
				}
		else	{	this.dessin.src=this.tableau[0];
					this.metStyle();
					this.imgAct=0;
					this.opacite( '-', this.tableau[0] );
				}
	}
	
	sfio.prototype.metStyle=function()

	{	this.dessin.style.filter="alpha(opacity="+this.opaImg+")";
		var opad2=( this.opaImg/100 ).toFixed( 2 );
		this.dessin.style.opacity=opad2;
		this.dessin.style.mozOpacity=opad2;
		this.dessin.style.khtmlOpacity=opad2;
	}
	
	sfio.prototype.opacite=function( sens, imge )
	{	switch ( sens )
		{	case '-':
				this.opaImg-=this.pas;
				if ( this.opaImg > this.mini )
						{	
							this.metStyle();
							var zis=this;
							this.timid=setTimeout	(	function()	{ zis.opacite ( sens, imge ); }
																, 	this.delai
															);
						}
				else	{	
							this.opaImg=this.mini;
							this.metStyle();
							if ( this.tableau==null )
									{	this.dessin.src=imge;
										this.opacite ( '+', imge );	}
							else	{	this.imgAct++;
										var i=this.tableau[this.imgAct%(this.tableau.length)];
										this.dessin.src=i;
										this.opacite ( '+', i );
									}
						}
				break;
			case '+':
				this.opaImg+=this.pas;
				if ( this.opaImg < this.maxi )
						{	
							this.metStyle();
							var zis=this;
							this.timid=setTimeout	(	function() 	{ zis.opacite ( sens, imge ); }
																, 	this.delai
															);
						}
				else	{	
							this.opaImg=this.maxi;
							this.metStyle();
							if ( this.tableau!=null )
							{	this.opacite ( '-', this.tableau[this.imgAct%(this.tableau.length)] );	}
						}
				break;
		}
	}
