anchor.diff:  	    else begin
   	       respCnt <= new_respCnt;
   	    end
  -	    match {._idx, .wd} <- toGet(write_data_funnel.dataOut).get;
  -	    if(_idx != idx) begin
  -	       $display("ERROR mkMemwriteEngineBuf: bursts oo %d %d", idx, _idx);
  -	       $finish;
  -	    end
  +	    let wd <- toGet(write_data_buffs[idx]).get();
   	    // TODO: this last field should be set correctly to mark the end of bursts
   	    return MemData{data:wd, tag:new_tag, last:False};
   	 endmethod
  
positive.code:    Vector#(numServers, FIFO#(Bool))              outfs <- replicateM(mkSizedFIFO(1));
     Vector#(numServers, FIFOF#(MemengineCmd))    cmds_in <- replicateM(mkSizedFIFOF(1));
     Vector#(numServers, FIFOF#(Bit#(dataWidth)))  write_data_buffs <- replicateM(mkSizedBRAMFIFOF(bufferSizeBeats));
     Vector#(numServers, PipeOut#(Bit#(dataWidth))) write_data_output_pipes = map(toPipeOut, write_data_buffs); 
     BurstFunnel#(numServers,dataWidth) write_data_funnel <- mkBurstFunnel(bufferSizeBeats);
     zipWithM(mkConnection, write_data_output_pipes, write_data_funnel.dataIn);
        
     Reg#(Bit#(8))                    respCnt <- mkReg(0);
     Reg#(Bit#(TAdd#(1,serverIdxSz))) loadIdx <- mkReg(0);
  
negative.code: 	 if (cmd.len < extend(cmd.burstLen))
  	    x = truncate(cmd.len);
  	 loadf_c.enq(tuple2(truncate(loadIdx),cmd));
  	 //write_data_funnel.loadIdx(truncate(loadIdx));
  	 if (cond1) begin
  	    outs1[loadIdx] <= False;
  	 end
  