	nereidFadeObjects = new Object();
	nereidFadeTimers = new Object();
	function nereidFade(object, destOp, rate, delta){
		if (!document.all)
	return
		if (object != '[object]'){  //do this so I can take a string too
	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);
	}
}
