// Copyright 2016 The Vanadium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

// This file was auto-generated by the vanadium vdl tool.
// Package: vdltest

package vdltest

import (
	"fmt"
	"v.io/v23/vdl"
	"v.io/v23/verror"
)

var _ = __VDLInit() // Must be first; see __VDLInit comments for details.

//////////////////////////////////////////////////
// Type definitions

// vdlEntry represents a test entry, which contains a target and source value.
// Each test converts the source value to the type of the target value, and
// either passes or fails.
//
// An entry may either be canonical or not.  For a given canonical entry C,
// C.Target==C.Source always holds, and in addition, C.Source is the canonical
// representation of the value.
type vdlEntry struct {
	IsCanonical bool
	Label       string      // Label describes the entry, e.g. Full, Random...
	TargetLabel string      // TargetLabel describes the Target value
	Target      interface{} // Target value for conversion test
	SourceLabel string      // SourceLabel describes the Source value
	Source      interface{} // Source value for conversion test
}

func (vdlEntry) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.vdlEntry"`
}) {
}

func (x vdlEntry) VDLIsZero() bool {
	return x == vdlEntry{}
}

func (x vdlEntry) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_1); err != nil {
		return err
	}
	if x.IsCanonical {
		if err := enc.NextField("IsCanonical"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.BoolType); err != nil {
			return err
		}
		if err := enc.EncodeBool(x.IsCanonical); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if x.Label != "" {
		if err := enc.NextField("Label"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.StringType); err != nil {
			return err
		}
		if err := enc.EncodeString(x.Label); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if x.TargetLabel != "" {
		if err := enc.NextField("TargetLabel"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.StringType); err != nil {
			return err
		}
		if err := enc.EncodeString(x.TargetLabel); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if x.Target != nil {
		if err := enc.NextField("Target"); err != nil {
			return err
		}
		if err := vdl.Write(enc, x.Target); err != nil {
			return err
		}
	}
	if x.SourceLabel != "" {
		if err := enc.NextField("SourceLabel"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.StringType); err != nil {
			return err
		}
		if err := enc.EncodeString(x.SourceLabel); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if x.Source != nil {
		if err := enc.NextField("Source"); err != nil {
			return err
		}
		if err := vdl.Write(enc, x.Source); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *vdlEntry) VDLRead(dec vdl.Decoder) error {
	*x = vdlEntry{}
	if err := dec.StartValue(__VDLType_struct_1); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "IsCanonical":
			if err := dec.StartValue(vdl.BoolType); err != nil {
				return err
			}
			var err error
			if x.IsCanonical, err = dec.DecodeBool(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		case "Label":
			if err := dec.StartValue(vdl.StringType); err != nil {
				return err
			}
			var err error
			if x.Label, err = dec.DecodeString(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		case "TargetLabel":
			if err := dec.StartValue(vdl.StringType); err != nil {
				return err
			}
			var err error
			if x.TargetLabel, err = dec.DecodeString(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		case "Target":
			var readAny interface{}
			if err := vdl.Read(dec, &readAny); err != nil {
				return err
			}
			x.Target = readAny
		case "SourceLabel":
			if err := dec.StartValue(vdl.StringType); err != nil {
				return err
			}
			var err error
			if x.SourceLabel, err = dec.DecodeString(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		case "Source":
			var readAny interface{}
			if err := vdl.Read(dec, &readAny); err != nil {
				return err
			}
			x.Source = readAny
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VBool bool

func (VBool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VBool"`
}) {
}

func (x VBool) VDLIsZero() bool {
	return bool(!x)
}

func (x VBool) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_bool_2); err != nil {
		return err
	}
	if err := enc.EncodeBool(bool(x)); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VBool) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_bool_2); err != nil {
		return err
	}
	tmp, err := dec.DecodeBool()
	if err != nil {
		return err
	}
	*x = VBool(tmp)
	return dec.FinishValue()
}

type VString string

func (VString) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VString"`
}) {
}

func (x VString) VDLIsZero() bool {
	return x == ""
}

func (x VString) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_string_3); err != nil {
		return err
	}
	if err := enc.EncodeString(string(x)); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VString) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_string_3); err != nil {
		return err
	}
	tmp, err := dec.DecodeString()
	if err != nil {
		return err
	}
	*x = VString(tmp)
	return dec.FinishValue()
}

type VByte byte

func (VByte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VByte"`
}) {
}

func (x VByte) VDLIsZero() bool {
	return x == 0
}

func (x VByte) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_byte_4); err != nil {
		return err
	}
	if err := enc.EncodeUint(uint64(x)); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VByte) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_byte_4); err != nil {
		return err
	}
	tmp, err := dec.DecodeUint(8)
	if err != nil {
		return err
	}
	*x = VByte(tmp)
	return dec.FinishValue()
}

type VEnumAbc int

const (
	VEnumAbcA VEnumAbc = iota
	VEnumAbcB
	VEnumAbcC
)

// VEnumAbcAll holds all labels for VEnumAbc.
var VEnumAbcAll = [...]VEnumAbc{VEnumAbcA, VEnumAbcB, VEnumAbcC}

// VEnumAbcFromString creates a VEnumAbc from a string label.
func VEnumAbcFromString(label string) (x VEnumAbc, err error) {
	err = x.Set(label)
	return
}

// Set assigns label to x.
func (x *VEnumAbc) Set(label string) error {
	switch label {
	case "A", "a":
		*x = VEnumAbcA
		return nil
	case "B", "b":
		*x = VEnumAbcB
		return nil
	case "C", "c":
		*x = VEnumAbcC
		return nil
	}
	*x = -1
	return fmt.Errorf("unknown label %q in vdltest.VEnumAbc", label)
}

// String returns the string label of x.
func (x VEnumAbc) String() string {
	switch x {
	case VEnumAbcA:
		return "A"
	case VEnumAbcB:
		return "B"
	case VEnumAbcC:
		return "C"
	}
	return ""
}

func (VEnumAbc) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VEnumAbc"`
	Enum struct{ A, B, C string }
}) {
}

func (x VEnumAbc) VDLIsZero() bool {
	return x == VEnumAbcA
}

func (x VEnumAbc) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_enum_5); err != nil {
		return err
	}
	if err := enc.EncodeString(x.String()); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VEnumAbc) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_enum_5); err != nil {
		return err
	}
	enum, err := dec.DecodeString()
	if err != nil {
		return err
	}
	if err := x.Set(enum); err != nil {
		return err
	}
	return dec.FinishValue()
}

type VEnumBcd int

const (
	VEnumBcdB VEnumBcd = iota
	VEnumBcdC
	VEnumBcdD
)

// VEnumBcdAll holds all labels for VEnumBcd.
var VEnumBcdAll = [...]VEnumBcd{VEnumBcdB, VEnumBcdC, VEnumBcdD}

// VEnumBcdFromString creates a VEnumBcd from a string label.
func VEnumBcdFromString(label string) (x VEnumBcd, err error) {
	err = x.Set(label)
	return
}

// Set assigns label to x.
func (x *VEnumBcd) Set(label string) error {
	switch label {
	case "B", "b":
		*x = VEnumBcdB
		return nil
	case "C", "c":
		*x = VEnumBcdC
		return nil
	case "D", "d":
		*x = VEnumBcdD
		return nil
	}
	*x = -1
	return fmt.Errorf("unknown label %q in vdltest.VEnumBcd", label)
}

// String returns the string label of x.
func (x VEnumBcd) String() string {
	switch x {
	case VEnumBcdB:
		return "B"
	case VEnumBcdC:
		return "C"
	case VEnumBcdD:
		return "D"
	}
	return ""
}

func (VEnumBcd) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VEnumBcd"`
	Enum struct{ B, C, D string }
}) {
}

func (x VEnumBcd) VDLIsZero() bool {
	return x == VEnumBcdB
}

func (x VEnumBcd) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_enum_6); err != nil {
		return err
	}
	if err := enc.EncodeString(x.String()); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VEnumBcd) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_enum_6); err != nil {
		return err
	}
	enum, err := dec.DecodeString()
	if err != nil {
		return err
	}
	if err := x.Set(enum); err != nil {
		return err
	}
	return dec.FinishValue()
}

type VStructEmpty struct {
}

func (VStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructEmpty"`
}) {
}

func (x VStructEmpty) VDLIsZero() bool {
	return x == VStructEmpty{}
}

func (x VStructEmpty) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_7); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructEmpty) VDLRead(dec vdl.Decoder) error {
	*x = VStructEmpty{}
	if err := dec.StartValue(__VDLType_struct_7); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VNamedError struct {
	Id  string
	Msg string
}

func (VNamedError) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VNamedError"`
}) {
}

func (x VNamedError) VDLIsZero() bool {
	return x == VNamedError{}
}

func (x VNamedError) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_8); err != nil {
		return err
	}
	if x.Id != "" {
		if err := enc.NextField("Id"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.StringType); err != nil {
			return err
		}
		if err := enc.EncodeString(x.Id); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if x.Msg != "" {
		if err := enc.NextField("Msg"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.StringType); err != nil {
			return err
		}
		if err := enc.EncodeString(x.Msg); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VNamedError) VDLRead(dec vdl.Decoder) error {
	*x = VNamedError{}
	if err := dec.StartValue(__VDLType_struct_8); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "Id":
			if err := dec.StartValue(vdl.StringType); err != nil {
				return err
			}
			var err error
			if x.Id, err = dec.DecodeString(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		case "Msg":
			if err := dec.StartValue(vdl.StringType); err != nil {
				return err
			}
			var err error
			if x.Msg, err = dec.DecodeString(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VUint16 uint16

func (VUint16) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VUint16"`
}) {
}

func (x VUint16) VDLIsZero() bool {
	return x == 0
}

func (x VUint16) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_uint16_9); err != nil {
		return err
	}
	if err := enc.EncodeUint(uint64(x)); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VUint16) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_uint16_9); err != nil {
		return err
	}
	tmp, err := dec.DecodeUint(16)
	if err != nil {
		return err
	}
	*x = VUint16(tmp)
	return dec.FinishValue()
}

type VUint32 uint32

func (VUint32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VUint32"`
}) {
}

func (x VUint32) VDLIsZero() bool {
	return x == 0
}

func (x VUint32) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_uint32_10); err != nil {
		return err
	}
	if err := enc.EncodeUint(uint64(x)); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VUint32) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_uint32_10); err != nil {
		return err
	}
	tmp, err := dec.DecodeUint(32)
	if err != nil {
		return err
	}
	*x = VUint32(tmp)
	return dec.FinishValue()
}

type VUint64 uint64

func (VUint64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VUint64"`
}) {
}

func (x VUint64) VDLIsZero() bool {
	return x == 0
}

func (x VUint64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_uint64_11); err != nil {
		return err
	}
	if err := enc.EncodeUint(uint64(x)); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VUint64) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_uint64_11); err != nil {
		return err
	}
	tmp, err := dec.DecodeUint(64)
	if err != nil {
		return err
	}
	*x = VUint64(tmp)
	return dec.FinishValue()
}

type VInt8 int8

func (VInt8) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VInt8"`
}) {
}

func (x VInt8) VDLIsZero() bool {
	return x == 0
}

func (x VInt8) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_int8_12); err != nil {
		return err
	}
	if err := enc.EncodeInt(int64(x)); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VInt8) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_int8_12); err != nil {
		return err
	}
	tmp, err := dec.DecodeInt(8)
	if err != nil {
		return err
	}
	*x = VInt8(tmp)
	return dec.FinishValue()
}

type VInt16 int16

func (VInt16) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VInt16"`
}) {
}

func (x VInt16) VDLIsZero() bool {
	return x == 0
}

func (x VInt16) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_int16_13); err != nil {
		return err
	}
	if err := enc.EncodeInt(int64(x)); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VInt16) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_int16_13); err != nil {
		return err
	}
	tmp, err := dec.DecodeInt(16)
	if err != nil {
		return err
	}
	*x = VInt16(tmp)
	return dec.FinishValue()
}

type VInt32 int32

func (VInt32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VInt32"`
}) {
}

func (x VInt32) VDLIsZero() bool {
	return x == 0
}

func (x VInt32) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_int32_14); err != nil {
		return err
	}
	if err := enc.EncodeInt(int64(x)); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VInt32) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_int32_14); err != nil {
		return err
	}
	tmp, err := dec.DecodeInt(32)
	if err != nil {
		return err
	}
	*x = VInt32(tmp)
	return dec.FinishValue()
}

type VInt64 int64

func (VInt64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VInt64"`
}) {
}

func (x VInt64) VDLIsZero() bool {
	return x == 0
}

func (x VInt64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_int64_15); err != nil {
		return err
	}
	if err := enc.EncodeInt(int64(x)); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VInt64) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_int64_15); err != nil {
		return err
	}
	tmp, err := dec.DecodeInt(64)
	if err != nil {
		return err
	}
	*x = VInt64(tmp)
	return dec.FinishValue()
}

type VFloat32 float32

func (VFloat32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VFloat32"`
}) {
}

func (x VFloat32) VDLIsZero() bool {
	return x == 0
}

func (x VFloat32) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_float32_16); err != nil {
		return err
	}
	if err := enc.EncodeFloat(float64(x)); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VFloat32) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_float32_16); err != nil {
		return err
	}
	tmp, err := dec.DecodeFloat(32)
	if err != nil {
		return err
	}
	*x = VFloat32(tmp)
	return dec.FinishValue()
}

type VFloat64 float64

func (VFloat64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VFloat64"`
}) {
}

func (x VFloat64) VDLIsZero() bool {
	return x == 0
}

func (x VFloat64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_float64_17); err != nil {
		return err
	}
	if err := enc.EncodeFloat(float64(x)); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VFloat64) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_float64_17); err != nil {
		return err
	}
	tmp, err := dec.DecodeFloat(64)
	if err != nil {
		return err
	}
	*x = VFloat64(tmp)
	return dec.FinishValue()
}

type VArray3_Any [3]interface{}

func (VArray3_Any) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray3_Any"`
}) {
}

func (x VArray3_Any) VDLIsZero() bool {
	return x == VArray3_Any{}
}

func (x VArray3_Any) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_18); err != nil {
		return err
	}
	for i := 0; i < 3; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := vdl.Write(enc, x[i]); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray3_Any) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_18); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		var readAny interface{}
		if err := vdl.Read(dec, &readAny); err != nil {
			return err
		}
		x[index] = readAny
		index++
	}
}

type VArray3_Bool [3]bool

func (VArray3_Bool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray3_Bool"`
}) {
}

func (x VArray3_Bool) VDLIsZero() bool {
	return x == VArray3_Bool{}
}

func (x VArray3_Bool) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_19); err != nil {
		return err
	}
	for i := 0; i < 3; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.BoolType); err != nil {
			return err
		}
		if err := enc.EncodeBool(x[i]); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray3_Bool) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_19); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := dec.StartValue(vdl.BoolType); err != nil {
			return err
		}
		var err error
		if x[index], err = dec.DecodeBool(); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		index++
	}
}

type VArray3_VBool [3]VBool

func (VArray3_VBool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray3_VBool"`
}) {
}

func (x VArray3_VBool) VDLIsZero() bool {
	return x == VArray3_VBool{}
}

func (x VArray3_VBool) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_20); err != nil {
		return err
	}
	for i := 0; i < 3; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray3_VBool) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_20); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := x[index].VDLRead(dec); err != nil {
			return err
		}
		index++
	}
}

type VArray1_String [1]string

func (VArray1_String) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray1_String"`
}) {
}

func (x VArray1_String) VDLIsZero() bool {
	return x == VArray1_String{}
}

func (x VArray1_String) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_21); err != nil {
		return err
	}
	for i := 0; i < 1; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.StringType); err != nil {
			return err
		}
		if err := enc.EncodeString(x[i]); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray1_String) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_21); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := dec.StartValue(vdl.StringType); err != nil {
			return err
		}
		var err error
		if x[index], err = dec.DecodeString(); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		index++
	}
}

type VArray3_VString [3]VString

func (VArray3_VString) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray3_VString"`
}) {
}

func (x VArray3_VString) VDLIsZero() bool {
	return x == VArray3_VString{}
}

func (x VArray3_VString) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_22); err != nil {
		return err
	}
	for i := 0; i < 3; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray3_VString) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_22); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := x[index].VDLRead(dec); err != nil {
			return err
		}
		index++
	}
}

type VArray2_TypeObject [2]*vdl.Type

func (VArray2_TypeObject) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray2_TypeObject"`
}) {
}

func (x VArray2_TypeObject) VDLIsZero() bool {
	for _, elem := range x {
		if elem != nil && elem != vdl.AnyType {
			return false
		}
	}
	return true
}

func (x VArray2_TypeObject) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_23); err != nil {
		return err
	}
	for i := 0; i < 2; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray2_TypeObject) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_23); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := dec.StartValue(vdl.TypeObjectType); err != nil {
			return err
		}
		var err error
		if x[index], err = dec.DecodeTypeObject(); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		index++
	}
}

type VArray1_Byte [1]byte

func (VArray1_Byte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray1_Byte"`
}) {
}

func (x VArray1_Byte) VDLIsZero() bool {
	return x == VArray1_Byte{}
}

func (x VArray1_Byte) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_24); err != nil {
		return err
	}
	if err := enc.EncodeBytes([]byte(x[:])); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray1_Byte) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_24); err != nil {
		return err
	}
	bytes := x[:]
	if err := dec.DecodeBytes(1, &bytes); err != nil {
		return err
	}
	return dec.FinishValue()
}

type VArray2_VByte [2]VByte

func (VArray2_VByte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray2_VByte"`
}) {
}

func (x VArray2_VByte) VDLIsZero() bool {
	return x == VArray2_VByte{}
}

func (x VArray2_VByte) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_25); err != nil {
		return err
	}
	for i := 0; i < 2; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray2_VByte) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_25); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := x[index].VDLRead(dec); err != nil {
			return err
		}
		index++
	}
}

type VArray2_VEnumAbc [2]VEnumAbc

func (VArray2_VEnumAbc) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray2_VEnumAbc"`
}) {
}

func (x VArray2_VEnumAbc) VDLIsZero() bool {
	return x == VArray2_VEnumAbc{}
}

func (x VArray2_VEnumAbc) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_26); err != nil {
		return err
	}
	for i := 0; i < 2; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray2_VEnumAbc) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_26); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := x[index].VDLRead(dec); err != nil {
			return err
		}
		index++
	}
}

type VArray2_VEnumBcd [2]VEnumBcd

func (VArray2_VEnumBcd) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray2_VEnumBcd"`
}) {
}

func (x VArray2_VEnumBcd) VDLIsZero() bool {
	return x == VArray2_VEnumBcd{}
}

func (x VArray2_VEnumBcd) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_27); err != nil {
		return err
	}
	for i := 0; i < 2; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray2_VEnumBcd) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_27); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := x[index].VDLRead(dec); err != nil {
			return err
		}
		index++
	}
}

type VArray1_VStructEmpty [1]VStructEmpty

func (VArray1_VStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray1_VStructEmpty"`
}) {
}

func (x VArray1_VStructEmpty) VDLIsZero() bool {
	return x == VArray1_VStructEmpty{}
}

func (x VArray1_VStructEmpty) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_28); err != nil {
		return err
	}
	for i := 0; i < 1; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray1_VStructEmpty) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_28); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := x[index].VDLRead(dec); err != nil {
			return err
		}
		index++
	}
}

type VArray1_VNamedError [1]VNamedError

func (VArray1_VNamedError) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray1_VNamedError"`
}) {
}

func (x VArray1_VNamedError) VDLIsZero() bool {
	return x == VArray1_VNamedError{}
}

func (x VArray1_VNamedError) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_29); err != nil {
		return err
	}
	for i := 0; i < 1; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray1_VNamedError) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_29); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := x[index].VDLRead(dec); err != nil {
			return err
		}
		index++
	}
}

type VArray2_Error [2]error

func (VArray2_Error) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray2_Error"`
}) {
}

func (x VArray2_Error) VDLIsZero() bool {
	return x == VArray2_Error{}
}

func (x VArray2_Error) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_30); err != nil {
		return err
	}
	for i := 0; i < 2; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := verror.VDLWrite(enc, x[i]); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray2_Error) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_30); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := verror.VDLRead(dec, &x[index]); err != nil {
			return err
		}
		index++
	}
}

type VArray1_Uint32 [1]uint32

func (VArray1_Uint32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray1_Uint32"`
}) {
}

func (x VArray1_Uint32) VDLIsZero() bool {
	return x == VArray1_Uint32{}
}

func (x VArray1_Uint32) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_31); err != nil {
		return err
	}
	for i := 0; i < 1; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Uint32Type); err != nil {
			return err
		}
		if err := enc.EncodeUint(uint64(x[i])); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray1_Uint32) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_31); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := dec.StartValue(vdl.Uint32Type); err != nil {
			return err
		}
		tmp, err := dec.DecodeUint(32)
		if err != nil {
			return err
		}
		x[index] = uint32(tmp)
		if err := dec.FinishValue(); err != nil {
			return err
		}
		index++
	}
}

type VArray3_Uint64 [3]uint64

func (VArray3_Uint64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray3_Uint64"`
}) {
}

func (x VArray3_Uint64) VDLIsZero() bool {
	return x == VArray3_Uint64{}
}

func (x VArray3_Uint64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_32); err != nil {
		return err
	}
	for i := 0; i < 3; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Uint64Type); err != nil {
			return err
		}
		if err := enc.EncodeUint(x[i]); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray3_Uint64) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_32); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := dec.StartValue(vdl.Uint64Type); err != nil {
			return err
		}
		var err error
		if x[index], err = dec.DecodeUint(64); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		index++
	}
}

type VArray3_Int64 [3]int64

func (VArray3_Int64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray3_Int64"`
}) {
}

func (x VArray3_Int64) VDLIsZero() bool {
	return x == VArray3_Int64{}
}

func (x VArray3_Int64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_33); err != nil {
		return err
	}
	for i := 0; i < 3; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Int64Type); err != nil {
			return err
		}
		if err := enc.EncodeInt(x[i]); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray3_Int64) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_33); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := dec.StartValue(vdl.Int64Type); err != nil {
			return err
		}
		var err error
		if x[index], err = dec.DecodeInt(64); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		index++
	}
}

type VArray1_OptVStructEmpty [1]*VStructEmpty

func (VArray1_OptVStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray1_OptVStructEmpty"`
}) {
}

func (x VArray1_OptVStructEmpty) VDLIsZero() bool {
	return x == VArray1_OptVStructEmpty{}
}

func (x VArray1_OptVStructEmpty) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_34); err != nil {
		return err
	}
	for i := 0; i < 1; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if x[i] == nil {
			if err := enc.NilValue(__VDLType_optional_35); err != nil {
				return err
			}
		} else {
			enc.SetNextStartValueIsOptional()

			if err := x[i].VDLWrite(enc); err != nil {
				return err
			}

		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray1_OptVStructEmpty) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_34); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := dec.StartValue(__VDLType_optional_35); err != nil {
			return err
		}
		if dec.IsNil() {
			x[index] = nil
			if err := dec.FinishValue(); err != nil {
				return err
			}
		} else {
			x[index] = new(VStructEmpty)
			dec.IgnoreNextStartValue()
			if err := x[index].VDLRead(dec); err != nil {
				return err
			}
		}
		index++
	}
}

type VArray3_OptVNamedError [3]*VNamedError

func (VArray3_OptVNamedError) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray3_OptVNamedError"`
}) {
}

func (x VArray3_OptVNamedError) VDLIsZero() bool {
	return x == VArray3_OptVNamedError{}
}

func (x VArray3_OptVNamedError) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_36); err != nil {
		return err
	}
	for i := 0; i < 3; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if x[i] == nil {
			if err := enc.NilValue(__VDLType_optional_37); err != nil {
				return err
			}
		} else {
			enc.SetNextStartValueIsOptional()

			if err := x[i].VDLWrite(enc); err != nil {
				return err
			}

		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray3_OptVNamedError) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_36); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := dec.StartValue(__VDLType_optional_37); err != nil {
			return err
		}
		if dec.IsNil() {
			x[index] = nil
			if err := dec.FinishValue(); err != nil {
				return err
			}
		} else {
			x[index] = new(VNamedError)
			dec.IgnoreNextStartValue()
			if err := x[index].VDLRead(dec); err != nil {
				return err
			}
		}
		index++
	}
}

type VList_Any []interface{}

func (VList_Any) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_Any"`
}) {
}

func (x VList_Any) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_Any) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_38); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := vdl.Write(enc, x[i]); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_Any) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_38); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_Any, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem interface{}
		var readAny interface{}
		if err := vdl.Read(dec, &readAny); err != nil {
			return err
		}
		elem = readAny
		*x = append(*x, elem)
	}
}

type VList_Bool []bool

func (VList_Bool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_Bool"`
}) {
}

func (x VList_Bool) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_Bool) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_39); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.BoolType); err != nil {
			return err
		}
		if err := enc.EncodeBool(x[i]); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_Bool) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_39); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_Bool, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem bool
		if err := dec.StartValue(vdl.BoolType); err != nil {
			return err
		}
		var err error
		if elem, err = dec.DecodeBool(); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_VBool []VBool

func (VList_VBool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_VBool"`
}) {
}

func (x VList_VBool) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_VBool) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_40); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_VBool) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_40); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_VBool, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VBool
		if err := elem.VDLRead(dec); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_String []string

func (VList_String) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_String"`
}) {
}

func (x VList_String) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_String) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_41); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.StringType); err != nil {
			return err
		}
		if err := enc.EncodeString(x[i]); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_String) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_41); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_String, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem string
		if err := dec.StartValue(vdl.StringType); err != nil {
			return err
		}
		var err error
		if elem, err = dec.DecodeString(); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_VString []VString

func (VList_VString) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_VString"`
}) {
}

func (x VList_VString) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_VString) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_42); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_VString) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_42); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_VString, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VString
		if err := elem.VDLRead(dec); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_TypeObject []*vdl.Type

func (VList_TypeObject) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_TypeObject"`
}) {
}

func (x VList_TypeObject) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_TypeObject) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_43); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_TypeObject) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_43); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_TypeObject, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem *vdl.Type
		if err := dec.StartValue(vdl.TypeObjectType); err != nil {
			return err
		}
		var err error
		if elem, err = dec.DecodeTypeObject(); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_Byte []byte

func (VList_Byte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_Byte"`
}) {
}

func (x VList_Byte) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_Byte) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_44); err != nil {
		return err
	}
	if err := enc.EncodeBytes([]byte(x)); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_Byte) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_44); err != nil {
		return err
	}
	var bytes []byte
	if err := dec.DecodeBytes(-1, &bytes); err != nil {
		return err
	}
	*x = bytes
	return dec.FinishValue()
}

type VList_VByte []VByte

func (VList_VByte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_VByte"`
}) {
}

func (x VList_VByte) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_VByte) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_45); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_VByte) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_45); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_VByte, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VByte
		if err := elem.VDLRead(dec); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_VEnumAbc []VEnumAbc

func (VList_VEnumAbc) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_VEnumAbc"`
}) {
}

func (x VList_VEnumAbc) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_VEnumAbc) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_46); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_VEnumAbc) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_46); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_VEnumAbc, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VEnumAbc
		if err := elem.VDLRead(dec); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_VEnumBcd []VEnumBcd

func (VList_VEnumBcd) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_VEnumBcd"`
}) {
}

func (x VList_VEnumBcd) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_VEnumBcd) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_47); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_VEnumBcd) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_47); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_VEnumBcd, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VEnumBcd
		if err := elem.VDLRead(dec); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_VStructEmpty []VStructEmpty

func (VList_VStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_VStructEmpty"`
}) {
}

func (x VList_VStructEmpty) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_VStructEmpty) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_48); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_VStructEmpty) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_48); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_VStructEmpty, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VStructEmpty
		if err := elem.VDLRead(dec); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_VNamedError []VNamedError

func (VList_VNamedError) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_VNamedError"`
}) {
}

func (x VList_VNamedError) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_VNamedError) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_49); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_VNamedError) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_49); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_VNamedError, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VNamedError
		if err := elem.VDLRead(dec); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_Error []error

func (VList_Error) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_Error"`
}) {
}

func (x VList_Error) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_Error) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_50); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := verror.VDLWrite(enc, x[i]); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_Error) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_50); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_Error, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem error
		if err := verror.VDLRead(dec, &elem); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_VUint16 []VUint16

func (VList_VUint16) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_VUint16"`
}) {
}

func (x VList_VUint16) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_VUint16) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_51); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_VUint16) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_51); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_VUint16, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VUint16
		if err := elem.VDLRead(dec); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_VFloat32 []VFloat32

func (VList_VFloat32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_VFloat32"`
}) {
}

func (x VList_VFloat32) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_VFloat32) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_52); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_VFloat32) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_52); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_VFloat32, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VFloat32
		if err := elem.VDLRead(dec); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_VFloat64 []VFloat64

func (VList_VFloat64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_VFloat64"`
}) {
}

func (x VList_VFloat64) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_VFloat64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_53); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_VFloat64) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_53); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_VFloat64, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VFloat64
		if err := elem.VDLRead(dec); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_OptVStructEmpty []*VStructEmpty

func (VList_OptVStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_OptVStructEmpty"`
}) {
}

func (x VList_OptVStructEmpty) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_OptVStructEmpty) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_54); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if x[i] == nil {
			if err := enc.NilValue(__VDLType_optional_35); err != nil {
				return err
			}
		} else {
			enc.SetNextStartValueIsOptional()

			if err := x[i].VDLWrite(enc); err != nil {
				return err
			}

		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_OptVStructEmpty) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_54); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_OptVStructEmpty, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem *VStructEmpty
		if err := dec.StartValue(__VDLType_optional_35); err != nil {
			return err
		}
		if dec.IsNil() {
			elem = nil
			if err := dec.FinishValue(); err != nil {
				return err
			}
		} else {
			elem = new(VStructEmpty)
			dec.IgnoreNextStartValue()
			if err := elem.VDLRead(dec); err != nil {
				return err
			}
		}
		*x = append(*x, elem)
	}
}

type VList_OptVNamedError []*VNamedError

func (VList_OptVNamedError) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_OptVNamedError"`
}) {
}

func (x VList_OptVNamedError) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_OptVNamedError) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_55); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if x[i] == nil {
			if err := enc.NilValue(__VDLType_optional_37); err != nil {
				return err
			}
		} else {
			enc.SetNextStartValueIsOptional()

			if err := x[i].VDLWrite(enc); err != nil {
				return err
			}

		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_OptVNamedError) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_55); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_OptVNamedError, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem *VNamedError
		if err := dec.StartValue(__VDLType_optional_37); err != nil {
			return err
		}
		if dec.IsNil() {
			elem = nil
			if err := dec.FinishValue(); err != nil {
				return err
			}
		} else {
			elem = new(VNamedError)
			dec.IgnoreNextStartValue()
			if err := elem.VDLRead(dec); err != nil {
				return err
			}
		}
		*x = append(*x, elem)
	}
}

type VSet_Bool map[bool]struct{}

func (VSet_Bool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VSet_Bool"`
}) {
}

func (x VSet_Bool) VDLIsZero() bool {
	return len(x) == 0
}

func (x VSet_Bool) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_set_56); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.BoolType); err != nil {
			return err
		}
		if err := enc.EncodeBool(key); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VSet_Bool) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_set_56); err != nil {
		return err
	}
	var tmpMap VSet_Bool
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VSet_Bool, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key bool
		{
			if err := dec.StartValue(vdl.BoolType); err != nil {
				return err
			}
			var err error
			if key, err = dec.DecodeBool(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VSet_Bool)
		}
		tmpMap[key] = struct{}{}
	}
}

type VSet_VBool map[VBool]struct{}

func (VSet_VBool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VSet_VBool"`
}) {
}

func (x VSet_VBool) VDLIsZero() bool {
	return len(x) == 0
}

func (x VSet_VBool) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_set_57); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VSet_VBool) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_set_57); err != nil {
		return err
	}
	var tmpMap VSet_VBool
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VSet_VBool, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VBool
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VSet_VBool)
		}
		tmpMap[key] = struct{}{}
	}
}

type VSet_String map[string]struct{}

func (VSet_String) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VSet_String"`
}) {
}

func (x VSet_String) VDLIsZero() bool {
	return len(x) == 0
}

func (x VSet_String) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_set_58); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.StringType); err != nil {
			return err
		}
		if err := enc.EncodeString(key); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VSet_String) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_set_58); err != nil {
		return err
	}
	var tmpMap VSet_String
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VSet_String, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key string
		{
			if err := dec.StartValue(vdl.StringType); err != nil {
				return err
			}
			var err error
			if key, err = dec.DecodeString(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VSet_String)
		}
		tmpMap[key] = struct{}{}
	}
}

type VSet_VString map[VString]struct{}

func (VSet_VString) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VSet_VString"`
}) {
}

func (x VSet_VString) VDLIsZero() bool {
	return len(x) == 0
}

func (x VSet_VString) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_set_59); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VSet_VString) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_set_59); err != nil {
		return err
	}
	var tmpMap VSet_VString
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VSet_VString, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VString
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VSet_VString)
		}
		tmpMap[key] = struct{}{}
	}
}

type VSet_Byte map[byte]struct{}

func (VSet_Byte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VSet_Byte"`
}) {
}

func (x VSet_Byte) VDLIsZero() bool {
	return len(x) == 0
}

func (x VSet_Byte) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_set_60); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.ByteType); err != nil {
			return err
		}
		if err := enc.EncodeUint(uint64(key)); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VSet_Byte) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_set_60); err != nil {
		return err
	}
	var tmpMap VSet_Byte
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VSet_Byte, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key byte
		{
			if err := dec.StartValue(vdl.ByteType); err != nil {
				return err
			}
			tmp, err := dec.DecodeUint(8)
			if err != nil {
				return err
			}
			key = byte(tmp)
			if err := dec.FinishValue(); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VSet_Byte)
		}
		tmpMap[key] = struct{}{}
	}
}

type VSet_VByte map[VByte]struct{}

func (VSet_VByte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VSet_VByte"`
}) {
}

func (x VSet_VByte) VDLIsZero() bool {
	return len(x) == 0
}

func (x VSet_VByte) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_set_61); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VSet_VByte) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_set_61); err != nil {
		return err
	}
	var tmpMap VSet_VByte
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VSet_VByte, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VByte
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VSet_VByte)
		}
		tmpMap[key] = struct{}{}
	}
}

type VSet_VEnumAbc map[VEnumAbc]struct{}

func (VSet_VEnumAbc) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VSet_VEnumAbc"`
}) {
}

func (x VSet_VEnumAbc) VDLIsZero() bool {
	return len(x) == 0
}

func (x VSet_VEnumAbc) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_set_62); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VSet_VEnumAbc) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_set_62); err != nil {
		return err
	}
	var tmpMap VSet_VEnumAbc
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VSet_VEnumAbc, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VEnumAbc
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VSet_VEnumAbc)
		}
		tmpMap[key] = struct{}{}
	}
}

type VSet_VEnumBcd map[VEnumBcd]struct{}

func (VSet_VEnumBcd) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VSet_VEnumBcd"`
}) {
}

func (x VSet_VEnumBcd) VDLIsZero() bool {
	return len(x) == 0
}

func (x VSet_VEnumBcd) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_set_63); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VSet_VEnumBcd) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_set_63); err != nil {
		return err
	}
	var tmpMap VSet_VEnumBcd
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VSet_VEnumBcd, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VEnumBcd
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VSet_VEnumBcd)
		}
		tmpMap[key] = struct{}{}
	}
}

type VSet_VStructEmpty map[VStructEmpty]struct{}

func (VSet_VStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VSet_VStructEmpty"`
}) {
}

func (x VSet_VStructEmpty) VDLIsZero() bool {
	return len(x) == 0
}

func (x VSet_VStructEmpty) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_set_64); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VSet_VStructEmpty) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_set_64); err != nil {
		return err
	}
	var tmpMap VSet_VStructEmpty
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VSet_VStructEmpty, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VStructEmpty
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VSet_VStructEmpty)
		}
		tmpMap[key] = struct{}{}
	}
}

type VSet_VNamedError map[VNamedError]struct{}

func (VSet_VNamedError) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VSet_VNamedError"`
}) {
}

func (x VSet_VNamedError) VDLIsZero() bool {
	return len(x) == 0
}

func (x VSet_VNamedError) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_set_65); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VSet_VNamedError) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_set_65); err != nil {
		return err
	}
	var tmpMap VSet_VNamedError
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VSet_VNamedError, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VNamedError
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VSet_VNamedError)
		}
		tmpMap[key] = struct{}{}
	}
}

type VSet_Uint64 map[uint64]struct{}

func (VSet_Uint64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VSet_Uint64"`
}) {
}

func (x VSet_Uint64) VDLIsZero() bool {
	return len(x) == 0
}

func (x VSet_Uint64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_set_66); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Uint64Type); err != nil {
			return err
		}
		if err := enc.EncodeUint(key); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VSet_Uint64) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_set_66); err != nil {
		return err
	}
	var tmpMap VSet_Uint64
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VSet_Uint64, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key uint64
		{
			if err := dec.StartValue(vdl.Uint64Type); err != nil {
				return err
			}
			var err error
			if key, err = dec.DecodeUint(64); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VSet_Uint64)
		}
		tmpMap[key] = struct{}{}
	}
}

type VSet_VUint64 map[VUint64]struct{}

func (VSet_VUint64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VSet_VUint64"`
}) {
}

func (x VSet_VUint64) VDLIsZero() bool {
	return len(x) == 0
}

func (x VSet_VUint64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_set_67); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VSet_VUint64) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_set_67); err != nil {
		return err
	}
	var tmpMap VSet_VUint64
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VSet_VUint64, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VUint64
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VSet_VUint64)
		}
		tmpMap[key] = struct{}{}
	}
}

type VSet_Float32 map[float32]struct{}

func (VSet_Float32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VSet_Float32"`
}) {
}

func (x VSet_Float32) VDLIsZero() bool {
	return len(x) == 0
}

func (x VSet_Float32) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_set_68); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Float32Type); err != nil {
			return err
		}
		if err := enc.EncodeFloat(float64(key)); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VSet_Float32) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_set_68); err != nil {
		return err
	}
	var tmpMap VSet_Float32
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VSet_Float32, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key float32
		{
			if err := dec.StartValue(vdl.Float32Type); err != nil {
				return err
			}
			tmp, err := dec.DecodeFloat(32)
			if err != nil {
				return err
			}
			key = float32(tmp)
			if err := dec.FinishValue(); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VSet_Float32)
		}
		tmpMap[key] = struct{}{}
	}
}

type VMap_Bool_Bool map[bool]bool

func (VMap_Bool_Bool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VMap_Bool_Bool"`
}) {
}

func (x VMap_Bool_Bool) VDLIsZero() bool {
	return len(x) == 0
}

func (x VMap_Bool_Bool) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_map_69); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.BoolType); err != nil {
			return err
		}
		if err := enc.EncodeBool(key); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.BoolType); err != nil {
			return err
		}
		if err := enc.EncodeBool(elem); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VMap_Bool_Bool) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_map_69); err != nil {
		return err
	}
	var tmpMap VMap_Bool_Bool
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VMap_Bool_Bool, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key bool
		{
			if err := dec.StartValue(vdl.BoolType); err != nil {
				return err
			}
			var err error
			if key, err = dec.DecodeBool(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		}
		var elem bool
		{
			if err := dec.StartValue(vdl.BoolType); err != nil {
				return err
			}
			var err error
			if elem, err = dec.DecodeBool(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VMap_Bool_Bool)
		}
		tmpMap[key] = elem
	}
}

type VMap_VBool_VBool map[VBool]VBool

func (VMap_VBool_VBool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VMap_VBool_VBool"`
}) {
}

func (x VMap_VBool_VBool) VDLIsZero() bool {
	return len(x) == 0
}

func (x VMap_VBool_VBool) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_map_70); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
		if err := elem.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VMap_VBool_VBool) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_map_70); err != nil {
		return err
	}
	var tmpMap VMap_VBool_VBool
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VMap_VBool_VBool, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VBool
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		var elem VBool
		{
			if err := elem.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VMap_VBool_VBool)
		}
		tmpMap[key] = elem
	}
}

type VMap_String_String map[string]string

func (VMap_String_String) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VMap_String_String"`
}) {
}

func (x VMap_String_String) VDLIsZero() bool {
	return len(x) == 0
}

func (x VMap_String_String) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_map_71); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.StringType); err != nil {
			return err
		}
		if err := enc.EncodeString(key); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.StringType); err != nil {
			return err
		}
		if err := enc.EncodeString(elem); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VMap_String_String) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_map_71); err != nil {
		return err
	}
	var tmpMap VMap_String_String
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VMap_String_String, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key string
		{
			if err := dec.StartValue(vdl.StringType); err != nil {
				return err
			}
			var err error
			if key, err = dec.DecodeString(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		}
		var elem string
		{
			if err := dec.StartValue(vdl.StringType); err != nil {
				return err
			}
			var err error
			if elem, err = dec.DecodeString(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VMap_String_String)
		}
		tmpMap[key] = elem
	}
}

type VMap_VString_VString map[VString]VString

func (VMap_VString_VString) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VMap_VString_VString"`
}) {
}

func (x VMap_VString_VString) VDLIsZero() bool {
	return len(x) == 0
}

func (x VMap_VString_VString) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_map_72); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
		if err := elem.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VMap_VString_VString) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_map_72); err != nil {
		return err
	}
	var tmpMap VMap_VString_VString
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VMap_VString_VString, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VString
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		var elem VString
		{
			if err := elem.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VMap_VString_VString)
		}
		tmpMap[key] = elem
	}
}

type VMap_Byte_Byte map[byte]byte

func (VMap_Byte_Byte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VMap_Byte_Byte"`
}) {
}

func (x VMap_Byte_Byte) VDLIsZero() bool {
	return len(x) == 0
}

func (x VMap_Byte_Byte) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_map_73); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.ByteType); err != nil {
			return err
		}
		if err := enc.EncodeUint(uint64(key)); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.ByteType); err != nil {
			return err
		}
		if err := enc.EncodeUint(uint64(elem)); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VMap_Byte_Byte) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_map_73); err != nil {
		return err
	}
	var tmpMap VMap_Byte_Byte
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VMap_Byte_Byte, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key byte
		{
			if err := dec.StartValue(vdl.ByteType); err != nil {
				return err
			}
			tmp, err := dec.DecodeUint(8)
			if err != nil {
				return err
			}
			key = byte(tmp)
			if err := dec.FinishValue(); err != nil {
				return err
			}
		}
		var elem byte
		{
			if err := dec.StartValue(vdl.ByteType); err != nil {
				return err
			}
			tmp, err := dec.DecodeUint(8)
			if err != nil {
				return err
			}
			elem = byte(tmp)
			if err := dec.FinishValue(); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VMap_Byte_Byte)
		}
		tmpMap[key] = elem
	}
}

type VMap_VByte_VByte map[VByte]VByte

func (VMap_VByte_VByte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VMap_VByte_VByte"`
}) {
}

func (x VMap_VByte_VByte) VDLIsZero() bool {
	return len(x) == 0
}

func (x VMap_VByte_VByte) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_map_74); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
		if err := elem.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VMap_VByte_VByte) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_map_74); err != nil {
		return err
	}
	var tmpMap VMap_VByte_VByte
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VMap_VByte_VByte, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VByte
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		var elem VByte
		{
			if err := elem.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VMap_VByte_VByte)
		}
		tmpMap[key] = elem
	}
}

type VMap_VEnumAbc_VEnumAbc map[VEnumAbc]VEnumAbc

func (VMap_VEnumAbc_VEnumAbc) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VMap_VEnumAbc_VEnumAbc"`
}) {
}

func (x VMap_VEnumAbc_VEnumAbc) VDLIsZero() bool {
	return len(x) == 0
}

func (x VMap_VEnumAbc_VEnumAbc) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_map_75); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
		if err := elem.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VMap_VEnumAbc_VEnumAbc) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_map_75); err != nil {
		return err
	}
	var tmpMap VMap_VEnumAbc_VEnumAbc
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VMap_VEnumAbc_VEnumAbc, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VEnumAbc
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		var elem VEnumAbc
		{
			if err := elem.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VMap_VEnumAbc_VEnumAbc)
		}
		tmpMap[key] = elem
	}
}

type VMap_VEnumBcd_VEnumBcd map[VEnumBcd]VEnumBcd

func (VMap_VEnumBcd_VEnumBcd) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VMap_VEnumBcd_VEnumBcd"`
}) {
}

func (x VMap_VEnumBcd_VEnumBcd) VDLIsZero() bool {
	return len(x) == 0
}

func (x VMap_VEnumBcd_VEnumBcd) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_map_76); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
		if err := elem.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VMap_VEnumBcd_VEnumBcd) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_map_76); err != nil {
		return err
	}
	var tmpMap VMap_VEnumBcd_VEnumBcd
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VMap_VEnumBcd_VEnumBcd, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VEnumBcd
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		var elem VEnumBcd
		{
			if err := elem.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VMap_VEnumBcd_VEnumBcd)
		}
		tmpMap[key] = elem
	}
}

type VMap_VStructEmpty_VStructEmpty map[VStructEmpty]VStructEmpty

func (VMap_VStructEmpty_VStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VMap_VStructEmpty_VStructEmpty"`
}) {
}

func (x VMap_VStructEmpty_VStructEmpty) VDLIsZero() bool {
	return len(x) == 0
}

func (x VMap_VStructEmpty_VStructEmpty) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_map_77); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
		if err := elem.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VMap_VStructEmpty_VStructEmpty) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_map_77); err != nil {
		return err
	}
	var tmpMap VMap_VStructEmpty_VStructEmpty
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VMap_VStructEmpty_VStructEmpty, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VStructEmpty
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		var elem VStructEmpty
		{
			if err := elem.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VMap_VStructEmpty_VStructEmpty)
		}
		tmpMap[key] = elem
	}
}

type VMap_VNamedError_VNamedError map[VNamedError]VNamedError

func (VMap_VNamedError_VNamedError) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VMap_VNamedError_VNamedError"`
}) {
}

func (x VMap_VNamedError_VNamedError) VDLIsZero() bool {
	return len(x) == 0
}

func (x VMap_VNamedError_VNamedError) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_map_78); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
		if err := elem.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VMap_VNamedError_VNamedError) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_map_78); err != nil {
		return err
	}
	var tmpMap VMap_VNamedError_VNamedError
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VMap_VNamedError_VNamedError, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VNamedError
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		var elem VNamedError
		{
			if err := elem.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VMap_VNamedError_VNamedError)
		}
		tmpMap[key] = elem
	}
}

type VMap_VUint32_VUint32 map[VUint32]VUint32

func (VMap_VUint32_VUint32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VMap_VUint32_VUint32"`
}) {
}

func (x VMap_VUint32_VUint32) VDLIsZero() bool {
	return len(x) == 0
}

func (x VMap_VUint32_VUint32) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_map_79); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
		if err := elem.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VMap_VUint32_VUint32) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_map_79); err != nil {
		return err
	}
	var tmpMap VMap_VUint32_VUint32
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VMap_VUint32_VUint32, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VUint32
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		var elem VUint32
		{
			if err := elem.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VMap_VUint32_VUint32)
		}
		tmpMap[key] = elem
	}
}

type VMap_VInt32_VInt32 map[VInt32]VInt32

func (VMap_VInt32_VInt32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VMap_VInt32_VInt32"`
}) {
}

func (x VMap_VInt32_VInt32) VDLIsZero() bool {
	return len(x) == 0
}

func (x VMap_VInt32_VInt32) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_map_80); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
		if err := elem.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VMap_VInt32_VInt32) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_map_80); err != nil {
		return err
	}
	var tmpMap VMap_VInt32_VInt32
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VMap_VInt32_VInt32, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VInt32
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		var elem VInt32
		{
			if err := elem.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VMap_VInt32_VInt32)
		}
		tmpMap[key] = elem
	}
}

type VMap_Int64_Int64 map[int64]int64

func (VMap_Int64_Int64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VMap_Int64_Int64"`
}) {
}

func (x VMap_Int64_Int64) VDLIsZero() bool {
	return len(x) == 0
}

func (x VMap_Int64_Int64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_map_81); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Int64Type); err != nil {
			return err
		}
		if err := enc.EncodeInt(key); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Int64Type); err != nil {
			return err
		}
		if err := enc.EncodeInt(elem); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VMap_Int64_Int64) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_map_81); err != nil {
		return err
	}
	var tmpMap VMap_Int64_Int64
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VMap_Int64_Int64, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key int64
		{
			if err := dec.StartValue(vdl.Int64Type); err != nil {
				return err
			}
			var err error
			if key, err = dec.DecodeInt(64); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		}
		var elem int64
		{
			if err := dec.StartValue(vdl.Int64Type); err != nil {
				return err
			}
			var err error
			if elem, err = dec.DecodeInt(64); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VMap_Int64_Int64)
		}
		tmpMap[key] = elem
	}
}

type VStructDepth1_All struct {
	F0  interface{}
	F1  bool
	F2  VBool
	F3  string
	F4  VString
	F5  *vdl.Type
	F6  byte
	F7  VByte
	F8  VEnumAbc
	F9  VEnumBcd
	F10 VStructEmpty
	F11 VNamedError
	F12 error
	F13 uint16
	F14 VUint16
	F15 uint32
	F16 VUint32
	F17 uint64
	F18 VUint64
	F19 int8
	F20 VInt8
	F21 int16
	F22 VInt16
	F23 int32
	F24 VInt32
	F25 int64
	F26 VInt64
	F27 float32
	F28 VFloat32
	F29 float64
	F30 VFloat64
	F31 *VStructEmpty
	F32 *VNamedError
}

func (VStructDepth1_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_All"`
}) {
}

func (x VStructDepth1_All) VDLIsZero() bool {
	if x.F0 != nil {
		return false
	}
	if x.F1 {
		return false
	}
	if x.F2 {
		return false
	}
	if x.F3 != "" {
		return false
	}
	if x.F4 != "" {
		return false
	}
	if x.F5 != nil && x.F5 != vdl.AnyType {
		return false
	}
	if x.F6 != 0 {
		return false
	}
	if x.F7 != 0 {
		return false
	}
	if x.F8 != VEnumAbcA {
		return false
	}
	if x.F9 != VEnumBcdB {
		return false
	}
	if x.F10 != (VStructEmpty{}) {
		return false
	}
	if x.F11 != (VNamedError{}) {
		return false
	}
	if x.F12 != nil {
		return false
	}
	if x.F13 != 0 {
		return false
	}
	if x.F14 != 0 {
		return false
	}
	if x.F15 != 0 {
		return false
	}
	if x.F16 != 0 {
		return false
	}
	if x.F17 != 0 {
		return false
	}
	if x.F18 != 0 {
		return false
	}
	if x.F19 != 0 {
		return false
	}
	if x.F20 != 0 {
		return false
	}
	if x.F21 != 0 {
		return false
	}
	if x.F22 != 0 {
		return false
	}
	if x.F23 != 0 {
		return false
	}
	if x.F24 != 0 {
		return false
	}
	if x.F25 != 0 {
		return false
	}
	if x.F26 != 0 {
		return false
	}
	if x.F27 != 0 {
		return false
	}
	if x.F28 != 0 {
		return false
	}
	if x.F29 != 0 {
		return false
	}
	if x.F30 != 0 {
		return false
	}
	if x.F31 != nil {
		return false
	}
	if x.F32 != nil {
		return false
	}
	return true
}

func (x VStructDepth1_All) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_82); err != nil {
		return err
	}
	if x.F0 != nil {
		if err := enc.NextField("F0"); err != nil {
			return err
		}
		if err := vdl.Write(enc, x.F0); err != nil {
			return err
		}
	}
	if x.F1 {
		if err := enc.NextField("F1"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.BoolType); err != nil {
			return err
		}
		if err := enc.EncodeBool(x.F1); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if x.F2 {
		if err := enc.NextField("F2"); err != nil {
			return err
		}
		if err := x.F2.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F3 != "" {
		if err := enc.NextField("F3"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.StringType); err != nil {
			return err
		}
		if err := enc.EncodeString(x.F3); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if x.F4 != "" {
		if err := enc.NextField("F4"); err != nil {
			return err
		}
		if err := x.F4.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F5 != nil && x.F5 != vdl.AnyType {
		if err := enc.NextField("F5"); err != nil {
			return err
		}
		if err := x.F5.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F6 != 0 {
		if err := enc.NextField("F6"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.ByteType); err != nil {
			return err
		}
		if err := enc.EncodeUint(uint64(x.F6)); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if x.F7 != 0 {
		if err := enc.NextField("F7"); err != nil {
			return err
		}
		if err := x.F7.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F8 != VEnumAbcA {
		if err := enc.NextField("F8"); err != nil {
			return err
		}
		if err := x.F8.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F9 != VEnumBcdB {
		if err := enc.NextField("F9"); err != nil {
			return err
		}
		if err := x.F9.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F10 != (VStructEmpty{}) {
		if err := enc.NextField("F10"); err != nil {
			return err
		}
		if err := x.F10.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F11 != (VNamedError{}) {
		if err := enc.NextField("F11"); err != nil {
			return err
		}
		if err := x.F11.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F12 != nil {
		if err := enc.NextField("F12"); err != nil {
			return err
		}
		if err := verror.VDLWrite(enc, x.F12); err != nil {
			return err
		}
	}
	if x.F13 != 0 {
		if err := enc.NextField("F13"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Uint16Type); err != nil {
			return err
		}
		if err := enc.EncodeUint(uint64(x.F13)); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if x.F14 != 0 {
		if err := enc.NextField("F14"); err != nil {
			return err
		}
		if err := x.F14.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F15 != 0 {
		if err := enc.NextField("F15"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Uint32Type); err != nil {
			return err
		}
		if err := enc.EncodeUint(uint64(x.F15)); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if x.F16 != 0 {
		if err := enc.NextField("F16"); err != nil {
			return err
		}
		if err := x.F16.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F17 != 0 {
		if err := enc.NextField("F17"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Uint64Type); err != nil {
			return err
		}
		if err := enc.EncodeUint(x.F17); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if x.F18 != 0 {
		if err := enc.NextField("F18"); err != nil {
			return err
		}
		if err := x.F18.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F19 != 0 {
		if err := enc.NextField("F19"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Int8Type); err != nil {
			return err
		}
		if err := enc.EncodeInt(int64(x.F19)); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if x.F20 != 0 {
		if err := enc.NextField("F20"); err != nil {
			return err
		}
		if err := x.F20.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F21 != 0 {
		if err := enc.NextField("F21"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Int16Type); err != nil {
			return err
		}
		if err := enc.EncodeInt(int64(x.F21)); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if x.F22 != 0 {
		if err := enc.NextField("F22"); err != nil {
			return err
		}
		if err := x.F22.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F23 != 0 {
		if err := enc.NextField("F23"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Int32Type); err != nil {
			return err
		}
		if err := enc.EncodeInt(int64(x.F23)); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if x.F24 != 0 {
		if err := enc.NextField("F24"); err != nil {
			return err
		}
		if err := x.F24.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F25 != 0 {
		if err := enc.NextField("F25"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Int64Type); err != nil {
			return err
		}
		if err := enc.EncodeInt(x.F25); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if x.F26 != 0 {
		if err := enc.NextField("F26"); err != nil {
			return err
		}
		if err := x.F26.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F27 != 0 {
		if err := enc.NextField("F27"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Float32Type); err != nil {
			return err
		}
		if err := enc.EncodeFloat(float64(x.F27)); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if x.F28 != 0 {
		if err := enc.NextField("F28"); err != nil {
			return err
		}
		if err := x.F28.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F29 != 0 {
		if err := enc.NextField("F29"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Float64Type); err != nil {
			return err
		}
		if err := enc.EncodeFloat(x.F29); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if x.F30 != 0 {
		if err := enc.NextField("F30"); err != nil {
			return err
		}
		if err := x.F30.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F31 != nil {
		if err := enc.NextField("F31"); err != nil {
			return err
		}
		enc.SetNextStartValueIsOptional()

		if err := x.F31.VDLWrite(enc); err != nil {
			return err
		}

	}
	if x.F32 != nil {
		if err := enc.NextField("F32"); err != nil {
			return err
		}
		enc.SetNextStartValueIsOptional()

		if err := x.F32.VDLWrite(enc); err != nil {
			return err
		}

	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_All) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_All{
		F5: vdl.AnyType,
	}
	if err := dec.StartValue(__VDLType_struct_82); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F0":
			var readAny interface{}
			if err := vdl.Read(dec, &readAny); err != nil {
				return err
			}
			x.F0 = readAny
		case "F1":
			if err := dec.StartValue(vdl.BoolType); err != nil {
				return err
			}
			var err error
			if x.F1, err = dec.DecodeBool(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		case "F2":
			if err := x.F2.VDLRead(dec); err != nil {
				return err
			}
		case "F3":
			if err := dec.StartValue(vdl.StringType); err != nil {
				return err
			}
			var err error
			if x.F3, err = dec.DecodeString(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		case "F4":
			if err := x.F4.VDLRead(dec); err != nil {
				return err
			}
		case "F5":
			if err := dec.StartValue(vdl.TypeObjectType); err != nil {
				return err
			}
			var err error
			if x.F5, err = dec.DecodeTypeObject(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		case "F6":
			if err := dec.StartValue(vdl.ByteType); err != nil {
				return err
			}
			tmp, err := dec.DecodeUint(8)
			if err != nil {
				return err
			}
			x.F6 = byte(tmp)
			if err := dec.FinishValue(); err != nil {
				return err
			}
		case "F7":
			if err := x.F7.VDLRead(dec); err != nil {
				return err
			}
		case "F8":
			if err := x.F8.VDLRead(dec); err != nil {
				return err
			}
		case "F9":
			if err := x.F9.VDLRead(dec); err != nil {
				return err
			}
		case "F10":
			if err := x.F10.VDLRead(dec); err != nil {
				return err
			}
		case "F11":
			if err := x.F11.VDLRead(dec); err != nil {
				return err
			}
		case "F12":
			if err := verror.VDLRead(dec, &x.F12); err != nil {
				return err
			}
		case "F13":
			if err := dec.StartValue(vdl.Uint16Type); err != nil {
				return err
			}
			tmp, err := dec.DecodeUint(16)
			if err != nil {
				return err
			}
			x.F13 = uint16(tmp)
			if err := dec.FinishValue(); err != nil {
				return err
			}
		case "F14":
			if err := x.F14.VDLRead(dec); err != nil {
				return err
			}
		case "F15":
			if err := dec.StartValue(vdl.Uint32Type); err != nil {
				return err
			}
			tmp, err := dec.DecodeUint(32)
			if err != nil {
				return err
			}
			x.F15 = uint32(tmp)
			if err := dec.FinishValue(); err != nil {
				return err
			}
		case "F16":
			if err := x.F16.VDLRead(dec); err != nil {
				return err
			}
		case "F17":
			if err := dec.StartValue(vdl.Uint64Type); err != nil {
				return err
			}
			var err error
			if x.F17, err = dec.DecodeUint(64); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		case "F18":
			if err := x.F18.VDLRead(dec); err != nil {
				return err
			}
		case "F19":
			if err := dec.StartValue(vdl.Int8Type); err != nil {
				return err
			}
			tmp, err := dec.DecodeInt(8)
			if err != nil {
				return err
			}
			x.F19 = int8(tmp)
			if err := dec.FinishValue(); err != nil {
				return err
			}
		case "F20":
			if err := x.F20.VDLRead(dec); err != nil {
				return err
			}
		case "F21":
			if err := dec.StartValue(vdl.Int16Type); err != nil {
				return err
			}
			tmp, err := dec.DecodeInt(16)
			if err != nil {
				return err
			}
			x.F21 = int16(tmp)
			if err := dec.FinishValue(); err != nil {
				return err
			}
		case "F22":
			if err := x.F22.VDLRead(dec); err != nil {
				return err
			}
		case "F23":
			if err := dec.StartValue(vdl.Int32Type); err != nil {
				return err
			}
			tmp, err := dec.DecodeInt(32)
			if err != nil {
				return err
			}
			x.F23 = int32(tmp)
			if err := dec.FinishValue(); err != nil {
				return err
			}
		case "F24":
			if err := x.F24.VDLRead(dec); err != nil {
				return err
			}
		case "F25":
			if err := dec.StartValue(vdl.Int64Type); err != nil {
				return err
			}
			var err error
			if x.F25, err = dec.DecodeInt(64); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		case "F26":
			if err := x.F26.VDLRead(dec); err != nil {
				return err
			}
		case "F27":
			if err := dec.StartValue(vdl.Float32Type); err != nil {
				return err
			}
			tmp, err := dec.DecodeFloat(32)
			if err != nil {
				return err
			}
			x.F27 = float32(tmp)
			if err := dec.FinishValue(); err != nil {
				return err
			}
		case "F28":
			if err := x.F28.VDLRead(dec); err != nil {
				return err
			}
		case "F29":
			if err := dec.StartValue(vdl.Float64Type); err != nil {
				return err
			}
			var err error
			if x.F29, err = dec.DecodeFloat(64); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		case "F30":
			if err := x.F30.VDLRead(dec); err != nil {
				return err
			}
		case "F31":
			if err := dec.StartValue(__VDLType_optional_35); err != nil {
				return err
			}
			if dec.IsNil() {
				x.F31 = nil
				if err := dec.FinishValue(); err != nil {
					return err
				}
			} else {
				x.F31 = new(VStructEmpty)
				dec.IgnoreNextStartValue()
				if err := x.F31.VDLRead(dec); err != nil {
					return err
				}
			}
		case "F32":
			if err := dec.StartValue(__VDLType_optional_37); err != nil {
				return err
			}
			if dec.IsNil() {
				x.F32 = nil
				if err := dec.FinishValue(); err != nil {
					return err
				}
			} else {
				x.F32 = new(VNamedError)
				dec.IgnoreNextStartValue()
				if err := x.F32.VDLRead(dec); err != nil {
					return err
				}
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_Any struct {
	F0 interface{}
}

func (VStructDepth1_Any) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_Any"`
}) {
}

func (x VStructDepth1_Any) VDLIsZero() bool {
	return x == VStructDepth1_Any{}
}

func (x VStructDepth1_Any) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_83); err != nil {
		return err
	}
	if x.F0 != nil {
		if err := enc.NextField("F0"); err != nil {
			return err
		}
		if err := vdl.Write(enc, x.F0); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_Any) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_Any{}
	if err := dec.StartValue(__VDLType_struct_83); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F0":
			var readAny interface{}
			if err := vdl.Read(dec, &readAny); err != nil {
				return err
			}
			x.F0 = readAny
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_Bool struct {
	F1 bool
}

func (VStructDepth1_Bool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_Bool"`
}) {
}

func (x VStructDepth1_Bool) VDLIsZero() bool {
	return x == VStructDepth1_Bool{}
}

func (x VStructDepth1_Bool) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_84); err != nil {
		return err
	}
	if x.F1 {
		if err := enc.NextField("F1"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.BoolType); err != nil {
			return err
		}
		if err := enc.EncodeBool(x.F1); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_Bool) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_Bool{}
	if err := dec.StartValue(__VDLType_struct_84); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F1":
			if err := dec.StartValue(vdl.BoolType); err != nil {
				return err
			}
			var err error
			if x.F1, err = dec.DecodeBool(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_VBool struct {
	F2 VBool
}

func (VStructDepth1_VBool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_VBool"`
}) {
}

func (x VStructDepth1_VBool) VDLIsZero() bool {
	return x == VStructDepth1_VBool{}
}

func (x VStructDepth1_VBool) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_85); err != nil {
		return err
	}
	if x.F2 {
		if err := enc.NextField("F2"); err != nil {
			return err
		}
		if err := x.F2.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_VBool) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_VBool{}
	if err := dec.StartValue(__VDLType_struct_85); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F2":
			if err := x.F2.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_String struct {
	F3 string
}

func (VStructDepth1_String) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_String"`
}) {
}

func (x VStructDepth1_String) VDLIsZero() bool {
	return x == VStructDepth1_String{}
}

func (x VStructDepth1_String) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_86); err != nil {
		return err
	}
	if x.F3 != "" {
		if err := enc.NextField("F3"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.StringType); err != nil {
			return err
		}
		if err := enc.EncodeString(x.F3); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_String) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_String{}
	if err := dec.StartValue(__VDLType_struct_86); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F3":
			if err := dec.StartValue(vdl.StringType); err != nil {
				return err
			}
			var err error
			if x.F3, err = dec.DecodeString(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_VString struct {
	F4 VString
}

func (VStructDepth1_VString) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_VString"`
}) {
}

func (x VStructDepth1_VString) VDLIsZero() bool {
	return x == VStructDepth1_VString{}
}

func (x VStructDepth1_VString) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_87); err != nil {
		return err
	}
	if x.F4 != "" {
		if err := enc.NextField("F4"); err != nil {
			return err
		}
		if err := x.F4.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_VString) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_VString{}
	if err := dec.StartValue(__VDLType_struct_87); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F4":
			if err := x.F4.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_TypeObject struct {
	F5 *vdl.Type
}

func (VStructDepth1_TypeObject) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_TypeObject"`
}) {
}

func (x VStructDepth1_TypeObject) VDLIsZero() bool {
	if x.F5 != nil && x.F5 != vdl.AnyType {
		return false
	}
	return true
}

func (x VStructDepth1_TypeObject) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_88); err != nil {
		return err
	}
	if x.F5 != nil && x.F5 != vdl.AnyType {
		if err := enc.NextField("F5"); err != nil {
			return err
		}
		if err := x.F5.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_TypeObject) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_TypeObject{
		F5: vdl.AnyType,
	}
	if err := dec.StartValue(__VDLType_struct_88); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F5":
			if err := dec.StartValue(vdl.TypeObjectType); err != nil {
				return err
			}
			var err error
			if x.F5, err = dec.DecodeTypeObject(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_Byte struct {
	F6 byte
}

func (VStructDepth1_Byte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_Byte"`
}) {
}

func (x VStructDepth1_Byte) VDLIsZero() bool {
	return x == VStructDepth1_Byte{}
}

func (x VStructDepth1_Byte) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_89); err != nil {
		return err
	}
	if x.F6 != 0 {
		if err := enc.NextField("F6"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.ByteType); err != nil {
			return err
		}
		if err := enc.EncodeUint(uint64(x.F6)); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_Byte) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_Byte{}
	if err := dec.StartValue(__VDLType_struct_89); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F6":
			if err := dec.StartValue(vdl.ByteType); err != nil {
				return err
			}
			tmp, err := dec.DecodeUint(8)
			if err != nil {
				return err
			}
			x.F6 = byte(tmp)
			if err := dec.FinishValue(); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_VByte struct {
	F7 VByte
}

func (VStructDepth1_VByte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_VByte"`
}) {
}

func (x VStructDepth1_VByte) VDLIsZero() bool {
	return x == VStructDepth1_VByte{}
}

func (x VStructDepth1_VByte) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_90); err != nil {
		return err
	}
	if x.F7 != 0 {
		if err := enc.NextField("F7"); err != nil {
			return err
		}
		if err := x.F7.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_VByte) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_VByte{}
	if err := dec.StartValue(__VDLType_struct_90); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F7":
			if err := x.F7.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_VEnumAbc struct {
	F8 VEnumAbc
}

func (VStructDepth1_VEnumAbc) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_VEnumAbc"`
}) {
}

func (x VStructDepth1_VEnumAbc) VDLIsZero() bool {
	return x == VStructDepth1_VEnumAbc{}
}

func (x VStructDepth1_VEnumAbc) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_91); err != nil {
		return err
	}
	if x.F8 != VEnumAbcA {
		if err := enc.NextField("F8"); err != nil {
			return err
		}
		if err := x.F8.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_VEnumAbc) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_VEnumAbc{}
	if err := dec.StartValue(__VDLType_struct_91); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F8":
			if err := x.F8.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_VEnumBcd struct {
	F9 VEnumBcd
}

func (VStructDepth1_VEnumBcd) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_VEnumBcd"`
}) {
}

func (x VStructDepth1_VEnumBcd) VDLIsZero() bool {
	return x == VStructDepth1_VEnumBcd{}
}

func (x VStructDepth1_VEnumBcd) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_92); err != nil {
		return err
	}
	if x.F9 != VEnumBcdB {
		if err := enc.NextField("F9"); err != nil {
			return err
		}
		if err := x.F9.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_VEnumBcd) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_VEnumBcd{}
	if err := dec.StartValue(__VDLType_struct_92); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F9":
			if err := x.F9.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_VStructEmpty struct {
	F10 VStructEmpty
}

func (VStructDepth1_VStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_VStructEmpty"`
}) {
}

func (x VStructDepth1_VStructEmpty) VDLIsZero() bool {
	return x == VStructDepth1_VStructEmpty{}
}

func (x VStructDepth1_VStructEmpty) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_93); err != nil {
		return err
	}
	if x.F10 != (VStructEmpty{}) {
		if err := enc.NextField("F10"); err != nil {
			return err
		}
		if err := x.F10.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_VStructEmpty) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_VStructEmpty{}
	if err := dec.StartValue(__VDLType_struct_93); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F10":
			if err := x.F10.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_VNamedError struct {
	F11 VNamedError
}

func (VStructDepth1_VNamedError) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_VNamedError"`
}) {
}

func (x VStructDepth1_VNamedError) VDLIsZero() bool {
	return x == VStructDepth1_VNamedError{}
}

func (x VStructDepth1_VNamedError) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_94); err != nil {
		return err
	}
	if x.F11 != (VNamedError{}) {
		if err := enc.NextField("F11"); err != nil {
			return err
		}
		if err := x.F11.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_VNamedError) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_VNamedError{}
	if err := dec.StartValue(__VDLType_struct_94); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F11":
			if err := x.F11.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_Error struct {
	F12 error
}

func (VStructDepth1_Error) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_Error"`
}) {
}

func (x VStructDepth1_Error) VDLIsZero() bool {
	return x == VStructDepth1_Error{}
}

func (x VStructDepth1_Error) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_95); err != nil {
		return err
	}
	if x.F12 != nil {
		if err := enc.NextField("F12"); err != nil {
			return err
		}
		if err := verror.VDLWrite(enc, x.F12); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_Error) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_Error{}
	if err := dec.StartValue(__VDLType_struct_95); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F12":
			if err := verror.VDLRead(dec, &x.F12); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_Uint16 struct {
	F13 uint16
}

func (VStructDepth1_Uint16) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_Uint16"`
}) {
}

func (x VStructDepth1_Uint16) VDLIsZero() bool {
	return x == VStructDepth1_Uint16{}
}

func (x VStructDepth1_Uint16) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_96); err != nil {
		return err
	}
	if x.F13 != 0 {
		if err := enc.NextField("F13"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Uint16Type); err != nil {
			return err
		}
		if err := enc.EncodeUint(uint64(x.F13)); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_Uint16) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_Uint16{}
	if err := dec.StartValue(__VDLType_struct_96); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F13":
			if err := dec.StartValue(vdl.Uint16Type); err != nil {
				return err
			}
			tmp, err := dec.DecodeUint(16)
			if err != nil {
				return err
			}
			x.F13 = uint16(tmp)
			if err := dec.FinishValue(); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_VUint16 struct {
	F14 VUint16
}

func (VStructDepth1_VUint16) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_VUint16"`
}) {
}

func (x VStructDepth1_VUint16) VDLIsZero() bool {
	return x == VStructDepth1_VUint16{}
}

func (x VStructDepth1_VUint16) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_97); err != nil {
		return err
	}
	if x.F14 != 0 {
		if err := enc.NextField("F14"); err != nil {
			return err
		}
		if err := x.F14.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_VUint16) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_VUint16{}
	if err := dec.StartValue(__VDLType_struct_97); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F14":
			if err := x.F14.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_Uint32 struct {
	F15 uint32
}

func (VStructDepth1_Uint32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_Uint32"`
}) {
}

func (x VStructDepth1_Uint32) VDLIsZero() bool {
	return x == VStructDepth1_Uint32{}
}

func (x VStructDepth1_Uint32) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_98); err != nil {
		return err
	}
	if x.F15 != 0 {
		if err := enc.NextField("F15"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Uint32Type); err != nil {
			return err
		}
		if err := enc.EncodeUint(uint64(x.F15)); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_Uint32) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_Uint32{}
	if err := dec.StartValue(__VDLType_struct_98); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F15":
			if err := dec.StartValue(vdl.Uint32Type); err != nil {
				return err
			}
			tmp, err := dec.DecodeUint(32)
			if err != nil {
				return err
			}
			x.F15 = uint32(tmp)
			if err := dec.FinishValue(); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_VUint32 struct {
	F16 VUint32
}

func (VStructDepth1_VUint32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_VUint32"`
}) {
}

func (x VStructDepth1_VUint32) VDLIsZero() bool {
	return x == VStructDepth1_VUint32{}
}

func (x VStructDepth1_VUint32) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_99); err != nil {
		return err
	}
	if x.F16 != 0 {
		if err := enc.NextField("F16"); err != nil {
			return err
		}
		if err := x.F16.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_VUint32) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_VUint32{}
	if err := dec.StartValue(__VDLType_struct_99); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F16":
			if err := x.F16.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_Uint64 struct {
	F17 uint64
}

func (VStructDepth1_Uint64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_Uint64"`
}) {
}

func (x VStructDepth1_Uint64) VDLIsZero() bool {
	return x == VStructDepth1_Uint64{}
}

func (x VStructDepth1_Uint64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_100); err != nil {
		return err
	}
	if x.F17 != 0 {
		if err := enc.NextField("F17"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Uint64Type); err != nil {
			return err
		}
		if err := enc.EncodeUint(x.F17); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_Uint64) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_Uint64{}
	if err := dec.StartValue(__VDLType_struct_100); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F17":
			if err := dec.StartValue(vdl.Uint64Type); err != nil {
				return err
			}
			var err error
			if x.F17, err = dec.DecodeUint(64); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_VUint64 struct {
	F18 VUint64
}

func (VStructDepth1_VUint64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_VUint64"`
}) {
}

func (x VStructDepth1_VUint64) VDLIsZero() bool {
	return x == VStructDepth1_VUint64{}
}

func (x VStructDepth1_VUint64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_101); err != nil {
		return err
	}
	if x.F18 != 0 {
		if err := enc.NextField("F18"); err != nil {
			return err
		}
		if err := x.F18.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_VUint64) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_VUint64{}
	if err := dec.StartValue(__VDLType_struct_101); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F18":
			if err := x.F18.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_Int8 struct {
	F19 int8
}

func (VStructDepth1_Int8) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_Int8"`
}) {
}

func (x VStructDepth1_Int8) VDLIsZero() bool {
	return x == VStructDepth1_Int8{}
}

func (x VStructDepth1_Int8) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_102); err != nil {
		return err
	}
	if x.F19 != 0 {
		if err := enc.NextField("F19"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Int8Type); err != nil {
			return err
		}
		if err := enc.EncodeInt(int64(x.F19)); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_Int8) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_Int8{}
	if err := dec.StartValue(__VDLType_struct_102); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F19":
			if err := dec.StartValue(vdl.Int8Type); err != nil {
				return err
			}
			tmp, err := dec.DecodeInt(8)
			if err != nil {
				return err
			}
			x.F19 = int8(tmp)
			if err := dec.FinishValue(); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_VInt8 struct {
	F20 VInt8
}

func (VStructDepth1_VInt8) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_VInt8"`
}) {
}

func (x VStructDepth1_VInt8) VDLIsZero() bool {
	return x == VStructDepth1_VInt8{}
}

func (x VStructDepth1_VInt8) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_103); err != nil {
		return err
	}
	if x.F20 != 0 {
		if err := enc.NextField("F20"); err != nil {
			return err
		}
		if err := x.F20.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_VInt8) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_VInt8{}
	if err := dec.StartValue(__VDLType_struct_103); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F20":
			if err := x.F20.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_Int16 struct {
	F21 int16
}

func (VStructDepth1_Int16) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_Int16"`
}) {
}

func (x VStructDepth1_Int16) VDLIsZero() bool {
	return x == VStructDepth1_Int16{}
}

func (x VStructDepth1_Int16) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_104); err != nil {
		return err
	}
	if x.F21 != 0 {
		if err := enc.NextField("F21"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Int16Type); err != nil {
			return err
		}
		if err := enc.EncodeInt(int64(x.F21)); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_Int16) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_Int16{}
	if err := dec.StartValue(__VDLType_struct_104); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F21":
			if err := dec.StartValue(vdl.Int16Type); err != nil {
				return err
			}
			tmp, err := dec.DecodeInt(16)
			if err != nil {
				return err
			}
			x.F21 = int16(tmp)
			if err := dec.FinishValue(); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_VInt16 struct {
	F22 VInt16
}

func (VStructDepth1_VInt16) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_VInt16"`
}) {
}

func (x VStructDepth1_VInt16) VDLIsZero() bool {
	return x == VStructDepth1_VInt16{}
}

func (x VStructDepth1_VInt16) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_105); err != nil {
		return err
	}
	if x.F22 != 0 {
		if err := enc.NextField("F22"); err != nil {
			return err
		}
		if err := x.F22.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_VInt16) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_VInt16{}
	if err := dec.StartValue(__VDLType_struct_105); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F22":
			if err := x.F22.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_Int32 struct {
	F23 int32
}

func (VStructDepth1_Int32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_Int32"`
}) {
}

func (x VStructDepth1_Int32) VDLIsZero() bool {
	return x == VStructDepth1_Int32{}
}

func (x VStructDepth1_Int32) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_106); err != nil {
		return err
	}
	if x.F23 != 0 {
		if err := enc.NextField("F23"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Int32Type); err != nil {
			return err
		}
		if err := enc.EncodeInt(int64(x.F23)); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_Int32) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_Int32{}
	if err := dec.StartValue(__VDLType_struct_106); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F23":
			if err := dec.StartValue(vdl.Int32Type); err != nil {
				return err
			}
			tmp, err := dec.DecodeInt(32)
			if err != nil {
				return err
			}
			x.F23 = int32(tmp)
			if err := dec.FinishValue(); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_VInt32 struct {
	F24 VInt32
}

func (VStructDepth1_VInt32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_VInt32"`
}) {
}

func (x VStructDepth1_VInt32) VDLIsZero() bool {
	return x == VStructDepth1_VInt32{}
}

func (x VStructDepth1_VInt32) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_107); err != nil {
		return err
	}
	if x.F24 != 0 {
		if err := enc.NextField("F24"); err != nil {
			return err
		}
		if err := x.F24.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_VInt32) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_VInt32{}
	if err := dec.StartValue(__VDLType_struct_107); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F24":
			if err := x.F24.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_Int64 struct {
	F25 int64
}

func (VStructDepth1_Int64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_Int64"`
}) {
}

func (x VStructDepth1_Int64) VDLIsZero() bool {
	return x == VStructDepth1_Int64{}
}

func (x VStructDepth1_Int64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_108); err != nil {
		return err
	}
	if x.F25 != 0 {
		if err := enc.NextField("F25"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Int64Type); err != nil {
			return err
		}
		if err := enc.EncodeInt(x.F25); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_Int64) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_Int64{}
	if err := dec.StartValue(__VDLType_struct_108); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F25":
			if err := dec.StartValue(vdl.Int64Type); err != nil {
				return err
			}
			var err error
			if x.F25, err = dec.DecodeInt(64); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_VInt64 struct {
	F26 VInt64
}

func (VStructDepth1_VInt64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_VInt64"`
}) {
}

func (x VStructDepth1_VInt64) VDLIsZero() bool {
	return x == VStructDepth1_VInt64{}
}

func (x VStructDepth1_VInt64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_109); err != nil {
		return err
	}
	if x.F26 != 0 {
		if err := enc.NextField("F26"); err != nil {
			return err
		}
		if err := x.F26.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_VInt64) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_VInt64{}
	if err := dec.StartValue(__VDLType_struct_109); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F26":
			if err := x.F26.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_Float32 struct {
	F27 float32
}

func (VStructDepth1_Float32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_Float32"`
}) {
}

func (x VStructDepth1_Float32) VDLIsZero() bool {
	return x == VStructDepth1_Float32{}
}

func (x VStructDepth1_Float32) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_110); err != nil {
		return err
	}
	if x.F27 != 0 {
		if err := enc.NextField("F27"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Float32Type); err != nil {
			return err
		}
		if err := enc.EncodeFloat(float64(x.F27)); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_Float32) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_Float32{}
	if err := dec.StartValue(__VDLType_struct_110); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F27":
			if err := dec.StartValue(vdl.Float32Type); err != nil {
				return err
			}
			tmp, err := dec.DecodeFloat(32)
			if err != nil {
				return err
			}
			x.F27 = float32(tmp)
			if err := dec.FinishValue(); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_VFloat32 struct {
	F28 VFloat32
}

func (VStructDepth1_VFloat32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_VFloat32"`
}) {
}

func (x VStructDepth1_VFloat32) VDLIsZero() bool {
	return x == VStructDepth1_VFloat32{}
}

func (x VStructDepth1_VFloat32) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_111); err != nil {
		return err
	}
	if x.F28 != 0 {
		if err := enc.NextField("F28"); err != nil {
			return err
		}
		if err := x.F28.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_VFloat32) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_VFloat32{}
	if err := dec.StartValue(__VDLType_struct_111); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F28":
			if err := x.F28.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_Float64 struct {
	F29 float64
}

func (VStructDepth1_Float64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_Float64"`
}) {
}

func (x VStructDepth1_Float64) VDLIsZero() bool {
	return x == VStructDepth1_Float64{}
}

func (x VStructDepth1_Float64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_112); err != nil {
		return err
	}
	if x.F29 != 0 {
		if err := enc.NextField("F29"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Float64Type); err != nil {
			return err
		}
		if err := enc.EncodeFloat(x.F29); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_Float64) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_Float64{}
	if err := dec.StartValue(__VDLType_struct_112); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F29":
			if err := dec.StartValue(vdl.Float64Type); err != nil {
				return err
			}
			var err error
			if x.F29, err = dec.DecodeFloat(64); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_VFloat64 struct {
	F30 VFloat64
}

func (VStructDepth1_VFloat64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_VFloat64"`
}) {
}

func (x VStructDepth1_VFloat64) VDLIsZero() bool {
	return x == VStructDepth1_VFloat64{}
}

func (x VStructDepth1_VFloat64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_113); err != nil {
		return err
	}
	if x.F30 != 0 {
		if err := enc.NextField("F30"); err != nil {
			return err
		}
		if err := x.F30.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_VFloat64) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_VFloat64{}
	if err := dec.StartValue(__VDLType_struct_113); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F30":
			if err := x.F30.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_OptVStructEmpty struct {
	F31 *VStructEmpty
}

func (VStructDepth1_OptVStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_OptVStructEmpty"`
}) {
}

func (x VStructDepth1_OptVStructEmpty) VDLIsZero() bool {
	return x == VStructDepth1_OptVStructEmpty{}
}

func (x VStructDepth1_OptVStructEmpty) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_114); err != nil {
		return err
	}
	if x.F31 != nil {
		if err := enc.NextField("F31"); err != nil {
			return err
		}
		enc.SetNextStartValueIsOptional()

		if err := x.F31.VDLWrite(enc); err != nil {
			return err
		}

	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_OptVStructEmpty) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_OptVStructEmpty{}
	if err := dec.StartValue(__VDLType_struct_114); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F31":
			if err := dec.StartValue(__VDLType_optional_35); err != nil {
				return err
			}
			if dec.IsNil() {
				x.F31 = nil
				if err := dec.FinishValue(); err != nil {
					return err
				}
			} else {
				x.F31 = new(VStructEmpty)
				dec.IgnoreNextStartValue()
				if err := x.F31.VDLRead(dec); err != nil {
					return err
				}
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth1_OptVNamedError struct {
	F32 *VNamedError
}

func (VStructDepth1_OptVNamedError) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth1_OptVNamedError"`
}) {
}

func (x VStructDepth1_OptVNamedError) VDLIsZero() bool {
	return x == VStructDepth1_OptVNamedError{}
}

func (x VStructDepth1_OptVNamedError) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_115); err != nil {
		return err
	}
	if x.F32 != nil {
		if err := enc.NextField("F32"); err != nil {
			return err
		}
		enc.SetNextStartValueIsOptional()

		if err := x.F32.VDLWrite(enc); err != nil {
			return err
		}

	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth1_OptVNamedError) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth1_OptVNamedError{}
	if err := dec.StartValue(__VDLType_struct_115); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F32":
			if err := dec.StartValue(__VDLType_optional_37); err != nil {
				return err
			}
			if dec.IsNil() {
				x.F32 = nil
				if err := dec.FinishValue(); err != nil {
					return err
				}
			} else {
				x.F32 = new(VNamedError)
				dec.IgnoreNextStartValue()
				if err := x.F32.VDLRead(dec); err != nil {
					return err
				}
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type (
	// VUnionDepth1_All represents any single field of the VUnionDepth1_All union type.
	VUnionDepth1_All interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_All union type.
		__VDLReflect(__VUnionDepth1_AllReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_AllF0 represents field F0 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF0 struct{ Value interface{} }
	// VUnionDepth1_AllF1 represents field F1 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF1 struct{ Value bool }
	// VUnionDepth1_AllF2 represents field F2 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF2 struct{ Value VBool }
	// VUnionDepth1_AllF3 represents field F3 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF3 struct{ Value string }
	// VUnionDepth1_AllF4 represents field F4 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF4 struct{ Value VString }
	// VUnionDepth1_AllF5 represents field F5 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF5 struct{ Value *vdl.Type }
	// VUnionDepth1_AllF6 represents field F6 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF6 struct{ Value byte }
	// VUnionDepth1_AllF7 represents field F7 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF7 struct{ Value VByte }
	// VUnionDepth1_AllF8 represents field F8 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF8 struct{ Value VEnumAbc }
	// VUnionDepth1_AllF9 represents field F9 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF9 struct{ Value VEnumBcd }
	// VUnionDepth1_AllF10 represents field F10 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF10 struct{ Value VStructEmpty }
	// VUnionDepth1_AllF11 represents field F11 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF11 struct{ Value VNamedError }
	// VUnionDepth1_AllF12 represents field F12 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF12 struct{ Value error }
	// VUnionDepth1_AllF13 represents field F13 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF13 struct{ Value uint16 }
	// VUnionDepth1_AllF14 represents field F14 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF14 struct{ Value VUint16 }
	// VUnionDepth1_AllF15 represents field F15 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF15 struct{ Value uint32 }
	// VUnionDepth1_AllF16 represents field F16 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF16 struct{ Value VUint32 }
	// VUnionDepth1_AllF17 represents field F17 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF17 struct{ Value uint64 }
	// VUnionDepth1_AllF18 represents field F18 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF18 struct{ Value VUint64 }
	// VUnionDepth1_AllF19 represents field F19 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF19 struct{ Value int8 }
	// VUnionDepth1_AllF20 represents field F20 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF20 struct{ Value VInt8 }
	// VUnionDepth1_AllF21 represents field F21 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF21 struct{ Value int16 }
	// VUnionDepth1_AllF22 represents field F22 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF22 struct{ Value VInt16 }
	// VUnionDepth1_AllF23 represents field F23 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF23 struct{ Value int32 }
	// VUnionDepth1_AllF24 represents field F24 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF24 struct{ Value VInt32 }
	// VUnionDepth1_AllF25 represents field F25 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF25 struct{ Value int64 }
	// VUnionDepth1_AllF26 represents field F26 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF26 struct{ Value VInt64 }
	// VUnionDepth1_AllF27 represents field F27 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF27 struct{ Value float32 }
	// VUnionDepth1_AllF28 represents field F28 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF28 struct{ Value VFloat32 }
	// VUnionDepth1_AllF29 represents field F29 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF29 struct{ Value float64 }
	// VUnionDepth1_AllF30 represents field F30 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF30 struct{ Value VFloat64 }
	// VUnionDepth1_AllF31 represents field F31 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF31 struct{ Value *VStructEmpty }
	// VUnionDepth1_AllF32 represents field F32 of the VUnionDepth1_All union type.
	VUnionDepth1_AllF32 struct{ Value *VNamedError }
	// __VUnionDepth1_AllReflect describes the VUnionDepth1_All union type.
	__VUnionDepth1_AllReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_All"`
		Type  VUnionDepth1_All
		Union struct {
			F0  VUnionDepth1_AllF0
			F1  VUnionDepth1_AllF1
			F2  VUnionDepth1_AllF2
			F3  VUnionDepth1_AllF3
			F4  VUnionDepth1_AllF4
			F5  VUnionDepth1_AllF5
			F6  VUnionDepth1_AllF6
			F7  VUnionDepth1_AllF7
			F8  VUnionDepth1_AllF8
			F9  VUnionDepth1_AllF9
			F10 VUnionDepth1_AllF10
			F11 VUnionDepth1_AllF11
			F12 VUnionDepth1_AllF12
			F13 VUnionDepth1_AllF13
			F14 VUnionDepth1_AllF14
			F15 VUnionDepth1_AllF15
			F16 VUnionDepth1_AllF16
			F17 VUnionDepth1_AllF17
			F18 VUnionDepth1_AllF18
			F19 VUnionDepth1_AllF19
			F20 VUnionDepth1_AllF20
			F21 VUnionDepth1_AllF21
			F22 VUnionDepth1_AllF22
			F23 VUnionDepth1_AllF23
			F24 VUnionDepth1_AllF24
			F25 VUnionDepth1_AllF25
			F26 VUnionDepth1_AllF26
			F27 VUnionDepth1_AllF27
			F28 VUnionDepth1_AllF28
			F29 VUnionDepth1_AllF29
			F30 VUnionDepth1_AllF30
			F31 VUnionDepth1_AllF31
			F32 VUnionDepth1_AllF32
		}
	}
)

func (x VUnionDepth1_AllF0) Index() int                             { return 0 }
func (x VUnionDepth1_AllF0) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF0) Name() string                           { return "F0" }
func (x VUnionDepth1_AllF0) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF1) Index() int                             { return 1 }
func (x VUnionDepth1_AllF1) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF1) Name() string                           { return "F1" }
func (x VUnionDepth1_AllF1) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF2) Index() int                             { return 2 }
func (x VUnionDepth1_AllF2) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF2) Name() string                           { return "F2" }
func (x VUnionDepth1_AllF2) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF3) Index() int                             { return 3 }
func (x VUnionDepth1_AllF3) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF3) Name() string                           { return "F3" }
func (x VUnionDepth1_AllF3) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF4) Index() int                             { return 4 }
func (x VUnionDepth1_AllF4) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF4) Name() string                           { return "F4" }
func (x VUnionDepth1_AllF4) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF5) Index() int                             { return 5 }
func (x VUnionDepth1_AllF5) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF5) Name() string                           { return "F5" }
func (x VUnionDepth1_AllF5) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF6) Index() int                             { return 6 }
func (x VUnionDepth1_AllF6) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF6) Name() string                           { return "F6" }
func (x VUnionDepth1_AllF6) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF7) Index() int                             { return 7 }
func (x VUnionDepth1_AllF7) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF7) Name() string                           { return "F7" }
func (x VUnionDepth1_AllF7) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF8) Index() int                             { return 8 }
func (x VUnionDepth1_AllF8) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF8) Name() string                           { return "F8" }
func (x VUnionDepth1_AllF8) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF9) Index() int                             { return 9 }
func (x VUnionDepth1_AllF9) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF9) Name() string                           { return "F9" }
func (x VUnionDepth1_AllF9) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF10) Index() int                             { return 10 }
func (x VUnionDepth1_AllF10) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF10) Name() string                           { return "F10" }
func (x VUnionDepth1_AllF10) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF11) Index() int                             { return 11 }
func (x VUnionDepth1_AllF11) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF11) Name() string                           { return "F11" }
func (x VUnionDepth1_AllF11) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF12) Index() int                             { return 12 }
func (x VUnionDepth1_AllF12) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF12) Name() string                           { return "F12" }
func (x VUnionDepth1_AllF12) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF13) Index() int                             { return 13 }
func (x VUnionDepth1_AllF13) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF13) Name() string                           { return "F13" }
func (x VUnionDepth1_AllF13) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF14) Index() int                             { return 14 }
func (x VUnionDepth1_AllF14) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF14) Name() string                           { return "F14" }
func (x VUnionDepth1_AllF14) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF15) Index() int                             { return 15 }
func (x VUnionDepth1_AllF15) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF15) Name() string                           { return "F15" }
func (x VUnionDepth1_AllF15) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF16) Index() int                             { return 16 }
func (x VUnionDepth1_AllF16) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF16) Name() string                           { return "F16" }
func (x VUnionDepth1_AllF16) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF17) Index() int                             { return 17 }
func (x VUnionDepth1_AllF17) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF17) Name() string                           { return "F17" }
func (x VUnionDepth1_AllF17) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF18) Index() int                             { return 18 }
func (x VUnionDepth1_AllF18) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF18) Name() string                           { return "F18" }
func (x VUnionDepth1_AllF18) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF19) Index() int                             { return 19 }
func (x VUnionDepth1_AllF19) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF19) Name() string                           { return "F19" }
func (x VUnionDepth1_AllF19) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF20) Index() int                             { return 20 }
func (x VUnionDepth1_AllF20) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF20) Name() string                           { return "F20" }
func (x VUnionDepth1_AllF20) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF21) Index() int                             { return 21 }
func (x VUnionDepth1_AllF21) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF21) Name() string                           { return "F21" }
func (x VUnionDepth1_AllF21) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF22) Index() int                             { return 22 }
func (x VUnionDepth1_AllF22) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF22) Name() string                           { return "F22" }
func (x VUnionDepth1_AllF22) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF23) Index() int                             { return 23 }
func (x VUnionDepth1_AllF23) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF23) Name() string                           { return "F23" }
func (x VUnionDepth1_AllF23) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF24) Index() int                             { return 24 }
func (x VUnionDepth1_AllF24) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF24) Name() string                           { return "F24" }
func (x VUnionDepth1_AllF24) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF25) Index() int                             { return 25 }
func (x VUnionDepth1_AllF25) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF25) Name() string                           { return "F25" }
func (x VUnionDepth1_AllF25) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF26) Index() int                             { return 26 }
func (x VUnionDepth1_AllF26) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF26) Name() string                           { return "F26" }
func (x VUnionDepth1_AllF26) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF27) Index() int                             { return 27 }
func (x VUnionDepth1_AllF27) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF27) Name() string                           { return "F27" }
func (x VUnionDepth1_AllF27) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF28) Index() int                             { return 28 }
func (x VUnionDepth1_AllF28) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF28) Name() string                           { return "F28" }
func (x VUnionDepth1_AllF28) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF29) Index() int                             { return 29 }
func (x VUnionDepth1_AllF29) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF29) Name() string                           { return "F29" }
func (x VUnionDepth1_AllF29) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF30) Index() int                             { return 30 }
func (x VUnionDepth1_AllF30) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF30) Name() string                           { return "F30" }
func (x VUnionDepth1_AllF30) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF31) Index() int                             { return 31 }
func (x VUnionDepth1_AllF31) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF31) Name() string                           { return "F31" }
func (x VUnionDepth1_AllF31) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF32) Index() int                             { return 32 }
func (x VUnionDepth1_AllF32) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AllF32) Name() string                           { return "F32" }
func (x VUnionDepth1_AllF32) __VDLReflect(__VUnionDepth1_AllReflect) {}

func (x VUnionDepth1_AllF0) VDLIsZero() bool {
	return x.Value == nil
}

func (x VUnionDepth1_AllF1) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF2) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF3) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF4) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF5) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF6) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF7) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF8) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF9) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF10) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF11) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF12) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF13) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF14) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF15) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF16) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF17) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF18) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF19) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF20) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF21) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF22) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF23) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF24) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF25) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF26) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF27) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF28) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF29) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF30) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF31) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF32) VDLIsZero() bool {
	return false
}

func (x VUnionDepth1_AllF0) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F0"); err != nil {
		return err
	}
	if err := vdl.Write(enc, x.Value); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF1) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F1"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.BoolType); err != nil {
		return err
	}
	if err := enc.EncodeBool(x.Value); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF2) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F2"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF3) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F3"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.StringType); err != nil {
		return err
	}
	if err := enc.EncodeString(x.Value); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF4) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F4"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF5) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F5"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF6) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F6"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.ByteType); err != nil {
		return err
	}
	if err := enc.EncodeUint(uint64(x.Value)); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF7) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F7"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF8) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F8"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF9) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F9"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF10) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F10"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF11) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F11"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF12) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F12"); err != nil {
		return err
	}
	if err := verror.VDLWrite(enc, x.Value); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF13) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F13"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.Uint16Type); err != nil {
		return err
	}
	if err := enc.EncodeUint(uint64(x.Value)); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF14) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F14"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF15) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F15"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.Uint32Type); err != nil {
		return err
	}
	if err := enc.EncodeUint(uint64(x.Value)); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF16) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F16"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF17) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F17"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.Uint64Type); err != nil {
		return err
	}
	if err := enc.EncodeUint(x.Value); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF18) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F18"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF19) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F19"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.Int8Type); err != nil {
		return err
	}
	if err := enc.EncodeInt(int64(x.Value)); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF20) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F20"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF21) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F21"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.Int16Type); err != nil {
		return err
	}
	if err := enc.EncodeInt(int64(x.Value)); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF22) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F22"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF23) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F23"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.Int32Type); err != nil {
		return err
	}
	if err := enc.EncodeInt(int64(x.Value)); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF24) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F24"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF25) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F25"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.Int64Type); err != nil {
		return err
	}
	if err := enc.EncodeInt(x.Value); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF26) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F26"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF27) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F27"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.Float32Type); err != nil {
		return err
	}
	if err := enc.EncodeFloat(float64(x.Value)); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF28) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F28"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF29) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F29"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.Float64Type); err != nil {
		return err
	}
	if err := enc.EncodeFloat(x.Value); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF30) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F30"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF31) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F31"); err != nil {
		return err
	}
	if x.Value == nil {
		if err := enc.NilValue(__VDLType_optional_35); err != nil {
			return err
		}
	} else {
		enc.SetNextStartValueIsOptional()

		if err := x.Value.VDLWrite(enc); err != nil {
			return err
		}

	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth1_AllF32) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	if err := enc.NextField("F32"); err != nil {
		return err
	}
	if x.Value == nil {
		if err := enc.NilValue(__VDLType_optional_37); err != nil {
			return err
		}
	} else {
		enc.SetNextStartValueIsOptional()

		if err := x.Value.VDLWrite(enc); err != nil {
			return err
		}

	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_All(dec vdl.Decoder, x *VUnionDepth1_All) error {
	if err := dec.StartValue(__VDLType_union_116); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F0":
		var field VUnionDepth1_AllF0
		var readAny interface{}
		if err := vdl.Read(dec, &readAny); err != nil {
			return err
		}
		field.Value = readAny
		*x = field
	case "F1":
		var field VUnionDepth1_AllF1
		if err := dec.StartValue(vdl.BoolType); err != nil {
			return err
		}
		var err error
		if field.Value, err = dec.DecodeBool(); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "F2":
		var field VUnionDepth1_AllF2
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F3":
		var field VUnionDepth1_AllF3
		if err := dec.StartValue(vdl.StringType); err != nil {
			return err
		}
		var err error
		if field.Value, err = dec.DecodeString(); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "F4":
		var field VUnionDepth1_AllF4
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F5":
		var field VUnionDepth1_AllF5
		if err := dec.StartValue(vdl.TypeObjectType); err != nil {
			return err
		}
		var err error
		if field.Value, err = dec.DecodeTypeObject(); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "F6":
		var field VUnionDepth1_AllF6
		if err := dec.StartValue(vdl.ByteType); err != nil {
			return err
		}
		tmp, err := dec.DecodeUint(8)
		if err != nil {
			return err
		}
		field.Value = byte(tmp)
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "F7":
		var field VUnionDepth1_AllF7
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F8":
		var field VUnionDepth1_AllF8
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F9":
		var field VUnionDepth1_AllF9
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F10":
		var field VUnionDepth1_AllF10
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F11":
		var field VUnionDepth1_AllF11
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F12":
		var field VUnionDepth1_AllF12
		if err := verror.VDLRead(dec, &field.Value); err != nil {
			return err
		}
		*x = field
	case "F13":
		var field VUnionDepth1_AllF13
		if err := dec.StartValue(vdl.Uint16Type); err != nil {
			return err
		}
		tmp, err := dec.DecodeUint(16)
		if err != nil {
			return err
		}
		field.Value = uint16(tmp)
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "F14":
		var field VUnionDepth1_AllF14
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F15":
		var field VUnionDepth1_AllF15
		if err := dec.StartValue(vdl.Uint32Type); err != nil {
			return err
		}
		tmp, err := dec.DecodeUint(32)
		if err != nil {
			return err
		}
		field.Value = uint32(tmp)
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "F16":
		var field VUnionDepth1_AllF16
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F17":
		var field VUnionDepth1_AllF17
		if err := dec.StartValue(vdl.Uint64Type); err != nil {
			return err
		}
		var err error
		if field.Value, err = dec.DecodeUint(64); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "F18":
		var field VUnionDepth1_AllF18
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F19":
		var field VUnionDepth1_AllF19
		if err := dec.StartValue(vdl.Int8Type); err != nil {
			return err
		}
		tmp, err := dec.DecodeInt(8)
		if err != nil {
			return err
		}
		field.Value = int8(tmp)
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "F20":
		var field VUnionDepth1_AllF20
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F21":
		var field VUnionDepth1_AllF21
		if err := dec.StartValue(vdl.Int16Type); err != nil {
			return err
		}
		tmp, err := dec.DecodeInt(16)
		if err != nil {
			return err
		}
		field.Value = int16(tmp)
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "F22":
		var field VUnionDepth1_AllF22
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F23":
		var field VUnionDepth1_AllF23
		if err := dec.StartValue(vdl.Int32Type); err != nil {
			return err
		}
		tmp, err := dec.DecodeInt(32)
		if err != nil {
			return err
		}
		field.Value = int32(tmp)
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "F24":
		var field VUnionDepth1_AllF24
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F25":
		var field VUnionDepth1_AllF25
		if err := dec.StartValue(vdl.Int64Type); err != nil {
			return err
		}
		var err error
		if field.Value, err = dec.DecodeInt(64); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "F26":
		var field VUnionDepth1_AllF26
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F27":
		var field VUnionDepth1_AllF27
		if err := dec.StartValue(vdl.Float32Type); err != nil {
			return err
		}
		tmp, err := dec.DecodeFloat(32)
		if err != nil {
			return err
		}
		field.Value = float32(tmp)
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "F28":
		var field VUnionDepth1_AllF28
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F29":
		var field VUnionDepth1_AllF29
		if err := dec.StartValue(vdl.Float64Type); err != nil {
			return err
		}
		var err error
		if field.Value, err = dec.DecodeFloat(64); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "F30":
		var field VUnionDepth1_AllF30
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F31":
		var field VUnionDepth1_AllF31
		if err := dec.StartValue(__VDLType_optional_35); err != nil {
			return err
		}
		if dec.IsNil() {
			field.Value = nil
			if err := dec.FinishValue(); err != nil {
				return err
			}
		} else {
			field.Value = new(VStructEmpty)
			dec.IgnoreNextStartValue()
			if err := field.Value.VDLRead(dec); err != nil {
				return err
			}
		}
		*x = field
	case "F32":
		var field VUnionDepth1_AllF32
		if err := dec.StartValue(__VDLType_optional_37); err != nil {
			return err
		}
		if dec.IsNil() {
			field.Value = nil
			if err := dec.FinishValue(); err != nil {
				return err
			}
		} else {
			field.Value = new(VNamedError)
			dec.IgnoreNextStartValue()
			if err := field.Value.VDLRead(dec); err != nil {
				return err
			}
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_Any represents any single field of the VUnionDepth1_Any union type.
	VUnionDepth1_Any interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_Any union type.
		__VDLReflect(__VUnionDepth1_AnyReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_AnyF0 represents field F0 of the VUnionDepth1_Any union type.
	VUnionDepth1_AnyF0 struct{ Value interface{} }
	// __VUnionDepth1_AnyReflect describes the VUnionDepth1_Any union type.
	__VUnionDepth1_AnyReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_Any"`
		Type  VUnionDepth1_Any
		Union struct {
			F0 VUnionDepth1_AnyF0
		}
	}
)

func (x VUnionDepth1_AnyF0) Index() int                             { return 0 }
func (x VUnionDepth1_AnyF0) Interface() interface{}                 { return x.Value }
func (x VUnionDepth1_AnyF0) Name() string                           { return "F0" }
func (x VUnionDepth1_AnyF0) __VDLReflect(__VUnionDepth1_AnyReflect) {}

func (x VUnionDepth1_AnyF0) VDLIsZero() bool {
	return x.Value == nil
}

func (x VUnionDepth1_AnyF0) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_117); err != nil {
		return err
	}
	if err := enc.NextField("F0"); err != nil {
		return err
	}
	if err := vdl.Write(enc, x.Value); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_Any(dec vdl.Decoder, x *VUnionDepth1_Any) error {
	if err := dec.StartValue(__VDLType_union_117); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F0":
		var field VUnionDepth1_AnyF0
		var readAny interface{}
		if err := vdl.Read(dec, &readAny); err != nil {
			return err
		}
		field.Value = readAny
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_Bool represents any single field of the VUnionDepth1_Bool union type.
	VUnionDepth1_Bool interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_Bool union type.
		__VDLReflect(__VUnionDepth1_BoolReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_BoolF1 represents field F1 of the VUnionDepth1_Bool union type.
	VUnionDepth1_BoolF1 struct{ Value bool }
	// __VUnionDepth1_BoolReflect describes the VUnionDepth1_Bool union type.
	__VUnionDepth1_BoolReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_Bool"`
		Type  VUnionDepth1_Bool
		Union struct {
			F1 VUnionDepth1_BoolF1
		}
	}
)

func (x VUnionDepth1_BoolF1) Index() int                              { return 0 }
func (x VUnionDepth1_BoolF1) Interface() interface{}                  { return x.Value }
func (x VUnionDepth1_BoolF1) Name() string                            { return "F1" }
func (x VUnionDepth1_BoolF1) __VDLReflect(__VUnionDepth1_BoolReflect) {}

func (x VUnionDepth1_BoolF1) VDLIsZero() bool {
	return !x.Value
}

func (x VUnionDepth1_BoolF1) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_118); err != nil {
		return err
	}
	if err := enc.NextField("F1"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.BoolType); err != nil {
		return err
	}
	if err := enc.EncodeBool(x.Value); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_Bool(dec vdl.Decoder, x *VUnionDepth1_Bool) error {
	if err := dec.StartValue(__VDLType_union_118); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F1":
		var field VUnionDepth1_BoolF1
		if err := dec.StartValue(vdl.BoolType); err != nil {
			return err
		}
		var err error
		if field.Value, err = dec.DecodeBool(); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_VBool represents any single field of the VUnionDepth1_VBool union type.
	VUnionDepth1_VBool interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_VBool union type.
		__VDLReflect(__VUnionDepth1_VBoolReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_VBoolF2 represents field F2 of the VUnionDepth1_VBool union type.
	VUnionDepth1_VBoolF2 struct{ Value VBool }
	// __VUnionDepth1_VBoolReflect describes the VUnionDepth1_VBool union type.
	__VUnionDepth1_VBoolReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_VBool"`
		Type  VUnionDepth1_VBool
		Union struct {
			F2 VUnionDepth1_VBoolF2
		}
	}
)

func (x VUnionDepth1_VBoolF2) Index() int                               { return 0 }
func (x VUnionDepth1_VBoolF2) Interface() interface{}                   { return x.Value }
func (x VUnionDepth1_VBoolF2) Name() string                             { return "F2" }
func (x VUnionDepth1_VBoolF2) __VDLReflect(__VUnionDepth1_VBoolReflect) {}

func (x VUnionDepth1_VBoolF2) VDLIsZero() bool {
	return bool(!x.Value)
}

func (x VUnionDepth1_VBoolF2) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_119); err != nil {
		return err
	}
	if err := enc.NextField("F2"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_VBool(dec vdl.Decoder, x *VUnionDepth1_VBool) error {
	if err := dec.StartValue(__VDLType_union_119); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F2":
		var field VUnionDepth1_VBoolF2
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_String represents any single field of the VUnionDepth1_String union type.
	VUnionDepth1_String interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_String union type.
		__VDLReflect(__VUnionDepth1_StringReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_StringF3 represents field F3 of the VUnionDepth1_String union type.
	VUnionDepth1_StringF3 struct{ Value string }
	// __VUnionDepth1_StringReflect describes the VUnionDepth1_String union type.
	__VUnionDepth1_StringReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_String"`
		Type  VUnionDepth1_String
		Union struct {
			F3 VUnionDepth1_StringF3
		}
	}
)

func (x VUnionDepth1_StringF3) Index() int                                { return 0 }
func (x VUnionDepth1_StringF3) Interface() interface{}                    { return x.Value }
func (x VUnionDepth1_StringF3) Name() string                              { return "F3" }
func (x VUnionDepth1_StringF3) __VDLReflect(__VUnionDepth1_StringReflect) {}

func (x VUnionDepth1_StringF3) VDLIsZero() bool {
	return x.Value == ""
}

func (x VUnionDepth1_StringF3) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_120); err != nil {
		return err
	}
	if err := enc.NextField("F3"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.StringType); err != nil {
		return err
	}
	if err := enc.EncodeString(x.Value); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_String(dec vdl.Decoder, x *VUnionDepth1_String) error {
	if err := dec.StartValue(__VDLType_union_120); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F3":
		var field VUnionDepth1_StringF3
		if err := dec.StartValue(vdl.StringType); err != nil {
			return err
		}
		var err error
		if field.Value, err = dec.DecodeString(); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_VString represents any single field of the VUnionDepth1_VString union type.
	VUnionDepth1_VString interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_VString union type.
		__VDLReflect(__VUnionDepth1_VStringReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_VStringF4 represents field F4 of the VUnionDepth1_VString union type.
	VUnionDepth1_VStringF4 struct{ Value VString }
	// __VUnionDepth1_VStringReflect describes the VUnionDepth1_VString union type.
	__VUnionDepth1_VStringReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_VString"`
		Type  VUnionDepth1_VString
		Union struct {
			F4 VUnionDepth1_VStringF4
		}
	}
)

func (x VUnionDepth1_VStringF4) Index() int                                 { return 0 }
func (x VUnionDepth1_VStringF4) Interface() interface{}                     { return x.Value }
func (x VUnionDepth1_VStringF4) Name() string                               { return "F4" }
func (x VUnionDepth1_VStringF4) __VDLReflect(__VUnionDepth1_VStringReflect) {}

func (x VUnionDepth1_VStringF4) VDLIsZero() bool {
	return x.Value == ""
}

func (x VUnionDepth1_VStringF4) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_121); err != nil {
		return err
	}
	if err := enc.NextField("F4"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_VString(dec vdl.Decoder, x *VUnionDepth1_VString) error {
	if err := dec.StartValue(__VDLType_union_121); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F4":
		var field VUnionDepth1_VStringF4
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_TypeObject represents any single field of the VUnionDepth1_TypeObject union type.
	VUnionDepth1_TypeObject interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_TypeObject union type.
		__VDLReflect(__VUnionDepth1_TypeObjectReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_TypeObjectF5 represents field F5 of the VUnionDepth1_TypeObject union type.
	VUnionDepth1_TypeObjectF5 struct{ Value *vdl.Type }
	// __VUnionDepth1_TypeObjectReflect describes the VUnionDepth1_TypeObject union type.
	__VUnionDepth1_TypeObjectReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_TypeObject"`
		Type  VUnionDepth1_TypeObject
		Union struct {
			F5 VUnionDepth1_TypeObjectF5
		}
	}
)

func (x VUnionDepth1_TypeObjectF5) Index() int                                    { return 0 }
func (x VUnionDepth1_TypeObjectF5) Interface() interface{}                        { return x.Value }
func (x VUnionDepth1_TypeObjectF5) Name() string                                  { return "F5" }
func (x VUnionDepth1_TypeObjectF5) __VDLReflect(__VUnionDepth1_TypeObjectReflect) {}

func (x VUnionDepth1_TypeObjectF5) VDLIsZero() bool {
	return x.Value == nil || x.Value == vdl.AnyType
}

func (x VUnionDepth1_TypeObjectF5) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_122); err != nil {
		return err
	}
	if err := enc.NextField("F5"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_TypeObject(dec vdl.Decoder, x *VUnionDepth1_TypeObject) error {
	if err := dec.StartValue(__VDLType_union_122); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F5":
		var field VUnionDepth1_TypeObjectF5
		if err := dec.StartValue(vdl.TypeObjectType); err != nil {
			return err
		}
		var err error
		if field.Value, err = dec.DecodeTypeObject(); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_Byte represents any single field of the VUnionDepth1_Byte union type.
	VUnionDepth1_Byte interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_Byte union type.
		__VDLReflect(__VUnionDepth1_ByteReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_ByteF6 represents field F6 of the VUnionDepth1_Byte union type.
	VUnionDepth1_ByteF6 struct{ Value byte }
	// __VUnionDepth1_ByteReflect describes the VUnionDepth1_Byte union type.
	__VUnionDepth1_ByteReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_Byte"`
		Type  VUnionDepth1_Byte
		Union struct {
			F6 VUnionDepth1_ByteF6
		}
	}
)

func (x VUnionDepth1_ByteF6) Index() int                              { return 0 }
func (x VUnionDepth1_ByteF6) Interface() interface{}                  { return x.Value }
func (x VUnionDepth1_ByteF6) Name() string                            { return "F6" }
func (x VUnionDepth1_ByteF6) __VDLReflect(__VUnionDepth1_ByteReflect) {}

func (x VUnionDepth1_ByteF6) VDLIsZero() bool {
	return x.Value == 0
}

func (x VUnionDepth1_ByteF6) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_123); err != nil {
		return err
	}
	if err := enc.NextField("F6"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.ByteType); err != nil {
		return err
	}
	if err := enc.EncodeUint(uint64(x.Value)); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_Byte(dec vdl.Decoder, x *VUnionDepth1_Byte) error {
	if err := dec.StartValue(__VDLType_union_123); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F6":
		var field VUnionDepth1_ByteF6
		if err := dec.StartValue(vdl.ByteType); err != nil {
			return err
		}
		tmp, err := dec.DecodeUint(8)
		if err != nil {
			return err
		}
		field.Value = byte(tmp)
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_VByte represents any single field of the VUnionDepth1_VByte union type.
	VUnionDepth1_VByte interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_VByte union type.
		__VDLReflect(__VUnionDepth1_VByteReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_VByteF7 represents field F7 of the VUnionDepth1_VByte union type.
	VUnionDepth1_VByteF7 struct{ Value VByte }
	// __VUnionDepth1_VByteReflect describes the VUnionDepth1_VByte union type.
	__VUnionDepth1_VByteReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_VByte"`
		Type  VUnionDepth1_VByte
		Union struct {
			F7 VUnionDepth1_VByteF7
		}
	}
)

func (x VUnionDepth1_VByteF7) Index() int                               { return 0 }
func (x VUnionDepth1_VByteF7) Interface() interface{}                   { return x.Value }
func (x VUnionDepth1_VByteF7) Name() string                             { return "F7" }
func (x VUnionDepth1_VByteF7) __VDLReflect(__VUnionDepth1_VByteReflect) {}

func (x VUnionDepth1_VByteF7) VDLIsZero() bool {
	return x.Value == 0
}

func (x VUnionDepth1_VByteF7) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_124); err != nil {
		return err
	}
	if err := enc.NextField("F7"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_VByte(dec vdl.Decoder, x *VUnionDepth1_VByte) error {
	if err := dec.StartValue(__VDLType_union_124); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F7":
		var field VUnionDepth1_VByteF7
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_VEnumAbc represents any single field of the VUnionDepth1_VEnumAbc union type.
	VUnionDepth1_VEnumAbc interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_VEnumAbc union type.
		__VDLReflect(__VUnionDepth1_VEnumAbcReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_VEnumAbcF8 represents field F8 of the VUnionDepth1_VEnumAbc union type.
	VUnionDepth1_VEnumAbcF8 struct{ Value VEnumAbc }
	// __VUnionDepth1_VEnumAbcReflect describes the VUnionDepth1_VEnumAbc union type.
	__VUnionDepth1_VEnumAbcReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_VEnumAbc"`
		Type  VUnionDepth1_VEnumAbc
		Union struct {
			F8 VUnionDepth1_VEnumAbcF8
		}
	}
)

func (x VUnionDepth1_VEnumAbcF8) Index() int                                  { return 0 }
func (x VUnionDepth1_VEnumAbcF8) Interface() interface{}                      { return x.Value }
func (x VUnionDepth1_VEnumAbcF8) Name() string                                { return "F8" }
func (x VUnionDepth1_VEnumAbcF8) __VDLReflect(__VUnionDepth1_VEnumAbcReflect) {}

func (x VUnionDepth1_VEnumAbcF8) VDLIsZero() bool {
	return x.Value == VEnumAbcA
}

func (x VUnionDepth1_VEnumAbcF8) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_125); err != nil {
		return err
	}
	if err := enc.NextField("F8"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_VEnumAbc(dec vdl.Decoder, x *VUnionDepth1_VEnumAbc) error {
	if err := dec.StartValue(__VDLType_union_125); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F8":
		var field VUnionDepth1_VEnumAbcF8
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_VEnumBcd represents any single field of the VUnionDepth1_VEnumBcd union type.
	VUnionDepth1_VEnumBcd interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_VEnumBcd union type.
		__VDLReflect(__VUnionDepth1_VEnumBcdReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_VEnumBcdF9 represents field F9 of the VUnionDepth1_VEnumBcd union type.
	VUnionDepth1_VEnumBcdF9 struct{ Value VEnumBcd }
	// __VUnionDepth1_VEnumBcdReflect describes the VUnionDepth1_VEnumBcd union type.
	__VUnionDepth1_VEnumBcdReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_VEnumBcd"`
		Type  VUnionDepth1_VEnumBcd
		Union struct {
			F9 VUnionDepth1_VEnumBcdF9
		}
	}
)

func (x VUnionDepth1_VEnumBcdF9) Index() int                                  { return 0 }
func (x VUnionDepth1_VEnumBcdF9) Interface() interface{}                      { return x.Value }
func (x VUnionDepth1_VEnumBcdF9) Name() string                                { return "F9" }
func (x VUnionDepth1_VEnumBcdF9) __VDLReflect(__VUnionDepth1_VEnumBcdReflect) {}

func (x VUnionDepth1_VEnumBcdF9) VDLIsZero() bool {
	return x.Value == VEnumBcdB
}

func (x VUnionDepth1_VEnumBcdF9) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_126); err != nil {
		return err
	}
	if err := enc.NextField("F9"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_VEnumBcd(dec vdl.Decoder, x *VUnionDepth1_VEnumBcd) error {
	if err := dec.StartValue(__VDLType_union_126); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F9":
		var field VUnionDepth1_VEnumBcdF9
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_VStructEmpty represents any single field of the VUnionDepth1_VStructEmpty union type.
	VUnionDepth1_VStructEmpty interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_VStructEmpty union type.
		__VDLReflect(__VUnionDepth1_VStructEmptyReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_VStructEmptyF10 represents field F10 of the VUnionDepth1_VStructEmpty union type.
	VUnionDepth1_VStructEmptyF10 struct{ Value VStructEmpty }
	// __VUnionDepth1_VStructEmptyReflect describes the VUnionDepth1_VStructEmpty union type.
	__VUnionDepth1_VStructEmptyReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_VStructEmpty"`
		Type  VUnionDepth1_VStructEmpty
		Union struct {
			F10 VUnionDepth1_VStructEmptyF10
		}
	}
)

func (x VUnionDepth1_VStructEmptyF10) Index() int                                      { return 0 }
func (x VUnionDepth1_VStructEmptyF10) Interface() interface{}                          { return x.Value }
func (x VUnionDepth1_VStructEmptyF10) Name() string                                    { return "F10" }
func (x VUnionDepth1_VStructEmptyF10) __VDLReflect(__VUnionDepth1_VStructEmptyReflect) {}

func (x VUnionDepth1_VStructEmptyF10) VDLIsZero() bool {
	return x.Value == VStructEmpty{}
}

func (x VUnionDepth1_VStructEmptyF10) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_127); err != nil {
		return err
	}
	if err := enc.NextField("F10"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_VStructEmpty(dec vdl.Decoder, x *VUnionDepth1_VStructEmpty) error {
	if err := dec.StartValue(__VDLType_union_127); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F10":
		var field VUnionDepth1_VStructEmptyF10
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_VNamedError represents any single field of the VUnionDepth1_VNamedError union type.
	VUnionDepth1_VNamedError interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_VNamedError union type.
		__VDLReflect(__VUnionDepth1_VNamedErrorReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_VNamedErrorF11 represents field F11 of the VUnionDepth1_VNamedError union type.
	VUnionDepth1_VNamedErrorF11 struct{ Value VNamedError }
	// __VUnionDepth1_VNamedErrorReflect describes the VUnionDepth1_VNamedError union type.
	__VUnionDepth1_VNamedErrorReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_VNamedError"`
		Type  VUnionDepth1_VNamedError
		Union struct {
			F11 VUnionDepth1_VNamedErrorF11
		}
	}
)

func (x VUnionDepth1_VNamedErrorF11) Index() int                                     { return 0 }
func (x VUnionDepth1_VNamedErrorF11) Interface() interface{}                         { return x.Value }
func (x VUnionDepth1_VNamedErrorF11) Name() string                                   { return "F11" }
func (x VUnionDepth1_VNamedErrorF11) __VDLReflect(__VUnionDepth1_VNamedErrorReflect) {}

func (x VUnionDepth1_VNamedErrorF11) VDLIsZero() bool {
	return x.Value == VNamedError{}
}

func (x VUnionDepth1_VNamedErrorF11) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_128); err != nil {
		return err
	}
	if err := enc.NextField("F11"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_VNamedError(dec vdl.Decoder, x *VUnionDepth1_VNamedError) error {
	if err := dec.StartValue(__VDLType_union_128); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F11":
		var field VUnionDepth1_VNamedErrorF11
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_Error represents any single field of the VUnionDepth1_Error union type.
	VUnionDepth1_Error interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_Error union type.
		__VDLReflect(__VUnionDepth1_ErrorReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_ErrorF12 represents field F12 of the VUnionDepth1_Error union type.
	VUnionDepth1_ErrorF12 struct{ Value error }
	// __VUnionDepth1_ErrorReflect describes the VUnionDepth1_Error union type.
	__VUnionDepth1_ErrorReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_Error"`
		Type  VUnionDepth1_Error
		Union struct {
			F12 VUnionDepth1_ErrorF12
		}
	}
)

func (x VUnionDepth1_ErrorF12) Index() int                               { return 0 }
func (x VUnionDepth1_ErrorF12) Interface() interface{}                   { return x.Value }
func (x VUnionDepth1_ErrorF12) Name() string                             { return "F12" }
func (x VUnionDepth1_ErrorF12) __VDLReflect(__VUnionDepth1_ErrorReflect) {}

func (x VUnionDepth1_ErrorF12) VDLIsZero() bool {
	return x.Value == nil
}

func (x VUnionDepth1_ErrorF12) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_129); err != nil {
		return err
	}
	if err := enc.NextField("F12"); err != nil {
		return err
	}
	if err := verror.VDLWrite(enc, x.Value); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_Error(dec vdl.Decoder, x *VUnionDepth1_Error) error {
	if err := dec.StartValue(__VDLType_union_129); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F12":
		var field VUnionDepth1_ErrorF12
		if err := verror.VDLRead(dec, &field.Value); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_Uint16 represents any single field of the VUnionDepth1_Uint16 union type.
	VUnionDepth1_Uint16 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_Uint16 union type.
		__VDLReflect(__VUnionDepth1_Uint16Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_Uint16F13 represents field F13 of the VUnionDepth1_Uint16 union type.
	VUnionDepth1_Uint16F13 struct{ Value uint16 }
	// __VUnionDepth1_Uint16Reflect describes the VUnionDepth1_Uint16 union type.
	__VUnionDepth1_Uint16Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_Uint16"`
		Type  VUnionDepth1_Uint16
		Union struct {
			F13 VUnionDepth1_Uint16F13
		}
	}
)

func (x VUnionDepth1_Uint16F13) Index() int                                { return 0 }
func (x VUnionDepth1_Uint16F13) Interface() interface{}                    { return x.Value }
func (x VUnionDepth1_Uint16F13) Name() string                              { return "F13" }
func (x VUnionDepth1_Uint16F13) __VDLReflect(__VUnionDepth1_Uint16Reflect) {}

func (x VUnionDepth1_Uint16F13) VDLIsZero() bool {
	return x.Value == 0
}

func (x VUnionDepth1_Uint16F13) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_130); err != nil {
		return err
	}
	if err := enc.NextField("F13"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.Uint16Type); err != nil {
		return err
	}
	if err := enc.EncodeUint(uint64(x.Value)); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_Uint16(dec vdl.Decoder, x *VUnionDepth1_Uint16) error {
	if err := dec.StartValue(__VDLType_union_130); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F13":
		var field VUnionDepth1_Uint16F13
		if err := dec.StartValue(vdl.Uint16Type); err != nil {
			return err
		}
		tmp, err := dec.DecodeUint(16)
		if err != nil {
			return err
		}
		field.Value = uint16(tmp)
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_VUint16 represents any single field of the VUnionDepth1_VUint16 union type.
	VUnionDepth1_VUint16 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_VUint16 union type.
		__VDLReflect(__VUnionDepth1_VUint16Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_VUint16F14 represents field F14 of the VUnionDepth1_VUint16 union type.
	VUnionDepth1_VUint16F14 struct{ Value VUint16 }
	// __VUnionDepth1_VUint16Reflect describes the VUnionDepth1_VUint16 union type.
	__VUnionDepth1_VUint16Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_VUint16"`
		Type  VUnionDepth1_VUint16
		Union struct {
			F14 VUnionDepth1_VUint16F14
		}
	}
)

func (x VUnionDepth1_VUint16F14) Index() int                                 { return 0 }
func (x VUnionDepth1_VUint16F14) Interface() interface{}                     { return x.Value }
func (x VUnionDepth1_VUint16F14) Name() string                               { return "F14" }
func (x VUnionDepth1_VUint16F14) __VDLReflect(__VUnionDepth1_VUint16Reflect) {}

func (x VUnionDepth1_VUint16F14) VDLIsZero() bool {
	return x.Value == 0
}

func (x VUnionDepth1_VUint16F14) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_131); err != nil {
		return err
	}
	if err := enc.NextField("F14"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_VUint16(dec vdl.Decoder, x *VUnionDepth1_VUint16) error {
	if err := dec.StartValue(__VDLType_union_131); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F14":
		var field VUnionDepth1_VUint16F14
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_Uint32 represents any single field of the VUnionDepth1_Uint32 union type.
	VUnionDepth1_Uint32 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_Uint32 union type.
		__VDLReflect(__VUnionDepth1_Uint32Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_Uint32F15 represents field F15 of the VUnionDepth1_Uint32 union type.
	VUnionDepth1_Uint32F15 struct{ Value uint32 }
	// __VUnionDepth1_Uint32Reflect describes the VUnionDepth1_Uint32 union type.
	__VUnionDepth1_Uint32Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_Uint32"`
		Type  VUnionDepth1_Uint32
		Union struct {
			F15 VUnionDepth1_Uint32F15
		}
	}
)

func (x VUnionDepth1_Uint32F15) Index() int                                { return 0 }
func (x VUnionDepth1_Uint32F15) Interface() interface{}                    { return x.Value }
func (x VUnionDepth1_Uint32F15) Name() string                              { return "F15" }
func (x VUnionDepth1_Uint32F15) __VDLReflect(__VUnionDepth1_Uint32Reflect) {}

func (x VUnionDepth1_Uint32F15) VDLIsZero() bool {
	return x.Value == 0
}

func (x VUnionDepth1_Uint32F15) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_132); err != nil {
		return err
	}
	if err := enc.NextField("F15"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.Uint32Type); err != nil {
		return err
	}
	if err := enc.EncodeUint(uint64(x.Value)); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_Uint32(dec vdl.Decoder, x *VUnionDepth1_Uint32) error {
	if err := dec.StartValue(__VDLType_union_132); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F15":
		var field VUnionDepth1_Uint32F15
		if err := dec.StartValue(vdl.Uint32Type); err != nil {
			return err
		}
		tmp, err := dec.DecodeUint(32)
		if err != nil {
			return err
		}
		field.Value = uint32(tmp)
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_VUint32 represents any single field of the VUnionDepth1_VUint32 union type.
	VUnionDepth1_VUint32 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_VUint32 union type.
		__VDLReflect(__VUnionDepth1_VUint32Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_VUint32F16 represents field F16 of the VUnionDepth1_VUint32 union type.
	VUnionDepth1_VUint32F16 struct{ Value VUint32 }
	// __VUnionDepth1_VUint32Reflect describes the VUnionDepth1_VUint32 union type.
	__VUnionDepth1_VUint32Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_VUint32"`
		Type  VUnionDepth1_VUint32
		Union struct {
			F16 VUnionDepth1_VUint32F16
		}
	}
)

func (x VUnionDepth1_VUint32F16) Index() int                                 { return 0 }
func (x VUnionDepth1_VUint32F16) Interface() interface{}                     { return x.Value }
func (x VUnionDepth1_VUint32F16) Name() string                               { return "F16" }
func (x VUnionDepth1_VUint32F16) __VDLReflect(__VUnionDepth1_VUint32Reflect) {}

func (x VUnionDepth1_VUint32F16) VDLIsZero() bool {
	return x.Value == 0
}

func (x VUnionDepth1_VUint32F16) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_133); err != nil {
		return err
	}
	if err := enc.NextField("F16"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_VUint32(dec vdl.Decoder, x *VUnionDepth1_VUint32) error {
	if err := dec.StartValue(__VDLType_union_133); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F16":
		var field VUnionDepth1_VUint32F16
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_Uint64 represents any single field of the VUnionDepth1_Uint64 union type.
	VUnionDepth1_Uint64 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_Uint64 union type.
		__VDLReflect(__VUnionDepth1_Uint64Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_Uint64F17 represents field F17 of the VUnionDepth1_Uint64 union type.
	VUnionDepth1_Uint64F17 struct{ Value uint64 }
	// __VUnionDepth1_Uint64Reflect describes the VUnionDepth1_Uint64 union type.
	__VUnionDepth1_Uint64Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_Uint64"`
		Type  VUnionDepth1_Uint64
		Union struct {
			F17 VUnionDepth1_Uint64F17
		}
	}
)

func (x VUnionDepth1_Uint64F17) Index() int                                { return 0 }
func (x VUnionDepth1_Uint64F17) Interface() interface{}                    { return x.Value }
func (x VUnionDepth1_Uint64F17) Name() string                              { return "F17" }
func (x VUnionDepth1_Uint64F17) __VDLReflect(__VUnionDepth1_Uint64Reflect) {}

func (x VUnionDepth1_Uint64F17) VDLIsZero() bool {
	return x.Value == 0
}

func (x VUnionDepth1_Uint64F17) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_134); err != nil {
		return err
	}
	if err := enc.NextField("F17"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.Uint64Type); err != nil {
		return err
	}
	if err := enc.EncodeUint(x.Value); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_Uint64(dec vdl.Decoder, x *VUnionDepth1_Uint64) error {
	if err := dec.StartValue(__VDLType_union_134); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F17":
		var field VUnionDepth1_Uint64F17
		if err := dec.StartValue(vdl.Uint64Type); err != nil {
			return err
		}
		var err error
		if field.Value, err = dec.DecodeUint(64); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_VUint64 represents any single field of the VUnionDepth1_VUint64 union type.
	VUnionDepth1_VUint64 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_VUint64 union type.
		__VDLReflect(__VUnionDepth1_VUint64Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_VUint64F18 represents field F18 of the VUnionDepth1_VUint64 union type.
	VUnionDepth1_VUint64F18 struct{ Value VUint64 }
	// __VUnionDepth1_VUint64Reflect describes the VUnionDepth1_VUint64 union type.
	__VUnionDepth1_VUint64Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_VUint64"`
		Type  VUnionDepth1_VUint64
		Union struct {
			F18 VUnionDepth1_VUint64F18
		}
	}
)

func (x VUnionDepth1_VUint64F18) Index() int                                 { return 0 }
func (x VUnionDepth1_VUint64F18) Interface() interface{}                     { return x.Value }
func (x VUnionDepth1_VUint64F18) Name() string                               { return "F18" }
func (x VUnionDepth1_VUint64F18) __VDLReflect(__VUnionDepth1_VUint64Reflect) {}

func (x VUnionDepth1_VUint64F18) VDLIsZero() bool {
	return x.Value == 0
}

func (x VUnionDepth1_VUint64F18) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_135); err != nil {
		return err
	}
	if err := enc.NextField("F18"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_VUint64(dec vdl.Decoder, x *VUnionDepth1_VUint64) error {
	if err := dec.StartValue(__VDLType_union_135); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F18":
		var field VUnionDepth1_VUint64F18
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_Int8 represents any single field of the VUnionDepth1_Int8 union type.
	VUnionDepth1_Int8 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_Int8 union type.
		__VDLReflect(__VUnionDepth1_Int8Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_Int8F19 represents field F19 of the VUnionDepth1_Int8 union type.
	VUnionDepth1_Int8F19 struct{ Value int8 }
	// __VUnionDepth1_Int8Reflect describes the VUnionDepth1_Int8 union type.
	__VUnionDepth1_Int8Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_Int8"`
		Type  VUnionDepth1_Int8
		Union struct {
			F19 VUnionDepth1_Int8F19
		}
	}
)

func (x VUnionDepth1_Int8F19) Index() int                              { return 0 }
func (x VUnionDepth1_Int8F19) Interface() interface{}                  { return x.Value }
func (x VUnionDepth1_Int8F19) Name() string                            { return "F19" }
func (x VUnionDepth1_Int8F19) __VDLReflect(__VUnionDepth1_Int8Reflect) {}

func (x VUnionDepth1_Int8F19) VDLIsZero() bool {
	return x.Value == 0
}

func (x VUnionDepth1_Int8F19) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_136); err != nil {
		return err
	}
	if err := enc.NextField("F19"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.Int8Type); err != nil {
		return err
	}
	if err := enc.EncodeInt(int64(x.Value)); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_Int8(dec vdl.Decoder, x *VUnionDepth1_Int8) error {
	if err := dec.StartValue(__VDLType_union_136); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F19":
		var field VUnionDepth1_Int8F19
		if err := dec.StartValue(vdl.Int8Type); err != nil {
			return err
		}
		tmp, err := dec.DecodeInt(8)
		if err != nil {
			return err
		}
		field.Value = int8(tmp)
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_VInt8 represents any single field of the VUnionDepth1_VInt8 union type.
	VUnionDepth1_VInt8 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_VInt8 union type.
		__VDLReflect(__VUnionDepth1_VInt8Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_VInt8F20 represents field F20 of the VUnionDepth1_VInt8 union type.
	VUnionDepth1_VInt8F20 struct{ Value VInt8 }
	// __VUnionDepth1_VInt8Reflect describes the VUnionDepth1_VInt8 union type.
	__VUnionDepth1_VInt8Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_VInt8"`
		Type  VUnionDepth1_VInt8
		Union struct {
			F20 VUnionDepth1_VInt8F20
		}
	}
)

func (x VUnionDepth1_VInt8F20) Index() int                               { return 0 }
func (x VUnionDepth1_VInt8F20) Interface() interface{}                   { return x.Value }
func (x VUnionDepth1_VInt8F20) Name() string                             { return "F20" }
func (x VUnionDepth1_VInt8F20) __VDLReflect(__VUnionDepth1_VInt8Reflect) {}

func (x VUnionDepth1_VInt8F20) VDLIsZero() bool {
	return x.Value == 0
}

func (x VUnionDepth1_VInt8F20) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_137); err != nil {
		return err
	}
	if err := enc.NextField("F20"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_VInt8(dec vdl.Decoder, x *VUnionDepth1_VInt8) error {
	if err := dec.StartValue(__VDLType_union_137); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F20":
		var field VUnionDepth1_VInt8F20
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_Int16 represents any single field of the VUnionDepth1_Int16 union type.
	VUnionDepth1_Int16 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_Int16 union type.
		__VDLReflect(__VUnionDepth1_Int16Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_Int16F21 represents field F21 of the VUnionDepth1_Int16 union type.
	VUnionDepth1_Int16F21 struct{ Value int16 }
	// __VUnionDepth1_Int16Reflect describes the VUnionDepth1_Int16 union type.
	__VUnionDepth1_Int16Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_Int16"`
		Type  VUnionDepth1_Int16
		Union struct {
			F21 VUnionDepth1_Int16F21
		}
	}
)

func (x VUnionDepth1_Int16F21) Index() int                               { return 0 }
func (x VUnionDepth1_Int16F21) Interface() interface{}                   { return x.Value }
func (x VUnionDepth1_Int16F21) Name() string                             { return "F21" }
func (x VUnionDepth1_Int16F21) __VDLReflect(__VUnionDepth1_Int16Reflect) {}

func (x VUnionDepth1_Int16F21) VDLIsZero() bool {
	return x.Value == 0
}

func (x VUnionDepth1_Int16F21) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_138); err != nil {
		return err
	}
	if err := enc.NextField("F21"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.Int16Type); err != nil {
		return err
	}
	if err := enc.EncodeInt(int64(x.Value)); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_Int16(dec vdl.Decoder, x *VUnionDepth1_Int16) error {
	if err := dec.StartValue(__VDLType_union_138); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F21":
		var field VUnionDepth1_Int16F21
		if err := dec.StartValue(vdl.Int16Type); err != nil {
			return err
		}
		tmp, err := dec.DecodeInt(16)
		if err != nil {
			return err
		}
		field.Value = int16(tmp)
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_VInt16 represents any single field of the VUnionDepth1_VInt16 union type.
	VUnionDepth1_VInt16 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_VInt16 union type.
		__VDLReflect(__VUnionDepth1_VInt16Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_VInt16F22 represents field F22 of the VUnionDepth1_VInt16 union type.
	VUnionDepth1_VInt16F22 struct{ Value VInt16 }
	// __VUnionDepth1_VInt16Reflect describes the VUnionDepth1_VInt16 union type.
	__VUnionDepth1_VInt16Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_VInt16"`
		Type  VUnionDepth1_VInt16
		Union struct {
			F22 VUnionDepth1_VInt16F22
		}
	}
)

func (x VUnionDepth1_VInt16F22) Index() int                                { return 0 }
func (x VUnionDepth1_VInt16F22) Interface() interface{}                    { return x.Value }
func (x VUnionDepth1_VInt16F22) Name() string                              { return "F22" }
func (x VUnionDepth1_VInt16F22) __VDLReflect(__VUnionDepth1_VInt16Reflect) {}

func (x VUnionDepth1_VInt16F22) VDLIsZero() bool {
	return x.Value == 0
}

func (x VUnionDepth1_VInt16F22) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_139); err != nil {
		return err
	}
	if err := enc.NextField("F22"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_VInt16(dec vdl.Decoder, x *VUnionDepth1_VInt16) error {
	if err := dec.StartValue(__VDLType_union_139); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F22":
		var field VUnionDepth1_VInt16F22
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_Int32 represents any single field of the VUnionDepth1_Int32 union type.
	VUnionDepth1_Int32 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_Int32 union type.
		__VDLReflect(__VUnionDepth1_Int32Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_Int32F23 represents field F23 of the VUnionDepth1_Int32 union type.
	VUnionDepth1_Int32F23 struct{ Value int32 }
	// __VUnionDepth1_Int32Reflect describes the VUnionDepth1_Int32 union type.
	__VUnionDepth1_Int32Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_Int32"`
		Type  VUnionDepth1_Int32
		Union struct {
			F23 VUnionDepth1_Int32F23
		}
	}
)

func (x VUnionDepth1_Int32F23) Index() int                               { return 0 }
func (x VUnionDepth1_Int32F23) Interface() interface{}                   { return x.Value }
func (x VUnionDepth1_Int32F23) Name() string                             { return "F23" }
func (x VUnionDepth1_Int32F23) __VDLReflect(__VUnionDepth1_Int32Reflect) {}

func (x VUnionDepth1_Int32F23) VDLIsZero() bool {
	return x.Value == 0
}

func (x VUnionDepth1_Int32F23) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_140); err != nil {
		return err
	}
	if err := enc.NextField("F23"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.Int32Type); err != nil {
		return err
	}
	if err := enc.EncodeInt(int64(x.Value)); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_Int32(dec vdl.Decoder, x *VUnionDepth1_Int32) error {
	if err := dec.StartValue(__VDLType_union_140); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F23":
		var field VUnionDepth1_Int32F23
		if err := dec.StartValue(vdl.Int32Type); err != nil {
			return err
		}
		tmp, err := dec.DecodeInt(32)
		if err != nil {
			return err
		}
		field.Value = int32(tmp)
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_VInt32 represents any single field of the VUnionDepth1_VInt32 union type.
	VUnionDepth1_VInt32 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_VInt32 union type.
		__VDLReflect(__VUnionDepth1_VInt32Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_VInt32F24 represents field F24 of the VUnionDepth1_VInt32 union type.
	VUnionDepth1_VInt32F24 struct{ Value VInt32 }
	// __VUnionDepth1_VInt32Reflect describes the VUnionDepth1_VInt32 union type.
	__VUnionDepth1_VInt32Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_VInt32"`
		Type  VUnionDepth1_VInt32
		Union struct {
			F24 VUnionDepth1_VInt32F24
		}
	}
)

func (x VUnionDepth1_VInt32F24) Index() int                                { return 0 }
func (x VUnionDepth1_VInt32F24) Interface() interface{}                    { return x.Value }
func (x VUnionDepth1_VInt32F24) Name() string                              { return "F24" }
func (x VUnionDepth1_VInt32F24) __VDLReflect(__VUnionDepth1_VInt32Reflect) {}

func (x VUnionDepth1_VInt32F24) VDLIsZero() bool {
	return x.Value == 0
}

func (x VUnionDepth1_VInt32F24) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_141); err != nil {
		return err
	}
	if err := enc.NextField("F24"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_VInt32(dec vdl.Decoder, x *VUnionDepth1_VInt32) error {
	if err := dec.StartValue(__VDLType_union_141); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F24":
		var field VUnionDepth1_VInt32F24
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_Int64 represents any single field of the VUnionDepth1_Int64 union type.
	VUnionDepth1_Int64 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_Int64 union type.
		__VDLReflect(__VUnionDepth1_Int64Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_Int64F25 represents field F25 of the VUnionDepth1_Int64 union type.
	VUnionDepth1_Int64F25 struct{ Value int64 }
	// __VUnionDepth1_Int64Reflect describes the VUnionDepth1_Int64 union type.
	__VUnionDepth1_Int64Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_Int64"`
		Type  VUnionDepth1_Int64
		Union struct {
			F25 VUnionDepth1_Int64F25
		}
	}
)

func (x VUnionDepth1_Int64F25) Index() int                               { return 0 }
func (x VUnionDepth1_Int64F25) Interface() interface{}                   { return x.Value }
func (x VUnionDepth1_Int64F25) Name() string                             { return "F25" }
func (x VUnionDepth1_Int64F25) __VDLReflect(__VUnionDepth1_Int64Reflect) {}

func (x VUnionDepth1_Int64F25) VDLIsZero() bool {
	return x.Value == 0
}

func (x VUnionDepth1_Int64F25) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_142); err != nil {
		return err
	}
	if err := enc.NextField("F25"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.Int64Type); err != nil {
		return err
	}
	if err := enc.EncodeInt(x.Value); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_Int64(dec vdl.Decoder, x *VUnionDepth1_Int64) error {
	if err := dec.StartValue(__VDLType_union_142); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F25":
		var field VUnionDepth1_Int64F25
		if err := dec.StartValue(vdl.Int64Type); err != nil {
			return err
		}
		var err error
		if field.Value, err = dec.DecodeInt(64); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_VInt64 represents any single field of the VUnionDepth1_VInt64 union type.
	VUnionDepth1_VInt64 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_VInt64 union type.
		__VDLReflect(__VUnionDepth1_VInt64Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_VInt64F26 represents field F26 of the VUnionDepth1_VInt64 union type.
	VUnionDepth1_VInt64F26 struct{ Value VInt64 }
	// __VUnionDepth1_VInt64Reflect describes the VUnionDepth1_VInt64 union type.
	__VUnionDepth1_VInt64Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_VInt64"`
		Type  VUnionDepth1_VInt64
		Union struct {
			F26 VUnionDepth1_VInt64F26
		}
	}
)

func (x VUnionDepth1_VInt64F26) Index() int                                { return 0 }
func (x VUnionDepth1_VInt64F26) Interface() interface{}                    { return x.Value }
func (x VUnionDepth1_VInt64F26) Name() string                              { return "F26" }
func (x VUnionDepth1_VInt64F26) __VDLReflect(__VUnionDepth1_VInt64Reflect) {}

func (x VUnionDepth1_VInt64F26) VDLIsZero() bool {
	return x.Value == 0
}

func (x VUnionDepth1_VInt64F26) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_143); err != nil {
		return err
	}
	if err := enc.NextField("F26"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_VInt64(dec vdl.Decoder, x *VUnionDepth1_VInt64) error {
	if err := dec.StartValue(__VDLType_union_143); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F26":
		var field VUnionDepth1_VInt64F26
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_Float32 represents any single field of the VUnionDepth1_Float32 union type.
	VUnionDepth1_Float32 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_Float32 union type.
		__VDLReflect(__VUnionDepth1_Float32Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_Float32F27 represents field F27 of the VUnionDepth1_Float32 union type.
	VUnionDepth1_Float32F27 struct{ Value float32 }
	// __VUnionDepth1_Float32Reflect describes the VUnionDepth1_Float32 union type.
	__VUnionDepth1_Float32Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_Float32"`
		Type  VUnionDepth1_Float32
		Union struct {
			F27 VUnionDepth1_Float32F27
		}
	}
)

func (x VUnionDepth1_Float32F27) Index() int                                 { return 0 }
func (x VUnionDepth1_Float32F27) Interface() interface{}                     { return x.Value }
func (x VUnionDepth1_Float32F27) Name() string                               { return "F27" }
func (x VUnionDepth1_Float32F27) __VDLReflect(__VUnionDepth1_Float32Reflect) {}

func (x VUnionDepth1_Float32F27) VDLIsZero() bool {
	return x.Value == 0
}

func (x VUnionDepth1_Float32F27) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_144); err != nil {
		return err
	}
	if err := enc.NextField("F27"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.Float32Type); err != nil {
		return err
	}
	if err := enc.EncodeFloat(float64(x.Value)); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_Float32(dec vdl.Decoder, x *VUnionDepth1_Float32) error {
	if err := dec.StartValue(__VDLType_union_144); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F27":
		var field VUnionDepth1_Float32F27
		if err := dec.StartValue(vdl.Float32Type); err != nil {
			return err
		}
		tmp, err := dec.DecodeFloat(32)
		if err != nil {
			return err
		}
		field.Value = float32(tmp)
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_VFloat32 represents any single field of the VUnionDepth1_VFloat32 union type.
	VUnionDepth1_VFloat32 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_VFloat32 union type.
		__VDLReflect(__VUnionDepth1_VFloat32Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_VFloat32F28 represents field F28 of the VUnionDepth1_VFloat32 union type.
	VUnionDepth1_VFloat32F28 struct{ Value VFloat32 }
	// __VUnionDepth1_VFloat32Reflect describes the VUnionDepth1_VFloat32 union type.
	__VUnionDepth1_VFloat32Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_VFloat32"`
		Type  VUnionDepth1_VFloat32
		Union struct {
			F28 VUnionDepth1_VFloat32F28
		}
	}
)

func (x VUnionDepth1_VFloat32F28) Index() int                                  { return 0 }
func (x VUnionDepth1_VFloat32F28) Interface() interface{}                      { return x.Value }
func (x VUnionDepth1_VFloat32F28) Name() string                                { return "F28" }
func (x VUnionDepth1_VFloat32F28) __VDLReflect(__VUnionDepth1_VFloat32Reflect) {}

func (x VUnionDepth1_VFloat32F28) VDLIsZero() bool {
	return x.Value == 0
}

func (x VUnionDepth1_VFloat32F28) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_145); err != nil {
		return err
	}
	if err := enc.NextField("F28"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_VFloat32(dec vdl.Decoder, x *VUnionDepth1_VFloat32) error {
	if err := dec.StartValue(__VDLType_union_145); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F28":
		var field VUnionDepth1_VFloat32F28
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_Float64 represents any single field of the VUnionDepth1_Float64 union type.
	VUnionDepth1_Float64 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_Float64 union type.
		__VDLReflect(__VUnionDepth1_Float64Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_Float64F29 represents field F29 of the VUnionDepth1_Float64 union type.
	VUnionDepth1_Float64F29 struct{ Value float64 }
	// __VUnionDepth1_Float64Reflect describes the VUnionDepth1_Float64 union type.
	__VUnionDepth1_Float64Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_Float64"`
		Type  VUnionDepth1_Float64
		Union struct {
			F29 VUnionDepth1_Float64F29
		}
	}
)

func (x VUnionDepth1_Float64F29) Index() int                                 { return 0 }
func (x VUnionDepth1_Float64F29) Interface() interface{}                     { return x.Value }
func (x VUnionDepth1_Float64F29) Name() string                               { return "F29" }
func (x VUnionDepth1_Float64F29) __VDLReflect(__VUnionDepth1_Float64Reflect) {}

func (x VUnionDepth1_Float64F29) VDLIsZero() bool {
	return x.Value == 0
}

func (x VUnionDepth1_Float64F29) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_146); err != nil {
		return err
	}
	if err := enc.NextField("F29"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.Float64Type); err != nil {
		return err
	}
	if err := enc.EncodeFloat(x.Value); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_Float64(dec vdl.Decoder, x *VUnionDepth1_Float64) error {
	if err := dec.StartValue(__VDLType_union_146); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F29":
		var field VUnionDepth1_Float64F29
		if err := dec.StartValue(vdl.Float64Type); err != nil {
			return err
		}
		var err error
		if field.Value, err = dec.DecodeFloat(64); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_VFloat64 represents any single field of the VUnionDepth1_VFloat64 union type.
	VUnionDepth1_VFloat64 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_VFloat64 union type.
		__VDLReflect(__VUnionDepth1_VFloat64Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_VFloat64F30 represents field F30 of the VUnionDepth1_VFloat64 union type.
	VUnionDepth1_VFloat64F30 struct{ Value VFloat64 }
	// __VUnionDepth1_VFloat64Reflect describes the VUnionDepth1_VFloat64 union type.
	__VUnionDepth1_VFloat64Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_VFloat64"`
		Type  VUnionDepth1_VFloat64
		Union struct {
			F30 VUnionDepth1_VFloat64F30
		}
	}
)

func (x VUnionDepth1_VFloat64F30) Index() int                                  { return 0 }
func (x VUnionDepth1_VFloat64F30) Interface() interface{}                      { return x.Value }
func (x VUnionDepth1_VFloat64F30) Name() string                                { return "F30" }
func (x VUnionDepth1_VFloat64F30) __VDLReflect(__VUnionDepth1_VFloat64Reflect) {}

func (x VUnionDepth1_VFloat64F30) VDLIsZero() bool {
	return x.Value == 0
}

func (x VUnionDepth1_VFloat64F30) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_147); err != nil {
		return err
	}
	if err := enc.NextField("F30"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_VFloat64(dec vdl.Decoder, x *VUnionDepth1_VFloat64) error {
	if err := dec.StartValue(__VDLType_union_147); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F30":
		var field VUnionDepth1_VFloat64F30
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_OptVStructEmpty represents any single field of the VUnionDepth1_OptVStructEmpty union type.
	VUnionDepth1_OptVStructEmpty interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_OptVStructEmpty union type.
		__VDLReflect(__VUnionDepth1_OptVStructEmptyReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_OptVStructEmptyF31 represents field F31 of the VUnionDepth1_OptVStructEmpty union type.
	VUnionDepth1_OptVStructEmptyF31 struct{ Value *VStructEmpty }
	// __VUnionDepth1_OptVStructEmptyReflect describes the VUnionDepth1_OptVStructEmpty union type.
	__VUnionDepth1_OptVStructEmptyReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_OptVStructEmpty"`
		Type  VUnionDepth1_OptVStructEmpty
		Union struct {
			F31 VUnionDepth1_OptVStructEmptyF31
		}
	}
)

func (x VUnionDepth1_OptVStructEmptyF31) Index() int                                         { return 0 }
func (x VUnionDepth1_OptVStructEmptyF31) Interface() interface{}                             { return x.Value }
func (x VUnionDepth1_OptVStructEmptyF31) Name() string                                       { return "F31" }
func (x VUnionDepth1_OptVStructEmptyF31) __VDLReflect(__VUnionDepth1_OptVStructEmptyReflect) {}

func (x VUnionDepth1_OptVStructEmptyF31) VDLIsZero() bool {
	return x.Value == nil
}

func (x VUnionDepth1_OptVStructEmptyF31) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_148); err != nil {
		return err
	}
	if err := enc.NextField("F31"); err != nil {
		return err
	}
	if x.Value == nil {
		if err := enc.NilValue(__VDLType_optional_35); err != nil {
			return err
		}
	} else {
		enc.SetNextStartValueIsOptional()

		if err := x.Value.VDLWrite(enc); err != nil {
			return err
		}

	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_OptVStructEmpty(dec vdl.Decoder, x *VUnionDepth1_OptVStructEmpty) error {
	if err := dec.StartValue(__VDLType_union_148); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F31":
		var field VUnionDepth1_OptVStructEmptyF31
		if err := dec.StartValue(__VDLType_optional_35); err != nil {
			return err
		}
		if dec.IsNil() {
			field.Value = nil
			if err := dec.FinishValue(); err != nil {
				return err
			}
		} else {
			field.Value = new(VStructEmpty)
			dec.IgnoreNextStartValue()
			if err := field.Value.VDLRead(dec); err != nil {
				return err
			}
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth1_OptVNamedError represents any single field of the VUnionDepth1_OptVNamedError union type.
	VUnionDepth1_OptVNamedError interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth1_OptVNamedError union type.
		__VDLReflect(__VUnionDepth1_OptVNamedErrorReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth1_OptVNamedErrorF32 represents field F32 of the VUnionDepth1_OptVNamedError union type.
	VUnionDepth1_OptVNamedErrorF32 struct{ Value *VNamedError }
	// __VUnionDepth1_OptVNamedErrorReflect describes the VUnionDepth1_OptVNamedError union type.
	__VUnionDepth1_OptVNamedErrorReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth1_OptVNamedError"`
		Type  VUnionDepth1_OptVNamedError
		Union struct {
			F32 VUnionDepth1_OptVNamedErrorF32
		}
	}
)

func (x VUnionDepth1_OptVNamedErrorF32) Index() int                                        { return 0 }
func (x VUnionDepth1_OptVNamedErrorF32) Interface() interface{}                            { return x.Value }
func (x VUnionDepth1_OptVNamedErrorF32) Name() string                                      { return "F32" }
func (x VUnionDepth1_OptVNamedErrorF32) __VDLReflect(__VUnionDepth1_OptVNamedErrorReflect) {}

func (x VUnionDepth1_OptVNamedErrorF32) VDLIsZero() bool {
	return x.Value == nil
}

func (x VUnionDepth1_OptVNamedErrorF32) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_149); err != nil {
		return err
	}
	if err := enc.NextField("F32"); err != nil {
		return err
	}
	if x.Value == nil {
		if err := enc.NilValue(__VDLType_optional_37); err != nil {
			return err
		}
	} else {
		enc.SetNextStartValueIsOptional()

		if err := x.Value.VDLWrite(enc); err != nil {
			return err
		}

	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth1_OptVNamedError(dec vdl.Decoder, x *VUnionDepth1_OptVNamedError) error {
	if err := dec.StartValue(__VDLType_union_149); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F32":
		var field VUnionDepth1_OptVNamedErrorF32
		if err := dec.StartValue(__VDLType_optional_37); err != nil {
			return err
		}
		if dec.IsNil() {
			field.Value = nil
			if err := dec.FinishValue(); err != nil {
				return err
			}
		} else {
			field.Value = new(VNamedError)
			dec.IgnoreNextStartValue()
			if err := field.Value.VDLRead(dec); err != nil {
				return err
			}
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type VArray1_VArray3_Int64 [1]VArray3_Int64

func (VArray1_VArray3_Int64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray1_VArray3_Int64"`
}) {
}

func (x VArray1_VArray3_Int64) VDLIsZero() bool {
	return x == VArray1_VArray3_Int64{}
}

func (x VArray1_VArray3_Int64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_150); err != nil {
		return err
	}
	for i := 0; i < 1; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray1_VArray3_Int64) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_150); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := x[index].VDLRead(dec); err != nil {
			return err
		}
		index++
	}
}

type VArray1_VList_Byte [1]VList_Byte

func (VArray1_VList_Byte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray1_VList_Byte"`
}) {
}

func (x VArray1_VList_Byte) VDLIsZero() bool {
	for _, elem := range x {
		if len(elem) != 0 {
			return false
		}
	}
	return true
}

func (x VArray1_VList_Byte) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_151); err != nil {
		return err
	}
	for i := 0; i < 1; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray1_VList_Byte) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_151); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := x[index].VDLRead(dec); err != nil {
			return err
		}
		index++
	}
}

type VArray1_Set_VEnumBcd [1]map[VEnumBcd]struct{}

func (VArray1_Set_VEnumBcd) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray1_Set_VEnumBcd"`
}) {
}

func (x VArray1_Set_VEnumBcd) VDLIsZero() bool {
	for _, elem := range x {
		if len(elem) != 0 {
			return false
		}
	}
	return true
}

func (x VArray1_Set_VEnumBcd) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_152); err != nil {
		return err
	}
	for i := 0; i < 1; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := __VDLWriteAnon_set_1(enc, x[i]); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func __VDLWriteAnon_set_1(enc vdl.Encoder, x map[VEnumBcd]struct{}) error {
	if err := enc.StartValue(__VDLType_set_153); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray1_Set_VEnumBcd) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_152); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := __VDLReadAnon_set_1(dec, &x[index]); err != nil {
			return err
		}
		index++
	}
}

func __VDLReadAnon_set_1(dec vdl.Decoder, x *map[VEnumBcd]struct{}) error {
	if err := dec.StartValue(__VDLType_set_153); err != nil {
		return err
	}
	var tmpMap map[VEnumBcd]struct{}
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(map[VEnumBcd]struct{}, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VEnumBcd
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(map[VEnumBcd]struct{})
		}
		tmpMap[key] = struct{}{}
	}
}

type VArray2_Map_Byte_Byte [2]map[byte]byte

func (VArray2_Map_Byte_Byte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray2_Map_Byte_Byte"`
}) {
}

func (x VArray2_Map_Byte_Byte) VDLIsZero() bool {
	for _, elem := range x {
		if len(elem) != 0 {
			return false
		}
	}
	return true
}

func (x VArray2_Map_Byte_Byte) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_154); err != nil {
		return err
	}
	for i := 0; i < 2; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := __VDLWriteAnon_map_2(enc, x[i]); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func __VDLWriteAnon_map_2(enc vdl.Encoder, x map[byte]byte) error {
	if err := enc.StartValue(__VDLType_map_155); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.ByteType); err != nil {
			return err
		}
		if err := enc.EncodeUint(uint64(key)); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.ByteType); err != nil {
			return err
		}
		if err := enc.EncodeUint(uint64(elem)); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray2_Map_Byte_Byte) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_154); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := __VDLReadAnon_map_2(dec, &x[index]); err != nil {
			return err
		}
		index++
	}
}

func __VDLReadAnon_map_2(dec vdl.Decoder, x *map[byte]byte) error {
	if err := dec.StartValue(__VDLType_map_155); err != nil {
		return err
	}
	var tmpMap map[byte]byte
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(map[byte]byte, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key byte
		{
			if err := dec.StartValue(vdl.ByteType); err != nil {
				return err
			}
			tmp, err := dec.DecodeUint(8)
			if err != nil {
				return err
			}
			key = byte(tmp)
			if err := dec.FinishValue(); err != nil {
				return err
			}
		}
		var elem byte
		{
			if err := dec.StartValue(vdl.ByteType); err != nil {
				return err
			}
			tmp, err := dec.DecodeUint(8)
			if err != nil {
				return err
			}
			elem = byte(tmp)
			if err := dec.FinishValue(); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(map[byte]byte)
		}
		tmpMap[key] = elem
	}
}

type VArray2_VStructDepth1_All [2]VStructDepth1_All

func (VArray2_VStructDepth1_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray2_VStructDepth1_All"`
}) {
}

func (x VArray2_VStructDepth1_All) VDLIsZero() bool {
	for _, elem := range x {
		if !elem.VDLIsZero() {
			return false
		}
	}
	return true
}

func (x VArray2_VStructDepth1_All) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_156); err != nil {
		return err
	}
	for i := 0; i < 2; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray2_VStructDepth1_All) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_156); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := x[index].VDLRead(dec); err != nil {
			return err
		}
		index++
	}
}

type VArray3_VUnionDepth1_All [3]VUnionDepth1_All

func (VArray3_VUnionDepth1_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray3_VUnionDepth1_All"`
}) {
}

func (x VArray3_VUnionDepth1_All) VDLIsZero() bool {
	for _, elem := range x {
		if elem != nil && !elem.VDLIsZero() {
			return false
		}
	}
	return true
}

func (x VArray3_VUnionDepth1_All) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_157); err != nil {
		return err
	}
	for i := 0; i < 3; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		switch {
		case x[i] == nil:
			// Write the zero value of the union type.
			if err := vdl.ZeroValue(__VDLType_union_116).VDLWrite(enc); err != nil {
				return err
			}
		default:
			if err := x[i].VDLWrite(enc); err != nil {
				return err
			}
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray3_VUnionDepth1_All) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_157); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := VDLReadVUnionDepth1_All(dec, &x[index]); err != nil {
			return err
		}
		index++
	}
}

type VArray3_OptVStructDepth1_VFloat32 [3]*VStructDepth1_VFloat32

func (VArray3_OptVStructDepth1_VFloat32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray3_OptVStructDepth1_VFloat32"`
}) {
}

func (x VArray3_OptVStructDepth1_VFloat32) VDLIsZero() bool {
	return x == VArray3_OptVStructDepth1_VFloat32{}
}

func (x VArray3_OptVStructDepth1_VFloat32) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_158); err != nil {
		return err
	}
	for i := 0; i < 3; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if x[i] == nil {
			if err := enc.NilValue(__VDLType_optional_159); err != nil {
				return err
			}
		} else {
			enc.SetNextStartValueIsOptional()

			if err := x[i].VDLWrite(enc); err != nil {
				return err
			}

		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray3_OptVStructDepth1_VFloat32) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_158); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := dec.StartValue(__VDLType_optional_159); err != nil {
			return err
		}
		if dec.IsNil() {
			x[index] = nil
			if err := dec.FinishValue(); err != nil {
				return err
			}
		} else {
			x[index] = new(VStructDepth1_VFloat32)
			dec.IgnoreNextStartValue()
			if err := x[index].VDLRead(dec); err != nil {
				return err
			}
		}
		index++
	}
}

type VList_VArray1_VStructEmpty []VArray1_VStructEmpty

func (VList_VArray1_VStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_VArray1_VStructEmpty"`
}) {
}

func (x VList_VArray1_VStructEmpty) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_VArray1_VStructEmpty) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_160); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_VArray1_VStructEmpty) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_160); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_VArray1_VStructEmpty, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VArray1_VStructEmpty
		if err := elem.VDLRead(dec); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_List_VString [][]VString

func (VList_List_VString) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_List_VString"`
}) {
}

func (x VList_List_VString) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_List_VString) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_161); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := __VDLWriteAnon_list_3(enc, x[i]); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func __VDLWriteAnon_list_3(enc vdl.Encoder, x []VString) error {
	if err := enc.StartValue(__VDLType_list_162); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_List_VString) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_161); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_List_VString, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem []VString
		if err := __VDLReadAnon_list_3(dec, &elem); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

func __VDLReadAnon_list_3(dec vdl.Decoder, x *[]VString) error {
	if err := dec.StartValue(__VDLType_list_162); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make([]VString, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VString
		if err := elem.VDLRead(dec); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_Set_VBool []map[VBool]struct{}

func (VList_Set_VBool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_Set_VBool"`
}) {
}

func (x VList_Set_VBool) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_Set_VBool) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_163); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := __VDLWriteAnon_set_4(enc, x[i]); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func __VDLWriteAnon_set_4(enc vdl.Encoder, x map[VBool]struct{}) error {
	if err := enc.StartValue(__VDLType_set_164); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_Set_VBool) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_163); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_Set_VBool, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem map[VBool]struct{}
		if err := __VDLReadAnon_set_4(dec, &elem); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

func __VDLReadAnon_set_4(dec vdl.Decoder, x *map[VBool]struct{}) error {
	if err := dec.StartValue(__VDLType_set_164); err != nil {
		return err
	}
	var tmpMap map[VBool]struct{}
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(map[VBool]struct{}, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VBool
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(map[VBool]struct{})
		}
		tmpMap[key] = struct{}{}
	}
}

type VList_VMap_Byte_Byte []VMap_Byte_Byte

func (VList_VMap_Byte_Byte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_VMap_Byte_Byte"`
}) {
}

func (x VList_VMap_Byte_Byte) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_VMap_Byte_Byte) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_165); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_VMap_Byte_Byte) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_165); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_VMap_Byte_Byte, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VMap_Byte_Byte
		if err := elem.VDLRead(dec); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_VStructDepth1_All []VStructDepth1_All

func (VList_VStructDepth1_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_VStructDepth1_All"`
}) {
}

func (x VList_VStructDepth1_All) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_VStructDepth1_All) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_166); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_VStructDepth1_All) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_166); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_VStructDepth1_All, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VStructDepth1_All
		if err := elem.VDLRead(dec); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_VUnionDepth1_All []VUnionDepth1_All

func (VList_VUnionDepth1_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_VUnionDepth1_All"`
}) {
}

func (x VList_VUnionDepth1_All) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_VUnionDepth1_All) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_167); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		switch {
		case x[i] == nil:
			// Write the zero value of the union type.
			if err := vdl.ZeroValue(__VDLType_union_116).VDLWrite(enc); err != nil {
				return err
			}
		default:
			if err := x[i].VDLWrite(enc); err != nil {
				return err
			}
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_VUnionDepth1_All) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_167); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_VUnionDepth1_All, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VUnionDepth1_All
		if err := VDLReadVUnionDepth1_All(dec, &elem); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_OptVStructDepth1_VEnumBcd []*VStructDepth1_VEnumBcd

func (VList_OptVStructDepth1_VEnumBcd) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_OptVStructDepth1_VEnumBcd"`
}) {
}

func (x VList_OptVStructDepth1_VEnumBcd) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_OptVStructDepth1_VEnumBcd) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_168); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if x[i] == nil {
			if err := enc.NilValue(__VDLType_optional_169); err != nil {
				return err
			}
		} else {
			enc.SetNextStartValueIsOptional()

			if err := x[i].VDLWrite(enc); err != nil {
				return err
			}

		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_OptVStructDepth1_VEnumBcd) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_168); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_OptVStructDepth1_VEnumBcd, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem *VStructDepth1_VEnumBcd
		if err := dec.StartValue(__VDLType_optional_169); err != nil {
			return err
		}
		if dec.IsNil() {
			elem = nil
			if err := dec.FinishValue(); err != nil {
				return err
			}
		} else {
			elem = new(VStructDepth1_VEnumBcd)
			dec.IgnoreNextStartValue()
			if err := elem.VDLRead(dec); err != nil {
				return err
			}
		}
		*x = append(*x, elem)
	}
}

type VSet_VArray1_VStructEmpty map[VArray1_VStructEmpty]struct{}

func (VSet_VArray1_VStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VSet_VArray1_VStructEmpty"`
}) {
}

func (x VSet_VArray1_VStructEmpty) VDLIsZero() bool {
	return len(x) == 0
}

func (x VSet_VArray1_VStructEmpty) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_set_170); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VSet_VArray1_VStructEmpty) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_set_170); err != nil {
		return err
	}
	var tmpMap VSet_VArray1_VStructEmpty
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VSet_VArray1_VStructEmpty, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VArray1_VStructEmpty
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VSet_VArray1_VStructEmpty)
		}
		tmpMap[key] = struct{}{}
	}
}

type VSet_VStructDepth1_VFloat64 map[VStructDepth1_VFloat64]struct{}

func (VSet_VStructDepth1_VFloat64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VSet_VStructDepth1_VFloat64"`
}) {
}

func (x VSet_VStructDepth1_VFloat64) VDLIsZero() bool {
	return len(x) == 0
}

func (x VSet_VStructDepth1_VFloat64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_set_171); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VSet_VStructDepth1_VFloat64) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_set_171); err != nil {
		return err
	}
	var tmpMap VSet_VStructDepth1_VFloat64
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VSet_VStructDepth1_VFloat64, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VStructDepth1_VFloat64
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VSet_VStructDepth1_VFloat64)
		}
		tmpMap[key] = struct{}{}
	}
}

type VSet_VUnionDepth1_VInt8 map[VUnionDepth1_VInt8]struct{}

func (VSet_VUnionDepth1_VInt8) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VSet_VUnionDepth1_VInt8"`
}) {
}

func (x VSet_VUnionDepth1_VInt8) VDLIsZero() bool {
	return len(x) == 0
}

func (x VSet_VUnionDepth1_VInt8) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_set_172); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		switch {
		case key == nil:
			// Write the zero value of the union type.
			if err := vdl.ZeroValue(__VDLType_union_137).VDLWrite(enc); err != nil {
				return err
			}
		default:
			if err := key.VDLWrite(enc); err != nil {
				return err
			}
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VSet_VUnionDepth1_VInt8) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_set_172); err != nil {
		return err
	}
	var tmpMap VSet_VUnionDepth1_VInt8
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VSet_VUnionDepth1_VInt8, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VUnionDepth1_VInt8
		{
			if err := VDLReadVUnionDepth1_VInt8(dec, &key); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VSet_VUnionDepth1_VInt8)
		}
		tmpMap[key] = struct{}{}
	}
}

type VMap_VArray3_VBool_VArray3_VBool map[VArray3_VBool]VArray3_VBool

func (VMap_VArray3_VBool_VArray3_VBool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VMap_VArray3_VBool_VArray3_VBool"`
}) {
}

func (x VMap_VArray3_VBool_VArray3_VBool) VDLIsZero() bool {
	return len(x) == 0
}

func (x VMap_VArray3_VBool_VArray3_VBool) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_map_173); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
		if err := elem.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VMap_VArray3_VBool_VArray3_VBool) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_map_173); err != nil {
		return err
	}
	var tmpMap VMap_VArray3_VBool_VArray3_VBool
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VMap_VArray3_VBool_VArray3_VBool, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VArray3_VBool
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		var elem VArray3_VBool
		{
			if err := elem.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VMap_VArray3_VBool_VArray3_VBool)
		}
		tmpMap[key] = elem
	}
}

type VMap_VStructDepth1_VBool_VStructDepth1_VBool map[VStructDepth1_VBool]VStructDepth1_VBool

func (VMap_VStructDepth1_VBool_VStructDepth1_VBool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VMap_VStructDepth1_VBool_VStructDepth1_VBool"`
}) {
}

func (x VMap_VStructDepth1_VBool_VStructDepth1_VBool) VDLIsZero() bool {
	return len(x) == 0
}

func (x VMap_VStructDepth1_VBool_VStructDepth1_VBool) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_map_174); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
		if err := elem.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VMap_VStructDepth1_VBool_VStructDepth1_VBool) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_map_174); err != nil {
		return err
	}
	var tmpMap VMap_VStructDepth1_VBool_VStructDepth1_VBool
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VMap_VStructDepth1_VBool_VStructDepth1_VBool, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VStructDepth1_VBool
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		var elem VStructDepth1_VBool
		{
			if err := elem.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VMap_VStructDepth1_VBool_VStructDepth1_VBool)
		}
		tmpMap[key] = elem
	}
}

type VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64 map[VUnionDepth1_VUint64]VUnionDepth1_VUint64

func (VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64"`
}) {
}

func (x VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64) VDLIsZero() bool {
	return len(x) == 0
}

func (x VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_map_175); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		switch {
		case key == nil:
			// Write the zero value of the union type.
			if err := vdl.ZeroValue(__VDLType_union_135).VDLWrite(enc); err != nil {
				return err
			}
		default:
			if err := key.VDLWrite(enc); err != nil {
				return err
			}
		}
		switch {
		case elem == nil:
			// Write the zero value of the union type.
			if err := vdl.ZeroValue(__VDLType_union_135).VDLWrite(enc); err != nil {
				return err
			}
		default:
			if err := elem.VDLWrite(enc); err != nil {
				return err
			}
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_map_175); err != nil {
		return err
	}
	var tmpMap VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VUnionDepth1_VUint64
		{
			if err := VDLReadVUnionDepth1_VUint64(dec, &key); err != nil {
				return err
			}
		}
		var elem VUnionDepth1_VUint64
		{
			if err := VDLReadVUnionDepth1_VUint64(dec, &elem); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64)
		}
		tmpMap[key] = elem
	}
}

type VStructDepth2_All struct {
	F0  VArray2_TypeObject
	F1  VArray1_Uint32
	F2  []int16
	F3  VList_Any
	F4  map[float64]struct{}
	F5  VSet_VEnumBcd
	F6  map[byte]byte
	F7  map[uint32]uint32
	F8  VStructDepth1_All
	F9  VStructDepth1_Bool
	F10 VUnionDepth1_All
	F11 VUnionDepth1_Float64
	F12 *VStructDepth1_VEnumBcd
	F13 *VStructDepth1_VUint16
}

func (VStructDepth2_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth2_All"`
}) {
}

func (x VStructDepth2_All) VDLIsZero() bool {
	if !x.F0.VDLIsZero() {
		return false
	}
	if x.F1 != (VArray1_Uint32{}) {
		return false
	}
	if len(x.F2) != 0 {
		return false
	}
	if len(x.F3) != 0 {
		return false
	}
	if len(x.F4) != 0 {
		return false
	}
	if len(x.F5) != 0 {
		return false
	}
	if len(x.F6) != 0 {
		return false
	}
	if len(x.F7) != 0 {
		return false
	}
	if !x.F8.VDLIsZero() {
		return false
	}
	if x.F9 != (VStructDepth1_Bool{}) {
		return false
	}
	if x.F10 != nil && !x.F10.VDLIsZero() {
		return false
	}
	if x.F11 != nil && !x.F11.VDLIsZero() {
		return false
	}
	if x.F12 != nil {
		return false
	}
	if x.F13 != nil {
		return false
	}
	return true
}

func (x VStructDepth2_All) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_176); err != nil {
		return err
	}
	if !x.F0.VDLIsZero() {
		if err := enc.NextField("F0"); err != nil {
			return err
		}
		if err := x.F0.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F1 != (VArray1_Uint32{}) {
		if err := enc.NextField("F1"); err != nil {
			return err
		}
		if err := x.F1.VDLWrite(enc); err != nil {
			return err
		}
	}
	if len(x.F2) != 0 {
		if err := enc.NextField("F2"); err != nil {
			return err
		}
		if err := __VDLWriteAnon_list_5(enc, x.F2); err != nil {
			return err
		}
	}
	if len(x.F3) != 0 {
		if err := enc.NextField("F3"); err != nil {
			return err
		}
		if err := x.F3.VDLWrite(enc); err != nil {
			return err
		}
	}
	if len(x.F4) != 0 {
		if err := enc.NextField("F4"); err != nil {
			return err
		}
		if err := __VDLWriteAnon_set_6(enc, x.F4); err != nil {
			return err
		}
	}
	if len(x.F5) != 0 {
		if err := enc.NextField("F5"); err != nil {
			return err
		}
		if err := x.F5.VDLWrite(enc); err != nil {
			return err
		}
	}
	if len(x.F6) != 0 {
		if err := enc.NextField("F6"); err != nil {
			return err
		}
		if err := __VDLWriteAnon_map_2(enc, x.F6); err != nil {
			return err
		}
	}
	if len(x.F7) != 0 {
		if err := enc.NextField("F7"); err != nil {
			return err
		}
		if err := __VDLWriteAnon_map_7(enc, x.F7); err != nil {
			return err
		}
	}
	if !x.F8.VDLIsZero() {
		if err := enc.NextField("F8"); err != nil {
			return err
		}
		if err := x.F8.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F9 != (VStructDepth1_Bool{}) {
		if err := enc.NextField("F9"); err != nil {
			return err
		}
		if err := x.F9.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F10 != nil && !x.F10.VDLIsZero() {
		if err := enc.NextField("F10"); err != nil {
			return err
		}
		if err := x.F10.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F11 != nil && !x.F11.VDLIsZero() {
		if err := enc.NextField("F11"); err != nil {
			return err
		}
		if err := x.F11.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F12 != nil {
		if err := enc.NextField("F12"); err != nil {
			return err
		}
		enc.SetNextStartValueIsOptional()

		if err := x.F12.VDLWrite(enc); err != nil {
			return err
		}

	}
	if x.F13 != nil {
		if err := enc.NextField("F13"); err != nil {
			return err
		}
		enc.SetNextStartValueIsOptional()

		if err := x.F13.VDLWrite(enc); err != nil {
			return err
		}

	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func __VDLWriteAnon_list_5(enc vdl.Encoder, x []int16) error {
	if err := enc.StartValue(__VDLType_list_177); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Int16Type); err != nil {
			return err
		}
		if err := enc.EncodeInt(int64(x[i])); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func __VDLWriteAnon_set_6(enc vdl.Encoder, x map[float64]struct{}) error {
	if err := enc.StartValue(__VDLType_set_178); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Float64Type); err != nil {
			return err
		}
		if err := enc.EncodeFloat(key); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func __VDLWriteAnon_map_7(enc vdl.Encoder, x map[uint32]uint32) error {
	if err := enc.StartValue(__VDLType_map_179); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Uint32Type); err != nil {
			return err
		}
		if err := enc.EncodeUint(uint64(key)); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Uint32Type); err != nil {
			return err
		}
		if err := enc.EncodeUint(uint64(elem)); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth2_All) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth2_All{
		F0: VArray2_TypeObject{
			vdl.AnyType,
			vdl.AnyType,
		},
		F8: VStructDepth1_All{
			F5: vdl.AnyType,
		},
		F10: VUnionDepth1_AllF0{},
		F11: VUnionDepth1_Float64F29{},
	}
	if err := dec.StartValue(__VDLType_struct_176); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F0":
			if err := x.F0.VDLRead(dec); err != nil {
				return err
			}
		case "F1":
			if err := x.F1.VDLRead(dec); err != nil {
				return err
			}
		case "F2":
			if err := __VDLReadAnon_list_5(dec, &x.F2); err != nil {
				return err
			}
		case "F3":
			if err := x.F3.VDLRead(dec); err != nil {
				return err
			}
		case "F4":
			if err := __VDLReadAnon_set_6(dec, &x.F4); err != nil {
				return err
			}
		case "F5":
			if err := x.F5.VDLRead(dec); err != nil {
				return err
			}
		case "F6":
			if err := __VDLReadAnon_map_2(dec, &x.F6); err != nil {
				return err
			}
		case "F7":
			if err := __VDLReadAnon_map_7(dec, &x.F7); err != nil {
				return err
			}
		case "F8":
			if err := x.F8.VDLRead(dec); err != nil {
				return err
			}
		case "F9":
			if err := x.F9.VDLRead(dec); err != nil {
				return err
			}
		case "F10":
			if err := VDLReadVUnionDepth1_All(dec, &x.F10); err != nil {
				return err
			}
		case "F11":
			if err := VDLReadVUnionDepth1_Float64(dec, &x.F11); err != nil {
				return err
			}
		case "F12":
			if err := dec.StartValue(__VDLType_optional_169); err != nil {
				return err
			}
			if dec.IsNil() {
				x.F12 = nil
				if err := dec.FinishValue(); err != nil {
					return err
				}
			} else {
				x.F12 = new(VStructDepth1_VEnumBcd)
				dec.IgnoreNextStartValue()
				if err := x.F12.VDLRead(dec); err != nil {
					return err
				}
			}
		case "F13":
			if err := dec.StartValue(__VDLType_optional_180); err != nil {
				return err
			}
			if dec.IsNil() {
				x.F13 = nil
				if err := dec.FinishValue(); err != nil {
					return err
				}
			} else {
				x.F13 = new(VStructDepth1_VUint16)
				dec.IgnoreNextStartValue()
				if err := x.F13.VDLRead(dec); err != nil {
					return err
				}
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

func __VDLReadAnon_list_5(dec vdl.Decoder, x *[]int16) error {
	if err := dec.StartValue(__VDLType_list_177); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make([]int16, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem int16
		if err := dec.StartValue(vdl.Int16Type); err != nil {
			return err
		}
		tmp, err := dec.DecodeInt(16)
		if err != nil {
			return err
		}
		elem = int16(tmp)
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

func __VDLReadAnon_set_6(dec vdl.Decoder, x *map[float64]struct{}) error {
	if err := dec.StartValue(__VDLType_set_178); err != nil {
		return err
	}
	var tmpMap map[float64]struct{}
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(map[float64]struct{}, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key float64
		{
			if err := dec.StartValue(vdl.Float64Type); err != nil {
				return err
			}
			var err error
			if key, err = dec.DecodeFloat(64); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(map[float64]struct{})
		}
		tmpMap[key] = struct{}{}
	}
}

func __VDLReadAnon_map_7(dec vdl.Decoder, x *map[uint32]uint32) error {
	if err := dec.StartValue(__VDLType_map_179); err != nil {
		return err
	}
	var tmpMap map[uint32]uint32
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(map[uint32]uint32, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key uint32
		{
			if err := dec.StartValue(vdl.Uint32Type); err != nil {
				return err
			}
			tmp, err := dec.DecodeUint(32)
			if err != nil {
				return err
			}
			key = uint32(tmp)
			if err := dec.FinishValue(); err != nil {
				return err
			}
		}
		var elem uint32
		{
			if err := dec.StartValue(vdl.Uint32Type); err != nil {
				return err
			}
			tmp, err := dec.DecodeUint(32)
			if err != nil {
				return err
			}
			elem = uint32(tmp)
			if err := dec.FinishValue(); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(map[uint32]uint32)
		}
		tmpMap[key] = elem
	}
}

type VStructDepth2_VArray2_TypeObject struct {
	F0 VArray2_TypeObject
}

func (VStructDepth2_VArray2_TypeObject) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth2_VArray2_TypeObject"`
}) {
}

func (x VStructDepth2_VArray2_TypeObject) VDLIsZero() bool {
	if !x.F0.VDLIsZero() {
		return false
	}
	return true
}

func (x VStructDepth2_VArray2_TypeObject) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_181); err != nil {
		return err
	}
	if !x.F0.VDLIsZero() {
		if err := enc.NextField("F0"); err != nil {
			return err
		}
		if err := x.F0.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth2_VArray2_TypeObject) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth2_VArray2_TypeObject{
		F0: VArray2_TypeObject{
			vdl.AnyType,
			vdl.AnyType,
		},
	}
	if err := dec.StartValue(__VDLType_struct_181); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F0":
			if err := x.F0.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth2_VArray1_Uint32 struct {
	F1 VArray1_Uint32
}

func (VStructDepth2_VArray1_Uint32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth2_VArray1_Uint32"`
}) {
}

func (x VStructDepth2_VArray1_Uint32) VDLIsZero() bool {
	return x == VStructDepth2_VArray1_Uint32{}
}

func (x VStructDepth2_VArray1_Uint32) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_182); err != nil {
		return err
	}
	if x.F1 != (VArray1_Uint32{}) {
		if err := enc.NextField("F1"); err != nil {
			return err
		}
		if err := x.F1.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth2_VArray1_Uint32) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth2_VArray1_Uint32{}
	if err := dec.StartValue(__VDLType_struct_182); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F1":
			if err := x.F1.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth2_List_Int16 struct {
	F2 []int16
}

func (VStructDepth2_List_Int16) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth2_List_Int16"`
}) {
}

func (x VStructDepth2_List_Int16) VDLIsZero() bool {
	if len(x.F2) != 0 {
		return false
	}
	return true
}

func (x VStructDepth2_List_Int16) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_183); err != nil {
		return err
	}
	if len(x.F2) != 0 {
		if err := enc.NextField("F2"); err != nil {
			return err
		}
		if err := __VDLWriteAnon_list_5(enc, x.F2); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth2_List_Int16) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth2_List_Int16{}
	if err := dec.StartValue(__VDLType_struct_183); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F2":
			if err := __VDLReadAnon_list_5(dec, &x.F2); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth2_VList_Any struct {
	F3 VList_Any
}

func (VStructDepth2_VList_Any) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth2_VList_Any"`
}) {
}

func (x VStructDepth2_VList_Any) VDLIsZero() bool {
	if len(x.F3) != 0 {
		return false
	}
	return true
}

func (x VStructDepth2_VList_Any) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_184); err != nil {
		return err
	}
	if len(x.F3) != 0 {
		if err := enc.NextField("F3"); err != nil {
			return err
		}
		if err := x.F3.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth2_VList_Any) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth2_VList_Any{}
	if err := dec.StartValue(__VDLType_struct_184); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F3":
			if err := x.F3.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth2_Set_Float64 struct {
	F4 map[float64]struct{}
}

func (VStructDepth2_Set_Float64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth2_Set_Float64"`
}) {
}

func (x VStructDepth2_Set_Float64) VDLIsZero() bool {
	if len(x.F4) != 0 {
		return false
	}
	return true
}

func (x VStructDepth2_Set_Float64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_185); err != nil {
		return err
	}
	if len(x.F4) != 0 {
		if err := enc.NextField("F4"); err != nil {
			return err
		}
		if err := __VDLWriteAnon_set_6(enc, x.F4); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth2_Set_Float64) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth2_Set_Float64{}
	if err := dec.StartValue(__VDLType_struct_185); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F4":
			if err := __VDLReadAnon_set_6(dec, &x.F4); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth2_VSet_VEnumBcd struct {
	F5 VSet_VEnumBcd
}

func (VStructDepth2_VSet_VEnumBcd) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth2_VSet_VEnumBcd"`
}) {
}

func (x VStructDepth2_VSet_VEnumBcd) VDLIsZero() bool {
	if len(x.F5) != 0 {
		return false
	}
	return true
}

func (x VStructDepth2_VSet_VEnumBcd) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_186); err != nil {
		return err
	}
	if len(x.F5) != 0 {
		if err := enc.NextField("F5"); err != nil {
			return err
		}
		if err := x.F5.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth2_VSet_VEnumBcd) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth2_VSet_VEnumBcd{}
	if err := dec.StartValue(__VDLType_struct_186); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F5":
			if err := x.F5.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth2_Map_Byte_Byte struct {
	F6 map[byte]byte
}

func (VStructDepth2_Map_Byte_Byte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth2_Map_Byte_Byte"`
}) {
}

func (x VStructDepth2_Map_Byte_Byte) VDLIsZero() bool {
	if len(x.F6) != 0 {
		return false
	}
	return true
}

func (x VStructDepth2_Map_Byte_Byte) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_187); err != nil {
		return err
	}
	if len(x.F6) != 0 {
		if err := enc.NextField("F6"); err != nil {
			return err
		}
		if err := __VDLWriteAnon_map_2(enc, x.F6); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth2_Map_Byte_Byte) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth2_Map_Byte_Byte{}
	if err := dec.StartValue(__VDLType_struct_187); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F6":
			if err := __VDLReadAnon_map_2(dec, &x.F6); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth2_Map_Uint32_Uint32 struct {
	F7 map[uint32]uint32
}

func (VStructDepth2_Map_Uint32_Uint32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth2_Map_Uint32_Uint32"`
}) {
}

func (x VStructDepth2_Map_Uint32_Uint32) VDLIsZero() bool {
	if len(x.F7) != 0 {
		return false
	}
	return true
}

func (x VStructDepth2_Map_Uint32_Uint32) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_188); err != nil {
		return err
	}
	if len(x.F7) != 0 {
		if err := enc.NextField("F7"); err != nil {
			return err
		}
		if err := __VDLWriteAnon_map_7(enc, x.F7); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth2_Map_Uint32_Uint32) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth2_Map_Uint32_Uint32{}
	if err := dec.StartValue(__VDLType_struct_188); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F7":
			if err := __VDLReadAnon_map_7(dec, &x.F7); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth2_VStructDepth1_All struct {
	F8 VStructDepth1_All
}

func (VStructDepth2_VStructDepth1_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth2_VStructDepth1_All"`
}) {
}

func (x VStructDepth2_VStructDepth1_All) VDLIsZero() bool {
	if !x.F8.VDLIsZero() {
		return false
	}
	return true
}

func (x VStructDepth2_VStructDepth1_All) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_189); err != nil {
		return err
	}
	if !x.F8.VDLIsZero() {
		if err := enc.NextField("F8"); err != nil {
			return err
		}
		if err := x.F8.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth2_VStructDepth1_All) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth2_VStructDepth1_All{
		F8: VStructDepth1_All{
			F5: vdl.AnyType,
		},
	}
	if err := dec.StartValue(__VDLType_struct_189); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F8":
			if err := x.F8.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth2_VStructDepth1_Bool struct {
	F9 VStructDepth1_Bool
}

func (VStructDepth2_VStructDepth1_Bool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth2_VStructDepth1_Bool"`
}) {
}

func (x VStructDepth2_VStructDepth1_Bool) VDLIsZero() bool {
	return x == VStructDepth2_VStructDepth1_Bool{}
}

func (x VStructDepth2_VStructDepth1_Bool) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_190); err != nil {
		return err
	}
	if x.F9 != (VStructDepth1_Bool{}) {
		if err := enc.NextField("F9"); err != nil {
			return err
		}
		if err := x.F9.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth2_VStructDepth1_Bool) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth2_VStructDepth1_Bool{}
	if err := dec.StartValue(__VDLType_struct_190); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F9":
			if err := x.F9.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth2_VUnionDepth1_All struct {
	F10 VUnionDepth1_All
}

func (VStructDepth2_VUnionDepth1_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth2_VUnionDepth1_All"`
}) {
}

func (x VStructDepth2_VUnionDepth1_All) VDLIsZero() bool {
	if x.F10 != nil && !x.F10.VDLIsZero() {
		return false
	}
	return true
}

func (x VStructDepth2_VUnionDepth1_All) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_191); err != nil {
		return err
	}
	if x.F10 != nil && !x.F10.VDLIsZero() {
		if err := enc.NextField("F10"); err != nil {
			return err
		}
		if err := x.F10.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth2_VUnionDepth1_All) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth2_VUnionDepth1_All{
		F10: VUnionDepth1_AllF0{},
	}
	if err := dec.StartValue(__VDLType_struct_191); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F10":
			if err := VDLReadVUnionDepth1_All(dec, &x.F10); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth2_VUnionDepth1_Float64 struct {
	F11 VUnionDepth1_Float64
}

func (VStructDepth2_VUnionDepth1_Float64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth2_VUnionDepth1_Float64"`
}) {
}

func (x VStructDepth2_VUnionDepth1_Float64) VDLIsZero() bool {
	if x.F11 != nil && !x.F11.VDLIsZero() {
		return false
	}
	return true
}

func (x VStructDepth2_VUnionDepth1_Float64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_192); err != nil {
		return err
	}
	if x.F11 != nil && !x.F11.VDLIsZero() {
		if err := enc.NextField("F11"); err != nil {
			return err
		}
		if err := x.F11.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth2_VUnionDepth1_Float64) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth2_VUnionDepth1_Float64{
		F11: VUnionDepth1_Float64F29{},
	}
	if err := dec.StartValue(__VDLType_struct_192); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F11":
			if err := VDLReadVUnionDepth1_Float64(dec, &x.F11); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth2_OptVStructDepth1_VEnumBcd struct {
	F12 *VStructDepth1_VEnumBcd
}

func (VStructDepth2_OptVStructDepth1_VEnumBcd) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth2_OptVStructDepth1_VEnumBcd"`
}) {
}

func (x VStructDepth2_OptVStructDepth1_VEnumBcd) VDLIsZero() bool {
	return x == VStructDepth2_OptVStructDepth1_VEnumBcd{}
}

func (x VStructDepth2_OptVStructDepth1_VEnumBcd) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_193); err != nil {
		return err
	}
	if x.F12 != nil {
		if err := enc.NextField("F12"); err != nil {
			return err
		}
		enc.SetNextStartValueIsOptional()

		if err := x.F12.VDLWrite(enc); err != nil {
			return err
		}

	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth2_OptVStructDepth1_VEnumBcd) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth2_OptVStructDepth1_VEnumBcd{}
	if err := dec.StartValue(__VDLType_struct_193); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F12":
			if err := dec.StartValue(__VDLType_optional_169); err != nil {
				return err
			}
			if dec.IsNil() {
				x.F12 = nil
				if err := dec.FinishValue(); err != nil {
					return err
				}
			} else {
				x.F12 = new(VStructDepth1_VEnumBcd)
				dec.IgnoreNextStartValue()
				if err := x.F12.VDLRead(dec); err != nil {
					return err
				}
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth2_OptVStructDepth1_VUint16 struct {
	F13 *VStructDepth1_VUint16
}

func (VStructDepth2_OptVStructDepth1_VUint16) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth2_OptVStructDepth1_VUint16"`
}) {
}

func (x VStructDepth2_OptVStructDepth1_VUint16) VDLIsZero() bool {
	return x == VStructDepth2_OptVStructDepth1_VUint16{}
}

func (x VStructDepth2_OptVStructDepth1_VUint16) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_194); err != nil {
		return err
	}
	if x.F13 != nil {
		if err := enc.NextField("F13"); err != nil {
			return err
		}
		enc.SetNextStartValueIsOptional()

		if err := x.F13.VDLWrite(enc); err != nil {
			return err
		}

	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth2_OptVStructDepth1_VUint16) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth2_OptVStructDepth1_VUint16{}
	if err := dec.StartValue(__VDLType_struct_194); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F13":
			if err := dec.StartValue(__VDLType_optional_180); err != nil {
				return err
			}
			if dec.IsNil() {
				x.F13 = nil
				if err := dec.FinishValue(); err != nil {
					return err
				}
			} else {
				x.F13 = new(VStructDepth1_VUint16)
				dec.IgnoreNextStartValue()
				if err := x.F13.VDLRead(dec); err != nil {
					return err
				}
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type (
	// VUnionDepth2_All represents any single field of the VUnionDepth2_All union type.
	VUnionDepth2_All interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth2_All union type.
		__VDLReflect(__VUnionDepth2_AllReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth2_AllF0 represents field F0 of the VUnionDepth2_All union type.
	VUnionDepth2_AllF0 struct{ Value VArray1_String }
	// VUnionDepth2_AllF1 represents field F1 of the VUnionDepth2_All union type.
	VUnionDepth2_AllF1 struct{ Value VArray2_VByte }
	// VUnionDepth2_AllF2 represents field F2 of the VUnionDepth2_All union type.
	VUnionDepth2_AllF2 struct{ Value VList_VByte }
	// VUnionDepth2_AllF3 represents field F3 of the VUnionDepth2_All union type.
	VUnionDepth2_AllF3 struct{ Value VList_OptVNamedError }
	// VUnionDepth2_AllF4 represents field F4 of the VUnionDepth2_All union type.
	VUnionDepth2_AllF4 struct{ Value VSet_VBool }
	// VUnionDepth2_AllF5 represents field F5 of the VUnionDepth2_All union type.
	VUnionDepth2_AllF5 struct{ Value VSet_VNamedError }
	// VUnionDepth2_AllF6 represents field F6 of the VUnionDepth2_All union type.
	VUnionDepth2_AllF6 struct{ Value map[VBool]VBool }
	// VUnionDepth2_AllF7 represents field F7 of the VUnionDepth2_All union type.
	VUnionDepth2_AllF7 struct{ Value VMap_VBool_VBool }
	// VUnionDepth2_AllF8 represents field F8 of the VUnionDepth2_All union type.
	VUnionDepth2_AllF8 struct{ Value VStructDepth1_All }
	// VUnionDepth2_AllF9 represents field F9 of the VUnionDepth2_All union type.
	VUnionDepth2_AllF9 struct{ Value VStructDepth1_Int8 }
	// VUnionDepth2_AllF10 represents field F10 of the VUnionDepth2_All union type.
	VUnionDepth2_AllF10 struct{ Value VUnionDepth1_All }
	// VUnionDepth2_AllF11 represents field F11 of the VUnionDepth2_All union type.
	VUnionDepth2_AllF11 struct{ Value VUnionDepth1_VUint32 }
	// VUnionDepth2_AllF12 represents field F12 of the VUnionDepth2_All union type.
	VUnionDepth2_AllF12 struct{ Value *VStructDepth1_VEnumBcd }
	// VUnionDepth2_AllF13 represents field F13 of the VUnionDepth2_All union type.
	VUnionDepth2_AllF13 struct{ Value *VStructDepth1_VFloat32 }
	// __VUnionDepth2_AllReflect describes the VUnionDepth2_All union type.
	__VUnionDepth2_AllReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth2_All"`
		Type  VUnionDepth2_All
		Union struct {
			F0  VUnionDepth2_AllF0
			F1  VUnionDepth2_AllF1
			F2  VUnionDepth2_AllF2
			F3  VUnionDepth2_AllF3
			F4  VUnionDepth2_AllF4
			F5  VUnionDepth2_AllF5
			F6  VUnionDepth2_AllF6
			F7  VUnionDepth2_AllF7
			F8  VUnionDepth2_AllF8
			F9  VUnionDepth2_AllF9
			F10 VUnionDepth2_AllF10
			F11 VUnionDepth2_AllF11
			F12 VUnionDepth2_AllF12
			F13 VUnionDepth2_AllF13
		}
	}
)

func (x VUnionDepth2_AllF0) Index() int                             { return 0 }
func (x VUnionDepth2_AllF0) Interface() interface{}                 { return x.Value }
func (x VUnionDepth2_AllF0) Name() string                           { return "F0" }
func (x VUnionDepth2_AllF0) __VDLReflect(__VUnionDepth2_AllReflect) {}

func (x VUnionDepth2_AllF1) Index() int                             { return 1 }
func (x VUnionDepth2_AllF1) Interface() interface{}                 { return x.Value }
func (x VUnionDepth2_AllF1) Name() string                           { return "F1" }
func (x VUnionDepth2_AllF1) __VDLReflect(__VUnionDepth2_AllReflect) {}

func (x VUnionDepth2_AllF2) Index() int                             { return 2 }
func (x VUnionDepth2_AllF2) Interface() interface{}                 { return x.Value }
func (x VUnionDepth2_AllF2) Name() string                           { return "F2" }
func (x VUnionDepth2_AllF2) __VDLReflect(__VUnionDepth2_AllReflect) {}

func (x VUnionDepth2_AllF3) Index() int                             { return 3 }
func (x VUnionDepth2_AllF3) Interface() interface{}                 { return x.Value }
func (x VUnionDepth2_AllF3) Name() string                           { return "F3" }
func (x VUnionDepth2_AllF3) __VDLReflect(__VUnionDepth2_AllReflect) {}

func (x VUnionDepth2_AllF4) Index() int                             { return 4 }
func (x VUnionDepth2_AllF4) Interface() interface{}                 { return x.Value }
func (x VUnionDepth2_AllF4) Name() string                           { return "F4" }
func (x VUnionDepth2_AllF4) __VDLReflect(__VUnionDepth2_AllReflect) {}

func (x VUnionDepth2_AllF5) Index() int                             { return 5 }
func (x VUnionDepth2_AllF5) Interface() interface{}                 { return x.Value }
func (x VUnionDepth2_AllF5) Name() string                           { return "F5" }
func (x VUnionDepth2_AllF5) __VDLReflect(__VUnionDepth2_AllReflect) {}

func (x VUnionDepth2_AllF6) Index() int                             { return 6 }
func (x VUnionDepth2_AllF6) Interface() interface{}                 { return x.Value }
func (x VUnionDepth2_AllF6) Name() string                           { return "F6" }
func (x VUnionDepth2_AllF6) __VDLReflect(__VUnionDepth2_AllReflect) {}

func (x VUnionDepth2_AllF7) Index() int                             { return 7 }
func (x VUnionDepth2_AllF7) Interface() interface{}                 { return x.Value }
func (x VUnionDepth2_AllF7) Name() string                           { return "F7" }
func (x VUnionDepth2_AllF7) __VDLReflect(__VUnionDepth2_AllReflect) {}

func (x VUnionDepth2_AllF8) Index() int                             { return 8 }
func (x VUnionDepth2_AllF8) Interface() interface{}                 { return x.Value }
func (x VUnionDepth2_AllF8) Name() string                           { return "F8" }
func (x VUnionDepth2_AllF8) __VDLReflect(__VUnionDepth2_AllReflect) {}

func (x VUnionDepth2_AllF9) Index() int                             { return 9 }
func (x VUnionDepth2_AllF9) Interface() interface{}                 { return x.Value }
func (x VUnionDepth2_AllF9) Name() string                           { return "F9" }
func (x VUnionDepth2_AllF9) __VDLReflect(__VUnionDepth2_AllReflect) {}

func (x VUnionDepth2_AllF10) Index() int                             { return 10 }
func (x VUnionDepth2_AllF10) Interface() interface{}                 { return x.Value }
func (x VUnionDepth2_AllF10) Name() string                           { return "F10" }
func (x VUnionDepth2_AllF10) __VDLReflect(__VUnionDepth2_AllReflect) {}

func (x VUnionDepth2_AllF11) Index() int                             { return 11 }
func (x VUnionDepth2_AllF11) Interface() interface{}                 { return x.Value }
func (x VUnionDepth2_AllF11) Name() string                           { return "F11" }
func (x VUnionDepth2_AllF11) __VDLReflect(__VUnionDepth2_AllReflect) {}

func (x VUnionDepth2_AllF12) Index() int                             { return 12 }
func (x VUnionDepth2_AllF12) Interface() interface{}                 { return x.Value }
func (x VUnionDepth2_AllF12) Name() string                           { return "F12" }
func (x VUnionDepth2_AllF12) __VDLReflect(__VUnionDepth2_AllReflect) {}

func (x VUnionDepth2_AllF13) Index() int                             { return 13 }
func (x VUnionDepth2_AllF13) Interface() interface{}                 { return x.Value }
func (x VUnionDepth2_AllF13) Name() string                           { return "F13" }
func (x VUnionDepth2_AllF13) __VDLReflect(__VUnionDepth2_AllReflect) {}

func (x VUnionDepth2_AllF0) VDLIsZero() bool {
	return x.Value == VArray1_String{}
}

func (x VUnionDepth2_AllF1) VDLIsZero() bool {
	return false
}

func (x VUnionDepth2_AllF2) VDLIsZero() bool {
	return false
}

func (x VUnionDepth2_AllF3) VDLIsZero() bool {
	return false
}

func (x VUnionDepth2_AllF4) VDLIsZero() bool {
	return false
}

func (x VUnionDepth2_AllF5) VDLIsZero() bool {
	return false
}

func (x VUnionDepth2_AllF6) VDLIsZero() bool {
	return false
}

func (x VUnionDepth2_AllF7) VDLIsZero() bool {
	return false
}

func (x VUnionDepth2_AllF8) VDLIsZero() bool {
	return false
}

func (x VUnionDepth2_AllF9) VDLIsZero() bool {
	return false
}

func (x VUnionDepth2_AllF10) VDLIsZero() bool {
	return false
}

func (x VUnionDepth2_AllF11) VDLIsZero() bool {
	return false
}

func (x VUnionDepth2_AllF12) VDLIsZero() bool {
	return false
}

func (x VUnionDepth2_AllF13) VDLIsZero() bool {
	return false
}

func (x VUnionDepth2_AllF0) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_195); err != nil {
		return err
	}
	if err := enc.NextField("F0"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth2_AllF1) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_195); err != nil {
		return err
	}
	if err := enc.NextField("F1"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth2_AllF2) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_195); err != nil {
		return err
	}
	if err := enc.NextField("F2"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth2_AllF3) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_195); err != nil {
		return err
	}
	if err := enc.NextField("F3"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth2_AllF4) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_195); err != nil {
		return err
	}
	if err := enc.NextField("F4"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth2_AllF5) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_195); err != nil {
		return err
	}
	if err := enc.NextField("F5"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth2_AllF6) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_195); err != nil {
		return err
	}
	if err := enc.NextField("F6"); err != nil {
		return err
	}
	if err := __VDLWriteAnon_map_8(enc, x.Value); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth2_AllF7) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_195); err != nil {
		return err
	}
	if err := enc.NextField("F7"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth2_AllF8) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_195); err != nil {
		return err
	}
	if err := enc.NextField("F8"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth2_AllF9) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_195); err != nil {
		return err
	}
	if err := enc.NextField("F9"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth2_AllF10) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_195); err != nil {
		return err
	}
	if err := enc.NextField("F10"); err != nil {
		return err
	}
	switch {
	case x.Value == nil:
		// Write the zero value of the union type.
		if err := vdl.ZeroValue(__VDLType_union_116).VDLWrite(enc); err != nil {
			return err
		}
	default:
		if err := x.Value.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth2_AllF11) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_195); err != nil {
		return err
	}
	if err := enc.NextField("F11"); err != nil {
		return err
	}
	switch {
	case x.Value == nil:
		// Write the zero value of the union type.
		if err := vdl.ZeroValue(__VDLType_union_133).VDLWrite(enc); err != nil {
			return err
		}
	default:
		if err := x.Value.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth2_AllF12) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_195); err != nil {
		return err
	}
	if err := enc.NextField("F12"); err != nil {
		return err
	}
	if x.Value == nil {
		if err := enc.NilValue(__VDLType_optional_169); err != nil {
			return err
		}
	} else {
		enc.SetNextStartValueIsOptional()

		if err := x.Value.VDLWrite(enc); err != nil {
			return err
		}

	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth2_AllF13) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_195); err != nil {
		return err
	}
	if err := enc.NextField("F13"); err != nil {
		return err
	}
	if x.Value == nil {
		if err := enc.NilValue(__VDLType_optional_159); err != nil {
			return err
		}
	} else {
		enc.SetNextStartValueIsOptional()

		if err := x.Value.VDLWrite(enc); err != nil {
			return err
		}

	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func __VDLWriteAnon_map_8(enc vdl.Encoder, x map[VBool]VBool) error {
	if err := enc.StartValue(__VDLType_map_196); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
		if err := elem.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth2_All(dec vdl.Decoder, x *VUnionDepth2_All) error {
	if err := dec.StartValue(__VDLType_union_195); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F0":
		var field VUnionDepth2_AllF0
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F1":
		var field VUnionDepth2_AllF1
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F2":
		var field VUnionDepth2_AllF2
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F3":
		var field VUnionDepth2_AllF3
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F4":
		var field VUnionDepth2_AllF4
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F5":
		var field VUnionDepth2_AllF5
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F6":
		var field VUnionDepth2_AllF6
		if err := __VDLReadAnon_map_8(dec, &field.Value); err != nil {
			return err
		}
		*x = field
	case "F7":
		var field VUnionDepth2_AllF7
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F8":
		var field VUnionDepth2_AllF8
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F9":
		var field VUnionDepth2_AllF9
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F10":
		var field VUnionDepth2_AllF10
		if err := VDLReadVUnionDepth1_All(dec, &field.Value); err != nil {
			return err
		}
		*x = field
	case "F11":
		var field VUnionDepth2_AllF11
		if err := VDLReadVUnionDepth1_VUint32(dec, &field.Value); err != nil {
			return err
		}
		*x = field
	case "F12":
		var field VUnionDepth2_AllF12
		if err := dec.StartValue(__VDLType_optional_169); err != nil {
			return err
		}
		if dec.IsNil() {
			field.Value = nil
			if err := dec.FinishValue(); err != nil {
				return err
			}
		} else {
			field.Value = new(VStructDepth1_VEnumBcd)
			dec.IgnoreNextStartValue()
			if err := field.Value.VDLRead(dec); err != nil {
				return err
			}
		}
		*x = field
	case "F13":
		var field VUnionDepth2_AllF13
		if err := dec.StartValue(__VDLType_optional_159); err != nil {
			return err
		}
		if dec.IsNil() {
			field.Value = nil
			if err := dec.FinishValue(); err != nil {
				return err
			}
		} else {
			field.Value = new(VStructDepth1_VFloat32)
			dec.IgnoreNextStartValue()
			if err := field.Value.VDLRead(dec); err != nil {
				return err
			}
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

func __VDLReadAnon_map_8(dec vdl.Decoder, x *map[VBool]VBool) error {
	if err := dec.StartValue(__VDLType_map_196); err != nil {
		return err
	}
	var tmpMap map[VBool]VBool
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(map[VBool]VBool, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VBool
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		var elem VBool
		{
			if err := elem.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(map[VBool]VBool)
		}
		tmpMap[key] = elem
	}
}

type (
	// VUnionDepth2_VArray1_String represents any single field of the VUnionDepth2_VArray1_String union type.
	VUnionDepth2_VArray1_String interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth2_VArray1_String union type.
		__VDLReflect(__VUnionDepth2_VArray1_StringReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth2_VArray1_StringF0 represents field F0 of the VUnionDepth2_VArray1_String union type.
	VUnionDepth2_VArray1_StringF0 struct{ Value VArray1_String }
	// __VUnionDepth2_VArray1_StringReflect describes the VUnionDepth2_VArray1_String union type.
	__VUnionDepth2_VArray1_StringReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth2_VArray1_String"`
		Type  VUnionDepth2_VArray1_String
		Union struct {
			F0 VUnionDepth2_VArray1_StringF0
		}
	}
)

func (x VUnionDepth2_VArray1_StringF0) Index() int                                        { return 0 }
func (x VUnionDepth2_VArray1_StringF0) Interface() interface{}                            { return x.Value }
func (x VUnionDepth2_VArray1_StringF0) Name() string                                      { return "F0" }
func (x VUnionDepth2_VArray1_StringF0) __VDLReflect(__VUnionDepth2_VArray1_StringReflect) {}

func (x VUnionDepth2_VArray1_StringF0) VDLIsZero() bool {
	return x.Value == VArray1_String{}
}

func (x VUnionDepth2_VArray1_StringF0) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_197); err != nil {
		return err
	}
	if err := enc.NextField("F0"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth2_VArray1_String(dec vdl.Decoder, x *VUnionDepth2_VArray1_String) error {
	if err := dec.StartValue(__VDLType_union_197); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F0":
		var field VUnionDepth2_VArray1_StringF0
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth2_VArray2_VByte represents any single field of the VUnionDepth2_VArray2_VByte union type.
	VUnionDepth2_VArray2_VByte interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth2_VArray2_VByte union type.
		__VDLReflect(__VUnionDepth2_VArray2_VByteReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth2_VArray2_VByteF1 represents field F1 of the VUnionDepth2_VArray2_VByte union type.
	VUnionDepth2_VArray2_VByteF1 struct{ Value VArray2_VByte }
	// __VUnionDepth2_VArray2_VByteReflect describes the VUnionDepth2_VArray2_VByte union type.
	__VUnionDepth2_VArray2_VByteReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth2_VArray2_VByte"`
		Type  VUnionDepth2_VArray2_VByte
		Union struct {
			F1 VUnionDepth2_VArray2_VByteF1
		}
	}
)

func (x VUnionDepth2_VArray2_VByteF1) Index() int                                       { return 0 }
func (x VUnionDepth2_VArray2_VByteF1) Interface() interface{}                           { return x.Value }
func (x VUnionDepth2_VArray2_VByteF1) Name() string                                     { return "F1" }
func (x VUnionDepth2_VArray2_VByteF1) __VDLReflect(__VUnionDepth2_VArray2_VByteReflect) {}

func (x VUnionDepth2_VArray2_VByteF1) VDLIsZero() bool {
	return x.Value == VArray2_VByte{}
}

func (x VUnionDepth2_VArray2_VByteF1) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_198); err != nil {
		return err
	}
	if err := enc.NextField("F1"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth2_VArray2_VByte(dec vdl.Decoder, x *VUnionDepth2_VArray2_VByte) error {
	if err := dec.StartValue(__VDLType_union_198); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F1":
		var field VUnionDepth2_VArray2_VByteF1
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth2_VList_VByte represents any single field of the VUnionDepth2_VList_VByte union type.
	VUnionDepth2_VList_VByte interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth2_VList_VByte union type.
		__VDLReflect(__VUnionDepth2_VList_VByteReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth2_VList_VByteF2 represents field F2 of the VUnionDepth2_VList_VByte union type.
	VUnionDepth2_VList_VByteF2 struct{ Value VList_VByte }
	// __VUnionDepth2_VList_VByteReflect describes the VUnionDepth2_VList_VByte union type.
	__VUnionDepth2_VList_VByteReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth2_VList_VByte"`
		Type  VUnionDepth2_VList_VByte
		Union struct {
			F2 VUnionDepth2_VList_VByteF2
		}
	}
)

func (x VUnionDepth2_VList_VByteF2) Index() int                                     { return 0 }
func (x VUnionDepth2_VList_VByteF2) Interface() interface{}                         { return x.Value }
func (x VUnionDepth2_VList_VByteF2) Name() string                                   { return "F2" }
func (x VUnionDepth2_VList_VByteF2) __VDLReflect(__VUnionDepth2_VList_VByteReflect) {}

func (x VUnionDepth2_VList_VByteF2) VDLIsZero() bool {
	return len(x.Value) == 0
}

func (x VUnionDepth2_VList_VByteF2) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_199); err != nil {
		return err
	}
	if err := enc.NextField("F2"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth2_VList_VByte(dec vdl.Decoder, x *VUnionDepth2_VList_VByte) error {
	if err := dec.StartValue(__VDLType_union_199); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F2":
		var field VUnionDepth2_VList_VByteF2
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth2_VList_OptVNamedError represents any single field of the VUnionDepth2_VList_OptVNamedError union type.
	VUnionDepth2_VList_OptVNamedError interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth2_VList_OptVNamedError union type.
		__VDLReflect(__VUnionDepth2_VList_OptVNamedErrorReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth2_VList_OptVNamedErrorF3 represents field F3 of the VUnionDepth2_VList_OptVNamedError union type.
	VUnionDepth2_VList_OptVNamedErrorF3 struct{ Value VList_OptVNamedError }
	// __VUnionDepth2_VList_OptVNamedErrorReflect describes the VUnionDepth2_VList_OptVNamedError union type.
	__VUnionDepth2_VList_OptVNamedErrorReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth2_VList_OptVNamedError"`
		Type  VUnionDepth2_VList_OptVNamedError
		Union struct {
			F3 VUnionDepth2_VList_OptVNamedErrorF3
		}
	}
)

func (x VUnionDepth2_VList_OptVNamedErrorF3) Index() int             { return 0 }
func (x VUnionDepth2_VList_OptVNamedErrorF3) Interface() interface{} { return x.Value }
func (x VUnionDepth2_VList_OptVNamedErrorF3) Name() string           { return "F3" }
func (x VUnionDepth2_VList_OptVNamedErrorF3) __VDLReflect(__VUnionDepth2_VList_OptVNamedErrorReflect) {
}

func (x VUnionDepth2_VList_OptVNamedErrorF3) VDLIsZero() bool {
	return len(x.Value) == 0
}

func (x VUnionDepth2_VList_OptVNamedErrorF3) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_200); err != nil {
		return err
	}
	if err := enc.NextField("F3"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth2_VList_OptVNamedError(dec vdl.Decoder, x *VUnionDepth2_VList_OptVNamedError) error {
	if err := dec.StartValue(__VDLType_union_200); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F3":
		var field VUnionDepth2_VList_OptVNamedErrorF3
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth2_VSet_VBool represents any single field of the VUnionDepth2_VSet_VBool union type.
	VUnionDepth2_VSet_VBool interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth2_VSet_VBool union type.
		__VDLReflect(__VUnionDepth2_VSet_VBoolReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth2_VSet_VBoolF4 represents field F4 of the VUnionDepth2_VSet_VBool union type.
	VUnionDepth2_VSet_VBoolF4 struct{ Value VSet_VBool }
	// __VUnionDepth2_VSet_VBoolReflect describes the VUnionDepth2_VSet_VBool union type.
	__VUnionDepth2_VSet_VBoolReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth2_VSet_VBool"`
		Type  VUnionDepth2_VSet_VBool
		Union struct {
			F4 VUnionDepth2_VSet_VBoolF4
		}
	}
)

func (x VUnionDepth2_VSet_VBoolF4) Index() int                                    { return 0 }
func (x VUnionDepth2_VSet_VBoolF4) Interface() interface{}                        { return x.Value }
func (x VUnionDepth2_VSet_VBoolF4) Name() string                                  { return "F4" }
func (x VUnionDepth2_VSet_VBoolF4) __VDLReflect(__VUnionDepth2_VSet_VBoolReflect) {}

func (x VUnionDepth2_VSet_VBoolF4) VDLIsZero() bool {
	return len(x.Value) == 0
}

func (x VUnionDepth2_VSet_VBoolF4) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_201); err != nil {
		return err
	}
	if err := enc.NextField("F4"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth2_VSet_VBool(dec vdl.Decoder, x *VUnionDepth2_VSet_VBool) error {
	if err := dec.StartValue(__VDLType_union_201); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F4":
		var field VUnionDepth2_VSet_VBoolF4
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth2_VSet_VNamedError represents any single field of the VUnionDepth2_VSet_VNamedError union type.
	VUnionDepth2_VSet_VNamedError interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth2_VSet_VNamedError union type.
		__VDLReflect(__VUnionDepth2_VSet_VNamedErrorReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth2_VSet_VNamedErrorF5 represents field F5 of the VUnionDepth2_VSet_VNamedError union type.
	VUnionDepth2_VSet_VNamedErrorF5 struct{ Value VSet_VNamedError }
	// __VUnionDepth2_VSet_VNamedErrorReflect describes the VUnionDepth2_VSet_VNamedError union type.
	__VUnionDepth2_VSet_VNamedErrorReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth2_VSet_VNamedError"`
		Type  VUnionDepth2_VSet_VNamedError
		Union struct {
			F5 VUnionDepth2_VSet_VNamedErrorF5
		}
	}
)

func (x VUnionDepth2_VSet_VNamedErrorF5) Index() int                                          { return 0 }
func (x VUnionDepth2_VSet_VNamedErrorF5) Interface() interface{}                              { return x.Value }
func (x VUnionDepth2_VSet_VNamedErrorF5) Name() string                                        { return "F5" }
func (x VUnionDepth2_VSet_VNamedErrorF5) __VDLReflect(__VUnionDepth2_VSet_VNamedErrorReflect) {}

func (x VUnionDepth2_VSet_VNamedErrorF5) VDLIsZero() bool {
	return len(x.Value) == 0
}

func (x VUnionDepth2_VSet_VNamedErrorF5) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_202); err != nil {
		return err
	}
	if err := enc.NextField("F5"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth2_VSet_VNamedError(dec vdl.Decoder, x *VUnionDepth2_VSet_VNamedError) error {
	if err := dec.StartValue(__VDLType_union_202); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F5":
		var field VUnionDepth2_VSet_VNamedErrorF5
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth2_Map_VBool_VBool represents any single field of the VUnionDepth2_Map_VBool_VBool union type.
	VUnionDepth2_Map_VBool_VBool interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth2_Map_VBool_VBool union type.
		__VDLReflect(__VUnionDepth2_Map_VBool_VBoolReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth2_Map_VBool_VBoolF6 represents field F6 of the VUnionDepth2_Map_VBool_VBool union type.
	VUnionDepth2_Map_VBool_VBoolF6 struct{ Value map[VBool]VBool }
	// __VUnionDepth2_Map_VBool_VBoolReflect describes the VUnionDepth2_Map_VBool_VBool union type.
	__VUnionDepth2_Map_VBool_VBoolReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth2_Map_VBool_VBool"`
		Type  VUnionDepth2_Map_VBool_VBool
		Union struct {
			F6 VUnionDepth2_Map_VBool_VBoolF6
		}
	}
)

func (x VUnionDepth2_Map_VBool_VBoolF6) Index() int                                         { return 0 }
func (x VUnionDepth2_Map_VBool_VBoolF6) Interface() interface{}                             { return x.Value }
func (x VUnionDepth2_Map_VBool_VBoolF6) Name() string                                       { return "F6" }
func (x VUnionDepth2_Map_VBool_VBoolF6) __VDLReflect(__VUnionDepth2_Map_VBool_VBoolReflect) {}

func (x VUnionDepth2_Map_VBool_VBoolF6) VDLIsZero() bool {
	return len(x.Value) == 0
}

func (x VUnionDepth2_Map_VBool_VBoolF6) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_203); err != nil {
		return err
	}
	if err := enc.NextField("F6"); err != nil {
		return err
	}
	if err := __VDLWriteAnon_map_8(enc, x.Value); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth2_Map_VBool_VBool(dec vdl.Decoder, x *VUnionDepth2_Map_VBool_VBool) error {
	if err := dec.StartValue(__VDLType_union_203); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F6":
		var field VUnionDepth2_Map_VBool_VBoolF6
		if err := __VDLReadAnon_map_8(dec, &field.Value); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth2_VMap_VBool_VBool represents any single field of the VUnionDepth2_VMap_VBool_VBool union type.
	VUnionDepth2_VMap_VBool_VBool interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth2_VMap_VBool_VBool union type.
		__VDLReflect(__VUnionDepth2_VMap_VBool_VBoolReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth2_VMap_VBool_VBoolF7 represents field F7 of the VUnionDepth2_VMap_VBool_VBool union type.
	VUnionDepth2_VMap_VBool_VBoolF7 struct{ Value VMap_VBool_VBool }
	// __VUnionDepth2_VMap_VBool_VBoolReflect describes the VUnionDepth2_VMap_VBool_VBool union type.
	__VUnionDepth2_VMap_VBool_VBoolReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth2_VMap_VBool_VBool"`
		Type  VUnionDepth2_VMap_VBool_VBool
		Union struct {
			F7 VUnionDepth2_VMap_VBool_VBoolF7
		}
	}
)

func (x VUnionDepth2_VMap_VBool_VBoolF7) Index() int                                          { return 0 }
func (x VUnionDepth2_VMap_VBool_VBoolF7) Interface() interface{}                              { return x.Value }
func (x VUnionDepth2_VMap_VBool_VBoolF7) Name() string                                        { return "F7" }
func (x VUnionDepth2_VMap_VBool_VBoolF7) __VDLReflect(__VUnionDepth2_VMap_VBool_VBoolReflect) {}

func (x VUnionDepth2_VMap_VBool_VBoolF7) VDLIsZero() bool {
	return len(x.Value) == 0
}

func (x VUnionDepth2_VMap_VBool_VBoolF7) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_204); err != nil {
		return err
	}
	if err := enc.NextField("F7"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth2_VMap_VBool_VBool(dec vdl.Decoder, x *VUnionDepth2_VMap_VBool_VBool) error {
	if err := dec.StartValue(__VDLType_union_204); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F7":
		var field VUnionDepth2_VMap_VBool_VBoolF7
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth2_VStructDepth1_All represents any single field of the VUnionDepth2_VStructDepth1_All union type.
	VUnionDepth2_VStructDepth1_All interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth2_VStructDepth1_All union type.
		__VDLReflect(__VUnionDepth2_VStructDepth1_AllReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth2_VStructDepth1_AllF8 represents field F8 of the VUnionDepth2_VStructDepth1_All union type.
	VUnionDepth2_VStructDepth1_AllF8 struct{ Value VStructDepth1_All }
	// __VUnionDepth2_VStructDepth1_AllReflect describes the VUnionDepth2_VStructDepth1_All union type.
	__VUnionDepth2_VStructDepth1_AllReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth2_VStructDepth1_All"`
		Type  VUnionDepth2_VStructDepth1_All
		Union struct {
			F8 VUnionDepth2_VStructDepth1_AllF8
		}
	}
)

func (x VUnionDepth2_VStructDepth1_AllF8) Index() int                                           { return 0 }
func (x VUnionDepth2_VStructDepth1_AllF8) Interface() interface{}                               { return x.Value }
func (x VUnionDepth2_VStructDepth1_AllF8) Name() string                                         { return "F8" }
func (x VUnionDepth2_VStructDepth1_AllF8) __VDLReflect(__VUnionDepth2_VStructDepth1_AllReflect) {}

func (x VUnionDepth2_VStructDepth1_AllF8) VDLIsZero() bool {
	return x.Value.VDLIsZero()
}

func (x VUnionDepth2_VStructDepth1_AllF8) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_205); err != nil {
		return err
	}
	if err := enc.NextField("F8"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth2_VStructDepth1_All(dec vdl.Decoder, x *VUnionDepth2_VStructDepth1_All) error {
	if err := dec.StartValue(__VDLType_union_205); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F8":
		var field VUnionDepth2_VStructDepth1_AllF8
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth2_VStructDepth1_Int8 represents any single field of the VUnionDepth2_VStructDepth1_Int8 union type.
	VUnionDepth2_VStructDepth1_Int8 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth2_VStructDepth1_Int8 union type.
		__VDLReflect(__VUnionDepth2_VStructDepth1_Int8Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth2_VStructDepth1_Int8F9 represents field F9 of the VUnionDepth2_VStructDepth1_Int8 union type.
	VUnionDepth2_VStructDepth1_Int8F9 struct{ Value VStructDepth1_Int8 }
	// __VUnionDepth2_VStructDepth1_Int8Reflect describes the VUnionDepth2_VStructDepth1_Int8 union type.
	__VUnionDepth2_VStructDepth1_Int8Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth2_VStructDepth1_Int8"`
		Type  VUnionDepth2_VStructDepth1_Int8
		Union struct {
			F9 VUnionDepth2_VStructDepth1_Int8F9
		}
	}
)

func (x VUnionDepth2_VStructDepth1_Int8F9) Index() int                                            { return 0 }
func (x VUnionDepth2_VStructDepth1_Int8F9) Interface() interface{}                                { return x.Value }
func (x VUnionDepth2_VStructDepth1_Int8F9) Name() string                                          { return "F9" }
func (x VUnionDepth2_VStructDepth1_Int8F9) __VDLReflect(__VUnionDepth2_VStructDepth1_Int8Reflect) {}

func (x VUnionDepth2_VStructDepth1_Int8F9) VDLIsZero() bool {
	return x.Value == VStructDepth1_Int8{}
}

func (x VUnionDepth2_VStructDepth1_Int8F9) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_206); err != nil {
		return err
	}
	if err := enc.NextField("F9"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth2_VStructDepth1_Int8(dec vdl.Decoder, x *VUnionDepth2_VStructDepth1_Int8) error {
	if err := dec.StartValue(__VDLType_union_206); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F9":
		var field VUnionDepth2_VStructDepth1_Int8F9
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth2_VUnionDepth1_All represents any single field of the VUnionDepth2_VUnionDepth1_All union type.
	VUnionDepth2_VUnionDepth1_All interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth2_VUnionDepth1_All union type.
		__VDLReflect(__VUnionDepth2_VUnionDepth1_AllReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth2_VUnionDepth1_AllF10 represents field F10 of the VUnionDepth2_VUnionDepth1_All union type.
	VUnionDepth2_VUnionDepth1_AllF10 struct{ Value VUnionDepth1_All }
	// __VUnionDepth2_VUnionDepth1_AllReflect describes the VUnionDepth2_VUnionDepth1_All union type.
	__VUnionDepth2_VUnionDepth1_AllReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth2_VUnionDepth1_All"`
		Type  VUnionDepth2_VUnionDepth1_All
		Union struct {
			F10 VUnionDepth2_VUnionDepth1_AllF10
		}
	}
)

func (x VUnionDepth2_VUnionDepth1_AllF10) Index() int                                          { return 0 }
func (x VUnionDepth2_VUnionDepth1_AllF10) Interface() interface{}                              { return x.Value }
func (x VUnionDepth2_VUnionDepth1_AllF10) Name() string                                        { return "F10" }
func (x VUnionDepth2_VUnionDepth1_AllF10) __VDLReflect(__VUnionDepth2_VUnionDepth1_AllReflect) {}

func (x VUnionDepth2_VUnionDepth1_AllF10) VDLIsZero() bool {
	return x.Value == nil || x.Value.VDLIsZero()
}

func (x VUnionDepth2_VUnionDepth1_AllF10) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_207); err != nil {
		return err
	}
	if err := enc.NextField("F10"); err != nil {
		return err
	}
	switch {
	case x.Value == nil:
		// Write the zero value of the union type.
		if err := vdl.ZeroValue(__VDLType_union_116).VDLWrite(enc); err != nil {
			return err
		}
	default:
		if err := x.Value.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth2_VUnionDepth1_All(dec vdl.Decoder, x *VUnionDepth2_VUnionDepth1_All) error {
	if err := dec.StartValue(__VDLType_union_207); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F10":
		var field VUnionDepth2_VUnionDepth1_AllF10
		if err := VDLReadVUnionDepth1_All(dec, &field.Value); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth2_VUnionDepth1_VUint32 represents any single field of the VUnionDepth2_VUnionDepth1_VUint32 union type.
	VUnionDepth2_VUnionDepth1_VUint32 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth2_VUnionDepth1_VUint32 union type.
		__VDLReflect(__VUnionDepth2_VUnionDepth1_VUint32Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth2_VUnionDepth1_VUint32F11 represents field F11 of the VUnionDepth2_VUnionDepth1_VUint32 union type.
	VUnionDepth2_VUnionDepth1_VUint32F11 struct{ Value VUnionDepth1_VUint32 }
	// __VUnionDepth2_VUnionDepth1_VUint32Reflect describes the VUnionDepth2_VUnionDepth1_VUint32 union type.
	__VUnionDepth2_VUnionDepth1_VUint32Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth2_VUnionDepth1_VUint32"`
		Type  VUnionDepth2_VUnionDepth1_VUint32
		Union struct {
			F11 VUnionDepth2_VUnionDepth1_VUint32F11
		}
	}
)

func (x VUnionDepth2_VUnionDepth1_VUint32F11) Index() int             { return 0 }
func (x VUnionDepth2_VUnionDepth1_VUint32F11) Interface() interface{} { return x.Value }
func (x VUnionDepth2_VUnionDepth1_VUint32F11) Name() string           { return "F11" }
func (x VUnionDepth2_VUnionDepth1_VUint32F11) __VDLReflect(__VUnionDepth2_VUnionDepth1_VUint32Reflect) {
}

func (x VUnionDepth2_VUnionDepth1_VUint32F11) VDLIsZero() bool {
	return x.Value == nil || x.Value.VDLIsZero()
}

func (x VUnionDepth2_VUnionDepth1_VUint32F11) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_208); err != nil {
		return err
	}
	if err := enc.NextField("F11"); err != nil {
		return err
	}
	switch {
	case x.Value == nil:
		// Write the zero value of the union type.
		if err := vdl.ZeroValue(__VDLType_union_133).VDLWrite(enc); err != nil {
			return err
		}
	default:
		if err := x.Value.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth2_VUnionDepth1_VUint32(dec vdl.Decoder, x *VUnionDepth2_VUnionDepth1_VUint32) error {
	if err := dec.StartValue(__VDLType_union_208); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F11":
		var field VUnionDepth2_VUnionDepth1_VUint32F11
		if err := VDLReadVUnionDepth1_VUint32(dec, &field.Value); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth2_OptVStructDepth1_VEnumBcd represents any single field of the VUnionDepth2_OptVStructDepth1_VEnumBcd union type.
	VUnionDepth2_OptVStructDepth1_VEnumBcd interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth2_OptVStructDepth1_VEnumBcd union type.
		__VDLReflect(__VUnionDepth2_OptVStructDepth1_VEnumBcdReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth2_OptVStructDepth1_VEnumBcdF12 represents field F12 of the VUnionDepth2_OptVStructDepth1_VEnumBcd union type.
	VUnionDepth2_OptVStructDepth1_VEnumBcdF12 struct{ Value *VStructDepth1_VEnumBcd }
	// __VUnionDepth2_OptVStructDepth1_VEnumBcdReflect describes the VUnionDepth2_OptVStructDepth1_VEnumBcd union type.
	__VUnionDepth2_OptVStructDepth1_VEnumBcdReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth2_OptVStructDepth1_VEnumBcd"`
		Type  VUnionDepth2_OptVStructDepth1_VEnumBcd
		Union struct {
			F12 VUnionDepth2_OptVStructDepth1_VEnumBcdF12
		}
	}
)

func (x VUnionDepth2_OptVStructDepth1_VEnumBcdF12) Index() int             { return 0 }
func (x VUnionDepth2_OptVStructDepth1_VEnumBcdF12) Interface() interface{} { return x.Value }
func (x VUnionDepth2_OptVStructDepth1_VEnumBcdF12) Name() string           { return "F12" }
func (x VUnionDepth2_OptVStructDepth1_VEnumBcdF12) __VDLReflect(__VUnionDepth2_OptVStructDepth1_VEnumBcdReflect) {
}

func (x VUnionDepth2_OptVStructDepth1_VEnumBcdF12) VDLIsZero() bool {
	return x.Value == nil
}

func (x VUnionDepth2_OptVStructDepth1_VEnumBcdF12) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_209); err != nil {
		return err
	}
	if err := enc.NextField("F12"); err != nil {
		return err
	}
	if x.Value == nil {
		if err := enc.NilValue(__VDLType_optional_169); err != nil {
			return err
		}
	} else {
		enc.SetNextStartValueIsOptional()

		if err := x.Value.VDLWrite(enc); err != nil {
			return err
		}

	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth2_OptVStructDepth1_VEnumBcd(dec vdl.Decoder, x *VUnionDepth2_OptVStructDepth1_VEnumBcd) error {
	if err := dec.StartValue(__VDLType_union_209); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F12":
		var field VUnionDepth2_OptVStructDepth1_VEnumBcdF12
		if err := dec.StartValue(__VDLType_optional_169); err != nil {
			return err
		}
		if dec.IsNil() {
			field.Value = nil
			if err := dec.FinishValue(); err != nil {
				return err
			}
		} else {
			field.Value = new(VStructDepth1_VEnumBcd)
			dec.IgnoreNextStartValue()
			if err := field.Value.VDLRead(dec); err != nil {
				return err
			}
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth2_OptVStructDepth1_VFloat32 represents any single field of the VUnionDepth2_OptVStructDepth1_VFloat32 union type.
	VUnionDepth2_OptVStructDepth1_VFloat32 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth2_OptVStructDepth1_VFloat32 union type.
		__VDLReflect(__VUnionDepth2_OptVStructDepth1_VFloat32Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth2_OptVStructDepth1_VFloat32F13 represents field F13 of the VUnionDepth2_OptVStructDepth1_VFloat32 union type.
	VUnionDepth2_OptVStructDepth1_VFloat32F13 struct{ Value *VStructDepth1_VFloat32 }
	// __VUnionDepth2_OptVStructDepth1_VFloat32Reflect describes the VUnionDepth2_OptVStructDepth1_VFloat32 union type.
	__VUnionDepth2_OptVStructDepth1_VFloat32Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth2_OptVStructDepth1_VFloat32"`
		Type  VUnionDepth2_OptVStructDepth1_VFloat32
		Union struct {
			F13 VUnionDepth2_OptVStructDepth1_VFloat32F13
		}
	}
)

func (x VUnionDepth2_OptVStructDepth1_VFloat32F13) Index() int             { return 0 }
func (x VUnionDepth2_OptVStructDepth1_VFloat32F13) Interface() interface{} { return x.Value }
func (x VUnionDepth2_OptVStructDepth1_VFloat32F13) Name() string           { return "F13" }
func (x VUnionDepth2_OptVStructDepth1_VFloat32F13) __VDLReflect(__VUnionDepth2_OptVStructDepth1_VFloat32Reflect) {
}

func (x VUnionDepth2_OptVStructDepth1_VFloat32F13) VDLIsZero() bool {
	return x.Value == nil
}

func (x VUnionDepth2_OptVStructDepth1_VFloat32F13) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_210); err != nil {
		return err
	}
	if err := enc.NextField("F13"); err != nil {
		return err
	}
	if x.Value == nil {
		if err := enc.NilValue(__VDLType_optional_159); err != nil {
			return err
		}
	} else {
		enc.SetNextStartValueIsOptional()

		if err := x.Value.VDLWrite(enc); err != nil {
			return err
		}

	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth2_OptVStructDepth1_VFloat32(dec vdl.Decoder, x *VUnionDepth2_OptVStructDepth1_VFloat32) error {
	if err := dec.StartValue(__VDLType_union_210); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F13":
		var field VUnionDepth2_OptVStructDepth1_VFloat32F13
		if err := dec.StartValue(__VDLType_optional_159); err != nil {
			return err
		}
		if dec.IsNil() {
			field.Value = nil
			if err := dec.FinishValue(); err != nil {
				return err
			}
		} else {
			field.Value = new(VStructDepth1_VFloat32)
			dec.IgnoreNextStartValue()
			if err := field.Value.VDLRead(dec); err != nil {
				return err
			}
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type VArray1_VArray1_VList_Byte [1]VArray1_VList_Byte

func (VArray1_VArray1_VList_Byte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray1_VArray1_VList_Byte"`
}) {
}

func (x VArray1_VArray1_VList_Byte) VDLIsZero() bool {
	for _, elem := range x {
		if !elem.VDLIsZero() {
			return false
		}
	}
	return true
}

func (x VArray1_VArray1_VList_Byte) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_211); err != nil {
		return err
	}
	for i := 0; i < 1; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray1_VArray1_VList_Byte) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_211); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := x[index].VDLRead(dec); err != nil {
			return err
		}
		index++
	}
}

type VArray2_List_VMap_VByte_VByte [2][]VMap_VByte_VByte

func (VArray2_List_VMap_VByte_VByte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray2_List_VMap_VByte_VByte"`
}) {
}

func (x VArray2_List_VMap_VByte_VByte) VDLIsZero() bool {
	for _, elem := range x {
		if len(elem) != 0 {
			return false
		}
	}
	return true
}

func (x VArray2_List_VMap_VByte_VByte) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_212); err != nil {
		return err
	}
	for i := 0; i < 2; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := __VDLWriteAnon_list_9(enc, x[i]); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func __VDLWriteAnon_list_9(enc vdl.Encoder, x []VMap_VByte_VByte) error {
	if err := enc.StartValue(__VDLType_list_213); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray2_List_VMap_VByte_VByte) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_212); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := __VDLReadAnon_list_9(dec, &x[index]); err != nil {
			return err
		}
		index++
	}
}

func __VDLReadAnon_list_9(dec vdl.Decoder, x *[]VMap_VByte_VByte) error {
	if err := dec.StartValue(__VDLType_list_213); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make([]VMap_VByte_VByte, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VMap_VByte_VByte
		if err := elem.VDLRead(dec); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VArray2_Set_VUnionDepth1_VNamedError [2]map[VUnionDepth1_VNamedError]struct{}

func (VArray2_Set_VUnionDepth1_VNamedError) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray2_Set_VUnionDepth1_VNamedError"`
}) {
}

func (x VArray2_Set_VUnionDepth1_VNamedError) VDLIsZero() bool {
	for _, elem := range x {
		if len(elem) != 0 {
			return false
		}
	}
	return true
}

func (x VArray2_Set_VUnionDepth1_VNamedError) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_214); err != nil {
		return err
	}
	for i := 0; i < 2; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := __VDLWriteAnon_set_10(enc, x[i]); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func __VDLWriteAnon_set_10(enc vdl.Encoder, x map[VUnionDepth1_VNamedError]struct{}) error {
	if err := enc.StartValue(__VDLType_set_215); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		switch {
		case key == nil:
			// Write the zero value of the union type.
			if err := vdl.ZeroValue(__VDLType_union_128).VDLWrite(enc); err != nil {
				return err
			}
		default:
			if err := key.VDLWrite(enc); err != nil {
				return err
			}
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray2_Set_VUnionDepth1_VNamedError) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_214); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := __VDLReadAnon_set_10(dec, &x[index]); err != nil {
			return err
		}
		index++
	}
}

func __VDLReadAnon_set_10(dec vdl.Decoder, x *map[VUnionDepth1_VNamedError]struct{}) error {
	if err := dec.StartValue(__VDLType_set_215); err != nil {
		return err
	}
	var tmpMap map[VUnionDepth1_VNamedError]struct{}
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(map[VUnionDepth1_VNamedError]struct{}, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VUnionDepth1_VNamedError
		{
			if err := VDLReadVUnionDepth1_VNamedError(dec, &key); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(map[VUnionDepth1_VNamedError]struct{})
		}
		tmpMap[key] = struct{}{}
	}
}

type VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64 [3]map[VUnionDepth1_Float64]VUnionDepth1_Float64

func (VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64"`
}) {
}

func (x VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64) VDLIsZero() bool {
	for _, elem := range x {
		if len(elem) != 0 {
			return false
		}
	}
	return true
}

func (x VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_216); err != nil {
		return err
	}
	for i := 0; i < 3; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := __VDLWriteAnon_map_11(enc, x[i]); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func __VDLWriteAnon_map_11(enc vdl.Encoder, x map[VUnionDepth1_Float64]VUnionDepth1_Float64) error {
	if err := enc.StartValue(__VDLType_map_217); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		switch {
		case key == nil:
			// Write the zero value of the union type.
			if err := vdl.ZeroValue(__VDLType_union_146).VDLWrite(enc); err != nil {
				return err
			}
		default:
			if err := key.VDLWrite(enc); err != nil {
				return err
			}
		}
		switch {
		case elem == nil:
			// Write the zero value of the union type.
			if err := vdl.ZeroValue(__VDLType_union_146).VDLWrite(enc); err != nil {
				return err
			}
		default:
			if err := elem.VDLWrite(enc); err != nil {
				return err
			}
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_216); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := __VDLReadAnon_map_11(dec, &x[index]); err != nil {
			return err
		}
		index++
	}
}

func __VDLReadAnon_map_11(dec vdl.Decoder, x *map[VUnionDepth1_Float64]VUnionDepth1_Float64) error {
	if err := dec.StartValue(__VDLType_map_217); err != nil {
		return err
	}
	var tmpMap map[VUnionDepth1_Float64]VUnionDepth1_Float64
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(map[VUnionDepth1_Float64]VUnionDepth1_Float64, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VUnionDepth1_Float64
		{
			if err := VDLReadVUnionDepth1_Float64(dec, &key); err != nil {
				return err
			}
		}
		var elem VUnionDepth1_Float64
		{
			if err := VDLReadVUnionDepth1_Float64(dec, &elem); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(map[VUnionDepth1_Float64]VUnionDepth1_Float64)
		}
		tmpMap[key] = elem
	}
}

type VArray2_VStructDepth2_All [2]VStructDepth2_All

func (VArray2_VStructDepth2_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray2_VStructDepth2_All"`
}) {
}

func (x VArray2_VStructDepth2_All) VDLIsZero() bool {
	for _, elem := range x {
		if !elem.VDLIsZero() {
			return false
		}
	}
	return true
}

func (x VArray2_VStructDepth2_All) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_218); err != nil {
		return err
	}
	for i := 0; i < 2; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray2_VStructDepth2_All) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_218); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := x[index].VDLRead(dec); err != nil {
			return err
		}
		index++
	}
}

type VArray2_VUnionDepth2_All [2]VUnionDepth2_All

func (VArray2_VUnionDepth2_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray2_VUnionDepth2_All"`
}) {
}

func (x VArray2_VUnionDepth2_All) VDLIsZero() bool {
	for _, elem := range x {
		if elem != nil && !elem.VDLIsZero() {
			return false
		}
	}
	return true
}

func (x VArray2_VUnionDepth2_All) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_219); err != nil {
		return err
	}
	for i := 0; i < 2; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		switch {
		case x[i] == nil:
			// Write the zero value of the union type.
			if err := vdl.ZeroValue(__VDLType_union_195).VDLWrite(enc); err != nil {
				return err
			}
		default:
			if err := x[i].VDLWrite(enc); err != nil {
				return err
			}
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray2_VUnionDepth2_All) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_219); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := VDLReadVUnionDepth2_All(dec, &x[index]); err != nil {
			return err
		}
		index++
	}
}

type VArray3_OptVStructDepth2_Set_Float64 [3]*VStructDepth2_Set_Float64

func (VArray3_OptVStructDepth2_Set_Float64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VArray3_OptVStructDepth2_Set_Float64"`
}) {
}

func (x VArray3_OptVStructDepth2_Set_Float64) VDLIsZero() bool {
	return x == VArray3_OptVStructDepth2_Set_Float64{}
}

func (x VArray3_OptVStructDepth2_Set_Float64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_220); err != nil {
		return err
	}
	for i := 0; i < 3; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if x[i] == nil {
			if err := enc.NilValue(__VDLType_optional_221); err != nil {
				return err
			}
		} else {
			enc.SetNextStartValueIsOptional()

			if err := x[i].VDLWrite(enc); err != nil {
				return err
			}

		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VArray3_OptVStructDepth2_Set_Float64) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_220); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := dec.StartValue(__VDLType_optional_221); err != nil {
			return err
		}
		if dec.IsNil() {
			x[index] = nil
			if err := dec.FinishValue(); err != nil {
				return err
			}
		} else {
			x[index] = new(VStructDepth2_Set_Float64)
			dec.IgnoreNextStartValue()
			if err := x[index].VDLRead(dec); err != nil {
				return err
			}
		}
		index++
	}
}

type VList_VArray3_VUnionDepth1_All []VArray3_VUnionDepth1_All

func (VList_VArray3_VUnionDepth1_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_VArray3_VUnionDepth1_All"`
}) {
}

func (x VList_VArray3_VUnionDepth1_All) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_VArray3_VUnionDepth1_All) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_222); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_VArray3_VUnionDepth1_All) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_222); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_VArray3_VUnionDepth1_All, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VArray3_VUnionDepth1_All
		if err := elem.VDLRead(dec); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_List_VMap_VByte_VByte [][]VMap_VByte_VByte

func (VList_List_VMap_VByte_VByte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_List_VMap_VByte_VByte"`
}) {
}

func (x VList_List_VMap_VByte_VByte) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_List_VMap_VByte_VByte) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_223); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := __VDLWriteAnon_list_9(enc, x[i]); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_List_VMap_VByte_VByte) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_223); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_List_VMap_VByte_VByte, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem []VMap_VByte_VByte
		if err := __VDLReadAnon_list_9(dec, &elem); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_VSet_VArray1_VStructEmpty []VSet_VArray1_VStructEmpty

func (VList_VSet_VArray1_VStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_VSet_VArray1_VStructEmpty"`
}) {
}

func (x VList_VSet_VArray1_VStructEmpty) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_VSet_VArray1_VStructEmpty) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_224); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_VSet_VArray1_VStructEmpty) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_224); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_VSet_VArray1_VStructEmpty, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VSet_VArray1_VStructEmpty
		if err := elem.VDLRead(dec); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_VMap_VArray3_VBool_VArray3_VBool []VMap_VArray3_VBool_VArray3_VBool

func (VList_VMap_VArray3_VBool_VArray3_VBool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_VMap_VArray3_VBool_VArray3_VBool"`
}) {
}

func (x VList_VMap_VArray3_VBool_VArray3_VBool) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_VMap_VArray3_VBool_VArray3_VBool) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_225); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_VMap_VArray3_VBool_VArray3_VBool) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_225); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_VMap_VArray3_VBool_VArray3_VBool, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VMap_VArray3_VBool_VArray3_VBool
		if err := elem.VDLRead(dec); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_VStructDepth2_All []VStructDepth2_All

func (VList_VStructDepth2_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_VStructDepth2_All"`
}) {
}

func (x VList_VStructDepth2_All) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_VStructDepth2_All) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_226); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_VStructDepth2_All) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_226); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_VStructDepth2_All, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VStructDepth2_All
		if err := elem.VDLRead(dec); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_VUnionDepth2_All []VUnionDepth2_All

func (VList_VUnionDepth2_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_VUnionDepth2_All"`
}) {
}

func (x VList_VUnionDepth2_All) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_VUnionDepth2_All) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_227); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		switch {
		case x[i] == nil:
			// Write the zero value of the union type.
			if err := vdl.ZeroValue(__VDLType_union_195).VDLWrite(enc); err != nil {
				return err
			}
		default:
			if err := x[i].VDLWrite(enc); err != nil {
				return err
			}
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_VUnionDepth2_All) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_227); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_VUnionDepth2_All, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VUnionDepth2_All
		if err := VDLReadVUnionDepth2_All(dec, &elem); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VList_OptVStructDepth2_Set_Float64 []*VStructDepth2_Set_Float64

func (VList_OptVStructDepth2_Set_Float64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VList_OptVStructDepth2_Set_Float64"`
}) {
}

func (x VList_OptVStructDepth2_Set_Float64) VDLIsZero() bool {
	return len(x) == 0
}

func (x VList_OptVStructDepth2_Set_Float64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_228); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if x[i] == nil {
			if err := enc.NilValue(__VDLType_optional_221); err != nil {
				return err
			}
		} else {
			enc.SetNextStartValueIsOptional()

			if err := x[i].VDLWrite(enc); err != nil {
				return err
			}

		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VList_OptVStructDepth2_Set_Float64) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_228); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VList_OptVStructDepth2_Set_Float64, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem *VStructDepth2_Set_Float64
		if err := dec.StartValue(__VDLType_optional_221); err != nil {
			return err
		}
		if dec.IsNil() {
			elem = nil
			if err := dec.FinishValue(); err != nil {
				return err
			}
		} else {
			elem = new(VStructDepth2_Set_Float64)
			dec.IgnoreNextStartValue()
			if err := elem.VDLRead(dec); err != nil {
				return err
			}
		}
		*x = append(*x, elem)
	}
}

type VSet_VArray1_VArray3_Int64 map[VArray1_VArray3_Int64]struct{}

func (VSet_VArray1_VArray3_Int64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VSet_VArray1_VArray3_Int64"`
}) {
}

func (x VSet_VArray1_VArray3_Int64) VDLIsZero() bool {
	return len(x) == 0
}

func (x VSet_VArray1_VArray3_Int64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_set_229); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VSet_VArray1_VArray3_Int64) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_set_229); err != nil {
		return err
	}
	var tmpMap VSet_VArray1_VArray3_Int64
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VSet_VArray1_VArray3_Int64, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VArray1_VArray3_Int64
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VSet_VArray1_VArray3_Int64)
		}
		tmpMap[key] = struct{}{}
	}
}

type VSet_VStructDepth2_VStructDepth1_Bool map[VStructDepth2_VStructDepth1_Bool]struct{}

func (VSet_VStructDepth2_VStructDepth1_Bool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VSet_VStructDepth2_VStructDepth1_Bool"`
}) {
}

func (x VSet_VStructDepth2_VStructDepth1_Bool) VDLIsZero() bool {
	return len(x) == 0
}

func (x VSet_VStructDepth2_VStructDepth1_Bool) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_set_230); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VSet_VStructDepth2_VStructDepth1_Bool) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_set_230); err != nil {
		return err
	}
	var tmpMap VSet_VStructDepth2_VStructDepth1_Bool
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VSet_VStructDepth2_VStructDepth1_Bool, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VStructDepth2_VStructDepth1_Bool
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VSet_VStructDepth2_VStructDepth1_Bool)
		}
		tmpMap[key] = struct{}{}
	}
}

type VSet_VUnionDepth2_VArray1_String map[VUnionDepth2_VArray1_String]struct{}

func (VSet_VUnionDepth2_VArray1_String) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VSet_VUnionDepth2_VArray1_String"`
}) {
}

func (x VSet_VUnionDepth2_VArray1_String) VDLIsZero() bool {
	return len(x) == 0
}

func (x VSet_VUnionDepth2_VArray1_String) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_set_231); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		switch {
		case key == nil:
			// Write the zero value of the union type.
			if err := vdl.ZeroValue(__VDLType_union_197).VDLWrite(enc); err != nil {
				return err
			}
		default:
			if err := key.VDLWrite(enc); err != nil {
				return err
			}
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VSet_VUnionDepth2_VArray1_String) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_set_231); err != nil {
		return err
	}
	var tmpMap VSet_VUnionDepth2_VArray1_String
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VSet_VUnionDepth2_VArray1_String, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VUnionDepth2_VArray1_String
		{
			if err := VDLReadVUnionDepth2_VArray1_String(dec, &key); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VSet_VUnionDepth2_VArray1_String)
		}
		tmpMap[key] = struct{}{}
	}
}

type VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64 map[VArray1_VArray3_Int64]VArray1_VArray3_Int64

func (VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64"`
}) {
}

func (x VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64) VDLIsZero() bool {
	return len(x) == 0
}

func (x VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_map_232); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
		if err := elem.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_map_232); err != nil {
		return err
	}
	var tmpMap VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VArray1_VArray3_Int64
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		var elem VArray1_VArray3_Int64
		{
			if err := elem.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64)
		}
		tmpMap[key] = elem
	}
}

type VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32 map[VStructDepth2_VArray1_Uint32]VStructDepth2_VArray1_Uint32

func (VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32"`
}) {
}

func (x VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32) VDLIsZero() bool {
	return len(x) == 0
}

func (x VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_map_233); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
		if err := elem.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_map_233); err != nil {
		return err
	}
	var tmpMap VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VStructDepth2_VArray1_Uint32
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		var elem VStructDepth2_VArray1_Uint32
		{
			if err := elem.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32)
		}
		tmpMap[key] = elem
	}
}

type VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte map[VUnionDepth2_VArray2_VByte]VUnionDepth2_VArray2_VByte

func (VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte"`
}) {
}

func (x VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte) VDLIsZero() bool {
	return len(x) == 0
}

func (x VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_map_234); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key, elem := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		switch {
		case key == nil:
			// Write the zero value of the union type.
			if err := vdl.ZeroValue(__VDLType_union_198).VDLWrite(enc); err != nil {
				return err
			}
		default:
			if err := key.VDLWrite(enc); err != nil {
				return err
			}
		}
		switch {
		case elem == nil:
			// Write the zero value of the union type.
			if err := vdl.ZeroValue(__VDLType_union_198).VDLWrite(enc); err != nil {
				return err
			}
		default:
			if err := elem.VDLWrite(enc); err != nil {
				return err
			}
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_map_234); err != nil {
		return err
	}
	var tmpMap VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VUnionDepth2_VArray2_VByte
		{
			if err := VDLReadVUnionDepth2_VArray2_VByte(dec, &key); err != nil {
				return err
			}
		}
		var elem VUnionDepth2_VArray2_VByte
		{
			if err := VDLReadVUnionDepth2_VArray2_VByte(dec, &elem); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte)
		}
		tmpMap[key] = elem
	}
}

type VStructDepth3_All struct {
	F0 VArray1_Set_VEnumBcd
	F1 []VUnionDepth1_All
	F2 VSet_VArray1_VStructEmpty
	F3 map[VUnionDepth1_Float64]VUnionDepth1_Float64
	F4 VStructDepth2_All
	F5 VUnionDepth2_All
	F6 *VStructDepth2_Set_Float64
}

func (VStructDepth3_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth3_All"`
}) {
}

func (x VStructDepth3_All) VDLIsZero() bool {
	if !x.F0.VDLIsZero() {
		return false
	}
	if len(x.F1) != 0 {
		return false
	}
	if len(x.F2) != 0 {
		return false
	}
	if len(x.F3) != 0 {
		return false
	}
	if !x.F4.VDLIsZero() {
		return false
	}
	if x.F5 != nil && !x.F5.VDLIsZero() {
		return false
	}
	if x.F6 != nil {
		return false
	}
	return true
}

func (x VStructDepth3_All) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_235); err != nil {
		return err
	}
	if !x.F0.VDLIsZero() {
		if err := enc.NextField("F0"); err != nil {
			return err
		}
		if err := x.F0.VDLWrite(enc); err != nil {
			return err
		}
	}
	if len(x.F1) != 0 {
		if err := enc.NextField("F1"); err != nil {
			return err
		}
		if err := __VDLWriteAnon_list_12(enc, x.F1); err != nil {
			return err
		}
	}
	if len(x.F2) != 0 {
		if err := enc.NextField("F2"); err != nil {
			return err
		}
		if err := x.F2.VDLWrite(enc); err != nil {
			return err
		}
	}
	if len(x.F3) != 0 {
		if err := enc.NextField("F3"); err != nil {
			return err
		}
		if err := __VDLWriteAnon_map_11(enc, x.F3); err != nil {
			return err
		}
	}
	if !x.F4.VDLIsZero() {
		if err := enc.NextField("F4"); err != nil {
			return err
		}
		if err := x.F4.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F5 != nil && !x.F5.VDLIsZero() {
		if err := enc.NextField("F5"); err != nil {
			return err
		}
		if err := x.F5.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.F6 != nil {
		if err := enc.NextField("F6"); err != nil {
			return err
		}
		enc.SetNextStartValueIsOptional()

		if err := x.F6.VDLWrite(enc); err != nil {
			return err
		}

	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func __VDLWriteAnon_list_12(enc vdl.Encoder, x []VUnionDepth1_All) error {
	if err := enc.StartValue(__VDLType_list_236); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		switch {
		case x[i] == nil:
			// Write the zero value of the union type.
			if err := vdl.ZeroValue(__VDLType_union_116).VDLWrite(enc); err != nil {
				return err
			}
		default:
			if err := x[i].VDLWrite(enc); err != nil {
				return err
			}
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth3_All) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth3_All{
		F4: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
		F5: VUnionDepth2_AllF0{},
	}
	if err := dec.StartValue(__VDLType_struct_235); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F0":
			if err := x.F0.VDLRead(dec); err != nil {
				return err
			}
		case "F1":
			if err := __VDLReadAnon_list_12(dec, &x.F1); err != nil {
				return err
			}
		case "F2":
			if err := x.F2.VDLRead(dec); err != nil {
				return err
			}
		case "F3":
			if err := __VDLReadAnon_map_11(dec, &x.F3); err != nil {
				return err
			}
		case "F4":
			if err := x.F4.VDLRead(dec); err != nil {
				return err
			}
		case "F5":
			if err := VDLReadVUnionDepth2_All(dec, &x.F5); err != nil {
				return err
			}
		case "F6":
			if err := dec.StartValue(__VDLType_optional_221); err != nil {
				return err
			}
			if dec.IsNil() {
				x.F6 = nil
				if err := dec.FinishValue(); err != nil {
					return err
				}
			} else {
				x.F6 = new(VStructDepth2_Set_Float64)
				dec.IgnoreNextStartValue()
				if err := x.F6.VDLRead(dec); err != nil {
					return err
				}
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

func __VDLReadAnon_list_12(dec vdl.Decoder, x *[]VUnionDepth1_All) error {
	if err := dec.StartValue(__VDLType_list_236); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make([]VUnionDepth1_All, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VUnionDepth1_All
		if err := VDLReadVUnionDepth1_All(dec, &elem); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VStructDepth3_VArray1_Set_VEnumBcd struct {
	F0 VArray1_Set_VEnumBcd
}

func (VStructDepth3_VArray1_Set_VEnumBcd) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth3_VArray1_Set_VEnumBcd"`
}) {
}

func (x VStructDepth3_VArray1_Set_VEnumBcd) VDLIsZero() bool {
	if !x.F0.VDLIsZero() {
		return false
	}
	return true
}

func (x VStructDepth3_VArray1_Set_VEnumBcd) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_237); err != nil {
		return err
	}
	if !x.F0.VDLIsZero() {
		if err := enc.NextField("F0"); err != nil {
			return err
		}
		if err := x.F0.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth3_VArray1_Set_VEnumBcd) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth3_VArray1_Set_VEnumBcd{}
	if err := dec.StartValue(__VDLType_struct_237); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F0":
			if err := x.F0.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth3_List_VUnionDepth1_All struct {
	F1 []VUnionDepth1_All
}

func (VStructDepth3_List_VUnionDepth1_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth3_List_VUnionDepth1_All"`
}) {
}

func (x VStructDepth3_List_VUnionDepth1_All) VDLIsZero() bool {
	if len(x.F1) != 0 {
		return false
	}
	return true
}

func (x VStructDepth3_List_VUnionDepth1_All) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_238); err != nil {
		return err
	}
	if len(x.F1) != 0 {
		if err := enc.NextField("F1"); err != nil {
			return err
		}
		if err := __VDLWriteAnon_list_12(enc, x.F1); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth3_List_VUnionDepth1_All) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth3_List_VUnionDepth1_All{}
	if err := dec.StartValue(__VDLType_struct_238); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F1":
			if err := __VDLReadAnon_list_12(dec, &x.F1); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth3_VSet_VArray1_VStructEmpty struct {
	F2 VSet_VArray1_VStructEmpty
}

func (VStructDepth3_VSet_VArray1_VStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth3_VSet_VArray1_VStructEmpty"`
}) {
}

func (x VStructDepth3_VSet_VArray1_VStructEmpty) VDLIsZero() bool {
	if len(x.F2) != 0 {
		return false
	}
	return true
}

func (x VStructDepth3_VSet_VArray1_VStructEmpty) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_239); err != nil {
		return err
	}
	if len(x.F2) != 0 {
		if err := enc.NextField("F2"); err != nil {
			return err
		}
		if err := x.F2.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth3_VSet_VArray1_VStructEmpty) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth3_VSet_VArray1_VStructEmpty{}
	if err := dec.StartValue(__VDLType_struct_239); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F2":
			if err := x.F2.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64 struct {
	F3 map[VUnionDepth1_Float64]VUnionDepth1_Float64
}

func (VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64"`
}) {
}

func (x VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64) VDLIsZero() bool {
	if len(x.F3) != 0 {
		return false
	}
	return true
}

func (x VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_240); err != nil {
		return err
	}
	if len(x.F3) != 0 {
		if err := enc.NextField("F3"); err != nil {
			return err
		}
		if err := __VDLWriteAnon_map_11(enc, x.F3); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{}
	if err := dec.StartValue(__VDLType_struct_240); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F3":
			if err := __VDLReadAnon_map_11(dec, &x.F3); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth3_VStructDepth2_All struct {
	F4 VStructDepth2_All
}

func (VStructDepth3_VStructDepth2_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth3_VStructDepth2_All"`
}) {
}

func (x VStructDepth3_VStructDepth2_All) VDLIsZero() bool {
	if !x.F4.VDLIsZero() {
		return false
	}
	return true
}

func (x VStructDepth3_VStructDepth2_All) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_241); err != nil {
		return err
	}
	if !x.F4.VDLIsZero() {
		if err := enc.NextField("F4"); err != nil {
			return err
		}
		if err := x.F4.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth3_VStructDepth2_All) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth3_VStructDepth2_All{
		F4: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	}
	if err := dec.StartValue(__VDLType_struct_241); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F4":
			if err := x.F4.VDLRead(dec); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth3_VUnionDepth2_All struct {
	F5 VUnionDepth2_All
}

func (VStructDepth3_VUnionDepth2_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth3_VUnionDepth2_All"`
}) {
}

func (x VStructDepth3_VUnionDepth2_All) VDLIsZero() bool {
	if x.F5 != nil && !x.F5.VDLIsZero() {
		return false
	}
	return true
}

func (x VStructDepth3_VUnionDepth2_All) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_242); err != nil {
		return err
	}
	if x.F5 != nil && !x.F5.VDLIsZero() {
		if err := enc.NextField("F5"); err != nil {
			return err
		}
		if err := x.F5.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth3_VUnionDepth2_All) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth3_VUnionDepth2_All{
		F5: VUnionDepth2_AllF0{},
	}
	if err := dec.StartValue(__VDLType_struct_242); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F5":
			if err := VDLReadVUnionDepth2_All(dec, &x.F5); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VStructDepth3_OptVStructDepth2_Set_Float64 struct {
	F6 *VStructDepth2_Set_Float64
}

func (VStructDepth3_OptVStructDepth2_Set_Float64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VStructDepth3_OptVStructDepth2_Set_Float64"`
}) {
}

func (x VStructDepth3_OptVStructDepth2_Set_Float64) VDLIsZero() bool {
	return x == VStructDepth3_OptVStructDepth2_Set_Float64{}
}

func (x VStructDepth3_OptVStructDepth2_Set_Float64) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_243); err != nil {
		return err
	}
	if x.F6 != nil {
		if err := enc.NextField("F6"); err != nil {
			return err
		}
		enc.SetNextStartValueIsOptional()

		if err := x.F6.VDLWrite(enc); err != nil {
			return err
		}

	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VStructDepth3_OptVStructDepth2_Set_Float64) VDLRead(dec vdl.Decoder) error {
	*x = VStructDepth3_OptVStructDepth2_Set_Float64{}
	if err := dec.StartValue(__VDLType_struct_243); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "F6":
			if err := dec.StartValue(__VDLType_optional_221); err != nil {
				return err
			}
			if dec.IsNil() {
				x.F6 = nil
				if err := dec.FinishValue(); err != nil {
					return err
				}
			} else {
				x.F6 = new(VStructDepth2_Set_Float64)
				dec.IgnoreNextStartValue()
				if err := x.F6.VDLRead(dec); err != nil {
					return err
				}
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type (
	// VUnionDepth3_All represents any single field of the VUnionDepth3_All union type.
	VUnionDepth3_All interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth3_All union type.
		__VDLReflect(__VUnionDepth3_AllReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth3_AllF0 represents field F0 of the VUnionDepth3_All union type.
	VUnionDepth3_AllF0 struct {
		Value VArray3_OptVStructDepth1_VFloat32
	}
	// VUnionDepth3_AllF1 represents field F1 of the VUnionDepth3_All union type.
	VUnionDepth3_AllF1 struct{ Value []VList_Error }
	// VUnionDepth3_AllF2 represents field F2 of the VUnionDepth3_All union type.
	VUnionDepth3_AllF2 struct {
		Value map[VStructDepth1_String]struct{}
	}
	// VUnionDepth3_AllF3 represents field F3 of the VUnionDepth3_All union type.
	VUnionDepth3_AllF3 struct {
		Value VMap_VStructDepth1_VBool_VStructDepth1_VBool
	}
	// VUnionDepth3_AllF4 represents field F4 of the VUnionDepth3_All union type.
	VUnionDepth3_AllF4 struct{ Value VStructDepth2_All }
	// VUnionDepth3_AllF5 represents field F5 of the VUnionDepth3_All union type.
	VUnionDepth3_AllF5 struct{ Value VUnionDepth2_All }
	// VUnionDepth3_AllF6 represents field F6 of the VUnionDepth3_All union type.
	VUnionDepth3_AllF6 struct{ Value *VStructDepth2_Set_Float64 }
	// __VUnionDepth3_AllReflect describes the VUnionDepth3_All union type.
	__VUnionDepth3_AllReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth3_All"`
		Type  VUnionDepth3_All
		Union struct {
			F0 VUnionDepth3_AllF0
			F1 VUnionDepth3_AllF1
			F2 VUnionDepth3_AllF2
			F3 VUnionDepth3_AllF3
			F4 VUnionDepth3_AllF4
			F5 VUnionDepth3_AllF5
			F6 VUnionDepth3_AllF6
		}
	}
)

func (x VUnionDepth3_AllF0) Index() int                             { return 0 }
func (x VUnionDepth3_AllF0) Interface() interface{}                 { return x.Value }
func (x VUnionDepth3_AllF0) Name() string                           { return "F0" }
func (x VUnionDepth3_AllF0) __VDLReflect(__VUnionDepth3_AllReflect) {}

func (x VUnionDepth3_AllF1) Index() int                             { return 1 }
func (x VUnionDepth3_AllF1) Interface() interface{}                 { return x.Value }
func (x VUnionDepth3_AllF1) Name() string                           { return "F1" }
func (x VUnionDepth3_AllF1) __VDLReflect(__VUnionDepth3_AllReflect) {}

func (x VUnionDepth3_AllF2) Index() int                             { return 2 }
func (x VUnionDepth3_AllF2) Interface() interface{}                 { return x.Value }
func (x VUnionDepth3_AllF2) Name() string                           { return "F2" }
func (x VUnionDepth3_AllF2) __VDLReflect(__VUnionDepth3_AllReflect) {}

func (x VUnionDepth3_AllF3) Index() int                             { return 3 }
func (x VUnionDepth3_AllF3) Interface() interface{}                 { return x.Value }
func (x VUnionDepth3_AllF3) Name() string                           { return "F3" }
func (x VUnionDepth3_AllF3) __VDLReflect(__VUnionDepth3_AllReflect) {}

func (x VUnionDepth3_AllF4) Index() int                             { return 4 }
func (x VUnionDepth3_AllF4) Interface() interface{}                 { return x.Value }
func (x VUnionDepth3_AllF4) Name() string                           { return "F4" }
func (x VUnionDepth3_AllF4) __VDLReflect(__VUnionDepth3_AllReflect) {}

func (x VUnionDepth3_AllF5) Index() int                             { return 5 }
func (x VUnionDepth3_AllF5) Interface() interface{}                 { return x.Value }
func (x VUnionDepth3_AllF5) Name() string                           { return "F5" }
func (x VUnionDepth3_AllF5) __VDLReflect(__VUnionDepth3_AllReflect) {}

func (x VUnionDepth3_AllF6) Index() int                             { return 6 }
func (x VUnionDepth3_AllF6) Interface() interface{}                 { return x.Value }
func (x VUnionDepth3_AllF6) Name() string                           { return "F6" }
func (x VUnionDepth3_AllF6) __VDLReflect(__VUnionDepth3_AllReflect) {}

func (x VUnionDepth3_AllF0) VDLIsZero() bool {
	return x.Value == VArray3_OptVStructDepth1_VFloat32{}
}

func (x VUnionDepth3_AllF1) VDLIsZero() bool {
	return false
}

func (x VUnionDepth3_AllF2) VDLIsZero() bool {
	return false
}

func (x VUnionDepth3_AllF3) VDLIsZero() bool {
	return false
}

func (x VUnionDepth3_AllF4) VDLIsZero() bool {
	return false
}

func (x VUnionDepth3_AllF5) VDLIsZero() bool {
	return false
}

func (x VUnionDepth3_AllF6) VDLIsZero() bool {
	return false
}

func (x VUnionDepth3_AllF0) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_244); err != nil {
		return err
	}
	if err := enc.NextField("F0"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth3_AllF1) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_244); err != nil {
		return err
	}
	if err := enc.NextField("F1"); err != nil {
		return err
	}
	if err := __VDLWriteAnon_list_13(enc, x.Value); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth3_AllF2) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_244); err != nil {
		return err
	}
	if err := enc.NextField("F2"); err != nil {
		return err
	}
	if err := __VDLWriteAnon_set_14(enc, x.Value); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth3_AllF3) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_244); err != nil {
		return err
	}
	if err := enc.NextField("F3"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth3_AllF4) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_244); err != nil {
		return err
	}
	if err := enc.NextField("F4"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth3_AllF5) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_244); err != nil {
		return err
	}
	if err := enc.NextField("F5"); err != nil {
		return err
	}
	switch {
	case x.Value == nil:
		// Write the zero value of the union type.
		if err := vdl.ZeroValue(__VDLType_union_195).VDLWrite(enc); err != nil {
			return err
		}
	default:
		if err := x.Value.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x VUnionDepth3_AllF6) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_244); err != nil {
		return err
	}
	if err := enc.NextField("F6"); err != nil {
		return err
	}
	if x.Value == nil {
		if err := enc.NilValue(__VDLType_optional_221); err != nil {
			return err
		}
	} else {
		enc.SetNextStartValueIsOptional()

		if err := x.Value.VDLWrite(enc); err != nil {
			return err
		}

	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func __VDLWriteAnon_list_13(enc vdl.Encoder, x []VList_Error) error {
	if err := enc.StartValue(__VDLType_list_245); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := x[i].VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func __VDLWriteAnon_set_14(enc vdl.Encoder, x map[VStructDepth1_String]struct{}) error {
	if err := enc.StartValue(__VDLType_set_246); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for key := range x {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := key.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth3_All(dec vdl.Decoder, x *VUnionDepth3_All) error {
	if err := dec.StartValue(__VDLType_union_244); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F0":
		var field VUnionDepth3_AllF0
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F1":
		var field VUnionDepth3_AllF1
		if err := __VDLReadAnon_list_13(dec, &field.Value); err != nil {
			return err
		}
		*x = field
	case "F2":
		var field VUnionDepth3_AllF2
		if err := __VDLReadAnon_set_14(dec, &field.Value); err != nil {
			return err
		}
		*x = field
	case "F3":
		var field VUnionDepth3_AllF3
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F4":
		var field VUnionDepth3_AllF4
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "F5":
		var field VUnionDepth3_AllF5
		if err := VDLReadVUnionDepth2_All(dec, &field.Value); err != nil {
			return err
		}
		*x = field
	case "F6":
		var field VUnionDepth3_AllF6
		if err := dec.StartValue(__VDLType_optional_221); err != nil {
			return err
		}
		if dec.IsNil() {
			field.Value = nil
			if err := dec.FinishValue(); err != nil {
				return err
			}
		} else {
			field.Value = new(VStructDepth2_Set_Float64)
			dec.IgnoreNextStartValue()
			if err := field.Value.VDLRead(dec); err != nil {
				return err
			}
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

func __VDLReadAnon_list_13(dec vdl.Decoder, x *[]VList_Error) error {
	if err := dec.StartValue(__VDLType_list_245); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make([]VList_Error, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem VList_Error
		if err := elem.VDLRead(dec); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

func __VDLReadAnon_set_14(dec vdl.Decoder, x *map[VStructDepth1_String]struct{}) error {
	if err := dec.StartValue(__VDLType_set_246); err != nil {
		return err
	}
	var tmpMap map[VStructDepth1_String]struct{}
	if len := dec.LenHint(); len > 0 {
		tmpMap = make(map[VStructDepth1_String]struct{}, len)
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			*x = tmpMap
			return dec.FinishValue()
		}
		var key VStructDepth1_String
		{
			if err := key.VDLRead(dec); err != nil {
				return err
			}
		}
		if tmpMap == nil {
			tmpMap = make(map[VStructDepth1_String]struct{})
		}
		tmpMap[key] = struct{}{}
	}
}

type (
	// VUnionDepth3_VArray3_OptVStructDepth1_VFloat32 represents any single field of the VUnionDepth3_VArray3_OptVStructDepth1_VFloat32 union type.
	VUnionDepth3_VArray3_OptVStructDepth1_VFloat32 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth3_VArray3_OptVStructDepth1_VFloat32 union type.
		__VDLReflect(__VUnionDepth3_VArray3_OptVStructDepth1_VFloat32Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth3_VArray3_OptVStructDepth1_VFloat32F0 represents field F0 of the VUnionDepth3_VArray3_OptVStructDepth1_VFloat32 union type.
	VUnionDepth3_VArray3_OptVStructDepth1_VFloat32F0 struct {
		Value VArray3_OptVStructDepth1_VFloat32
	}
	// __VUnionDepth3_VArray3_OptVStructDepth1_VFloat32Reflect describes the VUnionDepth3_VArray3_OptVStructDepth1_VFloat32 union type.
	__VUnionDepth3_VArray3_OptVStructDepth1_VFloat32Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth3_VArray3_OptVStructDepth1_VFloat32"`
		Type  VUnionDepth3_VArray3_OptVStructDepth1_VFloat32
		Union struct {
			F0 VUnionDepth3_VArray3_OptVStructDepth1_VFloat32F0
		}
	}
)

func (x VUnionDepth3_VArray3_OptVStructDepth1_VFloat32F0) Index() int             { return 0 }
func (x VUnionDepth3_VArray3_OptVStructDepth1_VFloat32F0) Interface() interface{} { return x.Value }
func (x VUnionDepth3_VArray3_OptVStructDepth1_VFloat32F0) Name() string           { return "F0" }
func (x VUnionDepth3_VArray3_OptVStructDepth1_VFloat32F0) __VDLReflect(__VUnionDepth3_VArray3_OptVStructDepth1_VFloat32Reflect) {
}

func (x VUnionDepth3_VArray3_OptVStructDepth1_VFloat32F0) VDLIsZero() bool {
	return x.Value == VArray3_OptVStructDepth1_VFloat32{}
}

func (x VUnionDepth3_VArray3_OptVStructDepth1_VFloat32F0) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_247); err != nil {
		return err
	}
	if err := enc.NextField("F0"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth3_VArray3_OptVStructDepth1_VFloat32(dec vdl.Decoder, x *VUnionDepth3_VArray3_OptVStructDepth1_VFloat32) error {
	if err := dec.StartValue(__VDLType_union_247); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F0":
		var field VUnionDepth3_VArray3_OptVStructDepth1_VFloat32F0
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth3_List_VList_Error represents any single field of the VUnionDepth3_List_VList_Error union type.
	VUnionDepth3_List_VList_Error interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth3_List_VList_Error union type.
		__VDLReflect(__VUnionDepth3_List_VList_ErrorReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth3_List_VList_ErrorF1 represents field F1 of the VUnionDepth3_List_VList_Error union type.
	VUnionDepth3_List_VList_ErrorF1 struct{ Value []VList_Error }
	// __VUnionDepth3_List_VList_ErrorReflect describes the VUnionDepth3_List_VList_Error union type.
	__VUnionDepth3_List_VList_ErrorReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth3_List_VList_Error"`
		Type  VUnionDepth3_List_VList_Error
		Union struct {
			F1 VUnionDepth3_List_VList_ErrorF1
		}
	}
)

func (x VUnionDepth3_List_VList_ErrorF1) Index() int                                          { return 0 }
func (x VUnionDepth3_List_VList_ErrorF1) Interface() interface{}                              { return x.Value }
func (x VUnionDepth3_List_VList_ErrorF1) Name() string                                        { return "F1" }
func (x VUnionDepth3_List_VList_ErrorF1) __VDLReflect(__VUnionDepth3_List_VList_ErrorReflect) {}

func (x VUnionDepth3_List_VList_ErrorF1) VDLIsZero() bool {
	return len(x.Value) == 0
}

func (x VUnionDepth3_List_VList_ErrorF1) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_248); err != nil {
		return err
	}
	if err := enc.NextField("F1"); err != nil {
		return err
	}
	if err := __VDLWriteAnon_list_13(enc, x.Value); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth3_List_VList_Error(dec vdl.Decoder, x *VUnionDepth3_List_VList_Error) error {
	if err := dec.StartValue(__VDLType_union_248); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F1":
		var field VUnionDepth3_List_VList_ErrorF1
		if err := __VDLReadAnon_list_13(dec, &field.Value); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth3_Set_VStructDepth1_String represents any single field of the VUnionDepth3_Set_VStructDepth1_String union type.
	VUnionDepth3_Set_VStructDepth1_String interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth3_Set_VStructDepth1_String union type.
		__VDLReflect(__VUnionDepth3_Set_VStructDepth1_StringReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth3_Set_VStructDepth1_StringF2 represents field F2 of the VUnionDepth3_Set_VStructDepth1_String union type.
	VUnionDepth3_Set_VStructDepth1_StringF2 struct {
		Value map[VStructDepth1_String]struct{}
	}
	// __VUnionDepth3_Set_VStructDepth1_StringReflect describes the VUnionDepth3_Set_VStructDepth1_String union type.
	__VUnionDepth3_Set_VStructDepth1_StringReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth3_Set_VStructDepth1_String"`
		Type  VUnionDepth3_Set_VStructDepth1_String
		Union struct {
			F2 VUnionDepth3_Set_VStructDepth1_StringF2
		}
	}
)

func (x VUnionDepth3_Set_VStructDepth1_StringF2) Index() int             { return 0 }
func (x VUnionDepth3_Set_VStructDepth1_StringF2) Interface() interface{} { return x.Value }
func (x VUnionDepth3_Set_VStructDepth1_StringF2) Name() string           { return "F2" }
func (x VUnionDepth3_Set_VStructDepth1_StringF2) __VDLReflect(__VUnionDepth3_Set_VStructDepth1_StringReflect) {
}

func (x VUnionDepth3_Set_VStructDepth1_StringF2) VDLIsZero() bool {
	return len(x.Value) == 0
}

func (x VUnionDepth3_Set_VStructDepth1_StringF2) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_249); err != nil {
		return err
	}
	if err := enc.NextField("F2"); err != nil {
		return err
	}
	if err := __VDLWriteAnon_set_14(enc, x.Value); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth3_Set_VStructDepth1_String(dec vdl.Decoder, x *VUnionDepth3_Set_VStructDepth1_String) error {
	if err := dec.StartValue(__VDLType_union_249); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F2":
		var field VUnionDepth3_Set_VStructDepth1_StringF2
		if err := __VDLReadAnon_set_14(dec, &field.Value); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool represents any single field of the VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool union type.
	VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool union type.
		__VDLReflect(__VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBoolReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBoolF3 represents field F3 of the VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool union type.
	VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBoolF3 struct {
		Value VMap_VStructDepth1_VBool_VStructDepth1_VBool
	}
	// __VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBoolReflect describes the VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool union type.
	__VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBoolReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool"`
		Type  VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool
		Union struct {
			F3 VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBoolF3
		}
	}
)

func (x VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBoolF3) Index() int { return 0 }
func (x VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBoolF3) Interface() interface{} {
	return x.Value
}
func (x VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBoolF3) Name() string { return "F3" }
func (x VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBoolF3) __VDLReflect(__VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBoolReflect) {
}

func (x VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBoolF3) VDLIsZero() bool {
	return len(x.Value) == 0
}

func (x VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBoolF3) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_250); err != nil {
		return err
	}
	if err := enc.NextField("F3"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool(dec vdl.Decoder, x *VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool) error {
	if err := dec.StartValue(__VDLType_union_250); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F3":
		var field VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBoolF3
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth3_VStructDepth2_All represents any single field of the VUnionDepth3_VStructDepth2_All union type.
	VUnionDepth3_VStructDepth2_All interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth3_VStructDepth2_All union type.
		__VDLReflect(__VUnionDepth3_VStructDepth2_AllReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth3_VStructDepth2_AllF4 represents field F4 of the VUnionDepth3_VStructDepth2_All union type.
	VUnionDepth3_VStructDepth2_AllF4 struct{ Value VStructDepth2_All }
	// __VUnionDepth3_VStructDepth2_AllReflect describes the VUnionDepth3_VStructDepth2_All union type.
	__VUnionDepth3_VStructDepth2_AllReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth3_VStructDepth2_All"`
		Type  VUnionDepth3_VStructDepth2_All
		Union struct {
			F4 VUnionDepth3_VStructDepth2_AllF4
		}
	}
)

func (x VUnionDepth3_VStructDepth2_AllF4) Index() int                                           { return 0 }
func (x VUnionDepth3_VStructDepth2_AllF4) Interface() interface{}                               { return x.Value }
func (x VUnionDepth3_VStructDepth2_AllF4) Name() string                                         { return "F4" }
func (x VUnionDepth3_VStructDepth2_AllF4) __VDLReflect(__VUnionDepth3_VStructDepth2_AllReflect) {}

func (x VUnionDepth3_VStructDepth2_AllF4) VDLIsZero() bool {
	return x.Value.VDLIsZero()
}

func (x VUnionDepth3_VStructDepth2_AllF4) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_251); err != nil {
		return err
	}
	if err := enc.NextField("F4"); err != nil {
		return err
	}
	if err := x.Value.VDLWrite(enc); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth3_VStructDepth2_All(dec vdl.Decoder, x *VUnionDepth3_VStructDepth2_All) error {
	if err := dec.StartValue(__VDLType_union_251); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F4":
		var field VUnionDepth3_VStructDepth2_AllF4
		if err := field.Value.VDLRead(dec); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth3_VUnionDepth2_All represents any single field of the VUnionDepth3_VUnionDepth2_All union type.
	VUnionDepth3_VUnionDepth2_All interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth3_VUnionDepth2_All union type.
		__VDLReflect(__VUnionDepth3_VUnionDepth2_AllReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth3_VUnionDepth2_AllF5 represents field F5 of the VUnionDepth3_VUnionDepth2_All union type.
	VUnionDepth3_VUnionDepth2_AllF5 struct{ Value VUnionDepth2_All }
	// __VUnionDepth3_VUnionDepth2_AllReflect describes the VUnionDepth3_VUnionDepth2_All union type.
	__VUnionDepth3_VUnionDepth2_AllReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth3_VUnionDepth2_All"`
		Type  VUnionDepth3_VUnionDepth2_All
		Union struct {
			F5 VUnionDepth3_VUnionDepth2_AllF5
		}
	}
)

func (x VUnionDepth3_VUnionDepth2_AllF5) Index() int                                          { return 0 }
func (x VUnionDepth3_VUnionDepth2_AllF5) Interface() interface{}                              { return x.Value }
func (x VUnionDepth3_VUnionDepth2_AllF5) Name() string                                        { return "F5" }
func (x VUnionDepth3_VUnionDepth2_AllF5) __VDLReflect(__VUnionDepth3_VUnionDepth2_AllReflect) {}

func (x VUnionDepth3_VUnionDepth2_AllF5) VDLIsZero() bool {
	return x.Value == nil || x.Value.VDLIsZero()
}

func (x VUnionDepth3_VUnionDepth2_AllF5) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_252); err != nil {
		return err
	}
	if err := enc.NextField("F5"); err != nil {
		return err
	}
	switch {
	case x.Value == nil:
		// Write the zero value of the union type.
		if err := vdl.ZeroValue(__VDLType_union_195).VDLWrite(enc); err != nil {
			return err
		}
	default:
		if err := x.Value.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth3_VUnionDepth2_All(dec vdl.Decoder, x *VUnionDepth3_VUnionDepth2_All) error {
	if err := dec.StartValue(__VDLType_union_252); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F5":
		var field VUnionDepth3_VUnionDepth2_AllF5
		if err := VDLReadVUnionDepth2_All(dec, &field.Value); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VUnionDepth3_OptVStructDepth2_Set_Float64 represents any single field of the VUnionDepth3_OptVStructDepth2_Set_Float64 union type.
	VUnionDepth3_OptVStructDepth2_Set_Float64 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VUnionDepth3_OptVStructDepth2_Set_Float64 union type.
		__VDLReflect(__VUnionDepth3_OptVStructDepth2_Set_Float64Reflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VUnionDepth3_OptVStructDepth2_Set_Float64F6 represents field F6 of the VUnionDepth3_OptVStructDepth2_Set_Float64 union type.
	VUnionDepth3_OptVStructDepth2_Set_Float64F6 struct{ Value *VStructDepth2_Set_Float64 }
	// __VUnionDepth3_OptVStructDepth2_Set_Float64Reflect describes the VUnionDepth3_OptVStructDepth2_Set_Float64 union type.
	__VUnionDepth3_OptVStructDepth2_Set_Float64Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VUnionDepth3_OptVStructDepth2_Set_Float64"`
		Type  VUnionDepth3_OptVStructDepth2_Set_Float64
		Union struct {
			F6 VUnionDepth3_OptVStructDepth2_Set_Float64F6
		}
	}
)

func (x VUnionDepth3_OptVStructDepth2_Set_Float64F6) Index() int             { return 0 }
func (x VUnionDepth3_OptVStructDepth2_Set_Float64F6) Interface() interface{} { return x.Value }
func (x VUnionDepth3_OptVStructDepth2_Set_Float64F6) Name() string           { return "F6" }
func (x VUnionDepth3_OptVStructDepth2_Set_Float64F6) __VDLReflect(__VUnionDepth3_OptVStructDepth2_Set_Float64Reflect) {
}

func (x VUnionDepth3_OptVStructDepth2_Set_Float64F6) VDLIsZero() bool {
	return x.Value == nil
}

func (x VUnionDepth3_OptVStructDepth2_Set_Float64F6) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_253); err != nil {
		return err
	}
	if err := enc.NextField("F6"); err != nil {
		return err
	}
	if x.Value == nil {
		if err := enc.NilValue(__VDLType_optional_221); err != nil {
			return err
		}
	} else {
		enc.SetNextStartValueIsOptional()

		if err := x.Value.VDLWrite(enc); err != nil {
			return err
		}

	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVUnionDepth3_OptVStructDepth2_Set_Float64(dec vdl.Decoder, x *VUnionDepth3_OptVStructDepth2_Set_Float64) error {
	if err := dec.StartValue(__VDLType_union_253); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "F6":
		var field VUnionDepth3_OptVStructDepth2_Set_Float64F6
		if err := dec.StartValue(__VDLType_optional_221); err != nil {
			return err
		}
		if dec.IsNil() {
			field.Value = nil
			if err := dec.FinishValue(); err != nil {
				return err
			}
		} else {
			field.Value = new(VStructDepth2_Set_Float64)
			dec.IgnoreNextStartValue()
			if err := field.Value.VDLRead(dec); err != nil {
				return err
			}
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

// VSelfCycle tests self-cyclic types.
type VSelfCycle struct {
	Data int64
	Next *VSelfCycle
}

func (VSelfCycle) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VSelfCycle"`
}) {
}

func (x VSelfCycle) VDLIsZero() bool {
	return x == VSelfCycle{}
}

func (x VSelfCycle) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_254); err != nil {
		return err
	}
	if x.Data != 0 {
		if err := enc.NextField("Data"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Int64Type); err != nil {
			return err
		}
		if err := enc.EncodeInt(x.Data); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if x.Next != nil {
		if err := enc.NextField("Next"); err != nil {
			return err
		}
		enc.SetNextStartValueIsOptional()

		if err := x.Next.VDLWrite(enc); err != nil {
			return err
		}

	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VSelfCycle) VDLRead(dec vdl.Decoder) error {
	*x = VSelfCycle{}
	if err := dec.StartValue(__VDLType_struct_254); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "Data":
			if err := dec.StartValue(vdl.Int64Type); err != nil {
				return err
			}
			var err error
			if x.Data, err = dec.DecodeInt(64); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		case "Next":
			if err := dec.StartValue(__VDLType_optional_255); err != nil {
				return err
			}
			if dec.IsNil() {
				x.Next = nil
				if err := dec.FinishValue(); err != nil {
					return err
				}
			} else {
				x.Next = new(VSelfCycle)
				dec.IgnoreNextStartValue()
				if err := x.Next.VDLRead(dec); err != nil {
					return err
				}
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

// VMutualCycleB tests mutually cyclic types A and B.
type VMutualCycleB struct {
	Data int64
	A    *VMutualCycleA
}

func (VMutualCycleB) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VMutualCycleB"`
}) {
}

func (x VMutualCycleB) VDLIsZero() bool {
	return x == VMutualCycleB{}
}

func (x VMutualCycleB) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_256); err != nil {
		return err
	}
	if x.Data != 0 {
		if err := enc.NextField("Data"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Int64Type); err != nil {
			return err
		}
		if err := enc.EncodeInt(x.Data); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if x.A != nil {
		if err := enc.NextField("A"); err != nil {
			return err
		}
		enc.SetNextStartValueIsOptional()

		if err := x.A.VDLWrite(enc); err != nil {
			return err
		}

	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VMutualCycleB) VDLRead(dec vdl.Decoder) error {
	*x = VMutualCycleB{}
	if err := dec.StartValue(__VDLType_struct_256); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "Data":
			if err := dec.StartValue(vdl.Int64Type); err != nil {
				return err
			}
			var err error
			if x.Data, err = dec.DecodeInt(64); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		case "A":
			if err := dec.StartValue(__VDLType_optional_257); err != nil {
				return err
			}
			if dec.IsNil() {
				x.A = nil
				if err := dec.FinishValue(); err != nil {
					return err
				}
			} else {
				x.A = new(VMutualCycleA)
				dec.IgnoreNextStartValue()
				if err := x.A.VDLRead(dec); err != nil {
					return err
				}
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

// VMutualCycleA tests mutually cyclic types A and B.
type VMutualCycleA struct {
	Data int64
	B    *VMutualCycleB
}

func (VMutualCycleA) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VMutualCycleA"`
}) {
}

func (x VMutualCycleA) VDLIsZero() bool {
	return x == VMutualCycleA{}
}

func (x VMutualCycleA) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_258); err != nil {
		return err
	}
	if x.Data != 0 {
		if err := enc.NextField("Data"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.Int64Type); err != nil {
			return err
		}
		if err := enc.EncodeInt(x.Data); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if x.B != nil {
		if err := enc.NextField("B"); err != nil {
			return err
		}
		enc.SetNextStartValueIsOptional()

		if err := x.B.VDLWrite(enc); err != nil {
			return err
		}

	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VMutualCycleA) VDLRead(dec vdl.Decoder) error {
	*x = VMutualCycleA{}
	if err := dec.StartValue(__VDLType_struct_258); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "Data":
			if err := dec.StartValue(vdl.Int64Type); err != nil {
				return err
			}
			var err error
			if x.Data, err = dec.DecodeInt(64); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		case "B":
			if err := dec.StartValue(__VDLType_optional_259); err != nil {
				return err
			}
			if dec.IsNil() {
				x.B = nil
				if err := dec.FinishValue(); err != nil {
					return err
				}
			} else {
				x.B = new(VMutualCycleB)
				dec.IgnoreNextStartValue()
				if err := x.B.VDLRead(dec); err != nil {
					return err
				}
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VWireBoolNBool bool

func (VWireBoolNBool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VWireBoolNBool"`
}) {
}

func (x VWireBoolNBool) VDLIsZero() bool {
	return bool(!x)
}

func (x VWireBoolNBool) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_bool_260); err != nil {
		return err
	}
	if err := enc.EncodeBool(bool(x)); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VWireBoolNBool) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_bool_260); err != nil {
		return err
	}
	tmp, err := dec.DecodeBool()
	if err != nil {
		return err
	}
	*x = VWireBoolNBool(tmp)
	return dec.FinishValue()
}

type VWireBoolNString bool

func (VWireBoolNString) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VWireBoolNString"`
}) {
}

func (x VWireBoolNString) VDLIsZero() bool {
	return bool(!x)
}

func (x VWireBoolNString) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_bool_261); err != nil {
		return err
	}
	if err := enc.EncodeBool(bool(x)); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VWireBoolNString) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_bool_261); err != nil {
		return err
	}
	tmp, err := dec.DecodeBool()
	if err != nil {
		return err
	}
	*x = VWireBoolNString(tmp)
	return dec.FinishValue()
}

type VWireBoolNStruct bool

func (VWireBoolNStruct) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VWireBoolNStruct"`
}) {
}

func (x VWireBoolNStruct) VDLIsZero() bool {
	return bool(!x)
}

func (x VWireBoolNStruct) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_bool_262); err != nil {
		return err
	}
	if err := enc.EncodeBool(bool(x)); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VWireBoolNStruct) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_bool_262); err != nil {
		return err
	}
	tmp, err := dec.DecodeBool()
	if err != nil {
		return err
	}
	*x = VWireBoolNStruct(tmp)
	return dec.FinishValue()
}

type VWireIntNInt int32

func (VWireIntNInt) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VWireIntNInt"`
}) {
}

func (x VWireIntNInt) VDLIsZero() bool {
	return x == 0
}

func (x VWireIntNInt) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_int32_263); err != nil {
		return err
	}
	if err := enc.EncodeInt(int64(x)); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VWireIntNInt) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_int32_263); err != nil {
		return err
	}
	tmp, err := dec.DecodeInt(32)
	if err != nil {
		return err
	}
	*x = VWireIntNInt(tmp)
	return dec.FinishValue()
}

type VWireIntNString int32

func (VWireIntNString) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VWireIntNString"`
}) {
}

func (x VWireIntNString) VDLIsZero() bool {
	return x == 0
}

func (x VWireIntNString) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_int32_264); err != nil {
		return err
	}
	if err := enc.EncodeInt(int64(x)); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VWireIntNString) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_int32_264); err != nil {
		return err
	}
	tmp, err := dec.DecodeInt(32)
	if err != nil {
		return err
	}
	*x = VWireIntNString(tmp)
	return dec.FinishValue()
}

type VWireIntNStruct int32

func (VWireIntNStruct) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VWireIntNStruct"`
}) {
}

func (x VWireIntNStruct) VDLIsZero() bool {
	return x == 0
}

func (x VWireIntNStruct) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_int32_265); err != nil {
		return err
	}
	if err := enc.EncodeInt(int64(x)); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VWireIntNStruct) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_int32_265); err != nil {
		return err
	}
	tmp, err := dec.DecodeInt(32)
	if err != nil {
		return err
	}
	*x = VWireIntNStruct(tmp)
	return dec.FinishValue()
}

type VWireStringNString string

func (VWireStringNString) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VWireStringNString"`
}) {
}

func (x VWireStringNString) VDLIsZero() bool {
	return x == ""
}

func (x VWireStringNString) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_string_266); err != nil {
		return err
	}
	if err := enc.EncodeString(string(x)); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VWireStringNString) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_string_266); err != nil {
		return err
	}
	tmp, err := dec.DecodeString()
	if err != nil {
		return err
	}
	*x = VWireStringNString(tmp)
	return dec.FinishValue()
}

type VWireStringNStruct string

func (VWireStringNStruct) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VWireStringNStruct"`
}) {
}

func (x VWireStringNStruct) VDLIsZero() bool {
	return x == ""
}

func (x VWireStringNStruct) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_string_267); err != nil {
		return err
	}
	if err := enc.EncodeString(string(x)); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VWireStringNStruct) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_string_267); err != nil {
		return err
	}
	tmp, err := dec.DecodeString()
	if err != nil {
		return err
	}
	*x = VWireStringNStruct(tmp)
	return dec.FinishValue()
}

type VWireArrayNString [1]string

func (VWireArrayNString) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VWireArrayNString"`
}) {
}

func (x VWireArrayNString) VDLIsZero() bool {
	return x == VWireArrayNString{}
}

func (x VWireArrayNString) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_268); err != nil {
		return err
	}
	for i := 0; i < 1; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.StringType); err != nil {
			return err
		}
		if err := enc.EncodeString(x[i]); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VWireArrayNString) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_268); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := dec.StartValue(vdl.StringType); err != nil {
			return err
		}
		var err error
		if x[index], err = dec.DecodeString(); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		index++
	}
}

type VWireArrayNStruct [1]string

func (VWireArrayNStruct) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VWireArrayNStruct"`
}) {
}

func (x VWireArrayNStruct) VDLIsZero() bool {
	return x == VWireArrayNStruct{}
}

func (x VWireArrayNStruct) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_array_269); err != nil {
		return err
	}
	for i := 0; i < 1; i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.StringType); err != nil {
			return err
		}
		if err := enc.EncodeString(x[i]); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VWireArrayNStruct) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_array_269); err != nil {
		return err
	}
	index := 0
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done != (index >= len(*x)):
			return fmt.Errorf("array len mismatch, done:%v index:%d len:%d %T)", done, index, len(*x), *x)
		case done:
			return dec.FinishValue()
		}
		if err := dec.StartValue(vdl.StringType); err != nil {
			return err
		}
		var err error
		if x[index], err = dec.DecodeString(); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		index++
	}
}

type VWireListNString []string

func (VWireListNString) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VWireListNString"`
}) {
}

func (x VWireListNString) VDLIsZero() bool {
	return len(x) == 0
}

func (x VWireListNString) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_270); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.StringType); err != nil {
			return err
		}
		if err := enc.EncodeString(x[i]); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VWireListNString) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_270); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VWireListNString, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem string
		if err := dec.StartValue(vdl.StringType); err != nil {
			return err
		}
		var err error
		if elem, err = dec.DecodeString(); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VWireListNStruct []string

func (VWireListNStruct) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VWireListNStruct"`
}) {
}

func (x VWireListNStruct) VDLIsZero() bool {
	return len(x) == 0
}

func (x VWireListNStruct) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_list_271); err != nil {
		return err
	}
	if err := enc.SetLenHint(len(x)); err != nil {
		return err
	}
	for i := 0; i < len(x); i++ {
		if err := enc.NextEntry(false); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.StringType); err != nil {
			return err
		}
		if err := enc.EncodeString(x[i]); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextEntry(true); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VWireListNStruct) VDLRead(dec vdl.Decoder) error {
	if err := dec.StartValue(__VDLType_list_271); err != nil {
		return err
	}
	switch len := dec.LenHint(); {
	case len > 0:
		*x = make(VWireListNStruct, 0, len)
	default:
		*x = nil
	}
	for {
		switch done, err := dec.NextEntry(); {
		case err != nil:
			return err
		case done:
			return dec.FinishValue()
		}
		var elem string
		if err := dec.StartValue(vdl.StringType); err != nil {
			return err
		}
		var err error
		if elem, err = dec.DecodeString(); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = append(*x, elem)
	}
}

type VWireStructNString struct {
	X string
}

func (VWireStructNString) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VWireStructNString"`
}) {
}

func (x VWireStructNString) VDLIsZero() bool {
	return x == VWireStructNString{}
}

func (x VWireStructNString) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_272); err != nil {
		return err
	}
	if x.X != "" {
		if err := enc.NextField("X"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.StringType); err != nil {
			return err
		}
		if err := enc.EncodeString(x.X); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VWireStructNString) VDLRead(dec vdl.Decoder) error {
	*x = VWireStructNString{}
	if err := dec.StartValue(__VDLType_struct_272); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "X":
			if err := dec.StartValue(vdl.StringType); err != nil {
				return err
			}
			var err error
			if x.X, err = dec.DecodeString(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VWireStructNStruct struct {
	X string
}

func (VWireStructNStruct) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VWireStructNStruct"`
}) {
}

func (x VWireStructNStruct) VDLIsZero() bool {
	return x == VWireStructNStruct{}
}

func (x VWireStructNStruct) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_273); err != nil {
		return err
	}
	if x.X != "" {
		if err := enc.NextField("X"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.StringType); err != nil {
			return err
		}
		if err := enc.EncodeString(x.X); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VWireStructNStruct) VDLRead(dec vdl.Decoder) error {
	*x = VWireStructNStruct{}
	if err := dec.StartValue(__VDLType_struct_273); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "X":
			if err := dec.StartValue(vdl.StringType); err != nil {
				return err
			}
			var err error
			if x.X, err = dec.DecodeString(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VWireStructNArray struct {
	X string
}

func (VWireStructNArray) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VWireStructNArray"`
}) {
}

func (x VWireStructNArray) VDLIsZero() bool {
	return x == VWireStructNArray{}
}

func (x VWireStructNArray) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_274); err != nil {
		return err
	}
	if x.X != "" {
		if err := enc.NextField("X"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.StringType); err != nil {
			return err
		}
		if err := enc.EncodeString(x.X); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VWireStructNArray) VDLRead(dec vdl.Decoder) error {
	*x = VWireStructNArray{}
	if err := dec.StartValue(__VDLType_struct_274); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "X":
			if err := dec.StartValue(vdl.StringType); err != nil {
				return err
			}
			var err error
			if x.X, err = dec.DecodeString(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VWireStructNSlice struct {
	X string
}

func (VWireStructNSlice) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VWireStructNSlice"`
}) {
}

func (x VWireStructNSlice) VDLIsZero() bool {
	return x == VWireStructNSlice{}
}

func (x VWireStructNSlice) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_275); err != nil {
		return err
	}
	if x.X != "" {
		if err := enc.NextField("X"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.StringType); err != nil {
			return err
		}
		if err := enc.EncodeString(x.X); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VWireStructNSlice) VDLRead(dec vdl.Decoder) error {
	*x = VWireStructNSlice{}
	if err := dec.StartValue(__VDLType_struct_275); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "X":
			if err := dec.StartValue(vdl.StringType); err != nil {
				return err
			}
			var err error
			if x.X, err = dec.DecodeString(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VWireStructNPointer struct {
	X string
}

func (VWireStructNPointer) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VWireStructNPointer"`
}) {
}

func (x VWireStructNPointer) VDLIsZero() bool {
	return x == VWireStructNPointer{}
}

func (x VWireStructNPointer) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_276); err != nil {
		return err
	}
	if x.X != "" {
		if err := enc.NextField("X"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.StringType); err != nil {
			return err
		}
		if err := enc.EncodeString(x.X); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VWireStructNPointer) VDLRead(dec vdl.Decoder) error {
	*x = VWireStructNPointer{}
	if err := dec.StartValue(__VDLType_struct_276); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "X":
			if err := dec.StartValue(vdl.StringType); err != nil {
				return err
			}
			var err error
			if x.X, err = dec.DecodeString(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type VWireStructNIface struct {
	X string
}

func (VWireStructNIface) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VWireStructNIface"`
}) {
}

func (x VWireStructNIface) VDLIsZero() bool {
	return x == VWireStructNIface{}
}

func (x VWireStructNIface) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_277); err != nil {
		return err
	}
	if x.X != "" {
		if err := enc.NextField("X"); err != nil {
			return err
		}
		if err := enc.StartValue(vdl.StringType); err != nil {
			return err
		}
		if err := enc.EncodeString(x.X); err != nil {
			return err
		}
		if err := enc.FinishValue(); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VWireStructNIface) VDLRead(dec vdl.Decoder) error {
	*x = VWireStructNIface{}
	if err := dec.StartValue(__VDLType_struct_277); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "X":
			if err := dec.StartValue(vdl.StringType); err != nil {
				return err
			}
			var err error
			if x.X, err = dec.DecodeString(); err != nil {
				return err
			}
			if err := dec.FinishValue(); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type (
	// VWireUnionNString represents any single field of the VWireUnionNString union type.
	VWireUnionNString interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VWireUnionNString union type.
		__VDLReflect(__VWireUnionNStringReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VWireUnionNStringX represents field X of the VWireUnionNString union type.
	VWireUnionNStringX struct{ Value string }
	// __VWireUnionNStringReflect describes the VWireUnionNString union type.
	__VWireUnionNStringReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VWireUnionNString"`
		Type  VWireUnionNString
		Union struct {
			X VWireUnionNStringX
		}
	}
)

func (x VWireUnionNStringX) Index() int                              { return 0 }
func (x VWireUnionNStringX) Interface() interface{}                  { return x.Value }
func (x VWireUnionNStringX) Name() string                            { return "X" }
func (x VWireUnionNStringX) __VDLReflect(__VWireUnionNStringReflect) {}

func (x VWireUnionNStringX) VDLIsZero() bool {
	return x.Value == ""
}

func (x VWireUnionNStringX) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_278); err != nil {
		return err
	}
	if err := enc.NextField("X"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.StringType); err != nil {
		return err
	}
	if err := enc.EncodeString(x.Value); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVWireUnionNString(dec vdl.Decoder, x *VWireUnionNString) error {
	if err := dec.StartValue(__VDLType_union_278); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "X":
		var field VWireUnionNStringX
		if err := dec.StartValue(vdl.StringType); err != nil {
			return err
		}
		var err error
		if field.Value, err = dec.DecodeString(); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VWireUnionNStruct represents any single field of the VWireUnionNStruct union type.
	VWireUnionNStruct interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VWireUnionNStruct union type.
		__VDLReflect(__VWireUnionNStructReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VWireUnionNStructX represents field X of the VWireUnionNStruct union type.
	VWireUnionNStructX struct{ Value string }
	// __VWireUnionNStructReflect describes the VWireUnionNStruct union type.
	__VWireUnionNStructReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VWireUnionNStruct"`
		Type  VWireUnionNStruct
		Union struct {
			X VWireUnionNStructX
		}
	}
)

func (x VWireUnionNStructX) Index() int                              { return 0 }
func (x VWireUnionNStructX) Interface() interface{}                  { return x.Value }
func (x VWireUnionNStructX) Name() string                            { return "X" }
func (x VWireUnionNStructX) __VDLReflect(__VWireUnionNStructReflect) {}

func (x VWireUnionNStructX) VDLIsZero() bool {
	return x.Value == ""
}

func (x VWireUnionNStructX) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_279); err != nil {
		return err
	}
	if err := enc.NextField("X"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.StringType); err != nil {
		return err
	}
	if err := enc.EncodeString(x.Value); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVWireUnionNStruct(dec vdl.Decoder, x *VWireUnionNStruct) error {
	if err := dec.StartValue(__VDLType_union_279); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "X":
		var field VWireUnionNStructX
		if err := dec.StartValue(vdl.StringType); err != nil {
			return err
		}
		var err error
		if field.Value, err = dec.DecodeString(); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VWireUnionNArray represents any single field of the VWireUnionNArray union type.
	VWireUnionNArray interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VWireUnionNArray union type.
		__VDLReflect(__VWireUnionNArrayReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VWireUnionNArrayX represents field X of the VWireUnionNArray union type.
	VWireUnionNArrayX struct{ Value string }
	// __VWireUnionNArrayReflect describes the VWireUnionNArray union type.
	__VWireUnionNArrayReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VWireUnionNArray"`
		Type  VWireUnionNArray
		Union struct {
			X VWireUnionNArrayX
		}
	}
)

func (x VWireUnionNArrayX) Index() int                             { return 0 }
func (x VWireUnionNArrayX) Interface() interface{}                 { return x.Value }
func (x VWireUnionNArrayX) Name() string                           { return "X" }
func (x VWireUnionNArrayX) __VDLReflect(__VWireUnionNArrayReflect) {}

func (x VWireUnionNArrayX) VDLIsZero() bool {
	return x.Value == ""
}

func (x VWireUnionNArrayX) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_280); err != nil {
		return err
	}
	if err := enc.NextField("X"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.StringType); err != nil {
		return err
	}
	if err := enc.EncodeString(x.Value); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVWireUnionNArray(dec vdl.Decoder, x *VWireUnionNArray) error {
	if err := dec.StartValue(__VDLType_union_280); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "X":
		var field VWireUnionNArrayX
		if err := dec.StartValue(vdl.StringType); err != nil {
			return err
		}
		var err error
		if field.Value, err = dec.DecodeString(); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VWireUnionNSlice represents any single field of the VWireUnionNSlice union type.
	VWireUnionNSlice interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VWireUnionNSlice union type.
		__VDLReflect(__VWireUnionNSliceReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VWireUnionNSliceX represents field X of the VWireUnionNSlice union type.
	VWireUnionNSliceX struct{ Value string }
	// __VWireUnionNSliceReflect describes the VWireUnionNSlice union type.
	__VWireUnionNSliceReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VWireUnionNSlice"`
		Type  VWireUnionNSlice
		Union struct {
			X VWireUnionNSliceX
		}
	}
)

func (x VWireUnionNSliceX) Index() int                             { return 0 }
func (x VWireUnionNSliceX) Interface() interface{}                 { return x.Value }
func (x VWireUnionNSliceX) Name() string                           { return "X" }
func (x VWireUnionNSliceX) __VDLReflect(__VWireUnionNSliceReflect) {}

func (x VWireUnionNSliceX) VDLIsZero() bool {
	return x.Value == ""
}

func (x VWireUnionNSliceX) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_281); err != nil {
		return err
	}
	if err := enc.NextField("X"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.StringType); err != nil {
		return err
	}
	if err := enc.EncodeString(x.Value); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVWireUnionNSlice(dec vdl.Decoder, x *VWireUnionNSlice) error {
	if err := dec.StartValue(__VDLType_union_281); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "X":
		var field VWireUnionNSliceX
		if err := dec.StartValue(vdl.StringType); err != nil {
			return err
		}
		var err error
		if field.Value, err = dec.DecodeString(); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VWireUnionNPointer represents any single field of the VWireUnionNPointer union type.
	VWireUnionNPointer interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VWireUnionNPointer union type.
		__VDLReflect(__VWireUnionNPointerReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VWireUnionNPointerX represents field X of the VWireUnionNPointer union type.
	VWireUnionNPointerX struct{ Value string }
	// __VWireUnionNPointerReflect describes the VWireUnionNPointer union type.
	__VWireUnionNPointerReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VWireUnionNPointer"`
		Type  VWireUnionNPointer
		Union struct {
			X VWireUnionNPointerX
		}
	}
)

func (x VWireUnionNPointerX) Index() int                               { return 0 }
func (x VWireUnionNPointerX) Interface() interface{}                   { return x.Value }
func (x VWireUnionNPointerX) Name() string                             { return "X" }
func (x VWireUnionNPointerX) __VDLReflect(__VWireUnionNPointerReflect) {}

func (x VWireUnionNPointerX) VDLIsZero() bool {
	return x.Value == ""
}

func (x VWireUnionNPointerX) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_282); err != nil {
		return err
	}
	if err := enc.NextField("X"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.StringType); err != nil {
		return err
	}
	if err := enc.EncodeString(x.Value); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVWireUnionNPointer(dec vdl.Decoder, x *VWireUnionNPointer) error {
	if err := dec.StartValue(__VDLType_union_282); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "X":
		var field VWireUnionNPointerX
		if err := dec.StartValue(vdl.StringType); err != nil {
			return err
		}
		var err error
		if field.Value, err = dec.DecodeString(); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

type (
	// VWireUnionNIface represents any single field of the VWireUnionNIface union type.
	VWireUnionNIface interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the VWireUnionNIface union type.
		__VDLReflect(__VWireUnionNIfaceReflect)
		VDLIsZero() bool
		VDLWrite(vdl.Encoder) error
	}
	// VWireUnionNIfaceX represents field X of the VWireUnionNIface union type.
	VWireUnionNIfaceX struct{ Value string }
	// __VWireUnionNIfaceReflect describes the VWireUnionNIface union type.
	__VWireUnionNIfaceReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.VWireUnionNIface"`
		Type  VWireUnionNIface
		Union struct {
			X VWireUnionNIfaceX
		}
	}
)

func (x VWireUnionNIfaceX) Index() int                             { return 0 }
func (x VWireUnionNIfaceX) Interface() interface{}                 { return x.Value }
func (x VWireUnionNIfaceX) Name() string                           { return "X" }
func (x VWireUnionNIfaceX) __VDLReflect(__VWireUnionNIfaceReflect) {}

func (x VWireUnionNIfaceX) VDLIsZero() bool {
	return x.Value == ""
}

func (x VWireUnionNIfaceX) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_union_283); err != nil {
		return err
	}
	if err := enc.NextField("X"); err != nil {
		return err
	}
	if err := enc.StartValue(vdl.StringType); err != nil {
		return err
	}
	if err := enc.EncodeString(x.Value); err != nil {
		return err
	}
	if err := enc.FinishValue(); err != nil {
		return err
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func VDLReadVWireUnionNIface(dec vdl.Decoder, x *VWireUnionNIface) error {
	if err := dec.StartValue(__VDLType_union_283); err != nil {
		return err
	}
	f, err := dec.NextField()
	if err != nil {
		return err
	}
	switch f {
	case "X":
		var field VWireUnionNIfaceX
		if err := dec.StartValue(vdl.StringType); err != nil {
			return err
		}
		var err error
		if field.Value, err = dec.DecodeString(); err != nil {
			return err
		}
		if err := dec.FinishValue(); err != nil {
			return err
		}
		*x = field
	case "":
		return fmt.Errorf("missing field in union %T, from %v", x, dec.Type())
	default:
		return fmt.Errorf("field %q not in union %T, from %v", f, x, dec.Type())
	}
	switch f, err := dec.NextField(); {
	case err != nil:
		return err
	case f != "":
		return fmt.Errorf("extra field %q in union %T, from %v", f, x, dec.Type())
	}
	return dec.FinishValue()
}

// VWireAll contains all wire types, which will be represented as native types
// in the generated code.
type VWireAll struct {
	BoolNBool      VNativeWireBoolNBool
	BoolNString    VNativeWireBoolNString
	BoolNStruct    VNativeWireBoolNStruct
	IntNInt        VNativeWireIntNInt
	IntNString     VNativeWireIntNString
	IntNStruct     VNativeWireIntNStruct
	StringNString  VNativeWireStringNString
	StringNStruct  VNativeWireStringNStruct
	ArrayNString   VNativeWireArrayNString
	ArrayNStruct   VNativeWireArrayNStruct
	ListNString    VNativeWireListNString
	ListNStruct    VNativeWireListNStruct
	StructNString  VNativeWireStructNString
	StructNStruct  VNativeWireStructNStruct
	StructNArray   VNativeWireStructNArray
	StructNSlice   VNativeWireStructNSlice
	StructNPointer VWireStructNPointer
	StructNIface   VWireStructNIface
	UnionNString   VNativeWireUnionNString
	UnionNStruct   VNativeWireUnionNStruct
	UnionNArray    VNativeWireUnionNArray
	UnionNSlice    VNativeWireUnionNSlice
	UnionNPointer  VWireUnionNPointer
	UnionNIface    VWireUnionNIface
}

func (VWireAll) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.VWireAll"`
}) {
}

func (x VWireAll) VDLIsZero() bool {
	if x.BoolNBool != false {
		return false
	}
	if x.BoolNString != "" {
		return false
	}
	if x.BoolNStruct != (VNativeWireBoolNStruct{}) {
		return false
	}
	if x.IntNInt != 0 {
		return false
	}
	if x.IntNString != "" {
		return false
	}
	if x.IntNStruct != (VNativeWireIntNStruct{}) {
		return false
	}
	if x.StringNString != "" {
		return false
	}
	if x.StringNStruct != (VNativeWireStringNStruct{}) {
		return false
	}
	if x.ArrayNString != "" {
		return false
	}
	if x.ArrayNStruct != (VNativeWireArrayNStruct{}) {
		return false
	}
	if x.ListNString != "" {
		return false
	}
	if x.ListNStruct != (VNativeWireListNStruct{}) {
		return false
	}
	if x.StructNString != "" {
		return false
	}
	if x.StructNStruct != (VNativeWireStructNStruct{}) {
		return false
	}
	if x.StructNArray != (VNativeWireStructNArray{}) {
		return false
	}
	if !x.StructNSlice.IsZero() {
		return false
	}
	if x.StructNPointer != (VWireStructNPointer{}) {
		return false
	}
	if x.StructNIface != (VWireStructNIface{}) {
		return false
	}
	if x.UnionNString != "" {
		return false
	}
	if x.UnionNStruct != (VNativeWireUnionNStruct{}) {
		return false
	}
	if x.UnionNArray != (VNativeWireUnionNArray{}) {
		return false
	}
	if !x.UnionNSlice.IsZero() {
		return false
	}
	if x.UnionNPointer != nil && !x.UnionNPointer.VDLIsZero() {
		return false
	}
	if x.UnionNIface != nil && !x.UnionNIface.VDLIsZero() {
		return false
	}
	return true
}

func (x VWireAll) VDLWrite(enc vdl.Encoder) error {
	if err := enc.StartValue(__VDLType_struct_284); err != nil {
		return err
	}
	if x.BoolNBool != false {
		if err := enc.NextField("BoolNBool"); err != nil {
			return err
		}
		var wire VWireBoolNBool
		if err := VWireBoolNBoolFromNative(&wire, x.BoolNBool); err != nil {
			return err
		}
		if err := wire.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.BoolNString != "" {
		if err := enc.NextField("BoolNString"); err != nil {
			return err
		}
		var wire VWireBoolNString
		if err := VWireBoolNStringFromNative(&wire, x.BoolNString); err != nil {
			return err
		}
		if err := wire.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.BoolNStruct != (VNativeWireBoolNStruct{}) {
		if err := enc.NextField("BoolNStruct"); err != nil {
			return err
		}
		var wire VWireBoolNStruct
		if err := VWireBoolNStructFromNative(&wire, x.BoolNStruct); err != nil {
			return err
		}
		if err := wire.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.IntNInt != 0 {
		if err := enc.NextField("IntNInt"); err != nil {
			return err
		}
		var wire VWireIntNInt
		if err := VWireIntNIntFromNative(&wire, x.IntNInt); err != nil {
			return err
		}
		if err := wire.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.IntNString != "" {
		if err := enc.NextField("IntNString"); err != nil {
			return err
		}
		var wire VWireIntNString
		if err := VWireIntNStringFromNative(&wire, x.IntNString); err != nil {
			return err
		}
		if err := wire.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.IntNStruct != (VNativeWireIntNStruct{}) {
		if err := enc.NextField("IntNStruct"); err != nil {
			return err
		}
		var wire VWireIntNStruct
		if err := VWireIntNStructFromNative(&wire, x.IntNStruct); err != nil {
			return err
		}
		if err := wire.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.StringNString != "" {
		if err := enc.NextField("StringNString"); err != nil {
			return err
		}
		var wire VWireStringNString
		if err := VWireStringNStringFromNative(&wire, x.StringNString); err != nil {
			return err
		}
		if err := wire.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.StringNStruct != (VNativeWireStringNStruct{}) {
		if err := enc.NextField("StringNStruct"); err != nil {
			return err
		}
		var wire VWireStringNStruct
		if err := VWireStringNStructFromNative(&wire, x.StringNStruct); err != nil {
			return err
		}
		if err := wire.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.ArrayNString != "" {
		if err := enc.NextField("ArrayNString"); err != nil {
			return err
		}
		var wire VWireArrayNString
		if err := VWireArrayNStringFromNative(&wire, x.ArrayNString); err != nil {
			return err
		}
		if err := wire.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.ArrayNStruct != (VNativeWireArrayNStruct{}) {
		if err := enc.NextField("ArrayNStruct"); err != nil {
			return err
		}
		var wire VWireArrayNStruct
		if err := VWireArrayNStructFromNative(&wire, x.ArrayNStruct); err != nil {
			return err
		}
		if err := wire.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.ListNString != "" {
		if err := enc.NextField("ListNString"); err != nil {
			return err
		}
		var wire VWireListNString
		if err := VWireListNStringFromNative(&wire, x.ListNString); err != nil {
			return err
		}
		if err := wire.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.ListNStruct != (VNativeWireListNStruct{}) {
		if err := enc.NextField("ListNStruct"); err != nil {
			return err
		}
		var wire VWireListNStruct
		if err := VWireListNStructFromNative(&wire, x.ListNStruct); err != nil {
			return err
		}
		if err := wire.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.StructNString != "" {
		if err := enc.NextField("StructNString"); err != nil {
			return err
		}
		var wire VWireStructNString
		if err := VWireStructNStringFromNative(&wire, x.StructNString); err != nil {
			return err
		}
		if err := wire.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.StructNStruct != (VNativeWireStructNStruct{}) {
		if err := enc.NextField("StructNStruct"); err != nil {
			return err
		}
		var wire VWireStructNStruct
		if err := VWireStructNStructFromNative(&wire, x.StructNStruct); err != nil {
			return err
		}
		if err := wire.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.StructNArray != (VNativeWireStructNArray{}) {
		if err := enc.NextField("StructNArray"); err != nil {
			return err
		}
		var wire VWireStructNArray
		if err := VWireStructNArrayFromNative(&wire, x.StructNArray); err != nil {
			return err
		}
		if err := wire.VDLWrite(enc); err != nil {
			return err
		}
	}
	if !x.StructNSlice.IsZero() {
		if err := enc.NextField("StructNSlice"); err != nil {
			return err
		}
		var wire VWireStructNSlice
		if err := VWireStructNSliceFromNative(&wire, x.StructNSlice); err != nil {
			return err
		}
		if err := wire.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.StructNPointer != (VWireStructNPointer{}) {
		if err := enc.NextField("StructNPointer"); err != nil {
			return err
		}
		if err := x.StructNPointer.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.StructNIface != (VWireStructNIface{}) {
		if err := enc.NextField("StructNIface"); err != nil {
			return err
		}
		if err := x.StructNIface.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.UnionNString != "" {
		if err := enc.NextField("UnionNString"); err != nil {
			return err
		}
		var wire VWireUnionNString
		if err := VWireUnionNStringFromNative(&wire, x.UnionNString); err != nil {
			return err
		}
		if err := wire.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.UnionNStruct != (VNativeWireUnionNStruct{}) {
		if err := enc.NextField("UnionNStruct"); err != nil {
			return err
		}
		var wire VWireUnionNStruct
		if err := VWireUnionNStructFromNative(&wire, x.UnionNStruct); err != nil {
			return err
		}
		if err := wire.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.UnionNArray != (VNativeWireUnionNArray{}) {
		if err := enc.NextField("UnionNArray"); err != nil {
			return err
		}
		var wire VWireUnionNArray
		if err := VWireUnionNArrayFromNative(&wire, x.UnionNArray); err != nil {
			return err
		}
		if err := wire.VDLWrite(enc); err != nil {
			return err
		}
	}
	if !x.UnionNSlice.IsZero() {
		if err := enc.NextField("UnionNSlice"); err != nil {
			return err
		}
		var wire VWireUnionNSlice
		if err := VWireUnionNSliceFromNative(&wire, x.UnionNSlice); err != nil {
			return err
		}
		if err := wire.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.UnionNPointer != nil && !x.UnionNPointer.VDLIsZero() {
		if err := enc.NextField("UnionNPointer"); err != nil {
			return err
		}
		if err := x.UnionNPointer.VDLWrite(enc); err != nil {
			return err
		}
	}
	if x.UnionNIface != nil && !x.UnionNIface.VDLIsZero() {
		if err := enc.NextField("UnionNIface"); err != nil {
			return err
		}
		if err := x.UnionNIface.VDLWrite(enc); err != nil {
			return err
		}
	}
	if err := enc.NextField(""); err != nil {
		return err
	}
	return enc.FinishValue()
}

func (x *VWireAll) VDLRead(dec vdl.Decoder) error {
	*x = VWireAll{
		UnionNPointer: VWireUnionNPointerX{},
		UnionNIface:   VWireUnionNIfaceX{},
	}
	if err := dec.StartValue(__VDLType_struct_284); err != nil {
		return err
	}
	for {
		f, err := dec.NextField()
		if err != nil {
			return err
		}
		switch f {
		case "":
			return dec.FinishValue()
		case "BoolNBool":
			var wire VWireBoolNBool
			if err := wire.VDLRead(dec); err != nil {
				return err
			}
			if err := VWireBoolNBoolToNative(wire, &x.BoolNBool); err != nil {
				return err
			}
		case "BoolNString":
			var wire VWireBoolNString
			if err := wire.VDLRead(dec); err != nil {
				return err
			}
			if err := VWireBoolNStringToNative(wire, &x.BoolNString); err != nil {
				return err
			}
		case "BoolNStruct":
			var wire VWireBoolNStruct
			if err := wire.VDLRead(dec); err != nil {
				return err
			}
			if err := VWireBoolNStructToNative(wire, &x.BoolNStruct); err != nil {
				return err
			}
		case "IntNInt":
			var wire VWireIntNInt
			if err := wire.VDLRead(dec); err != nil {
				return err
			}
			if err := VWireIntNIntToNative(wire, &x.IntNInt); err != nil {
				return err
			}
		case "IntNString":
			var wire VWireIntNString
			if err := wire.VDLRead(dec); err != nil {
				return err
			}
			if err := VWireIntNStringToNative(wire, &x.IntNString); err != nil {
				return err
			}
		case "IntNStruct":
			var wire VWireIntNStruct
			if err := wire.VDLRead(dec); err != nil {
				return err
			}
			if err := VWireIntNStructToNative(wire, &x.IntNStruct); err != nil {
				return err
			}
		case "StringNString":
			var wire VWireStringNString
			if err := wire.VDLRead(dec); err != nil {
				return err
			}
			if err := VWireStringNStringToNative(wire, &x.StringNString); err != nil {
				return err
			}
		case "StringNStruct":
			var wire VWireStringNStruct
			if err := wire.VDLRead(dec); err != nil {
				return err
			}
			if err := VWireStringNStructToNative(wire, &x.StringNStruct); err != nil {
				return err
			}
		case "ArrayNString":
			var wire VWireArrayNString
			if err := wire.VDLRead(dec); err != nil {
				return err
			}
			if err := VWireArrayNStringToNative(wire, &x.ArrayNString); err != nil {
				return err
			}
		case "ArrayNStruct":
			var wire VWireArrayNStruct
			if err := wire.VDLRead(dec); err != nil {
				return err
			}
			if err := VWireArrayNStructToNative(wire, &x.ArrayNStruct); err != nil {
				return err
			}
		case "ListNString":
			var wire VWireListNString
			if err := wire.VDLRead(dec); err != nil {
				return err
			}
			if err := VWireListNStringToNative(wire, &x.ListNString); err != nil {
				return err
			}
		case "ListNStruct":
			var wire VWireListNStruct
			if err := wire.VDLRead(dec); err != nil {
				return err
			}
			if err := VWireListNStructToNative(wire, &x.ListNStruct); err != nil {
				return err
			}
		case "StructNString":
			var wire VWireStructNString
			if err := wire.VDLRead(dec); err != nil {
				return err
			}
			if err := VWireStructNStringToNative(wire, &x.StructNString); err != nil {
				return err
			}
		case "StructNStruct":
			var wire VWireStructNStruct
			if err := wire.VDLRead(dec); err != nil {
				return err
			}
			if err := VWireStructNStructToNative(wire, &x.StructNStruct); err != nil {
				return err
			}
		case "StructNArray":
			var wire VWireStructNArray
			if err := wire.VDLRead(dec); err != nil {
				return err
			}
			if err := VWireStructNArrayToNative(wire, &x.StructNArray); err != nil {
				return err
			}
		case "StructNSlice":
			var wire VWireStructNSlice
			if err := wire.VDLRead(dec); err != nil {
				return err
			}
			if err := VWireStructNSliceToNative(wire, &x.StructNSlice); err != nil {
				return err
			}
		case "StructNPointer":
			if err := x.StructNPointer.VDLRead(dec); err != nil {
				return err
			}
		case "StructNIface":
			if err := x.StructNIface.VDLRead(dec); err != nil {
				return err
			}
		case "UnionNString":
			var wire VWireUnionNString
			if err := VDLReadVWireUnionNString(dec, &wire); err != nil {
				return err
			}
			if err := VWireUnionNStringToNative(wire, &x.UnionNString); err != nil {
				return err
			}
		case "UnionNStruct":
			var wire VWireUnionNStruct
			if err := VDLReadVWireUnionNStruct(dec, &wire); err != nil {
				return err
			}
			if err := VWireUnionNStructToNative(wire, &x.UnionNStruct); err != nil {
				return err
			}
		case "UnionNArray":
			var wire VWireUnionNArray
			if err := VDLReadVWireUnionNArray(dec, &wire); err != nil {
				return err
			}
			if err := VWireUnionNArrayToNative(wire, &x.UnionNArray); err != nil {
				return err
			}
		case "UnionNSlice":
			var wire VWireUnionNSlice
			if err := VDLReadVWireUnionNSlice(dec, &wire); err != nil {
				return err
			}
			if err := VWireUnionNSliceToNative(wire, &x.UnionNSlice); err != nil {
				return err
			}
		case "UnionNPointer":
			if err := VDLReadVWireUnionNPointer(dec, &x.UnionNPointer); err != nil {
				return err
			}
		case "UnionNIface":
			if err := VDLReadVWireUnionNIface(dec, &x.UnionNIface); err != nil {
				return err
			}
		default:
			if err := dec.SkipValue(); err != nil {
				return err
			}
		}
	}
}

type XBool bool

func (XBool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XBool"`
}) {
}

type XString string

func (XString) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XString"`
}) {
}

type XByte byte

func (XByte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XByte"`
}) {
}

type XEnumAbc int

const (
	XEnumAbcA XEnumAbc = iota
	XEnumAbcB
	XEnumAbcC
)

// XEnumAbcAll holds all labels for XEnumAbc.
var XEnumAbcAll = [...]XEnumAbc{XEnumAbcA, XEnumAbcB, XEnumAbcC}

// XEnumAbcFromString creates a XEnumAbc from a string label.
func XEnumAbcFromString(label string) (x XEnumAbc, err error) {
	err = x.Set(label)
	return
}

// Set assigns label to x.
func (x *XEnumAbc) Set(label string) error {
	switch label {
	case "A", "a":
		*x = XEnumAbcA
		return nil
	case "B", "b":
		*x = XEnumAbcB
		return nil
	case "C", "c":
		*x = XEnumAbcC
		return nil
	}
	*x = -1
	return fmt.Errorf("unknown label %q in vdltest.XEnumAbc", label)
}

// String returns the string label of x.
func (x XEnumAbc) String() string {
	switch x {
	case XEnumAbcA:
		return "A"
	case XEnumAbcB:
		return "B"
	case XEnumAbcC:
		return "C"
	}
	return ""
}

func (XEnumAbc) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XEnumAbc"`
	Enum struct{ A, B, C string }
}) {
}

type XEnumBcd int

const (
	XEnumBcdB XEnumBcd = iota
	XEnumBcdC
	XEnumBcdD
)

// XEnumBcdAll holds all labels for XEnumBcd.
var XEnumBcdAll = [...]XEnumBcd{XEnumBcdB, XEnumBcdC, XEnumBcdD}

// XEnumBcdFromString creates a XEnumBcd from a string label.
func XEnumBcdFromString(label string) (x XEnumBcd, err error) {
	err = x.Set(label)
	return
}

// Set assigns label to x.
func (x *XEnumBcd) Set(label string) error {
	switch label {
	case "B", "b":
		*x = XEnumBcdB
		return nil
	case "C", "c":
		*x = XEnumBcdC
		return nil
	case "D", "d":
		*x = XEnumBcdD
		return nil
	}
	*x = -1
	return fmt.Errorf("unknown label %q in vdltest.XEnumBcd", label)
}

// String returns the string label of x.
func (x XEnumBcd) String() string {
	switch x {
	case XEnumBcdB:
		return "B"
	case XEnumBcdC:
		return "C"
	case XEnumBcdD:
		return "D"
	}
	return ""
}

func (XEnumBcd) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XEnumBcd"`
	Enum struct{ B, C, D string }
}) {
}

type XStructEmpty struct {
}

func (XStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructEmpty"`
}) {
}

type XNamedError struct {
	Id  string
	Msg string
}

func (XNamedError) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XNamedError"`
}) {
}

type XUint16 uint16

func (XUint16) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XUint16"`
}) {
}

type XUint32 uint32

func (XUint32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XUint32"`
}) {
}

type XUint64 uint64

func (XUint64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XUint64"`
}) {
}

type XInt8 int8

func (XInt8) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XInt8"`
}) {
}

type XInt16 int16

func (XInt16) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XInt16"`
}) {
}

type XInt32 int32

func (XInt32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XInt32"`
}) {
}

type XInt64 int64

func (XInt64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XInt64"`
}) {
}

type XFloat32 float32

func (XFloat32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XFloat32"`
}) {
}

type XFloat64 float64

func (XFloat64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XFloat64"`
}) {
}

type XArray3_Any [3]interface{}

func (XArray3_Any) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray3_Any"`
}) {
}

type XArray3_Bool [3]bool

func (XArray3_Bool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray3_Bool"`
}) {
}

type XArray3_XBool [3]XBool

func (XArray3_XBool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray3_XBool"`
}) {
}

type XArray1_String [1]string

func (XArray1_String) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray1_String"`
}) {
}

type XArray3_XString [3]XString

func (XArray3_XString) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray3_XString"`
}) {
}

type XArray2_TypeObject [2]*vdl.Type

func (XArray2_TypeObject) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray2_TypeObject"`
}) {
}

type XArray1_Byte [1]byte

func (XArray1_Byte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray1_Byte"`
}) {
}

type XArray2_XByte [2]XByte

func (XArray2_XByte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray2_XByte"`
}) {
}

type XArray2_XEnumAbc [2]XEnumAbc

func (XArray2_XEnumAbc) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray2_XEnumAbc"`
}) {
}

type XArray2_XEnumBcd [2]XEnumBcd

func (XArray2_XEnumBcd) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray2_XEnumBcd"`
}) {
}

type XArray1_XStructEmpty [1]XStructEmpty

func (XArray1_XStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray1_XStructEmpty"`
}) {
}

type XArray1_XNamedError [1]XNamedError

func (XArray1_XNamedError) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray1_XNamedError"`
}) {
}

type XArray2_Error [2]error

func (XArray2_Error) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray2_Error"`
}) {
}

type XArray1_Uint32 [1]uint32

func (XArray1_Uint32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray1_Uint32"`
}) {
}

type XArray3_Uint64 [3]uint64

func (XArray3_Uint64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray3_Uint64"`
}) {
}

type XArray3_Int64 [3]int64

func (XArray3_Int64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray3_Int64"`
}) {
}

type XArray1_OptXStructEmpty [1]*XStructEmpty

func (XArray1_OptXStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray1_OptXStructEmpty"`
}) {
}

type XArray3_OptXNamedError [3]*XNamedError

func (XArray3_OptXNamedError) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray3_OptXNamedError"`
}) {
}

type XList_Any []interface{}

func (XList_Any) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_Any"`
}) {
}

type XList_Bool []bool

func (XList_Bool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_Bool"`
}) {
}

type XList_XBool []XBool

func (XList_XBool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_XBool"`
}) {
}

type XList_String []string

func (XList_String) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_String"`
}) {
}

type XList_XString []XString

func (XList_XString) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_XString"`
}) {
}

type XList_TypeObject []*vdl.Type

func (XList_TypeObject) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_TypeObject"`
}) {
}

type XList_Byte []byte

func (XList_Byte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_Byte"`
}) {
}

type XList_XByte []XByte

func (XList_XByte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_XByte"`
}) {
}

type XList_XEnumAbc []XEnumAbc

func (XList_XEnumAbc) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_XEnumAbc"`
}) {
}

type XList_XEnumBcd []XEnumBcd

func (XList_XEnumBcd) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_XEnumBcd"`
}) {
}

type XList_XStructEmpty []XStructEmpty

func (XList_XStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_XStructEmpty"`
}) {
}

type XList_XNamedError []XNamedError

func (XList_XNamedError) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_XNamedError"`
}) {
}

type XList_Error []error

func (XList_Error) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_Error"`
}) {
}

type XList_XUint16 []XUint16

func (XList_XUint16) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_XUint16"`
}) {
}

type XList_XFloat32 []XFloat32

func (XList_XFloat32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_XFloat32"`
}) {
}

type XList_XFloat64 []XFloat64

func (XList_XFloat64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_XFloat64"`
}) {
}

type XList_OptXStructEmpty []*XStructEmpty

func (XList_OptXStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_OptXStructEmpty"`
}) {
}

type XList_OptXNamedError []*XNamedError

func (XList_OptXNamedError) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_OptXNamedError"`
}) {
}

type XSet_Bool map[bool]struct{}

func (XSet_Bool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XSet_Bool"`
}) {
}

type XSet_XBool map[XBool]struct{}

func (XSet_XBool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XSet_XBool"`
}) {
}

type XSet_String map[string]struct{}

func (XSet_String) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XSet_String"`
}) {
}

type XSet_XString map[XString]struct{}

func (XSet_XString) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XSet_XString"`
}) {
}

type XSet_Byte map[byte]struct{}

func (XSet_Byte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XSet_Byte"`
}) {
}

type XSet_XByte map[XByte]struct{}

func (XSet_XByte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XSet_XByte"`
}) {
}

type XSet_XEnumAbc map[XEnumAbc]struct{}

func (XSet_XEnumAbc) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XSet_XEnumAbc"`
}) {
}

type XSet_XEnumBcd map[XEnumBcd]struct{}

func (XSet_XEnumBcd) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XSet_XEnumBcd"`
}) {
}

type XSet_XStructEmpty map[XStructEmpty]struct{}

func (XSet_XStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XSet_XStructEmpty"`
}) {
}

type XSet_XNamedError map[XNamedError]struct{}

func (XSet_XNamedError) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XSet_XNamedError"`
}) {
}

type XSet_Uint64 map[uint64]struct{}

func (XSet_Uint64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XSet_Uint64"`
}) {
}

type XSet_XUint64 map[XUint64]struct{}

func (XSet_XUint64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XSet_XUint64"`
}) {
}

type XSet_Float32 map[float32]struct{}

func (XSet_Float32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XSet_Float32"`
}) {
}

type XMap_Bool_Bool map[bool]bool

func (XMap_Bool_Bool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XMap_Bool_Bool"`
}) {
}

type XMap_XBool_XBool map[XBool]XBool

func (XMap_XBool_XBool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XMap_XBool_XBool"`
}) {
}

type XMap_String_String map[string]string

func (XMap_String_String) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XMap_String_String"`
}) {
}

type XMap_XString_XString map[XString]XString

func (XMap_XString_XString) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XMap_XString_XString"`
}) {
}

type XMap_Byte_Byte map[byte]byte

func (XMap_Byte_Byte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XMap_Byte_Byte"`
}) {
}

type XMap_XByte_XByte map[XByte]XByte

func (XMap_XByte_XByte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XMap_XByte_XByte"`
}) {
}

type XMap_XEnumAbc_XEnumAbc map[XEnumAbc]XEnumAbc

func (XMap_XEnumAbc_XEnumAbc) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XMap_XEnumAbc_XEnumAbc"`
}) {
}

type XMap_XEnumBcd_XEnumBcd map[XEnumBcd]XEnumBcd

func (XMap_XEnumBcd_XEnumBcd) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XMap_XEnumBcd_XEnumBcd"`
}) {
}

type XMap_XStructEmpty_XStructEmpty map[XStructEmpty]XStructEmpty

func (XMap_XStructEmpty_XStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XMap_XStructEmpty_XStructEmpty"`
}) {
}

type XMap_XNamedError_XNamedError map[XNamedError]XNamedError

func (XMap_XNamedError_XNamedError) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XMap_XNamedError_XNamedError"`
}) {
}

type XMap_XUint32_XUint32 map[XUint32]XUint32

func (XMap_XUint32_XUint32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XMap_XUint32_XUint32"`
}) {
}

type XMap_XInt32_XInt32 map[XInt32]XInt32

func (XMap_XInt32_XInt32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XMap_XInt32_XInt32"`
}) {
}

type XMap_Int64_Int64 map[int64]int64

func (XMap_Int64_Int64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XMap_Int64_Int64"`
}) {
}

type XStructDepth1_All struct {
	F0  interface{}
	F1  bool
	F2  XBool
	F3  string
	F4  XString
	F5  *vdl.Type
	F6  byte
	F7  XByte
	F8  XEnumAbc
	F9  XEnumBcd
	F10 XStructEmpty
	F11 XNamedError
	F12 error
	F13 uint16
	F14 XUint16
	F15 uint32
	F16 XUint32
	F17 uint64
	F18 XUint64
	F19 int8
	F20 XInt8
	F21 int16
	F22 XInt16
	F23 int32
	F24 XInt32
	F25 int64
	F26 XInt64
	F27 float32
	F28 XFloat32
	F29 float64
	F30 XFloat64
	F31 *XStructEmpty
	F32 *XNamedError
}

func (XStructDepth1_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_All"`
}) {
}

type XStructDepth1_Any struct {
	F0 interface{}
}

func (XStructDepth1_Any) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_Any"`
}) {
}

type XStructDepth1_Bool struct {
	F1 bool
}

func (XStructDepth1_Bool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_Bool"`
}) {
}

type XStructDepth1_XBool struct {
	F2 XBool
}

func (XStructDepth1_XBool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_XBool"`
}) {
}

type XStructDepth1_String struct {
	F3 string
}

func (XStructDepth1_String) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_String"`
}) {
}

type XStructDepth1_XString struct {
	F4 XString
}

func (XStructDepth1_XString) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_XString"`
}) {
}

type XStructDepth1_TypeObject struct {
	F5 *vdl.Type
}

func (XStructDepth1_TypeObject) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_TypeObject"`
}) {
}

type XStructDepth1_Byte struct {
	F6 byte
}

func (XStructDepth1_Byte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_Byte"`
}) {
}

type XStructDepth1_XByte struct {
	F7 XByte
}

func (XStructDepth1_XByte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_XByte"`
}) {
}

type XStructDepth1_XEnumAbc struct {
	F8 XEnumAbc
}

func (XStructDepth1_XEnumAbc) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_XEnumAbc"`
}) {
}

type XStructDepth1_XEnumBcd struct {
	F9 XEnumBcd
}

func (XStructDepth1_XEnumBcd) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_XEnumBcd"`
}) {
}

type XStructDepth1_XStructEmpty struct {
	F10 XStructEmpty
}

func (XStructDepth1_XStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_XStructEmpty"`
}) {
}

type XStructDepth1_XNamedError struct {
	F11 XNamedError
}

func (XStructDepth1_XNamedError) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_XNamedError"`
}) {
}

type XStructDepth1_Error struct {
	F12 error
}

func (XStructDepth1_Error) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_Error"`
}) {
}

type XStructDepth1_Uint16 struct {
	F13 uint16
}

func (XStructDepth1_Uint16) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_Uint16"`
}) {
}

type XStructDepth1_XUint16 struct {
	F14 XUint16
}

func (XStructDepth1_XUint16) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_XUint16"`
}) {
}

type XStructDepth1_Uint32 struct {
	F15 uint32
}

func (XStructDepth1_Uint32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_Uint32"`
}) {
}

type XStructDepth1_XUint32 struct {
	F16 XUint32
}

func (XStructDepth1_XUint32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_XUint32"`
}) {
}

type XStructDepth1_Uint64 struct {
	F17 uint64
}

func (XStructDepth1_Uint64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_Uint64"`
}) {
}

type XStructDepth1_XUint64 struct {
	F18 XUint64
}

func (XStructDepth1_XUint64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_XUint64"`
}) {
}

type XStructDepth1_Int8 struct {
	F19 int8
}

func (XStructDepth1_Int8) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_Int8"`
}) {
}

type XStructDepth1_XInt8 struct {
	F20 XInt8
}

func (XStructDepth1_XInt8) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_XInt8"`
}) {
}

type XStructDepth1_Int16 struct {
	F21 int16
}

func (XStructDepth1_Int16) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_Int16"`
}) {
}

type XStructDepth1_XInt16 struct {
	F22 XInt16
}

func (XStructDepth1_XInt16) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_XInt16"`
}) {
}

type XStructDepth1_Int32 struct {
	F23 int32
}

func (XStructDepth1_Int32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_Int32"`
}) {
}

type XStructDepth1_XInt32 struct {
	F24 XInt32
}

func (XStructDepth1_XInt32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_XInt32"`
}) {
}

type XStructDepth1_Int64 struct {
	F25 int64
}

func (XStructDepth1_Int64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_Int64"`
}) {
}

type XStructDepth1_XInt64 struct {
	F26 XInt64
}

func (XStructDepth1_XInt64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_XInt64"`
}) {
}

type XStructDepth1_Float32 struct {
	F27 float32
}

func (XStructDepth1_Float32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_Float32"`
}) {
}

type XStructDepth1_XFloat32 struct {
	F28 XFloat32
}

func (XStructDepth1_XFloat32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_XFloat32"`
}) {
}

type XStructDepth1_Float64 struct {
	F29 float64
}

func (XStructDepth1_Float64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_Float64"`
}) {
}

type XStructDepth1_XFloat64 struct {
	F30 XFloat64
}

func (XStructDepth1_XFloat64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_XFloat64"`
}) {
}

type XStructDepth1_OptXStructEmpty struct {
	F31 *XStructEmpty
}

func (XStructDepth1_OptXStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_OptXStructEmpty"`
}) {
}

type XStructDepth1_OptXNamedError struct {
	F32 *XNamedError
}

func (XStructDepth1_OptXNamedError) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth1_OptXNamedError"`
}) {
}

type (
	// XUnionDepth1_All represents any single field of the XUnionDepth1_All union type.
	XUnionDepth1_All interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_All union type.
		__VDLReflect(__XUnionDepth1_AllReflect)
	}
	// XUnionDepth1_AllF0 represents field F0 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF0 struct{ Value interface{} }
	// XUnionDepth1_AllF1 represents field F1 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF1 struct{ Value bool }
	// XUnionDepth1_AllF2 represents field F2 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF2 struct{ Value XBool }
	// XUnionDepth1_AllF3 represents field F3 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF3 struct{ Value string }
	// XUnionDepth1_AllF4 represents field F4 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF4 struct{ Value XString }
	// XUnionDepth1_AllF5 represents field F5 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF5 struct{ Value *vdl.Type }
	// XUnionDepth1_AllF6 represents field F6 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF6 struct{ Value byte }
	// XUnionDepth1_AllF7 represents field F7 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF7 struct{ Value XByte }
	// XUnionDepth1_AllF8 represents field F8 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF8 struct{ Value XEnumAbc }
	// XUnionDepth1_AllF9 represents field F9 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF9 struct{ Value XEnumBcd }
	// XUnionDepth1_AllF10 represents field F10 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF10 struct{ Value XStructEmpty }
	// XUnionDepth1_AllF11 represents field F11 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF11 struct{ Value XNamedError }
	// XUnionDepth1_AllF12 represents field F12 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF12 struct{ Value error }
	// XUnionDepth1_AllF13 represents field F13 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF13 struct{ Value uint16 }
	// XUnionDepth1_AllF14 represents field F14 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF14 struct{ Value XUint16 }
	// XUnionDepth1_AllF15 represents field F15 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF15 struct{ Value uint32 }
	// XUnionDepth1_AllF16 represents field F16 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF16 struct{ Value XUint32 }
	// XUnionDepth1_AllF17 represents field F17 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF17 struct{ Value uint64 }
	// XUnionDepth1_AllF18 represents field F18 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF18 struct{ Value XUint64 }
	// XUnionDepth1_AllF19 represents field F19 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF19 struct{ Value int8 }
	// XUnionDepth1_AllF20 represents field F20 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF20 struct{ Value XInt8 }
	// XUnionDepth1_AllF21 represents field F21 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF21 struct{ Value int16 }
	// XUnionDepth1_AllF22 represents field F22 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF22 struct{ Value XInt16 }
	// XUnionDepth1_AllF23 represents field F23 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF23 struct{ Value int32 }
	// XUnionDepth1_AllF24 represents field F24 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF24 struct{ Value XInt32 }
	// XUnionDepth1_AllF25 represents field F25 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF25 struct{ Value int64 }
	// XUnionDepth1_AllF26 represents field F26 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF26 struct{ Value XInt64 }
	// XUnionDepth1_AllF27 represents field F27 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF27 struct{ Value float32 }
	// XUnionDepth1_AllF28 represents field F28 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF28 struct{ Value XFloat32 }
	// XUnionDepth1_AllF29 represents field F29 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF29 struct{ Value float64 }
	// XUnionDepth1_AllF30 represents field F30 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF30 struct{ Value XFloat64 }
	// XUnionDepth1_AllF31 represents field F31 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF31 struct{ Value *XStructEmpty }
	// XUnionDepth1_AllF32 represents field F32 of the XUnionDepth1_All union type.
	XUnionDepth1_AllF32 struct{ Value *XNamedError }
	// __XUnionDepth1_AllReflect describes the XUnionDepth1_All union type.
	__XUnionDepth1_AllReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_All"`
		Type  XUnionDepth1_All
		Union struct {
			F0  XUnionDepth1_AllF0
			F1  XUnionDepth1_AllF1
			F2  XUnionDepth1_AllF2
			F3  XUnionDepth1_AllF3
			F4  XUnionDepth1_AllF4
			F5  XUnionDepth1_AllF5
			F6  XUnionDepth1_AllF6
			F7  XUnionDepth1_AllF7
			F8  XUnionDepth1_AllF8
			F9  XUnionDepth1_AllF9
			F10 XUnionDepth1_AllF10
			F11 XUnionDepth1_AllF11
			F12 XUnionDepth1_AllF12
			F13 XUnionDepth1_AllF13
			F14 XUnionDepth1_AllF14
			F15 XUnionDepth1_AllF15
			F16 XUnionDepth1_AllF16
			F17 XUnionDepth1_AllF17
			F18 XUnionDepth1_AllF18
			F19 XUnionDepth1_AllF19
			F20 XUnionDepth1_AllF20
			F21 XUnionDepth1_AllF21
			F22 XUnionDepth1_AllF22
			F23 XUnionDepth1_AllF23
			F24 XUnionDepth1_AllF24
			F25 XUnionDepth1_AllF25
			F26 XUnionDepth1_AllF26
			F27 XUnionDepth1_AllF27
			F28 XUnionDepth1_AllF28
			F29 XUnionDepth1_AllF29
			F30 XUnionDepth1_AllF30
			F31 XUnionDepth1_AllF31
			F32 XUnionDepth1_AllF32
		}
	}
)

func (x XUnionDepth1_AllF0) Index() int                             { return 0 }
func (x XUnionDepth1_AllF0) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF0) Name() string                           { return "F0" }
func (x XUnionDepth1_AllF0) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF1) Index() int                             { return 1 }
func (x XUnionDepth1_AllF1) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF1) Name() string                           { return "F1" }
func (x XUnionDepth1_AllF1) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF2) Index() int                             { return 2 }
func (x XUnionDepth1_AllF2) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF2) Name() string                           { return "F2" }
func (x XUnionDepth1_AllF2) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF3) Index() int                             { return 3 }
func (x XUnionDepth1_AllF3) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF3) Name() string                           { return "F3" }
func (x XUnionDepth1_AllF3) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF4) Index() int                             { return 4 }
func (x XUnionDepth1_AllF4) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF4) Name() string                           { return "F4" }
func (x XUnionDepth1_AllF4) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF5) Index() int                             { return 5 }
func (x XUnionDepth1_AllF5) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF5) Name() string                           { return "F5" }
func (x XUnionDepth1_AllF5) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF6) Index() int                             { return 6 }
func (x XUnionDepth1_AllF6) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF6) Name() string                           { return "F6" }
func (x XUnionDepth1_AllF6) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF7) Index() int                             { return 7 }
func (x XUnionDepth1_AllF7) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF7) Name() string                           { return "F7" }
func (x XUnionDepth1_AllF7) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF8) Index() int                             { return 8 }
func (x XUnionDepth1_AllF8) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF8) Name() string                           { return "F8" }
func (x XUnionDepth1_AllF8) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF9) Index() int                             { return 9 }
func (x XUnionDepth1_AllF9) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF9) Name() string                           { return "F9" }
func (x XUnionDepth1_AllF9) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF10) Index() int                             { return 10 }
func (x XUnionDepth1_AllF10) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF10) Name() string                           { return "F10" }
func (x XUnionDepth1_AllF10) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF11) Index() int                             { return 11 }
func (x XUnionDepth1_AllF11) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF11) Name() string                           { return "F11" }
func (x XUnionDepth1_AllF11) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF12) Index() int                             { return 12 }
func (x XUnionDepth1_AllF12) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF12) Name() string                           { return "F12" }
func (x XUnionDepth1_AllF12) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF13) Index() int                             { return 13 }
func (x XUnionDepth1_AllF13) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF13) Name() string                           { return "F13" }
func (x XUnionDepth1_AllF13) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF14) Index() int                             { return 14 }
func (x XUnionDepth1_AllF14) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF14) Name() string                           { return "F14" }
func (x XUnionDepth1_AllF14) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF15) Index() int                             { return 15 }
func (x XUnionDepth1_AllF15) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF15) Name() string                           { return "F15" }
func (x XUnionDepth1_AllF15) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF16) Index() int                             { return 16 }
func (x XUnionDepth1_AllF16) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF16) Name() string                           { return "F16" }
func (x XUnionDepth1_AllF16) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF17) Index() int                             { return 17 }
func (x XUnionDepth1_AllF17) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF17) Name() string                           { return "F17" }
func (x XUnionDepth1_AllF17) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF18) Index() int                             { return 18 }
func (x XUnionDepth1_AllF18) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF18) Name() string                           { return "F18" }
func (x XUnionDepth1_AllF18) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF19) Index() int                             { return 19 }
func (x XUnionDepth1_AllF19) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF19) Name() string                           { return "F19" }
func (x XUnionDepth1_AllF19) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF20) Index() int                             { return 20 }
func (x XUnionDepth1_AllF20) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF20) Name() string                           { return "F20" }
func (x XUnionDepth1_AllF20) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF21) Index() int                             { return 21 }
func (x XUnionDepth1_AllF21) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF21) Name() string                           { return "F21" }
func (x XUnionDepth1_AllF21) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF22) Index() int                             { return 22 }
func (x XUnionDepth1_AllF22) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF22) Name() string                           { return "F22" }
func (x XUnionDepth1_AllF22) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF23) Index() int                             { return 23 }
func (x XUnionDepth1_AllF23) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF23) Name() string                           { return "F23" }
func (x XUnionDepth1_AllF23) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF24) Index() int                             { return 24 }
func (x XUnionDepth1_AllF24) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF24) Name() string                           { return "F24" }
func (x XUnionDepth1_AllF24) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF25) Index() int                             { return 25 }
func (x XUnionDepth1_AllF25) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF25) Name() string                           { return "F25" }
func (x XUnionDepth1_AllF25) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF26) Index() int                             { return 26 }
func (x XUnionDepth1_AllF26) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF26) Name() string                           { return "F26" }
func (x XUnionDepth1_AllF26) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF27) Index() int                             { return 27 }
func (x XUnionDepth1_AllF27) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF27) Name() string                           { return "F27" }
func (x XUnionDepth1_AllF27) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF28) Index() int                             { return 28 }
func (x XUnionDepth1_AllF28) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF28) Name() string                           { return "F28" }
func (x XUnionDepth1_AllF28) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF29) Index() int                             { return 29 }
func (x XUnionDepth1_AllF29) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF29) Name() string                           { return "F29" }
func (x XUnionDepth1_AllF29) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF30) Index() int                             { return 30 }
func (x XUnionDepth1_AllF30) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF30) Name() string                           { return "F30" }
func (x XUnionDepth1_AllF30) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF31) Index() int                             { return 31 }
func (x XUnionDepth1_AllF31) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF31) Name() string                           { return "F31" }
func (x XUnionDepth1_AllF31) __VDLReflect(__XUnionDepth1_AllReflect) {}

func (x XUnionDepth1_AllF32) Index() int                             { return 32 }
func (x XUnionDepth1_AllF32) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AllF32) Name() string                           { return "F32" }
func (x XUnionDepth1_AllF32) __VDLReflect(__XUnionDepth1_AllReflect) {}

type (
	// XUnionDepth1_Any represents any single field of the XUnionDepth1_Any union type.
	XUnionDepth1_Any interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_Any union type.
		__VDLReflect(__XUnionDepth1_AnyReflect)
	}
	// XUnionDepth1_AnyF0 represents field F0 of the XUnionDepth1_Any union type.
	XUnionDepth1_AnyF0 struct{ Value interface{} }
	// __XUnionDepth1_AnyReflect describes the XUnionDepth1_Any union type.
	__XUnionDepth1_AnyReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_Any"`
		Type  XUnionDepth1_Any
		Union struct {
			F0 XUnionDepth1_AnyF0
		}
	}
)

func (x XUnionDepth1_AnyF0) Index() int                             { return 0 }
func (x XUnionDepth1_AnyF0) Interface() interface{}                 { return x.Value }
func (x XUnionDepth1_AnyF0) Name() string                           { return "F0" }
func (x XUnionDepth1_AnyF0) __VDLReflect(__XUnionDepth1_AnyReflect) {}

type (
	// XUnionDepth1_Bool represents any single field of the XUnionDepth1_Bool union type.
	XUnionDepth1_Bool interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_Bool union type.
		__VDLReflect(__XUnionDepth1_BoolReflect)
	}
	// XUnionDepth1_BoolF1 represents field F1 of the XUnionDepth1_Bool union type.
	XUnionDepth1_BoolF1 struct{ Value bool }
	// __XUnionDepth1_BoolReflect describes the XUnionDepth1_Bool union type.
	__XUnionDepth1_BoolReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_Bool"`
		Type  XUnionDepth1_Bool
		Union struct {
			F1 XUnionDepth1_BoolF1
		}
	}
)

func (x XUnionDepth1_BoolF1) Index() int                              { return 0 }
func (x XUnionDepth1_BoolF1) Interface() interface{}                  { return x.Value }
func (x XUnionDepth1_BoolF1) Name() string                            { return "F1" }
func (x XUnionDepth1_BoolF1) __VDLReflect(__XUnionDepth1_BoolReflect) {}

type (
	// XUnionDepth1_XBool represents any single field of the XUnionDepth1_XBool union type.
	XUnionDepth1_XBool interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_XBool union type.
		__VDLReflect(__XUnionDepth1_XBoolReflect)
	}
	// XUnionDepth1_XBoolF2 represents field F2 of the XUnionDepth1_XBool union type.
	XUnionDepth1_XBoolF2 struct{ Value XBool }
	// __XUnionDepth1_XBoolReflect describes the XUnionDepth1_XBool union type.
	__XUnionDepth1_XBoolReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_XBool"`
		Type  XUnionDepth1_XBool
		Union struct {
			F2 XUnionDepth1_XBoolF2
		}
	}
)

func (x XUnionDepth1_XBoolF2) Index() int                               { return 0 }
func (x XUnionDepth1_XBoolF2) Interface() interface{}                   { return x.Value }
func (x XUnionDepth1_XBoolF2) Name() string                             { return "F2" }
func (x XUnionDepth1_XBoolF2) __VDLReflect(__XUnionDepth1_XBoolReflect) {}

type (
	// XUnionDepth1_String represents any single field of the XUnionDepth1_String union type.
	XUnionDepth1_String interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_String union type.
		__VDLReflect(__XUnionDepth1_StringReflect)
	}
	// XUnionDepth1_StringF3 represents field F3 of the XUnionDepth1_String union type.
	XUnionDepth1_StringF3 struct{ Value string }
	// __XUnionDepth1_StringReflect describes the XUnionDepth1_String union type.
	__XUnionDepth1_StringReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_String"`
		Type  XUnionDepth1_String
		Union struct {
			F3 XUnionDepth1_StringF3
		}
	}
)

func (x XUnionDepth1_StringF3) Index() int                                { return 0 }
func (x XUnionDepth1_StringF3) Interface() interface{}                    { return x.Value }
func (x XUnionDepth1_StringF3) Name() string                              { return "F3" }
func (x XUnionDepth1_StringF3) __VDLReflect(__XUnionDepth1_StringReflect) {}

type (
	// XUnionDepth1_XString represents any single field of the XUnionDepth1_XString union type.
	XUnionDepth1_XString interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_XString union type.
		__VDLReflect(__XUnionDepth1_XStringReflect)
	}
	// XUnionDepth1_XStringF4 represents field F4 of the XUnionDepth1_XString union type.
	XUnionDepth1_XStringF4 struct{ Value XString }
	// __XUnionDepth1_XStringReflect describes the XUnionDepth1_XString union type.
	__XUnionDepth1_XStringReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_XString"`
		Type  XUnionDepth1_XString
		Union struct {
			F4 XUnionDepth1_XStringF4
		}
	}
)

func (x XUnionDepth1_XStringF4) Index() int                                 { return 0 }
func (x XUnionDepth1_XStringF4) Interface() interface{}                     { return x.Value }
func (x XUnionDepth1_XStringF4) Name() string                               { return "F4" }
func (x XUnionDepth1_XStringF4) __VDLReflect(__XUnionDepth1_XStringReflect) {}

type (
	// XUnionDepth1_TypeObject represents any single field of the XUnionDepth1_TypeObject union type.
	XUnionDepth1_TypeObject interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_TypeObject union type.
		__VDLReflect(__XUnionDepth1_TypeObjectReflect)
	}
	// XUnionDepth1_TypeObjectF5 represents field F5 of the XUnionDepth1_TypeObject union type.
	XUnionDepth1_TypeObjectF5 struct{ Value *vdl.Type }
	// __XUnionDepth1_TypeObjectReflect describes the XUnionDepth1_TypeObject union type.
	__XUnionDepth1_TypeObjectReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_TypeObject"`
		Type  XUnionDepth1_TypeObject
		Union struct {
			F5 XUnionDepth1_TypeObjectF5
		}
	}
)

func (x XUnionDepth1_TypeObjectF5) Index() int                                    { return 0 }
func (x XUnionDepth1_TypeObjectF5) Interface() interface{}                        { return x.Value }
func (x XUnionDepth1_TypeObjectF5) Name() string                                  { return "F5" }
func (x XUnionDepth1_TypeObjectF5) __VDLReflect(__XUnionDepth1_TypeObjectReflect) {}

type (
	// XUnionDepth1_Byte represents any single field of the XUnionDepth1_Byte union type.
	XUnionDepth1_Byte interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_Byte union type.
		__VDLReflect(__XUnionDepth1_ByteReflect)
	}
	// XUnionDepth1_ByteF6 represents field F6 of the XUnionDepth1_Byte union type.
	XUnionDepth1_ByteF6 struct{ Value byte }
	// __XUnionDepth1_ByteReflect describes the XUnionDepth1_Byte union type.
	__XUnionDepth1_ByteReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_Byte"`
		Type  XUnionDepth1_Byte
		Union struct {
			F6 XUnionDepth1_ByteF6
		}
	}
)

func (x XUnionDepth1_ByteF6) Index() int                              { return 0 }
func (x XUnionDepth1_ByteF6) Interface() interface{}                  { return x.Value }
func (x XUnionDepth1_ByteF6) Name() string                            { return "F6" }
func (x XUnionDepth1_ByteF6) __VDLReflect(__XUnionDepth1_ByteReflect) {}

type (
	// XUnionDepth1_XByte represents any single field of the XUnionDepth1_XByte union type.
	XUnionDepth1_XByte interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_XByte union type.
		__VDLReflect(__XUnionDepth1_XByteReflect)
	}
	// XUnionDepth1_XByteF7 represents field F7 of the XUnionDepth1_XByte union type.
	XUnionDepth1_XByteF7 struct{ Value XByte }
	// __XUnionDepth1_XByteReflect describes the XUnionDepth1_XByte union type.
	__XUnionDepth1_XByteReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_XByte"`
		Type  XUnionDepth1_XByte
		Union struct {
			F7 XUnionDepth1_XByteF7
		}
	}
)

func (x XUnionDepth1_XByteF7) Index() int                               { return 0 }
func (x XUnionDepth1_XByteF7) Interface() interface{}                   { return x.Value }
func (x XUnionDepth1_XByteF7) Name() string                             { return "F7" }
func (x XUnionDepth1_XByteF7) __VDLReflect(__XUnionDepth1_XByteReflect) {}

type (
	// XUnionDepth1_XEnumAbc represents any single field of the XUnionDepth1_XEnumAbc union type.
	XUnionDepth1_XEnumAbc interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_XEnumAbc union type.
		__VDLReflect(__XUnionDepth1_XEnumAbcReflect)
	}
	// XUnionDepth1_XEnumAbcF8 represents field F8 of the XUnionDepth1_XEnumAbc union type.
	XUnionDepth1_XEnumAbcF8 struct{ Value XEnumAbc }
	// __XUnionDepth1_XEnumAbcReflect describes the XUnionDepth1_XEnumAbc union type.
	__XUnionDepth1_XEnumAbcReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_XEnumAbc"`
		Type  XUnionDepth1_XEnumAbc
		Union struct {
			F8 XUnionDepth1_XEnumAbcF8
		}
	}
)

func (x XUnionDepth1_XEnumAbcF8) Index() int                                  { return 0 }
func (x XUnionDepth1_XEnumAbcF8) Interface() interface{}                      { return x.Value }
func (x XUnionDepth1_XEnumAbcF8) Name() string                                { return "F8" }
func (x XUnionDepth1_XEnumAbcF8) __VDLReflect(__XUnionDepth1_XEnumAbcReflect) {}

type (
	// XUnionDepth1_XEnumBcd represents any single field of the XUnionDepth1_XEnumBcd union type.
	XUnionDepth1_XEnumBcd interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_XEnumBcd union type.
		__VDLReflect(__XUnionDepth1_XEnumBcdReflect)
	}
	// XUnionDepth1_XEnumBcdF9 represents field F9 of the XUnionDepth1_XEnumBcd union type.
	XUnionDepth1_XEnumBcdF9 struct{ Value XEnumBcd }
	// __XUnionDepth1_XEnumBcdReflect describes the XUnionDepth1_XEnumBcd union type.
	__XUnionDepth1_XEnumBcdReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_XEnumBcd"`
		Type  XUnionDepth1_XEnumBcd
		Union struct {
			F9 XUnionDepth1_XEnumBcdF9
		}
	}
)

func (x XUnionDepth1_XEnumBcdF9) Index() int                                  { return 0 }
func (x XUnionDepth1_XEnumBcdF9) Interface() interface{}                      { return x.Value }
func (x XUnionDepth1_XEnumBcdF9) Name() string                                { return "F9" }
func (x XUnionDepth1_XEnumBcdF9) __VDLReflect(__XUnionDepth1_XEnumBcdReflect) {}

type (
	// XUnionDepth1_XStructEmpty represents any single field of the XUnionDepth1_XStructEmpty union type.
	XUnionDepth1_XStructEmpty interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_XStructEmpty union type.
		__VDLReflect(__XUnionDepth1_XStructEmptyReflect)
	}
	// XUnionDepth1_XStructEmptyF10 represents field F10 of the XUnionDepth1_XStructEmpty union type.
	XUnionDepth1_XStructEmptyF10 struct{ Value XStructEmpty }
	// __XUnionDepth1_XStructEmptyReflect describes the XUnionDepth1_XStructEmpty union type.
	__XUnionDepth1_XStructEmptyReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_XStructEmpty"`
		Type  XUnionDepth1_XStructEmpty
		Union struct {
			F10 XUnionDepth1_XStructEmptyF10
		}
	}
)

func (x XUnionDepth1_XStructEmptyF10) Index() int                                      { return 0 }
func (x XUnionDepth1_XStructEmptyF10) Interface() interface{}                          { return x.Value }
func (x XUnionDepth1_XStructEmptyF10) Name() string                                    { return "F10" }
func (x XUnionDepth1_XStructEmptyF10) __VDLReflect(__XUnionDepth1_XStructEmptyReflect) {}

type (
	// XUnionDepth1_XNamedError represents any single field of the XUnionDepth1_XNamedError union type.
	XUnionDepth1_XNamedError interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_XNamedError union type.
		__VDLReflect(__XUnionDepth1_XNamedErrorReflect)
	}
	// XUnionDepth1_XNamedErrorF11 represents field F11 of the XUnionDepth1_XNamedError union type.
	XUnionDepth1_XNamedErrorF11 struct{ Value XNamedError }
	// __XUnionDepth1_XNamedErrorReflect describes the XUnionDepth1_XNamedError union type.
	__XUnionDepth1_XNamedErrorReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_XNamedError"`
		Type  XUnionDepth1_XNamedError
		Union struct {
			F11 XUnionDepth1_XNamedErrorF11
		}
	}
)

func (x XUnionDepth1_XNamedErrorF11) Index() int                                     { return 0 }
func (x XUnionDepth1_XNamedErrorF11) Interface() interface{}                         { return x.Value }
func (x XUnionDepth1_XNamedErrorF11) Name() string                                   { return "F11" }
func (x XUnionDepth1_XNamedErrorF11) __VDLReflect(__XUnionDepth1_XNamedErrorReflect) {}

type (
	// XUnionDepth1_Error represents any single field of the XUnionDepth1_Error union type.
	XUnionDepth1_Error interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_Error union type.
		__VDLReflect(__XUnionDepth1_ErrorReflect)
	}
	// XUnionDepth1_ErrorF12 represents field F12 of the XUnionDepth1_Error union type.
	XUnionDepth1_ErrorF12 struct{ Value error }
	// __XUnionDepth1_ErrorReflect describes the XUnionDepth1_Error union type.
	__XUnionDepth1_ErrorReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_Error"`
		Type  XUnionDepth1_Error
		Union struct {
			F12 XUnionDepth1_ErrorF12
		}
	}
)

func (x XUnionDepth1_ErrorF12) Index() int                               { return 0 }
func (x XUnionDepth1_ErrorF12) Interface() interface{}                   { return x.Value }
func (x XUnionDepth1_ErrorF12) Name() string                             { return "F12" }
func (x XUnionDepth1_ErrorF12) __VDLReflect(__XUnionDepth1_ErrorReflect) {}

type (
	// XUnionDepth1_Uint16 represents any single field of the XUnionDepth1_Uint16 union type.
	XUnionDepth1_Uint16 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_Uint16 union type.
		__VDLReflect(__XUnionDepth1_Uint16Reflect)
	}
	// XUnionDepth1_Uint16F13 represents field F13 of the XUnionDepth1_Uint16 union type.
	XUnionDepth1_Uint16F13 struct{ Value uint16 }
	// __XUnionDepth1_Uint16Reflect describes the XUnionDepth1_Uint16 union type.
	__XUnionDepth1_Uint16Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_Uint16"`
		Type  XUnionDepth1_Uint16
		Union struct {
			F13 XUnionDepth1_Uint16F13
		}
	}
)

func (x XUnionDepth1_Uint16F13) Index() int                                { return 0 }
func (x XUnionDepth1_Uint16F13) Interface() interface{}                    { return x.Value }
func (x XUnionDepth1_Uint16F13) Name() string                              { return "F13" }
func (x XUnionDepth1_Uint16F13) __VDLReflect(__XUnionDepth1_Uint16Reflect) {}

type (
	// XUnionDepth1_XUint16 represents any single field of the XUnionDepth1_XUint16 union type.
	XUnionDepth1_XUint16 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_XUint16 union type.
		__VDLReflect(__XUnionDepth1_XUint16Reflect)
	}
	// XUnionDepth1_XUint16F14 represents field F14 of the XUnionDepth1_XUint16 union type.
	XUnionDepth1_XUint16F14 struct{ Value XUint16 }
	// __XUnionDepth1_XUint16Reflect describes the XUnionDepth1_XUint16 union type.
	__XUnionDepth1_XUint16Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_XUint16"`
		Type  XUnionDepth1_XUint16
		Union struct {
			F14 XUnionDepth1_XUint16F14
		}
	}
)

func (x XUnionDepth1_XUint16F14) Index() int                                 { return 0 }
func (x XUnionDepth1_XUint16F14) Interface() interface{}                     { return x.Value }
func (x XUnionDepth1_XUint16F14) Name() string                               { return "F14" }
func (x XUnionDepth1_XUint16F14) __VDLReflect(__XUnionDepth1_XUint16Reflect) {}

type (
	// XUnionDepth1_Uint32 represents any single field of the XUnionDepth1_Uint32 union type.
	XUnionDepth1_Uint32 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_Uint32 union type.
		__VDLReflect(__XUnionDepth1_Uint32Reflect)
	}
	// XUnionDepth1_Uint32F15 represents field F15 of the XUnionDepth1_Uint32 union type.
	XUnionDepth1_Uint32F15 struct{ Value uint32 }
	// __XUnionDepth1_Uint32Reflect describes the XUnionDepth1_Uint32 union type.
	__XUnionDepth1_Uint32Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_Uint32"`
		Type  XUnionDepth1_Uint32
		Union struct {
			F15 XUnionDepth1_Uint32F15
		}
	}
)

func (x XUnionDepth1_Uint32F15) Index() int                                { return 0 }
func (x XUnionDepth1_Uint32F15) Interface() interface{}                    { return x.Value }
func (x XUnionDepth1_Uint32F15) Name() string                              { return "F15" }
func (x XUnionDepth1_Uint32F15) __VDLReflect(__XUnionDepth1_Uint32Reflect) {}

type (
	// XUnionDepth1_XUint32 represents any single field of the XUnionDepth1_XUint32 union type.
	XUnionDepth1_XUint32 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_XUint32 union type.
		__VDLReflect(__XUnionDepth1_XUint32Reflect)
	}
	// XUnionDepth1_XUint32F16 represents field F16 of the XUnionDepth1_XUint32 union type.
	XUnionDepth1_XUint32F16 struct{ Value XUint32 }
	// __XUnionDepth1_XUint32Reflect describes the XUnionDepth1_XUint32 union type.
	__XUnionDepth1_XUint32Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_XUint32"`
		Type  XUnionDepth1_XUint32
		Union struct {
			F16 XUnionDepth1_XUint32F16
		}
	}
)

func (x XUnionDepth1_XUint32F16) Index() int                                 { return 0 }
func (x XUnionDepth1_XUint32F16) Interface() interface{}                     { return x.Value }
func (x XUnionDepth1_XUint32F16) Name() string                               { return "F16" }
func (x XUnionDepth1_XUint32F16) __VDLReflect(__XUnionDepth1_XUint32Reflect) {}

type (
	// XUnionDepth1_Uint64 represents any single field of the XUnionDepth1_Uint64 union type.
	XUnionDepth1_Uint64 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_Uint64 union type.
		__VDLReflect(__XUnionDepth1_Uint64Reflect)
	}
	// XUnionDepth1_Uint64F17 represents field F17 of the XUnionDepth1_Uint64 union type.
	XUnionDepth1_Uint64F17 struct{ Value uint64 }
	// __XUnionDepth1_Uint64Reflect describes the XUnionDepth1_Uint64 union type.
	__XUnionDepth1_Uint64Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_Uint64"`
		Type  XUnionDepth1_Uint64
		Union struct {
			F17 XUnionDepth1_Uint64F17
		}
	}
)

func (x XUnionDepth1_Uint64F17) Index() int                                { return 0 }
func (x XUnionDepth1_Uint64F17) Interface() interface{}                    { return x.Value }
func (x XUnionDepth1_Uint64F17) Name() string                              { return "F17" }
func (x XUnionDepth1_Uint64F17) __VDLReflect(__XUnionDepth1_Uint64Reflect) {}

type (
	// XUnionDepth1_XUint64 represents any single field of the XUnionDepth1_XUint64 union type.
	XUnionDepth1_XUint64 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_XUint64 union type.
		__VDLReflect(__XUnionDepth1_XUint64Reflect)
	}
	// XUnionDepth1_XUint64F18 represents field F18 of the XUnionDepth1_XUint64 union type.
	XUnionDepth1_XUint64F18 struct{ Value XUint64 }
	// __XUnionDepth1_XUint64Reflect describes the XUnionDepth1_XUint64 union type.
	__XUnionDepth1_XUint64Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_XUint64"`
		Type  XUnionDepth1_XUint64
		Union struct {
			F18 XUnionDepth1_XUint64F18
		}
	}
)

func (x XUnionDepth1_XUint64F18) Index() int                                 { return 0 }
func (x XUnionDepth1_XUint64F18) Interface() interface{}                     { return x.Value }
func (x XUnionDepth1_XUint64F18) Name() string                               { return "F18" }
func (x XUnionDepth1_XUint64F18) __VDLReflect(__XUnionDepth1_XUint64Reflect) {}

type (
	// XUnionDepth1_Int8 represents any single field of the XUnionDepth1_Int8 union type.
	XUnionDepth1_Int8 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_Int8 union type.
		__VDLReflect(__XUnionDepth1_Int8Reflect)
	}
	// XUnionDepth1_Int8F19 represents field F19 of the XUnionDepth1_Int8 union type.
	XUnionDepth1_Int8F19 struct{ Value int8 }
	// __XUnionDepth1_Int8Reflect describes the XUnionDepth1_Int8 union type.
	__XUnionDepth1_Int8Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_Int8"`
		Type  XUnionDepth1_Int8
		Union struct {
			F19 XUnionDepth1_Int8F19
		}
	}
)

func (x XUnionDepth1_Int8F19) Index() int                              { return 0 }
func (x XUnionDepth1_Int8F19) Interface() interface{}                  { return x.Value }
func (x XUnionDepth1_Int8F19) Name() string                            { return "F19" }
func (x XUnionDepth1_Int8F19) __VDLReflect(__XUnionDepth1_Int8Reflect) {}

type (
	// XUnionDepth1_XInt8 represents any single field of the XUnionDepth1_XInt8 union type.
	XUnionDepth1_XInt8 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_XInt8 union type.
		__VDLReflect(__XUnionDepth1_XInt8Reflect)
	}
	// XUnionDepth1_XInt8F20 represents field F20 of the XUnionDepth1_XInt8 union type.
	XUnionDepth1_XInt8F20 struct{ Value XInt8 }
	// __XUnionDepth1_XInt8Reflect describes the XUnionDepth1_XInt8 union type.
	__XUnionDepth1_XInt8Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_XInt8"`
		Type  XUnionDepth1_XInt8
		Union struct {
			F20 XUnionDepth1_XInt8F20
		}
	}
)

func (x XUnionDepth1_XInt8F20) Index() int                               { return 0 }
func (x XUnionDepth1_XInt8F20) Interface() interface{}                   { return x.Value }
func (x XUnionDepth1_XInt8F20) Name() string                             { return "F20" }
func (x XUnionDepth1_XInt8F20) __VDLReflect(__XUnionDepth1_XInt8Reflect) {}

type (
	// XUnionDepth1_Int16 represents any single field of the XUnionDepth1_Int16 union type.
	XUnionDepth1_Int16 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_Int16 union type.
		__VDLReflect(__XUnionDepth1_Int16Reflect)
	}
	// XUnionDepth1_Int16F21 represents field F21 of the XUnionDepth1_Int16 union type.
	XUnionDepth1_Int16F21 struct{ Value int16 }
	// __XUnionDepth1_Int16Reflect describes the XUnionDepth1_Int16 union type.
	__XUnionDepth1_Int16Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_Int16"`
		Type  XUnionDepth1_Int16
		Union struct {
			F21 XUnionDepth1_Int16F21
		}
	}
)

func (x XUnionDepth1_Int16F21) Index() int                               { return 0 }
func (x XUnionDepth1_Int16F21) Interface() interface{}                   { return x.Value }
func (x XUnionDepth1_Int16F21) Name() string                             { return "F21" }
func (x XUnionDepth1_Int16F21) __VDLReflect(__XUnionDepth1_Int16Reflect) {}

type (
	// XUnionDepth1_XInt16 represents any single field of the XUnionDepth1_XInt16 union type.
	XUnionDepth1_XInt16 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_XInt16 union type.
		__VDLReflect(__XUnionDepth1_XInt16Reflect)
	}
	// XUnionDepth1_XInt16F22 represents field F22 of the XUnionDepth1_XInt16 union type.
	XUnionDepth1_XInt16F22 struct{ Value XInt16 }
	// __XUnionDepth1_XInt16Reflect describes the XUnionDepth1_XInt16 union type.
	__XUnionDepth1_XInt16Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_XInt16"`
		Type  XUnionDepth1_XInt16
		Union struct {
			F22 XUnionDepth1_XInt16F22
		}
	}
)

func (x XUnionDepth1_XInt16F22) Index() int                                { return 0 }
func (x XUnionDepth1_XInt16F22) Interface() interface{}                    { return x.Value }
func (x XUnionDepth1_XInt16F22) Name() string                              { return "F22" }
func (x XUnionDepth1_XInt16F22) __VDLReflect(__XUnionDepth1_XInt16Reflect) {}

type (
	// XUnionDepth1_Int32 represents any single field of the XUnionDepth1_Int32 union type.
	XUnionDepth1_Int32 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_Int32 union type.
		__VDLReflect(__XUnionDepth1_Int32Reflect)
	}
	// XUnionDepth1_Int32F23 represents field F23 of the XUnionDepth1_Int32 union type.
	XUnionDepth1_Int32F23 struct{ Value int32 }
	// __XUnionDepth1_Int32Reflect describes the XUnionDepth1_Int32 union type.
	__XUnionDepth1_Int32Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_Int32"`
		Type  XUnionDepth1_Int32
		Union struct {
			F23 XUnionDepth1_Int32F23
		}
	}
)

func (x XUnionDepth1_Int32F23) Index() int                               { return 0 }
func (x XUnionDepth1_Int32F23) Interface() interface{}                   { return x.Value }
func (x XUnionDepth1_Int32F23) Name() string                             { return "F23" }
func (x XUnionDepth1_Int32F23) __VDLReflect(__XUnionDepth1_Int32Reflect) {}

type (
	// XUnionDepth1_XInt32 represents any single field of the XUnionDepth1_XInt32 union type.
	XUnionDepth1_XInt32 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_XInt32 union type.
		__VDLReflect(__XUnionDepth1_XInt32Reflect)
	}
	// XUnionDepth1_XInt32F24 represents field F24 of the XUnionDepth1_XInt32 union type.
	XUnionDepth1_XInt32F24 struct{ Value XInt32 }
	// __XUnionDepth1_XInt32Reflect describes the XUnionDepth1_XInt32 union type.
	__XUnionDepth1_XInt32Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_XInt32"`
		Type  XUnionDepth1_XInt32
		Union struct {
			F24 XUnionDepth1_XInt32F24
		}
	}
)

func (x XUnionDepth1_XInt32F24) Index() int                                { return 0 }
func (x XUnionDepth1_XInt32F24) Interface() interface{}                    { return x.Value }
func (x XUnionDepth1_XInt32F24) Name() string                              { return "F24" }
func (x XUnionDepth1_XInt32F24) __VDLReflect(__XUnionDepth1_XInt32Reflect) {}

type (
	// XUnionDepth1_Int64 represents any single field of the XUnionDepth1_Int64 union type.
	XUnionDepth1_Int64 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_Int64 union type.
		__VDLReflect(__XUnionDepth1_Int64Reflect)
	}
	// XUnionDepth1_Int64F25 represents field F25 of the XUnionDepth1_Int64 union type.
	XUnionDepth1_Int64F25 struct{ Value int64 }
	// __XUnionDepth1_Int64Reflect describes the XUnionDepth1_Int64 union type.
	__XUnionDepth1_Int64Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_Int64"`
		Type  XUnionDepth1_Int64
		Union struct {
			F25 XUnionDepth1_Int64F25
		}
	}
)

func (x XUnionDepth1_Int64F25) Index() int                               { return 0 }
func (x XUnionDepth1_Int64F25) Interface() interface{}                   { return x.Value }
func (x XUnionDepth1_Int64F25) Name() string                             { return "F25" }
func (x XUnionDepth1_Int64F25) __VDLReflect(__XUnionDepth1_Int64Reflect) {}

type (
	// XUnionDepth1_XInt64 represents any single field of the XUnionDepth1_XInt64 union type.
	XUnionDepth1_XInt64 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_XInt64 union type.
		__VDLReflect(__XUnionDepth1_XInt64Reflect)
	}
	// XUnionDepth1_XInt64F26 represents field F26 of the XUnionDepth1_XInt64 union type.
	XUnionDepth1_XInt64F26 struct{ Value XInt64 }
	// __XUnionDepth1_XInt64Reflect describes the XUnionDepth1_XInt64 union type.
	__XUnionDepth1_XInt64Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_XInt64"`
		Type  XUnionDepth1_XInt64
		Union struct {
			F26 XUnionDepth1_XInt64F26
		}
	}
)

func (x XUnionDepth1_XInt64F26) Index() int                                { return 0 }
func (x XUnionDepth1_XInt64F26) Interface() interface{}                    { return x.Value }
func (x XUnionDepth1_XInt64F26) Name() string                              { return "F26" }
func (x XUnionDepth1_XInt64F26) __VDLReflect(__XUnionDepth1_XInt64Reflect) {}

type (
	// XUnionDepth1_Float32 represents any single field of the XUnionDepth1_Float32 union type.
	XUnionDepth1_Float32 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_Float32 union type.
		__VDLReflect(__XUnionDepth1_Float32Reflect)
	}
	// XUnionDepth1_Float32F27 represents field F27 of the XUnionDepth1_Float32 union type.
	XUnionDepth1_Float32F27 struct{ Value float32 }
	// __XUnionDepth1_Float32Reflect describes the XUnionDepth1_Float32 union type.
	__XUnionDepth1_Float32Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_Float32"`
		Type  XUnionDepth1_Float32
		Union struct {
			F27 XUnionDepth1_Float32F27
		}
	}
)

func (x XUnionDepth1_Float32F27) Index() int                                 { return 0 }
func (x XUnionDepth1_Float32F27) Interface() interface{}                     { return x.Value }
func (x XUnionDepth1_Float32F27) Name() string                               { return "F27" }
func (x XUnionDepth1_Float32F27) __VDLReflect(__XUnionDepth1_Float32Reflect) {}

type (
	// XUnionDepth1_XFloat32 represents any single field of the XUnionDepth1_XFloat32 union type.
	XUnionDepth1_XFloat32 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_XFloat32 union type.
		__VDLReflect(__XUnionDepth1_XFloat32Reflect)
	}
	// XUnionDepth1_XFloat32F28 represents field F28 of the XUnionDepth1_XFloat32 union type.
	XUnionDepth1_XFloat32F28 struct{ Value XFloat32 }
	// __XUnionDepth1_XFloat32Reflect describes the XUnionDepth1_XFloat32 union type.
	__XUnionDepth1_XFloat32Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_XFloat32"`
		Type  XUnionDepth1_XFloat32
		Union struct {
			F28 XUnionDepth1_XFloat32F28
		}
	}
)

func (x XUnionDepth1_XFloat32F28) Index() int                                  { return 0 }
func (x XUnionDepth1_XFloat32F28) Interface() interface{}                      { return x.Value }
func (x XUnionDepth1_XFloat32F28) Name() string                                { return "F28" }
func (x XUnionDepth1_XFloat32F28) __VDLReflect(__XUnionDepth1_XFloat32Reflect) {}

type (
	// XUnionDepth1_Float64 represents any single field of the XUnionDepth1_Float64 union type.
	XUnionDepth1_Float64 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_Float64 union type.
		__VDLReflect(__XUnionDepth1_Float64Reflect)
	}
	// XUnionDepth1_Float64F29 represents field F29 of the XUnionDepth1_Float64 union type.
	XUnionDepth1_Float64F29 struct{ Value float64 }
	// __XUnionDepth1_Float64Reflect describes the XUnionDepth1_Float64 union type.
	__XUnionDepth1_Float64Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_Float64"`
		Type  XUnionDepth1_Float64
		Union struct {
			F29 XUnionDepth1_Float64F29
		}
	}
)

func (x XUnionDepth1_Float64F29) Index() int                                 { return 0 }
func (x XUnionDepth1_Float64F29) Interface() interface{}                     { return x.Value }
func (x XUnionDepth1_Float64F29) Name() string                               { return "F29" }
func (x XUnionDepth1_Float64F29) __VDLReflect(__XUnionDepth1_Float64Reflect) {}

type (
	// XUnionDepth1_XFloat64 represents any single field of the XUnionDepth1_XFloat64 union type.
	XUnionDepth1_XFloat64 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_XFloat64 union type.
		__VDLReflect(__XUnionDepth1_XFloat64Reflect)
	}
	// XUnionDepth1_XFloat64F30 represents field F30 of the XUnionDepth1_XFloat64 union type.
	XUnionDepth1_XFloat64F30 struct{ Value XFloat64 }
	// __XUnionDepth1_XFloat64Reflect describes the XUnionDepth1_XFloat64 union type.
	__XUnionDepth1_XFloat64Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_XFloat64"`
		Type  XUnionDepth1_XFloat64
		Union struct {
			F30 XUnionDepth1_XFloat64F30
		}
	}
)

func (x XUnionDepth1_XFloat64F30) Index() int                                  { return 0 }
func (x XUnionDepth1_XFloat64F30) Interface() interface{}                      { return x.Value }
func (x XUnionDepth1_XFloat64F30) Name() string                                { return "F30" }
func (x XUnionDepth1_XFloat64F30) __VDLReflect(__XUnionDepth1_XFloat64Reflect) {}

type (
	// XUnionDepth1_OptXStructEmpty represents any single field of the XUnionDepth1_OptXStructEmpty union type.
	XUnionDepth1_OptXStructEmpty interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_OptXStructEmpty union type.
		__VDLReflect(__XUnionDepth1_OptXStructEmptyReflect)
	}
	// XUnionDepth1_OptXStructEmptyF31 represents field F31 of the XUnionDepth1_OptXStructEmpty union type.
	XUnionDepth1_OptXStructEmptyF31 struct{ Value *XStructEmpty }
	// __XUnionDepth1_OptXStructEmptyReflect describes the XUnionDepth1_OptXStructEmpty union type.
	__XUnionDepth1_OptXStructEmptyReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_OptXStructEmpty"`
		Type  XUnionDepth1_OptXStructEmpty
		Union struct {
			F31 XUnionDepth1_OptXStructEmptyF31
		}
	}
)

func (x XUnionDepth1_OptXStructEmptyF31) Index() int                                         { return 0 }
func (x XUnionDepth1_OptXStructEmptyF31) Interface() interface{}                             { return x.Value }
func (x XUnionDepth1_OptXStructEmptyF31) Name() string                                       { return "F31" }
func (x XUnionDepth1_OptXStructEmptyF31) __VDLReflect(__XUnionDepth1_OptXStructEmptyReflect) {}

type (
	// XUnionDepth1_OptXNamedError represents any single field of the XUnionDepth1_OptXNamedError union type.
	XUnionDepth1_OptXNamedError interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth1_OptXNamedError union type.
		__VDLReflect(__XUnionDepth1_OptXNamedErrorReflect)
	}
	// XUnionDepth1_OptXNamedErrorF32 represents field F32 of the XUnionDepth1_OptXNamedError union type.
	XUnionDepth1_OptXNamedErrorF32 struct{ Value *XNamedError }
	// __XUnionDepth1_OptXNamedErrorReflect describes the XUnionDepth1_OptXNamedError union type.
	__XUnionDepth1_OptXNamedErrorReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth1_OptXNamedError"`
		Type  XUnionDepth1_OptXNamedError
		Union struct {
			F32 XUnionDepth1_OptXNamedErrorF32
		}
	}
)

func (x XUnionDepth1_OptXNamedErrorF32) Index() int                                        { return 0 }
func (x XUnionDepth1_OptXNamedErrorF32) Interface() interface{}                            { return x.Value }
func (x XUnionDepth1_OptXNamedErrorF32) Name() string                                      { return "F32" }
func (x XUnionDepth1_OptXNamedErrorF32) __VDLReflect(__XUnionDepth1_OptXNamedErrorReflect) {}

type XArray1_XArray3_Int64 [1]XArray3_Int64

func (XArray1_XArray3_Int64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray1_XArray3_Int64"`
}) {
}

type XArray1_XList_Byte [1]XList_Byte

func (XArray1_XList_Byte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray1_XList_Byte"`
}) {
}

type XArray1_Set_XEnumBcd [1]map[XEnumBcd]struct{}

func (XArray1_Set_XEnumBcd) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray1_Set_XEnumBcd"`
}) {
}

type XArray2_Map_Byte_Byte [2]map[byte]byte

func (XArray2_Map_Byte_Byte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray2_Map_Byte_Byte"`
}) {
}

type XArray2_XStructDepth1_All [2]XStructDepth1_All

func (XArray2_XStructDepth1_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray2_XStructDepth1_All"`
}) {
}

type XArray3_XUnionDepth1_All [3]XUnionDepth1_All

func (XArray3_XUnionDepth1_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray3_XUnionDepth1_All"`
}) {
}

type XArray3_OptXStructDepth1_XFloat32 [3]*XStructDepth1_XFloat32

func (XArray3_OptXStructDepth1_XFloat32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray3_OptXStructDepth1_XFloat32"`
}) {
}

type XList_XArray1_XStructEmpty []XArray1_XStructEmpty

func (XList_XArray1_XStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_XArray1_XStructEmpty"`
}) {
}

type XList_List_XString [][]XString

func (XList_List_XString) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_List_XString"`
}) {
}

type XList_Set_XBool []map[XBool]struct{}

func (XList_Set_XBool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_Set_XBool"`
}) {
}

type XList_XMap_Byte_Byte []XMap_Byte_Byte

func (XList_XMap_Byte_Byte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_XMap_Byte_Byte"`
}) {
}

type XList_XStructDepth1_All []XStructDepth1_All

func (XList_XStructDepth1_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_XStructDepth1_All"`
}) {
}

type XList_XUnionDepth1_All []XUnionDepth1_All

func (XList_XUnionDepth1_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_XUnionDepth1_All"`
}) {
}

type XList_OptXStructDepth1_XEnumBcd []*XStructDepth1_XEnumBcd

func (XList_OptXStructDepth1_XEnumBcd) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_OptXStructDepth1_XEnumBcd"`
}) {
}

type XSet_XArray1_XStructEmpty map[XArray1_XStructEmpty]struct{}

func (XSet_XArray1_XStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XSet_XArray1_XStructEmpty"`
}) {
}

type XSet_XStructDepth1_XFloat64 map[XStructDepth1_XFloat64]struct{}

func (XSet_XStructDepth1_XFloat64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XSet_XStructDepth1_XFloat64"`
}) {
}

type XSet_XUnionDepth1_XInt8 map[XUnionDepth1_XInt8]struct{}

func (XSet_XUnionDepth1_XInt8) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XSet_XUnionDepth1_XInt8"`
}) {
}

type XMap_XArray3_XBool_XArray3_XBool map[XArray3_XBool]XArray3_XBool

func (XMap_XArray3_XBool_XArray3_XBool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XMap_XArray3_XBool_XArray3_XBool"`
}) {
}

type XMap_XStructDepth1_XBool_XStructDepth1_XBool map[XStructDepth1_XBool]XStructDepth1_XBool

func (XMap_XStructDepth1_XBool_XStructDepth1_XBool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XMap_XStructDepth1_XBool_XStructDepth1_XBool"`
}) {
}

type XMap_XUnionDepth1_XUint64_XUnionDepth1_XUint64 map[XUnionDepth1_XUint64]XUnionDepth1_XUint64

func (XMap_XUnionDepth1_XUint64_XUnionDepth1_XUint64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XMap_XUnionDepth1_XUint64_XUnionDepth1_XUint64"`
}) {
}

type XStructDepth2_All struct {
	F0  XArray2_TypeObject
	F1  XArray1_Uint32
	F2  []int16
	F3  XList_Any
	F4  map[float64]struct{}
	F5  XSet_XEnumBcd
	F6  map[byte]byte
	F7  map[uint32]uint32
	F8  XStructDepth1_All
	F9  XStructDepth1_Bool
	F10 XUnionDepth1_All
	F11 XUnionDepth1_Float64
	F12 *XStructDepth1_XEnumBcd
	F13 *XStructDepth1_XUint16
}

func (XStructDepth2_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth2_All"`
}) {
}

type XStructDepth2_XArray2_TypeObject struct {
	F0 XArray2_TypeObject
}

func (XStructDepth2_XArray2_TypeObject) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth2_XArray2_TypeObject"`
}) {
}

type XStructDepth2_XArray1_Uint32 struct {
	F1 XArray1_Uint32
}

func (XStructDepth2_XArray1_Uint32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth2_XArray1_Uint32"`
}) {
}

type XStructDepth2_List_Int16 struct {
	F2 []int16
}

func (XStructDepth2_List_Int16) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth2_List_Int16"`
}) {
}

type XStructDepth2_XList_Any struct {
	F3 XList_Any
}

func (XStructDepth2_XList_Any) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth2_XList_Any"`
}) {
}

type XStructDepth2_Set_Float64 struct {
	F4 map[float64]struct{}
}

func (XStructDepth2_Set_Float64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth2_Set_Float64"`
}) {
}

type XStructDepth2_XSet_XEnumBcd struct {
	F5 XSet_XEnumBcd
}

func (XStructDepth2_XSet_XEnumBcd) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth2_XSet_XEnumBcd"`
}) {
}

type XStructDepth2_Map_Byte_Byte struct {
	F6 map[byte]byte
}

func (XStructDepth2_Map_Byte_Byte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth2_Map_Byte_Byte"`
}) {
}

type XStructDepth2_Map_Uint32_Uint32 struct {
	F7 map[uint32]uint32
}

func (XStructDepth2_Map_Uint32_Uint32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth2_Map_Uint32_Uint32"`
}) {
}

type XStructDepth2_XStructDepth1_All struct {
	F8 XStructDepth1_All
}

func (XStructDepth2_XStructDepth1_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth2_XStructDepth1_All"`
}) {
}

type XStructDepth2_XStructDepth1_Bool struct {
	F9 XStructDepth1_Bool
}

func (XStructDepth2_XStructDepth1_Bool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth2_XStructDepth1_Bool"`
}) {
}

type XStructDepth2_XUnionDepth1_All struct {
	F10 XUnionDepth1_All
}

func (XStructDepth2_XUnionDepth1_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth2_XUnionDepth1_All"`
}) {
}

type XStructDepth2_XUnionDepth1_Float64 struct {
	F11 XUnionDepth1_Float64
}

func (XStructDepth2_XUnionDepth1_Float64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth2_XUnionDepth1_Float64"`
}) {
}

type XStructDepth2_OptXStructDepth1_XEnumBcd struct {
	F12 *XStructDepth1_XEnumBcd
}

func (XStructDepth2_OptXStructDepth1_XEnumBcd) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth2_OptXStructDepth1_XEnumBcd"`
}) {
}

type XStructDepth2_OptXStructDepth1_XUint16 struct {
	F13 *XStructDepth1_XUint16
}

func (XStructDepth2_OptXStructDepth1_XUint16) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth2_OptXStructDepth1_XUint16"`
}) {
}

type (
	// XUnionDepth2_All represents any single field of the XUnionDepth2_All union type.
	XUnionDepth2_All interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth2_All union type.
		__VDLReflect(__XUnionDepth2_AllReflect)
	}
	// XUnionDepth2_AllF0 represents field F0 of the XUnionDepth2_All union type.
	XUnionDepth2_AllF0 struct{ Value XArray1_String }
	// XUnionDepth2_AllF1 represents field F1 of the XUnionDepth2_All union type.
	XUnionDepth2_AllF1 struct{ Value XArray2_XByte }
	// XUnionDepth2_AllF2 represents field F2 of the XUnionDepth2_All union type.
	XUnionDepth2_AllF2 struct{ Value XList_XByte }
	// XUnionDepth2_AllF3 represents field F3 of the XUnionDepth2_All union type.
	XUnionDepth2_AllF3 struct{ Value XList_OptXNamedError }
	// XUnionDepth2_AllF4 represents field F4 of the XUnionDepth2_All union type.
	XUnionDepth2_AllF4 struct{ Value XSet_XBool }
	// XUnionDepth2_AllF5 represents field F5 of the XUnionDepth2_All union type.
	XUnionDepth2_AllF5 struct{ Value XSet_XNamedError }
	// XUnionDepth2_AllF6 represents field F6 of the XUnionDepth2_All union type.
	XUnionDepth2_AllF6 struct{ Value map[XBool]XBool }
	// XUnionDepth2_AllF7 represents field F7 of the XUnionDepth2_All union type.
	XUnionDepth2_AllF7 struct{ Value XMap_XBool_XBool }
	// XUnionDepth2_AllF8 represents field F8 of the XUnionDepth2_All union type.
	XUnionDepth2_AllF8 struct{ Value XStructDepth1_All }
	// XUnionDepth2_AllF9 represents field F9 of the XUnionDepth2_All union type.
	XUnionDepth2_AllF9 struct{ Value XStructDepth1_Int8 }
	// XUnionDepth2_AllF10 represents field F10 of the XUnionDepth2_All union type.
	XUnionDepth2_AllF10 struct{ Value XUnionDepth1_All }
	// XUnionDepth2_AllF11 represents field F11 of the XUnionDepth2_All union type.
	XUnionDepth2_AllF11 struct{ Value XUnionDepth1_XUint32 }
	// XUnionDepth2_AllF12 represents field F12 of the XUnionDepth2_All union type.
	XUnionDepth2_AllF12 struct{ Value *XStructDepth1_XEnumBcd }
	// XUnionDepth2_AllF13 represents field F13 of the XUnionDepth2_All union type.
	XUnionDepth2_AllF13 struct{ Value *XStructDepth1_XFloat32 }
	// __XUnionDepth2_AllReflect describes the XUnionDepth2_All union type.
	__XUnionDepth2_AllReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth2_All"`
		Type  XUnionDepth2_All
		Union struct {
			F0  XUnionDepth2_AllF0
			F1  XUnionDepth2_AllF1
			F2  XUnionDepth2_AllF2
			F3  XUnionDepth2_AllF3
			F4  XUnionDepth2_AllF4
			F5  XUnionDepth2_AllF5
			F6  XUnionDepth2_AllF6
			F7  XUnionDepth2_AllF7
			F8  XUnionDepth2_AllF8
			F9  XUnionDepth2_AllF9
			F10 XUnionDepth2_AllF10
			F11 XUnionDepth2_AllF11
			F12 XUnionDepth2_AllF12
			F13 XUnionDepth2_AllF13
		}
	}
)

func (x XUnionDepth2_AllF0) Index() int                             { return 0 }
func (x XUnionDepth2_AllF0) Interface() interface{}                 { return x.Value }
func (x XUnionDepth2_AllF0) Name() string                           { return "F0" }
func (x XUnionDepth2_AllF0) __VDLReflect(__XUnionDepth2_AllReflect) {}

func (x XUnionDepth2_AllF1) Index() int                             { return 1 }
func (x XUnionDepth2_AllF1) Interface() interface{}                 { return x.Value }
func (x XUnionDepth2_AllF1) Name() string                           { return "F1" }
func (x XUnionDepth2_AllF1) __VDLReflect(__XUnionDepth2_AllReflect) {}

func (x XUnionDepth2_AllF2) Index() int                             { return 2 }
func (x XUnionDepth2_AllF2) Interface() interface{}                 { return x.Value }
func (x XUnionDepth2_AllF2) Name() string                           { return "F2" }
func (x XUnionDepth2_AllF2) __VDLReflect(__XUnionDepth2_AllReflect) {}

func (x XUnionDepth2_AllF3) Index() int                             { return 3 }
func (x XUnionDepth2_AllF3) Interface() interface{}                 { return x.Value }
func (x XUnionDepth2_AllF3) Name() string                           { return "F3" }
func (x XUnionDepth2_AllF3) __VDLReflect(__XUnionDepth2_AllReflect) {}

func (x XUnionDepth2_AllF4) Index() int                             { return 4 }
func (x XUnionDepth2_AllF4) Interface() interface{}                 { return x.Value }
func (x XUnionDepth2_AllF4) Name() string                           { return "F4" }
func (x XUnionDepth2_AllF4) __VDLReflect(__XUnionDepth2_AllReflect) {}

func (x XUnionDepth2_AllF5) Index() int                             { return 5 }
func (x XUnionDepth2_AllF5) Interface() interface{}                 { return x.Value }
func (x XUnionDepth2_AllF5) Name() string                           { return "F5" }
func (x XUnionDepth2_AllF5) __VDLReflect(__XUnionDepth2_AllReflect) {}

func (x XUnionDepth2_AllF6) Index() int                             { return 6 }
func (x XUnionDepth2_AllF6) Interface() interface{}                 { return x.Value }
func (x XUnionDepth2_AllF6) Name() string                           { return "F6" }
func (x XUnionDepth2_AllF6) __VDLReflect(__XUnionDepth2_AllReflect) {}

func (x XUnionDepth2_AllF7) Index() int                             { return 7 }
func (x XUnionDepth2_AllF7) Interface() interface{}                 { return x.Value }
func (x XUnionDepth2_AllF7) Name() string                           { return "F7" }
func (x XUnionDepth2_AllF7) __VDLReflect(__XUnionDepth2_AllReflect) {}

func (x XUnionDepth2_AllF8) Index() int                             { return 8 }
func (x XUnionDepth2_AllF8) Interface() interface{}                 { return x.Value }
func (x XUnionDepth2_AllF8) Name() string                           { return "F8" }
func (x XUnionDepth2_AllF8) __VDLReflect(__XUnionDepth2_AllReflect) {}

func (x XUnionDepth2_AllF9) Index() int                             { return 9 }
func (x XUnionDepth2_AllF9) Interface() interface{}                 { return x.Value }
func (x XUnionDepth2_AllF9) Name() string                           { return "F9" }
func (x XUnionDepth2_AllF9) __VDLReflect(__XUnionDepth2_AllReflect) {}

func (x XUnionDepth2_AllF10) Index() int                             { return 10 }
func (x XUnionDepth2_AllF10) Interface() interface{}                 { return x.Value }
func (x XUnionDepth2_AllF10) Name() string                           { return "F10" }
func (x XUnionDepth2_AllF10) __VDLReflect(__XUnionDepth2_AllReflect) {}

func (x XUnionDepth2_AllF11) Index() int                             { return 11 }
func (x XUnionDepth2_AllF11) Interface() interface{}                 { return x.Value }
func (x XUnionDepth2_AllF11) Name() string                           { return "F11" }
func (x XUnionDepth2_AllF11) __VDLReflect(__XUnionDepth2_AllReflect) {}

func (x XUnionDepth2_AllF12) Index() int                             { return 12 }
func (x XUnionDepth2_AllF12) Interface() interface{}                 { return x.Value }
func (x XUnionDepth2_AllF12) Name() string                           { return "F12" }
func (x XUnionDepth2_AllF12) __VDLReflect(__XUnionDepth2_AllReflect) {}

func (x XUnionDepth2_AllF13) Index() int                             { return 13 }
func (x XUnionDepth2_AllF13) Interface() interface{}                 { return x.Value }
func (x XUnionDepth2_AllF13) Name() string                           { return "F13" }
func (x XUnionDepth2_AllF13) __VDLReflect(__XUnionDepth2_AllReflect) {}

type (
	// XUnionDepth2_XArray1_String represents any single field of the XUnionDepth2_XArray1_String union type.
	XUnionDepth2_XArray1_String interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth2_XArray1_String union type.
		__VDLReflect(__XUnionDepth2_XArray1_StringReflect)
	}
	// XUnionDepth2_XArray1_StringF0 represents field F0 of the XUnionDepth2_XArray1_String union type.
	XUnionDepth2_XArray1_StringF0 struct{ Value XArray1_String }
	// __XUnionDepth2_XArray1_StringReflect describes the XUnionDepth2_XArray1_String union type.
	__XUnionDepth2_XArray1_StringReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth2_XArray1_String"`
		Type  XUnionDepth2_XArray1_String
		Union struct {
			F0 XUnionDepth2_XArray1_StringF0
		}
	}
)

func (x XUnionDepth2_XArray1_StringF0) Index() int                                        { return 0 }
func (x XUnionDepth2_XArray1_StringF0) Interface() interface{}                            { return x.Value }
func (x XUnionDepth2_XArray1_StringF0) Name() string                                      { return "F0" }
func (x XUnionDepth2_XArray1_StringF0) __VDLReflect(__XUnionDepth2_XArray1_StringReflect) {}

type (
	// XUnionDepth2_XArray2_XByte represents any single field of the XUnionDepth2_XArray2_XByte union type.
	XUnionDepth2_XArray2_XByte interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth2_XArray2_XByte union type.
		__VDLReflect(__XUnionDepth2_XArray2_XByteReflect)
	}
	// XUnionDepth2_XArray2_XByteF1 represents field F1 of the XUnionDepth2_XArray2_XByte union type.
	XUnionDepth2_XArray2_XByteF1 struct{ Value XArray2_XByte }
	// __XUnionDepth2_XArray2_XByteReflect describes the XUnionDepth2_XArray2_XByte union type.
	__XUnionDepth2_XArray2_XByteReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth2_XArray2_XByte"`
		Type  XUnionDepth2_XArray2_XByte
		Union struct {
			F1 XUnionDepth2_XArray2_XByteF1
		}
	}
)

func (x XUnionDepth2_XArray2_XByteF1) Index() int                                       { return 0 }
func (x XUnionDepth2_XArray2_XByteF1) Interface() interface{}                           { return x.Value }
func (x XUnionDepth2_XArray2_XByteF1) Name() string                                     { return "F1" }
func (x XUnionDepth2_XArray2_XByteF1) __VDLReflect(__XUnionDepth2_XArray2_XByteReflect) {}

type (
	// XUnionDepth2_XList_XByte represents any single field of the XUnionDepth2_XList_XByte union type.
	XUnionDepth2_XList_XByte interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth2_XList_XByte union type.
		__VDLReflect(__XUnionDepth2_XList_XByteReflect)
	}
	// XUnionDepth2_XList_XByteF2 represents field F2 of the XUnionDepth2_XList_XByte union type.
	XUnionDepth2_XList_XByteF2 struct{ Value XList_XByte }
	// __XUnionDepth2_XList_XByteReflect describes the XUnionDepth2_XList_XByte union type.
	__XUnionDepth2_XList_XByteReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth2_XList_XByte"`
		Type  XUnionDepth2_XList_XByte
		Union struct {
			F2 XUnionDepth2_XList_XByteF2
		}
	}
)

func (x XUnionDepth2_XList_XByteF2) Index() int                                     { return 0 }
func (x XUnionDepth2_XList_XByteF2) Interface() interface{}                         { return x.Value }
func (x XUnionDepth2_XList_XByteF2) Name() string                                   { return "F2" }
func (x XUnionDepth2_XList_XByteF2) __VDLReflect(__XUnionDepth2_XList_XByteReflect) {}

type (
	// XUnionDepth2_XList_OptXNamedError represents any single field of the XUnionDepth2_XList_OptXNamedError union type.
	XUnionDepth2_XList_OptXNamedError interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth2_XList_OptXNamedError union type.
		__VDLReflect(__XUnionDepth2_XList_OptXNamedErrorReflect)
	}
	// XUnionDepth2_XList_OptXNamedErrorF3 represents field F3 of the XUnionDepth2_XList_OptXNamedError union type.
	XUnionDepth2_XList_OptXNamedErrorF3 struct{ Value XList_OptXNamedError }
	// __XUnionDepth2_XList_OptXNamedErrorReflect describes the XUnionDepth2_XList_OptXNamedError union type.
	__XUnionDepth2_XList_OptXNamedErrorReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth2_XList_OptXNamedError"`
		Type  XUnionDepth2_XList_OptXNamedError
		Union struct {
			F3 XUnionDepth2_XList_OptXNamedErrorF3
		}
	}
)

func (x XUnionDepth2_XList_OptXNamedErrorF3) Index() int             { return 0 }
func (x XUnionDepth2_XList_OptXNamedErrorF3) Interface() interface{} { return x.Value }
func (x XUnionDepth2_XList_OptXNamedErrorF3) Name() string           { return "F3" }
func (x XUnionDepth2_XList_OptXNamedErrorF3) __VDLReflect(__XUnionDepth2_XList_OptXNamedErrorReflect) {
}

type (
	// XUnionDepth2_XSet_XBool represents any single field of the XUnionDepth2_XSet_XBool union type.
	XUnionDepth2_XSet_XBool interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth2_XSet_XBool union type.
		__VDLReflect(__XUnionDepth2_XSet_XBoolReflect)
	}
	// XUnionDepth2_XSet_XBoolF4 represents field F4 of the XUnionDepth2_XSet_XBool union type.
	XUnionDepth2_XSet_XBoolF4 struct{ Value XSet_XBool }
	// __XUnionDepth2_XSet_XBoolReflect describes the XUnionDepth2_XSet_XBool union type.
	__XUnionDepth2_XSet_XBoolReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth2_XSet_XBool"`
		Type  XUnionDepth2_XSet_XBool
		Union struct {
			F4 XUnionDepth2_XSet_XBoolF4
		}
	}
)

func (x XUnionDepth2_XSet_XBoolF4) Index() int                                    { return 0 }
func (x XUnionDepth2_XSet_XBoolF4) Interface() interface{}                        { return x.Value }
func (x XUnionDepth2_XSet_XBoolF4) Name() string                                  { return "F4" }
func (x XUnionDepth2_XSet_XBoolF4) __VDLReflect(__XUnionDepth2_XSet_XBoolReflect) {}

type (
	// XUnionDepth2_XSet_XNamedError represents any single field of the XUnionDepth2_XSet_XNamedError union type.
	XUnionDepth2_XSet_XNamedError interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth2_XSet_XNamedError union type.
		__VDLReflect(__XUnionDepth2_XSet_XNamedErrorReflect)
	}
	// XUnionDepth2_XSet_XNamedErrorF5 represents field F5 of the XUnionDepth2_XSet_XNamedError union type.
	XUnionDepth2_XSet_XNamedErrorF5 struct{ Value XSet_XNamedError }
	// __XUnionDepth2_XSet_XNamedErrorReflect describes the XUnionDepth2_XSet_XNamedError union type.
	__XUnionDepth2_XSet_XNamedErrorReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth2_XSet_XNamedError"`
		Type  XUnionDepth2_XSet_XNamedError
		Union struct {
			F5 XUnionDepth2_XSet_XNamedErrorF5
		}
	}
)

func (x XUnionDepth2_XSet_XNamedErrorF5) Index() int                                          { return 0 }
func (x XUnionDepth2_XSet_XNamedErrorF5) Interface() interface{}                              { return x.Value }
func (x XUnionDepth2_XSet_XNamedErrorF5) Name() string                                        { return "F5" }
func (x XUnionDepth2_XSet_XNamedErrorF5) __VDLReflect(__XUnionDepth2_XSet_XNamedErrorReflect) {}

type (
	// XUnionDepth2_Map_XBool_XBool represents any single field of the XUnionDepth2_Map_XBool_XBool union type.
	XUnionDepth2_Map_XBool_XBool interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth2_Map_XBool_XBool union type.
		__VDLReflect(__XUnionDepth2_Map_XBool_XBoolReflect)
	}
	// XUnionDepth2_Map_XBool_XBoolF6 represents field F6 of the XUnionDepth2_Map_XBool_XBool union type.
	XUnionDepth2_Map_XBool_XBoolF6 struct{ Value map[XBool]XBool }
	// __XUnionDepth2_Map_XBool_XBoolReflect describes the XUnionDepth2_Map_XBool_XBool union type.
	__XUnionDepth2_Map_XBool_XBoolReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth2_Map_XBool_XBool"`
		Type  XUnionDepth2_Map_XBool_XBool
		Union struct {
			F6 XUnionDepth2_Map_XBool_XBoolF6
		}
	}
)

func (x XUnionDepth2_Map_XBool_XBoolF6) Index() int                                         { return 0 }
func (x XUnionDepth2_Map_XBool_XBoolF6) Interface() interface{}                             { return x.Value }
func (x XUnionDepth2_Map_XBool_XBoolF6) Name() string                                       { return "F6" }
func (x XUnionDepth2_Map_XBool_XBoolF6) __VDLReflect(__XUnionDepth2_Map_XBool_XBoolReflect) {}

type (
	// XUnionDepth2_XMap_XBool_XBool represents any single field of the XUnionDepth2_XMap_XBool_XBool union type.
	XUnionDepth2_XMap_XBool_XBool interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth2_XMap_XBool_XBool union type.
		__VDLReflect(__XUnionDepth2_XMap_XBool_XBoolReflect)
	}
	// XUnionDepth2_XMap_XBool_XBoolF7 represents field F7 of the XUnionDepth2_XMap_XBool_XBool union type.
	XUnionDepth2_XMap_XBool_XBoolF7 struct{ Value XMap_XBool_XBool }
	// __XUnionDepth2_XMap_XBool_XBoolReflect describes the XUnionDepth2_XMap_XBool_XBool union type.
	__XUnionDepth2_XMap_XBool_XBoolReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth2_XMap_XBool_XBool"`
		Type  XUnionDepth2_XMap_XBool_XBool
		Union struct {
			F7 XUnionDepth2_XMap_XBool_XBoolF7
		}
	}
)

func (x XUnionDepth2_XMap_XBool_XBoolF7) Index() int                                          { return 0 }
func (x XUnionDepth2_XMap_XBool_XBoolF7) Interface() interface{}                              { return x.Value }
func (x XUnionDepth2_XMap_XBool_XBoolF7) Name() string                                        { return "F7" }
func (x XUnionDepth2_XMap_XBool_XBoolF7) __VDLReflect(__XUnionDepth2_XMap_XBool_XBoolReflect) {}

type (
	// XUnionDepth2_XStructDepth1_All represents any single field of the XUnionDepth2_XStructDepth1_All union type.
	XUnionDepth2_XStructDepth1_All interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth2_XStructDepth1_All union type.
		__VDLReflect(__XUnionDepth2_XStructDepth1_AllReflect)
	}
	// XUnionDepth2_XStructDepth1_AllF8 represents field F8 of the XUnionDepth2_XStructDepth1_All union type.
	XUnionDepth2_XStructDepth1_AllF8 struct{ Value XStructDepth1_All }
	// __XUnionDepth2_XStructDepth1_AllReflect describes the XUnionDepth2_XStructDepth1_All union type.
	__XUnionDepth2_XStructDepth1_AllReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth2_XStructDepth1_All"`
		Type  XUnionDepth2_XStructDepth1_All
		Union struct {
			F8 XUnionDepth2_XStructDepth1_AllF8
		}
	}
)

func (x XUnionDepth2_XStructDepth1_AllF8) Index() int                                           { return 0 }
func (x XUnionDepth2_XStructDepth1_AllF8) Interface() interface{}                               { return x.Value }
func (x XUnionDepth2_XStructDepth1_AllF8) Name() string                                         { return "F8" }
func (x XUnionDepth2_XStructDepth1_AllF8) __VDLReflect(__XUnionDepth2_XStructDepth1_AllReflect) {}

type (
	// XUnionDepth2_XStructDepth1_Int8 represents any single field of the XUnionDepth2_XStructDepth1_Int8 union type.
	XUnionDepth2_XStructDepth1_Int8 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth2_XStructDepth1_Int8 union type.
		__VDLReflect(__XUnionDepth2_XStructDepth1_Int8Reflect)
	}
	// XUnionDepth2_XStructDepth1_Int8F9 represents field F9 of the XUnionDepth2_XStructDepth1_Int8 union type.
	XUnionDepth2_XStructDepth1_Int8F9 struct{ Value XStructDepth1_Int8 }
	// __XUnionDepth2_XStructDepth1_Int8Reflect describes the XUnionDepth2_XStructDepth1_Int8 union type.
	__XUnionDepth2_XStructDepth1_Int8Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth2_XStructDepth1_Int8"`
		Type  XUnionDepth2_XStructDepth1_Int8
		Union struct {
			F9 XUnionDepth2_XStructDepth1_Int8F9
		}
	}
)

func (x XUnionDepth2_XStructDepth1_Int8F9) Index() int                                            { return 0 }
func (x XUnionDepth2_XStructDepth1_Int8F9) Interface() interface{}                                { return x.Value }
func (x XUnionDepth2_XStructDepth1_Int8F9) Name() string                                          { return "F9" }
func (x XUnionDepth2_XStructDepth1_Int8F9) __VDLReflect(__XUnionDepth2_XStructDepth1_Int8Reflect) {}

type (
	// XUnionDepth2_XUnionDepth1_All represents any single field of the XUnionDepth2_XUnionDepth1_All union type.
	XUnionDepth2_XUnionDepth1_All interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth2_XUnionDepth1_All union type.
		__VDLReflect(__XUnionDepth2_XUnionDepth1_AllReflect)
	}
	// XUnionDepth2_XUnionDepth1_AllF10 represents field F10 of the XUnionDepth2_XUnionDepth1_All union type.
	XUnionDepth2_XUnionDepth1_AllF10 struct{ Value XUnionDepth1_All }
	// __XUnionDepth2_XUnionDepth1_AllReflect describes the XUnionDepth2_XUnionDepth1_All union type.
	__XUnionDepth2_XUnionDepth1_AllReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth2_XUnionDepth1_All"`
		Type  XUnionDepth2_XUnionDepth1_All
		Union struct {
			F10 XUnionDepth2_XUnionDepth1_AllF10
		}
	}
)

func (x XUnionDepth2_XUnionDepth1_AllF10) Index() int                                          { return 0 }
func (x XUnionDepth2_XUnionDepth1_AllF10) Interface() interface{}                              { return x.Value }
func (x XUnionDepth2_XUnionDepth1_AllF10) Name() string                                        { return "F10" }
func (x XUnionDepth2_XUnionDepth1_AllF10) __VDLReflect(__XUnionDepth2_XUnionDepth1_AllReflect) {}

type (
	// XUnionDepth2_XUnionDepth1_XUint32 represents any single field of the XUnionDepth2_XUnionDepth1_XUint32 union type.
	XUnionDepth2_XUnionDepth1_XUint32 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth2_XUnionDepth1_XUint32 union type.
		__VDLReflect(__XUnionDepth2_XUnionDepth1_XUint32Reflect)
	}
	// XUnionDepth2_XUnionDepth1_XUint32F11 represents field F11 of the XUnionDepth2_XUnionDepth1_XUint32 union type.
	XUnionDepth2_XUnionDepth1_XUint32F11 struct{ Value XUnionDepth1_XUint32 }
	// __XUnionDepth2_XUnionDepth1_XUint32Reflect describes the XUnionDepth2_XUnionDepth1_XUint32 union type.
	__XUnionDepth2_XUnionDepth1_XUint32Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth2_XUnionDepth1_XUint32"`
		Type  XUnionDepth2_XUnionDepth1_XUint32
		Union struct {
			F11 XUnionDepth2_XUnionDepth1_XUint32F11
		}
	}
)

func (x XUnionDepth2_XUnionDepth1_XUint32F11) Index() int             { return 0 }
func (x XUnionDepth2_XUnionDepth1_XUint32F11) Interface() interface{} { return x.Value }
func (x XUnionDepth2_XUnionDepth1_XUint32F11) Name() string           { return "F11" }
func (x XUnionDepth2_XUnionDepth1_XUint32F11) __VDLReflect(__XUnionDepth2_XUnionDepth1_XUint32Reflect) {
}

type (
	// XUnionDepth2_OptXStructDepth1_XEnumBcd represents any single field of the XUnionDepth2_OptXStructDepth1_XEnumBcd union type.
	XUnionDepth2_OptXStructDepth1_XEnumBcd interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth2_OptXStructDepth1_XEnumBcd union type.
		__VDLReflect(__XUnionDepth2_OptXStructDepth1_XEnumBcdReflect)
	}
	// XUnionDepth2_OptXStructDepth1_XEnumBcdF12 represents field F12 of the XUnionDepth2_OptXStructDepth1_XEnumBcd union type.
	XUnionDepth2_OptXStructDepth1_XEnumBcdF12 struct{ Value *XStructDepth1_XEnumBcd }
	// __XUnionDepth2_OptXStructDepth1_XEnumBcdReflect describes the XUnionDepth2_OptXStructDepth1_XEnumBcd union type.
	__XUnionDepth2_OptXStructDepth1_XEnumBcdReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth2_OptXStructDepth1_XEnumBcd"`
		Type  XUnionDepth2_OptXStructDepth1_XEnumBcd
		Union struct {
			F12 XUnionDepth2_OptXStructDepth1_XEnumBcdF12
		}
	}
)

func (x XUnionDepth2_OptXStructDepth1_XEnumBcdF12) Index() int             { return 0 }
func (x XUnionDepth2_OptXStructDepth1_XEnumBcdF12) Interface() interface{} { return x.Value }
func (x XUnionDepth2_OptXStructDepth1_XEnumBcdF12) Name() string           { return "F12" }
func (x XUnionDepth2_OptXStructDepth1_XEnumBcdF12) __VDLReflect(__XUnionDepth2_OptXStructDepth1_XEnumBcdReflect) {
}

type (
	// XUnionDepth2_OptXStructDepth1_XFloat32 represents any single field of the XUnionDepth2_OptXStructDepth1_XFloat32 union type.
	XUnionDepth2_OptXStructDepth1_XFloat32 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth2_OptXStructDepth1_XFloat32 union type.
		__VDLReflect(__XUnionDepth2_OptXStructDepth1_XFloat32Reflect)
	}
	// XUnionDepth2_OptXStructDepth1_XFloat32F13 represents field F13 of the XUnionDepth2_OptXStructDepth1_XFloat32 union type.
	XUnionDepth2_OptXStructDepth1_XFloat32F13 struct{ Value *XStructDepth1_XFloat32 }
	// __XUnionDepth2_OptXStructDepth1_XFloat32Reflect describes the XUnionDepth2_OptXStructDepth1_XFloat32 union type.
	__XUnionDepth2_OptXStructDepth1_XFloat32Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth2_OptXStructDepth1_XFloat32"`
		Type  XUnionDepth2_OptXStructDepth1_XFloat32
		Union struct {
			F13 XUnionDepth2_OptXStructDepth1_XFloat32F13
		}
	}
)

func (x XUnionDepth2_OptXStructDepth1_XFloat32F13) Index() int             { return 0 }
func (x XUnionDepth2_OptXStructDepth1_XFloat32F13) Interface() interface{} { return x.Value }
func (x XUnionDepth2_OptXStructDepth1_XFloat32F13) Name() string           { return "F13" }
func (x XUnionDepth2_OptXStructDepth1_XFloat32F13) __VDLReflect(__XUnionDepth2_OptXStructDepth1_XFloat32Reflect) {
}

type XArray1_XArray1_XList_Byte [1]XArray1_XList_Byte

func (XArray1_XArray1_XList_Byte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray1_XArray1_XList_Byte"`
}) {
}

type XArray2_List_XMap_XByte_XByte [2][]XMap_XByte_XByte

func (XArray2_List_XMap_XByte_XByte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray2_List_XMap_XByte_XByte"`
}) {
}

type XArray2_Set_XUnionDepth1_XNamedError [2]map[XUnionDepth1_XNamedError]struct{}

func (XArray2_Set_XUnionDepth1_XNamedError) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray2_Set_XUnionDepth1_XNamedError"`
}) {
}

type XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64 [3]map[XUnionDepth1_Float64]XUnionDepth1_Float64

func (XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64"`
}) {
}

type XArray2_XStructDepth2_All [2]XStructDepth2_All

func (XArray2_XStructDepth2_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray2_XStructDepth2_All"`
}) {
}

type XArray2_XUnionDepth2_All [2]XUnionDepth2_All

func (XArray2_XUnionDepth2_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray2_XUnionDepth2_All"`
}) {
}

type XArray3_OptXStructDepth2_Set_Float64 [3]*XStructDepth2_Set_Float64

func (XArray3_OptXStructDepth2_Set_Float64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XArray3_OptXStructDepth2_Set_Float64"`
}) {
}

type XList_XArray3_XUnionDepth1_All []XArray3_XUnionDepth1_All

func (XList_XArray3_XUnionDepth1_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_XArray3_XUnionDepth1_All"`
}) {
}

type XList_List_XMap_XByte_XByte [][]XMap_XByte_XByte

func (XList_List_XMap_XByte_XByte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_List_XMap_XByte_XByte"`
}) {
}

type XList_XSet_XArray1_XStructEmpty []XSet_XArray1_XStructEmpty

func (XList_XSet_XArray1_XStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_XSet_XArray1_XStructEmpty"`
}) {
}

type XList_XMap_XArray3_XBool_XArray3_XBool []XMap_XArray3_XBool_XArray3_XBool

func (XList_XMap_XArray3_XBool_XArray3_XBool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_XMap_XArray3_XBool_XArray3_XBool"`
}) {
}

type XList_XStructDepth2_All []XStructDepth2_All

func (XList_XStructDepth2_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_XStructDepth2_All"`
}) {
}

type XList_XUnionDepth2_All []XUnionDepth2_All

func (XList_XUnionDepth2_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_XUnionDepth2_All"`
}) {
}

type XList_OptXStructDepth2_Set_Float64 []*XStructDepth2_Set_Float64

func (XList_OptXStructDepth2_Set_Float64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XList_OptXStructDepth2_Set_Float64"`
}) {
}

type XSet_XArray1_XArray3_Int64 map[XArray1_XArray3_Int64]struct{}

func (XSet_XArray1_XArray3_Int64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XSet_XArray1_XArray3_Int64"`
}) {
}

type XSet_XStructDepth2_XStructDepth1_Bool map[XStructDepth2_XStructDepth1_Bool]struct{}

func (XSet_XStructDepth2_XStructDepth1_Bool) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XSet_XStructDepth2_XStructDepth1_Bool"`
}) {
}

type XSet_XUnionDepth2_XArray1_String map[XUnionDepth2_XArray1_String]struct{}

func (XSet_XUnionDepth2_XArray1_String) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XSet_XUnionDepth2_XArray1_String"`
}) {
}

type XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64 map[XArray1_XArray3_Int64]XArray1_XArray3_Int64

func (XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64"`
}) {
}

type XMap_XStructDepth2_XArray1_Uint32_XStructDepth2_XArray1_Uint32 map[XStructDepth2_XArray1_Uint32]XStructDepth2_XArray1_Uint32

func (XMap_XStructDepth2_XArray1_Uint32_XStructDepth2_XArray1_Uint32) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XMap_XStructDepth2_XArray1_Uint32_XStructDepth2_XArray1_Uint32"`
}) {
}

type XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte map[XUnionDepth2_XArray2_XByte]XUnionDepth2_XArray2_XByte

func (XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte"`
}) {
}

type XStructDepth3_All struct {
	F0 XArray1_Set_XEnumBcd
	F1 []XUnionDepth1_All
	F2 XSet_XArray1_XStructEmpty
	F3 map[XUnionDepth1_Float64]XUnionDepth1_Float64
	F4 XStructDepth2_All
	F5 XUnionDepth2_All
	F6 *XStructDepth2_Set_Float64
}

func (XStructDepth3_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth3_All"`
}) {
}

type XStructDepth3_XArray1_Set_XEnumBcd struct {
	F0 XArray1_Set_XEnumBcd
}

func (XStructDepth3_XArray1_Set_XEnumBcd) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth3_XArray1_Set_XEnumBcd"`
}) {
}

type XStructDepth3_List_XUnionDepth1_All struct {
	F1 []XUnionDepth1_All
}

func (XStructDepth3_List_XUnionDepth1_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth3_List_XUnionDepth1_All"`
}) {
}

type XStructDepth3_XSet_XArray1_XStructEmpty struct {
	F2 XSet_XArray1_XStructEmpty
}

func (XStructDepth3_XSet_XArray1_XStructEmpty) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth3_XSet_XArray1_XStructEmpty"`
}) {
}

type XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64 struct {
	F3 map[XUnionDepth1_Float64]XUnionDepth1_Float64
}

func (XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64"`
}) {
}

type XStructDepth3_XStructDepth2_All struct {
	F4 XStructDepth2_All
}

func (XStructDepth3_XStructDepth2_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth3_XStructDepth2_All"`
}) {
}

type XStructDepth3_XUnionDepth2_All struct {
	F5 XUnionDepth2_All
}

func (XStructDepth3_XUnionDepth2_All) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth3_XUnionDepth2_All"`
}) {
}

type XStructDepth3_OptXStructDepth2_Set_Float64 struct {
	F6 *XStructDepth2_Set_Float64
}

func (XStructDepth3_OptXStructDepth2_Set_Float64) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XStructDepth3_OptXStructDepth2_Set_Float64"`
}) {
}

type (
	// XUnionDepth3_All represents any single field of the XUnionDepth3_All union type.
	XUnionDepth3_All interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth3_All union type.
		__VDLReflect(__XUnionDepth3_AllReflect)
	}
	// XUnionDepth3_AllF0 represents field F0 of the XUnionDepth3_All union type.
	XUnionDepth3_AllF0 struct {
		Value XArray3_OptXStructDepth1_XFloat32
	}
	// XUnionDepth3_AllF1 represents field F1 of the XUnionDepth3_All union type.
	XUnionDepth3_AllF1 struct{ Value []XList_Error }
	// XUnionDepth3_AllF2 represents field F2 of the XUnionDepth3_All union type.
	XUnionDepth3_AllF2 struct {
		Value map[XStructDepth1_String]struct{}
	}
	// XUnionDepth3_AllF3 represents field F3 of the XUnionDepth3_All union type.
	XUnionDepth3_AllF3 struct {
		Value XMap_XStructDepth1_XBool_XStructDepth1_XBool
	}
	// XUnionDepth3_AllF4 represents field F4 of the XUnionDepth3_All union type.
	XUnionDepth3_AllF4 struct{ Value XStructDepth2_All }
	// XUnionDepth3_AllF5 represents field F5 of the XUnionDepth3_All union type.
	XUnionDepth3_AllF5 struct{ Value XUnionDepth2_All }
	// XUnionDepth3_AllF6 represents field F6 of the XUnionDepth3_All union type.
	XUnionDepth3_AllF6 struct{ Value *XStructDepth2_Set_Float64 }
	// __XUnionDepth3_AllReflect describes the XUnionDepth3_All union type.
	__XUnionDepth3_AllReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth3_All"`
		Type  XUnionDepth3_All
		Union struct {
			F0 XUnionDepth3_AllF0
			F1 XUnionDepth3_AllF1
			F2 XUnionDepth3_AllF2
			F3 XUnionDepth3_AllF3
			F4 XUnionDepth3_AllF4
			F5 XUnionDepth3_AllF5
			F6 XUnionDepth3_AllF6
		}
	}
)

func (x XUnionDepth3_AllF0) Index() int                             { return 0 }
func (x XUnionDepth3_AllF0) Interface() interface{}                 { return x.Value }
func (x XUnionDepth3_AllF0) Name() string                           { return "F0" }
func (x XUnionDepth3_AllF0) __VDLReflect(__XUnionDepth3_AllReflect) {}

func (x XUnionDepth3_AllF1) Index() int                             { return 1 }
func (x XUnionDepth3_AllF1) Interface() interface{}                 { return x.Value }
func (x XUnionDepth3_AllF1) Name() string                           { return "F1" }
func (x XUnionDepth3_AllF1) __VDLReflect(__XUnionDepth3_AllReflect) {}

func (x XUnionDepth3_AllF2) Index() int                             { return 2 }
func (x XUnionDepth3_AllF2) Interface() interface{}                 { return x.Value }
func (x XUnionDepth3_AllF2) Name() string                           { return "F2" }
func (x XUnionDepth3_AllF2) __VDLReflect(__XUnionDepth3_AllReflect) {}

func (x XUnionDepth3_AllF3) Index() int                             { return 3 }
func (x XUnionDepth3_AllF3) Interface() interface{}                 { return x.Value }
func (x XUnionDepth3_AllF3) Name() string                           { return "F3" }
func (x XUnionDepth3_AllF3) __VDLReflect(__XUnionDepth3_AllReflect) {}

func (x XUnionDepth3_AllF4) Index() int                             { return 4 }
func (x XUnionDepth3_AllF4) Interface() interface{}                 { return x.Value }
func (x XUnionDepth3_AllF4) Name() string                           { return "F4" }
func (x XUnionDepth3_AllF4) __VDLReflect(__XUnionDepth3_AllReflect) {}

func (x XUnionDepth3_AllF5) Index() int                             { return 5 }
func (x XUnionDepth3_AllF5) Interface() interface{}                 { return x.Value }
func (x XUnionDepth3_AllF5) Name() string                           { return "F5" }
func (x XUnionDepth3_AllF5) __VDLReflect(__XUnionDepth3_AllReflect) {}

func (x XUnionDepth3_AllF6) Index() int                             { return 6 }
func (x XUnionDepth3_AllF6) Interface() interface{}                 { return x.Value }
func (x XUnionDepth3_AllF6) Name() string                           { return "F6" }
func (x XUnionDepth3_AllF6) __VDLReflect(__XUnionDepth3_AllReflect) {}

type (
	// XUnionDepth3_XArray3_OptXStructDepth1_XFloat32 represents any single field of the XUnionDepth3_XArray3_OptXStructDepth1_XFloat32 union type.
	XUnionDepth3_XArray3_OptXStructDepth1_XFloat32 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth3_XArray3_OptXStructDepth1_XFloat32 union type.
		__VDLReflect(__XUnionDepth3_XArray3_OptXStructDepth1_XFloat32Reflect)
	}
	// XUnionDepth3_XArray3_OptXStructDepth1_XFloat32F0 represents field F0 of the XUnionDepth3_XArray3_OptXStructDepth1_XFloat32 union type.
	XUnionDepth3_XArray3_OptXStructDepth1_XFloat32F0 struct {
		Value XArray3_OptXStructDepth1_XFloat32
	}
	// __XUnionDepth3_XArray3_OptXStructDepth1_XFloat32Reflect describes the XUnionDepth3_XArray3_OptXStructDepth1_XFloat32 union type.
	__XUnionDepth3_XArray3_OptXStructDepth1_XFloat32Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth3_XArray3_OptXStructDepth1_XFloat32"`
		Type  XUnionDepth3_XArray3_OptXStructDepth1_XFloat32
		Union struct {
			F0 XUnionDepth3_XArray3_OptXStructDepth1_XFloat32F0
		}
	}
)

func (x XUnionDepth3_XArray3_OptXStructDepth1_XFloat32F0) Index() int             { return 0 }
func (x XUnionDepth3_XArray3_OptXStructDepth1_XFloat32F0) Interface() interface{} { return x.Value }
func (x XUnionDepth3_XArray3_OptXStructDepth1_XFloat32F0) Name() string           { return "F0" }
func (x XUnionDepth3_XArray3_OptXStructDepth1_XFloat32F0) __VDLReflect(__XUnionDepth3_XArray3_OptXStructDepth1_XFloat32Reflect) {
}

type (
	// XUnionDepth3_List_XList_Error represents any single field of the XUnionDepth3_List_XList_Error union type.
	XUnionDepth3_List_XList_Error interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth3_List_XList_Error union type.
		__VDLReflect(__XUnionDepth3_List_XList_ErrorReflect)
	}
	// XUnionDepth3_List_XList_ErrorF1 represents field F1 of the XUnionDepth3_List_XList_Error union type.
	XUnionDepth3_List_XList_ErrorF1 struct{ Value []XList_Error }
	// __XUnionDepth3_List_XList_ErrorReflect describes the XUnionDepth3_List_XList_Error union type.
	__XUnionDepth3_List_XList_ErrorReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth3_List_XList_Error"`
		Type  XUnionDepth3_List_XList_Error
		Union struct {
			F1 XUnionDepth3_List_XList_ErrorF1
		}
	}
)

func (x XUnionDepth3_List_XList_ErrorF1) Index() int                                          { return 0 }
func (x XUnionDepth3_List_XList_ErrorF1) Interface() interface{}                              { return x.Value }
func (x XUnionDepth3_List_XList_ErrorF1) Name() string                                        { return "F1" }
func (x XUnionDepth3_List_XList_ErrorF1) __VDLReflect(__XUnionDepth3_List_XList_ErrorReflect) {}

type (
	// XUnionDepth3_Set_XStructDepth1_String represents any single field of the XUnionDepth3_Set_XStructDepth1_String union type.
	XUnionDepth3_Set_XStructDepth1_String interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth3_Set_XStructDepth1_String union type.
		__VDLReflect(__XUnionDepth3_Set_XStructDepth1_StringReflect)
	}
	// XUnionDepth3_Set_XStructDepth1_StringF2 represents field F2 of the XUnionDepth3_Set_XStructDepth1_String union type.
	XUnionDepth3_Set_XStructDepth1_StringF2 struct {
		Value map[XStructDepth1_String]struct{}
	}
	// __XUnionDepth3_Set_XStructDepth1_StringReflect describes the XUnionDepth3_Set_XStructDepth1_String union type.
	__XUnionDepth3_Set_XStructDepth1_StringReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth3_Set_XStructDepth1_String"`
		Type  XUnionDepth3_Set_XStructDepth1_String
		Union struct {
			F2 XUnionDepth3_Set_XStructDepth1_StringF2
		}
	}
)

func (x XUnionDepth3_Set_XStructDepth1_StringF2) Index() int             { return 0 }
func (x XUnionDepth3_Set_XStructDepth1_StringF2) Interface() interface{} { return x.Value }
func (x XUnionDepth3_Set_XStructDepth1_StringF2) Name() string           { return "F2" }
func (x XUnionDepth3_Set_XStructDepth1_StringF2) __VDLReflect(__XUnionDepth3_Set_XStructDepth1_StringReflect) {
}

type (
	// XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBool represents any single field of the XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBool union type.
	XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBool interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBool union type.
		__VDLReflect(__XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBoolReflect)
	}
	// XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBoolF3 represents field F3 of the XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBool union type.
	XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBoolF3 struct {
		Value XMap_XStructDepth1_XBool_XStructDepth1_XBool
	}
	// __XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBoolReflect describes the XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBool union type.
	__XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBoolReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBool"`
		Type  XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBool
		Union struct {
			F3 XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBoolF3
		}
	}
)

func (x XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBoolF3) Index() int { return 0 }
func (x XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBoolF3) Interface() interface{} {
	return x.Value
}
func (x XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBoolF3) Name() string { return "F3" }
func (x XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBoolF3) __VDLReflect(__XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBoolReflect) {
}

type (
	// XUnionDepth3_XStructDepth2_All represents any single field of the XUnionDepth3_XStructDepth2_All union type.
	XUnionDepth3_XStructDepth2_All interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth3_XStructDepth2_All union type.
		__VDLReflect(__XUnionDepth3_XStructDepth2_AllReflect)
	}
	// XUnionDepth3_XStructDepth2_AllF4 represents field F4 of the XUnionDepth3_XStructDepth2_All union type.
	XUnionDepth3_XStructDepth2_AllF4 struct{ Value XStructDepth2_All }
	// __XUnionDepth3_XStructDepth2_AllReflect describes the XUnionDepth3_XStructDepth2_All union type.
	__XUnionDepth3_XStructDepth2_AllReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth3_XStructDepth2_All"`
		Type  XUnionDepth3_XStructDepth2_All
		Union struct {
			F4 XUnionDepth3_XStructDepth2_AllF4
		}
	}
)

func (x XUnionDepth3_XStructDepth2_AllF4) Index() int                                           { return 0 }
func (x XUnionDepth3_XStructDepth2_AllF4) Interface() interface{}                               { return x.Value }
func (x XUnionDepth3_XStructDepth2_AllF4) Name() string                                         { return "F4" }
func (x XUnionDepth3_XStructDepth2_AllF4) __VDLReflect(__XUnionDepth3_XStructDepth2_AllReflect) {}

type (
	// XUnionDepth3_XUnionDepth2_All represents any single field of the XUnionDepth3_XUnionDepth2_All union type.
	XUnionDepth3_XUnionDepth2_All interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth3_XUnionDepth2_All union type.
		__VDLReflect(__XUnionDepth3_XUnionDepth2_AllReflect)
	}
	// XUnionDepth3_XUnionDepth2_AllF5 represents field F5 of the XUnionDepth3_XUnionDepth2_All union type.
	XUnionDepth3_XUnionDepth2_AllF5 struct{ Value XUnionDepth2_All }
	// __XUnionDepth3_XUnionDepth2_AllReflect describes the XUnionDepth3_XUnionDepth2_All union type.
	__XUnionDepth3_XUnionDepth2_AllReflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth3_XUnionDepth2_All"`
		Type  XUnionDepth3_XUnionDepth2_All
		Union struct {
			F5 XUnionDepth3_XUnionDepth2_AllF5
		}
	}
)

func (x XUnionDepth3_XUnionDepth2_AllF5) Index() int                                          { return 0 }
func (x XUnionDepth3_XUnionDepth2_AllF5) Interface() interface{}                              { return x.Value }
func (x XUnionDepth3_XUnionDepth2_AllF5) Name() string                                        { return "F5" }
func (x XUnionDepth3_XUnionDepth2_AllF5) __VDLReflect(__XUnionDepth3_XUnionDepth2_AllReflect) {}

type (
	// XUnionDepth3_OptXStructDepth2_Set_Float64 represents any single field of the XUnionDepth3_OptXStructDepth2_Set_Float64 union type.
	XUnionDepth3_OptXStructDepth2_Set_Float64 interface {
		// Index returns the field index.
		Index() int
		// Interface returns the field value as an interface.
		Interface() interface{}
		// Name returns the field name.
		Name() string
		// __VDLReflect describes the XUnionDepth3_OptXStructDepth2_Set_Float64 union type.
		__VDLReflect(__XUnionDepth3_OptXStructDepth2_Set_Float64Reflect)
	}
	// XUnionDepth3_OptXStructDepth2_Set_Float64F6 represents field F6 of the XUnionDepth3_OptXStructDepth2_Set_Float64 union type.
	XUnionDepth3_OptXStructDepth2_Set_Float64F6 struct{ Value *XStructDepth2_Set_Float64 }
	// __XUnionDepth3_OptXStructDepth2_Set_Float64Reflect describes the XUnionDepth3_OptXStructDepth2_Set_Float64 union type.
	__XUnionDepth3_OptXStructDepth2_Set_Float64Reflect struct {
		Name  string `vdl:"v.io/v23/vdl/vdltest.XUnionDepth3_OptXStructDepth2_Set_Float64"`
		Type  XUnionDepth3_OptXStructDepth2_Set_Float64
		Union struct {
			F6 XUnionDepth3_OptXStructDepth2_Set_Float64F6
		}
	}
)

func (x XUnionDepth3_OptXStructDepth2_Set_Float64F6) Index() int             { return 0 }
func (x XUnionDepth3_OptXStructDepth2_Set_Float64F6) Interface() interface{} { return x.Value }
func (x XUnionDepth3_OptXStructDepth2_Set_Float64F6) Name() string           { return "F6" }
func (x XUnionDepth3_OptXStructDepth2_Set_Float64F6) __VDLReflect(__XUnionDepth3_OptXStructDepth2_Set_Float64Reflect) {
}

// XSelfCycle tests self-cyclic types.
type XSelfCycle struct {
	Data int64
	Next *XSelfCycle
}

func (XSelfCycle) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XSelfCycle"`
}) {
}

// XMutualCycleB tests mutually cyclic types A and B.
type XMutualCycleB struct {
	Data int64
	A    *XMutualCycleA
}

func (XMutualCycleB) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XMutualCycleB"`
}) {
}

// XMutualCycleA tests mutually cyclic types A and B.
type XMutualCycleA struct {
	Data int64
	B    *XMutualCycleB
}

func (XMutualCycleA) __VDLReflect(struct {
	Name string `vdl:"v.io/v23/vdl/vdltest.XMutualCycleA"`
}) {
}

// Type-check native conversion functions.
var (
	_ func(VWireArrayNString, *VNativeWireArrayNString) error   = VWireArrayNStringToNative
	_ func(*VWireArrayNString, VNativeWireArrayNString) error   = VWireArrayNStringFromNative
	_ func(VWireArrayNStruct, *VNativeWireArrayNStruct) error   = VWireArrayNStructToNative
	_ func(*VWireArrayNStruct, VNativeWireArrayNStruct) error   = VWireArrayNStructFromNative
	_ func(VWireBoolNBool, *VNativeWireBoolNBool) error         = VWireBoolNBoolToNative
	_ func(*VWireBoolNBool, VNativeWireBoolNBool) error         = VWireBoolNBoolFromNative
	_ func(VWireBoolNString, *VNativeWireBoolNString) error     = VWireBoolNStringToNative
	_ func(*VWireBoolNString, VNativeWireBoolNString) error     = VWireBoolNStringFromNative
	_ func(VWireBoolNStruct, *VNativeWireBoolNStruct) error     = VWireBoolNStructToNative
	_ func(*VWireBoolNStruct, VNativeWireBoolNStruct) error     = VWireBoolNStructFromNative
	_ func(VWireIntNInt, *VNativeWireIntNInt) error             = VWireIntNIntToNative
	_ func(*VWireIntNInt, VNativeWireIntNInt) error             = VWireIntNIntFromNative
	_ func(VWireIntNString, *VNativeWireIntNString) error       = VWireIntNStringToNative
	_ func(*VWireIntNString, VNativeWireIntNString) error       = VWireIntNStringFromNative
	_ func(VWireIntNStruct, *VNativeWireIntNStruct) error       = VWireIntNStructToNative
	_ func(*VWireIntNStruct, VNativeWireIntNStruct) error       = VWireIntNStructFromNative
	_ func(VWireListNString, *VNativeWireListNString) error     = VWireListNStringToNative
	_ func(*VWireListNString, VNativeWireListNString) error     = VWireListNStringFromNative
	_ func(VWireListNStruct, *VNativeWireListNStruct) error     = VWireListNStructToNative
	_ func(*VWireListNStruct, VNativeWireListNStruct) error     = VWireListNStructFromNative
	_ func(VWireStringNString, *VNativeWireStringNString) error = VWireStringNStringToNative
	_ func(*VWireStringNString, VNativeWireStringNString) error = VWireStringNStringFromNative
	_ func(VWireStringNStruct, *VNativeWireStringNStruct) error = VWireStringNStructToNative
	_ func(*VWireStringNStruct, VNativeWireStringNStruct) error = VWireStringNStructFromNative
	_ func(VWireStructNArray, *VNativeWireStructNArray) error   = VWireStructNArrayToNative
	_ func(*VWireStructNArray, VNativeWireStructNArray) error   = VWireStructNArrayFromNative
	_ func(VWireStructNSlice, *VNativeWireStructNSlice) error   = VWireStructNSliceToNative
	_ func(*VWireStructNSlice, VNativeWireStructNSlice) error   = VWireStructNSliceFromNative
	_ func(VWireStructNString, *VNativeWireStructNString) error = VWireStructNStringToNative
	_ func(*VWireStructNString, VNativeWireStructNString) error = VWireStructNStringFromNative
	_ func(VWireStructNStruct, *VNativeWireStructNStruct) error = VWireStructNStructToNative
	_ func(*VWireStructNStruct, VNativeWireStructNStruct) error = VWireStructNStructFromNative
	_ func(VWireUnionNArray, *VNativeWireUnionNArray) error     = VWireUnionNArrayToNative
	_ func(*VWireUnionNArray, VNativeWireUnionNArray) error     = VWireUnionNArrayFromNative
	_ func(VWireUnionNSlice, *VNativeWireUnionNSlice) error     = VWireUnionNSliceToNative
	_ func(*VWireUnionNSlice, VNativeWireUnionNSlice) error     = VWireUnionNSliceFromNative
	_ func(VWireUnionNString, *VNativeWireUnionNString) error   = VWireUnionNStringToNative
	_ func(*VWireUnionNString, VNativeWireUnionNString) error   = VWireUnionNStringFromNative
	_ func(VWireUnionNStruct, *VNativeWireUnionNStruct) error   = VWireUnionNStructToNative
	_ func(*VWireUnionNStruct, VNativeWireUnionNStruct) error   = VWireUnionNStructFromNative
)

//////////////////////////////////////////////////
// Const definitions

var vAllFail = []vdlEntry(nil)
var vAllPass = []vdlEntry{
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "any(nil)",
		SourceLabel: "any(nil)",
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "false",
		Target:      false,
		SourceLabel: "false",
		Source:      false,
	},
	{
		Label:       "Zero",
		TargetLabel: "false",
		Target:      false,
		SourceLabel: "VBool(false)",
		Source:      VBool(false),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "true",
		Target:      true,
		SourceLabel: "true",
		Source:      true,
	},
	{
		Label:       "Full",
		TargetLabel: "true",
		Target:      true,
		SourceLabel: "VBool(true)",
		Source:      VBool(true),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VBool(false)",
		Target:      VBool(false),
		SourceLabel: "VBool(false)",
		Source:      VBool(false),
	},
	{
		Label:       "Zero",
		TargetLabel: "VBool(false)",
		Target:      VBool(false),
		SourceLabel: "false",
		Source:      false,
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VBool(true)",
		Target:      VBool(true),
		SourceLabel: "VBool(true)",
		Source:      VBool(true),
	},
	{
		Label:       "Full",
		TargetLabel: "VBool(true)",
		Target:      VBool(true),
		SourceLabel: "true",
		Source:      true,
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "\"\"",
		Target:      "",
		SourceLabel: "\"\"",
		Source:      "",
	},
	{
		Label:       "Zero",
		TargetLabel: "\"\"",
		Target:      "",
		SourceLabel: "VString(\"\")",
		Source:      VString(""),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "\"abcdeΔΘΠΣΦ王普澤世界\"",
		Target:      "abcdeΔΘΠΣΦ王普澤世界",
		SourceLabel: "\"abcdeΔΘΠΣΦ王普澤世界\"",
		Source:      "abcdeΔΘΠΣΦ王普澤世界",
	},
	{
		Label:       "Full",
		TargetLabel: "\"abcdeΔΘΠΣΦ王普澤世界\"",
		Target:      "abcdeΔΘΠΣΦ王普澤世界",
		SourceLabel: "VString(\"abcdeΔΘΠΣΦ王普澤世界\")",
		Source:      VString("abcdeΔΘΠΣΦ王普澤世界"),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "\"Φ王\"",
		Target:      "Φ王",
		SourceLabel: "\"Φ王\"",
		Source:      "Φ王",
	},
	{
		Label:       "Random0",
		TargetLabel: "\"Φ王\"",
		Target:      "Φ王",
		SourceLabel: "VString(\"Φ王\")",
		Source:      VString("Φ王"),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VString(\"\")",
		Target:      VString(""),
		SourceLabel: "VString(\"\")",
		Source:      VString(""),
	},
	{
		Label:       "Zero",
		TargetLabel: "VString(\"\")",
		Target:      VString(""),
		SourceLabel: "\"\"",
		Source:      "",
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VString(\"abcdeΔΘΠΣΦ王普澤世界\")",
		Target:      VString("abcdeΔΘΠΣΦ王普澤世界"),
		SourceLabel: "VString(\"abcdeΔΘΠΣΦ王普澤世界\")",
		Source:      VString("abcdeΔΘΠΣΦ王普澤世界"),
	},
	{
		Label:       "Full",
		TargetLabel: "VString(\"abcdeΔΘΠΣΦ王普澤世界\")",
		Target:      VString("abcdeΔΘΠΣΦ王普澤世界"),
		SourceLabel: "\"abcdeΔΘΠΣΦ王普澤世界\"",
		Source:      "abcdeΔΘΠΣΦ王普澤世界",
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VString(\"ΠΣΦ王普\")",
		Target:      VString("ΠΣΦ王普"),
		SourceLabel: "VString(\"ΠΣΦ王普\")",
		Source:      VString("ΠΣΦ王普"),
	},
	{
		Label:       "Random0",
		TargetLabel: "VString(\"ΠΣΦ王普\")",
		Target:      VString("ΠΣΦ王普"),
		SourceLabel: "\"ΠΣΦ王普\"",
		Source:      "ΠΣΦ王普",
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "typeobject(any)",
		Target:      vdl.AnyType,
		SourceLabel: "typeobject(any)",
		Source:      vdl.AnyType,
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "typeobject(int64)",
		Target:      vdl.Int64Type,
		SourceLabel: "typeobject(int64)",
		Source:      vdl.Int64Type,
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "typeobject([]bool)",
		Target:      __VDLType_list_285,
		SourceLabel: "typeobject([]bool)",
		Source:      __VDLType_list_285,
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "byte(0)",
		Target:      byte(0),
		SourceLabel: "byte(0)",
		Source:      byte(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "byte(0)",
		Target:      byte(0),
		SourceLabel: "VByte(0)",
		Source:      VByte(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "byte(0)",
		Target:      byte(0),
		SourceLabel: "int64(0)",
		Source:      int64(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "byte(255)",
		Target:      byte(255),
		SourceLabel: "byte(255)",
		Source:      byte(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "byte(255)",
		Target:      byte(255),
		SourceLabel: "uint16(255)",
		Source:      uint16(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "byte(255)",
		Target:      byte(255),
		SourceLabel: "uint32(255)",
		Source:      uint32(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "byte(255)",
		Target:      byte(255),
		SourceLabel: "uint64(255)",
		Source:      uint64(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "byte(255)",
		Target:      byte(255),
		SourceLabel: "int16(255)",
		Source:      int16(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "byte(255)",
		Target:      byte(255),
		SourceLabel: "int32(255)",
		Source:      int32(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "byte(255)",
		Target:      byte(255),
		SourceLabel: "int64(255)",
		Source:      int64(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "byte(255)",
		Target:      byte(255),
		SourceLabel: "float32(255)",
		Source:      float32(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "byte(255)",
		Target:      byte(255),
		SourceLabel: "float64(255)",
		Source:      float64(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "byte(255)",
		Target:      byte(255),
		SourceLabel: "VUint64(255)",
		Source:      VUint64(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "byte(255)",
		Target:      byte(255),
		SourceLabel: "VByte(255)",
		Source:      VByte(255),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "byte(1)",
		Target:      byte(1),
		SourceLabel: "byte(1)",
		Source:      byte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "byte(1)",
		Target:      byte(1),
		SourceLabel: "uint16(1)",
		Source:      uint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "byte(1)",
		Target:      byte(1),
		SourceLabel: "uint32(1)",
		Source:      uint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "byte(1)",
		Target:      byte(1),
		SourceLabel: "uint64(1)",
		Source:      uint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "byte(1)",
		Target:      byte(1),
		SourceLabel: "int8(1)",
		Source:      int8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "byte(1)",
		Target:      byte(1),
		SourceLabel: "int16(1)",
		Source:      int16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "byte(1)",
		Target:      byte(1),
		SourceLabel: "int32(1)",
		Source:      int32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "byte(1)",
		Target:      byte(1),
		SourceLabel: "int64(1)",
		Source:      int64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "byte(1)",
		Target:      byte(1),
		SourceLabel: "float32(1)",
		Source:      float32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "byte(1)",
		Target:      byte(1),
		SourceLabel: "float64(1)",
		Source:      float64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "byte(1)",
		Target:      byte(1),
		SourceLabel: "VUint64(1)",
		Source:      VUint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "byte(1)",
		Target:      byte(1),
		SourceLabel: "VInt16(1)",
		Source:      VInt16(1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "byte(123)",
		Target:      byte(123),
		SourceLabel: "byte(123)",
		Source:      byte(123),
	},
	{
		Label:       "Full",
		TargetLabel: "byte(123)",
		Target:      byte(123),
		SourceLabel: "VInt8(123)",
		Source:      VInt8(123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "byte(2)",
		Target:      byte(2),
		SourceLabel: "byte(2)",
		Source:      byte(2),
	},
	{
		Label:       "Random0",
		TargetLabel: "byte(2)",
		Target:      byte(2),
		SourceLabel: "VUint16(2)",
		Source:      VUint16(2),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VByte(0)",
		Target:      VByte(0),
		SourceLabel: "VByte(0)",
		Source:      VByte(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VByte(0)",
		Target:      VByte(0),
		SourceLabel: "VInt8(0)",
		Source:      VInt8(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VByte(0)",
		Target:      VByte(0),
		SourceLabel: "VUint32(0)",
		Source:      VUint32(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "VByte(255)",
		Target:      VByte(255),
		SourceLabel: "VByte(255)",
		Source:      VByte(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "VByte(255)",
		Target:      VByte(255),
		SourceLabel: "VUint16(255)",
		Source:      VUint16(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "VByte(255)",
		Target:      VByte(255),
		SourceLabel: "VUint32(255)",
		Source:      VUint32(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "VByte(255)",
		Target:      VByte(255),
		SourceLabel: "VUint64(255)",
		Source:      VUint64(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "VByte(255)",
		Target:      VByte(255),
		SourceLabel: "VInt16(255)",
		Source:      VInt16(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "VByte(255)",
		Target:      VByte(255),
		SourceLabel: "VInt32(255)",
		Source:      VInt32(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "VByte(255)",
		Target:      VByte(255),
		SourceLabel: "VInt64(255)",
		Source:      VInt64(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "VByte(255)",
		Target:      VByte(255),
		SourceLabel: "VFloat32(255)",
		Source:      VFloat32(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "VByte(255)",
		Target:      VByte(255),
		SourceLabel: "VFloat64(255)",
		Source:      VFloat64(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "VByte(255)",
		Target:      VByte(255),
		SourceLabel: "int16(255)",
		Source:      int16(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "VByte(255)",
		Target:      VByte(255),
		SourceLabel: "float32(255)",
		Source:      float32(255),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "VByte(1)",
		Target:      VByte(1),
		SourceLabel: "VByte(1)",
		Source:      VByte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VByte(1)",
		Target:      VByte(1),
		SourceLabel: "VUint16(1)",
		Source:      VUint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VByte(1)",
		Target:      VByte(1),
		SourceLabel: "VUint32(1)",
		Source:      VUint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VByte(1)",
		Target:      VByte(1),
		SourceLabel: "VUint64(1)",
		Source:      VUint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VByte(1)",
		Target:      VByte(1),
		SourceLabel: "VInt8(1)",
		Source:      VInt8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VByte(1)",
		Target:      VByte(1),
		SourceLabel: "VInt16(1)",
		Source:      VInt16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VByte(1)",
		Target:      VByte(1),
		SourceLabel: "VInt32(1)",
		Source:      VInt32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VByte(1)",
		Target:      VByte(1),
		SourceLabel: "VInt64(1)",
		Source:      VInt64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VByte(1)",
		Target:      VByte(1),
		SourceLabel: "VFloat32(1)",
		Source:      VFloat32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VByte(1)",
		Target:      VByte(1),
		SourceLabel: "VFloat64(1)",
		Source:      VFloat64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VByte(1)",
		Target:      VByte(1),
		SourceLabel: "uint64(1)",
		Source:      uint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VByte(1)",
		Target:      VByte(1),
		SourceLabel: "int16(1)",
		Source:      int16(1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VByte(123)",
		Target:      VByte(123),
		SourceLabel: "VByte(123)",
		Source:      VByte(123),
	},
	{
		Label:       "Full",
		TargetLabel: "VByte(123)",
		Target:      VByte(123),
		SourceLabel: "uint16(123)",
		Source:      uint16(123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VByte(226)",
		Target:      VByte(226),
		SourceLabel: "VByte(226)",
		Source:      VByte(226),
	},
	{
		Label:       "Random0",
		TargetLabel: "VByte(226)",
		Target:      VByte(226),
		SourceLabel: "VFloat64(226)",
		Source:      VFloat64(226),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VEnumAbc.A",
		Target:      VEnumAbcA,
		SourceLabel: "VEnumAbc.A",
		Source:      VEnumAbcA,
	},
	{
		Label:       "Zero",
		TargetLabel: "VEnumAbc.A",
		Target:      VEnumAbcA,
		SourceLabel: "\"A\"",
		Source:      "A",
	},
	{
		Label:       "Zero",
		TargetLabel: "VEnumAbc.A",
		Target:      VEnumAbcA,
		SourceLabel: "VString(\"A\")",
		Source:      VString("A"),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VEnumAbc.B",
		Target:      VEnumAbcB,
		SourceLabel: "VEnumAbc.B",
		Source:      VEnumAbcB,
	},
	{
		Label:       "Full",
		TargetLabel: "VEnumAbc.B",
		Target:      VEnumAbcB,
		SourceLabel: "\"B\"",
		Source:      "B",
	},
	{
		Label:       "Full",
		TargetLabel: "VEnumAbc.B",
		Target:      VEnumAbcB,
		SourceLabel: "VString(\"B\")",
		Source:      VString("B"),
	},
	{
		Label:       "Full",
		TargetLabel: "VEnumAbc.B",
		Target:      VEnumAbcB,
		SourceLabel: "VEnumBcd.B",
		Source:      VEnumBcdB,
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VEnumAbc.C",
		Target:      VEnumAbcC,
		SourceLabel: "VEnumAbc.C",
		Source:      VEnumAbcC,
	},
	{
		Label:       "Full",
		TargetLabel: "VEnumAbc.C",
		Target:      VEnumAbcC,
		SourceLabel: "\"C\"",
		Source:      "C",
	},
	{
		Label:       "Full",
		TargetLabel: "VEnumAbc.C",
		Target:      VEnumAbcC,
		SourceLabel: "VString(\"C\")",
		Source:      VString("C"),
	},
	{
		Label:       "Full",
		TargetLabel: "VEnumAbc.C",
		Target:      VEnumAbcC,
		SourceLabel: "VEnumBcd.C",
		Source:      VEnumBcdC,
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VEnumBcd.B",
		Target:      VEnumBcdB,
		SourceLabel: "VEnumBcd.B",
		Source:      VEnumBcdB,
	},
	{
		Label:       "Zero",
		TargetLabel: "VEnumBcd.B",
		Target:      VEnumBcdB,
		SourceLabel: "VEnumAbc.B",
		Source:      VEnumAbcB,
	},
	{
		Label:       "Zero",
		TargetLabel: "VEnumBcd.B",
		Target:      VEnumBcdB,
		SourceLabel: "VString(\"B\")",
		Source:      VString("B"),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VEnumBcd.C",
		Target:      VEnumBcdC,
		SourceLabel: "VEnumBcd.C",
		Source:      VEnumBcdC,
	},
	{
		Label:       "Full",
		TargetLabel: "VEnumBcd.C",
		Target:      VEnumBcdC,
		SourceLabel: "\"C\"",
		Source:      "C",
	},
	{
		Label:       "Full",
		TargetLabel: "VEnumBcd.C",
		Target:      VEnumBcdC,
		SourceLabel: "VString(\"C\")",
		Source:      VString("C"),
	},
	{
		Label:       "Full",
		TargetLabel: "VEnumBcd.C",
		Target:      VEnumBcdC,
		SourceLabel: "VEnumAbc.C",
		Source:      VEnumAbcC,
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VEnumBcd.D",
		Target:      VEnumBcdD,
		SourceLabel: "VEnumBcd.D",
		Source:      VEnumBcdD,
	},
	{
		Label:       "Full",
		TargetLabel: "VEnumBcd.D",
		Target:      VEnumBcdD,
		SourceLabel: "\"D\"",
		Source:      "D",
	},
	{
		Label:       "Full",
		TargetLabel: "VEnumBcd.D",
		Target:      VEnumBcdD,
		SourceLabel: "VString(\"D\")",
		Source:      VString("D"),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructEmpty{}",
		Target:      VStructEmpty{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructEmpty{}",
		Target:      VStructEmpty{},
		SourceLabel: "VStructDepth3_OptVStructDepth2_Set_Float64{}",
		Source:      VStructDepth3_OptVStructDepth2_Set_Float64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructEmpty{}",
		Target:      VStructEmpty{},
		SourceLabel: "VStructDepth3_List_VUnionDepth1_All{}",
		Source:      VStructDepth3_List_VUnionDepth1_All{},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VNamedError{}",
		Target:      VNamedError{},
		SourceLabel: "VNamedError{}",
		Source:      VNamedError{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VNamedError{}",
		Target:      VNamedError{},
		SourceLabel: "?VNamedError{}",
		Source:      &VNamedError{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VNamedError{}",
		Target:      VNamedError{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VNamedError{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "VNamedError{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VNamedError{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "?VNamedError{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: &VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VNamedError{Msg: \"deΔΘΠΣΦ王普\"}",
		Target: VNamedError{
			Msg: "deΔΘΠΣΦ王普",
		},
		SourceLabel: "VNamedError{Msg: \"deΔΘΠΣΦ王普\"}",
		Source: VNamedError{
			Msg: "deΔΘΠΣΦ王普",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VNamedError{Msg: \"deΔΘΠΣΦ王普\"}",
		Target: VNamedError{
			Msg: "deΔΘΠΣΦ王普",
		},
		SourceLabel: "?VNamedError{Msg: \"deΔΘΠΣΦ王普\"}",
		Source: &VNamedError{
			Msg: "deΔΘΠΣΦ王普",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "error(nil)",
		Target:      (*verror.E)(nil),
		SourceLabel: "error(nil)",
		Source:      (*verror.E)(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "error(nil)",
		Target:      (*verror.E)(nil),
		SourceLabel: "?VStructEmpty(nil)",
		Source:      (*VStructEmpty)(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "error(nil)",
		Target:      (*verror.E)(nil),
		SourceLabel: "?VNamedError(nil)",
		Source:      (*VNamedError)(nil),
	},
	{
		Label:       "NilAny",
		TargetLabel: "error(nil)",
		Target:      (*verror.E)(nil),
		SourceLabel: "any(nil)",
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "error{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: verror.FromWire(&vdl.WireError{
			Id:        "abcdeΔΘΠΣΦ王普澤世界",
			RetryCode: vdl.WireRetryCodeRetryBackoff,
			Msg:       "abcdeΔΘΠΣΦ王普澤世界",
		}),
		SourceLabel: "error{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: verror.FromWire(&vdl.WireError{
			Id:        "abcdeΔΘΠΣΦ王普澤世界",
			RetryCode: vdl.WireRetryCodeRetryBackoff,
			Msg:       "abcdeΔΘΠΣΦ王普澤世界",
		}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "error{Id: \"cdeΔΘΠΣΦ王\", RetryCode: RetryRefetch, Msg: \"bcdeΔΘΠΣΦ\"}",
		Target: verror.FromWire(&vdl.WireError{
			Id:        "cdeΔΘΠΣΦ王",
			RetryCode: vdl.WireRetryCodeRetryRefetch,
			Msg:       "bcdeΔΘΠΣΦ",
		}),
		SourceLabel: "error{Id: \"cdeΔΘΠΣΦ王\", RetryCode: RetryRefetch, Msg: \"bcdeΔΘΠΣΦ\"}",
		Source: verror.FromWire(&vdl.WireError{
			Id:        "cdeΔΘΠΣΦ王",
			RetryCode: vdl.WireRetryCodeRetryRefetch,
			Msg:       "bcdeΔΘΠΣΦ",
		}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "uint16(0)",
		Target:      uint16(0),
		SourceLabel: "uint16(0)",
		Source:      uint16(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "uint16(0)",
		Target:      uint16(0),
		SourceLabel: "VFloat64(0)",
		Source:      VFloat64(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "uint16(0)",
		Target:      uint16(0),
		SourceLabel: "VFloat32(0)",
		Source:      VFloat32(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "uint16(65535)",
		Target:      uint16(65535),
		SourceLabel: "uint16(65535)",
		Source:      uint16(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "uint16(65535)",
		Target:      uint16(65535),
		SourceLabel: "uint32(65535)",
		Source:      uint32(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "uint16(65535)",
		Target:      uint16(65535),
		SourceLabel: "uint64(65535)",
		Source:      uint64(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "uint16(65535)",
		Target:      uint16(65535),
		SourceLabel: "int32(65535)",
		Source:      int32(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "uint16(65535)",
		Target:      uint16(65535),
		SourceLabel: "int64(65535)",
		Source:      int64(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "uint16(65535)",
		Target:      uint16(65535),
		SourceLabel: "float32(65535)",
		Source:      float32(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "uint16(65535)",
		Target:      uint16(65535),
		SourceLabel: "float64(65535)",
		Source:      float64(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "uint16(65535)",
		Target:      uint16(65535),
		SourceLabel: "VUint64(65535)",
		Source:      VUint64(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "uint16(65535)",
		Target:      uint16(65535),
		SourceLabel: "VInt64(65535)",
		Source:      VInt64(65535),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "uint16(1)",
		Target:      uint16(1),
		SourceLabel: "uint16(1)",
		Source:      uint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint16(1)",
		Target:      uint16(1),
		SourceLabel: "byte(1)",
		Source:      byte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint16(1)",
		Target:      uint16(1),
		SourceLabel: "uint32(1)",
		Source:      uint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint16(1)",
		Target:      uint16(1),
		SourceLabel: "uint64(1)",
		Source:      uint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint16(1)",
		Target:      uint16(1),
		SourceLabel: "int8(1)",
		Source:      int8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint16(1)",
		Target:      uint16(1),
		SourceLabel: "int16(1)",
		Source:      int16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint16(1)",
		Target:      uint16(1),
		SourceLabel: "int32(1)",
		Source:      int32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint16(1)",
		Target:      uint16(1),
		SourceLabel: "int64(1)",
		Source:      int64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint16(1)",
		Target:      uint16(1),
		SourceLabel: "float32(1)",
		Source:      float32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint16(1)",
		Target:      uint16(1),
		SourceLabel: "float64(1)",
		Source:      float64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint16(1)",
		Target:      uint16(1),
		SourceLabel: "VByte(1)",
		Source:      VByte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint16(1)",
		Target:      uint16(1),
		SourceLabel: "VFloat64(1)",
		Source:      VFloat64(1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "uint16(123)",
		Target:      uint16(123),
		SourceLabel: "uint16(123)",
		Source:      uint16(123),
	},
	{
		Label:       "Full",
		TargetLabel: "uint16(123)",
		Target:      uint16(123),
		SourceLabel: "VByte(123)",
		Source:      VByte(123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "uint16(54037)",
		Target:      uint16(54037),
		SourceLabel: "uint16(54037)",
		Source:      uint16(54037),
	},
	{
		Label:       "Random0",
		TargetLabel: "uint16(54037)",
		Target:      uint16(54037),
		SourceLabel: "VFloat64(54037)",
		Source:      VFloat64(54037),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUint16(0)",
		Target:      VUint16(0),
		SourceLabel: "VUint16(0)",
		Source:      VUint16(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUint16(0)",
		Target:      VUint16(0),
		SourceLabel: "float32(0)",
		Source:      float32(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUint16(0)",
		Target:      VUint16(0),
		SourceLabel: "int16(0)",
		Source:      int16(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "VUint16(65535)",
		Target:      VUint16(65535),
		SourceLabel: "VUint16(65535)",
		Source:      VUint16(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "VUint16(65535)",
		Target:      VUint16(65535),
		SourceLabel: "VUint32(65535)",
		Source:      VUint32(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "VUint16(65535)",
		Target:      VUint16(65535),
		SourceLabel: "VUint64(65535)",
		Source:      VUint64(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "VUint16(65535)",
		Target:      VUint16(65535),
		SourceLabel: "VInt32(65535)",
		Source:      VInt32(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "VUint16(65535)",
		Target:      VUint16(65535),
		SourceLabel: "VInt64(65535)",
		Source:      VInt64(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "VUint16(65535)",
		Target:      VUint16(65535),
		SourceLabel: "VFloat32(65535)",
		Source:      VFloat32(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "VUint16(65535)",
		Target:      VUint16(65535),
		SourceLabel: "VFloat64(65535)",
		Source:      VFloat64(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "VUint16(65535)",
		Target:      VUint16(65535),
		SourceLabel: "uint64(65535)",
		Source:      uint64(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "VUint16(65535)",
		Target:      VUint16(65535),
		SourceLabel: "uint16(65535)",
		Source:      uint16(65535),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "VUint16(1)",
		Target:      VUint16(1),
		SourceLabel: "VUint16(1)",
		Source:      VUint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint16(1)",
		Target:      VUint16(1),
		SourceLabel: "VByte(1)",
		Source:      VByte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint16(1)",
		Target:      VUint16(1),
		SourceLabel: "VUint32(1)",
		Source:      VUint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint16(1)",
		Target:      VUint16(1),
		SourceLabel: "VUint64(1)",
		Source:      VUint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint16(1)",
		Target:      VUint16(1),
		SourceLabel: "VInt8(1)",
		Source:      VInt8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint16(1)",
		Target:      VUint16(1),
		SourceLabel: "VInt16(1)",
		Source:      VInt16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint16(1)",
		Target:      VUint16(1),
		SourceLabel: "VInt32(1)",
		Source:      VInt32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint16(1)",
		Target:      VUint16(1),
		SourceLabel: "VInt64(1)",
		Source:      VInt64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint16(1)",
		Target:      VUint16(1),
		SourceLabel: "VFloat32(1)",
		Source:      VFloat32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint16(1)",
		Target:      VUint16(1),
		SourceLabel: "VFloat64(1)",
		Source:      VFloat64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint16(1)",
		Target:      VUint16(1),
		SourceLabel: "uint64(1)",
		Source:      uint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint16(1)",
		Target:      VUint16(1),
		SourceLabel: "int8(1)",
		Source:      int8(1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUint16(123)",
		Target:      VUint16(123),
		SourceLabel: "VUint16(123)",
		Source:      VUint16(123),
	},
	{
		Label:       "Full",
		TargetLabel: "VUint16(123)",
		Target:      VUint16(123),
		SourceLabel: "byte(123)",
		Source:      byte(123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUint16(193)",
		Target:      VUint16(193),
		SourceLabel: "VUint16(193)",
		Source:      VUint16(193),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUint16(193)",
		Target:      VUint16(193),
		SourceLabel: "VInt64(193)",
		Source:      VInt64(193),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "uint32(0)",
		Target:      uint32(0),
		SourceLabel: "uint32(0)",
		Source:      uint32(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "uint32(0)",
		Target:      uint32(0),
		SourceLabel: "int16(0)",
		Source:      int16(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "uint32(0)",
		Target:      uint32(0),
		SourceLabel: "float64(0)",
		Source:      float64(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "uint32(4294967295)",
		Target:      uint32(4294967295),
		SourceLabel: "uint32(4294967295)",
		Source:      uint32(4294967295),
	},
	{
		Label:       "+Max",
		TargetLabel: "uint32(4294967295)",
		Target:      uint32(4294967295),
		SourceLabel: "uint64(4294967295)",
		Source:      uint64(4294967295),
	},
	{
		Label:       "+Max",
		TargetLabel: "uint32(4294967295)",
		Target:      uint32(4294967295),
		SourceLabel: "int64(4294967295)",
		Source:      int64(4294967295),
	},
	{
		Label:       "+Max",
		TargetLabel: "uint32(4294967295)",
		Target:      uint32(4294967295),
		SourceLabel: "float64(4.294967295e+09)",
		Source:      float64(4.294967295e+09),
	},
	{
		Label:       "+Max",
		TargetLabel: "uint32(4294967295)",
		Target:      uint32(4294967295),
		SourceLabel: "VUint32(4294967295)",
		Source:      VUint32(4294967295),
	},
	{
		Label:       "+Max",
		TargetLabel: "uint32(4294967295)",
		Target:      uint32(4294967295),
		SourceLabel: "VUint64(4294967295)",
		Source:      VUint64(4294967295),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "uint32(1)",
		Target:      uint32(1),
		SourceLabel: "uint32(1)",
		Source:      uint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint32(1)",
		Target:      uint32(1),
		SourceLabel: "byte(1)",
		Source:      byte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint32(1)",
		Target:      uint32(1),
		SourceLabel: "uint16(1)",
		Source:      uint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint32(1)",
		Target:      uint32(1),
		SourceLabel: "uint64(1)",
		Source:      uint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint32(1)",
		Target:      uint32(1),
		SourceLabel: "int8(1)",
		Source:      int8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint32(1)",
		Target:      uint32(1),
		SourceLabel: "int16(1)",
		Source:      int16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint32(1)",
		Target:      uint32(1),
		SourceLabel: "int32(1)",
		Source:      int32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint32(1)",
		Target:      uint32(1),
		SourceLabel: "int64(1)",
		Source:      int64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint32(1)",
		Target:      uint32(1),
		SourceLabel: "float32(1)",
		Source:      float32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint32(1)",
		Target:      uint32(1),
		SourceLabel: "float64(1)",
		Source:      float64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint32(1)",
		Target:      uint32(1),
		SourceLabel: "VInt8(1)",
		Source:      VInt8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint32(1)",
		Target:      uint32(1),
		SourceLabel: "VFloat32(1)",
		Source:      VFloat32(1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "uint32(123)",
		Target:      uint32(123),
		SourceLabel: "uint32(123)",
		Source:      uint32(123),
	},
	{
		Label:       "Full",
		TargetLabel: "uint32(123)",
		Target:      uint32(123),
		SourceLabel: "float64(123)",
		Source:      float64(123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "uint32(4113601333)",
		Target:      uint32(4113601333),
		SourceLabel: "uint32(4113601333)",
		Source:      uint32(4113601333),
	},
	{
		Label:       "Random0",
		TargetLabel: "uint32(4113601333)",
		Target:      uint32(4113601333),
		SourceLabel: "VInt64(4113601333)",
		Source:      VInt64(4113601333),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUint32(0)",
		Target:      VUint32(0),
		SourceLabel: "VUint32(0)",
		Source:      VUint32(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUint32(0)",
		Target:      VUint32(0),
		SourceLabel: "uint16(0)",
		Source:      uint16(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUint32(0)",
		Target:      VUint32(0),
		SourceLabel: "VInt8(0)",
		Source:      VInt8(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "VUint32(4294967295)",
		Target:      VUint32(4294967295),
		SourceLabel: "VUint32(4294967295)",
		Source:      VUint32(4294967295),
	},
	{
		Label:       "+Max",
		TargetLabel: "VUint32(4294967295)",
		Target:      VUint32(4294967295),
		SourceLabel: "VUint64(4294967295)",
		Source:      VUint64(4294967295),
	},
	{
		Label:       "+Max",
		TargetLabel: "VUint32(4294967295)",
		Target:      VUint32(4294967295),
		SourceLabel: "VInt64(4294967295)",
		Source:      VInt64(4294967295),
	},
	{
		Label:       "+Max",
		TargetLabel: "VUint32(4294967295)",
		Target:      VUint32(4294967295),
		SourceLabel: "VFloat64(4.294967295e+09)",
		Source:      VFloat64(4.294967295e+09),
	},
	{
		Label:       "+Max",
		TargetLabel: "VUint32(4294967295)",
		Target:      VUint32(4294967295),
		SourceLabel: "uint64(4294967295)",
		Source:      uint64(4294967295),
	},
	{
		Label:       "+Max",
		TargetLabel: "VUint32(4294967295)",
		Target:      VUint32(4294967295),
		SourceLabel: "uint32(4294967295)",
		Source:      uint32(4294967295),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "VUint32(1)",
		Target:      VUint32(1),
		SourceLabel: "VUint32(1)",
		Source:      VUint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint32(1)",
		Target:      VUint32(1),
		SourceLabel: "VByte(1)",
		Source:      VByte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint32(1)",
		Target:      VUint32(1),
		SourceLabel: "VUint16(1)",
		Source:      VUint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint32(1)",
		Target:      VUint32(1),
		SourceLabel: "VUint64(1)",
		Source:      VUint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint32(1)",
		Target:      VUint32(1),
		SourceLabel: "VInt8(1)",
		Source:      VInt8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint32(1)",
		Target:      VUint32(1),
		SourceLabel: "VInt16(1)",
		Source:      VInt16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint32(1)",
		Target:      VUint32(1),
		SourceLabel: "VInt32(1)",
		Source:      VInt32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint32(1)",
		Target:      VUint32(1),
		SourceLabel: "VInt64(1)",
		Source:      VInt64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint32(1)",
		Target:      VUint32(1),
		SourceLabel: "VFloat32(1)",
		Source:      VFloat32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint32(1)",
		Target:      VUint32(1),
		SourceLabel: "VFloat64(1)",
		Source:      VFloat64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint32(1)",
		Target:      VUint32(1),
		SourceLabel: "float32(1)",
		Source:      float32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint32(1)",
		Target:      VUint32(1),
		SourceLabel: "int16(1)",
		Source:      int16(1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUint32(123)",
		Target:      VUint32(123),
		SourceLabel: "VUint32(123)",
		Source:      VUint32(123),
	},
	{
		Label:       "Full",
		TargetLabel: "VUint32(123)",
		Target:      VUint32(123),
		SourceLabel: "VInt64(123)",
		Source:      VInt64(123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUint32(3350083602)",
		Target:      VUint32(3350083602),
		SourceLabel: "VUint32(3350083602)",
		Source:      VUint32(3350083602),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUint32(3350083602)",
		Target:      VUint32(3350083602),
		SourceLabel: "VUint64(3350083602)",
		Source:      VUint64(3350083602),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "uint64(0)",
		Target:      uint64(0),
		SourceLabel: "uint64(0)",
		Source:      uint64(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "uint64(0)",
		Target:      uint64(0),
		SourceLabel: "VUint64(0)",
		Source:      VUint64(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "uint64(0)",
		Target:      uint64(0),
		SourceLabel: "VInt8(0)",
		Source:      VInt8(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "uint64(18446744073709551615)",
		Target:      uint64(18446744073709551615),
		SourceLabel: "uint64(18446744073709551615)",
		Source:      uint64(18446744073709551615),
	},
	{
		Label:       "+Max",
		TargetLabel: "uint64(18446744073709551615)",
		Target:      uint64(18446744073709551615),
		SourceLabel: "VUint64(18446744073709551615)",
		Source:      VUint64(18446744073709551615),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "uint64(1)",
		Target:      uint64(1),
		SourceLabel: "uint64(1)",
		Source:      uint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint64(1)",
		Target:      uint64(1),
		SourceLabel: "byte(1)",
		Source:      byte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint64(1)",
		Target:      uint64(1),
		SourceLabel: "uint16(1)",
		Source:      uint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint64(1)",
		Target:      uint64(1),
		SourceLabel: "uint32(1)",
		Source:      uint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint64(1)",
		Target:      uint64(1),
		SourceLabel: "int8(1)",
		Source:      int8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint64(1)",
		Target:      uint64(1),
		SourceLabel: "int16(1)",
		Source:      int16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint64(1)",
		Target:      uint64(1),
		SourceLabel: "int32(1)",
		Source:      int32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint64(1)",
		Target:      uint64(1),
		SourceLabel: "int64(1)",
		Source:      int64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint64(1)",
		Target:      uint64(1),
		SourceLabel: "float32(1)",
		Source:      float32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint64(1)",
		Target:      uint64(1),
		SourceLabel: "float64(1)",
		Source:      float64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint64(1)",
		Target:      uint64(1),
		SourceLabel: "VUint16(1)",
		Source:      VUint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "uint64(1)",
		Target:      uint64(1),
		SourceLabel: "VInt32(1)",
		Source:      VInt32(1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "uint64(123)",
		Target:      uint64(123),
		SourceLabel: "uint64(123)",
		Source:      uint64(123),
	},
	{
		Label:       "Full",
		TargetLabel: "uint64(123)",
		Target:      uint64(123),
		SourceLabel: "uint32(123)",
		Source:      uint32(123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "uint64(5873538069767632042)",
		Target:      uint64(5873538069767632042),
		SourceLabel: "uint64(5873538069767632042)",
		Source:      uint64(5873538069767632042),
	},
	{
		Label:       "Random0",
		TargetLabel: "uint64(5873538069767632042)",
		Target:      uint64(5873538069767632042),
		SourceLabel: "VInt64(5873538069767632042)",
		Source:      VInt64(5873538069767632042),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUint64(0)",
		Target:      VUint64(0),
		SourceLabel: "VUint64(0)",
		Source:      VUint64(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUint64(0)",
		Target:      VUint64(0),
		SourceLabel: "VFloat64(0)",
		Source:      VFloat64(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUint64(0)",
		Target:      VUint64(0),
		SourceLabel: "VInt64(0)",
		Source:      VInt64(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "VUint64(18446744073709551615)",
		Target:      VUint64(18446744073709551615),
		SourceLabel: "VUint64(18446744073709551615)",
		Source:      VUint64(18446744073709551615),
	},
	{
		Label:       "+Max",
		TargetLabel: "VUint64(18446744073709551615)",
		Target:      VUint64(18446744073709551615),
		SourceLabel: "uint64(18446744073709551615)",
		Source:      uint64(18446744073709551615),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "VUint64(1)",
		Target:      VUint64(1),
		SourceLabel: "VUint64(1)",
		Source:      VUint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint64(1)",
		Target:      VUint64(1),
		SourceLabel: "VByte(1)",
		Source:      VByte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint64(1)",
		Target:      VUint64(1),
		SourceLabel: "VUint16(1)",
		Source:      VUint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint64(1)",
		Target:      VUint64(1),
		SourceLabel: "VUint32(1)",
		Source:      VUint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint64(1)",
		Target:      VUint64(1),
		SourceLabel: "VInt8(1)",
		Source:      VInt8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint64(1)",
		Target:      VUint64(1),
		SourceLabel: "VInt16(1)",
		Source:      VInt16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint64(1)",
		Target:      VUint64(1),
		SourceLabel: "VInt32(1)",
		Source:      VInt32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint64(1)",
		Target:      VUint64(1),
		SourceLabel: "VInt64(1)",
		Source:      VInt64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint64(1)",
		Target:      VUint64(1),
		SourceLabel: "VFloat32(1)",
		Source:      VFloat32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint64(1)",
		Target:      VUint64(1),
		SourceLabel: "VFloat64(1)",
		Source:      VFloat64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint64(1)",
		Target:      VUint64(1),
		SourceLabel: "byte(1)",
		Source:      byte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VUint64(1)",
		Target:      VUint64(1),
		SourceLabel: "int32(1)",
		Source:      int32(1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUint64(123)",
		Target:      VUint64(123),
		SourceLabel: "VUint64(123)",
		Source:      VUint64(123),
	},
	{
		Label:       "Full",
		TargetLabel: "VUint64(123)",
		Target:      VUint64(123),
		SourceLabel: "VFloat32(123)",
		Source:      VFloat32(123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUint64(11715517065073666003)",
		Target:      VUint64(11715517065073666003),
		SourceLabel: "VUint64(11715517065073666003)",
		Source:      VUint64(11715517065073666003),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUint64(11715517065073666003)",
		Target:      VUint64(11715517065073666003),
		SourceLabel: "uint64(11715517065073666003)",
		Source:      uint64(11715517065073666003),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "int8(0)",
		Target:      int8(0),
		SourceLabel: "int8(0)",
		Source:      int8(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "int8(0)",
		Target:      int8(0),
		SourceLabel: "VUint32(0)",
		Source:      VUint32(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "int8(0)",
		Target:      int8(0),
		SourceLabel: "VFloat64(0)",
		Source:      VFloat64(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "int8(127)",
		Target:      int8(127),
		SourceLabel: "int8(127)",
		Source:      int8(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "int8(127)",
		Target:      int8(127),
		SourceLabel: "byte(127)",
		Source:      byte(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "int8(127)",
		Target:      int8(127),
		SourceLabel: "uint16(127)",
		Source:      uint16(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "int8(127)",
		Target:      int8(127),
		SourceLabel: "uint32(127)",
		Source:      uint32(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "int8(127)",
		Target:      int8(127),
		SourceLabel: "uint64(127)",
		Source:      uint64(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "int8(127)",
		Target:      int8(127),
		SourceLabel: "int16(127)",
		Source:      int16(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "int8(127)",
		Target:      int8(127),
		SourceLabel: "int32(127)",
		Source:      int32(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "int8(127)",
		Target:      int8(127),
		SourceLabel: "int64(127)",
		Source:      int64(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "int8(127)",
		Target:      int8(127),
		SourceLabel: "float32(127)",
		Source:      float32(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "int8(127)",
		Target:      int8(127),
		SourceLabel: "float64(127)",
		Source:      float64(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "int8(127)",
		Target:      int8(127),
		SourceLabel: "VInt64(127)",
		Source:      VInt64(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "int8(127)",
		Target:      int8(127),
		SourceLabel: "VFloat32(127)",
		Source:      VFloat32(127),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "int8(1)",
		Target:      int8(1),
		SourceLabel: "int8(1)",
		Source:      int8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int8(1)",
		Target:      int8(1),
		SourceLabel: "byte(1)",
		Source:      byte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int8(1)",
		Target:      int8(1),
		SourceLabel: "uint16(1)",
		Source:      uint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int8(1)",
		Target:      int8(1),
		SourceLabel: "uint32(1)",
		Source:      uint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int8(1)",
		Target:      int8(1),
		SourceLabel: "uint64(1)",
		Source:      uint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int8(1)",
		Target:      int8(1),
		SourceLabel: "int16(1)",
		Source:      int16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int8(1)",
		Target:      int8(1),
		SourceLabel: "int32(1)",
		Source:      int32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int8(1)",
		Target:      int8(1),
		SourceLabel: "int64(1)",
		Source:      int64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int8(1)",
		Target:      int8(1),
		SourceLabel: "float32(1)",
		Source:      float32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int8(1)",
		Target:      int8(1),
		SourceLabel: "float64(1)",
		Source:      float64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int8(1)",
		Target:      int8(1),
		SourceLabel: "VFloat32(1)",
		Source:      VFloat32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int8(1)",
		Target:      int8(1),
		SourceLabel: "VInt64(1)",
		Source:      VInt64(1),
	},
	{
		IsCanonical: true,
		Label:       "-Max",
		TargetLabel: "int8(-128)",
		Target:      int8(-128),
		SourceLabel: "int8(-128)",
		Source:      int8(-128),
	},
	{
		Label:       "-Max",
		TargetLabel: "int8(-128)",
		Target:      int8(-128),
		SourceLabel: "int16(-128)",
		Source:      int16(-128),
	},
	{
		Label:       "-Max",
		TargetLabel: "int8(-128)",
		Target:      int8(-128),
		SourceLabel: "int32(-128)",
		Source:      int32(-128),
	},
	{
		Label:       "-Max",
		TargetLabel: "int8(-128)",
		Target:      int8(-128),
		SourceLabel: "int64(-128)",
		Source:      int64(-128),
	},
	{
		Label:       "-Max",
		TargetLabel: "int8(-128)",
		Target:      int8(-128),
		SourceLabel: "float32(-128)",
		Source:      float32(-128),
	},
	{
		Label:       "-Max",
		TargetLabel: "int8(-128)",
		Target:      int8(-128),
		SourceLabel: "float64(-128)",
		Source:      float64(-128),
	},
	{
		Label:       "-Max",
		TargetLabel: "int8(-128)",
		Target:      int8(-128),
		SourceLabel: "VInt8(-128)",
		Source:      VInt8(-128),
	},
	{
		Label:       "-Max",
		TargetLabel: "int8(-128)",
		Target:      int8(-128),
		SourceLabel: "VInt64(-128)",
		Source:      VInt64(-128),
	},
	{
		IsCanonical: true,
		Label:       "-Min",
		TargetLabel: "int8(-1)",
		Target:      int8(-1),
		SourceLabel: "int8(-1)",
		Source:      int8(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int8(-1)",
		Target:      int8(-1),
		SourceLabel: "int16(-1)",
		Source:      int16(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int8(-1)",
		Target:      int8(-1),
		SourceLabel: "int32(-1)",
		Source:      int32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int8(-1)",
		Target:      int8(-1),
		SourceLabel: "int64(-1)",
		Source:      int64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int8(-1)",
		Target:      int8(-1),
		SourceLabel: "float32(-1)",
		Source:      float32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int8(-1)",
		Target:      int8(-1),
		SourceLabel: "float64(-1)",
		Source:      float64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int8(-1)",
		Target:      int8(-1),
		SourceLabel: "VInt16(-1)",
		Source:      VInt16(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int8(-1)",
		Target:      int8(-1),
		SourceLabel: "VInt8(-1)",
		Source:      VInt8(-1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "int8(-123)",
		Target:      int8(-123),
		SourceLabel: "int8(-123)",
		Source:      int8(-123),
	},
	{
		Label:       "Full",
		TargetLabel: "int8(-123)",
		Target:      int8(-123),
		SourceLabel: "VInt32(-123)",
		Source:      VInt32(-123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "int8(10)",
		Target:      int8(10),
		SourceLabel: "int8(10)",
		Source:      int8(10),
	},
	{
		Label:       "Random0",
		TargetLabel: "int8(10)",
		Target:      int8(10),
		SourceLabel: "float32(10)",
		Source:      float32(10),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VInt8(0)",
		Target:      VInt8(0),
		SourceLabel: "VInt8(0)",
		Source:      VInt8(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VInt8(0)",
		Target:      VInt8(0),
		SourceLabel: "VInt16(0)",
		Source:      VInt16(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VInt8(0)",
		Target:      VInt8(0),
		SourceLabel: "int8(0)",
		Source:      int8(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "VInt8(127)",
		Target:      VInt8(127),
		SourceLabel: "VInt8(127)",
		Source:      VInt8(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt8(127)",
		Target:      VInt8(127),
		SourceLabel: "VByte(127)",
		Source:      VByte(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt8(127)",
		Target:      VInt8(127),
		SourceLabel: "VUint16(127)",
		Source:      VUint16(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt8(127)",
		Target:      VInt8(127),
		SourceLabel: "VUint32(127)",
		Source:      VUint32(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt8(127)",
		Target:      VInt8(127),
		SourceLabel: "VUint64(127)",
		Source:      VUint64(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt8(127)",
		Target:      VInt8(127),
		SourceLabel: "VInt16(127)",
		Source:      VInt16(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt8(127)",
		Target:      VInt8(127),
		SourceLabel: "VInt32(127)",
		Source:      VInt32(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt8(127)",
		Target:      VInt8(127),
		SourceLabel: "VInt64(127)",
		Source:      VInt64(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt8(127)",
		Target:      VInt8(127),
		SourceLabel: "VFloat32(127)",
		Source:      VFloat32(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt8(127)",
		Target:      VInt8(127),
		SourceLabel: "VFloat64(127)",
		Source:      VFloat64(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt8(127)",
		Target:      VInt8(127),
		SourceLabel: "uint32(127)",
		Source:      uint32(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt8(127)",
		Target:      VInt8(127),
		SourceLabel: "float64(127)",
		Source:      float64(127),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "VInt8(1)",
		Target:      VInt8(1),
		SourceLabel: "VInt8(1)",
		Source:      VInt8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt8(1)",
		Target:      VInt8(1),
		SourceLabel: "VByte(1)",
		Source:      VByte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt8(1)",
		Target:      VInt8(1),
		SourceLabel: "VUint16(1)",
		Source:      VUint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt8(1)",
		Target:      VInt8(1),
		SourceLabel: "VUint32(1)",
		Source:      VUint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt8(1)",
		Target:      VInt8(1),
		SourceLabel: "VUint64(1)",
		Source:      VUint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt8(1)",
		Target:      VInt8(1),
		SourceLabel: "VInt16(1)",
		Source:      VInt16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt8(1)",
		Target:      VInt8(1),
		SourceLabel: "VInt32(1)",
		Source:      VInt32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt8(1)",
		Target:      VInt8(1),
		SourceLabel: "VInt64(1)",
		Source:      VInt64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt8(1)",
		Target:      VInt8(1),
		SourceLabel: "VFloat32(1)",
		Source:      VFloat32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt8(1)",
		Target:      VInt8(1),
		SourceLabel: "VFloat64(1)",
		Source:      VFloat64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt8(1)",
		Target:      VInt8(1),
		SourceLabel: "byte(1)",
		Source:      byte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt8(1)",
		Target:      VInt8(1),
		SourceLabel: "uint16(1)",
		Source:      uint16(1),
	},
	{
		IsCanonical: true,
		Label:       "-Max",
		TargetLabel: "VInt8(-128)",
		Target:      VInt8(-128),
		SourceLabel: "VInt8(-128)",
		Source:      VInt8(-128),
	},
	{
		Label:       "-Max",
		TargetLabel: "VInt8(-128)",
		Target:      VInt8(-128),
		SourceLabel: "VInt16(-128)",
		Source:      VInt16(-128),
	},
	{
		Label:       "-Max",
		TargetLabel: "VInt8(-128)",
		Target:      VInt8(-128),
		SourceLabel: "VInt32(-128)",
		Source:      VInt32(-128),
	},
	{
		Label:       "-Max",
		TargetLabel: "VInt8(-128)",
		Target:      VInt8(-128),
		SourceLabel: "VInt64(-128)",
		Source:      VInt64(-128),
	},
	{
		Label:       "-Max",
		TargetLabel: "VInt8(-128)",
		Target:      VInt8(-128),
		SourceLabel: "VFloat32(-128)",
		Source:      VFloat32(-128),
	},
	{
		Label:       "-Max",
		TargetLabel: "VInt8(-128)",
		Target:      VInt8(-128),
		SourceLabel: "VFloat64(-128)",
		Source:      VFloat64(-128),
	},
	{
		Label:       "-Max",
		TargetLabel: "VInt8(-128)",
		Target:      VInt8(-128),
		SourceLabel: "int16(-128)",
		Source:      int16(-128),
	},
	{
		Label:       "-Max",
		TargetLabel: "VInt8(-128)",
		Target:      VInt8(-128),
		SourceLabel: "float64(-128)",
		Source:      float64(-128),
	},
	{
		IsCanonical: true,
		Label:       "-Min",
		TargetLabel: "VInt8(-1)",
		Target:      VInt8(-1),
		SourceLabel: "VInt8(-1)",
		Source:      VInt8(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt8(-1)",
		Target:      VInt8(-1),
		SourceLabel: "VInt16(-1)",
		Source:      VInt16(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt8(-1)",
		Target:      VInt8(-1),
		SourceLabel: "VInt32(-1)",
		Source:      VInt32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt8(-1)",
		Target:      VInt8(-1),
		SourceLabel: "VInt64(-1)",
		Source:      VInt64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt8(-1)",
		Target:      VInt8(-1),
		SourceLabel: "VFloat32(-1)",
		Source:      VFloat32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt8(-1)",
		Target:      VInt8(-1),
		SourceLabel: "VFloat64(-1)",
		Source:      VFloat64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt8(-1)",
		Target:      VInt8(-1),
		SourceLabel: "int32(-1)",
		Source:      int32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt8(-1)",
		Target:      VInt8(-1),
		SourceLabel: "int64(-1)",
		Source:      int64(-1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VInt8(-123)",
		Target:      VInt8(-123),
		SourceLabel: "VInt8(-123)",
		Source:      VInt8(-123),
	},
	{
		Label:       "Full",
		TargetLabel: "VInt8(-123)",
		Target:      VInt8(-123),
		SourceLabel: "int8(-123)",
		Source:      int8(-123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VInt8(2)",
		Target:      VInt8(2),
		SourceLabel: "VInt8(2)",
		Source:      VInt8(2),
	},
	{
		Label:       "Random0",
		TargetLabel: "VInt8(2)",
		Target:      VInt8(2),
		SourceLabel: "VUint32(2)",
		Source:      VUint32(2),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "int16(0)",
		Target:      int16(0),
		SourceLabel: "int16(0)",
		Source:      int16(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "int16(0)",
		Target:      int16(0),
		SourceLabel: "int32(0)",
		Source:      int32(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "int16(0)",
		Target:      int16(0),
		SourceLabel: "int64(0)",
		Source:      int64(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "int16(32767)",
		Target:      int16(32767),
		SourceLabel: "int16(32767)",
		Source:      int16(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "int16(32767)",
		Target:      int16(32767),
		SourceLabel: "uint16(32767)",
		Source:      uint16(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "int16(32767)",
		Target:      int16(32767),
		SourceLabel: "uint32(32767)",
		Source:      uint32(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "int16(32767)",
		Target:      int16(32767),
		SourceLabel: "uint64(32767)",
		Source:      uint64(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "int16(32767)",
		Target:      int16(32767),
		SourceLabel: "int32(32767)",
		Source:      int32(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "int16(32767)",
		Target:      int16(32767),
		SourceLabel: "int64(32767)",
		Source:      int64(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "int16(32767)",
		Target:      int16(32767),
		SourceLabel: "float32(32767)",
		Source:      float32(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "int16(32767)",
		Target:      int16(32767),
		SourceLabel: "float64(32767)",
		Source:      float64(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "int16(32767)",
		Target:      int16(32767),
		SourceLabel: "VUint16(32767)",
		Source:      VUint16(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "int16(32767)",
		Target:      int16(32767),
		SourceLabel: "VFloat64(32767)",
		Source:      VFloat64(32767),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "int16(1)",
		Target:      int16(1),
		SourceLabel: "int16(1)",
		Source:      int16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int16(1)",
		Target:      int16(1),
		SourceLabel: "byte(1)",
		Source:      byte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int16(1)",
		Target:      int16(1),
		SourceLabel: "uint16(1)",
		Source:      uint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int16(1)",
		Target:      int16(1),
		SourceLabel: "uint32(1)",
		Source:      uint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int16(1)",
		Target:      int16(1),
		SourceLabel: "uint64(1)",
		Source:      uint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int16(1)",
		Target:      int16(1),
		SourceLabel: "int8(1)",
		Source:      int8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int16(1)",
		Target:      int16(1),
		SourceLabel: "int32(1)",
		Source:      int32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int16(1)",
		Target:      int16(1),
		SourceLabel: "int64(1)",
		Source:      int64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int16(1)",
		Target:      int16(1),
		SourceLabel: "float32(1)",
		Source:      float32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int16(1)",
		Target:      int16(1),
		SourceLabel: "float64(1)",
		Source:      float64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int16(1)",
		Target:      int16(1),
		SourceLabel: "VInt64(1)",
		Source:      VInt64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int16(1)",
		Target:      int16(1),
		SourceLabel: "VFloat32(1)",
		Source:      VFloat32(1),
	},
	{
		IsCanonical: true,
		Label:       "-Max",
		TargetLabel: "int16(-32768)",
		Target:      int16(-32768),
		SourceLabel: "int16(-32768)",
		Source:      int16(-32768),
	},
	{
		Label:       "-Max",
		TargetLabel: "int16(-32768)",
		Target:      int16(-32768),
		SourceLabel: "int32(-32768)",
		Source:      int32(-32768),
	},
	{
		Label:       "-Max",
		TargetLabel: "int16(-32768)",
		Target:      int16(-32768),
		SourceLabel: "int64(-32768)",
		Source:      int64(-32768),
	},
	{
		Label:       "-Max",
		TargetLabel: "int16(-32768)",
		Target:      int16(-32768),
		SourceLabel: "float32(-32768)",
		Source:      float32(-32768),
	},
	{
		Label:       "-Max",
		TargetLabel: "int16(-32768)",
		Target:      int16(-32768),
		SourceLabel: "float64(-32768)",
		Source:      float64(-32768),
	},
	{
		Label:       "-Max",
		TargetLabel: "int16(-32768)",
		Target:      int16(-32768),
		SourceLabel: "VInt64(-32768)",
		Source:      VInt64(-32768),
	},
	{
		Label:       "-Max",
		TargetLabel: "int16(-32768)",
		Target:      int16(-32768),
		SourceLabel: "VFloat64(-32768)",
		Source:      VFloat64(-32768),
	},
	{
		IsCanonical: true,
		Label:       "-Min",
		TargetLabel: "int16(-1)",
		Target:      int16(-1),
		SourceLabel: "int16(-1)",
		Source:      int16(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int16(-1)",
		Target:      int16(-1),
		SourceLabel: "int8(-1)",
		Source:      int8(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int16(-1)",
		Target:      int16(-1),
		SourceLabel: "int32(-1)",
		Source:      int32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int16(-1)",
		Target:      int16(-1),
		SourceLabel: "int64(-1)",
		Source:      int64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int16(-1)",
		Target:      int16(-1),
		SourceLabel: "float32(-1)",
		Source:      float32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int16(-1)",
		Target:      int16(-1),
		SourceLabel: "float64(-1)",
		Source:      float64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int16(-1)",
		Target:      int16(-1),
		SourceLabel: "VFloat64(-1)",
		Source:      VFloat64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int16(-1)",
		Target:      int16(-1),
		SourceLabel: "VFloat32(-1)",
		Source:      VFloat32(-1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "int16(-123)",
		Target:      int16(-123),
		SourceLabel: "int16(-123)",
		Source:      int16(-123),
	},
	{
		Label:       "Full",
		TargetLabel: "int16(-123)",
		Target:      int16(-123),
		SourceLabel: "float32(-123)",
		Source:      float32(-123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "int16(-6252)",
		Target:      int16(-6252),
		SourceLabel: "int16(-6252)",
		Source:      int16(-6252),
	},
	{
		Label:       "Random0",
		TargetLabel: "int16(-6252)",
		Target:      int16(-6252),
		SourceLabel: "float64(-6252)",
		Source:      float64(-6252),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VInt16(0)",
		Target:      VInt16(0),
		SourceLabel: "VInt16(0)",
		Source:      VInt16(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VInt16(0)",
		Target:      VInt16(0),
		SourceLabel: "VInt32(0)",
		Source:      VInt32(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VInt16(0)",
		Target:      VInt16(0),
		SourceLabel: "VFloat64(0)",
		Source:      VFloat64(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "VInt16(32767)",
		Target:      VInt16(32767),
		SourceLabel: "VInt16(32767)",
		Source:      VInt16(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt16(32767)",
		Target:      VInt16(32767),
		SourceLabel: "VUint16(32767)",
		Source:      VUint16(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt16(32767)",
		Target:      VInt16(32767),
		SourceLabel: "VUint32(32767)",
		Source:      VUint32(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt16(32767)",
		Target:      VInt16(32767),
		SourceLabel: "VUint64(32767)",
		Source:      VUint64(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt16(32767)",
		Target:      VInt16(32767),
		SourceLabel: "VInt32(32767)",
		Source:      VInt32(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt16(32767)",
		Target:      VInt16(32767),
		SourceLabel: "VInt64(32767)",
		Source:      VInt64(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt16(32767)",
		Target:      VInt16(32767),
		SourceLabel: "VFloat32(32767)",
		Source:      VFloat32(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt16(32767)",
		Target:      VInt16(32767),
		SourceLabel: "VFloat64(32767)",
		Source:      VFloat64(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt16(32767)",
		Target:      VInt16(32767),
		SourceLabel: "uint16(32767)",
		Source:      uint16(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt16(32767)",
		Target:      VInt16(32767),
		SourceLabel: "float64(32767)",
		Source:      float64(32767),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "VInt16(1)",
		Target:      VInt16(1),
		SourceLabel: "VInt16(1)",
		Source:      VInt16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt16(1)",
		Target:      VInt16(1),
		SourceLabel: "VByte(1)",
		Source:      VByte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt16(1)",
		Target:      VInt16(1),
		SourceLabel: "VUint16(1)",
		Source:      VUint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt16(1)",
		Target:      VInt16(1),
		SourceLabel: "VUint32(1)",
		Source:      VUint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt16(1)",
		Target:      VInt16(1),
		SourceLabel: "VUint64(1)",
		Source:      VUint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt16(1)",
		Target:      VInt16(1),
		SourceLabel: "VInt8(1)",
		Source:      VInt8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt16(1)",
		Target:      VInt16(1),
		SourceLabel: "VInt32(1)",
		Source:      VInt32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt16(1)",
		Target:      VInt16(1),
		SourceLabel: "VInt64(1)",
		Source:      VInt64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt16(1)",
		Target:      VInt16(1),
		SourceLabel: "VFloat32(1)",
		Source:      VFloat32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt16(1)",
		Target:      VInt16(1),
		SourceLabel: "VFloat64(1)",
		Source:      VFloat64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt16(1)",
		Target:      VInt16(1),
		SourceLabel: "uint16(1)",
		Source:      uint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt16(1)",
		Target:      VInt16(1),
		SourceLabel: "byte(1)",
		Source:      byte(1),
	},
	{
		IsCanonical: true,
		Label:       "-Max",
		TargetLabel: "VInt16(-32768)",
		Target:      VInt16(-32768),
		SourceLabel: "VInt16(-32768)",
		Source:      VInt16(-32768),
	},
	{
		Label:       "-Max",
		TargetLabel: "VInt16(-32768)",
		Target:      VInt16(-32768),
		SourceLabel: "VInt32(-32768)",
		Source:      VInt32(-32768),
	},
	{
		Label:       "-Max",
		TargetLabel: "VInt16(-32768)",
		Target:      VInt16(-32768),
		SourceLabel: "VInt64(-32768)",
		Source:      VInt64(-32768),
	},
	{
		Label:       "-Max",
		TargetLabel: "VInt16(-32768)",
		Target:      VInt16(-32768),
		SourceLabel: "VFloat32(-32768)",
		Source:      VFloat32(-32768),
	},
	{
		Label:       "-Max",
		TargetLabel: "VInt16(-32768)",
		Target:      VInt16(-32768),
		SourceLabel: "VFloat64(-32768)",
		Source:      VFloat64(-32768),
	},
	{
		Label:       "-Max",
		TargetLabel: "VInt16(-32768)",
		Target:      VInt16(-32768),
		SourceLabel: "int16(-32768)",
		Source:      int16(-32768),
	},
	{
		Label:       "-Max",
		TargetLabel: "VInt16(-32768)",
		Target:      VInt16(-32768),
		SourceLabel: "int32(-32768)",
		Source:      int32(-32768),
	},
	{
		IsCanonical: true,
		Label:       "-Min",
		TargetLabel: "VInt16(-1)",
		Target:      VInt16(-1),
		SourceLabel: "VInt16(-1)",
		Source:      VInt16(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt16(-1)",
		Target:      VInt16(-1),
		SourceLabel: "VInt8(-1)",
		Source:      VInt8(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt16(-1)",
		Target:      VInt16(-1),
		SourceLabel: "VInt32(-1)",
		Source:      VInt32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt16(-1)",
		Target:      VInt16(-1),
		SourceLabel: "VInt64(-1)",
		Source:      VInt64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt16(-1)",
		Target:      VInt16(-1),
		SourceLabel: "VFloat32(-1)",
		Source:      VFloat32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt16(-1)",
		Target:      VInt16(-1),
		SourceLabel: "VFloat64(-1)",
		Source:      VFloat64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt16(-1)",
		Target:      VInt16(-1),
		SourceLabel: "float32(-1)",
		Source:      float32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt16(-1)",
		Target:      VInt16(-1),
		SourceLabel: "int16(-1)",
		Source:      int16(-1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VInt16(-123)",
		Target:      VInt16(-123),
		SourceLabel: "VInt16(-123)",
		Source:      VInt16(-123),
	},
	{
		Label:       "Full",
		TargetLabel: "VInt16(-123)",
		Target:      VInt16(-123),
		SourceLabel: "int32(-123)",
		Source:      int32(-123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VInt16(-10170)",
		Target:      VInt16(-10170),
		SourceLabel: "VInt16(-10170)",
		Source:      VInt16(-10170),
	},
	{
		Label:       "Random0",
		TargetLabel: "VInt16(-10170)",
		Target:      VInt16(-10170),
		SourceLabel: "VInt64(-10170)",
		Source:      VInt64(-10170),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "int32(0)",
		Target:      int32(0),
		SourceLabel: "int32(0)",
		Source:      int32(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "int32(0)",
		Target:      int32(0),
		SourceLabel: "VInt64(0)",
		Source:      VInt64(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "int32(0)",
		Target:      int32(0),
		SourceLabel: "int64(0)",
		Source:      int64(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "int32(2147483647)",
		Target:      int32(2147483647),
		SourceLabel: "int32(2147483647)",
		Source:      int32(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "int32(2147483647)",
		Target:      int32(2147483647),
		SourceLabel: "uint32(2147483647)",
		Source:      uint32(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "int32(2147483647)",
		Target:      int32(2147483647),
		SourceLabel: "uint64(2147483647)",
		Source:      uint64(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "int32(2147483647)",
		Target:      int32(2147483647),
		SourceLabel: "int64(2147483647)",
		Source:      int64(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "int32(2147483647)",
		Target:      int32(2147483647),
		SourceLabel: "float64(2.147483647e+09)",
		Source:      float64(2.147483647e+09),
	},
	{
		Label:       "+Max",
		TargetLabel: "int32(2147483647)",
		Target:      int32(2147483647),
		SourceLabel: "VUint64(2147483647)",
		Source:      VUint64(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "int32(2147483647)",
		Target:      int32(2147483647),
		SourceLabel: "VUint32(2147483647)",
		Source:      VUint32(2147483647),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "int32(1)",
		Target:      int32(1),
		SourceLabel: "int32(1)",
		Source:      int32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int32(1)",
		Target:      int32(1),
		SourceLabel: "byte(1)",
		Source:      byte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int32(1)",
		Target:      int32(1),
		SourceLabel: "uint16(1)",
		Source:      uint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int32(1)",
		Target:      int32(1),
		SourceLabel: "uint32(1)",
		Source:      uint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int32(1)",
		Target:      int32(1),
		SourceLabel: "uint64(1)",
		Source:      uint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int32(1)",
		Target:      int32(1),
		SourceLabel: "int8(1)",
		Source:      int8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int32(1)",
		Target:      int32(1),
		SourceLabel: "int16(1)",
		Source:      int16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int32(1)",
		Target:      int32(1),
		SourceLabel: "int64(1)",
		Source:      int64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int32(1)",
		Target:      int32(1),
		SourceLabel: "float32(1)",
		Source:      float32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int32(1)",
		Target:      int32(1),
		SourceLabel: "float64(1)",
		Source:      float64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int32(1)",
		Target:      int32(1),
		SourceLabel: "VUint64(1)",
		Source:      VUint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int32(1)",
		Target:      int32(1),
		SourceLabel: "VFloat64(1)",
		Source:      VFloat64(1),
	},
	{
		IsCanonical: true,
		Label:       "-Max",
		TargetLabel: "int32(-2147483648)",
		Target:      int32(-2147483648),
		SourceLabel: "int32(-2147483648)",
		Source:      int32(-2147483648),
	},
	{
		Label:       "-Max",
		TargetLabel: "int32(-2147483648)",
		Target:      int32(-2147483648),
		SourceLabel: "int64(-2147483648)",
		Source:      int64(-2147483648),
	},
	{
		Label:       "-Max",
		TargetLabel: "int32(-2147483648)",
		Target:      int32(-2147483648),
		SourceLabel: "float64(-2.147483648e+09)",
		Source:      float64(-2.147483648e+09),
	},
	{
		Label:       "-Max",
		TargetLabel: "int32(-2147483648)",
		Target:      int32(-2147483648),
		SourceLabel: "VFloat64(-2.147483648e+09)",
		Source:      VFloat64(-2.147483648e+09),
	},
	{
		Label:       "-Max",
		TargetLabel: "int32(-2147483648)",
		Target:      int32(-2147483648),
		SourceLabel: "VInt64(-2147483648)",
		Source:      VInt64(-2147483648),
	},
	{
		IsCanonical: true,
		Label:       "-Min",
		TargetLabel: "int32(-1)",
		Target:      int32(-1),
		SourceLabel: "int32(-1)",
		Source:      int32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int32(-1)",
		Target:      int32(-1),
		SourceLabel: "int8(-1)",
		Source:      int8(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int32(-1)",
		Target:      int32(-1),
		SourceLabel: "int16(-1)",
		Source:      int16(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int32(-1)",
		Target:      int32(-1),
		SourceLabel: "int64(-1)",
		Source:      int64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int32(-1)",
		Target:      int32(-1),
		SourceLabel: "float32(-1)",
		Source:      float32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int32(-1)",
		Target:      int32(-1),
		SourceLabel: "float64(-1)",
		Source:      float64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int32(-1)",
		Target:      int32(-1),
		SourceLabel: "VInt8(-1)",
		Source:      VInt8(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int32(-1)",
		Target:      int32(-1),
		SourceLabel: "VInt32(-1)",
		Source:      VInt32(-1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "int32(-123)",
		Target:      int32(-123),
		SourceLabel: "int32(-123)",
		Source:      int32(-123),
	},
	{
		Label:       "Full",
		TargetLabel: "int32(-123)",
		Target:      int32(-123),
		SourceLabel: "VInt8(-123)",
		Source:      VInt8(-123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "int32(-973182629)",
		Target:      int32(-973182629),
		SourceLabel: "int32(-973182629)",
		Source:      int32(-973182629),
	},
	{
		Label:       "Random0",
		TargetLabel: "int32(-973182629)",
		Target:      int32(-973182629),
		SourceLabel: "float64(-9.73182629e+08)",
		Source:      float64(-9.73182629e+08),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VInt32(0)",
		Target:      VInt32(0),
		SourceLabel: "VInt32(0)",
		Source:      VInt32(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VInt32(0)",
		Target:      VInt32(0),
		SourceLabel: "VUint64(0)",
		Source:      VUint64(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VInt32(0)",
		Target:      VInt32(0),
		SourceLabel: "VInt64(0)",
		Source:      VInt64(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "VInt32(2147483647)",
		Target:      VInt32(2147483647),
		SourceLabel: "VInt32(2147483647)",
		Source:      VInt32(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt32(2147483647)",
		Target:      VInt32(2147483647),
		SourceLabel: "VUint32(2147483647)",
		Source:      VUint32(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt32(2147483647)",
		Target:      VInt32(2147483647),
		SourceLabel: "VUint64(2147483647)",
		Source:      VUint64(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt32(2147483647)",
		Target:      VInt32(2147483647),
		SourceLabel: "VInt64(2147483647)",
		Source:      VInt64(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt32(2147483647)",
		Target:      VInt32(2147483647),
		SourceLabel: "VFloat64(2.147483647e+09)",
		Source:      VFloat64(2.147483647e+09),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt32(2147483647)",
		Target:      VInt32(2147483647),
		SourceLabel: "int32(2147483647)",
		Source:      int32(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt32(2147483647)",
		Target:      VInt32(2147483647),
		SourceLabel: "int64(2147483647)",
		Source:      int64(2147483647),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "VInt32(1)",
		Target:      VInt32(1),
		SourceLabel: "VInt32(1)",
		Source:      VInt32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt32(1)",
		Target:      VInt32(1),
		SourceLabel: "VByte(1)",
		Source:      VByte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt32(1)",
		Target:      VInt32(1),
		SourceLabel: "VUint16(1)",
		Source:      VUint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt32(1)",
		Target:      VInt32(1),
		SourceLabel: "VUint32(1)",
		Source:      VUint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt32(1)",
		Target:      VInt32(1),
		SourceLabel: "VUint64(1)",
		Source:      VUint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt32(1)",
		Target:      VInt32(1),
		SourceLabel: "VInt8(1)",
		Source:      VInt8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt32(1)",
		Target:      VInt32(1),
		SourceLabel: "VInt16(1)",
		Source:      VInt16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt32(1)",
		Target:      VInt32(1),
		SourceLabel: "VInt64(1)",
		Source:      VInt64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt32(1)",
		Target:      VInt32(1),
		SourceLabel: "VFloat32(1)",
		Source:      VFloat32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt32(1)",
		Target:      VInt32(1),
		SourceLabel: "VFloat64(1)",
		Source:      VFloat64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt32(1)",
		Target:      VInt32(1),
		SourceLabel: "byte(1)",
		Source:      byte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt32(1)",
		Target:      VInt32(1),
		SourceLabel: "float32(1)",
		Source:      float32(1),
	},
	{
		IsCanonical: true,
		Label:       "-Max",
		TargetLabel: "VInt32(-2147483648)",
		Target:      VInt32(-2147483648),
		SourceLabel: "VInt32(-2147483648)",
		Source:      VInt32(-2147483648),
	},
	{
		Label:       "-Max",
		TargetLabel: "VInt32(-2147483648)",
		Target:      VInt32(-2147483648),
		SourceLabel: "VInt64(-2147483648)",
		Source:      VInt64(-2147483648),
	},
	{
		Label:       "-Max",
		TargetLabel: "VInt32(-2147483648)",
		Target:      VInt32(-2147483648),
		SourceLabel: "VFloat64(-2.147483648e+09)",
		Source:      VFloat64(-2.147483648e+09),
	},
	{
		Label:       "-Max",
		TargetLabel: "VInt32(-2147483648)",
		Target:      VInt32(-2147483648),
		SourceLabel: "int32(-2147483648)",
		Source:      int32(-2147483648),
	},
	{
		Label:       "-Max",
		TargetLabel: "VInt32(-2147483648)",
		Target:      VInt32(-2147483648),
		SourceLabel: "float64(-2.147483648e+09)",
		Source:      float64(-2.147483648e+09),
	},
	{
		IsCanonical: true,
		Label:       "-Min",
		TargetLabel: "VInt32(-1)",
		Target:      VInt32(-1),
		SourceLabel: "VInt32(-1)",
		Source:      VInt32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt32(-1)",
		Target:      VInt32(-1),
		SourceLabel: "VInt8(-1)",
		Source:      VInt8(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt32(-1)",
		Target:      VInt32(-1),
		SourceLabel: "VInt16(-1)",
		Source:      VInt16(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt32(-1)",
		Target:      VInt32(-1),
		SourceLabel: "VInt64(-1)",
		Source:      VInt64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt32(-1)",
		Target:      VInt32(-1),
		SourceLabel: "VFloat32(-1)",
		Source:      VFloat32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt32(-1)",
		Target:      VInt32(-1),
		SourceLabel: "VFloat64(-1)",
		Source:      VFloat64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt32(-1)",
		Target:      VInt32(-1),
		SourceLabel: "int64(-1)",
		Source:      int64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt32(-1)",
		Target:      VInt32(-1),
		SourceLabel: "int8(-1)",
		Source:      int8(-1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VInt32(-123)",
		Target:      VInt32(-123),
		SourceLabel: "VInt32(-123)",
		Source:      VInt32(-123),
	},
	{
		Label:       "Full",
		TargetLabel: "VInt32(-123)",
		Target:      VInt32(-123),
		SourceLabel: "int8(-123)",
		Source:      int8(-123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VInt32(441146945)",
		Target:      VInt32(441146945),
		SourceLabel: "VInt32(441146945)",
		Source:      VInt32(441146945),
	},
	{
		Label:       "Random0",
		TargetLabel: "VInt32(441146945)",
		Target:      VInt32(441146945),
		SourceLabel: "float64(4.41146945e+08)",
		Source:      float64(4.41146945e+08),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "int64(0)",
		Target:      int64(0),
		SourceLabel: "int64(0)",
		Source:      int64(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "int64(0)",
		Target:      int64(0),
		SourceLabel: "uint16(0)",
		Source:      uint16(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "int64(0)",
		Target:      int64(0),
		SourceLabel: "int32(0)",
		Source:      int32(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "int64(9223372036854775807)",
		Target:      int64(9223372036854775807),
		SourceLabel: "int64(9223372036854775807)",
		Source:      int64(9223372036854775807),
	},
	{
		Label:       "+Max",
		TargetLabel: "int64(9223372036854775807)",
		Target:      int64(9223372036854775807),
		SourceLabel: "uint64(9223372036854775807)",
		Source:      uint64(9223372036854775807),
	},
	{
		Label:       "+Max",
		TargetLabel: "int64(9223372036854775807)",
		Target:      int64(9223372036854775807),
		SourceLabel: "VInt64(9223372036854775807)",
		Source:      VInt64(9223372036854775807),
	},
	{
		Label:       "+Max",
		TargetLabel: "int64(9223372036854775807)",
		Target:      int64(9223372036854775807),
		SourceLabel: "VUint64(9223372036854775807)",
		Source:      VUint64(9223372036854775807),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "int64(1)",
		Target:      int64(1),
		SourceLabel: "int64(1)",
		Source:      int64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int64(1)",
		Target:      int64(1),
		SourceLabel: "byte(1)",
		Source:      byte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int64(1)",
		Target:      int64(1),
		SourceLabel: "uint16(1)",
		Source:      uint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int64(1)",
		Target:      int64(1),
		SourceLabel: "uint32(1)",
		Source:      uint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int64(1)",
		Target:      int64(1),
		SourceLabel: "uint64(1)",
		Source:      uint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int64(1)",
		Target:      int64(1),
		SourceLabel: "int8(1)",
		Source:      int8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int64(1)",
		Target:      int64(1),
		SourceLabel: "int16(1)",
		Source:      int16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int64(1)",
		Target:      int64(1),
		SourceLabel: "int32(1)",
		Source:      int32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int64(1)",
		Target:      int64(1),
		SourceLabel: "float32(1)",
		Source:      float32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int64(1)",
		Target:      int64(1),
		SourceLabel: "float64(1)",
		Source:      float64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int64(1)",
		Target:      int64(1),
		SourceLabel: "VUint32(1)",
		Source:      VUint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "int64(1)",
		Target:      int64(1),
		SourceLabel: "VUint16(1)",
		Source:      VUint16(1),
	},
	{
		IsCanonical: true,
		Label:       "-Max",
		TargetLabel: "int64(-9223372036854775808)",
		Target:      int64(-9223372036854775808),
		SourceLabel: "int64(-9223372036854775808)",
		Source:      int64(-9223372036854775808),
	},
	{
		Label:       "-Max",
		TargetLabel: "int64(-9223372036854775808)",
		Target:      int64(-9223372036854775808),
		SourceLabel: "VInt64(-9223372036854775808)",
		Source:      VInt64(-9223372036854775808),
	},
	{
		IsCanonical: true,
		Label:       "-Min",
		TargetLabel: "int64(-1)",
		Target:      int64(-1),
		SourceLabel: "int64(-1)",
		Source:      int64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int64(-1)",
		Target:      int64(-1),
		SourceLabel: "int8(-1)",
		Source:      int8(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int64(-1)",
		Target:      int64(-1),
		SourceLabel: "int16(-1)",
		Source:      int16(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int64(-1)",
		Target:      int64(-1),
		SourceLabel: "int32(-1)",
		Source:      int32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int64(-1)",
		Target:      int64(-1),
		SourceLabel: "float32(-1)",
		Source:      float32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int64(-1)",
		Target:      int64(-1),
		SourceLabel: "float64(-1)",
		Source:      float64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int64(-1)",
		Target:      int64(-1),
		SourceLabel: "VInt64(-1)",
		Source:      VInt64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "int64(-1)",
		Target:      int64(-1),
		SourceLabel: "VFloat32(-1)",
		Source:      VFloat32(-1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "int64(-123)",
		Target:      int64(-123),
		SourceLabel: "int64(-123)",
		Source:      int64(-123),
	},
	{
		Label:       "Full",
		TargetLabel: "int64(-123)",
		Target:      int64(-123),
		SourceLabel: "int8(-123)",
		Source:      int8(-123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "int64(1542542331044763799)",
		Target:      int64(1542542331044763799),
		SourceLabel: "int64(1542542331044763799)",
		Source:      int64(1542542331044763799),
	},
	{
		Label:       "Random0",
		TargetLabel: "int64(1542542331044763799)",
		Target:      int64(1542542331044763799),
		SourceLabel: "VUint64(1542542331044763799)",
		Source:      VUint64(1542542331044763799),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VInt64(0)",
		Target:      VInt64(0),
		SourceLabel: "VInt64(0)",
		Source:      VInt64(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VInt64(0)",
		Target:      VInt64(0),
		SourceLabel: "uint32(0)",
		Source:      uint32(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VInt64(0)",
		Target:      VInt64(0),
		SourceLabel: "uint16(0)",
		Source:      uint16(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "VInt64(9223372036854775807)",
		Target:      VInt64(9223372036854775807),
		SourceLabel: "VInt64(9223372036854775807)",
		Source:      VInt64(9223372036854775807),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt64(9223372036854775807)",
		Target:      VInt64(9223372036854775807),
		SourceLabel: "VUint64(9223372036854775807)",
		Source:      VUint64(9223372036854775807),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt64(9223372036854775807)",
		Target:      VInt64(9223372036854775807),
		SourceLabel: "int64(9223372036854775807)",
		Source:      int64(9223372036854775807),
	},
	{
		Label:       "+Max",
		TargetLabel: "VInt64(9223372036854775807)",
		Target:      VInt64(9223372036854775807),
		SourceLabel: "uint64(9223372036854775807)",
		Source:      uint64(9223372036854775807),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "VInt64(1)",
		Target:      VInt64(1),
		SourceLabel: "VInt64(1)",
		Source:      VInt64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt64(1)",
		Target:      VInt64(1),
		SourceLabel: "VByte(1)",
		Source:      VByte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt64(1)",
		Target:      VInt64(1),
		SourceLabel: "VUint16(1)",
		Source:      VUint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt64(1)",
		Target:      VInt64(1),
		SourceLabel: "VUint32(1)",
		Source:      VUint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt64(1)",
		Target:      VInt64(1),
		SourceLabel: "VUint64(1)",
		Source:      VUint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt64(1)",
		Target:      VInt64(1),
		SourceLabel: "VInt8(1)",
		Source:      VInt8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt64(1)",
		Target:      VInt64(1),
		SourceLabel: "VInt16(1)",
		Source:      VInt16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt64(1)",
		Target:      VInt64(1),
		SourceLabel: "VInt32(1)",
		Source:      VInt32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt64(1)",
		Target:      VInt64(1),
		SourceLabel: "VFloat32(1)",
		Source:      VFloat32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt64(1)",
		Target:      VInt64(1),
		SourceLabel: "VFloat64(1)",
		Source:      VFloat64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt64(1)",
		Target:      VInt64(1),
		SourceLabel: "byte(1)",
		Source:      byte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VInt64(1)",
		Target:      VInt64(1),
		SourceLabel: "int64(1)",
		Source:      int64(1),
	},
	{
		IsCanonical: true,
		Label:       "-Max",
		TargetLabel: "VInt64(-9223372036854775808)",
		Target:      VInt64(-9223372036854775808),
		SourceLabel: "VInt64(-9223372036854775808)",
		Source:      VInt64(-9223372036854775808),
	},
	{
		Label:       "-Max",
		TargetLabel: "VInt64(-9223372036854775808)",
		Target:      VInt64(-9223372036854775808),
		SourceLabel: "int64(-9223372036854775808)",
		Source:      int64(-9223372036854775808),
	},
	{
		IsCanonical: true,
		Label:       "-Min",
		TargetLabel: "VInt64(-1)",
		Target:      VInt64(-1),
		SourceLabel: "VInt64(-1)",
		Source:      VInt64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt64(-1)",
		Target:      VInt64(-1),
		SourceLabel: "VInt8(-1)",
		Source:      VInt8(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt64(-1)",
		Target:      VInt64(-1),
		SourceLabel: "VInt16(-1)",
		Source:      VInt16(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt64(-1)",
		Target:      VInt64(-1),
		SourceLabel: "VInt32(-1)",
		Source:      VInt32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt64(-1)",
		Target:      VInt64(-1),
		SourceLabel: "VFloat32(-1)",
		Source:      VFloat32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt64(-1)",
		Target:      VInt64(-1),
		SourceLabel: "VFloat64(-1)",
		Source:      VFloat64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt64(-1)",
		Target:      VInt64(-1),
		SourceLabel: "int32(-1)",
		Source:      int32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VInt64(-1)",
		Target:      VInt64(-1),
		SourceLabel: "float32(-1)",
		Source:      float32(-1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VInt64(-123)",
		Target:      VInt64(-123),
		SourceLabel: "VInt64(-123)",
		Source:      VInt64(-123),
	},
	{
		Label:       "Full",
		TargetLabel: "VInt64(-123)",
		Target:      VInt64(-123),
		SourceLabel: "int32(-123)",
		Source:      int32(-123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VInt64(3542515422864227393)",
		Target:      VInt64(3542515422864227393),
		SourceLabel: "VInt64(3542515422864227393)",
		Source:      VInt64(3542515422864227393),
	},
	{
		Label:       "Random0",
		TargetLabel: "VInt64(3542515422864227393)",
		Target:      VInt64(3542515422864227393),
		SourceLabel: "uint64(3542515422864227393)",
		Source:      uint64(3542515422864227393),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "float32(0)",
		Target:      float32(0),
		SourceLabel: "float32(0)",
		Source:      float32(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "float32(0)",
		Target:      float32(0),
		SourceLabel: "VInt16(0)",
		Source:      VInt16(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "float32(0)",
		Target:      float32(0),
		SourceLabel: "VUint64(0)",
		Source:      VUint64(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "float32(1.7014117e+38)",
		Target:      float32(1.7014117e+38),
		SourceLabel: "float32(1.7014117e+38)",
		Source:      float32(1.7014117e+38),
	},
	{
		Label:       "+Max",
		TargetLabel: "float32(1.7014117e+38)",
		Target:      float32(1.7014117e+38),
		SourceLabel: "float64(1.7014117331926443e+38)",
		Source:      float64(1.7014117331926443e+38),
	},
	{
		Label:       "+Max",
		TargetLabel: "float32(1.7014117e+38)",
		Target:      float32(1.7014117e+38),
		SourceLabel: "VFloat32(1.7014117e+38)",
		Source:      VFloat32(1.7014117e+38),
	},
	{
		Label:       "+Max",
		TargetLabel: "float32(1.7014117e+38)",
		Target:      float32(1.7014117e+38),
		SourceLabel: "VFloat64(1.7014117331926443e+38)",
		Source:      VFloat64(1.7014117331926443e+38),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "float32(1.4e-44)",
		Target:      float32(1.4e-44),
		SourceLabel: "float32(1.4e-44)",
		Source:      float32(1.4e-44),
	},
	{
		Label:       "+Min",
		TargetLabel: "float32(1.4e-44)",
		Target:      float32(1.4e-44),
		SourceLabel: "float64(1.401298464324817e-44)",
		Source:      float64(1.401298464324817e-44),
	},
	{
		Label:       "+Min",
		TargetLabel: "float32(1.4e-44)",
		Target:      float32(1.4e-44),
		SourceLabel: "VFloat64(1.401298464324817e-44)",
		Source:      VFloat64(1.401298464324817e-44),
	},
	{
		Label:       "+Min",
		TargetLabel: "float32(1.4e-44)",
		Target:      float32(1.4e-44),
		SourceLabel: "VFloat32(1.4e-44)",
		Source:      VFloat32(1.4e-44),
	},
	{
		IsCanonical: true,
		Label:       "-Max",
		TargetLabel: "float32(-1.7014117e+38)",
		Target:      float32(-1.7014117e+38),
		SourceLabel: "float32(-1.7014117e+38)",
		Source:      float32(-1.7014117e+38),
	},
	{
		Label:       "-Max",
		TargetLabel: "float32(-1.7014117e+38)",
		Target:      float32(-1.7014117e+38),
		SourceLabel: "float64(-1.7014117331926443e+38)",
		Source:      float64(-1.7014117331926443e+38),
	},
	{
		Label:       "-Max",
		TargetLabel: "float32(-1.7014117e+38)",
		Target:      float32(-1.7014117e+38),
		SourceLabel: "VFloat64(-1.7014117331926443e+38)",
		Source:      VFloat64(-1.7014117331926443e+38),
	},
	{
		Label:       "-Max",
		TargetLabel: "float32(-1.7014117e+38)",
		Target:      float32(-1.7014117e+38),
		SourceLabel: "VFloat32(-1.7014117e+38)",
		Source:      VFloat32(-1.7014117e+38),
	},
	{
		IsCanonical: true,
		Label:       "-Min",
		TargetLabel: "float32(-1.4e-44)",
		Target:      float32(-1.4e-44),
		SourceLabel: "float32(-1.4e-44)",
		Source:      float32(-1.4e-44),
	},
	{
		Label:       "-Min",
		TargetLabel: "float32(-1.4e-44)",
		Target:      float32(-1.4e-44),
		SourceLabel: "float64(-1.401298464324817e-44)",
		Source:      float64(-1.401298464324817e-44),
	},
	{
		Label:       "-Min",
		TargetLabel: "float32(-1.4e-44)",
		Target:      float32(-1.4e-44),
		SourceLabel: "VFloat64(-1.401298464324817e-44)",
		Source:      VFloat64(-1.401298464324817e-44),
	},
	{
		Label:       "-Min",
		TargetLabel: "float32(-1.4e-44)",
		Target:      float32(-1.4e-44),
		SourceLabel: "VFloat32(-1.4e-44)",
		Source:      VFloat32(-1.4e-44),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "float32(1.5)",
		Target:      float32(1.5),
		SourceLabel: "float32(1.5)",
		Source:      float32(1.5),
	},
	{
		Label:       "Full",
		TargetLabel: "float32(1.5)",
		Target:      float32(1.5),
		SourceLabel: "VFloat64(1.5)",
		Source:      VFloat64(1.5),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "float32(1.3185673e+09)",
		Target:      float32(1.3185673e+09),
		SourceLabel: "float32(1.3185673e+09)",
		Source:      float32(1.3185673e+09),
	},
	{
		Label:       "Random0",
		TargetLabel: "float32(1.3185673e+09)",
		Target:      float32(1.3185673e+09),
		SourceLabel: "VFloat32(1.3185673e+09)",
		Source:      VFloat32(1.3185673e+09),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VFloat32(0)",
		Target:      VFloat32(0),
		SourceLabel: "VFloat32(0)",
		Source:      VFloat32(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VFloat32(0)",
		Target:      VFloat32(0),
		SourceLabel: "VByte(0)",
		Source:      VByte(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VFloat32(0)",
		Target:      VFloat32(0),
		SourceLabel: "byte(0)",
		Source:      byte(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "VFloat32(1.7014117e+38)",
		Target:      VFloat32(1.7014117e+38),
		SourceLabel: "VFloat32(1.7014117e+38)",
		Source:      VFloat32(1.7014117e+38),
	},
	{
		Label:       "+Max",
		TargetLabel: "VFloat32(1.7014117e+38)",
		Target:      VFloat32(1.7014117e+38),
		SourceLabel: "VFloat64(1.7014117331926443e+38)",
		Source:      VFloat64(1.7014117331926443e+38),
	},
	{
		Label:       "+Max",
		TargetLabel: "VFloat32(1.7014117e+38)",
		Target:      VFloat32(1.7014117e+38),
		SourceLabel: "float64(1.7014117331926443e+38)",
		Source:      float64(1.7014117331926443e+38),
	},
	{
		Label:       "+Max",
		TargetLabel: "VFloat32(1.7014117e+38)",
		Target:      VFloat32(1.7014117e+38),
		SourceLabel: "float32(1.7014117e+38)",
		Source:      float32(1.7014117e+38),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "VFloat32(1.4e-44)",
		Target:      VFloat32(1.4e-44),
		SourceLabel: "VFloat32(1.4e-44)",
		Source:      VFloat32(1.4e-44),
	},
	{
		Label:       "+Min",
		TargetLabel: "VFloat32(1.4e-44)",
		Target:      VFloat32(1.4e-44),
		SourceLabel: "VFloat64(1.401298464324817e-44)",
		Source:      VFloat64(1.401298464324817e-44),
	},
	{
		Label:       "+Min",
		TargetLabel: "VFloat32(1.4e-44)",
		Target:      VFloat32(1.4e-44),
		SourceLabel: "float32(1.4e-44)",
		Source:      float32(1.4e-44),
	},
	{
		Label:       "+Min",
		TargetLabel: "VFloat32(1.4e-44)",
		Target:      VFloat32(1.4e-44),
		SourceLabel: "float64(1.401298464324817e-44)",
		Source:      float64(1.401298464324817e-44),
	},
	{
		IsCanonical: true,
		Label:       "-Max",
		TargetLabel: "VFloat32(-1.7014117e+38)",
		Target:      VFloat32(-1.7014117e+38),
		SourceLabel: "VFloat32(-1.7014117e+38)",
		Source:      VFloat32(-1.7014117e+38),
	},
	{
		Label:       "-Max",
		TargetLabel: "VFloat32(-1.7014117e+38)",
		Target:      VFloat32(-1.7014117e+38),
		SourceLabel: "VFloat64(-1.7014117331926443e+38)",
		Source:      VFloat64(-1.7014117331926443e+38),
	},
	{
		Label:       "-Max",
		TargetLabel: "VFloat32(-1.7014117e+38)",
		Target:      VFloat32(-1.7014117e+38),
		SourceLabel: "float32(-1.7014117e+38)",
		Source:      float32(-1.7014117e+38),
	},
	{
		Label:       "-Max",
		TargetLabel: "VFloat32(-1.7014117e+38)",
		Target:      VFloat32(-1.7014117e+38),
		SourceLabel: "float64(-1.7014117331926443e+38)",
		Source:      float64(-1.7014117331926443e+38),
	},
	{
		IsCanonical: true,
		Label:       "-Min",
		TargetLabel: "VFloat32(-1.4e-44)",
		Target:      VFloat32(-1.4e-44),
		SourceLabel: "VFloat32(-1.4e-44)",
		Source:      VFloat32(-1.4e-44),
	},
	{
		Label:       "-Min",
		TargetLabel: "VFloat32(-1.4e-44)",
		Target:      VFloat32(-1.4e-44),
		SourceLabel: "VFloat64(-1.401298464324817e-44)",
		Source:      VFloat64(-1.401298464324817e-44),
	},
	{
		Label:       "-Min",
		TargetLabel: "VFloat32(-1.4e-44)",
		Target:      VFloat32(-1.4e-44),
		SourceLabel: "float32(-1.4e-44)",
		Source:      float32(-1.4e-44),
	},
	{
		Label:       "-Min",
		TargetLabel: "VFloat32(-1.4e-44)",
		Target:      VFloat32(-1.4e-44),
		SourceLabel: "float64(-1.401298464324817e-44)",
		Source:      float64(-1.401298464324817e-44),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VFloat32(1.5)",
		Target:      VFloat32(1.5),
		SourceLabel: "VFloat32(1.5)",
		Source:      VFloat32(1.5),
	},
	{
		Label:       "Full",
		TargetLabel: "VFloat32(1.5)",
		Target:      VFloat32(1.5),
		SourceLabel: "float64(1.5)",
		Source:      float64(1.5),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VFloat32(1.0164244e+09)",
		Target:      VFloat32(1.0164244e+09),
		SourceLabel: "VFloat32(1.0164244e+09)",
		Source:      VFloat32(1.0164244e+09),
	},
	{
		Label:       "Random0",
		TargetLabel: "VFloat32(1.0164244e+09)",
		Target:      VFloat32(1.0164244e+09),
		SourceLabel: "float64(1.01642440139642e+09)",
		Source:      float64(1.01642440139642e+09),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "float64(0)",
		Target:      float64(0),
		SourceLabel: "float64(0)",
		Source:      float64(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "float64(0)",
		Target:      float64(0),
		SourceLabel: "VInt16(0)",
		Source:      VInt16(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "float64(0)",
		Target:      float64(0),
		SourceLabel: "int32(0)",
		Source:      int32(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "float64(8.988465674311579e+307)",
		Target:      float64(8.988465674311579e+307),
		SourceLabel: "float64(8.988465674311579e+307)",
		Source:      float64(8.988465674311579e+307),
	},
	{
		Label:       "+Max",
		TargetLabel: "float64(8.988465674311579e+307)",
		Target:      float64(8.988465674311579e+307),
		SourceLabel: "VFloat64(8.988465674311579e+307)",
		Source:      VFloat64(8.988465674311579e+307),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "float64(5e-323)",
		Target:      float64(5e-323),
		SourceLabel: "float64(5e-323)",
		Source:      float64(5e-323),
	},
	{
		Label:       "+Min",
		TargetLabel: "float64(5e-323)",
		Target:      float64(5e-323),
		SourceLabel: "VFloat64(5e-323)",
		Source:      VFloat64(5e-323),
	},
	{
		IsCanonical: true,
		Label:       "-Max",
		TargetLabel: "float64(-8.988465674311579e+307)",
		Target:      float64(-8.988465674311579e+307),
		SourceLabel: "float64(-8.988465674311579e+307)",
		Source:      float64(-8.988465674311579e+307),
	},
	{
		Label:       "-Max",
		TargetLabel: "float64(-8.988465674311579e+307)",
		Target:      float64(-8.988465674311579e+307),
		SourceLabel: "VFloat64(-8.988465674311579e+307)",
		Source:      VFloat64(-8.988465674311579e+307),
	},
	{
		IsCanonical: true,
		Label:       "-Min",
		TargetLabel: "float64(-5e-323)",
		Target:      float64(-5e-323),
		SourceLabel: "float64(-5e-323)",
		Source:      float64(-5e-323),
	},
	{
		Label:       "-Min",
		TargetLabel: "float64(-5e-323)",
		Target:      float64(-5e-323),
		SourceLabel: "VFloat64(-5e-323)",
		Source:      VFloat64(-5e-323),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "float64(1.5)",
		Target:      float64(1.5),
		SourceLabel: "float64(1.5)",
		Source:      float64(1.5),
	},
	{
		Label:       "Full",
		TargetLabel: "float64(1.5)",
		Target:      float64(1.5),
		SourceLabel: "float32(1.5)",
		Source:      float32(1.5),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "float64(1.1826122719122012e+09)",
		Target:      float64(1.1826122719122012e+09),
		SourceLabel: "float64(1.1826122719122012e+09)",
		Source:      float64(1.1826122719122012e+09),
	},
	{
		Label:       "Random0",
		TargetLabel: "float64(1.1826122719122012e+09)",
		Target:      float64(1.1826122719122012e+09),
		SourceLabel: "VFloat64(1.1826122719122012e+09)",
		Source:      VFloat64(1.1826122719122012e+09),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VFloat64(0)",
		Target:      VFloat64(0),
		SourceLabel: "VFloat64(0)",
		Source:      VFloat64(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VFloat64(0)",
		Target:      VFloat64(0),
		SourceLabel: "VInt32(0)",
		Source:      VInt32(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VFloat64(0)",
		Target:      VFloat64(0),
		SourceLabel: "int64(0)",
		Source:      int64(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "VFloat64(8.988465674311579e+307)",
		Target:      VFloat64(8.988465674311579e+307),
		SourceLabel: "VFloat64(8.988465674311579e+307)",
		Source:      VFloat64(8.988465674311579e+307),
	},
	{
		Label:       "+Max",
		TargetLabel: "VFloat64(8.988465674311579e+307)",
		Target:      VFloat64(8.988465674311579e+307),
		SourceLabel: "float64(8.988465674311579e+307)",
		Source:      float64(8.988465674311579e+307),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "VFloat64(5e-323)",
		Target:      VFloat64(5e-323),
		SourceLabel: "VFloat64(5e-323)",
		Source:      VFloat64(5e-323),
	},
	{
		Label:       "+Min",
		TargetLabel: "VFloat64(5e-323)",
		Target:      VFloat64(5e-323),
		SourceLabel: "float64(5e-323)",
		Source:      float64(5e-323),
	},
	{
		IsCanonical: true,
		Label:       "-Max",
		TargetLabel: "VFloat64(-8.988465674311579e+307)",
		Target:      VFloat64(-8.988465674311579e+307),
		SourceLabel: "VFloat64(-8.988465674311579e+307)",
		Source:      VFloat64(-8.988465674311579e+307),
	},
	{
		Label:       "-Max",
		TargetLabel: "VFloat64(-8.988465674311579e+307)",
		Target:      VFloat64(-8.988465674311579e+307),
		SourceLabel: "float64(-8.988465674311579e+307)",
		Source:      float64(-8.988465674311579e+307),
	},
	{
		IsCanonical: true,
		Label:       "-Min",
		TargetLabel: "VFloat64(-5e-323)",
		Target:      VFloat64(-5e-323),
		SourceLabel: "VFloat64(-5e-323)",
		Source:      VFloat64(-5e-323),
	},
	{
		Label:       "-Min",
		TargetLabel: "VFloat64(-5e-323)",
		Target:      VFloat64(-5e-323),
		SourceLabel: "float64(-5e-323)",
		Source:      float64(-5e-323),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VFloat64(1.5)",
		Target:      VFloat64(1.5),
		SourceLabel: "VFloat64(1.5)",
		Source:      VFloat64(1.5),
	},
	{
		Label:       "Full",
		TargetLabel: "VFloat64(1.5)",
		Target:      VFloat64(1.5),
		SourceLabel: "VFloat32(1.5)",
		Source:      VFloat32(1.5),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VFloat64(1.995725716834609e+08)",
		Target:      VFloat64(1.995725716834609e+08),
		SourceLabel: "VFloat64(1.995725716834609e+08)",
		Source:      VFloat64(1.995725716834609e+08),
	},
	{
		Label:       "Random0",
		TargetLabel: "VFloat64(1.995725716834609e+08)",
		Target:      VFloat64(1.995725716834609e+08),
		SourceLabel: "float64(1.995725716834609e+08)",
		Source:      float64(1.995725716834609e+08),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "?VStructEmpty(nil)",
		Target:      (*VStructEmpty)(nil),
		SourceLabel: "?VStructEmpty(nil)",
		Source:      (*VStructEmpty)(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "?VStructEmpty(nil)",
		Target:      (*VStructEmpty)(nil),
		SourceLabel: "?VStructDepth1_VUint16(nil)",
		Source:      (*VStructDepth1_VUint16)(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "?VStructEmpty(nil)",
		Target:      (*VStructEmpty)(nil),
		SourceLabel: "?VStructDepth2_Set_Float64(nil)",
		Source:      (*VStructDepth2_Set_Float64)(nil),
	},
	{
		Label:       "NilAny",
		TargetLabel: "?VStructEmpty(nil)",
		Target:      (*VStructEmpty)(nil),
		SourceLabel: "any(nil)",
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "?VStructEmpty{}",
		Target:      &VStructEmpty{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		Label:       "Full",
		TargetLabel: "?VStructEmpty{}",
		Target:      &VStructEmpty{},
		SourceLabel: "VStructDepth2_OptVStructDepth1_VEnumBcd{}",
		Source:      VStructDepth2_OptVStructDepth1_VEnumBcd{},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "?VNamedError(nil)",
		Target:      (*VNamedError)(nil),
		SourceLabel: "?VNamedError(nil)",
		Source:      (*VNamedError)(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "?VNamedError(nil)",
		Target:      (*VNamedError)(nil),
		SourceLabel: "error(nil)",
		Source:      (*verror.E)(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "?VNamedError(nil)",
		Target:      (*VNamedError)(nil),
		SourceLabel: "?VStructEmpty(nil)",
		Source:      (*VStructEmpty)(nil),
	},
	{
		Label:       "NilAny",
		TargetLabel: "?VNamedError(nil)",
		Target:      (*VNamedError)(nil),
		SourceLabel: "any(nil)",
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "?VNamedError{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: &VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "?VNamedError{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: &VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "?VNamedError{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: &VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "VNamedError{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "?VNamedError{Id: \"eΔΘΠΣΦ\", Msg: \"cdeΔΘΠΣΦ王普澤世界\"}",
		Target: &VNamedError{
			Id:  "eΔΘΠΣΦ",
			Msg: "cdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "?VNamedError{Id: \"eΔΘΠΣΦ\", Msg: \"cdeΔΘΠΣΦ王普澤世界\"}",
		Source: &VNamedError{
			Id:  "eΔΘΠΣΦ",
			Msg: "cdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "?VNamedError{Id: \"eΔΘΠΣΦ\", Msg: \"cdeΔΘΠΣΦ王普澤世界\"}",
		Target: &VNamedError{
			Id:  "eΔΘΠΣΦ",
			Msg: "cdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "error{Id: \"eΔΘΠΣΦ\", Msg: \"cdeΔΘΠΣΦ王普澤世界\"}",
		Source: verror.FromWire(&vdl.WireError{
			Id:  "eΔΘΠΣΦ",
			Msg: "cdeΔΘΠΣΦ王普澤世界",
		}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray3_Any{}",
		Target:      VArray3_Any{},
		SourceLabel: "VArray3_Any{}",
		Source:      VArray3_Any{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray3_Any{}",
		Target:      VArray3_Any{},
		SourceLabel: "[]any{nil, nil, nil}",
		Source: []interface{}{
			nil,
			nil,
			nil,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray3_Any{}",
		Target:      VArray3_Any{},
		SourceLabel: "VList_Any{nil, nil, nil}",
		Source: VList_Any{
			nil,
			nil,
			nil,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray3_Any{int64(-123), int64(-123), int64(-123)}",
		Target: VArray3_Any{
			int64(-123),
			int64(-123),
			int64(-123),
		},
		SourceLabel: "VArray3_Any{int64(-123), int64(-123), int64(-123)}",
		Source: VArray3_Any{
			int64(-123),
			int64(-123),
			int64(-123),
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray3_Any{int64(-123), int64(-123), int64(-123)}",
		Target: VArray3_Any{
			int64(-123),
			int64(-123),
			int64(-123),
		},
		SourceLabel: "[]any{int64(-123), int64(-123), int64(-123)}",
		Source: []interface{}{
			int64(-123),
			int64(-123),
			int64(-123),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray3_Any{[]VStructDepth1_All{}, VStructDepth1_VFloat32{F28: 1.6316448e+09}, VStructDepth3_List_VUnionDepth1_All{F1: {{F20: 37}, {F16: 2248810097}, {F12: {RetryCode: RetryBackoff, Msg: \"eΔΘΠΣΦ王普\"}}}}}",
		Target: VArray3_Any{
			[]VStructDepth1_All(nil),
			VStructDepth1_VFloat32{
				F28: 1.6316448e+09,
			},
			VStructDepth3_List_VUnionDepth1_All{
				F1: []VUnionDepth1_All{
					VUnionDepth1_AllF20{37},
					VUnionDepth1_AllF16{2248810097},
					VUnionDepth1_AllF12{verror.FromWire(&vdl.WireError{
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "eΔΘΠΣΦ王普",
					})},
				},
			},
		},
		SourceLabel: "VArray3_Any{[]VStructDepth1_All{}, VStructDepth1_VFloat32{F28: 1.6316448e+09}, VStructDepth3_List_VUnionDepth1_All{F1: {{F20: 37}, {F16: 2248810097}, {F12: {RetryCode: RetryBackoff, Msg: \"eΔΘΠΣΦ王普\"}}}}}",
		Source: VArray3_Any{
			[]VStructDepth1_All(nil),
			VStructDepth1_VFloat32{
				F28: 1.6316448e+09,
			},
			VStructDepth3_List_VUnionDepth1_All{
				F1: []VUnionDepth1_All{
					VUnionDepth1_AllF20{37},
					VUnionDepth1_AllF16{2248810097},
					VUnionDepth1_AllF12{verror.FromWire(&vdl.WireError{
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "eΔΘΠΣΦ王普",
					})},
				},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray3_Any{[]VStructDepth1_All{}, VStructDepth1_VFloat32{F28: 1.6316448e+09}, VStructDepth3_List_VUnionDepth1_All{F1: {{F20: 37}, {F16: 2248810097}, {F12: {RetryCode: RetryBackoff, Msg: \"eΔΘΠΣΦ王普\"}}}}}",
		Target: VArray3_Any{
			[]VStructDepth1_All(nil),
			VStructDepth1_VFloat32{
				F28: 1.6316448e+09,
			},
			VStructDepth3_List_VUnionDepth1_All{
				F1: []VUnionDepth1_All{
					VUnionDepth1_AllF20{37},
					VUnionDepth1_AllF16{2248810097},
					VUnionDepth1_AllF12{verror.FromWire(&vdl.WireError{
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "eΔΘΠΣΦ王普",
					})},
				},
			},
		},
		SourceLabel: "[]any{[]VStructDepth1_All{}, VStructDepth1_VFloat32{F28: 1.6316448e+09}, VStructDepth3_List_VUnionDepth1_All{F1: {{F20: 37}, {F16: 2248810097}, {F12: {RetryCode: RetryBackoff, Msg: \"eΔΘΠΣΦ王普\"}}}}}",
		Source: []interface{}{
			[]VStructDepth1_All(nil),
			VStructDepth1_VFloat32{
				F28: 1.6316448e+09,
			},
			VStructDepth3_List_VUnionDepth1_All{
				F1: []VUnionDepth1_All{
					VUnionDepth1_AllF20{37},
					VUnionDepth1_AllF16{2248810097},
					VUnionDepth1_AllF12{verror.FromWire(&vdl.WireError{
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "eΔΘΠΣΦ王普",
					})},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray3_Bool{}",
		Target:      VArray3_Bool{},
		SourceLabel: "VArray3_Bool{}",
		Source:      VArray3_Bool{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray3_Bool{}",
		Target:      VArray3_Bool{},
		SourceLabel: "VArray3_Any{false, false, false}",
		Source: VArray3_Any{
			false,
			false,
			false,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray3_Bool{}",
		Target:      VArray3_Bool{},
		SourceLabel: "[]VBool{false, false, false}",
		Source: []VBool{
			false,
			false,
			false,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray3_Bool{true, true, true}",
		Target: VArray3_Bool{
			true,
			true,
			true,
		},
		SourceLabel: "VArray3_Bool{true, true, true}",
		Source: VArray3_Bool{
			true,
			true,
			true,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray3_Bool{true, true, true}",
		Target: VArray3_Bool{
			true,
			true,
			true,
		},
		SourceLabel: "[]bool{true, true, true}",
		Source: []bool{
			true,
			true,
			true,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray3_VBool{}",
		Target:      VArray3_VBool{},
		SourceLabel: "VArray3_VBool{}",
		Source:      VArray3_VBool{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray3_VBool{}",
		Target:      VArray3_VBool{},
		SourceLabel: "VArray3_Bool{}",
		Source:      VArray3_Bool{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray3_VBool{}",
		Target:      VArray3_VBool{},
		SourceLabel: "VList_VBool{false, false, false}",
		Source: VList_VBool{
			false,
			false,
			false,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray3_VBool{true, true, true}",
		Target: VArray3_VBool{
			true,
			true,
			true,
		},
		SourceLabel: "VArray3_VBool{true, true, true}",
		Source: VArray3_VBool{
			true,
			true,
			true,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray3_VBool{true, true, true}",
		Target: VArray3_VBool{
			true,
			true,
			true,
		},
		SourceLabel: "[]any{VBool(true), VBool(true), VBool(true)}",
		Source: []interface{}{
			VBool(true),
			VBool(true),
			VBool(true),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray1_String{}",
		Target:      VArray1_String{},
		SourceLabel: "VArray1_String{}",
		Source:      VArray1_String{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray1_String{}",
		Target:      VArray1_String{},
		SourceLabel: "VList_String{\"\"}",
		Source: VList_String{
			"",
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray1_String{}",
		Target:      VArray1_String{},
		SourceLabel: "[]VString{\"\"}",
		Source: []VString{
			"",
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray1_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VArray1_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "VArray1_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VArray1_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray1_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VArray1_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "[]VString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: []VString{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray1_String{\"ΘΠΣ\"}",
		Target: VArray1_String{
			"ΘΠΣ",
		},
		SourceLabel: "VArray1_String{\"ΘΠΣ\"}",
		Source: VArray1_String{
			"ΘΠΣ",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray1_String{\"ΘΠΣ\"}",
		Target: VArray1_String{
			"ΘΠΣ",
		},
		SourceLabel: "[]string{\"ΘΠΣ\"}",
		Source: []string{
			"ΘΠΣ",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray3_VString{}",
		Target:      VArray3_VString{},
		SourceLabel: "VArray3_VString{}",
		Source:      VArray3_VString{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray3_VString{}",
		Target:      VArray3_VString{},
		SourceLabel: "[]VString{\"\", \"\", \"\"}",
		Source: []VString{
			"",
			"",
			"",
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray3_VString{}",
		Target:      VArray3_VString{},
		SourceLabel: "VArray3_Any{VString(\"\"), VString(\"\"), VString(\"\")}",
		Source: VArray3_Any{
			VString(""),
			VString(""),
			VString(""),
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray3_VString{\"abcdeΔΘΠΣΦ王普澤世界\", \"abcdeΔΘΠΣΦ王普澤世界\", \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VArray3_VString{
			"abcdeΔΘΠΣΦ王普澤世界",
			"abcdeΔΘΠΣΦ王普澤世界",
			"abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "VArray3_VString{\"abcdeΔΘΠΣΦ王普澤世界\", \"abcdeΔΘΠΣΦ王普澤世界\", \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VArray3_VString{
			"abcdeΔΘΠΣΦ王普澤世界",
			"abcdeΔΘΠΣΦ王普澤世界",
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray3_VString{\"abcdeΔΘΠΣΦ王普澤世界\", \"abcdeΔΘΠΣΦ王普澤世界\", \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VArray3_VString{
			"abcdeΔΘΠΣΦ王普澤世界",
			"abcdeΔΘΠΣΦ王普澤世界",
			"abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "[]string{\"abcdeΔΘΠΣΦ王普澤世界\", \"abcdeΔΘΠΣΦ王普澤世界\", \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: []string{
			"abcdeΔΘΠΣΦ王普澤世界",
			"abcdeΔΘΠΣΦ王普澤世界",
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray3_VString{\"deΔΘΠΣ\", \"ΔΘΠΣ\", \"abcdeΔΘΠΣΦ王普澤\"}",
		Target: VArray3_VString{
			"deΔΘΠΣ",
			"ΔΘΠΣ",
			"abcdeΔΘΠΣΦ王普澤",
		},
		SourceLabel: "VArray3_VString{\"deΔΘΠΣ\", \"ΔΘΠΣ\", \"abcdeΔΘΠΣΦ王普澤\"}",
		Source: VArray3_VString{
			"deΔΘΠΣ",
			"ΔΘΠΣ",
			"abcdeΔΘΠΣΦ王普澤",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray3_VString{\"deΔΘΠΣ\", \"ΔΘΠΣ\", \"abcdeΔΘΠΣΦ王普澤\"}",
		Target: VArray3_VString{
			"deΔΘΠΣ",
			"ΔΘΠΣ",
			"abcdeΔΘΠΣΦ王普澤",
		},
		SourceLabel: "VList_String{\"deΔΘΠΣ\", \"ΔΘΠΣ\", \"abcdeΔΘΠΣΦ王普澤\"}",
		Source: VList_String{
			"deΔΘΠΣ",
			"ΔΘΠΣ",
			"abcdeΔΘΠΣΦ王普澤",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray2_TypeObject{}",
		Target: VArray2_TypeObject{
			vdl.AnyType,
			vdl.AnyType,
		},
		SourceLabel: "VArray2_TypeObject{}",
		Source: VArray2_TypeObject{
			vdl.AnyType,
			vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray2_TypeObject{}",
		Target: VArray2_TypeObject{
			vdl.AnyType,
			vdl.AnyType,
		},
		SourceLabel: "VList_Any{typeobject(any), typeobject(any)}",
		Source: VList_Any{
			vdl.AnyType,
			vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray2_TypeObject{}",
		Target: VArray2_TypeObject{
			vdl.AnyType,
			vdl.AnyType,
		},
		SourceLabel: "[]any{typeobject(any), typeobject(any)}",
		Source: []interface{}{
			vdl.AnyType,
			vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray2_TypeObject{typeobject(int64), typeobject(int64)}",
		Target: VArray2_TypeObject{
			vdl.Int64Type,
			vdl.Int64Type,
		},
		SourceLabel: "VArray2_TypeObject{typeobject(int64), typeobject(int64)}",
		Source: VArray2_TypeObject{
			vdl.Int64Type,
			vdl.Int64Type,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray2_TypeObject{typeobject(int64), typeobject(int64)}",
		Target: VArray2_TypeObject{
			vdl.Int64Type,
			vdl.Int64Type,
		},
		SourceLabel: "[]typeobject{typeobject(int64), typeobject(int64)}",
		Source: []*vdl.Type{
			vdl.Int64Type,
			vdl.Int64Type,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray2_TypeObject{typeobject(VFloat64), typeobject(VArray3_VString)}",
		Target: VArray2_TypeObject{
			__VDLType_float64_17,
			__VDLType_array_22,
		},
		SourceLabel: "VArray2_TypeObject{typeobject(VFloat64), typeobject(VArray3_VString)}",
		Source: VArray2_TypeObject{
			__VDLType_float64_17,
			__VDLType_array_22,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray2_TypeObject{typeobject(VFloat64), typeobject(VArray3_VString)}",
		Target: VArray2_TypeObject{
			__VDLType_float64_17,
			__VDLType_array_22,
		},
		SourceLabel: "[]any{typeobject(VFloat64), typeobject(VArray3_VString)}",
		Source: []interface{}{
			__VDLType_float64_17,
			__VDLType_array_22,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray1_Byte(\"\\x00\")",
		Target:      VArray1_Byte{},
		SourceLabel: "VArray1_Byte(\"\\x00\")",
		Source:      VArray1_Byte{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray1_Byte(\"\\x00\")",
		Target:      VArray1_Byte{},
		SourceLabel: "VList_VByte(\"\\x00\")",
		Source:      VList_VByte("\x00"),
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray1_Byte(\"\\x00\")",
		Target:      VArray1_Byte{},
		SourceLabel: "VList_Any{byte(0)}",
		Source: VList_Any{
			byte(0),
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray1_Byte(\"{\")",
		Target: VArray1_Byte{
			123,
		},
		SourceLabel: "VArray1_Byte(\"{\")",
		Source: VArray1_Byte{
			123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray1_Byte(\"{\")",
		Target: VArray1_Byte{
			123,
		},
		SourceLabel: "[]VByte(\"{\")",
		Source:      []VByte("{"),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray1_Byte(\"\\xc1\")",
		Target: VArray1_Byte{
			193,
		},
		SourceLabel: "VArray1_Byte(\"\\xc1\")",
		Source: VArray1_Byte{
			193,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray1_Byte(\"\\xc1\")",
		Target: VArray1_Byte{
			193,
		},
		SourceLabel: "[]any{byte(193)}",
		Source: []interface{}{
			byte(193),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray2_VByte(\"\\x00\\x00\")",
		Target:      VArray2_VByte{},
		SourceLabel: "VArray2_VByte(\"\\x00\\x00\")",
		Source:      VArray2_VByte{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray2_VByte(\"\\x00\\x00\")",
		Target:      VArray2_VByte{},
		SourceLabel: "[]byte(\"\\x00\\x00\")",
		Source:      []byte("\x00\x00"),
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray2_VByte(\"\\x00\\x00\")",
		Target:      VArray2_VByte{},
		SourceLabel: "[]VByte(\"\\x00\\x00\")",
		Source:      []VByte("\x00\x00"),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray2_VByte(\"{{\")",
		Target: VArray2_VByte{
			123,
			123,
		},
		SourceLabel: "VArray2_VByte(\"{{\")",
		Source: VArray2_VByte{
			123,
			123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray2_VByte(\"{{\")",
		Target: VArray2_VByte{
			123,
			123,
		},
		SourceLabel: "VList_VFloat32{123, 123}",
		Source: VList_VFloat32{
			123,
			123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray2_VByte(\"\\x00\\xc7\")",
		Target: VArray2_VByte{
			0,
			199,
		},
		SourceLabel: "VArray2_VByte(\"\\x00\\xc7\")",
		Source: VArray2_VByte{
			0,
			199,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray2_VByte(\"\\x00\\xc7\")",
		Target: VArray2_VByte{
			0,
			199,
		},
		SourceLabel: "VList_Any{VByte(0), VByte(199)}",
		Source: VList_Any{
			VByte(0),
			VByte(199),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray2_VEnumAbc{}",
		Target:      VArray2_VEnumAbc{},
		SourceLabel: "VArray2_VEnumAbc{}",
		Source:      VArray2_VEnumAbc{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray2_VEnumAbc{}",
		Target:      VArray2_VEnumAbc{},
		SourceLabel: "[]any{VEnumAbc.A, VEnumAbc.A}",
		Source: []interface{}{
			VEnumAbcA,
			VEnumAbcA,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray2_VEnumAbc{}",
		Target:      VArray2_VEnumAbc{},
		SourceLabel: "VList_VEnumAbc{A, A}",
		Source: VList_VEnumAbc{
			VEnumAbcA,
			VEnumAbcA,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray2_VEnumAbc{C, C}",
		Target: VArray2_VEnumAbc{
			VEnumAbcC,
			VEnumAbcC,
		},
		SourceLabel: "VArray2_VEnumAbc{C, C}",
		Source: VArray2_VEnumAbc{
			VEnumAbcC,
			VEnumAbcC,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray2_VEnumAbc{C, C}",
		Target: VArray2_VEnumAbc{
			VEnumAbcC,
			VEnumAbcC,
		},
		SourceLabel: "VList_String{\"C\", \"C\"}",
		Source: VList_String{
			"C",
			"C",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray2_VEnumBcd{}",
		Target:      VArray2_VEnumBcd{},
		SourceLabel: "VArray2_VEnumBcd{}",
		Source:      VArray2_VEnumBcd{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray2_VEnumBcd{}",
		Target:      VArray2_VEnumBcd{},
		SourceLabel: "[]any{VEnumBcd.B, VEnumBcd.B}",
		Source: []interface{}{
			VEnumBcdB,
			VEnumBcdB,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray2_VEnumBcd{}",
		Target:      VArray2_VEnumBcd{},
		SourceLabel: "VList_Any{VEnumBcd.B, VEnumBcd.B}",
		Source: VList_Any{
			VEnumBcdB,
			VEnumBcdB,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray2_VEnumBcd{D, D}",
		Target: VArray2_VEnumBcd{
			VEnumBcdD,
			VEnumBcdD,
		},
		SourceLabel: "VArray2_VEnumBcd{D, D}",
		Source: VArray2_VEnumBcd{
			VEnumBcdD,
			VEnumBcdD,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray2_VEnumBcd{D, D}",
		Target: VArray2_VEnumBcd{
			VEnumBcdD,
			VEnumBcdD,
		},
		SourceLabel: "VList_String{\"D\", \"D\"}",
		Source: VList_String{
			"D",
			"D",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray1_VStructEmpty{}",
		Target:      VArray1_VStructEmpty{},
		SourceLabel: "VArray1_VStructEmpty{}",
		Source:      VArray1_VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray1_VStructEmpty{}",
		Target:      VArray1_VStructEmpty{},
		SourceLabel: "VList_VStructDepth2_All{{}}",
		Source: VList_VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray1_VStructEmpty{}",
		Target:      VArray1_VStructEmpty{},
		SourceLabel: "VList_OptVStructEmpty{{}}",
		Source: VList_OptVStructEmpty{
			{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray1_VNamedError{}",
		Target:      VArray1_VNamedError{},
		SourceLabel: "VArray1_VNamedError{}",
		Source:      VArray1_VNamedError{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray1_VNamedError{}",
		Target:      VArray1_VNamedError{},
		SourceLabel: "VList_VNamedError{{}}",
		Source: VList_VNamedError{
			{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray1_VNamedError{}",
		Target:      VArray1_VNamedError{},
		SourceLabel: "VList_VStructEmpty{{}}",
		Source: VList_VStructEmpty{
			{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray1_VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VArray1_VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "VArray1_VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VArray1_VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray1_VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VArray1_VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "VList_OptVNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VList_OptVNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray1_VNamedError{{Id: \"deΔ\"}}",
		Target: VArray1_VNamedError{
			{
				Id: "deΔ",
			},
		},
		SourceLabel: "VArray1_VNamedError{{Id: \"deΔ\"}}",
		Source: VArray1_VNamedError{
			{
				Id: "deΔ",
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray1_VNamedError{{Id: \"deΔ\"}}",
		Target: VArray1_VNamedError{
			{
				Id: "deΔ",
			},
		},
		SourceLabel: "VList_Any{VNamedError{Id: \"deΔ\"}}",
		Source: VList_Any{
			VNamedError{
				Id: "deΔ",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray2_Error{}",
		Target:      VArray2_Error{},
		SourceLabel: "VArray2_Error{}",
		Source:      VArray2_Error{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray2_Error{}",
		Target:      VArray2_Error{},
		SourceLabel: "[]?VNamedError{nil, nil}",
		Source: []*VNamedError{
			nil,
			nil,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray2_Error{}",
		Target:      VArray2_Error{},
		SourceLabel: "VList_OptVStructEmpty{nil, nil}",
		Source: VList_OptVStructEmpty{
			nil,
			nil,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray2_Error{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VArray2_Error{
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
		SourceLabel: "VArray2_Error{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VArray2_Error{
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray2_Error{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VArray2_Error{
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
		SourceLabel: "[]any{error{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, error{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: []interface{}{
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray2_Error{{RetryCode: RetryBackoff, Msg: \"deΔΘΠΣΦ王\"}, {RetryCode: RetryBackoff, Msg: \"ΠΣΦ王\"}}",
		Target: VArray2_Error{
			verror.FromWire(&vdl.WireError{
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "deΔΘΠΣΦ王",
			}),
			verror.FromWire(&vdl.WireError{
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "ΠΣΦ王",
			}),
		},
		SourceLabel: "VArray2_Error{{RetryCode: RetryBackoff, Msg: \"deΔΘΠΣΦ王\"}, {RetryCode: RetryBackoff, Msg: \"ΠΣΦ王\"}}",
		Source: VArray2_Error{
			verror.FromWire(&vdl.WireError{
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "deΔΘΠΣΦ王",
			}),
			verror.FromWire(&vdl.WireError{
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "ΠΣΦ王",
			}),
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray2_Error{{RetryCode: RetryBackoff, Msg: \"deΔΘΠΣΦ王\"}, {RetryCode: RetryBackoff, Msg: \"ΠΣΦ王\"}}",
		Target: VArray2_Error{
			verror.FromWire(&vdl.WireError{
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "deΔΘΠΣΦ王",
			}),
			verror.FromWire(&vdl.WireError{
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "ΠΣΦ王",
			}),
		},
		SourceLabel: "VList_Any{error{RetryCode: RetryBackoff, Msg: \"deΔΘΠΣΦ王\"}, error{RetryCode: RetryBackoff, Msg: \"ΠΣΦ王\"}}",
		Source: VList_Any{
			verror.FromWire(&vdl.WireError{
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "deΔΘΠΣΦ王",
			}),
			verror.FromWire(&vdl.WireError{
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "ΠΣΦ王",
			}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray1_Uint32{}",
		Target:      VArray1_Uint32{},
		SourceLabel: "VArray1_Uint32{}",
		Source:      VArray1_Uint32{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray1_Uint32{}",
		Target:      VArray1_Uint32{},
		SourceLabel: "[]int16{0}",
		Source: []int16{
			0,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray1_Uint32{}",
		Target:      VArray1_Uint32{},
		SourceLabel: "VList_VUint16{0}",
		Source: VList_VUint16{
			0,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray1_Uint32{123}",
		Target: VArray1_Uint32{
			123,
		},
		SourceLabel: "VArray1_Uint32{123}",
		Source: VArray1_Uint32{
			123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray1_Uint32{123}",
		Target: VArray1_Uint32{
			123,
		},
		SourceLabel: "[]VUint32{123}",
		Source: []VUint32{
			123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray1_Uint32{3946538699}",
		Target: VArray1_Uint32{
			3946538699,
		},
		SourceLabel: "VArray1_Uint32{3946538699}",
		Source: VArray1_Uint32{
			3946538699,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray1_Uint32{3946538699}",
		Target: VArray1_Uint32{
			3946538699,
		},
		SourceLabel: "VList_Any{uint32(3946538699)}",
		Source: VList_Any{
			uint32(3946538699),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray3_Uint64{}",
		Target:      VArray3_Uint64{},
		SourceLabel: "VArray3_Uint64{}",
		Source:      VArray3_Uint64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray3_Uint64{}",
		Target:      VArray3_Uint64{},
		SourceLabel: "VList_VFloat32{0, 0, 0}",
		Source: VList_VFloat32{
			0,
			0,
			0,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray3_Uint64{}",
		Target:      VArray3_Uint64{},
		SourceLabel: "[]VByte(\"\\x00\\x00\\x00\")",
		Source:      []VByte("\x00\x00\x00"),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray3_Uint64{123, 123, 123}",
		Target: VArray3_Uint64{
			123,
			123,
			123,
		},
		SourceLabel: "VArray3_Uint64{123, 123, 123}",
		Source: VArray3_Uint64{
			123,
			123,
			123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray3_Uint64{123, 123, 123}",
		Target: VArray3_Uint64{
			123,
			123,
			123,
		},
		SourceLabel: "VList_Any{uint64(123), uint64(123), uint64(123)}",
		Source: VList_Any{
			uint64(123),
			uint64(123),
			uint64(123),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray3_Uint64{4886896263626834365, 6075106111690673248, 18256274274049579854}",
		Target: VArray3_Uint64{
			4886896263626834365,
			6075106111690673248,
			18256274274049579854,
		},
		SourceLabel: "VArray3_Uint64{4886896263626834365, 6075106111690673248, 18256274274049579854}",
		Source: VArray3_Uint64{
			4886896263626834365,
			6075106111690673248,
			18256274274049579854,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray3_Uint64{4886896263626834365, 6075106111690673248, 18256274274049579854}",
		Target: VArray3_Uint64{
			4886896263626834365,
			6075106111690673248,
			18256274274049579854,
		},
		SourceLabel: "VArray3_Any{uint64(4886896263626834365), uint64(6075106111690673248), uint64(18256274274049579854)}",
		Source: VArray3_Any{
			uint64(4886896263626834365),
			uint64(6075106111690673248),
			uint64(18256274274049579854),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray3_Int64{}",
		Target:      VArray3_Int64{},
		SourceLabel: "VArray3_Int64{}",
		Source:      VArray3_Int64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray3_Int64{}",
		Target:      VArray3_Int64{},
		SourceLabel: "[]VByte(\"\\x00\\x00\\x00\")",
		Source:      []VByte("\x00\x00\x00"),
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray3_Int64{}",
		Target:      VArray3_Int64{},
		SourceLabel: "[]byte(\"\\x00\\x00\\x00\")",
		Source:      []byte("\x00\x00\x00"),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray3_Int64{-123, -123, -123}",
		Target: VArray3_Int64{
			-123,
			-123,
			-123,
		},
		SourceLabel: "VArray3_Int64{-123, -123, -123}",
		Source: VArray3_Int64{
			-123,
			-123,
			-123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray3_Int64{-123, -123, -123}",
		Target: VArray3_Int64{
			-123,
			-123,
			-123,
		},
		SourceLabel: "[]int16{-123, -123, -123}",
		Source: []int16{
			-123,
			-123,
			-123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray3_Int64{0, -136173863728909019, 0}",
		Target: VArray3_Int64{
			0,
			-136173863728909019,
			0,
		},
		SourceLabel: "VArray3_Int64{0, -136173863728909019, 0}",
		Source: VArray3_Int64{
			0,
			-136173863728909019,
			0,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray3_Int64{0, -136173863728909019, 0}",
		Target: VArray3_Int64{
			0,
			-136173863728909019,
			0,
		},
		SourceLabel: "[]any{int64(0), int64(-136173863728909019), int64(0)}",
		Source: []interface{}{
			int64(0),
			int64(-136173863728909019),
			int64(0),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray1_OptVStructEmpty{}",
		Target:      VArray1_OptVStructEmpty{},
		SourceLabel: "VArray1_OptVStructEmpty{}",
		Source:      VArray1_OptVStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray1_OptVStructEmpty{}",
		Target:      VArray1_OptVStructEmpty{},
		SourceLabel: "[]?VNamedError{nil}",
		Source: []*VNamedError{
			nil,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray1_OptVStructEmpty{}",
		Target:      VArray1_OptVStructEmpty{},
		SourceLabel: "[]?VStructDepth2_Set_Float64{nil}",
		Source: []*VStructDepth2_Set_Float64{
			nil,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray1_OptVStructEmpty{{}}",
		Target: VArray1_OptVStructEmpty{
			{},
		},
		SourceLabel: "VArray1_OptVStructEmpty{{}}",
		Source: VArray1_OptVStructEmpty{
			{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray1_OptVStructEmpty{{}}",
		Target: VArray1_OptVStructEmpty{
			{},
		},
		SourceLabel: "VList_OptVNamedError{{}}",
		Source: VList_OptVNamedError{
			{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray3_OptVNamedError{}",
		Target:      VArray3_OptVNamedError{},
		SourceLabel: "VArray3_OptVNamedError{}",
		Source:      VArray3_OptVNamedError{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray3_OptVNamedError{}",
		Target:      VArray3_OptVNamedError{},
		SourceLabel: "[]?VNamedError{nil, nil, nil}",
		Source: []*VNamedError{
			nil,
			nil,
			nil,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray3_OptVNamedError{}",
		Target:      VArray3_OptVNamedError{},
		SourceLabel: "[]error{nil, nil, nil}",
		Source: []error{
			nil,
			nil,
			nil,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray3_OptVNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VArray3_OptVNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "VArray3_OptVNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VArray3_OptVNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray3_OptVNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VArray3_OptVNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "VArray3_Any{?VNamedError{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, ?VNamedError{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, ?VNamedError{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VArray3_Any{
			&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray3_OptVNamedError{{Id: \"cdeΔΘΠΣΦ王\", Msg: \"abcdeΔΘΠΣΦ王普澤世\"}, {}, {}}",
		Target: VArray3_OptVNamedError{
			{
				Id:  "cdeΔΘΠΣΦ王",
				Msg: "abcdeΔΘΠΣΦ王普澤世",
			},
			{},
			{},
		},
		SourceLabel: "VArray3_OptVNamedError{{Id: \"cdeΔΘΠΣΦ王\", Msg: \"abcdeΔΘΠΣΦ王普澤世\"}, {}, {}}",
		Source: VArray3_OptVNamedError{
			{
				Id:  "cdeΔΘΠΣΦ王",
				Msg: "abcdeΔΘΠΣΦ王普澤世",
			},
			{},
			{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray3_OptVNamedError{{Id: \"cdeΔΘΠΣΦ王\", Msg: \"abcdeΔΘΠΣΦ王普澤世\"}, {}, {}}",
		Target: VArray3_OptVNamedError{
			{
				Id:  "cdeΔΘΠΣΦ王",
				Msg: "abcdeΔΘΠΣΦ王普澤世",
			},
			{},
			{},
		},
		SourceLabel: "VList_VNamedError{{Id: \"cdeΔΘΠΣΦ王\", Msg: \"abcdeΔΘΠΣΦ王普澤世\"}, {}, {}}",
		Source: VList_VNamedError{
			{
				Id:  "cdeΔΘΠΣΦ王",
				Msg: "abcdeΔΘΠΣΦ王普澤世",
			},
			{},
			{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]any{}",
		Target:      []interface{}(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]any{}",
		Target:      []interface{}(nil),
		SourceLabel: "[]VNamedError{}",
		Source:      []VNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]any{}",
		Target:      []interface{}(nil),
		SourceLabel: "[]string{}",
		Source:      []string(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]any{int64(-123)}",
		Target: []interface{}{
			int64(-123),
		},
		SourceLabel: "[]any{int64(-123)}",
		Source: []interface{}{
			int64(-123),
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]any{int64(-123)}",
		Target: []interface{}{
			int64(-123),
		},
		SourceLabel: "VList_Any{int64(-123)}",
		Source: VList_Any{
			int64(-123),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]any{VSet_VString{\"\", \"abcdeΔΘΠΣ\"}}",
		Target: []interface{}{
			VSet_VString{
				"":          struct{}{},
				"abcdeΔΘΠΣ": struct{}{},
			},
		},
		SourceLabel: "[]any{VSet_VString{\"\", \"abcdeΔΘΠΣ\"}}",
		Source: []interface{}{
			VSet_VString{
				"":          struct{}{},
				"abcdeΔΘΠΣ": struct{}{},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]any{VSet_VString{\"\", \"abcdeΔΘΠΣ\"}}",
		Target: []interface{}{
			VSet_VString{
				"":          struct{}{},
				"abcdeΔΘΠΣ": struct{}{},
			},
		},
		SourceLabel: "VList_Any{VSet_VString{\"\", \"abcdeΔΘΠΣ\"}}",
		Source: VList_Any{
			VSet_VString{
				"":          struct{}{},
				"abcdeΔΘΠΣ": struct{}{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]bool{}",
		Target:      []bool(nil),
		SourceLabel: "[]bool{}",
		Source:      []bool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]bool{}",
		Target:      []bool(nil),
		SourceLabel: "VList_VBool{}",
		Source:      VList_VBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]bool{}",
		Target:      []bool(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]bool{true}",
		Target: []bool{
			true,
		},
		SourceLabel: "[]bool{true}",
		Source: []bool{
			true,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]bool{true}",
		Target: []bool{
			true,
		},
		SourceLabel: "[]VBool{true}",
		Source: []VBool{
			true,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]VBool{}",
		Target:      []VBool(nil),
		SourceLabel: "[]VBool{}",
		Source:      []VBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VBool{}",
		Target:      []VBool(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VBool{}",
		Target:      []VBool(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]VBool{true}",
		Target: []VBool{
			true,
		},
		SourceLabel: "[]VBool{true}",
		Source: []VBool{
			true,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]VBool{true}",
		Target: []VBool{
			true,
		},
		SourceLabel: "[]bool{true}",
		Source: []bool{
			true,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]string{}",
		Target:      []string(nil),
		SourceLabel: "[]string{}",
		Source:      []string(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]string{}",
		Target:      []string(nil),
		SourceLabel: "VList_String{}",
		Source:      VList_String(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]string{}",
		Target:      []string(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]string{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: []string{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "[]string{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: []string{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]string{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: []string{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "[]VString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: []VString{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]string{\"\", \"ΔΘΠΣΦ王普澤\"}",
		Target: []string{
			"",
			"ΔΘΠΣΦ王普澤",
		},
		SourceLabel: "[]string{\"\", \"ΔΘΠΣΦ王普澤\"}",
		Source: []string{
			"",
			"ΔΘΠΣΦ王普澤",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]string{\"\", \"ΔΘΠΣΦ王普澤\"}",
		Target: []string{
			"",
			"ΔΘΠΣΦ王普澤",
		},
		SourceLabel: "VList_String{\"\", \"ΔΘΠΣΦ王普澤\"}",
		Source: VList_String{
			"",
			"ΔΘΠΣΦ王普澤",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]VString{}",
		Target:      []VString(nil),
		SourceLabel: "[]VString{}",
		Source:      []VString(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VString{}",
		Target:      []VString(nil),
		SourceLabel: "[]VEnumBcd{}",
		Source:      []VEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VString{}",
		Target:      []VString(nil),
		SourceLabel: "VList_String{}",
		Source:      VList_String(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]VString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: []VString{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "[]VString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: []VString{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]VString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: []VString{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "VArray1_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VArray1_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]VString{\"Δ\", \"\"}",
		Target: []VString{
			"Δ",
			"",
		},
		SourceLabel: "[]VString{\"Δ\", \"\"}",
		Source: []VString{
			"Δ",
			"",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]VString{\"Δ\", \"\"}",
		Target: []VString{
			"Δ",
			"",
		},
		SourceLabel: "VList_String{\"Δ\", \"\"}",
		Source: VList_String{
			"Δ",
			"",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]typeobject{}",
		Target:      []*vdl.Type(nil),
		SourceLabel: "[]typeobject{}",
		Source:      []*vdl.Type(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]typeobject{}",
		Target:      []*vdl.Type(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]typeobject{}",
		Target:      []*vdl.Type(nil),
		SourceLabel: "VList_TypeObject{}",
		Source:      VList_TypeObject(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]typeobject{typeobject(int64)}",
		Target: []*vdl.Type{
			vdl.Int64Type,
		},
		SourceLabel: "[]typeobject{typeobject(int64)}",
		Source: []*vdl.Type{
			vdl.Int64Type,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]typeobject{typeobject(int64)}",
		Target: []*vdl.Type{
			vdl.Int64Type,
		},
		SourceLabel: "VList_Any{typeobject(int64)}",
		Source: VList_Any{
			vdl.Int64Type,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]typeobject{typeobject(VSet_VNamedError), typeobject([]VByte)}",
		Target: []*vdl.Type{
			__VDLType_set_65,
			__VDLType_list_286,
		},
		SourceLabel: "[]typeobject{typeobject(VSet_VNamedError), typeobject([]VByte)}",
		Source: []*vdl.Type{
			__VDLType_set_65,
			__VDLType_list_286,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]typeobject{typeobject(VSet_VNamedError), typeobject([]VByte)}",
		Target: []*vdl.Type{
			__VDLType_set_65,
			__VDLType_list_286,
		},
		SourceLabel: "VArray2_TypeObject{typeobject(VSet_VNamedError), typeobject([]VByte)}",
		Source: VArray2_TypeObject{
			__VDLType_set_65,
			__VDLType_list_286,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]byte(\"\")",
		Target:      []byte(nil),
		SourceLabel: "[]byte(\"\")",
		Source:      []byte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]byte(\"\")",
		Target:      []byte(nil),
		SourceLabel: "VList_VFloat32{}",
		Source:      VList_VFloat32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]byte(\"\")",
		Target:      []byte(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]byte(\"{\")",
		Target:      []byte("{"),
		SourceLabel: "[]byte(\"{\")",
		Source:      []byte("{"),
	},
	{
		Label:       "Full",
		TargetLabel: "[]byte(\"{\")",
		Target:      []byte("{"),
		SourceLabel: "VList_VByte(\"{\")",
		Source:      VList_VByte("{"),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]byte(\"%\")",
		Target:      []byte("%"),
		SourceLabel: "[]byte(\"%\")",
		Source:      []byte("%"),
	},
	{
		Label:       "Random0",
		TargetLabel: "[]byte(\"%\")",
		Target:      []byte("%"),
		SourceLabel: "VList_VFloat32{37}",
		Source: VList_VFloat32{
			37,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]VByte(\"\")",
		Target:      []VByte(nil),
		SourceLabel: "[]VByte(\"\")",
		Source:      []VByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VByte(\"\")",
		Target:      []VByte(nil),
		SourceLabel: "[]VUint32{}",
		Source:      []VUint32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VByte(\"\")",
		Target:      []VByte(nil),
		SourceLabel: "[]uint32{}",
		Source:      []uint32(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]VByte(\"{\")",
		Target:      []VByte("{"),
		SourceLabel: "[]VByte(\"{\")",
		Source:      []VByte("{"),
	},
	{
		Label:       "Full",
		TargetLabel: "[]VByte(\"{\")",
		Target:      []VByte("{"),
		SourceLabel: "VList_Any{VByte(123)}",
		Source: VList_Any{
			VByte(123),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]VByte(\"\\xcd\")",
		Target:      []VByte("\xcd"),
		SourceLabel: "[]VByte(\"\\xcd\")",
		Source:      []VByte("\xcd"),
	},
	{
		Label:       "Random0",
		TargetLabel: "[]VByte(\"\\xcd\")",
		Target:      []VByte("\xcd"),
		SourceLabel: "VList_Byte(\"\\xcd\")",
		Source:      VList_Byte("\xcd"),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]VEnumAbc{}",
		Target:      []VEnumAbc(nil),
		SourceLabel: "[]VEnumAbc{}",
		Source:      []VEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VEnumAbc{}",
		Target:      []VEnumAbc(nil),
		SourceLabel: "[]VEnumBcd{}",
		Source:      []VEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VEnumAbc{}",
		Target:      []VEnumAbc(nil),
		SourceLabel: "VList_String{}",
		Source:      VList_String(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]VEnumAbc{C}",
		Target: []VEnumAbc{
			VEnumAbcC,
		},
		SourceLabel: "[]VEnumAbc{C}",
		Source: []VEnumAbc{
			VEnumAbcC,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]VEnumAbc{C}",
		Target: []VEnumAbc{
			VEnumAbcC,
		},
		SourceLabel: "VList_VString{\"C\"}",
		Source: VList_VString{
			"C",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]VEnumBcd{}",
		Target:      []VEnumBcd(nil),
		SourceLabel: "[]VEnumBcd{}",
		Source:      []VEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VEnumBcd{}",
		Target:      []VEnumBcd(nil),
		SourceLabel: "[]VEnumAbc{}",
		Source:      []VEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VEnumBcd{}",
		Target:      []VEnumBcd(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]VEnumBcd{D}",
		Target: []VEnumBcd{
			VEnumBcdD,
		},
		SourceLabel: "[]VEnumBcd{D}",
		Source: []VEnumBcd{
			VEnumBcdD,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]VEnumBcd{D}",
		Target: []VEnumBcd{
			VEnumBcdD,
		},
		SourceLabel: "VList_Any{VEnumBcd.D}",
		Source: VList_Any{
			VEnumBcdD,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]VStructEmpty{}",
		Target:      []VStructEmpty(nil),
		SourceLabel: "[]VStructEmpty{}",
		Source:      []VStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VStructEmpty{}",
		Target:      []VStructEmpty(nil),
		SourceLabel: "[]?VStructEmpty{}",
		Source:      []*VStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VStructEmpty{}",
		Target:      []VStructEmpty(nil),
		SourceLabel: "VList_VStructDepth1_All{}",
		Source:      VList_VStructDepth1_All(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]VStructEmpty{{}}",
		Target: []VStructEmpty{
			{},
		},
		SourceLabel: "[]VStructEmpty{{}}",
		Source: []VStructEmpty{
			{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]VStructEmpty{{}}",
		Target: []VStructEmpty{
			{},
		},
		SourceLabel: "[]?VStructDepth1_VEnumBcd{{}}",
		Source: []*VStructDepth1_VEnumBcd{
			{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]VNamedError{}",
		Target:      []VNamedError(nil),
		SourceLabel: "[]VNamedError{}",
		Source:      []VNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VNamedError{}",
		Target:      []VNamedError(nil),
		SourceLabel: "[]error{}",
		Source:      []error(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VNamedError{}",
		Target:      []VNamedError(nil),
		SourceLabel: "[]?VStructEmpty{}",
		Source:      []*VStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: []VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "[]VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: []VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: []VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "VList_Error{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VList_Error{
			verror.FromWire(&vdl.WireError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]VNamedError{{Id: \"abcde\", Msg: \"deΔΘΠΣΦ王普澤\"}, {Id: \"eΔΘΠΣΦ王普\", Msg: \"eΔΘΠΣ\"}, {Id: \"ΔΘΠΣΦ王普澤\", Msg: \"bcdeΔΘΠΣΦ王普澤世\"}}",
		Target: []VNamedError{
			{
				Id:  "abcde",
				Msg: "deΔΘΠΣΦ王普澤",
			},
			{
				Id:  "eΔΘΠΣΦ王普",
				Msg: "eΔΘΠΣ",
			},
			{
				Id:  "ΔΘΠΣΦ王普澤",
				Msg: "bcdeΔΘΠΣΦ王普澤世",
			},
		},
		SourceLabel: "[]VNamedError{{Id: \"abcde\", Msg: \"deΔΘΠΣΦ王普澤\"}, {Id: \"eΔΘΠΣΦ王普\", Msg: \"eΔΘΠΣ\"}, {Id: \"ΔΘΠΣΦ王普澤\", Msg: \"bcdeΔΘΠΣΦ王普澤世\"}}",
		Source: []VNamedError{
			{
				Id:  "abcde",
				Msg: "deΔΘΠΣΦ王普澤",
			},
			{
				Id:  "eΔΘΠΣΦ王普",
				Msg: "eΔΘΠΣ",
			},
			{
				Id:  "ΔΘΠΣΦ王普澤",
				Msg: "bcdeΔΘΠΣΦ王普澤世",
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]VNamedError{{Id: \"abcde\", Msg: \"deΔΘΠΣΦ王普澤\"}, {Id: \"eΔΘΠΣΦ王普\", Msg: \"eΔΘΠΣ\"}, {Id: \"ΔΘΠΣΦ王普澤\", Msg: \"bcdeΔΘΠΣΦ王普澤世\"}}",
		Target: []VNamedError{
			{
				Id:  "abcde",
				Msg: "deΔΘΠΣΦ王普澤",
			},
			{
				Id:  "eΔΘΠΣΦ王普",
				Msg: "eΔΘΠΣ",
			},
			{
				Id:  "ΔΘΠΣΦ王普澤",
				Msg: "bcdeΔΘΠΣΦ王普澤世",
			},
		},
		SourceLabel: "VList_Error{{Id: \"abcde\", Msg: \"deΔΘΠΣΦ王普澤\"}, {Id: \"eΔΘΠΣΦ王普\", Msg: \"eΔΘΠΣ\"}, {Id: \"ΔΘΠΣΦ王普澤\", Msg: \"bcdeΔΘΠΣΦ王普澤世\"}}",
		Source: VList_Error{
			verror.FromWire(&vdl.WireError{
				Id:  "abcde",
				Msg: "deΔΘΠΣΦ王普澤",
			}),
			verror.FromWire(&vdl.WireError{
				Id:  "eΔΘΠΣΦ王普",
				Msg: "eΔΘΠΣ",
			}),
			verror.FromWire(&vdl.WireError{
				Id:  "ΔΘΠΣΦ王普澤",
				Msg: "bcdeΔΘΠΣΦ王普澤世",
			}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]error{}",
		Target:      []error(nil),
		SourceLabel: "[]error{}",
		Source:      []error(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]error{}",
		Target:      []error(nil),
		SourceLabel: "VList_VNamedError{}",
		Source:      VList_VNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]error{}",
		Target:      []error(nil),
		SourceLabel: "[]?VStructEmpty{}",
		Source:      []*VStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]error{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: []error{
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
		SourceLabel: "[]error{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: []error{
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]error{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: []error{
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
		SourceLabel: "VList_Any{error{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VList_Any{
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]error{{}, {}, {Id: \"ΣΦ王普澤世界\"}}",
		Target: []error{
			verror.FromWire(&vdl.WireError{}),
			verror.FromWire(&vdl.WireError{}),
			verror.FromWire(&vdl.WireError{
				Id: "ΣΦ王普澤世界",
			}),
		},
		SourceLabel: "[]error{{}, {}, {Id: \"ΣΦ王普澤世界\"}}",
		Source: []error{
			verror.FromWire(&vdl.WireError{}),
			verror.FromWire(&vdl.WireError{}),
			verror.FromWire(&vdl.WireError{
				Id: "ΣΦ王普澤世界",
			}),
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]error{{}, {}, {Id: \"ΣΦ王普澤世界\"}}",
		Target: []error{
			verror.FromWire(&vdl.WireError{}),
			verror.FromWire(&vdl.WireError{}),
			verror.FromWire(&vdl.WireError{
				Id: "ΣΦ王普澤世界",
			}),
		},
		SourceLabel: "[]?VNamedError{{}, {}, {Id: \"ΣΦ王普澤世界\"}}",
		Source: []*VNamedError{
			{},
			{},
			{
				Id: "ΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]uint32{}",
		Target:      []uint32(nil),
		SourceLabel: "[]uint32{}",
		Source:      []uint32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]uint32{}",
		Target:      []uint32(nil),
		SourceLabel: "VList_VByte(\"\")",
		Source:      VList_VByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]uint32{}",
		Target:      []uint32(nil),
		SourceLabel: "VList_VFloat32{}",
		Source:      VList_VFloat32(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]uint32{123}",
		Target: []uint32{
			123,
		},
		SourceLabel: "[]uint32{123}",
		Source: []uint32{
			123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]uint32{123}",
		Target: []uint32{
			123,
		},
		SourceLabel: "VList_VByte(\"{\")",
		Source:      VList_VByte("{"),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]uint32{3480643248, 0, 1860397017}",
		Target: []uint32{
			3480643248,
			0,
			1860397017,
		},
		SourceLabel: "[]uint32{3480643248, 0, 1860397017}",
		Source: []uint32{
			3480643248,
			0,
			1860397017,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]uint32{3480643248, 0, 1860397017}",
		Target: []uint32{
			3480643248,
			0,
			1860397017,
		},
		SourceLabel: "[]VUint32{3480643248, 0, 1860397017}",
		Source: []VUint32{
			3480643248,
			0,
			1860397017,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]VUint32{}",
		Target:      []VUint32(nil),
		SourceLabel: "[]VUint32{}",
		Source:      []VUint32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VUint32{}",
		Target:      []VUint32(nil),
		SourceLabel: "VList_VFloat32{}",
		Source:      VList_VFloat32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VUint32{}",
		Target:      []VUint32(nil),
		SourceLabel: "[]int16{}",
		Source:      []int16(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]VUint32{123}",
		Target: []VUint32{
			123,
		},
		SourceLabel: "[]VUint32{123}",
		Source: []VUint32{
			123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]VUint32{123}",
		Target: []VUint32{
			123,
		},
		SourceLabel: "VList_Any{VUint32(123)}",
		Source: VList_Any{
			VUint32(123),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]VUint32{2081338166, 0, 0}",
		Target: []VUint32{
			2081338166,
			0,
			0,
		},
		SourceLabel: "[]VUint32{2081338166, 0, 0}",
		Source: []VUint32{
			2081338166,
			0,
			0,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]VUint32{2081338166, 0, 0}",
		Target: []VUint32{
			2081338166,
			0,
			0,
		},
		SourceLabel: "VList_Any{VUint32(2081338166), VUint32(0), VUint32(0)}",
		Source: VList_Any{
			VUint32(2081338166),
			VUint32(0),
			VUint32(0),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]int16{}",
		Target:      []int16(nil),
		SourceLabel: "[]int16{}",
		Source:      []int16(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]int16{}",
		Target:      []int16(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]int16{}",
		Target:      []int16(nil),
		SourceLabel: "VList_VByte(\"\")",
		Source:      VList_VByte(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]int16{-123}",
		Target: []int16{
			-123,
		},
		SourceLabel: "[]int16{-123}",
		Source: []int16{
			-123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]int16{-123}",
		Target: []int16{
			-123,
		},
		SourceLabel: "[]any{int16(-123)}",
		Source: []interface{}{
			int16(-123),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]int16{3281, -15000}",
		Target: []int16{
			3281,
			-15000,
		},
		SourceLabel: "[]int16{3281, -15000}",
		Source: []int16{
			3281,
			-15000,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]int16{3281, -15000}",
		Target: []int16{
			3281,
			-15000,
		},
		SourceLabel: "VList_VFloat32{3281, -15000}",
		Source: VList_VFloat32{
			3281,
			-15000,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]?VStructEmpty{}",
		Target:      []*VStructEmpty(nil),
		SourceLabel: "[]?VStructEmpty{}",
		Source:      []*VStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]?VStructEmpty{}",
		Target:      []*VStructEmpty(nil),
		SourceLabel: "[]?VNamedError{}",
		Source:      []*VNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]?VStructEmpty{}",
		Target:      []*VStructEmpty(nil),
		SourceLabel: "VList_OptVStructEmpty{}",
		Source:      VList_OptVStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]?VStructEmpty{{}}",
		Target: []*VStructEmpty{
			{},
		},
		SourceLabel: "[]?VStructEmpty{{}}",
		Source: []*VStructEmpty{
			{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]?VStructEmpty{{}}",
		Target: []*VStructEmpty{
			{},
		},
		SourceLabel: "VList_Any{?VStructEmpty{}}",
		Source: VList_Any{
			&VStructEmpty{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]?VNamedError{}",
		Target:      []*VNamedError(nil),
		SourceLabel: "[]?VNamedError{}",
		Source:      []*VNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]?VNamedError{}",
		Target:      []*VNamedError(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]?VNamedError{}",
		Target:      []*VNamedError(nil),
		SourceLabel: "VList_OptVNamedError{}",
		Source:      VList_OptVNamedError(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]?VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: []*VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "[]?VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: []*VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]?VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: []*VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "[]any{?VNamedError{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: []interface{}{
			&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]?VNamedError{{Id: \"王普澤世\", Msg: \"世界\"}}",
		Target: []*VNamedError{
			{
				Id:  "王普澤世",
				Msg: "世界",
			},
		},
		SourceLabel: "[]?VNamedError{{Id: \"王普澤世\", Msg: \"世界\"}}",
		Source: []*VNamedError{
			{
				Id:  "王普澤世",
				Msg: "世界",
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]?VNamedError{{Id: \"王普澤世\", Msg: \"世界\"}}",
		Target: []*VNamedError{
			{
				Id:  "王普澤世",
				Msg: "世界",
			},
		},
		SourceLabel: "VList_Any{?VNamedError{Id: \"王普澤世\", Msg: \"世界\"}}",
		Source: VList_Any{
			&VNamedError{
				Id:  "王普澤世",
				Msg: "世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_Any{}",
		Target:      VList_Any(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_Any{}",
		Target:      VList_Any(nil),
		SourceLabel: "[]VUint32{}",
		Source:      []VUint32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_Any{}",
		Target:      VList_Any(nil),
		SourceLabel: "[]?VStructDepth1_VEnumBcd{}",
		Source:      []*VStructDepth1_VEnumBcd(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_Any{int64(-123)}",
		Target: VList_Any{
			int64(-123),
		},
		SourceLabel: "VList_Any{int64(-123)}",
		Source: VList_Any{
			int64(-123),
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_Any{int64(-123)}",
		Target: VList_Any{
			int64(-123),
		},
		SourceLabel: "[]any{int64(-123)}",
		Source: []interface{}{
			int64(-123),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VList_Any{VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte{}, VStructDepth1_OptVStructEmpty{F31: {}}, VList_VStructDepth2_All{{F0: {typeobject(VUnionDepth2_VStructDepth1_Int8), typeobject(VStructDepth1_OptVStructEmpty)}, F2: {-4101, -16230, 14354}, F4: {-3.2855644714213675e+08, -8.692264265265553e+08, 3.800593502145281e+08}, F5: {B, C, D}, F6: {14: 168}, F7: {0: 1867570408, 3850295936: 1398145105}, F8: {F0: VUnionDepth1_OptVStructEmpty{F31: {}}, F6: 218, F7: 202, F8: C, F9: C, F12: {Id: \"cdeΔΘΠΣΦ\", RetryCode: RetryConnection, Msg: \"ΣΦ王普澤世界\"}, F13: 41770, F15: 2515791898, F16: 3244429329, F18: 9707117714888947982, F19: 55, F20: -35, F21: 9041, F22: -760, F23: 387955183, F24: -103111496, F25: 3187834467784460652, F27: -1.4081742e+07, F28: -3.1722112e+08, F29: 9.703261326646038e+08, F30: 1.3845241244238656e+09, F31: {}}, F10: {F27: 0}, F12: {F9: D}}, {}}}",
		Target: VList_Any{
			VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte(nil),
			VStructDepth1_OptVStructEmpty{
				F31: &VStructEmpty{},
			},
			VList_VStructDepth2_All{
				{
					F0: VArray2_TypeObject{
						__VDLType_union_206,
						__VDLType_struct_114,
					},
					F2: []int16{
						-4101,
						-16230,
						14354,
					},
					F4: map[float64]struct{}{
						-3.2855644714213675e+08: struct{}{},
						-8.692264265265553e+08:  struct{}{},
						3.800593502145281e+08:   struct{}{},
					},
					F5: VSet_VEnumBcd{
						VEnumBcdB: struct{}{},
						VEnumBcdC: struct{}{},
						VEnumBcdD: struct{}{},
					},
					F6: map[byte]byte{
						14: 168,
					},
					F7: map[uint32]uint32{
						0:          1867570408,
						3850295936: 1398145105,
					},
					F8: VStructDepth1_All{
						F0: VUnionDepth1_OptVStructEmpty(VUnionDepth1_OptVStructEmptyF31{&VStructEmpty{}}),
						F5: vdl.AnyType,
						F6: 218,
						F7: 202,
						F8: VEnumAbcC,
						F9: VEnumBcdC,
						F12: verror.FromWire(&vdl.WireError{
							Id:        "cdeΔΘΠΣΦ",
							RetryCode: vdl.WireRetryCodeRetryConnection,
							Msg:       "ΣΦ王普澤世界",
						}),
						F13: 41770,
						F15: 2515791898,
						F16: 3244429329,
						F18: 9707117714888947982,
						F19: 55,
						F20: -35,
						F21: 9041,
						F22: -760,
						F23: 387955183,
						F24: -103111496,
						F25: 3187834467784460652,
						F27: -1.4081742e+07,
						F28: -3.1722112e+08,
						F29: 9.703261326646038e+08,
						F30: 1.3845241244238656e+09,
						F31: &VStructEmpty{},
					},
					F10: VUnionDepth1_AllF27{},
					F11: VUnionDepth1_Float64F29{},
					F12: &VStructDepth1_VEnumBcd{
						F9: VEnumBcdD,
					},
				},
				{
					F0: VArray2_TypeObject{
						vdl.AnyType,
						vdl.AnyType,
					},
					F8: VStructDepth1_All{
						F5: vdl.AnyType,
					},
					F10: VUnionDepth1_AllF0{},
					F11: VUnionDepth1_Float64F29{},
				},
			},
		},
		SourceLabel: "VList_Any{VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte{}, VStructDepth1_OptVStructEmpty{F31: {}}, VList_VStructDepth2_All{{F0: {typeobject(VUnionDepth2_VStructDepth1_Int8), typeobject(VStructDepth1_OptVStructEmpty)}, F2: {-4101, -16230, 14354}, F4: {-3.2855644714213675e+08, -8.692264265265553e+08, 3.800593502145281e+08}, F5: {B, C, D}, F6: {14: 168}, F7: {0: 1867570408, 3850295936: 1398145105}, F8: {F0: VUnionDepth1_OptVStructEmpty{F31: {}}, F6: 218, F7: 202, F8: C, F9: C, F12: {Id: \"cdeΔΘΠΣΦ\", RetryCode: RetryConnection, Msg: \"ΣΦ王普澤世界\"}, F13: 41770, F15: 2515791898, F16: 3244429329, F18: 9707117714888947982, F19: 55, F20: -35, F21: 9041, F22: -760, F23: 387955183, F24: -103111496, F25: 3187834467784460652, F27: -1.4081742e+07, F28: -3.1722112e+08, F29: 9.703261326646038e+08, F30: 1.3845241244238656e+09, F31: {}}, F10: {F27: 0}, F12: {F9: D}}, {}}}",
		Source: VList_Any{
			VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte(nil),
			VStructDepth1_OptVStructEmpty{
				F31: &VStructEmpty{},
			},
			VList_VStructDepth2_All{
				{
					F0: VArray2_TypeObject{
						__VDLType_union_206,
						__VDLType_struct_114,
					},
					F2: []int16{
						-4101,
						-16230,
						14354,
					},
					F4: map[float64]struct{}{
						-3.2855644714213675e+08: struct{}{},
						-8.692264265265553e+08:  struct{}{},
						3.800593502145281e+08:   struct{}{},
					},
					F5: VSet_VEnumBcd{
						VEnumBcdB: struct{}{},
						VEnumBcdC: struct{}{},
						VEnumBcdD: struct{}{},
					},
					F6: map[byte]byte{
						14: 168,
					},
					F7: map[uint32]uint32{
						0:          1867570408,
						3850295936: 1398145105,
					},
					F8: VStructDepth1_All{
						F0: VUnionDepth1_OptVStructEmpty(VUnionDepth1_OptVStructEmptyF31{&VStructEmpty{}}),
						F5: vdl.AnyType,
						F6: 218,
						F7: 202,
						F8: VEnumAbcC,
						F9: VEnumBcdC,
						F12: verror.FromWire(&vdl.WireError{
							Id:        "cdeΔΘΠΣΦ",
							RetryCode: vdl.WireRetryCodeRetryConnection,
							Msg:       "ΣΦ王普澤世界",
						}),
						F13: 41770,
						F15: 2515791898,
						F16: 3244429329,
						F18: 9707117714888947982,
						F19: 55,
						F20: -35,
						F21: 9041,
						F22: -760,
						F23: 387955183,
						F24: -103111496,
						F25: 3187834467784460652,
						F27: -1.4081742e+07,
						F28: -3.1722112e+08,
						F29: 9.703261326646038e+08,
						F30: 1.3845241244238656e+09,
						F31: &VStructEmpty{},
					},
					F10: VUnionDepth1_AllF27{},
					F11: VUnionDepth1_Float64F29{},
					F12: &VStructDepth1_VEnumBcd{
						F9: VEnumBcdD,
					},
				},
				{
					F0: VArray2_TypeObject{
						vdl.AnyType,
						vdl.AnyType,
					},
					F8: VStructDepth1_All{
						F5: vdl.AnyType,
					},
					F10: VUnionDepth1_AllF0{},
					F11: VUnionDepth1_Float64F29{},
				},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VList_Any{VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte{}, VStructDepth1_OptVStructEmpty{F31: {}}, VList_VStructDepth2_All{{F0: {typeobject(VUnionDepth2_VStructDepth1_Int8), typeobject(VStructDepth1_OptVStructEmpty)}, F2: {-4101, -16230, 14354}, F4: {-3.2855644714213675e+08, -8.692264265265553e+08, 3.800593502145281e+08}, F5: {B, C, D}, F6: {14: 168}, F7: {0: 1867570408, 3850295936: 1398145105}, F8: {F0: VUnionDepth1_OptVStructEmpty{F31: {}}, F6: 218, F7: 202, F8: C, F9: C, F12: {Id: \"cdeΔΘΠΣΦ\", RetryCode: RetryConnection, Msg: \"ΣΦ王普澤世界\"}, F13: 41770, F15: 2515791898, F16: 3244429329, F18: 9707117714888947982, F19: 55, F20: -35, F21: 9041, F22: -760, F23: 387955183, F24: -103111496, F25: 3187834467784460652, F27: -1.4081742e+07, F28: -3.1722112e+08, F29: 9.703261326646038e+08, F30: 1.3845241244238656e+09, F31: {}}, F10: {F27: 0}, F12: {F9: D}}, {}}}",
		Target: VList_Any{
			VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte(nil),
			VStructDepth1_OptVStructEmpty{
				F31: &VStructEmpty{},
			},
			VList_VStructDepth2_All{
				{
					F0: VArray2_TypeObject{
						__VDLType_union_206,
						__VDLType_struct_114,
					},
					F2: []int16{
						-4101,
						-16230,
						14354,
					},
					F4: map[float64]struct{}{
						-3.2855644714213675e+08: struct{}{},
						-8.692264265265553e+08:  struct{}{},
						3.800593502145281e+08:   struct{}{},
					},
					F5: VSet_VEnumBcd{
						VEnumBcdB: struct{}{},
						VEnumBcdC: struct{}{},
						VEnumBcdD: struct{}{},
					},
					F6: map[byte]byte{
						14: 168,
					},
					F7: map[uint32]uint32{
						0:          1867570408,
						3850295936: 1398145105,
					},
					F8: VStructDepth1_All{
						F0: VUnionDepth1_OptVStructEmpty(VUnionDepth1_OptVStructEmptyF31{&VStructEmpty{}}),
						F5: vdl.AnyType,
						F6: 218,
						F7: 202,
						F8: VEnumAbcC,
						F9: VEnumBcdC,
						F12: verror.FromWire(&vdl.WireError{
							Id:        "cdeΔΘΠΣΦ",
							RetryCode: vdl.WireRetryCodeRetryConnection,
							Msg:       "ΣΦ王普澤世界",
						}),
						F13: 41770,
						F15: 2515791898,
						F16: 3244429329,
						F18: 9707117714888947982,
						F19: 55,
						F20: -35,
						F21: 9041,
						F22: -760,
						F23: 387955183,
						F24: -103111496,
						F25: 3187834467784460652,
						F27: -1.4081742e+07,
						F28: -3.1722112e+08,
						F29: 9.703261326646038e+08,
						F30: 1.3845241244238656e+09,
						F31: &VStructEmpty{},
					},
					F10: VUnionDepth1_AllF27{},
					F11: VUnionDepth1_Float64F29{},
					F12: &VStructDepth1_VEnumBcd{
						F9: VEnumBcdD,
					},
				},
				{
					F0: VArray2_TypeObject{
						vdl.AnyType,
						vdl.AnyType,
					},
					F8: VStructDepth1_All{
						F5: vdl.AnyType,
					},
					F10: VUnionDepth1_AllF0{},
					F11: VUnionDepth1_Float64F29{},
				},
			},
		},
		SourceLabel: "VArray3_Any{VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte{}, VStructDepth1_OptVStructEmpty{F31: {}}, VList_VStructDepth2_All{{F0: {typeobject(VUnionDepth2_VStructDepth1_Int8), typeobject(VStructDepth1_OptVStructEmpty)}, F2: {-4101, -16230, 14354}, F4: {-3.2855644714213675e+08, -8.692264265265553e+08, 3.800593502145281e+08}, F5: {B, C, D}, F6: {14: 168}, F7: {0: 1867570408, 3850295936: 1398145105}, F8: {F0: VUnionDepth1_OptVStructEmpty{F31: {}}, F6: 218, F7: 202, F8: C, F9: C, F12: {Id: \"cdeΔΘΠΣΦ\", RetryCode: RetryConnection, Msg: \"ΣΦ王普澤世界\"}, F13: 41770, F15: 2515791898, F16: 3244429329, F18: 9707117714888947982, F19: 55, F20: -35, F21: 9041, F22: -760, F23: 387955183, F24: -103111496, F25: 3187834467784460652, F27: -1.4081742e+07, F28: -3.1722112e+08, F29: 9.703261326646038e+08, F30: 1.3845241244238656e+09, F31: {}}, F10: {F27: 0}, F12: {F9: D}}, {}}}",
		Source: VArray3_Any{
			VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte(nil),
			VStructDepth1_OptVStructEmpty{
				F31: &VStructEmpty{},
			},
			VList_VStructDepth2_All{
				{
					F0: VArray2_TypeObject{
						__VDLType_union_206,
						__VDLType_struct_114,
					},
					F2: []int16{
						-4101,
						-16230,
						14354,
					},
					F4: map[float64]struct{}{
						-3.2855644714213675e+08: struct{}{},
						-8.692264265265553e+08:  struct{}{},
						3.800593502145281e+08:   struct{}{},
					},
					F5: VSet_VEnumBcd{
						VEnumBcdB: struct{}{},
						VEnumBcdC: struct{}{},
						VEnumBcdD: struct{}{},
					},
					F6: map[byte]byte{
						14: 168,
					},
					F7: map[uint32]uint32{
						0:          1867570408,
						3850295936: 1398145105,
					},
					F8: VStructDepth1_All{
						F0: VUnionDepth1_OptVStructEmpty(VUnionDepth1_OptVStructEmptyF31{&VStructEmpty{}}),
						F5: vdl.AnyType,
						F6: 218,
						F7: 202,
						F8: VEnumAbcC,
						F9: VEnumBcdC,
						F12: verror.FromWire(&vdl.WireError{
							Id:        "cdeΔΘΠΣΦ",
							RetryCode: vdl.WireRetryCodeRetryConnection,
							Msg:       "ΣΦ王普澤世界",
						}),
						F13: 41770,
						F15: 2515791898,
						F16: 3244429329,
						F18: 9707117714888947982,
						F19: 55,
						F20: -35,
						F21: 9041,
						F22: -760,
						F23: 387955183,
						F24: -103111496,
						F25: 3187834467784460652,
						F27: -1.4081742e+07,
						F28: -3.1722112e+08,
						F29: 9.703261326646038e+08,
						F30: 1.3845241244238656e+09,
						F31: &VStructEmpty{},
					},
					F10: VUnionDepth1_AllF27{},
					F11: VUnionDepth1_Float64F29{},
					F12: &VStructDepth1_VEnumBcd{
						F9: VEnumBcdD,
					},
				},
				{
					F0: VArray2_TypeObject{
						vdl.AnyType,
						vdl.AnyType,
					},
					F8: VStructDepth1_All{
						F5: vdl.AnyType,
					},
					F10: VUnionDepth1_AllF0{},
					F11: VUnionDepth1_Float64F29{},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_Bool{}",
		Target:      VList_Bool(nil),
		SourceLabel: "VList_Bool{}",
		Source:      VList_Bool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_Bool{}",
		Target:      VList_Bool(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_Bool{}",
		Target:      VList_Bool(nil),
		SourceLabel: "[]VBool{}",
		Source:      []VBool(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_Bool{true}",
		Target: VList_Bool{
			true,
		},
		SourceLabel: "VList_Bool{true}",
		Source: VList_Bool{
			true,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_Bool{true}",
		Target: VList_Bool{
			true,
		},
		SourceLabel: "VList_Any{true}",
		Source: VList_Any{
			true,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_VBool{}",
		Target:      VList_VBool(nil),
		SourceLabel: "VList_VBool{}",
		Source:      VList_VBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VBool{}",
		Target:      VList_VBool(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VBool{}",
		Target:      VList_VBool(nil),
		SourceLabel: "[]VBool{}",
		Source:      []VBool(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_VBool{true}",
		Target: VList_VBool{
			true,
		},
		SourceLabel: "VList_VBool{true}",
		Source: VList_VBool{
			true,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_VBool{true}",
		Target: VList_VBool{
			true,
		},
		SourceLabel: "[]any{VBool(true)}",
		Source: []interface{}{
			VBool(true),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_String{}",
		Target:      VList_String(nil),
		SourceLabel: "VList_String{}",
		Source:      VList_String(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_String{}",
		Target:      VList_String(nil),
		SourceLabel: "VList_VString{}",
		Source:      VList_VString(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_String{}",
		Target:      VList_String(nil),
		SourceLabel: "[]VString{}",
		Source:      []VString(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VList_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "VList_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VList_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VList_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "VArray1_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VArray1_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VList_String{\"abcde\", \"ΣΦ王普澤世界\", \"普澤世界\"}",
		Target: VList_String{
			"abcde",
			"ΣΦ王普澤世界",
			"普澤世界",
		},
		SourceLabel: "VList_String{\"abcde\", \"ΣΦ王普澤世界\", \"普澤世界\"}",
		Source: VList_String{
			"abcde",
			"ΣΦ王普澤世界",
			"普澤世界",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VList_String{\"abcde\", \"ΣΦ王普澤世界\", \"普澤世界\"}",
		Target: VList_String{
			"abcde",
			"ΣΦ王普澤世界",
			"普澤世界",
		},
		SourceLabel: "VArray3_VString{\"abcde\", \"ΣΦ王普澤世界\", \"普澤世界\"}",
		Source: VArray3_VString{
			"abcde",
			"ΣΦ王普澤世界",
			"普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_VString{}",
		Target:      VList_VString(nil),
		SourceLabel: "VList_VString{}",
		Source:      VList_VString(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VString{}",
		Target:      VList_VString(nil),
		SourceLabel: "VList_VEnumAbc{}",
		Source:      VList_VEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VString{}",
		Target:      VList_VString(nil),
		SourceLabel: "[]VEnumAbc{}",
		Source:      []VEnumAbc(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_VString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VList_VString{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "VList_VString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VList_VString{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_VString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VList_VString{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "[]VString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: []VString{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VList_VString{\"cde\", \"Σ\"}",
		Target: VList_VString{
			"cde",
			"Σ",
		},
		SourceLabel: "VList_VString{\"cde\", \"Σ\"}",
		Source: VList_VString{
			"cde",
			"Σ",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VList_VString{\"cde\", \"Σ\"}",
		Target: VList_VString{
			"cde",
			"Σ",
		},
		SourceLabel: "[]VString{\"cde\", \"Σ\"}",
		Source: []VString{
			"cde",
			"Σ",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_TypeObject{}",
		Target:      VList_TypeObject(nil),
		SourceLabel: "VList_TypeObject{}",
		Source:      VList_TypeObject(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_TypeObject{}",
		Target:      VList_TypeObject(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_TypeObject{}",
		Target:      VList_TypeObject(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_TypeObject{typeobject(int64)}",
		Target: VList_TypeObject{
			vdl.Int64Type,
		},
		SourceLabel: "VList_TypeObject{typeobject(int64)}",
		Source: VList_TypeObject{
			vdl.Int64Type,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_TypeObject{typeobject(int64)}",
		Target: VList_TypeObject{
			vdl.Int64Type,
		},
		SourceLabel: "VList_Any{typeobject(int64)}",
		Source: VList_Any{
			vdl.Int64Type,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VList_TypeObject{typeobject(VUnionDepth2_All)}",
		Target: VList_TypeObject{
			__VDLType_union_195,
		},
		SourceLabel: "VList_TypeObject{typeobject(VUnionDepth2_All)}",
		Source: VList_TypeObject{
			__VDLType_union_195,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VList_TypeObject{typeobject(VUnionDepth2_All)}",
		Target: VList_TypeObject{
			__VDLType_union_195,
		},
		SourceLabel: "[]typeobject{typeobject(VUnionDepth2_All)}",
		Source: []*vdl.Type{
			__VDLType_union_195,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_Byte(\"\")",
		Target:      VList_Byte(nil),
		SourceLabel: "VList_Byte(\"\")",
		Source:      VList_Byte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_Byte(\"\")",
		Target:      VList_Byte(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_Byte(\"\")",
		Target:      VList_Byte(nil),
		SourceLabel: "VList_VFloat32{}",
		Source:      VList_VFloat32(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_Byte(\"{\")",
		Target:      VList_Byte("{"),
		SourceLabel: "VList_Byte(\"{\")",
		Source:      VList_Byte("{"),
	},
	{
		Label:       "Full",
		TargetLabel: "VList_Byte(\"{\")",
		Target:      VList_Byte("{"),
		SourceLabel: "[]VUint32{123}",
		Source: []VUint32{
			123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VList_Byte(\"\\xab\\x00\")",
		Target:      VList_Byte("\xab\x00"),
		SourceLabel: "VList_Byte(\"\\xab\\x00\")",
		Source:      VList_Byte("\xab\x00"),
	},
	{
		Label:       "Random0",
		TargetLabel: "VList_Byte(\"\\xab\\x00\")",
		Target:      VList_Byte("\xab\x00"),
		SourceLabel: "VList_VByte(\"\\xab\\x00\")",
		Source:      VList_VByte("\xab\x00"),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_VByte(\"\")",
		Target:      VList_VByte(nil),
		SourceLabel: "VList_VByte(\"\")",
		Source:      VList_VByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VByte(\"\")",
		Target:      VList_VByte(nil),
		SourceLabel: "VList_VFloat32{}",
		Source:      VList_VFloat32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VByte(\"\")",
		Target:      VList_VByte(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_VByte(\"{\")",
		Target:      VList_VByte("{"),
		SourceLabel: "VList_VByte(\"{\")",
		Source:      VList_VByte("{"),
	},
	{
		Label:       "Full",
		TargetLabel: "VList_VByte(\"{\")",
		Target:      VList_VByte("{"),
		SourceLabel: "VList_Byte(\"{\")",
		Source:      VList_Byte("{"),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VList_VByte(\"U\")",
		Target:      VList_VByte("U"),
		SourceLabel: "VList_VByte(\"U\")",
		Source:      VList_VByte("U"),
	},
	{
		Label:       "Random0",
		TargetLabel: "VList_VByte(\"U\")",
		Target:      VList_VByte("U"),
		SourceLabel: "[]VUint32{85}",
		Source: []VUint32{
			85,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_VEnumAbc{}",
		Target:      VList_VEnumAbc(nil),
		SourceLabel: "VList_VEnumAbc{}",
		Source:      VList_VEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VEnumAbc{}",
		Target:      VList_VEnumAbc(nil),
		SourceLabel: "[]string{}",
		Source:      []string(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VEnumAbc{}",
		Target:      VList_VEnumAbc(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_VEnumAbc{C}",
		Target: VList_VEnumAbc{
			VEnumAbcC,
		},
		SourceLabel: "VList_VEnumAbc{C}",
		Source: VList_VEnumAbc{
			VEnumAbcC,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_VEnumAbc{C}",
		Target: VList_VEnumAbc{
			VEnumAbcC,
		},
		SourceLabel: "[]VString{\"C\"}",
		Source: []VString{
			"C",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_VEnumBcd{}",
		Target:      VList_VEnumBcd(nil),
		SourceLabel: "VList_VEnumBcd{}",
		Source:      VList_VEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VEnumBcd{}",
		Target:      VList_VEnumBcd(nil),
		SourceLabel: "VList_VEnumAbc{}",
		Source:      VList_VEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VEnumBcd{}",
		Target:      VList_VEnumBcd(nil),
		SourceLabel: "VList_VString{}",
		Source:      VList_VString(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_VEnumBcd{D}",
		Target: VList_VEnumBcd{
			VEnumBcdD,
		},
		SourceLabel: "VList_VEnumBcd{D}",
		Source: VList_VEnumBcd{
			VEnumBcdD,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_VEnumBcd{D}",
		Target: VList_VEnumBcd{
			VEnumBcdD,
		},
		SourceLabel: "[]any{VEnumBcd.D}",
		Source: []interface{}{
			VEnumBcdD,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_VStructEmpty{}",
		Target:      VList_VStructEmpty(nil),
		SourceLabel: "VList_VStructEmpty{}",
		Source:      VList_VStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VStructEmpty{}",
		Target:      VList_VStructEmpty(nil),
		SourceLabel: "VList_OptVStructDepth2_Set_Float64{}",
		Source:      VList_OptVStructDepth2_Set_Float64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VStructEmpty{}",
		Target:      VList_VStructEmpty(nil),
		SourceLabel: "VList_OptVStructEmpty{}",
		Source:      VList_OptVStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_VStructEmpty{{}}",
		Target: VList_VStructEmpty{
			{},
		},
		SourceLabel: "VList_VStructEmpty{{}}",
		Source: VList_VStructEmpty{
			{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_VStructEmpty{{}}",
		Target: VList_VStructEmpty{
			{},
		},
		SourceLabel: "[]VStructDepth1_All{{}}",
		Source: []VStructDepth1_All{
			{
				F5: vdl.AnyType,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_VNamedError{}",
		Target:      VList_VNamedError(nil),
		SourceLabel: "VList_VNamedError{}",
		Source:      VList_VNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VNamedError{}",
		Target:      VList_VNamedError(nil),
		SourceLabel: "VList_OptVNamedError{}",
		Source:      VList_OptVNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VNamedError{}",
		Target:      VList_VNamedError(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VList_VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "VList_VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VList_VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VList_VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "[]?VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: []*VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VList_VNamedError{{Id: \"ΠΣΦ王普\"}}",
		Target: VList_VNamedError{
			{
				Id: "ΠΣΦ王普",
			},
		},
		SourceLabel: "VList_VNamedError{{Id: \"ΠΣΦ王普\"}}",
		Source: VList_VNamedError{
			{
				Id: "ΠΣΦ王普",
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VList_VNamedError{{Id: \"ΠΣΦ王普\"}}",
		Target: VList_VNamedError{
			{
				Id: "ΠΣΦ王普",
			},
		},
		SourceLabel: "[]any{VNamedError{Id: \"ΠΣΦ王普\"}}",
		Source: []interface{}{
			VNamedError{
				Id: "ΠΣΦ王普",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_Error{}",
		Target:      VList_Error(nil),
		SourceLabel: "VList_Error{}",
		Source:      VList_Error(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_Error{}",
		Target:      VList_Error(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_Error{}",
		Target:      VList_Error(nil),
		SourceLabel: "[]VStructEmpty{}",
		Source:      []VStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_Error{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VList_Error{
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
		SourceLabel: "VList_Error{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VList_Error{
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_Error{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VList_Error{
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
		SourceLabel: "[]any{error{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: []interface{}{
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VList_Error{{Id: \"Φ王普\", RetryCode: RetryBackoff, Msg: \"世界\"}, nil}",
		Target: VList_Error{
			verror.FromWire(&vdl.WireError{
				Id:        "Φ王普",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "世界",
			}),
			nil,
		},
		SourceLabel: "VList_Error{{Id: \"Φ王普\", RetryCode: RetryBackoff, Msg: \"世界\"}, nil}",
		Source: VList_Error{
			verror.FromWire(&vdl.WireError{
				Id:        "Φ王普",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "世界",
			}),
			nil,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VList_Error{{Id: \"Φ王普\", RetryCode: RetryBackoff, Msg: \"世界\"}, nil}",
		Target: VList_Error{
			verror.FromWire(&vdl.WireError{
				Id:        "Φ王普",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "世界",
			}),
			nil,
		},
		SourceLabel: "[]any{error{Id: \"Φ王普\", RetryCode: RetryBackoff, Msg: \"世界\"}, nil}",
		Source: []interface{}{
			verror.FromWire(&vdl.WireError{
				Id:        "Φ王普",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "世界",
			}),
			nil,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_VUint16{}",
		Target:      VList_VUint16(nil),
		SourceLabel: "VList_VUint16{}",
		Source:      VList_VUint16(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VUint16{}",
		Target:      VList_VUint16(nil),
		SourceLabel: "VList_VFloat32{}",
		Source:      VList_VFloat32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VUint16{}",
		Target:      VList_VUint16(nil),
		SourceLabel: "[]int16{}",
		Source:      []int16(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_VUint16{123}",
		Target: VList_VUint16{
			123,
		},
		SourceLabel: "VList_VUint16{123}",
		Source: VList_VUint16{
			123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_VUint16{123}",
		Target: VList_VUint16{
			123,
		},
		SourceLabel: "VList_VFloat32{123}",
		Source: VList_VFloat32{
			123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VList_VUint16{17328}",
		Target: VList_VUint16{
			17328,
		},
		SourceLabel: "VList_VUint16{17328}",
		Source: VList_VUint16{
			17328,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VList_VUint16{17328}",
		Target: VList_VUint16{
			17328,
		},
		SourceLabel: "VList_Any{VUint16(17328)}",
		Source: VList_Any{
			VUint16(17328),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_VFloat32{}",
		Target:      VList_VFloat32(nil),
		SourceLabel: "VList_VFloat32{}",
		Source:      VList_VFloat32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VFloat32{}",
		Target:      VList_VFloat32(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VFloat32{}",
		Target:      VList_VFloat32(nil),
		SourceLabel: "[]VUint32{}",
		Source:      []VUint32(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_VFloat32{1.5}",
		Target: VList_VFloat32{
			1.5,
		},
		SourceLabel: "VList_VFloat32{1.5}",
		Source: VList_VFloat32{
			1.5,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_VFloat32{1.5}",
		Target: VList_VFloat32{
			1.5,
		},
		SourceLabel: "VList_Any{VFloat32(1.5)}",
		Source: VList_Any{
			VFloat32(1.5),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VList_VFloat32{-1.2751141e+09}",
		Target: VList_VFloat32{
			-1.2751141e+09,
		},
		SourceLabel: "VList_VFloat32{-1.2751141e+09}",
		Source: VList_VFloat32{
			-1.2751141e+09,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VList_VFloat32{-1.2751141e+09}",
		Target: VList_VFloat32{
			-1.2751141e+09,
		},
		SourceLabel: "[]any{VFloat32(-1.2751141e+09)}",
		Source: []interface{}{
			VFloat32(-1.2751141e+09),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_VFloat64{}",
		Target:      VList_VFloat64(nil),
		SourceLabel: "VList_VFloat64{}",
		Source:      VList_VFloat64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VFloat64{}",
		Target:      VList_VFloat64(nil),
		SourceLabel: "[]VByte(\"\")",
		Source:      []VByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VFloat64{}",
		Target:      VList_VFloat64(nil),
		SourceLabel: "[]uint32{}",
		Source:      []uint32(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_VFloat64{1.5}",
		Target: VList_VFloat64{
			1.5,
		},
		SourceLabel: "VList_VFloat64{1.5}",
		Source: VList_VFloat64{
			1.5,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_VFloat64{1.5}",
		Target: VList_VFloat64{
			1.5,
		},
		SourceLabel: "[]any{VFloat64(1.5)}",
		Source: []interface{}{
			VFloat64(1.5),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VList_VFloat64{1.3840053308817136e+09}",
		Target: VList_VFloat64{
			1.3840053308817136e+09,
		},
		SourceLabel: "VList_VFloat64{1.3840053308817136e+09}",
		Source: VList_VFloat64{
			1.3840053308817136e+09,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VList_VFloat64{1.3840053308817136e+09}",
		Target: VList_VFloat64{
			1.3840053308817136e+09,
		},
		SourceLabel: "VList_Any{VFloat64(1.3840053308817136e+09)}",
		Source: VList_Any{
			VFloat64(1.3840053308817136e+09),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_OptVStructEmpty{}",
		Target:      VList_OptVStructEmpty(nil),
		SourceLabel: "VList_OptVStructEmpty{}",
		Source:      VList_OptVStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_OptVStructEmpty{}",
		Target:      VList_OptVStructEmpty(nil),
		SourceLabel: "[]error{}",
		Source:      []error(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_OptVStructEmpty{}",
		Target:      VList_OptVStructEmpty(nil),
		SourceLabel: "[]?VStructDepth1_VEnumBcd{}",
		Source:      []*VStructDepth1_VEnumBcd(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_OptVStructEmpty{{}}",
		Target: VList_OptVStructEmpty{
			{},
		},
		SourceLabel: "VList_OptVStructEmpty{{}}",
		Source: VList_OptVStructEmpty{
			{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_OptVStructEmpty{{}}",
		Target: VList_OptVStructEmpty{
			{},
		},
		SourceLabel: "VList_Any{?VStructEmpty{}}",
		Source: VList_Any{
			&VStructEmpty{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_OptVNamedError{}",
		Target:      VList_OptVNamedError(nil),
		SourceLabel: "VList_OptVNamedError{}",
		Source:      VList_OptVNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_OptVNamedError{}",
		Target:      VList_OptVNamedError(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_OptVNamedError{}",
		Target:      VList_OptVNamedError(nil),
		SourceLabel: "[]VStructEmpty{}",
		Source:      []VStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_OptVNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VList_OptVNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "VList_OptVNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VList_OptVNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_OptVNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VList_OptVNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "[]VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: []VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VList_OptVNamedError{nil, {Id: \"Φ王普澤世\", Msg: \"abcdeΔΘΠΣΦ王普澤\"}}",
		Target: VList_OptVNamedError{
			nil,
			{
				Id:  "Φ王普澤世",
				Msg: "abcdeΔΘΠΣΦ王普澤",
			},
		},
		SourceLabel: "VList_OptVNamedError{nil, {Id: \"Φ王普澤世\", Msg: \"abcdeΔΘΠΣΦ王普澤\"}}",
		Source: VList_OptVNamedError{
			nil,
			{
				Id:  "Φ王普澤世",
				Msg: "abcdeΔΘΠΣΦ王普澤",
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VList_OptVNamedError{nil, {Id: \"Φ王普澤世\", Msg: \"abcdeΔΘΠΣΦ王普澤\"}}",
		Target: VList_OptVNamedError{
			nil,
			{
				Id:  "Φ王普澤世",
				Msg: "abcdeΔΘΠΣΦ王普澤",
			},
		},
		SourceLabel: "[]any{nil, ?VNamedError{Id: \"Φ王普澤世\", Msg: \"abcdeΔΘΠΣΦ王普澤\"}}",
		Source: []interface{}{
			nil,
			&VNamedError{
				Id:  "Φ王普澤世",
				Msg: "abcdeΔΘΠΣΦ王普澤",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[bool]{}",
		Target:      map[bool]struct{}(nil),
		SourceLabel: "set[bool]{}",
		Source:      map[bool]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[bool]{}",
		Target:      map[bool]struct{}(nil),
		SourceLabel: "VSet_Bool{}",
		Source:      VSet_Bool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[bool]{}",
		Target:      map[bool]struct{}(nil),
		SourceLabel: "VSet_VBool{}",
		Source:      VSet_VBool(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[bool]{true}",
		Target: map[bool]struct{}{
			true: struct{}{},
		},
		SourceLabel: "set[bool]{true}",
		Source: map[bool]struct{}{
			true: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[bool]{true}",
		Target: map[bool]struct{}{
			true: struct{}{},
		},
		SourceLabel: "VSet_Bool{true}",
		Source: VSet_Bool{
			true: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[VBool]{}",
		Target:      map[VBool]struct{}(nil),
		SourceLabel: "set[VBool]{}",
		Source:      map[VBool]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[VBool]{}",
		Target:      map[VBool]struct{}(nil),
		SourceLabel: "VSet_Bool{}",
		Source:      VSet_Bool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[VBool]{}",
		Target:      map[VBool]struct{}(nil),
		SourceLabel: "set[bool]{}",
		Source:      map[bool]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[VBool]{true}",
		Target: map[VBool]struct{}{
			true: struct{}{},
		},
		SourceLabel: "set[VBool]{true}",
		Source: map[VBool]struct{}{
			true: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[VBool]{true}",
		Target: map[VBool]struct{}{
			true: struct{}{},
		},
		SourceLabel: "VSet_VBool{true}",
		Source: VSet_VBool{
			true: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[string]{}",
		Target:      map[string]struct{}(nil),
		SourceLabel: "set[string]{}",
		Source:      map[string]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[string]{}",
		Target:      map[string]struct{}(nil),
		SourceLabel: "VSet_VEnumAbc{}",
		Source:      VSet_VEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[string]{}",
		Target:      map[string]struct{}(nil),
		SourceLabel: "VSet_VString{}",
		Source:      VSet_VString(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[string]{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: map[string]struct{}{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
		SourceLabel: "set[string]{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: map[string]struct{}{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[string]{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: map[string]struct{}{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
		SourceLabel: "VSet_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VSet_String{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "set[string]{\"b\"}",
		Target: map[string]struct{}{
			"b": struct{}{},
		},
		SourceLabel: "set[string]{\"b\"}",
		Source: map[string]struct{}{
			"b": struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "set[string]{\"b\"}",
		Target: map[string]struct{}{
			"b": struct{}{},
		},
		SourceLabel: "set[VString]{\"b\"}",
		Source: map[VString]struct{}{
			"b": struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[VString]{}",
		Target:      map[VString]struct{}(nil),
		SourceLabel: "set[VString]{}",
		Source:      map[VString]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[VString]{}",
		Target:      map[VString]struct{}(nil),
		SourceLabel: "VSet_VString{}",
		Source:      VSet_VString(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[VString]{}",
		Target:      map[VString]struct{}(nil),
		SourceLabel: "set[VEnumBcd]{}",
		Source:      map[VEnumBcd]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[VString]{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: map[VString]struct{}{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
		SourceLabel: "set[VString]{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: map[VString]struct{}{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[VString]{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: map[VString]struct{}{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
		SourceLabel: "VSet_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VSet_String{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "set[VString]{\"eΔΘΠΣΦ\", \"ΔΘΠΣΦ王普\"}",
		Target: map[VString]struct{}{
			"eΔΘΠΣΦ":  struct{}{},
			"ΔΘΠΣΦ王普": struct{}{},
		},
		SourceLabel: "set[VString]{\"eΔΘΠΣΦ\", \"ΔΘΠΣΦ王普\"}",
		Source: map[VString]struct{}{
			"eΔΘΠΣΦ":  struct{}{},
			"ΔΘΠΣΦ王普": struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "set[VString]{\"eΔΘΠΣΦ\", \"ΔΘΠΣΦ王普\"}",
		Target: map[VString]struct{}{
			"eΔΘΠΣΦ":  struct{}{},
			"ΔΘΠΣΦ王普": struct{}{},
		},
		SourceLabel: "set[string]{\"eΔΘΠΣΦ\", \"ΔΘΠΣΦ王普\"}",
		Source: map[string]struct{}{
			"eΔΘΠΣΦ":  struct{}{},
			"ΔΘΠΣΦ王普": struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[byte]{}",
		Target:      map[byte]struct{}(nil),
		SourceLabel: "set[byte]{}",
		Source:      map[byte]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[byte]{}",
		Target:      map[byte]struct{}(nil),
		SourceLabel: "set[uint64]{}",
		Source:      map[uint64]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[byte]{}",
		Target:      map[byte]struct{}(nil),
		SourceLabel: "set[float64]{}",
		Source:      map[float64]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[byte]{123}",
		Target: map[byte]struct{}{
			123: struct{}{},
		},
		SourceLabel: "set[byte]{123}",
		Source: map[byte]struct{}{
			123: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[byte]{123}",
		Target: map[byte]struct{}{
			123: struct{}{},
		},
		SourceLabel: "VSet_VUint64{123}",
		Source: VSet_VUint64{
			123: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "set[byte]{0}",
		Target: map[byte]struct{}{
			0: struct{}{},
		},
		SourceLabel: "set[byte]{0}",
		Source: map[byte]struct{}{
			0: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "set[byte]{0}",
		Target: map[byte]struct{}{
			0: struct{}{},
		},
		SourceLabel: "set[int32]{0}",
		Source: map[int32]struct{}{
			0: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[VByte]{}",
		Target:      map[VByte]struct{}(nil),
		SourceLabel: "set[VByte]{}",
		Source:      map[VByte]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[VByte]{}",
		Target:      map[VByte]struct{}(nil),
		SourceLabel: "VSet_Float32{}",
		Source:      VSet_Float32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[VByte]{}",
		Target:      map[VByte]struct{}(nil),
		SourceLabel: "set[uint64]{}",
		Source:      map[uint64]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[VByte]{123}",
		Target: map[VByte]struct{}{
			123: struct{}{},
		},
		SourceLabel: "set[VByte]{123}",
		Source: map[VByte]struct{}{
			123: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[VByte]{123}",
		Target: map[VByte]struct{}{
			123: struct{}{},
		},
		SourceLabel: "set[uint64]{123}",
		Source: map[uint64]struct{}{
			123: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "set[VByte]{120, 214}",
		Target: map[VByte]struct{}{
			120: struct{}{},
			214: struct{}{},
		},
		SourceLabel: "set[VByte]{120, 214}",
		Source: map[VByte]struct{}{
			120: struct{}{},
			214: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "set[VByte]{120, 214}",
		Target: map[VByte]struct{}{
			120: struct{}{},
			214: struct{}{},
		},
		SourceLabel: "set[uint64]{120, 214}",
		Source: map[uint64]struct{}{
			120: struct{}{},
			214: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[VEnumAbc]{}",
		Target:      map[VEnumAbc]struct{}(nil),
		SourceLabel: "set[VEnumAbc]{}",
		Source:      map[VEnumAbc]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[VEnumAbc]{}",
		Target:      map[VEnumAbc]struct{}(nil),
		SourceLabel: "set[VString]{}",
		Source:      map[VString]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[VEnumAbc]{}",
		Target:      map[VEnumAbc]struct{}(nil),
		SourceLabel: "set[VEnumBcd]{}",
		Source:      map[VEnumBcd]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[VEnumAbc]{C}",
		Target: map[VEnumAbc]struct{}{
			VEnumAbcC: struct{}{},
		},
		SourceLabel: "set[VEnumAbc]{C}",
		Source: map[VEnumAbc]struct{}{
			VEnumAbcC: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[VEnumAbc]{C}",
		Target: map[VEnumAbc]struct{}{
			VEnumAbcC: struct{}{},
		},
		SourceLabel: "VSet_VEnumAbc{C}",
		Source: VSet_VEnumAbc{
			VEnumAbcC: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[VEnumBcd]{}",
		Target:      map[VEnumBcd]struct{}(nil),
		SourceLabel: "set[VEnumBcd]{}",
		Source:      map[VEnumBcd]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[VEnumBcd]{}",
		Target:      map[VEnumBcd]struct{}(nil),
		SourceLabel: "VSet_VString{}",
		Source:      VSet_VString(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[VEnumBcd]{}",
		Target:      map[VEnumBcd]struct{}(nil),
		SourceLabel: "set[VEnumAbc]{}",
		Source:      map[VEnumAbc]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[VEnumBcd]{D}",
		Target: map[VEnumBcd]struct{}{
			VEnumBcdD: struct{}{},
		},
		SourceLabel: "set[VEnumBcd]{D}",
		Source: map[VEnumBcd]struct{}{
			VEnumBcdD: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[VEnumBcd]{D}",
		Target: map[VEnumBcd]struct{}{
			VEnumBcdD: struct{}{},
		},
		SourceLabel: "VSet_VString{\"D\"}",
		Source: VSet_VString{
			"D": struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[VStructEmpty]{}",
		Target:      map[VStructEmpty]struct{}(nil),
		SourceLabel: "set[VStructEmpty]{}",
		Source:      map[VStructEmpty]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[VStructEmpty]{}",
		Target:      map[VStructEmpty]struct{}(nil),
		SourceLabel: "VSet_VNamedError{}",
		Source:      VSet_VNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[VStructEmpty]{}",
		Target:      map[VStructEmpty]struct{}(nil),
		SourceLabel: "VSet_VStructDepth2_VStructDepth1_Bool{}",
		Source:      VSet_VStructDepth2_VStructDepth1_Bool(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[VStructEmpty]{{}}",
		Target: map[VStructEmpty]struct{}{
			{}: struct{}{},
		},
		SourceLabel: "set[VStructEmpty]{{}}",
		Source: map[VStructEmpty]struct{}{
			{}: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[VStructEmpty]{{}}",
		Target: map[VStructEmpty]struct{}{
			{}: struct{}{},
		},
		SourceLabel: "set[VNamedError]{{}}",
		Source: map[VNamedError]struct{}{
			{}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[VNamedError]{}",
		Target:      map[VNamedError]struct{}(nil),
		SourceLabel: "set[VNamedError]{}",
		Source:      map[VNamedError]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[VNamedError]{}",
		Target:      map[VNamedError]struct{}(nil),
		SourceLabel: "set[VStructEmpty]{}",
		Source:      map[VStructEmpty]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[VNamedError]{}",
		Target:      map[VNamedError]struct{}(nil),
		SourceLabel: "VSet_VNamedError{}",
		Source:      VSet_VNamedError(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[VNamedError]{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: map[VNamedError]struct{}{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		},
		SourceLabel: "set[VNamedError]{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: map[VNamedError]struct{}{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[VNamedError]{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: map[VNamedError]struct{}{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		},
		SourceLabel: "VSet_VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VSet_VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "set[VNamedError]{{}, {Id: \"eΔΘΠΣΦ\", Msg: \"cd\"}}",
		Target: map[VNamedError]struct{}{
			{}: struct{}{},
			{
				Id:  "eΔΘΠΣΦ",
				Msg: "cd",
			}: struct{}{},
		},
		SourceLabel: "set[VNamedError]{{}, {Id: \"eΔΘΠΣΦ\", Msg: \"cd\"}}",
		Source: map[VNamedError]struct{}{
			{}: struct{}{},
			{
				Id:  "eΔΘΠΣΦ",
				Msg: "cd",
			}: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "set[VNamedError]{{}, {Id: \"eΔΘΠΣΦ\", Msg: \"cd\"}}",
		Target: map[VNamedError]struct{}{
			{}: struct{}{},
			{
				Id:  "eΔΘΠΣΦ",
				Msg: "cd",
			}: struct{}{},
		},
		SourceLabel: "VSet_VNamedError{{}, {Id: \"eΔΘΠΣΦ\", Msg: \"cd\"}}",
		Source: VSet_VNamedError{
			{}: struct{}{},
			{
				Id:  "eΔΘΠΣΦ",
				Msg: "cd",
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[uint64]{}",
		Target:      map[uint64]struct{}(nil),
		SourceLabel: "set[uint64]{}",
		Source:      map[uint64]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[uint64]{}",
		Target:      map[uint64]struct{}(nil),
		SourceLabel: "set[VByte]{}",
		Source:      map[VByte]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[uint64]{}",
		Target:      map[uint64]struct{}(nil),
		SourceLabel: "set[float64]{}",
		Source:      map[float64]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[uint64]{123}",
		Target: map[uint64]struct{}{
			123: struct{}{},
		},
		SourceLabel: "set[uint64]{123}",
		Source: map[uint64]struct{}{
			123: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[uint64]{123}",
		Target: map[uint64]struct{}{
			123: struct{}{},
		},
		SourceLabel: "set[byte]{123}",
		Source: map[byte]struct{}{
			123: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "set[uint64]{14701213371515028262, 15378508280196966871}",
		Target: map[uint64]struct{}{
			14701213371515028262: struct{}{},
			15378508280196966871: struct{}{},
		},
		SourceLabel: "set[uint64]{14701213371515028262, 15378508280196966871}",
		Source: map[uint64]struct{}{
			14701213371515028262: struct{}{},
			15378508280196966871: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "set[uint64]{14701213371515028262, 15378508280196966871}",
		Target: map[uint64]struct{}{
			14701213371515028262: struct{}{},
			15378508280196966871: struct{}{},
		},
		SourceLabel: "VSet_VUint64{14701213371515028262, 15378508280196966871}",
		Source: VSet_VUint64{
			14701213371515028262: struct{}{},
			15378508280196966871: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[int32]{}",
		Target:      map[int32]struct{}(nil),
		SourceLabel: "set[int32]{}",
		Source:      map[int32]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[int32]{}",
		Target:      map[int32]struct{}(nil),
		SourceLabel: "VSet_Float32{}",
		Source:      VSet_Float32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[int32]{}",
		Target:      map[int32]struct{}(nil),
		SourceLabel: "VSet_VUint64{}",
		Source:      VSet_VUint64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[int32]{-123}",
		Target: map[int32]struct{}{
			-123: struct{}{},
		},
		SourceLabel: "set[int32]{-123}",
		Source: map[int32]struct{}{
			-123: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[int32]{-123}",
		Target: map[int32]struct{}{
			-123: struct{}{},
		},
		SourceLabel: "VSet_Float32{-123}",
		Source: VSet_Float32{
			-123: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "set[int32]{0, 192111764}",
		Target: map[int32]struct{}{
			0:         struct{}{},
			192111764: struct{}{},
		},
		SourceLabel: "set[int32]{0, 192111764}",
		Source: map[int32]struct{}{
			0:         struct{}{},
			192111764: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "set[int32]{0, 192111764}",
		Target: map[int32]struct{}{
			0:         struct{}{},
			192111764: struct{}{},
		},
		SourceLabel: "set[uint64]{0, 192111764}",
		Source: map[uint64]struct{}{
			0:         struct{}{},
			192111764: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[float64]{}",
		Target:      map[float64]struct{}(nil),
		SourceLabel: "set[float64]{}",
		Source:      map[float64]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[float64]{}",
		Target:      map[float64]struct{}(nil),
		SourceLabel: "VSet_VUint64{}",
		Source:      VSet_VUint64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[float64]{}",
		Target:      map[float64]struct{}(nil),
		SourceLabel: "VSet_VByte{}",
		Source:      VSet_VByte(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[float64]{1.5}",
		Target: map[float64]struct{}{
			1.5: struct{}{},
		},
		SourceLabel: "set[float64]{1.5}",
		Source: map[float64]struct{}{
			1.5: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[float64]{1.5}",
		Target: map[float64]struct{}{
			1.5: struct{}{},
		},
		SourceLabel: "VSet_Float32{1.5}",
		Source: VSet_Float32{
			1.5: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "set[float64]{-1.2778241096583495e+08, 2.9710120759385133e+09, 9.868059949677039e+08}",
		Target: map[float64]struct{}{
			-1.2778241096583495e+08: struct{}{},
			2.9710120759385133e+09:  struct{}{},
			9.868059949677039e+08:   struct{}{},
		},
		SourceLabel: "set[float64]{-1.2778241096583495e+08, 2.9710120759385133e+09, 9.868059949677039e+08}",
		Source: map[float64]struct{}{
			-1.2778241096583495e+08: struct{}{},
			2.9710120759385133e+09:  struct{}{},
			9.868059949677039e+08:   struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VSet_Bool{}",
		Target:      VSet_Bool(nil),
		SourceLabel: "VSet_Bool{}",
		Source:      VSet_Bool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_Bool{}",
		Target:      VSet_Bool(nil),
		SourceLabel: "set[VBool]{}",
		Source:      map[VBool]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_Bool{}",
		Target:      VSet_Bool(nil),
		SourceLabel: "VSet_VBool{}",
		Source:      VSet_VBool(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VSet_Bool{true}",
		Target: VSet_Bool{
			true: struct{}{},
		},
		SourceLabel: "VSet_Bool{true}",
		Source: VSet_Bool{
			true: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VSet_Bool{true}",
		Target: VSet_Bool{
			true: struct{}{},
		},
		SourceLabel: "VSet_VBool{true}",
		Source: VSet_VBool{
			true: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VSet_VBool{}",
		Target:      VSet_VBool(nil),
		SourceLabel: "VSet_VBool{}",
		Source:      VSet_VBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_VBool{}",
		Target:      VSet_VBool(nil),
		SourceLabel: "VSet_Bool{}",
		Source:      VSet_Bool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_VBool{}",
		Target:      VSet_VBool(nil),
		SourceLabel: "set[VBool]{}",
		Source:      map[VBool]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VSet_VBool{true}",
		Target: VSet_VBool{
			true: struct{}{},
		},
		SourceLabel: "VSet_VBool{true}",
		Source: VSet_VBool{
			true: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VSet_VBool{true}",
		Target: VSet_VBool{
			true: struct{}{},
		},
		SourceLabel: "set[bool]{true}",
		Source: map[bool]struct{}{
			true: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VSet_String{}",
		Target:      VSet_String(nil),
		SourceLabel: "VSet_String{}",
		Source:      VSet_String(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_String{}",
		Target:      VSet_String(nil),
		SourceLabel: "VSet_VEnumAbc{}",
		Source:      VSet_VEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_String{}",
		Target:      VSet_String(nil),
		SourceLabel: "VSet_VEnumBcd{}",
		Source:      VSet_VEnumBcd(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VSet_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VSet_String{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
		SourceLabel: "VSet_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VSet_String{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VSet_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VSet_String{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
		SourceLabel: "VSet_VString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VSet_VString{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VSet_String{\"abc\", \"Φ王\"}",
		Target: VSet_String{
			"abc": struct{}{},
			"Φ王":  struct{}{},
		},
		SourceLabel: "VSet_String{\"abc\", \"Φ王\"}",
		Source: VSet_String{
			"abc": struct{}{},
			"Φ王":  struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VSet_String{\"abc\", \"Φ王\"}",
		Target: VSet_String{
			"abc": struct{}{},
			"Φ王":  struct{}{},
		},
		SourceLabel: "set[VString]{\"abc\", \"Φ王\"}",
		Source: map[VString]struct{}{
			"abc": struct{}{},
			"Φ王":  struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VSet_VString{}",
		Target:      VSet_VString(nil),
		SourceLabel: "VSet_VString{}",
		Source:      VSet_VString(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_VString{}",
		Target:      VSet_VString(nil),
		SourceLabel: "set[string]{}",
		Source:      map[string]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_VString{}",
		Target:      VSet_VString(nil),
		SourceLabel: "set[VEnumBcd]{}",
		Source:      map[VEnumBcd]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VSet_VString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VSet_VString{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
		SourceLabel: "VSet_VString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VSet_VString{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VSet_VString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VSet_VString{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
		SourceLabel: "set[string]{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: map[string]struct{}{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VSet_VString{\"\", \"d\", \"ΠΣΦ\"}",
		Target: VSet_VString{
			"":    struct{}{},
			"d":   struct{}{},
			"ΠΣΦ": struct{}{},
		},
		SourceLabel: "VSet_VString{\"\", \"d\", \"ΠΣΦ\"}",
		Source: VSet_VString{
			"":    struct{}{},
			"d":   struct{}{},
			"ΠΣΦ": struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VSet_VString{\"\", \"d\", \"ΠΣΦ\"}",
		Target: VSet_VString{
			"":    struct{}{},
			"d":   struct{}{},
			"ΠΣΦ": struct{}{},
		},
		SourceLabel: "VSet_String{\"\", \"d\", \"ΠΣΦ\"}",
		Source: VSet_String{
			"":    struct{}{},
			"d":   struct{}{},
			"ΠΣΦ": struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VSet_Byte{}",
		Target:      VSet_Byte(nil),
		SourceLabel: "VSet_Byte{}",
		Source:      VSet_Byte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_Byte{}",
		Target:      VSet_Byte(nil),
		SourceLabel: "set[byte]{}",
		Source:      map[byte]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_Byte{}",
		Target:      VSet_Byte(nil),
		SourceLabel: "VSet_VByte{}",
		Source:      VSet_VByte(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VSet_Byte{123}",
		Target: VSet_Byte{
			123: struct{}{},
		},
		SourceLabel: "VSet_Byte{123}",
		Source: VSet_Byte{
			123: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VSet_Byte{123}",
		Target: VSet_Byte{
			123: struct{}{},
		},
		SourceLabel: "set[byte]{123}",
		Source: map[byte]struct{}{
			123: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VSet_Byte{0, 133, 170}",
		Target: VSet_Byte{
			0:   struct{}{},
			133: struct{}{},
			170: struct{}{},
		},
		SourceLabel: "VSet_Byte{0, 133, 170}",
		Source: VSet_Byte{
			0:   struct{}{},
			133: struct{}{},
			170: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VSet_Byte{0, 133, 170}",
		Target: VSet_Byte{
			0:   struct{}{},
			133: struct{}{},
			170: struct{}{},
		},
		SourceLabel: "set[byte]{0, 133, 170}",
		Source: map[byte]struct{}{
			0:   struct{}{},
			133: struct{}{},
			170: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VSet_VByte{}",
		Target:      VSet_VByte(nil),
		SourceLabel: "VSet_VByte{}",
		Source:      VSet_VByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_VByte{}",
		Target:      VSet_VByte(nil),
		SourceLabel: "VSet_Float32{}",
		Source:      VSet_Float32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_VByte{}",
		Target:      VSet_VByte(nil),
		SourceLabel: "VSet_VUint64{}",
		Source:      VSet_VUint64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VSet_VByte{123}",
		Target: VSet_VByte{
			123: struct{}{},
		},
		SourceLabel: "VSet_VByte{123}",
		Source: VSet_VByte{
			123: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VSet_VByte{123}",
		Target: VSet_VByte{
			123: struct{}{},
		},
		SourceLabel: "VSet_Byte{123}",
		Source: VSet_Byte{
			123: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VSet_VByte{10, 122}",
		Target: VSet_VByte{
			10:  struct{}{},
			122: struct{}{},
		},
		SourceLabel: "VSet_VByte{10, 122}",
		Source: VSet_VByte{
			10:  struct{}{},
			122: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VSet_VByte{10, 122}",
		Target: VSet_VByte{
			10:  struct{}{},
			122: struct{}{},
		},
		SourceLabel: "set[float64]{10, 122}",
		Source: map[float64]struct{}{
			10:  struct{}{},
			122: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VSet_VEnumAbc{}",
		Target:      VSet_VEnumAbc(nil),
		SourceLabel: "VSet_VEnumAbc{}",
		Source:      VSet_VEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_VEnumAbc{}",
		Target:      VSet_VEnumAbc(nil),
		SourceLabel: "VSet_VString{}",
		Source:      VSet_VString(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_VEnumAbc{}",
		Target:      VSet_VEnumAbc(nil),
		SourceLabel: "VSet_String{}",
		Source:      VSet_String(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VSet_VEnumAbc{C}",
		Target: VSet_VEnumAbc{
			VEnumAbcC: struct{}{},
		},
		SourceLabel: "VSet_VEnumAbc{C}",
		Source: VSet_VEnumAbc{
			VEnumAbcC: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VSet_VEnumAbc{C}",
		Target: VSet_VEnumAbc{
			VEnumAbcC: struct{}{},
		},
		SourceLabel: "VSet_String{\"C\"}",
		Source: VSet_String{
			"C": struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VSet_VEnumBcd{}",
		Target:      VSet_VEnumBcd(nil),
		SourceLabel: "VSet_VEnumBcd{}",
		Source:      VSet_VEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_VEnumBcd{}",
		Target:      VSet_VEnumBcd(nil),
		SourceLabel: "set[string]{}",
		Source:      map[string]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_VEnumBcd{}",
		Target:      VSet_VEnumBcd(nil),
		SourceLabel: "VSet_VEnumAbc{}",
		Source:      VSet_VEnumAbc(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VSet_VEnumBcd{D}",
		Target: VSet_VEnumBcd{
			VEnumBcdD: struct{}{},
		},
		SourceLabel: "VSet_VEnumBcd{D}",
		Source: VSet_VEnumBcd{
			VEnumBcdD: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VSet_VEnumBcd{D}",
		Target: VSet_VEnumBcd{
			VEnumBcdD: struct{}{},
		},
		SourceLabel: "VSet_VString{\"D\"}",
		Source: VSet_VString{
			"D": struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VSet_VStructEmpty{}",
		Target:      VSet_VStructEmpty(nil),
		SourceLabel: "VSet_VStructEmpty{}",
		Source:      VSet_VStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_VStructEmpty{}",
		Target:      VSet_VStructEmpty(nil),
		SourceLabel: "VSet_VStructDepth2_VStructDepth1_Bool{}",
		Source:      VSet_VStructDepth2_VStructDepth1_Bool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_VStructEmpty{}",
		Target:      VSet_VStructEmpty(nil),
		SourceLabel: "set[VStructDepth2_VStructDepth1_Bool]{}",
		Source:      map[VStructDepth2_VStructDepth1_Bool]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VSet_VStructEmpty{{}}",
		Target: VSet_VStructEmpty{
			{}: struct{}{},
		},
		SourceLabel: "VSet_VStructEmpty{{}}",
		Source: VSet_VStructEmpty{
			{}: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VSet_VStructEmpty{{}}",
		Target: VSet_VStructEmpty{
			{}: struct{}{},
		},
		SourceLabel: "set[VStructEmpty]{{}}",
		Source: map[VStructEmpty]struct{}{
			{}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VSet_VNamedError{}",
		Target:      VSet_VNamedError(nil),
		SourceLabel: "VSet_VNamedError{}",
		Source:      VSet_VNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_VNamedError{}",
		Target:      VSet_VNamedError(nil),
		SourceLabel: "VSet_VStructEmpty{}",
		Source:      VSet_VStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_VNamedError{}",
		Target:      VSet_VNamedError(nil),
		SourceLabel: "set[VNamedError]{}",
		Source:      map[VNamedError]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VSet_VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VSet_VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		},
		SourceLabel: "VSet_VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VSet_VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VSet_VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VSet_VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		},
		SourceLabel: "set[VNamedError]{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: map[VNamedError]struct{}{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VSet_VNamedError{{Id: \"ΔΘΠ\", Msg: \"王普澤\"}}",
		Target: VSet_VNamedError{
			{
				Id:  "ΔΘΠ",
				Msg: "王普澤",
			}: struct{}{},
		},
		SourceLabel: "VSet_VNamedError{{Id: \"ΔΘΠ\", Msg: \"王普澤\"}}",
		Source: VSet_VNamedError{
			{
				Id:  "ΔΘΠ",
				Msg: "王普澤",
			}: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VSet_VNamedError{{Id: \"ΔΘΠ\", Msg: \"王普澤\"}}",
		Target: VSet_VNamedError{
			{
				Id:  "ΔΘΠ",
				Msg: "王普澤",
			}: struct{}{},
		},
		SourceLabel: "set[VNamedError]{{Id: \"ΔΘΠ\", Msg: \"王普澤\"}}",
		Source: map[VNamedError]struct{}{
			{
				Id:  "ΔΘΠ",
				Msg: "王普澤",
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VSet_Uint64{}",
		Target:      VSet_Uint64(nil),
		SourceLabel: "VSet_Uint64{}",
		Source:      VSet_Uint64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_Uint64{}",
		Target:      VSet_Uint64(nil),
		SourceLabel: "VSet_Byte{}",
		Source:      VSet_Byte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_Uint64{}",
		Target:      VSet_Uint64(nil),
		SourceLabel: "VSet_Float32{}",
		Source:      VSet_Float32(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VSet_Uint64{123}",
		Target: VSet_Uint64{
			123: struct{}{},
		},
		SourceLabel: "VSet_Uint64{123}",
		Source: VSet_Uint64{
			123: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VSet_Uint64{123}",
		Target: VSet_Uint64{
			123: struct{}{},
		},
		SourceLabel: "VSet_VByte{123}",
		Source: VSet_VByte{
			123: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VSet_Uint64{17369014864449492905, 2226585770067135388}",
		Target: VSet_Uint64{
			17369014864449492905: struct{}{},
			2226585770067135388:  struct{}{},
		},
		SourceLabel: "VSet_Uint64{17369014864449492905, 2226585770067135388}",
		Source: VSet_Uint64{
			17369014864449492905: struct{}{},
			2226585770067135388:  struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VSet_Uint64{17369014864449492905, 2226585770067135388}",
		Target: VSet_Uint64{
			17369014864449492905: struct{}{},
			2226585770067135388:  struct{}{},
		},
		SourceLabel: "set[uint64]{17369014864449492905, 2226585770067135388}",
		Source: map[uint64]struct{}{
			17369014864449492905: struct{}{},
			2226585770067135388:  struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VSet_VUint64{}",
		Target:      VSet_VUint64(nil),
		SourceLabel: "VSet_VUint64{}",
		Source:      VSet_VUint64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_VUint64{}",
		Target:      VSet_VUint64(nil),
		SourceLabel: "set[byte]{}",
		Source:      map[byte]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_VUint64{}",
		Target:      VSet_VUint64(nil),
		SourceLabel: "VSet_Float32{}",
		Source:      VSet_Float32(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VSet_VUint64{123}",
		Target: VSet_VUint64{
			123: struct{}{},
		},
		SourceLabel: "VSet_VUint64{123}",
		Source: VSet_VUint64{
			123: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VSet_VUint64{123}",
		Target: VSet_VUint64{
			123: struct{}{},
		},
		SourceLabel: "set[byte]{123}",
		Source: map[byte]struct{}{
			123: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VSet_VUint64{6599493238234350266}",
		Target: VSet_VUint64{
			6599493238234350266: struct{}{},
		},
		SourceLabel: "VSet_VUint64{6599493238234350266}",
		Source: VSet_VUint64{
			6599493238234350266: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VSet_VUint64{6599493238234350266}",
		Target: VSet_VUint64{
			6599493238234350266: struct{}{},
		},
		SourceLabel: "VSet_Uint64{6599493238234350266}",
		Source: VSet_Uint64{
			6599493238234350266: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VSet_Float32{}",
		Target:      VSet_Float32(nil),
		SourceLabel: "VSet_Float32{}",
		Source:      VSet_Float32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_Float32{}",
		Target:      VSet_Float32(nil),
		SourceLabel: "VSet_VByte{}",
		Source:      VSet_VByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_Float32{}",
		Target:      VSet_Float32(nil),
		SourceLabel: "VSet_Uint64{}",
		Source:      VSet_Uint64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VSet_Float32{1.5}",
		Target: VSet_Float32{
			1.5: struct{}{},
		},
		SourceLabel: "VSet_Float32{1.5}",
		Source: VSet_Float32{
			1.5: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VSet_Float32{1.5}",
		Target: VSet_Float32{
			1.5: struct{}{},
		},
		SourceLabel: "set[float64]{1.5}",
		Source: map[float64]struct{}{
			1.5: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VSet_Float32{-1.0462917e+09, 0, 1.6149151e+09}",
		Target: VSet_Float32{
			-1.0462917e+09: struct{}{},
			0:              struct{}{},
			1.6149151e+09:  struct{}{},
		},
		SourceLabel: "VSet_Float32{-1.0462917e+09, 0, 1.6149151e+09}",
		Source: VSet_Float32{
			-1.0462917e+09: struct{}{},
			0:              struct{}{},
			1.6149151e+09:  struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VSet_Float32{-1.0462917e+09, 0, 1.6149151e+09}",
		Target: VSet_Float32{
			-1.0462917e+09: struct{}{},
			0:              struct{}{},
			1.6149151e+09:  struct{}{},
		},
		SourceLabel: "set[float64]{-1.0462917096148703e+09, 0, 1.6149150712494802e+09}",
		Source: map[float64]struct{}{
			-1.0462917096148703e+09: struct{}{},
			0: struct{}{},
			1.6149150712494802e+09: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[bool]bool{}",
		Target:      map[bool]bool(nil),
		SourceLabel: "map[bool]bool{}",
		Source:      map[bool]bool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[bool]bool{}",
		Target:      map[bool]bool(nil),
		SourceLabel: "VMap_Bool_Bool{}",
		Source:      VMap_Bool_Bool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[bool]bool{}",
		Target:      map[bool]bool(nil),
		SourceLabel: "map[VBool]VBool{}",
		Source:      map[VBool]VBool(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[bool]bool{true: true}",
		Target: map[bool]bool{
			true: true,
		},
		SourceLabel: "map[bool]bool{true: true}",
		Source: map[bool]bool{
			true: true,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[bool]bool{true: true}",
		Target: map[bool]bool{
			true: true,
		},
		SourceLabel: "map[VBool]VBool{true: true}",
		Source: map[VBool]VBool{
			true: true,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[VBool]VBool{}",
		Target:      map[VBool]VBool(nil),
		SourceLabel: "map[VBool]VBool{}",
		Source:      map[VBool]VBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VBool]VBool{}",
		Target:      map[VBool]VBool(nil),
		SourceLabel: "VMap_Bool_Bool{}",
		Source:      VMap_Bool_Bool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VBool]VBool{}",
		Target:      map[VBool]VBool(nil),
		SourceLabel: "VMap_VBool_VBool{}",
		Source:      VMap_VBool_VBool(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[VBool]VBool{true: true}",
		Target: map[VBool]VBool{
			true: true,
		},
		SourceLabel: "map[VBool]VBool{true: true}",
		Source: map[VBool]VBool{
			true: true,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[VBool]VBool{true: true}",
		Target: map[VBool]VBool{
			true: true,
		},
		SourceLabel: "VMap_Bool_Bool{true: true}",
		Source: VMap_Bool_Bool{
			true: true,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[string]string{}",
		Target:      map[string]string(nil),
		SourceLabel: "map[string]string{}",
		Source:      map[string]string(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[string]string{}",
		Target:      map[string]string(nil),
		SourceLabel: "map[VEnumAbc]VEnumAbc{}",
		Source:      map[VEnumAbc]VEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[string]string{}",
		Target:      map[string]string(nil),
		SourceLabel: "map[VEnumBcd]VEnumBcd{}",
		Source:      map[VEnumBcd]VEnumBcd(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[string]string{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: map[string]string{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "map[string]string{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: map[string]string{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[string]string{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: map[string]string{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "VMap_VString_VString{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VMap_VString_VString{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[string]string{\"abcdeΔ\": \"Θ\", \"ΘΠΣΦ王普澤\": \"ΔΘ\"}",
		Target: map[string]string{
			"abcdeΔ":  "Θ",
			"ΘΠΣΦ王普澤": "ΔΘ",
		},
		SourceLabel: "map[string]string{\"abcdeΔ\": \"Θ\", \"ΘΠΣΦ王普澤\": \"ΔΘ\"}",
		Source: map[string]string{
			"abcdeΔ":  "Θ",
			"ΘΠΣΦ王普澤": "ΔΘ",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "map[string]string{\"abcdeΔ\": \"Θ\", \"ΘΠΣΦ王普澤\": \"ΔΘ\"}",
		Target: map[string]string{
			"abcdeΔ":  "Θ",
			"ΘΠΣΦ王普澤": "ΔΘ",
		},
		SourceLabel: "map[VString]VString{\"abcdeΔ\": \"Θ\", \"ΘΠΣΦ王普澤\": \"ΔΘ\"}",
		Source: map[VString]VString{
			"abcdeΔ":  "Θ",
			"ΘΠΣΦ王普澤": "ΔΘ",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[VString]VString{}",
		Target:      map[VString]VString(nil),
		SourceLabel: "map[VString]VString{}",
		Source:      map[VString]VString(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VString]VString{}",
		Target:      map[VString]VString(nil),
		SourceLabel: "map[VEnumBcd]VEnumBcd{}",
		Source:      map[VEnumBcd]VEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VString]VString{}",
		Target:      map[VString]VString(nil),
		SourceLabel: "VMap_VEnumBcd_VEnumBcd{}",
		Source:      VMap_VEnumBcd_VEnumBcd(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[VString]VString{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: map[VString]VString{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "map[VString]VString{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: map[VString]VString{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[VString]VString{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: map[VString]VString{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "VMap_VString_VString{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VMap_VString_VString{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[VString]VString{\"deΔΘΠΣ\": \"ΠΣΦ王普澤世\", \"王\": \"ΔΘΠΣ\"}",
		Target: map[VString]VString{
			"deΔΘΠΣ": "ΠΣΦ王普澤世",
			"王":      "ΔΘΠΣ",
		},
		SourceLabel: "map[VString]VString{\"deΔΘΠΣ\": \"ΠΣΦ王普澤世\", \"王\": \"ΔΘΠΣ\"}",
		Source: map[VString]VString{
			"deΔΘΠΣ": "ΠΣΦ王普澤世",
			"王":      "ΔΘΠΣ",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "map[VString]VString{\"deΔΘΠΣ\": \"ΠΣΦ王普澤世\", \"王\": \"ΔΘΠΣ\"}",
		Target: map[VString]VString{
			"deΔΘΠΣ": "ΠΣΦ王普澤世",
			"王":      "ΔΘΠΣ",
		},
		SourceLabel: "VMap_String_String{\"deΔΘΠΣ\": \"ΠΣΦ王普澤世\", \"王\": \"ΔΘΠΣ\"}",
		Source: VMap_String_String{
			"deΔΘΠΣ": "ΠΣΦ王普澤世",
			"王":      "ΔΘΠΣ",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[byte]byte{}",
		Target:      map[byte]byte(nil),
		SourceLabel: "map[byte]byte{}",
		Source:      map[byte]byte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[byte]byte{}",
		Target:      map[byte]byte(nil),
		SourceLabel: "VMap_Byte_Byte{}",
		Source:      VMap_Byte_Byte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[byte]byte{}",
		Target:      map[byte]byte(nil),
		SourceLabel: "map[uint32]uint32{}",
		Source:      map[uint32]uint32(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[byte]byte{123: 123}",
		Target: map[byte]byte{
			123: 123,
		},
		SourceLabel: "map[byte]byte{123: 123}",
		Source: map[byte]byte{
			123: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[byte]byte{123: 123}",
		Target: map[byte]byte{
			123: 123,
		},
		SourceLabel: "VMap_VByte_VByte{123: 123}",
		Source: VMap_VByte_VByte{
			123: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[byte]byte{0: 205, 131: 246, 28: 50}",
		Target: map[byte]byte{
			0:   205,
			131: 246,
			28:  50,
		},
		SourceLabel: "map[byte]byte{0: 205, 131: 246, 28: 50}",
		Source: map[byte]byte{
			0:   205,
			131: 246,
			28:  50,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "map[byte]byte{0: 205, 131: 246, 28: 50}",
		Target: map[byte]byte{
			0:   205,
			131: 246,
			28:  50,
		},
		SourceLabel: "VMap_VByte_VByte{0: 205, 131: 246, 28: 50}",
		Source: VMap_VByte_VByte{
			0:   205,
			131: 246,
			28:  50,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[VByte]VByte{}",
		Target:      map[VByte]VByte(nil),
		SourceLabel: "map[VByte]VByte{}",
		Source:      map[VByte]VByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VByte]VByte{}",
		Target:      map[VByte]VByte(nil),
		SourceLabel: "VMap_VByte_VByte{}",
		Source:      VMap_VByte_VByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VByte]VByte{}",
		Target:      map[VByte]VByte(nil),
		SourceLabel: "map[VInt8]VInt8{}",
		Source:      map[VInt8]VInt8(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[VByte]VByte{123: 123}",
		Target: map[VByte]VByte{
			123: 123,
		},
		SourceLabel: "map[VByte]VByte{123: 123}",
		Source: map[VByte]VByte{
			123: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[VByte]VByte{123: 123}",
		Target: map[VByte]VByte{
			123: 123,
		},
		SourceLabel: "VMap_VByte_VByte{123: 123}",
		Source: VMap_VByte_VByte{
			123: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[VByte]VByte{232: 210}",
		Target: map[VByte]VByte{
			232: 210,
		},
		SourceLabel: "map[VByte]VByte{232: 210}",
		Source: map[VByte]VByte{
			232: 210,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "map[VByte]VByte{232: 210}",
		Target: map[VByte]VByte{
			232: 210,
		},
		SourceLabel: "VMap_Int64_Int64{232: 210}",
		Source: VMap_Int64_Int64{
			232: 210,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[VEnumAbc]VEnumAbc{}",
		Target:      map[VEnumAbc]VEnumAbc(nil),
		SourceLabel: "map[VEnumAbc]VEnumAbc{}",
		Source:      map[VEnumAbc]VEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VEnumAbc]VEnumAbc{}",
		Target:      map[VEnumAbc]VEnumAbc(nil),
		SourceLabel: "VMap_VEnumBcd_VEnumBcd{}",
		Source:      VMap_VEnumBcd_VEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VEnumAbc]VEnumAbc{}",
		Target:      map[VEnumAbc]VEnumAbc(nil),
		SourceLabel: "map[VString]VString{}",
		Source:      map[VString]VString(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[VEnumAbc]VEnumAbc{C: C}",
		Target: map[VEnumAbc]VEnumAbc{
			VEnumAbcC: VEnumAbcC,
		},
		SourceLabel: "map[VEnumAbc]VEnumAbc{C: C}",
		Source: map[VEnumAbc]VEnumAbc{
			VEnumAbcC: VEnumAbcC,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[VEnumAbc]VEnumAbc{C: C}",
		Target: map[VEnumAbc]VEnumAbc{
			VEnumAbcC: VEnumAbcC,
		},
		SourceLabel: "VMap_VString_VString{\"C\": \"C\"}",
		Source: VMap_VString_VString{
			"C": "C",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[VEnumBcd]VEnumBcd{}",
		Target:      map[VEnumBcd]VEnumBcd(nil),
		SourceLabel: "map[VEnumBcd]VEnumBcd{}",
		Source:      map[VEnumBcd]VEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VEnumBcd]VEnumBcd{}",
		Target:      map[VEnumBcd]VEnumBcd(nil),
		SourceLabel: "VMap_VEnumAbc_VEnumAbc{}",
		Source:      VMap_VEnumAbc_VEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VEnumBcd]VEnumBcd{}",
		Target:      map[VEnumBcd]VEnumBcd(nil),
		SourceLabel: "map[string]string{}",
		Source:      map[string]string(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[VEnumBcd]VEnumBcd{D: D}",
		Target: map[VEnumBcd]VEnumBcd{
			VEnumBcdD: VEnumBcdD,
		},
		SourceLabel: "map[VEnumBcd]VEnumBcd{D: D}",
		Source: map[VEnumBcd]VEnumBcd{
			VEnumBcdD: VEnumBcdD,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[VEnumBcd]VEnumBcd{D: D}",
		Target: map[VEnumBcd]VEnumBcd{
			VEnumBcdD: VEnumBcdD,
		},
		SourceLabel: "map[VString]VString{\"D\": \"D\"}",
		Source: map[VString]VString{
			"D": "D",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[VStructEmpty]VStructEmpty{}",
		Target:      map[VStructEmpty]VStructEmpty(nil),
		SourceLabel: "map[VStructEmpty]VStructEmpty{}",
		Source:      map[VStructEmpty]VStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VStructEmpty]VStructEmpty{}",
		Target:      map[VStructEmpty]VStructEmpty(nil),
		SourceLabel: "map[VStructDepth1_String]VStructDepth1_String{}",
		Source:      map[VStructDepth1_String]VStructDepth1_String(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VStructEmpty]VStructEmpty{}",
		Target:      map[VStructEmpty]VStructEmpty(nil),
		SourceLabel: "VMap_VNamedError_VNamedError{}",
		Source:      VMap_VNamedError_VNamedError(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[VStructEmpty]VStructEmpty{{}: {}}",
		Target: map[VStructEmpty]VStructEmpty{
			{}: {},
		},
		SourceLabel: "map[VStructEmpty]VStructEmpty{{}: {}}",
		Source: map[VStructEmpty]VStructEmpty{
			{}: {},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[VStructEmpty]VStructEmpty{{}: {}}",
		Target: map[VStructEmpty]VStructEmpty{
			{}: {},
		},
		SourceLabel: "VMap_VStructEmpty_VStructEmpty{{}: {}}",
		Source: VMap_VStructEmpty_VStructEmpty{
			{}: {},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[VNamedError]VNamedError{}",
		Target:      map[VNamedError]VNamedError(nil),
		SourceLabel: "map[VNamedError]VNamedError{}",
		Source:      map[VNamedError]VNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VNamedError]VNamedError{}",
		Target:      map[VNamedError]VNamedError(nil),
		SourceLabel: "VMap_VStructEmpty_VStructEmpty{}",
		Source:      VMap_VStructEmpty_VStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VNamedError]VNamedError{}",
		Target:      map[VNamedError]VNamedError(nil),
		SourceLabel: "map[VStructEmpty]VStructEmpty{}",
		Source:      map[VStructEmpty]VStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[VNamedError]VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: map[VNamedError]VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: {
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "map[VNamedError]VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: map[VNamedError]VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: {
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[VNamedError]VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: map[VNamedError]VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: {
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "VMap_VNamedError_VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VMap_VNamedError_VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: {
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[VNamedError]VNamedError{{Id: \"ΘΠ\"}: {Msg: \"ΣΦ王\"}}",
		Target: map[VNamedError]VNamedError{
			{
				Id: "ΘΠ",
			}: {
				Msg: "ΣΦ王",
			},
		},
		SourceLabel: "map[VNamedError]VNamedError{{Id: \"ΘΠ\"}: {Msg: \"ΣΦ王\"}}",
		Source: map[VNamedError]VNamedError{
			{
				Id: "ΘΠ",
			}: {
				Msg: "ΣΦ王",
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "map[VNamedError]VNamedError{{Id: \"ΘΠ\"}: {Msg: \"ΣΦ王\"}}",
		Target: map[VNamedError]VNamedError{
			{
				Id: "ΘΠ",
			}: {
				Msg: "ΣΦ王",
			},
		},
		SourceLabel: "VMap_VNamedError_VNamedError{{Id: \"ΘΠ\"}: {Msg: \"ΣΦ王\"}}",
		Source: VMap_VNamedError_VNamedError{
			{
				Id: "ΘΠ",
			}: {
				Msg: "ΣΦ王",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[uint32]uint32{}",
		Target:      map[uint32]uint32(nil),
		SourceLabel: "map[uint32]uint32{}",
		Source:      map[uint32]uint32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[uint32]uint32{}",
		Target:      map[uint32]uint32(nil),
		SourceLabel: "VMap_Int64_Int64{}",
		Source:      VMap_Int64_Int64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[uint32]uint32{}",
		Target:      map[uint32]uint32(nil),
		SourceLabel: "map[VInt8]VInt8{}",
		Source:      map[VInt8]VInt8(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[uint32]uint32{123: 123}",
		Target: map[uint32]uint32{
			123: 123,
		},
		SourceLabel: "map[uint32]uint32{123: 123}",
		Source: map[uint32]uint32{
			123: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[uint32]uint32{123: 123}",
		Target: map[uint32]uint32{
			123: 123,
		},
		SourceLabel: "VMap_VInt32_VInt32{123: 123}",
		Source: VMap_VInt32_VInt32{
			123: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[uint32]uint32{244133376: 0, 2547477777: 1225449302}",
		Target: map[uint32]uint32{
			244133376:  0,
			2547477777: 1225449302,
		},
		SourceLabel: "map[uint32]uint32{244133376: 0, 2547477777: 1225449302}",
		Source: map[uint32]uint32{
			244133376:  0,
			2547477777: 1225449302,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "map[uint32]uint32{244133376: 0, 2547477777: 1225449302}",
		Target: map[uint32]uint32{
			244133376:  0,
			2547477777: 1225449302,
		},
		SourceLabel: "VMap_Int64_Int64{244133376: 0, 2547477777: 1225449302}",
		Source: VMap_Int64_Int64{
			244133376:  0,
			2547477777: 1225449302,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[VUint64]VUint64{}",
		Target:      map[VUint64]VUint64(nil),
		SourceLabel: "map[VUint64]VUint64{}",
		Source:      map[VUint64]VUint64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VUint64]VUint64{}",
		Target:      map[VUint64]VUint64(nil),
		SourceLabel: "map[VInt8]VInt8{}",
		Source:      map[VInt8]VInt8(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VUint64]VUint64{}",
		Target:      map[VUint64]VUint64(nil),
		SourceLabel: "VMap_VInt32_VInt32{}",
		Source:      VMap_VInt32_VInt32(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[VUint64]VUint64{123: 123}",
		Target: map[VUint64]VUint64{
			123: 123,
		},
		SourceLabel: "map[VUint64]VUint64{123: 123}",
		Source: map[VUint64]VUint64{
			123: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[VUint64]VUint64{123: 123}",
		Target: map[VUint64]VUint64{
			123: 123,
		},
		SourceLabel: "map[VInt8]VInt8{123: 123}",
		Source: map[VInt8]VInt8{
			123: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[VUint64]VUint64{5141443171982337235: 9545256992548915594, 9505225024318949075: 7144566758140319083}",
		Target: map[VUint64]VUint64{
			5141443171982337235: 9545256992548915594,
			9505225024318949075: 7144566758140319083,
		},
		SourceLabel: "map[VUint64]VUint64{5141443171982337235: 9545256992548915594, 9505225024318949075: 7144566758140319083}",
		Source: map[VUint64]VUint64{
			5141443171982337235: 9545256992548915594,
			9505225024318949075: 7144566758140319083,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[VInt8]VInt8{}",
		Target:      map[VInt8]VInt8(nil),
		SourceLabel: "map[VInt8]VInt8{}",
		Source:      map[VInt8]VInt8(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VInt8]VInt8{}",
		Target:      map[VInt8]VInt8(nil),
		SourceLabel: "VMap_VUint32_VUint32{}",
		Source:      VMap_VUint32_VUint32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VInt8]VInt8{}",
		Target:      map[VInt8]VInt8(nil),
		SourceLabel: "map[VByte]VByte{}",
		Source:      map[VByte]VByte(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[VInt8]VInt8{-123: -123}",
		Target: map[VInt8]VInt8{
			-123: -123,
		},
		SourceLabel: "map[VInt8]VInt8{-123: -123}",
		Source: map[VInt8]VInt8{
			-123: -123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[VInt8]VInt8{-123: -123}",
		Target: map[VInt8]VInt8{
			-123: -123,
		},
		SourceLabel: "VMap_VInt32_VInt32{-123: -123}",
		Source: VMap_VInt32_VInt32{
			-123: -123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[VInt8]VInt8{-12: -21, -30: -7, 0: 13}",
		Target: map[VInt8]VInt8{
			-12: -21,
			-30: -7,
			0:   13,
		},
		SourceLabel: "map[VInt8]VInt8{-12: -21, -30: -7, 0: 13}",
		Source: map[VInt8]VInt8{
			-12: -21,
			-30: -7,
			0:   13,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "map[VInt8]VInt8{-12: -21, -30: -7, 0: 13}",
		Target: map[VInt8]VInt8{
			-12: -21,
			-30: -7,
			0:   13,
		},
		SourceLabel: "VMap_VInt32_VInt32{-12: -21, -30: -7, 0: 13}",
		Source: VMap_VInt32_VInt32{
			-12: -21,
			-30: -7,
			0:   13,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VMap_Bool_Bool{}",
		Target:      VMap_Bool_Bool(nil),
		SourceLabel: "VMap_Bool_Bool{}",
		Source:      VMap_Bool_Bool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_Bool_Bool{}",
		Target:      VMap_Bool_Bool(nil),
		SourceLabel: "VMap_VBool_VBool{}",
		Source:      VMap_VBool_VBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_Bool_Bool{}",
		Target:      VMap_Bool_Bool(nil),
		SourceLabel: "map[VBool]VBool{}",
		Source:      map[VBool]VBool(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VMap_Bool_Bool{true: true}",
		Target: VMap_Bool_Bool{
			true: true,
		},
		SourceLabel: "VMap_Bool_Bool{true: true}",
		Source: VMap_Bool_Bool{
			true: true,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VMap_Bool_Bool{true: true}",
		Target: VMap_Bool_Bool{
			true: true,
		},
		SourceLabel: "map[bool]bool{true: true}",
		Source: map[bool]bool{
			true: true,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VMap_VBool_VBool{}",
		Target:      VMap_VBool_VBool(nil),
		SourceLabel: "VMap_VBool_VBool{}",
		Source:      VMap_VBool_VBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VBool_VBool{}",
		Target:      VMap_VBool_VBool(nil),
		SourceLabel: "map[bool]bool{}",
		Source:      map[bool]bool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VBool_VBool{}",
		Target:      VMap_VBool_VBool(nil),
		SourceLabel: "map[VBool]VBool{}",
		Source:      map[VBool]VBool(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VMap_VBool_VBool{true: true}",
		Target: VMap_VBool_VBool{
			true: true,
		},
		SourceLabel: "VMap_VBool_VBool{true: true}",
		Source: VMap_VBool_VBool{
			true: true,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VMap_VBool_VBool{true: true}",
		Target: VMap_VBool_VBool{
			true: true,
		},
		SourceLabel: "VMap_Bool_Bool{true: true}",
		Source: VMap_Bool_Bool{
			true: true,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VMap_String_String{}",
		Target:      VMap_String_String(nil),
		SourceLabel: "VMap_String_String{}",
		Source:      VMap_String_String(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_String_String{}",
		Target:      VMap_String_String(nil),
		SourceLabel: "VMap_VEnumAbc_VEnumAbc{}",
		Source:      VMap_VEnumAbc_VEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_String_String{}",
		Target:      VMap_String_String(nil),
		SourceLabel: "map[VString]VString{}",
		Source:      map[VString]VString(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VMap_String_String{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VMap_String_String{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "VMap_String_String{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VMap_String_String{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VMap_String_String{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VMap_String_String{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "map[VString]VString{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: map[VString]VString{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VMap_String_String{\"\": \"\", \"eΔΘΠΣΦ王普澤\": \"cd\", \"Π\": \"deΔΘΠΣΦ\"}",
		Target: VMap_String_String{
			"": "",
			"eΔΘΠΣΦ王普澤": "cd",
			"Π": "deΔΘΠΣΦ",
		},
		SourceLabel: "VMap_String_String{\"\": \"\", \"eΔΘΠΣΦ王普澤\": \"cd\", \"Π\": \"deΔΘΠΣΦ\"}",
		Source: VMap_String_String{
			"": "",
			"eΔΘΠΣΦ王普澤": "cd",
			"Π": "deΔΘΠΣΦ",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VMap_String_String{\"\": \"\", \"eΔΘΠΣΦ王普澤\": \"cd\", \"Π\": \"deΔΘΠΣΦ\"}",
		Target: VMap_String_String{
			"": "",
			"eΔΘΠΣΦ王普澤": "cd",
			"Π": "deΔΘΠΣΦ",
		},
		SourceLabel: "VMap_VString_VString{\"\": \"\", \"eΔΘΠΣΦ王普澤\": \"cd\", \"Π\": \"deΔΘΠΣΦ\"}",
		Source: VMap_VString_VString{
			"": "",
			"eΔΘΠΣΦ王普澤": "cd",
			"Π": "deΔΘΠΣΦ",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VMap_VString_VString{}",
		Target:      VMap_VString_VString(nil),
		SourceLabel: "VMap_VString_VString{}",
		Source:      VMap_VString_VString(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VString_VString{}",
		Target:      VMap_VString_VString(nil),
		SourceLabel: "VMap_VEnumAbc_VEnumAbc{}",
		Source:      VMap_VEnumAbc_VEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VString_VString{}",
		Target:      VMap_VString_VString(nil),
		SourceLabel: "map[VEnumBcd]VEnumBcd{}",
		Source:      map[VEnumBcd]VEnumBcd(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VMap_VString_VString{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VMap_VString_VString{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "VMap_VString_VString{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VMap_VString_VString{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VMap_VString_VString{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VMap_VString_VString{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "map[VString]VString{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: map[VString]VString{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VMap_VString_VString{\"\": \"Δ\", \"ΘΠΣΦ\": \"eΔΘΠΣΦ王\"}",
		Target: VMap_VString_VString{
			"":     "Δ",
			"ΘΠΣΦ": "eΔΘΠΣΦ王",
		},
		SourceLabel: "VMap_VString_VString{\"\": \"Δ\", \"ΘΠΣΦ\": \"eΔΘΠΣΦ王\"}",
		Source: VMap_VString_VString{
			"":     "Δ",
			"ΘΠΣΦ": "eΔΘΠΣΦ王",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VMap_VString_VString{\"\": \"Δ\", \"ΘΠΣΦ\": \"eΔΘΠΣΦ王\"}",
		Target: VMap_VString_VString{
			"":     "Δ",
			"ΘΠΣΦ": "eΔΘΠΣΦ王",
		},
		SourceLabel: "map[string]string{\"\": \"Δ\", \"ΘΠΣΦ\": \"eΔΘΠΣΦ王\"}",
		Source: map[string]string{
			"":     "Δ",
			"ΘΠΣΦ": "eΔΘΠΣΦ王",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VMap_Byte_Byte{}",
		Target:      VMap_Byte_Byte(nil),
		SourceLabel: "VMap_Byte_Byte{}",
		Source:      VMap_Byte_Byte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_Byte_Byte{}",
		Target:      VMap_Byte_Byte(nil),
		SourceLabel: "map[uint32]uint32{}",
		Source:      map[uint32]uint32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_Byte_Byte{}",
		Target:      VMap_Byte_Byte(nil),
		SourceLabel: "VMap_Int64_Int64{}",
		Source:      VMap_Int64_Int64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VMap_Byte_Byte{123: 123}",
		Target: VMap_Byte_Byte{
			123: 123,
		},
		SourceLabel: "VMap_Byte_Byte{123: 123}",
		Source: VMap_Byte_Byte{
			123: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VMap_Byte_Byte{123: 123}",
		Target: VMap_Byte_Byte{
			123: 123,
		},
		SourceLabel: "VMap_VInt32_VInt32{123: 123}",
		Source: VMap_VInt32_VInt32{
			123: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VMap_Byte_Byte{0: 191}",
		Target: VMap_Byte_Byte{
			0: 191,
		},
		SourceLabel: "VMap_Byte_Byte{0: 191}",
		Source: VMap_Byte_Byte{
			0: 191,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VMap_Byte_Byte{0: 191}",
		Target: VMap_Byte_Byte{
			0: 191,
		},
		SourceLabel: "map[VUint64]VUint64{0: 191}",
		Source: map[VUint64]VUint64{
			0: 191,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VMap_VByte_VByte{}",
		Target:      VMap_VByte_VByte(nil),
		SourceLabel: "VMap_VByte_VByte{}",
		Source:      VMap_VByte_VByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VByte_VByte{}",
		Target:      VMap_VByte_VByte(nil),
		SourceLabel: "map[byte]byte{}",
		Source:      map[byte]byte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VByte_VByte{}",
		Target:      VMap_VByte_VByte(nil),
		SourceLabel: "VMap_VInt32_VInt32{}",
		Source:      VMap_VInt32_VInt32(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VMap_VByte_VByte{123: 123}",
		Target: VMap_VByte_VByte{
			123: 123,
		},
		SourceLabel: "VMap_VByte_VByte{123: 123}",
		Source: VMap_VByte_VByte{
			123: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VMap_VByte_VByte{123: 123}",
		Target: VMap_VByte_VByte{
			123: 123,
		},
		SourceLabel: "VMap_Byte_Byte{123: 123}",
		Source: VMap_Byte_Byte{
			123: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VMap_VByte_VByte{140: 57}",
		Target: VMap_VByte_VByte{
			140: 57,
		},
		SourceLabel: "VMap_VByte_VByte{140: 57}",
		Source: VMap_VByte_VByte{
			140: 57,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VMap_VByte_VByte{140: 57}",
		Target: VMap_VByte_VByte{
			140: 57,
		},
		SourceLabel: "VMap_VInt32_VInt32{140: 57}",
		Source: VMap_VInt32_VInt32{
			140: 57,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VMap_VEnumAbc_VEnumAbc{}",
		Target:      VMap_VEnumAbc_VEnumAbc(nil),
		SourceLabel: "VMap_VEnumAbc_VEnumAbc{}",
		Source:      VMap_VEnumAbc_VEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VEnumAbc_VEnumAbc{}",
		Target:      VMap_VEnumAbc_VEnumAbc(nil),
		SourceLabel: "map[string]string{}",
		Source:      map[string]string(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VEnumAbc_VEnumAbc{}",
		Target:      VMap_VEnumAbc_VEnumAbc(nil),
		SourceLabel: "VMap_String_String{}",
		Source:      VMap_String_String(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VMap_VEnumAbc_VEnumAbc{C: C}",
		Target: VMap_VEnumAbc_VEnumAbc{
			VEnumAbcC: VEnumAbcC,
		},
		SourceLabel: "VMap_VEnumAbc_VEnumAbc{C: C}",
		Source: VMap_VEnumAbc_VEnumAbc{
			VEnumAbcC: VEnumAbcC,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VMap_VEnumAbc_VEnumAbc{C: C}",
		Target: VMap_VEnumAbc_VEnumAbc{
			VEnumAbcC: VEnumAbcC,
		},
		SourceLabel: "map[string]string{\"C\": \"C\"}",
		Source: map[string]string{
			"C": "C",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VMap_VEnumBcd_VEnumBcd{}",
		Target:      VMap_VEnumBcd_VEnumBcd(nil),
		SourceLabel: "VMap_VEnumBcd_VEnumBcd{}",
		Source:      VMap_VEnumBcd_VEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VEnumBcd_VEnumBcd{}",
		Target:      VMap_VEnumBcd_VEnumBcd(nil),
		SourceLabel: "VMap_VString_VString{}",
		Source:      VMap_VString_VString(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VEnumBcd_VEnumBcd{}",
		Target:      VMap_VEnumBcd_VEnumBcd(nil),
		SourceLabel: "map[VEnumBcd]VEnumBcd{}",
		Source:      map[VEnumBcd]VEnumBcd(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VMap_VEnumBcd_VEnumBcd{D: D}",
		Target: VMap_VEnumBcd_VEnumBcd{
			VEnumBcdD: VEnumBcdD,
		},
		SourceLabel: "VMap_VEnumBcd_VEnumBcd{D: D}",
		Source: VMap_VEnumBcd_VEnumBcd{
			VEnumBcdD: VEnumBcdD,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VMap_VEnumBcd_VEnumBcd{D: D}",
		Target: VMap_VEnumBcd_VEnumBcd{
			VEnumBcdD: VEnumBcdD,
		},
		SourceLabel: "map[VString]VString{\"D\": \"D\"}",
		Source: map[VString]VString{
			"D": "D",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VMap_VStructEmpty_VStructEmpty{}",
		Target:      VMap_VStructEmpty_VStructEmpty(nil),
		SourceLabel: "VMap_VStructEmpty_VStructEmpty{}",
		Source:      VMap_VStructEmpty_VStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VStructEmpty_VStructEmpty{}",
		Target:      VMap_VStructEmpty_VStructEmpty(nil),
		SourceLabel: "map[VStructDepth2_VUnionDepth1_Float64]VStructDepth2_VUnionDepth1_Float64{}",
		Source:      map[VStructDepth2_VUnionDepth1_Float64]VStructDepth2_VUnionDepth1_Float64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VStructEmpty_VStructEmpty{}",
		Target:      VMap_VStructEmpty_VStructEmpty(nil),
		SourceLabel: "VMap_VStructDepth1_VBool_VStructDepth1_VBool{}",
		Source:      VMap_VStructDepth1_VBool_VStructDepth1_VBool(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VMap_VStructEmpty_VStructEmpty{{}: {}}",
		Target: VMap_VStructEmpty_VStructEmpty{
			{}: {},
		},
		SourceLabel: "VMap_VStructEmpty_VStructEmpty{{}: {}}",
		Source: VMap_VStructEmpty_VStructEmpty{
			{}: {},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VMap_VStructEmpty_VStructEmpty{{}: {}}",
		Target: VMap_VStructEmpty_VStructEmpty{
			{}: {},
		},
		SourceLabel: "map[VStructEmpty]VStructEmpty{{}: {}}",
		Source: map[VStructEmpty]VStructEmpty{
			{}: {},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VMap_VNamedError_VNamedError{}",
		Target:      VMap_VNamedError_VNamedError(nil),
		SourceLabel: "VMap_VNamedError_VNamedError{}",
		Source:      VMap_VNamedError_VNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VNamedError_VNamedError{}",
		Target:      VMap_VNamedError_VNamedError(nil),
		SourceLabel: "map[VNamedError]VNamedError{}",
		Source:      map[VNamedError]VNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VNamedError_VNamedError{}",
		Target:      VMap_VNamedError_VNamedError(nil),
		SourceLabel: "VMap_VStructEmpty_VStructEmpty{}",
		Source:      VMap_VStructEmpty_VStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VMap_VNamedError_VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VMap_VNamedError_VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: {
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "VMap_VNamedError_VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VMap_VNamedError_VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: {
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VMap_VNamedError_VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VMap_VNamedError_VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: {
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "map[VNamedError]VNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: map[VNamedError]VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: {
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VMap_VNamedError_VNamedError{{Id: \"eΔΘΠΣ\", Msg: \"ΘΠΣΦ王普澤世\"}: {Id: \"ΘΠΣΦ王普澤\", Msg: \"abcde\"}}",
		Target: VMap_VNamedError_VNamedError{
			{
				Id:  "eΔΘΠΣ",
				Msg: "ΘΠΣΦ王普澤世",
			}: {
				Id:  "ΘΠΣΦ王普澤",
				Msg: "abcde",
			},
		},
		SourceLabel: "VMap_VNamedError_VNamedError{{Id: \"eΔΘΠΣ\", Msg: \"ΘΠΣΦ王普澤世\"}: {Id: \"ΘΠΣΦ王普澤\", Msg: \"abcde\"}}",
		Source: VMap_VNamedError_VNamedError{
			{
				Id:  "eΔΘΠΣ",
				Msg: "ΘΠΣΦ王普澤世",
			}: {
				Id:  "ΘΠΣΦ王普澤",
				Msg: "abcde",
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VMap_VNamedError_VNamedError{{Id: \"eΔΘΠΣ\", Msg: \"ΘΠΣΦ王普澤世\"}: {Id: \"ΘΠΣΦ王普澤\", Msg: \"abcde\"}}",
		Target: VMap_VNamedError_VNamedError{
			{
				Id:  "eΔΘΠΣ",
				Msg: "ΘΠΣΦ王普澤世",
			}: {
				Id:  "ΘΠΣΦ王普澤",
				Msg: "abcde",
			},
		},
		SourceLabel: "map[VNamedError]VNamedError{{Id: \"eΔΘΠΣ\", Msg: \"ΘΠΣΦ王普澤世\"}: {Id: \"ΘΠΣΦ王普澤\", Msg: \"abcde\"}}",
		Source: map[VNamedError]VNamedError{
			{
				Id:  "eΔΘΠΣ",
				Msg: "ΘΠΣΦ王普澤世",
			}: {
				Id:  "ΘΠΣΦ王普澤",
				Msg: "abcde",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VMap_VUint32_VUint32{}",
		Target:      VMap_VUint32_VUint32(nil),
		SourceLabel: "VMap_VUint32_VUint32{}",
		Source:      VMap_VUint32_VUint32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VUint32_VUint32{}",
		Target:      VMap_VUint32_VUint32(nil),
		SourceLabel: "VMap_Int64_Int64{}",
		Source:      VMap_Int64_Int64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VUint32_VUint32{}",
		Target:      VMap_VUint32_VUint32(nil),
		SourceLabel: "map[byte]byte{}",
		Source:      map[byte]byte(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VMap_VUint32_VUint32{123: 123}",
		Target: VMap_VUint32_VUint32{
			123: 123,
		},
		SourceLabel: "VMap_VUint32_VUint32{123: 123}",
		Source: VMap_VUint32_VUint32{
			123: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VMap_VUint32_VUint32{123: 123}",
		Target: VMap_VUint32_VUint32{
			123: 123,
		},
		SourceLabel: "map[VUint64]VUint64{123: 123}",
		Source: map[VUint64]VUint64{
			123: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VMap_VUint32_VUint32{0: 0, 1265118228: 3145130987, 1574762306: 614136176}",
		Target: VMap_VUint32_VUint32{
			0:          0,
			1265118228: 3145130987,
			1574762306: 614136176,
		},
		SourceLabel: "VMap_VUint32_VUint32{0: 0, 1265118228: 3145130987, 1574762306: 614136176}",
		Source: VMap_VUint32_VUint32{
			0:          0,
			1265118228: 3145130987,
			1574762306: 614136176,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VMap_VUint32_VUint32{0: 0, 1265118228: 3145130987, 1574762306: 614136176}",
		Target: VMap_VUint32_VUint32{
			0:          0,
			1265118228: 3145130987,
			1574762306: 614136176,
		},
		SourceLabel: "VMap_Int64_Int64{0: 0, 1265118228: 3145130987, 1574762306: 614136176}",
		Source: VMap_Int64_Int64{
			0:          0,
			1265118228: 3145130987,
			1574762306: 614136176,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VMap_VInt32_VInt32{}",
		Target:      VMap_VInt32_VInt32(nil),
		SourceLabel: "VMap_VInt32_VInt32{}",
		Source:      VMap_VInt32_VInt32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VInt32_VInt32{}",
		Target:      VMap_VInt32_VInt32(nil),
		SourceLabel: "map[VInt8]VInt8{}",
		Source:      map[VInt8]VInt8(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VInt32_VInt32{}",
		Target:      VMap_VInt32_VInt32(nil),
		SourceLabel: "map[byte]byte{}",
		Source:      map[byte]byte(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VMap_VInt32_VInt32{-123: -123}",
		Target: VMap_VInt32_VInt32{
			-123: -123,
		},
		SourceLabel: "VMap_VInt32_VInt32{-123: -123}",
		Source: VMap_VInt32_VInt32{
			-123: -123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VMap_VInt32_VInt32{-123: -123}",
		Target: VMap_VInt32_VInt32{
			-123: -123,
		},
		SourceLabel: "map[VInt8]VInt8{-123: -123}",
		Source: map[VInt8]VInt8{
			-123: -123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VMap_VInt32_VInt32{881673950: 940304882}",
		Target: VMap_VInt32_VInt32{
			881673950: 940304882,
		},
		SourceLabel: "VMap_VInt32_VInt32{881673950: 940304882}",
		Source: VMap_VInt32_VInt32{
			881673950: 940304882,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VMap_VInt32_VInt32{881673950: 940304882}",
		Target: VMap_VInt32_VInt32{
			881673950: 940304882,
		},
		SourceLabel: "VMap_VUint32_VUint32{881673950: 940304882}",
		Source: VMap_VUint32_VUint32{
			881673950: 940304882,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VMap_Int64_Int64{}",
		Target:      VMap_Int64_Int64(nil),
		SourceLabel: "VMap_Int64_Int64{}",
		Source:      VMap_Int64_Int64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_Int64_Int64{}",
		Target:      VMap_Int64_Int64(nil),
		SourceLabel: "map[VInt8]VInt8{}",
		Source:      map[VInt8]VInt8(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_Int64_Int64{}",
		Target:      VMap_Int64_Int64(nil),
		SourceLabel: "map[VByte]VByte{}",
		Source:      map[VByte]VByte(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VMap_Int64_Int64{-123: -123}",
		Target: VMap_Int64_Int64{
			-123: -123,
		},
		SourceLabel: "VMap_Int64_Int64{-123: -123}",
		Source: VMap_Int64_Int64{
			-123: -123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VMap_Int64_Int64{-123: -123}",
		Target: VMap_Int64_Int64{
			-123: -123,
		},
		SourceLabel: "map[VInt8]VInt8{-123: -123}",
		Source: map[VInt8]VInt8{
			-123: -123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VMap_Int64_Int64{545898974723811696: 1968987264141219699, 961545801918365140: -2833559715110951923, 984524936498028410: 1523896788520007169}",
		Target: VMap_Int64_Int64{
			545898974723811696: 1968987264141219699,
			961545801918365140: -2833559715110951923,
			984524936498028410: 1523896788520007169,
		},
		SourceLabel: "VMap_Int64_Int64{545898974723811696: 1968987264141219699, 961545801918365140: -2833559715110951923, 984524936498028410: 1523896788520007169}",
		Source: VMap_Int64_Int64{
			545898974723811696: 1968987264141219699,
			961545801918365140: -2833559715110951923,
			984524936498028410: 1523896788520007169,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_All{}",
		Target: VStructDepth1_All{
			F5: vdl.AnyType,
		},
		SourceLabel: "VStructDepth1_All{}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_All{}",
		Target: VStructDepth1_All{
			F5: vdl.AnyType,
		},
		SourceLabel: "VStructDepth1_VUint16{}",
		Source:      VStructDepth1_VUint16{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_All{}",
		Target: VStructDepth1_All{
			F5: vdl.AnyType,
		},
		SourceLabel: "VStructDepth1_Float64{}",
		Source:      VStructDepth1_Float64{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_All{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VStructDepth1_All{
			F0: int64(-123),
			F1: true,
			F2: true,
			F3: "abcdeΔΘΠΣΦ王普澤世界",
			F4: "abcdeΔΘΠΣΦ王普澤世界",
			F5: vdl.Int64Type,
			F6: 123,
			F7: 123,
			F8: VEnumAbcC,
			F9: VEnumBcdD,
			F11: VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			F12: verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
			F13: 123,
			F14: 123,
			F15: 123,
			F16: 123,
			F17: 123,
			F18: 123,
			F19: -123,
			F20: -123,
			F21: -123,
			F22: -123,
			F23: -123,
			F24: -123,
			F25: -123,
			F26: -123,
			F27: 1.5,
			F28: 1.5,
			F29: 1.5,
			F30: 1.5,
			F31: &VStructEmpty{},
			F32: &VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "VStructDepth1_All{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VStructDepth1_All{
			F0: int64(-123),
			F1: true,
			F2: true,
			F3: "abcdeΔΘΠΣΦ王普澤世界",
			F4: "abcdeΔΘΠΣΦ王普澤世界",
			F5: vdl.Int64Type,
			F6: 123,
			F7: 123,
			F8: VEnumAbcC,
			F9: VEnumBcdD,
			F11: VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			F12: verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
			F13: 123,
			F14: 123,
			F15: 123,
			F16: 123,
			F17: 123,
			F18: 123,
			F19: -123,
			F20: -123,
			F21: -123,
			F22: -123,
			F23: -123,
			F24: -123,
			F25: -123,
			F26: -123,
			F27: 1.5,
			F28: 1.5,
			F29: 1.5,
			F30: 1.5,
			F31: &VStructEmpty{},
			F32: &VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_All{F0: VUnionDepth2_VSet_VNamedError{F5: {}}, F2: true, F3: \"deΔΘΠΣΦ王普澤世\", F4: \"bcdeΔΘ\", F5: typeobject(set[VStructDepth2_VStructDepth1_Bool]), F6: 6, F7: 94, F9: C, F11: {Id: \"澤世界\", Msg: \"Δ\"}, F12: {Id: \"abcde\", Msg: \"eΔΘΠΣΦ王普澤\"}, F13: 27817, F14: 33365, F16: 4042980991, F17: 1551825347208256197, F18: 6984605754850064028, F19: -46, F20: -33, F22: -8955, F23: 1059256087, F24: 845352882, F25: -2819704168981791743, F27: 2.5691917e+09, F28: -3.6847075e+08, F29: -4.075954743487423e+08, F30: 9.713718049637722e+08, F31: {}, F32: {Msg: \"a\"}}",
		Target: VStructDepth1_All{
			F0: VUnionDepth2_VSet_VNamedError(VUnionDepth2_VSet_VNamedErrorF5{}),
			F2: true,
			F3: "deΔΘΠΣΦ王普澤世",
			F4: "bcdeΔΘ",
			F5: __VDLType_set_287,
			F6: 6,
			F7: 94,
			F9: VEnumBcdC,
			F11: VNamedError{
				Id:  "澤世界",
				Msg: "Δ",
			},
			F12: verror.FromWire(&vdl.WireError{
				Id:  "abcde",
				Msg: "eΔΘΠΣΦ王普澤",
			}),
			F13: 27817,
			F14: 33365,
			F16: 4042980991,
			F17: 1551825347208256197,
			F18: 6984605754850064028,
			F19: -46,
			F20: -33,
			F22: -8955,
			F23: 1059256087,
			F24: 845352882,
			F25: -2819704168981791743,
			F27: 2.5691917e+09,
			F28: -3.6847075e+08,
			F29: -4.075954743487423e+08,
			F30: 9.713718049637722e+08,
			F31: &VStructEmpty{},
			F32: &VNamedError{
				Msg: "a",
			},
		},
		SourceLabel: "VStructDepth1_All{F0: VUnionDepth2_VSet_VNamedError{F5: {}}, F2: true, F3: \"deΔΘΠΣΦ王普澤世\", F4: \"bcdeΔΘ\", F5: typeobject(set[VStructDepth2_VStructDepth1_Bool]), F6: 6, F7: 94, F9: C, F11: {Id: \"澤世界\", Msg: \"Δ\"}, F12: {Id: \"abcde\", Msg: \"eΔΘΠΣΦ王普澤\"}, F13: 27817, F14: 33365, F16: 4042980991, F17: 1551825347208256197, F18: 6984605754850064028, F19: -46, F20: -33, F22: -8955, F23: 1059256087, F24: 845352882, F25: -2819704168981791743, F27: 2.5691917e+09, F28: -3.6847075e+08, F29: -4.075954743487423e+08, F30: 9.713718049637722e+08, F31: {}, F32: {Msg: \"a\"}}",
		Source: VStructDepth1_All{
			F0: VUnionDepth2_VSet_VNamedError(VUnionDepth2_VSet_VNamedErrorF5{}),
			F2: true,
			F3: "deΔΘΠΣΦ王普澤世",
			F4: "bcdeΔΘ",
			F5: __VDLType_set_287,
			F6: 6,
			F7: 94,
			F9: VEnumBcdC,
			F11: VNamedError{
				Id:  "澤世界",
				Msg: "Δ",
			},
			F12: verror.FromWire(&vdl.WireError{
				Id:  "abcde",
				Msg: "eΔΘΠΣΦ王普澤",
			}),
			F13: 27817,
			F14: 33365,
			F16: 4042980991,
			F17: 1551825347208256197,
			F18: 6984605754850064028,
			F19: -46,
			F20: -33,
			F22: -8955,
			F23: 1059256087,
			F24: 845352882,
			F25: -2819704168981791743,
			F27: 2.5691917e+09,
			F28: -3.6847075e+08,
			F29: -4.075954743487423e+08,
			F30: 9.713718049637722e+08,
			F31: &VStructEmpty{},
			F32: &VNamedError{
				Msg: "a",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Any{}",
		Target:      VStructDepth1_Any{},
		SourceLabel: "VStructDepth1_Any{}",
		Source:      VStructDepth1_Any{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Any{}",
		Target:      VStructDepth1_Any{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Any{}",
		Target:      VStructDepth1_Any{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_Any{F0: int64(-123)}",
		Target: VStructDepth1_Any{
			F0: int64(-123),
		},
		SourceLabel: "VStructDepth1_Any{F0: int64(-123)}",
		Source: VStructDepth1_Any{
			F0: int64(-123),
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_Any{F0: int64(-123)}",
		Target: VStructDepth1_Any{
			F0: int64(-123),
		},
		SourceLabel: "VStructDepth1_All{F0: int64(-123)}",
		Source: VStructDepth1_All{
			F0: int64(-123),
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Any{F0: VArray3_Uint64{16116708124089625143, 10390629199052747716, 0}}",
		Target: VStructDepth1_Any{
			F0: VArray3_Uint64{
				16116708124089625143,
				10390629199052747716,
				0,
			},
		},
		SourceLabel: "VStructDepth1_Any{F0: VArray3_Uint64{16116708124089625143, 10390629199052747716, 0}}",
		Source: VStructDepth1_Any{
			F0: VArray3_Uint64{
				16116708124089625143,
				10390629199052747716,
				0,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Any{F0: VArray3_Uint64{16116708124089625143, 10390629199052747716, 0}}",
		Target: VStructDepth1_Any{
			F0: VArray3_Uint64{
				16116708124089625143,
				10390629199052747716,
				0,
			},
		},
		SourceLabel: "VStructDepth1_All{F0: VArray3_Uint64{16116708124089625143, 10390629199052747716, 0}}",
		Source: VStructDepth1_All{
			F0: VArray3_Uint64{
				16116708124089625143,
				10390629199052747716,
				0,
			},
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Bool{}",
		Target:      VStructDepth1_Bool{},
		SourceLabel: "VStructDepth1_Bool{}",
		Source:      VStructDepth1_Bool{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Bool{}",
		Target:      VStructDepth1_Bool{},
		SourceLabel: "VStructDepth1_All{}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Bool{}",
		Target:      VStructDepth1_Bool{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_Bool{F1: true}",
		Target: VStructDepth1_Bool{
			F1: true,
		},
		SourceLabel: "VStructDepth1_Bool{F1: true}",
		Source: VStructDepth1_Bool{
			F1: true,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_Bool{F1: true}",
		Target: VStructDepth1_Bool{
			F1: true,
		},
		SourceLabel: "VStructDepth1_All{F1: true}",
		Source: VStructDepth1_All{
			F1: true,
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VBool{}",
		Target:      VStructDepth1_VBool{},
		SourceLabel: "VStructDepth1_VBool{}",
		Source:      VStructDepth1_VBool{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VBool{}",
		Target:      VStructDepth1_VBool{},
		SourceLabel: "VStructDepth1_All{}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VBool{}",
		Target:      VStructDepth1_VBool{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_VBool{F2: true}",
		Target: VStructDepth1_VBool{
			F2: true,
		},
		SourceLabel: "VStructDepth1_VBool{F2: true}",
		Source: VStructDepth1_VBool{
			F2: true,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_VBool{F2: true}",
		Target: VStructDepth1_VBool{
			F2: true,
		},
		SourceLabel: "VStructDepth1_All{F2: true}",
		Source: VStructDepth1_All{
			F2: true,
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_String{}",
		Target:      VStructDepth1_String{},
		SourceLabel: "VStructDepth1_String{}",
		Source:      VStructDepth1_String{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_String{}",
		Target:      VStructDepth1_String{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_String{}",
		Target:      VStructDepth1_String{},
		SourceLabel: "VStructDepth1_All{}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_String{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VStructDepth1_String{
			F3: "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "VStructDepth1_String{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VStructDepth1_String{
			F3: "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_String{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VStructDepth1_String{
			F3: "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "VStructDepth1_All{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VStructDepth1_All{
			F3: "abcdeΔΘΠΣΦ王普澤世界",
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_String{F3: \"普澤世界\"}",
		Target: VStructDepth1_String{
			F3: "普澤世界",
		},
		SourceLabel: "VStructDepth1_String{F3: \"普澤世界\"}",
		Source: VStructDepth1_String{
			F3: "普澤世界",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_String{F3: \"普澤世界\"}",
		Target: VStructDepth1_String{
			F3: "普澤世界",
		},
		SourceLabel: "VStructDepth1_All{F3: \"普澤世界\"}",
		Source: VStructDepth1_All{
			F3: "普澤世界",
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VString{}",
		Target:      VStructDepth1_VString{},
		SourceLabel: "VStructDepth1_VString{}",
		Source:      VStructDepth1_VString{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VString{}",
		Target:      VStructDepth1_VString{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VString{}",
		Target:      VStructDepth1_VString{},
		SourceLabel: "VStructDepth1_All{}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_VString{F4: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VStructDepth1_VString{
			F4: "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "VStructDepth1_VString{F4: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VStructDepth1_VString{
			F4: "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_VString{F4: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VStructDepth1_VString{
			F4: "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "VStructDepth1_All{F4: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VStructDepth1_All{
			F4: "abcdeΔΘΠΣΦ王普澤世界",
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VString{F4: \"bcdeΔΘ\"}",
		Target: VStructDepth1_VString{
			F4: "bcdeΔΘ",
		},
		SourceLabel: "VStructDepth1_VString{F4: \"bcdeΔΘ\"}",
		Source: VStructDepth1_VString{
			F4: "bcdeΔΘ",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VString{F4: \"bcdeΔΘ\"}",
		Target: VStructDepth1_VString{
			F4: "bcdeΔΘ",
		},
		SourceLabel: "VStructDepth1_All{F4: \"bcdeΔΘ\"}",
		Source: VStructDepth1_All{
			F4: "bcdeΔΘ",
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_TypeObject{}",
		Target: VStructDepth1_TypeObject{
			F5: vdl.AnyType,
		},
		SourceLabel: "VStructDepth1_TypeObject{}",
		Source: VStructDepth1_TypeObject{
			F5: vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_TypeObject{}",
		Target: VStructDepth1_TypeObject{
			F5: vdl.AnyType,
		},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_TypeObject{}",
		Target: VStructDepth1_TypeObject{
			F5: vdl.AnyType,
		},
		SourceLabel: "VStructDepth1_All{}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_TypeObject{F5: typeobject(int64)}",
		Target: VStructDepth1_TypeObject{
			F5: vdl.Int64Type,
		},
		SourceLabel: "VStructDepth1_TypeObject{F5: typeobject(int64)}",
		Source: VStructDepth1_TypeObject{
			F5: vdl.Int64Type,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_TypeObject{F5: typeobject(int64)}",
		Target: VStructDepth1_TypeObject{
			F5: vdl.Int64Type,
		},
		SourceLabel: "VStructDepth1_All{F5: typeobject(int64)}",
		Source: VStructDepth1_All{
			F5: vdl.Int64Type,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_TypeObject{F5: typeobject(VMap_VBool_VBool)}",
		Target: VStructDepth1_TypeObject{
			F5: __VDLType_map_70,
		},
		SourceLabel: "VStructDepth1_TypeObject{F5: typeobject(VMap_VBool_VBool)}",
		Source: VStructDepth1_TypeObject{
			F5: __VDLType_map_70,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_TypeObject{F5: typeobject(VMap_VBool_VBool)}",
		Target: VStructDepth1_TypeObject{
			F5: __VDLType_map_70,
		},
		SourceLabel: "VStructDepth1_All{F5: typeobject(VMap_VBool_VBool)}",
		Source: VStructDepth1_All{
			F5: __VDLType_map_70,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Byte{}",
		Target:      VStructDepth1_Byte{},
		SourceLabel: "VStructDepth1_Byte{}",
		Source:      VStructDepth1_Byte{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Byte{}",
		Target:      VStructDepth1_Byte{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Byte{}",
		Target:      VStructDepth1_Byte{},
		SourceLabel: "VStructDepth1_All{}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_Byte{F6: 123}",
		Target: VStructDepth1_Byte{
			F6: 123,
		},
		SourceLabel: "VStructDepth1_Byte{F6: 123}",
		Source: VStructDepth1_Byte{
			F6: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_Byte{F6: 123}",
		Target: VStructDepth1_Byte{
			F6: 123,
		},
		SourceLabel: "VStructDepth1_All{F6: 123}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
			F6: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Byte{F6: 28}",
		Target: VStructDepth1_Byte{
			F6: 28,
		},
		SourceLabel: "VStructDepth1_Byte{F6: 28}",
		Source: VStructDepth1_Byte{
			F6: 28,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Byte{F6: 28}",
		Target: VStructDepth1_Byte{
			F6: 28,
		},
		SourceLabel: "VStructDepth1_All{F6: 28}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
			F6: 28,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VByte{}",
		Target:      VStructDepth1_VByte{},
		SourceLabel: "VStructDepth1_VByte{}",
		Source:      VStructDepth1_VByte{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VByte{}",
		Target:      VStructDepth1_VByte{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VByte{}",
		Target:      VStructDepth1_VByte{},
		SourceLabel: "VStructDepth1_All{}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_VByte{F7: 123}",
		Target: VStructDepth1_VByte{
			F7: 123,
		},
		SourceLabel: "VStructDepth1_VByte{F7: 123}",
		Source: VStructDepth1_VByte{
			F7: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_VByte{F7: 123}",
		Target: VStructDepth1_VByte{
			F7: 123,
		},
		SourceLabel: "VStructDepth1_All{F7: 123}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
			F7: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VByte{F7: 72}",
		Target: VStructDepth1_VByte{
			F7: 72,
		},
		SourceLabel: "VStructDepth1_VByte{F7: 72}",
		Source: VStructDepth1_VByte{
			F7: 72,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VByte{F7: 72}",
		Target: VStructDepth1_VByte{
			F7: 72,
		},
		SourceLabel: "VStructDepth1_All{F7: 72}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
			F7: 72,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VEnumAbc{}",
		Target:      VStructDepth1_VEnumAbc{},
		SourceLabel: "VStructDepth1_VEnumAbc{}",
		Source:      VStructDepth1_VEnumAbc{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VEnumAbc{}",
		Target:      VStructDepth1_VEnumAbc{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VEnumAbc{}",
		Target:      VStructDepth1_VEnumAbc{},
		SourceLabel: "VStructDepth1_All{}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_VEnumAbc{F8: C}",
		Target: VStructDepth1_VEnumAbc{
			F8: VEnumAbcC,
		},
		SourceLabel: "VStructDepth1_VEnumAbc{F8: C}",
		Source: VStructDepth1_VEnumAbc{
			F8: VEnumAbcC,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_VEnumAbc{F8: C}",
		Target: VStructDepth1_VEnumAbc{
			F8: VEnumAbcC,
		},
		SourceLabel: "VStructDepth1_All{F8: C}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
			F8: VEnumAbcC,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VEnumBcd{}",
		Target:      VStructDepth1_VEnumBcd{},
		SourceLabel: "VStructDepth1_VEnumBcd{}",
		Source:      VStructDepth1_VEnumBcd{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VEnumBcd{}",
		Target:      VStructDepth1_VEnumBcd{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VEnumBcd{}",
		Target:      VStructDepth1_VEnumBcd{},
		SourceLabel: "?VStructDepth1_VEnumBcd{}",
		Source:      &VStructDepth1_VEnumBcd{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_VEnumBcd{F9: D}",
		Target: VStructDepth1_VEnumBcd{
			F9: VEnumBcdD,
		},
		SourceLabel: "VStructDepth1_VEnumBcd{F9: D}",
		Source: VStructDepth1_VEnumBcd{
			F9: VEnumBcdD,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_VEnumBcd{F9: D}",
		Target: VStructDepth1_VEnumBcd{
			F9: VEnumBcdD,
		},
		SourceLabel: "?VStructDepth1_VEnumBcd{F9: D}",
		Source: &VStructDepth1_VEnumBcd{
			F9: VEnumBcdD,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VStructEmpty{}",
		Target:      VStructDepth1_VStructEmpty{},
		SourceLabel: "VStructDepth1_VStructEmpty{}",
		Source:      VStructDepth1_VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VStructEmpty{}",
		Target:      VStructDepth1_VStructEmpty{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VStructEmpty{}",
		Target:      VStructDepth1_VStructEmpty{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VNamedError{}",
		Target:      VStructDepth1_VNamedError{},
		SourceLabel: "VStructDepth1_VNamedError{}",
		Source:      VStructDepth1_VNamedError{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VNamedError{}",
		Target:      VStructDepth1_VNamedError{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VNamedError{}",
		Target:      VStructDepth1_VNamedError{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_VNamedError{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VStructDepth1_VNamedError{
			F11: VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "VStructDepth1_VNamedError{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VStructDepth1_VNamedError{
			F11: VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_VNamedError{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VStructDepth1_VNamedError{
			F11: VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "VStructDepth1_All{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
			F11: VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VNamedError{F11: {Id: \"deΔΘΠ\"}}",
		Target: VStructDepth1_VNamedError{
			F11: VNamedError{
				Id: "deΔΘΠ",
			},
		},
		SourceLabel: "VStructDepth1_VNamedError{F11: {Id: \"deΔΘΠ\"}}",
		Source: VStructDepth1_VNamedError{
			F11: VNamedError{
				Id: "deΔΘΠ",
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VNamedError{F11: {Id: \"deΔΘΠ\"}}",
		Target: VStructDepth1_VNamedError{
			F11: VNamedError{
				Id: "deΔΘΠ",
			},
		},
		SourceLabel: "VStructDepth1_All{F11: {Id: \"deΔΘΠ\"}}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
			F11: VNamedError{
				Id: "deΔΘΠ",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Error{}",
		Target:      VStructDepth1_Error{},
		SourceLabel: "VStructDepth1_Error{}",
		Source:      VStructDepth1_Error{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Error{}",
		Target:      VStructDepth1_Error{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Error{}",
		Target:      VStructDepth1_Error{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_Error{F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VStructDepth1_Error{
			F12: verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
		SourceLabel: "VStructDepth1_Error{F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VStructDepth1_Error{
			F12: verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_Error{F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VStructDepth1_Error{
			F12: verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
		SourceLabel: "VStructDepth1_All{F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
			F12: verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Error{F12: {Msg: \"ΘΠΣΦ王普\"}}",
		Target: VStructDepth1_Error{
			F12: verror.FromWire(&vdl.WireError{
				Msg: "ΘΠΣΦ王普",
			}),
		},
		SourceLabel: "VStructDepth1_Error{F12: {Msg: \"ΘΠΣΦ王普\"}}",
		Source: VStructDepth1_Error{
			F12: verror.FromWire(&vdl.WireError{
				Msg: "ΘΠΣΦ王普",
			}),
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Error{F12: {Msg: \"ΘΠΣΦ王普\"}}",
		Target: VStructDepth1_Error{
			F12: verror.FromWire(&vdl.WireError{
				Msg: "ΘΠΣΦ王普",
			}),
		},
		SourceLabel: "VStructDepth1_All{F12: {Msg: \"ΘΠΣΦ王普\"}}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
			F12: verror.FromWire(&vdl.WireError{
				Msg: "ΘΠΣΦ王普",
			}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Uint16{}",
		Target:      VStructDepth1_Uint16{},
		SourceLabel: "VStructDepth1_Uint16{}",
		Source:      VStructDepth1_Uint16{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Uint16{}",
		Target:      VStructDepth1_Uint16{},
		SourceLabel: "VStructDepth1_All{}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Uint16{}",
		Target:      VStructDepth1_Uint16{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_Uint16{F13: 123}",
		Target: VStructDepth1_Uint16{
			F13: 123,
		},
		SourceLabel: "VStructDepth1_Uint16{F13: 123}",
		Source: VStructDepth1_Uint16{
			F13: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_Uint16{F13: 123}",
		Target: VStructDepth1_Uint16{
			F13: 123,
		},
		SourceLabel: "VStructDepth1_All{F13: 123}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F13: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Uint16{F13: 44049}",
		Target: VStructDepth1_Uint16{
			F13: 44049,
		},
		SourceLabel: "VStructDepth1_Uint16{F13: 44049}",
		Source: VStructDepth1_Uint16{
			F13: 44049,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Uint16{F13: 44049}",
		Target: VStructDepth1_Uint16{
			F13: 44049,
		},
		SourceLabel: "VStructDepth1_All{F13: 44049}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F13: 44049,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VUint16{}",
		Target:      VStructDepth1_VUint16{},
		SourceLabel: "VStructDepth1_VUint16{}",
		Source:      VStructDepth1_VUint16{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VUint16{}",
		Target:      VStructDepth1_VUint16{},
		SourceLabel: "?VStructDepth1_VUint16{}",
		Source:      &VStructDepth1_VUint16{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VUint16{}",
		Target:      VStructDepth1_VUint16{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_VUint16{F14: 123}",
		Target: VStructDepth1_VUint16{
			F14: 123,
		},
		SourceLabel: "VStructDepth1_VUint16{F14: 123}",
		Source: VStructDepth1_VUint16{
			F14: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_VUint16{F14: 123}",
		Target: VStructDepth1_VUint16{
			F14: 123,
		},
		SourceLabel: "VStructDepth1_All{F14: 123}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F14: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VUint16{F14: 51729}",
		Target: VStructDepth1_VUint16{
			F14: 51729,
		},
		SourceLabel: "VStructDepth1_VUint16{F14: 51729}",
		Source: VStructDepth1_VUint16{
			F14: 51729,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VUint16{F14: 51729}",
		Target: VStructDepth1_VUint16{
			F14: 51729,
		},
		SourceLabel: "VStructDepth1_All{F14: 51729}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F14: 51729,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Uint32{}",
		Target:      VStructDepth1_Uint32{},
		SourceLabel: "VStructDepth1_Uint32{}",
		Source:      VStructDepth1_Uint32{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Uint32{}",
		Target:      VStructDepth1_Uint32{},
		SourceLabel: "VStructDepth1_All{}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Uint32{}",
		Target:      VStructDepth1_Uint32{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_Uint32{F15: 123}",
		Target: VStructDepth1_Uint32{
			F15: 123,
		},
		SourceLabel: "VStructDepth1_Uint32{F15: 123}",
		Source: VStructDepth1_Uint32{
			F15: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_Uint32{F15: 123}",
		Target: VStructDepth1_Uint32{
			F15: 123,
		},
		SourceLabel: "VStructDepth1_All{F15: 123}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F15: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Uint32{F15: 2366152188}",
		Target: VStructDepth1_Uint32{
			F15: 2366152188,
		},
		SourceLabel: "VStructDepth1_Uint32{F15: 2366152188}",
		Source: VStructDepth1_Uint32{
			F15: 2366152188,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Uint32{F15: 2366152188}",
		Target: VStructDepth1_Uint32{
			F15: 2366152188,
		},
		SourceLabel: "VStructDepth1_All{F15: 2366152188}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F15: 2366152188,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VUint32{}",
		Target:      VStructDepth1_VUint32{},
		SourceLabel: "VStructDepth1_VUint32{}",
		Source:      VStructDepth1_VUint32{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VUint32{}",
		Target:      VStructDepth1_VUint32{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VUint32{}",
		Target:      VStructDepth1_VUint32{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_VUint32{F16: 123}",
		Target: VStructDepth1_VUint32{
			F16: 123,
		},
		SourceLabel: "VStructDepth1_VUint32{F16: 123}",
		Source: VStructDepth1_VUint32{
			F16: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_VUint32{F16: 123}",
		Target: VStructDepth1_VUint32{
			F16: 123,
		},
		SourceLabel: "VStructDepth1_All{F16: 123}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F16: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VUint32{F16: 3973228366}",
		Target: VStructDepth1_VUint32{
			F16: 3973228366,
		},
		SourceLabel: "VStructDepth1_VUint32{F16: 3973228366}",
		Source: VStructDepth1_VUint32{
			F16: 3973228366,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VUint32{F16: 3973228366}",
		Target: VStructDepth1_VUint32{
			F16: 3973228366,
		},
		SourceLabel: "VStructDepth1_All{F16: 3973228366}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F16: 3973228366,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Uint64{}",
		Target:      VStructDepth1_Uint64{},
		SourceLabel: "VStructDepth1_Uint64{}",
		Source:      VStructDepth1_Uint64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Uint64{}",
		Target:      VStructDepth1_Uint64{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Uint64{}",
		Target:      VStructDepth1_Uint64{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_Uint64{F17: 123}",
		Target: VStructDepth1_Uint64{
			F17: 123,
		},
		SourceLabel: "VStructDepth1_Uint64{F17: 123}",
		Source: VStructDepth1_Uint64{
			F17: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_Uint64{F17: 123}",
		Target: VStructDepth1_Uint64{
			F17: 123,
		},
		SourceLabel: "VStructDepth1_All{F17: 123}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F17: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Uint64{F17: 16342908453211825522}",
		Target: VStructDepth1_Uint64{
			F17: 16342908453211825522,
		},
		SourceLabel: "VStructDepth1_Uint64{F17: 16342908453211825522}",
		Source: VStructDepth1_Uint64{
			F17: 16342908453211825522,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Uint64{F17: 16342908453211825522}",
		Target: VStructDepth1_Uint64{
			F17: 16342908453211825522,
		},
		SourceLabel: "VStructDepth1_All{F17: 16342908453211825522}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F17: 16342908453211825522,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VUint64{}",
		Target:      VStructDepth1_VUint64{},
		SourceLabel: "VStructDepth1_VUint64{}",
		Source:      VStructDepth1_VUint64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VUint64{}",
		Target:      VStructDepth1_VUint64{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VUint64{}",
		Target:      VStructDepth1_VUint64{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_VUint64{F18: 123}",
		Target: VStructDepth1_VUint64{
			F18: 123,
		},
		SourceLabel: "VStructDepth1_VUint64{F18: 123}",
		Source: VStructDepth1_VUint64{
			F18: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_VUint64{F18: 123}",
		Target: VStructDepth1_VUint64{
			F18: 123,
		},
		SourceLabel: "VStructDepth1_All{F18: 123}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F18: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VUint64{F18: 1714876546347477903}",
		Target: VStructDepth1_VUint64{
			F18: 1714876546347477903,
		},
		SourceLabel: "VStructDepth1_VUint64{F18: 1714876546347477903}",
		Source: VStructDepth1_VUint64{
			F18: 1714876546347477903,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VUint64{F18: 1714876546347477903}",
		Target: VStructDepth1_VUint64{
			F18: 1714876546347477903,
		},
		SourceLabel: "VStructDepth1_All{F18: 1714876546347477903}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F18: 1714876546347477903,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Int8{}",
		Target:      VStructDepth1_Int8{},
		SourceLabel: "VStructDepth1_Int8{}",
		Source:      VStructDepth1_Int8{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Int8{}",
		Target:      VStructDepth1_Int8{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Int8{}",
		Target:      VStructDepth1_Int8{},
		SourceLabel: "VStructDepth1_All{}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_Int8{F19: -123}",
		Target: VStructDepth1_Int8{
			F19: -123,
		},
		SourceLabel: "VStructDepth1_Int8{F19: -123}",
		Source: VStructDepth1_Int8{
			F19: -123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_Int8{F19: -123}",
		Target: VStructDepth1_Int8{
			F19: -123,
		},
		SourceLabel: "VStructDepth1_All{F19: -123}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F19: -123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Int8{F19: -63}",
		Target: VStructDepth1_Int8{
			F19: -63,
		},
		SourceLabel: "VStructDepth1_Int8{F19: -63}",
		Source: VStructDepth1_Int8{
			F19: -63,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Int8{F19: -63}",
		Target: VStructDepth1_Int8{
			F19: -63,
		},
		SourceLabel: "VStructDepth1_All{F19: -63}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F19: -63,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VInt8{}",
		Target:      VStructDepth1_VInt8{},
		SourceLabel: "VStructDepth1_VInt8{}",
		Source:      VStructDepth1_VInt8{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VInt8{}",
		Target:      VStructDepth1_VInt8{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VInt8{}",
		Target:      VStructDepth1_VInt8{},
		SourceLabel: "VStructDepth1_All{}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_VInt8{F20: -123}",
		Target: VStructDepth1_VInt8{
			F20: -123,
		},
		SourceLabel: "VStructDepth1_VInt8{F20: -123}",
		Source: VStructDepth1_VInt8{
			F20: -123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_VInt8{F20: -123}",
		Target: VStructDepth1_VInt8{
			F20: -123,
		},
		SourceLabel: "VStructDepth1_All{F20: -123}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F20: -123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VInt8{F20: 11}",
		Target: VStructDepth1_VInt8{
			F20: 11,
		},
		SourceLabel: "VStructDepth1_VInt8{F20: 11}",
		Source: VStructDepth1_VInt8{
			F20: 11,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VInt8{F20: 11}",
		Target: VStructDepth1_VInt8{
			F20: 11,
		},
		SourceLabel: "VStructDepth1_All{F20: 11}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F20: 11,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Int16{}",
		Target:      VStructDepth1_Int16{},
		SourceLabel: "VStructDepth1_Int16{}",
		Source:      VStructDepth1_Int16{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Int16{}",
		Target:      VStructDepth1_Int16{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Int16{}",
		Target:      VStructDepth1_Int16{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_Int16{F21: -123}",
		Target: VStructDepth1_Int16{
			F21: -123,
		},
		SourceLabel: "VStructDepth1_Int16{F21: -123}",
		Source: VStructDepth1_Int16{
			F21: -123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_Int16{F21: -123}",
		Target: VStructDepth1_Int16{
			F21: -123,
		},
		SourceLabel: "VStructDepth1_All{F21: -123}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F21: -123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Int16{F21: 5768}",
		Target: VStructDepth1_Int16{
			F21: 5768,
		},
		SourceLabel: "VStructDepth1_Int16{F21: 5768}",
		Source: VStructDepth1_Int16{
			F21: 5768,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Int16{F21: 5768}",
		Target: VStructDepth1_Int16{
			F21: 5768,
		},
		SourceLabel: "VStructDepth1_All{F21: 5768}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F21: 5768,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VInt16{}",
		Target:      VStructDepth1_VInt16{},
		SourceLabel: "VStructDepth1_VInt16{}",
		Source:      VStructDepth1_VInt16{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VInt16{}",
		Target:      VStructDepth1_VInt16{},
		SourceLabel: "VStructDepth1_All{}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VInt16{}",
		Target:      VStructDepth1_VInt16{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_VInt16{F22: -123}",
		Target: VStructDepth1_VInt16{
			F22: -123,
		},
		SourceLabel: "VStructDepth1_VInt16{F22: -123}",
		Source: VStructDepth1_VInt16{
			F22: -123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_VInt16{F22: -123}",
		Target: VStructDepth1_VInt16{
			F22: -123,
		},
		SourceLabel: "VStructDepth1_All{F22: -123}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F22: -123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VInt16{F22: 11449}",
		Target: VStructDepth1_VInt16{
			F22: 11449,
		},
		SourceLabel: "VStructDepth1_VInt16{F22: 11449}",
		Source: VStructDepth1_VInt16{
			F22: 11449,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VInt16{F22: 11449}",
		Target: VStructDepth1_VInt16{
			F22: 11449,
		},
		SourceLabel: "VStructDepth1_All{F22: 11449}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F22: 11449,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Int32{}",
		Target:      VStructDepth1_Int32{},
		SourceLabel: "VStructDepth1_Int32{}",
		Source:      VStructDepth1_Int32{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Int32{}",
		Target:      VStructDepth1_Int32{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Int32{}",
		Target:      VStructDepth1_Int32{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_Int32{F23: -123}",
		Target: VStructDepth1_Int32{
			F23: -123,
		},
		SourceLabel: "VStructDepth1_Int32{F23: -123}",
		Source: VStructDepth1_Int32{
			F23: -123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_Int32{F23: -123}",
		Target: VStructDepth1_Int32{
			F23: -123,
		},
		SourceLabel: "VStructDepth1_All{F23: -123}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F23: -123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Int32{F23: -426360945}",
		Target: VStructDepth1_Int32{
			F23: -426360945,
		},
		SourceLabel: "VStructDepth1_Int32{F23: -426360945}",
		Source: VStructDepth1_Int32{
			F23: -426360945,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Int32{F23: -426360945}",
		Target: VStructDepth1_Int32{
			F23: -426360945,
		},
		SourceLabel: "VStructDepth1_All{F23: -426360945}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F23: -426360945,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VInt32{}",
		Target:      VStructDepth1_VInt32{},
		SourceLabel: "VStructDepth1_VInt32{}",
		Source:      VStructDepth1_VInt32{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VInt32{}",
		Target:      VStructDepth1_VInt32{},
		SourceLabel: "VStructDepth1_All{}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VInt32{}",
		Target:      VStructDepth1_VInt32{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_VInt32{F24: -123}",
		Target: VStructDepth1_VInt32{
			F24: -123,
		},
		SourceLabel: "VStructDepth1_VInt32{F24: -123}",
		Source: VStructDepth1_VInt32{
			F24: -123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_VInt32{F24: -123}",
		Target: VStructDepth1_VInt32{
			F24: -123,
		},
		SourceLabel: "VStructDepth1_All{F24: -123}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F24: -123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VInt32{F24: -365272045}",
		Target: VStructDepth1_VInt32{
			F24: -365272045,
		},
		SourceLabel: "VStructDepth1_VInt32{F24: -365272045}",
		Source: VStructDepth1_VInt32{
			F24: -365272045,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VInt32{F24: -365272045}",
		Target: VStructDepth1_VInt32{
			F24: -365272045,
		},
		SourceLabel: "VStructDepth1_All{F24: -365272045}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F24: -365272045,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Int64{}",
		Target:      VStructDepth1_Int64{},
		SourceLabel: "VStructDepth1_Int64{}",
		Source:      VStructDepth1_Int64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Int64{}",
		Target:      VStructDepth1_Int64{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Int64{}",
		Target:      VStructDepth1_Int64{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_Int64{F25: -123}",
		Target: VStructDepth1_Int64{
			F25: -123,
		},
		SourceLabel: "VStructDepth1_Int64{F25: -123}",
		Source: VStructDepth1_Int64{
			F25: -123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_Int64{F25: -123}",
		Target: VStructDepth1_Int64{
			F25: -123,
		},
		SourceLabel: "VStructDepth1_All{F25: -123}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F25: -123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Int64{F25: -326060541489624168}",
		Target: VStructDepth1_Int64{
			F25: -326060541489624168,
		},
		SourceLabel: "VStructDepth1_Int64{F25: -326060541489624168}",
		Source: VStructDepth1_Int64{
			F25: -326060541489624168,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Int64{F25: -326060541489624168}",
		Target: VStructDepth1_Int64{
			F25: -326060541489624168,
		},
		SourceLabel: "VStructDepth1_All{F25: -326060541489624168}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F25: -326060541489624168,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VInt64{}",
		Target:      VStructDepth1_VInt64{},
		SourceLabel: "VStructDepth1_VInt64{}",
		Source:      VStructDepth1_VInt64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VInt64{}",
		Target:      VStructDepth1_VInt64{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VInt64{}",
		Target:      VStructDepth1_VInt64{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_VInt64{F26: -123}",
		Target: VStructDepth1_VInt64{
			F26: -123,
		},
		SourceLabel: "VStructDepth1_VInt64{F26: -123}",
		Source: VStructDepth1_VInt64{
			F26: -123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_VInt64{F26: -123}",
		Target: VStructDepth1_VInt64{
			F26: -123,
		},
		SourceLabel: "VStructDepth1_All{F26: -123}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F26: -123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VInt64{F26: -3785654656365979938}",
		Target: VStructDepth1_VInt64{
			F26: -3785654656365979938,
		},
		SourceLabel: "VStructDepth1_VInt64{F26: -3785654656365979938}",
		Source: VStructDepth1_VInt64{
			F26: -3785654656365979938,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VInt64{F26: -3785654656365979938}",
		Target: VStructDepth1_VInt64{
			F26: -3785654656365979938,
		},
		SourceLabel: "VStructDepth1_All{F26: -3785654656365979938}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F26: -3785654656365979938,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Float32{}",
		Target:      VStructDepth1_Float32{},
		SourceLabel: "VStructDepth1_Float32{}",
		Source:      VStructDepth1_Float32{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Float32{}",
		Target:      VStructDepth1_Float32{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Float32{}",
		Target:      VStructDepth1_Float32{},
		SourceLabel: "VStructDepth1_All{}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_Float32{F27: 1.5}",
		Target: VStructDepth1_Float32{
			F27: 1.5,
		},
		SourceLabel: "VStructDepth1_Float32{F27: 1.5}",
		Source: VStructDepth1_Float32{
			F27: 1.5,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_Float32{F27: 1.5}",
		Target: VStructDepth1_Float32{
			F27: 1.5,
		},
		SourceLabel: "VStructDepth1_All{F27: 1.5}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F27: 1.5,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Float32{F27: -2.160014e+09}",
		Target: VStructDepth1_Float32{
			F27: -2.160014e+09,
		},
		SourceLabel: "VStructDepth1_Float32{F27: -2.160014e+09}",
		Source: VStructDepth1_Float32{
			F27: -2.160014e+09,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Float32{F27: -2.160014e+09}",
		Target: VStructDepth1_Float32{
			F27: -2.160014e+09,
		},
		SourceLabel: "VStructDepth1_All{F27: -2.160014e+09}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F27: -2.160014e+09,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VFloat32{}",
		Target:      VStructDepth1_VFloat32{},
		SourceLabel: "VStructDepth1_VFloat32{}",
		Source:      VStructDepth1_VFloat32{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VFloat32{}",
		Target:      VStructDepth1_VFloat32{},
		SourceLabel: "VStructDepth1_All{}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VFloat32{}",
		Target:      VStructDepth1_VFloat32{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_VFloat32{F28: 1.5}",
		Target: VStructDepth1_VFloat32{
			F28: 1.5,
		},
		SourceLabel: "VStructDepth1_VFloat32{F28: 1.5}",
		Source: VStructDepth1_VFloat32{
			F28: 1.5,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_VFloat32{F28: 1.5}",
		Target: VStructDepth1_VFloat32{
			F28: 1.5,
		},
		SourceLabel: "?VStructDepth1_VFloat32{F28: 1.5}",
		Source: &VStructDepth1_VFloat32{
			F28: 1.5,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VFloat32{F28: -4.5656662e+08}",
		Target: VStructDepth1_VFloat32{
			F28: -4.5656662e+08,
		},
		SourceLabel: "VStructDepth1_VFloat32{F28: -4.5656662e+08}",
		Source: VStructDepth1_VFloat32{
			F28: -4.5656662e+08,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VFloat32{F28: -4.5656662e+08}",
		Target: VStructDepth1_VFloat32{
			F28: -4.5656662e+08,
		},
		SourceLabel: "?VStructDepth1_VFloat32{F28: -4.5656662e+08}",
		Source: &VStructDepth1_VFloat32{
			F28: -4.5656662e+08,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Float64{}",
		Target:      VStructDepth1_Float64{},
		SourceLabel: "VStructDepth1_Float64{}",
		Source:      VStructDepth1_Float64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Float64{}",
		Target:      VStructDepth1_Float64{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_Float64{}",
		Target:      VStructDepth1_Float64{},
		SourceLabel: "VStructDepth1_All{}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_Float64{F29: 1.5}",
		Target: VStructDepth1_Float64{
			F29: 1.5,
		},
		SourceLabel: "VStructDepth1_Float64{F29: 1.5}",
		Source: VStructDepth1_Float64{
			F29: 1.5,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_Float64{F29: 1.5}",
		Target: VStructDepth1_Float64{
			F29: 1.5,
		},
		SourceLabel: "VStructDepth1_All{F29: 1.5}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F29: 1.5,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Float64{F29: 3.248322134236514e+08}",
		Target: VStructDepth1_Float64{
			F29: 3.248322134236514e+08,
		},
		SourceLabel: "VStructDepth1_Float64{F29: 3.248322134236514e+08}",
		Source: VStructDepth1_Float64{
			F29: 3.248322134236514e+08,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_Float64{F29: 3.248322134236514e+08}",
		Target: VStructDepth1_Float64{
			F29: 3.248322134236514e+08,
		},
		SourceLabel: "VStructDepth1_All{F29: 3.248322134236514e+08}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F29: 3.248322134236514e+08,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VFloat64{}",
		Target:      VStructDepth1_VFloat64{},
		SourceLabel: "VStructDepth1_VFloat64{}",
		Source:      VStructDepth1_VFloat64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VFloat64{}",
		Target:      VStructDepth1_VFloat64{},
		SourceLabel: "VStructDepth1_All{}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_VFloat64{}",
		Target:      VStructDepth1_VFloat64{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_VFloat64{F30: 1.5}",
		Target: VStructDepth1_VFloat64{
			F30: 1.5,
		},
		SourceLabel: "VStructDepth1_VFloat64{F30: 1.5}",
		Source: VStructDepth1_VFloat64{
			F30: 1.5,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_VFloat64{F30: 1.5}",
		Target: VStructDepth1_VFloat64{
			F30: 1.5,
		},
		SourceLabel: "VStructDepth1_All{F30: 1.5}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F30: 1.5,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VFloat64{F30: -1.3345929771222658e+09}",
		Target: VStructDepth1_VFloat64{
			F30: -1.3345929771222658e+09,
		},
		SourceLabel: "VStructDepth1_VFloat64{F30: -1.3345929771222658e+09}",
		Source: VStructDepth1_VFloat64{
			F30: -1.3345929771222658e+09,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_VFloat64{F30: -1.3345929771222658e+09}",
		Target: VStructDepth1_VFloat64{
			F30: -1.3345929771222658e+09,
		},
		SourceLabel: "VStructDepth1_All{F30: -1.3345929771222658e+09}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F30: -1.3345929771222658e+09,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_OptVStructEmpty{}",
		Target:      VStructDepth1_OptVStructEmpty{},
		SourceLabel: "VStructDepth1_OptVStructEmpty{}",
		Source:      VStructDepth1_OptVStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_OptVStructEmpty{}",
		Target:      VStructDepth1_OptVStructEmpty{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_OptVStructEmpty{}",
		Target:      VStructDepth1_OptVStructEmpty{},
		SourceLabel: "VStructDepth1_All{}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_OptVStructEmpty{F31: {}}",
		Target: VStructDepth1_OptVStructEmpty{
			F31: &VStructEmpty{},
		},
		SourceLabel: "VStructDepth1_OptVStructEmpty{F31: {}}",
		Source: VStructDepth1_OptVStructEmpty{
			F31: &VStructEmpty{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_OptVStructEmpty{F31: {}}",
		Target: VStructDepth1_OptVStructEmpty{
			F31: &VStructEmpty{},
		},
		SourceLabel: "VStructDepth1_All{F31: {}}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F31: &VStructEmpty{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth1_OptVNamedError{}",
		Target:      VStructDepth1_OptVNamedError{},
		SourceLabel: "VStructDepth1_OptVNamedError{}",
		Source:      VStructDepth1_OptVNamedError{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_OptVNamedError{}",
		Target:      VStructDepth1_OptVNamedError{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth1_OptVNamedError{}",
		Target:      VStructDepth1_OptVNamedError{},
		SourceLabel: "VStructDepth1_All{}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth1_OptVNamedError{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VStructDepth1_OptVNamedError{
			F32: &VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "VStructDepth1_OptVNamedError{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VStructDepth1_OptVNamedError{
			F32: &VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth1_OptVNamedError{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VStructDepth1_OptVNamedError{
			F32: &VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "VStructDepth1_All{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
			F32: &VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth1_OptVNamedError{F32: {Msg: \"Δ\"}}",
		Target: VStructDepth1_OptVNamedError{
			F32: &VNamedError{
				Msg: "Δ",
			},
		},
		SourceLabel: "VStructDepth1_OptVNamedError{F32: {Msg: \"Δ\"}}",
		Source: VStructDepth1_OptVNamedError{
			F32: &VNamedError{
				Msg: "Δ",
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth1_OptVNamedError{F32: {Msg: \"Δ\"}}",
		Target: VStructDepth1_OptVNamedError{
			F32: &VNamedError{
				Msg: "Δ",
			},
		},
		SourceLabel: "VStructDepth1_All{F32: {Msg: \"Δ\"}}",
		Source: VStructDepth1_All{
			F5: vdl.AnyType,
			F32: &VNamedError{
				Msg: "Δ",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_All{F0: nil}",
		Target:      VUnionDepth1_All(VUnionDepth1_AllF0{}),
		SourceLabel: "VUnionDepth1_All{F0: nil}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF0{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_All{F0: nil}",
		Target:      VUnionDepth1_All(VUnionDepth1_AllF0{}),
		SourceLabel: "VUnionDepth1_Any{F0: nil}",
		Source:      VUnionDepth1_Any(VUnionDepth1_AnyF0{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_All{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VUnionDepth1_All(VUnionDepth1_AllF32{&VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
		SourceLabel: "VUnionDepth1_All{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VUnionDepth1_All(VUnionDepth1_AllF32{&VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_All{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VUnionDepth1_All(VUnionDepth1_AllF32{&VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
		SourceLabel: "VUnionDepth1_OptVNamedError{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VUnionDepth1_OptVNamedError(VUnionDepth1_OptVNamedErrorF32{&VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_All{F9: C}",
		Target:      VUnionDepth1_All(VUnionDepth1_AllF9{VEnumBcdC}),
		SourceLabel: "VUnionDepth1_All{F9: C}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF9{VEnumBcdC}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_All{F9: C}",
		Target:      VUnionDepth1_All(VUnionDepth1_AllF9{VEnumBcdC}),
		SourceLabel: "VUnionDepth1_VEnumBcd{F9: C}",
		Source:      VUnionDepth1_VEnumBcd(VUnionDepth1_VEnumBcdF9{VEnumBcdC}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Any{F0: nil}",
		Target:      VUnionDepth1_Any(VUnionDepth1_AnyF0{}),
		SourceLabel: "VUnionDepth1_Any{F0: nil}",
		Source:      VUnionDepth1_Any(VUnionDepth1_AnyF0{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Any{F0: nil}",
		Target:      VUnionDepth1_Any(VUnionDepth1_AnyF0{}),
		SourceLabel: "VUnionDepth1_All{F0: nil}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF0{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Any{F0: int64(-123)}",
		Target:      VUnionDepth1_Any(VUnionDepth1_AnyF0{int64(-123)}),
		SourceLabel: "VUnionDepth1_Any{F0: int64(-123)}",
		Source:      VUnionDepth1_Any(VUnionDepth1_AnyF0{int64(-123)}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Any{F0: int64(-123)}",
		Target:      VUnionDepth1_Any(VUnionDepth1_AnyF0{int64(-123)}),
		SourceLabel: "VUnionDepth1_All{F0: int64(-123)}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF0{int64(-123)}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Any{F0: VList_Byte(\"\\xf2\")}",
		Target:      VUnionDepth1_Any(VUnionDepth1_AnyF0{VList_Byte("\xf2")}),
		SourceLabel: "VUnionDepth1_Any{F0: VList_Byte(\"\\xf2\")}",
		Source:      VUnionDepth1_Any(VUnionDepth1_AnyF0{VList_Byte("\xf2")}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Any{F0: VList_Byte(\"\\xf2\")}",
		Target:      VUnionDepth1_Any(VUnionDepth1_AnyF0{VList_Byte("\xf2")}),
		SourceLabel: "VUnionDepth1_All{F0: VList_Byte(\"\\xf2\")}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF0{VList_Byte("\xf2")}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Bool{F1: false}",
		Target:      VUnionDepth1_Bool(VUnionDepth1_BoolF1{}),
		SourceLabel: "VUnionDepth1_Bool{F1: false}",
		Source:      VUnionDepth1_Bool(VUnionDepth1_BoolF1{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Bool{F1: false}",
		Target:      VUnionDepth1_Bool(VUnionDepth1_BoolF1{}),
		SourceLabel: "VUnionDepth1_All{F1: false}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF1{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Bool{F1: true}",
		Target:      VUnionDepth1_Bool(VUnionDepth1_BoolF1{true}),
		SourceLabel: "VUnionDepth1_Bool{F1: true}",
		Source:      VUnionDepth1_Bool(VUnionDepth1_BoolF1{true}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Bool{F1: true}",
		Target:      VUnionDepth1_Bool(VUnionDepth1_BoolF1{true}),
		SourceLabel: "VUnionDepth1_All{F1: true}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF1{true}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VBool{F2: false}",
		Target:      VUnionDepth1_VBool(VUnionDepth1_VBoolF2{}),
		SourceLabel: "VUnionDepth1_VBool{F2: false}",
		Source:      VUnionDepth1_VBool(VUnionDepth1_VBoolF2{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VBool{F2: false}",
		Target:      VUnionDepth1_VBool(VUnionDepth1_VBoolF2{}),
		SourceLabel: "VUnionDepth1_All{F2: false}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF2{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VBool{F2: true}",
		Target:      VUnionDepth1_VBool(VUnionDepth1_VBoolF2{true}),
		SourceLabel: "VUnionDepth1_VBool{F2: true}",
		Source:      VUnionDepth1_VBool(VUnionDepth1_VBoolF2{true}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VBool{F2: true}",
		Target:      VUnionDepth1_VBool(VUnionDepth1_VBoolF2{true}),
		SourceLabel: "VUnionDepth1_All{F2: true}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF2{true}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_String{F3: \"\"}",
		Target:      VUnionDepth1_String(VUnionDepth1_StringF3{}),
		SourceLabel: "VUnionDepth1_String{F3: \"\"}",
		Source:      VUnionDepth1_String(VUnionDepth1_StringF3{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_String{F3: \"\"}",
		Target:      VUnionDepth1_String(VUnionDepth1_StringF3{}),
		SourceLabel: "VUnionDepth1_All{F3: \"\"}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF3{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_String{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target:      VUnionDepth1_String(VUnionDepth1_StringF3{"abcdeΔΘΠΣΦ王普澤世界"}),
		SourceLabel: "VUnionDepth1_String{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source:      VUnionDepth1_String(VUnionDepth1_StringF3{"abcdeΔΘΠΣΦ王普澤世界"}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_String{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target:      VUnionDepth1_String(VUnionDepth1_StringF3{"abcdeΔΘΠΣΦ王普澤世界"}),
		SourceLabel: "VUnionDepth1_All{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF3{"abcdeΔΘΠΣΦ王普澤世界"}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_String{F3: \"deΔΘΠ\"}",
		Target:      VUnionDepth1_String(VUnionDepth1_StringF3{"deΔΘΠ"}),
		SourceLabel: "VUnionDepth1_String{F3: \"deΔΘΠ\"}",
		Source:      VUnionDepth1_String(VUnionDepth1_StringF3{"deΔΘΠ"}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_String{F3: \"deΔΘΠ\"}",
		Target:      VUnionDepth1_String(VUnionDepth1_StringF3{"deΔΘΠ"}),
		SourceLabel: "VUnionDepth1_All{F3: \"deΔΘΠ\"}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF3{"deΔΘΠ"}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VString{F4: \"\"}",
		Target:      VUnionDepth1_VString(VUnionDepth1_VStringF4{}),
		SourceLabel: "VUnionDepth1_VString{F4: \"\"}",
		Source:      VUnionDepth1_VString(VUnionDepth1_VStringF4{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VString{F4: \"\"}",
		Target:      VUnionDepth1_VString(VUnionDepth1_VStringF4{}),
		SourceLabel: "VUnionDepth1_All{F4: \"\"}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF4{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VString{F4: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target:      VUnionDepth1_VString(VUnionDepth1_VStringF4{"abcdeΔΘΠΣΦ王普澤世界"}),
		SourceLabel: "VUnionDepth1_VString{F4: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source:      VUnionDepth1_VString(VUnionDepth1_VStringF4{"abcdeΔΘΠΣΦ王普澤世界"}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VString{F4: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target:      VUnionDepth1_VString(VUnionDepth1_VStringF4{"abcdeΔΘΠΣΦ王普澤世界"}),
		SourceLabel: "VUnionDepth1_All{F4: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF4{"abcdeΔΘΠΣΦ王普澤世界"}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VString{F4: \"d\"}",
		Target:      VUnionDepth1_VString(VUnionDepth1_VStringF4{"d"}),
		SourceLabel: "VUnionDepth1_VString{F4: \"d\"}",
		Source:      VUnionDepth1_VString(VUnionDepth1_VStringF4{"d"}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VString{F4: \"d\"}",
		Target:      VUnionDepth1_VString(VUnionDepth1_VStringF4{"d"}),
		SourceLabel: "VUnionDepth1_All{F4: \"d\"}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF4{"d"}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_TypeObject{F5: typeobject(any)}",
		Target:      VUnionDepth1_TypeObject(VUnionDepth1_TypeObjectF5{vdl.AnyType}),
		SourceLabel: "VUnionDepth1_TypeObject{F5: typeobject(any)}",
		Source:      VUnionDepth1_TypeObject(VUnionDepth1_TypeObjectF5{vdl.AnyType}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_TypeObject{F5: typeobject(any)}",
		Target:      VUnionDepth1_TypeObject(VUnionDepth1_TypeObjectF5{vdl.AnyType}),
		SourceLabel: "VUnionDepth1_All{F5: typeobject(any)}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF5{vdl.AnyType}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_TypeObject{F5: typeobject(int64)}",
		Target:      VUnionDepth1_TypeObject(VUnionDepth1_TypeObjectF5{vdl.Int64Type}),
		SourceLabel: "VUnionDepth1_TypeObject{F5: typeobject(int64)}",
		Source:      VUnionDepth1_TypeObject(VUnionDepth1_TypeObjectF5{vdl.Int64Type}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_TypeObject{F5: typeobject(int64)}",
		Target:      VUnionDepth1_TypeObject(VUnionDepth1_TypeObjectF5{vdl.Int64Type}),
		SourceLabel: "VUnionDepth1_All{F5: typeobject(int64)}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF5{vdl.Int64Type}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_TypeObject{F5: typeobject(VArray1_VList_Byte)}",
		Target:      VUnionDepth1_TypeObject(VUnionDepth1_TypeObjectF5{__VDLType_array_151}),
		SourceLabel: "VUnionDepth1_TypeObject{F5: typeobject(VArray1_VList_Byte)}",
		Source:      VUnionDepth1_TypeObject(VUnionDepth1_TypeObjectF5{__VDLType_array_151}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_TypeObject{F5: typeobject(VArray1_VList_Byte)}",
		Target:      VUnionDepth1_TypeObject(VUnionDepth1_TypeObjectF5{__VDLType_array_151}),
		SourceLabel: "VUnionDepth1_All{F5: typeobject(VArray1_VList_Byte)}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF5{__VDLType_array_151}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Byte{F6: 0}",
		Target:      VUnionDepth1_Byte(VUnionDepth1_ByteF6{}),
		SourceLabel: "VUnionDepth1_Byte{F6: 0}",
		Source:      VUnionDepth1_Byte(VUnionDepth1_ByteF6{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Byte{F6: 0}",
		Target:      VUnionDepth1_Byte(VUnionDepth1_ByteF6{}),
		SourceLabel: "VUnionDepth1_All{F6: 0}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF6{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Byte{F6: 123}",
		Target:      VUnionDepth1_Byte(VUnionDepth1_ByteF6{123}),
		SourceLabel: "VUnionDepth1_Byte{F6: 123}",
		Source:      VUnionDepth1_Byte(VUnionDepth1_ByteF6{123}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Byte{F6: 123}",
		Target:      VUnionDepth1_Byte(VUnionDepth1_ByteF6{123}),
		SourceLabel: "VUnionDepth1_All{F6: 123}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF6{123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Byte{F6: 148}",
		Target:      VUnionDepth1_Byte(VUnionDepth1_ByteF6{148}),
		SourceLabel: "VUnionDepth1_Byte{F6: 148}",
		Source:      VUnionDepth1_Byte(VUnionDepth1_ByteF6{148}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Byte{F6: 148}",
		Target:      VUnionDepth1_Byte(VUnionDepth1_ByteF6{148}),
		SourceLabel: "VUnionDepth1_All{F6: 148}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF6{148}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VByte{F7: 0}",
		Target:      VUnionDepth1_VByte(VUnionDepth1_VByteF7{}),
		SourceLabel: "VUnionDepth1_VByte{F7: 0}",
		Source:      VUnionDepth1_VByte(VUnionDepth1_VByteF7{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VByte{F7: 0}",
		Target:      VUnionDepth1_VByte(VUnionDepth1_VByteF7{}),
		SourceLabel: "VUnionDepth1_All{F7: 0}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF7{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VByte{F7: 123}",
		Target:      VUnionDepth1_VByte(VUnionDepth1_VByteF7{123}),
		SourceLabel: "VUnionDepth1_VByte{F7: 123}",
		Source:      VUnionDepth1_VByte(VUnionDepth1_VByteF7{123}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VByte{F7: 123}",
		Target:      VUnionDepth1_VByte(VUnionDepth1_VByteF7{123}),
		SourceLabel: "VUnionDepth1_All{F7: 123}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF7{123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VByte{F7: 162}",
		Target:      VUnionDepth1_VByte(VUnionDepth1_VByteF7{162}),
		SourceLabel: "VUnionDepth1_VByte{F7: 162}",
		Source:      VUnionDepth1_VByte(VUnionDepth1_VByteF7{162}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VByte{F7: 162}",
		Target:      VUnionDepth1_VByte(VUnionDepth1_VByteF7{162}),
		SourceLabel: "VUnionDepth1_All{F7: 162}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF7{162}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VEnumAbc{F8: A}",
		Target:      VUnionDepth1_VEnumAbc(VUnionDepth1_VEnumAbcF8{}),
		SourceLabel: "VUnionDepth1_VEnumAbc{F8: A}",
		Source:      VUnionDepth1_VEnumAbc(VUnionDepth1_VEnumAbcF8{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VEnumAbc{F8: A}",
		Target:      VUnionDepth1_VEnumAbc(VUnionDepth1_VEnumAbcF8{}),
		SourceLabel: "VUnionDepth1_All{F8: A}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF8{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VEnumAbc{F8: C}",
		Target:      VUnionDepth1_VEnumAbc(VUnionDepth1_VEnumAbcF8{VEnumAbcC}),
		SourceLabel: "VUnionDepth1_VEnumAbc{F8: C}",
		Source:      VUnionDepth1_VEnumAbc(VUnionDepth1_VEnumAbcF8{VEnumAbcC}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VEnumAbc{F8: C}",
		Target:      VUnionDepth1_VEnumAbc(VUnionDepth1_VEnumAbcF8{VEnumAbcC}),
		SourceLabel: "VUnionDepth1_All{F8: C}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF8{VEnumAbcC}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VEnumBcd{F9: B}",
		Target:      VUnionDepth1_VEnumBcd(VUnionDepth1_VEnumBcdF9{}),
		SourceLabel: "VUnionDepth1_VEnumBcd{F9: B}",
		Source:      VUnionDepth1_VEnumBcd(VUnionDepth1_VEnumBcdF9{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VEnumBcd{F9: B}",
		Target:      VUnionDepth1_VEnumBcd(VUnionDepth1_VEnumBcdF9{}),
		SourceLabel: "VUnionDepth1_All{F9: B}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF9{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VEnumBcd{F9: D}",
		Target:      VUnionDepth1_VEnumBcd(VUnionDepth1_VEnumBcdF9{VEnumBcdD}),
		SourceLabel: "VUnionDepth1_VEnumBcd{F9: D}",
		Source:      VUnionDepth1_VEnumBcd(VUnionDepth1_VEnumBcdF9{VEnumBcdD}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VEnumBcd{F9: D}",
		Target:      VUnionDepth1_VEnumBcd(VUnionDepth1_VEnumBcdF9{VEnumBcdD}),
		SourceLabel: "VUnionDepth1_All{F9: D}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF9{VEnumBcdD}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VStructEmpty{F10: {}}",
		Target:      VUnionDepth1_VStructEmpty(VUnionDepth1_VStructEmptyF10{}),
		SourceLabel: "VUnionDepth1_VStructEmpty{F10: {}}",
		Source:      VUnionDepth1_VStructEmpty(VUnionDepth1_VStructEmptyF10{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VStructEmpty{F10: {}}",
		Target:      VUnionDepth1_VStructEmpty(VUnionDepth1_VStructEmptyF10{}),
		SourceLabel: "VUnionDepth1_All{F10: {}}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF10{}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VNamedError{F11: {}}",
		Target:      VUnionDepth1_VNamedError(VUnionDepth1_VNamedErrorF11{}),
		SourceLabel: "VUnionDepth1_VNamedError{F11: {}}",
		Source:      VUnionDepth1_VNamedError(VUnionDepth1_VNamedErrorF11{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VNamedError{F11: {}}",
		Target:      VUnionDepth1_VNamedError(VUnionDepth1_VNamedErrorF11{}),
		SourceLabel: "VUnionDepth1_All{F11: {}}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF11{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VNamedError{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VUnionDepth1_VNamedError(VUnionDepth1_VNamedErrorF11{VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
		SourceLabel: "VUnionDepth1_VNamedError{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VUnionDepth1_VNamedError(VUnionDepth1_VNamedErrorF11{VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VNamedError{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VUnionDepth1_VNamedError(VUnionDepth1_VNamedErrorF11{VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
		SourceLabel: "VUnionDepth1_All{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VUnionDepth1_All(VUnionDepth1_AllF11{VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VNamedError{F11: {Id: \"Π\", Msg: \"ΔΘ\"}}",
		Target: VUnionDepth1_VNamedError(VUnionDepth1_VNamedErrorF11{VNamedError{
			Id:  "Π",
			Msg: "ΔΘ",
		}}),
		SourceLabel: "VUnionDepth1_VNamedError{F11: {Id: \"Π\", Msg: \"ΔΘ\"}}",
		Source: VUnionDepth1_VNamedError(VUnionDepth1_VNamedErrorF11{VNamedError{
			Id:  "Π",
			Msg: "ΔΘ",
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VNamedError{F11: {Id: \"Π\", Msg: \"ΔΘ\"}}",
		Target: VUnionDepth1_VNamedError(VUnionDepth1_VNamedErrorF11{VNamedError{
			Id:  "Π",
			Msg: "ΔΘ",
		}}),
		SourceLabel: "VUnionDepth1_All{F11: {Id: \"Π\", Msg: \"ΔΘ\"}}",
		Source: VUnionDepth1_All(VUnionDepth1_AllF11{VNamedError{
			Id:  "Π",
			Msg: "ΔΘ",
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Error{F12: nil}",
		Target:      VUnionDepth1_Error(VUnionDepth1_ErrorF12{}),
		SourceLabel: "VUnionDepth1_Error{F12: nil}",
		Source:      VUnionDepth1_Error(VUnionDepth1_ErrorF12{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Error{F12: nil}",
		Target:      VUnionDepth1_Error(VUnionDepth1_ErrorF12{}),
		SourceLabel: "VUnionDepth1_All{F12: nil}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF12{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Error{F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VUnionDepth1_Error(VUnionDepth1_ErrorF12{verror.FromWire(&vdl.WireError{
			Id:        "abcdeΔΘΠΣΦ王普澤世界",
			RetryCode: vdl.WireRetryCodeRetryBackoff,
			Msg:       "abcdeΔΘΠΣΦ王普澤世界",
		})}),
		SourceLabel: "VUnionDepth1_Error{F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VUnionDepth1_Error(VUnionDepth1_ErrorF12{verror.FromWire(&vdl.WireError{
			Id:        "abcdeΔΘΠΣΦ王普澤世界",
			RetryCode: vdl.WireRetryCodeRetryBackoff,
			Msg:       "abcdeΔΘΠΣΦ王普澤世界",
		})}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Error{F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VUnionDepth1_Error(VUnionDepth1_ErrorF12{verror.FromWire(&vdl.WireError{
			Id:        "abcdeΔΘΠΣΦ王普澤世界",
			RetryCode: vdl.WireRetryCodeRetryBackoff,
			Msg:       "abcdeΔΘΠΣΦ王普澤世界",
		})}),
		SourceLabel: "VUnionDepth1_All{F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VUnionDepth1_All(VUnionDepth1_AllF12{verror.FromWire(&vdl.WireError{
			Id:        "abcdeΔΘΠΣΦ王普澤世界",
			RetryCode: vdl.WireRetryCodeRetryBackoff,
			Msg:       "abcdeΔΘΠΣΦ王普澤世界",
		})}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Error{F12: {Id: \"ΘΠ\", Msg: \"澤世\"}}",
		Target: VUnionDepth1_Error(VUnionDepth1_ErrorF12{verror.FromWire(&vdl.WireError{
			Id:  "ΘΠ",
			Msg: "澤世",
		})}),
		SourceLabel: "VUnionDepth1_Error{F12: {Id: \"ΘΠ\", Msg: \"澤世\"}}",
		Source: VUnionDepth1_Error(VUnionDepth1_ErrorF12{verror.FromWire(&vdl.WireError{
			Id:  "ΘΠ",
			Msg: "澤世",
		})}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Error{F12: {Id: \"ΘΠ\", Msg: \"澤世\"}}",
		Target: VUnionDepth1_Error(VUnionDepth1_ErrorF12{verror.FromWire(&vdl.WireError{
			Id:  "ΘΠ",
			Msg: "澤世",
		})}),
		SourceLabel: "VUnionDepth1_All{F12: {Id: \"ΘΠ\", Msg: \"澤世\"}}",
		Source: VUnionDepth1_All(VUnionDepth1_AllF12{verror.FromWire(&vdl.WireError{
			Id:  "ΘΠ",
			Msg: "澤世",
		})}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Uint16{F13: 0}",
		Target:      VUnionDepth1_Uint16(VUnionDepth1_Uint16F13{}),
		SourceLabel: "VUnionDepth1_Uint16{F13: 0}",
		Source:      VUnionDepth1_Uint16(VUnionDepth1_Uint16F13{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Uint16{F13: 0}",
		Target:      VUnionDepth1_Uint16(VUnionDepth1_Uint16F13{}),
		SourceLabel: "VUnionDepth1_All{F13: 0}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF13{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Uint16{F13: 123}",
		Target:      VUnionDepth1_Uint16(VUnionDepth1_Uint16F13{123}),
		SourceLabel: "VUnionDepth1_Uint16{F13: 123}",
		Source:      VUnionDepth1_Uint16(VUnionDepth1_Uint16F13{123}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Uint16{F13: 123}",
		Target:      VUnionDepth1_Uint16(VUnionDepth1_Uint16F13{123}),
		SourceLabel: "VUnionDepth1_All{F13: 123}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF13{123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Uint16{F13: 38806}",
		Target:      VUnionDepth1_Uint16(VUnionDepth1_Uint16F13{38806}),
		SourceLabel: "VUnionDepth1_Uint16{F13: 38806}",
		Source:      VUnionDepth1_Uint16(VUnionDepth1_Uint16F13{38806}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Uint16{F13: 38806}",
		Target:      VUnionDepth1_Uint16(VUnionDepth1_Uint16F13{38806}),
		SourceLabel: "VUnionDepth1_All{F13: 38806}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF13{38806}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VUint16{F14: 0}",
		Target:      VUnionDepth1_VUint16(VUnionDepth1_VUint16F14{}),
		SourceLabel: "VUnionDepth1_VUint16{F14: 0}",
		Source:      VUnionDepth1_VUint16(VUnionDepth1_VUint16F14{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VUint16{F14: 0}",
		Target:      VUnionDepth1_VUint16(VUnionDepth1_VUint16F14{}),
		SourceLabel: "VUnionDepth1_All{F14: 0}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF14{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VUint16{F14: 123}",
		Target:      VUnionDepth1_VUint16(VUnionDepth1_VUint16F14{123}),
		SourceLabel: "VUnionDepth1_VUint16{F14: 123}",
		Source:      VUnionDepth1_VUint16(VUnionDepth1_VUint16F14{123}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VUint16{F14: 123}",
		Target:      VUnionDepth1_VUint16(VUnionDepth1_VUint16F14{123}),
		SourceLabel: "VUnionDepth1_All{F14: 123}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF14{123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VUint16{F14: 25922}",
		Target:      VUnionDepth1_VUint16(VUnionDepth1_VUint16F14{25922}),
		SourceLabel: "VUnionDepth1_VUint16{F14: 25922}",
		Source:      VUnionDepth1_VUint16(VUnionDepth1_VUint16F14{25922}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VUint16{F14: 25922}",
		Target:      VUnionDepth1_VUint16(VUnionDepth1_VUint16F14{25922}),
		SourceLabel: "VUnionDepth1_All{F14: 25922}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF14{25922}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Uint32{F15: 0}",
		Target:      VUnionDepth1_Uint32(VUnionDepth1_Uint32F15{}),
		SourceLabel: "VUnionDepth1_Uint32{F15: 0}",
		Source:      VUnionDepth1_Uint32(VUnionDepth1_Uint32F15{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Uint32{F15: 0}",
		Target:      VUnionDepth1_Uint32(VUnionDepth1_Uint32F15{}),
		SourceLabel: "VUnionDepth1_All{F15: 0}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF15{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Uint32{F15: 123}",
		Target:      VUnionDepth1_Uint32(VUnionDepth1_Uint32F15{123}),
		SourceLabel: "VUnionDepth1_Uint32{F15: 123}",
		Source:      VUnionDepth1_Uint32(VUnionDepth1_Uint32F15{123}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Uint32{F15: 123}",
		Target:      VUnionDepth1_Uint32(VUnionDepth1_Uint32F15{123}),
		SourceLabel: "VUnionDepth1_All{F15: 123}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF15{123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Uint32{F15: 2190777622}",
		Target:      VUnionDepth1_Uint32(VUnionDepth1_Uint32F15{2190777622}),
		SourceLabel: "VUnionDepth1_Uint32{F15: 2190777622}",
		Source:      VUnionDepth1_Uint32(VUnionDepth1_Uint32F15{2190777622}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Uint32{F15: 2190777622}",
		Target:      VUnionDepth1_Uint32(VUnionDepth1_Uint32F15{2190777622}),
		SourceLabel: "VUnionDepth1_All{F15: 2190777622}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF15{2190777622}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VUint32{F16: 0}",
		Target:      VUnionDepth1_VUint32(VUnionDepth1_VUint32F16{}),
		SourceLabel: "VUnionDepth1_VUint32{F16: 0}",
		Source:      VUnionDepth1_VUint32(VUnionDepth1_VUint32F16{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VUint32{F16: 0}",
		Target:      VUnionDepth1_VUint32(VUnionDepth1_VUint32F16{}),
		SourceLabel: "VUnionDepth1_All{F16: 0}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF16{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VUint32{F16: 123}",
		Target:      VUnionDepth1_VUint32(VUnionDepth1_VUint32F16{123}),
		SourceLabel: "VUnionDepth1_VUint32{F16: 123}",
		Source:      VUnionDepth1_VUint32(VUnionDepth1_VUint32F16{123}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VUint32{F16: 123}",
		Target:      VUnionDepth1_VUint32(VUnionDepth1_VUint32F16{123}),
		SourceLabel: "VUnionDepth1_All{F16: 123}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF16{123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VUint32{F16: 2146335826}",
		Target:      VUnionDepth1_VUint32(VUnionDepth1_VUint32F16{2146335826}),
		SourceLabel: "VUnionDepth1_VUint32{F16: 2146335826}",
		Source:      VUnionDepth1_VUint32(VUnionDepth1_VUint32F16{2146335826}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VUint32{F16: 2146335826}",
		Target:      VUnionDepth1_VUint32(VUnionDepth1_VUint32F16{2146335826}),
		SourceLabel: "VUnionDepth1_All{F16: 2146335826}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF16{2146335826}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Uint64{F17: 0}",
		Target:      VUnionDepth1_Uint64(VUnionDepth1_Uint64F17{}),
		SourceLabel: "VUnionDepth1_Uint64{F17: 0}",
		Source:      VUnionDepth1_Uint64(VUnionDepth1_Uint64F17{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Uint64{F17: 0}",
		Target:      VUnionDepth1_Uint64(VUnionDepth1_Uint64F17{}),
		SourceLabel: "VUnionDepth1_All{F17: 0}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF17{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Uint64{F17: 123}",
		Target:      VUnionDepth1_Uint64(VUnionDepth1_Uint64F17{123}),
		SourceLabel: "VUnionDepth1_Uint64{F17: 123}",
		Source:      VUnionDepth1_Uint64(VUnionDepth1_Uint64F17{123}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Uint64{F17: 123}",
		Target:      VUnionDepth1_Uint64(VUnionDepth1_Uint64F17{123}),
		SourceLabel: "VUnionDepth1_All{F17: 123}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF17{123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Uint64{F17: 8564503396676571567}",
		Target:      VUnionDepth1_Uint64(VUnionDepth1_Uint64F17{8564503396676571567}),
		SourceLabel: "VUnionDepth1_Uint64{F17: 8564503396676571567}",
		Source:      VUnionDepth1_Uint64(VUnionDepth1_Uint64F17{8564503396676571567}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Uint64{F17: 8564503396676571567}",
		Target:      VUnionDepth1_Uint64(VUnionDepth1_Uint64F17{8564503396676571567}),
		SourceLabel: "VUnionDepth1_All{F17: 8564503396676571567}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF17{8564503396676571567}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VUint64{F18: 0}",
		Target:      VUnionDepth1_VUint64(VUnionDepth1_VUint64F18{}),
		SourceLabel: "VUnionDepth1_VUint64{F18: 0}",
		Source:      VUnionDepth1_VUint64(VUnionDepth1_VUint64F18{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VUint64{F18: 0}",
		Target:      VUnionDepth1_VUint64(VUnionDepth1_VUint64F18{}),
		SourceLabel: "VUnionDepth1_All{F18: 0}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF18{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VUint64{F18: 123}",
		Target:      VUnionDepth1_VUint64(VUnionDepth1_VUint64F18{123}),
		SourceLabel: "VUnionDepth1_VUint64{F18: 123}",
		Source:      VUnionDepth1_VUint64(VUnionDepth1_VUint64F18{123}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VUint64{F18: 123}",
		Target:      VUnionDepth1_VUint64(VUnionDepth1_VUint64F18{123}),
		SourceLabel: "VUnionDepth1_All{F18: 123}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF18{123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VUint64{F18: 13950474839629965026}",
		Target:      VUnionDepth1_VUint64(VUnionDepth1_VUint64F18{13950474839629965026}),
		SourceLabel: "VUnionDepth1_VUint64{F18: 13950474839629965026}",
		Source:      VUnionDepth1_VUint64(VUnionDepth1_VUint64F18{13950474839629965026}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VUint64{F18: 13950474839629965026}",
		Target:      VUnionDepth1_VUint64(VUnionDepth1_VUint64F18{13950474839629965026}),
		SourceLabel: "VUnionDepth1_All{F18: 13950474839629965026}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF18{13950474839629965026}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Int8{F19: 0}",
		Target:      VUnionDepth1_Int8(VUnionDepth1_Int8F19{}),
		SourceLabel: "VUnionDepth1_Int8{F19: 0}",
		Source:      VUnionDepth1_Int8(VUnionDepth1_Int8F19{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Int8{F19: 0}",
		Target:      VUnionDepth1_Int8(VUnionDepth1_Int8F19{}),
		SourceLabel: "VUnionDepth1_All{F19: 0}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF19{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Int8{F19: -123}",
		Target:      VUnionDepth1_Int8(VUnionDepth1_Int8F19{-123}),
		SourceLabel: "VUnionDepth1_Int8{F19: -123}",
		Source:      VUnionDepth1_Int8(VUnionDepth1_Int8F19{-123}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Int8{F19: -123}",
		Target:      VUnionDepth1_Int8(VUnionDepth1_Int8F19{-123}),
		SourceLabel: "VUnionDepth1_All{F19: -123}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF19{-123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Int8{F19: -28}",
		Target:      VUnionDepth1_Int8(VUnionDepth1_Int8F19{-28}),
		SourceLabel: "VUnionDepth1_Int8{F19: -28}",
		Source:      VUnionDepth1_Int8(VUnionDepth1_Int8F19{-28}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Int8{F19: -28}",
		Target:      VUnionDepth1_Int8(VUnionDepth1_Int8F19{-28}),
		SourceLabel: "VUnionDepth1_All{F19: -28}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF19{-28}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VInt8{F20: 0}",
		Target:      VUnionDepth1_VInt8(VUnionDepth1_VInt8F20{}),
		SourceLabel: "VUnionDepth1_VInt8{F20: 0}",
		Source:      VUnionDepth1_VInt8(VUnionDepth1_VInt8F20{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VInt8{F20: 0}",
		Target:      VUnionDepth1_VInt8(VUnionDepth1_VInt8F20{}),
		SourceLabel: "VUnionDepth1_All{F20: 0}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF20{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VInt8{F20: -123}",
		Target:      VUnionDepth1_VInt8(VUnionDepth1_VInt8F20{-123}),
		SourceLabel: "VUnionDepth1_VInt8{F20: -123}",
		Source:      VUnionDepth1_VInt8(VUnionDepth1_VInt8F20{-123}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VInt8{F20: -123}",
		Target:      VUnionDepth1_VInt8(VUnionDepth1_VInt8F20{-123}),
		SourceLabel: "VUnionDepth1_All{F20: -123}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF20{-123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VInt8{F20: 41}",
		Target:      VUnionDepth1_VInt8(VUnionDepth1_VInt8F20{41}),
		SourceLabel: "VUnionDepth1_VInt8{F20: 41}",
		Source:      VUnionDepth1_VInt8(VUnionDepth1_VInt8F20{41}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VInt8{F20: 41}",
		Target:      VUnionDepth1_VInt8(VUnionDepth1_VInt8F20{41}),
		SourceLabel: "VUnionDepth1_All{F20: 41}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF20{41}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Int16{F21: 0}",
		Target:      VUnionDepth1_Int16(VUnionDepth1_Int16F21{}),
		SourceLabel: "VUnionDepth1_Int16{F21: 0}",
		Source:      VUnionDepth1_Int16(VUnionDepth1_Int16F21{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Int16{F21: 0}",
		Target:      VUnionDepth1_Int16(VUnionDepth1_Int16F21{}),
		SourceLabel: "VUnionDepth1_All{F21: 0}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF21{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Int16{F21: -123}",
		Target:      VUnionDepth1_Int16(VUnionDepth1_Int16F21{-123}),
		SourceLabel: "VUnionDepth1_Int16{F21: -123}",
		Source:      VUnionDepth1_Int16(VUnionDepth1_Int16F21{-123}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Int16{F21: -123}",
		Target:      VUnionDepth1_Int16(VUnionDepth1_Int16F21{-123}),
		SourceLabel: "VUnionDepth1_All{F21: -123}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF21{-123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Int16{F21: -1424}",
		Target:      VUnionDepth1_Int16(VUnionDepth1_Int16F21{-1424}),
		SourceLabel: "VUnionDepth1_Int16{F21: -1424}",
		Source:      VUnionDepth1_Int16(VUnionDepth1_Int16F21{-1424}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Int16{F21: -1424}",
		Target:      VUnionDepth1_Int16(VUnionDepth1_Int16F21{-1424}),
		SourceLabel: "VUnionDepth1_All{F21: -1424}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF21{-1424}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VInt16{F22: 0}",
		Target:      VUnionDepth1_VInt16(VUnionDepth1_VInt16F22{}),
		SourceLabel: "VUnionDepth1_VInt16{F22: 0}",
		Source:      VUnionDepth1_VInt16(VUnionDepth1_VInt16F22{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VInt16{F22: 0}",
		Target:      VUnionDepth1_VInt16(VUnionDepth1_VInt16F22{}),
		SourceLabel: "VUnionDepth1_All{F22: 0}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF22{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VInt16{F22: -123}",
		Target:      VUnionDepth1_VInt16(VUnionDepth1_VInt16F22{-123}),
		SourceLabel: "VUnionDepth1_VInt16{F22: -123}",
		Source:      VUnionDepth1_VInt16(VUnionDepth1_VInt16F22{-123}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VInt16{F22: -123}",
		Target:      VUnionDepth1_VInt16(VUnionDepth1_VInt16F22{-123}),
		SourceLabel: "VUnionDepth1_All{F22: -123}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF22{-123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VInt16{F22: 1101}",
		Target:      VUnionDepth1_VInt16(VUnionDepth1_VInt16F22{1101}),
		SourceLabel: "VUnionDepth1_VInt16{F22: 1101}",
		Source:      VUnionDepth1_VInt16(VUnionDepth1_VInt16F22{1101}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VInt16{F22: 1101}",
		Target:      VUnionDepth1_VInt16(VUnionDepth1_VInt16F22{1101}),
		SourceLabel: "VUnionDepth1_All{F22: 1101}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF22{1101}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Int32{F23: 0}",
		Target:      VUnionDepth1_Int32(VUnionDepth1_Int32F23{}),
		SourceLabel: "VUnionDepth1_Int32{F23: 0}",
		Source:      VUnionDepth1_Int32(VUnionDepth1_Int32F23{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Int32{F23: 0}",
		Target:      VUnionDepth1_Int32(VUnionDepth1_Int32F23{}),
		SourceLabel: "VUnionDepth1_All{F23: 0}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF23{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Int32{F23: -123}",
		Target:      VUnionDepth1_Int32(VUnionDepth1_Int32F23{-123}),
		SourceLabel: "VUnionDepth1_Int32{F23: -123}",
		Source:      VUnionDepth1_Int32(VUnionDepth1_Int32F23{-123}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Int32{F23: -123}",
		Target:      VUnionDepth1_Int32(VUnionDepth1_Int32F23{-123}),
		SourceLabel: "VUnionDepth1_All{F23: -123}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF23{-123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Int32{F23: 597552188}",
		Target:      VUnionDepth1_Int32(VUnionDepth1_Int32F23{597552188}),
		SourceLabel: "VUnionDepth1_Int32{F23: 597552188}",
		Source:      VUnionDepth1_Int32(VUnionDepth1_Int32F23{597552188}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Int32{F23: 597552188}",
		Target:      VUnionDepth1_Int32(VUnionDepth1_Int32F23{597552188}),
		SourceLabel: "VUnionDepth1_All{F23: 597552188}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF23{597552188}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VInt32{F24: 0}",
		Target:      VUnionDepth1_VInt32(VUnionDepth1_VInt32F24{}),
		SourceLabel: "VUnionDepth1_VInt32{F24: 0}",
		Source:      VUnionDepth1_VInt32(VUnionDepth1_VInt32F24{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VInt32{F24: 0}",
		Target:      VUnionDepth1_VInt32(VUnionDepth1_VInt32F24{}),
		SourceLabel: "VUnionDepth1_All{F24: 0}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF24{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VInt32{F24: -123}",
		Target:      VUnionDepth1_VInt32(VUnionDepth1_VInt32F24{-123}),
		SourceLabel: "VUnionDepth1_VInt32{F24: -123}",
		Source:      VUnionDepth1_VInt32(VUnionDepth1_VInt32F24{-123}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VInt32{F24: -123}",
		Target:      VUnionDepth1_VInt32(VUnionDepth1_VInt32F24{-123}),
		SourceLabel: "VUnionDepth1_All{F24: -123}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF24{-123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VInt32{F24: 455537318}",
		Target:      VUnionDepth1_VInt32(VUnionDepth1_VInt32F24{455537318}),
		SourceLabel: "VUnionDepth1_VInt32{F24: 455537318}",
		Source:      VUnionDepth1_VInt32(VUnionDepth1_VInt32F24{455537318}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VInt32{F24: 455537318}",
		Target:      VUnionDepth1_VInt32(VUnionDepth1_VInt32F24{455537318}),
		SourceLabel: "VUnionDepth1_All{F24: 455537318}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF24{455537318}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Int64{F25: 0}",
		Target:      VUnionDepth1_Int64(VUnionDepth1_Int64F25{}),
		SourceLabel: "VUnionDepth1_Int64{F25: 0}",
		Source:      VUnionDepth1_Int64(VUnionDepth1_Int64F25{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Int64{F25: 0}",
		Target:      VUnionDepth1_Int64(VUnionDepth1_Int64F25{}),
		SourceLabel: "VUnionDepth1_All{F25: 0}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF25{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Int64{F25: -123}",
		Target:      VUnionDepth1_Int64(VUnionDepth1_Int64F25{-123}),
		SourceLabel: "VUnionDepth1_Int64{F25: -123}",
		Source:      VUnionDepth1_Int64(VUnionDepth1_Int64F25{-123}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Int64{F25: -123}",
		Target:      VUnionDepth1_Int64(VUnionDepth1_Int64F25{-123}),
		SourceLabel: "VUnionDepth1_All{F25: -123}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF25{-123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Int64{F25: 1372690032185737469}",
		Target:      VUnionDepth1_Int64(VUnionDepth1_Int64F25{1372690032185737469}),
		SourceLabel: "VUnionDepth1_Int64{F25: 1372690032185737469}",
		Source:      VUnionDepth1_Int64(VUnionDepth1_Int64F25{1372690032185737469}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Int64{F25: 1372690032185737469}",
		Target:      VUnionDepth1_Int64(VUnionDepth1_Int64F25{1372690032185737469}),
		SourceLabel: "VUnionDepth1_All{F25: 1372690032185737469}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF25{1372690032185737469}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VInt64{F26: 0}",
		Target:      VUnionDepth1_VInt64(VUnionDepth1_VInt64F26{}),
		SourceLabel: "VUnionDepth1_VInt64{F26: 0}",
		Source:      VUnionDepth1_VInt64(VUnionDepth1_VInt64F26{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VInt64{F26: 0}",
		Target:      VUnionDepth1_VInt64(VUnionDepth1_VInt64F26{}),
		SourceLabel: "VUnionDepth1_All{F26: 0}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF26{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VInt64{F26: -123}",
		Target:      VUnionDepth1_VInt64(VUnionDepth1_VInt64F26{-123}),
		SourceLabel: "VUnionDepth1_VInt64{F26: -123}",
		Source:      VUnionDepth1_VInt64(VUnionDepth1_VInt64F26{-123}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VInt64{F26: -123}",
		Target:      VUnionDepth1_VInt64(VUnionDepth1_VInt64F26{-123}),
		SourceLabel: "VUnionDepth1_All{F26: -123}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF26{-123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VInt64{F26: 631175252722087298}",
		Target:      VUnionDepth1_VInt64(VUnionDepth1_VInt64F26{631175252722087298}),
		SourceLabel: "VUnionDepth1_VInt64{F26: 631175252722087298}",
		Source:      VUnionDepth1_VInt64(VUnionDepth1_VInt64F26{631175252722087298}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VInt64{F26: 631175252722087298}",
		Target:      VUnionDepth1_VInt64(VUnionDepth1_VInt64F26{631175252722087298}),
		SourceLabel: "VUnionDepth1_All{F26: 631175252722087298}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF26{631175252722087298}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Float32{F27: 0}",
		Target:      VUnionDepth1_Float32(VUnionDepth1_Float32F27{}),
		SourceLabel: "VUnionDepth1_Float32{F27: 0}",
		Source:      VUnionDepth1_Float32(VUnionDepth1_Float32F27{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Float32{F27: 0}",
		Target:      VUnionDepth1_Float32(VUnionDepth1_Float32F27{}),
		SourceLabel: "VUnionDepth1_All{F27: 0}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF27{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Float32{F27: 1.5}",
		Target:      VUnionDepth1_Float32(VUnionDepth1_Float32F27{1.5}),
		SourceLabel: "VUnionDepth1_Float32{F27: 1.5}",
		Source:      VUnionDepth1_Float32(VUnionDepth1_Float32F27{1.5}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Float32{F27: 1.5}",
		Target:      VUnionDepth1_Float32(VUnionDepth1_Float32F27{1.5}),
		SourceLabel: "VUnionDepth1_All{F27: 1.5}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF27{1.5}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Float32{F27: 3.2036168e+09}",
		Target:      VUnionDepth1_Float32(VUnionDepth1_Float32F27{3.2036168e+09}),
		SourceLabel: "VUnionDepth1_Float32{F27: 3.2036168e+09}",
		Source:      VUnionDepth1_Float32(VUnionDepth1_Float32F27{3.2036168e+09}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Float32{F27: 3.2036168e+09}",
		Target:      VUnionDepth1_Float32(VUnionDepth1_Float32F27{3.2036168e+09}),
		SourceLabel: "VUnionDepth1_All{F27: 3.2036168e+09}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF27{3.2036168e+09}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VFloat32{F28: 0}",
		Target:      VUnionDepth1_VFloat32(VUnionDepth1_VFloat32F28{}),
		SourceLabel: "VUnionDepth1_VFloat32{F28: 0}",
		Source:      VUnionDepth1_VFloat32(VUnionDepth1_VFloat32F28{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VFloat32{F28: 0}",
		Target:      VUnionDepth1_VFloat32(VUnionDepth1_VFloat32F28{}),
		SourceLabel: "VUnionDepth1_All{F28: 0}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF28{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VFloat32{F28: 1.5}",
		Target:      VUnionDepth1_VFloat32(VUnionDepth1_VFloat32F28{1.5}),
		SourceLabel: "VUnionDepth1_VFloat32{F28: 1.5}",
		Source:      VUnionDepth1_VFloat32(VUnionDepth1_VFloat32F28{1.5}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VFloat32{F28: 1.5}",
		Target:      VUnionDepth1_VFloat32(VUnionDepth1_VFloat32F28{1.5}),
		SourceLabel: "VUnionDepth1_All{F28: 1.5}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF28{1.5}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VFloat32{F28: 1.6305185e+09}",
		Target:      VUnionDepth1_VFloat32(VUnionDepth1_VFloat32F28{1.6305185e+09}),
		SourceLabel: "VUnionDepth1_VFloat32{F28: 1.6305185e+09}",
		Source:      VUnionDepth1_VFloat32(VUnionDepth1_VFloat32F28{1.6305185e+09}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VFloat32{F28: 1.6305185e+09}",
		Target:      VUnionDepth1_VFloat32(VUnionDepth1_VFloat32F28{1.6305185e+09}),
		SourceLabel: "VUnionDepth1_All{F28: 1.6305185e+09}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF28{1.6305185e+09}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Float64{F29: 0}",
		Target:      VUnionDepth1_Float64(VUnionDepth1_Float64F29{}),
		SourceLabel: "VUnionDepth1_Float64{F29: 0}",
		Source:      VUnionDepth1_Float64(VUnionDepth1_Float64F29{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_Float64{F29: 0}",
		Target:      VUnionDepth1_Float64(VUnionDepth1_Float64F29{}),
		SourceLabel: "VUnionDepth1_All{F29: 0}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF29{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Float64{F29: 1.5}",
		Target:      VUnionDepth1_Float64(VUnionDepth1_Float64F29{1.5}),
		SourceLabel: "VUnionDepth1_Float64{F29: 1.5}",
		Source:      VUnionDepth1_Float64(VUnionDepth1_Float64F29{1.5}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_Float64{F29: 1.5}",
		Target:      VUnionDepth1_Float64(VUnionDepth1_Float64F29{1.5}),
		SourceLabel: "VUnionDepth1_All{F29: 1.5}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF29{1.5}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Float64{F29: 1.41257087459224e+09}",
		Target:      VUnionDepth1_Float64(VUnionDepth1_Float64F29{1.41257087459224e+09}),
		SourceLabel: "VUnionDepth1_Float64{F29: 1.41257087459224e+09}",
		Source:      VUnionDepth1_Float64(VUnionDepth1_Float64F29{1.41257087459224e+09}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_Float64{F29: 1.41257087459224e+09}",
		Target:      VUnionDepth1_Float64(VUnionDepth1_Float64F29{1.41257087459224e+09}),
		SourceLabel: "VUnionDepth1_All{F29: 1.41257087459224e+09}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF29{1.41257087459224e+09}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VFloat64{F30: 0}",
		Target:      VUnionDepth1_VFloat64(VUnionDepth1_VFloat64F30{}),
		SourceLabel: "VUnionDepth1_VFloat64{F30: 0}",
		Source:      VUnionDepth1_VFloat64(VUnionDepth1_VFloat64F30{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_VFloat64{F30: 0}",
		Target:      VUnionDepth1_VFloat64(VUnionDepth1_VFloat64F30{}),
		SourceLabel: "VUnionDepth1_All{F30: 0}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF30{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VFloat64{F30: 1.5}",
		Target:      VUnionDepth1_VFloat64(VUnionDepth1_VFloat64F30{1.5}),
		SourceLabel: "VUnionDepth1_VFloat64{F30: 1.5}",
		Source:      VUnionDepth1_VFloat64(VUnionDepth1_VFloat64F30{1.5}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_VFloat64{F30: 1.5}",
		Target:      VUnionDepth1_VFloat64(VUnionDepth1_VFloat64F30{1.5}),
		SourceLabel: "VUnionDepth1_All{F30: 1.5}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF30{1.5}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VFloat64{F30: 2.485054342054782e+09}",
		Target:      VUnionDepth1_VFloat64(VUnionDepth1_VFloat64F30{2.485054342054782e+09}),
		SourceLabel: "VUnionDepth1_VFloat64{F30: 2.485054342054782e+09}",
		Source:      VUnionDepth1_VFloat64(VUnionDepth1_VFloat64F30{2.485054342054782e+09}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_VFloat64{F30: 2.485054342054782e+09}",
		Target:      VUnionDepth1_VFloat64(VUnionDepth1_VFloat64F30{2.485054342054782e+09}),
		SourceLabel: "VUnionDepth1_All{F30: 2.485054342054782e+09}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF30{2.485054342054782e+09}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_OptVStructEmpty{F31: nil}",
		Target:      VUnionDepth1_OptVStructEmpty(VUnionDepth1_OptVStructEmptyF31{}),
		SourceLabel: "VUnionDepth1_OptVStructEmpty{F31: nil}",
		Source:      VUnionDepth1_OptVStructEmpty(VUnionDepth1_OptVStructEmptyF31{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_OptVStructEmpty{F31: nil}",
		Target:      VUnionDepth1_OptVStructEmpty(VUnionDepth1_OptVStructEmptyF31{}),
		SourceLabel: "VUnionDepth1_All{F31: nil}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF31{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_OptVStructEmpty{F31: {}}",
		Target:      VUnionDepth1_OptVStructEmpty(VUnionDepth1_OptVStructEmptyF31{&VStructEmpty{}}),
		SourceLabel: "VUnionDepth1_OptVStructEmpty{F31: {}}",
		Source:      VUnionDepth1_OptVStructEmpty(VUnionDepth1_OptVStructEmptyF31{&VStructEmpty{}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_OptVStructEmpty{F31: {}}",
		Target:      VUnionDepth1_OptVStructEmpty(VUnionDepth1_OptVStructEmptyF31{&VStructEmpty{}}),
		SourceLabel: "VUnionDepth1_All{F31: {}}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF31{&VStructEmpty{}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_OptVNamedError{F32: nil}",
		Target:      VUnionDepth1_OptVNamedError(VUnionDepth1_OptVNamedErrorF32{}),
		SourceLabel: "VUnionDepth1_OptVNamedError{F32: nil}",
		Source:      VUnionDepth1_OptVNamedError(VUnionDepth1_OptVNamedErrorF32{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth1_OptVNamedError{F32: nil}",
		Target:      VUnionDepth1_OptVNamedError(VUnionDepth1_OptVNamedErrorF32{}),
		SourceLabel: "VUnionDepth1_All{F32: nil}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF32{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth1_OptVNamedError{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VUnionDepth1_OptVNamedError(VUnionDepth1_OptVNamedErrorF32{&VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
		SourceLabel: "VUnionDepth1_OptVNamedError{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VUnionDepth1_OptVNamedError(VUnionDepth1_OptVNamedErrorF32{&VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth1_OptVNamedError{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VUnionDepth1_OptVNamedError(VUnionDepth1_OptVNamedErrorF32{&VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
		SourceLabel: "VUnionDepth1_All{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VUnionDepth1_All(VUnionDepth1_AllF32{&VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_OptVNamedError{F32: {Id: \"e\"}}",
		Target: VUnionDepth1_OptVNamedError(VUnionDepth1_OptVNamedErrorF32{&VNamedError{
			Id: "e",
		}}),
		SourceLabel: "VUnionDepth1_OptVNamedError{F32: {Id: \"e\"}}",
		Source: VUnionDepth1_OptVNamedError(VUnionDepth1_OptVNamedErrorF32{&VNamedError{
			Id: "e",
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth1_OptVNamedError{F32: {Id: \"e\"}}",
		Target: VUnionDepth1_OptVNamedError(VUnionDepth1_OptVNamedErrorF32{&VNamedError{
			Id: "e",
		}}),
		SourceLabel: "VUnionDepth1_All{F32: {Id: \"e\"}}",
		Source: VUnionDepth1_All(VUnionDepth1_AllF32{&VNamedError{
			Id: "e",
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "?VStructDepth1_VEnumBcd(nil)",
		Target:      (*VStructDepth1_VEnumBcd)(nil),
		SourceLabel: "?VStructDepth1_VEnumBcd(nil)",
		Source:      (*VStructDepth1_VEnumBcd)(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "?VStructDepth1_VEnumBcd(nil)",
		Target:      (*VStructDepth1_VEnumBcd)(nil),
		SourceLabel: "?VStructEmpty(nil)",
		Source:      (*VStructEmpty)(nil),
	},
	{
		Label:       "NilAny",
		TargetLabel: "?VStructDepth1_VEnumBcd(nil)",
		Target:      (*VStructDepth1_VEnumBcd)(nil),
		SourceLabel: "any(nil)",
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "?VStructDepth1_VEnumBcd{F9: D}",
		Target: &VStructDepth1_VEnumBcd{
			F9: VEnumBcdD,
		},
		SourceLabel: "?VStructDepth1_VEnumBcd{F9: D}",
		Source: &VStructDepth1_VEnumBcd{
			F9: VEnumBcdD,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "?VStructDepth1_VEnumBcd{F9: D}",
		Target: &VStructDepth1_VEnumBcd{
			F9: VEnumBcdD,
		},
		SourceLabel: "VStructDepth1_VEnumBcd{F9: D}",
		Source: VStructDepth1_VEnumBcd{
			F9: VEnumBcdD,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "?VStructDepth1_VUint16(nil)",
		Target:      (*VStructDepth1_VUint16)(nil),
		SourceLabel: "?VStructDepth1_VUint16(nil)",
		Source:      (*VStructDepth1_VUint16)(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "?VStructDepth1_VUint16(nil)",
		Target:      (*VStructDepth1_VUint16)(nil),
		SourceLabel: "?VStructEmpty(nil)",
		Source:      (*VStructEmpty)(nil),
	},
	{
		Label:       "NilAny",
		TargetLabel: "?VStructDepth1_VUint16(nil)",
		Target:      (*VStructDepth1_VUint16)(nil),
		SourceLabel: "any(nil)",
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "?VStructDepth1_VUint16{F14: 123}",
		Target: &VStructDepth1_VUint16{
			F14: 123,
		},
		SourceLabel: "?VStructDepth1_VUint16{F14: 123}",
		Source: &VStructDepth1_VUint16{
			F14: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "?VStructDepth1_VUint16{F14: 123}",
		Target: &VStructDepth1_VUint16{
			F14: 123,
		},
		SourceLabel: "VStructDepth1_VUint16{F14: 123}",
		Source: VStructDepth1_VUint16{
			F14: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "?VStructDepth1_VUint16{F14: 37716}",
		Target: &VStructDepth1_VUint16{
			F14: 37716,
		},
		SourceLabel: "?VStructDepth1_VUint16{F14: 37716}",
		Source: &VStructDepth1_VUint16{
			F14: 37716,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "?VStructDepth1_VUint16{F14: 37716}",
		Target: &VStructDepth1_VUint16{
			F14: 37716,
		},
		SourceLabel: "VStructDepth1_All{F14: 37716}",
		Source: VStructDepth1_All{
			F5:  vdl.AnyType,
			F14: 37716,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "?VStructDepth1_VFloat32(nil)",
		Target:      (*VStructDepth1_VFloat32)(nil),
		SourceLabel: "?VStructDepth1_VFloat32(nil)",
		Source:      (*VStructDepth1_VFloat32)(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "?VStructDepth1_VFloat32(nil)",
		Target:      (*VStructDepth1_VFloat32)(nil),
		SourceLabel: "?VStructEmpty(nil)",
		Source:      (*VStructEmpty)(nil),
	},
	{
		Label:       "NilAny",
		TargetLabel: "?VStructDepth1_VFloat32(nil)",
		Target:      (*VStructDepth1_VFloat32)(nil),
		SourceLabel: "any(nil)",
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "?VStructDepth1_VFloat32{F28: 1.5}",
		Target: &VStructDepth1_VFloat32{
			F28: 1.5,
		},
		SourceLabel: "?VStructDepth1_VFloat32{F28: 1.5}",
		Source: &VStructDepth1_VFloat32{
			F28: 1.5,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "?VStructDepth1_VFloat32{F28: 1.5}",
		Target: &VStructDepth1_VFloat32{
			F28: 1.5,
		},
		SourceLabel: "VStructDepth1_VFloat32{F28: 1.5}",
		Source: VStructDepth1_VFloat32{
			F28: 1.5,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "?VStructDepth1_VFloat32{F28: -6.5563034e+08}",
		Target: &VStructDepth1_VFloat32{
			F28: -6.5563034e+08,
		},
		SourceLabel: "?VStructDepth1_VFloat32{F28: -6.5563034e+08}",
		Source: &VStructDepth1_VFloat32{
			F28: -6.5563034e+08,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "?VStructDepth1_VFloat32{F28: -6.5563034e+08}",
		Target: &VStructDepth1_VFloat32{
			F28: -6.5563034e+08,
		},
		SourceLabel: "VStructDepth1_VFloat32{F28: -6.5563034e+08}",
		Source: VStructDepth1_VFloat32{
			F28: -6.5563034e+08,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray1_VArray3_Int64{}",
		Target:      VArray1_VArray3_Int64{},
		SourceLabel: "VArray1_VArray3_Int64{}",
		Source:      VArray1_VArray3_Int64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray1_VArray3_Int64{}",
		Target:      VArray1_VArray3_Int64{},
		SourceLabel: "VArray1_VList_Byte{\"\\x00\\x00\\x00\"}",
		Source: VArray1_VList_Byte{
			VList_Byte("\x00\x00\x00"),
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray1_VArray3_Int64{}",
		Target:      VArray1_VArray3_Int64{},
		SourceLabel: "VList_Any{VArray3_Int64{}}",
		Source: VList_Any{
			VArray3_Int64{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray1_VArray3_Int64{{-123, -123, -123}}",
		Target: VArray1_VArray3_Int64{
			{
				-123,
				-123,
				-123,
			},
		},
		SourceLabel: "VArray1_VArray3_Int64{{-123, -123, -123}}",
		Source: VArray1_VArray3_Int64{
			{
				-123,
				-123,
				-123,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray1_VArray3_Int64{{-123, -123, -123}}",
		Target: VArray1_VArray3_Int64{
			{
				-123,
				-123,
				-123,
			},
		},
		SourceLabel: "[]any{VArray3_Int64{-123, -123, -123}}",
		Source: []interface{}{
			VArray3_Int64{
				-123,
				-123,
				-123,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray1_VArray3_Int64{{3140532439919578637, 0, -1675111489895785450}}",
		Target: VArray1_VArray3_Int64{
			{
				3140532439919578637,
				0,
				-1675111489895785450,
			},
		},
		SourceLabel: "VArray1_VArray3_Int64{{3140532439919578637, 0, -1675111489895785450}}",
		Source: VArray1_VArray3_Int64{
			{
				3140532439919578637,
				0,
				-1675111489895785450,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray1_VArray3_Int64{{3140532439919578637, 0, -1675111489895785450}}",
		Target: VArray1_VArray3_Int64{
			{
				3140532439919578637,
				0,
				-1675111489895785450,
			},
		},
		SourceLabel: "VList_Any{VArray3_Int64{3140532439919578637, 0, -1675111489895785450}}",
		Source: VList_Any{
			VArray3_Int64{
				3140532439919578637,
				0,
				-1675111489895785450,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray1_VList_Byte{}",
		Target:      VArray1_VList_Byte{},
		SourceLabel: "VArray1_VList_Byte{}",
		Source:      VArray1_VList_Byte{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray1_VList_Byte{}",
		Target:      VArray1_VList_Byte{},
		SourceLabel: "[]any{VList_Byte(\"\")}",
		Source: []interface{}{
			VList_Byte(nil),
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray1_VList_Byte{}",
		Target:      VArray1_VList_Byte{},
		SourceLabel: "VList_Any{VList_Byte(\"\")}",
		Source: VList_Any{
			VList_Byte(nil),
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray1_VList_Byte{\"{\"}",
		Target: VArray1_VList_Byte{
			VList_Byte("{"),
		},
		SourceLabel: "VArray1_VList_Byte{\"{\"}",
		Source: VArray1_VList_Byte{
			VList_Byte("{"),
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray1_VList_Byte{\"{\"}",
		Target: VArray1_VList_Byte{
			VList_Byte("{"),
		},
		SourceLabel: "VList_Any{VList_Byte(\"{\")}",
		Source: VList_Any{
			VList_Byte("{"),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray1_VList_Byte{\"M\"}",
		Target: VArray1_VList_Byte{
			VList_Byte("M"),
		},
		SourceLabel: "VArray1_VList_Byte{\"M\"}",
		Source: VArray1_VList_Byte{
			VList_Byte("M"),
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray1_VList_Byte{\"M\"}",
		Target: VArray1_VList_Byte{
			VList_Byte("M"),
		},
		SourceLabel: "VList_Any{VList_Byte(\"M\")}",
		Source: VList_Any{
			VList_Byte("M"),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray1_Set_VEnumBcd{}",
		Target:      VArray1_Set_VEnumBcd{},
		SourceLabel: "VArray1_Set_VEnumBcd{}",
		Source:      VArray1_Set_VEnumBcd{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray1_Set_VEnumBcd{}",
		Target:      VArray1_Set_VEnumBcd{},
		SourceLabel: "VList_Any{set[VEnumBcd]{}}",
		Source: VList_Any{
			map[VEnumBcd]struct{}(nil),
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray1_Set_VEnumBcd{}",
		Target:      VArray1_Set_VEnumBcd{},
		SourceLabel: "[]any{set[VEnumBcd]{}}",
		Source: []interface{}{
			map[VEnumBcd]struct{}(nil),
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray1_Set_VEnumBcd{{D}}",
		Target: VArray1_Set_VEnumBcd{
			{
				VEnumBcdD: struct{}{},
			},
		},
		SourceLabel: "VArray1_Set_VEnumBcd{{D}}",
		Source: VArray1_Set_VEnumBcd{
			{
				VEnumBcdD: struct{}{},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray1_Set_VEnumBcd{{D}}",
		Target: VArray1_Set_VEnumBcd{
			{
				VEnumBcdD: struct{}{},
			},
		},
		SourceLabel: "VList_Any{set[VEnumBcd]{D}}",
		Source: VList_Any{
			map[VEnumBcd]struct{}{
				VEnumBcdD: struct{}{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray2_Map_Byte_Byte{}",
		Target:      VArray2_Map_Byte_Byte{},
		SourceLabel: "VArray2_Map_Byte_Byte{}",
		Source:      VArray2_Map_Byte_Byte{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray2_Map_Byte_Byte{}",
		Target:      VArray2_Map_Byte_Byte{},
		SourceLabel: "VList_VMap_Byte_Byte{{}, {}}",
		Source: VList_VMap_Byte_Byte{
			nil,
			nil,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray2_Map_Byte_Byte{}",
		Target:      VArray2_Map_Byte_Byte{},
		SourceLabel: "[]any{map[byte]byte{}, map[byte]byte{}}",
		Source: []interface{}{
			map[byte]byte(nil),
			map[byte]byte(nil),
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray2_Map_Byte_Byte{{123: 123}, {123: 123}}",
		Target: VArray2_Map_Byte_Byte{
			{
				123: 123,
			},
			{
				123: 123,
			},
		},
		SourceLabel: "VArray2_Map_Byte_Byte{{123: 123}, {123: 123}}",
		Source: VArray2_Map_Byte_Byte{
			{
				123: 123,
			},
			{
				123: 123,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray2_Map_Byte_Byte{{123: 123}, {123: 123}}",
		Target: VArray2_Map_Byte_Byte{
			{
				123: 123,
			},
			{
				123: 123,
			},
		},
		SourceLabel: "[]any{map[byte]byte{123: 123}, map[byte]byte{123: 123}}",
		Source: []interface{}{
			map[byte]byte{
				123: 123,
			},
			map[byte]byte{
				123: 123,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray2_Map_Byte_Byte{{210: 41}, {49: 101, 71: 29}}",
		Target: VArray2_Map_Byte_Byte{
			{
				210: 41,
			},
			{
				49: 101,
				71: 29,
			},
		},
		SourceLabel: "VArray2_Map_Byte_Byte{{210: 41}, {49: 101, 71: 29}}",
		Source: VArray2_Map_Byte_Byte{
			{
				210: 41,
			},
			{
				49: 101,
				71: 29,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray2_Map_Byte_Byte{{210: 41}, {49: 101, 71: 29}}",
		Target: VArray2_Map_Byte_Byte{
			{
				210: 41,
			},
			{
				49: 101,
				71: 29,
			},
		},
		SourceLabel: "[]any{map[byte]byte{210: 41}, map[byte]byte{49: 101, 71: 29}}",
		Source: []interface{}{
			map[byte]byte{
				210: 41,
			},
			map[byte]byte{
				49: 101,
				71: 29,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray2_VStructDepth1_All{}",
		Target: VArray2_VStructDepth1_All{
			{
				F5: vdl.AnyType,
			},
			{
				F5: vdl.AnyType,
			},
		},
		SourceLabel: "VArray2_VStructDepth1_All{}",
		Source: VArray2_VStructDepth1_All{
			{
				F5: vdl.AnyType,
			},
			{
				F5: vdl.AnyType,
			},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray2_VStructDepth1_All{}",
		Target: VArray2_VStructDepth1_All{
			{
				F5: vdl.AnyType,
			},
			{
				F5: vdl.AnyType,
			},
		},
		SourceLabel: "[]any{VStructDepth1_All{}, VStructDepth1_All{}}",
		Source: []interface{}{
			VStructDepth1_All{
				F5: vdl.AnyType,
			},
			VStructDepth1_All{
				F5: vdl.AnyType,
			},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray2_VStructDepth1_All{}",
		Target: VArray2_VStructDepth1_All{
			{
				F5: vdl.AnyType,
			},
			{
				F5: vdl.AnyType,
			},
		},
		SourceLabel: "[]?VStructEmpty{{}, {}}",
		Source: []*VStructEmpty{
			{},
			{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray2_VStructDepth1_All{{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VArray2_VStructDepth1_All{
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
		SourceLabel: "VArray2_VStructDepth1_All{{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VArray2_VStructDepth1_All{
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray2_VStructDepth1_All{{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VArray2_VStructDepth1_All{
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
		SourceLabel: "[]any{VStructDepth1_All{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, VStructDepth1_All{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: []interface{}{
			VStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
			VStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray2_VStructDepth1_All{{}, {F0: VSet_VEnumBcd{B, D}, F2: true, F3: \"bcdeΔΘΠΣ\", F4: \"ΔΘΠΣΦ王普\", F5: typeobject(string), F6: 74, F7: 106, F11: {Id: \"ΔΘ\"}, F12: {Id: \"普澤世\", RetryCode: RetryBackoff, Msg: \"deΔΘΠΣΦ\"}, F13: 29956, F15: 2806488877, F16: 2613752288, F17: 8595384034960235991, F18: 1361086061696848676, F20: 52, F21: 517, F22: 6499, F23: -781101161, F24: 245178006, F26: -1951100444087312537, F27: -1.1819049e+09, F28: 1.321459e+07, F29: 1.125436415986085e+09, F30: 7.794798141282212e+08, F31: {}, F32: {Msg: \"cdeΔΘΠΣΦ王普\"}}}",
		Target: VArray2_VStructDepth1_All{
			{
				F5: vdl.AnyType,
			},
			{
				F0: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
					VEnumBcdD: struct{}{},
				},
				F2: true,
				F3: "bcdeΔΘΠΣ",
				F4: "ΔΘΠΣΦ王普",
				F5: vdl.StringType,
				F6: 74,
				F7: 106,
				F11: VNamedError{
					Id: "ΔΘ",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "普澤世",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "deΔΘΠΣΦ",
				}),
				F13: 29956,
				F15: 2806488877,
				F16: 2613752288,
				F17: 8595384034960235991,
				F18: 1361086061696848676,
				F20: 52,
				F21: 517,
				F22: 6499,
				F23: -781101161,
				F24: 245178006,
				F26: -1951100444087312537,
				F27: -1.1819049e+09,
				F28: 1.321459e+07,
				F29: 1.125436415986085e+09,
				F30: 7.794798141282212e+08,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Msg: "cdeΔΘΠΣΦ王普",
				},
			},
		},
		SourceLabel: "VArray2_VStructDepth1_All{{}, {F0: VSet_VEnumBcd{B, D}, F2: true, F3: \"bcdeΔΘΠΣ\", F4: \"ΔΘΠΣΦ王普\", F5: typeobject(string), F6: 74, F7: 106, F11: {Id: \"ΔΘ\"}, F12: {Id: \"普澤世\", RetryCode: RetryBackoff, Msg: \"deΔΘΠΣΦ\"}, F13: 29956, F15: 2806488877, F16: 2613752288, F17: 8595384034960235991, F18: 1361086061696848676, F20: 52, F21: 517, F22: 6499, F23: -781101161, F24: 245178006, F26: -1951100444087312537, F27: -1.1819049e+09, F28: 1.321459e+07, F29: 1.125436415986085e+09, F30: 7.794798141282212e+08, F31: {}, F32: {Msg: \"cdeΔΘΠΣΦ王普\"}}}",
		Source: VArray2_VStructDepth1_All{
			{
				F5: vdl.AnyType,
			},
			{
				F0: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
					VEnumBcdD: struct{}{},
				},
				F2: true,
				F3: "bcdeΔΘΠΣ",
				F4: "ΔΘΠΣΦ王普",
				F5: vdl.StringType,
				F6: 74,
				F7: 106,
				F11: VNamedError{
					Id: "ΔΘ",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "普澤世",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "deΔΘΠΣΦ",
				}),
				F13: 29956,
				F15: 2806488877,
				F16: 2613752288,
				F17: 8595384034960235991,
				F18: 1361086061696848676,
				F20: 52,
				F21: 517,
				F22: 6499,
				F23: -781101161,
				F24: 245178006,
				F26: -1951100444087312537,
				F27: -1.1819049e+09,
				F28: 1.321459e+07,
				F29: 1.125436415986085e+09,
				F30: 7.794798141282212e+08,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Msg: "cdeΔΘΠΣΦ王普",
				},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray2_VStructDepth1_All{{}, {F0: VSet_VEnumBcd{B, D}, F2: true, F3: \"bcdeΔΘΠΣ\", F4: \"ΔΘΠΣΦ王普\", F5: typeobject(string), F6: 74, F7: 106, F11: {Id: \"ΔΘ\"}, F12: {Id: \"普澤世\", RetryCode: RetryBackoff, Msg: \"deΔΘΠΣΦ\"}, F13: 29956, F15: 2806488877, F16: 2613752288, F17: 8595384034960235991, F18: 1361086061696848676, F20: 52, F21: 517, F22: 6499, F23: -781101161, F24: 245178006, F26: -1951100444087312537, F27: -1.1819049e+09, F28: 1.321459e+07, F29: 1.125436415986085e+09, F30: 7.794798141282212e+08, F31: {}, F32: {Msg: \"cdeΔΘΠΣΦ王普\"}}}",
		Target: VArray2_VStructDepth1_All{
			{
				F5: vdl.AnyType,
			},
			{
				F0: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
					VEnumBcdD: struct{}{},
				},
				F2: true,
				F3: "bcdeΔΘΠΣ",
				F4: "ΔΘΠΣΦ王普",
				F5: vdl.StringType,
				F6: 74,
				F7: 106,
				F11: VNamedError{
					Id: "ΔΘ",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "普澤世",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "deΔΘΠΣΦ",
				}),
				F13: 29956,
				F15: 2806488877,
				F16: 2613752288,
				F17: 8595384034960235991,
				F18: 1361086061696848676,
				F20: 52,
				F21: 517,
				F22: 6499,
				F23: -781101161,
				F24: 245178006,
				F26: -1951100444087312537,
				F27: -1.1819049e+09,
				F28: 1.321459e+07,
				F29: 1.125436415986085e+09,
				F30: 7.794798141282212e+08,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Msg: "cdeΔΘΠΣΦ王普",
				},
			},
		},
		SourceLabel: "VList_Any{VStructDepth1_All{}, VStructDepth1_All{F0: VSet_VEnumBcd{B, D}, F2: true, F3: \"bcdeΔΘΠΣ\", F4: \"ΔΘΠΣΦ王普\", F5: typeobject(string), F6: 74, F7: 106, F11: {Id: \"ΔΘ\"}, F12: {Id: \"普澤世\", RetryCode: RetryBackoff, Msg: \"deΔΘΠΣΦ\"}, F13: 29956, F15: 2806488877, F16: 2613752288, F17: 8595384034960235991, F18: 1361086061696848676, F20: 52, F21: 517, F22: 6499, F23: -781101161, F24: 245178006, F26: -1951100444087312537, F27: -1.1819049e+09, F28: 1.321459e+07, F29: 1.125436415986085e+09, F30: 7.794798141282212e+08, F31: {}, F32: {Msg: \"cdeΔΘΠΣΦ王普\"}}}",
		Source: VList_Any{
			VStructDepth1_All{
				F5: vdl.AnyType,
			},
			VStructDepth1_All{
				F0: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
					VEnumBcdD: struct{}{},
				},
				F2: true,
				F3: "bcdeΔΘΠΣ",
				F4: "ΔΘΠΣΦ王普",
				F5: vdl.StringType,
				F6: 74,
				F7: 106,
				F11: VNamedError{
					Id: "ΔΘ",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "普澤世",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "deΔΘΠΣΦ",
				}),
				F13: 29956,
				F15: 2806488877,
				F16: 2613752288,
				F17: 8595384034960235991,
				F18: 1361086061696848676,
				F20: 52,
				F21: 517,
				F22: 6499,
				F23: -781101161,
				F24: 245178006,
				F26: -1951100444087312537,
				F27: -1.1819049e+09,
				F28: 1.321459e+07,
				F29: 1.125436415986085e+09,
				F30: 7.794798141282212e+08,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Msg: "cdeΔΘΠΣΦ王普",
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray3_VUnionDepth1_All{}",
		Target: VArray3_VUnionDepth1_All{
			VUnionDepth1_AllF0{},
			VUnionDepth1_AllF0{},
			VUnionDepth1_AllF0{},
		},
		SourceLabel: "VArray3_VUnionDepth1_All{}",
		Source: VArray3_VUnionDepth1_All{
			VUnionDepth1_AllF0{},
			VUnionDepth1_AllF0{},
			VUnionDepth1_AllF0{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray3_VUnionDepth1_All{}",
		Target: VArray3_VUnionDepth1_All{
			VUnionDepth1_AllF0{},
			VUnionDepth1_AllF0{},
			VUnionDepth1_AllF0{},
		},
		SourceLabel: "VArray3_Any{VUnionDepth1_All{F0: nil}, VUnionDepth1_All{F0: nil}, VUnionDepth1_All{F0: nil}}",
		Source: VArray3_Any{
			VUnionDepth1_All(VUnionDepth1_AllF0{}),
			VUnionDepth1_All(VUnionDepth1_AllF0{}),
			VUnionDepth1_All(VUnionDepth1_AllF0{}),
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray3_VUnionDepth1_All{}",
		Target: VArray3_VUnionDepth1_All{
			VUnionDepth1_AllF0{},
			VUnionDepth1_AllF0{},
			VUnionDepth1_AllF0{},
		},
		SourceLabel: "[]any{VUnionDepth1_All{F0: nil}, VUnionDepth1_All{F0: nil}, VUnionDepth1_All{F0: nil}}",
		Source: []interface{}{
			VUnionDepth1_All(VUnionDepth1_AllF0{}),
			VUnionDepth1_All(VUnionDepth1_AllF0{}),
			VUnionDepth1_All(VUnionDepth1_AllF0{}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray3_VUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VArray3_VUnionDepth1_All{
			VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
		SourceLabel: "VArray3_VUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VArray3_VUnionDepth1_All{
			VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray3_VUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VArray3_VUnionDepth1_All{
			VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
		SourceLabel: "[]VUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: []VUnionDepth1_All{
			VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray3_VUnionDepth1_All{{F31: {}}, {F0: nil}, {F12: {Id: \"abcdeΔΘΠΣΦ王普澤\", RetryCode: RetryBackoff, Msg: \"bcd\"}}}",
		Target: VArray3_VUnionDepth1_All{
			VUnionDepth1_AllF31{&VStructEmpty{}},
			VUnionDepth1_AllF0{},
			VUnionDepth1_AllF12{verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "bcd",
			})},
		},
		SourceLabel: "VArray3_VUnionDepth1_All{{F31: {}}, {F0: nil}, {F12: {Id: \"abcdeΔΘΠΣΦ王普澤\", RetryCode: RetryBackoff, Msg: \"bcd\"}}}",
		Source: VArray3_VUnionDepth1_All{
			VUnionDepth1_AllF31{&VStructEmpty{}},
			VUnionDepth1_AllF0{},
			VUnionDepth1_AllF12{verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "bcd",
			})},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray3_VUnionDepth1_All{{F31: {}}, {F0: nil}, {F12: {Id: \"abcdeΔΘΠΣΦ王普澤\", RetryCode: RetryBackoff, Msg: \"bcd\"}}}",
		Target: VArray3_VUnionDepth1_All{
			VUnionDepth1_AllF31{&VStructEmpty{}},
			VUnionDepth1_AllF0{},
			VUnionDepth1_AllF12{verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "bcd",
			})},
		},
		SourceLabel: "[]VUnionDepth1_All{{F31: {}}, {F0: nil}, {F12: {Id: \"abcdeΔΘΠΣΦ王普澤\", RetryCode: RetryBackoff, Msg: \"bcd\"}}}",
		Source: []VUnionDepth1_All{
			VUnionDepth1_AllF31{&VStructEmpty{}},
			VUnionDepth1_AllF0{},
			VUnionDepth1_AllF12{verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "bcd",
			})},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray3_OptVStructDepth1_VFloat32{}",
		Target:      VArray3_OptVStructDepth1_VFloat32{},
		SourceLabel: "VArray3_OptVStructDepth1_VFloat32{}",
		Source:      VArray3_OptVStructDepth1_VFloat32{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray3_OptVStructDepth1_VFloat32{}",
		Target:      VArray3_OptVStructDepth1_VFloat32{},
		SourceLabel: "VList_OptVStructEmpty{nil, nil, nil}",
		Source: VList_OptVStructEmpty{
			nil,
			nil,
			nil,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray3_OptVStructDepth1_VFloat32{}",
		Target:      VArray3_OptVStructDepth1_VFloat32{},
		SourceLabel: "VList_Any{nil, nil, nil}",
		Source: VList_Any{
			nil,
			nil,
			nil,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray3_OptVStructDepth1_VFloat32{{F28: 1.5}, {F28: 1.5}, {F28: 1.5}}",
		Target: VArray3_OptVStructDepth1_VFloat32{
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
		},
		SourceLabel: "VArray3_OptVStructDepth1_VFloat32{{F28: 1.5}, {F28: 1.5}, {F28: 1.5}}",
		Source: VArray3_OptVStructDepth1_VFloat32{
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray3_OptVStructDepth1_VFloat32{{F28: 1.5}, {F28: 1.5}, {F28: 1.5}}",
		Target: VArray3_OptVStructDepth1_VFloat32{
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
		},
		SourceLabel: "[]any{?VStructDepth1_VFloat32{F28: 1.5}, ?VStructDepth1_VFloat32{F28: 1.5}, ?VStructDepth1_VFloat32{F28: 1.5}}",
		Source: []interface{}{
			&VStructDepth1_VFloat32{
				F28: 1.5,
			},
			&VStructDepth1_VFloat32{
				F28: 1.5,
			},
			&VStructDepth1_VFloat32{
				F28: 1.5,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray3_OptVStructDepth1_VFloat32{{F28: 3.866333e+08}, nil, nil}",
		Target: VArray3_OptVStructDepth1_VFloat32{
			{
				F28: 3.866333e+08,
			},
			nil,
			nil,
		},
		SourceLabel: "VArray3_OptVStructDepth1_VFloat32{{F28: 3.866333e+08}, nil, nil}",
		Source: VArray3_OptVStructDepth1_VFloat32{
			{
				F28: 3.866333e+08,
			},
			nil,
			nil,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray3_OptVStructDepth1_VFloat32{{F28: 3.866333e+08}, nil, nil}",
		Target: VArray3_OptVStructDepth1_VFloat32{
			{
				F28: 3.866333e+08,
			},
			nil,
			nil,
		},
		SourceLabel: "VList_Any{?VStructDepth1_VFloat32{F28: 3.866333e+08}, nil, nil}",
		Source: VList_Any{
			&VStructDepth1_VFloat32{
				F28: 3.866333e+08,
			},
			nil,
			nil,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]VArray1_String{}",
		Target:      []VArray1_String(nil),
		SourceLabel: "[]VArray1_String{}",
		Source:      []VArray1_String(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VArray1_String{}",
		Target:      []VArray1_String(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VArray1_String{}",
		Target:      []VArray1_String(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]VArray1_String{{\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: []VArray1_String{
			{
				"abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "[]VArray1_String{{\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: []VArray1_String{
			{
				"abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]VArray1_String{{\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: []VArray1_String{
			{
				"abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "VList_List_VString{{\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VList_List_VString{
			{
				"abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]VArray1_String{{\"abcdeΔΘΠΣΦ王普\"}}",
		Target: []VArray1_String{
			{
				"abcdeΔΘΠΣΦ王普",
			},
		},
		SourceLabel: "[]VArray1_String{{\"abcdeΔΘΠΣΦ王普\"}}",
		Source: []VArray1_String{
			{
				"abcdeΔΘΠΣΦ王普",
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]VArray1_String{{\"abcdeΔΘΠΣΦ王普\"}}",
		Target: []VArray1_String{
			{
				"abcdeΔΘΠΣΦ王普",
			},
		},
		SourceLabel: "VList_Any{VArray1_String{\"abcdeΔΘΠΣΦ王普\"}}",
		Source: VList_Any{
			VArray1_String{
				"abcdeΔΘΠΣΦ王普",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]VList_Error{}",
		Target:      []VList_Error(nil),
		SourceLabel: "[]VList_Error{}",
		Source:      []VList_Error(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VList_Error{}",
		Target:      []VList_Error(nil),
		SourceLabel: "VList_VArray1_VStructEmpty{}",
		Source:      VList_VArray1_VStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VList_Error{}",
		Target:      []VList_Error(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]VList_Error{{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: []VList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
			},
		},
		SourceLabel: "[]VList_Error{{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: []VList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]VList_Error{{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: []VList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
			},
		},
		SourceLabel: "VList_Any{VList_Error{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VList_Any{
			VList_Error{
				verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]VList_Error{{{Msg: \"bcdeΔΘΠΣΦ王普\"}, {RetryCode: RetryBackoff}}}",
		Target: []VList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Msg: "bcdeΔΘΠΣΦ王普",
				}),
				verror.FromWire(&vdl.WireError{
					RetryCode: vdl.WireRetryCodeRetryBackoff,
				}),
			},
		},
		SourceLabel: "[]VList_Error{{{Msg: \"bcdeΔΘΠΣΦ王普\"}, {RetryCode: RetryBackoff}}}",
		Source: []VList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Msg: "bcdeΔΘΠΣΦ王普",
				}),
				verror.FromWire(&vdl.WireError{
					RetryCode: vdl.WireRetryCodeRetryBackoff,
				}),
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]VList_Error{{{Msg: \"bcdeΔΘΠΣΦ王普\"}, {RetryCode: RetryBackoff}}}",
		Target: []VList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Msg: "bcdeΔΘΠΣΦ王普",
				}),
				verror.FromWire(&vdl.WireError{
					RetryCode: vdl.WireRetryCodeRetryBackoff,
				}),
			},
		},
		SourceLabel: "[]any{VList_Error{{Msg: \"bcdeΔΘΠΣΦ王普\"}, {RetryCode: RetryBackoff}}}",
		Source: []interface{}{
			VList_Error{
				verror.FromWire(&vdl.WireError{
					Msg: "bcdeΔΘΠΣΦ王普",
				}),
				verror.FromWire(&vdl.WireError{
					RetryCode: vdl.WireRetryCodeRetryBackoff,
				}),
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]set[VEnumAbc]{}",
		Target:      []map[VEnumAbc]struct{}(nil),
		SourceLabel: "[]set[VEnumAbc]{}",
		Source:      []map[VEnumAbc]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]set[VEnumAbc]{}",
		Target:      []map[VEnumAbc]struct{}(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]set[VEnumAbc]{}",
		Target:      []map[VEnumAbc]struct{}(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]set[VEnumAbc]{{C}}",
		Target: []map[VEnumAbc]struct{}{
			{
				VEnumAbcC: struct{}{},
			},
		},
		SourceLabel: "[]set[VEnumAbc]{{C}}",
		Source: []map[VEnumAbc]struct{}{
			{
				VEnumAbcC: struct{}{},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]set[VEnumAbc]{{C}}",
		Target: []map[VEnumAbc]struct{}{
			{
				VEnumAbcC: struct{}{},
			},
		},
		SourceLabel: "VArray1_Set_VEnumBcd{{C}}",
		Source: VArray1_Set_VEnumBcd{
			{
				VEnumBcdC: struct{}{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]VMap_VByte_VByte{}",
		Target:      []VMap_VByte_VByte(nil),
		SourceLabel: "[]VMap_VByte_VByte{}",
		Source:      []VMap_VByte_VByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VMap_VByte_VByte{}",
		Target:      []VMap_VByte_VByte(nil),
		SourceLabel: "VList_VMap_Byte_Byte{}",
		Source:      VList_VMap_Byte_Byte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VMap_VByte_VByte{}",
		Target:      []VMap_VByte_VByte(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]VMap_VByte_VByte{{123: 123}}",
		Target: []VMap_VByte_VByte{
			{
				123: 123,
			},
		},
		SourceLabel: "[]VMap_VByte_VByte{{123: 123}}",
		Source: []VMap_VByte_VByte{
			{
				123: 123,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]VMap_VByte_VByte{{123: 123}}",
		Target: []VMap_VByte_VByte{
			{
				123: 123,
			},
		},
		SourceLabel: "[]any{VMap_VByte_VByte{123: 123}}",
		Source: []interface{}{
			VMap_VByte_VByte{
				123: 123,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]VMap_VByte_VByte{{}, {238: 27, 93: 226}, {0: 63, 21: 156, 32: 153}}",
		Target: []VMap_VByte_VByte{
			nil,
			{
				238: 27,
				93:  226,
			},
			{
				0:  63,
				21: 156,
				32: 153,
			},
		},
		SourceLabel: "[]VMap_VByte_VByte{{}, {238: 27, 93: 226}, {0: 63, 21: 156, 32: 153}}",
		Source: []VMap_VByte_VByte{
			nil,
			{
				238: 27,
				93:  226,
			},
			{
				0:  63,
				21: 156,
				32: 153,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]VMap_VByte_VByte{{}, {238: 27, 93: 226}, {0: 63, 21: 156, 32: 153}}",
		Target: []VMap_VByte_VByte{
			nil,
			{
				238: 27,
				93:  226,
			},
			{
				0:  63,
				21: 156,
				32: 153,
			},
		},
		SourceLabel: "VArray3_Any{VMap_VByte_VByte{}, VMap_VByte_VByte{238: 27, 93: 226}, VMap_VByte_VByte{0: 63, 21: 156, 32: 153}}",
		Source: VArray3_Any{
			VMap_VByte_VByte(nil),
			VMap_VByte_VByte{
				238: 27,
				93:  226,
			},
			VMap_VByte_VByte{
				0:  63,
				21: 156,
				32: 153,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]VStructDepth1_All{}",
		Target:      []VStructDepth1_All(nil),
		SourceLabel: "[]VStructDepth1_All{}",
		Source:      []VStructDepth1_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VStructDepth1_All{}",
		Target:      []VStructDepth1_All(nil),
		SourceLabel: "[]?VStructDepth1_VEnumBcd{}",
		Source:      []*VStructDepth1_VEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VStructDepth1_All{}",
		Target:      []VStructDepth1_All(nil),
		SourceLabel: "VList_VStructEmpty{}",
		Source:      VList_VStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]VStructDepth1_All{{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: []VStructDepth1_All{
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
		SourceLabel: "[]VStructDepth1_All{{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: []VStructDepth1_All{
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]VStructDepth1_All{{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: []VStructDepth1_All{
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
		SourceLabel: "VList_VStructDepth1_All{{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VList_VStructDepth1_All{
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]VStructDepth1_All{{F0: VSet_VEnumBcd{B, C, D}, F1: true, F2: true, F3: \"cdeΔΘΠΣΦ王普澤世界\", F4: \"deΔΘΠΣΦ\", F5: typeobject(VUnionDepth2_VUnionDepth1_VUint32), F6: 178, F7: 161, F9: C, F11: {Id: \"ΘΠΣ\", Msg: \"deΔΘΠΣΦ\"}, F12: {Id: \"d\", RetryCode: RetryRefetch}, F13: 21300, F14: 9775, F15: 3419458020, F16: 553722229, F17: 16797505676926839448, F18: 13654046964625701696, F19: -1, F20: -50, F21: -15226, F22: -12071, F24: 687003500, F25: 3645239680692615557, F26: -1514562113997130375, F27: -1.1204439e+09, F28: -2.1808506e+08, F29: -1.3398946988550127e+09, F30: -8.923850039615406e+08, F31: {}}, {F0: VArray3_VBool{}, F3: \"ΠΣΦ王普\", F4: \"d\", F6: 224, F7: 128, F8: B, F9: D, F11: {Id: \"bcd\", Msg: \"abcdeΔΘΠΣΦ王普澤世\"}, F13: 53225, F14: 39597, F15: 3431380833, F16: 3485198401, F17: 890704984324607923, F18: 15543594353799962422, F19: -54, F21: 3893, F22: 8098, F23: -1004395905, F25: -4566599201093206064, F26: -1266517983086515342, F27: 7.564722e+07, F29: -5.075160767192724e+08, F30: 1.2610437600689824e+09, F32: {Id: \"王\", Msg: \"Π\"}}, {F0: VUnionDepth1_Error{F12: {Id: \"bcd\", Msg: \"abcdeΔΘΠΣ\"}}, F2: true, F3: \"ΠΣΦ王普澤世界\", F4: \"ΘΠΣ\", F5: typeobject(VStructDepth2_Map_Byte_Byte), F6: 126, F7: 247, F8: B, F9: D, F13: 14170, F16: 3024472117, F17: 4471507067867680605, F18: 14558949138706969546, F19: -13, F20: 44, F21: 1616, F23: 885588183, F24: 213623835, F25: -2990024350677478442, F26: 2463652078409591445, F27: 6.802491e+08, F28: -1.2006404e+09, F29: -1.3578094407875485e+09, F30: 4.919561592402944e+07, F31: {}, F32: {Id: \"bcdeΔΘΠΣΦ王普澤\", Msg: \"bcdeΔΘΠΣΦ王普澤世\"}}}",
		Target: []VStructDepth1_All{
			{
				F0: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
					VEnumBcdC: struct{}{},
					VEnumBcdD: struct{}{},
				},
				F1: true,
				F2: true,
				F3: "cdeΔΘΠΣΦ王普澤世界",
				F4: "deΔΘΠΣΦ",
				F5: __VDLType_union_208,
				F6: 178,
				F7: 161,
				F9: VEnumBcdC,
				F11: VNamedError{
					Id:  "ΘΠΣ",
					Msg: "deΔΘΠΣΦ",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "d",
					RetryCode: vdl.WireRetryCodeRetryRefetch,
				}),
				F13: 21300,
				F14: 9775,
				F15: 3419458020,
				F16: 553722229,
				F17: 16797505676926839448,
				F18: 13654046964625701696,
				F19: -1,
				F20: -50,
				F21: -15226,
				F22: -12071,
				F24: 687003500,
				F25: 3645239680692615557,
				F26: -1514562113997130375,
				F27: -1.1204439e+09,
				F28: -2.1808506e+08,
				F29: -1.3398946988550127e+09,
				F30: -8.923850039615406e+08,
				F31: &VStructEmpty{},
			},
			{
				F0: VArray3_VBool{},
				F3: "ΠΣΦ王普",
				F4: "d",
				F5: vdl.AnyType,
				F6: 224,
				F7: 128,
				F8: VEnumAbcB,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "bcd",
					Msg: "abcdeΔΘΠΣΦ王普澤世",
				},
				F13: 53225,
				F14: 39597,
				F15: 3431380833,
				F16: 3485198401,
				F17: 890704984324607923,
				F18: 15543594353799962422,
				F19: -54,
				F21: 3893,
				F22: 8098,
				F23: -1004395905,
				F25: -4566599201093206064,
				F26: -1266517983086515342,
				F27: 7.564722e+07,
				F29: -5.075160767192724e+08,
				F30: 1.2610437600689824e+09,
				F32: &VNamedError{
					Id:  "王",
					Msg: "Π",
				},
			},
			{
				F0: VUnionDepth1_Error(VUnionDepth1_ErrorF12{verror.FromWire(&vdl.WireError{
					Id:  "bcd",
					Msg: "abcdeΔΘΠΣ",
				})}),
				F2:  true,
				F3:  "ΠΣΦ王普澤世界",
				F4:  "ΘΠΣ",
				F5:  __VDLType_struct_187,
				F6:  126,
				F7:  247,
				F8:  VEnumAbcB,
				F9:  VEnumBcdD,
				F13: 14170,
				F16: 3024472117,
				F17: 4471507067867680605,
				F18: 14558949138706969546,
				F19: -13,
				F20: 44,
				F21: 1616,
				F23: 885588183,
				F24: 213623835,
				F25: -2990024350677478442,
				F26: 2463652078409591445,
				F27: 6.802491e+08,
				F28: -1.2006404e+09,
				F29: -1.3578094407875485e+09,
				F30: 4.919561592402944e+07,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "bcdeΔΘΠΣΦ王普澤",
					Msg: "bcdeΔΘΠΣΦ王普澤世",
				},
			},
		},
		SourceLabel: "[]VStructDepth1_All{{F0: VSet_VEnumBcd{B, C, D}, F1: true, F2: true, F3: \"cdeΔΘΠΣΦ王普澤世界\", F4: \"deΔΘΠΣΦ\", F5: typeobject(VUnionDepth2_VUnionDepth1_VUint32), F6: 178, F7: 161, F9: C, F11: {Id: \"ΘΠΣ\", Msg: \"deΔΘΠΣΦ\"}, F12: {Id: \"d\", RetryCode: RetryRefetch}, F13: 21300, F14: 9775, F15: 3419458020, F16: 553722229, F17: 16797505676926839448, F18: 13654046964625701696, F19: -1, F20: -50, F21: -15226, F22: -12071, F24: 687003500, F25: 3645239680692615557, F26: -1514562113997130375, F27: -1.1204439e+09, F28: -2.1808506e+08, F29: -1.3398946988550127e+09, F30: -8.923850039615406e+08, F31: {}}, {F0: VArray3_VBool{}, F3: \"ΠΣΦ王普\", F4: \"d\", F6: 224, F7: 128, F8: B, F9: D, F11: {Id: \"bcd\", Msg: \"abcdeΔΘΠΣΦ王普澤世\"}, F13: 53225, F14: 39597, F15: 3431380833, F16: 3485198401, F17: 890704984324607923, F18: 15543594353799962422, F19: -54, F21: 3893, F22: 8098, F23: -1004395905, F25: -4566599201093206064, F26: -1266517983086515342, F27: 7.564722e+07, F29: -5.075160767192724e+08, F30: 1.2610437600689824e+09, F32: {Id: \"王\", Msg: \"Π\"}}, {F0: VUnionDepth1_Error{F12: {Id: \"bcd\", Msg: \"abcdeΔΘΠΣ\"}}, F2: true, F3: \"ΠΣΦ王普澤世界\", F4: \"ΘΠΣ\", F5: typeobject(VStructDepth2_Map_Byte_Byte), F6: 126, F7: 247, F8: B, F9: D, F13: 14170, F16: 3024472117, F17: 4471507067867680605, F18: 14558949138706969546, F19: -13, F20: 44, F21: 1616, F23: 885588183, F24: 213623835, F25: -2990024350677478442, F26: 2463652078409591445, F27: 6.802491e+08, F28: -1.2006404e+09, F29: -1.3578094407875485e+09, F30: 4.919561592402944e+07, F31: {}, F32: {Id: \"bcdeΔΘΠΣΦ王普澤\", Msg: \"bcdeΔΘΠΣΦ王普澤世\"}}}",
		Source: []VStructDepth1_All{
			{
				F0: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
					VEnumBcdC: struct{}{},
					VEnumBcdD: struct{}{},
				},
				F1: true,
				F2: true,
				F3: "cdeΔΘΠΣΦ王普澤世界",
				F4: "deΔΘΠΣΦ",
				F5: __VDLType_union_208,
				F6: 178,
				F7: 161,
				F9: VEnumBcdC,
				F11: VNamedError{
					Id:  "ΘΠΣ",
					Msg: "deΔΘΠΣΦ",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "d",
					RetryCode: vdl.WireRetryCodeRetryRefetch,
				}),
				F13: 21300,
				F14: 9775,
				F15: 3419458020,
				F16: 553722229,
				F17: 16797505676926839448,
				F18: 13654046964625701696,
				F19: -1,
				F20: -50,
				F21: -15226,
				F22: -12071,
				F24: 687003500,
				F25: 3645239680692615557,
				F26: -1514562113997130375,
				F27: -1.1204439e+09,
				F28: -2.1808506e+08,
				F29: -1.3398946988550127e+09,
				F30: -8.923850039615406e+08,
				F31: &VStructEmpty{},
			},
			{
				F0: VArray3_VBool{},
				F3: "ΠΣΦ王普",
				F4: "d",
				F5: vdl.AnyType,
				F6: 224,
				F7: 128,
				F8: VEnumAbcB,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "bcd",
					Msg: "abcdeΔΘΠΣΦ王普澤世",
				},
				F13: 53225,
				F14: 39597,
				F15: 3431380833,
				F16: 3485198401,
				F17: 890704984324607923,
				F18: 15543594353799962422,
				F19: -54,
				F21: 3893,
				F22: 8098,
				F23: -1004395905,
				F25: -4566599201093206064,
				F26: -1266517983086515342,
				F27: 7.564722e+07,
				F29: -5.075160767192724e+08,
				F30: 1.2610437600689824e+09,
				F32: &VNamedError{
					Id:  "王",
					Msg: "Π",
				},
			},
			{
				F0: VUnionDepth1_Error(VUnionDepth1_ErrorF12{verror.FromWire(&vdl.WireError{
					Id:  "bcd",
					Msg: "abcdeΔΘΠΣ",
				})}),
				F2:  true,
				F3:  "ΠΣΦ王普澤世界",
				F4:  "ΘΠΣ",
				F5:  __VDLType_struct_187,
				F6:  126,
				F7:  247,
				F8:  VEnumAbcB,
				F9:  VEnumBcdD,
				F13: 14170,
				F16: 3024472117,
				F17: 4471507067867680605,
				F18: 14558949138706969546,
				F19: -13,
				F20: 44,
				F21: 1616,
				F23: 885588183,
				F24: 213623835,
				F25: -2990024350677478442,
				F26: 2463652078409591445,
				F27: 6.802491e+08,
				F28: -1.2006404e+09,
				F29: -1.3578094407875485e+09,
				F30: 4.919561592402944e+07,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "bcdeΔΘΠΣΦ王普澤",
					Msg: "bcdeΔΘΠΣΦ王普澤世",
				},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]VStructDepth1_All{{F0: VSet_VEnumBcd{B, C, D}, F1: true, F2: true, F3: \"cdeΔΘΠΣΦ王普澤世界\", F4: \"deΔΘΠΣΦ\", F5: typeobject(VUnionDepth2_VUnionDepth1_VUint32), F6: 178, F7: 161, F9: C, F11: {Id: \"ΘΠΣ\", Msg: \"deΔΘΠΣΦ\"}, F12: {Id: \"d\", RetryCode: RetryRefetch}, F13: 21300, F14: 9775, F15: 3419458020, F16: 553722229, F17: 16797505676926839448, F18: 13654046964625701696, F19: -1, F20: -50, F21: -15226, F22: -12071, F24: 687003500, F25: 3645239680692615557, F26: -1514562113997130375, F27: -1.1204439e+09, F28: -2.1808506e+08, F29: -1.3398946988550127e+09, F30: -8.923850039615406e+08, F31: {}}, {F0: VArray3_VBool{}, F3: \"ΠΣΦ王普\", F4: \"d\", F6: 224, F7: 128, F8: B, F9: D, F11: {Id: \"bcd\", Msg: \"abcdeΔΘΠΣΦ王普澤世\"}, F13: 53225, F14: 39597, F15: 3431380833, F16: 3485198401, F17: 890704984324607923, F18: 15543594353799962422, F19: -54, F21: 3893, F22: 8098, F23: -1004395905, F25: -4566599201093206064, F26: -1266517983086515342, F27: 7.564722e+07, F29: -5.075160767192724e+08, F30: 1.2610437600689824e+09, F32: {Id: \"王\", Msg: \"Π\"}}, {F0: VUnionDepth1_Error{F12: {Id: \"bcd\", Msg: \"abcdeΔΘΠΣ\"}}, F2: true, F3: \"ΠΣΦ王普澤世界\", F4: \"ΘΠΣ\", F5: typeobject(VStructDepth2_Map_Byte_Byte), F6: 126, F7: 247, F8: B, F9: D, F13: 14170, F16: 3024472117, F17: 4471507067867680605, F18: 14558949138706969546, F19: -13, F20: 44, F21: 1616, F23: 885588183, F24: 213623835, F25: -2990024350677478442, F26: 2463652078409591445, F27: 6.802491e+08, F28: -1.2006404e+09, F29: -1.3578094407875485e+09, F30: 4.919561592402944e+07, F31: {}, F32: {Id: \"bcdeΔΘΠΣΦ王普澤\", Msg: \"bcdeΔΘΠΣΦ王普澤世\"}}}",
		Target: []VStructDepth1_All{
			{
				F0: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
					VEnumBcdC: struct{}{},
					VEnumBcdD: struct{}{},
				},
				F1: true,
				F2: true,
				F3: "cdeΔΘΠΣΦ王普澤世界",
				F4: "deΔΘΠΣΦ",
				F5: __VDLType_union_208,
				F6: 178,
				F7: 161,
				F9: VEnumBcdC,
				F11: VNamedError{
					Id:  "ΘΠΣ",
					Msg: "deΔΘΠΣΦ",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "d",
					RetryCode: vdl.WireRetryCodeRetryRefetch,
				}),
				F13: 21300,
				F14: 9775,
				F15: 3419458020,
				F16: 553722229,
				F17: 16797505676926839448,
				F18: 13654046964625701696,
				F19: -1,
				F20: -50,
				F21: -15226,
				F22: -12071,
				F24: 687003500,
				F25: 3645239680692615557,
				F26: -1514562113997130375,
				F27: -1.1204439e+09,
				F28: -2.1808506e+08,
				F29: -1.3398946988550127e+09,
				F30: -8.923850039615406e+08,
				F31: &VStructEmpty{},
			},
			{
				F0: VArray3_VBool{},
				F3: "ΠΣΦ王普",
				F4: "d",
				F5: vdl.AnyType,
				F6: 224,
				F7: 128,
				F8: VEnumAbcB,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "bcd",
					Msg: "abcdeΔΘΠΣΦ王普澤世",
				},
				F13: 53225,
				F14: 39597,
				F15: 3431380833,
				F16: 3485198401,
				F17: 890704984324607923,
				F18: 15543594353799962422,
				F19: -54,
				F21: 3893,
				F22: 8098,
				F23: -1004395905,
				F25: -4566599201093206064,
				F26: -1266517983086515342,
				F27: 7.564722e+07,
				F29: -5.075160767192724e+08,
				F30: 1.2610437600689824e+09,
				F32: &VNamedError{
					Id:  "王",
					Msg: "Π",
				},
			},
			{
				F0: VUnionDepth1_Error(VUnionDepth1_ErrorF12{verror.FromWire(&vdl.WireError{
					Id:  "bcd",
					Msg: "abcdeΔΘΠΣ",
				})}),
				F2:  true,
				F3:  "ΠΣΦ王普澤世界",
				F4:  "ΘΠΣ",
				F5:  __VDLType_struct_187,
				F6:  126,
				F7:  247,
				F8:  VEnumAbcB,
				F9:  VEnumBcdD,
				F13: 14170,
				F16: 3024472117,
				F17: 4471507067867680605,
				F18: 14558949138706969546,
				F19: -13,
				F20: 44,
				F21: 1616,
				F23: 885588183,
				F24: 213623835,
				F25: -2990024350677478442,
				F26: 2463652078409591445,
				F27: 6.802491e+08,
				F28: -1.2006404e+09,
				F29: -1.3578094407875485e+09,
				F30: 4.919561592402944e+07,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "bcdeΔΘΠΣΦ王普澤",
					Msg: "bcdeΔΘΠΣΦ王普澤世",
				},
			},
		},
		SourceLabel: "VList_VStructDepth1_All{{F0: VSet_VEnumBcd{B, C, D}, F1: true, F2: true, F3: \"cdeΔΘΠΣΦ王普澤世界\", F4: \"deΔΘΠΣΦ\", F5: typeobject(VUnionDepth2_VUnionDepth1_VUint32), F6: 178, F7: 161, F9: C, F11: {Id: \"ΘΠΣ\", Msg: \"deΔΘΠΣΦ\"}, F12: {Id: \"d\", RetryCode: RetryRefetch}, F13: 21300, F14: 9775, F15: 3419458020, F16: 553722229, F17: 16797505676926839448, F18: 13654046964625701696, F19: -1, F20: -50, F21: -15226, F22: -12071, F24: 687003500, F25: 3645239680692615557, F26: -1514562113997130375, F27: -1.1204439e+09, F28: -2.1808506e+08, F29: -1.3398946988550127e+09, F30: -8.923850039615406e+08, F31: {}}, {F0: VArray3_VBool{}, F3: \"ΠΣΦ王普\", F4: \"d\", F6: 224, F7: 128, F8: B, F9: D, F11: {Id: \"bcd\", Msg: \"abcdeΔΘΠΣΦ王普澤世\"}, F13: 53225, F14: 39597, F15: 3431380833, F16: 3485198401, F17: 890704984324607923, F18: 15543594353799962422, F19: -54, F21: 3893, F22: 8098, F23: -1004395905, F25: -4566599201093206064, F26: -1266517983086515342, F27: 7.564722e+07, F29: -5.075160767192724e+08, F30: 1.2610437600689824e+09, F32: {Id: \"王\", Msg: \"Π\"}}, {F0: VUnionDepth1_Error{F12: {Id: \"bcd\", Msg: \"abcdeΔΘΠΣ\"}}, F2: true, F3: \"ΠΣΦ王普澤世界\", F4: \"ΘΠΣ\", F5: typeobject(VStructDepth2_Map_Byte_Byte), F6: 126, F7: 247, F8: B, F9: D, F13: 14170, F16: 3024472117, F17: 4471507067867680605, F18: 14558949138706969546, F19: -13, F20: 44, F21: 1616, F23: 885588183, F24: 213623835, F25: -2990024350677478442, F26: 2463652078409591445, F27: 6.802491e+08, F28: -1.2006404e+09, F29: -1.3578094407875485e+09, F30: 4.919561592402944e+07, F31: {}, F32: {Id: \"bcdeΔΘΠΣΦ王普澤\", Msg: \"bcdeΔΘΠΣΦ王普澤世\"}}}",
		Source: VList_VStructDepth1_All{
			{
				F0: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
					VEnumBcdC: struct{}{},
					VEnumBcdD: struct{}{},
				},
				F1: true,
				F2: true,
				F3: "cdeΔΘΠΣΦ王普澤世界",
				F4: "deΔΘΠΣΦ",
				F5: __VDLType_union_208,
				F6: 178,
				F7: 161,
				F9: VEnumBcdC,
				F11: VNamedError{
					Id:  "ΘΠΣ",
					Msg: "deΔΘΠΣΦ",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "d",
					RetryCode: vdl.WireRetryCodeRetryRefetch,
				}),
				F13: 21300,
				F14: 9775,
				F15: 3419458020,
				F16: 553722229,
				F17: 16797505676926839448,
				F18: 13654046964625701696,
				F19: -1,
				F20: -50,
				F21: -15226,
				F22: -12071,
				F24: 687003500,
				F25: 3645239680692615557,
				F26: -1514562113997130375,
				F27: -1.1204439e+09,
				F28: -2.1808506e+08,
				F29: -1.3398946988550127e+09,
				F30: -8.923850039615406e+08,
				F31: &VStructEmpty{},
			},
			{
				F0: VArray3_VBool{},
				F3: "ΠΣΦ王普",
				F4: "d",
				F5: vdl.AnyType,
				F6: 224,
				F7: 128,
				F8: VEnumAbcB,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "bcd",
					Msg: "abcdeΔΘΠΣΦ王普澤世",
				},
				F13: 53225,
				F14: 39597,
				F15: 3431380833,
				F16: 3485198401,
				F17: 890704984324607923,
				F18: 15543594353799962422,
				F19: -54,
				F21: 3893,
				F22: 8098,
				F23: -1004395905,
				F25: -4566599201093206064,
				F26: -1266517983086515342,
				F27: 7.564722e+07,
				F29: -5.075160767192724e+08,
				F30: 1.2610437600689824e+09,
				F32: &VNamedError{
					Id:  "王",
					Msg: "Π",
				},
			},
			{
				F0: VUnionDepth1_Error(VUnionDepth1_ErrorF12{verror.FromWire(&vdl.WireError{
					Id:  "bcd",
					Msg: "abcdeΔΘΠΣ",
				})}),
				F2:  true,
				F3:  "ΠΣΦ王普澤世界",
				F4:  "ΘΠΣ",
				F5:  __VDLType_struct_187,
				F6:  126,
				F7:  247,
				F8:  VEnumAbcB,
				F9:  VEnumBcdD,
				F13: 14170,
				F16: 3024472117,
				F17: 4471507067867680605,
				F18: 14558949138706969546,
				F19: -13,
				F20: 44,
				F21: 1616,
				F23: 885588183,
				F24: 213623835,
				F25: -2990024350677478442,
				F26: 2463652078409591445,
				F27: 6.802491e+08,
				F28: -1.2006404e+09,
				F29: -1.3578094407875485e+09,
				F30: 4.919561592402944e+07,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "bcdeΔΘΠΣΦ王普澤",
					Msg: "bcdeΔΘΠΣΦ王普澤世",
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]VUnionDepth1_All{}",
		Target:      []VUnionDepth1_All(nil),
		SourceLabel: "[]VUnionDepth1_All{}",
		Source:      []VUnionDepth1_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VUnionDepth1_All{}",
		Target:      []VUnionDepth1_All(nil),
		SourceLabel: "VList_VUnionDepth1_All{}",
		Source:      VList_VUnionDepth1_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VUnionDepth1_All{}",
		Target:      []VUnionDepth1_All(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]VUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: []VUnionDepth1_All{
			VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
		SourceLabel: "[]VUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: []VUnionDepth1_All{
			VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]VUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: []VUnionDepth1_All{
			VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
		SourceLabel: "VList_Any{VUnionDepth1_All{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VList_Any{
			VUnionDepth1_All(VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]VUnionDepth1_All{{F24: -606482678}, {F24: 268033718}, {F7: 0}}",
		Target: []VUnionDepth1_All{
			VUnionDepth1_AllF24{-606482678},
			VUnionDepth1_AllF24{268033718},
			VUnionDepth1_AllF7{},
		},
		SourceLabel: "[]VUnionDepth1_All{{F24: -606482678}, {F24: 268033718}, {F7: 0}}",
		Source: []VUnionDepth1_All{
			VUnionDepth1_AllF24{-606482678},
			VUnionDepth1_AllF24{268033718},
			VUnionDepth1_AllF7{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]VUnionDepth1_All{{F24: -606482678}, {F24: 268033718}, {F7: 0}}",
		Target: []VUnionDepth1_All{
			VUnionDepth1_AllF24{-606482678},
			VUnionDepth1_AllF24{268033718},
			VUnionDepth1_AllF7{},
		},
		SourceLabel: "VList_VUnionDepth1_All{{F24: -606482678}, {F24: 268033718}, {F7: 0}}",
		Source: VList_VUnionDepth1_All{
			VUnionDepth1_AllF24{-606482678},
			VUnionDepth1_AllF24{268033718},
			VUnionDepth1_AllF7{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]?VStructDepth1_VEnumBcd{}",
		Target:      []*VStructDepth1_VEnumBcd(nil),
		SourceLabel: "[]?VStructDepth1_VEnumBcd{}",
		Source:      []*VStructDepth1_VEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]?VStructDepth1_VEnumBcd{}",
		Target:      []*VStructDepth1_VEnumBcd(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]?VStructDepth1_VEnumBcd{}",
		Target:      []*VStructDepth1_VEnumBcd(nil),
		SourceLabel: "VList_VStructDepth1_All{}",
		Source:      VList_VStructDepth1_All(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]?VStructDepth1_VEnumBcd{{F9: D}}",
		Target: []*VStructDepth1_VEnumBcd{
			{
				F9: VEnumBcdD,
			},
		},
		SourceLabel: "[]?VStructDepth1_VEnumBcd{{F9: D}}",
		Source: []*VStructDepth1_VEnumBcd{
			{
				F9: VEnumBcdD,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]?VStructDepth1_VEnumBcd{{F9: D}}",
		Target: []*VStructDepth1_VEnumBcd{
			{
				F9: VEnumBcdD,
			},
		},
		SourceLabel: "[]any{?VStructDepth1_VEnumBcd{F9: D}}",
		Source: []interface{}{
			&VStructDepth1_VEnumBcd{
				F9: VEnumBcdD,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_VArray1_VStructEmpty{}",
		Target:      VList_VArray1_VStructEmpty(nil),
		SourceLabel: "VList_VArray1_VStructEmpty{}",
		Source:      VList_VArray1_VStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VArray1_VStructEmpty{}",
		Target:      VList_VArray1_VStructEmpty(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VArray1_VStructEmpty{}",
		Target:      VList_VArray1_VStructEmpty(nil),
		SourceLabel: "[]VList_Error{}",
		Source:      []VList_Error(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_VArray1_VStructEmpty{{}}",
		Target: VList_VArray1_VStructEmpty{
			{},
		},
		SourceLabel: "VList_VArray1_VStructEmpty{{}}",
		Source: VList_VArray1_VStructEmpty{
			{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_VArray1_VStructEmpty{{}}",
		Target: VList_VArray1_VStructEmpty{
			{},
		},
		SourceLabel: "[]any{VArray1_VStructEmpty{}}",
		Source: []interface{}{
			VArray1_VStructEmpty{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_List_VString{}",
		Target:      VList_List_VString(nil),
		SourceLabel: "VList_List_VString{}",
		Source:      VList_List_VString(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_List_VString{}",
		Target:      VList_List_VString(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_List_VString{}",
		Target:      VList_List_VString(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_List_VString{{\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VList_List_VString{
			{
				"abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "VList_List_VString{{\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VList_List_VString{
			{
				"abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_List_VString{{\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VList_List_VString{
			{
				"abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "[]VArray1_String{{\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: []VArray1_String{
			{
				"abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VList_List_VString{{}, {\"ΔΘΠΣΦ王普\"}, {}}",
		Target: VList_List_VString{
			nil,
			{
				"ΔΘΠΣΦ王普",
			},
			nil,
		},
		SourceLabel: "VList_List_VString{{}, {\"ΔΘΠΣΦ王普\"}, {}}",
		Source: VList_List_VString{
			nil,
			{
				"ΔΘΠΣΦ王普",
			},
			nil,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VList_List_VString{{}, {\"ΔΘΠΣΦ王普\"}, {}}",
		Target: VList_List_VString{
			nil,
			{
				"ΔΘΠΣΦ王普",
			},
			nil,
		},
		SourceLabel: "[]any{[]VString{}, []VString{\"ΔΘΠΣΦ王普\"}, []VString{}}",
		Source: []interface{}{
			[]VString(nil),
			[]VString{
				"ΔΘΠΣΦ王普",
			},
			[]VString(nil),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_Set_VBool{}",
		Target:      VList_Set_VBool(nil),
		SourceLabel: "VList_Set_VBool{}",
		Source:      VList_Set_VBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_Set_VBool{}",
		Target:      VList_Set_VBool(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_Set_VBool{}",
		Target:      VList_Set_VBool(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_Set_VBool{{true}}",
		Target: VList_Set_VBool{
			{
				true: struct{}{},
			},
		},
		SourceLabel: "VList_Set_VBool{{true}}",
		Source: VList_Set_VBool{
			{
				true: struct{}{},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_Set_VBool{{true}}",
		Target: VList_Set_VBool{
			{
				true: struct{}{},
			},
		},
		SourceLabel: "[]any{set[VBool]{true}}",
		Source: []interface{}{
			map[VBool]struct{}{
				true: struct{}{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_VMap_Byte_Byte{}",
		Target:      VList_VMap_Byte_Byte(nil),
		SourceLabel: "VList_VMap_Byte_Byte{}",
		Source:      VList_VMap_Byte_Byte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VMap_Byte_Byte{}",
		Target:      VList_VMap_Byte_Byte(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VMap_Byte_Byte{}",
		Target:      VList_VMap_Byte_Byte(nil),
		SourceLabel: "[]VMap_VByte_VByte{}",
		Source:      []VMap_VByte_VByte(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_VMap_Byte_Byte{{123: 123}}",
		Target: VList_VMap_Byte_Byte{
			{
				123: 123,
			},
		},
		SourceLabel: "VList_VMap_Byte_Byte{{123: 123}}",
		Source: VList_VMap_Byte_Byte{
			{
				123: 123,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_VMap_Byte_Byte{{123: 123}}",
		Target: VList_VMap_Byte_Byte{
			{
				123: 123,
			},
		},
		SourceLabel: "VList_Any{VMap_Byte_Byte{123: 123}}",
		Source: VList_Any{
			VMap_Byte_Byte{
				123: 123,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VList_VMap_Byte_Byte{{0: 38, 110: 189, 16: 10}, {244: 71, 85: 119}, {19: 0}}",
		Target: VList_VMap_Byte_Byte{
			{
				0:   38,
				110: 189,
				16:  10,
			},
			{
				244: 71,
				85:  119,
			},
			{
				19: 0,
			},
		},
		SourceLabel: "VList_VMap_Byte_Byte{{0: 38, 110: 189, 16: 10}, {244: 71, 85: 119}, {19: 0}}",
		Source: VList_VMap_Byte_Byte{
			{
				0:   38,
				110: 189,
				16:  10,
			},
			{
				244: 71,
				85:  119,
			},
			{
				19: 0,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VList_VMap_Byte_Byte{{0: 38, 110: 189, 16: 10}, {244: 71, 85: 119}, {19: 0}}",
		Target: VList_VMap_Byte_Byte{
			{
				0:   38,
				110: 189,
				16:  10,
			},
			{
				244: 71,
				85:  119,
			},
			{
				19: 0,
			},
		},
		SourceLabel: "VArray3_Any{VMap_Byte_Byte{0: 38, 110: 189, 16: 10}, VMap_Byte_Byte{244: 71, 85: 119}, VMap_Byte_Byte{19: 0}}",
		Source: VArray3_Any{
			VMap_Byte_Byte{
				0:   38,
				110: 189,
				16:  10,
			},
			VMap_Byte_Byte{
				244: 71,
				85:  119,
			},
			VMap_Byte_Byte{
				19: 0,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_VStructDepth1_All{}",
		Target:      VList_VStructDepth1_All(nil),
		SourceLabel: "VList_VStructDepth1_All{}",
		Source:      VList_VStructDepth1_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VStructDepth1_All{}",
		Target:      VList_VStructDepth1_All(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VStructDepth1_All{}",
		Target:      VList_VStructDepth1_All(nil),
		SourceLabel: "VList_OptVStructEmpty{}",
		Source:      VList_OptVStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_VStructDepth1_All{{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VList_VStructDepth1_All{
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
		SourceLabel: "VList_VStructDepth1_All{{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VList_VStructDepth1_All{
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_VStructDepth1_All{{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VList_VStructDepth1_All{
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
		SourceLabel: "VList_Any{VStructDepth1_All{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VList_Any{
			VStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VList_VStructDepth1_All{{F0: VStructDepth3_VArray1_Set_VEnumBcd{}, F1: true, F3: \"ΔΘΠΣ\", F4: \"bcdeΔΘΠΣΦ王普澤世\", F5: typeobject(VStructDepth2_Set_Float64), F7: 84, F8: C, F9: C, F13: 64515, F14: 50775, F16: 3948471590, F17: 2759752476641151986, F18: 1979427017952515225, F19: 7, F20: -1, F21: 14648, F22: -2788, F23: 465961122, F24: -258583691, F25: -4043214334903075675, F27: 7.242119e+08, F28: 5.943776e+08, F29: -2.9591125156416535e+09, F31: {}, F32: {Id: \"cdeΔΘΠΣΦ王普澤\", Msg: \"deΔΘΠΣΦ王\"}}, {F0: VMap_VBool_VBool{true: false}, F3: \"abc\", F4: \"eΔ\", F5: typeobject(VUnionDepth1_Int64), F6: 205, F7: 222, F9: D, F14: 51098, F15: 3951909279, F16: 3516880318, F17: 17030234882830957401, F19: -22, F20: -47, F21: 2787, F22: -6655, F23: 155784102, F24: -414308467, F26: -3714947197124914775, F27: 1.1178665e+09, F30: 4.1901862447963186e+07, F31: {}}}",
		Target: VList_VStructDepth1_All{
			{
				F0:  VStructDepth3_VArray1_Set_VEnumBcd{},
				F1:  true,
				F3:  "ΔΘΠΣ",
				F4:  "bcdeΔΘΠΣΦ王普澤世",
				F5:  __VDLType_struct_185,
				F7:  84,
				F8:  VEnumAbcC,
				F9:  VEnumBcdC,
				F13: 64515,
				F14: 50775,
				F16: 3948471590,
				F17: 2759752476641151986,
				F18: 1979427017952515225,
				F19: 7,
				F20: -1,
				F21: 14648,
				F22: -2788,
				F23: 465961122,
				F24: -258583691,
				F25: -4043214334903075675,
				F27: 7.242119e+08,
				F28: 5.943776e+08,
				F29: -2.9591125156416535e+09,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "cdeΔΘΠΣΦ王普澤",
					Msg: "deΔΘΠΣΦ王",
				},
			},
			{
				F0: VMap_VBool_VBool{
					true: false,
				},
				F3:  "abc",
				F4:  "eΔ",
				F5:  __VDLType_union_142,
				F6:  205,
				F7:  222,
				F9:  VEnumBcdD,
				F14: 51098,
				F15: 3951909279,
				F16: 3516880318,
				F17: 17030234882830957401,
				F19: -22,
				F20: -47,
				F21: 2787,
				F22: -6655,
				F23: 155784102,
				F24: -414308467,
				F26: -3714947197124914775,
				F27: 1.1178665e+09,
				F30: 4.1901862447963186e+07,
				F31: &VStructEmpty{},
			},
		},
		SourceLabel: "VList_VStructDepth1_All{{F0: VStructDepth3_VArray1_Set_VEnumBcd{}, F1: true, F3: \"ΔΘΠΣ\", F4: \"bcdeΔΘΠΣΦ王普澤世\", F5: typeobject(VStructDepth2_Set_Float64), F7: 84, F8: C, F9: C, F13: 64515, F14: 50775, F16: 3948471590, F17: 2759752476641151986, F18: 1979427017952515225, F19: 7, F20: -1, F21: 14648, F22: -2788, F23: 465961122, F24: -258583691, F25: -4043214334903075675, F27: 7.242119e+08, F28: 5.943776e+08, F29: -2.9591125156416535e+09, F31: {}, F32: {Id: \"cdeΔΘΠΣΦ王普澤\", Msg: \"deΔΘΠΣΦ王\"}}, {F0: VMap_VBool_VBool{true: false}, F3: \"abc\", F4: \"eΔ\", F5: typeobject(VUnionDepth1_Int64), F6: 205, F7: 222, F9: D, F14: 51098, F15: 3951909279, F16: 3516880318, F17: 17030234882830957401, F19: -22, F20: -47, F21: 2787, F22: -6655, F23: 155784102, F24: -414308467, F26: -3714947197124914775, F27: 1.1178665e+09, F30: 4.1901862447963186e+07, F31: {}}}",
		Source: VList_VStructDepth1_All{
			{
				F0:  VStructDepth3_VArray1_Set_VEnumBcd{},
				F1:  true,
				F3:  "ΔΘΠΣ",
				F4:  "bcdeΔΘΠΣΦ王普澤世",
				F5:  __VDLType_struct_185,
				F7:  84,
				F8:  VEnumAbcC,
				F9:  VEnumBcdC,
				F13: 64515,
				F14: 50775,
				F16: 3948471590,
				F17: 2759752476641151986,
				F18: 1979427017952515225,
				F19: 7,
				F20: -1,
				F21: 14648,
				F22: -2788,
				F23: 465961122,
				F24: -258583691,
				F25: -4043214334903075675,
				F27: 7.242119e+08,
				F28: 5.943776e+08,
				F29: -2.9591125156416535e+09,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "cdeΔΘΠΣΦ王普澤",
					Msg: "deΔΘΠΣΦ王",
				},
			},
			{
				F0: VMap_VBool_VBool{
					true: false,
				},
				F3:  "abc",
				F4:  "eΔ",
				F5:  __VDLType_union_142,
				F6:  205,
				F7:  222,
				F9:  VEnumBcdD,
				F14: 51098,
				F15: 3951909279,
				F16: 3516880318,
				F17: 17030234882830957401,
				F19: -22,
				F20: -47,
				F21: 2787,
				F22: -6655,
				F23: 155784102,
				F24: -414308467,
				F26: -3714947197124914775,
				F27: 1.1178665e+09,
				F30: 4.1901862447963186e+07,
				F31: &VStructEmpty{},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VList_VStructDepth1_All{{F0: VStructDepth3_VArray1_Set_VEnumBcd{}, F1: true, F3: \"ΔΘΠΣ\", F4: \"bcdeΔΘΠΣΦ王普澤世\", F5: typeobject(VStructDepth2_Set_Float64), F7: 84, F8: C, F9: C, F13: 64515, F14: 50775, F16: 3948471590, F17: 2759752476641151986, F18: 1979427017952515225, F19: 7, F20: -1, F21: 14648, F22: -2788, F23: 465961122, F24: -258583691, F25: -4043214334903075675, F27: 7.242119e+08, F28: 5.943776e+08, F29: -2.9591125156416535e+09, F31: {}, F32: {Id: \"cdeΔΘΠΣΦ王普澤\", Msg: \"deΔΘΠΣΦ王\"}}, {F0: VMap_VBool_VBool{true: false}, F3: \"abc\", F4: \"eΔ\", F5: typeobject(VUnionDepth1_Int64), F6: 205, F7: 222, F9: D, F14: 51098, F15: 3951909279, F16: 3516880318, F17: 17030234882830957401, F19: -22, F20: -47, F21: 2787, F22: -6655, F23: 155784102, F24: -414308467, F26: -3714947197124914775, F27: 1.1178665e+09, F30: 4.1901862447963186e+07, F31: {}}}",
		Target: VList_VStructDepth1_All{
			{
				F0:  VStructDepth3_VArray1_Set_VEnumBcd{},
				F1:  true,
				F3:  "ΔΘΠΣ",
				F4:  "bcdeΔΘΠΣΦ王普澤世",
				F5:  __VDLType_struct_185,
				F7:  84,
				F8:  VEnumAbcC,
				F9:  VEnumBcdC,
				F13: 64515,
				F14: 50775,
				F16: 3948471590,
				F17: 2759752476641151986,
				F18: 1979427017952515225,
				F19: 7,
				F20: -1,
				F21: 14648,
				F22: -2788,
				F23: 465961122,
				F24: -258583691,
				F25: -4043214334903075675,
				F27: 7.242119e+08,
				F28: 5.943776e+08,
				F29: -2.9591125156416535e+09,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "cdeΔΘΠΣΦ王普澤",
					Msg: "deΔΘΠΣΦ王",
				},
			},
			{
				F0: VMap_VBool_VBool{
					true: false,
				},
				F3:  "abc",
				F4:  "eΔ",
				F5:  __VDLType_union_142,
				F6:  205,
				F7:  222,
				F9:  VEnumBcdD,
				F14: 51098,
				F15: 3951909279,
				F16: 3516880318,
				F17: 17030234882830957401,
				F19: -22,
				F20: -47,
				F21: 2787,
				F22: -6655,
				F23: 155784102,
				F24: -414308467,
				F26: -3714947197124914775,
				F27: 1.1178665e+09,
				F30: 4.1901862447963186e+07,
				F31: &VStructEmpty{},
			},
		},
		SourceLabel: "VList_Any{VStructDepth1_All{F0: VStructDepth3_VArray1_Set_VEnumBcd{}, F1: true, F3: \"ΔΘΠΣ\", F4: \"bcdeΔΘΠΣΦ王普澤世\", F5: typeobject(VStructDepth2_Set_Float64), F7: 84, F8: C, F9: C, F13: 64515, F14: 50775, F16: 3948471590, F17: 2759752476641151986, F18: 1979427017952515225, F19: 7, F20: -1, F21: 14648, F22: -2788, F23: 465961122, F24: -258583691, F25: -4043214334903075675, F27: 7.242119e+08, F28: 5.943776e+08, F29: -2.9591125156416535e+09, F31: {}, F32: {Id: \"cdeΔΘΠΣΦ王普澤\", Msg: \"deΔΘΠΣΦ王\"}}, VStructDepth1_All{F0: VMap_VBool_VBool{true: false}, F3: \"abc\", F4: \"eΔ\", F5: typeobject(VUnionDepth1_Int64), F6: 205, F7: 222, F9: D, F14: 51098, F15: 3951909279, F16: 3516880318, F17: 17030234882830957401, F19: -22, F20: -47, F21: 2787, F22: -6655, F23: 155784102, F24: -414308467, F26: -3714947197124914775, F27: 1.1178665e+09, F30: 4.1901862447963186e+07, F31: {}}}",
		Source: VList_Any{
			VStructDepth1_All{
				F0:  VStructDepth3_VArray1_Set_VEnumBcd{},
				F1:  true,
				F3:  "ΔΘΠΣ",
				F4:  "bcdeΔΘΠΣΦ王普澤世",
				F5:  __VDLType_struct_185,
				F7:  84,
				F8:  VEnumAbcC,
				F9:  VEnumBcdC,
				F13: 64515,
				F14: 50775,
				F16: 3948471590,
				F17: 2759752476641151986,
				F18: 1979427017952515225,
				F19: 7,
				F20: -1,
				F21: 14648,
				F22: -2788,
				F23: 465961122,
				F24: -258583691,
				F25: -4043214334903075675,
				F27: 7.242119e+08,
				F28: 5.943776e+08,
				F29: -2.9591125156416535e+09,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "cdeΔΘΠΣΦ王普澤",
					Msg: "deΔΘΠΣΦ王",
				},
			},
			VStructDepth1_All{
				F0: VMap_VBool_VBool{
					true: false,
				},
				F3:  "abc",
				F4:  "eΔ",
				F5:  __VDLType_union_142,
				F6:  205,
				F7:  222,
				F9:  VEnumBcdD,
				F14: 51098,
				F15: 3951909279,
				F16: 3516880318,
				F17: 17030234882830957401,
				F19: -22,
				F20: -47,
				F21: 2787,
				F22: -6655,
				F23: 155784102,
				F24: -414308467,
				F26: -3714947197124914775,
				F27: 1.1178665e+09,
				F30: 4.1901862447963186e+07,
				F31: &VStructEmpty{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_VUnionDepth1_All{}",
		Target:      VList_VUnionDepth1_All(nil),
		SourceLabel: "VList_VUnionDepth1_All{}",
		Source:      VList_VUnionDepth1_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VUnionDepth1_All{}",
		Target:      VList_VUnionDepth1_All(nil),
		SourceLabel: "[]VUnionDepth1_All{}",
		Source:      []VUnionDepth1_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VUnionDepth1_All{}",
		Target:      VList_VUnionDepth1_All(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_VUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VList_VUnionDepth1_All{
			VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
		SourceLabel: "VList_VUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VList_VUnionDepth1_All{
			VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_VUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VList_VUnionDepth1_All{
			VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
		SourceLabel: "[]VUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: []VUnionDepth1_All{
			VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VList_VUnionDepth1_All{{F24: -41875852}, {F3: \"abcdeΔΘΠ\"}, {F19: -4}}",
		Target: VList_VUnionDepth1_All{
			VUnionDepth1_AllF24{-41875852},
			VUnionDepth1_AllF3{"abcdeΔΘΠ"},
			VUnionDepth1_AllF19{-4},
		},
		SourceLabel: "VList_VUnionDepth1_All{{F24: -41875852}, {F3: \"abcdeΔΘΠ\"}, {F19: -4}}",
		Source: VList_VUnionDepth1_All{
			VUnionDepth1_AllF24{-41875852},
			VUnionDepth1_AllF3{"abcdeΔΘΠ"},
			VUnionDepth1_AllF19{-4},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VList_VUnionDepth1_All{{F24: -41875852}, {F3: \"abcdeΔΘΠ\"}, {F19: -4}}",
		Target: VList_VUnionDepth1_All{
			VUnionDepth1_AllF24{-41875852},
			VUnionDepth1_AllF3{"abcdeΔΘΠ"},
			VUnionDepth1_AllF19{-4},
		},
		SourceLabel: "VArray3_Any{VUnionDepth1_All{F24: -41875852}, VUnionDepth1_All{F3: \"abcdeΔΘΠ\"}, VUnionDepth1_All{F19: -4}}",
		Source: VArray3_Any{
			VUnionDepth1_All(VUnionDepth1_AllF24{-41875852}),
			VUnionDepth1_All(VUnionDepth1_AllF3{"abcdeΔΘΠ"}),
			VUnionDepth1_All(VUnionDepth1_AllF19{-4}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_OptVStructDepth1_VEnumBcd{}",
		Target:      VList_OptVStructDepth1_VEnumBcd(nil),
		SourceLabel: "VList_OptVStructDepth1_VEnumBcd{}",
		Source:      VList_OptVStructDepth1_VEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_OptVStructDepth1_VEnumBcd{}",
		Target:      VList_OptVStructDepth1_VEnumBcd(nil),
		SourceLabel: "[]VStructDepth1_All{}",
		Source:      []VStructDepth1_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_OptVStructDepth1_VEnumBcd{}",
		Target:      VList_OptVStructDepth1_VEnumBcd(nil),
		SourceLabel: "[]?VStructEmpty{}",
		Source:      []*VStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_OptVStructDepth1_VEnumBcd{{F9: D}}",
		Target: VList_OptVStructDepth1_VEnumBcd{
			{
				F9: VEnumBcdD,
			},
		},
		SourceLabel: "VList_OptVStructDepth1_VEnumBcd{{F9: D}}",
		Source: VList_OptVStructDepth1_VEnumBcd{
			{
				F9: VEnumBcdD,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_OptVStructDepth1_VEnumBcd{{F9: D}}",
		Target: VList_OptVStructDepth1_VEnumBcd{
			{
				F9: VEnumBcdD,
			},
		},
		SourceLabel: "VList_VStructDepth1_All{{F9: D}}",
		Source: VList_VStructDepth1_All{
			{
				F5: vdl.AnyType,
				F9: VEnumBcdD,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[VArray2_VEnumAbc]{}",
		Target:      map[VArray2_VEnumAbc]struct{}(nil),
		SourceLabel: "set[VArray2_VEnumAbc]{}",
		Source:      map[VArray2_VEnumAbc]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[VArray2_VEnumAbc]{{C, C}}",
		Target: map[VArray2_VEnumAbc]struct{}{
			{
				VEnumAbcC,
				VEnumAbcC,
			}: struct{}{},
		},
		SourceLabel: "set[VArray2_VEnumAbc]{{C, C}}",
		Source: map[VArray2_VEnumAbc]struct{}{
			{
				VEnumAbcC,
				VEnumAbcC,
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[VStructDepth1_String]{}",
		Target:      map[VStructDepth1_String]struct{}(nil),
		SourceLabel: "set[VStructDepth1_String]{}",
		Source:      map[VStructDepth1_String]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[VStructDepth1_String]{}",
		Target:      map[VStructDepth1_String]struct{}(nil),
		SourceLabel: "VSet_VStructEmpty{}",
		Source:      VSet_VStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[VStructDepth1_String]{}",
		Target:      map[VStructDepth1_String]struct{}(nil),
		SourceLabel: "set[VStructEmpty]{}",
		Source:      map[VStructEmpty]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[VStructDepth1_String]{{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: map[VStructDepth1_String]struct{}{
			{
				F3: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		},
		SourceLabel: "set[VStructDepth1_String]{{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: map[VStructDepth1_String]struct{}{
			{
				F3: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "set[VStructDepth1_String]{{}}",
		Target: map[VStructDepth1_String]struct{}{
			{}: struct{}{},
		},
		SourceLabel: "set[VStructDepth1_String]{{}}",
		Source: map[VStructDepth1_String]struct{}{
			{}: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "set[VStructDepth1_String]{{}}",
		Target: map[VStructDepth1_String]struct{}{
			{}: struct{}{},
		},
		SourceLabel: "set[VStructEmpty]{{}}",
		Source: map[VStructEmpty]struct{}{
			{}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[VUnionDepth1_VNamedError]{}",
		Target:      map[VUnionDepth1_VNamedError]struct{}(nil),
		SourceLabel: "set[VUnionDepth1_VNamedError]{}",
		Source:      map[VUnionDepth1_VNamedError]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[VUnionDepth1_VNamedError]{{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: map[VUnionDepth1_VNamedError]struct{}{
			VUnionDepth1_VNamedErrorF11{VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}}: struct{}{},
		},
		SourceLabel: "set[VUnionDepth1_VNamedError]{{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: map[VUnionDepth1_VNamedError]struct{}{
			VUnionDepth1_VNamedErrorF11{VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "set[VUnionDepth1_VNamedError]{{F11: {Id: \"Θ\"}}}",
		Target: map[VUnionDepth1_VNamedError]struct{}{
			VUnionDepth1_VNamedErrorF11{VNamedError{
				Id: "Θ",
			}}: struct{}{},
		},
		SourceLabel: "set[VUnionDepth1_VNamedError]{{F11: {Id: \"Θ\"}}}",
		Source: map[VUnionDepth1_VNamedError]struct{}{
			VUnionDepth1_VNamedErrorF11{VNamedError{
				Id: "Θ",
			}}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VSet_VArray1_VStructEmpty{}",
		Target:      VSet_VArray1_VStructEmpty(nil),
		SourceLabel: "VSet_VArray1_VStructEmpty{}",
		Source:      VSet_VArray1_VStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VSet_VArray1_VStructEmpty{{}}",
		Target: VSet_VArray1_VStructEmpty{
			{}: struct{}{},
		},
		SourceLabel: "VSet_VArray1_VStructEmpty{{}}",
		Source: VSet_VArray1_VStructEmpty{
			{}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VSet_VStructDepth1_VFloat64{}",
		Target:      VSet_VStructDepth1_VFloat64(nil),
		SourceLabel: "VSet_VStructDepth1_VFloat64{}",
		Source:      VSet_VStructDepth1_VFloat64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_VStructDepth1_VFloat64{}",
		Target:      VSet_VStructDepth1_VFloat64(nil),
		SourceLabel: "VSet_VStructEmpty{}",
		Source:      VSet_VStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_VStructDepth1_VFloat64{}",
		Target:      VSet_VStructDepth1_VFloat64(nil),
		SourceLabel: "set[VStructEmpty]{}",
		Source:      map[VStructEmpty]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VSet_VStructDepth1_VFloat64{{F30: 1.5}}",
		Target: VSet_VStructDepth1_VFloat64{
			{
				F30: 1.5,
			}: struct{}{},
		},
		SourceLabel: "VSet_VStructDepth1_VFloat64{{F30: 1.5}}",
		Source: VSet_VStructDepth1_VFloat64{
			{
				F30: 1.5,
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VSet_VStructDepth1_VFloat64{{F30: 2.0949088961925095e+08}}",
		Target: VSet_VStructDepth1_VFloat64{
			{
				F30: 2.0949088961925095e+08,
			}: struct{}{},
		},
		SourceLabel: "VSet_VStructDepth1_VFloat64{{F30: 2.0949088961925095e+08}}",
		Source: VSet_VStructDepth1_VFloat64{
			{
				F30: 2.0949088961925095e+08,
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VSet_VUnionDepth1_VInt8{}",
		Target:      VSet_VUnionDepth1_VInt8(nil),
		SourceLabel: "VSet_VUnionDepth1_VInt8{}",
		Source:      VSet_VUnionDepth1_VInt8(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VSet_VUnionDepth1_VInt8{{F20: -123}}",
		Target: VSet_VUnionDepth1_VInt8{
			VUnionDepth1_VInt8F20{-123}: struct{}{},
		},
		SourceLabel: "VSet_VUnionDepth1_VInt8{{F20: -123}}",
		Source: VSet_VUnionDepth1_VInt8{
			VUnionDepth1_VInt8F20{-123}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VSet_VUnionDepth1_VInt8{{F20: -27}}",
		Target: VSet_VUnionDepth1_VInt8{
			VUnionDepth1_VInt8F20{-27}: struct{}{},
		},
		SourceLabel: "VSet_VUnionDepth1_VInt8{{F20: -27}}",
		Source: VSet_VUnionDepth1_VInt8{
			VUnionDepth1_VInt8F20{-27}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[VArray3_Int64]VArray3_Int64{}",
		Target:      map[VArray3_Int64]VArray3_Int64(nil),
		SourceLabel: "map[VArray3_Int64]VArray3_Int64{}",
		Source:      map[VArray3_Int64]VArray3_Int64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[VArray3_Int64]VArray3_Int64{{-123, -123, -123}: {-123, -123, -123}}",
		Target: map[VArray3_Int64]VArray3_Int64{
			{
				-123,
				-123,
				-123,
			}: {
				-123,
				-123,
				-123,
			},
		},
		SourceLabel: "map[VArray3_Int64]VArray3_Int64{{-123, -123, -123}: {-123, -123, -123}}",
		Source: map[VArray3_Int64]VArray3_Int64{
			{
				-123,
				-123,
				-123,
			}: {
				-123,
				-123,
				-123,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[VArray3_Int64]VArray3_Int64{{-2817536592255687332, -3760268823187002032, 0}: {-1274226269277847115, -2864778330065701217, -2074342664734613809}, {376487109512249769, -1255715141003519065, 3264254720924146845}: {-3421212617289252240, -783571659988020873, 0}, {420371608891038131, -2429316099890771879, 843605660501152610}: {}}",
		Target: map[VArray3_Int64]VArray3_Int64{
			{
				-2817536592255687332,
				-3760268823187002032,
				0,
			}: {
				-1274226269277847115,
				-2864778330065701217,
				-2074342664734613809,
			},
			{
				376487109512249769,
				-1255715141003519065,
				3264254720924146845,
			}: {
				-3421212617289252240,
				-783571659988020873,
				0,
			},
			{
				420371608891038131,
				-2429316099890771879,
				843605660501152610,
			}: {},
		},
		SourceLabel: "map[VArray3_Int64]VArray3_Int64{{-2817536592255687332, -3760268823187002032, 0}: {-1274226269277847115, -2864778330065701217, -2074342664734613809}, {376487109512249769, -1255715141003519065, 3264254720924146845}: {-3421212617289252240, -783571659988020873, 0}, {420371608891038131, -2429316099890771879, 843605660501152610}: {}}",
		Source: map[VArray3_Int64]VArray3_Int64{
			{
				-2817536592255687332,
				-3760268823187002032,
				0,
			}: {
				-1274226269277847115,
				-2864778330065701217,
				-2074342664734613809,
			},
			{
				376487109512249769,
				-1255715141003519065,
				3264254720924146845,
			}: {
				-3421212617289252240,
				-783571659988020873,
				0,
			},
			{
				420371608891038131,
				-2429316099890771879,
				843605660501152610,
			}: {},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[VStructDepth1_String]VStructDepth1_String{}",
		Target:      map[VStructDepth1_String]VStructDepth1_String(nil),
		SourceLabel: "map[VStructDepth1_String]VStructDepth1_String{}",
		Source:      map[VStructDepth1_String]VStructDepth1_String(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VStructDepth1_String]VStructDepth1_String{}",
		Target:      map[VStructDepth1_String]VStructDepth1_String(nil),
		SourceLabel: "map[VStructEmpty]VStructEmpty{}",
		Source:      map[VStructEmpty]VStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VStructDepth1_String]VStructDepth1_String{}",
		Target:      map[VStructDepth1_String]VStructDepth1_String(nil),
		SourceLabel: "VMap_VStructEmpty_VStructEmpty{}",
		Source:      VMap_VStructEmpty_VStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[VStructDepth1_String]VStructDepth1_String{{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}: {F3: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: map[VStructDepth1_String]VStructDepth1_String{
			{
				F3: "abcdeΔΘΠΣΦ王普澤世界",
			}: {
				F3: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "map[VStructDepth1_String]VStructDepth1_String{{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}: {F3: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: map[VStructDepth1_String]VStructDepth1_String{
			{
				F3: "abcdeΔΘΠΣΦ王普澤世界",
			}: {
				F3: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[VStructDepth1_String]VStructDepth1_String{{}: {F3: \"世\"}, {F3: \"abcdeΔΘΠΣΦ王普澤世界\"}: {F3: \"bcdeΔΘΠΣ\"}}",
		Target: map[VStructDepth1_String]VStructDepth1_String{
			{}: {
				F3: "世",
			},
			{
				F3: "abcdeΔΘΠΣΦ王普澤世界",
			}: {
				F3: "bcdeΔΘΠΣ",
			},
		},
		SourceLabel: "map[VStructDepth1_String]VStructDepth1_String{{}: {F3: \"世\"}, {F3: \"abcdeΔΘΠΣΦ王普澤世界\"}: {F3: \"bcdeΔΘΠΣ\"}}",
		Source: map[VStructDepth1_String]VStructDepth1_String{
			{}: {
				F3: "世",
			},
			{
				F3: "abcdeΔΘΠΣΦ王普澤世界",
			}: {
				F3: "bcdeΔΘΠΣ",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[VUnionDepth1_Float64]VUnionDepth1_Float64{}",
		Target:      map[VUnionDepth1_Float64]VUnionDepth1_Float64(nil),
		SourceLabel: "map[VUnionDepth1_Float64]VUnionDepth1_Float64{}",
		Source:      map[VUnionDepth1_Float64]VUnionDepth1_Float64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[VUnionDepth1_Float64]VUnionDepth1_Float64{{F29: 1.5}: {F29: 1.5}}",
		Target: map[VUnionDepth1_Float64]VUnionDepth1_Float64{
			VUnionDepth1_Float64F29{1.5}: VUnionDepth1_Float64F29{1.5},
		},
		SourceLabel: "map[VUnionDepth1_Float64]VUnionDepth1_Float64{{F29: 1.5}: {F29: 1.5}}",
		Source: map[VUnionDepth1_Float64]VUnionDepth1_Float64{
			VUnionDepth1_Float64F29{1.5}: VUnionDepth1_Float64F29{1.5},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[VUnionDepth1_Float64]VUnionDepth1_Float64{{F29: 2.2726029698107373e+07}: {F29: 0}}",
		Target: map[VUnionDepth1_Float64]VUnionDepth1_Float64{
			VUnionDepth1_Float64F29{2.2726029698107373e+07}: VUnionDepth1_Float64F29{},
		},
		SourceLabel: "map[VUnionDepth1_Float64]VUnionDepth1_Float64{{F29: 2.2726029698107373e+07}: {F29: 0}}",
		Source: map[VUnionDepth1_Float64]VUnionDepth1_Float64{
			VUnionDepth1_Float64F29{2.2726029698107373e+07}: VUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VMap_VArray3_VBool_VArray3_VBool{}",
		Target:      VMap_VArray3_VBool_VArray3_VBool(nil),
		SourceLabel: "VMap_VArray3_VBool_VArray3_VBool{}",
		Source:      VMap_VArray3_VBool_VArray3_VBool(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VMap_VArray3_VBool_VArray3_VBool{{true, true, true}: {true, true, true}}",
		Target: VMap_VArray3_VBool_VArray3_VBool{
			{
				true,
				true,
				true,
			}: {
				true,
				true,
				true,
			},
		},
		SourceLabel: "VMap_VArray3_VBool_VArray3_VBool{{true, true, true}: {true, true, true}}",
		Source: VMap_VArray3_VBool_VArray3_VBool{
			{
				true,
				true,
				true,
			}: {
				true,
				true,
				true,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VMap_VStructDepth1_VBool_VStructDepth1_VBool{}",
		Target:      VMap_VStructDepth1_VBool_VStructDepth1_VBool(nil),
		SourceLabel: "VMap_VStructDepth1_VBool_VStructDepth1_VBool{}",
		Source:      VMap_VStructDepth1_VBool_VStructDepth1_VBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VStructDepth1_VBool_VStructDepth1_VBool{}",
		Target:      VMap_VStructDepth1_VBool_VStructDepth1_VBool(nil),
		SourceLabel: "VMap_VStructEmpty_VStructEmpty{}",
		Source:      VMap_VStructEmpty_VStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VStructDepth1_VBool_VStructDepth1_VBool{}",
		Target:      VMap_VStructDepth1_VBool_VStructDepth1_VBool(nil),
		SourceLabel: "map[VStructEmpty]VStructEmpty{}",
		Source:      map[VStructEmpty]VStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VMap_VStructDepth1_VBool_VStructDepth1_VBool{{F2: true}: {F2: true}}",
		Target: VMap_VStructDepth1_VBool_VStructDepth1_VBool{
			{
				F2: true,
			}: {
				F2: true,
			},
		},
		SourceLabel: "VMap_VStructDepth1_VBool_VStructDepth1_VBool{{F2: true}: {F2: true}}",
		Source: VMap_VStructDepth1_VBool_VStructDepth1_VBool{
			{
				F2: true,
			}: {
				F2: true,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64{}",
		Target:      VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64(nil),
		SourceLabel: "VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64{}",
		Source:      VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64{{F18: 123}: {F18: 123}}",
		Target: VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64{
			VUnionDepth1_VUint64F18{123}: VUnionDepth1_VUint64F18{123},
		},
		SourceLabel: "VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64{{F18: 123}: {F18: 123}}",
		Source: VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64{
			VUnionDepth1_VUint64F18{123}: VUnionDepth1_VUint64F18{123},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64{{F18: 5853028216567780601}: {F18: 0}}",
		Target: VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64{
			VUnionDepth1_VUint64F18{5853028216567780601}: VUnionDepth1_VUint64F18{},
		},
		SourceLabel: "VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64{{F18: 5853028216567780601}: {F18: 0}}",
		Source: VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64{
			VUnionDepth1_VUint64F18{5853028216567780601}: VUnionDepth1_VUint64F18{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth2_All{}",
		Target: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
		SourceLabel: "VStructDepth2_All{}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_All{}",
		Target: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
		SourceLabel: "VStructDepth2_VArray1_Uint32{}",
		Source:      VStructDepth2_VArray1_Uint32{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_All{}",
		Target: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth2_All{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}",
		Target: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.Int64Type,
				vdl.Int64Type,
			},
			F1: VArray1_Uint32{
				123,
			},
			F2: []int16{
				-123,
			},
			F3: VList_Any{
				int64(-123),
			},
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
			F5: VSet_VEnumBcd{
				VEnumBcdD: struct{}{},
			},
			F6: map[byte]byte{
				123: 123,
			},
			F7: map[uint32]uint32{
				123: 123,
			},
			F8: VStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
			F9: VStructDepth1_Bool{
				F1: true,
			},
			F10: VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			F11: VUnionDepth1_Float64F29{1.5},
			F12: &VStructDepth1_VEnumBcd{
				F9: VEnumBcdD,
			},
			F13: &VStructDepth1_VUint16{
				F14: 123,
			},
		},
		SourceLabel: "VStructDepth2_All{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.Int64Type,
				vdl.Int64Type,
			},
			F1: VArray1_Uint32{
				123,
			},
			F2: []int16{
				-123,
			},
			F3: VList_Any{
				int64(-123),
			},
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
			F5: VSet_VEnumBcd{
				VEnumBcdD: struct{}{},
			},
			F6: map[byte]byte{
				123: 123,
			},
			F7: map[uint32]uint32{
				123: 123,
			},
			F8: VStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
			F9: VStructDepth1_Bool{
				F1: true,
			},
			F10: VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			F11: VUnionDepth1_Float64F29{1.5},
			F12: &VStructDepth1_VEnumBcd{
				F9: VEnumBcdD,
			},
			F13: &VStructDepth1_VUint16{
				F14: 123,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth2_All{F2: {6627, -15355, 5386}, F3: {VUnionDepth1_VFloat64{F30: -3.646945524972634e+09}, VMap_VArray3_VBool_VArray3_VBool{{true, false, false}: {}}, map[VStructDepth1_String]VStructDepth1_String{{}: {F3: \"ΔΘΠΣΦ王普澤世界\"}, {F3: \"bcdeΔΘΠΣΦ王普澤世界\"}: {}, {F3: \"ΘΠΣΦ王普澤\"}: {F3: \"cdeΔΘ\"}}}, F4: {0}, F5: {B, C}, F6: {156: 243}, F7: {0: 4858678, 1853971719: 1808420086, 4237517540: 0}, F8: {F0: VUint32(1459593600), F1: true, F2: true, F4: \"abcdeΔΘ\", F5: typeobject(VInt8), F6: 233, F7: 162, F8: B, F11: {Id: \"deΔΘ\"}, F12: {RetryCode: RetryBackoff}, F13: 54270, F14: 16439, F16: 4227159943, F17: 14077747331074309923, F18: 11530054109741843599, F19: -10, F20: -14, F21: 14926, F22: 4651, F23: 919036762, F24: -362551624, F25: 3038162464226959132, F26: 3632867008264550680, F27: -2.2463437e+09, F28: 2.1413284e+09, F29: 3.923005143643025e+09, F30: 2.34705436525567e+09, F31: {}}, F9: {F1: true}, F10: {F32: {}}, F11: {F29: -4.920704184273371e+07}, F12: {}}",
		Target: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F2: []int16{
				6627,
				-15355,
				5386,
			},
			F3: VList_Any{
				VUnionDepth1_VFloat64(VUnionDepth1_VFloat64F30{-3.646945524972634e+09}),
				VMap_VArray3_VBool_VArray3_VBool{
					{
						true,
						false,
						false,
					}: {},
				},
				map[VStructDepth1_String]VStructDepth1_String{
					{}: {
						F3: "ΔΘΠΣΦ王普澤世界",
					},
					{
						F3: "bcdeΔΘΠΣΦ王普澤世界",
					}: {},
					{
						F3: "ΘΠΣΦ王普澤",
					}: {
						F3: "cdeΔΘ",
					},
				},
			},
			F4: map[float64]struct{}{
				0: struct{}{},
			},
			F5: VSet_VEnumBcd{
				VEnumBcdB: struct{}{},
				VEnumBcdC: struct{}{},
			},
			F6: map[byte]byte{
				156: 243,
			},
			F7: map[uint32]uint32{
				0:          4858678,
				1853971719: 1808420086,
				4237517540: 0,
			},
			F8: VStructDepth1_All{
				F0: VUint32(1459593600),
				F1: true,
				F2: true,
				F4: "abcdeΔΘ",
				F5: __VDLType_int8_12,
				F6: 233,
				F7: 162,
				F8: VEnumAbcB,
				F11: VNamedError{
					Id: "deΔΘ",
				},
				F12: verror.FromWire(&vdl.WireError{
					RetryCode: vdl.WireRetryCodeRetryBackoff,
				}),
				F13: 54270,
				F14: 16439,
				F16: 4227159943,
				F17: 14077747331074309923,
				F18: 11530054109741843599,
				F19: -10,
				F20: -14,
				F21: 14926,
				F22: 4651,
				F23: 919036762,
				F24: -362551624,
				F25: 3038162464226959132,
				F26: 3632867008264550680,
				F27: -2.2463437e+09,
				F28: 2.1413284e+09,
				F29: 3.923005143643025e+09,
				F30: 2.34705436525567e+09,
				F31: &VStructEmpty{},
			},
			F9: VStructDepth1_Bool{
				F1: true,
			},
			F10: VUnionDepth1_AllF32{&VNamedError{}},
			F11: VUnionDepth1_Float64F29{-4.920704184273371e+07},
			F12: &VStructDepth1_VEnumBcd{},
		},
		SourceLabel: "VStructDepth2_All{F2: {6627, -15355, 5386}, F3: {VUnionDepth1_VFloat64{F30: -3.646945524972634e+09}, VMap_VArray3_VBool_VArray3_VBool{{true, false, false}: {}}, map[VStructDepth1_String]VStructDepth1_String{{}: {F3: \"ΔΘΠΣΦ王普澤世界\"}, {F3: \"bcdeΔΘΠΣΦ王普澤世界\"}: {}, {F3: \"ΘΠΣΦ王普澤\"}: {F3: \"cdeΔΘ\"}}}, F4: {0}, F5: {B, C}, F6: {156: 243}, F7: {0: 4858678, 1853971719: 1808420086, 4237517540: 0}, F8: {F0: VUint32(1459593600), F1: true, F2: true, F4: \"abcdeΔΘ\", F5: typeobject(VInt8), F6: 233, F7: 162, F8: B, F11: {Id: \"deΔΘ\"}, F12: {RetryCode: RetryBackoff}, F13: 54270, F14: 16439, F16: 4227159943, F17: 14077747331074309923, F18: 11530054109741843599, F19: -10, F20: -14, F21: 14926, F22: 4651, F23: 919036762, F24: -362551624, F25: 3038162464226959132, F26: 3632867008264550680, F27: -2.2463437e+09, F28: 2.1413284e+09, F29: 3.923005143643025e+09, F30: 2.34705436525567e+09, F31: {}}, F9: {F1: true}, F10: {F32: {}}, F11: {F29: -4.920704184273371e+07}, F12: {}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F2: []int16{
				6627,
				-15355,
				5386,
			},
			F3: VList_Any{
				VUnionDepth1_VFloat64(VUnionDepth1_VFloat64F30{-3.646945524972634e+09}),
				VMap_VArray3_VBool_VArray3_VBool{
					{
						true,
						false,
						false,
					}: {},
				},
				map[VStructDepth1_String]VStructDepth1_String{
					{}: {
						F3: "ΔΘΠΣΦ王普澤世界",
					},
					{
						F3: "bcdeΔΘΠΣΦ王普澤世界",
					}: {},
					{
						F3: "ΘΠΣΦ王普澤",
					}: {
						F3: "cdeΔΘ",
					},
				},
			},
			F4: map[float64]struct{}{
				0: struct{}{},
			},
			F5: VSet_VEnumBcd{
				VEnumBcdB: struct{}{},
				VEnumBcdC: struct{}{},
			},
			F6: map[byte]byte{
				156: 243,
			},
			F7: map[uint32]uint32{
				0:          4858678,
				1853971719: 1808420086,
				4237517540: 0,
			},
			F8: VStructDepth1_All{
				F0: VUint32(1459593600),
				F1: true,
				F2: true,
				F4: "abcdeΔΘ",
				F5: __VDLType_int8_12,
				F6: 233,
				F7: 162,
				F8: VEnumAbcB,
				F11: VNamedError{
					Id: "deΔΘ",
				},
				F12: verror.FromWire(&vdl.WireError{
					RetryCode: vdl.WireRetryCodeRetryBackoff,
				}),
				F13: 54270,
				F14: 16439,
				F16: 4227159943,
				F17: 14077747331074309923,
				F18: 11530054109741843599,
				F19: -10,
				F20: -14,
				F21: 14926,
				F22: 4651,
				F23: 919036762,
				F24: -362551624,
				F25: 3038162464226959132,
				F26: 3632867008264550680,
				F27: -2.2463437e+09,
				F28: 2.1413284e+09,
				F29: 3.923005143643025e+09,
				F30: 2.34705436525567e+09,
				F31: &VStructEmpty{},
			},
			F9: VStructDepth1_Bool{
				F1: true,
			},
			F10: VUnionDepth1_AllF32{&VNamedError{}},
			F11: VUnionDepth1_Float64F29{-4.920704184273371e+07},
			F12: &VStructDepth1_VEnumBcd{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VArray2_TypeObject{}",
		Target: VStructDepth2_VArray2_TypeObject{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
		},
		SourceLabel: "VStructDepth2_VArray2_TypeObject{}",
		Source: VStructDepth2_VArray2_TypeObject{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VArray2_TypeObject{}",
		Target: VStructDepth2_VArray2_TypeObject{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
		},
		SourceLabel: "VStructDepth1_All{F0: VArray2_TypeObject{}}",
		Source: VStructDepth1_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F5: vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VArray2_TypeObject{}",
		Target: VStructDepth2_VArray2_TypeObject{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
		},
		SourceLabel: "VStructDepth1_Any{F0: VArray2_TypeObject{}}",
		Source: VStructDepth1_Any{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth2_VArray2_TypeObject{F0: {typeobject(int64), typeobject(int64)}}",
		Target: VStructDepth2_VArray2_TypeObject{
			F0: VArray2_TypeObject{
				vdl.Int64Type,
				vdl.Int64Type,
			},
		},
		SourceLabel: "VStructDepth2_VArray2_TypeObject{F0: {typeobject(int64), typeobject(int64)}}",
		Source: VStructDepth2_VArray2_TypeObject{
			F0: VArray2_TypeObject{
				vdl.Int64Type,
				vdl.Int64Type,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth2_VArray2_TypeObject{F0: {typeobject(int64), typeobject(int64)}}",
		Target: VStructDepth2_VArray2_TypeObject{
			F0: VArray2_TypeObject{
				vdl.Int64Type,
				vdl.Int64Type,
			},
		},
		SourceLabel: "VStructDepth1_All{F0: VArray2_TypeObject{typeobject(int64), typeobject(int64)}}",
		Source: VStructDepth1_All{
			F0: VArray2_TypeObject{
				vdl.Int64Type,
				vdl.Int64Type,
			},
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth2_VArray2_TypeObject{F0: {typeobject(VList_Any), typeobject(VSet_VByte)}}",
		Target: VStructDepth2_VArray2_TypeObject{
			F0: VArray2_TypeObject{
				__VDLType_list_38,
				__VDLType_set_61,
			},
		},
		SourceLabel: "VStructDepth2_VArray2_TypeObject{F0: {typeobject(VList_Any), typeobject(VSet_VByte)}}",
		Source: VStructDepth2_VArray2_TypeObject{
			F0: VArray2_TypeObject{
				__VDLType_list_38,
				__VDLType_set_61,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth2_VArray2_TypeObject{F0: {typeobject(VList_Any), typeobject(VSet_VByte)}}",
		Target: VStructDepth2_VArray2_TypeObject{
			F0: VArray2_TypeObject{
				__VDLType_list_38,
				__VDLType_set_61,
			},
		},
		SourceLabel: "VStructDepth1_Any{F0: VArray2_TypeObject{typeobject(VList_Any), typeobject(VSet_VByte)}}",
		Source: VStructDepth1_Any{
			F0: VArray2_TypeObject{
				__VDLType_list_38,
				__VDLType_set_61,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VArray1_Uint32{}",
		Target:      VStructDepth2_VArray1_Uint32{},
		SourceLabel: "VStructDepth2_VArray1_Uint32{}",
		Source:      VStructDepth2_VArray1_Uint32{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VArray1_Uint32{}",
		Target:      VStructDepth2_VArray1_Uint32{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VArray1_Uint32{}",
		Target:      VStructDepth2_VArray1_Uint32{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth2_VArray1_Uint32{F1: {123}}",
		Target: VStructDepth2_VArray1_Uint32{
			F1: VArray1_Uint32{
				123,
			},
		},
		SourceLabel: "VStructDepth2_VArray1_Uint32{F1: {123}}",
		Source: VStructDepth2_VArray1_Uint32{
			F1: VArray1_Uint32{
				123,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth2_VArray1_Uint32{F1: {123}}",
		Target: VStructDepth2_VArray1_Uint32{
			F1: VArray1_Uint32{
				123,
			},
		},
		SourceLabel: "VStructDepth2_All{F1: {123}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F1: VArray1_Uint32{
				123,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth2_VArray1_Uint32{F1: {3919152566}}",
		Target: VStructDepth2_VArray1_Uint32{
			F1: VArray1_Uint32{
				3919152566,
			},
		},
		SourceLabel: "VStructDepth2_VArray1_Uint32{F1: {3919152566}}",
		Source: VStructDepth2_VArray1_Uint32{
			F1: VArray1_Uint32{
				3919152566,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth2_VArray1_Uint32{F1: {3919152566}}",
		Target: VStructDepth2_VArray1_Uint32{
			F1: VArray1_Uint32{
				3919152566,
			},
		},
		SourceLabel: "VStructDepth2_All{F1: {3919152566}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F1: VArray1_Uint32{
				3919152566,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth2_List_Int16{}",
		Target:      VStructDepth2_List_Int16{},
		SourceLabel: "VStructDepth2_List_Int16{}",
		Source:      VStructDepth2_List_Int16{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_List_Int16{}",
		Target:      VStructDepth2_List_Int16{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_List_Int16{}",
		Target:      VStructDepth2_List_Int16{},
		SourceLabel: "VStructDepth2_All{}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth2_List_Int16{F2: {-123}}",
		Target: VStructDepth2_List_Int16{
			F2: []int16{
				-123,
			},
		},
		SourceLabel: "VStructDepth2_List_Int16{F2: {-123}}",
		Source: VStructDepth2_List_Int16{
			F2: []int16{
				-123,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth2_List_Int16{F2: {-123}}",
		Target: VStructDepth2_List_Int16{
			F2: []int16{
				-123,
			},
		},
		SourceLabel: "VStructDepth2_All{F2: {-123}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F2: []int16{
				-123,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth2_List_Int16{F2: {-11258}}",
		Target: VStructDepth2_List_Int16{
			F2: []int16{
				-11258,
			},
		},
		SourceLabel: "VStructDepth2_List_Int16{F2: {-11258}}",
		Source: VStructDepth2_List_Int16{
			F2: []int16{
				-11258,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth2_List_Int16{F2: {-11258}}",
		Target: VStructDepth2_List_Int16{
			F2: []int16{
				-11258,
			},
		},
		SourceLabel: "VStructDepth2_All{F2: {-11258}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F2: []int16{
				-11258,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VList_Any{}",
		Target:      VStructDepth2_VList_Any{},
		SourceLabel: "VStructDepth2_VList_Any{}",
		Source:      VStructDepth2_VList_Any{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VList_Any{}",
		Target:      VStructDepth2_VList_Any{},
		SourceLabel: "VStructDepth2_All{}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VList_Any{}",
		Target:      VStructDepth2_VList_Any{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth2_VList_Any{F3: {int64(-123)}}",
		Target: VStructDepth2_VList_Any{
			F3: VList_Any{
				int64(-123),
			},
		},
		SourceLabel: "VStructDepth2_VList_Any{F3: {int64(-123)}}",
		Source: VStructDepth2_VList_Any{
			F3: VList_Any{
				int64(-123),
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth2_VList_Any{F3: {int64(-123)}}",
		Target: VStructDepth2_VList_Any{
			F3: VList_Any{
				int64(-123),
			},
		},
		SourceLabel: "VStructDepth2_All{F3: {int64(-123)}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F3: VList_Any{
				int64(-123),
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth2_VList_Any{F3: {nil}}",
		Target: VStructDepth2_VList_Any{
			F3: VList_Any{
				nil,
			},
		},
		SourceLabel: "VStructDepth2_VList_Any{F3: {nil}}",
		Source: VStructDepth2_VList_Any{
			F3: VList_Any{
				nil,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth2_VList_Any{F3: {nil}}",
		Target: VStructDepth2_VList_Any{
			F3: VList_Any{
				nil,
			},
		},
		SourceLabel: "VStructDepth2_All{F3: {nil}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F3: VList_Any{
				nil,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth2_Set_Float64{}",
		Target:      VStructDepth2_Set_Float64{},
		SourceLabel: "VStructDepth2_Set_Float64{}",
		Source:      VStructDepth2_Set_Float64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_Set_Float64{}",
		Target:      VStructDepth2_Set_Float64{},
		SourceLabel: "VStructDepth2_All{}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_Set_Float64{}",
		Target:      VStructDepth2_Set_Float64{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth2_Set_Float64{F4: {1.5}}",
		Target: VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		},
		SourceLabel: "VStructDepth2_Set_Float64{F4: {1.5}}",
		Source: VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth2_Set_Float64{F4: {1.5}}",
		Target: VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		},
		SourceLabel: "?VStructDepth2_Set_Float64{F4: {1.5}}",
		Source: &VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth2_Set_Float64{F4: {7.980477583081048e+08}}",
		Target: VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				7.980477583081048e+08: struct{}{},
			},
		},
		SourceLabel: "VStructDepth2_Set_Float64{F4: {7.980477583081048e+08}}",
		Source: VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				7.980477583081048e+08: struct{}{},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth2_Set_Float64{F4: {7.980477583081048e+08}}",
		Target: VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				7.980477583081048e+08: struct{}{},
			},
		},
		SourceLabel: "?VStructDepth2_Set_Float64{F4: {7.980477583081048e+08}}",
		Source: &VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				7.980477583081048e+08: struct{}{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VSet_VEnumBcd{}",
		Target:      VStructDepth2_VSet_VEnumBcd{},
		SourceLabel: "VStructDepth2_VSet_VEnumBcd{}",
		Source:      VStructDepth2_VSet_VEnumBcd{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VSet_VEnumBcd{}",
		Target:      VStructDepth2_VSet_VEnumBcd{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VSet_VEnumBcd{}",
		Target:      VStructDepth2_VSet_VEnumBcd{},
		SourceLabel: "VStructDepth2_All{}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth2_VSet_VEnumBcd{F5: {D}}",
		Target: VStructDepth2_VSet_VEnumBcd{
			F5: VSet_VEnumBcd{
				VEnumBcdD: struct{}{},
			},
		},
		SourceLabel: "VStructDepth2_VSet_VEnumBcd{F5: {D}}",
		Source: VStructDepth2_VSet_VEnumBcd{
			F5: VSet_VEnumBcd{
				VEnumBcdD: struct{}{},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth2_VSet_VEnumBcd{F5: {D}}",
		Target: VStructDepth2_VSet_VEnumBcd{
			F5: VSet_VEnumBcd{
				VEnumBcdD: struct{}{},
			},
		},
		SourceLabel: "VStructDepth2_All{F5: {D}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F5: VSet_VEnumBcd{
				VEnumBcdD: struct{}{},
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth2_Map_Byte_Byte{}",
		Target:      VStructDepth2_Map_Byte_Byte{},
		SourceLabel: "VStructDepth2_Map_Byte_Byte{}",
		Source:      VStructDepth2_Map_Byte_Byte{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_Map_Byte_Byte{}",
		Target:      VStructDepth2_Map_Byte_Byte{},
		SourceLabel: "VStructDepth2_All{}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_Map_Byte_Byte{}",
		Target:      VStructDepth2_Map_Byte_Byte{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth2_Map_Byte_Byte{F6: {123: 123}}",
		Target: VStructDepth2_Map_Byte_Byte{
			F6: map[byte]byte{
				123: 123,
			},
		},
		SourceLabel: "VStructDepth2_Map_Byte_Byte{F6: {123: 123}}",
		Source: VStructDepth2_Map_Byte_Byte{
			F6: map[byte]byte{
				123: 123,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth2_Map_Byte_Byte{F6: {123: 123}}",
		Target: VStructDepth2_Map_Byte_Byte{
			F6: map[byte]byte{
				123: 123,
			},
		},
		SourceLabel: "VStructDepth2_All{F6: {123: 123}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F6: map[byte]byte{
				123: 123,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth2_Map_Byte_Byte{F6: {94: 180}}",
		Target: VStructDepth2_Map_Byte_Byte{
			F6: map[byte]byte{
				94: 180,
			},
		},
		SourceLabel: "VStructDepth2_Map_Byte_Byte{F6: {94: 180}}",
		Source: VStructDepth2_Map_Byte_Byte{
			F6: map[byte]byte{
				94: 180,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth2_Map_Byte_Byte{F6: {94: 180}}",
		Target: VStructDepth2_Map_Byte_Byte{
			F6: map[byte]byte{
				94: 180,
			},
		},
		SourceLabel: "VStructDepth2_All{F6: {94: 180}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F6: map[byte]byte{
				94: 180,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth2_Map_Uint32_Uint32{}",
		Target:      VStructDepth2_Map_Uint32_Uint32{},
		SourceLabel: "VStructDepth2_Map_Uint32_Uint32{}",
		Source:      VStructDepth2_Map_Uint32_Uint32{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_Map_Uint32_Uint32{}",
		Target:      VStructDepth2_Map_Uint32_Uint32{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_Map_Uint32_Uint32{}",
		Target:      VStructDepth2_Map_Uint32_Uint32{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth2_Map_Uint32_Uint32{F7: {123: 123}}",
		Target: VStructDepth2_Map_Uint32_Uint32{
			F7: map[uint32]uint32{
				123: 123,
			},
		},
		SourceLabel: "VStructDepth2_Map_Uint32_Uint32{F7: {123: 123}}",
		Source: VStructDepth2_Map_Uint32_Uint32{
			F7: map[uint32]uint32{
				123: 123,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth2_Map_Uint32_Uint32{F7: {123: 123}}",
		Target: VStructDepth2_Map_Uint32_Uint32{
			F7: map[uint32]uint32{
				123: 123,
			},
		},
		SourceLabel: "VStructDepth2_All{F7: {123: 123}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F7: map[uint32]uint32{
				123: 123,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth2_Map_Uint32_Uint32{F7: {484787859: 607997844}}",
		Target: VStructDepth2_Map_Uint32_Uint32{
			F7: map[uint32]uint32{
				484787859: 607997844,
			},
		},
		SourceLabel: "VStructDepth2_Map_Uint32_Uint32{F7: {484787859: 607997844}}",
		Source: VStructDepth2_Map_Uint32_Uint32{
			F7: map[uint32]uint32{
				484787859: 607997844,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth2_Map_Uint32_Uint32{F7: {484787859: 607997844}}",
		Target: VStructDepth2_Map_Uint32_Uint32{
			F7: map[uint32]uint32{
				484787859: 607997844,
			},
		},
		SourceLabel: "VStructDepth2_All{F7: {484787859: 607997844}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F7: map[uint32]uint32{
				484787859: 607997844,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VStructDepth1_All{}",
		Target: VStructDepth2_VStructDepth1_All{
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
		},
		SourceLabel: "VStructDepth2_VStructDepth1_All{}",
		Source: VStructDepth2_VStructDepth1_All{
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VStructDepth1_All{}",
		Target: VStructDepth2_VStructDepth1_All{
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
		},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VStructDepth1_All{}",
		Target: VStructDepth2_VStructDepth1_All{
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
		},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth2_VStructDepth1_All{F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VStructDepth2_VStructDepth1_All{
			F8: VStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
		SourceLabel: "VStructDepth2_VStructDepth1_All{F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VStructDepth2_VStructDepth1_All{
			F8: VStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth2_VStructDepth1_All{F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VStructDepth2_VStructDepth1_All{
			F8: VStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
		SourceLabel: "VStructDepth2_All{F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth2_VStructDepth1_All{F8: {F0: VUnionDepth1_VNamedError{F11: {Msg: \"deΔΘΠ\"}}, F1: true, F3: \"王普\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(VFloat64), F6: 75, F7: 182, F9: C, F11: {Id: \"普澤世界\", Msg: \"bcdeΔΘΠΣΦ王普澤世界\"}, F12: {}, F15: 249425737, F17: 10629523721000836621, F18: 7486156333227476036, F20: 49, F21: -9489, F23: 525779420, F25: -2402888122737591262, F26: 1399478731392238278, F27: 1.263582e+09, F28: -3.056747e+08, F29: -3.3608037829863775e+08, F30: -3.583770142849399e+09, F31: {}}}",
		Target: VStructDepth2_VStructDepth1_All{
			F8: VStructDepth1_All{
				F0: VUnionDepth1_VNamedError(VUnionDepth1_VNamedErrorF11{VNamedError{
					Msg: "deΔΘΠ",
				}}),
				F1: true,
				F3: "王普",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: __VDLType_float64_17,
				F6: 75,
				F7: 182,
				F9: VEnumBcdC,
				F11: VNamedError{
					Id:  "普澤世界",
					Msg: "bcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{}),
				F15: 249425737,
				F17: 10629523721000836621,
				F18: 7486156333227476036,
				F20: 49,
				F21: -9489,
				F23: 525779420,
				F25: -2402888122737591262,
				F26: 1399478731392238278,
				F27: 1.263582e+09,
				F28: -3.056747e+08,
				F29: -3.3608037829863775e+08,
				F30: -3.583770142849399e+09,
				F31: &VStructEmpty{},
			},
		},
		SourceLabel: "VStructDepth2_VStructDepth1_All{F8: {F0: VUnionDepth1_VNamedError{F11: {Msg: \"deΔΘΠ\"}}, F1: true, F3: \"王普\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(VFloat64), F6: 75, F7: 182, F9: C, F11: {Id: \"普澤世界\", Msg: \"bcdeΔΘΠΣΦ王普澤世界\"}, F12: {}, F15: 249425737, F17: 10629523721000836621, F18: 7486156333227476036, F20: 49, F21: -9489, F23: 525779420, F25: -2402888122737591262, F26: 1399478731392238278, F27: 1.263582e+09, F28: -3.056747e+08, F29: -3.3608037829863775e+08, F30: -3.583770142849399e+09, F31: {}}}",
		Source: VStructDepth2_VStructDepth1_All{
			F8: VStructDepth1_All{
				F0: VUnionDepth1_VNamedError(VUnionDepth1_VNamedErrorF11{VNamedError{
					Msg: "deΔΘΠ",
				}}),
				F1: true,
				F3: "王普",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: __VDLType_float64_17,
				F6: 75,
				F7: 182,
				F9: VEnumBcdC,
				F11: VNamedError{
					Id:  "普澤世界",
					Msg: "bcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{}),
				F15: 249425737,
				F17: 10629523721000836621,
				F18: 7486156333227476036,
				F20: 49,
				F21: -9489,
				F23: 525779420,
				F25: -2402888122737591262,
				F26: 1399478731392238278,
				F27: 1.263582e+09,
				F28: -3.056747e+08,
				F29: -3.3608037829863775e+08,
				F30: -3.583770142849399e+09,
				F31: &VStructEmpty{},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth2_VStructDepth1_All{F8: {F0: VUnionDepth1_VNamedError{F11: {Msg: \"deΔΘΠ\"}}, F1: true, F3: \"王普\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(VFloat64), F6: 75, F7: 182, F9: C, F11: {Id: \"普澤世界\", Msg: \"bcdeΔΘΠΣΦ王普澤世界\"}, F12: {}, F15: 249425737, F17: 10629523721000836621, F18: 7486156333227476036, F20: 49, F21: -9489, F23: 525779420, F25: -2402888122737591262, F26: 1399478731392238278, F27: 1.263582e+09, F28: -3.056747e+08, F29: -3.3608037829863775e+08, F30: -3.583770142849399e+09, F31: {}}}",
		Target: VStructDepth2_VStructDepth1_All{
			F8: VStructDepth1_All{
				F0: VUnionDepth1_VNamedError(VUnionDepth1_VNamedErrorF11{VNamedError{
					Msg: "deΔΘΠ",
				}}),
				F1: true,
				F3: "王普",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: __VDLType_float64_17,
				F6: 75,
				F7: 182,
				F9: VEnumBcdC,
				F11: VNamedError{
					Id:  "普澤世界",
					Msg: "bcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{}),
				F15: 249425737,
				F17: 10629523721000836621,
				F18: 7486156333227476036,
				F20: 49,
				F21: -9489,
				F23: 525779420,
				F25: -2402888122737591262,
				F26: 1399478731392238278,
				F27: 1.263582e+09,
				F28: -3.056747e+08,
				F29: -3.3608037829863775e+08,
				F30: -3.583770142849399e+09,
				F31: &VStructEmpty{},
			},
		},
		SourceLabel: "VStructDepth2_All{F8: {F0: VUnionDepth1_VNamedError{F11: {Msg: \"deΔΘΠ\"}}, F1: true, F3: \"王普\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(VFloat64), F6: 75, F7: 182, F9: C, F11: {Id: \"普澤世界\", Msg: \"bcdeΔΘΠΣΦ王普澤世界\"}, F12: {}, F15: 249425737, F17: 10629523721000836621, F18: 7486156333227476036, F20: 49, F21: -9489, F23: 525779420, F25: -2402888122737591262, F26: 1399478731392238278, F27: 1.263582e+09, F28: -3.056747e+08, F29: -3.3608037829863775e+08, F30: -3.583770142849399e+09, F31: {}}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F0: VUnionDepth1_VNamedError(VUnionDepth1_VNamedErrorF11{VNamedError{
					Msg: "deΔΘΠ",
				}}),
				F1: true,
				F3: "王普",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: __VDLType_float64_17,
				F6: 75,
				F7: 182,
				F9: VEnumBcdC,
				F11: VNamedError{
					Id:  "普澤世界",
					Msg: "bcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{}),
				F15: 249425737,
				F17: 10629523721000836621,
				F18: 7486156333227476036,
				F20: 49,
				F21: -9489,
				F23: 525779420,
				F25: -2402888122737591262,
				F26: 1399478731392238278,
				F27: 1.263582e+09,
				F28: -3.056747e+08,
				F29: -3.3608037829863775e+08,
				F30: -3.583770142849399e+09,
				F31: &VStructEmpty{},
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VStructDepth1_Bool{}",
		Target:      VStructDepth2_VStructDepth1_Bool{},
		SourceLabel: "VStructDepth2_VStructDepth1_Bool{}",
		Source:      VStructDepth2_VStructDepth1_Bool{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VStructDepth1_Bool{}",
		Target:      VStructDepth2_VStructDepth1_Bool{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VStructDepth1_Bool{}",
		Target:      VStructDepth2_VStructDepth1_Bool{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth2_VStructDepth1_Bool{F9: {F1: true}}",
		Target: VStructDepth2_VStructDepth1_Bool{
			F9: VStructDepth1_Bool{
				F1: true,
			},
		},
		SourceLabel: "VStructDepth2_VStructDepth1_Bool{F9: {F1: true}}",
		Source: VStructDepth2_VStructDepth1_Bool{
			F9: VStructDepth1_Bool{
				F1: true,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth2_VStructDepth1_Bool{F9: {F1: true}}",
		Target: VStructDepth2_VStructDepth1_Bool{
			F9: VStructDepth1_Bool{
				F1: true,
			},
		},
		SourceLabel: "VStructDepth2_All{F9: {F1: true}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F9: VStructDepth1_Bool{
				F1: true,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VUnionDepth1_All{}",
		Target: VStructDepth2_VUnionDepth1_All{
			F10: VUnionDepth1_AllF0{},
		},
		SourceLabel: "VStructDepth2_VUnionDepth1_All{}",
		Source: VStructDepth2_VUnionDepth1_All{
			F10: VUnionDepth1_AllF0{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VUnionDepth1_All{}",
		Target: VStructDepth2_VUnionDepth1_All{
			F10: VUnionDepth1_AllF0{},
		},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VUnionDepth1_All{}",
		Target: VStructDepth2_VUnionDepth1_All{
			F10: VUnionDepth1_AllF0{},
		},
		SourceLabel: "VStructDepth2_All{}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth2_VUnionDepth1_All{F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VStructDepth2_VUnionDepth1_All{
			F10: VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
		SourceLabel: "VStructDepth2_VUnionDepth1_All{F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VStructDepth2_VUnionDepth1_All{
			F10: VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth2_VUnionDepth1_All{F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VStructDepth2_VUnionDepth1_All{
			F10: VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
		SourceLabel: "VStructDepth2_All{F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth2_VUnionDepth1_All{F10: {F23: -1046473097}}",
		Target: VStructDepth2_VUnionDepth1_All{
			F10: VUnionDepth1_AllF23{-1046473097},
		},
		SourceLabel: "VStructDepth2_VUnionDepth1_All{F10: {F23: -1046473097}}",
		Source: VStructDepth2_VUnionDepth1_All{
			F10: VUnionDepth1_AllF23{-1046473097},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth2_VUnionDepth1_All{F10: {F23: -1046473097}}",
		Target: VStructDepth2_VUnionDepth1_All{
			F10: VUnionDepth1_AllF23{-1046473097},
		},
		SourceLabel: "VStructDepth2_All{F10: {F23: -1046473097}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF23{-1046473097},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VUnionDepth1_Float64{}",
		Target: VStructDepth2_VUnionDepth1_Float64{
			F11: VUnionDepth1_Float64F29{},
		},
		SourceLabel: "VStructDepth2_VUnionDepth1_Float64{}",
		Source: VStructDepth2_VUnionDepth1_Float64{
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VUnionDepth1_Float64{}",
		Target: VStructDepth2_VUnionDepth1_Float64{
			F11: VUnionDepth1_Float64F29{},
		},
		SourceLabel: "VStructDepth2_All{}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_VUnionDepth1_Float64{}",
		Target: VStructDepth2_VUnionDepth1_Float64{
			F11: VUnionDepth1_Float64F29{},
		},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth2_VUnionDepth1_Float64{F11: {F29: 1.5}}",
		Target: VStructDepth2_VUnionDepth1_Float64{
			F11: VUnionDepth1_Float64F29{1.5},
		},
		SourceLabel: "VStructDepth2_VUnionDepth1_Float64{F11: {F29: 1.5}}",
		Source: VStructDepth2_VUnionDepth1_Float64{
			F11: VUnionDepth1_Float64F29{1.5},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth2_VUnionDepth1_Float64{F11: {F29: 1.5}}",
		Target: VStructDepth2_VUnionDepth1_Float64{
			F11: VUnionDepth1_Float64F29{1.5},
		},
		SourceLabel: "VStructDepth2_All{F11: {F29: 1.5}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{1.5},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth2_VUnionDepth1_Float64{F11: {F29: -1.5306373726502123e+08}}",
		Target: VStructDepth2_VUnionDepth1_Float64{
			F11: VUnionDepth1_Float64F29{-1.5306373726502123e+08},
		},
		SourceLabel: "VStructDepth2_VUnionDepth1_Float64{F11: {F29: -1.5306373726502123e+08}}",
		Source: VStructDepth2_VUnionDepth1_Float64{
			F11: VUnionDepth1_Float64F29{-1.5306373726502123e+08},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth2_VUnionDepth1_Float64{F11: {F29: -1.5306373726502123e+08}}",
		Target: VStructDepth2_VUnionDepth1_Float64{
			F11: VUnionDepth1_Float64F29{-1.5306373726502123e+08},
		},
		SourceLabel: "VStructDepth2_All{F11: {F29: -1.5306373726502123e+08}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{-1.5306373726502123e+08},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth2_OptVStructDepth1_VEnumBcd{}",
		Target:      VStructDepth2_OptVStructDepth1_VEnumBcd{},
		SourceLabel: "VStructDepth2_OptVStructDepth1_VEnumBcd{}",
		Source:      VStructDepth2_OptVStructDepth1_VEnumBcd{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_OptVStructDepth1_VEnumBcd{}",
		Target:      VStructDepth2_OptVStructDepth1_VEnumBcd{},
		SourceLabel: "VStructDepth2_All{}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_OptVStructDepth1_VEnumBcd{}",
		Target:      VStructDepth2_OptVStructDepth1_VEnumBcd{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth2_OptVStructDepth1_VEnumBcd{F12: {F9: D}}",
		Target: VStructDepth2_OptVStructDepth1_VEnumBcd{
			F12: &VStructDepth1_VEnumBcd{
				F9: VEnumBcdD,
			},
		},
		SourceLabel: "VStructDepth2_OptVStructDepth1_VEnumBcd{F12: {F9: D}}",
		Source: VStructDepth2_OptVStructDepth1_VEnumBcd{
			F12: &VStructDepth1_VEnumBcd{
				F9: VEnumBcdD,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth2_OptVStructDepth1_VEnumBcd{F12: {F9: D}}",
		Target: VStructDepth2_OptVStructDepth1_VEnumBcd{
			F12: &VStructDepth1_VEnumBcd{
				F9: VEnumBcdD,
			},
		},
		SourceLabel: "VStructDepth2_All{F12: {F9: D}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
			F12: &VStructDepth1_VEnumBcd{
				F9: VEnumBcdD,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth2_OptVStructDepth1_VUint16{}",
		Target:      VStructDepth2_OptVStructDepth1_VUint16{},
		SourceLabel: "VStructDepth2_OptVStructDepth1_VUint16{}",
		Source:      VStructDepth2_OptVStructDepth1_VUint16{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_OptVStructDepth1_VUint16{}",
		Target:      VStructDepth2_OptVStructDepth1_VUint16{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth2_OptVStructDepth1_VUint16{}",
		Target:      VStructDepth2_OptVStructDepth1_VUint16{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth2_OptVStructDepth1_VUint16{F13: {F14: 123}}",
		Target: VStructDepth2_OptVStructDepth1_VUint16{
			F13: &VStructDepth1_VUint16{
				F14: 123,
			},
		},
		SourceLabel: "VStructDepth2_OptVStructDepth1_VUint16{F13: {F14: 123}}",
		Source: VStructDepth2_OptVStructDepth1_VUint16{
			F13: &VStructDepth1_VUint16{
				F14: 123,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth2_OptVStructDepth1_VUint16{F13: {F14: 123}}",
		Target: VStructDepth2_OptVStructDepth1_VUint16{
			F13: &VStructDepth1_VUint16{
				F14: 123,
			},
		},
		SourceLabel: "VStructDepth2_All{F13: {F14: 123}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
			F13: &VStructDepth1_VUint16{
				F14: 123,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth2_OptVStructDepth1_VUint16{F13: {F14: 51068}}",
		Target: VStructDepth2_OptVStructDepth1_VUint16{
			F13: &VStructDepth1_VUint16{
				F14: 51068,
			},
		},
		SourceLabel: "VStructDepth2_OptVStructDepth1_VUint16{F13: {F14: 51068}}",
		Source: VStructDepth2_OptVStructDepth1_VUint16{
			F13: &VStructDepth1_VUint16{
				F14: 51068,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth2_OptVStructDepth1_VUint16{F13: {F14: 51068}}",
		Target: VStructDepth2_OptVStructDepth1_VUint16{
			F13: &VStructDepth1_VUint16{
				F14: 51068,
			},
		},
		SourceLabel: "VStructDepth2_All{F13: {F14: 51068}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
			F13: &VStructDepth1_VUint16{
				F14: 51068,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_All{F0: {}}",
		Target:      VUnionDepth2_All(VUnionDepth2_AllF0{}),
		SourceLabel: "VUnionDepth2_All{F0: {}}",
		Source:      VUnionDepth2_All(VUnionDepth2_AllF0{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_All{F0: {}}",
		Target:      VUnionDepth2_All(VUnionDepth2_AllF0{}),
		SourceLabel: "VUnionDepth2_VArray1_String{F0: {}}",
		Source:      VUnionDepth2_VArray1_String(VUnionDepth2_VArray1_StringF0{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_All{F0: {}}",
		Target:      VUnionDepth2_All(VUnionDepth2_AllF0{}),
		SourceLabel: "VUnionDepth1_Any{F0: VArray1_String{}}",
		Source:      VUnionDepth1_Any(VUnionDepth1_AnyF0{VArray1_String{}}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth2_All{F13: {F28: 1.5}}",
		Target: VUnionDepth2_All(VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
			F28: 1.5,
		}}),
		SourceLabel: "VUnionDepth2_All{F13: {F28: 1.5}}",
		Source: VUnionDepth2_All(VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
			F28: 1.5,
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth2_All{F13: {F28: 1.5}}",
		Target: VUnionDepth2_All(VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
			F28: 1.5,
		}}),
		SourceLabel: "VUnionDepth2_OptVStructDepth1_VFloat32{F13: {F28: 1.5}}",
		Source: VUnionDepth2_OptVStructDepth1_VFloat32(VUnionDepth2_OptVStructDepth1_VFloat32F13{&VStructDepth1_VFloat32{
			F28: 1.5,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth2_All{F2: \"N\\x00\"}",
		Target:      VUnionDepth2_All(VUnionDepth2_AllF2{VList_VByte("N\x00")}),
		SourceLabel: "VUnionDepth2_All{F2: \"N\\x00\"}",
		Source:      VUnionDepth2_All(VUnionDepth2_AllF2{VList_VByte("N\x00")}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth2_All{F2: \"N\\x00\"}",
		Target:      VUnionDepth2_All(VUnionDepth2_AllF2{VList_VByte("N\x00")}),
		SourceLabel: "VUnionDepth2_VList_VByte{F2: \"N\\x00\"}",
		Source:      VUnionDepth2_VList_VByte(VUnionDepth2_VList_VByteF2{VList_VByte("N\x00")}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VArray1_String{F0: {}}",
		Target:      VUnionDepth2_VArray1_String(VUnionDepth2_VArray1_StringF0{}),
		SourceLabel: "VUnionDepth2_VArray1_String{F0: {}}",
		Source:      VUnionDepth2_VArray1_String(VUnionDepth2_VArray1_StringF0{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VArray1_String{F0: {}}",
		Target:      VUnionDepth2_VArray1_String(VUnionDepth2_VArray1_StringF0{}),
		SourceLabel: "VUnionDepth1_Any{F0: VArray1_String{}}",
		Source:      VUnionDepth1_Any(VUnionDepth1_AnyF0{VArray1_String{}}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VArray1_String{F0: {}}",
		Target:      VUnionDepth2_VArray1_String(VUnionDepth2_VArray1_StringF0{}),
		SourceLabel: "VUnionDepth1_All{F0: VArray1_String{}}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF0{VArray1_String{}}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth2_VArray1_String{F0: {\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VUnionDepth2_VArray1_String(VUnionDepth2_VArray1_StringF0{VArray1_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		}}),
		SourceLabel: "VUnionDepth2_VArray1_String{F0: {\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VUnionDepth2_VArray1_String(VUnionDepth2_VArray1_StringF0{VArray1_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth2_VArray1_String{F0: {\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VUnionDepth2_VArray1_String(VUnionDepth2_VArray1_StringF0{VArray1_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		}}),
		SourceLabel: "VUnionDepth1_Any{F0: VArray1_String{\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VUnionDepth1_Any(VUnionDepth1_AnyF0{VArray1_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth2_VArray1_String{F0: {\"cdeΔΘΠΣΦ王普澤世\"}}",
		Target: VUnionDepth2_VArray1_String(VUnionDepth2_VArray1_StringF0{VArray1_String{
			"cdeΔΘΠΣΦ王普澤世",
		}}),
		SourceLabel: "VUnionDepth2_VArray1_String{F0: {\"cdeΔΘΠΣΦ王普澤世\"}}",
		Source: VUnionDepth2_VArray1_String(VUnionDepth2_VArray1_StringF0{VArray1_String{
			"cdeΔΘΠΣΦ王普澤世",
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth2_VArray1_String{F0: {\"cdeΔΘΠΣΦ王普澤世\"}}",
		Target: VUnionDepth2_VArray1_String(VUnionDepth2_VArray1_StringF0{VArray1_String{
			"cdeΔΘΠΣΦ王普澤世",
		}}),
		SourceLabel: "VUnionDepth2_All{F0: {\"cdeΔΘΠΣΦ王普澤世\"}}",
		Source: VUnionDepth2_All(VUnionDepth2_AllF0{VArray1_String{
			"cdeΔΘΠΣΦ王普澤世",
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VArray2_VByte{F1: \"\\x00\\x00\"}",
		Target:      VUnionDepth2_VArray2_VByte(VUnionDepth2_VArray2_VByteF1{}),
		SourceLabel: "VUnionDepth2_VArray2_VByte{F1: \"\\x00\\x00\"}",
		Source:      VUnionDepth2_VArray2_VByte(VUnionDepth2_VArray2_VByteF1{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VArray2_VByte{F1: \"\\x00\\x00\"}",
		Target:      VUnionDepth2_VArray2_VByte(VUnionDepth2_VArray2_VByteF1{}),
		SourceLabel: "VUnionDepth2_All{F1: \"\\x00\\x00\"}",
		Source:      VUnionDepth2_All(VUnionDepth2_AllF1{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth2_VArray2_VByte{F1: \"{{\"}",
		Target: VUnionDepth2_VArray2_VByte(VUnionDepth2_VArray2_VByteF1{VArray2_VByte{
			123,
			123,
		}}),
		SourceLabel: "VUnionDepth2_VArray2_VByte{F1: \"{{\"}",
		Source: VUnionDepth2_VArray2_VByte(VUnionDepth2_VArray2_VByteF1{VArray2_VByte{
			123,
			123,
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth2_VArray2_VByte{F1: \"{{\"}",
		Target: VUnionDepth2_VArray2_VByte(VUnionDepth2_VArray2_VByteF1{VArray2_VByte{
			123,
			123,
		}}),
		SourceLabel: "VUnionDepth2_All{F1: \"{{\"}",
		Source: VUnionDepth2_All(VUnionDepth2_AllF1{VArray2_VByte{
			123,
			123,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth2_VArray2_VByte{F1: \"f\\x00\"}",
		Target: VUnionDepth2_VArray2_VByte(VUnionDepth2_VArray2_VByteF1{VArray2_VByte{
			102,
			0,
		}}),
		SourceLabel: "VUnionDepth2_VArray2_VByte{F1: \"f\\x00\"}",
		Source: VUnionDepth2_VArray2_VByte(VUnionDepth2_VArray2_VByteF1{VArray2_VByte{
			102,
			0,
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth2_VArray2_VByte{F1: \"f\\x00\"}",
		Target: VUnionDepth2_VArray2_VByte(VUnionDepth2_VArray2_VByteF1{VArray2_VByte{
			102,
			0,
		}}),
		SourceLabel: "VUnionDepth2_All{F1: \"f\\x00\"}",
		Source: VUnionDepth2_All(VUnionDepth2_AllF1{VArray2_VByte{
			102,
			0,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VList_VByte{F2: \"\"}",
		Target:      VUnionDepth2_VList_VByte(VUnionDepth2_VList_VByteF2{}),
		SourceLabel: "VUnionDepth2_VList_VByte{F2: \"\"}",
		Source:      VUnionDepth2_VList_VByte(VUnionDepth2_VList_VByteF2{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VList_VByte{F2: \"\"}",
		Target:      VUnionDepth2_VList_VByte(VUnionDepth2_VList_VByteF2{}),
		SourceLabel: "VUnionDepth2_All{F2: \"\"}",
		Source:      VUnionDepth2_All(VUnionDepth2_AllF2{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth2_VList_VByte{F2: \"{\"}",
		Target:      VUnionDepth2_VList_VByte(VUnionDepth2_VList_VByteF2{VList_VByte("{")}),
		SourceLabel: "VUnionDepth2_VList_VByte{F2: \"{\"}",
		Source:      VUnionDepth2_VList_VByte(VUnionDepth2_VList_VByteF2{VList_VByte("{")}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth2_VList_VByte{F2: \"{\"}",
		Target:      VUnionDepth2_VList_VByte(VUnionDepth2_VList_VByteF2{VList_VByte("{")}),
		SourceLabel: "VUnionDepth2_All{F2: \"{\"}",
		Source:      VUnionDepth2_All(VUnionDepth2_AllF2{VList_VByte("{")}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth2_VList_VByte{F2: \"x\\x00\"}",
		Target:      VUnionDepth2_VList_VByte(VUnionDepth2_VList_VByteF2{VList_VByte("x\x00")}),
		SourceLabel: "VUnionDepth2_VList_VByte{F2: \"x\\x00\"}",
		Source:      VUnionDepth2_VList_VByte(VUnionDepth2_VList_VByteF2{VList_VByte("x\x00")}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth2_VList_VByte{F2: \"x\\x00\"}",
		Target:      VUnionDepth2_VList_VByte(VUnionDepth2_VList_VByteF2{VList_VByte("x\x00")}),
		SourceLabel: "VUnionDepth2_All{F2: \"x\\x00\"}",
		Source:      VUnionDepth2_All(VUnionDepth2_AllF2{VList_VByte("x\x00")}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VList_OptVNamedError{F3: {}}",
		Target:      VUnionDepth2_VList_OptVNamedError(VUnionDepth2_VList_OptVNamedErrorF3{}),
		SourceLabel: "VUnionDepth2_VList_OptVNamedError{F3: {}}",
		Source:      VUnionDepth2_VList_OptVNamedError(VUnionDepth2_VList_OptVNamedErrorF3{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VList_OptVNamedError{F3: {}}",
		Target:      VUnionDepth2_VList_OptVNamedError(VUnionDepth2_VList_OptVNamedErrorF3{}),
		SourceLabel: "VUnionDepth2_All{F3: {}}",
		Source:      VUnionDepth2_All(VUnionDepth2_AllF3{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth2_VList_OptVNamedError{F3: {{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VUnionDepth2_VList_OptVNamedError(VUnionDepth2_VList_OptVNamedErrorF3{VList_OptVNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		}}),
		SourceLabel: "VUnionDepth2_VList_OptVNamedError{F3: {{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VUnionDepth2_VList_OptVNamedError(VUnionDepth2_VList_OptVNamedErrorF3{VList_OptVNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth2_VList_OptVNamedError{F3: {{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VUnionDepth2_VList_OptVNamedError(VUnionDepth2_VList_OptVNamedErrorF3{VList_OptVNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		}}),
		SourceLabel: "VUnionDepth2_All{F3: {{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VUnionDepth2_All(VUnionDepth2_AllF3{VList_OptVNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth2_VList_OptVNamedError{F3: {{Msg: \"a\"}, {Id: \"ΔΘΠΣΦ王普澤世\", Msg: \"cdeΔΘΠΣΦ王普澤\"}, {Id: \"Φ王普\", Msg: \"deΔΘ\"}}}",
		Target: VUnionDepth2_VList_OptVNamedError(VUnionDepth2_VList_OptVNamedErrorF3{VList_OptVNamedError{
			{
				Msg: "a",
			},
			{
				Id:  "ΔΘΠΣΦ王普澤世",
				Msg: "cdeΔΘΠΣΦ王普澤",
			},
			{
				Id:  "Φ王普",
				Msg: "deΔΘ",
			},
		}}),
		SourceLabel: "VUnionDepth2_VList_OptVNamedError{F3: {{Msg: \"a\"}, {Id: \"ΔΘΠΣΦ王普澤世\", Msg: \"cdeΔΘΠΣΦ王普澤\"}, {Id: \"Φ王普\", Msg: \"deΔΘ\"}}}",
		Source: VUnionDepth2_VList_OptVNamedError(VUnionDepth2_VList_OptVNamedErrorF3{VList_OptVNamedError{
			{
				Msg: "a",
			},
			{
				Id:  "ΔΘΠΣΦ王普澤世",
				Msg: "cdeΔΘΠΣΦ王普澤",
			},
			{
				Id:  "Φ王普",
				Msg: "deΔΘ",
			},
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth2_VList_OptVNamedError{F3: {{Msg: \"a\"}, {Id: \"ΔΘΠΣΦ王普澤世\", Msg: \"cdeΔΘΠΣΦ王普澤\"}, {Id: \"Φ王普\", Msg: \"deΔΘ\"}}}",
		Target: VUnionDepth2_VList_OptVNamedError(VUnionDepth2_VList_OptVNamedErrorF3{VList_OptVNamedError{
			{
				Msg: "a",
			},
			{
				Id:  "ΔΘΠΣΦ王普澤世",
				Msg: "cdeΔΘΠΣΦ王普澤",
			},
			{
				Id:  "Φ王普",
				Msg: "deΔΘ",
			},
		}}),
		SourceLabel: "VUnionDepth2_All{F3: {{Msg: \"a\"}, {Id: \"ΔΘΠΣΦ王普澤世\", Msg: \"cdeΔΘΠΣΦ王普澤\"}, {Id: \"Φ王普\", Msg: \"deΔΘ\"}}}",
		Source: VUnionDepth2_All(VUnionDepth2_AllF3{VList_OptVNamedError{
			{
				Msg: "a",
			},
			{
				Id:  "ΔΘΠΣΦ王普澤世",
				Msg: "cdeΔΘΠΣΦ王普澤",
			},
			{
				Id:  "Φ王普",
				Msg: "deΔΘ",
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VSet_VBool{F4: {}}",
		Target:      VUnionDepth2_VSet_VBool(VUnionDepth2_VSet_VBoolF4{}),
		SourceLabel: "VUnionDepth2_VSet_VBool{F4: {}}",
		Source:      VUnionDepth2_VSet_VBool(VUnionDepth2_VSet_VBoolF4{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VSet_VBool{F4: {}}",
		Target:      VUnionDepth2_VSet_VBool(VUnionDepth2_VSet_VBoolF4{}),
		SourceLabel: "VUnionDepth2_All{F4: {}}",
		Source:      VUnionDepth2_All(VUnionDepth2_AllF4{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth2_VSet_VBool{F4: {true}}",
		Target: VUnionDepth2_VSet_VBool(VUnionDepth2_VSet_VBoolF4{VSet_VBool{
			true: struct{}{},
		}}),
		SourceLabel: "VUnionDepth2_VSet_VBool{F4: {true}}",
		Source: VUnionDepth2_VSet_VBool(VUnionDepth2_VSet_VBoolF4{VSet_VBool{
			true: struct{}{},
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth2_VSet_VBool{F4: {true}}",
		Target: VUnionDepth2_VSet_VBool(VUnionDepth2_VSet_VBoolF4{VSet_VBool{
			true: struct{}{},
		}}),
		SourceLabel: "VUnionDepth2_All{F4: {true}}",
		Source: VUnionDepth2_All(VUnionDepth2_AllF4{VSet_VBool{
			true: struct{}{},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VSet_VNamedError{F5: {}}",
		Target:      VUnionDepth2_VSet_VNamedError(VUnionDepth2_VSet_VNamedErrorF5{}),
		SourceLabel: "VUnionDepth2_VSet_VNamedError{F5: {}}",
		Source:      VUnionDepth2_VSet_VNamedError(VUnionDepth2_VSet_VNamedErrorF5{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VSet_VNamedError{F5: {}}",
		Target:      VUnionDepth2_VSet_VNamedError(VUnionDepth2_VSet_VNamedErrorF5{}),
		SourceLabel: "VUnionDepth2_All{F5: {}}",
		Source:      VUnionDepth2_All(VUnionDepth2_AllF5{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth2_VSet_VNamedError{F5: {{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VUnionDepth2_VSet_VNamedError(VUnionDepth2_VSet_VNamedErrorF5{VSet_VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		}}),
		SourceLabel: "VUnionDepth2_VSet_VNamedError{F5: {{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VUnionDepth2_VSet_VNamedError(VUnionDepth2_VSet_VNamedErrorF5{VSet_VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth2_VSet_VNamedError{F5: {{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VUnionDepth2_VSet_VNamedError(VUnionDepth2_VSet_VNamedErrorF5{VSet_VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		}}),
		SourceLabel: "VUnionDepth2_All{F5: {{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VUnionDepth2_All(VUnionDepth2_AllF5{VSet_VNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth2_VSet_VNamedError{F5: {{Id: \"ΘΠΣ\", Msg: \"ΠΣΦ王普澤\"}, {Id: \"Φ王\"}, {Id: \"王\", Msg: \"cdeΔΘ\"}}}",
		Target: VUnionDepth2_VSet_VNamedError(VUnionDepth2_VSet_VNamedErrorF5{VSet_VNamedError{
			{
				Id:  "ΘΠΣ",
				Msg: "ΠΣΦ王普澤",
			}: struct{}{},
			{
				Id: "Φ王",
			}: struct{}{},
			{
				Id:  "王",
				Msg: "cdeΔΘ",
			}: struct{}{},
		}}),
		SourceLabel: "VUnionDepth2_VSet_VNamedError{F5: {{Id: \"ΘΠΣ\", Msg: \"ΠΣΦ王普澤\"}, {Id: \"Φ王\"}, {Id: \"王\", Msg: \"cdeΔΘ\"}}}",
		Source: VUnionDepth2_VSet_VNamedError(VUnionDepth2_VSet_VNamedErrorF5{VSet_VNamedError{
			{
				Id:  "ΘΠΣ",
				Msg: "ΠΣΦ王普澤",
			}: struct{}{},
			{
				Id: "Φ王",
			}: struct{}{},
			{
				Id:  "王",
				Msg: "cdeΔΘ",
			}: struct{}{},
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth2_VSet_VNamedError{F5: {{Id: \"ΘΠΣ\", Msg: \"ΠΣΦ王普澤\"}, {Id: \"Φ王\"}, {Id: \"王\", Msg: \"cdeΔΘ\"}}}",
		Target: VUnionDepth2_VSet_VNamedError(VUnionDepth2_VSet_VNamedErrorF5{VSet_VNamedError{
			{
				Id:  "ΘΠΣ",
				Msg: "ΠΣΦ王普澤",
			}: struct{}{},
			{
				Id: "Φ王",
			}: struct{}{},
			{
				Id:  "王",
				Msg: "cdeΔΘ",
			}: struct{}{},
		}}),
		SourceLabel: "VUnionDepth2_All{F5: {{Id: \"ΘΠΣ\", Msg: \"ΠΣΦ王普澤\"}, {Id: \"Φ王\"}, {Id: \"王\", Msg: \"cdeΔΘ\"}}}",
		Source: VUnionDepth2_All(VUnionDepth2_AllF5{VSet_VNamedError{
			{
				Id:  "ΘΠΣ",
				Msg: "ΠΣΦ王普澤",
			}: struct{}{},
			{
				Id: "Φ王",
			}: struct{}{},
			{
				Id:  "王",
				Msg: "cdeΔΘ",
			}: struct{}{},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_Map_VBool_VBool{F6: {}}",
		Target:      VUnionDepth2_Map_VBool_VBool(VUnionDepth2_Map_VBool_VBoolF6{}),
		SourceLabel: "VUnionDepth2_Map_VBool_VBool{F6: {}}",
		Source:      VUnionDepth2_Map_VBool_VBool(VUnionDepth2_Map_VBool_VBoolF6{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_Map_VBool_VBool{F6: {}}",
		Target:      VUnionDepth2_Map_VBool_VBool(VUnionDepth2_Map_VBool_VBoolF6{}),
		SourceLabel: "VUnionDepth2_All{F6: {}}",
		Source:      VUnionDepth2_All(VUnionDepth2_AllF6{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth2_Map_VBool_VBool{F6: {true: true}}",
		Target: VUnionDepth2_Map_VBool_VBool(VUnionDepth2_Map_VBool_VBoolF6{map[VBool]VBool{
			true: true,
		}}),
		SourceLabel: "VUnionDepth2_Map_VBool_VBool{F6: {true: true}}",
		Source: VUnionDepth2_Map_VBool_VBool(VUnionDepth2_Map_VBool_VBoolF6{map[VBool]VBool{
			true: true,
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth2_Map_VBool_VBool{F6: {true: true}}",
		Target: VUnionDepth2_Map_VBool_VBool(VUnionDepth2_Map_VBool_VBoolF6{map[VBool]VBool{
			true: true,
		}}),
		SourceLabel: "VUnionDepth2_All{F6: {true: true}}",
		Source: VUnionDepth2_All(VUnionDepth2_AllF6{map[VBool]VBool{
			true: true,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VMap_VBool_VBool{F7: {}}",
		Target:      VUnionDepth2_VMap_VBool_VBool(VUnionDepth2_VMap_VBool_VBoolF7{}),
		SourceLabel: "VUnionDepth2_VMap_VBool_VBool{F7: {}}",
		Source:      VUnionDepth2_VMap_VBool_VBool(VUnionDepth2_VMap_VBool_VBoolF7{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VMap_VBool_VBool{F7: {}}",
		Target:      VUnionDepth2_VMap_VBool_VBool(VUnionDepth2_VMap_VBool_VBoolF7{}),
		SourceLabel: "VUnionDepth2_All{F7: {}}",
		Source:      VUnionDepth2_All(VUnionDepth2_AllF7{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth2_VMap_VBool_VBool{F7: {true: true}}",
		Target: VUnionDepth2_VMap_VBool_VBool(VUnionDepth2_VMap_VBool_VBoolF7{VMap_VBool_VBool{
			true: true,
		}}),
		SourceLabel: "VUnionDepth2_VMap_VBool_VBool{F7: {true: true}}",
		Source: VUnionDepth2_VMap_VBool_VBool(VUnionDepth2_VMap_VBool_VBoolF7{VMap_VBool_VBool{
			true: true,
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth2_VMap_VBool_VBool{F7: {true: true}}",
		Target: VUnionDepth2_VMap_VBool_VBool(VUnionDepth2_VMap_VBool_VBoolF7{VMap_VBool_VBool{
			true: true,
		}}),
		SourceLabel: "VUnionDepth2_All{F7: {true: true}}",
		Source: VUnionDepth2_All(VUnionDepth2_AllF7{VMap_VBool_VBool{
			true: true,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VStructDepth1_All{F8: {}}",
		Target: VUnionDepth2_VStructDepth1_All(VUnionDepth2_VStructDepth1_AllF8{VStructDepth1_All{
			F5: vdl.AnyType,
		}}),
		SourceLabel: "VUnionDepth2_VStructDepth1_All{F8: {}}",
		Source: VUnionDepth2_VStructDepth1_All(VUnionDepth2_VStructDepth1_AllF8{VStructDepth1_All{
			F5: vdl.AnyType,
		}}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VStructDepth1_All{F8: {}}",
		Target: VUnionDepth2_VStructDepth1_All(VUnionDepth2_VStructDepth1_AllF8{VStructDepth1_All{
			F5: vdl.AnyType,
		}}),
		SourceLabel: "VUnionDepth2_All{F8: {}}",
		Source: VUnionDepth2_All(VUnionDepth2_AllF8{VStructDepth1_All{
			F5: vdl.AnyType,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth2_VStructDepth1_All{F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VUnionDepth2_VStructDepth1_All(VUnionDepth2_VStructDepth1_AllF8{VStructDepth1_All{
			F0: int64(-123),
			F1: true,
			F2: true,
			F3: "abcdeΔΘΠΣΦ王普澤世界",
			F4: "abcdeΔΘΠΣΦ王普澤世界",
			F5: vdl.Int64Type,
			F6: 123,
			F7: 123,
			F8: VEnumAbcC,
			F9: VEnumBcdD,
			F11: VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			F12: verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
			F13: 123,
			F14: 123,
			F15: 123,
			F16: 123,
			F17: 123,
			F18: 123,
			F19: -123,
			F20: -123,
			F21: -123,
			F22: -123,
			F23: -123,
			F24: -123,
			F25: -123,
			F26: -123,
			F27: 1.5,
			F28: 1.5,
			F29: 1.5,
			F30: 1.5,
			F31: &VStructEmpty{},
			F32: &VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		}}),
		SourceLabel: "VUnionDepth2_VStructDepth1_All{F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VUnionDepth2_VStructDepth1_All(VUnionDepth2_VStructDepth1_AllF8{VStructDepth1_All{
			F0: int64(-123),
			F1: true,
			F2: true,
			F3: "abcdeΔΘΠΣΦ王普澤世界",
			F4: "abcdeΔΘΠΣΦ王普澤世界",
			F5: vdl.Int64Type,
			F6: 123,
			F7: 123,
			F8: VEnumAbcC,
			F9: VEnumBcdD,
			F11: VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			F12: verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
			F13: 123,
			F14: 123,
			F15: 123,
			F16: 123,
			F17: 123,
			F18: 123,
			F19: -123,
			F20: -123,
			F21: -123,
			F22: -123,
			F23: -123,
			F24: -123,
			F25: -123,
			F26: -123,
			F27: 1.5,
			F28: 1.5,
			F29: 1.5,
			F30: 1.5,
			F31: &VStructEmpty{},
			F32: &VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth2_VStructDepth1_All{F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VUnionDepth2_VStructDepth1_All(VUnionDepth2_VStructDepth1_AllF8{VStructDepth1_All{
			F0: int64(-123),
			F1: true,
			F2: true,
			F3: "abcdeΔΘΠΣΦ王普澤世界",
			F4: "abcdeΔΘΠΣΦ王普澤世界",
			F5: vdl.Int64Type,
			F6: 123,
			F7: 123,
			F8: VEnumAbcC,
			F9: VEnumBcdD,
			F11: VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			F12: verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
			F13: 123,
			F14: 123,
			F15: 123,
			F16: 123,
			F17: 123,
			F18: 123,
			F19: -123,
			F20: -123,
			F21: -123,
			F22: -123,
			F23: -123,
			F24: -123,
			F25: -123,
			F26: -123,
			F27: 1.5,
			F28: 1.5,
			F29: 1.5,
			F30: 1.5,
			F31: &VStructEmpty{},
			F32: &VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		}}),
		SourceLabel: "VUnionDepth2_All{F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VUnionDepth2_All(VUnionDepth2_AllF8{VStructDepth1_All{
			F0: int64(-123),
			F1: true,
			F2: true,
			F3: "abcdeΔΘΠΣΦ王普澤世界",
			F4: "abcdeΔΘΠΣΦ王普澤世界",
			F5: vdl.Int64Type,
			F6: 123,
			F7: 123,
			F8: VEnumAbcC,
			F9: VEnumBcdD,
			F11: VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			F12: verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
			F13: 123,
			F14: 123,
			F15: 123,
			F16: 123,
			F17: 123,
			F18: 123,
			F19: -123,
			F20: -123,
			F21: -123,
			F22: -123,
			F23: -123,
			F24: -123,
			F25: -123,
			F26: -123,
			F27: 1.5,
			F28: 1.5,
			F29: 1.5,
			F30: 1.5,
			F31: &VStructEmpty{},
			F32: &VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth2_VStructDepth1_All{F8: {F0: VArray2_VEnumBcd{C, B}, F1: true, F3: \"eΔΘΠΣΦ王普澤世\", F4: \"cdeΔΘ\", F5: typeobject(VSet_VUnionDepth2_VArray1_String), F7: 6, F8: C, F12: {Id: \"cdeΔ\", RetryCode: RetryConnection, Msg: \"deΔΘΠΣΦ\"}, F13: 23891, F15: 3966497812, F16: 1776609092, F17: 13618574075811312760, F18: 3727278410519680325, F19: 12, F20: -52, F21: 14009, F24: 494275561, F25: -1816504498055159389, F26: -3933236622138960557, F27: -1.6678742e+09, F28: -2.6545418e+09, F29: 1.6554808637707613e+09, F30: -3.9337784215193796e+08, F31: {}, F32: {Id: \"eΔΘΠΣΦ王\", Msg: \"b\"}}}",
		Target: VUnionDepth2_VStructDepth1_All(VUnionDepth2_VStructDepth1_AllF8{VStructDepth1_All{
			F0: VArray2_VEnumBcd{
				VEnumBcdC,
				VEnumBcdB,
			},
			F1: true,
			F3: "eΔΘΠΣΦ王普澤世",
			F4: "cdeΔΘ",
			F5: __VDLType_set_231,
			F7: 6,
			F8: VEnumAbcC,
			F12: verror.FromWire(&vdl.WireError{
				Id:        "cdeΔ",
				RetryCode: vdl.WireRetryCodeRetryConnection,
				Msg:       "deΔΘΠΣΦ",
			}),
			F13: 23891,
			F15: 3966497812,
			F16: 1776609092,
			F17: 13618574075811312760,
			F18: 3727278410519680325,
			F19: 12,
			F20: -52,
			F21: 14009,
			F24: 494275561,
			F25: -1816504498055159389,
			F26: -3933236622138960557,
			F27: -1.6678742e+09,
			F28: -2.6545418e+09,
			F29: 1.6554808637707613e+09,
			F30: -3.9337784215193796e+08,
			F31: &VStructEmpty{},
			F32: &VNamedError{
				Id:  "eΔΘΠΣΦ王",
				Msg: "b",
			},
		}}),
		SourceLabel: "VUnionDepth2_VStructDepth1_All{F8: {F0: VArray2_VEnumBcd{C, B}, F1: true, F3: \"eΔΘΠΣΦ王普澤世\", F4: \"cdeΔΘ\", F5: typeobject(VSet_VUnionDepth2_VArray1_String), F7: 6, F8: C, F12: {Id: \"cdeΔ\", RetryCode: RetryConnection, Msg: \"deΔΘΠΣΦ\"}, F13: 23891, F15: 3966497812, F16: 1776609092, F17: 13618574075811312760, F18: 3727278410519680325, F19: 12, F20: -52, F21: 14009, F24: 494275561, F25: -1816504498055159389, F26: -3933236622138960557, F27: -1.6678742e+09, F28: -2.6545418e+09, F29: 1.6554808637707613e+09, F30: -3.9337784215193796e+08, F31: {}, F32: {Id: \"eΔΘΠΣΦ王\", Msg: \"b\"}}}",
		Source: VUnionDepth2_VStructDepth1_All(VUnionDepth2_VStructDepth1_AllF8{VStructDepth1_All{
			F0: VArray2_VEnumBcd{
				VEnumBcdC,
				VEnumBcdB,
			},
			F1: true,
			F3: "eΔΘΠΣΦ王普澤世",
			F4: "cdeΔΘ",
			F5: __VDLType_set_231,
			F7: 6,
			F8: VEnumAbcC,
			F12: verror.FromWire(&vdl.WireError{
				Id:        "cdeΔ",
				RetryCode: vdl.WireRetryCodeRetryConnection,
				Msg:       "deΔΘΠΣΦ",
			}),
			F13: 23891,
			F15: 3966497812,
			F16: 1776609092,
			F17: 13618574075811312760,
			F18: 3727278410519680325,
			F19: 12,
			F20: -52,
			F21: 14009,
			F24: 494275561,
			F25: -1816504498055159389,
			F26: -3933236622138960557,
			F27: -1.6678742e+09,
			F28: -2.6545418e+09,
			F29: 1.6554808637707613e+09,
			F30: -3.9337784215193796e+08,
			F31: &VStructEmpty{},
			F32: &VNamedError{
				Id:  "eΔΘΠΣΦ王",
				Msg: "b",
			},
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth2_VStructDepth1_All{F8: {F0: VArray2_VEnumBcd{C, B}, F1: true, F3: \"eΔΘΠΣΦ王普澤世\", F4: \"cdeΔΘ\", F5: typeobject(VSet_VUnionDepth2_VArray1_String), F7: 6, F8: C, F12: {Id: \"cdeΔ\", RetryCode: RetryConnection, Msg: \"deΔΘΠΣΦ\"}, F13: 23891, F15: 3966497812, F16: 1776609092, F17: 13618574075811312760, F18: 3727278410519680325, F19: 12, F20: -52, F21: 14009, F24: 494275561, F25: -1816504498055159389, F26: -3933236622138960557, F27: -1.6678742e+09, F28: -2.6545418e+09, F29: 1.6554808637707613e+09, F30: -3.9337784215193796e+08, F31: {}, F32: {Id: \"eΔΘΠΣΦ王\", Msg: \"b\"}}}",
		Target: VUnionDepth2_VStructDepth1_All(VUnionDepth2_VStructDepth1_AllF8{VStructDepth1_All{
			F0: VArray2_VEnumBcd{
				VEnumBcdC,
				VEnumBcdB,
			},
			F1: true,
			F3: "eΔΘΠΣΦ王普澤世",
			F4: "cdeΔΘ",
			F5: __VDLType_set_231,
			F7: 6,
			F8: VEnumAbcC,
			F12: verror.FromWire(&vdl.WireError{
				Id:        "cdeΔ",
				RetryCode: vdl.WireRetryCodeRetryConnection,
				Msg:       "deΔΘΠΣΦ",
			}),
			F13: 23891,
			F15: 3966497812,
			F16: 1776609092,
			F17: 13618574075811312760,
			F18: 3727278410519680325,
			F19: 12,
			F20: -52,
			F21: 14009,
			F24: 494275561,
			F25: -1816504498055159389,
			F26: -3933236622138960557,
			F27: -1.6678742e+09,
			F28: -2.6545418e+09,
			F29: 1.6554808637707613e+09,
			F30: -3.9337784215193796e+08,
			F31: &VStructEmpty{},
			F32: &VNamedError{
				Id:  "eΔΘΠΣΦ王",
				Msg: "b",
			},
		}}),
		SourceLabel: "VUnionDepth2_All{F8: {F0: VArray2_VEnumBcd{C, B}, F1: true, F3: \"eΔΘΠΣΦ王普澤世\", F4: \"cdeΔΘ\", F5: typeobject(VSet_VUnionDepth2_VArray1_String), F7: 6, F8: C, F12: {Id: \"cdeΔ\", RetryCode: RetryConnection, Msg: \"deΔΘΠΣΦ\"}, F13: 23891, F15: 3966497812, F16: 1776609092, F17: 13618574075811312760, F18: 3727278410519680325, F19: 12, F20: -52, F21: 14009, F24: 494275561, F25: -1816504498055159389, F26: -3933236622138960557, F27: -1.6678742e+09, F28: -2.6545418e+09, F29: 1.6554808637707613e+09, F30: -3.9337784215193796e+08, F31: {}, F32: {Id: \"eΔΘΠΣΦ王\", Msg: \"b\"}}}",
		Source: VUnionDepth2_All(VUnionDepth2_AllF8{VStructDepth1_All{
			F0: VArray2_VEnumBcd{
				VEnumBcdC,
				VEnumBcdB,
			},
			F1: true,
			F3: "eΔΘΠΣΦ王普澤世",
			F4: "cdeΔΘ",
			F5: __VDLType_set_231,
			F7: 6,
			F8: VEnumAbcC,
			F12: verror.FromWire(&vdl.WireError{
				Id:        "cdeΔ",
				RetryCode: vdl.WireRetryCodeRetryConnection,
				Msg:       "deΔΘΠΣΦ",
			}),
			F13: 23891,
			F15: 3966497812,
			F16: 1776609092,
			F17: 13618574075811312760,
			F18: 3727278410519680325,
			F19: 12,
			F20: -52,
			F21: 14009,
			F24: 494275561,
			F25: -1816504498055159389,
			F26: -3933236622138960557,
			F27: -1.6678742e+09,
			F28: -2.6545418e+09,
			F29: 1.6554808637707613e+09,
			F30: -3.9337784215193796e+08,
			F31: &VStructEmpty{},
			F32: &VNamedError{
				Id:  "eΔΘΠΣΦ王",
				Msg: "b",
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VStructDepth1_Int8{F9: {}}",
		Target:      VUnionDepth2_VStructDepth1_Int8(VUnionDepth2_VStructDepth1_Int8F9{}),
		SourceLabel: "VUnionDepth2_VStructDepth1_Int8{F9: {}}",
		Source:      VUnionDepth2_VStructDepth1_Int8(VUnionDepth2_VStructDepth1_Int8F9{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VStructDepth1_Int8{F9: {}}",
		Target:      VUnionDepth2_VStructDepth1_Int8(VUnionDepth2_VStructDepth1_Int8F9{}),
		SourceLabel: "VUnionDepth2_All{F9: {}}",
		Source:      VUnionDepth2_All(VUnionDepth2_AllF9{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth2_VStructDepth1_Int8{F9: {F19: -123}}",
		Target: VUnionDepth2_VStructDepth1_Int8(VUnionDepth2_VStructDepth1_Int8F9{VStructDepth1_Int8{
			F19: -123,
		}}),
		SourceLabel: "VUnionDepth2_VStructDepth1_Int8{F9: {F19: -123}}",
		Source: VUnionDepth2_VStructDepth1_Int8(VUnionDepth2_VStructDepth1_Int8F9{VStructDepth1_Int8{
			F19: -123,
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth2_VStructDepth1_Int8{F9: {F19: -123}}",
		Target: VUnionDepth2_VStructDepth1_Int8(VUnionDepth2_VStructDepth1_Int8F9{VStructDepth1_Int8{
			F19: -123,
		}}),
		SourceLabel: "VUnionDepth2_All{F9: {F19: -123}}",
		Source: VUnionDepth2_All(VUnionDepth2_AllF9{VStructDepth1_Int8{
			F19: -123,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth2_VStructDepth1_Int8{F9: {F19: 45}}",
		Target: VUnionDepth2_VStructDepth1_Int8(VUnionDepth2_VStructDepth1_Int8F9{VStructDepth1_Int8{
			F19: 45,
		}}),
		SourceLabel: "VUnionDepth2_VStructDepth1_Int8{F9: {F19: 45}}",
		Source: VUnionDepth2_VStructDepth1_Int8(VUnionDepth2_VStructDepth1_Int8F9{VStructDepth1_Int8{
			F19: 45,
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth2_VStructDepth1_Int8{F9: {F19: 45}}",
		Target: VUnionDepth2_VStructDepth1_Int8(VUnionDepth2_VStructDepth1_Int8F9{VStructDepth1_Int8{
			F19: 45,
		}}),
		SourceLabel: "VUnionDepth2_All{F9: {F19: 45}}",
		Source: VUnionDepth2_All(VUnionDepth2_AllF9{VStructDepth1_Int8{
			F19: 45,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VUnionDepth1_All{F10: {F0: nil}}",
		Target:      VUnionDepth2_VUnionDepth1_All(VUnionDepth2_VUnionDepth1_AllF10{VUnionDepth1_AllF0{}}),
		SourceLabel: "VUnionDepth2_VUnionDepth1_All{F10: {F0: nil}}",
		Source:      VUnionDepth2_VUnionDepth1_All(VUnionDepth2_VUnionDepth1_AllF10{VUnionDepth1_AllF0{}}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VUnionDepth1_All{F10: {F0: nil}}",
		Target:      VUnionDepth2_VUnionDepth1_All(VUnionDepth2_VUnionDepth1_AllF10{VUnionDepth1_AllF0{}}),
		SourceLabel: "VUnionDepth2_All{F10: {F0: nil}}",
		Source:      VUnionDepth2_All(VUnionDepth2_AllF10{VUnionDepth1_AllF0{}}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth2_VUnionDepth1_All{F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VUnionDepth2_VUnionDepth1_All(VUnionDepth2_VUnionDepth1_AllF10{VUnionDepth1_AllF32{&VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}}),
		SourceLabel: "VUnionDepth2_VUnionDepth1_All{F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VUnionDepth2_VUnionDepth1_All(VUnionDepth2_VUnionDepth1_AllF10{VUnionDepth1_AllF32{&VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth2_VUnionDepth1_All{F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VUnionDepth2_VUnionDepth1_All(VUnionDepth2_VUnionDepth1_AllF10{VUnionDepth1_AllF32{&VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}}),
		SourceLabel: "VUnionDepth2_All{F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VUnionDepth2_All(VUnionDepth2_AllF10{VUnionDepth1_AllF32{&VNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth2_VUnionDepth1_All{F10: {F5: typeobject(error)}}",
		Target:      VUnionDepth2_VUnionDepth1_All(VUnionDepth2_VUnionDepth1_AllF10{VUnionDepth1_AllF5{vdl.ErrorType}}),
		SourceLabel: "VUnionDepth2_VUnionDepth1_All{F10: {F5: typeobject(error)}}",
		Source:      VUnionDepth2_VUnionDepth1_All(VUnionDepth2_VUnionDepth1_AllF10{VUnionDepth1_AllF5{vdl.ErrorType}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth2_VUnionDepth1_All{F10: {F5: typeobject(error)}}",
		Target:      VUnionDepth2_VUnionDepth1_All(VUnionDepth2_VUnionDepth1_AllF10{VUnionDepth1_AllF5{vdl.ErrorType}}),
		SourceLabel: "VUnionDepth2_All{F10: {F5: typeobject(error)}}",
		Source:      VUnionDepth2_All(VUnionDepth2_AllF10{VUnionDepth1_AllF5{vdl.ErrorType}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VUnionDepth1_VUint32{F11: {F16: 0}}",
		Target:      VUnionDepth2_VUnionDepth1_VUint32(VUnionDepth2_VUnionDepth1_VUint32F11{VUnionDepth1_VUint32F16{}}),
		SourceLabel: "VUnionDepth2_VUnionDepth1_VUint32{F11: {F16: 0}}",
		Source:      VUnionDepth2_VUnionDepth1_VUint32(VUnionDepth2_VUnionDepth1_VUint32F11{VUnionDepth1_VUint32F16{}}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_VUnionDepth1_VUint32{F11: {F16: 0}}",
		Target:      VUnionDepth2_VUnionDepth1_VUint32(VUnionDepth2_VUnionDepth1_VUint32F11{VUnionDepth1_VUint32F16{}}),
		SourceLabel: "VUnionDepth2_All{F11: {F16: 0}}",
		Source:      VUnionDepth2_All(VUnionDepth2_AllF11{VUnionDepth1_VUint32F16{}}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth2_VUnionDepth1_VUint32{F11: {F16: 123}}",
		Target:      VUnionDepth2_VUnionDepth1_VUint32(VUnionDepth2_VUnionDepth1_VUint32F11{VUnionDepth1_VUint32F16{123}}),
		SourceLabel: "VUnionDepth2_VUnionDepth1_VUint32{F11: {F16: 123}}",
		Source:      VUnionDepth2_VUnionDepth1_VUint32(VUnionDepth2_VUnionDepth1_VUint32F11{VUnionDepth1_VUint32F16{123}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth2_VUnionDepth1_VUint32{F11: {F16: 123}}",
		Target:      VUnionDepth2_VUnionDepth1_VUint32(VUnionDepth2_VUnionDepth1_VUint32F11{VUnionDepth1_VUint32F16{123}}),
		SourceLabel: "VUnionDepth2_All{F11: {F16: 123}}",
		Source:      VUnionDepth2_All(VUnionDepth2_AllF11{VUnionDepth1_VUint32F16{123}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth2_VUnionDepth1_VUint32{F11: {F16: 3089874748}}",
		Target:      VUnionDepth2_VUnionDepth1_VUint32(VUnionDepth2_VUnionDepth1_VUint32F11{VUnionDepth1_VUint32F16{3089874748}}),
		SourceLabel: "VUnionDepth2_VUnionDepth1_VUint32{F11: {F16: 3089874748}}",
		Source:      VUnionDepth2_VUnionDepth1_VUint32(VUnionDepth2_VUnionDepth1_VUint32F11{VUnionDepth1_VUint32F16{3089874748}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth2_VUnionDepth1_VUint32{F11: {F16: 3089874748}}",
		Target:      VUnionDepth2_VUnionDepth1_VUint32(VUnionDepth2_VUnionDepth1_VUint32F11{VUnionDepth1_VUint32F16{3089874748}}),
		SourceLabel: "VUnionDepth2_All{F11: {F16: 3089874748}}",
		Source:      VUnionDepth2_All(VUnionDepth2_AllF11{VUnionDepth1_VUint32F16{3089874748}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_OptVStructDepth1_VEnumBcd{F12: nil}",
		Target:      VUnionDepth2_OptVStructDepth1_VEnumBcd(VUnionDepth2_OptVStructDepth1_VEnumBcdF12{}),
		SourceLabel: "VUnionDepth2_OptVStructDepth1_VEnumBcd{F12: nil}",
		Source:      VUnionDepth2_OptVStructDepth1_VEnumBcd(VUnionDepth2_OptVStructDepth1_VEnumBcdF12{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_OptVStructDepth1_VEnumBcd{F12: nil}",
		Target:      VUnionDepth2_OptVStructDepth1_VEnumBcd(VUnionDepth2_OptVStructDepth1_VEnumBcdF12{}),
		SourceLabel: "VUnionDepth2_All{F12: nil}",
		Source:      VUnionDepth2_All(VUnionDepth2_AllF12{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth2_OptVStructDepth1_VEnumBcd{F12: {F9: D}}",
		Target: VUnionDepth2_OptVStructDepth1_VEnumBcd(VUnionDepth2_OptVStructDepth1_VEnumBcdF12{&VStructDepth1_VEnumBcd{
			F9: VEnumBcdD,
		}}),
		SourceLabel: "VUnionDepth2_OptVStructDepth1_VEnumBcd{F12: {F9: D}}",
		Source: VUnionDepth2_OptVStructDepth1_VEnumBcd(VUnionDepth2_OptVStructDepth1_VEnumBcdF12{&VStructDepth1_VEnumBcd{
			F9: VEnumBcdD,
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth2_OptVStructDepth1_VEnumBcd{F12: {F9: D}}",
		Target: VUnionDepth2_OptVStructDepth1_VEnumBcd(VUnionDepth2_OptVStructDepth1_VEnumBcdF12{&VStructDepth1_VEnumBcd{
			F9: VEnumBcdD,
		}}),
		SourceLabel: "VUnionDepth2_All{F12: {F9: D}}",
		Source: VUnionDepth2_All(VUnionDepth2_AllF12{&VStructDepth1_VEnumBcd{
			F9: VEnumBcdD,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_OptVStructDepth1_VFloat32{F13: nil}",
		Target:      VUnionDepth2_OptVStructDepth1_VFloat32(VUnionDepth2_OptVStructDepth1_VFloat32F13{}),
		SourceLabel: "VUnionDepth2_OptVStructDepth1_VFloat32{F13: nil}",
		Source:      VUnionDepth2_OptVStructDepth1_VFloat32(VUnionDepth2_OptVStructDepth1_VFloat32F13{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth2_OptVStructDepth1_VFloat32{F13: nil}",
		Target:      VUnionDepth2_OptVStructDepth1_VFloat32(VUnionDepth2_OptVStructDepth1_VFloat32F13{}),
		SourceLabel: "VUnionDepth2_All{F13: nil}",
		Source:      VUnionDepth2_All(VUnionDepth2_AllF13{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth2_OptVStructDepth1_VFloat32{F13: {F28: 1.5}}",
		Target: VUnionDepth2_OptVStructDepth1_VFloat32(VUnionDepth2_OptVStructDepth1_VFloat32F13{&VStructDepth1_VFloat32{
			F28: 1.5,
		}}),
		SourceLabel: "VUnionDepth2_OptVStructDepth1_VFloat32{F13: {F28: 1.5}}",
		Source: VUnionDepth2_OptVStructDepth1_VFloat32(VUnionDepth2_OptVStructDepth1_VFloat32F13{&VStructDepth1_VFloat32{
			F28: 1.5,
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth2_OptVStructDepth1_VFloat32{F13: {F28: 1.5}}",
		Target: VUnionDepth2_OptVStructDepth1_VFloat32(VUnionDepth2_OptVStructDepth1_VFloat32F13{&VStructDepth1_VFloat32{
			F28: 1.5,
		}}),
		SourceLabel: "VUnionDepth2_All{F13: {F28: 1.5}}",
		Source: VUnionDepth2_All(VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
			F28: 1.5,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth2_OptVStructDepth1_VFloat32{F13: {}}",
		Target:      VUnionDepth2_OptVStructDepth1_VFloat32(VUnionDepth2_OptVStructDepth1_VFloat32F13{&VStructDepth1_VFloat32{}}),
		SourceLabel: "VUnionDepth2_OptVStructDepth1_VFloat32{F13: {}}",
		Source:      VUnionDepth2_OptVStructDepth1_VFloat32(VUnionDepth2_OptVStructDepth1_VFloat32F13{&VStructDepth1_VFloat32{}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth2_OptVStructDepth1_VFloat32{F13: {}}",
		Target:      VUnionDepth2_OptVStructDepth1_VFloat32(VUnionDepth2_OptVStructDepth1_VFloat32F13{&VStructDepth1_VFloat32{}}),
		SourceLabel: "VUnionDepth2_All{F13: {}}",
		Source:      VUnionDepth2_All(VUnionDepth2_AllF13{&VStructDepth1_VFloat32{}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "?VStructDepth2_Set_Float64(nil)",
		Target:      (*VStructDepth2_Set_Float64)(nil),
		SourceLabel: "?VStructDepth2_Set_Float64(nil)",
		Source:      (*VStructDepth2_Set_Float64)(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "?VStructDepth2_Set_Float64(nil)",
		Target:      (*VStructDepth2_Set_Float64)(nil),
		SourceLabel: "?VStructEmpty(nil)",
		Source:      (*VStructEmpty)(nil),
	},
	{
		Label:       "NilAny",
		TargetLabel: "?VStructDepth2_Set_Float64(nil)",
		Target:      (*VStructDepth2_Set_Float64)(nil),
		SourceLabel: "any(nil)",
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "?VStructDepth2_Set_Float64{F4: {1.5}}",
		Target: &VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		},
		SourceLabel: "?VStructDepth2_Set_Float64{F4: {1.5}}",
		Source: &VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "?VStructDepth2_Set_Float64{F4: {1.5}}",
		Target: &VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		},
		SourceLabel: "VStructDepth2_All{F4: {1.5}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "?VStructDepth2_Set_Float64{F4: {-3.1238010423222246e+09, -4.0248753351471043e+09}}",
		Target: &VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				-3.1238010423222246e+09: struct{}{},
				-4.0248753351471043e+09: struct{}{},
			},
		},
		SourceLabel: "?VStructDepth2_Set_Float64{F4: {-3.1238010423222246e+09, -4.0248753351471043e+09}}",
		Source: &VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				-3.1238010423222246e+09: struct{}{},
				-4.0248753351471043e+09: struct{}{},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "?VStructDepth2_Set_Float64{F4: {-3.1238010423222246e+09, -4.0248753351471043e+09}}",
		Target: &VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				-3.1238010423222246e+09: struct{}{},
				-4.0248753351471043e+09: struct{}{},
			},
		},
		SourceLabel: "VStructDepth2_All{F4: {-3.1238010423222246e+09, -4.0248753351471043e+09}}",
		Source: VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F4: map[float64]struct{}{
				-3.1238010423222246e+09: struct{}{},
				-4.0248753351471043e+09: struct{}{},
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray1_VArray1_VList_Byte{}",
		Target:      VArray1_VArray1_VList_Byte{},
		SourceLabel: "VArray1_VArray1_VList_Byte{}",
		Source:      VArray1_VArray1_VList_Byte{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray1_VArray1_VList_Byte{}",
		Target:      VArray1_VArray1_VList_Byte{},
		SourceLabel: "VList_Any{VArray1_VList_Byte{}}",
		Source: VList_Any{
			VArray1_VList_Byte{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray1_VArray1_VList_Byte{}",
		Target:      VArray1_VArray1_VList_Byte{},
		SourceLabel: "[]any{VArray1_VList_Byte{}}",
		Source: []interface{}{
			VArray1_VList_Byte{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray1_VArray1_VList_Byte{{\"{\"}}",
		Target: VArray1_VArray1_VList_Byte{
			{
				VList_Byte("{"),
			},
		},
		SourceLabel: "VArray1_VArray1_VList_Byte{{\"{\"}}",
		Source: VArray1_VArray1_VList_Byte{
			{
				VList_Byte("{"),
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray1_VArray1_VList_Byte{{\"{\"}}",
		Target: VArray1_VArray1_VList_Byte{
			{
				VList_Byte("{"),
			},
		},
		SourceLabel: "[]any{VArray1_VList_Byte{\"{\"}}",
		Source: []interface{}{
			VArray1_VList_Byte{
				VList_Byte("{"),
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray1_VArray1_VList_Byte{{\"\\xb8\\xb6\\x00\"}}",
		Target: VArray1_VArray1_VList_Byte{
			{
				VList_Byte("\xb8\xb6\x00"),
			},
		},
		SourceLabel: "VArray1_VArray1_VList_Byte{{\"\\xb8\\xb6\\x00\"}}",
		Source: VArray1_VArray1_VList_Byte{
			{
				VList_Byte("\xb8\xb6\x00"),
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray1_VArray1_VList_Byte{{\"\\xb8\\xb6\\x00\"}}",
		Target: VArray1_VArray1_VList_Byte{
			{
				VList_Byte("\xb8\xb6\x00"),
			},
		},
		SourceLabel: "[]any{VArray1_VList_Byte{\"\\xb8\\xb6\\x00\"}}",
		Source: []interface{}{
			VArray1_VList_Byte{
				VList_Byte("\xb8\xb6\x00"),
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray2_List_VMap_VByte_VByte{}",
		Target:      VArray2_List_VMap_VByte_VByte{},
		SourceLabel: "VArray2_List_VMap_VByte_VByte{}",
		Source:      VArray2_List_VMap_VByte_VByte{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray2_List_VMap_VByte_VByte{}",
		Target:      VArray2_List_VMap_VByte_VByte{},
		SourceLabel: "VList_Any{[]VMap_VByte_VByte{}, []VMap_VByte_VByte{}}",
		Source: VList_Any{
			[]VMap_VByte_VByte(nil),
			[]VMap_VByte_VByte(nil),
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray2_List_VMap_VByte_VByte{}",
		Target:      VArray2_List_VMap_VByte_VByte{},
		SourceLabel: "VList_List_VMap_VByte_VByte{{}, {}}",
		Source: VList_List_VMap_VByte_VByte{
			nil,
			nil,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray2_List_VMap_VByte_VByte{{{123: 123}}, {{123: 123}}}",
		Target: VArray2_List_VMap_VByte_VByte{
			{
				{
					123: 123,
				},
			},
			{
				{
					123: 123,
				},
			},
		},
		SourceLabel: "VArray2_List_VMap_VByte_VByte{{{123: 123}}, {{123: 123}}}",
		Source: VArray2_List_VMap_VByte_VByte{
			{
				{
					123: 123,
				},
			},
			{
				{
					123: 123,
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray2_List_VMap_VByte_VByte{{{123: 123}}, {{123: 123}}}",
		Target: VArray2_List_VMap_VByte_VByte{
			{
				{
					123: 123,
				},
			},
			{
				{
					123: 123,
				},
			},
		},
		SourceLabel: "[]any{[]VMap_VByte_VByte{{123: 123}}, []VMap_VByte_VByte{{123: 123}}}",
		Source: []interface{}{
			[]VMap_VByte_VByte{
				{
					123: 123,
				},
			},
			[]VMap_VByte_VByte{
				{
					123: 123,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray2_List_VMap_VByte_VByte{{{95: 34}, {0: 0}, {0: 217, 73: 212}}, {{18: 76, 189: 147, 232: 89}}}",
		Target: VArray2_List_VMap_VByte_VByte{
			{
				{
					95: 34,
				},
				{
					0: 0,
				},
				{
					0:  217,
					73: 212,
				},
			},
			{
				{
					18:  76,
					189: 147,
					232: 89,
				},
			},
		},
		SourceLabel: "VArray2_List_VMap_VByte_VByte{{{95: 34}, {0: 0}, {0: 217, 73: 212}}, {{18: 76, 189: 147, 232: 89}}}",
		Source: VArray2_List_VMap_VByte_VByte{
			{
				{
					95: 34,
				},
				{
					0: 0,
				},
				{
					0:  217,
					73: 212,
				},
			},
			{
				{
					18:  76,
					189: 147,
					232: 89,
				},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray2_List_VMap_VByte_VByte{{{95: 34}, {0: 0}, {0: 217, 73: 212}}, {{18: 76, 189: 147, 232: 89}}}",
		Target: VArray2_List_VMap_VByte_VByte{
			{
				{
					95: 34,
				},
				{
					0: 0,
				},
				{
					0:  217,
					73: 212,
				},
			},
			{
				{
					18:  76,
					189: 147,
					232: 89,
				},
			},
		},
		SourceLabel: "VList_List_VMap_VByte_VByte{{{95: 34}, {0: 0}, {0: 217, 73: 212}}, {{18: 76, 189: 147, 232: 89}}}",
		Source: VList_List_VMap_VByte_VByte{
			{
				{
					95: 34,
				},
				{
					0: 0,
				},
				{
					0:  217,
					73: 212,
				},
			},
			{
				{
					18:  76,
					189: 147,
					232: 89,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray2_Set_VUnionDepth1_VNamedError{}",
		Target:      VArray2_Set_VUnionDepth1_VNamedError{},
		SourceLabel: "VArray2_Set_VUnionDepth1_VNamedError{}",
		Source:      VArray2_Set_VUnionDepth1_VNamedError{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray2_Set_VUnionDepth1_VNamedError{}",
		Target:      VArray2_Set_VUnionDepth1_VNamedError{},
		SourceLabel: "VList_Any{set[VUnionDepth1_VNamedError]{}, set[VUnionDepth1_VNamedError]{}}",
		Source: VList_Any{
			map[VUnionDepth1_VNamedError]struct{}(nil),
			map[VUnionDepth1_VNamedError]struct{}(nil),
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray2_Set_VUnionDepth1_VNamedError{}",
		Target:      VArray2_Set_VUnionDepth1_VNamedError{},
		SourceLabel: "[]any{set[VUnionDepth1_VNamedError]{}, set[VUnionDepth1_VNamedError]{}}",
		Source: []interface{}{
			map[VUnionDepth1_VNamedError]struct{}(nil),
			map[VUnionDepth1_VNamedError]struct{}(nil),
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray2_Set_VUnionDepth1_VNamedError{{{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}, {{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Target: VArray2_Set_VUnionDepth1_VNamedError{
			{
				VUnionDepth1_VNamedErrorF11{VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}}: struct{}{},
			},
			{
				VUnionDepth1_VNamedErrorF11{VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}}: struct{}{},
			},
		},
		SourceLabel: "VArray2_Set_VUnionDepth1_VNamedError{{{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}, {{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Source: VArray2_Set_VUnionDepth1_VNamedError{
			{
				VUnionDepth1_VNamedErrorF11{VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}}: struct{}{},
			},
			{
				VUnionDepth1_VNamedErrorF11{VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}}: struct{}{},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray2_Set_VUnionDepth1_VNamedError{{{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}, {{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Target: VArray2_Set_VUnionDepth1_VNamedError{
			{
				VUnionDepth1_VNamedErrorF11{VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}}: struct{}{},
			},
			{
				VUnionDepth1_VNamedErrorF11{VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}}: struct{}{},
			},
		},
		SourceLabel: "VList_Any{set[VUnionDepth1_VNamedError]{{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}, set[VUnionDepth1_VNamedError]{{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Source: VList_Any{
			map[VUnionDepth1_VNamedError]struct{}{
				VUnionDepth1_VNamedErrorF11{VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}}: struct{}{},
			},
			map[VUnionDepth1_VNamedError]struct{}{
				VUnionDepth1_VNamedErrorF11{VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}}: struct{}{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray2_Set_VUnionDepth1_VNamedError{{{F11: {}}, {F11: {Msg: \"bcd\"}}, {F11: {Id: \"Π\", Msg: \"deΔΘΠΣ\"}}}, {{F11: {Id: \"普澤\", Msg: \"ΠΣ\"}}}}",
		Target: VArray2_Set_VUnionDepth1_VNamedError{
			{
				VUnionDepth1_VNamedErrorF11{}: struct{}{},
				VUnionDepth1_VNamedErrorF11{VNamedError{
					Msg: "bcd",
				}}: struct{}{},
				VUnionDepth1_VNamedErrorF11{VNamedError{
					Id:  "Π",
					Msg: "deΔΘΠΣ",
				}}: struct{}{},
			},
			{
				VUnionDepth1_VNamedErrorF11{VNamedError{
					Id:  "普澤",
					Msg: "ΠΣ",
				}}: struct{}{},
			},
		},
		SourceLabel: "VArray2_Set_VUnionDepth1_VNamedError{{{F11: {}}, {F11: {Msg: \"bcd\"}}, {F11: {Id: \"Π\", Msg: \"deΔΘΠΣ\"}}}, {{F11: {Id: \"普澤\", Msg: \"ΠΣ\"}}}}",
		Source: VArray2_Set_VUnionDepth1_VNamedError{
			{
				VUnionDepth1_VNamedErrorF11{}: struct{}{},
				VUnionDepth1_VNamedErrorF11{VNamedError{
					Msg: "bcd",
				}}: struct{}{},
				VUnionDepth1_VNamedErrorF11{VNamedError{
					Id:  "Π",
					Msg: "deΔΘΠΣ",
				}}: struct{}{},
			},
			{
				VUnionDepth1_VNamedErrorF11{VNamedError{
					Id:  "普澤",
					Msg: "ΠΣ",
				}}: struct{}{},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray2_Set_VUnionDepth1_VNamedError{{{F11: {}}, {F11: {Msg: \"bcd\"}}, {F11: {Id: \"Π\", Msg: \"deΔΘΠΣ\"}}}, {{F11: {Id: \"普澤\", Msg: \"ΠΣ\"}}}}",
		Target: VArray2_Set_VUnionDepth1_VNamedError{
			{
				VUnionDepth1_VNamedErrorF11{}: struct{}{},
				VUnionDepth1_VNamedErrorF11{VNamedError{
					Msg: "bcd",
				}}: struct{}{},
				VUnionDepth1_VNamedErrorF11{VNamedError{
					Id:  "Π",
					Msg: "deΔΘΠΣ",
				}}: struct{}{},
			},
			{
				VUnionDepth1_VNamedErrorF11{VNamedError{
					Id:  "普澤",
					Msg: "ΠΣ",
				}}: struct{}{},
			},
		},
		SourceLabel: "VList_Any{set[VUnionDepth1_VNamedError]{{F11: {}}, {F11: {Msg: \"bcd\"}}, {F11: {Id: \"Π\", Msg: \"deΔΘΠΣ\"}}}, set[VUnionDepth1_VNamedError]{{F11: {Id: \"普澤\", Msg: \"ΠΣ\"}}}}",
		Source: VList_Any{
			map[VUnionDepth1_VNamedError]struct{}{
				VUnionDepth1_VNamedErrorF11{}: struct{}{},
				VUnionDepth1_VNamedErrorF11{VNamedError{
					Msg: "bcd",
				}}: struct{}{},
				VUnionDepth1_VNamedErrorF11{VNamedError{
					Id:  "Π",
					Msg: "deΔΘΠΣ",
				}}: struct{}{},
			},
			map[VUnionDepth1_VNamedError]struct{}{
				VUnionDepth1_VNamedErrorF11{VNamedError{
					Id:  "普澤",
					Msg: "ΠΣ",
				}}: struct{}{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{}",
		Target:      VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{},
		SourceLabel: "VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{}",
		Source:      VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{}",
		Target:      VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{},
		SourceLabel: "VList_Any{map[VUnionDepth1_Float64]VUnionDepth1_Float64{}, map[VUnionDepth1_Float64]VUnionDepth1_Float64{}, map[VUnionDepth1_Float64]VUnionDepth1_Float64{}}",
		Source: VList_Any{
			map[VUnionDepth1_Float64]VUnionDepth1_Float64(nil),
			map[VUnionDepth1_Float64]VUnionDepth1_Float64(nil),
			map[VUnionDepth1_Float64]VUnionDepth1_Float64(nil),
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{}",
		Target:      VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{},
		SourceLabel: "VArray3_Any{map[VUnionDepth1_Float64]VUnionDepth1_Float64{}, map[VUnionDepth1_Float64]VUnionDepth1_Float64{}, map[VUnionDepth1_Float64]VUnionDepth1_Float64{}}",
		Source: VArray3_Any{
			map[VUnionDepth1_Float64]VUnionDepth1_Float64(nil),
			map[VUnionDepth1_Float64]VUnionDepth1_Float64(nil),
			map[VUnionDepth1_Float64]VUnionDepth1_Float64(nil),
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{{{F29: 1.5}: {F29: 1.5}}, {{F29: 1.5}: {F29: 1.5}}, {{F29: 1.5}: {F29: 1.5}}}",
		Target: VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{
			{
				VUnionDepth1_Float64F29{1.5}: VUnionDepth1_Float64F29{1.5},
			},
			{
				VUnionDepth1_Float64F29{1.5}: VUnionDepth1_Float64F29{1.5},
			},
			{
				VUnionDepth1_Float64F29{1.5}: VUnionDepth1_Float64F29{1.5},
			},
		},
		SourceLabel: "VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{{{F29: 1.5}: {F29: 1.5}}, {{F29: 1.5}: {F29: 1.5}}, {{F29: 1.5}: {F29: 1.5}}}",
		Source: VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{
			{
				VUnionDepth1_Float64F29{1.5}: VUnionDepth1_Float64F29{1.5},
			},
			{
				VUnionDepth1_Float64F29{1.5}: VUnionDepth1_Float64F29{1.5},
			},
			{
				VUnionDepth1_Float64F29{1.5}: VUnionDepth1_Float64F29{1.5},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{{{F29: 1.5}: {F29: 1.5}}, {{F29: 1.5}: {F29: 1.5}}, {{F29: 1.5}: {F29: 1.5}}}",
		Target: VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{
			{
				VUnionDepth1_Float64F29{1.5}: VUnionDepth1_Float64F29{1.5},
			},
			{
				VUnionDepth1_Float64F29{1.5}: VUnionDepth1_Float64F29{1.5},
			},
			{
				VUnionDepth1_Float64F29{1.5}: VUnionDepth1_Float64F29{1.5},
			},
		},
		SourceLabel: "[]any{map[VUnionDepth1_Float64]VUnionDepth1_Float64{{F29: 1.5}: {F29: 1.5}}, map[VUnionDepth1_Float64]VUnionDepth1_Float64{{F29: 1.5}: {F29: 1.5}}, map[VUnionDepth1_Float64]VUnionDepth1_Float64{{F29: 1.5}: {F29: 1.5}}}",
		Source: []interface{}{
			map[VUnionDepth1_Float64]VUnionDepth1_Float64{
				VUnionDepth1_Float64F29{1.5}: VUnionDepth1_Float64F29{1.5},
			},
			map[VUnionDepth1_Float64]VUnionDepth1_Float64{
				VUnionDepth1_Float64F29{1.5}: VUnionDepth1_Float64F29{1.5},
			},
			map[VUnionDepth1_Float64]VUnionDepth1_Float64{
				VUnionDepth1_Float64F29{1.5}: VUnionDepth1_Float64F29{1.5},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{{{F29: -1.6468979428598511e+09}: {F29: -2.5780915586736135e+09}, {F29: -2.873526404870196e+08}: {F29: -1.8274420093700492e+09}, {F29: -3.4188200611970117e+06}: {F29: 1.2474770726776407e+09}}, {}, {{F29: -5.75457527128432e+08}: {F29: -8.410893761115919e+08}, {F29: 0}: {F29: 0}}}",
		Target: VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{
			{
				VUnionDepth1_Float64F29{-1.6468979428598511e+09}: VUnionDepth1_Float64F29{-2.5780915586736135e+09},
				VUnionDepth1_Float64F29{-2.873526404870196e+08}:  VUnionDepth1_Float64F29{-1.8274420093700492e+09},
				VUnionDepth1_Float64F29{-3.4188200611970117e+06}: VUnionDepth1_Float64F29{1.2474770726776407e+09},
			},
			nil,
			{
				VUnionDepth1_Float64F29{-5.75457527128432e+08}: VUnionDepth1_Float64F29{-8.410893761115919e+08},
				VUnionDepth1_Float64F29{}:                      VUnionDepth1_Float64F29{},
			},
		},
		SourceLabel: "VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{{{F29: -1.6468979428598511e+09}: {F29: -2.5780915586736135e+09}, {F29: -2.873526404870196e+08}: {F29: -1.8274420093700492e+09}, {F29: -3.4188200611970117e+06}: {F29: 1.2474770726776407e+09}}, {}, {{F29: -5.75457527128432e+08}: {F29: -8.410893761115919e+08}, {F29: 0}: {F29: 0}}}",
		Source: VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{
			{
				VUnionDepth1_Float64F29{-1.6468979428598511e+09}: VUnionDepth1_Float64F29{-2.5780915586736135e+09},
				VUnionDepth1_Float64F29{-2.873526404870196e+08}:  VUnionDepth1_Float64F29{-1.8274420093700492e+09},
				VUnionDepth1_Float64F29{-3.4188200611970117e+06}: VUnionDepth1_Float64F29{1.2474770726776407e+09},
			},
			nil,
			{
				VUnionDepth1_Float64F29{-5.75457527128432e+08}: VUnionDepth1_Float64F29{-8.410893761115919e+08},
				VUnionDepth1_Float64F29{}:                      VUnionDepth1_Float64F29{},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{{{F29: -1.6468979428598511e+09}: {F29: -2.5780915586736135e+09}, {F29: -2.873526404870196e+08}: {F29: -1.8274420093700492e+09}, {F29: -3.4188200611970117e+06}: {F29: 1.2474770726776407e+09}}, {}, {{F29: -5.75457527128432e+08}: {F29: -8.410893761115919e+08}, {F29: 0}: {F29: 0}}}",
		Target: VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{
			{
				VUnionDepth1_Float64F29{-1.6468979428598511e+09}: VUnionDepth1_Float64F29{-2.5780915586736135e+09},
				VUnionDepth1_Float64F29{-2.873526404870196e+08}:  VUnionDepth1_Float64F29{-1.8274420093700492e+09},
				VUnionDepth1_Float64F29{-3.4188200611970117e+06}: VUnionDepth1_Float64F29{1.2474770726776407e+09},
			},
			nil,
			{
				VUnionDepth1_Float64F29{-5.75457527128432e+08}: VUnionDepth1_Float64F29{-8.410893761115919e+08},
				VUnionDepth1_Float64F29{}:                      VUnionDepth1_Float64F29{},
			},
		},
		SourceLabel: "VList_Any{map[VUnionDepth1_Float64]VUnionDepth1_Float64{{F29: -1.6468979428598511e+09}: {F29: -2.5780915586736135e+09}, {F29: -2.873526404870196e+08}: {F29: -1.8274420093700492e+09}, {F29: -3.4188200611970117e+06}: {F29: 1.2474770726776407e+09}}, map[VUnionDepth1_Float64]VUnionDepth1_Float64{}, map[VUnionDepth1_Float64]VUnionDepth1_Float64{{F29: -5.75457527128432e+08}: {F29: -8.410893761115919e+08}, {F29: 0}: {F29: 0}}}",
		Source: VList_Any{
			map[VUnionDepth1_Float64]VUnionDepth1_Float64{
				VUnionDepth1_Float64F29{-1.6468979428598511e+09}: VUnionDepth1_Float64F29{-2.5780915586736135e+09},
				VUnionDepth1_Float64F29{-2.873526404870196e+08}:  VUnionDepth1_Float64F29{-1.8274420093700492e+09},
				VUnionDepth1_Float64F29{-3.4188200611970117e+06}: VUnionDepth1_Float64F29{1.2474770726776407e+09},
			},
			map[VUnionDepth1_Float64]VUnionDepth1_Float64(nil),
			map[VUnionDepth1_Float64]VUnionDepth1_Float64{
				VUnionDepth1_Float64F29{-5.75457527128432e+08}: VUnionDepth1_Float64F29{-8.410893761115919e+08},
				VUnionDepth1_Float64F29{}:                      VUnionDepth1_Float64F29{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray2_VStructDepth2_All{}",
		Target: VArray2_VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
		},
		SourceLabel: "VArray2_VStructDepth2_All{}",
		Source: VArray2_VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray2_VStructDepth2_All{}",
		Target: VArray2_VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
		},
		SourceLabel: "VList_Any{VStructDepth2_All{}, VStructDepth2_All{}}",
		Source: VList_Any{
			VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray2_VStructDepth2_All{}",
		Target: VArray2_VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
		},
		SourceLabel: "[]?VStructEmpty{{}, {}}",
		Source: []*VStructEmpty{
			{},
			{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray2_VStructDepth2_All{{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}, {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Target: VArray2_VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: VArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: VList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: VStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: VEnumAbcC,
					F9: VEnumBcdD,
					F11: VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: VUnionDepth1_Float64F29{1.5},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 123,
				},
			},
			{
				F0: VArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: VArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: VList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: VStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: VEnumAbcC,
					F9: VEnumBcdD,
					F11: VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: VUnionDepth1_Float64F29{1.5},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 123,
				},
			},
		},
		SourceLabel: "VArray2_VStructDepth2_All{{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}, {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Source: VArray2_VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: VArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: VList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: VStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: VEnumAbcC,
					F9: VEnumBcdD,
					F11: VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: VUnionDepth1_Float64F29{1.5},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 123,
				},
			},
			{
				F0: VArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: VArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: VList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: VStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: VEnumAbcC,
					F9: VEnumBcdD,
					F11: VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: VUnionDepth1_Float64F29{1.5},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 123,
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray2_VStructDepth2_All{{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}, {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Target: VArray2_VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: VArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: VList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: VStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: VEnumAbcC,
					F9: VEnumBcdD,
					F11: VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: VUnionDepth1_Float64F29{1.5},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 123,
				},
			},
			{
				F0: VArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: VArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: VList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: VStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: VEnumAbcC,
					F9: VEnumBcdD,
					F11: VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: VUnionDepth1_Float64F29{1.5},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 123,
				},
			},
		},
		SourceLabel: "[]VStructDepth2_All{{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}, {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Source: []VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: VArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: VList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: VStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: VEnumAbcC,
					F9: VEnumBcdD,
					F11: VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: VUnionDepth1_Float64F29{1.5},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 123,
				},
			},
			{
				F0: VArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: VArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: VList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: VStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: VEnumAbcC,
					F9: VEnumBcdD,
					F11: VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: VUnionDepth1_Float64F29{1.5},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 123,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray2_VStructDepth2_All{{F0: {typeobject(VList_VSet_VArray1_VStructEmpty), typeobject(VArray3_Any)}, F2: {-8235, 10234, 0}, F3: {nil}, F4: {-3.940977071572917e+08, -5.0264640947262836e+08, 1.0200576920401574e+09}, F5: {D}, F7: {399892036: 1455005223}, F10: {F8: B}, F12: {F9: C}, F13: {F14: 28607}}, {F0: {typeobject(VSet_VEnumAbc), typeobject(VMap_VStructDepth1_VBool_VStructDepth1_VBool)}, F3: {VList_VEnumAbc{B}, VUnionDepth3_VStructDepth2_All{F4: {F1: {1742515881}, F2: {-3208, 4947}, F3: {nil, VUnionDepth1_VString{F4: \"ΔΘΠ\"}, nil}, F4: {-2.1807296293246665e+09}, F5: {B, D}, F7: {0: 4253130263, 1886998534: 3899331238}, F8: {F0: VUint16(14541), F4: \"eΔ\", F5: typeobject(VUnionDepth1_Any), F6: 218, F7: 194, F8: B, F9: D, F11: {Id: \"ΘΠΣΦ王普\", Msg: \"abcde\"}, F12: {Id: \"abcdeΔΘ\", RetryCode: RetryBackoff}, F13: 8041, F14: 60257, F15: 4214271556, F16: 2504482528, F17: 13461755490177698188, F18: 16865746146084059053, F19: 1, F20: -32, F22: 10940, F23: -735974144, F24: 800707543, F26: 73919714829649871, F27: 1.0520115e+08, F28: 1.1381097e+09, F30: -2.251978035297538e+08, F31: {}, F32: {Id: \"d\", Msg: \"abcdeΔΘ\"}}, F9: {F1: true}, F12: {F9: D}, F13: {F14: 31660}}}, VSet_VEnumAbc{A, B, C}}, F4: {0, 8.857047681266707e+07}, F5: {B}, F7: {0: 1481979836, 3962308101: 2916248872}, F11: {F29: 5.253663493219364e+08}, F12: {F9: D}, F13: {F14: 49095}}}",
		Target: VArray2_VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					__VDLType_list_224,
					__VDLType_array_18,
				},
				F2: []int16{
					-8235,
					10234,
					0,
				},
				F3: VList_Any{
					nil,
				},
				F4: map[float64]struct{}{
					-3.940977071572917e+08:  struct{}{},
					-5.0264640947262836e+08: struct{}{},
					1.0200576920401574e+09:  struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F7: map[uint32]uint32{
					399892036: 1455005223,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF8{VEnumAbcB},
				F11: VUnionDepth1_Float64F29{},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdC,
				},
				F13: &VStructDepth1_VUint16{
					F14: 28607,
				},
			},
			{
				F0: VArray2_TypeObject{
					__VDLType_set_62,
					__VDLType_map_174,
				},
				F3: VList_Any{
					VList_VEnumAbc{
						VEnumAbcB,
					},
					VUnionDepth3_VStructDepth2_All(VUnionDepth3_VStructDepth2_AllF4{VStructDepth2_All{
						F0: VArray2_TypeObject{
							vdl.AnyType,
							vdl.AnyType,
						},
						F1: VArray1_Uint32{
							1742515881,
						},
						F2: []int16{
							-3208,
							4947,
						},
						F3: VList_Any{
							nil,
							VUnionDepth1_VString(VUnionDepth1_VStringF4{"ΔΘΠ"}),
							nil,
						},
						F4: map[float64]struct{}{
							-2.1807296293246665e+09: struct{}{},
						},
						F5: VSet_VEnumBcd{
							VEnumBcdB: struct{}{},
							VEnumBcdD: struct{}{},
						},
						F7: map[uint32]uint32{
							0:          4253130263,
							1886998534: 3899331238,
						},
						F8: VStructDepth1_All{
							F0: VUint16(14541),
							F4: "eΔ",
							F5: __VDLType_union_117,
							F6: 218,
							F7: 194,
							F8: VEnumAbcB,
							F9: VEnumBcdD,
							F11: VNamedError{
								Id:  "ΘΠΣΦ王普",
								Msg: "abcde",
							},
							F12: verror.FromWire(&vdl.WireError{
								Id:        "abcdeΔΘ",
								RetryCode: vdl.WireRetryCodeRetryBackoff,
							}),
							F13: 8041,
							F14: 60257,
							F15: 4214271556,
							F16: 2504482528,
							F17: 13461755490177698188,
							F18: 16865746146084059053,
							F19: 1,
							F20: -32,
							F22: 10940,
							F23: -735974144,
							F24: 800707543,
							F26: 73919714829649871,
							F27: 1.0520115e+08,
							F28: 1.1381097e+09,
							F30: -2.251978035297538e+08,
							F31: &VStructEmpty{},
							F32: &VNamedError{
								Id:  "d",
								Msg: "abcdeΔΘ",
							},
						},
						F9: VStructDepth1_Bool{
							F1: true,
						},
						F10: VUnionDepth1_AllF0{},
						F11: VUnionDepth1_Float64F29{},
						F12: &VStructDepth1_VEnumBcd{
							F9: VEnumBcdD,
						},
						F13: &VStructDepth1_VUint16{
							F14: 31660,
						},
					}}),
					VSet_VEnumAbc{
						VEnumAbcA: struct{}{},
						VEnumAbcB: struct{}{},
						VEnumAbcC: struct{}{},
					},
				},
				F4: map[float64]struct{}{
					0: struct{}{},
					8.857047681266707e+07: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
				},
				F7: map[uint32]uint32{
					0:          1481979836,
					3962308101: 2916248872,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{5.253663493219364e+08},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 49095,
				},
			},
		},
		SourceLabel: "VArray2_VStructDepth2_All{{F0: {typeobject(VList_VSet_VArray1_VStructEmpty), typeobject(VArray3_Any)}, F2: {-8235, 10234, 0}, F3: {nil}, F4: {-3.940977071572917e+08, -5.0264640947262836e+08, 1.0200576920401574e+09}, F5: {D}, F7: {399892036: 1455005223}, F10: {F8: B}, F12: {F9: C}, F13: {F14: 28607}}, {F0: {typeobject(VSet_VEnumAbc), typeobject(VMap_VStructDepth1_VBool_VStructDepth1_VBool)}, F3: {VList_VEnumAbc{B}, VUnionDepth3_VStructDepth2_All{F4: {F1: {1742515881}, F2: {-3208, 4947}, F3: {nil, VUnionDepth1_VString{F4: \"ΔΘΠ\"}, nil}, F4: {-2.1807296293246665e+09}, F5: {B, D}, F7: {0: 4253130263, 1886998534: 3899331238}, F8: {F0: VUint16(14541), F4: \"eΔ\", F5: typeobject(VUnionDepth1_Any), F6: 218, F7: 194, F8: B, F9: D, F11: {Id: \"ΘΠΣΦ王普\", Msg: \"abcde\"}, F12: {Id: \"abcdeΔΘ\", RetryCode: RetryBackoff}, F13: 8041, F14: 60257, F15: 4214271556, F16: 2504482528, F17: 13461755490177698188, F18: 16865746146084059053, F19: 1, F20: -32, F22: 10940, F23: -735974144, F24: 800707543, F26: 73919714829649871, F27: 1.0520115e+08, F28: 1.1381097e+09, F30: -2.251978035297538e+08, F31: {}, F32: {Id: \"d\", Msg: \"abcdeΔΘ\"}}, F9: {F1: true}, F12: {F9: D}, F13: {F14: 31660}}}, VSet_VEnumAbc{A, B, C}}, F4: {0, 8.857047681266707e+07}, F5: {B}, F7: {0: 1481979836, 3962308101: 2916248872}, F11: {F29: 5.253663493219364e+08}, F12: {F9: D}, F13: {F14: 49095}}}",
		Source: VArray2_VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					__VDLType_list_224,
					__VDLType_array_18,
				},
				F2: []int16{
					-8235,
					10234,
					0,
				},
				F3: VList_Any{
					nil,
				},
				F4: map[float64]struct{}{
					-3.940977071572917e+08:  struct{}{},
					-5.0264640947262836e+08: struct{}{},
					1.0200576920401574e+09:  struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F7: map[uint32]uint32{
					399892036: 1455005223,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF8{VEnumAbcB},
				F11: VUnionDepth1_Float64F29{},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdC,
				},
				F13: &VStructDepth1_VUint16{
					F14: 28607,
				},
			},
			{
				F0: VArray2_TypeObject{
					__VDLType_set_62,
					__VDLType_map_174,
				},
				F3: VList_Any{
					VList_VEnumAbc{
						VEnumAbcB,
					},
					VUnionDepth3_VStructDepth2_All(VUnionDepth3_VStructDepth2_AllF4{VStructDepth2_All{
						F0: VArray2_TypeObject{
							vdl.AnyType,
							vdl.AnyType,
						},
						F1: VArray1_Uint32{
							1742515881,
						},
						F2: []int16{
							-3208,
							4947,
						},
						F3: VList_Any{
							nil,
							VUnionDepth1_VString(VUnionDepth1_VStringF4{"ΔΘΠ"}),
							nil,
						},
						F4: map[float64]struct{}{
							-2.1807296293246665e+09: struct{}{},
						},
						F5: VSet_VEnumBcd{
							VEnumBcdB: struct{}{},
							VEnumBcdD: struct{}{},
						},
						F7: map[uint32]uint32{
							0:          4253130263,
							1886998534: 3899331238,
						},
						F8: VStructDepth1_All{
							F0: VUint16(14541),
							F4: "eΔ",
							F5: __VDLType_union_117,
							F6: 218,
							F7: 194,
							F8: VEnumAbcB,
							F9: VEnumBcdD,
							F11: VNamedError{
								Id:  "ΘΠΣΦ王普",
								Msg: "abcde",
							},
							F12: verror.FromWire(&vdl.WireError{
								Id:        "abcdeΔΘ",
								RetryCode: vdl.WireRetryCodeRetryBackoff,
							}),
							F13: 8041,
							F14: 60257,
							F15: 4214271556,
							F16: 2504482528,
							F17: 13461755490177698188,
							F18: 16865746146084059053,
							F19: 1,
							F20: -32,
							F22: 10940,
							F23: -735974144,
							F24: 800707543,
							F26: 73919714829649871,
							F27: 1.0520115e+08,
							F28: 1.1381097e+09,
							F30: -2.251978035297538e+08,
							F31: &VStructEmpty{},
							F32: &VNamedError{
								Id:  "d",
								Msg: "abcdeΔΘ",
							},
						},
						F9: VStructDepth1_Bool{
							F1: true,
						},
						F10: VUnionDepth1_AllF0{},
						F11: VUnionDepth1_Float64F29{},
						F12: &VStructDepth1_VEnumBcd{
							F9: VEnumBcdD,
						},
						F13: &VStructDepth1_VUint16{
							F14: 31660,
						},
					}}),
					VSet_VEnumAbc{
						VEnumAbcA: struct{}{},
						VEnumAbcB: struct{}{},
						VEnumAbcC: struct{}{},
					},
				},
				F4: map[float64]struct{}{
					0: struct{}{},
					8.857047681266707e+07: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
				},
				F7: map[uint32]uint32{
					0:          1481979836,
					3962308101: 2916248872,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{5.253663493219364e+08},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 49095,
				},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray2_VStructDepth2_All{{F0: {typeobject(VList_VSet_VArray1_VStructEmpty), typeobject(VArray3_Any)}, F2: {-8235, 10234, 0}, F3: {nil}, F4: {-3.940977071572917e+08, -5.0264640947262836e+08, 1.0200576920401574e+09}, F5: {D}, F7: {399892036: 1455005223}, F10: {F8: B}, F12: {F9: C}, F13: {F14: 28607}}, {F0: {typeobject(VSet_VEnumAbc), typeobject(VMap_VStructDepth1_VBool_VStructDepth1_VBool)}, F3: {VList_VEnumAbc{B}, VUnionDepth3_VStructDepth2_All{F4: {F1: {1742515881}, F2: {-3208, 4947}, F3: {nil, VUnionDepth1_VString{F4: \"ΔΘΠ\"}, nil}, F4: {-2.1807296293246665e+09}, F5: {B, D}, F7: {0: 4253130263, 1886998534: 3899331238}, F8: {F0: VUint16(14541), F4: \"eΔ\", F5: typeobject(VUnionDepth1_Any), F6: 218, F7: 194, F8: B, F9: D, F11: {Id: \"ΘΠΣΦ王普\", Msg: \"abcde\"}, F12: {Id: \"abcdeΔΘ\", RetryCode: RetryBackoff}, F13: 8041, F14: 60257, F15: 4214271556, F16: 2504482528, F17: 13461755490177698188, F18: 16865746146084059053, F19: 1, F20: -32, F22: 10940, F23: -735974144, F24: 800707543, F26: 73919714829649871, F27: 1.0520115e+08, F28: 1.1381097e+09, F30: -2.251978035297538e+08, F31: {}, F32: {Id: \"d\", Msg: \"abcdeΔΘ\"}}, F9: {F1: true}, F12: {F9: D}, F13: {F14: 31660}}}, VSet_VEnumAbc{A, B, C}}, F4: {0, 8.857047681266707e+07}, F5: {B}, F7: {0: 1481979836, 3962308101: 2916248872}, F11: {F29: 5.253663493219364e+08}, F12: {F9: D}, F13: {F14: 49095}}}",
		Target: VArray2_VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					__VDLType_list_224,
					__VDLType_array_18,
				},
				F2: []int16{
					-8235,
					10234,
					0,
				},
				F3: VList_Any{
					nil,
				},
				F4: map[float64]struct{}{
					-3.940977071572917e+08:  struct{}{},
					-5.0264640947262836e+08: struct{}{},
					1.0200576920401574e+09:  struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F7: map[uint32]uint32{
					399892036: 1455005223,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF8{VEnumAbcB},
				F11: VUnionDepth1_Float64F29{},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdC,
				},
				F13: &VStructDepth1_VUint16{
					F14: 28607,
				},
			},
			{
				F0: VArray2_TypeObject{
					__VDLType_set_62,
					__VDLType_map_174,
				},
				F3: VList_Any{
					VList_VEnumAbc{
						VEnumAbcB,
					},
					VUnionDepth3_VStructDepth2_All(VUnionDepth3_VStructDepth2_AllF4{VStructDepth2_All{
						F0: VArray2_TypeObject{
							vdl.AnyType,
							vdl.AnyType,
						},
						F1: VArray1_Uint32{
							1742515881,
						},
						F2: []int16{
							-3208,
							4947,
						},
						F3: VList_Any{
							nil,
							VUnionDepth1_VString(VUnionDepth1_VStringF4{"ΔΘΠ"}),
							nil,
						},
						F4: map[float64]struct{}{
							-2.1807296293246665e+09: struct{}{},
						},
						F5: VSet_VEnumBcd{
							VEnumBcdB: struct{}{},
							VEnumBcdD: struct{}{},
						},
						F7: map[uint32]uint32{
							0:          4253130263,
							1886998534: 3899331238,
						},
						F8: VStructDepth1_All{
							F0: VUint16(14541),
							F4: "eΔ",
							F5: __VDLType_union_117,
							F6: 218,
							F7: 194,
							F8: VEnumAbcB,
							F9: VEnumBcdD,
							F11: VNamedError{
								Id:  "ΘΠΣΦ王普",
								Msg: "abcde",
							},
							F12: verror.FromWire(&vdl.WireError{
								Id:        "abcdeΔΘ",
								RetryCode: vdl.WireRetryCodeRetryBackoff,
							}),
							F13: 8041,
							F14: 60257,
							F15: 4214271556,
							F16: 2504482528,
							F17: 13461755490177698188,
							F18: 16865746146084059053,
							F19: 1,
							F20: -32,
							F22: 10940,
							F23: -735974144,
							F24: 800707543,
							F26: 73919714829649871,
							F27: 1.0520115e+08,
							F28: 1.1381097e+09,
							F30: -2.251978035297538e+08,
							F31: &VStructEmpty{},
							F32: &VNamedError{
								Id:  "d",
								Msg: "abcdeΔΘ",
							},
						},
						F9: VStructDepth1_Bool{
							F1: true,
						},
						F10: VUnionDepth1_AllF0{},
						F11: VUnionDepth1_Float64F29{},
						F12: &VStructDepth1_VEnumBcd{
							F9: VEnumBcdD,
						},
						F13: &VStructDepth1_VUint16{
							F14: 31660,
						},
					}}),
					VSet_VEnumAbc{
						VEnumAbcA: struct{}{},
						VEnumAbcB: struct{}{},
						VEnumAbcC: struct{}{},
					},
				},
				F4: map[float64]struct{}{
					0: struct{}{},
					8.857047681266707e+07: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
				},
				F7: map[uint32]uint32{
					0:          1481979836,
					3962308101: 2916248872,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{5.253663493219364e+08},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 49095,
				},
			},
		},
		SourceLabel: "[]any{VStructDepth2_All{F0: {typeobject(VList_VSet_VArray1_VStructEmpty), typeobject(VArray3_Any)}, F2: {-8235, 10234, 0}, F3: {nil}, F4: {-3.940977071572917e+08, -5.0264640947262836e+08, 1.0200576920401574e+09}, F5: {D}, F7: {399892036: 1455005223}, F10: {F8: B}, F12: {F9: C}, F13: {F14: 28607}}, VStructDepth2_All{F0: {typeobject(VSet_VEnumAbc), typeobject(VMap_VStructDepth1_VBool_VStructDepth1_VBool)}, F3: {VList_VEnumAbc{B}, VUnionDepth3_VStructDepth2_All{F4: {F1: {1742515881}, F2: {-3208, 4947}, F3: {nil, VUnionDepth1_VString{F4: \"ΔΘΠ\"}, nil}, F4: {-2.1807296293246665e+09}, F5: {B, D}, F7: {0: 4253130263, 1886998534: 3899331238}, F8: {F0: VUint16(14541), F4: \"eΔ\", F5: typeobject(VUnionDepth1_Any), F6: 218, F7: 194, F8: B, F9: D, F11: {Id: \"ΘΠΣΦ王普\", Msg: \"abcde\"}, F12: {Id: \"abcdeΔΘ\", RetryCode: RetryBackoff}, F13: 8041, F14: 60257, F15: 4214271556, F16: 2504482528, F17: 13461755490177698188, F18: 16865746146084059053, F19: 1, F20: -32, F22: 10940, F23: -735974144, F24: 800707543, F26: 73919714829649871, F27: 1.0520115e+08, F28: 1.1381097e+09, F30: -2.251978035297538e+08, F31: {}, F32: {Id: \"d\", Msg: \"abcdeΔΘ\"}}, F9: {F1: true}, F12: {F9: D}, F13: {F14: 31660}}}, VSet_VEnumAbc{A, B, C}}, F4: {0, 8.857047681266707e+07}, F5: {B}, F7: {0: 1481979836, 3962308101: 2916248872}, F11: {F29: 5.253663493219364e+08}, F12: {F9: D}, F13: {F14: 49095}}}",
		Source: []interface{}{
			VStructDepth2_All{
				F0: VArray2_TypeObject{
					__VDLType_list_224,
					__VDLType_array_18,
				},
				F2: []int16{
					-8235,
					10234,
					0,
				},
				F3: VList_Any{
					nil,
				},
				F4: map[float64]struct{}{
					-3.940977071572917e+08:  struct{}{},
					-5.0264640947262836e+08: struct{}{},
					1.0200576920401574e+09:  struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F7: map[uint32]uint32{
					399892036: 1455005223,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF8{VEnumAbcB},
				F11: VUnionDepth1_Float64F29{},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdC,
				},
				F13: &VStructDepth1_VUint16{
					F14: 28607,
				},
			},
			VStructDepth2_All{
				F0: VArray2_TypeObject{
					__VDLType_set_62,
					__VDLType_map_174,
				},
				F3: VList_Any{
					VList_VEnumAbc{
						VEnumAbcB,
					},
					VUnionDepth3_VStructDepth2_All(VUnionDepth3_VStructDepth2_AllF4{VStructDepth2_All{
						F0: VArray2_TypeObject{
							vdl.AnyType,
							vdl.AnyType,
						},
						F1: VArray1_Uint32{
							1742515881,
						},
						F2: []int16{
							-3208,
							4947,
						},
						F3: VList_Any{
							nil,
							VUnionDepth1_VString(VUnionDepth1_VStringF4{"ΔΘΠ"}),
							nil,
						},
						F4: map[float64]struct{}{
							-2.1807296293246665e+09: struct{}{},
						},
						F5: VSet_VEnumBcd{
							VEnumBcdB: struct{}{},
							VEnumBcdD: struct{}{},
						},
						F7: map[uint32]uint32{
							0:          4253130263,
							1886998534: 3899331238,
						},
						F8: VStructDepth1_All{
							F0: VUint16(14541),
							F4: "eΔ",
							F5: __VDLType_union_117,
							F6: 218,
							F7: 194,
							F8: VEnumAbcB,
							F9: VEnumBcdD,
							F11: VNamedError{
								Id:  "ΘΠΣΦ王普",
								Msg: "abcde",
							},
							F12: verror.FromWire(&vdl.WireError{
								Id:        "abcdeΔΘ",
								RetryCode: vdl.WireRetryCodeRetryBackoff,
							}),
							F13: 8041,
							F14: 60257,
							F15: 4214271556,
							F16: 2504482528,
							F17: 13461755490177698188,
							F18: 16865746146084059053,
							F19: 1,
							F20: -32,
							F22: 10940,
							F23: -735974144,
							F24: 800707543,
							F26: 73919714829649871,
							F27: 1.0520115e+08,
							F28: 1.1381097e+09,
							F30: -2.251978035297538e+08,
							F31: &VStructEmpty{},
							F32: &VNamedError{
								Id:  "d",
								Msg: "abcdeΔΘ",
							},
						},
						F9: VStructDepth1_Bool{
							F1: true,
						},
						F10: VUnionDepth1_AllF0{},
						F11: VUnionDepth1_Float64F29{},
						F12: &VStructDepth1_VEnumBcd{
							F9: VEnumBcdD,
						},
						F13: &VStructDepth1_VUint16{
							F14: 31660,
						},
					}}),
					VSet_VEnumAbc{
						VEnumAbcA: struct{}{},
						VEnumAbcB: struct{}{},
						VEnumAbcC: struct{}{},
					},
				},
				F4: map[float64]struct{}{
					0: struct{}{},
					8.857047681266707e+07: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
				},
				F7: map[uint32]uint32{
					0:          1481979836,
					3962308101: 2916248872,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{5.253663493219364e+08},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 49095,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray2_VUnionDepth2_All{}",
		Target: VArray2_VUnionDepth2_All{
			VUnionDepth2_AllF0{},
			VUnionDepth2_AllF0{},
		},
		SourceLabel: "VArray2_VUnionDepth2_All{}",
		Source: VArray2_VUnionDepth2_All{
			VUnionDepth2_AllF0{},
			VUnionDepth2_AllF0{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray2_VUnionDepth2_All{}",
		Target: VArray2_VUnionDepth2_All{
			VUnionDepth2_AllF0{},
			VUnionDepth2_AllF0{},
		},
		SourceLabel: "VList_Any{VUnionDepth2_All{F0: {}}, VUnionDepth2_All{F0: {}}}",
		Source: VList_Any{
			VUnionDepth2_All(VUnionDepth2_AllF0{}),
			VUnionDepth2_All(VUnionDepth2_AllF0{}),
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray2_VUnionDepth2_All{}",
		Target: VArray2_VUnionDepth2_All{
			VUnionDepth2_AllF0{},
			VUnionDepth2_AllF0{},
		},
		SourceLabel: "VList_VUnionDepth2_All{{F0: {}}, {F0: {}}}",
		Source: VList_VUnionDepth2_All{
			VUnionDepth2_AllF0{},
			VUnionDepth2_AllF0{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray2_VUnionDepth2_All{{F13: {F28: 1.5}}, {F13: {F28: 1.5}}}",
		Target: VArray2_VUnionDepth2_All{
			VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
				F28: 1.5,
			}},
			VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
				F28: 1.5,
			}},
		},
		SourceLabel: "VArray2_VUnionDepth2_All{{F13: {F28: 1.5}}, {F13: {F28: 1.5}}}",
		Source: VArray2_VUnionDepth2_All{
			VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
				F28: 1.5,
			}},
			VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
				F28: 1.5,
			}},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray2_VUnionDepth2_All{{F13: {F28: 1.5}}, {F13: {F28: 1.5}}}",
		Target: VArray2_VUnionDepth2_All{
			VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
				F28: 1.5,
			}},
			VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
				F28: 1.5,
			}},
		},
		SourceLabel: "VList_VUnionDepth2_All{{F13: {F28: 1.5}}, {F13: {F28: 1.5}}}",
		Source: VList_VUnionDepth2_All{
			VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
				F28: 1.5,
			}},
			VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
				F28: 1.5,
			}},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray2_VUnionDepth2_All{{F8: {F0: VStructDepth1_VFloat32{F28: -1.760837e+09}, F1: true, F3: \"bcde\", F4: \"deΔΘΠΣ\", F5: typeobject(VSet_VEnumAbc), F6: 141, F11: {Msg: \"澤\"}, F12: {Id: \"abcdeΔΘΠ\", RetryCode: RetryBackoff, Msg: \"bcdeΔΘΠΣΦ王普澤世\"}, F13: 25586, F14: 13168, F16: 3392140144, F17: 4800936644249953134, F18: 1433653936825833359, F19: 1, F20: -19, F21: -5023, F22: 5639, F23: -1001860443, F24: -638375194, F25: -2663406277260744766, F26: -4456694877565021047, F27: -5.526668e+08, F28: -3.4535696e+08, F29: 4.358405230142962e+07, F31: {}, F32: {Id: \"eΔ\", Msg: \"Φ\"}}}, {F4: {false}}}",
		Target: VArray2_VUnionDepth2_All{
			VUnionDepth2_AllF8{VStructDepth1_All{
				F0: VStructDepth1_VFloat32{
					F28: -1.760837e+09,
				},
				F1: true,
				F3: "bcde",
				F4: "deΔΘΠΣ",
				F5: __VDLType_set_62,
				F6: 141,
				F11: VNamedError{
					Msg: "澤",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠ",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "bcdeΔΘΠΣΦ王普澤世",
				}),
				F13: 25586,
				F14: 13168,
				F16: 3392140144,
				F17: 4800936644249953134,
				F18: 1433653936825833359,
				F19: 1,
				F20: -19,
				F21: -5023,
				F22: 5639,
				F23: -1001860443,
				F24: -638375194,
				F25: -2663406277260744766,
				F26: -4456694877565021047,
				F27: -5.526668e+08,
				F28: -3.4535696e+08,
				F29: 4.358405230142962e+07,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "eΔ",
					Msg: "Φ",
				},
			}},
			VUnionDepth2_AllF4{VSet_VBool{
				false: struct{}{},
			}},
		},
		SourceLabel: "VArray2_VUnionDepth2_All{{F8: {F0: VStructDepth1_VFloat32{F28: -1.760837e+09}, F1: true, F3: \"bcde\", F4: \"deΔΘΠΣ\", F5: typeobject(VSet_VEnumAbc), F6: 141, F11: {Msg: \"澤\"}, F12: {Id: \"abcdeΔΘΠ\", RetryCode: RetryBackoff, Msg: \"bcdeΔΘΠΣΦ王普澤世\"}, F13: 25586, F14: 13168, F16: 3392140144, F17: 4800936644249953134, F18: 1433653936825833359, F19: 1, F20: -19, F21: -5023, F22: 5639, F23: -1001860443, F24: -638375194, F25: -2663406277260744766, F26: -4456694877565021047, F27: -5.526668e+08, F28: -3.4535696e+08, F29: 4.358405230142962e+07, F31: {}, F32: {Id: \"eΔ\", Msg: \"Φ\"}}}, {F4: {false}}}",
		Source: VArray2_VUnionDepth2_All{
			VUnionDepth2_AllF8{VStructDepth1_All{
				F0: VStructDepth1_VFloat32{
					F28: -1.760837e+09,
				},
				F1: true,
				F3: "bcde",
				F4: "deΔΘΠΣ",
				F5: __VDLType_set_62,
				F6: 141,
				F11: VNamedError{
					Msg: "澤",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠ",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "bcdeΔΘΠΣΦ王普澤世",
				}),
				F13: 25586,
				F14: 13168,
				F16: 3392140144,
				F17: 4800936644249953134,
				F18: 1433653936825833359,
				F19: 1,
				F20: -19,
				F21: -5023,
				F22: 5639,
				F23: -1001860443,
				F24: -638375194,
				F25: -2663406277260744766,
				F26: -4456694877565021047,
				F27: -5.526668e+08,
				F28: -3.4535696e+08,
				F29: 4.358405230142962e+07,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "eΔ",
					Msg: "Φ",
				},
			}},
			VUnionDepth2_AllF4{VSet_VBool{
				false: struct{}{},
			}},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray2_VUnionDepth2_All{{F8: {F0: VStructDepth1_VFloat32{F28: -1.760837e+09}, F1: true, F3: \"bcde\", F4: \"deΔΘΠΣ\", F5: typeobject(VSet_VEnumAbc), F6: 141, F11: {Msg: \"澤\"}, F12: {Id: \"abcdeΔΘΠ\", RetryCode: RetryBackoff, Msg: \"bcdeΔΘΠΣΦ王普澤世\"}, F13: 25586, F14: 13168, F16: 3392140144, F17: 4800936644249953134, F18: 1433653936825833359, F19: 1, F20: -19, F21: -5023, F22: 5639, F23: -1001860443, F24: -638375194, F25: -2663406277260744766, F26: -4456694877565021047, F27: -5.526668e+08, F28: -3.4535696e+08, F29: 4.358405230142962e+07, F31: {}, F32: {Id: \"eΔ\", Msg: \"Φ\"}}}, {F4: {false}}}",
		Target: VArray2_VUnionDepth2_All{
			VUnionDepth2_AllF8{VStructDepth1_All{
				F0: VStructDepth1_VFloat32{
					F28: -1.760837e+09,
				},
				F1: true,
				F3: "bcde",
				F4: "deΔΘΠΣ",
				F5: __VDLType_set_62,
				F6: 141,
				F11: VNamedError{
					Msg: "澤",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠ",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "bcdeΔΘΠΣΦ王普澤世",
				}),
				F13: 25586,
				F14: 13168,
				F16: 3392140144,
				F17: 4800936644249953134,
				F18: 1433653936825833359,
				F19: 1,
				F20: -19,
				F21: -5023,
				F22: 5639,
				F23: -1001860443,
				F24: -638375194,
				F25: -2663406277260744766,
				F26: -4456694877565021047,
				F27: -5.526668e+08,
				F28: -3.4535696e+08,
				F29: 4.358405230142962e+07,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "eΔ",
					Msg: "Φ",
				},
			}},
			VUnionDepth2_AllF4{VSet_VBool{
				false: struct{}{},
			}},
		},
		SourceLabel: "[]any{VUnionDepth2_All{F8: {F0: VStructDepth1_VFloat32{F28: -1.760837e+09}, F1: true, F3: \"bcde\", F4: \"deΔΘΠΣ\", F5: typeobject(VSet_VEnumAbc), F6: 141, F11: {Msg: \"澤\"}, F12: {Id: \"abcdeΔΘΠ\", RetryCode: RetryBackoff, Msg: \"bcdeΔΘΠΣΦ王普澤世\"}, F13: 25586, F14: 13168, F16: 3392140144, F17: 4800936644249953134, F18: 1433653936825833359, F19: 1, F20: -19, F21: -5023, F22: 5639, F23: -1001860443, F24: -638375194, F25: -2663406277260744766, F26: -4456694877565021047, F27: -5.526668e+08, F28: -3.4535696e+08, F29: 4.358405230142962e+07, F31: {}, F32: {Id: \"eΔ\", Msg: \"Φ\"}}}, VUnionDepth2_All{F4: {false}}}",
		Source: []interface{}{
			VUnionDepth2_All(VUnionDepth2_AllF8{VStructDepth1_All{
				F0: VStructDepth1_VFloat32{
					F28: -1.760837e+09,
				},
				F1: true,
				F3: "bcde",
				F4: "deΔΘΠΣ",
				F5: __VDLType_set_62,
				F6: 141,
				F11: VNamedError{
					Msg: "澤",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠ",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "bcdeΔΘΠΣΦ王普澤世",
				}),
				F13: 25586,
				F14: 13168,
				F16: 3392140144,
				F17: 4800936644249953134,
				F18: 1433653936825833359,
				F19: 1,
				F20: -19,
				F21: -5023,
				F22: 5639,
				F23: -1001860443,
				F24: -638375194,
				F25: -2663406277260744766,
				F26: -4456694877565021047,
				F27: -5.526668e+08,
				F28: -3.4535696e+08,
				F29: 4.358405230142962e+07,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "eΔ",
					Msg: "Φ",
				},
			}}),
			VUnionDepth2_All(VUnionDepth2_AllF4{VSet_VBool{
				false: struct{}{},
			}}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VArray3_OptVStructDepth2_Set_Float64{}",
		Target:      VArray3_OptVStructDepth2_Set_Float64{},
		SourceLabel: "VArray3_OptVStructDepth2_Set_Float64{}",
		Source:      VArray3_OptVStructDepth2_Set_Float64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray3_OptVStructDepth2_Set_Float64{}",
		Target:      VArray3_OptVStructDepth2_Set_Float64{},
		SourceLabel: "VArray3_Any{}",
		Source:      VArray3_Any{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VArray3_OptVStructDepth2_Set_Float64{}",
		Target:      VArray3_OptVStructDepth2_Set_Float64{},
		SourceLabel: "[]?VStructDepth2_Set_Float64{nil, nil, nil}",
		Source: []*VStructDepth2_Set_Float64{
			nil,
			nil,
			nil,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VArray3_OptVStructDepth2_Set_Float64{{F4: {1.5}}, {F4: {1.5}}, {F4: {1.5}}}",
		Target: VArray3_OptVStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
		SourceLabel: "VArray3_OptVStructDepth2_Set_Float64{{F4: {1.5}}, {F4: {1.5}}, {F4: {1.5}}}",
		Source: VArray3_OptVStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VArray3_OptVStructDepth2_Set_Float64{{F4: {1.5}}, {F4: {1.5}}, {F4: {1.5}}}",
		Target: VArray3_OptVStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
		SourceLabel: "[]any{?VStructDepth2_Set_Float64{F4: {1.5}}, ?VStructDepth2_Set_Float64{F4: {1.5}}, ?VStructDepth2_Set_Float64{F4: {1.5}}}",
		Source: []interface{}{
			&VStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
			&VStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
			&VStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VArray3_OptVStructDepth2_Set_Float64{{F4: {-7.648597175544252e+08, 0, 1.34338380400205e+09}}, {}, {F4: {-9.142569413756968e+08, 0, 1.391175727124097e+09}}}",
		Target: VArray3_OptVStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					-7.648597175544252e+08: struct{}{},
					0:                    struct{}{},
					1.34338380400205e+09: struct{}{},
				},
			},
			{},
			{
				F4: map[float64]struct{}{
					-9.142569413756968e+08: struct{}{},
					0: struct{}{},
					1.391175727124097e+09: struct{}{},
				},
			},
		},
		SourceLabel: "VArray3_OptVStructDepth2_Set_Float64{{F4: {-7.648597175544252e+08, 0, 1.34338380400205e+09}}, {}, {F4: {-9.142569413756968e+08, 0, 1.391175727124097e+09}}}",
		Source: VArray3_OptVStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					-7.648597175544252e+08: struct{}{},
					0:                    struct{}{},
					1.34338380400205e+09: struct{}{},
				},
			},
			{},
			{
				F4: map[float64]struct{}{
					-9.142569413756968e+08: struct{}{},
					0: struct{}{},
					1.391175727124097e+09: struct{}{},
				},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VArray3_OptVStructDepth2_Set_Float64{{F4: {-7.648597175544252e+08, 0, 1.34338380400205e+09}}, {}, {F4: {-9.142569413756968e+08, 0, 1.391175727124097e+09}}}",
		Target: VArray3_OptVStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					-7.648597175544252e+08: struct{}{},
					0:                    struct{}{},
					1.34338380400205e+09: struct{}{},
				},
			},
			{},
			{
				F4: map[float64]struct{}{
					-9.142569413756968e+08: struct{}{},
					0: struct{}{},
					1.391175727124097e+09: struct{}{},
				},
			},
		},
		SourceLabel: "VList_Any{?VStructDepth2_Set_Float64{F4: {-7.648597175544252e+08, 0, 1.34338380400205e+09}}, ?VStructDepth2_Set_Float64{}, ?VStructDepth2_Set_Float64{F4: {-9.142569413756968e+08, 0, 1.391175727124097e+09}}}",
		Source: VList_Any{
			&VStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					-7.648597175544252e+08: struct{}{},
					0:                    struct{}{},
					1.34338380400205e+09: struct{}{},
				},
			},
			&VStructDepth2_Set_Float64{},
			&VStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					-9.142569413756968e+08: struct{}{},
					0: struct{}{},
					1.391175727124097e+09: struct{}{},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]VArray1_Set_VEnumBcd{}",
		Target:      []VArray1_Set_VEnumBcd(nil),
		SourceLabel: "[]VArray1_Set_VEnumBcd{}",
		Source:      []VArray1_Set_VEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VArray1_Set_VEnumBcd{}",
		Target:      []VArray1_Set_VEnumBcd(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VArray1_Set_VEnumBcd{}",
		Target:      []VArray1_Set_VEnumBcd(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]VArray1_Set_VEnumBcd{{{D}}}",
		Target: []VArray1_Set_VEnumBcd{
			{
				{
					VEnumBcdD: struct{}{},
				},
			},
		},
		SourceLabel: "[]VArray1_Set_VEnumBcd{{{D}}}",
		Source: []VArray1_Set_VEnumBcd{
			{
				{
					VEnumBcdD: struct{}{},
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]VArray1_Set_VEnumBcd{{{D}}}",
		Target: []VArray1_Set_VEnumBcd{
			{
				{
					VEnumBcdD: struct{}{},
				},
			},
		},
		SourceLabel: "[]any{VArray1_Set_VEnumBcd{{D}}}",
		Source: []interface{}{
			VArray1_Set_VEnumBcd{
				{
					VEnumBcdD: struct{}{},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[][]VList_Error{}",
		Target:      [][]VList_Error(nil),
		SourceLabel: "[][]VList_Error{}",
		Source:      [][]VList_Error(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[][]VList_Error{}",
		Target:      [][]VList_Error(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[][]VList_Error{}",
		Target:      [][]VList_Error(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[][]VList_Error{{{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Target: [][]VList_Error{
			{
				{
					verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
				},
			},
		},
		SourceLabel: "[][]VList_Error{{{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Source: [][]VList_Error{
			{
				{
					verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[][]VList_Error{{{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Target: [][]VList_Error{
			{
				{
					verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
				},
			},
		},
		SourceLabel: "[]any{[]VList_Error{{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Source: []interface{}{
			[]VList_Error{
				{
					verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[][]VList_Error{{}, {{{Id: \"ΘΠΣΦ王普澤\", Msg: \"ΔΘΠΣΦ\"}, {RetryCode: RetryBackoff}, {Id: \"d\", Msg: \"b\"}}, {}}, {{{}, {Id: \"abcdeΔΘΠ\", Msg: \"cdeΔΘΠΣΦ王普澤世\"}}}}",
		Target: [][]VList_Error{
			nil,
			{
				{
					verror.FromWire(&vdl.WireError{
						Id:  "ΘΠΣΦ王普澤",
						Msg: "ΔΘΠΣΦ",
					}),
					verror.FromWire(&vdl.WireError{
						RetryCode: vdl.WireRetryCodeRetryBackoff,
					}),
					verror.FromWire(&vdl.WireError{
						Id:  "d",
						Msg: "b",
					}),
				},
				nil,
			},
			{
				{
					verror.FromWire(&vdl.WireError{}),
					verror.FromWire(&vdl.WireError{
						Id:  "abcdeΔΘΠ",
						Msg: "cdeΔΘΠΣΦ王普澤世",
					}),
				},
			},
		},
		SourceLabel: "[][]VList_Error{{}, {{{Id: \"ΘΠΣΦ王普澤\", Msg: \"ΔΘΠΣΦ\"}, {RetryCode: RetryBackoff}, {Id: \"d\", Msg: \"b\"}}, {}}, {{{}, {Id: \"abcdeΔΘΠ\", Msg: \"cdeΔΘΠΣΦ王普澤世\"}}}}",
		Source: [][]VList_Error{
			nil,
			{
				{
					verror.FromWire(&vdl.WireError{
						Id:  "ΘΠΣΦ王普澤",
						Msg: "ΔΘΠΣΦ",
					}),
					verror.FromWire(&vdl.WireError{
						RetryCode: vdl.WireRetryCodeRetryBackoff,
					}),
					verror.FromWire(&vdl.WireError{
						Id:  "d",
						Msg: "b",
					}),
				},
				nil,
			},
			{
				{
					verror.FromWire(&vdl.WireError{}),
					verror.FromWire(&vdl.WireError{
						Id:  "abcdeΔΘΠ",
						Msg: "cdeΔΘΠΣΦ王普澤世",
					}),
				},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[][]VList_Error{{}, {{{Id: \"ΘΠΣΦ王普澤\", Msg: \"ΔΘΠΣΦ\"}, {RetryCode: RetryBackoff}, {Id: \"d\", Msg: \"b\"}}, {}}, {{{}, {Id: \"abcdeΔΘΠ\", Msg: \"cdeΔΘΠΣΦ王普澤世\"}}}}",
		Target: [][]VList_Error{
			nil,
			{
				{
					verror.FromWire(&vdl.WireError{
						Id:  "ΘΠΣΦ王普澤",
						Msg: "ΔΘΠΣΦ",
					}),
					verror.FromWire(&vdl.WireError{
						RetryCode: vdl.WireRetryCodeRetryBackoff,
					}),
					verror.FromWire(&vdl.WireError{
						Id:  "d",
						Msg: "b",
					}),
				},
				nil,
			},
			{
				{
					verror.FromWire(&vdl.WireError{}),
					verror.FromWire(&vdl.WireError{
						Id:  "abcdeΔΘΠ",
						Msg: "cdeΔΘΠΣΦ王普澤世",
					}),
				},
			},
		},
		SourceLabel: "[]any{[]VList_Error{}, []VList_Error{{{Id: \"ΘΠΣΦ王普澤\", Msg: \"ΔΘΠΣΦ\"}, {RetryCode: RetryBackoff}, {Id: \"d\", Msg: \"b\"}}, {}}, []VList_Error{{{}, {Id: \"abcdeΔΘΠ\", Msg: \"cdeΔΘΠΣΦ王普澤世\"}}}}",
		Source: []interface{}{
			[]VList_Error(nil),
			[]VList_Error{
				{
					verror.FromWire(&vdl.WireError{
						Id:  "ΘΠΣΦ王普澤",
						Msg: "ΔΘΠΣΦ",
					}),
					verror.FromWire(&vdl.WireError{
						RetryCode: vdl.WireRetryCodeRetryBackoff,
					}),
					verror.FromWire(&vdl.WireError{
						Id:  "d",
						Msg: "b",
					}),
				},
				nil,
			},
			[]VList_Error{
				{
					verror.FromWire(&vdl.WireError{}),
					verror.FromWire(&vdl.WireError{
						Id:  "abcdeΔΘΠ",
						Msg: "cdeΔΘΠΣΦ王普澤世",
					}),
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]VSet_VArray1_VStructEmpty{}",
		Target:      []VSet_VArray1_VStructEmpty(nil),
		SourceLabel: "[]VSet_VArray1_VStructEmpty{}",
		Source:      []VSet_VArray1_VStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VSet_VArray1_VStructEmpty{}",
		Target:      []VSet_VArray1_VStructEmpty(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VSet_VArray1_VStructEmpty{}",
		Target:      []VSet_VArray1_VStructEmpty(nil),
		SourceLabel: "VList_VSet_VArray1_VStructEmpty{}",
		Source:      VList_VSet_VArray1_VStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]VSet_VArray1_VStructEmpty{{{}}}",
		Target: []VSet_VArray1_VStructEmpty{
			{
				{}: struct{}{},
			},
		},
		SourceLabel: "[]VSet_VArray1_VStructEmpty{{{}}}",
		Source: []VSet_VArray1_VStructEmpty{
			{
				{}: struct{}{},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]VSet_VArray1_VStructEmpty{{{}}}",
		Target: []VSet_VArray1_VStructEmpty{
			{
				{}: struct{}{},
			},
		},
		SourceLabel: "VList_VSet_VArray1_VStructEmpty{{{}}}",
		Source: VList_VSet_VArray1_VStructEmpty{
			{
				{}: struct{}{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]VMap_VArray3_VBool_VArray3_VBool{}",
		Target:      []VMap_VArray3_VBool_VArray3_VBool(nil),
		SourceLabel: "[]VMap_VArray3_VBool_VArray3_VBool{}",
		Source:      []VMap_VArray3_VBool_VArray3_VBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VMap_VArray3_VBool_VArray3_VBool{}",
		Target:      []VMap_VArray3_VBool_VArray3_VBool(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VMap_VArray3_VBool_VArray3_VBool{}",
		Target:      []VMap_VArray3_VBool_VArray3_VBool(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]VMap_VArray3_VBool_VArray3_VBool{{{true, true, true}: {true, true, true}}}",
		Target: []VMap_VArray3_VBool_VArray3_VBool{
			{
				{
					true,
					true,
					true,
				}: {
					true,
					true,
					true,
				},
			},
		},
		SourceLabel: "[]VMap_VArray3_VBool_VArray3_VBool{{{true, true, true}: {true, true, true}}}",
		Source: []VMap_VArray3_VBool_VArray3_VBool{
			{
				{
					true,
					true,
					true,
				}: {
					true,
					true,
					true,
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]VMap_VArray3_VBool_VArray3_VBool{{{true, true, true}: {true, true, true}}}",
		Target: []VMap_VArray3_VBool_VArray3_VBool{
			{
				{
					true,
					true,
					true,
				}: {
					true,
					true,
					true,
				},
			},
		},
		SourceLabel: "VList_VMap_VArray3_VBool_VArray3_VBool{{{true, true, true}: {true, true, true}}}",
		Source: VList_VMap_VArray3_VBool_VArray3_VBool{
			{
				{
					true,
					true,
					true,
				}: {
					true,
					true,
					true,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]VStructDepth2_All{}",
		Target:      []VStructDepth2_All(nil),
		SourceLabel: "[]VStructDepth2_All{}",
		Source:      []VStructDepth2_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VStructDepth2_All{}",
		Target:      []VStructDepth2_All(nil),
		SourceLabel: "VList_VStructDepth2_All{}",
		Source:      VList_VStructDepth2_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VStructDepth2_All{}",
		Target:      []VStructDepth2_All(nil),
		SourceLabel: "VList_OptVStructEmpty{}",
		Source:      VList_OptVStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]VStructDepth2_All{{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Target: []VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: VArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: VList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: VStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: VEnumAbcC,
					F9: VEnumBcdD,
					F11: VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: VUnionDepth1_Float64F29{1.5},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 123,
				},
			},
		},
		SourceLabel: "[]VStructDepth2_All{{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Source: []VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: VArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: VList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: VStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: VEnumAbcC,
					F9: VEnumBcdD,
					F11: VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: VUnionDepth1_Float64F29{1.5},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 123,
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]VStructDepth2_All{{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Target: []VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: VArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: VList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: VStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: VEnumAbcC,
					F9: VEnumBcdD,
					F11: VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: VUnionDepth1_Float64F29{1.5},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 123,
				},
			},
		},
		SourceLabel: "[]any{VStructDepth2_All{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Source: []interface{}{
			VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: VArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: VList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: VStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: VEnumAbcC,
					F9: VEnumBcdD,
					F11: VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: VUnionDepth1_Float64F29{1.5},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 123,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]VStructDepth2_All{{F0: {typeobject(any), typeobject(VStructDepth1_Int16)}, F1: {1264920270}, F2: {0, -7113, -12634}, F3: {VList_VString{\"ΣΦ王\", \"bc\"}, VList_VArray1_VStructEmpty{{}, {}}}, F4: {0}, F5: {B}, F7: {3156503774: 0}, F8: {F0: ?VStructEmpty{}, F3: \"普\", F4: \"ΘΠΣΦ\", F5: typeobject(VMap_Byte_Byte), F6: 176, F8: C, F11: {Id: \"ΠΣΦ\", Msg: \"eΔΘΠΣΦ王\"}, F13: 60783, F17: 16341068916218055357, F19: -62, F21: 11448, F22: -13804, F24: 12013167, F25: 779637908310744690, F27: 9.1612384e+08, F28: 8.667905e+08, F29: -1.901548848644275e+07, F30: -2.8348429384836525e+08, F31: {}}, F10: {F21: -9623}, F12: {F9: D}, F13: {F14: 5832}}}",
		Target: []VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					__VDLType_struct_104,
				},
				F1: VArray1_Uint32{
					1264920270,
				},
				F2: []int16{
					0,
					-7113,
					-12634,
				},
				F3: VList_Any{
					VList_VString{
						"ΣΦ王",
						"bc",
					},
					VList_VArray1_VStructEmpty{
						{},
						{},
					},
				},
				F4: map[float64]struct{}{
					0: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
				},
				F7: map[uint32]uint32{
					3156503774: 0,
				},
				F8: VStructDepth1_All{
					F0: &VStructEmpty{},
					F3: "普",
					F4: "ΘΠΣΦ",
					F5: __VDLType_map_73,
					F6: 176,
					F8: VEnumAbcC,
					F11: VNamedError{
						Id:  "ΠΣΦ",
						Msg: "eΔΘΠΣΦ王",
					},
					F13: 60783,
					F17: 16341068916218055357,
					F19: -62,
					F21: 11448,
					F22: -13804,
					F24: 12013167,
					F25: 779637908310744690,
					F27: 9.1612384e+08,
					F28: 8.667905e+08,
					F29: -1.901548848644275e+07,
					F30: -2.8348429384836525e+08,
					F31: &VStructEmpty{},
				},
				F10: VUnionDepth1_AllF21{-9623},
				F11: VUnionDepth1_Float64F29{},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 5832,
				},
			},
		},
		SourceLabel: "[]VStructDepth2_All{{F0: {typeobject(any), typeobject(VStructDepth1_Int16)}, F1: {1264920270}, F2: {0, -7113, -12634}, F3: {VList_VString{\"ΣΦ王\", \"bc\"}, VList_VArray1_VStructEmpty{{}, {}}}, F4: {0}, F5: {B}, F7: {3156503774: 0}, F8: {F0: ?VStructEmpty{}, F3: \"普\", F4: \"ΘΠΣΦ\", F5: typeobject(VMap_Byte_Byte), F6: 176, F8: C, F11: {Id: \"ΠΣΦ\", Msg: \"eΔΘΠΣΦ王\"}, F13: 60783, F17: 16341068916218055357, F19: -62, F21: 11448, F22: -13804, F24: 12013167, F25: 779637908310744690, F27: 9.1612384e+08, F28: 8.667905e+08, F29: -1.901548848644275e+07, F30: -2.8348429384836525e+08, F31: {}}, F10: {F21: -9623}, F12: {F9: D}, F13: {F14: 5832}}}",
		Source: []VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					__VDLType_struct_104,
				},
				F1: VArray1_Uint32{
					1264920270,
				},
				F2: []int16{
					0,
					-7113,
					-12634,
				},
				F3: VList_Any{
					VList_VString{
						"ΣΦ王",
						"bc",
					},
					VList_VArray1_VStructEmpty{
						{},
						{},
					},
				},
				F4: map[float64]struct{}{
					0: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
				},
				F7: map[uint32]uint32{
					3156503774: 0,
				},
				F8: VStructDepth1_All{
					F0: &VStructEmpty{},
					F3: "普",
					F4: "ΘΠΣΦ",
					F5: __VDLType_map_73,
					F6: 176,
					F8: VEnumAbcC,
					F11: VNamedError{
						Id:  "ΠΣΦ",
						Msg: "eΔΘΠΣΦ王",
					},
					F13: 60783,
					F17: 16341068916218055357,
					F19: -62,
					F21: 11448,
					F22: -13804,
					F24: 12013167,
					F25: 779637908310744690,
					F27: 9.1612384e+08,
					F28: 8.667905e+08,
					F29: -1.901548848644275e+07,
					F30: -2.8348429384836525e+08,
					F31: &VStructEmpty{},
				},
				F10: VUnionDepth1_AllF21{-9623},
				F11: VUnionDepth1_Float64F29{},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 5832,
				},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]VStructDepth2_All{{F0: {typeobject(any), typeobject(VStructDepth1_Int16)}, F1: {1264920270}, F2: {0, -7113, -12634}, F3: {VList_VString{\"ΣΦ王\", \"bc\"}, VList_VArray1_VStructEmpty{{}, {}}}, F4: {0}, F5: {B}, F7: {3156503774: 0}, F8: {F0: ?VStructEmpty{}, F3: \"普\", F4: \"ΘΠΣΦ\", F5: typeobject(VMap_Byte_Byte), F6: 176, F8: C, F11: {Id: \"ΠΣΦ\", Msg: \"eΔΘΠΣΦ王\"}, F13: 60783, F17: 16341068916218055357, F19: -62, F21: 11448, F22: -13804, F24: 12013167, F25: 779637908310744690, F27: 9.1612384e+08, F28: 8.667905e+08, F29: -1.901548848644275e+07, F30: -2.8348429384836525e+08, F31: {}}, F10: {F21: -9623}, F12: {F9: D}, F13: {F14: 5832}}}",
		Target: []VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					__VDLType_struct_104,
				},
				F1: VArray1_Uint32{
					1264920270,
				},
				F2: []int16{
					0,
					-7113,
					-12634,
				},
				F3: VList_Any{
					VList_VString{
						"ΣΦ王",
						"bc",
					},
					VList_VArray1_VStructEmpty{
						{},
						{},
					},
				},
				F4: map[float64]struct{}{
					0: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
				},
				F7: map[uint32]uint32{
					3156503774: 0,
				},
				F8: VStructDepth1_All{
					F0: &VStructEmpty{},
					F3: "普",
					F4: "ΘΠΣΦ",
					F5: __VDLType_map_73,
					F6: 176,
					F8: VEnumAbcC,
					F11: VNamedError{
						Id:  "ΠΣΦ",
						Msg: "eΔΘΠΣΦ王",
					},
					F13: 60783,
					F17: 16341068916218055357,
					F19: -62,
					F21: 11448,
					F22: -13804,
					F24: 12013167,
					F25: 779637908310744690,
					F27: 9.1612384e+08,
					F28: 8.667905e+08,
					F29: -1.901548848644275e+07,
					F30: -2.8348429384836525e+08,
					F31: &VStructEmpty{},
				},
				F10: VUnionDepth1_AllF21{-9623},
				F11: VUnionDepth1_Float64F29{},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 5832,
				},
			},
		},
		SourceLabel: "[]any{VStructDepth2_All{F0: {typeobject(any), typeobject(VStructDepth1_Int16)}, F1: {1264920270}, F2: {0, -7113, -12634}, F3: {VList_VString{\"ΣΦ王\", \"bc\"}, VList_VArray1_VStructEmpty{{}, {}}}, F4: {0}, F5: {B}, F7: {3156503774: 0}, F8: {F0: ?VStructEmpty{}, F3: \"普\", F4: \"ΘΠΣΦ\", F5: typeobject(VMap_Byte_Byte), F6: 176, F8: C, F11: {Id: \"ΠΣΦ\", Msg: \"eΔΘΠΣΦ王\"}, F13: 60783, F17: 16341068916218055357, F19: -62, F21: 11448, F22: -13804, F24: 12013167, F25: 779637908310744690, F27: 9.1612384e+08, F28: 8.667905e+08, F29: -1.901548848644275e+07, F30: -2.8348429384836525e+08, F31: {}}, F10: {F21: -9623}, F12: {F9: D}, F13: {F14: 5832}}}",
		Source: []interface{}{
			VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					__VDLType_struct_104,
				},
				F1: VArray1_Uint32{
					1264920270,
				},
				F2: []int16{
					0,
					-7113,
					-12634,
				},
				F3: VList_Any{
					VList_VString{
						"ΣΦ王",
						"bc",
					},
					VList_VArray1_VStructEmpty{
						{},
						{},
					},
				},
				F4: map[float64]struct{}{
					0: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
				},
				F7: map[uint32]uint32{
					3156503774: 0,
				},
				F8: VStructDepth1_All{
					F0: &VStructEmpty{},
					F3: "普",
					F4: "ΘΠΣΦ",
					F5: __VDLType_map_73,
					F6: 176,
					F8: VEnumAbcC,
					F11: VNamedError{
						Id:  "ΠΣΦ",
						Msg: "eΔΘΠΣΦ王",
					},
					F13: 60783,
					F17: 16341068916218055357,
					F19: -62,
					F21: 11448,
					F22: -13804,
					F24: 12013167,
					F25: 779637908310744690,
					F27: 9.1612384e+08,
					F28: 8.667905e+08,
					F29: -1.901548848644275e+07,
					F30: -2.8348429384836525e+08,
					F31: &VStructEmpty{},
				},
				F10: VUnionDepth1_AllF21{-9623},
				F11: VUnionDepth1_Float64F29{},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 5832,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]VUnionDepth2_All{}",
		Target:      []VUnionDepth2_All(nil),
		SourceLabel: "[]VUnionDepth2_All{}",
		Source:      []VUnionDepth2_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VUnionDepth2_All{}",
		Target:      []VUnionDepth2_All(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]VUnionDepth2_All{}",
		Target:      []VUnionDepth2_All(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]VUnionDepth2_All{{F13: {F28: 1.5}}}",
		Target: []VUnionDepth2_All{
			VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
				F28: 1.5,
			}},
		},
		SourceLabel: "[]VUnionDepth2_All{{F13: {F28: 1.5}}}",
		Source: []VUnionDepth2_All{
			VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
				F28: 1.5,
			}},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]VUnionDepth2_All{{F13: {F28: 1.5}}}",
		Target: []VUnionDepth2_All{
			VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
				F28: 1.5,
			}},
		},
		SourceLabel: "[]any{VUnionDepth2_All{F13: {F28: 1.5}}}",
		Source: []interface{}{
			VUnionDepth2_All(VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
				F28: 1.5,
			}}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]VUnionDepth2_All{{F7: {false: true}}, {F0: {}}, {F5: {{Id: \"eΔΘΠΣΦ王普澤\", Msg: \"ΔΘΠΣΦ王普\"}}}}",
		Target: []VUnionDepth2_All{
			VUnionDepth2_AllF7{VMap_VBool_VBool{
				false: true,
			}},
			VUnionDepth2_AllF0{},
			VUnionDepth2_AllF5{VSet_VNamedError{
				{
					Id:  "eΔΘΠΣΦ王普澤",
					Msg: "ΔΘΠΣΦ王普",
				}: struct{}{},
			}},
		},
		SourceLabel: "[]VUnionDepth2_All{{F7: {false: true}}, {F0: {}}, {F5: {{Id: \"eΔΘΠΣΦ王普澤\", Msg: \"ΔΘΠΣΦ王普\"}}}}",
		Source: []VUnionDepth2_All{
			VUnionDepth2_AllF7{VMap_VBool_VBool{
				false: true,
			}},
			VUnionDepth2_AllF0{},
			VUnionDepth2_AllF5{VSet_VNamedError{
				{
					Id:  "eΔΘΠΣΦ王普澤",
					Msg: "ΔΘΠΣΦ王普",
				}: struct{}{},
			}},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]VUnionDepth2_All{{F7: {false: true}}, {F0: {}}, {F5: {{Id: \"eΔΘΠΣΦ王普澤\", Msg: \"ΔΘΠΣΦ王普\"}}}}",
		Target: []VUnionDepth2_All{
			VUnionDepth2_AllF7{VMap_VBool_VBool{
				false: true,
			}},
			VUnionDepth2_AllF0{},
			VUnionDepth2_AllF5{VSet_VNamedError{
				{
					Id:  "eΔΘΠΣΦ王普澤",
					Msg: "ΔΘΠΣΦ王普",
				}: struct{}{},
			}},
		},
		SourceLabel: "VArray3_Any{VUnionDepth2_All{F7: {false: true}}, VUnionDepth2_All{F0: {}}, VUnionDepth2_All{F5: {{Id: \"eΔΘΠΣΦ王普澤\", Msg: \"ΔΘΠΣΦ王普\"}}}}",
		Source: VArray3_Any{
			VUnionDepth2_All(VUnionDepth2_AllF7{VMap_VBool_VBool{
				false: true,
			}}),
			VUnionDepth2_All(VUnionDepth2_AllF0{}),
			VUnionDepth2_All(VUnionDepth2_AllF5{VSet_VNamedError{
				{
					Id:  "eΔΘΠΣΦ王普澤",
					Msg: "ΔΘΠΣΦ王普",
				}: struct{}{},
			}}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]?VStructDepth2_Set_Float64{}",
		Target:      []*VStructDepth2_Set_Float64(nil),
		SourceLabel: "[]?VStructDepth2_Set_Float64{}",
		Source:      []*VStructDepth2_Set_Float64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]?VStructDepth2_Set_Float64{}",
		Target:      []*VStructDepth2_Set_Float64(nil),
		SourceLabel: "VList_VStructDepth2_All{}",
		Source:      VList_VStructDepth2_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]?VStructDepth2_Set_Float64{}",
		Target:      []*VStructDepth2_Set_Float64(nil),
		SourceLabel: "[]VStructDepth2_All{}",
		Source:      []VStructDepth2_All(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]?VStructDepth2_Set_Float64{{F4: {1.5}}}",
		Target: []*VStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
		SourceLabel: "[]?VStructDepth2_Set_Float64{{F4: {1.5}}}",
		Source: []*VStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]?VStructDepth2_Set_Float64{{F4: {1.5}}}",
		Target: []*VStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
		SourceLabel: "VList_Any{?VStructDepth2_Set_Float64{F4: {1.5}}}",
		Source: VList_Any{
			&VStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]?VStructDepth2_Set_Float64{{F4: {-4.106420264593588e+08, -4.3626757424300224e+08, 0}}}",
		Target: []*VStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					-4.106420264593588e+08:  struct{}{},
					-4.3626757424300224e+08: struct{}{},
					0: struct{}{},
				},
			},
		},
		SourceLabel: "[]?VStructDepth2_Set_Float64{{F4: {-4.106420264593588e+08, -4.3626757424300224e+08, 0}}}",
		Source: []*VStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					-4.106420264593588e+08:  struct{}{},
					-4.3626757424300224e+08: struct{}{},
					0: struct{}{},
				},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]?VStructDepth2_Set_Float64{{F4: {-4.106420264593588e+08, -4.3626757424300224e+08, 0}}}",
		Target: []*VStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					-4.106420264593588e+08:  struct{}{},
					-4.3626757424300224e+08: struct{}{},
					0: struct{}{},
				},
			},
		},
		SourceLabel: "VList_Any{?VStructDepth2_Set_Float64{F4: {-4.106420264593588e+08, -4.3626757424300224e+08, 0}}}",
		Source: VList_Any{
			&VStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					-4.106420264593588e+08:  struct{}{},
					-4.3626757424300224e+08: struct{}{},
					0: struct{}{},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_VArray3_VUnionDepth1_All{}",
		Target:      VList_VArray3_VUnionDepth1_All(nil),
		SourceLabel: "VList_VArray3_VUnionDepth1_All{}",
		Source:      VList_VArray3_VUnionDepth1_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VArray3_VUnionDepth1_All{}",
		Target:      VList_VArray3_VUnionDepth1_All(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VArray3_VUnionDepth1_All{}",
		Target:      VList_VArray3_VUnionDepth1_All(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_VArray3_VUnionDepth1_All{{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Target: VList_VArray3_VUnionDepth1_All{
			{
				VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
			},
		},
		SourceLabel: "VList_VArray3_VUnionDepth1_All{{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Source: VList_VArray3_VUnionDepth1_All{
			{
				VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_VArray3_VUnionDepth1_All{{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Target: VList_VArray3_VUnionDepth1_All{
			{
				VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
			},
		},
		SourceLabel: "[]any{VArray3_VUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Source: []interface{}{
			VArray3_VUnionDepth1_All{
				VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VList_VArray3_VUnionDepth1_All{{{F8: B}, {F0: nil}, {F13: 0}}}",
		Target: VList_VArray3_VUnionDepth1_All{
			{
				VUnionDepth1_AllF8{VEnumAbcB},
				VUnionDepth1_AllF0{},
				VUnionDepth1_AllF13{},
			},
		},
		SourceLabel: "VList_VArray3_VUnionDepth1_All{{{F8: B}, {F0: nil}, {F13: 0}}}",
		Source: VList_VArray3_VUnionDepth1_All{
			{
				VUnionDepth1_AllF8{VEnumAbcB},
				VUnionDepth1_AllF0{},
				VUnionDepth1_AllF13{},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VList_VArray3_VUnionDepth1_All{{{F8: B}, {F0: nil}, {F13: 0}}}",
		Target: VList_VArray3_VUnionDepth1_All{
			{
				VUnionDepth1_AllF8{VEnumAbcB},
				VUnionDepth1_AllF0{},
				VUnionDepth1_AllF13{},
			},
		},
		SourceLabel: "VList_Any{VArray3_VUnionDepth1_All{{F8: B}, {F0: nil}, {F13: 0}}}",
		Source: VList_Any{
			VArray3_VUnionDepth1_All{
				VUnionDepth1_AllF8{VEnumAbcB},
				VUnionDepth1_AllF0{},
				VUnionDepth1_AllF13{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_List_VMap_VByte_VByte{}",
		Target:      VList_List_VMap_VByte_VByte(nil),
		SourceLabel: "VList_List_VMap_VByte_VByte{}",
		Source:      VList_List_VMap_VByte_VByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_List_VMap_VByte_VByte{}",
		Target:      VList_List_VMap_VByte_VByte(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_List_VMap_VByte_VByte{}",
		Target:      VList_List_VMap_VByte_VByte(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_List_VMap_VByte_VByte{{{123: 123}}}",
		Target: VList_List_VMap_VByte_VByte{
			{
				{
					123: 123,
				},
			},
		},
		SourceLabel: "VList_List_VMap_VByte_VByte{{{123: 123}}}",
		Source: VList_List_VMap_VByte_VByte{
			{
				{
					123: 123,
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_List_VMap_VByte_VByte{{{123: 123}}}",
		Target: VList_List_VMap_VByte_VByte{
			{
				{
					123: 123,
				},
			},
		},
		SourceLabel: "[]any{[]VMap_VByte_VByte{{123: 123}}}",
		Source: []interface{}{
			[]VMap_VByte_VByte{
				{
					123: 123,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VList_List_VMap_VByte_VByte{{{166: 0, 231: 12, 236: 0}, {0: 255, 183: 47, 198: 125}, {0: 0, 52: 0}}}",
		Target: VList_List_VMap_VByte_VByte{
			{
				{
					166: 0,
					231: 12,
					236: 0,
				},
				{
					0:   255,
					183: 47,
					198: 125,
				},
				{
					0:  0,
					52: 0,
				},
			},
		},
		SourceLabel: "VList_List_VMap_VByte_VByte{{{166: 0, 231: 12, 236: 0}, {0: 255, 183: 47, 198: 125}, {0: 0, 52: 0}}}",
		Source: VList_List_VMap_VByte_VByte{
			{
				{
					166: 0,
					231: 12,
					236: 0,
				},
				{
					0:   255,
					183: 47,
					198: 125,
				},
				{
					0:  0,
					52: 0,
				},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VList_List_VMap_VByte_VByte{{{166: 0, 231: 12, 236: 0}, {0: 255, 183: 47, 198: 125}, {0: 0, 52: 0}}}",
		Target: VList_List_VMap_VByte_VByte{
			{
				{
					166: 0,
					231: 12,
					236: 0,
				},
				{
					0:   255,
					183: 47,
					198: 125,
				},
				{
					0:  0,
					52: 0,
				},
			},
		},
		SourceLabel: "[]any{[]VMap_VByte_VByte{{166: 0, 231: 12, 236: 0}, {0: 255, 183: 47, 198: 125}, {0: 0, 52: 0}}}",
		Source: []interface{}{
			[]VMap_VByte_VByte{
				{
					166: 0,
					231: 12,
					236: 0,
				},
				{
					0:   255,
					183: 47,
					198: 125,
				},
				{
					0:  0,
					52: 0,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_VSet_VArray1_VStructEmpty{}",
		Target:      VList_VSet_VArray1_VStructEmpty(nil),
		SourceLabel: "VList_VSet_VArray1_VStructEmpty{}",
		Source:      VList_VSet_VArray1_VStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VSet_VArray1_VStructEmpty{}",
		Target:      VList_VSet_VArray1_VStructEmpty(nil),
		SourceLabel: "[]VSet_VArray1_VStructEmpty{}",
		Source:      []VSet_VArray1_VStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VSet_VArray1_VStructEmpty{}",
		Target:      VList_VSet_VArray1_VStructEmpty(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_VSet_VArray1_VStructEmpty{{{}}}",
		Target: VList_VSet_VArray1_VStructEmpty{
			{
				{}: struct{}{},
			},
		},
		SourceLabel: "VList_VSet_VArray1_VStructEmpty{{{}}}",
		Source: VList_VSet_VArray1_VStructEmpty{
			{
				{}: struct{}{},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_VSet_VArray1_VStructEmpty{{{}}}",
		Target: VList_VSet_VArray1_VStructEmpty{
			{
				{}: struct{}{},
			},
		},
		SourceLabel: "[]VSet_VArray1_VStructEmpty{{{}}}",
		Source: []VSet_VArray1_VStructEmpty{
			{
				{}: struct{}{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_VMap_VArray3_VBool_VArray3_VBool{}",
		Target:      VList_VMap_VArray3_VBool_VArray3_VBool(nil),
		SourceLabel: "VList_VMap_VArray3_VBool_VArray3_VBool{}",
		Source:      VList_VMap_VArray3_VBool_VArray3_VBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VMap_VArray3_VBool_VArray3_VBool{}",
		Target:      VList_VMap_VArray3_VBool_VArray3_VBool(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VMap_VArray3_VBool_VArray3_VBool{}",
		Target:      VList_VMap_VArray3_VBool_VArray3_VBool(nil),
		SourceLabel: "[]VMap_VArray3_VBool_VArray3_VBool{}",
		Source:      []VMap_VArray3_VBool_VArray3_VBool(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_VMap_VArray3_VBool_VArray3_VBool{{{true, true, true}: {true, true, true}}}",
		Target: VList_VMap_VArray3_VBool_VArray3_VBool{
			{
				{
					true,
					true,
					true,
				}: {
					true,
					true,
					true,
				},
			},
		},
		SourceLabel: "VList_VMap_VArray3_VBool_VArray3_VBool{{{true, true, true}: {true, true, true}}}",
		Source: VList_VMap_VArray3_VBool_VArray3_VBool{
			{
				{
					true,
					true,
					true,
				}: {
					true,
					true,
					true,
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_VMap_VArray3_VBool_VArray3_VBool{{{true, true, true}: {true, true, true}}}",
		Target: VList_VMap_VArray3_VBool_VArray3_VBool{
			{
				{
					true,
					true,
					true,
				}: {
					true,
					true,
					true,
				},
			},
		},
		SourceLabel: "[]VMap_VArray3_VBool_VArray3_VBool{{{true, true, true}: {true, true, true}}}",
		Source: []VMap_VArray3_VBool_VArray3_VBool{
			{
				{
					true,
					true,
					true,
				}: {
					true,
					true,
					true,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_VStructDepth2_All{}",
		Target:      VList_VStructDepth2_All(nil),
		SourceLabel: "VList_VStructDepth2_All{}",
		Source:      VList_VStructDepth2_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VStructDepth2_All{}",
		Target:      VList_VStructDepth2_All(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VStructDepth2_All{}",
		Target:      VList_VStructDepth2_All(nil),
		SourceLabel: "[]?VStructDepth2_Set_Float64{}",
		Source:      []*VStructDepth2_Set_Float64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_VStructDepth2_All{{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Target: VList_VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: VArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: VList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: VStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: VEnumAbcC,
					F9: VEnumBcdD,
					F11: VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: VUnionDepth1_Float64F29{1.5},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 123,
				},
			},
		},
		SourceLabel: "VList_VStructDepth2_All{{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Source: VList_VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: VArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: VList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: VStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: VEnumAbcC,
					F9: VEnumBcdD,
					F11: VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: VUnionDepth1_Float64F29{1.5},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 123,
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_VStructDepth2_All{{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Target: VList_VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: VArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: VList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: VStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: VEnumAbcC,
					F9: VEnumBcdD,
					F11: VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: VUnionDepth1_Float64F29{1.5},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 123,
				},
			},
		},
		SourceLabel: "[]VStructDepth2_All{{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Source: []VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: VArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: VList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: VStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: VEnumAbcC,
					F9: VEnumBcdD,
					F11: VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: VUnionDepth1_Float64F29{1.5},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 123,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VList_VStructDepth2_All{{F0: {typeobject(VStructDepth1_Any), typeobject(VStructDepth2_VSet_VEnumBcd)}, F1: {2852344228}, F2: {6226, -13730, -14739}, F4: {1.0146575372763048e+09, 9.589193381210451e+08}, F5: {B, D}, F6: {0: 177}, F8: {F0: set[VUnionDepth1_VNamedError]{{F11: {}}}, F1: true, F2: true, F3: \"abcd\", F4: \"Θ\", F6: 86, F7: 54, F8: B, F12: {Id: \"ΔΘΠ\", Msg: \"ΔΘΠΣΦ\"}, F16: 1795229240, F17: 8052886347157498977, F18: 11152925981139820641, F19: -8, F20: 53, F21: -11802, F22: -3969, F23: 189643013, F24: -308771394, F25: 2792823012750469968, F26: 2797901140661400422, F27: -1.4882101e+08, F28: -1.0015032e+09, F30: 6.267675903713744e+08, F31: {}, F32: {Msg: \"ΔΘΠ\"}}, F10: {F12: {Id: \"bcdeΔΘΠΣ\", Msg: \"Φ\"}}, F12: {}, F13: {}}, {F0: {typeobject([]uint32), typeobject(any)}, F2: {0}, F3: {VUnionDepth1_VFloat64{F30: 6.286506511512573e+07}, map[VEnumAbc]VEnumAbc{B: B}, VArray3_OptVNamedError{{Id: \"d\", Msg: \"世\"}, {}, {Id: \"ΔΘΠΣΦ王普澤\", Msg: \"abcdeΔΘΠΣ\"}}}, F4: {-1.757002314296858e+08}, F5: {B}, F6: {140: 52, 57: 170}, F7: {2086068135: 2615176351, 3299523734: 853200618, 3996236786: 0}, F8: {F0: VSet_VBool{false}, F1: true, F2: true, F5: typeobject([]?VStructDepth1_VEnumBcd), F6: 51, F9: C, F15: 4071038098, F17: 6010338561684120220, F18: 6523574835546476118, F19: -46, F20: -38, F21: 11203, F22: -908, F23: -147854536, F24: -980745890, F25: 1674169228161876707, F26: -3407834473795059198, F27: -7.565527e+08, F28: 1.12560536e+08, F29: -1.5147075263360175e+08, F32: {}}, F10: {F0: VSet_VUnionDepth2_VArray1_String{{F0: {\"abc\"}}, {F0: {\"ΔΘΠΣΦ王普\"}}}}}}",
		Target: VList_VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					__VDLType_struct_83,
					__VDLType_struct_186,
				},
				F1: VArray1_Uint32{
					2852344228,
				},
				F2: []int16{
					6226,
					-13730,
					-14739,
				},
				F4: map[float64]struct{}{
					1.0146575372763048e+09: struct{}{},
					9.589193381210451e+08:  struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					0: 177,
				},
				F8: VStructDepth1_All{
					F0: map[VUnionDepth1_VNamedError]struct{}{
						VUnionDepth1_VNamedErrorF11{}: struct{}{},
					},
					F1: true,
					F2: true,
					F3: "abcd",
					F4: "Θ",
					F5: vdl.AnyType,
					F6: 86,
					F7: 54,
					F8: VEnumAbcB,
					F12: verror.FromWire(&vdl.WireError{
						Id:  "ΔΘΠ",
						Msg: "ΔΘΠΣΦ",
					}),
					F16: 1795229240,
					F17: 8052886347157498977,
					F18: 11152925981139820641,
					F19: -8,
					F20: 53,
					F21: -11802,
					F22: -3969,
					F23: 189643013,
					F24: -308771394,
					F25: 2792823012750469968,
					F26: 2797901140661400422,
					F27: -1.4882101e+08,
					F28: -1.0015032e+09,
					F30: 6.267675903713744e+08,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Msg: "ΔΘΠ",
					},
				},
				F10: VUnionDepth1_AllF12{verror.FromWire(&vdl.WireError{
					Id:  "bcdeΔΘΠΣ",
					Msg: "Φ",
				})},
				F11: VUnionDepth1_Float64F29{},
				F12: &VStructDepth1_VEnumBcd{},
				F13: &VStructDepth1_VUint16{},
			},
			{
				F0: VArray2_TypeObject{
					__VDLType_list_288,
					vdl.AnyType,
				},
				F2: []int16{
					0,
				},
				F3: VList_Any{
					VUnionDepth1_VFloat64(VUnionDepth1_VFloat64F30{6.286506511512573e+07}),
					map[VEnumAbc]VEnumAbc{
						VEnumAbcB: VEnumAbcB,
					},
					VArray3_OptVNamedError{
						{
							Id:  "d",
							Msg: "世",
						},
						{},
						{
							Id:  "ΔΘΠΣΦ王普澤",
							Msg: "abcdeΔΘΠΣ",
						},
					},
				},
				F4: map[float64]struct{}{
					-1.757002314296858e+08: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
				},
				F6: map[byte]byte{
					140: 52,
					57:  170,
				},
				F7: map[uint32]uint32{
					2086068135: 2615176351,
					3299523734: 853200618,
					3996236786: 0,
				},
				F8: VStructDepth1_All{
					F0: VSet_VBool{
						false: struct{}{},
					},
					F1:  true,
					F2:  true,
					F5:  __VDLType_list_289,
					F6:  51,
					F9:  VEnumBcdC,
					F15: 4071038098,
					F17: 6010338561684120220,
					F18: 6523574835546476118,
					F19: -46,
					F20: -38,
					F21: 11203,
					F22: -908,
					F23: -147854536,
					F24: -980745890,
					F25: 1674169228161876707,
					F26: -3407834473795059198,
					F27: -7.565527e+08,
					F28: 1.12560536e+08,
					F29: -1.5147075263360175e+08,
					F32: &VNamedError{},
				},
				F10: VUnionDepth1_AllF0{VSet_VUnionDepth2_VArray1_String{
					VUnionDepth2_VArray1_StringF0{VArray1_String{
						"abc",
					}}: struct{}{},
					VUnionDepth2_VArray1_StringF0{VArray1_String{
						"ΔΘΠΣΦ王普",
					}}: struct{}{},
				}},
				F11: VUnionDepth1_Float64F29{},
			},
		},
		SourceLabel: "VList_VStructDepth2_All{{F0: {typeobject(VStructDepth1_Any), typeobject(VStructDepth2_VSet_VEnumBcd)}, F1: {2852344228}, F2: {6226, -13730, -14739}, F4: {1.0146575372763048e+09, 9.589193381210451e+08}, F5: {B, D}, F6: {0: 177}, F8: {F0: set[VUnionDepth1_VNamedError]{{F11: {}}}, F1: true, F2: true, F3: \"abcd\", F4: \"Θ\", F6: 86, F7: 54, F8: B, F12: {Id: \"ΔΘΠ\", Msg: \"ΔΘΠΣΦ\"}, F16: 1795229240, F17: 8052886347157498977, F18: 11152925981139820641, F19: -8, F20: 53, F21: -11802, F22: -3969, F23: 189643013, F24: -308771394, F25: 2792823012750469968, F26: 2797901140661400422, F27: -1.4882101e+08, F28: -1.0015032e+09, F30: 6.267675903713744e+08, F31: {}, F32: {Msg: \"ΔΘΠ\"}}, F10: {F12: {Id: \"bcdeΔΘΠΣ\", Msg: \"Φ\"}}, F12: {}, F13: {}}, {F0: {typeobject([]uint32), typeobject(any)}, F2: {0}, F3: {VUnionDepth1_VFloat64{F30: 6.286506511512573e+07}, map[VEnumAbc]VEnumAbc{B: B}, VArray3_OptVNamedError{{Id: \"d\", Msg: \"世\"}, {}, {Id: \"ΔΘΠΣΦ王普澤\", Msg: \"abcdeΔΘΠΣ\"}}}, F4: {-1.757002314296858e+08}, F5: {B}, F6: {140: 52, 57: 170}, F7: {2086068135: 2615176351, 3299523734: 853200618, 3996236786: 0}, F8: {F0: VSet_VBool{false}, F1: true, F2: true, F5: typeobject([]?VStructDepth1_VEnumBcd), F6: 51, F9: C, F15: 4071038098, F17: 6010338561684120220, F18: 6523574835546476118, F19: -46, F20: -38, F21: 11203, F22: -908, F23: -147854536, F24: -980745890, F25: 1674169228161876707, F26: -3407834473795059198, F27: -7.565527e+08, F28: 1.12560536e+08, F29: -1.5147075263360175e+08, F32: {}}, F10: {F0: VSet_VUnionDepth2_VArray1_String{{F0: {\"abc\"}}, {F0: {\"ΔΘΠΣΦ王普\"}}}}}}",
		Source: VList_VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					__VDLType_struct_83,
					__VDLType_struct_186,
				},
				F1: VArray1_Uint32{
					2852344228,
				},
				F2: []int16{
					6226,
					-13730,
					-14739,
				},
				F4: map[float64]struct{}{
					1.0146575372763048e+09: struct{}{},
					9.589193381210451e+08:  struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					0: 177,
				},
				F8: VStructDepth1_All{
					F0: map[VUnionDepth1_VNamedError]struct{}{
						VUnionDepth1_VNamedErrorF11{}: struct{}{},
					},
					F1: true,
					F2: true,
					F3: "abcd",
					F4: "Θ",
					F5: vdl.AnyType,
					F6: 86,
					F7: 54,
					F8: VEnumAbcB,
					F12: verror.FromWire(&vdl.WireError{
						Id:  "ΔΘΠ",
						Msg: "ΔΘΠΣΦ",
					}),
					F16: 1795229240,
					F17: 8052886347157498977,
					F18: 11152925981139820641,
					F19: -8,
					F20: 53,
					F21: -11802,
					F22: -3969,
					F23: 189643013,
					F24: -308771394,
					F25: 2792823012750469968,
					F26: 2797901140661400422,
					F27: -1.4882101e+08,
					F28: -1.0015032e+09,
					F30: 6.267675903713744e+08,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Msg: "ΔΘΠ",
					},
				},
				F10: VUnionDepth1_AllF12{verror.FromWire(&vdl.WireError{
					Id:  "bcdeΔΘΠΣ",
					Msg: "Φ",
				})},
				F11: VUnionDepth1_Float64F29{},
				F12: &VStructDepth1_VEnumBcd{},
				F13: &VStructDepth1_VUint16{},
			},
			{
				F0: VArray2_TypeObject{
					__VDLType_list_288,
					vdl.AnyType,
				},
				F2: []int16{
					0,
				},
				F3: VList_Any{
					VUnionDepth1_VFloat64(VUnionDepth1_VFloat64F30{6.286506511512573e+07}),
					map[VEnumAbc]VEnumAbc{
						VEnumAbcB: VEnumAbcB,
					},
					VArray3_OptVNamedError{
						{
							Id:  "d",
							Msg: "世",
						},
						{},
						{
							Id:  "ΔΘΠΣΦ王普澤",
							Msg: "abcdeΔΘΠΣ",
						},
					},
				},
				F4: map[float64]struct{}{
					-1.757002314296858e+08: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
				},
				F6: map[byte]byte{
					140: 52,
					57:  170,
				},
				F7: map[uint32]uint32{
					2086068135: 2615176351,
					3299523734: 853200618,
					3996236786: 0,
				},
				F8: VStructDepth1_All{
					F0: VSet_VBool{
						false: struct{}{},
					},
					F1:  true,
					F2:  true,
					F5:  __VDLType_list_289,
					F6:  51,
					F9:  VEnumBcdC,
					F15: 4071038098,
					F17: 6010338561684120220,
					F18: 6523574835546476118,
					F19: -46,
					F20: -38,
					F21: 11203,
					F22: -908,
					F23: -147854536,
					F24: -980745890,
					F25: 1674169228161876707,
					F26: -3407834473795059198,
					F27: -7.565527e+08,
					F28: 1.12560536e+08,
					F29: -1.5147075263360175e+08,
					F32: &VNamedError{},
				},
				F10: VUnionDepth1_AllF0{VSet_VUnionDepth2_VArray1_String{
					VUnionDepth2_VArray1_StringF0{VArray1_String{
						"abc",
					}}: struct{}{},
					VUnionDepth2_VArray1_StringF0{VArray1_String{
						"ΔΘΠΣΦ王普",
					}}: struct{}{},
				}},
				F11: VUnionDepth1_Float64F29{},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VList_VStructDepth2_All{{F0: {typeobject(VStructDepth1_Any), typeobject(VStructDepth2_VSet_VEnumBcd)}, F1: {2852344228}, F2: {6226, -13730, -14739}, F4: {1.0146575372763048e+09, 9.589193381210451e+08}, F5: {B, D}, F6: {0: 177}, F8: {F0: set[VUnionDepth1_VNamedError]{{F11: {}}}, F1: true, F2: true, F3: \"abcd\", F4: \"Θ\", F6: 86, F7: 54, F8: B, F12: {Id: \"ΔΘΠ\", Msg: \"ΔΘΠΣΦ\"}, F16: 1795229240, F17: 8052886347157498977, F18: 11152925981139820641, F19: -8, F20: 53, F21: -11802, F22: -3969, F23: 189643013, F24: -308771394, F25: 2792823012750469968, F26: 2797901140661400422, F27: -1.4882101e+08, F28: -1.0015032e+09, F30: 6.267675903713744e+08, F31: {}, F32: {Msg: \"ΔΘΠ\"}}, F10: {F12: {Id: \"bcdeΔΘΠΣ\", Msg: \"Φ\"}}, F12: {}, F13: {}}, {F0: {typeobject([]uint32), typeobject(any)}, F2: {0}, F3: {VUnionDepth1_VFloat64{F30: 6.286506511512573e+07}, map[VEnumAbc]VEnumAbc{B: B}, VArray3_OptVNamedError{{Id: \"d\", Msg: \"世\"}, {}, {Id: \"ΔΘΠΣΦ王普澤\", Msg: \"abcdeΔΘΠΣ\"}}}, F4: {-1.757002314296858e+08}, F5: {B}, F6: {140: 52, 57: 170}, F7: {2086068135: 2615176351, 3299523734: 853200618, 3996236786: 0}, F8: {F0: VSet_VBool{false}, F1: true, F2: true, F5: typeobject([]?VStructDepth1_VEnumBcd), F6: 51, F9: C, F15: 4071038098, F17: 6010338561684120220, F18: 6523574835546476118, F19: -46, F20: -38, F21: 11203, F22: -908, F23: -147854536, F24: -980745890, F25: 1674169228161876707, F26: -3407834473795059198, F27: -7.565527e+08, F28: 1.12560536e+08, F29: -1.5147075263360175e+08, F32: {}}, F10: {F0: VSet_VUnionDepth2_VArray1_String{{F0: {\"abc\"}}, {F0: {\"ΔΘΠΣΦ王普\"}}}}}}",
		Target: VList_VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					__VDLType_struct_83,
					__VDLType_struct_186,
				},
				F1: VArray1_Uint32{
					2852344228,
				},
				F2: []int16{
					6226,
					-13730,
					-14739,
				},
				F4: map[float64]struct{}{
					1.0146575372763048e+09: struct{}{},
					9.589193381210451e+08:  struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					0: 177,
				},
				F8: VStructDepth1_All{
					F0: map[VUnionDepth1_VNamedError]struct{}{
						VUnionDepth1_VNamedErrorF11{}: struct{}{},
					},
					F1: true,
					F2: true,
					F3: "abcd",
					F4: "Θ",
					F5: vdl.AnyType,
					F6: 86,
					F7: 54,
					F8: VEnumAbcB,
					F12: verror.FromWire(&vdl.WireError{
						Id:  "ΔΘΠ",
						Msg: "ΔΘΠΣΦ",
					}),
					F16: 1795229240,
					F17: 8052886347157498977,
					F18: 11152925981139820641,
					F19: -8,
					F20: 53,
					F21: -11802,
					F22: -3969,
					F23: 189643013,
					F24: -308771394,
					F25: 2792823012750469968,
					F26: 2797901140661400422,
					F27: -1.4882101e+08,
					F28: -1.0015032e+09,
					F30: 6.267675903713744e+08,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Msg: "ΔΘΠ",
					},
				},
				F10: VUnionDepth1_AllF12{verror.FromWire(&vdl.WireError{
					Id:  "bcdeΔΘΠΣ",
					Msg: "Φ",
				})},
				F11: VUnionDepth1_Float64F29{},
				F12: &VStructDepth1_VEnumBcd{},
				F13: &VStructDepth1_VUint16{},
			},
			{
				F0: VArray2_TypeObject{
					__VDLType_list_288,
					vdl.AnyType,
				},
				F2: []int16{
					0,
				},
				F3: VList_Any{
					VUnionDepth1_VFloat64(VUnionDepth1_VFloat64F30{6.286506511512573e+07}),
					map[VEnumAbc]VEnumAbc{
						VEnumAbcB: VEnumAbcB,
					},
					VArray3_OptVNamedError{
						{
							Id:  "d",
							Msg: "世",
						},
						{},
						{
							Id:  "ΔΘΠΣΦ王普澤",
							Msg: "abcdeΔΘΠΣ",
						},
					},
				},
				F4: map[float64]struct{}{
					-1.757002314296858e+08: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
				},
				F6: map[byte]byte{
					140: 52,
					57:  170,
				},
				F7: map[uint32]uint32{
					2086068135: 2615176351,
					3299523734: 853200618,
					3996236786: 0,
				},
				F8: VStructDepth1_All{
					F0: VSet_VBool{
						false: struct{}{},
					},
					F1:  true,
					F2:  true,
					F5:  __VDLType_list_289,
					F6:  51,
					F9:  VEnumBcdC,
					F15: 4071038098,
					F17: 6010338561684120220,
					F18: 6523574835546476118,
					F19: -46,
					F20: -38,
					F21: 11203,
					F22: -908,
					F23: -147854536,
					F24: -980745890,
					F25: 1674169228161876707,
					F26: -3407834473795059198,
					F27: -7.565527e+08,
					F28: 1.12560536e+08,
					F29: -1.5147075263360175e+08,
					F32: &VNamedError{},
				},
				F10: VUnionDepth1_AllF0{VSet_VUnionDepth2_VArray1_String{
					VUnionDepth2_VArray1_StringF0{VArray1_String{
						"abc",
					}}: struct{}{},
					VUnionDepth2_VArray1_StringF0{VArray1_String{
						"ΔΘΠΣΦ王普",
					}}: struct{}{},
				}},
				F11: VUnionDepth1_Float64F29{},
			},
		},
		SourceLabel: "VArray2_VStructDepth2_All{{F0: {typeobject(VStructDepth1_Any), typeobject(VStructDepth2_VSet_VEnumBcd)}, F1: {2852344228}, F2: {6226, -13730, -14739}, F4: {1.0146575372763048e+09, 9.589193381210451e+08}, F5: {B, D}, F6: {0: 177}, F8: {F0: set[VUnionDepth1_VNamedError]{{F11: {}}}, F1: true, F2: true, F3: \"abcd\", F4: \"Θ\", F6: 86, F7: 54, F8: B, F12: {Id: \"ΔΘΠ\", Msg: \"ΔΘΠΣΦ\"}, F16: 1795229240, F17: 8052886347157498977, F18: 11152925981139820641, F19: -8, F20: 53, F21: -11802, F22: -3969, F23: 189643013, F24: -308771394, F25: 2792823012750469968, F26: 2797901140661400422, F27: -1.4882101e+08, F28: -1.0015032e+09, F30: 6.267675903713744e+08, F31: {}, F32: {Msg: \"ΔΘΠ\"}}, F10: {F12: {Id: \"bcdeΔΘΠΣ\", Msg: \"Φ\"}}, F12: {}, F13: {}}, {F0: {typeobject([]uint32), typeobject(any)}, F2: {0}, F3: {VUnionDepth1_VFloat64{F30: 6.286506511512573e+07}, map[VEnumAbc]VEnumAbc{B: B}, VArray3_OptVNamedError{{Id: \"d\", Msg: \"世\"}, {}, {Id: \"ΔΘΠΣΦ王普澤\", Msg: \"abcdeΔΘΠΣ\"}}}, F4: {-1.757002314296858e+08}, F5: {B}, F6: {140: 52, 57: 170}, F7: {2086068135: 2615176351, 3299523734: 853200618, 3996236786: 0}, F8: {F0: VSet_VBool{false}, F1: true, F2: true, F5: typeobject([]?VStructDepth1_VEnumBcd), F6: 51, F9: C, F15: 4071038098, F17: 6010338561684120220, F18: 6523574835546476118, F19: -46, F20: -38, F21: 11203, F22: -908, F23: -147854536, F24: -980745890, F25: 1674169228161876707, F26: -3407834473795059198, F27: -7.565527e+08, F28: 1.12560536e+08, F29: -1.5147075263360175e+08, F32: {}}, F10: {F0: VSet_VUnionDepth2_VArray1_String{{F0: {\"abc\"}}, {F0: {\"ΔΘΠΣΦ王普\"}}}}}}",
		Source: VArray2_VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					__VDLType_struct_83,
					__VDLType_struct_186,
				},
				F1: VArray1_Uint32{
					2852344228,
				},
				F2: []int16{
					6226,
					-13730,
					-14739,
				},
				F4: map[float64]struct{}{
					1.0146575372763048e+09: struct{}{},
					9.589193381210451e+08:  struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					0: 177,
				},
				F8: VStructDepth1_All{
					F0: map[VUnionDepth1_VNamedError]struct{}{
						VUnionDepth1_VNamedErrorF11{}: struct{}{},
					},
					F1: true,
					F2: true,
					F3: "abcd",
					F4: "Θ",
					F5: vdl.AnyType,
					F6: 86,
					F7: 54,
					F8: VEnumAbcB,
					F12: verror.FromWire(&vdl.WireError{
						Id:  "ΔΘΠ",
						Msg: "ΔΘΠΣΦ",
					}),
					F16: 1795229240,
					F17: 8052886347157498977,
					F18: 11152925981139820641,
					F19: -8,
					F20: 53,
					F21: -11802,
					F22: -3969,
					F23: 189643013,
					F24: -308771394,
					F25: 2792823012750469968,
					F26: 2797901140661400422,
					F27: -1.4882101e+08,
					F28: -1.0015032e+09,
					F30: 6.267675903713744e+08,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Msg: "ΔΘΠ",
					},
				},
				F10: VUnionDepth1_AllF12{verror.FromWire(&vdl.WireError{
					Id:  "bcdeΔΘΠΣ",
					Msg: "Φ",
				})},
				F11: VUnionDepth1_Float64F29{},
				F12: &VStructDepth1_VEnumBcd{},
				F13: &VStructDepth1_VUint16{},
			},
			{
				F0: VArray2_TypeObject{
					__VDLType_list_288,
					vdl.AnyType,
				},
				F2: []int16{
					0,
				},
				F3: VList_Any{
					VUnionDepth1_VFloat64(VUnionDepth1_VFloat64F30{6.286506511512573e+07}),
					map[VEnumAbc]VEnumAbc{
						VEnumAbcB: VEnumAbcB,
					},
					VArray3_OptVNamedError{
						{
							Id:  "d",
							Msg: "世",
						},
						{},
						{
							Id:  "ΔΘΠΣΦ王普澤",
							Msg: "abcdeΔΘΠΣ",
						},
					},
				},
				F4: map[float64]struct{}{
					-1.757002314296858e+08: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
				},
				F6: map[byte]byte{
					140: 52,
					57:  170,
				},
				F7: map[uint32]uint32{
					2086068135: 2615176351,
					3299523734: 853200618,
					3996236786: 0,
				},
				F8: VStructDepth1_All{
					F0: VSet_VBool{
						false: struct{}{},
					},
					F1:  true,
					F2:  true,
					F5:  __VDLType_list_289,
					F6:  51,
					F9:  VEnumBcdC,
					F15: 4071038098,
					F17: 6010338561684120220,
					F18: 6523574835546476118,
					F19: -46,
					F20: -38,
					F21: 11203,
					F22: -908,
					F23: -147854536,
					F24: -980745890,
					F25: 1674169228161876707,
					F26: -3407834473795059198,
					F27: -7.565527e+08,
					F28: 1.12560536e+08,
					F29: -1.5147075263360175e+08,
					F32: &VNamedError{},
				},
				F10: VUnionDepth1_AllF0{VSet_VUnionDepth2_VArray1_String{
					VUnionDepth2_VArray1_StringF0{VArray1_String{
						"abc",
					}}: struct{}{},
					VUnionDepth2_VArray1_StringF0{VArray1_String{
						"ΔΘΠΣΦ王普",
					}}: struct{}{},
				}},
				F11: VUnionDepth1_Float64F29{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_VUnionDepth2_All{}",
		Target:      VList_VUnionDepth2_All(nil),
		SourceLabel: "VList_VUnionDepth2_All{}",
		Source:      VList_VUnionDepth2_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VUnionDepth2_All{}",
		Target:      VList_VUnionDepth2_All(nil),
		SourceLabel: "VList_Any{}",
		Source:      VList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_VUnionDepth2_All{}",
		Target:      VList_VUnionDepth2_All(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_VUnionDepth2_All{{F13: {F28: 1.5}}}",
		Target: VList_VUnionDepth2_All{
			VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
				F28: 1.5,
			}},
		},
		SourceLabel: "VList_VUnionDepth2_All{{F13: {F28: 1.5}}}",
		Source: VList_VUnionDepth2_All{
			VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
				F28: 1.5,
			}},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_VUnionDepth2_All{{F13: {F28: 1.5}}}",
		Target: VList_VUnionDepth2_All{
			VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
				F28: 1.5,
			}},
		},
		SourceLabel: "[]any{VUnionDepth2_All{F13: {F28: 1.5}}}",
		Source: []interface{}{
			VUnionDepth2_All(VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
				F28: 1.5,
			}}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VList_VUnionDepth2_All{{F0: {}}}",
		Target: VList_VUnionDepth2_All{
			VUnionDepth2_AllF0{},
		},
		SourceLabel: "VList_VUnionDepth2_All{{F0: {}}}",
		Source: VList_VUnionDepth2_All{
			VUnionDepth2_AllF0{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VList_VUnionDepth2_All{{F0: {}}}",
		Target: VList_VUnionDepth2_All{
			VUnionDepth2_AllF0{},
		},
		SourceLabel: "VList_Any{VUnionDepth2_All{F0: {}}}",
		Source: VList_Any{
			VUnionDepth2_All(VUnionDepth2_AllF0{}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VList_OptVStructDepth2_Set_Float64{}",
		Target:      VList_OptVStructDepth2_Set_Float64(nil),
		SourceLabel: "VList_OptVStructDepth2_Set_Float64{}",
		Source:      VList_OptVStructDepth2_Set_Float64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_OptVStructDepth2_Set_Float64{}",
		Target:      VList_OptVStructDepth2_Set_Float64(nil),
		SourceLabel: "[]?VStructEmpty{}",
		Source:      []*VStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VList_OptVStructDepth2_Set_Float64{}",
		Target:      VList_OptVStructDepth2_Set_Float64(nil),
		SourceLabel: "VList_VStructEmpty{}",
		Source:      VList_VStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VList_OptVStructDepth2_Set_Float64{{F4: {1.5}}}",
		Target: VList_OptVStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
		SourceLabel: "VList_OptVStructDepth2_Set_Float64{{F4: {1.5}}}",
		Source: VList_OptVStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VList_OptVStructDepth2_Set_Float64{{F4: {1.5}}}",
		Target: VList_OptVStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
		SourceLabel: "VList_VStructDepth2_All{{F4: {1.5}}}",
		Source: VList_VStructDepth2_All{
			{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VList_OptVStructDepth2_Set_Float64{{}, nil}",
		Target: VList_OptVStructDepth2_Set_Float64{
			{},
			nil,
		},
		SourceLabel: "VList_OptVStructDepth2_Set_Float64{{}, nil}",
		Source: VList_OptVStructDepth2_Set_Float64{
			{},
			nil,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VList_OptVStructDepth2_Set_Float64{{}, nil}",
		Target: VList_OptVStructDepth2_Set_Float64{
			{},
			nil,
		},
		SourceLabel: "VList_OptVStructEmpty{{}, nil}",
		Source: VList_OptVStructEmpty{
			{},
			nil,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[VArray1_VArray3_Int64]{}",
		Target:      map[VArray1_VArray3_Int64]struct{}(nil),
		SourceLabel: "set[VArray1_VArray3_Int64]{}",
		Source:      map[VArray1_VArray3_Int64]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[VArray1_VArray3_Int64]{}",
		Target:      map[VArray1_VArray3_Int64]struct{}(nil),
		SourceLabel: "VSet_VArray1_VArray3_Int64{}",
		Source:      VSet_VArray1_VArray3_Int64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[VArray1_VArray3_Int64]{{{-123, -123, -123}}}",
		Target: map[VArray1_VArray3_Int64]struct{}{
			{
				{
					-123,
					-123,
					-123,
				},
			}: struct{}{},
		},
		SourceLabel: "set[VArray1_VArray3_Int64]{{{-123, -123, -123}}}",
		Source: map[VArray1_VArray3_Int64]struct{}{
			{
				{
					-123,
					-123,
					-123,
				},
			}: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[VArray1_VArray3_Int64]{{{-123, -123, -123}}}",
		Target: map[VArray1_VArray3_Int64]struct{}{
			{
				{
					-123,
					-123,
					-123,
				},
			}: struct{}{},
		},
		SourceLabel: "VSet_VArray1_VArray3_Int64{{{-123, -123, -123}}}",
		Source: VSet_VArray1_VArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "set[VArray1_VArray3_Int64]{{{-4470894919113206637, 0, -2119333667702404185}}, {{0, -1703399565817978280, 0}}}",
		Target: map[VArray1_VArray3_Int64]struct{}{
			{
				{
					-4470894919113206637,
					0,
					-2119333667702404185,
				},
			}: struct{}{},
			{
				{
					0,
					-1703399565817978280,
					0,
				},
			}: struct{}{},
		},
		SourceLabel: "set[VArray1_VArray3_Int64]{{{-4470894919113206637, 0, -2119333667702404185}}, {{0, -1703399565817978280, 0}}}",
		Source: map[VArray1_VArray3_Int64]struct{}{
			{
				{
					-4470894919113206637,
					0,
					-2119333667702404185,
				},
			}: struct{}{},
			{
				{
					0,
					-1703399565817978280,
					0,
				},
			}: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "set[VArray1_VArray3_Int64]{{{-4470894919113206637, 0, -2119333667702404185}}, {{0, -1703399565817978280, 0}}}",
		Target: map[VArray1_VArray3_Int64]struct{}{
			{
				{
					-4470894919113206637,
					0,
					-2119333667702404185,
				},
			}: struct{}{},
			{
				{
					0,
					-1703399565817978280,
					0,
				},
			}: struct{}{},
		},
		SourceLabel: "VSet_VArray1_VArray3_Int64{{{-4470894919113206637, 0, -2119333667702404185}}, {{0, -1703399565817978280, 0}}}",
		Source: VSet_VArray1_VArray3_Int64{
			{
				{
					-4470894919113206637,
					0,
					-2119333667702404185,
				},
			}: struct{}{},
			{
				{
					0,
					-1703399565817978280,
					0,
				},
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[VStructDepth2_VStructDepth1_Bool]{}",
		Target:      map[VStructDepth2_VStructDepth1_Bool]struct{}(nil),
		SourceLabel: "set[VStructDepth2_VStructDepth1_Bool]{}",
		Source:      map[VStructDepth2_VStructDepth1_Bool]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[VStructDepth2_VStructDepth1_Bool]{}",
		Target:      map[VStructDepth2_VStructDepth1_Bool]struct{}(nil),
		SourceLabel: "VSet_VStructEmpty{}",
		Source:      VSet_VStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[VStructDepth2_VStructDepth1_Bool]{}",
		Target:      map[VStructDepth2_VStructDepth1_Bool]struct{}(nil),
		SourceLabel: "set[VStructEmpty]{}",
		Source:      map[VStructEmpty]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[VStructDepth2_VStructDepth1_Bool]{{F9: {F1: true}}}",
		Target: map[VStructDepth2_VStructDepth1_Bool]struct{}{
			{
				F9: VStructDepth1_Bool{
					F1: true,
				},
			}: struct{}{},
		},
		SourceLabel: "set[VStructDepth2_VStructDepth1_Bool]{{F9: {F1: true}}}",
		Source: map[VStructDepth2_VStructDepth1_Bool]struct{}{
			{
				F9: VStructDepth1_Bool{
					F1: true,
				},
			}: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[VStructDepth2_VStructDepth1_Bool]{{F9: {F1: true}}}",
		Target: map[VStructDepth2_VStructDepth1_Bool]struct{}{
			{
				F9: VStructDepth1_Bool{
					F1: true,
				},
			}: struct{}{},
		},
		SourceLabel: "VSet_VStructDepth2_VStructDepth1_Bool{{F9: {F1: true}}}",
		Source: VSet_VStructDepth2_VStructDepth1_Bool{
			{
				F9: VStructDepth1_Bool{
					F1: true,
				},
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[VUnionDepth2_VArray1_String]{}",
		Target:      map[VUnionDepth2_VArray1_String]struct{}(nil),
		SourceLabel: "set[VUnionDepth2_VArray1_String]{}",
		Source:      map[VUnionDepth2_VArray1_String]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[VUnionDepth2_VArray1_String]{}",
		Target:      map[VUnionDepth2_VArray1_String]struct{}(nil),
		SourceLabel: "VSet_VUnionDepth2_VArray1_String{}",
		Source:      VSet_VUnionDepth2_VArray1_String(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[VUnionDepth2_VArray1_String]{{F0: {\"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: map[VUnionDepth2_VArray1_String]struct{}{
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"abcdeΔΘΠΣΦ王普澤世界",
			}}: struct{}{},
		},
		SourceLabel: "set[VUnionDepth2_VArray1_String]{{F0: {\"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: map[VUnionDepth2_VArray1_String]struct{}{
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"abcdeΔΘΠΣΦ王普澤世界",
			}}: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[VUnionDepth2_VArray1_String]{{F0: {\"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: map[VUnionDepth2_VArray1_String]struct{}{
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"abcdeΔΘΠΣΦ王普澤世界",
			}}: struct{}{},
		},
		SourceLabel: "VSet_VUnionDepth2_VArray1_String{{F0: {\"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VSet_VUnionDepth2_VArray1_String{
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"abcdeΔΘΠΣΦ王普澤世界",
			}}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "set[VUnionDepth2_VArray1_String]{{F0: {\"ΔΘΠΣΦ王\"}}, {F0: {\"ΠΣΦ\"}}, {F0: {\"ΣΦ王普澤世\"}}}",
		Target: map[VUnionDepth2_VArray1_String]struct{}{
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"ΔΘΠΣΦ王",
			}}: struct{}{},
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"ΠΣΦ",
			}}: struct{}{},
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"ΣΦ王普澤世",
			}}: struct{}{},
		},
		SourceLabel: "set[VUnionDepth2_VArray1_String]{{F0: {\"ΔΘΠΣΦ王\"}}, {F0: {\"ΠΣΦ\"}}, {F0: {\"ΣΦ王普澤世\"}}}",
		Source: map[VUnionDepth2_VArray1_String]struct{}{
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"ΔΘΠΣΦ王",
			}}: struct{}{},
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"ΠΣΦ",
			}}: struct{}{},
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"ΣΦ王普澤世",
			}}: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "set[VUnionDepth2_VArray1_String]{{F0: {\"ΔΘΠΣΦ王\"}}, {F0: {\"ΠΣΦ\"}}, {F0: {\"ΣΦ王普澤世\"}}}",
		Target: map[VUnionDepth2_VArray1_String]struct{}{
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"ΔΘΠΣΦ王",
			}}: struct{}{},
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"ΠΣΦ",
			}}: struct{}{},
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"ΣΦ王普澤世",
			}}: struct{}{},
		},
		SourceLabel: "VSet_VUnionDepth2_VArray1_String{{F0: {\"ΔΘΠΣΦ王\"}}, {F0: {\"ΠΣΦ\"}}, {F0: {\"ΣΦ王普澤世\"}}}",
		Source: VSet_VUnionDepth2_VArray1_String{
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"ΔΘΠΣΦ王",
			}}: struct{}{},
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"ΠΣΦ",
			}}: struct{}{},
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"ΣΦ王普澤世",
			}}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VSet_VArray1_VArray3_Int64{}",
		Target:      VSet_VArray1_VArray3_Int64(nil),
		SourceLabel: "VSet_VArray1_VArray3_Int64{}",
		Source:      VSet_VArray1_VArray3_Int64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_VArray1_VArray3_Int64{}",
		Target:      VSet_VArray1_VArray3_Int64(nil),
		SourceLabel: "set[VArray1_VArray3_Int64]{}",
		Source:      map[VArray1_VArray3_Int64]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VSet_VArray1_VArray3_Int64{{{-123, -123, -123}}}",
		Target: VSet_VArray1_VArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: struct{}{},
		},
		SourceLabel: "VSet_VArray1_VArray3_Int64{{{-123, -123, -123}}}",
		Source: VSet_VArray1_VArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VSet_VArray1_VArray3_Int64{{{-123, -123, -123}}}",
		Target: VSet_VArray1_VArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: struct{}{},
		},
		SourceLabel: "set[VArray1_VArray3_Int64]{{{-123, -123, -123}}}",
		Source: map[VArray1_VArray3_Int64]struct{}{
			{
				{
					-123,
					-123,
					-123,
				},
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VSet_VArray1_VArray3_Int64{{{-2035807833907368457, -2288391145708108360, -4207036291952262741}}, {{0, 4371541142672217430, 0}}, {{4092751625765097463, 2744298937546551751, -760234479958146472}}}",
		Target: VSet_VArray1_VArray3_Int64{
			{
				{
					-2035807833907368457,
					-2288391145708108360,
					-4207036291952262741,
				},
			}: struct{}{},
			{
				{
					0,
					4371541142672217430,
					0,
				},
			}: struct{}{},
			{
				{
					4092751625765097463,
					2744298937546551751,
					-760234479958146472,
				},
			}: struct{}{},
		},
		SourceLabel: "VSet_VArray1_VArray3_Int64{{{-2035807833907368457, -2288391145708108360, -4207036291952262741}}, {{0, 4371541142672217430, 0}}, {{4092751625765097463, 2744298937546551751, -760234479958146472}}}",
		Source: VSet_VArray1_VArray3_Int64{
			{
				{
					-2035807833907368457,
					-2288391145708108360,
					-4207036291952262741,
				},
			}: struct{}{},
			{
				{
					0,
					4371541142672217430,
					0,
				},
			}: struct{}{},
			{
				{
					4092751625765097463,
					2744298937546551751,
					-760234479958146472,
				},
			}: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VSet_VArray1_VArray3_Int64{{{-2035807833907368457, -2288391145708108360, -4207036291952262741}}, {{0, 4371541142672217430, 0}}, {{4092751625765097463, 2744298937546551751, -760234479958146472}}}",
		Target: VSet_VArray1_VArray3_Int64{
			{
				{
					-2035807833907368457,
					-2288391145708108360,
					-4207036291952262741,
				},
			}: struct{}{},
			{
				{
					0,
					4371541142672217430,
					0,
				},
			}: struct{}{},
			{
				{
					4092751625765097463,
					2744298937546551751,
					-760234479958146472,
				},
			}: struct{}{},
		},
		SourceLabel: "set[VArray1_VArray3_Int64]{{{-2035807833907368457, -2288391145708108360, -4207036291952262741}}, {{0, 4371541142672217430, 0}}, {{4092751625765097463, 2744298937546551751, -760234479958146472}}}",
		Source: map[VArray1_VArray3_Int64]struct{}{
			{
				{
					-2035807833907368457,
					-2288391145708108360,
					-4207036291952262741,
				},
			}: struct{}{},
			{
				{
					0,
					4371541142672217430,
					0,
				},
			}: struct{}{},
			{
				{
					4092751625765097463,
					2744298937546551751,
					-760234479958146472,
				},
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VSet_VStructDepth2_VStructDepth1_Bool{}",
		Target:      VSet_VStructDepth2_VStructDepth1_Bool(nil),
		SourceLabel: "VSet_VStructDepth2_VStructDepth1_Bool{}",
		Source:      VSet_VStructDepth2_VStructDepth1_Bool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_VStructDepth2_VStructDepth1_Bool{}",
		Target:      VSet_VStructDepth2_VStructDepth1_Bool(nil),
		SourceLabel: "set[VStructDepth2_VStructDepth1_Bool]{}",
		Source:      map[VStructDepth2_VStructDepth1_Bool]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_VStructDepth2_VStructDepth1_Bool{}",
		Target:      VSet_VStructDepth2_VStructDepth1_Bool(nil),
		SourceLabel: "VSet_VStructEmpty{}",
		Source:      VSet_VStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VSet_VStructDepth2_VStructDepth1_Bool{{F9: {F1: true}}}",
		Target: VSet_VStructDepth2_VStructDepth1_Bool{
			{
				F9: VStructDepth1_Bool{
					F1: true,
				},
			}: struct{}{},
		},
		SourceLabel: "VSet_VStructDepth2_VStructDepth1_Bool{{F9: {F1: true}}}",
		Source: VSet_VStructDepth2_VStructDepth1_Bool{
			{
				F9: VStructDepth1_Bool{
					F1: true,
				},
			}: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VSet_VStructDepth2_VStructDepth1_Bool{{F9: {F1: true}}}",
		Target: VSet_VStructDepth2_VStructDepth1_Bool{
			{
				F9: VStructDepth1_Bool{
					F1: true,
				},
			}: struct{}{},
		},
		SourceLabel: "set[VStructDepth2_VStructDepth1_Bool]{{F9: {F1: true}}}",
		Source: map[VStructDepth2_VStructDepth1_Bool]struct{}{
			{
				F9: VStructDepth1_Bool{
					F1: true,
				},
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VSet_VUnionDepth2_VArray1_String{}",
		Target:      VSet_VUnionDepth2_VArray1_String(nil),
		SourceLabel: "VSet_VUnionDepth2_VArray1_String{}",
		Source:      VSet_VUnionDepth2_VArray1_String(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VSet_VUnionDepth2_VArray1_String{}",
		Target:      VSet_VUnionDepth2_VArray1_String(nil),
		SourceLabel: "set[VUnionDepth2_VArray1_String]{}",
		Source:      map[VUnionDepth2_VArray1_String]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VSet_VUnionDepth2_VArray1_String{{F0: {\"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VSet_VUnionDepth2_VArray1_String{
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"abcdeΔΘΠΣΦ王普澤世界",
			}}: struct{}{},
		},
		SourceLabel: "VSet_VUnionDepth2_VArray1_String{{F0: {\"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VSet_VUnionDepth2_VArray1_String{
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"abcdeΔΘΠΣΦ王普澤世界",
			}}: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VSet_VUnionDepth2_VArray1_String{{F0: {\"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VSet_VUnionDepth2_VArray1_String{
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"abcdeΔΘΠΣΦ王普澤世界",
			}}: struct{}{},
		},
		SourceLabel: "set[VUnionDepth2_VArray1_String]{{F0: {\"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: map[VUnionDepth2_VArray1_String]struct{}{
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"abcdeΔΘΠΣΦ王普澤世界",
			}}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VSet_VUnionDepth2_VArray1_String{{F0: {}}, {F0: {\"世界\"}}}",
		Target: VSet_VUnionDepth2_VArray1_String{
			VUnionDepth2_VArray1_StringF0{}: struct{}{},
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"世界",
			}}: struct{}{},
		},
		SourceLabel: "VSet_VUnionDepth2_VArray1_String{{F0: {}}, {F0: {\"世界\"}}}",
		Source: VSet_VUnionDepth2_VArray1_String{
			VUnionDepth2_VArray1_StringF0{}: struct{}{},
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"世界",
			}}: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VSet_VUnionDepth2_VArray1_String{{F0: {}}, {F0: {\"世界\"}}}",
		Target: VSet_VUnionDepth2_VArray1_String{
			VUnionDepth2_VArray1_StringF0{}: struct{}{},
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"世界",
			}}: struct{}{},
		},
		SourceLabel: "set[VUnionDepth2_VArray1_String]{{F0: {}}, {F0: {\"世界\"}}}",
		Source: map[VUnionDepth2_VArray1_String]struct{}{
			VUnionDepth2_VArray1_StringF0{}: struct{}{},
			VUnionDepth2_VArray1_StringF0{VArray1_String{
				"世界",
			}}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[VArray1_VArray3_Int64]VArray1_VArray3_Int64{}",
		Target:      map[VArray1_VArray3_Int64]VArray1_VArray3_Int64(nil),
		SourceLabel: "map[VArray1_VArray3_Int64]VArray1_VArray3_Int64{}",
		Source:      map[VArray1_VArray3_Int64]VArray1_VArray3_Int64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VArray1_VArray3_Int64]VArray1_VArray3_Int64{}",
		Target:      map[VArray1_VArray3_Int64]VArray1_VArray3_Int64(nil),
		SourceLabel: "VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64{}",
		Source:      VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[VArray1_VArray3_Int64]VArray1_VArray3_Int64{{{-123, -123, -123}}: {{-123, -123, -123}}}",
		Target: map[VArray1_VArray3_Int64]VArray1_VArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: {
				{
					-123,
					-123,
					-123,
				},
			},
		},
		SourceLabel: "map[VArray1_VArray3_Int64]VArray1_VArray3_Int64{{{-123, -123, -123}}: {{-123, -123, -123}}}",
		Source: map[VArray1_VArray3_Int64]VArray1_VArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: {
				{
					-123,
					-123,
					-123,
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[VArray1_VArray3_Int64]VArray1_VArray3_Int64{{{-123, -123, -123}}: {{-123, -123, -123}}}",
		Target: map[VArray1_VArray3_Int64]VArray1_VArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: {
				{
					-123,
					-123,
					-123,
				},
			},
		},
		SourceLabel: "VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64{{{-123, -123, -123}}: {{-123, -123, -123}}}",
		Source: VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: {
				{
					-123,
					-123,
					-123,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[VArray1_VArray3_Int64]VArray1_VArray3_Int64{{}: {}}",
		Target: map[VArray1_VArray3_Int64]VArray1_VArray3_Int64{
			{}: {},
		},
		SourceLabel: "map[VArray1_VArray3_Int64]VArray1_VArray3_Int64{{}: {}}",
		Source: map[VArray1_VArray3_Int64]VArray1_VArray3_Int64{
			{}: {},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "map[VArray1_VArray3_Int64]VArray1_VArray3_Int64{{}: {}}",
		Target: map[VArray1_VArray3_Int64]VArray1_VArray3_Int64{
			{}: {},
		},
		SourceLabel: "VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64{{}: {}}",
		Source: VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64{
			{}: {},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[VStructDepth2_VUnionDepth1_Float64]VStructDepth2_VUnionDepth1_Float64{}",
		Target:      map[VStructDepth2_VUnionDepth1_Float64]VStructDepth2_VUnionDepth1_Float64(nil),
		SourceLabel: "map[VStructDepth2_VUnionDepth1_Float64]VStructDepth2_VUnionDepth1_Float64{}",
		Source:      map[VStructDepth2_VUnionDepth1_Float64]VStructDepth2_VUnionDepth1_Float64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VStructDepth2_VUnionDepth1_Float64]VStructDepth2_VUnionDepth1_Float64{}",
		Target:      map[VStructDepth2_VUnionDepth1_Float64]VStructDepth2_VUnionDepth1_Float64(nil),
		SourceLabel: "VMap_VStructEmpty_VStructEmpty{}",
		Source:      VMap_VStructEmpty_VStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[VStructDepth2_VUnionDepth1_Float64]VStructDepth2_VUnionDepth1_Float64{}",
		Target:      map[VStructDepth2_VUnionDepth1_Float64]VStructDepth2_VUnionDepth1_Float64(nil),
		SourceLabel: "map[VStructEmpty]VStructEmpty{}",
		Source:      map[VStructEmpty]VStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[VStructDepth2_VUnionDepth1_Float64]VStructDepth2_VUnionDepth1_Float64{{F11: {F29: 1.5}}: {F11: {F29: 1.5}}}",
		Target: map[VStructDepth2_VUnionDepth1_Float64]VStructDepth2_VUnionDepth1_Float64{
			{
				F11: VUnionDepth1_Float64F29{1.5},
			}: {
				F11: VUnionDepth1_Float64F29{1.5},
			},
		},
		SourceLabel: "map[VStructDepth2_VUnionDepth1_Float64]VStructDepth2_VUnionDepth1_Float64{{F11: {F29: 1.5}}: {F11: {F29: 1.5}}}",
		Source: map[VStructDepth2_VUnionDepth1_Float64]VStructDepth2_VUnionDepth1_Float64{
			{
				F11: VUnionDepth1_Float64F29{1.5},
			}: {
				F11: VUnionDepth1_Float64F29{1.5},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[VStructDepth2_VUnionDepth1_Float64]VStructDepth2_VUnionDepth1_Float64{{F11: {F29: -6.371127049036963e+08}}: {F11: {F29: -9.722650581730351e+08}}, {}: {F11: {F29: 3.035295342149691e+09}}, {F11: {F29: 7.747000902018925e+08}}: {F11: {F29: -3.441646204986067e+08}}}",
		Target: map[VStructDepth2_VUnionDepth1_Float64]VStructDepth2_VUnionDepth1_Float64{
			{
				F11: VUnionDepth1_Float64F29{-6.371127049036963e+08},
			}: {
				F11: VUnionDepth1_Float64F29{-9.722650581730351e+08},
			},
			{
				F11: VUnionDepth1_Float64F29{},
			}: {
				F11: VUnionDepth1_Float64F29{3.035295342149691e+09},
			},
			{
				F11: VUnionDepth1_Float64F29{7.747000902018925e+08},
			}: {
				F11: VUnionDepth1_Float64F29{-3.441646204986067e+08},
			},
		},
		SourceLabel: "map[VStructDepth2_VUnionDepth1_Float64]VStructDepth2_VUnionDepth1_Float64{{F11: {F29: -6.371127049036963e+08}}: {F11: {F29: -9.722650581730351e+08}}, {}: {F11: {F29: 3.035295342149691e+09}}, {F11: {F29: 7.747000902018925e+08}}: {F11: {F29: -3.441646204986067e+08}}}",
		Source: map[VStructDepth2_VUnionDepth1_Float64]VStructDepth2_VUnionDepth1_Float64{
			{
				F11: VUnionDepth1_Float64F29{-6.371127049036963e+08},
			}: {
				F11: VUnionDepth1_Float64F29{-9.722650581730351e+08},
			},
			{
				F11: VUnionDepth1_Float64F29{},
			}: {
				F11: VUnionDepth1_Float64F29{3.035295342149691e+09},
			},
			{
				F11: VUnionDepth1_Float64F29{7.747000902018925e+08},
			}: {
				F11: VUnionDepth1_Float64F29{-3.441646204986067e+08},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[VUnionDepth2_VStructDepth1_Int8]VUnionDepth2_VStructDepth1_Int8{}",
		Target:      map[VUnionDepth2_VStructDepth1_Int8]VUnionDepth2_VStructDepth1_Int8(nil),
		SourceLabel: "map[VUnionDepth2_VStructDepth1_Int8]VUnionDepth2_VStructDepth1_Int8{}",
		Source:      map[VUnionDepth2_VStructDepth1_Int8]VUnionDepth2_VStructDepth1_Int8(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[VUnionDepth2_VStructDepth1_Int8]VUnionDepth2_VStructDepth1_Int8{{F9: {F19: -123}}: {F9: {F19: -123}}}",
		Target: map[VUnionDepth2_VStructDepth1_Int8]VUnionDepth2_VStructDepth1_Int8{
			VUnionDepth2_VStructDepth1_Int8F9{VStructDepth1_Int8{
				F19: -123,
			}}: VUnionDepth2_VStructDepth1_Int8F9{VStructDepth1_Int8{
				F19: -123,
			}},
		},
		SourceLabel: "map[VUnionDepth2_VStructDepth1_Int8]VUnionDepth2_VStructDepth1_Int8{{F9: {F19: -123}}: {F9: {F19: -123}}}",
		Source: map[VUnionDepth2_VStructDepth1_Int8]VUnionDepth2_VStructDepth1_Int8{
			VUnionDepth2_VStructDepth1_Int8F9{VStructDepth1_Int8{
				F19: -123,
			}}: VUnionDepth2_VStructDepth1_Int8F9{VStructDepth1_Int8{
				F19: -123,
			}},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[VUnionDepth2_VStructDepth1_Int8]VUnionDepth2_VStructDepth1_Int8{{F9: {F19: -38}}: {F9: {}}, {F9: {}}: {F9: {F19: -35}}}",
		Target: map[VUnionDepth2_VStructDepth1_Int8]VUnionDepth2_VStructDepth1_Int8{
			VUnionDepth2_VStructDepth1_Int8F9{VStructDepth1_Int8{
				F19: -38,
			}}: VUnionDepth2_VStructDepth1_Int8F9{},
			VUnionDepth2_VStructDepth1_Int8F9{}: VUnionDepth2_VStructDepth1_Int8F9{VStructDepth1_Int8{
				F19: -35,
			}},
		},
		SourceLabel: "map[VUnionDepth2_VStructDepth1_Int8]VUnionDepth2_VStructDepth1_Int8{{F9: {F19: -38}}: {F9: {}}, {F9: {}}: {F9: {F19: -35}}}",
		Source: map[VUnionDepth2_VStructDepth1_Int8]VUnionDepth2_VStructDepth1_Int8{
			VUnionDepth2_VStructDepth1_Int8F9{VStructDepth1_Int8{
				F19: -38,
			}}: VUnionDepth2_VStructDepth1_Int8F9{},
			VUnionDepth2_VStructDepth1_Int8F9{}: VUnionDepth2_VStructDepth1_Int8F9{VStructDepth1_Int8{
				F19: -35,
			}},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64{}",
		Target:      VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64(nil),
		SourceLabel: "VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64{}",
		Source:      VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64{}",
		Target:      VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64(nil),
		SourceLabel: "map[VArray1_VArray3_Int64]VArray1_VArray3_Int64{}",
		Source:      map[VArray1_VArray3_Int64]VArray1_VArray3_Int64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64{{{-123, -123, -123}}: {{-123, -123, -123}}}",
		Target: VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: {
				{
					-123,
					-123,
					-123,
				},
			},
		},
		SourceLabel: "VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64{{{-123, -123, -123}}: {{-123, -123, -123}}}",
		Source: VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: {
				{
					-123,
					-123,
					-123,
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64{{{-123, -123, -123}}: {{-123, -123, -123}}}",
		Target: VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: {
				{
					-123,
					-123,
					-123,
				},
			},
		},
		SourceLabel: "map[VArray1_VArray3_Int64]VArray1_VArray3_Int64{{{-123, -123, -123}}: {{-123, -123, -123}}}",
		Source: map[VArray1_VArray3_Int64]VArray1_VArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: {
				{
					-123,
					-123,
					-123,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64{{}: {{2616124862496947504, -1419252331286077049, 0}}, {{3664679055585817450, -63297519567618320, 0}}: {}}",
		Target: VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64{
			{}: {
				{
					2616124862496947504,
					-1419252331286077049,
					0,
				},
			},
			{
				{
					3664679055585817450,
					-63297519567618320,
					0,
				},
			}: {},
		},
		SourceLabel: "VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64{{}: {{2616124862496947504, -1419252331286077049, 0}}, {{3664679055585817450, -63297519567618320, 0}}: {}}",
		Source: VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64{
			{}: {
				{
					2616124862496947504,
					-1419252331286077049,
					0,
				},
			},
			{
				{
					3664679055585817450,
					-63297519567618320,
					0,
				},
			}: {},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64{{}: {{2616124862496947504, -1419252331286077049, 0}}, {{3664679055585817450, -63297519567618320, 0}}: {}}",
		Target: VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64{
			{}: {
				{
					2616124862496947504,
					-1419252331286077049,
					0,
				},
			},
			{
				{
					3664679055585817450,
					-63297519567618320,
					0,
				},
			}: {},
		},
		SourceLabel: "map[VArray1_VArray3_Int64]VArray1_VArray3_Int64{{}: {{2616124862496947504, -1419252331286077049, 0}}, {{3664679055585817450, -63297519567618320, 0}}: {}}",
		Source: map[VArray1_VArray3_Int64]VArray1_VArray3_Int64{
			{}: {
				{
					2616124862496947504,
					-1419252331286077049,
					0,
				},
			},
			{
				{
					3664679055585817450,
					-63297519567618320,
					0,
				},
			}: {},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32{}",
		Target:      VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32(nil),
		SourceLabel: "VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32{}",
		Source:      VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32{}",
		Target:      VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32(nil),
		SourceLabel: "map[VStructEmpty]VStructEmpty{}",
		Source:      map[VStructEmpty]VStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32{}",
		Target:      VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32(nil),
		SourceLabel: "VMap_VStructEmpty_VStructEmpty{}",
		Source:      VMap_VStructEmpty_VStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32{{F1: {123}}: {F1: {123}}}",
		Target: VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32{
			{
				F1: VArray1_Uint32{
					123,
				},
			}: {
				F1: VArray1_Uint32{
					123,
				},
			},
		},
		SourceLabel: "VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32{{F1: {123}}: {F1: {123}}}",
		Source: VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32{
			{
				F1: VArray1_Uint32{
					123,
				},
			}: {
				F1: VArray1_Uint32{
					123,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32{{F1: {165369656}}: {F1: {3607576357}}, {F1: {4291126240}}: {}}",
		Target: VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32{
			{
				F1: VArray1_Uint32{
					165369656,
				},
			}: {
				F1: VArray1_Uint32{
					3607576357,
				},
			},
			{
				F1: VArray1_Uint32{
					4291126240,
				},
			}: {},
		},
		SourceLabel: "VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32{{F1: {165369656}}: {F1: {3607576357}}, {F1: {4291126240}}: {}}",
		Source: VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32{
			{
				F1: VArray1_Uint32{
					165369656,
				},
			}: {
				F1: VArray1_Uint32{
					3607576357,
				},
			},
			{
				F1: VArray1_Uint32{
					4291126240,
				},
			}: {},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte{}",
		Target:      VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte(nil),
		SourceLabel: "VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte{}",
		Source:      VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte{{F1: \"{{\"}: {F1: \"{{\"}}",
		Target: VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte{
			VUnionDepth2_VArray2_VByteF1{VArray2_VByte{
				123,
				123,
			}}: VUnionDepth2_VArray2_VByteF1{VArray2_VByte{
				123,
				123,
			}},
		},
		SourceLabel: "VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte{{F1: \"{{\"}: {F1: \"{{\"}}",
		Source: VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte{
			VUnionDepth2_VArray2_VByteF1{VArray2_VByte{
				123,
				123,
			}}: VUnionDepth2_VArray2_VByteF1{VArray2_VByte{
				123,
				123,
			}},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte{{F1: \"\\x00\\x1e\"}: {F1: \"\\x9b\\xfa\"}, {F1: \"\\x0fh\"}: {F1: \"\\x00\\x00\"}, {F1: \"\\xb7\\xb1\"}: {F1: \"\\x00\\x00\"}}",
		Target: VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte{
			VUnionDepth2_VArray2_VByteF1{VArray2_VByte{
				0,
				30,
			}}: VUnionDepth2_VArray2_VByteF1{VArray2_VByte{
				155,
				250,
			}},
			VUnionDepth2_VArray2_VByteF1{VArray2_VByte{
				15,
				104,
			}}: VUnionDepth2_VArray2_VByteF1{},
			VUnionDepth2_VArray2_VByteF1{VArray2_VByte{
				183,
				177,
			}}: VUnionDepth2_VArray2_VByteF1{},
		},
		SourceLabel: "VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte{{F1: \"\\x00\\x1e\"}: {F1: \"\\x9b\\xfa\"}, {F1: \"\\x0fh\"}: {F1: \"\\x00\\x00\"}, {F1: \"\\xb7\\xb1\"}: {F1: \"\\x00\\x00\"}}",
		Source: VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte{
			VUnionDepth2_VArray2_VByteF1{VArray2_VByte{
				0,
				30,
			}}: VUnionDepth2_VArray2_VByteF1{VArray2_VByte{
				155,
				250,
			}},
			VUnionDepth2_VArray2_VByteF1{VArray2_VByte{
				15,
				104,
			}}: VUnionDepth2_VArray2_VByteF1{},
			VUnionDepth2_VArray2_VByteF1{VArray2_VByte{
				183,
				177,
			}}: VUnionDepth2_VArray2_VByteF1{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth3_All{}",
		Target: VStructDepth3_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			F5: VUnionDepth2_AllF0{},
		},
		SourceLabel: "VStructDepth3_All{}",
		Source: VStructDepth3_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			F5: VUnionDepth2_AllF0{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth3_All{}",
		Target: VStructDepth3_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			F5: VUnionDepth2_AllF0{},
		},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth3_All{}",
		Target: VStructDepth3_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			F5: VUnionDepth2_AllF0{},
		},
		SourceLabel: "VStructDepth3_VStructDepth2_All{}",
		Source: VStructDepth3_VStructDepth2_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth3_All{F0: {{D}}, F1: {{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}, F2: {{}}, F3: {{F29: 1.5}: {F29: 1.5}}, F4: {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}, F5: {F13: {F28: 1.5}}, F6: {F4: {1.5}}}",
		Target: VStructDepth3_All{
			F0: VArray1_Set_VEnumBcd{
				{
					VEnumBcdD: struct{}{},
				},
			},
			F1: []VUnionDepth1_All{
				VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
			},
			F2: VSet_VArray1_VStructEmpty{
				{}: struct{}{},
			},
			F3: map[VUnionDepth1_Float64]VUnionDepth1_Float64{
				VUnionDepth1_Float64F29{1.5}: VUnionDepth1_Float64F29{1.5},
			},
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: VArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: VList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: VStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: VEnumAbcC,
					F9: VEnumBcdD,
					F11: VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: VUnionDepth1_Float64F29{1.5},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 123,
				},
			},
			F5: VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
				F28: 1.5,
			}},
			F6: &VStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
		SourceLabel: "VStructDepth3_All{F0: {{D}}, F1: {{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}, F2: {{}}, F3: {{F29: 1.5}: {F29: 1.5}}, F4: {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}, F5: {F13: {F28: 1.5}}, F6: {F4: {1.5}}}",
		Source: VStructDepth3_All{
			F0: VArray1_Set_VEnumBcd{
				{
					VEnumBcdD: struct{}{},
				},
			},
			F1: []VUnionDepth1_All{
				VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
			},
			F2: VSet_VArray1_VStructEmpty{
				{}: struct{}{},
			},
			F3: map[VUnionDepth1_Float64]VUnionDepth1_Float64{
				VUnionDepth1_Float64F29{1.5}: VUnionDepth1_Float64F29{1.5},
			},
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: VArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: VList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: VStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: VEnumAbcC,
					F9: VEnumBcdD,
					F11: VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: VUnionDepth1_Float64F29{1.5},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 123,
				},
			},
			F5: VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
				F28: 1.5,
			}},
			F6: &VStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth3_All{F0: {{D}}, F1: {{F7: 0}, {F29: -7.86429253128458e+08}, {F23: -709460934}}, F2: {{}}, F3: {{F29: -1.2255739239434664e+09}: {F29: -1.1735608211823716e+09}, {F29: 0}: {F29: 1.111642678399444e+09}}, F4: {F0: {typeobject(any), typeobject(VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte)}, F1: {2133959987}, F2: {3781}, F3: {nil, VEnumBcd.D}, F4: {-2.3763406559414215e+09}, F5: {B, C}, F6: {0: 155, 112: 140, 95: 136}, F10: {F26: -3973383073406796346}, F12: {F9: D}}, F6: {F4: {-1.1621262415614358e+08, -3.236526650893023e+09, 6.374484454491236e+08}}}",
		Target: VStructDepth3_All{
			F0: VArray1_Set_VEnumBcd{
				{
					VEnumBcdD: struct{}{},
				},
			},
			F1: []VUnionDepth1_All{
				VUnionDepth1_AllF7{},
				VUnionDepth1_AllF29{-7.86429253128458e+08},
				VUnionDepth1_AllF23{-709460934},
			},
			F2: VSet_VArray1_VStructEmpty{
				{}: struct{}{},
			},
			F3: map[VUnionDepth1_Float64]VUnionDepth1_Float64{
				VUnionDepth1_Float64F29{-1.2255739239434664e+09}: VUnionDepth1_Float64F29{-1.1735608211823716e+09},
				VUnionDepth1_Float64F29{}:                        VUnionDepth1_Float64F29{1.111642678399444e+09},
			},
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					__VDLType_map_234,
				},
				F1: VArray1_Uint32{
					2133959987,
				},
				F2: []int16{
					3781,
				},
				F3: VList_Any{
					nil,
					VEnumBcdD,
				},
				F4: map[float64]struct{}{
					-2.3763406559414215e+09: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
					VEnumBcdC: struct{}{},
				},
				F6: map[byte]byte{
					0:   155,
					112: 140,
					95:  136,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF26{-3973383073406796346},
				F11: VUnionDepth1_Float64F29{},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
			},
			F5: VUnionDepth2_AllF0{},
			F6: &VStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					-1.1621262415614358e+08: struct{}{},
					-3.236526650893023e+09:  struct{}{},
					6.374484454491236e+08:   struct{}{},
				},
			},
		},
		SourceLabel: "VStructDepth3_All{F0: {{D}}, F1: {{F7: 0}, {F29: -7.86429253128458e+08}, {F23: -709460934}}, F2: {{}}, F3: {{F29: -1.2255739239434664e+09}: {F29: -1.1735608211823716e+09}, {F29: 0}: {F29: 1.111642678399444e+09}}, F4: {F0: {typeobject(any), typeobject(VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte)}, F1: {2133959987}, F2: {3781}, F3: {nil, VEnumBcd.D}, F4: {-2.3763406559414215e+09}, F5: {B, C}, F6: {0: 155, 112: 140, 95: 136}, F10: {F26: -3973383073406796346}, F12: {F9: D}}, F6: {F4: {-1.1621262415614358e+08, -3.236526650893023e+09, 6.374484454491236e+08}}}",
		Source: VStructDepth3_All{
			F0: VArray1_Set_VEnumBcd{
				{
					VEnumBcdD: struct{}{},
				},
			},
			F1: []VUnionDepth1_All{
				VUnionDepth1_AllF7{},
				VUnionDepth1_AllF29{-7.86429253128458e+08},
				VUnionDepth1_AllF23{-709460934},
			},
			F2: VSet_VArray1_VStructEmpty{
				{}: struct{}{},
			},
			F3: map[VUnionDepth1_Float64]VUnionDepth1_Float64{
				VUnionDepth1_Float64F29{-1.2255739239434664e+09}: VUnionDepth1_Float64F29{-1.1735608211823716e+09},
				VUnionDepth1_Float64F29{}:                        VUnionDepth1_Float64F29{1.111642678399444e+09},
			},
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					__VDLType_map_234,
				},
				F1: VArray1_Uint32{
					2133959987,
				},
				F2: []int16{
					3781,
				},
				F3: VList_Any{
					nil,
					VEnumBcdD,
				},
				F4: map[float64]struct{}{
					-2.3763406559414215e+09: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdB: struct{}{},
					VEnumBcdC: struct{}{},
				},
				F6: map[byte]byte{
					0:   155,
					112: 140,
					95:  136,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF26{-3973383073406796346},
				F11: VUnionDepth1_Float64F29{},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
			},
			F5: VUnionDepth2_AllF0{},
			F6: &VStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					-1.1621262415614358e+08: struct{}{},
					-3.236526650893023e+09:  struct{}{},
					6.374484454491236e+08:   struct{}{},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth3_VArray1_Set_VEnumBcd{}",
		Target:      VStructDepth3_VArray1_Set_VEnumBcd{},
		SourceLabel: "VStructDepth3_VArray1_Set_VEnumBcd{}",
		Source:      VStructDepth3_VArray1_Set_VEnumBcd{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth3_VArray1_Set_VEnumBcd{}",
		Target:      VStructDepth3_VArray1_Set_VEnumBcd{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth3_VArray1_Set_VEnumBcd{}",
		Target:      VStructDepth3_VArray1_Set_VEnumBcd{},
		SourceLabel: "VStructDepth1_Any{F0: VArray1_Set_VEnumBcd{}}",
		Source: VStructDepth1_Any{
			F0: VArray1_Set_VEnumBcd{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth3_VArray1_Set_VEnumBcd{F0: {{D}}}",
		Target: VStructDepth3_VArray1_Set_VEnumBcd{
			F0: VArray1_Set_VEnumBcd{
				{
					VEnumBcdD: struct{}{},
				},
			},
		},
		SourceLabel: "VStructDepth3_VArray1_Set_VEnumBcd{F0: {{D}}}",
		Source: VStructDepth3_VArray1_Set_VEnumBcd{
			F0: VArray1_Set_VEnumBcd{
				{
					VEnumBcdD: struct{}{},
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth3_VArray1_Set_VEnumBcd{F0: {{D}}}",
		Target: VStructDepth3_VArray1_Set_VEnumBcd{
			F0: VArray1_Set_VEnumBcd{
				{
					VEnumBcdD: struct{}{},
				},
			},
		},
		SourceLabel: "VStructDepth1_Any{F0: VArray1_Set_VEnumBcd{{D}}}",
		Source: VStructDepth1_Any{
			F0: VArray1_Set_VEnumBcd{
				{
					VEnumBcdD: struct{}{},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth3_List_VUnionDepth1_All{}",
		Target:      VStructDepth3_List_VUnionDepth1_All{},
		SourceLabel: "VStructDepth3_List_VUnionDepth1_All{}",
		Source:      VStructDepth3_List_VUnionDepth1_All{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth3_List_VUnionDepth1_All{}",
		Target:      VStructDepth3_List_VUnionDepth1_All{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth3_List_VUnionDepth1_All{}",
		Target:      VStructDepth3_List_VUnionDepth1_All{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth3_List_VUnionDepth1_All{F1: {{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Target: VStructDepth3_List_VUnionDepth1_All{
			F1: []VUnionDepth1_All{
				VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
			},
		},
		SourceLabel: "VStructDepth3_List_VUnionDepth1_All{F1: {{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Source: VStructDepth3_List_VUnionDepth1_All{
			F1: []VUnionDepth1_All{
				VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth3_List_VUnionDepth1_All{F1: {{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Target: VStructDepth3_List_VUnionDepth1_All{
			F1: []VUnionDepth1_All{
				VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
			},
		},
		SourceLabel: "VStructDepth3_All{F1: {{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Source: VStructDepth3_All{
			F1: []VUnionDepth1_All{
				VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
			},
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			F5: VUnionDepth2_AllF0{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth3_List_VUnionDepth1_All{F1: {{F7: 31}, {F18: 0}, {F22: -14722}}}",
		Target: VStructDepth3_List_VUnionDepth1_All{
			F1: []VUnionDepth1_All{
				VUnionDepth1_AllF7{31},
				VUnionDepth1_AllF18{},
				VUnionDepth1_AllF22{-14722},
			},
		},
		SourceLabel: "VStructDepth3_List_VUnionDepth1_All{F1: {{F7: 31}, {F18: 0}, {F22: -14722}}}",
		Source: VStructDepth3_List_VUnionDepth1_All{
			F1: []VUnionDepth1_All{
				VUnionDepth1_AllF7{31},
				VUnionDepth1_AllF18{},
				VUnionDepth1_AllF22{-14722},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth3_List_VUnionDepth1_All{F1: {{F7: 31}, {F18: 0}, {F22: -14722}}}",
		Target: VStructDepth3_List_VUnionDepth1_All{
			F1: []VUnionDepth1_All{
				VUnionDepth1_AllF7{31},
				VUnionDepth1_AllF18{},
				VUnionDepth1_AllF22{-14722},
			},
		},
		SourceLabel: "VStructDepth3_All{F1: {{F7: 31}, {F18: 0}, {F22: -14722}}}",
		Source: VStructDepth3_All{
			F1: []VUnionDepth1_All{
				VUnionDepth1_AllF7{31},
				VUnionDepth1_AllF18{},
				VUnionDepth1_AllF22{-14722},
			},
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			F5: VUnionDepth2_AllF0{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth3_VSet_VArray1_VStructEmpty{}",
		Target:      VStructDepth3_VSet_VArray1_VStructEmpty{},
		SourceLabel: "VStructDepth3_VSet_VArray1_VStructEmpty{}",
		Source:      VStructDepth3_VSet_VArray1_VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth3_VSet_VArray1_VStructEmpty{}",
		Target:      VStructDepth3_VSet_VArray1_VStructEmpty{},
		SourceLabel: "VStructDepth3_All{}",
		Source: VStructDepth3_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			F5: VUnionDepth2_AllF0{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth3_VSet_VArray1_VStructEmpty{}",
		Target:      VStructDepth3_VSet_VArray1_VStructEmpty{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth3_VSet_VArray1_VStructEmpty{F2: {{}}}",
		Target: VStructDepth3_VSet_VArray1_VStructEmpty{
			F2: VSet_VArray1_VStructEmpty{
				{}: struct{}{},
			},
		},
		SourceLabel: "VStructDepth3_VSet_VArray1_VStructEmpty{F2: {{}}}",
		Source: VStructDepth3_VSet_VArray1_VStructEmpty{
			F2: VSet_VArray1_VStructEmpty{
				{}: struct{}{},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth3_VSet_VArray1_VStructEmpty{F2: {{}}}",
		Target: VStructDepth3_VSet_VArray1_VStructEmpty{
			F2: VSet_VArray1_VStructEmpty{
				{}: struct{}{},
			},
		},
		SourceLabel: "VStructDepth3_All{F2: {{}}}",
		Source: VStructDepth3_All{
			F2: VSet_VArray1_VStructEmpty{
				{}: struct{}{},
			},
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			F5: VUnionDepth2_AllF0{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{}",
		Target:      VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{},
		SourceLabel: "VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{}",
		Source:      VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{}",
		Target:      VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{},
		SourceLabel: "VStructDepth3_All{}",
		Source: VStructDepth3_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			F5: VUnionDepth2_AllF0{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{}",
		Target:      VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{F3: {{F29: 1.5}: {F29: 1.5}}}",
		Target: VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{
			F3: map[VUnionDepth1_Float64]VUnionDepth1_Float64{
				VUnionDepth1_Float64F29{1.5}: VUnionDepth1_Float64F29{1.5},
			},
		},
		SourceLabel: "VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{F3: {{F29: 1.5}: {F29: 1.5}}}",
		Source: VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{
			F3: map[VUnionDepth1_Float64]VUnionDepth1_Float64{
				VUnionDepth1_Float64F29{1.5}: VUnionDepth1_Float64F29{1.5},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{F3: {{F29: 1.5}: {F29: 1.5}}}",
		Target: VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{
			F3: map[VUnionDepth1_Float64]VUnionDepth1_Float64{
				VUnionDepth1_Float64F29{1.5}: VUnionDepth1_Float64F29{1.5},
			},
		},
		SourceLabel: "VStructDepth3_All{F3: {{F29: 1.5}: {F29: 1.5}}}",
		Source: VStructDepth3_All{
			F3: map[VUnionDepth1_Float64]VUnionDepth1_Float64{
				VUnionDepth1_Float64F29{1.5}: VUnionDepth1_Float64F29{1.5},
			},
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			F5: VUnionDepth2_AllF0{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{F3: {{F29: -3.378878853574675e+09}: {F29: -1.8691965570508745e+09}, {F29: -7.12426163010141e+07}: {F29: 2.279171161118203e+09}}}",
		Target: VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{
			F3: map[VUnionDepth1_Float64]VUnionDepth1_Float64{
				VUnionDepth1_Float64F29{-3.378878853574675e+09}: VUnionDepth1_Float64F29{-1.8691965570508745e+09},
				VUnionDepth1_Float64F29{-7.12426163010141e+07}:  VUnionDepth1_Float64F29{2.279171161118203e+09},
			},
		},
		SourceLabel: "VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{F3: {{F29: -3.378878853574675e+09}: {F29: -1.8691965570508745e+09}, {F29: -7.12426163010141e+07}: {F29: 2.279171161118203e+09}}}",
		Source: VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{
			F3: map[VUnionDepth1_Float64]VUnionDepth1_Float64{
				VUnionDepth1_Float64F29{-3.378878853574675e+09}: VUnionDepth1_Float64F29{-1.8691965570508745e+09},
				VUnionDepth1_Float64F29{-7.12426163010141e+07}:  VUnionDepth1_Float64F29{2.279171161118203e+09},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{F3: {{F29: -3.378878853574675e+09}: {F29: -1.8691965570508745e+09}, {F29: -7.12426163010141e+07}: {F29: 2.279171161118203e+09}}}",
		Target: VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64{
			F3: map[VUnionDepth1_Float64]VUnionDepth1_Float64{
				VUnionDepth1_Float64F29{-3.378878853574675e+09}: VUnionDepth1_Float64F29{-1.8691965570508745e+09},
				VUnionDepth1_Float64F29{-7.12426163010141e+07}:  VUnionDepth1_Float64F29{2.279171161118203e+09},
			},
		},
		SourceLabel: "VStructDepth3_All{F3: {{F29: -3.378878853574675e+09}: {F29: -1.8691965570508745e+09}, {F29: -7.12426163010141e+07}: {F29: 2.279171161118203e+09}}}",
		Source: VStructDepth3_All{
			F3: map[VUnionDepth1_Float64]VUnionDepth1_Float64{
				VUnionDepth1_Float64F29{-3.378878853574675e+09}: VUnionDepth1_Float64F29{-1.8691965570508745e+09},
				VUnionDepth1_Float64F29{-7.12426163010141e+07}:  VUnionDepth1_Float64F29{2.279171161118203e+09},
			},
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			F5: VUnionDepth2_AllF0{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth3_VStructDepth2_All{}",
		Target: VStructDepth3_VStructDepth2_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
		},
		SourceLabel: "VStructDepth3_VStructDepth2_All{}",
		Source: VStructDepth3_VStructDepth2_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth3_VStructDepth2_All{}",
		Target: VStructDepth3_VStructDepth2_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
		},
		SourceLabel: "VStructDepth3_All{}",
		Source: VStructDepth3_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			F5: VUnionDepth2_AllF0{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth3_VStructDepth2_All{}",
		Target: VStructDepth3_VStructDepth2_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
		},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth3_VStructDepth2_All{F4: {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Target: VStructDepth3_VStructDepth2_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: VArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: VList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: VStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: VEnumAbcC,
					F9: VEnumBcdD,
					F11: VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: VUnionDepth1_Float64F29{1.5},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 123,
				},
			},
		},
		SourceLabel: "VStructDepth3_VStructDepth2_All{F4: {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Source: VStructDepth3_VStructDepth2_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: VArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: VList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: VStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: VEnumAbcC,
					F9: VEnumBcdD,
					F11: VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: VUnionDepth1_Float64F29{1.5},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 123,
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth3_VStructDepth2_All{F4: {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Target: VStructDepth3_VStructDepth2_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: VArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: VList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: VStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: VEnumAbcC,
					F9: VEnumBcdD,
					F11: VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: VUnionDepth1_Float64F29{1.5},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 123,
				},
			},
		},
		SourceLabel: "VStructDepth3_All{F4: {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Source: VStructDepth3_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: VArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: VList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: VStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: VEnumAbcC,
					F9: VEnumBcdD,
					F11: VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF32{&VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: VUnionDepth1_Float64F29{1.5},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 123,
				},
			},
			F5: VUnionDepth2_AllF0{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth3_VStructDepth2_All{F4: {F1: {1540208733}, F2: {4909}, F3: {[]VArray1_String{{}, {\"bcdeΔΘΠΣ\"}}}, F4: {-1.9684892797302527e+09, -8.275744919550115e+08, 0}, F5: {C}, F6: {170: 244, 253: 0, 8: 21}, F7: {0: 541517617}, F8: {F0: VStructDepth1_Int64{F25: 1987092034709572939}, F2: true, F3: \"abcd\", F4: \"abc\", F5: typeobject(byte), F6: 197, F8: B, F11: {Id: \"ΣΦ\", Msg: \"cde\"}, F12: {Id: \"cdeΔ\", RetryCode: RetryConnection, Msg: \"ΣΦ王普澤\"}, F13: 33783, F15: 2806157115, F16: 4207805273, F19: -49, F22: 6458, F23: -924748202, F24: -435626669, F25: -3505399419386896919, F27: 5.9329824e+08, F29: 1.1656722371802888e+09, F30: 3.122338919329276e+08, F31: {}, F32: {Msg: \"王普澤世界\"}}, F9: {F1: true}, F10: {F2: false}, F11: {F29: -5.916343133302755e+07}, F12: {F9: D}, F13: {F14: 21576}}}",
		Target: VStructDepth3_VStructDepth2_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F1: VArray1_Uint32{
					1540208733,
				},
				F2: []int16{
					4909,
				},
				F3: VList_Any{
					[]VArray1_String{
						{},
						{
							"bcdeΔΘΠΣ",
						},
					},
				},
				F4: map[float64]struct{}{
					-1.9684892797302527e+09: struct{}{},
					-8.275744919550115e+08:  struct{}{},
					0: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdC: struct{}{},
				},
				F6: map[byte]byte{
					170: 244,
					253: 0,
					8:   21,
				},
				F7: map[uint32]uint32{
					0: 541517617,
				},
				F8: VStructDepth1_All{
					F0: VStructDepth1_Int64{
						F25: 1987092034709572939,
					},
					F2: true,
					F3: "abcd",
					F4: "abc",
					F5: vdl.ByteType,
					F6: 197,
					F8: VEnumAbcB,
					F11: VNamedError{
						Id:  "ΣΦ",
						Msg: "cde",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "cdeΔ",
						RetryCode: vdl.WireRetryCodeRetryConnection,
						Msg:       "ΣΦ王普澤",
					}),
					F13: 33783,
					F15: 2806157115,
					F16: 4207805273,
					F19: -49,
					F22: 6458,
					F23: -924748202,
					F24: -435626669,
					F25: -3505399419386896919,
					F27: 5.9329824e+08,
					F29: 1.1656722371802888e+09,
					F30: 3.122338919329276e+08,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Msg: "王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF2{},
				F11: VUnionDepth1_Float64F29{-5.916343133302755e+07},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 21576,
				},
			},
		},
		SourceLabel: "VStructDepth3_VStructDepth2_All{F4: {F1: {1540208733}, F2: {4909}, F3: {[]VArray1_String{{}, {\"bcdeΔΘΠΣ\"}}}, F4: {-1.9684892797302527e+09, -8.275744919550115e+08, 0}, F5: {C}, F6: {170: 244, 253: 0, 8: 21}, F7: {0: 541517617}, F8: {F0: VStructDepth1_Int64{F25: 1987092034709572939}, F2: true, F3: \"abcd\", F4: \"abc\", F5: typeobject(byte), F6: 197, F8: B, F11: {Id: \"ΣΦ\", Msg: \"cde\"}, F12: {Id: \"cdeΔ\", RetryCode: RetryConnection, Msg: \"ΣΦ王普澤\"}, F13: 33783, F15: 2806157115, F16: 4207805273, F19: -49, F22: 6458, F23: -924748202, F24: -435626669, F25: -3505399419386896919, F27: 5.9329824e+08, F29: 1.1656722371802888e+09, F30: 3.122338919329276e+08, F31: {}, F32: {Msg: \"王普澤世界\"}}, F9: {F1: true}, F10: {F2: false}, F11: {F29: -5.916343133302755e+07}, F12: {F9: D}, F13: {F14: 21576}}}",
		Source: VStructDepth3_VStructDepth2_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F1: VArray1_Uint32{
					1540208733,
				},
				F2: []int16{
					4909,
				},
				F3: VList_Any{
					[]VArray1_String{
						{},
						{
							"bcdeΔΘΠΣ",
						},
					},
				},
				F4: map[float64]struct{}{
					-1.9684892797302527e+09: struct{}{},
					-8.275744919550115e+08:  struct{}{},
					0: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdC: struct{}{},
				},
				F6: map[byte]byte{
					170: 244,
					253: 0,
					8:   21,
				},
				F7: map[uint32]uint32{
					0: 541517617,
				},
				F8: VStructDepth1_All{
					F0: VStructDepth1_Int64{
						F25: 1987092034709572939,
					},
					F2: true,
					F3: "abcd",
					F4: "abc",
					F5: vdl.ByteType,
					F6: 197,
					F8: VEnumAbcB,
					F11: VNamedError{
						Id:  "ΣΦ",
						Msg: "cde",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "cdeΔ",
						RetryCode: vdl.WireRetryCodeRetryConnection,
						Msg:       "ΣΦ王普澤",
					}),
					F13: 33783,
					F15: 2806157115,
					F16: 4207805273,
					F19: -49,
					F22: 6458,
					F23: -924748202,
					F24: -435626669,
					F25: -3505399419386896919,
					F27: 5.9329824e+08,
					F29: 1.1656722371802888e+09,
					F30: 3.122338919329276e+08,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Msg: "王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF2{},
				F11: VUnionDepth1_Float64F29{-5.916343133302755e+07},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 21576,
				},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth3_VStructDepth2_All{F4: {F1: {1540208733}, F2: {4909}, F3: {[]VArray1_String{{}, {\"bcdeΔΘΠΣ\"}}}, F4: {-1.9684892797302527e+09, -8.275744919550115e+08, 0}, F5: {C}, F6: {170: 244, 253: 0, 8: 21}, F7: {0: 541517617}, F8: {F0: VStructDepth1_Int64{F25: 1987092034709572939}, F2: true, F3: \"abcd\", F4: \"abc\", F5: typeobject(byte), F6: 197, F8: B, F11: {Id: \"ΣΦ\", Msg: \"cde\"}, F12: {Id: \"cdeΔ\", RetryCode: RetryConnection, Msg: \"ΣΦ王普澤\"}, F13: 33783, F15: 2806157115, F16: 4207805273, F19: -49, F22: 6458, F23: -924748202, F24: -435626669, F25: -3505399419386896919, F27: 5.9329824e+08, F29: 1.1656722371802888e+09, F30: 3.122338919329276e+08, F31: {}, F32: {Msg: \"王普澤世界\"}}, F9: {F1: true}, F10: {F2: false}, F11: {F29: -5.916343133302755e+07}, F12: {F9: D}, F13: {F14: 21576}}}",
		Target: VStructDepth3_VStructDepth2_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F1: VArray1_Uint32{
					1540208733,
				},
				F2: []int16{
					4909,
				},
				F3: VList_Any{
					[]VArray1_String{
						{},
						{
							"bcdeΔΘΠΣ",
						},
					},
				},
				F4: map[float64]struct{}{
					-1.9684892797302527e+09: struct{}{},
					-8.275744919550115e+08:  struct{}{},
					0: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdC: struct{}{},
				},
				F6: map[byte]byte{
					170: 244,
					253: 0,
					8:   21,
				},
				F7: map[uint32]uint32{
					0: 541517617,
				},
				F8: VStructDepth1_All{
					F0: VStructDepth1_Int64{
						F25: 1987092034709572939,
					},
					F2: true,
					F3: "abcd",
					F4: "abc",
					F5: vdl.ByteType,
					F6: 197,
					F8: VEnumAbcB,
					F11: VNamedError{
						Id:  "ΣΦ",
						Msg: "cde",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "cdeΔ",
						RetryCode: vdl.WireRetryCodeRetryConnection,
						Msg:       "ΣΦ王普澤",
					}),
					F13: 33783,
					F15: 2806157115,
					F16: 4207805273,
					F19: -49,
					F22: 6458,
					F23: -924748202,
					F24: -435626669,
					F25: -3505399419386896919,
					F27: 5.9329824e+08,
					F29: 1.1656722371802888e+09,
					F30: 3.122338919329276e+08,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Msg: "王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF2{},
				F11: VUnionDepth1_Float64F29{-5.916343133302755e+07},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 21576,
				},
			},
		},
		SourceLabel: "VStructDepth3_All{F4: {F1: {1540208733}, F2: {4909}, F3: {[]VArray1_String{{}, {\"bcdeΔΘΠΣ\"}}}, F4: {-1.9684892797302527e+09, -8.275744919550115e+08, 0}, F5: {C}, F6: {170: 244, 253: 0, 8: 21}, F7: {0: 541517617}, F8: {F0: VStructDepth1_Int64{F25: 1987092034709572939}, F2: true, F3: \"abcd\", F4: \"abc\", F5: typeobject(byte), F6: 197, F8: B, F11: {Id: \"ΣΦ\", Msg: \"cde\"}, F12: {Id: \"cdeΔ\", RetryCode: RetryConnection, Msg: \"ΣΦ王普澤\"}, F13: 33783, F15: 2806157115, F16: 4207805273, F19: -49, F22: 6458, F23: -924748202, F24: -435626669, F25: -3505399419386896919, F27: 5.9329824e+08, F29: 1.1656722371802888e+09, F30: 3.122338919329276e+08, F31: {}, F32: {Msg: \"王普澤世界\"}}, F9: {F1: true}, F10: {F2: false}, F11: {F29: -5.916343133302755e+07}, F12: {F9: D}, F13: {F14: 21576}}}",
		Source: VStructDepth3_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F1: VArray1_Uint32{
					1540208733,
				},
				F2: []int16{
					4909,
				},
				F3: VList_Any{
					[]VArray1_String{
						{},
						{
							"bcdeΔΘΠΣ",
						},
					},
				},
				F4: map[float64]struct{}{
					-1.9684892797302527e+09: struct{}{},
					-8.275744919550115e+08:  struct{}{},
					0: struct{}{},
				},
				F5: VSet_VEnumBcd{
					VEnumBcdC: struct{}{},
				},
				F6: map[byte]byte{
					170: 244,
					253: 0,
					8:   21,
				},
				F7: map[uint32]uint32{
					0: 541517617,
				},
				F8: VStructDepth1_All{
					F0: VStructDepth1_Int64{
						F25: 1987092034709572939,
					},
					F2: true,
					F3: "abcd",
					F4: "abc",
					F5: vdl.ByteType,
					F6: 197,
					F8: VEnumAbcB,
					F11: VNamedError{
						Id:  "ΣΦ",
						Msg: "cde",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "cdeΔ",
						RetryCode: vdl.WireRetryCodeRetryConnection,
						Msg:       "ΣΦ王普澤",
					}),
					F13: 33783,
					F15: 2806157115,
					F16: 4207805273,
					F19: -49,
					F22: 6458,
					F23: -924748202,
					F24: -435626669,
					F25: -3505399419386896919,
					F27: 5.9329824e+08,
					F29: 1.1656722371802888e+09,
					F30: 3.122338919329276e+08,
					F31: &VStructEmpty{},
					F32: &VNamedError{
						Msg: "王普澤世界",
					},
				},
				F9: VStructDepth1_Bool{
					F1: true,
				},
				F10: VUnionDepth1_AllF2{},
				F11: VUnionDepth1_Float64F29{-5.916343133302755e+07},
				F12: &VStructDepth1_VEnumBcd{
					F9: VEnumBcdD,
				},
				F13: &VStructDepth1_VUint16{
					F14: 21576,
				},
			},
			F5: VUnionDepth2_AllF0{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth3_VUnionDepth2_All{}",
		Target: VStructDepth3_VUnionDepth2_All{
			F5: VUnionDepth2_AllF0{},
		},
		SourceLabel: "VStructDepth3_VUnionDepth2_All{}",
		Source: VStructDepth3_VUnionDepth2_All{
			F5: VUnionDepth2_AllF0{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth3_VUnionDepth2_All{}",
		Target: VStructDepth3_VUnionDepth2_All{
			F5: VUnionDepth2_AllF0{},
		},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth3_VUnionDepth2_All{}",
		Target: VStructDepth3_VUnionDepth2_All{
			F5: VUnionDepth2_AllF0{},
		},
		SourceLabel: "VStructDepth3_All{}",
		Source: VStructDepth3_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			F5: VUnionDepth2_AllF0{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth3_VUnionDepth2_All{F5: {F13: {F28: 1.5}}}",
		Target: VStructDepth3_VUnionDepth2_All{
			F5: VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
				F28: 1.5,
			}},
		},
		SourceLabel: "VStructDepth3_VUnionDepth2_All{F5: {F13: {F28: 1.5}}}",
		Source: VStructDepth3_VUnionDepth2_All{
			F5: VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
				F28: 1.5,
			}},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth3_VUnionDepth2_All{F5: {F13: {F28: 1.5}}}",
		Target: VStructDepth3_VUnionDepth2_All{
			F5: VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
				F28: 1.5,
			}},
		},
		SourceLabel: "VStructDepth3_All{F5: {F13: {F28: 1.5}}}",
		Source: VStructDepth3_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			F5: VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
				F28: 1.5,
			}},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth3_VUnionDepth2_All{F5: {F4: {false}}}",
		Target: VStructDepth3_VUnionDepth2_All{
			F5: VUnionDepth2_AllF4{VSet_VBool{
				false: struct{}{},
			}},
		},
		SourceLabel: "VStructDepth3_VUnionDepth2_All{F5: {F4: {false}}}",
		Source: VStructDepth3_VUnionDepth2_All{
			F5: VUnionDepth2_AllF4{VSet_VBool{
				false: struct{}{},
			}},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth3_VUnionDepth2_All{F5: {F4: {false}}}",
		Target: VStructDepth3_VUnionDepth2_All{
			F5: VUnionDepth2_AllF4{VSet_VBool{
				false: struct{}{},
			}},
		},
		SourceLabel: "VStructDepth3_All{F5: {F4: {false}}}",
		Source: VStructDepth3_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			F5: VUnionDepth2_AllF4{VSet_VBool{
				false: struct{}{},
			}},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VStructDepth3_OptVStructDepth2_Set_Float64{}",
		Target:      VStructDepth3_OptVStructDepth2_Set_Float64{},
		SourceLabel: "VStructDepth3_OptVStructDepth2_Set_Float64{}",
		Source:      VStructDepth3_OptVStructDepth2_Set_Float64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth3_OptVStructDepth2_Set_Float64{}",
		Target:      VStructDepth3_OptVStructDepth2_Set_Float64{},
		SourceLabel: "VStructDepth3_All{}",
		Source: VStructDepth3_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			F5: VUnionDepth2_AllF0{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VStructDepth3_OptVStructDepth2_Set_Float64{}",
		Target:      VStructDepth3_OptVStructDepth2_Set_Float64{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VStructDepth3_OptVStructDepth2_Set_Float64{F6: {F4: {1.5}}}",
		Target: VStructDepth3_OptVStructDepth2_Set_Float64{
			F6: &VStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
		SourceLabel: "VStructDepth3_OptVStructDepth2_Set_Float64{F6: {F4: {1.5}}}",
		Source: VStructDepth3_OptVStructDepth2_Set_Float64{
			F6: &VStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VStructDepth3_OptVStructDepth2_Set_Float64{F6: {F4: {1.5}}}",
		Target: VStructDepth3_OptVStructDepth2_Set_Float64{
			F6: &VStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
		SourceLabel: "VStructDepth3_All{F6: {F4: {1.5}}}",
		Source: VStructDepth3_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			F5: VUnionDepth2_AllF0{},
			F6: &VStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VStructDepth3_OptVStructDepth2_Set_Float64{F6: {}}",
		Target: VStructDepth3_OptVStructDepth2_Set_Float64{
			F6: &VStructDepth2_Set_Float64{},
		},
		SourceLabel: "VStructDepth3_OptVStructDepth2_Set_Float64{F6: {}}",
		Source: VStructDepth3_OptVStructDepth2_Set_Float64{
			F6: &VStructDepth2_Set_Float64{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VStructDepth3_OptVStructDepth2_Set_Float64{F6: {}}",
		Target: VStructDepth3_OptVStructDepth2_Set_Float64{
			F6: &VStructDepth2_Set_Float64{},
		},
		SourceLabel: "VStructDepth3_All{F6: {}}",
		Source: VStructDepth3_All{
			F4: VStructDepth2_All{
				F0: VArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: VStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: VUnionDepth1_AllF0{},
				F11: VUnionDepth1_Float64F29{},
			},
			F5: VUnionDepth2_AllF0{},
			F6: &VStructDepth2_Set_Float64{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth3_All{F0: {}}",
		Target:      VUnionDepth3_All(VUnionDepth3_AllF0{}),
		SourceLabel: "VUnionDepth3_All{F0: {}}",
		Source:      VUnionDepth3_All(VUnionDepth3_AllF0{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth3_All{F0: {}}",
		Target:      VUnionDepth3_All(VUnionDepth3_AllF0{}),
		SourceLabel: "VUnionDepth3_VArray3_OptVStructDepth1_VFloat32{F0: {}}",
		Source:      VUnionDepth3_VArray3_OptVStructDepth1_VFloat32(VUnionDepth3_VArray3_OptVStructDepth1_VFloat32F0{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth3_All{F0: {}}",
		Target:      VUnionDepth3_All(VUnionDepth3_AllF0{}),
		SourceLabel: "VUnionDepth1_Any{F0: VArray3_OptVStructDepth1_VFloat32{}}",
		Source:      VUnionDepth1_Any(VUnionDepth1_AnyF0{VArray3_OptVStructDepth1_VFloat32{}}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth3_All{F6: {F4: {1.5}}}",
		Target: VUnionDepth3_All(VUnionDepth3_AllF6{&VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		}}),
		SourceLabel: "VUnionDepth3_All{F6: {F4: {1.5}}}",
		Source: VUnionDepth3_All(VUnionDepth3_AllF6{&VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth3_All{F6: {F4: {1.5}}}",
		Target: VUnionDepth3_All(VUnionDepth3_AllF6{&VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		}}),
		SourceLabel: "VUnionDepth3_OptVStructDepth2_Set_Float64{F6: {F4: {1.5}}}",
		Source: VUnionDepth3_OptVStructDepth2_Set_Float64(VUnionDepth3_OptVStructDepth2_Set_Float64F6{&VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth3_All{F2: {{F3: \"Φ\"}}}",
		Target: VUnionDepth3_All(VUnionDepth3_AllF2{map[VStructDepth1_String]struct{}{
			{
				F3: "Φ",
			}: struct{}{},
		}}),
		SourceLabel: "VUnionDepth3_All{F2: {{F3: \"Φ\"}}}",
		Source: VUnionDepth3_All(VUnionDepth3_AllF2{map[VStructDepth1_String]struct{}{
			{
				F3: "Φ",
			}: struct{}{},
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth3_All{F2: {{F3: \"Φ\"}}}",
		Target: VUnionDepth3_All(VUnionDepth3_AllF2{map[VStructDepth1_String]struct{}{
			{
				F3: "Φ",
			}: struct{}{},
		}}),
		SourceLabel: "VUnionDepth3_Set_VStructDepth1_String{F2: {{F3: \"Φ\"}}}",
		Source: VUnionDepth3_Set_VStructDepth1_String(VUnionDepth3_Set_VStructDepth1_StringF2{map[VStructDepth1_String]struct{}{
			{
				F3: "Φ",
			}: struct{}{},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth3_VArray3_OptVStructDepth1_VFloat32{F0: {}}",
		Target:      VUnionDepth3_VArray3_OptVStructDepth1_VFloat32(VUnionDepth3_VArray3_OptVStructDepth1_VFloat32F0{}),
		SourceLabel: "VUnionDepth3_VArray3_OptVStructDepth1_VFloat32{F0: {}}",
		Source:      VUnionDepth3_VArray3_OptVStructDepth1_VFloat32(VUnionDepth3_VArray3_OptVStructDepth1_VFloat32F0{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth3_VArray3_OptVStructDepth1_VFloat32{F0: {}}",
		Target:      VUnionDepth3_VArray3_OptVStructDepth1_VFloat32(VUnionDepth3_VArray3_OptVStructDepth1_VFloat32F0{}),
		SourceLabel: "VUnionDepth1_Any{F0: VArray3_OptVStructDepth1_VFloat32{}}",
		Source:      VUnionDepth1_Any(VUnionDepth1_AnyF0{VArray3_OptVStructDepth1_VFloat32{}}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth3_VArray3_OptVStructDepth1_VFloat32{F0: {}}",
		Target:      VUnionDepth3_VArray3_OptVStructDepth1_VFloat32(VUnionDepth3_VArray3_OptVStructDepth1_VFloat32F0{}),
		SourceLabel: "VUnionDepth1_All{F0: VArray3_OptVStructDepth1_VFloat32{}}",
		Source:      VUnionDepth1_All(VUnionDepth1_AllF0{VArray3_OptVStructDepth1_VFloat32{}}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth3_VArray3_OptVStructDepth1_VFloat32{F0: {{F28: 1.5}, {F28: 1.5}, {F28: 1.5}}}",
		Target: VUnionDepth3_VArray3_OptVStructDepth1_VFloat32(VUnionDepth3_VArray3_OptVStructDepth1_VFloat32F0{VArray3_OptVStructDepth1_VFloat32{
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
		}}),
		SourceLabel: "VUnionDepth3_VArray3_OptVStructDepth1_VFloat32{F0: {{F28: 1.5}, {F28: 1.5}, {F28: 1.5}}}",
		Source: VUnionDepth3_VArray3_OptVStructDepth1_VFloat32(VUnionDepth3_VArray3_OptVStructDepth1_VFloat32F0{VArray3_OptVStructDepth1_VFloat32{
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth3_VArray3_OptVStructDepth1_VFloat32{F0: {{F28: 1.5}, {F28: 1.5}, {F28: 1.5}}}",
		Target: VUnionDepth3_VArray3_OptVStructDepth1_VFloat32(VUnionDepth3_VArray3_OptVStructDepth1_VFloat32F0{VArray3_OptVStructDepth1_VFloat32{
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
		}}),
		SourceLabel: "VUnionDepth3_All{F0: {{F28: 1.5}, {F28: 1.5}, {F28: 1.5}}}",
		Source: VUnionDepth3_All(VUnionDepth3_AllF0{VArray3_OptVStructDepth1_VFloat32{
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth3_VArray3_OptVStructDepth1_VFloat32{F0: {{}, nil, {F28: 3.367077e+08}}}",
		Target: VUnionDepth3_VArray3_OptVStructDepth1_VFloat32(VUnionDepth3_VArray3_OptVStructDepth1_VFloat32F0{VArray3_OptVStructDepth1_VFloat32{
			{},
			nil,
			{
				F28: 3.367077e+08,
			},
		}}),
		SourceLabel: "VUnionDepth3_VArray3_OptVStructDepth1_VFloat32{F0: {{}, nil, {F28: 3.367077e+08}}}",
		Source: VUnionDepth3_VArray3_OptVStructDepth1_VFloat32(VUnionDepth3_VArray3_OptVStructDepth1_VFloat32F0{VArray3_OptVStructDepth1_VFloat32{
			{},
			nil,
			{
				F28: 3.367077e+08,
			},
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth3_VArray3_OptVStructDepth1_VFloat32{F0: {{}, nil, {F28: 3.367077e+08}}}",
		Target: VUnionDepth3_VArray3_OptVStructDepth1_VFloat32(VUnionDepth3_VArray3_OptVStructDepth1_VFloat32F0{VArray3_OptVStructDepth1_VFloat32{
			{},
			nil,
			{
				F28: 3.367077e+08,
			},
		}}),
		SourceLabel: "VUnionDepth3_All{F0: {{}, nil, {F28: 3.367077e+08}}}",
		Source: VUnionDepth3_All(VUnionDepth3_AllF0{VArray3_OptVStructDepth1_VFloat32{
			{},
			nil,
			{
				F28: 3.367077e+08,
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth3_List_VList_Error{F1: {}}",
		Target:      VUnionDepth3_List_VList_Error(VUnionDepth3_List_VList_ErrorF1{}),
		SourceLabel: "VUnionDepth3_List_VList_Error{F1: {}}",
		Source:      VUnionDepth3_List_VList_Error(VUnionDepth3_List_VList_ErrorF1{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth3_List_VList_Error{F1: {}}",
		Target:      VUnionDepth3_List_VList_Error(VUnionDepth3_List_VList_ErrorF1{}),
		SourceLabel: "VUnionDepth3_All{F1: {}}",
		Source:      VUnionDepth3_All(VUnionDepth3_AllF1{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth3_List_VList_Error{F1: {{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Target: VUnionDepth3_List_VList_Error(VUnionDepth3_List_VList_ErrorF1{[]VList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
			},
		}}),
		SourceLabel: "VUnionDepth3_List_VList_Error{F1: {{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Source: VUnionDepth3_List_VList_Error(VUnionDepth3_List_VList_ErrorF1{[]VList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
			},
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth3_List_VList_Error{F1: {{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Target: VUnionDepth3_List_VList_Error(VUnionDepth3_List_VList_ErrorF1{[]VList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
			},
		}}),
		SourceLabel: "VUnionDepth3_All{F1: {{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Source: VUnionDepth3_All(VUnionDepth3_AllF1{[]VList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth3_List_VList_Error{F1: {{{Id: \"ΘΠ\", RetryCode: RetryRefetch, Msg: \"cdeΔΘΠΣΦ王普\"}, {}, {Id: \"cdeΔΘΠΣΦ\", RetryCode: RetryRefetch, Msg: \"abc\"}}}}",
		Target: VUnionDepth3_List_VList_Error(VUnionDepth3_List_VList_ErrorF1{[]VList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Id:        "ΘΠ",
					RetryCode: vdl.WireRetryCodeRetryRefetch,
					Msg:       "cdeΔΘΠΣΦ王普",
				}),
				verror.FromWire(&vdl.WireError{}),
				verror.FromWire(&vdl.WireError{
					Id:        "cdeΔΘΠΣΦ",
					RetryCode: vdl.WireRetryCodeRetryRefetch,
					Msg:       "abc",
				}),
			},
		}}),
		SourceLabel: "VUnionDepth3_List_VList_Error{F1: {{{Id: \"ΘΠ\", RetryCode: RetryRefetch, Msg: \"cdeΔΘΠΣΦ王普\"}, {}, {Id: \"cdeΔΘΠΣΦ\", RetryCode: RetryRefetch, Msg: \"abc\"}}}}",
		Source: VUnionDepth3_List_VList_Error(VUnionDepth3_List_VList_ErrorF1{[]VList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Id:        "ΘΠ",
					RetryCode: vdl.WireRetryCodeRetryRefetch,
					Msg:       "cdeΔΘΠΣΦ王普",
				}),
				verror.FromWire(&vdl.WireError{}),
				verror.FromWire(&vdl.WireError{
					Id:        "cdeΔΘΠΣΦ",
					RetryCode: vdl.WireRetryCodeRetryRefetch,
					Msg:       "abc",
				}),
			},
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth3_List_VList_Error{F1: {{{Id: \"ΘΠ\", RetryCode: RetryRefetch, Msg: \"cdeΔΘΠΣΦ王普\"}, {}, {Id: \"cdeΔΘΠΣΦ\", RetryCode: RetryRefetch, Msg: \"abc\"}}}}",
		Target: VUnionDepth3_List_VList_Error(VUnionDepth3_List_VList_ErrorF1{[]VList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Id:        "ΘΠ",
					RetryCode: vdl.WireRetryCodeRetryRefetch,
					Msg:       "cdeΔΘΠΣΦ王普",
				}),
				verror.FromWire(&vdl.WireError{}),
				verror.FromWire(&vdl.WireError{
					Id:        "cdeΔΘΠΣΦ",
					RetryCode: vdl.WireRetryCodeRetryRefetch,
					Msg:       "abc",
				}),
			},
		}}),
		SourceLabel: "VUnionDepth3_All{F1: {{{Id: \"ΘΠ\", RetryCode: RetryRefetch, Msg: \"cdeΔΘΠΣΦ王普\"}, {}, {Id: \"cdeΔΘΠΣΦ\", RetryCode: RetryRefetch, Msg: \"abc\"}}}}",
		Source: VUnionDepth3_All(VUnionDepth3_AllF1{[]VList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Id:        "ΘΠ",
					RetryCode: vdl.WireRetryCodeRetryRefetch,
					Msg:       "cdeΔΘΠΣΦ王普",
				}),
				verror.FromWire(&vdl.WireError{}),
				verror.FromWire(&vdl.WireError{
					Id:        "cdeΔΘΠΣΦ",
					RetryCode: vdl.WireRetryCodeRetryRefetch,
					Msg:       "abc",
				}),
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth3_Set_VStructDepth1_String{F2: {}}",
		Target:      VUnionDepth3_Set_VStructDepth1_String(VUnionDepth3_Set_VStructDepth1_StringF2{}),
		SourceLabel: "VUnionDepth3_Set_VStructDepth1_String{F2: {}}",
		Source:      VUnionDepth3_Set_VStructDepth1_String(VUnionDepth3_Set_VStructDepth1_StringF2{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth3_Set_VStructDepth1_String{F2: {}}",
		Target:      VUnionDepth3_Set_VStructDepth1_String(VUnionDepth3_Set_VStructDepth1_StringF2{}),
		SourceLabel: "VUnionDepth3_All{F2: {}}",
		Source:      VUnionDepth3_All(VUnionDepth3_AllF2{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth3_Set_VStructDepth1_String{F2: {{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VUnionDepth3_Set_VStructDepth1_String(VUnionDepth3_Set_VStructDepth1_StringF2{map[VStructDepth1_String]struct{}{
			{
				F3: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		}}),
		SourceLabel: "VUnionDepth3_Set_VStructDepth1_String{F2: {{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VUnionDepth3_Set_VStructDepth1_String(VUnionDepth3_Set_VStructDepth1_StringF2{map[VStructDepth1_String]struct{}{
			{
				F3: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth3_Set_VStructDepth1_String{F2: {{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: VUnionDepth3_Set_VStructDepth1_String(VUnionDepth3_Set_VStructDepth1_StringF2{map[VStructDepth1_String]struct{}{
			{
				F3: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		}}),
		SourceLabel: "VUnionDepth3_All{F2: {{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: VUnionDepth3_All(VUnionDepth3_AllF2{map[VStructDepth1_String]struct{}{
			{
				F3: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth3_Set_VStructDepth1_String{F2: {{}, {F3: \"澤\"}}}",
		Target: VUnionDepth3_Set_VStructDepth1_String(VUnionDepth3_Set_VStructDepth1_StringF2{map[VStructDepth1_String]struct{}{
			{}: struct{}{},
			{
				F3: "澤",
			}: struct{}{},
		}}),
		SourceLabel: "VUnionDepth3_Set_VStructDepth1_String{F2: {{}, {F3: \"澤\"}}}",
		Source: VUnionDepth3_Set_VStructDepth1_String(VUnionDepth3_Set_VStructDepth1_StringF2{map[VStructDepth1_String]struct{}{
			{}: struct{}{},
			{
				F3: "澤",
			}: struct{}{},
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth3_Set_VStructDepth1_String{F2: {{}, {F3: \"澤\"}}}",
		Target: VUnionDepth3_Set_VStructDepth1_String(VUnionDepth3_Set_VStructDepth1_StringF2{map[VStructDepth1_String]struct{}{
			{}: struct{}{},
			{
				F3: "澤",
			}: struct{}{},
		}}),
		SourceLabel: "VUnionDepth3_All{F2: {{}, {F3: \"澤\"}}}",
		Source: VUnionDepth3_All(VUnionDepth3_AllF2{map[VStructDepth1_String]struct{}{
			{}: struct{}{},
			{
				F3: "澤",
			}: struct{}{},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool{F3: {}}",
		Target:      VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool(VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBoolF3{}),
		SourceLabel: "VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool{F3: {}}",
		Source:      VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool(VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBoolF3{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool{F3: {}}",
		Target:      VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool(VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBoolF3{}),
		SourceLabel: "VUnionDepth3_All{F3: {}}",
		Source:      VUnionDepth3_All(VUnionDepth3_AllF3{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool{F3: {{F2: true}: {F2: true}}}",
		Target: VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool(VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBoolF3{VMap_VStructDepth1_VBool_VStructDepth1_VBool{
			{
				F2: true,
			}: {
				F2: true,
			},
		}}),
		SourceLabel: "VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool{F3: {{F2: true}: {F2: true}}}",
		Source: VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool(VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBoolF3{VMap_VStructDepth1_VBool_VStructDepth1_VBool{
			{
				F2: true,
			}: {
				F2: true,
			},
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool{F3: {{F2: true}: {F2: true}}}",
		Target: VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool(VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBoolF3{VMap_VStructDepth1_VBool_VStructDepth1_VBool{
			{
				F2: true,
			}: {
				F2: true,
			},
		}}),
		SourceLabel: "VUnionDepth3_All{F3: {{F2: true}: {F2: true}}}",
		Source: VUnionDepth3_All(VUnionDepth3_AllF3{VMap_VStructDepth1_VBool_VStructDepth1_VBool{
			{
				F2: true,
			}: {
				F2: true,
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth3_VStructDepth2_All{F4: {}}",
		Target: VUnionDepth3_VStructDepth2_All(VUnionDepth3_VStructDepth2_AllF4{VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		}}),
		SourceLabel: "VUnionDepth3_VStructDepth2_All{F4: {}}",
		Source: VUnionDepth3_VStructDepth2_All(VUnionDepth3_VStructDepth2_AllF4{VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		}}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth3_VStructDepth2_All{F4: {}}",
		Target: VUnionDepth3_VStructDepth2_All(VUnionDepth3_VStructDepth2_AllF4{VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		}}),
		SourceLabel: "VUnionDepth3_All{F4: {}}",
		Source: VUnionDepth3_All(VUnionDepth3_AllF4{VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: VStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: VUnionDepth1_AllF0{},
			F11: VUnionDepth1_Float64F29{},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth3_VStructDepth2_All{F4: {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Target: VUnionDepth3_VStructDepth2_All(VUnionDepth3_VStructDepth2_AllF4{VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.Int64Type,
				vdl.Int64Type,
			},
			F1: VArray1_Uint32{
				123,
			},
			F2: []int16{
				-123,
			},
			F3: VList_Any{
				int64(-123),
			},
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
			F5: VSet_VEnumBcd{
				VEnumBcdD: struct{}{},
			},
			F6: map[byte]byte{
				123: 123,
			},
			F7: map[uint32]uint32{
				123: 123,
			},
			F8: VStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
			F9: VStructDepth1_Bool{
				F1: true,
			},
			F10: VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			F11: VUnionDepth1_Float64F29{1.5},
			F12: &VStructDepth1_VEnumBcd{
				F9: VEnumBcdD,
			},
			F13: &VStructDepth1_VUint16{
				F14: 123,
			},
		}}),
		SourceLabel: "VUnionDepth3_VStructDepth2_All{F4: {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Source: VUnionDepth3_VStructDepth2_All(VUnionDepth3_VStructDepth2_AllF4{VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.Int64Type,
				vdl.Int64Type,
			},
			F1: VArray1_Uint32{
				123,
			},
			F2: []int16{
				-123,
			},
			F3: VList_Any{
				int64(-123),
			},
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
			F5: VSet_VEnumBcd{
				VEnumBcdD: struct{}{},
			},
			F6: map[byte]byte{
				123: 123,
			},
			F7: map[uint32]uint32{
				123: 123,
			},
			F8: VStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
			F9: VStructDepth1_Bool{
				F1: true,
			},
			F10: VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			F11: VUnionDepth1_Float64F29{1.5},
			F12: &VStructDepth1_VEnumBcd{
				F9: VEnumBcdD,
			},
			F13: &VStructDepth1_VUint16{
				F14: 123,
			},
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth3_VStructDepth2_All{F4: {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Target: VUnionDepth3_VStructDepth2_All(VUnionDepth3_VStructDepth2_AllF4{VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.Int64Type,
				vdl.Int64Type,
			},
			F1: VArray1_Uint32{
				123,
			},
			F2: []int16{
				-123,
			},
			F3: VList_Any{
				int64(-123),
			},
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
			F5: VSet_VEnumBcd{
				VEnumBcdD: struct{}{},
			},
			F6: map[byte]byte{
				123: 123,
			},
			F7: map[uint32]uint32{
				123: 123,
			},
			F8: VStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
			F9: VStructDepth1_Bool{
				F1: true,
			},
			F10: VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			F11: VUnionDepth1_Float64F29{1.5},
			F12: &VStructDepth1_VEnumBcd{
				F9: VEnumBcdD,
			},
			F13: &VStructDepth1_VUint16{
				F14: 123,
			},
		}}),
		SourceLabel: "VUnionDepth3_All{F4: {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Source: VUnionDepth3_All(VUnionDepth3_AllF4{VStructDepth2_All{
			F0: VArray2_TypeObject{
				vdl.Int64Type,
				vdl.Int64Type,
			},
			F1: VArray1_Uint32{
				123,
			},
			F2: []int16{
				-123,
			},
			F3: VList_Any{
				int64(-123),
			},
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
			F5: VSet_VEnumBcd{
				VEnumBcdD: struct{}{},
			},
			F6: map[byte]byte{
				123: 123,
			},
			F7: map[uint32]uint32{
				123: 123,
			},
			F8: VStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: VEnumAbcC,
				F9: VEnumBcdD,
				F11: VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &VStructEmpty{},
				F32: &VNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
			F9: VStructDepth1_Bool{
				F1: true,
			},
			F10: VUnionDepth1_AllF32{&VNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			F11: VUnionDepth1_Float64F29{1.5},
			F12: &VStructDepth1_VEnumBcd{
				F9: VEnumBcdD,
			},
			F13: &VStructDepth1_VUint16{
				F14: 123,
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth3_VStructDepth2_All{F4: {F0: {typeobject(VUnionDepth2_VList_VByte), typeobject(any)}, F1: {269472430}, F3: {float64(5.1889701539695996e+08)}, F4: {0}, F5: {B}, F6: {0: 94}, F8: {F0: VUnionDepth2_VSet_VNamedError{F5: {{Msg: \"ΘΠΣΦ王普澤世\"}}}, F3: \"eΔ\", F4: \"ΔΘΠΣ\", F5: typeobject(VUnionDepth2_OptVStructDepth1_VFloat32), F6: 41, F11: {Id: \"cdeΔΘΠΣΦ王普澤\", Msg: \"bcdeΔΘΠΣΦ王普\"}, F12: {Id: \"ΠΣΦ王普澤\", RetryCode: RetryRefetch, Msg: \"bcdeΔ\"}, F14: 5734, F15: 2546143158, F19: 54, F20: 36, F21: -12218, F22: -12639, F23: -596308104, F24: 831381495, F25: 2471666942645895286, F26: -480559897555658797, F27: -1.5791332e+09, F28: 8.072309e+08, F29: 3.2680107058968368e+09, F30: 2.0559144619019778e+09, F31: {}, F32: {}}, F9: {F1: true}, F10: {F13: 23269}, F11: {F29: 6.897168490214154e+08}, F12: {F9: D}, F13: {}}}",
		Target: VUnionDepth3_VStructDepth2_All(VUnionDepth3_VStructDepth2_AllF4{VStructDepth2_All{
			F0: VArray2_TypeObject{
				__VDLType_union_199,
				vdl.AnyType,
			},
			F1: VArray1_Uint32{
				269472430,
			},
			F3: VList_Any{
				float64(5.1889701539695996e+08),
			},
			F4: map[float64]struct{}{
				0: struct{}{},
			},
			F5: VSet_VEnumBcd{
				VEnumBcdB: struct{}{},
			},
			F6: map[byte]byte{
				0: 94,
			},
			F8: VStructDepth1_All{
				F0: VUnionDepth2_VSet_VNamedError(VUnionDepth2_VSet_VNamedErrorF5{VSet_VNamedError{
					{
						Msg: "ΘΠΣΦ王普澤世",
					}: struct{}{},
				}}),
				F3: "eΔ",
				F4: "ΔΘΠΣ",
				F5: __VDLType_union_210,
				F6: 41,
				F11: VNamedError{
					Id:  "cdeΔΘΠΣΦ王普澤",
					Msg: "bcdeΔΘΠΣΦ王普",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "ΠΣΦ王普澤",
					RetryCode: vdl.WireRetryCodeRetryRefetch,
					Msg:       "bcdeΔ",
				}),
				F14: 5734,
				F15: 2546143158,
				F19: 54,
				F20: 36,
				F21: -12218,
				F22: -12639,
				F23: -596308104,
				F24: 831381495,
				F25: 2471666942645895286,
				F26: -480559897555658797,
				F27: -1.5791332e+09,
				F28: 8.072309e+08,
				F29: 3.2680107058968368e+09,
				F30: 2.0559144619019778e+09,
				F31: &VStructEmpty{},
				F32: &VNamedError{},
			},
			F9: VStructDepth1_Bool{
				F1: true,
			},
			F10: VUnionDepth1_AllF13{23269},
			F11: VUnionDepth1_Float64F29{6.897168490214154e+08},
			F12: &VStructDepth1_VEnumBcd{
				F9: VEnumBcdD,
			},
			F13: &VStructDepth1_VUint16{},
		}}),
		SourceLabel: "VUnionDepth3_VStructDepth2_All{F4: {F0: {typeobject(VUnionDepth2_VList_VByte), typeobject(any)}, F1: {269472430}, F3: {float64(5.1889701539695996e+08)}, F4: {0}, F5: {B}, F6: {0: 94}, F8: {F0: VUnionDepth2_VSet_VNamedError{F5: {{Msg: \"ΘΠΣΦ王普澤世\"}}}, F3: \"eΔ\", F4: \"ΔΘΠΣ\", F5: typeobject(VUnionDepth2_OptVStructDepth1_VFloat32), F6: 41, F11: {Id: \"cdeΔΘΠΣΦ王普澤\", Msg: \"bcdeΔΘΠΣΦ王普\"}, F12: {Id: \"ΠΣΦ王普澤\", RetryCode: RetryRefetch, Msg: \"bcdeΔ\"}, F14: 5734, F15: 2546143158, F19: 54, F20: 36, F21: -12218, F22: -12639, F23: -596308104, F24: 831381495, F25: 2471666942645895286, F26: -480559897555658797, F27: -1.5791332e+09, F28: 8.072309e+08, F29: 3.2680107058968368e+09, F30: 2.0559144619019778e+09, F31: {}, F32: {}}, F9: {F1: true}, F10: {F13: 23269}, F11: {F29: 6.897168490214154e+08}, F12: {F9: D}, F13: {}}}",
		Source: VUnionDepth3_VStructDepth2_All(VUnionDepth3_VStructDepth2_AllF4{VStructDepth2_All{
			F0: VArray2_TypeObject{
				__VDLType_union_199,
				vdl.AnyType,
			},
			F1: VArray1_Uint32{
				269472430,
			},
			F3: VList_Any{
				float64(5.1889701539695996e+08),
			},
			F4: map[float64]struct{}{
				0: struct{}{},
			},
			F5: VSet_VEnumBcd{
				VEnumBcdB: struct{}{},
			},
			F6: map[byte]byte{
				0: 94,
			},
			F8: VStructDepth1_All{
				F0: VUnionDepth2_VSet_VNamedError(VUnionDepth2_VSet_VNamedErrorF5{VSet_VNamedError{
					{
						Msg: "ΘΠΣΦ王普澤世",
					}: struct{}{},
				}}),
				F3: "eΔ",
				F4: "ΔΘΠΣ",
				F5: __VDLType_union_210,
				F6: 41,
				F11: VNamedError{
					Id:  "cdeΔΘΠΣΦ王普澤",
					Msg: "bcdeΔΘΠΣΦ王普",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "ΠΣΦ王普澤",
					RetryCode: vdl.WireRetryCodeRetryRefetch,
					Msg:       "bcdeΔ",
				}),
				F14: 5734,
				F15: 2546143158,
				F19: 54,
				F20: 36,
				F21: -12218,
				F22: -12639,
				F23: -596308104,
				F24: 831381495,
				F25: 2471666942645895286,
				F26: -480559897555658797,
				F27: -1.5791332e+09,
				F28: 8.072309e+08,
				F29: 3.2680107058968368e+09,
				F30: 2.0559144619019778e+09,
				F31: &VStructEmpty{},
				F32: &VNamedError{},
			},
			F9: VStructDepth1_Bool{
				F1: true,
			},
			F10: VUnionDepth1_AllF13{23269},
			F11: VUnionDepth1_Float64F29{6.897168490214154e+08},
			F12: &VStructDepth1_VEnumBcd{
				F9: VEnumBcdD,
			},
			F13: &VStructDepth1_VUint16{},
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth3_VStructDepth2_All{F4: {F0: {typeobject(VUnionDepth2_VList_VByte), typeobject(any)}, F1: {269472430}, F3: {float64(5.1889701539695996e+08)}, F4: {0}, F5: {B}, F6: {0: 94}, F8: {F0: VUnionDepth2_VSet_VNamedError{F5: {{Msg: \"ΘΠΣΦ王普澤世\"}}}, F3: \"eΔ\", F4: \"ΔΘΠΣ\", F5: typeobject(VUnionDepth2_OptVStructDepth1_VFloat32), F6: 41, F11: {Id: \"cdeΔΘΠΣΦ王普澤\", Msg: \"bcdeΔΘΠΣΦ王普\"}, F12: {Id: \"ΠΣΦ王普澤\", RetryCode: RetryRefetch, Msg: \"bcdeΔ\"}, F14: 5734, F15: 2546143158, F19: 54, F20: 36, F21: -12218, F22: -12639, F23: -596308104, F24: 831381495, F25: 2471666942645895286, F26: -480559897555658797, F27: -1.5791332e+09, F28: 8.072309e+08, F29: 3.2680107058968368e+09, F30: 2.0559144619019778e+09, F31: {}, F32: {}}, F9: {F1: true}, F10: {F13: 23269}, F11: {F29: 6.897168490214154e+08}, F12: {F9: D}, F13: {}}}",
		Target: VUnionDepth3_VStructDepth2_All(VUnionDepth3_VStructDepth2_AllF4{VStructDepth2_All{
			F0: VArray2_TypeObject{
				__VDLType_union_199,
				vdl.AnyType,
			},
			F1: VArray1_Uint32{
				269472430,
			},
			F3: VList_Any{
				float64(5.1889701539695996e+08),
			},
			F4: map[float64]struct{}{
				0: struct{}{},
			},
			F5: VSet_VEnumBcd{
				VEnumBcdB: struct{}{},
			},
			F6: map[byte]byte{
				0: 94,
			},
			F8: VStructDepth1_All{
				F0: VUnionDepth2_VSet_VNamedError(VUnionDepth2_VSet_VNamedErrorF5{VSet_VNamedError{
					{
						Msg: "ΘΠΣΦ王普澤世",
					}: struct{}{},
				}}),
				F3: "eΔ",
				F4: "ΔΘΠΣ",
				F5: __VDLType_union_210,
				F6: 41,
				F11: VNamedError{
					Id:  "cdeΔΘΠΣΦ王普澤",
					Msg: "bcdeΔΘΠΣΦ王普",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "ΠΣΦ王普澤",
					RetryCode: vdl.WireRetryCodeRetryRefetch,
					Msg:       "bcdeΔ",
				}),
				F14: 5734,
				F15: 2546143158,
				F19: 54,
				F20: 36,
				F21: -12218,
				F22: -12639,
				F23: -596308104,
				F24: 831381495,
				F25: 2471666942645895286,
				F26: -480559897555658797,
				F27: -1.5791332e+09,
				F28: 8.072309e+08,
				F29: 3.2680107058968368e+09,
				F30: 2.0559144619019778e+09,
				F31: &VStructEmpty{},
				F32: &VNamedError{},
			},
			F9: VStructDepth1_Bool{
				F1: true,
			},
			F10: VUnionDepth1_AllF13{23269},
			F11: VUnionDepth1_Float64F29{6.897168490214154e+08},
			F12: &VStructDepth1_VEnumBcd{
				F9: VEnumBcdD,
			},
			F13: &VStructDepth1_VUint16{},
		}}),
		SourceLabel: "VUnionDepth3_All{F4: {F0: {typeobject(VUnionDepth2_VList_VByte), typeobject(any)}, F1: {269472430}, F3: {float64(5.1889701539695996e+08)}, F4: {0}, F5: {B}, F6: {0: 94}, F8: {F0: VUnionDepth2_VSet_VNamedError{F5: {{Msg: \"ΘΠΣΦ王普澤世\"}}}, F3: \"eΔ\", F4: \"ΔΘΠΣ\", F5: typeobject(VUnionDepth2_OptVStructDepth1_VFloat32), F6: 41, F11: {Id: \"cdeΔΘΠΣΦ王普澤\", Msg: \"bcdeΔΘΠΣΦ王普\"}, F12: {Id: \"ΠΣΦ王普澤\", RetryCode: RetryRefetch, Msg: \"bcdeΔ\"}, F14: 5734, F15: 2546143158, F19: 54, F20: 36, F21: -12218, F22: -12639, F23: -596308104, F24: 831381495, F25: 2471666942645895286, F26: -480559897555658797, F27: -1.5791332e+09, F28: 8.072309e+08, F29: 3.2680107058968368e+09, F30: 2.0559144619019778e+09, F31: {}, F32: {}}, F9: {F1: true}, F10: {F13: 23269}, F11: {F29: 6.897168490214154e+08}, F12: {F9: D}, F13: {}}}",
		Source: VUnionDepth3_All(VUnionDepth3_AllF4{VStructDepth2_All{
			F0: VArray2_TypeObject{
				__VDLType_union_199,
				vdl.AnyType,
			},
			F1: VArray1_Uint32{
				269472430,
			},
			F3: VList_Any{
				float64(5.1889701539695996e+08),
			},
			F4: map[float64]struct{}{
				0: struct{}{},
			},
			F5: VSet_VEnumBcd{
				VEnumBcdB: struct{}{},
			},
			F6: map[byte]byte{
				0: 94,
			},
			F8: VStructDepth1_All{
				F0: VUnionDepth2_VSet_VNamedError(VUnionDepth2_VSet_VNamedErrorF5{VSet_VNamedError{
					{
						Msg: "ΘΠΣΦ王普澤世",
					}: struct{}{},
				}}),
				F3: "eΔ",
				F4: "ΔΘΠΣ",
				F5: __VDLType_union_210,
				F6: 41,
				F11: VNamedError{
					Id:  "cdeΔΘΠΣΦ王普澤",
					Msg: "bcdeΔΘΠΣΦ王普",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "ΠΣΦ王普澤",
					RetryCode: vdl.WireRetryCodeRetryRefetch,
					Msg:       "bcdeΔ",
				}),
				F14: 5734,
				F15: 2546143158,
				F19: 54,
				F20: 36,
				F21: -12218,
				F22: -12639,
				F23: -596308104,
				F24: 831381495,
				F25: 2471666942645895286,
				F26: -480559897555658797,
				F27: -1.5791332e+09,
				F28: 8.072309e+08,
				F29: 3.2680107058968368e+09,
				F30: 2.0559144619019778e+09,
				F31: &VStructEmpty{},
				F32: &VNamedError{},
			},
			F9: VStructDepth1_Bool{
				F1: true,
			},
			F10: VUnionDepth1_AllF13{23269},
			F11: VUnionDepth1_Float64F29{6.897168490214154e+08},
			F12: &VStructDepth1_VEnumBcd{
				F9: VEnumBcdD,
			},
			F13: &VStructDepth1_VUint16{},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth3_VUnionDepth2_All{F5: {F0: {}}}",
		Target:      VUnionDepth3_VUnionDepth2_All(VUnionDepth3_VUnionDepth2_AllF5{VUnionDepth2_AllF0{}}),
		SourceLabel: "VUnionDepth3_VUnionDepth2_All{F5: {F0: {}}}",
		Source:      VUnionDepth3_VUnionDepth2_All(VUnionDepth3_VUnionDepth2_AllF5{VUnionDepth2_AllF0{}}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth3_VUnionDepth2_All{F5: {F0: {}}}",
		Target:      VUnionDepth3_VUnionDepth2_All(VUnionDepth3_VUnionDepth2_AllF5{VUnionDepth2_AllF0{}}),
		SourceLabel: "VUnionDepth3_All{F5: {F0: {}}}",
		Source:      VUnionDepth3_All(VUnionDepth3_AllF5{VUnionDepth2_AllF0{}}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth3_VUnionDepth2_All{F5: {F13: {F28: 1.5}}}",
		Target: VUnionDepth3_VUnionDepth2_All(VUnionDepth3_VUnionDepth2_AllF5{VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
			F28: 1.5,
		}}}),
		SourceLabel: "VUnionDepth3_VUnionDepth2_All{F5: {F13: {F28: 1.5}}}",
		Source: VUnionDepth3_VUnionDepth2_All(VUnionDepth3_VUnionDepth2_AllF5{VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
			F28: 1.5,
		}}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth3_VUnionDepth2_All{F5: {F13: {F28: 1.5}}}",
		Target: VUnionDepth3_VUnionDepth2_All(VUnionDepth3_VUnionDepth2_AllF5{VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
			F28: 1.5,
		}}}),
		SourceLabel: "VUnionDepth3_All{F5: {F13: {F28: 1.5}}}",
		Source: VUnionDepth3_All(VUnionDepth3_AllF5{VUnionDepth2_AllF13{&VStructDepth1_VFloat32{
			F28: 1.5,
		}}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth3_VUnionDepth2_All{F5: {F9: {F19: 9}}}",
		Target: VUnionDepth3_VUnionDepth2_All(VUnionDepth3_VUnionDepth2_AllF5{VUnionDepth2_AllF9{VStructDepth1_Int8{
			F19: 9,
		}}}),
		SourceLabel: "VUnionDepth3_VUnionDepth2_All{F5: {F9: {F19: 9}}}",
		Source: VUnionDepth3_VUnionDepth2_All(VUnionDepth3_VUnionDepth2_AllF5{VUnionDepth2_AllF9{VStructDepth1_Int8{
			F19: 9,
		}}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth3_VUnionDepth2_All{F5: {F9: {F19: 9}}}",
		Target: VUnionDepth3_VUnionDepth2_All(VUnionDepth3_VUnionDepth2_AllF5{VUnionDepth2_AllF9{VStructDepth1_Int8{
			F19: 9,
		}}}),
		SourceLabel: "VUnionDepth3_All{F5: {F9: {F19: 9}}}",
		Source: VUnionDepth3_All(VUnionDepth3_AllF5{VUnionDepth2_AllF9{VStructDepth1_Int8{
			F19: 9,
		}}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VUnionDepth3_OptVStructDepth2_Set_Float64{F6: nil}",
		Target:      VUnionDepth3_OptVStructDepth2_Set_Float64(VUnionDepth3_OptVStructDepth2_Set_Float64F6{}),
		SourceLabel: "VUnionDepth3_OptVStructDepth2_Set_Float64{F6: nil}",
		Source:      VUnionDepth3_OptVStructDepth2_Set_Float64(VUnionDepth3_OptVStructDepth2_Set_Float64F6{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VUnionDepth3_OptVStructDepth2_Set_Float64{F6: nil}",
		Target:      VUnionDepth3_OptVStructDepth2_Set_Float64(VUnionDepth3_OptVStructDepth2_Set_Float64F6{}),
		SourceLabel: "VUnionDepth3_All{F6: nil}",
		Source:      VUnionDepth3_All(VUnionDepth3_AllF6{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VUnionDepth3_OptVStructDepth2_Set_Float64{F6: {F4: {1.5}}}",
		Target: VUnionDepth3_OptVStructDepth2_Set_Float64(VUnionDepth3_OptVStructDepth2_Set_Float64F6{&VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		}}),
		SourceLabel: "VUnionDepth3_OptVStructDepth2_Set_Float64{F6: {F4: {1.5}}}",
		Source: VUnionDepth3_OptVStructDepth2_Set_Float64(VUnionDepth3_OptVStructDepth2_Set_Float64F6{&VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "VUnionDepth3_OptVStructDepth2_Set_Float64{F6: {F4: {1.5}}}",
		Target: VUnionDepth3_OptVStructDepth2_Set_Float64(VUnionDepth3_OptVStructDepth2_Set_Float64F6{&VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		}}),
		SourceLabel: "VUnionDepth3_All{F6: {F4: {1.5}}}",
		Source: VUnionDepth3_All(VUnionDepth3_AllF6{&VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VUnionDepth3_OptVStructDepth2_Set_Float64{F6: {F4: {0, 1.2150244533707948e+08, 3.028392332433068e+09}}}",
		Target: VUnionDepth3_OptVStructDepth2_Set_Float64(VUnionDepth3_OptVStructDepth2_Set_Float64F6{&VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				0: struct{}{},
				1.2150244533707948e+08: struct{}{},
				3.028392332433068e+09:  struct{}{},
			},
		}}),
		SourceLabel: "VUnionDepth3_OptVStructDepth2_Set_Float64{F6: {F4: {0, 1.2150244533707948e+08, 3.028392332433068e+09}}}",
		Source: VUnionDepth3_OptVStructDepth2_Set_Float64(VUnionDepth3_OptVStructDepth2_Set_Float64F6{&VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				0: struct{}{},
				1.2150244533707948e+08: struct{}{},
				3.028392332433068e+09:  struct{}{},
			},
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VUnionDepth3_OptVStructDepth2_Set_Float64{F6: {F4: {0, 1.2150244533707948e+08, 3.028392332433068e+09}}}",
		Target: VUnionDepth3_OptVStructDepth2_Set_Float64(VUnionDepth3_OptVStructDepth2_Set_Float64F6{&VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				0: struct{}{},
				1.2150244533707948e+08: struct{}{},
				3.028392332433068e+09:  struct{}{},
			},
		}}),
		SourceLabel: "VUnionDepth3_All{F6: {F4: {0, 1.2150244533707948e+08, 3.028392332433068e+09}}}",
		Source: VUnionDepth3_All(VUnionDepth3_AllF6{&VStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				0: struct{}{},
				1.2150244533707948e+08: struct{}{},
				3.028392332433068e+09:  struct{}{},
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "?VStructDepth3_VArray1_Set_VEnumBcd(nil)",
		Target:      (*VStructDepth3_VArray1_Set_VEnumBcd)(nil),
		SourceLabel: "?VStructDepth3_VArray1_Set_VEnumBcd(nil)",
		Source:      (*VStructDepth3_VArray1_Set_VEnumBcd)(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "?VStructDepth3_VArray1_Set_VEnumBcd(nil)",
		Target:      (*VStructDepth3_VArray1_Set_VEnumBcd)(nil),
		SourceLabel: "?VStructEmpty(nil)",
		Source:      (*VStructEmpty)(nil),
	},
	{
		Label:       "NilAny",
		TargetLabel: "?VStructDepth3_VArray1_Set_VEnumBcd(nil)",
		Target:      (*VStructDepth3_VArray1_Set_VEnumBcd)(nil),
		SourceLabel: "any(nil)",
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "?VStructDepth3_VArray1_Set_VEnumBcd{F0: {{D}}}",
		Target: &VStructDepth3_VArray1_Set_VEnumBcd{
			F0: VArray1_Set_VEnumBcd{
				{
					VEnumBcdD: struct{}{},
				},
			},
		},
		SourceLabel: "?VStructDepth3_VArray1_Set_VEnumBcd{F0: {{D}}}",
		Source: &VStructDepth3_VArray1_Set_VEnumBcd{
			F0: VArray1_Set_VEnumBcd{
				{
					VEnumBcdD: struct{}{},
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "?VStructDepth3_VArray1_Set_VEnumBcd{F0: {{D}}}",
		Target: &VStructDepth3_VArray1_Set_VEnumBcd{
			F0: VArray1_Set_VEnumBcd{
				{
					VEnumBcdD: struct{}{},
				},
			},
		},
		SourceLabel: "VStructDepth1_Any{F0: VArray1_Set_VEnumBcd{{D}}}",
		Source: VStructDepth1_Any{
			F0: VArray1_Set_VEnumBcd{
				{
					VEnumBcdD: struct{}{},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VSelfCycle{}",
		Target:      VSelfCycle{},
		SourceLabel: "VSelfCycle{}",
		Source:      VSelfCycle{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VSelfCycle{}",
		Target:      VSelfCycle{},
		SourceLabel: "VMutualCycleA{}",
		Source:      VMutualCycleA{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VSelfCycle{}",
		Target:      VSelfCycle{},
		SourceLabel: "VMutualCycleB{}",
		Source:      VMutualCycleB{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VSelfCycle{Data: -123, Next: {Data: -123, Next: {Data: -123, Next: {Data: -123}}}}",
		Target: VSelfCycle{
			Data: -123,
			Next: &VSelfCycle{
				Data: -123,
				Next: &VSelfCycle{
					Data: -123,
					Next: &VSelfCycle{
						Data: -123,
					},
				},
			},
		},
		SourceLabel: "VSelfCycle{Data: -123, Next: {Data: -123, Next: {Data: -123, Next: {Data: -123}}}}",
		Source: VSelfCycle{
			Data: -123,
			Next: &VSelfCycle{
				Data: -123,
				Next: &VSelfCycle{
					Data: -123,
					Next: &VSelfCycle{
						Data: -123,
					},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VSelfCycle{Data: -3933048656192887342, Next: {Data: -1666879701135447875, Next: {}}}",
		Target: VSelfCycle{
			Data: -3933048656192887342,
			Next: &VSelfCycle{
				Data: -1666879701135447875,
				Next: &VSelfCycle{},
			},
		},
		SourceLabel: "VSelfCycle{Data: -3933048656192887342, Next: {Data: -1666879701135447875, Next: {}}}",
		Source: VSelfCycle{
			Data: -3933048656192887342,
			Next: &VSelfCycle{
				Data: -1666879701135447875,
				Next: &VSelfCycle{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VMutualCycleB{}",
		Target:      VMutualCycleB{},
		SourceLabel: "VMutualCycleB{}",
		Source:      VMutualCycleB{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VMutualCycleB{}",
		Target:      VMutualCycleB{},
		SourceLabel: "VSelfCycle{}",
		Source:      VSelfCycle{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VMutualCycleB{}",
		Target:      VMutualCycleB{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VMutualCycleB{Data: -123, A: {Data: -123, B: {Data: -123, A: {Data: -123}}}}",
		Target: VMutualCycleB{
			Data: -123,
			A: &VMutualCycleA{
				Data: -123,
				B: &VMutualCycleB{
					Data: -123,
					A: &VMutualCycleA{
						Data: -123,
					},
				},
			},
		},
		SourceLabel: "VMutualCycleB{Data: -123, A: {Data: -123, B: {Data: -123, A: {Data: -123}}}}",
		Source: VMutualCycleB{
			Data: -123,
			A: &VMutualCycleA{
				Data: -123,
				B: &VMutualCycleB{
					Data: -123,
					A: &VMutualCycleA{
						Data: -123,
					},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VMutualCycleB{Data: 3315306687289648358, A: {B: {Data: -830867813984030735}}}",
		Target: VMutualCycleB{
			Data: 3315306687289648358,
			A: &VMutualCycleA{
				B: &VMutualCycleB{
					Data: -830867813984030735,
				},
			},
		},
		SourceLabel: "VMutualCycleB{Data: 3315306687289648358, A: {B: {Data: -830867813984030735}}}",
		Source: VMutualCycleB{
			Data: 3315306687289648358,
			A: &VMutualCycleA{
				B: &VMutualCycleB{
					Data: -830867813984030735,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VMutualCycleA{}",
		Target:      VMutualCycleA{},
		SourceLabel: "VMutualCycleA{}",
		Source:      VMutualCycleA{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VMutualCycleA{}",
		Target:      VMutualCycleA{},
		SourceLabel: "VSelfCycle{}",
		Source:      VSelfCycle{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VMutualCycleA{}",
		Target:      VMutualCycleA{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VMutualCycleA{Data: -123, B: {Data: -123, A: {Data: -123, B: {Data: -123}}}}",
		Target: VMutualCycleA{
			Data: -123,
			B: &VMutualCycleB{
				Data: -123,
				A: &VMutualCycleA{
					Data: -123,
					B: &VMutualCycleB{
						Data: -123,
					},
				},
			},
		},
		SourceLabel: "VMutualCycleA{Data: -123, B: {Data: -123, A: {Data: -123, B: {Data: -123}}}}",
		Source: VMutualCycleA{
			Data: -123,
			B: &VMutualCycleB{
				Data: -123,
				A: &VMutualCycleA{
					Data: -123,
					B: &VMutualCycleB{
						Data: -123,
					},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VMutualCycleA{Data: -1454793165023012937, B: {}}",
		Target: VMutualCycleA{
			Data: -1454793165023012937,
			B:    &VMutualCycleB{},
		},
		SourceLabel: "VMutualCycleA{Data: -1454793165023012937, B: {}}",
		Source: VMutualCycleA{
			Data: -1454793165023012937,
			B:    &VMutualCycleB{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireBoolNBool(false)",
		Target:      VNativeWireBoolNBool(false),
		SourceLabel: "VWireBoolNBool(false)",
		Source:      VNativeWireBoolNBool(false),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireBoolNBool(false)",
		Target:      VNativeWireBoolNBool(false),
		SourceLabel: "VWireBoolNString(false)",
		Source:      VNativeWireBoolNString(""),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireBoolNBool(false)",
		Target:      VNativeWireBoolNBool(false),
		SourceLabel: "VWireBoolNStruct(false)",
		Source:      VNativeWireBoolNStruct{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireBoolNBool(true)",
		Target: func() VNativeWireBoolNBool {
			var native VNativeWireBoolNBool
			wire := VWireBoolNBool(true)
			if err := VWireBoolNBoolToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireBoolNBool(true)",
		Source: func() VNativeWireBoolNBool {
			var native VNativeWireBoolNBool
			wire := VWireBoolNBool(true)
			if err := VWireBoolNBoolToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Full",
		TargetLabel: "VWireBoolNBool(true)",
		Target: func() VNativeWireBoolNBool {
			var native VNativeWireBoolNBool
			wire := VWireBoolNBool(true)
			if err := VWireBoolNBoolToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireBoolNStruct(true)",
		Source: func() VNativeWireBoolNStruct {
			var native VNativeWireBoolNStruct
			wire := VWireBoolNStruct(true)
			if err := VWireBoolNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireBoolNString(false)",
		Target:      VNativeWireBoolNString(""),
		SourceLabel: "VWireBoolNString(false)",
		Source:      VNativeWireBoolNString(""),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireBoolNString(false)",
		Target:      VNativeWireBoolNString(""),
		SourceLabel: "VWireBoolNStruct(false)",
		Source:      VNativeWireBoolNStruct{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireBoolNString(false)",
		Target:      VNativeWireBoolNString(""),
		SourceLabel: "false",
		Source:      false,
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireBoolNString(true)",
		Target: func() VNativeWireBoolNString {
			var native VNativeWireBoolNString
			wire := VWireBoolNString(true)
			if err := VWireBoolNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireBoolNString(true)",
		Source: func() VNativeWireBoolNString {
			var native VNativeWireBoolNString
			wire := VWireBoolNString(true)
			if err := VWireBoolNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Full",
		TargetLabel: "VWireBoolNString(true)",
		Target: func() VNativeWireBoolNString {
			var native VNativeWireBoolNString
			wire := VWireBoolNString(true)
			if err := VWireBoolNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireBoolNBool(true)",
		Source: func() VNativeWireBoolNBool {
			var native VNativeWireBoolNBool
			wire := VWireBoolNBool(true)
			if err := VWireBoolNBoolToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireBoolNStruct(false)",
		Target:      VNativeWireBoolNStruct{},
		SourceLabel: "VWireBoolNStruct(false)",
		Source:      VNativeWireBoolNStruct{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireBoolNStruct(false)",
		Target:      VNativeWireBoolNStruct{},
		SourceLabel: "VWireBoolNString(false)",
		Source:      VNativeWireBoolNString(""),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireBoolNStruct(false)",
		Target:      VNativeWireBoolNStruct{},
		SourceLabel: "false",
		Source:      false,
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireBoolNStruct(true)",
		Target: func() VNativeWireBoolNStruct {
			var native VNativeWireBoolNStruct
			wire := VWireBoolNStruct(true)
			if err := VWireBoolNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireBoolNStruct(true)",
		Source: func() VNativeWireBoolNStruct {
			var native VNativeWireBoolNStruct
			wire := VWireBoolNStruct(true)
			if err := VWireBoolNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Full",
		TargetLabel: "VWireBoolNStruct(true)",
		Target: func() VNativeWireBoolNStruct {
			var native VNativeWireBoolNStruct
			wire := VWireBoolNStruct(true)
			if err := VWireBoolNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "true",
		Source:      true,
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireIntNInt(0)",
		Target:      VNativeWireIntNInt(0),
		SourceLabel: "VWireIntNInt(0)",
		Source:      VNativeWireIntNInt(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireIntNInt(0)",
		Target:      VNativeWireIntNInt(0),
		SourceLabel: "int64(0)",
		Source:      int64(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireIntNInt(0)",
		Target:      VNativeWireIntNInt(0),
		SourceLabel: "uint16(0)",
		Source:      uint16(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "VWireIntNInt(2147483647)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(2147483647)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNInt(2147483647)",
		Source: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(2147483647)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNInt(2147483647)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(2147483647)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNString(2147483647)",
		Source: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(2147483647)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNInt(2147483647)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(2147483647)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNStruct(2147483647)",
		Source: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(2147483647)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNInt(2147483647)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(2147483647)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VUint32(2147483647)",
		Source:      VUint32(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNInt(2147483647)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(2147483647)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VUint64(2147483647)",
		Source:      VUint64(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNInt(2147483647)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(2147483647)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt32(2147483647)",
		Source:      VInt32(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNInt(2147483647)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(2147483647)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt64(2147483647)",
		Source:      VInt64(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNInt(2147483647)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(2147483647)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VFloat64(2.147483647e+09)",
		Source:      VFloat64(2.147483647e+09),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNInt(2147483647)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(2147483647)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "uint64(2147483647)",
		Source:      uint64(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNInt(2147483647)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(2147483647)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "float64(2.147483647e+09)",
		Source:      float64(2.147483647e+09),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "VWireIntNInt(1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNInt(1)",
		Source: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNInt(1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNString(1)",
		Source: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNInt(1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNStruct(1)",
		Source: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNInt(1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VByte(1)",
		Source:      VByte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNInt(1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VUint16(1)",
		Source:      VUint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNInt(1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VUint32(1)",
		Source:      VUint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNInt(1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VUint64(1)",
		Source:      VUint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNInt(1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt8(1)",
		Source:      VInt8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNInt(1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt16(1)",
		Source:      VInt16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNInt(1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt32(1)",
		Source:      VInt32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNInt(1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt64(1)",
		Source:      VInt64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNInt(1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VFloat32(1)",
		Source:      VFloat32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNInt(1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VFloat64(1)",
		Source:      VFloat64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNInt(1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "uint64(1)",
		Source:      uint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNInt(1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "uint32(1)",
		Source:      uint32(1),
	},
	{
		IsCanonical: true,
		Label:       "-Max",
		TargetLabel: "VWireIntNInt(-2147483648)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-2147483648)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNInt(-2147483648)",
		Source: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-2147483648)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "-Max",
		TargetLabel: "VWireIntNInt(-2147483648)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-2147483648)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNString(-2147483648)",
		Source: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-2147483648)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "-Max",
		TargetLabel: "VWireIntNInt(-2147483648)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-2147483648)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNStruct(-2147483648)",
		Source: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-2147483648)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "-Max",
		TargetLabel: "VWireIntNInt(-2147483648)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-2147483648)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt32(-2147483648)",
		Source:      VInt32(-2147483648),
	},
	{
		Label:       "-Max",
		TargetLabel: "VWireIntNInt(-2147483648)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-2147483648)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt64(-2147483648)",
		Source:      VInt64(-2147483648),
	},
	{
		Label:       "-Max",
		TargetLabel: "VWireIntNInt(-2147483648)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-2147483648)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VFloat64(-2.147483648e+09)",
		Source:      VFloat64(-2.147483648e+09),
	},
	{
		Label:       "-Max",
		TargetLabel: "VWireIntNInt(-2147483648)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-2147483648)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "int64(-2147483648)",
		Source:      int64(-2147483648),
	},
	{
		Label:       "-Max",
		TargetLabel: "VWireIntNInt(-2147483648)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-2147483648)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "int32(-2147483648)",
		Source:      int32(-2147483648),
	},
	{
		IsCanonical: true,
		Label:       "-Min",
		TargetLabel: "VWireIntNInt(-1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNInt(-1)",
		Source: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNInt(-1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNString(-1)",
		Source: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNInt(-1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNStruct(-1)",
		Source: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNInt(-1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt8(-1)",
		Source:      VInt8(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNInt(-1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt16(-1)",
		Source:      VInt16(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNInt(-1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt32(-1)",
		Source:      VInt32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNInt(-1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt64(-1)",
		Source:      VInt64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNInt(-1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VFloat32(-1)",
		Source:      VFloat32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNInt(-1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VFloat64(-1)",
		Source:      VFloat64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNInt(-1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "int8(-1)",
		Source:      int8(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNInt(-1)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "int16(-1)",
		Source:      int16(-1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireIntNInt(-123)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-123)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNInt(-123)",
		Source: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-123)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Full",
		TargetLabel: "VWireIntNInt(-123)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-123)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "int8(-123)",
		Source:      int8(-123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VWireIntNInt(-456364020)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-456364020)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNInt(-456364020)",
		Source: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-456364020)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Random0",
		TargetLabel: "VWireIntNInt(-456364020)",
		Target: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-456364020)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNStruct(-456364020)",
		Source: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-456364020)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireIntNString(0)",
		Target:      VNativeWireIntNString(""),
		SourceLabel: "VWireIntNString(0)",
		Source:      VNativeWireIntNString(""),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireIntNString(0)",
		Target:      VNativeWireIntNString(""),
		SourceLabel: "int64(0)",
		Source:      int64(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireIntNString(0)",
		Target:      VNativeWireIntNString(""),
		SourceLabel: "VUint32(0)",
		Source:      VUint32(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "VWireIntNString(2147483647)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(2147483647)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNString(2147483647)",
		Source: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(2147483647)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNString(2147483647)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(2147483647)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNInt(2147483647)",
		Source: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(2147483647)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNString(2147483647)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(2147483647)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNStruct(2147483647)",
		Source: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(2147483647)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNString(2147483647)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(2147483647)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VUint32(2147483647)",
		Source:      VUint32(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNString(2147483647)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(2147483647)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VUint64(2147483647)",
		Source:      VUint64(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNString(2147483647)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(2147483647)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt32(2147483647)",
		Source:      VInt32(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNString(2147483647)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(2147483647)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt64(2147483647)",
		Source:      VInt64(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNString(2147483647)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(2147483647)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VFloat64(2.147483647e+09)",
		Source:      VFloat64(2.147483647e+09),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNString(2147483647)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(2147483647)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "int32(2147483647)",
		Source:      int32(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNString(2147483647)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(2147483647)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "float64(2.147483647e+09)",
		Source:      float64(2.147483647e+09),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "VWireIntNString(1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNString(1)",
		Source: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNString(1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNInt(1)",
		Source: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNString(1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNStruct(1)",
		Source: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNString(1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VByte(1)",
		Source:      VByte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNString(1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VUint16(1)",
		Source:      VUint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNString(1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VUint32(1)",
		Source:      VUint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNString(1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VUint64(1)",
		Source:      VUint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNString(1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt8(1)",
		Source:      VInt8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNString(1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt16(1)",
		Source:      VInt16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNString(1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt32(1)",
		Source:      VInt32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNString(1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt64(1)",
		Source:      VInt64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNString(1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VFloat32(1)",
		Source:      VFloat32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNString(1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VFloat64(1)",
		Source:      VFloat64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNString(1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "int64(1)",
		Source:      int64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNString(1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "int16(1)",
		Source:      int16(1),
	},
	{
		IsCanonical: true,
		Label:       "-Max",
		TargetLabel: "VWireIntNString(-2147483648)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-2147483648)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNString(-2147483648)",
		Source: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-2147483648)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "-Max",
		TargetLabel: "VWireIntNString(-2147483648)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-2147483648)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNInt(-2147483648)",
		Source: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-2147483648)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "-Max",
		TargetLabel: "VWireIntNString(-2147483648)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-2147483648)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNStruct(-2147483648)",
		Source: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-2147483648)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "-Max",
		TargetLabel: "VWireIntNString(-2147483648)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-2147483648)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt32(-2147483648)",
		Source:      VInt32(-2147483648),
	},
	{
		Label:       "-Max",
		TargetLabel: "VWireIntNString(-2147483648)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-2147483648)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt64(-2147483648)",
		Source:      VInt64(-2147483648),
	},
	{
		Label:       "-Max",
		TargetLabel: "VWireIntNString(-2147483648)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-2147483648)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VFloat64(-2.147483648e+09)",
		Source:      VFloat64(-2.147483648e+09),
	},
	{
		Label:       "-Max",
		TargetLabel: "VWireIntNString(-2147483648)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-2147483648)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "int64(-2147483648)",
		Source:      int64(-2147483648),
	},
	{
		Label:       "-Max",
		TargetLabel: "VWireIntNString(-2147483648)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-2147483648)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "int32(-2147483648)",
		Source:      int32(-2147483648),
	},
	{
		IsCanonical: true,
		Label:       "-Min",
		TargetLabel: "VWireIntNString(-1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNString(-1)",
		Source: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNString(-1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNInt(-1)",
		Source: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNString(-1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNStruct(-1)",
		Source: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNString(-1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt8(-1)",
		Source:      VInt8(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNString(-1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt16(-1)",
		Source:      VInt16(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNString(-1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt32(-1)",
		Source:      VInt32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNString(-1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt64(-1)",
		Source:      VInt64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNString(-1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VFloat32(-1)",
		Source:      VFloat32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNString(-1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VFloat64(-1)",
		Source:      VFloat64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNString(-1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "int8(-1)",
		Source:      int8(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNString(-1)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "int64(-1)",
		Source:      int64(-1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireIntNString(-123)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-123)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNString(-123)",
		Source: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-123)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Full",
		TargetLabel: "VWireIntNString(-123)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-123)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNStruct(-123)",
		Source: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-123)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VWireIntNString(891620478)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(891620478)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNString(891620478)",
		Source: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(891620478)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Random0",
		TargetLabel: "VWireIntNString(891620478)",
		Target: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(891620478)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNInt(891620478)",
		Source: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(891620478)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireIntNStruct(0)",
		Target:      VNativeWireIntNStruct{},
		SourceLabel: "VWireIntNStruct(0)",
		Source:      VNativeWireIntNStruct{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireIntNStruct(0)",
		Target:      VNativeWireIntNStruct{},
		SourceLabel: "float32(0)",
		Source:      float32(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireIntNStruct(0)",
		Target:      VNativeWireIntNStruct{},
		SourceLabel: "VUint64(0)",
		Source:      VUint64(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "VWireIntNStruct(2147483647)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(2147483647)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNStruct(2147483647)",
		Source: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(2147483647)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNStruct(2147483647)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(2147483647)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNInt(2147483647)",
		Source: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(2147483647)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNStruct(2147483647)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(2147483647)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNString(2147483647)",
		Source: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(2147483647)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNStruct(2147483647)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(2147483647)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VUint32(2147483647)",
		Source:      VUint32(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNStruct(2147483647)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(2147483647)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VUint64(2147483647)",
		Source:      VUint64(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNStruct(2147483647)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(2147483647)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt32(2147483647)",
		Source:      VInt32(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNStruct(2147483647)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(2147483647)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt64(2147483647)",
		Source:      VInt64(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNStruct(2147483647)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(2147483647)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VFloat64(2.147483647e+09)",
		Source:      VFloat64(2.147483647e+09),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNStruct(2147483647)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(2147483647)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "uint32(2147483647)",
		Source:      uint32(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "VWireIntNStruct(2147483647)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(2147483647)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "int64(2147483647)",
		Source:      int64(2147483647),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "VWireIntNStruct(1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNStruct(1)",
		Source: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNStruct(1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNInt(1)",
		Source: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNStruct(1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNString(1)",
		Source: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNStruct(1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VByte(1)",
		Source:      VByte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNStruct(1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VUint16(1)",
		Source:      VUint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNStruct(1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VUint32(1)",
		Source:      VUint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNStruct(1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VUint64(1)",
		Source:      VUint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNStruct(1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt8(1)",
		Source:      VInt8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNStruct(1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt16(1)",
		Source:      VInt16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNStruct(1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt32(1)",
		Source:      VInt32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNStruct(1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt64(1)",
		Source:      VInt64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNStruct(1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VFloat32(1)",
		Source:      VFloat32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNStruct(1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VFloat64(1)",
		Source:      VFloat64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNStruct(1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "uint16(1)",
		Source:      uint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "VWireIntNStruct(1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "int16(1)",
		Source:      int16(1),
	},
	{
		IsCanonical: true,
		Label:       "-Max",
		TargetLabel: "VWireIntNStruct(-2147483648)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-2147483648)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNStruct(-2147483648)",
		Source: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-2147483648)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "-Max",
		TargetLabel: "VWireIntNStruct(-2147483648)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-2147483648)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNInt(-2147483648)",
		Source: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-2147483648)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "-Max",
		TargetLabel: "VWireIntNStruct(-2147483648)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-2147483648)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNString(-2147483648)",
		Source: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-2147483648)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "-Max",
		TargetLabel: "VWireIntNStruct(-2147483648)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-2147483648)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt32(-2147483648)",
		Source:      VInt32(-2147483648),
	},
	{
		Label:       "-Max",
		TargetLabel: "VWireIntNStruct(-2147483648)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-2147483648)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt64(-2147483648)",
		Source:      VInt64(-2147483648),
	},
	{
		Label:       "-Max",
		TargetLabel: "VWireIntNStruct(-2147483648)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-2147483648)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VFloat64(-2.147483648e+09)",
		Source:      VFloat64(-2.147483648e+09),
	},
	{
		Label:       "-Max",
		TargetLabel: "VWireIntNStruct(-2147483648)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-2147483648)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "int32(-2147483648)",
		Source:      int32(-2147483648),
	},
	{
		Label:       "-Max",
		TargetLabel: "VWireIntNStruct(-2147483648)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-2147483648)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "float64(-2.147483648e+09)",
		Source:      float64(-2.147483648e+09),
	},
	{
		IsCanonical: true,
		Label:       "-Min",
		TargetLabel: "VWireIntNStruct(-1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNStruct(-1)",
		Source: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNStruct(-1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNInt(-1)",
		Source: func() VNativeWireIntNInt {
			var native VNativeWireIntNInt
			wire := VWireIntNInt(-1)
			if err := VWireIntNIntToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNStruct(-1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNString(-1)",
		Source: func() VNativeWireIntNString {
			var native VNativeWireIntNString
			wire := VWireIntNString(-1)
			if err := VWireIntNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNStruct(-1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt8(-1)",
		Source:      VInt8(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNStruct(-1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt16(-1)",
		Source:      VInt16(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNStruct(-1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt32(-1)",
		Source:      VInt32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNStruct(-1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VInt64(-1)",
		Source:      VInt64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNStruct(-1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VFloat32(-1)",
		Source:      VFloat32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNStruct(-1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VFloat64(-1)",
		Source:      VFloat64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNStruct(-1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "int16(-1)",
		Source:      int16(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "VWireIntNStruct(-1)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-1)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "float32(-1)",
		Source:      float32(-1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireIntNStruct(-123)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-123)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNStruct(-123)",
		Source: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-123)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Full",
		TargetLabel: "VWireIntNStruct(-123)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-123)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VFloat64(-123)",
		Source:      VFloat64(-123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VWireIntNStruct(-472003459)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-472003459)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireIntNStruct(-472003459)",
		Source: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-472003459)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Random0",
		TargetLabel: "VWireIntNStruct(-472003459)",
		Target: func() VNativeWireIntNStruct {
			var native VNativeWireIntNStruct
			wire := VWireIntNStruct(-472003459)
			if err := VWireIntNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "int64(-472003459)",
		Source:      int64(-472003459),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireStringNString(\"\")",
		Target:      VNativeWireStringNString(""),
		SourceLabel: "VWireStringNString(\"\")",
		Source:      VNativeWireStringNString(""),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireStringNString(\"\")",
		Target:      VNativeWireStringNString(""),
		SourceLabel: "\"\"",
		Source:      "",
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireStringNString(\"\")",
		Target:      VNativeWireStringNString(""),
		SourceLabel: "VWireStringNStruct(\"\")",
		Source:      VNativeWireStringNStruct{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireStringNString(\"abcdeΔΘΠΣΦ王普澤世界\")",
		Target: func() VNativeWireStringNString {
			var native VNativeWireStringNString
			wire := VWireStringNString("abcdeΔΘΠΣΦ王普澤世界")
			if err := VWireStringNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireStringNString(\"abcdeΔΘΠΣΦ王普澤世界\")",
		Source: func() VNativeWireStringNString {
			var native VNativeWireStringNString
			wire := VWireStringNString("abcdeΔΘΠΣΦ王普澤世界")
			if err := VWireStringNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Full",
		TargetLabel: "VWireStringNString(\"abcdeΔΘΠΣΦ王普澤世界\")",
		Target: func() VNativeWireStringNString {
			var native VNativeWireStringNString
			wire := VWireStringNString("abcdeΔΘΠΣΦ王普澤世界")
			if err := VWireStringNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VString(\"abcdeΔΘΠΣΦ王普澤世界\")",
		Source:      VString("abcdeΔΘΠΣΦ王普澤世界"),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VWireStringNString(\"cde\")",
		Target: func() VNativeWireStringNString {
			var native VNativeWireStringNString
			wire := VWireStringNString("cde")
			if err := VWireStringNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireStringNString(\"cde\")",
		Source: func() VNativeWireStringNString {
			var native VNativeWireStringNString
			wire := VWireStringNString("cde")
			if err := VWireStringNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Random0",
		TargetLabel: "VWireStringNString(\"cde\")",
		Target: func() VNativeWireStringNString {
			var native VNativeWireStringNString
			wire := VWireStringNString("cde")
			if err := VWireStringNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "\"cde\"",
		Source:      "cde",
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireStringNStruct(\"\")",
		Target:      VNativeWireStringNStruct{},
		SourceLabel: "VWireStringNStruct(\"\")",
		Source:      VNativeWireStringNStruct{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireStringNStruct(\"\")",
		Target:      VNativeWireStringNStruct{},
		SourceLabel: "VString(\"\")",
		Source:      VString(""),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireStringNStruct(\"\")",
		Target:      VNativeWireStringNStruct{},
		SourceLabel: "VWireStringNString(\"\")",
		Source:      VNativeWireStringNString(""),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireStringNStruct(\"abcdeΔΘΠΣΦ王普澤世界\")",
		Target: func() VNativeWireStringNStruct {
			var native VNativeWireStringNStruct
			wire := VWireStringNStruct("abcdeΔΘΠΣΦ王普澤世界")
			if err := VWireStringNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireStringNStruct(\"abcdeΔΘΠΣΦ王普澤世界\")",
		Source: func() VNativeWireStringNStruct {
			var native VNativeWireStringNStruct
			wire := VWireStringNStruct("abcdeΔΘΠΣΦ王普澤世界")
			if err := VWireStringNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Full",
		TargetLabel: "VWireStringNStruct(\"abcdeΔΘΠΣΦ王普澤世界\")",
		Target: func() VNativeWireStringNStruct {
			var native VNativeWireStringNStruct
			wire := VWireStringNStruct("abcdeΔΘΠΣΦ王普澤世界")
			if err := VWireStringNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "\"abcdeΔΘΠΣΦ王普澤世界\"",
		Source:      "abcdeΔΘΠΣΦ王普澤世界",
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VWireStringNStruct(\"abcdeΔΘΠΣΦ王普澤\")",
		Target: func() VNativeWireStringNStruct {
			var native VNativeWireStringNStruct
			wire := VWireStringNStruct("abcdeΔΘΠΣΦ王普澤")
			if err := VWireStringNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireStringNStruct(\"abcdeΔΘΠΣΦ王普澤\")",
		Source: func() VNativeWireStringNStruct {
			var native VNativeWireStringNStruct
			wire := VWireStringNStruct("abcdeΔΘΠΣΦ王普澤")
			if err := VWireStringNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Random0",
		TargetLabel: "VWireStringNStruct(\"abcdeΔΘΠΣΦ王普澤\")",
		Target: func() VNativeWireStringNStruct {
			var native VNativeWireStringNStruct
			wire := VWireStringNStruct("abcdeΔΘΠΣΦ王普澤")
			if err := VWireStringNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "\"abcdeΔΘΠΣΦ王普澤\"",
		Source:      "abcdeΔΘΠΣΦ王普澤",
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireArrayNString{}",
		Target:      VNativeWireArrayNString(""),
		SourceLabel: "VWireArrayNString{}",
		Source:      VNativeWireArrayNString(""),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireArrayNString{}",
		Target:      VNativeWireArrayNString(""),
		SourceLabel: "[]string{\"\"}",
		Source: []string{
			"",
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireArrayNString{}",
		Target:      VNativeWireArrayNString(""),
		SourceLabel: "VWireListNString{\"\"}",
		Source: func() VNativeWireListNString {
			var native VNativeWireListNString
			wire := VWireListNString{
				"",
			}
			if err := VWireListNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireArrayNString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireArrayNString {
			var native VNativeWireArrayNString
			wire := VWireArrayNString{
				"abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireArrayNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireArrayNString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: func() VNativeWireArrayNString {
			var native VNativeWireArrayNString
			wire := VWireArrayNString{
				"abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireArrayNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Full",
		TargetLabel: "VWireArrayNString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireArrayNString {
			var native VNativeWireArrayNString
			wire := VWireArrayNString{
				"abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireArrayNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VList_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VList_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VWireArrayNString{\"a\"}",
		Target: func() VNativeWireArrayNString {
			var native VNativeWireArrayNString
			wire := VWireArrayNString{
				"a",
			}
			if err := VWireArrayNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireArrayNString{\"a\"}",
		Source: func() VNativeWireArrayNString {
			var native VNativeWireArrayNString
			wire := VWireArrayNString{
				"a",
			}
			if err := VWireArrayNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Random0",
		TargetLabel: "VWireArrayNString{\"a\"}",
		Target: func() VNativeWireArrayNString {
			var native VNativeWireArrayNString
			wire := VWireArrayNString{
				"a",
			}
			if err := VWireArrayNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VList_String{\"a\"}",
		Source: VList_String{
			"a",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireArrayNStruct{}",
		Target:      VNativeWireArrayNStruct{},
		SourceLabel: "VWireArrayNStruct{}",
		Source:      VNativeWireArrayNStruct{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireArrayNStruct{}",
		Target:      VNativeWireArrayNStruct{},
		SourceLabel: "[]string{\"\"}",
		Source: []string{
			"",
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireArrayNStruct{}",
		Target:      VNativeWireArrayNStruct{},
		SourceLabel: "[]VString{\"\"}",
		Source: []VString{
			"",
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireArrayNStruct{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireArrayNStruct {
			var native VNativeWireArrayNStruct
			wire := VWireArrayNStruct{
				"abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireArrayNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireArrayNStruct{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: func() VNativeWireArrayNStruct {
			var native VNativeWireArrayNStruct
			wire := VWireArrayNStruct{
				"abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireArrayNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Full",
		TargetLabel: "VWireArrayNStruct{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireArrayNStruct {
			var native VNativeWireArrayNStruct
			wire := VWireArrayNStruct{
				"abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireArrayNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VList_Any{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VList_Any{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VWireArrayNStruct{\"cdeΔΘΠΣ\"}",
		Target: func() VNativeWireArrayNStruct {
			var native VNativeWireArrayNStruct
			wire := VWireArrayNStruct{
				"cdeΔΘΠΣ",
			}
			if err := VWireArrayNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireArrayNStruct{\"cdeΔΘΠΣ\"}",
		Source: func() VNativeWireArrayNStruct {
			var native VNativeWireArrayNStruct
			wire := VWireArrayNStruct{
				"cdeΔΘΠΣ",
			}
			if err := VWireArrayNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Random0",
		TargetLabel: "VWireArrayNStruct{\"cdeΔΘΠΣ\"}",
		Target: func() VNativeWireArrayNStruct {
			var native VNativeWireArrayNStruct
			wire := VWireArrayNStruct{
				"cdeΔΘΠΣ",
			}
			if err := VWireArrayNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireListNStruct{\"cdeΔΘΠΣ\"}",
		Source: func() VNativeWireListNStruct {
			var native VNativeWireListNStruct
			wire := VWireListNStruct{
				"cdeΔΘΠΣ",
			}
			if err := VWireListNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireListNString{}",
		Target:      VNativeWireListNString(""),
		SourceLabel: "VWireListNString{}",
		Source:      VNativeWireListNString(""),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireListNString{}",
		Target:      VNativeWireListNString(""),
		SourceLabel: "[]VString{}",
		Source:      []VString(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireListNString{}",
		Target:      VNativeWireListNString(""),
		SourceLabel: "[]VEnumAbc{}",
		Source:      []VEnumAbc(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireListNString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireListNString {
			var native VNativeWireListNString
			wire := VWireListNString{
				"abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireListNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireListNString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: func() VNativeWireListNString {
			var native VNativeWireListNString
			wire := VWireListNString{
				"abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireListNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Full",
		TargetLabel: "VWireListNString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireListNString {
			var native VNativeWireListNString
			wire := VWireListNString{
				"abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireListNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VArray1_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VArray1_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VWireListNString{\"de\"}",
		Target: func() VNativeWireListNString {
			var native VNativeWireListNString
			wire := VWireListNString{
				"de",
			}
			if err := VWireListNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireListNString{\"de\"}",
		Source: func() VNativeWireListNString {
			var native VNativeWireListNString
			wire := VWireListNString{
				"de",
			}
			if err := VWireListNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Random0",
		TargetLabel: "VWireListNString{\"de\"}",
		Target: func() VNativeWireListNString {
			var native VNativeWireListNString
			wire := VWireListNString{
				"de",
			}
			if err := VWireListNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireListNStruct{\"de\"}",
		Source: func() VNativeWireListNStruct {
			var native VNativeWireListNStruct
			wire := VWireListNStruct{
				"de",
			}
			if err := VWireListNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireListNStruct{}",
		Target:      VNativeWireListNStruct{},
		SourceLabel: "VWireListNStruct{}",
		Source:      VNativeWireListNStruct{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireListNStruct{}",
		Target:      VNativeWireListNStruct{},
		SourceLabel: "VList_VString{}",
		Source:      VList_VString(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireListNStruct{}",
		Target:      VNativeWireListNStruct{},
		SourceLabel: "[]VEnumAbc{}",
		Source:      []VEnumAbc(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireListNStruct{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireListNStruct {
			var native VNativeWireListNStruct
			wire := VWireListNStruct{
				"abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireListNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireListNStruct{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: func() VNativeWireListNStruct {
			var native VNativeWireListNStruct
			wire := VWireListNStruct{
				"abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireListNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Full",
		TargetLabel: "VWireListNStruct{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireListNStruct {
			var native VNativeWireListNStruct
			wire := VWireListNStruct{
				"abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireListNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireArrayNString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: func() VNativeWireArrayNString {
			var native VNativeWireArrayNString
			wire := VWireArrayNString{
				"abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireArrayNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VWireListNStruct{\"deΔΘΠΣΦ王普\", \"澤世\", \"bcdeΔΘΠΣΦ王\"}",
		Target: func() VNativeWireListNStruct {
			var native VNativeWireListNStruct
			wire := VWireListNStruct{
				"deΔΘΠΣΦ王普",
				"澤世",
				"bcdeΔΘΠΣΦ王",
			}
			if err := VWireListNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireListNStruct{\"deΔΘΠΣΦ王普\", \"澤世\", \"bcdeΔΘΠΣΦ王\"}",
		Source: func() VNativeWireListNStruct {
			var native VNativeWireListNStruct
			wire := VWireListNStruct{
				"deΔΘΠΣΦ王普",
				"澤世",
				"bcdeΔΘΠΣΦ王",
			}
			if err := VWireListNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Random0",
		TargetLabel: "VWireListNStruct{\"deΔΘΠΣΦ王普\", \"澤世\", \"bcdeΔΘΠΣΦ王\"}",
		Target: func() VNativeWireListNStruct {
			var native VNativeWireListNStruct
			wire := VWireListNStruct{
				"deΔΘΠΣΦ王普",
				"澤世",
				"bcdeΔΘΠΣΦ王",
			}
			if err := VWireListNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "[]any{\"deΔΘΠΣΦ王普\", \"澤世\", \"bcdeΔΘΠΣΦ王\"}",
		Source: []interface{}{
			"deΔΘΠΣΦ王普",
			"澤世",
			"bcdeΔΘΠΣΦ王",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireStructNString{}",
		Target:      VNativeWireStructNString(""),
		SourceLabel: "VWireStructNString{}",
		Source:      VNativeWireStructNString(""),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireStructNString{}",
		Target:      VNativeWireStructNString(""),
		SourceLabel: "VWireStructNArray{}",
		Source:      VNativeWireStructNArray{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireStructNString{}",
		Target:      VNativeWireStructNString(""),
		SourceLabel: "VWireStructNPointer{}",
		Source:      VWireStructNPointer{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireStructNString{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireStructNString {
			var native VNativeWireStructNString
			wire := VWireStructNString{
				X: "abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireStructNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireStructNString{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: func() VNativeWireStructNString {
			var native VNativeWireStructNString
			wire := VWireStructNString{
				X: "abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireStructNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Full",
		TargetLabel: "VWireStructNString{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireStructNString {
			var native VNativeWireStructNString
			wire := VWireStructNString{
				X: "abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireStructNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireStructNIface{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VWireStructNIface{
			X: "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VWireStructNString{X: \"ΘΠΣΦ\"}",
		Target: func() VNativeWireStructNString {
			var native VNativeWireStructNString
			wire := VWireStructNString{
				X: "ΘΠΣΦ",
			}
			if err := VWireStructNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireStructNString{X: \"ΘΠΣΦ\"}",
		Source: func() VNativeWireStructNString {
			var native VNativeWireStructNString
			wire := VWireStructNString{
				X: "ΘΠΣΦ",
			}
			if err := VWireStructNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Random0",
		TargetLabel: "VWireStructNString{X: \"ΘΠΣΦ\"}",
		Target: func() VNativeWireStructNString {
			var native VNativeWireStructNString
			wire := VWireStructNString{
				X: "ΘΠΣΦ",
			}
			if err := VWireStructNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireStructNIface{X: \"ΘΠΣΦ\"}",
		Source: VWireStructNIface{
			X: "ΘΠΣΦ",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireStructNStruct{}",
		Target:      VNativeWireStructNStruct{},
		SourceLabel: "VWireStructNStruct{}",
		Source:      VNativeWireStructNStruct{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireStructNStruct{}",
		Target:      VNativeWireStructNStruct{},
		SourceLabel: "VWireStructNIface{}",
		Source:      VWireStructNIface{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireStructNStruct{}",
		Target:      VNativeWireStructNStruct{},
		SourceLabel: "VWireStructNString{}",
		Source:      VNativeWireStructNString(""),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireStructNStruct{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireStructNStruct {
			var native VNativeWireStructNStruct
			wire := VWireStructNStruct{
				X: "abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireStructNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireStructNStruct{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: func() VNativeWireStructNStruct {
			var native VNativeWireStructNStruct
			wire := VWireStructNStruct{
				X: "abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireStructNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Full",
		TargetLabel: "VWireStructNStruct{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireStructNStruct {
			var native VNativeWireStructNStruct
			wire := VWireStructNStruct{
				X: "abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireStructNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireStructNIface{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VWireStructNIface{
			X: "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VWireStructNStruct{X: \"Φ王普澤\"}",
		Target: func() VNativeWireStructNStruct {
			var native VNativeWireStructNStruct
			wire := VWireStructNStruct{
				X: "Φ王普澤",
			}
			if err := VWireStructNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireStructNStruct{X: \"Φ王普澤\"}",
		Source: func() VNativeWireStructNStruct {
			var native VNativeWireStructNStruct
			wire := VWireStructNStruct{
				X: "Φ王普澤",
			}
			if err := VWireStructNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Random0",
		TargetLabel: "VWireStructNStruct{X: \"Φ王普澤\"}",
		Target: func() VNativeWireStructNStruct {
			var native VNativeWireStructNStruct
			wire := VWireStructNStruct{
				X: "Φ王普澤",
			}
			if err := VWireStructNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireStructNPointer{X: \"Φ王普澤\"}",
		Source: VWireStructNPointer{
			X: "Φ王普澤",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireStructNArray{}",
		Target:      VNativeWireStructNArray{},
		SourceLabel: "VWireStructNArray{}",
		Source:      VNativeWireStructNArray{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireStructNArray{}",
		Target:      VNativeWireStructNArray{},
		SourceLabel: "VWireStructNIface{}",
		Source:      VWireStructNIface{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireStructNArray{}",
		Target:      VNativeWireStructNArray{},
		SourceLabel: "VWireStructNPointer{}",
		Source:      VWireStructNPointer{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireStructNArray{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireStructNArray {
			var native VNativeWireStructNArray
			wire := VWireStructNArray{
				X: "abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireStructNArrayToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireStructNArray{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: func() VNativeWireStructNArray {
			var native VNativeWireStructNArray
			wire := VWireStructNArray{
				X: "abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireStructNArrayToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Full",
		TargetLabel: "VWireStructNArray{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireStructNArray {
			var native VNativeWireStructNArray
			wire := VWireStructNArray{
				X: "abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireStructNArrayToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireStructNSlice{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: func() VNativeWireStructNSlice {
			var native VNativeWireStructNSlice
			wire := VWireStructNSlice{
				X: "abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireStructNSliceToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VWireStructNArray{X: \"abcdeΔ\"}",
		Target: func() VNativeWireStructNArray {
			var native VNativeWireStructNArray
			wire := VWireStructNArray{
				X: "abcdeΔ",
			}
			if err := VWireStructNArrayToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireStructNArray{X: \"abcdeΔ\"}",
		Source: func() VNativeWireStructNArray {
			var native VNativeWireStructNArray
			wire := VWireStructNArray{
				X: "abcdeΔ",
			}
			if err := VWireStructNArrayToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Random0",
		TargetLabel: "VWireStructNArray{X: \"abcdeΔ\"}",
		Target: func() VNativeWireStructNArray {
			var native VNativeWireStructNArray
			wire := VWireStructNArray{
				X: "abcdeΔ",
			}
			if err := VWireStructNArrayToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireStructNStruct{X: \"abcdeΔ\"}",
		Source: func() VNativeWireStructNStruct {
			var native VNativeWireStructNStruct
			wire := VWireStructNStruct{
				X: "abcdeΔ",
			}
			if err := VWireStructNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireStructNSlice{}",
		Target:      VNativeWireStructNSlice(nil),
		SourceLabel: "VWireStructNSlice{}",
		Source:      VNativeWireStructNSlice(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireStructNSlice{}",
		Target:      VNativeWireStructNSlice(nil),
		SourceLabel: "VWireStructNString{}",
		Source:      VNativeWireStructNString(""),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireStructNSlice{}",
		Target:      VNativeWireStructNSlice(nil),
		SourceLabel: "VWireStructNArray{}",
		Source:      VNativeWireStructNArray{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireStructNSlice{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireStructNSlice {
			var native VNativeWireStructNSlice
			wire := VWireStructNSlice{
				X: "abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireStructNSliceToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireStructNSlice{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: func() VNativeWireStructNSlice {
			var native VNativeWireStructNSlice
			wire := VWireStructNSlice{
				X: "abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireStructNSliceToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Full",
		TargetLabel: "VWireStructNSlice{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireStructNSlice {
			var native VNativeWireStructNSlice
			wire := VWireStructNSlice{
				X: "abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireStructNSliceToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireStructNPointer{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VWireStructNPointer{
			X: "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VWireStructNSlice{X: \"ΣΦ王普\"}",
		Target: func() VNativeWireStructNSlice {
			var native VNativeWireStructNSlice
			wire := VWireStructNSlice{
				X: "ΣΦ王普",
			}
			if err := VWireStructNSliceToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireStructNSlice{X: \"ΣΦ王普\"}",
		Source: func() VNativeWireStructNSlice {
			var native VNativeWireStructNSlice
			wire := VWireStructNSlice{
				X: "ΣΦ王普",
			}
			if err := VWireStructNSliceToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Random0",
		TargetLabel: "VWireStructNSlice{X: \"ΣΦ王普\"}",
		Target: func() VNativeWireStructNSlice {
			var native VNativeWireStructNSlice
			wire := VWireStructNSlice{
				X: "ΣΦ王普",
			}
			if err := VWireStructNSliceToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireStructNStruct{X: \"ΣΦ王普\"}",
		Source: func() VNativeWireStructNStruct {
			var native VNativeWireStructNStruct
			wire := VWireStructNStruct{
				X: "ΣΦ王普",
			}
			if err := VWireStructNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireStructNPointer{}",
		Target:      VWireStructNPointer{},
		SourceLabel: "VWireStructNPointer{}",
		Source:      VWireStructNPointer{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireStructNPointer{}",
		Target:      VWireStructNPointer{},
		SourceLabel: "VWireStructNStruct{}",
		Source:      VNativeWireStructNStruct{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireStructNPointer{}",
		Target:      VWireStructNPointer{},
		SourceLabel: "VWireStructNIface{}",
		Source:      VWireStructNIface{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireStructNPointer{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VWireStructNPointer{
			X: "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "VWireStructNPointer{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VWireStructNPointer{
			X: "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VWireStructNPointer{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VWireStructNPointer{
			X: "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "VWireStructNIface{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VWireStructNIface{
			X: "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VWireStructNPointer{X: \"世\"}",
		Target: VWireStructNPointer{
			X: "世",
		},
		SourceLabel: "VWireStructNPointer{X: \"世\"}",
		Source: VWireStructNPointer{
			X: "世",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VWireStructNPointer{X: \"世\"}",
		Target: VWireStructNPointer{
			X: "世",
		},
		SourceLabel: "VWireStructNArray{X: \"世\"}",
		Source: func() VNativeWireStructNArray {
			var native VNativeWireStructNArray
			wire := VWireStructNArray{
				X: "世",
			}
			if err := VWireStructNArrayToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireStructNIface{}",
		Target:      VWireStructNIface{},
		SourceLabel: "VWireStructNIface{}",
		Source:      VWireStructNIface{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireStructNIface{}",
		Target:      VWireStructNIface{},
		SourceLabel: "VWireStructNPointer{}",
		Source:      VWireStructNPointer{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireStructNIface{}",
		Target:      VWireStructNIface{},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireStructNIface{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VWireStructNIface{
			X: "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "VWireStructNIface{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: VWireStructNIface{
			X: "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "VWireStructNIface{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: VWireStructNIface{
			X: "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "VWireStructNStruct{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: func() VNativeWireStructNStruct {
			var native VNativeWireStructNStruct
			wire := VWireStructNStruct{
				X: "abcdeΔΘΠΣΦ王普澤世界",
			}
			if err := VWireStructNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VWireStructNIface{X: \"cde\"}",
		Target: VWireStructNIface{
			X: "cde",
		},
		SourceLabel: "VWireStructNIface{X: \"cde\"}",
		Source: VWireStructNIface{
			X: "cde",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "VWireStructNIface{X: \"cde\"}",
		Target: VWireStructNIface{
			X: "cde",
		},
		SourceLabel: "VWireStructNStruct{X: \"cde\"}",
		Source: func() VNativeWireStructNStruct {
			var native VNativeWireStructNStruct
			wire := VWireStructNStruct{
				X: "cde",
			}
			if err := VWireStructNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireUnionNString{X: \"\"}",
		Target:      VNativeWireUnionNString(""),
		SourceLabel: "VWireUnionNString{X: \"\"}",
		Source:      VNativeWireUnionNString(""),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireUnionNString{X: \"\"}",
		Target:      VNativeWireUnionNString(""),
		SourceLabel: "VWireUnionNArray{X: \"\"}",
		Source:      VNativeWireUnionNArray{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireUnionNString{X: \"\"}",
		Target:      VNativeWireUnionNString(""),
		SourceLabel: "VWireUnionNSlice{X: \"\"}",
		Source:      VNativeWireUnionNSlice(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireUnionNString{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireUnionNString {
			var native VNativeWireUnionNString
			wire := VWireUnionNString(VWireUnionNStringX{"abcdeΔΘΠΣΦ王普澤世界"})
			if err := VWireUnionNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireUnionNString{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: func() VNativeWireUnionNString {
			var native VNativeWireUnionNString
			wire := VWireUnionNString(VWireUnionNStringX{"abcdeΔΘΠΣΦ王普澤世界"})
			if err := VWireUnionNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Full",
		TargetLabel: "VWireUnionNString{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireUnionNString {
			var native VNativeWireUnionNString
			wire := VWireUnionNString(VWireUnionNStringX{"abcdeΔΘΠΣΦ王普澤世界"})
			if err := VWireUnionNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireUnionNSlice{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: func() VNativeWireUnionNSlice {
			var native VNativeWireUnionNSlice
			wire := VWireUnionNSlice(VWireUnionNSliceX{"abcdeΔΘΠΣΦ王普澤世界"})
			if err := VWireUnionNSliceToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VWireUnionNString{X: \"abcdeΔ\"}",
		Target: func() VNativeWireUnionNString {
			var native VNativeWireUnionNString
			wire := VWireUnionNString(VWireUnionNStringX{"abcdeΔ"})
			if err := VWireUnionNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireUnionNString{X: \"abcdeΔ\"}",
		Source: func() VNativeWireUnionNString {
			var native VNativeWireUnionNString
			wire := VWireUnionNString(VWireUnionNStringX{"abcdeΔ"})
			if err := VWireUnionNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Random0",
		TargetLabel: "VWireUnionNString{X: \"abcdeΔ\"}",
		Target: func() VNativeWireUnionNString {
			var native VNativeWireUnionNString
			wire := VWireUnionNString(VWireUnionNStringX{"abcdeΔ"})
			if err := VWireUnionNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireUnionNIface{X: \"abcdeΔ\"}",
		Source:      VWireUnionNIface(VWireUnionNIfaceX{"abcdeΔ"}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireUnionNStruct{X: \"\"}",
		Target:      VNativeWireUnionNStruct{},
		SourceLabel: "VWireUnionNStruct{X: \"\"}",
		Source:      VNativeWireUnionNStruct{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireUnionNStruct{X: \"\"}",
		Target:      VNativeWireUnionNStruct{},
		SourceLabel: "VWireUnionNString{X: \"\"}",
		Source:      VNativeWireUnionNString(""),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireUnionNStruct{X: \"\"}",
		Target:      VNativeWireUnionNStruct{},
		SourceLabel: "VWireUnionNSlice{X: \"\"}",
		Source:      VNativeWireUnionNSlice(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireUnionNStruct{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireUnionNStruct {
			var native VNativeWireUnionNStruct
			wire := VWireUnionNStruct(VWireUnionNStructX{"abcdeΔΘΠΣΦ王普澤世界"})
			if err := VWireUnionNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireUnionNStruct{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: func() VNativeWireUnionNStruct {
			var native VNativeWireUnionNStruct
			wire := VWireUnionNStruct(VWireUnionNStructX{"abcdeΔΘΠΣΦ王普澤世界"})
			if err := VWireUnionNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Full",
		TargetLabel: "VWireUnionNStruct{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireUnionNStruct {
			var native VNativeWireUnionNStruct
			wire := VWireUnionNStruct(VWireUnionNStructX{"abcdeΔΘΠΣΦ王普澤世界"})
			if err := VWireUnionNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireUnionNString{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: func() VNativeWireUnionNString {
			var native VNativeWireUnionNString
			wire := VWireUnionNString(VWireUnionNStringX{"abcdeΔΘΠΣΦ王普澤世界"})
			if err := VWireUnionNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VWireUnionNStruct{X: \"ΘΠΣ\"}",
		Target: func() VNativeWireUnionNStruct {
			var native VNativeWireUnionNStruct
			wire := VWireUnionNStruct(VWireUnionNStructX{"ΘΠΣ"})
			if err := VWireUnionNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireUnionNStruct{X: \"ΘΠΣ\"}",
		Source: func() VNativeWireUnionNStruct {
			var native VNativeWireUnionNStruct
			wire := VWireUnionNStruct(VWireUnionNStructX{"ΘΠΣ"})
			if err := VWireUnionNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Random0",
		TargetLabel: "VWireUnionNStruct{X: \"ΘΠΣ\"}",
		Target: func() VNativeWireUnionNStruct {
			var native VNativeWireUnionNStruct
			wire := VWireUnionNStruct(VWireUnionNStructX{"ΘΠΣ"})
			if err := VWireUnionNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireUnionNIface{X: \"ΘΠΣ\"}",
		Source:      VWireUnionNIface(VWireUnionNIfaceX{"ΘΠΣ"}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireUnionNArray{X: \"\"}",
		Target:      VNativeWireUnionNArray{},
		SourceLabel: "VWireUnionNArray{X: \"\"}",
		Source:      VNativeWireUnionNArray{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireUnionNArray{X: \"\"}",
		Target:      VNativeWireUnionNArray{},
		SourceLabel: "VWireUnionNPointer{X: \"\"}",
		Source:      VWireUnionNPointer(VWireUnionNPointerX{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireUnionNArray{X: \"\"}",
		Target:      VNativeWireUnionNArray{},
		SourceLabel: "VWireUnionNIface{X: \"\"}",
		Source:      VWireUnionNIface(VWireUnionNIfaceX{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireUnionNArray{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireUnionNArray {
			var native VNativeWireUnionNArray
			wire := VWireUnionNArray(VWireUnionNArrayX{"abcdeΔΘΠΣΦ王普澤世界"})
			if err := VWireUnionNArrayToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireUnionNArray{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: func() VNativeWireUnionNArray {
			var native VNativeWireUnionNArray
			wire := VWireUnionNArray(VWireUnionNArrayX{"abcdeΔΘΠΣΦ王普澤世界"})
			if err := VWireUnionNArrayToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Full",
		TargetLabel: "VWireUnionNArray{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireUnionNArray {
			var native VNativeWireUnionNArray
			wire := VWireUnionNArray(VWireUnionNArrayX{"abcdeΔΘΠΣΦ王普澤世界"})
			if err := VWireUnionNArrayToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireUnionNStruct{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: func() VNativeWireUnionNStruct {
			var native VNativeWireUnionNStruct
			wire := VWireUnionNStruct(VWireUnionNStructX{"abcdeΔΘΠΣΦ王普澤世界"})
			if err := VWireUnionNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VWireUnionNArray{X: \"cdeΔ\"}",
		Target: func() VNativeWireUnionNArray {
			var native VNativeWireUnionNArray
			wire := VWireUnionNArray(VWireUnionNArrayX{"cdeΔ"})
			if err := VWireUnionNArrayToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireUnionNArray{X: \"cdeΔ\"}",
		Source: func() VNativeWireUnionNArray {
			var native VNativeWireUnionNArray
			wire := VWireUnionNArray(VWireUnionNArrayX{"cdeΔ"})
			if err := VWireUnionNArrayToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Random0",
		TargetLabel: "VWireUnionNArray{X: \"cdeΔ\"}",
		Target: func() VNativeWireUnionNArray {
			var native VNativeWireUnionNArray
			wire := VWireUnionNArray(VWireUnionNArrayX{"cdeΔ"})
			if err := VWireUnionNArrayToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireUnionNPointer{X: \"cdeΔ\"}",
		Source:      VWireUnionNPointer(VWireUnionNPointerX{"cdeΔ"}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireUnionNSlice{X: \"\"}",
		Target:      VNativeWireUnionNSlice(nil),
		SourceLabel: "VWireUnionNSlice{X: \"\"}",
		Source:      VNativeWireUnionNSlice(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireUnionNSlice{X: \"\"}",
		Target:      VNativeWireUnionNSlice(nil),
		SourceLabel: "VWireUnionNIface{X: \"\"}",
		Source:      VWireUnionNIface(VWireUnionNIfaceX{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireUnionNSlice{X: \"\"}",
		Target:      VNativeWireUnionNSlice(nil),
		SourceLabel: "VWireUnionNPointer{X: \"\"}",
		Source:      VWireUnionNPointer(VWireUnionNPointerX{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireUnionNSlice{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireUnionNSlice {
			var native VNativeWireUnionNSlice
			wire := VWireUnionNSlice(VWireUnionNSliceX{"abcdeΔΘΠΣΦ王普澤世界"})
			if err := VWireUnionNSliceToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireUnionNSlice{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: func() VNativeWireUnionNSlice {
			var native VNativeWireUnionNSlice
			wire := VWireUnionNSlice(VWireUnionNSliceX{"abcdeΔΘΠΣΦ王普澤世界"})
			if err := VWireUnionNSliceToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Full",
		TargetLabel: "VWireUnionNSlice{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: func() VNativeWireUnionNSlice {
			var native VNativeWireUnionNSlice
			wire := VWireUnionNSlice(VWireUnionNSliceX{"abcdeΔΘΠΣΦ王普澤世界"})
			if err := VWireUnionNSliceToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireUnionNString{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: func() VNativeWireUnionNString {
			var native VNativeWireUnionNString
			wire := VWireUnionNString(VWireUnionNStringX{"abcdeΔΘΠΣΦ王普澤世界"})
			if err := VWireUnionNStringToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VWireUnionNSlice{X: \"c\"}",
		Target: func() VNativeWireUnionNSlice {
			var native VNativeWireUnionNSlice
			wire := VWireUnionNSlice(VWireUnionNSliceX{"c"})
			if err := VWireUnionNSliceToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireUnionNSlice{X: \"c\"}",
		Source: func() VNativeWireUnionNSlice {
			var native VNativeWireUnionNSlice
			wire := VWireUnionNSlice(VWireUnionNSliceX{"c"})
			if err := VWireUnionNSliceToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		Label:       "Random0",
		TargetLabel: "VWireUnionNSlice{X: \"c\"}",
		Target: func() VNativeWireUnionNSlice {
			var native VNativeWireUnionNSlice
			wire := VWireUnionNSlice(VWireUnionNSliceX{"c"})
			if err := VWireUnionNSliceToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
		SourceLabel: "VWireUnionNIface{X: \"c\"}",
		Source:      VWireUnionNIface(VWireUnionNIfaceX{"c"}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireUnionNPointer{X: \"\"}",
		Target:      VWireUnionNPointer(VWireUnionNPointerX{}),
		SourceLabel: "VWireUnionNPointer{X: \"\"}",
		Source:      VWireUnionNPointer(VWireUnionNPointerX{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireUnionNPointer{X: \"\"}",
		Target:      VWireUnionNPointer(VWireUnionNPointerX{}),
		SourceLabel: "VWireUnionNIface{X: \"\"}",
		Source:      VWireUnionNIface(VWireUnionNIfaceX{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireUnionNPointer{X: \"\"}",
		Target:      VWireUnionNPointer(VWireUnionNPointerX{}),
		SourceLabel: "VWireUnionNSlice{X: \"\"}",
		Source:      VNativeWireUnionNSlice(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireUnionNPointer{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target:      VWireUnionNPointer(VWireUnionNPointerX{"abcdeΔΘΠΣΦ王普澤世界"}),
		SourceLabel: "VWireUnionNPointer{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source:      VWireUnionNPointer(VWireUnionNPointerX{"abcdeΔΘΠΣΦ王普澤世界"}),
	},
	{
		Label:       "Full",
		TargetLabel: "VWireUnionNPointer{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target:      VWireUnionNPointer(VWireUnionNPointerX{"abcdeΔΘΠΣΦ王普澤世界"}),
		SourceLabel: "VWireUnionNSlice{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: func() VNativeWireUnionNSlice {
			var native VNativeWireUnionNSlice
			wire := VWireUnionNSlice(VWireUnionNSliceX{"abcdeΔΘΠΣΦ王普澤世界"})
			if err := VWireUnionNSliceToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VWireUnionNPointer{X: \"ΣΦ王\"}",
		Target:      VWireUnionNPointer(VWireUnionNPointerX{"ΣΦ王"}),
		SourceLabel: "VWireUnionNPointer{X: \"ΣΦ王\"}",
		Source:      VWireUnionNPointer(VWireUnionNPointerX{"ΣΦ王"}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VWireUnionNPointer{X: \"ΣΦ王\"}",
		Target:      VWireUnionNPointer(VWireUnionNPointerX{"ΣΦ王"}),
		SourceLabel: "VWireUnionNIface{X: \"ΣΦ王\"}",
		Source:      VWireUnionNIface(VWireUnionNIfaceX{"ΣΦ王"}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireUnionNIface{X: \"\"}",
		Target:      VWireUnionNIface(VWireUnionNIfaceX{}),
		SourceLabel: "VWireUnionNIface{X: \"\"}",
		Source:      VWireUnionNIface(VWireUnionNIfaceX{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireUnionNIface{X: \"\"}",
		Target:      VWireUnionNIface(VWireUnionNIfaceX{}),
		SourceLabel: "VWireUnionNSlice{X: \"\"}",
		Source:      VNativeWireUnionNSlice(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireUnionNIface{X: \"\"}",
		Target:      VWireUnionNIface(VWireUnionNIfaceX{}),
		SourceLabel: "VWireUnionNStruct{X: \"\"}",
		Source:      VNativeWireUnionNStruct{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireUnionNIface{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target:      VWireUnionNIface(VWireUnionNIfaceX{"abcdeΔΘΠΣΦ王普澤世界"}),
		SourceLabel: "VWireUnionNIface{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source:      VWireUnionNIface(VWireUnionNIfaceX{"abcdeΔΘΠΣΦ王普澤世界"}),
	},
	{
		Label:       "Full",
		TargetLabel: "VWireUnionNIface{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target:      VWireUnionNIface(VWireUnionNIfaceX{"abcdeΔΘΠΣΦ王普澤世界"}),
		SourceLabel: "VWireUnionNStruct{X: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: func() VNativeWireUnionNStruct {
			var native VNativeWireUnionNStruct
			wire := VWireUnionNStruct(VWireUnionNStructX{"abcdeΔΘΠΣΦ王普澤世界"})
			if err := VWireUnionNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VWireUnionNIface{X: \"deΔΘΠΣ\"}",
		Target:      VWireUnionNIface(VWireUnionNIfaceX{"deΔΘΠΣ"}),
		SourceLabel: "VWireUnionNIface{X: \"deΔΘΠΣ\"}",
		Source:      VWireUnionNIface(VWireUnionNIfaceX{"deΔΘΠΣ"}),
	},
	{
		Label:       "Random0",
		TargetLabel: "VWireUnionNIface{X: \"deΔΘΠΣ\"}",
		Target:      VWireUnionNIface(VWireUnionNIfaceX{"deΔΘΠΣ"}),
		SourceLabel: "VWireUnionNStruct{X: \"deΔΘΠΣ\"}",
		Source: func() VNativeWireUnionNStruct {
			var native VNativeWireUnionNStruct
			wire := VWireUnionNStruct(VWireUnionNStructX{"deΔΘΠΣ"})
			if err := VWireUnionNStructToNative(wire, &native); err != nil {
				panic(err)
			}
			return native
		}(),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "VWireAll{}",
		Target: VWireAll{
			UnionNPointer: VWireUnionNPointerX{},
			UnionNIface:   VWireUnionNIfaceX{},
		},
		SourceLabel: "VWireAll{}",
		Source: VWireAll{
			UnionNPointer: VWireUnionNPointerX{},
			UnionNIface:   VWireUnionNIfaceX{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireAll{}",
		Target: VWireAll{
			UnionNPointer: VWireUnionNPointerX{},
			UnionNIface:   VWireUnionNIfaceX{},
		},
		SourceLabel: "?VStructEmpty{}",
		Source:      &VStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "VWireAll{}",
		Target: VWireAll{
			UnionNPointer: VWireUnionNPointerX{},
			UnionNIface:   VWireUnionNIfaceX{},
		},
		SourceLabel: "VStructEmpty{}",
		Source:      VStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "VWireAll{BoolNBool: true, BoolNString: true, BoolNStruct: true, IntNInt: -123, IntNString: -123, IntNStruct: -123, StringNString: \"abcdeΔΘΠΣΦ王普澤世界\", StringNStruct: \"abcdeΔΘΠΣΦ王普澤世界\", ArrayNString: {\"abcdeΔΘΠΣΦ王普澤世界\"}, ArrayNStruct: {\"abcdeΔΘΠΣΦ王普澤世界\"}, ListNString: {\"abcdeΔΘΠΣΦ王普澤世界\"}, ListNStruct: {\"abcdeΔΘΠΣΦ王普澤世界\"}, StructNString: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}, StructNStruct: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}, StructNArray: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}, StructNSlice: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}, StructNPointer: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}, StructNIface: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}, UnionNString: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}, UnionNStruct: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}, UnionNArray: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}, UnionNSlice: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}, UnionNPointer: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}, UnionNIface: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: VWireAll{
			BoolNBool: func() VNativeWireBoolNBool {
				var native VNativeWireBoolNBool
				wire := VWireBoolNBool(true)
				if err := VWireBoolNBoolToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			BoolNString: func() VNativeWireBoolNString {
				var native VNativeWireBoolNString
				wire := VWireBoolNString(true)
				if err := VWireBoolNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			BoolNStruct: func() VNativeWireBoolNStruct {
				var native VNativeWireBoolNStruct
				wire := VWireBoolNStruct(true)
				if err := VWireBoolNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			IntNInt: func() VNativeWireIntNInt {
				var native VNativeWireIntNInt
				wire := VWireIntNInt(-123)
				if err := VWireIntNIntToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			IntNString: func() VNativeWireIntNString {
				var native VNativeWireIntNString
				wire := VWireIntNString(-123)
				if err := VWireIntNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			IntNStruct: func() VNativeWireIntNStruct {
				var native VNativeWireIntNStruct
				wire := VWireIntNStruct(-123)
				if err := VWireIntNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StringNString: func() VNativeWireStringNString {
				var native VNativeWireStringNString
				wire := VWireStringNString("abcdeΔΘΠΣΦ王普澤世界")
				if err := VWireStringNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StringNStruct: func() VNativeWireStringNStruct {
				var native VNativeWireStringNStruct
				wire := VWireStringNStruct("abcdeΔΘΠΣΦ王普澤世界")
				if err := VWireStringNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			ArrayNString: func() VNativeWireArrayNString {
				var native VNativeWireArrayNString
				wire := VWireArrayNString{
					"abcdeΔΘΠΣΦ王普澤世界",
				}
				if err := VWireArrayNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			ArrayNStruct: func() VNativeWireArrayNStruct {
				var native VNativeWireArrayNStruct
				wire := VWireArrayNStruct{
					"abcdeΔΘΠΣΦ王普澤世界",
				}
				if err := VWireArrayNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			ListNString: func() VNativeWireListNString {
				var native VNativeWireListNString
				wire := VWireListNString{
					"abcdeΔΘΠΣΦ王普澤世界",
				}
				if err := VWireListNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			ListNStruct: func() VNativeWireListNStruct {
				var native VNativeWireListNStruct
				wire := VWireListNStruct{
					"abcdeΔΘΠΣΦ王普澤世界",
				}
				if err := VWireListNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StructNString: func() VNativeWireStructNString {
				var native VNativeWireStructNString
				wire := VWireStructNString{
					X: "abcdeΔΘΠΣΦ王普澤世界",
				}
				if err := VWireStructNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StructNStruct: func() VNativeWireStructNStruct {
				var native VNativeWireStructNStruct
				wire := VWireStructNStruct{
					X: "abcdeΔΘΠΣΦ王普澤世界",
				}
				if err := VWireStructNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StructNArray: func() VNativeWireStructNArray {
				var native VNativeWireStructNArray
				wire := VWireStructNArray{
					X: "abcdeΔΘΠΣΦ王普澤世界",
				}
				if err := VWireStructNArrayToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StructNSlice: func() VNativeWireStructNSlice {
				var native VNativeWireStructNSlice
				wire := VWireStructNSlice{
					X: "abcdeΔΘΠΣΦ王普澤世界",
				}
				if err := VWireStructNSliceToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StructNPointer: VWireStructNPointer{
				X: "abcdeΔΘΠΣΦ王普澤世界",
			},
			StructNIface: VWireStructNIface{
				X: "abcdeΔΘΠΣΦ王普澤世界",
			},
			UnionNString: func() VNativeWireUnionNString {
				var native VNativeWireUnionNString
				wire := VWireUnionNString(VWireUnionNStringX{"abcdeΔΘΠΣΦ王普澤世界"})
				if err := VWireUnionNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			UnionNStruct: func() VNativeWireUnionNStruct {
				var native VNativeWireUnionNStruct
				wire := VWireUnionNStruct(VWireUnionNStructX{"abcdeΔΘΠΣΦ王普澤世界"})
				if err := VWireUnionNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			UnionNArray: func() VNativeWireUnionNArray {
				var native VNativeWireUnionNArray
				wire := VWireUnionNArray(VWireUnionNArrayX{"abcdeΔΘΠΣΦ王普澤世界"})
				if err := VWireUnionNArrayToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			UnionNSlice: func() VNativeWireUnionNSlice {
				var native VNativeWireUnionNSlice
				wire := VWireUnionNSlice(VWireUnionNSliceX{"abcdeΔΘΠΣΦ王普澤世界"})
				if err := VWireUnionNSliceToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			UnionNPointer: VWireUnionNPointerX{"abcdeΔΘΠΣΦ王普澤世界"},
			UnionNIface:   VWireUnionNIfaceX{"abcdeΔΘΠΣΦ王普澤世界"},
		},
		SourceLabel: "VWireAll{BoolNBool: true, BoolNString: true, BoolNStruct: true, IntNInt: -123, IntNString: -123, IntNStruct: -123, StringNString: \"abcdeΔΘΠΣΦ王普澤世界\", StringNStruct: \"abcdeΔΘΠΣΦ王普澤世界\", ArrayNString: {\"abcdeΔΘΠΣΦ王普澤世界\"}, ArrayNStruct: {\"abcdeΔΘΠΣΦ王普澤世界\"}, ListNString: {\"abcdeΔΘΠΣΦ王普澤世界\"}, ListNStruct: {\"abcdeΔΘΠΣΦ王普澤世界\"}, StructNString: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}, StructNStruct: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}, StructNArray: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}, StructNSlice: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}, StructNPointer: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}, StructNIface: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}, UnionNString: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}, UnionNStruct: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}, UnionNArray: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}, UnionNSlice: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}, UnionNPointer: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}, UnionNIface: {X: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: VWireAll{
			BoolNBool: func() VNativeWireBoolNBool {
				var native VNativeWireBoolNBool
				wire := VWireBoolNBool(true)
				if err := VWireBoolNBoolToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			BoolNString: func() VNativeWireBoolNString {
				var native VNativeWireBoolNString
				wire := VWireBoolNString(true)
				if err := VWireBoolNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			BoolNStruct: func() VNativeWireBoolNStruct {
				var native VNativeWireBoolNStruct
				wire := VWireBoolNStruct(true)
				if err := VWireBoolNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			IntNInt: func() VNativeWireIntNInt {
				var native VNativeWireIntNInt
				wire := VWireIntNInt(-123)
				if err := VWireIntNIntToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			IntNString: func() VNativeWireIntNString {
				var native VNativeWireIntNString
				wire := VWireIntNString(-123)
				if err := VWireIntNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			IntNStruct: func() VNativeWireIntNStruct {
				var native VNativeWireIntNStruct
				wire := VWireIntNStruct(-123)
				if err := VWireIntNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StringNString: func() VNativeWireStringNString {
				var native VNativeWireStringNString
				wire := VWireStringNString("abcdeΔΘΠΣΦ王普澤世界")
				if err := VWireStringNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StringNStruct: func() VNativeWireStringNStruct {
				var native VNativeWireStringNStruct
				wire := VWireStringNStruct("abcdeΔΘΠΣΦ王普澤世界")
				if err := VWireStringNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			ArrayNString: func() VNativeWireArrayNString {
				var native VNativeWireArrayNString
				wire := VWireArrayNString{
					"abcdeΔΘΠΣΦ王普澤世界",
				}
				if err := VWireArrayNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			ArrayNStruct: func() VNativeWireArrayNStruct {
				var native VNativeWireArrayNStruct
				wire := VWireArrayNStruct{
					"abcdeΔΘΠΣΦ王普澤世界",
				}
				if err := VWireArrayNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			ListNString: func() VNativeWireListNString {
				var native VNativeWireListNString
				wire := VWireListNString{
					"abcdeΔΘΠΣΦ王普澤世界",
				}
				if err := VWireListNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			ListNStruct: func() VNativeWireListNStruct {
				var native VNativeWireListNStruct
				wire := VWireListNStruct{
					"abcdeΔΘΠΣΦ王普澤世界",
				}
				if err := VWireListNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StructNString: func() VNativeWireStructNString {
				var native VNativeWireStructNString
				wire := VWireStructNString{
					X: "abcdeΔΘΠΣΦ王普澤世界",
				}
				if err := VWireStructNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StructNStruct: func() VNativeWireStructNStruct {
				var native VNativeWireStructNStruct
				wire := VWireStructNStruct{
					X: "abcdeΔΘΠΣΦ王普澤世界",
				}
				if err := VWireStructNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StructNArray: func() VNativeWireStructNArray {
				var native VNativeWireStructNArray
				wire := VWireStructNArray{
					X: "abcdeΔΘΠΣΦ王普澤世界",
				}
				if err := VWireStructNArrayToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StructNSlice: func() VNativeWireStructNSlice {
				var native VNativeWireStructNSlice
				wire := VWireStructNSlice{
					X: "abcdeΔΘΠΣΦ王普澤世界",
				}
				if err := VWireStructNSliceToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StructNPointer: VWireStructNPointer{
				X: "abcdeΔΘΠΣΦ王普澤世界",
			},
			StructNIface: VWireStructNIface{
				X: "abcdeΔΘΠΣΦ王普澤世界",
			},
			UnionNString: func() VNativeWireUnionNString {
				var native VNativeWireUnionNString
				wire := VWireUnionNString(VWireUnionNStringX{"abcdeΔΘΠΣΦ王普澤世界"})
				if err := VWireUnionNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			UnionNStruct: func() VNativeWireUnionNStruct {
				var native VNativeWireUnionNStruct
				wire := VWireUnionNStruct(VWireUnionNStructX{"abcdeΔΘΠΣΦ王普澤世界"})
				if err := VWireUnionNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			UnionNArray: func() VNativeWireUnionNArray {
				var native VNativeWireUnionNArray
				wire := VWireUnionNArray(VWireUnionNArrayX{"abcdeΔΘΠΣΦ王普澤世界"})
				if err := VWireUnionNArrayToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			UnionNSlice: func() VNativeWireUnionNSlice {
				var native VNativeWireUnionNSlice
				wire := VWireUnionNSlice(VWireUnionNSliceX{"abcdeΔΘΠΣΦ王普澤世界"})
				if err := VWireUnionNSliceToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			UnionNPointer: VWireUnionNPointerX{"abcdeΔΘΠΣΦ王普澤世界"},
			UnionNIface:   VWireUnionNIfaceX{"abcdeΔΘΠΣΦ王普澤世界"},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "VWireAll{BoolNString: true, IntNInt: -255070853, IntNString: 535047732, IntNStruct: 492803907, StringNString: \"abcdeΔ\", StringNStruct: \"ΔΘΠΣΦ王\", ArrayNString: {\"abcdeΔΘΠ\"}, ArrayNStruct: {\"普澤世\"}, ListNStruct: {\"deΔΘ\", \"\"}, StructNString: {X: \"ΔΘΠΣΦ王普澤\"}, StructNStruct: {X: \"cdeΔΘ\"}, StructNArray: {X: \"bcde\"}, StructNIface: {X: \"澤世界\"}, UnionNString: {X: \"cdeΔΘΠΣΦ\"}, UnionNPointer: {X: \"bc\"}}",
		Target: VWireAll{
			BoolNString: func() VNativeWireBoolNString {
				var native VNativeWireBoolNString
				wire := VWireBoolNString(true)
				if err := VWireBoolNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			IntNInt: func() VNativeWireIntNInt {
				var native VNativeWireIntNInt
				wire := VWireIntNInt(-255070853)
				if err := VWireIntNIntToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			IntNString: func() VNativeWireIntNString {
				var native VNativeWireIntNString
				wire := VWireIntNString(535047732)
				if err := VWireIntNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			IntNStruct: func() VNativeWireIntNStruct {
				var native VNativeWireIntNStruct
				wire := VWireIntNStruct(492803907)
				if err := VWireIntNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StringNString: func() VNativeWireStringNString {
				var native VNativeWireStringNString
				wire := VWireStringNString("abcdeΔ")
				if err := VWireStringNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StringNStruct: func() VNativeWireStringNStruct {
				var native VNativeWireStringNStruct
				wire := VWireStringNStruct("ΔΘΠΣΦ王")
				if err := VWireStringNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			ArrayNString: func() VNativeWireArrayNString {
				var native VNativeWireArrayNString
				wire := VWireArrayNString{
					"abcdeΔΘΠ",
				}
				if err := VWireArrayNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			ArrayNStruct: func() VNativeWireArrayNStruct {
				var native VNativeWireArrayNStruct
				wire := VWireArrayNStruct{
					"普澤世",
				}
				if err := VWireArrayNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			ListNStruct: func() VNativeWireListNStruct {
				var native VNativeWireListNStruct
				wire := VWireListNStruct{
					"deΔΘ",
					"",
				}
				if err := VWireListNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StructNString: func() VNativeWireStructNString {
				var native VNativeWireStructNString
				wire := VWireStructNString{
					X: "ΔΘΠΣΦ王普澤",
				}
				if err := VWireStructNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StructNStruct: func() VNativeWireStructNStruct {
				var native VNativeWireStructNStruct
				wire := VWireStructNStruct{
					X: "cdeΔΘ",
				}
				if err := VWireStructNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StructNArray: func() VNativeWireStructNArray {
				var native VNativeWireStructNArray
				wire := VWireStructNArray{
					X: "bcde",
				}
				if err := VWireStructNArrayToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StructNIface: VWireStructNIface{
				X: "澤世界",
			},
			UnionNString: func() VNativeWireUnionNString {
				var native VNativeWireUnionNString
				wire := VWireUnionNString(VWireUnionNStringX{"cdeΔΘΠΣΦ"})
				if err := VWireUnionNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			UnionNPointer: VWireUnionNPointerX{"bc"},
			UnionNIface:   VWireUnionNIfaceX{},
		},
		SourceLabel: "VWireAll{BoolNString: true, IntNInt: -255070853, IntNString: 535047732, IntNStruct: 492803907, StringNString: \"abcdeΔ\", StringNStruct: \"ΔΘΠΣΦ王\", ArrayNString: {\"abcdeΔΘΠ\"}, ArrayNStruct: {\"普澤世\"}, ListNStruct: {\"deΔΘ\", \"\"}, StructNString: {X: \"ΔΘΠΣΦ王普澤\"}, StructNStruct: {X: \"cdeΔΘ\"}, StructNArray: {X: \"bcde\"}, StructNIface: {X: \"澤世界\"}, UnionNString: {X: \"cdeΔΘΠΣΦ\"}, UnionNPointer: {X: \"bc\"}}",
		Source: VWireAll{
			BoolNString: func() VNativeWireBoolNString {
				var native VNativeWireBoolNString
				wire := VWireBoolNString(true)
				if err := VWireBoolNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			IntNInt: func() VNativeWireIntNInt {
				var native VNativeWireIntNInt
				wire := VWireIntNInt(-255070853)
				if err := VWireIntNIntToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			IntNString: func() VNativeWireIntNString {
				var native VNativeWireIntNString
				wire := VWireIntNString(535047732)
				if err := VWireIntNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			IntNStruct: func() VNativeWireIntNStruct {
				var native VNativeWireIntNStruct
				wire := VWireIntNStruct(492803907)
				if err := VWireIntNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StringNString: func() VNativeWireStringNString {
				var native VNativeWireStringNString
				wire := VWireStringNString("abcdeΔ")
				if err := VWireStringNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StringNStruct: func() VNativeWireStringNStruct {
				var native VNativeWireStringNStruct
				wire := VWireStringNStruct("ΔΘΠΣΦ王")
				if err := VWireStringNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			ArrayNString: func() VNativeWireArrayNString {
				var native VNativeWireArrayNString
				wire := VWireArrayNString{
					"abcdeΔΘΠ",
				}
				if err := VWireArrayNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			ArrayNStruct: func() VNativeWireArrayNStruct {
				var native VNativeWireArrayNStruct
				wire := VWireArrayNStruct{
					"普澤世",
				}
				if err := VWireArrayNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			ListNStruct: func() VNativeWireListNStruct {
				var native VNativeWireListNStruct
				wire := VWireListNStruct{
					"deΔΘ",
					"",
				}
				if err := VWireListNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StructNString: func() VNativeWireStructNString {
				var native VNativeWireStructNString
				wire := VWireStructNString{
					X: "ΔΘΠΣΦ王普澤",
				}
				if err := VWireStructNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StructNStruct: func() VNativeWireStructNStruct {
				var native VNativeWireStructNStruct
				wire := VWireStructNStruct{
					X: "cdeΔΘ",
				}
				if err := VWireStructNStructToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StructNArray: func() VNativeWireStructNArray {
				var native VNativeWireStructNArray
				wire := VWireStructNArray{
					X: "bcde",
				}
				if err := VWireStructNArrayToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			StructNIface: VWireStructNIface{
				X: "澤世界",
			},
			UnionNString: func() VNativeWireUnionNString {
				var native VNativeWireUnionNString
				wire := VWireUnionNString(VWireUnionNStringX{"cdeΔΘΠΣΦ"})
				if err := VWireUnionNStringToNative(wire, &native); err != nil {
					panic(err)
				}
				return native
			}(),
			UnionNPointer: VWireUnionNPointerX{"bc"},
			UnionNIface:   VWireUnionNIfaceX{},
		},
	},
}
var xAllFail = []vdlEntry(nil)
var xAllPass = []vdlEntry{
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XBool(false)",
		Target:      XBool(false),
		SourceLabel: "XBool(false)",
		Source:      XBool(false),
	},
	{
		Label:       "Zero",
		TargetLabel: "XBool(false)",
		Target:      XBool(false),
		SourceLabel: "false",
		Source:      false,
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XBool(true)",
		Target:      XBool(true),
		SourceLabel: "XBool(true)",
		Source:      XBool(true),
	},
	{
		Label:       "Full",
		TargetLabel: "XBool(true)",
		Target:      XBool(true),
		SourceLabel: "true",
		Source:      true,
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XString(\"\")",
		Target:      XString(""),
		SourceLabel: "XString(\"\")",
		Source:      XString(""),
	},
	{
		Label:       "Zero",
		TargetLabel: "XString(\"\")",
		Target:      XString(""),
		SourceLabel: "\"\"",
		Source:      "",
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XString(\"abcdeΔΘΠΣΦ王普澤世界\")",
		Target:      XString("abcdeΔΘΠΣΦ王普澤世界"),
		SourceLabel: "XString(\"abcdeΔΘΠΣΦ王普澤世界\")",
		Source:      XString("abcdeΔΘΠΣΦ王普澤世界"),
	},
	{
		Label:       "Full",
		TargetLabel: "XString(\"abcdeΔΘΠΣΦ王普澤世界\")",
		Target:      XString("abcdeΔΘΠΣΦ王普澤世界"),
		SourceLabel: "\"abcdeΔΘΠΣΦ王普澤世界\"",
		Source:      "abcdeΔΘΠΣΦ王普澤世界",
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XString(\"ΔΘΠΣΦ王普\")",
		Target:      XString("ΔΘΠΣΦ王普"),
		SourceLabel: "XString(\"ΔΘΠΣΦ王普\")",
		Source:      XString("ΔΘΠΣΦ王普"),
	},
	{
		Label:       "Random0",
		TargetLabel: "XString(\"ΔΘΠΣΦ王普\")",
		Target:      XString("ΔΘΠΣΦ王普"),
		SourceLabel: "\"ΔΘΠΣΦ王普\"",
		Source:      "ΔΘΠΣΦ王普",
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XByte(0)",
		Target:      XByte(0),
		SourceLabel: "XByte(0)",
		Source:      XByte(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "XByte(0)",
		Target:      XByte(0),
		SourceLabel: "XUint64(0)",
		Source:      XUint64(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "XByte(0)",
		Target:      XByte(0),
		SourceLabel: "int16(0)",
		Source:      int16(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "XByte(255)",
		Target:      XByte(255),
		SourceLabel: "XByte(255)",
		Source:      XByte(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "XByte(255)",
		Target:      XByte(255),
		SourceLabel: "XUint16(255)",
		Source:      XUint16(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "XByte(255)",
		Target:      XByte(255),
		SourceLabel: "XUint32(255)",
		Source:      XUint32(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "XByte(255)",
		Target:      XByte(255),
		SourceLabel: "XUint64(255)",
		Source:      XUint64(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "XByte(255)",
		Target:      XByte(255),
		SourceLabel: "XInt16(255)",
		Source:      XInt16(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "XByte(255)",
		Target:      XByte(255),
		SourceLabel: "XInt32(255)",
		Source:      XInt32(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "XByte(255)",
		Target:      XByte(255),
		SourceLabel: "XInt64(255)",
		Source:      XInt64(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "XByte(255)",
		Target:      XByte(255),
		SourceLabel: "XFloat32(255)",
		Source:      XFloat32(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "XByte(255)",
		Target:      XByte(255),
		SourceLabel: "XFloat64(255)",
		Source:      XFloat64(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "XByte(255)",
		Target:      XByte(255),
		SourceLabel: "float32(255)",
		Source:      float32(255),
	},
	{
		Label:       "+Max",
		TargetLabel: "XByte(255)",
		Target:      XByte(255),
		SourceLabel: "uint64(255)",
		Source:      uint64(255),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "XByte(1)",
		Target:      XByte(1),
		SourceLabel: "XByte(1)",
		Source:      XByte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XByte(1)",
		Target:      XByte(1),
		SourceLabel: "XUint16(1)",
		Source:      XUint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XByte(1)",
		Target:      XByte(1),
		SourceLabel: "XUint32(1)",
		Source:      XUint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XByte(1)",
		Target:      XByte(1),
		SourceLabel: "XUint64(1)",
		Source:      XUint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XByte(1)",
		Target:      XByte(1),
		SourceLabel: "XInt8(1)",
		Source:      XInt8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XByte(1)",
		Target:      XByte(1),
		SourceLabel: "XInt16(1)",
		Source:      XInt16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XByte(1)",
		Target:      XByte(1),
		SourceLabel: "XInt32(1)",
		Source:      XInt32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XByte(1)",
		Target:      XByte(1),
		SourceLabel: "XInt64(1)",
		Source:      XInt64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XByte(1)",
		Target:      XByte(1),
		SourceLabel: "XFloat32(1)",
		Source:      XFloat32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XByte(1)",
		Target:      XByte(1),
		SourceLabel: "XFloat64(1)",
		Source:      XFloat64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XByte(1)",
		Target:      XByte(1),
		SourceLabel: "uint16(1)",
		Source:      uint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XByte(1)",
		Target:      XByte(1),
		SourceLabel: "int64(1)",
		Source:      int64(1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XByte(123)",
		Target:      XByte(123),
		SourceLabel: "XByte(123)",
		Source:      XByte(123),
	},
	{
		Label:       "Full",
		TargetLabel: "XByte(123)",
		Target:      XByte(123),
		SourceLabel: "uint16(123)",
		Source:      uint16(123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XByte(121)",
		Target:      XByte(121),
		SourceLabel: "XByte(121)",
		Source:      XByte(121),
	},
	{
		Label:       "Random0",
		TargetLabel: "XByte(121)",
		Target:      XByte(121),
		SourceLabel: "XFloat64(121)",
		Source:      XFloat64(121),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XEnumAbc.A",
		Target:      XEnumAbcA,
		SourceLabel: "XEnumAbc.A",
		Source:      XEnumAbcA,
	},
	{
		Label:       "Zero",
		TargetLabel: "XEnumAbc.A",
		Target:      XEnumAbcA,
		SourceLabel: "\"A\"",
		Source:      "A",
	},
	{
		Label:       "Zero",
		TargetLabel: "XEnumAbc.A",
		Target:      XEnumAbcA,
		SourceLabel: "XString(\"A\")",
		Source:      XString("A"),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XEnumAbc.B",
		Target:      XEnumAbcB,
		SourceLabel: "XEnumAbc.B",
		Source:      XEnumAbcB,
	},
	{
		Label:       "Full",
		TargetLabel: "XEnumAbc.B",
		Target:      XEnumAbcB,
		SourceLabel: "\"B\"",
		Source:      "B",
	},
	{
		Label:       "Full",
		TargetLabel: "XEnumAbc.B",
		Target:      XEnumAbcB,
		SourceLabel: "XString(\"B\")",
		Source:      XString("B"),
	},
	{
		Label:       "Full",
		TargetLabel: "XEnumAbc.B",
		Target:      XEnumAbcB,
		SourceLabel: "XEnumBcd.B",
		Source:      XEnumBcdB,
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XEnumAbc.C",
		Target:      XEnumAbcC,
		SourceLabel: "XEnumAbc.C",
		Source:      XEnumAbcC,
	},
	{
		Label:       "Full",
		TargetLabel: "XEnumAbc.C",
		Target:      XEnumAbcC,
		SourceLabel: "\"C\"",
		Source:      "C",
	},
	{
		Label:       "Full",
		TargetLabel: "XEnumAbc.C",
		Target:      XEnumAbcC,
		SourceLabel: "XString(\"C\")",
		Source:      XString("C"),
	},
	{
		Label:       "Full",
		TargetLabel: "XEnumAbc.C",
		Target:      XEnumAbcC,
		SourceLabel: "XEnumBcd.C",
		Source:      XEnumBcdC,
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XEnumBcd.B",
		Target:      XEnumBcdB,
		SourceLabel: "XEnumBcd.B",
		Source:      XEnumBcdB,
	},
	{
		Label:       "Zero",
		TargetLabel: "XEnumBcd.B",
		Target:      XEnumBcdB,
		SourceLabel: "\"B\"",
		Source:      "B",
	},
	{
		Label:       "Zero",
		TargetLabel: "XEnumBcd.B",
		Target:      XEnumBcdB,
		SourceLabel: "XEnumAbc.B",
		Source:      XEnumAbcB,
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XEnumBcd.C",
		Target:      XEnumBcdC,
		SourceLabel: "XEnumBcd.C",
		Source:      XEnumBcdC,
	},
	{
		Label:       "Full",
		TargetLabel: "XEnumBcd.C",
		Target:      XEnumBcdC,
		SourceLabel: "\"C\"",
		Source:      "C",
	},
	{
		Label:       "Full",
		TargetLabel: "XEnumBcd.C",
		Target:      XEnumBcdC,
		SourceLabel: "XString(\"C\")",
		Source:      XString("C"),
	},
	{
		Label:       "Full",
		TargetLabel: "XEnumBcd.C",
		Target:      XEnumBcdC,
		SourceLabel: "XEnumAbc.C",
		Source:      XEnumAbcC,
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XEnumBcd.D",
		Target:      XEnumBcdD,
		SourceLabel: "XEnumBcd.D",
		Source:      XEnumBcdD,
	},
	{
		Label:       "Full",
		TargetLabel: "XEnumBcd.D",
		Target:      XEnumBcdD,
		SourceLabel: "\"D\"",
		Source:      "D",
	},
	{
		Label:       "Full",
		TargetLabel: "XEnumBcd.D",
		Target:      XEnumBcdD,
		SourceLabel: "XString(\"D\")",
		Source:      XString("D"),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructEmpty{}",
		Target:      XStructEmpty{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructEmpty{}",
		Target:      XStructEmpty{},
		SourceLabel: "XStructDepth1_XEnumAbc{}",
		Source:      XStructDepth1_XEnumAbc{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructEmpty{}",
		Target:      XStructEmpty{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XNamedError{}",
		Target:      XNamedError{},
		SourceLabel: "XNamedError{}",
		Source:      XNamedError{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XNamedError{}",
		Target:      XNamedError{},
		SourceLabel: "?XNamedError{}",
		Source:      &XNamedError{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XNamedError{}",
		Target:      XNamedError{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XNamedError{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: XNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "XNamedError{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: XNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XNamedError{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: XNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "error{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: verror.FromWire(&vdl.WireError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XNamedError{Id: \"deΔΘΠΣΦ王\", Msg: \"ΘΠΣΦ王\"}",
		Target: XNamedError{
			Id:  "deΔΘΠΣΦ王",
			Msg: "ΘΠΣΦ王",
		},
		SourceLabel: "XNamedError{Id: \"deΔΘΠΣΦ王\", Msg: \"ΘΠΣΦ王\"}",
		Source: XNamedError{
			Id:  "deΔΘΠΣΦ王",
			Msg: "ΘΠΣΦ王",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XNamedError{Id: \"deΔΘΠΣΦ王\", Msg: \"ΘΠΣΦ王\"}",
		Target: XNamedError{
			Id:  "deΔΘΠΣΦ王",
			Msg: "ΘΠΣΦ王",
		},
		SourceLabel: "error{Id: \"deΔΘΠΣΦ王\", Msg: \"ΘΠΣΦ王\"}",
		Source: verror.FromWire(&vdl.WireError{
			Id:  "deΔΘΠΣΦ王",
			Msg: "ΘΠΣΦ王",
		}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUint16(0)",
		Target:      XUint16(0),
		SourceLabel: "XUint16(0)",
		Source:      XUint16(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUint16(0)",
		Target:      XUint16(0),
		SourceLabel: "int16(0)",
		Source:      int16(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUint16(0)",
		Target:      XUint16(0),
		SourceLabel: "XFloat64(0)",
		Source:      XFloat64(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "XUint16(65535)",
		Target:      XUint16(65535),
		SourceLabel: "XUint16(65535)",
		Source:      XUint16(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "XUint16(65535)",
		Target:      XUint16(65535),
		SourceLabel: "XUint32(65535)",
		Source:      XUint32(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "XUint16(65535)",
		Target:      XUint16(65535),
		SourceLabel: "XUint64(65535)",
		Source:      XUint64(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "XUint16(65535)",
		Target:      XUint16(65535),
		SourceLabel: "XInt32(65535)",
		Source:      XInt32(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "XUint16(65535)",
		Target:      XUint16(65535),
		SourceLabel: "XInt64(65535)",
		Source:      XInt64(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "XUint16(65535)",
		Target:      XUint16(65535),
		SourceLabel: "XFloat32(65535)",
		Source:      XFloat32(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "XUint16(65535)",
		Target:      XUint16(65535),
		SourceLabel: "XFloat64(65535)",
		Source:      XFloat64(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "XUint16(65535)",
		Target:      XUint16(65535),
		SourceLabel: "uint16(65535)",
		Source:      uint16(65535),
	},
	{
		Label:       "+Max",
		TargetLabel: "XUint16(65535)",
		Target:      XUint16(65535),
		SourceLabel: "float32(65535)",
		Source:      float32(65535),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "XUint16(1)",
		Target:      XUint16(1),
		SourceLabel: "XUint16(1)",
		Source:      XUint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint16(1)",
		Target:      XUint16(1),
		SourceLabel: "XByte(1)",
		Source:      XByte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint16(1)",
		Target:      XUint16(1),
		SourceLabel: "XUint32(1)",
		Source:      XUint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint16(1)",
		Target:      XUint16(1),
		SourceLabel: "XUint64(1)",
		Source:      XUint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint16(1)",
		Target:      XUint16(1),
		SourceLabel: "XInt8(1)",
		Source:      XInt8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint16(1)",
		Target:      XUint16(1),
		SourceLabel: "XInt16(1)",
		Source:      XInt16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint16(1)",
		Target:      XUint16(1),
		SourceLabel: "XInt32(1)",
		Source:      XInt32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint16(1)",
		Target:      XUint16(1),
		SourceLabel: "XInt64(1)",
		Source:      XInt64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint16(1)",
		Target:      XUint16(1),
		SourceLabel: "XFloat32(1)",
		Source:      XFloat32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint16(1)",
		Target:      XUint16(1),
		SourceLabel: "XFloat64(1)",
		Source:      XFloat64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint16(1)",
		Target:      XUint16(1),
		SourceLabel: "float64(1)",
		Source:      float64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint16(1)",
		Target:      XUint16(1),
		SourceLabel: "float32(1)",
		Source:      float32(1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUint16(123)",
		Target:      XUint16(123),
		SourceLabel: "XUint16(123)",
		Source:      XUint16(123),
	},
	{
		Label:       "Full",
		TargetLabel: "XUint16(123)",
		Target:      XUint16(123),
		SourceLabel: "float32(123)",
		Source:      float32(123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUint16(45577)",
		Target:      XUint16(45577),
		SourceLabel: "XUint16(45577)",
		Source:      XUint16(45577),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUint16(45577)",
		Target:      XUint16(45577),
		SourceLabel: "uint64(45577)",
		Source:      uint64(45577),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUint32(0)",
		Target:      XUint32(0),
		SourceLabel: "XUint32(0)",
		Source:      XUint32(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUint32(0)",
		Target:      XUint32(0),
		SourceLabel: "int16(0)",
		Source:      int16(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUint32(0)",
		Target:      XUint32(0),
		SourceLabel: "XInt8(0)",
		Source:      XInt8(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "XUint32(4294967295)",
		Target:      XUint32(4294967295),
		SourceLabel: "XUint32(4294967295)",
		Source:      XUint32(4294967295),
	},
	{
		Label:       "+Max",
		TargetLabel: "XUint32(4294967295)",
		Target:      XUint32(4294967295),
		SourceLabel: "XUint64(4294967295)",
		Source:      XUint64(4294967295),
	},
	{
		Label:       "+Max",
		TargetLabel: "XUint32(4294967295)",
		Target:      XUint32(4294967295),
		SourceLabel: "XInt64(4294967295)",
		Source:      XInt64(4294967295),
	},
	{
		Label:       "+Max",
		TargetLabel: "XUint32(4294967295)",
		Target:      XUint32(4294967295),
		SourceLabel: "XFloat64(4.294967295e+09)",
		Source:      XFloat64(4.294967295e+09),
	},
	{
		Label:       "+Max",
		TargetLabel: "XUint32(4294967295)",
		Target:      XUint32(4294967295),
		SourceLabel: "uint64(4294967295)",
		Source:      uint64(4294967295),
	},
	{
		Label:       "+Max",
		TargetLabel: "XUint32(4294967295)",
		Target:      XUint32(4294967295),
		SourceLabel: "uint32(4294967295)",
		Source:      uint32(4294967295),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "XUint32(1)",
		Target:      XUint32(1),
		SourceLabel: "XUint32(1)",
		Source:      XUint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint32(1)",
		Target:      XUint32(1),
		SourceLabel: "XByte(1)",
		Source:      XByte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint32(1)",
		Target:      XUint32(1),
		SourceLabel: "XUint16(1)",
		Source:      XUint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint32(1)",
		Target:      XUint32(1),
		SourceLabel: "XUint64(1)",
		Source:      XUint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint32(1)",
		Target:      XUint32(1),
		SourceLabel: "XInt8(1)",
		Source:      XInt8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint32(1)",
		Target:      XUint32(1),
		SourceLabel: "XInt16(1)",
		Source:      XInt16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint32(1)",
		Target:      XUint32(1),
		SourceLabel: "XInt32(1)",
		Source:      XInt32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint32(1)",
		Target:      XUint32(1),
		SourceLabel: "XInt64(1)",
		Source:      XInt64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint32(1)",
		Target:      XUint32(1),
		SourceLabel: "XFloat32(1)",
		Source:      XFloat32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint32(1)",
		Target:      XUint32(1),
		SourceLabel: "XFloat64(1)",
		Source:      XFloat64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint32(1)",
		Target:      XUint32(1),
		SourceLabel: "byte(1)",
		Source:      byte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint32(1)",
		Target:      XUint32(1),
		SourceLabel: "uint32(1)",
		Source:      uint32(1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUint32(123)",
		Target:      XUint32(123),
		SourceLabel: "XUint32(123)",
		Source:      XUint32(123),
	},
	{
		Label:       "Full",
		TargetLabel: "XUint32(123)",
		Target:      XUint32(123),
		SourceLabel: "int8(123)",
		Source:      int8(123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUint32(3673933973)",
		Target:      XUint32(3673933973),
		SourceLabel: "XUint32(3673933973)",
		Source:      XUint32(3673933973),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUint32(3673933973)",
		Target:      XUint32(3673933973),
		SourceLabel: "XFloat64(3.673933973e+09)",
		Source:      XFloat64(3.673933973e+09),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUint64(0)",
		Target:      XUint64(0),
		SourceLabel: "XUint64(0)",
		Source:      XUint64(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUint64(0)",
		Target:      XUint64(0),
		SourceLabel: "uint16(0)",
		Source:      uint16(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUint64(0)",
		Target:      XUint64(0),
		SourceLabel: "XInt16(0)",
		Source:      XInt16(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "XUint64(18446744073709551615)",
		Target:      XUint64(18446744073709551615),
		SourceLabel: "XUint64(18446744073709551615)",
		Source:      XUint64(18446744073709551615),
	},
	{
		Label:       "+Max",
		TargetLabel: "XUint64(18446744073709551615)",
		Target:      XUint64(18446744073709551615),
		SourceLabel: "uint64(18446744073709551615)",
		Source:      uint64(18446744073709551615),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "XUint64(1)",
		Target:      XUint64(1),
		SourceLabel: "XUint64(1)",
		Source:      XUint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint64(1)",
		Target:      XUint64(1),
		SourceLabel: "XByte(1)",
		Source:      XByte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint64(1)",
		Target:      XUint64(1),
		SourceLabel: "XUint16(1)",
		Source:      XUint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint64(1)",
		Target:      XUint64(1),
		SourceLabel: "XUint32(1)",
		Source:      XUint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint64(1)",
		Target:      XUint64(1),
		SourceLabel: "XInt8(1)",
		Source:      XInt8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint64(1)",
		Target:      XUint64(1),
		SourceLabel: "XInt16(1)",
		Source:      XInt16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint64(1)",
		Target:      XUint64(1),
		SourceLabel: "XInt32(1)",
		Source:      XInt32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint64(1)",
		Target:      XUint64(1),
		SourceLabel: "XInt64(1)",
		Source:      XInt64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint64(1)",
		Target:      XUint64(1),
		SourceLabel: "XFloat32(1)",
		Source:      XFloat32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint64(1)",
		Target:      XUint64(1),
		SourceLabel: "XFloat64(1)",
		Source:      XFloat64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint64(1)",
		Target:      XUint64(1),
		SourceLabel: "int32(1)",
		Source:      int32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XUint64(1)",
		Target:      XUint64(1),
		SourceLabel: "float64(1)",
		Source:      float64(1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUint64(123)",
		Target:      XUint64(123),
		SourceLabel: "XUint64(123)",
		Source:      XUint64(123),
	},
	{
		Label:       "Full",
		TargetLabel: "XUint64(123)",
		Target:      XUint64(123),
		SourceLabel: "XFloat64(123)",
		Source:      XFloat64(123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUint64(3549134787386436119)",
		Target:      XUint64(3549134787386436119),
		SourceLabel: "XUint64(3549134787386436119)",
		Source:      XUint64(3549134787386436119),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUint64(3549134787386436119)",
		Target:      XUint64(3549134787386436119),
		SourceLabel: "int64(3549134787386436119)",
		Source:      int64(3549134787386436119),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XInt8(0)",
		Target:      XInt8(0),
		SourceLabel: "XInt8(0)",
		Source:      XInt8(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "XInt8(0)",
		Target:      XInt8(0),
		SourceLabel: "int64(0)",
		Source:      int64(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "XInt8(0)",
		Target:      XInt8(0),
		SourceLabel: "int16(0)",
		Source:      int16(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "XInt8(127)",
		Target:      XInt8(127),
		SourceLabel: "XInt8(127)",
		Source:      XInt8(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt8(127)",
		Target:      XInt8(127),
		SourceLabel: "XByte(127)",
		Source:      XByte(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt8(127)",
		Target:      XInt8(127),
		SourceLabel: "XUint16(127)",
		Source:      XUint16(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt8(127)",
		Target:      XInt8(127),
		SourceLabel: "XUint32(127)",
		Source:      XUint32(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt8(127)",
		Target:      XInt8(127),
		SourceLabel: "XUint64(127)",
		Source:      XUint64(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt8(127)",
		Target:      XInt8(127),
		SourceLabel: "XInt16(127)",
		Source:      XInt16(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt8(127)",
		Target:      XInt8(127),
		SourceLabel: "XInt32(127)",
		Source:      XInt32(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt8(127)",
		Target:      XInt8(127),
		SourceLabel: "XInt64(127)",
		Source:      XInt64(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt8(127)",
		Target:      XInt8(127),
		SourceLabel: "XFloat32(127)",
		Source:      XFloat32(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt8(127)",
		Target:      XInt8(127),
		SourceLabel: "XFloat64(127)",
		Source:      XFloat64(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt8(127)",
		Target:      XInt8(127),
		SourceLabel: "uint16(127)",
		Source:      uint16(127),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt8(127)",
		Target:      XInt8(127),
		SourceLabel: "int64(127)",
		Source:      int64(127),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "XInt8(1)",
		Target:      XInt8(1),
		SourceLabel: "XInt8(1)",
		Source:      XInt8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt8(1)",
		Target:      XInt8(1),
		SourceLabel: "XByte(1)",
		Source:      XByte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt8(1)",
		Target:      XInt8(1),
		SourceLabel: "XUint16(1)",
		Source:      XUint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt8(1)",
		Target:      XInt8(1),
		SourceLabel: "XUint32(1)",
		Source:      XUint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt8(1)",
		Target:      XInt8(1),
		SourceLabel: "XUint64(1)",
		Source:      XUint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt8(1)",
		Target:      XInt8(1),
		SourceLabel: "XInt16(1)",
		Source:      XInt16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt8(1)",
		Target:      XInt8(1),
		SourceLabel: "XInt32(1)",
		Source:      XInt32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt8(1)",
		Target:      XInt8(1),
		SourceLabel: "XInt64(1)",
		Source:      XInt64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt8(1)",
		Target:      XInt8(1),
		SourceLabel: "XFloat32(1)",
		Source:      XFloat32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt8(1)",
		Target:      XInt8(1),
		SourceLabel: "XFloat64(1)",
		Source:      XFloat64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt8(1)",
		Target:      XInt8(1),
		SourceLabel: "uint64(1)",
		Source:      uint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt8(1)",
		Target:      XInt8(1),
		SourceLabel: "float64(1)",
		Source:      float64(1),
	},
	{
		IsCanonical: true,
		Label:       "-Max",
		TargetLabel: "XInt8(-128)",
		Target:      XInt8(-128),
		SourceLabel: "XInt8(-128)",
		Source:      XInt8(-128),
	},
	{
		Label:       "-Max",
		TargetLabel: "XInt8(-128)",
		Target:      XInt8(-128),
		SourceLabel: "XInt16(-128)",
		Source:      XInt16(-128),
	},
	{
		Label:       "-Max",
		TargetLabel: "XInt8(-128)",
		Target:      XInt8(-128),
		SourceLabel: "XInt32(-128)",
		Source:      XInt32(-128),
	},
	{
		Label:       "-Max",
		TargetLabel: "XInt8(-128)",
		Target:      XInt8(-128),
		SourceLabel: "XInt64(-128)",
		Source:      XInt64(-128),
	},
	{
		Label:       "-Max",
		TargetLabel: "XInt8(-128)",
		Target:      XInt8(-128),
		SourceLabel: "XFloat32(-128)",
		Source:      XFloat32(-128),
	},
	{
		Label:       "-Max",
		TargetLabel: "XInt8(-128)",
		Target:      XInt8(-128),
		SourceLabel: "XFloat64(-128)",
		Source:      XFloat64(-128),
	},
	{
		Label:       "-Max",
		TargetLabel: "XInt8(-128)",
		Target:      XInt8(-128),
		SourceLabel: "float64(-128)",
		Source:      float64(-128),
	},
	{
		Label:       "-Max",
		TargetLabel: "XInt8(-128)",
		Target:      XInt8(-128),
		SourceLabel: "int64(-128)",
		Source:      int64(-128),
	},
	{
		IsCanonical: true,
		Label:       "-Min",
		TargetLabel: "XInt8(-1)",
		Target:      XInt8(-1),
		SourceLabel: "XInt8(-1)",
		Source:      XInt8(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt8(-1)",
		Target:      XInt8(-1),
		SourceLabel: "XInt16(-1)",
		Source:      XInt16(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt8(-1)",
		Target:      XInt8(-1),
		SourceLabel: "XInt32(-1)",
		Source:      XInt32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt8(-1)",
		Target:      XInt8(-1),
		SourceLabel: "XInt64(-1)",
		Source:      XInt64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt8(-1)",
		Target:      XInt8(-1),
		SourceLabel: "XFloat32(-1)",
		Source:      XFloat32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt8(-1)",
		Target:      XInt8(-1),
		SourceLabel: "XFloat64(-1)",
		Source:      XFloat64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt8(-1)",
		Target:      XInt8(-1),
		SourceLabel: "int16(-1)",
		Source:      int16(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt8(-1)",
		Target:      XInt8(-1),
		SourceLabel: "int32(-1)",
		Source:      int32(-1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XInt8(-123)",
		Target:      XInt8(-123),
		SourceLabel: "XInt8(-123)",
		Source:      XInt8(-123),
	},
	{
		Label:       "Full",
		TargetLabel: "XInt8(-123)",
		Target:      XInt8(-123),
		SourceLabel: "XFloat32(-123)",
		Source:      XFloat32(-123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XInt8(-32)",
		Target:      XInt8(-32),
		SourceLabel: "XInt8(-32)",
		Source:      XInt8(-32),
	},
	{
		Label:       "Random0",
		TargetLabel: "XInt8(-32)",
		Target:      XInt8(-32),
		SourceLabel: "int32(-32)",
		Source:      int32(-32),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XInt16(0)",
		Target:      XInt16(0),
		SourceLabel: "XInt16(0)",
		Source:      XInt16(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "XInt16(0)",
		Target:      XInt16(0),
		SourceLabel: "float32(0)",
		Source:      float32(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "XInt16(0)",
		Target:      XInt16(0),
		SourceLabel: "XByte(0)",
		Source:      XByte(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "XInt16(32767)",
		Target:      XInt16(32767),
		SourceLabel: "XInt16(32767)",
		Source:      XInt16(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt16(32767)",
		Target:      XInt16(32767),
		SourceLabel: "XUint16(32767)",
		Source:      XUint16(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt16(32767)",
		Target:      XInt16(32767),
		SourceLabel: "XUint32(32767)",
		Source:      XUint32(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt16(32767)",
		Target:      XInt16(32767),
		SourceLabel: "XUint64(32767)",
		Source:      XUint64(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt16(32767)",
		Target:      XInt16(32767),
		SourceLabel: "XInt32(32767)",
		Source:      XInt32(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt16(32767)",
		Target:      XInt16(32767),
		SourceLabel: "XInt64(32767)",
		Source:      XInt64(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt16(32767)",
		Target:      XInt16(32767),
		SourceLabel: "XFloat32(32767)",
		Source:      XFloat32(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt16(32767)",
		Target:      XInt16(32767),
		SourceLabel: "XFloat64(32767)",
		Source:      XFloat64(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt16(32767)",
		Target:      XInt16(32767),
		SourceLabel: "uint16(32767)",
		Source:      uint16(32767),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt16(32767)",
		Target:      XInt16(32767),
		SourceLabel: "uint64(32767)",
		Source:      uint64(32767),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "XInt16(1)",
		Target:      XInt16(1),
		SourceLabel: "XInt16(1)",
		Source:      XInt16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt16(1)",
		Target:      XInt16(1),
		SourceLabel: "XByte(1)",
		Source:      XByte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt16(1)",
		Target:      XInt16(1),
		SourceLabel: "XUint16(1)",
		Source:      XUint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt16(1)",
		Target:      XInt16(1),
		SourceLabel: "XUint32(1)",
		Source:      XUint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt16(1)",
		Target:      XInt16(1),
		SourceLabel: "XUint64(1)",
		Source:      XUint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt16(1)",
		Target:      XInt16(1),
		SourceLabel: "XInt8(1)",
		Source:      XInt8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt16(1)",
		Target:      XInt16(1),
		SourceLabel: "XInt32(1)",
		Source:      XInt32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt16(1)",
		Target:      XInt16(1),
		SourceLabel: "XInt64(1)",
		Source:      XInt64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt16(1)",
		Target:      XInt16(1),
		SourceLabel: "XFloat32(1)",
		Source:      XFloat32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt16(1)",
		Target:      XInt16(1),
		SourceLabel: "XFloat64(1)",
		Source:      XFloat64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt16(1)",
		Target:      XInt16(1),
		SourceLabel: "uint16(1)",
		Source:      uint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt16(1)",
		Target:      XInt16(1),
		SourceLabel: "float64(1)",
		Source:      float64(1),
	},
	{
		IsCanonical: true,
		Label:       "-Max",
		TargetLabel: "XInt16(-32768)",
		Target:      XInt16(-32768),
		SourceLabel: "XInt16(-32768)",
		Source:      XInt16(-32768),
	},
	{
		Label:       "-Max",
		TargetLabel: "XInt16(-32768)",
		Target:      XInt16(-32768),
		SourceLabel: "XInt32(-32768)",
		Source:      XInt32(-32768),
	},
	{
		Label:       "-Max",
		TargetLabel: "XInt16(-32768)",
		Target:      XInt16(-32768),
		SourceLabel: "XInt64(-32768)",
		Source:      XInt64(-32768),
	},
	{
		Label:       "-Max",
		TargetLabel: "XInt16(-32768)",
		Target:      XInt16(-32768),
		SourceLabel: "XFloat32(-32768)",
		Source:      XFloat32(-32768),
	},
	{
		Label:       "-Max",
		TargetLabel: "XInt16(-32768)",
		Target:      XInt16(-32768),
		SourceLabel: "XFloat64(-32768)",
		Source:      XFloat64(-32768),
	},
	{
		Label:       "-Max",
		TargetLabel: "XInt16(-32768)",
		Target:      XInt16(-32768),
		SourceLabel: "float32(-32768)",
		Source:      float32(-32768),
	},
	{
		Label:       "-Max",
		TargetLabel: "XInt16(-32768)",
		Target:      XInt16(-32768),
		SourceLabel: "int16(-32768)",
		Source:      int16(-32768),
	},
	{
		IsCanonical: true,
		Label:       "-Min",
		TargetLabel: "XInt16(-1)",
		Target:      XInt16(-1),
		SourceLabel: "XInt16(-1)",
		Source:      XInt16(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt16(-1)",
		Target:      XInt16(-1),
		SourceLabel: "XInt8(-1)",
		Source:      XInt8(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt16(-1)",
		Target:      XInt16(-1),
		SourceLabel: "XInt32(-1)",
		Source:      XInt32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt16(-1)",
		Target:      XInt16(-1),
		SourceLabel: "XInt64(-1)",
		Source:      XInt64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt16(-1)",
		Target:      XInt16(-1),
		SourceLabel: "XFloat32(-1)",
		Source:      XFloat32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt16(-1)",
		Target:      XInt16(-1),
		SourceLabel: "XFloat64(-1)",
		Source:      XFloat64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt16(-1)",
		Target:      XInt16(-1),
		SourceLabel: "int64(-1)",
		Source:      int64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt16(-1)",
		Target:      XInt16(-1),
		SourceLabel: "float32(-1)",
		Source:      float32(-1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XInt16(-123)",
		Target:      XInt16(-123),
		SourceLabel: "XInt16(-123)",
		Source:      XInt16(-123),
	},
	{
		Label:       "Full",
		TargetLabel: "XInt16(-123)",
		Target:      XInt16(-123),
		SourceLabel: "float32(-123)",
		Source:      float32(-123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XInt16(-4553)",
		Target:      XInt16(-4553),
		SourceLabel: "XInt16(-4553)",
		Source:      XInt16(-4553),
	},
	{
		Label:       "Random0",
		TargetLabel: "XInt16(-4553)",
		Target:      XInt16(-4553),
		SourceLabel: "int64(-4553)",
		Source:      int64(-4553),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XInt32(0)",
		Target:      XInt32(0),
		SourceLabel: "XInt32(0)",
		Source:      XInt32(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "XInt32(0)",
		Target:      XInt32(0),
		SourceLabel: "XUint64(0)",
		Source:      XUint64(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "XInt32(0)",
		Target:      XInt32(0),
		SourceLabel: "XUint32(0)",
		Source:      XUint32(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "XInt32(2147483647)",
		Target:      XInt32(2147483647),
		SourceLabel: "XInt32(2147483647)",
		Source:      XInt32(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt32(2147483647)",
		Target:      XInt32(2147483647),
		SourceLabel: "XUint32(2147483647)",
		Source:      XUint32(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt32(2147483647)",
		Target:      XInt32(2147483647),
		SourceLabel: "XUint64(2147483647)",
		Source:      XUint64(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt32(2147483647)",
		Target:      XInt32(2147483647),
		SourceLabel: "XInt64(2147483647)",
		Source:      XInt64(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt32(2147483647)",
		Target:      XInt32(2147483647),
		SourceLabel: "XFloat64(2.147483647e+09)",
		Source:      XFloat64(2.147483647e+09),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt32(2147483647)",
		Target:      XInt32(2147483647),
		SourceLabel: "uint64(2147483647)",
		Source:      uint64(2147483647),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt32(2147483647)",
		Target:      XInt32(2147483647),
		SourceLabel: "int64(2147483647)",
		Source:      int64(2147483647),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "XInt32(1)",
		Target:      XInt32(1),
		SourceLabel: "XInt32(1)",
		Source:      XInt32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt32(1)",
		Target:      XInt32(1),
		SourceLabel: "XByte(1)",
		Source:      XByte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt32(1)",
		Target:      XInt32(1),
		SourceLabel: "XUint16(1)",
		Source:      XUint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt32(1)",
		Target:      XInt32(1),
		SourceLabel: "XUint32(1)",
		Source:      XUint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt32(1)",
		Target:      XInt32(1),
		SourceLabel: "XUint64(1)",
		Source:      XUint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt32(1)",
		Target:      XInt32(1),
		SourceLabel: "XInt8(1)",
		Source:      XInt8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt32(1)",
		Target:      XInt32(1),
		SourceLabel: "XInt16(1)",
		Source:      XInt16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt32(1)",
		Target:      XInt32(1),
		SourceLabel: "XInt64(1)",
		Source:      XInt64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt32(1)",
		Target:      XInt32(1),
		SourceLabel: "XFloat32(1)",
		Source:      XFloat32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt32(1)",
		Target:      XInt32(1),
		SourceLabel: "XFloat64(1)",
		Source:      XFloat64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt32(1)",
		Target:      XInt32(1),
		SourceLabel: "int16(1)",
		Source:      int16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt32(1)",
		Target:      XInt32(1),
		SourceLabel: "int64(1)",
		Source:      int64(1),
	},
	{
		IsCanonical: true,
		Label:       "-Max",
		TargetLabel: "XInt32(-2147483648)",
		Target:      XInt32(-2147483648),
		SourceLabel: "XInt32(-2147483648)",
		Source:      XInt32(-2147483648),
	},
	{
		Label:       "-Max",
		TargetLabel: "XInt32(-2147483648)",
		Target:      XInt32(-2147483648),
		SourceLabel: "XInt64(-2147483648)",
		Source:      XInt64(-2147483648),
	},
	{
		Label:       "-Max",
		TargetLabel: "XInt32(-2147483648)",
		Target:      XInt32(-2147483648),
		SourceLabel: "XFloat64(-2.147483648e+09)",
		Source:      XFloat64(-2.147483648e+09),
	},
	{
		Label:       "-Max",
		TargetLabel: "XInt32(-2147483648)",
		Target:      XInt32(-2147483648),
		SourceLabel: "int64(-2147483648)",
		Source:      int64(-2147483648),
	},
	{
		Label:       "-Max",
		TargetLabel: "XInt32(-2147483648)",
		Target:      XInt32(-2147483648),
		SourceLabel: "int32(-2147483648)",
		Source:      int32(-2147483648),
	},
	{
		IsCanonical: true,
		Label:       "-Min",
		TargetLabel: "XInt32(-1)",
		Target:      XInt32(-1),
		SourceLabel: "XInt32(-1)",
		Source:      XInt32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt32(-1)",
		Target:      XInt32(-1),
		SourceLabel: "XInt8(-1)",
		Source:      XInt8(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt32(-1)",
		Target:      XInt32(-1),
		SourceLabel: "XInt16(-1)",
		Source:      XInt16(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt32(-1)",
		Target:      XInt32(-1),
		SourceLabel: "XInt64(-1)",
		Source:      XInt64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt32(-1)",
		Target:      XInt32(-1),
		SourceLabel: "XFloat32(-1)",
		Source:      XFloat32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt32(-1)",
		Target:      XInt32(-1),
		SourceLabel: "XFloat64(-1)",
		Source:      XFloat64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt32(-1)",
		Target:      XInt32(-1),
		SourceLabel: "int64(-1)",
		Source:      int64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt32(-1)",
		Target:      XInt32(-1),
		SourceLabel: "int8(-1)",
		Source:      int8(-1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XInt32(-123)",
		Target:      XInt32(-123),
		SourceLabel: "XInt32(-123)",
		Source:      XInt32(-123),
	},
	{
		Label:       "Full",
		TargetLabel: "XInt32(-123)",
		Target:      XInt32(-123),
		SourceLabel: "XInt8(-123)",
		Source:      XInt8(-123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XInt32(-892159462)",
		Target:      XInt32(-892159462),
		SourceLabel: "XInt32(-892159462)",
		Source:      XInt32(-892159462),
	},
	{
		Label:       "Random0",
		TargetLabel: "XInt32(-892159462)",
		Target:      XInt32(-892159462),
		SourceLabel: "XInt64(-892159462)",
		Source:      XInt64(-892159462),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XInt64(0)",
		Target:      XInt64(0),
		SourceLabel: "XInt64(0)",
		Source:      XInt64(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "XInt64(0)",
		Target:      XInt64(0),
		SourceLabel: "XFloat64(0)",
		Source:      XFloat64(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "XInt64(0)",
		Target:      XInt64(0),
		SourceLabel: "int8(0)",
		Source:      int8(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "XInt64(9223372036854775807)",
		Target:      XInt64(9223372036854775807),
		SourceLabel: "XInt64(9223372036854775807)",
		Source:      XInt64(9223372036854775807),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt64(9223372036854775807)",
		Target:      XInt64(9223372036854775807),
		SourceLabel: "XUint64(9223372036854775807)",
		Source:      XUint64(9223372036854775807),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt64(9223372036854775807)",
		Target:      XInt64(9223372036854775807),
		SourceLabel: "uint64(9223372036854775807)",
		Source:      uint64(9223372036854775807),
	},
	{
		Label:       "+Max",
		TargetLabel: "XInt64(9223372036854775807)",
		Target:      XInt64(9223372036854775807),
		SourceLabel: "int64(9223372036854775807)",
		Source:      int64(9223372036854775807),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "XInt64(1)",
		Target:      XInt64(1),
		SourceLabel: "XInt64(1)",
		Source:      XInt64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt64(1)",
		Target:      XInt64(1),
		SourceLabel: "XByte(1)",
		Source:      XByte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt64(1)",
		Target:      XInt64(1),
		SourceLabel: "XUint16(1)",
		Source:      XUint16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt64(1)",
		Target:      XInt64(1),
		SourceLabel: "XUint32(1)",
		Source:      XUint32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt64(1)",
		Target:      XInt64(1),
		SourceLabel: "XUint64(1)",
		Source:      XUint64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt64(1)",
		Target:      XInt64(1),
		SourceLabel: "XInt8(1)",
		Source:      XInt8(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt64(1)",
		Target:      XInt64(1),
		SourceLabel: "XInt16(1)",
		Source:      XInt16(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt64(1)",
		Target:      XInt64(1),
		SourceLabel: "XInt32(1)",
		Source:      XInt32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt64(1)",
		Target:      XInt64(1),
		SourceLabel: "XFloat32(1)",
		Source:      XFloat32(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt64(1)",
		Target:      XInt64(1),
		SourceLabel: "XFloat64(1)",
		Source:      XFloat64(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt64(1)",
		Target:      XInt64(1),
		SourceLabel: "byte(1)",
		Source:      byte(1),
	},
	{
		Label:       "+Min",
		TargetLabel: "XInt64(1)",
		Target:      XInt64(1),
		SourceLabel: "float64(1)",
		Source:      float64(1),
	},
	{
		IsCanonical: true,
		Label:       "-Max",
		TargetLabel: "XInt64(-9223372036854775808)",
		Target:      XInt64(-9223372036854775808),
		SourceLabel: "XInt64(-9223372036854775808)",
		Source:      XInt64(-9223372036854775808),
	},
	{
		Label:       "-Max",
		TargetLabel: "XInt64(-9223372036854775808)",
		Target:      XInt64(-9223372036854775808),
		SourceLabel: "int64(-9223372036854775808)",
		Source:      int64(-9223372036854775808),
	},
	{
		IsCanonical: true,
		Label:       "-Min",
		TargetLabel: "XInt64(-1)",
		Target:      XInt64(-1),
		SourceLabel: "XInt64(-1)",
		Source:      XInt64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt64(-1)",
		Target:      XInt64(-1),
		SourceLabel: "XInt8(-1)",
		Source:      XInt8(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt64(-1)",
		Target:      XInt64(-1),
		SourceLabel: "XInt16(-1)",
		Source:      XInt16(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt64(-1)",
		Target:      XInt64(-1),
		SourceLabel: "XInt32(-1)",
		Source:      XInt32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt64(-1)",
		Target:      XInt64(-1),
		SourceLabel: "XFloat32(-1)",
		Source:      XFloat32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt64(-1)",
		Target:      XInt64(-1),
		SourceLabel: "XFloat64(-1)",
		Source:      XFloat64(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt64(-1)",
		Target:      XInt64(-1),
		SourceLabel: "int32(-1)",
		Source:      int32(-1),
	},
	{
		Label:       "-Min",
		TargetLabel: "XInt64(-1)",
		Target:      XInt64(-1),
		SourceLabel: "float32(-1)",
		Source:      float32(-1),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XInt64(-123)",
		Target:      XInt64(-123),
		SourceLabel: "XInt64(-123)",
		Source:      XInt64(-123),
	},
	{
		Label:       "Full",
		TargetLabel: "XInt64(-123)",
		Target:      XInt64(-123),
		SourceLabel: "XInt16(-123)",
		Source:      XInt16(-123),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XInt64(-2178964085458097277)",
		Target:      XInt64(-2178964085458097277),
		SourceLabel: "XInt64(-2178964085458097277)",
		Source:      XInt64(-2178964085458097277),
	},
	{
		Label:       "Random0",
		TargetLabel: "XInt64(-2178964085458097277)",
		Target:      XInt64(-2178964085458097277),
		SourceLabel: "int64(-2178964085458097277)",
		Source:      int64(-2178964085458097277),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XFloat32(0)",
		Target:      XFloat32(0),
		SourceLabel: "XFloat32(0)",
		Source:      XFloat32(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "XFloat32(0)",
		Target:      XFloat32(0),
		SourceLabel: "int8(0)",
		Source:      int8(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "XFloat32(0)",
		Target:      XFloat32(0),
		SourceLabel: "XUint32(0)",
		Source:      XUint32(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "XFloat32(1.7014117e+38)",
		Target:      XFloat32(1.7014117e+38),
		SourceLabel: "XFloat32(1.7014117e+38)",
		Source:      XFloat32(1.7014117e+38),
	},
	{
		Label:       "+Max",
		TargetLabel: "XFloat32(1.7014117e+38)",
		Target:      XFloat32(1.7014117e+38),
		SourceLabel: "XFloat64(1.7014117331926443e+38)",
		Source:      XFloat64(1.7014117331926443e+38),
	},
	{
		Label:       "+Max",
		TargetLabel: "XFloat32(1.7014117e+38)",
		Target:      XFloat32(1.7014117e+38),
		SourceLabel: "float64(1.7014117331926443e+38)",
		Source:      float64(1.7014117331926443e+38),
	},
	{
		Label:       "+Max",
		TargetLabel: "XFloat32(1.7014117e+38)",
		Target:      XFloat32(1.7014117e+38),
		SourceLabel: "float32(1.7014117e+38)",
		Source:      float32(1.7014117e+38),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "XFloat32(1.4e-44)",
		Target:      XFloat32(1.4e-44),
		SourceLabel: "XFloat32(1.4e-44)",
		Source:      XFloat32(1.4e-44),
	},
	{
		Label:       "+Min",
		TargetLabel: "XFloat32(1.4e-44)",
		Target:      XFloat32(1.4e-44),
		SourceLabel: "XFloat64(1.401298464324817e-44)",
		Source:      XFloat64(1.401298464324817e-44),
	},
	{
		Label:       "+Min",
		TargetLabel: "XFloat32(1.4e-44)",
		Target:      XFloat32(1.4e-44),
		SourceLabel: "float64(1.401298464324817e-44)",
		Source:      float64(1.401298464324817e-44),
	},
	{
		Label:       "+Min",
		TargetLabel: "XFloat32(1.4e-44)",
		Target:      XFloat32(1.4e-44),
		SourceLabel: "float32(1.4e-44)",
		Source:      float32(1.4e-44),
	},
	{
		IsCanonical: true,
		Label:       "-Max",
		TargetLabel: "XFloat32(-1.7014117e+38)",
		Target:      XFloat32(-1.7014117e+38),
		SourceLabel: "XFloat32(-1.7014117e+38)",
		Source:      XFloat32(-1.7014117e+38),
	},
	{
		Label:       "-Max",
		TargetLabel: "XFloat32(-1.7014117e+38)",
		Target:      XFloat32(-1.7014117e+38),
		SourceLabel: "XFloat64(-1.7014117331926443e+38)",
		Source:      XFloat64(-1.7014117331926443e+38),
	},
	{
		Label:       "-Max",
		TargetLabel: "XFloat32(-1.7014117e+38)",
		Target:      XFloat32(-1.7014117e+38),
		SourceLabel: "float32(-1.7014117e+38)",
		Source:      float32(-1.7014117e+38),
	},
	{
		Label:       "-Max",
		TargetLabel: "XFloat32(-1.7014117e+38)",
		Target:      XFloat32(-1.7014117e+38),
		SourceLabel: "float64(-1.7014117331926443e+38)",
		Source:      float64(-1.7014117331926443e+38),
	},
	{
		IsCanonical: true,
		Label:       "-Min",
		TargetLabel: "XFloat32(-1.4e-44)",
		Target:      XFloat32(-1.4e-44),
		SourceLabel: "XFloat32(-1.4e-44)",
		Source:      XFloat32(-1.4e-44),
	},
	{
		Label:       "-Min",
		TargetLabel: "XFloat32(-1.4e-44)",
		Target:      XFloat32(-1.4e-44),
		SourceLabel: "XFloat64(-1.401298464324817e-44)",
		Source:      XFloat64(-1.401298464324817e-44),
	},
	{
		Label:       "-Min",
		TargetLabel: "XFloat32(-1.4e-44)",
		Target:      XFloat32(-1.4e-44),
		SourceLabel: "float64(-1.401298464324817e-44)",
		Source:      float64(-1.401298464324817e-44),
	},
	{
		Label:       "-Min",
		TargetLabel: "XFloat32(-1.4e-44)",
		Target:      XFloat32(-1.4e-44),
		SourceLabel: "float32(-1.4e-44)",
		Source:      float32(-1.4e-44),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XFloat32(1.5)",
		Target:      XFloat32(1.5),
		SourceLabel: "XFloat32(1.5)",
		Source:      XFloat32(1.5),
	},
	{
		Label:       "Full",
		TargetLabel: "XFloat32(1.5)",
		Target:      XFloat32(1.5),
		SourceLabel: "float64(1.5)",
		Source:      float64(1.5),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XFloat32(5.382112e+08)",
		Target:      XFloat32(5.382112e+08),
		SourceLabel: "XFloat32(5.382112e+08)",
		Source:      XFloat32(5.382112e+08),
	},
	{
		Label:       "Random0",
		TargetLabel: "XFloat32(5.382112e+08)",
		Target:      XFloat32(5.382112e+08),
		SourceLabel: "float64(5.382111857916099e+08)",
		Source:      float64(5.382111857916099e+08),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XFloat64(0)",
		Target:      XFloat64(0),
		SourceLabel: "XFloat64(0)",
		Source:      XFloat64(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "XFloat64(0)",
		Target:      XFloat64(0),
		SourceLabel: "uint32(0)",
		Source:      uint32(0),
	},
	{
		Label:       "Zero",
		TargetLabel: "XFloat64(0)",
		Target:      XFloat64(0),
		SourceLabel: "XInt64(0)",
		Source:      XInt64(0),
	},
	{
		IsCanonical: true,
		Label:       "+Max",
		TargetLabel: "XFloat64(8.988465674311579e+307)",
		Target:      XFloat64(8.988465674311579e+307),
		SourceLabel: "XFloat64(8.988465674311579e+307)",
		Source:      XFloat64(8.988465674311579e+307),
	},
	{
		Label:       "+Max",
		TargetLabel: "XFloat64(8.988465674311579e+307)",
		Target:      XFloat64(8.988465674311579e+307),
		SourceLabel: "float64(8.988465674311579e+307)",
		Source:      float64(8.988465674311579e+307),
	},
	{
		IsCanonical: true,
		Label:       "+Min",
		TargetLabel: "XFloat64(5e-323)",
		Target:      XFloat64(5e-323),
		SourceLabel: "XFloat64(5e-323)",
		Source:      XFloat64(5e-323),
	},
	{
		Label:       "+Min",
		TargetLabel: "XFloat64(5e-323)",
		Target:      XFloat64(5e-323),
		SourceLabel: "float64(5e-323)",
		Source:      float64(5e-323),
	},
	{
		IsCanonical: true,
		Label:       "-Max",
		TargetLabel: "XFloat64(-8.988465674311579e+307)",
		Target:      XFloat64(-8.988465674311579e+307),
		SourceLabel: "XFloat64(-8.988465674311579e+307)",
		Source:      XFloat64(-8.988465674311579e+307),
	},
	{
		Label:       "-Max",
		TargetLabel: "XFloat64(-8.988465674311579e+307)",
		Target:      XFloat64(-8.988465674311579e+307),
		SourceLabel: "float64(-8.988465674311579e+307)",
		Source:      float64(-8.988465674311579e+307),
	},
	{
		IsCanonical: true,
		Label:       "-Min",
		TargetLabel: "XFloat64(-5e-323)",
		Target:      XFloat64(-5e-323),
		SourceLabel: "XFloat64(-5e-323)",
		Source:      XFloat64(-5e-323),
	},
	{
		Label:       "-Min",
		TargetLabel: "XFloat64(-5e-323)",
		Target:      XFloat64(-5e-323),
		SourceLabel: "float64(-5e-323)",
		Source:      float64(-5e-323),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XFloat64(1.5)",
		Target:      XFloat64(1.5),
		SourceLabel: "XFloat64(1.5)",
		Source:      XFloat64(1.5),
	},
	{
		Label:       "Full",
		TargetLabel: "XFloat64(1.5)",
		Target:      XFloat64(1.5),
		SourceLabel: "XFloat32(1.5)",
		Source:      XFloat32(1.5),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XFloat64(7.828180274585748e+08)",
		Target:      XFloat64(7.828180274585748e+08),
		SourceLabel: "XFloat64(7.828180274585748e+08)",
		Source:      XFloat64(7.828180274585748e+08),
	},
	{
		Label:       "Random0",
		TargetLabel: "XFloat64(7.828180274585748e+08)",
		Target:      XFloat64(7.828180274585748e+08),
		SourceLabel: "float64(7.828180274585748e+08)",
		Source:      float64(7.828180274585748e+08),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "?XStructEmpty(nil)",
		Target:      (*XStructEmpty)(nil),
		SourceLabel: "?XStructEmpty(nil)",
		Source:      (*XStructEmpty)(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "?XStructEmpty(nil)",
		Target:      (*XStructEmpty)(nil),
		SourceLabel: "?XStructDepth1_XEnumBcd(nil)",
		Source:      (*XStructDepth1_XEnumBcd)(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "?XStructEmpty(nil)",
		Target:      (*XStructEmpty)(nil),
		SourceLabel: "?XStructDepth1_XFloat32(nil)",
		Source:      (*XStructDepth1_XFloat32)(nil),
	},
	{
		Label:       "NilAny",
		TargetLabel: "?XStructEmpty(nil)",
		Target:      (*XStructEmpty)(nil),
		SourceLabel: "any(nil)",
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "?XStructEmpty{}",
		Target:      &XStructEmpty{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Full",
		TargetLabel: "?XStructEmpty{}",
		Target:      &XStructEmpty{},
		SourceLabel: "XStructDepth1_Int8{}",
		Source:      XStructDepth1_Int8{},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "?XNamedError(nil)",
		Target:      (*XNamedError)(nil),
		SourceLabel: "?XNamedError(nil)",
		Source:      (*XNamedError)(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "?XNamedError(nil)",
		Target:      (*XNamedError)(nil),
		SourceLabel: "error(nil)",
		Source:      (*verror.E)(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "?XNamedError(nil)",
		Target:      (*XNamedError)(nil),
		SourceLabel: "?XStructEmpty(nil)",
		Source:      (*XStructEmpty)(nil),
	},
	{
		Label:       "NilAny",
		TargetLabel: "?XNamedError(nil)",
		Target:      (*XNamedError)(nil),
		SourceLabel: "any(nil)",
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "?XNamedError{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: &XNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "?XNamedError{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: &XNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "?XNamedError{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: &XNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "error{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: verror.FromWire(&vdl.WireError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "?XNamedError{Id: \"deΔΘΠΣΦ王普澤\", Msg: \"cdeΔΘΠ\"}",
		Target: &XNamedError{
			Id:  "deΔΘΠΣΦ王普澤",
			Msg: "cdeΔΘΠ",
		},
		SourceLabel: "?XNamedError{Id: \"deΔΘΠΣΦ王普澤\", Msg: \"cdeΔΘΠ\"}",
		Source: &XNamedError{
			Id:  "deΔΘΠΣΦ王普澤",
			Msg: "cdeΔΘΠ",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "?XNamedError{Id: \"deΔΘΠΣΦ王普澤\", Msg: \"cdeΔΘΠ\"}",
		Target: &XNamedError{
			Id:  "deΔΘΠΣΦ王普澤",
			Msg: "cdeΔΘΠ",
		},
		SourceLabel: "error{Id: \"deΔΘΠΣΦ王普澤\", Msg: \"cdeΔΘΠ\"}",
		Source: verror.FromWire(&vdl.WireError{
			Id:  "deΔΘΠΣΦ王普澤",
			Msg: "cdeΔΘΠ",
		}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray3_Any{}",
		Target:      XArray3_Any{},
		SourceLabel: "XArray3_Any{}",
		Source:      XArray3_Any{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray3_Any{}",
		Target:      XArray3_Any{},
		SourceLabel: "XList_Any{nil, nil, nil}",
		Source: XList_Any{
			nil,
			nil,
			nil,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray3_Any{}",
		Target:      XArray3_Any{},
		SourceLabel: "[]any{nil, nil, nil}",
		Source: []interface{}{
			nil,
			nil,
			nil,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray3_Any{int64(-123), int64(-123), int64(-123)}",
		Target: XArray3_Any{
			int64(-123),
			int64(-123),
			int64(-123),
		},
		SourceLabel: "XArray3_Any{int64(-123), int64(-123), int64(-123)}",
		Source: XArray3_Any{
			int64(-123),
			int64(-123),
			int64(-123),
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray3_Any{int64(-123), int64(-123), int64(-123)}",
		Target: XArray3_Any{
			int64(-123),
			int64(-123),
			int64(-123),
		},
		SourceLabel: "XList_Any{int64(-123), int64(-123), int64(-123)}",
		Source: XList_Any{
			int64(-123),
			int64(-123),
			int64(-123),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray3_Any{[]XArray1_String{{\"eΔΘΠΣΦ王普\"}, {}, {}}, set[XString]{\"bcdeΔΘΠΣΦ王普澤\", \"普澤\"}, XUnionDepth3_XUnionDepth2_All{F5: {F11: {F16: 0}}}}",
		Target: XArray3_Any{
			[]XArray1_String{
				{
					"eΔΘΠΣΦ王普",
				},
				{},
				{},
			},
			map[XString]struct{}{
				"bcdeΔΘΠΣΦ王普澤": struct{}{},
				"普澤":           struct{}{},
			},
			XUnionDepth3_XUnionDepth2_All(XUnionDepth3_XUnionDepth2_AllF5{XUnionDepth2_AllF11{XUnionDepth1_XUint32F16{}}}),
		},
		SourceLabel: "XArray3_Any{[]XArray1_String{{\"eΔΘΠΣΦ王普\"}, {}, {}}, set[XString]{\"bcdeΔΘΠΣΦ王普澤\", \"普澤\"}, XUnionDepth3_XUnionDepth2_All{F5: {F11: {F16: 0}}}}",
		Source: XArray3_Any{
			[]XArray1_String{
				{
					"eΔΘΠΣΦ王普",
				},
				{},
				{},
			},
			map[XString]struct{}{
				"bcdeΔΘΠΣΦ王普澤": struct{}{},
				"普澤":           struct{}{},
			},
			XUnionDepth3_XUnionDepth2_All(XUnionDepth3_XUnionDepth2_AllF5{XUnionDepth2_AllF11{XUnionDepth1_XUint32F16{}}}),
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray3_Any{[]XArray1_String{{\"eΔΘΠΣΦ王普\"}, {}, {}}, set[XString]{\"bcdeΔΘΠΣΦ王普澤\", \"普澤\"}, XUnionDepth3_XUnionDepth2_All{F5: {F11: {F16: 0}}}}",
		Target: XArray3_Any{
			[]XArray1_String{
				{
					"eΔΘΠΣΦ王普",
				},
				{},
				{},
			},
			map[XString]struct{}{
				"bcdeΔΘΠΣΦ王普澤": struct{}{},
				"普澤":           struct{}{},
			},
			XUnionDepth3_XUnionDepth2_All(XUnionDepth3_XUnionDepth2_AllF5{XUnionDepth2_AllF11{XUnionDepth1_XUint32F16{}}}),
		},
		SourceLabel: "[]any{[]XArray1_String{{\"eΔΘΠΣΦ王普\"}, {}, {}}, set[XString]{\"bcdeΔΘΠΣΦ王普澤\", \"普澤\"}, XUnionDepth3_XUnionDepth2_All{F5: {F11: {F16: 0}}}}",
		Source: []interface{}{
			[]XArray1_String{
				{
					"eΔΘΠΣΦ王普",
				},
				{},
				{},
			},
			map[XString]struct{}{
				"bcdeΔΘΠΣΦ王普澤": struct{}{},
				"普澤":           struct{}{},
			},
			XUnionDepth3_XUnionDepth2_All(XUnionDepth3_XUnionDepth2_AllF5{XUnionDepth2_AllF11{XUnionDepth1_XUint32F16{}}}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray3_Bool{}",
		Target:      XArray3_Bool{},
		SourceLabel: "XArray3_Bool{}",
		Source:      XArray3_Bool{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray3_Bool{}",
		Target:      XArray3_Bool{},
		SourceLabel: "[]any{false, false, false}",
		Source: []interface{}{
			false,
			false,
			false,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray3_Bool{}",
		Target:      XArray3_Bool{},
		SourceLabel: "XArray3_XBool{}",
		Source:      XArray3_XBool{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray3_Bool{true, true, true}",
		Target: XArray3_Bool{
			true,
			true,
			true,
		},
		SourceLabel: "XArray3_Bool{true, true, true}",
		Source: XArray3_Bool{
			true,
			true,
			true,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray3_Bool{true, true, true}",
		Target: XArray3_Bool{
			true,
			true,
			true,
		},
		SourceLabel: "XList_XBool{true, true, true}",
		Source: XList_XBool{
			true,
			true,
			true,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray3_XBool{}",
		Target:      XArray3_XBool{},
		SourceLabel: "XArray3_XBool{}",
		Source:      XArray3_XBool{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray3_XBool{}",
		Target:      XArray3_XBool{},
		SourceLabel: "[]any{XBool(false), XBool(false), XBool(false)}",
		Source: []interface{}{
			XBool(false),
			XBool(false),
			XBool(false),
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray3_XBool{}",
		Target:      XArray3_XBool{},
		SourceLabel: "XList_XBool{false, false, false}",
		Source: XList_XBool{
			false,
			false,
			false,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray3_XBool{true, true, true}",
		Target: XArray3_XBool{
			true,
			true,
			true,
		},
		SourceLabel: "XArray3_XBool{true, true, true}",
		Source: XArray3_XBool{
			true,
			true,
			true,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray3_XBool{true, true, true}",
		Target: XArray3_XBool{
			true,
			true,
			true,
		},
		SourceLabel: "XList_XBool{true, true, true}",
		Source: XList_XBool{
			true,
			true,
			true,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray1_String{}",
		Target:      XArray1_String{},
		SourceLabel: "XArray1_String{}",
		Source:      XArray1_String{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray1_String{}",
		Target:      XArray1_String{},
		SourceLabel: "XList_Any{\"\"}",
		Source: XList_Any{
			"",
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray1_String{}",
		Target:      XArray1_String{},
		SourceLabel: "XList_XString{\"\"}",
		Source: XList_XString{
			"",
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray1_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: XArray1_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "XArray1_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: XArray1_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray1_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: XArray1_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "[]string{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: []string{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray1_String{\"cdeΔ\"}",
		Target: XArray1_String{
			"cdeΔ",
		},
		SourceLabel: "XArray1_String{\"cdeΔ\"}",
		Source: XArray1_String{
			"cdeΔ",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray1_String{\"cdeΔ\"}",
		Target: XArray1_String{
			"cdeΔ",
		},
		SourceLabel: "XList_Any{\"cdeΔ\"}",
		Source: XList_Any{
			"cdeΔ",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray3_XString{}",
		Target:      XArray3_XString{},
		SourceLabel: "XArray3_XString{}",
		Source:      XArray3_XString{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray3_XString{}",
		Target:      XArray3_XString{},
		SourceLabel: "XArray3_Any{XString(\"\"), XString(\"\"), XString(\"\")}",
		Source: XArray3_Any{
			XString(""),
			XString(""),
			XString(""),
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray3_XString{}",
		Target:      XArray3_XString{},
		SourceLabel: "[]string{\"\", \"\", \"\"}",
		Source: []string{
			"",
			"",
			"",
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray3_XString{\"abcdeΔΘΠΣΦ王普澤世界\", \"abcdeΔΘΠΣΦ王普澤世界\", \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: XArray3_XString{
			"abcdeΔΘΠΣΦ王普澤世界",
			"abcdeΔΘΠΣΦ王普澤世界",
			"abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "XArray3_XString{\"abcdeΔΘΠΣΦ王普澤世界\", \"abcdeΔΘΠΣΦ王普澤世界\", \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: XArray3_XString{
			"abcdeΔΘΠΣΦ王普澤世界",
			"abcdeΔΘΠΣΦ王普澤世界",
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray3_XString{\"abcdeΔΘΠΣΦ王普澤世界\", \"abcdeΔΘΠΣΦ王普澤世界\", \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: XArray3_XString{
			"abcdeΔΘΠΣΦ王普澤世界",
			"abcdeΔΘΠΣΦ王普澤世界",
			"abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "[]any{XString(\"abcdeΔΘΠΣΦ王普澤世界\"), XString(\"abcdeΔΘΠΣΦ王普澤世界\"), XString(\"abcdeΔΘΠΣΦ王普澤世界\")}",
		Source: []interface{}{
			XString("abcdeΔΘΠΣΦ王普澤世界"),
			XString("abcdeΔΘΠΣΦ王普澤世界"),
			XString("abcdeΔΘΠΣΦ王普澤世界"),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray3_XString{\"eΔ\", \"ΔΘΠΣ\", \"ΠΣΦ王普澤世\"}",
		Target: XArray3_XString{
			"eΔ",
			"ΔΘΠΣ",
			"ΠΣΦ王普澤世",
		},
		SourceLabel: "XArray3_XString{\"eΔ\", \"ΔΘΠΣ\", \"ΠΣΦ王普澤世\"}",
		Source: XArray3_XString{
			"eΔ",
			"ΔΘΠΣ",
			"ΠΣΦ王普澤世",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray3_XString{\"eΔ\", \"ΔΘΠΣ\", \"ΠΣΦ王普澤世\"}",
		Target: XArray3_XString{
			"eΔ",
			"ΔΘΠΣ",
			"ΠΣΦ王普澤世",
		},
		SourceLabel: "[]any{XString(\"eΔ\"), XString(\"ΔΘΠΣ\"), XString(\"ΠΣΦ王普澤世\")}",
		Source: []interface{}{
			XString("eΔ"),
			XString("ΔΘΠΣ"),
			XString("ΠΣΦ王普澤世"),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray2_TypeObject{}",
		Target: XArray2_TypeObject{
			vdl.AnyType,
			vdl.AnyType,
		},
		SourceLabel: "XArray2_TypeObject{}",
		Source: XArray2_TypeObject{
			vdl.AnyType,
			vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray2_TypeObject{}",
		Target: XArray2_TypeObject{
			vdl.AnyType,
			vdl.AnyType,
		},
		SourceLabel: "[]typeobject{typeobject(any), typeobject(any)}",
		Source: []*vdl.Type{
			vdl.AnyType,
			vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray2_TypeObject{}",
		Target: XArray2_TypeObject{
			vdl.AnyType,
			vdl.AnyType,
		},
		SourceLabel: "XList_Any{typeobject(any), typeobject(any)}",
		Source: XList_Any{
			vdl.AnyType,
			vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray2_TypeObject{typeobject(int64), typeobject(int64)}",
		Target: XArray2_TypeObject{
			vdl.Int64Type,
			vdl.Int64Type,
		},
		SourceLabel: "XArray2_TypeObject{typeobject(int64), typeobject(int64)}",
		Source: XArray2_TypeObject{
			vdl.Int64Type,
			vdl.Int64Type,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray2_TypeObject{typeobject(int64), typeobject(int64)}",
		Target: XArray2_TypeObject{
			vdl.Int64Type,
			vdl.Int64Type,
		},
		SourceLabel: "XList_TypeObject{typeobject(int64), typeobject(int64)}",
		Source: XList_TypeObject{
			vdl.Int64Type,
			vdl.Int64Type,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray2_TypeObject{typeobject(XStructDepth1_Uint32), typeobject(XFloat32)}",
		Target: XArray2_TypeObject{
			__VDLType_struct_290,
			__VDLType_float32_291,
		},
		SourceLabel: "XArray2_TypeObject{typeobject(XStructDepth1_Uint32), typeobject(XFloat32)}",
		Source: XArray2_TypeObject{
			__VDLType_struct_290,
			__VDLType_float32_291,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray2_TypeObject{typeobject(XStructDepth1_Uint32), typeobject(XFloat32)}",
		Target: XArray2_TypeObject{
			__VDLType_struct_290,
			__VDLType_float32_291,
		},
		SourceLabel: "[]any{typeobject(XStructDepth1_Uint32), typeobject(XFloat32)}",
		Source: []interface{}{
			__VDLType_struct_290,
			__VDLType_float32_291,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray1_Byte(\"\\x00\")",
		Target:      XArray1_Byte{},
		SourceLabel: "XArray1_Byte(\"\\x00\")",
		Source:      XArray1_Byte{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray1_Byte(\"\\x00\")",
		Target:      XArray1_Byte{},
		SourceLabel: "XList_XFloat32{0}",
		Source: XList_XFloat32{
			0,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray1_Byte(\"\\x00\")",
		Target:      XArray1_Byte{},
		SourceLabel: "[]XUint32{0}",
		Source: []XUint32{
			0,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray1_Byte(\"{\")",
		Target: XArray1_Byte{
			123,
		},
		SourceLabel: "XArray1_Byte(\"{\")",
		Source: XArray1_Byte{
			123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray1_Byte(\"{\")",
		Target: XArray1_Byte{
			123,
		},
		SourceLabel: "XList_XByte(\"{\")",
		Source:      XList_XByte("{"),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray1_Byte(\"\\xfc\")",
		Target: XArray1_Byte{
			252,
		},
		SourceLabel: "XArray1_Byte(\"\\xfc\")",
		Source: XArray1_Byte{
			252,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray1_Byte(\"\\xfc\")",
		Target: XArray1_Byte{
			252,
		},
		SourceLabel: "XList_Byte(\"\\xfc\")",
		Source:      XList_Byte("\xfc"),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray2_XByte(\"\\x00\\x00\")",
		Target:      XArray2_XByte{},
		SourceLabel: "XArray2_XByte(\"\\x00\\x00\")",
		Source:      XArray2_XByte{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray2_XByte(\"\\x00\\x00\")",
		Target:      XArray2_XByte{},
		SourceLabel: "XList_Byte(\"\\x00\\x00\")",
		Source:      XList_Byte("\x00\x00"),
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray2_XByte(\"\\x00\\x00\")",
		Target:      XArray2_XByte{},
		SourceLabel: "[]int16{0, 0}",
		Source: []int16{
			0,
			0,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray2_XByte(\"{{\")",
		Target: XArray2_XByte{
			123,
			123,
		},
		SourceLabel: "XArray2_XByte(\"{{\")",
		Source: XArray2_XByte{
			123,
			123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray2_XByte(\"{{\")",
		Target: XArray2_XByte{
			123,
			123,
		},
		SourceLabel: "XList_Byte(\"{{\")",
		Source:      XList_Byte("{{"),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray2_XByte(\"F?\")",
		Target: XArray2_XByte{
			70,
			63,
		},
		SourceLabel: "XArray2_XByte(\"F?\")",
		Source: XArray2_XByte{
			70,
			63,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray2_XByte(\"F?\")",
		Target: XArray2_XByte{
			70,
			63,
		},
		SourceLabel: "[]any{XByte(70), XByte(63)}",
		Source: []interface{}{
			XByte(70),
			XByte(63),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray2_XEnumAbc{}",
		Target:      XArray2_XEnumAbc{},
		SourceLabel: "XArray2_XEnumAbc{}",
		Source:      XArray2_XEnumAbc{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray2_XEnumAbc{}",
		Target:      XArray2_XEnumAbc{},
		SourceLabel: "[]string{\"A\", \"A\"}",
		Source: []string{
			"A",
			"A",
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray2_XEnumAbc{}",
		Target:      XArray2_XEnumAbc{},
		SourceLabel: "[]any{XEnumAbc.A, XEnumAbc.A}",
		Source: []interface{}{
			XEnumAbcA,
			XEnumAbcA,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray2_XEnumAbc{C, C}",
		Target: XArray2_XEnumAbc{
			XEnumAbcC,
			XEnumAbcC,
		},
		SourceLabel: "XArray2_XEnumAbc{C, C}",
		Source: XArray2_XEnumAbc{
			XEnumAbcC,
			XEnumAbcC,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray2_XEnumAbc{C, C}",
		Target: XArray2_XEnumAbc{
			XEnumAbcC,
			XEnumAbcC,
		},
		SourceLabel: "[]string{\"C\", \"C\"}",
		Source: []string{
			"C",
			"C",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray2_XEnumBcd{}",
		Target:      XArray2_XEnumBcd{},
		SourceLabel: "XArray2_XEnumBcd{}",
		Source:      XArray2_XEnumBcd{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray2_XEnumBcd{}",
		Target:      XArray2_XEnumBcd{},
		SourceLabel: "XList_XEnumAbc{B, B}",
		Source: XList_XEnumAbc{
			XEnumAbcB,
			XEnumAbcB,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray2_XEnumBcd{}",
		Target:      XArray2_XEnumBcd{},
		SourceLabel: "XList_Any{XEnumBcd.B, XEnumBcd.B}",
		Source: XList_Any{
			XEnumBcdB,
			XEnumBcdB,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray2_XEnumBcd{D, D}",
		Target: XArray2_XEnumBcd{
			XEnumBcdD,
			XEnumBcdD,
		},
		SourceLabel: "XArray2_XEnumBcd{D, D}",
		Source: XArray2_XEnumBcd{
			XEnumBcdD,
			XEnumBcdD,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray2_XEnumBcd{D, D}",
		Target: XArray2_XEnumBcd{
			XEnumBcdD,
			XEnumBcdD,
		},
		SourceLabel: "[]string{\"D\", \"D\"}",
		Source: []string{
			"D",
			"D",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray1_XStructEmpty{}",
		Target:      XArray1_XStructEmpty{},
		SourceLabel: "XArray1_XStructEmpty{}",
		Source:      XArray1_XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray1_XStructEmpty{}",
		Target:      XArray1_XStructEmpty{},
		SourceLabel: "XList_XStructEmpty{{}}",
		Source: XList_XStructEmpty{
			{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray1_XStructEmpty{}",
		Target:      XArray1_XStructEmpty{},
		SourceLabel: "XList_Error{{}}",
		Source: XList_Error{
			verror.FromWire(&vdl.WireError{}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray1_XNamedError{}",
		Target:      XArray1_XNamedError{},
		SourceLabel: "XArray1_XNamedError{}",
		Source:      XArray1_XNamedError{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray1_XNamedError{}",
		Target:      XArray1_XNamedError{},
		SourceLabel: "XArray1_XStructEmpty{}",
		Source:      XArray1_XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray1_XNamedError{}",
		Target:      XArray1_XNamedError{},
		SourceLabel: "XList_XNamedError{{}}",
		Source: XList_XNamedError{
			{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray1_XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XArray1_XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "XArray1_XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XArray1_XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray1_XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XArray1_XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "[]error{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: []error{
			verror.FromWire(&vdl.WireError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray1_XNamedError{{Id: \"bcde\", Msg: \"ΔΘΠΣΦ\"}}",
		Target: XArray1_XNamedError{
			{
				Id:  "bcde",
				Msg: "ΔΘΠΣΦ",
			},
		},
		SourceLabel: "XArray1_XNamedError{{Id: \"bcde\", Msg: \"ΔΘΠΣΦ\"}}",
		Source: XArray1_XNamedError{
			{
				Id:  "bcde",
				Msg: "ΔΘΠΣΦ",
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray1_XNamedError{{Id: \"bcde\", Msg: \"ΔΘΠΣΦ\"}}",
		Target: XArray1_XNamedError{
			{
				Id:  "bcde",
				Msg: "ΔΘΠΣΦ",
			},
		},
		SourceLabel: "[]any{XNamedError{Id: \"bcde\", Msg: \"ΔΘΠΣΦ\"}}",
		Source: []interface{}{
			XNamedError{
				Id:  "bcde",
				Msg: "ΔΘΠΣΦ",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray2_Error{}",
		Target:      XArray2_Error{},
		SourceLabel: "XArray2_Error{}",
		Source:      XArray2_Error{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray2_Error{}",
		Target:      XArray2_Error{},
		SourceLabel: "XList_Any{nil, nil}",
		Source: XList_Any{
			nil,
			nil,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray2_Error{}",
		Target:      XArray2_Error{},
		SourceLabel: "[]?XStructEmpty{nil, nil}",
		Source: []*XStructEmpty{
			nil,
			nil,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray2_Error{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XArray2_Error{
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
		SourceLabel: "XArray2_Error{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XArray2_Error{
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray2_Error{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XArray2_Error{
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
		SourceLabel: "XList_Error{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XList_Error{
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray2_Error{{Id: \"普\", RetryCode: RetryBackoff, Msg: \"bcde\"}, {Id: \"cdeΔΘΠ\", RetryCode: RetryBackoff, Msg: \"bcdeΔΘΠ\"}}",
		Target: XArray2_Error{
			verror.FromWire(&vdl.WireError{
				Id:        "普",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "bcde",
			}),
			verror.FromWire(&vdl.WireError{
				Id:        "cdeΔΘΠ",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "bcdeΔΘΠ",
			}),
		},
		SourceLabel: "XArray2_Error{{Id: \"普\", RetryCode: RetryBackoff, Msg: \"bcde\"}, {Id: \"cdeΔΘΠ\", RetryCode: RetryBackoff, Msg: \"bcdeΔΘΠ\"}}",
		Source: XArray2_Error{
			verror.FromWire(&vdl.WireError{
				Id:        "普",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "bcde",
			}),
			verror.FromWire(&vdl.WireError{
				Id:        "cdeΔΘΠ",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "bcdeΔΘΠ",
			}),
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray2_Error{{Id: \"普\", RetryCode: RetryBackoff, Msg: \"bcde\"}, {Id: \"cdeΔΘΠ\", RetryCode: RetryBackoff, Msg: \"bcdeΔΘΠ\"}}",
		Target: XArray2_Error{
			verror.FromWire(&vdl.WireError{
				Id:        "普",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "bcde",
			}),
			verror.FromWire(&vdl.WireError{
				Id:        "cdeΔΘΠ",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "bcdeΔΘΠ",
			}),
		},
		SourceLabel: "[]error{{Id: \"普\", RetryCode: RetryBackoff, Msg: \"bcde\"}, {Id: \"cdeΔΘΠ\", RetryCode: RetryBackoff, Msg: \"bcdeΔΘΠ\"}}",
		Source: []error{
			verror.FromWire(&vdl.WireError{
				Id:        "普",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "bcde",
			}),
			verror.FromWire(&vdl.WireError{
				Id:        "cdeΔΘΠ",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "bcdeΔΘΠ",
			}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray1_Uint32{}",
		Target:      XArray1_Uint32{},
		SourceLabel: "XArray1_Uint32{}",
		Source:      XArray1_Uint32{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray1_Uint32{}",
		Target:      XArray1_Uint32{},
		SourceLabel: "XList_XUint16{0}",
		Source: XList_XUint16{
			0,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray1_Uint32{}",
		Target:      XArray1_Uint32{},
		SourceLabel: "XList_XFloat32{0}",
		Source: XList_XFloat32{
			0,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray1_Uint32{123}",
		Target: XArray1_Uint32{
			123,
		},
		SourceLabel: "XArray1_Uint32{123}",
		Source: XArray1_Uint32{
			123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray1_Uint32{123}",
		Target: XArray1_Uint32{
			123,
		},
		SourceLabel: "XList_XFloat32{123}",
		Source: XList_XFloat32{
			123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray1_Uint32{3904439513}",
		Target: XArray1_Uint32{
			3904439513,
		},
		SourceLabel: "XArray1_Uint32{3904439513}",
		Source: XArray1_Uint32{
			3904439513,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray1_Uint32{3904439513}",
		Target: XArray1_Uint32{
			3904439513,
		},
		SourceLabel: "[]XUint32{3904439513}",
		Source: []XUint32{
			3904439513,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray3_Uint64{}",
		Target:      XArray3_Uint64{},
		SourceLabel: "XArray3_Uint64{}",
		Source:      XArray3_Uint64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray3_Uint64{}",
		Target:      XArray3_Uint64{},
		SourceLabel: "XList_Any{uint64(0), uint64(0), uint64(0)}",
		Source: XList_Any{
			uint64(0),
			uint64(0),
			uint64(0),
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray3_Uint64{}",
		Target:      XArray3_Uint64{},
		SourceLabel: "XList_Byte(\"\\x00\\x00\\x00\")",
		Source:      XList_Byte("\x00\x00\x00"),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray3_Uint64{123, 123, 123}",
		Target: XArray3_Uint64{
			123,
			123,
			123,
		},
		SourceLabel: "XArray3_Uint64{123, 123, 123}",
		Source: XArray3_Uint64{
			123,
			123,
			123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray3_Uint64{123, 123, 123}",
		Target: XArray3_Uint64{
			123,
			123,
			123,
		},
		SourceLabel: "XArray3_Int64{123, 123, 123}",
		Source: XArray3_Int64{
			123,
			123,
			123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray3_Uint64{2212711876096953152, 9221979473416152299, 9970187274538215395}",
		Target: XArray3_Uint64{
			2212711876096953152,
			9221979473416152299,
			9970187274538215395,
		},
		SourceLabel: "XArray3_Uint64{2212711876096953152, 9221979473416152299, 9970187274538215395}",
		Source: XArray3_Uint64{
			2212711876096953152,
			9221979473416152299,
			9970187274538215395,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray3_Uint64{2212711876096953152, 9221979473416152299, 9970187274538215395}",
		Target: XArray3_Uint64{
			2212711876096953152,
			9221979473416152299,
			9970187274538215395,
		},
		SourceLabel: "XArray3_Any{uint64(2212711876096953152), uint64(9221979473416152299), uint64(9970187274538215395)}",
		Source: XArray3_Any{
			uint64(2212711876096953152),
			uint64(9221979473416152299),
			uint64(9970187274538215395),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray3_Int64{}",
		Target:      XArray3_Int64{},
		SourceLabel: "XArray3_Int64{}",
		Source:      XArray3_Int64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray3_Int64{}",
		Target:      XArray3_Int64{},
		SourceLabel: "XList_XUint16{0, 0, 0}",
		Source: XList_XUint16{
			0,
			0,
			0,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray3_Int64{}",
		Target:      XArray3_Int64{},
		SourceLabel: "XList_Any{int64(0), int64(0), int64(0)}",
		Source: XList_Any{
			int64(0),
			int64(0),
			int64(0),
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray3_Int64{-123, -123, -123}",
		Target: XArray3_Int64{
			-123,
			-123,
			-123,
		},
		SourceLabel: "XArray3_Int64{-123, -123, -123}",
		Source: XArray3_Int64{
			-123,
			-123,
			-123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray3_Int64{-123, -123, -123}",
		Target: XArray3_Int64{
			-123,
			-123,
			-123,
		},
		SourceLabel: "[]int16{-123, -123, -123}",
		Source: []int16{
			-123,
			-123,
			-123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray3_Int64{-3233461802653517105, -768419110883423534, 2324661587567982015}",
		Target: XArray3_Int64{
			-3233461802653517105,
			-768419110883423534,
			2324661587567982015,
		},
		SourceLabel: "XArray3_Int64{-3233461802653517105, -768419110883423534, 2324661587567982015}",
		Source: XArray3_Int64{
			-3233461802653517105,
			-768419110883423534,
			2324661587567982015,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray3_Int64{-3233461802653517105, -768419110883423534, 2324661587567982015}",
		Target: XArray3_Int64{
			-3233461802653517105,
			-768419110883423534,
			2324661587567982015,
		},
		SourceLabel: "XList_Any{int64(-3233461802653517105), int64(-768419110883423534), int64(2324661587567982015)}",
		Source: XList_Any{
			int64(-3233461802653517105),
			int64(-768419110883423534),
			int64(2324661587567982015),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray1_OptXStructEmpty{}",
		Target:      XArray1_OptXStructEmpty{},
		SourceLabel: "XArray1_OptXStructEmpty{}",
		Source:      XArray1_OptXStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray1_OptXStructEmpty{}",
		Target:      XArray1_OptXStructEmpty{},
		SourceLabel: "XList_Error{nil}",
		Source: XList_Error{
			nil,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray1_OptXStructEmpty{}",
		Target:      XArray1_OptXStructEmpty{},
		SourceLabel: "XList_Any{nil}",
		Source: XList_Any{
			nil,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray1_OptXStructEmpty{{}}",
		Target: XArray1_OptXStructEmpty{
			{},
		},
		SourceLabel: "XArray1_OptXStructEmpty{{}}",
		Source: XArray1_OptXStructEmpty{
			{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray1_OptXStructEmpty{{}}",
		Target: XArray1_OptXStructEmpty{
			{},
		},
		SourceLabel: "XList_XStructEmpty{{}}",
		Source: XList_XStructEmpty{
			{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray3_OptXNamedError{}",
		Target:      XArray3_OptXNamedError{},
		SourceLabel: "XArray3_OptXNamedError{}",
		Source:      XArray3_OptXNamedError{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray3_OptXNamedError{}",
		Target:      XArray3_OptXNamedError{},
		SourceLabel: "[]?XStructEmpty{nil, nil, nil}",
		Source: []*XStructEmpty{
			nil,
			nil,
			nil,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray3_OptXNamedError{}",
		Target:      XArray3_OptXNamedError{},
		SourceLabel: "XList_OptXNamedError{nil, nil, nil}",
		Source: XList_OptXNamedError{
			nil,
			nil,
			nil,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray3_OptXNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XArray3_OptXNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "XArray3_OptXNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XArray3_OptXNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray3_OptXNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XArray3_OptXNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "[]error{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: []error{
			verror.FromWire(&vdl.WireError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}),
			verror.FromWire(&vdl.WireError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}),
			verror.FromWire(&vdl.WireError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray3_OptXNamedError{{Id: \"ΠΣΦ王\", Msg: \"eΔΘΠΣΦ王普澤\"}, {Msg: \"eΔΘΠΣΦ\"}, nil}",
		Target: XArray3_OptXNamedError{
			{
				Id:  "ΠΣΦ王",
				Msg: "eΔΘΠΣΦ王普澤",
			},
			{
				Msg: "eΔΘΠΣΦ",
			},
			nil,
		},
		SourceLabel: "XArray3_OptXNamedError{{Id: \"ΠΣΦ王\", Msg: \"eΔΘΠΣΦ王普澤\"}, {Msg: \"eΔΘΠΣΦ\"}, nil}",
		Source: XArray3_OptXNamedError{
			{
				Id:  "ΠΣΦ王",
				Msg: "eΔΘΠΣΦ王普澤",
			},
			{
				Msg: "eΔΘΠΣΦ",
			},
			nil,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray3_OptXNamedError{{Id: \"ΠΣΦ王\", Msg: \"eΔΘΠΣΦ王普澤\"}, {Msg: \"eΔΘΠΣΦ\"}, nil}",
		Target: XArray3_OptXNamedError{
			{
				Id:  "ΠΣΦ王",
				Msg: "eΔΘΠΣΦ王普澤",
			},
			{
				Msg: "eΔΘΠΣΦ",
			},
			nil,
		},
		SourceLabel: "XList_OptXNamedError{{Id: \"ΠΣΦ王\", Msg: \"eΔΘΠΣΦ王普澤\"}, {Msg: \"eΔΘΠΣΦ\"}, nil}",
		Source: XList_OptXNamedError{
			{
				Id:  "ΠΣΦ王",
				Msg: "eΔΘΠΣΦ王普澤",
			},
			{
				Msg: "eΔΘΠΣΦ",
			},
			nil,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]XBool{}",
		Target:      []XBool(nil),
		SourceLabel: "[]XBool{}",
		Source:      []XBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XBool{}",
		Target:      []XBool(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XBool{}",
		Target:      []XBool(nil),
		SourceLabel: "[]bool{}",
		Source:      []bool(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]XBool{true}",
		Target: []XBool{
			true,
		},
		SourceLabel: "[]XBool{true}",
		Source: []XBool{
			true,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]XBool{true}",
		Target: []XBool{
			true,
		},
		SourceLabel: "[]bool{true}",
		Source: []bool{
			true,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]XString{}",
		Target:      []XString(nil),
		SourceLabel: "[]XString{}",
		Source:      []XString(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XString{}",
		Target:      []XString(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XString{}",
		Target:      []XString(nil),
		SourceLabel: "[]XEnumBcd{}",
		Source:      []XEnumBcd(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]XString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: []XString{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "[]XString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: []XString{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]XString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: []XString{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "[]any{XString(\"abcdeΔΘΠΣΦ王普澤世界\")}",
		Source: []interface{}{
			XString("abcdeΔΘΠΣΦ王普澤世界"),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]XString{\"deΔΘΠΣ\"}",
		Target: []XString{
			"deΔΘΠΣ",
		},
		SourceLabel: "[]XString{\"deΔΘΠΣ\"}",
		Source: []XString{
			"deΔΘΠΣ",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]XString{\"deΔΘΠΣ\"}",
		Target: []XString{
			"deΔΘΠΣ",
		},
		SourceLabel: "[]any{XString(\"deΔΘΠΣ\")}",
		Source: []interface{}{
			XString("deΔΘΠΣ"),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]XByte(\"\")",
		Target:      []XByte(nil),
		SourceLabel: "[]XByte(\"\")",
		Source:      []XByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XByte(\"\")",
		Target:      []XByte(nil),
		SourceLabel: "[]byte(\"\")",
		Source:      []byte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XByte(\"\")",
		Target:      []XByte(nil),
		SourceLabel: "[]uint32{}",
		Source:      []uint32(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]XByte(\"{\")",
		Target:      []XByte("{"),
		SourceLabel: "[]XByte(\"{\")",
		Source:      []XByte("{"),
	},
	{
		Label:       "Full",
		TargetLabel: "[]XByte(\"{\")",
		Target:      []XByte("{"),
		SourceLabel: "XList_XFloat64{123}",
		Source: XList_XFloat64{
			123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]XByte(\"\\xea\\x00\\x87\")",
		Target:      []XByte("\xea\x00\x87"),
		SourceLabel: "[]XByte(\"\\xea\\x00\\x87\")",
		Source:      []XByte("\xea\x00\x87"),
	},
	{
		Label:       "Random0",
		TargetLabel: "[]XByte(\"\\xea\\x00\\x87\")",
		Target:      []XByte("\xea\x00\x87"),
		SourceLabel: "XArray3_Any{XByte(234), XByte(0), XByte(135)}",
		Source: XArray3_Any{
			XByte(234),
			XByte(0),
			XByte(135),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]XEnumAbc{}",
		Target:      []XEnumAbc(nil),
		SourceLabel: "[]XEnumAbc{}",
		Source:      []XEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XEnumAbc{}",
		Target:      []XEnumAbc(nil),
		SourceLabel: "XList_String{}",
		Source:      XList_String(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XEnumAbc{}",
		Target:      []XEnumAbc(nil),
		SourceLabel: "[]XEnumBcd{}",
		Source:      []XEnumBcd(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]XEnumAbc{C}",
		Target: []XEnumAbc{
			XEnumAbcC,
		},
		SourceLabel: "[]XEnumAbc{C}",
		Source: []XEnumAbc{
			XEnumAbcC,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]XEnumAbc{C}",
		Target: []XEnumAbc{
			XEnumAbcC,
		},
		SourceLabel: "XList_XString{\"C\"}",
		Source: XList_XString{
			"C",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]XEnumBcd{}",
		Target:      []XEnumBcd(nil),
		SourceLabel: "[]XEnumBcd{}",
		Source:      []XEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XEnumBcd{}",
		Target:      []XEnumBcd(nil),
		SourceLabel: "[]XEnumAbc{}",
		Source:      []XEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XEnumBcd{}",
		Target:      []XEnumBcd(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]XEnumBcd{D}",
		Target: []XEnumBcd{
			XEnumBcdD,
		},
		SourceLabel: "[]XEnumBcd{D}",
		Source: []XEnumBcd{
			XEnumBcdD,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]XEnumBcd{D}",
		Target: []XEnumBcd{
			XEnumBcdD,
		},
		SourceLabel: "XList_XEnumBcd{D}",
		Source: XList_XEnumBcd{
			XEnumBcdD,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]XStructEmpty{}",
		Target:      []XStructEmpty(nil),
		SourceLabel: "[]XStructEmpty{}",
		Source:      []XStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XStructEmpty{}",
		Target:      []XStructEmpty(nil),
		SourceLabel: "XList_XStructDepth2_All{}",
		Source:      XList_XStructDepth2_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XStructEmpty{}",
		Target:      []XStructEmpty(nil),
		SourceLabel: "XList_Any{}",
		Source:      XList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]XStructEmpty{{}}",
		Target: []XStructEmpty{
			{},
		},
		SourceLabel: "[]XStructEmpty{{}}",
		Source: []XStructEmpty{
			{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]XStructEmpty{{}}",
		Target: []XStructEmpty{
			{},
		},
		SourceLabel: "XArray1_OptXStructEmpty{{}}",
		Source: XArray1_OptXStructEmpty{
			{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]XNamedError{}",
		Target:      []XNamedError(nil),
		SourceLabel: "[]XNamedError{}",
		Source:      []XNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XNamedError{}",
		Target:      []XNamedError(nil),
		SourceLabel: "[]?XNamedError{}",
		Source:      []*XNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XNamedError{}",
		Target:      []XNamedError(nil),
		SourceLabel: "XList_OptXNamedError{}",
		Source:      XList_OptXNamedError(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: []XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "[]XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: []XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: []XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "XArray1_XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XArray1_XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]XNamedError{{Id: \"eΔΘΠΣΦ王普\"}}",
		Target: []XNamedError{
			{
				Id: "eΔΘΠΣΦ王普",
			},
		},
		SourceLabel: "[]XNamedError{{Id: \"eΔΘΠΣΦ王普\"}}",
		Source: []XNamedError{
			{
				Id: "eΔΘΠΣΦ王普",
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]XNamedError{{Id: \"eΔΘΠΣΦ王普\"}}",
		Target: []XNamedError{
			{
				Id: "eΔΘΠΣΦ王普",
			},
		},
		SourceLabel: "XArray1_XNamedError{{Id: \"eΔΘΠΣΦ王普\"}}",
		Source: XArray1_XNamedError{
			{
				Id: "eΔΘΠΣΦ王普",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]XUint32{}",
		Target:      []XUint32(nil),
		SourceLabel: "[]XUint32{}",
		Source:      []XUint32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XUint32{}",
		Target:      []XUint32(nil),
		SourceLabel: "XList_XFloat32{}",
		Source:      XList_XFloat32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XUint32{}",
		Target:      []XUint32(nil),
		SourceLabel: "XList_Byte(\"\")",
		Source:      XList_Byte(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]XUint32{123}",
		Target: []XUint32{
			123,
		},
		SourceLabel: "[]XUint32{123}",
		Source: []XUint32{
			123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]XUint32{123}",
		Target: []XUint32{
			123,
		},
		SourceLabel: "[]XByte(\"{\")",
		Source:      []XByte("{"),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]XUint32{2295850354, 0, 1793176866}",
		Target: []XUint32{
			2295850354,
			0,
			1793176866,
		},
		SourceLabel: "[]XUint32{2295850354, 0, 1793176866}",
		Source: []XUint32{
			2295850354,
			0,
			1793176866,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]XUint32{2295850354, 0, 1793176866}",
		Target: []XUint32{
			2295850354,
			0,
			1793176866,
		},
		SourceLabel: "[]uint32{2295850354, 0, 1793176866}",
		Source: []uint32{
			2295850354,
			0,
			1793176866,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]?XStructEmpty{}",
		Target:      []*XStructEmpty(nil),
		SourceLabel: "[]?XStructEmpty{}",
		Source:      []*XStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]?XStructEmpty{}",
		Target:      []*XStructEmpty(nil),
		SourceLabel: "XList_XNamedError{}",
		Source:      XList_XNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]?XStructEmpty{}",
		Target:      []*XStructEmpty(nil),
		SourceLabel: "XList_OptXStructDepth2_Set_Float64{}",
		Source:      XList_OptXStructDepth2_Set_Float64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]?XStructEmpty{{}}",
		Target: []*XStructEmpty{
			{},
		},
		SourceLabel: "[]?XStructEmpty{{}}",
		Source: []*XStructEmpty{
			{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]?XStructEmpty{{}}",
		Target: []*XStructEmpty{
			{},
		},
		SourceLabel: "XList_OptXStructDepth2_Set_Float64{{}}",
		Source: XList_OptXStructDepth2_Set_Float64{
			{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]?XNamedError{}",
		Target:      []*XNamedError(nil),
		SourceLabel: "[]?XNamedError{}",
		Source:      []*XNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]?XNamedError{}",
		Target:      []*XNamedError(nil),
		SourceLabel: "XList_OptXStructEmpty{}",
		Source:      XList_OptXStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]?XNamedError{}",
		Target:      []*XNamedError(nil),
		SourceLabel: "[]XStructEmpty{}",
		Source:      []XStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]?XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: []*XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "[]?XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: []*XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]?XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: []*XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "XList_Any{?XNamedError{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XList_Any{
			&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]?XNamedError{{Id: \"cdeΔ\", Msg: \"普\"}}",
		Target: []*XNamedError{
			{
				Id:  "cdeΔ",
				Msg: "普",
			},
		},
		SourceLabel: "[]?XNamedError{{Id: \"cdeΔ\", Msg: \"普\"}}",
		Source: []*XNamedError{
			{
				Id:  "cdeΔ",
				Msg: "普",
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]?XNamedError{{Id: \"cdeΔ\", Msg: \"普\"}}",
		Target: []*XNamedError{
			{
				Id:  "cdeΔ",
				Msg: "普",
			},
		},
		SourceLabel: "[]error{{Id: \"cdeΔ\", Msg: \"普\"}}",
		Source: []error{
			verror.FromWire(&vdl.WireError{
				Id:  "cdeΔ",
				Msg: "普",
			}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_Any{}",
		Target:      XList_Any(nil),
		SourceLabel: "XList_Any{}",
		Source:      XList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_Any{}",
		Target:      XList_Any(nil),
		SourceLabel: "XList_XByte(\"\")",
		Source:      XList_XByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_Any{}",
		Target:      XList_Any(nil),
		SourceLabel: "XList_XFloat64{}",
		Source:      XList_XFloat64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_Any{int64(-123)}",
		Target: XList_Any{
			int64(-123),
		},
		SourceLabel: "XList_Any{int64(-123)}",
		Source: XList_Any{
			int64(-123),
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_Any{int64(-123)}",
		Target: XList_Any{
			int64(-123),
		},
		SourceLabel: "[]any{int64(-123)}",
		Source: []interface{}{
			int64(-123),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XList_Any{XList_XStructDepth2_All{{F0: {typeobject(XList_XBool), typeobject(any)}, F2: {0, 9460, 0}, F3: {XMap_Int64_Int64{-3250308136845675012: 2395477512749041486}, []?XStructEmpty{nil, nil, {}}, XUnionDepth2_XSet_XNamedError{F5: {}}}, F5: {D}, F6: {125: 103, 21: 143}, F8: {F3: \"ΔΘΠΣ\", F4: \"cdeΔΘΠΣ\", F5: typeobject(XList_XStructDepth2_All), F7: 54, F8: B, F9: D, F12: {}, F13: 15251, F14: 63192, F16: 1842522911, F17: 12228096953452494076, F18: 14494677390024042662, F19: -1, F20: 29, F21: 1063, F22: 13145, F23: 1030636331, F24: 431566929, F25: 1264583878879273626, F26: -2337026213021984327, F28: -1.3296653e+09, F29: 1.5961664779262068e+09, F30: -2.340291718935576e+09, F31: {}}, F10: {F16: 686436023}, F11: {F29: 1.3667738643069172e+09}, F12: {F9: C}, F13: {F14: 22454}}, {F0: {typeobject(any), typeobject(XArray3_OptXStructDepth2_Set_Float64)}, F1: {1127016751}, F2: {-13306}, F3: {XList_XArray1_XStructEmpty{{}}}, F4: {-6.778491184605664e+08, 1.7797307435833848e+09}, F5: {C, D}, F6: {0: 0, 53: 102}, F8: {F0: XUnionDepth1_XFloat64{F30: 1.4220107318974495e+09}, F2: true, F3: \"deΔ\", F5: typeobject(uint64), F6: 85, F11: {Id: \"Θ\", Msg: \"cdeΔΘΠΣΦ王\"}, F12: {Msg: \"ΘΠΣΦ王普澤世\"}, F13: 65135, F15: 4015456916, F16: 33610517, F18: 13306481127868141452, F19: 45, F20: -41, F21: -10028, F22: 9052, F23: 900863731, F25: 1448358042041714939, F27: -1.146413e+09, F30: 8.547524778945721e+08, F31: {}, F32: {}}, F10: {F30: 2.366591380614784e+06}, F11: {F29: 8.137462937121485e+07}, F13: {}}}}",
		Target: XList_Any{
			XList_XStructDepth2_All{
				{
					F0: XArray2_TypeObject{
						__VDLType_list_292,
						vdl.AnyType,
					},
					F2: []int16{
						0,
						9460,
						0,
					},
					F3: XList_Any{
						XMap_Int64_Int64{
							-3250308136845675012: 2395477512749041486,
						},
						[]*XStructEmpty{
							nil,
							nil,
							{},
						},
						XUnionDepth2_XSet_XNamedError(XUnionDepth2_XSet_XNamedErrorF5{}),
					},
					F5: XSet_XEnumBcd{
						XEnumBcdD: struct{}{},
					},
					F6: map[byte]byte{
						125: 103,
						21:  143,
					},
					F8: XStructDepth1_All{
						F3:  "ΔΘΠΣ",
						F4:  "cdeΔΘΠΣ",
						F5:  __VDLType_list_293,
						F7:  54,
						F8:  XEnumAbcB,
						F9:  XEnumBcdD,
						F12: verror.FromWire(&vdl.WireError{}),
						F13: 15251,
						F14: 63192,
						F16: 1842522911,
						F17: 12228096953452494076,
						F18: 14494677390024042662,
						F19: -1,
						F20: 29,
						F21: 1063,
						F22: 13145,
						F23: 1030636331,
						F24: 431566929,
						F25: 1264583878879273626,
						F26: -2337026213021984327,
						F28: -1.3296653e+09,
						F29: 1.5961664779262068e+09,
						F30: -2.340291718935576e+09,
						F31: &XStructEmpty{},
					},
					F10: XUnionDepth1_AllF16{686436023},
					F11: XUnionDepth1_Float64F29{1.3667738643069172e+09},
					F12: &XStructDepth1_XEnumBcd{
						F9: XEnumBcdC,
					},
					F13: &XStructDepth1_XUint16{
						F14: 22454,
					},
				},
				{
					F0: XArray2_TypeObject{
						vdl.AnyType,
						__VDLType_array_294,
					},
					F1: XArray1_Uint32{
						1127016751,
					},
					F2: []int16{
						-13306,
					},
					F3: XList_Any{
						XList_XArray1_XStructEmpty{
							{},
						},
					},
					F4: map[float64]struct{}{
						-6.778491184605664e+08: struct{}{},
						1.7797307435833848e+09: struct{}{},
					},
					F5: XSet_XEnumBcd{
						XEnumBcdC: struct{}{},
						XEnumBcdD: struct{}{},
					},
					F6: map[byte]byte{
						0:  0,
						53: 102,
					},
					F8: XStructDepth1_All{
						F0: XUnionDepth1_XFloat64(XUnionDepth1_XFloat64F30{1.4220107318974495e+09}),
						F2: true,
						F3: "deΔ",
						F5: vdl.Uint64Type,
						F6: 85,
						F11: XNamedError{
							Id:  "Θ",
							Msg: "cdeΔΘΠΣΦ王",
						},
						F12: verror.FromWire(&vdl.WireError{
							Msg: "ΘΠΣΦ王普澤世",
						}),
						F13: 65135,
						F15: 4015456916,
						F16: 33610517,
						F18: 13306481127868141452,
						F19: 45,
						F20: -41,
						F21: -10028,
						F22: 9052,
						F23: 900863731,
						F25: 1448358042041714939,
						F27: -1.146413e+09,
						F30: 8.547524778945721e+08,
						F31: &XStructEmpty{},
						F32: &XNamedError{},
					},
					F10: XUnionDepth1_AllF30{2.366591380614784e+06},
					F11: XUnionDepth1_Float64F29{8.137462937121485e+07},
					F13: &XStructDepth1_XUint16{},
				},
			},
		},
		SourceLabel: "XList_Any{XList_XStructDepth2_All{{F0: {typeobject(XList_XBool), typeobject(any)}, F2: {0, 9460, 0}, F3: {XMap_Int64_Int64{-3250308136845675012: 2395477512749041486}, []?XStructEmpty{nil, nil, {}}, XUnionDepth2_XSet_XNamedError{F5: {}}}, F5: {D}, F6: {125: 103, 21: 143}, F8: {F3: \"ΔΘΠΣ\", F4: \"cdeΔΘΠΣ\", F5: typeobject(XList_XStructDepth2_All), F7: 54, F8: B, F9: D, F12: {}, F13: 15251, F14: 63192, F16: 1842522911, F17: 12228096953452494076, F18: 14494677390024042662, F19: -1, F20: 29, F21: 1063, F22: 13145, F23: 1030636331, F24: 431566929, F25: 1264583878879273626, F26: -2337026213021984327, F28: -1.3296653e+09, F29: 1.5961664779262068e+09, F30: -2.340291718935576e+09, F31: {}}, F10: {F16: 686436023}, F11: {F29: 1.3667738643069172e+09}, F12: {F9: C}, F13: {F14: 22454}}, {F0: {typeobject(any), typeobject(XArray3_OptXStructDepth2_Set_Float64)}, F1: {1127016751}, F2: {-13306}, F3: {XList_XArray1_XStructEmpty{{}}}, F4: {-6.778491184605664e+08, 1.7797307435833848e+09}, F5: {C, D}, F6: {0: 0, 53: 102}, F8: {F0: XUnionDepth1_XFloat64{F30: 1.4220107318974495e+09}, F2: true, F3: \"deΔ\", F5: typeobject(uint64), F6: 85, F11: {Id: \"Θ\", Msg: \"cdeΔΘΠΣΦ王\"}, F12: {Msg: \"ΘΠΣΦ王普澤世\"}, F13: 65135, F15: 4015456916, F16: 33610517, F18: 13306481127868141452, F19: 45, F20: -41, F21: -10028, F22: 9052, F23: 900863731, F25: 1448358042041714939, F27: -1.146413e+09, F30: 8.547524778945721e+08, F31: {}, F32: {}}, F10: {F30: 2.366591380614784e+06}, F11: {F29: 8.137462937121485e+07}, F13: {}}}}",
		Source: XList_Any{
			XList_XStructDepth2_All{
				{
					F0: XArray2_TypeObject{
						__VDLType_list_292,
						vdl.AnyType,
					},
					F2: []int16{
						0,
						9460,
						0,
					},
					F3: XList_Any{
						XMap_Int64_Int64{
							-3250308136845675012: 2395477512749041486,
						},
						[]*XStructEmpty{
							nil,
							nil,
							{},
						},
						XUnionDepth2_XSet_XNamedError(XUnionDepth2_XSet_XNamedErrorF5{}),
					},
					F5: XSet_XEnumBcd{
						XEnumBcdD: struct{}{},
					},
					F6: map[byte]byte{
						125: 103,
						21:  143,
					},
					F8: XStructDepth1_All{
						F3:  "ΔΘΠΣ",
						F4:  "cdeΔΘΠΣ",
						F5:  __VDLType_list_293,
						F7:  54,
						F8:  XEnumAbcB,
						F9:  XEnumBcdD,
						F12: verror.FromWire(&vdl.WireError{}),
						F13: 15251,
						F14: 63192,
						F16: 1842522911,
						F17: 12228096953452494076,
						F18: 14494677390024042662,
						F19: -1,
						F20: 29,
						F21: 1063,
						F22: 13145,
						F23: 1030636331,
						F24: 431566929,
						F25: 1264583878879273626,
						F26: -2337026213021984327,
						F28: -1.3296653e+09,
						F29: 1.5961664779262068e+09,
						F30: -2.340291718935576e+09,
						F31: &XStructEmpty{},
					},
					F10: XUnionDepth1_AllF16{686436023},
					F11: XUnionDepth1_Float64F29{1.3667738643069172e+09},
					F12: &XStructDepth1_XEnumBcd{
						F9: XEnumBcdC,
					},
					F13: &XStructDepth1_XUint16{
						F14: 22454,
					},
				},
				{
					F0: XArray2_TypeObject{
						vdl.AnyType,
						__VDLType_array_294,
					},
					F1: XArray1_Uint32{
						1127016751,
					},
					F2: []int16{
						-13306,
					},
					F3: XList_Any{
						XList_XArray1_XStructEmpty{
							{},
						},
					},
					F4: map[float64]struct{}{
						-6.778491184605664e+08: struct{}{},
						1.7797307435833848e+09: struct{}{},
					},
					F5: XSet_XEnumBcd{
						XEnumBcdC: struct{}{},
						XEnumBcdD: struct{}{},
					},
					F6: map[byte]byte{
						0:  0,
						53: 102,
					},
					F8: XStructDepth1_All{
						F0: XUnionDepth1_XFloat64(XUnionDepth1_XFloat64F30{1.4220107318974495e+09}),
						F2: true,
						F3: "deΔ",
						F5: vdl.Uint64Type,
						F6: 85,
						F11: XNamedError{
							Id:  "Θ",
							Msg: "cdeΔΘΠΣΦ王",
						},
						F12: verror.FromWire(&vdl.WireError{
							Msg: "ΘΠΣΦ王普澤世",
						}),
						F13: 65135,
						F15: 4015456916,
						F16: 33610517,
						F18: 13306481127868141452,
						F19: 45,
						F20: -41,
						F21: -10028,
						F22: 9052,
						F23: 900863731,
						F25: 1448358042041714939,
						F27: -1.146413e+09,
						F30: 8.547524778945721e+08,
						F31: &XStructEmpty{},
						F32: &XNamedError{},
					},
					F10: XUnionDepth1_AllF30{2.366591380614784e+06},
					F11: XUnionDepth1_Float64F29{8.137462937121485e+07},
					F13: &XStructDepth1_XUint16{},
				},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XList_Any{XList_XStructDepth2_All{{F0: {typeobject(XList_XBool), typeobject(any)}, F2: {0, 9460, 0}, F3: {XMap_Int64_Int64{-3250308136845675012: 2395477512749041486}, []?XStructEmpty{nil, nil, {}}, XUnionDepth2_XSet_XNamedError{F5: {}}}, F5: {D}, F6: {125: 103, 21: 143}, F8: {F3: \"ΔΘΠΣ\", F4: \"cdeΔΘΠΣ\", F5: typeobject(XList_XStructDepth2_All), F7: 54, F8: B, F9: D, F12: {}, F13: 15251, F14: 63192, F16: 1842522911, F17: 12228096953452494076, F18: 14494677390024042662, F19: -1, F20: 29, F21: 1063, F22: 13145, F23: 1030636331, F24: 431566929, F25: 1264583878879273626, F26: -2337026213021984327, F28: -1.3296653e+09, F29: 1.5961664779262068e+09, F30: -2.340291718935576e+09, F31: {}}, F10: {F16: 686436023}, F11: {F29: 1.3667738643069172e+09}, F12: {F9: C}, F13: {F14: 22454}}, {F0: {typeobject(any), typeobject(XArray3_OptXStructDepth2_Set_Float64)}, F1: {1127016751}, F2: {-13306}, F3: {XList_XArray1_XStructEmpty{{}}}, F4: {-6.778491184605664e+08, 1.7797307435833848e+09}, F5: {C, D}, F6: {0: 0, 53: 102}, F8: {F0: XUnionDepth1_XFloat64{F30: 1.4220107318974495e+09}, F2: true, F3: \"deΔ\", F5: typeobject(uint64), F6: 85, F11: {Id: \"Θ\", Msg: \"cdeΔΘΠΣΦ王\"}, F12: {Msg: \"ΘΠΣΦ王普澤世\"}, F13: 65135, F15: 4015456916, F16: 33610517, F18: 13306481127868141452, F19: 45, F20: -41, F21: -10028, F22: 9052, F23: 900863731, F25: 1448358042041714939, F27: -1.146413e+09, F30: 8.547524778945721e+08, F31: {}, F32: {}}, F10: {F30: 2.366591380614784e+06}, F11: {F29: 8.137462937121485e+07}, F13: {}}}}",
		Target: XList_Any{
			XList_XStructDepth2_All{
				{
					F0: XArray2_TypeObject{
						__VDLType_list_292,
						vdl.AnyType,
					},
					F2: []int16{
						0,
						9460,
						0,
					},
					F3: XList_Any{
						XMap_Int64_Int64{
							-3250308136845675012: 2395477512749041486,
						},
						[]*XStructEmpty{
							nil,
							nil,
							{},
						},
						XUnionDepth2_XSet_XNamedError(XUnionDepth2_XSet_XNamedErrorF5{}),
					},
					F5: XSet_XEnumBcd{
						XEnumBcdD: struct{}{},
					},
					F6: map[byte]byte{
						125: 103,
						21:  143,
					},
					F8: XStructDepth1_All{
						F3:  "ΔΘΠΣ",
						F4:  "cdeΔΘΠΣ",
						F5:  __VDLType_list_293,
						F7:  54,
						F8:  XEnumAbcB,
						F9:  XEnumBcdD,
						F12: verror.FromWire(&vdl.WireError{}),
						F13: 15251,
						F14: 63192,
						F16: 1842522911,
						F17: 12228096953452494076,
						F18: 14494677390024042662,
						F19: -1,
						F20: 29,
						F21: 1063,
						F22: 13145,
						F23: 1030636331,
						F24: 431566929,
						F25: 1264583878879273626,
						F26: -2337026213021984327,
						F28: -1.3296653e+09,
						F29: 1.5961664779262068e+09,
						F30: -2.340291718935576e+09,
						F31: &XStructEmpty{},
					},
					F10: XUnionDepth1_AllF16{686436023},
					F11: XUnionDepth1_Float64F29{1.3667738643069172e+09},
					F12: &XStructDepth1_XEnumBcd{
						F9: XEnumBcdC,
					},
					F13: &XStructDepth1_XUint16{
						F14: 22454,
					},
				},
				{
					F0: XArray2_TypeObject{
						vdl.AnyType,
						__VDLType_array_294,
					},
					F1: XArray1_Uint32{
						1127016751,
					},
					F2: []int16{
						-13306,
					},
					F3: XList_Any{
						XList_XArray1_XStructEmpty{
							{},
						},
					},
					F4: map[float64]struct{}{
						-6.778491184605664e+08: struct{}{},
						1.7797307435833848e+09: struct{}{},
					},
					F5: XSet_XEnumBcd{
						XEnumBcdC: struct{}{},
						XEnumBcdD: struct{}{},
					},
					F6: map[byte]byte{
						0:  0,
						53: 102,
					},
					F8: XStructDepth1_All{
						F0: XUnionDepth1_XFloat64(XUnionDepth1_XFloat64F30{1.4220107318974495e+09}),
						F2: true,
						F3: "deΔ",
						F5: vdl.Uint64Type,
						F6: 85,
						F11: XNamedError{
							Id:  "Θ",
							Msg: "cdeΔΘΠΣΦ王",
						},
						F12: verror.FromWire(&vdl.WireError{
							Msg: "ΘΠΣΦ王普澤世",
						}),
						F13: 65135,
						F15: 4015456916,
						F16: 33610517,
						F18: 13306481127868141452,
						F19: 45,
						F20: -41,
						F21: -10028,
						F22: 9052,
						F23: 900863731,
						F25: 1448358042041714939,
						F27: -1.146413e+09,
						F30: 8.547524778945721e+08,
						F31: &XStructEmpty{},
						F32: &XNamedError{},
					},
					F10: XUnionDepth1_AllF30{2.366591380614784e+06},
					F11: XUnionDepth1_Float64F29{8.137462937121485e+07},
					F13: &XStructDepth1_XUint16{},
				},
			},
		},
		SourceLabel: "[]any{XList_XStructDepth2_All{{F0: {typeobject(XList_XBool), typeobject(any)}, F2: {0, 9460, 0}, F3: {XMap_Int64_Int64{-3250308136845675012: 2395477512749041486}, []?XStructEmpty{nil, nil, {}}, XUnionDepth2_XSet_XNamedError{F5: {}}}, F5: {D}, F6: {125: 103, 21: 143}, F8: {F3: \"ΔΘΠΣ\", F4: \"cdeΔΘΠΣ\", F5: typeobject(XList_XStructDepth2_All), F7: 54, F8: B, F9: D, F12: {}, F13: 15251, F14: 63192, F16: 1842522911, F17: 12228096953452494076, F18: 14494677390024042662, F19: -1, F20: 29, F21: 1063, F22: 13145, F23: 1030636331, F24: 431566929, F25: 1264583878879273626, F26: -2337026213021984327, F28: -1.3296653e+09, F29: 1.5961664779262068e+09, F30: -2.340291718935576e+09, F31: {}}, F10: {F16: 686436023}, F11: {F29: 1.3667738643069172e+09}, F12: {F9: C}, F13: {F14: 22454}}, {F0: {typeobject(any), typeobject(XArray3_OptXStructDepth2_Set_Float64)}, F1: {1127016751}, F2: {-13306}, F3: {XList_XArray1_XStructEmpty{{}}}, F4: {-6.778491184605664e+08, 1.7797307435833848e+09}, F5: {C, D}, F6: {0: 0, 53: 102}, F8: {F0: XUnionDepth1_XFloat64{F30: 1.4220107318974495e+09}, F2: true, F3: \"deΔ\", F5: typeobject(uint64), F6: 85, F11: {Id: \"Θ\", Msg: \"cdeΔΘΠΣΦ王\"}, F12: {Msg: \"ΘΠΣΦ王普澤世\"}, F13: 65135, F15: 4015456916, F16: 33610517, F18: 13306481127868141452, F19: 45, F20: -41, F21: -10028, F22: 9052, F23: 900863731, F25: 1448358042041714939, F27: -1.146413e+09, F30: 8.547524778945721e+08, F31: {}, F32: {}}, F10: {F30: 2.366591380614784e+06}, F11: {F29: 8.137462937121485e+07}, F13: {}}}}",
		Source: []interface{}{
			XList_XStructDepth2_All{
				{
					F0: XArray2_TypeObject{
						__VDLType_list_292,
						vdl.AnyType,
					},
					F2: []int16{
						0,
						9460,
						0,
					},
					F3: XList_Any{
						XMap_Int64_Int64{
							-3250308136845675012: 2395477512749041486,
						},
						[]*XStructEmpty{
							nil,
							nil,
							{},
						},
						XUnionDepth2_XSet_XNamedError(XUnionDepth2_XSet_XNamedErrorF5{}),
					},
					F5: XSet_XEnumBcd{
						XEnumBcdD: struct{}{},
					},
					F6: map[byte]byte{
						125: 103,
						21:  143,
					},
					F8: XStructDepth1_All{
						F3:  "ΔΘΠΣ",
						F4:  "cdeΔΘΠΣ",
						F5:  __VDLType_list_293,
						F7:  54,
						F8:  XEnumAbcB,
						F9:  XEnumBcdD,
						F12: verror.FromWire(&vdl.WireError{}),
						F13: 15251,
						F14: 63192,
						F16: 1842522911,
						F17: 12228096953452494076,
						F18: 14494677390024042662,
						F19: -1,
						F20: 29,
						F21: 1063,
						F22: 13145,
						F23: 1030636331,
						F24: 431566929,
						F25: 1264583878879273626,
						F26: -2337026213021984327,
						F28: -1.3296653e+09,
						F29: 1.5961664779262068e+09,
						F30: -2.340291718935576e+09,
						F31: &XStructEmpty{},
					},
					F10: XUnionDepth1_AllF16{686436023},
					F11: XUnionDepth1_Float64F29{1.3667738643069172e+09},
					F12: &XStructDepth1_XEnumBcd{
						F9: XEnumBcdC,
					},
					F13: &XStructDepth1_XUint16{
						F14: 22454,
					},
				},
				{
					F0: XArray2_TypeObject{
						vdl.AnyType,
						__VDLType_array_294,
					},
					F1: XArray1_Uint32{
						1127016751,
					},
					F2: []int16{
						-13306,
					},
					F3: XList_Any{
						XList_XArray1_XStructEmpty{
							{},
						},
					},
					F4: map[float64]struct{}{
						-6.778491184605664e+08: struct{}{},
						1.7797307435833848e+09: struct{}{},
					},
					F5: XSet_XEnumBcd{
						XEnumBcdC: struct{}{},
						XEnumBcdD: struct{}{},
					},
					F6: map[byte]byte{
						0:  0,
						53: 102,
					},
					F8: XStructDepth1_All{
						F0: XUnionDepth1_XFloat64(XUnionDepth1_XFloat64F30{1.4220107318974495e+09}),
						F2: true,
						F3: "deΔ",
						F5: vdl.Uint64Type,
						F6: 85,
						F11: XNamedError{
							Id:  "Θ",
							Msg: "cdeΔΘΠΣΦ王",
						},
						F12: verror.FromWire(&vdl.WireError{
							Msg: "ΘΠΣΦ王普澤世",
						}),
						F13: 65135,
						F15: 4015456916,
						F16: 33610517,
						F18: 13306481127868141452,
						F19: 45,
						F20: -41,
						F21: -10028,
						F22: 9052,
						F23: 900863731,
						F25: 1448358042041714939,
						F27: -1.146413e+09,
						F30: 8.547524778945721e+08,
						F31: &XStructEmpty{},
						F32: &XNamedError{},
					},
					F10: XUnionDepth1_AllF30{2.366591380614784e+06},
					F11: XUnionDepth1_Float64F29{8.137462937121485e+07},
					F13: &XStructDepth1_XUint16{},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_Bool{}",
		Target:      XList_Bool(nil),
		SourceLabel: "XList_Bool{}",
		Source:      XList_Bool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_Bool{}",
		Target:      XList_Bool(nil),
		SourceLabel: "[]XBool{}",
		Source:      []XBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_Bool{}",
		Target:      XList_Bool(nil),
		SourceLabel: "[]bool{}",
		Source:      []bool(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_Bool{true}",
		Target: XList_Bool{
			true,
		},
		SourceLabel: "XList_Bool{true}",
		Source: XList_Bool{
			true,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_Bool{true}",
		Target: XList_Bool{
			true,
		},
		SourceLabel: "[]XBool{true}",
		Source: []XBool{
			true,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_XBool{}",
		Target:      XList_XBool(nil),
		SourceLabel: "XList_XBool{}",
		Source:      XList_XBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XBool{}",
		Target:      XList_XBool(nil),
		SourceLabel: "[]bool{}",
		Source:      []bool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XBool{}",
		Target:      XList_XBool(nil),
		SourceLabel: "XList_Bool{}",
		Source:      XList_Bool(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_XBool{true}",
		Target: XList_XBool{
			true,
		},
		SourceLabel: "XList_XBool{true}",
		Source: XList_XBool{
			true,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_XBool{true}",
		Target: XList_XBool{
			true,
		},
		SourceLabel: "[]any{XBool(true)}",
		Source: []interface{}{
			XBool(true),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_String{}",
		Target:      XList_String(nil),
		SourceLabel: "XList_String{}",
		Source:      XList_String(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_String{}",
		Target:      XList_String(nil),
		SourceLabel: "[]XEnumBcd{}",
		Source:      []XEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_String{}",
		Target:      XList_String(nil),
		SourceLabel: "XList_XString{}",
		Source:      XList_XString(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: XList_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "XList_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: XList_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: XList_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "XList_Any{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: XList_Any{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XList_String{\"abcdeΔΘΠΣΦ王\", \"ΘΠΣΦ王普澤世\"}",
		Target: XList_String{
			"abcdeΔΘΠΣΦ王",
			"ΘΠΣΦ王普澤世",
		},
		SourceLabel: "XList_String{\"abcdeΔΘΠΣΦ王\", \"ΘΠΣΦ王普澤世\"}",
		Source: XList_String{
			"abcdeΔΘΠΣΦ王",
			"ΘΠΣΦ王普澤世",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XList_String{\"abcdeΔΘΠΣΦ王\", \"ΘΠΣΦ王普澤世\"}",
		Target: XList_String{
			"abcdeΔΘΠΣΦ王",
			"ΘΠΣΦ王普澤世",
		},
		SourceLabel: "[]XString{\"abcdeΔΘΠΣΦ王\", \"ΘΠΣΦ王普澤世\"}",
		Source: []XString{
			"abcdeΔΘΠΣΦ王",
			"ΘΠΣΦ王普澤世",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_XString{}",
		Target:      XList_XString(nil),
		SourceLabel: "XList_XString{}",
		Source:      XList_XString(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XString{}",
		Target:      XList_XString(nil),
		SourceLabel: "XList_String{}",
		Source:      XList_String(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XString{}",
		Target:      XList_XString(nil),
		SourceLabel: "[]XEnumAbc{}",
		Source:      []XEnumAbc(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_XString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: XList_XString{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "XList_XString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: XList_XString{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_XString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: XList_XString{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "[]XString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: []XString{
			"abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XList_XString{\"de\"}",
		Target: XList_XString{
			"de",
		},
		SourceLabel: "XList_XString{\"de\"}",
		Source: XList_XString{
			"de",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XList_XString{\"de\"}",
		Target: XList_XString{
			"de",
		},
		SourceLabel: "XList_String{\"de\"}",
		Source: XList_String{
			"de",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_TypeObject{}",
		Target:      XList_TypeObject(nil),
		SourceLabel: "XList_TypeObject{}",
		Source:      XList_TypeObject(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_TypeObject{}",
		Target:      XList_TypeObject(nil),
		SourceLabel: "[]typeobject{}",
		Source:      []*vdl.Type(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_TypeObject{}",
		Target:      XList_TypeObject(nil),
		SourceLabel: "XList_Any{}",
		Source:      XList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_TypeObject{typeobject(int64)}",
		Target: XList_TypeObject{
			vdl.Int64Type,
		},
		SourceLabel: "XList_TypeObject{typeobject(int64)}",
		Source: XList_TypeObject{
			vdl.Int64Type,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_TypeObject{typeobject(int64)}",
		Target: XList_TypeObject{
			vdl.Int64Type,
		},
		SourceLabel: "[]typeobject{typeobject(int64)}",
		Source: []*vdl.Type{
			vdl.Int64Type,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XList_TypeObject{typeobject(XUnionDepth1_Int16), typeobject(any), typeobject(any)}",
		Target: XList_TypeObject{
			__VDLType_union_295,
			vdl.AnyType,
			vdl.AnyType,
		},
		SourceLabel: "XList_TypeObject{typeobject(XUnionDepth1_Int16), typeobject(any), typeobject(any)}",
		Source: XList_TypeObject{
			__VDLType_union_295,
			vdl.AnyType,
			vdl.AnyType,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XList_TypeObject{typeobject(XUnionDepth1_Int16), typeobject(any), typeobject(any)}",
		Target: XList_TypeObject{
			__VDLType_union_295,
			vdl.AnyType,
			vdl.AnyType,
		},
		SourceLabel: "XArray3_Any{typeobject(XUnionDepth1_Int16), typeobject(any), typeobject(any)}",
		Source: XArray3_Any{
			__VDLType_union_295,
			vdl.AnyType,
			vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_Byte(\"\")",
		Target:      XList_Byte(nil),
		SourceLabel: "XList_Byte(\"\")",
		Source:      XList_Byte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_Byte(\"\")",
		Target:      XList_Byte(nil),
		SourceLabel: "XList_XUint16{}",
		Source:      XList_XUint16(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_Byte(\"\")",
		Target:      XList_Byte(nil),
		SourceLabel: "XList_Any{}",
		Source:      XList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_Byte(\"{\")",
		Target:      XList_Byte("{"),
		SourceLabel: "XList_Byte(\"{\")",
		Source:      XList_Byte("{"),
	},
	{
		Label:       "Full",
		TargetLabel: "XList_Byte(\"{\")",
		Target:      XList_Byte("{"),
		SourceLabel: "[]byte(\"{\")",
		Source:      []byte("{"),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XList_Byte(\"\\x01\\xfe\")",
		Target:      XList_Byte("\x01\xfe"),
		SourceLabel: "XList_Byte(\"\\x01\\xfe\")",
		Source:      XList_Byte("\x01\xfe"),
	},
	{
		Label:       "Random0",
		TargetLabel: "XList_Byte(\"\\x01\\xfe\")",
		Target:      XList_Byte("\x01\xfe"),
		SourceLabel: "[]XUint32{1, 254}",
		Source: []XUint32{
			1,
			254,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_XByte(\"\")",
		Target:      XList_XByte(nil),
		SourceLabel: "XList_XByte(\"\")",
		Source:      XList_XByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XByte(\"\")",
		Target:      XList_XByte(nil),
		SourceLabel: "XList_XFloat64{}",
		Source:      XList_XFloat64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XByte(\"\")",
		Target:      XList_XByte(nil),
		SourceLabel: "[]XUint32{}",
		Source:      []XUint32(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_XByte(\"{\")",
		Target:      XList_XByte("{"),
		SourceLabel: "XList_XByte(\"{\")",
		Source:      XList_XByte("{"),
	},
	{
		Label:       "Full",
		TargetLabel: "XList_XByte(\"{\")",
		Target:      XList_XByte("{"),
		SourceLabel: "[]int16{123}",
		Source: []int16{
			123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XList_XByte(\"\\xb0aF\")",
		Target:      XList_XByte("\xb0aF"),
		SourceLabel: "XList_XByte(\"\\xb0aF\")",
		Source:      XList_XByte("\xb0aF"),
	},
	{
		Label:       "Random0",
		TargetLabel: "XList_XByte(\"\\xb0aF\")",
		Target:      XList_XByte("\xb0aF"),
		SourceLabel: "[]XUint32{176, 97, 70}",
		Source: []XUint32{
			176,
			97,
			70,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_XEnumAbc{}",
		Target:      XList_XEnumAbc(nil),
		SourceLabel: "XList_XEnumAbc{}",
		Source:      XList_XEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XEnumAbc{}",
		Target:      XList_XEnumAbc(nil),
		SourceLabel: "[]XEnumBcd{}",
		Source:      []XEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XEnumAbc{}",
		Target:      XList_XEnumAbc(nil),
		SourceLabel: "XList_XString{}",
		Source:      XList_XString(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_XEnumAbc{C}",
		Target: XList_XEnumAbc{
			XEnumAbcC,
		},
		SourceLabel: "XList_XEnumAbc{C}",
		Source: XList_XEnumAbc{
			XEnumAbcC,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_XEnumAbc{C}",
		Target: XList_XEnumAbc{
			XEnumAbcC,
		},
		SourceLabel: "XArray1_String{\"C\"}",
		Source: XArray1_String{
			"C",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_XEnumBcd{}",
		Target:      XList_XEnumBcd(nil),
		SourceLabel: "XList_XEnumBcd{}",
		Source:      XList_XEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XEnumBcd{}",
		Target:      XList_XEnumBcd(nil),
		SourceLabel: "XList_XString{}",
		Source:      XList_XString(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XEnumBcd{}",
		Target:      XList_XEnumBcd(nil),
		SourceLabel: "XList_XEnumAbc{}",
		Source:      XList_XEnumAbc(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_XEnumBcd{D}",
		Target: XList_XEnumBcd{
			XEnumBcdD,
		},
		SourceLabel: "XList_XEnumBcd{D}",
		Source: XList_XEnumBcd{
			XEnumBcdD,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_XEnumBcd{D}",
		Target: XList_XEnumBcd{
			XEnumBcdD,
		},
		SourceLabel: "[]any{XEnumBcd.D}",
		Source: []interface{}{
			XEnumBcdD,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_XStructEmpty{}",
		Target:      XList_XStructEmpty(nil),
		SourceLabel: "XList_XStructEmpty{}",
		Source:      XList_XStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XStructEmpty{}",
		Target:      XList_XStructEmpty(nil),
		SourceLabel: "[]error{}",
		Source:      []error(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XStructEmpty{}",
		Target:      XList_XStructEmpty(nil),
		SourceLabel: "[]XStructEmpty{}",
		Source:      []XStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_XStructEmpty{{}}",
		Target: XList_XStructEmpty{
			{},
		},
		SourceLabel: "XList_XStructEmpty{{}}",
		Source: XList_XStructEmpty{
			{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_XStructEmpty{{}}",
		Target: XList_XStructEmpty{
			{},
		},
		SourceLabel: "[]?XStructDepth2_Set_Float64{{}}",
		Source: []*XStructDepth2_Set_Float64{
			{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_XNamedError{}",
		Target:      XList_XNamedError(nil),
		SourceLabel: "XList_XNamedError{}",
		Source:      XList_XNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XNamedError{}",
		Target:      XList_XNamedError(nil),
		SourceLabel: "[]XStructEmpty{}",
		Source:      []XStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XNamedError{}",
		Target:      XList_XNamedError(nil),
		SourceLabel: "XList_Any{}",
		Source:      XList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XList_XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "XList_XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XList_XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XList_XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "XList_Any{XNamedError{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XList_Any{
			XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XList_XNamedError{{Id: \"eΔΘΠΣ\", Msg: \"世界\"}, {Id: \"abc\"}, {Msg: \"ΘΠΣ\"}}",
		Target: XList_XNamedError{
			{
				Id:  "eΔΘΠΣ",
				Msg: "世界",
			},
			{
				Id: "abc",
			},
			{
				Msg: "ΘΠΣ",
			},
		},
		SourceLabel: "XList_XNamedError{{Id: \"eΔΘΠΣ\", Msg: \"世界\"}, {Id: \"abc\"}, {Msg: \"ΘΠΣ\"}}",
		Source: XList_XNamedError{
			{
				Id:  "eΔΘΠΣ",
				Msg: "世界",
			},
			{
				Id: "abc",
			},
			{
				Msg: "ΘΠΣ",
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XList_XNamedError{{Id: \"eΔΘΠΣ\", Msg: \"世界\"}, {Id: \"abc\"}, {Msg: \"ΘΠΣ\"}}",
		Target: XList_XNamedError{
			{
				Id:  "eΔΘΠΣ",
				Msg: "世界",
			},
			{
				Id: "abc",
			},
			{
				Msg: "ΘΠΣ",
			},
		},
		SourceLabel: "[]XNamedError{{Id: \"eΔΘΠΣ\", Msg: \"世界\"}, {Id: \"abc\"}, {Msg: \"ΘΠΣ\"}}",
		Source: []XNamedError{
			{
				Id:  "eΔΘΠΣ",
				Msg: "世界",
			},
			{
				Id: "abc",
			},
			{
				Msg: "ΘΠΣ",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_Error{}",
		Target:      XList_Error(nil),
		SourceLabel: "XList_Error{}",
		Source:      XList_Error(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_Error{}",
		Target:      XList_Error(nil),
		SourceLabel: "[]?XNamedError{}",
		Source:      []*XNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_Error{}",
		Target:      XList_Error(nil),
		SourceLabel: "XList_OptXNamedError{}",
		Source:      XList_OptXNamedError(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_Error{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XList_Error{
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
		SourceLabel: "XList_Error{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XList_Error{
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_Error{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XList_Error{
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
		SourceLabel: "[]any{error{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: []interface{}{
			verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XList_Error{{Id: \"eΔΘΠΣΦ王普\", Msg: \"澤世\"}, {Id: \"ΠΣΦ王普澤\", Msg: \"ΔΘΠΣΦ\"}}",
		Target: XList_Error{
			verror.FromWire(&vdl.WireError{
				Id:  "eΔΘΠΣΦ王普",
				Msg: "澤世",
			}),
			verror.FromWire(&vdl.WireError{
				Id:  "ΠΣΦ王普澤",
				Msg: "ΔΘΠΣΦ",
			}),
		},
		SourceLabel: "XList_Error{{Id: \"eΔΘΠΣΦ王普\", Msg: \"澤世\"}, {Id: \"ΠΣΦ王普澤\", Msg: \"ΔΘΠΣΦ\"}}",
		Source: XList_Error{
			verror.FromWire(&vdl.WireError{
				Id:  "eΔΘΠΣΦ王普",
				Msg: "澤世",
			}),
			verror.FromWire(&vdl.WireError{
				Id:  "ΠΣΦ王普澤",
				Msg: "ΔΘΠΣΦ",
			}),
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XList_Error{{Id: \"eΔΘΠΣΦ王普\", Msg: \"澤世\"}, {Id: \"ΠΣΦ王普澤\", Msg: \"ΔΘΠΣΦ\"}}",
		Target: XList_Error{
			verror.FromWire(&vdl.WireError{
				Id:  "eΔΘΠΣΦ王普",
				Msg: "澤世",
			}),
			verror.FromWire(&vdl.WireError{
				Id:  "ΠΣΦ王普澤",
				Msg: "ΔΘΠΣΦ",
			}),
		},
		SourceLabel: "XList_Any{error{Id: \"eΔΘΠΣΦ王普\", Msg: \"澤世\"}, error{Id: \"ΠΣΦ王普澤\", Msg: \"ΔΘΠΣΦ\"}}",
		Source: XList_Any{
			verror.FromWire(&vdl.WireError{
				Id:  "eΔΘΠΣΦ王普",
				Msg: "澤世",
			}),
			verror.FromWire(&vdl.WireError{
				Id:  "ΠΣΦ王普澤",
				Msg: "ΔΘΠΣΦ",
			}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_XUint16{}",
		Target:      XList_XUint16(nil),
		SourceLabel: "XList_XUint16{}",
		Source:      XList_XUint16(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XUint16{}",
		Target:      XList_XUint16(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XUint16{}",
		Target:      XList_XUint16(nil),
		SourceLabel: "XList_Byte(\"\")",
		Source:      XList_Byte(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_XUint16{123}",
		Target: XList_XUint16{
			123,
		},
		SourceLabel: "XList_XUint16{123}",
		Source: XList_XUint16{
			123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_XUint16{123}",
		Target: XList_XUint16{
			123,
		},
		SourceLabel: "XArray1_Byte(\"{\")",
		Source: XArray1_Byte{
			123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XList_XUint16{20240, 20120}",
		Target: XList_XUint16{
			20240,
			20120,
		},
		SourceLabel: "XList_XUint16{20240, 20120}",
		Source: XList_XUint16{
			20240,
			20120,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XList_XUint16{20240, 20120}",
		Target: XList_XUint16{
			20240,
			20120,
		},
		SourceLabel: "XList_XFloat32{20240, 20120}",
		Source: XList_XFloat32{
			20240,
			20120,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_XFloat32{}",
		Target:      XList_XFloat32(nil),
		SourceLabel: "XList_XFloat32{}",
		Source:      XList_XFloat32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XFloat32{}",
		Target:      XList_XFloat32(nil),
		SourceLabel: "[]XByte(\"\")",
		Source:      []XByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XFloat32{}",
		Target:      XList_XFloat32(nil),
		SourceLabel: "[]byte(\"\")",
		Source:      []byte(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_XFloat32{1.5}",
		Target: XList_XFloat32{
			1.5,
		},
		SourceLabel: "XList_XFloat32{1.5}",
		Source: XList_XFloat32{
			1.5,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_XFloat32{1.5}",
		Target: XList_XFloat32{
			1.5,
		},
		SourceLabel: "XList_Any{XFloat32(1.5)}",
		Source: XList_Any{
			XFloat32(1.5),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XList_XFloat32{-7.4083795e+08, 8.4293466e+08, 1.3024481e+07}",
		Target: XList_XFloat32{
			-7.4083795e+08,
			8.4293466e+08,
			1.3024481e+07,
		},
		SourceLabel: "XList_XFloat32{-7.4083795e+08, 8.4293466e+08, 1.3024481e+07}",
		Source: XList_XFloat32{
			-7.4083795e+08,
			8.4293466e+08,
			1.3024481e+07,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XList_XFloat32{-7.4083795e+08, 8.4293466e+08, 1.3024481e+07}",
		Target: XList_XFloat32{
			-7.4083795e+08,
			8.4293466e+08,
			1.3024481e+07,
		},
		SourceLabel: "XList_Any{XFloat32(-7.4083795e+08), XFloat32(8.4293466e+08), XFloat32(1.3024481e+07)}",
		Source: XList_Any{
			XFloat32(-7.4083795e+08),
			XFloat32(8.4293466e+08),
			XFloat32(1.3024481e+07),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_XFloat64{}",
		Target:      XList_XFloat64(nil),
		SourceLabel: "XList_XFloat64{}",
		Source:      XList_XFloat64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XFloat64{}",
		Target:      XList_XFloat64(nil),
		SourceLabel: "XList_Byte(\"\")",
		Source:      XList_Byte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XFloat64{}",
		Target:      XList_XFloat64(nil),
		SourceLabel: "XList_XByte(\"\")",
		Source:      XList_XByte(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_XFloat64{1.5}",
		Target: XList_XFloat64{
			1.5,
		},
		SourceLabel: "XList_XFloat64{1.5}",
		Source: XList_XFloat64{
			1.5,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_XFloat64{1.5}",
		Target: XList_XFloat64{
			1.5,
		},
		SourceLabel: "XList_XFloat32{1.5}",
		Source: XList_XFloat32{
			1.5,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XList_XFloat64{-1.2890941521970794e+08, 2.6391467736119337e+09}",
		Target: XList_XFloat64{
			-1.2890941521970794e+08,
			2.6391467736119337e+09,
		},
		SourceLabel: "XList_XFloat64{-1.2890941521970794e+08, 2.6391467736119337e+09}",
		Source: XList_XFloat64{
			-1.2890941521970794e+08,
			2.6391467736119337e+09,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XList_XFloat64{-1.2890941521970794e+08, 2.6391467736119337e+09}",
		Target: XList_XFloat64{
			-1.2890941521970794e+08,
			2.6391467736119337e+09,
		},
		SourceLabel: "XList_Any{XFloat64(-1.2890941521970794e+08), XFloat64(2.6391467736119337e+09)}",
		Source: XList_Any{
			XFloat64(-1.2890941521970794e+08),
			XFloat64(2.6391467736119337e+09),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_OptXStructEmpty{}",
		Target:      XList_OptXStructEmpty(nil),
		SourceLabel: "XList_OptXStructEmpty{}",
		Source:      XList_OptXStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_OptXStructEmpty{}",
		Target:      XList_OptXStructEmpty(nil),
		SourceLabel: "XList_Any{}",
		Source:      XList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_OptXStructEmpty{}",
		Target:      XList_OptXStructEmpty(nil),
		SourceLabel: "XList_XStructEmpty{}",
		Source:      XList_XStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_OptXStructEmpty{{}}",
		Target: XList_OptXStructEmpty{
			{},
		},
		SourceLabel: "XList_OptXStructEmpty{{}}",
		Source: XList_OptXStructEmpty{
			{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_OptXStructEmpty{{}}",
		Target: XList_OptXStructEmpty{
			{},
		},
		SourceLabel: "XArray1_OptXStructEmpty{{}}",
		Source: XArray1_OptXStructEmpty{
			{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_OptXNamedError{}",
		Target:      XList_OptXNamedError(nil),
		SourceLabel: "XList_OptXNamedError{}",
		Source:      XList_OptXNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_OptXNamedError{}",
		Target:      XList_OptXNamedError(nil),
		SourceLabel: "[]error{}",
		Source:      []error(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_OptXNamedError{}",
		Target:      XList_OptXNamedError(nil),
		SourceLabel: "XList_OptXStructEmpty{}",
		Source:      XList_OptXStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_OptXNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XList_OptXNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "XList_OptXNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XList_OptXNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_OptXNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XList_OptXNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "XList_Error{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XList_Error{
			verror.FromWire(&vdl.WireError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XList_OptXNamedError{{Id: \"王普澤世界\", Msg: \"ΘΠΣΦ王普澤世\"}, {Id: \"王普澤世界\"}}",
		Target: XList_OptXNamedError{
			{
				Id:  "王普澤世界",
				Msg: "ΘΠΣΦ王普澤世",
			},
			{
				Id: "王普澤世界",
			},
		},
		SourceLabel: "XList_OptXNamedError{{Id: \"王普澤世界\", Msg: \"ΘΠΣΦ王普澤世\"}, {Id: \"王普澤世界\"}}",
		Source: XList_OptXNamedError{
			{
				Id:  "王普澤世界",
				Msg: "ΘΠΣΦ王普澤世",
			},
			{
				Id: "王普澤世界",
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XList_OptXNamedError{{Id: \"王普澤世界\", Msg: \"ΘΠΣΦ王普澤世\"}, {Id: \"王普澤世界\"}}",
		Target: XList_OptXNamedError{
			{
				Id:  "王普澤世界",
				Msg: "ΘΠΣΦ王普澤世",
			},
			{
				Id: "王普澤世界",
			},
		},
		SourceLabel: "[]any{?XNamedError{Id: \"王普澤世界\", Msg: \"ΘΠΣΦ王普澤世\"}, ?XNamedError{Id: \"王普澤世界\"}}",
		Source: []interface{}{
			&XNamedError{
				Id:  "王普澤世界",
				Msg: "ΘΠΣΦ王普澤世",
			},
			&XNamedError{
				Id: "王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[XBool]{}",
		Target:      map[XBool]struct{}(nil),
		SourceLabel: "set[XBool]{}",
		Source:      map[XBool]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[XBool]{}",
		Target:      map[XBool]struct{}(nil),
		SourceLabel: "set[bool]{}",
		Source:      map[bool]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[XBool]{}",
		Target:      map[XBool]struct{}(nil),
		SourceLabel: "XSet_Bool{}",
		Source:      XSet_Bool(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[XBool]{true}",
		Target: map[XBool]struct{}{
			true: struct{}{},
		},
		SourceLabel: "set[XBool]{true}",
		Source: map[XBool]struct{}{
			true: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[XBool]{true}",
		Target: map[XBool]struct{}{
			true: struct{}{},
		},
		SourceLabel: "set[bool]{true}",
		Source: map[bool]struct{}{
			true: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[XString]{}",
		Target:      map[XString]struct{}(nil),
		SourceLabel: "set[XString]{}",
		Source:      map[XString]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[XString]{}",
		Target:      map[XString]struct{}(nil),
		SourceLabel: "XSet_XEnumAbc{}",
		Source:      XSet_XEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[XString]{}",
		Target:      map[XString]struct{}(nil),
		SourceLabel: "set[XEnumAbc]{}",
		Source:      map[XEnumAbc]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[XString]{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: map[XString]struct{}{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
		SourceLabel: "set[XString]{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: map[XString]struct{}{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[XString]{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: map[XString]struct{}{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
		SourceLabel: "XSet_XString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: XSet_XString{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "set[XString]{\"ΠΣΦ王普澤世\", \"ΣΦ王普澤\"}",
		Target: map[XString]struct{}{
			"ΠΣΦ王普澤世": struct{}{},
			"ΣΦ王普澤":   struct{}{},
		},
		SourceLabel: "set[XString]{\"ΠΣΦ王普澤世\", \"ΣΦ王普澤\"}",
		Source: map[XString]struct{}{
			"ΠΣΦ王普澤世": struct{}{},
			"ΣΦ王普澤":   struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "set[XString]{\"ΠΣΦ王普澤世\", \"ΣΦ王普澤\"}",
		Target: map[XString]struct{}{
			"ΠΣΦ王普澤世": struct{}{},
			"ΣΦ王普澤":   struct{}{},
		},
		SourceLabel: "XSet_XString{\"ΠΣΦ王普澤世\", \"ΣΦ王普澤\"}",
		Source: XSet_XString{
			"ΠΣΦ王普澤世": struct{}{},
			"ΣΦ王普澤":   struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[XByte]{}",
		Target:      map[XByte]struct{}(nil),
		SourceLabel: "set[XByte]{}",
		Source:      map[XByte]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[XByte]{}",
		Target:      map[XByte]struct{}(nil),
		SourceLabel: "set[byte]{}",
		Source:      map[byte]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[XByte]{}",
		Target:      map[XByte]struct{}(nil),
		SourceLabel: "set[float64]{}",
		Source:      map[float64]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[XByte]{123}",
		Target: map[XByte]struct{}{
			123: struct{}{},
		},
		SourceLabel: "set[XByte]{123}",
		Source: map[XByte]struct{}{
			123: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[XByte]{123}",
		Target: map[XByte]struct{}{
			123: struct{}{},
		},
		SourceLabel: "set[int32]{123}",
		Source: map[int32]struct{}{
			123: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "set[XByte]{0, 123, 26}",
		Target: map[XByte]struct{}{
			0:   struct{}{},
			123: struct{}{},
			26:  struct{}{},
		},
		SourceLabel: "set[XByte]{0, 123, 26}",
		Source: map[XByte]struct{}{
			0:   struct{}{},
			123: struct{}{},
			26:  struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "set[XByte]{0, 123, 26}",
		Target: map[XByte]struct{}{
			0:   struct{}{},
			123: struct{}{},
			26:  struct{}{},
		},
		SourceLabel: "XSet_Float32{0, 123, 26}",
		Source: XSet_Float32{
			0:   struct{}{},
			123: struct{}{},
			26:  struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[XEnumAbc]{}",
		Target:      map[XEnumAbc]struct{}(nil),
		SourceLabel: "set[XEnumAbc]{}",
		Source:      map[XEnumAbc]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[XEnumAbc]{}",
		Target:      map[XEnumAbc]struct{}(nil),
		SourceLabel: "set[XEnumBcd]{}",
		Source:      map[XEnumBcd]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[XEnumAbc]{}",
		Target:      map[XEnumAbc]struct{}(nil),
		SourceLabel: "XSet_XString{}",
		Source:      XSet_XString(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[XEnumAbc]{C}",
		Target: map[XEnumAbc]struct{}{
			XEnumAbcC: struct{}{},
		},
		SourceLabel: "set[XEnumAbc]{C}",
		Source: map[XEnumAbc]struct{}{
			XEnumAbcC: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[XEnumAbc]{C}",
		Target: map[XEnumAbc]struct{}{
			XEnumAbcC: struct{}{},
		},
		SourceLabel: "set[XEnumBcd]{C}",
		Source: map[XEnumBcd]struct{}{
			XEnumBcdC: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[XEnumBcd]{}",
		Target:      map[XEnumBcd]struct{}(nil),
		SourceLabel: "set[XEnumBcd]{}",
		Source:      map[XEnumBcd]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[XEnumBcd]{}",
		Target:      map[XEnumBcd]struct{}(nil),
		SourceLabel: "XSet_XEnumAbc{}",
		Source:      XSet_XEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[XEnumBcd]{}",
		Target:      map[XEnumBcd]struct{}(nil),
		SourceLabel: "XSet_String{}",
		Source:      XSet_String(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[XEnumBcd]{D}",
		Target: map[XEnumBcd]struct{}{
			XEnumBcdD: struct{}{},
		},
		SourceLabel: "set[XEnumBcd]{D}",
		Source: map[XEnumBcd]struct{}{
			XEnumBcdD: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[XEnumBcd]{D}",
		Target: map[XEnumBcd]struct{}{
			XEnumBcdD: struct{}{},
		},
		SourceLabel: "XSet_XEnumBcd{D}",
		Source: XSet_XEnumBcd{
			XEnumBcdD: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[XStructEmpty]{}",
		Target:      map[XStructEmpty]struct{}(nil),
		SourceLabel: "set[XStructEmpty]{}",
		Source:      map[XStructEmpty]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[XStructEmpty]{}",
		Target:      map[XStructEmpty]struct{}(nil),
		SourceLabel: "XSet_XStructEmpty{}",
		Source:      XSet_XStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[XStructEmpty]{}",
		Target:      map[XStructEmpty]struct{}(nil),
		SourceLabel: "XSet_XStructDepth1_XFloat64{}",
		Source:      XSet_XStructDepth1_XFloat64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[XStructEmpty]{{}}",
		Target: map[XStructEmpty]struct{}{
			{}: struct{}{},
		},
		SourceLabel: "set[XStructEmpty]{{}}",
		Source: map[XStructEmpty]struct{}{
			{}: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[XStructEmpty]{{}}",
		Target: map[XStructEmpty]struct{}{
			{}: struct{}{},
		},
		SourceLabel: "set[XStructDepth1_String]{{}}",
		Source: map[XStructDepth1_String]struct{}{
			{}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[XNamedError]{}",
		Target:      map[XNamedError]struct{}(nil),
		SourceLabel: "set[XNamedError]{}",
		Source:      map[XNamedError]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[XNamedError]{}",
		Target:      map[XNamedError]struct{}(nil),
		SourceLabel: "XSet_XNamedError{}",
		Source:      XSet_XNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[XNamedError]{}",
		Target:      map[XNamedError]struct{}(nil),
		SourceLabel: "set[XStructEmpty]{}",
		Source:      map[XStructEmpty]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[XNamedError]{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: map[XNamedError]struct{}{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		},
		SourceLabel: "set[XNamedError]{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: map[XNamedError]struct{}{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[XNamedError]{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: map[XNamedError]struct{}{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		},
		SourceLabel: "XSet_XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XSet_XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "set[XNamedError]{{Id: \"bcdeΔΘΠΣ\", Msg: \"eΔΘΠ\"}, {Id: \"cd\"}, {Id: \"ΘΠΣΦ王\", Msg: \"c\"}}",
		Target: map[XNamedError]struct{}{
			{
				Id:  "bcdeΔΘΠΣ",
				Msg: "eΔΘΠ",
			}: struct{}{},
			{
				Id: "cd",
			}: struct{}{},
			{
				Id:  "ΘΠΣΦ王",
				Msg: "c",
			}: struct{}{},
		},
		SourceLabel: "set[XNamedError]{{Id: \"bcdeΔΘΠΣ\", Msg: \"eΔΘΠ\"}, {Id: \"cd\"}, {Id: \"ΘΠΣΦ王\", Msg: \"c\"}}",
		Source: map[XNamedError]struct{}{
			{
				Id:  "bcdeΔΘΠΣ",
				Msg: "eΔΘΠ",
			}: struct{}{},
			{
				Id: "cd",
			}: struct{}{},
			{
				Id:  "ΘΠΣΦ王",
				Msg: "c",
			}: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "set[XNamedError]{{Id: \"bcdeΔΘΠΣ\", Msg: \"eΔΘΠ\"}, {Id: \"cd\"}, {Id: \"ΘΠΣΦ王\", Msg: \"c\"}}",
		Target: map[XNamedError]struct{}{
			{
				Id:  "bcdeΔΘΠΣ",
				Msg: "eΔΘΠ",
			}: struct{}{},
			{
				Id: "cd",
			}: struct{}{},
			{
				Id:  "ΘΠΣΦ王",
				Msg: "c",
			}: struct{}{},
		},
		SourceLabel: "XSet_XNamedError{{Id: \"bcdeΔΘΠΣ\", Msg: \"eΔΘΠ\"}, {Id: \"cd\"}, {Id: \"ΘΠΣΦ王\", Msg: \"c\"}}",
		Source: XSet_XNamedError{
			{
				Id:  "bcdeΔΘΠΣ",
				Msg: "eΔΘΠ",
			}: struct{}{},
			{
				Id: "cd",
			}: struct{}{},
			{
				Id:  "ΘΠΣΦ王",
				Msg: "c",
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XSet_Bool{}",
		Target:      XSet_Bool(nil),
		SourceLabel: "XSet_Bool{}",
		Source:      XSet_Bool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_Bool{}",
		Target:      XSet_Bool(nil),
		SourceLabel: "set[XBool]{}",
		Source:      map[XBool]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_Bool{}",
		Target:      XSet_Bool(nil),
		SourceLabel: "set[bool]{}",
		Source:      map[bool]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XSet_Bool{true}",
		Target: XSet_Bool{
			true: struct{}{},
		},
		SourceLabel: "XSet_Bool{true}",
		Source: XSet_Bool{
			true: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XSet_Bool{true}",
		Target: XSet_Bool{
			true: struct{}{},
		},
		SourceLabel: "XSet_XBool{true}",
		Source: XSet_XBool{
			true: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XSet_XBool{}",
		Target:      XSet_XBool(nil),
		SourceLabel: "XSet_XBool{}",
		Source:      XSet_XBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_XBool{}",
		Target:      XSet_XBool(nil),
		SourceLabel: "set[XBool]{}",
		Source:      map[XBool]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_XBool{}",
		Target:      XSet_XBool(nil),
		SourceLabel: "XSet_Bool{}",
		Source:      XSet_Bool(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XSet_XBool{true}",
		Target: XSet_XBool{
			true: struct{}{},
		},
		SourceLabel: "XSet_XBool{true}",
		Source: XSet_XBool{
			true: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XSet_XBool{true}",
		Target: XSet_XBool{
			true: struct{}{},
		},
		SourceLabel: "set[XBool]{true}",
		Source: map[XBool]struct{}{
			true: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XSet_String{}",
		Target:      XSet_String(nil),
		SourceLabel: "XSet_String{}",
		Source:      XSet_String(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_String{}",
		Target:      XSet_String(nil),
		SourceLabel: "set[XEnumBcd]{}",
		Source:      map[XEnumBcd]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_String{}",
		Target:      XSet_String(nil),
		SourceLabel: "XSet_XEnumBcd{}",
		Source:      XSet_XEnumBcd(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XSet_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: XSet_String{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
		SourceLabel: "XSet_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: XSet_String{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XSet_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: XSet_String{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
		SourceLabel: "set[XString]{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: map[XString]struct{}{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XSet_String{\"王普澤世界\"}",
		Target: XSet_String{
			"王普澤世界": struct{}{},
		},
		SourceLabel: "XSet_String{\"王普澤世界\"}",
		Source: XSet_String{
			"王普澤世界": struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XSet_String{\"王普澤世界\"}",
		Target: XSet_String{
			"王普澤世界": struct{}{},
		},
		SourceLabel: "set[string]{\"王普澤世界\"}",
		Source: map[string]struct{}{
			"王普澤世界": struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XSet_XString{}",
		Target:      XSet_XString(nil),
		SourceLabel: "XSet_XString{}",
		Source:      XSet_XString(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_XString{}",
		Target:      XSet_XString(nil),
		SourceLabel: "set[XEnumAbc]{}",
		Source:      map[XEnumAbc]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_XString{}",
		Target:      XSet_XString(nil),
		SourceLabel: "set[XEnumBcd]{}",
		Source:      map[XEnumBcd]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XSet_XString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: XSet_XString{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
		SourceLabel: "XSet_XString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: XSet_XString{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XSet_XString{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: XSet_XString{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
		SourceLabel: "XSet_String{\"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: XSet_String{
			"abcdeΔΘΠΣΦ王普澤世界": struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XSet_XString{\"\", \"deΔΘΠΣ\", \"deΔΘΠΣΦ王\"}",
		Target: XSet_XString{
			"":         struct{}{},
			"deΔΘΠΣ":   struct{}{},
			"deΔΘΠΣΦ王": struct{}{},
		},
		SourceLabel: "XSet_XString{\"\", \"deΔΘΠΣ\", \"deΔΘΠΣΦ王\"}",
		Source: XSet_XString{
			"":         struct{}{},
			"deΔΘΠΣ":   struct{}{},
			"deΔΘΠΣΦ王": struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XSet_XString{\"\", \"deΔΘΠΣ\", \"deΔΘΠΣΦ王\"}",
		Target: XSet_XString{
			"":         struct{}{},
			"deΔΘΠΣ":   struct{}{},
			"deΔΘΠΣΦ王": struct{}{},
		},
		SourceLabel: "set[string]{\"\", \"deΔΘΠΣ\", \"deΔΘΠΣΦ王\"}",
		Source: map[string]struct{}{
			"":         struct{}{},
			"deΔΘΠΣ":   struct{}{},
			"deΔΘΠΣΦ王": struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XSet_Byte{}",
		Target:      XSet_Byte(nil),
		SourceLabel: "XSet_Byte{}",
		Source:      XSet_Byte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_Byte{}",
		Target:      XSet_Byte(nil),
		SourceLabel: "XSet_Uint64{}",
		Source:      XSet_Uint64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_Byte{}",
		Target:      XSet_Byte(nil),
		SourceLabel: "XSet_XByte{}",
		Source:      XSet_XByte(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XSet_Byte{123}",
		Target: XSet_Byte{
			123: struct{}{},
		},
		SourceLabel: "XSet_Byte{123}",
		Source: XSet_Byte{
			123: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XSet_Byte{123}",
		Target: XSet_Byte{
			123: struct{}{},
		},
		SourceLabel: "XSet_Float32{123}",
		Source: XSet_Float32{
			123: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XSet_Byte{184, 89}",
		Target: XSet_Byte{
			184: struct{}{},
			89:  struct{}{},
		},
		SourceLabel: "XSet_Byte{184, 89}",
		Source: XSet_Byte{
			184: struct{}{},
			89:  struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XSet_Byte{184, 89}",
		Target: XSet_Byte{
			184: struct{}{},
			89:  struct{}{},
		},
		SourceLabel: "set[int32]{184, 89}",
		Source: map[int32]struct{}{
			184: struct{}{},
			89:  struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XSet_XByte{}",
		Target:      XSet_XByte(nil),
		SourceLabel: "XSet_XByte{}",
		Source:      XSet_XByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_XByte{}",
		Target:      XSet_XByte(nil),
		SourceLabel: "XSet_Uint64{}",
		Source:      XSet_Uint64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_XByte{}",
		Target:      XSet_XByte(nil),
		SourceLabel: "XSet_XUint64{}",
		Source:      XSet_XUint64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XSet_XByte{123}",
		Target: XSet_XByte{
			123: struct{}{},
		},
		SourceLabel: "XSet_XByte{123}",
		Source: XSet_XByte{
			123: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XSet_XByte{123}",
		Target: XSet_XByte{
			123: struct{}{},
		},
		SourceLabel: "set[XByte]{123}",
		Source: map[XByte]struct{}{
			123: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XSet_XByte{0, 229}",
		Target: XSet_XByte{
			0:   struct{}{},
			229: struct{}{},
		},
		SourceLabel: "XSet_XByte{0, 229}",
		Source: XSet_XByte{
			0:   struct{}{},
			229: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XSet_XByte{0, 229}",
		Target: XSet_XByte{
			0:   struct{}{},
			229: struct{}{},
		},
		SourceLabel: "set[XByte]{0, 229}",
		Source: map[XByte]struct{}{
			0:   struct{}{},
			229: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XSet_XEnumAbc{}",
		Target:      XSet_XEnumAbc(nil),
		SourceLabel: "XSet_XEnumAbc{}",
		Source:      XSet_XEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_XEnumAbc{}",
		Target:      XSet_XEnumAbc(nil),
		SourceLabel: "set[XEnumAbc]{}",
		Source:      map[XEnumAbc]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_XEnumAbc{}",
		Target:      XSet_XEnumAbc(nil),
		SourceLabel: "set[string]{}",
		Source:      map[string]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XSet_XEnumAbc{C}",
		Target: XSet_XEnumAbc{
			XEnumAbcC: struct{}{},
		},
		SourceLabel: "XSet_XEnumAbc{C}",
		Source: XSet_XEnumAbc{
			XEnumAbcC: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XSet_XEnumAbc{C}",
		Target: XSet_XEnumAbc{
			XEnumAbcC: struct{}{},
		},
		SourceLabel: "XSet_XEnumBcd{C}",
		Source: XSet_XEnumBcd{
			XEnumBcdC: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XSet_XEnumBcd{}",
		Target:      XSet_XEnumBcd(nil),
		SourceLabel: "XSet_XEnumBcd{}",
		Source:      XSet_XEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_XEnumBcd{}",
		Target:      XSet_XEnumBcd(nil),
		SourceLabel: "XSet_String{}",
		Source:      XSet_String(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_XEnumBcd{}",
		Target:      XSet_XEnumBcd(nil),
		SourceLabel: "set[XEnumAbc]{}",
		Source:      map[XEnumAbc]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XSet_XEnumBcd{D}",
		Target: XSet_XEnumBcd{
			XEnumBcdD: struct{}{},
		},
		SourceLabel: "XSet_XEnumBcd{D}",
		Source: XSet_XEnumBcd{
			XEnumBcdD: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XSet_XEnumBcd{D}",
		Target: XSet_XEnumBcd{
			XEnumBcdD: struct{}{},
		},
		SourceLabel: "set[string]{\"D\"}",
		Source: map[string]struct{}{
			"D": struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XSet_XStructEmpty{}",
		Target:      XSet_XStructEmpty(nil),
		SourceLabel: "XSet_XStructEmpty{}",
		Source:      XSet_XStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_XStructEmpty{}",
		Target:      XSet_XStructEmpty(nil),
		SourceLabel: "set[XNamedError]{}",
		Source:      map[XNamedError]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_XStructEmpty{}",
		Target:      XSet_XStructEmpty(nil),
		SourceLabel: "set[XStructEmpty]{}",
		Source:      map[XStructEmpty]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XSet_XStructEmpty{{}}",
		Target: XSet_XStructEmpty{
			{}: struct{}{},
		},
		SourceLabel: "XSet_XStructEmpty{{}}",
		Source: XSet_XStructEmpty{
			{}: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XSet_XStructEmpty{{}}",
		Target: XSet_XStructEmpty{
			{}: struct{}{},
		},
		SourceLabel: "set[XStructDepth2_XStructDepth1_Bool]{{}}",
		Source: map[XStructDepth2_XStructDepth1_Bool]struct{}{
			{}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XSet_XNamedError{}",
		Target:      XSet_XNamedError(nil),
		SourceLabel: "XSet_XNamedError{}",
		Source:      XSet_XNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_XNamedError{}",
		Target:      XSet_XNamedError(nil),
		SourceLabel: "set[XStructEmpty]{}",
		Source:      map[XStructEmpty]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_XNamedError{}",
		Target:      XSet_XNamedError(nil),
		SourceLabel: "XSet_XStructEmpty{}",
		Source:      XSet_XStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XSet_XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XSet_XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		},
		SourceLabel: "XSet_XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XSet_XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XSet_XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XSet_XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		},
		SourceLabel: "set[XNamedError]{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: map[XNamedError]struct{}{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XSet_XNamedError{{Id: \"ΠΣΦ\", Msg: \"cdeΔΘΠΣ\"}, {Id: \"王普澤\", Msg: \"d\"}}",
		Target: XSet_XNamedError{
			{
				Id:  "ΠΣΦ",
				Msg: "cdeΔΘΠΣ",
			}: struct{}{},
			{
				Id:  "王普澤",
				Msg: "d",
			}: struct{}{},
		},
		SourceLabel: "XSet_XNamedError{{Id: \"ΠΣΦ\", Msg: \"cdeΔΘΠΣ\"}, {Id: \"王普澤\", Msg: \"d\"}}",
		Source: XSet_XNamedError{
			{
				Id:  "ΠΣΦ",
				Msg: "cdeΔΘΠΣ",
			}: struct{}{},
			{
				Id:  "王普澤",
				Msg: "d",
			}: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XSet_XNamedError{{Id: \"ΠΣΦ\", Msg: \"cdeΔΘΠΣ\"}, {Id: \"王普澤\", Msg: \"d\"}}",
		Target: XSet_XNamedError{
			{
				Id:  "ΠΣΦ",
				Msg: "cdeΔΘΠΣ",
			}: struct{}{},
			{
				Id:  "王普澤",
				Msg: "d",
			}: struct{}{},
		},
		SourceLabel: "set[XNamedError]{{Id: \"ΠΣΦ\", Msg: \"cdeΔΘΠΣ\"}, {Id: \"王普澤\", Msg: \"d\"}}",
		Source: map[XNamedError]struct{}{
			{
				Id:  "ΠΣΦ",
				Msg: "cdeΔΘΠΣ",
			}: struct{}{},
			{
				Id:  "王普澤",
				Msg: "d",
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XSet_Uint64{}",
		Target:      XSet_Uint64(nil),
		SourceLabel: "XSet_Uint64{}",
		Source:      XSet_Uint64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_Uint64{}",
		Target:      XSet_Uint64(nil),
		SourceLabel: "XSet_XByte{}",
		Source:      XSet_XByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_Uint64{}",
		Target:      XSet_Uint64(nil),
		SourceLabel: "set[int32]{}",
		Source:      map[int32]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XSet_Uint64{123}",
		Target: XSet_Uint64{
			123: struct{}{},
		},
		SourceLabel: "XSet_Uint64{123}",
		Source: XSet_Uint64{
			123: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XSet_Uint64{123}",
		Target: XSet_Uint64{
			123: struct{}{},
		},
		SourceLabel: "XSet_XByte{123}",
		Source: XSet_XByte{
			123: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XSet_Uint64{0, 15419510315382674418}",
		Target: XSet_Uint64{
			0:                    struct{}{},
			15419510315382674418: struct{}{},
		},
		SourceLabel: "XSet_Uint64{0, 15419510315382674418}",
		Source: XSet_Uint64{
			0:                    struct{}{},
			15419510315382674418: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XSet_Uint64{0, 15419510315382674418}",
		Target: XSet_Uint64{
			0:                    struct{}{},
			15419510315382674418: struct{}{},
		},
		SourceLabel: "XSet_XUint64{0, 15419510315382674418}",
		Source: XSet_XUint64{
			0:                    struct{}{},
			15419510315382674418: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XSet_XUint64{}",
		Target:      XSet_XUint64(nil),
		SourceLabel: "XSet_XUint64{}",
		Source:      XSet_XUint64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_XUint64{}",
		Target:      XSet_XUint64(nil),
		SourceLabel: "set[uint64]{}",
		Source:      map[uint64]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_XUint64{}",
		Target:      XSet_XUint64(nil),
		SourceLabel: "set[XByte]{}",
		Source:      map[XByte]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XSet_XUint64{123}",
		Target: XSet_XUint64{
			123: struct{}{},
		},
		SourceLabel: "XSet_XUint64{123}",
		Source: XSet_XUint64{
			123: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XSet_XUint64{123}",
		Target: XSet_XUint64{
			123: struct{}{},
		},
		SourceLabel: "XSet_Byte{123}",
		Source: XSet_Byte{
			123: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XSet_XUint64{9532860371158075028}",
		Target: XSet_XUint64{
			9532860371158075028: struct{}{},
		},
		SourceLabel: "XSet_XUint64{9532860371158075028}",
		Source: XSet_XUint64{
			9532860371158075028: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XSet_XUint64{9532860371158075028}",
		Target: XSet_XUint64{
			9532860371158075028: struct{}{},
		},
		SourceLabel: "XSet_Uint64{9532860371158075028}",
		Source: XSet_Uint64{
			9532860371158075028: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XSet_Float32{}",
		Target:      XSet_Float32(nil),
		SourceLabel: "XSet_Float32{}",
		Source:      XSet_Float32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_Float32{}",
		Target:      XSet_Float32(nil),
		SourceLabel: "set[int32]{}",
		Source:      map[int32]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_Float32{}",
		Target:      XSet_Float32(nil),
		SourceLabel: "set[uint64]{}",
		Source:      map[uint64]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XSet_Float32{1.5}",
		Target: XSet_Float32{
			1.5: struct{}{},
		},
		SourceLabel: "XSet_Float32{1.5}",
		Source: XSet_Float32{
			1.5: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XSet_Float32{1.5}",
		Target: XSet_Float32{
			1.5: struct{}{},
		},
		SourceLabel: "set[float64]{1.5}",
		Source: map[float64]struct{}{
			1.5: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XSet_Float32{-2.1514644e+09}",
		Target: XSet_Float32{
			-2.1514644e+09: struct{}{},
		},
		SourceLabel: "XSet_Float32{-2.1514644e+09}",
		Source: XSet_Float32{
			-2.1514644e+09: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XSet_Float32{-2.1514644e+09}",
		Target: XSet_Float32{
			-2.1514644e+09: struct{}{},
		},
		SourceLabel: "set[float64]{-2.1514645445578156e+09}",
		Source: map[float64]struct{}{
			-2.1514645445578156e+09: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[XBool]XBool{}",
		Target:      map[XBool]XBool(nil),
		SourceLabel: "map[XBool]XBool{}",
		Source:      map[XBool]XBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XBool]XBool{}",
		Target:      map[XBool]XBool(nil),
		SourceLabel: "map[bool]bool{}",
		Source:      map[bool]bool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XBool]XBool{}",
		Target:      map[XBool]XBool(nil),
		SourceLabel: "XMap_Bool_Bool{}",
		Source:      XMap_Bool_Bool(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[XBool]XBool{true: true}",
		Target: map[XBool]XBool{
			true: true,
		},
		SourceLabel: "map[XBool]XBool{true: true}",
		Source: map[XBool]XBool{
			true: true,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[XBool]XBool{true: true}",
		Target: map[XBool]XBool{
			true: true,
		},
		SourceLabel: "XMap_XBool_XBool{true: true}",
		Source: XMap_XBool_XBool{
			true: true,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[XString]XString{}",
		Target:      map[XString]XString(nil),
		SourceLabel: "map[XString]XString{}",
		Source:      map[XString]XString(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XString]XString{}",
		Target:      map[XString]XString(nil),
		SourceLabel: "XMap_XEnumAbc_XEnumAbc{}",
		Source:      XMap_XEnumAbc_XEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XString]XString{}",
		Target:      map[XString]XString(nil),
		SourceLabel: "map[XEnumBcd]XEnumBcd{}",
		Source:      map[XEnumBcd]XEnumBcd(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[XString]XString{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: map[XString]XString{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "map[XString]XString{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: map[XString]XString{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[XString]XString{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: map[XString]XString{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "map[string]string{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: map[string]string{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[XString]XString{\"\": \"澤世\", \"bcdeΔ\": \"ΘΠΣΦ王普澤\"}",
		Target: map[XString]XString{
			"":      "澤世",
			"bcdeΔ": "ΘΠΣΦ王普澤",
		},
		SourceLabel: "map[XString]XString{\"\": \"澤世\", \"bcdeΔ\": \"ΘΠΣΦ王普澤\"}",
		Source: map[XString]XString{
			"":      "澤世",
			"bcdeΔ": "ΘΠΣΦ王普澤",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "map[XString]XString{\"\": \"澤世\", \"bcdeΔ\": \"ΘΠΣΦ王普澤\"}",
		Target: map[XString]XString{
			"":      "澤世",
			"bcdeΔ": "ΘΠΣΦ王普澤",
		},
		SourceLabel: "XMap_String_String{\"\": \"澤世\", \"bcdeΔ\": \"ΘΠΣΦ王普澤\"}",
		Source: XMap_String_String{
			"":      "澤世",
			"bcdeΔ": "ΘΠΣΦ王普澤",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[XByte]XByte{}",
		Target:      map[XByte]XByte(nil),
		SourceLabel: "map[XByte]XByte{}",
		Source:      map[XByte]XByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XByte]XByte{}",
		Target:      map[XByte]XByte(nil),
		SourceLabel: "XMap_XUint32_XUint32{}",
		Source:      XMap_XUint32_XUint32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XByte]XByte{}",
		Target:      map[XByte]XByte(nil),
		SourceLabel: "XMap_XByte_XByte{}",
		Source:      XMap_XByte_XByte(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[XByte]XByte{123: 123}",
		Target: map[XByte]XByte{
			123: 123,
		},
		SourceLabel: "map[XByte]XByte{123: 123}",
		Source: map[XByte]XByte{
			123: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[XByte]XByte{123: 123}",
		Target: map[XByte]XByte{
			123: 123,
		},
		SourceLabel: "XMap_XUint32_XUint32{123: 123}",
		Source: XMap_XUint32_XUint32{
			123: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[XByte]XByte{152: 121}",
		Target: map[XByte]XByte{
			152: 121,
		},
		SourceLabel: "map[XByte]XByte{152: 121}",
		Source: map[XByte]XByte{
			152: 121,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "map[XByte]XByte{152: 121}",
		Target: map[XByte]XByte{
			152: 121,
		},
		SourceLabel: "map[uint32]uint32{152: 121}",
		Source: map[uint32]uint32{
			152: 121,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[XEnumAbc]XEnumAbc{}",
		Target:      map[XEnumAbc]XEnumAbc(nil),
		SourceLabel: "map[XEnumAbc]XEnumAbc{}",
		Source:      map[XEnumAbc]XEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XEnumAbc]XEnumAbc{}",
		Target:      map[XEnumAbc]XEnumAbc(nil),
		SourceLabel: "XMap_XEnumBcd_XEnumBcd{}",
		Source:      XMap_XEnumBcd_XEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XEnumAbc]XEnumAbc{}",
		Target:      map[XEnumAbc]XEnumAbc(nil),
		SourceLabel: "XMap_XString_XString{}",
		Source:      XMap_XString_XString(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[XEnumAbc]XEnumAbc{C: C}",
		Target: map[XEnumAbc]XEnumAbc{
			XEnumAbcC: XEnumAbcC,
		},
		SourceLabel: "map[XEnumAbc]XEnumAbc{C: C}",
		Source: map[XEnumAbc]XEnumAbc{
			XEnumAbcC: XEnumAbcC,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[XEnumAbc]XEnumAbc{C: C}",
		Target: map[XEnumAbc]XEnumAbc{
			XEnumAbcC: XEnumAbcC,
		},
		SourceLabel: "XMap_XEnumBcd_XEnumBcd{C: C}",
		Source: XMap_XEnumBcd_XEnumBcd{
			XEnumBcdC: XEnumBcdC,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[XEnumBcd]XEnumBcd{}",
		Target:      map[XEnumBcd]XEnumBcd(nil),
		SourceLabel: "map[XEnumBcd]XEnumBcd{}",
		Source:      map[XEnumBcd]XEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XEnumBcd]XEnumBcd{}",
		Target:      map[XEnumBcd]XEnumBcd(nil),
		SourceLabel: "XMap_XEnumBcd_XEnumBcd{}",
		Source:      XMap_XEnumBcd_XEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XEnumBcd]XEnumBcd{}",
		Target:      map[XEnumBcd]XEnumBcd(nil),
		SourceLabel: "XMap_XString_XString{}",
		Source:      XMap_XString_XString(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[XEnumBcd]XEnumBcd{D: D}",
		Target: map[XEnumBcd]XEnumBcd{
			XEnumBcdD: XEnumBcdD,
		},
		SourceLabel: "map[XEnumBcd]XEnumBcd{D: D}",
		Source: map[XEnumBcd]XEnumBcd{
			XEnumBcdD: XEnumBcdD,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[XEnumBcd]XEnumBcd{D: D}",
		Target: map[XEnumBcd]XEnumBcd{
			XEnumBcdD: XEnumBcdD,
		},
		SourceLabel: "XMap_String_String{\"D\": \"D\"}",
		Source: XMap_String_String{
			"D": "D",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[XStructEmpty]XStructEmpty{}",
		Target:      map[XStructEmpty]XStructEmpty(nil),
		SourceLabel: "map[XStructEmpty]XStructEmpty{}",
		Source:      map[XStructEmpty]XStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XStructEmpty]XStructEmpty{}",
		Target:      map[XStructEmpty]XStructEmpty(nil),
		SourceLabel: "XMap_XStructDepth1_XBool_XStructDepth1_XBool{}",
		Source:      XMap_XStructDepth1_XBool_XStructDepth1_XBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XStructEmpty]XStructEmpty{}",
		Target:      map[XStructEmpty]XStructEmpty(nil),
		SourceLabel: "map[XStructDepth2_XUnionDepth1_Float64]XStructDepth2_XUnionDepth1_Float64{}",
		Source:      map[XStructDepth2_XUnionDepth1_Float64]XStructDepth2_XUnionDepth1_Float64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[XStructEmpty]XStructEmpty{{}: {}}",
		Target: map[XStructEmpty]XStructEmpty{
			{}: {},
		},
		SourceLabel: "map[XStructEmpty]XStructEmpty{{}: {}}",
		Source: map[XStructEmpty]XStructEmpty{
			{}: {},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[XStructEmpty]XStructEmpty{{}: {}}",
		Target: map[XStructEmpty]XStructEmpty{
			{}: {},
		},
		SourceLabel: "XMap_XNamedError_XNamedError{{}: {}}",
		Source: XMap_XNamedError_XNamedError{
			{}: {},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[XNamedError]XNamedError{}",
		Target:      map[XNamedError]XNamedError(nil),
		SourceLabel: "map[XNamedError]XNamedError{}",
		Source:      map[XNamedError]XNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XNamedError]XNamedError{}",
		Target:      map[XNamedError]XNamedError(nil),
		SourceLabel: "XMap_XNamedError_XNamedError{}",
		Source:      XMap_XNamedError_XNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XNamedError]XNamedError{}",
		Target:      map[XNamedError]XNamedError(nil),
		SourceLabel: "map[XStructEmpty]XStructEmpty{}",
		Source:      map[XStructEmpty]XStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[XNamedError]XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: map[XNamedError]XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: {
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "map[XNamedError]XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: map[XNamedError]XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: {
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[XNamedError]XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: map[XNamedError]XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: {
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "XMap_XNamedError_XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XMap_XNamedError_XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: {
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[XNamedError]XNamedError{{Msg: \"ΘΠΣΦ王普澤世\"}: {Msg: \"eΔΘ\"}}",
		Target: map[XNamedError]XNamedError{
			{
				Msg: "ΘΠΣΦ王普澤世",
			}: {
				Msg: "eΔΘ",
			},
		},
		SourceLabel: "map[XNamedError]XNamedError{{Msg: \"ΘΠΣΦ王普澤世\"}: {Msg: \"eΔΘ\"}}",
		Source: map[XNamedError]XNamedError{
			{
				Msg: "ΘΠΣΦ王普澤世",
			}: {
				Msg: "eΔΘ",
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "map[XNamedError]XNamedError{{Msg: \"ΘΠΣΦ王普澤世\"}: {Msg: \"eΔΘ\"}}",
		Target: map[XNamedError]XNamedError{
			{
				Msg: "ΘΠΣΦ王普澤世",
			}: {
				Msg: "eΔΘ",
			},
		},
		SourceLabel: "XMap_XNamedError_XNamedError{{Msg: \"ΘΠΣΦ王普澤世\"}: {Msg: \"eΔΘ\"}}",
		Source: XMap_XNamedError_XNamedError{
			{
				Msg: "ΘΠΣΦ王普澤世",
			}: {
				Msg: "eΔΘ",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[XUint64]XUint64{}",
		Target:      map[XUint64]XUint64(nil),
		SourceLabel: "map[XUint64]XUint64{}",
		Source:      map[XUint64]XUint64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XUint64]XUint64{}",
		Target:      map[XUint64]XUint64(nil),
		SourceLabel: "XMap_Byte_Byte{}",
		Source:      XMap_Byte_Byte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XUint64]XUint64{}",
		Target:      map[XUint64]XUint64(nil),
		SourceLabel: "XMap_XUint32_XUint32{}",
		Source:      XMap_XUint32_XUint32(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[XUint64]XUint64{123: 123}",
		Target: map[XUint64]XUint64{
			123: 123,
		},
		SourceLabel: "map[XUint64]XUint64{123: 123}",
		Source: map[XUint64]XUint64{
			123: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[XUint64]XUint64{123: 123}",
		Target: map[XUint64]XUint64{
			123: 123,
		},
		SourceLabel: "map[XByte]XByte{123: 123}",
		Source: map[XByte]XByte{
			123: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[XUint64]XUint64{8554769073767298258: 9798659526928048171}",
		Target: map[XUint64]XUint64{
			8554769073767298258: 9798659526928048171,
		},
		SourceLabel: "map[XUint64]XUint64{8554769073767298258: 9798659526928048171}",
		Source: map[XUint64]XUint64{
			8554769073767298258: 9798659526928048171,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[XInt8]XInt8{}",
		Target:      map[XInt8]XInt8(nil),
		SourceLabel: "map[XInt8]XInt8{}",
		Source:      map[XInt8]XInt8(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XInt8]XInt8{}",
		Target:      map[XInt8]XInt8(nil),
		SourceLabel: "map[XByte]XByte{}",
		Source:      map[XByte]XByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XInt8]XInt8{}",
		Target:      map[XInt8]XInt8(nil),
		SourceLabel: "map[XUint64]XUint64{}",
		Source:      map[XUint64]XUint64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[XInt8]XInt8{-123: -123}",
		Target: map[XInt8]XInt8{
			-123: -123,
		},
		SourceLabel: "map[XInt8]XInt8{-123: -123}",
		Source: map[XInt8]XInt8{
			-123: -123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[XInt8]XInt8{-123: -123}",
		Target: map[XInt8]XInt8{
			-123: -123,
		},
		SourceLabel: "XMap_Int64_Int64{-123: -123}",
		Source: XMap_Int64_Int64{
			-123: -123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[XInt8]XInt8{-47: -18, 0: -48, 51: 7}",
		Target: map[XInt8]XInt8{
			-47: -18,
			0:   -48,
			51:  7,
		},
		SourceLabel: "map[XInt8]XInt8{-47: -18, 0: -48, 51: 7}",
		Source: map[XInt8]XInt8{
			-47: -18,
			0:   -48,
			51:  7,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "map[XInt8]XInt8{-47: -18, 0: -48, 51: 7}",
		Target: map[XInt8]XInt8{
			-47: -18,
			0:   -48,
			51:  7,
		},
		SourceLabel: "XMap_XInt32_XInt32{-47: -18, 0: -48, 51: 7}",
		Source: XMap_XInt32_XInt32{
			-47: -18,
			0:   -48,
			51:  7,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XMap_Bool_Bool{}",
		Target:      XMap_Bool_Bool(nil),
		SourceLabel: "XMap_Bool_Bool{}",
		Source:      XMap_Bool_Bool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_Bool_Bool{}",
		Target:      XMap_Bool_Bool(nil),
		SourceLabel: "map[bool]bool{}",
		Source:      map[bool]bool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_Bool_Bool{}",
		Target:      XMap_Bool_Bool(nil),
		SourceLabel: "map[XBool]XBool{}",
		Source:      map[XBool]XBool(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XMap_Bool_Bool{true: true}",
		Target: XMap_Bool_Bool{
			true: true,
		},
		SourceLabel: "XMap_Bool_Bool{true: true}",
		Source: XMap_Bool_Bool{
			true: true,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XMap_Bool_Bool{true: true}",
		Target: XMap_Bool_Bool{
			true: true,
		},
		SourceLabel: "XMap_XBool_XBool{true: true}",
		Source: XMap_XBool_XBool{
			true: true,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XMap_XBool_XBool{}",
		Target:      XMap_XBool_XBool(nil),
		SourceLabel: "XMap_XBool_XBool{}",
		Source:      XMap_XBool_XBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XBool_XBool{}",
		Target:      XMap_XBool_XBool(nil),
		SourceLabel: "XMap_Bool_Bool{}",
		Source:      XMap_Bool_Bool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XBool_XBool{}",
		Target:      XMap_XBool_XBool(nil),
		SourceLabel: "map[bool]bool{}",
		Source:      map[bool]bool(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XMap_XBool_XBool{true: true}",
		Target: XMap_XBool_XBool{
			true: true,
		},
		SourceLabel: "XMap_XBool_XBool{true: true}",
		Source: XMap_XBool_XBool{
			true: true,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XMap_XBool_XBool{true: true}",
		Target: XMap_XBool_XBool{
			true: true,
		},
		SourceLabel: "map[bool]bool{true: true}",
		Source: map[bool]bool{
			true: true,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XMap_String_String{}",
		Target:      XMap_String_String(nil),
		SourceLabel: "XMap_String_String{}",
		Source:      XMap_String_String(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_String_String{}",
		Target:      XMap_String_String(nil),
		SourceLabel: "XMap_XEnumAbc_XEnumAbc{}",
		Source:      XMap_XEnumAbc_XEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_String_String{}",
		Target:      XMap_String_String(nil),
		SourceLabel: "map[XEnumAbc]XEnumAbc{}",
		Source:      map[XEnumAbc]XEnumAbc(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XMap_String_String{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: XMap_String_String{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "XMap_String_String{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: XMap_String_String{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XMap_String_String{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: XMap_String_String{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "map[string]string{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: map[string]string{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XMap_String_String{\"\": \"cdeΔΘΠΣΦ王普\", \"cdeΔΘΠ\": \"cdeΔΘΠΣΦ王普\"}",
		Target: XMap_String_String{
			"":       "cdeΔΘΠΣΦ王普",
			"cdeΔΘΠ": "cdeΔΘΠΣΦ王普",
		},
		SourceLabel: "XMap_String_String{\"\": \"cdeΔΘΠΣΦ王普\", \"cdeΔΘΠ\": \"cdeΔΘΠΣΦ王普\"}",
		Source: XMap_String_String{
			"":       "cdeΔΘΠΣΦ王普",
			"cdeΔΘΠ": "cdeΔΘΠΣΦ王普",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XMap_String_String{\"\": \"cdeΔΘΠΣΦ王普\", \"cdeΔΘΠ\": \"cdeΔΘΠΣΦ王普\"}",
		Target: XMap_String_String{
			"":       "cdeΔΘΠΣΦ王普",
			"cdeΔΘΠ": "cdeΔΘΠΣΦ王普",
		},
		SourceLabel: "map[XString]XString{\"\": \"cdeΔΘΠΣΦ王普\", \"cdeΔΘΠ\": \"cdeΔΘΠΣΦ王普\"}",
		Source: map[XString]XString{
			"":       "cdeΔΘΠΣΦ王普",
			"cdeΔΘΠ": "cdeΔΘΠΣΦ王普",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XMap_XString_XString{}",
		Target:      XMap_XString_XString(nil),
		SourceLabel: "XMap_XString_XString{}",
		Source:      XMap_XString_XString(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XString_XString{}",
		Target:      XMap_XString_XString(nil),
		SourceLabel: "map[XEnumBcd]XEnumBcd{}",
		Source:      map[XEnumBcd]XEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XString_XString{}",
		Target:      XMap_XString_XString(nil),
		SourceLabel: "map[XString]XString{}",
		Source:      map[XString]XString(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XMap_XString_XString{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: XMap_XString_XString{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "XMap_XString_XString{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: XMap_XString_XString{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XMap_XString_XString{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: XMap_XString_XString{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "map[string]string{\"abcdeΔΘΠΣΦ王普澤世界\": \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: map[string]string{
			"abcdeΔΘΠΣΦ王普澤世界": "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XMap_XString_XString{\"abcdeΔΘΠΣΦ王普澤世界\": \"e\"}",
		Target: XMap_XString_XString{
			"abcdeΔΘΠΣΦ王普澤世界": "e",
		},
		SourceLabel: "XMap_XString_XString{\"abcdeΔΘΠΣΦ王普澤世界\": \"e\"}",
		Source: XMap_XString_XString{
			"abcdeΔΘΠΣΦ王普澤世界": "e",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XMap_XString_XString{\"abcdeΔΘΠΣΦ王普澤世界\": \"e\"}",
		Target: XMap_XString_XString{
			"abcdeΔΘΠΣΦ王普澤世界": "e",
		},
		SourceLabel: "map[string]string{\"abcdeΔΘΠΣΦ王普澤世界\": \"e\"}",
		Source: map[string]string{
			"abcdeΔΘΠΣΦ王普澤世界": "e",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XMap_Byte_Byte{}",
		Target:      XMap_Byte_Byte(nil),
		SourceLabel: "XMap_Byte_Byte{}",
		Source:      XMap_Byte_Byte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_Byte_Byte{}",
		Target:      XMap_Byte_Byte(nil),
		SourceLabel: "map[XInt8]XInt8{}",
		Source:      map[XInt8]XInt8(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_Byte_Byte{}",
		Target:      XMap_Byte_Byte(nil),
		SourceLabel: "map[XUint64]XUint64{}",
		Source:      map[XUint64]XUint64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XMap_Byte_Byte{123: 123}",
		Target: XMap_Byte_Byte{
			123: 123,
		},
		SourceLabel: "XMap_Byte_Byte{123: 123}",
		Source: XMap_Byte_Byte{
			123: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XMap_Byte_Byte{123: 123}",
		Target: XMap_Byte_Byte{
			123: 123,
		},
		SourceLabel: "XMap_XInt32_XInt32{123: 123}",
		Source: XMap_XInt32_XInt32{
			123: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XMap_Byte_Byte{169: 194, 238: 170, 248: 145}",
		Target: XMap_Byte_Byte{
			169: 194,
			238: 170,
			248: 145,
		},
		SourceLabel: "XMap_Byte_Byte{169: 194, 238: 170, 248: 145}",
		Source: XMap_Byte_Byte{
			169: 194,
			238: 170,
			248: 145,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XMap_Byte_Byte{169: 194, 238: 170, 248: 145}",
		Target: XMap_Byte_Byte{
			169: 194,
			238: 170,
			248: 145,
		},
		SourceLabel: "XMap_XUint32_XUint32{169: 194, 238: 170, 248: 145}",
		Source: XMap_XUint32_XUint32{
			169: 194,
			238: 170,
			248: 145,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XMap_XByte_XByte{}",
		Target:      XMap_XByte_XByte(nil),
		SourceLabel: "XMap_XByte_XByte{}",
		Source:      XMap_XByte_XByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XByte_XByte{}",
		Target:      XMap_XByte_XByte(nil),
		SourceLabel: "map[XByte]XByte{}",
		Source:      map[XByte]XByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XByte_XByte{}",
		Target:      XMap_XByte_XByte(nil),
		SourceLabel: "XMap_Int64_Int64{}",
		Source:      XMap_Int64_Int64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XMap_XByte_XByte{123: 123}",
		Target: XMap_XByte_XByte{
			123: 123,
		},
		SourceLabel: "XMap_XByte_XByte{123: 123}",
		Source: XMap_XByte_XByte{
			123: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XMap_XByte_XByte{123: 123}",
		Target: XMap_XByte_XByte{
			123: 123,
		},
		SourceLabel: "XMap_XUint32_XUint32{123: 123}",
		Source: XMap_XUint32_XUint32{
			123: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XMap_XByte_XByte{132: 126, 240: 115}",
		Target: XMap_XByte_XByte{
			132: 126,
			240: 115,
		},
		SourceLabel: "XMap_XByte_XByte{132: 126, 240: 115}",
		Source: XMap_XByte_XByte{
			132: 126,
			240: 115,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XMap_XByte_XByte{132: 126, 240: 115}",
		Target: XMap_XByte_XByte{
			132: 126,
			240: 115,
		},
		SourceLabel: "XMap_Byte_Byte{132: 126, 240: 115}",
		Source: XMap_Byte_Byte{
			132: 126,
			240: 115,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XMap_XEnumAbc_XEnumAbc{}",
		Target:      XMap_XEnumAbc_XEnumAbc(nil),
		SourceLabel: "XMap_XEnumAbc_XEnumAbc{}",
		Source:      XMap_XEnumAbc_XEnumAbc(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XEnumAbc_XEnumAbc{}",
		Target:      XMap_XEnumAbc_XEnumAbc(nil),
		SourceLabel: "XMap_String_String{}",
		Source:      XMap_String_String(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XEnumAbc_XEnumAbc{}",
		Target:      XMap_XEnumAbc_XEnumAbc(nil),
		SourceLabel: "map[XString]XString{}",
		Source:      map[XString]XString(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XMap_XEnumAbc_XEnumAbc{C: C}",
		Target: XMap_XEnumAbc_XEnumAbc{
			XEnumAbcC: XEnumAbcC,
		},
		SourceLabel: "XMap_XEnumAbc_XEnumAbc{C: C}",
		Source: XMap_XEnumAbc_XEnumAbc{
			XEnumAbcC: XEnumAbcC,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XMap_XEnumAbc_XEnumAbc{C: C}",
		Target: XMap_XEnumAbc_XEnumAbc{
			XEnumAbcC: XEnumAbcC,
		},
		SourceLabel: "XMap_String_String{\"C\": \"C\"}",
		Source: XMap_String_String{
			"C": "C",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XMap_XEnumBcd_XEnumBcd{}",
		Target:      XMap_XEnumBcd_XEnumBcd(nil),
		SourceLabel: "XMap_XEnumBcd_XEnumBcd{}",
		Source:      XMap_XEnumBcd_XEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XEnumBcd_XEnumBcd{}",
		Target:      XMap_XEnumBcd_XEnumBcd(nil),
		SourceLabel: "XMap_String_String{}",
		Source:      XMap_String_String(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XEnumBcd_XEnumBcd{}",
		Target:      XMap_XEnumBcd_XEnumBcd(nil),
		SourceLabel: "XMap_XEnumAbc_XEnumAbc{}",
		Source:      XMap_XEnumAbc_XEnumAbc(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XMap_XEnumBcd_XEnumBcd{D: D}",
		Target: XMap_XEnumBcd_XEnumBcd{
			XEnumBcdD: XEnumBcdD,
		},
		SourceLabel: "XMap_XEnumBcd_XEnumBcd{D: D}",
		Source: XMap_XEnumBcd_XEnumBcd{
			XEnumBcdD: XEnumBcdD,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XMap_XEnumBcd_XEnumBcd{D: D}",
		Target: XMap_XEnumBcd_XEnumBcd{
			XEnumBcdD: XEnumBcdD,
		},
		SourceLabel: "XMap_String_String{\"D\": \"D\"}",
		Source: XMap_String_String{
			"D": "D",
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XMap_XStructEmpty_XStructEmpty{}",
		Target:      XMap_XStructEmpty_XStructEmpty(nil),
		SourceLabel: "XMap_XStructEmpty_XStructEmpty{}",
		Source:      XMap_XStructEmpty_XStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XStructEmpty_XStructEmpty{}",
		Target:      XMap_XStructEmpty_XStructEmpty(nil),
		SourceLabel: "map[XStructEmpty]XStructEmpty{}",
		Source:      map[XStructEmpty]XStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XStructEmpty_XStructEmpty{}",
		Target:      XMap_XStructEmpty_XStructEmpty(nil),
		SourceLabel: "map[XStructDepth1_String]XStructDepth1_String{}",
		Source:      map[XStructDepth1_String]XStructDepth1_String(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XMap_XStructEmpty_XStructEmpty{{}: {}}",
		Target: XMap_XStructEmpty_XStructEmpty{
			{}: {},
		},
		SourceLabel: "XMap_XStructEmpty_XStructEmpty{{}: {}}",
		Source: XMap_XStructEmpty_XStructEmpty{
			{}: {},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XMap_XStructEmpty_XStructEmpty{{}: {}}",
		Target: XMap_XStructEmpty_XStructEmpty{
			{}: {},
		},
		SourceLabel: "map[XStructDepth2_XUnionDepth1_Float64]XStructDepth2_XUnionDepth1_Float64{{}: {}}",
		Source: map[XStructDepth2_XUnionDepth1_Float64]XStructDepth2_XUnionDepth1_Float64{
			{
				F11: XUnionDepth1_Float64F29{},
			}: {
				F11: XUnionDepth1_Float64F29{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XMap_XNamedError_XNamedError{}",
		Target:      XMap_XNamedError_XNamedError(nil),
		SourceLabel: "XMap_XNamedError_XNamedError{}",
		Source:      XMap_XNamedError_XNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XNamedError_XNamedError{}",
		Target:      XMap_XNamedError_XNamedError(nil),
		SourceLabel: "map[XNamedError]XNamedError{}",
		Source:      map[XNamedError]XNamedError(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XNamedError_XNamedError{}",
		Target:      XMap_XNamedError_XNamedError(nil),
		SourceLabel: "map[XStructEmpty]XStructEmpty{}",
		Source:      map[XStructEmpty]XStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XMap_XNamedError_XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XMap_XNamedError_XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: {
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "XMap_XNamedError_XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XMap_XNamedError_XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: {
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XMap_XNamedError_XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XMap_XNamedError_XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: {
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "map[XNamedError]XNamedError{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: map[XNamedError]XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: {
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XMap_XNamedError_XNamedError{{}: {Id: \"eΔΘΠΣΦ\", Msg: \"ΔΘΠΣΦ王\"}, {Id: \"deΔΘΠΣΦ王普澤\", Msg: \"ΔΘ\"}: {Id: \"abcdeΔΘΠ\", Msg: \"Φ王\"}, {Id: \"王普澤世\", Msg: \"deΔΘΠΣΦ王\"}: {Id: \"普\"}}",
		Target: XMap_XNamedError_XNamedError{
			{}: {
				Id:  "eΔΘΠΣΦ",
				Msg: "ΔΘΠΣΦ王",
			},
			{
				Id:  "deΔΘΠΣΦ王普澤",
				Msg: "ΔΘ",
			}: {
				Id:  "abcdeΔΘΠ",
				Msg: "Φ王",
			},
			{
				Id:  "王普澤世",
				Msg: "deΔΘΠΣΦ王",
			}: {
				Id: "普",
			},
		},
		SourceLabel: "XMap_XNamedError_XNamedError{{}: {Id: \"eΔΘΠΣΦ\", Msg: \"ΔΘΠΣΦ王\"}, {Id: \"deΔΘΠΣΦ王普澤\", Msg: \"ΔΘ\"}: {Id: \"abcdeΔΘΠ\", Msg: \"Φ王\"}, {Id: \"王普澤世\", Msg: \"deΔΘΠΣΦ王\"}: {Id: \"普\"}}",
		Source: XMap_XNamedError_XNamedError{
			{}: {
				Id:  "eΔΘΠΣΦ",
				Msg: "ΔΘΠΣΦ王",
			},
			{
				Id:  "deΔΘΠΣΦ王普澤",
				Msg: "ΔΘ",
			}: {
				Id:  "abcdeΔΘΠ",
				Msg: "Φ王",
			},
			{
				Id:  "王普澤世",
				Msg: "deΔΘΠΣΦ王",
			}: {
				Id: "普",
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XMap_XNamedError_XNamedError{{}: {Id: \"eΔΘΠΣΦ\", Msg: \"ΔΘΠΣΦ王\"}, {Id: \"deΔΘΠΣΦ王普澤\", Msg: \"ΔΘ\"}: {Id: \"abcdeΔΘΠ\", Msg: \"Φ王\"}, {Id: \"王普澤世\", Msg: \"deΔΘΠΣΦ王\"}: {Id: \"普\"}}",
		Target: XMap_XNamedError_XNamedError{
			{}: {
				Id:  "eΔΘΠΣΦ",
				Msg: "ΔΘΠΣΦ王",
			},
			{
				Id:  "deΔΘΠΣΦ王普澤",
				Msg: "ΔΘ",
			}: {
				Id:  "abcdeΔΘΠ",
				Msg: "Φ王",
			},
			{
				Id:  "王普澤世",
				Msg: "deΔΘΠΣΦ王",
			}: {
				Id: "普",
			},
		},
		SourceLabel: "map[XNamedError]XNamedError{{}: {Id: \"eΔΘΠΣΦ\", Msg: \"ΔΘΠΣΦ王\"}, {Id: \"deΔΘΠΣΦ王普澤\", Msg: \"ΔΘ\"}: {Id: \"abcdeΔΘΠ\", Msg: \"Φ王\"}, {Id: \"王普澤世\", Msg: \"deΔΘΠΣΦ王\"}: {Id: \"普\"}}",
		Source: map[XNamedError]XNamedError{
			{}: {
				Id:  "eΔΘΠΣΦ",
				Msg: "ΔΘΠΣΦ王",
			},
			{
				Id:  "deΔΘΠΣΦ王普澤",
				Msg: "ΔΘ",
			}: {
				Id:  "abcdeΔΘΠ",
				Msg: "Φ王",
			},
			{
				Id:  "王普澤世",
				Msg: "deΔΘΠΣΦ王",
			}: {
				Id: "普",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XMap_XUint32_XUint32{}",
		Target:      XMap_XUint32_XUint32(nil),
		SourceLabel: "XMap_XUint32_XUint32{}",
		Source:      XMap_XUint32_XUint32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XUint32_XUint32{}",
		Target:      XMap_XUint32_XUint32(nil),
		SourceLabel: "map[XUint64]XUint64{}",
		Source:      map[XUint64]XUint64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XUint32_XUint32{}",
		Target:      XMap_XUint32_XUint32(nil),
		SourceLabel: "map[uint32]uint32{}",
		Source:      map[uint32]uint32(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XMap_XUint32_XUint32{123: 123}",
		Target: XMap_XUint32_XUint32{
			123: 123,
		},
		SourceLabel: "XMap_XUint32_XUint32{123: 123}",
		Source: XMap_XUint32_XUint32{
			123: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XMap_XUint32_XUint32{123: 123}",
		Target: XMap_XUint32_XUint32{
			123: 123,
		},
		SourceLabel: "map[XInt8]XInt8{123: 123}",
		Source: map[XInt8]XInt8{
			123: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XMap_XUint32_XUint32{1534075436: 0}",
		Target: XMap_XUint32_XUint32{
			1534075436: 0,
		},
		SourceLabel: "XMap_XUint32_XUint32{1534075436: 0}",
		Source: XMap_XUint32_XUint32{
			1534075436: 0,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XMap_XUint32_XUint32{1534075436: 0}",
		Target: XMap_XUint32_XUint32{
			1534075436: 0,
		},
		SourceLabel: "map[uint32]uint32{1534075436: 0}",
		Source: map[uint32]uint32{
			1534075436: 0,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XMap_XInt32_XInt32{}",
		Target:      XMap_XInt32_XInt32(nil),
		SourceLabel: "XMap_XInt32_XInt32{}",
		Source:      XMap_XInt32_XInt32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XInt32_XInt32{}",
		Target:      XMap_XInt32_XInt32(nil),
		SourceLabel: "map[XByte]XByte{}",
		Source:      map[XByte]XByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XInt32_XInt32{}",
		Target:      XMap_XInt32_XInt32(nil),
		SourceLabel: "map[XUint64]XUint64{}",
		Source:      map[XUint64]XUint64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XMap_XInt32_XInt32{-123: -123}",
		Target: XMap_XInt32_XInt32{
			-123: -123,
		},
		SourceLabel: "XMap_XInt32_XInt32{-123: -123}",
		Source: XMap_XInt32_XInt32{
			-123: -123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XMap_XInt32_XInt32{-123: -123}",
		Target: XMap_XInt32_XInt32{
			-123: -123,
		},
		SourceLabel: "map[XInt8]XInt8{-123: -123}",
		Source: map[XInt8]XInt8{
			-123: -123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XMap_XInt32_XInt32{-1046909901: 611299320, 768096761: 0, 806104396: -367759924}",
		Target: XMap_XInt32_XInt32{
			-1046909901: 611299320,
			768096761:   0,
			806104396:   -367759924,
		},
		SourceLabel: "XMap_XInt32_XInt32{-1046909901: 611299320, 768096761: 0, 806104396: -367759924}",
		Source: XMap_XInt32_XInt32{
			-1046909901: 611299320,
			768096761:   0,
			806104396:   -367759924,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XMap_XInt32_XInt32{-1046909901: 611299320, 768096761: 0, 806104396: -367759924}",
		Target: XMap_XInt32_XInt32{
			-1046909901: 611299320,
			768096761:   0,
			806104396:   -367759924,
		},
		SourceLabel: "XMap_Int64_Int64{-1046909901: 611299320, 768096761: 0, 806104396: -367759924}",
		Source: XMap_Int64_Int64{
			-1046909901: 611299320,
			768096761:   0,
			806104396:   -367759924,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XMap_Int64_Int64{}",
		Target:      XMap_Int64_Int64(nil),
		SourceLabel: "XMap_Int64_Int64{}",
		Source:      XMap_Int64_Int64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_Int64_Int64{}",
		Target:      XMap_Int64_Int64(nil),
		SourceLabel: "map[XUint64]XUint64{}",
		Source:      map[XUint64]XUint64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_Int64_Int64{}",
		Target:      XMap_Int64_Int64(nil),
		SourceLabel: "XMap_XInt32_XInt32{}",
		Source:      XMap_XInt32_XInt32(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XMap_Int64_Int64{-123: -123}",
		Target: XMap_Int64_Int64{
			-123: -123,
		},
		SourceLabel: "XMap_Int64_Int64{-123: -123}",
		Source: XMap_Int64_Int64{
			-123: -123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XMap_Int64_Int64{-123: -123}",
		Target: XMap_Int64_Int64{
			-123: -123,
		},
		SourceLabel: "XMap_XInt32_XInt32{-123: -123}",
		Source: XMap_XInt32_XInt32{
			-123: -123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XMap_Int64_Int64{-2433051775813238070: -2863189162956388116, -2722828228170997348: 2712661314817834454, -3416123324637362609: 3969058170532921483}",
		Target: XMap_Int64_Int64{
			-2433051775813238070: -2863189162956388116,
			-2722828228170997348: 2712661314817834454,
			-3416123324637362609: 3969058170532921483,
		},
		SourceLabel: "XMap_Int64_Int64{-2433051775813238070: -2863189162956388116, -2722828228170997348: 2712661314817834454, -3416123324637362609: 3969058170532921483}",
		Source: XMap_Int64_Int64{
			-2433051775813238070: -2863189162956388116,
			-2722828228170997348: 2712661314817834454,
			-3416123324637362609: 3969058170532921483,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_All{}",
		Target: XStructDepth1_All{
			F5: vdl.AnyType,
		},
		SourceLabel: "XStructDepth1_All{}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_All{}",
		Target: XStructDepth1_All{
			F5: vdl.AnyType,
		},
		SourceLabel: "XStructDepth1_XInt64{}",
		Source:      XStructDepth1_XInt64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_All{}",
		Target: XStructDepth1_All{
			F5: vdl.AnyType,
		},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_All{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XStructDepth1_All{
			F0: int64(-123),
			F1: true,
			F2: true,
			F3: "abcdeΔΘΠΣΦ王普澤世界",
			F4: "abcdeΔΘΠΣΦ王普澤世界",
			F5: vdl.Int64Type,
			F6: 123,
			F7: 123,
			F8: XEnumAbcC,
			F9: XEnumBcdD,
			F11: XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			F12: verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
			F13: 123,
			F14: 123,
			F15: 123,
			F16: 123,
			F17: 123,
			F18: 123,
			F19: -123,
			F20: -123,
			F21: -123,
			F22: -123,
			F23: -123,
			F24: -123,
			F25: -123,
			F26: -123,
			F27: 1.5,
			F28: 1.5,
			F29: 1.5,
			F30: 1.5,
			F31: &XStructEmpty{},
			F32: &XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "XStructDepth1_All{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XStructDepth1_All{
			F0: int64(-123),
			F1: true,
			F2: true,
			F3: "abcdeΔΘΠΣΦ王普澤世界",
			F4: "abcdeΔΘΠΣΦ王普澤世界",
			F5: vdl.Int64Type,
			F6: 123,
			F7: 123,
			F8: XEnumAbcC,
			F9: XEnumBcdD,
			F11: XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			F12: verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
			F13: 123,
			F14: 123,
			F15: 123,
			F16: 123,
			F17: 123,
			F18: 123,
			F19: -123,
			F20: -123,
			F21: -123,
			F22: -123,
			F23: -123,
			F24: -123,
			F25: -123,
			F26: -123,
			F27: 1.5,
			F28: 1.5,
			F29: 1.5,
			F30: 1.5,
			F31: &XStructEmpty{},
			F32: &XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_All{F0: XSet_XString{\"\", \"bcd\"}, F2: true, F3: \"a\", F4: \"eΔΘΠ\", F7: 10, F8: C, F9: C, F11: {Id: \"ΔΘΠΣΦ王普澤世\", Msg: \"ΔΘΠΣ\"}, F12: {Id: \"bcdeΔΘΠΣΦ王普澤世界\", Msg: \"bcdeΔΘ\"}, F13: 48056, F15: 2308381474, F16: 1018037404, F17: 617702218553513613, F18: 17507951721915500623, F20: -35, F21: 14950, F22: -7590, F23: 774132807, F25: 134213658246658943, F28: -1.3198257e+09, F30: 1.1303229769991276e+09, F31: {}}",
		Target: XStructDepth1_All{
			F0: XSet_XString{
				"":    struct{}{},
				"bcd": struct{}{},
			},
			F2: true,
			F3: "a",
			F4: "eΔΘΠ",
			F5: vdl.AnyType,
			F7: 10,
			F8: XEnumAbcC,
			F9: XEnumBcdC,
			F11: XNamedError{
				Id:  "ΔΘΠΣΦ王普澤世",
				Msg: "ΔΘΠΣ",
			},
			F12: verror.FromWire(&vdl.WireError{
				Id:  "bcdeΔΘΠΣΦ王普澤世界",
				Msg: "bcdeΔΘ",
			}),
			F13: 48056,
			F15: 2308381474,
			F16: 1018037404,
			F17: 617702218553513613,
			F18: 17507951721915500623,
			F20: -35,
			F21: 14950,
			F22: -7590,
			F23: 774132807,
			F25: 134213658246658943,
			F28: -1.3198257e+09,
			F30: 1.1303229769991276e+09,
			F31: &XStructEmpty{},
		},
		SourceLabel: "XStructDepth1_All{F0: XSet_XString{\"\", \"bcd\"}, F2: true, F3: \"a\", F4: \"eΔΘΠ\", F7: 10, F8: C, F9: C, F11: {Id: \"ΔΘΠΣΦ王普澤世\", Msg: \"ΔΘΠΣ\"}, F12: {Id: \"bcdeΔΘΠΣΦ王普澤世界\", Msg: \"bcdeΔΘ\"}, F13: 48056, F15: 2308381474, F16: 1018037404, F17: 617702218553513613, F18: 17507951721915500623, F20: -35, F21: 14950, F22: -7590, F23: 774132807, F25: 134213658246658943, F28: -1.3198257e+09, F30: 1.1303229769991276e+09, F31: {}}",
		Source: XStructDepth1_All{
			F0: XSet_XString{
				"":    struct{}{},
				"bcd": struct{}{},
			},
			F2: true,
			F3: "a",
			F4: "eΔΘΠ",
			F5: vdl.AnyType,
			F7: 10,
			F8: XEnumAbcC,
			F9: XEnumBcdC,
			F11: XNamedError{
				Id:  "ΔΘΠΣΦ王普澤世",
				Msg: "ΔΘΠΣ",
			},
			F12: verror.FromWire(&vdl.WireError{
				Id:  "bcdeΔΘΠΣΦ王普澤世界",
				Msg: "bcdeΔΘ",
			}),
			F13: 48056,
			F15: 2308381474,
			F16: 1018037404,
			F17: 617702218553513613,
			F18: 17507951721915500623,
			F20: -35,
			F21: 14950,
			F22: -7590,
			F23: 774132807,
			F25: 134213658246658943,
			F28: -1.3198257e+09,
			F30: 1.1303229769991276e+09,
			F31: &XStructEmpty{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Any{}",
		Target:      XStructDepth1_Any{},
		SourceLabel: "XStructDepth1_Any{}",
		Source:      XStructDepth1_Any{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Any{}",
		Target:      XStructDepth1_Any{},
		SourceLabel: "XStructDepth1_All{}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Any{}",
		Target:      XStructDepth1_Any{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_Any{F0: int64(-123)}",
		Target: XStructDepth1_Any{
			F0: int64(-123),
		},
		SourceLabel: "XStructDepth1_Any{F0: int64(-123)}",
		Source: XStructDepth1_Any{
			F0: int64(-123),
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_Any{F0: int64(-123)}",
		Target: XStructDepth1_Any{
			F0: int64(-123),
		},
		SourceLabel: "XStructDepth1_All{F0: int64(-123)}",
		Source: XStructDepth1_All{
			F0: int64(-123),
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Any{F0: XStructDepth1_XUint64{F18: 8008414653471216551}}",
		Target: XStructDepth1_Any{
			F0: XStructDepth1_XUint64{
				F18: 8008414653471216551,
			},
		},
		SourceLabel: "XStructDepth1_Any{F0: XStructDepth1_XUint64{F18: 8008414653471216551}}",
		Source: XStructDepth1_Any{
			F0: XStructDepth1_XUint64{
				F18: 8008414653471216551,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Any{F0: XStructDepth1_XUint64{F18: 8008414653471216551}}",
		Target: XStructDepth1_Any{
			F0: XStructDepth1_XUint64{
				F18: 8008414653471216551,
			},
		},
		SourceLabel: "XStructDepth1_All{F0: XStructDepth1_XUint64{F18: 8008414653471216551}}",
		Source: XStructDepth1_All{
			F0: XStructDepth1_XUint64{
				F18: 8008414653471216551,
			},
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Bool{}",
		Target:      XStructDepth1_Bool{},
		SourceLabel: "XStructDepth1_Bool{}",
		Source:      XStructDepth1_Bool{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Bool{}",
		Target:      XStructDepth1_Bool{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Bool{}",
		Target:      XStructDepth1_Bool{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_Bool{F1: true}",
		Target: XStructDepth1_Bool{
			F1: true,
		},
		SourceLabel: "XStructDepth1_Bool{F1: true}",
		Source: XStructDepth1_Bool{
			F1: true,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_Bool{F1: true}",
		Target: XStructDepth1_Bool{
			F1: true,
		},
		SourceLabel: "XStructDepth1_All{F1: true}",
		Source: XStructDepth1_All{
			F1: true,
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XBool{}",
		Target:      XStructDepth1_XBool{},
		SourceLabel: "XStructDepth1_XBool{}",
		Source:      XStructDepth1_XBool{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XBool{}",
		Target:      XStructDepth1_XBool{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XBool{}",
		Target:      XStructDepth1_XBool{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_XBool{F2: true}",
		Target: XStructDepth1_XBool{
			F2: true,
		},
		SourceLabel: "XStructDepth1_XBool{F2: true}",
		Source: XStructDepth1_XBool{
			F2: true,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_XBool{F2: true}",
		Target: XStructDepth1_XBool{
			F2: true,
		},
		SourceLabel: "XStructDepth1_All{F2: true}",
		Source: XStructDepth1_All{
			F2: true,
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_String{}",
		Target:      XStructDepth1_String{},
		SourceLabel: "XStructDepth1_String{}",
		Source:      XStructDepth1_String{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_String{}",
		Target:      XStructDepth1_String{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_String{}",
		Target:      XStructDepth1_String{},
		SourceLabel: "XStructDepth1_All{}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_String{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: XStructDepth1_String{
			F3: "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "XStructDepth1_String{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: XStructDepth1_String{
			F3: "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_String{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: XStructDepth1_String{
			F3: "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "XStructDepth1_All{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: XStructDepth1_All{
			F3: "abcdeΔΘΠΣΦ王普澤世界",
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_String{F3: \"ΔΘ\"}",
		Target: XStructDepth1_String{
			F3: "ΔΘ",
		},
		SourceLabel: "XStructDepth1_String{F3: \"ΔΘ\"}",
		Source: XStructDepth1_String{
			F3: "ΔΘ",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_String{F3: \"ΔΘ\"}",
		Target: XStructDepth1_String{
			F3: "ΔΘ",
		},
		SourceLabel: "XStructDepth1_All{F3: \"ΔΘ\"}",
		Source: XStructDepth1_All{
			F3: "ΔΘ",
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XString{}",
		Target:      XStructDepth1_XString{},
		SourceLabel: "XStructDepth1_XString{}",
		Source:      XStructDepth1_XString{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XString{}",
		Target:      XStructDepth1_XString{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XString{}",
		Target:      XStructDepth1_XString{},
		SourceLabel: "XStructDepth1_All{}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_XString{F4: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: XStructDepth1_XString{
			F4: "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "XStructDepth1_XString{F4: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: XStructDepth1_XString{
			F4: "abcdeΔΘΠΣΦ王普澤世界",
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_XString{F4: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target: XStructDepth1_XString{
			F4: "abcdeΔΘΠΣΦ王普澤世界",
		},
		SourceLabel: "XStructDepth1_All{F4: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source: XStructDepth1_All{
			F4: "abcdeΔΘΠΣΦ王普澤世界",
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XString{F4: \"ΔΘΠΣΦ王\"}",
		Target: XStructDepth1_XString{
			F4: "ΔΘΠΣΦ王",
		},
		SourceLabel: "XStructDepth1_XString{F4: \"ΔΘΠΣΦ王\"}",
		Source: XStructDepth1_XString{
			F4: "ΔΘΠΣΦ王",
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XString{F4: \"ΔΘΠΣΦ王\"}",
		Target: XStructDepth1_XString{
			F4: "ΔΘΠΣΦ王",
		},
		SourceLabel: "XStructDepth1_All{F4: \"ΔΘΠΣΦ王\"}",
		Source: XStructDepth1_All{
			F4: "ΔΘΠΣΦ王",
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_TypeObject{}",
		Target: XStructDepth1_TypeObject{
			F5: vdl.AnyType,
		},
		SourceLabel: "XStructDepth1_TypeObject{}",
		Source: XStructDepth1_TypeObject{
			F5: vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_TypeObject{}",
		Target: XStructDepth1_TypeObject{
			F5: vdl.AnyType,
		},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_TypeObject{}",
		Target: XStructDepth1_TypeObject{
			F5: vdl.AnyType,
		},
		SourceLabel: "XStructDepth1_All{}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_TypeObject{F5: typeobject(int64)}",
		Target: XStructDepth1_TypeObject{
			F5: vdl.Int64Type,
		},
		SourceLabel: "XStructDepth1_TypeObject{F5: typeobject(int64)}",
		Source: XStructDepth1_TypeObject{
			F5: vdl.Int64Type,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_TypeObject{F5: typeobject(int64)}",
		Target: XStructDepth1_TypeObject{
			F5: vdl.Int64Type,
		},
		SourceLabel: "XStructDepth1_All{F5: typeobject(int64)}",
		Source: XStructDepth1_All{
			F5: vdl.Int64Type,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_TypeObject{F5: typeobject(XStructDepth1_XInt16)}",
		Target: XStructDepth1_TypeObject{
			F5: __VDLType_struct_296,
		},
		SourceLabel: "XStructDepth1_TypeObject{F5: typeobject(XStructDepth1_XInt16)}",
		Source: XStructDepth1_TypeObject{
			F5: __VDLType_struct_296,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_TypeObject{F5: typeobject(XStructDepth1_XInt16)}",
		Target: XStructDepth1_TypeObject{
			F5: __VDLType_struct_296,
		},
		SourceLabel: "XStructDepth1_All{F5: typeobject(XStructDepth1_XInt16)}",
		Source: XStructDepth1_All{
			F5: __VDLType_struct_296,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Byte{}",
		Target:      XStructDepth1_Byte{},
		SourceLabel: "XStructDepth1_Byte{}",
		Source:      XStructDepth1_Byte{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Byte{}",
		Target:      XStructDepth1_Byte{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Byte{}",
		Target:      XStructDepth1_Byte{},
		SourceLabel: "XStructDepth1_All{}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_Byte{F6: 123}",
		Target: XStructDepth1_Byte{
			F6: 123,
		},
		SourceLabel: "XStructDepth1_Byte{F6: 123}",
		Source: XStructDepth1_Byte{
			F6: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_Byte{F6: 123}",
		Target: XStructDepth1_Byte{
			F6: 123,
		},
		SourceLabel: "XStructDepth1_All{F6: 123}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
			F6: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Byte{F6: 245}",
		Target: XStructDepth1_Byte{
			F6: 245,
		},
		SourceLabel: "XStructDepth1_Byte{F6: 245}",
		Source: XStructDepth1_Byte{
			F6: 245,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Byte{F6: 245}",
		Target: XStructDepth1_Byte{
			F6: 245,
		},
		SourceLabel: "XStructDepth1_All{F6: 245}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
			F6: 245,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XByte{}",
		Target:      XStructDepth1_XByte{},
		SourceLabel: "XStructDepth1_XByte{}",
		Source:      XStructDepth1_XByte{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XByte{}",
		Target:      XStructDepth1_XByte{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XByte{}",
		Target:      XStructDepth1_XByte{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_XByte{F7: 123}",
		Target: XStructDepth1_XByte{
			F7: 123,
		},
		SourceLabel: "XStructDepth1_XByte{F7: 123}",
		Source: XStructDepth1_XByte{
			F7: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_XByte{F7: 123}",
		Target: XStructDepth1_XByte{
			F7: 123,
		},
		SourceLabel: "XStructDepth1_All{F7: 123}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
			F7: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XByte{F7: 128}",
		Target: XStructDepth1_XByte{
			F7: 128,
		},
		SourceLabel: "XStructDepth1_XByte{F7: 128}",
		Source: XStructDepth1_XByte{
			F7: 128,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XByte{F7: 128}",
		Target: XStructDepth1_XByte{
			F7: 128,
		},
		SourceLabel: "XStructDepth1_All{F7: 128}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
			F7: 128,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XEnumAbc{}",
		Target:      XStructDepth1_XEnumAbc{},
		SourceLabel: "XStructDepth1_XEnumAbc{}",
		Source:      XStructDepth1_XEnumAbc{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XEnumAbc{}",
		Target:      XStructDepth1_XEnumAbc{},
		SourceLabel: "XStructDepth1_All{}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XEnumAbc{}",
		Target:      XStructDepth1_XEnumAbc{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_XEnumAbc{F8: C}",
		Target: XStructDepth1_XEnumAbc{
			F8: XEnumAbcC,
		},
		SourceLabel: "XStructDepth1_XEnumAbc{F8: C}",
		Source: XStructDepth1_XEnumAbc{
			F8: XEnumAbcC,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_XEnumAbc{F8: C}",
		Target: XStructDepth1_XEnumAbc{
			F8: XEnumAbcC,
		},
		SourceLabel: "XStructDepth1_All{F8: C}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
			F8: XEnumAbcC,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XEnumBcd{}",
		Target:      XStructDepth1_XEnumBcd{},
		SourceLabel: "XStructDepth1_XEnumBcd{}",
		Source:      XStructDepth1_XEnumBcd{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XEnumBcd{}",
		Target:      XStructDepth1_XEnumBcd{},
		SourceLabel: "?XStructDepth1_XEnumBcd{}",
		Source:      &XStructDepth1_XEnumBcd{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XEnumBcd{}",
		Target:      XStructDepth1_XEnumBcd{},
		SourceLabel: "XStructDepth1_All{}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_XEnumBcd{F9: D}",
		Target: XStructDepth1_XEnumBcd{
			F9: XEnumBcdD,
		},
		SourceLabel: "XStructDepth1_XEnumBcd{F9: D}",
		Source: XStructDepth1_XEnumBcd{
			F9: XEnumBcdD,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_XEnumBcd{F9: D}",
		Target: XStructDepth1_XEnumBcd{
			F9: XEnumBcdD,
		},
		SourceLabel: "?XStructDepth1_XEnumBcd{F9: D}",
		Source: &XStructDepth1_XEnumBcd{
			F9: XEnumBcdD,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XStructEmpty{}",
		Target:      XStructDepth1_XStructEmpty{},
		SourceLabel: "XStructDepth1_XStructEmpty{}",
		Source:      XStructDepth1_XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XStructEmpty{}",
		Target:      XStructDepth1_XStructEmpty{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XStructEmpty{}",
		Target:      XStructDepth1_XStructEmpty{},
		SourceLabel: "XStructDepth1_All{}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XNamedError{}",
		Target:      XStructDepth1_XNamedError{},
		SourceLabel: "XStructDepth1_XNamedError{}",
		Source:      XStructDepth1_XNamedError{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XNamedError{}",
		Target:      XStructDepth1_XNamedError{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XNamedError{}",
		Target:      XStructDepth1_XNamedError{},
		SourceLabel: "XStructDepth1_All{}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_XNamedError{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XStructDepth1_XNamedError{
			F11: XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "XStructDepth1_XNamedError{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XStructDepth1_XNamedError{
			F11: XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_XNamedError{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XStructDepth1_XNamedError{
			F11: XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "XStructDepth1_All{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
			F11: XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XNamedError{F11: {Id: \"d\", Msg: \"e\"}}",
		Target: XStructDepth1_XNamedError{
			F11: XNamedError{
				Id:  "d",
				Msg: "e",
			},
		},
		SourceLabel: "XStructDepth1_XNamedError{F11: {Id: \"d\", Msg: \"e\"}}",
		Source: XStructDepth1_XNamedError{
			F11: XNamedError{
				Id:  "d",
				Msg: "e",
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XNamedError{F11: {Id: \"d\", Msg: \"e\"}}",
		Target: XStructDepth1_XNamedError{
			F11: XNamedError{
				Id:  "d",
				Msg: "e",
			},
		},
		SourceLabel: "XStructDepth1_All{F11: {Id: \"d\", Msg: \"e\"}}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
			F11: XNamedError{
				Id:  "d",
				Msg: "e",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Error{}",
		Target:      XStructDepth1_Error{},
		SourceLabel: "XStructDepth1_Error{}",
		Source:      XStructDepth1_Error{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Error{}",
		Target:      XStructDepth1_Error{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Error{}",
		Target:      XStructDepth1_Error{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_Error{F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XStructDepth1_Error{
			F12: verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
		SourceLabel: "XStructDepth1_Error{F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XStructDepth1_Error{
			F12: verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_Error{F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XStructDepth1_Error{
			F12: verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
		SourceLabel: "XStructDepth1_All{F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
			F12: verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Error{F12: {Id: \"abcdeΔΘ\", Msg: \"ΔΘΠΣ\"}}",
		Target: XStructDepth1_Error{
			F12: verror.FromWire(&vdl.WireError{
				Id:  "abcdeΔΘ",
				Msg: "ΔΘΠΣ",
			}),
		},
		SourceLabel: "XStructDepth1_Error{F12: {Id: \"abcdeΔΘ\", Msg: \"ΔΘΠΣ\"}}",
		Source: XStructDepth1_Error{
			F12: verror.FromWire(&vdl.WireError{
				Id:  "abcdeΔΘ",
				Msg: "ΔΘΠΣ",
			}),
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Error{F12: {Id: \"abcdeΔΘ\", Msg: \"ΔΘΠΣ\"}}",
		Target: XStructDepth1_Error{
			F12: verror.FromWire(&vdl.WireError{
				Id:  "abcdeΔΘ",
				Msg: "ΔΘΠΣ",
			}),
		},
		SourceLabel: "XStructDepth1_All{F12: {Id: \"abcdeΔΘ\", Msg: \"ΔΘΠΣ\"}}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
			F12: verror.FromWire(&vdl.WireError{
				Id:  "abcdeΔΘ",
				Msg: "ΔΘΠΣ",
			}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Uint16{}",
		Target:      XStructDepth1_Uint16{},
		SourceLabel: "XStructDepth1_Uint16{}",
		Source:      XStructDepth1_Uint16{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Uint16{}",
		Target:      XStructDepth1_Uint16{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Uint16{}",
		Target:      XStructDepth1_Uint16{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_Uint16{F13: 123}",
		Target: XStructDepth1_Uint16{
			F13: 123,
		},
		SourceLabel: "XStructDepth1_Uint16{F13: 123}",
		Source: XStructDepth1_Uint16{
			F13: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_Uint16{F13: 123}",
		Target: XStructDepth1_Uint16{
			F13: 123,
		},
		SourceLabel: "XStructDepth1_All{F13: 123}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F13: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Uint16{F13: 30628}",
		Target: XStructDepth1_Uint16{
			F13: 30628,
		},
		SourceLabel: "XStructDepth1_Uint16{F13: 30628}",
		Source: XStructDepth1_Uint16{
			F13: 30628,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Uint16{F13: 30628}",
		Target: XStructDepth1_Uint16{
			F13: 30628,
		},
		SourceLabel: "XStructDepth1_All{F13: 30628}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F13: 30628,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XUint16{}",
		Target:      XStructDepth1_XUint16{},
		SourceLabel: "XStructDepth1_XUint16{}",
		Source:      XStructDepth1_XUint16{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XUint16{}",
		Target:      XStructDepth1_XUint16{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XUint16{}",
		Target:      XStructDepth1_XUint16{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_XUint16{F14: 123}",
		Target: XStructDepth1_XUint16{
			F14: 123,
		},
		SourceLabel: "XStructDepth1_XUint16{F14: 123}",
		Source: XStructDepth1_XUint16{
			F14: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_XUint16{F14: 123}",
		Target: XStructDepth1_XUint16{
			F14: 123,
		},
		SourceLabel: "XStructDepth1_All{F14: 123}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F14: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XUint16{F14: 45910}",
		Target: XStructDepth1_XUint16{
			F14: 45910,
		},
		SourceLabel: "XStructDepth1_XUint16{F14: 45910}",
		Source: XStructDepth1_XUint16{
			F14: 45910,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XUint16{F14: 45910}",
		Target: XStructDepth1_XUint16{
			F14: 45910,
		},
		SourceLabel: "?XStructDepth1_XUint16{F14: 45910}",
		Source: &XStructDepth1_XUint16{
			F14: 45910,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Uint32{}",
		Target:      XStructDepth1_Uint32{},
		SourceLabel: "XStructDepth1_Uint32{}",
		Source:      XStructDepth1_Uint32{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Uint32{}",
		Target:      XStructDepth1_Uint32{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Uint32{}",
		Target:      XStructDepth1_Uint32{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_Uint32{F15: 123}",
		Target: XStructDepth1_Uint32{
			F15: 123,
		},
		SourceLabel: "XStructDepth1_Uint32{F15: 123}",
		Source: XStructDepth1_Uint32{
			F15: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_Uint32{F15: 123}",
		Target: XStructDepth1_Uint32{
			F15: 123,
		},
		SourceLabel: "XStructDepth1_All{F15: 123}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F15: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Uint32{F15: 1861773432}",
		Target: XStructDepth1_Uint32{
			F15: 1861773432,
		},
		SourceLabel: "XStructDepth1_Uint32{F15: 1861773432}",
		Source: XStructDepth1_Uint32{
			F15: 1861773432,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Uint32{F15: 1861773432}",
		Target: XStructDepth1_Uint32{
			F15: 1861773432,
		},
		SourceLabel: "XStructDepth1_All{F15: 1861773432}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F15: 1861773432,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XUint32{}",
		Target:      XStructDepth1_XUint32{},
		SourceLabel: "XStructDepth1_XUint32{}",
		Source:      XStructDepth1_XUint32{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XUint32{}",
		Target:      XStructDepth1_XUint32{},
		SourceLabel: "XStructDepth1_All{}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XUint32{}",
		Target:      XStructDepth1_XUint32{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_XUint32{F16: 123}",
		Target: XStructDepth1_XUint32{
			F16: 123,
		},
		SourceLabel: "XStructDepth1_XUint32{F16: 123}",
		Source: XStructDepth1_XUint32{
			F16: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_XUint32{F16: 123}",
		Target: XStructDepth1_XUint32{
			F16: 123,
		},
		SourceLabel: "XStructDepth1_All{F16: 123}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F16: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XUint32{F16: 867867091}",
		Target: XStructDepth1_XUint32{
			F16: 867867091,
		},
		SourceLabel: "XStructDepth1_XUint32{F16: 867867091}",
		Source: XStructDepth1_XUint32{
			F16: 867867091,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XUint32{F16: 867867091}",
		Target: XStructDepth1_XUint32{
			F16: 867867091,
		},
		SourceLabel: "XStructDepth1_All{F16: 867867091}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F16: 867867091,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Uint64{}",
		Target:      XStructDepth1_Uint64{},
		SourceLabel: "XStructDepth1_Uint64{}",
		Source:      XStructDepth1_Uint64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Uint64{}",
		Target:      XStructDepth1_Uint64{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Uint64{}",
		Target:      XStructDepth1_Uint64{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_Uint64{F17: 123}",
		Target: XStructDepth1_Uint64{
			F17: 123,
		},
		SourceLabel: "XStructDepth1_Uint64{F17: 123}",
		Source: XStructDepth1_Uint64{
			F17: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_Uint64{F17: 123}",
		Target: XStructDepth1_Uint64{
			F17: 123,
		},
		SourceLabel: "XStructDepth1_All{F17: 123}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F17: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Uint64{F17: 708602618574826930}",
		Target: XStructDepth1_Uint64{
			F17: 708602618574826930,
		},
		SourceLabel: "XStructDepth1_Uint64{F17: 708602618574826930}",
		Source: XStructDepth1_Uint64{
			F17: 708602618574826930,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Uint64{F17: 708602618574826930}",
		Target: XStructDepth1_Uint64{
			F17: 708602618574826930,
		},
		SourceLabel: "XStructDepth1_All{F17: 708602618574826930}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F17: 708602618574826930,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XUint64{}",
		Target:      XStructDepth1_XUint64{},
		SourceLabel: "XStructDepth1_XUint64{}",
		Source:      XStructDepth1_XUint64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XUint64{}",
		Target:      XStructDepth1_XUint64{},
		SourceLabel: "XStructDepth1_All{}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XUint64{}",
		Target:      XStructDepth1_XUint64{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_XUint64{F18: 123}",
		Target: XStructDepth1_XUint64{
			F18: 123,
		},
		SourceLabel: "XStructDepth1_XUint64{F18: 123}",
		Source: XStructDepth1_XUint64{
			F18: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_XUint64{F18: 123}",
		Target: XStructDepth1_XUint64{
			F18: 123,
		},
		SourceLabel: "XStructDepth1_All{F18: 123}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F18: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XUint64{F18: 6707807478685153739}",
		Target: XStructDepth1_XUint64{
			F18: 6707807478685153739,
		},
		SourceLabel: "XStructDepth1_XUint64{F18: 6707807478685153739}",
		Source: XStructDepth1_XUint64{
			F18: 6707807478685153739,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XUint64{F18: 6707807478685153739}",
		Target: XStructDepth1_XUint64{
			F18: 6707807478685153739,
		},
		SourceLabel: "XStructDepth1_All{F18: 6707807478685153739}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F18: 6707807478685153739,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Int8{}",
		Target:      XStructDepth1_Int8{},
		SourceLabel: "XStructDepth1_Int8{}",
		Source:      XStructDepth1_Int8{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Int8{}",
		Target:      XStructDepth1_Int8{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Int8{}",
		Target:      XStructDepth1_Int8{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_Int8{F19: -123}",
		Target: XStructDepth1_Int8{
			F19: -123,
		},
		SourceLabel: "XStructDepth1_Int8{F19: -123}",
		Source: XStructDepth1_Int8{
			F19: -123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_Int8{F19: -123}",
		Target: XStructDepth1_Int8{
			F19: -123,
		},
		SourceLabel: "XStructDepth1_All{F19: -123}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F19: -123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Int8{F19: 25}",
		Target: XStructDepth1_Int8{
			F19: 25,
		},
		SourceLabel: "XStructDepth1_Int8{F19: 25}",
		Source: XStructDepth1_Int8{
			F19: 25,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Int8{F19: 25}",
		Target: XStructDepth1_Int8{
			F19: 25,
		},
		SourceLabel: "XStructDepth1_All{F19: 25}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F19: 25,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XInt8{}",
		Target:      XStructDepth1_XInt8{},
		SourceLabel: "XStructDepth1_XInt8{}",
		Source:      XStructDepth1_XInt8{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XInt8{}",
		Target:      XStructDepth1_XInt8{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XInt8{}",
		Target:      XStructDepth1_XInt8{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_XInt8{F20: -123}",
		Target: XStructDepth1_XInt8{
			F20: -123,
		},
		SourceLabel: "XStructDepth1_XInt8{F20: -123}",
		Source: XStructDepth1_XInt8{
			F20: -123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_XInt8{F20: -123}",
		Target: XStructDepth1_XInt8{
			F20: -123,
		},
		SourceLabel: "XStructDepth1_All{F20: -123}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F20: -123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XInt8{F20: 53}",
		Target: XStructDepth1_XInt8{
			F20: 53,
		},
		SourceLabel: "XStructDepth1_XInt8{F20: 53}",
		Source: XStructDepth1_XInt8{
			F20: 53,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XInt8{F20: 53}",
		Target: XStructDepth1_XInt8{
			F20: 53,
		},
		SourceLabel: "XStructDepth1_All{F20: 53}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F20: 53,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Int16{}",
		Target:      XStructDepth1_Int16{},
		SourceLabel: "XStructDepth1_Int16{}",
		Source:      XStructDepth1_Int16{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Int16{}",
		Target:      XStructDepth1_Int16{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Int16{}",
		Target:      XStructDepth1_Int16{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_Int16{F21: -123}",
		Target: XStructDepth1_Int16{
			F21: -123,
		},
		SourceLabel: "XStructDepth1_Int16{F21: -123}",
		Source: XStructDepth1_Int16{
			F21: -123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_Int16{F21: -123}",
		Target: XStructDepth1_Int16{
			F21: -123,
		},
		SourceLabel: "XStructDepth1_All{F21: -123}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F21: -123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Int16{F21: 9243}",
		Target: XStructDepth1_Int16{
			F21: 9243,
		},
		SourceLabel: "XStructDepth1_Int16{F21: 9243}",
		Source: XStructDepth1_Int16{
			F21: 9243,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Int16{F21: 9243}",
		Target: XStructDepth1_Int16{
			F21: 9243,
		},
		SourceLabel: "XStructDepth1_All{F21: 9243}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F21: 9243,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XInt16{}",
		Target:      XStructDepth1_XInt16{},
		SourceLabel: "XStructDepth1_XInt16{}",
		Source:      XStructDepth1_XInt16{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XInt16{}",
		Target:      XStructDepth1_XInt16{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XInt16{}",
		Target:      XStructDepth1_XInt16{},
		SourceLabel: "XStructDepth1_All{}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_XInt16{F22: -123}",
		Target: XStructDepth1_XInt16{
			F22: -123,
		},
		SourceLabel: "XStructDepth1_XInt16{F22: -123}",
		Source: XStructDepth1_XInt16{
			F22: -123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_XInt16{F22: -123}",
		Target: XStructDepth1_XInt16{
			F22: -123,
		},
		SourceLabel: "XStructDepth1_All{F22: -123}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F22: -123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XInt16{F22: 6856}",
		Target: XStructDepth1_XInt16{
			F22: 6856,
		},
		SourceLabel: "XStructDepth1_XInt16{F22: 6856}",
		Source: XStructDepth1_XInt16{
			F22: 6856,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XInt16{F22: 6856}",
		Target: XStructDepth1_XInt16{
			F22: 6856,
		},
		SourceLabel: "XStructDepth1_All{F22: 6856}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F22: 6856,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Int32{}",
		Target:      XStructDepth1_Int32{},
		SourceLabel: "XStructDepth1_Int32{}",
		Source:      XStructDepth1_Int32{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Int32{}",
		Target:      XStructDepth1_Int32{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Int32{}",
		Target:      XStructDepth1_Int32{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_Int32{F23: -123}",
		Target: XStructDepth1_Int32{
			F23: -123,
		},
		SourceLabel: "XStructDepth1_Int32{F23: -123}",
		Source: XStructDepth1_Int32{
			F23: -123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_Int32{F23: -123}",
		Target: XStructDepth1_Int32{
			F23: -123,
		},
		SourceLabel: "XStructDepth1_All{F23: -123}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F23: -123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Int32{F23: 953460934}",
		Target: XStructDepth1_Int32{
			F23: 953460934,
		},
		SourceLabel: "XStructDepth1_Int32{F23: 953460934}",
		Source: XStructDepth1_Int32{
			F23: 953460934,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Int32{F23: 953460934}",
		Target: XStructDepth1_Int32{
			F23: 953460934,
		},
		SourceLabel: "XStructDepth1_All{F23: 953460934}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F23: 953460934,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XInt32{}",
		Target:      XStructDepth1_XInt32{},
		SourceLabel: "XStructDepth1_XInt32{}",
		Source:      XStructDepth1_XInt32{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XInt32{}",
		Target:      XStructDepth1_XInt32{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XInt32{}",
		Target:      XStructDepth1_XInt32{},
		SourceLabel: "XStructDepth1_All{}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_XInt32{F24: -123}",
		Target: XStructDepth1_XInt32{
			F24: -123,
		},
		SourceLabel: "XStructDepth1_XInt32{F24: -123}",
		Source: XStructDepth1_XInt32{
			F24: -123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_XInt32{F24: -123}",
		Target: XStructDepth1_XInt32{
			F24: -123,
		},
		SourceLabel: "XStructDepth1_All{F24: -123}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F24: -123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XInt32{F24: 803419100}",
		Target: XStructDepth1_XInt32{
			F24: 803419100,
		},
		SourceLabel: "XStructDepth1_XInt32{F24: 803419100}",
		Source: XStructDepth1_XInt32{
			F24: 803419100,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XInt32{F24: 803419100}",
		Target: XStructDepth1_XInt32{
			F24: 803419100,
		},
		SourceLabel: "XStructDepth1_All{F24: 803419100}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F24: 803419100,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Int64{}",
		Target:      XStructDepth1_Int64{},
		SourceLabel: "XStructDepth1_Int64{}",
		Source:      XStructDepth1_Int64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Int64{}",
		Target:      XStructDepth1_Int64{},
		SourceLabel: "XStructDepth1_All{}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Int64{}",
		Target:      XStructDepth1_Int64{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_Int64{F25: -123}",
		Target: XStructDepth1_Int64{
			F25: -123,
		},
		SourceLabel: "XStructDepth1_Int64{F25: -123}",
		Source: XStructDepth1_Int64{
			F25: -123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_Int64{F25: -123}",
		Target: XStructDepth1_Int64{
			F25: -123,
		},
		SourceLabel: "XStructDepth1_All{F25: -123}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F25: -123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Int64{F25: -2526134402219146536}",
		Target: XStructDepth1_Int64{
			F25: -2526134402219146536,
		},
		SourceLabel: "XStructDepth1_Int64{F25: -2526134402219146536}",
		Source: XStructDepth1_Int64{
			F25: -2526134402219146536,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Int64{F25: -2526134402219146536}",
		Target: XStructDepth1_Int64{
			F25: -2526134402219146536,
		},
		SourceLabel: "XStructDepth1_All{F25: -2526134402219146536}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F25: -2526134402219146536,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XInt64{}",
		Target:      XStructDepth1_XInt64{},
		SourceLabel: "XStructDepth1_XInt64{}",
		Source:      XStructDepth1_XInt64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XInt64{}",
		Target:      XStructDepth1_XInt64{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XInt64{}",
		Target:      XStructDepth1_XInt64{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_XInt64{F26: -123}",
		Target: XStructDepth1_XInt64{
			F26: -123,
		},
		SourceLabel: "XStructDepth1_XInt64{F26: -123}",
		Source: XStructDepth1_XInt64{
			F26: -123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_XInt64{F26: -123}",
		Target: XStructDepth1_XInt64{
			F26: -123,
		},
		SourceLabel: "XStructDepth1_All{F26: -123}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F26: -123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XInt64{F26: -3928364049329722813}",
		Target: XStructDepth1_XInt64{
			F26: -3928364049329722813,
		},
		SourceLabel: "XStructDepth1_XInt64{F26: -3928364049329722813}",
		Source: XStructDepth1_XInt64{
			F26: -3928364049329722813,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XInt64{F26: -3928364049329722813}",
		Target: XStructDepth1_XInt64{
			F26: -3928364049329722813,
		},
		SourceLabel: "XStructDepth1_All{F26: -3928364049329722813}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F26: -3928364049329722813,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Float32{}",
		Target:      XStructDepth1_Float32{},
		SourceLabel: "XStructDepth1_Float32{}",
		Source:      XStructDepth1_Float32{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Float32{}",
		Target:      XStructDepth1_Float32{},
		SourceLabel: "XStructDepth1_All{}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Float32{}",
		Target:      XStructDepth1_Float32{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_Float32{F27: 1.5}",
		Target: XStructDepth1_Float32{
			F27: 1.5,
		},
		SourceLabel: "XStructDepth1_Float32{F27: 1.5}",
		Source: XStructDepth1_Float32{
			F27: 1.5,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_Float32{F27: 1.5}",
		Target: XStructDepth1_Float32{
			F27: 1.5,
		},
		SourceLabel: "XStructDepth1_All{F27: 1.5}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F27: 1.5,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Float32{F27: 5.0441037e+08}",
		Target: XStructDepth1_Float32{
			F27: 5.0441037e+08,
		},
		SourceLabel: "XStructDepth1_Float32{F27: 5.0441037e+08}",
		Source: XStructDepth1_Float32{
			F27: 5.0441037e+08,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Float32{F27: 5.0441037e+08}",
		Target: XStructDepth1_Float32{
			F27: 5.0441037e+08,
		},
		SourceLabel: "XStructDepth1_All{F27: 5.0441037e+08}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F27: 5.0441037e+08,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XFloat32{}",
		Target:      XStructDepth1_XFloat32{},
		SourceLabel: "XStructDepth1_XFloat32{}",
		Source:      XStructDepth1_XFloat32{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XFloat32{}",
		Target:      XStructDepth1_XFloat32{},
		SourceLabel: "XStructDepth1_All{}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XFloat32{}",
		Target:      XStructDepth1_XFloat32{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_XFloat32{F28: 1.5}",
		Target: XStructDepth1_XFloat32{
			F28: 1.5,
		},
		SourceLabel: "XStructDepth1_XFloat32{F28: 1.5}",
		Source: XStructDepth1_XFloat32{
			F28: 1.5,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_XFloat32{F28: 1.5}",
		Target: XStructDepth1_XFloat32{
			F28: 1.5,
		},
		SourceLabel: "XStructDepth1_All{F28: 1.5}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F28: 1.5,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XFloat32{F28: -1.7849115e+09}",
		Target: XStructDepth1_XFloat32{
			F28: -1.7849115e+09,
		},
		SourceLabel: "XStructDepth1_XFloat32{F28: -1.7849115e+09}",
		Source: XStructDepth1_XFloat32{
			F28: -1.7849115e+09,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XFloat32{F28: -1.7849115e+09}",
		Target: XStructDepth1_XFloat32{
			F28: -1.7849115e+09,
		},
		SourceLabel: "XStructDepth1_All{F28: -1.7849115e+09}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F28: -1.7849115e+09,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Float64{}",
		Target:      XStructDepth1_Float64{},
		SourceLabel: "XStructDepth1_Float64{}",
		Source:      XStructDepth1_Float64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Float64{}",
		Target:      XStructDepth1_Float64{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_Float64{}",
		Target:      XStructDepth1_Float64{},
		SourceLabel: "XStructDepth1_All{}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_Float64{F29: 1.5}",
		Target: XStructDepth1_Float64{
			F29: 1.5,
		},
		SourceLabel: "XStructDepth1_Float64{F29: 1.5}",
		Source: XStructDepth1_Float64{
			F29: 1.5,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_Float64{F29: 1.5}",
		Target: XStructDepth1_Float64{
			F29: 1.5,
		},
		SourceLabel: "XStructDepth1_All{F29: 1.5}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F29: 1.5,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Float64{F29: -1.2293507091490128e+09}",
		Target: XStructDepth1_Float64{
			F29: -1.2293507091490128e+09,
		},
		SourceLabel: "XStructDepth1_Float64{F29: -1.2293507091490128e+09}",
		Source: XStructDepth1_Float64{
			F29: -1.2293507091490128e+09,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_Float64{F29: -1.2293507091490128e+09}",
		Target: XStructDepth1_Float64{
			F29: -1.2293507091490128e+09,
		},
		SourceLabel: "XStructDepth1_All{F29: -1.2293507091490128e+09}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F29: -1.2293507091490128e+09,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XFloat64{}",
		Target:      XStructDepth1_XFloat64{},
		SourceLabel: "XStructDepth1_XFloat64{}",
		Source:      XStructDepth1_XFloat64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XFloat64{}",
		Target:      XStructDepth1_XFloat64{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_XFloat64{}",
		Target:      XStructDepth1_XFloat64{},
		SourceLabel: "XStructDepth1_All{}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_XFloat64{F30: 1.5}",
		Target: XStructDepth1_XFloat64{
			F30: 1.5,
		},
		SourceLabel: "XStructDepth1_XFloat64{F30: 1.5}",
		Source: XStructDepth1_XFloat64{
			F30: 1.5,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_XFloat64{F30: 1.5}",
		Target: XStructDepth1_XFloat64{
			F30: 1.5,
		},
		SourceLabel: "XStructDepth1_All{F30: 1.5}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F30: 1.5,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XFloat64{F30: 1.420195419586073e+08}",
		Target: XStructDepth1_XFloat64{
			F30: 1.420195419586073e+08,
		},
		SourceLabel: "XStructDepth1_XFloat64{F30: 1.420195419586073e+08}",
		Source: XStructDepth1_XFloat64{
			F30: 1.420195419586073e+08,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_XFloat64{F30: 1.420195419586073e+08}",
		Target: XStructDepth1_XFloat64{
			F30: 1.420195419586073e+08,
		},
		SourceLabel: "XStructDepth1_All{F30: 1.420195419586073e+08}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F30: 1.420195419586073e+08,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_OptXStructEmpty{}",
		Target:      XStructDepth1_OptXStructEmpty{},
		SourceLabel: "XStructDepth1_OptXStructEmpty{}",
		Source:      XStructDepth1_OptXStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_OptXStructEmpty{}",
		Target:      XStructDepth1_OptXStructEmpty{},
		SourceLabel: "XStructDepth1_All{}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_OptXStructEmpty{}",
		Target:      XStructDepth1_OptXStructEmpty{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_OptXStructEmpty{F31: {}}",
		Target: XStructDepth1_OptXStructEmpty{
			F31: &XStructEmpty{},
		},
		SourceLabel: "XStructDepth1_OptXStructEmpty{F31: {}}",
		Source: XStructDepth1_OptXStructEmpty{
			F31: &XStructEmpty{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_OptXStructEmpty{F31: {}}",
		Target: XStructDepth1_OptXStructEmpty{
			F31: &XStructEmpty{},
		},
		SourceLabel: "XStructDepth1_All{F31: {}}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F31: &XStructEmpty{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth1_OptXNamedError{}",
		Target:      XStructDepth1_OptXNamedError{},
		SourceLabel: "XStructDepth1_OptXNamedError{}",
		Source:      XStructDepth1_OptXNamedError{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_OptXNamedError{}",
		Target:      XStructDepth1_OptXNamedError{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth1_OptXNamedError{}",
		Target:      XStructDepth1_OptXNamedError{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth1_OptXNamedError{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XStructDepth1_OptXNamedError{
			F32: &XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "XStructDepth1_OptXNamedError{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XStructDepth1_OptXNamedError{
			F32: &XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth1_OptXNamedError{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XStructDepth1_OptXNamedError{
			F32: &XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "XStructDepth1_All{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
			F32: &XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth1_OptXNamedError{F32: {Id: \"澤世\", Msg: \"Φ\"}}",
		Target: XStructDepth1_OptXNamedError{
			F32: &XNamedError{
				Id:  "澤世",
				Msg: "Φ",
			},
		},
		SourceLabel: "XStructDepth1_OptXNamedError{F32: {Id: \"澤世\", Msg: \"Φ\"}}",
		Source: XStructDepth1_OptXNamedError{
			F32: &XNamedError{
				Id:  "澤世",
				Msg: "Φ",
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth1_OptXNamedError{F32: {Id: \"澤世\", Msg: \"Φ\"}}",
		Target: XStructDepth1_OptXNamedError{
			F32: &XNamedError{
				Id:  "澤世",
				Msg: "Φ",
			},
		},
		SourceLabel: "XStructDepth1_All{F32: {Id: \"澤世\", Msg: \"Φ\"}}",
		Source: XStructDepth1_All{
			F5: vdl.AnyType,
			F32: &XNamedError{
				Id:  "澤世",
				Msg: "Φ",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_All{F0: nil}",
		Target:      XUnionDepth1_All(XUnionDepth1_AllF0{}),
		SourceLabel: "XUnionDepth1_All{F0: nil}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF0{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_All{F0: nil}",
		Target:      XUnionDepth1_All(XUnionDepth1_AllF0{}),
		SourceLabel: "XUnionDepth1_Any{F0: nil}",
		Source:      XUnionDepth1_Any(XUnionDepth1_AnyF0{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_All{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XUnionDepth1_All(XUnionDepth1_AllF32{&XNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
		SourceLabel: "XUnionDepth1_All{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XUnionDepth1_All(XUnionDepth1_AllF32{&XNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_All{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XUnionDepth1_All(XUnionDepth1_AllF32{&XNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
		SourceLabel: "XUnionDepth1_OptXNamedError{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XUnionDepth1_OptXNamedError(XUnionDepth1_OptXNamedErrorF32{&XNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_All{F14: 510}",
		Target:      XUnionDepth1_All(XUnionDepth1_AllF14{510}),
		SourceLabel: "XUnionDepth1_All{F14: 510}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF14{510}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_All{F14: 510}",
		Target:      XUnionDepth1_All(XUnionDepth1_AllF14{510}),
		SourceLabel: "XUnionDepth1_XUint16{F14: 510}",
		Source:      XUnionDepth1_XUint16(XUnionDepth1_XUint16F14{510}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Any{F0: nil}",
		Target:      XUnionDepth1_Any(XUnionDepth1_AnyF0{}),
		SourceLabel: "XUnionDepth1_Any{F0: nil}",
		Source:      XUnionDepth1_Any(XUnionDepth1_AnyF0{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Any{F0: nil}",
		Target:      XUnionDepth1_Any(XUnionDepth1_AnyF0{}),
		SourceLabel: "XUnionDepth1_All{F0: nil}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF0{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Any{F0: int64(-123)}",
		Target:      XUnionDepth1_Any(XUnionDepth1_AnyF0{int64(-123)}),
		SourceLabel: "XUnionDepth1_Any{F0: int64(-123)}",
		Source:      XUnionDepth1_Any(XUnionDepth1_AnyF0{int64(-123)}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Any{F0: int64(-123)}",
		Target:      XUnionDepth1_Any(XUnionDepth1_AnyF0{int64(-123)}),
		SourceLabel: "XUnionDepth1_All{F0: int64(-123)}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF0{int64(-123)}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Any{F0: XStructDepth1_Uint32{F15: 4288875436}}",
		Target: XUnionDepth1_Any(XUnionDepth1_AnyF0{XStructDepth1_Uint32{
			F15: 4288875436,
		}}),
		SourceLabel: "XUnionDepth1_Any{F0: XStructDepth1_Uint32{F15: 4288875436}}",
		Source: XUnionDepth1_Any(XUnionDepth1_AnyF0{XStructDepth1_Uint32{
			F15: 4288875436,
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Any{F0: XStructDepth1_Uint32{F15: 4288875436}}",
		Target: XUnionDepth1_Any(XUnionDepth1_AnyF0{XStructDepth1_Uint32{
			F15: 4288875436,
		}}),
		SourceLabel: "XUnionDepth1_All{F0: XStructDepth1_Uint32{F15: 4288875436}}",
		Source: XUnionDepth1_All(XUnionDepth1_AllF0{XStructDepth1_Uint32{
			F15: 4288875436,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Bool{F1: false}",
		Target:      XUnionDepth1_Bool(XUnionDepth1_BoolF1{}),
		SourceLabel: "XUnionDepth1_Bool{F1: false}",
		Source:      XUnionDepth1_Bool(XUnionDepth1_BoolF1{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Bool{F1: false}",
		Target:      XUnionDepth1_Bool(XUnionDepth1_BoolF1{}),
		SourceLabel: "XUnionDepth1_All{F1: false}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF1{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Bool{F1: true}",
		Target:      XUnionDepth1_Bool(XUnionDepth1_BoolF1{true}),
		SourceLabel: "XUnionDepth1_Bool{F1: true}",
		Source:      XUnionDepth1_Bool(XUnionDepth1_BoolF1{true}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Bool{F1: true}",
		Target:      XUnionDepth1_Bool(XUnionDepth1_BoolF1{true}),
		SourceLabel: "XUnionDepth1_All{F1: true}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF1{true}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XBool{F2: false}",
		Target:      XUnionDepth1_XBool(XUnionDepth1_XBoolF2{}),
		SourceLabel: "XUnionDepth1_XBool{F2: false}",
		Source:      XUnionDepth1_XBool(XUnionDepth1_XBoolF2{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XBool{F2: false}",
		Target:      XUnionDepth1_XBool(XUnionDepth1_XBoolF2{}),
		SourceLabel: "XUnionDepth1_All{F2: false}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF2{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XBool{F2: true}",
		Target:      XUnionDepth1_XBool(XUnionDepth1_XBoolF2{true}),
		SourceLabel: "XUnionDepth1_XBool{F2: true}",
		Source:      XUnionDepth1_XBool(XUnionDepth1_XBoolF2{true}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XBool{F2: true}",
		Target:      XUnionDepth1_XBool(XUnionDepth1_XBoolF2{true}),
		SourceLabel: "XUnionDepth1_All{F2: true}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF2{true}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_String{F3: \"\"}",
		Target:      XUnionDepth1_String(XUnionDepth1_StringF3{}),
		SourceLabel: "XUnionDepth1_String{F3: \"\"}",
		Source:      XUnionDepth1_String(XUnionDepth1_StringF3{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_String{F3: \"\"}",
		Target:      XUnionDepth1_String(XUnionDepth1_StringF3{}),
		SourceLabel: "XUnionDepth1_All{F3: \"\"}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF3{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_String{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target:      XUnionDepth1_String(XUnionDepth1_StringF3{"abcdeΔΘΠΣΦ王普澤世界"}),
		SourceLabel: "XUnionDepth1_String{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source:      XUnionDepth1_String(XUnionDepth1_StringF3{"abcdeΔΘΠΣΦ王普澤世界"}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_String{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target:      XUnionDepth1_String(XUnionDepth1_StringF3{"abcdeΔΘΠΣΦ王普澤世界"}),
		SourceLabel: "XUnionDepth1_All{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF3{"abcdeΔΘΠΣΦ王普澤世界"}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_String{F3: \"eΔ\"}",
		Target:      XUnionDepth1_String(XUnionDepth1_StringF3{"eΔ"}),
		SourceLabel: "XUnionDepth1_String{F3: \"eΔ\"}",
		Source:      XUnionDepth1_String(XUnionDepth1_StringF3{"eΔ"}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_String{F3: \"eΔ\"}",
		Target:      XUnionDepth1_String(XUnionDepth1_StringF3{"eΔ"}),
		SourceLabel: "XUnionDepth1_All{F3: \"eΔ\"}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF3{"eΔ"}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XString{F4: \"\"}",
		Target:      XUnionDepth1_XString(XUnionDepth1_XStringF4{}),
		SourceLabel: "XUnionDepth1_XString{F4: \"\"}",
		Source:      XUnionDepth1_XString(XUnionDepth1_XStringF4{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XString{F4: \"\"}",
		Target:      XUnionDepth1_XString(XUnionDepth1_XStringF4{}),
		SourceLabel: "XUnionDepth1_All{F4: \"\"}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF4{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XString{F4: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target:      XUnionDepth1_XString(XUnionDepth1_XStringF4{"abcdeΔΘΠΣΦ王普澤世界"}),
		SourceLabel: "XUnionDepth1_XString{F4: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source:      XUnionDepth1_XString(XUnionDepth1_XStringF4{"abcdeΔΘΠΣΦ王普澤世界"}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XString{F4: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Target:      XUnionDepth1_XString(XUnionDepth1_XStringF4{"abcdeΔΘΠΣΦ王普澤世界"}),
		SourceLabel: "XUnionDepth1_All{F4: \"abcdeΔΘΠΣΦ王普澤世界\"}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF4{"abcdeΔΘΠΣΦ王普澤世界"}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XString{F4: \"abcdeΔΘΠΣΦ王普\"}",
		Target:      XUnionDepth1_XString(XUnionDepth1_XStringF4{"abcdeΔΘΠΣΦ王普"}),
		SourceLabel: "XUnionDepth1_XString{F4: \"abcdeΔΘΠΣΦ王普\"}",
		Source:      XUnionDepth1_XString(XUnionDepth1_XStringF4{"abcdeΔΘΠΣΦ王普"}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XString{F4: \"abcdeΔΘΠΣΦ王普\"}",
		Target:      XUnionDepth1_XString(XUnionDepth1_XStringF4{"abcdeΔΘΠΣΦ王普"}),
		SourceLabel: "XUnionDepth1_All{F4: \"abcdeΔΘΠΣΦ王普\"}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF4{"abcdeΔΘΠΣΦ王普"}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_TypeObject{F5: typeobject(any)}",
		Target:      XUnionDepth1_TypeObject(XUnionDepth1_TypeObjectF5{vdl.AnyType}),
		SourceLabel: "XUnionDepth1_TypeObject{F5: typeobject(any)}",
		Source:      XUnionDepth1_TypeObject(XUnionDepth1_TypeObjectF5{vdl.AnyType}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_TypeObject{F5: typeobject(any)}",
		Target:      XUnionDepth1_TypeObject(XUnionDepth1_TypeObjectF5{vdl.AnyType}),
		SourceLabel: "XUnionDepth1_All{F5: typeobject(any)}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF5{vdl.AnyType}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_TypeObject{F5: typeobject(int64)}",
		Target:      XUnionDepth1_TypeObject(XUnionDepth1_TypeObjectF5{vdl.Int64Type}),
		SourceLabel: "XUnionDepth1_TypeObject{F5: typeobject(int64)}",
		Source:      XUnionDepth1_TypeObject(XUnionDepth1_TypeObjectF5{vdl.Int64Type}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_TypeObject{F5: typeobject(int64)}",
		Target:      XUnionDepth1_TypeObject(XUnionDepth1_TypeObjectF5{vdl.Int64Type}),
		SourceLabel: "XUnionDepth1_All{F5: typeobject(int64)}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF5{vdl.Int64Type}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_TypeObject{F5: typeobject(XUnionDepth1_Bool)}",
		Target:      XUnionDepth1_TypeObject(XUnionDepth1_TypeObjectF5{__VDLType_union_297}),
		SourceLabel: "XUnionDepth1_TypeObject{F5: typeobject(XUnionDepth1_Bool)}",
		Source:      XUnionDepth1_TypeObject(XUnionDepth1_TypeObjectF5{__VDLType_union_297}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_TypeObject{F5: typeobject(XUnionDepth1_Bool)}",
		Target:      XUnionDepth1_TypeObject(XUnionDepth1_TypeObjectF5{__VDLType_union_297}),
		SourceLabel: "XUnionDepth1_All{F5: typeobject(XUnionDepth1_Bool)}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF5{__VDLType_union_297}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Byte{F6: 0}",
		Target:      XUnionDepth1_Byte(XUnionDepth1_ByteF6{}),
		SourceLabel: "XUnionDepth1_Byte{F6: 0}",
		Source:      XUnionDepth1_Byte(XUnionDepth1_ByteF6{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Byte{F6: 0}",
		Target:      XUnionDepth1_Byte(XUnionDepth1_ByteF6{}),
		SourceLabel: "XUnionDepth1_All{F6: 0}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF6{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Byte{F6: 123}",
		Target:      XUnionDepth1_Byte(XUnionDepth1_ByteF6{123}),
		SourceLabel: "XUnionDepth1_Byte{F6: 123}",
		Source:      XUnionDepth1_Byte(XUnionDepth1_ByteF6{123}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Byte{F6: 123}",
		Target:      XUnionDepth1_Byte(XUnionDepth1_ByteF6{123}),
		SourceLabel: "XUnionDepth1_All{F6: 123}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF6{123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Byte{F6: 220}",
		Target:      XUnionDepth1_Byte(XUnionDepth1_ByteF6{220}),
		SourceLabel: "XUnionDepth1_Byte{F6: 220}",
		Source:      XUnionDepth1_Byte(XUnionDepth1_ByteF6{220}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Byte{F6: 220}",
		Target:      XUnionDepth1_Byte(XUnionDepth1_ByteF6{220}),
		SourceLabel: "XUnionDepth1_All{F6: 220}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF6{220}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XByte{F7: 0}",
		Target:      XUnionDepth1_XByte(XUnionDepth1_XByteF7{}),
		SourceLabel: "XUnionDepth1_XByte{F7: 0}",
		Source:      XUnionDepth1_XByte(XUnionDepth1_XByteF7{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XByte{F7: 0}",
		Target:      XUnionDepth1_XByte(XUnionDepth1_XByteF7{}),
		SourceLabel: "XUnionDepth1_All{F7: 0}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF7{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XByte{F7: 123}",
		Target:      XUnionDepth1_XByte(XUnionDepth1_XByteF7{123}),
		SourceLabel: "XUnionDepth1_XByte{F7: 123}",
		Source:      XUnionDepth1_XByte(XUnionDepth1_XByteF7{123}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XByte{F7: 123}",
		Target:      XUnionDepth1_XByte(XUnionDepth1_XByteF7{123}),
		SourceLabel: "XUnionDepth1_All{F7: 123}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF7{123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XByte{F7: 187}",
		Target:      XUnionDepth1_XByte(XUnionDepth1_XByteF7{187}),
		SourceLabel: "XUnionDepth1_XByte{F7: 187}",
		Source:      XUnionDepth1_XByte(XUnionDepth1_XByteF7{187}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XByte{F7: 187}",
		Target:      XUnionDepth1_XByte(XUnionDepth1_XByteF7{187}),
		SourceLabel: "XUnionDepth1_All{F7: 187}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF7{187}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XEnumAbc{F8: A}",
		Target:      XUnionDepth1_XEnumAbc(XUnionDepth1_XEnumAbcF8{}),
		SourceLabel: "XUnionDepth1_XEnumAbc{F8: A}",
		Source:      XUnionDepth1_XEnumAbc(XUnionDepth1_XEnumAbcF8{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XEnumAbc{F8: A}",
		Target:      XUnionDepth1_XEnumAbc(XUnionDepth1_XEnumAbcF8{}),
		SourceLabel: "XUnionDepth1_All{F8: A}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF8{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XEnumAbc{F8: C}",
		Target:      XUnionDepth1_XEnumAbc(XUnionDepth1_XEnumAbcF8{XEnumAbcC}),
		SourceLabel: "XUnionDepth1_XEnumAbc{F8: C}",
		Source:      XUnionDepth1_XEnumAbc(XUnionDepth1_XEnumAbcF8{XEnumAbcC}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XEnumAbc{F8: C}",
		Target:      XUnionDepth1_XEnumAbc(XUnionDepth1_XEnumAbcF8{XEnumAbcC}),
		SourceLabel: "XUnionDepth1_All{F8: C}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF8{XEnumAbcC}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XEnumBcd{F9: B}",
		Target:      XUnionDepth1_XEnumBcd(XUnionDepth1_XEnumBcdF9{}),
		SourceLabel: "XUnionDepth1_XEnumBcd{F9: B}",
		Source:      XUnionDepth1_XEnumBcd(XUnionDepth1_XEnumBcdF9{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XEnumBcd{F9: B}",
		Target:      XUnionDepth1_XEnumBcd(XUnionDepth1_XEnumBcdF9{}),
		SourceLabel: "XUnionDepth1_All{F9: B}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF9{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XEnumBcd{F9: D}",
		Target:      XUnionDepth1_XEnumBcd(XUnionDepth1_XEnumBcdF9{XEnumBcdD}),
		SourceLabel: "XUnionDepth1_XEnumBcd{F9: D}",
		Source:      XUnionDepth1_XEnumBcd(XUnionDepth1_XEnumBcdF9{XEnumBcdD}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XEnumBcd{F9: D}",
		Target:      XUnionDepth1_XEnumBcd(XUnionDepth1_XEnumBcdF9{XEnumBcdD}),
		SourceLabel: "XUnionDepth1_All{F9: D}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF9{XEnumBcdD}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XStructEmpty{F10: {}}",
		Target:      XUnionDepth1_XStructEmpty(XUnionDepth1_XStructEmptyF10{}),
		SourceLabel: "XUnionDepth1_XStructEmpty{F10: {}}",
		Source:      XUnionDepth1_XStructEmpty(XUnionDepth1_XStructEmptyF10{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XStructEmpty{F10: {}}",
		Target:      XUnionDepth1_XStructEmpty(XUnionDepth1_XStructEmptyF10{}),
		SourceLabel: "XUnionDepth1_All{F10: {}}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF10{}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XNamedError{F11: {}}",
		Target:      XUnionDepth1_XNamedError(XUnionDepth1_XNamedErrorF11{}),
		SourceLabel: "XUnionDepth1_XNamedError{F11: {}}",
		Source:      XUnionDepth1_XNamedError(XUnionDepth1_XNamedErrorF11{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XNamedError{F11: {}}",
		Target:      XUnionDepth1_XNamedError(XUnionDepth1_XNamedErrorF11{}),
		SourceLabel: "XUnionDepth1_All{F11: {}}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF11{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XNamedError{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XUnionDepth1_XNamedError(XUnionDepth1_XNamedErrorF11{XNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
		SourceLabel: "XUnionDepth1_XNamedError{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XUnionDepth1_XNamedError(XUnionDepth1_XNamedErrorF11{XNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XNamedError{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XUnionDepth1_XNamedError(XUnionDepth1_XNamedErrorF11{XNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
		SourceLabel: "XUnionDepth1_All{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XUnionDepth1_All(XUnionDepth1_AllF11{XNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XNamedError{F11: {Msg: \"ΘΠΣΦ\"}}",
		Target: XUnionDepth1_XNamedError(XUnionDepth1_XNamedErrorF11{XNamedError{
			Msg: "ΘΠΣΦ",
		}}),
		SourceLabel: "XUnionDepth1_XNamedError{F11: {Msg: \"ΘΠΣΦ\"}}",
		Source: XUnionDepth1_XNamedError(XUnionDepth1_XNamedErrorF11{XNamedError{
			Msg: "ΘΠΣΦ",
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XNamedError{F11: {Msg: \"ΘΠΣΦ\"}}",
		Target: XUnionDepth1_XNamedError(XUnionDepth1_XNamedErrorF11{XNamedError{
			Msg: "ΘΠΣΦ",
		}}),
		SourceLabel: "XUnionDepth1_All{F11: {Msg: \"ΘΠΣΦ\"}}",
		Source: XUnionDepth1_All(XUnionDepth1_AllF11{XNamedError{
			Msg: "ΘΠΣΦ",
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Error{F12: nil}",
		Target:      XUnionDepth1_Error(XUnionDepth1_ErrorF12{}),
		SourceLabel: "XUnionDepth1_Error{F12: nil}",
		Source:      XUnionDepth1_Error(XUnionDepth1_ErrorF12{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Error{F12: nil}",
		Target:      XUnionDepth1_Error(XUnionDepth1_ErrorF12{}),
		SourceLabel: "XUnionDepth1_All{F12: nil}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF12{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Error{F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XUnionDepth1_Error(XUnionDepth1_ErrorF12{verror.FromWire(&vdl.WireError{
			Id:        "abcdeΔΘΠΣΦ王普澤世界",
			RetryCode: vdl.WireRetryCodeRetryBackoff,
			Msg:       "abcdeΔΘΠΣΦ王普澤世界",
		})}),
		SourceLabel: "XUnionDepth1_Error{F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XUnionDepth1_Error(XUnionDepth1_ErrorF12{verror.FromWire(&vdl.WireError{
			Id:        "abcdeΔΘΠΣΦ王普澤世界",
			RetryCode: vdl.WireRetryCodeRetryBackoff,
			Msg:       "abcdeΔΘΠΣΦ王普澤世界",
		})}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Error{F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XUnionDepth1_Error(XUnionDepth1_ErrorF12{verror.FromWire(&vdl.WireError{
			Id:        "abcdeΔΘΠΣΦ王普澤世界",
			RetryCode: vdl.WireRetryCodeRetryBackoff,
			Msg:       "abcdeΔΘΠΣΦ王普澤世界",
		})}),
		SourceLabel: "XUnionDepth1_All{F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XUnionDepth1_All(XUnionDepth1_AllF12{verror.FromWire(&vdl.WireError{
			Id:        "abcdeΔΘΠΣΦ王普澤世界",
			RetryCode: vdl.WireRetryCodeRetryBackoff,
			Msg:       "abcdeΔΘΠΣΦ王普澤世界",
		})}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Error{F12: {Id: \"deΔΘΠΣΦ王\", Msg: \"eΔΘ\"}}",
		Target: XUnionDepth1_Error(XUnionDepth1_ErrorF12{verror.FromWire(&vdl.WireError{
			Id:  "deΔΘΠΣΦ王",
			Msg: "eΔΘ",
		})}),
		SourceLabel: "XUnionDepth1_Error{F12: {Id: \"deΔΘΠΣΦ王\", Msg: \"eΔΘ\"}}",
		Source: XUnionDepth1_Error(XUnionDepth1_ErrorF12{verror.FromWire(&vdl.WireError{
			Id:  "deΔΘΠΣΦ王",
			Msg: "eΔΘ",
		})}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Error{F12: {Id: \"deΔΘΠΣΦ王\", Msg: \"eΔΘ\"}}",
		Target: XUnionDepth1_Error(XUnionDepth1_ErrorF12{verror.FromWire(&vdl.WireError{
			Id:  "deΔΘΠΣΦ王",
			Msg: "eΔΘ",
		})}),
		SourceLabel: "XUnionDepth1_All{F12: {Id: \"deΔΘΠΣΦ王\", Msg: \"eΔΘ\"}}",
		Source: XUnionDepth1_All(XUnionDepth1_AllF12{verror.FromWire(&vdl.WireError{
			Id:  "deΔΘΠΣΦ王",
			Msg: "eΔΘ",
		})}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Uint16{F13: 0}",
		Target:      XUnionDepth1_Uint16(XUnionDepth1_Uint16F13{}),
		SourceLabel: "XUnionDepth1_Uint16{F13: 0}",
		Source:      XUnionDepth1_Uint16(XUnionDepth1_Uint16F13{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Uint16{F13: 0}",
		Target:      XUnionDepth1_Uint16(XUnionDepth1_Uint16F13{}),
		SourceLabel: "XUnionDepth1_All{F13: 0}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF13{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Uint16{F13: 123}",
		Target:      XUnionDepth1_Uint16(XUnionDepth1_Uint16F13{123}),
		SourceLabel: "XUnionDepth1_Uint16{F13: 123}",
		Source:      XUnionDepth1_Uint16(XUnionDepth1_Uint16F13{123}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Uint16{F13: 123}",
		Target:      XUnionDepth1_Uint16(XUnionDepth1_Uint16F13{123}),
		SourceLabel: "XUnionDepth1_All{F13: 123}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF13{123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Uint16{F13: 8576}",
		Target:      XUnionDepth1_Uint16(XUnionDepth1_Uint16F13{8576}),
		SourceLabel: "XUnionDepth1_Uint16{F13: 8576}",
		Source:      XUnionDepth1_Uint16(XUnionDepth1_Uint16F13{8576}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Uint16{F13: 8576}",
		Target:      XUnionDepth1_Uint16(XUnionDepth1_Uint16F13{8576}),
		SourceLabel: "XUnionDepth1_All{F13: 8576}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF13{8576}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XUint16{F14: 0}",
		Target:      XUnionDepth1_XUint16(XUnionDepth1_XUint16F14{}),
		SourceLabel: "XUnionDepth1_XUint16{F14: 0}",
		Source:      XUnionDepth1_XUint16(XUnionDepth1_XUint16F14{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XUint16{F14: 0}",
		Target:      XUnionDepth1_XUint16(XUnionDepth1_XUint16F14{}),
		SourceLabel: "XUnionDepth1_All{F14: 0}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF14{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XUint16{F14: 123}",
		Target:      XUnionDepth1_XUint16(XUnionDepth1_XUint16F14{123}),
		SourceLabel: "XUnionDepth1_XUint16{F14: 123}",
		Source:      XUnionDepth1_XUint16(XUnionDepth1_XUint16F14{123}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XUint16{F14: 123}",
		Target:      XUnionDepth1_XUint16(XUnionDepth1_XUint16F14{123}),
		SourceLabel: "XUnionDepth1_All{F14: 123}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF14{123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XUint16{F14: 3322}",
		Target:      XUnionDepth1_XUint16(XUnionDepth1_XUint16F14{3322}),
		SourceLabel: "XUnionDepth1_XUint16{F14: 3322}",
		Source:      XUnionDepth1_XUint16(XUnionDepth1_XUint16F14{3322}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XUint16{F14: 3322}",
		Target:      XUnionDepth1_XUint16(XUnionDepth1_XUint16F14{3322}),
		SourceLabel: "XUnionDepth1_All{F14: 3322}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF14{3322}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Uint32{F15: 0}",
		Target:      XUnionDepth1_Uint32(XUnionDepth1_Uint32F15{}),
		SourceLabel: "XUnionDepth1_Uint32{F15: 0}",
		Source:      XUnionDepth1_Uint32(XUnionDepth1_Uint32F15{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Uint32{F15: 0}",
		Target:      XUnionDepth1_Uint32(XUnionDepth1_Uint32F15{}),
		SourceLabel: "XUnionDepth1_All{F15: 0}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF15{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Uint32{F15: 123}",
		Target:      XUnionDepth1_Uint32(XUnionDepth1_Uint32F15{123}),
		SourceLabel: "XUnionDepth1_Uint32{F15: 123}",
		Source:      XUnionDepth1_Uint32(XUnionDepth1_Uint32F15{123}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Uint32{F15: 123}",
		Target:      XUnionDepth1_Uint32(XUnionDepth1_Uint32F15{123}),
		SourceLabel: "XUnionDepth1_All{F15: 123}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF15{123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Uint32{F15: 4044022484}",
		Target:      XUnionDepth1_Uint32(XUnionDepth1_Uint32F15{4044022484}),
		SourceLabel: "XUnionDepth1_Uint32{F15: 4044022484}",
		Source:      XUnionDepth1_Uint32(XUnionDepth1_Uint32F15{4044022484}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Uint32{F15: 4044022484}",
		Target:      XUnionDepth1_Uint32(XUnionDepth1_Uint32F15{4044022484}),
		SourceLabel: "XUnionDepth1_All{F15: 4044022484}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF15{4044022484}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XUint32{F16: 0}",
		Target:      XUnionDepth1_XUint32(XUnionDepth1_XUint32F16{}),
		SourceLabel: "XUnionDepth1_XUint32{F16: 0}",
		Source:      XUnionDepth1_XUint32(XUnionDepth1_XUint32F16{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XUint32{F16: 0}",
		Target:      XUnionDepth1_XUint32(XUnionDepth1_XUint32F16{}),
		SourceLabel: "XUnionDepth1_All{F16: 0}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF16{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XUint32{F16: 123}",
		Target:      XUnionDepth1_XUint32(XUnionDepth1_XUint32F16{123}),
		SourceLabel: "XUnionDepth1_XUint32{F16: 123}",
		Source:      XUnionDepth1_XUint32(XUnionDepth1_XUint32F16{123}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XUint32{F16: 123}",
		Target:      XUnionDepth1_XUint32(XUnionDepth1_XUint32F16{123}),
		SourceLabel: "XUnionDepth1_All{F16: 123}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF16{123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XUint32{F16: 2032043449}",
		Target:      XUnionDepth1_XUint32(XUnionDepth1_XUint32F16{2032043449}),
		SourceLabel: "XUnionDepth1_XUint32{F16: 2032043449}",
		Source:      XUnionDepth1_XUint32(XUnionDepth1_XUint32F16{2032043449}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XUint32{F16: 2032043449}",
		Target:      XUnionDepth1_XUint32(XUnionDepth1_XUint32F16{2032043449}),
		SourceLabel: "XUnionDepth1_All{F16: 2032043449}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF16{2032043449}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Uint64{F17: 0}",
		Target:      XUnionDepth1_Uint64(XUnionDepth1_Uint64F17{}),
		SourceLabel: "XUnionDepth1_Uint64{F17: 0}",
		Source:      XUnionDepth1_Uint64(XUnionDepth1_Uint64F17{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Uint64{F17: 0}",
		Target:      XUnionDepth1_Uint64(XUnionDepth1_Uint64F17{}),
		SourceLabel: "XUnionDepth1_All{F17: 0}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF17{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Uint64{F17: 123}",
		Target:      XUnionDepth1_Uint64(XUnionDepth1_Uint64F17{123}),
		SourceLabel: "XUnionDepth1_Uint64{F17: 123}",
		Source:      XUnionDepth1_Uint64(XUnionDepth1_Uint64F17{123}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Uint64{F17: 123}",
		Target:      XUnionDepth1_Uint64(XUnionDepth1_Uint64F17{123}),
		SourceLabel: "XUnionDepth1_All{F17: 123}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF17{123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Uint64{F17: 15489787000916437827}",
		Target:      XUnionDepth1_Uint64(XUnionDepth1_Uint64F17{15489787000916437827}),
		SourceLabel: "XUnionDepth1_Uint64{F17: 15489787000916437827}",
		Source:      XUnionDepth1_Uint64(XUnionDepth1_Uint64F17{15489787000916437827}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Uint64{F17: 15489787000916437827}",
		Target:      XUnionDepth1_Uint64(XUnionDepth1_Uint64F17{15489787000916437827}),
		SourceLabel: "XUnionDepth1_All{F17: 15489787000916437827}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF17{15489787000916437827}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XUint64{F18: 0}",
		Target:      XUnionDepth1_XUint64(XUnionDepth1_XUint64F18{}),
		SourceLabel: "XUnionDepth1_XUint64{F18: 0}",
		Source:      XUnionDepth1_XUint64(XUnionDepth1_XUint64F18{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XUint64{F18: 0}",
		Target:      XUnionDepth1_XUint64(XUnionDepth1_XUint64F18{}),
		SourceLabel: "XUnionDepth1_All{F18: 0}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF18{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XUint64{F18: 123}",
		Target:      XUnionDepth1_XUint64(XUnionDepth1_XUint64F18{123}),
		SourceLabel: "XUnionDepth1_XUint64{F18: 123}",
		Source:      XUnionDepth1_XUint64(XUnionDepth1_XUint64F18{123}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XUint64{F18: 123}",
		Target:      XUnionDepth1_XUint64(XUnionDepth1_XUint64F18{123}),
		SourceLabel: "XUnionDepth1_All{F18: 123}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF18{123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XUint64{F18: 365446184533752905}",
		Target:      XUnionDepth1_XUint64(XUnionDepth1_XUint64F18{365446184533752905}),
		SourceLabel: "XUnionDepth1_XUint64{F18: 365446184533752905}",
		Source:      XUnionDepth1_XUint64(XUnionDepth1_XUint64F18{365446184533752905}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XUint64{F18: 365446184533752905}",
		Target:      XUnionDepth1_XUint64(XUnionDepth1_XUint64F18{365446184533752905}),
		SourceLabel: "XUnionDepth1_All{F18: 365446184533752905}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF18{365446184533752905}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Int8{F19: 0}",
		Target:      XUnionDepth1_Int8(XUnionDepth1_Int8F19{}),
		SourceLabel: "XUnionDepth1_Int8{F19: 0}",
		Source:      XUnionDepth1_Int8(XUnionDepth1_Int8F19{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Int8{F19: 0}",
		Target:      XUnionDepth1_Int8(XUnionDepth1_Int8F19{}),
		SourceLabel: "XUnionDepth1_All{F19: 0}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF19{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Int8{F19: -123}",
		Target:      XUnionDepth1_Int8(XUnionDepth1_Int8F19{-123}),
		SourceLabel: "XUnionDepth1_Int8{F19: -123}",
		Source:      XUnionDepth1_Int8(XUnionDepth1_Int8F19{-123}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Int8{F19: -123}",
		Target:      XUnionDepth1_Int8(XUnionDepth1_Int8F19{-123}),
		SourceLabel: "XUnionDepth1_All{F19: -123}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF19{-123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Int8{F19: -48}",
		Target:      XUnionDepth1_Int8(XUnionDepth1_Int8F19{-48}),
		SourceLabel: "XUnionDepth1_Int8{F19: -48}",
		Source:      XUnionDepth1_Int8(XUnionDepth1_Int8F19{-48}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Int8{F19: -48}",
		Target:      XUnionDepth1_Int8(XUnionDepth1_Int8F19{-48}),
		SourceLabel: "XUnionDepth1_All{F19: -48}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF19{-48}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XInt8{F20: 0}",
		Target:      XUnionDepth1_XInt8(XUnionDepth1_XInt8F20{}),
		SourceLabel: "XUnionDepth1_XInt8{F20: 0}",
		Source:      XUnionDepth1_XInt8(XUnionDepth1_XInt8F20{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XInt8{F20: 0}",
		Target:      XUnionDepth1_XInt8(XUnionDepth1_XInt8F20{}),
		SourceLabel: "XUnionDepth1_All{F20: 0}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF20{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XInt8{F20: -123}",
		Target:      XUnionDepth1_XInt8(XUnionDepth1_XInt8F20{-123}),
		SourceLabel: "XUnionDepth1_XInt8{F20: -123}",
		Source:      XUnionDepth1_XInt8(XUnionDepth1_XInt8F20{-123}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XInt8{F20: -123}",
		Target:      XUnionDepth1_XInt8(XUnionDepth1_XInt8F20{-123}),
		SourceLabel: "XUnionDepth1_All{F20: -123}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF20{-123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XInt8{F20: 34}",
		Target:      XUnionDepth1_XInt8(XUnionDepth1_XInt8F20{34}),
		SourceLabel: "XUnionDepth1_XInt8{F20: 34}",
		Source:      XUnionDepth1_XInt8(XUnionDepth1_XInt8F20{34}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XInt8{F20: 34}",
		Target:      XUnionDepth1_XInt8(XUnionDepth1_XInt8F20{34}),
		SourceLabel: "XUnionDepth1_All{F20: 34}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF20{34}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Int16{F21: 0}",
		Target:      XUnionDepth1_Int16(XUnionDepth1_Int16F21{}),
		SourceLabel: "XUnionDepth1_Int16{F21: 0}",
		Source:      XUnionDepth1_Int16(XUnionDepth1_Int16F21{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Int16{F21: 0}",
		Target:      XUnionDepth1_Int16(XUnionDepth1_Int16F21{}),
		SourceLabel: "XUnionDepth1_All{F21: 0}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF21{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Int16{F21: -123}",
		Target:      XUnionDepth1_Int16(XUnionDepth1_Int16F21{-123}),
		SourceLabel: "XUnionDepth1_Int16{F21: -123}",
		Source:      XUnionDepth1_Int16(XUnionDepth1_Int16F21{-123}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Int16{F21: -123}",
		Target:      XUnionDepth1_Int16(XUnionDepth1_Int16F21{-123}),
		SourceLabel: "XUnionDepth1_All{F21: -123}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF21{-123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Int16{F21: 1423}",
		Target:      XUnionDepth1_Int16(XUnionDepth1_Int16F21{1423}),
		SourceLabel: "XUnionDepth1_Int16{F21: 1423}",
		Source:      XUnionDepth1_Int16(XUnionDepth1_Int16F21{1423}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Int16{F21: 1423}",
		Target:      XUnionDepth1_Int16(XUnionDepth1_Int16F21{1423}),
		SourceLabel: "XUnionDepth1_All{F21: 1423}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF21{1423}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XInt16{F22: 0}",
		Target:      XUnionDepth1_XInt16(XUnionDepth1_XInt16F22{}),
		SourceLabel: "XUnionDepth1_XInt16{F22: 0}",
		Source:      XUnionDepth1_XInt16(XUnionDepth1_XInt16F22{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XInt16{F22: 0}",
		Target:      XUnionDepth1_XInt16(XUnionDepth1_XInt16F22{}),
		SourceLabel: "XUnionDepth1_All{F22: 0}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF22{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XInt16{F22: -123}",
		Target:      XUnionDepth1_XInt16(XUnionDepth1_XInt16F22{-123}),
		SourceLabel: "XUnionDepth1_XInt16{F22: -123}",
		Source:      XUnionDepth1_XInt16(XUnionDepth1_XInt16F22{-123}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XInt16{F22: -123}",
		Target:      XUnionDepth1_XInt16(XUnionDepth1_XInt16F22{-123}),
		SourceLabel: "XUnionDepth1_All{F22: -123}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF22{-123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XInt16{F22: 5537}",
		Target:      XUnionDepth1_XInt16(XUnionDepth1_XInt16F22{5537}),
		SourceLabel: "XUnionDepth1_XInt16{F22: 5537}",
		Source:      XUnionDepth1_XInt16(XUnionDepth1_XInt16F22{5537}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XInt16{F22: 5537}",
		Target:      XUnionDepth1_XInt16(XUnionDepth1_XInt16F22{5537}),
		SourceLabel: "XUnionDepth1_All{F22: 5537}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF22{5537}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Int32{F23: 0}",
		Target:      XUnionDepth1_Int32(XUnionDepth1_Int32F23{}),
		SourceLabel: "XUnionDepth1_Int32{F23: 0}",
		Source:      XUnionDepth1_Int32(XUnionDepth1_Int32F23{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Int32{F23: 0}",
		Target:      XUnionDepth1_Int32(XUnionDepth1_Int32F23{}),
		SourceLabel: "XUnionDepth1_All{F23: 0}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF23{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Int32{F23: -123}",
		Target:      XUnionDepth1_Int32(XUnionDepth1_Int32F23{-123}),
		SourceLabel: "XUnionDepth1_Int32{F23: -123}",
		Source:      XUnionDepth1_Int32(XUnionDepth1_Int32F23{-123}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Int32{F23: -123}",
		Target:      XUnionDepth1_Int32(XUnionDepth1_Int32F23{-123}),
		SourceLabel: "XUnionDepth1_All{F23: -123}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF23{-123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Int32{F23: 619713044}",
		Target:      XUnionDepth1_Int32(XUnionDepth1_Int32F23{619713044}),
		SourceLabel: "XUnionDepth1_Int32{F23: 619713044}",
		Source:      XUnionDepth1_Int32(XUnionDepth1_Int32F23{619713044}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Int32{F23: 619713044}",
		Target:      XUnionDepth1_Int32(XUnionDepth1_Int32F23{619713044}),
		SourceLabel: "XUnionDepth1_All{F23: 619713044}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF23{619713044}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XInt32{F24: 0}",
		Target:      XUnionDepth1_XInt32(XUnionDepth1_XInt32F24{}),
		SourceLabel: "XUnionDepth1_XInt32{F24: 0}",
		Source:      XUnionDepth1_XInt32(XUnionDepth1_XInt32F24{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XInt32{F24: 0}",
		Target:      XUnionDepth1_XInt32(XUnionDepth1_XInt32F24{}),
		SourceLabel: "XUnionDepth1_All{F24: 0}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF24{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XInt32{F24: -123}",
		Target:      XUnionDepth1_XInt32(XUnionDepth1_XInt32F24{-123}),
		SourceLabel: "XUnionDepth1_XInt32{F24: -123}",
		Source:      XUnionDepth1_XInt32(XUnionDepth1_XInt32F24{-123}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XInt32{F24: -123}",
		Target:      XUnionDepth1_XInt32(XUnionDepth1_XInt32F24{-123}),
		SourceLabel: "XUnionDepth1_All{F24: -123}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF24{-123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XInt32{F24: 935002762}",
		Target:      XUnionDepth1_XInt32(XUnionDepth1_XInt32F24{935002762}),
		SourceLabel: "XUnionDepth1_XInt32{F24: 935002762}",
		Source:      XUnionDepth1_XInt32(XUnionDepth1_XInt32F24{935002762}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XInt32{F24: 935002762}",
		Target:      XUnionDepth1_XInt32(XUnionDepth1_XInt32F24{935002762}),
		SourceLabel: "XUnionDepth1_All{F24: 935002762}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF24{935002762}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Int64{F25: 0}",
		Target:      XUnionDepth1_Int64(XUnionDepth1_Int64F25{}),
		SourceLabel: "XUnionDepth1_Int64{F25: 0}",
		Source:      XUnionDepth1_Int64(XUnionDepth1_Int64F25{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Int64{F25: 0}",
		Target:      XUnionDepth1_Int64(XUnionDepth1_Int64F25{}),
		SourceLabel: "XUnionDepth1_All{F25: 0}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF25{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Int64{F25: -123}",
		Target:      XUnionDepth1_Int64(XUnionDepth1_Int64F25{-123}),
		SourceLabel: "XUnionDepth1_Int64{F25: -123}",
		Source:      XUnionDepth1_Int64(XUnionDepth1_Int64F25{-123}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Int64{F25: -123}",
		Target:      XUnionDepth1_Int64(XUnionDepth1_Int64F25{-123}),
		SourceLabel: "XUnionDepth1_All{F25: -123}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF25{-123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Int64{F25: -4236093799481940262}",
		Target:      XUnionDepth1_Int64(XUnionDepth1_Int64F25{-4236093799481940262}),
		SourceLabel: "XUnionDepth1_Int64{F25: -4236093799481940262}",
		Source:      XUnionDepth1_Int64(XUnionDepth1_Int64F25{-4236093799481940262}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Int64{F25: -4236093799481940262}",
		Target:      XUnionDepth1_Int64(XUnionDepth1_Int64F25{-4236093799481940262}),
		SourceLabel: "XUnionDepth1_All{F25: -4236093799481940262}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF25{-4236093799481940262}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XInt64{F26: 0}",
		Target:      XUnionDepth1_XInt64(XUnionDepth1_XInt64F26{}),
		SourceLabel: "XUnionDepth1_XInt64{F26: 0}",
		Source:      XUnionDepth1_XInt64(XUnionDepth1_XInt64F26{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XInt64{F26: 0}",
		Target:      XUnionDepth1_XInt64(XUnionDepth1_XInt64F26{}),
		SourceLabel: "XUnionDepth1_All{F26: 0}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF26{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XInt64{F26: -123}",
		Target:      XUnionDepth1_XInt64(XUnionDepth1_XInt64F26{-123}),
		SourceLabel: "XUnionDepth1_XInt64{F26: -123}",
		Source:      XUnionDepth1_XInt64(XUnionDepth1_XInt64F26{-123}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XInt64{F26: -123}",
		Target:      XUnionDepth1_XInt64(XUnionDepth1_XInt64F26{-123}),
		SourceLabel: "XUnionDepth1_All{F26: -123}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF26{-123}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XInt64{F26: -3261228450527297986}",
		Target:      XUnionDepth1_XInt64(XUnionDepth1_XInt64F26{-3261228450527297986}),
		SourceLabel: "XUnionDepth1_XInt64{F26: -3261228450527297986}",
		Source:      XUnionDepth1_XInt64(XUnionDepth1_XInt64F26{-3261228450527297986}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XInt64{F26: -3261228450527297986}",
		Target:      XUnionDepth1_XInt64(XUnionDepth1_XInt64F26{-3261228450527297986}),
		SourceLabel: "XUnionDepth1_All{F26: -3261228450527297986}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF26{-3261228450527297986}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Float32{F27: 0}",
		Target:      XUnionDepth1_Float32(XUnionDepth1_Float32F27{}),
		SourceLabel: "XUnionDepth1_Float32{F27: 0}",
		Source:      XUnionDepth1_Float32(XUnionDepth1_Float32F27{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Float32{F27: 0}",
		Target:      XUnionDepth1_Float32(XUnionDepth1_Float32F27{}),
		SourceLabel: "XUnionDepth1_All{F27: 0}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF27{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Float32{F27: 1.5}",
		Target:      XUnionDepth1_Float32(XUnionDepth1_Float32F27{1.5}),
		SourceLabel: "XUnionDepth1_Float32{F27: 1.5}",
		Source:      XUnionDepth1_Float32(XUnionDepth1_Float32F27{1.5}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Float32{F27: 1.5}",
		Target:      XUnionDepth1_Float32(XUnionDepth1_Float32F27{1.5}),
		SourceLabel: "XUnionDepth1_All{F27: 1.5}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF27{1.5}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Float32{F27: -3.361987e+09}",
		Target:      XUnionDepth1_Float32(XUnionDepth1_Float32F27{-3.361987e+09}),
		SourceLabel: "XUnionDepth1_Float32{F27: -3.361987e+09}",
		Source:      XUnionDepth1_Float32(XUnionDepth1_Float32F27{-3.361987e+09}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Float32{F27: -3.361987e+09}",
		Target:      XUnionDepth1_Float32(XUnionDepth1_Float32F27{-3.361987e+09}),
		SourceLabel: "XUnionDepth1_All{F27: -3.361987e+09}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF27{-3.361987e+09}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XFloat32{F28: 0}",
		Target:      XUnionDepth1_XFloat32(XUnionDepth1_XFloat32F28{}),
		SourceLabel: "XUnionDepth1_XFloat32{F28: 0}",
		Source:      XUnionDepth1_XFloat32(XUnionDepth1_XFloat32F28{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XFloat32{F28: 0}",
		Target:      XUnionDepth1_XFloat32(XUnionDepth1_XFloat32F28{}),
		SourceLabel: "XUnionDepth1_All{F28: 0}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF28{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XFloat32{F28: 1.5}",
		Target:      XUnionDepth1_XFloat32(XUnionDepth1_XFloat32F28{1.5}),
		SourceLabel: "XUnionDepth1_XFloat32{F28: 1.5}",
		Source:      XUnionDepth1_XFloat32(XUnionDepth1_XFloat32F28{1.5}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XFloat32{F28: 1.5}",
		Target:      XUnionDepth1_XFloat32(XUnionDepth1_XFloat32F28{1.5}),
		SourceLabel: "XUnionDepth1_All{F28: 1.5}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF28{1.5}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XFloat32{F28: -6.4752954e+08}",
		Target:      XUnionDepth1_XFloat32(XUnionDepth1_XFloat32F28{-6.4752954e+08}),
		SourceLabel: "XUnionDepth1_XFloat32{F28: -6.4752954e+08}",
		Source:      XUnionDepth1_XFloat32(XUnionDepth1_XFloat32F28{-6.4752954e+08}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XFloat32{F28: -6.4752954e+08}",
		Target:      XUnionDepth1_XFloat32(XUnionDepth1_XFloat32F28{-6.4752954e+08}),
		SourceLabel: "XUnionDepth1_All{F28: -6.4752954e+08}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF28{-6.4752954e+08}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Float64{F29: 0}",
		Target:      XUnionDepth1_Float64(XUnionDepth1_Float64F29{}),
		SourceLabel: "XUnionDepth1_Float64{F29: 0}",
		Source:      XUnionDepth1_Float64(XUnionDepth1_Float64F29{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_Float64{F29: 0}",
		Target:      XUnionDepth1_Float64(XUnionDepth1_Float64F29{}),
		SourceLabel: "XUnionDepth1_All{F29: 0}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF29{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Float64{F29: 1.5}",
		Target:      XUnionDepth1_Float64(XUnionDepth1_Float64F29{1.5}),
		SourceLabel: "XUnionDepth1_Float64{F29: 1.5}",
		Source:      XUnionDepth1_Float64(XUnionDepth1_Float64F29{1.5}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_Float64{F29: 1.5}",
		Target:      XUnionDepth1_Float64(XUnionDepth1_Float64F29{1.5}),
		SourceLabel: "XUnionDepth1_All{F29: 1.5}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF29{1.5}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Float64{F29: 1.1618464643248394e+09}",
		Target:      XUnionDepth1_Float64(XUnionDepth1_Float64F29{1.1618464643248394e+09}),
		SourceLabel: "XUnionDepth1_Float64{F29: 1.1618464643248394e+09}",
		Source:      XUnionDepth1_Float64(XUnionDepth1_Float64F29{1.1618464643248394e+09}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_Float64{F29: 1.1618464643248394e+09}",
		Target:      XUnionDepth1_Float64(XUnionDepth1_Float64F29{1.1618464643248394e+09}),
		SourceLabel: "XUnionDepth1_All{F29: 1.1618464643248394e+09}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF29{1.1618464643248394e+09}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XFloat64{F30: 0}",
		Target:      XUnionDepth1_XFloat64(XUnionDepth1_XFloat64F30{}),
		SourceLabel: "XUnionDepth1_XFloat64{F30: 0}",
		Source:      XUnionDepth1_XFloat64(XUnionDepth1_XFloat64F30{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_XFloat64{F30: 0}",
		Target:      XUnionDepth1_XFloat64(XUnionDepth1_XFloat64F30{}),
		SourceLabel: "XUnionDepth1_All{F30: 0}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF30{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XFloat64{F30: 1.5}",
		Target:      XUnionDepth1_XFloat64(XUnionDepth1_XFloat64F30{1.5}),
		SourceLabel: "XUnionDepth1_XFloat64{F30: 1.5}",
		Source:      XUnionDepth1_XFloat64(XUnionDepth1_XFloat64F30{1.5}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_XFloat64{F30: 1.5}",
		Target:      XUnionDepth1_XFloat64(XUnionDepth1_XFloat64F30{1.5}),
		SourceLabel: "XUnionDepth1_All{F30: 1.5}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF30{1.5}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XFloat64{F30: -1.4789866739446236e+07}",
		Target:      XUnionDepth1_XFloat64(XUnionDepth1_XFloat64F30{-1.4789866739446236e+07}),
		SourceLabel: "XUnionDepth1_XFloat64{F30: -1.4789866739446236e+07}",
		Source:      XUnionDepth1_XFloat64(XUnionDepth1_XFloat64F30{-1.4789866739446236e+07}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_XFloat64{F30: -1.4789866739446236e+07}",
		Target:      XUnionDepth1_XFloat64(XUnionDepth1_XFloat64F30{-1.4789866739446236e+07}),
		SourceLabel: "XUnionDepth1_All{F30: -1.4789866739446236e+07}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF30{-1.4789866739446236e+07}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_OptXStructEmpty{F31: nil}",
		Target:      XUnionDepth1_OptXStructEmpty(XUnionDepth1_OptXStructEmptyF31{}),
		SourceLabel: "XUnionDepth1_OptXStructEmpty{F31: nil}",
		Source:      XUnionDepth1_OptXStructEmpty(XUnionDepth1_OptXStructEmptyF31{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_OptXStructEmpty{F31: nil}",
		Target:      XUnionDepth1_OptXStructEmpty(XUnionDepth1_OptXStructEmptyF31{}),
		SourceLabel: "XUnionDepth1_All{F31: nil}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF31{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_OptXStructEmpty{F31: {}}",
		Target:      XUnionDepth1_OptXStructEmpty(XUnionDepth1_OptXStructEmptyF31{&XStructEmpty{}}),
		SourceLabel: "XUnionDepth1_OptXStructEmpty{F31: {}}",
		Source:      XUnionDepth1_OptXStructEmpty(XUnionDepth1_OptXStructEmptyF31{&XStructEmpty{}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_OptXStructEmpty{F31: {}}",
		Target:      XUnionDepth1_OptXStructEmpty(XUnionDepth1_OptXStructEmptyF31{&XStructEmpty{}}),
		SourceLabel: "XUnionDepth1_All{F31: {}}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF31{&XStructEmpty{}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_OptXNamedError{F32: nil}",
		Target:      XUnionDepth1_OptXNamedError(XUnionDepth1_OptXNamedErrorF32{}),
		SourceLabel: "XUnionDepth1_OptXNamedError{F32: nil}",
		Source:      XUnionDepth1_OptXNamedError(XUnionDepth1_OptXNamedErrorF32{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth1_OptXNamedError{F32: nil}",
		Target:      XUnionDepth1_OptXNamedError(XUnionDepth1_OptXNamedErrorF32{}),
		SourceLabel: "XUnionDepth1_All{F32: nil}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF32{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth1_OptXNamedError{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XUnionDepth1_OptXNamedError(XUnionDepth1_OptXNamedErrorF32{&XNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
		SourceLabel: "XUnionDepth1_OptXNamedError{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XUnionDepth1_OptXNamedError(XUnionDepth1_OptXNamedErrorF32{&XNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth1_OptXNamedError{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XUnionDepth1_OptXNamedError(XUnionDepth1_OptXNamedErrorF32{&XNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
		SourceLabel: "XUnionDepth1_All{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XUnionDepth1_All(XUnionDepth1_AllF32{&XNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_OptXNamedError{F32: {Id: \"b\", Msg: \"b\"}}",
		Target: XUnionDepth1_OptXNamedError(XUnionDepth1_OptXNamedErrorF32{&XNamedError{
			Id:  "b",
			Msg: "b",
		}}),
		SourceLabel: "XUnionDepth1_OptXNamedError{F32: {Id: \"b\", Msg: \"b\"}}",
		Source: XUnionDepth1_OptXNamedError(XUnionDepth1_OptXNamedErrorF32{&XNamedError{
			Id:  "b",
			Msg: "b",
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth1_OptXNamedError{F32: {Id: \"b\", Msg: \"b\"}}",
		Target: XUnionDepth1_OptXNamedError(XUnionDepth1_OptXNamedErrorF32{&XNamedError{
			Id:  "b",
			Msg: "b",
		}}),
		SourceLabel: "XUnionDepth1_All{F32: {Id: \"b\", Msg: \"b\"}}",
		Source: XUnionDepth1_All(XUnionDepth1_AllF32{&XNamedError{
			Id:  "b",
			Msg: "b",
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "?XStructDepth1_XEnumBcd(nil)",
		Target:      (*XStructDepth1_XEnumBcd)(nil),
		SourceLabel: "?XStructDepth1_XEnumBcd(nil)",
		Source:      (*XStructDepth1_XEnumBcd)(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "?XStructDepth1_XEnumBcd(nil)",
		Target:      (*XStructDepth1_XEnumBcd)(nil),
		SourceLabel: "?XStructEmpty(nil)",
		Source:      (*XStructEmpty)(nil),
	},
	{
		Label:       "NilAny",
		TargetLabel: "?XStructDepth1_XEnumBcd(nil)",
		Target:      (*XStructDepth1_XEnumBcd)(nil),
		SourceLabel: "any(nil)",
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "?XStructDepth1_XEnumBcd{F9: D}",
		Target: &XStructDepth1_XEnumBcd{
			F9: XEnumBcdD,
		},
		SourceLabel: "?XStructDepth1_XEnumBcd{F9: D}",
		Source: &XStructDepth1_XEnumBcd{
			F9: XEnumBcdD,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "?XStructDepth1_XEnumBcd{F9: D}",
		Target: &XStructDepth1_XEnumBcd{
			F9: XEnumBcdD,
		},
		SourceLabel: "XStructDepth1_XEnumBcd{F9: D}",
		Source: XStructDepth1_XEnumBcd{
			F9: XEnumBcdD,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "?XStructDepth1_XUint16(nil)",
		Target:      (*XStructDepth1_XUint16)(nil),
		SourceLabel: "?XStructDepth1_XUint16(nil)",
		Source:      (*XStructDepth1_XUint16)(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "?XStructDepth1_XUint16(nil)",
		Target:      (*XStructDepth1_XUint16)(nil),
		SourceLabel: "?XStructEmpty(nil)",
		Source:      (*XStructEmpty)(nil),
	},
	{
		Label:       "NilAny",
		TargetLabel: "?XStructDepth1_XUint16(nil)",
		Target:      (*XStructDepth1_XUint16)(nil),
		SourceLabel: "any(nil)",
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "?XStructDepth1_XUint16{F14: 123}",
		Target: &XStructDepth1_XUint16{
			F14: 123,
		},
		SourceLabel: "?XStructDepth1_XUint16{F14: 123}",
		Source: &XStructDepth1_XUint16{
			F14: 123,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "?XStructDepth1_XUint16{F14: 123}",
		Target: &XStructDepth1_XUint16{
			F14: 123,
		},
		SourceLabel: "XStructDepth1_All{F14: 123}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F14: 123,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "?XStructDepth1_XUint16{F14: 57522}",
		Target: &XStructDepth1_XUint16{
			F14: 57522,
		},
		SourceLabel: "?XStructDepth1_XUint16{F14: 57522}",
		Source: &XStructDepth1_XUint16{
			F14: 57522,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "?XStructDepth1_XUint16{F14: 57522}",
		Target: &XStructDepth1_XUint16{
			F14: 57522,
		},
		SourceLabel: "XStructDepth1_XUint16{F14: 57522}",
		Source: XStructDepth1_XUint16{
			F14: 57522,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "?XStructDepth1_XFloat32(nil)",
		Target:      (*XStructDepth1_XFloat32)(nil),
		SourceLabel: "?XStructDepth1_XFloat32(nil)",
		Source:      (*XStructDepth1_XFloat32)(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "?XStructDepth1_XFloat32(nil)",
		Target:      (*XStructDepth1_XFloat32)(nil),
		SourceLabel: "?XStructEmpty(nil)",
		Source:      (*XStructEmpty)(nil),
	},
	{
		Label:       "NilAny",
		TargetLabel: "?XStructDepth1_XFloat32(nil)",
		Target:      (*XStructDepth1_XFloat32)(nil),
		SourceLabel: "any(nil)",
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "?XStructDepth1_XFloat32{F28: 1.5}",
		Target: &XStructDepth1_XFloat32{
			F28: 1.5,
		},
		SourceLabel: "?XStructDepth1_XFloat32{F28: 1.5}",
		Source: &XStructDepth1_XFloat32{
			F28: 1.5,
		},
	},
	{
		Label:       "Full",
		TargetLabel: "?XStructDepth1_XFloat32{F28: 1.5}",
		Target: &XStructDepth1_XFloat32{
			F28: 1.5,
		},
		SourceLabel: "XStructDepth1_All{F28: 1.5}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F28: 1.5,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "?XStructDepth1_XFloat32{F28: -7.4435264e+08}",
		Target: &XStructDepth1_XFloat32{
			F28: -7.4435264e+08,
		},
		SourceLabel: "?XStructDepth1_XFloat32{F28: -7.4435264e+08}",
		Source: &XStructDepth1_XFloat32{
			F28: -7.4435264e+08,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "?XStructDepth1_XFloat32{F28: -7.4435264e+08}",
		Target: &XStructDepth1_XFloat32{
			F28: -7.4435264e+08,
		},
		SourceLabel: "XStructDepth1_All{F28: -7.4435264e+08}",
		Source: XStructDepth1_All{
			F5:  vdl.AnyType,
			F28: -7.4435264e+08,
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray1_XArray3_Int64{}",
		Target:      XArray1_XArray3_Int64{},
		SourceLabel: "XArray1_XArray3_Int64{}",
		Source:      XArray1_XArray3_Int64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray1_XArray3_Int64{}",
		Target:      XArray1_XArray3_Int64{},
		SourceLabel: "XList_Any{XArray3_Int64{}}",
		Source: XList_Any{
			XArray3_Int64{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray1_XArray3_Int64{}",
		Target:      XArray1_XArray3_Int64{},
		SourceLabel: "XArray1_XList_Byte{\"\\x00\\x00\\x00\"}",
		Source: XArray1_XList_Byte{
			XList_Byte("\x00\x00\x00"),
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray1_XArray3_Int64{{-123, -123, -123}}",
		Target: XArray1_XArray3_Int64{
			{
				-123,
				-123,
				-123,
			},
		},
		SourceLabel: "XArray1_XArray3_Int64{{-123, -123, -123}}",
		Source: XArray1_XArray3_Int64{
			{
				-123,
				-123,
				-123,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray1_XArray3_Int64{{-123, -123, -123}}",
		Target: XArray1_XArray3_Int64{
			{
				-123,
				-123,
				-123,
			},
		},
		SourceLabel: "XList_Any{XArray3_Int64{-123, -123, -123}}",
		Source: XList_Any{
			XArray3_Int64{
				-123,
				-123,
				-123,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray1_XArray3_Int64{{-3686869165814900559, 1784163261950056694, 59033720765951778}}",
		Target: XArray1_XArray3_Int64{
			{
				-3686869165814900559,
				1784163261950056694,
				59033720765951778,
			},
		},
		SourceLabel: "XArray1_XArray3_Int64{{-3686869165814900559, 1784163261950056694, 59033720765951778}}",
		Source: XArray1_XArray3_Int64{
			{
				-3686869165814900559,
				1784163261950056694,
				59033720765951778,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray1_XArray3_Int64{{-3686869165814900559, 1784163261950056694, 59033720765951778}}",
		Target: XArray1_XArray3_Int64{
			{
				-3686869165814900559,
				1784163261950056694,
				59033720765951778,
			},
		},
		SourceLabel: "XList_Any{XArray3_Int64{-3686869165814900559, 1784163261950056694, 59033720765951778}}",
		Source: XList_Any{
			XArray3_Int64{
				-3686869165814900559,
				1784163261950056694,
				59033720765951778,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray1_XList_Byte{}",
		Target:      XArray1_XList_Byte{},
		SourceLabel: "XArray1_XList_Byte{}",
		Source:      XArray1_XList_Byte{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray1_XList_Byte{}",
		Target:      XArray1_XList_Byte{},
		SourceLabel: "XList_Any{XList_Byte(\"\")}",
		Source: XList_Any{
			XList_Byte(nil),
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray1_XList_Byte{}",
		Target:      XArray1_XList_Byte{},
		SourceLabel: "[]any{XList_Byte(\"\")}",
		Source: []interface{}{
			XList_Byte(nil),
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray1_XList_Byte{\"{\"}",
		Target: XArray1_XList_Byte{
			XList_Byte("{"),
		},
		SourceLabel: "XArray1_XList_Byte{\"{\"}",
		Source: XArray1_XList_Byte{
			XList_Byte("{"),
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray1_XList_Byte{\"{\"}",
		Target: XArray1_XList_Byte{
			XList_Byte("{"),
		},
		SourceLabel: "[]any{XList_Byte(\"{\")}",
		Source: []interface{}{
			XList_Byte("{"),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray1_XList_Byte{\"\\x00\"}",
		Target: XArray1_XList_Byte{
			XList_Byte("\x00"),
		},
		SourceLabel: "XArray1_XList_Byte{\"\\x00\"}",
		Source: XArray1_XList_Byte{
			XList_Byte("\x00"),
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray1_XList_Byte{\"\\x00\"}",
		Target: XArray1_XList_Byte{
			XList_Byte("\x00"),
		},
		SourceLabel: "[]any{XList_Byte(\"\\x00\")}",
		Source: []interface{}{
			XList_Byte("\x00"),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray1_Set_XEnumBcd{}",
		Target:      XArray1_Set_XEnumBcd{},
		SourceLabel: "XArray1_Set_XEnumBcd{}",
		Source:      XArray1_Set_XEnumBcd{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray1_Set_XEnumBcd{}",
		Target:      XArray1_Set_XEnumBcd{},
		SourceLabel: "[]set[XEnumAbc]{{}}",
		Source: []map[XEnumAbc]struct{}{
			nil,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray1_Set_XEnumBcd{}",
		Target:      XArray1_Set_XEnumBcd{},
		SourceLabel: "XList_Any{set[XEnumBcd]{}}",
		Source: XList_Any{
			map[XEnumBcd]struct{}(nil),
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray1_Set_XEnumBcd{{D}}",
		Target: XArray1_Set_XEnumBcd{
			{
				XEnumBcdD: struct{}{},
			},
		},
		SourceLabel: "XArray1_Set_XEnumBcd{{D}}",
		Source: XArray1_Set_XEnumBcd{
			{
				XEnumBcdD: struct{}{},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray1_Set_XEnumBcd{{D}}",
		Target: XArray1_Set_XEnumBcd{
			{
				XEnumBcdD: struct{}{},
			},
		},
		SourceLabel: "XList_Any{set[XEnumBcd]{D}}",
		Source: XList_Any{
			map[XEnumBcd]struct{}{
				XEnumBcdD: struct{}{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray2_Map_Byte_Byte{}",
		Target:      XArray2_Map_Byte_Byte{},
		SourceLabel: "XArray2_Map_Byte_Byte{}",
		Source:      XArray2_Map_Byte_Byte{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray2_Map_Byte_Byte{}",
		Target:      XArray2_Map_Byte_Byte{},
		SourceLabel: "[]XMap_XByte_XByte{{}, {}}",
		Source: []XMap_XByte_XByte{
			nil,
			nil,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray2_Map_Byte_Byte{}",
		Target:      XArray2_Map_Byte_Byte{},
		SourceLabel: "XList_XMap_Byte_Byte{{}, {}}",
		Source: XList_XMap_Byte_Byte{
			nil,
			nil,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray2_Map_Byte_Byte{{123: 123}, {123: 123}}",
		Target: XArray2_Map_Byte_Byte{
			{
				123: 123,
			},
			{
				123: 123,
			},
		},
		SourceLabel: "XArray2_Map_Byte_Byte{{123: 123}, {123: 123}}",
		Source: XArray2_Map_Byte_Byte{
			{
				123: 123,
			},
			{
				123: 123,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray2_Map_Byte_Byte{{123: 123}, {123: 123}}",
		Target: XArray2_Map_Byte_Byte{
			{
				123: 123,
			},
			{
				123: 123,
			},
		},
		SourceLabel: "XList_XMap_Byte_Byte{{123: 123}, {123: 123}}",
		Source: XList_XMap_Byte_Byte{
			{
				123: 123,
			},
			{
				123: 123,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray2_Map_Byte_Byte{{226: 49}, {207: 253}}",
		Target: XArray2_Map_Byte_Byte{
			{
				226: 49,
			},
			{
				207: 253,
			},
		},
		SourceLabel: "XArray2_Map_Byte_Byte{{226: 49}, {207: 253}}",
		Source: XArray2_Map_Byte_Byte{
			{
				226: 49,
			},
			{
				207: 253,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray2_Map_Byte_Byte{{226: 49}, {207: 253}}",
		Target: XArray2_Map_Byte_Byte{
			{
				226: 49,
			},
			{
				207: 253,
			},
		},
		SourceLabel: "[]XMap_XByte_XByte{{226: 49}, {207: 253}}",
		Source: []XMap_XByte_XByte{
			{
				226: 49,
			},
			{
				207: 253,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray2_XStructDepth1_All{}",
		Target: XArray2_XStructDepth1_All{
			{
				F5: vdl.AnyType,
			},
			{
				F5: vdl.AnyType,
			},
		},
		SourceLabel: "XArray2_XStructDepth1_All{}",
		Source: XArray2_XStructDepth1_All{
			{
				F5: vdl.AnyType,
			},
			{
				F5: vdl.AnyType,
			},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray2_XStructDepth1_All{}",
		Target: XArray2_XStructDepth1_All{
			{
				F5: vdl.AnyType,
			},
			{
				F5: vdl.AnyType,
			},
		},
		SourceLabel: "XList_XStructEmpty{{}, {}}",
		Source: XList_XStructEmpty{
			{},
			{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray2_XStructDepth1_All{}",
		Target: XArray2_XStructDepth1_All{
			{
				F5: vdl.AnyType,
			},
			{
				F5: vdl.AnyType,
			},
		},
		SourceLabel: "XList_XStructDepth1_All{{}, {}}",
		Source: XList_XStructDepth1_All{
			{
				F5: vdl.AnyType,
			},
			{
				F5: vdl.AnyType,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray2_XStructDepth1_All{{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XArray2_XStructDepth1_All{
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
		SourceLabel: "XArray2_XStructDepth1_All{{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XArray2_XStructDepth1_All{
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray2_XStructDepth1_All{{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XArray2_XStructDepth1_All{
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
		SourceLabel: "XList_Any{XStructDepth1_All{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, XStructDepth1_All{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XList_Any{
			XStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
			XStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray2_XStructDepth1_All{{F0: XUnionDepth1_Int8{F19: -62}, F1: true, F3: \"世\", F4: \"deΔ\", F5: typeobject(XUint16), F6: 143, F7: 188, F8: C, F11: {Id: \"王\", Msg: \"de\"}, F13: 23073, F15: 3211786920, F16: 4055101316, F18: 2330407595319300152, F19: 59, F20: 32, F22: 8034, F23: -351103322, F25: -4503741137733196850, F26: 924768865288423865, F27: -7.7118104e+07, F29: -1.1185637133852577e+09, F31: {}, F32: {Id: \"ΠΣ\", Msg: \"abc\"}}, {F0: XStructDepth1_XNamedError{F11: {Id: \"bcdeΔΘΠΣΦ王普澤\", Msg: \"c\"}}, F1: true, F3: \"bcdeΔΘΠΣΦ王普澤世界\", F4: \"ΠΣΦ王\", F5: typeobject(XList_XMap_Byte_Byte), F6: 86, F8: B, F9: D, F12: {Id: \"d\", RetryCode: RetryConnection, Msg: \"Φ王\"}, F13: 65505, F14: 21372, F15: 1512699580, F16: 2069621953, F17: 18415744568491267796, F18: 3693349276499043179, F19: -53, F22: -14420, F25: 1205935434964997754, F27: 1.1920091e+09, F28: -1.9556054e+09, F30: 1.254703076891001e+09, F31: {}, F32: {Id: \"eΔΘΠΣΦ王\", Msg: \"deΔΘΠΣΦ王普澤世\"}}}",
		Target: XArray2_XStructDepth1_All{
			{
				F0: XUnionDepth1_Int8(XUnionDepth1_Int8F19{-62}),
				F1: true,
				F3: "世",
				F4: "deΔ",
				F5: __VDLType_uint16_298,
				F6: 143,
				F7: 188,
				F8: XEnumAbcC,
				F11: XNamedError{
					Id:  "王",
					Msg: "de",
				},
				F13: 23073,
				F15: 3211786920,
				F16: 4055101316,
				F18: 2330407595319300152,
				F19: 59,
				F20: 32,
				F22: 8034,
				F23: -351103322,
				F25: -4503741137733196850,
				F26: 924768865288423865,
				F27: -7.7118104e+07,
				F29: -1.1185637133852577e+09,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "ΠΣ",
					Msg: "abc",
				},
			},
			{
				F0: XStructDepth1_XNamedError{
					F11: XNamedError{
						Id:  "bcdeΔΘΠΣΦ王普澤",
						Msg: "c",
					},
				},
				F1: true,
				F3: "bcdeΔΘΠΣΦ王普澤世界",
				F4: "ΠΣΦ王",
				F5: __VDLType_list_299,
				F6: 86,
				F8: XEnumAbcB,
				F9: XEnumBcdD,
				F12: verror.FromWire(&vdl.WireError{
					Id:        "d",
					RetryCode: vdl.WireRetryCodeRetryConnection,
					Msg:       "Φ王",
				}),
				F13: 65505,
				F14: 21372,
				F15: 1512699580,
				F16: 2069621953,
				F17: 18415744568491267796,
				F18: 3693349276499043179,
				F19: -53,
				F22: -14420,
				F25: 1205935434964997754,
				F27: 1.1920091e+09,
				F28: -1.9556054e+09,
				F30: 1.254703076891001e+09,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "eΔΘΠΣΦ王",
					Msg: "deΔΘΠΣΦ王普澤世",
				},
			},
		},
		SourceLabel: "XArray2_XStructDepth1_All{{F0: XUnionDepth1_Int8{F19: -62}, F1: true, F3: \"世\", F4: \"deΔ\", F5: typeobject(XUint16), F6: 143, F7: 188, F8: C, F11: {Id: \"王\", Msg: \"de\"}, F13: 23073, F15: 3211786920, F16: 4055101316, F18: 2330407595319300152, F19: 59, F20: 32, F22: 8034, F23: -351103322, F25: -4503741137733196850, F26: 924768865288423865, F27: -7.7118104e+07, F29: -1.1185637133852577e+09, F31: {}, F32: {Id: \"ΠΣ\", Msg: \"abc\"}}, {F0: XStructDepth1_XNamedError{F11: {Id: \"bcdeΔΘΠΣΦ王普澤\", Msg: \"c\"}}, F1: true, F3: \"bcdeΔΘΠΣΦ王普澤世界\", F4: \"ΠΣΦ王\", F5: typeobject(XList_XMap_Byte_Byte), F6: 86, F8: B, F9: D, F12: {Id: \"d\", RetryCode: RetryConnection, Msg: \"Φ王\"}, F13: 65505, F14: 21372, F15: 1512699580, F16: 2069621953, F17: 18415744568491267796, F18: 3693349276499043179, F19: -53, F22: -14420, F25: 1205935434964997754, F27: 1.1920091e+09, F28: -1.9556054e+09, F30: 1.254703076891001e+09, F31: {}, F32: {Id: \"eΔΘΠΣΦ王\", Msg: \"deΔΘΠΣΦ王普澤世\"}}}",
		Source: XArray2_XStructDepth1_All{
			{
				F0: XUnionDepth1_Int8(XUnionDepth1_Int8F19{-62}),
				F1: true,
				F3: "世",
				F4: "deΔ",
				F5: __VDLType_uint16_298,
				F6: 143,
				F7: 188,
				F8: XEnumAbcC,
				F11: XNamedError{
					Id:  "王",
					Msg: "de",
				},
				F13: 23073,
				F15: 3211786920,
				F16: 4055101316,
				F18: 2330407595319300152,
				F19: 59,
				F20: 32,
				F22: 8034,
				F23: -351103322,
				F25: -4503741137733196850,
				F26: 924768865288423865,
				F27: -7.7118104e+07,
				F29: -1.1185637133852577e+09,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "ΠΣ",
					Msg: "abc",
				},
			},
			{
				F0: XStructDepth1_XNamedError{
					F11: XNamedError{
						Id:  "bcdeΔΘΠΣΦ王普澤",
						Msg: "c",
					},
				},
				F1: true,
				F3: "bcdeΔΘΠΣΦ王普澤世界",
				F4: "ΠΣΦ王",
				F5: __VDLType_list_299,
				F6: 86,
				F8: XEnumAbcB,
				F9: XEnumBcdD,
				F12: verror.FromWire(&vdl.WireError{
					Id:        "d",
					RetryCode: vdl.WireRetryCodeRetryConnection,
					Msg:       "Φ王",
				}),
				F13: 65505,
				F14: 21372,
				F15: 1512699580,
				F16: 2069621953,
				F17: 18415744568491267796,
				F18: 3693349276499043179,
				F19: -53,
				F22: -14420,
				F25: 1205935434964997754,
				F27: 1.1920091e+09,
				F28: -1.9556054e+09,
				F30: 1.254703076891001e+09,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "eΔΘΠΣΦ王",
					Msg: "deΔΘΠΣΦ王普澤世",
				},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray2_XStructDepth1_All{{F0: XUnionDepth1_Int8{F19: -62}, F1: true, F3: \"世\", F4: \"deΔ\", F5: typeobject(XUint16), F6: 143, F7: 188, F8: C, F11: {Id: \"王\", Msg: \"de\"}, F13: 23073, F15: 3211786920, F16: 4055101316, F18: 2330407595319300152, F19: 59, F20: 32, F22: 8034, F23: -351103322, F25: -4503741137733196850, F26: 924768865288423865, F27: -7.7118104e+07, F29: -1.1185637133852577e+09, F31: {}, F32: {Id: \"ΠΣ\", Msg: \"abc\"}}, {F0: XStructDepth1_XNamedError{F11: {Id: \"bcdeΔΘΠΣΦ王普澤\", Msg: \"c\"}}, F1: true, F3: \"bcdeΔΘΠΣΦ王普澤世界\", F4: \"ΠΣΦ王\", F5: typeobject(XList_XMap_Byte_Byte), F6: 86, F8: B, F9: D, F12: {Id: \"d\", RetryCode: RetryConnection, Msg: \"Φ王\"}, F13: 65505, F14: 21372, F15: 1512699580, F16: 2069621953, F17: 18415744568491267796, F18: 3693349276499043179, F19: -53, F22: -14420, F25: 1205935434964997754, F27: 1.1920091e+09, F28: -1.9556054e+09, F30: 1.254703076891001e+09, F31: {}, F32: {Id: \"eΔΘΠΣΦ王\", Msg: \"deΔΘΠΣΦ王普澤世\"}}}",
		Target: XArray2_XStructDepth1_All{
			{
				F0: XUnionDepth1_Int8(XUnionDepth1_Int8F19{-62}),
				F1: true,
				F3: "世",
				F4: "deΔ",
				F5: __VDLType_uint16_298,
				F6: 143,
				F7: 188,
				F8: XEnumAbcC,
				F11: XNamedError{
					Id:  "王",
					Msg: "de",
				},
				F13: 23073,
				F15: 3211786920,
				F16: 4055101316,
				F18: 2330407595319300152,
				F19: 59,
				F20: 32,
				F22: 8034,
				F23: -351103322,
				F25: -4503741137733196850,
				F26: 924768865288423865,
				F27: -7.7118104e+07,
				F29: -1.1185637133852577e+09,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "ΠΣ",
					Msg: "abc",
				},
			},
			{
				F0: XStructDepth1_XNamedError{
					F11: XNamedError{
						Id:  "bcdeΔΘΠΣΦ王普澤",
						Msg: "c",
					},
				},
				F1: true,
				F3: "bcdeΔΘΠΣΦ王普澤世界",
				F4: "ΠΣΦ王",
				F5: __VDLType_list_299,
				F6: 86,
				F8: XEnumAbcB,
				F9: XEnumBcdD,
				F12: verror.FromWire(&vdl.WireError{
					Id:        "d",
					RetryCode: vdl.WireRetryCodeRetryConnection,
					Msg:       "Φ王",
				}),
				F13: 65505,
				F14: 21372,
				F15: 1512699580,
				F16: 2069621953,
				F17: 18415744568491267796,
				F18: 3693349276499043179,
				F19: -53,
				F22: -14420,
				F25: 1205935434964997754,
				F27: 1.1920091e+09,
				F28: -1.9556054e+09,
				F30: 1.254703076891001e+09,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "eΔΘΠΣΦ王",
					Msg: "deΔΘΠΣΦ王普澤世",
				},
			},
		},
		SourceLabel: "[]any{XStructDepth1_All{F0: XUnionDepth1_Int8{F19: -62}, F1: true, F3: \"世\", F4: \"deΔ\", F5: typeobject(XUint16), F6: 143, F7: 188, F8: C, F11: {Id: \"王\", Msg: \"de\"}, F13: 23073, F15: 3211786920, F16: 4055101316, F18: 2330407595319300152, F19: 59, F20: 32, F22: 8034, F23: -351103322, F25: -4503741137733196850, F26: 924768865288423865, F27: -7.7118104e+07, F29: -1.1185637133852577e+09, F31: {}, F32: {Id: \"ΠΣ\", Msg: \"abc\"}}, XStructDepth1_All{F0: XStructDepth1_XNamedError{F11: {Id: \"bcdeΔΘΠΣΦ王普澤\", Msg: \"c\"}}, F1: true, F3: \"bcdeΔΘΠΣΦ王普澤世界\", F4: \"ΠΣΦ王\", F5: typeobject(XList_XMap_Byte_Byte), F6: 86, F8: B, F9: D, F12: {Id: \"d\", RetryCode: RetryConnection, Msg: \"Φ王\"}, F13: 65505, F14: 21372, F15: 1512699580, F16: 2069621953, F17: 18415744568491267796, F18: 3693349276499043179, F19: -53, F22: -14420, F25: 1205935434964997754, F27: 1.1920091e+09, F28: -1.9556054e+09, F30: 1.254703076891001e+09, F31: {}, F32: {Id: \"eΔΘΠΣΦ王\", Msg: \"deΔΘΠΣΦ王普澤世\"}}}",
		Source: []interface{}{
			XStructDepth1_All{
				F0: XUnionDepth1_Int8(XUnionDepth1_Int8F19{-62}),
				F1: true,
				F3: "世",
				F4: "deΔ",
				F5: __VDLType_uint16_298,
				F6: 143,
				F7: 188,
				F8: XEnumAbcC,
				F11: XNamedError{
					Id:  "王",
					Msg: "de",
				},
				F13: 23073,
				F15: 3211786920,
				F16: 4055101316,
				F18: 2330407595319300152,
				F19: 59,
				F20: 32,
				F22: 8034,
				F23: -351103322,
				F25: -4503741137733196850,
				F26: 924768865288423865,
				F27: -7.7118104e+07,
				F29: -1.1185637133852577e+09,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "ΠΣ",
					Msg: "abc",
				},
			},
			XStructDepth1_All{
				F0: XStructDepth1_XNamedError{
					F11: XNamedError{
						Id:  "bcdeΔΘΠΣΦ王普澤",
						Msg: "c",
					},
				},
				F1: true,
				F3: "bcdeΔΘΠΣΦ王普澤世界",
				F4: "ΠΣΦ王",
				F5: __VDLType_list_299,
				F6: 86,
				F8: XEnumAbcB,
				F9: XEnumBcdD,
				F12: verror.FromWire(&vdl.WireError{
					Id:        "d",
					RetryCode: vdl.WireRetryCodeRetryConnection,
					Msg:       "Φ王",
				}),
				F13: 65505,
				F14: 21372,
				F15: 1512699580,
				F16: 2069621953,
				F17: 18415744568491267796,
				F18: 3693349276499043179,
				F19: -53,
				F22: -14420,
				F25: 1205935434964997754,
				F27: 1.1920091e+09,
				F28: -1.9556054e+09,
				F30: 1.254703076891001e+09,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "eΔΘΠΣΦ王",
					Msg: "deΔΘΠΣΦ王普澤世",
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray3_XUnionDepth1_All{}",
		Target: XArray3_XUnionDepth1_All{
			XUnionDepth1_AllF0{},
			XUnionDepth1_AllF0{},
			XUnionDepth1_AllF0{},
		},
		SourceLabel: "XArray3_XUnionDepth1_All{}",
		Source: XArray3_XUnionDepth1_All{
			XUnionDepth1_AllF0{},
			XUnionDepth1_AllF0{},
			XUnionDepth1_AllF0{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray3_XUnionDepth1_All{}",
		Target: XArray3_XUnionDepth1_All{
			XUnionDepth1_AllF0{},
			XUnionDepth1_AllF0{},
			XUnionDepth1_AllF0{},
		},
		SourceLabel: "XList_XUnionDepth1_All{{F0: nil}, {F0: nil}, {F0: nil}}",
		Source: XList_XUnionDepth1_All{
			XUnionDepth1_AllF0{},
			XUnionDepth1_AllF0{},
			XUnionDepth1_AllF0{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray3_XUnionDepth1_All{}",
		Target: XArray3_XUnionDepth1_All{
			XUnionDepth1_AllF0{},
			XUnionDepth1_AllF0{},
			XUnionDepth1_AllF0{},
		},
		SourceLabel: "XArray3_Any{XUnionDepth1_All{F0: nil}, XUnionDepth1_All{F0: nil}, XUnionDepth1_All{F0: nil}}",
		Source: XArray3_Any{
			XUnionDepth1_All(XUnionDepth1_AllF0{}),
			XUnionDepth1_All(XUnionDepth1_AllF0{}),
			XUnionDepth1_All(XUnionDepth1_AllF0{}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray3_XUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XArray3_XUnionDepth1_All{
			XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
		SourceLabel: "XArray3_XUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XArray3_XUnionDepth1_All{
			XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray3_XUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XArray3_XUnionDepth1_All{
			XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
		SourceLabel: "XList_XUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XList_XUnionDepth1_All{
			XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray3_XUnionDepth1_All{{F5: typeobject(any)}, {F22: 4626}, {F30: -1.0107631359304602e+09}}",
		Target: XArray3_XUnionDepth1_All{
			XUnionDepth1_AllF5{vdl.AnyType},
			XUnionDepth1_AllF22{4626},
			XUnionDepth1_AllF30{-1.0107631359304602e+09},
		},
		SourceLabel: "XArray3_XUnionDepth1_All{{F5: typeobject(any)}, {F22: 4626}, {F30: -1.0107631359304602e+09}}",
		Source: XArray3_XUnionDepth1_All{
			XUnionDepth1_AllF5{vdl.AnyType},
			XUnionDepth1_AllF22{4626},
			XUnionDepth1_AllF30{-1.0107631359304602e+09},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray3_XUnionDepth1_All{{F5: typeobject(any)}, {F22: 4626}, {F30: -1.0107631359304602e+09}}",
		Target: XArray3_XUnionDepth1_All{
			XUnionDepth1_AllF5{vdl.AnyType},
			XUnionDepth1_AllF22{4626},
			XUnionDepth1_AllF30{-1.0107631359304602e+09},
		},
		SourceLabel: "[]XUnionDepth1_All{{F5: typeobject(any)}, {F22: 4626}, {F30: -1.0107631359304602e+09}}",
		Source: []XUnionDepth1_All{
			XUnionDepth1_AllF5{vdl.AnyType},
			XUnionDepth1_AllF22{4626},
			XUnionDepth1_AllF30{-1.0107631359304602e+09},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray3_OptXStructDepth1_XFloat32{}",
		Target:      XArray3_OptXStructDepth1_XFloat32{},
		SourceLabel: "XArray3_OptXStructDepth1_XFloat32{}",
		Source:      XArray3_OptXStructDepth1_XFloat32{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray3_OptXStructDepth1_XFloat32{}",
		Target:      XArray3_OptXStructDepth1_XFloat32{},
		SourceLabel: "[]any{nil, nil, nil}",
		Source: []interface{}{
			nil,
			nil,
			nil,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray3_OptXStructDepth1_XFloat32{}",
		Target:      XArray3_OptXStructDepth1_XFloat32{},
		SourceLabel: "[]?XStructEmpty{nil, nil, nil}",
		Source: []*XStructEmpty{
			nil,
			nil,
			nil,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray3_OptXStructDepth1_XFloat32{{F28: 1.5}, {F28: 1.5}, {F28: 1.5}}",
		Target: XArray3_OptXStructDepth1_XFloat32{
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
		},
		SourceLabel: "XArray3_OptXStructDepth1_XFloat32{{F28: 1.5}, {F28: 1.5}, {F28: 1.5}}",
		Source: XArray3_OptXStructDepth1_XFloat32{
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray3_OptXStructDepth1_XFloat32{{F28: 1.5}, {F28: 1.5}, {F28: 1.5}}",
		Target: XArray3_OptXStructDepth1_XFloat32{
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
		},
		SourceLabel: "XList_XStructDepth1_All{{F28: 1.5}, {F28: 1.5}, {F28: 1.5}}",
		Source: XList_XStructDepth1_All{
			{
				F5:  vdl.AnyType,
				F28: 1.5,
			},
			{
				F5:  vdl.AnyType,
				F28: 1.5,
			},
			{
				F5:  vdl.AnyType,
				F28: 1.5,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray3_OptXStructDepth1_XFloat32{{}, {F28: 5.931889e+07}, {F28: 1.8135204e+09}}",
		Target: XArray3_OptXStructDepth1_XFloat32{
			{},
			{
				F28: 5.931889e+07,
			},
			{
				F28: 1.8135204e+09,
			},
		},
		SourceLabel: "XArray3_OptXStructDepth1_XFloat32{{}, {F28: 5.931889e+07}, {F28: 1.8135204e+09}}",
		Source: XArray3_OptXStructDepth1_XFloat32{
			{},
			{
				F28: 5.931889e+07,
			},
			{
				F28: 1.8135204e+09,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray3_OptXStructDepth1_XFloat32{{}, {F28: 5.931889e+07}, {F28: 1.8135204e+09}}",
		Target: XArray3_OptXStructDepth1_XFloat32{
			{},
			{
				F28: 5.931889e+07,
			},
			{
				F28: 1.8135204e+09,
			},
		},
		SourceLabel: "XArray3_Any{?XStructDepth1_XFloat32{}, ?XStructDepth1_XFloat32{F28: 5.931889e+07}, ?XStructDepth1_XFloat32{F28: 1.8135204e+09}}",
		Source: XArray3_Any{
			&XStructDepth1_XFloat32{},
			&XStructDepth1_XFloat32{
				F28: 5.931889e+07,
			},
			&XStructDepth1_XFloat32{
				F28: 1.8135204e+09,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]XArray1_String{}",
		Target:      []XArray1_String(nil),
		SourceLabel: "[]XArray1_String{}",
		Source:      []XArray1_String(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XArray1_String{}",
		Target:      []XArray1_String(nil),
		SourceLabel: "XList_Any{}",
		Source:      XList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XArray1_String{}",
		Target:      []XArray1_String(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]XArray1_String{{\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: []XArray1_String{
			{
				"abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "[]XArray1_String{{\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: []XArray1_String{
			{
				"abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]XArray1_String{{\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: []XArray1_String{
			{
				"abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "XList_Any{XArray1_String{\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XList_Any{
			XArray1_String{
				"abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]XArray1_String{{\"c\"}, {\"ΠΣΦ王普澤\"}, {\"王普澤\"}}",
		Target: []XArray1_String{
			{
				"c",
			},
			{
				"ΠΣΦ王普澤",
			},
			{
				"王普澤",
			},
		},
		SourceLabel: "[]XArray1_String{{\"c\"}, {\"ΠΣΦ王普澤\"}, {\"王普澤\"}}",
		Source: []XArray1_String{
			{
				"c",
			},
			{
				"ΠΣΦ王普澤",
			},
			{
				"王普澤",
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]XArray1_String{{\"c\"}, {\"ΠΣΦ王普澤\"}, {\"王普澤\"}}",
		Target: []XArray1_String{
			{
				"c",
			},
			{
				"ΠΣΦ王普澤",
			},
			{
				"王普澤",
			},
		},
		SourceLabel: "XList_Any{XArray1_String{\"c\"}, XArray1_String{\"ΠΣΦ王普澤\"}, XArray1_String{\"王普澤\"}}",
		Source: XList_Any{
			XArray1_String{
				"c",
			},
			XArray1_String{
				"ΠΣΦ王普澤",
			},
			XArray1_String{
				"王普澤",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]XList_Error{}",
		Target:      []XList_Error(nil),
		SourceLabel: "[]XList_Error{}",
		Source:      []XList_Error(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XList_Error{}",
		Target:      []XList_Error(nil),
		SourceLabel: "XList_Any{}",
		Source:      XList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XList_Error{}",
		Target:      []XList_Error(nil),
		SourceLabel: "XList_XArray1_XStructEmpty{}",
		Source:      XList_XArray1_XStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]XList_Error{{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: []XList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
			},
		},
		SourceLabel: "[]XList_Error{{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: []XList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]XList_Error{{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: []XList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
			},
		},
		SourceLabel: "XList_Any{XList_Error{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XList_Any{
			XList_Error{
				verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]XList_Error{{nil, {Id: \"ΘΠ\", Msg: \"世\"}, nil}, {nil, {}, {Id: \"ΔΘΠΣΦ王普澤世\", RetryCode: RetryBackoff}}, {}}",
		Target: []XList_Error{
			{
				nil,
				verror.FromWire(&vdl.WireError{
					Id:  "ΘΠ",
					Msg: "世",
				}),
				nil,
			},
			{
				nil,
				verror.FromWire(&vdl.WireError{}),
				verror.FromWire(&vdl.WireError{
					Id:        "ΔΘΠΣΦ王普澤世",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
				}),
			},
			nil,
		},
		SourceLabel: "[]XList_Error{{nil, {Id: \"ΘΠ\", Msg: \"世\"}, nil}, {nil, {}, {Id: \"ΔΘΠΣΦ王普澤世\", RetryCode: RetryBackoff}}, {}}",
		Source: []XList_Error{
			{
				nil,
				verror.FromWire(&vdl.WireError{
					Id:  "ΘΠ",
					Msg: "世",
				}),
				nil,
			},
			{
				nil,
				verror.FromWire(&vdl.WireError{}),
				verror.FromWire(&vdl.WireError{
					Id:        "ΔΘΠΣΦ王普澤世",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
				}),
			},
			nil,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]XList_Error{{nil, {Id: \"ΘΠ\", Msg: \"世\"}, nil}, {nil, {}, {Id: \"ΔΘΠΣΦ王普澤世\", RetryCode: RetryBackoff}}, {}}",
		Target: []XList_Error{
			{
				nil,
				verror.FromWire(&vdl.WireError{
					Id:  "ΘΠ",
					Msg: "世",
				}),
				nil,
			},
			{
				nil,
				verror.FromWire(&vdl.WireError{}),
				verror.FromWire(&vdl.WireError{
					Id:        "ΔΘΠΣΦ王普澤世",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
				}),
			},
			nil,
		},
		SourceLabel: "XArray3_Any{XList_Error{nil, {Id: \"ΘΠ\", Msg: \"世\"}, nil}, XList_Error{nil, {}, {Id: \"ΔΘΠΣΦ王普澤世\", RetryCode: RetryBackoff}}, XList_Error{}}",
		Source: XArray3_Any{
			XList_Error{
				nil,
				verror.FromWire(&vdl.WireError{
					Id:  "ΘΠ",
					Msg: "世",
				}),
				nil,
			},
			XList_Error{
				nil,
				verror.FromWire(&vdl.WireError{}),
				verror.FromWire(&vdl.WireError{
					Id:        "ΔΘΠΣΦ王普澤世",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
				}),
			},
			XList_Error(nil),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]set[XEnumAbc]{}",
		Target:      []map[XEnumAbc]struct{}(nil),
		SourceLabel: "[]set[XEnumAbc]{}",
		Source:      []map[XEnumAbc]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]set[XEnumAbc]{}",
		Target:      []map[XEnumAbc]struct{}(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]set[XEnumAbc]{}",
		Target:      []map[XEnumAbc]struct{}(nil),
		SourceLabel: "XList_Any{}",
		Source:      XList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]set[XEnumAbc]{{C}}",
		Target: []map[XEnumAbc]struct{}{
			{
				XEnumAbcC: struct{}{},
			},
		},
		SourceLabel: "[]set[XEnumAbc]{{C}}",
		Source: []map[XEnumAbc]struct{}{
			{
				XEnumAbcC: struct{}{},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]set[XEnumAbc]{{C}}",
		Target: []map[XEnumAbc]struct{}{
			{
				XEnumAbcC: struct{}{},
			},
		},
		SourceLabel: "XList_Any{set[XEnumAbc]{C}}",
		Source: XList_Any{
			map[XEnumAbc]struct{}{
				XEnumAbcC: struct{}{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]XMap_XByte_XByte{}",
		Target:      []XMap_XByte_XByte(nil),
		SourceLabel: "[]XMap_XByte_XByte{}",
		Source:      []XMap_XByte_XByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XMap_XByte_XByte{}",
		Target:      []XMap_XByte_XByte(nil),
		SourceLabel: "XList_Any{}",
		Source:      XList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XMap_XByte_XByte{}",
		Target:      []XMap_XByte_XByte(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]XMap_XByte_XByte{{123: 123}}",
		Target: []XMap_XByte_XByte{
			{
				123: 123,
			},
		},
		SourceLabel: "[]XMap_XByte_XByte{{123: 123}}",
		Source: []XMap_XByte_XByte{
			{
				123: 123,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]XMap_XByte_XByte{{123: 123}}",
		Target: []XMap_XByte_XByte{
			{
				123: 123,
			},
		},
		SourceLabel: "[]any{XMap_XByte_XByte{123: 123}}",
		Source: []interface{}{
			XMap_XByte_XByte{
				123: 123,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]XMap_XByte_XByte{{}}",
		Target: []XMap_XByte_XByte{
			nil,
		},
		SourceLabel: "[]XMap_XByte_XByte{{}}",
		Source: []XMap_XByte_XByte{
			nil,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]XMap_XByte_XByte{{}}",
		Target: []XMap_XByte_XByte{
			nil,
		},
		SourceLabel: "[]any{XMap_XByte_XByte{}}",
		Source: []interface{}{
			XMap_XByte_XByte(nil),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]XStructDepth1_All{}",
		Target:      []XStructDepth1_All(nil),
		SourceLabel: "[]XStructDepth1_All{}",
		Source:      []XStructDepth1_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XStructDepth1_All{}",
		Target:      []XStructDepth1_All(nil),
		SourceLabel: "[]?XStructDepth1_XEnumBcd{}",
		Source:      []*XStructDepth1_XEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XStructDepth1_All{}",
		Target:      []XStructDepth1_All(nil),
		SourceLabel: "[]XStructEmpty{}",
		Source:      []XStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]XStructDepth1_All{{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: []XStructDepth1_All{
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
		SourceLabel: "[]XStructDepth1_All{{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: []XStructDepth1_All{
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]XStructDepth1_All{{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: []XStructDepth1_All{
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
		SourceLabel: "[]any{XStructDepth1_All{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: []interface{}{
			XStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]XStructDepth1_All{{}}",
		Target: []XStructDepth1_All{
			{
				F5: vdl.AnyType,
			},
		},
		SourceLabel: "[]XStructDepth1_All{{}}",
		Source: []XStructDepth1_All{
			{
				F5: vdl.AnyType,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]XStructDepth1_All{{}}",
		Target: []XStructDepth1_All{
			{
				F5: vdl.AnyType,
			},
		},
		SourceLabel: "XList_XStructEmpty{{}}",
		Source: XList_XStructEmpty{
			{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]XUnionDepth1_All{}",
		Target:      []XUnionDepth1_All(nil),
		SourceLabel: "[]XUnionDepth1_All{}",
		Source:      []XUnionDepth1_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XUnionDepth1_All{}",
		Target:      []XUnionDepth1_All(nil),
		SourceLabel: "XList_Any{}",
		Source:      XList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XUnionDepth1_All{}",
		Target:      []XUnionDepth1_All(nil),
		SourceLabel: "XList_XUnionDepth1_All{}",
		Source:      XList_XUnionDepth1_All(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]XUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: []XUnionDepth1_All{
			XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
		SourceLabel: "[]XUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: []XUnionDepth1_All{
			XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]XUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: []XUnionDepth1_All{
			XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
		SourceLabel: "[]any{XUnionDepth1_All{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: []interface{}{
			XUnionDepth1_All(XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]XUnionDepth1_All{{F0: nil}, {F0: nil}}",
		Target: []XUnionDepth1_All{
			XUnionDepth1_AllF0{},
			XUnionDepth1_AllF0{},
		},
		SourceLabel: "[]XUnionDepth1_All{{F0: nil}, {F0: nil}}",
		Source: []XUnionDepth1_All{
			XUnionDepth1_AllF0{},
			XUnionDepth1_AllF0{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]XUnionDepth1_All{{F0: nil}, {F0: nil}}",
		Target: []XUnionDepth1_All{
			XUnionDepth1_AllF0{},
			XUnionDepth1_AllF0{},
		},
		SourceLabel: "XList_Any{XUnionDepth1_All{F0: nil}, XUnionDepth1_All{F0: nil}}",
		Source: XList_Any{
			XUnionDepth1_All(XUnionDepth1_AllF0{}),
			XUnionDepth1_All(XUnionDepth1_AllF0{}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]?XStructDepth1_XEnumBcd{}",
		Target:      []*XStructDepth1_XEnumBcd(nil),
		SourceLabel: "[]?XStructDepth1_XEnumBcd{}",
		Source:      []*XStructDepth1_XEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]?XStructDepth1_XEnumBcd{}",
		Target:      []*XStructDepth1_XEnumBcd(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]?XStructDepth1_XEnumBcd{}",
		Target:      []*XStructDepth1_XEnumBcd(nil),
		SourceLabel: "XList_XStructEmpty{}",
		Source:      XList_XStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]?XStructDepth1_XEnumBcd{{F9: D}}",
		Target: []*XStructDepth1_XEnumBcd{
			{
				F9: XEnumBcdD,
			},
		},
		SourceLabel: "[]?XStructDepth1_XEnumBcd{{F9: D}}",
		Source: []*XStructDepth1_XEnumBcd{
			{
				F9: XEnumBcdD,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]?XStructDepth1_XEnumBcd{{F9: D}}",
		Target: []*XStructDepth1_XEnumBcd{
			{
				F9: XEnumBcdD,
			},
		},
		SourceLabel: "[]XStructDepth1_All{{F9: D}}",
		Source: []XStructDepth1_All{
			{
				F5: vdl.AnyType,
				F9: XEnumBcdD,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_XArray1_XStructEmpty{}",
		Target:      XList_XArray1_XStructEmpty(nil),
		SourceLabel: "XList_XArray1_XStructEmpty{}",
		Source:      XList_XArray1_XStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XArray1_XStructEmpty{}",
		Target:      XList_XArray1_XStructEmpty(nil),
		SourceLabel: "[]XList_Error{}",
		Source:      []XList_Error(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XArray1_XStructEmpty{}",
		Target:      XList_XArray1_XStructEmpty(nil),
		SourceLabel: "XList_Any{}",
		Source:      XList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_XArray1_XStructEmpty{{}}",
		Target: XList_XArray1_XStructEmpty{
			{},
		},
		SourceLabel: "XList_XArray1_XStructEmpty{{}}",
		Source: XList_XArray1_XStructEmpty{
			{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_XArray1_XStructEmpty{{}}",
		Target: XList_XArray1_XStructEmpty{
			{},
		},
		SourceLabel: "XList_Any{XArray1_XStructEmpty{}}",
		Source: XList_Any{
			XArray1_XStructEmpty{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_List_XString{}",
		Target:      XList_List_XString(nil),
		SourceLabel: "XList_List_XString{}",
		Source:      XList_List_XString(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_List_XString{}",
		Target:      XList_List_XString(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_List_XString{}",
		Target:      XList_List_XString(nil),
		SourceLabel: "[]XArray1_String{}",
		Source:      []XArray1_String(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_List_XString{{\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XList_List_XString{
			{
				"abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "XList_List_XString{{\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XList_List_XString{
			{
				"abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_List_XString{{\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XList_List_XString{
			{
				"abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "[]any{[]XString{\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: []interface{}{
			[]XString{
				"abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XList_List_XString{{\"王普澤\", \"bcdeΔΘΠΣΦ王\"}, {\"bcdeΔΘΠ\"}}",
		Target: XList_List_XString{
			{
				"王普澤",
				"bcdeΔΘΠΣΦ王",
			},
			{
				"bcdeΔΘΠ",
			},
		},
		SourceLabel: "XList_List_XString{{\"王普澤\", \"bcdeΔΘΠΣΦ王\"}, {\"bcdeΔΘΠ\"}}",
		Source: XList_List_XString{
			{
				"王普澤",
				"bcdeΔΘΠΣΦ王",
			},
			{
				"bcdeΔΘΠ",
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XList_List_XString{{\"王普澤\", \"bcdeΔΘΠΣΦ王\"}, {\"bcdeΔΘΠ\"}}",
		Target: XList_List_XString{
			{
				"王普澤",
				"bcdeΔΘΠΣΦ王",
			},
			{
				"bcdeΔΘΠ",
			},
		},
		SourceLabel: "[]any{[]XString{\"王普澤\", \"bcdeΔΘΠΣΦ王\"}, []XString{\"bcdeΔΘΠ\"}}",
		Source: []interface{}{
			[]XString{
				"王普澤",
				"bcdeΔΘΠΣΦ王",
			},
			[]XString{
				"bcdeΔΘΠ",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_Set_XBool{}",
		Target:      XList_Set_XBool(nil),
		SourceLabel: "XList_Set_XBool{}",
		Source:      XList_Set_XBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_Set_XBool{}",
		Target:      XList_Set_XBool(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_Set_XBool{}",
		Target:      XList_Set_XBool(nil),
		SourceLabel: "XList_Any{}",
		Source:      XList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_Set_XBool{{true}}",
		Target: XList_Set_XBool{
			{
				true: struct{}{},
			},
		},
		SourceLabel: "XList_Set_XBool{{true}}",
		Source: XList_Set_XBool{
			{
				true: struct{}{},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_Set_XBool{{true}}",
		Target: XList_Set_XBool{
			{
				true: struct{}{},
			},
		},
		SourceLabel: "[]any{set[XBool]{true}}",
		Source: []interface{}{
			map[XBool]struct{}{
				true: struct{}{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_XMap_Byte_Byte{}",
		Target:      XList_XMap_Byte_Byte(nil),
		SourceLabel: "XList_XMap_Byte_Byte{}",
		Source:      XList_XMap_Byte_Byte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XMap_Byte_Byte{}",
		Target:      XList_XMap_Byte_Byte(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XMap_Byte_Byte{}",
		Target:      XList_XMap_Byte_Byte(nil),
		SourceLabel: "[]XMap_XByte_XByte{}",
		Source:      []XMap_XByte_XByte(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_XMap_Byte_Byte{{123: 123}}",
		Target: XList_XMap_Byte_Byte{
			{
				123: 123,
			},
		},
		SourceLabel: "XList_XMap_Byte_Byte{{123: 123}}",
		Source: XList_XMap_Byte_Byte{
			{
				123: 123,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_XMap_Byte_Byte{{123: 123}}",
		Target: XList_XMap_Byte_Byte{
			{
				123: 123,
			},
		},
		SourceLabel: "[]XMap_XByte_XByte{{123: 123}}",
		Source: []XMap_XByte_XByte{
			{
				123: 123,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XList_XMap_Byte_Byte{{0: 63, 10: 0}, {171: 0}, {93: 151}}",
		Target: XList_XMap_Byte_Byte{
			{
				0:  63,
				10: 0,
			},
			{
				171: 0,
			},
			{
				93: 151,
			},
		},
		SourceLabel: "XList_XMap_Byte_Byte{{0: 63, 10: 0}, {171: 0}, {93: 151}}",
		Source: XList_XMap_Byte_Byte{
			{
				0:  63,
				10: 0,
			},
			{
				171: 0,
			},
			{
				93: 151,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XList_XMap_Byte_Byte{{0: 63, 10: 0}, {171: 0}, {93: 151}}",
		Target: XList_XMap_Byte_Byte{
			{
				0:  63,
				10: 0,
			},
			{
				171: 0,
			},
			{
				93: 151,
			},
		},
		SourceLabel: "XArray3_Any{XMap_Byte_Byte{0: 63, 10: 0}, XMap_Byte_Byte{171: 0}, XMap_Byte_Byte{93: 151}}",
		Source: XArray3_Any{
			XMap_Byte_Byte{
				0:  63,
				10: 0,
			},
			XMap_Byte_Byte{
				171: 0,
			},
			XMap_Byte_Byte{
				93: 151,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_XStructDepth1_All{}",
		Target:      XList_XStructDepth1_All(nil),
		SourceLabel: "XList_XStructDepth1_All{}",
		Source:      XList_XStructDepth1_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XStructDepth1_All{}",
		Target:      XList_XStructDepth1_All(nil),
		SourceLabel: "XList_XStructEmpty{}",
		Source:      XList_XStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XStructDepth1_All{}",
		Target:      XList_XStructDepth1_All(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_XStructDepth1_All{{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XList_XStructDepth1_All{
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
		SourceLabel: "XList_XStructDepth1_All{{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XList_XStructDepth1_All{
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_XStructDepth1_All{{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XList_XStructDepth1_All{
			{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
		SourceLabel: "[]any{XStructDepth1_All{F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: []interface{}{
			XStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XList_XStructDepth1_All{{F2: true, F3: \"deΔΘΠΣΦ王普\", F4: \"bcdeΔΘΠΣΦ王\", F5: typeobject(XSet_XStructEmpty), F6: 147, F7: 178, F9: D, F11: {Id: \"cdeΔΘ\"}, F14: 31884, F15: 1224172478, F17: 5018903974532464976, F18: 9899358694871220955, F19: 5, F20: 2, F21: -7295, F22: -9166, F24: 41399249, F26: 3363165724461504757, F27: -4.1187436e+09, F28: -4.7375818e+08, F29: 1.0715553175067283e+09, F30: 2.2383271360317728e+08, F31: {}, F32: {Id: \"abc\", Msg: \"ab\"}}}",
		Target: XList_XStructDepth1_All{
			{
				F2: true,
				F3: "deΔΘΠΣΦ王普",
				F4: "bcdeΔΘΠΣΦ王",
				F5: __VDLType_set_300,
				F6: 147,
				F7: 178,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id: "cdeΔΘ",
				},
				F14: 31884,
				F15: 1224172478,
				F17: 5018903974532464976,
				F18: 9899358694871220955,
				F19: 5,
				F20: 2,
				F21: -7295,
				F22: -9166,
				F24: 41399249,
				F26: 3363165724461504757,
				F27: -4.1187436e+09,
				F28: -4.7375818e+08,
				F29: 1.0715553175067283e+09,
				F30: 2.2383271360317728e+08,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abc",
					Msg: "ab",
				},
			},
		},
		SourceLabel: "XList_XStructDepth1_All{{F2: true, F3: \"deΔΘΠΣΦ王普\", F4: \"bcdeΔΘΠΣΦ王\", F5: typeobject(XSet_XStructEmpty), F6: 147, F7: 178, F9: D, F11: {Id: \"cdeΔΘ\"}, F14: 31884, F15: 1224172478, F17: 5018903974532464976, F18: 9899358694871220955, F19: 5, F20: 2, F21: -7295, F22: -9166, F24: 41399249, F26: 3363165724461504757, F27: -4.1187436e+09, F28: -4.7375818e+08, F29: 1.0715553175067283e+09, F30: 2.2383271360317728e+08, F31: {}, F32: {Id: \"abc\", Msg: \"ab\"}}}",
		Source: XList_XStructDepth1_All{
			{
				F2: true,
				F3: "deΔΘΠΣΦ王普",
				F4: "bcdeΔΘΠΣΦ王",
				F5: __VDLType_set_300,
				F6: 147,
				F7: 178,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id: "cdeΔΘ",
				},
				F14: 31884,
				F15: 1224172478,
				F17: 5018903974532464976,
				F18: 9899358694871220955,
				F19: 5,
				F20: 2,
				F21: -7295,
				F22: -9166,
				F24: 41399249,
				F26: 3363165724461504757,
				F27: -4.1187436e+09,
				F28: -4.7375818e+08,
				F29: 1.0715553175067283e+09,
				F30: 2.2383271360317728e+08,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abc",
					Msg: "ab",
				},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XList_XStructDepth1_All{{F2: true, F3: \"deΔΘΠΣΦ王普\", F4: \"bcdeΔΘΠΣΦ王\", F5: typeobject(XSet_XStructEmpty), F6: 147, F7: 178, F9: D, F11: {Id: \"cdeΔΘ\"}, F14: 31884, F15: 1224172478, F17: 5018903974532464976, F18: 9899358694871220955, F19: 5, F20: 2, F21: -7295, F22: -9166, F24: 41399249, F26: 3363165724461504757, F27: -4.1187436e+09, F28: -4.7375818e+08, F29: 1.0715553175067283e+09, F30: 2.2383271360317728e+08, F31: {}, F32: {Id: \"abc\", Msg: \"ab\"}}}",
		Target: XList_XStructDepth1_All{
			{
				F2: true,
				F3: "deΔΘΠΣΦ王普",
				F4: "bcdeΔΘΠΣΦ王",
				F5: __VDLType_set_300,
				F6: 147,
				F7: 178,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id: "cdeΔΘ",
				},
				F14: 31884,
				F15: 1224172478,
				F17: 5018903974532464976,
				F18: 9899358694871220955,
				F19: 5,
				F20: 2,
				F21: -7295,
				F22: -9166,
				F24: 41399249,
				F26: 3363165724461504757,
				F27: -4.1187436e+09,
				F28: -4.7375818e+08,
				F29: 1.0715553175067283e+09,
				F30: 2.2383271360317728e+08,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abc",
					Msg: "ab",
				},
			},
		},
		SourceLabel: "[]any{XStructDepth1_All{F2: true, F3: \"deΔΘΠΣΦ王普\", F4: \"bcdeΔΘΠΣΦ王\", F5: typeobject(XSet_XStructEmpty), F6: 147, F7: 178, F9: D, F11: {Id: \"cdeΔΘ\"}, F14: 31884, F15: 1224172478, F17: 5018903974532464976, F18: 9899358694871220955, F19: 5, F20: 2, F21: -7295, F22: -9166, F24: 41399249, F26: 3363165724461504757, F27: -4.1187436e+09, F28: -4.7375818e+08, F29: 1.0715553175067283e+09, F30: 2.2383271360317728e+08, F31: {}, F32: {Id: \"abc\", Msg: \"ab\"}}}",
		Source: []interface{}{
			XStructDepth1_All{
				F2: true,
				F3: "deΔΘΠΣΦ王普",
				F4: "bcdeΔΘΠΣΦ王",
				F5: __VDLType_set_300,
				F6: 147,
				F7: 178,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id: "cdeΔΘ",
				},
				F14: 31884,
				F15: 1224172478,
				F17: 5018903974532464976,
				F18: 9899358694871220955,
				F19: 5,
				F20: 2,
				F21: -7295,
				F22: -9166,
				F24: 41399249,
				F26: 3363165724461504757,
				F27: -4.1187436e+09,
				F28: -4.7375818e+08,
				F29: 1.0715553175067283e+09,
				F30: 2.2383271360317728e+08,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abc",
					Msg: "ab",
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_XUnionDepth1_All{}",
		Target:      XList_XUnionDepth1_All(nil),
		SourceLabel: "XList_XUnionDepth1_All{}",
		Source:      XList_XUnionDepth1_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XUnionDepth1_All{}",
		Target:      XList_XUnionDepth1_All(nil),
		SourceLabel: "[]XUnionDepth1_All{}",
		Source:      []XUnionDepth1_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XUnionDepth1_All{}",
		Target:      XList_XUnionDepth1_All(nil),
		SourceLabel: "XList_Any{}",
		Source:      XList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_XUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XList_XUnionDepth1_All{
			XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
		SourceLabel: "XList_XUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XList_XUnionDepth1_All{
			XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_XUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XList_XUnionDepth1_All{
			XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
		SourceLabel: "[]XUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: []XUnionDepth1_All{
			XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XList_XUnionDepth1_All{{F0: nil}, {F29: 2.950166179061692e+08}, {F3: \"\"}}",
		Target: XList_XUnionDepth1_All{
			XUnionDepth1_AllF0{},
			XUnionDepth1_AllF29{2.950166179061692e+08},
			XUnionDepth1_AllF3{},
		},
		SourceLabel: "XList_XUnionDepth1_All{{F0: nil}, {F29: 2.950166179061692e+08}, {F3: \"\"}}",
		Source: XList_XUnionDepth1_All{
			XUnionDepth1_AllF0{},
			XUnionDepth1_AllF29{2.950166179061692e+08},
			XUnionDepth1_AllF3{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XList_XUnionDepth1_All{{F0: nil}, {F29: 2.950166179061692e+08}, {F3: \"\"}}",
		Target: XList_XUnionDepth1_All{
			XUnionDepth1_AllF0{},
			XUnionDepth1_AllF29{2.950166179061692e+08},
			XUnionDepth1_AllF3{},
		},
		SourceLabel: "[]XUnionDepth1_All{{F0: nil}, {F29: 2.950166179061692e+08}, {F3: \"\"}}",
		Source: []XUnionDepth1_All{
			XUnionDepth1_AllF0{},
			XUnionDepth1_AllF29{2.950166179061692e+08},
			XUnionDepth1_AllF3{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_OptXStructDepth1_XEnumBcd{}",
		Target:      XList_OptXStructDepth1_XEnumBcd(nil),
		SourceLabel: "XList_OptXStructDepth1_XEnumBcd{}",
		Source:      XList_OptXStructDepth1_XEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_OptXStructDepth1_XEnumBcd{}",
		Target:      XList_OptXStructDepth1_XEnumBcd(nil),
		SourceLabel: "[]?XStructDepth1_XEnumBcd{}",
		Source:      []*XStructDepth1_XEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_OptXStructDepth1_XEnumBcd{}",
		Target:      XList_OptXStructDepth1_XEnumBcd(nil),
		SourceLabel: "XList_XStructEmpty{}",
		Source:      XList_XStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_OptXStructDepth1_XEnumBcd{{F9: D}}",
		Target: XList_OptXStructDepth1_XEnumBcd{
			{
				F9: XEnumBcdD,
			},
		},
		SourceLabel: "XList_OptXStructDepth1_XEnumBcd{{F9: D}}",
		Source: XList_OptXStructDepth1_XEnumBcd{
			{
				F9: XEnumBcdD,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_OptXStructDepth1_XEnumBcd{{F9: D}}",
		Target: XList_OptXStructDepth1_XEnumBcd{
			{
				F9: XEnumBcdD,
			},
		},
		SourceLabel: "[]any{?XStructDepth1_XEnumBcd{F9: D}}",
		Source: []interface{}{
			&XStructDepth1_XEnumBcd{
				F9: XEnumBcdD,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[XArray2_XEnumAbc]{}",
		Target:      map[XArray2_XEnumAbc]struct{}(nil),
		SourceLabel: "set[XArray2_XEnumAbc]{}",
		Source:      map[XArray2_XEnumAbc]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[XArray2_XEnumAbc]{{C, C}}",
		Target: map[XArray2_XEnumAbc]struct{}{
			{
				XEnumAbcC,
				XEnumAbcC,
			}: struct{}{},
		},
		SourceLabel: "set[XArray2_XEnumAbc]{{C, C}}",
		Source: map[XArray2_XEnumAbc]struct{}{
			{
				XEnumAbcC,
				XEnumAbcC,
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[XStructDepth1_String]{}",
		Target:      map[XStructDepth1_String]struct{}(nil),
		SourceLabel: "set[XStructDepth1_String]{}",
		Source:      map[XStructDepth1_String]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[XStructDepth1_String]{}",
		Target:      map[XStructDepth1_String]struct{}(nil),
		SourceLabel: "set[XStructEmpty]{}",
		Source:      map[XStructEmpty]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[XStructDepth1_String]{}",
		Target:      map[XStructDepth1_String]struct{}(nil),
		SourceLabel: "XSet_XStructEmpty{}",
		Source:      XSet_XStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[XStructDepth1_String]{{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: map[XStructDepth1_String]struct{}{
			{
				F3: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		},
		SourceLabel: "set[XStructDepth1_String]{{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: map[XStructDepth1_String]struct{}{
			{
				F3: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "set[XStructDepth1_String]{{}, {F3: \"cdeΔΘΠΣΦ王普澤世界\"}}",
		Target: map[XStructDepth1_String]struct{}{
			{}: struct{}{},
			{
				F3: "cdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		},
		SourceLabel: "set[XStructDepth1_String]{{}, {F3: \"cdeΔΘΠΣΦ王普澤世界\"}}",
		Source: map[XStructDepth1_String]struct{}{
			{}: struct{}{},
			{
				F3: "cdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[XUnionDepth1_XNamedError]{}",
		Target:      map[XUnionDepth1_XNamedError]struct{}(nil),
		SourceLabel: "set[XUnionDepth1_XNamedError]{}",
		Source:      map[XUnionDepth1_XNamedError]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[XUnionDepth1_XNamedError]{{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: map[XUnionDepth1_XNamedError]struct{}{
			XUnionDepth1_XNamedErrorF11{XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}}: struct{}{},
		},
		SourceLabel: "set[XUnionDepth1_XNamedError]{{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: map[XUnionDepth1_XNamedError]struct{}{
			XUnionDepth1_XNamedErrorF11{XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "set[XUnionDepth1_XNamedError]{{F11: {Id: \"abcdeΔΘΠΣΦ王普澤\", Msg: \"abcdeΔΘΠΣΦ王普\"}}}",
		Target: map[XUnionDepth1_XNamedError]struct{}{
			XUnionDepth1_XNamedErrorF11{XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤",
				Msg: "abcdeΔΘΠΣΦ王普",
			}}: struct{}{},
		},
		SourceLabel: "set[XUnionDepth1_XNamedError]{{F11: {Id: \"abcdeΔΘΠΣΦ王普澤\", Msg: \"abcdeΔΘΠΣΦ王普\"}}}",
		Source: map[XUnionDepth1_XNamedError]struct{}{
			XUnionDepth1_XNamedErrorF11{XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤",
				Msg: "abcdeΔΘΠΣΦ王普",
			}}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XSet_XArray1_XStructEmpty{}",
		Target:      XSet_XArray1_XStructEmpty(nil),
		SourceLabel: "XSet_XArray1_XStructEmpty{}",
		Source:      XSet_XArray1_XStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XSet_XArray1_XStructEmpty{{}}",
		Target: XSet_XArray1_XStructEmpty{
			{}: struct{}{},
		},
		SourceLabel: "XSet_XArray1_XStructEmpty{{}}",
		Source: XSet_XArray1_XStructEmpty{
			{}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XSet_XStructDepth1_XFloat64{}",
		Target:      XSet_XStructDepth1_XFloat64(nil),
		SourceLabel: "XSet_XStructDepth1_XFloat64{}",
		Source:      XSet_XStructDepth1_XFloat64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_XStructDepth1_XFloat64{}",
		Target:      XSet_XStructDepth1_XFloat64(nil),
		SourceLabel: "XSet_XStructEmpty{}",
		Source:      XSet_XStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_XStructDepth1_XFloat64{}",
		Target:      XSet_XStructDepth1_XFloat64(nil),
		SourceLabel: "set[XStructEmpty]{}",
		Source:      map[XStructEmpty]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XSet_XStructDepth1_XFloat64{{F30: 1.5}}",
		Target: XSet_XStructDepth1_XFloat64{
			{
				F30: 1.5,
			}: struct{}{},
		},
		SourceLabel: "XSet_XStructDepth1_XFloat64{{F30: 1.5}}",
		Source: XSet_XStructDepth1_XFloat64{
			{
				F30: 1.5,
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XSet_XStructDepth1_XFloat64{{F30: -4.338791546407051e+08}}",
		Target: XSet_XStructDepth1_XFloat64{
			{
				F30: -4.338791546407051e+08,
			}: struct{}{},
		},
		SourceLabel: "XSet_XStructDepth1_XFloat64{{F30: -4.338791546407051e+08}}",
		Source: XSet_XStructDepth1_XFloat64{
			{
				F30: -4.338791546407051e+08,
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XSet_XUnionDepth1_XInt8{}",
		Target:      XSet_XUnionDepth1_XInt8(nil),
		SourceLabel: "XSet_XUnionDepth1_XInt8{}",
		Source:      XSet_XUnionDepth1_XInt8(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XSet_XUnionDepth1_XInt8{{F20: -123}}",
		Target: XSet_XUnionDepth1_XInt8{
			XUnionDepth1_XInt8F20{-123}: struct{}{},
		},
		SourceLabel: "XSet_XUnionDepth1_XInt8{{F20: -123}}",
		Source: XSet_XUnionDepth1_XInt8{
			XUnionDepth1_XInt8F20{-123}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XSet_XUnionDepth1_XInt8{{F20: 0}}",
		Target: XSet_XUnionDepth1_XInt8{
			XUnionDepth1_XInt8F20{}: struct{}{},
		},
		SourceLabel: "XSet_XUnionDepth1_XInt8{{F20: 0}}",
		Source: XSet_XUnionDepth1_XInt8{
			XUnionDepth1_XInt8F20{}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[XArray3_Int64]XArray3_Int64{}",
		Target:      map[XArray3_Int64]XArray3_Int64(nil),
		SourceLabel: "map[XArray3_Int64]XArray3_Int64{}",
		Source:      map[XArray3_Int64]XArray3_Int64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[XArray3_Int64]XArray3_Int64{{-123, -123, -123}: {-123, -123, -123}}",
		Target: map[XArray3_Int64]XArray3_Int64{
			{
				-123,
				-123,
				-123,
			}: {
				-123,
				-123,
				-123,
			},
		},
		SourceLabel: "map[XArray3_Int64]XArray3_Int64{{-123, -123, -123}: {-123, -123, -123}}",
		Source: map[XArray3_Int64]XArray3_Int64{
			{
				-123,
				-123,
				-123,
			}: {
				-123,
				-123,
				-123,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[XArray3_Int64]XArray3_Int64{{-1723339302975699010, 1551317519793337777, 27938471691549772}: {-2124330902708903306, -483989880896138729, 1198009883539770066}}",
		Target: map[XArray3_Int64]XArray3_Int64{
			{
				-1723339302975699010,
				1551317519793337777,
				27938471691549772,
			}: {
				-2124330902708903306,
				-483989880896138729,
				1198009883539770066,
			},
		},
		SourceLabel: "map[XArray3_Int64]XArray3_Int64{{-1723339302975699010, 1551317519793337777, 27938471691549772}: {-2124330902708903306, -483989880896138729, 1198009883539770066}}",
		Source: map[XArray3_Int64]XArray3_Int64{
			{
				-1723339302975699010,
				1551317519793337777,
				27938471691549772,
			}: {
				-2124330902708903306,
				-483989880896138729,
				1198009883539770066,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[XStructDepth1_String]XStructDepth1_String{}",
		Target:      map[XStructDepth1_String]XStructDepth1_String(nil),
		SourceLabel: "map[XStructDepth1_String]XStructDepth1_String{}",
		Source:      map[XStructDepth1_String]XStructDepth1_String(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XStructDepth1_String]XStructDepth1_String{}",
		Target:      map[XStructDepth1_String]XStructDepth1_String(nil),
		SourceLabel: "XMap_XStructEmpty_XStructEmpty{}",
		Source:      XMap_XStructEmpty_XStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XStructDepth1_String]XStructDepth1_String{}",
		Target:      map[XStructDepth1_String]XStructDepth1_String(nil),
		SourceLabel: "map[XStructEmpty]XStructEmpty{}",
		Source:      map[XStructEmpty]XStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[XStructDepth1_String]XStructDepth1_String{{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}: {F3: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: map[XStructDepth1_String]XStructDepth1_String{
			{
				F3: "abcdeΔΘΠΣΦ王普澤世界",
			}: {
				F3: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
		SourceLabel: "map[XStructDepth1_String]XStructDepth1_String{{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}: {F3: \"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: map[XStructDepth1_String]XStructDepth1_String{
			{
				F3: "abcdeΔΘΠΣΦ王普澤世界",
			}: {
				F3: "abcdeΔΘΠΣΦ王普澤世界",
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[XStructDepth1_String]XStructDepth1_String{{F3: \"cd\"}: {F3: \"abcdeΔΘΠΣΦ王普\"}, {F3: \"deΔΘΠΣΦ王普澤\"}: {F3: \"cdeΔΘ\"}, {F3: \"ΔΘΠΣΦ\"}: {}}",
		Target: map[XStructDepth1_String]XStructDepth1_String{
			{
				F3: "cd",
			}: {
				F3: "abcdeΔΘΠΣΦ王普",
			},
			{
				F3: "deΔΘΠΣΦ王普澤",
			}: {
				F3: "cdeΔΘ",
			},
			{
				F3: "ΔΘΠΣΦ",
			}: {},
		},
		SourceLabel: "map[XStructDepth1_String]XStructDepth1_String{{F3: \"cd\"}: {F3: \"abcdeΔΘΠΣΦ王普\"}, {F3: \"deΔΘΠΣΦ王普澤\"}: {F3: \"cdeΔΘ\"}, {F3: \"ΔΘΠΣΦ\"}: {}}",
		Source: map[XStructDepth1_String]XStructDepth1_String{
			{
				F3: "cd",
			}: {
				F3: "abcdeΔΘΠΣΦ王普",
			},
			{
				F3: "deΔΘΠΣΦ王普澤",
			}: {
				F3: "cdeΔΘ",
			},
			{
				F3: "ΔΘΠΣΦ",
			}: {},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[XUnionDepth1_Float64]XUnionDepth1_Float64{}",
		Target:      map[XUnionDepth1_Float64]XUnionDepth1_Float64(nil),
		SourceLabel: "map[XUnionDepth1_Float64]XUnionDepth1_Float64{}",
		Source:      map[XUnionDepth1_Float64]XUnionDepth1_Float64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[XUnionDepth1_Float64]XUnionDepth1_Float64{{F29: 1.5}: {F29: 1.5}}",
		Target: map[XUnionDepth1_Float64]XUnionDepth1_Float64{
			XUnionDepth1_Float64F29{1.5}: XUnionDepth1_Float64F29{1.5},
		},
		SourceLabel: "map[XUnionDepth1_Float64]XUnionDepth1_Float64{{F29: 1.5}: {F29: 1.5}}",
		Source: map[XUnionDepth1_Float64]XUnionDepth1_Float64{
			XUnionDepth1_Float64F29{1.5}: XUnionDepth1_Float64F29{1.5},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[XUnionDepth1_Float64]XUnionDepth1_Float64{{F29: 0}: {F29: -3.2099909632065117e+07}}",
		Target: map[XUnionDepth1_Float64]XUnionDepth1_Float64{
			XUnionDepth1_Float64F29{}: XUnionDepth1_Float64F29{-3.2099909632065117e+07},
		},
		SourceLabel: "map[XUnionDepth1_Float64]XUnionDepth1_Float64{{F29: 0}: {F29: -3.2099909632065117e+07}}",
		Source: map[XUnionDepth1_Float64]XUnionDepth1_Float64{
			XUnionDepth1_Float64F29{}: XUnionDepth1_Float64F29{-3.2099909632065117e+07},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XMap_XArray3_XBool_XArray3_XBool{}",
		Target:      XMap_XArray3_XBool_XArray3_XBool(nil),
		SourceLabel: "XMap_XArray3_XBool_XArray3_XBool{}",
		Source:      XMap_XArray3_XBool_XArray3_XBool(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XMap_XArray3_XBool_XArray3_XBool{{true, true, true}: {true, true, true}}",
		Target: XMap_XArray3_XBool_XArray3_XBool{
			{
				true,
				true,
				true,
			}: {
				true,
				true,
				true,
			},
		},
		SourceLabel: "XMap_XArray3_XBool_XArray3_XBool{{true, true, true}: {true, true, true}}",
		Source: XMap_XArray3_XBool_XArray3_XBool{
			{
				true,
				true,
				true,
			}: {
				true,
				true,
				true,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XMap_XStructDepth1_XBool_XStructDepth1_XBool{}",
		Target:      XMap_XStructDepth1_XBool_XStructDepth1_XBool(nil),
		SourceLabel: "XMap_XStructDepth1_XBool_XStructDepth1_XBool{}",
		Source:      XMap_XStructDepth1_XBool_XStructDepth1_XBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XStructDepth1_XBool_XStructDepth1_XBool{}",
		Target:      XMap_XStructDepth1_XBool_XStructDepth1_XBool(nil),
		SourceLabel: "map[XStructEmpty]XStructEmpty{}",
		Source:      map[XStructEmpty]XStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XStructDepth1_XBool_XStructDepth1_XBool{}",
		Target:      XMap_XStructDepth1_XBool_XStructDepth1_XBool(nil),
		SourceLabel: "XMap_XStructEmpty_XStructEmpty{}",
		Source:      XMap_XStructEmpty_XStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XMap_XStructDepth1_XBool_XStructDepth1_XBool{{F2: true}: {F2: true}}",
		Target: XMap_XStructDepth1_XBool_XStructDepth1_XBool{
			{
				F2: true,
			}: {
				F2: true,
			},
		},
		SourceLabel: "XMap_XStructDepth1_XBool_XStructDepth1_XBool{{F2: true}: {F2: true}}",
		Source: XMap_XStructDepth1_XBool_XStructDepth1_XBool{
			{
				F2: true,
			}: {
				F2: true,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XMap_XUnionDepth1_XUint64_XUnionDepth1_XUint64{}",
		Target:      XMap_XUnionDepth1_XUint64_XUnionDepth1_XUint64(nil),
		SourceLabel: "XMap_XUnionDepth1_XUint64_XUnionDepth1_XUint64{}",
		Source:      XMap_XUnionDepth1_XUint64_XUnionDepth1_XUint64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XMap_XUnionDepth1_XUint64_XUnionDepth1_XUint64{{F18: 123}: {F18: 123}}",
		Target: XMap_XUnionDepth1_XUint64_XUnionDepth1_XUint64{
			XUnionDepth1_XUint64F18{123}: XUnionDepth1_XUint64F18{123},
		},
		SourceLabel: "XMap_XUnionDepth1_XUint64_XUnionDepth1_XUint64{{F18: 123}: {F18: 123}}",
		Source: XMap_XUnionDepth1_XUint64_XUnionDepth1_XUint64{
			XUnionDepth1_XUint64F18{123}: XUnionDepth1_XUint64F18{123},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XMap_XUnionDepth1_XUint64_XUnionDepth1_XUint64{{F18: 0}: {F18: 17420072968693614323}}",
		Target: XMap_XUnionDepth1_XUint64_XUnionDepth1_XUint64{
			XUnionDepth1_XUint64F18{}: XUnionDepth1_XUint64F18{17420072968693614323},
		},
		SourceLabel: "XMap_XUnionDepth1_XUint64_XUnionDepth1_XUint64{{F18: 0}: {F18: 17420072968693614323}}",
		Source: XMap_XUnionDepth1_XUint64_XUnionDepth1_XUint64{
			XUnionDepth1_XUint64F18{}: XUnionDepth1_XUint64F18{17420072968693614323},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth2_All{}",
		Target: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
		SourceLabel: "XStructDepth2_All{}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_All{}",
		Target: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_All{}",
		Target: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
		SourceLabel: "XStructDepth2_Set_Float64{}",
		Source:      XStructDepth2_Set_Float64{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth2_All{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}",
		Target: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.Int64Type,
				vdl.Int64Type,
			},
			F1: XArray1_Uint32{
				123,
			},
			F2: []int16{
				-123,
			},
			F3: XList_Any{
				int64(-123),
			},
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
			F5: XSet_XEnumBcd{
				XEnumBcdD: struct{}{},
			},
			F6: map[byte]byte{
				123: 123,
			},
			F7: map[uint32]uint32{
				123: 123,
			},
			F8: XStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
			F9: XStructDepth1_Bool{
				F1: true,
			},
			F10: XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			F11: XUnionDepth1_Float64F29{1.5},
			F12: &XStructDepth1_XEnumBcd{
				F9: XEnumBcdD,
			},
			F13: &XStructDepth1_XUint16{
				F14: 123,
			},
		},
		SourceLabel: "XStructDepth2_All{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.Int64Type,
				vdl.Int64Type,
			},
			F1: XArray1_Uint32{
				123,
			},
			F2: []int16{
				-123,
			},
			F3: XList_Any{
				int64(-123),
			},
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
			F5: XSet_XEnumBcd{
				XEnumBcdD: struct{}{},
			},
			F6: map[byte]byte{
				123: 123,
			},
			F7: map[uint32]uint32{
				123: 123,
			},
			F8: XStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
			F9: XStructDepth1_Bool{
				F1: true,
			},
			F10: XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			F11: XUnionDepth1_Float64F29{1.5},
			F12: &XStructDepth1_XEnumBcd{
				F9: XEnumBcdD,
			},
			F13: &XStructDepth1_XUint16{
				F14: 123,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth2_All{F0: {typeobject(any), typeobject(set[string])}, F1: {624195240}, F2: {-16292, -6161}, F4: {0, 1.738953051495289e+09}, F5: {B}, F6: {0: 0, 21: 163}, F8: {F0: XList_XString{}, F3: \"bcd\", F6: 96, F7: 97, F8: C, F11: {Id: \"cde\", Msg: \"cdeΔΘΠΣΦ王普\"}, F12: {Id: \"王普澤世界\", RetryCode: RetryBackoff}, F13: 1022, F14: 41391, F15: 730244830, F16: 1039275857, F17: 1538341001578454974, F18: 4110406704162911514, F19: 32, F20: -2, F21: -15834, F23: -89743541, F25: -3452405940873946487, F26: -358236226010780487, F27: -1.4241786e+08, F28: -5.401664e+08, F29: -1.1107673826204848e+09, F30: -3.394175396032138e+07, F32: {}}, F10: {F7: 187}, F12: {F9: C}, F13: {}}",
		Target: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				__VDLType_set_301,
			},
			F1: XArray1_Uint32{
				624195240,
			},
			F2: []int16{
				-16292,
				-6161,
			},
			F4: map[float64]struct{}{
				0: struct{}{},
				1.738953051495289e+09: struct{}{},
			},
			F5: XSet_XEnumBcd{
				XEnumBcdB: struct{}{},
			},
			F6: map[byte]byte{
				0:  0,
				21: 163,
			},
			F8: XStructDepth1_All{
				F0: XList_XString(nil),
				F3: "bcd",
				F5: vdl.AnyType,
				F6: 96,
				F7: 97,
				F8: XEnumAbcC,
				F11: XNamedError{
					Id:  "cde",
					Msg: "cdeΔΘΠΣΦ王普",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
				}),
				F13: 1022,
				F14: 41391,
				F15: 730244830,
				F16: 1039275857,
				F17: 1538341001578454974,
				F18: 4110406704162911514,
				F19: 32,
				F20: -2,
				F21: -15834,
				F23: -89743541,
				F25: -3452405940873946487,
				F26: -358236226010780487,
				F27: -1.4241786e+08,
				F28: -5.401664e+08,
				F29: -1.1107673826204848e+09,
				F30: -3.394175396032138e+07,
				F32: &XNamedError{},
			},
			F10: XUnionDepth1_AllF7{187},
			F11: XUnionDepth1_Float64F29{},
			F12: &XStructDepth1_XEnumBcd{
				F9: XEnumBcdC,
			},
			F13: &XStructDepth1_XUint16{},
		},
		SourceLabel: "XStructDepth2_All{F0: {typeobject(any), typeobject(set[string])}, F1: {624195240}, F2: {-16292, -6161}, F4: {0, 1.738953051495289e+09}, F5: {B}, F6: {0: 0, 21: 163}, F8: {F0: XList_XString{}, F3: \"bcd\", F6: 96, F7: 97, F8: C, F11: {Id: \"cde\", Msg: \"cdeΔΘΠΣΦ王普\"}, F12: {Id: \"王普澤世界\", RetryCode: RetryBackoff}, F13: 1022, F14: 41391, F15: 730244830, F16: 1039275857, F17: 1538341001578454974, F18: 4110406704162911514, F19: 32, F20: -2, F21: -15834, F23: -89743541, F25: -3452405940873946487, F26: -358236226010780487, F27: -1.4241786e+08, F28: -5.401664e+08, F29: -1.1107673826204848e+09, F30: -3.394175396032138e+07, F32: {}}, F10: {F7: 187}, F12: {F9: C}, F13: {}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				__VDLType_set_301,
			},
			F1: XArray1_Uint32{
				624195240,
			},
			F2: []int16{
				-16292,
				-6161,
			},
			F4: map[float64]struct{}{
				0: struct{}{},
				1.738953051495289e+09: struct{}{},
			},
			F5: XSet_XEnumBcd{
				XEnumBcdB: struct{}{},
			},
			F6: map[byte]byte{
				0:  0,
				21: 163,
			},
			F8: XStructDepth1_All{
				F0: XList_XString(nil),
				F3: "bcd",
				F5: vdl.AnyType,
				F6: 96,
				F7: 97,
				F8: XEnumAbcC,
				F11: XNamedError{
					Id:  "cde",
					Msg: "cdeΔΘΠΣΦ王普",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
				}),
				F13: 1022,
				F14: 41391,
				F15: 730244830,
				F16: 1039275857,
				F17: 1538341001578454974,
				F18: 4110406704162911514,
				F19: 32,
				F20: -2,
				F21: -15834,
				F23: -89743541,
				F25: -3452405940873946487,
				F26: -358236226010780487,
				F27: -1.4241786e+08,
				F28: -5.401664e+08,
				F29: -1.1107673826204848e+09,
				F30: -3.394175396032138e+07,
				F32: &XNamedError{},
			},
			F10: XUnionDepth1_AllF7{187},
			F11: XUnionDepth1_Float64F29{},
			F12: &XStructDepth1_XEnumBcd{
				F9: XEnumBcdC,
			},
			F13: &XStructDepth1_XUint16{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XArray2_TypeObject{}",
		Target: XStructDepth2_XArray2_TypeObject{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
		},
		SourceLabel: "XStructDepth2_XArray2_TypeObject{}",
		Source: XStructDepth2_XArray2_TypeObject{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XArray2_TypeObject{}",
		Target: XStructDepth2_XArray2_TypeObject{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
		},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XArray2_TypeObject{}",
		Target: XStructDepth2_XArray2_TypeObject{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
		},
		SourceLabel: "XStructDepth2_All{}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth2_XArray2_TypeObject{F0: {typeobject(int64), typeobject(int64)}}",
		Target: XStructDepth2_XArray2_TypeObject{
			F0: XArray2_TypeObject{
				vdl.Int64Type,
				vdl.Int64Type,
			},
		},
		SourceLabel: "XStructDepth2_XArray2_TypeObject{F0: {typeobject(int64), typeobject(int64)}}",
		Source: XStructDepth2_XArray2_TypeObject{
			F0: XArray2_TypeObject{
				vdl.Int64Type,
				vdl.Int64Type,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth2_XArray2_TypeObject{F0: {typeobject(int64), typeobject(int64)}}",
		Target: XStructDepth2_XArray2_TypeObject{
			F0: XArray2_TypeObject{
				vdl.Int64Type,
				vdl.Int64Type,
			},
		},
		SourceLabel: "XStructDepth1_All{F0: XArray2_TypeObject{typeobject(int64), typeobject(int64)}}",
		Source: XStructDepth1_All{
			F0: XArray2_TypeObject{
				vdl.Int64Type,
				vdl.Int64Type,
			},
			F5: vdl.AnyType,
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth2_XArray2_TypeObject{F0: {typeobject(XList_XUint16), typeobject(XList_Byte)}}",
		Target: XStructDepth2_XArray2_TypeObject{
			F0: XArray2_TypeObject{
				__VDLType_list_302,
				__VDLType_list_303,
			},
		},
		SourceLabel: "XStructDepth2_XArray2_TypeObject{F0: {typeobject(XList_XUint16), typeobject(XList_Byte)}}",
		Source: XStructDepth2_XArray2_TypeObject{
			F0: XArray2_TypeObject{
				__VDLType_list_302,
				__VDLType_list_303,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth2_XArray2_TypeObject{F0: {typeobject(XList_XUint16), typeobject(XList_Byte)}}",
		Target: XStructDepth2_XArray2_TypeObject{
			F0: XArray2_TypeObject{
				__VDLType_list_302,
				__VDLType_list_303,
			},
		},
		SourceLabel: "XStructDepth2_All{F0: {typeobject(XList_XUint16), typeobject(XList_Byte)}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				__VDLType_list_302,
				__VDLType_list_303,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XArray1_Uint32{}",
		Target:      XStructDepth2_XArray1_Uint32{},
		SourceLabel: "XStructDepth2_XArray1_Uint32{}",
		Source:      XStructDepth2_XArray1_Uint32{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XArray1_Uint32{}",
		Target:      XStructDepth2_XArray1_Uint32{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XArray1_Uint32{}",
		Target:      XStructDepth2_XArray1_Uint32{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth2_XArray1_Uint32{F1: {123}}",
		Target: XStructDepth2_XArray1_Uint32{
			F1: XArray1_Uint32{
				123,
			},
		},
		SourceLabel: "XStructDepth2_XArray1_Uint32{F1: {123}}",
		Source: XStructDepth2_XArray1_Uint32{
			F1: XArray1_Uint32{
				123,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth2_XArray1_Uint32{F1: {123}}",
		Target: XStructDepth2_XArray1_Uint32{
			F1: XArray1_Uint32{
				123,
			},
		},
		SourceLabel: "XStructDepth2_All{F1: {123}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F1: XArray1_Uint32{
				123,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth2_XArray1_Uint32{F1: {830396580}}",
		Target: XStructDepth2_XArray1_Uint32{
			F1: XArray1_Uint32{
				830396580,
			},
		},
		SourceLabel: "XStructDepth2_XArray1_Uint32{F1: {830396580}}",
		Source: XStructDepth2_XArray1_Uint32{
			F1: XArray1_Uint32{
				830396580,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth2_XArray1_Uint32{F1: {830396580}}",
		Target: XStructDepth2_XArray1_Uint32{
			F1: XArray1_Uint32{
				830396580,
			},
		},
		SourceLabel: "XStructDepth2_All{F1: {830396580}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F1: XArray1_Uint32{
				830396580,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth2_List_Int16{}",
		Target:      XStructDepth2_List_Int16{},
		SourceLabel: "XStructDepth2_List_Int16{}",
		Source:      XStructDepth2_List_Int16{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_List_Int16{}",
		Target:      XStructDepth2_List_Int16{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_List_Int16{}",
		Target:      XStructDepth2_List_Int16{},
		SourceLabel: "XStructDepth2_All{}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth2_List_Int16{F2: {-123}}",
		Target: XStructDepth2_List_Int16{
			F2: []int16{
				-123,
			},
		},
		SourceLabel: "XStructDepth2_List_Int16{F2: {-123}}",
		Source: XStructDepth2_List_Int16{
			F2: []int16{
				-123,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth2_List_Int16{F2: {-123}}",
		Target: XStructDepth2_List_Int16{
			F2: []int16{
				-123,
			},
		},
		SourceLabel: "XStructDepth2_All{F2: {-123}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F2: []int16{
				-123,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth2_List_Int16{F2: {-6308, 0, -1378}}",
		Target: XStructDepth2_List_Int16{
			F2: []int16{
				-6308,
				0,
				-1378,
			},
		},
		SourceLabel: "XStructDepth2_List_Int16{F2: {-6308, 0, -1378}}",
		Source: XStructDepth2_List_Int16{
			F2: []int16{
				-6308,
				0,
				-1378,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth2_List_Int16{F2: {-6308, 0, -1378}}",
		Target: XStructDepth2_List_Int16{
			F2: []int16{
				-6308,
				0,
				-1378,
			},
		},
		SourceLabel: "XStructDepth2_All{F2: {-6308, 0, -1378}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F2: []int16{
				-6308,
				0,
				-1378,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XList_Any{}",
		Target:      XStructDepth2_XList_Any{},
		SourceLabel: "XStructDepth2_XList_Any{}",
		Source:      XStructDepth2_XList_Any{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XList_Any{}",
		Target:      XStructDepth2_XList_Any{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XList_Any{}",
		Target:      XStructDepth2_XList_Any{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth2_XList_Any{F3: {int64(-123)}}",
		Target: XStructDepth2_XList_Any{
			F3: XList_Any{
				int64(-123),
			},
		},
		SourceLabel: "XStructDepth2_XList_Any{F3: {int64(-123)}}",
		Source: XStructDepth2_XList_Any{
			F3: XList_Any{
				int64(-123),
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth2_XList_Any{F3: {int64(-123)}}",
		Target: XStructDepth2_XList_Any{
			F3: XList_Any{
				int64(-123),
			},
		},
		SourceLabel: "XStructDepth2_All{F3: {int64(-123)}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F3: XList_Any{
				int64(-123),
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth2_XList_Any{F3: {XStructDepth3_OptXStructDepth2_Set_Float64{}, XList_XFloat64{-1.416808473318998e+08, 0, -4.885891344268399e+07}}}",
		Target: XStructDepth2_XList_Any{
			F3: XList_Any{
				XStructDepth3_OptXStructDepth2_Set_Float64{},
				XList_XFloat64{
					-1.416808473318998e+08,
					0,
					-4.885891344268399e+07,
				},
			},
		},
		SourceLabel: "XStructDepth2_XList_Any{F3: {XStructDepth3_OptXStructDepth2_Set_Float64{}, XList_XFloat64{-1.416808473318998e+08, 0, -4.885891344268399e+07}}}",
		Source: XStructDepth2_XList_Any{
			F3: XList_Any{
				XStructDepth3_OptXStructDepth2_Set_Float64{},
				XList_XFloat64{
					-1.416808473318998e+08,
					0,
					-4.885891344268399e+07,
				},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth2_XList_Any{F3: {XStructDepth3_OptXStructDepth2_Set_Float64{}, XList_XFloat64{-1.416808473318998e+08, 0, -4.885891344268399e+07}}}",
		Target: XStructDepth2_XList_Any{
			F3: XList_Any{
				XStructDepth3_OptXStructDepth2_Set_Float64{},
				XList_XFloat64{
					-1.416808473318998e+08,
					0,
					-4.885891344268399e+07,
				},
			},
		},
		SourceLabel: "XStructDepth2_All{F3: {XStructDepth3_OptXStructDepth2_Set_Float64{}, XList_XFloat64{-1.416808473318998e+08, 0, -4.885891344268399e+07}}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F3: XList_Any{
				XStructDepth3_OptXStructDepth2_Set_Float64{},
				XList_XFloat64{
					-1.416808473318998e+08,
					0,
					-4.885891344268399e+07,
				},
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth2_Set_Float64{}",
		Target:      XStructDepth2_Set_Float64{},
		SourceLabel: "XStructDepth2_Set_Float64{}",
		Source:      XStructDepth2_Set_Float64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_Set_Float64{}",
		Target:      XStructDepth2_Set_Float64{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_Set_Float64{}",
		Target:      XStructDepth2_Set_Float64{},
		SourceLabel: "?XStructDepth2_Set_Float64{}",
		Source:      &XStructDepth2_Set_Float64{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth2_Set_Float64{F4: {1.5}}",
		Target: XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		},
		SourceLabel: "XStructDepth2_Set_Float64{F4: {1.5}}",
		Source: XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth2_Set_Float64{F4: {1.5}}",
		Target: XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		},
		SourceLabel: "XStructDepth2_All{F4: {1.5}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth2_Set_Float64{F4: {-2.964258524832707e+09, -5.64685356748069e+08, 0}}",
		Target: XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				-2.964258524832707e+09: struct{}{},
				-5.64685356748069e+08:  struct{}{},
				0: struct{}{},
			},
		},
		SourceLabel: "XStructDepth2_Set_Float64{F4: {-2.964258524832707e+09, -5.64685356748069e+08, 0}}",
		Source: XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				-2.964258524832707e+09: struct{}{},
				-5.64685356748069e+08:  struct{}{},
				0: struct{}{},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth2_Set_Float64{F4: {-2.964258524832707e+09, -5.64685356748069e+08, 0}}",
		Target: XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				-2.964258524832707e+09: struct{}{},
				-5.64685356748069e+08:  struct{}{},
				0: struct{}{},
			},
		},
		SourceLabel: "?XStructDepth2_Set_Float64{F4: {-2.964258524832707e+09, -5.64685356748069e+08, 0}}",
		Source: &XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				-2.964258524832707e+09: struct{}{},
				-5.64685356748069e+08:  struct{}{},
				0: struct{}{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XSet_XEnumBcd{}",
		Target:      XStructDepth2_XSet_XEnumBcd{},
		SourceLabel: "XStructDepth2_XSet_XEnumBcd{}",
		Source:      XStructDepth2_XSet_XEnumBcd{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XSet_XEnumBcd{}",
		Target:      XStructDepth2_XSet_XEnumBcd{},
		SourceLabel: "XStructDepth2_All{}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XSet_XEnumBcd{}",
		Target:      XStructDepth2_XSet_XEnumBcd{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth2_XSet_XEnumBcd{F5: {D}}",
		Target: XStructDepth2_XSet_XEnumBcd{
			F5: XSet_XEnumBcd{
				XEnumBcdD: struct{}{},
			},
		},
		SourceLabel: "XStructDepth2_XSet_XEnumBcd{F5: {D}}",
		Source: XStructDepth2_XSet_XEnumBcd{
			F5: XSet_XEnumBcd{
				XEnumBcdD: struct{}{},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth2_XSet_XEnumBcd{F5: {D}}",
		Target: XStructDepth2_XSet_XEnumBcd{
			F5: XSet_XEnumBcd{
				XEnumBcdD: struct{}{},
			},
		},
		SourceLabel: "XStructDepth2_All{F5: {D}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F5: XSet_XEnumBcd{
				XEnumBcdD: struct{}{},
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth2_Map_Byte_Byte{}",
		Target:      XStructDepth2_Map_Byte_Byte{},
		SourceLabel: "XStructDepth2_Map_Byte_Byte{}",
		Source:      XStructDepth2_Map_Byte_Byte{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_Map_Byte_Byte{}",
		Target:      XStructDepth2_Map_Byte_Byte{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_Map_Byte_Byte{}",
		Target:      XStructDepth2_Map_Byte_Byte{},
		SourceLabel: "XStructDepth2_All{}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth2_Map_Byte_Byte{F6: {123: 123}}",
		Target: XStructDepth2_Map_Byte_Byte{
			F6: map[byte]byte{
				123: 123,
			},
		},
		SourceLabel: "XStructDepth2_Map_Byte_Byte{F6: {123: 123}}",
		Source: XStructDepth2_Map_Byte_Byte{
			F6: map[byte]byte{
				123: 123,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth2_Map_Byte_Byte{F6: {123: 123}}",
		Target: XStructDepth2_Map_Byte_Byte{
			F6: map[byte]byte{
				123: 123,
			},
		},
		SourceLabel: "XStructDepth2_All{F6: {123: 123}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F6: map[byte]byte{
				123: 123,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth2_Map_Byte_Byte{F6: {0: 85, 189: 200}}",
		Target: XStructDepth2_Map_Byte_Byte{
			F6: map[byte]byte{
				0:   85,
				189: 200,
			},
		},
		SourceLabel: "XStructDepth2_Map_Byte_Byte{F6: {0: 85, 189: 200}}",
		Source: XStructDepth2_Map_Byte_Byte{
			F6: map[byte]byte{
				0:   85,
				189: 200,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth2_Map_Byte_Byte{F6: {0: 85, 189: 200}}",
		Target: XStructDepth2_Map_Byte_Byte{
			F6: map[byte]byte{
				0:   85,
				189: 200,
			},
		},
		SourceLabel: "XStructDepth2_All{F6: {0: 85, 189: 200}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F6: map[byte]byte{
				0:   85,
				189: 200,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth2_Map_Uint32_Uint32{}",
		Target:      XStructDepth2_Map_Uint32_Uint32{},
		SourceLabel: "XStructDepth2_Map_Uint32_Uint32{}",
		Source:      XStructDepth2_Map_Uint32_Uint32{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_Map_Uint32_Uint32{}",
		Target:      XStructDepth2_Map_Uint32_Uint32{},
		SourceLabel: "XStructDepth2_All{}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_Map_Uint32_Uint32{}",
		Target:      XStructDepth2_Map_Uint32_Uint32{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth2_Map_Uint32_Uint32{F7: {123: 123}}",
		Target: XStructDepth2_Map_Uint32_Uint32{
			F7: map[uint32]uint32{
				123: 123,
			},
		},
		SourceLabel: "XStructDepth2_Map_Uint32_Uint32{F7: {123: 123}}",
		Source: XStructDepth2_Map_Uint32_Uint32{
			F7: map[uint32]uint32{
				123: 123,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth2_Map_Uint32_Uint32{F7: {123: 123}}",
		Target: XStructDepth2_Map_Uint32_Uint32{
			F7: map[uint32]uint32{
				123: 123,
			},
		},
		SourceLabel: "XStructDepth2_All{F7: {123: 123}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F7: map[uint32]uint32{
				123: 123,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth2_Map_Uint32_Uint32{F7: {0: 2532761821, 3848062770: 0, 703463747: 4101900733}}",
		Target: XStructDepth2_Map_Uint32_Uint32{
			F7: map[uint32]uint32{
				0:          2532761821,
				3848062770: 0,
				703463747:  4101900733,
			},
		},
		SourceLabel: "XStructDepth2_Map_Uint32_Uint32{F7: {0: 2532761821, 3848062770: 0, 703463747: 4101900733}}",
		Source: XStructDepth2_Map_Uint32_Uint32{
			F7: map[uint32]uint32{
				0:          2532761821,
				3848062770: 0,
				703463747:  4101900733,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth2_Map_Uint32_Uint32{F7: {0: 2532761821, 3848062770: 0, 703463747: 4101900733}}",
		Target: XStructDepth2_Map_Uint32_Uint32{
			F7: map[uint32]uint32{
				0:          2532761821,
				3848062770: 0,
				703463747:  4101900733,
			},
		},
		SourceLabel: "XStructDepth2_All{F7: {0: 2532761821, 3848062770: 0, 703463747: 4101900733}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F7: map[uint32]uint32{
				0:          2532761821,
				3848062770: 0,
				703463747:  4101900733,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XStructDepth1_All{}",
		Target: XStructDepth2_XStructDepth1_All{
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
		},
		SourceLabel: "XStructDepth2_XStructDepth1_All{}",
		Source: XStructDepth2_XStructDepth1_All{
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XStructDepth1_All{}",
		Target: XStructDepth2_XStructDepth1_All{
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
		},
		SourceLabel: "XStructDepth2_All{}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XStructDepth1_All{}",
		Target: XStructDepth2_XStructDepth1_All{
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
		},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth2_XStructDepth1_All{F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XStructDepth2_XStructDepth1_All{
			F8: XStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
		SourceLabel: "XStructDepth2_XStructDepth1_All{F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XStructDepth2_XStructDepth1_All{
			F8: XStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth2_XStructDepth1_All{F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XStructDepth2_XStructDepth1_All{
			F8: XStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
		},
		SourceLabel: "XStructDepth2_All{F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth2_XStructDepth1_All{F8: {F3: \"cdeΔΘΠΣΦ王普澤世\", F6: 70, F9: C, F12: {}, F13: 53713, F14: 25409, F17: 1167835684842304517, F18: 10758932550773047868, F19: -16, F20: -49, F22: -8426, F23: -1057855797, F24: 12186221, F25: -2931071009840800, F26: -3678742483845502331, F28: 2.4752714e+09, F30: 6.133162978943454e+08, F31: {}, F32: {Id: \"cdeΔΘΠΣΦ王普澤世界\", Msg: \"deΔΘΠΣΦ\"}}}",
		Target: XStructDepth2_XStructDepth1_All{
			F8: XStructDepth1_All{
				F3:  "cdeΔΘΠΣΦ王普澤世",
				F5:  vdl.AnyType,
				F6:  70,
				F9:  XEnumBcdC,
				F12: verror.FromWire(&vdl.WireError{}),
				F13: 53713,
				F14: 25409,
				F17: 1167835684842304517,
				F18: 10758932550773047868,
				F19: -16,
				F20: -49,
				F22: -8426,
				F23: -1057855797,
				F24: 12186221,
				F25: -2931071009840800,
				F26: -3678742483845502331,
				F28: 2.4752714e+09,
				F30: 6.133162978943454e+08,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "cdeΔΘΠΣΦ王普澤世界",
					Msg: "deΔΘΠΣΦ",
				},
			},
		},
		SourceLabel: "XStructDepth2_XStructDepth1_All{F8: {F3: \"cdeΔΘΠΣΦ王普澤世\", F6: 70, F9: C, F12: {}, F13: 53713, F14: 25409, F17: 1167835684842304517, F18: 10758932550773047868, F19: -16, F20: -49, F22: -8426, F23: -1057855797, F24: 12186221, F25: -2931071009840800, F26: -3678742483845502331, F28: 2.4752714e+09, F30: 6.133162978943454e+08, F31: {}, F32: {Id: \"cdeΔΘΠΣΦ王普澤世界\", Msg: \"deΔΘΠΣΦ\"}}}",
		Source: XStructDepth2_XStructDepth1_All{
			F8: XStructDepth1_All{
				F3:  "cdeΔΘΠΣΦ王普澤世",
				F5:  vdl.AnyType,
				F6:  70,
				F9:  XEnumBcdC,
				F12: verror.FromWire(&vdl.WireError{}),
				F13: 53713,
				F14: 25409,
				F17: 1167835684842304517,
				F18: 10758932550773047868,
				F19: -16,
				F20: -49,
				F22: -8426,
				F23: -1057855797,
				F24: 12186221,
				F25: -2931071009840800,
				F26: -3678742483845502331,
				F28: 2.4752714e+09,
				F30: 6.133162978943454e+08,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "cdeΔΘΠΣΦ王普澤世界",
					Msg: "deΔΘΠΣΦ",
				},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth2_XStructDepth1_All{F8: {F3: \"cdeΔΘΠΣΦ王普澤世\", F6: 70, F9: C, F12: {}, F13: 53713, F14: 25409, F17: 1167835684842304517, F18: 10758932550773047868, F19: -16, F20: -49, F22: -8426, F23: -1057855797, F24: 12186221, F25: -2931071009840800, F26: -3678742483845502331, F28: 2.4752714e+09, F30: 6.133162978943454e+08, F31: {}, F32: {Id: \"cdeΔΘΠΣΦ王普澤世界\", Msg: \"deΔΘΠΣΦ\"}}}",
		Target: XStructDepth2_XStructDepth1_All{
			F8: XStructDepth1_All{
				F3:  "cdeΔΘΠΣΦ王普澤世",
				F5:  vdl.AnyType,
				F6:  70,
				F9:  XEnumBcdC,
				F12: verror.FromWire(&vdl.WireError{}),
				F13: 53713,
				F14: 25409,
				F17: 1167835684842304517,
				F18: 10758932550773047868,
				F19: -16,
				F20: -49,
				F22: -8426,
				F23: -1057855797,
				F24: 12186221,
				F25: -2931071009840800,
				F26: -3678742483845502331,
				F28: 2.4752714e+09,
				F30: 6.133162978943454e+08,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "cdeΔΘΠΣΦ王普澤世界",
					Msg: "deΔΘΠΣΦ",
				},
			},
		},
		SourceLabel: "XStructDepth2_All{F8: {F3: \"cdeΔΘΠΣΦ王普澤世\", F6: 70, F9: C, F12: {}, F13: 53713, F14: 25409, F17: 1167835684842304517, F18: 10758932550773047868, F19: -16, F20: -49, F22: -8426, F23: -1057855797, F24: 12186221, F25: -2931071009840800, F26: -3678742483845502331, F28: 2.4752714e+09, F30: 6.133162978943454e+08, F31: {}, F32: {Id: \"cdeΔΘΠΣΦ王普澤世界\", Msg: \"deΔΘΠΣΦ\"}}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F3:  "cdeΔΘΠΣΦ王普澤世",
				F5:  vdl.AnyType,
				F6:  70,
				F9:  XEnumBcdC,
				F12: verror.FromWire(&vdl.WireError{}),
				F13: 53713,
				F14: 25409,
				F17: 1167835684842304517,
				F18: 10758932550773047868,
				F19: -16,
				F20: -49,
				F22: -8426,
				F23: -1057855797,
				F24: 12186221,
				F25: -2931071009840800,
				F26: -3678742483845502331,
				F28: 2.4752714e+09,
				F30: 6.133162978943454e+08,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "cdeΔΘΠΣΦ王普澤世界",
					Msg: "deΔΘΠΣΦ",
				},
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XStructDepth1_Bool{}",
		Target:      XStructDepth2_XStructDepth1_Bool{},
		SourceLabel: "XStructDepth2_XStructDepth1_Bool{}",
		Source:      XStructDepth2_XStructDepth1_Bool{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XStructDepth1_Bool{}",
		Target:      XStructDepth2_XStructDepth1_Bool{},
		SourceLabel: "XStructDepth2_All{}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XStructDepth1_Bool{}",
		Target:      XStructDepth2_XStructDepth1_Bool{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth2_XStructDepth1_Bool{F9: {F1: true}}",
		Target: XStructDepth2_XStructDepth1_Bool{
			F9: XStructDepth1_Bool{
				F1: true,
			},
		},
		SourceLabel: "XStructDepth2_XStructDepth1_Bool{F9: {F1: true}}",
		Source: XStructDepth2_XStructDepth1_Bool{
			F9: XStructDepth1_Bool{
				F1: true,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth2_XStructDepth1_Bool{F9: {F1: true}}",
		Target: XStructDepth2_XStructDepth1_Bool{
			F9: XStructDepth1_Bool{
				F1: true,
			},
		},
		SourceLabel: "XStructDepth2_All{F9: {F1: true}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F9: XStructDepth1_Bool{
				F1: true,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XUnionDepth1_All{}",
		Target: XStructDepth2_XUnionDepth1_All{
			F10: XUnionDepth1_AllF0{},
		},
		SourceLabel: "XStructDepth2_XUnionDepth1_All{}",
		Source: XStructDepth2_XUnionDepth1_All{
			F10: XUnionDepth1_AllF0{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XUnionDepth1_All{}",
		Target: XStructDepth2_XUnionDepth1_All{
			F10: XUnionDepth1_AllF0{},
		},
		SourceLabel: "XStructDepth2_All{}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XUnionDepth1_All{}",
		Target: XStructDepth2_XUnionDepth1_All{
			F10: XUnionDepth1_AllF0{},
		},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth2_XUnionDepth1_All{F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XStructDepth2_XUnionDepth1_All{
			F10: XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
		SourceLabel: "XStructDepth2_XUnionDepth1_All{F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XStructDepth2_XUnionDepth1_All{
			F10: XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth2_XUnionDepth1_All{F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XStructDepth2_XUnionDepth1_All{
			F10: XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
		},
		SourceLabel: "XStructDepth2_All{F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth2_XUnionDepth1_All{F10: {F26: -368579100129697723}}",
		Target: XStructDepth2_XUnionDepth1_All{
			F10: XUnionDepth1_AllF26{-368579100129697723},
		},
		SourceLabel: "XStructDepth2_XUnionDepth1_All{F10: {F26: -368579100129697723}}",
		Source: XStructDepth2_XUnionDepth1_All{
			F10: XUnionDepth1_AllF26{-368579100129697723},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth2_XUnionDepth1_All{F10: {F26: -368579100129697723}}",
		Target: XStructDepth2_XUnionDepth1_All{
			F10: XUnionDepth1_AllF26{-368579100129697723},
		},
		SourceLabel: "XStructDepth2_All{F10: {F26: -368579100129697723}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF26{-368579100129697723},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XUnionDepth1_Float64{}",
		Target: XStructDepth2_XUnionDepth1_Float64{
			F11: XUnionDepth1_Float64F29{},
		},
		SourceLabel: "XStructDepth2_XUnionDepth1_Float64{}",
		Source: XStructDepth2_XUnionDepth1_Float64{
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XUnionDepth1_Float64{}",
		Target: XStructDepth2_XUnionDepth1_Float64{
			F11: XUnionDepth1_Float64F29{},
		},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_XUnionDepth1_Float64{}",
		Target: XStructDepth2_XUnionDepth1_Float64{
			F11: XUnionDepth1_Float64F29{},
		},
		SourceLabel: "XStructDepth2_All{}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth2_XUnionDepth1_Float64{F11: {F29: 1.5}}",
		Target: XStructDepth2_XUnionDepth1_Float64{
			F11: XUnionDepth1_Float64F29{1.5},
		},
		SourceLabel: "XStructDepth2_XUnionDepth1_Float64{F11: {F29: 1.5}}",
		Source: XStructDepth2_XUnionDepth1_Float64{
			F11: XUnionDepth1_Float64F29{1.5},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth2_XUnionDepth1_Float64{F11: {F29: 1.5}}",
		Target: XStructDepth2_XUnionDepth1_Float64{
			F11: XUnionDepth1_Float64F29{1.5},
		},
		SourceLabel: "XStructDepth2_All{F11: {F29: 1.5}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{1.5},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth2_XUnionDepth1_Float64{F11: {F29: 1.2971103664867308e+07}}",
		Target: XStructDepth2_XUnionDepth1_Float64{
			F11: XUnionDepth1_Float64F29{1.2971103664867308e+07},
		},
		SourceLabel: "XStructDepth2_XUnionDepth1_Float64{F11: {F29: 1.2971103664867308e+07}}",
		Source: XStructDepth2_XUnionDepth1_Float64{
			F11: XUnionDepth1_Float64F29{1.2971103664867308e+07},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth2_XUnionDepth1_Float64{F11: {F29: 1.2971103664867308e+07}}",
		Target: XStructDepth2_XUnionDepth1_Float64{
			F11: XUnionDepth1_Float64F29{1.2971103664867308e+07},
		},
		SourceLabel: "XStructDepth2_All{F11: {F29: 1.2971103664867308e+07}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{1.2971103664867308e+07},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth2_OptXStructDepth1_XEnumBcd{}",
		Target:      XStructDepth2_OptXStructDepth1_XEnumBcd{},
		SourceLabel: "XStructDepth2_OptXStructDepth1_XEnumBcd{}",
		Source:      XStructDepth2_OptXStructDepth1_XEnumBcd{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_OptXStructDepth1_XEnumBcd{}",
		Target:      XStructDepth2_OptXStructDepth1_XEnumBcd{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_OptXStructDepth1_XEnumBcd{}",
		Target:      XStructDepth2_OptXStructDepth1_XEnumBcd{},
		SourceLabel: "XStructDepth2_All{}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth2_OptXStructDepth1_XEnumBcd{F12: {F9: D}}",
		Target: XStructDepth2_OptXStructDepth1_XEnumBcd{
			F12: &XStructDepth1_XEnumBcd{
				F9: XEnumBcdD,
			},
		},
		SourceLabel: "XStructDepth2_OptXStructDepth1_XEnumBcd{F12: {F9: D}}",
		Source: XStructDepth2_OptXStructDepth1_XEnumBcd{
			F12: &XStructDepth1_XEnumBcd{
				F9: XEnumBcdD,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth2_OptXStructDepth1_XEnumBcd{F12: {F9: D}}",
		Target: XStructDepth2_OptXStructDepth1_XEnumBcd{
			F12: &XStructDepth1_XEnumBcd{
				F9: XEnumBcdD,
			},
		},
		SourceLabel: "XStructDepth2_All{F12: {F9: D}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
			F12: &XStructDepth1_XEnumBcd{
				F9: XEnumBcdD,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth2_OptXStructDepth1_XUint16{}",
		Target:      XStructDepth2_OptXStructDepth1_XUint16{},
		SourceLabel: "XStructDepth2_OptXStructDepth1_XUint16{}",
		Source:      XStructDepth2_OptXStructDepth1_XUint16{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_OptXStructDepth1_XUint16{}",
		Target:      XStructDepth2_OptXStructDepth1_XUint16{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth2_OptXStructDepth1_XUint16{}",
		Target:      XStructDepth2_OptXStructDepth1_XUint16{},
		SourceLabel: "XStructDepth2_All{}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth2_OptXStructDepth1_XUint16{F13: {F14: 123}}",
		Target: XStructDepth2_OptXStructDepth1_XUint16{
			F13: &XStructDepth1_XUint16{
				F14: 123,
			},
		},
		SourceLabel: "XStructDepth2_OptXStructDepth1_XUint16{F13: {F14: 123}}",
		Source: XStructDepth2_OptXStructDepth1_XUint16{
			F13: &XStructDepth1_XUint16{
				F14: 123,
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth2_OptXStructDepth1_XUint16{F13: {F14: 123}}",
		Target: XStructDepth2_OptXStructDepth1_XUint16{
			F13: &XStructDepth1_XUint16{
				F14: 123,
			},
		},
		SourceLabel: "XStructDepth2_All{F13: {F14: 123}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
			F13: &XStructDepth1_XUint16{
				F14: 123,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth2_OptXStructDepth1_XUint16{F13: {F14: 57300}}",
		Target: XStructDepth2_OptXStructDepth1_XUint16{
			F13: &XStructDepth1_XUint16{
				F14: 57300,
			},
		},
		SourceLabel: "XStructDepth2_OptXStructDepth1_XUint16{F13: {F14: 57300}}",
		Source: XStructDepth2_OptXStructDepth1_XUint16{
			F13: &XStructDepth1_XUint16{
				F14: 57300,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth2_OptXStructDepth1_XUint16{F13: {F14: 57300}}",
		Target: XStructDepth2_OptXStructDepth1_XUint16{
			F13: &XStructDepth1_XUint16{
				F14: 57300,
			},
		},
		SourceLabel: "XStructDepth2_All{F13: {F14: 57300}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
			F13: &XStructDepth1_XUint16{
				F14: 57300,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_All{F0: {}}",
		Target:      XUnionDepth2_All(XUnionDepth2_AllF0{}),
		SourceLabel: "XUnionDepth2_All{F0: {}}",
		Source:      XUnionDepth2_All(XUnionDepth2_AllF0{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_All{F0: {}}",
		Target:      XUnionDepth2_All(XUnionDepth2_AllF0{}),
		SourceLabel: "XUnionDepth1_Any{F0: XArray1_String{}}",
		Source:      XUnionDepth1_Any(XUnionDepth1_AnyF0{XArray1_String{}}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_All{F0: {}}",
		Target:      XUnionDepth2_All(XUnionDepth2_AllF0{}),
		SourceLabel: "XUnionDepth2_XArray1_String{F0: {}}",
		Source:      XUnionDepth2_XArray1_String(XUnionDepth2_XArray1_StringF0{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth2_All{F13: {F28: 1.5}}",
		Target: XUnionDepth2_All(XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
			F28: 1.5,
		}}),
		SourceLabel: "XUnionDepth2_All{F13: {F28: 1.5}}",
		Source: XUnionDepth2_All(XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
			F28: 1.5,
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth2_All{F13: {F28: 1.5}}",
		Target: XUnionDepth2_All(XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
			F28: 1.5,
		}}),
		SourceLabel: "XUnionDepth2_OptXStructDepth1_XFloat32{F13: {F28: 1.5}}",
		Source: XUnionDepth2_OptXStructDepth1_XFloat32(XUnionDepth2_OptXStructDepth1_XFloat32F13{&XStructDepth1_XFloat32{
			F28: 1.5,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth2_All{F8: {}}",
		Target: XUnionDepth2_All(XUnionDepth2_AllF8{XStructDepth1_All{
			F5: vdl.AnyType,
		}}),
		SourceLabel: "XUnionDepth2_All{F8: {}}",
		Source: XUnionDepth2_All(XUnionDepth2_AllF8{XStructDepth1_All{
			F5: vdl.AnyType,
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth2_All{F8: {}}",
		Target: XUnionDepth2_All(XUnionDepth2_AllF8{XStructDepth1_All{
			F5: vdl.AnyType,
		}}),
		SourceLabel: "XUnionDepth2_XStructDepth1_All{F8: {}}",
		Source: XUnionDepth2_XStructDepth1_All(XUnionDepth2_XStructDepth1_AllF8{XStructDepth1_All{
			F5: vdl.AnyType,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XArray1_String{F0: {}}",
		Target:      XUnionDepth2_XArray1_String(XUnionDepth2_XArray1_StringF0{}),
		SourceLabel: "XUnionDepth2_XArray1_String{F0: {}}",
		Source:      XUnionDepth2_XArray1_String(XUnionDepth2_XArray1_StringF0{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XArray1_String{F0: {}}",
		Target:      XUnionDepth2_XArray1_String(XUnionDepth2_XArray1_StringF0{}),
		SourceLabel: "XUnionDepth1_All{F0: XArray1_String{}}",
		Source:      XUnionDepth1_All(XUnionDepth1_AllF0{XArray1_String{}}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XArray1_String{F0: {}}",
		Target:      XUnionDepth2_XArray1_String(XUnionDepth2_XArray1_StringF0{}),
		SourceLabel: "XUnionDepth2_All{F0: {}}",
		Source:      XUnionDepth2_All(XUnionDepth2_AllF0{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth2_XArray1_String{F0: {\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XUnionDepth2_XArray1_String(XUnionDepth2_XArray1_StringF0{XArray1_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		}}),
		SourceLabel: "XUnionDepth2_XArray1_String{F0: {\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XUnionDepth2_XArray1_String(XUnionDepth2_XArray1_StringF0{XArray1_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth2_XArray1_String{F0: {\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Target: XUnionDepth2_XArray1_String(XUnionDepth2_XArray1_StringF0{XArray1_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		}}),
		SourceLabel: "XUnionDepth1_Any{F0: XArray1_String{\"abcdeΔΘΠΣΦ王普澤世界\"}}",
		Source: XUnionDepth1_Any(XUnionDepth1_AnyF0{XArray1_String{
			"abcdeΔΘΠΣΦ王普澤世界",
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth2_XArray1_String{F0: {\"ΔΘΠΣΦ王普澤\"}}",
		Target: XUnionDepth2_XArray1_String(XUnionDepth2_XArray1_StringF0{XArray1_String{
			"ΔΘΠΣΦ王普澤",
		}}),
		SourceLabel: "XUnionDepth2_XArray1_String{F0: {\"ΔΘΠΣΦ王普澤\"}}",
		Source: XUnionDepth2_XArray1_String(XUnionDepth2_XArray1_StringF0{XArray1_String{
			"ΔΘΠΣΦ王普澤",
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth2_XArray1_String{F0: {\"ΔΘΠΣΦ王普澤\"}}",
		Target: XUnionDepth2_XArray1_String(XUnionDepth2_XArray1_StringF0{XArray1_String{
			"ΔΘΠΣΦ王普澤",
		}}),
		SourceLabel: "XUnionDepth1_All{F0: XArray1_String{\"ΔΘΠΣΦ王普澤\"}}",
		Source: XUnionDepth1_All(XUnionDepth1_AllF0{XArray1_String{
			"ΔΘΠΣΦ王普澤",
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XArray2_XByte{F1: \"\\x00\\x00\"}",
		Target:      XUnionDepth2_XArray2_XByte(XUnionDepth2_XArray2_XByteF1{}),
		SourceLabel: "XUnionDepth2_XArray2_XByte{F1: \"\\x00\\x00\"}",
		Source:      XUnionDepth2_XArray2_XByte(XUnionDepth2_XArray2_XByteF1{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XArray2_XByte{F1: \"\\x00\\x00\"}",
		Target:      XUnionDepth2_XArray2_XByte(XUnionDepth2_XArray2_XByteF1{}),
		SourceLabel: "XUnionDepth2_All{F1: \"\\x00\\x00\"}",
		Source:      XUnionDepth2_All(XUnionDepth2_AllF1{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth2_XArray2_XByte{F1: \"{{\"}",
		Target: XUnionDepth2_XArray2_XByte(XUnionDepth2_XArray2_XByteF1{XArray2_XByte{
			123,
			123,
		}}),
		SourceLabel: "XUnionDepth2_XArray2_XByte{F1: \"{{\"}",
		Source: XUnionDepth2_XArray2_XByte(XUnionDepth2_XArray2_XByteF1{XArray2_XByte{
			123,
			123,
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth2_XArray2_XByte{F1: \"{{\"}",
		Target: XUnionDepth2_XArray2_XByte(XUnionDepth2_XArray2_XByteF1{XArray2_XByte{
			123,
			123,
		}}),
		SourceLabel: "XUnionDepth2_All{F1: \"{{\"}",
		Source: XUnionDepth2_All(XUnionDepth2_AllF1{XArray2_XByte{
			123,
			123,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth2_XArray2_XByte{F1: \"\\xc4'\"}",
		Target: XUnionDepth2_XArray2_XByte(XUnionDepth2_XArray2_XByteF1{XArray2_XByte{
			196,
			39,
		}}),
		SourceLabel: "XUnionDepth2_XArray2_XByte{F1: \"\\xc4'\"}",
		Source: XUnionDepth2_XArray2_XByte(XUnionDepth2_XArray2_XByteF1{XArray2_XByte{
			196,
			39,
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth2_XArray2_XByte{F1: \"\\xc4'\"}",
		Target: XUnionDepth2_XArray2_XByte(XUnionDepth2_XArray2_XByteF1{XArray2_XByte{
			196,
			39,
		}}),
		SourceLabel: "XUnionDepth2_All{F1: \"\\xc4'\"}",
		Source: XUnionDepth2_All(XUnionDepth2_AllF1{XArray2_XByte{
			196,
			39,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XList_XByte{F2: \"\"}",
		Target:      XUnionDepth2_XList_XByte(XUnionDepth2_XList_XByteF2{}),
		SourceLabel: "XUnionDepth2_XList_XByte{F2: \"\"}",
		Source:      XUnionDepth2_XList_XByte(XUnionDepth2_XList_XByteF2{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XList_XByte{F2: \"\"}",
		Target:      XUnionDepth2_XList_XByte(XUnionDepth2_XList_XByteF2{}),
		SourceLabel: "XUnionDepth2_All{F2: \"\"}",
		Source:      XUnionDepth2_All(XUnionDepth2_AllF2{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth2_XList_XByte{F2: \"{\"}",
		Target:      XUnionDepth2_XList_XByte(XUnionDepth2_XList_XByteF2{XList_XByte("{")}),
		SourceLabel: "XUnionDepth2_XList_XByte{F2: \"{\"}",
		Source:      XUnionDepth2_XList_XByte(XUnionDepth2_XList_XByteF2{XList_XByte("{")}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth2_XList_XByte{F2: \"{\"}",
		Target:      XUnionDepth2_XList_XByte(XUnionDepth2_XList_XByteF2{XList_XByte("{")}),
		SourceLabel: "XUnionDepth2_All{F2: \"{\"}",
		Source:      XUnionDepth2_All(XUnionDepth2_AllF2{XList_XByte("{")}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth2_XList_XByte{F2: \"UY\\x00\"}",
		Target:      XUnionDepth2_XList_XByte(XUnionDepth2_XList_XByteF2{XList_XByte("UY\x00")}),
		SourceLabel: "XUnionDepth2_XList_XByte{F2: \"UY\\x00\"}",
		Source:      XUnionDepth2_XList_XByte(XUnionDepth2_XList_XByteF2{XList_XByte("UY\x00")}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth2_XList_XByte{F2: \"UY\\x00\"}",
		Target:      XUnionDepth2_XList_XByte(XUnionDepth2_XList_XByteF2{XList_XByte("UY\x00")}),
		SourceLabel: "XUnionDepth2_All{F2: \"UY\\x00\"}",
		Source:      XUnionDepth2_All(XUnionDepth2_AllF2{XList_XByte("UY\x00")}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XList_OptXNamedError{F3: {}}",
		Target:      XUnionDepth2_XList_OptXNamedError(XUnionDepth2_XList_OptXNamedErrorF3{}),
		SourceLabel: "XUnionDepth2_XList_OptXNamedError{F3: {}}",
		Source:      XUnionDepth2_XList_OptXNamedError(XUnionDepth2_XList_OptXNamedErrorF3{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XList_OptXNamedError{F3: {}}",
		Target:      XUnionDepth2_XList_OptXNamedError(XUnionDepth2_XList_OptXNamedErrorF3{}),
		SourceLabel: "XUnionDepth2_All{F3: {}}",
		Source:      XUnionDepth2_All(XUnionDepth2_AllF3{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth2_XList_OptXNamedError{F3: {{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XUnionDepth2_XList_OptXNamedError(XUnionDepth2_XList_OptXNamedErrorF3{XList_OptXNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		}}),
		SourceLabel: "XUnionDepth2_XList_OptXNamedError{F3: {{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XUnionDepth2_XList_OptXNamedError(XUnionDepth2_XList_OptXNamedErrorF3{XList_OptXNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth2_XList_OptXNamedError{F3: {{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XUnionDepth2_XList_OptXNamedError(XUnionDepth2_XList_OptXNamedErrorF3{XList_OptXNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		}}),
		SourceLabel: "XUnionDepth2_All{F3: {{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XUnionDepth2_All(XUnionDepth2_AllF3{XList_OptXNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth2_XList_OptXNamedError{F3: {{Id: \"bcdeΔΘΠΣΦ王普澤世\", Msg: \"eΔΘΠΣΦ王普澤世\"}, {}}}",
		Target: XUnionDepth2_XList_OptXNamedError(XUnionDepth2_XList_OptXNamedErrorF3{XList_OptXNamedError{
			{
				Id:  "bcdeΔΘΠΣΦ王普澤世",
				Msg: "eΔΘΠΣΦ王普澤世",
			},
			{},
		}}),
		SourceLabel: "XUnionDepth2_XList_OptXNamedError{F3: {{Id: \"bcdeΔΘΠΣΦ王普澤世\", Msg: \"eΔΘΠΣΦ王普澤世\"}, {}}}",
		Source: XUnionDepth2_XList_OptXNamedError(XUnionDepth2_XList_OptXNamedErrorF3{XList_OptXNamedError{
			{
				Id:  "bcdeΔΘΠΣΦ王普澤世",
				Msg: "eΔΘΠΣΦ王普澤世",
			},
			{},
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth2_XList_OptXNamedError{F3: {{Id: \"bcdeΔΘΠΣΦ王普澤世\", Msg: \"eΔΘΠΣΦ王普澤世\"}, {}}}",
		Target: XUnionDepth2_XList_OptXNamedError(XUnionDepth2_XList_OptXNamedErrorF3{XList_OptXNamedError{
			{
				Id:  "bcdeΔΘΠΣΦ王普澤世",
				Msg: "eΔΘΠΣΦ王普澤世",
			},
			{},
		}}),
		SourceLabel: "XUnionDepth2_All{F3: {{Id: \"bcdeΔΘΠΣΦ王普澤世\", Msg: \"eΔΘΠΣΦ王普澤世\"}, {}}}",
		Source: XUnionDepth2_All(XUnionDepth2_AllF3{XList_OptXNamedError{
			{
				Id:  "bcdeΔΘΠΣΦ王普澤世",
				Msg: "eΔΘΠΣΦ王普澤世",
			},
			{},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XSet_XBool{F4: {}}",
		Target:      XUnionDepth2_XSet_XBool(XUnionDepth2_XSet_XBoolF4{}),
		SourceLabel: "XUnionDepth2_XSet_XBool{F4: {}}",
		Source:      XUnionDepth2_XSet_XBool(XUnionDepth2_XSet_XBoolF4{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XSet_XBool{F4: {}}",
		Target:      XUnionDepth2_XSet_XBool(XUnionDepth2_XSet_XBoolF4{}),
		SourceLabel: "XUnionDepth2_All{F4: {}}",
		Source:      XUnionDepth2_All(XUnionDepth2_AllF4{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth2_XSet_XBool{F4: {true}}",
		Target: XUnionDepth2_XSet_XBool(XUnionDepth2_XSet_XBoolF4{XSet_XBool{
			true: struct{}{},
		}}),
		SourceLabel: "XUnionDepth2_XSet_XBool{F4: {true}}",
		Source: XUnionDepth2_XSet_XBool(XUnionDepth2_XSet_XBoolF4{XSet_XBool{
			true: struct{}{},
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth2_XSet_XBool{F4: {true}}",
		Target: XUnionDepth2_XSet_XBool(XUnionDepth2_XSet_XBoolF4{XSet_XBool{
			true: struct{}{},
		}}),
		SourceLabel: "XUnionDepth2_All{F4: {true}}",
		Source: XUnionDepth2_All(XUnionDepth2_AllF4{XSet_XBool{
			true: struct{}{},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XSet_XNamedError{F5: {}}",
		Target:      XUnionDepth2_XSet_XNamedError(XUnionDepth2_XSet_XNamedErrorF5{}),
		SourceLabel: "XUnionDepth2_XSet_XNamedError{F5: {}}",
		Source:      XUnionDepth2_XSet_XNamedError(XUnionDepth2_XSet_XNamedErrorF5{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XSet_XNamedError{F5: {}}",
		Target:      XUnionDepth2_XSet_XNamedError(XUnionDepth2_XSet_XNamedErrorF5{}),
		SourceLabel: "XUnionDepth2_All{F5: {}}",
		Source:      XUnionDepth2_All(XUnionDepth2_AllF5{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth2_XSet_XNamedError{F5: {{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XUnionDepth2_XSet_XNamedError(XUnionDepth2_XSet_XNamedErrorF5{XSet_XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		}}),
		SourceLabel: "XUnionDepth2_XSet_XNamedError{F5: {{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XUnionDepth2_XSet_XNamedError(XUnionDepth2_XSet_XNamedErrorF5{XSet_XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth2_XSet_XNamedError{F5: {{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XUnionDepth2_XSet_XNamedError(XUnionDepth2_XSet_XNamedErrorF5{XSet_XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		}}),
		SourceLabel: "XUnionDepth2_All{F5: {{Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XUnionDepth2_All(XUnionDepth2_AllF5{XSet_XNamedError{
			{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth2_XSet_XNamedError{F5: {{Id: \"eΔΘΠΣΦ\", Msg: \"abcdeΔΘΠΣΦ\"}, {Id: \"Π\", Msg: \"cdeΔΘΠΣΦ\"}, {Id: \"ΠΣΦ王普澤\", Msg: \"deΔΘΠΣΦ王普澤世\"}}}",
		Target: XUnionDepth2_XSet_XNamedError(XUnionDepth2_XSet_XNamedErrorF5{XSet_XNamedError{
			{
				Id:  "eΔΘΠΣΦ",
				Msg: "abcdeΔΘΠΣΦ",
			}: struct{}{},
			{
				Id:  "Π",
				Msg: "cdeΔΘΠΣΦ",
			}: struct{}{},
			{
				Id:  "ΠΣΦ王普澤",
				Msg: "deΔΘΠΣΦ王普澤世",
			}: struct{}{},
		}}),
		SourceLabel: "XUnionDepth2_XSet_XNamedError{F5: {{Id: \"eΔΘΠΣΦ\", Msg: \"abcdeΔΘΠΣΦ\"}, {Id: \"Π\", Msg: \"cdeΔΘΠΣΦ\"}, {Id: \"ΠΣΦ王普澤\", Msg: \"deΔΘΠΣΦ王普澤世\"}}}",
		Source: XUnionDepth2_XSet_XNamedError(XUnionDepth2_XSet_XNamedErrorF5{XSet_XNamedError{
			{
				Id:  "eΔΘΠΣΦ",
				Msg: "abcdeΔΘΠΣΦ",
			}: struct{}{},
			{
				Id:  "Π",
				Msg: "cdeΔΘΠΣΦ",
			}: struct{}{},
			{
				Id:  "ΠΣΦ王普澤",
				Msg: "deΔΘΠΣΦ王普澤世",
			}: struct{}{},
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth2_XSet_XNamedError{F5: {{Id: \"eΔΘΠΣΦ\", Msg: \"abcdeΔΘΠΣΦ\"}, {Id: \"Π\", Msg: \"cdeΔΘΠΣΦ\"}, {Id: \"ΠΣΦ王普澤\", Msg: \"deΔΘΠΣΦ王普澤世\"}}}",
		Target: XUnionDepth2_XSet_XNamedError(XUnionDepth2_XSet_XNamedErrorF5{XSet_XNamedError{
			{
				Id:  "eΔΘΠΣΦ",
				Msg: "abcdeΔΘΠΣΦ",
			}: struct{}{},
			{
				Id:  "Π",
				Msg: "cdeΔΘΠΣΦ",
			}: struct{}{},
			{
				Id:  "ΠΣΦ王普澤",
				Msg: "deΔΘΠΣΦ王普澤世",
			}: struct{}{},
		}}),
		SourceLabel: "XUnionDepth2_All{F5: {{Id: \"eΔΘΠΣΦ\", Msg: \"abcdeΔΘΠΣΦ\"}, {Id: \"Π\", Msg: \"cdeΔΘΠΣΦ\"}, {Id: \"ΠΣΦ王普澤\", Msg: \"deΔΘΠΣΦ王普澤世\"}}}",
		Source: XUnionDepth2_All(XUnionDepth2_AllF5{XSet_XNamedError{
			{
				Id:  "eΔΘΠΣΦ",
				Msg: "abcdeΔΘΠΣΦ",
			}: struct{}{},
			{
				Id:  "Π",
				Msg: "cdeΔΘΠΣΦ",
			}: struct{}{},
			{
				Id:  "ΠΣΦ王普澤",
				Msg: "deΔΘΠΣΦ王普澤世",
			}: struct{}{},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_Map_XBool_XBool{F6: {}}",
		Target:      XUnionDepth2_Map_XBool_XBool(XUnionDepth2_Map_XBool_XBoolF6{}),
		SourceLabel: "XUnionDepth2_Map_XBool_XBool{F6: {}}",
		Source:      XUnionDepth2_Map_XBool_XBool(XUnionDepth2_Map_XBool_XBoolF6{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_Map_XBool_XBool{F6: {}}",
		Target:      XUnionDepth2_Map_XBool_XBool(XUnionDepth2_Map_XBool_XBoolF6{}),
		SourceLabel: "XUnionDepth2_All{F6: {}}",
		Source:      XUnionDepth2_All(XUnionDepth2_AllF6{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth2_Map_XBool_XBool{F6: {true: true}}",
		Target: XUnionDepth2_Map_XBool_XBool(XUnionDepth2_Map_XBool_XBoolF6{map[XBool]XBool{
			true: true,
		}}),
		SourceLabel: "XUnionDepth2_Map_XBool_XBool{F6: {true: true}}",
		Source: XUnionDepth2_Map_XBool_XBool(XUnionDepth2_Map_XBool_XBoolF6{map[XBool]XBool{
			true: true,
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth2_Map_XBool_XBool{F6: {true: true}}",
		Target: XUnionDepth2_Map_XBool_XBool(XUnionDepth2_Map_XBool_XBoolF6{map[XBool]XBool{
			true: true,
		}}),
		SourceLabel: "XUnionDepth2_All{F6: {true: true}}",
		Source: XUnionDepth2_All(XUnionDepth2_AllF6{map[XBool]XBool{
			true: true,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XMap_XBool_XBool{F7: {}}",
		Target:      XUnionDepth2_XMap_XBool_XBool(XUnionDepth2_XMap_XBool_XBoolF7{}),
		SourceLabel: "XUnionDepth2_XMap_XBool_XBool{F7: {}}",
		Source:      XUnionDepth2_XMap_XBool_XBool(XUnionDepth2_XMap_XBool_XBoolF7{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XMap_XBool_XBool{F7: {}}",
		Target:      XUnionDepth2_XMap_XBool_XBool(XUnionDepth2_XMap_XBool_XBoolF7{}),
		SourceLabel: "XUnionDepth2_All{F7: {}}",
		Source:      XUnionDepth2_All(XUnionDepth2_AllF7{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth2_XMap_XBool_XBool{F7: {true: true}}",
		Target: XUnionDepth2_XMap_XBool_XBool(XUnionDepth2_XMap_XBool_XBoolF7{XMap_XBool_XBool{
			true: true,
		}}),
		SourceLabel: "XUnionDepth2_XMap_XBool_XBool{F7: {true: true}}",
		Source: XUnionDepth2_XMap_XBool_XBool(XUnionDepth2_XMap_XBool_XBoolF7{XMap_XBool_XBool{
			true: true,
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth2_XMap_XBool_XBool{F7: {true: true}}",
		Target: XUnionDepth2_XMap_XBool_XBool(XUnionDepth2_XMap_XBool_XBoolF7{XMap_XBool_XBool{
			true: true,
		}}),
		SourceLabel: "XUnionDepth2_All{F7: {true: true}}",
		Source: XUnionDepth2_All(XUnionDepth2_AllF7{XMap_XBool_XBool{
			true: true,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XStructDepth1_All{F8: {}}",
		Target: XUnionDepth2_XStructDepth1_All(XUnionDepth2_XStructDepth1_AllF8{XStructDepth1_All{
			F5: vdl.AnyType,
		}}),
		SourceLabel: "XUnionDepth2_XStructDepth1_All{F8: {}}",
		Source: XUnionDepth2_XStructDepth1_All(XUnionDepth2_XStructDepth1_AllF8{XStructDepth1_All{
			F5: vdl.AnyType,
		}}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XStructDepth1_All{F8: {}}",
		Target: XUnionDepth2_XStructDepth1_All(XUnionDepth2_XStructDepth1_AllF8{XStructDepth1_All{
			F5: vdl.AnyType,
		}}),
		SourceLabel: "XUnionDepth2_All{F8: {}}",
		Source: XUnionDepth2_All(XUnionDepth2_AllF8{XStructDepth1_All{
			F5: vdl.AnyType,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth2_XStructDepth1_All{F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XUnionDepth2_XStructDepth1_All(XUnionDepth2_XStructDepth1_AllF8{XStructDepth1_All{
			F0: int64(-123),
			F1: true,
			F2: true,
			F3: "abcdeΔΘΠΣΦ王普澤世界",
			F4: "abcdeΔΘΠΣΦ王普澤世界",
			F5: vdl.Int64Type,
			F6: 123,
			F7: 123,
			F8: XEnumAbcC,
			F9: XEnumBcdD,
			F11: XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			F12: verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
			F13: 123,
			F14: 123,
			F15: 123,
			F16: 123,
			F17: 123,
			F18: 123,
			F19: -123,
			F20: -123,
			F21: -123,
			F22: -123,
			F23: -123,
			F24: -123,
			F25: -123,
			F26: -123,
			F27: 1.5,
			F28: 1.5,
			F29: 1.5,
			F30: 1.5,
			F31: &XStructEmpty{},
			F32: &XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		}}),
		SourceLabel: "XUnionDepth2_XStructDepth1_All{F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XUnionDepth2_XStructDepth1_All(XUnionDepth2_XStructDepth1_AllF8{XStructDepth1_All{
			F0: int64(-123),
			F1: true,
			F2: true,
			F3: "abcdeΔΘΠΣΦ王普澤世界",
			F4: "abcdeΔΘΠΣΦ王普澤世界",
			F5: vdl.Int64Type,
			F6: 123,
			F7: 123,
			F8: XEnumAbcC,
			F9: XEnumBcdD,
			F11: XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			F12: verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
			F13: 123,
			F14: 123,
			F15: 123,
			F16: 123,
			F17: 123,
			F18: 123,
			F19: -123,
			F20: -123,
			F21: -123,
			F22: -123,
			F23: -123,
			F24: -123,
			F25: -123,
			F26: -123,
			F27: 1.5,
			F28: 1.5,
			F29: 1.5,
			F30: 1.5,
			F31: &XStructEmpty{},
			F32: &XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth2_XStructDepth1_All{F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XUnionDepth2_XStructDepth1_All(XUnionDepth2_XStructDepth1_AllF8{XStructDepth1_All{
			F0: int64(-123),
			F1: true,
			F2: true,
			F3: "abcdeΔΘΠΣΦ王普澤世界",
			F4: "abcdeΔΘΠΣΦ王普澤世界",
			F5: vdl.Int64Type,
			F6: 123,
			F7: 123,
			F8: XEnumAbcC,
			F9: XEnumBcdD,
			F11: XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			F12: verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
			F13: 123,
			F14: 123,
			F15: 123,
			F16: 123,
			F17: 123,
			F18: 123,
			F19: -123,
			F20: -123,
			F21: -123,
			F22: -123,
			F23: -123,
			F24: -123,
			F25: -123,
			F26: -123,
			F27: 1.5,
			F28: 1.5,
			F29: 1.5,
			F30: 1.5,
			F31: &XStructEmpty{},
			F32: &XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		}}),
		SourceLabel: "XUnionDepth2_All{F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XUnionDepth2_All(XUnionDepth2_AllF8{XStructDepth1_All{
			F0: int64(-123),
			F1: true,
			F2: true,
			F3: "abcdeΔΘΠΣΦ王普澤世界",
			F4: "abcdeΔΘΠΣΦ王普澤世界",
			F5: vdl.Int64Type,
			F6: 123,
			F7: 123,
			F8: XEnumAbcC,
			F9: XEnumBcdD,
			F11: XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
			F12: verror.FromWire(&vdl.WireError{
				Id:        "abcdeΔΘΠΣΦ王普澤世界",
				RetryCode: vdl.WireRetryCodeRetryBackoff,
				Msg:       "abcdeΔΘΠΣΦ王普澤世界",
			}),
			F13: 123,
			F14: 123,
			F15: 123,
			F16: 123,
			F17: 123,
			F18: 123,
			F19: -123,
			F20: -123,
			F21: -123,
			F22: -123,
			F23: -123,
			F24: -123,
			F25: -123,
			F26: -123,
			F27: 1.5,
			F28: 1.5,
			F29: 1.5,
			F30: 1.5,
			F31: &XStructEmpty{},
			F32: &XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth2_XStructDepth1_All{F8: {F1: true, F2: true, F3: \"ΘΠΣΦ王普澤世\", F4: \"cdeΔΘ\", F8: B, F9: D, F11: {Id: \"deΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"bcdeΔΘΠΣΦ王普澤\", RetryCode: RetryConnection, Msg: \"ΠΣΦ王普澤世界\"}, F14: 44906, F15: 2456026341, F17: 6892049149569369529, F18: 504392095298316610, F19: 17, F21: -12607, F23: -1050221321, F24: -451002291, F25: 1330567261637553657, F28: -2.23363e+08, F29: 1.9155494091834462e+09, F30: -5.575798863666346e+08}}",
		Target: XUnionDepth2_XStructDepth1_All(XUnionDepth2_XStructDepth1_AllF8{XStructDepth1_All{
			F1: true,
			F2: true,
			F3: "ΘΠΣΦ王普澤世",
			F4: "cdeΔΘ",
			F5: vdl.AnyType,
			F8: XEnumAbcB,
			F9: XEnumBcdD,
			F11: XNamedError{
				Id: "deΔΘΠΣΦ王普澤世界",
			},
			F12: verror.FromWire(&vdl.WireError{
				Id:        "bcdeΔΘΠΣΦ王普澤",
				RetryCode: vdl.WireRetryCodeRetryConnection,
				Msg:       "ΠΣΦ王普澤世界",
			}),
			F14: 44906,
			F15: 2456026341,
			F17: 6892049149569369529,
			F18: 504392095298316610,
			F19: 17,
			F21: -12607,
			F23: -1050221321,
			F24: -451002291,
			F25: 1330567261637553657,
			F28: -2.23363e+08,
			F29: 1.9155494091834462e+09,
			F30: -5.575798863666346e+08,
		}}),
		SourceLabel: "XUnionDepth2_XStructDepth1_All{F8: {F1: true, F2: true, F3: \"ΘΠΣΦ王普澤世\", F4: \"cdeΔΘ\", F8: B, F9: D, F11: {Id: \"deΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"bcdeΔΘΠΣΦ王普澤\", RetryCode: RetryConnection, Msg: \"ΠΣΦ王普澤世界\"}, F14: 44906, F15: 2456026341, F17: 6892049149569369529, F18: 504392095298316610, F19: 17, F21: -12607, F23: -1050221321, F24: -451002291, F25: 1330567261637553657, F28: -2.23363e+08, F29: 1.9155494091834462e+09, F30: -5.575798863666346e+08}}",
		Source: XUnionDepth2_XStructDepth1_All(XUnionDepth2_XStructDepth1_AllF8{XStructDepth1_All{
			F1: true,
			F2: true,
			F3: "ΘΠΣΦ王普澤世",
			F4: "cdeΔΘ",
			F5: vdl.AnyType,
			F8: XEnumAbcB,
			F9: XEnumBcdD,
			F11: XNamedError{
				Id: "deΔΘΠΣΦ王普澤世界",
			},
			F12: verror.FromWire(&vdl.WireError{
				Id:        "bcdeΔΘΠΣΦ王普澤",
				RetryCode: vdl.WireRetryCodeRetryConnection,
				Msg:       "ΠΣΦ王普澤世界",
			}),
			F14: 44906,
			F15: 2456026341,
			F17: 6892049149569369529,
			F18: 504392095298316610,
			F19: 17,
			F21: -12607,
			F23: -1050221321,
			F24: -451002291,
			F25: 1330567261637553657,
			F28: -2.23363e+08,
			F29: 1.9155494091834462e+09,
			F30: -5.575798863666346e+08,
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth2_XStructDepth1_All{F8: {F1: true, F2: true, F3: \"ΘΠΣΦ王普澤世\", F4: \"cdeΔΘ\", F8: B, F9: D, F11: {Id: \"deΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"bcdeΔΘΠΣΦ王普澤\", RetryCode: RetryConnection, Msg: \"ΠΣΦ王普澤世界\"}, F14: 44906, F15: 2456026341, F17: 6892049149569369529, F18: 504392095298316610, F19: 17, F21: -12607, F23: -1050221321, F24: -451002291, F25: 1330567261637553657, F28: -2.23363e+08, F29: 1.9155494091834462e+09, F30: -5.575798863666346e+08}}",
		Target: XUnionDepth2_XStructDepth1_All(XUnionDepth2_XStructDepth1_AllF8{XStructDepth1_All{
			F1: true,
			F2: true,
			F3: "ΘΠΣΦ王普澤世",
			F4: "cdeΔΘ",
			F5: vdl.AnyType,
			F8: XEnumAbcB,
			F9: XEnumBcdD,
			F11: XNamedError{
				Id: "deΔΘΠΣΦ王普澤世界",
			},
			F12: verror.FromWire(&vdl.WireError{
				Id:        "bcdeΔΘΠΣΦ王普澤",
				RetryCode: vdl.WireRetryCodeRetryConnection,
				Msg:       "ΠΣΦ王普澤世界",
			}),
			F14: 44906,
			F15: 2456026341,
			F17: 6892049149569369529,
			F18: 504392095298316610,
			F19: 17,
			F21: -12607,
			F23: -1050221321,
			F24: -451002291,
			F25: 1330567261637553657,
			F28: -2.23363e+08,
			F29: 1.9155494091834462e+09,
			F30: -5.575798863666346e+08,
		}}),
		SourceLabel: "XUnionDepth2_All{F8: {F1: true, F2: true, F3: \"ΘΠΣΦ王普澤世\", F4: \"cdeΔΘ\", F8: B, F9: D, F11: {Id: \"deΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"bcdeΔΘΠΣΦ王普澤\", RetryCode: RetryConnection, Msg: \"ΠΣΦ王普澤世界\"}, F14: 44906, F15: 2456026341, F17: 6892049149569369529, F18: 504392095298316610, F19: 17, F21: -12607, F23: -1050221321, F24: -451002291, F25: 1330567261637553657, F28: -2.23363e+08, F29: 1.9155494091834462e+09, F30: -5.575798863666346e+08}}",
		Source: XUnionDepth2_All(XUnionDepth2_AllF8{XStructDepth1_All{
			F1: true,
			F2: true,
			F3: "ΘΠΣΦ王普澤世",
			F4: "cdeΔΘ",
			F5: vdl.AnyType,
			F8: XEnumAbcB,
			F9: XEnumBcdD,
			F11: XNamedError{
				Id: "deΔΘΠΣΦ王普澤世界",
			},
			F12: verror.FromWire(&vdl.WireError{
				Id:        "bcdeΔΘΠΣΦ王普澤",
				RetryCode: vdl.WireRetryCodeRetryConnection,
				Msg:       "ΠΣΦ王普澤世界",
			}),
			F14: 44906,
			F15: 2456026341,
			F17: 6892049149569369529,
			F18: 504392095298316610,
			F19: 17,
			F21: -12607,
			F23: -1050221321,
			F24: -451002291,
			F25: 1330567261637553657,
			F28: -2.23363e+08,
			F29: 1.9155494091834462e+09,
			F30: -5.575798863666346e+08,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XStructDepth1_Int8{F9: {}}",
		Target:      XUnionDepth2_XStructDepth1_Int8(XUnionDepth2_XStructDepth1_Int8F9{}),
		SourceLabel: "XUnionDepth2_XStructDepth1_Int8{F9: {}}",
		Source:      XUnionDepth2_XStructDepth1_Int8(XUnionDepth2_XStructDepth1_Int8F9{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XStructDepth1_Int8{F9: {}}",
		Target:      XUnionDepth2_XStructDepth1_Int8(XUnionDepth2_XStructDepth1_Int8F9{}),
		SourceLabel: "XUnionDepth2_All{F9: {}}",
		Source:      XUnionDepth2_All(XUnionDepth2_AllF9{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth2_XStructDepth1_Int8{F9: {F19: -123}}",
		Target: XUnionDepth2_XStructDepth1_Int8(XUnionDepth2_XStructDepth1_Int8F9{XStructDepth1_Int8{
			F19: -123,
		}}),
		SourceLabel: "XUnionDepth2_XStructDepth1_Int8{F9: {F19: -123}}",
		Source: XUnionDepth2_XStructDepth1_Int8(XUnionDepth2_XStructDepth1_Int8F9{XStructDepth1_Int8{
			F19: -123,
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth2_XStructDepth1_Int8{F9: {F19: -123}}",
		Target: XUnionDepth2_XStructDepth1_Int8(XUnionDepth2_XStructDepth1_Int8F9{XStructDepth1_Int8{
			F19: -123,
		}}),
		SourceLabel: "XUnionDepth2_All{F9: {F19: -123}}",
		Source: XUnionDepth2_All(XUnionDepth2_AllF9{XStructDepth1_Int8{
			F19: -123,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth2_XStructDepth1_Int8{F9: {F19: -17}}",
		Target: XUnionDepth2_XStructDepth1_Int8(XUnionDepth2_XStructDepth1_Int8F9{XStructDepth1_Int8{
			F19: -17,
		}}),
		SourceLabel: "XUnionDepth2_XStructDepth1_Int8{F9: {F19: -17}}",
		Source: XUnionDepth2_XStructDepth1_Int8(XUnionDepth2_XStructDepth1_Int8F9{XStructDepth1_Int8{
			F19: -17,
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth2_XStructDepth1_Int8{F9: {F19: -17}}",
		Target: XUnionDepth2_XStructDepth1_Int8(XUnionDepth2_XStructDepth1_Int8F9{XStructDepth1_Int8{
			F19: -17,
		}}),
		SourceLabel: "XUnionDepth2_All{F9: {F19: -17}}",
		Source: XUnionDepth2_All(XUnionDepth2_AllF9{XStructDepth1_Int8{
			F19: -17,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XUnionDepth1_All{F10: {F0: nil}}",
		Target:      XUnionDepth2_XUnionDepth1_All(XUnionDepth2_XUnionDepth1_AllF10{XUnionDepth1_AllF0{}}),
		SourceLabel: "XUnionDepth2_XUnionDepth1_All{F10: {F0: nil}}",
		Source:      XUnionDepth2_XUnionDepth1_All(XUnionDepth2_XUnionDepth1_AllF10{XUnionDepth1_AllF0{}}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XUnionDepth1_All{F10: {F0: nil}}",
		Target:      XUnionDepth2_XUnionDepth1_All(XUnionDepth2_XUnionDepth1_AllF10{XUnionDepth1_AllF0{}}),
		SourceLabel: "XUnionDepth2_All{F10: {F0: nil}}",
		Source:      XUnionDepth2_All(XUnionDepth2_AllF10{XUnionDepth1_AllF0{}}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth2_XUnionDepth1_All{F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XUnionDepth2_XUnionDepth1_All(XUnionDepth2_XUnionDepth1_AllF10{XUnionDepth1_AllF32{&XNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}}),
		SourceLabel: "XUnionDepth2_XUnionDepth1_All{F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XUnionDepth2_XUnionDepth1_All(XUnionDepth2_XUnionDepth1_AllF10{XUnionDepth1_AllF32{&XNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth2_XUnionDepth1_All{F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XUnionDepth2_XUnionDepth1_All(XUnionDepth2_XUnionDepth1_AllF10{XUnionDepth1_AllF32{&XNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}}),
		SourceLabel: "XUnionDepth2_All{F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XUnionDepth2_All(XUnionDepth2_AllF10{XUnionDepth1_AllF32{&XNamedError{
			Id:  "abcdeΔΘΠΣΦ王普澤世界",
			Msg: "abcdeΔΘΠΣΦ王普澤世界",
		}}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth2_XUnionDepth1_All{F10: {F1: false}}",
		Target:      XUnionDepth2_XUnionDepth1_All(XUnionDepth2_XUnionDepth1_AllF10{XUnionDepth1_AllF1{}}),
		SourceLabel: "XUnionDepth2_XUnionDepth1_All{F10: {F1: false}}",
		Source:      XUnionDepth2_XUnionDepth1_All(XUnionDepth2_XUnionDepth1_AllF10{XUnionDepth1_AllF1{}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth2_XUnionDepth1_All{F10: {F1: false}}",
		Target:      XUnionDepth2_XUnionDepth1_All(XUnionDepth2_XUnionDepth1_AllF10{XUnionDepth1_AllF1{}}),
		SourceLabel: "XUnionDepth2_All{F10: {F1: false}}",
		Source:      XUnionDepth2_All(XUnionDepth2_AllF10{XUnionDepth1_AllF1{}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XUnionDepth1_XUint32{F11: {F16: 0}}",
		Target:      XUnionDepth2_XUnionDepth1_XUint32(XUnionDepth2_XUnionDepth1_XUint32F11{XUnionDepth1_XUint32F16{}}),
		SourceLabel: "XUnionDepth2_XUnionDepth1_XUint32{F11: {F16: 0}}",
		Source:      XUnionDepth2_XUnionDepth1_XUint32(XUnionDepth2_XUnionDepth1_XUint32F11{XUnionDepth1_XUint32F16{}}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_XUnionDepth1_XUint32{F11: {F16: 0}}",
		Target:      XUnionDepth2_XUnionDepth1_XUint32(XUnionDepth2_XUnionDepth1_XUint32F11{XUnionDepth1_XUint32F16{}}),
		SourceLabel: "XUnionDepth2_All{F11: {F16: 0}}",
		Source:      XUnionDepth2_All(XUnionDepth2_AllF11{XUnionDepth1_XUint32F16{}}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth2_XUnionDepth1_XUint32{F11: {F16: 123}}",
		Target:      XUnionDepth2_XUnionDepth1_XUint32(XUnionDepth2_XUnionDepth1_XUint32F11{XUnionDepth1_XUint32F16{123}}),
		SourceLabel: "XUnionDepth2_XUnionDepth1_XUint32{F11: {F16: 123}}",
		Source:      XUnionDepth2_XUnionDepth1_XUint32(XUnionDepth2_XUnionDepth1_XUint32F11{XUnionDepth1_XUint32F16{123}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth2_XUnionDepth1_XUint32{F11: {F16: 123}}",
		Target:      XUnionDepth2_XUnionDepth1_XUint32(XUnionDepth2_XUnionDepth1_XUint32F11{XUnionDepth1_XUint32F16{123}}),
		SourceLabel: "XUnionDepth2_All{F11: {F16: 123}}",
		Source:      XUnionDepth2_All(XUnionDepth2_AllF11{XUnionDepth1_XUint32F16{123}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth2_XUnionDepth1_XUint32{F11: {F16: 1447068131}}",
		Target:      XUnionDepth2_XUnionDepth1_XUint32(XUnionDepth2_XUnionDepth1_XUint32F11{XUnionDepth1_XUint32F16{1447068131}}),
		SourceLabel: "XUnionDepth2_XUnionDepth1_XUint32{F11: {F16: 1447068131}}",
		Source:      XUnionDepth2_XUnionDepth1_XUint32(XUnionDepth2_XUnionDepth1_XUint32F11{XUnionDepth1_XUint32F16{1447068131}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth2_XUnionDepth1_XUint32{F11: {F16: 1447068131}}",
		Target:      XUnionDepth2_XUnionDepth1_XUint32(XUnionDepth2_XUnionDepth1_XUint32F11{XUnionDepth1_XUint32F16{1447068131}}),
		SourceLabel: "XUnionDepth2_All{F11: {F16: 1447068131}}",
		Source:      XUnionDepth2_All(XUnionDepth2_AllF11{XUnionDepth1_XUint32F16{1447068131}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_OptXStructDepth1_XEnumBcd{F12: nil}",
		Target:      XUnionDepth2_OptXStructDepth1_XEnumBcd(XUnionDepth2_OptXStructDepth1_XEnumBcdF12{}),
		SourceLabel: "XUnionDepth2_OptXStructDepth1_XEnumBcd{F12: nil}",
		Source:      XUnionDepth2_OptXStructDepth1_XEnumBcd(XUnionDepth2_OptXStructDepth1_XEnumBcdF12{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_OptXStructDepth1_XEnumBcd{F12: nil}",
		Target:      XUnionDepth2_OptXStructDepth1_XEnumBcd(XUnionDepth2_OptXStructDepth1_XEnumBcdF12{}),
		SourceLabel: "XUnionDepth2_All{F12: nil}",
		Source:      XUnionDepth2_All(XUnionDepth2_AllF12{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth2_OptXStructDepth1_XEnumBcd{F12: {F9: D}}",
		Target: XUnionDepth2_OptXStructDepth1_XEnumBcd(XUnionDepth2_OptXStructDepth1_XEnumBcdF12{&XStructDepth1_XEnumBcd{
			F9: XEnumBcdD,
		}}),
		SourceLabel: "XUnionDepth2_OptXStructDepth1_XEnumBcd{F12: {F9: D}}",
		Source: XUnionDepth2_OptXStructDepth1_XEnumBcd(XUnionDepth2_OptXStructDepth1_XEnumBcdF12{&XStructDepth1_XEnumBcd{
			F9: XEnumBcdD,
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth2_OptXStructDepth1_XEnumBcd{F12: {F9: D}}",
		Target: XUnionDepth2_OptXStructDepth1_XEnumBcd(XUnionDepth2_OptXStructDepth1_XEnumBcdF12{&XStructDepth1_XEnumBcd{
			F9: XEnumBcdD,
		}}),
		SourceLabel: "XUnionDepth2_All{F12: {F9: D}}",
		Source: XUnionDepth2_All(XUnionDepth2_AllF12{&XStructDepth1_XEnumBcd{
			F9: XEnumBcdD,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_OptXStructDepth1_XFloat32{F13: nil}",
		Target:      XUnionDepth2_OptXStructDepth1_XFloat32(XUnionDepth2_OptXStructDepth1_XFloat32F13{}),
		SourceLabel: "XUnionDepth2_OptXStructDepth1_XFloat32{F13: nil}",
		Source:      XUnionDepth2_OptXStructDepth1_XFloat32(XUnionDepth2_OptXStructDepth1_XFloat32F13{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth2_OptXStructDepth1_XFloat32{F13: nil}",
		Target:      XUnionDepth2_OptXStructDepth1_XFloat32(XUnionDepth2_OptXStructDepth1_XFloat32F13{}),
		SourceLabel: "XUnionDepth2_All{F13: nil}",
		Source:      XUnionDepth2_All(XUnionDepth2_AllF13{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth2_OptXStructDepth1_XFloat32{F13: {F28: 1.5}}",
		Target: XUnionDepth2_OptXStructDepth1_XFloat32(XUnionDepth2_OptXStructDepth1_XFloat32F13{&XStructDepth1_XFloat32{
			F28: 1.5,
		}}),
		SourceLabel: "XUnionDepth2_OptXStructDepth1_XFloat32{F13: {F28: 1.5}}",
		Source: XUnionDepth2_OptXStructDepth1_XFloat32(XUnionDepth2_OptXStructDepth1_XFloat32F13{&XStructDepth1_XFloat32{
			F28: 1.5,
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth2_OptXStructDepth1_XFloat32{F13: {F28: 1.5}}",
		Target: XUnionDepth2_OptXStructDepth1_XFloat32(XUnionDepth2_OptXStructDepth1_XFloat32F13{&XStructDepth1_XFloat32{
			F28: 1.5,
		}}),
		SourceLabel: "XUnionDepth2_All{F13: {F28: 1.5}}",
		Source: XUnionDepth2_All(XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
			F28: 1.5,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth2_OptXStructDepth1_XFloat32{F13: {F28: 8.942269e+08}}",
		Target: XUnionDepth2_OptXStructDepth1_XFloat32(XUnionDepth2_OptXStructDepth1_XFloat32F13{&XStructDepth1_XFloat32{
			F28: 8.942269e+08,
		}}),
		SourceLabel: "XUnionDepth2_OptXStructDepth1_XFloat32{F13: {F28: 8.942269e+08}}",
		Source: XUnionDepth2_OptXStructDepth1_XFloat32(XUnionDepth2_OptXStructDepth1_XFloat32F13{&XStructDepth1_XFloat32{
			F28: 8.942269e+08,
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth2_OptXStructDepth1_XFloat32{F13: {F28: 8.942269e+08}}",
		Target: XUnionDepth2_OptXStructDepth1_XFloat32(XUnionDepth2_OptXStructDepth1_XFloat32F13{&XStructDepth1_XFloat32{
			F28: 8.942269e+08,
		}}),
		SourceLabel: "XUnionDepth2_All{F13: {F28: 8.942269e+08}}",
		Source: XUnionDepth2_All(XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
			F28: 8.942269e+08,
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "?XStructDepth2_Set_Float64(nil)",
		Target:      (*XStructDepth2_Set_Float64)(nil),
		SourceLabel: "?XStructDepth2_Set_Float64(nil)",
		Source:      (*XStructDepth2_Set_Float64)(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "?XStructDepth2_Set_Float64(nil)",
		Target:      (*XStructDepth2_Set_Float64)(nil),
		SourceLabel: "?XStructEmpty(nil)",
		Source:      (*XStructEmpty)(nil),
	},
	{
		Label:       "NilAny",
		TargetLabel: "?XStructDepth2_Set_Float64(nil)",
		Target:      (*XStructDepth2_Set_Float64)(nil),
		SourceLabel: "any(nil)",
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "?XStructDepth2_Set_Float64{F4: {1.5}}",
		Target: &XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		},
		SourceLabel: "?XStructDepth2_Set_Float64{F4: {1.5}}",
		Source: &XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "?XStructDepth2_Set_Float64{F4: {1.5}}",
		Target: &XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		},
		SourceLabel: "XStructDepth2_All{F4: {1.5}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "?XStructDepth2_Set_Float64{F4: {-1.5482595333652863e+07, -1.8546110877738907e+09, 8.285960578355051e+08}}",
		Target: &XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				-1.5482595333652863e+07: struct{}{},
				-1.8546110877738907e+09: struct{}{},
				8.285960578355051e+08:   struct{}{},
			},
		},
		SourceLabel: "?XStructDepth2_Set_Float64{F4: {-1.5482595333652863e+07, -1.8546110877738907e+09, 8.285960578355051e+08}}",
		Source: &XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				-1.5482595333652863e+07: struct{}{},
				-1.8546110877738907e+09: struct{}{},
				8.285960578355051e+08:   struct{}{},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "?XStructDepth2_Set_Float64{F4: {-1.5482595333652863e+07, -1.8546110877738907e+09, 8.285960578355051e+08}}",
		Target: &XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				-1.5482595333652863e+07: struct{}{},
				-1.8546110877738907e+09: struct{}{},
				8.285960578355051e+08:   struct{}{},
			},
		},
		SourceLabel: "XStructDepth2_All{F4: {-1.5482595333652863e+07, -1.8546110877738907e+09, 8.285960578355051e+08}}",
		Source: XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F4: map[float64]struct{}{
				-1.5482595333652863e+07: struct{}{},
				-1.8546110877738907e+09: struct{}{},
				8.285960578355051e+08:   struct{}{},
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray1_XArray1_XList_Byte{}",
		Target:      XArray1_XArray1_XList_Byte{},
		SourceLabel: "XArray1_XArray1_XList_Byte{}",
		Source:      XArray1_XArray1_XList_Byte{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray1_XArray1_XList_Byte{}",
		Target:      XArray1_XArray1_XList_Byte{},
		SourceLabel: "XList_Any{XArray1_XList_Byte{}}",
		Source: XList_Any{
			XArray1_XList_Byte{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray1_XArray1_XList_Byte{}",
		Target:      XArray1_XArray1_XList_Byte{},
		SourceLabel: "[]any{XArray1_XList_Byte{}}",
		Source: []interface{}{
			XArray1_XList_Byte{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray1_XArray1_XList_Byte{{\"{\"}}",
		Target: XArray1_XArray1_XList_Byte{
			{
				XList_Byte("{"),
			},
		},
		SourceLabel: "XArray1_XArray1_XList_Byte{{\"{\"}}",
		Source: XArray1_XArray1_XList_Byte{
			{
				XList_Byte("{"),
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray1_XArray1_XList_Byte{{\"{\"}}",
		Target: XArray1_XArray1_XList_Byte{
			{
				XList_Byte("{"),
			},
		},
		SourceLabel: "XList_Any{XArray1_XList_Byte{\"{\"}}",
		Source: XList_Any{
			XArray1_XList_Byte{
				XList_Byte("{"),
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray1_XArray1_XList_Byte{{\"\\x81\"}}",
		Target: XArray1_XArray1_XList_Byte{
			{
				XList_Byte("\x81"),
			},
		},
		SourceLabel: "XArray1_XArray1_XList_Byte{{\"\\x81\"}}",
		Source: XArray1_XArray1_XList_Byte{
			{
				XList_Byte("\x81"),
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray1_XArray1_XList_Byte{{\"\\x81\"}}",
		Target: XArray1_XArray1_XList_Byte{
			{
				XList_Byte("\x81"),
			},
		},
		SourceLabel: "XList_Any{XArray1_XList_Byte{\"\\x81\"}}",
		Source: XList_Any{
			XArray1_XList_Byte{
				XList_Byte("\x81"),
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray2_List_XMap_XByte_XByte{}",
		Target:      XArray2_List_XMap_XByte_XByte{},
		SourceLabel: "XArray2_List_XMap_XByte_XByte{}",
		Source:      XArray2_List_XMap_XByte_XByte{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray2_List_XMap_XByte_XByte{}",
		Target:      XArray2_List_XMap_XByte_XByte{},
		SourceLabel: "XList_Any{[]XMap_XByte_XByte{}, []XMap_XByte_XByte{}}",
		Source: XList_Any{
			[]XMap_XByte_XByte(nil),
			[]XMap_XByte_XByte(nil),
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray2_List_XMap_XByte_XByte{}",
		Target:      XArray2_List_XMap_XByte_XByte{},
		SourceLabel: "XList_List_XMap_XByte_XByte{{}, {}}",
		Source: XList_List_XMap_XByte_XByte{
			nil,
			nil,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray2_List_XMap_XByte_XByte{{{123: 123}}, {{123: 123}}}",
		Target: XArray2_List_XMap_XByte_XByte{
			{
				{
					123: 123,
				},
			},
			{
				{
					123: 123,
				},
			},
		},
		SourceLabel: "XArray2_List_XMap_XByte_XByte{{{123: 123}}, {{123: 123}}}",
		Source: XArray2_List_XMap_XByte_XByte{
			{
				{
					123: 123,
				},
			},
			{
				{
					123: 123,
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray2_List_XMap_XByte_XByte{{{123: 123}}, {{123: 123}}}",
		Target: XArray2_List_XMap_XByte_XByte{
			{
				{
					123: 123,
				},
			},
			{
				{
					123: 123,
				},
			},
		},
		SourceLabel: "XList_Any{[]XMap_XByte_XByte{{123: 123}}, []XMap_XByte_XByte{{123: 123}}}",
		Source: XList_Any{
			[]XMap_XByte_XByte{
				{
					123: 123,
				},
			},
			[]XMap_XByte_XByte{
				{
					123: 123,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray2_List_XMap_XByte_XByte{{{}}, {{207: 252, 243: 0, 252: 101}, {}}}",
		Target: XArray2_List_XMap_XByte_XByte{
			{
				nil,
			},
			{
				{
					207: 252,
					243: 0,
					252: 101,
				},
				nil,
			},
		},
		SourceLabel: "XArray2_List_XMap_XByte_XByte{{{}}, {{207: 252, 243: 0, 252: 101}, {}}}",
		Source: XArray2_List_XMap_XByte_XByte{
			{
				nil,
			},
			{
				{
					207: 252,
					243: 0,
					252: 101,
				},
				nil,
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray2_List_XMap_XByte_XByte{{{}}, {{207: 252, 243: 0, 252: 101}, {}}}",
		Target: XArray2_List_XMap_XByte_XByte{
			{
				nil,
			},
			{
				{
					207: 252,
					243: 0,
					252: 101,
				},
				nil,
			},
		},
		SourceLabel: "XList_Any{[]XMap_XByte_XByte{{}}, []XMap_XByte_XByte{{207: 252, 243: 0, 252: 101}, {}}}",
		Source: XList_Any{
			[]XMap_XByte_XByte{
				nil,
			},
			[]XMap_XByte_XByte{
				{
					207: 252,
					243: 0,
					252: 101,
				},
				nil,
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray2_Set_XUnionDepth1_XNamedError{}",
		Target:      XArray2_Set_XUnionDepth1_XNamedError{},
		SourceLabel: "XArray2_Set_XUnionDepth1_XNamedError{}",
		Source:      XArray2_Set_XUnionDepth1_XNamedError{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray2_Set_XUnionDepth1_XNamedError{}",
		Target:      XArray2_Set_XUnionDepth1_XNamedError{},
		SourceLabel: "XList_Any{set[XUnionDepth1_XNamedError]{}, set[XUnionDepth1_XNamedError]{}}",
		Source: XList_Any{
			map[XUnionDepth1_XNamedError]struct{}(nil),
			map[XUnionDepth1_XNamedError]struct{}(nil),
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray2_Set_XUnionDepth1_XNamedError{}",
		Target:      XArray2_Set_XUnionDepth1_XNamedError{},
		SourceLabel: "[]any{set[XUnionDepth1_XNamedError]{}, set[XUnionDepth1_XNamedError]{}}",
		Source: []interface{}{
			map[XUnionDepth1_XNamedError]struct{}(nil),
			map[XUnionDepth1_XNamedError]struct{}(nil),
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray2_Set_XUnionDepth1_XNamedError{{{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}, {{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Target: XArray2_Set_XUnionDepth1_XNamedError{
			{
				XUnionDepth1_XNamedErrorF11{XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}}: struct{}{},
			},
			{
				XUnionDepth1_XNamedErrorF11{XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}}: struct{}{},
			},
		},
		SourceLabel: "XArray2_Set_XUnionDepth1_XNamedError{{{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}, {{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Source: XArray2_Set_XUnionDepth1_XNamedError{
			{
				XUnionDepth1_XNamedErrorF11{XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}}: struct{}{},
			},
			{
				XUnionDepth1_XNamedErrorF11{XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}}: struct{}{},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray2_Set_XUnionDepth1_XNamedError{{{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}, {{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Target: XArray2_Set_XUnionDepth1_XNamedError{
			{
				XUnionDepth1_XNamedErrorF11{XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}}: struct{}{},
			},
			{
				XUnionDepth1_XNamedErrorF11{XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}}: struct{}{},
			},
		},
		SourceLabel: "[]any{set[XUnionDepth1_XNamedError]{{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}, set[XUnionDepth1_XNamedError]{{F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Source: []interface{}{
			map[XUnionDepth1_XNamedError]struct{}{
				XUnionDepth1_XNamedErrorF11{XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}}: struct{}{},
			},
			map[XUnionDepth1_XNamedError]struct{}{
				XUnionDepth1_XNamedErrorF11{XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}}: struct{}{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray2_Set_XUnionDepth1_XNamedError{{}, {{F11: {}}, {F11: {Id: \"e\"}}}}",
		Target: XArray2_Set_XUnionDepth1_XNamedError{
			nil,
			{
				XUnionDepth1_XNamedErrorF11{}: struct{}{},
				XUnionDepth1_XNamedErrorF11{XNamedError{
					Id: "e",
				}}: struct{}{},
			},
		},
		SourceLabel: "XArray2_Set_XUnionDepth1_XNamedError{{}, {{F11: {}}, {F11: {Id: \"e\"}}}}",
		Source: XArray2_Set_XUnionDepth1_XNamedError{
			nil,
			{
				XUnionDepth1_XNamedErrorF11{}: struct{}{},
				XUnionDepth1_XNamedErrorF11{XNamedError{
					Id: "e",
				}}: struct{}{},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray2_Set_XUnionDepth1_XNamedError{{}, {{F11: {}}, {F11: {Id: \"e\"}}}}",
		Target: XArray2_Set_XUnionDepth1_XNamedError{
			nil,
			{
				XUnionDepth1_XNamedErrorF11{}: struct{}{},
				XUnionDepth1_XNamedErrorF11{XNamedError{
					Id: "e",
				}}: struct{}{},
			},
		},
		SourceLabel: "XList_Any{set[XUnionDepth1_XNamedError]{}, set[XUnionDepth1_XNamedError]{{F11: {}}, {F11: {Id: \"e\"}}}}",
		Source: XList_Any{
			map[XUnionDepth1_XNamedError]struct{}(nil),
			map[XUnionDepth1_XNamedError]struct{}{
				XUnionDepth1_XNamedErrorF11{}: struct{}{},
				XUnionDepth1_XNamedErrorF11{XNamedError{
					Id: "e",
				}}: struct{}{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{}",
		Target:      XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{},
		SourceLabel: "XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{}",
		Source:      XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{}",
		Target:      XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{},
		SourceLabel: "[]any{map[XUnionDepth1_Float64]XUnionDepth1_Float64{}, map[XUnionDepth1_Float64]XUnionDepth1_Float64{}, map[XUnionDepth1_Float64]XUnionDepth1_Float64{}}",
		Source: []interface{}{
			map[XUnionDepth1_Float64]XUnionDepth1_Float64(nil),
			map[XUnionDepth1_Float64]XUnionDepth1_Float64(nil),
			map[XUnionDepth1_Float64]XUnionDepth1_Float64(nil),
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{}",
		Target:      XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{},
		SourceLabel: "XList_Any{map[XUnionDepth1_Float64]XUnionDepth1_Float64{}, map[XUnionDepth1_Float64]XUnionDepth1_Float64{}, map[XUnionDepth1_Float64]XUnionDepth1_Float64{}}",
		Source: XList_Any{
			map[XUnionDepth1_Float64]XUnionDepth1_Float64(nil),
			map[XUnionDepth1_Float64]XUnionDepth1_Float64(nil),
			map[XUnionDepth1_Float64]XUnionDepth1_Float64(nil),
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{{{F29: 1.5}: {F29: 1.5}}, {{F29: 1.5}: {F29: 1.5}}, {{F29: 1.5}: {F29: 1.5}}}",
		Target: XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{
			{
				XUnionDepth1_Float64F29{1.5}: XUnionDepth1_Float64F29{1.5},
			},
			{
				XUnionDepth1_Float64F29{1.5}: XUnionDepth1_Float64F29{1.5},
			},
			{
				XUnionDepth1_Float64F29{1.5}: XUnionDepth1_Float64F29{1.5},
			},
		},
		SourceLabel: "XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{{{F29: 1.5}: {F29: 1.5}}, {{F29: 1.5}: {F29: 1.5}}, {{F29: 1.5}: {F29: 1.5}}}",
		Source: XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{
			{
				XUnionDepth1_Float64F29{1.5}: XUnionDepth1_Float64F29{1.5},
			},
			{
				XUnionDepth1_Float64F29{1.5}: XUnionDepth1_Float64F29{1.5},
			},
			{
				XUnionDepth1_Float64F29{1.5}: XUnionDepth1_Float64F29{1.5},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{{{F29: 1.5}: {F29: 1.5}}, {{F29: 1.5}: {F29: 1.5}}, {{F29: 1.5}: {F29: 1.5}}}",
		Target: XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{
			{
				XUnionDepth1_Float64F29{1.5}: XUnionDepth1_Float64F29{1.5},
			},
			{
				XUnionDepth1_Float64F29{1.5}: XUnionDepth1_Float64F29{1.5},
			},
			{
				XUnionDepth1_Float64F29{1.5}: XUnionDepth1_Float64F29{1.5},
			},
		},
		SourceLabel: "[]any{map[XUnionDepth1_Float64]XUnionDepth1_Float64{{F29: 1.5}: {F29: 1.5}}, map[XUnionDepth1_Float64]XUnionDepth1_Float64{{F29: 1.5}: {F29: 1.5}}, map[XUnionDepth1_Float64]XUnionDepth1_Float64{{F29: 1.5}: {F29: 1.5}}}",
		Source: []interface{}{
			map[XUnionDepth1_Float64]XUnionDepth1_Float64{
				XUnionDepth1_Float64F29{1.5}: XUnionDepth1_Float64F29{1.5},
			},
			map[XUnionDepth1_Float64]XUnionDepth1_Float64{
				XUnionDepth1_Float64F29{1.5}: XUnionDepth1_Float64F29{1.5},
			},
			map[XUnionDepth1_Float64]XUnionDepth1_Float64{
				XUnionDepth1_Float64F29{1.5}: XUnionDepth1_Float64F29{1.5},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{{{F29: 3.1599994040332496e+08}: {F29: -1.5686596621949365e+07}}, {{F29: 2.7756623525464993e+09}: {F29: 1.1969843301016219e+09}}, {{F29: 0}: {F29: 0}, {F29: 4.028709831106535e+07}: {F29: 0}}}",
		Target: XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{
			{
				XUnionDepth1_Float64F29{3.1599994040332496e+08}: XUnionDepth1_Float64F29{-1.5686596621949365e+07},
			},
			{
				XUnionDepth1_Float64F29{2.7756623525464993e+09}: XUnionDepth1_Float64F29{1.1969843301016219e+09},
			},
			{
				XUnionDepth1_Float64F29{}:                      XUnionDepth1_Float64F29{},
				XUnionDepth1_Float64F29{4.028709831106535e+07}: XUnionDepth1_Float64F29{},
			},
		},
		SourceLabel: "XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{{{F29: 3.1599994040332496e+08}: {F29: -1.5686596621949365e+07}}, {{F29: 2.7756623525464993e+09}: {F29: 1.1969843301016219e+09}}, {{F29: 0}: {F29: 0}, {F29: 4.028709831106535e+07}: {F29: 0}}}",
		Source: XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{
			{
				XUnionDepth1_Float64F29{3.1599994040332496e+08}: XUnionDepth1_Float64F29{-1.5686596621949365e+07},
			},
			{
				XUnionDepth1_Float64F29{2.7756623525464993e+09}: XUnionDepth1_Float64F29{1.1969843301016219e+09},
			},
			{
				XUnionDepth1_Float64F29{}:                      XUnionDepth1_Float64F29{},
				XUnionDepth1_Float64F29{4.028709831106535e+07}: XUnionDepth1_Float64F29{},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{{{F29: 3.1599994040332496e+08}: {F29: -1.5686596621949365e+07}}, {{F29: 2.7756623525464993e+09}: {F29: 1.1969843301016219e+09}}, {{F29: 0}: {F29: 0}, {F29: 4.028709831106535e+07}: {F29: 0}}}",
		Target: XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{
			{
				XUnionDepth1_Float64F29{3.1599994040332496e+08}: XUnionDepth1_Float64F29{-1.5686596621949365e+07},
			},
			{
				XUnionDepth1_Float64F29{2.7756623525464993e+09}: XUnionDepth1_Float64F29{1.1969843301016219e+09},
			},
			{
				XUnionDepth1_Float64F29{}:                      XUnionDepth1_Float64F29{},
				XUnionDepth1_Float64F29{4.028709831106535e+07}: XUnionDepth1_Float64F29{},
			},
		},
		SourceLabel: "XArray3_Any{map[XUnionDepth1_Float64]XUnionDepth1_Float64{{F29: 3.1599994040332496e+08}: {F29: -1.5686596621949365e+07}}, map[XUnionDepth1_Float64]XUnionDepth1_Float64{{F29: 2.7756623525464993e+09}: {F29: 1.1969843301016219e+09}}, map[XUnionDepth1_Float64]XUnionDepth1_Float64{{F29: 0}: {F29: 0}, {F29: 4.028709831106535e+07}: {F29: 0}}}",
		Source: XArray3_Any{
			map[XUnionDepth1_Float64]XUnionDepth1_Float64{
				XUnionDepth1_Float64F29{3.1599994040332496e+08}: XUnionDepth1_Float64F29{-1.5686596621949365e+07},
			},
			map[XUnionDepth1_Float64]XUnionDepth1_Float64{
				XUnionDepth1_Float64F29{2.7756623525464993e+09}: XUnionDepth1_Float64F29{1.1969843301016219e+09},
			},
			map[XUnionDepth1_Float64]XUnionDepth1_Float64{
				XUnionDepth1_Float64F29{}:                      XUnionDepth1_Float64F29{},
				XUnionDepth1_Float64F29{4.028709831106535e+07}: XUnionDepth1_Float64F29{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray2_XStructDepth2_All{}",
		Target: XArray2_XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
			{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
		},
		SourceLabel: "XArray2_XStructDepth2_All{}",
		Source: XArray2_XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
			{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray2_XStructDepth2_All{}",
		Target: XArray2_XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
			{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
		},
		SourceLabel: "XList_OptXStructEmpty{{}, {}}",
		Source: XList_OptXStructEmpty{
			{},
			{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray2_XStructDepth2_All{}",
		Target: XArray2_XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
			{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
		},
		SourceLabel: "[]?XStructEmpty{{}, {}}",
		Source: []*XStructEmpty{
			{},
			{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray2_XStructDepth2_All{{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}, {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Target: XArray2_XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: XArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: XList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: XStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: XEnumAbcC,
					F9: XEnumBcdD,
					F11: XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: XUnionDepth1_Float64F29{1.5},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{
					F14: 123,
				},
			},
			{
				F0: XArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: XArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: XList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: XStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: XEnumAbcC,
					F9: XEnumBcdD,
					F11: XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: XUnionDepth1_Float64F29{1.5},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{
					F14: 123,
				},
			},
		},
		SourceLabel: "XArray2_XStructDepth2_All{{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}, {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Source: XArray2_XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: XArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: XList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: XStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: XEnumAbcC,
					F9: XEnumBcdD,
					F11: XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: XUnionDepth1_Float64F29{1.5},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{
					F14: 123,
				},
			},
			{
				F0: XArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: XArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: XList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: XStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: XEnumAbcC,
					F9: XEnumBcdD,
					F11: XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: XUnionDepth1_Float64F29{1.5},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{
					F14: 123,
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray2_XStructDepth2_All{{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}, {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Target: XArray2_XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: XArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: XList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: XStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: XEnumAbcC,
					F9: XEnumBcdD,
					F11: XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: XUnionDepth1_Float64F29{1.5},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{
					F14: 123,
				},
			},
			{
				F0: XArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: XArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: XList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: XStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: XEnumAbcC,
					F9: XEnumBcdD,
					F11: XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: XUnionDepth1_Float64F29{1.5},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{
					F14: 123,
				},
			},
		},
		SourceLabel: "[]XStructDepth2_All{{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}, {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Source: []XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: XArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: XList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: XStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: XEnumAbcC,
					F9: XEnumBcdD,
					F11: XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: XUnionDepth1_Float64F29{1.5},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{
					F14: 123,
				},
			},
			{
				F0: XArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: XArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: XList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: XStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: XEnumAbcC,
					F9: XEnumBcdD,
					F11: XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: XUnionDepth1_Float64F29{1.5},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{
					F14: 123,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray2_XStructDepth2_All{{F0: {typeobject(any), typeobject(XArray2_XEnumBcd)}, F2: {9473, 5938}, F3: {int16(2192), XStructDepth3_All{F0: {{D}}, F1: {{F31: {}}}, F2: {{}}, F3: {{F29: -1.1165922379858755e+08}: {F29: -1.569161734832757e+09}}, F4: {F1: {2243984057}, F2: {0, 2479, 0}, F3: {XStructDepth1_XStructEmpty{}}, F4: {-1.5775969057942443e+09, -1.8198813631522796e+08}, F5: {B, D}, F7: {1301764874: 2534117066, 3361917737: 1820099714, 852495152: 1700539807}, F8: {F0: XStructDepth3_XArray1_Set_XEnumBcd{F0: {{C}}}, F4: \"Θ\", F7: 88, F11: {Id: \"Φ王普\", Msg: \"Σ\"}, F12: {Id: \"eΔΘΠΣΦ\", Msg: \"界\"}, F13: 23563, F14: 9186, F15: 2475611575, F16: 3559311778, F17: 17737118169357497710, F18: 3558251967950055864, F19: -52, F21: 10308, F22: -6340, F23: 870930854, F24: -600680739, F25: 817015124780152078, F26: 896416494217595175, F28: 9.8687014e+08, F29: -1.4115442283059388e+08, F31: {}, F32: {Id: \"Π\"}}, F10: {F11: {Msg: \"ΔΘΠ\"}}, F11: {F29: 2.9914791016795073e+09}, F12: {F9: D}, F13: {F14: 44301}}, F5: {F1: \"\\x03\\xc5\"}, F6: {F4: {-1.2220177986166332e+09, -3.2764475423036857e+09}}}, XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte{{F1: \"\\x9e\\x00\"}: {F1: \"\\x00\\x00\"}}}, F4: {-1.0060306983418753e+07}, F5: {C}, F6: {0: 80}, F7: {1609207365: 0, 2092504951: 1877580491}, F8: {F0: XInt8(-37), F2: true, F3: \"ΘΠΣΦ王普\", F7: 108, F8: C, F11: {Id: \"bcdeΔΘΠ\", Msg: \"Φ王\"}, F12: {Id: \"澤世界\", RetryCode: RetryBackoff, Msg: \"ΔΘΠΣΦ王\"}, F14: 29898, F15: 2465107563, F16: 703537128, F17: 10907673350192092042, F18: 2919667802991773779, F19: -11, F20: 38, F21: 5356, F23: -177103978, F24: 931968162, F28: 5.0028536e+07, F29: 7.305621239345392e+08, F30: 1.9862143149296916e+08}, F10: {F8: A}, F11: {F29: 3.5808997372158074e+08}, F12: {}, F13: {F14: 50491}}, {}}",
		Target: XArray2_XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					__VDLType_array_304,
				},
				F2: []int16{
					9473,
					5938,
				},
				F3: XList_Any{
					int16(2192),
					XStructDepth3_All{
						F0: XArray1_Set_XEnumBcd{
							{
								XEnumBcdD: struct{}{},
							},
						},
						F1: []XUnionDepth1_All{
							XUnionDepth1_AllF31{&XStructEmpty{}},
						},
						F2: XSet_XArray1_XStructEmpty{
							{}: struct{}{},
						},
						F3: map[XUnionDepth1_Float64]XUnionDepth1_Float64{
							XUnionDepth1_Float64F29{-1.1165922379858755e+08}: XUnionDepth1_Float64F29{-1.569161734832757e+09},
						},
						F4: XStructDepth2_All{
							F0: XArray2_TypeObject{
								vdl.AnyType,
								vdl.AnyType,
							},
							F1: XArray1_Uint32{
								2243984057,
							},
							F2: []int16{
								0,
								2479,
								0,
							},
							F3: XList_Any{
								XStructDepth1_XStructEmpty{},
							},
							F4: map[float64]struct{}{
								-1.5775969057942443e+09: struct{}{},
								-1.8198813631522796e+08: struct{}{},
							},
							F5: XSet_XEnumBcd{
								XEnumBcdB: struct{}{},
								XEnumBcdD: struct{}{},
							},
							F7: map[uint32]uint32{
								1301764874: 2534117066,
								3361917737: 1820099714,
								852495152:  1700539807,
							},
							F8: XStructDepth1_All{
								F0: XStructDepth3_XArray1_Set_XEnumBcd{
									F0: XArray1_Set_XEnumBcd{
										{
											XEnumBcdC: struct{}{},
										},
									},
								},
								F4: "Θ",
								F5: vdl.AnyType,
								F7: 88,
								F11: XNamedError{
									Id:  "Φ王普",
									Msg: "Σ",
								},
								F12: verror.FromWire(&vdl.WireError{
									Id:  "eΔΘΠΣΦ",
									Msg: "界",
								}),
								F13: 23563,
								F14: 9186,
								F15: 2475611575,
								F16: 3559311778,
								F17: 17737118169357497710,
								F18: 3558251967950055864,
								F19: -52,
								F21: 10308,
								F22: -6340,
								F23: 870930854,
								F24: -600680739,
								F25: 817015124780152078,
								F26: 896416494217595175,
								F28: 9.8687014e+08,
								F29: -1.4115442283059388e+08,
								F31: &XStructEmpty{},
								F32: &XNamedError{
									Id: "Π",
								},
							},
							F10: XUnionDepth1_AllF11{XNamedError{
								Msg: "ΔΘΠ",
							}},
							F11: XUnionDepth1_Float64F29{2.9914791016795073e+09},
							F12: &XStructDepth1_XEnumBcd{
								F9: XEnumBcdD,
							},
							F13: &XStructDepth1_XUint16{
								F14: 44301,
							},
						},
						F5: XUnionDepth2_AllF1{XArray2_XByte{
							3,
							197,
						}},
						F6: &XStructDepth2_Set_Float64{
							F4: map[float64]struct{}{
								-1.2220177986166332e+09: struct{}{},
								-3.2764475423036857e+09: struct{}{},
							},
						},
					},
					XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte{
						XUnionDepth2_XArray2_XByteF1{XArray2_XByte{
							158,
							0,
						}}: XUnionDepth2_XArray2_XByteF1{},
					},
				},
				F4: map[float64]struct{}{
					-1.0060306983418753e+07: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdC: struct{}{},
				},
				F6: map[byte]byte{
					0: 80,
				},
				F7: map[uint32]uint32{
					1609207365: 0,
					2092504951: 1877580491,
				},
				F8: XStructDepth1_All{
					F0: XInt8(-37),
					F2: true,
					F3: "ΘΠΣΦ王普",
					F5: vdl.AnyType,
					F7: 108,
					F8: XEnumAbcC,
					F11: XNamedError{
						Id:  "bcdeΔΘΠ",
						Msg: "Φ王",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "ΔΘΠΣΦ王",
					}),
					F14: 29898,
					F15: 2465107563,
					F16: 703537128,
					F17: 10907673350192092042,
					F18: 2919667802991773779,
					F19: -11,
					F20: 38,
					F21: 5356,
					F23: -177103978,
					F24: 931968162,
					F28: 5.0028536e+07,
					F29: 7.305621239345392e+08,
					F30: 1.9862143149296916e+08,
				},
				F10: XUnionDepth1_AllF8{},
				F11: XUnionDepth1_Float64F29{3.5808997372158074e+08},
				F12: &XStructDepth1_XEnumBcd{},
				F13: &XStructDepth1_XUint16{
					F14: 50491,
				},
			},
			{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
		},
		SourceLabel: "XArray2_XStructDepth2_All{{F0: {typeobject(any), typeobject(XArray2_XEnumBcd)}, F2: {9473, 5938}, F3: {int16(2192), XStructDepth3_All{F0: {{D}}, F1: {{F31: {}}}, F2: {{}}, F3: {{F29: -1.1165922379858755e+08}: {F29: -1.569161734832757e+09}}, F4: {F1: {2243984057}, F2: {0, 2479, 0}, F3: {XStructDepth1_XStructEmpty{}}, F4: {-1.5775969057942443e+09, -1.8198813631522796e+08}, F5: {B, D}, F7: {1301764874: 2534117066, 3361917737: 1820099714, 852495152: 1700539807}, F8: {F0: XStructDepth3_XArray1_Set_XEnumBcd{F0: {{C}}}, F4: \"Θ\", F7: 88, F11: {Id: \"Φ王普\", Msg: \"Σ\"}, F12: {Id: \"eΔΘΠΣΦ\", Msg: \"界\"}, F13: 23563, F14: 9186, F15: 2475611575, F16: 3559311778, F17: 17737118169357497710, F18: 3558251967950055864, F19: -52, F21: 10308, F22: -6340, F23: 870930854, F24: -600680739, F25: 817015124780152078, F26: 896416494217595175, F28: 9.8687014e+08, F29: -1.4115442283059388e+08, F31: {}, F32: {Id: \"Π\"}}, F10: {F11: {Msg: \"ΔΘΠ\"}}, F11: {F29: 2.9914791016795073e+09}, F12: {F9: D}, F13: {F14: 44301}}, F5: {F1: \"\\x03\\xc5\"}, F6: {F4: {-1.2220177986166332e+09, -3.2764475423036857e+09}}}, XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte{{F1: \"\\x9e\\x00\"}: {F1: \"\\x00\\x00\"}}}, F4: {-1.0060306983418753e+07}, F5: {C}, F6: {0: 80}, F7: {1609207365: 0, 2092504951: 1877580491}, F8: {F0: XInt8(-37), F2: true, F3: \"ΘΠΣΦ王普\", F7: 108, F8: C, F11: {Id: \"bcdeΔΘΠ\", Msg: \"Φ王\"}, F12: {Id: \"澤世界\", RetryCode: RetryBackoff, Msg: \"ΔΘΠΣΦ王\"}, F14: 29898, F15: 2465107563, F16: 703537128, F17: 10907673350192092042, F18: 2919667802991773779, F19: -11, F20: 38, F21: 5356, F23: -177103978, F24: 931968162, F28: 5.0028536e+07, F29: 7.305621239345392e+08, F30: 1.9862143149296916e+08}, F10: {F8: A}, F11: {F29: 3.5808997372158074e+08}, F12: {}, F13: {F14: 50491}}, {}}",
		Source: XArray2_XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					__VDLType_array_304,
				},
				F2: []int16{
					9473,
					5938,
				},
				F3: XList_Any{
					int16(2192),
					XStructDepth3_All{
						F0: XArray1_Set_XEnumBcd{
							{
								XEnumBcdD: struct{}{},
							},
						},
						F1: []XUnionDepth1_All{
							XUnionDepth1_AllF31{&XStructEmpty{}},
						},
						F2: XSet_XArray1_XStructEmpty{
							{}: struct{}{},
						},
						F3: map[XUnionDepth1_Float64]XUnionDepth1_Float64{
							XUnionDepth1_Float64F29{-1.1165922379858755e+08}: XUnionDepth1_Float64F29{-1.569161734832757e+09},
						},
						F4: XStructDepth2_All{
							F0: XArray2_TypeObject{
								vdl.AnyType,
								vdl.AnyType,
							},
							F1: XArray1_Uint32{
								2243984057,
							},
							F2: []int16{
								0,
								2479,
								0,
							},
							F3: XList_Any{
								XStructDepth1_XStructEmpty{},
							},
							F4: map[float64]struct{}{
								-1.5775969057942443e+09: struct{}{},
								-1.8198813631522796e+08: struct{}{},
							},
							F5: XSet_XEnumBcd{
								XEnumBcdB: struct{}{},
								XEnumBcdD: struct{}{},
							},
							F7: map[uint32]uint32{
								1301764874: 2534117066,
								3361917737: 1820099714,
								852495152:  1700539807,
							},
							F8: XStructDepth1_All{
								F0: XStructDepth3_XArray1_Set_XEnumBcd{
									F0: XArray1_Set_XEnumBcd{
										{
											XEnumBcdC: struct{}{},
										},
									},
								},
								F4: "Θ",
								F5: vdl.AnyType,
								F7: 88,
								F11: XNamedError{
									Id:  "Φ王普",
									Msg: "Σ",
								},
								F12: verror.FromWire(&vdl.WireError{
									Id:  "eΔΘΠΣΦ",
									Msg: "界",
								}),
								F13: 23563,
								F14: 9186,
								F15: 2475611575,
								F16: 3559311778,
								F17: 17737118169357497710,
								F18: 3558251967950055864,
								F19: -52,
								F21: 10308,
								F22: -6340,
								F23: 870930854,
								F24: -600680739,
								F25: 817015124780152078,
								F26: 896416494217595175,
								F28: 9.8687014e+08,
								F29: -1.4115442283059388e+08,
								F31: &XStructEmpty{},
								F32: &XNamedError{
									Id: "Π",
								},
							},
							F10: XUnionDepth1_AllF11{XNamedError{
								Msg: "ΔΘΠ",
							}},
							F11: XUnionDepth1_Float64F29{2.9914791016795073e+09},
							F12: &XStructDepth1_XEnumBcd{
								F9: XEnumBcdD,
							},
							F13: &XStructDepth1_XUint16{
								F14: 44301,
							},
						},
						F5: XUnionDepth2_AllF1{XArray2_XByte{
							3,
							197,
						}},
						F6: &XStructDepth2_Set_Float64{
							F4: map[float64]struct{}{
								-1.2220177986166332e+09: struct{}{},
								-3.2764475423036857e+09: struct{}{},
							},
						},
					},
					XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte{
						XUnionDepth2_XArray2_XByteF1{XArray2_XByte{
							158,
							0,
						}}: XUnionDepth2_XArray2_XByteF1{},
					},
				},
				F4: map[float64]struct{}{
					-1.0060306983418753e+07: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdC: struct{}{},
				},
				F6: map[byte]byte{
					0: 80,
				},
				F7: map[uint32]uint32{
					1609207365: 0,
					2092504951: 1877580491,
				},
				F8: XStructDepth1_All{
					F0: XInt8(-37),
					F2: true,
					F3: "ΘΠΣΦ王普",
					F5: vdl.AnyType,
					F7: 108,
					F8: XEnumAbcC,
					F11: XNamedError{
						Id:  "bcdeΔΘΠ",
						Msg: "Φ王",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "ΔΘΠΣΦ王",
					}),
					F14: 29898,
					F15: 2465107563,
					F16: 703537128,
					F17: 10907673350192092042,
					F18: 2919667802991773779,
					F19: -11,
					F20: 38,
					F21: 5356,
					F23: -177103978,
					F24: 931968162,
					F28: 5.0028536e+07,
					F29: 7.305621239345392e+08,
					F30: 1.9862143149296916e+08,
				},
				F10: XUnionDepth1_AllF8{},
				F11: XUnionDepth1_Float64F29{3.5808997372158074e+08},
				F12: &XStructDepth1_XEnumBcd{},
				F13: &XStructDepth1_XUint16{
					F14: 50491,
				},
			},
			{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray2_XStructDepth2_All{{F0: {typeobject(any), typeobject(XArray2_XEnumBcd)}, F2: {9473, 5938}, F3: {int16(2192), XStructDepth3_All{F0: {{D}}, F1: {{F31: {}}}, F2: {{}}, F3: {{F29: -1.1165922379858755e+08}: {F29: -1.569161734832757e+09}}, F4: {F1: {2243984057}, F2: {0, 2479, 0}, F3: {XStructDepth1_XStructEmpty{}}, F4: {-1.5775969057942443e+09, -1.8198813631522796e+08}, F5: {B, D}, F7: {1301764874: 2534117066, 3361917737: 1820099714, 852495152: 1700539807}, F8: {F0: XStructDepth3_XArray1_Set_XEnumBcd{F0: {{C}}}, F4: \"Θ\", F7: 88, F11: {Id: \"Φ王普\", Msg: \"Σ\"}, F12: {Id: \"eΔΘΠΣΦ\", Msg: \"界\"}, F13: 23563, F14: 9186, F15: 2475611575, F16: 3559311778, F17: 17737118169357497710, F18: 3558251967950055864, F19: -52, F21: 10308, F22: -6340, F23: 870930854, F24: -600680739, F25: 817015124780152078, F26: 896416494217595175, F28: 9.8687014e+08, F29: -1.4115442283059388e+08, F31: {}, F32: {Id: \"Π\"}}, F10: {F11: {Msg: \"ΔΘΠ\"}}, F11: {F29: 2.9914791016795073e+09}, F12: {F9: D}, F13: {F14: 44301}}, F5: {F1: \"\\x03\\xc5\"}, F6: {F4: {-1.2220177986166332e+09, -3.2764475423036857e+09}}}, XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte{{F1: \"\\x9e\\x00\"}: {F1: \"\\x00\\x00\"}}}, F4: {-1.0060306983418753e+07}, F5: {C}, F6: {0: 80}, F7: {1609207365: 0, 2092504951: 1877580491}, F8: {F0: XInt8(-37), F2: true, F3: \"ΘΠΣΦ王普\", F7: 108, F8: C, F11: {Id: \"bcdeΔΘΠ\", Msg: \"Φ王\"}, F12: {Id: \"澤世界\", RetryCode: RetryBackoff, Msg: \"ΔΘΠΣΦ王\"}, F14: 29898, F15: 2465107563, F16: 703537128, F17: 10907673350192092042, F18: 2919667802991773779, F19: -11, F20: 38, F21: 5356, F23: -177103978, F24: 931968162, F28: 5.0028536e+07, F29: 7.305621239345392e+08, F30: 1.9862143149296916e+08}, F10: {F8: A}, F11: {F29: 3.5808997372158074e+08}, F12: {}, F13: {F14: 50491}}, {}}",
		Target: XArray2_XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					__VDLType_array_304,
				},
				F2: []int16{
					9473,
					5938,
				},
				F3: XList_Any{
					int16(2192),
					XStructDepth3_All{
						F0: XArray1_Set_XEnumBcd{
							{
								XEnumBcdD: struct{}{},
							},
						},
						F1: []XUnionDepth1_All{
							XUnionDepth1_AllF31{&XStructEmpty{}},
						},
						F2: XSet_XArray1_XStructEmpty{
							{}: struct{}{},
						},
						F3: map[XUnionDepth1_Float64]XUnionDepth1_Float64{
							XUnionDepth1_Float64F29{-1.1165922379858755e+08}: XUnionDepth1_Float64F29{-1.569161734832757e+09},
						},
						F4: XStructDepth2_All{
							F0: XArray2_TypeObject{
								vdl.AnyType,
								vdl.AnyType,
							},
							F1: XArray1_Uint32{
								2243984057,
							},
							F2: []int16{
								0,
								2479,
								0,
							},
							F3: XList_Any{
								XStructDepth1_XStructEmpty{},
							},
							F4: map[float64]struct{}{
								-1.5775969057942443e+09: struct{}{},
								-1.8198813631522796e+08: struct{}{},
							},
							F5: XSet_XEnumBcd{
								XEnumBcdB: struct{}{},
								XEnumBcdD: struct{}{},
							},
							F7: map[uint32]uint32{
								1301764874: 2534117066,
								3361917737: 1820099714,
								852495152:  1700539807,
							},
							F8: XStructDepth1_All{
								F0: XStructDepth3_XArray1_Set_XEnumBcd{
									F0: XArray1_Set_XEnumBcd{
										{
											XEnumBcdC: struct{}{},
										},
									},
								},
								F4: "Θ",
								F5: vdl.AnyType,
								F7: 88,
								F11: XNamedError{
									Id:  "Φ王普",
									Msg: "Σ",
								},
								F12: verror.FromWire(&vdl.WireError{
									Id:  "eΔΘΠΣΦ",
									Msg: "界",
								}),
								F13: 23563,
								F14: 9186,
								F15: 2475611575,
								F16: 3559311778,
								F17: 17737118169357497710,
								F18: 3558251967950055864,
								F19: -52,
								F21: 10308,
								F22: -6340,
								F23: 870930854,
								F24: -600680739,
								F25: 817015124780152078,
								F26: 896416494217595175,
								F28: 9.8687014e+08,
								F29: -1.4115442283059388e+08,
								F31: &XStructEmpty{},
								F32: &XNamedError{
									Id: "Π",
								},
							},
							F10: XUnionDepth1_AllF11{XNamedError{
								Msg: "ΔΘΠ",
							}},
							F11: XUnionDepth1_Float64F29{2.9914791016795073e+09},
							F12: &XStructDepth1_XEnumBcd{
								F9: XEnumBcdD,
							},
							F13: &XStructDepth1_XUint16{
								F14: 44301,
							},
						},
						F5: XUnionDepth2_AllF1{XArray2_XByte{
							3,
							197,
						}},
						F6: &XStructDepth2_Set_Float64{
							F4: map[float64]struct{}{
								-1.2220177986166332e+09: struct{}{},
								-3.2764475423036857e+09: struct{}{},
							},
						},
					},
					XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte{
						XUnionDepth2_XArray2_XByteF1{XArray2_XByte{
							158,
							0,
						}}: XUnionDepth2_XArray2_XByteF1{},
					},
				},
				F4: map[float64]struct{}{
					-1.0060306983418753e+07: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdC: struct{}{},
				},
				F6: map[byte]byte{
					0: 80,
				},
				F7: map[uint32]uint32{
					1609207365: 0,
					2092504951: 1877580491,
				},
				F8: XStructDepth1_All{
					F0: XInt8(-37),
					F2: true,
					F3: "ΘΠΣΦ王普",
					F5: vdl.AnyType,
					F7: 108,
					F8: XEnumAbcC,
					F11: XNamedError{
						Id:  "bcdeΔΘΠ",
						Msg: "Φ王",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "ΔΘΠΣΦ王",
					}),
					F14: 29898,
					F15: 2465107563,
					F16: 703537128,
					F17: 10907673350192092042,
					F18: 2919667802991773779,
					F19: -11,
					F20: 38,
					F21: 5356,
					F23: -177103978,
					F24: 931968162,
					F28: 5.0028536e+07,
					F29: 7.305621239345392e+08,
					F30: 1.9862143149296916e+08,
				},
				F10: XUnionDepth1_AllF8{},
				F11: XUnionDepth1_Float64F29{3.5808997372158074e+08},
				F12: &XStructDepth1_XEnumBcd{},
				F13: &XStructDepth1_XUint16{
					F14: 50491,
				},
			},
			{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
		},
		SourceLabel: "XList_Any{XStructDepth2_All{F0: {typeobject(any), typeobject(XArray2_XEnumBcd)}, F2: {9473, 5938}, F3: {int16(2192), XStructDepth3_All{F0: {{D}}, F1: {{F31: {}}}, F2: {{}}, F3: {{F29: -1.1165922379858755e+08}: {F29: -1.569161734832757e+09}}, F4: {F1: {2243984057}, F2: {0, 2479, 0}, F3: {XStructDepth1_XStructEmpty{}}, F4: {-1.5775969057942443e+09, -1.8198813631522796e+08}, F5: {B, D}, F7: {1301764874: 2534117066, 3361917737: 1820099714, 852495152: 1700539807}, F8: {F0: XStructDepth3_XArray1_Set_XEnumBcd{F0: {{C}}}, F4: \"Θ\", F7: 88, F11: {Id: \"Φ王普\", Msg: \"Σ\"}, F12: {Id: \"eΔΘΠΣΦ\", Msg: \"界\"}, F13: 23563, F14: 9186, F15: 2475611575, F16: 3559311778, F17: 17737118169357497710, F18: 3558251967950055864, F19: -52, F21: 10308, F22: -6340, F23: 870930854, F24: -600680739, F25: 817015124780152078, F26: 896416494217595175, F28: 9.8687014e+08, F29: -1.4115442283059388e+08, F31: {}, F32: {Id: \"Π\"}}, F10: {F11: {Msg: \"ΔΘΠ\"}}, F11: {F29: 2.9914791016795073e+09}, F12: {F9: D}, F13: {F14: 44301}}, F5: {F1: \"\\x03\\xc5\"}, F6: {F4: {-1.2220177986166332e+09, -3.2764475423036857e+09}}}, XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte{{F1: \"\\x9e\\x00\"}: {F1: \"\\x00\\x00\"}}}, F4: {-1.0060306983418753e+07}, F5: {C}, F6: {0: 80}, F7: {1609207365: 0, 2092504951: 1877580491}, F8: {F0: XInt8(-37), F2: true, F3: \"ΘΠΣΦ王普\", F7: 108, F8: C, F11: {Id: \"bcdeΔΘΠ\", Msg: \"Φ王\"}, F12: {Id: \"澤世界\", RetryCode: RetryBackoff, Msg: \"ΔΘΠΣΦ王\"}, F14: 29898, F15: 2465107563, F16: 703537128, F17: 10907673350192092042, F18: 2919667802991773779, F19: -11, F20: 38, F21: 5356, F23: -177103978, F24: 931968162, F28: 5.0028536e+07, F29: 7.305621239345392e+08, F30: 1.9862143149296916e+08}, F10: {F8: A}, F11: {F29: 3.5808997372158074e+08}, F12: {}, F13: {F14: 50491}}, XStructDepth2_All{}}",
		Source: XList_Any{
			XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					__VDLType_array_304,
				},
				F2: []int16{
					9473,
					5938,
				},
				F3: XList_Any{
					int16(2192),
					XStructDepth3_All{
						F0: XArray1_Set_XEnumBcd{
							{
								XEnumBcdD: struct{}{},
							},
						},
						F1: []XUnionDepth1_All{
							XUnionDepth1_AllF31{&XStructEmpty{}},
						},
						F2: XSet_XArray1_XStructEmpty{
							{}: struct{}{},
						},
						F3: map[XUnionDepth1_Float64]XUnionDepth1_Float64{
							XUnionDepth1_Float64F29{-1.1165922379858755e+08}: XUnionDepth1_Float64F29{-1.569161734832757e+09},
						},
						F4: XStructDepth2_All{
							F0: XArray2_TypeObject{
								vdl.AnyType,
								vdl.AnyType,
							},
							F1: XArray1_Uint32{
								2243984057,
							},
							F2: []int16{
								0,
								2479,
								0,
							},
							F3: XList_Any{
								XStructDepth1_XStructEmpty{},
							},
							F4: map[float64]struct{}{
								-1.5775969057942443e+09: struct{}{},
								-1.8198813631522796e+08: struct{}{},
							},
							F5: XSet_XEnumBcd{
								XEnumBcdB: struct{}{},
								XEnumBcdD: struct{}{},
							},
							F7: map[uint32]uint32{
								1301764874: 2534117066,
								3361917737: 1820099714,
								852495152:  1700539807,
							},
							F8: XStructDepth1_All{
								F0: XStructDepth3_XArray1_Set_XEnumBcd{
									F0: XArray1_Set_XEnumBcd{
										{
											XEnumBcdC: struct{}{},
										},
									},
								},
								F4: "Θ",
								F5: vdl.AnyType,
								F7: 88,
								F11: XNamedError{
									Id:  "Φ王普",
									Msg: "Σ",
								},
								F12: verror.FromWire(&vdl.WireError{
									Id:  "eΔΘΠΣΦ",
									Msg: "界",
								}),
								F13: 23563,
								F14: 9186,
								F15: 2475611575,
								F16: 3559311778,
								F17: 17737118169357497710,
								F18: 3558251967950055864,
								F19: -52,
								F21: 10308,
								F22: -6340,
								F23: 870930854,
								F24: -600680739,
								F25: 817015124780152078,
								F26: 896416494217595175,
								F28: 9.8687014e+08,
								F29: -1.4115442283059388e+08,
								F31: &XStructEmpty{},
								F32: &XNamedError{
									Id: "Π",
								},
							},
							F10: XUnionDepth1_AllF11{XNamedError{
								Msg: "ΔΘΠ",
							}},
							F11: XUnionDepth1_Float64F29{2.9914791016795073e+09},
							F12: &XStructDepth1_XEnumBcd{
								F9: XEnumBcdD,
							},
							F13: &XStructDepth1_XUint16{
								F14: 44301,
							},
						},
						F5: XUnionDepth2_AllF1{XArray2_XByte{
							3,
							197,
						}},
						F6: &XStructDepth2_Set_Float64{
							F4: map[float64]struct{}{
								-1.2220177986166332e+09: struct{}{},
								-3.2764475423036857e+09: struct{}{},
							},
						},
					},
					XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte{
						XUnionDepth2_XArray2_XByteF1{XArray2_XByte{
							158,
							0,
						}}: XUnionDepth2_XArray2_XByteF1{},
					},
				},
				F4: map[float64]struct{}{
					-1.0060306983418753e+07: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdC: struct{}{},
				},
				F6: map[byte]byte{
					0: 80,
				},
				F7: map[uint32]uint32{
					1609207365: 0,
					2092504951: 1877580491,
				},
				F8: XStructDepth1_All{
					F0: XInt8(-37),
					F2: true,
					F3: "ΘΠΣΦ王普",
					F5: vdl.AnyType,
					F7: 108,
					F8: XEnumAbcC,
					F11: XNamedError{
						Id:  "bcdeΔΘΠ",
						Msg: "Φ王",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "ΔΘΠΣΦ王",
					}),
					F14: 29898,
					F15: 2465107563,
					F16: 703537128,
					F17: 10907673350192092042,
					F18: 2919667802991773779,
					F19: -11,
					F20: 38,
					F21: 5356,
					F23: -177103978,
					F24: 931968162,
					F28: 5.0028536e+07,
					F29: 7.305621239345392e+08,
					F30: 1.9862143149296916e+08,
				},
				F10: XUnionDepth1_AllF8{},
				F11: XUnionDepth1_Float64F29{3.5808997372158074e+08},
				F12: &XStructDepth1_XEnumBcd{},
				F13: &XStructDepth1_XUint16{
					F14: 50491,
				},
			},
			XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray2_XUnionDepth2_All{}",
		Target: XArray2_XUnionDepth2_All{
			XUnionDepth2_AllF0{},
			XUnionDepth2_AllF0{},
		},
		SourceLabel: "XArray2_XUnionDepth2_All{}",
		Source: XArray2_XUnionDepth2_All{
			XUnionDepth2_AllF0{},
			XUnionDepth2_AllF0{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray2_XUnionDepth2_All{}",
		Target: XArray2_XUnionDepth2_All{
			XUnionDepth2_AllF0{},
			XUnionDepth2_AllF0{},
		},
		SourceLabel: "XList_XUnionDepth2_All{{F0: {}}, {F0: {}}}",
		Source: XList_XUnionDepth2_All{
			XUnionDepth2_AllF0{},
			XUnionDepth2_AllF0{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray2_XUnionDepth2_All{}",
		Target: XArray2_XUnionDepth2_All{
			XUnionDepth2_AllF0{},
			XUnionDepth2_AllF0{},
		},
		SourceLabel: "[]any{XUnionDepth2_All{F0: {}}, XUnionDepth2_All{F0: {}}}",
		Source: []interface{}{
			XUnionDepth2_All(XUnionDepth2_AllF0{}),
			XUnionDepth2_All(XUnionDepth2_AllF0{}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray2_XUnionDepth2_All{{F13: {F28: 1.5}}, {F13: {F28: 1.5}}}",
		Target: XArray2_XUnionDepth2_All{
			XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
				F28: 1.5,
			}},
			XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
				F28: 1.5,
			}},
		},
		SourceLabel: "XArray2_XUnionDepth2_All{{F13: {F28: 1.5}}, {F13: {F28: 1.5}}}",
		Source: XArray2_XUnionDepth2_All{
			XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
				F28: 1.5,
			}},
			XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
				F28: 1.5,
			}},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray2_XUnionDepth2_All{{F13: {F28: 1.5}}, {F13: {F28: 1.5}}}",
		Target: XArray2_XUnionDepth2_All{
			XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
				F28: 1.5,
			}},
			XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
				F28: 1.5,
			}},
		},
		SourceLabel: "[]any{XUnionDepth2_All{F13: {F28: 1.5}}, XUnionDepth2_All{F13: {F28: 1.5}}}",
		Source: []interface{}{
			XUnionDepth2_All(XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
				F28: 1.5,
			}}),
			XUnionDepth2_All(XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
				F28: 1.5,
			}}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray2_XUnionDepth2_All{{F0: {}}, {F9: {}}}",
		Target: XArray2_XUnionDepth2_All{
			XUnionDepth2_AllF0{},
			XUnionDepth2_AllF9{},
		},
		SourceLabel: "XArray2_XUnionDepth2_All{{F0: {}}, {F9: {}}}",
		Source: XArray2_XUnionDepth2_All{
			XUnionDepth2_AllF0{},
			XUnionDepth2_AllF9{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray2_XUnionDepth2_All{{F0: {}}, {F9: {}}}",
		Target: XArray2_XUnionDepth2_All{
			XUnionDepth2_AllF0{},
			XUnionDepth2_AllF9{},
		},
		SourceLabel: "XList_XUnionDepth2_All{{F0: {}}, {F9: {}}}",
		Source: XList_XUnionDepth2_All{
			XUnionDepth2_AllF0{},
			XUnionDepth2_AllF9{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XArray3_OptXStructDepth2_Set_Float64{}",
		Target:      XArray3_OptXStructDepth2_Set_Float64{},
		SourceLabel: "XArray3_OptXStructDepth2_Set_Float64{}",
		Source:      XArray3_OptXStructDepth2_Set_Float64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray3_OptXStructDepth2_Set_Float64{}",
		Target:      XArray3_OptXStructDepth2_Set_Float64{},
		SourceLabel: "[]?XStructDepth2_Set_Float64{nil, nil, nil}",
		Source: []*XStructDepth2_Set_Float64{
			nil,
			nil,
			nil,
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XArray3_OptXStructDepth2_Set_Float64{}",
		Target:      XArray3_OptXStructDepth2_Set_Float64{},
		SourceLabel: "XList_OptXStructDepth2_Set_Float64{nil, nil, nil}",
		Source: XList_OptXStructDepth2_Set_Float64{
			nil,
			nil,
			nil,
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XArray3_OptXStructDepth2_Set_Float64{{F4: {1.5}}, {F4: {1.5}}, {F4: {1.5}}}",
		Target: XArray3_OptXStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
		SourceLabel: "XArray3_OptXStructDepth2_Set_Float64{{F4: {1.5}}, {F4: {1.5}}, {F4: {1.5}}}",
		Source: XArray3_OptXStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XArray3_OptXStructDepth2_Set_Float64{{F4: {1.5}}, {F4: {1.5}}, {F4: {1.5}}}",
		Target: XArray3_OptXStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
		SourceLabel: "XList_Any{?XStructDepth2_Set_Float64{F4: {1.5}}, ?XStructDepth2_Set_Float64{F4: {1.5}}, ?XStructDepth2_Set_Float64{F4: {1.5}}}",
		Source: XList_Any{
			&XStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
			&XStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
			&XStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XArray3_OptXStructDepth2_Set_Float64{{F4: {2.7492247330252223e+09}}, nil, {F4: {-2.0684219699173448e+09, -2.245382466748307e+07, 0}}}",
		Target: XArray3_OptXStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					2.7492247330252223e+09: struct{}{},
				},
			},
			nil,
			{
				F4: map[float64]struct{}{
					-2.0684219699173448e+09: struct{}{},
					-2.245382466748307e+07:  struct{}{},
					0: struct{}{},
				},
			},
		},
		SourceLabel: "XArray3_OptXStructDepth2_Set_Float64{{F4: {2.7492247330252223e+09}}, nil, {F4: {-2.0684219699173448e+09, -2.245382466748307e+07, 0}}}",
		Source: XArray3_OptXStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					2.7492247330252223e+09: struct{}{},
				},
			},
			nil,
			{
				F4: map[float64]struct{}{
					-2.0684219699173448e+09: struct{}{},
					-2.245382466748307e+07:  struct{}{},
					0: struct{}{},
				},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XArray3_OptXStructDepth2_Set_Float64{{F4: {2.7492247330252223e+09}}, nil, {F4: {-2.0684219699173448e+09, -2.245382466748307e+07, 0}}}",
		Target: XArray3_OptXStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					2.7492247330252223e+09: struct{}{},
				},
			},
			nil,
			{
				F4: map[float64]struct{}{
					-2.0684219699173448e+09: struct{}{},
					-2.245382466748307e+07:  struct{}{},
					0: struct{}{},
				},
			},
		},
		SourceLabel: "[]any{?XStructDepth2_Set_Float64{F4: {2.7492247330252223e+09}}, nil, ?XStructDepth2_Set_Float64{F4: {-2.0684219699173448e+09, -2.245382466748307e+07, 0}}}",
		Source: []interface{}{
			&XStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					2.7492247330252223e+09: struct{}{},
				},
			},
			nil,
			&XStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					-2.0684219699173448e+09: struct{}{},
					-2.245382466748307e+07:  struct{}{},
					0: struct{}{},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]XArray1_Set_XEnumBcd{}",
		Target:      []XArray1_Set_XEnumBcd(nil),
		SourceLabel: "[]XArray1_Set_XEnumBcd{}",
		Source:      []XArray1_Set_XEnumBcd(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XArray1_Set_XEnumBcd{}",
		Target:      []XArray1_Set_XEnumBcd(nil),
		SourceLabel: "XList_Any{}",
		Source:      XList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XArray1_Set_XEnumBcd{}",
		Target:      []XArray1_Set_XEnumBcd(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]XArray1_Set_XEnumBcd{{{D}}}",
		Target: []XArray1_Set_XEnumBcd{
			{
				{
					XEnumBcdD: struct{}{},
				},
			},
		},
		SourceLabel: "[]XArray1_Set_XEnumBcd{{{D}}}",
		Source: []XArray1_Set_XEnumBcd{
			{
				{
					XEnumBcdD: struct{}{},
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]XArray1_Set_XEnumBcd{{{D}}}",
		Target: []XArray1_Set_XEnumBcd{
			{
				{
					XEnumBcdD: struct{}{},
				},
			},
		},
		SourceLabel: "XList_Any{XArray1_Set_XEnumBcd{{D}}}",
		Source: XList_Any{
			XArray1_Set_XEnumBcd{
				{
					XEnumBcdD: struct{}{},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[][]XList_Error{}",
		Target:      [][]XList_Error(nil),
		SourceLabel: "[][]XList_Error{}",
		Source:      [][]XList_Error(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[][]XList_Error{}",
		Target:      [][]XList_Error(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[][]XList_Error{}",
		Target:      [][]XList_Error(nil),
		SourceLabel: "XList_Any{}",
		Source:      XList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[][]XList_Error{{{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Target: [][]XList_Error{
			{
				{
					verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
				},
			},
		},
		SourceLabel: "[][]XList_Error{{{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Source: [][]XList_Error{
			{
				{
					verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[][]XList_Error{{{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Target: [][]XList_Error{
			{
				{
					verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
				},
			},
		},
		SourceLabel: "[]any{[]XList_Error{{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Source: []interface{}{
			[]XList_Error{
				{
					verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[][]XList_Error{{}, {{{Id: \"Φ王普\", RetryCode: RetryRefetch, Msg: \"cdeΔΘΠ\"}, {}}}}",
		Target: [][]XList_Error{
			nil,
			{
				{
					verror.FromWire(&vdl.WireError{
						Id:        "Φ王普",
						RetryCode: vdl.WireRetryCodeRetryRefetch,
						Msg:       "cdeΔΘΠ",
					}),
					verror.FromWire(&vdl.WireError{}),
				},
			},
		},
		SourceLabel: "[][]XList_Error{{}, {{{Id: \"Φ王普\", RetryCode: RetryRefetch, Msg: \"cdeΔΘΠ\"}, {}}}}",
		Source: [][]XList_Error{
			nil,
			{
				{
					verror.FromWire(&vdl.WireError{
						Id:        "Φ王普",
						RetryCode: vdl.WireRetryCodeRetryRefetch,
						Msg:       "cdeΔΘΠ",
					}),
					verror.FromWire(&vdl.WireError{}),
				},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[][]XList_Error{{}, {{{Id: \"Φ王普\", RetryCode: RetryRefetch, Msg: \"cdeΔΘΠ\"}, {}}}}",
		Target: [][]XList_Error{
			nil,
			{
				{
					verror.FromWire(&vdl.WireError{
						Id:        "Φ王普",
						RetryCode: vdl.WireRetryCodeRetryRefetch,
						Msg:       "cdeΔΘΠ",
					}),
					verror.FromWire(&vdl.WireError{}),
				},
			},
		},
		SourceLabel: "[]any{[]XList_Error{}, []XList_Error{{{Id: \"Φ王普\", RetryCode: RetryRefetch, Msg: \"cdeΔΘΠ\"}, {}}}}",
		Source: []interface{}{
			[]XList_Error(nil),
			[]XList_Error{
				{
					verror.FromWire(&vdl.WireError{
						Id:        "Φ王普",
						RetryCode: vdl.WireRetryCodeRetryRefetch,
						Msg:       "cdeΔΘΠ",
					}),
					verror.FromWire(&vdl.WireError{}),
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]XSet_XArray1_XStructEmpty{}",
		Target:      []XSet_XArray1_XStructEmpty(nil),
		SourceLabel: "[]XSet_XArray1_XStructEmpty{}",
		Source:      []XSet_XArray1_XStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XSet_XArray1_XStructEmpty{}",
		Target:      []XSet_XArray1_XStructEmpty(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XSet_XArray1_XStructEmpty{}",
		Target:      []XSet_XArray1_XStructEmpty(nil),
		SourceLabel: "XList_XSet_XArray1_XStructEmpty{}",
		Source:      XList_XSet_XArray1_XStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]XSet_XArray1_XStructEmpty{{{}}}",
		Target: []XSet_XArray1_XStructEmpty{
			{
				{}: struct{}{},
			},
		},
		SourceLabel: "[]XSet_XArray1_XStructEmpty{{{}}}",
		Source: []XSet_XArray1_XStructEmpty{
			{
				{}: struct{}{},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]XSet_XArray1_XStructEmpty{{{}}}",
		Target: []XSet_XArray1_XStructEmpty{
			{
				{}: struct{}{},
			},
		},
		SourceLabel: "[]any{XSet_XArray1_XStructEmpty{{}}}",
		Source: []interface{}{
			XSet_XArray1_XStructEmpty{
				{}: struct{}{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]XMap_XArray3_XBool_XArray3_XBool{}",
		Target:      []XMap_XArray3_XBool_XArray3_XBool(nil),
		SourceLabel: "[]XMap_XArray3_XBool_XArray3_XBool{}",
		Source:      []XMap_XArray3_XBool_XArray3_XBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XMap_XArray3_XBool_XArray3_XBool{}",
		Target:      []XMap_XArray3_XBool_XArray3_XBool(nil),
		SourceLabel: "XList_Any{}",
		Source:      XList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XMap_XArray3_XBool_XArray3_XBool{}",
		Target:      []XMap_XArray3_XBool_XArray3_XBool(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]XMap_XArray3_XBool_XArray3_XBool{{{true, true, true}: {true, true, true}}}",
		Target: []XMap_XArray3_XBool_XArray3_XBool{
			{
				{
					true,
					true,
					true,
				}: {
					true,
					true,
					true,
				},
			},
		},
		SourceLabel: "[]XMap_XArray3_XBool_XArray3_XBool{{{true, true, true}: {true, true, true}}}",
		Source: []XMap_XArray3_XBool_XArray3_XBool{
			{
				{
					true,
					true,
					true,
				}: {
					true,
					true,
					true,
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]XMap_XArray3_XBool_XArray3_XBool{{{true, true, true}: {true, true, true}}}",
		Target: []XMap_XArray3_XBool_XArray3_XBool{
			{
				{
					true,
					true,
					true,
				}: {
					true,
					true,
					true,
				},
			},
		},
		SourceLabel: "XList_Any{XMap_XArray3_XBool_XArray3_XBool{{true, true, true}: {true, true, true}}}",
		Source: XList_Any{
			XMap_XArray3_XBool_XArray3_XBool{
				{
					true,
					true,
					true,
				}: {
					true,
					true,
					true,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]XStructDepth2_All{}",
		Target:      []XStructDepth2_All(nil),
		SourceLabel: "[]XStructDepth2_All{}",
		Source:      []XStructDepth2_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XStructDepth2_All{}",
		Target:      []XStructDepth2_All(nil),
		SourceLabel: "XList_OptXStructEmpty{}",
		Source:      XList_OptXStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XStructDepth2_All{}",
		Target:      []XStructDepth2_All(nil),
		SourceLabel: "[]?XStructDepth2_Set_Float64{}",
		Source:      []*XStructDepth2_Set_Float64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]XStructDepth2_All{{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Target: []XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: XArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: XList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: XStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: XEnumAbcC,
					F9: XEnumBcdD,
					F11: XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: XUnionDepth1_Float64F29{1.5},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{
					F14: 123,
				},
			},
		},
		SourceLabel: "[]XStructDepth2_All{{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Source: []XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: XArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: XList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: XStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: XEnumAbcC,
					F9: XEnumBcdD,
					F11: XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: XUnionDepth1_Float64F29{1.5},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{
					F14: 123,
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]XStructDepth2_All{{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Target: []XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: XArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: XList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: XStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: XEnumAbcC,
					F9: XEnumBcdD,
					F11: XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: XUnionDepth1_Float64F29{1.5},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{
					F14: 123,
				},
			},
		},
		SourceLabel: "[]any{XStructDepth2_All{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Source: []interface{}{
			XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: XArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: XList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: XStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: XEnumAbcC,
					F9: XEnumBcdD,
					F11: XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: XUnionDepth1_Float64F29{1.5},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{
					F14: 123,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]XStructDepth2_All{{F0: {typeobject(XUnionDepth2_XStructDepth1_Int8), typeobject(XStructEmpty)}, F1: {1903587924}, F4: {-1.5720458870141203e+09, -1.9983283293632567e+07, -3.238533857464902e+07}, F5: {C}, F6: {185: 224, 250: 166, 66: 55}, F7: {1711866111: 980372964}, F8: {F0: set[XEnumBcd]{}, F3: \"Π\", F4: \"澤世\", F6: 68, F7: 84, F8: B, F9: C, F11: {Id: \"普\", Msg: \"ΘΠΣΦ王\"}, F12: {Id: \"Φ王普澤世\", RetryCode: RetryConnection}, F13: 42676, F15: 408799640, F16: 789811085, F17: 6007520861701348572, F18: 11852786787010219255, F20: -59, F21: -5651, F22: -5518, F23: 809697317, F24: 894274817, F25: -2773492329477941139, F26: 4525864791192120644, F27: 7.8164875e+06, F28: 1.4380653e+08, F29: -2.4959352516715804e+08, F32: {Id: \"Σ\", Msg: \"ΠΣΦ\"}}, F10: {F11: {}}, F11: {F29: 1.2791933776285827e+09}, F12: {}, F13: {F14: 7158}}, {F0: {typeobject(any), typeobject(XUnionDepth1_Uint32)}, F1: {750756465}, F2: {-3324, 11455, 0}, F3: {XList_String{\"世界\", \"ΘΠΣ\", \"deΔΘΠΣΦ王普澤世\"}}, F4: {2.3672634377113853e+09}, F5: {C}, F6: {122: 240, 209: 0, 95: 222}, F8: {F0: XArray2_XEnumAbc{}, F3: \"abcdeΔΘ\", F4: \"deΔΘ\", F6: 79, F7: 43, F8: B, F11: {Id: \"cdeΔΘ\", Msg: \"deΔΘΠΣΦ王普\"}, F12: {Id: \"deΔΘΠΣΦ王\", RetryCode: RetryBackoff, Msg: \"Σ\"}, F13: 63812, F14: 25390, F15: 2173994838, F16: 1085303467, F18: 1659981826689811090, F19: 61, F20: -19, F21: -7658, F22: 2488, F23: -326261542, F24: 912306433, F25: -1472564370594820179, F26: 5918426459813665, F27: 2.8385942e+08, F28: 1.446681e+09, F29: -1.5443370570096679e+09, F30: 3.184784041271269e+09, F31: {}, F32: {}}, F9: {F1: true}, F10: {F32: nil}, F12: {}}}",
		Target: []XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					__VDLType_union_305,
					__VDLType_struct_306,
				},
				F1: XArray1_Uint32{
					1903587924,
				},
				F4: map[float64]struct{}{
					-1.5720458870141203e+09: struct{}{},
					-1.9983283293632567e+07: struct{}{},
					-3.238533857464902e+07:  struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdC: struct{}{},
				},
				F6: map[byte]byte{
					185: 224,
					250: 166,
					66:  55,
				},
				F7: map[uint32]uint32{
					1711866111: 980372964,
				},
				F8: XStructDepth1_All{
					F0: map[XEnumBcd]struct{}(nil),
					F3: "Π",
					F4: "澤世",
					F5: vdl.AnyType,
					F6: 68,
					F7: 84,
					F8: XEnumAbcB,
					F9: XEnumBcdC,
					F11: XNamedError{
						Id:  "普",
						Msg: "ΘΠΣΦ王",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "Φ王普澤世",
						RetryCode: vdl.WireRetryCodeRetryConnection,
					}),
					F13: 42676,
					F15: 408799640,
					F16: 789811085,
					F17: 6007520861701348572,
					F18: 11852786787010219255,
					F20: -59,
					F21: -5651,
					F22: -5518,
					F23: 809697317,
					F24: 894274817,
					F25: -2773492329477941139,
					F26: 4525864791192120644,
					F27: 7.8164875e+06,
					F28: 1.4380653e+08,
					F29: -2.4959352516715804e+08,
					F32: &XNamedError{
						Id:  "Σ",
						Msg: "ΠΣΦ",
					},
				},
				F10: XUnionDepth1_AllF11{},
				F11: XUnionDepth1_Float64F29{1.2791933776285827e+09},
				F12: &XStructDepth1_XEnumBcd{},
				F13: &XStructDepth1_XUint16{
					F14: 7158,
				},
			},
			{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					__VDLType_union_307,
				},
				F1: XArray1_Uint32{
					750756465,
				},
				F2: []int16{
					-3324,
					11455,
					0,
				},
				F3: XList_Any{
					XList_String{
						"世界",
						"ΘΠΣ",
						"deΔΘΠΣΦ王普澤世",
					},
				},
				F4: map[float64]struct{}{
					2.3672634377113853e+09: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdC: struct{}{},
				},
				F6: map[byte]byte{
					122: 240,
					209: 0,
					95:  222,
				},
				F8: XStructDepth1_All{
					F0: XArray2_XEnumAbc{},
					F3: "abcdeΔΘ",
					F4: "deΔΘ",
					F5: vdl.AnyType,
					F6: 79,
					F7: 43,
					F8: XEnumAbcB,
					F11: XNamedError{
						Id:  "cdeΔΘ",
						Msg: "deΔΘΠΣΦ王普",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "deΔΘΠΣΦ王",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "Σ",
					}),
					F13: 63812,
					F14: 25390,
					F15: 2173994838,
					F16: 1085303467,
					F18: 1659981826689811090,
					F19: 61,
					F20: -19,
					F21: -7658,
					F22: 2488,
					F23: -326261542,
					F24: 912306433,
					F25: -1472564370594820179,
					F26: 5918426459813665,
					F27: 2.8385942e+08,
					F28: 1.446681e+09,
					F29: -1.5443370570096679e+09,
					F30: 3.184784041271269e+09,
					F31: &XStructEmpty{},
					F32: &XNamedError{},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{},
				F11: XUnionDepth1_Float64F29{},
				F12: &XStructDepth1_XEnumBcd{},
			},
		},
		SourceLabel: "[]XStructDepth2_All{{F0: {typeobject(XUnionDepth2_XStructDepth1_Int8), typeobject(XStructEmpty)}, F1: {1903587924}, F4: {-1.5720458870141203e+09, -1.9983283293632567e+07, -3.238533857464902e+07}, F5: {C}, F6: {185: 224, 250: 166, 66: 55}, F7: {1711866111: 980372964}, F8: {F0: set[XEnumBcd]{}, F3: \"Π\", F4: \"澤世\", F6: 68, F7: 84, F8: B, F9: C, F11: {Id: \"普\", Msg: \"ΘΠΣΦ王\"}, F12: {Id: \"Φ王普澤世\", RetryCode: RetryConnection}, F13: 42676, F15: 408799640, F16: 789811085, F17: 6007520861701348572, F18: 11852786787010219255, F20: -59, F21: -5651, F22: -5518, F23: 809697317, F24: 894274817, F25: -2773492329477941139, F26: 4525864791192120644, F27: 7.8164875e+06, F28: 1.4380653e+08, F29: -2.4959352516715804e+08, F32: {Id: \"Σ\", Msg: \"ΠΣΦ\"}}, F10: {F11: {}}, F11: {F29: 1.2791933776285827e+09}, F12: {}, F13: {F14: 7158}}, {F0: {typeobject(any), typeobject(XUnionDepth1_Uint32)}, F1: {750756465}, F2: {-3324, 11455, 0}, F3: {XList_String{\"世界\", \"ΘΠΣ\", \"deΔΘΠΣΦ王普澤世\"}}, F4: {2.3672634377113853e+09}, F5: {C}, F6: {122: 240, 209: 0, 95: 222}, F8: {F0: XArray2_XEnumAbc{}, F3: \"abcdeΔΘ\", F4: \"deΔΘ\", F6: 79, F7: 43, F8: B, F11: {Id: \"cdeΔΘ\", Msg: \"deΔΘΠΣΦ王普\"}, F12: {Id: \"deΔΘΠΣΦ王\", RetryCode: RetryBackoff, Msg: \"Σ\"}, F13: 63812, F14: 25390, F15: 2173994838, F16: 1085303467, F18: 1659981826689811090, F19: 61, F20: -19, F21: -7658, F22: 2488, F23: -326261542, F24: 912306433, F25: -1472564370594820179, F26: 5918426459813665, F27: 2.8385942e+08, F28: 1.446681e+09, F29: -1.5443370570096679e+09, F30: 3.184784041271269e+09, F31: {}, F32: {}}, F9: {F1: true}, F10: {F32: nil}, F12: {}}}",
		Source: []XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					__VDLType_union_305,
					__VDLType_struct_306,
				},
				F1: XArray1_Uint32{
					1903587924,
				},
				F4: map[float64]struct{}{
					-1.5720458870141203e+09: struct{}{},
					-1.9983283293632567e+07: struct{}{},
					-3.238533857464902e+07:  struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdC: struct{}{},
				},
				F6: map[byte]byte{
					185: 224,
					250: 166,
					66:  55,
				},
				F7: map[uint32]uint32{
					1711866111: 980372964,
				},
				F8: XStructDepth1_All{
					F0: map[XEnumBcd]struct{}(nil),
					F3: "Π",
					F4: "澤世",
					F5: vdl.AnyType,
					F6: 68,
					F7: 84,
					F8: XEnumAbcB,
					F9: XEnumBcdC,
					F11: XNamedError{
						Id:  "普",
						Msg: "ΘΠΣΦ王",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "Φ王普澤世",
						RetryCode: vdl.WireRetryCodeRetryConnection,
					}),
					F13: 42676,
					F15: 408799640,
					F16: 789811085,
					F17: 6007520861701348572,
					F18: 11852786787010219255,
					F20: -59,
					F21: -5651,
					F22: -5518,
					F23: 809697317,
					F24: 894274817,
					F25: -2773492329477941139,
					F26: 4525864791192120644,
					F27: 7.8164875e+06,
					F28: 1.4380653e+08,
					F29: -2.4959352516715804e+08,
					F32: &XNamedError{
						Id:  "Σ",
						Msg: "ΠΣΦ",
					},
				},
				F10: XUnionDepth1_AllF11{},
				F11: XUnionDepth1_Float64F29{1.2791933776285827e+09},
				F12: &XStructDepth1_XEnumBcd{},
				F13: &XStructDepth1_XUint16{
					F14: 7158,
				},
			},
			{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					__VDLType_union_307,
				},
				F1: XArray1_Uint32{
					750756465,
				},
				F2: []int16{
					-3324,
					11455,
					0,
				},
				F3: XList_Any{
					XList_String{
						"世界",
						"ΘΠΣ",
						"deΔΘΠΣΦ王普澤世",
					},
				},
				F4: map[float64]struct{}{
					2.3672634377113853e+09: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdC: struct{}{},
				},
				F6: map[byte]byte{
					122: 240,
					209: 0,
					95:  222,
				},
				F8: XStructDepth1_All{
					F0: XArray2_XEnumAbc{},
					F3: "abcdeΔΘ",
					F4: "deΔΘ",
					F5: vdl.AnyType,
					F6: 79,
					F7: 43,
					F8: XEnumAbcB,
					F11: XNamedError{
						Id:  "cdeΔΘ",
						Msg: "deΔΘΠΣΦ王普",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "deΔΘΠΣΦ王",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "Σ",
					}),
					F13: 63812,
					F14: 25390,
					F15: 2173994838,
					F16: 1085303467,
					F18: 1659981826689811090,
					F19: 61,
					F20: -19,
					F21: -7658,
					F22: 2488,
					F23: -326261542,
					F24: 912306433,
					F25: -1472564370594820179,
					F26: 5918426459813665,
					F27: 2.8385942e+08,
					F28: 1.446681e+09,
					F29: -1.5443370570096679e+09,
					F30: 3.184784041271269e+09,
					F31: &XStructEmpty{},
					F32: &XNamedError{},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{},
				F11: XUnionDepth1_Float64F29{},
				F12: &XStructDepth1_XEnumBcd{},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]XStructDepth2_All{{F0: {typeobject(XUnionDepth2_XStructDepth1_Int8), typeobject(XStructEmpty)}, F1: {1903587924}, F4: {-1.5720458870141203e+09, -1.9983283293632567e+07, -3.238533857464902e+07}, F5: {C}, F6: {185: 224, 250: 166, 66: 55}, F7: {1711866111: 980372964}, F8: {F0: set[XEnumBcd]{}, F3: \"Π\", F4: \"澤世\", F6: 68, F7: 84, F8: B, F9: C, F11: {Id: \"普\", Msg: \"ΘΠΣΦ王\"}, F12: {Id: \"Φ王普澤世\", RetryCode: RetryConnection}, F13: 42676, F15: 408799640, F16: 789811085, F17: 6007520861701348572, F18: 11852786787010219255, F20: -59, F21: -5651, F22: -5518, F23: 809697317, F24: 894274817, F25: -2773492329477941139, F26: 4525864791192120644, F27: 7.8164875e+06, F28: 1.4380653e+08, F29: -2.4959352516715804e+08, F32: {Id: \"Σ\", Msg: \"ΠΣΦ\"}}, F10: {F11: {}}, F11: {F29: 1.2791933776285827e+09}, F12: {}, F13: {F14: 7158}}, {F0: {typeobject(any), typeobject(XUnionDepth1_Uint32)}, F1: {750756465}, F2: {-3324, 11455, 0}, F3: {XList_String{\"世界\", \"ΘΠΣ\", \"deΔΘΠΣΦ王普澤世\"}}, F4: {2.3672634377113853e+09}, F5: {C}, F6: {122: 240, 209: 0, 95: 222}, F8: {F0: XArray2_XEnumAbc{}, F3: \"abcdeΔΘ\", F4: \"deΔΘ\", F6: 79, F7: 43, F8: B, F11: {Id: \"cdeΔΘ\", Msg: \"deΔΘΠΣΦ王普\"}, F12: {Id: \"deΔΘΠΣΦ王\", RetryCode: RetryBackoff, Msg: \"Σ\"}, F13: 63812, F14: 25390, F15: 2173994838, F16: 1085303467, F18: 1659981826689811090, F19: 61, F20: -19, F21: -7658, F22: 2488, F23: -326261542, F24: 912306433, F25: -1472564370594820179, F26: 5918426459813665, F27: 2.8385942e+08, F28: 1.446681e+09, F29: -1.5443370570096679e+09, F30: 3.184784041271269e+09, F31: {}, F32: {}}, F9: {F1: true}, F10: {F32: nil}, F12: {}}}",
		Target: []XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					__VDLType_union_305,
					__VDLType_struct_306,
				},
				F1: XArray1_Uint32{
					1903587924,
				},
				F4: map[float64]struct{}{
					-1.5720458870141203e+09: struct{}{},
					-1.9983283293632567e+07: struct{}{},
					-3.238533857464902e+07:  struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdC: struct{}{},
				},
				F6: map[byte]byte{
					185: 224,
					250: 166,
					66:  55,
				},
				F7: map[uint32]uint32{
					1711866111: 980372964,
				},
				F8: XStructDepth1_All{
					F0: map[XEnumBcd]struct{}(nil),
					F3: "Π",
					F4: "澤世",
					F5: vdl.AnyType,
					F6: 68,
					F7: 84,
					F8: XEnumAbcB,
					F9: XEnumBcdC,
					F11: XNamedError{
						Id:  "普",
						Msg: "ΘΠΣΦ王",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "Φ王普澤世",
						RetryCode: vdl.WireRetryCodeRetryConnection,
					}),
					F13: 42676,
					F15: 408799640,
					F16: 789811085,
					F17: 6007520861701348572,
					F18: 11852786787010219255,
					F20: -59,
					F21: -5651,
					F22: -5518,
					F23: 809697317,
					F24: 894274817,
					F25: -2773492329477941139,
					F26: 4525864791192120644,
					F27: 7.8164875e+06,
					F28: 1.4380653e+08,
					F29: -2.4959352516715804e+08,
					F32: &XNamedError{
						Id:  "Σ",
						Msg: "ΠΣΦ",
					},
				},
				F10: XUnionDepth1_AllF11{},
				F11: XUnionDepth1_Float64F29{1.2791933776285827e+09},
				F12: &XStructDepth1_XEnumBcd{},
				F13: &XStructDepth1_XUint16{
					F14: 7158,
				},
			},
			{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					__VDLType_union_307,
				},
				F1: XArray1_Uint32{
					750756465,
				},
				F2: []int16{
					-3324,
					11455,
					0,
				},
				F3: XList_Any{
					XList_String{
						"世界",
						"ΘΠΣ",
						"deΔΘΠΣΦ王普澤世",
					},
				},
				F4: map[float64]struct{}{
					2.3672634377113853e+09: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdC: struct{}{},
				},
				F6: map[byte]byte{
					122: 240,
					209: 0,
					95:  222,
				},
				F8: XStructDepth1_All{
					F0: XArray2_XEnumAbc{},
					F3: "abcdeΔΘ",
					F4: "deΔΘ",
					F5: vdl.AnyType,
					F6: 79,
					F7: 43,
					F8: XEnumAbcB,
					F11: XNamedError{
						Id:  "cdeΔΘ",
						Msg: "deΔΘΠΣΦ王普",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "deΔΘΠΣΦ王",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "Σ",
					}),
					F13: 63812,
					F14: 25390,
					F15: 2173994838,
					F16: 1085303467,
					F18: 1659981826689811090,
					F19: 61,
					F20: -19,
					F21: -7658,
					F22: 2488,
					F23: -326261542,
					F24: 912306433,
					F25: -1472564370594820179,
					F26: 5918426459813665,
					F27: 2.8385942e+08,
					F28: 1.446681e+09,
					F29: -1.5443370570096679e+09,
					F30: 3.184784041271269e+09,
					F31: &XStructEmpty{},
					F32: &XNamedError{},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{},
				F11: XUnionDepth1_Float64F29{},
				F12: &XStructDepth1_XEnumBcd{},
			},
		},
		SourceLabel: "XList_XStructDepth2_All{{F0: {typeobject(XUnionDepth2_XStructDepth1_Int8), typeobject(XStructEmpty)}, F1: {1903587924}, F4: {-1.5720458870141203e+09, -1.9983283293632567e+07, -3.238533857464902e+07}, F5: {C}, F6: {185: 224, 250: 166, 66: 55}, F7: {1711866111: 980372964}, F8: {F0: set[XEnumBcd]{}, F3: \"Π\", F4: \"澤世\", F6: 68, F7: 84, F8: B, F9: C, F11: {Id: \"普\", Msg: \"ΘΠΣΦ王\"}, F12: {Id: \"Φ王普澤世\", RetryCode: RetryConnection}, F13: 42676, F15: 408799640, F16: 789811085, F17: 6007520861701348572, F18: 11852786787010219255, F20: -59, F21: -5651, F22: -5518, F23: 809697317, F24: 894274817, F25: -2773492329477941139, F26: 4525864791192120644, F27: 7.8164875e+06, F28: 1.4380653e+08, F29: -2.4959352516715804e+08, F32: {Id: \"Σ\", Msg: \"ΠΣΦ\"}}, F10: {F11: {}}, F11: {F29: 1.2791933776285827e+09}, F12: {}, F13: {F14: 7158}}, {F0: {typeobject(any), typeobject(XUnionDepth1_Uint32)}, F1: {750756465}, F2: {-3324, 11455, 0}, F3: {XList_String{\"世界\", \"ΘΠΣ\", \"deΔΘΠΣΦ王普澤世\"}}, F4: {2.3672634377113853e+09}, F5: {C}, F6: {122: 240, 209: 0, 95: 222}, F8: {F0: XArray2_XEnumAbc{}, F3: \"abcdeΔΘ\", F4: \"deΔΘ\", F6: 79, F7: 43, F8: B, F11: {Id: \"cdeΔΘ\", Msg: \"deΔΘΠΣΦ王普\"}, F12: {Id: \"deΔΘΠΣΦ王\", RetryCode: RetryBackoff, Msg: \"Σ\"}, F13: 63812, F14: 25390, F15: 2173994838, F16: 1085303467, F18: 1659981826689811090, F19: 61, F20: -19, F21: -7658, F22: 2488, F23: -326261542, F24: 912306433, F25: -1472564370594820179, F26: 5918426459813665, F27: 2.8385942e+08, F28: 1.446681e+09, F29: -1.5443370570096679e+09, F30: 3.184784041271269e+09, F31: {}, F32: {}}, F9: {F1: true}, F10: {F32: nil}, F12: {}}}",
		Source: XList_XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					__VDLType_union_305,
					__VDLType_struct_306,
				},
				F1: XArray1_Uint32{
					1903587924,
				},
				F4: map[float64]struct{}{
					-1.5720458870141203e+09: struct{}{},
					-1.9983283293632567e+07: struct{}{},
					-3.238533857464902e+07:  struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdC: struct{}{},
				},
				F6: map[byte]byte{
					185: 224,
					250: 166,
					66:  55,
				},
				F7: map[uint32]uint32{
					1711866111: 980372964,
				},
				F8: XStructDepth1_All{
					F0: map[XEnumBcd]struct{}(nil),
					F3: "Π",
					F4: "澤世",
					F5: vdl.AnyType,
					F6: 68,
					F7: 84,
					F8: XEnumAbcB,
					F9: XEnumBcdC,
					F11: XNamedError{
						Id:  "普",
						Msg: "ΘΠΣΦ王",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "Φ王普澤世",
						RetryCode: vdl.WireRetryCodeRetryConnection,
					}),
					F13: 42676,
					F15: 408799640,
					F16: 789811085,
					F17: 6007520861701348572,
					F18: 11852786787010219255,
					F20: -59,
					F21: -5651,
					F22: -5518,
					F23: 809697317,
					F24: 894274817,
					F25: -2773492329477941139,
					F26: 4525864791192120644,
					F27: 7.8164875e+06,
					F28: 1.4380653e+08,
					F29: -2.4959352516715804e+08,
					F32: &XNamedError{
						Id:  "Σ",
						Msg: "ΠΣΦ",
					},
				},
				F10: XUnionDepth1_AllF11{},
				F11: XUnionDepth1_Float64F29{1.2791933776285827e+09},
				F12: &XStructDepth1_XEnumBcd{},
				F13: &XStructDepth1_XUint16{
					F14: 7158,
				},
			},
			{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					__VDLType_union_307,
				},
				F1: XArray1_Uint32{
					750756465,
				},
				F2: []int16{
					-3324,
					11455,
					0,
				},
				F3: XList_Any{
					XList_String{
						"世界",
						"ΘΠΣ",
						"deΔΘΠΣΦ王普澤世",
					},
				},
				F4: map[float64]struct{}{
					2.3672634377113853e+09: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdC: struct{}{},
				},
				F6: map[byte]byte{
					122: 240,
					209: 0,
					95:  222,
				},
				F8: XStructDepth1_All{
					F0: XArray2_XEnumAbc{},
					F3: "abcdeΔΘ",
					F4: "deΔΘ",
					F5: vdl.AnyType,
					F6: 79,
					F7: 43,
					F8: XEnumAbcB,
					F11: XNamedError{
						Id:  "cdeΔΘ",
						Msg: "deΔΘΠΣΦ王普",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "deΔΘΠΣΦ王",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "Σ",
					}),
					F13: 63812,
					F14: 25390,
					F15: 2173994838,
					F16: 1085303467,
					F18: 1659981826689811090,
					F19: 61,
					F20: -19,
					F21: -7658,
					F22: 2488,
					F23: -326261542,
					F24: 912306433,
					F25: -1472564370594820179,
					F26: 5918426459813665,
					F27: 2.8385942e+08,
					F28: 1.446681e+09,
					F29: -1.5443370570096679e+09,
					F30: 3.184784041271269e+09,
					F31: &XStructEmpty{},
					F32: &XNamedError{},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{},
				F11: XUnionDepth1_Float64F29{},
				F12: &XStructDepth1_XEnumBcd{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]XUnionDepth2_All{}",
		Target:      []XUnionDepth2_All(nil),
		SourceLabel: "[]XUnionDepth2_All{}",
		Source:      []XUnionDepth2_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XUnionDepth2_All{}",
		Target:      []XUnionDepth2_All(nil),
		SourceLabel: "XList_Any{}",
		Source:      XList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]XUnionDepth2_All{}",
		Target:      []XUnionDepth2_All(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]XUnionDepth2_All{{F13: {F28: 1.5}}}",
		Target: []XUnionDepth2_All{
			XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
				F28: 1.5,
			}},
		},
		SourceLabel: "[]XUnionDepth2_All{{F13: {F28: 1.5}}}",
		Source: []XUnionDepth2_All{
			XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
				F28: 1.5,
			}},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]XUnionDepth2_All{{F13: {F28: 1.5}}}",
		Target: []XUnionDepth2_All{
			XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
				F28: 1.5,
			}},
		},
		SourceLabel: "[]any{XUnionDepth2_All{F13: {F28: 1.5}}}",
		Source: []interface{}{
			XUnionDepth2_All(XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
				F28: 1.5,
			}}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]XUnionDepth2_All{{F0: {\"e\"}}, {F0: {\"deΔΘΠ\"}}, {F10: {F14: 59623}}}",
		Target: []XUnionDepth2_All{
			XUnionDepth2_AllF0{XArray1_String{
				"e",
			}},
			XUnionDepth2_AllF0{XArray1_String{
				"deΔΘΠ",
			}},
			XUnionDepth2_AllF10{XUnionDepth1_AllF14{59623}},
		},
		SourceLabel: "[]XUnionDepth2_All{{F0: {\"e\"}}, {F0: {\"deΔΘΠ\"}}, {F10: {F14: 59623}}}",
		Source: []XUnionDepth2_All{
			XUnionDepth2_AllF0{XArray1_String{
				"e",
			}},
			XUnionDepth2_AllF0{XArray1_String{
				"deΔΘΠ",
			}},
			XUnionDepth2_AllF10{XUnionDepth1_AllF14{59623}},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]XUnionDepth2_All{{F0: {\"e\"}}, {F0: {\"deΔΘΠ\"}}, {F10: {F14: 59623}}}",
		Target: []XUnionDepth2_All{
			XUnionDepth2_AllF0{XArray1_String{
				"e",
			}},
			XUnionDepth2_AllF0{XArray1_String{
				"deΔΘΠ",
			}},
			XUnionDepth2_AllF10{XUnionDepth1_AllF14{59623}},
		},
		SourceLabel: "[]any{XUnionDepth2_All{F0: {\"e\"}}, XUnionDepth2_All{F0: {\"deΔΘΠ\"}}, XUnionDepth2_All{F10: {F14: 59623}}}",
		Source: []interface{}{
			XUnionDepth2_All(XUnionDepth2_AllF0{XArray1_String{
				"e",
			}}),
			XUnionDepth2_All(XUnionDepth2_AllF0{XArray1_String{
				"deΔΘΠ",
			}}),
			XUnionDepth2_All(XUnionDepth2_AllF10{XUnionDepth1_AllF14{59623}}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "[]?XStructDepth2_Set_Float64{}",
		Target:      []*XStructDepth2_Set_Float64(nil),
		SourceLabel: "[]?XStructDepth2_Set_Float64{}",
		Source:      []*XStructDepth2_Set_Float64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]?XStructDepth2_Set_Float64{}",
		Target:      []*XStructDepth2_Set_Float64(nil),
		SourceLabel: "[]XStructDepth2_All{}",
		Source:      []XStructDepth2_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "[]?XStructDepth2_Set_Float64{}",
		Target:      []*XStructDepth2_Set_Float64(nil),
		SourceLabel: "XList_OptXStructDepth2_Set_Float64{}",
		Source:      XList_OptXStructDepth2_Set_Float64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "[]?XStructDepth2_Set_Float64{{F4: {1.5}}}",
		Target: []*XStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
		SourceLabel: "[]?XStructDepth2_Set_Float64{{F4: {1.5}}}",
		Source: []*XStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "[]?XStructDepth2_Set_Float64{{F4: {1.5}}}",
		Target: []*XStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
		SourceLabel: "[]XStructDepth2_All{{F4: {1.5}}}",
		Source: []XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "[]?XStructDepth2_Set_Float64{{}}",
		Target: []*XStructDepth2_Set_Float64{
			{},
		},
		SourceLabel: "[]?XStructDepth2_Set_Float64{{}}",
		Source: []*XStructDepth2_Set_Float64{
			{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "[]?XStructDepth2_Set_Float64{{}}",
		Target: []*XStructDepth2_Set_Float64{
			{},
		},
		SourceLabel: "XList_OptXStructDepth2_Set_Float64{{}}",
		Source: XList_OptXStructDepth2_Set_Float64{
			{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_XArray3_XUnionDepth1_All{}",
		Target:      XList_XArray3_XUnionDepth1_All(nil),
		SourceLabel: "XList_XArray3_XUnionDepth1_All{}",
		Source:      XList_XArray3_XUnionDepth1_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XArray3_XUnionDepth1_All{}",
		Target:      XList_XArray3_XUnionDepth1_All(nil),
		SourceLabel: "XList_Any{}",
		Source:      XList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XArray3_XUnionDepth1_All{}",
		Target:      XList_XArray3_XUnionDepth1_All(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_XArray3_XUnionDepth1_All{{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Target: XList_XArray3_XUnionDepth1_All{
			{
				XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
			},
		},
		SourceLabel: "XList_XArray3_XUnionDepth1_All{{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Source: XList_XArray3_XUnionDepth1_All{
			{
				XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_XArray3_XUnionDepth1_All{{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Target: XList_XArray3_XUnionDepth1_All{
			{
				XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
			},
		},
		SourceLabel: "XList_Any{XArray3_XUnionDepth1_All{{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Source: XList_Any{
			XArray3_XUnionDepth1_All{
				XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XList_XArray3_XUnionDepth1_All{{{F22: 924}, {F16: 2247327400}, {F30: 0}}}",
		Target: XList_XArray3_XUnionDepth1_All{
			{
				XUnionDepth1_AllF22{924},
				XUnionDepth1_AllF16{2247327400},
				XUnionDepth1_AllF30{},
			},
		},
		SourceLabel: "XList_XArray3_XUnionDepth1_All{{{F22: 924}, {F16: 2247327400}, {F30: 0}}}",
		Source: XList_XArray3_XUnionDepth1_All{
			{
				XUnionDepth1_AllF22{924},
				XUnionDepth1_AllF16{2247327400},
				XUnionDepth1_AllF30{},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XList_XArray3_XUnionDepth1_All{{{F22: 924}, {F16: 2247327400}, {F30: 0}}}",
		Target: XList_XArray3_XUnionDepth1_All{
			{
				XUnionDepth1_AllF22{924},
				XUnionDepth1_AllF16{2247327400},
				XUnionDepth1_AllF30{},
			},
		},
		SourceLabel: "[]any{XArray3_XUnionDepth1_All{{F22: 924}, {F16: 2247327400}, {F30: 0}}}",
		Source: []interface{}{
			XArray3_XUnionDepth1_All{
				XUnionDepth1_AllF22{924},
				XUnionDepth1_AllF16{2247327400},
				XUnionDepth1_AllF30{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_List_XMap_XByte_XByte{}",
		Target:      XList_List_XMap_XByte_XByte(nil),
		SourceLabel: "XList_List_XMap_XByte_XByte{}",
		Source:      XList_List_XMap_XByte_XByte(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_List_XMap_XByte_XByte{}",
		Target:      XList_List_XMap_XByte_XByte(nil),
		SourceLabel: "XList_Any{}",
		Source:      XList_Any(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_List_XMap_XByte_XByte{}",
		Target:      XList_List_XMap_XByte_XByte(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_List_XMap_XByte_XByte{{{123: 123}}}",
		Target: XList_List_XMap_XByte_XByte{
			{
				{
					123: 123,
				},
			},
		},
		SourceLabel: "XList_List_XMap_XByte_XByte{{{123: 123}}}",
		Source: XList_List_XMap_XByte_XByte{
			{
				{
					123: 123,
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_List_XMap_XByte_XByte{{{123: 123}}}",
		Target: XList_List_XMap_XByte_XByte{
			{
				{
					123: 123,
				},
			},
		},
		SourceLabel: "[]any{[]XMap_XByte_XByte{{123: 123}}}",
		Source: []interface{}{
			[]XMap_XByte_XByte{
				{
					123: 123,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XList_List_XMap_XByte_XByte{{{135: 168}, {175: 0}}, {{135: 104, 55: 89}, {213: 0}}, {}}",
		Target: XList_List_XMap_XByte_XByte{
			{
				{
					135: 168,
				},
				{
					175: 0,
				},
			},
			{
				{
					135: 104,
					55:  89,
				},
				{
					213: 0,
				},
			},
			nil,
		},
		SourceLabel: "XList_List_XMap_XByte_XByte{{{135: 168}, {175: 0}}, {{135: 104, 55: 89}, {213: 0}}, {}}",
		Source: XList_List_XMap_XByte_XByte{
			{
				{
					135: 168,
				},
				{
					175: 0,
				},
			},
			{
				{
					135: 104,
					55:  89,
				},
				{
					213: 0,
				},
			},
			nil,
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XList_List_XMap_XByte_XByte{{{135: 168}, {175: 0}}, {{135: 104, 55: 89}, {213: 0}}, {}}",
		Target: XList_List_XMap_XByte_XByte{
			{
				{
					135: 168,
				},
				{
					175: 0,
				},
			},
			{
				{
					135: 104,
					55:  89,
				},
				{
					213: 0,
				},
			},
			nil,
		},
		SourceLabel: "[]any{[]XMap_XByte_XByte{{135: 168}, {175: 0}}, []XMap_XByte_XByte{{135: 104, 55: 89}, {213: 0}}, []XMap_XByte_XByte{}}",
		Source: []interface{}{
			[]XMap_XByte_XByte{
				{
					135: 168,
				},
				{
					175: 0,
				},
			},
			[]XMap_XByte_XByte{
				{
					135: 104,
					55:  89,
				},
				{
					213: 0,
				},
			},
			[]XMap_XByte_XByte(nil),
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_XSet_XArray1_XStructEmpty{}",
		Target:      XList_XSet_XArray1_XStructEmpty(nil),
		SourceLabel: "XList_XSet_XArray1_XStructEmpty{}",
		Source:      XList_XSet_XArray1_XStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XSet_XArray1_XStructEmpty{}",
		Target:      XList_XSet_XArray1_XStructEmpty(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XSet_XArray1_XStructEmpty{}",
		Target:      XList_XSet_XArray1_XStructEmpty(nil),
		SourceLabel: "[]XSet_XArray1_XStructEmpty{}",
		Source:      []XSet_XArray1_XStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_XSet_XArray1_XStructEmpty{{{}}}",
		Target: XList_XSet_XArray1_XStructEmpty{
			{
				{}: struct{}{},
			},
		},
		SourceLabel: "XList_XSet_XArray1_XStructEmpty{{{}}}",
		Source: XList_XSet_XArray1_XStructEmpty{
			{
				{}: struct{}{},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_XSet_XArray1_XStructEmpty{{{}}}",
		Target: XList_XSet_XArray1_XStructEmpty{
			{
				{}: struct{}{},
			},
		},
		SourceLabel: "[]XSet_XArray1_XStructEmpty{{{}}}",
		Source: []XSet_XArray1_XStructEmpty{
			{
				{}: struct{}{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_XMap_XArray3_XBool_XArray3_XBool{}",
		Target:      XList_XMap_XArray3_XBool_XArray3_XBool(nil),
		SourceLabel: "XList_XMap_XArray3_XBool_XArray3_XBool{}",
		Source:      XList_XMap_XArray3_XBool_XArray3_XBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XMap_XArray3_XBool_XArray3_XBool{}",
		Target:      XList_XMap_XArray3_XBool_XArray3_XBool(nil),
		SourceLabel: "[]XMap_XArray3_XBool_XArray3_XBool{}",
		Source:      []XMap_XArray3_XBool_XArray3_XBool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XMap_XArray3_XBool_XArray3_XBool{}",
		Target:      XList_XMap_XArray3_XBool_XArray3_XBool(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_XMap_XArray3_XBool_XArray3_XBool{{{true, true, true}: {true, true, true}}}",
		Target: XList_XMap_XArray3_XBool_XArray3_XBool{
			{
				{
					true,
					true,
					true,
				}: {
					true,
					true,
					true,
				},
			},
		},
		SourceLabel: "XList_XMap_XArray3_XBool_XArray3_XBool{{{true, true, true}: {true, true, true}}}",
		Source: XList_XMap_XArray3_XBool_XArray3_XBool{
			{
				{
					true,
					true,
					true,
				}: {
					true,
					true,
					true,
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_XMap_XArray3_XBool_XArray3_XBool{{{true, true, true}: {true, true, true}}}",
		Target: XList_XMap_XArray3_XBool_XArray3_XBool{
			{
				{
					true,
					true,
					true,
				}: {
					true,
					true,
					true,
				},
			},
		},
		SourceLabel: "XList_Any{XMap_XArray3_XBool_XArray3_XBool{{true, true, true}: {true, true, true}}}",
		Source: XList_Any{
			XMap_XArray3_XBool_XArray3_XBool{
				{
					true,
					true,
					true,
				}: {
					true,
					true,
					true,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_XStructDepth2_All{}",
		Target:      XList_XStructDepth2_All(nil),
		SourceLabel: "XList_XStructDepth2_All{}",
		Source:      XList_XStructDepth2_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XStructDepth2_All{}",
		Target:      XList_XStructDepth2_All(nil),
		SourceLabel: "[]?XStructDepth2_Set_Float64{}",
		Source:      []*XStructDepth2_Set_Float64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XStructDepth2_All{}",
		Target:      XList_XStructDepth2_All(nil),
		SourceLabel: "XList_OptXStructDepth2_Set_Float64{}",
		Source:      XList_OptXStructDepth2_Set_Float64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_XStructDepth2_All{{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Target: XList_XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: XArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: XList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: XStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: XEnumAbcC,
					F9: XEnumBcdD,
					F11: XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: XUnionDepth1_Float64F29{1.5},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{
					F14: 123,
				},
			},
		},
		SourceLabel: "XList_XStructDepth2_All{{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Source: XList_XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: XArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: XList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: XStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: XEnumAbcC,
					F9: XEnumBcdD,
					F11: XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: XUnionDepth1_Float64F29{1.5},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{
					F14: 123,
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_XStructDepth2_All{{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Target: XList_XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: XArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: XList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: XStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: XEnumAbcC,
					F9: XEnumBcdD,
					F11: XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: XUnionDepth1_Float64F29{1.5},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{
					F14: 123,
				},
			},
		},
		SourceLabel: "[]XStructDepth2_All{{F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Source: []XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: XArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: XList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: XStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: XEnumAbcC,
					F9: XEnumBcdD,
					F11: XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: XUnionDepth1_Float64F29{1.5},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{
					F14: 123,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XList_XStructDepth2_All{{F0: {typeobject(XList_Any), typeobject(any)}, F3: {set[XStructDepth1_String]{}, map[XNamedError]XNamedError{{Msg: \"abcdeΔΘΠΣΦ王普澤世\"}: {Msg: \"ΣΦ王普澤\"}, {Id: \"c\", Msg: \"王普澤世\"}: {Id: \"cdeΔ\", Msg: \"deΔΘΠ\"}}, XArray3_Int64{3524922562280960580, -3424085360776393001, 2800105892874757207}}, F4: {1.9667025630643923e+07, 3.4260743001183236e+08}, F5: {B, C, D}, F8: {F0: XUnionDepth2_XList_XByte{F2: \"\"}, F3: \"bcdeΔΘΠ\", F4: \"bcdeΔΘΠ\", F5: typeobject(XStructDepth1_XInt32), F6: 245, F7: 79, F9: C, F11: {Msg: \"bcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"澤\", RetryCode: RetryBackoff, Msg: \"bcdeΔΘΠΣΦ王普\"}, F13: 13338, F15: 1595831042, F17: 12664678767883708255, F18: 11469846635179244384, F19: -42, F20: 49, F21: -10203, F22: 6599, F23: -942155461, F25: -898155845020684027, F27: -2.3450837e+08, F28: -1.7266627e+08, F29: 1.3545475352214177e+09, F30: 4.924317476725453e+08, F31: {}, F32: {Id: \"b\", Msg: \"ΣΦ王普澤\"}}, F9: {F1: true}, F12: {}}}",
		Target: XList_XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					__VDLType_list_308,
					vdl.AnyType,
				},
				F3: XList_Any{
					map[XStructDepth1_String]struct{}(nil),
					map[XNamedError]XNamedError{
						{
							Msg: "abcdeΔΘΠΣΦ王普澤世",
						}: {
							Msg: "ΣΦ王普澤",
						},
						{
							Id:  "c",
							Msg: "王普澤世",
						}: {
							Id:  "cdeΔ",
							Msg: "deΔΘΠ",
						},
					},
					XArray3_Int64{
						3524922562280960580,
						-3424085360776393001,
						2800105892874757207,
					},
				},
				F4: map[float64]struct{}{
					1.9667025630643923e+07: struct{}{},
					3.4260743001183236e+08: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdB: struct{}{},
					XEnumBcdC: struct{}{},
					XEnumBcdD: struct{}{},
				},
				F8: XStructDepth1_All{
					F0: XUnionDepth2_XList_XByte(XUnionDepth2_XList_XByteF2{}),
					F3: "bcdeΔΘΠ",
					F4: "bcdeΔΘΠ",
					F5: __VDLType_struct_309,
					F6: 245,
					F7: 79,
					F9: XEnumBcdC,
					F11: XNamedError{
						Msg: "bcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "澤",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "bcdeΔΘΠΣΦ王普",
					}),
					F13: 13338,
					F15: 1595831042,
					F17: 12664678767883708255,
					F18: 11469846635179244384,
					F19: -42,
					F20: 49,
					F21: -10203,
					F22: 6599,
					F23: -942155461,
					F25: -898155845020684027,
					F27: -2.3450837e+08,
					F28: -1.7266627e+08,
					F29: 1.3545475352214177e+09,
					F30: 4.924317476725453e+08,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "b",
						Msg: "ΣΦ王普澤",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
				F12: &XStructDepth1_XEnumBcd{},
			},
		},
		SourceLabel: "XList_XStructDepth2_All{{F0: {typeobject(XList_Any), typeobject(any)}, F3: {set[XStructDepth1_String]{}, map[XNamedError]XNamedError{{Msg: \"abcdeΔΘΠΣΦ王普澤世\"}: {Msg: \"ΣΦ王普澤\"}, {Id: \"c\", Msg: \"王普澤世\"}: {Id: \"cdeΔ\", Msg: \"deΔΘΠ\"}}, XArray3_Int64{3524922562280960580, -3424085360776393001, 2800105892874757207}}, F4: {1.9667025630643923e+07, 3.4260743001183236e+08}, F5: {B, C, D}, F8: {F0: XUnionDepth2_XList_XByte{F2: \"\"}, F3: \"bcdeΔΘΠ\", F4: \"bcdeΔΘΠ\", F5: typeobject(XStructDepth1_XInt32), F6: 245, F7: 79, F9: C, F11: {Msg: \"bcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"澤\", RetryCode: RetryBackoff, Msg: \"bcdeΔΘΠΣΦ王普\"}, F13: 13338, F15: 1595831042, F17: 12664678767883708255, F18: 11469846635179244384, F19: -42, F20: 49, F21: -10203, F22: 6599, F23: -942155461, F25: -898155845020684027, F27: -2.3450837e+08, F28: -1.7266627e+08, F29: 1.3545475352214177e+09, F30: 4.924317476725453e+08, F31: {}, F32: {Id: \"b\", Msg: \"ΣΦ王普澤\"}}, F9: {F1: true}, F12: {}}}",
		Source: XList_XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					__VDLType_list_308,
					vdl.AnyType,
				},
				F3: XList_Any{
					map[XStructDepth1_String]struct{}(nil),
					map[XNamedError]XNamedError{
						{
							Msg: "abcdeΔΘΠΣΦ王普澤世",
						}: {
							Msg: "ΣΦ王普澤",
						},
						{
							Id:  "c",
							Msg: "王普澤世",
						}: {
							Id:  "cdeΔ",
							Msg: "deΔΘΠ",
						},
					},
					XArray3_Int64{
						3524922562280960580,
						-3424085360776393001,
						2800105892874757207,
					},
				},
				F4: map[float64]struct{}{
					1.9667025630643923e+07: struct{}{},
					3.4260743001183236e+08: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdB: struct{}{},
					XEnumBcdC: struct{}{},
					XEnumBcdD: struct{}{},
				},
				F8: XStructDepth1_All{
					F0: XUnionDepth2_XList_XByte(XUnionDepth2_XList_XByteF2{}),
					F3: "bcdeΔΘΠ",
					F4: "bcdeΔΘΠ",
					F5: __VDLType_struct_309,
					F6: 245,
					F7: 79,
					F9: XEnumBcdC,
					F11: XNamedError{
						Msg: "bcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "澤",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "bcdeΔΘΠΣΦ王普",
					}),
					F13: 13338,
					F15: 1595831042,
					F17: 12664678767883708255,
					F18: 11469846635179244384,
					F19: -42,
					F20: 49,
					F21: -10203,
					F22: 6599,
					F23: -942155461,
					F25: -898155845020684027,
					F27: -2.3450837e+08,
					F28: -1.7266627e+08,
					F29: 1.3545475352214177e+09,
					F30: 4.924317476725453e+08,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "b",
						Msg: "ΣΦ王普澤",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
				F12: &XStructDepth1_XEnumBcd{},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XList_XStructDepth2_All{{F0: {typeobject(XList_Any), typeobject(any)}, F3: {set[XStructDepth1_String]{}, map[XNamedError]XNamedError{{Msg: \"abcdeΔΘΠΣΦ王普澤世\"}: {Msg: \"ΣΦ王普澤\"}, {Id: \"c\", Msg: \"王普澤世\"}: {Id: \"cdeΔ\", Msg: \"deΔΘΠ\"}}, XArray3_Int64{3524922562280960580, -3424085360776393001, 2800105892874757207}}, F4: {1.9667025630643923e+07, 3.4260743001183236e+08}, F5: {B, C, D}, F8: {F0: XUnionDepth2_XList_XByte{F2: \"\"}, F3: \"bcdeΔΘΠ\", F4: \"bcdeΔΘΠ\", F5: typeobject(XStructDepth1_XInt32), F6: 245, F7: 79, F9: C, F11: {Msg: \"bcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"澤\", RetryCode: RetryBackoff, Msg: \"bcdeΔΘΠΣΦ王普\"}, F13: 13338, F15: 1595831042, F17: 12664678767883708255, F18: 11469846635179244384, F19: -42, F20: 49, F21: -10203, F22: 6599, F23: -942155461, F25: -898155845020684027, F27: -2.3450837e+08, F28: -1.7266627e+08, F29: 1.3545475352214177e+09, F30: 4.924317476725453e+08, F31: {}, F32: {Id: \"b\", Msg: \"ΣΦ王普澤\"}}, F9: {F1: true}, F12: {}}}",
		Target: XList_XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					__VDLType_list_308,
					vdl.AnyType,
				},
				F3: XList_Any{
					map[XStructDepth1_String]struct{}(nil),
					map[XNamedError]XNamedError{
						{
							Msg: "abcdeΔΘΠΣΦ王普澤世",
						}: {
							Msg: "ΣΦ王普澤",
						},
						{
							Id:  "c",
							Msg: "王普澤世",
						}: {
							Id:  "cdeΔ",
							Msg: "deΔΘΠ",
						},
					},
					XArray3_Int64{
						3524922562280960580,
						-3424085360776393001,
						2800105892874757207,
					},
				},
				F4: map[float64]struct{}{
					1.9667025630643923e+07: struct{}{},
					3.4260743001183236e+08: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdB: struct{}{},
					XEnumBcdC: struct{}{},
					XEnumBcdD: struct{}{},
				},
				F8: XStructDepth1_All{
					F0: XUnionDepth2_XList_XByte(XUnionDepth2_XList_XByteF2{}),
					F3: "bcdeΔΘΠ",
					F4: "bcdeΔΘΠ",
					F5: __VDLType_struct_309,
					F6: 245,
					F7: 79,
					F9: XEnumBcdC,
					F11: XNamedError{
						Msg: "bcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "澤",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "bcdeΔΘΠΣΦ王普",
					}),
					F13: 13338,
					F15: 1595831042,
					F17: 12664678767883708255,
					F18: 11469846635179244384,
					F19: -42,
					F20: 49,
					F21: -10203,
					F22: 6599,
					F23: -942155461,
					F25: -898155845020684027,
					F27: -2.3450837e+08,
					F28: -1.7266627e+08,
					F29: 1.3545475352214177e+09,
					F30: 4.924317476725453e+08,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "b",
						Msg: "ΣΦ王普澤",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
				F12: &XStructDepth1_XEnumBcd{},
			},
		},
		SourceLabel: "XList_Any{XStructDepth2_All{F0: {typeobject(XList_Any), typeobject(any)}, F3: {set[XStructDepth1_String]{}, map[XNamedError]XNamedError{{Msg: \"abcdeΔΘΠΣΦ王普澤世\"}: {Msg: \"ΣΦ王普澤\"}, {Id: \"c\", Msg: \"王普澤世\"}: {Id: \"cdeΔ\", Msg: \"deΔΘΠ\"}}, XArray3_Int64{3524922562280960580, -3424085360776393001, 2800105892874757207}}, F4: {1.9667025630643923e+07, 3.4260743001183236e+08}, F5: {B, C, D}, F8: {F0: XUnionDepth2_XList_XByte{F2: \"\"}, F3: \"bcdeΔΘΠ\", F4: \"bcdeΔΘΠ\", F5: typeobject(XStructDepth1_XInt32), F6: 245, F7: 79, F9: C, F11: {Msg: \"bcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"澤\", RetryCode: RetryBackoff, Msg: \"bcdeΔΘΠΣΦ王普\"}, F13: 13338, F15: 1595831042, F17: 12664678767883708255, F18: 11469846635179244384, F19: -42, F20: 49, F21: -10203, F22: 6599, F23: -942155461, F25: -898155845020684027, F27: -2.3450837e+08, F28: -1.7266627e+08, F29: 1.3545475352214177e+09, F30: 4.924317476725453e+08, F31: {}, F32: {Id: \"b\", Msg: \"ΣΦ王普澤\"}}, F9: {F1: true}, F12: {}}}",
		Source: XList_Any{
			XStructDepth2_All{
				F0: XArray2_TypeObject{
					__VDLType_list_308,
					vdl.AnyType,
				},
				F3: XList_Any{
					map[XStructDepth1_String]struct{}(nil),
					map[XNamedError]XNamedError{
						{
							Msg: "abcdeΔΘΠΣΦ王普澤世",
						}: {
							Msg: "ΣΦ王普澤",
						},
						{
							Id:  "c",
							Msg: "王普澤世",
						}: {
							Id:  "cdeΔ",
							Msg: "deΔΘΠ",
						},
					},
					XArray3_Int64{
						3524922562280960580,
						-3424085360776393001,
						2800105892874757207,
					},
				},
				F4: map[float64]struct{}{
					1.9667025630643923e+07: struct{}{},
					3.4260743001183236e+08: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdB: struct{}{},
					XEnumBcdC: struct{}{},
					XEnumBcdD: struct{}{},
				},
				F8: XStructDepth1_All{
					F0: XUnionDepth2_XList_XByte(XUnionDepth2_XList_XByteF2{}),
					F3: "bcdeΔΘΠ",
					F4: "bcdeΔΘΠ",
					F5: __VDLType_struct_309,
					F6: 245,
					F7: 79,
					F9: XEnumBcdC,
					F11: XNamedError{
						Msg: "bcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "澤",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "bcdeΔΘΠΣΦ王普",
					}),
					F13: 13338,
					F15: 1595831042,
					F17: 12664678767883708255,
					F18: 11469846635179244384,
					F19: -42,
					F20: 49,
					F21: -10203,
					F22: 6599,
					F23: -942155461,
					F25: -898155845020684027,
					F27: -2.3450837e+08,
					F28: -1.7266627e+08,
					F29: 1.3545475352214177e+09,
					F30: 4.924317476725453e+08,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "b",
						Msg: "ΣΦ王普澤",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
				F12: &XStructDepth1_XEnumBcd{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_XUnionDepth2_All{}",
		Target:      XList_XUnionDepth2_All(nil),
		SourceLabel: "XList_XUnionDepth2_All{}",
		Source:      XList_XUnionDepth2_All(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XUnionDepth2_All{}",
		Target:      XList_XUnionDepth2_All(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_XUnionDepth2_All{}",
		Target:      XList_XUnionDepth2_All(nil),
		SourceLabel: "XList_Any{}",
		Source:      XList_Any(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_XUnionDepth2_All{{F13: {F28: 1.5}}}",
		Target: XList_XUnionDepth2_All{
			XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
				F28: 1.5,
			}},
		},
		SourceLabel: "XList_XUnionDepth2_All{{F13: {F28: 1.5}}}",
		Source: XList_XUnionDepth2_All{
			XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
				F28: 1.5,
			}},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_XUnionDepth2_All{{F13: {F28: 1.5}}}",
		Target: XList_XUnionDepth2_All{
			XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
				F28: 1.5,
			}},
		},
		SourceLabel: "[]any{XUnionDepth2_All{F13: {F28: 1.5}}}",
		Source: []interface{}{
			XUnionDepth2_All(XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
				F28: 1.5,
			}}),
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XList_XUnionDepth2_All{{F7: {}}, {F10: {F0: nil}}, {F9: {}}}",
		Target: XList_XUnionDepth2_All{
			XUnionDepth2_AllF7{},
			XUnionDepth2_AllF10{XUnionDepth1_AllF0{}},
			XUnionDepth2_AllF9{},
		},
		SourceLabel: "XList_XUnionDepth2_All{{F7: {}}, {F10: {F0: nil}}, {F9: {}}}",
		Source: XList_XUnionDepth2_All{
			XUnionDepth2_AllF7{},
			XUnionDepth2_AllF10{XUnionDepth1_AllF0{}},
			XUnionDepth2_AllF9{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XList_XUnionDepth2_All{{F7: {}}, {F10: {F0: nil}}, {F9: {}}}",
		Target: XList_XUnionDepth2_All{
			XUnionDepth2_AllF7{},
			XUnionDepth2_AllF10{XUnionDepth1_AllF0{}},
			XUnionDepth2_AllF9{},
		},
		SourceLabel: "[]XUnionDepth2_All{{F7: {}}, {F10: {F0: nil}}, {F9: {}}}",
		Source: []XUnionDepth2_All{
			XUnionDepth2_AllF7{},
			XUnionDepth2_AllF10{XUnionDepth1_AllF0{}},
			XUnionDepth2_AllF9{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XList_OptXStructDepth2_Set_Float64{}",
		Target:      XList_OptXStructDepth2_Set_Float64(nil),
		SourceLabel: "XList_OptXStructDepth2_Set_Float64{}",
		Source:      XList_OptXStructDepth2_Set_Float64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_OptXStructDepth2_Set_Float64{}",
		Target:      XList_OptXStructDepth2_Set_Float64(nil),
		SourceLabel: "XList_OptXStructEmpty{}",
		Source:      XList_OptXStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XList_OptXStructDepth2_Set_Float64{}",
		Target:      XList_OptXStructDepth2_Set_Float64(nil),
		SourceLabel: "[]any{}",
		Source:      []interface{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XList_OptXStructDepth2_Set_Float64{{F4: {1.5}}}",
		Target: XList_OptXStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
		SourceLabel: "XList_OptXStructDepth2_Set_Float64{{F4: {1.5}}}",
		Source: XList_OptXStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XList_OptXStructDepth2_Set_Float64{{F4: {1.5}}}",
		Target: XList_OptXStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
		SourceLabel: "XList_XStructDepth2_All{{F4: {1.5}}}",
		Source: XList_XStructDepth2_All{
			{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XList_OptXStructDepth2_Set_Float64{{F4: {1.0780494803258038e+09}}}",
		Target: XList_OptXStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					1.0780494803258038e+09: struct{}{},
				},
			},
		},
		SourceLabel: "XList_OptXStructDepth2_Set_Float64{{F4: {1.0780494803258038e+09}}}",
		Source: XList_OptXStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					1.0780494803258038e+09: struct{}{},
				},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XList_OptXStructDepth2_Set_Float64{{F4: {1.0780494803258038e+09}}}",
		Target: XList_OptXStructDepth2_Set_Float64{
			{
				F4: map[float64]struct{}{
					1.0780494803258038e+09: struct{}{},
				},
			},
		},
		SourceLabel: "[]any{?XStructDepth2_Set_Float64{F4: {1.0780494803258038e+09}}}",
		Source: []interface{}{
			&XStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					1.0780494803258038e+09: struct{}{},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[XArray1_XArray3_Int64]{}",
		Target:      map[XArray1_XArray3_Int64]struct{}(nil),
		SourceLabel: "set[XArray1_XArray3_Int64]{}",
		Source:      map[XArray1_XArray3_Int64]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[XArray1_XArray3_Int64]{}",
		Target:      map[XArray1_XArray3_Int64]struct{}(nil),
		SourceLabel: "XSet_XArray1_XArray3_Int64{}",
		Source:      XSet_XArray1_XArray3_Int64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[XArray1_XArray3_Int64]{{{-123, -123, -123}}}",
		Target: map[XArray1_XArray3_Int64]struct{}{
			{
				{
					-123,
					-123,
					-123,
				},
			}: struct{}{},
		},
		SourceLabel: "set[XArray1_XArray3_Int64]{{{-123, -123, -123}}}",
		Source: map[XArray1_XArray3_Int64]struct{}{
			{
				{
					-123,
					-123,
					-123,
				},
			}: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[XArray1_XArray3_Int64]{{{-123, -123, -123}}}",
		Target: map[XArray1_XArray3_Int64]struct{}{
			{
				{
					-123,
					-123,
					-123,
				},
			}: struct{}{},
		},
		SourceLabel: "XSet_XArray1_XArray3_Int64{{{-123, -123, -123}}}",
		Source: XSet_XArray1_XArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "set[XArray1_XArray3_Int64]{{{0, 948696848856180951, -410485718848228531}}, {{818672935806784812, -4040637540944211339, -1850373240560994483}}}",
		Target: map[XArray1_XArray3_Int64]struct{}{
			{
				{
					0,
					948696848856180951,
					-410485718848228531,
				},
			}: struct{}{},
			{
				{
					818672935806784812,
					-4040637540944211339,
					-1850373240560994483,
				},
			}: struct{}{},
		},
		SourceLabel: "set[XArray1_XArray3_Int64]{{{0, 948696848856180951, -410485718848228531}}, {{818672935806784812, -4040637540944211339, -1850373240560994483}}}",
		Source: map[XArray1_XArray3_Int64]struct{}{
			{
				{
					0,
					948696848856180951,
					-410485718848228531,
				},
			}: struct{}{},
			{
				{
					818672935806784812,
					-4040637540944211339,
					-1850373240560994483,
				},
			}: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "set[XArray1_XArray3_Int64]{{{0, 948696848856180951, -410485718848228531}}, {{818672935806784812, -4040637540944211339, -1850373240560994483}}}",
		Target: map[XArray1_XArray3_Int64]struct{}{
			{
				{
					0,
					948696848856180951,
					-410485718848228531,
				},
			}: struct{}{},
			{
				{
					818672935806784812,
					-4040637540944211339,
					-1850373240560994483,
				},
			}: struct{}{},
		},
		SourceLabel: "XSet_XArray1_XArray3_Int64{{{0, 948696848856180951, -410485718848228531}}, {{818672935806784812, -4040637540944211339, -1850373240560994483}}}",
		Source: XSet_XArray1_XArray3_Int64{
			{
				{
					0,
					948696848856180951,
					-410485718848228531,
				},
			}: struct{}{},
			{
				{
					818672935806784812,
					-4040637540944211339,
					-1850373240560994483,
				},
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[XStructDepth2_XStructDepth1_Bool]{}",
		Target:      map[XStructDepth2_XStructDepth1_Bool]struct{}(nil),
		SourceLabel: "set[XStructDepth2_XStructDepth1_Bool]{}",
		Source:      map[XStructDepth2_XStructDepth1_Bool]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[XStructDepth2_XStructDepth1_Bool]{}",
		Target:      map[XStructDepth2_XStructDepth1_Bool]struct{}(nil),
		SourceLabel: "set[XStructEmpty]{}",
		Source:      map[XStructEmpty]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[XStructDepth2_XStructDepth1_Bool]{}",
		Target:      map[XStructDepth2_XStructDepth1_Bool]struct{}(nil),
		SourceLabel: "XSet_XStructDepth2_XStructDepth1_Bool{}",
		Source:      XSet_XStructDepth2_XStructDepth1_Bool(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[XStructDepth2_XStructDepth1_Bool]{{F9: {F1: true}}}",
		Target: map[XStructDepth2_XStructDepth1_Bool]struct{}{
			{
				F9: XStructDepth1_Bool{
					F1: true,
				},
			}: struct{}{},
		},
		SourceLabel: "set[XStructDepth2_XStructDepth1_Bool]{{F9: {F1: true}}}",
		Source: map[XStructDepth2_XStructDepth1_Bool]struct{}{
			{
				F9: XStructDepth1_Bool{
					F1: true,
				},
			}: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[XStructDepth2_XStructDepth1_Bool]{{F9: {F1: true}}}",
		Target: map[XStructDepth2_XStructDepth1_Bool]struct{}{
			{
				F9: XStructDepth1_Bool{
					F1: true,
				},
			}: struct{}{},
		},
		SourceLabel: "XSet_XStructDepth2_XStructDepth1_Bool{{F9: {F1: true}}}",
		Source: XSet_XStructDepth2_XStructDepth1_Bool{
			{
				F9: XStructDepth1_Bool{
					F1: true,
				},
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "set[XUnionDepth2_XArray1_String]{}",
		Target:      map[XUnionDepth2_XArray1_String]struct{}(nil),
		SourceLabel: "set[XUnionDepth2_XArray1_String]{}",
		Source:      map[XUnionDepth2_XArray1_String]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "set[XUnionDepth2_XArray1_String]{}",
		Target:      map[XUnionDepth2_XArray1_String]struct{}(nil),
		SourceLabel: "XSet_XUnionDepth2_XArray1_String{}",
		Source:      XSet_XUnionDepth2_XArray1_String(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "set[XUnionDepth2_XArray1_String]{{F0: {\"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: map[XUnionDepth2_XArray1_String]struct{}{
			XUnionDepth2_XArray1_StringF0{XArray1_String{
				"abcdeΔΘΠΣΦ王普澤世界",
			}}: struct{}{},
		},
		SourceLabel: "set[XUnionDepth2_XArray1_String]{{F0: {\"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: map[XUnionDepth2_XArray1_String]struct{}{
			XUnionDepth2_XArray1_StringF0{XArray1_String{
				"abcdeΔΘΠΣΦ王普澤世界",
			}}: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "set[XUnionDepth2_XArray1_String]{{F0: {\"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: map[XUnionDepth2_XArray1_String]struct{}{
			XUnionDepth2_XArray1_StringF0{XArray1_String{
				"abcdeΔΘΠΣΦ王普澤世界",
			}}: struct{}{},
		},
		SourceLabel: "XSet_XUnionDepth2_XArray1_String{{F0: {\"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XSet_XUnionDepth2_XArray1_String{
			XUnionDepth2_XArray1_StringF0{XArray1_String{
				"abcdeΔΘΠΣΦ王普澤世界",
			}}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "set[XUnionDepth2_XArray1_String]{{F0: {}}}",
		Target: map[XUnionDepth2_XArray1_String]struct{}{
			XUnionDepth2_XArray1_StringF0{}: struct{}{},
		},
		SourceLabel: "set[XUnionDepth2_XArray1_String]{{F0: {}}}",
		Source: map[XUnionDepth2_XArray1_String]struct{}{
			XUnionDepth2_XArray1_StringF0{}: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "set[XUnionDepth2_XArray1_String]{{F0: {}}}",
		Target: map[XUnionDepth2_XArray1_String]struct{}{
			XUnionDepth2_XArray1_StringF0{}: struct{}{},
		},
		SourceLabel: "XSet_XUnionDepth2_XArray1_String{{F0: {}}}",
		Source: XSet_XUnionDepth2_XArray1_String{
			XUnionDepth2_XArray1_StringF0{}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XSet_XArray1_XArray3_Int64{}",
		Target:      XSet_XArray1_XArray3_Int64(nil),
		SourceLabel: "XSet_XArray1_XArray3_Int64{}",
		Source:      XSet_XArray1_XArray3_Int64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_XArray1_XArray3_Int64{}",
		Target:      XSet_XArray1_XArray3_Int64(nil),
		SourceLabel: "set[XArray1_XArray3_Int64]{}",
		Source:      map[XArray1_XArray3_Int64]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XSet_XArray1_XArray3_Int64{{{-123, -123, -123}}}",
		Target: XSet_XArray1_XArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: struct{}{},
		},
		SourceLabel: "XSet_XArray1_XArray3_Int64{{{-123, -123, -123}}}",
		Source: XSet_XArray1_XArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XSet_XArray1_XArray3_Int64{{{-123, -123, -123}}}",
		Target: XSet_XArray1_XArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: struct{}{},
		},
		SourceLabel: "set[XArray1_XArray3_Int64]{{{-123, -123, -123}}}",
		Source: map[XArray1_XArray3_Int64]struct{}{
			{
				{
					-123,
					-123,
					-123,
				},
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XSet_XArray1_XArray3_Int64{{{-447057443590709381, 698506354811037918, -411202985819738107}}, {{-4477380931730073524, -3870291943442070151, 0}}}",
		Target: XSet_XArray1_XArray3_Int64{
			{
				{
					-447057443590709381,
					698506354811037918,
					-411202985819738107,
				},
			}: struct{}{},
			{
				{
					-4477380931730073524,
					-3870291943442070151,
					0,
				},
			}: struct{}{},
		},
		SourceLabel: "XSet_XArray1_XArray3_Int64{{{-447057443590709381, 698506354811037918, -411202985819738107}}, {{-4477380931730073524, -3870291943442070151, 0}}}",
		Source: XSet_XArray1_XArray3_Int64{
			{
				{
					-447057443590709381,
					698506354811037918,
					-411202985819738107,
				},
			}: struct{}{},
			{
				{
					-4477380931730073524,
					-3870291943442070151,
					0,
				},
			}: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XSet_XArray1_XArray3_Int64{{{-447057443590709381, 698506354811037918, -411202985819738107}}, {{-4477380931730073524, -3870291943442070151, 0}}}",
		Target: XSet_XArray1_XArray3_Int64{
			{
				{
					-447057443590709381,
					698506354811037918,
					-411202985819738107,
				},
			}: struct{}{},
			{
				{
					-4477380931730073524,
					-3870291943442070151,
					0,
				},
			}: struct{}{},
		},
		SourceLabel: "set[XArray1_XArray3_Int64]{{{-447057443590709381, 698506354811037918, -411202985819738107}}, {{-4477380931730073524, -3870291943442070151, 0}}}",
		Source: map[XArray1_XArray3_Int64]struct{}{
			{
				{
					-447057443590709381,
					698506354811037918,
					-411202985819738107,
				},
			}: struct{}{},
			{
				{
					-4477380931730073524,
					-3870291943442070151,
					0,
				},
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XSet_XStructDepth2_XStructDepth1_Bool{}",
		Target:      XSet_XStructDepth2_XStructDepth1_Bool(nil),
		SourceLabel: "XSet_XStructDepth2_XStructDepth1_Bool{}",
		Source:      XSet_XStructDepth2_XStructDepth1_Bool(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_XStructDepth2_XStructDepth1_Bool{}",
		Target:      XSet_XStructDepth2_XStructDepth1_Bool(nil),
		SourceLabel: "set[XStructEmpty]{}",
		Source:      map[XStructEmpty]struct{}(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_XStructDepth2_XStructDepth1_Bool{}",
		Target:      XSet_XStructDepth2_XStructDepth1_Bool(nil),
		SourceLabel: "set[XStructDepth2_XStructDepth1_Bool]{}",
		Source:      map[XStructDepth2_XStructDepth1_Bool]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XSet_XStructDepth2_XStructDepth1_Bool{{F9: {F1: true}}}",
		Target: XSet_XStructDepth2_XStructDepth1_Bool{
			{
				F9: XStructDepth1_Bool{
					F1: true,
				},
			}: struct{}{},
		},
		SourceLabel: "XSet_XStructDepth2_XStructDepth1_Bool{{F9: {F1: true}}}",
		Source: XSet_XStructDepth2_XStructDepth1_Bool{
			{
				F9: XStructDepth1_Bool{
					F1: true,
				},
			}: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XSet_XStructDepth2_XStructDepth1_Bool{{F9: {F1: true}}}",
		Target: XSet_XStructDepth2_XStructDepth1_Bool{
			{
				F9: XStructDepth1_Bool{
					F1: true,
				},
			}: struct{}{},
		},
		SourceLabel: "set[XStructDepth2_XStructDepth1_Bool]{{F9: {F1: true}}}",
		Source: map[XStructDepth2_XStructDepth1_Bool]struct{}{
			{
				F9: XStructDepth1_Bool{
					F1: true,
				},
			}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XSet_XUnionDepth2_XArray1_String{}",
		Target:      XSet_XUnionDepth2_XArray1_String(nil),
		SourceLabel: "XSet_XUnionDepth2_XArray1_String{}",
		Source:      XSet_XUnionDepth2_XArray1_String(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XSet_XUnionDepth2_XArray1_String{}",
		Target:      XSet_XUnionDepth2_XArray1_String(nil),
		SourceLabel: "set[XUnionDepth2_XArray1_String]{}",
		Source:      map[XUnionDepth2_XArray1_String]struct{}(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XSet_XUnionDepth2_XArray1_String{{F0: {\"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XSet_XUnionDepth2_XArray1_String{
			XUnionDepth2_XArray1_StringF0{XArray1_String{
				"abcdeΔΘΠΣΦ王普澤世界",
			}}: struct{}{},
		},
		SourceLabel: "XSet_XUnionDepth2_XArray1_String{{F0: {\"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XSet_XUnionDepth2_XArray1_String{
			XUnionDepth2_XArray1_StringF0{XArray1_String{
				"abcdeΔΘΠΣΦ王普澤世界",
			}}: struct{}{},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XSet_XUnionDepth2_XArray1_String{{F0: {\"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XSet_XUnionDepth2_XArray1_String{
			XUnionDepth2_XArray1_StringF0{XArray1_String{
				"abcdeΔΘΠΣΦ王普澤世界",
			}}: struct{}{},
		},
		SourceLabel: "set[XUnionDepth2_XArray1_String]{{F0: {\"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: map[XUnionDepth2_XArray1_String]struct{}{
			XUnionDepth2_XArray1_StringF0{XArray1_String{
				"abcdeΔΘΠΣΦ王普澤世界",
			}}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XSet_XUnionDepth2_XArray1_String{{F0: {\"eΔΘ\"}}}",
		Target: XSet_XUnionDepth2_XArray1_String{
			XUnionDepth2_XArray1_StringF0{XArray1_String{
				"eΔΘ",
			}}: struct{}{},
		},
		SourceLabel: "XSet_XUnionDepth2_XArray1_String{{F0: {\"eΔΘ\"}}}",
		Source: XSet_XUnionDepth2_XArray1_String{
			XUnionDepth2_XArray1_StringF0{XArray1_String{
				"eΔΘ",
			}}: struct{}{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XSet_XUnionDepth2_XArray1_String{{F0: {\"eΔΘ\"}}}",
		Target: XSet_XUnionDepth2_XArray1_String{
			XUnionDepth2_XArray1_StringF0{XArray1_String{
				"eΔΘ",
			}}: struct{}{},
		},
		SourceLabel: "set[XUnionDepth2_XArray1_String]{{F0: {\"eΔΘ\"}}}",
		Source: map[XUnionDepth2_XArray1_String]struct{}{
			XUnionDepth2_XArray1_StringF0{XArray1_String{
				"eΔΘ",
			}}: struct{}{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[XArray1_XArray3_Int64]XArray1_XArray3_Int64{}",
		Target:      map[XArray1_XArray3_Int64]XArray1_XArray3_Int64(nil),
		SourceLabel: "map[XArray1_XArray3_Int64]XArray1_XArray3_Int64{}",
		Source:      map[XArray1_XArray3_Int64]XArray1_XArray3_Int64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XArray1_XArray3_Int64]XArray1_XArray3_Int64{}",
		Target:      map[XArray1_XArray3_Int64]XArray1_XArray3_Int64(nil),
		SourceLabel: "XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64{}",
		Source:      XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[XArray1_XArray3_Int64]XArray1_XArray3_Int64{{{-123, -123, -123}}: {{-123, -123, -123}}}",
		Target: map[XArray1_XArray3_Int64]XArray1_XArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: {
				{
					-123,
					-123,
					-123,
				},
			},
		},
		SourceLabel: "map[XArray1_XArray3_Int64]XArray1_XArray3_Int64{{{-123, -123, -123}}: {{-123, -123, -123}}}",
		Source: map[XArray1_XArray3_Int64]XArray1_XArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: {
				{
					-123,
					-123,
					-123,
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "map[XArray1_XArray3_Int64]XArray1_XArray3_Int64{{{-123, -123, -123}}: {{-123, -123, -123}}}",
		Target: map[XArray1_XArray3_Int64]XArray1_XArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: {
				{
					-123,
					-123,
					-123,
				},
			},
		},
		SourceLabel: "XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64{{{-123, -123, -123}}: {{-123, -123, -123}}}",
		Source: XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: {
				{
					-123,
					-123,
					-123,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[XArray1_XArray3_Int64]XArray1_XArray3_Int64{{{-1370552536671486543, 1080764377456477673, 1074732654233892263}}: {}, {{0, 3045721580144556079, -2691458353857424482}}: {{2459091982784411478, 0, -2546543299471158740}}, {{1221608626390247487, -2614294925927142920, 4431410242634908452}}: {}}",
		Target: map[XArray1_XArray3_Int64]XArray1_XArray3_Int64{
			{
				{
					-1370552536671486543,
					1080764377456477673,
					1074732654233892263,
				},
			}: {},
			{
				{
					0,
					3045721580144556079,
					-2691458353857424482,
				},
			}: {
				{
					2459091982784411478,
					0,
					-2546543299471158740,
				},
			},
			{
				{
					1221608626390247487,
					-2614294925927142920,
					4431410242634908452,
				},
			}: {},
		},
		SourceLabel: "map[XArray1_XArray3_Int64]XArray1_XArray3_Int64{{{-1370552536671486543, 1080764377456477673, 1074732654233892263}}: {}, {{0, 3045721580144556079, -2691458353857424482}}: {{2459091982784411478, 0, -2546543299471158740}}, {{1221608626390247487, -2614294925927142920, 4431410242634908452}}: {}}",
		Source: map[XArray1_XArray3_Int64]XArray1_XArray3_Int64{
			{
				{
					-1370552536671486543,
					1080764377456477673,
					1074732654233892263,
				},
			}: {},
			{
				{
					0,
					3045721580144556079,
					-2691458353857424482,
				},
			}: {
				{
					2459091982784411478,
					0,
					-2546543299471158740,
				},
			},
			{
				{
					1221608626390247487,
					-2614294925927142920,
					4431410242634908452,
				},
			}: {},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "map[XArray1_XArray3_Int64]XArray1_XArray3_Int64{{{-1370552536671486543, 1080764377456477673, 1074732654233892263}}: {}, {{0, 3045721580144556079, -2691458353857424482}}: {{2459091982784411478, 0, -2546543299471158740}}, {{1221608626390247487, -2614294925927142920, 4431410242634908452}}: {}}",
		Target: map[XArray1_XArray3_Int64]XArray1_XArray3_Int64{
			{
				{
					-1370552536671486543,
					1080764377456477673,
					1074732654233892263,
				},
			}: {},
			{
				{
					0,
					3045721580144556079,
					-2691458353857424482,
				},
			}: {
				{
					2459091982784411478,
					0,
					-2546543299471158740,
				},
			},
			{
				{
					1221608626390247487,
					-2614294925927142920,
					4431410242634908452,
				},
			}: {},
		},
		SourceLabel: "XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64{{{-1370552536671486543, 1080764377456477673, 1074732654233892263}}: {}, {{0, 3045721580144556079, -2691458353857424482}}: {{2459091982784411478, 0, -2546543299471158740}}, {{1221608626390247487, -2614294925927142920, 4431410242634908452}}: {}}",
		Source: XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64{
			{
				{
					-1370552536671486543,
					1080764377456477673,
					1074732654233892263,
				},
			}: {},
			{
				{
					0,
					3045721580144556079,
					-2691458353857424482,
				},
			}: {
				{
					2459091982784411478,
					0,
					-2546543299471158740,
				},
			},
			{
				{
					1221608626390247487,
					-2614294925927142920,
					4431410242634908452,
				},
			}: {},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[XStructDepth2_XUnionDepth1_Float64]XStructDepth2_XUnionDepth1_Float64{}",
		Target:      map[XStructDepth2_XUnionDepth1_Float64]XStructDepth2_XUnionDepth1_Float64(nil),
		SourceLabel: "map[XStructDepth2_XUnionDepth1_Float64]XStructDepth2_XUnionDepth1_Float64{}",
		Source:      map[XStructDepth2_XUnionDepth1_Float64]XStructDepth2_XUnionDepth1_Float64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XStructDepth2_XUnionDepth1_Float64]XStructDepth2_XUnionDepth1_Float64{}",
		Target:      map[XStructDepth2_XUnionDepth1_Float64]XStructDepth2_XUnionDepth1_Float64(nil),
		SourceLabel: "XMap_XStructEmpty_XStructEmpty{}",
		Source:      XMap_XStructEmpty_XStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "map[XStructDepth2_XUnionDepth1_Float64]XStructDepth2_XUnionDepth1_Float64{}",
		Target:      map[XStructDepth2_XUnionDepth1_Float64]XStructDepth2_XUnionDepth1_Float64(nil),
		SourceLabel: "map[XStructEmpty]XStructEmpty{}",
		Source:      map[XStructEmpty]XStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[XStructDepth2_XUnionDepth1_Float64]XStructDepth2_XUnionDepth1_Float64{{F11: {F29: 1.5}}: {F11: {F29: 1.5}}}",
		Target: map[XStructDepth2_XUnionDepth1_Float64]XStructDepth2_XUnionDepth1_Float64{
			{
				F11: XUnionDepth1_Float64F29{1.5},
			}: {
				F11: XUnionDepth1_Float64F29{1.5},
			},
		},
		SourceLabel: "map[XStructDepth2_XUnionDepth1_Float64]XStructDepth2_XUnionDepth1_Float64{{F11: {F29: 1.5}}: {F11: {F29: 1.5}}}",
		Source: map[XStructDepth2_XUnionDepth1_Float64]XStructDepth2_XUnionDepth1_Float64{
			{
				F11: XUnionDepth1_Float64F29{1.5},
			}: {
				F11: XUnionDepth1_Float64F29{1.5},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[XStructDepth2_XUnionDepth1_Float64]XStructDepth2_XUnionDepth1_Float64{{}: {}}",
		Target: map[XStructDepth2_XUnionDepth1_Float64]XStructDepth2_XUnionDepth1_Float64{
			{
				F11: XUnionDepth1_Float64F29{},
			}: {
				F11: XUnionDepth1_Float64F29{},
			},
		},
		SourceLabel: "map[XStructDepth2_XUnionDepth1_Float64]XStructDepth2_XUnionDepth1_Float64{{}: {}}",
		Source: map[XStructDepth2_XUnionDepth1_Float64]XStructDepth2_XUnionDepth1_Float64{
			{
				F11: XUnionDepth1_Float64F29{},
			}: {
				F11: XUnionDepth1_Float64F29{},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "map[XStructDepth2_XUnionDepth1_Float64]XStructDepth2_XUnionDepth1_Float64{{}: {}}",
		Target: map[XStructDepth2_XUnionDepth1_Float64]XStructDepth2_XUnionDepth1_Float64{
			{
				F11: XUnionDepth1_Float64F29{},
			}: {
				F11: XUnionDepth1_Float64F29{},
			},
		},
		SourceLabel: "XMap_XStructEmpty_XStructEmpty{{}: {}}",
		Source: XMap_XStructEmpty_XStructEmpty{
			{}: {},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "map[XUnionDepth2_XStructDepth1_Int8]XUnionDepth2_XStructDepth1_Int8{}",
		Target:      map[XUnionDepth2_XStructDepth1_Int8]XUnionDepth2_XStructDepth1_Int8(nil),
		SourceLabel: "map[XUnionDepth2_XStructDepth1_Int8]XUnionDepth2_XStructDepth1_Int8{}",
		Source:      map[XUnionDepth2_XStructDepth1_Int8]XUnionDepth2_XStructDepth1_Int8(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "map[XUnionDepth2_XStructDepth1_Int8]XUnionDepth2_XStructDepth1_Int8{{F9: {F19: -123}}: {F9: {F19: -123}}}",
		Target: map[XUnionDepth2_XStructDepth1_Int8]XUnionDepth2_XStructDepth1_Int8{
			XUnionDepth2_XStructDepth1_Int8F9{XStructDepth1_Int8{
				F19: -123,
			}}: XUnionDepth2_XStructDepth1_Int8F9{XStructDepth1_Int8{
				F19: -123,
			}},
		},
		SourceLabel: "map[XUnionDepth2_XStructDepth1_Int8]XUnionDepth2_XStructDepth1_Int8{{F9: {F19: -123}}: {F9: {F19: -123}}}",
		Source: map[XUnionDepth2_XStructDepth1_Int8]XUnionDepth2_XStructDepth1_Int8{
			XUnionDepth2_XStructDepth1_Int8F9{XStructDepth1_Int8{
				F19: -123,
			}}: XUnionDepth2_XStructDepth1_Int8F9{XStructDepth1_Int8{
				F19: -123,
			}},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "map[XUnionDepth2_XStructDepth1_Int8]XUnionDepth2_XStructDepth1_Int8{{F9: {}}: {F9: {F19: -13}}}",
		Target: map[XUnionDepth2_XStructDepth1_Int8]XUnionDepth2_XStructDepth1_Int8{
			XUnionDepth2_XStructDepth1_Int8F9{}: XUnionDepth2_XStructDepth1_Int8F9{XStructDepth1_Int8{
				F19: -13,
			}},
		},
		SourceLabel: "map[XUnionDepth2_XStructDepth1_Int8]XUnionDepth2_XStructDepth1_Int8{{F9: {}}: {F9: {F19: -13}}}",
		Source: map[XUnionDepth2_XStructDepth1_Int8]XUnionDepth2_XStructDepth1_Int8{
			XUnionDepth2_XStructDepth1_Int8F9{}: XUnionDepth2_XStructDepth1_Int8F9{XStructDepth1_Int8{
				F19: -13,
			}},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64{}",
		Target:      XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64(nil),
		SourceLabel: "XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64{}",
		Source:      XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64{}",
		Target:      XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64(nil),
		SourceLabel: "map[XArray1_XArray3_Int64]XArray1_XArray3_Int64{}",
		Source:      map[XArray1_XArray3_Int64]XArray1_XArray3_Int64(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64{{{-123, -123, -123}}: {{-123, -123, -123}}}",
		Target: XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: {
				{
					-123,
					-123,
					-123,
				},
			},
		},
		SourceLabel: "XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64{{{-123, -123, -123}}: {{-123, -123, -123}}}",
		Source: XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: {
				{
					-123,
					-123,
					-123,
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64{{{-123, -123, -123}}: {{-123, -123, -123}}}",
		Target: XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: {
				{
					-123,
					-123,
					-123,
				},
			},
		},
		SourceLabel: "map[XArray1_XArray3_Int64]XArray1_XArray3_Int64{{{-123, -123, -123}}: {{-123, -123, -123}}}",
		Source: map[XArray1_XArray3_Int64]XArray1_XArray3_Int64{
			{
				{
					-123,
					-123,
					-123,
				},
			}: {
				{
					-123,
					-123,
					-123,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64{{{-3869501258035372809, -3686427825087562033, 2336951289288876778}}: {}, {}: {{-3950287420529183877, -3629810858565318855, 4256249491436161541}}}",
		Target: XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64{
			{
				{
					-3869501258035372809,
					-3686427825087562033,
					2336951289288876778,
				},
			}: {},
			{}: {
				{
					-3950287420529183877,
					-3629810858565318855,
					4256249491436161541,
				},
			},
		},
		SourceLabel: "XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64{{{-3869501258035372809, -3686427825087562033, 2336951289288876778}}: {}, {}: {{-3950287420529183877, -3629810858565318855, 4256249491436161541}}}",
		Source: XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64{
			{
				{
					-3869501258035372809,
					-3686427825087562033,
					2336951289288876778,
				},
			}: {},
			{}: {
				{
					-3950287420529183877,
					-3629810858565318855,
					4256249491436161541,
				},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64{{{-3869501258035372809, -3686427825087562033, 2336951289288876778}}: {}, {}: {{-3950287420529183877, -3629810858565318855, 4256249491436161541}}}",
		Target: XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64{
			{
				{
					-3869501258035372809,
					-3686427825087562033,
					2336951289288876778,
				},
			}: {},
			{}: {
				{
					-3950287420529183877,
					-3629810858565318855,
					4256249491436161541,
				},
			},
		},
		SourceLabel: "map[XArray1_XArray3_Int64]XArray1_XArray3_Int64{{{-3869501258035372809, -3686427825087562033, 2336951289288876778}}: {}, {}: {{-3950287420529183877, -3629810858565318855, 4256249491436161541}}}",
		Source: map[XArray1_XArray3_Int64]XArray1_XArray3_Int64{
			{
				{
					-3869501258035372809,
					-3686427825087562033,
					2336951289288876778,
				},
			}: {},
			{}: {
				{
					-3950287420529183877,
					-3629810858565318855,
					4256249491436161541,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XMap_XStructDepth2_XArray1_Uint32_XStructDepth2_XArray1_Uint32{}",
		Target:      XMap_XStructDepth2_XArray1_Uint32_XStructDepth2_XArray1_Uint32(nil),
		SourceLabel: "XMap_XStructDepth2_XArray1_Uint32_XStructDepth2_XArray1_Uint32{}",
		Source:      XMap_XStructDepth2_XArray1_Uint32_XStructDepth2_XArray1_Uint32(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XStructDepth2_XArray1_Uint32_XStructDepth2_XArray1_Uint32{}",
		Target:      XMap_XStructDepth2_XArray1_Uint32_XStructDepth2_XArray1_Uint32(nil),
		SourceLabel: "map[XStructEmpty]XStructEmpty{}",
		Source:      map[XStructEmpty]XStructEmpty(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "XMap_XStructDepth2_XArray1_Uint32_XStructDepth2_XArray1_Uint32{}",
		Target:      XMap_XStructDepth2_XArray1_Uint32_XStructDepth2_XArray1_Uint32(nil),
		SourceLabel: "XMap_XStructEmpty_XStructEmpty{}",
		Source:      XMap_XStructEmpty_XStructEmpty(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XMap_XStructDepth2_XArray1_Uint32_XStructDepth2_XArray1_Uint32{{F1: {123}}: {F1: {123}}}",
		Target: XMap_XStructDepth2_XArray1_Uint32_XStructDepth2_XArray1_Uint32{
			{
				F1: XArray1_Uint32{
					123,
				},
			}: {
				F1: XArray1_Uint32{
					123,
				},
			},
		},
		SourceLabel: "XMap_XStructDepth2_XArray1_Uint32_XStructDepth2_XArray1_Uint32{{F1: {123}}: {F1: {123}}}",
		Source: XMap_XStructDepth2_XArray1_Uint32_XStructDepth2_XArray1_Uint32{
			{
				F1: XArray1_Uint32{
					123,
				},
			}: {
				F1: XArray1_Uint32{
					123,
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XMap_XStructDepth2_XArray1_Uint32_XStructDepth2_XArray1_Uint32{{}: {}, {F1: {3168261590}}: {}}",
		Target: XMap_XStructDepth2_XArray1_Uint32_XStructDepth2_XArray1_Uint32{
			{}: {},
			{
				F1: XArray1_Uint32{
					3168261590,
				},
			}: {},
		},
		SourceLabel: "XMap_XStructDepth2_XArray1_Uint32_XStructDepth2_XArray1_Uint32{{}: {}, {F1: {3168261590}}: {}}",
		Source: XMap_XStructDepth2_XArray1_Uint32_XStructDepth2_XArray1_Uint32{
			{}: {},
			{
				F1: XArray1_Uint32{
					3168261590,
				},
			}: {},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte{}",
		Target:      XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte(nil),
		SourceLabel: "XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte{}",
		Source:      XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte(nil),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte{{F1: \"{{\"}: {F1: \"{{\"}}",
		Target: XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte{
			XUnionDepth2_XArray2_XByteF1{XArray2_XByte{
				123,
				123,
			}}: XUnionDepth2_XArray2_XByteF1{XArray2_XByte{
				123,
				123,
			}},
		},
		SourceLabel: "XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte{{F1: \"{{\"}: {F1: \"{{\"}}",
		Source: XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte{
			XUnionDepth2_XArray2_XByteF1{XArray2_XByte{
				123,
				123,
			}}: XUnionDepth2_XArray2_XByteF1{XArray2_XByte{
				123,
				123,
			}},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte{{F1: \"\\x00\\x00\"}: {F1: \"\\x00\\x00\"}, {F1: \"\\x95\\xce\"}: {F1: \"\\x00\\x00\"}}",
		Target: XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte{
			XUnionDepth2_XArray2_XByteF1{}: XUnionDepth2_XArray2_XByteF1{},
			XUnionDepth2_XArray2_XByteF1{XArray2_XByte{
				149,
				206,
			}}: XUnionDepth2_XArray2_XByteF1{},
		},
		SourceLabel: "XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte{{F1: \"\\x00\\x00\"}: {F1: \"\\x00\\x00\"}, {F1: \"\\x95\\xce\"}: {F1: \"\\x00\\x00\"}}",
		Source: XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte{
			XUnionDepth2_XArray2_XByteF1{}: XUnionDepth2_XArray2_XByteF1{},
			XUnionDepth2_XArray2_XByteF1{XArray2_XByte{
				149,
				206,
			}}: XUnionDepth2_XArray2_XByteF1{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth3_All{}",
		Target: XStructDepth3_All{
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
			F5: XUnionDepth2_AllF0{},
		},
		SourceLabel: "XStructDepth3_All{}",
		Source: XStructDepth3_All{
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
			F5: XUnionDepth2_AllF0{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth3_All{}",
		Target: XStructDepth3_All{
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
			F5: XUnionDepth2_AllF0{},
		},
		SourceLabel: "XStructDepth3_OptXStructDepth2_Set_Float64{}",
		Source:      XStructDepth3_OptXStructDepth2_Set_Float64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth3_All{}",
		Target: XStructDepth3_All{
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
			F5: XUnionDepth2_AllF0{},
		},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth3_All{F0: {{D}}, F1: {{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}, F2: {{}}, F3: {{F29: 1.5}: {F29: 1.5}}, F4: {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}, F5: {F13: {F28: 1.5}}, F6: {F4: {1.5}}}",
		Target: XStructDepth3_All{
			F0: XArray1_Set_XEnumBcd{
				{
					XEnumBcdD: struct{}{},
				},
			},
			F1: []XUnionDepth1_All{
				XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
			},
			F2: XSet_XArray1_XStructEmpty{
				{}: struct{}{},
			},
			F3: map[XUnionDepth1_Float64]XUnionDepth1_Float64{
				XUnionDepth1_Float64F29{1.5}: XUnionDepth1_Float64F29{1.5},
			},
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: XArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: XList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: XStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: XEnumAbcC,
					F9: XEnumBcdD,
					F11: XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: XUnionDepth1_Float64F29{1.5},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{
					F14: 123,
				},
			},
			F5: XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
				F28: 1.5,
			}},
			F6: &XStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
		SourceLabel: "XStructDepth3_All{F0: {{D}}, F1: {{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}, F2: {{}}, F3: {{F29: 1.5}: {F29: 1.5}}, F4: {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}, F5: {F13: {F28: 1.5}}, F6: {F4: {1.5}}}",
		Source: XStructDepth3_All{
			F0: XArray1_Set_XEnumBcd{
				{
					XEnumBcdD: struct{}{},
				},
			},
			F1: []XUnionDepth1_All{
				XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
			},
			F2: XSet_XArray1_XStructEmpty{
				{}: struct{}{},
			},
			F3: map[XUnionDepth1_Float64]XUnionDepth1_Float64{
				XUnionDepth1_Float64F29{1.5}: XUnionDepth1_Float64F29{1.5},
			},
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: XArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: XList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: XStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: XEnumAbcC,
					F9: XEnumBcdD,
					F11: XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: XUnionDepth1_Float64F29{1.5},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{
					F14: 123,
				},
			},
			F5: XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
				F28: 1.5,
			}},
			F6: &XStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth3_All{F0: {{B, C, D}}, F1: {{F0: nil}, {F6: 93}, {F1: false}}, F2: {{}}, F3: {{F29: -2.0275041959631462e+09}: {F29: -1.608352870384518e+08}, {F29: 0}: {F29: -6.431137222760762e+08}}, F4: {F0: {typeobject(XMap_XStructEmpty_XStructEmpty), typeobject(XMap_String_String)}, F1: {1619759417}, F2: {8192, 12469, -15945}, F3: {nil}, F4: {1.93157022182663e+09}, F5: {D}, F6: {157: 83, 196: 220, 42: 68}, F7: {2238134601: 2402028229, 3840569796: 3073376885}, F9: {F1: true}, F10: {F29: 1.7751768790390162e+09}, F12: {F9: D}, F13: {}}, F6: {}}",
		Target: XStructDepth3_All{
			F0: XArray1_Set_XEnumBcd{
				{
					XEnumBcdB: struct{}{},
					XEnumBcdC: struct{}{},
					XEnumBcdD: struct{}{},
				},
			},
			F1: []XUnionDepth1_All{
				XUnionDepth1_AllF0{},
				XUnionDepth1_AllF6{93},
				XUnionDepth1_AllF1{},
			},
			F2: XSet_XArray1_XStructEmpty{
				{}: struct{}{},
			},
			F3: map[XUnionDepth1_Float64]XUnionDepth1_Float64{
				XUnionDepth1_Float64F29{-2.0275041959631462e+09}: XUnionDepth1_Float64F29{-1.608352870384518e+08},
				XUnionDepth1_Float64F29{}:                        XUnionDepth1_Float64F29{-6.431137222760762e+08},
			},
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					__VDLType_map_310,
					__VDLType_map_311,
				},
				F1: XArray1_Uint32{
					1619759417,
				},
				F2: []int16{
					8192,
					12469,
					-15945,
				},
				F3: XList_Any{
					nil,
				},
				F4: map[float64]struct{}{
					1.93157022182663e+09: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					157: 83,
					196: 220,
					42:  68,
				},
				F7: map[uint32]uint32{
					2238134601: 2402028229,
					3840569796: 3073376885,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF29{1.7751768790390162e+09},
				F11: XUnionDepth1_Float64F29{},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{},
			},
			F5: XUnionDepth2_AllF0{},
			F6: &XStructDepth2_Set_Float64{},
		},
		SourceLabel: "XStructDepth3_All{F0: {{B, C, D}}, F1: {{F0: nil}, {F6: 93}, {F1: false}}, F2: {{}}, F3: {{F29: -2.0275041959631462e+09}: {F29: -1.608352870384518e+08}, {F29: 0}: {F29: -6.431137222760762e+08}}, F4: {F0: {typeobject(XMap_XStructEmpty_XStructEmpty), typeobject(XMap_String_String)}, F1: {1619759417}, F2: {8192, 12469, -15945}, F3: {nil}, F4: {1.93157022182663e+09}, F5: {D}, F6: {157: 83, 196: 220, 42: 68}, F7: {2238134601: 2402028229, 3840569796: 3073376885}, F9: {F1: true}, F10: {F29: 1.7751768790390162e+09}, F12: {F9: D}, F13: {}}, F6: {}}",
		Source: XStructDepth3_All{
			F0: XArray1_Set_XEnumBcd{
				{
					XEnumBcdB: struct{}{},
					XEnumBcdC: struct{}{},
					XEnumBcdD: struct{}{},
				},
			},
			F1: []XUnionDepth1_All{
				XUnionDepth1_AllF0{},
				XUnionDepth1_AllF6{93},
				XUnionDepth1_AllF1{},
			},
			F2: XSet_XArray1_XStructEmpty{
				{}: struct{}{},
			},
			F3: map[XUnionDepth1_Float64]XUnionDepth1_Float64{
				XUnionDepth1_Float64F29{-2.0275041959631462e+09}: XUnionDepth1_Float64F29{-1.608352870384518e+08},
				XUnionDepth1_Float64F29{}:                        XUnionDepth1_Float64F29{-6.431137222760762e+08},
			},
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					__VDLType_map_310,
					__VDLType_map_311,
				},
				F1: XArray1_Uint32{
					1619759417,
				},
				F2: []int16{
					8192,
					12469,
					-15945,
				},
				F3: XList_Any{
					nil,
				},
				F4: map[float64]struct{}{
					1.93157022182663e+09: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					157: 83,
					196: 220,
					42:  68,
				},
				F7: map[uint32]uint32{
					2238134601: 2402028229,
					3840569796: 3073376885,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF29{1.7751768790390162e+09},
				F11: XUnionDepth1_Float64F29{},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{},
			},
			F5: XUnionDepth2_AllF0{},
			F6: &XStructDepth2_Set_Float64{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth3_XArray1_Set_XEnumBcd{}",
		Target:      XStructDepth3_XArray1_Set_XEnumBcd{},
		SourceLabel: "XStructDepth3_XArray1_Set_XEnumBcd{}",
		Source:      XStructDepth3_XArray1_Set_XEnumBcd{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth3_XArray1_Set_XEnumBcd{}",
		Target:      XStructDepth3_XArray1_Set_XEnumBcd{},
		SourceLabel: "?XStructDepth3_XArray1_Set_XEnumBcd{}",
		Source:      &XStructDepth3_XArray1_Set_XEnumBcd{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth3_XArray1_Set_XEnumBcd{}",
		Target:      XStructDepth3_XArray1_Set_XEnumBcd{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth3_XArray1_Set_XEnumBcd{F0: {{D}}}",
		Target: XStructDepth3_XArray1_Set_XEnumBcd{
			F0: XArray1_Set_XEnumBcd{
				{
					XEnumBcdD: struct{}{},
				},
			},
		},
		SourceLabel: "XStructDepth3_XArray1_Set_XEnumBcd{F0: {{D}}}",
		Source: XStructDepth3_XArray1_Set_XEnumBcd{
			F0: XArray1_Set_XEnumBcd{
				{
					XEnumBcdD: struct{}{},
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth3_XArray1_Set_XEnumBcd{F0: {{D}}}",
		Target: XStructDepth3_XArray1_Set_XEnumBcd{
			F0: XArray1_Set_XEnumBcd{
				{
					XEnumBcdD: struct{}{},
				},
			},
		},
		SourceLabel: "?XStructDepth3_XArray1_Set_XEnumBcd{F0: {{D}}}",
		Source: &XStructDepth3_XArray1_Set_XEnumBcd{
			F0: XArray1_Set_XEnumBcd{
				{
					XEnumBcdD: struct{}{},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth3_List_XUnionDepth1_All{}",
		Target:      XStructDepth3_List_XUnionDepth1_All{},
		SourceLabel: "XStructDepth3_List_XUnionDepth1_All{}",
		Source:      XStructDepth3_List_XUnionDepth1_All{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth3_List_XUnionDepth1_All{}",
		Target:      XStructDepth3_List_XUnionDepth1_All{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth3_List_XUnionDepth1_All{}",
		Target:      XStructDepth3_List_XUnionDepth1_All{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth3_List_XUnionDepth1_All{F1: {{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Target: XStructDepth3_List_XUnionDepth1_All{
			F1: []XUnionDepth1_All{
				XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
			},
		},
		SourceLabel: "XStructDepth3_List_XUnionDepth1_All{F1: {{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Source: XStructDepth3_List_XUnionDepth1_All{
			F1: []XUnionDepth1_All{
				XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth3_List_XUnionDepth1_All{F1: {{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Target: XStructDepth3_List_XUnionDepth1_All{
			F1: []XUnionDepth1_All{
				XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
			},
		},
		SourceLabel: "XStructDepth3_All{F1: {{F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Source: XStructDepth3_All{
			F1: []XUnionDepth1_All{
				XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
			},
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
			F5: XUnionDepth2_AllF0{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth3_List_XUnionDepth1_All{F1: {{F21: -11717}, {F2: true}, {F6: 0}}}",
		Target: XStructDepth3_List_XUnionDepth1_All{
			F1: []XUnionDepth1_All{
				XUnionDepth1_AllF21{-11717},
				XUnionDepth1_AllF2{true},
				XUnionDepth1_AllF6{},
			},
		},
		SourceLabel: "XStructDepth3_List_XUnionDepth1_All{F1: {{F21: -11717}, {F2: true}, {F6: 0}}}",
		Source: XStructDepth3_List_XUnionDepth1_All{
			F1: []XUnionDepth1_All{
				XUnionDepth1_AllF21{-11717},
				XUnionDepth1_AllF2{true},
				XUnionDepth1_AllF6{},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth3_List_XUnionDepth1_All{F1: {{F21: -11717}, {F2: true}, {F6: 0}}}",
		Target: XStructDepth3_List_XUnionDepth1_All{
			F1: []XUnionDepth1_All{
				XUnionDepth1_AllF21{-11717},
				XUnionDepth1_AllF2{true},
				XUnionDepth1_AllF6{},
			},
		},
		SourceLabel: "XStructDepth3_All{F1: {{F21: -11717}, {F2: true}, {F6: 0}}}",
		Source: XStructDepth3_All{
			F1: []XUnionDepth1_All{
				XUnionDepth1_AllF21{-11717},
				XUnionDepth1_AllF2{true},
				XUnionDepth1_AllF6{},
			},
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
			F5: XUnionDepth2_AllF0{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth3_XSet_XArray1_XStructEmpty{}",
		Target:      XStructDepth3_XSet_XArray1_XStructEmpty{},
		SourceLabel: "XStructDepth3_XSet_XArray1_XStructEmpty{}",
		Source:      XStructDepth3_XSet_XArray1_XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth3_XSet_XArray1_XStructEmpty{}",
		Target:      XStructDepth3_XSet_XArray1_XStructEmpty{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth3_XSet_XArray1_XStructEmpty{}",
		Target:      XStructDepth3_XSet_XArray1_XStructEmpty{},
		SourceLabel: "XStructDepth3_All{}",
		Source: XStructDepth3_All{
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
			F5: XUnionDepth2_AllF0{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth3_XSet_XArray1_XStructEmpty{F2: {{}}}",
		Target: XStructDepth3_XSet_XArray1_XStructEmpty{
			F2: XSet_XArray1_XStructEmpty{
				{}: struct{}{},
			},
		},
		SourceLabel: "XStructDepth3_XSet_XArray1_XStructEmpty{F2: {{}}}",
		Source: XStructDepth3_XSet_XArray1_XStructEmpty{
			F2: XSet_XArray1_XStructEmpty{
				{}: struct{}{},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth3_XSet_XArray1_XStructEmpty{F2: {{}}}",
		Target: XStructDepth3_XSet_XArray1_XStructEmpty{
			F2: XSet_XArray1_XStructEmpty{
				{}: struct{}{},
			},
		},
		SourceLabel: "XStructDepth3_All{F2: {{}}}",
		Source: XStructDepth3_All{
			F2: XSet_XArray1_XStructEmpty{
				{}: struct{}{},
			},
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
			F5: XUnionDepth2_AllF0{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{}",
		Target:      XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{},
		SourceLabel: "XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{}",
		Source:      XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{}",
		Target:      XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{}",
		Target:      XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{F3: {{F29: 1.5}: {F29: 1.5}}}",
		Target: XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{
			F3: map[XUnionDepth1_Float64]XUnionDepth1_Float64{
				XUnionDepth1_Float64F29{1.5}: XUnionDepth1_Float64F29{1.5},
			},
		},
		SourceLabel: "XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{F3: {{F29: 1.5}: {F29: 1.5}}}",
		Source: XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{
			F3: map[XUnionDepth1_Float64]XUnionDepth1_Float64{
				XUnionDepth1_Float64F29{1.5}: XUnionDepth1_Float64F29{1.5},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{F3: {{F29: 1.5}: {F29: 1.5}}}",
		Target: XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{
			F3: map[XUnionDepth1_Float64]XUnionDepth1_Float64{
				XUnionDepth1_Float64F29{1.5}: XUnionDepth1_Float64F29{1.5},
			},
		},
		SourceLabel: "XStructDepth3_All{F3: {{F29: 1.5}: {F29: 1.5}}}",
		Source: XStructDepth3_All{
			F3: map[XUnionDepth1_Float64]XUnionDepth1_Float64{
				XUnionDepth1_Float64F29{1.5}: XUnionDepth1_Float64F29{1.5},
			},
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
			F5: XUnionDepth2_AllF0{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{F3: {{F29: 0}: {F29: -1.2057166467106588e+09}}}",
		Target: XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{
			F3: map[XUnionDepth1_Float64]XUnionDepth1_Float64{
				XUnionDepth1_Float64F29{}: XUnionDepth1_Float64F29{-1.2057166467106588e+09},
			},
		},
		SourceLabel: "XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{F3: {{F29: 0}: {F29: -1.2057166467106588e+09}}}",
		Source: XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{
			F3: map[XUnionDepth1_Float64]XUnionDepth1_Float64{
				XUnionDepth1_Float64F29{}: XUnionDepth1_Float64F29{-1.2057166467106588e+09},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{F3: {{F29: 0}: {F29: -1.2057166467106588e+09}}}",
		Target: XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64{
			F3: map[XUnionDepth1_Float64]XUnionDepth1_Float64{
				XUnionDepth1_Float64F29{}: XUnionDepth1_Float64F29{-1.2057166467106588e+09},
			},
		},
		SourceLabel: "XStructDepth3_All{F3: {{F29: 0}: {F29: -1.2057166467106588e+09}}}",
		Source: XStructDepth3_All{
			F3: map[XUnionDepth1_Float64]XUnionDepth1_Float64{
				XUnionDepth1_Float64F29{}: XUnionDepth1_Float64F29{-1.2057166467106588e+09},
			},
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
			F5: XUnionDepth2_AllF0{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth3_XStructDepth2_All{}",
		Target: XStructDepth3_XStructDepth2_All{
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
		},
		SourceLabel: "XStructDepth3_XStructDepth2_All{}",
		Source: XStructDepth3_XStructDepth2_All{
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth3_XStructDepth2_All{}",
		Target: XStructDepth3_XStructDepth2_All{
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
		},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth3_XStructDepth2_All{}",
		Target: XStructDepth3_XStructDepth2_All{
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
		},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth3_XStructDepth2_All{F4: {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Target: XStructDepth3_XStructDepth2_All{
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: XArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: XList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: XStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: XEnumAbcC,
					F9: XEnumBcdD,
					F11: XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: XUnionDepth1_Float64F29{1.5},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{
					F14: 123,
				},
			},
		},
		SourceLabel: "XStructDepth3_XStructDepth2_All{F4: {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Source: XStructDepth3_XStructDepth2_All{
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: XArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: XList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: XStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: XEnumAbcC,
					F9: XEnumBcdD,
					F11: XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: XUnionDepth1_Float64F29{1.5},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{
					F14: 123,
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth3_XStructDepth2_All{F4: {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Target: XStructDepth3_XStructDepth2_All{
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: XArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: XList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: XStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: XEnumAbcC,
					F9: XEnumBcdD,
					F11: XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: XUnionDepth1_Float64F29{1.5},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{
					F14: 123,
				},
			},
		},
		SourceLabel: "XStructDepth3_All{F4: {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Source: XStructDepth3_All{
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.Int64Type,
					vdl.Int64Type,
				},
				F1: XArray1_Uint32{
					123,
				},
				F2: []int16{
					-123,
				},
				F3: XList_Any{
					int64(-123),
				},
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
				F5: XSet_XEnumBcd{
					XEnumBcdD: struct{}{},
				},
				F6: map[byte]byte{
					123: 123,
				},
				F7: map[uint32]uint32{
					123: 123,
				},
				F8: XStructDepth1_All{
					F0: int64(-123),
					F1: true,
					F2: true,
					F3: "abcdeΔΘΠΣΦ王普澤世界",
					F4: "abcdeΔΘΠΣΦ王普澤世界",
					F5: vdl.Int64Type,
					F6: 123,
					F7: 123,
					F8: XEnumAbcC,
					F9: XEnumBcdD,
					F11: XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "abcdeΔΘΠΣΦ王普澤世界",
						RetryCode: vdl.WireRetryCodeRetryBackoff,
						Msg:       "abcdeΔΘΠΣΦ王普澤世界",
					}),
					F13: 123,
					F14: 123,
					F15: 123,
					F16: 123,
					F17: 123,
					F18: 123,
					F19: -123,
					F20: -123,
					F21: -123,
					F22: -123,
					F23: -123,
					F24: -123,
					F25: -123,
					F26: -123,
					F27: 1.5,
					F28: 1.5,
					F29: 1.5,
					F30: 1.5,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "abcdeΔΘΠΣΦ王普澤世界",
						Msg: "abcdeΔΘΠΣΦ王普澤世界",
					},
				},
				F9: XStructDepth1_Bool{
					F1: true,
				},
				F10: XUnionDepth1_AllF32{&XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				}},
				F11: XUnionDepth1_Float64F29{1.5},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdD,
				},
				F13: &XStructDepth1_XUint16{
					F14: 123,
				},
			},
			F5: XUnionDepth2_AllF0{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth3_XStructDepth2_All{F4: {F1: {1294053095}, F2: {11592, 0}, F5: {B}, F7: {3573352: 1036060279, 3722629252: 784938194}, F8: {F0: []XUnionDepth1_All{{F0: nil}}, F2: true, F3: \"ΠΣΦ王普\", F4: \"cdeΔΘΠΣΦ王\", F5: typeobject([]XEnumAbc), F6: 249, F7: 22, F8: C, F11: {Id: \"eΔΘΠΣΦ王普澤世\", Msg: \"cdeΔΘΠΣ\"}, F12: {Id: \"ΔΘΠΣ\", RetryCode: RetryRefetch, Msg: \"eΔΘΠΣΦ王\"}, F14: 35666, F15: 563876490, F17: 14174387861470587146, F18: 12504010737798879680, F20: -25, F23: -627084270, F24: 303193721, F25: -282593783723688815, F26: -2418158622343372796, F27: -9.18497e+07, F29: -1.2958479806819374e+07, F30: -2.3211872380628633e+09, F31: {}, F32: {Id: \"bcde\", Msg: \"eΔΘΠΣΦ王普\"}}, F10: {F19: 29}, F12: {F9: C}}}",
		Target: XStructDepth3_XStructDepth2_All{
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F1: XArray1_Uint32{
					1294053095,
				},
				F2: []int16{
					11592,
					0,
				},
				F5: XSet_XEnumBcd{
					XEnumBcdB: struct{}{},
				},
				F7: map[uint32]uint32{
					3573352:    1036060279,
					3722629252: 784938194,
				},
				F8: XStructDepth1_All{
					F0: []XUnionDepth1_All{
						XUnionDepth1_AllF0{},
					},
					F2: true,
					F3: "ΠΣΦ王普",
					F4: "cdeΔΘΠΣΦ王",
					F5: __VDLType_list_312,
					F6: 249,
					F7: 22,
					F8: XEnumAbcC,
					F11: XNamedError{
						Id:  "eΔΘΠΣΦ王普澤世",
						Msg: "cdeΔΘΠΣ",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "ΔΘΠΣ",
						RetryCode: vdl.WireRetryCodeRetryRefetch,
						Msg:       "eΔΘΠΣΦ王",
					}),
					F14: 35666,
					F15: 563876490,
					F17: 14174387861470587146,
					F18: 12504010737798879680,
					F20: -25,
					F23: -627084270,
					F24: 303193721,
					F25: -282593783723688815,
					F26: -2418158622343372796,
					F27: -9.18497e+07,
					F29: -1.2958479806819374e+07,
					F30: -2.3211872380628633e+09,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "bcde",
						Msg: "eΔΘΠΣΦ王普",
					},
				},
				F10: XUnionDepth1_AllF19{29},
				F11: XUnionDepth1_Float64F29{},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdC,
				},
			},
		},
		SourceLabel: "XStructDepth3_XStructDepth2_All{F4: {F1: {1294053095}, F2: {11592, 0}, F5: {B}, F7: {3573352: 1036060279, 3722629252: 784938194}, F8: {F0: []XUnionDepth1_All{{F0: nil}}, F2: true, F3: \"ΠΣΦ王普\", F4: \"cdeΔΘΠΣΦ王\", F5: typeobject([]XEnumAbc), F6: 249, F7: 22, F8: C, F11: {Id: \"eΔΘΠΣΦ王普澤世\", Msg: \"cdeΔΘΠΣ\"}, F12: {Id: \"ΔΘΠΣ\", RetryCode: RetryRefetch, Msg: \"eΔΘΠΣΦ王\"}, F14: 35666, F15: 563876490, F17: 14174387861470587146, F18: 12504010737798879680, F20: -25, F23: -627084270, F24: 303193721, F25: -282593783723688815, F26: -2418158622343372796, F27: -9.18497e+07, F29: -1.2958479806819374e+07, F30: -2.3211872380628633e+09, F31: {}, F32: {Id: \"bcde\", Msg: \"eΔΘΠΣΦ王普\"}}, F10: {F19: 29}, F12: {F9: C}}}",
		Source: XStructDepth3_XStructDepth2_All{
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F1: XArray1_Uint32{
					1294053095,
				},
				F2: []int16{
					11592,
					0,
				},
				F5: XSet_XEnumBcd{
					XEnumBcdB: struct{}{},
				},
				F7: map[uint32]uint32{
					3573352:    1036060279,
					3722629252: 784938194,
				},
				F8: XStructDepth1_All{
					F0: []XUnionDepth1_All{
						XUnionDepth1_AllF0{},
					},
					F2: true,
					F3: "ΠΣΦ王普",
					F4: "cdeΔΘΠΣΦ王",
					F5: __VDLType_list_312,
					F6: 249,
					F7: 22,
					F8: XEnumAbcC,
					F11: XNamedError{
						Id:  "eΔΘΠΣΦ王普澤世",
						Msg: "cdeΔΘΠΣ",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "ΔΘΠΣ",
						RetryCode: vdl.WireRetryCodeRetryRefetch,
						Msg:       "eΔΘΠΣΦ王",
					}),
					F14: 35666,
					F15: 563876490,
					F17: 14174387861470587146,
					F18: 12504010737798879680,
					F20: -25,
					F23: -627084270,
					F24: 303193721,
					F25: -282593783723688815,
					F26: -2418158622343372796,
					F27: -9.18497e+07,
					F29: -1.2958479806819374e+07,
					F30: -2.3211872380628633e+09,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "bcde",
						Msg: "eΔΘΠΣΦ王普",
					},
				},
				F10: XUnionDepth1_AllF19{29},
				F11: XUnionDepth1_Float64F29{},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdC,
				},
			},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth3_XStructDepth2_All{F4: {F1: {1294053095}, F2: {11592, 0}, F5: {B}, F7: {3573352: 1036060279, 3722629252: 784938194}, F8: {F0: []XUnionDepth1_All{{F0: nil}}, F2: true, F3: \"ΠΣΦ王普\", F4: \"cdeΔΘΠΣΦ王\", F5: typeobject([]XEnumAbc), F6: 249, F7: 22, F8: C, F11: {Id: \"eΔΘΠΣΦ王普澤世\", Msg: \"cdeΔΘΠΣ\"}, F12: {Id: \"ΔΘΠΣ\", RetryCode: RetryRefetch, Msg: \"eΔΘΠΣΦ王\"}, F14: 35666, F15: 563876490, F17: 14174387861470587146, F18: 12504010737798879680, F20: -25, F23: -627084270, F24: 303193721, F25: -282593783723688815, F26: -2418158622343372796, F27: -9.18497e+07, F29: -1.2958479806819374e+07, F30: -2.3211872380628633e+09, F31: {}, F32: {Id: \"bcde\", Msg: \"eΔΘΠΣΦ王普\"}}, F10: {F19: 29}, F12: {F9: C}}}",
		Target: XStructDepth3_XStructDepth2_All{
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F1: XArray1_Uint32{
					1294053095,
				},
				F2: []int16{
					11592,
					0,
				},
				F5: XSet_XEnumBcd{
					XEnumBcdB: struct{}{},
				},
				F7: map[uint32]uint32{
					3573352:    1036060279,
					3722629252: 784938194,
				},
				F8: XStructDepth1_All{
					F0: []XUnionDepth1_All{
						XUnionDepth1_AllF0{},
					},
					F2: true,
					F3: "ΠΣΦ王普",
					F4: "cdeΔΘΠΣΦ王",
					F5: __VDLType_list_312,
					F6: 249,
					F7: 22,
					F8: XEnumAbcC,
					F11: XNamedError{
						Id:  "eΔΘΠΣΦ王普澤世",
						Msg: "cdeΔΘΠΣ",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "ΔΘΠΣ",
						RetryCode: vdl.WireRetryCodeRetryRefetch,
						Msg:       "eΔΘΠΣΦ王",
					}),
					F14: 35666,
					F15: 563876490,
					F17: 14174387861470587146,
					F18: 12504010737798879680,
					F20: -25,
					F23: -627084270,
					F24: 303193721,
					F25: -282593783723688815,
					F26: -2418158622343372796,
					F27: -9.18497e+07,
					F29: -1.2958479806819374e+07,
					F30: -2.3211872380628633e+09,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "bcde",
						Msg: "eΔΘΠΣΦ王普",
					},
				},
				F10: XUnionDepth1_AllF19{29},
				F11: XUnionDepth1_Float64F29{},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdC,
				},
			},
		},
		SourceLabel: "XStructDepth3_All{F4: {F1: {1294053095}, F2: {11592, 0}, F5: {B}, F7: {3573352: 1036060279, 3722629252: 784938194}, F8: {F0: []XUnionDepth1_All{{F0: nil}}, F2: true, F3: \"ΠΣΦ王普\", F4: \"cdeΔΘΠΣΦ王\", F5: typeobject([]XEnumAbc), F6: 249, F7: 22, F8: C, F11: {Id: \"eΔΘΠΣΦ王普澤世\", Msg: \"cdeΔΘΠΣ\"}, F12: {Id: \"ΔΘΠΣ\", RetryCode: RetryRefetch, Msg: \"eΔΘΠΣΦ王\"}, F14: 35666, F15: 563876490, F17: 14174387861470587146, F18: 12504010737798879680, F20: -25, F23: -627084270, F24: 303193721, F25: -282593783723688815, F26: -2418158622343372796, F27: -9.18497e+07, F29: -1.2958479806819374e+07, F30: -2.3211872380628633e+09, F31: {}, F32: {Id: \"bcde\", Msg: \"eΔΘΠΣΦ王普\"}}, F10: {F19: 29}, F12: {F9: C}}}",
		Source: XStructDepth3_All{
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F1: XArray1_Uint32{
					1294053095,
				},
				F2: []int16{
					11592,
					0,
				},
				F5: XSet_XEnumBcd{
					XEnumBcdB: struct{}{},
				},
				F7: map[uint32]uint32{
					3573352:    1036060279,
					3722629252: 784938194,
				},
				F8: XStructDepth1_All{
					F0: []XUnionDepth1_All{
						XUnionDepth1_AllF0{},
					},
					F2: true,
					F3: "ΠΣΦ王普",
					F4: "cdeΔΘΠΣΦ王",
					F5: __VDLType_list_312,
					F6: 249,
					F7: 22,
					F8: XEnumAbcC,
					F11: XNamedError{
						Id:  "eΔΘΠΣΦ王普澤世",
						Msg: "cdeΔΘΠΣ",
					},
					F12: verror.FromWire(&vdl.WireError{
						Id:        "ΔΘΠΣ",
						RetryCode: vdl.WireRetryCodeRetryRefetch,
						Msg:       "eΔΘΠΣΦ王",
					}),
					F14: 35666,
					F15: 563876490,
					F17: 14174387861470587146,
					F18: 12504010737798879680,
					F20: -25,
					F23: -627084270,
					F24: 303193721,
					F25: -282593783723688815,
					F26: -2418158622343372796,
					F27: -9.18497e+07,
					F29: -1.2958479806819374e+07,
					F30: -2.3211872380628633e+09,
					F31: &XStructEmpty{},
					F32: &XNamedError{
						Id:  "bcde",
						Msg: "eΔΘΠΣΦ王普",
					},
				},
				F10: XUnionDepth1_AllF19{29},
				F11: XUnionDepth1_Float64F29{},
				F12: &XStructDepth1_XEnumBcd{
					F9: XEnumBcdC,
				},
			},
			F5: XUnionDepth2_AllF0{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth3_XUnionDepth2_All{}",
		Target: XStructDepth3_XUnionDepth2_All{
			F5: XUnionDepth2_AllF0{},
		},
		SourceLabel: "XStructDepth3_XUnionDepth2_All{}",
		Source: XStructDepth3_XUnionDepth2_All{
			F5: XUnionDepth2_AllF0{},
		},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth3_XUnionDepth2_All{}",
		Target: XStructDepth3_XUnionDepth2_All{
			F5: XUnionDepth2_AllF0{},
		},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth3_XUnionDepth2_All{}",
		Target: XStructDepth3_XUnionDepth2_All{
			F5: XUnionDepth2_AllF0{},
		},
		SourceLabel: "XStructDepth3_All{}",
		Source: XStructDepth3_All{
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
			F5: XUnionDepth2_AllF0{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth3_XUnionDepth2_All{F5: {F13: {F28: 1.5}}}",
		Target: XStructDepth3_XUnionDepth2_All{
			F5: XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
				F28: 1.5,
			}},
		},
		SourceLabel: "XStructDepth3_XUnionDepth2_All{F5: {F13: {F28: 1.5}}}",
		Source: XStructDepth3_XUnionDepth2_All{
			F5: XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
				F28: 1.5,
			}},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth3_XUnionDepth2_All{F5: {F13: {F28: 1.5}}}",
		Target: XStructDepth3_XUnionDepth2_All{
			F5: XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
				F28: 1.5,
			}},
		},
		SourceLabel: "XStructDepth3_All{F5: {F13: {F28: 1.5}}}",
		Source: XStructDepth3_All{
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
			F5: XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
				F28: 1.5,
			}},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth3_XUnionDepth2_All{F5: {F4: {false}}}",
		Target: XStructDepth3_XUnionDepth2_All{
			F5: XUnionDepth2_AllF4{XSet_XBool{
				false: struct{}{},
			}},
		},
		SourceLabel: "XStructDepth3_XUnionDepth2_All{F5: {F4: {false}}}",
		Source: XStructDepth3_XUnionDepth2_All{
			F5: XUnionDepth2_AllF4{XSet_XBool{
				false: struct{}{},
			}},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth3_XUnionDepth2_All{F5: {F4: {false}}}",
		Target: XStructDepth3_XUnionDepth2_All{
			F5: XUnionDepth2_AllF4{XSet_XBool{
				false: struct{}{},
			}},
		},
		SourceLabel: "XStructDepth3_All{F5: {F4: {false}}}",
		Source: XStructDepth3_All{
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
			F5: XUnionDepth2_AllF4{XSet_XBool{
				false: struct{}{},
			}},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XStructDepth3_OptXStructDepth2_Set_Float64{}",
		Target:      XStructDepth3_OptXStructDepth2_Set_Float64{},
		SourceLabel: "XStructDepth3_OptXStructDepth2_Set_Float64{}",
		Source:      XStructDepth3_OptXStructDepth2_Set_Float64{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth3_OptXStructDepth2_Set_Float64{}",
		Target:      XStructDepth3_OptXStructDepth2_Set_Float64{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XStructDepth3_OptXStructDepth2_Set_Float64{}",
		Target:      XStructDepth3_OptXStructDepth2_Set_Float64{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XStructDepth3_OptXStructDepth2_Set_Float64{F6: {F4: {1.5}}}",
		Target: XStructDepth3_OptXStructDepth2_Set_Float64{
			F6: &XStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
		SourceLabel: "XStructDepth3_OptXStructDepth2_Set_Float64{F6: {F4: {1.5}}}",
		Source: XStructDepth3_OptXStructDepth2_Set_Float64{
			F6: &XStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "XStructDepth3_OptXStructDepth2_Set_Float64{F6: {F4: {1.5}}}",
		Target: XStructDepth3_OptXStructDepth2_Set_Float64{
			F6: &XStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
		SourceLabel: "XStructDepth3_All{F6: {F4: {1.5}}}",
		Source: XStructDepth3_All{
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
			F5: XUnionDepth2_AllF0{},
			F6: &XStructDepth2_Set_Float64{
				F4: map[float64]struct{}{
					1.5: struct{}{},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XStructDepth3_OptXStructDepth2_Set_Float64{F6: {}}",
		Target: XStructDepth3_OptXStructDepth2_Set_Float64{
			F6: &XStructDepth2_Set_Float64{},
		},
		SourceLabel: "XStructDepth3_OptXStructDepth2_Set_Float64{F6: {}}",
		Source: XStructDepth3_OptXStructDepth2_Set_Float64{
			F6: &XStructDepth2_Set_Float64{},
		},
	},
	{
		Label:       "Random0",
		TargetLabel: "XStructDepth3_OptXStructDepth2_Set_Float64{F6: {}}",
		Target: XStructDepth3_OptXStructDepth2_Set_Float64{
			F6: &XStructDepth2_Set_Float64{},
		},
		SourceLabel: "XStructDepth3_All{F6: {}}",
		Source: XStructDepth3_All{
			F4: XStructDepth2_All{
				F0: XArray2_TypeObject{
					vdl.AnyType,
					vdl.AnyType,
				},
				F8: XStructDepth1_All{
					F5: vdl.AnyType,
				},
				F10: XUnionDepth1_AllF0{},
				F11: XUnionDepth1_Float64F29{},
			},
			F5: XUnionDepth2_AllF0{},
			F6: &XStructDepth2_Set_Float64{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth3_All{F0: {}}",
		Target:      XUnionDepth3_All(XUnionDepth3_AllF0{}),
		SourceLabel: "XUnionDepth3_All{F0: {}}",
		Source:      XUnionDepth3_All(XUnionDepth3_AllF0{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth3_All{F0: {}}",
		Target:      XUnionDepth3_All(XUnionDepth3_AllF0{}),
		SourceLabel: "XUnionDepth1_Any{F0: XArray3_OptXStructDepth1_XFloat32{}}",
		Source:      XUnionDepth1_Any(XUnionDepth1_AnyF0{XArray3_OptXStructDepth1_XFloat32{}}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth3_All{F0: {}}",
		Target:      XUnionDepth3_All(XUnionDepth3_AllF0{}),
		SourceLabel: "XUnionDepth3_XArray3_OptXStructDepth1_XFloat32{F0: {}}",
		Source:      XUnionDepth3_XArray3_OptXStructDepth1_XFloat32(XUnionDepth3_XArray3_OptXStructDepth1_XFloat32F0{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth3_All{F6: {F4: {1.5}}}",
		Target: XUnionDepth3_All(XUnionDepth3_AllF6{&XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		}}),
		SourceLabel: "XUnionDepth3_All{F6: {F4: {1.5}}}",
		Source: XUnionDepth3_All(XUnionDepth3_AllF6{&XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth3_All{F6: {F4: {1.5}}}",
		Target: XUnionDepth3_All(XUnionDepth3_AllF6{&XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		}}),
		SourceLabel: "XUnionDepth3_OptXStructDepth2_Set_Float64{F6: {F4: {1.5}}}",
		Source: XUnionDepth3_OptXStructDepth2_Set_Float64(XUnionDepth3_OptXStructDepth2_Set_Float64F6{&XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth3_All{F2: {}}",
		Target:      XUnionDepth3_All(XUnionDepth3_AllF2{}),
		SourceLabel: "XUnionDepth3_All{F2: {}}",
		Source:      XUnionDepth3_All(XUnionDepth3_AllF2{}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth3_All{F2: {}}",
		Target:      XUnionDepth3_All(XUnionDepth3_AllF2{}),
		SourceLabel: "XUnionDepth3_Set_XStructDepth1_String{F2: {}}",
		Source:      XUnionDepth3_Set_XStructDepth1_String(XUnionDepth3_Set_XStructDepth1_StringF2{}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth3_XArray3_OptXStructDepth1_XFloat32{F0: {}}",
		Target:      XUnionDepth3_XArray3_OptXStructDepth1_XFloat32(XUnionDepth3_XArray3_OptXStructDepth1_XFloat32F0{}),
		SourceLabel: "XUnionDepth3_XArray3_OptXStructDepth1_XFloat32{F0: {}}",
		Source:      XUnionDepth3_XArray3_OptXStructDepth1_XFloat32(XUnionDepth3_XArray3_OptXStructDepth1_XFloat32F0{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth3_XArray3_OptXStructDepth1_XFloat32{F0: {}}",
		Target:      XUnionDepth3_XArray3_OptXStructDepth1_XFloat32(XUnionDepth3_XArray3_OptXStructDepth1_XFloat32F0{}),
		SourceLabel: "XUnionDepth1_Any{F0: XArray3_OptXStructDepth1_XFloat32{}}",
		Source:      XUnionDepth1_Any(XUnionDepth1_AnyF0{XArray3_OptXStructDepth1_XFloat32{}}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth3_XArray3_OptXStructDepth1_XFloat32{F0: {}}",
		Target:      XUnionDepth3_XArray3_OptXStructDepth1_XFloat32(XUnionDepth3_XArray3_OptXStructDepth1_XFloat32F0{}),
		SourceLabel: "XUnionDepth3_All{F0: {}}",
		Source:      XUnionDepth3_All(XUnionDepth3_AllF0{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth3_XArray3_OptXStructDepth1_XFloat32{F0: {{F28: 1.5}, {F28: 1.5}, {F28: 1.5}}}",
		Target: XUnionDepth3_XArray3_OptXStructDepth1_XFloat32(XUnionDepth3_XArray3_OptXStructDepth1_XFloat32F0{XArray3_OptXStructDepth1_XFloat32{
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
		}}),
		SourceLabel: "XUnionDepth3_XArray3_OptXStructDepth1_XFloat32{F0: {{F28: 1.5}, {F28: 1.5}, {F28: 1.5}}}",
		Source: XUnionDepth3_XArray3_OptXStructDepth1_XFloat32(XUnionDepth3_XArray3_OptXStructDepth1_XFloat32F0{XArray3_OptXStructDepth1_XFloat32{
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth3_XArray3_OptXStructDepth1_XFloat32{F0: {{F28: 1.5}, {F28: 1.5}, {F28: 1.5}}}",
		Target: XUnionDepth3_XArray3_OptXStructDepth1_XFloat32(XUnionDepth3_XArray3_OptXStructDepth1_XFloat32F0{XArray3_OptXStructDepth1_XFloat32{
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
		}}),
		SourceLabel: "XUnionDepth3_All{F0: {{F28: 1.5}, {F28: 1.5}, {F28: 1.5}}}",
		Source: XUnionDepth3_All(XUnionDepth3_AllF0{XArray3_OptXStructDepth1_XFloat32{
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
			{
				F28: 1.5,
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth3_XArray3_OptXStructDepth1_XFloat32{F0: {{}, {F28: -9.264463e+08}, {F28: -1.1404818e+08}}}",
		Target: XUnionDepth3_XArray3_OptXStructDepth1_XFloat32(XUnionDepth3_XArray3_OptXStructDepth1_XFloat32F0{XArray3_OptXStructDepth1_XFloat32{
			{},
			{
				F28: -9.264463e+08,
			},
			{
				F28: -1.1404818e+08,
			},
		}}),
		SourceLabel: "XUnionDepth3_XArray3_OptXStructDepth1_XFloat32{F0: {{}, {F28: -9.264463e+08}, {F28: -1.1404818e+08}}}",
		Source: XUnionDepth3_XArray3_OptXStructDepth1_XFloat32(XUnionDepth3_XArray3_OptXStructDepth1_XFloat32F0{XArray3_OptXStructDepth1_XFloat32{
			{},
			{
				F28: -9.264463e+08,
			},
			{
				F28: -1.1404818e+08,
			},
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth3_XArray3_OptXStructDepth1_XFloat32{F0: {{}, {F28: -9.264463e+08}, {F28: -1.1404818e+08}}}",
		Target: XUnionDepth3_XArray3_OptXStructDepth1_XFloat32(XUnionDepth3_XArray3_OptXStructDepth1_XFloat32F0{XArray3_OptXStructDepth1_XFloat32{
			{},
			{
				F28: -9.264463e+08,
			},
			{
				F28: -1.1404818e+08,
			},
		}}),
		SourceLabel: "XUnionDepth3_All{F0: {{}, {F28: -9.264463e+08}, {F28: -1.1404818e+08}}}",
		Source: XUnionDepth3_All(XUnionDepth3_AllF0{XArray3_OptXStructDepth1_XFloat32{
			{},
			{
				F28: -9.264463e+08,
			},
			{
				F28: -1.1404818e+08,
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth3_List_XList_Error{F1: {}}",
		Target:      XUnionDepth3_List_XList_Error(XUnionDepth3_List_XList_ErrorF1{}),
		SourceLabel: "XUnionDepth3_List_XList_Error{F1: {}}",
		Source:      XUnionDepth3_List_XList_Error(XUnionDepth3_List_XList_ErrorF1{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth3_List_XList_Error{F1: {}}",
		Target:      XUnionDepth3_List_XList_Error(XUnionDepth3_List_XList_ErrorF1{}),
		SourceLabel: "XUnionDepth3_All{F1: {}}",
		Source:      XUnionDepth3_All(XUnionDepth3_AllF1{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth3_List_XList_Error{F1: {{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Target: XUnionDepth3_List_XList_Error(XUnionDepth3_List_XList_ErrorF1{[]XList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
			},
		}}),
		SourceLabel: "XUnionDepth3_List_XList_Error{F1: {{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Source: XUnionDepth3_List_XList_Error(XUnionDepth3_List_XList_ErrorF1{[]XList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
			},
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth3_List_XList_Error{F1: {{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Target: XUnionDepth3_List_XList_Error(XUnionDepth3_List_XList_ErrorF1{[]XList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
			},
		}}),
		SourceLabel: "XUnionDepth3_All{F1: {{{Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}}}",
		Source: XUnionDepth3_All(XUnionDepth3_AllF1{[]XList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth3_List_XList_Error{F1: {{{Msg: \"Φ\"}}}}",
		Target: XUnionDepth3_List_XList_Error(XUnionDepth3_List_XList_ErrorF1{[]XList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Msg: "Φ",
				}),
			},
		}}),
		SourceLabel: "XUnionDepth3_List_XList_Error{F1: {{{Msg: \"Φ\"}}}}",
		Source: XUnionDepth3_List_XList_Error(XUnionDepth3_List_XList_ErrorF1{[]XList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Msg: "Φ",
				}),
			},
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth3_List_XList_Error{F1: {{{Msg: \"Φ\"}}}}",
		Target: XUnionDepth3_List_XList_Error(XUnionDepth3_List_XList_ErrorF1{[]XList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Msg: "Φ",
				}),
			},
		}}),
		SourceLabel: "XUnionDepth3_All{F1: {{{Msg: \"Φ\"}}}}",
		Source: XUnionDepth3_All(XUnionDepth3_AllF1{[]XList_Error{
			{
				verror.FromWire(&vdl.WireError{
					Msg: "Φ",
				}),
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth3_Set_XStructDepth1_String{F2: {}}",
		Target:      XUnionDepth3_Set_XStructDepth1_String(XUnionDepth3_Set_XStructDepth1_StringF2{}),
		SourceLabel: "XUnionDepth3_Set_XStructDepth1_String{F2: {}}",
		Source:      XUnionDepth3_Set_XStructDepth1_String(XUnionDepth3_Set_XStructDepth1_StringF2{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth3_Set_XStructDepth1_String{F2: {}}",
		Target:      XUnionDepth3_Set_XStructDepth1_String(XUnionDepth3_Set_XStructDepth1_StringF2{}),
		SourceLabel: "XUnionDepth3_All{F2: {}}",
		Source:      XUnionDepth3_All(XUnionDepth3_AllF2{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth3_Set_XStructDepth1_String{F2: {{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XUnionDepth3_Set_XStructDepth1_String(XUnionDepth3_Set_XStructDepth1_StringF2{map[XStructDepth1_String]struct{}{
			{
				F3: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		}}),
		SourceLabel: "XUnionDepth3_Set_XStructDepth1_String{F2: {{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XUnionDepth3_Set_XStructDepth1_String(XUnionDepth3_Set_XStructDepth1_StringF2{map[XStructDepth1_String]struct{}{
			{
				F3: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth3_Set_XStructDepth1_String{F2: {{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Target: XUnionDepth3_Set_XStructDepth1_String(XUnionDepth3_Set_XStructDepth1_StringF2{map[XStructDepth1_String]struct{}{
			{
				F3: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		}}),
		SourceLabel: "XUnionDepth3_All{F2: {{F3: \"abcdeΔΘΠΣΦ王普澤世界\"}}}",
		Source: XUnionDepth3_All(XUnionDepth3_AllF2{map[XStructDepth1_String]struct{}{
			{
				F3: "abcdeΔΘΠΣΦ王普澤世界",
			}: struct{}{},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth3_Set_XStructDepth1_String{F2: {{}, {F3: \"ΘΠΣΦ\"}}}",
		Target: XUnionDepth3_Set_XStructDepth1_String(XUnionDepth3_Set_XStructDepth1_StringF2{map[XStructDepth1_String]struct{}{
			{}: struct{}{},
			{
				F3: "ΘΠΣΦ",
			}: struct{}{},
		}}),
		SourceLabel: "XUnionDepth3_Set_XStructDepth1_String{F2: {{}, {F3: \"ΘΠΣΦ\"}}}",
		Source: XUnionDepth3_Set_XStructDepth1_String(XUnionDepth3_Set_XStructDepth1_StringF2{map[XStructDepth1_String]struct{}{
			{}: struct{}{},
			{
				F3: "ΘΠΣΦ",
			}: struct{}{},
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth3_Set_XStructDepth1_String{F2: {{}, {F3: \"ΘΠΣΦ\"}}}",
		Target: XUnionDepth3_Set_XStructDepth1_String(XUnionDepth3_Set_XStructDepth1_StringF2{map[XStructDepth1_String]struct{}{
			{}: struct{}{},
			{
				F3: "ΘΠΣΦ",
			}: struct{}{},
		}}),
		SourceLabel: "XUnionDepth3_All{F2: {{}, {F3: \"ΘΠΣΦ\"}}}",
		Source: XUnionDepth3_All(XUnionDepth3_AllF2{map[XStructDepth1_String]struct{}{
			{}: struct{}{},
			{
				F3: "ΘΠΣΦ",
			}: struct{}{},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBool{F3: {}}",
		Target:      XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBool(XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBoolF3{}),
		SourceLabel: "XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBool{F3: {}}",
		Source:      XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBool(XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBoolF3{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBool{F3: {}}",
		Target:      XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBool(XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBoolF3{}),
		SourceLabel: "XUnionDepth3_All{F3: {}}",
		Source:      XUnionDepth3_All(XUnionDepth3_AllF3{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBool{F3: {{F2: true}: {F2: true}}}",
		Target: XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBool(XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBoolF3{XMap_XStructDepth1_XBool_XStructDepth1_XBool{
			{
				F2: true,
			}: {
				F2: true,
			},
		}}),
		SourceLabel: "XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBool{F3: {{F2: true}: {F2: true}}}",
		Source: XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBool(XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBoolF3{XMap_XStructDepth1_XBool_XStructDepth1_XBool{
			{
				F2: true,
			}: {
				F2: true,
			},
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBool{F3: {{F2: true}: {F2: true}}}",
		Target: XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBool(XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBoolF3{XMap_XStructDepth1_XBool_XStructDepth1_XBool{
			{
				F2: true,
			}: {
				F2: true,
			},
		}}),
		SourceLabel: "XUnionDepth3_All{F3: {{F2: true}: {F2: true}}}",
		Source: XUnionDepth3_All(XUnionDepth3_AllF3{XMap_XStructDepth1_XBool_XStructDepth1_XBool{
			{
				F2: true,
			}: {
				F2: true,
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth3_XStructDepth2_All{F4: {}}",
		Target: XUnionDepth3_XStructDepth2_All(XUnionDepth3_XStructDepth2_AllF4{XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		}}),
		SourceLabel: "XUnionDepth3_XStructDepth2_All{F4: {}}",
		Source: XUnionDepth3_XStructDepth2_All(XUnionDepth3_XStructDepth2_AllF4{XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		}}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth3_XStructDepth2_All{F4: {}}",
		Target: XUnionDepth3_XStructDepth2_All(XUnionDepth3_XStructDepth2_AllF4{XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		}}),
		SourceLabel: "XUnionDepth3_All{F4: {}}",
		Source: XUnionDepth3_All(XUnionDepth3_AllF4{XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				vdl.AnyType,
			},
			F8: XStructDepth1_All{
				F5: vdl.AnyType,
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth3_XStructDepth2_All{F4: {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Target: XUnionDepth3_XStructDepth2_All(XUnionDepth3_XStructDepth2_AllF4{XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.Int64Type,
				vdl.Int64Type,
			},
			F1: XArray1_Uint32{
				123,
			},
			F2: []int16{
				-123,
			},
			F3: XList_Any{
				int64(-123),
			},
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
			F5: XSet_XEnumBcd{
				XEnumBcdD: struct{}{},
			},
			F6: map[byte]byte{
				123: 123,
			},
			F7: map[uint32]uint32{
				123: 123,
			},
			F8: XStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
			F9: XStructDepth1_Bool{
				F1: true,
			},
			F10: XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			F11: XUnionDepth1_Float64F29{1.5},
			F12: &XStructDepth1_XEnumBcd{
				F9: XEnumBcdD,
			},
			F13: &XStructDepth1_XUint16{
				F14: 123,
			},
		}}),
		SourceLabel: "XUnionDepth3_XStructDepth2_All{F4: {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Source: XUnionDepth3_XStructDepth2_All(XUnionDepth3_XStructDepth2_AllF4{XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.Int64Type,
				vdl.Int64Type,
			},
			F1: XArray1_Uint32{
				123,
			},
			F2: []int16{
				-123,
			},
			F3: XList_Any{
				int64(-123),
			},
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
			F5: XSet_XEnumBcd{
				XEnumBcdD: struct{}{},
			},
			F6: map[byte]byte{
				123: 123,
			},
			F7: map[uint32]uint32{
				123: 123,
			},
			F8: XStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
			F9: XStructDepth1_Bool{
				F1: true,
			},
			F10: XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			F11: XUnionDepth1_Float64F29{1.5},
			F12: &XStructDepth1_XEnumBcd{
				F9: XEnumBcdD,
			},
			F13: &XStructDepth1_XUint16{
				F14: 123,
			},
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth3_XStructDepth2_All{F4: {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Target: XUnionDepth3_XStructDepth2_All(XUnionDepth3_XStructDepth2_AllF4{XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.Int64Type,
				vdl.Int64Type,
			},
			F1: XArray1_Uint32{
				123,
			},
			F2: []int16{
				-123,
			},
			F3: XList_Any{
				int64(-123),
			},
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
			F5: XSet_XEnumBcd{
				XEnumBcdD: struct{}{},
			},
			F6: map[byte]byte{
				123: 123,
			},
			F7: map[uint32]uint32{
				123: 123,
			},
			F8: XStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
			F9: XStructDepth1_Bool{
				F1: true,
			},
			F10: XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			F11: XUnionDepth1_Float64F29{1.5},
			F12: &XStructDepth1_XEnumBcd{
				F9: XEnumBcdD,
			},
			F13: &XStructDepth1_XUint16{
				F14: 123,
			},
		}}),
		SourceLabel: "XUnionDepth3_All{F4: {F0: {typeobject(int64), typeobject(int64)}, F1: {123}, F2: {-123}, F3: {int64(-123)}, F4: {1.5}, F5: {D}, F6: {123: 123}, F7: {123: 123}, F8: {F0: int64(-123), F1: true, F2: true, F3: \"abcdeΔΘΠΣΦ王普澤世界\", F4: \"abcdeΔΘΠΣΦ王普澤世界\", F5: typeobject(int64), F6: 123, F7: 123, F8: C, F9: D, F11: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F12: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", RetryCode: RetryBackoff, Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}, F13: 123, F14: 123, F15: 123, F16: 123, F17: 123, F18: 123, F19: -123, F20: -123, F21: -123, F22: -123, F23: -123, F24: -123, F25: -123, F26: -123, F27: 1.5, F28: 1.5, F29: 1.5, F30: 1.5, F31: {}, F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F9: {F1: true}, F10: {F32: {Id: \"abcdeΔΘΠΣΦ王普澤世界\", Msg: \"abcdeΔΘΠΣΦ王普澤世界\"}}, F11: {F29: 1.5}, F12: {F9: D}, F13: {F14: 123}}}",
		Source: XUnionDepth3_All(XUnionDepth3_AllF4{XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.Int64Type,
				vdl.Int64Type,
			},
			F1: XArray1_Uint32{
				123,
			},
			F2: []int16{
				-123,
			},
			F3: XList_Any{
				int64(-123),
			},
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
			F5: XSet_XEnumBcd{
				XEnumBcdD: struct{}{},
			},
			F6: map[byte]byte{
				123: 123,
			},
			F7: map[uint32]uint32{
				123: 123,
			},
			F8: XStructDepth1_All{
				F0: int64(-123),
				F1: true,
				F2: true,
				F3: "abcdeΔΘΠΣΦ王普澤世界",
				F4: "abcdeΔΘΠΣΦ王普澤世界",
				F5: vdl.Int64Type,
				F6: 123,
				F7: 123,
				F8: XEnumAbcC,
				F9: XEnumBcdD,
				F11: XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
				F12: verror.FromWire(&vdl.WireError{
					Id:        "abcdeΔΘΠΣΦ王普澤世界",
					RetryCode: vdl.WireRetryCodeRetryBackoff,
					Msg:       "abcdeΔΘΠΣΦ王普澤世界",
				}),
				F13: 123,
				F14: 123,
				F15: 123,
				F16: 123,
				F17: 123,
				F18: 123,
				F19: -123,
				F20: -123,
				F21: -123,
				F22: -123,
				F23: -123,
				F24: -123,
				F25: -123,
				F26: -123,
				F27: 1.5,
				F28: 1.5,
				F29: 1.5,
				F30: 1.5,
				F31: &XStructEmpty{},
				F32: &XNamedError{
					Id:  "abcdeΔΘΠΣΦ王普澤世界",
					Msg: "abcdeΔΘΠΣΦ王普澤世界",
				},
			},
			F9: XStructDepth1_Bool{
				F1: true,
			},
			F10: XUnionDepth1_AllF32{&XNamedError{
				Id:  "abcdeΔΘΠΣΦ王普澤世界",
				Msg: "abcdeΔΘΠΣΦ王普澤世界",
			}},
			F11: XUnionDepth1_Float64F29{1.5},
			F12: &XStructDepth1_XEnumBcd{
				F9: XEnumBcdD,
			},
			F13: &XStructDepth1_XUint16{
				F14: 123,
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth3_XStructDepth2_All{F4: {F0: {typeobject(any), typeobject(XArray1_XStructEmpty)}, F1: {650662747}, F4: {-1.2857409473689704e+08, 1.157960391740711e+09, 1.873471483852068e+09}, F5: {D}, F6: {0: 48, 153: 133}, F7: {2044137986: 1905558326, 2062773644: 1066427096, 95064470: 3719709054}, F8: {F0: set[XByte]{135, 173, 243}, F3: \"bcdeΔΘΠΣΦ\", F5: typeobject(XUnionDepth2_OptXStructDepth1_XFloat32), F13: 31207, F14: 59370, F16: 303297294, F17: 15467091921360512822, F18: 11034741233086879389, F19: -55, F20: 54, F22: 10155, F23: 723419856, F24: -176626036, F25: 1780085702466453043, F27: 7.382859e+08, F28: -1.5114458e+08, F29: -1.3737398805084093e+09, F31: {}}, F11: {F29: -4.287222510229483e+08}, F12: {}, F13: {F14: 37166}}}",
		Target: XUnionDepth3_XStructDepth2_All(XUnionDepth3_XStructDepth2_AllF4{XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				__VDLType_array_313,
			},
			F1: XArray1_Uint32{
				650662747,
			},
			F4: map[float64]struct{}{
				-1.2857409473689704e+08: struct{}{},
				1.157960391740711e+09:   struct{}{},
				1.873471483852068e+09:   struct{}{},
			},
			F5: XSet_XEnumBcd{
				XEnumBcdD: struct{}{},
			},
			F6: map[byte]byte{
				0:   48,
				153: 133,
			},
			F7: map[uint32]uint32{
				2044137986: 1905558326,
				2062773644: 1066427096,
				95064470:   3719709054,
			},
			F8: XStructDepth1_All{
				F0: map[XByte]struct{}{
					135: struct{}{},
					173: struct{}{},
					243: struct{}{},
				},
				F3:  "bcdeΔΘΠΣΦ",
				F5:  __VDLType_union_314,
				F13: 31207,
				F14: 59370,
				F16: 303297294,
				F17: 15467091921360512822,
				F18: 11034741233086879389,
				F19: -55,
				F20: 54,
				F22: 10155,
				F23: 723419856,
				F24: -176626036,
				F25: 1780085702466453043,
				F27: 7.382859e+08,
				F28: -1.5114458e+08,
				F29: -1.3737398805084093e+09,
				F31: &XStructEmpty{},
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{-4.287222510229483e+08},
			F12: &XStructDepth1_XEnumBcd{},
			F13: &XStructDepth1_XUint16{
				F14: 37166,
			},
		}}),
		SourceLabel: "XUnionDepth3_XStructDepth2_All{F4: {F0: {typeobject(any), typeobject(XArray1_XStructEmpty)}, F1: {650662747}, F4: {-1.2857409473689704e+08, 1.157960391740711e+09, 1.873471483852068e+09}, F5: {D}, F6: {0: 48, 153: 133}, F7: {2044137986: 1905558326, 2062773644: 1066427096, 95064470: 3719709054}, F8: {F0: set[XByte]{135, 173, 243}, F3: \"bcdeΔΘΠΣΦ\", F5: typeobject(XUnionDepth2_OptXStructDepth1_XFloat32), F13: 31207, F14: 59370, F16: 303297294, F17: 15467091921360512822, F18: 11034741233086879389, F19: -55, F20: 54, F22: 10155, F23: 723419856, F24: -176626036, F25: 1780085702466453043, F27: 7.382859e+08, F28: -1.5114458e+08, F29: -1.3737398805084093e+09, F31: {}}, F11: {F29: -4.287222510229483e+08}, F12: {}, F13: {F14: 37166}}}",
		Source: XUnionDepth3_XStructDepth2_All(XUnionDepth3_XStructDepth2_AllF4{XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				__VDLType_array_313,
			},
			F1: XArray1_Uint32{
				650662747,
			},
			F4: map[float64]struct{}{
				-1.2857409473689704e+08: struct{}{},
				1.157960391740711e+09:   struct{}{},
				1.873471483852068e+09:   struct{}{},
			},
			F5: XSet_XEnumBcd{
				XEnumBcdD: struct{}{},
			},
			F6: map[byte]byte{
				0:   48,
				153: 133,
			},
			F7: map[uint32]uint32{
				2044137986: 1905558326,
				2062773644: 1066427096,
				95064470:   3719709054,
			},
			F8: XStructDepth1_All{
				F0: map[XByte]struct{}{
					135: struct{}{},
					173: struct{}{},
					243: struct{}{},
				},
				F3:  "bcdeΔΘΠΣΦ",
				F5:  __VDLType_union_314,
				F13: 31207,
				F14: 59370,
				F16: 303297294,
				F17: 15467091921360512822,
				F18: 11034741233086879389,
				F19: -55,
				F20: 54,
				F22: 10155,
				F23: 723419856,
				F24: -176626036,
				F25: 1780085702466453043,
				F27: 7.382859e+08,
				F28: -1.5114458e+08,
				F29: -1.3737398805084093e+09,
				F31: &XStructEmpty{},
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{-4.287222510229483e+08},
			F12: &XStructDepth1_XEnumBcd{},
			F13: &XStructDepth1_XUint16{
				F14: 37166,
			},
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth3_XStructDepth2_All{F4: {F0: {typeobject(any), typeobject(XArray1_XStructEmpty)}, F1: {650662747}, F4: {-1.2857409473689704e+08, 1.157960391740711e+09, 1.873471483852068e+09}, F5: {D}, F6: {0: 48, 153: 133}, F7: {2044137986: 1905558326, 2062773644: 1066427096, 95064470: 3719709054}, F8: {F0: set[XByte]{135, 173, 243}, F3: \"bcdeΔΘΠΣΦ\", F5: typeobject(XUnionDepth2_OptXStructDepth1_XFloat32), F13: 31207, F14: 59370, F16: 303297294, F17: 15467091921360512822, F18: 11034741233086879389, F19: -55, F20: 54, F22: 10155, F23: 723419856, F24: -176626036, F25: 1780085702466453043, F27: 7.382859e+08, F28: -1.5114458e+08, F29: -1.3737398805084093e+09, F31: {}}, F11: {F29: -4.287222510229483e+08}, F12: {}, F13: {F14: 37166}}}",
		Target: XUnionDepth3_XStructDepth2_All(XUnionDepth3_XStructDepth2_AllF4{XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				__VDLType_array_313,
			},
			F1: XArray1_Uint32{
				650662747,
			},
			F4: map[float64]struct{}{
				-1.2857409473689704e+08: struct{}{},
				1.157960391740711e+09:   struct{}{},
				1.873471483852068e+09:   struct{}{},
			},
			F5: XSet_XEnumBcd{
				XEnumBcdD: struct{}{},
			},
			F6: map[byte]byte{
				0:   48,
				153: 133,
			},
			F7: map[uint32]uint32{
				2044137986: 1905558326,
				2062773644: 1066427096,
				95064470:   3719709054,
			},
			F8: XStructDepth1_All{
				F0: map[XByte]struct{}{
					135: struct{}{},
					173: struct{}{},
					243: struct{}{},
				},
				F3:  "bcdeΔΘΠΣΦ",
				F5:  __VDLType_union_314,
				F13: 31207,
				F14: 59370,
				F16: 303297294,
				F17: 15467091921360512822,
				F18: 11034741233086879389,
				F19: -55,
				F20: 54,
				F22: 10155,
				F23: 723419856,
				F24: -176626036,
				F25: 1780085702466453043,
				F27: 7.382859e+08,
				F28: -1.5114458e+08,
				F29: -1.3737398805084093e+09,
				F31: &XStructEmpty{},
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{-4.287222510229483e+08},
			F12: &XStructDepth1_XEnumBcd{},
			F13: &XStructDepth1_XUint16{
				F14: 37166,
			},
		}}),
		SourceLabel: "XUnionDepth3_All{F4: {F0: {typeobject(any), typeobject(XArray1_XStructEmpty)}, F1: {650662747}, F4: {-1.2857409473689704e+08, 1.157960391740711e+09, 1.873471483852068e+09}, F5: {D}, F6: {0: 48, 153: 133}, F7: {2044137986: 1905558326, 2062773644: 1066427096, 95064470: 3719709054}, F8: {F0: set[XByte]{135, 173, 243}, F3: \"bcdeΔΘΠΣΦ\", F5: typeobject(XUnionDepth2_OptXStructDepth1_XFloat32), F13: 31207, F14: 59370, F16: 303297294, F17: 15467091921360512822, F18: 11034741233086879389, F19: -55, F20: 54, F22: 10155, F23: 723419856, F24: -176626036, F25: 1780085702466453043, F27: 7.382859e+08, F28: -1.5114458e+08, F29: -1.3737398805084093e+09, F31: {}}, F11: {F29: -4.287222510229483e+08}, F12: {}, F13: {F14: 37166}}}",
		Source: XUnionDepth3_All(XUnionDepth3_AllF4{XStructDepth2_All{
			F0: XArray2_TypeObject{
				vdl.AnyType,
				__VDLType_array_313,
			},
			F1: XArray1_Uint32{
				650662747,
			},
			F4: map[float64]struct{}{
				-1.2857409473689704e+08: struct{}{},
				1.157960391740711e+09:   struct{}{},
				1.873471483852068e+09:   struct{}{},
			},
			F5: XSet_XEnumBcd{
				XEnumBcdD: struct{}{},
			},
			F6: map[byte]byte{
				0:   48,
				153: 133,
			},
			F7: map[uint32]uint32{
				2044137986: 1905558326,
				2062773644: 1066427096,
				95064470:   3719709054,
			},
			F8: XStructDepth1_All{
				F0: map[XByte]struct{}{
					135: struct{}{},
					173: struct{}{},
					243: struct{}{},
				},
				F3:  "bcdeΔΘΠΣΦ",
				F5:  __VDLType_union_314,
				F13: 31207,
				F14: 59370,
				F16: 303297294,
				F17: 15467091921360512822,
				F18: 11034741233086879389,
				F19: -55,
				F20: 54,
				F22: 10155,
				F23: 723419856,
				F24: -176626036,
				F25: 1780085702466453043,
				F27: 7.382859e+08,
				F28: -1.5114458e+08,
				F29: -1.3737398805084093e+09,
				F31: &XStructEmpty{},
			},
			F10: XUnionDepth1_AllF0{},
			F11: XUnionDepth1_Float64F29{-4.287222510229483e+08},
			F12: &XStructDepth1_XEnumBcd{},
			F13: &XStructDepth1_XUint16{
				F14: 37166,
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth3_XUnionDepth2_All{F5: {F0: {}}}",
		Target:      XUnionDepth3_XUnionDepth2_All(XUnionDepth3_XUnionDepth2_AllF5{XUnionDepth2_AllF0{}}),
		SourceLabel: "XUnionDepth3_XUnionDepth2_All{F5: {F0: {}}}",
		Source:      XUnionDepth3_XUnionDepth2_All(XUnionDepth3_XUnionDepth2_AllF5{XUnionDepth2_AllF0{}}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth3_XUnionDepth2_All{F5: {F0: {}}}",
		Target:      XUnionDepth3_XUnionDepth2_All(XUnionDepth3_XUnionDepth2_AllF5{XUnionDepth2_AllF0{}}),
		SourceLabel: "XUnionDepth3_All{F5: {F0: {}}}",
		Source:      XUnionDepth3_All(XUnionDepth3_AllF5{XUnionDepth2_AllF0{}}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth3_XUnionDepth2_All{F5: {F13: {F28: 1.5}}}",
		Target: XUnionDepth3_XUnionDepth2_All(XUnionDepth3_XUnionDepth2_AllF5{XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
			F28: 1.5,
		}}}),
		SourceLabel: "XUnionDepth3_XUnionDepth2_All{F5: {F13: {F28: 1.5}}}",
		Source: XUnionDepth3_XUnionDepth2_All(XUnionDepth3_XUnionDepth2_AllF5{XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
			F28: 1.5,
		}}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth3_XUnionDepth2_All{F5: {F13: {F28: 1.5}}}",
		Target: XUnionDepth3_XUnionDepth2_All(XUnionDepth3_XUnionDepth2_AllF5{XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
			F28: 1.5,
		}}}),
		SourceLabel: "XUnionDepth3_All{F5: {F13: {F28: 1.5}}}",
		Source: XUnionDepth3_All(XUnionDepth3_AllF5{XUnionDepth2_AllF13{&XStructDepth1_XFloat32{
			F28: 1.5,
		}}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth3_XUnionDepth2_All{F5: {F7: {false: false, true: true}}}",
		Target: XUnionDepth3_XUnionDepth2_All(XUnionDepth3_XUnionDepth2_AllF5{XUnionDepth2_AllF7{XMap_XBool_XBool{
			false: false,
			true:  true,
		}}}),
		SourceLabel: "XUnionDepth3_XUnionDepth2_All{F5: {F7: {false: false, true: true}}}",
		Source: XUnionDepth3_XUnionDepth2_All(XUnionDepth3_XUnionDepth2_AllF5{XUnionDepth2_AllF7{XMap_XBool_XBool{
			false: false,
			true:  true,
		}}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth3_XUnionDepth2_All{F5: {F7: {false: false, true: true}}}",
		Target: XUnionDepth3_XUnionDepth2_All(XUnionDepth3_XUnionDepth2_AllF5{XUnionDepth2_AllF7{XMap_XBool_XBool{
			false: false,
			true:  true,
		}}}),
		SourceLabel: "XUnionDepth3_All{F5: {F7: {false: false, true: true}}}",
		Source: XUnionDepth3_All(XUnionDepth3_AllF5{XUnionDepth2_AllF7{XMap_XBool_XBool{
			false: false,
			true:  true,
		}}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XUnionDepth3_OptXStructDepth2_Set_Float64{F6: nil}",
		Target:      XUnionDepth3_OptXStructDepth2_Set_Float64(XUnionDepth3_OptXStructDepth2_Set_Float64F6{}),
		SourceLabel: "XUnionDepth3_OptXStructDepth2_Set_Float64{F6: nil}",
		Source:      XUnionDepth3_OptXStructDepth2_Set_Float64(XUnionDepth3_OptXStructDepth2_Set_Float64F6{}),
	},
	{
		Label:       "Zero",
		TargetLabel: "XUnionDepth3_OptXStructDepth2_Set_Float64{F6: nil}",
		Target:      XUnionDepth3_OptXStructDepth2_Set_Float64(XUnionDepth3_OptXStructDepth2_Set_Float64F6{}),
		SourceLabel: "XUnionDepth3_All{F6: nil}",
		Source:      XUnionDepth3_All(XUnionDepth3_AllF6{}),
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XUnionDepth3_OptXStructDepth2_Set_Float64{F6: {F4: {1.5}}}",
		Target: XUnionDepth3_OptXStructDepth2_Set_Float64(XUnionDepth3_OptXStructDepth2_Set_Float64F6{&XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		}}),
		SourceLabel: "XUnionDepth3_OptXStructDepth2_Set_Float64{F6: {F4: {1.5}}}",
		Source: XUnionDepth3_OptXStructDepth2_Set_Float64(XUnionDepth3_OptXStructDepth2_Set_Float64F6{&XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		}}),
	},
	{
		Label:       "Full",
		TargetLabel: "XUnionDepth3_OptXStructDepth2_Set_Float64{F6: {F4: {1.5}}}",
		Target: XUnionDepth3_OptXStructDepth2_Set_Float64(XUnionDepth3_OptXStructDepth2_Set_Float64F6{&XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		}}),
		SourceLabel: "XUnionDepth3_All{F6: {F4: {1.5}}}",
		Source: XUnionDepth3_All(XUnionDepth3_AllF6{&XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				1.5: struct{}{},
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XUnionDepth3_OptXStructDepth2_Set_Float64{F6: {F4: {-2.0805507443036644e+09, 6.403380188710701e+08}}}",
		Target: XUnionDepth3_OptXStructDepth2_Set_Float64(XUnionDepth3_OptXStructDepth2_Set_Float64F6{&XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				-2.0805507443036644e+09: struct{}{},
				6.403380188710701e+08:   struct{}{},
			},
		}}),
		SourceLabel: "XUnionDepth3_OptXStructDepth2_Set_Float64{F6: {F4: {-2.0805507443036644e+09, 6.403380188710701e+08}}}",
		Source: XUnionDepth3_OptXStructDepth2_Set_Float64(XUnionDepth3_OptXStructDepth2_Set_Float64F6{&XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				-2.0805507443036644e+09: struct{}{},
				6.403380188710701e+08:   struct{}{},
			},
		}}),
	},
	{
		Label:       "Random0",
		TargetLabel: "XUnionDepth3_OptXStructDepth2_Set_Float64{F6: {F4: {-2.0805507443036644e+09, 6.403380188710701e+08}}}",
		Target: XUnionDepth3_OptXStructDepth2_Set_Float64(XUnionDepth3_OptXStructDepth2_Set_Float64F6{&XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				-2.0805507443036644e+09: struct{}{},
				6.403380188710701e+08:   struct{}{},
			},
		}}),
		SourceLabel: "XUnionDepth3_All{F6: {F4: {-2.0805507443036644e+09, 6.403380188710701e+08}}}",
		Source: XUnionDepth3_All(XUnionDepth3_AllF6{&XStructDepth2_Set_Float64{
			F4: map[float64]struct{}{
				-2.0805507443036644e+09: struct{}{},
				6.403380188710701e+08:   struct{}{},
			},
		}}),
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "?XStructDepth3_XArray1_Set_XEnumBcd(nil)",
		Target:      (*XStructDepth3_XArray1_Set_XEnumBcd)(nil),
		SourceLabel: "?XStructDepth3_XArray1_Set_XEnumBcd(nil)",
		Source:      (*XStructDepth3_XArray1_Set_XEnumBcd)(nil),
	},
	{
		Label:       "Zero",
		TargetLabel: "?XStructDepth3_XArray1_Set_XEnumBcd(nil)",
		Target:      (*XStructDepth3_XArray1_Set_XEnumBcd)(nil),
		SourceLabel: "?XStructEmpty(nil)",
		Source:      (*XStructEmpty)(nil),
	},
	{
		Label:       "NilAny",
		TargetLabel: "?XStructDepth3_XArray1_Set_XEnumBcd(nil)",
		Target:      (*XStructDepth3_XArray1_Set_XEnumBcd)(nil),
		SourceLabel: "any(nil)",
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "?XStructDepth3_XArray1_Set_XEnumBcd{F0: {{D}}}",
		Target: &XStructDepth3_XArray1_Set_XEnumBcd{
			F0: XArray1_Set_XEnumBcd{
				{
					XEnumBcdD: struct{}{},
				},
			},
		},
		SourceLabel: "?XStructDepth3_XArray1_Set_XEnumBcd{F0: {{D}}}",
		Source: &XStructDepth3_XArray1_Set_XEnumBcd{
			F0: XArray1_Set_XEnumBcd{
				{
					XEnumBcdD: struct{}{},
				},
			},
		},
	},
	{
		Label:       "Full",
		TargetLabel: "?XStructDepth3_XArray1_Set_XEnumBcd{F0: {{D}}}",
		Target: &XStructDepth3_XArray1_Set_XEnumBcd{
			F0: XArray1_Set_XEnumBcd{
				{
					XEnumBcdD: struct{}{},
				},
			},
		},
		SourceLabel: "XStructDepth3_XArray1_Set_XEnumBcd{F0: {{D}}}",
		Source: XStructDepth3_XArray1_Set_XEnumBcd{
			F0: XArray1_Set_XEnumBcd{
				{
					XEnumBcdD: struct{}{},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XSelfCycle{}",
		Target:      XSelfCycle{},
		SourceLabel: "XSelfCycle{}",
		Source:      XSelfCycle{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XSelfCycle{}",
		Target:      XSelfCycle{},
		SourceLabel: "XMutualCycleB{}",
		Source:      XMutualCycleB{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XSelfCycle{}",
		Target:      XSelfCycle{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XSelfCycle{Data: -123, Next: {Data: -123, Next: {Data: -123, Next: {Data: -123}}}}",
		Target: XSelfCycle{
			Data: -123,
			Next: &XSelfCycle{
				Data: -123,
				Next: &XSelfCycle{
					Data: -123,
					Next: &XSelfCycle{
						Data: -123,
					},
				},
			},
		},
		SourceLabel: "XSelfCycle{Data: -123, Next: {Data: -123, Next: {Data: -123, Next: {Data: -123}}}}",
		Source: XSelfCycle{
			Data: -123,
			Next: &XSelfCycle{
				Data: -123,
				Next: &XSelfCycle{
					Data: -123,
					Next: &XSelfCycle{
						Data: -123,
					},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XSelfCycle{Next: {Data: 2253179390369614770, Next: {}}}",
		Target: XSelfCycle{
			Next: &XSelfCycle{
				Data: 2253179390369614770,
				Next: &XSelfCycle{},
			},
		},
		SourceLabel: "XSelfCycle{Next: {Data: 2253179390369614770, Next: {}}}",
		Source: XSelfCycle{
			Next: &XSelfCycle{
				Data: 2253179390369614770,
				Next: &XSelfCycle{},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XMutualCycleB{}",
		Target:      XMutualCycleB{},
		SourceLabel: "XMutualCycleB{}",
		Source:      XMutualCycleB{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XMutualCycleB{}",
		Target:      XMutualCycleB{},
		SourceLabel: "?XStructEmpty{}",
		Source:      &XStructEmpty{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XMutualCycleB{}",
		Target:      XMutualCycleB{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XMutualCycleB{Data: -123, A: {Data: -123, B: {Data: -123, A: {Data: -123}}}}",
		Target: XMutualCycleB{
			Data: -123,
			A: &XMutualCycleA{
				Data: -123,
				B: &XMutualCycleB{
					Data: -123,
					A: &XMutualCycleA{
						Data: -123,
					},
				},
			},
		},
		SourceLabel: "XMutualCycleB{Data: -123, A: {Data: -123, B: {Data: -123, A: {Data: -123}}}}",
		Source: XMutualCycleB{
			Data: -123,
			A: &XMutualCycleA{
				Data: -123,
				B: &XMutualCycleB{
					Data: -123,
					A: &XMutualCycleA{
						Data: -123,
					},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XMutualCycleB{A: {}}",
		Target: XMutualCycleB{
			A: &XMutualCycleA{},
		},
		SourceLabel: "XMutualCycleB{A: {}}",
		Source: XMutualCycleB{
			A: &XMutualCycleA{},
		},
	},
	{
		IsCanonical: true,
		Label:       "Zero",
		TargetLabel: "XMutualCycleA{}",
		Target:      XMutualCycleA{},
		SourceLabel: "XMutualCycleA{}",
		Source:      XMutualCycleA{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XMutualCycleA{}",
		Target:      XMutualCycleA{},
		SourceLabel: "XSelfCycle{}",
		Source:      XSelfCycle{},
	},
	{
		Label:       "Zero",
		TargetLabel: "XMutualCycleA{}",
		Target:      XMutualCycleA{},
		SourceLabel: "XStructEmpty{}",
		Source:      XStructEmpty{},
	},
	{
		IsCanonical: true,
		Label:       "Full",
		TargetLabel: "XMutualCycleA{Data: -123, B: {Data: -123, A: {Data: -123, B: {Data: -123}}}}",
		Target: XMutualCycleA{
			Data: -123,
			B: &XMutualCycleB{
				Data: -123,
				A: &XMutualCycleA{
					Data: -123,
					B: &XMutualCycleB{
						Data: -123,
					},
				},
			},
		},
		SourceLabel: "XMutualCycleA{Data: -123, B: {Data: -123, A: {Data: -123, B: {Data: -123}}}}",
		Source: XMutualCycleA{
			Data: -123,
			B: &XMutualCycleB{
				Data: -123,
				A: &XMutualCycleA{
					Data: -123,
					B: &XMutualCycleB{
						Data: -123,
					},
				},
			},
		},
	},
	{
		IsCanonical: true,
		Label:       "Random0",
		TargetLabel: "XMutualCycleA{Data: -1006823554338124716, B: {}}",
		Target: XMutualCycleA{
			Data: -1006823554338124716,
			B:    &XMutualCycleB{},
		},
		SourceLabel: "XMutualCycleA{Data: -1006823554338124716, B: {}}",
		Source: XMutualCycleA{
			Data: -1006823554338124716,
			B:    &XMutualCycleB{},
		},
	},
}

// Hold type definitions in package-level variables, for better performance.
var (
	__VDLType_struct_1     *vdl.Type
	__VDLType_bool_2       *vdl.Type
	__VDLType_string_3     *vdl.Type
	__VDLType_byte_4       *vdl.Type
	__VDLType_enum_5       *vdl.Type
	__VDLType_enum_6       *vdl.Type
	__VDLType_struct_7     *vdl.Type
	__VDLType_struct_8     *vdl.Type
	__VDLType_uint16_9     *vdl.Type
	__VDLType_uint32_10    *vdl.Type
	__VDLType_uint64_11    *vdl.Type
	__VDLType_int8_12      *vdl.Type
	__VDLType_int16_13     *vdl.Type
	__VDLType_int32_14     *vdl.Type
	__VDLType_int64_15     *vdl.Type
	__VDLType_float32_16   *vdl.Type
	__VDLType_float64_17   *vdl.Type
	__VDLType_array_18     *vdl.Type
	__VDLType_array_19     *vdl.Type
	__VDLType_array_20     *vdl.Type
	__VDLType_array_21     *vdl.Type
	__VDLType_array_22     *vdl.Type
	__VDLType_array_23     *vdl.Type
	__VDLType_array_24     *vdl.Type
	__VDLType_array_25     *vdl.Type
	__VDLType_array_26     *vdl.Type
	__VDLType_array_27     *vdl.Type
	__VDLType_array_28     *vdl.Type
	__VDLType_array_29     *vdl.Type
	__VDLType_array_30     *vdl.Type
	__VDLType_array_31     *vdl.Type
	__VDLType_array_32     *vdl.Type
	__VDLType_array_33     *vdl.Type
	__VDLType_array_34     *vdl.Type
	__VDLType_optional_35  *vdl.Type
	__VDLType_array_36     *vdl.Type
	__VDLType_optional_37  *vdl.Type
	__VDLType_list_38      *vdl.Type
	__VDLType_list_39      *vdl.Type
	__VDLType_list_40      *vdl.Type
	__VDLType_list_41      *vdl.Type
	__VDLType_list_42      *vdl.Type
	__VDLType_list_43      *vdl.Type
	__VDLType_list_44      *vdl.Type
	__VDLType_list_45      *vdl.Type
	__VDLType_list_46      *vdl.Type
	__VDLType_list_47      *vdl.Type
	__VDLType_list_48      *vdl.Type
	__VDLType_list_49      *vdl.Type
	__VDLType_list_50      *vdl.Type
	__VDLType_list_51      *vdl.Type
	__VDLType_list_52      *vdl.Type
	__VDLType_list_53      *vdl.Type
	__VDLType_list_54      *vdl.Type
	__VDLType_list_55      *vdl.Type
	__VDLType_set_56       *vdl.Type
	__VDLType_set_57       *vdl.Type
	__VDLType_set_58       *vdl.Type
	__VDLType_set_59       *vdl.Type
	__VDLType_set_60       *vdl.Type
	__VDLType_set_61       *vdl.Type
	__VDLType_set_62       *vdl.Type
	__VDLType_set_63       *vdl.Type
	__VDLType_set_64       *vdl.Type
	__VDLType_set_65       *vdl.Type
	__VDLType_set_66       *vdl.Type
	__VDLType_set_67       *vdl.Type
	__VDLType_set_68       *vdl.Type
	__VDLType_map_69       *vdl.Type
	__VDLType_map_70       *vdl.Type
	__VDLType_map_71       *vdl.Type
	__VDLType_map_72       *vdl.Type
	__VDLType_map_73       *vdl.Type
	__VDLType_map_74       *vdl.Type
	__VDLType_map_75       *vdl.Type
	__VDLType_map_76       *vdl.Type
	__VDLType_map_77       *vdl.Type
	__VDLType_map_78       *vdl.Type
	__VDLType_map_79       *vdl.Type
	__VDLType_map_80       *vdl.Type
	__VDLType_map_81       *vdl.Type
	__VDLType_struct_82    *vdl.Type
	__VDLType_struct_83    *vdl.Type
	__VDLType_struct_84    *vdl.Type
	__VDLType_struct_85    *vdl.Type
	__VDLType_struct_86    *vdl.Type
	__VDLType_struct_87    *vdl.Type
	__VDLType_struct_88    *vdl.Type
	__VDLType_struct_89    *vdl.Type
	__VDLType_struct_90    *vdl.Type
	__VDLType_struct_91    *vdl.Type
	__VDLType_struct_92    *vdl.Type
	__VDLType_struct_93    *vdl.Type
	__VDLType_struct_94    *vdl.Type
	__VDLType_struct_95    *vdl.Type
	__VDLType_struct_96    *vdl.Type
	__VDLType_struct_97    *vdl.Type
	__VDLType_struct_98    *vdl.Type
	__VDLType_struct_99    *vdl.Type
	__VDLType_struct_100   *vdl.Type
	__VDLType_struct_101   *vdl.Type
	__VDLType_struct_102   *vdl.Type
	__VDLType_struct_103   *vdl.Type
	__VDLType_struct_104   *vdl.Type
	__VDLType_struct_105   *vdl.Type
	__VDLType_struct_106   *vdl.Type
	__VDLType_struct_107   *vdl.Type
	__VDLType_struct_108   *vdl.Type
	__VDLType_struct_109   *vdl.Type
	__VDLType_struct_110   *vdl.Type
	__VDLType_struct_111   *vdl.Type
	__VDLType_struct_112   *vdl.Type
	__VDLType_struct_113   *vdl.Type
	__VDLType_struct_114   *vdl.Type
	__VDLType_struct_115   *vdl.Type
	__VDLType_union_116    *vdl.Type
	__VDLType_union_117    *vdl.Type
	__VDLType_union_118    *vdl.Type
	__VDLType_union_119    *vdl.Type
	__VDLType_union_120    *vdl.Type
	__VDLType_union_121    *vdl.Type
	__VDLType_union_122    *vdl.Type
	__VDLType_union_123    *vdl.Type
	__VDLType_union_124    *vdl.Type
	__VDLType_union_125    *vdl.Type
	__VDLType_union_126    *vdl.Type
	__VDLType_union_127    *vdl.Type
	__VDLType_union_128    *vdl.Type
	__VDLType_union_129    *vdl.Type
	__VDLType_union_130    *vdl.Type
	__VDLType_union_131    *vdl.Type
	__VDLType_union_132    *vdl.Type
	__VDLType_union_133    *vdl.Type
	__VDLType_union_134    *vdl.Type
	__VDLType_union_135    *vdl.Type
	__VDLType_union_136    *vdl.Type
	__VDLType_union_137    *vdl.Type
	__VDLType_union_138    *vdl.Type
	__VDLType_union_139    *vdl.Type
	__VDLType_union_140    *vdl.Type
	__VDLType_union_141    *vdl.Type
	__VDLType_union_142    *vdl.Type
	__VDLType_union_143    *vdl.Type
	__VDLType_union_144    *vdl.Type
	__VDLType_union_145    *vdl.Type
	__VDLType_union_146    *vdl.Type
	__VDLType_union_147    *vdl.Type
	__VDLType_union_148    *vdl.Type
	__VDLType_union_149    *vdl.Type
	__VDLType_array_150    *vdl.Type
	__VDLType_array_151    *vdl.Type
	__VDLType_array_152    *vdl.Type
	__VDLType_set_153      *vdl.Type
	__VDLType_array_154    *vdl.Type
	__VDLType_map_155      *vdl.Type
	__VDLType_array_156    *vdl.Type
	__VDLType_array_157    *vdl.Type
	__VDLType_array_158    *vdl.Type
	__VDLType_optional_159 *vdl.Type
	__VDLType_list_160     *vdl.Type
	__VDLType_list_161     *vdl.Type
	__VDLType_list_162     *vdl.Type
	__VDLType_list_163     *vdl.Type
	__VDLType_set_164      *vdl.Type
	__VDLType_list_165     *vdl.Type
	__VDLType_list_166     *vdl.Type
	__VDLType_list_167     *vdl.Type
	__VDLType_list_168     *vdl.Type
	__VDLType_optional_169 *vdl.Type
	__VDLType_set_170      *vdl.Type
	__VDLType_set_171      *vdl.Type
	__VDLType_set_172      *vdl.Type
	__VDLType_map_173      *vdl.Type
	__VDLType_map_174      *vdl.Type
	__VDLType_map_175      *vdl.Type
	__VDLType_struct_176   *vdl.Type
	__VDLType_list_177     *vdl.Type
	__VDLType_set_178      *vdl.Type
	__VDLType_map_179      *vdl.Type
	__VDLType_optional_180 *vdl.Type
	__VDLType_struct_181   *vdl.Type
	__VDLType_struct_182   *vdl.Type
	__VDLType_struct_183   *vdl.Type
	__VDLType_struct_184   *vdl.Type
	__VDLType_struct_185   *vdl.Type
	__VDLType_struct_186   *vdl.Type
	__VDLType_struct_187   *vdl.Type
	__VDLType_struct_188   *vdl.Type
	__VDLType_struct_189   *vdl.Type
	__VDLType_struct_190   *vdl.Type
	__VDLType_struct_191   *vdl.Type
	__VDLType_struct_192   *vdl.Type
	__VDLType_struct_193   *vdl.Type
	__VDLType_struct_194   *vdl.Type
	__VDLType_union_195    *vdl.Type
	__VDLType_map_196      *vdl.Type
	__VDLType_union_197    *vdl.Type
	__VDLType_union_198    *vdl.Type
	__VDLType_union_199    *vdl.Type
	__VDLType_union_200    *vdl.Type
	__VDLType_union_201    *vdl.Type
	__VDLType_union_202    *vdl.Type
	__VDLType_union_203    *vdl.Type
	__VDLType_union_204    *vdl.Type
	__VDLType_union_205    *vdl.Type
	__VDLType_union_206    *vdl.Type
	__VDLType_union_207    *vdl.Type
	__VDLType_union_208    *vdl.Type
	__VDLType_union_209    *vdl.Type
	__VDLType_union_210    *vdl.Type
	__VDLType_array_211    *vdl.Type
	__VDLType_array_212    *vdl.Type
	__VDLType_list_213     *vdl.Type
	__VDLType_array_214    *vdl.Type
	__VDLType_set_215      *vdl.Type
	__VDLType_array_216    *vdl.Type
	__VDLType_map_217      *vdl.Type
	__VDLType_array_218    *vdl.Type
	__VDLType_array_219    *vdl.Type
	__VDLType_array_220    *vdl.Type
	__VDLType_optional_221 *vdl.Type
	__VDLType_list_222     *vdl.Type
	__VDLType_list_223     *vdl.Type
	__VDLType_list_224     *vdl.Type
	__VDLType_list_225     *vdl.Type
	__VDLType_list_226     *vdl.Type
	__VDLType_list_227     *vdl.Type
	__VDLType_list_228     *vdl.Type
	__VDLType_set_229      *vdl.Type
	__VDLType_set_230      *vdl.Type
	__VDLType_set_231      *vdl.Type
	__VDLType_map_232      *vdl.Type
	__VDLType_map_233      *vdl.Type
	__VDLType_map_234      *vdl.Type
	__VDLType_struct_235   *vdl.Type
	__VDLType_list_236     *vdl.Type
	__VDLType_struct_237   *vdl.Type
	__VDLType_struct_238   *vdl.Type
	__VDLType_struct_239   *vdl.Type
	__VDLType_struct_240   *vdl.Type
	__VDLType_struct_241   *vdl.Type
	__VDLType_struct_242   *vdl.Type
	__VDLType_struct_243   *vdl.Type
	__VDLType_union_244    *vdl.Type
	__VDLType_list_245     *vdl.Type
	__VDLType_set_246      *vdl.Type
	__VDLType_union_247    *vdl.Type
	__VDLType_union_248    *vdl.Type
	__VDLType_union_249    *vdl.Type
	__VDLType_union_250    *vdl.Type
	__VDLType_union_251    *vdl.Type
	__VDLType_union_252    *vdl.Type
	__VDLType_union_253    *vdl.Type
	__VDLType_struct_254   *vdl.Type
	__VDLType_optional_255 *vdl.Type
	__VDLType_struct_256   *vdl.Type
	__VDLType_optional_257 *vdl.Type
	__VDLType_struct_258   *vdl.Type
	__VDLType_optional_259 *vdl.Type
	__VDLType_bool_260     *vdl.Type
	__VDLType_bool_261     *vdl.Type
	__VDLType_bool_262     *vdl.Type
	__VDLType_int32_263    *vdl.Type
	__VDLType_int32_264    *vdl.Type
	__VDLType_int32_265    *vdl.Type
	__VDLType_string_266   *vdl.Type
	__VDLType_string_267   *vdl.Type
	__VDLType_array_268    *vdl.Type
	__VDLType_array_269    *vdl.Type
	__VDLType_list_270     *vdl.Type
	__VDLType_list_271     *vdl.Type
	__VDLType_struct_272   *vdl.Type
	__VDLType_struct_273   *vdl.Type
	__VDLType_struct_274   *vdl.Type
	__VDLType_struct_275   *vdl.Type
	__VDLType_struct_276   *vdl.Type
	__VDLType_struct_277   *vdl.Type
	__VDLType_union_278    *vdl.Type
	__VDLType_union_279    *vdl.Type
	__VDLType_union_280    *vdl.Type
	__VDLType_union_281    *vdl.Type
	__VDLType_union_282    *vdl.Type
	__VDLType_union_283    *vdl.Type
	__VDLType_struct_284   *vdl.Type
	__VDLType_list_285     *vdl.Type
	__VDLType_list_286     *vdl.Type
	__VDLType_set_287      *vdl.Type
	__VDLType_list_288     *vdl.Type
	__VDLType_list_289     *vdl.Type
	__VDLType_struct_290   *vdl.Type
	__VDLType_float32_291  *vdl.Type
	__VDLType_list_292     *vdl.Type
	__VDLType_list_293     *vdl.Type
	__VDLType_array_294    *vdl.Type
	__VDLType_union_295    *vdl.Type
	__VDLType_struct_296   *vdl.Type
	__VDLType_union_297    *vdl.Type
	__VDLType_uint16_298   *vdl.Type
	__VDLType_list_299     *vdl.Type
	__VDLType_set_300      *vdl.Type
	__VDLType_set_301      *vdl.Type
	__VDLType_list_302     *vdl.Type
	__VDLType_list_303     *vdl.Type
	__VDLType_array_304    *vdl.Type
	__VDLType_union_305    *vdl.Type
	__VDLType_struct_306   *vdl.Type
	__VDLType_union_307    *vdl.Type
	__VDLType_list_308     *vdl.Type
	__VDLType_struct_309   *vdl.Type
	__VDLType_map_310      *vdl.Type
	__VDLType_map_311      *vdl.Type
	__VDLType_list_312     *vdl.Type
	__VDLType_array_313    *vdl.Type
	__VDLType_union_314    *vdl.Type
)

var __VDLInitCalled bool

// __VDLInit performs vdl initialization.  It is safe to call multiple times.
// If you have an init ordering issue, just insert the following line verbatim
// into your source files in this package, right after the "package foo" clause:
//
//    var _ = __VDLInit()
//
// The purpose of this function is to ensure that vdl initialization occurs in
// the right order, and very early in the init sequence.  In particular, vdl
// registration and package variable initialization needs to occur before
// functions like vdl.TypeOf will work properly.
//
// This function returns a dummy value, so that it can be used to initialize the
// first var in the file, to take advantage of Go's defined init order.
func __VDLInit() struct{} {
	if __VDLInitCalled {
		return struct{}{}
	}
	__VDLInitCalled = true

	// Register native type conversions first, so that vdl.TypeOf works.
	vdl.RegisterNative(VWireArrayNStringToNative, VWireArrayNStringFromNative)
	vdl.RegisterNative(VWireArrayNStructToNative, VWireArrayNStructFromNative)
	vdl.RegisterNative(VWireBoolNBoolToNative, VWireBoolNBoolFromNative)
	vdl.RegisterNative(VWireBoolNStringToNative, VWireBoolNStringFromNative)
	vdl.RegisterNative(VWireBoolNStructToNative, VWireBoolNStructFromNative)
	vdl.RegisterNative(VWireIntNIntToNative, VWireIntNIntFromNative)
	vdl.RegisterNative(VWireIntNStringToNative, VWireIntNStringFromNative)
	vdl.RegisterNative(VWireIntNStructToNative, VWireIntNStructFromNative)
	vdl.RegisterNative(VWireListNStringToNative, VWireListNStringFromNative)
	vdl.RegisterNative(VWireListNStructToNative, VWireListNStructFromNative)
	vdl.RegisterNative(VWireStringNStringToNative, VWireStringNStringFromNative)
	vdl.RegisterNative(VWireStringNStructToNative, VWireStringNStructFromNative)
	vdl.RegisterNative(VWireStructNArrayToNative, VWireStructNArrayFromNative)
	vdl.RegisterNative(VWireStructNSliceToNative, VWireStructNSliceFromNative)
	vdl.RegisterNative(VWireStructNStringToNative, VWireStructNStringFromNative)
	vdl.RegisterNative(VWireStructNStructToNative, VWireStructNStructFromNative)
	vdl.RegisterNative(VWireUnionNArrayToNative, VWireUnionNArrayFromNative)
	vdl.RegisterNative(VWireUnionNSliceToNative, VWireUnionNSliceFromNative)
	vdl.RegisterNative(VWireUnionNStringToNative, VWireUnionNStringFromNative)
	vdl.RegisterNative(VWireUnionNStructToNative, VWireUnionNStructFromNative)

	// Register types.
	vdl.Register((*vdlEntry)(nil))
	vdl.Register((*VBool)(nil))
	vdl.Register((*VString)(nil))
	vdl.Register((*VByte)(nil))
	vdl.Register((*VEnumAbc)(nil))
	vdl.Register((*VEnumBcd)(nil))
	vdl.Register((*VStructEmpty)(nil))
	vdl.Register((*VNamedError)(nil))
	vdl.Register((*VUint16)(nil))
	vdl.Register((*VUint32)(nil))
	vdl.Register((*VUint64)(nil))
	vdl.Register((*VInt8)(nil))
	vdl.Register((*VInt16)(nil))
	vdl.Register((*VInt32)(nil))
	vdl.Register((*VInt64)(nil))
	vdl.Register((*VFloat32)(nil))
	vdl.Register((*VFloat64)(nil))
	vdl.Register((*VArray3_Any)(nil))
	vdl.Register((*VArray3_Bool)(nil))
	vdl.Register((*VArray3_VBool)(nil))
	vdl.Register((*VArray1_String)(nil))
	vdl.Register((*VArray3_VString)(nil))
	vdl.Register((*VArray2_TypeObject)(nil))
	vdl.Register((*VArray1_Byte)(nil))
	vdl.Register((*VArray2_VByte)(nil))
	vdl.Register((*VArray2_VEnumAbc)(nil))
	vdl.Register((*VArray2_VEnumBcd)(nil))
	vdl.Register((*VArray1_VStructEmpty)(nil))
	vdl.Register((*VArray1_VNamedError)(nil))
	vdl.Register((*VArray2_Error)(nil))
	vdl.Register((*VArray1_Uint32)(nil))
	vdl.Register((*VArray3_Uint64)(nil))
	vdl.Register((*VArray3_Int64)(nil))
	vdl.Register((*VArray1_OptVStructEmpty)(nil))
	vdl.Register((*VArray3_OptVNamedError)(nil))
	vdl.Register((*VList_Any)(nil))
	vdl.Register((*VList_Bool)(nil))
	vdl.Register((*VList_VBool)(nil))
	vdl.Register((*VList_String)(nil))
	vdl.Register((*VList_VString)(nil))
	vdl.Register((*VList_TypeObject)(nil))
	vdl.Register((*VList_Byte)(nil))
	vdl.Register((*VList_VByte)(nil))
	vdl.Register((*VList_VEnumAbc)(nil))
	vdl.Register((*VList_VEnumBcd)(nil))
	vdl.Register((*VList_VStructEmpty)(nil))
	vdl.Register((*VList_VNamedError)(nil))
	vdl.Register((*VList_Error)(nil))
	vdl.Register((*VList_VUint16)(nil))
	vdl.Register((*VList_VFloat32)(nil))
	vdl.Register((*VList_VFloat64)(nil))
	vdl.Register((*VList_OptVStructEmpty)(nil))
	vdl.Register((*VList_OptVNamedError)(nil))
	vdl.Register((*VSet_Bool)(nil))
	vdl.Register((*VSet_VBool)(nil))
	vdl.Register((*VSet_String)(nil))
	vdl.Register((*VSet_VString)(nil))
	vdl.Register((*VSet_Byte)(nil))
	vdl.Register((*VSet_VByte)(nil))
	vdl.Register((*VSet_VEnumAbc)(nil))
	vdl.Register((*VSet_VEnumBcd)(nil))
	vdl.Register((*VSet_VStructEmpty)(nil))
	vdl.Register((*VSet_VNamedError)(nil))
	vdl.Register((*VSet_Uint64)(nil))
	vdl.Register((*VSet_VUint64)(nil))
	vdl.Register((*VSet_Float32)(nil))
	vdl.Register((*VMap_Bool_Bool)(nil))
	vdl.Register((*VMap_VBool_VBool)(nil))
	vdl.Register((*VMap_String_String)(nil))
	vdl.Register((*VMap_VString_VString)(nil))
	vdl.Register((*VMap_Byte_Byte)(nil))
	vdl.Register((*VMap_VByte_VByte)(nil))
	vdl.Register((*VMap_VEnumAbc_VEnumAbc)(nil))
	vdl.Register((*VMap_VEnumBcd_VEnumBcd)(nil))
	vdl.Register((*VMap_VStructEmpty_VStructEmpty)(nil))
	vdl.Register((*VMap_VNamedError_VNamedError)(nil))
	vdl.Register((*VMap_VUint32_VUint32)(nil))
	vdl.Register((*VMap_VInt32_VInt32)(nil))
	vdl.Register((*VMap_Int64_Int64)(nil))
	vdl.Register((*VStructDepth1_All)(nil))
	vdl.Register((*VStructDepth1_Any)(nil))
	vdl.Register((*VStructDepth1_Bool)(nil))
	vdl.Register((*VStructDepth1_VBool)(nil))
	vdl.Register((*VStructDepth1_String)(nil))
	vdl.Register((*VStructDepth1_VString)(nil))
	vdl.Register((*VStructDepth1_TypeObject)(nil))
	vdl.Register((*VStructDepth1_Byte)(nil))
	vdl.Register((*VStructDepth1_VByte)(nil))
	vdl.Register((*VStructDepth1_VEnumAbc)(nil))
	vdl.Register((*VStructDepth1_VEnumBcd)(nil))
	vdl.Register((*VStructDepth1_VStructEmpty)(nil))
	vdl.Register((*VStructDepth1_VNamedError)(nil))
	vdl.Register((*VStructDepth1_Error)(nil))
	vdl.Register((*VStructDepth1_Uint16)(nil))
	vdl.Register((*VStructDepth1_VUint16)(nil))
	vdl.Register((*VStructDepth1_Uint32)(nil))
	vdl.Register((*VStructDepth1_VUint32)(nil))
	vdl.Register((*VStructDepth1_Uint64)(nil))
	vdl.Register((*VStructDepth1_VUint64)(nil))
	vdl.Register((*VStructDepth1_Int8)(nil))
	vdl.Register((*VStructDepth1_VInt8)(nil))
	vdl.Register((*VStructDepth1_Int16)(nil))
	vdl.Register((*VStructDepth1_VInt16)(nil))
	vdl.Register((*VStructDepth1_Int32)(nil))
	vdl.Register((*VStructDepth1_VInt32)(nil))
	vdl.Register((*VStructDepth1_Int64)(nil))
	vdl.Register((*VStructDepth1_VInt64)(nil))
	vdl.Register((*VStructDepth1_Float32)(nil))
	vdl.Register((*VStructDepth1_VFloat32)(nil))
	vdl.Register((*VStructDepth1_Float64)(nil))
	vdl.Register((*VStructDepth1_VFloat64)(nil))
	vdl.Register((*VStructDepth1_OptVStructEmpty)(nil))
	vdl.Register((*VStructDepth1_OptVNamedError)(nil))
	vdl.Register((*VUnionDepth1_All)(nil))
	vdl.Register((*VUnionDepth1_Any)(nil))
	vdl.Register((*VUnionDepth1_Bool)(nil))
	vdl.Register((*VUnionDepth1_VBool)(nil))
	vdl.Register((*VUnionDepth1_String)(nil))
	vdl.Register((*VUnionDepth1_VString)(nil))
	vdl.Register((*VUnionDepth1_TypeObject)(nil))
	vdl.Register((*VUnionDepth1_Byte)(nil))
	vdl.Register((*VUnionDepth1_VByte)(nil))
	vdl.Register((*VUnionDepth1_VEnumAbc)(nil))
	vdl.Register((*VUnionDepth1_VEnumBcd)(nil))
	vdl.Register((*VUnionDepth1_VStructEmpty)(nil))
	vdl.Register((*VUnionDepth1_VNamedError)(nil))
	vdl.Register((*VUnionDepth1_Error)(nil))
	vdl.Register((*VUnionDepth1_Uint16)(nil))
	vdl.Register((*VUnionDepth1_VUint16)(nil))
	vdl.Register((*VUnionDepth1_Uint32)(nil))
	vdl.Register((*VUnionDepth1_VUint32)(nil))
	vdl.Register((*VUnionDepth1_Uint64)(nil))
	vdl.Register((*VUnionDepth1_VUint64)(nil))
	vdl.Register((*VUnionDepth1_Int8)(nil))
	vdl.Register((*VUnionDepth1_VInt8)(nil))
	vdl.Register((*VUnionDepth1_Int16)(nil))
	vdl.Register((*VUnionDepth1_VInt16)(nil))
	vdl.Register((*VUnionDepth1_Int32)(nil))
	vdl.Register((*VUnionDepth1_VInt32)(nil))
	vdl.Register((*VUnionDepth1_Int64)(nil))
	vdl.Register((*VUnionDepth1_VInt64)(nil))
	vdl.Register((*VUnionDepth1_Float32)(nil))
	vdl.Register((*VUnionDepth1_VFloat32)(nil))
	vdl.Register((*VUnionDepth1_Float64)(nil))
	vdl.Register((*VUnionDepth1_VFloat64)(nil))
	vdl.Register((*VUnionDepth1_OptVStructEmpty)(nil))
	vdl.Register((*VUnionDepth1_OptVNamedError)(nil))
	vdl.Register((*VArray1_VArray3_Int64)(nil))
	vdl.Register((*VArray1_VList_Byte)(nil))
	vdl.Register((*VArray1_Set_VEnumBcd)(nil))
	vdl.Register((*VArray2_Map_Byte_Byte)(nil))
	vdl.Register((*VArray2_VStructDepth1_All)(nil))
	vdl.Register((*VArray3_VUnionDepth1_All)(nil))
	vdl.Register((*VArray3_OptVStructDepth1_VFloat32)(nil))
	vdl.Register((*VList_VArray1_VStructEmpty)(nil))
	vdl.Register((*VList_List_VString)(nil))
	vdl.Register((*VList_Set_VBool)(nil))
	vdl.Register((*VList_VMap_Byte_Byte)(nil))
	vdl.Register((*VList_VStructDepth1_All)(nil))
	vdl.Register((*VList_VUnionDepth1_All)(nil))
	vdl.Register((*VList_OptVStructDepth1_VEnumBcd)(nil))
	vdl.Register((*VSet_VArray1_VStructEmpty)(nil))
	vdl.Register((*VSet_VStructDepth1_VFloat64)(nil))
	vdl.Register((*VSet_VUnionDepth1_VInt8)(nil))
	vdl.Register((*VMap_VArray3_VBool_VArray3_VBool)(nil))
	vdl.Register((*VMap_VStructDepth1_VBool_VStructDepth1_VBool)(nil))
	vdl.Register((*VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64)(nil))
	vdl.Register((*VStructDepth2_All)(nil))
	vdl.Register((*VStructDepth2_VArray2_TypeObject)(nil))
	vdl.Register((*VStructDepth2_VArray1_Uint32)(nil))
	vdl.Register((*VStructDepth2_List_Int16)(nil))
	vdl.Register((*VStructDepth2_VList_Any)(nil))
	vdl.Register((*VStructDepth2_Set_Float64)(nil))
	vdl.Register((*VStructDepth2_VSet_VEnumBcd)(nil))
	vdl.Register((*VStructDepth2_Map_Byte_Byte)(nil))
	vdl.Register((*VStructDepth2_Map_Uint32_Uint32)(nil))
	vdl.Register((*VStructDepth2_VStructDepth1_All)(nil))
	vdl.Register((*VStructDepth2_VStructDepth1_Bool)(nil))
	vdl.Register((*VStructDepth2_VUnionDepth1_All)(nil))
	vdl.Register((*VStructDepth2_VUnionDepth1_Float64)(nil))
	vdl.Register((*VStructDepth2_OptVStructDepth1_VEnumBcd)(nil))
	vdl.Register((*VStructDepth2_OptVStructDepth1_VUint16)(nil))
	vdl.Register((*VUnionDepth2_All)(nil))
	vdl.Register((*VUnionDepth2_VArray1_String)(nil))
	vdl.Register((*VUnionDepth2_VArray2_VByte)(nil))
	vdl.Register((*VUnionDepth2_VList_VByte)(nil))
	vdl.Register((*VUnionDepth2_VList_OptVNamedError)(nil))
	vdl.Register((*VUnionDepth2_VSet_VBool)(nil))
	vdl.Register((*VUnionDepth2_VSet_VNamedError)(nil))
	vdl.Register((*VUnionDepth2_Map_VBool_VBool)(nil))
	vdl.Register((*VUnionDepth2_VMap_VBool_VBool)(nil))
	vdl.Register((*VUnionDepth2_VStructDepth1_All)(nil))
	vdl.Register((*VUnionDepth2_VStructDepth1_Int8)(nil))
	vdl.Register((*VUnionDepth2_VUnionDepth1_All)(nil))
	vdl.Register((*VUnionDepth2_VUnionDepth1_VUint32)(nil))
	vdl.Register((*VUnionDepth2_OptVStructDepth1_VEnumBcd)(nil))
	vdl.Register((*VUnionDepth2_OptVStructDepth1_VFloat32)(nil))
	vdl.Register((*VArray1_VArray1_VList_Byte)(nil))
	vdl.Register((*VArray2_List_VMap_VByte_VByte)(nil))
	vdl.Register((*VArray2_Set_VUnionDepth1_VNamedError)(nil))
	vdl.Register((*VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64)(nil))
	vdl.Register((*VArray2_VStructDepth2_All)(nil))
	vdl.Register((*VArray2_VUnionDepth2_All)(nil))
	vdl.Register((*VArray3_OptVStructDepth2_Set_Float64)(nil))
	vdl.Register((*VList_VArray3_VUnionDepth1_All)(nil))
	vdl.Register((*VList_List_VMap_VByte_VByte)(nil))
	vdl.Register((*VList_VSet_VArray1_VStructEmpty)(nil))
	vdl.Register((*VList_VMap_VArray3_VBool_VArray3_VBool)(nil))
	vdl.Register((*VList_VStructDepth2_All)(nil))
	vdl.Register((*VList_VUnionDepth2_All)(nil))
	vdl.Register((*VList_OptVStructDepth2_Set_Float64)(nil))
	vdl.Register((*VSet_VArray1_VArray3_Int64)(nil))
	vdl.Register((*VSet_VStructDepth2_VStructDepth1_Bool)(nil))
	vdl.Register((*VSet_VUnionDepth2_VArray1_String)(nil))
	vdl.Register((*VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64)(nil))
	vdl.Register((*VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32)(nil))
	vdl.Register((*VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte)(nil))
	vdl.Register((*VStructDepth3_All)(nil))
	vdl.Register((*VStructDepth3_VArray1_Set_VEnumBcd)(nil))
	vdl.Register((*VStructDepth3_List_VUnionDepth1_All)(nil))
	vdl.Register((*VStructDepth3_VSet_VArray1_VStructEmpty)(nil))
	vdl.Register((*VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64)(nil))
	vdl.Register((*VStructDepth3_VStructDepth2_All)(nil))
	vdl.Register((*VStructDepth3_VUnionDepth2_All)(nil))
	vdl.Register((*VStructDepth3_OptVStructDepth2_Set_Float64)(nil))
	vdl.Register((*VUnionDepth3_All)(nil))
	vdl.Register((*VUnionDepth3_VArray3_OptVStructDepth1_VFloat32)(nil))
	vdl.Register((*VUnionDepth3_List_VList_Error)(nil))
	vdl.Register((*VUnionDepth3_Set_VStructDepth1_String)(nil))
	vdl.Register((*VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool)(nil))
	vdl.Register((*VUnionDepth3_VStructDepth2_All)(nil))
	vdl.Register((*VUnionDepth3_VUnionDepth2_All)(nil))
	vdl.Register((*VUnionDepth3_OptVStructDepth2_Set_Float64)(nil))
	vdl.Register((*VSelfCycle)(nil))
	vdl.Register((*VMutualCycleB)(nil))
	vdl.Register((*VMutualCycleA)(nil))
	vdl.Register((*VWireBoolNBool)(nil))
	vdl.Register((*VWireBoolNString)(nil))
	vdl.Register((*VWireBoolNStruct)(nil))
	vdl.Register((*VWireIntNInt)(nil))
	vdl.Register((*VWireIntNString)(nil))
	vdl.Register((*VWireIntNStruct)(nil))
	vdl.Register((*VWireStringNString)(nil))
	vdl.Register((*VWireStringNStruct)(nil))
	vdl.Register((*VWireArrayNString)(nil))
	vdl.Register((*VWireArrayNStruct)(nil))
	vdl.Register((*VWireListNString)(nil))
	vdl.Register((*VWireListNStruct)(nil))
	vdl.Register((*VWireStructNString)(nil))
	vdl.Register((*VWireStructNStruct)(nil))
	vdl.Register((*VWireStructNArray)(nil))
	vdl.Register((*VWireStructNSlice)(nil))
	vdl.Register((*VWireStructNPointer)(nil))
	vdl.Register((*VWireStructNIface)(nil))
	vdl.Register((*VWireUnionNString)(nil))
	vdl.Register((*VWireUnionNStruct)(nil))
	vdl.Register((*VWireUnionNArray)(nil))
	vdl.Register((*VWireUnionNSlice)(nil))
	vdl.Register((*VWireUnionNPointer)(nil))
	vdl.Register((*VWireUnionNIface)(nil))
	vdl.Register((*VWireAll)(nil))
	vdl.Register((*XBool)(nil))
	vdl.Register((*XString)(nil))
	vdl.Register((*XByte)(nil))
	vdl.Register((*XEnumAbc)(nil))
	vdl.Register((*XEnumBcd)(nil))
	vdl.Register((*XStructEmpty)(nil))
	vdl.Register((*XNamedError)(nil))
	vdl.Register((*XUint16)(nil))
	vdl.Register((*XUint32)(nil))
	vdl.Register((*XUint64)(nil))
	vdl.Register((*XInt8)(nil))
	vdl.Register((*XInt16)(nil))
	vdl.Register((*XInt32)(nil))
	vdl.Register((*XInt64)(nil))
	vdl.Register((*XFloat32)(nil))
	vdl.Register((*XFloat64)(nil))
	vdl.Register((*XArray3_Any)(nil))
	vdl.Register((*XArray3_Bool)(nil))
	vdl.Register((*XArray3_XBool)(nil))
	vdl.Register((*XArray1_String)(nil))
	vdl.Register((*XArray3_XString)(nil))
	vdl.Register((*XArray2_TypeObject)(nil))
	vdl.Register((*XArray1_Byte)(nil))
	vdl.Register((*XArray2_XByte)(nil))
	vdl.Register((*XArray2_XEnumAbc)(nil))
	vdl.Register((*XArray2_XEnumBcd)(nil))
	vdl.Register((*XArray1_XStructEmpty)(nil))
	vdl.Register((*XArray1_XNamedError)(nil))
	vdl.Register((*XArray2_Error)(nil))
	vdl.Register((*XArray1_Uint32)(nil))
	vdl.Register((*XArray3_Uint64)(nil))
	vdl.Register((*XArray3_Int64)(nil))
	vdl.Register((*XArray1_OptXStructEmpty)(nil))
	vdl.Register((*XArray3_OptXNamedError)(nil))
	vdl.Register((*XList_Any)(nil))
	vdl.Register((*XList_Bool)(nil))
	vdl.Register((*XList_XBool)(nil))
	vdl.Register((*XList_String)(nil))
	vdl.Register((*XList_XString)(nil))
	vdl.Register((*XList_TypeObject)(nil))
	vdl.Register((*XList_Byte)(nil))
	vdl.Register((*XList_XByte)(nil))
	vdl.Register((*XList_XEnumAbc)(nil))
	vdl.Register((*XList_XEnumBcd)(nil))
	vdl.Register((*XList_XStructEmpty)(nil))
	vdl.Register((*XList_XNamedError)(nil))
	vdl.Register((*XList_Error)(nil))
	vdl.Register((*XList_XUint16)(nil))
	vdl.Register((*XList_XFloat32)(nil))
	vdl.Register((*XList_XFloat64)(nil))
	vdl.Register((*XList_OptXStructEmpty)(nil))
	vdl.Register((*XList_OptXNamedError)(nil))
	vdl.Register((*XSet_Bool)(nil))
	vdl.Register((*XSet_XBool)(nil))
	vdl.Register((*XSet_String)(nil))
	vdl.Register((*XSet_XString)(nil))
	vdl.Register((*XSet_Byte)(nil))
	vdl.Register((*XSet_XByte)(nil))
	vdl.Register((*XSet_XEnumAbc)(nil))
	vdl.Register((*XSet_XEnumBcd)(nil))
	vdl.Register((*XSet_XStructEmpty)(nil))
	vdl.Register((*XSet_XNamedError)(nil))
	vdl.Register((*XSet_Uint64)(nil))
	vdl.Register((*XSet_XUint64)(nil))
	vdl.Register((*XSet_Float32)(nil))
	vdl.Register((*XMap_Bool_Bool)(nil))
	vdl.Register((*XMap_XBool_XBool)(nil))
	vdl.Register((*XMap_String_String)(nil))
	vdl.Register((*XMap_XString_XString)(nil))
	vdl.Register((*XMap_Byte_Byte)(nil))
	vdl.Register((*XMap_XByte_XByte)(nil))
	vdl.Register((*XMap_XEnumAbc_XEnumAbc)(nil))
	vdl.Register((*XMap_XEnumBcd_XEnumBcd)(nil))
	vdl.Register((*XMap_XStructEmpty_XStructEmpty)(nil))
	vdl.Register((*XMap_XNamedError_XNamedError)(nil))
	vdl.Register((*XMap_XUint32_XUint32)(nil))
	vdl.Register((*XMap_XInt32_XInt32)(nil))
	vdl.Register((*XMap_Int64_Int64)(nil))
	vdl.Register((*XStructDepth1_All)(nil))
	vdl.Register((*XStructDepth1_Any)(nil))
	vdl.Register((*XStructDepth1_Bool)(nil))
	vdl.Register((*XStructDepth1_XBool)(nil))
	vdl.Register((*XStructDepth1_String)(nil))
	vdl.Register((*XStructDepth1_XString)(nil))
	vdl.Register((*XStructDepth1_TypeObject)(nil))
	vdl.Register((*XStructDepth1_Byte)(nil))
	vdl.Register((*XStructDepth1_XByte)(nil))
	vdl.Register((*XStructDepth1_XEnumAbc)(nil))
	vdl.Register((*XStructDepth1_XEnumBcd)(nil))
	vdl.Register((*XStructDepth1_XStructEmpty)(nil))
	vdl.Register((*XStructDepth1_XNamedError)(nil))
	vdl.Register((*XStructDepth1_Error)(nil))
	vdl.Register((*XStructDepth1_Uint16)(nil))
	vdl.Register((*XStructDepth1_XUint16)(nil))
	vdl.Register((*XStructDepth1_Uint32)(nil))
	vdl.Register((*XStructDepth1_XUint32)(nil))
	vdl.Register((*XStructDepth1_Uint64)(nil))
	vdl.Register((*XStructDepth1_XUint64)(nil))
	vdl.Register((*XStructDepth1_Int8)(nil))
	vdl.Register((*XStructDepth1_XInt8)(nil))
	vdl.Register((*XStructDepth1_Int16)(nil))
	vdl.Register((*XStructDepth1_XInt16)(nil))
	vdl.Register((*XStructDepth1_Int32)(nil))
	vdl.Register((*XStructDepth1_XInt32)(nil))
	vdl.Register((*XStructDepth1_Int64)(nil))
	vdl.Register((*XStructDepth1_XInt64)(nil))
	vdl.Register((*XStructDepth1_Float32)(nil))
	vdl.Register((*XStructDepth1_XFloat32)(nil))
	vdl.Register((*XStructDepth1_Float64)(nil))
	vdl.Register((*XStructDepth1_XFloat64)(nil))
	vdl.Register((*XStructDepth1_OptXStructEmpty)(nil))
	vdl.Register((*XStructDepth1_OptXNamedError)(nil))
	vdl.Register((*XUnionDepth1_All)(nil))
	vdl.Register((*XUnionDepth1_Any)(nil))
	vdl.Register((*XUnionDepth1_Bool)(nil))
	vdl.Register((*XUnionDepth1_XBool)(nil))
	vdl.Register((*XUnionDepth1_String)(nil))
	vdl.Register((*XUnionDepth1_XString)(nil))
	vdl.Register((*XUnionDepth1_TypeObject)(nil))
	vdl.Register((*XUnionDepth1_Byte)(nil))
	vdl.Register((*XUnionDepth1_XByte)(nil))
	vdl.Register((*XUnionDepth1_XEnumAbc)(nil))
	vdl.Register((*XUnionDepth1_XEnumBcd)(nil))
	vdl.Register((*XUnionDepth1_XStructEmpty)(nil))
	vdl.Register((*XUnionDepth1_XNamedError)(nil))
	vdl.Register((*XUnionDepth1_Error)(nil))
	vdl.Register((*XUnionDepth1_Uint16)(nil))
	vdl.Register((*XUnionDepth1_XUint16)(nil))
	vdl.Register((*XUnionDepth1_Uint32)(nil))
	vdl.Register((*XUnionDepth1_XUint32)(nil))
	vdl.Register((*XUnionDepth1_Uint64)(nil))
	vdl.Register((*XUnionDepth1_XUint64)(nil))
	vdl.Register((*XUnionDepth1_Int8)(nil))
	vdl.Register((*XUnionDepth1_XInt8)(nil))
	vdl.Register((*XUnionDepth1_Int16)(nil))
	vdl.Register((*XUnionDepth1_XInt16)(nil))
	vdl.Register((*XUnionDepth1_Int32)(nil))
	vdl.Register((*XUnionDepth1_XInt32)(nil))
	vdl.Register((*XUnionDepth1_Int64)(nil))
	vdl.Register((*XUnionDepth1_XInt64)(nil))
	vdl.Register((*XUnionDepth1_Float32)(nil))
	vdl.Register((*XUnionDepth1_XFloat32)(nil))
	vdl.Register((*XUnionDepth1_Float64)(nil))
	vdl.Register((*XUnionDepth1_XFloat64)(nil))
	vdl.Register((*XUnionDepth1_OptXStructEmpty)(nil))
	vdl.Register((*XUnionDepth1_OptXNamedError)(nil))
	vdl.Register((*XArray1_XArray3_Int64)(nil))
	vdl.Register((*XArray1_XList_Byte)(nil))
	vdl.Register((*XArray1_Set_XEnumBcd)(nil))
	vdl.Register((*XArray2_Map_Byte_Byte)(nil))
	vdl.Register((*XArray2_XStructDepth1_All)(nil))
	vdl.Register((*XArray3_XUnionDepth1_All)(nil))
	vdl.Register((*XArray3_OptXStructDepth1_XFloat32)(nil))
	vdl.Register((*XList_XArray1_XStructEmpty)(nil))
	vdl.Register((*XList_List_XString)(nil))
	vdl.Register((*XList_Set_XBool)(nil))
	vdl.Register((*XList_XMap_Byte_Byte)(nil))
	vdl.Register((*XList_XStructDepth1_All)(nil))
	vdl.Register((*XList_XUnionDepth1_All)(nil))
	vdl.Register((*XList_OptXStructDepth1_XEnumBcd)(nil))
	vdl.Register((*XSet_XArray1_XStructEmpty)(nil))
	vdl.Register((*XSet_XStructDepth1_XFloat64)(nil))
	vdl.Register((*XSet_XUnionDepth1_XInt8)(nil))
	vdl.Register((*XMap_XArray3_XBool_XArray3_XBool)(nil))
	vdl.Register((*XMap_XStructDepth1_XBool_XStructDepth1_XBool)(nil))
	vdl.Register((*XMap_XUnionDepth1_XUint64_XUnionDepth1_XUint64)(nil))
	vdl.Register((*XStructDepth2_All)(nil))
	vdl.Register((*XStructDepth2_XArray2_TypeObject)(nil))
	vdl.Register((*XStructDepth2_XArray1_Uint32)(nil))
	vdl.Register((*XStructDepth2_List_Int16)(nil))
	vdl.Register((*XStructDepth2_XList_Any)(nil))
	vdl.Register((*XStructDepth2_Set_Float64)(nil))
	vdl.Register((*XStructDepth2_XSet_XEnumBcd)(nil))
	vdl.Register((*XStructDepth2_Map_Byte_Byte)(nil))
	vdl.Register((*XStructDepth2_Map_Uint32_Uint32)(nil))
	vdl.Register((*XStructDepth2_XStructDepth1_All)(nil))
	vdl.Register((*XStructDepth2_XStructDepth1_Bool)(nil))
	vdl.Register((*XStructDepth2_XUnionDepth1_All)(nil))
	vdl.Register((*XStructDepth2_XUnionDepth1_Float64)(nil))
	vdl.Register((*XStructDepth2_OptXStructDepth1_XEnumBcd)(nil))
	vdl.Register((*XStructDepth2_OptXStructDepth1_XUint16)(nil))
	vdl.Register((*XUnionDepth2_All)(nil))
	vdl.Register((*XUnionDepth2_XArray1_String)(nil))
	vdl.Register((*XUnionDepth2_XArray2_XByte)(nil))
	vdl.Register((*XUnionDepth2_XList_XByte)(nil))
	vdl.Register((*XUnionDepth2_XList_OptXNamedError)(nil))
	vdl.Register((*XUnionDepth2_XSet_XBool)(nil))
	vdl.Register((*XUnionDepth2_XSet_XNamedError)(nil))
	vdl.Register((*XUnionDepth2_Map_XBool_XBool)(nil))
	vdl.Register((*XUnionDepth2_XMap_XBool_XBool)(nil))
	vdl.Register((*XUnionDepth2_XStructDepth1_All)(nil))
	vdl.Register((*XUnionDepth2_XStructDepth1_Int8)(nil))
	vdl.Register((*XUnionDepth2_XUnionDepth1_All)(nil))
	vdl.Register((*XUnionDepth2_XUnionDepth1_XUint32)(nil))
	vdl.Register((*XUnionDepth2_OptXStructDepth1_XEnumBcd)(nil))
	vdl.Register((*XUnionDepth2_OptXStructDepth1_XFloat32)(nil))
	vdl.Register((*XArray1_XArray1_XList_Byte)(nil))
	vdl.Register((*XArray2_List_XMap_XByte_XByte)(nil))
	vdl.Register((*XArray2_Set_XUnionDepth1_XNamedError)(nil))
	vdl.Register((*XArray3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64)(nil))
	vdl.Register((*XArray2_XStructDepth2_All)(nil))
	vdl.Register((*XArray2_XUnionDepth2_All)(nil))
	vdl.Register((*XArray3_OptXStructDepth2_Set_Float64)(nil))
	vdl.Register((*XList_XArray3_XUnionDepth1_All)(nil))
	vdl.Register((*XList_List_XMap_XByte_XByte)(nil))
	vdl.Register((*XList_XSet_XArray1_XStructEmpty)(nil))
	vdl.Register((*XList_XMap_XArray3_XBool_XArray3_XBool)(nil))
	vdl.Register((*XList_XStructDepth2_All)(nil))
	vdl.Register((*XList_XUnionDepth2_All)(nil))
	vdl.Register((*XList_OptXStructDepth2_Set_Float64)(nil))
	vdl.Register((*XSet_XArray1_XArray3_Int64)(nil))
	vdl.Register((*XSet_XStructDepth2_XStructDepth1_Bool)(nil))
	vdl.Register((*XSet_XUnionDepth2_XArray1_String)(nil))
	vdl.Register((*XMap_XArray1_XArray3_Int64_XArray1_XArray3_Int64)(nil))
	vdl.Register((*XMap_XStructDepth2_XArray1_Uint32_XStructDepth2_XArray1_Uint32)(nil))
	vdl.Register((*XMap_XUnionDepth2_XArray2_XByte_XUnionDepth2_XArray2_XByte)(nil))
	vdl.Register((*XStructDepth3_All)(nil))
	vdl.Register((*XStructDepth3_XArray1_Set_XEnumBcd)(nil))
	vdl.Register((*XStructDepth3_List_XUnionDepth1_All)(nil))
	vdl.Register((*XStructDepth3_XSet_XArray1_XStructEmpty)(nil))
	vdl.Register((*XStructDepth3_Map_XUnionDepth1_Float64_XUnionDepth1_Float64)(nil))
	vdl.Register((*XStructDepth3_XStructDepth2_All)(nil))
	vdl.Register((*XStructDepth3_XUnionDepth2_All)(nil))
	vdl.Register((*XStructDepth3_OptXStructDepth2_Set_Float64)(nil))
	vdl.Register((*XUnionDepth3_All)(nil))
	vdl.Register((*XUnionDepth3_XArray3_OptXStructDepth1_XFloat32)(nil))
	vdl.Register((*XUnionDepth3_List_XList_Error)(nil))
	vdl.Register((*XUnionDepth3_Set_XStructDepth1_String)(nil))
	vdl.Register((*XUnionDepth3_XMap_XStructDepth1_XBool_XStructDepth1_XBool)(nil))
	vdl.Register((*XUnionDepth3_XStructDepth2_All)(nil))
	vdl.Register((*XUnionDepth3_XUnionDepth2_All)(nil))
	vdl.Register((*XUnionDepth3_OptXStructDepth2_Set_Float64)(nil))
	vdl.Register((*XSelfCycle)(nil))
	vdl.Register((*XMutualCycleB)(nil))
	vdl.Register((*XMutualCycleA)(nil))

	// Initialize type definitions.
	__VDLType_struct_1 = vdl.TypeOf((*vdlEntry)(nil)).Elem()
	__VDLType_bool_2 = vdl.TypeOf((*VBool)(nil))
	__VDLType_string_3 = vdl.TypeOf((*VString)(nil))
	__VDLType_byte_4 = vdl.TypeOf((*VByte)(nil))
	__VDLType_enum_5 = vdl.TypeOf((*VEnumAbc)(nil))
	__VDLType_enum_6 = vdl.TypeOf((*VEnumBcd)(nil))
	__VDLType_struct_7 = vdl.TypeOf((*VStructEmpty)(nil)).Elem()
	__VDLType_struct_8 = vdl.TypeOf((*VNamedError)(nil)).Elem()
	__VDLType_uint16_9 = vdl.TypeOf((*VUint16)(nil))
	__VDLType_uint32_10 = vdl.TypeOf((*VUint32)(nil))
	__VDLType_uint64_11 = vdl.TypeOf((*VUint64)(nil))
	__VDLType_int8_12 = vdl.TypeOf((*VInt8)(nil))
	__VDLType_int16_13 = vdl.TypeOf((*VInt16)(nil))
	__VDLType_int32_14 = vdl.TypeOf((*VInt32)(nil))
	__VDLType_int64_15 = vdl.TypeOf((*VInt64)(nil))
	__VDLType_float32_16 = vdl.TypeOf((*VFloat32)(nil))
	__VDLType_float64_17 = vdl.TypeOf((*VFloat64)(nil))
	__VDLType_array_18 = vdl.TypeOf((*VArray3_Any)(nil))
	__VDLType_array_19 = vdl.TypeOf((*VArray3_Bool)(nil))
	__VDLType_array_20 = vdl.TypeOf((*VArray3_VBool)(nil))
	__VDLType_array_21 = vdl.TypeOf((*VArray1_String)(nil))
	__VDLType_array_22 = vdl.TypeOf((*VArray3_VString)(nil))
	__VDLType_array_23 = vdl.TypeOf((*VArray2_TypeObject)(nil))
	__VDLType_array_24 = vdl.TypeOf((*VArray1_Byte)(nil))
	__VDLType_array_25 = vdl.TypeOf((*VArray2_VByte)(nil))
	__VDLType_array_26 = vdl.TypeOf((*VArray2_VEnumAbc)(nil))
	__VDLType_array_27 = vdl.TypeOf((*VArray2_VEnumBcd)(nil))
	__VDLType_array_28 = vdl.TypeOf((*VArray1_VStructEmpty)(nil))
	__VDLType_array_29 = vdl.TypeOf((*VArray1_VNamedError)(nil))
	__VDLType_array_30 = vdl.TypeOf((*VArray2_Error)(nil))
	__VDLType_array_31 = vdl.TypeOf((*VArray1_Uint32)(nil))
	__VDLType_array_32 = vdl.TypeOf((*VArray3_Uint64)(nil))
	__VDLType_array_33 = vdl.TypeOf((*VArray3_Int64)(nil))
	__VDLType_array_34 = vdl.TypeOf((*VArray1_OptVStructEmpty)(nil))
	__VDLType_optional_35 = vdl.TypeOf((*VStructEmpty)(nil))
	__VDLType_array_36 = vdl.TypeOf((*VArray3_OptVNamedError)(nil))
	__VDLType_optional_37 = vdl.TypeOf((*VNamedError)(nil))
	__VDLType_list_38 = vdl.TypeOf((*VList_Any)(nil))
	__VDLType_list_39 = vdl.TypeOf((*VList_Bool)(nil))
	__VDLType_list_40 = vdl.TypeOf((*VList_VBool)(nil))
	__VDLType_list_41 = vdl.TypeOf((*VList_String)(nil))
	__VDLType_list_42 = vdl.TypeOf((*VList_VString)(nil))
	__VDLType_list_43 = vdl.TypeOf((*VList_TypeObject)(nil))
	__VDLType_list_44 = vdl.TypeOf((*VList_Byte)(nil))
	__VDLType_list_45 = vdl.TypeOf((*VList_VByte)(nil))
	__VDLType_list_46 = vdl.TypeOf((*VList_VEnumAbc)(nil))
	__VDLType_list_47 = vdl.TypeOf((*VList_VEnumBcd)(nil))
	__VDLType_list_48 = vdl.TypeOf((*VList_VStructEmpty)(nil))
	__VDLType_list_49 = vdl.TypeOf((*VList_VNamedError)(nil))
	__VDLType_list_50 = vdl.TypeOf((*VList_Error)(nil))
	__VDLType_list_51 = vdl.TypeOf((*VList_VUint16)(nil))
	__VDLType_list_52 = vdl.TypeOf((*VList_VFloat32)(nil))
	__VDLType_list_53 = vdl.TypeOf((*VList_VFloat64)(nil))
	__VDLType_list_54 = vdl.TypeOf((*VList_OptVStructEmpty)(nil))
	__VDLType_list_55 = vdl.TypeOf((*VList_OptVNamedError)(nil))
	__VDLType_set_56 = vdl.TypeOf((*VSet_Bool)(nil))
	__VDLType_set_57 = vdl.TypeOf((*VSet_VBool)(nil))
	__VDLType_set_58 = vdl.TypeOf((*VSet_String)(nil))
	__VDLType_set_59 = vdl.TypeOf((*VSet_VString)(nil))
	__VDLType_set_60 = vdl.TypeOf((*VSet_Byte)(nil))
	__VDLType_set_61 = vdl.TypeOf((*VSet_VByte)(nil))
	__VDLType_set_62 = vdl.TypeOf((*VSet_VEnumAbc)(nil))
	__VDLType_set_63 = vdl.TypeOf((*VSet_VEnumBcd)(nil))
	__VDLType_set_64 = vdl.TypeOf((*VSet_VStructEmpty)(nil))
	__VDLType_set_65 = vdl.TypeOf((*VSet_VNamedError)(nil))
	__VDLType_set_66 = vdl.TypeOf((*VSet_Uint64)(nil))
	__VDLType_set_67 = vdl.TypeOf((*VSet_VUint64)(nil))
	__VDLType_set_68 = vdl.TypeOf((*VSet_Float32)(nil))
	__VDLType_map_69 = vdl.TypeOf((*VMap_Bool_Bool)(nil))
	__VDLType_map_70 = vdl.TypeOf((*VMap_VBool_VBool)(nil))
	__VDLType_map_71 = vdl.TypeOf((*VMap_String_String)(nil))
	__VDLType_map_72 = vdl.TypeOf((*VMap_VString_VString)(nil))
	__VDLType_map_73 = vdl.TypeOf((*VMap_Byte_Byte)(nil))
	__VDLType_map_74 = vdl.TypeOf((*VMap_VByte_VByte)(nil))
	__VDLType_map_75 = vdl.TypeOf((*VMap_VEnumAbc_VEnumAbc)(nil))
	__VDLType_map_76 = vdl.TypeOf((*VMap_VEnumBcd_VEnumBcd)(nil))
	__VDLType_map_77 = vdl.TypeOf((*VMap_VStructEmpty_VStructEmpty)(nil))
	__VDLType_map_78 = vdl.TypeOf((*VMap_VNamedError_VNamedError)(nil))
	__VDLType_map_79 = vdl.TypeOf((*VMap_VUint32_VUint32)(nil))
	__VDLType_map_80 = vdl.TypeOf((*VMap_VInt32_VInt32)(nil))
	__VDLType_map_81 = vdl.TypeOf((*VMap_Int64_Int64)(nil))
	__VDLType_struct_82 = vdl.TypeOf((*VStructDepth1_All)(nil)).Elem()
	__VDLType_struct_83 = vdl.TypeOf((*VStructDepth1_Any)(nil)).Elem()
	__VDLType_struct_84 = vdl.TypeOf((*VStructDepth1_Bool)(nil)).Elem()
	__VDLType_struct_85 = vdl.TypeOf((*VStructDepth1_VBool)(nil)).Elem()
	__VDLType_struct_86 = vdl.TypeOf((*VStructDepth1_String)(nil)).Elem()
	__VDLType_struct_87 = vdl.TypeOf((*VStructDepth1_VString)(nil)).Elem()
	__VDLType_struct_88 = vdl.TypeOf((*VStructDepth1_TypeObject)(nil)).Elem()
	__VDLType_struct_89 = vdl.TypeOf((*VStructDepth1_Byte)(nil)).Elem()
	__VDLType_struct_90 = vdl.TypeOf((*VStructDepth1_VByte)(nil)).Elem()
	__VDLType_struct_91 = vdl.TypeOf((*VStructDepth1_VEnumAbc)(nil)).Elem()
	__VDLType_struct_92 = vdl.TypeOf((*VStructDepth1_VEnumBcd)(nil)).Elem()
	__VDLType_struct_93 = vdl.TypeOf((*VStructDepth1_VStructEmpty)(nil)).Elem()
	__VDLType_struct_94 = vdl.TypeOf((*VStructDepth1_VNamedError)(nil)).Elem()
	__VDLType_struct_95 = vdl.TypeOf((*VStructDepth1_Error)(nil)).Elem()
	__VDLType_struct_96 = vdl.TypeOf((*VStructDepth1_Uint16)(nil)).Elem()
	__VDLType_struct_97 = vdl.TypeOf((*VStructDepth1_VUint16)(nil)).Elem()
	__VDLType_struct_98 = vdl.TypeOf((*VStructDepth1_Uint32)(nil)).Elem()
	__VDLType_struct_99 = vdl.TypeOf((*VStructDepth1_VUint32)(nil)).Elem()
	__VDLType_struct_100 = vdl.TypeOf((*VStructDepth1_Uint64)(nil)).Elem()
	__VDLType_struct_101 = vdl.TypeOf((*VStructDepth1_VUint64)(nil)).Elem()
	__VDLType_struct_102 = vdl.TypeOf((*VStructDepth1_Int8)(nil)).Elem()
	__VDLType_struct_103 = vdl.TypeOf((*VStructDepth1_VInt8)(nil)).Elem()
	__VDLType_struct_104 = vdl.TypeOf((*VStructDepth1_Int16)(nil)).Elem()
	__VDLType_struct_105 = vdl.TypeOf((*VStructDepth1_VInt16)(nil)).Elem()
	__VDLType_struct_106 = vdl.TypeOf((*VStructDepth1_Int32)(nil)).Elem()
	__VDLType_struct_107 = vdl.TypeOf((*VStructDepth1_VInt32)(nil)).Elem()
	__VDLType_struct_108 = vdl.TypeOf((*VStructDepth1_Int64)(nil)).Elem()
	__VDLType_struct_109 = vdl.TypeOf((*VStructDepth1_VInt64)(nil)).Elem()
	__VDLType_struct_110 = vdl.TypeOf((*VStructDepth1_Float32)(nil)).Elem()
	__VDLType_struct_111 = vdl.TypeOf((*VStructDepth1_VFloat32)(nil)).Elem()
	__VDLType_struct_112 = vdl.TypeOf((*VStructDepth1_Float64)(nil)).Elem()
	__VDLType_struct_113 = vdl.TypeOf((*VStructDepth1_VFloat64)(nil)).Elem()
	__VDLType_struct_114 = vdl.TypeOf((*VStructDepth1_OptVStructEmpty)(nil)).Elem()
	__VDLType_struct_115 = vdl.TypeOf((*VStructDepth1_OptVNamedError)(nil)).Elem()
	__VDLType_union_116 = vdl.TypeOf((*VUnionDepth1_All)(nil))
	__VDLType_union_117 = vdl.TypeOf((*VUnionDepth1_Any)(nil))
	__VDLType_union_118 = vdl.TypeOf((*VUnionDepth1_Bool)(nil))
	__VDLType_union_119 = vdl.TypeOf((*VUnionDepth1_VBool)(nil))
	__VDLType_union_120 = vdl.TypeOf((*VUnionDepth1_String)(nil))
	__VDLType_union_121 = vdl.TypeOf((*VUnionDepth1_VString)(nil))
	__VDLType_union_122 = vdl.TypeOf((*VUnionDepth1_TypeObject)(nil))
	__VDLType_union_123 = vdl.TypeOf((*VUnionDepth1_Byte)(nil))
	__VDLType_union_124 = vdl.TypeOf((*VUnionDepth1_VByte)(nil))
	__VDLType_union_125 = vdl.TypeOf((*VUnionDepth1_VEnumAbc)(nil))
	__VDLType_union_126 = vdl.TypeOf((*VUnionDepth1_VEnumBcd)(nil))
	__VDLType_union_127 = vdl.TypeOf((*VUnionDepth1_VStructEmpty)(nil))
	__VDLType_union_128 = vdl.TypeOf((*VUnionDepth1_VNamedError)(nil))
	__VDLType_union_129 = vdl.TypeOf((*VUnionDepth1_Error)(nil))
	__VDLType_union_130 = vdl.TypeOf((*VUnionDepth1_Uint16)(nil))
	__VDLType_union_131 = vdl.TypeOf((*VUnionDepth1_VUint16)(nil))
	__VDLType_union_132 = vdl.TypeOf((*VUnionDepth1_Uint32)(nil))
	__VDLType_union_133 = vdl.TypeOf((*VUnionDepth1_VUint32)(nil))
	__VDLType_union_134 = vdl.TypeOf((*VUnionDepth1_Uint64)(nil))
	__VDLType_union_135 = vdl.TypeOf((*VUnionDepth1_VUint64)(nil))
	__VDLType_union_136 = vdl.TypeOf((*VUnionDepth1_Int8)(nil))
	__VDLType_union_137 = vdl.TypeOf((*VUnionDepth1_VInt8)(nil))
	__VDLType_union_138 = vdl.TypeOf((*VUnionDepth1_Int16)(nil))
	__VDLType_union_139 = vdl.TypeOf((*VUnionDepth1_VInt16)(nil))
	__VDLType_union_140 = vdl.TypeOf((*VUnionDepth1_Int32)(nil))
	__VDLType_union_141 = vdl.TypeOf((*VUnionDepth1_VInt32)(nil))
	__VDLType_union_142 = vdl.TypeOf((*VUnionDepth1_Int64)(nil))
	__VDLType_union_143 = vdl.TypeOf((*VUnionDepth1_VInt64)(nil))
	__VDLType_union_144 = vdl.TypeOf((*VUnionDepth1_Float32)(nil))
	__VDLType_union_145 = vdl.TypeOf((*VUnionDepth1_VFloat32)(nil))
	__VDLType_union_146 = vdl.TypeOf((*VUnionDepth1_Float64)(nil))
	__VDLType_union_147 = vdl.TypeOf((*VUnionDepth1_VFloat64)(nil))
	__VDLType_union_148 = vdl.TypeOf((*VUnionDepth1_OptVStructEmpty)(nil))
	__VDLType_union_149 = vdl.TypeOf((*VUnionDepth1_OptVNamedError)(nil))
	__VDLType_array_150 = vdl.TypeOf((*VArray1_VArray3_Int64)(nil))
	__VDLType_array_151 = vdl.TypeOf((*VArray1_VList_Byte)(nil))
	__VDLType_array_152 = vdl.TypeOf((*VArray1_Set_VEnumBcd)(nil))
	__VDLType_set_153 = vdl.TypeOf((*map[VEnumBcd]struct{})(nil))
	__VDLType_array_154 = vdl.TypeOf((*VArray2_Map_Byte_Byte)(nil))
	__VDLType_map_155 = vdl.TypeOf((*map[byte]byte)(nil))
	__VDLType_array_156 = vdl.TypeOf((*VArray2_VStructDepth1_All)(nil))
	__VDLType_array_157 = vdl.TypeOf((*VArray3_VUnionDepth1_All)(nil))
	__VDLType_array_158 = vdl.TypeOf((*VArray3_OptVStructDepth1_VFloat32)(nil))
	__VDLType_optional_159 = vdl.TypeOf((*VStructDepth1_VFloat32)(nil))
	__VDLType_list_160 = vdl.TypeOf((*VList_VArray1_VStructEmpty)(nil))
	__VDLType_list_161 = vdl.TypeOf((*VList_List_VString)(nil))
	__VDLType_list_162 = vdl.TypeOf((*[]VString)(nil))
	__VDLType_list_163 = vdl.TypeOf((*VList_Set_VBool)(nil))
	__VDLType_set_164 = vdl.TypeOf((*map[VBool]struct{})(nil))
	__VDLType_list_165 = vdl.TypeOf((*VList_VMap_Byte_Byte)(nil))
	__VDLType_list_166 = vdl.TypeOf((*VList_VStructDepth1_All)(nil))
	__VDLType_list_167 = vdl.TypeOf((*VList_VUnionDepth1_All)(nil))
	__VDLType_list_168 = vdl.TypeOf((*VList_OptVStructDepth1_VEnumBcd)(nil))
	__VDLType_optional_169 = vdl.TypeOf((*VStructDepth1_VEnumBcd)(nil))
	__VDLType_set_170 = vdl.TypeOf((*VSet_VArray1_VStructEmpty)(nil))
	__VDLType_set_171 = vdl.TypeOf((*VSet_VStructDepth1_VFloat64)(nil))
	__VDLType_set_172 = vdl.TypeOf((*VSet_VUnionDepth1_VInt8)(nil))
	__VDLType_map_173 = vdl.TypeOf((*VMap_VArray3_VBool_VArray3_VBool)(nil))
	__VDLType_map_174 = vdl.TypeOf((*VMap_VStructDepth1_VBool_VStructDepth1_VBool)(nil))
	__VDLType_map_175 = vdl.TypeOf((*VMap_VUnionDepth1_VUint64_VUnionDepth1_VUint64)(nil))
	__VDLType_struct_176 = vdl.TypeOf((*VStructDepth2_All)(nil)).Elem()
	__VDLType_list_177 = vdl.TypeOf((*[]int16)(nil))
	__VDLType_set_178 = vdl.TypeOf((*map[float64]struct{})(nil))
	__VDLType_map_179 = vdl.TypeOf((*map[uint32]uint32)(nil))
	__VDLType_optional_180 = vdl.TypeOf((*VStructDepth1_VUint16)(nil))
	__VDLType_struct_181 = vdl.TypeOf((*VStructDepth2_VArray2_TypeObject)(nil)).Elem()
	__VDLType_struct_182 = vdl.TypeOf((*VStructDepth2_VArray1_Uint32)(nil)).Elem()
	__VDLType_struct_183 = vdl.TypeOf((*VStructDepth2_List_Int16)(nil)).Elem()
	__VDLType_struct_184 = vdl.TypeOf((*VStructDepth2_VList_Any)(nil)).Elem()
	__VDLType_struct_185 = vdl.TypeOf((*VStructDepth2_Set_Float64)(nil)).Elem()
	__VDLType_struct_186 = vdl.TypeOf((*VStructDepth2_VSet_VEnumBcd)(nil)).Elem()
	__VDLType_struct_187 = vdl.TypeOf((*VStructDepth2_Map_Byte_Byte)(nil)).Elem()
	__VDLType_struct_188 = vdl.TypeOf((*VStructDepth2_Map_Uint32_Uint32)(nil)).Elem()
	__VDLType_struct_189 = vdl.TypeOf((*VStructDepth2_VStructDepth1_All)(nil)).Elem()
	__VDLType_struct_190 = vdl.TypeOf((*VStructDepth2_VStructDepth1_Bool)(nil)).Elem()
	__VDLType_struct_191 = vdl.TypeOf((*VStructDepth2_VUnionDepth1_All)(nil)).Elem()
	__VDLType_struct_192 = vdl.TypeOf((*VStructDepth2_VUnionDepth1_Float64)(nil)).Elem()
	__VDLType_struct_193 = vdl.TypeOf((*VStructDepth2_OptVStructDepth1_VEnumBcd)(nil)).Elem()
	__VDLType_struct_194 = vdl.TypeOf((*VStructDepth2_OptVStructDepth1_VUint16)(nil)).Elem()
	__VDLType_union_195 = vdl.TypeOf((*VUnionDepth2_All)(nil))
	__VDLType_map_196 = vdl.TypeOf((*map[VBool]VBool)(nil))
	__VDLType_union_197 = vdl.TypeOf((*VUnionDepth2_VArray1_String)(nil))
	__VDLType_union_198 = vdl.TypeOf((*VUnionDepth2_VArray2_VByte)(nil))
	__VDLType_union_199 = vdl.TypeOf((*VUnionDepth2_VList_VByte)(nil))
	__VDLType_union_200 = vdl.TypeOf((*VUnionDepth2_VList_OptVNamedError)(nil))
	__VDLType_union_201 = vdl.TypeOf((*VUnionDepth2_VSet_VBool)(nil))
	__VDLType_union_202 = vdl.TypeOf((*VUnionDepth2_VSet_VNamedError)(nil))
	__VDLType_union_203 = vdl.TypeOf((*VUnionDepth2_Map_VBool_VBool)(nil))
	__VDLType_union_204 = vdl.TypeOf((*VUnionDepth2_VMap_VBool_VBool)(nil))
	__VDLType_union_205 = vdl.TypeOf((*VUnionDepth2_VStructDepth1_All)(nil))
	__VDLType_union_206 = vdl.TypeOf((*VUnionDepth2_VStructDepth1_Int8)(nil))
	__VDLType_union_207 = vdl.TypeOf((*VUnionDepth2_VUnionDepth1_All)(nil))
	__VDLType_union_208 = vdl.TypeOf((*VUnionDepth2_VUnionDepth1_VUint32)(nil))
	__VDLType_union_209 = vdl.TypeOf((*VUnionDepth2_OptVStructDepth1_VEnumBcd)(nil))
	__VDLType_union_210 = vdl.TypeOf((*VUnionDepth2_OptVStructDepth1_VFloat32)(nil))
	__VDLType_array_211 = vdl.TypeOf((*VArray1_VArray1_VList_Byte)(nil))
	__VDLType_array_212 = vdl.TypeOf((*VArray2_List_VMap_VByte_VByte)(nil))
	__VDLType_list_213 = vdl.TypeOf((*[]VMap_VByte_VByte)(nil))
	__VDLType_array_214 = vdl.TypeOf((*VArray2_Set_VUnionDepth1_VNamedError)(nil))
	__VDLType_set_215 = vdl.TypeOf((*map[VUnionDepth1_VNamedError]struct{})(nil))
	__VDLType_array_216 = vdl.TypeOf((*VArray3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64)(nil))
	__VDLType_map_217 = vdl.TypeOf((*map[VUnionDepth1_Float64]VUnionDepth1_Float64)(nil))
	__VDLType_array_218 = vdl.TypeOf((*VArray2_VStructDepth2_All)(nil))
	__VDLType_array_219 = vdl.TypeOf((*VArray2_VUnionDepth2_All)(nil))
	__VDLType_array_220 = vdl.TypeOf((*VArray3_OptVStructDepth2_Set_Float64)(nil))
	__VDLType_optional_221 = vdl.TypeOf((*VStructDepth2_Set_Float64)(nil))
	__VDLType_list_222 = vdl.TypeOf((*VList_VArray3_VUnionDepth1_All)(nil))
	__VDLType_list_223 = vdl.TypeOf((*VList_List_VMap_VByte_VByte)(nil))
	__VDLType_list_224 = vdl.TypeOf((*VList_VSet_VArray1_VStructEmpty)(nil))
	__VDLType_list_225 = vdl.TypeOf((*VList_VMap_VArray3_VBool_VArray3_VBool)(nil))
	__VDLType_list_226 = vdl.TypeOf((*VList_VStructDepth2_All)(nil))
	__VDLType_list_227 = vdl.TypeOf((*VList_VUnionDepth2_All)(nil))
	__VDLType_list_228 = vdl.TypeOf((*VList_OptVStructDepth2_Set_Float64)(nil))
	__VDLType_set_229 = vdl.TypeOf((*VSet_VArray1_VArray3_Int64)(nil))
	__VDLType_set_230 = vdl.TypeOf((*VSet_VStructDepth2_VStructDepth1_Bool)(nil))
	__VDLType_set_231 = vdl.TypeOf((*VSet_VUnionDepth2_VArray1_String)(nil))
	__VDLType_map_232 = vdl.TypeOf((*VMap_VArray1_VArray3_Int64_VArray1_VArray3_Int64)(nil))
	__VDLType_map_233 = vdl.TypeOf((*VMap_VStructDepth2_VArray1_Uint32_VStructDepth2_VArray1_Uint32)(nil))
	__VDLType_map_234 = vdl.TypeOf((*VMap_VUnionDepth2_VArray2_VByte_VUnionDepth2_VArray2_VByte)(nil))
	__VDLType_struct_235 = vdl.TypeOf((*VStructDepth3_All)(nil)).Elem()
	__VDLType_list_236 = vdl.TypeOf((*[]VUnionDepth1_All)(nil))
	__VDLType_struct_237 = vdl.TypeOf((*VStructDepth3_VArray1_Set_VEnumBcd)(nil)).Elem()
	__VDLType_struct_238 = vdl.TypeOf((*VStructDepth3_List_VUnionDepth1_All)(nil)).Elem()
	__VDLType_struct_239 = vdl.TypeOf((*VStructDepth3_VSet_VArray1_VStructEmpty)(nil)).Elem()
	__VDLType_struct_240 = vdl.TypeOf((*VStructDepth3_Map_VUnionDepth1_Float64_VUnionDepth1_Float64)(nil)).Elem()
	__VDLType_struct_241 = vdl.TypeOf((*VStructDepth3_VStructDepth2_All)(nil)).Elem()
	__VDLType_struct_242 = vdl.TypeOf((*VStructDepth3_VUnionDepth2_All)(nil)).Elem()
	__VDLType_struct_243 = vdl.TypeOf((*VStructDepth3_OptVStructDepth2_Set_Float64)(nil)).Elem()
	__VDLType_union_244 = vdl.TypeOf((*VUnionDepth3_All)(nil))
	__VDLType_list_245 = vdl.TypeOf((*[]VList_Error)(nil))
	__VDLType_set_246 = vdl.TypeOf((*map[VStructDepth1_String]struct{})(nil))
	__VDLType_union_247 = vdl.TypeOf((*VUnionDepth3_VArray3_OptVStructDepth1_VFloat32)(nil))
	__VDLType_union_248 = vdl.TypeOf((*VUnionDepth3_List_VList_Error)(nil))
	__VDLType_union_249 = vdl.TypeOf((*VUnionDepth3_Set_VStructDepth1_String)(nil))
	__VDLType_union_250 = vdl.TypeOf((*VUnionDepth3_VMap_VStructDepth1_VBool_VStructDepth1_VBool)(nil))
	__VDLType_union_251 = vdl.TypeOf((*VUnionDepth3_VStructDepth2_All)(nil))
	__VDLType_union_252 = vdl.TypeOf((*VUnionDepth3_VUnionDepth2_All)(nil))
	__VDLType_union_253 = vdl.TypeOf((*VUnionDepth3_OptVStructDepth2_Set_Float64)(nil))
	__VDLType_struct_254 = vdl.TypeOf((*VSelfCycle)(nil)).Elem()
	__VDLType_optional_255 = vdl.TypeOf((*VSelfCycle)(nil))
	__VDLType_struct_256 = vdl.TypeOf((*VMutualCycleB)(nil)).Elem()
	__VDLType_optional_257 = vdl.TypeOf((*VMutualCycleA)(nil))
	__VDLType_struct_258 = vdl.TypeOf((*VMutualCycleA)(nil)).Elem()
	__VDLType_optional_259 = vdl.TypeOf((*VMutualCycleB)(nil))
	__VDLType_bool_260 = vdl.TypeOf((*VWireBoolNBool)(nil))
	__VDLType_bool_261 = vdl.TypeOf((*VWireBoolNString)(nil))
	__VDLType_bool_262 = vdl.TypeOf((*VWireBoolNStruct)(nil))
	__VDLType_int32_263 = vdl.TypeOf((*VWireIntNInt)(nil))
	__VDLType_int32_264 = vdl.TypeOf((*VWireIntNString)(nil))
	__VDLType_int32_265 = vdl.TypeOf((*VWireIntNStruct)(nil))
	__VDLType_string_266 = vdl.TypeOf((*VWireStringNString)(nil))
	__VDLType_string_267 = vdl.TypeOf((*VWireStringNStruct)(nil))
	__VDLType_array_268 = vdl.TypeOf((*VWireArrayNString)(nil))
	__VDLType_array_269 = vdl.TypeOf((*VWireArrayNStruct)(nil))
	__VDLType_list_270 = vdl.TypeOf((*VWireListNString)(nil))
	__VDLType_list_271 = vdl.TypeOf((*VWireListNStruct)(nil))
	__VDLType_struct_272 = vdl.TypeOf((*VWireStructNString)(nil)).Elem()
	__VDLType_struct_273 = vdl.TypeOf((*VWireStructNStruct)(nil)).Elem()
	__VDLType_struct_274 = vdl.TypeOf((*VWireStructNArray)(nil)).Elem()
	__VDLType_struct_275 = vdl.TypeOf((*VWireStructNSlice)(nil)).Elem()
	__VDLType_struct_276 = vdl.TypeOf((*VWireStructNPointer)(nil)).Elem()
	__VDLType_struct_277 = vdl.TypeOf((*VWireStructNIface)(nil)).Elem()
	__VDLType_union_278 = vdl.TypeOf((*VWireUnionNString)(nil))
	__VDLType_union_279 = vdl.TypeOf((*VWireUnionNStruct)(nil))
	__VDLType_union_280 = vdl.TypeOf((*VWireUnionNArray)(nil))
	__VDLType_union_281 = vdl.TypeOf((*VWireUnionNSlice)(nil))
	__VDLType_union_282 = vdl.TypeOf((*VWireUnionNPointer)(nil))
	__VDLType_union_283 = vdl.TypeOf((*VWireUnionNIface)(nil))
	__VDLType_struct_284 = vdl.TypeOf((*VWireAll)(nil)).Elem()
	__VDLType_list_285 = vdl.TypeOf((*[]bool)(nil))
	__VDLType_list_286 = vdl.TypeOf((*[]VByte)(nil))
	__VDLType_set_287 = vdl.TypeOf((*map[VStructDepth2_VStructDepth1_Bool]struct{})(nil))
	__VDLType_list_288 = vdl.TypeOf((*[]uint32)(nil))
	__VDLType_list_289 = vdl.TypeOf((*[]*VStructDepth1_VEnumBcd)(nil))
	__VDLType_struct_290 = vdl.TypeOf((*XStructDepth1_Uint32)(nil)).Elem()
	__VDLType_float32_291 = vdl.TypeOf((*XFloat32)(nil))
	__VDLType_list_292 = vdl.TypeOf((*XList_XBool)(nil))
	__VDLType_list_293 = vdl.TypeOf((*XList_XStructDepth2_All)(nil))
	__VDLType_array_294 = vdl.TypeOf((*XArray3_OptXStructDepth2_Set_Float64)(nil))
	__VDLType_union_295 = vdl.TypeOf((*XUnionDepth1_Int16)(nil))
	__VDLType_struct_296 = vdl.TypeOf((*XStructDepth1_XInt16)(nil)).Elem()
	__VDLType_union_297 = vdl.TypeOf((*XUnionDepth1_Bool)(nil))
	__VDLType_uint16_298 = vdl.TypeOf((*XUint16)(nil))
	__VDLType_list_299 = vdl.TypeOf((*XList_XMap_Byte_Byte)(nil))
	__VDLType_set_300 = vdl.TypeOf((*XSet_XStructEmpty)(nil))
	__VDLType_set_301 = vdl.TypeOf((*map[string]struct{})(nil))
	__VDLType_list_302 = vdl.TypeOf((*XList_XUint16)(nil))
	__VDLType_list_303 = vdl.TypeOf((*XList_Byte)(nil))
	__VDLType_array_304 = vdl.TypeOf((*XArray2_XEnumBcd)(nil))
	__VDLType_union_305 = vdl.TypeOf((*XUnionDepth2_XStructDepth1_Int8)(nil))
	__VDLType_struct_306 = vdl.TypeOf((*XStructEmpty)(nil)).Elem()
	__VDLType_union_307 = vdl.TypeOf((*XUnionDepth1_Uint32)(nil))
	__VDLType_list_308 = vdl.TypeOf((*XList_Any)(nil))
	__VDLType_struct_309 = vdl.TypeOf((*XStructDepth1_XInt32)(nil)).Elem()
	__VDLType_map_310 = vdl.TypeOf((*XMap_XStructEmpty_XStructEmpty)(nil))
	__VDLType_map_311 = vdl.TypeOf((*XMap_String_String)(nil))
	__VDLType_list_312 = vdl.TypeOf((*[]XEnumAbc)(nil))
	__VDLType_array_313 = vdl.TypeOf((*XArray1_XStructEmpty)(nil))
	__VDLType_union_314 = vdl.TypeOf((*XUnionDepth2_OptXStructDepth1_XFloat32)(nil))

	return struct{}{}
}
