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

// Code generated by protoc-gen-go. DO NOT EDIT.
// source: internal/testprotos/editionsfuzztest/test2editions.proto

package editionsfuzztest

import (
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	_ "google.golang.org/protobuf/types/gofeaturespb"
	reflect "reflect"
	sync "sync"
	unsafe "unsafe"
)

type TestAllTypesProto2Editions_NestedEnum int32

const (
	TestAllTypesProto2Editions_FOO TestAllTypesProto2Editions_NestedEnum = 0
	TestAllTypesProto2Editions_BAR TestAllTypesProto2Editions_NestedEnum = 1
	TestAllTypesProto2Editions_BAZ TestAllTypesProto2Editions_NestedEnum = 2
	TestAllTypesProto2Editions_NEG TestAllTypesProto2Editions_NestedEnum = -1 // Intentionally negative.
)

// Enum value maps for TestAllTypesProto2Editions_NestedEnum.
var (
	TestAllTypesProto2Editions_NestedEnum_name = map[int32]string{
		0:  "FOO",
		1:  "BAR",
		2:  "BAZ",
		-1: "NEG",
	}
	TestAllTypesProto2Editions_NestedEnum_value = map[string]int32{
		"FOO": 0,
		"BAR": 1,
		"BAZ": 2,
		"NEG": -1,
	}
)

func (x TestAllTypesProto2Editions_NestedEnum) Enum() *TestAllTypesProto2Editions_NestedEnum {
	p := new(TestAllTypesProto2Editions_NestedEnum)
	*p = x
	return p
}

func (x TestAllTypesProto2Editions_NestedEnum) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (TestAllTypesProto2Editions_NestedEnum) Descriptor() protoreflect.EnumDescriptor {
	return file_internal_testprotos_editionsfuzztest_test2editions_proto_enumTypes[0].Descriptor()
}

func (TestAllTypesProto2Editions_NestedEnum) Type() protoreflect.EnumType {
	return &file_internal_testprotos_editionsfuzztest_test2editions_proto_enumTypes[0]
}

func (x TestAllTypesProto2Editions_NestedEnum) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Do not use.
func (x *TestAllTypesProto2Editions_NestedEnum) UnmarshalJSON(b []byte) error {
	num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
	if err != nil {
		return err
	}
	*x = TestAllTypesProto2Editions_NestedEnum(num)
	return nil
}

// Deprecated: Use TestAllTypesProto2Editions_NestedEnum.Descriptor instead.
func (TestAllTypesProto2Editions_NestedEnum) EnumDescriptor() ([]byte, []int) {
	return file_internal_testprotos_editionsfuzztest_test2editions_proto_rawDescGZIP(), []int{0, 0}
}

