	nereidFadeObjects = new Object();
    nereidFadeTimers = new Object();
    function nereidFade(object, destOp, rate, delta)
	{
    	if (!document.all)
		return
        if (object != "[object]")
		{
	       setTimeout("nereidFade("+object+","+destOp+","+rate+","+delta+")",0);
           return;
        } 
        clearTimeout(nereidFadeTimers[object.sourceIndex]);
        diff = destOp-object.filters.alpha.opacity;
        direction = 1;
          
		if (object.filters.alpha.opacity > destOp)
		{
        	direction = -1;
        }

    	delta=Math.min(direction*diff,delta);
    	object.filters.alpha.opacity+=direction*delta;      
		if (object.filters.alpha.opacity != destOp)
		{
			 nereidFadeObjects[object.sourceIndex]=object;
			 nereidFadeTimers[object.sourceIndex]=setTimeout("nereidFade(nereidFadeObjects["+object.sourceIndex+"],"+destOp+","+rate+","+delta+")",rate);
		}
	}