anchor.diff:  endinterface
   (* always_ready, always_enabled *)
   interface TriModeMac;
  -    interface TrimodemacbviGmii     gmii;
  -    interface TrimodemacbviMac     mac;
  +    interface TrimodemacGmii     gmii;
  +    interface TrimodemacMac     mac;
       method Bit#(1)     mdc();
  -    interface TrimodemacbviMdio     mdio;
  -    interface TrimodemacbviPause     pause;
  -    interface TrimodemacbviRx     rx;
  -    interface AxiStreamMaster#(8)    rx_axis_mac;
  -    interface TrimodemacbviS_axi     s_axi;
  +    interface TrimodemacMdio     mdio;
  +    interface TrimodemacPause     pause;
  +    interface TrimodemacRx     rx;
  +    interface TrimodemacRx_axis_mac    rx_axis_mac;
  +    interface TrimodemacS_axi     s_axi;
       method Bit#(1)     speedis100();
       method Bit#(1)     speedis10100();
  -    interface TrimodemacbviTx     tx;
  -    interface AxiStreamSlave#(8)     tx_axis_mac;
  +    interface TrimodemacTx     tx;
  +    interface TrimodemacTx_axis_mac     tx_axis_mac;
   endinterface
   import "BVI" tri_mode_ethernet_mac_0 =
  -module mkTriModeMac#(Clock gtx_clk, Clock s_axi_aclk, Reset glbl_rstn, Reset rx_axi_rstn, Reset s_axi_resetn, Reset tx_axi_rstn)(TriModeMac);
  +module mkTriModeMacBvi#(Clock gtx_clk, Clock s_axi_aclk, Reset glbl_rstn, Reset rx_axi_rstn, Reset s_axi_resetn, Reset tx_axi_rstn)(TriModeMac);
       default_clock clk();
       default_reset rst();
           input_reset glbl_rstn(glbl_rstn) = glbl_rstn;
  
positive.code: endinterface
  (* always_ready, always_enabled *)
  (* always_ready, always_enabled *)
  interface TrimodemacbviMac;
      method Bit#(1)     irq();
  endinterface
  (* always_ready, always_enabled *)
  interface TrimodemacbviMdio;
      method Action      i(Bit#(1) v);
      method Bit#(1)     o();
      method Bit#(1)     t();
  endinterface
  (* always_ready, always_enabled *)
  interface TrimodemacbviPause;
      method Action      req(Bit#(1) v);
      method Action      val(Bit#(16) v);
  endinterface
  (* always_ready, always_enabled *)
  interface TrimodemacbviRx;
      method Bit#(5)     axis_filter_tuser();
      interface Clock     mac_aclk;
      method Reset     reset();
  
negative.code:         method gmii_tx_er tx_er();
          method gmii_txd txd();
      endinterface
      interface TrimodemacMac     mac;
          method mac_irq irq() clocked_by (s_axi_aclk) reset_by (s_axi_resetn);
      endinterface
      method mdc mdc();
      interface TrimodemacMdio     mdio;
          method i(mdio_i) enable((*inhigh*) EN_mdio_i);
          method mdio_o o();
          method mdio_t t();
      endinterface
      interface TrimodemacRx     rx;
          output_clock mac_aclk(rx_mac_aclk);
          output_reset reset(rx_reset) clocked_by (rx_mac_aclk);
          method rx_axis_filter_tuser axis_filter_tuser() clocked_by (rx_mac_aclk) reset_by (rx_reset);
          method rx_statistics_valid statistics_valid() clocked_by (rx_mac_aclk) reset_by (rx_reset);
          method rx_statistics_vector statistics_vector() clocked_by (rx_mac_aclk) reset_by (rx_reset);
      endinterface
      interface TrimodemacRx_axis_mac rx_axis_mac;
         method rx_axis_mac_tdata tdata() clocked_by (rx_mac_aclk) reset_by (rx_reset);
         method rx_axis_mac_tlast tlast() clocked_by (rx_mac_aclk) reset_by (rx_reset);
         method rx_axis_mac_tuser tuser() clocked_by (rx_mac_aclk) reset_by (rx_reset);
         method rx_axis_mac_tvalid tvalid() clocked_by (rx_mac_aclk) reset_by (rx_reset);
      endinterface
      interface TrimodemacS_axi     s_axi;
          method araddr(s_axi_araddr) clocked_by (s_axi_aclk) reset_by (s_axi_resetn) enable((*inhigh*) EN_s_axi_araddr);
          method s_axi_arready arready() clocked_by (s_axi_aclk) reset_by (s_axi_resetn);
          method arvalid(s_axi_arvalid) clocked_by (s_axi_aclk) reset_by (s_axi_resetn) enable((*inhigh*) EN_s_axi_arvalid);
  