type TestAllTypesProto2Editions struct {
	state                  protoimpl.MessageState                               `protogen:"open.v1"`
	OptionalInt32          *int32                                               `protobuf:"varint,1,opt,name=optional_int32,json=optionalInt32" json:"optional_int32,omitempty"`
	OptionalInt64          *int64                                               `protobuf:"varint,2,opt,name=optional_int64,json=optionalInt64" json:"optional_int64,omitempty"`
	OptionalUint32         *uint32                                              `protobuf:"varint,3,opt,name=optional_uint32,json=optionalUint32" json:"optional_uint32,omitempty"`
	OptionalUint64         *uint64                                              `protobuf:"varint,4,opt,name=optional_uint64,json=optionalUint64" json:"optional_uint64,omitempty"`
	OptionalSint32         *int32                                               `protobuf:"zigzag32,5,opt,name=optional_sint32,json=optionalSint32" json:"optional_sint32,omitempty"`
	OptionalSint64         *int64                                               `protobuf:"zigzag64,6,opt,name=optional_sint64,json=optionalSint64" json:"optional_sint64,omitempty"`
	OptionalFixed32        *uint32                                              `protobuf:"fixed32,7,opt,name=optional_fixed32,json=optionalFixed32" json:"optional_fixed32,omitempty"`
	OptionalFixed64        *uint64                                              `protobuf:"fixed64,8,opt,name=optional_fixed64,json=optionalFixed64" json:"optional_fixed64,omitempty"`
	OptionalSfixed32       *int32                                               `protobuf:"fixed32,9,opt,name=optional_sfixed32,json=optionalSfixed32" json:"optional_sfixed32,omitempty"`
	OptionalSfixed64       *int64                                               `protobuf:"fixed64,10,opt,name=optional_sfixed64,json=optionalSfixed64" json:"optional_sfixed64,omitempty"`
	OptionalFloat          *float32                                             `protobuf:"fixed32,11,opt,name=optional_float,json=optionalFloat" json:"optional_float,omitempty"`
	OptionalDouble         *float64                                             `protobuf:"fixed64,12,opt,name=optional_double,json=optionalDouble" json:"optional_double,omitempty"`
	OptionalBool           *bool                                                `protobuf:"varint,13,opt,name=optional_bool,json=optionalBool" json:"optional_bool,omitempty"`
	OptionalString         *string                                              `protobuf:"bytes,14,opt,name=optional_string,json=optionalString" json:"optional_string,omitempty"`
	OptionalBytes          []byte                                               `protobuf:"bytes,15,opt,name=optional_bytes,json=optionalBytes" json:"optional_bytes,omitempty"`
	Optionalgroup          *TestAllTypesProto2Editions_OptionalGroup            `protobuf:"group,16,opt,name=OptionalGroup,json=optionalgroup" json:"optionalgroup,omitempty"`
	OptionalNestedMessage  *TestAllTypesProto2Editions_NestedMessage            `protobuf:"bytes,18,opt,name=optional_nested_message,json=optionalNestedMessage" json:"optional_nested_message,omitempty"`
	OptionalNestedEnum     *TestAllTypesProto2Editions_NestedEnum               `protobuf:"varint,21,opt,name=optional_nested_enum,json=optionalNestedEnum,enum=goproto.proto.test.TestAllTypesProto2Editions_NestedEnum" json:"optional_nested_enum,omitempty"`
	RepeatedInt32          []int32                                              `protobuf:"varint,31,rep,name=repeated_int32,json=repeatedInt32" json:"repeated_int32,omitempty"`
	RepeatedInt64          []int64                                              `protobuf:"varint,32,rep,name=repeated_int64,json=repeatedInt64" json:"repeated_int64,omitempty"`
	RepeatedUint32         []uint32                                             `protobuf:"varint,33,rep,name=repeated_uint32,json=repeatedUint32" json:"repeated_uint32,omitempty"`
	RepeatedUint64         []uint64                                             `protobuf:"varint,34,rep,name=repeated_uint64,json=repeatedUint64" json:"repeated_uint64,omitempty"`
	RepeatedSint32         []int32                                              `protobuf:"zigzag32,35,rep,name=repeated_sint32,json=repeatedSint32" json:"repeated_sint32,omitempty"`
	RepeatedSint64         []int64                                              `protobuf:"zigzag64,36,rep,name=repeated_sint64,json=repeatedSint64" json:"repeated_sint64,omitempty"`
	RepeatedFixed32        []uint32                                             `protobuf:"fixed32,37,rep,name=repeated_fixed32,json=repeatedFixed32" json:"repeated_fixed32,omitempty"`
	RepeatedFixed64        []uint64                                             `protobuf:"fixed64,38,rep,name=repeated_fixed64,json=repeatedFixed64" json:"repeated_fixed64,omitempty"`
	RepeatedSfixed32       []int32                                              `protobuf:"fixed32,39,rep,name=repeated_sfixed32,json=repeatedSfixed32" json:"repeated_sfixed32,omitempty"`
	RepeatedSfixed64       []int64                                              `protobuf:"fixed64,40,rep,name=repeated_sfixed64,json=repeatedSfixed64" json:"repeated_sfixed64,omitempty"`
	RepeatedFloat          []float32                                            `protobuf:"fixed32,41,rep,name=repeated_float,json=repeatedFloat" json:"repeated_float,omitempty"`
	RepeatedDouble         []float64                                            `protobuf:"fixed64,42,rep,name=repeated_double,json=repeatedDouble" json:"repeated_double,omitempty"`
	RepeatedBool           []bool                                               `protobuf:"varint,43,rep,name=repeated_bool,json=repeatedBool" json:"repeated_bool,omitempty"`
	RepeatedString         []string                                             `protobuf:"bytes,44,rep,name=repeated_string,json=repeatedString" json:"repeated_string,omitempty"`
	RepeatedBytes          [][]byte                                             `protobuf:"bytes,45,rep,name=repeated_bytes,json=repeatedBytes" json:"repeated_bytes,omitempty"`
	Repeatedgroup          []*TestAllTypesProto2Editions_RepeatedGroup          `protobuf:"group,46,rep,name=RepeatedGroup,json=repeatedgroup" json:"repeatedgroup,omitempty"`
	RepeatedNestedMessage  []*TestAllTypesProto2Editions_NestedMessage          `protobuf:"bytes,48,rep,name=repeated_nested_message,json=repeatedNestedMessage" json:"repeated_nested_message,omitempty"`
	RepeatedNestedEnum     []TestAllTypesProto2Editions_NestedEnum              `protobuf:"varint,51,rep,name=repeated_nested_enum,json=repeatedNestedEnum,enum=goproto.proto.test.TestAllTypesProto2Editions_NestedEnum" json:"repeated_nested_enum,omitempty"`
	MapInt32Int32          map[int32]int32                                      `protobuf:"bytes,56,rep,name=map_int32_int32,json=mapInt32Int32" json:"map_int32_int32,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"`
	MapInt64Int64          map[int64]int64                                      `protobuf:"bytes,57,rep,name=map_int64_int64,json=mapInt64Int64" json:"map_int64_int64,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"`
	MapUint32Uint32        map[uint32]uint32                                    `protobuf:"bytes,58,rep,name=map_uint32_uint32,json=mapUint32Uint32" json:"map_uint32_uint32,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"`
	MapUint64Uint64        map[uint64]uint64                                    `protobuf:"bytes,59,rep,name=map_uint64_uint64,json=mapUint64Uint64" json:"map_uint64_uint64,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"`
	MapSint32Sint32        map[int32]int32                                      `protobuf:"bytes,60,rep,name=map_sint32_sint32,json=mapSint32Sint32" json:"map_sint32_sint32,omitempty" protobuf_key:"zigzag32,1,opt,name=key" protobuf_val:"zigzag32,2,opt,name=value"`
	MapSint64Sint64        map[int64]int64                                      `protobuf:"bytes,61,rep,name=map_sint64_sint64,json=mapSint64Sint64" json:"map_sint64_sint64,omitempty" protobuf_key:"zigzag64,1,opt,name=key" protobuf_val:"zigzag64,2,opt,name=value"`
	MapFixed32Fixed32      map[uint32]uint32                                    `protobuf:"bytes,62,rep,name=map_fixed32_fixed32,json=mapFixed32Fixed32" json:"map_fixed32_fixed32,omitempty" protobuf_key:"fixed32,1,opt,name=key" protobuf_val:"fixed32,2,opt,name=value"`
	MapFixed64Fixed64      map[uint64]uint64                                    `protobuf:"bytes,63,rep,name=map_fixed64_fixed64,json=mapFixed64Fixed64" json:"map_fixed64_fixed64,omitempty" protobuf_key:"fixed64,1,opt,name=key" protobuf_val:"fixed64,2,opt,name=value"`
	MapSfixed32Sfixed32    map[int32]int32                                      `protobuf:"bytes,64,rep,name=map_sfixed32_sfixed32,json=mapSfixed32Sfixed32" json:"map_sfixed32_sfixed32,omitempty" protobuf_key:"fixed32,1,opt,name=key" protobuf_val:"fixed32,2,opt,name=value"`
	MapSfixed64Sfixed64    map[int64]int64                                      `protobuf:"bytes,65,rep,name=map_sfixed64_sfixed64,json=mapSfixed64Sfixed64" json:"map_sfixed64_sfixed64,omitempty" protobuf_key:"fixed64,1,opt,name=key" protobuf_val:"fixed64,2,opt,name=value"`
	MapInt32Float          map[int32]float32                                    `protobuf:"bytes,66,rep,name=map_int32_float,json=mapInt32Float" json:"map_int32_float,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"fixed32,2,opt,name=value"`
	MapInt32Double         map[int32]float64                                    `protobuf:"bytes,67,rep,name=map_int32_double,json=mapInt32Double" json:"map_int32_double,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"fixed64,2,opt,name=value"`
	MapBoolBool            map[bool]bool                                        `protobuf:"bytes,68,rep,name=map_bool_bool,json=mapBoolBool" json:"map_bool_bool,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"`
	MapStringString        map[string]string                                    `protobuf:"bytes,69,rep,name=map_string_string,json=mapStringString" json:"map_string_string,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	MapStringBytes         map[string][]byte                                    `protobuf:"bytes,70,rep,name=map_string_bytes,json=mapStringBytes" json:"map_string_bytes,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	MapStringNestedMessage map[string]*TestAllTypesProto2Editions_NestedMessage `protobuf:"bytes,71,rep,name=map_string_nested_message,json=mapStringNestedMessage" json:"map_string_nested_message,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	MapStringNestedEnum    map[string]TestAllTypesProto2Editions_NestedEnum     `protobuf:"bytes,73,rep,name=map_string_nested_enum,json=mapStringNestedEnum" json:"map_string_nested_enum,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"varint,2,opt,name=value,enum=goproto.proto.test.TestAllTypesProto2Editions_NestedEnum"`
	// Singular with defaults
	DefaultInt32      *int32                                 `protobuf:"varint,81,opt,name=default_int32,json=defaultInt32,def=81" json:"default_int32,omitempty"`
	DefaultInt64      *int64                                 `protobuf:"varint,82,opt,name=default_int64,json=defaultInt64,def=82" json:"default_int64,omitempty"`
	DefaultUint32     *uint32                                `protobuf:"varint,83,opt,name=default_uint32,json=defaultUint32,def=83" json:"default_uint32,omitempty"`
	DefaultUint64     *uint64                                `protobuf:"varint,84,opt,name=default_uint64,json=defaultUint64,def=84" json:"default_uint64,omitempty"`
	DefaultSint32     *int32                                 `protobuf:"zigzag32,85,opt,name=default_sint32,json=defaultSint32,def=-85" json:"default_sint32,omitempty"`
	DefaultSint64     *int64                                 `protobuf:"zigzag64,86,opt,name=default_sint64,json=defaultSint64,def=86" json:"default_sint64,omitempty"`
	DefaultFixed32    *uint32                                `protobuf:"fixed32,87,opt,name=default_fixed32,json=defaultFixed32,def=87" json:"default_fixed32,omitempty"`
	DefaultFixed64    *uint64                                `protobuf:"fixed64,88,opt,name=default_fixed64,json=defaultFixed64,def=88" json:"default_fixed64,omitempty"`
	DefaultSfixed32   *int32                                 `protobuf:"fixed32,89,opt,name=default_sfixed32,json=defaultSfixed32,def=89" json:"default_sfixed32,omitempty"`
	DefaultSfixed64   *int64                                 `protobuf:"fixed64,80,opt,name=default_sfixed64,json=defaultSfixed64,def=-90" json:"default_sfixed64,omitempty"`
	DefaultFloat      *float32                               `protobuf:"fixed32,91,opt,name=default_float,json=defaultFloat,def=91.5" json:"default_float,omitempty"`
	DefaultDouble     *float64                               `protobuf:"fixed64,92,opt,name=default_double,json=defaultDouble,def=92000" json:"default_double,omitempty"`
	DefaultBool       *bool                                  `protobuf:"varint,93,opt,name=default_bool,json=defaultBool,def=1" json:"default_bool,omitempty"`
	DefaultString     *string                                `protobuf:"bytes,94,opt,name=default_string,json=defaultString,def=hello" json:"default_string,omitempty"`
	DefaultBytes      []byte                                 `protobuf:"bytes,95,opt,name=default_bytes,json=defaultBytes,def=world" json:"default_bytes,omitempty"`
	DefaultNestedEnum *TestAllTypesProto2Editions_NestedEnum `protobuf:"varint,96,opt,name=default_nested_enum,json=defaultNestedEnum,enum=goproto.proto.test.TestAllTypesProto2Editions_NestedEnum,def=1" json:"default_nested_enum,omitempty"`
	// Types that are valid to be assigned to OneofField:
	//
	//	*TestAllTypesProto2Editions_OneofUint32
	//	*TestAllTypesProto2Editions_OneofNestedMessage
	//	*TestAllTypesProto2Editions_OneofString
	//	*TestAllTypesProto2Editions_OneofBytes
	//	*TestAllTypesProto2Editions_OneofBool
	//	*TestAllTypesProto2Editions_OneofUint64
	//	*TestAllTypesProto2Editions_OneofFloat
	//	*TestAllTypesProto2Editions_OneofDouble
	//	*TestAllTypesProto2Editions_OneofEnum
	//	*TestAllTypesProto2Editions_Oneofgroup
	OneofField isTestAllTypesProto2Editions_OneofField `protobuf_oneof:"oneof_field"`
	// A oneof with exactly one field.
	//
	// Types that are valid to be assigned to OneofOptional:
	//
	//	*TestAllTypesProto2Editions_OneofOptionalUint32
	OneofOptional isTestAllTypesProto2Editions_OneofOptional `protobuf_oneof:"oneof_optional"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

// Default values for TestAllTypesProto2Editions fields.
const (
	Default_TestAllTypesProto2Editions_DefaultInt32      = int32(81)
	Default_TestAllTypesProto2Editions_DefaultInt64      = int64(82)
	Default_TestAllTypesProto2Editions_DefaultUint32     = uint32(83)
	Default_TestAllTypesProto2Editions_DefaultUint64     = uint64(84)
	Default_TestAllTypesProto2Editions_DefaultSint32     = int32(-85)
	Default_TestAllTypesProto2Editions_DefaultSint64     = int64(86)
	Default_TestAllTypesProto2Editions_DefaultFixed32    = uint32(87)
	Default_TestAllTypesProto2Editions_DefaultFixed64    = uint64(88)
	Default_TestAllTypesProto2Editions_DefaultSfixed32   = int32(89)
	Default_TestAllTypesProto2Editions_DefaultSfixed64   = int64(-90)
	Default_TestAllTypesProto2Editions_DefaultFloat      = float32(91.5)
	Default_TestAllTypesProto2Editions_DefaultDouble     = float64(92000)
	Default_TestAllTypesProto2Editions_DefaultBool       = bool(true)
	Default_TestAllTypesProto2Editions_DefaultString     = string("hello")
	Default_TestAllTypesProto2Editions_DefaultNestedEnum = TestAllTypesProto2Editions_BAR
)

// Default values for TestAllTypesProto2Editions fields.
var (
	Default_TestAllTypesProto2Editions_DefaultBytes = []byte("world")
)

func (x *TestAllTypesProto2Editions) Reset() {
	*x = TestAllTypesProto2Editions{}
	mi := &file_internal_testprotos_editionsfuzztest_test2editions_proto_msgTypes[0]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *TestAllTypesProto2Editions) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TestAllTypesProto2Editions) ProtoMessage() {}

func (x *TestAllTypesProto2Editions) ProtoReflect() protoreflect.Message {
	mi := &file_internal_testprotos_editionsfuzztest_test2editions_proto_msgTypes[0]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TestAllTypesProto2Editions.ProtoReflect.Descriptor instead.
func (*TestAllTypesProto2Editions) Descriptor() ([]byte, []int) {
	return file_internal_testprotos_editionsfuzztest_test2editions_proto_rawDescGZIP(), []int{0}
}

func (x *TestAllTypesProto2Editions) GetOptionalInt32() int32 {
	if x != nil && x.OptionalInt32 != nil {
		return *x.OptionalInt32
	}
	return 0
}

func (x *TestAllTypesProto2Editions) GetOptionalInt64() int64 {
	if x != nil && x.OptionalInt64 != nil {
		return *x.OptionalInt64
	}
	return 0
}

func (x *TestAllTypesProto2Editions) GetOptionalUint32() uint32 {
	if x != nil && x.OptionalUint32 != nil {
		return *x.OptionalUint32
	}
	return 0
}

func (x *TestAllTypesProto2Editions) GetOptionalUint64() uint64 {
	if x != nil && x.OptionalUint64 != nil {
		return *x.OptionalUint64
	}
	return 0
}

func (x *TestAllTypesProto2Editions) GetOptionalSint32() int32 {
	if x != nil && x.OptionalSint32 != nil {
		return *x.OptionalSint32
	}
	return 0
}

func (x *TestAllTypesProto2Editions) GetOptionalSint64() int64 {
	if x != nil && x.OptionalSint64 != nil {
		return *x.OptionalSint64
	}
	return 0
}

func (x *TestAllTypesProto2Editions) GetOptionalFixed32() uint32 {
	if x != nil && x.OptionalFixed32 != nil {
		return *x.OptionalFixed32
	}
	return 0
}

func (x *TestAllTypesProto2Editions) GetOptionalFixed64() uint64 {
	if x != nil && x.OptionalFixed64 != nil {
		return *x.OptionalFixed64
	}
	return 0
}

func (x *TestAllTypesProto2Editions) GetOptionalSfixed32() int32 {
	if x != nil && x.OptionalSfixed32 != nil {
		return *x.OptionalSfixed32
	}
	return 0
}

func (x *TestAllTypesProto2Editions) GetOptionalSfixed64() int64 {
	if x != nil && x.OptionalSfixed64 != nil {
		return *x.OptionalSfixed64
	}
	return 0
}

func (x *TestAllTypesProto2Editions) GetOptionalFloat() float32 {
	if x != nil && x.OptionalFloat != nil {
		return *x.OptionalFloat
	}
	return 0
}

func (x *TestAllTypesProto2Editions) GetOptionalDouble() float64 {
	if x != nil && x.OptionalDouble != nil {
		return *x.OptionalDouble
	}
	return 0
}

func (x *TestAllTypesProto2Editions) GetOptionalBool() bool {
	if x != nil && x.OptionalBool != nil {
		return *x.OptionalBool
	}
	return false
}

func (x *TestAllTypesProto2Editions) GetOptionalString() string {
	if x != nil && x.OptionalString != nil {
		return *x.OptionalString
	}
	return ""
}

func (x *TestAllTypesProto2Editions) GetOptionalBytes() []byte {
	if x != nil {
		return x.OptionalBytes
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetOptionalgroup() *TestAllTypesProto2Editions_OptionalGroup {
	if x != nil {
		return x.Optionalgroup
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetOptionalNestedMessage() *TestAllTypesProto2Editions_NestedMessage {
	if x != nil {
		return x.OptionalNestedMessage
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetOptionalNestedEnum() TestAllTypesProto2Editions_NestedEnum {
	if x != nil && x.OptionalNestedEnum != nil {
		return *x.OptionalNestedEnum
	}
	return TestAllTypesProto2Editions_FOO
}

func (x *TestAllTypesProto2Editions) GetRepeatedInt32() []int32 {
	if x != nil {
		return x.RepeatedInt32
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetRepeatedInt64() []int64 {
	if x != nil {
		return x.RepeatedInt64
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetRepeatedUint32() []uint32 {
	if x != nil {
		return x.RepeatedUint32
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetRepeatedUint64() []uint64 {
	if x != nil {
		return x.RepeatedUint64
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetRepeatedSint32() []int32 {
	if x != nil {
		return x.RepeatedSint32
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetRepeatedSint64() []int64 {
	if x != nil {
		return x.RepeatedSint64
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetRepeatedFixed32() []uint32 {
	if x != nil {
		return x.RepeatedFixed32
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetRepeatedFixed64() []uint64 {
	if x != nil {
		return x.RepeatedFixed64
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetRepeatedSfixed32() []int32 {
	if x != nil {
		return x.RepeatedSfixed32
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetRepeatedSfixed64() []int64 {
	if x != nil {
		return x.RepeatedSfixed64
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetRepeatedFloat() []float32 {
	if x != nil {
		return x.RepeatedFloat
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetRepeatedDouble() []float64 {
	if x != nil {
		return x.RepeatedDouble
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetRepeatedBool() []bool {
	if x != nil {
		return x.RepeatedBool
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetRepeatedString() []string {
	if x != nil {
		return x.RepeatedString
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetRepeatedBytes() [][]byte {
	if x != nil {
		return x.RepeatedBytes
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetRepeatedgroup() []*TestAllTypesProto2Editions_RepeatedGroup {
	if x != nil {
		return x.Repeatedgroup
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetRepeatedNestedMessage() []*TestAllTypesProto2Editions_NestedMessage {
	if x != nil {
		return x.RepeatedNestedMessage
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetRepeatedNestedEnum() []TestAllTypesProto2Editions_NestedEnum {
	if x != nil {
		return x.RepeatedNestedEnum
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetMapInt32Int32() map[int32]int32 {
	if x != nil {
		return x.MapInt32Int32
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetMapInt64Int64() map[int64]int64 {
	if x != nil {
		return x.MapInt64Int64
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetMapUint32Uint32() map[uint32]uint32 {
	if x != nil {
		return x.MapUint32Uint32
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetMapUint64Uint64() map[uint64]uint64 {
	if x != nil {
		return x.MapUint64Uint64
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetMapSint32Sint32() map[int32]int32 {
	if x != nil {
		return x.MapSint32Sint32
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetMapSint64Sint64() map[int64]int64 {
	if x != nil {
		return x.MapSint64Sint64
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetMapFixed32Fixed32() map[uint32]uint32 {
	if x != nil {
		return x.MapFixed32Fixed32
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetMapFixed64Fixed64() map[uint64]uint64 {
	if x != nil {
		return x.MapFixed64Fixed64
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetMapSfixed32Sfixed32() map[int32]int32 {
	if x != nil {
		return x.MapSfixed32Sfixed32
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetMapSfixed64Sfixed64() map[int64]int64 {
	if x != nil {
		return x.MapSfixed64Sfixed64
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetMapInt32Float() map[int32]float32 {
	if x != nil {
		return x.MapInt32Float
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetMapInt32Double() map[int32]float64 {
	if x != nil {
		return x.MapInt32Double
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetMapBoolBool() map[bool]bool {
	if x != nil {
		return x.MapBoolBool
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetMapStringString() map[string]string {
	if x != nil {
		return x.MapStringString
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetMapStringBytes() map[string][]byte {
	if x != nil {
		return x.MapStringBytes
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetMapStringNestedMessage() map[string]*TestAllTypesProto2Editions_NestedMessage {
	if x != nil {
		return x.MapStringNestedMessage
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetMapStringNestedEnum() map[string]TestAllTypesProto2Editions_NestedEnum {
	if x != nil {
		return x.MapStringNestedEnum
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetDefaultInt32() int32 {
	if x != nil && x.DefaultInt32 != nil {
		return *x.DefaultInt32
	}
	return Default_TestAllTypesProto2Editions_DefaultInt32
}

func (x *TestAllTypesProto2Editions) GetDefaultInt64() int64 {
	if x != nil && x.DefaultInt64 != nil {
		return *x.DefaultInt64
	}
	return Default_TestAllTypesProto2Editions_DefaultInt64
}

func (x *TestAllTypesProto2Editions) GetDefaultUint32() uint32 {
	if x != nil && x.DefaultUint32 != nil {
		return *x.DefaultUint32
	}
	return Default_TestAllTypesProto2Editions_DefaultUint32
}

func (x *TestAllTypesProto2Editions) GetDefaultUint64() uint64 {
	if x != nil && x.DefaultUint64 != nil {
		return *x.DefaultUint64
	}
	return Default_TestAllTypesProto2Editions_DefaultUint64
}

func (x *TestAllTypesProto2Editions) GetDefaultSint32() int32 {
	if x != nil && x.DefaultSint32 != nil {
		return *x.DefaultSint32
	}
	return Default_TestAllTypesProto2Editions_DefaultSint32
}

func (x *TestAllTypesProto2Editions) GetDefaultSint64() int64 {
	if x != nil && x.DefaultSint64 != nil {
		return *x.DefaultSint64
	}
	return Default_TestAllTypesProto2Editions_DefaultSint64
}

func (x *TestAllTypesProto2Editions) GetDefaultFixed32() uint32 {
	if x != nil && x.DefaultFixed32 != nil {
		return *x.DefaultFixed32
	}
	return Default_TestAllTypesProto2Editions_DefaultFixed32
}

func (x *TestAllTypesProto2Editions) GetDefaultFixed64() uint64 {
	if x != nil && x.DefaultFixed64 != nil {
		return *x.DefaultFixed64
	}
	return Default_TestAllTypesProto2Editions_DefaultFixed64
}

func (x *TestAllTypesProto2Editions) GetDefaultSfixed32() int32 {
	if x != nil && x.DefaultSfixed32 != nil {
		return *x.DefaultSfixed32
	}
	return Default_TestAllTypesProto2Editions_DefaultSfixed32
}

func (x *TestAllTypesProto2Editions) GetDefaultSfixed64() int64 {
	if x != nil && x.DefaultSfixed64 != nil {
		return *x.DefaultSfixed64
	}
	return Default_TestAllTypesProto2Editions_DefaultSfixed64
}

func (x *TestAllTypesProto2Editions) GetDefaultFloat() float32 {
	if x != nil && x.DefaultFloat != nil {
		return *x.DefaultFloat
	}
	return Default_TestAllTypesProto2Editions_DefaultFloat
}

func (x *TestAllTypesProto2Editions) GetDefaultDouble() float64 {
	if x != nil && x.DefaultDouble != nil {
		return *x.DefaultDouble
	}
	return Default_TestAllTypesProto2Editions_DefaultDouble
}

func (x *TestAllTypesProto2Editions) GetDefaultBool() bool {
	if x != nil && x.DefaultBool != nil {
		return *x.DefaultBool
	}
	return Default_TestAllTypesProto2Editions_DefaultBool
}

func (x *TestAllTypesProto2Editions) GetDefaultString() string {
	if x != nil && x.DefaultString != nil {
		return *x.DefaultString
	}
	return Default_TestAllTypesProto2Editions_DefaultString
}

func (x *TestAllTypesProto2Editions) GetDefaultBytes() []byte {
	if x != nil && x.DefaultBytes != nil {
		return x.DefaultBytes
	}
	return append([]byte(nil), Default_TestAllTypesProto2Editions_DefaultBytes...)
}

func (x *TestAllTypesProto2Editions) GetDefaultNestedEnum() TestAllTypesProto2Editions_NestedEnum {
	if x != nil && x.DefaultNestedEnum != nil {
		return *x.DefaultNestedEnum
	}
	return Default_TestAllTypesProto2Editions_DefaultNestedEnum
}

func (x *TestAllTypesProto2Editions) GetOneofField() isTestAllTypesProto2Editions_OneofField {
	if x != nil {
		return x.OneofField
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetOneofUint32() uint32 {
	if x != nil {
		if x, ok := x.OneofField.(*TestAllTypesProto2Editions_OneofUint32); ok {
			return x.OneofUint32
		}
	}
	return 0
}

func (x *TestAllTypesProto2Editions) GetOneofNestedMessage() *TestAllTypesProto2Editions_NestedMessage {
	if x != nil {
		if x, ok := x.OneofField.(*TestAllTypesProto2Editions_OneofNestedMessage); ok {
			return x.OneofNestedMessage
		}
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetOneofString() string {
	if x != nil {
		if x, ok := x.OneofField.(*TestAllTypesProto2Editions_OneofString); ok {
			return x.OneofString
		}
	}
	return ""
}

func (x *TestAllTypesProto2Editions) GetOneofBytes() []byte {
	if x != nil {
		if x, ok := x.OneofField.(*TestAllTypesProto2Editions_OneofBytes); ok {
			return x.OneofBytes
		}
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetOneofBool() bool {
	if x != nil {
		if x, ok := x.OneofField.(*TestAllTypesProto2Editions_OneofBool); ok {
			return x.OneofBool
		}
	}
	return false
}

func (x *TestAllTypesProto2Editions) GetOneofUint64() uint64 {
	if x != nil {
		if x, ok := x.OneofField.(*TestAllTypesProto2Editions_OneofUint64); ok {
			return x.OneofUint64
		}
	}
	return 0
}

func (x *TestAllTypesProto2Editions) GetOneofFloat() float32 {
	if x != nil {
		if x, ok := x.OneofField.(*TestAllTypesProto2Editions_OneofFloat); ok {
			return x.OneofFloat
		}
	}
	return 0
}

func (x *TestAllTypesProto2Editions) GetOneofDouble() float64 {
	if x != nil {
		if x, ok := x.OneofField.(*TestAllTypesProto2Editions_OneofDouble); ok {
			return x.OneofDouble
		}
	}
	return 0
}

func (x *TestAllTypesProto2Editions) GetOneofEnum() TestAllTypesProto2Editions_NestedEnum {
	if x != nil {
		if x, ok := x.OneofField.(*TestAllTypesProto2Editions_OneofEnum); ok {
			return x.OneofEnum
		}
	}
	return TestAllTypesProto2Editions_FOO
}

func (x *TestAllTypesProto2Editions) GetOneofgroup() *TestAllTypesProto2Editions_OneofGroup {
	if x != nil {
		if x, ok := x.OneofField.(*TestAllTypesProto2Editions_Oneofgroup); ok {
			return x.Oneofgroup
		}
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetOneofOptional() isTestAllTypesProto2Editions_OneofOptional {
	if x != nil {
		return x.OneofOptional
	}
	return nil
}

func (x *TestAllTypesProto2Editions) GetOneofOptionalUint32() uint32 {
	if x != nil {
		if x, ok := x.OneofOptional.(*TestAllTypesProto2Editions_OneofOptionalUint32); ok {
			return x.OneofOptionalUint32
		}
	}
	return 0
}

type isTestAllTypesProto2Editions_OneofField interface {
	isTestAllTypesProto2Editions_OneofField()
}

type TestAllTypesProto2Editions_OneofUint32 struct {
	OneofUint32 uint32 `protobuf:"varint,111,opt,name=oneof_uint32,json=oneofUint32,oneof"`
}

type TestAllTypesProto2Editions_OneofNestedMessage struct {
	OneofNestedMessage *TestAllTypesProto2Editions_NestedMessage `protobuf:"bytes,112,opt,name=oneof_nested_message,json=oneofNestedMessage,oneof"`
}

type TestAllTypesProto2Editions_OneofString struct {
	OneofString string `protobuf:"bytes,113,opt,name=oneof_string,json=oneofString,oneof"`
}

type TestAllTypesProto2Editions_OneofBytes struct {
	OneofBytes []byte `protobuf:"bytes,114,opt,name=oneof_bytes,json=oneofBytes,oneof"`
}

type TestAllTypesProto2Editions_OneofBool struct {
	OneofBool bool `protobuf:"varint,115,opt,name=oneof_bool,json=oneofBool,oneof"`
}

type TestAllTypesProto2Editions_OneofUint64 struct {
	OneofUint64 uint64 `protobuf:"varint,116,opt,name=oneof_uint64,json=oneofUint64,oneof"`
}

type TestAllTypesProto2Editions_OneofFloat struct {
	OneofFloat float32 `protobuf:"fixed32,117,opt,name=oneof_float,json=oneofFloat,oneof"`
}

type TestAllTypesProto2Editions_OneofDouble struct {
	OneofDouble float64 `protobuf:"fixed64,118,opt,name=oneof_double,json=oneofDouble,oneof"`
}

type TestAllTypesProto2Editions_OneofEnum struct {
	OneofEnum TestAllTypesProto2Editions_NestedEnum `protobuf:"varint,119,opt,name=oneof_enum,json=oneofEnum,enum=goproto.proto.test.TestAllTypesProto2Editions_NestedEnum,oneof"`
}

type TestAllTypesProto2Editions_Oneofgroup struct {
	Oneofgroup *TestAllTypesProto2Editions_OneofGroup `protobuf:"group,121,opt,name=OneofGroup,json=oneofgroup,oneof"`
}

func (*TestAllTypesProto2Editions_OneofUint32) isTestAllTypesProto2Editions_OneofField() {}

func (*TestAllTypesProto2Editions_OneofNestedMessage) isTestAllTypesProto2Editions_OneofField() {}

func (*TestAllTypesProto2Editions_OneofString) isTestAllTypesProto2Editions_OneofField() {}

func (*TestAllTypesProto2Editions_OneofBytes) isTestAllTypesProto2Editions_OneofField() {}

func (*TestAllTypesProto2Editions_OneofBool) isTestAllTypesProto2Editions_OneofField() {}

func (*TestAllTypesProto2Editions_OneofUint64) isTestAllTypesProto2Editions_OneofField() {}

func (*TestAllTypesProto2Editions_OneofFloat) isTestAllTypesProto2Editions_OneofField() {}

func (*TestAllTypesProto2Editions_OneofDouble) isTestAllTypesProto2Editions_OneofField() {}

func (*TestAllTypesProto2Editions_OneofEnum) isTestAllTypesProto2Editions_OneofField() {}

func (*TestAllTypesProto2Editions_Oneofgroup) isTestAllTypesProto2Editions_OneofField() {}

type isTestAllTypesProto2Editions_OneofOptional interface {
	isTestAllTypesProto2Editions_OneofOptional()
}

type TestAllTypesProto2Editions_OneofOptionalUint32 struct {
	OneofOptionalUint32 uint32 `protobuf:"varint,120,opt,name=oneof_optional_uint32,json=oneofOptionalUint32,oneof"`
}

func (*TestAllTypesProto2Editions_OneofOptionalUint32) isTestAllTypesProto2Editions_OneofOptional() {}

type TestAllTypesProto2Editions_NestedMessage struct {
	state         protoimpl.MessageState      `protogen:"open.v1"`
	A             *int32                      `protobuf:"varint,1,opt,name=a" json:"a,omitempty"`
	Corecursive   *TestAllTypesProto2Editions `protobuf:"bytes,2,opt,name=corecursive" json:"corecursive,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *TestAllTypesProto2Editions_NestedMessage) Reset() {
	*x = TestAllTypesProto2Editions_NestedMessage{}
	mi := &file_internal_testprotos_editionsfuzztest_test2editions_proto_msgTypes[1]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *TestAllTypesProto2Editions_NestedMessage) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TestAllTypesProto2Editions_NestedMessage) ProtoMessage() {}

