int stage = 0; if (!init && !primepump)
int stage; if (init) stage = 0; else if (primepump) stage = 1; else
    private static void outputDRAMCommands(OutputTraceNode output, boolean init, boolean primepump)     {	FilterTraceNode filter = (FilterTraceNode)output.getPrevious();	//don't do anything for a redundant buffer	if (output.oneOutput() && 	    InterTraceBuffer.getBuffer(output.getSingleEdge()).redundant())	    return;	//if we are in the init or primepump, set to zero	//if steady set to 3, used for addDRAMCommand(...)	int stage = 0;	if (!init && !primepump)	    stage = 3;	FilterInfo filterInfo = FilterInfo.getFilterInfo(filter);	//calculate the number of items sent	int items = filterInfo.totalItemsSent(init, primepump);		if (primepump)	    items -= filterInfo.primePumpItemsNotConsumed();		generateOutputDRAMCommands(output, init, primepump, filter, items, stage);	//take care of the primepump items not consumed in the primepump stage	//place them in the steady buffer.	if (primepump) {	    SpaceTimeBackend.println("PrimePump steady buffer outputs for " + output + " = " +				     filterInfo.primePumpItemsNotConsumed());	    	    generateOutputDRAMCommands(output, init, primepump, filter, 				       filterInfo.primePumpItemsNotConsumed(), 2);	}	    }