anchor.diff:  
   interface P4TopIndication;
      method Action sonic_read_version_resp(Bit#(32) version);
  +`ifdef MTABLE
      method Action matchTableResponse(Bit#(32) key, Bit#(32) value);
  +`endif
   endinterface
   
   interface P4TopRequest;
  
positive.code:    endfunction
  
     Server#(RequestType, ResponseType) matchTable <- mkMatchTable();
  
     // read client interface
     FIFO#(MemRequest) reqFifo <-mkSizedFIFO(4);
  
negative.code:          writeDataFifo.enq(MemData {data: pack(v), tag:0, last:True});
        endmethod
  
  `ifdef MTABLE
        method Action matchTableRequest(Bit#(32) key, Bit#(32) value, Bit#(32) op);
          if (op == 0)
              matchTable.request.put(makeRequest(key, value, GET));
  