func (x *TestAllTypesProto2Editions_NestedMessage) ProtoReflect() protoreflect.Message {
	mi := &file_internal_testprotos_editionsfuzztest_test2editions_proto_msgTypes[1]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TestAllTypesProto2Editions_NestedMessage.ProtoReflect.Descriptor instead.
func (*TestAllTypesProto2Editions_NestedMessage) Descriptor() ([]byte, []int) {
	return file_internal_testprotos_editionsfuzztest_test2editions_proto_rawDescGZIP(), []int{0, 0}
}

func (x *TestAllTypesProto2Editions_NestedMessage) GetA() int32 {
	if x != nil && x.A != nil {
		return *x.A
	}
	return 0
}

func (x *TestAllTypesProto2Editions_NestedMessage) GetCorecursive() *TestAllTypesProto2Editions {
	if x != nil {
		return x.Corecursive
	}
	return nil
}

type TestAllTypesProto2Editions_OptionalGroup struct {
	state                 protoimpl.MessageState                    `protogen:"open.v1"`
	A                     *int32                                    `protobuf:"varint,17,opt,name=a" json:"a,omitempty"`
	OptionalNestedMessage *TestAllTypesProto2Editions_NestedMessage `protobuf:"bytes,1000,opt,name=optional_nested_message,json=optionalNestedMessage" json:"optional_nested_message,omitempty"`
	SameFieldNumber       *int32                                    `protobuf:"varint,16,opt,name=same_field_number,json=sameFieldNumber" json:"same_field_number,omitempty"`
	unknownFields         protoimpl.UnknownFields
	sizeCache             protoimpl.SizeCache
}

func (x *TestAllTypesProto2Editions_OptionalGroup) Reset() {
	*x = TestAllTypesProto2Editions_OptionalGroup{}
	mi := &file_internal_testprotos_editionsfuzztest_test2editions_proto_msgTypes[2]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *TestAllTypesProto2Editions_OptionalGroup) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TestAllTypesProto2Editions_OptionalGroup) ProtoMessage() {}

