`default_nettype none

module top (
  input  wire       clk,

  input  wire sw1,
  input  wire sw2,

  output wire [7:0] anode,
  output wire [7:0] cathode
);

  localparam use_polyphony = 1'b1;

  logic [7:0] row_p, col_p;
  assign anode   = col_p;
  // assign cathode = ~row_p

  TBUF u0 (
    .O(cathode[0]),
    .I(1'b0),
    .OEN(~row_p[0])
  );

  TBUF u1 (
    .O(cathode[1]),
    .I(1'b0),
    .OEN(~row_p[1])
  );

  TBUF u2 (
    .O(cathode[2]),
    .I(1'b0),
    .OEN(~row_p[2])
  );

  TBUF u3 (
    .O(cathode[3]),
    .I(1'b0),
    .OEN(~row_p[3])
  );

  TBUF u4 (
    .O(cathode[4]),
    .I(1'b0),
    .OEN(~row_p[4])
  );

  TBUF u5 (
    .O(cathode[5]),
    .I(1'b0),
    .OEN(~row_p[5])
  );

  TBUF u6 (
    .O(cathode[6]),
    .I(1'b0),
    .OEN(~row_p[6])
  );

  TBUF u7 (
    .O(cathode[7]),
    .I(1'b0),
    .OEN(~row_p[7])
  );

  LEDMatrixAB_m inst_1 (
    .clk(clk),
    .rst(1'b0),

    .swA(sw1),
    .swB(sw2),

    .col(col_p),
    .row(row_p)
  );
endmodule
`default_nettype wire