anchor.diff:  
   interface AxiSlaveEngine#(type buswidth, type busWidthBytes);
       interface GetPut#(TLPData#(16))   tlps;
  -    interface Axi3Slave#(40,buswidth,busWidthBytes,12)  slave3;
  -    interface Axi4Slave#(40,buswidth,busWidthBytes,12)  slave4;
  +    interface Axi3Server#(40,buswidth,busWidthBytes,12)  slave3;
  +    interface Axi4Server#(40,buswidth,busWidthBytes,12)  slave4;
       method Bool tlpOutFifoNotEmpty();
       interface Reg#(Bool) use4dw;
   endinterface: AxiSlaveEngine
  
positive.code: import ByteCompactor :: *;
  
  import AxiMasterSlave :: *;
  
  typedef struct {
      Bit#(32) timestamp;
  
negative.code: 		   tlp.be = 16'hfff0;
  	       end
  	       tlpOutFifo.enq(tlp);
             endmethod: address
  	   method ActionValue#(Axi4ReadResponse#(buswidth,12)) data() if (completionMimo.deqReadyN(fromInteger(valueOf(busWidthWords))));
  	      let data_v = completionMimo.first;
  	      completionMimo.deq(fromInteger(valueOf(busWidthWords)));
  	      completionTagMimo.deq(fromInteger(valueOf(busWidthWords)));
                Bit#(buswidth) v = 0;
  	      for (Integer i = 0; i < valueOf(busWidthWords); i = i+1)
  		 v[(i+1)*32-1:i*32] = byteSwap(data_v[i]);
  	      return Axi4ReadResponse { data: v, last: 0, id: zeroExtend(completionTagMimo.first[0]), code: 0 };
             endmethod: data
  	endinterface: read
      endinterface: slave4
     method Bool tlpOutFifoNotEmpty() = tlpOutFifo.notEmpty;
  