func (x *TestAllTypesProto2Editions_OptionalGroup) ProtoReflect() protoreflect.Message {
	mi := &file_internal_testprotos_editionsfuzztest_test2editions_proto_msgTypes[2]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TestAllTypesProto2Editions_OptionalGroup.ProtoReflect.Descriptor instead.
func (*TestAllTypesProto2Editions_OptionalGroup) Descriptor() ([]byte, []int) {
	return file_internal_testprotos_editionsfuzztest_test2editions_proto_rawDescGZIP(), []int{0, 1}
}

func (x *TestAllTypesProto2Editions_OptionalGroup) GetA() int32 {
	if x != nil && x.A != nil {
		return *x.A
	}
	return 0
}

func (x *TestAllTypesProto2Editions_OptionalGroup) GetOptionalNestedMessage() *TestAllTypesProto2Editions_NestedMessage {
	if x != nil {
		return x.OptionalNestedMessage
	}
	return nil
}

func (x *TestAllTypesProto2Editions_OptionalGroup) GetSameFieldNumber() int32 {
	if x != nil && x.SameFieldNumber != nil {
		return *x.SameFieldNumber
	}
	return 0
}

type TestAllTypesProto2Editions_RepeatedGroup struct {
	state                 protoimpl.MessageState                    `protogen:"open.v1"`
	A                     *int32                                    `protobuf:"varint,47,opt,name=a" json:"a,omitempty"`
	OptionalNestedMessage *TestAllTypesProto2Editions_NestedMessage `protobuf:"bytes,1001,opt,name=optional_nested_message,json=optionalNestedMessage" json:"optional_nested_message,omitempty"`
	unknownFields         protoimpl.UnknownFields
	sizeCache             protoimpl.SizeCache
}

func (x *TestAllTypesProto2Editions_RepeatedGroup) Reset() {
	*x = TestAllTypesProto2Editions_RepeatedGroup{}
	mi := &file_internal_testprotos_editionsfuzztest_test2editions_proto_msgTypes[3]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *TestAllTypesProto2Editions_RepeatedGroup) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TestAllTypesProto2Editions_RepeatedGroup) ProtoMessage() {}

