module t_flip_flop_dataflow (
    input       clk,        // Clock
    input       t,          // Inputs
    output      q,          // Output
    output      qbar);      //

    // INTERNAL WIRES
    wire        s, r;

    // JK FLIP-FLOP -----------------------------------
  
    // NAND3
    assign s = ~(t & clk & qbar);

    // NAND4
    assign r = ~(t & clk & q);

    // SR- LATCH -------------------------------------
    
    // NAND1
    assign q = ~(s & qbar);

    // NAND2
    assign qbar = ~(r & q);

endmodule