diff --git a/test_data/of13/bsn_gentable_clear_request.data b/test_data/of13/bsn_gentable_clear_request.data
index 911ee27..847af3c 100644
--- a/test_data/of13/bsn_gentable_clear_request.data
+++ b/test_data/of13/bsn_gentable_clear_request.data
@@ -18,7 +18,7 @@
 builder.setXid(0x12345678)
     .setChecksum(OFChecksum128.of(0xFEDCBA9876543210L, 0xFFEECCBBAA990000L))
     .setChecksumMask(OFChecksum128.of(0xFFFFFFFFFFFFFFFFL, 0xFFFFFFFFFFFF0000L))
-    .setTableId(20)
+    .setTableId(GenTableId.of(20))
 -- c
 obj = of_bsn_gentable_clear_request_new(OF_VERSION_1_3);
 of_bsn_gentable_clear_request_xid_set(obj, 0x12345678);
diff --git a/test_data/of13/bsn_gentable_desc_stats_reply.data b/test_data/of13/bsn_gentable_desc_stats_reply.data
index 64346c8..180a8a1 100644
--- a/test_data/of13/bsn_gentable_desc_stats_reply.data
+++ b/test_data/of13/bsn_gentable_desc_stats_reply.data
@@ -43,13 +43,13 @@
     .setEntries(
         ImmutableList.<OFBsnGentableDescStatsEntry>of(
             factory.buildBsnGentableDescStatsEntry()
-                .setTableId(0)
+                .setTableId(GenTableId.of(0))
                 .setName("table 0")
                 .setBucketsSize(32)
                 .setMaxEntries(64)
                 .build(),
             factory.buildBsnGentableDescStatsEntry()
-                .setTableId(1)
+                .setTableId(GenTableId.of(1))
                 .setName("table 1.........................")
                 .setBucketsSize(64)
                 .setMaxEntries(128)
diff --git a/test_data/of13/bsn_gentable_entry_add.data b/test_data/of13/bsn_gentable_entry_add.data
index d8db0f8..02c2bb4 100644
--- a/test_data/of13/bsn_gentable_entry_add.data
+++ b/test_data/of13/bsn_gentable_entry_add.data
@@ -39,17 +39,17 @@
 -- java
 builder.setXid(0x12345678)
     .setChecksum(OFChecksum128.of(0xFEDCBA9876543210L, 0xFFEECCBBAA998877L))
-    .setTableId(20)
+    .setTableId(GenTableId.of(20))
     .setKey(
         ImmutableList.<OFBsnTlv>of(
-            factory.bsnTlvPort(OFPort.of(5)),
-            factory.bsnTlvMac(MacAddress.of("01:23:45:67:89:ab"))
+            factory.bsnTlvs().port(OFPort.of(5)),
+            factory.bsnTlvs().mac(MacAddress.of("01:23:45:67:89:ab"))
         )
     )
     .setValue(
         ImmutableList.<OFBsnTlv>of(
-            factory.bsnTlvPort(OFPort.of(6)),
-            factory.bsnTlvMac(MacAddress.of("ff:ee:dd:cc:bb:aa"))
+            factory.bsnTlvs().port(OFPort.of(6)),
+            factory.bsnTlvs().mac(MacAddress.of("ff:ee:dd:cc:bb:aa"))
         )
     )
 -- c
diff --git a/test_data/of13/bsn_gentable_entry_delete.data b/test_data/of13/bsn_gentable_entry_delete.data
index 0f17bfd..58c6c03 100644
--- a/test_data/of13/bsn_gentable_entry_delete.data
+++ b/test_data/of13/bsn_gentable_entry_delete.data
@@ -23,11 +23,11 @@
     ])
 -- java
 builder.setXid(0x12345678)
-    .setTableId(20)
+    .setTableId(GenTableId.of(20))
     .setKey(
         ImmutableList.<OFBsnTlv>of(
-            factory.bsnTlvPort(OFPort.of(5)),
-            factory.bsnTlvMac(MacAddress.of("01:23:45:67:89:ab"))
+            factory.bsnTlvs().port(OFPort.of(5)),
+            factory.bsnTlvs().mac(MacAddress.of("01:23:45:67:89:ab"))
         )
     )
 -- c
diff --git a/test_data/of13/bsn_gentable_entry_desc_stats_reply.data b/test_data/of13/bsn_gentable_entry_desc_stats_reply.data
index 40de7dd..4035f4c 100644
--- a/test_data/of13/bsn_gentable_entry_desc_stats_reply.data
+++ b/test_data/of13/bsn_gentable_entry_desc_stats_reply.data
@@ -57,19 +57,19 @@
             factory.buildBsnGentableEntryDescStatsEntry()
                 .setChecksum(OFChecksum128.of(0xFEDCBA9876543210L, 0xFFEECCBBAA998800L))
                 .setKey(ImmutableList.<OFBsnTlv>of(
-                    factory.bsnTlvPort(OFPort.of(5))
+                    factory.bsnTlvs().port(OFPort.of(5))
                 ))
                 .setValue(ImmutableList.<OFBsnTlv>of(
-                    factory.bsnTlvMac(MacAddress.of("ff:ee:dd:cc:bb:00"))
+                    factory.bsnTlvs().mac(MacAddress.of("ff:ee:dd:cc:bb:00"))
                 ))
                 .build(),
             factory.buildBsnGentableEntryDescStatsEntry()
                 .setChecksum(OFChecksum128.of(0xFEDCBA9876543210L, 0xFFEECCBBAA998801L))
                 .setKey(ImmutableList.<OFBsnTlv>of(
-                    factory.bsnTlvPort(OFPort.of(6))
+                    factory.bsnTlvs().port(OFPort.of(6))
                 ))
                 .setValue(ImmutableList.<OFBsnTlv>of(
-                    factory.bsnTlvMac(MacAddress.of("ff:ee:dd:cc:bb:01"))
+                    factory.bsnTlvs().mac(MacAddress.of("ff:ee:dd:cc:bb:01"))
                 ))
                 .build()
         )
diff --git a/test_data/of13/bsn_gentable_entry_stats_reply.data b/test_data/of13/bsn_gentable_entry_stats_reply.data
index cd4ab62..255de88 100644
--- a/test_data/of13/bsn_gentable_entry_stats_reply.data
+++ b/test_data/of13/bsn_gentable_entry_stats_reply.data
@@ -60,20 +60,20 @@
         ImmutableList.<OFBsnGentableEntryStatsEntry>of(
             factory.bsnGentableEntryStatsEntry(
                 ImmutableList.<OFBsnTlv>of(
-                    factory.bsnTlvPort(OFPort.of(5))
+                    factory.bsnTlvs().port(OFPort.of(5))
                 ),
                 ImmutableList.<OFBsnTlv>of(
-                    factory.bsnTlvRxPackets(U64.of(100)),
-                    factory.bsnTlvTxPackets(U64.of(101))
+                    factory.bsnTlvs().rxPackets(U64.of(100)),
+                    factory.bsnTlvs().txPackets(U64.of(101))
                 )
             ),
             factory.bsnGentableEntryStatsEntry(
                 ImmutableList.<OFBsnTlv>of(
-                    factory.bsnTlvPort(OFPort.of(6))
+                    factory.bsnTlvs().port(OFPort.of(6))
                 ),
                 ImmutableList.<OFBsnTlv>of(
-                    factory.bsnTlvRxPackets(U64.of(100)),
-                    factory.bsnTlvTxPackets(U64.of(101))
+                    factory.bsnTlvs().rxPackets(U64.of(100)),
+                    factory.bsnTlvs().txPackets(U64.of(101))
                 )
             )
         )