func (x *TestAllTypesProto2Editions_RepeatedGroup) ProtoReflect() protoreflect.Message {
	mi := &file_internal_testprotos_editionsfuzztest_test2editions_proto_msgTypes[3]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TestAllTypesProto2Editions_RepeatedGroup.ProtoReflect.Descriptor instead.
func (*TestAllTypesProto2Editions_RepeatedGroup) Descriptor() ([]byte, []int) {
	return file_internal_testprotos_editionsfuzztest_test2editions_proto_rawDescGZIP(), []int{0, 2}
}

func (x *TestAllTypesProto2Editions_RepeatedGroup) GetA() int32 {
	if x != nil && x.A != nil {
		return *x.A
	}
	return 0
}

func (x *TestAllTypesProto2Editions_RepeatedGroup) GetOptionalNestedMessage() *TestAllTypesProto2Editions_NestedMessage {
	if x != nil {
		return x.OptionalNestedMessage
	}
	return nil
}

type TestAllTypesProto2Editions_OneofGroup struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	A             *int32                 `protobuf:"varint,1,opt,name=a" json:"a,omitempty"`
	B             *int32                 `protobuf:"varint,2,opt,name=b" json:"b,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *TestAllTypesProto2Editions_OneofGroup) Reset() {
	*x = TestAllTypesProto2Editions_OneofGroup{}
	mi := &file_internal_testprotos_editionsfuzztest_test2editions_proto_msgTypes[21]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *TestAllTypesProto2Editions_OneofGroup) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TestAllTypesProto2Editions_OneofGroup) ProtoMessage() {}

func (x *TestAllTypesProto2Editions_OneofGroup) ProtoReflect() protoreflect.Message {
	mi := &file_internal_testprotos_editionsfuzztest_test2editions_proto_msgTypes[21]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TestAllTypesProto2Editions_OneofGroup.ProtoReflect.Descriptor instead.
func (*TestAllTypesProto2Editions_OneofGroup) Descriptor() ([]byte, []int) {
	return file_internal_testprotos_editionsfuzztest_test2editions_proto_rawDescGZIP(), []int{0, 20}
}

func (x *TestAllTypesProto2Editions_OneofGroup) GetA() int32 {
	if x != nil && x.A != nil {
		return *x.A
	}
	return 0
}

func (x *TestAllTypesProto2Editions_OneofGroup) GetB() int32 {
	if x != nil && x.B != nil {
		return *x.B
	}
	return 0
}

var File_internal_testprotos_editionsfuzztest_test2editions_proto protoreflect.FileDescriptor

const file_internal_testprotos_editionsfuzztest_test2editions_proto_rawDesc = "" +
	"\n" +
	"8internal/testprotos/editionsfuzztest/test2editions.proto\x12\x12goproto.proto.test\x1a!google/protobuf/go_features.proto\"\xf87\n" +
	"\x1aTestAllTypesProto2Editions\x12%\n" +
	"\x0eoptional_int32\x18\x01 \x01(\x05R\roptionalInt32\x12%\n" +
	"\x0eoptional_int64\x18\x02 \x01(\x03R\roptionalInt64\x12'\n" +
	"\x0foptional_uint32\x18\x03 \x01(\rR\x0eoptionalUint32\x12'\n" +
	"\x0foptional_uint64\x18\x04 \x01(\x04R\x0eoptionalUint64\x12'\n" +
	"\x0foptional_sint32\x18\x05 \x01(\x11R\x0eoptionalSint32\x12'\n" +
	"\x0foptional_sint64\x18\x06 \x01(\x12R\x0eoptionalSint64\x12)\n" +
	"\x10optional_fixed32\x18\a \x01(\aR\x0foptionalFixed32\x12)\n" +
	"\x10optional_fixed64\x18\b \x01(\x06R\x0foptionalFixed64\x12+\n" +
	"\x11optional_sfixed32\x18\t \x01(\x0fR\x10optionalSfixed32\x12+\n" +
	"\x11optional_sfixed64\x18\n" +
	" \x01(\x10R\x10optionalSfixed64\x12%\n" +
	"\x0eoptional_float\x18\v \x01(\x02R\roptionalFloat\x12'\n" +
	"\x0foptional_double\x18\f \x01(\x01R\x0eoptionalDouble\x12#\n" +
	"\roptional_bool\x18\r \x01(\bR\foptionalBool\x12'\n" +
	"\x0foptional_string\x18\x0e \x01(\tR\x0eoptionalString\x12%\n" +
	"\x0eoptional_bytes\x18\x0f \x01(\fR\roptionalBytes\x12i\n" +
	"\roptionalgroup\x18\x10 \x01(\v2<.goproto.proto.test.TestAllTypesProto2Editions.OptionalGroupB\x05\xaa\x01\x02(\x02R\roptionalgroup\x12t\n" +
	"\x17optional_nested_message\x18\x12 \x01(\v2<.goproto.proto.test.TestAllTypesProto2Editions.NestedMessageR\x15optionalNestedMessage\x12k\n" +
	"\x14optional_nested_enum\x18\x15 \x01(\x0e29.goproto.proto.test.TestAllTypesProto2Editions.NestedEnumR\x12optionalNestedEnum\x12%\n" +
	"\x0erepeated_int32\x18\x1f \x03(\x05R\rrepeatedInt32\x12%\n" +
	"\x0erepeated_int64\x18  \x03(\x03R\rrepeatedInt64\x12'\n" +
	"\x0frepeated_uint32\x18! \x03(\rR\x0erepeatedUint32\x12'\n" +
	"\x0frepeated_uint64\x18\" \x03(\x04R\x0erepeatedUint64\x12'\n" +
	"\x0frepeated_sint32\x18# \x03(\x11R\x0erepeatedSint32\x12'\n" +
	"\x0frepeated_sint64\x18$ \x03(\x12R\x0erepeatedSint64\x12)\n" +
	"\x10repeated_fixed32\x18% \x03(\aR\x0frepeatedFixed32\x12)\n" +
	"\x10repeated_fixed64\x18& \x03(\x06R\x0frepeatedFixed64\x12+\n" +
	"\x11repeated_sfixed32\x18' \x03(\x0fR\x10repeatedSfixed32\x12+\n" +
	"\x11repeated_sfixed64\x18( \x03(\x10R\x10repeatedSfixed64\x12%\n" +
	"\x0erepeated_float\x18) \x03(\x02R\rrepeatedFloat\x12'\n" +
	"\x0frepeated_double\x18* \x03(\x01R\x0erepeatedDouble\x12#\n" +
	"\rrepeated_bool\x18+ \x03(\bR\frepeatedBool\x12'\n" +
	"\x0frepeated_string\x18, \x03(\tR\x0erepeatedString\x12%\n" +
	"\x0erepeated_bytes\x18- \x03(\fR\rrepeatedBytes\x12i\n" +
	"\rrepeatedgroup\x18. \x03(\v2<.goproto.proto.test.TestAllTypesProto2Editions.RepeatedGroupB\x05\xaa\x01\x02(\x02R\rrepeatedgroup\x12t\n" +
	"\x17repeated_nested_message\x180 \x03(\v2<.goproto.proto.test.TestAllTypesProto2Editions.NestedMessageR\x15repeatedNestedMessage\x12k\n" +
	"\x14repeated_nested_enum\x183 \x03(\x0e29.goproto.proto.test.TestAllTypesProto2Editions.NestedEnumR\x12repeatedNestedEnum\x12i\n" +
	"\x0fmap_int32_int32\x188 \x03(\v2A.goproto.proto.test.TestAllTypesProto2Editions.MapInt32Int32EntryR\rmapInt32Int32\x12i\n" +
	"\x0fmap_int64_int64\x189 \x03(\v2A.goproto.proto.test.TestAllTypesProto2Editions.MapInt64Int64EntryR\rmapInt64Int64\x12o\n" +
	"\x11map_uint32_uint32\x18: \x03(\v2C.goproto.proto.test.TestAllTypesProto2Editions.MapUint32Uint32EntryR\x0fmapUint32Uint32\x12o\n" +
	"\x11map_uint64_uint64\x18; \x03(\v2C.goproto.proto.test.TestAllTypesProto2Editions.MapUint64Uint64EntryR\x0fmapUint64Uint64\x12o\n" +
	"\x11map_sint32_sint32\x18< \x03(\v2C.goproto.proto.test.TestAllTypesProto2Editions.MapSint32Sint32EntryR\x0fmapSint32Sint32\x12o\n" +
	"\x11map_sint64_sint64\x18= \x03(\v2C.goproto.proto.test.TestAllTypesProto2Editions.MapSint64Sint64EntryR\x0fmapSint64Sint64\x12u\n" +
	"\x13map_fixed32_fixed32\x18> \x03(\v2E.goproto.proto.test.TestAllTypesProto2Editions.MapFixed32Fixed32EntryR\x11mapFixed32Fixed32\x12u\n" +
	"\x13map_fixed64_fixed64\x18? \x03(\v2E.goproto.proto.test.TestAllTypesProto2Editions.MapFixed64Fixed64EntryR\x11mapFixed64Fixed64\x12{\n" +
	"\x15map_sfixed32_sfixed32\x18@ \x03(\v2G.goproto.proto.test.TestAllTypesProto2Editions.MapSfixed32Sfixed32EntryR\x13mapSfixed32Sfixed32\x12{\n" +
	"\x15map_sfixed64_sfixed64\x18A \x03(\v2G.goproto.proto.test.TestAllTypesProto2Editions.MapSfixed64Sfixed64EntryR\x13mapSfixed64Sfixed64\x12i\n" +
	"\x0fmap_int32_float\x18B \x03(\v2A.goproto.proto.test.TestAllTypesProto2Editions.MapInt32FloatEntryR\rmapInt32Float\x12l\n" +
	"\x10map_int32_double\x18C \x03(\v2B.goproto.proto.test.TestAllTypesProto2Editions.MapInt32DoubleEntryR\x0emapInt32Double\x12c\n" +
	"\rmap_bool_bool\x18D \x03(\v2?.goproto.proto.test.TestAllTypesProto2Editions.MapBoolBoolEntryR\vmapBoolBool\x12o\n" +
	"\x11map_string_string\x18E \x03(\v2C.goproto.proto.test.TestAllTypesProto2Editions.MapStringStringEntryR\x0fmapStringString\x12l\n" +
	"\x10map_string_bytes\x18F \x03(\v2B.goproto.proto.test.TestAllTypesProto2Editions.MapStringBytesEntryR\x0emapStringBytes\x12\x85\x01\n" +
	"\x19map_string_nested_message\x18G \x03(\v2J.goproto.proto.test.TestAllTypesProto2Editions.MapStringNestedMessageEntryR\x16mapStringNestedMessage\x12|\n" +
	"\x16map_string_nested_enum\x18I \x03(\v2G.goproto.proto.test.TestAllTypesProto2Editions.MapStringNestedEnumEntryR\x13mapStringNestedEnum\x12'\n" +
	"\rdefault_int32\x18Q \x01(\x05:\x0281R\fdefaultInt32\x12'\n" +
	"\rdefault_int64\x18R \x01(\x03:\x0282R\fdefaultInt64\x12)\n" +
	"\x0edefault_uint32\x18S \x01(\r:\x0283R\rdefaultUint32\x12)\n" +
	"\x0edefault_uint64\x18T \x01(\x04:\x0284R\rdefaultUint64\x12*\n" +
	"\x0edefault_sint32\x18U \x01(\x11:\x03-85R\rdefaultSint32\x12)\n" +
	"\x0edefault_sint64\x18V \x01(\x12:\x0286R\rdefaultSint64\x12+\n" +
	"\x0fdefault_fixed32\x18W \x01(\a:\x0287R\x0edefaultFixed32\x12+\n" +
	"\x0fdefault_fixed64\x18X \x01(\x06:\x0288R\x0edefaultFixed64\x12-\n" +
	"\x10default_sfixed32\x18Y \x01(\x0f:\x0289R\x0fdefaultSfixed32\x12.\n" +
	"\x10default_sfixed64\x18P \x01(\x10:\x03-90R\x0fdefaultSfixed64\x12)\n" +
	"\rdefault_float\x18[ \x01(\x02:\x0491.5R\fdefaultFloat\x12,\n" +
	"\x0edefault_double\x18\\ \x01(\x01:\x0592000R\rdefaultDouble\x12'\n" +
	"\fdefault_bool\x18] \x01(\b:\x04trueR\vdefaultBool\x12,\n" +
	"\x0edefault_string\x18^ \x01(\t:\x05helloR\rdefaultString\x12*\n" +
	"\rdefault_bytes\x18_ \x01(\f:\x05worldR\fdefaultBytes\x12n\n" +
	"\x13default_nested_enum\x18` \x01(\x0e29.goproto.proto.test.TestAllTypesProto2Editions.NestedEnum:\x03BARR\x11defaultNestedEnum\x12#\n" +
	"\foneof_uint32\x18o \x01(\rH\x00R\voneofUint32\x12p\n" +
	"\x14oneof_nested_message\x18p \x01(\v2<.goproto.proto.test.TestAllTypesProto2Editions.NestedMessageH\x00R\x12oneofNestedMessage\x12#\n" +
	"\foneof_string\x18q \x01(\tH\x00R\voneofString\x12!\n" +
	"\voneof_bytes\x18r \x01(\fH\x00R\n" +
	"oneofBytes\x12\x1f\n" +
	"\n" +
	"oneof_bool\x18s \x01(\bH\x00R\toneofBool\x12#\n" +
	"\foneof_uint64\x18t \x01(\x04H\x00R\voneofUint64\x12!\n" +
	"\voneof_float\x18u \x01(\x02H\x00R\n" +
	"oneofFloat\x12#\n" +
	"\foneof_double\x18v \x01(\x01H\x00R\voneofDouble\x12Z\n" +
	"\n" +
	"oneof_enum\x18w \x01(\x0e29.goproto.proto.test.TestAllTypesProto2Editions.NestedEnumH\x00R\toneofEnum\x12b\n" +
	"\n" +
	"oneofgroup\x18y \x01(\v29.goproto.proto.test.TestAllTypesProto2Editions.OneofGroupB\x05\xaa\x01\x02(\x02H\x00R\n" +
	"oneofgroup\x124\n" +
	"\x15oneof_optional_uint32\x18x \x01(\rH\x01R\x13oneofOptionalUint32\x1ao\n" +
	"\rNestedMessage\x12\f\n" +
	"\x01a\x18\x01 \x01(\x05R\x01a\x12P\n" +
	"\vcorecursive\x18\x02 \x01(\v2..goproto.proto.test.TestAllTypesProto2EditionsR\vcorecursive\x1a\xc0\x01\n" +
	"\rOptionalGroup\x12\f\n" +
	"\x01a\x18\x11 \x01(\x05R\x01a\x12u\n" +
	"\x17optional_nested_message\x18\xe8\a \x01(\v2<.goproto.proto.test.TestAllTypesProto2Editions.NestedMessageR\x15optionalNestedMessage\x12*\n" +
	"\x11same_field_number\x18\x10 \x01(\x05R\x0fsameFieldNumber\x1a\x94\x01\n" +
	"\rRepeatedGroup\x12\f\n" +
	"\x01a\x18/ \x01(\x05R\x01a\x12u\n" +
	"\x17optional_nested_message\x18\xe9\a \x01(\v2<.goproto.proto.test.TestAllTypesProto2Editions.NestedMessageR\x15optionalNestedMessage\x1a@\n" +
	"\x12MapInt32Int32Entry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\x05R\x05value:\x028\x01\x1a@\n" +
	"\x12MapInt64Int64Entry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\x03R\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\x03R\x05value:\x028\x01\x1aB\n" +
	"\x14MapUint32Uint32Entry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\rR\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\rR\x05value:\x028\x01\x1aB\n" +
	"\x14MapUint64Uint64Entry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\x04R\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\x04R\x05value:\x028\x01\x1aB\n" +
	"\x14MapSint32Sint32Entry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\x11R\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\x11R\x05value:\x028\x01\x1aB\n" +
	"\x14MapSint64Sint64Entry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\x12R\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\x12R\x05value:\x028\x01\x1aD\n" +
	"\x16MapFixed32Fixed32Entry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\aR\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\aR\x05value:\x028\x01\x1aD\n" +
	"\x16MapFixed64Fixed64Entry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\x06R\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\x06R\x05value:\x028\x01\x1aF\n" +
	"\x18MapSfixed32Sfixed32Entry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\x0fR\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\x0fR\x05value:\x028\x01\x1aF\n" +
	"\x18MapSfixed64Sfixed64Entry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\x10R\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\x10R\x05value:\x028\x01\x1a@\n" +
	"\x12MapInt32FloatEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\x02R\x05value:\x028\x01\x1aA\n" +
	"\x13MapInt32DoubleEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\x05R\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\x01R\x05value:\x028\x01\x1a>\n" +
	"\x10MapBoolBoolEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\bR\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\bR\x05value:\x028\x01\x1aB\n" +
	"\x14MapStringStringEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\x1aA\n" +
	"\x13MapStringBytesEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\fR\x05value:\x028\x01\x1a\x87\x01\n" +
	"\x1bMapStringNestedMessageEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12R\n" +
	"\x05value\x18\x02 \x01(\v2<.goproto.proto.test.TestAllTypesProto2Editions.NestedMessageR\x05value:\x028\x01\x1a\x81\x01\n" +
	"\x18MapStringNestedEnumEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12O\n" +
	"\x05value\x18\x02 \x01(\x0e29.goproto.proto.test.TestAllTypesProto2Editions.NestedEnumR\x05value:\x028\x01\x1a(\n" +
	"\n" +
	"OneofGroup\x12\f\n" +
	"\x01a\x18\x01 \x01(\x05R\x01a\x12\f\n" +
	"\x01b\x18\x02 \x01(\x05R\x01b\"D\n" +
	"\n" +
	"NestedEnum\x12\a\n" +
	"\x03FOO\x10\x00\x12\a\n" +
	"\x03BAR\x10\x01\x12\a\n" +
	"\x03BAZ\x10\x02\x12\x10\n" +
	"\x03NEG\x10\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x1a\t:\a\xd2>\x02\b\x01\x10\x02B\r\n" +
	"\voneof_fieldB\x10\n" +
	"\x0eoneof_optionalBHZ?google.golang.org/protobuf/internal/testprotos/editionsfuzztest\x92\x03\x04\x18\x02 \x03b\beditionsp\xe8\a"

var (
	file_internal_testprotos_editionsfuzztest_test2editions_proto_rawDescOnce sync.Once
	file_internal_testprotos_editionsfuzztest_test2editions_proto_rawDescData []byte
)

func file_internal_testprotos_editionsfuzztest_test2editions_proto_rawDescGZIP() []byte {
	file_internal_testprotos_editionsfuzztest_test2editions_proto_rawDescOnce.Do(func() {
		file_internal_testprotos_editionsfuzztest_test2editions_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_internal_testprotos_editionsfuzztest_test2editions_proto_rawDesc), len(file_internal_testprotos_editionsfuzztest_test2editions_proto_rawDesc)))
	})
	return file_internal_testprotos_editionsfuzztest_test2editions_proto_rawDescData
}

