1// Copyright 2018 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// Code generated by protoc-gen-go. DO NOT EDIT.
6// source: proto3_20180430_b4deda09/test.proto
7
8package proto3_20180430_b4deda09 // import "google.golang.org/protobuf/internal/testprotos/legacy/proto3_20180430_b4deda09"
9
10import proto "google.golang.org/protobuf/internal/protolegacy"
11import fmt "fmt"
12import math "math"
13
14// Reference imports to suppress errors if they are not otherwise used.
15var _ = proto.Marshal
16var _ = fmt.Errorf
17var _ = math.Inf
18
19// This is a compile-time assertion to ensure that this generated file
20// is compatible with the proto package it is being compiled against.
21// A compilation error at this line likely means your copy of the
22// proto package needs to be updated.
23const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
24
25type SiblingEnum int32
26
27const (
28	SiblingEnum_ALPHA   SiblingEnum = 0
29	SiblingEnum_BRAVO   SiblingEnum = 10
30	SiblingEnum_CHARLIE SiblingEnum = 200
31)
32
33var SiblingEnum_name = map[int32]string{
34	0:   "ALPHA",
35	10:  "BRAVO",
36	200: "CHARLIE",
37}
38var SiblingEnum_value = map[string]int32{
39	"ALPHA":   0,
40	"BRAVO":   10,
41	"CHARLIE": 200,
42}
43
44func (x SiblingEnum) String() string {
45	return proto.EnumName(SiblingEnum_name, int32(x))
46}
47func (SiblingEnum) EnumDescriptor() ([]byte, []int) {
48	return fileDescriptor_test_b39f8dbfc888d45a, []int{0}
49}
50
51type Message_ChildEnum int32
52
53const (
54	Message_ALPHA   Message_ChildEnum = 0
55	Message_BRAVO   Message_ChildEnum = 1
56	Message_CHARLIE Message_ChildEnum = 2
57)
58
59var Message_ChildEnum_name = map[int32]string{
60	0: "ALPHA",
61	1: "BRAVO",
62	2: "CHARLIE",
63}
64var Message_ChildEnum_value = map[string]int32{
65	"ALPHA":   0,
66	"BRAVO":   1,
67	"CHARLIE": 2,
68}
69
70func (x Message_ChildEnum) String() string {
71	return proto.EnumName(Message_ChildEnum_name, int32(x))
72}
73func (Message_ChildEnum) EnumDescriptor() ([]byte, []int) {
74	return fileDescriptor_test_b39f8dbfc888d45a, []int{1, 0}
75}
76
77type SiblingMessage struct {
78	F1                   string   `protobuf:"bytes,1,opt,name=f1" json:"f1,omitempty"`
79	F2                   []string `protobuf:"bytes,2,rep,name=f2" json:"f2,omitempty"`
80	F3                   *Message `protobuf:"bytes,3,opt,name=f3" json:"f3,omitempty"`
81	XXX_NoUnkeyedLiteral struct{} `json:"-"`
82	XXX_unrecognized     []byte   `json:"-"`
83	XXX_sizecache        int32    `json:"-"`
84}
85
86func (m *SiblingMessage) Reset()         { *m = SiblingMessage{} }
87func (m *SiblingMessage) String() string { return proto.CompactTextString(m) }
88func (*SiblingMessage) ProtoMessage()    {}
89func (*SiblingMessage) Descriptor() ([]byte, []int) {
90	return fileDescriptor_test_b39f8dbfc888d45a, []int{0}
91}
92func (m *SiblingMessage) XXX_Unmarshal(b []byte) error {
93	return xxx_messageInfo_SiblingMessage.Unmarshal(m, b)
94}
95func (m *SiblingMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
96	return xxx_messageInfo_SiblingMessage.Marshal(b, m, deterministic)
97}
98func (dst *SiblingMessage) XXX_Merge(src proto.Message) {
99	xxx_messageInfo_SiblingMessage.Merge(dst, src)
100}
101func (m *SiblingMessage) XXX_Size() int {
102	return xxx_messageInfo_SiblingMessage.Size(m)
103}
104func (m *SiblingMessage) XXX_DiscardUnknown() {
105	xxx_messageInfo_SiblingMessage.DiscardUnknown(m)
106}
107
108var xxx_messageInfo_SiblingMessage proto.InternalMessageInfo
109
110func (m *SiblingMessage) GetF1() string {
111	if m != nil {
112		return m.F1
113	}
114	return ""
115}
116
117func (m *SiblingMessage) GetF2() []string {
118	if m != nil {
119		return m.F2
120	}
121	return nil
122}
123
124func (m *SiblingMessage) GetF3() *Message {
125	if m != nil {
126		return m.F3
127	}
128	return nil
129}
130
131type Message struct {
132	// Optional fields.
133	OptionalBool           bool                  `protobuf:"varint,100,opt,name=optional_bool,json=optionalBool" json:"optional_bool,omitempty"`
134	OptionalInt32          int32                 `protobuf:"varint,101,opt,name=optional_int32,json=optionalInt32" json:"optional_int32,omitempty"`
135	OptionalSint32         int32                 `protobuf:"zigzag32,102,opt,name=optional_sint32,json=optionalSint32" json:"optional_sint32,omitempty"`
136	OptionalUint32         uint32                `protobuf:"varint,103,opt,name=optional_uint32,json=optionalUint32" json:"optional_uint32,omitempty"`
137	OptionalInt64          int64                 `protobuf:"varint,104,opt,name=optional_int64,json=optionalInt64" json:"optional_int64,omitempty"`
138	OptionalSint64         int64                 `protobuf:"zigzag64,105,opt,name=optional_sint64,json=optionalSint64" json:"optional_sint64,omitempty"`
139	OptionalUint64         uint64                `protobuf:"varint,106,opt,name=optional_uint64,json=optionalUint64" json:"optional_uint64,omitempty"`
140	OptionalFixed32        uint32                `protobuf:"fixed32,107,opt,name=optional_fixed32,json=optionalFixed32" json:"optional_fixed32,omitempty"`
141	OptionalSfixed32       int32                 `protobuf:"fixed32,108,opt,name=optional_sfixed32,json=optionalSfixed32" json:"optional_sfixed32,omitempty"`
142	OptionalFloat          float32               `protobuf:"fixed32,109,opt,name=optional_float,json=optionalFloat" json:"optional_float,omitempty"`
143	OptionalFixed64        uint64                `protobuf:"fixed64,110,opt,name=optional_fixed64,json=optionalFixed64" json:"optional_fixed64,omitempty"`
144	OptionalSfixed64       int64                 `protobuf:"fixed64,111,opt,name=optional_sfixed64,json=optionalSfixed64" json:"optional_sfixed64,omitempty"`
145	OptionalDouble         float64               `protobuf:"fixed64,112,opt,name=optional_double,json=optionalDouble" json:"optional_double,omitempty"`
146	OptionalString         string                `protobuf:"bytes,113,opt,name=optional_string,json=optionalString" json:"optional_string,omitempty"`
147	OptionalBytes          []byte                `protobuf:"bytes,114,opt,name=optional_bytes,json=optionalBytes,proto3" json:"optional_bytes,omitempty"`
148	OptionalChildEnum      Message_ChildEnum     `protobuf:"varint,115,opt,name=optional_child_enum,json=optionalChildEnum,enum=google.golang.org.proto3_20180430.Message_ChildEnum" json:"optional_child_enum,omitempty"`
149	OptionalChildMessage   *Message_ChildMessage `protobuf:"bytes,116,opt,name=optional_child_message,json=optionalChildMessage" json:"optional_child_message,omitempty"`
150	OptionalSiblingEnum    SiblingEnum           `protobuf:"varint,117,opt,name=optional_sibling_enum,json=optionalSiblingEnum,enum=google.golang.org.proto3_20180430.SiblingEnum" json:"optional_sibling_enum,omitempty"`
151	OptionalSiblingMessage *SiblingMessage       `protobuf:"bytes,118,opt,name=optional_sibling_message,json=optionalSiblingMessage" json:"optional_sibling_message,omitempty"`
152	// Repeated fields.
153	RepeatedBool           []bool                  `protobuf:"varint,200,rep,packed,name=repeated_bool,json=repeatedBool" json:"repeated_bool,omitempty"`
154	RepeatedInt32          []int32                 `protobuf:"varint,201,rep,packed,name=repeated_int32,json=repeatedInt32" json:"repeated_int32,omitempty"`
155	RepeatedSint32         []int32                 `protobuf:"zigzag32,202,rep,packed,name=repeated_sint32,json=repeatedSint32" json:"repeated_sint32,omitempty"`
156	RepeatedUint32         []uint32                `protobuf:"varint,203,rep,packed,name=repeated_uint32,json=repeatedUint32" json:"repeated_uint32,omitempty"`
157	RepeatedInt64          []int64                 `protobuf:"varint,204,rep,packed,name=repeated_int64,json=repeatedInt64" json:"repeated_int64,omitempty"`
158	RepeatedSint64         []int64                 `protobuf:"zigzag64,205,rep,packed,name=repeated_sint64,json=repeatedSint64" json:"repeated_sint64,omitempty"`
159	RepeatedUint64         []uint64                `protobuf:"varint,206,rep,packed,name=repeated_uint64,json=repeatedUint64" json:"repeated_uint64,omitempty"`
160	RepeatedFixed32        []uint32                `protobuf:"fixed32,207,rep,packed,name=repeated_fixed32,json=repeatedFixed32" json:"repeated_fixed32,omitempty"`
161	RepeatedSfixed32       []int32                 `protobuf:"fixed32,208,rep,packed,name=repeated_sfixed32,json=repeatedSfixed32" json:"repeated_sfixed32,omitempty"`
162	RepeatedFloat          []float32               `protobuf:"fixed32,209,rep,packed,name=repeated_float,json=repeatedFloat" json:"repeated_float,omitempty"`
163	RepeatedFixed64        []uint64                `protobuf:"fixed64,210,rep,packed,name=repeated_fixed64,json=repeatedFixed64" json:"repeated_fixed64,omitempty"`
164	RepeatedSfixed64       []int64                 `protobuf:"fixed64,211,rep,packed,name=repeated_sfixed64,json=repeatedSfixed64" json:"repeated_sfixed64,omitempty"`
165	RepeatedDouble         []float64               `protobuf:"fixed64,212,rep,packed,name=repeated_double,json=repeatedDouble" json:"repeated_double,omitempty"`
166	RepeatedString         []string                `protobuf:"bytes,213,rep,name=repeated_string,json=repeatedString" json:"repeated_string,omitempty"`
167	RepeatedBytes          [][]byte                `protobuf:"bytes,214,rep,name=repeated_bytes,json=repeatedBytes,proto3" json:"repeated_bytes,omitempty"`
168	RepeatedChildEnum      []Message_ChildEnum     `protobuf:"varint,215,rep,packed,name=repeated_child_enum,json=repeatedChildEnum,enum=google.golang.org.proto3_20180430.Message_ChildEnum" json:"repeated_child_enum,omitempty"`
169	RepeatedChildMessage   []*Message_ChildMessage `protobuf:"bytes,216,rep,name=repeated_child_message,json=repeatedChildMessage" json:"repeated_child_message,omitempty"`
170	RepeatedSiblingEnum    []SiblingEnum           `protobuf:"varint,217,rep,packed,name=repeated_sibling_enum,json=repeatedSiblingEnum,enum=google.golang.org.proto3_20180430.SiblingEnum" json:"repeated_sibling_enum,omitempty"`
171	RepeatedSiblingMessage []*SiblingMessage       `protobuf:"bytes,218,rep,name=repeated_sibling_message,json=repeatedSiblingMessage" json:"repeated_sibling_message,omitempty"`
172	// Map fields.
173	MapBoolBool           map[bool]bool                  `protobuf:"bytes,300,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"`
174	MapBoolInt32          map[bool]int32                 `protobuf:"bytes,301,rep,name=map_bool_int32,json=mapBoolInt32" json:"map_bool_int32,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"`
175	MapBoolSint32         map[bool]int32                 `protobuf:"bytes,302,rep,name=map_bool_sint32,json=mapBoolSint32" json:"map_bool_sint32,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"zigzag32,2,opt,name=value"`
176	MapBoolUint32         map[bool]uint32                `protobuf:"bytes,303,rep,name=map_bool_uint32,json=mapBoolUint32" json:"map_bool_uint32,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"`
177	MapBoolInt64          map[bool]int64                 `protobuf:"bytes,304,rep,name=map_bool_int64,json=mapBoolInt64" json:"map_bool_int64,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"`
178	MapBoolSint64         map[bool]int64                 `protobuf:"bytes,305,rep,name=map_bool_sint64,json=mapBoolSint64" json:"map_bool_sint64,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"zigzag64,2,opt,name=value"`
179	MapBoolUint64         map[bool]uint64                `protobuf:"bytes,306,rep,name=map_bool_uint64,json=mapBoolUint64" json:"map_bool_uint64,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"`
180	MapBoolFixed32        map[bool]uint32                `protobuf:"bytes,307,rep,name=map_bool_fixed32,json=mapBoolFixed32" json:"map_bool_fixed32,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"fixed32,2,opt,name=value"`
181	MapBoolSfixed32       map[bool]int32                 `protobuf:"bytes,308,rep,name=map_bool_sfixed32,json=mapBoolSfixed32" json:"map_bool_sfixed32,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"fixed32,2,opt,name=value"`
182	MapBoolFloat          map[bool]float32               `protobuf:"bytes,309,rep,name=map_bool_float,json=mapBoolFloat" json:"map_bool_float,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"fixed32,2,opt,name=value"`
183	MapBoolFixed64        map[bool]uint64                `protobuf:"bytes,310,rep,name=map_bool_fixed64,json=mapBoolFixed64" json:"map_bool_fixed64,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"fixed64,2,opt,name=value"`
184	MapBoolSfixed64       map[bool]int64                 `protobuf:"bytes,311,rep,name=map_bool_sfixed64,json=mapBoolSfixed64" json:"map_bool_sfixed64,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"fixed64,2,opt,name=value"`
185	MapBoolDouble         map[bool]float64               `protobuf:"bytes,312,rep,name=map_bool_double,json=mapBoolDouble" json:"map_bool_double,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"fixed64,2,opt,name=value"`
186	MapBoolString         map[bool]string                `protobuf:"bytes,313,rep,name=map_bool_string,json=mapBoolString" json:"map_bool_string,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
187	MapBoolBytes          map[bool][]byte                `protobuf:"bytes,314,rep,name=map_bool_bytes,json=mapBoolBytes" json:"map_bool_bytes,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value,proto3"`
188	MapBoolChildEnum      map[bool]Message_ChildEnum     `protobuf:"bytes,315,rep,name=map_bool_child_enum,json=mapBoolChildEnum" json:"map_bool_child_enum,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value,enum=google.golang.org.proto3_20180430.Message_ChildEnum"`
189	MapBoolChildMessage   map[bool]*Message_ChildMessage `protobuf:"bytes,316,rep,name=map_bool_child_message,json=mapBoolChildMessage" json:"map_bool_child_message,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
190	MapBoolSiblingEnum    map[bool]SiblingEnum           `protobuf:"bytes,317,rep,name=map_bool_sibling_enum,json=mapBoolSiblingEnum" json:"map_bool_sibling_enum,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value,enum=google.golang.org.proto3_20180430.SiblingEnum"`
191	MapBoolSiblingMessage map[bool]*SiblingMessage       `protobuf:"bytes,318,rep,name=map_bool_sibling_message,json=mapBoolSiblingMessage" json:"map_bool_sibling_message,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
192	MapInt32Bool          map[int32]bool                 `protobuf:"bytes,319,rep,name=map_int32_bool,json=mapInt32Bool" json:"map_int32_bool,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"`
193	MapSint32Bool         map[int32]bool                 `protobuf:"bytes,320,rep,name=map_sint32_bool,json=mapSint32Bool" json:"map_sint32_bool,omitempty" protobuf_key:"zigzag32,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"`
194	MapUint32Bool         map[uint32]bool                `protobuf:"bytes,321,rep,name=map_uint32_bool,json=mapUint32Bool" json:"map_uint32_bool,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"`
195	MapInt64Bool          map[int64]bool                 `protobuf:"bytes,322,rep,name=map_int64_bool,json=mapInt64Bool" json:"map_int64_bool,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"`
196	MapSint64Bool         map[int64]bool                 `protobuf:"bytes,323,rep,name=map_sint64_bool,json=mapSint64Bool" json:"map_sint64_bool,omitempty" protobuf_key:"zigzag64,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"`
197	MapUint64Bool         map[uint64]bool                `protobuf:"bytes,324,rep,name=map_uint64_bool,json=mapUint64Bool" json:"map_uint64_bool,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"`
198	MapFixed32Bool        map[uint32]bool                `protobuf:"bytes,325,rep,name=map_fixed32_bool,json=mapFixed32Bool" json:"map_fixed32_bool,omitempty" protobuf_key:"fixed32,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"`
199	MapStringBool         map[string]bool                `protobuf:"bytes,326,rep,name=map_string_bool,json=mapStringBool" json:"map_string_bool,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"`
200	// Oneof fields.
201	//
202	// Types that are valid to be assigned to OneofUnion:
203	//	*Message_OneofBool
204	//	*Message_OneofInt32
205	//	*Message_OneofSint32
206	//	*Message_OneofUint32
207	//	*Message_OneofInt64
208	//	*Message_OneofSint64
209	//	*Message_OneofUint64
210	//	*Message_OneofFixed32
211	//	*Message_OneofSfixed32
212	//	*Message_OneofFloat
213	//	*Message_OneofFixed64
214	//	*Message_OneofSfixed64
215	//	*Message_OneofDouble
216	//	*Message_OneofString
217	//	*Message_OneofBytes
218	//	*Message_OneofChildEnum
219	//	*Message_OneofChildMessage
220	//	*Message_OneofSiblingEnum
221	//	*Message_OneofSiblingMessage
222	//	*Message_OneofString1
223	//	*Message_OneofString2
224	//	*Message_OneofString3
225	OneofUnion           isMessage_OneofUnion `protobuf_oneof:"oneof_union"`
226	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
227	XXX_unrecognized     []byte               `json:"-"`
228	XXX_sizecache        int32                `json:"-"`
229}
230
231func (m *Message) Reset()         { *m = Message{} }
232func (m *Message) String() string { return proto.CompactTextString(m) }
233func (*Message) ProtoMessage()    {}
234func (*Message) Descriptor() ([]byte, []int) {
235	return fileDescriptor_test_b39f8dbfc888d45a, []int{1}
236}
237func (m *Message) XXX_Unmarshal(b []byte) error {
238	return xxx_messageInfo_Message.Unmarshal(m, b)
239}
240func (m *Message) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
241	return xxx_messageInfo_Message.Marshal(b, m, deterministic)
242}
243func (dst *Message) XXX_Merge(src proto.Message) {
244	xxx_messageInfo_Message.Merge(dst, src)
245}
246func (m *Message) XXX_Size() int {
247	return xxx_messageInfo_Message.Size(m)
248}
249func (m *Message) XXX_DiscardUnknown() {
250	xxx_messageInfo_Message.DiscardUnknown(m)
251}
252
253var xxx_messageInfo_Message proto.InternalMessageInfo
254
255type isMessage_OneofUnion interface {
256	isMessage_OneofUnion()
257}
258
259type Message_OneofBool struct {
260	OneofBool bool `protobuf:"varint,400,opt,name=oneof_bool,json=oneofBool,oneof"`
261}
262type Message_OneofInt32 struct {
263	OneofInt32 int32 `protobuf:"varint,401,opt,name=oneof_int32,json=oneofInt32,oneof"`
264}
265type Message_OneofSint32 struct {
266	OneofSint32 int32 `protobuf:"zigzag32,402,opt,name=oneof_sint32,json=oneofSint32,oneof"`
267}
268type Message_OneofUint32 struct {
269	OneofUint32 uint32 `protobuf:"varint,403,opt,name=oneof_uint32,json=oneofUint32,oneof"`
270}
271type Message_OneofInt64 struct {
272	OneofInt64 int64 `protobuf:"varint,404,opt,name=oneof_int64,json=oneofInt64,oneof"`
273}
274type Message_OneofSint64 struct {
275	OneofSint64 int64 `protobuf:"zigzag64,405,opt,name=oneof_sint64,json=oneofSint64,oneof"`
276}
277type Message_OneofUint64 struct {
278	OneofUint64 uint64 `protobuf:"varint,406,opt,name=oneof_uint64,json=oneofUint64,oneof"`
279}
280type Message_OneofFixed32 struct {
281	OneofFixed32 uint32 `protobuf:"fixed32,407,opt,name=oneof_fixed32,json=oneofFixed32,oneof"`
282}
283type Message_OneofSfixed32 struct {
284	OneofSfixed32 int32 `protobuf:"fixed32,408,opt,name=oneof_sfixed32,json=oneofSfixed32,oneof"`
285}
286type Message_OneofFloat struct {
287	OneofFloat float32 `protobuf:"fixed32,409,opt,name=oneof_float,json=oneofFloat,oneof"`
288}
289type Message_OneofFixed64 struct {
290	OneofFixed64 uint64 `protobuf:"fixed64,410,opt,name=oneof_fixed64,json=oneofFixed64,oneof"`
291}
292type Message_OneofSfixed64 struct {
293	OneofSfixed64 int64 `protobuf:"fixed64,411,opt,name=oneof_sfixed64,json=oneofSfixed64,oneof"`
294}
295type Message_OneofDouble struct {
296	OneofDouble float64 `protobuf:"fixed64,412,opt,name=oneof_double,json=oneofDouble,oneof"`
297}
298type Message_OneofString struct {
299	OneofString string `protobuf:"bytes,413,opt,name=oneof_string,json=oneofString,oneof"`
300}
301type Message_OneofBytes struct {
302	OneofBytes []byte `protobuf:"bytes,414,opt,name=oneof_bytes,json=oneofBytes,proto3,oneof"`
303}
304type Message_OneofChildEnum struct {
305	OneofChildEnum Message_ChildEnum `protobuf:"varint,415,opt,name=oneof_child_enum,json=oneofChildEnum,enum=google.golang.org.proto3_20180430.Message_ChildEnum,oneof"`
306}
307type Message_OneofChildMessage struct {
308	OneofChildMessage *Message_ChildMessage `protobuf:"bytes,416,opt,name=oneof_child_message,json=oneofChildMessage,oneof"`
309}
310type Message_OneofSiblingEnum struct {
311	OneofSiblingEnum SiblingEnum `protobuf:"varint,417,opt,name=oneof_sibling_enum,json=oneofSiblingEnum,enum=google.golang.org.proto3_20180430.SiblingEnum,oneof"`
312}
313type Message_OneofSiblingMessage struct {
314	OneofSiblingMessage *SiblingMessage `protobuf:"bytes,418,opt,name=oneof_sibling_message,json=oneofSiblingMessage,oneof"`
315}
316type Message_OneofString1 struct {
317	OneofString1 string `protobuf:"bytes,419,opt,name=oneof_string1,json=oneofString1,oneof"`
318}
319type Message_OneofString2 struct {
320	OneofString2 string `protobuf:"bytes,420,opt,name=oneof_string2,json=oneofString2,oneof"`
321}
322type Message_OneofString3 struct {
323	OneofString3 string `protobuf:"bytes,421,opt,name=oneof_string3,json=oneofString3,oneof"`
324}
325
326func (*Message_OneofBool) isMessage_OneofUnion()           {}
327func (*Message_OneofInt32) isMessage_OneofUnion()          {}
328func (*Message_OneofSint32) isMessage_OneofUnion()         {}
329func (*Message_OneofUint32) isMessage_OneofUnion()         {}
330func (*Message_OneofInt64) isMessage_OneofUnion()          {}
331func (*Message_OneofSint64) isMessage_OneofUnion()         {}
332func (*Message_OneofUint64) isMessage_OneofUnion()         {}
333func (*Message_OneofFixed32) isMessage_OneofUnion()        {}
334func (*Message_OneofSfixed32) isMessage_OneofUnion()       {}
335func (*Message_OneofFloat) isMessage_OneofUnion()          {}
336func (*Message_OneofFixed64) isMessage_OneofUnion()        {}
337func (*Message_OneofSfixed64) isMessage_OneofUnion()       {}
338func (*Message_OneofDouble) isMessage_OneofUnion()         {}
339func (*Message_OneofString) isMessage_OneofUnion()         {}
340func (*Message_OneofBytes) isMessage_OneofUnion()          {}
341func (*Message_OneofChildEnum) isMessage_OneofUnion()      {}
342func (*Message_OneofChildMessage) isMessage_OneofUnion()   {}
343func (*Message_OneofSiblingEnum) isMessage_OneofUnion()    {}
344func (*Message_OneofSiblingMessage) isMessage_OneofUnion() {}
345func (*Message_OneofString1) isMessage_OneofUnion()        {}
346func (*Message_OneofString2) isMessage_OneofUnion()        {}
347func (*Message_OneofString3) isMessage_OneofUnion()        {}
348
349func (m *Message) GetOneofUnion() isMessage_OneofUnion {
350	if m != nil {
351		return m.OneofUnion
352	}
353	return nil
354}
355
356func (m *Message) GetOptionalBool() bool {
357	if m != nil {
358		return m.OptionalBool
359	}
360	return false
361}
362
363func (m *Message) GetOptionalInt32() int32 {
364	if m != nil {
365		return m.OptionalInt32
366	}
367	return 0
368}
369
370func (m *Message) GetOptionalSint32() int32 {
371	if m != nil {
372		return m.OptionalSint32
373	}
374	return 0
375}
376
377func (m *Message) GetOptionalUint32() uint32 {
378	if m != nil {
379		return m.OptionalUint32
380	}
381	return 0
382}
383
384func (m *Message) GetOptionalInt64() int64 {
385	if m != nil {
386		return m.OptionalInt64
387	}
388	return 0
389}
390
391func (m *Message) GetOptionalSint64() int64 {
392	if m != nil {
393		return m.OptionalSint64
394	}
395	return 0
396}
397
398func (m *Message) GetOptionalUint64() uint64 {
399	if m != nil {
400		return m.OptionalUint64
401	}
402	return 0
403}
404
405func (m *Message) GetOptionalFixed32() uint32 {
406	if m != nil {
407		return m.OptionalFixed32
408	}
409	return 0
410}
411
412func (m *Message) GetOptionalSfixed32() int32 {
413	if m != nil {
414		return m.OptionalSfixed32
415	}
416	return 0
417}
418
419func (m *Message) GetOptionalFloat() float32 {
420	if m != nil {
421		return m.OptionalFloat
422	}
423	return 0
424}
425
426func (m *Message) GetOptionalFixed64() uint64 {
427	if m != nil {
428		return m.OptionalFixed64
429	}
430	return 0
431}
432
433func (m *Message) GetOptionalSfixed64() int64 {
434	if m != nil {
435		return m.OptionalSfixed64
436	}
437	return 0
438}
439
440func (m *Message) GetOptionalDouble() float64 {
441	if m != nil {
442		return m.OptionalDouble
443	}
444	return 0
445}
446
447func (m *Message) GetOptionalString() string {
448	if m != nil {
449		return m.OptionalString
450	}
451	return ""
452}
453
454func (m *Message) GetOptionalBytes() []byte {
455	if m != nil {
456		return m.OptionalBytes
457	}
458	return nil
459}
460
461func (m *Message) GetOptionalChildEnum() Message_ChildEnum {
462	if m != nil {
463		return m.OptionalChildEnum
464	}
465	return Message_ALPHA
466}
467
468func (m *Message) GetOptionalChildMessage() *Message_ChildMessage {
469	if m != nil {
470		return m.OptionalChildMessage
471	}
472	return nil
473}
474
475func (m *Message) GetOptionalSiblingEnum() SiblingEnum {
476	if m != nil {
477		return m.OptionalSiblingEnum
478	}
479	return SiblingEnum_ALPHA
480}
481
482func (m *Message) GetOptionalSiblingMessage() *SiblingMessage {
483	if m != nil {
484		return m.OptionalSiblingMessage
485	}
486	return nil
487}
488
489func (m *Message) GetRepeatedBool() []bool {
490	if m != nil {
491		return m.RepeatedBool
492	}
493	return nil
494}
495
496func (m *Message) GetRepeatedInt32() []int32 {
497	if m != nil {
498		return m.RepeatedInt32
499	}
500	return nil
501}
502
503func (m *Message) GetRepeatedSint32() []int32 {
504	if m != nil {
505		return m.RepeatedSint32
506	}
507	return nil
508}
509
510func (m *Message) GetRepeatedUint32() []uint32 {
511	if m != nil {
512		return m.RepeatedUint32
513	}
514	return nil
515}
516
517func (m *Message) GetRepeatedInt64() []int64 {
518	if m != nil {
519		return m.RepeatedInt64
520	}
521	return nil
522}
523
524func (m *Message) GetRepeatedSint64() []int64 {
525	if m != nil {
526		return m.RepeatedSint64
527	}
528	return nil
529}
530
531func (m *Message) GetRepeatedUint64() []uint64 {
532	if m != nil {
533		return m.RepeatedUint64
534	}
535	return nil
536}
537
538func (m *Message) GetRepeatedFixed32() []uint32 {
539	if m != nil {
540		return m.RepeatedFixed32
541	}
542	return nil
543}
544
545func (m *Message) GetRepeatedSfixed32() []int32 {
546	if m != nil {
547		return m.RepeatedSfixed32
548	}
549	return nil
550}
551
552func (m *Message) GetRepeatedFloat() []float32 {
553	if m != nil {
554		return m.RepeatedFloat
555	}
556	return nil
557}
558
559func (m *Message) GetRepeatedFixed64() []uint64 {
560	if m != nil {
561		return m.RepeatedFixed64
562	}
563	return nil
564}
565
566func (m *Message) GetRepeatedSfixed64() []int64 {
567	if m != nil {
568		return m.RepeatedSfixed64
569	}
570	return nil
571}
572
573func (m *Message) GetRepeatedDouble() []float64 {
574	if m != nil {
575		return m.RepeatedDouble
576	}
577	return nil
578}
579
580func (m *Message) GetRepeatedString() []string {
581	if m != nil {
582		return m.RepeatedString
583	}
584	return nil
585}
586
587func (m *Message) GetRepeatedBytes() [][]byte {
588	if m != nil {
589		return m.RepeatedBytes
590	}
591	return nil
592}
593
594func (m *Message) GetRepeatedChildEnum() []Message_ChildEnum {
595	if m != nil {
596		return m.RepeatedChildEnum
597	}
598	return nil
599}
600
601func (m *Message) GetRepeatedChildMessage() []*Message_ChildMessage {
602	if m != nil {
603		return m.RepeatedChildMessage
604	}
605	return nil
606}
607
608func (m *Message) GetRepeatedSiblingEnum() []SiblingEnum {
609	if m != nil {
610		return m.RepeatedSiblingEnum
611	}
612	return nil
613}
614
615func (m *Message) GetRepeatedSiblingMessage() []*SiblingMessage {
616	if m != nil {
617		return m.RepeatedSiblingMessage
618	}
619	return nil
620}
621
622func (m *Message) GetMapBoolBool() map[bool]bool {
623	if m != nil {
624		return m.MapBoolBool
625	}
626	return nil
627}
628
629func (m *Message) GetMapBoolInt32() map[bool]int32 {
630	if m != nil {
631		return m.MapBoolInt32
632	}
633	return nil
634}
635
636func (m *Message) GetMapBoolSint32() map[bool]int32 {
637	if m != nil {
638		return m.MapBoolSint32
639	}
640	return nil
641}
642
643func (m *Message) GetMapBoolUint32() map[bool]uint32 {
644	if m != nil {
645		return m.MapBoolUint32
646	}
647	return nil
648}
649
650func (m *Message) GetMapBoolInt64() map[bool]int64 {
651	if m != nil {
652		return m.MapBoolInt64
653	}
654	return nil
655}
656
657func (m *Message) GetMapBoolSint64() map[bool]int64 {
658	if m != nil {
659		return m.MapBoolSint64
660	}
661	return nil
662}
663
664func (m *Message) GetMapBoolUint64() map[bool]uint64 {
665	if m != nil {
666		return m.MapBoolUint64
667	}
668	return nil
669}
670
671func (m *Message) GetMapBoolFixed32() map[bool]uint32 {
672	if m != nil {
673		return m.MapBoolFixed32
674	}
675	return nil
676}
677
678func (m *Message) GetMapBoolSfixed32() map[bool]int32 {
679	if m != nil {
680		return m.MapBoolSfixed32
681	}
682	return nil
683}
684
685func (m *Message) GetMapBoolFloat() map[bool]float32 {
686	if m != nil {
687		return m.MapBoolFloat
688	}
689	return nil
690}
691
692func (m *Message) GetMapBoolFixed64() map[bool]uint64 {
693	if m != nil {
694		return m.MapBoolFixed64
695	}
696	return nil
697}
698
699func (m *Message) GetMapBoolSfixed64() map[bool]int64 {
700	if m != nil {
701		return m.MapBoolSfixed64
702	}
703	return nil
704}
705
706func (m *Message) GetMapBoolDouble() map[bool]float64 {
707	if m != nil {
708		return m.MapBoolDouble
709	}
710	return nil
711}
712
713func (m *Message) GetMapBoolString() map[bool]string {
714	if m != nil {
715		return m.MapBoolString
716	}
717	return nil
718}
719
720func (m *Message) GetMapBoolBytes() map[bool][]byte {
721	if m != nil {
722		return m.MapBoolBytes
723	}
724	return nil
725}
726
727func (m *Message) GetMapBoolChildEnum() map[bool]Message_ChildEnum {
728	if m != nil {
729		return m.MapBoolChildEnum
730	}
731	return nil
732}
733
734func (m *Message) GetMapBoolChildMessage() map[bool]*Message_ChildMessage {
735	if m != nil {
736		return m.MapBoolChildMessage
737	}
738	return nil
739}
740
741func (m *Message) GetMapBoolSiblingEnum() map[bool]SiblingEnum {
742	if m != nil {
743		return m.MapBoolSiblingEnum
744	}
745	return nil
746}
747
748func (m *Message) GetMapBoolSiblingMessage() map[bool]*SiblingMessage {
749	if m != nil {
750		return m.MapBoolSiblingMessage
751	}
752	return nil
753}
754
755func (m *Message) GetMapInt32Bool() map[int32]bool {
756	if m != nil {
757		return m.MapInt32Bool
758	}
759	return nil
760}
761
762func (m *Message) GetMapSint32Bool() map[int32]bool {
763	if m != nil {
764		return m.MapSint32Bool
765	}
766	return nil
767}
768
769func (m *Message) GetMapUint32Bool() map[uint32]bool {
770	if m != nil {
771		return m.MapUint32Bool
772	}
773	return nil
774}
775
776func (m *Message) GetMapInt64Bool() map[int64]bool {
777	if m != nil {
778		return m.MapInt64Bool
779	}
780	return nil
781}
782
783func (m *Message) GetMapSint64Bool() map[int64]bool {
784	if m != nil {
785		return m.MapSint64Bool
786	}
787	return nil
788}
789
790func (m *Message) GetMapUint64Bool() map[uint64]bool {
791	if m != nil {
792		return m.MapUint64Bool
793	}
794	return nil
795}
796
797func (m *Message) GetMapFixed32Bool() map[uint32]bool {
798	if m != nil {
799		return m.MapFixed32Bool
800	}
801	return nil
802}
803
804func (m *Message) GetMapStringBool() map[string]bool {
805	if m != nil {
806		return m.MapStringBool
807	}
808	return nil
809}
810
811func (m *Message) GetOneofBool() bool {
812	if x, ok := m.GetOneofUnion().(*Message_OneofBool); ok {
813		return x.OneofBool
814	}
815	return false
816}
817
818func (m *Message) GetOneofInt32() int32 {
819	if x, ok := m.GetOneofUnion().(*Message_OneofInt32); ok {
820		return x.OneofInt32
821	}
822	return 0
823}
824
825func (m *Message) GetOneofSint32() int32 {
826	if x, ok := m.GetOneofUnion().(*Message_OneofSint32); ok {
827		return x.OneofSint32
828	}
829	return 0
830}
831
832func (m *Message) GetOneofUint32() uint32 {
833	if x, ok := m.GetOneofUnion().(*Message_OneofUint32); ok {
834		return x.OneofUint32
835	}
836	return 0
837}
838
839func (m *Message) GetOneofInt64() int64 {
840	if x, ok := m.GetOneofUnion().(*Message_OneofInt64); ok {
841		return x.OneofInt64
842	}
843	return 0
844}
845
846func (m *Message) GetOneofSint64() int64 {
847	if x, ok := m.GetOneofUnion().(*Message_OneofSint64); ok {
848		return x.OneofSint64
849	}
850	return 0
851}
852
853func (m *Message) GetOneofUint64() uint64 {
854	if x, ok := m.GetOneofUnion().(*Message_OneofUint64); ok {
855		return x.OneofUint64
856	}
857	return 0
858}
859
860func (m *Message) GetOneofFixed32() uint32 {
861	if x, ok := m.GetOneofUnion().(*Message_OneofFixed32); ok {
862		return x.OneofFixed32
863	}
864	return 0
865}
866
867func (m *Message) GetOneofSfixed32() int32 {
868	if x, ok := m.GetOneofUnion().(*Message_OneofSfixed32); ok {
869		return x.OneofSfixed32
870	}
871	return 0
872}
873
874func (m *Message) GetOneofFloat() float32 {
875	if x, ok := m.GetOneofUnion().(*Message_OneofFloat); ok {
876		return x.OneofFloat
877	}
878	return 0
879}
880
881func (m *Message) GetOneofFixed64() uint64 {
882	if x, ok := m.GetOneofUnion().(*Message_OneofFixed64); ok {
883		return x.OneofFixed64
884	}
885	return 0
886}
887
888func (m *Message) GetOneofSfixed64() int64 {
889	if x, ok := m.GetOneofUnion().(*Message_OneofSfixed64); ok {
890		return x.OneofSfixed64
891	}
892	return 0
893}
894
895func (m *Message) GetOneofDouble() float64 {
896	if x, ok := m.GetOneofUnion().(*Message_OneofDouble); ok {
897		return x.OneofDouble
898	}
899	return 0
900}
901
902func (m *Message) GetOneofString() string {
903	if x, ok := m.GetOneofUnion().(*Message_OneofString); ok {
904		return x.OneofString
905	}
906	return ""
907}
908
909func (m *Message) GetOneofBytes() []byte {
910	if x, ok := m.GetOneofUnion().(*Message_OneofBytes); ok {
911		return x.OneofBytes
912	}
913	return nil
914}
915
916func (m *Message) GetOneofChildEnum() Message_ChildEnum {
917	if x, ok := m.GetOneofUnion().(*Message_OneofChildEnum); ok {
918		return x.OneofChildEnum
919	}
920	return Message_ALPHA
921}
922
923func (m *Message) GetOneofChildMessage() *Message_ChildMessage {
924	if x, ok := m.GetOneofUnion().(*Message_OneofChildMessage); ok {
925		return x.OneofChildMessage
926	}
927	return nil
928}
929
930func (m *Message) GetOneofSiblingEnum() SiblingEnum {
931	if x, ok := m.GetOneofUnion().(*Message_OneofSiblingEnum); ok {
932		return x.OneofSiblingEnum
933	}
934	return SiblingEnum_ALPHA
935}
936
937func (m *Message) GetOneofSiblingMessage() *SiblingMessage {
938	if x, ok := m.GetOneofUnion().(*Message_OneofSiblingMessage); ok {
939		return x.OneofSiblingMessage
940	}
941	return nil
942}
943
944func (m *Message) GetOneofString1() string {
945	if x, ok := m.GetOneofUnion().(*Message_OneofString1); ok {
946		return x.OneofString1
947	}
948	return ""
949}
950
951func (m *Message) GetOneofString2() string {
952	if x, ok := m.GetOneofUnion().(*Message_OneofString2); ok {
953		return x.OneofString2
954	}
955	return ""
956}
957
958func (m *Message) GetOneofString3() string {
959	if x, ok := m.GetOneofUnion().(*Message_OneofString3); ok {
960		return x.OneofString3
961	}
962	return ""
963}
964
965// XXX_OneofFuncs is for the internal use of the proto package.
966func (*Message) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
967	return _Message_OneofMarshaler, _Message_OneofUnmarshaler, _Message_OneofSizer, []interface{}{
968		(*Message_OneofBool)(nil),
969		(*Message_OneofInt32)(nil),
970		(*Message_OneofSint32)(nil),
971		(*Message_OneofUint32)(nil),
972		(*Message_OneofInt64)(nil),
973		(*Message_OneofSint64)(nil),
974		(*Message_OneofUint64)(nil),
975		(*Message_OneofFixed32)(nil),
976		(*Message_OneofSfixed32)(nil),
977		(*Message_OneofFloat)(nil),
978		(*Message_OneofFixed64)(nil),
979		(*Message_OneofSfixed64)(nil),
980		(*Message_OneofDouble)(nil),
981		(*Message_OneofString)(nil),
982		(*Message_OneofBytes)(nil),
983		(*Message_OneofChildEnum)(nil),
984		(*Message_OneofChildMessage)(nil),
985		(*Message_OneofSiblingEnum)(nil),
986		(*Message_OneofSiblingMessage)(nil),
987		(*Message_OneofString1)(nil),
988		(*Message_OneofString2)(nil),
989		(*Message_OneofString3)(nil),
990	}
991}
992
993func _Message_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
994	m := msg.(*Message)
995	// oneof_union
996	switch x := m.OneofUnion.(type) {
997	case *Message_OneofBool:
998		t := uint64(0)
999		if x.OneofBool {
1000			t = 1
1001		}
1002		b.EncodeVarint(400<<3 | proto.WireVarint)
1003		b.EncodeVarint(t)
1004	case *Message_OneofInt32:
1005		b.EncodeVarint(401<<3 | proto.WireVarint)
1006		b.EncodeVarint(uint64(x.OneofInt32))
1007	case *Message_OneofSint32:
1008		b.EncodeVarint(402<<3 | proto.WireVarint)
1009		b.EncodeZigzag32(uint64(x.OneofSint32))
1010	case *Message_OneofUint32:
1011		b.EncodeVarint(403<<3 | proto.WireVarint)
1012		b.EncodeVarint(uint64(x.OneofUint32))
1013	case *Message_OneofInt64:
1014		b.EncodeVarint(404<<3 | proto.WireVarint)
1015		b.EncodeVarint(uint64(x.OneofInt64))
1016	case *Message_OneofSint64:
1017		b.EncodeVarint(405<<3 | proto.WireVarint)
1018		b.EncodeZigzag64(uint64(x.OneofSint64))
1019	case *Message_OneofUint64:
1020		b.EncodeVarint(406<<3 | proto.WireVarint)
1021		b.EncodeVarint(uint64(x.OneofUint64))
1022	case *Message_OneofFixed32:
1023		b.EncodeVarint(407<<3 | proto.WireFixed32)
1024		b.EncodeFixed32(uint64(x.OneofFixed32))
1025	case *Message_OneofSfixed32:
1026		b.EncodeVarint(408<<3 | proto.WireFixed32)
1027		b.EncodeFixed32(uint64(x.OneofSfixed32))
1028	case *Message_OneofFloat:
1029		b.EncodeVarint(409<<3 | proto.WireFixed32)
1030		b.EncodeFixed32(uint64(math.Float32bits(x.OneofFloat)))
1031	case *Message_OneofFixed64:
1032		b.EncodeVarint(410<<3 | proto.WireFixed64)
1033		b.EncodeFixed64(uint64(x.OneofFixed64))
1034	case *Message_OneofSfixed64:
1035		b.EncodeVarint(411<<3 | proto.WireFixed64)
1036		b.EncodeFixed64(uint64(x.OneofSfixed64))
1037	case *Message_OneofDouble:
1038		b.EncodeVarint(412<<3 | proto.WireFixed64)
1039		b.EncodeFixed64(math.Float64bits(x.OneofDouble))
1040	case *Message_OneofString:
1041		b.EncodeVarint(413<<3 | proto.WireBytes)
1042		b.EncodeStringBytes(x.OneofString)
1043	case *Message_OneofBytes:
1044		b.EncodeVarint(414<<3 | proto.WireBytes)
1045		b.EncodeRawBytes(x.OneofBytes)
1046	case *Message_OneofChildEnum:
1047		b.EncodeVarint(415<<3 | proto.WireVarint)
1048		b.EncodeVarint(uint64(x.OneofChildEnum))
1049	case *Message_OneofChildMessage:
1050		b.EncodeVarint(416<<3 | proto.WireBytes)
1051		if err := b.EncodeMessage(x.OneofChildMessage); err != nil {
1052			return err
1053		}
1054	case *Message_OneofSiblingEnum:
1055		b.EncodeVarint(417<<3 | proto.WireVarint)
1056		b.EncodeVarint(uint64(x.OneofSiblingEnum))
1057	case *Message_OneofSiblingMessage:
1058		b.EncodeVarint(418<<3 | proto.WireBytes)
1059		if err := b.EncodeMessage(x.OneofSiblingMessage); err != nil {
1060			return err
1061		}
1062	case *Message_OneofString1:
1063		b.EncodeVarint(419<<3 | proto.WireBytes)
1064		b.EncodeStringBytes(x.OneofString1)
1065	case *Message_OneofString2:
1066		b.EncodeVarint(420<<3 | proto.WireBytes)
1067		b.EncodeStringBytes(x.OneofString2)
1068	case *Message_OneofString3:
1069		b.EncodeVarint(421<<3 | proto.WireBytes)
1070		b.EncodeStringBytes(x.OneofString3)
1071	case nil:
1072	default:
1073		return fmt.Errorf("Message.OneofUnion has unexpected type %T", x)
1074	}
1075	return nil
1076}
1077
1078func _Message_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
1079	m := msg.(*Message)
1080	switch tag {
1081	case 400: // oneof_union.oneof_bool
1082		if wire != proto.WireVarint {
1083			return true, proto.ErrInternalBadWireType
1084		}
1085		x, err := b.DecodeVarint()
1086		m.OneofUnion = &Message_OneofBool{x != 0}
1087		return true, err
1088	case 401: // oneof_union.oneof_int32
1089		if wire != proto.WireVarint {
1090			return true, proto.ErrInternalBadWireType
1091		}
1092		x, err := b.DecodeVarint()
1093		m.OneofUnion = &Message_OneofInt32{int32(x)}
1094		return true, err
1095	case 402: // oneof_union.oneof_sint32
1096		if wire != proto.WireVarint {
1097			return true, proto.ErrInternalBadWireType
1098		}
1099		x, err := b.DecodeZigzag32()
1100		m.OneofUnion = &Message_OneofSint32{int32(x)}
1101		return true, err
1102	case 403: // oneof_union.oneof_uint32
1103		if wire != proto.WireVarint {
1104			return true, proto.ErrInternalBadWireType
1105		}
1106		x, err := b.DecodeVarint()
1107		m.OneofUnion = &Message_OneofUint32{uint32(x)}
1108		return true, err
1109	case 404: // oneof_union.oneof_int64
1110		if wire != proto.WireVarint {
1111			return true, proto.ErrInternalBadWireType
1112		}
1113		x, err := b.DecodeVarint()
1114		m.OneofUnion = &Message_OneofInt64{int64(x)}
1115		return true, err
1116	case 405: // oneof_union.oneof_sint64
1117		if wire != proto.WireVarint {
1118			return true, proto.ErrInternalBadWireType
1119		}
1120		x, err := b.DecodeZigzag64()
1121		m.OneofUnion = &Message_OneofSint64{int64(x)}
1122		return true, err
1123	case 406: // oneof_union.oneof_uint64
1124		if wire != proto.WireVarint {
1125			return true, proto.ErrInternalBadWireType
1126		}
1127		x, err := b.DecodeVarint()
1128		m.OneofUnion = &Message_OneofUint64{x}
1129		return true, err
1130	case 407: // oneof_union.oneof_fixed32
1131		if wire != proto.WireFixed32 {
1132			return true, proto.ErrInternalBadWireType
1133		}
1134		x, err := b.DecodeFixed32()
1135		m.OneofUnion = &Message_OneofFixed32{uint32(x)}
1136		return true, err
1137	case 408: // oneof_union.oneof_sfixed32
1138		if wire != proto.WireFixed32 {
1139			return true, proto.ErrInternalBadWireType
1140		}
1141		x, err := b.DecodeFixed32()
1142		m.OneofUnion = &Message_OneofSfixed32{int32(x)}
1143		return true, err
1144	case 409: // oneof_union.oneof_float
1145		if wire != proto.WireFixed32 {
1146			return true, proto.ErrInternalBadWireType
1147		}
1148		x, err := b.DecodeFixed32()
1149		m.OneofUnion = &Message_OneofFloat{math.Float32frombits(uint32(x))}
1150		return true, err
1151	case 410: // oneof_union.oneof_fixed64
1152		if wire != proto.WireFixed64 {
1153			return true, proto.ErrInternalBadWireType
1154		}
1155		x, err := b.DecodeFixed64()
1156		m.OneofUnion = &Message_OneofFixed64{x}
1157		return true, err
1158	case 411: // oneof_union.oneof_sfixed64
1159		if wire != proto.WireFixed64 {
1160			return true, proto.ErrInternalBadWireType
1161		}
1162		x, err := b.DecodeFixed64()
1163		m.OneofUnion = &Message_OneofSfixed64{int64(x)}
1164		return true, err
1165	case 412: // oneof_union.oneof_double
1166		if wire != proto.WireFixed64 {
1167			return true, proto.ErrInternalBadWireType
1168		}
1169		x, err := b.DecodeFixed64()
1170		m.OneofUnion = &Message_OneofDouble{math.Float64frombits(x)}
1171		return true, err
1172	case 413: // oneof_union.oneof_string
1173		if wire != proto.WireBytes {
1174			return true, proto.ErrInternalBadWireType
1175		}
1176		x, err := b.DecodeStringBytes()
1177		m.OneofUnion = &Message_OneofString{x}
1178		return true, err
1179	case 414: // oneof_union.oneof_bytes
1180		if wire != proto.WireBytes {
1181			return true, proto.ErrInternalBadWireType
1182		}
1183		x, err := b.DecodeRawBytes(true)
1184		m.OneofUnion = &Message_OneofBytes{x}
1185		return true, err
1186	case 415: // oneof_union.oneof_child_enum
1187		if wire != proto.WireVarint {
1188			return true, proto.ErrInternalBadWireType
1189		}
1190		x, err := b.DecodeVarint()
1191		m.OneofUnion = &Message_OneofChildEnum{Message_ChildEnum(x)}
1192		return true, err
1193	case 416: // oneof_union.oneof_child_message
1194		if wire != proto.WireBytes {
1195			return true, proto.ErrInternalBadWireType
1196		}
1197		msg := new(Message_ChildMessage)
1198		err := b.DecodeMessage(msg)
1199		m.OneofUnion = &Message_OneofChildMessage{msg}
1200		return true, err
1201	case 417: // oneof_union.oneof_sibling_enum
1202		if wire != proto.WireVarint {
1203			return true, proto.ErrInternalBadWireType
1204		}
1205		x, err := b.DecodeVarint()
1206		m.OneofUnion = &Message_OneofSiblingEnum{SiblingEnum(x)}
1207		return true, err
1208	case 418: // oneof_union.oneof_sibling_message
1209		if wire != proto.WireBytes {
1210			return true, proto.ErrInternalBadWireType
1211		}
1212		msg := new(SiblingMessage)
1213		err := b.DecodeMessage(msg)
1214		m.OneofUnion = &Message_OneofSiblingMessage{msg}
1215		return true, err
1216	case 419: // oneof_union.oneof_string1
1217		if wire != proto.WireBytes {
1218			return true, proto.ErrInternalBadWireType
1219		}
1220		x, err := b.DecodeStringBytes()
1221		m.OneofUnion = &Message_OneofString1{x}
1222		return true, err
1223	case 420: // oneof_union.oneof_string2
1224		if wire != proto.WireBytes {
1225			return true, proto.ErrInternalBadWireType
1226		}
1227		x, err := b.DecodeStringBytes()
1228		m.OneofUnion = &Message_OneofString2{x}
1229		return true, err
1230	case 421: // oneof_union.oneof_string3
1231		if wire != proto.WireBytes {
1232			return true, proto.ErrInternalBadWireType
1233		}
1234		x, err := b.DecodeStringBytes()
1235		m.OneofUnion = &Message_OneofString3{x}
1236		return true, err
1237	default:
1238		return false, nil
1239	}
1240}
1241
1242func _Message_OneofSizer(msg proto.Message) (n int) {
1243	m := msg.(*Message)
1244	// oneof_union
1245	switch x := m.OneofUnion.(type) {
1246	case *Message_OneofBool:
1247		n += 2 // tag and wire
1248		n += 1
1249	case *Message_OneofInt32:
1250		n += 2 // tag and wire
1251		n += proto.SizeVarint(uint64(x.OneofInt32))
1252	case *Message_OneofSint32:
1253		n += 2 // tag and wire
1254		n += proto.SizeVarint(uint64((uint32(x.OneofSint32) << 1) ^ uint32((int32(x.OneofSint32) >> 31))))
1255	case *Message_OneofUint32:
1256		n += 2 // tag and wire
1257		n += proto.SizeVarint(uint64(x.OneofUint32))
1258	case *Message_OneofInt64:
1259		n += 2 // tag and wire
1260		n += proto.SizeVarint(uint64(x.OneofInt64))
1261	case *Message_OneofSint64:
1262		n += 2 // tag and wire
1263		n += proto.SizeVarint(uint64(uint64(x.OneofSint64<<1) ^ uint64((int64(x.OneofSint64) >> 63))))
1264	case *Message_OneofUint64:
1265		n += 2 // tag and wire
1266		n += proto.SizeVarint(uint64(x.OneofUint64))
1267	case *Message_OneofFixed32:
1268		n += 2 // tag and wire
1269		n += 4
1270	case *Message_OneofSfixed32:
1271		n += 2 // tag and wire
1272		n += 4
1273	case *Message_OneofFloat:
1274		n += 2 // tag and wire
1275		n += 4
1276	case *Message_OneofFixed64:
1277		n += 2 // tag and wire
1278		n += 8
1279	case *Message_OneofSfixed64:
1280		n += 2 // tag and wire
1281		n += 8
1282	case *Message_OneofDouble:
1283		n += 2 // tag and wire
1284		n += 8
1285	case *Message_OneofString:
1286		n += 2 // tag and wire
1287		n += proto.SizeVarint(uint64(len(x.OneofString)))
1288		n += len(x.OneofString)
1289	case *Message_OneofBytes:
1290		n += 2 // tag and wire
1291		n += proto.SizeVarint(uint64(len(x.OneofBytes)))
1292		n += len(x.OneofBytes)
1293	case *Message_OneofChildEnum:
1294		n += 2 // tag and wire
1295		n += proto.SizeVarint(uint64(x.OneofChildEnum))
1296	case *Message_OneofChildMessage:
1297		s := proto.Size(x.OneofChildMessage)
1298		n += 2 // tag and wire
1299		n += proto.SizeVarint(uint64(s))
1300		n += s
1301	case *Message_OneofSiblingEnum:
1302		n += 2 // tag and wire
1303		n += proto.SizeVarint(uint64(x.OneofSiblingEnum))
1304	case *Message_OneofSiblingMessage:
1305		s := proto.Size(x.OneofSiblingMessage)
1306		n += 2 // tag and wire
1307		n += proto.SizeVarint(uint64(s))
1308		n += s
1309	case *Message_OneofString1:
1310		n += 2 // tag and wire
1311		n += proto.SizeVarint(uint64(len(x.OneofString1)))
1312		n += len(x.OneofString1)
1313	case *Message_OneofString2:
1314		n += 2 // tag and wire
1315		n += proto.SizeVarint(uint64(len(x.OneofString2)))
1316		n += len(x.OneofString2)
1317	case *Message_OneofString3:
1318		n += 2 // tag and wire
1319		n += proto.SizeVarint(uint64(len(x.OneofString3)))
1320		n += len(x.OneofString3)
1321	case nil:
1322	default:
1323		panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
1324	}
1325	return n
1326}
1327
1328type Message_ChildMessage struct {
1329	F1                   string   `protobuf:"bytes,1,opt,name=f1" json:"f1,omitempty"`
1330	F2                   []string `protobuf:"bytes,2,rep,name=f2" json:"f2,omitempty"`
1331	F3                   *Message `protobuf:"bytes,3,opt,name=f3" json:"f3,omitempty"`
1332	XXX_NoUnkeyedLiteral struct{} `json:"-"`
1333	XXX_unrecognized     []byte   `json:"-"`
1334	XXX_sizecache        int32    `json:"-"`
1335}
1336
1337func (m *Message_ChildMessage) Reset()         { *m = Message_ChildMessage{} }
1338func (m *Message_ChildMessage) String() string { return proto.CompactTextString(m) }
1339func (*Message_ChildMessage) ProtoMessage()    {}
1340func (*Message_ChildMessage) Descriptor() ([]byte, []int) {
1341	return fileDescriptor_test_b39f8dbfc888d45a, []int{1, 0}
1342}
1343func (m *Message_ChildMessage) XXX_Unmarshal(b []byte) error {
1344	return xxx_messageInfo_Message_ChildMessage.Unmarshal(m, b)
1345}
1346func (m *Message_ChildMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1347	return xxx_messageInfo_Message_ChildMessage.Marshal(b, m, deterministic)
1348}
1349func (dst *Message_ChildMessage) XXX_Merge(src proto.Message) {
1350	xxx_messageInfo_Message_ChildMessage.Merge(dst, src)
1351}
1352func (m *Message_ChildMessage) XXX_Size() int {
1353	return xxx_messageInfo_Message_ChildMessage.Size(m)
1354}
1355func (m *Message_ChildMessage) XXX_DiscardUnknown() {
1356	xxx_messageInfo_Message_ChildMessage.DiscardUnknown(m)
1357}
1358
1359var xxx_messageInfo_Message_ChildMessage proto.InternalMessageInfo
1360
1361func (m *Message_ChildMessage) GetF1() string {
1362	if m != nil {
1363		return m.F1
1364	}
1365	return ""
1366}
1367
1368func (m *Message_ChildMessage) GetF2() []string {
1369	if m != nil {
1370		return m.F2
1371	}
1372	return nil
1373}
1374
1375func (m *Message_ChildMessage) GetF3() *Message {
1376	if m != nil {
1377		return m.F3
1378	}
1379	return nil
1380}
1381
1382func init() {
1383	proto.RegisterType((*SiblingMessage)(nil), "google.golang.org.proto3_20180430.SiblingMessage")
1384	proto.RegisterType((*Message)(nil), "google.golang.org.proto3_20180430.Message")
1385	proto.RegisterMapType((map[bool]bool)(nil), "google.golang.org.proto3_20180430.Message.MapBoolBoolEntry")
1386	proto.RegisterMapType((map[bool][]byte)(nil), "google.golang.org.proto3_20180430.Message.MapBoolBytesEntry")
1387	proto.RegisterMapType((map[bool]Message_ChildEnum)(nil), "google.golang.org.proto3_20180430.Message.MapBoolChildEnumEntry")
1388	proto.RegisterMapType((map[bool]*Message_ChildMessage)(nil), "google.golang.org.proto3_20180430.Message.MapBoolChildMessageEntry")
1389	proto.RegisterMapType((map[bool]float64)(nil), "google.golang.org.proto3_20180430.Message.MapBoolDoubleEntry")
1390	proto.RegisterMapType((map[bool]uint32)(nil), "google.golang.org.proto3_20180430.Message.MapBoolFixed32Entry")
1391	proto.RegisterMapType((map[bool]uint64)(nil), "google.golang.org.proto3_20180430.Message.MapBoolFixed64Entry")
1392	proto.RegisterMapType((map[bool]float32)(nil), "google.golang.org.proto3_20180430.Message.MapBoolFloatEntry")
1393	proto.RegisterMapType((map[bool]int32)(nil), "google.golang.org.proto3_20180430.Message.MapBoolInt32Entry")
1394	proto.RegisterMapType((map[bool]int64)(nil), "google.golang.org.proto3_20180430.Message.MapBoolInt64Entry")
1395	proto.RegisterMapType((map[bool]int32)(nil), "google.golang.org.proto3_20180430.Message.MapBoolSfixed32Entry")
1396	proto.RegisterMapType((map[bool]int64)(nil), "google.golang.org.proto3_20180430.Message.MapBoolSfixed64Entry")
1397	proto.RegisterMapType((map[bool]SiblingEnum)(nil), "google.golang.org.proto3_20180430.Message.MapBoolSiblingEnumEntry")
1398	proto.RegisterMapType((map[bool]*SiblingMessage)(nil), "google.golang.org.proto3_20180430.Message.MapBoolSiblingMessageEntry")
1399	proto.RegisterMapType((map[bool]int32)(nil), "google.golang.org.proto3_20180430.Message.MapBoolSint32Entry")
1400	proto.RegisterMapType((map[bool]int64)(nil), "google.golang.org.proto3_20180430.Message.MapBoolSint64Entry")
1401	proto.RegisterMapType((map[bool]string)(nil), "google.golang.org.proto3_20180430.Message.MapBoolStringEntry")
1402	proto.RegisterMapType((map[bool]uint32)(nil), "google.golang.org.proto3_20180430.Message.MapBoolUint32Entry")
1403	proto.RegisterMapType((map[bool]uint64)(nil), "google.golang.org.proto3_20180430.Message.MapBoolUint64Entry")
1404	proto.RegisterMapType((map[uint32]bool)(nil), "google.golang.org.proto3_20180430.Message.MapFixed32BoolEntry")
1405	proto.RegisterMapType((map[int32]bool)(nil), "google.golang.org.proto3_20180430.Message.MapInt32BoolEntry")
1406	proto.RegisterMapType((map[int64]bool)(nil), "google.golang.org.proto3_20180430.Message.MapInt64BoolEntry")
1407	proto.RegisterMapType((map[int32]bool)(nil), "google.golang.org.proto3_20180430.Message.MapSint32BoolEntry")
1408	proto.RegisterMapType((map[int64]bool)(nil), "google.golang.org.proto3_20180430.Message.MapSint64BoolEntry")
1409	proto.RegisterMapType((map[string]bool)(nil), "google.golang.org.proto3_20180430.Message.MapStringBoolEntry")
1410	proto.RegisterMapType((map[uint32]bool)(nil), "google.golang.org.proto3_20180430.Message.MapUint32BoolEntry")
1411	proto.RegisterMapType((map[uint64]bool)(nil), "google.golang.org.proto3_20180430.Message.MapUint64BoolEntry")
1412	proto.RegisterType((*Message_ChildMessage)(nil), "google.golang.org.proto3_20180430.Message.ChildMessage")
1413	proto.RegisterEnum("google.golang.org.proto3_20180430.SiblingEnum", SiblingEnum_name, SiblingEnum_value)
1414	proto.RegisterEnum("google.golang.org.proto3_20180430.Message_ChildEnum", Message_ChildEnum_name, Message_ChildEnum_value)
1415}
1416
1417func init() {
1418	proto.RegisterFile("proto3_20180430_b4deda09/test.proto", fileDescriptor_test_b39f8dbfc888d45a)
1419}
1420
1421var fileDescriptor_test_b39f8dbfc888d45a = []byte{
1422	// 1946 bytes of a gzipped FileDescriptorProto
1423	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x9a, 0x57, 0x73, 0xdb, 0xca,
1424	0x15, 0xc7, 0x09, 0x52, 0xc5, 0x5a, 0xb1, 0x82, 0x96, 0xb2, 0xa3, 0x27, 0x44, 0x76, 0x1c, 0xc4,
1425	0xc9, 0x50, 0x12, 0xb9, 0x83, 0x38, 0x4e, 0x62, 0x5b, 0xb2, 0xe5, 0xd0, 0x19, 0x3b, 0xf1, 0xc0,
1426	0xa3, 0x3c, 0xe4, 0x45, 0x21, 0x45, 0x90, 0xa6, 0x0d, 0x12, 0x8a, 0x48, 0x7a, 0xa2, 0xc9, 0x83,
1427	0xbf, 0x42, 0x7a, 0xef, 0xe5, 0x2d, 0xbd, 0xf7, 0xee, 0x8c, 0xd3, 0xcb, 0xed, 0xf7, 0xd3, 0xdc,
1428	0x59, 0x1c, 0x6c, 0x03, 0x40, 0x93, 0x04, 0xe7, 0x3e, 0x78, 0x46, 0x3a, 0xfc, 0xef, 0xf9, 0xf1,
1429	0x1c, 0x9c, 0x3d, 0x67, 0x17, 0x16, 0x3a, 0x77, 0x7c, 0xe2, 0x0d, 0xbd, 0xda, 0x61, 0x75, 0x7b,
1430	0xe7, 0xd2, 0x36, 0xa9, 0x6d, 0x1f, 0x36, 0x49, 0xcb, 0x69, 0x35, 0xb6, 0xdf, 0xb1, 0x35, 0x74,
1431	0x06, 0xc3, 0x8a, 0xff, 0xa9, 0xfe, 0xc6, 0x8e, 0xe7, 0x75, 0x5c, 0xa7, 0xd2, 0xf1, 0xdc, 0x46,
1432	0xbf, 0x53, 0xf1, 0x4e, 0x3a, 0x95, 0xd0, 0xb2, 0x4d, 0x17, 0xe5, 0xef, 0x75, 0x9b, 0x6e, 0xb7,
1433	0xdf, 0xb9, 0xe3, 0x0c, 0x06, 0x8d, 0x8e, 0xa3, 0xe7, 0x51, 0xba, 0xbd, 0x83, 0x35, 0x43, 0x33,
1434	0x57, 0xec, 0x74, 0x7b, 0xc7, 0xff, 0xbd, 0x8a, 0xd3, 0x46, 0xc6, 0xff, 0xbd, 0xaa, 0x5f, 0x46,
1435	0xe9, 0x76, 0x0d, 0x67, 0x0c, 0xcd, 0x5c, 0xad, 0x5e, 0xac, 0x4c, 0x24, 0x54, 0x02, 0xbf, 0x76,
1436	0xba, 0x5d, 0xdb, 0x7c, 0x72, 0x0d, 0x2d, 0x33, 0xce, 0x39, 0x94, 0xf3, 0x8e, 0x87, 0x5d, 0xaf,
1437	0xdf, 0x70, 0x0f, 0x9b, 0x9e, 0xe7, 0xe2, 0x96, 0xa1, 0x99, 0x67, 0xec, 0x2c, 0x33, 0xee, 0x79,
1438	0x9e, 0xab, 0xbf, 0x09, 0xe5, 0xb9, 0xa8, 0xdb, 0x1f, 0xd6, 0xaa, 0xd8, 0x31, 0x34, 0x73, 0xd1,
1439	0xe6, 0x4b, 0x6f, 0x51, 0xa3, 0xfe, 0x66, 0x54, 0xe0, 0xb2, 0x01, 0xe8, 0xda, 0x86, 0x66, 0x96,
1440	0x6c, 0xbe, 0xfa, 0x5e, 0x37, 0x22, 0x1c, 0x81, 0xb0, 0x63, 0x68, 0x66, 0x4e, 0x08, 0x0f, 0x40,
1441	0x18, 0x02, 0x5b, 0x04, 0xdf, 0x37, 0x34, 0x33, 0xa3, 0x80, 0x2d, 0x12, 0x01, 0x5b, 0x04, 0x77,
1442	0x0d, 0xcd, 0xd4, 0x55, 0x70, 0x48, 0x38, 0x02, 0xe1, 0x03, 0x43, 0x33, 0x17, 0x54, 0xb0, 0x45,
1443	0xf4, 0xb7, 0xa0, 0x22, 0x17, 0xb6, 0xbb, 0x1f, 0x71, 0x5a, 0xb5, 0x2a, 0x7e, 0x68, 0x68, 0xe6,
1444	0xb2, 0xcd, 0x1d, 0xdc, 0x04, 0xb3, 0xfe, 0x56, 0x54, 0x12, 0x70, 0xa6, 0x75, 0x0d, 0xcd, 0x2c,
1445	0xd8, 0xdc, 0xc7, 0xbd, 0xc0, 0xae, 0x04, 0xd4, 0x76, 0xbd, 0xc6, 0x10, 0xf7, 0x0c, 0xcd, 0x4c,
1446	0x8b, 0x80, 0x6e, 0x52, 0x63, 0x14, 0x6f, 0x11, 0xdc, 0x37, 0x34, 0x73, 0x29, 0x84, 0xb7, 0x48,
1447	0x0c, 0xde, 0x22, 0xd8, 0x33, 0x34, 0xb3, 0x18, 0xc6, 0x87, 0xe2, 0x6f, 0x79, 0xa3, 0xa6, 0xeb,
1448	0xe0, 0x63, 0x43, 0x33, 0x35, 0x11, 0xff, 0x0d, 0xdf, 0xaa, 0x66, 0x74, 0x78, 0xd2, 0xed, 0x77,
1449	0xf0, 0x87, 0xfd, 0x5a, 0x14, 0x19, 0xf5, 0xad, 0x4a, 0x40, 0xcd, 0xd3, 0xa1, 0x33, 0xc0, 0x27,
1450	0x86, 0x66, 0x66, 0x45, 0x40, 0x7b, 0xd4, 0xa8, 0xb7, 0x50, 0x99, 0xcb, 0x8e, 0xee, 0x77, 0xdd,
1451	0xd6, 0xa1, 0xd3, 0x1f, 0xf5, 0xf0, 0xc0, 0xd0, 0xcc, 0x7c, 0x95, 0x4c, 0x5f, 0xbf, 0x95, 0xeb,
1452	0x74, 0xf1, 0x7e, 0x7f, 0xd4, 0xb3, 0x79, 0xd8, 0xdc, 0xa4, 0xf7, 0xd0, 0x7a, 0x88, 0xd2, 0x83,
1453	0x65, 0x78, 0xe8, 0x6f, 0x94, 0xb7, 0xcf, 0x0a, 0x62, 0xbb, 0xe6, 0xac, 0xc2, 0x62, 0x7b, 0xa7,
1454	0x89, 0xd6, 0xa4, 0xb2, 0xf3, 0xb7, 0x2f, 0x84, 0x35, 0xf2, 0xc3, 0xaa, 0x4c, 0x41, 0x0b, 0x76,
1455	0xbd, 0x1f, 0x50, 0x59, 0x14, 0x2b, 0x37, 0xea, 0x0f, 0x11, 0x8e, 0x30, 0x58, 0x50, 0x8f, 0xfc,
1456	0xa0, 0x76, 0xa6, 0xc7, 0xb0, 0x70, 0xd6, 0x43, 0x24, 0x16, 0xd0, 0x79, 0x94, 0x3b, 0x71, 0x8e,
1457	0x9d, 0xc6, 0xd0, 0x69, 0x41, 0x33, 0x78, 0xaa, 0x19, 0x19, 0xda, 0x0d, 0x98, 0xd5, 0xef, 0x06,
1458	0x17, 0x50, 0x9e, 0xab, 0x60, 0xf3, 0xfe, 0x8d, 0xca, 0x16, 0x6d, 0xbe, 0x18, 0xda, 0x81, 0x89,
1459	0x0a, 0x5c, 0x17, 0xb4, 0x83, 0xbf, 0x53, 0x61, 0xc9, 0xe6, 0xeb, 0x83, 0x7e, 0x20, 0x2b, 0x83,
1460	0x7e, 0xf0, 0x0f, 0xaa, 0xcc, 0x09, 0x65, 0xd0, 0x10, 0x42, 0x6c, 0x8b, 0xe0, 0x7f, 0x52, 0x61,
1461	0x46, 0x61, 0x5b, 0x24, 0xc2, 0xb6, 0x08, 0xfe, 0x17, 0x15, 0xea, 0x2a, 0x3b, 0xa4, 0x0c, 0x5a,
1462	0xc2, 0xbf, 0xa9, 0x72, 0x41, 0x65, 0x5b, 0x44, 0xbf, 0x88, 0x8a, 0x5c, 0xc9, 0xf6, 0xf9, 0x7f,
1463	0xa8, 0x74, 0xd9, 0xe6, 0x2e, 0x58, 0x53, 0x78, 0x1b, 0x2a, 0x09, 0x3e, 0x13, 0xff, 0x97, 0x8a,
1464	0x0b, 0x36, 0xf7, 0xc2, 0xbb, 0x82, 0x1c, 0x15, 0x74, 0x85, 0xff, 0x51, 0x69, 0x5a, 0x44, 0x05,
1465	0x6d, 0x21, 0xf2, 0x0d, 0x2c, 0x82, 0xff, 0x4f, 0x95, 0x4b, 0xa1, 0x6f, 0x60, 0x91, 0x98, 0x6f,
1466	0x60, 0x11, 0xfc, 0x1c, 0x15, 0x17, 0xc3, 0xdf, 0x20, 0x94, 0x85, 0xa0, 0x31, 0x3c, 0x4f, 0xb5,
1467	0x9a, 0xc8, 0x42, 0xd0, 0x19, 0x94, 0xcc, 0x42, 0x67, 0x78, 0x41, 0xf3, 0xc7, 0x92, 0xc8, 0x2c,
1468	0xb4, 0x06, 0x39, 0x2a, 0x68, 0x0d, 0x2f, 0x52, 0x61, 0x56, 0x44, 0x05, 0xbd, 0xc1, 0x41, 0x65,
1469	0xae, 0x93, 0x7a, 0xc3, 0x4b, 0x54, 0x9c, 0xb8, 0x39, 0x30, 0x8f, 0xa2, 0x39, 0xf4, 0xd1, 0x7a,
1470	0x08, 0xc3, 0xf6, 0xd1, 0xcb, 0x94, 0x34, 0x4f, 0x77, 0x50, 0x60, 0x6c, 0x33, 0x1d, 0xa1, 0x35,
1471	0xa9, 0x04, 0xa5, 0xee, 0xf0, 0x0a, 0x04, 0x36, 0x73, 0x7b, 0x10, 0x85, 0x2b, 0xda, 0x83, 0x8b,
1472	0x70, 0x04, 0xc2, 0xc2, 0x7a, 0x15, 0xc2, 0x4a, 0xd2, 0x1f, 0x42, 0x28, 0x16, 0xd2, 0x87, 0x50,
1473	0xae, 0xd7, 0x38, 0xf6, 0x5b, 0x03, 0xf4, 0x87, 0xef, 0xa4, 0x7d, 0xc4, 0x3b, 0x67, 0xc8, 0xdc,
1474	0x9d, 0xc6, 0x31, 0xed, 0x22, 0xf4, 0xdf, 0x7e, 0x7f, 0x78, 0x72, 0x6a, 0xaf, 0xf6, 0x84, 0x45,
1475	0x3f, 0x42, 0x79, 0x4e, 0x80, 0x46, 0xf0, 0x5d, 0x40, 0xbc, 0x6b, 0x76, 0x84, 0xdf, 0x85, 0x80,
1476	0x91, 0xed, 0x49, 0x26, 0xbd, 0x8d, 0x0a, 0x1c, 0x12, 0x34, 0xa6, 0xef, 0x01, 0xe5, 0xdd, 0xb3,
1477	0x53, 0xa0, 0x85, 0x01, 0x26, 0xd7, 0x93, 0x6d, 0x0a, 0x27, 0x68, 0x6b, 0xdf, 0x4f, 0xcc, 0x39,
1478	0x88, 0xe1, 0x04, 0x4d, 0x31, 0x94, 0x34, 0x8b, 0xe0, 0x1f, 0xcc, 0x93, 0x34, 0x8b, 0x44, 0x92,
1479	0x66, 0x91, 0x48, 0xd2, 0x2c, 0x82, 0x7f, 0x38, 0x57, 0xd2, 0x18, 0x46, 0x4e, 0x5a, 0x88, 0x13,
1480	0xf4, 0xe3, 0x1f, 0xcd, 0x95, 0xb4, 0x30, 0x27, 0xe8, 0xe6, 0x5d, 0x54, 0xe4, 0x1c, 0xd6, 0xa0,
1481	0x7f, 0x0c, 0xa0, 0x2b, 0xb3, 0x83, 0x82, 0xbe, 0x0f, 0xa4, 0x7c, 0x4f, 0x31, 0xea, 0x2e, 0x2a,
1482	0x89, 0xd4, 0x31, 0xd6, 0x4f, 0x80, 0x75, 0x35, 0x41, 0xf2, 0xda, 0x32, 0xac, 0xd0, 0x53, 0xad,
1483	0x4a, 0x35, 0xc0, 0x30, 0xf9, 0x69, 0xe2, 0x6a, 0xf0, 0xc7, 0x8e, 0x5a, 0x0d, 0x30, 0x89, 0x22,
1484	0xd9, 0xb3, 0x08, 0xfe, 0xd9, 0x7c, 0xd9, 0x63, 0xcf, 0x49, 0xc9, 0x9e, 0x45, 0x62, 0xb2, 0x67,
1485	0x11, 0xfc, 0xf3, 0x39, 0xb3, 0xc7, 0x60, 0x6a, 0xf6, 0x42, 0xe5, 0x17, 0x0c, 0xc2, 0x5f, 0x24,
1486	0x2e, 0x3f, 0x18, 0x99, 0x6a, 0xf9, 0x05, 0x63, 0x54, 0xd9, 0x4e, 0x30, 0x46, 0x7f, 0x99, 0x7c,
1487	0x3b, 0xf9, 0x0e, 0x42, 0xdb, 0x09, 0x86, 0xb0, 0x5c, 0x0d, 0x30, 0x84, 0x7f, 0x95, 0xb8, 0x1a,
1488	0xfc, 0x71, 0xad, 0x56, 0x03, 0x4c, 0xf0, 0x63, 0x54, 0xe6, 0x10, 0x69, 0x82, 0xff, 0x1a, 0x48,
1489	0xd7, 0x66, 0x27, 0xf1, 0xa9, 0x0d, 0xb4, 0x62, 0x2f, 0x64, 0xd6, 0x4f, 0xd1, 0x7a, 0x88, 0xc8,
1490	0xa6, 0xde, 0x6f, 0x00, 0x7a, 0x3d, 0x21, 0x34, 0xb0, 0x01, 0xb7, 0xdc, 0x8b, 0x7e, 0xa2, 0x3f,
1491	0x42, 0x6b, 0x52, 0x23, 0x94, 0xe6, 0xfa, 0x6f, 0x81, 0xbc, 0x97, 0xa4, 0x1d, 0xf2, 0x89, 0x0e,
1492	0x60, 0xbd, 0x17, 0xf9, 0x40, 0x7f, 0x8c, 0x70, 0x84, 0xcb, 0x82, 0xfe, 0x1d, 0xa0, 0xf7, 0x13,
1493	0xa3, 0x95, 0xb0, 0xd7, 0x7a, 0x71, 0x9f, 0xb1, 0x52, 0xf2, 0x67, 0x0e, 0x8c, 0xff, 0xdf, 0x27,
1494	0x2a, 0x25, 0x7f, 0x08, 0x8b, 0xf9, 0x4f, 0x4b, 0x89, 0x9b, 0xd8, 0xbe, 0x18, 0x48, 0x94, 0x3f,
1495	0x24, 0xda, 0x17, 0x30, 0x83, 0x05, 0x86, 0xee, 0x0b, 0x61, 0x63, 0x9c, 0x91, 0xc4, 0xf9, 0x63,
1496	0x22, 0xce, 0x41, 0x0c, 0x47, 0xd8, 0xa4, 0xa4, 0x59, 0x04, 0x30, 0x7f, 0x4a, 0x9a, 0x34, 0x8b,
1497	0x44, 0x92, 0x06, 0x26, 0x39, 0x69, 0x8c, 0xf2, 0xe7, 0xc4, 0x49, 0x93, 0x31, 0x2c, 0x69, 0x2a,
1498	0x67, 0x24, 0x71, 0xfe, 0x92, 0x38, 0x69, 0x61, 0x8e, 0xb0, 0xb1, 0xe9, 0x12, 0x4c, 0x34, 0x00,
1499	0x3d, 0x49, 0x34, 0x5d, 0x82, 0x11, 0x2c, 0x48, 0xf4, 0x69, 0x48, 0x46, 0x9e, 0x3a, 0xbf, 0x5b,
1500	0x02, 0xe9, 0xaf, 0xc9, 0x52, 0xe7, 0x7b, 0x08, 0xa5, 0x8e, 0xdb, 0x74, 0x03, 0x21, 0xaf, 0xef,
1501	0x78, 0x6d, 0x40, 0x7c, 0x2c, 0x63, 0x68, 0xe6, 0x99, 0x7a, 0xca, 0x5e, 0xf1, 0x8d, 0xbe, 0x62,
1502	0x13, 0xad, 0x82, 0x02, 0x4e, 0x8a, 0x1f, 0xa7, 0x92, 0xc5, 0x7a, 0xca, 0x86, 0x75, 0x70, 0x72,
1503	0x3d, 0x8f, 0xb2, 0xa0, 0x09, 0x8e, 0xad, 0x9f, 0xa0, 0xa2, 0x52, 0x3d, 0x65, 0xc3, 0xd2, 0xe0,
1504	0xdc, 0xc9, 0x55, 0xc1, 0xa1, 0xf3, 0x93, 0x54, 0x95, 0xe3, 0xaa, 0xe0, 0xd4, 0x28, 0xf3, 0x2c,
1505	0x82, 0x3f, 0x45, 0x45, 0x19, 0x99, 0x67, 0x11, 0x95, 0x67, 0x11, 0xfc, 0x69, 0x2a, 0xd2, 0x15,
1506	0x9e, 0xac, 0x0a, 0xce, 0x6b, 0x9f, 0xa1, 0xaa, 0x05, 0x85, 0x67, 0x11, 0xfd, 0x02, 0xca, 0x81,
1507	0x8a, 0x9d, 0x80, 0x3e, 0x4b, 0x65, 0xcb, 0xf5, 0x94, 0x0d, 0xab, 0xd9, 0x69, 0xc9, 0x44, 0xf9,
1508	0x80, 0xc9, 0x84, 0x9f, 0xa3, 0xc2, 0x42, 0x3d, 0x65, 0x83, 0x03, 0x7e, 0xd2, 0xe1, 0x11, 0xc0,
1509	0x31, 0xe7, 0xf3, 0x54, 0x96, 0xe6, 0x11, 0xc0, 0x41, 0x45, 0xa5, 0x5a, 0x04, 0x7f, 0x81, 0xaa,
1510	0x96, 0x54, 0xaa, 0x7f, 0x01, 0x56, 0xa8, 0x16, 0xc1, 0x5f, 0xa4, 0xc2, 0x62, 0x88, 0x2a, 0x47,
1511	0x1b, 0x1c, 0x0f, 0xbe, 0x44, 0x75, 0x1a, 0x8f, 0x36, 0x98, 0xef, 0x22, 0x73, 0x30, 0xdc, 0xbf,
1512	0x4c, 0x55, 0x2b, 0x22, 0x73, 0x30, 0x9d, 0x79, 0x04, 0x30, 0x9a, 0xbf, 0x42, 0x45, 0x59, 0x1e,
1513	0x01, 0x0c, 0xd7, 0x06, 0x2a, 0x82, 0x46, 0x9a, 0xac, 0x5f, 0xcd, 0x24, 0x7f, 0x71, 0x56, 0x4f,
1514	0xd9, 0x10, 0xaa, 0x98, 0xa6, 0x0f, 0x50, 0x59, 0x46, 0xb0, 0xa9, 0xf2, 0xb5, 0xcc, 0x5c, 0x6f,
1515	0xcd, 0xea, 0x29, 0xbb, 0x24, 0x40, 0x6c, 0x8a, 0x1c, 0x22, 0x9d, 0x95, 0x94, 0x34, 0x3b, 0xbf,
1516	0x9e, 0x49, 0xf2, 0xca, 0xac, 0x9e, 0xb2, 0x8b, 0x41, 0x21, 0x8a, 0x39, 0x79, 0x1f, 0xad, 0xa9,
1517	0x00, 0x16, 0xce, 0x37, 0x32, 0x09, 0xdf, 0x97, 0xd5, 0x53, 0x76, 0x59, 0xc6, 0xb0, 0x50, 0x78,
1518	0x6d, 0xc1, 0x33, 0xde, 0xc1, 0xdf, 0x64, 0x0f, 0x39, 0x2b, 0x3d, 0xe4, 0x9d, 0xb0, 0xae, 0x8a,
1519	0xbf, 0x15, 0xa7, 0xab, 0x86, 0x75, 0x35, 0xfc, 0xed, 0x38, 0x5d, 0x6d, 0xe3, 0x01, 0xca, 0x2a,
1520	0x29, 0x7d, 0x1d, 0xff, 0xaf, 0x60, 0xe3, 0x0a, 0x2a, 0x86, 0x6f, 0xec, 0x7a, 0x11, 0x65, 0x1e,
1521	0x3a, 0xa7, 0x3e, 0xf0, 0x8c, 0x4d, 0x7f, 0xd4, 0xcf, 0xa2, 0xc5, 0x47, 0x0d, 0x77, 0xe4, 0xe0,
1522	0xb4, 0x6f, 0x83, 0x5f, 0x2e, 0xa7, 0x2f, 0x69, 0x1b, 0x57, 0x51, 0x29, 0x72, 0x1d, 0x9f, 0xe4,
1523	0x60, 0x51, 0x76, 0x70, 0x0d, 0xe9, 0xd1, 0x9b, 0xf6, 0x24, 0x0f, 0xa5, 0x78, 0x0f, 0x07, 0xd3,
1524	0x7b, 0xc8, 0x8d, 0x0d, 0x22, 0xb8, 0x3a, 0x4c, 0x72, 0x90, 0x19, 0x1f, 0xc4, 0x94, 0x1e, 0xf4,
1525	0xf1, 0x41, 0x4c, 0xe9, 0x61, 0x41, 0xf6, 0xb0, 0x8b, 0xca, 0x31, 0x97, 0xd5, 0x49, 0x2e, 0x96,
1526	0x65, 0x17, 0x7b, 0xe8, 0x6c, 0xdc, 0x1d, 0x74, 0x92, 0x8f, 0x42, 0x7c, 0x2e, 0xc5, 0xe5, 0x72,
1527	0x92, 0x83, 0xf4, 0x33, 0xe2, 0x98, 0x32, 0x15, 0x4b, 0xcf, 0x8a, 0x63, 0x4a, 0x1f, 0xc5, 0xf8,
1528	0x07, 0x22, 0xdd, 0xf2, 0x26, 0x79, 0xd0, 0xc6, 0x14, 0x85, 0xb8, 0xbf, 0x4d, 0xf2, 0xb0, 0x12,
1529	0x9f, 0x4b, 0x71, 0x35, 0x9b, 0xe4, 0x20, 0x2b, 0x3b, 0x38, 0x45, 0x6b, 0xb1, 0x37, 0xae, 0x18,
1530	0x27, 0xef, 0x95, 0x9d, 0x24, 0x7d, 0x2d, 0x2b, 0xa1, 0x1f, 0x23, 0x3c, 0xee, 0xde, 0x15, 0x43,
1531	0xbf, 0x23, 0xd3, 0xe7, 0x78, 0x55, 0x2b, 0x7d, 0x81, 0x11, 0x7a, 0xc3, 0x98, 0xeb, 0x57, 0x0c,
1532	0xff, 0x86, 0x1a, 0xfd, 0xac, 0xef, 0x6e, 0x25, 0xec, 0x47, 0xd1, 0xc6, 0xf8, 0xab, 0x57, 0x0c,
1533	0xf9, 0x3d, 0x6a, 0xe4, 0x09, 0xde, 0xe6, 0x46, 0x0a, 0x46, 0xbd, 0x80, 0xc9, 0xcc, 0xc5, 0x49,
1534	0xed, 0x1c, 0x6a, 0x36, 0x74, 0xb7, 0x92, 0x3d, 0x94, 0xa6, 0xf3, 0x70, 0x30, 0xde, 0x43, 0x6e,
1535	0xba, 0x91, 0xa2, 0x5e, 0x88, 0x64, 0x07, 0x99, 0xe9, 0x83, 0x18, 0xe3, 0x41, 0x9f, 0x3e, 0x88,
1536	0x31, 0x1e, 0x16, 0x26, 0x79, 0x80, 0x2e, 0x16, 0xbe, 0x9e, 0xc8, 0x2e, 0x96, 0xa7, 0x0c, 0x43,
1537	0xbd, 0x77, 0xc8, 0x1e, 0x56, 0x26, 0x78, 0xd8, 0xac, 0xa0, 0x15, 0x71, 0x08, 0x5c, 0x41, 0x8b,
1538	0xbb, 0xb7, 0xef, 0xd6, 0x77, 0x8b, 0x29, 0xfa, 0xe3, 0x9e, 0xbd, 0xfb, 0x81, 0xf7, 0x17, 0x35,
1539	0x7d, 0x15, 0x2d, 0x5f, 0xaf, 0xef, 0xda, 0xb7, 0x6f, 0xed, 0x17, 0xd3, 0x7b, 0x39, 0x76, 0x5c,
1540	0x1d, 0xf5, 0xbb, 0x5e, 0xff, 0xe2, 0x0e, 0x5a, 0x95, 0x0f, 0x5e, 0x71, 0x0e, 0x90, 0x9e, 0x15,
1541	0x0e, 0x9e, 0x6a, 0x7b, 0x77, 0x3f, 0xf8, 0xbe, 0x48, 0xfd, 0x6e, 0xf9, 0xf5, 0xdb, 0x1c, 0xb5,
1542	0xb7, 0xba, 0xfd, 0xa1, 0x73, 0xd2, 0x6f, 0xb8, 0xfe, 0x5f, 0x4f, 0xf8, 0xd6, 0xc1, 0x96, 0xeb,
1543	0x74, 0x1a, 0x47, 0xa7, 0x5b, 0xe3, 0xfe, 0xd0, 0xa2, 0xb9, 0x04, 0x9f, 0xbc, 0x16, 0x00, 0x00,
1544	0xff, 0xff, 0xc9, 0x66, 0x05, 0xd3, 0x8b, 0x21, 0x00, 0x00,
1545}
1546