[fidl][go] Decoding support for V2 unions

This CL adds support for decoding V2 unions.

GIDL tests adding coverage for V2 unions are added in:
Id2a7012179134c0b885de0a0361c17abb7652704

Change-Id: I7c63d52af5b5b6255b1517a7d13d61a3ec6c2bdd
Reviewed-on: https://fuchsia-review.googlesource.com/c/third_party/go/+/553008
Commit-Queue: Benjamin Prosnitz <bprosnitz@google.com>
Reviewed-by: Mitchell Kember <mkember@google.com>
diff --git a/api/fuchsia.txt b/api/fuchsia.txt
index 9391a22..9f4e5cb 100644
--- a/api/fuchsia.txt
+++ b/api/fuchsia.txt
@@ -1003,57 +1003,59 @@
 pkg syscall/zx/fdio, type Vtype uint32
 pkg syscall/zx/fidl, const ErrBadHandleEncoding = 12
 pkg syscall/zx/fidl, const ErrBadHandleEncoding ErrorCode
+pkg syscall/zx/fidl, const ErrBadInlineIndicatorEncoding = 15
+pkg syscall/zx/fidl, const ErrBadInlineIndicatorEncoding ErrorCode
 pkg syscall/zx/fidl, const ErrBadRefEncoding = 14
 pkg syscall/zx/fidl, const ErrBadRefEncoding ErrorCode
-pkg syscall/zx/fidl, const ErrDuplicateTxidReceived = 31
+pkg syscall/zx/fidl, const ErrDuplicateTxidReceived = 32
 pkg syscall/zx/fidl, const ErrDuplicateTxidReceived ErrorCode
-pkg syscall/zx/fidl, const ErrDuplicateTxidWaiting = 32
+pkg syscall/zx/fidl, const ErrDuplicateTxidWaiting = 33
 pkg syscall/zx/fidl, const ErrDuplicateTxidWaiting ErrorCode
-pkg syscall/zx/fidl, const ErrExceededMaxOutOfLineDepth = 36
+pkg syscall/zx/fidl, const ErrExceededMaxOutOfLineDepth = 37
 pkg syscall/zx/fidl, const ErrExceededMaxOutOfLineDepth ErrorCode
-pkg syscall/zx/fidl, const ErrIncorrectHandleType = 33
+pkg syscall/zx/fidl, const ErrIncorrectHandleType = 34
 pkg syscall/zx/fidl, const ErrIncorrectHandleType ErrorCode
-pkg syscall/zx/fidl, const ErrInvalidBitsValue = 18
+pkg syscall/zx/fidl, const ErrInvalidBitsValue = 19
 pkg syscall/zx/fidl, const ErrInvalidBitsValue ErrorCode
 pkg syscall/zx/fidl, const ErrInvalidBoolValue = 9
 pkg syscall/zx/fidl, const ErrInvalidBoolValue ErrorCode
-pkg syscall/zx/fidl, const ErrInvalidEmptyStruct = 21
+pkg syscall/zx/fidl, const ErrInvalidEmptyStruct = 22
 pkg syscall/zx/fidl, const ErrInvalidEmptyStruct ErrorCode
-pkg syscall/zx/fidl, const ErrInvalidEnumValue = 19
+pkg syscall/zx/fidl, const ErrInvalidEnumValue = 20
 pkg syscall/zx/fidl, const ErrInvalidEnumValue ErrorCode
 pkg syscall/zx/fidl, const ErrInvalidInlineType = 2
 pkg syscall/zx/fidl, const ErrInvalidInlineType ErrorCode
-pkg syscall/zx/fidl, const ErrInvalidNumBytesInEnvelope = 22
+pkg syscall/zx/fidl, const ErrInvalidNumBytesInEnvelope = 23
 pkg syscall/zx/fidl, const ErrInvalidNumBytesInEnvelope ErrorCode
-pkg syscall/zx/fidl, const ErrInvalidNumHandlesInEnvelope = 23
+pkg syscall/zx/fidl, const ErrInvalidNumHandlesInEnvelope = 24
 pkg syscall/zx/fidl, const ErrInvalidNumHandlesInEnvelope ErrorCode
 pkg syscall/zx/fidl, const ErrInvalidPointerType = 3
 pkg syscall/zx/fidl, const ErrInvalidPointerType ErrorCode
-pkg syscall/zx/fidl, const ErrInvalidUnionTag = 16
+pkg syscall/zx/fidl, const ErrInvalidUnionTag = 17
 pkg syscall/zx/fidl, const ErrInvalidUnionTag ErrorCode
-pkg syscall/zx/fidl, const ErrInvalidXUnionTag = 17
+pkg syscall/zx/fidl, const ErrInvalidXUnionTag = 18
 pkg syscall/zx/fidl, const ErrInvalidXUnionTag ErrorCode
-pkg syscall/zx/fidl, const ErrMissingMarshalerContext = 29
+pkg syscall/zx/fidl, const ErrMissingMarshalerContext = 30
 pkg syscall/zx/fidl, const ErrMissingMarshalerContext ErrorCode
-pkg syscall/zx/fidl, const ErrMissingRequiredHandleRights = 26
+pkg syscall/zx/fidl, const ErrMissingRequiredHandleRights = 27
 pkg syscall/zx/fidl, const ErrMissingRequiredHandleRights ErrorCode
 pkg syscall/zx/fidl, const ErrNonZeroPadding = 13
 pkg syscall/zx/fidl, const ErrNonZeroPadding ErrorCode
 pkg syscall/zx/fidl, const ErrNotEnoughHandles = 10
 pkg syscall/zx/fidl, const ErrNotEnoughHandles ErrorCode
-pkg syscall/zx/fidl, const ErrPayloadTooSmall = 20
+pkg syscall/zx/fidl, const ErrPayloadTooSmall = 21
 pkg syscall/zx/fidl, const ErrPayloadTooSmall ErrorCode
-pkg syscall/zx/fidl, const ErrResponseWithoutRequest = 30
+pkg syscall/zx/fidl, const ErrResponseWithoutRequest = 31
 pkg syscall/zx/fidl, const ErrResponseWithoutRequest ErrorCode
-pkg syscall/zx/fidl, const ErrStringNotUTF8 = 24
+pkg syscall/zx/fidl, const ErrStringNotUTF8 = 25
 pkg syscall/zx/fidl, const ErrStringNotUTF8 ErrorCode
 pkg syscall/zx/fidl, const ErrStringTooLong = 5
 pkg syscall/zx/fidl, const ErrStringTooLong ErrorCode
-pkg syscall/zx/fidl, const ErrStructIsNotPayload = 15
+pkg syscall/zx/fidl, const ErrStructIsNotPayload = 16
 pkg syscall/zx/fidl, const ErrStructIsNotPayload ErrorCode
 pkg syscall/zx/fidl, const ErrTooManyHandles = 11
 pkg syscall/zx/fidl, const ErrTooManyHandles ErrorCode
-pkg syscall/zx/fidl, const ErrUnableToReduceHandleRights = 27
+pkg syscall/zx/fidl, const ErrUnableToReduceHandleRights = 28
 pkg syscall/zx/fidl, const ErrUnableToReduceHandleRights ErrorCode
 pkg syscall/zx/fidl, const ErrUnexpectedNullHandle = 7
 pkg syscall/zx/fidl, const ErrUnexpectedNullHandle ErrorCode
@@ -1061,26 +1063,27 @@
 pkg syscall/zx/fidl, const ErrUnexpectedNullRef ErrorCode
 pkg syscall/zx/fidl, const ErrUnexpectedOrdinal = 6
 pkg syscall/zx/fidl, const ErrUnexpectedOrdinal ErrorCode
-pkg syscall/zx/fidl, const ErrUnknownMagic = 25
+pkg syscall/zx/fidl, const ErrUnknownMagic = 26
 pkg syscall/zx/fidl, const ErrUnknownMagic ErrorCode
 pkg syscall/zx/fidl, const ErrUnknownOrdinal = 1
 pkg syscall/zx/fidl, const ErrUnknownOrdinal ErrorCode
-pkg syscall/zx/fidl, const ErrUnspecifiedHandleRights = 28
+pkg syscall/zx/fidl, const ErrUnspecifiedHandleRights = 29
 pkg syscall/zx/fidl, const ErrUnspecifiedHandleRights ErrorCode
-pkg syscall/zx/fidl, const ErrUnspecifiedHandleType = 34
+pkg syscall/zx/fidl, const ErrUnspecifiedHandleType = 35
 pkg syscall/zx/fidl, const ErrUnspecifiedHandleType ErrorCode
-pkg syscall/zx/fidl, const ErrValueTypeHandles = 35
+pkg syscall/zx/fidl, const ErrValueTypeHandles = 36
 pkg syscall/zx/fidl, const ErrValueTypeHandles ErrorCode
 pkg syscall/zx/fidl, const ErrVectorTooLong = 4
 pkg syscall/zx/fidl, const ErrVectorTooLong ErrorCode
+pkg syscall/zx/fidl, const FidlV2WireFormatFlagMask = 2
+pkg syscall/zx/fidl, const FidlV2WireFormatFlagMask ideal-int
 pkg syscall/zx/fidl, const FidlWireFormatMagicNumberInitial = 1
 pkg syscall/zx/fidl, const FidlWireFormatMagicNumberInitial ideal-int
-pkg syscall/zx/fidl, const FidlV2WireFormatFlagMask = 1
-pkg syscall/zx/fidl, const FidlV2WireFormatFlagMask ideal-int
 pkg syscall/zx/fidl, const Invalid = 0
 pkg syscall/zx/fidl, const Invalid ErrorCode
 pkg syscall/zx/fidl, const ProtocolRights = 61454
 pkg syscall/zx/fidl, const ProtocolRights zx.Rights
+pkg syscall/zx/fidl, func AllowV2WireFormatDecoding()
 pkg syscall/zx/fidl, func CreateLazyMarshaler(interface{}) Marshaler
 pkg syscall/zx/fidl, func CreateMarshaler(interface{}) (Marshaler, error)
 pkg syscall/zx/fidl, func GetMarshalerContext(context.Context) (MarshalerContext, bool)
@@ -4163,7 +4166,7 @@
 pkg syscall/zx/logger, const MaxLogSelectors uint8
 pkg syscall/zx/logger, const MaxTagLenBytes = 63
 pkg syscall/zx/logger, const MaxTagLenBytes uint8
-pkg syscall/zx/logger, const MaxTags = 8
+pkg syscall/zx/logger, const MaxTags = 16
 pkg syscall/zx/logger, const MaxTags uint8
 pkg syscall/zx/logger, const MaxTagsPerLogMessage = 5
 pkg syscall/zx/logger, const MaxTagsPerLogMessage uint8
@@ -4714,12 +4717,6 @@
 pkg syscall/zx/net/stack, const ForwardingDestinationNextHop ideal-int
 pkg syscall/zx/net/stack, const LogName = "fuchsia.net.stack.Log"
 pkg syscall/zx/net/stack, const LogName ideal-string
-pkg syscall/zx/net/stack, const LogSetLogLevelOrdinal = 6911347848628159824
-pkg syscall/zx/net/stack, const LogSetLogLevelOrdinal uint64
-pkg syscall/zx/net/stack, const LogSetLogLevelResultErr = 2
-pkg syscall/zx/net/stack, const LogSetLogLevelResultErr ideal-int
-pkg syscall/zx/net/stack, const LogSetLogLevelResultResponse = 1
-pkg syscall/zx/net/stack, const LogSetLogLevelResultResponse ideal-int
 pkg syscall/zx/net/stack, const LogSetLogPacketsOrdinal = 2411119378094307214
 pkg syscall/zx/net/stack, const LogSetLogPacketsOrdinal uint64
 pkg syscall/zx/net/stack, const PhysicalStatusDown = 1
@@ -4826,8 +4823,6 @@
 pkg syscall/zx/net/stack, func DeviceDefinitionWithIp(network.DeviceWithCtxInterface) DeviceDefinition
 pkg syscall/zx/net/stack, func ForwardingDestinationWithDeviceId(uint64) ForwardingDestination
 pkg syscall/zx/net/stack, func ForwardingDestinationWithNextHop(net.IpAddress) ForwardingDestination
-pkg syscall/zx/net/stack, func LogSetLogLevelResultWithErr(Error) LogSetLogLevelResult
-pkg syscall/zx/net/stack, func LogSetLogLevelResultWithResponse(LogSetLogLevelResponse) LogSetLogLevelResult
 pkg syscall/zx/net/stack, func NewLogWithCtxInterfaceRequest() (LogWithCtxInterfaceRequest, *LogWithCtxInterface, error)
 pkg syscall/zx/net/stack, func NewStackWithCtxInterfaceRequest() (StackWithCtxInterfaceRequest, *StackWithCtxInterface, error)
 pkg syscall/zx/net/stack, func StackAddEthernetInterfaceResultWithErr(Error) StackAddEthernetInterfaceResult
@@ -4888,13 +4883,7 @@
 pkg syscall/zx/net/stack, method (*InterfaceInfo) Marshaler() fidl.Marshaler
 pkg syscall/zx/net/stack, method (*InterfaceProperties) Marshaler() fidl.Marshaler
 pkg syscall/zx/net/stack, method (*LogEventProxy) Handle() *zx.Handle
-pkg syscall/zx/net/stack, method (*LogSetLogLevelResponse) Marshaler() fidl.Marshaler
-pkg syscall/zx/net/stack, method (*LogSetLogLevelResult) Ordinal() uint64
-pkg syscall/zx/net/stack, method (*LogSetLogLevelResult) SetErr(Error)
-pkg syscall/zx/net/stack, method (*LogSetLogLevelResult) SetResponse(LogSetLogLevelResponse)
-pkg syscall/zx/net/stack, method (*LogSetLogLevelResult) Which() I_logSetLogLevelResultTag
 pkg syscall/zx/net/stack, method (*LogWithCtxInterface) Handle() *zx.Handle
-pkg syscall/zx/net/stack, method (*LogWithCtxInterface) SetLogLevel(context.Context, logger.LogLevelFilter) (LogSetLogLevelResult, error)
 pkg syscall/zx/net/stack, method (*LogWithCtxInterface) SetLogPackets(context.Context, bool) error
 pkg syscall/zx/net/stack, method (*LogWithCtxInterfaceRequest) Handle() *zx.Handle
 pkg syscall/zx/net/stack, method (*LogWithCtxStub) Dispatch(fidl.DispatchArgs) (fidl.Message, bool, error)
@@ -5025,7 +5014,6 @@
 pkg syscall/zx/net/stack, type ForwardingEntry struct, Subnet net.Subnet
 pkg syscall/zx/net/stack, type I_deviceDefinitionTag uint64
 pkg syscall/zx/net/stack, type I_forwardingDestinationTag uint64
-pkg syscall/zx/net/stack, type I_logSetLogLevelResultTag uint64
 pkg syscall/zx/net/stack, type I_stackAddEthernetInterfaceResultTag uint64
 pkg syscall/zx/net/stack, type I_stackAddForwardingEntryResultTag uint64
 pkg syscall/zx/net/stack, type I_stackAddInterfaceAddressResultTag uint64
@@ -5063,13 +5051,7 @@
 pkg syscall/zx/net/stack, type InterfaceProperties struct, Topopath string
 pkg syscall/zx/net/stack, type LogEventProxy struct
 pkg syscall/zx/net/stack, type LogEventProxy struct, embedded zx.Channel
-pkg syscall/zx/net/stack, type LogSetLogLevelResponse struct
-pkg syscall/zx/net/stack, type LogSetLogLevelResult struct
-pkg syscall/zx/net/stack, type LogSetLogLevelResult struct, Err Error
-pkg syscall/zx/net/stack, type LogSetLogLevelResult struct, Response LogSetLogLevelResponse
-pkg syscall/zx/net/stack, type LogSetLogLevelResult struct, embedded I_logSetLogLevelResultTag
-pkg syscall/zx/net/stack, type LogWithCtx interface { SetLogLevel, SetLogPackets }
-pkg syscall/zx/net/stack, type LogWithCtx interface, SetLogLevel(context.Context, logger.LogLevelFilter) (LogSetLogLevelResult, error)
+pkg syscall/zx/net/stack, type LogWithCtx interface { SetLogPackets }
 pkg syscall/zx/net/stack, type LogWithCtx interface, SetLogPackets(context.Context, bool) error
 pkg syscall/zx/net/stack, type LogWithCtxInterface struct
 pkg syscall/zx/net/stack, type LogWithCtxInterface struct, embedded zx.Channel
@@ -8563,4 +8545,4 @@
 pkg syscall/zx/posix/socket, type TcpInfo struct, SndSsthreshPresent bool
 pkg syscall/zx/posix/socket, type TcpInfo struct, State TcpState
 pkg syscall/zx/posix/socket, type TcpInfo struct, StatePresent bool
-pkg syscall/zx/posix/socket, type TcpState uint32
\ No newline at end of file
+pkg syscall/zx/posix/socket, type TcpState uint32
diff --git a/regen-fidl b/regen-fidl
index 6293e7d..ba618ca 100755
--- a/regen-fidl
+++ b/regen-fidl
@@ -118,8 +118,6 @@
   --files sdk/fidl/fuchsia.mem/*.fidl \
   --files sdk/fidl/fuchsia.io2/*.fidl \
   --files sdk/fidl/fuchsia.io/*.fidl \
-  --files sdk/fidl/fuchsia.diagnostics/*.fidl \
-  --files sdk/fidl/fuchsia.logger/*.fidl \
   --files sdk/fidl/fuchsia.net/*.fidl \
   --files sdk/fidl/fuchsia.net.name/*.fidl \
   --files sdk/fidl/fuchsia.hardware.ethernet/*.fidl \
diff --git a/src/syscall/zx/diagnostics/impl.go b/src/syscall/zx/diagnostics/impl.go
index eb19153..41e7894 100644
--- a/src/syscall/zx/diagnostics/impl.go
+++ b/src/syscall/zx/diagnostics/impl.go
@@ -299,8 +299,8 @@
 }
 
 type BatchIteratorGetNextResponse struct {
-	_     struct{}           `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Batch []FormattedContent `fidl_offset_v1:"0" fidl_bounds:"64"`
+	_     struct{}           `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Batch []FormattedContent `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"64"`
 }
 
 var _mBatchIteratorGetNextResponse = _bindings.CreateLazyMarshaler(BatchIteratorGetNextResponse{})
@@ -312,7 +312,7 @@
 // A selector defining a set of nodes to match, for which the entire subtree including
 // those nodes are selected.
 type SubtreeSelector struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
+	_ struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
 	// A vector of StringSelectors which serve as a pattern matcher
 	//   for paths through a hierarchy of named nodes. Each entry in the vector
 	//   is a selector for a single named node in a data hierarchy. The vector
@@ -325,7 +325,7 @@
 	// will match all nodes named d which are below some child of node b.
 	//    root/a/b/c*
 	// will match all nodes below b which start with the character "c".
-	NodePath []StringSelector `fidl_offset_v1:"0" fidl_bounds:"100"`
+	NodePath []StringSelector `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"100"`
 }
 
 var _mSubtreeSelector = _bindings.CreateLazyMarshaler(SubtreeSelector{})
@@ -337,7 +337,7 @@
 // A selector defining a set of nodes to match, and on those matched nodes a set of named
 // properties to match.
 type PropertySelector struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8"`
+	_ struct{} `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
 	// A vector of StringSelectors which serve as a pattern matcher
 	//   for paths through a hierarchy of named nodes. Each entry in the vector
 	//   is a selector for a single named node in a data hierarchy. The vector
@@ -350,13 +350,13 @@
 	// will match all nodes named d which are below some child of node b.
 	//    root/a/b/c*
 	// will match all nodes below b which start with the character "c".
-	NodePath []StringSelector `fidl_offset_v1:"0" fidl_bounds:"100"`
+	NodePath []StringSelector `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"100"`
 	// A StringSelector which serves as a pattern matcher for
 	//   string-named properties on a node in a data hierarchy.
 	//
 	// target_properties supports wildcarding, which will match against all properties
 	// on any node matched by node_path.
-	TargetProperties StringSelector `fidl_offset_v1:"16"`
+	TargetProperties StringSelector `fidl_offset_v1:"16" fidl_offset_v2:"16"`
 }
 
 var _mPropertySelector = _bindings.CreateLazyMarshaler(PropertySelector{})
@@ -366,9 +366,9 @@
 }
 
 type archiveAccessorWithCtxStreamDiagnosticsRequest struct {
-	_                struct{}                             `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	StreamParameters StreamParameters                     `fidl_offset_v1:"0"`
-	ResultStream     BatchIteratorWithCtxInterfaceRequest `fidl_offset_v1:"16" fidl_handle_subtype:"4" fidl_bounds:"0"`
+	_                struct{}                             `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	StreamParameters StreamParameters                     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	ResultStream     BatchIteratorWithCtxInterfaceRequest `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_handle_subtype:"4" fidl_bounds:"0"`
 }
 
 var _marchiveAccessorWithCtxStreamDiagnosticsRequest = _bindings.CreateLazyMarshaler(archiveAccessorWithCtxStreamDiagnosticsRequest{})
@@ -378,8 +378,8 @@
 }
 
 type batchIteratorWithCtxGetNextResponse struct {
-	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BatchIteratorGetNextResult `fidl_offset_v1:"0"`
+	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BatchIteratorGetNextResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbatchIteratorWithCtxGetNextResponse = _bindings.CreateLazyMarshaler(batchIteratorWithCtxGetNextResponse{})
@@ -396,7 +396,7 @@
 )
 
 type BatchIteratorGetNextResult struct {
-	I_batchIteratorGetNextResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"true"`
+	I_batchIteratorGetNextResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"true"`
 	Response                        BatchIteratorGetNextResponse `fidl_ordinal:"1"`
 	Err                             ReaderError                  `fidl_ordinal:"2"`
 }
@@ -455,7 +455,7 @@
 // Argument used for Archive selectors, can be either the pre-parsed
 // fidl struct or string representation.
 type SelectorArgument struct {
-	I_selectorArgumentTag `fidl:"x" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_selectorArgumentTag `fidl:"x" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData         interface{}
 	// A Selector defining a pattern-matcher which selects for components within a hierarchy
 	// and properties in a data hierarchy namespaced by component.
@@ -463,9 +463,9 @@
 	// A raw string representing a [fuchsia.diagnostics/Selector].
 	// The Selector defines a pattern-matcher which selects for components within a hierarchy
 	// and properties in a data hierarchy namespaced by component.
-	// NOTE: All StringSelectors parsed from the raw_selector will be interperetted in
+	// NOTE: All StringSelectors parsed from the raw_selector will be interpreted in
 	//       string_pattern mode, giving significance to special characters.
-	// TODO(fxbug.dev/4601): Link to in-tree documentation for raw selector strings.
+	// See https://fuchsia.dev/fuchsia-src/reference/diagnostics/selectors for more information
 	RawSelector string `fidl_bounds:"1024" fidl_ordinal:"2"`
 }
 
@@ -536,7 +536,7 @@
 // A fidl union containing a complete hierarchy of structured diagnostics
 // data, such that the content can be parsed into a file by itself.
 type FormattedContent struct {
-	I_formattedContentTag `fidl:"x" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"true"`
+	I_formattedContentTag `fidl:"x" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"true"`
 	I_unknownData         interface{}
 	// A diagnostics schema encoded as json.
 	// The VMO will contain up to 1mb of diagnostics data.
@@ -611,7 +611,7 @@
 )
 
 type ClientSelectorConfiguration struct {
-	I_clientSelectorConfigurationTag `fidl:"x" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_clientSelectorConfigurationTag `fidl:"x" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData                    interface{}
 	// A vector of [fuchsia.diagnostics/SelectorArgument] which
 	// provide additional filters to scope data streams with. An empty vector is considered
@@ -689,7 +689,7 @@
 // StringSelector is an union defining different ways to describe a pattern to match
 // strings against.
 type StringSelector struct {
-	I_stringSelectorTag `fidl:"x" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_stringSelectorTag `fidl:"x" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData       interface{}
 	//   This is a provided string that defines a pattern to
 	//   match against. The parser treats asterisks (*), colons (:) and backslashes
@@ -783,7 +783,7 @@
 // TreeSelector represents a selection request on a hierarchy of named nodes, with
 // named properties on those nodes.
 type TreeSelector struct {
-	I_treeSelectorTag `fidl:"x" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_treeSelectorTag `fidl:"x" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData     interface{}
 	// A selector defining a set of nodes to match, for which the entire subtree including
 	// those nodes are selected.
@@ -852,7 +852,7 @@
 // Interest expresses the scope of clients' desired diagnostics data,
 // e.g. for filtering messages or controlling their generation.
 type Interest struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	// Minimum desired severity. Components should include records at or
 	// above this severity.
@@ -896,7 +896,7 @@
 
 // Parameters which configure a diagnostics stream's performance properties.
 type PerformanceConfiguration struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	// Maximum aggregate size of all formatted contents returned by
 	// the batch iterator for a diagnostics stream. If this value is set for a stream
@@ -975,7 +975,7 @@
 
 // Parameters needed to configure a stream of diagnostics information.
 type StreamParameters struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	// A [fuchsia.diagnostics/DataType] that specifies the diagnostics data type
 	// to stream to the client.
@@ -1185,7 +1185,7 @@
 //    core/**
 // The recursive wildcard is only allowed as the final segment of the selector.
 type ComponentSelector struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	// Vector encoding the a pattern for monikers of components being selected for.
 	// These monikers are child-monikers relative to a "root" hierarchy that the archivist
@@ -1244,7 +1244,7 @@
 //    Subtree selection:
 //         realm1/realm2/echo.cmx:root/active_users
 type Selector struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	// The selector defining a pattern of component monikers to match
 	// against.
diff --git a/src/syscall/zx/fidl/ctx_and_header.go b/src/syscall/zx/fidl/ctx_and_header.go
index 556b9a8..916d17b 100644
--- a/src/syscall/zx/fidl/ctx_and_header.go
+++ b/src/syscall/zx/fidl/ctx_and_header.go
@@ -4,9 +4,16 @@
 
 package fidl
 
+var allowV2WireFormatDecoding bool
+
+// Enable V2 wire format decoding for this process.
+func AllowV2WireFormatDecoding() {
+	allowV2WireFormatDecoding = true
+}
+
 const FidlWireFormatMagicNumberInitial = 0x01
 
-const FidlV2WireFormatFlagMask = 0x01
+const FidlV2WireFormatFlagMask = 0x02
 
 // MarshalerContext stores flags to control marshaling/unmarshaling.
 //
@@ -16,6 +23,10 @@
 	UseV2WireFormat bool
 }
 
+func (ctx MarshalerContext) isV2WireFormatDecodingEnabled() bool {
+	return allowV2WireFormatDecoding && ctx.UseV2WireFormat
+}
+
 // newCtx returns the default context.
 // During migrations, this controls the default write path.
 func newCtx() MarshalerContext {
@@ -24,11 +35,11 @@
 
 // MessageHeader represents a transactional message header.
 type MessageHeader struct {
-	_       struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Txid    uint32   `fidl:"0" fidl_offset_v1:"0" fidl_bounds:""`
-	Flags   [3]uint8 `fidl:"4" fidl_offset_v1:"4" fidl_bounds:""`
-	Magic   uint8    `fidl:"7" fidl_offset_v1:"7" fidl_bounds:""`
-	Ordinal uint64   `fidl:"8" fidl_offset_v1:"8" fidl_bounds:""`
+	_       struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Txid    uint32   `fidl:"0" fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
+	Flags   [3]uint8 `fidl:"4" fidl_offset_v1:"4" fidl_offset_v2:"4" fidl_bounds:""`
+	Magic   uint8    `fidl:"7" fidl_offset_v1:"7" fidl_offset_v2:"7" fidl_bounds:""`
+	Ordinal uint64   `fidl:"8" fidl_offset_v1:"8" fidl_offset_v2:"8" fidl_bounds:""`
 }
 
 func (msg *MessageHeader) IsSupportedVersion() bool {
diff --git a/src/syscall/zx/fidl/encoding_new.go b/src/syscall/zx/fidl/encoding_new.go
index 1b0a1e5..0eae4d6 100644
--- a/src/syscall/zx/fidl/encoding_new.go
+++ b/src/syscall/zx/fidl/encoding_new.go
@@ -153,7 +153,7 @@
 		handleInfos: handleInfos,
 	}
 
-	offset, err := in.newObject(m.getMarshalSize(ctx), 0)
+	offset, err := in.newObject(m.getUnmarshalSize(ctx), 0)
 	if err != nil {
 		return 0, 0, err
 	}
@@ -181,8 +181,11 @@
 }
 
 const tagSizeV1 = "fidl_size_v1"
+const tagSizeV2 = "fidl_size_v2"
 const tagAlignmentV1 = "fidl_alignment_v1"
+const tagAlignmentV2 = "fidl_alignment_v2"
 const tagOffsetV1 = "fidl_offset_v1"
+const tagOffsetV2 = "fidl_offset_v2"
 const tagHandleRights = "fidl_handle_rights"
 const tagHandleSubtype = "fidl_handle_subtype"
 const tagOrdinal = "fidl_ordinal"
@@ -276,10 +279,16 @@
 		if marshaler.useUnsafeCopy {
 			return true
 		}
-		if marshaler.size != int(typ.Size()) {
+		if marshaler.sizeV1 != int(typ.Size()) {
 			return false
 		}
-		if marshaler.alignment != typ.Align() {
+		if marshaler.sizeV2 != int(typ.Size()) {
+			return false
+		}
+		if marshaler.alignmentV1 != typ.Align() {
+			return false
+		}
+		if marshaler.alignmentV2 != typ.Align() {
 			return false
 		}
 		for i, rField := range dataFields(typ) {
@@ -333,7 +342,8 @@
 		kind            = marshalerKind
 		fields          []mField
 		ordinals        []uint64
-		wireOffsets     []int
+		wireOffsetsV1   []int
+		wireOffsetsV2   []int
 		presenceOffsets []uintptr
 	)
 
@@ -377,11 +387,16 @@
 		}
 		switch kind {
 		case structTag:
-			offset, err := readIntTag(field, tagOffsetV1)
+			offsetV1, err := readIntTag(field, tagOffsetV1)
 			if err != nil {
 				return nil, err
 			}
-			wireOffsets = append(wireOffsets, offset)
+			wireOffsetsV1 = append(wireOffsetsV1, offsetV1)
+			offsetV2, err := readIntTag(field, tagOffsetV2)
+			if err != nil {
+				return nil, err
+			}
+			wireOffsetsV2 = append(wireOffsetsV2, offsetV2)
 		case xunionTag, strictXunionTag, tableTag:
 			ordinal := readOrdinalTag(field)
 			ordinals = append(ordinals, uint64(ordinal))
@@ -394,11 +409,19 @@
 		fields = append(fields, mField{fieldMarshaler, field.Index[0], field.Offset})
 	}
 
-	size, err := readIntTag(tagField, tagSizeV1)
+	sizeV1, err := readIntTag(tagField, tagSizeV1)
 	if err != nil {
 		return nil, errors.New("error creating marshaller for " + typ.String() + ": " + err.Error())
 	}
-	alignment, err := readIntTag(tagField, tagAlignmentV1)
+	sizeV2, err := readIntTag(tagField, tagSizeV2)
+	if err != nil {
+		return nil, errors.New("error creating marshaller for " + typ.String() + ": " + err.Error())
+	}
+	alignmentV1, err := readIntTag(tagField, tagAlignmentV1)
+	if err != nil {
+		return nil, errors.New("error creating marshaller for " + typ.String() + ": " + err.Error())
+	}
+	alignmentV2, err := readIntTag(tagField, tagAlignmentV2)
 	if err != nil {
 		return nil, errors.New("error creating marshaller for " + typ.String() + ": " + err.Error())
 	}
@@ -408,13 +431,16 @@
 		var structFields []mFieldWithWireOffset
 		for i := 0; i < len(fields); i++ {
 			structFields = append(structFields, mFieldWithWireOffset{
-				mField:     fields[i],
-				wireOffset: wireOffsets[i],
+				mField:       fields[i],
+				wireOffsetV1: wireOffsetsV1[i],
+				wireOffsetV2: wireOffsetsV2[i],
 			})
 		}
 		m.fields = structFields
-		m.size = size
-		m.alignment = alignment
+		m.sizeV1 = sizeV1
+		m.sizeV2 = sizeV2
+		m.alignmentV1 = alignmentV1
+		m.alignmentV2 = alignmentV2
 		m.useUnsafeCopy = matchesWireFormatLayout(m, typ)
 		if m.useUnsafeCopy {
 			m.fields = nil
@@ -434,8 +460,10 @@
 		m.typ = typ
 		m.fields = ordinalToFields
 		m.ordinals = ordinals
-		m.size = size
-		m.alignment = alignment
+		m.sizeV1 = sizeV1
+		m.sizeV2 = sizeV2
+		m.alignmentV1 = alignmentV1
+		m.alignmentV2 = alignmentV2
 		m.strictness = strictness
 		m.resourceness = resourceness(isResource)
 		return m, nil
@@ -444,11 +472,14 @@
 		if err != nil {
 			return nil, errors.New("error creating marshaller for " + typ.String() + ": " + err.Error())
 		}
+		if sizeV1 != sizeV2 || alignmentV1 != alignmentV2 {
+			panic("expected table size to be unchanged between v1 and v2")
+		}
 
 		m.fields = fields
 		m.presenceOffsets = presenceOffsets
-		m.size = size
-		m.alignment = alignment
+		m.size = sizeV1
+		m.alignment = alignmentV1
 		m.ordinals = ordinals
 		m.resourceness = resourceness(isResource)
 		return m, nil
@@ -912,21 +943,25 @@
 
 type mFieldWithWireOffset struct {
 	mField
-	wireOffset int
+	wireOffsetV1 int
+	wireOffsetV2 int
 }
 
 type mStruct struct {
-	fields          []mFieldWithWireOffset
-	size, alignment int
-	useUnsafeCopy   bool
+	fields                                   []mFieldWithWireOffset
+	sizeV1, sizeV2, alignmentV1, alignmentV2 int
+	useUnsafeCopy                            bool
 }
 
 func (m *mStruct) getMarshalSize(ctx MarshalerContext) int {
-	return m.size
+	return m.sizeV1
 }
 
 func (m *mStruct) getUnmarshalSize(ctx MarshalerContext) int {
-	return m.size
+	if ctx.isV2WireFormatDecodingEnabled() {
+		return m.sizeV2
+	}
+	return m.sizeV1
 }
 
 func (m *mStruct) marshal(ctx MarshalerContext, v unsafevalue.Value, out *encoder, offset int, depth int) error {
@@ -934,8 +969,8 @@
 		// Directly copy the object's memory to the buffer.
 		sh := reflect.SliceHeader{
 			Data: uintptr(unsafe.Pointer(v.UnsafeAddr())),
-			Len:  m.size,
-			Cap:  m.size,
+			Len:  m.sizeV1,
+			Cap:  m.sizeV1,
 		}
 		s := *(*[]uint8)(unsafe.Pointer(&sh))
 		copy(out.buffer[offset:], s)
@@ -943,7 +978,7 @@
 	}
 
 	for _, field := range m.fields {
-		fieldOffset := offset + field.wireOffset
+		fieldOffset := offset + field.wireOffsetV1
 		if err := field.Marshaler.marshal(ctx, v.StructFieldOffset(field.offset), out, fieldOffset, depth); err != nil {
 			return err
 		}
@@ -953,14 +988,15 @@
 
 func (m *mStruct) unmarshal(ctx MarshalerContext, in *decoder, offset int, depth int, v unsafevalue.Value) error {
 	if m.useUnsafeCopy {
+		size := m.getUnmarshalSize(ctx)
 		// Directly copy from the buffer to the object's memory.
-		if len(in.buffer) < offset+m.size {
+		if len(in.buffer) < offset+size {
 			return ErrPayloadTooSmall
 		}
 		sh := reflect.SliceHeader{
 			Data: uintptr(unsafe.Pointer(v.UnsafeAddr())),
-			Len:  m.size,
-			Cap:  m.size,
+			Len:  size,
+			Cap:  size,
 		}
 		s := *(*[]uint8)(unsafe.Pointer(&sh))
 		copy(s, in.buffer[offset:])
@@ -968,7 +1004,12 @@
 	}
 
 	for _, field := range m.fields {
-		fieldOffset := offset + field.wireOffset
+		fieldOffset := offset
+		if ctx.isV2WireFormatDecodingEnabled() {
+			fieldOffset += field.wireOffsetV2
+		} else {
+			fieldOffset += field.wireOffsetV1
+		}
 		if err := field.Marshaler.unmarshal(ctx, in, fieldOffset, depth, v.StructFieldOffset(field.offset)); err != nil {
 			return err
 		}
@@ -1008,20 +1049,23 @@
 }
 
 type mXUnion struct {
-	typ             reflect.Type
-	fields          map[uint64]mField
-	ordinals        []uint64
-	size, alignment int
+	typ                                      reflect.Type
+	fields                                   map[uint64]mField
+	ordinals                                 []uint64
+	sizeV1, sizeV2, alignmentV1, alignmentV2 int
 	strictness
 	resourceness
 }
 
 func (m *mXUnion) getMarshalSize(ctx MarshalerContext) int {
-	return m.size
+	return m.sizeV1
 }
 
 func (m *mXUnion) getUnmarshalSize(ctx MarshalerContext) int {
-	return m.size
+	if ctx.isV2WireFormatDecodingEnabled() {
+		return m.sizeV2
+	}
+	return m.sizeV1
 }
 
 func (m *mXUnion) marshal(ctx MarshalerContext, v unsafevalue.Value, out *encoder, offset int, depth int) error {
@@ -1085,12 +1129,12 @@
 			return newValueError(ErrInvalidXUnionTag, ordinal)
 		}
 
-		h, err := unmarshalEnvelopeHeader(in, offset+8)
+		h, err := unmarshalEnvelopeHeader(ctx, in, offset+8)
 		if err != nil {
 			return err
 		}
 
-		if h.isPresent() {
+		if h.isPresent(ctx) {
 			return newValueError(ErrInvalidXUnionTag, ordinal)
 		}
 
@@ -1102,7 +1146,7 @@
 	if !ok {
 		v.StructFieldOffset(0).SetUint64(ordinal)
 
-		bytes, handles, err := unmarshalEnvelopeUnknown(in, offset+8, depth)
+		bytes, handles, err := unmarshalEnvelopeUnknown(ctx, in, offset+8, depth)
 		if err != nil {
 			return err
 		}
@@ -1203,13 +1247,17 @@
 const envelopeSize = 16
 
 type envelopeHeader struct {
+	byteValue   []byte
 	byteCount   uint32
 	handleCount uint32
-	presence    uint64
+	isInline    bool
 }
 
-func (h envelopeHeader) isPresent() bool {
-	return h.presence == allocPresent
+func (h envelopeHeader) isPresent(ctx MarshalerContext) bool {
+	if h.isInline {
+		return true
+	}
+	return h.byteCount != 0 || h.handleCount != 0
 }
 
 func marshalEnvelopePresent(ctx MarshalerContext, m Marshaler, v unsafevalue.Value, out *encoder, offset int, depth int) error {
@@ -1275,31 +1323,57 @@
 	knownMustBePresent
 )
 
-func unmarshalEnvelopeHeader(in *decoder, offset int) (envelopeHeader, error) {
-	h := envelopeHeader{
-		byteCount:   in.readUint32(offset),
-		handleCount: in.readUint32(offset + 4),
-		presence:    in.readUint64(offset + 8),
-	}
+func unmarshalEnvelopeHeader(ctx MarshalerContext, in *decoder, offset int) (envelopeHeader, error) {
+	var h envelopeHeader
+	if ctx.isV2WireFormatDecodingEnabled() {
+		inlineIndicator := in.readUint16(offset + 6)
+		switch inlineIndicator {
+		case 1:
+			h = envelopeHeader{
+				byteValue:   in.buffer[offset : offset+4],
+				handleCount: uint32(in.readUint16(offset + 4)),
+				isInline:    true,
+			}
+		case 0:
+			h = envelopeHeader{
+				byteCount:   in.readUint32(offset),
+				handleCount: uint32(in.readUint16(offset + 4)),
+			}
+		default:
+			return h, newValueError(ErrBadInlineIndicatorEncoding, h)
+		}
 
-	switch h.presence {
-	case allocPresent:
-	case noAlloc:
-		if h.byteCount != 0 {
-			return h, newValueError(ErrInvalidNumBytesInEnvelope, h.byteCount)
+	} else {
+		h = envelopeHeader{
+			byteCount:   in.readUint32(offset),
+			handleCount: in.readUint32(offset + 4),
 		}
-		if h.handleCount != 0 {
-			return h, newValueError(ErrInvalidNumHandlesInEnvelope, h.handleCount)
+		presence := in.readUint64(offset + 8)
+		switch presence {
+		case allocPresent:
+			if h.byteCount == 0 {
+				return h, newValueError(ErrInvalidNumBytesInEnvelope, h.byteCount)
+			}
+		case noAlloc:
+			if h.byteCount != 0 {
+				return h, newValueError(ErrInvalidNumBytesInEnvelope, h.byteCount)
+			}
+			if h.handleCount != 0 {
+				return h, newValueError(ErrInvalidNumHandlesInEnvelope, h.handleCount)
+			}
+		default:
+			return h, newValueError(ErrBadRefEncoding, h)
 		}
-	default:
-		return h, newValueError(ErrBadRefEncoding, h)
+	}
+	if h.byteCount%8 != 0 {
+		return h, newValueError(ErrInvalidNumBytesInEnvelope, h.byteCount)
 	}
 
 	return h, nil
 }
 
-func unmarshalEnvelopeUnknown(in *decoder, offset int, depth int) ([]byte, []zx.HandleInfo, error) {
-	header, err := unmarshalEnvelopeHeader(in, offset)
+func unmarshalEnvelopeUnknown(ctx MarshalerContext, in *decoder, offset int, depth int) ([]byte, []zx.HandleInfo, error) {
+	header, err := unmarshalEnvelopeHeader(ctx, in, offset)
 	if err != nil {
 		return nil, nil, err
 	}
@@ -1336,6 +1410,26 @@
 }
 
 func unmarshalEnvelopeContent(ctx MarshalerContext, header envelopeHeader, m Marshaler, in *decoder, depth int, v unsafevalue.Value, mode unmarshalEnvelopeMode) (bool, error) {
+	if ctx.isV2WireFormatDecodingEnabled() && header.isInline {
+		// Inline envelope.
+		var innerDecoderHandleInfos []zx.HandleInfo
+		if header.handleCount != 0 {
+			if header.handleCount != 1 {
+				return false, newValueError(ErrInvalidNumHandlesInEnvelope, header.handleCount)
+			}
+			innerDecoderHandleInfos = []zx.HandleInfo{in.handleInfos[0]}
+			in.handleInfos = in.handleInfos[1:]
+		}
+		d := decoder{
+			buffer:      header.byteValue,
+			handleInfos: innerDecoderHandleInfos,
+		}
+		if err := m.unmarshal(ctx, &d, 0, depth+1, v); err != nil {
+			return false, err
+		}
+		return true, nil
+	}
+
 	outOfLineOffset, err := in.newObject(m.getUnmarshalSize(ctx), depth)
 	if err != nil {
 		return false, err
@@ -1351,12 +1445,12 @@
 func unmarshalEnvelope(ctx MarshalerContext, m Marshaler, in *decoder, offset int, depth int, v unsafevalue.Value, mode unmarshalEnvelopeMode) (bool, error) {
 	startingFrom := in.nextObject
 	unclaimedHandles := uint32(len(in.handleInfos))
-	header, err := unmarshalEnvelopeHeader(in, offset)
+	header, err := unmarshalEnvelopeHeader(ctx, in, offset)
 	if err != nil {
 		return false, err
 	}
 
-	if !header.isPresent() {
+	if !header.isPresent(ctx) {
 		if mode == knownMustBePresent {
 			return false, newValueError(ErrUnexpectedNullRef, v)
 		}
@@ -1533,7 +1627,7 @@
 				v.StructFieldOffset(m.presenceOffsets[index]).SetBool(true)
 			}
 		} else {
-			bytes, handles, err := unmarshalEnvelopeUnknown(in, envelopeOffset, depth+1)
+			bytes, handles, err := unmarshalEnvelopeUnknown(ctx, in, envelopeOffset, depth+1)
 			if err != nil {
 				return err
 			}
@@ -1632,27 +1726,6 @@
 	return nil
 }
 
-type mOptUnion struct {
-	mPointer
-	mOptXUnion
-}
-
-func (m *mOptUnion) getMarshalSize(ctx MarshalerContext) int {
-	return 24
-}
-
-func (m *mOptUnion) getUnmarshalSize(ctx MarshalerContext) int {
-	return 24
-}
-
-func (m *mOptUnion) marshal(ctx MarshalerContext, v unsafevalue.Value, out *encoder, offset int, depth int) error {
-	return m.mOptXUnion.marshal(ctx, v, out, offset, depth)
-}
-
-func (m *mOptUnion) unmarshal(ctx MarshalerContext, in *decoder, offset int, depth int, v unsafevalue.Value) error {
-	return m.mOptXUnion.unmarshal(ctx, in, offset, depth, v)
-}
-
 type mArray struct {
 	Marshaler
 	rtElemSize uintptr
diff --git a/src/syscall/zx/fidl/errors.go b/src/syscall/zx/fidl/errors.go
index 2dda201..9050d8d 100644
--- a/src/syscall/zx/fidl/errors.go
+++ b/src/syscall/zx/fidl/errors.go
@@ -45,6 +45,7 @@
 	ErrBadHandleEncoding
 	ErrNonZeroPadding
 	ErrBadRefEncoding
+	ErrBadInlineIndicatorEncoding
 	ErrStructIsNotPayload
 	ErrInvalidUnionTag
 	ErrInvalidXUnionTag
@@ -85,6 +86,7 @@
 	ErrNonZeroPadding:              "ErrNonZeroPadding",
 	ErrBadHandleEncoding:           "ErrBadHandleEncoding",
 	ErrBadRefEncoding:              "ErrBadRefEncoding",
+	ErrBadInlineIndicatorEncoding:  "ErrBadInlineIndicatorEncoding",
 	ErrStructIsNotPayload:          "ErrStructIsNotPayload",
 	ErrInvalidUnionTag:             "ErrInvalidUnionTag",
 	ErrInvalidXUnionTag:            "ErrInvalidXUnionTag",
@@ -92,8 +94,8 @@
 	ErrInvalidEnumValue:            "ErrInvalidEnumValue",
 	ErrPayloadTooSmall:             "ErrPayloadTooSmall",
 	ErrInvalidEmptyStruct:          "ErrInvalidEmptyStruct",
-	ErrInvalidNumBytesInEnvelope:    "ErrInvalidNumBytesInEnvelope",
-	ErrInvalidNumHandlesInEnvelope:  "ErrInvalidNumHandlesInEnvelope",
+	ErrInvalidNumBytesInEnvelope:   "ErrInvalidNumBytesInEnvelope",
+	ErrInvalidNumHandlesInEnvelope: "ErrInvalidNumHandlesInEnvelope",
 	ErrStringNotUTF8:               "ErrStringNotUTF8",
 	ErrUnknownMagic:                "ErrUnknownMagic",
 	ErrMissingRequiredHandleRights: "ErrMissingRequiredHandleRights",
@@ -147,6 +149,8 @@
 		return "invalid non-zero padding"
 	case ErrBadRefEncoding:
 		return "bad encoding for ref"
+	case ErrBadInlineIndicatorEncoding:
+		return "bad encoding for inline indicator"
 	case ErrStructIsNotPayload:
 		return "golang struct type must implement Payload"
 	case ErrInvalidUnionTag:
diff --git a/src/syscall/zx/fidl/fidl_test/encoding_fuchsia_test.go b/src/syscall/zx/fidl/fidl_test/encoding_fuchsia_test.go
index a09a83c..0791f31 100644
--- a/src/syscall/zx/fidl/fidl_test/encoding_fuchsia_test.go
+++ b/src/syscall/zx/fidl/fidl_test/encoding_fuchsia_test.go
@@ -67,7 +67,7 @@
 func TestEnvelopeByteCountTooLarge(t *testing.T) {
 	input := []byte{
 		0x21, 0xEB, 0x7E, 0x76, 0x00, 0x00, 0x00, 0x00, // ordinal + padding
-		0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, // byte + handle count
+		0xa0, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, // byte + handle count
 		0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, // envelope present
 		0xef, 0xbe, 0xad, 0xde, 0x11, 0xba, 0x5e, 0xba, // data
 	}
@@ -571,7 +571,7 @@
 func TestFailureNullableTable(t *testing.T) {
 	type TestNullableTable struct {
 		_ struct{}                  `fidl:"s"`
-		A *bindingstest.SimpleTable `fidl:"0" fidl_offset_v1:"0"`
+		A *bindingstest.SimpleTable `fidl:"0" fidl_offset_v1:"0" fidl_offset_v2:"0"`
 	}
 	_, err := fidl.CreateMarshaler(TestNullableTable{})
 	if err == nil {
diff --git a/src/syscall/zx/fidl/fidl_test/testutil_test.go b/src/syscall/zx/fidl/fidl_test/testutil_test.go
index 4a44f58..e2f1edd 100644
--- a/src/syscall/zx/fidl/fidl_test/testutil_test.go
+++ b/src/syscall/zx/fidl/fidl_test/testutil_test.go
@@ -14,6 +14,10 @@
 	"syscall/zx/fidl"
 )
 
+func init() {
+	fidl.AllowV2WireFormatDecoding()
+}
+
 func makeDefault(typ reflect.Type) fidl.Message {
 	if typ.Kind() != reflect.Ptr || typ.Elem().Kind() != reflect.Struct {
 		panic(fmt.Sprintf("expecting *struct, actual %s", typ))
diff --git a/src/syscall/zx/fidl/internal/bindingstest/impl.go b/src/syscall/zx/fidl/internal/bindingstest/impl.go
index b78e49f..1d6798e 100644
--- a/src/syscall/zx/fidl/internal/bindingstest/impl.go
+++ b/src/syscall/zx/fidl/internal/bindingstest/impl.go
@@ -157,8 +157,8 @@
 }
 
 type TestSimple struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	X int64    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	X int64    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mTestSimple = _bindings.CreateLazyMarshaler(TestSimple{})
@@ -168,8 +168,8 @@
 }
 
 type TestSimpleBool struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	X bool     `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	X bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mTestSimpleBool = _bindings.CreateLazyMarshaler(TestSimpleBool{})
@@ -179,10 +179,10 @@
 }
 
 type TestAlignment1 struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"4"`
-	X int8     `fidl_offset_v1:"0"`
-	Y int8     `fidl_offset_v1:"1"`
-	Z uint32   `fidl_offset_v1:"4"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"4" fidl_size_v2:"8" fidl_alignment_v2:"4"`
+	X int8     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Y int8     `fidl_offset_v1:"1" fidl_offset_v2:"1"`
+	Z uint32   `fidl_offset_v1:"4" fidl_offset_v2:"4"`
 }
 
 var _mTestAlignment1 = _bindings.CreateLazyMarshaler(TestAlignment1{})
@@ -192,16 +192,16 @@
 }
 
 type TestAlignment2 struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"20" fidl_alignment_v1:"4"`
-	A uint32   `fidl_offset_v1:"0"`
-	B uint32   `fidl_offset_v1:"4"`
-	C int8     `fidl_offset_v1:"8"`
-	D int8     `fidl_offset_v1:"9"`
-	E int8     `fidl_offset_v1:"10"`
-	F uint8    `fidl_offset_v1:"11"`
-	G uint32   `fidl_offset_v1:"12"`
-	H uint16   `fidl_offset_v1:"16"`
-	I uint16   `fidl_offset_v1:"18"`
+	_ struct{} `fidl:"s" fidl_size_v1:"20" fidl_alignment_v1:"4" fidl_size_v2:"20" fidl_alignment_v2:"4"`
+	A uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	B uint32   `fidl_offset_v1:"4" fidl_offset_v2:"4"`
+	C int8     `fidl_offset_v1:"8" fidl_offset_v2:"8"`
+	D int8     `fidl_offset_v1:"9" fidl_offset_v2:"9"`
+	E int8     `fidl_offset_v1:"10" fidl_offset_v2:"10"`
+	F uint8    `fidl_offset_v1:"11" fidl_offset_v2:"11"`
+	G uint32   `fidl_offset_v1:"12" fidl_offset_v2:"12"`
+	H uint16   `fidl_offset_v1:"16" fidl_offset_v2:"16"`
+	I uint16   `fidl_offset_v1:"18" fidl_offset_v2:"18"`
 }
 
 var _mTestAlignment2 = _bindings.CreateLazyMarshaler(TestAlignment2{})
@@ -211,8 +211,8 @@
 }
 
 type TestFloat1 struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4"`
-	A float32  `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4" fidl_size_v2:"4" fidl_alignment_v2:"4"`
+	A float32  `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mTestFloat1 = _bindings.CreateLazyMarshaler(TestFloat1{})
@@ -222,8 +222,8 @@
 }
 
 type TestFloat2 struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	A float64  `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	A float64  `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mTestFloat2 = _bindings.CreateLazyMarshaler(TestFloat2{})
@@ -233,11 +233,11 @@
 }
 
 type TestFloat3 struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	A float32  `fidl_offset_v1:"0"`
-	B float64  `fidl_offset_v1:"8"`
-	C uint64   `fidl_offset_v1:"16"`
-	D float32  `fidl_offset_v1:"24"`
+	_ struct{} `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	A float32  `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	B float64  `fidl_offset_v1:"8" fidl_offset_v2:"8"`
+	C uint64   `fidl_offset_v1:"16" fidl_offset_v2:"16"`
+	D float32  `fidl_offset_v1:"24" fidl_offset_v2:"24"`
 }
 
 var _mTestFloat3 = _bindings.CreateLazyMarshaler(TestFloat3{})
@@ -247,8 +247,8 @@
 }
 
 type TestArray1 struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"5" fidl_alignment_v1:"1"`
-	A [5]int8  `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"5" fidl_alignment_v1:"1" fidl_size_v2:"5" fidl_alignment_v2:"1"`
+	A [5]int8  `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mTestArray1 = _bindings.CreateLazyMarshaler(TestArray1{})
@@ -258,9 +258,9 @@
 }
 
 type TestArray2 struct {
-	_ struct{}   `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	A float64    `fidl_offset_v1:"0"`
-	B [1]float32 `fidl_offset_v1:"8"`
+	_ struct{}   `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	A float64    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	B [1]float32 `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mTestArray2 = _bindings.CreateLazyMarshaler(TestArray2{})
@@ -270,10 +270,10 @@
 }
 
 type TestArray3 struct {
-	_ struct{}  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	A int32     `fidl_offset_v1:"0"`
-	B [3]uint16 `fidl_offset_v1:"4"`
-	C uint64    `fidl_offset_v1:"16"`
+	_ struct{}  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	A int32     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	B [3]uint16 `fidl_offset_v1:"4" fidl_offset_v2:"4"`
+	C uint64    `fidl_offset_v1:"16" fidl_offset_v2:"16"`
 }
 
 var _mTestArray3 = _bindings.CreateLazyMarshaler(TestArray3{})
@@ -283,8 +283,8 @@
 }
 
 type TestArray4 struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"9" fidl_alignment_v1:"1"`
-	A [9]bool  `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"9" fidl_alignment_v1:"1" fidl_size_v2:"9" fidl_alignment_v2:"1"`
+	A [9]bool  `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mTestArray4 = _bindings.CreateLazyMarshaler(TestArray4{})
@@ -294,9 +294,9 @@
 }
 
 type TestString1 struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	A string   `fidl_offset_v1:"0" fidl_bounds:""`
-	B *string  `fidl_offset_v1:"16" fidl_bounds:""`
+	_ struct{} `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	A string   `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
+	B *string  `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_bounds:""`
 }
 
 var _mTestString1 = _bindings.CreateLazyMarshaler(TestString1{})
@@ -306,8 +306,8 @@
 }
 
 type TestString2 struct {
-	_ struct{}  `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	A [2]string `fidl_offset_v1:"0" fidl_bounds:""`
+	_ struct{}  `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	A [2]string `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
 }
 
 var _mTestString2 = _bindings.CreateLazyMarshaler(TestString2{})
@@ -317,9 +317,9 @@
 }
 
 type TestString3 struct {
-	_ struct{}   `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	A [2]string  `fidl_offset_v1:"0" fidl_bounds:"4"`
-	B [2]*string `fidl_offset_v1:"32" fidl_bounds:"4"`
+	_ struct{}   `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"64" fidl_alignment_v2:"8"`
+	A [2]string  `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"4"`
+	B [2]*string `fidl_offset_v1:"32" fidl_offset_v2:"32" fidl_bounds:"4"`
 }
 
 var _mTestString3 = _bindings.CreateLazyMarshaler(TestString3{})
@@ -329,8 +329,8 @@
 }
 
 type TestStringWithBound struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	A string   `fidl_offset_v1:"0" fidl_bounds:"8"`
+	_ struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	A string   `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"8"`
 }
 
 var _mTestStringWithBound = _bindings.CreateLazyMarshaler(TestStringWithBound{})
@@ -340,8 +340,8 @@
 }
 
 type TestOptStringWithBound struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	A *string  `fidl_offset_v1:"0" fidl_bounds:"8"`
+	_ struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	A *string  `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"8"`
 }
 
 var _mTestOptStringWithBound = _bindings.CreateLazyMarshaler(TestOptStringWithBound{})
@@ -351,11 +351,11 @@
 }
 
 type TestVector1 struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	A []int8   `fidl_offset_v1:"0" fidl_bounds:""`
-	B *[]int16 `fidl_offset_v1:"16" fidl_bounds:""`
-	C []int32  `fidl_offset_v1:"32" fidl_bounds:"2"`
-	D *[]int64 `fidl_offset_v1:"48" fidl_bounds:"2"`
+	_ struct{} `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"64" fidl_alignment_v2:"8"`
+	A []int8   `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
+	B *[]int16 `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_bounds:""`
+	C []int32  `fidl_offset_v1:"32" fidl_offset_v2:"32" fidl_bounds:"2"`
+	D *[]int64 `fidl_offset_v1:"48" fidl_offset_v2:"48" fidl_bounds:"2"`
 }
 
 var _mTestVector1 = _bindings.CreateLazyMarshaler(TestVector1{})
@@ -365,10 +365,10 @@
 }
 
 type TestVector2 struct {
-	_ struct{}    `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	A [2][]int8   `fidl_offset_v1:"0" fidl_bounds:""`
-	B [][]int8    `fidl_offset_v1:"32" fidl_bounds:"2,"`
-	C []*[]string `fidl_offset_v1:"48" fidl_bounds:"2,2,5"`
+	_ struct{}    `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"64" fidl_alignment_v2:"8"`
+	A [2][]int8   `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
+	B [][]int8    `fidl_offset_v1:"32" fidl_offset_v2:"32" fidl_bounds:"2,"`
+	C []*[]string `fidl_offset_v1:"48" fidl_offset_v2:"48" fidl_bounds:"2,2,5"`
 }
 
 var _mTestVector2 = _bindings.CreateLazyMarshaler(TestVector2{})
@@ -378,9 +378,9 @@
 }
 
 type TestStruct1 struct {
-	_ struct{}    `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	A TestSimple  `fidl_offset_v1:"0"`
-	B *TestSimple `fidl_offset_v1:"8"`
+	_ struct{}    `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	A TestSimple  `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	B *TestSimple `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mTestStruct1 = _bindings.CreateLazyMarshaler(TestStruct1{})
@@ -390,11 +390,11 @@
 }
 
 type TestStruct2 struct {
-	_ struct{}     `fidl:"s" fidl_size_v1:"88" fidl_alignment_v1:"8"`
-	A TestArray1   `fidl_offset_v1:"0"`
-	B TestFloat1   `fidl_offset_v1:"8"`
-	C TestVector1  `fidl_offset_v1:"16"`
-	D *TestString1 `fidl_offset_v1:"80"`
+	_ struct{}     `fidl:"s" fidl_size_v1:"88" fidl_alignment_v1:"8" fidl_size_v2:"88" fidl_alignment_v2:"8"`
+	A TestArray1   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	B TestFloat1   `fidl_offset_v1:"8" fidl_offset_v2:"8"`
+	C TestVector1  `fidl_offset_v1:"16" fidl_offset_v2:"16"`
+	D *TestString1 `fidl_offset_v1:"80" fidl_offset_v2:"80"`
 }
 
 var _mTestStruct2 = _bindings.CreateLazyMarshaler(TestStruct2{})
@@ -404,7 +404,7 @@
 }
 
 type EmptyStruct struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mEmptyStruct = _bindings.CreateLazyMarshaler(EmptyStruct{})
@@ -414,8 +414,8 @@
 }
 
 type TestRecursiveStruct struct {
-	_ struct{}             `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S *TestRecursiveStruct `fidl_offset_v1:"0"`
+	_ struct{}             `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S *TestRecursiveStruct `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mTestRecursiveStruct = _bindings.CreateLazyMarshaler(TestRecursiveStruct{})
@@ -425,8 +425,8 @@
 }
 
 type TestRecursiveVectorStruct struct {
-	_ struct{}                     `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	V []*TestRecursiveVectorStruct `fidl_offset_v1:"0" fidl_bounds:""`
+	_ struct{}                     `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	V []*TestRecursiveVectorStruct `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
 }
 
 var _mTestRecursiveVectorStruct = _bindings.CreateLazyMarshaler(TestRecursiveVectorStruct{})
@@ -436,8 +436,8 @@
 }
 
 type TestRecursiveUnionStruct struct {
-	_ struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	U *TestRecursiveVectorUnion `fidl_offset_v1:"0"`
+	_ struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	U *TestRecursiveVectorUnion `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mTestRecursiveUnionStruct = _bindings.CreateLazyMarshaler(TestRecursiveUnionStruct{})
@@ -447,9 +447,9 @@
 }
 
 type TestUnion1 struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"48" fidl_alignment_v1:"8"`
-	A Union1   `fidl_offset_v1:"0"`
-	B *Union1  `fidl_offset_v1:"24"`
+	_ struct{} `fidl:"s" fidl_size_v1:"48" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	A Union1   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	B *Union1  `fidl_offset_v1:"24" fidl_offset_v2:"16"`
 }
 
 var _mTestUnion1 = _bindings.CreateLazyMarshaler(TestUnion1{})
@@ -459,9 +459,9 @@
 }
 
 type TestUnion2 struct {
-	_ struct{}  `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	A []Union1  `fidl_offset_v1:"0" fidl_bounds:""`
-	B []*Union1 `fidl_offset_v1:"16" fidl_bounds:""`
+	_ struct{}  `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	A []Union1  `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
+	B []*Union1 `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_bounds:""`
 }
 
 var _mTestUnion2 = _bindings.CreateLazyMarshaler(TestUnion2{})
@@ -471,8 +471,8 @@
 }
 
 type XUnion1Struct struct {
-	_  struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Xu XUnion1  `fidl_offset_v1:"0"`
+	_  struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Xu XUnion1  `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mXUnion1Struct = _bindings.CreateLazyMarshaler(XUnion1Struct{})
@@ -482,8 +482,8 @@
 }
 
 type XUnion1AsUnionStruct struct {
-	_    struct{}       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Xuau XUnion1AsUnion `fidl_offset_v1:"0"`
+	_    struct{}       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Xuau XUnion1AsUnion `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mXUnion1AsUnionStruct = _bindings.CreateLazyMarshaler(XUnion1AsUnionStruct{})
@@ -493,8 +493,8 @@
 }
 
 type UnionInsideUnionStruct struct {
-	_ struct{}         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	U UnionInsideUnion `fidl_offset_v1:"0"`
+	_ struct{}         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	U UnionInsideUnion `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mUnionInsideUnionStruct = _bindings.CreateLazyMarshaler(UnionInsideUnionStruct{})
@@ -504,8 +504,8 @@
 }
 
 type XUnionInsideXUnionStruct struct {
-	_ struct{}           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	U XUnionInsideXUnion `fidl_offset_v1:"0"`
+	_ struct{}           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	U XUnionInsideXUnion `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mXUnionInsideXUnionStruct = _bindings.CreateLazyMarshaler(XUnionInsideXUnionStruct{})
@@ -515,9 +515,9 @@
 }
 
 type TestXUnion1 struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"48" fidl_alignment_v1:"8"`
-	A XUnion1  `fidl_offset_v1:"0"`
-	B *XUnion1 `fidl_offset_v1:"24"`
+	_ struct{} `fidl:"s" fidl_size_v1:"48" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	A XUnion1  `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	B *XUnion1 `fidl_offset_v1:"24" fidl_offset_v2:"16"`
 }
 
 var _mTestXUnion1 = _bindings.CreateLazyMarshaler(TestXUnion1{})
@@ -527,9 +527,9 @@
 }
 
 type TestXUnion2 struct {
-	_ struct{}   `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	A []XUnion1  `fidl_offset_v1:"0" fidl_bounds:""`
-	B []*XUnion1 `fidl_offset_v1:"16" fidl_bounds:""`
+	_ struct{}   `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	A []XUnion1  `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
+	B []*XUnion1 `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_bounds:""`
 }
 
 var _mTestXUnion2 = _bindings.CreateLazyMarshaler(TestXUnion2{})
@@ -539,8 +539,8 @@
 }
 
 type StrictXUnion1Struct struct {
-	_  struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Xu StrictXUnion1 `fidl_offset_v1:"0"`
+	_  struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Xu StrictXUnion1 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mStrictXUnion1Struct = _bindings.CreateLazyMarshaler(StrictXUnion1Struct{})
@@ -550,9 +550,9 @@
 }
 
 type TestStrictXUnion1 struct {
-	_ struct{}       `fidl:"s" fidl_size_v1:"48" fidl_alignment_v1:"8"`
-	A StrictXUnion1  `fidl_offset_v1:"0"`
-	B *StrictXUnion1 `fidl_offset_v1:"24"`
+	_ struct{}       `fidl:"s" fidl_size_v1:"48" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	A StrictXUnion1  `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	B *StrictXUnion1 `fidl_offset_v1:"24" fidl_offset_v2:"16"`
 }
 
 var _mTestStrictXUnion1 = _bindings.CreateLazyMarshaler(TestStrictXUnion1{})
@@ -562,9 +562,9 @@
 }
 
 type TestStrictXUnion2 struct {
-	_ struct{}         `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	A []StrictXUnion1  `fidl_offset_v1:"0" fidl_bounds:""`
-	B []*StrictXUnion1 `fidl_offset_v1:"16" fidl_bounds:""`
+	_ struct{}         `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	A []StrictXUnion1  `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
+	B []*StrictXUnion1 `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_bounds:""`
 }
 
 var _mTestStrictXUnion2 = _bindings.CreateLazyMarshaler(TestStrictXUnion2{})
@@ -574,11 +574,11 @@
 }
 
 type TestHandle1 struct {
-	_ struct{}   `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"4"`
-	A _zx.Handle `fidl_offset_v1:"0" fidl_handle_subtype:"0" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
-	B _zx.Handle `fidl_offset_v1:"4" fidl_handle_subtype:"0" fidl_handle_rights:"2147483648" fidl_bounds:"1"`
-	C _zx.VMO    `fidl_offset_v1:"8" fidl_handle_subtype:"3" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
-	D _zx.VMO    `fidl_offset_v1:"12" fidl_handle_subtype:"3" fidl_handle_rights:"2147483648" fidl_bounds:"1"`
+	_ struct{}   `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"4" fidl_size_v2:"16" fidl_alignment_v2:"4"`
+	A _zx.Handle `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"0" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	B _zx.Handle `fidl_offset_v1:"4" fidl_offset_v2:"4" fidl_handle_subtype:"0" fidl_handle_rights:"2147483648" fidl_bounds:"1"`
+	C _zx.VMO    `fidl_offset_v1:"8" fidl_offset_v2:"8" fidl_handle_subtype:"3" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	D _zx.VMO    `fidl_offset_v1:"12" fidl_offset_v2:"12" fidl_handle_subtype:"3" fidl_handle_rights:"2147483648" fidl_bounds:"1"`
 }
 
 var _mTestHandle1 = _bindings.CreateLazyMarshaler(TestHandle1{})
@@ -588,9 +588,9 @@
 }
 
 type TestHandle2 struct {
-	_ struct{}     `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	A []_zx.Handle `fidl_offset_v1:"0" fidl_handle_subtype:"0" fidl_handle_rights:"2147483648" fidl_bounds:"1,0"`
-	B []_zx.VMO    `fidl_offset_v1:"16" fidl_handle_subtype:"3" fidl_handle_rights:"2147483648" fidl_bounds:"1,1"`
+	_ struct{}     `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	A []_zx.Handle `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"0" fidl_handle_rights:"2147483648" fidl_bounds:"1,0"`
+	B []_zx.VMO    `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_handle_subtype:"3" fidl_handle_rights:"2147483648" fidl_bounds:"1,1"`
 }
 
 var _mTestHandle2 = _bindings.CreateLazyMarshaler(TestHandle2{})
@@ -600,8 +600,8 @@
 }
 
 type HasClientEnd struct {
-	_         struct{}                        `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4"`
-	ClientEnd ExampleProtocolWithCtxInterface `fidl_offset_v1:"0" fidl_handle_subtype:"4"`
+	_         struct{}                        `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4" fidl_size_v2:"4" fidl_alignment_v2:"4"`
+	ClientEnd ExampleProtocolWithCtxInterface `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"4"`
 }
 
 var _mHasClientEnd = _bindings.CreateLazyMarshaler(HasClientEnd{})
@@ -611,8 +611,8 @@
 }
 
 type HasServerEnd struct {
-	_         struct{}                               `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4"`
-	ServerEnd ExampleProtocolWithCtxInterfaceRequest `fidl_offset_v1:"0" fidl_handle_subtype:"4" fidl_bounds:"0"`
+	_         struct{}                               `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4" fidl_size_v2:"4" fidl_alignment_v2:"4"`
+	ServerEnd ExampleProtocolWithCtxInterfaceRequest `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"4" fidl_bounds:"0"`
 }
 
 var _mHasServerEnd = _bindings.CreateLazyMarshaler(HasServerEnd{})
@@ -622,11 +622,11 @@
 }
 
 type TestInterface1 struct {
-	_ struct{}                     `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"4"`
-	A Test1WithCtxInterface        `fidl_offset_v1:"0" fidl_handle_subtype:"4"`
-	B Test1WithCtxInterface        `fidl_offset_v1:"4" fidl_handle_subtype:"4"`
-	C Test1WithCtxInterfaceRequest `fidl_offset_v1:"8" fidl_handle_subtype:"4" fidl_bounds:"0"`
-	D Test1WithCtxInterfaceRequest `fidl_offset_v1:"12" fidl_handle_subtype:"4" fidl_bounds:"1"`
+	_ struct{}                     `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"4" fidl_size_v2:"16" fidl_alignment_v2:"4"`
+	A Test1WithCtxInterface        `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"4"`
+	B Test1WithCtxInterface        `fidl_offset_v1:"4" fidl_offset_v2:"4" fidl_handle_subtype:"4"`
+	C Test1WithCtxInterfaceRequest `fidl_offset_v1:"8" fidl_offset_v2:"8" fidl_handle_subtype:"4" fidl_bounds:"0"`
+	D Test1WithCtxInterfaceRequest `fidl_offset_v1:"12" fidl_offset_v2:"12" fidl_handle_subtype:"4" fidl_bounds:"1"`
 }
 
 var _mTestInterface1 = _bindings.CreateLazyMarshaler(TestInterface1{})
@@ -636,8 +636,8 @@
 }
 
 type TestSimpleTable struct {
-	_     struct{}    `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Table SimpleTable `fidl_offset_v1:"0"`
+	_     struct{}    `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Table SimpleTable `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mTestSimpleTable = _bindings.CreateLazyMarshaler(TestSimpleTable{})
@@ -647,8 +647,8 @@
 }
 
 type TestOlderSimpleTable struct {
-	_     struct{}         `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Table OlderSimpleTable `fidl_offset_v1:"0"`
+	_     struct{}         `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Table OlderSimpleTable `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mTestOlderSimpleTable = _bindings.CreateLazyMarshaler(TestOlderSimpleTable{})
@@ -658,8 +658,8 @@
 }
 
 type TestNewerSimpleTable struct {
-	_     struct{}         `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Table NewerSimpleTable `fidl_offset_v1:"0"`
+	_     struct{}         `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Table NewerSimpleTable `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mTestNewerSimpleTable = _bindings.CreateLazyMarshaler(TestNewerSimpleTable{})
@@ -669,9 +669,9 @@
 }
 
 type TestWithTableAndInt struct {
-	_     struct{}    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Table SimpleTable `fidl_offset_v1:"0"`
-	Foo   uint64      `fidl_offset_v1:"16"`
+	_     struct{}    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Table SimpleTable `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Foo   uint64      `fidl_offset_v1:"16" fidl_offset_v2:"16"`
 }
 
 var _mTestWithTableAndInt = _bindings.CreateLazyMarshaler(TestWithTableAndInt{})
@@ -681,8 +681,8 @@
 }
 
 type Int64Struct struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	X int64    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	X int64    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mInt64Struct = _bindings.CreateLazyMarshaler(Int64Struct{})
@@ -692,9 +692,9 @@
 }
 
 type TestFuchsiaIoReadAtResponse struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	S    int32    `fidl_offset_v1:"0"`
-	Data []uint8  `fidl_offset_v1:"8" fidl_bounds:"8192"`
+	_    struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	S    int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Data []uint8  `fidl_offset_v1:"8" fidl_offset_v2:"8" fidl_bounds:"8192"`
 }
 
 var _mTestFuchsiaIoReadAtResponse = _bindings.CreateLazyMarshaler(TestFuchsiaIoReadAtResponse{})
@@ -704,9 +704,9 @@
 }
 
 type TestFuchsiaIoWriteAtRequest struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Data   []uint8  `fidl_offset_v1:"0" fidl_bounds:"8192"`
-	Offset uint64   `fidl_offset_v1:"16"`
+	_      struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Data   []uint8  `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"8192"`
+	Offset uint64   `fidl_offset_v1:"16" fidl_offset_v2:"16"`
 }
 
 var _mTestFuchsiaIoWriteAtRequest = _bindings.CreateLazyMarshaler(TestFuchsiaIoWriteAtRequest{})
@@ -716,11 +716,11 @@
 }
 
 type TestFuchsiaPosixSocketSendMsgRequest struct {
-	_        struct{}  `fidl:"s" fidl_size_v1:"56" fidl_alignment_v1:"8"`
-	Sockaddr []uint8   `fidl_offset_v1:"0" fidl_bounds:"128"`
-	Data     [][]uint8 `fidl_offset_v1:"16" fidl_bounds:""`
-	Control  []uint8   `fidl_offset_v1:"32" fidl_bounds:""`
-	Flags    int16     `fidl_offset_v1:"48"`
+	_        struct{}  `fidl:"s" fidl_size_v1:"56" fidl_alignment_v1:"8" fidl_size_v2:"56" fidl_alignment_v2:"8"`
+	Sockaddr []uint8   `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"128"`
+	Data     [][]uint8 `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_bounds:""`
+	Control  []uint8   `fidl_offset_v1:"32" fidl_offset_v2:"32" fidl_bounds:""`
+	Flags    int16     `fidl_offset_v1:"48" fidl_offset_v2:"48"`
 }
 
 var _mTestFuchsiaPosixSocketSendMsgRequest = _bindings.CreateLazyMarshaler(TestFuchsiaPosixSocketSendMsgRequest{})
@@ -730,9 +730,9 @@
 }
 
 type InterfaceConfig struct {
-	_               struct{}        `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8"`
-	Name            string          `fidl_offset_v1:"0" fidl_bounds:""`
-	IpAddressConfig IpAddressConfig `fidl_offset_v1:"16"`
+	_               struct{}        `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	Name            string          `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
+	IpAddressConfig IpAddressConfig `fidl_offset_v1:"16" fidl_offset_v2:"16"`
 }
 
 var _mInterfaceConfig = _bindings.CreateLazyMarshaler(InterfaceConfig{})
@@ -742,10 +742,10 @@
 }
 
 type TestAddEthernetDeviceRequest struct {
-	_               struct{}                       `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	TopologicalPath string                         `fidl_offset_v1:"0" fidl_bounds:""`
-	Config          InterfaceConfig                `fidl_offset_v1:"16"`
-	Device          EthernetDeviceWithCtxInterface `fidl_offset_v1:"56" fidl_handle_subtype:"4"`
+	_               struct{}                       `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"56" fidl_alignment_v2:"8"`
+	TopologicalPath string                         `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
+	Config          InterfaceConfig                `fidl_offset_v1:"16" fidl_offset_v2:"16"`
+	Device          EthernetDeviceWithCtxInterface `fidl_offset_v1:"56" fidl_offset_v2:"48" fidl_handle_subtype:"4"`
 }
 
 var _mTestAddEthernetDeviceRequest = _bindings.CreateLazyMarshaler(TestAddEthernetDeviceRequest{})
@@ -755,11 +755,11 @@
 }
 
 type TestPackageResolverResolveRequest struct {
-	_            struct{}                              `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8"`
-	PackageUrl   string                                `fidl_offset_v1:"0" fidl_bounds:""`
-	Selectors    []string                              `fidl_offset_v1:"16" fidl_bounds:""`
-	UpdatePolicy UpdatePolicy                          `fidl_offset_v1:"32"`
-	Dir          EthernetDeviceWithCtxInterfaceRequest `fidl_offset_v1:"36" fidl_handle_subtype:"4" fidl_bounds:"0"`
+	_            struct{}                              `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8" fidl_size_v2:"40" fidl_alignment_v2:"8"`
+	PackageUrl   string                                `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
+	Selectors    []string                              `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_bounds:""`
+	UpdatePolicy UpdatePolicy                          `fidl_offset_v1:"32" fidl_offset_v2:"32"`
+	Dir          EthernetDeviceWithCtxInterfaceRequest `fidl_offset_v1:"36" fidl_offset_v2:"36" fidl_handle_subtype:"4" fidl_bounds:"0"`
 }
 
 var _mTestPackageResolverResolveRequest = _bindings.CreateLazyMarshaler(TestPackageResolverResolveRequest{})
@@ -769,9 +769,9 @@
 }
 
 type UpdatePolicy struct {
-	_                struct{} `fidl:"s" fidl_size_v1:"2" fidl_alignment_v1:"1"`
-	FetchIfAbsent    bool     `fidl_offset_v1:"0"`
-	AllowOldVersions bool     `fidl_offset_v1:"1"`
+	_                struct{} `fidl:"s" fidl_size_v1:"2" fidl_alignment_v1:"1" fidl_size_v2:"2" fidl_alignment_v2:"1"`
+	FetchIfAbsent    bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	AllowOldVersions bool     `fidl_offset_v1:"1" fidl_offset_v2:"1"`
 }
 
 var _mUpdatePolicy = _bindings.CreateLazyMarshaler(UpdatePolicy{})
@@ -781,8 +781,8 @@
 }
 
 type TestUcharEnumVec struct {
-	_      struct{}        `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Values []TestUcharEnum `fidl_offset_v1:"0" fidl_bounds:""`
+	_      struct{}        `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Values []TestUcharEnum `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
 }
 
 var _mTestUcharEnumVec = _bindings.CreateLazyMarshaler(TestUcharEnumVec{})
@@ -792,8 +792,8 @@
 }
 
 type HandleRightsSubtypeTestStruct struct {
-	_ struct{}  `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	H []_zx.VMO `fidl_offset_v1:"0" fidl_handle_subtype:"3" fidl_handle_rights:"3" fidl_bounds:",0"`
+	_ struct{}  `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	H []_zx.VMO `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"3" fidl_handle_rights:"3" fidl_bounds:",0"`
 }
 
 var _mHandleRightsSubtypeTestStruct = _bindings.CreateLazyMarshaler(HandleRightsSubtypeTestStruct{})
@@ -803,8 +803,8 @@
 }
 
 type PlainHandleTestStruct struct {
-	_ struct{}   `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4"`
-	H _zx.Handle `fidl_offset_v1:"0" fidl_handle_subtype:"0" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	_ struct{}   `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4" fidl_size_v2:"4" fidl_alignment_v2:"4"`
+	H _zx.Handle `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"0" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 }
 
 var _mPlainHandleTestStruct = _bindings.CreateLazyMarshaler(PlainHandleTestStruct{})
@@ -814,8 +814,8 @@
 }
 
 type test1WithCtxEchoRequest struct {
-	_  struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	In *string  `fidl_offset_v1:"0" fidl_bounds:""`
+	_  struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	In *string  `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
 }
 
 var _mtest1WithCtxEchoRequest = _bindings.CreateLazyMarshaler(test1WithCtxEchoRequest{})
@@ -825,8 +825,8 @@
 }
 
 type test1WithCtxEchoResponse struct {
-	_   struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Out *string  `fidl_offset_v1:"0" fidl_bounds:""`
+	_   struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Out *string  `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
 }
 
 var _mtest1WithCtxEchoResponse = _bindings.CreateLazyMarshaler(test1WithCtxEchoResponse{})
@@ -836,8 +836,8 @@
 }
 
 type test1WithCtxSurpriseResponse struct {
-	_   struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Foo string   `fidl_offset_v1:"0" fidl_bounds:""`
+	_   struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Foo string   `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
 }
 
 var _mtest1WithCtxSurpriseResponse = _bindings.CreateLazyMarshaler(test1WithCtxSurpriseResponse{})
@@ -847,8 +847,8 @@
 }
 
 type test1WithCtxEchoHandleRightsRequest struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	H _zx.Port `fidl_offset_v1:"0" fidl_handle_subtype:"6" fidl_handle_rights:"7" fidl_bounds:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	H _zx.Port `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"6" fidl_handle_rights:"7" fidl_bounds:"0"`
 }
 
 var _mtest1WithCtxEchoHandleRightsRequest = _bindings.CreateLazyMarshaler(test1WithCtxEchoHandleRightsRequest{})
@@ -858,8 +858,8 @@
 }
 
 type test1WithCtxEchoHandleRightsResponse struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Rights uint32   `fidl_offset_v1:"0"`
+	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Rights uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mtest1WithCtxEchoHandleRightsResponse = _bindings.CreateLazyMarshaler(test1WithCtxEchoHandleRightsResponse{})
@@ -877,7 +877,7 @@
 )
 
 type TestRecursiveVectorUnion struct {
-	I_testRecursiveVectorUnionTag `fidl:"x" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_testRecursiveVectorUnionTag `fidl:"x" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData                 interface{}
 	A                             float32                     `fidl_ordinal:"1"`
 	B                             []*TestRecursiveVectorUnion `fidl_bounds:"" fidl_ordinal:"2"`
@@ -948,7 +948,7 @@
 )
 
 type Union1 struct {
-	I_union1Tag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_union1Tag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	A           [3]int8    `fidl_ordinal:"1"`
 	B           TestSimple `fidl_ordinal:"2"`
 	D           float32    `fidl_ordinal:"3"`
@@ -1022,7 +1022,7 @@
 )
 
 type XUnion1 struct {
-	I_xUnion1Tag  `fidl:"x" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_xUnion1Tag  `fidl:"x" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	A             [3]int8    `fidl_ordinal:"1"`
 	B             TestSimple `fidl_ordinal:"2"`
@@ -1111,7 +1111,7 @@
 )
 
 type XUnion1AsUnion struct {
-	I_xUnion1AsUnionTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_xUnion1AsUnionTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	A                   [3]int8    `fidl_ordinal:"1"`
 	B                   TestSimple `fidl_ordinal:"2"`
 	D                   float32    `fidl_ordinal:"3"`
@@ -1183,7 +1183,7 @@
 )
 
 type UnionInsideUnion struct {
-	I_unionInsideUnionTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_unionInsideUnionTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	A                     float32        `fidl_ordinal:"1"`
 	B                     XUnion1AsUnion `fidl_ordinal:"2"`
 }
@@ -1240,7 +1240,7 @@
 )
 
 type XUnionInsideXUnion struct {
-	I_xUnionInsideXUnionTag `fidl:"x" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_xUnionInsideXUnionTag `fidl:"x" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData           interface{}
 	A                       float32 `fidl_ordinal:"1"`
 	B                       XUnion1 `fidl_ordinal:"2"`
@@ -1311,7 +1311,7 @@
 )
 
 type StrictXUnion1 struct {
-	I_strictXUnion1Tag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_strictXUnion1Tag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	A                  [3]int8    `fidl_ordinal:"1"`
 	B                  TestSimple `fidl_ordinal:"2"`
 	D                  float32    `fidl_ordinal:"3"`
@@ -1385,7 +1385,7 @@
 )
 
 type SimpleUnion struct {
-	I_simpleUnionTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_simpleUnionTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I32              int32       `fidl_ordinal:"1"`
 	I64              int64       `fidl_ordinal:"2"`
 	S                Int64Struct `fidl_ordinal:"3"`
@@ -1473,7 +1473,7 @@
 )
 
 type IpAddressConfig struct {
-	I_ipAddressConfigTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_ipAddressConfigTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	PaddingSize24Align4  [6]uint32 `fidl_ordinal:"1"`
 	Dhcp                 bool      `fidl_ordinal:"2"`
 }
@@ -1522,7 +1522,7 @@
 }
 
 type SimpleTable struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	X             int64 `fidl_ordinal:"1"`
 	XPresent      bool
@@ -1587,7 +1587,7 @@
 }
 
 type OlderSimpleTable struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	X             int64 `fidl_ordinal:"1"`
 	XPresent      bool
@@ -1626,7 +1626,7 @@
 }
 
 type NewerSimpleTable struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	X             int64 `fidl_ordinal:"1"`
 	XPresent      bool
diff --git a/src/syscall/zx/hardware/ethernet/impl.go b/src/syscall/zx/hardware/ethernet/impl.go
index e1a2f7a..36112a8 100644
--- a/src/syscall/zx/hardware/ethernet/impl.go
+++ b/src/syscall/zx/hardware/ethernet/impl.go
@@ -124,8 +124,8 @@
 }
 
 type MacAddress struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"6" fidl_alignment_v1:"1"`
-	Octets [6]uint8 `fidl_offset_v1:"0"`
+	_      struct{} `fidl:"s" fidl_size_v1:"6" fidl_alignment_v1:"1" fidl_size_v2:"6" fidl_alignment_v2:"1"`
+	Octets [6]uint8 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mMacAddress = _bindings.CreateLazyMarshaler(MacAddress{})
@@ -135,10 +135,10 @@
 }
 
 type Info struct {
-	_        struct{}   `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"4"`
-	Features Features   `fidl_offset_v1:"0"`
-	Mtu      uint32     `fidl_offset_v1:"4"`
-	Mac      MacAddress `fidl_offset_v1:"8"`
+	_        struct{}   `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"4" fidl_size_v2:"16" fidl_alignment_v2:"4"`
+	Features Features   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Mtu      uint32     `fidl_offset_v1:"4" fidl_offset_v2:"4"`
+	Mac      MacAddress `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mInfo = _bindings.CreateLazyMarshaler(Info{})
@@ -148,11 +148,11 @@
 }
 
 type Fifos struct {
-	_       struct{}   `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"4"`
-	Rx      _zx.Handle `fidl_offset_v1:"0" fidl_handle_subtype:"19" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
-	Tx      _zx.Handle `fidl_offset_v1:"4" fidl_handle_subtype:"19" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
-	RxDepth uint32     `fidl_offset_v1:"8"`
-	TxDepth uint32     `fidl_offset_v1:"12"`
+	_       struct{}   `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"4" fidl_size_v2:"16" fidl_alignment_v2:"4"`
+	Rx      _zx.Handle `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"19" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	Tx      _zx.Handle `fidl_offset_v1:"4" fidl_offset_v2:"4" fidl_handle_subtype:"19" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	RxDepth uint32     `fidl_offset_v1:"8" fidl_offset_v2:"8"`
+	TxDepth uint32     `fidl_offset_v1:"12" fidl_offset_v2:"12"`
 }
 
 var _mFifos = _bindings.CreateLazyMarshaler(Fifos{})
@@ -162,8 +162,8 @@
 }
 
 type deviceWithCtxGetInfoResponse struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Info Info     `fidl_offset_v1:"0"`
+	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info Info     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdeviceWithCtxGetInfoResponse = _bindings.CreateLazyMarshaler(deviceWithCtxGetInfoResponse{})
@@ -173,9 +173,9 @@
 }
 
 type deviceWithCtxGetFifosResponse struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Status int32    `fidl_offset_v1:"0"`
-	Info   *Fifos   `fidl_offset_v1:"8"`
+	_      struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Status int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Info   *Fifos   `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mdeviceWithCtxGetFifosResponse = _bindings.CreateLazyMarshaler(deviceWithCtxGetFifosResponse{})
@@ -185,8 +185,8 @@
 }
 
 type deviceWithCtxSetIoBufferRequest struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	H _zx.VMO  `fidl_offset_v1:"0" fidl_handle_subtype:"3" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	H _zx.VMO  `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"3" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 }
 
 var _mdeviceWithCtxSetIoBufferRequest = _bindings.CreateLazyMarshaler(deviceWithCtxSetIoBufferRequest{})
@@ -196,8 +196,8 @@
 }
 
 type deviceWithCtxSetIoBufferResponse struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Status int32    `fidl_offset_v1:"0"`
+	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Status int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdeviceWithCtxSetIoBufferResponse = _bindings.CreateLazyMarshaler(deviceWithCtxSetIoBufferResponse{})
@@ -207,8 +207,8 @@
 }
 
 type deviceWithCtxStartResponse struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Status int32    `fidl_offset_v1:"0"`
+	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Status int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdeviceWithCtxStartResponse = _bindings.CreateLazyMarshaler(deviceWithCtxStartResponse{})
@@ -218,8 +218,8 @@
 }
 
 type deviceWithCtxListenStartResponse struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Status int32    `fidl_offset_v1:"0"`
+	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Status int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdeviceWithCtxListenStartResponse = _bindings.CreateLazyMarshaler(deviceWithCtxListenStartResponse{})
@@ -229,8 +229,8 @@
 }
 
 type deviceWithCtxSetClientNameRequest struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Name string   `fidl_offset_v1:"0" fidl_bounds:"16"`
+	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Name string   `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"16"`
 }
 
 var _mdeviceWithCtxSetClientNameRequest = _bindings.CreateLazyMarshaler(deviceWithCtxSetClientNameRequest{})
@@ -240,8 +240,8 @@
 }
 
 type deviceWithCtxSetClientNameResponse struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Status int32    `fidl_offset_v1:"0"`
+	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Status int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdeviceWithCtxSetClientNameResponse = _bindings.CreateLazyMarshaler(deviceWithCtxSetClientNameResponse{})
@@ -251,8 +251,8 @@
 }
 
 type deviceWithCtxGetStatusResponse struct {
-	_            struct{}     `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	DeviceStatus DeviceStatus `fidl_offset_v1:"0"`
+	_            struct{}     `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	DeviceStatus DeviceStatus `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdeviceWithCtxGetStatusResponse = _bindings.CreateLazyMarshaler(deviceWithCtxGetStatusResponse{})
@@ -262,8 +262,8 @@
 }
 
 type deviceWithCtxSetPromiscuousModeRequest struct {
-	_       struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Enabled bool     `fidl_offset_v1:"0"`
+	_       struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Enabled bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdeviceWithCtxSetPromiscuousModeRequest = _bindings.CreateLazyMarshaler(deviceWithCtxSetPromiscuousModeRequest{})
@@ -273,8 +273,8 @@
 }
 
 type deviceWithCtxSetPromiscuousModeResponse struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Status int32    `fidl_offset_v1:"0"`
+	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Status int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdeviceWithCtxSetPromiscuousModeResponse = _bindings.CreateLazyMarshaler(deviceWithCtxSetPromiscuousModeResponse{})
@@ -284,8 +284,8 @@
 }
 
 type deviceWithCtxConfigMulticastAddMacRequest struct {
-	_    struct{}   `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Addr MacAddress `fidl_offset_v1:"0"`
+	_    struct{}   `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Addr MacAddress `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdeviceWithCtxConfigMulticastAddMacRequest = _bindings.CreateLazyMarshaler(deviceWithCtxConfigMulticastAddMacRequest{})
@@ -295,8 +295,8 @@
 }
 
 type deviceWithCtxConfigMulticastAddMacResponse struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Status int32    `fidl_offset_v1:"0"`
+	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Status int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdeviceWithCtxConfigMulticastAddMacResponse = _bindings.CreateLazyMarshaler(deviceWithCtxConfigMulticastAddMacResponse{})
@@ -306,8 +306,8 @@
 }
 
 type deviceWithCtxConfigMulticastDeleteMacRequest struct {
-	_    struct{}   `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Addr MacAddress `fidl_offset_v1:"0"`
+	_    struct{}   `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Addr MacAddress `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdeviceWithCtxConfigMulticastDeleteMacRequest = _bindings.CreateLazyMarshaler(deviceWithCtxConfigMulticastDeleteMacRequest{})
@@ -317,8 +317,8 @@
 }
 
 type deviceWithCtxConfigMulticastDeleteMacResponse struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Status int32    `fidl_offset_v1:"0"`
+	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Status int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdeviceWithCtxConfigMulticastDeleteMacResponse = _bindings.CreateLazyMarshaler(deviceWithCtxConfigMulticastDeleteMacResponse{})
@@ -328,8 +328,8 @@
 }
 
 type deviceWithCtxConfigMulticastSetPromiscuousModeRequest struct {
-	_       struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Enabled bool     `fidl_offset_v1:"0"`
+	_       struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Enabled bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdeviceWithCtxConfigMulticastSetPromiscuousModeRequest = _bindings.CreateLazyMarshaler(deviceWithCtxConfigMulticastSetPromiscuousModeRequest{})
@@ -339,8 +339,8 @@
 }
 
 type deviceWithCtxConfigMulticastSetPromiscuousModeResponse struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Status int32    `fidl_offset_v1:"0"`
+	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Status int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdeviceWithCtxConfigMulticastSetPromiscuousModeResponse = _bindings.CreateLazyMarshaler(deviceWithCtxConfigMulticastSetPromiscuousModeResponse{})
@@ -350,8 +350,8 @@
 }
 
 type deviceWithCtxConfigMulticastTestFilterResponse struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Status int32    `fidl_offset_v1:"0"`
+	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Status int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdeviceWithCtxConfigMulticastTestFilterResponse = _bindings.CreateLazyMarshaler(deviceWithCtxConfigMulticastTestFilterResponse{})
@@ -361,8 +361,8 @@
 }
 
 type deviceWithCtxDumpRegistersResponse struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Status int32    `fidl_offset_v1:"0"`
+	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Status int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdeviceWithCtxDumpRegistersResponse = _bindings.CreateLazyMarshaler(deviceWithCtxDumpRegistersResponse{})
diff --git a/src/syscall/zx/hardware/network/impl.go b/src/syscall/zx/hardware/network/impl.go
index 1bf83ce..e7f333e 100644
--- a/src/syscall/zx/hardware/network/impl.go
+++ b/src/syscall/zx/hardware/network/impl.go
@@ -790,9 +790,9 @@
 }
 
 type DeviceOpenSessionResponse struct {
-	_       struct{}                `fidl:"s" fidl_size_v1:"12" fidl_alignment_v1:"4"`
-	Session SessionWithCtxInterface `fidl_offset_v1:"0" fidl_handle_subtype:"4"`
-	Fifos   Fifos                   `fidl_offset_v1:"4"`
+	_       struct{}                `fidl:"s" fidl_size_v1:"12" fidl_alignment_v1:"4" fidl_size_v2:"12" fidl_alignment_v2:"4"`
+	Session SessionWithCtxInterface `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"4"`
+	Fifos   Fifos                   `fidl_offset_v1:"4" fidl_offset_v2:"4"`
 }
 
 var _mDeviceOpenSessionResponse = _bindings.CreateLazyMarshaler(DeviceOpenSessionResponse{})
@@ -802,7 +802,7 @@
 }
 
 type Empty struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mEmpty = _bindings.CreateLazyMarshaler(Empty{})
@@ -822,13 +822,13 @@
 // that do not perform parsing are encouraged to just use the [`FRAME_FEATURES_RAW`] bit in
 // `features`, which informs the client that all frame features are allowed.
 type FrameTypeSupport struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"12" fidl_alignment_v1:"4"`
+	_ struct{} `fidl:"s" fidl_size_v1:"12" fidl_alignment_v1:"4" fidl_size_v2:"12" fidl_alignment_v2:"4"`
 	// The frame type this support entry refers to.
-	Type FrameType `fidl_offset_v1:"0"`
+	Type FrameType `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 	// The frame type-specific features supported.
-	Features uint32 `fidl_offset_v1:"4"`
+	Features uint32 `fidl_offset_v1:"4" fidl_offset_v2:"4"`
 	// The flags supported for the given frame type.
-	SupportedFlags TxFlags `fidl_offset_v1:"8"`
+	SupportedFlags TxFlags `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mFrameTypeSupport = _bindings.CreateLazyMarshaler(FrameTypeSupport{})
@@ -838,7 +838,7 @@
 }
 
 type SessionAttachResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mSessionAttachResponse = _bindings.CreateLazyMarshaler(SessionAttachResponse{})
@@ -848,7 +848,7 @@
 }
 
 type SessionDetachResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mSessionDetachResponse = _bindings.CreateLazyMarshaler(SessionDetachResponse{})
@@ -859,16 +859,16 @@
 
 // Data-plane FIFOs.
 type Fifos struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"4"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"4" fidl_size_v2:"8" fidl_alignment_v2:"4"`
 	// Handle for the rx FIFO.
 	//
 	// Clients must write 16-bit descriptor indexes to this FIFO to be able to receive
 	// frames.
-	Rx _zx.Handle `fidl_offset_v1:"0" fidl_handle_subtype:"19" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	Rx _zx.Handle `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"19" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 	// Handle for the tx FIFO.
 	//
 	// Clients write 16-bit descriptor indexes to this FIFO to enqueue outgoing frames.
-	Tx _zx.Handle `fidl_offset_v1:"4" fidl_handle_subtype:"19" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	Tx _zx.Handle `fidl_offset_v1:"4" fidl_offset_v2:"4" fidl_handle_subtype:"19" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 }
 
 var _mFifos = _bindings.CreateLazyMarshaler(Fifos{})
@@ -878,8 +878,8 @@
 }
 
 type deviceWithCtxGetInfoResponse struct {
-	_    struct{}   `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Info DeviceInfo `fidl_offset_v1:"0"`
+	_    struct{}   `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info DeviceInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdeviceWithCtxGetInfoResponse = _bindings.CreateLazyMarshaler(deviceWithCtxGetInfoResponse{})
@@ -889,9 +889,9 @@
 }
 
 type deviceWithCtxOpenSessionRequest struct {
-	_           struct{}    `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	SessionName string      `fidl_offset_v1:"0" fidl_bounds:"64"`
-	SessionInfo SessionInfo `fidl_offset_v1:"16"`
+	_           struct{}    `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	SessionName string      `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"64"`
+	SessionInfo SessionInfo `fidl_offset_v1:"16" fidl_offset_v2:"16"`
 }
 
 var _mdeviceWithCtxOpenSessionRequest = _bindings.CreateLazyMarshaler(deviceWithCtxOpenSessionRequest{})
@@ -901,8 +901,8 @@
 }
 
 type deviceWithCtxOpenSessionResponse struct {
-	_      struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result DeviceOpenSessionResult `fidl_offset_v1:"0"`
+	_      struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result DeviceOpenSessionResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdeviceWithCtxOpenSessionResponse = _bindings.CreateLazyMarshaler(deviceWithCtxOpenSessionResponse{})
@@ -912,9 +912,9 @@
 }
 
 type deviceWithCtxGetPortRequest struct {
-	_    struct{}                    `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Id   uint8                       `fidl_offset_v1:"0"`
-	Port PortWithCtxInterfaceRequest `fidl_offset_v1:"4" fidl_handle_subtype:"4" fidl_bounds:"0"`
+	_    struct{}                    `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Id   uint8                       `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Port PortWithCtxInterfaceRequest `fidl_offset_v1:"4" fidl_offset_v2:"4" fidl_handle_subtype:"4" fidl_bounds:"0"`
 }
 
 var _mdeviceWithCtxGetPortRequest = _bindings.CreateLazyMarshaler(deviceWithCtxGetPortRequest{})
@@ -924,8 +924,8 @@
 }
 
 type deviceWithCtxGetPortWatcherRequest struct {
-	_       struct{}                           `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Watcher PortWatcherWithCtxInterfaceRequest `fidl_offset_v1:"0" fidl_handle_subtype:"4" fidl_bounds:"0"`
+	_       struct{}                           `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Watcher PortWatcherWithCtxInterfaceRequest `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"4" fidl_bounds:"0"`
 }
 
 var _mdeviceWithCtxGetPortWatcherRequest = _bindings.CreateLazyMarshaler(deviceWithCtxGetPortWatcherRequest{})
@@ -935,8 +935,8 @@
 }
 
 type portWatcherWithCtxWatchResponse struct {
-	_     struct{}        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Event DevicePortEvent `fidl_offset_v1:"0"`
+	_     struct{}        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Event DevicePortEvent `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mportWatcherWithCtxWatchResponse = _bindings.CreateLazyMarshaler(portWatcherWithCtxWatchResponse{})
@@ -946,8 +946,8 @@
 }
 
 type deviceInstanceWithCtxGetDeviceRequest struct {
-	_      struct{}                      `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Device DeviceWithCtxInterfaceRequest `fidl_offset_v1:"0" fidl_handle_subtype:"4" fidl_bounds:"0"`
+	_      struct{}                      `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Device DeviceWithCtxInterfaceRequest `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"4" fidl_bounds:"0"`
 }
 
 var _mdeviceInstanceWithCtxGetDeviceRequest = _bindings.CreateLazyMarshaler(deviceInstanceWithCtxGetDeviceRequest{})
@@ -957,8 +957,8 @@
 }
 
 type macAddressingWithCtxGetUnicastAddressResponse struct {
-	_       struct{}              `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Address fuchsianet.MacAddress `fidl_offset_v1:"0"`
+	_       struct{}              `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Address fuchsianet.MacAddress `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mmacAddressingWithCtxGetUnicastAddressResponse = _bindings.CreateLazyMarshaler(macAddressingWithCtxGetUnicastAddressResponse{})
@@ -968,8 +968,8 @@
 }
 
 type macAddressingWithCtxSetModeRequest struct {
-	_    struct{}      `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Mode MacFilterMode `fidl_offset_v1:"0"`
+	_    struct{}      `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Mode MacFilterMode `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mmacAddressingWithCtxSetModeRequest = _bindings.CreateLazyMarshaler(macAddressingWithCtxSetModeRequest{})
@@ -979,8 +979,8 @@
 }
 
 type macAddressingWithCtxSetModeResponse struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Status int32    `fidl_offset_v1:"0"`
+	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Status int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mmacAddressingWithCtxSetModeResponse = _bindings.CreateLazyMarshaler(macAddressingWithCtxSetModeResponse{})
@@ -990,8 +990,8 @@
 }
 
 type macAddressingWithCtxAddMulticastAddressRequest struct {
-	_       struct{}              `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Address fuchsianet.MacAddress `fidl_offset_v1:"0"`
+	_       struct{}              `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Address fuchsianet.MacAddress `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mmacAddressingWithCtxAddMulticastAddressRequest = _bindings.CreateLazyMarshaler(macAddressingWithCtxAddMulticastAddressRequest{})
@@ -1001,8 +1001,8 @@
 }
 
 type macAddressingWithCtxAddMulticastAddressResponse struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Status int32    `fidl_offset_v1:"0"`
+	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Status int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mmacAddressingWithCtxAddMulticastAddressResponse = _bindings.CreateLazyMarshaler(macAddressingWithCtxAddMulticastAddressResponse{})
@@ -1012,8 +1012,8 @@
 }
 
 type macAddressingWithCtxRemoveMulticastAddressRequest struct {
-	_       struct{}              `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Address fuchsianet.MacAddress `fidl_offset_v1:"0"`
+	_       struct{}              `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Address fuchsianet.MacAddress `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mmacAddressingWithCtxRemoveMulticastAddressRequest = _bindings.CreateLazyMarshaler(macAddressingWithCtxRemoveMulticastAddressRequest{})
@@ -1023,8 +1023,8 @@
 }
 
 type macAddressingWithCtxRemoveMulticastAddressResponse struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Status int32    `fidl_offset_v1:"0"`
+	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Status int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mmacAddressingWithCtxRemoveMulticastAddressResponse = _bindings.CreateLazyMarshaler(macAddressingWithCtxRemoveMulticastAddressResponse{})
@@ -1034,8 +1034,8 @@
 }
 
 type statusWatcherWithCtxWatchStatusResponse struct {
-	_          struct{}   `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	PortStatus PortStatus `fidl_offset_v1:"0"`
+	_          struct{}   `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	PortStatus PortStatus `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstatusWatcherWithCtxWatchStatusResponse = _bindings.CreateLazyMarshaler(statusWatcherWithCtxWatchStatusResponse{})
@@ -1045,8 +1045,8 @@
 }
 
 type portWithCtxGetInfoResponse struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Info PortInfo `fidl_offset_v1:"0"`
+	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info PortInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mportWithCtxGetInfoResponse = _bindings.CreateLazyMarshaler(portWithCtxGetInfoResponse{})
@@ -1056,8 +1056,8 @@
 }
 
 type portWithCtxGetStatusResponse struct {
-	_      struct{}   `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Status PortStatus `fidl_offset_v1:"0"`
+	_      struct{}   `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Status PortStatus `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mportWithCtxGetStatusResponse = _bindings.CreateLazyMarshaler(portWithCtxGetStatusResponse{})
@@ -1067,9 +1067,9 @@
 }
 
 type portWithCtxGetStatusWatcherRequest struct {
-	_       struct{}                             `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Watcher StatusWatcherWithCtxInterfaceRequest `fidl_offset_v1:"0" fidl_handle_subtype:"4" fidl_bounds:"0"`
-	Buffer  uint32                               `fidl_offset_v1:"4"`
+	_       struct{}                             `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Watcher StatusWatcherWithCtxInterfaceRequest `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"4" fidl_bounds:"0"`
+	Buffer  uint32                               `fidl_offset_v1:"4" fidl_offset_v2:"4"`
 }
 
 var _mportWithCtxGetStatusWatcherRequest = _bindings.CreateLazyMarshaler(portWithCtxGetStatusWatcherRequest{})
@@ -1079,8 +1079,8 @@
 }
 
 type portWithCtxGetMacRequest struct {
-	_   struct{}                             `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Mac MacAddressingWithCtxInterfaceRequest `fidl_offset_v1:"0" fidl_handle_subtype:"4" fidl_bounds:"0"`
+	_   struct{}                             `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Mac MacAddressingWithCtxInterfaceRequest `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"4" fidl_bounds:"0"`
 }
 
 var _mportWithCtxGetMacRequest = _bindings.CreateLazyMarshaler(portWithCtxGetMacRequest{})
@@ -1090,9 +1090,9 @@
 }
 
 type sessionWithCtxAttachRequest struct {
-	_        struct{}    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Port     uint8       `fidl_offset_v1:"0"`
-	RxFrames []FrameType `fidl_offset_v1:"8" fidl_bounds:"4"`
+	_        struct{}    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Port     uint8       `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	RxFrames []FrameType `fidl_offset_v1:"8" fidl_offset_v2:"8" fidl_bounds:"4"`
 }
 
 var _msessionWithCtxAttachRequest = _bindings.CreateLazyMarshaler(sessionWithCtxAttachRequest{})
@@ -1102,8 +1102,8 @@
 }
 
 type sessionWithCtxAttachResponse struct {
-	_      struct{}            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result SessionAttachResult `fidl_offset_v1:"0"`
+	_      struct{}            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result SessionAttachResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _msessionWithCtxAttachResponse = _bindings.CreateLazyMarshaler(sessionWithCtxAttachResponse{})
@@ -1113,8 +1113,8 @@
 }
 
 type sessionWithCtxDetachRequest struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Port uint8    `fidl_offset_v1:"0"`
+	_    struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Port uint8    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _msessionWithCtxDetachRequest = _bindings.CreateLazyMarshaler(sessionWithCtxDetachRequest{})
@@ -1124,8 +1124,8 @@
 }
 
 type sessionWithCtxDetachResponse struct {
-	_      struct{}            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result SessionDetachResult `fidl_offset_v1:"0"`
+	_      struct{}            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result SessionDetachResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _msessionWithCtxDetachResponse = _bindings.CreateLazyMarshaler(sessionWithCtxDetachResponse{})
@@ -1142,7 +1142,7 @@
 )
 
 type DeviceOpenSessionResult struct {
-	I_deviceOpenSessionResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"true"`
+	I_deviceOpenSessionResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"true"`
 	Response                     DeviceOpenSessionResponse `fidl_ordinal:"1"`
 	Err                          int32                     `fidl_ordinal:"2"`
 }
@@ -1201,7 +1201,7 @@
 
 // Port creation and destruction events.
 type DevicePortEvent struct {
-	I_devicePortEventTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_devicePortEventTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	// Port existed when watcher was created.
 	Existing uint8 `fidl_ordinal:"1"`
 	// New port was added to device.
@@ -1293,7 +1293,7 @@
 )
 
 type SessionAttachResult struct {
-	I_sessionAttachResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_sessionAttachResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                 SessionAttachResponse `fidl_ordinal:"1"`
 	Err                      int32                 `fidl_ordinal:"2"`
 }
@@ -1349,7 +1349,7 @@
 )
 
 type SessionDetachResult struct {
-	I_sessionDetachResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_sessionDetachResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                 SessionDetachResponse `fidl_ordinal:"1"`
 	Err                      int32                 `fidl_ordinal:"2"`
 }
@@ -1399,7 +1399,7 @@
 
 // Network device information.
 type DeviceInfo struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	// Minimum descriptor length, in 64-bit words. Required.
 	//
@@ -1792,7 +1792,7 @@
 
 // Dynamic port information.
 type PortStatus struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	// Port status flags.
 	Flags        StatusFlags `fidl_ordinal:"1"`
@@ -1863,7 +1863,7 @@
 
 // Logical port information.
 type PortInfo struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	// Port's identifier. Required.
 	Id        uint8 `fidl_ordinal:"1"`
@@ -1996,7 +1996,7 @@
 
 // Session configuration.
 type SessionInfo struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"true"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"true"`
 	I_unknownData interface{}
 	// VMO containing the descriptors. Required.
 	//
diff --git a/src/syscall/zx/io/impl.go b/src/syscall/zx/io/impl.go
index c796824..3e6b6b5 100644
--- a/src/syscall/zx/io/impl.go
+++ b/src/syscall/zx/io/impl.go
@@ -226,7 +226,7 @@
 }
 
 type DirectoryUnlink2Response struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mDirectoryUnlink2Response = _bindings.CreateLazyMarshaler(DirectoryUnlink2Response{})
@@ -236,7 +236,7 @@
 }
 
 type DirectoryRename2Response struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mDirectoryRename2Response = _bindings.CreateLazyMarshaler(DirectoryRename2Response{})
@@ -247,7 +247,7 @@
 
 // A [`NodeInfo`] variant.
 type Service struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mService = _bindings.CreateLazyMarshaler(Service{})
@@ -258,18 +258,18 @@
 
 // A [`NodeInfo`] variant.
 type FileObject struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"4"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"4" fidl_size_v2:"8" fidl_alignment_v2:"4"`
 	// An optional event which transmits information about an object's readability
 	// or writability. This event relays information about the underlying object, not
 	// the capability granted to client: this event may be signalled "readable" on a
 	// connection that does not have the capability to read.
 	//
 	// The "`FILE_SIGNAL_`" values may be observed on this event.
-	Event _zx.Event `fidl_offset_v1:"0" fidl_handle_subtype:"5" fidl_handle_rights:"2147483648" fidl_bounds:"1"`
+	Event _zx.Event `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"5" fidl_handle_rights:"2147483648" fidl_bounds:"1"`
 	// A placeholder for future stream support.
 	//
 	// Currently, servers are required not to send a handle in this field.
-	Stream _zx.Handle `fidl_offset_v1:"4" fidl_handle_subtype:"31" fidl_handle_rights:"2147483648" fidl_bounds:"1"`
+	Stream _zx.Handle `fidl_offset_v1:"4" fidl_offset_v2:"4" fidl_handle_subtype:"31" fidl_handle_rights:"2147483648" fidl_bounds:"1"`
 }
 
 var _mFileObject = _bindings.CreateLazyMarshaler(FileObject{})
@@ -280,7 +280,7 @@
 
 // A [`NodeInfo`] variant.
 type DirectoryObject struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mDirectoryObject = _bindings.CreateLazyMarshaler(DirectoryObject{})
@@ -291,8 +291,8 @@
 
 // A [`NodeInfo`] variant.
 type Pipe struct {
-	_      struct{}   `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4"`
-	Socket _zx.Socket `fidl_offset_v1:"0" fidl_handle_subtype:"14" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	_      struct{}   `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4" fidl_size_v2:"4" fidl_alignment_v2:"4"`
+	Socket _zx.Socket `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"14" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 }
 
 var _mPipe = _bindings.CreateLazyMarshaler(Pipe{})
@@ -303,13 +303,13 @@
 
 // A [`NodeInfo`] variant.
 type Vmofile struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
+	_ struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
 	// The VMO which backs this file.
-	Vmo _zx.VMO `fidl_offset_v1:"0" fidl_handle_subtype:"3" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	Vmo _zx.VMO `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"3" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 	// The index into `vmo` which represents the first byte of the file.
-	Offset uint64 `fidl_offset_v1:"8"`
+	Offset uint64 `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 	// The number of bytes, starting at `offset`, which may be used to represent this file.
-	Length uint64 `fidl_offset_v1:"16"`
+	Length uint64 `fidl_offset_v1:"16" fidl_offset_v2:"16"`
 }
 
 var _mVmofile = _bindings.CreateLazyMarshaler(Vmofile{})
@@ -320,11 +320,11 @@
 
 // A [`NodeInfo`] variant.
 type Device struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4"`
+	_ struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4" fidl_size_v2:"4" fidl_alignment_v2:"4"`
 	// An optional event which transmits information about a device's state.
 	//
 	// The "`DEVICE_SIGNAL_`" values may be observed on this event.
-	Event _zx.Handle `fidl_offset_v1:"0" fidl_handle_subtype:"16" fidl_handle_rights:"2147483648" fidl_bounds:"1"`
+	Event _zx.Handle `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"16" fidl_handle_rights:"2147483648" fidl_bounds:"1"`
 }
 
 var _mDevice = _bindings.CreateLazyMarshaler(Device{})
@@ -335,8 +335,8 @@
 
 // A [`NodeInfo`] variant.
 type Tty struct {
-	_     struct{}   `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4"`
-	Event _zx.Handle `fidl_offset_v1:"0" fidl_handle_subtype:"16" fidl_handle_rights:"2147483648" fidl_bounds:"1"`
+	_     struct{}   `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4" fidl_size_v2:"4" fidl_alignment_v2:"4"`
+	Event _zx.Handle `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"16" fidl_handle_rights:"2147483648" fidl_bounds:"1"`
 }
 
 var _mTty = _bindings.CreateLazyMarshaler(Tty{})
@@ -347,9 +347,9 @@
 
 // A [`NodeInfo`] variant.
 type DatagramSocket struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4"`
+	_ struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4" fidl_size_v2:"4" fidl_alignment_v2:"4"`
 	// See [`fuchsia.posix.socket.DatagramSocket`] for details.
-	Event _zx.Handle `fidl_offset_v1:"0" fidl_handle_subtype:"16" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	Event _zx.Handle `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"16" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 }
 
 var _mDatagramSocket = _bindings.CreateLazyMarshaler(DatagramSocket{})
@@ -360,8 +360,8 @@
 
 // A [`NodeInfo`] variant.
 type StreamSocket struct {
-	_      struct{}   `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4"`
-	Socket _zx.Socket `fidl_offset_v1:"0" fidl_handle_subtype:"14" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	_      struct{}   `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4" fidl_size_v2:"4" fidl_alignment_v2:"4"`
+	Socket _zx.Socket `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"14" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 }
 
 var _mStreamSocket = _bindings.CreateLazyMarshaler(StreamSocket{})
@@ -372,21 +372,21 @@
 
 // NodeAttributes defines generic information about a filesystem node.
 type NodeAttributes struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"56" fidl_alignment_v1:"8"`
+	_ struct{} `fidl:"s" fidl_size_v1:"56" fidl_alignment_v1:"8" fidl_size_v2:"56" fidl_alignment_v2:"8"`
 	// Protection bits and node type information describe in 'mode'.
-	Mode uint32 `fidl_offset_v1:"0"`
+	Mode uint32 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 	// A filesystem-unique ID.
-	Id uint64 `fidl_offset_v1:"8"`
+	Id uint64 `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 	// Node size, in bytes.
-	ContentSize uint64 `fidl_offset_v1:"16"`
+	ContentSize uint64 `fidl_offset_v1:"16" fidl_offset_v2:"16"`
 	// Space needed to store node (possibly larger than size), in bytes.
-	StorageSize uint64 `fidl_offset_v1:"24"`
+	StorageSize uint64 `fidl_offset_v1:"24" fidl_offset_v2:"24"`
 	// Hard link count.
-	LinkCount uint64 `fidl_offset_v1:"32"`
+	LinkCount uint64 `fidl_offset_v1:"32" fidl_offset_v2:"32"`
 	// Time of creation (may be updated manually after creation) in ns since Unix epoch, UTC.
-	CreationTime uint64 `fidl_offset_v1:"40"`
+	CreationTime uint64 `fidl_offset_v1:"40" fidl_offset_v2:"40"`
 	// Time of last modification in ns since Unix epoch, UTC.
-	ModificationTime uint64 `fidl_offset_v1:"48"`
+	ModificationTime uint64 `fidl_offset_v1:"48" fidl_offset_v2:"48"`
 }
 
 var _mNodeAttributes = _bindings.CreateLazyMarshaler(NodeAttributes{})
@@ -397,10 +397,10 @@
 
 // WatchedEvent describes events returned from a DirectoryWatcher.
 type WatchedEvent struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Event uint8    `fidl_offset_v1:"0"`
-	Len   uint8    `fidl_offset_v1:"1"`
-	Name  []uint8  `fidl_offset_v1:"8" fidl_bounds:"255"`
+	_     struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Event uint8    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Len   uint8    `fidl_offset_v1:"1" fidl_offset_v2:"1"`
+	Name  []uint8  `fidl_offset_v1:"8" fidl_offset_v2:"8" fidl_bounds:"255"`
 }
 
 var _mWatchedEvent = _bindings.CreateLazyMarshaler(WatchedEvent{})
@@ -410,29 +410,29 @@
 }
 
 type FilesystemInfo struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"96" fidl_alignment_v1:"8"`
+	_ struct{} `fidl:"s" fidl_size_v1:"96" fidl_alignment_v1:"8" fidl_size_v2:"96" fidl_alignment_v2:"8"`
 	// The number of data bytes which may be stored in a filesystem.
-	TotalBytes uint64 `fidl_offset_v1:"0"`
+	TotalBytes uint64 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 	// The number of data bytes which are in use by the filesystem.
-	UsedBytes uint64 `fidl_offset_v1:"8"`
+	UsedBytes uint64 `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 	// The number of nodes which may be stored in the filesystem.
-	TotalNodes uint64 `fidl_offset_v1:"16"`
+	TotalNodes uint64 `fidl_offset_v1:"16" fidl_offset_v2:"16"`
 	// The number of nodes used by the filesystem.
-	UsedNodes uint64 `fidl_offset_v1:"24"`
+	UsedNodes uint64 `fidl_offset_v1:"24" fidl_offset_v2:"24"`
 	// The amount of space which may be allocated from the underlying
 	// volume manager. If unsupported, this will be zero.
-	FreeSharedPoolBytes uint64 `fidl_offset_v1:"32"`
+	FreeSharedPoolBytes uint64 `fidl_offset_v1:"32" fidl_offset_v2:"32"`
 	// A unique identifier for this filesystem instance. Will not be preserved
 	// across reboots.
-	FsId uint64 `fidl_offset_v1:"40"`
+	FsId uint64 `fidl_offset_v1:"40" fidl_offset_v2:"40"`
 	// The size of a single filesystem block.
-	BlockSize uint32 `fidl_offset_v1:"48"`
+	BlockSize uint32 `fidl_offset_v1:"48" fidl_offset_v2:"48"`
 	// The maximum length of a filesystem name.
-	MaxFilenameSize uint32 `fidl_offset_v1:"52"`
+	MaxFilenameSize uint32 `fidl_offset_v1:"52" fidl_offset_v2:"52"`
 	// A unique identifier for the type of the underlying filesystem.
-	FsType  uint32   `fidl_offset_v1:"56"`
-	Padding uint32   `fidl_offset_v1:"60"`
-	Name    [32]int8 `fidl_offset_v1:"64"`
+	FsType  uint32   `fidl_offset_v1:"56" fidl_offset_v2:"56"`
+	Padding uint32   `fidl_offset_v1:"60" fidl_offset_v2:"60"`
+	Name    [32]int8 `fidl_offset_v1:"64" fidl_offset_v2:"64"`
 }
 
 var _mFilesystemInfo = _bindings.CreateLazyMarshaler(FilesystemInfo{})
@@ -442,9 +442,9 @@
 }
 
 type nodeWithCtxCloneRequest struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Flags  uint32                      `fidl_offset_v1:"0"`
-	Object NodeWithCtxInterfaceRequest `fidl_offset_v1:"4" fidl_handle_subtype:"4" fidl_bounds:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Flags  uint32                      `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Object NodeWithCtxInterfaceRequest `fidl_offset_v1:"4" fidl_offset_v2:"4" fidl_handle_subtype:"4" fidl_bounds:"0"`
 }
 
 var _mnodeWithCtxCloneRequest = _bindings.CreateLazyMarshaler(nodeWithCtxCloneRequest{})
@@ -454,8 +454,8 @@
 }
 
 type nodeWithCtxCloseResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mnodeWithCtxCloseResponse = _bindings.CreateLazyMarshaler(nodeWithCtxCloseResponse{})
@@ -465,8 +465,8 @@
 }
 
 type nodeWithCtxDescribeResponse struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Info NodeInfo `fidl_offset_v1:"0"`
+	_    struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info NodeInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mnodeWithCtxDescribeResponse = _bindings.CreateLazyMarshaler(nodeWithCtxDescribeResponse{})
@@ -476,9 +476,9 @@
 }
 
 type nodeWithCtxOnOpenResponse struct {
-	_    struct{}  `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	S    int32     `fidl_offset_v1:"0"`
-	Info *NodeInfo `fidl_offset_v1:"8"`
+	_    struct{}  `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	S    int32     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Info *NodeInfo `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mnodeWithCtxOnOpenResponse = _bindings.CreateLazyMarshaler(nodeWithCtxOnOpenResponse{})
@@ -488,8 +488,8 @@
 }
 
 type nodeWithCtxSyncResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mnodeWithCtxSyncResponse = _bindings.CreateLazyMarshaler(nodeWithCtxSyncResponse{})
@@ -499,9 +499,9 @@
 }
 
 type nodeWithCtxGetAttrResponse struct {
-	_          struct{}       `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	S          int32          `fidl_offset_v1:"0"`
-	Attributes NodeAttributes `fidl_offset_v1:"8"`
+	_          struct{}       `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"64" fidl_alignment_v2:"8"`
+	S          int32          `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Attributes NodeAttributes `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mnodeWithCtxGetAttrResponse = _bindings.CreateLazyMarshaler(nodeWithCtxGetAttrResponse{})
@@ -511,9 +511,9 @@
 }
 
 type nodeWithCtxSetAttrRequest struct {
-	_          struct{}       `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	Flags      uint32         `fidl_offset_v1:"0"`
-	Attributes NodeAttributes `fidl_offset_v1:"8"`
+	_          struct{}       `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"64" fidl_alignment_v2:"8"`
+	Flags      uint32         `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Attributes NodeAttributes `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mnodeWithCtxSetAttrRequest = _bindings.CreateLazyMarshaler(nodeWithCtxSetAttrRequest{})
@@ -523,8 +523,8 @@
 }
 
 type nodeWithCtxSetAttrResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mnodeWithCtxSetAttrResponse = _bindings.CreateLazyMarshaler(nodeWithCtxSetAttrResponse{})
@@ -534,9 +534,9 @@
 }
 
 type nodeWithCtxNodeGetFlagsResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S     int32    `fidl_offset_v1:"0"`
-	Flags uint32   `fidl_offset_v1:"4"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S     int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Flags uint32   `fidl_offset_v1:"4" fidl_offset_v2:"4"`
 }
 
 var _mnodeWithCtxNodeGetFlagsResponse = _bindings.CreateLazyMarshaler(nodeWithCtxNodeGetFlagsResponse{})
@@ -546,8 +546,8 @@
 }
 
 type nodeWithCtxNodeSetFlagsRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Flags uint32   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Flags uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mnodeWithCtxNodeSetFlagsRequest = _bindings.CreateLazyMarshaler(nodeWithCtxNodeSetFlagsRequest{})
@@ -557,8 +557,8 @@
 }
 
 type nodeWithCtxNodeSetFlagsResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mnodeWithCtxNodeSetFlagsResponse = _bindings.CreateLazyMarshaler(nodeWithCtxNodeSetFlagsResponse{})
@@ -568,9 +568,9 @@
 }
 
 type fileWithCtxCloneRequest struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Flags  uint32                      `fidl_offset_v1:"0"`
-	Object NodeWithCtxInterfaceRequest `fidl_offset_v1:"4" fidl_handle_subtype:"4" fidl_bounds:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Flags  uint32                      `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Object NodeWithCtxInterfaceRequest `fidl_offset_v1:"4" fidl_offset_v2:"4" fidl_handle_subtype:"4" fidl_bounds:"0"`
 }
 
 var _mfileWithCtxCloneRequest = _bindings.CreateLazyMarshaler(fileWithCtxCloneRequest{})
@@ -580,8 +580,8 @@
 }
 
 type fileWithCtxCloseResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxCloseResponse = _bindings.CreateLazyMarshaler(fileWithCtxCloseResponse{})
@@ -591,8 +591,8 @@
 }
 
 type fileWithCtxDescribeResponse struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Info NodeInfo `fidl_offset_v1:"0"`
+	_    struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info NodeInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxDescribeResponse = _bindings.CreateLazyMarshaler(fileWithCtxDescribeResponse{})
@@ -602,9 +602,9 @@
 }
 
 type fileWithCtxOnOpenResponse struct {
-	_    struct{}  `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	S    int32     `fidl_offset_v1:"0"`
-	Info *NodeInfo `fidl_offset_v1:"8"`
+	_    struct{}  `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	S    int32     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Info *NodeInfo `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mfileWithCtxOnOpenResponse = _bindings.CreateLazyMarshaler(fileWithCtxOnOpenResponse{})
@@ -614,8 +614,8 @@
 }
 
 type fileWithCtxSyncResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxSyncResponse = _bindings.CreateLazyMarshaler(fileWithCtxSyncResponse{})
@@ -625,9 +625,9 @@
 }
 
 type fileWithCtxGetAttrResponse struct {
-	_          struct{}       `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	S          int32          `fidl_offset_v1:"0"`
-	Attributes NodeAttributes `fidl_offset_v1:"8"`
+	_          struct{}       `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"64" fidl_alignment_v2:"8"`
+	S          int32          `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Attributes NodeAttributes `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mfileWithCtxGetAttrResponse = _bindings.CreateLazyMarshaler(fileWithCtxGetAttrResponse{})
@@ -637,9 +637,9 @@
 }
 
 type fileWithCtxSetAttrRequest struct {
-	_          struct{}       `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	Flags      uint32         `fidl_offset_v1:"0"`
-	Attributes NodeAttributes `fidl_offset_v1:"8"`
+	_          struct{}       `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"64" fidl_alignment_v2:"8"`
+	Flags      uint32         `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Attributes NodeAttributes `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mfileWithCtxSetAttrRequest = _bindings.CreateLazyMarshaler(fileWithCtxSetAttrRequest{})
@@ -649,8 +649,8 @@
 }
 
 type fileWithCtxSetAttrResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxSetAttrResponse = _bindings.CreateLazyMarshaler(fileWithCtxSetAttrResponse{})
@@ -660,9 +660,9 @@
 }
 
 type fileWithCtxNodeGetFlagsResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S     int32    `fidl_offset_v1:"0"`
-	Flags uint32   `fidl_offset_v1:"4"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S     int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Flags uint32   `fidl_offset_v1:"4" fidl_offset_v2:"4"`
 }
 
 var _mfileWithCtxNodeGetFlagsResponse = _bindings.CreateLazyMarshaler(fileWithCtxNodeGetFlagsResponse{})
@@ -672,8 +672,8 @@
 }
 
 type fileWithCtxNodeSetFlagsRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Flags uint32   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Flags uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxNodeSetFlagsRequest = _bindings.CreateLazyMarshaler(fileWithCtxNodeSetFlagsRequest{})
@@ -683,8 +683,8 @@
 }
 
 type fileWithCtxNodeSetFlagsResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxNodeSetFlagsResponse = _bindings.CreateLazyMarshaler(fileWithCtxNodeSetFlagsResponse{})
@@ -694,8 +694,8 @@
 }
 
 type fileWithCtxAdvisoryLockRequest struct {
-	_       struct{}                       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Request fuchsiaio2.AdvisoryLockRequest `fidl_offset_v1:"0"`
+	_       struct{}                       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Request fuchsiaio2.AdvisoryLockRequest `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxAdvisoryLockRequest = _bindings.CreateLazyMarshaler(fileWithCtxAdvisoryLockRequest{})
@@ -705,8 +705,8 @@
 }
 
 type fileWithCtxAdvisoryLockResponse struct {
-	_      struct{}                                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result fuchsiaio2.AdvisoryLockingAdvisoryLockResult `fidl_offset_v1:"0"`
+	_      struct{}                                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result fuchsiaio2.AdvisoryLockingAdvisoryLockResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxAdvisoryLockResponse = _bindings.CreateLazyMarshaler(fileWithCtxAdvisoryLockResponse{})
@@ -716,8 +716,8 @@
 }
 
 type fileWithCtxReadRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Count uint64   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Count uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxReadRequest = _bindings.CreateLazyMarshaler(fileWithCtxReadRequest{})
@@ -727,9 +727,9 @@
 }
 
 type fileWithCtxReadResponse struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	S    int32    `fidl_offset_v1:"0"`
-	Data []uint8  `fidl_offset_v1:"8" fidl_bounds:"8192"`
+	_    struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	S    int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Data []uint8  `fidl_offset_v1:"8" fidl_offset_v2:"8" fidl_bounds:"8192"`
 }
 
 var _mfileWithCtxReadResponse = _bindings.CreateLazyMarshaler(fileWithCtxReadResponse{})
@@ -739,9 +739,9 @@
 }
 
 type fileWithCtxReadAtRequest struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Count  uint64   `fidl_offset_v1:"0"`
-	Offset uint64   `fidl_offset_v1:"8"`
+	_      struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Count  uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Offset uint64   `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mfileWithCtxReadAtRequest = _bindings.CreateLazyMarshaler(fileWithCtxReadAtRequest{})
@@ -751,9 +751,9 @@
 }
 
 type fileWithCtxReadAtResponse struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	S    int32    `fidl_offset_v1:"0"`
-	Data []uint8  `fidl_offset_v1:"8" fidl_bounds:"8192"`
+	_    struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	S    int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Data []uint8  `fidl_offset_v1:"8" fidl_offset_v2:"8" fidl_bounds:"8192"`
 }
 
 var _mfileWithCtxReadAtResponse = _bindings.CreateLazyMarshaler(fileWithCtxReadAtResponse{})
@@ -763,8 +763,8 @@
 }
 
 type fileWithCtxWriteRequest struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Data []uint8  `fidl_offset_v1:"0" fidl_bounds:"8192"`
+	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Data []uint8  `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"8192"`
 }
 
 var _mfileWithCtxWriteRequest = _bindings.CreateLazyMarshaler(fileWithCtxWriteRequest{})
@@ -774,9 +774,9 @@
 }
 
 type fileWithCtxWriteResponse struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	S      int32    `fidl_offset_v1:"0"`
-	Actual uint64   `fidl_offset_v1:"8"`
+	_      struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	S      int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Actual uint64   `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mfileWithCtxWriteResponse = _bindings.CreateLazyMarshaler(fileWithCtxWriteResponse{})
@@ -786,9 +786,9 @@
 }
 
 type fileWithCtxWriteAtRequest struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Data   []uint8  `fidl_offset_v1:"0" fidl_bounds:"8192"`
-	Offset uint64   `fidl_offset_v1:"16"`
+	_      struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Data   []uint8  `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"8192"`
+	Offset uint64   `fidl_offset_v1:"16" fidl_offset_v2:"16"`
 }
 
 var _mfileWithCtxWriteAtRequest = _bindings.CreateLazyMarshaler(fileWithCtxWriteAtRequest{})
@@ -798,9 +798,9 @@
 }
 
 type fileWithCtxWriteAtResponse struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	S      int32    `fidl_offset_v1:"0"`
-	Actual uint64   `fidl_offset_v1:"8"`
+	_      struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	S      int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Actual uint64   `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mfileWithCtxWriteAtResponse = _bindings.CreateLazyMarshaler(fileWithCtxWriteAtResponse{})
@@ -810,9 +810,9 @@
 }
 
 type fileWithCtxSeekRequest struct {
-	_      struct{}   `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Offset int64      `fidl_offset_v1:"0"`
-	Start  SeekOrigin `fidl_offset_v1:"8"`
+	_      struct{}   `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Offset int64      `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Start  SeekOrigin `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mfileWithCtxSeekRequest = _bindings.CreateLazyMarshaler(fileWithCtxSeekRequest{})
@@ -822,9 +822,9 @@
 }
 
 type fileWithCtxSeekResponse struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	S      int32    `fidl_offset_v1:"0"`
-	Offset uint64   `fidl_offset_v1:"8"`
+	_      struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	S      int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Offset uint64   `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mfileWithCtxSeekResponse = _bindings.CreateLazyMarshaler(fileWithCtxSeekResponse{})
@@ -834,8 +834,8 @@
 }
 
 type fileWithCtxTruncateRequest struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Length uint64   `fidl_offset_v1:"0"`
+	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Length uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxTruncateRequest = _bindings.CreateLazyMarshaler(fileWithCtxTruncateRequest{})
@@ -845,8 +845,8 @@
 }
 
 type fileWithCtxTruncateResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxTruncateResponse = _bindings.CreateLazyMarshaler(fileWithCtxTruncateResponse{})
@@ -856,9 +856,9 @@
 }
 
 type fileWithCtxGetFlagsResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S     int32    `fidl_offset_v1:"0"`
-	Flags uint32   `fidl_offset_v1:"4"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S     int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Flags uint32   `fidl_offset_v1:"4" fidl_offset_v2:"4"`
 }
 
 var _mfileWithCtxGetFlagsResponse = _bindings.CreateLazyMarshaler(fileWithCtxGetFlagsResponse{})
@@ -868,8 +868,8 @@
 }
 
 type fileWithCtxSetFlagsRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Flags uint32   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Flags uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxSetFlagsRequest = _bindings.CreateLazyMarshaler(fileWithCtxSetFlagsRequest{})
@@ -879,8 +879,8 @@
 }
 
 type fileWithCtxSetFlagsResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxSetFlagsResponse = _bindings.CreateLazyMarshaler(fileWithCtxSetFlagsResponse{})
@@ -890,8 +890,8 @@
 }
 
 type fileWithCtxGetBufferRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Flags uint32   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Flags uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxGetBufferRequest = _bindings.CreateLazyMarshaler(fileWithCtxGetBufferRequest{})
@@ -901,9 +901,9 @@
 }
 
 type fileWithCtxGetBufferResponse struct {
-	_      struct{}           `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	S      int32              `fidl_offset_v1:"0"`
-	Buffer *fuchsiamem.Buffer `fidl_offset_v1:"8"`
+	_      struct{}           `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	S      int32              `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Buffer *fuchsiamem.Buffer `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mfileWithCtxGetBufferResponse = _bindings.CreateLazyMarshaler(fileWithCtxGetBufferResponse{})
@@ -913,8 +913,8 @@
 }
 
 type directoryWatcherWithCtxOnEventRequest struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Events []uint8  `fidl_offset_v1:"0" fidl_bounds:"8192"`
+	_      struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Events []uint8  `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"8192"`
 }
 
 var _mdirectoryWatcherWithCtxOnEventRequest = _bindings.CreateLazyMarshaler(directoryWatcherWithCtxOnEventRequest{})
@@ -924,9 +924,9 @@
 }
 
 type directoryWithCtxCloneRequest struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Flags  uint32                      `fidl_offset_v1:"0"`
-	Object NodeWithCtxInterfaceRequest `fidl_offset_v1:"4" fidl_handle_subtype:"4" fidl_bounds:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Flags  uint32                      `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Object NodeWithCtxInterfaceRequest `fidl_offset_v1:"4" fidl_offset_v2:"4" fidl_handle_subtype:"4" fidl_bounds:"0"`
 }
 
 var _mdirectoryWithCtxCloneRequest = _bindings.CreateLazyMarshaler(directoryWithCtxCloneRequest{})
@@ -936,8 +936,8 @@
 }
 
 type directoryWithCtxCloseResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxCloseResponse = _bindings.CreateLazyMarshaler(directoryWithCtxCloseResponse{})
@@ -947,8 +947,8 @@
 }
 
 type directoryWithCtxDescribeResponse struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Info NodeInfo `fidl_offset_v1:"0"`
+	_    struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info NodeInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxDescribeResponse = _bindings.CreateLazyMarshaler(directoryWithCtxDescribeResponse{})
@@ -958,9 +958,9 @@
 }
 
 type directoryWithCtxOnOpenResponse struct {
-	_    struct{}  `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	S    int32     `fidl_offset_v1:"0"`
-	Info *NodeInfo `fidl_offset_v1:"8"`
+	_    struct{}  `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	S    int32     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Info *NodeInfo `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mdirectoryWithCtxOnOpenResponse = _bindings.CreateLazyMarshaler(directoryWithCtxOnOpenResponse{})
@@ -970,8 +970,8 @@
 }
 
 type directoryWithCtxSyncResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxSyncResponse = _bindings.CreateLazyMarshaler(directoryWithCtxSyncResponse{})
@@ -981,9 +981,9 @@
 }
 
 type directoryWithCtxGetAttrResponse struct {
-	_          struct{}       `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	S          int32          `fidl_offset_v1:"0"`
-	Attributes NodeAttributes `fidl_offset_v1:"8"`
+	_          struct{}       `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"64" fidl_alignment_v2:"8"`
+	S          int32          `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Attributes NodeAttributes `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mdirectoryWithCtxGetAttrResponse = _bindings.CreateLazyMarshaler(directoryWithCtxGetAttrResponse{})
@@ -993,9 +993,9 @@
 }
 
 type directoryWithCtxSetAttrRequest struct {
-	_          struct{}       `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	Flags      uint32         `fidl_offset_v1:"0"`
-	Attributes NodeAttributes `fidl_offset_v1:"8"`
+	_          struct{}       `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"64" fidl_alignment_v2:"8"`
+	Flags      uint32         `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Attributes NodeAttributes `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mdirectoryWithCtxSetAttrRequest = _bindings.CreateLazyMarshaler(directoryWithCtxSetAttrRequest{})
@@ -1005,8 +1005,8 @@
 }
 
 type directoryWithCtxSetAttrResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxSetAttrResponse = _bindings.CreateLazyMarshaler(directoryWithCtxSetAttrResponse{})
@@ -1016,9 +1016,9 @@
 }
 
 type directoryWithCtxNodeGetFlagsResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S     int32    `fidl_offset_v1:"0"`
-	Flags uint32   `fidl_offset_v1:"4"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S     int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Flags uint32   `fidl_offset_v1:"4" fidl_offset_v2:"4"`
 }
 
 var _mdirectoryWithCtxNodeGetFlagsResponse = _bindings.CreateLazyMarshaler(directoryWithCtxNodeGetFlagsResponse{})
@@ -1028,8 +1028,8 @@
 }
 
 type directoryWithCtxNodeSetFlagsRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Flags uint32   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Flags uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxNodeSetFlagsRequest = _bindings.CreateLazyMarshaler(directoryWithCtxNodeSetFlagsRequest{})
@@ -1039,8 +1039,8 @@
 }
 
 type directoryWithCtxNodeSetFlagsResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxNodeSetFlagsResponse = _bindings.CreateLazyMarshaler(directoryWithCtxNodeSetFlagsResponse{})
@@ -1050,8 +1050,8 @@
 }
 
 type directoryWithCtxAdvisoryLockRequest struct {
-	_       struct{}                       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Request fuchsiaio2.AdvisoryLockRequest `fidl_offset_v1:"0"`
+	_       struct{}                       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Request fuchsiaio2.AdvisoryLockRequest `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxAdvisoryLockRequest = _bindings.CreateLazyMarshaler(directoryWithCtxAdvisoryLockRequest{})
@@ -1061,8 +1061,8 @@
 }
 
 type directoryWithCtxAdvisoryLockResponse struct {
-	_      struct{}                                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result fuchsiaio2.AdvisoryLockingAdvisoryLockResult `fidl_offset_v1:"0"`
+	_      struct{}                                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result fuchsiaio2.AdvisoryLockingAdvisoryLockResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxAdvisoryLockResponse = _bindings.CreateLazyMarshaler(directoryWithCtxAdvisoryLockResponse{})
@@ -1072,11 +1072,11 @@
 }
 
 type directoryWithCtxOpenRequest struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	Flags  uint32                      `fidl_offset_v1:"0"`
-	Mode   uint32                      `fidl_offset_v1:"4"`
-	Path   string                      `fidl_offset_v1:"8" fidl_bounds:"4096"`
-	Object NodeWithCtxInterfaceRequest `fidl_offset_v1:"24" fidl_handle_subtype:"4" fidl_bounds:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	Flags  uint32                      `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Mode   uint32                      `fidl_offset_v1:"4" fidl_offset_v2:"4"`
+	Path   string                      `fidl_offset_v1:"8" fidl_offset_v2:"8" fidl_bounds:"4096"`
+	Object NodeWithCtxInterfaceRequest `fidl_offset_v1:"24" fidl_offset_v2:"24" fidl_handle_subtype:"4" fidl_bounds:"0"`
 }
 
 var _mdirectoryWithCtxOpenRequest = _bindings.CreateLazyMarshaler(directoryWithCtxOpenRequest{})
@@ -1086,11 +1086,11 @@
 }
 
 type directoryWithCtxAddInotifyFilterRequest struct {
-	_               struct{}                    `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	Path            string                      `fidl_offset_v1:"0" fidl_bounds:"4095"`
-	Filter          fuchsiaio2.InotifyWatchMask `fidl_offset_v1:"16"`
-	WatchDescriptor uint32                      `fidl_offset_v1:"20"`
-	Socket          _zx.Socket                  `fidl_offset_v1:"24" fidl_handle_subtype:"14" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	_               struct{}                    `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	Path            string                      `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"4095"`
+	Filter          fuchsiaio2.InotifyWatchMask `fidl_offset_v1:"16" fidl_offset_v2:"16"`
+	WatchDescriptor uint32                      `fidl_offset_v1:"20" fidl_offset_v2:"20"`
+	Socket          _zx.Socket                  `fidl_offset_v1:"24" fidl_offset_v2:"24" fidl_handle_subtype:"14" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 }
 
 var _mdirectoryWithCtxAddInotifyFilterRequest = _bindings.CreateLazyMarshaler(directoryWithCtxAddInotifyFilterRequest{})
@@ -1100,8 +1100,8 @@
 }
 
 type directoryWithCtxUnlinkRequest struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Path string   `fidl_offset_v1:"0" fidl_bounds:"4096"`
+	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Path string   `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"4096"`
 }
 
 var _mdirectoryWithCtxUnlinkRequest = _bindings.CreateLazyMarshaler(directoryWithCtxUnlinkRequest{})
@@ -1111,8 +1111,8 @@
 }
 
 type directoryWithCtxUnlinkResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxUnlinkResponse = _bindings.CreateLazyMarshaler(directoryWithCtxUnlinkResponse{})
@@ -1122,9 +1122,9 @@
 }
 
 type directoryWithCtxUnlink2Request struct {
-	_       struct{}                 `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	Name    string                   `fidl_offset_v1:"0" fidl_bounds:"255"`
-	Options fuchsiaio2.UnlinkOptions `fidl_offset_v1:"16"`
+	_       struct{}                 `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	Name    string                   `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"255"`
+	Options fuchsiaio2.UnlinkOptions `fidl_offset_v1:"16" fidl_offset_v2:"16"`
 }
 
 var _mdirectoryWithCtxUnlink2Request = _bindings.CreateLazyMarshaler(directoryWithCtxUnlink2Request{})
@@ -1134,8 +1134,8 @@
 }
 
 type directoryWithCtxUnlink2Response struct {
-	_      struct{}               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result DirectoryUnlink2Result `fidl_offset_v1:"0"`
+	_      struct{}               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result DirectoryUnlink2Result `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxUnlink2Response = _bindings.CreateLazyMarshaler(directoryWithCtxUnlink2Response{})
@@ -1145,8 +1145,8 @@
 }
 
 type directoryWithCtxReadDirentsRequest struct {
-	_        struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	MaxBytes uint64   `fidl_offset_v1:"0"`
+	_        struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	MaxBytes uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxReadDirentsRequest = _bindings.CreateLazyMarshaler(directoryWithCtxReadDirentsRequest{})
@@ -1156,9 +1156,9 @@
 }
 
 type directoryWithCtxReadDirentsResponse struct {
-	_       struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	S       int32    `fidl_offset_v1:"0"`
-	Dirents []uint8  `fidl_offset_v1:"8" fidl_bounds:"8192"`
+	_       struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	S       int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Dirents []uint8  `fidl_offset_v1:"8" fidl_offset_v2:"8" fidl_bounds:"8192"`
 }
 
 var _mdirectoryWithCtxReadDirentsResponse = _bindings.CreateLazyMarshaler(directoryWithCtxReadDirentsResponse{})
@@ -1168,8 +1168,8 @@
 }
 
 type directoryWithCtxRewindResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxRewindResponse = _bindings.CreateLazyMarshaler(directoryWithCtxRewindResponse{})
@@ -1179,9 +1179,9 @@
 }
 
 type directoryWithCtxGetTokenResponse struct {
-	_     struct{}   `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S     int32      `fidl_offset_v1:"0"`
-	Token _zx.Handle `fidl_offset_v1:"4" fidl_handle_subtype:"0" fidl_handle_rights:"2147483648" fidl_bounds:"1"`
+	_     struct{}   `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S     int32      `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Token _zx.Handle `fidl_offset_v1:"4" fidl_offset_v2:"4" fidl_handle_subtype:"0" fidl_handle_rights:"2147483648" fidl_bounds:"1"`
 }
 
 var _mdirectoryWithCtxGetTokenResponse = _bindings.CreateLazyMarshaler(directoryWithCtxGetTokenResponse{})
@@ -1191,10 +1191,10 @@
 }
 
 type directoryWithCtxRenameRequest struct {
-	_              struct{}   `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8"`
-	Src            string     `fidl_offset_v1:"0" fidl_bounds:"4096"`
-	DstParentToken _zx.Handle `fidl_offset_v1:"16" fidl_handle_subtype:"0" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
-	Dst            string     `fidl_offset_v1:"24" fidl_bounds:"4096"`
+	_              struct{}   `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8" fidl_size_v2:"40" fidl_alignment_v2:"8"`
+	Src            string     `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"4096"`
+	DstParentToken _zx.Handle `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_handle_subtype:"0" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	Dst            string     `fidl_offset_v1:"24" fidl_offset_v2:"24" fidl_bounds:"4096"`
 }
 
 var _mdirectoryWithCtxRenameRequest = _bindings.CreateLazyMarshaler(directoryWithCtxRenameRequest{})
@@ -1204,8 +1204,8 @@
 }
 
 type directoryWithCtxRenameResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxRenameResponse = _bindings.CreateLazyMarshaler(directoryWithCtxRenameResponse{})
@@ -1215,10 +1215,10 @@
 }
 
 type directoryWithCtxRename2Request struct {
-	_              struct{}  `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8"`
-	Src            string    `fidl_offset_v1:"0" fidl_bounds:"255"`
-	DstParentToken _zx.Event `fidl_offset_v1:"16" fidl_handle_subtype:"5" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
-	Dst            string    `fidl_offset_v1:"24" fidl_bounds:"255"`
+	_              struct{}  `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8" fidl_size_v2:"40" fidl_alignment_v2:"8"`
+	Src            string    `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"255"`
+	DstParentToken _zx.Event `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_handle_subtype:"5" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	Dst            string    `fidl_offset_v1:"24" fidl_offset_v2:"24" fidl_bounds:"255"`
 }
 
 var _mdirectoryWithCtxRename2Request = _bindings.CreateLazyMarshaler(directoryWithCtxRename2Request{})
@@ -1228,8 +1228,8 @@
 }
 
 type directoryWithCtxRename2Response struct {
-	_      struct{}               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result DirectoryRename2Result `fidl_offset_v1:"0"`
+	_      struct{}               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result DirectoryRename2Result `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxRename2Response = _bindings.CreateLazyMarshaler(directoryWithCtxRename2Response{})
@@ -1239,10 +1239,10 @@
 }
 
 type directoryWithCtxLinkRequest struct {
-	_              struct{}   `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8"`
-	Src            string     `fidl_offset_v1:"0" fidl_bounds:"4096"`
-	DstParentToken _zx.Handle `fidl_offset_v1:"16" fidl_handle_subtype:"0" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
-	Dst            string     `fidl_offset_v1:"24" fidl_bounds:"4096"`
+	_              struct{}   `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8" fidl_size_v2:"40" fidl_alignment_v2:"8"`
+	Src            string     `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"4096"`
+	DstParentToken _zx.Handle `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_handle_subtype:"0" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	Dst            string     `fidl_offset_v1:"24" fidl_offset_v2:"24" fidl_bounds:"4096"`
 }
 
 var _mdirectoryWithCtxLinkRequest = _bindings.CreateLazyMarshaler(directoryWithCtxLinkRequest{})
@@ -1252,8 +1252,8 @@
 }
 
 type directoryWithCtxLinkResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxLinkResponse = _bindings.CreateLazyMarshaler(directoryWithCtxLinkResponse{})
@@ -1263,10 +1263,10 @@
 }
 
 type directoryWithCtxWatchRequest struct {
-	_       struct{}    `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Mask    uint32      `fidl_offset_v1:"0"`
-	Options uint32      `fidl_offset_v1:"4"`
-	Watcher _zx.Channel `fidl_offset_v1:"8" fidl_handle_subtype:"4" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	_       struct{}    `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Mask    uint32      `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Options uint32      `fidl_offset_v1:"4" fidl_offset_v2:"4"`
+	Watcher _zx.Channel `fidl_offset_v1:"8" fidl_offset_v2:"8" fidl_handle_subtype:"4" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 }
 
 var _mdirectoryWithCtxWatchRequest = _bindings.CreateLazyMarshaler(directoryWithCtxWatchRequest{})
@@ -1276,8 +1276,8 @@
 }
 
 type directoryWithCtxWatchResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxWatchResponse = _bindings.CreateLazyMarshaler(directoryWithCtxWatchResponse{})
@@ -1287,9 +1287,9 @@
 }
 
 type directoryAdminWithCtxCloneRequest struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Flags  uint32                      `fidl_offset_v1:"0"`
-	Object NodeWithCtxInterfaceRequest `fidl_offset_v1:"4" fidl_handle_subtype:"4" fidl_bounds:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Flags  uint32                      `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Object NodeWithCtxInterfaceRequest `fidl_offset_v1:"4" fidl_offset_v2:"4" fidl_handle_subtype:"4" fidl_bounds:"0"`
 }
 
 var _mdirectoryAdminWithCtxCloneRequest = _bindings.CreateLazyMarshaler(directoryAdminWithCtxCloneRequest{})
@@ -1299,8 +1299,8 @@
 }
 
 type directoryAdminWithCtxCloseResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryAdminWithCtxCloseResponse = _bindings.CreateLazyMarshaler(directoryAdminWithCtxCloseResponse{})
@@ -1310,8 +1310,8 @@
 }
 
 type directoryAdminWithCtxDescribeResponse struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Info NodeInfo `fidl_offset_v1:"0"`
+	_    struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info NodeInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryAdminWithCtxDescribeResponse = _bindings.CreateLazyMarshaler(directoryAdminWithCtxDescribeResponse{})
@@ -1321,9 +1321,9 @@
 }
 
 type directoryAdminWithCtxOnOpenResponse struct {
-	_    struct{}  `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	S    int32     `fidl_offset_v1:"0"`
-	Info *NodeInfo `fidl_offset_v1:"8"`
+	_    struct{}  `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	S    int32     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Info *NodeInfo `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mdirectoryAdminWithCtxOnOpenResponse = _bindings.CreateLazyMarshaler(directoryAdminWithCtxOnOpenResponse{})
@@ -1333,8 +1333,8 @@
 }
 
 type directoryAdminWithCtxSyncResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryAdminWithCtxSyncResponse = _bindings.CreateLazyMarshaler(directoryAdminWithCtxSyncResponse{})
@@ -1344,9 +1344,9 @@
 }
 
 type directoryAdminWithCtxGetAttrResponse struct {
-	_          struct{}       `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	S          int32          `fidl_offset_v1:"0"`
-	Attributes NodeAttributes `fidl_offset_v1:"8"`
+	_          struct{}       `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"64" fidl_alignment_v2:"8"`
+	S          int32          `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Attributes NodeAttributes `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mdirectoryAdminWithCtxGetAttrResponse = _bindings.CreateLazyMarshaler(directoryAdminWithCtxGetAttrResponse{})
@@ -1356,9 +1356,9 @@
 }
 
 type directoryAdminWithCtxSetAttrRequest struct {
-	_          struct{}       `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	Flags      uint32         `fidl_offset_v1:"0"`
-	Attributes NodeAttributes `fidl_offset_v1:"8"`
+	_          struct{}       `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"64" fidl_alignment_v2:"8"`
+	Flags      uint32         `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Attributes NodeAttributes `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mdirectoryAdminWithCtxSetAttrRequest = _bindings.CreateLazyMarshaler(directoryAdminWithCtxSetAttrRequest{})
@@ -1368,8 +1368,8 @@
 }
 
 type directoryAdminWithCtxSetAttrResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryAdminWithCtxSetAttrResponse = _bindings.CreateLazyMarshaler(directoryAdminWithCtxSetAttrResponse{})
@@ -1379,9 +1379,9 @@
 }
 
 type directoryAdminWithCtxNodeGetFlagsResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S     int32    `fidl_offset_v1:"0"`
-	Flags uint32   `fidl_offset_v1:"4"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S     int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Flags uint32   `fidl_offset_v1:"4" fidl_offset_v2:"4"`
 }
 
 var _mdirectoryAdminWithCtxNodeGetFlagsResponse = _bindings.CreateLazyMarshaler(directoryAdminWithCtxNodeGetFlagsResponse{})
@@ -1391,8 +1391,8 @@
 }
 
 type directoryAdminWithCtxNodeSetFlagsRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Flags uint32   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Flags uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryAdminWithCtxNodeSetFlagsRequest = _bindings.CreateLazyMarshaler(directoryAdminWithCtxNodeSetFlagsRequest{})
@@ -1402,8 +1402,8 @@
 }
 
 type directoryAdminWithCtxNodeSetFlagsResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryAdminWithCtxNodeSetFlagsResponse = _bindings.CreateLazyMarshaler(directoryAdminWithCtxNodeSetFlagsResponse{})
@@ -1413,8 +1413,8 @@
 }
 
 type directoryAdminWithCtxAdvisoryLockRequest struct {
-	_       struct{}                       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Request fuchsiaio2.AdvisoryLockRequest `fidl_offset_v1:"0"`
+	_       struct{}                       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Request fuchsiaio2.AdvisoryLockRequest `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryAdminWithCtxAdvisoryLockRequest = _bindings.CreateLazyMarshaler(directoryAdminWithCtxAdvisoryLockRequest{})
@@ -1424,8 +1424,8 @@
 }
 
 type directoryAdminWithCtxAdvisoryLockResponse struct {
-	_      struct{}                                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result fuchsiaio2.AdvisoryLockingAdvisoryLockResult `fidl_offset_v1:"0"`
+	_      struct{}                                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result fuchsiaio2.AdvisoryLockingAdvisoryLockResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryAdminWithCtxAdvisoryLockResponse = _bindings.CreateLazyMarshaler(directoryAdminWithCtxAdvisoryLockResponse{})
@@ -1435,11 +1435,11 @@
 }
 
 type directoryAdminWithCtxOpenRequest struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	Flags  uint32                      `fidl_offset_v1:"0"`
-	Mode   uint32                      `fidl_offset_v1:"4"`
-	Path   string                      `fidl_offset_v1:"8" fidl_bounds:"4096"`
-	Object NodeWithCtxInterfaceRequest `fidl_offset_v1:"24" fidl_handle_subtype:"4" fidl_bounds:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	Flags  uint32                      `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Mode   uint32                      `fidl_offset_v1:"4" fidl_offset_v2:"4"`
+	Path   string                      `fidl_offset_v1:"8" fidl_offset_v2:"8" fidl_bounds:"4096"`
+	Object NodeWithCtxInterfaceRequest `fidl_offset_v1:"24" fidl_offset_v2:"24" fidl_handle_subtype:"4" fidl_bounds:"0"`
 }
 
 var _mdirectoryAdminWithCtxOpenRequest = _bindings.CreateLazyMarshaler(directoryAdminWithCtxOpenRequest{})
@@ -1449,11 +1449,11 @@
 }
 
 type directoryAdminWithCtxAddInotifyFilterRequest struct {
-	_               struct{}                    `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	Path            string                      `fidl_offset_v1:"0" fidl_bounds:"4095"`
-	Filter          fuchsiaio2.InotifyWatchMask `fidl_offset_v1:"16"`
-	WatchDescriptor uint32                      `fidl_offset_v1:"20"`
-	Socket          _zx.Socket                  `fidl_offset_v1:"24" fidl_handle_subtype:"14" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	_               struct{}                    `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	Path            string                      `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"4095"`
+	Filter          fuchsiaio2.InotifyWatchMask `fidl_offset_v1:"16" fidl_offset_v2:"16"`
+	WatchDescriptor uint32                      `fidl_offset_v1:"20" fidl_offset_v2:"20"`
+	Socket          _zx.Socket                  `fidl_offset_v1:"24" fidl_offset_v2:"24" fidl_handle_subtype:"14" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 }
 
 var _mdirectoryAdminWithCtxAddInotifyFilterRequest = _bindings.CreateLazyMarshaler(directoryAdminWithCtxAddInotifyFilterRequest{})
@@ -1463,8 +1463,8 @@
 }
 
 type directoryAdminWithCtxUnlinkRequest struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Path string   `fidl_offset_v1:"0" fidl_bounds:"4096"`
+	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Path string   `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"4096"`
 }
 
 var _mdirectoryAdminWithCtxUnlinkRequest = _bindings.CreateLazyMarshaler(directoryAdminWithCtxUnlinkRequest{})
@@ -1474,8 +1474,8 @@
 }
 
 type directoryAdminWithCtxUnlinkResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryAdminWithCtxUnlinkResponse = _bindings.CreateLazyMarshaler(directoryAdminWithCtxUnlinkResponse{})
@@ -1485,9 +1485,9 @@
 }
 
 type directoryAdminWithCtxUnlink2Request struct {
-	_       struct{}                 `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	Name    string                   `fidl_offset_v1:"0" fidl_bounds:"255"`
-	Options fuchsiaio2.UnlinkOptions `fidl_offset_v1:"16"`
+	_       struct{}                 `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	Name    string                   `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"255"`
+	Options fuchsiaio2.UnlinkOptions `fidl_offset_v1:"16" fidl_offset_v2:"16"`
 }
 
 var _mdirectoryAdminWithCtxUnlink2Request = _bindings.CreateLazyMarshaler(directoryAdminWithCtxUnlink2Request{})
@@ -1497,8 +1497,8 @@
 }
 
 type directoryAdminWithCtxUnlink2Response struct {
-	_      struct{}               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result DirectoryUnlink2Result `fidl_offset_v1:"0"`
+	_      struct{}               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result DirectoryUnlink2Result `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryAdminWithCtxUnlink2Response = _bindings.CreateLazyMarshaler(directoryAdminWithCtxUnlink2Response{})
@@ -1508,8 +1508,8 @@
 }
 
 type directoryAdminWithCtxReadDirentsRequest struct {
-	_        struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	MaxBytes uint64   `fidl_offset_v1:"0"`
+	_        struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	MaxBytes uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryAdminWithCtxReadDirentsRequest = _bindings.CreateLazyMarshaler(directoryAdminWithCtxReadDirentsRequest{})
@@ -1519,9 +1519,9 @@
 }
 
 type directoryAdminWithCtxReadDirentsResponse struct {
-	_       struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	S       int32    `fidl_offset_v1:"0"`
-	Dirents []uint8  `fidl_offset_v1:"8" fidl_bounds:"8192"`
+	_       struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	S       int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Dirents []uint8  `fidl_offset_v1:"8" fidl_offset_v2:"8" fidl_bounds:"8192"`
 }
 
 var _mdirectoryAdminWithCtxReadDirentsResponse = _bindings.CreateLazyMarshaler(directoryAdminWithCtxReadDirentsResponse{})
@@ -1531,8 +1531,8 @@
 }
 
 type directoryAdminWithCtxRewindResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryAdminWithCtxRewindResponse = _bindings.CreateLazyMarshaler(directoryAdminWithCtxRewindResponse{})
@@ -1542,9 +1542,9 @@
 }
 
 type directoryAdminWithCtxGetTokenResponse struct {
-	_     struct{}   `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S     int32      `fidl_offset_v1:"0"`
-	Token _zx.Handle `fidl_offset_v1:"4" fidl_handle_subtype:"0" fidl_handle_rights:"2147483648" fidl_bounds:"1"`
+	_     struct{}   `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S     int32      `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Token _zx.Handle `fidl_offset_v1:"4" fidl_offset_v2:"4" fidl_handle_subtype:"0" fidl_handle_rights:"2147483648" fidl_bounds:"1"`
 }
 
 var _mdirectoryAdminWithCtxGetTokenResponse = _bindings.CreateLazyMarshaler(directoryAdminWithCtxGetTokenResponse{})
@@ -1554,10 +1554,10 @@
 }
 
 type directoryAdminWithCtxRenameRequest struct {
-	_              struct{}   `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8"`
-	Src            string     `fidl_offset_v1:"0" fidl_bounds:"4096"`
-	DstParentToken _zx.Handle `fidl_offset_v1:"16" fidl_handle_subtype:"0" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
-	Dst            string     `fidl_offset_v1:"24" fidl_bounds:"4096"`
+	_              struct{}   `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8" fidl_size_v2:"40" fidl_alignment_v2:"8"`
+	Src            string     `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"4096"`
+	DstParentToken _zx.Handle `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_handle_subtype:"0" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	Dst            string     `fidl_offset_v1:"24" fidl_offset_v2:"24" fidl_bounds:"4096"`
 }
 
 var _mdirectoryAdminWithCtxRenameRequest = _bindings.CreateLazyMarshaler(directoryAdminWithCtxRenameRequest{})
@@ -1567,8 +1567,8 @@
 }
 
 type directoryAdminWithCtxRenameResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryAdminWithCtxRenameResponse = _bindings.CreateLazyMarshaler(directoryAdminWithCtxRenameResponse{})
@@ -1578,10 +1578,10 @@
 }
 
 type directoryAdminWithCtxRename2Request struct {
-	_              struct{}  `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8"`
-	Src            string    `fidl_offset_v1:"0" fidl_bounds:"255"`
-	DstParentToken _zx.Event `fidl_offset_v1:"16" fidl_handle_subtype:"5" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
-	Dst            string    `fidl_offset_v1:"24" fidl_bounds:"255"`
+	_              struct{}  `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8" fidl_size_v2:"40" fidl_alignment_v2:"8"`
+	Src            string    `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"255"`
+	DstParentToken _zx.Event `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_handle_subtype:"5" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	Dst            string    `fidl_offset_v1:"24" fidl_offset_v2:"24" fidl_bounds:"255"`
 }
 
 var _mdirectoryAdminWithCtxRename2Request = _bindings.CreateLazyMarshaler(directoryAdminWithCtxRename2Request{})
@@ -1591,8 +1591,8 @@
 }
 
 type directoryAdminWithCtxRename2Response struct {
-	_      struct{}               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result DirectoryRename2Result `fidl_offset_v1:"0"`
+	_      struct{}               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result DirectoryRename2Result `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryAdminWithCtxRename2Response = _bindings.CreateLazyMarshaler(directoryAdminWithCtxRename2Response{})
@@ -1602,10 +1602,10 @@
 }
 
 type directoryAdminWithCtxLinkRequest struct {
-	_              struct{}   `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8"`
-	Src            string     `fidl_offset_v1:"0" fidl_bounds:"4096"`
-	DstParentToken _zx.Handle `fidl_offset_v1:"16" fidl_handle_subtype:"0" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
-	Dst            string     `fidl_offset_v1:"24" fidl_bounds:"4096"`
+	_              struct{}   `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8" fidl_size_v2:"40" fidl_alignment_v2:"8"`
+	Src            string     `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"4096"`
+	DstParentToken _zx.Handle `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_handle_subtype:"0" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	Dst            string     `fidl_offset_v1:"24" fidl_offset_v2:"24" fidl_bounds:"4096"`
 }
 
 var _mdirectoryAdminWithCtxLinkRequest = _bindings.CreateLazyMarshaler(directoryAdminWithCtxLinkRequest{})
@@ -1615,8 +1615,8 @@
 }
 
 type directoryAdminWithCtxLinkResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryAdminWithCtxLinkResponse = _bindings.CreateLazyMarshaler(directoryAdminWithCtxLinkResponse{})
@@ -1626,10 +1626,10 @@
 }
 
 type directoryAdminWithCtxWatchRequest struct {
-	_       struct{}    `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Mask    uint32      `fidl_offset_v1:"0"`
-	Options uint32      `fidl_offset_v1:"4"`
-	Watcher _zx.Channel `fidl_offset_v1:"8" fidl_handle_subtype:"4" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	_       struct{}    `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Mask    uint32      `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Options uint32      `fidl_offset_v1:"4" fidl_offset_v2:"4"`
+	Watcher _zx.Channel `fidl_offset_v1:"8" fidl_offset_v2:"8" fidl_handle_subtype:"4" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 }
 
 var _mdirectoryAdminWithCtxWatchRequest = _bindings.CreateLazyMarshaler(directoryAdminWithCtxWatchRequest{})
@@ -1639,8 +1639,8 @@
 }
 
 type directoryAdminWithCtxWatchResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryAdminWithCtxWatchResponse = _bindings.CreateLazyMarshaler(directoryAdminWithCtxWatchResponse{})
@@ -1650,8 +1650,8 @@
 }
 
 type directoryAdminWithCtxMountRequest struct {
-	_      struct{}                  `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Remote DirectoryWithCtxInterface `fidl_offset_v1:"0" fidl_handle_subtype:"4"`
+	_      struct{}                  `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Remote DirectoryWithCtxInterface `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"4"`
 }
 
 var _mdirectoryAdminWithCtxMountRequest = _bindings.CreateLazyMarshaler(directoryAdminWithCtxMountRequest{})
@@ -1661,8 +1661,8 @@
 }
 
 type directoryAdminWithCtxMountResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryAdminWithCtxMountResponse = _bindings.CreateLazyMarshaler(directoryAdminWithCtxMountResponse{})
@@ -1672,10 +1672,10 @@
 }
 
 type directoryAdminWithCtxMountAndCreateRequest struct {
-	_      struct{}                  `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	Remote DirectoryWithCtxInterface `fidl_offset_v1:"0" fidl_handle_subtype:"4"`
-	Name   string                    `fidl_offset_v1:"8" fidl_bounds:"255"`
-	Flags  uint32                    `fidl_offset_v1:"24"`
+	_      struct{}                  `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	Remote DirectoryWithCtxInterface `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"4"`
+	Name   string                    `fidl_offset_v1:"8" fidl_offset_v2:"8" fidl_bounds:"255"`
+	Flags  uint32                    `fidl_offset_v1:"24" fidl_offset_v2:"24"`
 }
 
 var _mdirectoryAdminWithCtxMountAndCreateRequest = _bindings.CreateLazyMarshaler(directoryAdminWithCtxMountAndCreateRequest{})
@@ -1685,8 +1685,8 @@
 }
 
 type directoryAdminWithCtxMountAndCreateResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryAdminWithCtxMountAndCreateResponse = _bindings.CreateLazyMarshaler(directoryAdminWithCtxMountAndCreateResponse{})
@@ -1696,8 +1696,8 @@
 }
 
 type directoryAdminWithCtxUnmountResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryAdminWithCtxUnmountResponse = _bindings.CreateLazyMarshaler(directoryAdminWithCtxUnmountResponse{})
@@ -1707,9 +1707,9 @@
 }
 
 type directoryAdminWithCtxUnmountNodeResponse struct {
-	_      struct{}                  `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S      int32                     `fidl_offset_v1:"0"`
-	Remote DirectoryWithCtxInterface `fidl_offset_v1:"4" fidl_handle_subtype:"4"`
+	_      struct{}                  `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S      int32                     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Remote DirectoryWithCtxInterface `fidl_offset_v1:"4" fidl_offset_v2:"4" fidl_handle_subtype:"4"`
 }
 
 var _mdirectoryAdminWithCtxUnmountNodeResponse = _bindings.CreateLazyMarshaler(directoryAdminWithCtxUnmountNodeResponse{})
@@ -1719,9 +1719,9 @@
 }
 
 type directoryAdminWithCtxQueryFilesystemResponse struct {
-	_    struct{}        `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	S    int32           `fidl_offset_v1:"0"`
-	Info *FilesystemInfo `fidl_offset_v1:"8"`
+	_    struct{}        `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	S    int32           `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Info *FilesystemInfo `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mdirectoryAdminWithCtxQueryFilesystemResponse = _bindings.CreateLazyMarshaler(directoryAdminWithCtxQueryFilesystemResponse{})
@@ -1731,9 +1731,9 @@
 }
 
 type directoryAdminWithCtxGetDevicePathResponse struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	S    int32    `fidl_offset_v1:"0"`
-	Path *string  `fidl_offset_v1:"8" fidl_bounds:"4096"`
+	_    struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	S    int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Path *string  `fidl_offset_v1:"8" fidl_offset_v2:"8" fidl_bounds:"4096"`
 }
 
 var _mdirectoryAdminWithCtxGetDevicePathResponse = _bindings.CreateLazyMarshaler(directoryAdminWithCtxGetDevicePathResponse{})
@@ -1750,7 +1750,7 @@
 )
 
 type DirectoryUnlink2Result struct {
-	I_directoryUnlink2ResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_directoryUnlink2ResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                    DirectoryUnlink2Response `fidl_ordinal:"1"`
 	Err                         int32                    `fidl_ordinal:"2"`
 }
@@ -1806,7 +1806,7 @@
 )
 
 type DirectoryRename2Result struct {
-	I_directoryRename2ResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_directoryRename2ResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                    DirectoryRename2Response `fidl_ordinal:"1"`
 	Err                         int32                    `fidl_ordinal:"2"`
 }
@@ -1872,7 +1872,7 @@
 //
 // Refer to [`Node.Describe`] and [`Node.OnOpen`] for usage.
 type NodeInfo struct {
-	I_nodeInfoTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"true"`
+	I_nodeInfoTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"true"`
 	// No protocol information was supplied by the connection.
 	Service Service `fidl_ordinal:"1"`
 	// The connection composes [`File`].
diff --git a/src/syscall/zx/io2/impl.go b/src/syscall/zx/io2/impl.go
index 06405f3..27a45d4 100644
--- a/src/syscall/zx/io2/impl.go
+++ b/src/syscall/zx/io2/impl.go
@@ -1044,7 +1044,7 @@
 // }
 // ```
 type RightsRequest struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
+	_ struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
 	// Sets an upper bound on the resulting rights. The exact rights will
 	// depend on `resolution`.
 	//
@@ -1059,7 +1059,7 @@
 	//   `ZX_ERR_ACCESS_DENIED` epitaph.
 	// * Otherwise, the proxy should forward the `Open` call as usual,
 	//   but update `at_most` with the shrunk rights.
-	AtMost Operations `fidl_offset_v1:"0"`
+	AtMost Operations `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 	// Sets a lower bound on the resulting rights. The exact rights will
 	// depend on `resolution`.
 	//
@@ -1081,10 +1081,10 @@
 	//
 	// using the superset (`⊃`), proper superset (`⊋`),
 	// and empty set (`{}`) notations.
-	AtLeast Operations `fidl_offset_v1:"8"`
+	AtLeast Operations `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 	// Controls how the rights on the new connection are computed from
 	// `at_most` and `at_least`. See [`fuchsia.io2/RightsResolution`].
-	Resolution RightsResolution `fidl_offset_v1:"16"`
+	Resolution RightsResolution `fidl_offset_v1:"16" fidl_offset_v2:"16"`
 }
 
 var _mRightsRequest = _bindings.CreateLazyMarshaler(RightsRequest{})
@@ -1094,7 +1094,7 @@
 }
 
 type DirectoryUnlinkResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mDirectoryUnlinkResponse = _bindings.CreateLazyMarshaler(DirectoryUnlinkResponse{})
@@ -1104,7 +1104,7 @@
 }
 
 type DirectoryUnlink2Response struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mDirectoryUnlink2Response = _bindings.CreateLazyMarshaler(DirectoryUnlink2Response{})
@@ -1114,7 +1114,7 @@
 }
 
 type DirectoryRenameResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mDirectoryRenameResponse = _bindings.CreateLazyMarshaler(DirectoryRenameResponse{})
@@ -1124,7 +1124,7 @@
 }
 
 type DirectoryLinkResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mDirectoryLinkResponse = _bindings.CreateLazyMarshaler(DirectoryLinkResponse{})
@@ -1134,8 +1134,8 @@
 }
 
 type DirectoryIteratorGetNextResponse struct {
-	_       struct{}         `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Entries []DirectoryEntry `fidl_offset_v1:"0" fidl_bounds:"8192"`
+	_       struct{}         `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Entries []DirectoryEntry `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"8192"`
 }
 
 var _mDirectoryIteratorGetNextResponse = _bindings.CreateLazyMarshaler(DirectoryIteratorGetNextResponse{})
@@ -1145,7 +1145,7 @@
 }
 
 type IdleEvent struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mIdleEvent = _bindings.CreateLazyMarshaler(IdleEvent{})
@@ -1155,8 +1155,8 @@
 }
 
 type FileSeekResponse struct {
-	_               struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	OffsetFromStart uint64   `fidl_offset_v1:"0"`
+	_               struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	OffsetFromStart uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mFileSeekResponse = _bindings.CreateLazyMarshaler(FileSeekResponse{})
@@ -1166,8 +1166,8 @@
 }
 
 type FileReadResponse struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Data []uint8  `fidl_offset_v1:"0" fidl_bounds:"8192"`
+	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Data []uint8  `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"8192"`
 }
 
 var _mFileReadResponse = _bindings.CreateLazyMarshaler(FileReadResponse{})
@@ -1177,8 +1177,8 @@
 }
 
 type FileWriteResponse struct {
-	_           struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	ActualCount uint64   `fidl_offset_v1:"0"`
+	_           struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	ActualCount uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mFileWriteResponse = _bindings.CreateLazyMarshaler(FileWriteResponse{})
@@ -1188,8 +1188,8 @@
 }
 
 type FileReadAtResponse struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Data []uint8  `fidl_offset_v1:"0" fidl_bounds:"8192"`
+	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Data []uint8  `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"8192"`
 }
 
 var _mFileReadAtResponse = _bindings.CreateLazyMarshaler(FileReadAtResponse{})
@@ -1199,8 +1199,8 @@
 }
 
 type FileWriteAtResponse struct {
-	_           struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	ActualCount uint64   `fidl_offset_v1:"0"`
+	_           struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	ActualCount uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mFileWriteAtResponse = _bindings.CreateLazyMarshaler(FileWriteAtResponse{})
@@ -1210,7 +1210,7 @@
 }
 
 type FileResizeResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mFileResizeResponse = _bindings.CreateLazyMarshaler(FileResizeResponse{})
@@ -1220,8 +1220,8 @@
 }
 
 type FileGetMemRangeResponse struct {
-	_      struct{}         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Buffer fuchsiamem.Range `fidl_offset_v1:"0"`
+	_      struct{}         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Buffer fuchsiamem.Range `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mFileGetMemRangeResponse = _bindings.CreateLazyMarshaler(FileGetMemRangeResponse{})
@@ -1231,12 +1231,12 @@
 }
 
 type InotifyEvent struct {
-	_               struct{}         `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	WatchDescriptor uint32           `fidl_offset_v1:"0"`
-	Mask            InotifyWatchMask `fidl_offset_v1:"4"`
-	Cookie          uint32           `fidl_offset_v1:"8"`
-	Len             uint32           `fidl_offset_v1:"12"`
-	Filename        string           `fidl_offset_v1:"16" fidl_bounds:"4095"`
+	_               struct{}         `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	WatchDescriptor uint32           `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Mask            InotifyWatchMask `fidl_offset_v1:"4" fidl_offset_v2:"4"`
+	Cookie          uint32           `fidl_offset_v1:"8" fidl_offset_v2:"8"`
+	Len             uint32           `fidl_offset_v1:"12" fidl_offset_v2:"12"`
+	Filename        string           `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_bounds:"4095"`
 }
 
 var _mInotifyEvent = _bindings.CreateLazyMarshaler(InotifyEvent{})
@@ -1246,7 +1246,7 @@
 }
 
 type AdvisoryLockingAdvisoryLockResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mAdvisoryLockingAdvisoryLockResponse = _bindings.CreateLazyMarshaler(AdvisoryLockingAdvisoryLockResponse{})
@@ -1260,12 +1260,12 @@
 // The range can extend beyond the end of the file but cannot extend beyond
 // the beginning of the file.
 type AdvisoryLockRange struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
+	_ struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
 	// The location in the file from which [`offset`] is computed.
-	Origin SeekOrigin `fidl_offset_v1:"0"`
+	Origin SeekOrigin `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 	// The start of the byte range, expressed as an offset from [`origin`].
 	// Cannot be negative if [`origin`] is [`SeekOrigin.START`].
-	Offset int64 `fidl_offset_v1:"8"`
+	Offset int64 `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 	// The length of the byte range in bytes.
 	//
 	// If the length is zero, then the byte range exends until the end of the
@@ -1274,7 +1274,7 @@
 	// If the length is negative, the byte range includes the bytes `offset` +
 	// `length` up to, and including, `offset` - 1, provided this range does
 	// not extend beyond the beginning of the file.
-	Length int64 `fidl_offset_v1:"16"`
+	Length int64 `fidl_offset_v1:"16" fidl_offset_v2:"16"`
 }
 
 var _mAdvisoryLockRange = _bindings.CreateLazyMarshaler(AdvisoryLockRange{})
@@ -1284,8 +1284,8 @@
 }
 
 type NodeGetTokenResponse struct {
-	_     struct{}  `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4"`
-	Token _zx.Event `fidl_offset_v1:"0" fidl_handle_subtype:"5" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	_     struct{}  `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4" fidl_size_v2:"4" fidl_alignment_v2:"4"`
+	Token _zx.Event `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"5" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 }
 
 var _mNodeGetTokenResponse = _bindings.CreateLazyMarshaler(NodeGetTokenResponse{})
@@ -1295,8 +1295,8 @@
 }
 
 type NodeGetAttributesResponse struct {
-	_          struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Attributes NodeAttributes `fidl_offset_v1:"0"`
+	_          struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Attributes NodeAttributes `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mNodeGetAttributesResponse = _bindings.CreateLazyMarshaler(NodeGetAttributesResponse{})
@@ -1306,7 +1306,7 @@
 }
 
 type NodeUpdateAttributesResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mNodeUpdateAttributesResponse = _bindings.CreateLazyMarshaler(NodeUpdateAttributesResponse{})
@@ -1316,7 +1316,7 @@
 }
 
 type NodeSyncResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mNodeSyncResponse = _bindings.CreateLazyMarshaler(NodeSyncResponse{})
@@ -1326,9 +1326,9 @@
 }
 
 type debuglogWithCtxReopenRequest struct {
-	_             struct{}          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Options       ConnectionOptions `fidl_offset_v1:"0"`
-	ObjectRequest _zx.Channel       `fidl_offset_v1:"16" fidl_handle_subtype:"4" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	_             struct{}          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Options       ConnectionOptions `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	ObjectRequest _zx.Channel       `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_handle_subtype:"4" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 }
 
 var _mdebuglogWithCtxReopenRequest = _bindings.CreateLazyMarshaler(debuglogWithCtxReopenRequest{})
@@ -1338,8 +1338,8 @@
 }
 
 type debuglogWithCtxDescribeRequest struct {
-	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Query ConnectionInfoQuery `fidl_offset_v1:"0"`
+	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Query ConnectionInfoQuery `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdebuglogWithCtxDescribeRequest = _bindings.CreateLazyMarshaler(debuglogWithCtxDescribeRequest{})
@@ -1349,8 +1349,8 @@
 }
 
 type debuglogWithCtxDescribeResponse struct {
-	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Info ConnectionInfo `fidl_offset_v1:"0"`
+	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info ConnectionInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdebuglogWithCtxDescribeResponse = _bindings.CreateLazyMarshaler(debuglogWithCtxDescribeResponse{})
@@ -1360,8 +1360,8 @@
 }
 
 type debuglogWithCtxOnConnectionInfoResponse struct {
-	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Info ConnectionInfo `fidl_offset_v1:"0"`
+	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info ConnectionInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdebuglogWithCtxOnConnectionInfoResponse = _bindings.CreateLazyMarshaler(debuglogWithCtxOnConnectionInfoResponse{})
@@ -1371,8 +1371,8 @@
 }
 
 type debuglogWithCtxGetTokenResponse struct {
-	_      struct{}           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeGetTokenResult `fidl_offset_v1:"0"`
+	_      struct{}           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeGetTokenResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdebuglogWithCtxGetTokenResponse = _bindings.CreateLazyMarshaler(debuglogWithCtxGetTokenResponse{})
@@ -1382,8 +1382,8 @@
 }
 
 type debuglogWithCtxGetAttributesRequest struct {
-	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Query NodeAttributesQuery `fidl_offset_v1:"0"`
+	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Query NodeAttributesQuery `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdebuglogWithCtxGetAttributesRequest = _bindings.CreateLazyMarshaler(debuglogWithCtxGetAttributesRequest{})
@@ -1393,8 +1393,8 @@
 }
 
 type debuglogWithCtxGetAttributesResponse struct {
-	_      struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeGetAttributesResult `fidl_offset_v1:"0"`
+	_      struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeGetAttributesResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdebuglogWithCtxGetAttributesResponse = _bindings.CreateLazyMarshaler(debuglogWithCtxGetAttributesResponse{})
@@ -1404,8 +1404,8 @@
 }
 
 type debuglogWithCtxUpdateAttributesRequest struct {
-	_          struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Attributes NodeAttributes `fidl_offset_v1:"0"`
+	_          struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Attributes NodeAttributes `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdebuglogWithCtxUpdateAttributesRequest = _bindings.CreateLazyMarshaler(debuglogWithCtxUpdateAttributesRequest{})
@@ -1415,8 +1415,8 @@
 }
 
 type debuglogWithCtxUpdateAttributesResponse struct {
-	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeUpdateAttributesResult `fidl_offset_v1:"0"`
+	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeUpdateAttributesResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdebuglogWithCtxUpdateAttributesResponse = _bindings.CreateLazyMarshaler(debuglogWithCtxUpdateAttributesResponse{})
@@ -1426,8 +1426,8 @@
 }
 
 type debuglogWithCtxSyncResponse struct {
-	_      struct{}       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeSyncResult `fidl_offset_v1:"0"`
+	_      struct{}       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeSyncResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdebuglogWithCtxSyncResponse = _bindings.CreateLazyMarshaler(debuglogWithCtxSyncResponse{})
@@ -1437,9 +1437,9 @@
 }
 
 type directoryWithCtxReopenRequest struct {
-	_             struct{}          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Options       ConnectionOptions `fidl_offset_v1:"0"`
-	ObjectRequest _zx.Channel       `fidl_offset_v1:"16" fidl_handle_subtype:"4" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	_             struct{}          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Options       ConnectionOptions `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	ObjectRequest _zx.Channel       `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_handle_subtype:"4" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 }
 
 var _mdirectoryWithCtxReopenRequest = _bindings.CreateLazyMarshaler(directoryWithCtxReopenRequest{})
@@ -1449,8 +1449,8 @@
 }
 
 type directoryWithCtxDescribeRequest struct {
-	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Query ConnectionInfoQuery `fidl_offset_v1:"0"`
+	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Query ConnectionInfoQuery `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxDescribeRequest = _bindings.CreateLazyMarshaler(directoryWithCtxDescribeRequest{})
@@ -1460,8 +1460,8 @@
 }
 
 type directoryWithCtxDescribeResponse struct {
-	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Info ConnectionInfo `fidl_offset_v1:"0"`
+	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info ConnectionInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxDescribeResponse = _bindings.CreateLazyMarshaler(directoryWithCtxDescribeResponse{})
@@ -1471,8 +1471,8 @@
 }
 
 type directoryWithCtxOnConnectionInfoResponse struct {
-	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Info ConnectionInfo `fidl_offset_v1:"0"`
+	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info ConnectionInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxOnConnectionInfoResponse = _bindings.CreateLazyMarshaler(directoryWithCtxOnConnectionInfoResponse{})
@@ -1482,8 +1482,8 @@
 }
 
 type directoryWithCtxGetTokenResponse struct {
-	_      struct{}           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeGetTokenResult `fidl_offset_v1:"0"`
+	_      struct{}           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeGetTokenResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxGetTokenResponse = _bindings.CreateLazyMarshaler(directoryWithCtxGetTokenResponse{})
@@ -1493,8 +1493,8 @@
 }
 
 type directoryWithCtxGetAttributesRequest struct {
-	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Query NodeAttributesQuery `fidl_offset_v1:"0"`
+	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Query NodeAttributesQuery `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxGetAttributesRequest = _bindings.CreateLazyMarshaler(directoryWithCtxGetAttributesRequest{})
@@ -1504,8 +1504,8 @@
 }
 
 type directoryWithCtxGetAttributesResponse struct {
-	_      struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeGetAttributesResult `fidl_offset_v1:"0"`
+	_      struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeGetAttributesResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxGetAttributesResponse = _bindings.CreateLazyMarshaler(directoryWithCtxGetAttributesResponse{})
@@ -1515,8 +1515,8 @@
 }
 
 type directoryWithCtxUpdateAttributesRequest struct {
-	_          struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Attributes NodeAttributes `fidl_offset_v1:"0"`
+	_          struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Attributes NodeAttributes `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxUpdateAttributesRequest = _bindings.CreateLazyMarshaler(directoryWithCtxUpdateAttributesRequest{})
@@ -1526,8 +1526,8 @@
 }
 
 type directoryWithCtxUpdateAttributesResponse struct {
-	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeUpdateAttributesResult `fidl_offset_v1:"0"`
+	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeUpdateAttributesResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxUpdateAttributesResponse = _bindings.CreateLazyMarshaler(directoryWithCtxUpdateAttributesResponse{})
@@ -1537,8 +1537,8 @@
 }
 
 type directoryWithCtxSyncResponse struct {
-	_      struct{}       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeSyncResult `fidl_offset_v1:"0"`
+	_      struct{}       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeSyncResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxSyncResponse = _bindings.CreateLazyMarshaler(directoryWithCtxSyncResponse{})
@@ -1548,11 +1548,11 @@
 }
 
 type directoryWithCtxOpenRequest struct {
-	_             struct{}          `fidl:"s" fidl_size_v1:"48" fidl_alignment_v1:"8"`
-	Path          string            `fidl_offset_v1:"0" fidl_bounds:"4095"`
-	Mode          OpenMode          `fidl_offset_v1:"16"`
-	Options       ConnectionOptions `fidl_offset_v1:"24"`
-	ObjectRequest _zx.Channel       `fidl_offset_v1:"40" fidl_handle_subtype:"4" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	_             struct{}          `fidl:"s" fidl_size_v1:"48" fidl_alignment_v1:"8" fidl_size_v2:"48" fidl_alignment_v2:"8"`
+	Path          string            `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"4095"`
+	Mode          OpenMode          `fidl_offset_v1:"16" fidl_offset_v2:"16"`
+	Options       ConnectionOptions `fidl_offset_v1:"24" fidl_offset_v2:"24"`
+	ObjectRequest _zx.Channel       `fidl_offset_v1:"40" fidl_offset_v2:"40" fidl_handle_subtype:"4" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 }
 
 var _mdirectoryWithCtxOpenRequest = _bindings.CreateLazyMarshaler(directoryWithCtxOpenRequest{})
@@ -1562,11 +1562,11 @@
 }
 
 type directoryWithCtxAddInotifyFilterRequest struct {
-	_               struct{}         `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	Path            string           `fidl_offset_v1:"0" fidl_bounds:"4095"`
-	Filter          InotifyWatchMask `fidl_offset_v1:"16"`
-	WatchDescriptor uint32           `fidl_offset_v1:"20"`
-	Socket          _zx.Socket       `fidl_offset_v1:"24" fidl_handle_subtype:"14" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	_               struct{}         `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	Path            string           `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"4095"`
+	Filter          InotifyWatchMask `fidl_offset_v1:"16" fidl_offset_v2:"16"`
+	WatchDescriptor uint32           `fidl_offset_v1:"20" fidl_offset_v2:"20"`
+	Socket          _zx.Socket       `fidl_offset_v1:"24" fidl_offset_v2:"24" fidl_handle_subtype:"14" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 }
 
 var _mdirectoryWithCtxAddInotifyFilterRequest = _bindings.CreateLazyMarshaler(directoryWithCtxAddInotifyFilterRequest{})
@@ -1576,8 +1576,8 @@
 }
 
 type directoryWithCtxUnlinkRequest struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Path string   `fidl_offset_v1:"0" fidl_bounds:"4095"`
+	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Path string   `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"4095"`
 }
 
 var _mdirectoryWithCtxUnlinkRequest = _bindings.CreateLazyMarshaler(directoryWithCtxUnlinkRequest{})
@@ -1587,8 +1587,8 @@
 }
 
 type directoryWithCtxUnlinkResponse struct {
-	_      struct{}              `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result DirectoryUnlinkResult `fidl_offset_v1:"0"`
+	_      struct{}              `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result DirectoryUnlinkResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxUnlinkResponse = _bindings.CreateLazyMarshaler(directoryWithCtxUnlinkResponse{})
@@ -1598,9 +1598,9 @@
 }
 
 type directoryWithCtxUnlink2Request struct {
-	_       struct{}      `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	Name    string        `fidl_offset_v1:"0" fidl_bounds:"255"`
-	Options UnlinkOptions `fidl_offset_v1:"16"`
+	_       struct{}      `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	Name    string        `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"255"`
+	Options UnlinkOptions `fidl_offset_v1:"16" fidl_offset_v2:"16"`
 }
 
 var _mdirectoryWithCtxUnlink2Request = _bindings.CreateLazyMarshaler(directoryWithCtxUnlink2Request{})
@@ -1610,8 +1610,8 @@
 }
 
 type directoryWithCtxUnlink2Response struct {
-	_      struct{}               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result DirectoryUnlink2Result `fidl_offset_v1:"0"`
+	_      struct{}               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result DirectoryUnlink2Result `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxUnlink2Response = _bindings.CreateLazyMarshaler(directoryWithCtxUnlink2Response{})
@@ -1621,9 +1621,9 @@
 }
 
 type directoryWithCtxEnumerateRequest struct {
-	_        struct{}                                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Options  DirectoryEnumerateOptions                `fidl_offset_v1:"0"`
-	Iterator DirectoryIteratorWithCtxInterfaceRequest `fidl_offset_v1:"16" fidl_handle_subtype:"4" fidl_bounds:"0"`
+	_        struct{}                                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Options  DirectoryEnumerateOptions                `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Iterator DirectoryIteratorWithCtxInterfaceRequest `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_handle_subtype:"4" fidl_bounds:"0"`
 }
 
 var _mdirectoryWithCtxEnumerateRequest = _bindings.CreateLazyMarshaler(directoryWithCtxEnumerateRequest{})
@@ -1633,10 +1633,10 @@
 }
 
 type directoryWithCtxRenameRequest struct {
-	_              struct{}  `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8"`
-	Src            string    `fidl_offset_v1:"0" fidl_bounds:"255"`
-	DstParentToken _zx.Event `fidl_offset_v1:"16" fidl_handle_subtype:"5" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
-	Dst            string    `fidl_offset_v1:"24" fidl_bounds:"255"`
+	_              struct{}  `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8" fidl_size_v2:"40" fidl_alignment_v2:"8"`
+	Src            string    `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"255"`
+	DstParentToken _zx.Event `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_handle_subtype:"5" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	Dst            string    `fidl_offset_v1:"24" fidl_offset_v2:"24" fidl_bounds:"255"`
 }
 
 var _mdirectoryWithCtxRenameRequest = _bindings.CreateLazyMarshaler(directoryWithCtxRenameRequest{})
@@ -1646,8 +1646,8 @@
 }
 
 type directoryWithCtxRenameResponse struct {
-	_      struct{}              `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result DirectoryRenameResult `fidl_offset_v1:"0"`
+	_      struct{}              `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result DirectoryRenameResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxRenameResponse = _bindings.CreateLazyMarshaler(directoryWithCtxRenameResponse{})
@@ -1657,10 +1657,10 @@
 }
 
 type directoryWithCtxLinkRequest struct {
-	_              struct{}  `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8"`
-	Src            string    `fidl_offset_v1:"0" fidl_bounds:"255"`
-	DstParentToken _zx.Event `fidl_offset_v1:"16" fidl_handle_subtype:"5" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
-	Dst            string    `fidl_offset_v1:"24" fidl_bounds:"255"`
+	_              struct{}  `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8" fidl_size_v2:"40" fidl_alignment_v2:"8"`
+	Src            string    `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"255"`
+	DstParentToken _zx.Event `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_handle_subtype:"5" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	Dst            string    `fidl_offset_v1:"24" fidl_offset_v2:"24" fidl_bounds:"255"`
 }
 
 var _mdirectoryWithCtxLinkRequest = _bindings.CreateLazyMarshaler(directoryWithCtxLinkRequest{})
@@ -1670,8 +1670,8 @@
 }
 
 type directoryWithCtxLinkResponse struct {
-	_      struct{}            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result DirectoryLinkResult `fidl_offset_v1:"0"`
+	_      struct{}            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result DirectoryLinkResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryWithCtxLinkResponse = _bindings.CreateLazyMarshaler(directoryWithCtxLinkResponse{})
@@ -1681,10 +1681,10 @@
 }
 
 type directoryWithCtxWatchRequest struct {
-	_       struct{}                                `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	Mask    DirectoryWatchMask                      `fidl_offset_v1:"0"`
-	Options DirectoryWatchOptions                   `fidl_offset_v1:"8"`
-	Watcher DirectoryWatcherWithCtxInterfaceRequest `fidl_offset_v1:"24" fidl_handle_subtype:"4" fidl_bounds:"0"`
+	_       struct{}                                `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	Mask    DirectoryWatchMask                      `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Options DirectoryWatchOptions                   `fidl_offset_v1:"8" fidl_offset_v2:"8"`
+	Watcher DirectoryWatcherWithCtxInterfaceRequest `fidl_offset_v1:"24" fidl_offset_v2:"24" fidl_handle_subtype:"4" fidl_bounds:"0"`
 }
 
 var _mdirectoryWithCtxWatchRequest = _bindings.CreateLazyMarshaler(directoryWithCtxWatchRequest{})
@@ -1694,8 +1694,8 @@
 }
 
 type directoryIteratorWithCtxGetNextResponse struct {
-	_      struct{}                       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result DirectoryIteratorGetNextResult `fidl_offset_v1:"0"`
+	_      struct{}                       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result DirectoryIteratorGetNextResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdirectoryIteratorWithCtxGetNextResponse = _bindings.CreateLazyMarshaler(directoryIteratorWithCtxGetNextResponse{})
@@ -1705,8 +1705,8 @@
 }
 
 type directoryWatcherWithCtxGetNextResponse struct {
-	_      struct{}                `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Events []DirectoryWatchedEvent `fidl_offset_v1:"0" fidl_bounds:"8192"`
+	_      struct{}                `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Events []DirectoryWatchedEvent `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"8192"`
 }
 
 var _mdirectoryWatcherWithCtxGetNextResponse = _bindings.CreateLazyMarshaler(directoryWatcherWithCtxGetNextResponse{})
@@ -1716,9 +1716,9 @@
 }
 
 type fileWithCtxReopenRequest struct {
-	_             struct{}          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Options       ConnectionOptions `fidl_offset_v1:"0"`
-	ObjectRequest _zx.Channel       `fidl_offset_v1:"16" fidl_handle_subtype:"4" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	_             struct{}          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Options       ConnectionOptions `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	ObjectRequest _zx.Channel       `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_handle_subtype:"4" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 }
 
 var _mfileWithCtxReopenRequest = _bindings.CreateLazyMarshaler(fileWithCtxReopenRequest{})
@@ -1728,8 +1728,8 @@
 }
 
 type fileWithCtxDescribeRequest struct {
-	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Query ConnectionInfoQuery `fidl_offset_v1:"0"`
+	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Query ConnectionInfoQuery `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxDescribeRequest = _bindings.CreateLazyMarshaler(fileWithCtxDescribeRequest{})
@@ -1739,8 +1739,8 @@
 }
 
 type fileWithCtxDescribeResponse struct {
-	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Info ConnectionInfo `fidl_offset_v1:"0"`
+	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info ConnectionInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxDescribeResponse = _bindings.CreateLazyMarshaler(fileWithCtxDescribeResponse{})
@@ -1750,8 +1750,8 @@
 }
 
 type fileWithCtxOnConnectionInfoResponse struct {
-	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Info ConnectionInfo `fidl_offset_v1:"0"`
+	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info ConnectionInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxOnConnectionInfoResponse = _bindings.CreateLazyMarshaler(fileWithCtxOnConnectionInfoResponse{})
@@ -1761,8 +1761,8 @@
 }
 
 type fileWithCtxGetTokenResponse struct {
-	_      struct{}           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeGetTokenResult `fidl_offset_v1:"0"`
+	_      struct{}           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeGetTokenResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxGetTokenResponse = _bindings.CreateLazyMarshaler(fileWithCtxGetTokenResponse{})
@@ -1772,8 +1772,8 @@
 }
 
 type fileWithCtxGetAttributesRequest struct {
-	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Query NodeAttributesQuery `fidl_offset_v1:"0"`
+	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Query NodeAttributesQuery `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxGetAttributesRequest = _bindings.CreateLazyMarshaler(fileWithCtxGetAttributesRequest{})
@@ -1783,8 +1783,8 @@
 }
 
 type fileWithCtxGetAttributesResponse struct {
-	_      struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeGetAttributesResult `fidl_offset_v1:"0"`
+	_      struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeGetAttributesResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxGetAttributesResponse = _bindings.CreateLazyMarshaler(fileWithCtxGetAttributesResponse{})
@@ -1794,8 +1794,8 @@
 }
 
 type fileWithCtxUpdateAttributesRequest struct {
-	_          struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Attributes NodeAttributes `fidl_offset_v1:"0"`
+	_          struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Attributes NodeAttributes `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxUpdateAttributesRequest = _bindings.CreateLazyMarshaler(fileWithCtxUpdateAttributesRequest{})
@@ -1805,8 +1805,8 @@
 }
 
 type fileWithCtxUpdateAttributesResponse struct {
-	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeUpdateAttributesResult `fidl_offset_v1:"0"`
+	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeUpdateAttributesResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxUpdateAttributesResponse = _bindings.CreateLazyMarshaler(fileWithCtxUpdateAttributesResponse{})
@@ -1816,8 +1816,8 @@
 }
 
 type fileWithCtxSyncResponse struct {
-	_      struct{}       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeSyncResult `fidl_offset_v1:"0"`
+	_      struct{}       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeSyncResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxSyncResponse = _bindings.CreateLazyMarshaler(fileWithCtxSyncResponse{})
@@ -1827,8 +1827,8 @@
 }
 
 type fileWithCtxAdvisoryLockRequest struct {
-	_       struct{}            `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Request AdvisoryLockRequest `fidl_offset_v1:"0"`
+	_       struct{}            `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Request AdvisoryLockRequest `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxAdvisoryLockRequest = _bindings.CreateLazyMarshaler(fileWithCtxAdvisoryLockRequest{})
@@ -1838,8 +1838,8 @@
 }
 
 type fileWithCtxAdvisoryLockResponse struct {
-	_      struct{}                          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result AdvisoryLockingAdvisoryLockResult `fidl_offset_v1:"0"`
+	_      struct{}                          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result AdvisoryLockingAdvisoryLockResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxAdvisoryLockResponse = _bindings.CreateLazyMarshaler(fileWithCtxAdvisoryLockResponse{})
@@ -1849,9 +1849,9 @@
 }
 
 type fileWithCtxSeekRequest struct {
-	_      struct{}   `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Origin SeekOrigin `fidl_offset_v1:"0"`
-	Offset int64      `fidl_offset_v1:"8"`
+	_      struct{}   `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Origin SeekOrigin `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Offset int64      `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mfileWithCtxSeekRequest = _bindings.CreateLazyMarshaler(fileWithCtxSeekRequest{})
@@ -1861,8 +1861,8 @@
 }
 
 type fileWithCtxSeekResponse struct {
-	_      struct{}       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result FileSeekResult `fidl_offset_v1:"0"`
+	_      struct{}       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result FileSeekResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxSeekResponse = _bindings.CreateLazyMarshaler(fileWithCtxSeekResponse{})
@@ -1872,8 +1872,8 @@
 }
 
 type fileWithCtxReadRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Count uint64   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Count uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxReadRequest = _bindings.CreateLazyMarshaler(fileWithCtxReadRequest{})
@@ -1883,8 +1883,8 @@
 }
 
 type fileWithCtxReadResponse struct {
-	_      struct{}       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result FileReadResult `fidl_offset_v1:"0"`
+	_      struct{}       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result FileReadResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxReadResponse = _bindings.CreateLazyMarshaler(fileWithCtxReadResponse{})
@@ -1894,8 +1894,8 @@
 }
 
 type fileWithCtxWriteRequest struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Data []uint8  `fidl_offset_v1:"0" fidl_bounds:"8192"`
+	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Data []uint8  `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"8192"`
 }
 
 var _mfileWithCtxWriteRequest = _bindings.CreateLazyMarshaler(fileWithCtxWriteRequest{})
@@ -1905,8 +1905,8 @@
 }
 
 type fileWithCtxWriteResponse struct {
-	_      struct{}        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result FileWriteResult `fidl_offset_v1:"0"`
+	_      struct{}        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result FileWriteResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxWriteResponse = _bindings.CreateLazyMarshaler(fileWithCtxWriteResponse{})
@@ -1916,9 +1916,9 @@
 }
 
 type fileWithCtxReadAtRequest struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Count  uint64   `fidl_offset_v1:"0"`
-	Offset uint64   `fidl_offset_v1:"8"`
+	_      struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Count  uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Offset uint64   `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mfileWithCtxReadAtRequest = _bindings.CreateLazyMarshaler(fileWithCtxReadAtRequest{})
@@ -1928,8 +1928,8 @@
 }
 
 type fileWithCtxReadAtResponse struct {
-	_      struct{}         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result FileReadAtResult `fidl_offset_v1:"0"`
+	_      struct{}         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result FileReadAtResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxReadAtResponse = _bindings.CreateLazyMarshaler(fileWithCtxReadAtResponse{})
@@ -1939,9 +1939,9 @@
 }
 
 type fileWithCtxWriteAtRequest struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Data   []uint8  `fidl_offset_v1:"0" fidl_bounds:"8192"`
-	Offset uint64   `fidl_offset_v1:"16"`
+	_      struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Data   []uint8  `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"8192"`
+	Offset uint64   `fidl_offset_v1:"16" fidl_offset_v2:"16"`
 }
 
 var _mfileWithCtxWriteAtRequest = _bindings.CreateLazyMarshaler(fileWithCtxWriteAtRequest{})
@@ -1951,8 +1951,8 @@
 }
 
 type fileWithCtxWriteAtResponse struct {
-	_      struct{}          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result FileWriteAtResult `fidl_offset_v1:"0"`
+	_      struct{}          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result FileWriteAtResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxWriteAtResponse = _bindings.CreateLazyMarshaler(fileWithCtxWriteAtResponse{})
@@ -1962,8 +1962,8 @@
 }
 
 type fileWithCtxResizeRequest struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Length uint64   `fidl_offset_v1:"0"`
+	_      struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Length uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxResizeRequest = _bindings.CreateLazyMarshaler(fileWithCtxResizeRequest{})
@@ -1973,8 +1973,8 @@
 }
 
 type fileWithCtxResizeResponse struct {
-	_      struct{}         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result FileResizeResult `fidl_offset_v1:"0"`
+	_      struct{}         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result FileResizeResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxResizeResponse = _bindings.CreateLazyMarshaler(fileWithCtxResizeResponse{})
@@ -1984,8 +1984,8 @@
 }
 
 type fileWithCtxGetMemRangeRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Flags VmoFlags `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Flags VmoFlags `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxGetMemRangeRequest = _bindings.CreateLazyMarshaler(fileWithCtxGetMemRangeRequest{})
@@ -1995,8 +1995,8 @@
 }
 
 type fileWithCtxGetMemRangeResponse struct {
-	_      struct{}              `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result FileGetMemRangeResult `fidl_offset_v1:"0"`
+	_      struct{}              `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result FileGetMemRangeResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mfileWithCtxGetMemRangeResponse = _bindings.CreateLazyMarshaler(fileWithCtxGetMemRangeResponse{})
@@ -2006,8 +2006,8 @@
 }
 
 type advisoryLockingWithCtxAdvisoryLockRequest struct {
-	_       struct{}            `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Request AdvisoryLockRequest `fidl_offset_v1:"0"`
+	_       struct{}            `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Request AdvisoryLockRequest `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _madvisoryLockingWithCtxAdvisoryLockRequest = _bindings.CreateLazyMarshaler(advisoryLockingWithCtxAdvisoryLockRequest{})
@@ -2017,8 +2017,8 @@
 }
 
 type advisoryLockingWithCtxAdvisoryLockResponse struct {
-	_      struct{}                          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result AdvisoryLockingAdvisoryLockResult `fidl_offset_v1:"0"`
+	_      struct{}                          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result AdvisoryLockingAdvisoryLockResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _madvisoryLockingWithCtxAdvisoryLockResponse = _bindings.CreateLazyMarshaler(advisoryLockingWithCtxAdvisoryLockResponse{})
@@ -2028,9 +2028,9 @@
 }
 
 type memoryWithCtxReopenRequest struct {
-	_             struct{}          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Options       ConnectionOptions `fidl_offset_v1:"0"`
-	ObjectRequest _zx.Channel       `fidl_offset_v1:"16" fidl_handle_subtype:"4" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	_             struct{}          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Options       ConnectionOptions `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	ObjectRequest _zx.Channel       `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_handle_subtype:"4" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 }
 
 var _mmemoryWithCtxReopenRequest = _bindings.CreateLazyMarshaler(memoryWithCtxReopenRequest{})
@@ -2040,8 +2040,8 @@
 }
 
 type memoryWithCtxDescribeRequest struct {
-	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Query ConnectionInfoQuery `fidl_offset_v1:"0"`
+	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Query ConnectionInfoQuery `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mmemoryWithCtxDescribeRequest = _bindings.CreateLazyMarshaler(memoryWithCtxDescribeRequest{})
@@ -2051,8 +2051,8 @@
 }
 
 type memoryWithCtxDescribeResponse struct {
-	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Info ConnectionInfo `fidl_offset_v1:"0"`
+	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info ConnectionInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mmemoryWithCtxDescribeResponse = _bindings.CreateLazyMarshaler(memoryWithCtxDescribeResponse{})
@@ -2062,8 +2062,8 @@
 }
 
 type memoryWithCtxOnConnectionInfoResponse struct {
-	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Info ConnectionInfo `fidl_offset_v1:"0"`
+	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info ConnectionInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mmemoryWithCtxOnConnectionInfoResponse = _bindings.CreateLazyMarshaler(memoryWithCtxOnConnectionInfoResponse{})
@@ -2073,8 +2073,8 @@
 }
 
 type memoryWithCtxGetTokenResponse struct {
-	_      struct{}           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeGetTokenResult `fidl_offset_v1:"0"`
+	_      struct{}           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeGetTokenResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mmemoryWithCtxGetTokenResponse = _bindings.CreateLazyMarshaler(memoryWithCtxGetTokenResponse{})
@@ -2084,8 +2084,8 @@
 }
 
 type memoryWithCtxGetAttributesRequest struct {
-	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Query NodeAttributesQuery `fidl_offset_v1:"0"`
+	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Query NodeAttributesQuery `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mmemoryWithCtxGetAttributesRequest = _bindings.CreateLazyMarshaler(memoryWithCtxGetAttributesRequest{})
@@ -2095,8 +2095,8 @@
 }
 
 type memoryWithCtxGetAttributesResponse struct {
-	_      struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeGetAttributesResult `fidl_offset_v1:"0"`
+	_      struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeGetAttributesResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mmemoryWithCtxGetAttributesResponse = _bindings.CreateLazyMarshaler(memoryWithCtxGetAttributesResponse{})
@@ -2106,8 +2106,8 @@
 }
 
 type memoryWithCtxUpdateAttributesRequest struct {
-	_          struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Attributes NodeAttributes `fidl_offset_v1:"0"`
+	_          struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Attributes NodeAttributes `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mmemoryWithCtxUpdateAttributesRequest = _bindings.CreateLazyMarshaler(memoryWithCtxUpdateAttributesRequest{})
@@ -2117,8 +2117,8 @@
 }
 
 type memoryWithCtxUpdateAttributesResponse struct {
-	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeUpdateAttributesResult `fidl_offset_v1:"0"`
+	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeUpdateAttributesResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mmemoryWithCtxUpdateAttributesResponse = _bindings.CreateLazyMarshaler(memoryWithCtxUpdateAttributesResponse{})
@@ -2128,8 +2128,8 @@
 }
 
 type memoryWithCtxSyncResponse struct {
-	_      struct{}       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeSyncResult `fidl_offset_v1:"0"`
+	_      struct{}       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeSyncResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mmemoryWithCtxSyncResponse = _bindings.CreateLazyMarshaler(memoryWithCtxSyncResponse{})
@@ -2139,9 +2139,9 @@
 }
 
 type nodeWithCtxReopenRequest struct {
-	_             struct{}          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Options       ConnectionOptions `fidl_offset_v1:"0"`
-	ObjectRequest _zx.Channel       `fidl_offset_v1:"16" fidl_handle_subtype:"4" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	_             struct{}          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Options       ConnectionOptions `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	ObjectRequest _zx.Channel       `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_handle_subtype:"4" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 }
 
 var _mnodeWithCtxReopenRequest = _bindings.CreateLazyMarshaler(nodeWithCtxReopenRequest{})
@@ -2151,8 +2151,8 @@
 }
 
 type nodeWithCtxDescribeRequest struct {
-	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Query ConnectionInfoQuery `fidl_offset_v1:"0"`
+	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Query ConnectionInfoQuery `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mnodeWithCtxDescribeRequest = _bindings.CreateLazyMarshaler(nodeWithCtxDescribeRequest{})
@@ -2162,8 +2162,8 @@
 }
 
 type nodeWithCtxDescribeResponse struct {
-	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Info ConnectionInfo `fidl_offset_v1:"0"`
+	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info ConnectionInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mnodeWithCtxDescribeResponse = _bindings.CreateLazyMarshaler(nodeWithCtxDescribeResponse{})
@@ -2173,8 +2173,8 @@
 }
 
 type nodeWithCtxOnConnectionInfoResponse struct {
-	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Info ConnectionInfo `fidl_offset_v1:"0"`
+	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info ConnectionInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mnodeWithCtxOnConnectionInfoResponse = _bindings.CreateLazyMarshaler(nodeWithCtxOnConnectionInfoResponse{})
@@ -2184,8 +2184,8 @@
 }
 
 type nodeWithCtxGetTokenResponse struct {
-	_      struct{}           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeGetTokenResult `fidl_offset_v1:"0"`
+	_      struct{}           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeGetTokenResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mnodeWithCtxGetTokenResponse = _bindings.CreateLazyMarshaler(nodeWithCtxGetTokenResponse{})
@@ -2195,8 +2195,8 @@
 }
 
 type nodeWithCtxGetAttributesRequest struct {
-	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Query NodeAttributesQuery `fidl_offset_v1:"0"`
+	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Query NodeAttributesQuery `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mnodeWithCtxGetAttributesRequest = _bindings.CreateLazyMarshaler(nodeWithCtxGetAttributesRequest{})
@@ -2206,8 +2206,8 @@
 }
 
 type nodeWithCtxGetAttributesResponse struct {
-	_      struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeGetAttributesResult `fidl_offset_v1:"0"`
+	_      struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeGetAttributesResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mnodeWithCtxGetAttributesResponse = _bindings.CreateLazyMarshaler(nodeWithCtxGetAttributesResponse{})
@@ -2217,8 +2217,8 @@
 }
 
 type nodeWithCtxUpdateAttributesRequest struct {
-	_          struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Attributes NodeAttributes `fidl_offset_v1:"0"`
+	_          struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Attributes NodeAttributes `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mnodeWithCtxUpdateAttributesRequest = _bindings.CreateLazyMarshaler(nodeWithCtxUpdateAttributesRequest{})
@@ -2228,8 +2228,8 @@
 }
 
 type nodeWithCtxUpdateAttributesResponse struct {
-	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeUpdateAttributesResult `fidl_offset_v1:"0"`
+	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeUpdateAttributesResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mnodeWithCtxUpdateAttributesResponse = _bindings.CreateLazyMarshaler(nodeWithCtxUpdateAttributesResponse{})
@@ -2239,8 +2239,8 @@
 }
 
 type nodeWithCtxSyncResponse struct {
-	_      struct{}       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeSyncResult `fidl_offset_v1:"0"`
+	_      struct{}       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeSyncResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mnodeWithCtxSyncResponse = _bindings.CreateLazyMarshaler(nodeWithCtxSyncResponse{})
@@ -2250,9 +2250,9 @@
 }
 
 type pipeWithCtxReopenRequest struct {
-	_             struct{}          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Options       ConnectionOptions `fidl_offset_v1:"0"`
-	ObjectRequest _zx.Channel       `fidl_offset_v1:"16" fidl_handle_subtype:"4" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	_             struct{}          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Options       ConnectionOptions `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	ObjectRequest _zx.Channel       `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_handle_subtype:"4" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 }
 
 var _mpipeWithCtxReopenRequest = _bindings.CreateLazyMarshaler(pipeWithCtxReopenRequest{})
@@ -2262,8 +2262,8 @@
 }
 
 type pipeWithCtxDescribeRequest struct {
-	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Query ConnectionInfoQuery `fidl_offset_v1:"0"`
+	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Query ConnectionInfoQuery `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mpipeWithCtxDescribeRequest = _bindings.CreateLazyMarshaler(pipeWithCtxDescribeRequest{})
@@ -2273,8 +2273,8 @@
 }
 
 type pipeWithCtxDescribeResponse struct {
-	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Info ConnectionInfo `fidl_offset_v1:"0"`
+	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info ConnectionInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mpipeWithCtxDescribeResponse = _bindings.CreateLazyMarshaler(pipeWithCtxDescribeResponse{})
@@ -2284,8 +2284,8 @@
 }
 
 type pipeWithCtxOnConnectionInfoResponse struct {
-	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Info ConnectionInfo `fidl_offset_v1:"0"`
+	_    struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info ConnectionInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mpipeWithCtxOnConnectionInfoResponse = _bindings.CreateLazyMarshaler(pipeWithCtxOnConnectionInfoResponse{})
@@ -2295,8 +2295,8 @@
 }
 
 type pipeWithCtxGetTokenResponse struct {
-	_      struct{}           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeGetTokenResult `fidl_offset_v1:"0"`
+	_      struct{}           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeGetTokenResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mpipeWithCtxGetTokenResponse = _bindings.CreateLazyMarshaler(pipeWithCtxGetTokenResponse{})
@@ -2306,8 +2306,8 @@
 }
 
 type pipeWithCtxGetAttributesRequest struct {
-	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Query NodeAttributesQuery `fidl_offset_v1:"0"`
+	_     struct{}            `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Query NodeAttributesQuery `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mpipeWithCtxGetAttributesRequest = _bindings.CreateLazyMarshaler(pipeWithCtxGetAttributesRequest{})
@@ -2317,8 +2317,8 @@
 }
 
 type pipeWithCtxGetAttributesResponse struct {
-	_      struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeGetAttributesResult `fidl_offset_v1:"0"`
+	_      struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeGetAttributesResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mpipeWithCtxGetAttributesResponse = _bindings.CreateLazyMarshaler(pipeWithCtxGetAttributesResponse{})
@@ -2328,8 +2328,8 @@
 }
 
 type pipeWithCtxUpdateAttributesRequest struct {
-	_          struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Attributes NodeAttributes `fidl_offset_v1:"0"`
+	_          struct{}       `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Attributes NodeAttributes `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mpipeWithCtxUpdateAttributesRequest = _bindings.CreateLazyMarshaler(pipeWithCtxUpdateAttributesRequest{})
@@ -2339,8 +2339,8 @@
 }
 
 type pipeWithCtxUpdateAttributesResponse struct {
-	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeUpdateAttributesResult `fidl_offset_v1:"0"`
+	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeUpdateAttributesResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mpipeWithCtxUpdateAttributesResponse = _bindings.CreateLazyMarshaler(pipeWithCtxUpdateAttributesResponse{})
@@ -2350,8 +2350,8 @@
 }
 
 type pipeWithCtxSyncResponse struct {
-	_      struct{}       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NodeSyncResult `fidl_offset_v1:"0"`
+	_      struct{}       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NodeSyncResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mpipeWithCtxSyncResponse = _bindings.CreateLazyMarshaler(pipeWithCtxSyncResponse{})
@@ -2389,7 +2389,7 @@
 // The elements have one-to-one correspondence with the members of
 // [`NodeProtocols`].
 type Representation struct {
-	I_representationTag `fidl:"x" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"true"`
+	I_representationTag `fidl:"x" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"true"`
 	I_unknownData       interface{}
 	// See [`NodeProtocols.CONNECTOR`].
 	Connector ConnectorInfo `fidl_ordinal:"1"`
@@ -2592,7 +2592,7 @@
 )
 
 type DirectoryUnlinkResult struct {
-	I_directoryUnlinkResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_directoryUnlinkResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                   DirectoryUnlinkResponse `fidl_ordinal:"1"`
 	Err                        int32                   `fidl_ordinal:"2"`
 }
@@ -2648,7 +2648,7 @@
 )
 
 type DirectoryUnlink2Result struct {
-	I_directoryUnlink2ResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_directoryUnlink2ResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                    DirectoryUnlink2Response `fidl_ordinal:"1"`
 	Err                         int32                    `fidl_ordinal:"2"`
 }
@@ -2704,7 +2704,7 @@
 )
 
 type DirectoryRenameResult struct {
-	I_directoryRenameResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_directoryRenameResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                   DirectoryRenameResponse `fidl_ordinal:"1"`
 	Err                        int32                   `fidl_ordinal:"2"`
 }
@@ -2760,7 +2760,7 @@
 )
 
 type DirectoryLinkResult struct {
-	I_directoryLinkResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_directoryLinkResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                 DirectoryLinkResponse `fidl_ordinal:"1"`
 	Err                      int32                 `fidl_ordinal:"2"`
 }
@@ -2816,7 +2816,7 @@
 )
 
 type DirectoryIteratorGetNextResult struct {
-	I_directoryIteratorGetNextResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_directoryIteratorGetNextResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                            DirectoryIteratorGetNextResponse `fidl_ordinal:"1"`
 	Err                                 int32                            `fidl_ordinal:"2"`
 }
@@ -2876,7 +2876,7 @@
 
 // Events returned from [`DirectoryWatcher.GetNext`].
 type DirectoryWatchedEvent struct {
-	I_directoryWatchedEventTag `fidl:"x" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_directoryWatchedEventTag `fidl:"x" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData              interface{}
 	// Indicates a node already existed in the directory when watching started.
 	Existing DirectoryEntry `fidl_ordinal:"1"`
@@ -2988,7 +2988,7 @@
 )
 
 type FileSeekResult struct {
-	I_fileSeekResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_fileSeekResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response            FileSeekResponse `fidl_ordinal:"1"`
 	Err                 int32            `fidl_ordinal:"2"`
 }
@@ -3044,7 +3044,7 @@
 )
 
 type FileReadResult struct {
-	I_fileReadResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_fileReadResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response            FileReadResponse `fidl_ordinal:"1"`
 	Err                 int32            `fidl_ordinal:"2"`
 }
@@ -3100,7 +3100,7 @@
 )
 
 type FileWriteResult struct {
-	I_fileWriteResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_fileWriteResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response             FileWriteResponse `fidl_ordinal:"1"`
 	Err                  int32             `fidl_ordinal:"2"`
 }
@@ -3156,7 +3156,7 @@
 )
 
 type FileReadAtResult struct {
-	I_fileReadAtResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_fileReadAtResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response              FileReadAtResponse `fidl_ordinal:"1"`
 	Err                   int32              `fidl_ordinal:"2"`
 }
@@ -3212,7 +3212,7 @@
 )
 
 type FileWriteAtResult struct {
-	I_fileWriteAtResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_fileWriteAtResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response               FileWriteAtResponse `fidl_ordinal:"1"`
 	Err                    int32               `fidl_ordinal:"2"`
 }
@@ -3268,7 +3268,7 @@
 )
 
 type FileResizeResult struct {
-	I_fileResizeResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_fileResizeResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response              FileResizeResponse `fidl_ordinal:"1"`
 	Err                   int32              `fidl_ordinal:"2"`
 }
@@ -3324,7 +3324,7 @@
 )
 
 type FileGetMemRangeResult struct {
-	I_fileGetMemRangeResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"true"`
+	I_fileGetMemRangeResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"true"`
 	Response                   FileGetMemRangeResponse `fidl_ordinal:"1"`
 	Err                        int32                   `fidl_ordinal:"2"`
 }
@@ -3380,7 +3380,7 @@
 )
 
 type AdvisoryLockingAdvisoryLockResult struct {
-	I_advisoryLockingAdvisoryLockResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_advisoryLockingAdvisoryLockResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                               AdvisoryLockingAdvisoryLockResponse `fidl_ordinal:"1"`
 	Err                                    int32                               `fidl_ordinal:"2"`
 }
@@ -3436,7 +3436,7 @@
 )
 
 type NodeGetTokenResult struct {
-	I_nodeGetTokenResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"true"`
+	I_nodeGetTokenResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"true"`
 	Response                NodeGetTokenResponse `fidl_ordinal:"1"`
 	Err                     int32                `fidl_ordinal:"2"`
 }
@@ -3492,7 +3492,7 @@
 )
 
 type NodeGetAttributesResult struct {
-	I_nodeGetAttributesResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_nodeGetAttributesResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                     NodeGetAttributesResponse `fidl_ordinal:"1"`
 	Err                          int32                     `fidl_ordinal:"2"`
 }
@@ -3548,7 +3548,7 @@
 )
 
 type NodeUpdateAttributesResult struct {
-	I_nodeUpdateAttributesResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_nodeUpdateAttributesResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                        NodeUpdateAttributesResponse `fidl_ordinal:"1"`
 	Err                             int32                        `fidl_ordinal:"2"`
 }
@@ -3604,7 +3604,7 @@
 )
 
 type NodeSyncResult struct {
-	I_nodeSyncResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_nodeSyncResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response            NodeSyncResponse `fidl_ordinal:"1"`
 	Err                 int32            `fidl_ordinal:"2"`
 }
@@ -3655,7 +3655,7 @@
 // Returns run-time information about a node that is specific to the
 // current connection.
 type ConnectionInfo struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"true"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"true"`
 	I_unknownData interface{}
 	// The active variant corresponds to one of the supported protocols
 	// of the node, and represents the result of the connection-time
@@ -3761,7 +3761,7 @@
 
 // Options for [`Directory.Open`] and [`Node.Reopen`].
 type ConnectionOptions struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	// Flags which can affect the behavior when opening and reopening.
 	// If absent, assumes a default of zero.
@@ -3946,7 +3946,7 @@
 // It supports connecting to arbitrary protocols exported by the filesystem
 // server at a path, including ones that do not compose [`fuchsia.io2/Node`].
 type ConnectorInfo struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 }
 
@@ -3962,7 +3962,7 @@
 // The selection of this variant in [`Representation`] implies that the
 // connection speaks the [`fuchsia.io2/Debuglog`] protocol.
 type DebuglogInfo struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"true"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"true"`
 	I_unknownData interface{}
 	// The backing debuglog kernel object.
 	Debuglog        _zx.Log `fidl_handle_subtype:"12" fidl_handle_rights:"2147483648" fidl_bounds:"0" fidl_ordinal:"1"`
@@ -4003,7 +4003,7 @@
 
 // The object may be cast to the shared interface of devices.
 type DeviceInfo struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"true"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"true"`
 	I_unknownData interface{}
 	// An optional event which transmits information about a device's state.
 	//
@@ -4046,7 +4046,7 @@
 
 // The object may be cast to a Tty interface.
 type TtyInfo struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"true"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"true"`
 	I_unknownData interface{}
 	// An optional event which transmits information about a device's state.
 	//
@@ -4092,7 +4092,7 @@
 // If a particular attribute is not applicable or not supported,
 // implementations should leave the corresponding field absent.
 type DirectoryEntry struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	// Name of the node. This field must be present.
 	Name        string `fidl_bounds:"255" fidl_ordinal:"1"`
@@ -4217,7 +4217,7 @@
 // The selection of this variant in [`Representation`] implies that the
 // connection speaks the [`fuchsia.io2/Directory`] protocol.
 type DirectoryInfo struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 }
 
@@ -4231,7 +4231,7 @@
 
 // Options for [`Directory.Unlink`].
 type UnlinkOptions struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	Flags         UnlinkFlags `fidl_ordinal:"1"`
 	FlagsPresent  bool
@@ -4271,7 +4271,7 @@
 
 // Options to pass to [`fuchsia.io2/Directory.Enumerate`].
 type DirectoryEnumerateOptions struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 }
 
@@ -4284,7 +4284,7 @@
 }
 
 type DirectoryWatchOptions struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 }
 
@@ -4300,7 +4300,7 @@
 // The selection of this variant in [`Representation`] implies that the
 // connection speaks the [`fuchsia.io2/File`] protocol.
 type FileInfo struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"true"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"true"`
 	I_unknownData interface{}
 	// An optional event which transmits information about an object's
 	// readability or writability. This event relays information about the
@@ -4412,7 +4412,7 @@
 }
 
 type AdvisoryLockRequest struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	// The type of lock to be acquired.
 	//
@@ -4519,7 +4519,7 @@
 // The selection of this variant in [`Representation`] implies that the
 // connection speaks the [`fuchsia.io2/Memory`] protocol.
 type MemoryInfo struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"true"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"true"`
 	I_unknownData interface{}
 	// Although a VMO is returned as a part of this structure, that VMO may
 	// back multiple files. To identify the logical portion of the VMO that
@@ -4577,7 +4577,7 @@
 // If a particular attribute is not applicable or not supported,
 // filesystems should leave the corresponding field absent.
 type NodeAttributes struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	// Describes the kinds of representations supported by the node.
 	// Note: This is not the result of the connection-time negotiation,
@@ -4828,7 +4828,7 @@
 // The selection of this variant in [`Representation`] implies that the
 // connection speaks the [`fuchsia.io2/Pipe`] protocol.
 type PipeInfo struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"true"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"true"`
 	I_unknownData interface{}
 	// The backing socket transport for the pipe.
 	// The rights on this socket should correspond to the rights on the
@@ -4873,7 +4873,7 @@
 // The selection of this variant in [`Representation`] implies that the
 // connection speaks the [`fuchsia.posix.socket/Control`] protocol.
 type PosixSocketInfo struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"true"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"true"`
 	I_unknownData interface{}
 	// The backing transport for the socket.
 	// The rights on this socket should correspond to the rights on the
diff --git a/src/syscall/zx/logger/impl.go b/src/syscall/zx/logger/impl.go
index 316bef5..7c01615 100644
--- a/src/syscall/zx/logger/impl.go
+++ b/src/syscall/zx/logger/impl.go
@@ -22,7 +22,7 @@
 	// Default log level used to initialize loggers.
 	LogLevelDefault uint8 = 48
 	// Max number of tags that can be passed to filter by listener.
-	MaxTags uint8 = 8
+	MaxTags uint8 = 16
 	// Max tag length that can be passed to filter by listener.
 	MaxTagLenBytes uint8 = 63
 	// A placeholder tag which indicates to a `LogSink` that the tag should be replaced with
@@ -152,22 +152,22 @@
 }
 
 type LogFilterOptions struct {
-	_           struct{} `fidl:"s" fidl_size_v1:"56" fidl_alignment_v1:"8"`
-	FilterByPid bool     `fidl_offset_v1:"0"`
-	Pid         uint64   `fidl_offset_v1:"8"`
-	FilterByTid bool     `fidl_offset_v1:"16"`
-	Tid         uint64   `fidl_offset_v1:"24"`
+	_           struct{} `fidl:"s" fidl_size_v1:"56" fidl_alignment_v1:"8" fidl_size_v2:"56" fidl_alignment_v2:"8"`
+	FilterByPid bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Pid         uint64   `fidl_offset_v1:"8" fidl_offset_v2:"8"`
+	FilterByTid bool     `fidl_offset_v1:"16" fidl_offset_v2:"16"`
+	Tid         uint64   `fidl_offset_v1:"24" fidl_offset_v2:"24"`
 	// If more than zero, logs would be filtered based on verbosity and
 	// `min_severity` would be ignored.
-	Verbosity uint8 `fidl_offset_v1:"32"`
+	Verbosity uint8 `fidl_offset_v1:"32" fidl_offset_v2:"32"`
 	// Severity used as threshold to determine logging level.
-	MinSeverity LogLevelFilter `fidl_offset_v1:"33"`
+	MinSeverity LogLevelFilter `fidl_offset_v1:"33" fidl_offset_v2:"33"`
 	// If non-empty, return all messages which contain at least one specified
 	// tag.  If empty, messages will not be filtered by tag.
 	// Passed tags should not be more than `MAX_TAG_LEN_BYTES` bytes in length
 	// and max tags can be `MAX_TAGS`.
 	// Listener would be discarded if the limit is not followed.
-	Tags []string `fidl_offset_v1:"40" fidl_bounds:"8,63"`
+	Tags []string `fidl_offset_v1:"40" fidl_offset_v2:"40" fidl_bounds:"16,63"`
 }
 
 var _mLogFilterOptions = _bindings.CreateLazyMarshaler(LogFilterOptions{})
@@ -179,9 +179,9 @@
 // Conveyance to couple a specified Interest with its designated target,
 // specified via a ComponentSelector.
 type LogInterestSelector struct {
-	_        struct{}                             `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	Selector fuchsiadiagnostics.ComponentSelector `fidl_offset_v1:"0"`
-	Interest fuchsiadiagnostics.Interest          `fidl_offset_v1:"16"`
+	_        struct{}                             `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	Selector fuchsiadiagnostics.ComponentSelector `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Interest fuchsiadiagnostics.Interest          `fidl_offset_v1:"16" fidl_offset_v2:"16"`
 }
 
 var _mLogInterestSelector = _bindings.CreateLazyMarshaler(LogInterestSelector{})
@@ -191,18 +191,18 @@
 }
 
 type LogMessage struct {
-	_   struct{} `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	Pid uint64   `fidl_offset_v1:"0"`
-	Tid uint64   `fidl_offset_v1:"8"`
+	_   struct{} `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"64" fidl_alignment_v2:"8"`
+	Pid uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Tid uint64   `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 	// https://fuchsia.dev/fuchsia-src/reference/syscalls/clock_get_monotonic.md
-	Time     int64 `fidl_offset_v1:"16"`
-	Severity int32 `fidl_offset_v1:"24"`
+	Time     int64 `fidl_offset_v1:"16" fidl_offset_v2:"16"`
+	Severity int32 `fidl_offset_v1:"24" fidl_offset_v2:"24"`
 	// See //zircon/system/ulib/syslog/include/lib/syslog/wire_format.h. As messages
 	// can be served out of order, this should only be logged if more than last
 	// count.
-	DroppedLogs uint32   `fidl_offset_v1:"28"`
-	Tags        []string `fidl_offset_v1:"32" fidl_bounds:"5,63"`
-	Msg         string   `fidl_offset_v1:"48" fidl_bounds:"32768"`
+	DroppedLogs uint32   `fidl_offset_v1:"28" fidl_offset_v2:"28"`
+	Tags        []string `fidl_offset_v1:"32" fidl_offset_v2:"32" fidl_bounds:"5,63"`
+	Msg         string   `fidl_offset_v1:"48" fidl_offset_v2:"48" fidl_bounds:"32768"`
 }
 
 var _mLogMessage = _bindings.CreateLazyMarshaler(LogMessage{})
@@ -212,9 +212,9 @@
 }
 
 type logWithCtxListenRequest struct {
-	_           struct{}                    `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	LogListener LogListenerWithCtxInterface `fidl_offset_v1:"0" fidl_handle_subtype:"4"`
-	Options     *LogFilterOptions           `fidl_offset_v1:"8"`
+	_           struct{}                    `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	LogListener LogListenerWithCtxInterface `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"4"`
+	Options     *LogFilterOptions           `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mlogWithCtxListenRequest = _bindings.CreateLazyMarshaler(logWithCtxListenRequest{})
@@ -224,9 +224,9 @@
 }
 
 type logWithCtxDumpLogsRequest struct {
-	_           struct{}                    `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	LogListener LogListenerWithCtxInterface `fidl_offset_v1:"0" fidl_handle_subtype:"4"`
-	Options     *LogFilterOptions           `fidl_offset_v1:"8"`
+	_           struct{}                    `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	LogListener LogListenerWithCtxInterface `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"4"`
+	Options     *LogFilterOptions           `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mlogWithCtxDumpLogsRequest = _bindings.CreateLazyMarshaler(logWithCtxDumpLogsRequest{})
@@ -236,9 +236,9 @@
 }
 
 type logWithCtxListenSafeRequest struct {
-	_           struct{}                        `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	LogListener LogListenerSafeWithCtxInterface `fidl_offset_v1:"0" fidl_handle_subtype:"4"`
-	Options     *LogFilterOptions               `fidl_offset_v1:"8"`
+	_           struct{}                        `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	LogListener LogListenerSafeWithCtxInterface `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"4"`
+	Options     *LogFilterOptions               `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mlogWithCtxListenSafeRequest = _bindings.CreateLazyMarshaler(logWithCtxListenSafeRequest{})
@@ -248,9 +248,9 @@
 }
 
 type logWithCtxDumpLogsSafeRequest struct {
-	_           struct{}                        `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	LogListener LogListenerSafeWithCtxInterface `fidl_offset_v1:"0" fidl_handle_subtype:"4"`
-	Options     *LogFilterOptions               `fidl_offset_v1:"8"`
+	_           struct{}                        `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	LogListener LogListenerSafeWithCtxInterface `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"4"`
+	Options     *LogFilterOptions               `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mlogWithCtxDumpLogsSafeRequest = _bindings.CreateLazyMarshaler(logWithCtxDumpLogsSafeRequest{})
@@ -260,10 +260,10 @@
 }
 
 type logWithCtxListenSafeWithSelectorsRequest struct {
-	_           struct{}                        `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	LogListener LogListenerSafeWithCtxInterface `fidl_offset_v1:"0" fidl_handle_subtype:"4"`
-	Options     *LogFilterOptions               `fidl_offset_v1:"8"`
-	Selectors   []LogInterestSelector           `fidl_offset_v1:"16" fidl_bounds:"5"`
+	_           struct{}                        `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	LogListener LogListenerSafeWithCtxInterface `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"4"`
+	Options     *LogFilterOptions               `fidl_offset_v1:"8" fidl_offset_v2:"8"`
+	Selectors   []LogInterestSelector           `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_bounds:"5"`
 }
 
 var _mlogWithCtxListenSafeWithSelectorsRequest = _bindings.CreateLazyMarshaler(logWithCtxListenSafeWithSelectorsRequest{})
@@ -273,8 +273,8 @@
 }
 
 type logSinkWithCtxConnectRequest struct {
-	_      struct{}   `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Socket _zx.Socket `fidl_offset_v1:"0" fidl_handle_subtype:"14" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	_      struct{}   `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Socket _zx.Socket `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"14" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 }
 
 var _mlogSinkWithCtxConnectRequest = _bindings.CreateLazyMarshaler(logSinkWithCtxConnectRequest{})
@@ -284,8 +284,8 @@
 }
 
 type logSinkWithCtxConnectStructuredRequest struct {
-	_      struct{}   `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Socket _zx.Socket `fidl_offset_v1:"0" fidl_handle_subtype:"14" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	_      struct{}   `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Socket _zx.Socket `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"14" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 }
 
 var _mlogSinkWithCtxConnectStructuredRequest = _bindings.CreateLazyMarshaler(logSinkWithCtxConnectStructuredRequest{})
@@ -295,8 +295,8 @@
 }
 
 type logSinkWithCtxOnRegisterInterestResponse struct {
-	_        struct{}                    `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Interest fuchsiadiagnostics.Interest `fidl_offset_v1:"0"`
+	_        struct{}                    `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Interest fuchsiadiagnostics.Interest `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mlogSinkWithCtxOnRegisterInterestResponse = _bindings.CreateLazyMarshaler(logSinkWithCtxOnRegisterInterestResponse{})
@@ -306,8 +306,8 @@
 }
 
 type logSinkWithCtxOnInterestChangedResponse struct {
-	_        struct{}                    `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Interest fuchsiadiagnostics.Interest `fidl_offset_v1:"0"`
+	_        struct{}                    `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Interest fuchsiadiagnostics.Interest `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mlogSinkWithCtxOnInterestChangedResponse = _bindings.CreateLazyMarshaler(logSinkWithCtxOnInterestChangedResponse{})
@@ -317,8 +317,8 @@
 }
 
 type logListenerWithCtxLogRequest struct {
-	_   struct{}   `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	Log LogMessage `fidl_offset_v1:"0"`
+	_   struct{}   `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"64" fidl_alignment_v2:"8"`
+	Log LogMessage `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mlogListenerWithCtxLogRequest = _bindings.CreateLazyMarshaler(logListenerWithCtxLogRequest{})
@@ -328,8 +328,8 @@
 }
 
 type logListenerWithCtxLogManyRequest struct {
-	_   struct{}     `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Log []LogMessage `fidl_offset_v1:"0" fidl_bounds:""`
+	_   struct{}     `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Log []LogMessage `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
 }
 
 var _mlogListenerWithCtxLogManyRequest = _bindings.CreateLazyMarshaler(logListenerWithCtxLogManyRequest{})
@@ -339,8 +339,8 @@
 }
 
 type logListenerSafeWithCtxLogRequest struct {
-	_   struct{}   `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	Log LogMessage `fidl_offset_v1:"0"`
+	_   struct{}   `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"64" fidl_alignment_v2:"8"`
+	Log LogMessage `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mlogListenerSafeWithCtxLogRequest = _bindings.CreateLazyMarshaler(logListenerSafeWithCtxLogRequest{})
@@ -350,8 +350,8 @@
 }
 
 type logListenerSafeWithCtxLogManyRequest struct {
-	_   struct{}     `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Log []LogMessage `fidl_offset_v1:"0" fidl_bounds:""`
+	_   struct{}     `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Log []LogMessage `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
 }
 
 var _mlogListenerSafeWithCtxLogManyRequest = _bindings.CreateLazyMarshaler(logListenerSafeWithCtxLogManyRequest{})
diff --git a/src/syscall/zx/mem/impl.go b/src/syscall/zx/mem/impl.go
index 068dd87..2ad7e87 100644
--- a/src/syscall/zx/mem/impl.go
+++ b/src/syscall/zx/mem/impl.go
@@ -19,9 +19,9 @@
 // data. `fuchsia.mem.Buffer` is a standard struct that aggregate the VMO
 // and its size.
 type Buffer struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
+	_ struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
 	// The vmo that contains the buffer.
-	Vmo _zx.VMO `fidl_offset_v1:"0" fidl_handle_subtype:"3" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	Vmo _zx.VMO `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"3" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 	// The number of bytes in the buffer.
 	//
 	// The content of the buffer begin at the start of the VMO and continue
@@ -29,7 +29,7 @@
 	// the beginning of the VMO, use `Range` rather than buffer.
 	//
 	// This size must not be greater than the physical size of the VMO.
-	Size uint64 `fidl_offset_v1:"8"`
+	Size uint64 `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mBuffer = _bindings.CreateLazyMarshaler(Buffer{})
@@ -40,15 +40,15 @@
 
 // A range of bytes within a VMO.
 type Range struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
+	_ struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
 	// The vmo that contains the bytes.
-	Vmo _zx.VMO `fidl_offset_v1:"0" fidl_handle_subtype:"3" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
+	Vmo _zx.VMO `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"3" fidl_handle_rights:"2147483648" fidl_bounds:"0"`
 	// The offset of the first byte within the range relative to the start of
 	// the VMO.
 	//
 	// For example, if `offset` is zero, then the first byte in the range is
 	// the first byte in the VMO.
-	Offset uint64 `fidl_offset_v1:"8"`
+	Offset uint64 `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 	// The number of bytes in the range.
 	//
 	// For example, if the offset is 3 and the size is 2, and the VMO starts
@@ -56,7 +56,7 @@
 	//
 	// The sum of the offset and the size must not be greater than the
 	// physical size of the VMO.
-	Size uint64 `fidl_offset_v1:"16"`
+	Size uint64 `fidl_offset_v1:"16" fidl_offset_v2:"16"`
 }
 
 var _mRange = _bindings.CreateLazyMarshaler(Range{})
@@ -80,7 +80,7 @@
 // `bytes`) but also need to support arbitrary amounts of data (i.e., which
 // need to be provided out-of-line in a `Buffer`).
 type Data struct {
-	I_dataTag     `fidl:"x" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"true"`
+	I_dataTag     `fidl:"x" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"true"`
 	I_unknownData interface{}
 	// The binary data provided inline in the message.
 	Bytes []uint8 `fidl_bounds:"" fidl_ordinal:"1"`
diff --git a/src/syscall/zx/net/impl.go b/src/syscall/zx/net/impl.go
index 35345c1..da668f9 100644
--- a/src/syscall/zx/net/impl.go
+++ b/src/syscall/zx/net/impl.go
@@ -177,8 +177,8 @@
 }
 
 type NameLookupLookupIpResponse struct {
-	_    struct{}      `fidl:"s" fidl_size_v1:"48" fidl_alignment_v1:"8"`
-	Addr IpAddressInfo `fidl_offset_v1:"0"`
+	_    struct{}      `fidl:"s" fidl_size_v1:"48" fidl_alignment_v1:"8" fidl_size_v2:"48" fidl_alignment_v2:"8"`
+	Addr IpAddressInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mNameLookupLookupIpResponse = _bindings.CreateLazyMarshaler(NameLookupLookupIpResponse{})
@@ -188,8 +188,8 @@
 }
 
 type NameLookupLookupIp2Response struct {
-	_      struct{}     `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Result LookupResult `fidl_offset_v1:"0"`
+	_      struct{}     `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result LookupResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mNameLookupLookupIp2Response = _bindings.CreateLazyMarshaler(NameLookupLookupIp2Response{})
@@ -199,8 +199,8 @@
 }
 
 type NameLookupLookupHostnameResponse struct {
-	_        struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Hostname string   `fidl_offset_v1:"0" fidl_bounds:"255"`
+	_        struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Hostname string   `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"255"`
 }
 
 var _mNameLookupLookupHostnameResponse = _bindings.CreateLazyMarshaler(NameLookupLookupHostnameResponse{})
@@ -210,13 +210,13 @@
 }
 
 type IpAddressInfo struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"48" fidl_alignment_v1:"8"`
+	_ struct{} `fidl:"s" fidl_size_v1:"48" fidl_alignment_v1:"8" fidl_size_v2:"48" fidl_alignment_v2:"8"`
 	// All of the IPv4 addresses for the requested hostname.
-	Ipv4Addrs []Ipv4Address `fidl_offset_v1:"0" fidl_bounds:"256"`
+	Ipv4Addrs []Ipv4Address `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"256"`
 	// All of the IPv6 addresses for the requested hostname.
-	Ipv6Addrs []Ipv6Address `fidl_offset_v1:"16" fidl_bounds:"256"`
+	Ipv6Addrs []Ipv6Address `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_bounds:"256"`
 	// The canonical name of the requested hostname (usually the DNS CNAME record, if one exists).
-	CanonicalName *string `fidl_offset_v1:"32" fidl_bounds:"256"`
+	CanonicalName *string `fidl_offset_v1:"32" fidl_offset_v2:"32" fidl_bounds:"256"`
 }
 
 var _mIpAddressInfo = _bindings.CreateLazyMarshaler(IpAddressInfo{})
@@ -228,8 +228,8 @@
 // Ipv4Address is expressed in network byte order, so the most significant byte
 // ("127" in the address "127.0.0.1") will be at index 0.
 type Ipv4Address struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"1"`
-	Addr [4]uint8 `fidl_offset_v1:"0"`
+	_    struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"1" fidl_size_v2:"4" fidl_alignment_v2:"1"`
+	Addr [4]uint8 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mIpv4Address = _bindings.CreateLazyMarshaler(Ipv4Address{})
@@ -241,8 +241,8 @@
 // Ipv6Address is expressed in network byte order, so the most significant byte
 // ("ff" in the address "ff02::1") will be at index 0.
 type Ipv6Address struct {
-	_    struct{}  `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"1"`
-	Addr [16]uint8 `fidl_offset_v1:"0"`
+	_    struct{}  `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"1" fidl_size_v2:"16" fidl_alignment_v2:"1"`
+	Addr [16]uint8 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mIpv6Address = _bindings.CreateLazyMarshaler(Ipv6Address{})
@@ -253,14 +253,14 @@
 
 // An IP address with its subnet prefix length.
 type Subnet struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
+	_ struct{} `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
 	// The Ipv4 or Ipv6 address.
-	Addr IpAddress `fidl_offset_v1:"0"`
+	Addr IpAddress `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 	// The prefix length of the netmask. E.g. for 192.168.1.0/24, the prefix
 	// length is 24, corresponding to a netmask of 255.255.255.0.
 	// For Ipv4, prefix_len must be in the range [0, 32].
 	// For Ipv6, prefix_len must be in the range [0, 128].
-	PrefixLen uint8 `fidl_offset_v1:"24"`
+	PrefixLen uint8 `fidl_offset_v1:"24" fidl_offset_v2:"16"`
 }
 
 var _mSubnet = _bindings.CreateLazyMarshaler(Subnet{})
@@ -271,8 +271,8 @@
 
 // A MAC address used to identify a network interface on the data link layer within the network.
 type MacAddress struct {
-	_      struct{} `fidl:"s" fidl_size_v1:"6" fidl_alignment_v1:"1"`
-	Octets [6]uint8 `fidl_offset_v1:"0"`
+	_      struct{} `fidl:"s" fidl_size_v1:"6" fidl_alignment_v1:"1" fidl_size_v2:"6" fidl_alignment_v2:"1"`
+	Octets [6]uint8 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mMacAddress = _bindings.CreateLazyMarshaler(MacAddress{})
@@ -287,11 +287,11 @@
 //
 // [POSIX specification]: https://pubs.opengroup.org/onlinepubs/9699919799/
 type Ipv4SocketAddress struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"6" fidl_alignment_v1:"2"`
+	_ struct{} `fidl:"s" fidl_size_v1:"6" fidl_alignment_v1:"2" fidl_size_v2:"6" fidl_alignment_v2:"2"`
 	// IPv4 Address.
-	Address Ipv4Address `fidl_offset_v1:"0"`
+	Address Ipv4Address `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 	// Transport-layer port.
-	Port uint16 `fidl_offset_v1:"4"`
+	Port uint16 `fidl_offset_v1:"4" fidl_offset_v2:"4"`
 }
 
 var _mIpv4SocketAddress = _bindings.CreateLazyMarshaler(Ipv4SocketAddress{})
@@ -306,11 +306,11 @@
 //
 // [POSIX specification]: https://pubs.opengroup.org/onlinepubs/9699919799/
 type Ipv6SocketAddress struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
+	_ struct{} `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
 	// IPv6 Address.
-	Address Ipv6Address `fidl_offset_v1:"0"`
+	Address Ipv6Address `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 	// Transport-layer port.
-	Port uint16 `fidl_offset_v1:"16"`
+	Port uint16 `fidl_offset_v1:"16" fidl_offset_v2:"16"`
 	// Provides a means to identify to which zone a non-global address belongs.
 	//
 	// A node may have interfaces attached to different zones of the same scope, for example
@@ -322,7 +322,7 @@
 	// See [RFC 4007] for terminology and examples.
 	//
 	// [RFC 4007]: https://tools.ietf.org/html/rfc4007
-	ZoneIndex uint64 `fidl_offset_v1:"24"`
+	ZoneIndex uint64 `fidl_offset_v1:"24" fidl_offset_v2:"24"`
 }
 
 var _mIpv6SocketAddress = _bindings.CreateLazyMarshaler(Ipv6SocketAddress{})
@@ -332,9 +332,9 @@
 }
 
 type nameLookupWithCtxLookupIpRequest struct {
-	_        struct{}        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Hostname string          `fidl_offset_v1:"0" fidl_bounds:"255"`
-	Options  LookupIpOptions `fidl_offset_v1:"16"`
+	_        struct{}        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Hostname string          `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"255"`
+	Options  LookupIpOptions `fidl_offset_v1:"16" fidl_offset_v2:"16"`
 }
 
 var _mnameLookupWithCtxLookupIpRequest = _bindings.CreateLazyMarshaler(nameLookupWithCtxLookupIpRequest{})
@@ -344,8 +344,8 @@
 }
 
 type nameLookupWithCtxLookupIpResponse struct {
-	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NameLookupLookupIpResult `fidl_offset_v1:"0"`
+	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NameLookupLookupIpResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mnameLookupWithCtxLookupIpResponse = _bindings.CreateLazyMarshaler(nameLookupWithCtxLookupIpResponse{})
@@ -355,9 +355,9 @@
 }
 
 type nameLookupWithCtxLookupIp2Request struct {
-	_        struct{}         `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	Hostname string           `fidl_offset_v1:"0" fidl_bounds:"255"`
-	Options  LookupIpOptions2 `fidl_offset_v1:"16"`
+	_        struct{}         `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	Hostname string           `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"255"`
+	Options  LookupIpOptions2 `fidl_offset_v1:"16" fidl_offset_v2:"16"`
 }
 
 var _mnameLookupWithCtxLookupIp2Request = _bindings.CreateLazyMarshaler(nameLookupWithCtxLookupIp2Request{})
@@ -367,8 +367,8 @@
 }
 
 type nameLookupWithCtxLookupIp2Response struct {
-	_      struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NameLookupLookupIp2Result `fidl_offset_v1:"0"`
+	_      struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NameLookupLookupIp2Result `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mnameLookupWithCtxLookupIp2Response = _bindings.CreateLazyMarshaler(nameLookupWithCtxLookupIp2Response{})
@@ -378,8 +378,8 @@
 }
 
 type nameLookupWithCtxLookupHostnameRequest struct {
-	_    struct{}  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Addr IpAddress `fidl_offset_v1:"0"`
+	_    struct{}  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Addr IpAddress `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mnameLookupWithCtxLookupHostnameRequest = _bindings.CreateLazyMarshaler(nameLookupWithCtxLookupHostnameRequest{})
@@ -389,8 +389,8 @@
 }
 
 type nameLookupWithCtxLookupHostnameResponse struct {
-	_      struct{}                       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result NameLookupLookupHostnameResult `fidl_offset_v1:"0"`
+	_      struct{}                       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result NameLookupLookupHostnameResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mnameLookupWithCtxLookupHostnameResponse = _bindings.CreateLazyMarshaler(nameLookupWithCtxLookupHostnameResponse{})
@@ -407,7 +407,7 @@
 )
 
 type NameLookupLookupIpResult struct {
-	I_nameLookupLookupIpResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_nameLookupLookupIpResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                      NameLookupLookupIpResponse `fidl_ordinal:"1"`
 	Err                           LookupError                `fidl_ordinal:"2"`
 }
@@ -463,7 +463,7 @@
 )
 
 type NameLookupLookupIp2Result struct {
-	I_nameLookupLookupIp2ResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_nameLookupLookupIp2ResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                       NameLookupLookupIp2Response `fidl_ordinal:"1"`
 	Err                            LookupError                 `fidl_ordinal:"2"`
 }
@@ -519,7 +519,7 @@
 )
 
 type NameLookupLookupHostnameResult struct {
-	I_nameLookupLookupHostnameResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_nameLookupLookupHostnameResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                            NameLookupLookupHostnameResponse `fidl_ordinal:"1"`
 	Err                                 LookupError                      `fidl_ordinal:"2"`
 }
@@ -576,7 +576,7 @@
 
 // Represents an IP address that may be either v4 or v6.
 type IpAddress struct {
-	I_ipAddressTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_ipAddressTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Ipv4           Ipv4Address `fidl_ordinal:"1"`
 	Ipv6           Ipv6Address `fidl_ordinal:"2"`
 }
@@ -633,7 +633,7 @@
 
 // Represents an IP socket address that may be either v4 or v6.
 type SocketAddress struct {
-	I_socketAddressTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_socketAddressTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Ipv4               Ipv4SocketAddress `fidl_ordinal:"1"`
 	Ipv6               Ipv6SocketAddress `fidl_ordinal:"2"`
 }
@@ -683,7 +683,7 @@
 
 // Lookup operation options.
 type LookupIpOptions2 struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	// Include IPv4 results. Defaults to false.
 	Ipv4Lookup        bool `fidl_ordinal:"1"`
@@ -783,7 +783,7 @@
 
 // The result of a lookup operation.
 type LookupResult struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	// The IP addresses resulting from a lookup.
 	//
diff --git a/src/syscall/zx/net/name/impl.go b/src/syscall/zx/net/name/impl.go
index 06acc0e..160e02e 100644
--- a/src/syscall/zx/net/name/impl.go
+++ b/src/syscall/zx/net/name/impl.go
@@ -13,7 +13,7 @@
 )
 
 type LookupAdminSetDnsServersResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mLookupAdminSetDnsServersResponse = _bindings.CreateLazyMarshaler(LookupAdminSetDnsServersResponse{})
@@ -23,8 +23,8 @@
 }
 
 type lookupAdminWithCtxSetDnsServersRequest struct {
-	_       struct{}                   `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Servers []fuchsianet.SocketAddress `fidl_offset_v1:"0" fidl_bounds:""`
+	_       struct{}                   `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Servers []fuchsianet.SocketAddress `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
 }
 
 var _mlookupAdminWithCtxSetDnsServersRequest = _bindings.CreateLazyMarshaler(lookupAdminWithCtxSetDnsServersRequest{})
@@ -34,8 +34,8 @@
 }
 
 type lookupAdminWithCtxSetDnsServersResponse struct {
-	_      struct{}                       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result LookupAdminSetDnsServersResult `fidl_offset_v1:"0"`
+	_      struct{}                       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result LookupAdminSetDnsServersResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mlookupAdminWithCtxSetDnsServersResponse = _bindings.CreateLazyMarshaler(lookupAdminWithCtxSetDnsServersResponse{})
@@ -45,8 +45,8 @@
 }
 
 type lookupAdminWithCtxGetDnsServersResponse struct {
-	_       struct{}                   `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Servers []fuchsianet.SocketAddress `fidl_offset_v1:"0" fidl_bounds:""`
+	_       struct{}                   `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Servers []fuchsianet.SocketAddress `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
 }
 
 var _mlookupAdminWithCtxGetDnsServersResponse = _bindings.CreateLazyMarshaler(lookupAdminWithCtxGetDnsServersResponse{})
@@ -56,8 +56,8 @@
 }
 
 type dnsServerWatcherWithCtxWatchServersResponse struct {
-	_       struct{}    `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Servers []DnsServer `fidl_offset_v1:"0" fidl_bounds:""`
+	_       struct{}    `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Servers []DnsServer `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
 }
 
 var _mdnsServerWatcherWithCtxWatchServersResponse = _bindings.CreateLazyMarshaler(dnsServerWatcherWithCtxWatchServersResponse{})
@@ -77,7 +77,7 @@
 
 // The configuration source for a [`fuchsia.net.name/DnsServer`].
 type DnsServerSource struct {
-	I_dnsServerSourceTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_dnsServerSourceTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	// The server is statically configured through
 	// [`fuchsia.net.name/LookupAdmin.SetDefaultServers`].
 	StaticSource StaticDnsServerSource `fidl_ordinal:"1"`
@@ -170,7 +170,7 @@
 )
 
 type LookupAdminSetDnsServersResult struct {
-	I_lookupAdminSetDnsServersResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_lookupAdminSetDnsServersResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                            LookupAdminSetDnsServersResponse `fidl_ordinal:"1"`
 	Err                                 int32                            `fidl_ordinal:"2"`
 }
@@ -220,7 +220,7 @@
 
 // Extra information about statically set DNS servers.
 type StaticDnsServerSource struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 }
 
@@ -234,7 +234,7 @@
 
 // Extra information about DNS servers discovered through DHCPv4.
 type DhcpDnsServerSource struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	// The interface index over which this server was discovered.
 	SourceInterface        uint64 `fidl_ordinal:"1"`
@@ -275,7 +275,7 @@
 
 // Extra information about DNS servers discovered through NDP.
 type NdpDnsServerSource struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	// The interface index over which this server was discovered.
 	SourceInterface        uint64 `fidl_ordinal:"1"`
@@ -316,7 +316,7 @@
 
 // Extra information about DNS servers discovered through DHCPv6.
 type Dhcpv6DnsServerSource struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	// The interface index over which this server was discovered.
 	SourceInterface        uint64 `fidl_ordinal:"1"`
@@ -357,7 +357,7 @@
 
 // A DNS server configuration.
 type DnsServer struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	// The server's address, must be provided.
 	Address        fuchsianet.SocketAddress `fidl_ordinal:"1"`
diff --git a/src/syscall/zx/net/stack/impl.go b/src/syscall/zx/net/stack/impl.go
index df89738..796d4a2 100644
--- a/src/syscall/zx/net/stack/impl.go
+++ b/src/syscall/zx/net/stack/impl.go
@@ -11,7 +11,6 @@
 	_bindings "syscall/zx/fidl"
 	fuchsiahardwareethernet "syscall/zx/hardware/ethernet"
 	fuchsiahardwarenetwork "syscall/zx/hardware/network"
-	fuchsialogger "syscall/zx/logger"
 	fuchsianet "syscall/zx/net"
 	fuchsianetname "syscall/zx/net/name"
 )
@@ -184,8 +183,8 @@
 }
 
 type StackAddEthernetInterfaceResponse struct {
-	_  struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Id uint64   `fidl_offset_v1:"0"`
+	_  struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Id uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mStackAddEthernetInterfaceResponse = _bindings.CreateLazyMarshaler(StackAddEthernetInterfaceResponse{})
@@ -195,8 +194,8 @@
 }
 
 type StackAddInterfaceResponse struct {
-	_  struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Id uint64   `fidl_offset_v1:"0"`
+	_  struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Id uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mStackAddInterfaceResponse = _bindings.CreateLazyMarshaler(StackAddInterfaceResponse{})
@@ -206,7 +205,7 @@
 }
 
 type StackDelEthernetInterfaceResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStackDelEthernetInterfaceResponse = _bindings.CreateLazyMarshaler(StackDelEthernetInterfaceResponse{})
@@ -216,8 +215,8 @@
 }
 
 type StackGetInterfaceInfoResponse struct {
-	_    struct{}      `fidl:"s" fidl_size_v1:"96" fidl_alignment_v1:"8"`
-	Info InterfaceInfo `fidl_offset_v1:"0"`
+	_    struct{}      `fidl:"s" fidl_size_v1:"96" fidl_alignment_v1:"8" fidl_size_v2:"96" fidl_alignment_v2:"8"`
+	Info InterfaceInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mStackGetInterfaceInfoResponse = _bindings.CreateLazyMarshaler(StackGetInterfaceInfoResponse{})
@@ -227,7 +226,7 @@
 }
 
 type StackEnableInterfaceResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStackEnableInterfaceResponse = _bindings.CreateLazyMarshaler(StackEnableInterfaceResponse{})
@@ -237,7 +236,7 @@
 }
 
 type StackDisableInterfaceResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStackDisableInterfaceResponse = _bindings.CreateLazyMarshaler(StackDisableInterfaceResponse{})
@@ -247,7 +246,7 @@
 }
 
 type StackAddInterfaceAddressResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStackAddInterfaceAddressResponse = _bindings.CreateLazyMarshaler(StackAddInterfaceAddressResponse{})
@@ -257,7 +256,7 @@
 }
 
 type StackDelInterfaceAddressResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStackDelInterfaceAddressResponse = _bindings.CreateLazyMarshaler(StackDelInterfaceAddressResponse{})
@@ -267,7 +266,7 @@
 }
 
 type StackAddForwardingEntryResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStackAddForwardingEntryResponse = _bindings.CreateLazyMarshaler(StackAddForwardingEntryResponse{})
@@ -277,7 +276,7 @@
 }
 
 type StackDelForwardingEntryResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStackDelForwardingEntryResponse = _bindings.CreateLazyMarshaler(StackDelForwardingEntryResponse{})
@@ -287,7 +286,7 @@
 }
 
 type StackEnablePacketFilterResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStackEnablePacketFilterResponse = _bindings.CreateLazyMarshaler(StackEnablePacketFilterResponse{})
@@ -297,7 +296,7 @@
 }
 
 type StackDisablePacketFilterResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStackDisablePacketFilterResponse = _bindings.CreateLazyMarshaler(StackDisablePacketFilterResponse{})
@@ -307,8 +306,8 @@
 }
 
 type StackGetInterfaceIpForwardingResponse struct {
-	_       struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Enabled bool     `fidl_offset_v1:"0"`
+	_       struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Enabled bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mStackGetInterfaceIpForwardingResponse = _bindings.CreateLazyMarshaler(StackGetInterfaceIpForwardingResponse{})
@@ -318,7 +317,7 @@
 }
 
 type StackSetInterfaceIpForwardingResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStackSetInterfaceIpForwardingResponse = _bindings.CreateLazyMarshaler(StackSetInterfaceIpForwardingResponse{})
@@ -327,24 +326,14 @@
 	return _mStackSetInterfaceIpForwardingResponse
 }
 
-type LogSetLogLevelResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-}
-
-var _mLogSetLogLevelResponse = _bindings.CreateLazyMarshaler(LogSetLogLevelResponse{})
-
-func (msg *LogSetLogLevelResponse) Marshaler() _bindings.Marshaler {
-	return _mLogSetLogLevelResponse
-}
-
 type InterfaceInfo struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"96" fidl_alignment_v1:"8"`
+	_ struct{} `fidl:"s" fidl_size_v1:"96" fidl_alignment_v1:"8" fidl_size_v2:"96" fidl_alignment_v2:"8"`
 	// An opaque identifier for the interface, assigned by the stack.
 	// This identifier will never be 0, and will not be reused even if the device is removed and
 	// subsequently re-added. It is not stable across netstack instances.
-	Id uint64 `fidl_offset_v1:"0"`
+	Id uint64 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 	// All info of an interface except the interface name.
-	Properties InterfaceProperties `fidl_offset_v1:"8"`
+	Properties InterfaceProperties `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mInterfaceInfo = _bindings.CreateLazyMarshaler(InterfaceInfo{})
@@ -354,27 +343,27 @@
 }
 
 type InterfaceProperties struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"88" fidl_alignment_v1:"8"`
+	_ struct{} `fidl:"s" fidl_size_v1:"88" fidl_alignment_v1:"8" fidl_size_v2:"88" fidl_alignment_v2:"8"`
 	// Human-readable name of the interface. eg. eth001, wlanx35.
-	Name string `fidl_offset_v1:"0" fidl_bounds:"15"`
+	Name string `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"15"`
 	// The topological path to the device, representing a stable identifier for the interface
 	// hardware.
-	Topopath string `fidl_offset_v1:"16" fidl_bounds:"255"`
+	Topopath string `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_bounds:"255"`
 	// An unstable file path corresponding to the interface. Used in watching the creation
 	// and destruction of the interface, or in accessing the interface using netdump.
-	Filepath string `fidl_offset_v1:"32" fidl_bounds:"255"`
+	Filepath string `fidl_offset_v1:"32" fidl_offset_v2:"32" fidl_bounds:"255"`
 	// The MAC address of the interface, if available.
-	Mac *fuchsiahardwareethernet.MacAddress `fidl_offset_v1:"48"`
+	Mac *fuchsiahardwareethernet.MacAddress `fidl_offset_v1:"48" fidl_offset_v2:"48"`
 	// The maximum transmission unit for the interface in bytes.
-	Mtu uint32 `fidl_offset_v1:"56"`
+	Mtu uint32 `fidl_offset_v1:"56" fidl_offset_v2:"56"`
 	// The features present on the interface.
-	Features fuchsiahardwareethernet.Features `fidl_offset_v1:"60"`
+	Features fuchsiahardwareethernet.Features `fidl_offset_v1:"60" fidl_offset_v2:"60"`
 	// The administrative status of the interface.
-	AdministrativeStatus AdministrativeStatus `fidl_offset_v1:"64"`
+	AdministrativeStatus AdministrativeStatus `fidl_offset_v1:"64" fidl_offset_v2:"64"`
 	// The physical link status of the interface.
-	PhysicalStatus PhysicalStatus `fidl_offset_v1:"68"`
+	PhysicalStatus PhysicalStatus `fidl_offset_v1:"68" fidl_offset_v2:"68"`
 	// The list of addresses currently assigned to the interface.
-	Addresses []fuchsianet.Subnet `fidl_offset_v1:"72" fidl_bounds:""`
+	Addresses []fuchsianet.Subnet `fidl_offset_v1:"72" fidl_offset_v2:"72" fidl_bounds:""`
 }
 
 var _mInterfaceProperties = _bindings.CreateLazyMarshaler(InterfaceProperties{})
@@ -385,11 +374,11 @@
 
 // An entry in the forwarding table for the network stack.
 type ForwardingEntry struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"56" fidl_alignment_v1:"8"`
+	_ struct{} `fidl:"s" fidl_size_v1:"56" fidl_alignment_v1:"8" fidl_size_v2:"40" fidl_alignment_v2:"8"`
 	// The subnet is the key for the entry in the table.
-	Subnet fuchsianet.Subnet `fidl_offset_v1:"0"`
+	Subnet fuchsianet.Subnet `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 	// The destination that will receive the forwarded packet.
-	Destination ForwardingDestination `fidl_offset_v1:"32"`
+	Destination ForwardingDestination `fidl_offset_v1:"32" fidl_offset_v2:"24"`
 }
 
 var _mForwardingEntry = _bindings.CreateLazyMarshaler(ForwardingEntry{})
@@ -402,11 +391,11 @@
 // The provided `network_device` is expected to support `Ethernet` frames.
 // Its MAC address and MAC filtering is controlled by the provided `mac` channel.
 type EthernetDeviceDefinition struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"4"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"4" fidl_size_v2:"8" fidl_alignment_v2:"4"`
 	// The connection to the device's data plane.
-	NetworkDevice fuchsiahardwarenetwork.DeviceWithCtxInterface `fidl_offset_v1:"0" fidl_handle_subtype:"4"`
+	NetworkDevice fuchsiahardwarenetwork.DeviceWithCtxInterface `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"4"`
 	// The connection to the device's addressing control plane.
-	Mac fuchsiahardwarenetwork.MacAddressingWithCtxInterface `fidl_offset_v1:"4" fidl_handle_subtype:"4"`
+	Mac fuchsiahardwarenetwork.MacAddressingWithCtxInterface `fidl_offset_v1:"4" fidl_offset_v2:"4" fidl_handle_subtype:"4"`
 }
 
 var _mEthernetDeviceDefinition = _bindings.CreateLazyMarshaler(EthernetDeviceDefinition{})
@@ -416,9 +405,9 @@
 }
 
 type stackWithCtxAddEthernetInterfaceRequest struct {
-	_               struct{}                                       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	TopologicalPath string                                         `fidl_offset_v1:"0" fidl_bounds:"255"`
-	Device          fuchsiahardwareethernet.DeviceWithCtxInterface `fidl_offset_v1:"16" fidl_handle_subtype:"4"`
+	_               struct{}                                       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	TopologicalPath string                                         `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"255"`
+	Device          fuchsiahardwareethernet.DeviceWithCtxInterface `fidl_offset_v1:"16" fidl_offset_v2:"16" fidl_handle_subtype:"4"`
 }
 
 var _mstackWithCtxAddEthernetInterfaceRequest = _bindings.CreateLazyMarshaler(stackWithCtxAddEthernetInterfaceRequest{})
@@ -428,8 +417,8 @@
 }
 
 type stackWithCtxAddEthernetInterfaceResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StackAddEthernetInterfaceResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StackAddEthernetInterfaceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstackWithCtxAddEthernetInterfaceResponse = _bindings.CreateLazyMarshaler(stackWithCtxAddEthernetInterfaceResponse{})
@@ -439,9 +428,9 @@
 }
 
 type stackWithCtxAddInterfaceRequest struct {
-	_      struct{}         `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8"`
-	Config InterfaceConfig  `fidl_offset_v1:"0"`
-	Device DeviceDefinition `fidl_offset_v1:"16"`
+	_      struct{}         `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	Config InterfaceConfig  `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Device DeviceDefinition `fidl_offset_v1:"16" fidl_offset_v2:"16"`
 }
 
 var _mstackWithCtxAddInterfaceRequest = _bindings.CreateLazyMarshaler(stackWithCtxAddInterfaceRequest{})
@@ -451,8 +440,8 @@
 }
 
 type stackWithCtxAddInterfaceResponse struct {
-	_      struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StackAddInterfaceResult `fidl_offset_v1:"0"`
+	_      struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StackAddInterfaceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstackWithCtxAddInterfaceResponse = _bindings.CreateLazyMarshaler(stackWithCtxAddInterfaceResponse{})
@@ -462,8 +451,8 @@
 }
 
 type stackWithCtxDelEthernetInterfaceRequest struct {
-	_  struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Id uint64   `fidl_offset_v1:"0"`
+	_  struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Id uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstackWithCtxDelEthernetInterfaceRequest = _bindings.CreateLazyMarshaler(stackWithCtxDelEthernetInterfaceRequest{})
@@ -473,8 +462,8 @@
 }
 
 type stackWithCtxDelEthernetInterfaceResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StackDelEthernetInterfaceResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StackDelEthernetInterfaceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstackWithCtxDelEthernetInterfaceResponse = _bindings.CreateLazyMarshaler(stackWithCtxDelEthernetInterfaceResponse{})
@@ -484,8 +473,8 @@
 }
 
 type stackWithCtxListInterfacesResponse struct {
-	_   struct{}        `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Ifs []InterfaceInfo `fidl_offset_v1:"0" fidl_bounds:"255"`
+	_   struct{}        `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Ifs []InterfaceInfo `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"255"`
 }
 
 var _mstackWithCtxListInterfacesResponse = _bindings.CreateLazyMarshaler(stackWithCtxListInterfacesResponse{})
@@ -495,8 +484,8 @@
 }
 
 type stackWithCtxGetInterfaceInfoRequest struct {
-	_  struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Id uint64   `fidl_offset_v1:"0"`
+	_  struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Id uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstackWithCtxGetInterfaceInfoRequest = _bindings.CreateLazyMarshaler(stackWithCtxGetInterfaceInfoRequest{})
@@ -506,8 +495,8 @@
 }
 
 type stackWithCtxGetInterfaceInfoResponse struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StackGetInterfaceInfoResult `fidl_offset_v1:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StackGetInterfaceInfoResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstackWithCtxGetInterfaceInfoResponse = _bindings.CreateLazyMarshaler(stackWithCtxGetInterfaceInfoResponse{})
@@ -517,8 +506,8 @@
 }
 
 type stackWithCtxEnableInterfaceRequest struct {
-	_  struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Id uint64   `fidl_offset_v1:"0"`
+	_  struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Id uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstackWithCtxEnableInterfaceRequest = _bindings.CreateLazyMarshaler(stackWithCtxEnableInterfaceRequest{})
@@ -528,8 +517,8 @@
 }
 
 type stackWithCtxEnableInterfaceResponse struct {
-	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StackEnableInterfaceResult `fidl_offset_v1:"0"`
+	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StackEnableInterfaceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstackWithCtxEnableInterfaceResponse = _bindings.CreateLazyMarshaler(stackWithCtxEnableInterfaceResponse{})
@@ -539,8 +528,8 @@
 }
 
 type stackWithCtxDisableInterfaceRequest struct {
-	_  struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Id uint64   `fidl_offset_v1:"0"`
+	_  struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Id uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstackWithCtxDisableInterfaceRequest = _bindings.CreateLazyMarshaler(stackWithCtxDisableInterfaceRequest{})
@@ -550,8 +539,8 @@
 }
 
 type stackWithCtxDisableInterfaceResponse struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StackDisableInterfaceResult `fidl_offset_v1:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StackDisableInterfaceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstackWithCtxDisableInterfaceResponse = _bindings.CreateLazyMarshaler(stackWithCtxDisableInterfaceResponse{})
@@ -561,9 +550,9 @@
 }
 
 type stackWithCtxAddInterfaceAddressRequest struct {
-	_    struct{}          `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8"`
-	Id   uint64            `fidl_offset_v1:"0"`
-	Addr fuchsianet.Subnet `fidl_offset_v1:"8"`
+	_    struct{}          `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	Id   uint64            `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Addr fuchsianet.Subnet `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mstackWithCtxAddInterfaceAddressRequest = _bindings.CreateLazyMarshaler(stackWithCtxAddInterfaceAddressRequest{})
@@ -573,8 +562,8 @@
 }
 
 type stackWithCtxAddInterfaceAddressResponse struct {
-	_      struct{}                       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StackAddInterfaceAddressResult `fidl_offset_v1:"0"`
+	_      struct{}                       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StackAddInterfaceAddressResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstackWithCtxAddInterfaceAddressResponse = _bindings.CreateLazyMarshaler(stackWithCtxAddInterfaceAddressResponse{})
@@ -584,9 +573,9 @@
 }
 
 type stackWithCtxDelInterfaceAddressRequest struct {
-	_    struct{}          `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8"`
-	Id   uint64            `fidl_offset_v1:"0"`
-	Addr fuchsianet.Subnet `fidl_offset_v1:"8"`
+	_    struct{}          `fidl:"s" fidl_size_v1:"40" fidl_alignment_v1:"8" fidl_size_v2:"32" fidl_alignment_v2:"8"`
+	Id   uint64            `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Addr fuchsianet.Subnet `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mstackWithCtxDelInterfaceAddressRequest = _bindings.CreateLazyMarshaler(stackWithCtxDelInterfaceAddressRequest{})
@@ -596,8 +585,8 @@
 }
 
 type stackWithCtxDelInterfaceAddressResponse struct {
-	_      struct{}                       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StackDelInterfaceAddressResult `fidl_offset_v1:"0"`
+	_      struct{}                       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StackDelInterfaceAddressResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstackWithCtxDelInterfaceAddressResponse = _bindings.CreateLazyMarshaler(stackWithCtxDelInterfaceAddressResponse{})
@@ -607,8 +596,8 @@
 }
 
 type stackWithCtxGetForwardingTableResponse struct {
-	_     struct{}          `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Table []ForwardingEntry `fidl_offset_v1:"0" fidl_bounds:""`
+	_     struct{}          `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Table []ForwardingEntry `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
 }
 
 var _mstackWithCtxGetForwardingTableResponse = _bindings.CreateLazyMarshaler(stackWithCtxGetForwardingTableResponse{})
@@ -618,8 +607,8 @@
 }
 
 type stackWithCtxAddForwardingEntryRequest struct {
-	_     struct{}        `fidl:"s" fidl_size_v1:"56" fidl_alignment_v1:"8"`
-	Entry ForwardingEntry `fidl_offset_v1:"0"`
+	_     struct{}        `fidl:"s" fidl_size_v1:"56" fidl_alignment_v1:"8" fidl_size_v2:"40" fidl_alignment_v2:"8"`
+	Entry ForwardingEntry `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstackWithCtxAddForwardingEntryRequest = _bindings.CreateLazyMarshaler(stackWithCtxAddForwardingEntryRequest{})
@@ -629,8 +618,8 @@
 }
 
 type stackWithCtxAddForwardingEntryResponse struct {
-	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StackAddForwardingEntryResult `fidl_offset_v1:"0"`
+	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StackAddForwardingEntryResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstackWithCtxAddForwardingEntryResponse = _bindings.CreateLazyMarshaler(stackWithCtxAddForwardingEntryResponse{})
@@ -640,8 +629,8 @@
 }
 
 type stackWithCtxDelForwardingEntryRequest struct {
-	_      struct{}          `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	Subnet fuchsianet.Subnet `fidl_offset_v1:"0"`
+	_      struct{}          `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Subnet fuchsianet.Subnet `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstackWithCtxDelForwardingEntryRequest = _bindings.CreateLazyMarshaler(stackWithCtxDelForwardingEntryRequest{})
@@ -651,8 +640,8 @@
 }
 
 type stackWithCtxDelForwardingEntryResponse struct {
-	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StackDelForwardingEntryResult `fidl_offset_v1:"0"`
+	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StackDelForwardingEntryResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstackWithCtxDelForwardingEntryResponse = _bindings.CreateLazyMarshaler(stackWithCtxDelForwardingEntryResponse{})
@@ -662,8 +651,8 @@
 }
 
 type stackWithCtxEnablePacketFilterRequest struct {
-	_  struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Id uint64   `fidl_offset_v1:"0"`
+	_  struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Id uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstackWithCtxEnablePacketFilterRequest = _bindings.CreateLazyMarshaler(stackWithCtxEnablePacketFilterRequest{})
@@ -673,8 +662,8 @@
 }
 
 type stackWithCtxEnablePacketFilterResponse struct {
-	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StackEnablePacketFilterResult `fidl_offset_v1:"0"`
+	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StackEnablePacketFilterResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstackWithCtxEnablePacketFilterResponse = _bindings.CreateLazyMarshaler(stackWithCtxEnablePacketFilterResponse{})
@@ -684,8 +673,8 @@
 }
 
 type stackWithCtxDisablePacketFilterRequest struct {
-	_  struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Id uint64   `fidl_offset_v1:"0"`
+	_  struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Id uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstackWithCtxDisablePacketFilterRequest = _bindings.CreateLazyMarshaler(stackWithCtxDisablePacketFilterRequest{})
@@ -695,8 +684,8 @@
 }
 
 type stackWithCtxDisablePacketFilterResponse struct {
-	_      struct{}                       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StackDisablePacketFilterResult `fidl_offset_v1:"0"`
+	_      struct{}                       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StackDisablePacketFilterResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstackWithCtxDisablePacketFilterResponse = _bindings.CreateLazyMarshaler(stackWithCtxDisablePacketFilterResponse{})
@@ -706,9 +695,9 @@
 }
 
 type stackWithCtxGetInterfaceIpForwardingRequest struct {
-	_         struct{}             `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Id        uint64               `fidl_offset_v1:"0"`
-	IpVersion fuchsianet.IpVersion `fidl_offset_v1:"8"`
+	_         struct{}             `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Id        uint64               `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	IpVersion fuchsianet.IpVersion `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mstackWithCtxGetInterfaceIpForwardingRequest = _bindings.CreateLazyMarshaler(stackWithCtxGetInterfaceIpForwardingRequest{})
@@ -718,8 +707,8 @@
 }
 
 type stackWithCtxGetInterfaceIpForwardingResponse struct {
-	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StackGetInterfaceIpForwardingResult `fidl_offset_v1:"0"`
+	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StackGetInterfaceIpForwardingResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstackWithCtxGetInterfaceIpForwardingResponse = _bindings.CreateLazyMarshaler(stackWithCtxGetInterfaceIpForwardingResponse{})
@@ -729,10 +718,10 @@
 }
 
 type stackWithCtxSetInterfaceIpForwardingRequest struct {
-	_         struct{}             `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Id        uint64               `fidl_offset_v1:"0"`
-	IpVersion fuchsianet.IpVersion `fidl_offset_v1:"8"`
-	Enabled   bool                 `fidl_offset_v1:"12"`
+	_         struct{}             `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Id        uint64               `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	IpVersion fuchsianet.IpVersion `fidl_offset_v1:"8" fidl_offset_v2:"8"`
+	Enabled   bool                 `fidl_offset_v1:"12" fidl_offset_v2:"12"`
 }
 
 var _mstackWithCtxSetInterfaceIpForwardingRequest = _bindings.CreateLazyMarshaler(stackWithCtxSetInterfaceIpForwardingRequest{})
@@ -742,8 +731,8 @@
 }
 
 type stackWithCtxSetInterfaceIpForwardingResponse struct {
-	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StackSetInterfaceIpForwardingResult `fidl_offset_v1:"0"`
+	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StackSetInterfaceIpForwardingResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstackWithCtxSetInterfaceIpForwardingResponse = _bindings.CreateLazyMarshaler(stackWithCtxSetInterfaceIpForwardingResponse{})
@@ -753,8 +742,8 @@
 }
 
 type stackWithCtxGetDnsServerWatcherRequest struct {
-	_       struct{}                                               `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Watcher fuchsianetname.DnsServerWatcherWithCtxInterfaceRequest `fidl_offset_v1:"0" fidl_handle_subtype:"4" fidl_bounds:"0"`
+	_       struct{}                                               `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Watcher fuchsianetname.DnsServerWatcherWithCtxInterfaceRequest `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"4" fidl_bounds:"0"`
 }
 
 var _mstackWithCtxGetDnsServerWatcherRequest = _bindings.CreateLazyMarshaler(stackWithCtxGetDnsServerWatcherRequest{})
@@ -763,31 +752,9 @@
 	return _mstackWithCtxGetDnsServerWatcherRequest
 }
 
-type logWithCtxSetLogLevelRequest struct {
-	_     struct{}                     `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Level fuchsialogger.LogLevelFilter `fidl_offset_v1:"0"`
-}
-
-var _mlogWithCtxSetLogLevelRequest = _bindings.CreateLazyMarshaler(logWithCtxSetLogLevelRequest{})
-
-func (msg *logWithCtxSetLogLevelRequest) Marshaler() _bindings.Marshaler {
-	return _mlogWithCtxSetLogLevelRequest
-}
-
-type logWithCtxSetLogLevelResponse struct {
-	_      struct{}             `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result LogSetLogLevelResult `fidl_offset_v1:"0"`
-}
-
-var _mlogWithCtxSetLogLevelResponse = _bindings.CreateLazyMarshaler(logWithCtxSetLogLevelResponse{})
-
-func (msg *logWithCtxSetLogLevelResponse) Marshaler() _bindings.Marshaler {
-	return _mlogWithCtxSetLogLevelResponse
-}
-
 type logWithCtxSetLogPacketsRequest struct {
-	_       struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Enabled bool     `fidl_offset_v1:"0"`
+	_       struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Enabled bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mlogWithCtxSetLogPacketsRequest = _bindings.CreateLazyMarshaler(logWithCtxSetLogPacketsRequest{})
@@ -804,7 +771,7 @@
 )
 
 type StackAddEthernetInterfaceResult struct {
-	I_stackAddEthernetInterfaceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_stackAddEthernetInterfaceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                             StackAddEthernetInterfaceResponse `fidl_ordinal:"1"`
 	Err                                  Error                             `fidl_ordinal:"2"`
 }
@@ -860,7 +827,7 @@
 )
 
 type StackAddInterfaceResult struct {
-	I_stackAddInterfaceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_stackAddInterfaceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                     StackAddInterfaceResponse `fidl_ordinal:"1"`
 	Err                          Error                     `fidl_ordinal:"2"`
 }
@@ -916,7 +883,7 @@
 )
 
 type StackDelEthernetInterfaceResult struct {
-	I_stackDelEthernetInterfaceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_stackDelEthernetInterfaceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                             StackDelEthernetInterfaceResponse `fidl_ordinal:"1"`
 	Err                                  Error                             `fidl_ordinal:"2"`
 }
@@ -972,7 +939,7 @@
 )
 
 type StackGetInterfaceInfoResult struct {
-	I_stackGetInterfaceInfoResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_stackGetInterfaceInfoResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                         StackGetInterfaceInfoResponse `fidl_ordinal:"1"`
 	Err                              Error                         `fidl_ordinal:"2"`
 }
@@ -1028,7 +995,7 @@
 )
 
 type StackEnableInterfaceResult struct {
-	I_stackEnableInterfaceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_stackEnableInterfaceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                        StackEnableInterfaceResponse `fidl_ordinal:"1"`
 	Err                             Error                        `fidl_ordinal:"2"`
 }
@@ -1084,7 +1051,7 @@
 )
 
 type StackDisableInterfaceResult struct {
-	I_stackDisableInterfaceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_stackDisableInterfaceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                         StackDisableInterfaceResponse `fidl_ordinal:"1"`
 	Err                              Error                         `fidl_ordinal:"2"`
 }
@@ -1140,7 +1107,7 @@
 )
 
 type StackAddInterfaceAddressResult struct {
-	I_stackAddInterfaceAddressResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_stackAddInterfaceAddressResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                            StackAddInterfaceAddressResponse `fidl_ordinal:"1"`
 	Err                                 Error                            `fidl_ordinal:"2"`
 }
@@ -1196,7 +1163,7 @@
 )
 
 type StackDelInterfaceAddressResult struct {
-	I_stackDelInterfaceAddressResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_stackDelInterfaceAddressResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                            StackDelInterfaceAddressResponse `fidl_ordinal:"1"`
 	Err                                 Error                            `fidl_ordinal:"2"`
 }
@@ -1252,7 +1219,7 @@
 )
 
 type StackAddForwardingEntryResult struct {
-	I_stackAddForwardingEntryResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_stackAddForwardingEntryResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                           StackAddForwardingEntryResponse `fidl_ordinal:"1"`
 	Err                                Error                           `fidl_ordinal:"2"`
 }
@@ -1308,7 +1275,7 @@
 )
 
 type StackDelForwardingEntryResult struct {
-	I_stackDelForwardingEntryResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_stackDelForwardingEntryResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                           StackDelForwardingEntryResponse `fidl_ordinal:"1"`
 	Err                                Error                           `fidl_ordinal:"2"`
 }
@@ -1364,7 +1331,7 @@
 )
 
 type StackEnablePacketFilterResult struct {
-	I_stackEnablePacketFilterResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_stackEnablePacketFilterResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                           StackEnablePacketFilterResponse `fidl_ordinal:"1"`
 	Err                                Error                           `fidl_ordinal:"2"`
 }
@@ -1420,7 +1387,7 @@
 )
 
 type StackDisablePacketFilterResult struct {
-	I_stackDisablePacketFilterResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_stackDisablePacketFilterResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                            StackDisablePacketFilterResponse `fidl_ordinal:"1"`
 	Err                                 Error                            `fidl_ordinal:"2"`
 }
@@ -1476,7 +1443,7 @@
 )
 
 type StackGetInterfaceIpForwardingResult struct {
-	I_stackGetInterfaceIpForwardingResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_stackGetInterfaceIpForwardingResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                 StackGetInterfaceIpForwardingResponse `fidl_ordinal:"1"`
 	Err                                      Error                                 `fidl_ordinal:"2"`
 }
@@ -1532,7 +1499,7 @@
 )
 
 type StackSetInterfaceIpForwardingResult struct {
-	I_stackSetInterfaceIpForwardingResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_stackSetInterfaceIpForwardingResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                 StackSetInterfaceIpForwardingResponse `fidl_ordinal:"1"`
 	Err                                      Error                                 `fidl_ordinal:"2"`
 }
@@ -1580,62 +1547,6 @@
 	return _u
 }
 
-type I_logSetLogLevelResultTag uint64
-
-const (
-	LogSetLogLevelResultResponse = 1 // 0x00000001
-	LogSetLogLevelResultErr      = 2 // 0x00000002
-)
-
-type LogSetLogLevelResult struct {
-	I_logSetLogLevelResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
-	Response                  LogSetLogLevelResponse `fidl_ordinal:"1"`
-	Err                       Error                  `fidl_ordinal:"2"`
-}
-
-func (_m *LogSetLogLevelResult) reset() {
-	switch _m.I_logSetLogLevelResultTag {
-	case 1:
-		var _zeroed LogSetLogLevelResponse
-		_m.Response = _zeroed
-	case 2:
-		var _zeroed Error
-		_m.Err = _zeroed
-	}
-}
-
-func (_m *LogSetLogLevelResult) Which() I_logSetLogLevelResultTag {
-	return _m.I_logSetLogLevelResultTag
-}
-
-func (_m *LogSetLogLevelResult) Ordinal() uint64 {
-	return uint64(_m.I_logSetLogLevelResultTag)
-}
-
-func (_m *LogSetLogLevelResult) SetResponse(response LogSetLogLevelResponse) {
-	_m.reset()
-	_m.I_logSetLogLevelResultTag = LogSetLogLevelResultResponse
-	_m.Response = response
-}
-
-func LogSetLogLevelResultWithResponse(response LogSetLogLevelResponse) LogSetLogLevelResult {
-	var _u LogSetLogLevelResult
-	_u.SetResponse(response)
-	return _u
-}
-
-func (_m *LogSetLogLevelResult) SetErr(err Error) {
-	_m.reset()
-	_m.I_logSetLogLevelResultTag = LogSetLogLevelResultErr
-	_m.Err = err
-}
-
-func LogSetLogLevelResultWithErr(err Error) LogSetLogLevelResult {
-	var _u LogSetLogLevelResult
-	_u.SetErr(err)
-	return _u
-}
-
 type I_forwardingDestinationTag uint64
 
 const (
@@ -1646,7 +1557,7 @@
 // A ForwardingDestination represents either the device that should transmit a packet or the address
 // of the next hop in the route.
 type ForwardingDestination struct {
-	I_forwardingDestinationTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_forwardingDestinationTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	// The opaque identifier of the device to which packets should be forwarded.
 	DeviceId uint64 `fidl_ordinal:"1"`
 	// The IP address of the next hop, used to look up the next forwarding entry.
@@ -1705,7 +1616,7 @@
 
 // Devices that can be used to back a `Stack` interface.
 type DeviceDefinition struct {
-	I_deviceDefinitionTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"true"`
+	I_deviceDefinitionTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"true"`
 	// A `fuchsia.hardware.network.Device` that exchanges only IP frames. It either doesn't have a
 	// layer 2 or its layer 2 is irrelevant to the `Stack`.
 	Ip fuchsiahardwarenetwork.DeviceWithCtxInterface `fidl_handle_subtype:"4" fidl_ordinal:"1"`
@@ -1758,7 +1669,7 @@
 
 // Base configuration for `Stack` interfaces.
 type InterfaceConfig struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	// Human-readable name of the interface. eg. eth001, wlanx35.
 	// Will be set to a default generic name if not provided.
@@ -2365,22 +2276,11 @@
 type StackEventProxy _bindings.ChannelProxy
 
 const (
-	LogSetLogLevelOrdinal   uint64 = 0x5fea0a401ca44550
 	LogSetLogPacketsOrdinal uint64 = 0x2176044cba5f378e
 )
 
 type LogWithCtxInterface _bindings.ChannelProxy
 
-// Dynamically set a syslog level.
-func (p *LogWithCtxInterface) SetLogLevel(ctx_ _bindings.Context, level fuchsialogger.LogLevelFilter) (LogSetLogLevelResult, error) {
-	req_ := &logWithCtxSetLogLevelRequest{
-		Level: level,
-	}
-	resp_ := &logWithCtxSetLogLevelResponse{}
-	err_ := ((*_bindings.ChannelProxy)(p)).Call(LogSetLogLevelOrdinal, req_, resp_)
-	return resp_.Result, err_
-}
-
 // Dynamically set packet logging.
 func (p *LogWithCtxInterface) SetLogPackets(ctx_ _bindings.Context, enabled bool) error {
 	req_ := &logWithCtxSetLogPacketsRequest{
@@ -2392,8 +2292,6 @@
 }
 
 type LogWithCtx interface {
-	// Dynamically set a syslog level.
-	SetLogLevel(ctx_ _bindings.Context, level fuchsialogger.LogLevelFilter) (LogSetLogLevelResult, error)
 	// Dynamically set packet logging.
 	SetLogPackets(ctx_ _bindings.Context, enabled bool) error
 }
@@ -2423,19 +2321,6 @@
 
 func (s_ *LogWithCtxStub) Dispatch(args_ _bindings.DispatchArgs) (_bindings.Message, bool, error) {
 	switch args_.Ordinal {
-	case LogSetLogLevelOrdinal:
-		in_ := logWithCtxSetLogLevelRequest{}
-		marshalerCtx, ok := _bindings.GetMarshalerContext(args_.Ctx)
-		if !ok {
-			return nil, false, _bindings.ErrMissingMarshalerContext
-		}
-		if _, _, err_ := _bindings.UnmarshalWithContext2(marshalerCtx, args_.Bytes, args_.HandleInfos, &in_); err_ != nil {
-			return nil, false, err_
-		}
-		result, err_ := s_.Impl.SetLogLevel(args_.Ctx, in_.Level)
-		out_ := logWithCtxSetLogLevelResponse{}
-		out_.Result = result
-		return &out_, true, err_
 	case LogSetLogPacketsOrdinal:
 		in_ := logWithCtxSetLogPacketsRequest{}
 		marshalerCtx, ok := _bindings.GetMarshalerContext(args_.Ctx)
diff --git a/src/syscall/zx/posix/socket/impl.go b/src/syscall/zx/posix/socket/impl.go
index 194faeb..5cc7c57 100644
--- a/src/syscall/zx/posix/socket/impl.go
+++ b/src/syscall/zx/posix/socket/impl.go
@@ -608,7 +608,7 @@
 }
 
 type BaseSocketBindResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketBindResponse = _bindings.CreateLazyMarshaler(BaseSocketBindResponse{})
@@ -618,7 +618,7 @@
 }
 
 type BaseSocketConnectResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketConnectResponse = _bindings.CreateLazyMarshaler(BaseSocketConnectResponse{})
@@ -628,7 +628,7 @@
 }
 
 type BaseSocketDisconnectResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketDisconnectResponse = _bindings.CreateLazyMarshaler(BaseSocketDisconnectResponse{})
@@ -638,8 +638,8 @@
 }
 
 type BaseSocketGetSockNameResponse struct {
-	_    struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Addr fuchsianet.SocketAddress `fidl_offset_v1:"0"`
+	_    struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Addr fuchsianet.SocketAddress `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetSockNameResponse = _bindings.CreateLazyMarshaler(BaseSocketGetSockNameResponse{})
@@ -649,8 +649,8 @@
 }
 
 type BaseSocketGetPeerNameResponse struct {
-	_    struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Addr fuchsianet.SocketAddress `fidl_offset_v1:"0"`
+	_    struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Addr fuchsianet.SocketAddress `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetPeerNameResponse = _bindings.CreateLazyMarshaler(BaseSocketGetPeerNameResponse{})
@@ -660,7 +660,7 @@
 }
 
 type BaseSocketShutdown2Response struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketShutdown2Response = _bindings.CreateLazyMarshaler(BaseSocketShutdown2Response{})
@@ -670,7 +670,7 @@
 }
 
 type BaseSocketSetReuseAddressResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetReuseAddressResponse = _bindings.CreateLazyMarshaler(BaseSocketSetReuseAddressResponse{})
@@ -680,8 +680,8 @@
 }
 
 type BaseSocketGetReuseAddressResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetReuseAddressResponse = _bindings.CreateLazyMarshaler(BaseSocketGetReuseAddressResponse{})
@@ -691,7 +691,7 @@
 }
 
 type BaseSocketGetErrorResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketGetErrorResponse = _bindings.CreateLazyMarshaler(BaseSocketGetErrorResponse{})
@@ -701,7 +701,7 @@
 }
 
 type BaseSocketSetBroadcastResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetBroadcastResponse = _bindings.CreateLazyMarshaler(BaseSocketSetBroadcastResponse{})
@@ -711,8 +711,8 @@
 }
 
 type BaseSocketGetBroadcastResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetBroadcastResponse = _bindings.CreateLazyMarshaler(BaseSocketGetBroadcastResponse{})
@@ -722,7 +722,7 @@
 }
 
 type BaseSocketSetSendBufferResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetSendBufferResponse = _bindings.CreateLazyMarshaler(BaseSocketSetSendBufferResponse{})
@@ -732,8 +732,8 @@
 }
 
 type BaseSocketGetSendBufferResponse struct {
-	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	ValueBytes uint64   `fidl_offset_v1:"0"`
+	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	ValueBytes uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetSendBufferResponse = _bindings.CreateLazyMarshaler(BaseSocketGetSendBufferResponse{})
@@ -743,7 +743,7 @@
 }
 
 type BaseSocketSetReceiveBufferResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetReceiveBufferResponse = _bindings.CreateLazyMarshaler(BaseSocketSetReceiveBufferResponse{})
@@ -753,8 +753,8 @@
 }
 
 type BaseSocketGetReceiveBufferResponse struct {
-	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	ValueBytes uint64   `fidl_offset_v1:"0"`
+	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	ValueBytes uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetReceiveBufferResponse = _bindings.CreateLazyMarshaler(BaseSocketGetReceiveBufferResponse{})
@@ -764,7 +764,7 @@
 }
 
 type BaseSocketSetKeepAliveResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetKeepAliveResponse = _bindings.CreateLazyMarshaler(BaseSocketSetKeepAliveResponse{})
@@ -774,8 +774,8 @@
 }
 
 type BaseSocketGetKeepAliveResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetKeepAliveResponse = _bindings.CreateLazyMarshaler(BaseSocketGetKeepAliveResponse{})
@@ -785,7 +785,7 @@
 }
 
 type BaseSocketSetOutOfBandInlineResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetOutOfBandInlineResponse = _bindings.CreateLazyMarshaler(BaseSocketSetOutOfBandInlineResponse{})
@@ -795,8 +795,8 @@
 }
 
 type BaseSocketGetOutOfBandInlineResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetOutOfBandInlineResponse = _bindings.CreateLazyMarshaler(BaseSocketGetOutOfBandInlineResponse{})
@@ -806,7 +806,7 @@
 }
 
 type BaseSocketSetNoCheckResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetNoCheckResponse = _bindings.CreateLazyMarshaler(BaseSocketSetNoCheckResponse{})
@@ -816,8 +816,8 @@
 }
 
 type BaseSocketGetNoCheckResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetNoCheckResponse = _bindings.CreateLazyMarshaler(BaseSocketGetNoCheckResponse{})
@@ -827,7 +827,7 @@
 }
 
 type BaseSocketSetLingerResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetLingerResponse = _bindings.CreateLazyMarshaler(BaseSocketSetLingerResponse{})
@@ -837,9 +837,9 @@
 }
 
 type BaseSocketGetLingerResponse struct {
-	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"4"`
-	Linger     bool     `fidl_offset_v1:"0"`
-	LengthSecs uint32   `fidl_offset_v1:"4"`
+	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"4" fidl_size_v2:"8" fidl_alignment_v2:"4"`
+	Linger     bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	LengthSecs uint32   `fidl_offset_v1:"4" fidl_offset_v2:"4"`
 }
 
 var _mBaseSocketGetLingerResponse = _bindings.CreateLazyMarshaler(BaseSocketGetLingerResponse{})
@@ -849,7 +849,7 @@
 }
 
 type BaseSocketSetReusePortResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetReusePortResponse = _bindings.CreateLazyMarshaler(BaseSocketSetReusePortResponse{})
@@ -859,8 +859,8 @@
 }
 
 type BaseSocketGetReusePortResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetReusePortResponse = _bindings.CreateLazyMarshaler(BaseSocketGetReusePortResponse{})
@@ -870,8 +870,8 @@
 }
 
 type BaseSocketGetAcceptConnResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetAcceptConnResponse = _bindings.CreateLazyMarshaler(BaseSocketGetAcceptConnResponse{})
@@ -881,7 +881,7 @@
 }
 
 type BaseSocketSetBindToDeviceResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetBindToDeviceResponse = _bindings.CreateLazyMarshaler(BaseSocketSetBindToDeviceResponse{})
@@ -891,8 +891,8 @@
 }
 
 type BaseSocketGetBindToDeviceResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Value string   `fidl_offset_v1:"0" fidl_bounds:"15"`
+	_     struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Value string   `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"15"`
 }
 
 var _mBaseSocketGetBindToDeviceResponse = _bindings.CreateLazyMarshaler(BaseSocketGetBindToDeviceResponse{})
@@ -902,7 +902,7 @@
 }
 
 type BaseSocketSetTimestampResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetTimestampResponse = _bindings.CreateLazyMarshaler(BaseSocketSetTimestampResponse{})
@@ -912,8 +912,8 @@
 }
 
 type BaseSocketGetTimestampResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetTimestampResponse = _bindings.CreateLazyMarshaler(BaseSocketGetTimestampResponse{})
@@ -923,7 +923,7 @@
 }
 
 type BaseSocketSetIpTypeOfServiceResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetIpTypeOfServiceResponse = _bindings.CreateLazyMarshaler(BaseSocketSetIpTypeOfServiceResponse{})
@@ -933,8 +933,8 @@
 }
 
 type BaseSocketGetIpTypeOfServiceResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Value uint8    `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Value uint8    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetIpTypeOfServiceResponse = _bindings.CreateLazyMarshaler(BaseSocketGetIpTypeOfServiceResponse{})
@@ -944,7 +944,7 @@
 }
 
 type BaseSocketSetIpTtlResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetIpTtlResponse = _bindings.CreateLazyMarshaler(BaseSocketSetIpTtlResponse{})
@@ -954,8 +954,8 @@
 }
 
 type BaseSocketGetIpTtlResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Value uint8    `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Value uint8    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetIpTtlResponse = _bindings.CreateLazyMarshaler(BaseSocketGetIpTtlResponse{})
@@ -965,7 +965,7 @@
 }
 
 type BaseSocketSetIpPacketInfoResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetIpPacketInfoResponse = _bindings.CreateLazyMarshaler(BaseSocketSetIpPacketInfoResponse{})
@@ -975,8 +975,8 @@
 }
 
 type BaseSocketGetIpPacketInfoResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetIpPacketInfoResponse = _bindings.CreateLazyMarshaler(BaseSocketGetIpPacketInfoResponse{})
@@ -986,7 +986,7 @@
 }
 
 type BaseSocketSetIpReceiveTypeOfServiceResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetIpReceiveTypeOfServiceResponse = _bindings.CreateLazyMarshaler(BaseSocketSetIpReceiveTypeOfServiceResponse{})
@@ -996,8 +996,8 @@
 }
 
 type BaseSocketGetIpReceiveTypeOfServiceResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetIpReceiveTypeOfServiceResponse = _bindings.CreateLazyMarshaler(BaseSocketGetIpReceiveTypeOfServiceResponse{})
@@ -1007,7 +1007,7 @@
 }
 
 type BaseSocketSetIpMulticastInterfaceResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetIpMulticastInterfaceResponse = _bindings.CreateLazyMarshaler(BaseSocketSetIpMulticastInterfaceResponse{})
@@ -1017,8 +1017,8 @@
 }
 
 type BaseSocketGetIpMulticastInterfaceResponse struct {
-	_     struct{}               `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"1"`
-	Value fuchsianet.Ipv4Address `fidl_offset_v1:"0"`
+	_     struct{}               `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"1" fidl_size_v2:"4" fidl_alignment_v2:"1"`
+	Value fuchsianet.Ipv4Address `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetIpMulticastInterfaceResponse = _bindings.CreateLazyMarshaler(BaseSocketGetIpMulticastInterfaceResponse{})
@@ -1028,7 +1028,7 @@
 }
 
 type BaseSocketSetIpMulticastTtlResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetIpMulticastTtlResponse = _bindings.CreateLazyMarshaler(BaseSocketSetIpMulticastTtlResponse{})
@@ -1038,8 +1038,8 @@
 }
 
 type BaseSocketGetIpMulticastTtlResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Value uint8    `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Value uint8    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetIpMulticastTtlResponse = _bindings.CreateLazyMarshaler(BaseSocketGetIpMulticastTtlResponse{})
@@ -1049,7 +1049,7 @@
 }
 
 type BaseSocketSetIpMulticastLoopbackResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetIpMulticastLoopbackResponse = _bindings.CreateLazyMarshaler(BaseSocketSetIpMulticastLoopbackResponse{})
@@ -1059,8 +1059,8 @@
 }
 
 type BaseSocketGetIpMulticastLoopbackResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetIpMulticastLoopbackResponse = _bindings.CreateLazyMarshaler(BaseSocketGetIpMulticastLoopbackResponse{})
@@ -1070,7 +1070,7 @@
 }
 
 type BaseSocketAddIpMembershipResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketAddIpMembershipResponse = _bindings.CreateLazyMarshaler(BaseSocketAddIpMembershipResponse{})
@@ -1080,7 +1080,7 @@
 }
 
 type BaseSocketDropIpMembershipResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketDropIpMembershipResponse = _bindings.CreateLazyMarshaler(BaseSocketDropIpMembershipResponse{})
@@ -1090,7 +1090,7 @@
 }
 
 type BaseSocketAddIpv6MembershipResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketAddIpv6MembershipResponse = _bindings.CreateLazyMarshaler(BaseSocketAddIpv6MembershipResponse{})
@@ -1100,7 +1100,7 @@
 }
 
 type BaseSocketDropIpv6MembershipResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketDropIpv6MembershipResponse = _bindings.CreateLazyMarshaler(BaseSocketDropIpv6MembershipResponse{})
@@ -1110,7 +1110,7 @@
 }
 
 type BaseSocketSetIpv6MulticastInterfaceResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetIpv6MulticastInterfaceResponse = _bindings.CreateLazyMarshaler(BaseSocketSetIpv6MulticastInterfaceResponse{})
@@ -1120,8 +1120,8 @@
 }
 
 type BaseSocketGetIpv6MulticastInterfaceResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value uint64   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetIpv6MulticastInterfaceResponse = _bindings.CreateLazyMarshaler(BaseSocketGetIpv6MulticastInterfaceResponse{})
@@ -1131,7 +1131,7 @@
 }
 
 type BaseSocketSetIpv6MulticastHopsResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetIpv6MulticastHopsResponse = _bindings.CreateLazyMarshaler(BaseSocketSetIpv6MulticastHopsResponse{})
@@ -1141,8 +1141,8 @@
 }
 
 type BaseSocketGetIpv6MulticastHopsResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Value uint8    `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Value uint8    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetIpv6MulticastHopsResponse = _bindings.CreateLazyMarshaler(BaseSocketGetIpv6MulticastHopsResponse{})
@@ -1152,7 +1152,7 @@
 }
 
 type BaseSocketSetIpv6MulticastLoopbackResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetIpv6MulticastLoopbackResponse = _bindings.CreateLazyMarshaler(BaseSocketSetIpv6MulticastLoopbackResponse{})
@@ -1162,8 +1162,8 @@
 }
 
 type BaseSocketGetIpv6MulticastLoopbackResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetIpv6MulticastLoopbackResponse = _bindings.CreateLazyMarshaler(BaseSocketGetIpv6MulticastLoopbackResponse{})
@@ -1173,7 +1173,7 @@
 }
 
 type BaseSocketSetIpv6OnlyResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetIpv6OnlyResponse = _bindings.CreateLazyMarshaler(BaseSocketSetIpv6OnlyResponse{})
@@ -1183,8 +1183,8 @@
 }
 
 type BaseSocketGetIpv6OnlyResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetIpv6OnlyResponse = _bindings.CreateLazyMarshaler(BaseSocketGetIpv6OnlyResponse{})
@@ -1194,7 +1194,7 @@
 }
 
 type BaseSocketSetIpv6ReceiveTrafficClassResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetIpv6ReceiveTrafficClassResponse = _bindings.CreateLazyMarshaler(BaseSocketSetIpv6ReceiveTrafficClassResponse{})
@@ -1204,8 +1204,8 @@
 }
 
 type BaseSocketGetIpv6ReceiveTrafficClassResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetIpv6ReceiveTrafficClassResponse = _bindings.CreateLazyMarshaler(BaseSocketGetIpv6ReceiveTrafficClassResponse{})
@@ -1215,7 +1215,7 @@
 }
 
 type BaseSocketSetIpv6TrafficClassResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mBaseSocketSetIpv6TrafficClassResponse = _bindings.CreateLazyMarshaler(BaseSocketSetIpv6TrafficClassResponse{})
@@ -1225,8 +1225,8 @@
 }
 
 type BaseSocketGetIpv6TrafficClassResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Value uint8    `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Value uint8    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mBaseSocketGetIpv6TrafficClassResponse = _bindings.CreateLazyMarshaler(BaseSocketGetIpv6TrafficClassResponse{})
@@ -1236,7 +1236,7 @@
 }
 
 type DatagramSocketShutdownResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mDatagramSocketShutdownResponse = _bindings.CreateLazyMarshaler(DatagramSocketShutdownResponse{})
@@ -1246,11 +1246,11 @@
 }
 
 type DatagramSocketRecvMsgResponse struct {
-	_         struct{}                  `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	Addr      *fuchsianet.SocketAddress `fidl_offset_v1:"0"`
-	Data      []uint8                   `fidl_offset_v1:"24" fidl_bounds:""`
-	Control   RecvControlData           `fidl_offset_v1:"40"`
-	Truncated uint32                    `fidl_offset_v1:"56"`
+	_         struct{}                  `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"56" fidl_alignment_v2:"8"`
+	Addr      *fuchsianet.SocketAddress `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Data      []uint8                   `fidl_offset_v1:"24" fidl_offset_v2:"16" fidl_bounds:""`
+	Control   RecvControlData           `fidl_offset_v1:"40" fidl_offset_v2:"32"`
+	Truncated uint32                    `fidl_offset_v1:"56" fidl_offset_v2:"48"`
 }
 
 var _mDatagramSocketRecvMsgResponse = _bindings.CreateLazyMarshaler(DatagramSocketRecvMsgResponse{})
@@ -1260,8 +1260,8 @@
 }
 
 type DatagramSocketSendMsgResponse struct {
-	_   struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Len int64    `fidl_offset_v1:"0"`
+	_   struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Len int64    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mDatagramSocketSendMsgResponse = _bindings.CreateLazyMarshaler(DatagramSocketSendMsgResponse{})
@@ -1271,9 +1271,9 @@
 }
 
 type DatagramSocketGetInfoResponse struct {
-	_      struct{}               `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"4"`
-	Domain Domain                 `fidl_offset_v1:"0"`
-	Proto  DatagramSocketProtocol `fidl_offset_v1:"4"`
+	_      struct{}               `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"4" fidl_size_v2:"8" fidl_alignment_v2:"4"`
+	Domain Domain                 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Proto  DatagramSocketProtocol `fidl_offset_v1:"4" fidl_offset_v2:"4"`
 }
 
 var _mDatagramSocketGetInfoResponse = _bindings.CreateLazyMarshaler(DatagramSocketGetInfoResponse{})
@@ -1283,7 +1283,7 @@
 }
 
 type StreamSocketListenResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStreamSocketListenResponse = _bindings.CreateLazyMarshaler(StreamSocketListenResponse{})
@@ -1293,9 +1293,9 @@
 }
 
 type StreamSocketAcceptResponse struct {
-	_    struct{}                     `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	Addr *fuchsianet.SocketAddress    `fidl_offset_v1:"0"`
-	S    StreamSocketWithCtxInterface `fidl_offset_v1:"24" fidl_handle_subtype:"4"`
+	_    struct{}                     `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Addr *fuchsianet.SocketAddress    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	S    StreamSocketWithCtxInterface `fidl_offset_v1:"24" fidl_offset_v2:"16" fidl_handle_subtype:"4"`
 }
 
 var _mStreamSocketAcceptResponse = _bindings.CreateLazyMarshaler(StreamSocketAcceptResponse{})
@@ -1305,9 +1305,9 @@
 }
 
 type StreamSocketGetInfoResponse struct {
-	_      struct{}             `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"4"`
-	Domain Domain               `fidl_offset_v1:"0"`
-	Proto  StreamSocketProtocol `fidl_offset_v1:"4"`
+	_      struct{}             `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"4" fidl_size_v2:"8" fidl_alignment_v2:"4"`
+	Domain Domain               `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Proto  StreamSocketProtocol `fidl_offset_v1:"4" fidl_offset_v2:"4"`
 }
 
 var _mStreamSocketGetInfoResponse = _bindings.CreateLazyMarshaler(StreamSocketGetInfoResponse{})
@@ -1317,7 +1317,7 @@
 }
 
 type StreamSocketSetTcpNoDelayResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStreamSocketSetTcpNoDelayResponse = _bindings.CreateLazyMarshaler(StreamSocketSetTcpNoDelayResponse{})
@@ -1327,8 +1327,8 @@
 }
 
 type StreamSocketGetTcpNoDelayResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mStreamSocketGetTcpNoDelayResponse = _bindings.CreateLazyMarshaler(StreamSocketGetTcpNoDelayResponse{})
@@ -1338,7 +1338,7 @@
 }
 
 type StreamSocketSetTcpMaxSegmentResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStreamSocketSetTcpMaxSegmentResponse = _bindings.CreateLazyMarshaler(StreamSocketSetTcpMaxSegmentResponse{})
@@ -1348,8 +1348,8 @@
 }
 
 type StreamSocketGetTcpMaxSegmentResponse struct {
-	_          struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4"`
-	ValueBytes uint32   `fidl_offset_v1:"0"`
+	_          struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4" fidl_size_v2:"4" fidl_alignment_v2:"4"`
+	ValueBytes uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mStreamSocketGetTcpMaxSegmentResponse = _bindings.CreateLazyMarshaler(StreamSocketGetTcpMaxSegmentResponse{})
@@ -1359,7 +1359,7 @@
 }
 
 type StreamSocketSetTcpCorkResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStreamSocketSetTcpCorkResponse = _bindings.CreateLazyMarshaler(StreamSocketSetTcpCorkResponse{})
@@ -1369,8 +1369,8 @@
 }
 
 type StreamSocketGetTcpCorkResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mStreamSocketGetTcpCorkResponse = _bindings.CreateLazyMarshaler(StreamSocketGetTcpCorkResponse{})
@@ -1380,7 +1380,7 @@
 }
 
 type StreamSocketSetTcpKeepAliveIdleResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStreamSocketSetTcpKeepAliveIdleResponse = _bindings.CreateLazyMarshaler(StreamSocketSetTcpKeepAliveIdleResponse{})
@@ -1390,8 +1390,8 @@
 }
 
 type StreamSocketGetTcpKeepAliveIdleResponse struct {
-	_         struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4"`
-	ValueSecs uint32   `fidl_offset_v1:"0"`
+	_         struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4" fidl_size_v2:"4" fidl_alignment_v2:"4"`
+	ValueSecs uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mStreamSocketGetTcpKeepAliveIdleResponse = _bindings.CreateLazyMarshaler(StreamSocketGetTcpKeepAliveIdleResponse{})
@@ -1401,7 +1401,7 @@
 }
 
 type StreamSocketSetTcpKeepAliveIntervalResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStreamSocketSetTcpKeepAliveIntervalResponse = _bindings.CreateLazyMarshaler(StreamSocketSetTcpKeepAliveIntervalResponse{})
@@ -1411,8 +1411,8 @@
 }
 
 type StreamSocketGetTcpKeepAliveIntervalResponse struct {
-	_         struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4"`
-	ValueSecs uint32   `fidl_offset_v1:"0"`
+	_         struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4" fidl_size_v2:"4" fidl_alignment_v2:"4"`
+	ValueSecs uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mStreamSocketGetTcpKeepAliveIntervalResponse = _bindings.CreateLazyMarshaler(StreamSocketGetTcpKeepAliveIntervalResponse{})
@@ -1422,7 +1422,7 @@
 }
 
 type StreamSocketSetTcpKeepAliveCountResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStreamSocketSetTcpKeepAliveCountResponse = _bindings.CreateLazyMarshaler(StreamSocketSetTcpKeepAliveCountResponse{})
@@ -1432,8 +1432,8 @@
 }
 
 type StreamSocketGetTcpKeepAliveCountResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4"`
-	Value uint32   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4" fidl_size_v2:"4" fidl_alignment_v2:"4"`
+	Value uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mStreamSocketGetTcpKeepAliveCountResponse = _bindings.CreateLazyMarshaler(StreamSocketGetTcpKeepAliveCountResponse{})
@@ -1443,7 +1443,7 @@
 }
 
 type StreamSocketSetTcpSynCountResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStreamSocketSetTcpSynCountResponse = _bindings.CreateLazyMarshaler(StreamSocketSetTcpSynCountResponse{})
@@ -1453,8 +1453,8 @@
 }
 
 type StreamSocketGetTcpSynCountResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4"`
-	Value uint32   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4" fidl_size_v2:"4" fidl_alignment_v2:"4"`
+	Value uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mStreamSocketGetTcpSynCountResponse = _bindings.CreateLazyMarshaler(StreamSocketGetTcpSynCountResponse{})
@@ -1464,7 +1464,7 @@
 }
 
 type StreamSocketSetTcpLingerResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStreamSocketSetTcpLingerResponse = _bindings.CreateLazyMarshaler(StreamSocketSetTcpLingerResponse{})
@@ -1474,8 +1474,8 @@
 }
 
 type StreamSocketGetTcpLingerResponse struct {
-	_         struct{}       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	ValueSecs OptionalUint32 `fidl_offset_v1:"0"`
+	_         struct{}       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	ValueSecs OptionalUint32 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mStreamSocketGetTcpLingerResponse = _bindings.CreateLazyMarshaler(StreamSocketGetTcpLingerResponse{})
@@ -1485,7 +1485,7 @@
 }
 
 type StreamSocketSetTcpDeferAcceptResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStreamSocketSetTcpDeferAcceptResponse = _bindings.CreateLazyMarshaler(StreamSocketSetTcpDeferAcceptResponse{})
@@ -1495,8 +1495,8 @@
 }
 
 type StreamSocketGetTcpDeferAcceptResponse struct {
-	_         struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4"`
-	ValueSecs uint32   `fidl_offset_v1:"0"`
+	_         struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4" fidl_size_v2:"4" fidl_alignment_v2:"4"`
+	ValueSecs uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mStreamSocketGetTcpDeferAcceptResponse = _bindings.CreateLazyMarshaler(StreamSocketGetTcpDeferAcceptResponse{})
@@ -1506,7 +1506,7 @@
 }
 
 type StreamSocketSetTcpWindowClampResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStreamSocketSetTcpWindowClampResponse = _bindings.CreateLazyMarshaler(StreamSocketSetTcpWindowClampResponse{})
@@ -1516,8 +1516,8 @@
 }
 
 type StreamSocketGetTcpWindowClampResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4"`
-	Value uint32   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4" fidl_size_v2:"4" fidl_alignment_v2:"4"`
+	Value uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mStreamSocketGetTcpWindowClampResponse = _bindings.CreateLazyMarshaler(StreamSocketGetTcpWindowClampResponse{})
@@ -1527,8 +1527,8 @@
 }
 
 type StreamSocketGetTcpInfoResponse struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Info TcpInfo  `fidl_offset_v1:"0"`
+	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info TcpInfo  `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mStreamSocketGetTcpInfoResponse = _bindings.CreateLazyMarshaler(StreamSocketGetTcpInfoResponse{})
@@ -1538,7 +1538,7 @@
 }
 
 type StreamSocketSetTcpQuickAckResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStreamSocketSetTcpQuickAckResponse = _bindings.CreateLazyMarshaler(StreamSocketSetTcpQuickAckResponse{})
@@ -1548,8 +1548,8 @@
 }
 
 type StreamSocketGetTcpQuickAckResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mStreamSocketGetTcpQuickAckResponse = _bindings.CreateLazyMarshaler(StreamSocketGetTcpQuickAckResponse{})
@@ -1559,7 +1559,7 @@
 }
 
 type StreamSocketSetTcpCongestionResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStreamSocketSetTcpCongestionResponse = _bindings.CreateLazyMarshaler(StreamSocketSetTcpCongestionResponse{})
@@ -1569,8 +1569,8 @@
 }
 
 type StreamSocketGetTcpCongestionResponse struct {
-	_     struct{}             `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4"`
-	Value TcpCongestionControl `fidl_offset_v1:"0"`
+	_     struct{}             `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4" fidl_size_v2:"4" fidl_alignment_v2:"4"`
+	Value TcpCongestionControl `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mStreamSocketGetTcpCongestionResponse = _bindings.CreateLazyMarshaler(StreamSocketGetTcpCongestionResponse{})
@@ -1580,7 +1580,7 @@
 }
 
 type StreamSocketSetTcpUserTimeoutResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mStreamSocketSetTcpUserTimeoutResponse = _bindings.CreateLazyMarshaler(StreamSocketSetTcpUserTimeoutResponse{})
@@ -1590,8 +1590,8 @@
 }
 
 type StreamSocketGetTcpUserTimeoutResponse struct {
-	_           struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4"`
-	ValueMillis uint32   `fidl_offset_v1:"0"`
+	_           struct{} `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4" fidl_size_v2:"4" fidl_alignment_v2:"4"`
+	ValueMillis uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mStreamSocketGetTcpUserTimeoutResponse = _bindings.CreateLazyMarshaler(StreamSocketGetTcpUserTimeoutResponse{})
@@ -1601,8 +1601,8 @@
 }
 
 type ProviderStreamSocketResponse struct {
-	_ struct{}                     `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4"`
-	S StreamSocketWithCtxInterface `fidl_offset_v1:"0" fidl_handle_subtype:"4"`
+	_ struct{}                     `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4" fidl_size_v2:"4" fidl_alignment_v2:"4"`
+	S StreamSocketWithCtxInterface `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"4"`
 }
 
 var _mProviderStreamSocketResponse = _bindings.CreateLazyMarshaler(ProviderStreamSocketResponse{})
@@ -1612,8 +1612,8 @@
 }
 
 type ProviderDatagramSocketResponse struct {
-	_ struct{}                       `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4"`
-	S DatagramSocketWithCtxInterface `fidl_offset_v1:"0" fidl_handle_subtype:"4"`
+	_ struct{}                       `fidl:"s" fidl_size_v1:"4" fidl_alignment_v1:"4" fidl_size_v2:"4" fidl_alignment_v2:"4"`
+	S DatagramSocketWithCtxInterface `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_handle_subtype:"4"`
 }
 
 var _mProviderDatagramSocketResponse = _bindings.CreateLazyMarshaler(ProviderDatagramSocketResponse{})
@@ -1623,8 +1623,8 @@
 }
 
 type ProviderInterfaceIndexToNameResponse struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Name string   `fidl_offset_v1:"0" fidl_bounds:"15"`
+	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Name string   `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"15"`
 }
 
 var _mProviderInterfaceIndexToNameResponse = _bindings.CreateLazyMarshaler(ProviderInterfaceIndexToNameResponse{})
@@ -1634,8 +1634,8 @@
 }
 
 type ProviderInterfaceNameToIndexResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Index uint64   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Index uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mProviderInterfaceNameToIndexResponse = _bindings.CreateLazyMarshaler(ProviderInterfaceNameToIndexResponse{})
@@ -1645,8 +1645,8 @@
 }
 
 type ProviderInterfaceNameToFlagsResponse struct {
-	_     struct{}       `fidl:"s" fidl_size_v1:"2" fidl_alignment_v1:"2"`
-	Flags InterfaceFlags `fidl_offset_v1:"0"`
+	_     struct{}       `fidl:"s" fidl_size_v1:"2" fidl_alignment_v1:"2" fidl_size_v2:"2" fidl_alignment_v2:"2"`
+	Flags InterfaceFlags `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mProviderInterfaceNameToFlagsResponse = _bindings.CreateLazyMarshaler(ProviderInterfaceNameToFlagsResponse{})
@@ -1657,13 +1657,13 @@
 
 // IPv4 multicast membership options.
 type IpMulticastMembership struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
+	_ struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
 	// Interface index for membership.
-	Iface uint64 `fidl_offset_v1:"0"`
+	Iface uint64 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 	// Local interface address requesting or relinquishing ownership.
-	LocalAddr fuchsianet.Ipv4Address `fidl_offset_v1:"8"`
+	LocalAddr fuchsianet.Ipv4Address `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 	// Address of the multicast group the membership refers to.
-	McastAddr fuchsianet.Ipv4Address `fidl_offset_v1:"12"`
+	McastAddr fuchsianet.Ipv4Address `fidl_offset_v1:"12" fidl_offset_v2:"12"`
 }
 
 var _mIpMulticastMembership = _bindings.CreateLazyMarshaler(IpMulticastMembership{})
@@ -1674,11 +1674,11 @@
 
 // IPv6 multicast membership options.
 type Ipv6MulticastMembership struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
+	_ struct{} `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
 	// Interface index for membership.
-	Iface uint64 `fidl_offset_v1:"0"`
+	Iface uint64 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 	// Address of the multicast group the membership refers to.
-	McastAddr fuchsianet.Ipv6Address `fidl_offset_v1:"8"`
+	McastAddr fuchsianet.Ipv6Address `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mIpv6MulticastMembership = _bindings.CreateLazyMarshaler(Ipv6MulticastMembership{})
@@ -1688,7 +1688,7 @@
 }
 
 type Empty struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1"`
+	_ struct{} `fidl:"s" fidl_size_v1:"1" fidl_alignment_v1:"1" fidl_size_v2:"1" fidl_alignment_v2:"1"`
 }
 
 var _mEmpty = _bindings.CreateLazyMarshaler(Empty{})
@@ -1698,9 +1698,9 @@
 }
 
 type baseSocketWithCtxCloneRequest struct {
-	_      struct{}                              `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Flags  uint32                                `fidl_offset_v1:"0"`
-	Object fuchsiaio.NodeWithCtxInterfaceRequest `fidl_offset_v1:"4" fidl_handle_subtype:"4" fidl_bounds:"0"`
+	_      struct{}                              `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Flags  uint32                                `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Object fuchsiaio.NodeWithCtxInterfaceRequest `fidl_offset_v1:"4" fidl_offset_v2:"4" fidl_handle_subtype:"4" fidl_bounds:"0"`
 }
 
 var _mbaseSocketWithCtxCloneRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxCloneRequest{})
@@ -1710,8 +1710,8 @@
 }
 
 type baseSocketWithCtxCloseResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxCloseResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxCloseResponse{})
@@ -1721,8 +1721,8 @@
 }
 
 type baseSocketWithCtxDescribeResponse struct {
-	_    struct{}           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Info fuchsiaio.NodeInfo `fidl_offset_v1:"0"`
+	_    struct{}           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info fuchsiaio.NodeInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxDescribeResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxDescribeResponse{})
@@ -1732,9 +1732,9 @@
 }
 
 type baseSocketWithCtxOnOpenResponse struct {
-	_    struct{}            `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	S    int32               `fidl_offset_v1:"0"`
-	Info *fuchsiaio.NodeInfo `fidl_offset_v1:"8"`
+	_    struct{}            `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	S    int32               `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Info *fuchsiaio.NodeInfo `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mbaseSocketWithCtxOnOpenResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxOnOpenResponse{})
@@ -1744,8 +1744,8 @@
 }
 
 type baseSocketWithCtxSyncResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSyncResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSyncResponse{})
@@ -1755,9 +1755,9 @@
 }
 
 type baseSocketWithCtxGetAttrResponse struct {
-	_          struct{}                 `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	S          int32                    `fidl_offset_v1:"0"`
-	Attributes fuchsiaio.NodeAttributes `fidl_offset_v1:"8"`
+	_          struct{}                 `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"64" fidl_alignment_v2:"8"`
+	S          int32                    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Attributes fuchsiaio.NodeAttributes `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mbaseSocketWithCtxGetAttrResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetAttrResponse{})
@@ -1767,9 +1767,9 @@
 }
 
 type baseSocketWithCtxSetAttrRequest struct {
-	_          struct{}                 `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	Flags      uint32                   `fidl_offset_v1:"0"`
-	Attributes fuchsiaio.NodeAttributes `fidl_offset_v1:"8"`
+	_          struct{}                 `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"64" fidl_alignment_v2:"8"`
+	Flags      uint32                   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Attributes fuchsiaio.NodeAttributes `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mbaseSocketWithCtxSetAttrRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetAttrRequest{})
@@ -1779,8 +1779,8 @@
 }
 
 type baseSocketWithCtxSetAttrResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetAttrResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetAttrResponse{})
@@ -1790,9 +1790,9 @@
 }
 
 type baseSocketWithCtxNodeGetFlagsResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S     int32    `fidl_offset_v1:"0"`
-	Flags uint32   `fidl_offset_v1:"4"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S     int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Flags uint32   `fidl_offset_v1:"4" fidl_offset_v2:"4"`
 }
 
 var _mbaseSocketWithCtxNodeGetFlagsResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxNodeGetFlagsResponse{})
@@ -1802,8 +1802,8 @@
 }
 
 type baseSocketWithCtxNodeSetFlagsRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Flags uint32   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Flags uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxNodeSetFlagsRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxNodeSetFlagsRequest{})
@@ -1813,8 +1813,8 @@
 }
 
 type baseSocketWithCtxNodeSetFlagsResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxNodeSetFlagsResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxNodeSetFlagsResponse{})
@@ -1824,8 +1824,8 @@
 }
 
 type baseSocketWithCtxBindRequest struct {
-	_    struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Addr fuchsianet.SocketAddress `fidl_offset_v1:"0"`
+	_    struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Addr fuchsianet.SocketAddress `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxBindRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxBindRequest{})
@@ -1835,8 +1835,8 @@
 }
 
 type baseSocketWithCtxBindResponse struct {
-	_      struct{}             `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketBindResult `fidl_offset_v1:"0"`
+	_      struct{}             `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketBindResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxBindResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxBindResponse{})
@@ -1846,8 +1846,8 @@
 }
 
 type baseSocketWithCtxConnectRequest struct {
-	_    struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Addr fuchsianet.SocketAddress `fidl_offset_v1:"0"`
+	_    struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Addr fuchsianet.SocketAddress `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxConnectRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxConnectRequest{})
@@ -1857,8 +1857,8 @@
 }
 
 type baseSocketWithCtxConnectResponse struct {
-	_      struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketConnectResult `fidl_offset_v1:"0"`
+	_      struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketConnectResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxConnectResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxConnectResponse{})
@@ -1868,8 +1868,8 @@
 }
 
 type baseSocketWithCtxDisconnectResponse struct {
-	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketDisconnectResult `fidl_offset_v1:"0"`
+	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketDisconnectResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxDisconnectResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxDisconnectResponse{})
@@ -1879,8 +1879,8 @@
 }
 
 type baseSocketWithCtxGetSockNameResponse struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetSockNameResult `fidl_offset_v1:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetSockNameResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetSockNameResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetSockNameResponse{})
@@ -1890,8 +1890,8 @@
 }
 
 type baseSocketWithCtxGetPeerNameResponse struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetPeerNameResult `fidl_offset_v1:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetPeerNameResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetPeerNameResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetPeerNameResponse{})
@@ -1901,8 +1901,8 @@
 }
 
 type baseSocketWithCtxShutdown2Request struct {
-	_    struct{}     `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Mode ShutdownMode `fidl_offset_v1:"0"`
+	_    struct{}     `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Mode ShutdownMode `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxShutdown2Request = _bindings.CreateLazyMarshaler(baseSocketWithCtxShutdown2Request{})
@@ -1912,8 +1912,8 @@
 }
 
 type baseSocketWithCtxShutdown2Response struct {
-	_      struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketShutdown2Result `fidl_offset_v1:"0"`
+	_      struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketShutdown2Result `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxShutdown2Response = _bindings.CreateLazyMarshaler(baseSocketWithCtxShutdown2Response{})
@@ -1923,8 +1923,8 @@
 }
 
 type baseSocketWithCtxSetReuseAddressRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetReuseAddressRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetReuseAddressRequest{})
@@ -1934,8 +1934,8 @@
 }
 
 type baseSocketWithCtxSetReuseAddressResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetReuseAddressResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetReuseAddressResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetReuseAddressResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetReuseAddressResponse{})
@@ -1945,8 +1945,8 @@
 }
 
 type baseSocketWithCtxGetReuseAddressResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetReuseAddressResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetReuseAddressResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetReuseAddressResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetReuseAddressResponse{})
@@ -1956,8 +1956,8 @@
 }
 
 type baseSocketWithCtxGetErrorResponse struct {
-	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetErrorResult `fidl_offset_v1:"0"`
+	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetErrorResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetErrorResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetErrorResponse{})
@@ -1967,8 +1967,8 @@
 }
 
 type baseSocketWithCtxSetBroadcastRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetBroadcastRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetBroadcastRequest{})
@@ -1978,8 +1978,8 @@
 }
 
 type baseSocketWithCtxSetBroadcastResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetBroadcastResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetBroadcastResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetBroadcastResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetBroadcastResponse{})
@@ -1989,8 +1989,8 @@
 }
 
 type baseSocketWithCtxGetBroadcastResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetBroadcastResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetBroadcastResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetBroadcastResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetBroadcastResponse{})
@@ -2000,8 +2000,8 @@
 }
 
 type baseSocketWithCtxSetSendBufferRequest struct {
-	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	ValueBytes uint64   `fidl_offset_v1:"0"`
+	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	ValueBytes uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetSendBufferRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetSendBufferRequest{})
@@ -2011,8 +2011,8 @@
 }
 
 type baseSocketWithCtxSetSendBufferResponse struct {
-	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetSendBufferResult `fidl_offset_v1:"0"`
+	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetSendBufferResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetSendBufferResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetSendBufferResponse{})
@@ -2022,8 +2022,8 @@
 }
 
 type baseSocketWithCtxGetSendBufferResponse struct {
-	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetSendBufferResult `fidl_offset_v1:"0"`
+	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetSendBufferResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetSendBufferResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetSendBufferResponse{})
@@ -2033,8 +2033,8 @@
 }
 
 type baseSocketWithCtxSetReceiveBufferRequest struct {
-	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	ValueBytes uint64   `fidl_offset_v1:"0"`
+	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	ValueBytes uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetReceiveBufferRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetReceiveBufferRequest{})
@@ -2044,8 +2044,8 @@
 }
 
 type baseSocketWithCtxSetReceiveBufferResponse struct {
-	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetReceiveBufferResult `fidl_offset_v1:"0"`
+	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetReceiveBufferResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetReceiveBufferResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetReceiveBufferResponse{})
@@ -2055,8 +2055,8 @@
 }
 
 type baseSocketWithCtxGetReceiveBufferResponse struct {
-	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetReceiveBufferResult `fidl_offset_v1:"0"`
+	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetReceiveBufferResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetReceiveBufferResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetReceiveBufferResponse{})
@@ -2066,8 +2066,8 @@
 }
 
 type baseSocketWithCtxSetKeepAliveRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetKeepAliveRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetKeepAliveRequest{})
@@ -2077,8 +2077,8 @@
 }
 
 type baseSocketWithCtxSetKeepAliveResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetKeepAliveResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetKeepAliveResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetKeepAliveResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetKeepAliveResponse{})
@@ -2088,8 +2088,8 @@
 }
 
 type baseSocketWithCtxGetKeepAliveResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetKeepAliveResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetKeepAliveResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetKeepAliveResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetKeepAliveResponse{})
@@ -2099,8 +2099,8 @@
 }
 
 type baseSocketWithCtxSetOutOfBandInlineRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetOutOfBandInlineRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetOutOfBandInlineRequest{})
@@ -2110,8 +2110,8 @@
 }
 
 type baseSocketWithCtxSetOutOfBandInlineResponse struct {
-	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetOutOfBandInlineResult `fidl_offset_v1:"0"`
+	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetOutOfBandInlineResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetOutOfBandInlineResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetOutOfBandInlineResponse{})
@@ -2121,8 +2121,8 @@
 }
 
 type baseSocketWithCtxGetOutOfBandInlineResponse struct {
-	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetOutOfBandInlineResult `fidl_offset_v1:"0"`
+	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetOutOfBandInlineResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetOutOfBandInlineResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetOutOfBandInlineResponse{})
@@ -2132,8 +2132,8 @@
 }
 
 type baseSocketWithCtxSetNoCheckRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetNoCheckRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetNoCheckRequest{})
@@ -2143,8 +2143,8 @@
 }
 
 type baseSocketWithCtxSetNoCheckResponse struct {
-	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetNoCheckResult `fidl_offset_v1:"0"`
+	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetNoCheckResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetNoCheckResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetNoCheckResponse{})
@@ -2154,8 +2154,8 @@
 }
 
 type baseSocketWithCtxGetNoCheckResponse struct {
-	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetNoCheckResult `fidl_offset_v1:"0"`
+	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetNoCheckResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetNoCheckResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetNoCheckResponse{})
@@ -2165,9 +2165,9 @@
 }
 
 type baseSocketWithCtxSetLingerRequest struct {
-	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Linger     bool     `fidl_offset_v1:"0"`
-	LengthSecs uint32   `fidl_offset_v1:"4"`
+	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Linger     bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	LengthSecs uint32   `fidl_offset_v1:"4" fidl_offset_v2:"4"`
 }
 
 var _mbaseSocketWithCtxSetLingerRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetLingerRequest{})
@@ -2177,8 +2177,8 @@
 }
 
 type baseSocketWithCtxSetLingerResponse struct {
-	_      struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetLingerResult `fidl_offset_v1:"0"`
+	_      struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetLingerResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetLingerResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetLingerResponse{})
@@ -2188,8 +2188,8 @@
 }
 
 type baseSocketWithCtxGetLingerResponse struct {
-	_      struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetLingerResult `fidl_offset_v1:"0"`
+	_      struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetLingerResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetLingerResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetLingerResponse{})
@@ -2199,8 +2199,8 @@
 }
 
 type baseSocketWithCtxSetReusePortRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetReusePortRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetReusePortRequest{})
@@ -2210,8 +2210,8 @@
 }
 
 type baseSocketWithCtxSetReusePortResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetReusePortResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetReusePortResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetReusePortResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetReusePortResponse{})
@@ -2221,8 +2221,8 @@
 }
 
 type baseSocketWithCtxGetReusePortResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetReusePortResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetReusePortResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetReusePortResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetReusePortResponse{})
@@ -2232,8 +2232,8 @@
 }
 
 type baseSocketWithCtxGetAcceptConnResponse struct {
-	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetAcceptConnResult `fidl_offset_v1:"0"`
+	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetAcceptConnResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetAcceptConnResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetAcceptConnResponse{})
@@ -2243,8 +2243,8 @@
 }
 
 type baseSocketWithCtxSetBindToDeviceRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Value string   `fidl_offset_v1:"0" fidl_bounds:"15"`
+	_     struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Value string   `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"15"`
 }
 
 var _mbaseSocketWithCtxSetBindToDeviceRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetBindToDeviceRequest{})
@@ -2254,8 +2254,8 @@
 }
 
 type baseSocketWithCtxSetBindToDeviceResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetBindToDeviceResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetBindToDeviceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetBindToDeviceResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetBindToDeviceResponse{})
@@ -2265,8 +2265,8 @@
 }
 
 type baseSocketWithCtxGetBindToDeviceResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetBindToDeviceResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetBindToDeviceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetBindToDeviceResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetBindToDeviceResponse{})
@@ -2276,8 +2276,8 @@
 }
 
 type baseSocketWithCtxSetTimestampRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetTimestampRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetTimestampRequest{})
@@ -2287,8 +2287,8 @@
 }
 
 type baseSocketWithCtxSetTimestampResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetTimestampResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetTimestampResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetTimestampResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetTimestampResponse{})
@@ -2298,8 +2298,8 @@
 }
 
 type baseSocketWithCtxGetTimestampResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetTimestampResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetTimestampResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetTimestampResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetTimestampResponse{})
@@ -2309,8 +2309,8 @@
 }
 
 type baseSocketWithCtxSetIpTypeOfServiceRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value uint8    `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value uint8    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpTypeOfServiceRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpTypeOfServiceRequest{})
@@ -2320,8 +2320,8 @@
 }
 
 type baseSocketWithCtxSetIpTypeOfServiceResponse struct {
-	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpTypeOfServiceResult `fidl_offset_v1:"0"`
+	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpTypeOfServiceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpTypeOfServiceResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpTypeOfServiceResponse{})
@@ -2331,8 +2331,8 @@
 }
 
 type baseSocketWithCtxGetIpTypeOfServiceResponse struct {
-	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpTypeOfServiceResult `fidl_offset_v1:"0"`
+	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpTypeOfServiceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetIpTypeOfServiceResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetIpTypeOfServiceResponse{})
@@ -2342,8 +2342,8 @@
 }
 
 type baseSocketWithCtxSetIpTtlRequest struct {
-	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Value OptionalUint8 `fidl_offset_v1:"0"`
+	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Value OptionalUint8 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpTtlRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpTtlRequest{})
@@ -2353,8 +2353,8 @@
 }
 
 type baseSocketWithCtxSetIpTtlResponse struct {
-	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpTtlResult `fidl_offset_v1:"0"`
+	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpTtlResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpTtlResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpTtlResponse{})
@@ -2364,8 +2364,8 @@
 }
 
 type baseSocketWithCtxGetIpTtlResponse struct {
-	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpTtlResult `fidl_offset_v1:"0"`
+	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpTtlResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetIpTtlResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetIpTtlResponse{})
@@ -2375,8 +2375,8 @@
 }
 
 type baseSocketWithCtxSetIpPacketInfoRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpPacketInfoRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpPacketInfoRequest{})
@@ -2386,8 +2386,8 @@
 }
 
 type baseSocketWithCtxSetIpPacketInfoResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpPacketInfoResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpPacketInfoResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpPacketInfoResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpPacketInfoResponse{})
@@ -2397,8 +2397,8 @@
 }
 
 type baseSocketWithCtxGetIpPacketInfoResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpPacketInfoResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpPacketInfoResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetIpPacketInfoResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetIpPacketInfoResponse{})
@@ -2408,8 +2408,8 @@
 }
 
 type baseSocketWithCtxSetIpReceiveTypeOfServiceRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpReceiveTypeOfServiceRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpReceiveTypeOfServiceRequest{})
@@ -2419,8 +2419,8 @@
 }
 
 type baseSocketWithCtxSetIpReceiveTypeOfServiceResponse struct {
-	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpReceiveTypeOfServiceResult `fidl_offset_v1:"0"`
+	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpReceiveTypeOfServiceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpReceiveTypeOfServiceResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpReceiveTypeOfServiceResponse{})
@@ -2430,8 +2430,8 @@
 }
 
 type baseSocketWithCtxGetIpReceiveTypeOfServiceResponse struct {
-	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpReceiveTypeOfServiceResult `fidl_offset_v1:"0"`
+	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpReceiveTypeOfServiceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetIpReceiveTypeOfServiceResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetIpReceiveTypeOfServiceResponse{})
@@ -2441,9 +2441,9 @@
 }
 
 type baseSocketWithCtxSetIpMulticastInterfaceRequest struct {
-	_       struct{}               `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Iface   uint64                 `fidl_offset_v1:"0"`
-	Address fuchsianet.Ipv4Address `fidl_offset_v1:"8"`
+	_       struct{}               `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Iface   uint64                 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Address fuchsianet.Ipv4Address `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mbaseSocketWithCtxSetIpMulticastInterfaceRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpMulticastInterfaceRequest{})
@@ -2453,8 +2453,8 @@
 }
 
 type baseSocketWithCtxSetIpMulticastInterfaceResponse struct {
-	_      struct{}                                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpMulticastInterfaceResult `fidl_offset_v1:"0"`
+	_      struct{}                                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpMulticastInterfaceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpMulticastInterfaceResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpMulticastInterfaceResponse{})
@@ -2464,8 +2464,8 @@
 }
 
 type baseSocketWithCtxGetIpMulticastInterfaceResponse struct {
-	_      struct{}                                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpMulticastInterfaceResult `fidl_offset_v1:"0"`
+	_      struct{}                                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpMulticastInterfaceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetIpMulticastInterfaceResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetIpMulticastInterfaceResponse{})
@@ -2475,8 +2475,8 @@
 }
 
 type baseSocketWithCtxSetIpMulticastTtlRequest struct {
-	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Value OptionalUint8 `fidl_offset_v1:"0"`
+	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Value OptionalUint8 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpMulticastTtlRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpMulticastTtlRequest{})
@@ -2486,8 +2486,8 @@
 }
 
 type baseSocketWithCtxSetIpMulticastTtlResponse struct {
-	_      struct{}                          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpMulticastTtlResult `fidl_offset_v1:"0"`
+	_      struct{}                          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpMulticastTtlResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpMulticastTtlResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpMulticastTtlResponse{})
@@ -2497,8 +2497,8 @@
 }
 
 type baseSocketWithCtxGetIpMulticastTtlResponse struct {
-	_      struct{}                          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpMulticastTtlResult `fidl_offset_v1:"0"`
+	_      struct{}                          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpMulticastTtlResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetIpMulticastTtlResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetIpMulticastTtlResponse{})
@@ -2508,8 +2508,8 @@
 }
 
 type baseSocketWithCtxSetIpMulticastLoopbackRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpMulticastLoopbackRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpMulticastLoopbackRequest{})
@@ -2519,8 +2519,8 @@
 }
 
 type baseSocketWithCtxSetIpMulticastLoopbackResponse struct {
-	_      struct{}                               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpMulticastLoopbackResult `fidl_offset_v1:"0"`
+	_      struct{}                               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpMulticastLoopbackResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpMulticastLoopbackResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpMulticastLoopbackResponse{})
@@ -2530,8 +2530,8 @@
 }
 
 type baseSocketWithCtxGetIpMulticastLoopbackResponse struct {
-	_      struct{}                               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpMulticastLoopbackResult `fidl_offset_v1:"0"`
+	_      struct{}                               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpMulticastLoopbackResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetIpMulticastLoopbackResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetIpMulticastLoopbackResponse{})
@@ -2541,8 +2541,8 @@
 }
 
 type baseSocketWithCtxAddIpMembershipRequest struct {
-	_          struct{}              `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Membership IpMulticastMembership `fidl_offset_v1:"0"`
+	_          struct{}              `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Membership IpMulticastMembership `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxAddIpMembershipRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxAddIpMembershipRequest{})
@@ -2552,8 +2552,8 @@
 }
 
 type baseSocketWithCtxAddIpMembershipResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketAddIpMembershipResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketAddIpMembershipResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxAddIpMembershipResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxAddIpMembershipResponse{})
@@ -2563,8 +2563,8 @@
 }
 
 type baseSocketWithCtxDropIpMembershipRequest struct {
-	_          struct{}              `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Membership IpMulticastMembership `fidl_offset_v1:"0"`
+	_          struct{}              `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Membership IpMulticastMembership `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxDropIpMembershipRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxDropIpMembershipRequest{})
@@ -2574,8 +2574,8 @@
 }
 
 type baseSocketWithCtxDropIpMembershipResponse struct {
-	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketDropIpMembershipResult `fidl_offset_v1:"0"`
+	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketDropIpMembershipResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxDropIpMembershipResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxDropIpMembershipResponse{})
@@ -2585,8 +2585,8 @@
 }
 
 type baseSocketWithCtxAddIpv6MembershipRequest struct {
-	_          struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Membership Ipv6MulticastMembership `fidl_offset_v1:"0"`
+	_          struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Membership Ipv6MulticastMembership `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxAddIpv6MembershipRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxAddIpv6MembershipRequest{})
@@ -2596,8 +2596,8 @@
 }
 
 type baseSocketWithCtxAddIpv6MembershipResponse struct {
-	_      struct{}                          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketAddIpv6MembershipResult `fidl_offset_v1:"0"`
+	_      struct{}                          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketAddIpv6MembershipResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxAddIpv6MembershipResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxAddIpv6MembershipResponse{})
@@ -2607,8 +2607,8 @@
 }
 
 type baseSocketWithCtxDropIpv6MembershipRequest struct {
-	_          struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Membership Ipv6MulticastMembership `fidl_offset_v1:"0"`
+	_          struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Membership Ipv6MulticastMembership `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxDropIpv6MembershipRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxDropIpv6MembershipRequest{})
@@ -2618,8 +2618,8 @@
 }
 
 type baseSocketWithCtxDropIpv6MembershipResponse struct {
-	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketDropIpv6MembershipResult `fidl_offset_v1:"0"`
+	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketDropIpv6MembershipResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxDropIpv6MembershipResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxDropIpv6MembershipResponse{})
@@ -2629,8 +2629,8 @@
 }
 
 type baseSocketWithCtxSetIpv6MulticastInterfaceRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value uint64   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpv6MulticastInterfaceRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpv6MulticastInterfaceRequest{})
@@ -2640,8 +2640,8 @@
 }
 
 type baseSocketWithCtxSetIpv6MulticastInterfaceResponse struct {
-	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpv6MulticastInterfaceResult `fidl_offset_v1:"0"`
+	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpv6MulticastInterfaceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpv6MulticastInterfaceResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpv6MulticastInterfaceResponse{})
@@ -2651,8 +2651,8 @@
 }
 
 type baseSocketWithCtxGetIpv6MulticastInterfaceResponse struct {
-	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpv6MulticastInterfaceResult `fidl_offset_v1:"0"`
+	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpv6MulticastInterfaceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetIpv6MulticastInterfaceResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetIpv6MulticastInterfaceResponse{})
@@ -2662,8 +2662,8 @@
 }
 
 type baseSocketWithCtxSetIpv6MulticastHopsRequest struct {
-	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Value OptionalUint8 `fidl_offset_v1:"0"`
+	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Value OptionalUint8 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpv6MulticastHopsRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpv6MulticastHopsRequest{})
@@ -2673,8 +2673,8 @@
 }
 
 type baseSocketWithCtxSetIpv6MulticastHopsResponse struct {
-	_      struct{}                             `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpv6MulticastHopsResult `fidl_offset_v1:"0"`
+	_      struct{}                             `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpv6MulticastHopsResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpv6MulticastHopsResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpv6MulticastHopsResponse{})
@@ -2684,8 +2684,8 @@
 }
 
 type baseSocketWithCtxGetIpv6MulticastHopsResponse struct {
-	_      struct{}                             `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpv6MulticastHopsResult `fidl_offset_v1:"0"`
+	_      struct{}                             `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpv6MulticastHopsResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetIpv6MulticastHopsResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetIpv6MulticastHopsResponse{})
@@ -2695,8 +2695,8 @@
 }
 
 type baseSocketWithCtxSetIpv6MulticastLoopbackRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpv6MulticastLoopbackRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpv6MulticastLoopbackRequest{})
@@ -2706,8 +2706,8 @@
 }
 
 type baseSocketWithCtxSetIpv6MulticastLoopbackResponse struct {
-	_      struct{}                                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpv6MulticastLoopbackResult `fidl_offset_v1:"0"`
+	_      struct{}                                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpv6MulticastLoopbackResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpv6MulticastLoopbackResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpv6MulticastLoopbackResponse{})
@@ -2717,8 +2717,8 @@
 }
 
 type baseSocketWithCtxGetIpv6MulticastLoopbackResponse struct {
-	_      struct{}                                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpv6MulticastLoopbackResult `fidl_offset_v1:"0"`
+	_      struct{}                                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpv6MulticastLoopbackResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetIpv6MulticastLoopbackResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetIpv6MulticastLoopbackResponse{})
@@ -2728,8 +2728,8 @@
 }
 
 type baseSocketWithCtxSetIpv6OnlyRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpv6OnlyRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpv6OnlyRequest{})
@@ -2739,8 +2739,8 @@
 }
 
 type baseSocketWithCtxSetIpv6OnlyResponse struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpv6OnlyResult `fidl_offset_v1:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpv6OnlyResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpv6OnlyResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpv6OnlyResponse{})
@@ -2750,8 +2750,8 @@
 }
 
 type baseSocketWithCtxGetIpv6OnlyResponse struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpv6OnlyResult `fidl_offset_v1:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpv6OnlyResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetIpv6OnlyResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetIpv6OnlyResponse{})
@@ -2761,8 +2761,8 @@
 }
 
 type baseSocketWithCtxSetIpv6ReceiveTrafficClassRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpv6ReceiveTrafficClassRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpv6ReceiveTrafficClassRequest{})
@@ -2772,8 +2772,8 @@
 }
 
 type baseSocketWithCtxSetIpv6ReceiveTrafficClassResponse struct {
-	_      struct{}                                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpv6ReceiveTrafficClassResult `fidl_offset_v1:"0"`
+	_      struct{}                                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpv6ReceiveTrafficClassResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpv6ReceiveTrafficClassResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpv6ReceiveTrafficClassResponse{})
@@ -2783,8 +2783,8 @@
 }
 
 type baseSocketWithCtxGetIpv6ReceiveTrafficClassResponse struct {
-	_      struct{}                                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpv6ReceiveTrafficClassResult `fidl_offset_v1:"0"`
+	_      struct{}                                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpv6ReceiveTrafficClassResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetIpv6ReceiveTrafficClassResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetIpv6ReceiveTrafficClassResponse{})
@@ -2794,8 +2794,8 @@
 }
 
 type baseSocketWithCtxSetIpv6TrafficClassRequest struct {
-	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Value OptionalUint8 `fidl_offset_v1:"0"`
+	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Value OptionalUint8 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpv6TrafficClassRequest = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpv6TrafficClassRequest{})
@@ -2805,8 +2805,8 @@
 }
 
 type baseSocketWithCtxSetIpv6TrafficClassResponse struct {
-	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpv6TrafficClassResult `fidl_offset_v1:"0"`
+	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpv6TrafficClassResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxSetIpv6TrafficClassResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxSetIpv6TrafficClassResponse{})
@@ -2816,8 +2816,8 @@
 }
 
 type baseSocketWithCtxGetIpv6TrafficClassResponse struct {
-	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpv6TrafficClassResult `fidl_offset_v1:"0"`
+	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpv6TrafficClassResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mbaseSocketWithCtxGetIpv6TrafficClassResponse = _bindings.CreateLazyMarshaler(baseSocketWithCtxGetIpv6TrafficClassResponse{})
@@ -2827,9 +2827,9 @@
 }
 
 type datagramSocketWithCtxCloneRequest struct {
-	_      struct{}                              `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Flags  uint32                                `fidl_offset_v1:"0"`
-	Object fuchsiaio.NodeWithCtxInterfaceRequest `fidl_offset_v1:"4" fidl_handle_subtype:"4" fidl_bounds:"0"`
+	_      struct{}                              `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Flags  uint32                                `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Object fuchsiaio.NodeWithCtxInterfaceRequest `fidl_offset_v1:"4" fidl_offset_v2:"4" fidl_handle_subtype:"4" fidl_bounds:"0"`
 }
 
 var _mdatagramSocketWithCtxCloneRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxCloneRequest{})
@@ -2839,8 +2839,8 @@
 }
 
 type datagramSocketWithCtxCloseResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxCloseResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxCloseResponse{})
@@ -2850,8 +2850,8 @@
 }
 
 type datagramSocketWithCtxDescribeResponse struct {
-	_    struct{}           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Info fuchsiaio.NodeInfo `fidl_offset_v1:"0"`
+	_    struct{}           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info fuchsiaio.NodeInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxDescribeResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxDescribeResponse{})
@@ -2861,9 +2861,9 @@
 }
 
 type datagramSocketWithCtxOnOpenResponse struct {
-	_    struct{}            `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	S    int32               `fidl_offset_v1:"0"`
-	Info *fuchsiaio.NodeInfo `fidl_offset_v1:"8"`
+	_    struct{}            `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	S    int32               `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Info *fuchsiaio.NodeInfo `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mdatagramSocketWithCtxOnOpenResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxOnOpenResponse{})
@@ -2873,8 +2873,8 @@
 }
 
 type datagramSocketWithCtxSyncResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSyncResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSyncResponse{})
@@ -2884,9 +2884,9 @@
 }
 
 type datagramSocketWithCtxGetAttrResponse struct {
-	_          struct{}                 `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	S          int32                    `fidl_offset_v1:"0"`
-	Attributes fuchsiaio.NodeAttributes `fidl_offset_v1:"8"`
+	_          struct{}                 `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"64" fidl_alignment_v2:"8"`
+	S          int32                    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Attributes fuchsiaio.NodeAttributes `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mdatagramSocketWithCtxGetAttrResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetAttrResponse{})
@@ -2896,9 +2896,9 @@
 }
 
 type datagramSocketWithCtxSetAttrRequest struct {
-	_          struct{}                 `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	Flags      uint32                   `fidl_offset_v1:"0"`
-	Attributes fuchsiaio.NodeAttributes `fidl_offset_v1:"8"`
+	_          struct{}                 `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"64" fidl_alignment_v2:"8"`
+	Flags      uint32                   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Attributes fuchsiaio.NodeAttributes `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mdatagramSocketWithCtxSetAttrRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetAttrRequest{})
@@ -2908,8 +2908,8 @@
 }
 
 type datagramSocketWithCtxSetAttrResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetAttrResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetAttrResponse{})
@@ -2919,9 +2919,9 @@
 }
 
 type datagramSocketWithCtxNodeGetFlagsResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S     int32    `fidl_offset_v1:"0"`
-	Flags uint32   `fidl_offset_v1:"4"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S     int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Flags uint32   `fidl_offset_v1:"4" fidl_offset_v2:"4"`
 }
 
 var _mdatagramSocketWithCtxNodeGetFlagsResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxNodeGetFlagsResponse{})
@@ -2931,8 +2931,8 @@
 }
 
 type datagramSocketWithCtxNodeSetFlagsRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Flags uint32   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Flags uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxNodeSetFlagsRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxNodeSetFlagsRequest{})
@@ -2942,8 +2942,8 @@
 }
 
 type datagramSocketWithCtxNodeSetFlagsResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxNodeSetFlagsResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxNodeSetFlagsResponse{})
@@ -2953,8 +2953,8 @@
 }
 
 type datagramSocketWithCtxBindRequest struct {
-	_    struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Addr fuchsianet.SocketAddress `fidl_offset_v1:"0"`
+	_    struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Addr fuchsianet.SocketAddress `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxBindRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxBindRequest{})
@@ -2964,8 +2964,8 @@
 }
 
 type datagramSocketWithCtxBindResponse struct {
-	_      struct{}             `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketBindResult `fidl_offset_v1:"0"`
+	_      struct{}             `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketBindResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxBindResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxBindResponse{})
@@ -2975,8 +2975,8 @@
 }
 
 type datagramSocketWithCtxConnectRequest struct {
-	_    struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Addr fuchsianet.SocketAddress `fidl_offset_v1:"0"`
+	_    struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Addr fuchsianet.SocketAddress `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxConnectRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxConnectRequest{})
@@ -2986,8 +2986,8 @@
 }
 
 type datagramSocketWithCtxConnectResponse struct {
-	_      struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketConnectResult `fidl_offset_v1:"0"`
+	_      struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketConnectResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxConnectResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxConnectResponse{})
@@ -2997,8 +2997,8 @@
 }
 
 type datagramSocketWithCtxDisconnectResponse struct {
-	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketDisconnectResult `fidl_offset_v1:"0"`
+	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketDisconnectResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxDisconnectResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxDisconnectResponse{})
@@ -3008,8 +3008,8 @@
 }
 
 type datagramSocketWithCtxGetSockNameResponse struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetSockNameResult `fidl_offset_v1:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetSockNameResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetSockNameResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetSockNameResponse{})
@@ -3019,8 +3019,8 @@
 }
 
 type datagramSocketWithCtxGetPeerNameResponse struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetPeerNameResult `fidl_offset_v1:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetPeerNameResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetPeerNameResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetPeerNameResponse{})
@@ -3030,8 +3030,8 @@
 }
 
 type datagramSocketWithCtxShutdown2Request struct {
-	_    struct{}     `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Mode ShutdownMode `fidl_offset_v1:"0"`
+	_    struct{}     `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Mode ShutdownMode `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxShutdown2Request = _bindings.CreateLazyMarshaler(datagramSocketWithCtxShutdown2Request{})
@@ -3041,8 +3041,8 @@
 }
 
 type datagramSocketWithCtxShutdown2Response struct {
-	_      struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketShutdown2Result `fidl_offset_v1:"0"`
+	_      struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketShutdown2Result `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxShutdown2Response = _bindings.CreateLazyMarshaler(datagramSocketWithCtxShutdown2Response{})
@@ -3052,8 +3052,8 @@
 }
 
 type datagramSocketWithCtxSetReuseAddressRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetReuseAddressRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetReuseAddressRequest{})
@@ -3063,8 +3063,8 @@
 }
 
 type datagramSocketWithCtxSetReuseAddressResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetReuseAddressResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetReuseAddressResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetReuseAddressResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetReuseAddressResponse{})
@@ -3074,8 +3074,8 @@
 }
 
 type datagramSocketWithCtxGetReuseAddressResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetReuseAddressResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetReuseAddressResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetReuseAddressResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetReuseAddressResponse{})
@@ -3085,8 +3085,8 @@
 }
 
 type datagramSocketWithCtxGetErrorResponse struct {
-	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetErrorResult `fidl_offset_v1:"0"`
+	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetErrorResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetErrorResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetErrorResponse{})
@@ -3096,8 +3096,8 @@
 }
 
 type datagramSocketWithCtxSetBroadcastRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetBroadcastRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetBroadcastRequest{})
@@ -3107,8 +3107,8 @@
 }
 
 type datagramSocketWithCtxSetBroadcastResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetBroadcastResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetBroadcastResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetBroadcastResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetBroadcastResponse{})
@@ -3118,8 +3118,8 @@
 }
 
 type datagramSocketWithCtxGetBroadcastResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetBroadcastResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetBroadcastResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetBroadcastResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetBroadcastResponse{})
@@ -3129,8 +3129,8 @@
 }
 
 type datagramSocketWithCtxSetSendBufferRequest struct {
-	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	ValueBytes uint64   `fidl_offset_v1:"0"`
+	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	ValueBytes uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetSendBufferRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetSendBufferRequest{})
@@ -3140,8 +3140,8 @@
 }
 
 type datagramSocketWithCtxSetSendBufferResponse struct {
-	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetSendBufferResult `fidl_offset_v1:"0"`
+	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetSendBufferResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetSendBufferResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetSendBufferResponse{})
@@ -3151,8 +3151,8 @@
 }
 
 type datagramSocketWithCtxGetSendBufferResponse struct {
-	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetSendBufferResult `fidl_offset_v1:"0"`
+	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetSendBufferResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetSendBufferResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetSendBufferResponse{})
@@ -3162,8 +3162,8 @@
 }
 
 type datagramSocketWithCtxSetReceiveBufferRequest struct {
-	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	ValueBytes uint64   `fidl_offset_v1:"0"`
+	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	ValueBytes uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetReceiveBufferRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetReceiveBufferRequest{})
@@ -3173,8 +3173,8 @@
 }
 
 type datagramSocketWithCtxSetReceiveBufferResponse struct {
-	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetReceiveBufferResult `fidl_offset_v1:"0"`
+	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetReceiveBufferResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetReceiveBufferResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetReceiveBufferResponse{})
@@ -3184,8 +3184,8 @@
 }
 
 type datagramSocketWithCtxGetReceiveBufferResponse struct {
-	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetReceiveBufferResult `fidl_offset_v1:"0"`
+	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetReceiveBufferResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetReceiveBufferResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetReceiveBufferResponse{})
@@ -3195,8 +3195,8 @@
 }
 
 type datagramSocketWithCtxSetKeepAliveRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetKeepAliveRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetKeepAliveRequest{})
@@ -3206,8 +3206,8 @@
 }
 
 type datagramSocketWithCtxSetKeepAliveResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetKeepAliveResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetKeepAliveResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetKeepAliveResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetKeepAliveResponse{})
@@ -3217,8 +3217,8 @@
 }
 
 type datagramSocketWithCtxGetKeepAliveResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetKeepAliveResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetKeepAliveResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetKeepAliveResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetKeepAliveResponse{})
@@ -3228,8 +3228,8 @@
 }
 
 type datagramSocketWithCtxSetOutOfBandInlineRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetOutOfBandInlineRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetOutOfBandInlineRequest{})
@@ -3239,8 +3239,8 @@
 }
 
 type datagramSocketWithCtxSetOutOfBandInlineResponse struct {
-	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetOutOfBandInlineResult `fidl_offset_v1:"0"`
+	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetOutOfBandInlineResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetOutOfBandInlineResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetOutOfBandInlineResponse{})
@@ -3250,8 +3250,8 @@
 }
 
 type datagramSocketWithCtxGetOutOfBandInlineResponse struct {
-	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetOutOfBandInlineResult `fidl_offset_v1:"0"`
+	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetOutOfBandInlineResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetOutOfBandInlineResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetOutOfBandInlineResponse{})
@@ -3261,8 +3261,8 @@
 }
 
 type datagramSocketWithCtxSetNoCheckRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetNoCheckRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetNoCheckRequest{})
@@ -3272,8 +3272,8 @@
 }
 
 type datagramSocketWithCtxSetNoCheckResponse struct {
-	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetNoCheckResult `fidl_offset_v1:"0"`
+	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetNoCheckResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetNoCheckResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetNoCheckResponse{})
@@ -3283,8 +3283,8 @@
 }
 
 type datagramSocketWithCtxGetNoCheckResponse struct {
-	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetNoCheckResult `fidl_offset_v1:"0"`
+	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetNoCheckResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetNoCheckResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetNoCheckResponse{})
@@ -3294,9 +3294,9 @@
 }
 
 type datagramSocketWithCtxSetLingerRequest struct {
-	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Linger     bool     `fidl_offset_v1:"0"`
-	LengthSecs uint32   `fidl_offset_v1:"4"`
+	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Linger     bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	LengthSecs uint32   `fidl_offset_v1:"4" fidl_offset_v2:"4"`
 }
 
 var _mdatagramSocketWithCtxSetLingerRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetLingerRequest{})
@@ -3306,8 +3306,8 @@
 }
 
 type datagramSocketWithCtxSetLingerResponse struct {
-	_      struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetLingerResult `fidl_offset_v1:"0"`
+	_      struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetLingerResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetLingerResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetLingerResponse{})
@@ -3317,8 +3317,8 @@
 }
 
 type datagramSocketWithCtxGetLingerResponse struct {
-	_      struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetLingerResult `fidl_offset_v1:"0"`
+	_      struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetLingerResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetLingerResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetLingerResponse{})
@@ -3328,8 +3328,8 @@
 }
 
 type datagramSocketWithCtxSetReusePortRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetReusePortRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetReusePortRequest{})
@@ -3339,8 +3339,8 @@
 }
 
 type datagramSocketWithCtxSetReusePortResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetReusePortResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetReusePortResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetReusePortResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetReusePortResponse{})
@@ -3350,8 +3350,8 @@
 }
 
 type datagramSocketWithCtxGetReusePortResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetReusePortResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetReusePortResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetReusePortResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetReusePortResponse{})
@@ -3361,8 +3361,8 @@
 }
 
 type datagramSocketWithCtxGetAcceptConnResponse struct {
-	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetAcceptConnResult `fidl_offset_v1:"0"`
+	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetAcceptConnResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetAcceptConnResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetAcceptConnResponse{})
@@ -3372,8 +3372,8 @@
 }
 
 type datagramSocketWithCtxSetBindToDeviceRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Value string   `fidl_offset_v1:"0" fidl_bounds:"15"`
+	_     struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Value string   `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"15"`
 }
 
 var _mdatagramSocketWithCtxSetBindToDeviceRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetBindToDeviceRequest{})
@@ -3383,8 +3383,8 @@
 }
 
 type datagramSocketWithCtxSetBindToDeviceResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetBindToDeviceResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetBindToDeviceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetBindToDeviceResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetBindToDeviceResponse{})
@@ -3394,8 +3394,8 @@
 }
 
 type datagramSocketWithCtxGetBindToDeviceResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetBindToDeviceResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetBindToDeviceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetBindToDeviceResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetBindToDeviceResponse{})
@@ -3405,8 +3405,8 @@
 }
 
 type datagramSocketWithCtxSetTimestampRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetTimestampRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetTimestampRequest{})
@@ -3416,8 +3416,8 @@
 }
 
 type datagramSocketWithCtxSetTimestampResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetTimestampResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetTimestampResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetTimestampResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetTimestampResponse{})
@@ -3427,8 +3427,8 @@
 }
 
 type datagramSocketWithCtxGetTimestampResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetTimestampResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetTimestampResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetTimestampResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetTimestampResponse{})
@@ -3438,8 +3438,8 @@
 }
 
 type datagramSocketWithCtxSetIpTypeOfServiceRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value uint8    `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value uint8    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpTypeOfServiceRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpTypeOfServiceRequest{})
@@ -3449,8 +3449,8 @@
 }
 
 type datagramSocketWithCtxSetIpTypeOfServiceResponse struct {
-	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpTypeOfServiceResult `fidl_offset_v1:"0"`
+	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpTypeOfServiceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpTypeOfServiceResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpTypeOfServiceResponse{})
@@ -3460,8 +3460,8 @@
 }
 
 type datagramSocketWithCtxGetIpTypeOfServiceResponse struct {
-	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpTypeOfServiceResult `fidl_offset_v1:"0"`
+	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpTypeOfServiceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetIpTypeOfServiceResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetIpTypeOfServiceResponse{})
@@ -3471,8 +3471,8 @@
 }
 
 type datagramSocketWithCtxSetIpTtlRequest struct {
-	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Value OptionalUint8 `fidl_offset_v1:"0"`
+	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Value OptionalUint8 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpTtlRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpTtlRequest{})
@@ -3482,8 +3482,8 @@
 }
 
 type datagramSocketWithCtxSetIpTtlResponse struct {
-	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpTtlResult `fidl_offset_v1:"0"`
+	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpTtlResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpTtlResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpTtlResponse{})
@@ -3493,8 +3493,8 @@
 }
 
 type datagramSocketWithCtxGetIpTtlResponse struct {
-	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpTtlResult `fidl_offset_v1:"0"`
+	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpTtlResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetIpTtlResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetIpTtlResponse{})
@@ -3504,8 +3504,8 @@
 }
 
 type datagramSocketWithCtxSetIpPacketInfoRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpPacketInfoRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpPacketInfoRequest{})
@@ -3515,8 +3515,8 @@
 }
 
 type datagramSocketWithCtxSetIpPacketInfoResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpPacketInfoResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpPacketInfoResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpPacketInfoResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpPacketInfoResponse{})
@@ -3526,8 +3526,8 @@
 }
 
 type datagramSocketWithCtxGetIpPacketInfoResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpPacketInfoResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpPacketInfoResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetIpPacketInfoResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetIpPacketInfoResponse{})
@@ -3537,8 +3537,8 @@
 }
 
 type datagramSocketWithCtxSetIpReceiveTypeOfServiceRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpReceiveTypeOfServiceRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpReceiveTypeOfServiceRequest{})
@@ -3548,8 +3548,8 @@
 }
 
 type datagramSocketWithCtxSetIpReceiveTypeOfServiceResponse struct {
-	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpReceiveTypeOfServiceResult `fidl_offset_v1:"0"`
+	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpReceiveTypeOfServiceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpReceiveTypeOfServiceResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpReceiveTypeOfServiceResponse{})
@@ -3559,8 +3559,8 @@
 }
 
 type datagramSocketWithCtxGetIpReceiveTypeOfServiceResponse struct {
-	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpReceiveTypeOfServiceResult `fidl_offset_v1:"0"`
+	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpReceiveTypeOfServiceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetIpReceiveTypeOfServiceResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetIpReceiveTypeOfServiceResponse{})
@@ -3570,9 +3570,9 @@
 }
 
 type datagramSocketWithCtxSetIpMulticastInterfaceRequest struct {
-	_       struct{}               `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Iface   uint64                 `fidl_offset_v1:"0"`
-	Address fuchsianet.Ipv4Address `fidl_offset_v1:"8"`
+	_       struct{}               `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Iface   uint64                 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Address fuchsianet.Ipv4Address `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mdatagramSocketWithCtxSetIpMulticastInterfaceRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpMulticastInterfaceRequest{})
@@ -3582,8 +3582,8 @@
 }
 
 type datagramSocketWithCtxSetIpMulticastInterfaceResponse struct {
-	_      struct{}                                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpMulticastInterfaceResult `fidl_offset_v1:"0"`
+	_      struct{}                                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpMulticastInterfaceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpMulticastInterfaceResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpMulticastInterfaceResponse{})
@@ -3593,8 +3593,8 @@
 }
 
 type datagramSocketWithCtxGetIpMulticastInterfaceResponse struct {
-	_      struct{}                                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpMulticastInterfaceResult `fidl_offset_v1:"0"`
+	_      struct{}                                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpMulticastInterfaceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetIpMulticastInterfaceResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetIpMulticastInterfaceResponse{})
@@ -3604,8 +3604,8 @@
 }
 
 type datagramSocketWithCtxSetIpMulticastTtlRequest struct {
-	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Value OptionalUint8 `fidl_offset_v1:"0"`
+	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Value OptionalUint8 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpMulticastTtlRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpMulticastTtlRequest{})
@@ -3615,8 +3615,8 @@
 }
 
 type datagramSocketWithCtxSetIpMulticastTtlResponse struct {
-	_      struct{}                          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpMulticastTtlResult `fidl_offset_v1:"0"`
+	_      struct{}                          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpMulticastTtlResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpMulticastTtlResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpMulticastTtlResponse{})
@@ -3626,8 +3626,8 @@
 }
 
 type datagramSocketWithCtxGetIpMulticastTtlResponse struct {
-	_      struct{}                          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpMulticastTtlResult `fidl_offset_v1:"0"`
+	_      struct{}                          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpMulticastTtlResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetIpMulticastTtlResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetIpMulticastTtlResponse{})
@@ -3637,8 +3637,8 @@
 }
 
 type datagramSocketWithCtxSetIpMulticastLoopbackRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpMulticastLoopbackRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpMulticastLoopbackRequest{})
@@ -3648,8 +3648,8 @@
 }
 
 type datagramSocketWithCtxSetIpMulticastLoopbackResponse struct {
-	_      struct{}                               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpMulticastLoopbackResult `fidl_offset_v1:"0"`
+	_      struct{}                               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpMulticastLoopbackResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpMulticastLoopbackResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpMulticastLoopbackResponse{})
@@ -3659,8 +3659,8 @@
 }
 
 type datagramSocketWithCtxGetIpMulticastLoopbackResponse struct {
-	_      struct{}                               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpMulticastLoopbackResult `fidl_offset_v1:"0"`
+	_      struct{}                               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpMulticastLoopbackResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetIpMulticastLoopbackResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetIpMulticastLoopbackResponse{})
@@ -3670,8 +3670,8 @@
 }
 
 type datagramSocketWithCtxAddIpMembershipRequest struct {
-	_          struct{}              `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Membership IpMulticastMembership `fidl_offset_v1:"0"`
+	_          struct{}              `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Membership IpMulticastMembership `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxAddIpMembershipRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxAddIpMembershipRequest{})
@@ -3681,8 +3681,8 @@
 }
 
 type datagramSocketWithCtxAddIpMembershipResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketAddIpMembershipResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketAddIpMembershipResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxAddIpMembershipResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxAddIpMembershipResponse{})
@@ -3692,8 +3692,8 @@
 }
 
 type datagramSocketWithCtxDropIpMembershipRequest struct {
-	_          struct{}              `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Membership IpMulticastMembership `fidl_offset_v1:"0"`
+	_          struct{}              `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Membership IpMulticastMembership `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxDropIpMembershipRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxDropIpMembershipRequest{})
@@ -3703,8 +3703,8 @@
 }
 
 type datagramSocketWithCtxDropIpMembershipResponse struct {
-	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketDropIpMembershipResult `fidl_offset_v1:"0"`
+	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketDropIpMembershipResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxDropIpMembershipResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxDropIpMembershipResponse{})
@@ -3714,8 +3714,8 @@
 }
 
 type datagramSocketWithCtxAddIpv6MembershipRequest struct {
-	_          struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Membership Ipv6MulticastMembership `fidl_offset_v1:"0"`
+	_          struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Membership Ipv6MulticastMembership `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxAddIpv6MembershipRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxAddIpv6MembershipRequest{})
@@ -3725,8 +3725,8 @@
 }
 
 type datagramSocketWithCtxAddIpv6MembershipResponse struct {
-	_      struct{}                          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketAddIpv6MembershipResult `fidl_offset_v1:"0"`
+	_      struct{}                          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketAddIpv6MembershipResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxAddIpv6MembershipResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxAddIpv6MembershipResponse{})
@@ -3736,8 +3736,8 @@
 }
 
 type datagramSocketWithCtxDropIpv6MembershipRequest struct {
-	_          struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Membership Ipv6MulticastMembership `fidl_offset_v1:"0"`
+	_          struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Membership Ipv6MulticastMembership `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxDropIpv6MembershipRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxDropIpv6MembershipRequest{})
@@ -3747,8 +3747,8 @@
 }
 
 type datagramSocketWithCtxDropIpv6MembershipResponse struct {
-	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketDropIpv6MembershipResult `fidl_offset_v1:"0"`
+	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketDropIpv6MembershipResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxDropIpv6MembershipResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxDropIpv6MembershipResponse{})
@@ -3758,8 +3758,8 @@
 }
 
 type datagramSocketWithCtxSetIpv6MulticastInterfaceRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value uint64   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpv6MulticastInterfaceRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpv6MulticastInterfaceRequest{})
@@ -3769,8 +3769,8 @@
 }
 
 type datagramSocketWithCtxSetIpv6MulticastInterfaceResponse struct {
-	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpv6MulticastInterfaceResult `fidl_offset_v1:"0"`
+	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpv6MulticastInterfaceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpv6MulticastInterfaceResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpv6MulticastInterfaceResponse{})
@@ -3780,8 +3780,8 @@
 }
 
 type datagramSocketWithCtxGetIpv6MulticastInterfaceResponse struct {
-	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpv6MulticastInterfaceResult `fidl_offset_v1:"0"`
+	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpv6MulticastInterfaceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetIpv6MulticastInterfaceResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetIpv6MulticastInterfaceResponse{})
@@ -3791,8 +3791,8 @@
 }
 
 type datagramSocketWithCtxSetIpv6MulticastHopsRequest struct {
-	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Value OptionalUint8 `fidl_offset_v1:"0"`
+	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Value OptionalUint8 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpv6MulticastHopsRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpv6MulticastHopsRequest{})
@@ -3802,8 +3802,8 @@
 }
 
 type datagramSocketWithCtxSetIpv6MulticastHopsResponse struct {
-	_      struct{}                             `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpv6MulticastHopsResult `fidl_offset_v1:"0"`
+	_      struct{}                             `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpv6MulticastHopsResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpv6MulticastHopsResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpv6MulticastHopsResponse{})
@@ -3813,8 +3813,8 @@
 }
 
 type datagramSocketWithCtxGetIpv6MulticastHopsResponse struct {
-	_      struct{}                             `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpv6MulticastHopsResult `fidl_offset_v1:"0"`
+	_      struct{}                             `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpv6MulticastHopsResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetIpv6MulticastHopsResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetIpv6MulticastHopsResponse{})
@@ -3824,8 +3824,8 @@
 }
 
 type datagramSocketWithCtxSetIpv6MulticastLoopbackRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpv6MulticastLoopbackRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpv6MulticastLoopbackRequest{})
@@ -3835,8 +3835,8 @@
 }
 
 type datagramSocketWithCtxSetIpv6MulticastLoopbackResponse struct {
-	_      struct{}                                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpv6MulticastLoopbackResult `fidl_offset_v1:"0"`
+	_      struct{}                                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpv6MulticastLoopbackResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpv6MulticastLoopbackResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpv6MulticastLoopbackResponse{})
@@ -3846,8 +3846,8 @@
 }
 
 type datagramSocketWithCtxGetIpv6MulticastLoopbackResponse struct {
-	_      struct{}                                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpv6MulticastLoopbackResult `fidl_offset_v1:"0"`
+	_      struct{}                                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpv6MulticastLoopbackResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetIpv6MulticastLoopbackResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetIpv6MulticastLoopbackResponse{})
@@ -3857,8 +3857,8 @@
 }
 
 type datagramSocketWithCtxSetIpv6OnlyRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpv6OnlyRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpv6OnlyRequest{})
@@ -3868,8 +3868,8 @@
 }
 
 type datagramSocketWithCtxSetIpv6OnlyResponse struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpv6OnlyResult `fidl_offset_v1:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpv6OnlyResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpv6OnlyResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpv6OnlyResponse{})
@@ -3879,8 +3879,8 @@
 }
 
 type datagramSocketWithCtxGetIpv6OnlyResponse struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpv6OnlyResult `fidl_offset_v1:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpv6OnlyResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetIpv6OnlyResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetIpv6OnlyResponse{})
@@ -3890,8 +3890,8 @@
 }
 
 type datagramSocketWithCtxSetIpv6ReceiveTrafficClassRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpv6ReceiveTrafficClassRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpv6ReceiveTrafficClassRequest{})
@@ -3901,8 +3901,8 @@
 }
 
 type datagramSocketWithCtxSetIpv6ReceiveTrafficClassResponse struct {
-	_      struct{}                                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpv6ReceiveTrafficClassResult `fidl_offset_v1:"0"`
+	_      struct{}                                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpv6ReceiveTrafficClassResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpv6ReceiveTrafficClassResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpv6ReceiveTrafficClassResponse{})
@@ -3912,8 +3912,8 @@
 }
 
 type datagramSocketWithCtxGetIpv6ReceiveTrafficClassResponse struct {
-	_      struct{}                                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpv6ReceiveTrafficClassResult `fidl_offset_v1:"0"`
+	_      struct{}                                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpv6ReceiveTrafficClassResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetIpv6ReceiveTrafficClassResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetIpv6ReceiveTrafficClassResponse{})
@@ -3923,8 +3923,8 @@
 }
 
 type datagramSocketWithCtxSetIpv6TrafficClassRequest struct {
-	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Value OptionalUint8 `fidl_offset_v1:"0"`
+	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Value OptionalUint8 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpv6TrafficClassRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpv6TrafficClassRequest{})
@@ -3934,8 +3934,8 @@
 }
 
 type datagramSocketWithCtxSetIpv6TrafficClassResponse struct {
-	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpv6TrafficClassResult `fidl_offset_v1:"0"`
+	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpv6TrafficClassResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSetIpv6TrafficClassResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSetIpv6TrafficClassResponse{})
@@ -3945,8 +3945,8 @@
 }
 
 type datagramSocketWithCtxGetIpv6TrafficClassResponse struct {
-	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpv6TrafficClassResult `fidl_offset_v1:"0"`
+	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpv6TrafficClassResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetIpv6TrafficClassResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetIpv6TrafficClassResponse{})
@@ -3956,8 +3956,8 @@
 }
 
 type datagramSocketWithCtxShutdownRequest struct {
-	_    struct{}     `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Mode ShutdownMode `fidl_offset_v1:"0"`
+	_    struct{}     `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Mode ShutdownMode `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxShutdownRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxShutdownRequest{})
@@ -3967,8 +3967,8 @@
 }
 
 type datagramSocketWithCtxShutdownResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result DatagramSocketShutdownResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result DatagramSocketShutdownResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxShutdownResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxShutdownResponse{})
@@ -3978,11 +3978,11 @@
 }
 
 type datagramSocketWithCtxRecvMsgRequest struct {
-	_           struct{}     `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	WantAddr    bool         `fidl_offset_v1:"0"`
-	DataLen     uint32       `fidl_offset_v1:"4"`
-	WantControl bool         `fidl_offset_v1:"8"`
-	Flags       RecvMsgFlags `fidl_offset_v1:"10"`
+	_           struct{}     `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	WantAddr    bool         `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	DataLen     uint32       `fidl_offset_v1:"4" fidl_offset_v2:"4"`
+	WantControl bool         `fidl_offset_v1:"8" fidl_offset_v2:"8"`
+	Flags       RecvMsgFlags `fidl_offset_v1:"10" fidl_offset_v2:"10"`
 }
 
 var _mdatagramSocketWithCtxRecvMsgRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxRecvMsgRequest{})
@@ -3992,8 +3992,8 @@
 }
 
 type datagramSocketWithCtxRecvMsgResponse struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result DatagramSocketRecvMsgResult `fidl_offset_v1:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result DatagramSocketRecvMsgResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxRecvMsgResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxRecvMsgResponse{})
@@ -4003,11 +4003,11 @@
 }
 
 type datagramSocketWithCtxSendMsgRequest struct {
-	_       struct{}                  `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	Addr    *fuchsianet.SocketAddress `fidl_offset_v1:"0"`
-	Data    []uint8                   `fidl_offset_v1:"24" fidl_bounds:""`
-	Control SendControlData           `fidl_offset_v1:"40"`
-	Flags   SendMsgFlags              `fidl_offset_v1:"56"`
+	_       struct{}                  `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"56" fidl_alignment_v2:"8"`
+	Addr    *fuchsianet.SocketAddress `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Data    []uint8                   `fidl_offset_v1:"24" fidl_offset_v2:"16" fidl_bounds:""`
+	Control SendControlData           `fidl_offset_v1:"40" fidl_offset_v2:"32"`
+	Flags   SendMsgFlags              `fidl_offset_v1:"56" fidl_offset_v2:"48"`
 }
 
 var _mdatagramSocketWithCtxSendMsgRequest = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSendMsgRequest{})
@@ -4017,8 +4017,8 @@
 }
 
 type datagramSocketWithCtxSendMsgResponse struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result DatagramSocketSendMsgResult `fidl_offset_v1:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result DatagramSocketSendMsgResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxSendMsgResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxSendMsgResponse{})
@@ -4028,8 +4028,8 @@
 }
 
 type datagramSocketWithCtxGetInfoResponse struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result DatagramSocketGetInfoResult `fidl_offset_v1:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result DatagramSocketGetInfoResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mdatagramSocketWithCtxGetInfoResponse = _bindings.CreateLazyMarshaler(datagramSocketWithCtxGetInfoResponse{})
@@ -4039,9 +4039,9 @@
 }
 
 type streamSocketWithCtxCloneRequest struct {
-	_      struct{}                              `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Flags  uint32                                `fidl_offset_v1:"0"`
-	Object fuchsiaio.NodeWithCtxInterfaceRequest `fidl_offset_v1:"4" fidl_handle_subtype:"4" fidl_bounds:"0"`
+	_      struct{}                              `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Flags  uint32                                `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Object fuchsiaio.NodeWithCtxInterfaceRequest `fidl_offset_v1:"4" fidl_offset_v2:"4" fidl_handle_subtype:"4" fidl_bounds:"0"`
 }
 
 var _mstreamSocketWithCtxCloneRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxCloneRequest{})
@@ -4051,8 +4051,8 @@
 }
 
 type streamSocketWithCtxCloseResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxCloseResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxCloseResponse{})
@@ -4062,8 +4062,8 @@
 }
 
 type streamSocketWithCtxDescribeResponse struct {
-	_    struct{}           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Info fuchsiaio.NodeInfo `fidl_offset_v1:"0"`
+	_    struct{}           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Info fuchsiaio.NodeInfo `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxDescribeResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxDescribeResponse{})
@@ -4073,9 +4073,9 @@
 }
 
 type streamSocketWithCtxOnOpenResponse struct {
-	_    struct{}            `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8"`
-	S    int32               `fidl_offset_v1:"0"`
-	Info *fuchsiaio.NodeInfo `fidl_offset_v1:"8"`
+	_    struct{}            `fidl:"s" fidl_size_v1:"32" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	S    int32               `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Info *fuchsiaio.NodeInfo `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mstreamSocketWithCtxOnOpenResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxOnOpenResponse{})
@@ -4085,8 +4085,8 @@
 }
 
 type streamSocketWithCtxSyncResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSyncResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSyncResponse{})
@@ -4096,9 +4096,9 @@
 }
 
 type streamSocketWithCtxGetAttrResponse struct {
-	_          struct{}                 `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	S          int32                    `fidl_offset_v1:"0"`
-	Attributes fuchsiaio.NodeAttributes `fidl_offset_v1:"8"`
+	_          struct{}                 `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"64" fidl_alignment_v2:"8"`
+	S          int32                    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Attributes fuchsiaio.NodeAttributes `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mstreamSocketWithCtxGetAttrResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetAttrResponse{})
@@ -4108,9 +4108,9 @@
 }
 
 type streamSocketWithCtxSetAttrRequest struct {
-	_          struct{}                 `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8"`
-	Flags      uint32                   `fidl_offset_v1:"0"`
-	Attributes fuchsiaio.NodeAttributes `fidl_offset_v1:"8"`
+	_          struct{}                 `fidl:"s" fidl_size_v1:"64" fidl_alignment_v1:"8" fidl_size_v2:"64" fidl_alignment_v2:"8"`
+	Flags      uint32                   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Attributes fuchsiaio.NodeAttributes `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mstreamSocketWithCtxSetAttrRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetAttrRequest{})
@@ -4120,8 +4120,8 @@
 }
 
 type streamSocketWithCtxSetAttrResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetAttrResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetAttrResponse{})
@@ -4131,9 +4131,9 @@
 }
 
 type streamSocketWithCtxNodeGetFlagsResponse struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S     int32    `fidl_offset_v1:"0"`
-	Flags uint32   `fidl_offset_v1:"4"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S     int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Flags uint32   `fidl_offset_v1:"4" fidl_offset_v2:"4"`
 }
 
 var _mstreamSocketWithCtxNodeGetFlagsResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxNodeGetFlagsResponse{})
@@ -4143,8 +4143,8 @@
 }
 
 type streamSocketWithCtxNodeSetFlagsRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Flags uint32   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Flags uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxNodeSetFlagsRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxNodeSetFlagsRequest{})
@@ -4154,8 +4154,8 @@
 }
 
 type streamSocketWithCtxNodeSetFlagsResponse struct {
-	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	S int32    `fidl_offset_v1:"0"`
+	_ struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	S int32    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxNodeSetFlagsResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxNodeSetFlagsResponse{})
@@ -4165,8 +4165,8 @@
 }
 
 type streamSocketWithCtxBindRequest struct {
-	_    struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Addr fuchsianet.SocketAddress `fidl_offset_v1:"0"`
+	_    struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Addr fuchsianet.SocketAddress `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxBindRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxBindRequest{})
@@ -4176,8 +4176,8 @@
 }
 
 type streamSocketWithCtxBindResponse struct {
-	_      struct{}             `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketBindResult `fidl_offset_v1:"0"`
+	_      struct{}             `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketBindResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxBindResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxBindResponse{})
@@ -4187,8 +4187,8 @@
 }
 
 type streamSocketWithCtxConnectRequest struct {
-	_    struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Addr fuchsianet.SocketAddress `fidl_offset_v1:"0"`
+	_    struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Addr fuchsianet.SocketAddress `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxConnectRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxConnectRequest{})
@@ -4198,8 +4198,8 @@
 }
 
 type streamSocketWithCtxConnectResponse struct {
-	_      struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketConnectResult `fidl_offset_v1:"0"`
+	_      struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketConnectResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxConnectResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxConnectResponse{})
@@ -4209,8 +4209,8 @@
 }
 
 type streamSocketWithCtxDisconnectResponse struct {
-	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketDisconnectResult `fidl_offset_v1:"0"`
+	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketDisconnectResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxDisconnectResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxDisconnectResponse{})
@@ -4220,8 +4220,8 @@
 }
 
 type streamSocketWithCtxGetSockNameResponse struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetSockNameResult `fidl_offset_v1:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetSockNameResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetSockNameResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetSockNameResponse{})
@@ -4231,8 +4231,8 @@
 }
 
 type streamSocketWithCtxGetPeerNameResponse struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetPeerNameResult `fidl_offset_v1:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetPeerNameResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetPeerNameResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetPeerNameResponse{})
@@ -4242,8 +4242,8 @@
 }
 
 type streamSocketWithCtxShutdown2Request struct {
-	_    struct{}     `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Mode ShutdownMode `fidl_offset_v1:"0"`
+	_    struct{}     `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Mode ShutdownMode `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxShutdown2Request = _bindings.CreateLazyMarshaler(streamSocketWithCtxShutdown2Request{})
@@ -4253,8 +4253,8 @@
 }
 
 type streamSocketWithCtxShutdown2Response struct {
-	_      struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketShutdown2Result `fidl_offset_v1:"0"`
+	_      struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketShutdown2Result `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxShutdown2Response = _bindings.CreateLazyMarshaler(streamSocketWithCtxShutdown2Response{})
@@ -4264,8 +4264,8 @@
 }
 
 type streamSocketWithCtxSetReuseAddressRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetReuseAddressRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetReuseAddressRequest{})
@@ -4275,8 +4275,8 @@
 }
 
 type streamSocketWithCtxSetReuseAddressResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetReuseAddressResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetReuseAddressResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetReuseAddressResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetReuseAddressResponse{})
@@ -4286,8 +4286,8 @@
 }
 
 type streamSocketWithCtxGetReuseAddressResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetReuseAddressResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetReuseAddressResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetReuseAddressResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetReuseAddressResponse{})
@@ -4297,8 +4297,8 @@
 }
 
 type streamSocketWithCtxGetErrorResponse struct {
-	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetErrorResult `fidl_offset_v1:"0"`
+	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetErrorResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetErrorResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetErrorResponse{})
@@ -4308,8 +4308,8 @@
 }
 
 type streamSocketWithCtxSetBroadcastRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetBroadcastRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetBroadcastRequest{})
@@ -4319,8 +4319,8 @@
 }
 
 type streamSocketWithCtxSetBroadcastResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetBroadcastResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetBroadcastResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetBroadcastResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetBroadcastResponse{})
@@ -4330,8 +4330,8 @@
 }
 
 type streamSocketWithCtxGetBroadcastResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetBroadcastResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetBroadcastResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetBroadcastResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetBroadcastResponse{})
@@ -4341,8 +4341,8 @@
 }
 
 type streamSocketWithCtxSetSendBufferRequest struct {
-	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	ValueBytes uint64   `fidl_offset_v1:"0"`
+	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	ValueBytes uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetSendBufferRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetSendBufferRequest{})
@@ -4352,8 +4352,8 @@
 }
 
 type streamSocketWithCtxSetSendBufferResponse struct {
-	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetSendBufferResult `fidl_offset_v1:"0"`
+	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetSendBufferResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetSendBufferResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetSendBufferResponse{})
@@ -4363,8 +4363,8 @@
 }
 
 type streamSocketWithCtxGetSendBufferResponse struct {
-	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetSendBufferResult `fidl_offset_v1:"0"`
+	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetSendBufferResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetSendBufferResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetSendBufferResponse{})
@@ -4374,8 +4374,8 @@
 }
 
 type streamSocketWithCtxSetReceiveBufferRequest struct {
-	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	ValueBytes uint64   `fidl_offset_v1:"0"`
+	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	ValueBytes uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetReceiveBufferRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetReceiveBufferRequest{})
@@ -4385,8 +4385,8 @@
 }
 
 type streamSocketWithCtxSetReceiveBufferResponse struct {
-	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetReceiveBufferResult `fidl_offset_v1:"0"`
+	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetReceiveBufferResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetReceiveBufferResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetReceiveBufferResponse{})
@@ -4396,8 +4396,8 @@
 }
 
 type streamSocketWithCtxGetReceiveBufferResponse struct {
-	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetReceiveBufferResult `fidl_offset_v1:"0"`
+	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetReceiveBufferResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetReceiveBufferResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetReceiveBufferResponse{})
@@ -4407,8 +4407,8 @@
 }
 
 type streamSocketWithCtxSetKeepAliveRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetKeepAliveRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetKeepAliveRequest{})
@@ -4418,8 +4418,8 @@
 }
 
 type streamSocketWithCtxSetKeepAliveResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetKeepAliveResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetKeepAliveResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetKeepAliveResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetKeepAliveResponse{})
@@ -4429,8 +4429,8 @@
 }
 
 type streamSocketWithCtxGetKeepAliveResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetKeepAliveResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetKeepAliveResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetKeepAliveResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetKeepAliveResponse{})
@@ -4440,8 +4440,8 @@
 }
 
 type streamSocketWithCtxSetOutOfBandInlineRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetOutOfBandInlineRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetOutOfBandInlineRequest{})
@@ -4451,8 +4451,8 @@
 }
 
 type streamSocketWithCtxSetOutOfBandInlineResponse struct {
-	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetOutOfBandInlineResult `fidl_offset_v1:"0"`
+	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetOutOfBandInlineResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetOutOfBandInlineResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetOutOfBandInlineResponse{})
@@ -4462,8 +4462,8 @@
 }
 
 type streamSocketWithCtxGetOutOfBandInlineResponse struct {
-	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetOutOfBandInlineResult `fidl_offset_v1:"0"`
+	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetOutOfBandInlineResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetOutOfBandInlineResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetOutOfBandInlineResponse{})
@@ -4473,8 +4473,8 @@
 }
 
 type streamSocketWithCtxSetNoCheckRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetNoCheckRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetNoCheckRequest{})
@@ -4484,8 +4484,8 @@
 }
 
 type streamSocketWithCtxSetNoCheckResponse struct {
-	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetNoCheckResult `fidl_offset_v1:"0"`
+	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetNoCheckResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetNoCheckResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetNoCheckResponse{})
@@ -4495,8 +4495,8 @@
 }
 
 type streamSocketWithCtxGetNoCheckResponse struct {
-	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetNoCheckResult `fidl_offset_v1:"0"`
+	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetNoCheckResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetNoCheckResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetNoCheckResponse{})
@@ -4506,9 +4506,9 @@
 }
 
 type streamSocketWithCtxSetLingerRequest struct {
-	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Linger     bool     `fidl_offset_v1:"0"`
-	LengthSecs uint32   `fidl_offset_v1:"4"`
+	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Linger     bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	LengthSecs uint32   `fidl_offset_v1:"4" fidl_offset_v2:"4"`
 }
 
 var _mstreamSocketWithCtxSetLingerRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetLingerRequest{})
@@ -4518,8 +4518,8 @@
 }
 
 type streamSocketWithCtxSetLingerResponse struct {
-	_      struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetLingerResult `fidl_offset_v1:"0"`
+	_      struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetLingerResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetLingerResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetLingerResponse{})
@@ -4529,8 +4529,8 @@
 }
 
 type streamSocketWithCtxGetLingerResponse struct {
-	_      struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetLingerResult `fidl_offset_v1:"0"`
+	_      struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetLingerResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetLingerResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetLingerResponse{})
@@ -4540,8 +4540,8 @@
 }
 
 type streamSocketWithCtxSetReusePortRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetReusePortRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetReusePortRequest{})
@@ -4551,8 +4551,8 @@
 }
 
 type streamSocketWithCtxSetReusePortResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetReusePortResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetReusePortResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetReusePortResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetReusePortResponse{})
@@ -4562,8 +4562,8 @@
 }
 
 type streamSocketWithCtxGetReusePortResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetReusePortResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetReusePortResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetReusePortResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetReusePortResponse{})
@@ -4573,8 +4573,8 @@
 }
 
 type streamSocketWithCtxGetAcceptConnResponse struct {
-	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetAcceptConnResult `fidl_offset_v1:"0"`
+	_      struct{}                      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetAcceptConnResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetAcceptConnResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetAcceptConnResponse{})
@@ -4584,8 +4584,8 @@
 }
 
 type streamSocketWithCtxSetBindToDeviceRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Value string   `fidl_offset_v1:"0" fidl_bounds:"15"`
+	_     struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Value string   `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"15"`
 }
 
 var _mstreamSocketWithCtxSetBindToDeviceRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetBindToDeviceRequest{})
@@ -4595,8 +4595,8 @@
 }
 
 type streamSocketWithCtxSetBindToDeviceResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetBindToDeviceResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetBindToDeviceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetBindToDeviceResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetBindToDeviceResponse{})
@@ -4606,8 +4606,8 @@
 }
 
 type streamSocketWithCtxGetBindToDeviceResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetBindToDeviceResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetBindToDeviceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetBindToDeviceResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetBindToDeviceResponse{})
@@ -4617,8 +4617,8 @@
 }
 
 type streamSocketWithCtxSetTimestampRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTimestampRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTimestampRequest{})
@@ -4628,8 +4628,8 @@
 }
 
 type streamSocketWithCtxSetTimestampResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetTimestampResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetTimestampResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTimestampResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTimestampResponse{})
@@ -4639,8 +4639,8 @@
 }
 
 type streamSocketWithCtxGetTimestampResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetTimestampResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetTimestampResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetTimestampResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetTimestampResponse{})
@@ -4650,8 +4650,8 @@
 }
 
 type streamSocketWithCtxSetIpTypeOfServiceRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value uint8    `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value uint8    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpTypeOfServiceRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpTypeOfServiceRequest{})
@@ -4661,8 +4661,8 @@
 }
 
 type streamSocketWithCtxSetIpTypeOfServiceResponse struct {
-	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpTypeOfServiceResult `fidl_offset_v1:"0"`
+	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpTypeOfServiceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpTypeOfServiceResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpTypeOfServiceResponse{})
@@ -4672,8 +4672,8 @@
 }
 
 type streamSocketWithCtxGetIpTypeOfServiceResponse struct {
-	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpTypeOfServiceResult `fidl_offset_v1:"0"`
+	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpTypeOfServiceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetIpTypeOfServiceResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetIpTypeOfServiceResponse{})
@@ -4683,8 +4683,8 @@
 }
 
 type streamSocketWithCtxSetIpTtlRequest struct {
-	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Value OptionalUint8 `fidl_offset_v1:"0"`
+	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Value OptionalUint8 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpTtlRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpTtlRequest{})
@@ -4694,8 +4694,8 @@
 }
 
 type streamSocketWithCtxSetIpTtlResponse struct {
-	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpTtlResult `fidl_offset_v1:"0"`
+	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpTtlResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpTtlResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpTtlResponse{})
@@ -4705,8 +4705,8 @@
 }
 
 type streamSocketWithCtxGetIpTtlResponse struct {
-	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpTtlResult `fidl_offset_v1:"0"`
+	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpTtlResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetIpTtlResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetIpTtlResponse{})
@@ -4716,8 +4716,8 @@
 }
 
 type streamSocketWithCtxSetIpPacketInfoRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpPacketInfoRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpPacketInfoRequest{})
@@ -4727,8 +4727,8 @@
 }
 
 type streamSocketWithCtxSetIpPacketInfoResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpPacketInfoResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpPacketInfoResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpPacketInfoResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpPacketInfoResponse{})
@@ -4738,8 +4738,8 @@
 }
 
 type streamSocketWithCtxGetIpPacketInfoResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpPacketInfoResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpPacketInfoResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetIpPacketInfoResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetIpPacketInfoResponse{})
@@ -4749,8 +4749,8 @@
 }
 
 type streamSocketWithCtxSetIpReceiveTypeOfServiceRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpReceiveTypeOfServiceRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpReceiveTypeOfServiceRequest{})
@@ -4760,8 +4760,8 @@
 }
 
 type streamSocketWithCtxSetIpReceiveTypeOfServiceResponse struct {
-	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpReceiveTypeOfServiceResult `fidl_offset_v1:"0"`
+	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpReceiveTypeOfServiceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpReceiveTypeOfServiceResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpReceiveTypeOfServiceResponse{})
@@ -4771,8 +4771,8 @@
 }
 
 type streamSocketWithCtxGetIpReceiveTypeOfServiceResponse struct {
-	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpReceiveTypeOfServiceResult `fidl_offset_v1:"0"`
+	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpReceiveTypeOfServiceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetIpReceiveTypeOfServiceResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetIpReceiveTypeOfServiceResponse{})
@@ -4782,9 +4782,9 @@
 }
 
 type streamSocketWithCtxSetIpMulticastInterfaceRequest struct {
-	_       struct{}               `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Iface   uint64                 `fidl_offset_v1:"0"`
-	Address fuchsianet.Ipv4Address `fidl_offset_v1:"8"`
+	_       struct{}               `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Iface   uint64                 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Address fuchsianet.Ipv4Address `fidl_offset_v1:"8" fidl_offset_v2:"8"`
 }
 
 var _mstreamSocketWithCtxSetIpMulticastInterfaceRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpMulticastInterfaceRequest{})
@@ -4794,8 +4794,8 @@
 }
 
 type streamSocketWithCtxSetIpMulticastInterfaceResponse struct {
-	_      struct{}                                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpMulticastInterfaceResult `fidl_offset_v1:"0"`
+	_      struct{}                                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpMulticastInterfaceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpMulticastInterfaceResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpMulticastInterfaceResponse{})
@@ -4805,8 +4805,8 @@
 }
 
 type streamSocketWithCtxGetIpMulticastInterfaceResponse struct {
-	_      struct{}                                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpMulticastInterfaceResult `fidl_offset_v1:"0"`
+	_      struct{}                                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpMulticastInterfaceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetIpMulticastInterfaceResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetIpMulticastInterfaceResponse{})
@@ -4816,8 +4816,8 @@
 }
 
 type streamSocketWithCtxSetIpMulticastTtlRequest struct {
-	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Value OptionalUint8 `fidl_offset_v1:"0"`
+	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Value OptionalUint8 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpMulticastTtlRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpMulticastTtlRequest{})
@@ -4827,8 +4827,8 @@
 }
 
 type streamSocketWithCtxSetIpMulticastTtlResponse struct {
-	_      struct{}                          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpMulticastTtlResult `fidl_offset_v1:"0"`
+	_      struct{}                          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpMulticastTtlResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpMulticastTtlResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpMulticastTtlResponse{})
@@ -4838,8 +4838,8 @@
 }
 
 type streamSocketWithCtxGetIpMulticastTtlResponse struct {
-	_      struct{}                          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpMulticastTtlResult `fidl_offset_v1:"0"`
+	_      struct{}                          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpMulticastTtlResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetIpMulticastTtlResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetIpMulticastTtlResponse{})
@@ -4849,8 +4849,8 @@
 }
 
 type streamSocketWithCtxSetIpMulticastLoopbackRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpMulticastLoopbackRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpMulticastLoopbackRequest{})
@@ -4860,8 +4860,8 @@
 }
 
 type streamSocketWithCtxSetIpMulticastLoopbackResponse struct {
-	_      struct{}                               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpMulticastLoopbackResult `fidl_offset_v1:"0"`
+	_      struct{}                               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpMulticastLoopbackResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpMulticastLoopbackResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpMulticastLoopbackResponse{})
@@ -4871,8 +4871,8 @@
 }
 
 type streamSocketWithCtxGetIpMulticastLoopbackResponse struct {
-	_      struct{}                               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpMulticastLoopbackResult `fidl_offset_v1:"0"`
+	_      struct{}                               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpMulticastLoopbackResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetIpMulticastLoopbackResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetIpMulticastLoopbackResponse{})
@@ -4882,8 +4882,8 @@
 }
 
 type streamSocketWithCtxAddIpMembershipRequest struct {
-	_          struct{}              `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Membership IpMulticastMembership `fidl_offset_v1:"0"`
+	_          struct{}              `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Membership IpMulticastMembership `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxAddIpMembershipRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxAddIpMembershipRequest{})
@@ -4893,8 +4893,8 @@
 }
 
 type streamSocketWithCtxAddIpMembershipResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketAddIpMembershipResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketAddIpMembershipResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxAddIpMembershipResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxAddIpMembershipResponse{})
@@ -4904,8 +4904,8 @@
 }
 
 type streamSocketWithCtxDropIpMembershipRequest struct {
-	_          struct{}              `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Membership IpMulticastMembership `fidl_offset_v1:"0"`
+	_          struct{}              `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Membership IpMulticastMembership `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxDropIpMembershipRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxDropIpMembershipRequest{})
@@ -4915,8 +4915,8 @@
 }
 
 type streamSocketWithCtxDropIpMembershipResponse struct {
-	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketDropIpMembershipResult `fidl_offset_v1:"0"`
+	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketDropIpMembershipResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxDropIpMembershipResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxDropIpMembershipResponse{})
@@ -4926,8 +4926,8 @@
 }
 
 type streamSocketWithCtxAddIpv6MembershipRequest struct {
-	_          struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Membership Ipv6MulticastMembership `fidl_offset_v1:"0"`
+	_          struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Membership Ipv6MulticastMembership `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxAddIpv6MembershipRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxAddIpv6MembershipRequest{})
@@ -4937,8 +4937,8 @@
 }
 
 type streamSocketWithCtxAddIpv6MembershipResponse struct {
-	_      struct{}                          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketAddIpv6MembershipResult `fidl_offset_v1:"0"`
+	_      struct{}                          `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketAddIpv6MembershipResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxAddIpv6MembershipResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxAddIpv6MembershipResponse{})
@@ -4948,8 +4948,8 @@
 }
 
 type streamSocketWithCtxDropIpv6MembershipRequest struct {
-	_          struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Membership Ipv6MulticastMembership `fidl_offset_v1:"0"`
+	_          struct{}                `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"24" fidl_alignment_v2:"8"`
+	Membership Ipv6MulticastMembership `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxDropIpv6MembershipRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxDropIpv6MembershipRequest{})
@@ -4959,8 +4959,8 @@
 }
 
 type streamSocketWithCtxDropIpv6MembershipResponse struct {
-	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketDropIpv6MembershipResult `fidl_offset_v1:"0"`
+	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketDropIpv6MembershipResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxDropIpv6MembershipResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxDropIpv6MembershipResponse{})
@@ -4970,8 +4970,8 @@
 }
 
 type streamSocketWithCtxSetIpv6MulticastInterfaceRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value uint64   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpv6MulticastInterfaceRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpv6MulticastInterfaceRequest{})
@@ -4981,8 +4981,8 @@
 }
 
 type streamSocketWithCtxSetIpv6MulticastInterfaceResponse struct {
-	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpv6MulticastInterfaceResult `fidl_offset_v1:"0"`
+	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpv6MulticastInterfaceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpv6MulticastInterfaceResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpv6MulticastInterfaceResponse{})
@@ -4992,8 +4992,8 @@
 }
 
 type streamSocketWithCtxGetIpv6MulticastInterfaceResponse struct {
-	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpv6MulticastInterfaceResult `fidl_offset_v1:"0"`
+	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpv6MulticastInterfaceResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetIpv6MulticastInterfaceResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetIpv6MulticastInterfaceResponse{})
@@ -5003,8 +5003,8 @@
 }
 
 type streamSocketWithCtxSetIpv6MulticastHopsRequest struct {
-	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Value OptionalUint8 `fidl_offset_v1:"0"`
+	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Value OptionalUint8 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpv6MulticastHopsRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpv6MulticastHopsRequest{})
@@ -5014,8 +5014,8 @@
 }
 
 type streamSocketWithCtxSetIpv6MulticastHopsResponse struct {
-	_      struct{}                             `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpv6MulticastHopsResult `fidl_offset_v1:"0"`
+	_      struct{}                             `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpv6MulticastHopsResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpv6MulticastHopsResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpv6MulticastHopsResponse{})
@@ -5025,8 +5025,8 @@
 }
 
 type streamSocketWithCtxGetIpv6MulticastHopsResponse struct {
-	_      struct{}                             `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpv6MulticastHopsResult `fidl_offset_v1:"0"`
+	_      struct{}                             `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpv6MulticastHopsResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetIpv6MulticastHopsResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetIpv6MulticastHopsResponse{})
@@ -5036,8 +5036,8 @@
 }
 
 type streamSocketWithCtxSetIpv6MulticastLoopbackRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpv6MulticastLoopbackRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpv6MulticastLoopbackRequest{})
@@ -5047,8 +5047,8 @@
 }
 
 type streamSocketWithCtxSetIpv6MulticastLoopbackResponse struct {
-	_      struct{}                                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpv6MulticastLoopbackResult `fidl_offset_v1:"0"`
+	_      struct{}                                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpv6MulticastLoopbackResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpv6MulticastLoopbackResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpv6MulticastLoopbackResponse{})
@@ -5058,8 +5058,8 @@
 }
 
 type streamSocketWithCtxGetIpv6MulticastLoopbackResponse struct {
-	_      struct{}                                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpv6MulticastLoopbackResult `fidl_offset_v1:"0"`
+	_      struct{}                                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpv6MulticastLoopbackResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetIpv6MulticastLoopbackResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetIpv6MulticastLoopbackResponse{})
@@ -5069,8 +5069,8 @@
 }
 
 type streamSocketWithCtxSetIpv6OnlyRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpv6OnlyRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpv6OnlyRequest{})
@@ -5080,8 +5080,8 @@
 }
 
 type streamSocketWithCtxSetIpv6OnlyResponse struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpv6OnlyResult `fidl_offset_v1:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpv6OnlyResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpv6OnlyResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpv6OnlyResponse{})
@@ -5091,8 +5091,8 @@
 }
 
 type streamSocketWithCtxGetIpv6OnlyResponse struct {
-	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpv6OnlyResult `fidl_offset_v1:"0"`
+	_      struct{}                    `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpv6OnlyResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetIpv6OnlyResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetIpv6OnlyResponse{})
@@ -5102,8 +5102,8 @@
 }
 
 type streamSocketWithCtxSetIpv6ReceiveTrafficClassRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpv6ReceiveTrafficClassRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpv6ReceiveTrafficClassRequest{})
@@ -5113,8 +5113,8 @@
 }
 
 type streamSocketWithCtxSetIpv6ReceiveTrafficClassResponse struct {
-	_      struct{}                                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpv6ReceiveTrafficClassResult `fidl_offset_v1:"0"`
+	_      struct{}                                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpv6ReceiveTrafficClassResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpv6ReceiveTrafficClassResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpv6ReceiveTrafficClassResponse{})
@@ -5124,8 +5124,8 @@
 }
 
 type streamSocketWithCtxGetIpv6ReceiveTrafficClassResponse struct {
-	_      struct{}                                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpv6ReceiveTrafficClassResult `fidl_offset_v1:"0"`
+	_      struct{}                                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpv6ReceiveTrafficClassResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetIpv6ReceiveTrafficClassResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetIpv6ReceiveTrafficClassResponse{})
@@ -5135,8 +5135,8 @@
 }
 
 type streamSocketWithCtxSetIpv6TrafficClassRequest struct {
-	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Value OptionalUint8 `fidl_offset_v1:"0"`
+	_     struct{}      `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Value OptionalUint8 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpv6TrafficClassRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpv6TrafficClassRequest{})
@@ -5146,8 +5146,8 @@
 }
 
 type streamSocketWithCtxSetIpv6TrafficClassResponse struct {
-	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketSetIpv6TrafficClassResult `fidl_offset_v1:"0"`
+	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketSetIpv6TrafficClassResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetIpv6TrafficClassResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetIpv6TrafficClassResponse{})
@@ -5157,8 +5157,8 @@
 }
 
 type streamSocketWithCtxGetIpv6TrafficClassResponse struct {
-	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result BaseSocketGetIpv6TrafficClassResult `fidl_offset_v1:"0"`
+	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result BaseSocketGetIpv6TrafficClassResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetIpv6TrafficClassResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetIpv6TrafficClassResponse{})
@@ -5168,8 +5168,8 @@
 }
 
 type streamSocketWithCtxListenRequest struct {
-	_       struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Backlog int16    `fidl_offset_v1:"0"`
+	_       struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Backlog int16    `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxListenRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxListenRequest{})
@@ -5179,8 +5179,8 @@
 }
 
 type streamSocketWithCtxListenResponse struct {
-	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketListenResult `fidl_offset_v1:"0"`
+	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketListenResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxListenResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxListenResponse{})
@@ -5190,8 +5190,8 @@
 }
 
 type streamSocketWithCtxAcceptRequest struct {
-	_        struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	WantAddr bool     `fidl_offset_v1:"0"`
+	_        struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	WantAddr bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxAcceptRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxAcceptRequest{})
@@ -5201,8 +5201,8 @@
 }
 
 type streamSocketWithCtxAcceptResponse struct {
-	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketAcceptResult `fidl_offset_v1:"0"`
+	_      struct{}                 `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketAcceptResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxAcceptResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxAcceptResponse{})
@@ -5212,8 +5212,8 @@
 }
 
 type streamSocketWithCtxGetInfoResponse struct {
-	_      struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketGetInfoResult `fidl_offset_v1:"0"`
+	_      struct{}                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketGetInfoResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetInfoResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetInfoResponse{})
@@ -5223,8 +5223,8 @@
 }
 
 type streamSocketWithCtxSetTcpNoDelayRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpNoDelayRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpNoDelayRequest{})
@@ -5234,8 +5234,8 @@
 }
 
 type streamSocketWithCtxSetTcpNoDelayResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketSetTcpNoDelayResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketSetTcpNoDelayResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpNoDelayResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpNoDelayResponse{})
@@ -5245,8 +5245,8 @@
 }
 
 type streamSocketWithCtxGetTcpNoDelayResponse struct {
-	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketGetTcpNoDelayResult `fidl_offset_v1:"0"`
+	_      struct{}                        `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketGetTcpNoDelayResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetTcpNoDelayResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetTcpNoDelayResponse{})
@@ -5256,8 +5256,8 @@
 }
 
 type streamSocketWithCtxSetTcpMaxSegmentRequest struct {
-	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	ValueBytes uint32   `fidl_offset_v1:"0"`
+	_          struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	ValueBytes uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpMaxSegmentRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpMaxSegmentRequest{})
@@ -5267,8 +5267,8 @@
 }
 
 type streamSocketWithCtxSetTcpMaxSegmentResponse struct {
-	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketSetTcpMaxSegmentResult `fidl_offset_v1:"0"`
+	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketSetTcpMaxSegmentResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpMaxSegmentResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpMaxSegmentResponse{})
@@ -5278,8 +5278,8 @@
 }
 
 type streamSocketWithCtxGetTcpMaxSegmentResponse struct {
-	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketGetTcpMaxSegmentResult `fidl_offset_v1:"0"`
+	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketGetTcpMaxSegmentResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetTcpMaxSegmentResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetTcpMaxSegmentResponse{})
@@ -5289,8 +5289,8 @@
 }
 
 type streamSocketWithCtxSetTcpCorkRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpCorkRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpCorkRequest{})
@@ -5300,8 +5300,8 @@
 }
 
 type streamSocketWithCtxSetTcpCorkResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketSetTcpCorkResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketSetTcpCorkResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpCorkResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpCorkResponse{})
@@ -5311,8 +5311,8 @@
 }
 
 type streamSocketWithCtxGetTcpCorkResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketGetTcpCorkResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketGetTcpCorkResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetTcpCorkResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetTcpCorkResponse{})
@@ -5322,8 +5322,8 @@
 }
 
 type streamSocketWithCtxSetTcpKeepAliveIdleRequest struct {
-	_         struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	ValueSecs uint32   `fidl_offset_v1:"0"`
+	_         struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	ValueSecs uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpKeepAliveIdleRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpKeepAliveIdleRequest{})
@@ -5333,8 +5333,8 @@
 }
 
 type streamSocketWithCtxSetTcpKeepAliveIdleResponse struct {
-	_      struct{}                              `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketSetTcpKeepAliveIdleResult `fidl_offset_v1:"0"`
+	_      struct{}                              `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketSetTcpKeepAliveIdleResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpKeepAliveIdleResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpKeepAliveIdleResponse{})
@@ -5344,8 +5344,8 @@
 }
 
 type streamSocketWithCtxGetTcpKeepAliveIdleResponse struct {
-	_      struct{}                              `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketGetTcpKeepAliveIdleResult `fidl_offset_v1:"0"`
+	_      struct{}                              `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketGetTcpKeepAliveIdleResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetTcpKeepAliveIdleResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetTcpKeepAliveIdleResponse{})
@@ -5355,8 +5355,8 @@
 }
 
 type streamSocketWithCtxSetTcpKeepAliveIntervalRequest struct {
-	_         struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	ValueSecs uint32   `fidl_offset_v1:"0"`
+	_         struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	ValueSecs uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpKeepAliveIntervalRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpKeepAliveIntervalRequest{})
@@ -5366,8 +5366,8 @@
 }
 
 type streamSocketWithCtxSetTcpKeepAliveIntervalResponse struct {
-	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketSetTcpKeepAliveIntervalResult `fidl_offset_v1:"0"`
+	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketSetTcpKeepAliveIntervalResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpKeepAliveIntervalResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpKeepAliveIntervalResponse{})
@@ -5377,8 +5377,8 @@
 }
 
 type streamSocketWithCtxGetTcpKeepAliveIntervalResponse struct {
-	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketGetTcpKeepAliveIntervalResult `fidl_offset_v1:"0"`
+	_      struct{}                                  `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketGetTcpKeepAliveIntervalResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetTcpKeepAliveIntervalResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetTcpKeepAliveIntervalResponse{})
@@ -5388,8 +5388,8 @@
 }
 
 type streamSocketWithCtxSetTcpKeepAliveCountRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value uint32   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpKeepAliveCountRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpKeepAliveCountRequest{})
@@ -5399,8 +5399,8 @@
 }
 
 type streamSocketWithCtxSetTcpKeepAliveCountResponse struct {
-	_      struct{}                               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketSetTcpKeepAliveCountResult `fidl_offset_v1:"0"`
+	_      struct{}                               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketSetTcpKeepAliveCountResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpKeepAliveCountResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpKeepAliveCountResponse{})
@@ -5410,8 +5410,8 @@
 }
 
 type streamSocketWithCtxGetTcpKeepAliveCountResponse struct {
-	_      struct{}                               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketGetTcpKeepAliveCountResult `fidl_offset_v1:"0"`
+	_      struct{}                               `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketGetTcpKeepAliveCountResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetTcpKeepAliveCountResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetTcpKeepAliveCountResponse{})
@@ -5421,8 +5421,8 @@
 }
 
 type streamSocketWithCtxSetTcpSynCountRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value uint32   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpSynCountRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpSynCountRequest{})
@@ -5432,8 +5432,8 @@
 }
 
 type streamSocketWithCtxSetTcpSynCountResponse struct {
-	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketSetTcpSynCountResult `fidl_offset_v1:"0"`
+	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketSetTcpSynCountResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpSynCountResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpSynCountResponse{})
@@ -5443,8 +5443,8 @@
 }
 
 type streamSocketWithCtxGetTcpSynCountResponse struct {
-	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketGetTcpSynCountResult `fidl_offset_v1:"0"`
+	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketGetTcpSynCountResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetTcpSynCountResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetTcpSynCountResponse{})
@@ -5454,8 +5454,8 @@
 }
 
 type streamSocketWithCtxSetTcpLingerRequest struct {
-	_         struct{}       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	ValueSecs OptionalUint32 `fidl_offset_v1:"0"`
+	_         struct{}       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	ValueSecs OptionalUint32 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpLingerRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpLingerRequest{})
@@ -5465,8 +5465,8 @@
 }
 
 type streamSocketWithCtxSetTcpLingerResponse struct {
-	_      struct{}                       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketSetTcpLingerResult `fidl_offset_v1:"0"`
+	_      struct{}                       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketSetTcpLingerResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpLingerResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpLingerResponse{})
@@ -5476,8 +5476,8 @@
 }
 
 type streamSocketWithCtxGetTcpLingerResponse struct {
-	_      struct{}                       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketGetTcpLingerResult `fidl_offset_v1:"0"`
+	_      struct{}                       `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketGetTcpLingerResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetTcpLingerResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetTcpLingerResponse{})
@@ -5487,8 +5487,8 @@
 }
 
 type streamSocketWithCtxSetTcpDeferAcceptRequest struct {
-	_         struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	ValueSecs uint32   `fidl_offset_v1:"0"`
+	_         struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	ValueSecs uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpDeferAcceptRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpDeferAcceptRequest{})
@@ -5498,8 +5498,8 @@
 }
 
 type streamSocketWithCtxSetTcpDeferAcceptResponse struct {
-	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketSetTcpDeferAcceptResult `fidl_offset_v1:"0"`
+	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketSetTcpDeferAcceptResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpDeferAcceptResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpDeferAcceptResponse{})
@@ -5509,8 +5509,8 @@
 }
 
 type streamSocketWithCtxGetTcpDeferAcceptResponse struct {
-	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketGetTcpDeferAcceptResult `fidl_offset_v1:"0"`
+	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketGetTcpDeferAcceptResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetTcpDeferAcceptResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetTcpDeferAcceptResponse{})
@@ -5520,8 +5520,8 @@
 }
 
 type streamSocketWithCtxSetTcpWindowClampRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value uint32   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpWindowClampRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpWindowClampRequest{})
@@ -5531,8 +5531,8 @@
 }
 
 type streamSocketWithCtxSetTcpWindowClampResponse struct {
-	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketSetTcpWindowClampResult `fidl_offset_v1:"0"`
+	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketSetTcpWindowClampResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpWindowClampResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpWindowClampResponse{})
@@ -5542,8 +5542,8 @@
 }
 
 type streamSocketWithCtxGetTcpWindowClampResponse struct {
-	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketGetTcpWindowClampResult `fidl_offset_v1:"0"`
+	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketGetTcpWindowClampResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetTcpWindowClampResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetTcpWindowClampResponse{})
@@ -5553,8 +5553,8 @@
 }
 
 type streamSocketWithCtxGetTcpInfoResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketGetTcpInfoResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketGetTcpInfoResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetTcpInfoResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetTcpInfoResponse{})
@@ -5564,8 +5564,8 @@
 }
 
 type streamSocketWithCtxSetTcpQuickAckRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value bool     `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value bool     `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpQuickAckRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpQuickAckRequest{})
@@ -5575,8 +5575,8 @@
 }
 
 type streamSocketWithCtxSetTcpQuickAckResponse struct {
-	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketSetTcpQuickAckResult `fidl_offset_v1:"0"`
+	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketSetTcpQuickAckResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpQuickAckResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpQuickAckResponse{})
@@ -5586,8 +5586,8 @@
 }
 
 type streamSocketWithCtxGetTcpQuickAckResponse struct {
-	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketGetTcpQuickAckResult `fidl_offset_v1:"0"`
+	_      struct{}                         `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketGetTcpQuickAckResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetTcpQuickAckResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetTcpQuickAckResponse{})
@@ -5597,8 +5597,8 @@
 }
 
 type streamSocketWithCtxSetTcpCongestionRequest struct {
-	_     struct{}             `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Value TcpCongestionControl `fidl_offset_v1:"0"`
+	_     struct{}             `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Value TcpCongestionControl `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpCongestionRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpCongestionRequest{})
@@ -5608,8 +5608,8 @@
 }
 
 type streamSocketWithCtxSetTcpCongestionResponse struct {
-	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketSetTcpCongestionResult `fidl_offset_v1:"0"`
+	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketSetTcpCongestionResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpCongestionResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpCongestionResponse{})
@@ -5619,8 +5619,8 @@
 }
 
 type streamSocketWithCtxGetTcpCongestionResponse struct {
-	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketGetTcpCongestionResult `fidl_offset_v1:"0"`
+	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketGetTcpCongestionResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetTcpCongestionResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetTcpCongestionResponse{})
@@ -5630,8 +5630,8 @@
 }
 
 type streamSocketWithCtxSetTcpUserTimeoutRequest struct {
-	_           struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	ValueMillis uint32   `fidl_offset_v1:"0"`
+	_           struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	ValueMillis uint32   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpUserTimeoutRequest = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpUserTimeoutRequest{})
@@ -5641,8 +5641,8 @@
 }
 
 type streamSocketWithCtxSetTcpUserTimeoutResponse struct {
-	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketSetTcpUserTimeoutResult `fidl_offset_v1:"0"`
+	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketSetTcpUserTimeoutResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxSetTcpUserTimeoutResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxSetTcpUserTimeoutResponse{})
@@ -5652,8 +5652,8 @@
 }
 
 type streamSocketWithCtxGetTcpUserTimeoutResponse struct {
-	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result StreamSocketGetTcpUserTimeoutResult `fidl_offset_v1:"0"`
+	_      struct{}                            `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result StreamSocketGetTcpUserTimeoutResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mstreamSocketWithCtxGetTcpUserTimeoutResponse = _bindings.CreateLazyMarshaler(streamSocketWithCtxGetTcpUserTimeoutResponse{})
@@ -5663,9 +5663,9 @@
 }
 
 type providerWithCtxStreamSocketRequest struct {
-	_      struct{}             `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Domain Domain               `fidl_offset_v1:"0"`
-	Proto  StreamSocketProtocol `fidl_offset_v1:"4"`
+	_      struct{}             `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Domain Domain               `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Proto  StreamSocketProtocol `fidl_offset_v1:"4" fidl_offset_v2:"4"`
 }
 
 var _mproviderWithCtxStreamSocketRequest = _bindings.CreateLazyMarshaler(providerWithCtxStreamSocketRequest{})
@@ -5675,8 +5675,8 @@
 }
 
 type providerWithCtxStreamSocketResponse struct {
-	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result ProviderStreamSocketResult `fidl_offset_v1:"0"`
+	_      struct{}                   `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result ProviderStreamSocketResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mproviderWithCtxStreamSocketResponse = _bindings.CreateLazyMarshaler(providerWithCtxStreamSocketResponse{})
@@ -5686,9 +5686,9 @@
 }
 
 type providerWithCtxDatagramSocketRequest struct {
-	_      struct{}               `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Domain Domain                 `fidl_offset_v1:"0"`
-	Proto  DatagramSocketProtocol `fidl_offset_v1:"4"`
+	_      struct{}               `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Domain Domain                 `fidl_offset_v1:"0" fidl_offset_v2:"0"`
+	Proto  DatagramSocketProtocol `fidl_offset_v1:"4" fidl_offset_v2:"4"`
 }
 
 var _mproviderWithCtxDatagramSocketRequest = _bindings.CreateLazyMarshaler(providerWithCtxDatagramSocketRequest{})
@@ -5698,8 +5698,8 @@
 }
 
 type providerWithCtxDatagramSocketResponse struct {
-	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result ProviderDatagramSocketResult `fidl_offset_v1:"0"`
+	_      struct{}                     `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result ProviderDatagramSocketResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mproviderWithCtxDatagramSocketResponse = _bindings.CreateLazyMarshaler(providerWithCtxDatagramSocketResponse{})
@@ -5709,8 +5709,8 @@
 }
 
 type providerWithCtxInterfaceIndexToNameRequest struct {
-	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8"`
-	Index uint64   `fidl_offset_v1:"0"`
+	_     struct{} `fidl:"s" fidl_size_v1:"8" fidl_alignment_v1:"8" fidl_size_v2:"8" fidl_alignment_v2:"8"`
+	Index uint64   `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mproviderWithCtxInterfaceIndexToNameRequest = _bindings.CreateLazyMarshaler(providerWithCtxInterfaceIndexToNameRequest{})
@@ -5720,8 +5720,8 @@
 }
 
 type providerWithCtxInterfaceIndexToNameResponse struct {
-	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result ProviderInterfaceIndexToNameResult `fidl_offset_v1:"0"`
+	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result ProviderInterfaceIndexToNameResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mproviderWithCtxInterfaceIndexToNameResponse = _bindings.CreateLazyMarshaler(providerWithCtxInterfaceIndexToNameResponse{})
@@ -5731,8 +5731,8 @@
 }
 
 type providerWithCtxInterfaceNameToIndexRequest struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Name string   `fidl_offset_v1:"0" fidl_bounds:"15"`
+	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Name string   `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"15"`
 }
 
 var _mproviderWithCtxInterfaceNameToIndexRequest = _bindings.CreateLazyMarshaler(providerWithCtxInterfaceNameToIndexRequest{})
@@ -5742,8 +5742,8 @@
 }
 
 type providerWithCtxInterfaceNameToIndexResponse struct {
-	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result ProviderInterfaceNameToIndexResult `fidl_offset_v1:"0"`
+	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result ProviderInterfaceNameToIndexResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mproviderWithCtxInterfaceNameToIndexResponse = _bindings.CreateLazyMarshaler(providerWithCtxInterfaceNameToIndexResponse{})
@@ -5753,8 +5753,8 @@
 }
 
 type providerWithCtxInterfaceNameToFlagsRequest struct {
-	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Name string   `fidl_offset_v1:"0" fidl_bounds:"15"`
+	_    struct{} `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Name string   `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:"15"`
 }
 
 var _mproviderWithCtxInterfaceNameToFlagsRequest = _bindings.CreateLazyMarshaler(providerWithCtxInterfaceNameToFlagsRequest{})
@@ -5764,8 +5764,8 @@
 }
 
 type providerWithCtxInterfaceNameToFlagsResponse struct {
-	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8"`
-	Result ProviderInterfaceNameToFlagsResult `fidl_offset_v1:"0"`
+	_      struct{}                           `fidl:"s" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Result ProviderInterfaceNameToFlagsResult `fidl_offset_v1:"0" fidl_offset_v2:"0"`
 }
 
 var _mproviderWithCtxInterfaceNameToFlagsResponse = _bindings.CreateLazyMarshaler(providerWithCtxInterfaceNameToFlagsResponse{})
@@ -5775,8 +5775,8 @@
 }
 
 type providerWithCtxGetInterfaceAddressesResponse struct {
-	_          struct{}             `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8"`
-	Interfaces []InterfaceAddresses `fidl_offset_v1:"0" fidl_bounds:""`
+	_          struct{}             `fidl:"s" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8"`
+	Interfaces []InterfaceAddresses `fidl_offset_v1:"0" fidl_offset_v2:"0" fidl_bounds:""`
 }
 
 var _mproviderWithCtxGetInterfaceAddressesResponse = _bindings.CreateLazyMarshaler(providerWithCtxGetInterfaceAddressesResponse{})
@@ -5793,7 +5793,7 @@
 )
 
 type BaseSocketBindResult struct {
-	I_baseSocketBindResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketBindResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                  BaseSocketBindResponse `fidl_ordinal:"1"`
 	Err                       fuchsiaposix.Errno     `fidl_ordinal:"2"`
 }
@@ -5849,7 +5849,7 @@
 )
 
 type BaseSocketConnectResult struct {
-	I_baseSocketConnectResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketConnectResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                     BaseSocketConnectResponse `fidl_ordinal:"1"`
 	Err                          fuchsiaposix.Errno        `fidl_ordinal:"2"`
 }
@@ -5905,7 +5905,7 @@
 )
 
 type BaseSocketDisconnectResult struct {
-	I_baseSocketDisconnectResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketDisconnectResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                        BaseSocketDisconnectResponse `fidl_ordinal:"1"`
 	Err                             fuchsiaposix.Errno           `fidl_ordinal:"2"`
 }
@@ -5961,7 +5961,7 @@
 )
 
 type BaseSocketGetSockNameResult struct {
-	I_baseSocketGetSockNameResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetSockNameResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                         BaseSocketGetSockNameResponse `fidl_ordinal:"1"`
 	Err                              fuchsiaposix.Errno            `fidl_ordinal:"2"`
 }
@@ -6017,7 +6017,7 @@
 )
 
 type BaseSocketGetPeerNameResult struct {
-	I_baseSocketGetPeerNameResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetPeerNameResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                         BaseSocketGetPeerNameResponse `fidl_ordinal:"1"`
 	Err                              fuchsiaposix.Errno            `fidl_ordinal:"2"`
 }
@@ -6073,7 +6073,7 @@
 )
 
 type BaseSocketShutdown2Result struct {
-	I_baseSocketShutdown2ResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketShutdown2ResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                       BaseSocketShutdown2Response `fidl_ordinal:"1"`
 	Err                            fuchsiaposix.Errno          `fidl_ordinal:"2"`
 }
@@ -6129,7 +6129,7 @@
 )
 
 type BaseSocketSetReuseAddressResult struct {
-	I_baseSocketSetReuseAddressResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetReuseAddressResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                             BaseSocketSetReuseAddressResponse `fidl_ordinal:"1"`
 	Err                                  fuchsiaposix.Errno                `fidl_ordinal:"2"`
 }
@@ -6185,7 +6185,7 @@
 )
 
 type BaseSocketGetReuseAddressResult struct {
-	I_baseSocketGetReuseAddressResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetReuseAddressResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                             BaseSocketGetReuseAddressResponse `fidl_ordinal:"1"`
 	Err                                  fuchsiaposix.Errno                `fidl_ordinal:"2"`
 }
@@ -6241,7 +6241,7 @@
 )
 
 type BaseSocketGetErrorResult struct {
-	I_baseSocketGetErrorResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetErrorResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                      BaseSocketGetErrorResponse `fidl_ordinal:"1"`
 	Err                           fuchsiaposix.Errno         `fidl_ordinal:"2"`
 }
@@ -6297,7 +6297,7 @@
 )
 
 type BaseSocketSetBroadcastResult struct {
-	I_baseSocketSetBroadcastResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetBroadcastResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                          BaseSocketSetBroadcastResponse `fidl_ordinal:"1"`
 	Err                               fuchsiaposix.Errno             `fidl_ordinal:"2"`
 }
@@ -6353,7 +6353,7 @@
 )
 
 type BaseSocketGetBroadcastResult struct {
-	I_baseSocketGetBroadcastResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetBroadcastResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                          BaseSocketGetBroadcastResponse `fidl_ordinal:"1"`
 	Err                               fuchsiaposix.Errno             `fidl_ordinal:"2"`
 }
@@ -6409,7 +6409,7 @@
 )
 
 type BaseSocketSetSendBufferResult struct {
-	I_baseSocketSetSendBufferResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetSendBufferResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                           BaseSocketSetSendBufferResponse `fidl_ordinal:"1"`
 	Err                                fuchsiaposix.Errno              `fidl_ordinal:"2"`
 }
@@ -6465,7 +6465,7 @@
 )
 
 type BaseSocketGetSendBufferResult struct {
-	I_baseSocketGetSendBufferResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetSendBufferResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                           BaseSocketGetSendBufferResponse `fidl_ordinal:"1"`
 	Err                                fuchsiaposix.Errno              `fidl_ordinal:"2"`
 }
@@ -6521,7 +6521,7 @@
 )
 
 type BaseSocketSetReceiveBufferResult struct {
-	I_baseSocketSetReceiveBufferResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetReceiveBufferResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                              BaseSocketSetReceiveBufferResponse `fidl_ordinal:"1"`
 	Err                                   fuchsiaposix.Errno                 `fidl_ordinal:"2"`
 }
@@ -6577,7 +6577,7 @@
 )
 
 type BaseSocketGetReceiveBufferResult struct {
-	I_baseSocketGetReceiveBufferResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetReceiveBufferResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                              BaseSocketGetReceiveBufferResponse `fidl_ordinal:"1"`
 	Err                                   fuchsiaposix.Errno                 `fidl_ordinal:"2"`
 }
@@ -6633,7 +6633,7 @@
 )
 
 type BaseSocketSetKeepAliveResult struct {
-	I_baseSocketSetKeepAliveResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetKeepAliveResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                          BaseSocketSetKeepAliveResponse `fidl_ordinal:"1"`
 	Err                               fuchsiaposix.Errno             `fidl_ordinal:"2"`
 }
@@ -6689,7 +6689,7 @@
 )
 
 type BaseSocketGetKeepAliveResult struct {
-	I_baseSocketGetKeepAliveResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetKeepAliveResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                          BaseSocketGetKeepAliveResponse `fidl_ordinal:"1"`
 	Err                               fuchsiaposix.Errno             `fidl_ordinal:"2"`
 }
@@ -6745,7 +6745,7 @@
 )
 
 type BaseSocketSetOutOfBandInlineResult struct {
-	I_baseSocketSetOutOfBandInlineResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetOutOfBandInlineResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                BaseSocketSetOutOfBandInlineResponse `fidl_ordinal:"1"`
 	Err                                     fuchsiaposix.Errno                   `fidl_ordinal:"2"`
 }
@@ -6801,7 +6801,7 @@
 )
 
 type BaseSocketGetOutOfBandInlineResult struct {
-	I_baseSocketGetOutOfBandInlineResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetOutOfBandInlineResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                BaseSocketGetOutOfBandInlineResponse `fidl_ordinal:"1"`
 	Err                                     fuchsiaposix.Errno                   `fidl_ordinal:"2"`
 }
@@ -6857,7 +6857,7 @@
 )
 
 type BaseSocketSetNoCheckResult struct {
-	I_baseSocketSetNoCheckResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetNoCheckResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                        BaseSocketSetNoCheckResponse `fidl_ordinal:"1"`
 	Err                             fuchsiaposix.Errno           `fidl_ordinal:"2"`
 }
@@ -6913,7 +6913,7 @@
 )
 
 type BaseSocketGetNoCheckResult struct {
-	I_baseSocketGetNoCheckResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetNoCheckResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                        BaseSocketGetNoCheckResponse `fidl_ordinal:"1"`
 	Err                             fuchsiaposix.Errno           `fidl_ordinal:"2"`
 }
@@ -6969,7 +6969,7 @@
 )
 
 type BaseSocketSetLingerResult struct {
-	I_baseSocketSetLingerResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetLingerResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                       BaseSocketSetLingerResponse `fidl_ordinal:"1"`
 	Err                            fuchsiaposix.Errno          `fidl_ordinal:"2"`
 }
@@ -7025,7 +7025,7 @@
 )
 
 type BaseSocketGetLingerResult struct {
-	I_baseSocketGetLingerResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetLingerResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                       BaseSocketGetLingerResponse `fidl_ordinal:"1"`
 	Err                            fuchsiaposix.Errno          `fidl_ordinal:"2"`
 }
@@ -7081,7 +7081,7 @@
 )
 
 type BaseSocketSetReusePortResult struct {
-	I_baseSocketSetReusePortResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetReusePortResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                          BaseSocketSetReusePortResponse `fidl_ordinal:"1"`
 	Err                               fuchsiaposix.Errno             `fidl_ordinal:"2"`
 }
@@ -7137,7 +7137,7 @@
 )
 
 type BaseSocketGetReusePortResult struct {
-	I_baseSocketGetReusePortResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetReusePortResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                          BaseSocketGetReusePortResponse `fidl_ordinal:"1"`
 	Err                               fuchsiaposix.Errno             `fidl_ordinal:"2"`
 }
@@ -7193,7 +7193,7 @@
 )
 
 type BaseSocketGetAcceptConnResult struct {
-	I_baseSocketGetAcceptConnResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetAcceptConnResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                           BaseSocketGetAcceptConnResponse `fidl_ordinal:"1"`
 	Err                                fuchsiaposix.Errno              `fidl_ordinal:"2"`
 }
@@ -7249,7 +7249,7 @@
 )
 
 type BaseSocketSetBindToDeviceResult struct {
-	I_baseSocketSetBindToDeviceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetBindToDeviceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                             BaseSocketSetBindToDeviceResponse `fidl_ordinal:"1"`
 	Err                                  fuchsiaposix.Errno                `fidl_ordinal:"2"`
 }
@@ -7305,7 +7305,7 @@
 )
 
 type BaseSocketGetBindToDeviceResult struct {
-	I_baseSocketGetBindToDeviceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetBindToDeviceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                             BaseSocketGetBindToDeviceResponse `fidl_ordinal:"1"`
 	Err                                  fuchsiaposix.Errno                `fidl_ordinal:"2"`
 }
@@ -7361,7 +7361,7 @@
 )
 
 type BaseSocketSetTimestampResult struct {
-	I_baseSocketSetTimestampResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetTimestampResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                          BaseSocketSetTimestampResponse `fidl_ordinal:"1"`
 	Err                               fuchsiaposix.Errno             `fidl_ordinal:"2"`
 }
@@ -7417,7 +7417,7 @@
 )
 
 type BaseSocketGetTimestampResult struct {
-	I_baseSocketGetTimestampResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetTimestampResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                          BaseSocketGetTimestampResponse `fidl_ordinal:"1"`
 	Err                               fuchsiaposix.Errno             `fidl_ordinal:"2"`
 }
@@ -7473,7 +7473,7 @@
 )
 
 type BaseSocketSetIpTypeOfServiceResult struct {
-	I_baseSocketSetIpTypeOfServiceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetIpTypeOfServiceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                BaseSocketSetIpTypeOfServiceResponse `fidl_ordinal:"1"`
 	Err                                     fuchsiaposix.Errno                   `fidl_ordinal:"2"`
 }
@@ -7529,7 +7529,7 @@
 )
 
 type BaseSocketGetIpTypeOfServiceResult struct {
-	I_baseSocketGetIpTypeOfServiceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetIpTypeOfServiceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                BaseSocketGetIpTypeOfServiceResponse `fidl_ordinal:"1"`
 	Err                                     fuchsiaposix.Errno                   `fidl_ordinal:"2"`
 }
@@ -7585,7 +7585,7 @@
 )
 
 type BaseSocketSetIpTtlResult struct {
-	I_baseSocketSetIpTtlResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetIpTtlResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                      BaseSocketSetIpTtlResponse `fidl_ordinal:"1"`
 	Err                           fuchsiaposix.Errno         `fidl_ordinal:"2"`
 }
@@ -7641,7 +7641,7 @@
 )
 
 type BaseSocketGetIpTtlResult struct {
-	I_baseSocketGetIpTtlResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetIpTtlResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                      BaseSocketGetIpTtlResponse `fidl_ordinal:"1"`
 	Err                           fuchsiaposix.Errno         `fidl_ordinal:"2"`
 }
@@ -7697,7 +7697,7 @@
 )
 
 type BaseSocketSetIpPacketInfoResult struct {
-	I_baseSocketSetIpPacketInfoResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetIpPacketInfoResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                             BaseSocketSetIpPacketInfoResponse `fidl_ordinal:"1"`
 	Err                                  fuchsiaposix.Errno                `fidl_ordinal:"2"`
 }
@@ -7753,7 +7753,7 @@
 )
 
 type BaseSocketGetIpPacketInfoResult struct {
-	I_baseSocketGetIpPacketInfoResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetIpPacketInfoResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                             BaseSocketGetIpPacketInfoResponse `fidl_ordinal:"1"`
 	Err                                  fuchsiaposix.Errno                `fidl_ordinal:"2"`
 }
@@ -7809,7 +7809,7 @@
 )
 
 type BaseSocketSetIpReceiveTypeOfServiceResult struct {
-	I_baseSocketSetIpReceiveTypeOfServiceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetIpReceiveTypeOfServiceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                       BaseSocketSetIpReceiveTypeOfServiceResponse `fidl_ordinal:"1"`
 	Err                                            fuchsiaposix.Errno                          `fidl_ordinal:"2"`
 }
@@ -7865,7 +7865,7 @@
 )
 
 type BaseSocketGetIpReceiveTypeOfServiceResult struct {
-	I_baseSocketGetIpReceiveTypeOfServiceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetIpReceiveTypeOfServiceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                       BaseSocketGetIpReceiveTypeOfServiceResponse `fidl_ordinal:"1"`
 	Err                                            fuchsiaposix.Errno                          `fidl_ordinal:"2"`
 }
@@ -7921,7 +7921,7 @@
 )
 
 type BaseSocketSetIpMulticastInterfaceResult struct {
-	I_baseSocketSetIpMulticastInterfaceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetIpMulticastInterfaceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                     BaseSocketSetIpMulticastInterfaceResponse `fidl_ordinal:"1"`
 	Err                                          fuchsiaposix.Errno                        `fidl_ordinal:"2"`
 }
@@ -7977,7 +7977,7 @@
 )
 
 type BaseSocketGetIpMulticastInterfaceResult struct {
-	I_baseSocketGetIpMulticastInterfaceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetIpMulticastInterfaceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                     BaseSocketGetIpMulticastInterfaceResponse `fidl_ordinal:"1"`
 	Err                                          fuchsiaposix.Errno                        `fidl_ordinal:"2"`
 }
@@ -8033,7 +8033,7 @@
 )
 
 type BaseSocketSetIpMulticastTtlResult struct {
-	I_baseSocketSetIpMulticastTtlResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetIpMulticastTtlResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                               BaseSocketSetIpMulticastTtlResponse `fidl_ordinal:"1"`
 	Err                                    fuchsiaposix.Errno                  `fidl_ordinal:"2"`
 }
@@ -8089,7 +8089,7 @@
 )
 
 type BaseSocketGetIpMulticastTtlResult struct {
-	I_baseSocketGetIpMulticastTtlResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetIpMulticastTtlResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                               BaseSocketGetIpMulticastTtlResponse `fidl_ordinal:"1"`
 	Err                                    fuchsiaposix.Errno                  `fidl_ordinal:"2"`
 }
@@ -8145,7 +8145,7 @@
 )
 
 type BaseSocketSetIpMulticastLoopbackResult struct {
-	I_baseSocketSetIpMulticastLoopbackResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetIpMulticastLoopbackResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                    BaseSocketSetIpMulticastLoopbackResponse `fidl_ordinal:"1"`
 	Err                                         fuchsiaposix.Errno                       `fidl_ordinal:"2"`
 }
@@ -8201,7 +8201,7 @@
 )
 
 type BaseSocketGetIpMulticastLoopbackResult struct {
-	I_baseSocketGetIpMulticastLoopbackResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetIpMulticastLoopbackResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                    BaseSocketGetIpMulticastLoopbackResponse `fidl_ordinal:"1"`
 	Err                                         fuchsiaposix.Errno                       `fidl_ordinal:"2"`
 }
@@ -8257,7 +8257,7 @@
 )
 
 type BaseSocketAddIpMembershipResult struct {
-	I_baseSocketAddIpMembershipResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketAddIpMembershipResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                             BaseSocketAddIpMembershipResponse `fidl_ordinal:"1"`
 	Err                                  fuchsiaposix.Errno                `fidl_ordinal:"2"`
 }
@@ -8313,7 +8313,7 @@
 )
 
 type BaseSocketDropIpMembershipResult struct {
-	I_baseSocketDropIpMembershipResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketDropIpMembershipResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                              BaseSocketDropIpMembershipResponse `fidl_ordinal:"1"`
 	Err                                   fuchsiaposix.Errno                 `fidl_ordinal:"2"`
 }
@@ -8369,7 +8369,7 @@
 )
 
 type BaseSocketAddIpv6MembershipResult struct {
-	I_baseSocketAddIpv6MembershipResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketAddIpv6MembershipResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                               BaseSocketAddIpv6MembershipResponse `fidl_ordinal:"1"`
 	Err                                    fuchsiaposix.Errno                  `fidl_ordinal:"2"`
 }
@@ -8425,7 +8425,7 @@
 )
 
 type BaseSocketDropIpv6MembershipResult struct {
-	I_baseSocketDropIpv6MembershipResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketDropIpv6MembershipResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                BaseSocketDropIpv6MembershipResponse `fidl_ordinal:"1"`
 	Err                                     fuchsiaposix.Errno                   `fidl_ordinal:"2"`
 }
@@ -8481,7 +8481,7 @@
 )
 
 type BaseSocketSetIpv6MulticastInterfaceResult struct {
-	I_baseSocketSetIpv6MulticastInterfaceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetIpv6MulticastInterfaceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                       BaseSocketSetIpv6MulticastInterfaceResponse `fidl_ordinal:"1"`
 	Err                                            fuchsiaposix.Errno                          `fidl_ordinal:"2"`
 }
@@ -8537,7 +8537,7 @@
 )
 
 type BaseSocketGetIpv6MulticastInterfaceResult struct {
-	I_baseSocketGetIpv6MulticastInterfaceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetIpv6MulticastInterfaceResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                       BaseSocketGetIpv6MulticastInterfaceResponse `fidl_ordinal:"1"`
 	Err                                            fuchsiaposix.Errno                          `fidl_ordinal:"2"`
 }
@@ -8593,7 +8593,7 @@
 )
 
 type BaseSocketSetIpv6MulticastHopsResult struct {
-	I_baseSocketSetIpv6MulticastHopsResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetIpv6MulticastHopsResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                  BaseSocketSetIpv6MulticastHopsResponse `fidl_ordinal:"1"`
 	Err                                       fuchsiaposix.Errno                     `fidl_ordinal:"2"`
 }
@@ -8649,7 +8649,7 @@
 )
 
 type BaseSocketGetIpv6MulticastHopsResult struct {
-	I_baseSocketGetIpv6MulticastHopsResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetIpv6MulticastHopsResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                  BaseSocketGetIpv6MulticastHopsResponse `fidl_ordinal:"1"`
 	Err                                       fuchsiaposix.Errno                     `fidl_ordinal:"2"`
 }
@@ -8705,7 +8705,7 @@
 )
 
 type BaseSocketSetIpv6MulticastLoopbackResult struct {
-	I_baseSocketSetIpv6MulticastLoopbackResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetIpv6MulticastLoopbackResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                      BaseSocketSetIpv6MulticastLoopbackResponse `fidl_ordinal:"1"`
 	Err                                           fuchsiaposix.Errno                         `fidl_ordinal:"2"`
 }
@@ -8761,7 +8761,7 @@
 )
 
 type BaseSocketGetIpv6MulticastLoopbackResult struct {
-	I_baseSocketGetIpv6MulticastLoopbackResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetIpv6MulticastLoopbackResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                      BaseSocketGetIpv6MulticastLoopbackResponse `fidl_ordinal:"1"`
 	Err                                           fuchsiaposix.Errno                         `fidl_ordinal:"2"`
 }
@@ -8817,7 +8817,7 @@
 )
 
 type BaseSocketSetIpv6OnlyResult struct {
-	I_baseSocketSetIpv6OnlyResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetIpv6OnlyResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                         BaseSocketSetIpv6OnlyResponse `fidl_ordinal:"1"`
 	Err                              fuchsiaposix.Errno            `fidl_ordinal:"2"`
 }
@@ -8873,7 +8873,7 @@
 )
 
 type BaseSocketGetIpv6OnlyResult struct {
-	I_baseSocketGetIpv6OnlyResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetIpv6OnlyResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                         BaseSocketGetIpv6OnlyResponse `fidl_ordinal:"1"`
 	Err                              fuchsiaposix.Errno            `fidl_ordinal:"2"`
 }
@@ -8929,7 +8929,7 @@
 )
 
 type BaseSocketSetIpv6ReceiveTrafficClassResult struct {
-	I_baseSocketSetIpv6ReceiveTrafficClassResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetIpv6ReceiveTrafficClassResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                        BaseSocketSetIpv6ReceiveTrafficClassResponse `fidl_ordinal:"1"`
 	Err                                             fuchsiaposix.Errno                           `fidl_ordinal:"2"`
 }
@@ -8985,7 +8985,7 @@
 )
 
 type BaseSocketGetIpv6ReceiveTrafficClassResult struct {
-	I_baseSocketGetIpv6ReceiveTrafficClassResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetIpv6ReceiveTrafficClassResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                        BaseSocketGetIpv6ReceiveTrafficClassResponse `fidl_ordinal:"1"`
 	Err                                             fuchsiaposix.Errno                           `fidl_ordinal:"2"`
 }
@@ -9041,7 +9041,7 @@
 )
 
 type BaseSocketSetIpv6TrafficClassResult struct {
-	I_baseSocketSetIpv6TrafficClassResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketSetIpv6TrafficClassResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                 BaseSocketSetIpv6TrafficClassResponse `fidl_ordinal:"1"`
 	Err                                      fuchsiaposix.Errno                    `fidl_ordinal:"2"`
 }
@@ -9097,7 +9097,7 @@
 )
 
 type BaseSocketGetIpv6TrafficClassResult struct {
-	I_baseSocketGetIpv6TrafficClassResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_baseSocketGetIpv6TrafficClassResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                 BaseSocketGetIpv6TrafficClassResponse `fidl_ordinal:"1"`
 	Err                                      fuchsiaposix.Errno                    `fidl_ordinal:"2"`
 }
@@ -9153,7 +9153,7 @@
 )
 
 type DatagramSocketShutdownResult struct {
-	I_datagramSocketShutdownResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_datagramSocketShutdownResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                          DatagramSocketShutdownResponse `fidl_ordinal:"1"`
 	Err                               fuchsiaposix.Errno             `fidl_ordinal:"2"`
 }
@@ -9209,7 +9209,7 @@
 )
 
 type DatagramSocketRecvMsgResult struct {
-	I_datagramSocketRecvMsgResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_datagramSocketRecvMsgResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                         DatagramSocketRecvMsgResponse `fidl_ordinal:"1"`
 	Err                              fuchsiaposix.Errno            `fidl_ordinal:"2"`
 }
@@ -9265,7 +9265,7 @@
 )
 
 type DatagramSocketSendMsgResult struct {
-	I_datagramSocketSendMsgResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_datagramSocketSendMsgResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                         DatagramSocketSendMsgResponse `fidl_ordinal:"1"`
 	Err                              fuchsiaposix.Errno            `fidl_ordinal:"2"`
 }
@@ -9321,7 +9321,7 @@
 )
 
 type DatagramSocketGetInfoResult struct {
-	I_datagramSocketGetInfoResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_datagramSocketGetInfoResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                         DatagramSocketGetInfoResponse `fidl_ordinal:"1"`
 	Err                              fuchsiaposix.Errno            `fidl_ordinal:"2"`
 }
@@ -9377,7 +9377,7 @@
 )
 
 type StreamSocketListenResult struct {
-	I_streamSocketListenResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketListenResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                      StreamSocketListenResponse `fidl_ordinal:"1"`
 	Err                           fuchsiaposix.Errno         `fidl_ordinal:"2"`
 }
@@ -9433,7 +9433,7 @@
 )
 
 type StreamSocketAcceptResult struct {
-	I_streamSocketAcceptResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"true"`
+	I_streamSocketAcceptResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"true"`
 	Response                      StreamSocketAcceptResponse `fidl_ordinal:"1"`
 	Err                           fuchsiaposix.Errno         `fidl_ordinal:"2"`
 }
@@ -9489,7 +9489,7 @@
 )
 
 type StreamSocketGetInfoResult struct {
-	I_streamSocketGetInfoResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketGetInfoResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                       StreamSocketGetInfoResponse `fidl_ordinal:"1"`
 	Err                            fuchsiaposix.Errno          `fidl_ordinal:"2"`
 }
@@ -9545,7 +9545,7 @@
 )
 
 type StreamSocketSetTcpNoDelayResult struct {
-	I_streamSocketSetTcpNoDelayResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketSetTcpNoDelayResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                             StreamSocketSetTcpNoDelayResponse `fidl_ordinal:"1"`
 	Err                                  fuchsiaposix.Errno                `fidl_ordinal:"2"`
 }
@@ -9601,7 +9601,7 @@
 )
 
 type StreamSocketGetTcpNoDelayResult struct {
-	I_streamSocketGetTcpNoDelayResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketGetTcpNoDelayResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                             StreamSocketGetTcpNoDelayResponse `fidl_ordinal:"1"`
 	Err                                  fuchsiaposix.Errno                `fidl_ordinal:"2"`
 }
@@ -9657,7 +9657,7 @@
 )
 
 type StreamSocketSetTcpMaxSegmentResult struct {
-	I_streamSocketSetTcpMaxSegmentResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketSetTcpMaxSegmentResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                StreamSocketSetTcpMaxSegmentResponse `fidl_ordinal:"1"`
 	Err                                     fuchsiaposix.Errno                   `fidl_ordinal:"2"`
 }
@@ -9713,7 +9713,7 @@
 )
 
 type StreamSocketGetTcpMaxSegmentResult struct {
-	I_streamSocketGetTcpMaxSegmentResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketGetTcpMaxSegmentResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                StreamSocketGetTcpMaxSegmentResponse `fidl_ordinal:"1"`
 	Err                                     fuchsiaposix.Errno                   `fidl_ordinal:"2"`
 }
@@ -9769,7 +9769,7 @@
 )
 
 type StreamSocketSetTcpCorkResult struct {
-	I_streamSocketSetTcpCorkResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketSetTcpCorkResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                          StreamSocketSetTcpCorkResponse `fidl_ordinal:"1"`
 	Err                               fuchsiaposix.Errno             `fidl_ordinal:"2"`
 }
@@ -9825,7 +9825,7 @@
 )
 
 type StreamSocketGetTcpCorkResult struct {
-	I_streamSocketGetTcpCorkResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketGetTcpCorkResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                          StreamSocketGetTcpCorkResponse `fidl_ordinal:"1"`
 	Err                               fuchsiaposix.Errno             `fidl_ordinal:"2"`
 }
@@ -9881,7 +9881,7 @@
 )
 
 type StreamSocketSetTcpKeepAliveIdleResult struct {
-	I_streamSocketSetTcpKeepAliveIdleResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketSetTcpKeepAliveIdleResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                   StreamSocketSetTcpKeepAliveIdleResponse `fidl_ordinal:"1"`
 	Err                                        fuchsiaposix.Errno                      `fidl_ordinal:"2"`
 }
@@ -9937,7 +9937,7 @@
 )
 
 type StreamSocketGetTcpKeepAliveIdleResult struct {
-	I_streamSocketGetTcpKeepAliveIdleResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketGetTcpKeepAliveIdleResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                   StreamSocketGetTcpKeepAliveIdleResponse `fidl_ordinal:"1"`
 	Err                                        fuchsiaposix.Errno                      `fidl_ordinal:"2"`
 }
@@ -9993,7 +9993,7 @@
 )
 
 type StreamSocketSetTcpKeepAliveIntervalResult struct {
-	I_streamSocketSetTcpKeepAliveIntervalResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketSetTcpKeepAliveIntervalResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                       StreamSocketSetTcpKeepAliveIntervalResponse `fidl_ordinal:"1"`
 	Err                                            fuchsiaposix.Errno                          `fidl_ordinal:"2"`
 }
@@ -10049,7 +10049,7 @@
 )
 
 type StreamSocketGetTcpKeepAliveIntervalResult struct {
-	I_streamSocketGetTcpKeepAliveIntervalResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketGetTcpKeepAliveIntervalResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                       StreamSocketGetTcpKeepAliveIntervalResponse `fidl_ordinal:"1"`
 	Err                                            fuchsiaposix.Errno                          `fidl_ordinal:"2"`
 }
@@ -10105,7 +10105,7 @@
 )
 
 type StreamSocketSetTcpKeepAliveCountResult struct {
-	I_streamSocketSetTcpKeepAliveCountResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketSetTcpKeepAliveCountResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                    StreamSocketSetTcpKeepAliveCountResponse `fidl_ordinal:"1"`
 	Err                                         fuchsiaposix.Errno                       `fidl_ordinal:"2"`
 }
@@ -10161,7 +10161,7 @@
 )
 
 type StreamSocketGetTcpKeepAliveCountResult struct {
-	I_streamSocketGetTcpKeepAliveCountResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketGetTcpKeepAliveCountResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                    StreamSocketGetTcpKeepAliveCountResponse `fidl_ordinal:"1"`
 	Err                                         fuchsiaposix.Errno                       `fidl_ordinal:"2"`
 }
@@ -10217,7 +10217,7 @@
 )
 
 type StreamSocketSetTcpSynCountResult struct {
-	I_streamSocketSetTcpSynCountResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketSetTcpSynCountResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                              StreamSocketSetTcpSynCountResponse `fidl_ordinal:"1"`
 	Err                                   fuchsiaposix.Errno                 `fidl_ordinal:"2"`
 }
@@ -10273,7 +10273,7 @@
 )
 
 type StreamSocketGetTcpSynCountResult struct {
-	I_streamSocketGetTcpSynCountResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketGetTcpSynCountResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                              StreamSocketGetTcpSynCountResponse `fidl_ordinal:"1"`
 	Err                                   fuchsiaposix.Errno                 `fidl_ordinal:"2"`
 }
@@ -10329,7 +10329,7 @@
 )
 
 type StreamSocketSetTcpLingerResult struct {
-	I_streamSocketSetTcpLingerResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketSetTcpLingerResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                            StreamSocketSetTcpLingerResponse `fidl_ordinal:"1"`
 	Err                                 fuchsiaposix.Errno               `fidl_ordinal:"2"`
 }
@@ -10385,7 +10385,7 @@
 )
 
 type StreamSocketGetTcpLingerResult struct {
-	I_streamSocketGetTcpLingerResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketGetTcpLingerResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                            StreamSocketGetTcpLingerResponse `fidl_ordinal:"1"`
 	Err                                 fuchsiaposix.Errno               `fidl_ordinal:"2"`
 }
@@ -10441,7 +10441,7 @@
 )
 
 type StreamSocketSetTcpDeferAcceptResult struct {
-	I_streamSocketSetTcpDeferAcceptResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketSetTcpDeferAcceptResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                 StreamSocketSetTcpDeferAcceptResponse `fidl_ordinal:"1"`
 	Err                                      fuchsiaposix.Errno                    `fidl_ordinal:"2"`
 }
@@ -10497,7 +10497,7 @@
 )
 
 type StreamSocketGetTcpDeferAcceptResult struct {
-	I_streamSocketGetTcpDeferAcceptResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketGetTcpDeferAcceptResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                 StreamSocketGetTcpDeferAcceptResponse `fidl_ordinal:"1"`
 	Err                                      fuchsiaposix.Errno                    `fidl_ordinal:"2"`
 }
@@ -10553,7 +10553,7 @@
 )
 
 type StreamSocketSetTcpWindowClampResult struct {
-	I_streamSocketSetTcpWindowClampResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketSetTcpWindowClampResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                 StreamSocketSetTcpWindowClampResponse `fidl_ordinal:"1"`
 	Err                                      fuchsiaposix.Errno                    `fidl_ordinal:"2"`
 }
@@ -10609,7 +10609,7 @@
 )
 
 type StreamSocketGetTcpWindowClampResult struct {
-	I_streamSocketGetTcpWindowClampResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketGetTcpWindowClampResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                 StreamSocketGetTcpWindowClampResponse `fidl_ordinal:"1"`
 	Err                                      fuchsiaposix.Errno                    `fidl_ordinal:"2"`
 }
@@ -10665,7 +10665,7 @@
 )
 
 type StreamSocketGetTcpInfoResult struct {
-	I_streamSocketGetTcpInfoResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketGetTcpInfoResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                          StreamSocketGetTcpInfoResponse `fidl_ordinal:"1"`
 	Err                               fuchsiaposix.Errno             `fidl_ordinal:"2"`
 }
@@ -10721,7 +10721,7 @@
 )
 
 type StreamSocketSetTcpQuickAckResult struct {
-	I_streamSocketSetTcpQuickAckResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketSetTcpQuickAckResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                              StreamSocketSetTcpQuickAckResponse `fidl_ordinal:"1"`
 	Err                                   fuchsiaposix.Errno                 `fidl_ordinal:"2"`
 }
@@ -10777,7 +10777,7 @@
 )
 
 type StreamSocketGetTcpQuickAckResult struct {
-	I_streamSocketGetTcpQuickAckResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketGetTcpQuickAckResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                              StreamSocketGetTcpQuickAckResponse `fidl_ordinal:"1"`
 	Err                                   fuchsiaposix.Errno                 `fidl_ordinal:"2"`
 }
@@ -10833,7 +10833,7 @@
 )
 
 type StreamSocketSetTcpCongestionResult struct {
-	I_streamSocketSetTcpCongestionResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketSetTcpCongestionResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                StreamSocketSetTcpCongestionResponse `fidl_ordinal:"1"`
 	Err                                     fuchsiaposix.Errno                   `fidl_ordinal:"2"`
 }
@@ -10889,7 +10889,7 @@
 )
 
 type StreamSocketGetTcpCongestionResult struct {
-	I_streamSocketGetTcpCongestionResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketGetTcpCongestionResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                StreamSocketGetTcpCongestionResponse `fidl_ordinal:"1"`
 	Err                                     fuchsiaposix.Errno                   `fidl_ordinal:"2"`
 }
@@ -10945,7 +10945,7 @@
 )
 
 type StreamSocketSetTcpUserTimeoutResult struct {
-	I_streamSocketSetTcpUserTimeoutResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketSetTcpUserTimeoutResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                 StreamSocketSetTcpUserTimeoutResponse `fidl_ordinal:"1"`
 	Err                                      fuchsiaposix.Errno                    `fidl_ordinal:"2"`
 }
@@ -11001,7 +11001,7 @@
 )
 
 type StreamSocketGetTcpUserTimeoutResult struct {
-	I_streamSocketGetTcpUserTimeoutResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_streamSocketGetTcpUserTimeoutResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                 StreamSocketGetTcpUserTimeoutResponse `fidl_ordinal:"1"`
 	Err                                      fuchsiaposix.Errno                    `fidl_ordinal:"2"`
 }
@@ -11057,7 +11057,7 @@
 )
 
 type ProviderStreamSocketResult struct {
-	I_providerStreamSocketResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"true"`
+	I_providerStreamSocketResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"true"`
 	Response                        ProviderStreamSocketResponse `fidl_ordinal:"1"`
 	Err                             fuchsiaposix.Errno           `fidl_ordinal:"2"`
 }
@@ -11113,7 +11113,7 @@
 )
 
 type ProviderDatagramSocketResult struct {
-	I_providerDatagramSocketResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"true"`
+	I_providerDatagramSocketResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"true"`
 	Response                          ProviderDatagramSocketResponse `fidl_ordinal:"1"`
 	Err                               fuchsiaposix.Errno             `fidl_ordinal:"2"`
 }
@@ -11169,7 +11169,7 @@
 )
 
 type ProviderInterfaceIndexToNameResult struct {
-	I_providerInterfaceIndexToNameResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_providerInterfaceIndexToNameResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                ProviderInterfaceIndexToNameResponse `fidl_ordinal:"1"`
 	Err                                     int32                                `fidl_ordinal:"2"`
 }
@@ -11225,7 +11225,7 @@
 )
 
 type ProviderInterfaceNameToIndexResult struct {
-	I_providerInterfaceNameToIndexResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_providerInterfaceNameToIndexResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                ProviderInterfaceNameToIndexResponse `fidl_ordinal:"1"`
 	Err                                     int32                                `fidl_ordinal:"2"`
 }
@@ -11281,7 +11281,7 @@
 )
 
 type ProviderInterfaceNameToFlagsResult struct {
-	I_providerInterfaceNameToFlagsResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_providerInterfaceNameToFlagsResultTag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Response                                ProviderInterfaceNameToFlagsResponse `fidl_ordinal:"1"`
 	Err                                     int32                                `fidl_ordinal:"2"`
 }
@@ -11338,7 +11338,7 @@
 
 // An optional byte value.
 type OptionalUint8 struct {
-	I_optionalUint8Tag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_optionalUint8Tag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Value              uint8 `fidl_ordinal:"1"`
 	Unset              Empty `fidl_ordinal:"2"`
 }
@@ -11395,7 +11395,7 @@
 
 // An optional uint32 value.
 type OptionalUint32 struct {
-	I_optionalUint32Tag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_resource:"false"`
+	I_optionalUint32Tag `fidl:"x!" fidl_size_v1:"24" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	Value               uint32 `fidl_ordinal:"1"`
 	Unset               Empty  `fidl_ordinal:"2"`
 }
@@ -11445,7 +11445,7 @@
 
 // Ancillary data for sending datagram sockets.
 type SendControlData struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 }
 
@@ -11459,7 +11459,7 @@
 
 // Ancillary data for received datagram sockets.
 type RecvControlData struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 }
 
@@ -11473,7 +11473,7 @@
 
 // TCP protocol state.
 type TcpInfo struct {
-	_                  struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_                  struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData      interface{}
 	State              TcpState `fidl_ordinal:"1"`
 	StatePresent       bool
@@ -11695,7 +11695,7 @@
 
 // Holds information about an interface and its addresses.
 type InterfaceAddresses struct {
-	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_resource:"false"`
+	_             struct{} `fidl:"t" fidl_size_v1:"16" fidl_alignment_v1:"8" fidl_size_v2:"16" fidl_alignment_v2:"8" fidl_resource:"false"`
 	I_unknownData interface{}
 	// ID of the interface.
 	Id        uint64 `fidl_ordinal:"1"`