var file_internal_testprotos_editionsfuzztest_test2editions_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_internal_testprotos_editionsfuzztest_test2editions_proto_msgTypes = make([]protoimpl.MessageInfo, 22)
var file_internal_testprotos_editionsfuzztest_test2editions_proto_goTypes = []any{
	(TestAllTypesProto2Editions_NestedEnum)(0),       // 0: goproto.proto.test.TestAllTypesProto2Editions.NestedEnum
	(*TestAllTypesProto2Editions)(nil),               // 1: goproto.proto.test.TestAllTypesProto2Editions
	(*TestAllTypesProto2Editions_NestedMessage)(nil), // 2: goproto.proto.test.TestAllTypesProto2Editions.NestedMessage
	(*TestAllTypesProto2Editions_OptionalGroup)(nil), // 3: goproto.proto.test.TestAllTypesProto2Editions.OptionalGroup
	(*TestAllTypesProto2Editions_RepeatedGroup)(nil), // 4: goproto.proto.test.TestAllTypesProto2Editions.RepeatedGroup
	nil, // 5: goproto.proto.test.TestAllTypesProto2Editions.MapInt32Int32Entry
	nil, // 6: goproto.proto.test.TestAllTypesProto2Editions.MapInt64Int64Entry
	nil, // 7: goproto.proto.test.TestAllTypesProto2Editions.MapUint32Uint32Entry
	nil, // 8: goproto.proto.test.TestAllTypesProto2Editions.MapUint64Uint64Entry
	nil, // 9: goproto.proto.test.TestAllTypesProto2Editions.MapSint32Sint32Entry
	nil, // 10: goproto.proto.test.TestAllTypesProto2Editions.MapSint64Sint64Entry
	nil, // 11: goproto.proto.test.TestAllTypesProto2Editions.MapFixed32Fixed32Entry
	nil, // 12: goproto.proto.test.TestAllTypesProto2Editions.MapFixed64Fixed64Entry
	nil, // 13: goproto.proto.test.TestAllTypesProto2Editions.MapSfixed32Sfixed32Entry
	nil, // 14: goproto.proto.test.TestAllTypesProto2Editions.MapSfixed64Sfixed64Entry
	nil, // 15: goproto.proto.test.TestAllTypesProto2Editions.MapInt32FloatEntry
	nil, // 16: goproto.proto.test.TestAllTypesProto2Editions.MapInt32DoubleEntry
	nil, // 17: goproto.proto.test.TestAllTypesProto2Editions.MapBoolBoolEntry
	nil, // 18: goproto.proto.test.TestAllTypesProto2Editions.MapStringStringEntry
	nil, // 19: goproto.proto.test.TestAllTypesProto2Editions.MapStringBytesEntry
	nil, // 20: goproto.proto.test.TestAllTypesProto2Editions.MapStringNestedMessageEntry
	nil, // 21: goproto.proto.test.TestAllTypesProto2Editions.MapStringNestedEnumEntry
	(*TestAllTypesProto2Editions_OneofGroup)(nil), // 22: goproto.proto.test.TestAllTypesProto2Editions.OneofGroup
}
var file_internal_testprotos_editionsfuzztest_test2editions_proto_depIdxs = []int32{
	3,  // 0: goproto.proto.test.TestAllTypesProto2Editions.optionalgroup:type_name -> goproto.proto.test.TestAllTypesProto2Editions.OptionalGroup
	2,  // 1: goproto.proto.test.TestAllTypesProto2Editions.optional_nested_message:type_name -> goproto.proto.test.TestAllTypesProto2Editions.NestedMessage
	0,  // 2: goproto.proto.test.TestAllTypesProto2Editions.optional_nested_enum:type_name -> goproto.proto.test.TestAllTypesProto2Editions.NestedEnum
	4,  // 3: goproto.proto.test.TestAllTypesProto2Editions.repeatedgroup:type_name -> goproto.proto.test.TestAllTypesProto2Editions.RepeatedGroup
	2,  // 4: goproto.proto.test.TestAllTypesProto2Editions.repeated_nested_message:type_name -> goproto.proto.test.TestAllTypesProto2Editions.NestedMessage
	0,  // 5: goproto.proto.test.TestAllTypesProto2Editions.repeated_nested_enum:type_name -> goproto.proto.test.TestAllTypesProto2Editions.NestedEnum
	5,  // 6: goproto.proto.test.TestAllTypesProto2Editions.map_int32_int32:type_name -> goproto.proto.test.TestAllTypesProto2Editions.MapInt32Int32Entry
	6,  // 7: goproto.proto.test.TestAllTypesProto2Editions.map_int64_int64:type_name -> goproto.proto.test.TestAllTypesProto2Editions.MapInt64Int64Entry
	7,  // 8: goproto.proto.test.TestAllTypesProto2Editions.map_uint32_uint32:type_name -> goproto.proto.test.TestAllTypesProto2Editions.MapUint32Uint32Entry
	8,  // 9: goproto.proto.test.TestAllTypesProto2Editions.map_uint64_uint64:type_name -> goproto.proto.test.TestAllTypesProto2Editions.MapUint64Uint64Entry
	9,  // 10: goproto.proto.test.TestAllTypesProto2Editions.map_sint32_sint32:type_name -> goproto.proto.test.TestAllTypesProto2Editions.MapSint32Sint32Entry
	10, // 11: goproto.proto.test.TestAllTypesProto2Editions.map_sint64_sint64:type_name -> goproto.proto.test.TestAllTypesProto2Editions.MapSint64Sint64Entry
	11, // 12: goproto.proto.test.TestAllTypesProto2Editions.map_fixed32_fixed32:type_name -> goproto.proto.test.TestAllTypesProto2Editions.MapFixed32Fixed32Entry
	12, // 13: goproto.proto.test.TestAllTypesProto2Editions.map_fixed64_fixed64:type_name -> goproto.proto.test.TestAllTypesProto2Editions.MapFixed64Fixed64Entry
	13, // 14: goproto.proto.test.TestAllTypesProto2Editions.map_sfixed32_sfixed32:type_name -> goproto.proto.test.TestAllTypesProto2Editions.MapSfixed32Sfixed32Entry
	14, // 15: goproto.proto.test.TestAllTypesProto2Editions.map_sfixed64_sfixed64:type_name -> goproto.proto.test.TestAllTypesProto2Editions.MapSfixed64Sfixed64Entry
	15, // 16: goproto.proto.test.TestAllTypesProto2Editions.map_int32_float:type_name -> goproto.proto.test.TestAllTypesProto2Editions.MapInt32FloatEntry
	16, // 17: goproto.proto.test.TestAllTypesProto2Editions.map_int32_double:type_name -> goproto.proto.test.TestAllTypesProto2Editions.MapInt32DoubleEntry
	17, // 18: goproto.proto.test.TestAllTypesProto2Editions.map_bool_bool:type_name -> goproto.proto.test.TestAllTypesProto2Editions.MapBoolBoolEntry
	18, // 19: goproto.proto.test.TestAllTypesProto2Editions.map_string_string:type_name -> goproto.proto.test.TestAllTypesProto2Editions.MapStringStringEntry
	19, // 20: goproto.proto.test.TestAllTypesProto2Editions.map_string_bytes:type_name -> goproto.proto.test.TestAllTypesProto2Editions.MapStringBytesEntry
	20, // 21: goproto.proto.test.TestAllTypesProto2Editions.map_string_nested_message:type_name -> goproto.proto.test.TestAllTypesProto2Editions.MapStringNestedMessageEntry
	21, // 22: goproto.proto.test.TestAllTypesProto2Editions.map_string_nested_enum:type_name -> goproto.proto.test.TestAllTypesProto2Editions.MapStringNestedEnumEntry
	0,  // 23: goproto.proto.test.TestAllTypesProto2Editions.default_nested_enum:type_name -> goproto.proto.test.TestAllTypesProto2Editions.NestedEnum
	2,  // 24: goproto.proto.test.TestAllTypesProto2Editions.oneof_nested_message:type_name -> goproto.proto.test.TestAllTypesProto2Editions.NestedMessage
	0,  // 25: goproto.proto.test.TestAllTypesProto2Editions.oneof_enum:type_name -> goproto.proto.test.TestAllTypesProto2Editions.NestedEnum
	22, // 26: goproto.proto.test.TestAllTypesProto2Editions.oneofgroup:type_name -> goproto.proto.test.TestAllTypesProto2Editions.OneofGroup
	1,  // 27: goproto.proto.test.TestAllTypesProto2Editions.NestedMessage.corecursive:type_name -> goproto.proto.test.TestAllTypesProto2Editions
	2,  // 28: goproto.proto.test.TestAllTypesProto2Editions.OptionalGroup.optional_nested_message:type_name -> goproto.proto.test.TestAllTypesProto2Editions.NestedMessage
	2,  // 29: goproto.proto.test.TestAllTypesProto2Editions.RepeatedGroup.optional_nested_message:type_name -> goproto.proto.test.TestAllTypesProto2Editions.NestedMessage
	2,  // 30: goproto.proto.test.TestAllTypesProto2Editions.MapStringNestedMessageEntry.value:type_name -> goproto.proto.test.TestAllTypesProto2Editions.NestedMessage
	0,  // 31: goproto.proto.test.TestAllTypesProto2Editions.MapStringNestedEnumEntry.value:type_name -> goproto.proto.test.TestAllTypesProto2Editions.NestedEnum
	32, // [32:32] is the sub-list for method output_type
	32, // [32:32] is the sub-list for method input_type
	32, // [32:32] is the sub-list for extension type_name
	32, // [32:32] is the sub-list for extension extendee
	0,  // [0:32] is the sub-list for field type_name
}

