@Override
 public void funnel(OFInstructionIdBsnRequireVlanXlateVer13 message, PrimitiveSink sink) {
   // fixed value property type = 65535
   sink.putShort((short) 0xffff);
   // fixed value property length = 12
   sink.putShort((short) 0xc);
   // fixed value property experimenter = 0x5c16c7L
   sink.putInt(0x5c16c7);
   // fixed value property subtype = 0x8L
   sink.putInt(0x8);
 }
 @Override
 public void funnel(OFInstructionIdBsnDisableL3Ver14 message, PrimitiveSink sink) {
   // fixed value property type = 65535
   sink.putShort((short) 0xffff);
   // fixed value property length = 12
   sink.putShort((short) 0xc);
   // fixed value property experimenter = 0x5c16c7L
   sink.putInt(0x5c16c7);
   // fixed value property subtype = 0xdL
   sink.putInt(0xd);
 }
 @Override
 public void funnel(OFBsnBwEnableSetRequestVer11 message, PrimitiveSink sink) {
   // fixed value property version = 2
   sink.putByte((byte) 0x2);
   // fixed value property type = 4
   sink.putByte((byte) 0x4);
   // fixed value property length = 20
   sink.putShort((short) 0x14);
   sink.putLong(message.xid);
   // fixed value property experimenter = 0x5c16c7L
   sink.putInt(0x5c16c7);
   // fixed value property subtype = 0x12L
   sink.putInt(0x12);
   sink.putLong(message.enable);
 }
 @Override
 public void funnel(OFOxmTunnelIpv4SrcMaskedVer13 message, PrimitiveSink sink) {
   // fixed value property typeLen = 0x13f08L
   sink.putInt(0x13f08);
   message.value.putTo(sink);
   message.mask.putTo(sink);
 }
 @Override
 public void funnel(OFBsnVlanCounterStatsEntryVer13 message, PrimitiveSink sink) {
   // FIXME: skip funnel of length
   sink.putInt(message.vlanVid);
   // skip pad (4 bytes)
   FunnelUtils.putList(message.values, sink);
 }
 @Override
 public void funnel(OFOxmBsnVlanXlatePortGroupIdMaskedVer12 message, PrimitiveSink sink) {
   // fixed value property typeLen = 0x32308L
   sink.putInt(0x32308);
   message.value.putTo(sink);
   message.mask.putTo(sink);
 }
 @Override
 public void funnel(OFBsnSetMirroringVer14 message, PrimitiveSink sink) {
   // fixed value property version = 5
   sink.putByte((byte) 0x5);
   // fixed value property type = 4
   sink.putByte((byte) 0x4);
   // fixed value property length = 20
   sink.putShort((short) 0x14);
   sink.putLong(message.xid);
   // fixed value property experimenter = 0x5c16c7L
   sink.putInt(0x5c16c7);
   // fixed value property subtype = 0x3L
   sink.putInt(0x3);
   sink.putShort(message.reportMirrorPorts);
   // skip pad (3 bytes)
 }
 @Override
 public void funnel(OFBsnSetLacpReplyVer14 message, PrimitiveSink sink) {
   // fixed value property version = 5
   sink.putByte((byte) 0x5);
   // fixed value property type = 4
   sink.putByte((byte) 0x4);
   // fixed value property length = 24
   sink.putShort((short) 0x18);
   sink.putLong(message.xid);
   // fixed value property experimenter = 0x5c16c7L
   sink.putInt(0x5c16c7);
   // fixed value property subtype = 0x2aL
   sink.putInt(0x2a);
   sink.putLong(message.status);
   message.portNo.putTo(sink);
 }
 @Override
 public void funnel(OFOxmArpTpaMaskedVer12 message, PrimitiveSink sink) {
   // fixed value property typeLen = 0x80002f08L
   sink.putInt((int) 0x80002f08);
   message.value.putTo(sink);
   message.mask.putTo(sink);
 }
 @Override
 public void funnel(OFOxmBsnL3InterfaceClassIdMaskedVer12 message, PrimitiveSink sink) {
   // fixed value property typeLen = 0x30908L
   sink.putInt(0x30908);
   message.value.putTo(sink);
   message.mask.putTo(sink);
 }
 @Override
 public void funnel(OFOxmBsnUdf1MaskedVer12 message, PrimitiveSink sink) {
   // fixed value property typeLen = 0x31308L
   sink.putInt(0x31308);
   message.value.putTo(sink);
   message.mask.putTo(sink);
 }
 @Override
 public void funnel(OFOxmIcmpv4CodeMaskedVer12 message, PrimitiveSink sink) {
   // fixed value property typeLen = 0x80002902L
   sink.putInt((int) 0x80002902);
   message.value.putTo(sink);
   message.mask.putTo(sink);
 }
 @Override
 public void funnel(OFOxmSctpDstMaskedVer14 message, PrimitiveSink sink) {
   // fixed value property typeLen = 0x80002504L
   sink.putInt((int) 0x80002504);
   message.value.putTo(sink);
   message.mask.putTo(sink);
 }
 /** @inheritDoc */
 @Override
 public PrimitiveSink putInt(final int theInt) {
   for (PrimitiveSink aSink : this) {
     aSink.putInt(theInt);
   }
   return this;
 }
 @Override
 public void funnel(OFOxmBsnVxlanNetworkIdMaskedVer14 message, PrimitiveSink sink) {
   // fixed value property typeLen = 0x32b08L
   sink.putInt(0x32b08);
   message.value.putTo(sink);
   message.mask.putTo(sink);
 }
 @Override
 public void funnel(OFFlowStatsEntryVer10 message, PrimitiveSink sink) {
   // FIXME: skip funnel of length
   message.tableId.putTo(sink);
   // skip pad (1 bytes)
   message.match.putTo(sink);
   sink.putLong(message.durationSec);
   sink.putLong(message.durationNsec);
   sink.putInt(message.priority);
   sink.putInt(message.idleTimeout);
   sink.putInt(message.hardTimeout);
   // skip pad (6 bytes)
   message.cookie.putTo(sink);
   message.packetCount.putTo(sink);
   message.byteCount.putTo(sink);
   FunnelUtils.putList(message.actions, sink);
 }
 @Override
 public void funnel(OFBsnGentableEntryAddVer13 message, PrimitiveSink sink) {
   // fixed value property version = 4
   sink.putByte((byte) 0x4);
   // fixed value property type = 4
   sink.putByte((byte) 0x4);
   // FIXME: skip funnel of length
   sink.putLong(message.xid);
   // fixed value property experimenter = 0x5c16c7L
   sink.putInt(0x5c16c7);
   // fixed value property subtype = 0x2eL
   sink.putInt(0x2e);
   message.tableId.putTo(sink);
   // FIXME: skip funnel of keyLength
   message.checksum.putTo(sink);
   FunnelUtils.putList(message.key, sink);
   FunnelUtils.putList(message.value, sink);
 }
 @Override
 public void funnel(OFBsnPduTxRequestVer10 message, PrimitiveSink sink) {
   // fixed value property version = 1
   sink.putByte((byte) 0x1);
   // fixed value property type = 4
   sink.putByte((byte) 0x4);
   // FIXME: skip funnel of length
   sink.putLong(message.xid);
   // fixed value property experimenter = 0x5c16c7L
   sink.putInt(0x5c16c7);
   // fixed value property subtype = 0x1fL
   sink.putInt(0x1f);
   sink.putLong(message.txIntervalMs);
   message.portNo.putTo(sink);
   sink.putShort(message.slotNum);
   // skip pad (3 bytes)
   sink.putBytes(message.data);
 }
 @Override
 public void funnel(OFBsnGentableBucketStatsReplyVer13 message, PrimitiveSink sink) {
   // fixed value property version = 4
   sink.putByte((byte) 0x4);
   // fixed value property type = 19
   sink.putByte((byte) 0x13);
   // FIXME: skip funnel of length
   sink.putLong(message.xid);
   // fixed value property statsType = 65535
   sink.putShort((short) 0xffff);
   OFStatsReplyFlagsSerializerVer13.putTo(message.flags, sink);
   // skip pad (4 bytes)
   // fixed value property experimenter = 0x5c16c7L
   sink.putInt(0x5c16c7);
   // fixed value property subtype = 0x5L
   sink.putInt(0x5);
   FunnelUtils.putList(message.entries, sink);
 }
 @Override
 public void funnel(OFBsnGentableDescStatsRequestVer13 message, PrimitiveSink sink) {
   // fixed value property version = 4
   sink.putByte((byte) 0x4);
   // fixed value property type = 18
   sink.putByte((byte) 0x12);
   // fixed value property length = 24
   sink.putShort((short) 0x18);
   sink.putLong(message.xid);
   // fixed value property statsType = 65535
   sink.putShort((short) 0xffff);
   OFStatsRequestFlagsSerializerVer13.putTo(message.flags, sink);
   // skip pad (4 bytes)
   // fixed value property experimenter = 0x5c16c7L
   sink.putInt(0x5c16c7);
   // fixed value property subtype = 0x4L
   sink.putInt(0x4);
 }
 @Override
 public void funnel(OFFlowStatsEntryVer14 message, PrimitiveSink sink) {
   // FIXME: skip funnel of length
   message.tableId.putTo(sink);
   // skip pad (1 bytes)
   sink.putLong(message.durationSec);
   sink.putLong(message.durationNsec);
   sink.putInt(message.priority);
   sink.putInt(message.idleTimeout);
   sink.putInt(message.hardTimeout);
   OFFlowModFlagsSerializerVer14.putTo(message.flags, sink);
   sink.putInt(message.importance);
   // skip pad (2 bytes)
   message.cookie.putTo(sink);
   message.packetCount.putTo(sink);
   message.byteCount.putTo(sink);
   message.match.putTo(sink);
   FunnelUtils.putList(message.instructions, sink);
 }
 @Override
 public void funnel(OFBsnImageDescStatsReplyVer14 message, PrimitiveSink sink) {
   // fixed value property version = 5
   sink.putByte((byte) 0x5);
   // fixed value property type = 19
   sink.putByte((byte) 0x13);
   // fixed value property length = 536
   sink.putShort((short) 0x218);
   sink.putLong(message.xid);
   // fixed value property statsType = 65535
   sink.putShort((short) 0xffff);
   OFStatsReplyFlagsSerializerVer14.putTo(message.flags, sink);
   // skip pad (4 bytes)
   // fixed value property experimenter = 0x5c16c7L
   sink.putInt(0x5c16c7);
   // fixed value property subtype = 0xeL
   sink.putInt(0xe);
   sink.putUnencodedChars(message.imageChecksum);
   sink.putUnencodedChars(message.startupConfigChecksum);
 }
 @Override
 public void funnel(OFBsnSetPktinSuppressionRequestVer12 message, PrimitiveSink sink) {
   // fixed value property version = 3
   sink.putByte((byte) 0x3);
   // fixed value property type = 4
   sink.putByte((byte) 0x4);
   // fixed value property length = 32
   sink.putShort((short) 0x20);
   sink.putLong(message.xid);
   // fixed value property experimenter = 0x5c16c7L
   sink.putInt(0x5c16c7);
   // fixed value property subtype = 0xbL
   sink.putInt(0xb);
   sink.putBoolean(message.enabled);
   // skip pad (1 bytes)
   sink.putInt(message.idleTimeout);
   sink.putInt(message.hardTimeout);
   sink.putInt(message.priority);
   message.cookie.putTo(sink);
 }
 @Override
 public void funnel(OFOxmBsnInnerEthDstVer14 message, PrimitiveSink sink) {
   // fixed value property typeLen = 0x32c06L
   sink.putInt(0x32c06);
   message.value.putTo(sink);
 }
 @Override
 public void funnel(OFOxmIpDscpVer13 message, PrimitiveSink sink) {
   // fixed value property typeLen = 0x80001001L
   sink.putInt((int) 0x80001001);
   message.value.putTo(sink);
 }
 @Override
 public void funnel(OFOxmVlanVidVer14 message, PrimitiveSink sink) {
   // fixed value property typeLen = 0x80000c02L
   sink.putInt((int) 0x80000c02);
   message.value.putTo(sink);
 }
 @Override
 public void funnel(OFOxmIpv6DstVer12 message, PrimitiveSink sink) {
   // fixed value property typeLen = 0x80003610L
   sink.putInt((int) 0x80003610);
   message.value.putTo(sink);
 }
 @Override
 public void funnel(OFOxmBsnGlobalVrfAllowedVer12 message, PrimitiveSink sink) {
   // fixed value property typeLen = 0x30601L
   sink.putInt(0x30601);
   message.value.putTo(sink);
 }
 @Override
 public void funnel(OFOxmIpv6FlabelVer14 message, PrimitiveSink sink) {
   // fixed value property typeLen = 0x80003804L
   sink.putInt((int) 0x80003804);
   message.value.putTo(sink);
 }
 @Override
 public void funnel(OFOxmInPhyPortVer13 message, PrimitiveSink sink) {
   // fixed value property typeLen = 0x80000204L
   sink.putInt((int) 0x80000204);
   message.value.putTo(sink);
 }