anchor.diff:    endfunction
   endinstance
   
  -function MetaT extract_MetaT(Bit#(48) data);
  +function MetaT extract_meta_t(Bit#(48) data);
     Vector#(48, Bit#(1)) dataVec = unpack(data);
     Vector#(32, Bit#(1)) dstAddr = takeAt(0, dataVec);
     Vector#(16, Bit#(1)) etherType = takeAt(32, dataVec);
  
positive.code:   endfunction
  endinstance
  
  function StandardMetadata extract_StandardMetadata(Bit#(160) data);
    Vector#(160, Bit#(1)) dataVec = unpack(data);
    Vector#(9, Bit#(1)) ingress_port = takeAt(0, dataVec);
    Vector#(32, Bit#(1)) packet_length = takeAt(9, dataVec);
  
negative.code:   endfunction
  endinstance
  
  function RoutingReqT extract_routing_req_t(Bit#(32) data);
    Vector#(32, Bit#(1)) dataVec = unpack(data);
    Vector#(32, Bit#(1)) dstAddr = takeAt(0, dataVec);
    RoutingReqT hdr = defaultValue;
  