func init() { file_internal_testprotos_editionsfuzztest_test2editions_proto_init() }
func file_internal_testprotos_editionsfuzztest_test2editions_proto_init() {
	if File_internal_testprotos_editionsfuzztest_test2editions_proto != nil {
		return
	}
	file_internal_testprotos_editionsfuzztest_test2editions_proto_msgTypes[0].OneofWrappers = []any{
		(*TestAllTypesProto2Editions_OneofUint32)(nil),
		(*TestAllTypesProto2Editions_OneofNestedMessage)(nil),
		(*TestAllTypesProto2Editions_OneofString)(nil),
		(*TestAllTypesProto2Editions_OneofBytes)(nil),
		(*TestAllTypesProto2Editions_OneofBool)(nil),
		(*TestAllTypesProto2Editions_OneofUint64)(nil),
		(*TestAllTypesProto2Editions_OneofFloat)(nil),
		(*TestAllTypesProto2Editions_OneofDouble)(nil),
		(*TestAllTypesProto2Editions_OneofEnum)(nil),
		(*TestAllTypesProto2Editions_Oneofgroup)(nil),
		(*TestAllTypesProto2Editions_OneofOptionalUint32)(nil),
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_testprotos_editionsfuzztest_test2editions_proto_rawDesc), len(file_internal_testprotos_editionsfuzztest_test2editions_proto_rawDesc)),
			NumEnums:      1,
			NumMessages:   22,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_internal_testprotos_editionsfuzztest_test2editions_proto_goTypes,
		DependencyIndexes: file_internal_testprotos_editionsfuzztest_test2editions_proto_depIdxs,
		EnumInfos:         file_internal_testprotos_editionsfuzztest_test2editions_proto_enumTypes,
		MessageInfos:      file_internal_testprotos_editionsfuzztest_test2editions_proto_msgTypes,
	}.Build()
	File_internal_testprotos_editionsfuzztest_test2editions_proto = out.File
	file_internal_testprotos_editionsfuzztest_test2editions_proto_goTypes = nil
	file_internal_testprotos_editionsfuzztest_test2editions_proto_depIdxs = nil
}
