1// Code generated by protoc-gen-gogo. DO NOT EDIT.
2// source: combos/both/one.proto
3
4package one
5
6import (
7	bytes "bytes"
8	compress_gzip "compress/gzip"
9	encoding_binary "encoding/binary"
10	fmt "fmt"
11	_ "github.com/gogo/protobuf/gogoproto"
12	github_com_gogo_protobuf_proto "github.com/gogo/protobuf/proto"
13	proto "github.com/gogo/protobuf/proto"
14	github_com_gogo_protobuf_protoc_gen_gogo_descriptor "github.com/gogo/protobuf/protoc-gen-gogo/descriptor"
15	github_com_gogo_protobuf_test_casttype "github.com/gogo/protobuf/test/casttype"
16	github_com_gogo_protobuf_test_custom "github.com/gogo/protobuf/test/custom"
17	io "io"
18	io_ioutil "io/ioutil"
19	math "math"
20	reflect "reflect"
21	strings "strings"
22)
23
24// Reference imports to suppress errors if they are not otherwise used.
25var _ = proto.Marshal
26var _ = fmt.Errorf
27var _ = math.Inf
28
29// This is a compile-time assertion to ensure that this generated file
30// is compatible with the proto package it is being compiled against.
31// A compilation error at this line likely means your copy of the
32// proto package needs to be updated.
33const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package
34
35type Subby struct {
36	Sub                  *string  `protobuf:"bytes,1,opt,name=sub" json:"sub,omitempty"`
37	XXX_NoUnkeyedLiteral struct{} `json:"-"`
38	XXX_unrecognized     []byte   `json:"-"`
39	XXX_sizecache        int32    `json:"-"`
40}
41
42func (m *Subby) Reset()      { *m = Subby{} }
43func (*Subby) ProtoMessage() {}
44func (*Subby) Descriptor() ([]byte, []int) {
45	return fileDescriptor_5ca5df6bbfd2f47d, []int{0}
46}
47func (m *Subby) XXX_Unmarshal(b []byte) error {
48	return m.Unmarshal(b)
49}
50func (m *Subby) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
51	if deterministic {
52		return xxx_messageInfo_Subby.Marshal(b, m, deterministic)
53	} else {
54		b = b[:cap(b)]
55		n, err := m.MarshalTo(b)
56		if err != nil {
57			return nil, err
58		}
59		return b[:n], nil
60	}
61}
62func (m *Subby) XXX_Merge(src proto.Message) {
63	xxx_messageInfo_Subby.Merge(m, src)
64}
65func (m *Subby) XXX_Size() int {
66	return m.Size()
67}
68func (m *Subby) XXX_DiscardUnknown() {
69	xxx_messageInfo_Subby.DiscardUnknown(m)
70}
71
72var xxx_messageInfo_Subby proto.InternalMessageInfo
73
74type AllTypesOneOf struct {
75	// Types that are valid to be assigned to TestOneof:
76	//	*AllTypesOneOf_Field1
77	//	*AllTypesOneOf_Field2
78	//	*AllTypesOneOf_Field3
79	//	*AllTypesOneOf_Field4
80	//	*AllTypesOneOf_Field5
81	//	*AllTypesOneOf_Field6
82	//	*AllTypesOneOf_Field7
83	//	*AllTypesOneOf_Field8
84	//	*AllTypesOneOf_Field9
85	//	*AllTypesOneOf_Field10
86	//	*AllTypesOneOf_Field11
87	//	*AllTypesOneOf_Field12
88	//	*AllTypesOneOf_Field13
89	//	*AllTypesOneOf_Field14
90	//	*AllTypesOneOf_Field15
91	//	*AllTypesOneOf_SubMessage
92	TestOneof            isAllTypesOneOf_TestOneof `protobuf_oneof:"test_oneof"`
93	XXX_NoUnkeyedLiteral struct{}                  `json:"-"`
94	XXX_unrecognized     []byte                    `json:"-"`
95	XXX_sizecache        int32                     `json:"-"`
96}
97
98func (m *AllTypesOneOf) Reset()      { *m = AllTypesOneOf{} }
99func (*AllTypesOneOf) ProtoMessage() {}
100func (*AllTypesOneOf) Descriptor() ([]byte, []int) {
101	return fileDescriptor_5ca5df6bbfd2f47d, []int{1}
102}
103func (m *AllTypesOneOf) XXX_Unmarshal(b []byte) error {
104	return m.Unmarshal(b)
105}
106func (m *AllTypesOneOf) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
107	if deterministic {
108		return xxx_messageInfo_AllTypesOneOf.Marshal(b, m, deterministic)
109	} else {
110		b = b[:cap(b)]
111		n, err := m.MarshalTo(b)
112		if err != nil {
113			return nil, err
114		}
115		return b[:n], nil
116	}
117}
118func (m *AllTypesOneOf) XXX_Merge(src proto.Message) {
119	xxx_messageInfo_AllTypesOneOf.Merge(m, src)
120}
121func (m *AllTypesOneOf) XXX_Size() int {
122	return m.Size()
123}
124func (m *AllTypesOneOf) XXX_DiscardUnknown() {
125	xxx_messageInfo_AllTypesOneOf.DiscardUnknown(m)
126}
127
128var xxx_messageInfo_AllTypesOneOf proto.InternalMessageInfo
129
130type isAllTypesOneOf_TestOneof interface {
131	isAllTypesOneOf_TestOneof()
132	Equal(interface{}) bool
133	VerboseEqual(interface{}) error
134	MarshalTo([]byte) (int, error)
135	Size() int
136}
137
138type AllTypesOneOf_Field1 struct {
139	Field1 float64 `protobuf:"fixed64,1,opt,name=Field1,oneof"`
140}
141type AllTypesOneOf_Field2 struct {
142	Field2 float32 `protobuf:"fixed32,2,opt,name=Field2,oneof"`
143}
144type AllTypesOneOf_Field3 struct {
145	Field3 int32 `protobuf:"varint,3,opt,name=Field3,oneof"`
146}
147type AllTypesOneOf_Field4 struct {
148	Field4 int64 `protobuf:"varint,4,opt,name=Field4,oneof"`
149}
150type AllTypesOneOf_Field5 struct {
151	Field5 uint32 `protobuf:"varint,5,opt,name=Field5,oneof"`
152}
153type AllTypesOneOf_Field6 struct {
154	Field6 uint64 `protobuf:"varint,6,opt,name=Field6,oneof"`
155}
156type AllTypesOneOf_Field7 struct {
157	Field7 int32 `protobuf:"zigzag32,7,opt,name=Field7,oneof"`
158}
159type AllTypesOneOf_Field8 struct {
160	Field8 int64 `protobuf:"zigzag64,8,opt,name=Field8,oneof"`
161}
162type AllTypesOneOf_Field9 struct {
163	Field9 uint32 `protobuf:"fixed32,9,opt,name=Field9,oneof"`
164}
165type AllTypesOneOf_Field10 struct {
166	Field10 int32 `protobuf:"fixed32,10,opt,name=Field10,oneof"`
167}
168type AllTypesOneOf_Field11 struct {
169	Field11 uint64 `protobuf:"fixed64,11,opt,name=Field11,oneof"`
170}
171type AllTypesOneOf_Field12 struct {
172	Field12 int64 `protobuf:"fixed64,12,opt,name=Field12,oneof"`
173}
174type AllTypesOneOf_Field13 struct {
175	Field13 bool `protobuf:"varint,13,opt,name=Field13,oneof"`
176}
177type AllTypesOneOf_Field14 struct {
178	Field14 string `protobuf:"bytes,14,opt,name=Field14,oneof"`
179}
180type AllTypesOneOf_Field15 struct {
181	Field15 []byte `protobuf:"bytes,15,opt,name=Field15,oneof"`
182}
183type AllTypesOneOf_SubMessage struct {
184	SubMessage *Subby `protobuf:"bytes,16,opt,name=sub_message,json=subMessage,oneof"`
185}
186
187func (*AllTypesOneOf_Field1) isAllTypesOneOf_TestOneof()     {}
188func (*AllTypesOneOf_Field2) isAllTypesOneOf_TestOneof()     {}
189func (*AllTypesOneOf_Field3) isAllTypesOneOf_TestOneof()     {}
190func (*AllTypesOneOf_Field4) isAllTypesOneOf_TestOneof()     {}
191func (*AllTypesOneOf_Field5) isAllTypesOneOf_TestOneof()     {}
192func (*AllTypesOneOf_Field6) isAllTypesOneOf_TestOneof()     {}
193func (*AllTypesOneOf_Field7) isAllTypesOneOf_TestOneof()     {}
194func (*AllTypesOneOf_Field8) isAllTypesOneOf_TestOneof()     {}
195func (*AllTypesOneOf_Field9) isAllTypesOneOf_TestOneof()     {}
196func (*AllTypesOneOf_Field10) isAllTypesOneOf_TestOneof()    {}
197func (*AllTypesOneOf_Field11) isAllTypesOneOf_TestOneof()    {}
198func (*AllTypesOneOf_Field12) isAllTypesOneOf_TestOneof()    {}
199func (*AllTypesOneOf_Field13) isAllTypesOneOf_TestOneof()    {}
200func (*AllTypesOneOf_Field14) isAllTypesOneOf_TestOneof()    {}
201func (*AllTypesOneOf_Field15) isAllTypesOneOf_TestOneof()    {}
202func (*AllTypesOneOf_SubMessage) isAllTypesOneOf_TestOneof() {}
203
204func (m *AllTypesOneOf) GetTestOneof() isAllTypesOneOf_TestOneof {
205	if m != nil {
206		return m.TestOneof
207	}
208	return nil
209}
210
211func (m *AllTypesOneOf) GetField1() float64 {
212	if x, ok := m.GetTestOneof().(*AllTypesOneOf_Field1); ok {
213		return x.Field1
214	}
215	return 0
216}
217
218func (m *AllTypesOneOf) GetField2() float32 {
219	if x, ok := m.GetTestOneof().(*AllTypesOneOf_Field2); ok {
220		return x.Field2
221	}
222	return 0
223}
224
225func (m *AllTypesOneOf) GetField3() int32 {
226	if x, ok := m.GetTestOneof().(*AllTypesOneOf_Field3); ok {
227		return x.Field3
228	}
229	return 0
230}
231
232func (m *AllTypesOneOf) GetField4() int64 {
233	if x, ok := m.GetTestOneof().(*AllTypesOneOf_Field4); ok {
234		return x.Field4
235	}
236	return 0
237}
238
239func (m *AllTypesOneOf) GetField5() uint32 {
240	if x, ok := m.GetTestOneof().(*AllTypesOneOf_Field5); ok {
241		return x.Field5
242	}
243	return 0
244}
245
246func (m *AllTypesOneOf) GetField6() uint64 {
247	if x, ok := m.GetTestOneof().(*AllTypesOneOf_Field6); ok {
248		return x.Field6
249	}
250	return 0
251}
252
253func (m *AllTypesOneOf) GetField7() int32 {
254	if x, ok := m.GetTestOneof().(*AllTypesOneOf_Field7); ok {
255		return x.Field7
256	}
257	return 0
258}
259
260func (m *AllTypesOneOf) GetField8() int64 {
261	if x, ok := m.GetTestOneof().(*AllTypesOneOf_Field8); ok {
262		return x.Field8
263	}
264	return 0
265}
266
267func (m *AllTypesOneOf) GetField9() uint32 {
268	if x, ok := m.GetTestOneof().(*AllTypesOneOf_Field9); ok {
269		return x.Field9
270	}
271	return 0
272}
273
274func (m *AllTypesOneOf) GetField10() int32 {
275	if x, ok := m.GetTestOneof().(*AllTypesOneOf_Field10); ok {
276		return x.Field10
277	}
278	return 0
279}
280
281func (m *AllTypesOneOf) GetField11() uint64 {
282	if x, ok := m.GetTestOneof().(*AllTypesOneOf_Field11); ok {
283		return x.Field11
284	}
285	return 0
286}
287
288func (m *AllTypesOneOf) GetField12() int64 {
289	if x, ok := m.GetTestOneof().(*AllTypesOneOf_Field12); ok {
290		return x.Field12
291	}
292	return 0
293}
294
295func (m *AllTypesOneOf) GetField13() bool {
296	if x, ok := m.GetTestOneof().(*AllTypesOneOf_Field13); ok {
297		return x.Field13
298	}
299	return false
300}
301
302func (m *AllTypesOneOf) GetField14() string {
303	if x, ok := m.GetTestOneof().(*AllTypesOneOf_Field14); ok {
304		return x.Field14
305	}
306	return ""
307}
308
309func (m *AllTypesOneOf) GetField15() []byte {
310	if x, ok := m.GetTestOneof().(*AllTypesOneOf_Field15); ok {
311		return x.Field15
312	}
313	return nil
314}
315
316func (m *AllTypesOneOf) GetSubMessage() *Subby {
317	if x, ok := m.GetTestOneof().(*AllTypesOneOf_SubMessage); ok {
318		return x.SubMessage
319	}
320	return nil
321}
322
323// XXX_OneofFuncs is for the internal use of the proto package.
324func (*AllTypesOneOf) 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{}) {
325	return _AllTypesOneOf_OneofMarshaler, _AllTypesOneOf_OneofUnmarshaler, _AllTypesOneOf_OneofSizer, []interface{}{
326		(*AllTypesOneOf_Field1)(nil),
327		(*AllTypesOneOf_Field2)(nil),
328		(*AllTypesOneOf_Field3)(nil),
329		(*AllTypesOneOf_Field4)(nil),
330		(*AllTypesOneOf_Field5)(nil),
331		(*AllTypesOneOf_Field6)(nil),
332		(*AllTypesOneOf_Field7)(nil),
333		(*AllTypesOneOf_Field8)(nil),
334		(*AllTypesOneOf_Field9)(nil),
335		(*AllTypesOneOf_Field10)(nil),
336		(*AllTypesOneOf_Field11)(nil),
337		(*AllTypesOneOf_Field12)(nil),
338		(*AllTypesOneOf_Field13)(nil),
339		(*AllTypesOneOf_Field14)(nil),
340		(*AllTypesOneOf_Field15)(nil),
341		(*AllTypesOneOf_SubMessage)(nil),
342	}
343}
344
345func _AllTypesOneOf_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
346	m := msg.(*AllTypesOneOf)
347	// test_oneof
348	switch x := m.TestOneof.(type) {
349	case *AllTypesOneOf_Field1:
350		_ = b.EncodeVarint(1<<3 | proto.WireFixed64)
351		_ = b.EncodeFixed64(math.Float64bits(x.Field1))
352	case *AllTypesOneOf_Field2:
353		_ = b.EncodeVarint(2<<3 | proto.WireFixed32)
354		_ = b.EncodeFixed32(uint64(math.Float32bits(x.Field2)))
355	case *AllTypesOneOf_Field3:
356		_ = b.EncodeVarint(3<<3 | proto.WireVarint)
357		_ = b.EncodeVarint(uint64(x.Field3))
358	case *AllTypesOneOf_Field4:
359		_ = b.EncodeVarint(4<<3 | proto.WireVarint)
360		_ = b.EncodeVarint(uint64(x.Field4))
361	case *AllTypesOneOf_Field5:
362		_ = b.EncodeVarint(5<<3 | proto.WireVarint)
363		_ = b.EncodeVarint(uint64(x.Field5))
364	case *AllTypesOneOf_Field6:
365		_ = b.EncodeVarint(6<<3 | proto.WireVarint)
366		_ = b.EncodeVarint(uint64(x.Field6))
367	case *AllTypesOneOf_Field7:
368		_ = b.EncodeVarint(7<<3 | proto.WireVarint)
369		_ = b.EncodeZigzag32(uint64(x.Field7))
370	case *AllTypesOneOf_Field8:
371		_ = b.EncodeVarint(8<<3 | proto.WireVarint)
372		_ = b.EncodeZigzag64(uint64(x.Field8))
373	case *AllTypesOneOf_Field9:
374		_ = b.EncodeVarint(9<<3 | proto.WireFixed32)
375		_ = b.EncodeFixed32(uint64(x.Field9))
376	case *AllTypesOneOf_Field10:
377		_ = b.EncodeVarint(10<<3 | proto.WireFixed32)
378		_ = b.EncodeFixed32(uint64(x.Field10))
379	case *AllTypesOneOf_Field11:
380		_ = b.EncodeVarint(11<<3 | proto.WireFixed64)
381		_ = b.EncodeFixed64(uint64(x.Field11))
382	case *AllTypesOneOf_Field12:
383		_ = b.EncodeVarint(12<<3 | proto.WireFixed64)
384		_ = b.EncodeFixed64(uint64(x.Field12))
385	case *AllTypesOneOf_Field13:
386		t := uint64(0)
387		if x.Field13 {
388			t = 1
389		}
390		_ = b.EncodeVarint(13<<3 | proto.WireVarint)
391		_ = b.EncodeVarint(t)
392	case *AllTypesOneOf_Field14:
393		_ = b.EncodeVarint(14<<3 | proto.WireBytes)
394		_ = b.EncodeStringBytes(x.Field14)
395	case *AllTypesOneOf_Field15:
396		_ = b.EncodeVarint(15<<3 | proto.WireBytes)
397		_ = b.EncodeRawBytes(x.Field15)
398	case *AllTypesOneOf_SubMessage:
399		_ = b.EncodeVarint(16<<3 | proto.WireBytes)
400		if err := b.EncodeMessage(x.SubMessage); err != nil {
401			return err
402		}
403	case nil:
404	default:
405		return fmt.Errorf("AllTypesOneOf.TestOneof has unexpected type %T", x)
406	}
407	return nil
408}
409
410func _AllTypesOneOf_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
411	m := msg.(*AllTypesOneOf)
412	switch tag {
413	case 1: // test_oneof.Field1
414		if wire != proto.WireFixed64 {
415			return true, proto.ErrInternalBadWireType
416		}
417		x, err := b.DecodeFixed64()
418		m.TestOneof = &AllTypesOneOf_Field1{math.Float64frombits(x)}
419		return true, err
420	case 2: // test_oneof.Field2
421		if wire != proto.WireFixed32 {
422			return true, proto.ErrInternalBadWireType
423		}
424		x, err := b.DecodeFixed32()
425		m.TestOneof = &AllTypesOneOf_Field2{math.Float32frombits(uint32(x))}
426		return true, err
427	case 3: // test_oneof.Field3
428		if wire != proto.WireVarint {
429			return true, proto.ErrInternalBadWireType
430		}
431		x, err := b.DecodeVarint()
432		m.TestOneof = &AllTypesOneOf_Field3{int32(x)}
433		return true, err
434	case 4: // test_oneof.Field4
435		if wire != proto.WireVarint {
436			return true, proto.ErrInternalBadWireType
437		}
438		x, err := b.DecodeVarint()
439		m.TestOneof = &AllTypesOneOf_Field4{int64(x)}
440		return true, err
441	case 5: // test_oneof.Field5
442		if wire != proto.WireVarint {
443			return true, proto.ErrInternalBadWireType
444		}
445		x, err := b.DecodeVarint()
446		m.TestOneof = &AllTypesOneOf_Field5{uint32(x)}
447		return true, err
448	case 6: // test_oneof.Field6
449		if wire != proto.WireVarint {
450			return true, proto.ErrInternalBadWireType
451		}
452		x, err := b.DecodeVarint()
453		m.TestOneof = &AllTypesOneOf_Field6{x}
454		return true, err
455	case 7: // test_oneof.Field7
456		if wire != proto.WireVarint {
457			return true, proto.ErrInternalBadWireType
458		}
459		x, err := b.DecodeZigzag32()
460		m.TestOneof = &AllTypesOneOf_Field7{int32(x)}
461		return true, err
462	case 8: // test_oneof.Field8
463		if wire != proto.WireVarint {
464			return true, proto.ErrInternalBadWireType
465		}
466		x, err := b.DecodeZigzag64()
467		m.TestOneof = &AllTypesOneOf_Field8{int64(x)}
468		return true, err
469	case 9: // test_oneof.Field9
470		if wire != proto.WireFixed32 {
471			return true, proto.ErrInternalBadWireType
472		}
473		x, err := b.DecodeFixed32()
474		m.TestOneof = &AllTypesOneOf_Field9{uint32(x)}
475		return true, err
476	case 10: // test_oneof.Field10
477		if wire != proto.WireFixed32 {
478			return true, proto.ErrInternalBadWireType
479		}
480		x, err := b.DecodeFixed32()
481		m.TestOneof = &AllTypesOneOf_Field10{int32(x)}
482		return true, err
483	case 11: // test_oneof.Field11
484		if wire != proto.WireFixed64 {
485			return true, proto.ErrInternalBadWireType
486		}
487		x, err := b.DecodeFixed64()
488		m.TestOneof = &AllTypesOneOf_Field11{x}
489		return true, err
490	case 12: // test_oneof.Field12
491		if wire != proto.WireFixed64 {
492			return true, proto.ErrInternalBadWireType
493		}
494		x, err := b.DecodeFixed64()
495		m.TestOneof = &AllTypesOneOf_Field12{int64(x)}
496		return true, err
497	case 13: // test_oneof.Field13
498		if wire != proto.WireVarint {
499			return true, proto.ErrInternalBadWireType
500		}
501		x, err := b.DecodeVarint()
502		m.TestOneof = &AllTypesOneOf_Field13{x != 0}
503		return true, err
504	case 14: // test_oneof.Field14
505		if wire != proto.WireBytes {
506			return true, proto.ErrInternalBadWireType
507		}
508		x, err := b.DecodeStringBytes()
509		m.TestOneof = &AllTypesOneOf_Field14{x}
510		return true, err
511	case 15: // test_oneof.Field15
512		if wire != proto.WireBytes {
513			return true, proto.ErrInternalBadWireType
514		}
515		x, err := b.DecodeRawBytes(true)
516		m.TestOneof = &AllTypesOneOf_Field15{x}
517		return true, err
518	case 16: // test_oneof.sub_message
519		if wire != proto.WireBytes {
520			return true, proto.ErrInternalBadWireType
521		}
522		msg := new(Subby)
523		err := b.DecodeMessage(msg)
524		m.TestOneof = &AllTypesOneOf_SubMessage{msg}
525		return true, err
526	default:
527		return false, nil
528	}
529}
530
531func _AllTypesOneOf_OneofSizer(msg proto.Message) (n int) {
532	m := msg.(*AllTypesOneOf)
533	// test_oneof
534	switch x := m.TestOneof.(type) {
535	case *AllTypesOneOf_Field1:
536		n += 1 // tag and wire
537		n += 8
538	case *AllTypesOneOf_Field2:
539		n += 1 // tag and wire
540		n += 4
541	case *AllTypesOneOf_Field3:
542		n += 1 // tag and wire
543		n += proto.SizeVarint(uint64(x.Field3))
544	case *AllTypesOneOf_Field4:
545		n += 1 // tag and wire
546		n += proto.SizeVarint(uint64(x.Field4))
547	case *AllTypesOneOf_Field5:
548		n += 1 // tag and wire
549		n += proto.SizeVarint(uint64(x.Field5))
550	case *AllTypesOneOf_Field6:
551		n += 1 // tag and wire
552		n += proto.SizeVarint(uint64(x.Field6))
553	case *AllTypesOneOf_Field7:
554		n += 1 // tag and wire
555		n += proto.SizeVarint(uint64((uint32(x.Field7) << 1) ^ uint32((int32(x.Field7) >> 31))))
556	case *AllTypesOneOf_Field8:
557		n += 1 // tag and wire
558		n += proto.SizeVarint(uint64(uint64(x.Field8<<1) ^ uint64((int64(x.Field8) >> 63))))
559	case *AllTypesOneOf_Field9:
560		n += 1 // tag and wire
561		n += 4
562	case *AllTypesOneOf_Field10:
563		n += 1 // tag and wire
564		n += 4
565	case *AllTypesOneOf_Field11:
566		n += 1 // tag and wire
567		n += 8
568	case *AllTypesOneOf_Field12:
569		n += 1 // tag and wire
570		n += 8
571	case *AllTypesOneOf_Field13:
572		n += 1 // tag and wire
573		n += 1
574	case *AllTypesOneOf_Field14:
575		n += 1 // tag and wire
576		n += proto.SizeVarint(uint64(len(x.Field14)))
577		n += len(x.Field14)
578	case *AllTypesOneOf_Field15:
579		n += 1 // tag and wire
580		n += proto.SizeVarint(uint64(len(x.Field15)))
581		n += len(x.Field15)
582	case *AllTypesOneOf_SubMessage:
583		s := proto.Size(x.SubMessage)
584		n += 2 // tag and wire
585		n += proto.SizeVarint(uint64(s))
586		n += s
587	case nil:
588	default:
589		panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
590	}
591	return n
592}
593
594type TwoOneofs struct {
595	// Types that are valid to be assigned to One:
596	//	*TwoOneofs_Field1
597	//	*TwoOneofs_Field2
598	//	*TwoOneofs_Field3
599	One isTwoOneofs_One `protobuf_oneof:"one"`
600	// Types that are valid to be assigned to Two:
601	//	*TwoOneofs_Field34
602	//	*TwoOneofs_Field35
603	//	*TwoOneofs_SubMessage2
604	Two                  isTwoOneofs_Two `protobuf_oneof:"two"`
605	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
606	XXX_unrecognized     []byte          `json:"-"`
607	XXX_sizecache        int32           `json:"-"`
608}
609
610func (m *TwoOneofs) Reset()      { *m = TwoOneofs{} }
611func (*TwoOneofs) ProtoMessage() {}
612func (*TwoOneofs) Descriptor() ([]byte, []int) {
613	return fileDescriptor_5ca5df6bbfd2f47d, []int{2}
614}
615func (m *TwoOneofs) XXX_Unmarshal(b []byte) error {
616	return m.Unmarshal(b)
617}
618func (m *TwoOneofs) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
619	if deterministic {
620		return xxx_messageInfo_TwoOneofs.Marshal(b, m, deterministic)
621	} else {
622		b = b[:cap(b)]
623		n, err := m.MarshalTo(b)
624		if err != nil {
625			return nil, err
626		}
627		return b[:n], nil
628	}
629}
630func (m *TwoOneofs) XXX_Merge(src proto.Message) {
631	xxx_messageInfo_TwoOneofs.Merge(m, src)
632}
633func (m *TwoOneofs) XXX_Size() int {
634	return m.Size()
635}
636func (m *TwoOneofs) XXX_DiscardUnknown() {
637	xxx_messageInfo_TwoOneofs.DiscardUnknown(m)
638}
639
640var xxx_messageInfo_TwoOneofs proto.InternalMessageInfo
641
642type isTwoOneofs_One interface {
643	isTwoOneofs_One()
644	Equal(interface{}) bool
645	VerboseEqual(interface{}) error
646	MarshalTo([]byte) (int, error)
647	Size() int
648}
649type isTwoOneofs_Two interface {
650	isTwoOneofs_Two()
651	Equal(interface{}) bool
652	VerboseEqual(interface{}) error
653	MarshalTo([]byte) (int, error)
654	Size() int
655}
656
657type TwoOneofs_Field1 struct {
658	Field1 float64 `protobuf:"fixed64,1,opt,name=Field1,oneof"`
659}
660type TwoOneofs_Field2 struct {
661	Field2 float32 `protobuf:"fixed32,2,opt,name=Field2,oneof"`
662}
663type TwoOneofs_Field3 struct {
664	Field3 int32 `protobuf:"varint,3,opt,name=Field3,oneof"`
665}
666type TwoOneofs_Field34 struct {
667	Field34 string `protobuf:"bytes,34,opt,name=Field34,oneof"`
668}
669type TwoOneofs_Field35 struct {
670	Field35 []byte `protobuf:"bytes,35,opt,name=Field35,oneof"`
671}
672type TwoOneofs_SubMessage2 struct {
673	SubMessage2 *Subby `protobuf:"bytes,36,opt,name=sub_message2,json=subMessage2,oneof"`
674}
675
676func (*TwoOneofs_Field1) isTwoOneofs_One()      {}
677func (*TwoOneofs_Field2) isTwoOneofs_One()      {}
678func (*TwoOneofs_Field3) isTwoOneofs_One()      {}
679func (*TwoOneofs_Field34) isTwoOneofs_Two()     {}
680func (*TwoOneofs_Field35) isTwoOneofs_Two()     {}
681func (*TwoOneofs_SubMessage2) isTwoOneofs_Two() {}
682
683func (m *TwoOneofs) GetOne() isTwoOneofs_One {
684	if m != nil {
685		return m.One
686	}
687	return nil
688}
689func (m *TwoOneofs) GetTwo() isTwoOneofs_Two {
690	if m != nil {
691		return m.Two
692	}
693	return nil
694}
695
696func (m *TwoOneofs) GetField1() float64 {
697	if x, ok := m.GetOne().(*TwoOneofs_Field1); ok {
698		return x.Field1
699	}
700	return 0
701}
702
703func (m *TwoOneofs) GetField2() float32 {
704	if x, ok := m.GetOne().(*TwoOneofs_Field2); ok {
705		return x.Field2
706	}
707	return 0
708}
709
710func (m *TwoOneofs) GetField3() int32 {
711	if x, ok := m.GetOne().(*TwoOneofs_Field3); ok {
712		return x.Field3
713	}
714	return 0
715}
716
717func (m *TwoOneofs) GetField34() string {
718	if x, ok := m.GetTwo().(*TwoOneofs_Field34); ok {
719		return x.Field34
720	}
721	return ""
722}
723
724func (m *TwoOneofs) GetField35() []byte {
725	if x, ok := m.GetTwo().(*TwoOneofs_Field35); ok {
726		return x.Field35
727	}
728	return nil
729}
730
731func (m *TwoOneofs) GetSubMessage2() *Subby {
732	if x, ok := m.GetTwo().(*TwoOneofs_SubMessage2); ok {
733		return x.SubMessage2
734	}
735	return nil
736}
737
738// XXX_OneofFuncs is for the internal use of the proto package.
739func (*TwoOneofs) 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{}) {
740	return _TwoOneofs_OneofMarshaler, _TwoOneofs_OneofUnmarshaler, _TwoOneofs_OneofSizer, []interface{}{
741		(*TwoOneofs_Field1)(nil),
742		(*TwoOneofs_Field2)(nil),
743		(*TwoOneofs_Field3)(nil),
744		(*TwoOneofs_Field34)(nil),
745		(*TwoOneofs_Field35)(nil),
746		(*TwoOneofs_SubMessage2)(nil),
747	}
748}
749
750func _TwoOneofs_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
751	m := msg.(*TwoOneofs)
752	// one
753	switch x := m.One.(type) {
754	case *TwoOneofs_Field1:
755		_ = b.EncodeVarint(1<<3 | proto.WireFixed64)
756		_ = b.EncodeFixed64(math.Float64bits(x.Field1))
757	case *TwoOneofs_Field2:
758		_ = b.EncodeVarint(2<<3 | proto.WireFixed32)
759		_ = b.EncodeFixed32(uint64(math.Float32bits(x.Field2)))
760	case *TwoOneofs_Field3:
761		_ = b.EncodeVarint(3<<3 | proto.WireVarint)
762		_ = b.EncodeVarint(uint64(x.Field3))
763	case nil:
764	default:
765		return fmt.Errorf("TwoOneofs.One has unexpected type %T", x)
766	}
767	// two
768	switch x := m.Two.(type) {
769	case *TwoOneofs_Field34:
770		_ = b.EncodeVarint(34<<3 | proto.WireBytes)
771		_ = b.EncodeStringBytes(x.Field34)
772	case *TwoOneofs_Field35:
773		_ = b.EncodeVarint(35<<3 | proto.WireBytes)
774		_ = b.EncodeRawBytes(x.Field35)
775	case *TwoOneofs_SubMessage2:
776		_ = b.EncodeVarint(36<<3 | proto.WireBytes)
777		if err := b.EncodeMessage(x.SubMessage2); err != nil {
778			return err
779		}
780	case nil:
781	default:
782		return fmt.Errorf("TwoOneofs.Two has unexpected type %T", x)
783	}
784	return nil
785}
786
787func _TwoOneofs_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
788	m := msg.(*TwoOneofs)
789	switch tag {
790	case 1: // one.Field1
791		if wire != proto.WireFixed64 {
792			return true, proto.ErrInternalBadWireType
793		}
794		x, err := b.DecodeFixed64()
795		m.One = &TwoOneofs_Field1{math.Float64frombits(x)}
796		return true, err
797	case 2: // one.Field2
798		if wire != proto.WireFixed32 {
799			return true, proto.ErrInternalBadWireType
800		}
801		x, err := b.DecodeFixed32()
802		m.One = &TwoOneofs_Field2{math.Float32frombits(uint32(x))}
803		return true, err
804	case 3: // one.Field3
805		if wire != proto.WireVarint {
806			return true, proto.ErrInternalBadWireType
807		}
808		x, err := b.DecodeVarint()
809		m.One = &TwoOneofs_Field3{int32(x)}
810		return true, err
811	case 34: // two.Field34
812		if wire != proto.WireBytes {
813			return true, proto.ErrInternalBadWireType
814		}
815		x, err := b.DecodeStringBytes()
816		m.Two = &TwoOneofs_Field34{x}
817		return true, err
818	case 35: // two.Field35
819		if wire != proto.WireBytes {
820			return true, proto.ErrInternalBadWireType
821		}
822		x, err := b.DecodeRawBytes(true)
823		m.Two = &TwoOneofs_Field35{x}
824		return true, err
825	case 36: // two.sub_message2
826		if wire != proto.WireBytes {
827			return true, proto.ErrInternalBadWireType
828		}
829		msg := new(Subby)
830		err := b.DecodeMessage(msg)
831		m.Two = &TwoOneofs_SubMessage2{msg}
832		return true, err
833	default:
834		return false, nil
835	}
836}
837
838func _TwoOneofs_OneofSizer(msg proto.Message) (n int) {
839	m := msg.(*TwoOneofs)
840	// one
841	switch x := m.One.(type) {
842	case *TwoOneofs_Field1:
843		n += 1 // tag and wire
844		n += 8
845	case *TwoOneofs_Field2:
846		n += 1 // tag and wire
847		n += 4
848	case *TwoOneofs_Field3:
849		n += 1 // tag and wire
850		n += proto.SizeVarint(uint64(x.Field3))
851	case nil:
852	default:
853		panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
854	}
855	// two
856	switch x := m.Two.(type) {
857	case *TwoOneofs_Field34:
858		n += 2 // tag and wire
859		n += proto.SizeVarint(uint64(len(x.Field34)))
860		n += len(x.Field34)
861	case *TwoOneofs_Field35:
862		n += 2 // tag and wire
863		n += proto.SizeVarint(uint64(len(x.Field35)))
864		n += len(x.Field35)
865	case *TwoOneofs_SubMessage2:
866		s := proto.Size(x.SubMessage2)
867		n += 2 // tag and wire
868		n += proto.SizeVarint(uint64(s))
869		n += s
870	case nil:
871	default:
872		panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
873	}
874	return n
875}
876
877type CustomOneof struct {
878	// Types that are valid to be assigned to Custom:
879	//	*CustomOneof_Stringy
880	//	*CustomOneof_CustomType
881	//	*CustomOneof_CastType
882	//	*CustomOneof_MyCustomName
883	Custom               isCustomOneof_Custom `protobuf_oneof:"custom"`
884	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
885	XXX_unrecognized     []byte               `json:"-"`
886	XXX_sizecache        int32                `json:"-"`
887}
888
889func (m *CustomOneof) Reset()      { *m = CustomOneof{} }
890func (*CustomOneof) ProtoMessage() {}
891func (*CustomOneof) Descriptor() ([]byte, []int) {
892	return fileDescriptor_5ca5df6bbfd2f47d, []int{3}
893}
894func (m *CustomOneof) XXX_Unmarshal(b []byte) error {
895	return m.Unmarshal(b)
896}
897func (m *CustomOneof) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
898	if deterministic {
899		return xxx_messageInfo_CustomOneof.Marshal(b, m, deterministic)
900	} else {
901		b = b[:cap(b)]
902		n, err := m.MarshalTo(b)
903		if err != nil {
904			return nil, err
905		}
906		return b[:n], nil
907	}
908}
909func (m *CustomOneof) XXX_Merge(src proto.Message) {
910	xxx_messageInfo_CustomOneof.Merge(m, src)
911}
912func (m *CustomOneof) XXX_Size() int {
913	return m.Size()
914}
915func (m *CustomOneof) XXX_DiscardUnknown() {
916	xxx_messageInfo_CustomOneof.DiscardUnknown(m)
917}
918
919var xxx_messageInfo_CustomOneof proto.InternalMessageInfo
920
921type isCustomOneof_Custom interface {
922	isCustomOneof_Custom()
923	Equal(interface{}) bool
924	VerboseEqual(interface{}) error
925	MarshalTo([]byte) (int, error)
926	Size() int
927}
928
929type CustomOneof_Stringy struct {
930	Stringy string `protobuf:"bytes,34,opt,name=Stringy,oneof"`
931}
932type CustomOneof_CustomType struct {
933	CustomType github_com_gogo_protobuf_test_custom.Uint128 `protobuf:"bytes,35,opt,name=CustomType,oneof,customtype=github.com/gogo/protobuf/test/custom.Uint128"`
934}
935type CustomOneof_CastType struct {
936	CastType github_com_gogo_protobuf_test_casttype.MyUint64Type `protobuf:"varint,36,opt,name=CastType,oneof,casttype=github.com/gogo/protobuf/test/casttype.MyUint64Type"`
937}
938type CustomOneof_MyCustomName struct {
939	MyCustomName int64 `protobuf:"varint,37,opt,name=CustomName,oneof"`
940}
941
942func (*CustomOneof_Stringy) isCustomOneof_Custom()      {}
943func (*CustomOneof_CustomType) isCustomOneof_Custom()   {}
944func (*CustomOneof_CastType) isCustomOneof_Custom()     {}
945func (*CustomOneof_MyCustomName) isCustomOneof_Custom() {}
946
947func (m *CustomOneof) GetCustom() isCustomOneof_Custom {
948	if m != nil {
949		return m.Custom
950	}
951	return nil
952}
953
954func (m *CustomOneof) GetStringy() string {
955	if x, ok := m.GetCustom().(*CustomOneof_Stringy); ok {
956		return x.Stringy
957	}
958	return ""
959}
960
961func (m *CustomOneof) GetCastType() github_com_gogo_protobuf_test_casttype.MyUint64Type {
962	if x, ok := m.GetCustom().(*CustomOneof_CastType); ok {
963		return x.CastType
964	}
965	return 0
966}
967
968func (m *CustomOneof) GetMyCustomName() int64 {
969	if x, ok := m.GetCustom().(*CustomOneof_MyCustomName); ok {
970		return x.MyCustomName
971	}
972	return 0
973}
974
975// XXX_OneofFuncs is for the internal use of the proto package.
976func (*CustomOneof) 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{}) {
977	return _CustomOneof_OneofMarshaler, _CustomOneof_OneofUnmarshaler, _CustomOneof_OneofSizer, []interface{}{
978		(*CustomOneof_Stringy)(nil),
979		(*CustomOneof_CustomType)(nil),
980		(*CustomOneof_CastType)(nil),
981		(*CustomOneof_MyCustomName)(nil),
982	}
983}
984
985func _CustomOneof_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
986	m := msg.(*CustomOneof)
987	// custom
988	switch x := m.Custom.(type) {
989	case *CustomOneof_Stringy:
990		_ = b.EncodeVarint(34<<3 | proto.WireBytes)
991		_ = b.EncodeStringBytes(x.Stringy)
992	case *CustomOneof_CustomType:
993		_ = b.EncodeVarint(35<<3 | proto.WireBytes)
994		dAtA, err := x.CustomType.Marshal()
995		if err != nil {
996			return err
997		}
998		_ = b.EncodeRawBytes(dAtA)
999	case *CustomOneof_CastType:
1000		_ = b.EncodeVarint(36<<3 | proto.WireVarint)
1001		_ = b.EncodeVarint(uint64(x.CastType))
1002	case *CustomOneof_MyCustomName:
1003		_ = b.EncodeVarint(37<<3 | proto.WireVarint)
1004		_ = b.EncodeVarint(uint64(x.MyCustomName))
1005	case nil:
1006	default:
1007		return fmt.Errorf("CustomOneof.Custom has unexpected type %T", x)
1008	}
1009	return nil
1010}
1011
1012func _CustomOneof_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
1013	m := msg.(*CustomOneof)
1014	switch tag {
1015	case 34: // custom.Stringy
1016		if wire != proto.WireBytes {
1017			return true, proto.ErrInternalBadWireType
1018		}
1019		x, err := b.DecodeStringBytes()
1020		m.Custom = &CustomOneof_Stringy{x}
1021		return true, err
1022	case 35: // custom.CustomType
1023		if wire != proto.WireBytes {
1024			return true, proto.ErrInternalBadWireType
1025		}
1026		x, err := b.DecodeRawBytes(true)
1027		if err != nil {
1028			return true, err
1029		}
1030		var cc github_com_gogo_protobuf_test_custom.Uint128
1031		c := &cc
1032		err = c.Unmarshal(x)
1033		m.Custom = &CustomOneof_CustomType{*c}
1034		return true, err
1035	case 36: // custom.CastType
1036		if wire != proto.WireVarint {
1037			return true, proto.ErrInternalBadWireType
1038		}
1039		x, err := b.DecodeVarint()
1040		m.Custom = &CustomOneof_CastType{github_com_gogo_protobuf_test_casttype.MyUint64Type(x)}
1041		return true, err
1042	case 37: // custom.CustomName
1043		if wire != proto.WireVarint {
1044			return true, proto.ErrInternalBadWireType
1045		}
1046		x, err := b.DecodeVarint()
1047		m.Custom = &CustomOneof_MyCustomName{int64(x)}
1048		return true, err
1049	default:
1050		return false, nil
1051	}
1052}
1053
1054func _CustomOneof_OneofSizer(msg proto.Message) (n int) {
1055	m := msg.(*CustomOneof)
1056	// custom
1057	switch x := m.Custom.(type) {
1058	case *CustomOneof_Stringy:
1059		n += 2 // tag and wire
1060		n += proto.SizeVarint(uint64(len(x.Stringy)))
1061		n += len(x.Stringy)
1062	case *CustomOneof_CustomType:
1063		n += 2 // tag and wire
1064		n += proto.SizeVarint(uint64(x.CustomType.Size()))
1065		n += x.CustomType.Size()
1066	case *CustomOneof_CastType:
1067		n += 2 // tag and wire
1068		n += proto.SizeVarint(uint64(x.CastType))
1069	case *CustomOneof_MyCustomName:
1070		n += 2 // tag and wire
1071		n += proto.SizeVarint(uint64(x.MyCustomName))
1072	case nil:
1073	default:
1074		panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
1075	}
1076	return n
1077}
1078
1079func init() {
1080	proto.RegisterType((*Subby)(nil), "one.Subby")
1081	proto.RegisterType((*AllTypesOneOf)(nil), "one.AllTypesOneOf")
1082	proto.RegisterType((*TwoOneofs)(nil), "one.TwoOneofs")
1083	proto.RegisterType((*CustomOneof)(nil), "one.CustomOneof")
1084}
1085
1086func init() { proto.RegisterFile("combos/both/one.proto", fileDescriptor_5ca5df6bbfd2f47d) }
1087
1088var fileDescriptor_5ca5df6bbfd2f47d = []byte{
1089	// 596 bytes of a gzipped FileDescriptorProto
1090	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0xd3, 0x3f, 0x4f, 0xdb, 0x40,
1091	0x14, 0x00, 0x70, 0x3f, 0x42, 0x42, 0xb8, 0x84, 0x92, 0x5a, 0xaa, 0x74, 0x65, 0x38, 0x4e, 0x69,
1092	0x2b, 0xdd, 0x50, 0x12, 0xe2, 0xd8, 0xfc, 0x19, 0x6b, 0xaa, 0x2a, 0x0b, 0x45, 0x32, 0x30, 0xa3,
1093	0x98, 0x9a, 0x10, 0x89, 0xf8, 0x10, 0x77, 0x16, 0xf2, 0xc6, 0x67, 0xe8, 0xa7, 0xe8, 0xd8, 0xb1,
1094	0x1f, 0x81, 0x31, 0x63, 0xd5, 0x21, 0xc2, 0xee, 0xd2, 0x91, 0x11, 0x75, 0xaa, 0xce, 0x26, 0x77,
1095	0x95, 0xaa, 0xaa, 0x4b, 0xa7, 0xf8, 0xbd, 0x9f, 0xef, 0xe5, 0x3d, 0xdf, 0x1d, 0x7a, 0x76, 0xca,
1096	0x27, 0x21, 0x17, 0xdd, 0x90, 0xcb, 0xf3, 0x2e, 0x8f, 0xa3, 0xce, 0xe5, 0x15, 0x97, 0xdc, 0xae,
1097	0xf0, 0x38, 0x5a, 0xdb, 0x18, 0x8d, 0xe5, 0x79, 0x12, 0x76, 0x4e, 0xf9, 0xa4, 0x3b, 0xe2, 0x23,
1098	0xde, 0x2d, 0x2c, 0x4c, 0xce, 0x8a, 0xa8, 0x08, 0x8a, 0xa7, 0x72, 0x4d, 0xfb, 0x39, 0xaa, 0x1e,
1099	0x26, 0x61, 0x98, 0xda, 0x2d, 0x54, 0x11, 0x49, 0x88, 0x81, 0x02, 0x5b, 0x0e, 0xd4, 0x63, 0x7b,
1100	0x56, 0x41, 0x2b, 0x6f, 0x2e, 0x2e, 0x8e, 0xd2, 0xcb, 0x48, 0x1c, 0xc4, 0xd1, 0xc1, 0x99, 0x8d,
1101	0x51, 0xed, 0xdd, 0x38, 0xba, 0xf8, 0xd0, 0x2b, 0x5e, 0x83, 0x81, 0x15, 0x3c, 0xc6, 0x5a, 0x1c,
1102	0xbc, 0x40, 0x81, 0x2d, 0x68, 0x71, 0xb4, 0xf4, 0x71, 0x85, 0x02, 0xab, 0x6a, 0xe9, 0x6b, 0x71,
1103	0xf1, 0x22, 0x05, 0x56, 0xd1, 0xe2, 0x6a, 0xf1, 0x70, 0x95, 0x02, 0x5b, 0xd1, 0xe2, 0x69, 0xd9,
1104	0xc2, 0x35, 0x0a, 0x6c, 0x51, 0xcb, 0x96, 0x96, 0x6d, 0xbc, 0x44, 0x81, 0x3d, 0xd5, 0xb2, 0xad,
1105	0x65, 0x07, 0xd7, 0x29, 0x30, 0x5b, 0xcb, 0x8e, 0x96, 0x5d, 0xbc, 0x4c, 0x81, 0x2d, 0x69, 0xd9,
1106	0xb5, 0xd7, 0xd0, 0x52, 0x39, 0xd9, 0x26, 0x46, 0x14, 0xd8, 0xea, 0xc0, 0x0a, 0xe6, 0x09, 0x63,
1107	0x3d, 0xdc, 0xa0, 0xc0, 0x6a, 0xc6, 0x7a, 0xc6, 0x1c, 0xdc, 0xa4, 0xc0, 0x5a, 0xc6, 0x1c, 0x63,
1108	0x7d, 0xbc, 0x42, 0x81, 0xd5, 0x8d, 0xf5, 0x8d, 0xb9, 0xf8, 0x89, 0xda, 0x01, 0x63, 0xae, 0x31,
1109	0x0f, 0xaf, 0x52, 0x60, 0x4d, 0x63, 0x9e, 0xbd, 0x81, 0x1a, 0x22, 0x09, 0x4f, 0x26, 0x91, 0x10,
1110	0xc3, 0x51, 0x84, 0x5b, 0x14, 0x58, 0xc3, 0x41, 0x1d, 0x75, 0x26, 0x8a, 0x6d, 0x1d, 0x58, 0x01,
1111	0x12, 0x49, 0xb8, 0x5f, 0xba, 0xdf, 0x44, 0x48, 0x46, 0x42, 0x9e, 0xf0, 0x38, 0xe2, 0x67, 0xed,
1112	0x29, 0xa0, 0xe5, 0xa3, 0x6b, 0x7e, 0xa0, 0x02, 0xf1, 0x9f, 0x37, 0x77, 0xde, 0x74, 0xdf, 0xc5,
1113	0xed, 0x62, 0x20, 0x08, 0xe6, 0x09, 0x63, 0x1e, 0x7e, 0x51, 0x0c, 0xa4, 0xcd, 0xb3, 0xbb, 0xa8,
1114	0xf9, 0xdb, 0x40, 0x0e, 0x7e, 0xf9, 0xc7, 0x44, 0x10, 0x34, 0xcc, 0x44, 0x8e, 0x5f, 0x45, 0xea,
1115	0xd8, 0xab, 0x1f, 0x79, 0xcd, 0xdb, 0x1f, 0x17, 0x50, 0x63, 0x2f, 0x11, 0x92, 0x4f, 0x8a, 0xa9,
1116	0xd4, 0x5f, 0x1d, 0xca, 0xab, 0x71, 0x3c, 0x4a, 0x1f, 0xdb, 0xb0, 0x82, 0x79, 0xc2, 0x0e, 0x10,
1117	0x2a, 0x5f, 0x55, 0x27, 0xbc, 0xec, 0xc4, 0xdf, 0xfc, 0x36, 0x5b, 0x7f, 0xfd, 0xd7, 0x1b, 0xa4,
1118	0xbe, 0x5d, 0xf7, 0xb4, 0x58, 0xd3, 0x39, 0x1e, 0xc7, 0xb2, 0xe7, 0xec, 0xa8, 0x0f, 0x6c, 0xaa,
1119	0xd8, 0xc7, 0xa8, 0xbe, 0x37, 0x14, 0xb2, 0xa8, 0xa8, 0x5a, 0x5f, 0xf4, 0xb7, 0x7f, 0xce, 0xd6,
1120	0xfb, 0xff, 0xa8, 0x38, 0x14, 0x52, 0xa6, 0x97, 0x51, 0x67, 0x3f, 0x55, 0x55, 0xb7, 0x5c, 0xb5,
1121	0x7c, 0x60, 0x05, 0xba, 0x94, 0xed, 0xcc, 0x5b, 0x7d, 0x3f, 0x9c, 0x44, 0xf8, 0x95, 0xba, 0x2e,
1122	0x7e, 0x2b, 0x9f, 0xad, 0x37, 0xf7, 0x53, 0x93, 0x37, 0xad, 0xa8, 0xc8, 0xaf, 0xa3, 0x5a, 0xd9,
1123	0xaa, 0xff, 0xf6, 0x36, 0x23, 0xd6, 0x34, 0x23, 0xd6, 0xd7, 0x8c, 0x58, 0x77, 0x19, 0x81, 0xfb,
1124	0x8c, 0xc0, 0x43, 0x46, 0xe0, 0x26, 0x27, 0xf0, 0x29, 0x27, 0xf0, 0x39, 0x27, 0xf0, 0x25, 0x27,
1125	0x70, 0x9b, 0x13, 0x98, 0xe6, 0x04, 0xee, 0x72, 0x02, 0x3f, 0x72, 0x62, 0xdd, 0xe7, 0x04, 0x1e,
1126	0x72, 0x62, 0xdd, 0x7c, 0x27, 0xd6, 0xaf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xb8, 0x65, 0xb5, 0xca,
1127	0x75, 0x04, 0x00, 0x00,
1128}
1129
1130func (this *Subby) Description() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
1131	return OneDescription()
1132}
1133func (this *AllTypesOneOf) Description() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
1134	return OneDescription()
1135}
1136func (this *TwoOneofs) Description() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
1137	return OneDescription()
1138}
1139func (this *CustomOneof) Description() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
1140	return OneDescription()
1141}
1142func OneDescription() (desc *github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet) {
1143	d := &github_com_gogo_protobuf_protoc_gen_gogo_descriptor.FileDescriptorSet{}
1144	var gzipped = []byte{
1145		// 4296 bytes of a gzipped FileDescriptorSet
1146		0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x5b, 0x6b, 0x70, 0x1b, 0xd7,
1147		0x75, 0xe6, 0xe2, 0x41, 0x02, 0x07, 0x20, 0xb8, 0x5c, 0x52, 0x12, 0x44, 0xc7, 0x90, 0x04, 0xdb,
1148		0x31, 0xfd, 0x22, 0x6d, 0x8a, 0xa4, 0x24, 0xa8, 0x89, 0x0b, 0x92, 0x10, 0x45, 0x97, 0x24, 0x98,
1149		0x05, 0x19, 0x3f, 0x32, 0x9d, 0x9d, 0xc5, 0xe2, 0x12, 0x5c, 0x69, 0xb1, 0xbb, 0xd9, 0x5d, 0x48,
1150		0x86, 0xa6, 0x3f, 0xd4, 0x71, 0x1f, 0x93, 0xe9, 0x3b, 0xed, 0x4c, 0x13, 0xd7, 0x71, 0x9b, 0x74,
1151		0x1a, 0xa7, 0xe9, 0x2b, 0xe9, 0x23, 0x4d, 0xd2, 0x3f, 0xfd, 0x93, 0xd6, 0xbf, 0x3a, 0xce, 0xbf,
1152		0x4e, 0xa7, 0xe3, 0xb1, 0x18, 0xcf, 0x34, 0x6d, 0xdd, 0xd6, 0x6d, 0xd5, 0x19, 0x4f, 0xfd, 0xa7,
1153		0x73, 0x5f, 0xbb, 0x8b, 0x07, 0xb5, 0x60, 0xa6, 0xb6, 0x7f, 0x89, 0x7b, 0xce, 0xf9, 0xbe, 0x3d,
1154		0xf7, 0xdc, 0x73, 0xcf, 0x3d, 0xf7, 0x2e, 0x04, 0xaf, 0x97, 0xe0, 0x6c, 0xd3, 0xb2, 0x9a, 0x06,
1155		0x9a, 0xb7, 0x1d, 0xcb, 0xb3, 0xea, 0xed, 0xfd, 0xf9, 0x06, 0x72, 0x35, 0x47, 0xb7, 0x3d, 0xcb,
1156		0x99, 0x23, 0x32, 0x69, 0x82, 0x5a, 0xcc, 0x71, 0x8b, 0xe2, 0x16, 0x4c, 0x5e, 0xd1, 0x0d, 0xb4,
1157		0xe6, 0x1b, 0xd6, 0x90, 0x27, 0x5d, 0x84, 0xc4, 0xbe, 0x6e, 0xa0, 0xbc, 0x70, 0x36, 0x3e, 0x9b,
1158		0x59, 0x78, 0x70, 0xae, 0x07, 0x34, 0xd7, 0x8d, 0xd8, 0xc1, 0x62, 0x99, 0x20, 0x8a, 0x6f, 0x27,
1159		0x60, 0x6a, 0x80, 0x56, 0x92, 0x20, 0x61, 0xaa, 0x2d, 0xcc, 0x28, 0xcc, 0xa6, 0x65, 0xf2, 0xb7,
1160		0x94, 0x87, 0x31, 0x5b, 0xd5, 0xae, 0xab, 0x4d, 0x94, 0x8f, 0x11, 0x31, 0x7f, 0x94, 0x0a, 0x00,
1161		0x0d, 0x64, 0x23, 0xb3, 0x81, 0x4c, 0xad, 0x93, 0x8f, 0x9f, 0x8d, 0xcf, 0xa6, 0xe5, 0x90, 0x44,
1162		0x7a, 0x0c, 0x26, 0xed, 0x76, 0xdd, 0xd0, 0x35, 0x25, 0x64, 0x06, 0x67, 0xe3, 0xb3, 0x49, 0x59,
1163		0xa4, 0x8a, 0xb5, 0xc0, 0xf8, 0x61, 0x98, 0xb8, 0x89, 0xd4, 0xeb, 0x61, 0xd3, 0x0c, 0x31, 0xcd,
1164		0x61, 0x71, 0xc8, 0x70, 0x15, 0xb2, 0x2d, 0xe4, 0xba, 0x6a, 0x13, 0x29, 0x5e, 0xc7, 0x46, 0xf9,
1165		0x04, 0x19, 0xfd, 0xd9, 0xbe, 0xd1, 0xf7, 0x8e, 0x3c, 0xc3, 0x50, 0xbb, 0x1d, 0x1b, 0x49, 0x65,
1166		0x48, 0x23, 0xb3, 0xdd, 0xa2, 0x0c, 0xc9, 0x23, 0xe2, 0x57, 0x31, 0xdb, 0xad, 0x5e, 0x96, 0x14,
1167		0x86, 0x31, 0x8a, 0x31, 0x17, 0x39, 0x37, 0x74, 0x0d, 0xe5, 0x47, 0x09, 0xc1, 0xc3, 0x7d, 0x04,
1168		0x35, 0xaa, 0xef, 0xe5, 0xe0, 0x38, 0x69, 0x15, 0xd2, 0xe8, 0x45, 0x0f, 0x99, 0xae, 0x6e, 0x99,
1169		0xf9, 0x31, 0x42, 0xf2, 0xd0, 0x80, 0x59, 0x44, 0x46, 0xa3, 0x97, 0x22, 0xc0, 0x49, 0xcb, 0x30,
1170		0x66, 0xd9, 0x9e, 0x6e, 0x99, 0x6e, 0x3e, 0x75, 0x56, 0x98, 0xcd, 0x2c, 0x7c, 0x6c, 0x60, 0x22,
1171		0x54, 0xa9, 0x8d, 0xcc, 0x8d, 0xa5, 0x0d, 0x10, 0x5d, 0xab, 0xed, 0x68, 0x48, 0xd1, 0xac, 0x06,
1172		0x52, 0x74, 0x73, 0xdf, 0xca, 0xa7, 0x09, 0xc1, 0x99, 0xfe, 0x81, 0x10, 0xc3, 0x55, 0xab, 0x81,
1173		0x36, 0xcc, 0x7d, 0x4b, 0xce, 0xb9, 0x5d, 0xcf, 0xd2, 0x49, 0x18, 0x75, 0x3b, 0xa6, 0xa7, 0xbe,
1174		0x98, 0xcf, 0x92, 0x0c, 0x61, 0x4f, 0xc5, 0xef, 0x8c, 0xc2, 0xc4, 0x30, 0x29, 0x76, 0x19, 0x92,
1175		0xfb, 0x78, 0x94, 0xf9, 0xd8, 0x71, 0x62, 0x40, 0x31, 0xdd, 0x41, 0x1c, 0xfd, 0x11, 0x83, 0x58,
1176		0x86, 0x8c, 0x89, 0x5c, 0x0f, 0x35, 0x68, 0x46, 0xc4, 0x87, 0xcc, 0x29, 0xa0, 0xa0, 0xfe, 0x94,
1177		0x4a, 0xfc, 0x48, 0x29, 0xf5, 0x1c, 0x4c, 0xf8, 0x2e, 0x29, 0x8e, 0x6a, 0x36, 0x79, 0x6e, 0xce,
1178		0x47, 0x79, 0x32, 0x57, 0xe1, 0x38, 0x19, 0xc3, 0xe4, 0x1c, 0xea, 0x7a, 0x96, 0xd6, 0x00, 0x2c,
1179		0x13, 0x59, 0xfb, 0x4a, 0x03, 0x69, 0x46, 0x3e, 0x75, 0x44, 0x94, 0xaa, 0xd8, 0xa4, 0x2f, 0x4a,
1180		0x16, 0x95, 0x6a, 0x86, 0x74, 0x29, 0x48, 0xb5, 0xb1, 0x23, 0x32, 0x65, 0x8b, 0x2e, 0xb2, 0xbe,
1181		0x6c, 0xdb, 0x83, 0x9c, 0x83, 0x70, 0xde, 0xa3, 0x06, 0x1b, 0x59, 0x9a, 0x38, 0x31, 0x17, 0x39,
1182		0x32, 0x99, 0xc1, 0xe8, 0xc0, 0xc6, 0x9d, 0xf0, 0xa3, 0xf4, 0x00, 0xf8, 0x02, 0x85, 0xa4, 0x15,
1183		0x90, 0x2a, 0x94, 0xe5, 0xc2, 0x6d, 0xb5, 0x85, 0x66, 0x6e, 0x41, 0xae, 0x3b, 0x3c, 0xd2, 0x34,
1184		0x24, 0x5d, 0x4f, 0x75, 0x3c, 0x92, 0x85, 0x49, 0x99, 0x3e, 0x48, 0x22, 0xc4, 0x91, 0xd9, 0x20,
1185		0x55, 0x2e, 0x29, 0xe3, 0x3f, 0xa5, 0x1f, 0x0f, 0x06, 0x1c, 0x27, 0x03, 0xfe, 0x78, 0xff, 0x8c,
1186		0x76, 0x31, 0xf7, 0x8e, 0x7b, 0xe6, 0x02, 0x8c, 0x77, 0x0d, 0x60, 0xd8, 0x57, 0x17, 0x7f, 0x0a,
1187		0x4e, 0x0c, 0xa4, 0x96, 0x9e, 0x83, 0xe9, 0xb6, 0xa9, 0x9b, 0x1e, 0x72, 0x6c, 0x07, 0xe1, 0x8c,
1188		0xa5, 0xaf, 0xca, 0xff, 0xd3, 0xd8, 0x11, 0x39, 0xb7, 0x17, 0xb6, 0xa6, 0x2c, 0xf2, 0x54, 0xbb,
1189		0x5f, 0xf8, 0x68, 0x3a, 0xf5, 0xc3, 0x31, 0xf1, 0xf6, 0xed, 0xdb, 0xb7, 0x63, 0xc5, 0x2f, 0x8c,
1190		0xc2, 0xf4, 0xa0, 0x35, 0x33, 0x70, 0xf9, 0x9e, 0x84, 0x51, 0xb3, 0xdd, 0xaa, 0x23, 0x87, 0x04,
1191		0x29, 0x29, 0xb3, 0x27, 0xa9, 0x0c, 0x49, 0x43, 0xad, 0x23, 0x23, 0x9f, 0x38, 0x2b, 0xcc, 0xe6,
1192		0x16, 0x1e, 0x1b, 0x6a, 0x55, 0xce, 0x6d, 0x62, 0x88, 0x4c, 0x91, 0xd2, 0x27, 0x21, 0xc1, 0x4a,
1193		0x34, 0x66, 0x78, 0x74, 0x38, 0x06, 0xbc, 0x96, 0x64, 0x82, 0x93, 0xee, 0x83, 0x34, 0xfe, 0x97,
1194		0xe6, 0xc6, 0x28, 0xf1, 0x39, 0x85, 0x05, 0x38, 0x2f, 0xa4, 0x19, 0x48, 0x91, 0x65, 0xd2, 0x40,
1195		0x7c, 0x6b, 0xf3, 0x9f, 0x71, 0x62, 0x35, 0xd0, 0xbe, 0xda, 0x36, 0x3c, 0xe5, 0x86, 0x6a, 0xb4,
1196		0x11, 0x49, 0xf8, 0xb4, 0x9c, 0x65, 0xc2, 0x4f, 0x63, 0x99, 0x74, 0x06, 0x32, 0x74, 0x55, 0xe9,
1197		0x66, 0x03, 0xbd, 0x48, 0xaa, 0x67, 0x52, 0xa6, 0x0b, 0x6d, 0x03, 0x4b, 0xf0, 0xeb, 0xaf, 0xb9,
1198		0x96, 0xc9, 0x53, 0x93, 0xbc, 0x02, 0x0b, 0xc8, 0xeb, 0x2f, 0xf4, 0x16, 0xee, 0xfb, 0x07, 0x0f,
1199		0xaf, 0x37, 0xa7, 0x8a, 0xdf, 0x8a, 0x41, 0x82, 0xd4, 0x8b, 0x09, 0xc8, 0xec, 0x3e, 0xbf, 0x53,
1200		0x51, 0xd6, 0xaa, 0x7b, 0x2b, 0x9b, 0x15, 0x51, 0x90, 0x72, 0x00, 0x44, 0x70, 0x65, 0xb3, 0x5a,
1201		0xde, 0x15, 0x63, 0xfe, 0xf3, 0xc6, 0xf6, 0xee, 0xf2, 0xa2, 0x18, 0xf7, 0x01, 0x7b, 0x54, 0x90,
1202		0x08, 0x1b, 0x9c, 0x5f, 0x10, 0x93, 0x92, 0x08, 0x59, 0x4a, 0xb0, 0xf1, 0x5c, 0x65, 0x6d, 0x79,
1203		0x51, 0x1c, 0xed, 0x96, 0x9c, 0x5f, 0x10, 0xc7, 0xa4, 0x71, 0x48, 0x13, 0xc9, 0x4a, 0xb5, 0xba,
1204		0x29, 0xa6, 0x7c, 0xce, 0xda, 0xae, 0xbc, 0xb1, 0xbd, 0x2e, 0xa6, 0x7d, 0xce, 0x75, 0xb9, 0xba,
1205		0xb7, 0x23, 0x82, 0xcf, 0xb0, 0x55, 0xa9, 0xd5, 0xca, 0xeb, 0x15, 0x31, 0xe3, 0x5b, 0xac, 0x3c,
1206		0xbf, 0x5b, 0xa9, 0x89, 0xd9, 0x2e, 0xb7, 0xce, 0x2f, 0x88, 0xe3, 0xfe, 0x2b, 0x2a, 0xdb, 0x7b,
1207		0x5b, 0x62, 0x4e, 0x9a, 0x84, 0x71, 0xfa, 0x0a, 0xee, 0xc4, 0x44, 0x8f, 0x68, 0x79, 0x51, 0x14,
1208		0x03, 0x47, 0x28, 0xcb, 0x64, 0x97, 0x60, 0x79, 0x51, 0x94, 0x8a, 0xab, 0x90, 0x24, 0xd9, 0x25,
1209		0x49, 0x90, 0xdb, 0x2c, 0xaf, 0x54, 0x36, 0x95, 0xea, 0xce, 0xee, 0x46, 0x75, 0xbb, 0xbc, 0x29,
1210		0x0a, 0x81, 0x4c, 0xae, 0x7c, 0x6a, 0x6f, 0x43, 0xae, 0xac, 0x89, 0xb1, 0xb0, 0x6c, 0xa7, 0x52,
1211		0xde, 0xad, 0xac, 0x89, 0xf1, 0xa2, 0x06, 0xd3, 0x83, 0xea, 0xe4, 0xc0, 0x95, 0x11, 0x9a, 0xe2,
1212		0xd8, 0x11, 0x53, 0x4c, 0xb8, 0xfa, 0xa6, 0xf8, 0x07, 0x31, 0x98, 0x1a, 0xb0, 0x57, 0x0c, 0x7c,
1213		0xc9, 0xd3, 0x90, 0xa4, 0x29, 0x4a, 0x77, 0xcf, 0x47, 0x06, 0x6e, 0x3a, 0x24, 0x61, 0xfb, 0x76,
1214		0x50, 0x82, 0x0b, 0x77, 0x10, 0xf1, 0x23, 0x3a, 0x08, 0x4c, 0xd1, 0x57, 0xd3, 0x7f, 0xb2, 0xaf,
1215		0xa6, 0xd3, 0x6d, 0x6f, 0x79, 0x98, 0x6d, 0x8f, 0xc8, 0x8e, 0x57, 0xdb, 0x93, 0x03, 0x6a, 0xfb,
1216		0x65, 0x98, 0xec, 0x23, 0x1a, 0xba, 0xc6, 0xbe, 0x24, 0x40, 0xfe, 0xa8, 0xe0, 0x44, 0x54, 0xba,
1217		0x58, 0x57, 0xa5, 0xbb, 0xdc, 0x1b, 0xc1, 0x73, 0x47, 0x4f, 0x42, 0xdf, 0x5c, 0xbf, 0x26, 0xc0,
1218		0xc9, 0xc1, 0x9d, 0xe2, 0x40, 0x1f, 0x3e, 0x09, 0xa3, 0x2d, 0xe4, 0x1d, 0x58, 0xbc, 0x5b, 0xfa,
1219		0xf8, 0x80, 0x3d, 0x18, 0xab, 0x7b, 0x27, 0x9b, 0xa1, 0xc2, 0x9b, 0x78, 0xfc, 0xa8, 0x76, 0x8f,
1220		0x7a, 0xd3, 0xe7, 0xe9, 0xe7, 0x62, 0x70, 0x62, 0x20, 0xf9, 0x40, 0x47, 0xef, 0x07, 0xd0, 0x4d,
1221		0xbb, 0xed, 0xd1, 0x8e, 0x88, 0x16, 0xd8, 0x34, 0x91, 0x90, 0xe2, 0x85, 0x8b, 0x67, 0xdb, 0xf3,
1222		0xf5, 0x71, 0xa2, 0x07, 0x2a, 0x22, 0x06, 0x17, 0x03, 0x47, 0x13, 0xc4, 0xd1, 0xc2, 0x11, 0x23,
1223		0xed, 0x4b, 0xcc, 0x27, 0x41, 0xd4, 0x0c, 0x1d, 0x99, 0x9e, 0xe2, 0x7a, 0x0e, 0x52, 0x5b, 0xba,
1224		0xd9, 0x24, 0x3b, 0x48, 0xaa, 0x94, 0xdc, 0x57, 0x0d, 0x17, 0xc9, 0x13, 0x54, 0x5d, 0xe3, 0x5a,
1225		0x8c, 0x20, 0x09, 0xe4, 0x84, 0x10, 0xa3, 0x5d, 0x08, 0xaa, 0xf6, 0x11, 0xc5, 0x5f, 0x4c, 0x43,
1226		0x26, 0xd4, 0x57, 0x4b, 0xe7, 0x20, 0x7b, 0x4d, 0xbd, 0xa1, 0x2a, 0xfc, 0xac, 0x44, 0x23, 0x91,
1227		0xc1, 0xb2, 0x1d, 0x76, 0x5e, 0x7a, 0x12, 0xa6, 0x89, 0x89, 0xd5, 0xf6, 0x90, 0xa3, 0x68, 0x86,
1228		0xea, 0xba, 0x24, 0x68, 0x29, 0x62, 0x2a, 0x61, 0x5d, 0x15, 0xab, 0x56, 0xb9, 0x46, 0x5a, 0x82,
1229		0x29, 0x82, 0x68, 0xb5, 0x0d, 0x4f, 0xb7, 0x0d, 0xa4, 0xe0, 0xd3, 0x9b, 0x4b, 0x76, 0x12, 0xdf,
1230		0xb3, 0x49, 0x6c, 0xb1, 0xc5, 0x0c, 0xb0, 0x47, 0xae, 0xb4, 0x06, 0xf7, 0x13, 0x58, 0x13, 0x99,
1231		0xc8, 0x51, 0x3d, 0xa4, 0xa0, 0xcf, 0xb6, 0x55, 0xc3, 0x55, 0x54, 0xb3, 0xa1, 0x1c, 0xa8, 0xee,
1232		0x41, 0x7e, 0x1a, 0x13, 0xac, 0xc4, 0xf2, 0x82, 0x7c, 0x1a, 0x1b, 0xae, 0x33, 0xbb, 0x0a, 0x31,
1233		0x2b, 0x9b, 0x8d, 0xab, 0xaa, 0x7b, 0x20, 0x95, 0xe0, 0x24, 0x61, 0x71, 0x3d, 0x47, 0x37, 0x9b,
1234		0x8a, 0x76, 0x80, 0xb4, 0xeb, 0x4a, 0xdb, 0xdb, 0xbf, 0x98, 0xbf, 0x2f, 0xfc, 0x7e, 0xe2, 0x61,
1235		0x8d, 0xd8, 0xac, 0x62, 0x93, 0x3d, 0x6f, 0xff, 0xa2, 0x54, 0x83, 0x2c, 0x9e, 0x8c, 0x96, 0x7e,
1236		0x0b, 0x29, 0xfb, 0x96, 0x43, 0xb6, 0xc6, 0xdc, 0x80, 0xd2, 0x14, 0x8a, 0xe0, 0x5c, 0x95, 0x01,
1237		0xb6, 0xac, 0x06, 0x2a, 0x25, 0x6b, 0x3b, 0x95, 0xca, 0x9a, 0x9c, 0xe1, 0x2c, 0x57, 0x2c, 0x07,
1238		0x27, 0x54, 0xd3, 0xf2, 0x03, 0x9c, 0xa1, 0x09, 0xd5, 0xb4, 0x78, 0x78, 0x97, 0x60, 0x4a, 0xd3,
1239		0xe8, 0x98, 0x75, 0x4d, 0x61, 0x67, 0x2c, 0x37, 0x2f, 0x76, 0x05, 0x4b, 0xd3, 0xd6, 0xa9, 0x01,
1240		0xcb, 0x71, 0x57, 0xba, 0x04, 0x27, 0x82, 0x60, 0x85, 0x81, 0x93, 0x7d, 0xa3, 0xec, 0x85, 0x2e,
1241		0xc1, 0x94, 0xdd, 0xe9, 0x07, 0x4a, 0x5d, 0x6f, 0xb4, 0x3b, 0xbd, 0xb0, 0x0b, 0x30, 0x6d, 0x1f,
1242		0xd8, 0xfd, 0xb8, 0x47, 0xc3, 0x38, 0xc9, 0x3e, 0xb0, 0x7b, 0x81, 0x0f, 0x91, 0x03, 0xb7, 0x83,
1243		0x34, 0xd5, 0x43, 0x8d, 0xfc, 0xa9, 0xb0, 0x79, 0x48, 0x21, 0xcd, 0x83, 0xa8, 0x69, 0x0a, 0x32,
1244		0xd5, 0xba, 0x81, 0x14, 0xd5, 0x41, 0xa6, 0xea, 0xe6, 0xcf, 0x84, 0x8d, 0x73, 0x9a, 0x56, 0x21,
1245		0xda, 0x32, 0x51, 0x4a, 0x8f, 0xc2, 0xa4, 0x55, 0xbf, 0xa6, 0xd1, 0x94, 0x54, 0x6c, 0x07, 0xed,
1246		0xeb, 0x2f, 0xe6, 0x1f, 0x24, 0xf1, 0x9d, 0xc0, 0x0a, 0x92, 0x90, 0x3b, 0x44, 0x2c, 0x3d, 0x02,
1247		0xa2, 0xe6, 0x1e, 0xa8, 0x8e, 0x4d, 0x6a, 0xb2, 0x6b, 0xab, 0x1a, 0xca, 0x3f, 0x44, 0x4d, 0xa9,
1248		0x7c, 0x9b, 0x8b, 0xf1, 0x92, 0x70, 0x6f, 0xea, 0xfb, 0x1e, 0x67, 0x7c, 0x98, 0x2e, 0x09, 0x22,
1249		0x63, 0x6c, 0xb3, 0x20, 0xe2, 0x50, 0x74, 0xbd, 0x78, 0x96, 0x98, 0xe5, 0xec, 0x03, 0x3b, 0xfc,
1250		0xde, 0x07, 0x60, 0x1c, 0x5b, 0x06, 0x2f, 0x7d, 0x84, 0x36, 0x64, 0xf6, 0x41, 0xe8, 0x8d, 0x8b,
1251		0x70, 0x12, 0x1b, 0xb5, 0x90, 0xa7, 0x36, 0x54, 0x4f, 0x0d, 0x59, 0x3f, 0x4e, 0xac, 0x71, 0xdc,
1252		0xb7, 0x98, 0xb2, 0xcb, 0x4f, 0xa7, 0x5d, 0xef, 0xf8, 0x99, 0xf5, 0x04, 0xf5, 0x13, 0xcb, 0x78,
1253		0x6e, 0x7d, 0x60, 0x4d, 0x77, 0xb1, 0x04, 0xd9, 0x70, 0xe2, 0x4b, 0x69, 0xa0, 0xa9, 0x2f, 0x0a,
1254		0xb8, 0x0b, 0x5a, 0xad, 0xae, 0xe1, 0xfe, 0xe5, 0x85, 0x8a, 0x18, 0xc3, 0x7d, 0xd4, 0xe6, 0xc6,
1255		0x6e, 0x45, 0x91, 0xf7, 0xb6, 0x77, 0x37, 0xb6, 0x2a, 0x62, 0x3c, 0xdc, 0xb0, 0x7f, 0x2f, 0x06,
1256		0xb9, 0xee, 0xb3, 0x97, 0xf4, 0x63, 0x70, 0x8a, 0x5f, 0x94, 0xb8, 0xc8, 0x53, 0x6e, 0xea, 0x0e,
1257		0x59, 0x8b, 0x2d, 0x95, 0xee, 0x8b, 0x7e, 0x36, 0x4c, 0x33, 0xab, 0x1a, 0xf2, 0x9e, 0xd5, 0x1d,
1258		0xbc, 0xd2, 0x5a, 0xaa, 0x27, 0x6d, 0xc2, 0x19, 0xd3, 0x52, 0x5c, 0x4f, 0x35, 0x1b, 0xaa, 0xd3,
1259		0x50, 0x82, 0x2b, 0x2a, 0x45, 0xd5, 0x34, 0xe4, 0xba, 0x16, 0xdd, 0x03, 0x7d, 0x96, 0x8f, 0x99,
1260		0x56, 0x8d, 0x19, 0x07, 0x9b, 0x43, 0x99, 0x99, 0xf6, 0x64, 0x6e, 0xfc, 0xa8, 0xcc, 0xbd, 0x0f,
1261		0xd2, 0x2d, 0xd5, 0x56, 0x90, 0xe9, 0x39, 0x1d, 0xd2, 0x71, 0xa7, 0xe4, 0x54, 0x4b, 0xb5, 0x2b,
1262		0xf8, 0xf9, 0xc3, 0x39, 0xf8, 0xfc, 0x63, 0x1c, 0xb2, 0xe1, 0xae, 0x1b, 0x1f, 0x62, 0x34, 0xb2,
1263		0x41, 0x09, 0xa4, 0x84, 0x3d, 0x70, 0xcf, 0x1e, 0x7d, 0x6e, 0x15, 0xef, 0x5c, 0xa5, 0x51, 0xda,
1264		0x0b, 0xcb, 0x14, 0x89, 0xbb, 0x06, 0x9c, 0x5a, 0x88, 0xf6, 0x1e, 0x29, 0x99, 0x3d, 0x49, 0xeb,
1265		0x30, 0x7a, 0xcd, 0x25, 0xdc, 0xa3, 0x84, 0xfb, 0xc1, 0x7b, 0x73, 0x3f, 0x53, 0x23, 0xe4, 0xe9,
1266		0x67, 0x6a, 0xca, 0x76, 0x55, 0xde, 0x2a, 0x6f, 0xca, 0x0c, 0x2e, 0x9d, 0x86, 0x84, 0xa1, 0xde,
1267		0xea, 0x74, 0xef, 0x71, 0x44, 0x34, 0x6c, 0xe0, 0x4f, 0x43, 0xe2, 0x26, 0x52, 0xaf, 0x77, 0xef,
1268		0x2c, 0x44, 0xf4, 0x01, 0xa6, 0xfe, 0x3c, 0x24, 0x49, 0xbc, 0x24, 0x00, 0x16, 0x31, 0x71, 0x44,
1269		0x4a, 0x41, 0x62, 0xb5, 0x2a, 0xe3, 0xf4, 0x17, 0x21, 0x4b, 0xa5, 0xca, 0xce, 0x46, 0x65, 0xb5,
1270		0x22, 0xc6, 0x8a, 0x4b, 0x30, 0x4a, 0x83, 0x80, 0x97, 0x86, 0x1f, 0x06, 0x71, 0x84, 0x3d, 0x32,
1271		0x0e, 0x81, 0x6b, 0xf7, 0xb6, 0x56, 0x2a, 0xb2, 0x18, 0x0b, 0x4f, 0xaf, 0x0b, 0xd9, 0x70, 0xc3,
1272		0xfd, 0xe1, 0xe4, 0xd4, 0x77, 0x05, 0xc8, 0x84, 0x1a, 0x68, 0xdc, 0xf9, 0xa8, 0x86, 0x61, 0xdd,
1273		0x54, 0x54, 0x43, 0x57, 0x5d, 0x96, 0x14, 0x40, 0x44, 0x65, 0x2c, 0x19, 0x76, 0xd2, 0x3e, 0x14,
1274		0xe7, 0x5f, 0x15, 0x40, 0xec, 0xed, 0x5d, 0x7b, 0x1c, 0x14, 0x3e, 0x52, 0x07, 0x5f, 0x11, 0x20,
1275		0xd7, 0xdd, 0xb0, 0xf6, 0xb8, 0x77, 0xee, 0x23, 0x75, 0xef, 0xad, 0x18, 0x8c, 0x77, 0xb5, 0xa9,
1276		0xc3, 0x7a, 0xf7, 0x59, 0x98, 0xd4, 0x1b, 0xa8, 0x65, 0x5b, 0x1e, 0x32, 0xb5, 0x8e, 0x62, 0xa0,
1277		0x1b, 0xc8, 0xc8, 0x17, 0x49, 0xa1, 0x98, 0xbf, 0x77, 0x23, 0x3c, 0xb7, 0x11, 0xe0, 0x36, 0x31,
1278		0xac, 0x34, 0xb5, 0xb1, 0x56, 0xd9, 0xda, 0xa9, 0xee, 0x56, 0xb6, 0x57, 0x9f, 0x57, 0xf6, 0xb6,
1279		0x7f, 0x62, 0xbb, 0xfa, 0xec, 0xb6, 0x2c, 0xea, 0x3d, 0x66, 0x1f, 0xe0, 0x52, 0xdf, 0x01, 0xb1,
1280		0xd7, 0x29, 0xe9, 0x14, 0x0c, 0x72, 0x4b, 0x1c, 0x91, 0xa6, 0x60, 0x62, 0xbb, 0xaa, 0xd4, 0x36,
1281		0xd6, 0x2a, 0x4a, 0xe5, 0xca, 0x95, 0xca, 0xea, 0x6e, 0x8d, 0x5e, 0x6d, 0xf8, 0xd6, 0xbb, 0xdd,
1282		0x8b, 0xfa, 0xe5, 0x38, 0x4c, 0x0d, 0xf0, 0x44, 0x2a, 0xb3, 0x43, 0x09, 0x3d, 0x27, 0x3d, 0x31,
1283		0x8c, 0xf7, 0x73, 0xb8, 0x2b, 0xd8, 0x51, 0x1d, 0x8f, 0x9d, 0x61, 0x1e, 0x01, 0x1c, 0x25, 0xd3,
1284		0xd3, 0xf7, 0x75, 0xe4, 0xb0, 0x9b, 0x20, 0x7a, 0x52, 0x99, 0x08, 0xe4, 0xf4, 0x32, 0xe8, 0x71,
1285		0x90, 0x6c, 0xcb, 0xd5, 0x3d, 0xfd, 0x06, 0x52, 0x74, 0x93, 0x5f, 0x1b, 0xe1, 0x93, 0x4b, 0x42,
1286		0x16, 0xb9, 0x66, 0xc3, 0xf4, 0x7c, 0x6b, 0x13, 0x35, 0xd5, 0x1e, 0x6b, 0x5c, 0xc0, 0xe3, 0xb2,
1287		0xc8, 0x35, 0xbe, 0xf5, 0x39, 0xc8, 0x36, 0xac, 0x36, 0x6e, 0xe7, 0xa8, 0x1d, 0xde, 0x2f, 0x04,
1288		0x39, 0x43, 0x65, 0xbe, 0x09, 0x6b, 0xd4, 0x83, 0xfb, 0xaa, 0xac, 0x9c, 0xa1, 0x32, 0x6a, 0xf2,
1289		0x30, 0x4c, 0xa8, 0xcd, 0xa6, 0x83, 0xc9, 0x39, 0x11, 0x3d, 0x7a, 0xe4, 0x7c, 0x31, 0x31, 0x9c,
1290		0x79, 0x06, 0x52, 0x3c, 0x0e, 0x78, 0x4b, 0xc6, 0x91, 0x50, 0x6c, 0x7a, 0x9e, 0x8e, 0xcd, 0xa6,
1291		0xe5, 0x94, 0xc9, 0x95, 0xe7, 0x20, 0xab, 0xbb, 0x4a, 0x70, 0xfd, 0x1e, 0x3b, 0x1b, 0x9b, 0x4d,
1292		0xc9, 0x19, 0xdd, 0xf5, 0xaf, 0x2e, 0x8b, 0xaf, 0xc5, 0x20, 0xd7, 0xfd, 0xf9, 0x40, 0x5a, 0x83,
1293		0x94, 0x61, 0x69, 0x2a, 0x49, 0x2d, 0xfa, 0xed, 0x6a, 0x36, 0xe2, 0x8b, 0xc3, 0xdc, 0x26, 0xb3,
1294		0x97, 0x7d, 0xe4, 0xcc, 0xdf, 0x09, 0x90, 0xe2, 0x62, 0xe9, 0x24, 0x24, 0x6c, 0xd5, 0x3b, 0x20,
1295		0x74, 0xc9, 0x95, 0x98, 0x28, 0xc8, 0xe4, 0x19, 0xcb, 0x5d, 0x5b, 0x35, 0x49, 0x0a, 0x30, 0x39,
1296		0x7e, 0xc6, 0xf3, 0x6a, 0x20, 0xb5, 0x41, 0xce, 0x35, 0x56, 0xab, 0x85, 0x4c, 0xcf, 0xe5, 0xf3,
1297		0xca, 0xe4, 0xab, 0x4c, 0x2c, 0x3d, 0x06, 0x93, 0x9e, 0xa3, 0xea, 0x46, 0x97, 0x6d, 0x82, 0xd8,
1298		0x8a, 0x5c, 0xe1, 0x1b, 0x97, 0xe0, 0x34, 0xe7, 0x6d, 0x20, 0x4f, 0xd5, 0x0e, 0x50, 0x23, 0x00,
1299		0x8d, 0x92, 0xfb, 0x8b, 0x53, 0xcc, 0x60, 0x8d, 0xe9, 0x39, 0xb6, 0xf8, 0x7d, 0x01, 0x26, 0xf9,
1300		0x49, 0xac, 0xe1, 0x07, 0x6b, 0x0b, 0x40, 0x35, 0x4d, 0xcb, 0x0b, 0x87, 0xab, 0x3f, 0x95, 0xfb,
1301		0x70, 0x73, 0x65, 0x1f, 0x24, 0x87, 0x08, 0x66, 0x5a, 0x00, 0x81, 0xe6, 0xc8, 0xb0, 0x9d, 0x81,
1302		0x0c, 0xfb, 0x36, 0x44, 0x3e, 0x30, 0xd2, 0xb3, 0x3b, 0x50, 0x11, 0x3e, 0xb2, 0x49, 0xd3, 0x90,
1303		0xac, 0xa3, 0xa6, 0x6e, 0xb2, 0x1b, 0x5f, 0xfa, 0xc0, 0x6f, 0x58, 0x12, 0xfe, 0x0d, 0xcb, 0xca,
1304		0x67, 0x60, 0x4a, 0xb3, 0x5a, 0xbd, 0xee, 0xae, 0x88, 0x3d, 0xf7, 0x07, 0xee, 0x55, 0xe1, 0x05,
1305		0x08, 0x5a, 0xcc, 0xf7, 0x04, 0xe1, 0x2b, 0xb1, 0xf8, 0xfa, 0xce, 0xca, 0xd7, 0x63, 0x33, 0xeb,
1306		0x14, 0xba, 0xc3, 0x47, 0x2a, 0xa3, 0x7d, 0x03, 0x69, 0xd8, 0x7b, 0xf8, 0xea, 0x63, 0xf0, 0x44,
1307		0x53, 0xf7, 0x0e, 0xda, 0xf5, 0x39, 0xcd, 0x6a, 0xcd, 0x37, 0xad, 0xa6, 0x15, 0x7c, 0x53, 0xc5,
1308		0x4f, 0xe4, 0x81, 0xfc, 0xc5, 0xbe, 0xab, 0xa6, 0x7d, 0xe9, 0x4c, 0xe4, 0x47, 0xd8, 0xd2, 0x36,
1309		0x4c, 0x31, 0x63, 0x85, 0x7c, 0xd8, 0xa1, 0xc7, 0x13, 0xe9, 0x9e, 0x97, 0x63, 0xf9, 0x6f, 0xbe,
1310		0x4d, 0xb6, 0x6b, 0x79, 0x92, 0x41, 0xb1, 0x8e, 0x9e, 0x60, 0x4a, 0x32, 0x9c, 0xe8, 0xe2, 0xa3,
1311		0x4b, 0x13, 0x39, 0x11, 0x8c, 0xdf, 0x63, 0x8c, 0x53, 0x21, 0xc6, 0x1a, 0x83, 0x96, 0x56, 0x61,
1312		0xfc, 0x38, 0x5c, 0x7f, 0xc3, 0xb8, 0xb2, 0x28, 0x4c, 0xb2, 0x0e, 0x13, 0x84, 0x44, 0x6b, 0xbb,
1313		0x9e, 0xd5, 0x22, 0x75, 0xef, 0xde, 0x34, 0x7f, 0xfb, 0x36, 0x5d, 0x2b, 0x39, 0x0c, 0x5b, 0xf5,
1314		0x51, 0xa5, 0x12, 0x90, 0x6f, 0x59, 0x0d, 0xa4, 0x19, 0x11, 0x0c, 0xaf, 0x33, 0x47, 0x7c, 0xfb,
1315		0xd2, 0xa7, 0x61, 0x1a, 0xff, 0x4d, 0xca, 0x52, 0xd8, 0x93, 0xe8, 0x9b, 0xb4, 0xfc, 0xf7, 0x5f,
1316		0xa2, 0xcb, 0x71, 0xca, 0x27, 0x08, 0xf9, 0x14, 0x9a, 0xc5, 0x26, 0xf2, 0x3c, 0xe4, 0xb8, 0x8a,
1317		0x6a, 0x0c, 0x72, 0x2f, 0x74, 0x15, 0x91, 0xff, 0xe2, 0x3b, 0xdd, 0xb3, 0xb8, 0x4e, 0x91, 0x65,
1318		0xc3, 0x28, 0xed, 0xc1, 0xa9, 0x01, 0x59, 0x31, 0x04, 0xe7, 0xcb, 0x8c, 0x73, 0xba, 0x2f, 0x33,
1319		0x30, 0xed, 0x0e, 0x70, 0xb9, 0x3f, 0x97, 0x43, 0x70, 0xfe, 0x16, 0xe3, 0x94, 0x18, 0x96, 0x4f,
1320		0x29, 0x66, 0x7c, 0x06, 0x26, 0x6f, 0x20, 0xa7, 0x6e, 0xb9, 0xec, 0xfa, 0x67, 0x08, 0xba, 0x57,
1321		0x18, 0xdd, 0x04, 0x03, 0x92, 0xfb, 0x20, 0xcc, 0x75, 0x09, 0x52, 0xfb, 0xaa, 0x86, 0x86, 0xa0,
1322		0xf8, 0x12, 0xa3, 0x18, 0xc3, 0xf6, 0x18, 0x5a, 0x86, 0x6c, 0xd3, 0x62, 0x3b, 0x53, 0x34, 0xfc,
1323		0x55, 0x06, 0xcf, 0x70, 0x0c, 0xa3, 0xb0, 0x2d, 0xbb, 0x6d, 0xe0, 0x6d, 0x2b, 0x9a, 0xe2, 0xb7,
1324		0x39, 0x05, 0xc7, 0x30, 0x8a, 0x63, 0x84, 0xf5, 0x77, 0x38, 0x85, 0x1b, 0x8a, 0xe7, 0xd3, 0x90,
1325		0xb1, 0x4c, 0xa3, 0x63, 0x99, 0xc3, 0x38, 0xf1, 0x65, 0xc6, 0x00, 0x0c, 0x82, 0x09, 0x2e, 0x43,
1326		0x7a, 0xd8, 0x89, 0xf8, 0xbd, 0x77, 0xf8, 0xf2, 0xe0, 0x33, 0xb0, 0x0e, 0x13, 0xbc, 0x40, 0xe9,
1327		0x96, 0x39, 0x04, 0xc5, 0x57, 0x19, 0x45, 0x2e, 0x04, 0x63, 0xc3, 0xf0, 0x90, 0xeb, 0x35, 0xd1,
1328		0x30, 0x24, 0xaf, 0xf1, 0x61, 0x30, 0x08, 0x0b, 0x65, 0x1d, 0x99, 0xda, 0xc1, 0x70, 0x0c, 0x5f,
1329		0xe3, 0xa1, 0xe4, 0x18, 0x4c, 0xb1, 0x0a, 0xe3, 0x2d, 0xd5, 0x71, 0x0f, 0x54, 0x63, 0xa8, 0xe9,
1330		0xf8, 0x7d, 0xc6, 0x91, 0xf5, 0x41, 0x2c, 0x22, 0x6d, 0xf3, 0x38, 0x34, 0x5f, 0xe7, 0x11, 0x09,
1331		0xc1, 0xd8, 0xd2, 0x73, 0x3d, 0x72, 0x57, 0x76, 0x1c, 0xb6, 0x3f, 0xe0, 0x4b, 0x8f, 0x62, 0xb7,
1332		0xc2, 0x8c, 0x97, 0x21, 0xed, 0xea, 0xb7, 0x86, 0xa2, 0xf9, 0x43, 0x3e, 0xd3, 0x04, 0x80, 0xc1,
1333		0xcf, 0xc3, 0xe9, 0x81, 0xdb, 0xc4, 0x10, 0x64, 0x7f, 0xc4, 0xc8, 0x4e, 0x0e, 0xd8, 0x2a, 0x58,
1334		0x49, 0x38, 0x2e, 0xe5, 0x1f, 0xf3, 0x92, 0x80, 0x7a, 0xb8, 0x76, 0xf0, 0x59, 0xc1, 0x55, 0xf7,
1335		0x8f, 0x17, 0xb5, 0x3f, 0xe1, 0x51, 0xa3, 0xd8, 0xae, 0xa8, 0xed, 0xc2, 0x49, 0xc6, 0x78, 0xbc,
1336		0x79, 0xfd, 0x06, 0x2f, 0xac, 0x14, 0xbd, 0xd7, 0x3d, 0xbb, 0x9f, 0x81, 0x19, 0x3f, 0x9c, 0xbc,
1337		0x29, 0x75, 0x95, 0x96, 0x6a, 0x0f, 0xc1, 0xfc, 0x4d, 0xc6, 0xcc, 0x2b, 0xbe, 0xdf, 0xd5, 0xba,
1338		0x5b, 0xaa, 0x8d, 0xc9, 0x9f, 0x83, 0x3c, 0x27, 0x6f, 0x9b, 0x0e, 0xd2, 0xac, 0xa6, 0xa9, 0xdf,
1339		0x42, 0x8d, 0x21, 0xa8, 0xff, 0xb4, 0x67, 0xaa, 0xf6, 0x42, 0x70, 0xcc, 0xbc, 0x01, 0xa2, 0xdf,
1340		0xab, 0x28, 0x7a, 0xcb, 0xb6, 0x1c, 0x2f, 0x82, 0xf1, 0xcf, 0xf8, 0x4c, 0xf9, 0xb8, 0x0d, 0x02,
1341		0x2b, 0x55, 0x20, 0x47, 0x1e, 0x87, 0x4d, 0xc9, 0x3f, 0x67, 0x44, 0xe3, 0x01, 0x8a, 0x15, 0x0e,
1342		0xcd, 0x6a, 0xd9, 0xaa, 0x33, 0x4c, 0xfd, 0xfb, 0x0b, 0x5e, 0x38, 0x18, 0x84, 0x15, 0x0e, 0xaf,
1343		0x63, 0x23, 0xbc, 0xdb, 0x0f, 0xc1, 0xf0, 0x2d, 0x5e, 0x38, 0x38, 0x86, 0x51, 0xf0, 0x86, 0x61,
1344		0x08, 0x8a, 0xbf, 0xe4, 0x14, 0x1c, 0x83, 0x29, 0x3e, 0x15, 0x6c, 0xb4, 0x0e, 0x6a, 0xea, 0xae,
1345		0xe7, 0xd0, 0x56, 0xf8, 0xde, 0x54, 0xdf, 0x7e, 0xa7, 0xbb, 0x09, 0x93, 0x43, 0x50, 0x5c, 0x89,
1346		0xd8, 0x15, 0x2a, 0x39, 0x29, 0x45, 0x3b, 0xf6, 0x1d, 0x5e, 0x89, 0x42, 0x30, 0xec, 0x5b, 0xa8,
1347		0x43, 0xc4, 0x61, 0xd7, 0xf0, 0xf9, 0x60, 0x08, 0xba, 0xef, 0xf6, 0x38, 0x57, 0xe3, 0x58, 0xcc,
1348		0x19, 0xea, 0x7f, 0xda, 0xe6, 0x75, 0xd4, 0x19, 0x2a, 0x3b, 0xff, 0xaa, 0xa7, 0xff, 0xd9, 0xa3,
1349		0x48, 0x5a, 0x43, 0x26, 0x7a, 0xfa, 0x29, 0x29, 0xea, 0x57, 0x40, 0xf9, 0x9f, 0xbe, 0xcb, 0xc6,
1350		0xdb, 0xdd, 0x4e, 0x95, 0x36, 0x71, 0x92, 0x77, 0x37, 0x3d, 0xd1, 0x64, 0x2f, 0xdd, 0xf5, 0xf3,
1351		0xbc, 0xab, 0xe7, 0x29, 0x5d, 0x81, 0xf1, 0xae, 0x86, 0x27, 0x9a, 0xea, 0x67, 0x18, 0x55, 0x36,
1352		0xdc, 0xef, 0x94, 0x96, 0x20, 0x81, 0x9b, 0x97, 0x68, 0xf8, 0xcf, 0x32, 0x38, 0x31, 0x2f, 0x7d,
1353		0x02, 0x52, 0xbc, 0x69, 0x89, 0x86, 0xfe, 0x1c, 0x83, 0xfa, 0x10, 0x0c, 0xe7, 0x0d, 0x4b, 0x34,
1354		0xfc, 0xe7, 0x39, 0x9c, 0x43, 0x30, 0x7c, 0xf8, 0x10, 0xfe, 0xf5, 0x2f, 0x24, 0xd8, 0xa6, 0xc3,
1355		0x63, 0x77, 0x19, 0xc6, 0x58, 0xa7, 0x12, 0x8d, 0xfe, 0x1c, 0x7b, 0x39, 0x47, 0x94, 0x2e, 0x40,
1356		0x72, 0xc8, 0x80, 0xff, 0x12, 0x83, 0x52, 0xfb, 0xd2, 0x2a, 0x64, 0x42, 0xdd, 0x49, 0x34, 0xfc,
1357		0x97, 0x19, 0x3c, 0x8c, 0xc2, 0xae, 0xb3, 0xee, 0x24, 0x9a, 0xe0, 0x57, 0xb8, 0xeb, 0x0c, 0x81,
1358		0xc3, 0xc6, 0x1b, 0x93, 0x68, 0xf4, 0xaf, 0xf2, 0xa8, 0x73, 0x48, 0xe9, 0x69, 0x48, 0xfb, 0x9b,
1359		0x4d, 0x34, 0xfe, 0xd7, 0x18, 0x3e, 0xc0, 0xe0, 0x08, 0x84, 0x36, 0xbb, 0x68, 0x8a, 0xcf, 0xf3,
1360		0x08, 0x84, 0x50, 0x78, 0x19, 0xf5, 0x36, 0x30, 0xd1, 0x4c, 0xbf, 0xce, 0x97, 0x51, 0x4f, 0xff,
1361		0x82, 0x67, 0x93, 0xd4, 0xfc, 0x68, 0x8a, 0xdf, 0xe0, 0xb3, 0x49, 0xec, 0xb1, 0x1b, 0xbd, 0x1d,
1362		0x41, 0x34, 0xc7, 0x6f, 0x72, 0x37, 0x7a, 0x1a, 0x82, 0xd2, 0x0e, 0x48, 0xfd, 0xdd, 0x40, 0x34,
1363		0xdf, 0x17, 0x18, 0xdf, 0x64, 0x5f, 0x33, 0x50, 0x7a, 0x16, 0x4e, 0x0e, 0xee, 0x04, 0xa2, 0x59,
1364		0xbf, 0x78, 0xb7, 0xe7, 0xec, 0x16, 0x6e, 0x04, 0x4a, 0xbb, 0xc1, 0x96, 0x12, 0xee, 0x02, 0xa2,
1365		0x69, 0x5f, 0xbe, 0xdb, 0x5d, 0xb8, 0xc3, 0x4d, 0x40, 0xa9, 0x0c, 0x10, 0x6c, 0xc0, 0xd1, 0x5c,
1366		0xaf, 0x30, 0xae, 0x10, 0x08, 0x2f, 0x0d, 0xb6, 0xff, 0x46, 0xe3, 0xbf, 0xc4, 0x97, 0x06, 0x43,
1367		0xe0, 0xa5, 0xc1, 0xb7, 0xde, 0x68, 0xf4, 0xab, 0x7c, 0x69, 0x70, 0x08, 0xce, 0xec, 0xd0, 0xee,
1368		0x16, 0xcd, 0xf0, 0x65, 0x9e, 0xd9, 0x21, 0x54, 0x69, 0x1b, 0x26, 0xfb, 0x36, 0xc4, 0x68, 0xaa,
1369		0xaf, 0x30, 0x2a, 0xb1, 0x77, 0x3f, 0x0c, 0x6f, 0x5e, 0x6c, 0x33, 0x8c, 0x66, 0xfb, 0xdd, 0x9e,
1370		0xcd, 0x8b, 0xed, 0x85, 0xa5, 0xcb, 0x90, 0x32, 0xdb, 0x86, 0x81, 0x17, 0x8f, 0x74, 0xef, 0x5f,
1371		0xee, 0xe5, 0xff, 0xf9, 0x7d, 0x16, 0x1d, 0x0e, 0x28, 0x2d, 0x41, 0x12, 0xb5, 0xea, 0xa8, 0x11,
1372		0x85, 0xfc, 0x97, 0xf7, 0x79, 0xc1, 0xc4, 0xd6, 0xa5, 0xa7, 0x01, 0xe8, 0xd5, 0x08, 0xf9, 0xec,
1373		0x17, 0x81, 0xfd, 0xd7, 0xf7, 0xd9, 0x6f, 0x6a, 0x02, 0x48, 0x40, 0x40, 0x7f, 0xa1, 0x73, 0x6f,
1374		0x82, 0x77, 0xba, 0x09, 0xc8, 0x8c, 0x5c, 0x82, 0xb1, 0x6b, 0xae, 0x65, 0x7a, 0x6a, 0x33, 0x0a,
1375		0xfd, 0x6f, 0x0c, 0xcd, 0xed, 0x71, 0xc0, 0x5a, 0x96, 0x83, 0x3c, 0xb5, 0xe9, 0x46, 0x61, 0xff,
1376		0x9d, 0x61, 0x7d, 0x00, 0x06, 0x6b, 0xaa, 0xeb, 0x0d, 0x33, 0xee, 0xff, 0xe0, 0x60, 0x0e, 0xc0,
1377		0x4e, 0xe3, 0xbf, 0xaf, 0xa3, 0x4e, 0x14, 0xf6, 0x5d, 0xee, 0x34, 0xb3, 0x2f, 0x7d, 0x02, 0xd2,
1378		0xf8, 0x4f, 0xfa, 0x43, 0xb9, 0x08, 0xf0, 0x7f, 0x32, 0x70, 0x80, 0xc0, 0x6f, 0x76, 0xbd, 0x86,
1379		0xa7, 0x47, 0x07, 0xfb, 0xbf, 0xd8, 0x4c, 0x73, 0xfb, 0x52, 0x19, 0x32, 0xae, 0xd7, 0x68, 0xb4,
1380		0x59, 0x7f, 0x1a, 0x01, 0xff, 0xef, 0xf7, 0xfd, 0x2b, 0x0b, 0x1f, 0x83, 0x67, 0xfb, 0xe6, 0x75,
1381		0xcf, 0xb6, 0xc8, 0x67, 0x8e, 0x28, 0x86, 0xbb, 0x8c, 0x21, 0x04, 0x59, 0xa9, 0x0c, 0xbe, 0xbe,
1382		0x85, 0x75, 0x6b, 0xdd, 0xa2, 0x17, 0xb7, 0x2f, 0x14, 0xa3, 0x6f, 0x60, 0xe1, 0x7f, 0x52, 0x70,
1383		0x42, 0xb3, 0x5a, 0x75, 0xcb, 0x9d, 0xaf, 0x5b, 0xde, 0xc1, 0xbc, 0x65, 0x32, 0x32, 0x29, 0x6e,
1384		0x99, 0x68, 0xe6, 0x78, 0x97, 0xb8, 0xc5, 0xd3, 0x90, 0xac, 0xb5, 0xeb, 0xf5, 0x8e, 0x24, 0x42,
1385		0xdc, 0x6d, 0xd7, 0xd9, 0x2f, 0xad, 0xf0, 0x9f, 0xc5, 0x37, 0xe3, 0x30, 0x5e, 0x36, 0x8c, 0xdd,
1386		0x8e, 0x8d, 0xdc, 0xaa, 0x89, 0xaa, 0xfb, 0x52, 0x1e, 0x46, 0xc9, 0x28, 0x9f, 0x22, 0x66, 0xc2,
1387		0xd5, 0x11, 0x99, 0x3d, 0xfb, 0x9a, 0x05, 0x72, 0xbd, 0x1d, 0xf3, 0x35, 0x0b, 0xbe, 0xe6, 0x3c,
1388		0xbd, 0xdd, 0xf6, 0x35, 0xe7, 0x7d, 0xcd, 0x22, 0xb9, 0xe3, 0x8e, 0xfb, 0x9a, 0x45, 0x5f, 0xb3,
1389		0x44, 0xbe, 0xe1, 0x8c, 0xfb, 0x9a, 0x25, 0x5f, 0xb3, 0x4c, 0xbe, 0xda, 0x24, 0x7c, 0xcd, 0xb2,
1390		0xaf, 0xb9, 0x40, 0x3e, 0xd6, 0x4c, 0xfa, 0x9a, 0x0b, 0xbe, 0xe6, 0x22, 0xf9, 0x40, 0x23, 0xf9,
1391		0x9a, 0x8b, 0xbe, 0xe6, 0x12, 0xf9, 0x49, 0xd5, 0x98, 0xaf, 0xb9, 0x24, 0xcd, 0xc0, 0x18, 0x1d,
1392		0xd9, 0x93, 0xe4, 0x2b, 0xfe, 0xc4, 0xd5, 0x11, 0x99, 0x0b, 0x02, 0xdd, 0x53, 0xe4, 0x67, 0x53,
1393		0xa3, 0x81, 0xee, 0xa9, 0x40, 0xb7, 0x40, 0xfe, 0xf7, 0x86, 0x18, 0xe8, 0x16, 0x02, 0xdd, 0xf9,
1394		0xfc, 0x38, 0x4e, 0x8e, 0x40, 0x77, 0x3e, 0xd0, 0x2d, 0xe6, 0x73, 0x78, 0x06, 0x02, 0xdd, 0x62,
1395		0xa0, 0x5b, 0xca, 0x4f, 0x9c, 0x15, 0x66, 0xb3, 0x81, 0x6e, 0x49, 0x7a, 0x02, 0x32, 0x6e, 0xbb,
1396		0xae, 0xb0, 0x32, 0x4f, 0x7e, 0x9e, 0x95, 0x59, 0x80, 0x39, 0x9c, 0x13, 0x64, 0x5a, 0xaf, 0x8e,
1397		0xc8, 0xe0, 0xb6, 0xeb, 0xac, 0x0a, 0xaf, 0x64, 0x81, 0x5c, 0x3e, 0x29, 0xe4, 0x57, 0xd5, 0xc5,
1398		0x37, 0x04, 0x48, 0xef, 0xde, 0xb4, 0xc8, 0x37, 0x7c, 0xf7, 0xff, 0x79, 0x72, 0xb9, 0xd3, 0xe7,
1399		0x17, 0xc9, 0x67, 0xd6, 0xf4, 0x55, 0x41, 0xe6, 0x82, 0x40, 0xb7, 0x94, 0x7f, 0x80, 0x0c, 0xc8,
1400		0xd7, 0x2d, 0x49, 0xf3, 0x90, 0x0d, 0x0d, 0x68, 0x81, 0xfc, 0x70, 0xaa, 0x7b, 0x44, 0x82, 0x9c,
1401		0x09, 0x46, 0xb4, 0xb0, 0x92, 0x04, 0x9c, 0xf6, 0xf8, 0x1f, 0xef, 0xa6, 0x55, 0xfc, 0x7c, 0x0c,
1402		0x32, 0xf4, 0xbe, 0x9a, 0x8c, 0x0a, 0xbf, 0x8a, 0x1e, 0x69, 0x3a, 0xcc, 0x8d, 0x11, 0x99, 0x0b,
1403		0x24, 0x19, 0x80, 0x9a, 0xe2, 0x0c, 0xa7, 0x9e, 0xac, 0x3c, 0xf9, 0x0f, 0x6f, 0x9e, 0x79, 0xfc,
1404		0xc8, 0x15, 0x84, 0x63, 0x37, 0x4f, 0xeb, 0xf7, 0xdc, 0x9e, 0x6e, 0x7a, 0x4f, 0x2d, 0x5c, 0xc4,
1405		0x01, 0x0e, 0x58, 0xa4, 0x3d, 0x48, 0xad, 0xaa, 0x2e, 0xf9, 0xc9, 0x25, 0x71, 0x3d, 0xb1, 0x72,
1406		0xe1, 0x7f, 0xdf, 0x3c, 0x73, 0x3e, 0x82, 0x91, 0x95, 0xd6, 0xb9, 0xad, 0x0e, 0x66, 0x5d, 0x5e,
1407		0xc4, 0xf0, 0xab, 0x23, 0xb2, 0x4f, 0x25, 0x2d, 0x70, 0x57, 0xb7, 0xd5, 0x16, 0xfd, 0x85, 0x58,
1408		0x7c, 0x45, 0x3c, 0x7c, 0xf3, 0x4c, 0x76, 0xab, 0x13, 0xc8, 0x03, 0x57, 0xf0, 0xd3, 0x4a, 0x0a,
1409		0x46, 0xa9, 0xab, 0x2b, 0x6b, 0xaf, 0xdf, 0x29, 0x8c, 0xbc, 0x71, 0xa7, 0x30, 0xf2, 0xf7, 0x77,
1410		0x0a, 0x23, 0x6f, 0xdd, 0x29, 0x08, 0xef, 0xde, 0x29, 0x08, 0xef, 0xdd, 0x29, 0x08, 0xb7, 0x0f,
1411		0x0b, 0xc2, 0xd7, 0x0e, 0x0b, 0xc2, 0x37, 0x0e, 0x0b, 0xc2, 0xb7, 0x0f, 0x0b, 0xc2, 0xeb, 0x87,
1412		0x05, 0xe1, 0x8d, 0xc3, 0x82, 0xf0, 0xd6, 0x61, 0x41, 0xf8, 0xe1, 0x61, 0x61, 0xe4, 0xdd, 0xc3,
1413		0x82, 0xf0, 0xde, 0x61, 0x61, 0xe4, 0xf6, 0x0f, 0x0a, 0x23, 0xff, 0x17, 0x00, 0x00, 0xff, 0xff,
1414		0x73, 0xc4, 0x37, 0x6f, 0x6c, 0x37, 0x00, 0x00,
1415	}
1416	r := bytes.NewReader(gzipped)
1417	gzipr, err := compress_gzip.NewReader(r)
1418	if err != nil {
1419		panic(err)
1420	}
1421	ungzipped, err := io_ioutil.ReadAll(gzipr)
1422	if err != nil {
1423		panic(err)
1424	}
1425	if err := github_com_gogo_protobuf_proto.Unmarshal(ungzipped, d); err != nil {
1426		panic(err)
1427	}
1428	return d
1429}
1430func (this *Subby) VerboseEqual(that interface{}) error {
1431	if that == nil {
1432		if this == nil {
1433			return nil
1434		}
1435		return fmt.Errorf("that == nil && this != nil")
1436	}
1437
1438	that1, ok := that.(*Subby)
1439	if !ok {
1440		that2, ok := that.(Subby)
1441		if ok {
1442			that1 = &that2
1443		} else {
1444			return fmt.Errorf("that is not of type *Subby")
1445		}
1446	}
1447	if that1 == nil {
1448		if this == nil {
1449			return nil
1450		}
1451		return fmt.Errorf("that is type *Subby but is nil && this != nil")
1452	} else if this == nil {
1453		return fmt.Errorf("that is type *Subby but is not nil && this == nil")
1454	}
1455	if this.Sub != nil && that1.Sub != nil {
1456		if *this.Sub != *that1.Sub {
1457			return fmt.Errorf("Sub this(%v) Not Equal that(%v)", *this.Sub, *that1.Sub)
1458		}
1459	} else if this.Sub != nil {
1460		return fmt.Errorf("this.Sub == nil && that.Sub != nil")
1461	} else if that1.Sub != nil {
1462		return fmt.Errorf("Sub this(%v) Not Equal that(%v)", this.Sub, that1.Sub)
1463	}
1464	if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
1465		return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
1466	}
1467	return nil
1468}
1469func (this *Subby) Equal(that interface{}) bool {
1470	if that == nil {
1471		return this == nil
1472	}
1473
1474	that1, ok := that.(*Subby)
1475	if !ok {
1476		that2, ok := that.(Subby)
1477		if ok {
1478			that1 = &that2
1479		} else {
1480			return false
1481		}
1482	}
1483	if that1 == nil {
1484		return this == nil
1485	} else if this == nil {
1486		return false
1487	}
1488	if this.Sub != nil && that1.Sub != nil {
1489		if *this.Sub != *that1.Sub {
1490			return false
1491		}
1492	} else if this.Sub != nil {
1493		return false
1494	} else if that1.Sub != nil {
1495		return false
1496	}
1497	if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
1498		return false
1499	}
1500	return true
1501}
1502func (this *AllTypesOneOf) VerboseEqual(that interface{}) error {
1503	if that == nil {
1504		if this == nil {
1505			return nil
1506		}
1507		return fmt.Errorf("that == nil && this != nil")
1508	}
1509
1510	that1, ok := that.(*AllTypesOneOf)
1511	if !ok {
1512		that2, ok := that.(AllTypesOneOf)
1513		if ok {
1514			that1 = &that2
1515		} else {
1516			return fmt.Errorf("that is not of type *AllTypesOneOf")
1517		}
1518	}
1519	if that1 == nil {
1520		if this == nil {
1521			return nil
1522		}
1523		return fmt.Errorf("that is type *AllTypesOneOf but is nil && this != nil")
1524	} else if this == nil {
1525		return fmt.Errorf("that is type *AllTypesOneOf but is not nil && this == nil")
1526	}
1527	if that1.TestOneof == nil {
1528		if this.TestOneof != nil {
1529			return fmt.Errorf("this.TestOneof != nil && that1.TestOneof == nil")
1530		}
1531	} else if this.TestOneof == nil {
1532		return fmt.Errorf("this.TestOneof == nil && that1.TestOneof != nil")
1533	} else if err := this.TestOneof.VerboseEqual(that1.TestOneof); err != nil {
1534		return err
1535	}
1536	if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
1537		return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
1538	}
1539	return nil
1540}
1541func (this *AllTypesOneOf_Field1) VerboseEqual(that interface{}) error {
1542	if that == nil {
1543		if this == nil {
1544			return nil
1545		}
1546		return fmt.Errorf("that == nil && this != nil")
1547	}
1548
1549	that1, ok := that.(*AllTypesOneOf_Field1)
1550	if !ok {
1551		that2, ok := that.(AllTypesOneOf_Field1)
1552		if ok {
1553			that1 = &that2
1554		} else {
1555			return fmt.Errorf("that is not of type *AllTypesOneOf_Field1")
1556		}
1557	}
1558	if that1 == nil {
1559		if this == nil {
1560			return nil
1561		}
1562		return fmt.Errorf("that is type *AllTypesOneOf_Field1 but is nil && this != nil")
1563	} else if this == nil {
1564		return fmt.Errorf("that is type *AllTypesOneOf_Field1 but is not nil && this == nil")
1565	}
1566	if this.Field1 != that1.Field1 {
1567		return fmt.Errorf("Field1 this(%v) Not Equal that(%v)", this.Field1, that1.Field1)
1568	}
1569	return nil
1570}
1571func (this *AllTypesOneOf_Field2) VerboseEqual(that interface{}) error {
1572	if that == nil {
1573		if this == nil {
1574			return nil
1575		}
1576		return fmt.Errorf("that == nil && this != nil")
1577	}
1578
1579	that1, ok := that.(*AllTypesOneOf_Field2)
1580	if !ok {
1581		that2, ok := that.(AllTypesOneOf_Field2)
1582		if ok {
1583			that1 = &that2
1584		} else {
1585			return fmt.Errorf("that is not of type *AllTypesOneOf_Field2")
1586		}
1587	}
1588	if that1 == nil {
1589		if this == nil {
1590			return nil
1591		}
1592		return fmt.Errorf("that is type *AllTypesOneOf_Field2 but is nil && this != nil")
1593	} else if this == nil {
1594		return fmt.Errorf("that is type *AllTypesOneOf_Field2 but is not nil && this == nil")
1595	}
1596	if this.Field2 != that1.Field2 {
1597		return fmt.Errorf("Field2 this(%v) Not Equal that(%v)", this.Field2, that1.Field2)
1598	}
1599	return nil
1600}
1601func (this *AllTypesOneOf_Field3) VerboseEqual(that interface{}) error {
1602	if that == nil {
1603		if this == nil {
1604			return nil
1605		}
1606		return fmt.Errorf("that == nil && this != nil")
1607	}
1608
1609	that1, ok := that.(*AllTypesOneOf_Field3)
1610	if !ok {
1611		that2, ok := that.(AllTypesOneOf_Field3)
1612		if ok {
1613			that1 = &that2
1614		} else {
1615			return fmt.Errorf("that is not of type *AllTypesOneOf_Field3")
1616		}
1617	}
1618	if that1 == nil {
1619		if this == nil {
1620			return nil
1621		}
1622		return fmt.Errorf("that is type *AllTypesOneOf_Field3 but is nil && this != nil")
1623	} else if this == nil {
1624		return fmt.Errorf("that is type *AllTypesOneOf_Field3 but is not nil && this == nil")
1625	}
1626	if this.Field3 != that1.Field3 {
1627		return fmt.Errorf("Field3 this(%v) Not Equal that(%v)", this.Field3, that1.Field3)
1628	}
1629	return nil
1630}
1631func (this *AllTypesOneOf_Field4) VerboseEqual(that interface{}) error {
1632	if that == nil {
1633		if this == nil {
1634			return nil
1635		}
1636		return fmt.Errorf("that == nil && this != nil")
1637	}
1638
1639	that1, ok := that.(*AllTypesOneOf_Field4)
1640	if !ok {
1641		that2, ok := that.(AllTypesOneOf_Field4)
1642		if ok {
1643			that1 = &that2
1644		} else {
1645			return fmt.Errorf("that is not of type *AllTypesOneOf_Field4")
1646		}
1647	}
1648	if that1 == nil {
1649		if this == nil {
1650			return nil
1651		}
1652		return fmt.Errorf("that is type *AllTypesOneOf_Field4 but is nil && this != nil")
1653	} else if this == nil {
1654		return fmt.Errorf("that is type *AllTypesOneOf_Field4 but is not nil && this == nil")
1655	}
1656	if this.Field4 != that1.Field4 {
1657		return fmt.Errorf("Field4 this(%v) Not Equal that(%v)", this.Field4, that1.Field4)
1658	}
1659	return nil
1660}
1661func (this *AllTypesOneOf_Field5) VerboseEqual(that interface{}) error {
1662	if that == nil {
1663		if this == nil {
1664			return nil
1665		}
1666		return fmt.Errorf("that == nil && this != nil")
1667	}
1668
1669	that1, ok := that.(*AllTypesOneOf_Field5)
1670	if !ok {
1671		that2, ok := that.(AllTypesOneOf_Field5)
1672		if ok {
1673			that1 = &that2
1674		} else {
1675			return fmt.Errorf("that is not of type *AllTypesOneOf_Field5")
1676		}
1677	}
1678	if that1 == nil {
1679		if this == nil {
1680			return nil
1681		}
1682		return fmt.Errorf("that is type *AllTypesOneOf_Field5 but is nil && this != nil")
1683	} else if this == nil {
1684		return fmt.Errorf("that is type *AllTypesOneOf_Field5 but is not nil && this == nil")
1685	}
1686	if this.Field5 != that1.Field5 {
1687		return fmt.Errorf("Field5 this(%v) Not Equal that(%v)", this.Field5, that1.Field5)
1688	}
1689	return nil
1690}
1691func (this *AllTypesOneOf_Field6) VerboseEqual(that interface{}) error {
1692	if that == nil {
1693		if this == nil {
1694			return nil
1695		}
1696		return fmt.Errorf("that == nil && this != nil")
1697	}
1698
1699	that1, ok := that.(*AllTypesOneOf_Field6)
1700	if !ok {
1701		that2, ok := that.(AllTypesOneOf_Field6)
1702		if ok {
1703			that1 = &that2
1704		} else {
1705			return fmt.Errorf("that is not of type *AllTypesOneOf_Field6")
1706		}
1707	}
1708	if that1 == nil {
1709		if this == nil {
1710			return nil
1711		}
1712		return fmt.Errorf("that is type *AllTypesOneOf_Field6 but is nil && this != nil")
1713	} else if this == nil {
1714		return fmt.Errorf("that is type *AllTypesOneOf_Field6 but is not nil && this == nil")
1715	}
1716	if this.Field6 != that1.Field6 {
1717		return fmt.Errorf("Field6 this(%v) Not Equal that(%v)", this.Field6, that1.Field6)
1718	}
1719	return nil
1720}
1721func (this *AllTypesOneOf_Field7) VerboseEqual(that interface{}) error {
1722	if that == nil {
1723		if this == nil {
1724			return nil
1725		}
1726		return fmt.Errorf("that == nil && this != nil")
1727	}
1728
1729	that1, ok := that.(*AllTypesOneOf_Field7)
1730	if !ok {
1731		that2, ok := that.(AllTypesOneOf_Field7)
1732		if ok {
1733			that1 = &that2
1734		} else {
1735			return fmt.Errorf("that is not of type *AllTypesOneOf_Field7")
1736		}
1737	}
1738	if that1 == nil {
1739		if this == nil {
1740			return nil
1741		}
1742		return fmt.Errorf("that is type *AllTypesOneOf_Field7 but is nil && this != nil")
1743	} else if this == nil {
1744		return fmt.Errorf("that is type *AllTypesOneOf_Field7 but is not nil && this == nil")
1745	}
1746	if this.Field7 != that1.Field7 {
1747		return fmt.Errorf("Field7 this(%v) Not Equal that(%v)", this.Field7, that1.Field7)
1748	}
1749	return nil
1750}
1751func (this *AllTypesOneOf_Field8) VerboseEqual(that interface{}) error {
1752	if that == nil {
1753		if this == nil {
1754			return nil
1755		}
1756		return fmt.Errorf("that == nil && this != nil")
1757	}
1758
1759	that1, ok := that.(*AllTypesOneOf_Field8)
1760	if !ok {
1761		that2, ok := that.(AllTypesOneOf_Field8)
1762		if ok {
1763			that1 = &that2
1764		} else {
1765			return fmt.Errorf("that is not of type *AllTypesOneOf_Field8")
1766		}
1767	}
1768	if that1 == nil {
1769		if this == nil {
1770			return nil
1771		}
1772		return fmt.Errorf("that is type *AllTypesOneOf_Field8 but is nil && this != nil")
1773	} else if this == nil {
1774		return fmt.Errorf("that is type *AllTypesOneOf_Field8 but is not nil && this == nil")
1775	}
1776	if this.Field8 != that1.Field8 {
1777		return fmt.Errorf("Field8 this(%v) Not Equal that(%v)", this.Field8, that1.Field8)
1778	}
1779	return nil
1780}
1781func (this *AllTypesOneOf_Field9) VerboseEqual(that interface{}) error {
1782	if that == nil {
1783		if this == nil {
1784			return nil
1785		}
1786		return fmt.Errorf("that == nil && this != nil")
1787	}
1788
1789	that1, ok := that.(*AllTypesOneOf_Field9)
1790	if !ok {
1791		that2, ok := that.(AllTypesOneOf_Field9)
1792		if ok {
1793			that1 = &that2
1794		} else {
1795			return fmt.Errorf("that is not of type *AllTypesOneOf_Field9")
1796		}
1797	}
1798	if that1 == nil {
1799		if this == nil {
1800			return nil
1801		}
1802		return fmt.Errorf("that is type *AllTypesOneOf_Field9 but is nil && this != nil")
1803	} else if this == nil {
1804		return fmt.Errorf("that is type *AllTypesOneOf_Field9 but is not nil && this == nil")
1805	}
1806	if this.Field9 != that1.Field9 {
1807		return fmt.Errorf("Field9 this(%v) Not Equal that(%v)", this.Field9, that1.Field9)
1808	}
1809	return nil
1810}
1811func (this *AllTypesOneOf_Field10) VerboseEqual(that interface{}) error {
1812	if that == nil {
1813		if this == nil {
1814			return nil
1815		}
1816		return fmt.Errorf("that == nil && this != nil")
1817	}
1818
1819	that1, ok := that.(*AllTypesOneOf_Field10)
1820	if !ok {
1821		that2, ok := that.(AllTypesOneOf_Field10)
1822		if ok {
1823			that1 = &that2
1824		} else {
1825			return fmt.Errorf("that is not of type *AllTypesOneOf_Field10")
1826		}
1827	}
1828	if that1 == nil {
1829		if this == nil {
1830			return nil
1831		}
1832		return fmt.Errorf("that is type *AllTypesOneOf_Field10 but is nil && this != nil")
1833	} else if this == nil {
1834		return fmt.Errorf("that is type *AllTypesOneOf_Field10 but is not nil && this == nil")
1835	}
1836	if this.Field10 != that1.Field10 {
1837		return fmt.Errorf("Field10 this(%v) Not Equal that(%v)", this.Field10, that1.Field10)
1838	}
1839	return nil
1840}
1841func (this *AllTypesOneOf_Field11) VerboseEqual(that interface{}) error {
1842	if that == nil {
1843		if this == nil {
1844			return nil
1845		}
1846		return fmt.Errorf("that == nil && this != nil")
1847	}
1848
1849	that1, ok := that.(*AllTypesOneOf_Field11)
1850	if !ok {
1851		that2, ok := that.(AllTypesOneOf_Field11)
1852		if ok {
1853			that1 = &that2
1854		} else {
1855			return fmt.Errorf("that is not of type *AllTypesOneOf_Field11")
1856		}
1857	}
1858	if that1 == nil {
1859		if this == nil {
1860			return nil
1861		}
1862		return fmt.Errorf("that is type *AllTypesOneOf_Field11 but is nil && this != nil")
1863	} else if this == nil {
1864		return fmt.Errorf("that is type *AllTypesOneOf_Field11 but is not nil && this == nil")
1865	}
1866	if this.Field11 != that1.Field11 {
1867		return fmt.Errorf("Field11 this(%v) Not Equal that(%v)", this.Field11, that1.Field11)
1868	}
1869	return nil
1870}
1871func (this *AllTypesOneOf_Field12) VerboseEqual(that interface{}) error {
1872	if that == nil {
1873		if this == nil {
1874			return nil
1875		}
1876		return fmt.Errorf("that == nil && this != nil")
1877	}
1878
1879	that1, ok := that.(*AllTypesOneOf_Field12)
1880	if !ok {
1881		that2, ok := that.(AllTypesOneOf_Field12)
1882		if ok {
1883			that1 = &that2
1884		} else {
1885			return fmt.Errorf("that is not of type *AllTypesOneOf_Field12")
1886		}
1887	}
1888	if that1 == nil {
1889		if this == nil {
1890			return nil
1891		}
1892		return fmt.Errorf("that is type *AllTypesOneOf_Field12 but is nil && this != nil")
1893	} else if this == nil {
1894		return fmt.Errorf("that is type *AllTypesOneOf_Field12 but is not nil && this == nil")
1895	}
1896	if this.Field12 != that1.Field12 {
1897		return fmt.Errorf("Field12 this(%v) Not Equal that(%v)", this.Field12, that1.Field12)
1898	}
1899	return nil
1900}
1901func (this *AllTypesOneOf_Field13) VerboseEqual(that interface{}) error {
1902	if that == nil {
1903		if this == nil {
1904			return nil
1905		}
1906		return fmt.Errorf("that == nil && this != nil")
1907	}
1908
1909	that1, ok := that.(*AllTypesOneOf_Field13)
1910	if !ok {
1911		that2, ok := that.(AllTypesOneOf_Field13)
1912		if ok {
1913			that1 = &that2
1914		} else {
1915			return fmt.Errorf("that is not of type *AllTypesOneOf_Field13")
1916		}
1917	}
1918	if that1 == nil {
1919		if this == nil {
1920			return nil
1921		}
1922		return fmt.Errorf("that is type *AllTypesOneOf_Field13 but is nil && this != nil")
1923	} else if this == nil {
1924		return fmt.Errorf("that is type *AllTypesOneOf_Field13 but is not nil && this == nil")
1925	}
1926	if this.Field13 != that1.Field13 {
1927		return fmt.Errorf("Field13 this(%v) Not Equal that(%v)", this.Field13, that1.Field13)
1928	}
1929	return nil
1930}
1931func (this *AllTypesOneOf_Field14) VerboseEqual(that interface{}) error {
1932	if that == nil {
1933		if this == nil {
1934			return nil
1935		}
1936		return fmt.Errorf("that == nil && this != nil")
1937	}
1938
1939	that1, ok := that.(*AllTypesOneOf_Field14)
1940	if !ok {
1941		that2, ok := that.(AllTypesOneOf_Field14)
1942		if ok {
1943			that1 = &that2
1944		} else {
1945			return fmt.Errorf("that is not of type *AllTypesOneOf_Field14")
1946		}
1947	}
1948	if that1 == nil {
1949		if this == nil {
1950			return nil
1951		}
1952		return fmt.Errorf("that is type *AllTypesOneOf_Field14 but is nil && this != nil")
1953	} else if this == nil {
1954		return fmt.Errorf("that is type *AllTypesOneOf_Field14 but is not nil && this == nil")
1955	}
1956	if this.Field14 != that1.Field14 {
1957		return fmt.Errorf("Field14 this(%v) Not Equal that(%v)", this.Field14, that1.Field14)
1958	}
1959	return nil
1960}
1961func (this *AllTypesOneOf_Field15) VerboseEqual(that interface{}) error {
1962	if that == nil {
1963		if this == nil {
1964			return nil
1965		}
1966		return fmt.Errorf("that == nil && this != nil")
1967	}
1968
1969	that1, ok := that.(*AllTypesOneOf_Field15)
1970	if !ok {
1971		that2, ok := that.(AllTypesOneOf_Field15)
1972		if ok {
1973			that1 = &that2
1974		} else {
1975			return fmt.Errorf("that is not of type *AllTypesOneOf_Field15")
1976		}
1977	}
1978	if that1 == nil {
1979		if this == nil {
1980			return nil
1981		}
1982		return fmt.Errorf("that is type *AllTypesOneOf_Field15 but is nil && this != nil")
1983	} else if this == nil {
1984		return fmt.Errorf("that is type *AllTypesOneOf_Field15 but is not nil && this == nil")
1985	}
1986	if !bytes.Equal(this.Field15, that1.Field15) {
1987		return fmt.Errorf("Field15 this(%v) Not Equal that(%v)", this.Field15, that1.Field15)
1988	}
1989	return nil
1990}
1991func (this *AllTypesOneOf_SubMessage) VerboseEqual(that interface{}) error {
1992	if that == nil {
1993		if this == nil {
1994			return nil
1995		}
1996		return fmt.Errorf("that == nil && this != nil")
1997	}
1998
1999	that1, ok := that.(*AllTypesOneOf_SubMessage)
2000	if !ok {
2001		that2, ok := that.(AllTypesOneOf_SubMessage)
2002		if ok {
2003			that1 = &that2
2004		} else {
2005			return fmt.Errorf("that is not of type *AllTypesOneOf_SubMessage")
2006		}
2007	}
2008	if that1 == nil {
2009		if this == nil {
2010			return nil
2011		}
2012		return fmt.Errorf("that is type *AllTypesOneOf_SubMessage but is nil && this != nil")
2013	} else if this == nil {
2014		return fmt.Errorf("that is type *AllTypesOneOf_SubMessage but is not nil && this == nil")
2015	}
2016	if !this.SubMessage.Equal(that1.SubMessage) {
2017		return fmt.Errorf("SubMessage this(%v) Not Equal that(%v)", this.SubMessage, that1.SubMessage)
2018	}
2019	return nil
2020}
2021func (this *AllTypesOneOf) Equal(that interface{}) bool {
2022	if that == nil {
2023		return this == nil
2024	}
2025
2026	that1, ok := that.(*AllTypesOneOf)
2027	if !ok {
2028		that2, ok := that.(AllTypesOneOf)
2029		if ok {
2030			that1 = &that2
2031		} else {
2032			return false
2033		}
2034	}
2035	if that1 == nil {
2036		return this == nil
2037	} else if this == nil {
2038		return false
2039	}
2040	if that1.TestOneof == nil {
2041		if this.TestOneof != nil {
2042			return false
2043		}
2044	} else if this.TestOneof == nil {
2045		return false
2046	} else if !this.TestOneof.Equal(that1.TestOneof) {
2047		return false
2048	}
2049	if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
2050		return false
2051	}
2052	return true
2053}
2054func (this *AllTypesOneOf_Field1) Equal(that interface{}) bool {
2055	if that == nil {
2056		return this == nil
2057	}
2058
2059	that1, ok := that.(*AllTypesOneOf_Field1)
2060	if !ok {
2061		that2, ok := that.(AllTypesOneOf_Field1)
2062		if ok {
2063			that1 = &that2
2064		} else {
2065			return false
2066		}
2067	}
2068	if that1 == nil {
2069		return this == nil
2070	} else if this == nil {
2071		return false
2072	}
2073	if this.Field1 != that1.Field1 {
2074		return false
2075	}
2076	return true
2077}
2078func (this *AllTypesOneOf_Field2) Equal(that interface{}) bool {
2079	if that == nil {
2080		return this == nil
2081	}
2082
2083	that1, ok := that.(*AllTypesOneOf_Field2)
2084	if !ok {
2085		that2, ok := that.(AllTypesOneOf_Field2)
2086		if ok {
2087			that1 = &that2
2088		} else {
2089			return false
2090		}
2091	}
2092	if that1 == nil {
2093		return this == nil
2094	} else if this == nil {
2095		return false
2096	}
2097	if this.Field2 != that1.Field2 {
2098		return false
2099	}
2100	return true
2101}
2102func (this *AllTypesOneOf_Field3) Equal(that interface{}) bool {
2103	if that == nil {
2104		return this == nil
2105	}
2106
2107	that1, ok := that.(*AllTypesOneOf_Field3)
2108	if !ok {
2109		that2, ok := that.(AllTypesOneOf_Field3)
2110		if ok {
2111			that1 = &that2
2112		} else {
2113			return false
2114		}
2115	}
2116	if that1 == nil {
2117		return this == nil
2118	} else if this == nil {
2119		return false
2120	}
2121	if this.Field3 != that1.Field3 {
2122		return false
2123	}
2124	return true
2125}
2126func (this *AllTypesOneOf_Field4) Equal(that interface{}) bool {
2127	if that == nil {
2128		return this == nil
2129	}
2130
2131	that1, ok := that.(*AllTypesOneOf_Field4)
2132	if !ok {
2133		that2, ok := that.(AllTypesOneOf_Field4)
2134		if ok {
2135			that1 = &that2
2136		} else {
2137			return false
2138		}
2139	}
2140	if that1 == nil {
2141		return this == nil
2142	} else if this == nil {
2143		return false
2144	}
2145	if this.Field4 != that1.Field4 {
2146		return false
2147	}
2148	return true
2149}
2150func (this *AllTypesOneOf_Field5) Equal(that interface{}) bool {
2151	if that == nil {
2152		return this == nil
2153	}
2154
2155	that1, ok := that.(*AllTypesOneOf_Field5)
2156	if !ok {
2157		that2, ok := that.(AllTypesOneOf_Field5)
2158		if ok {
2159			that1 = &that2
2160		} else {
2161			return false
2162		}
2163	}
2164	if that1 == nil {
2165		return this == nil
2166	} else if this == nil {
2167		return false
2168	}
2169	if this.Field5 != that1.Field5 {
2170		return false
2171	}
2172	return true
2173}
2174func (this *AllTypesOneOf_Field6) Equal(that interface{}) bool {
2175	if that == nil {
2176		return this == nil
2177	}
2178
2179	that1, ok := that.(*AllTypesOneOf_Field6)
2180	if !ok {
2181		that2, ok := that.(AllTypesOneOf_Field6)
2182		if ok {
2183			that1 = &that2
2184		} else {
2185			return false
2186		}
2187	}
2188	if that1 == nil {
2189		return this == nil
2190	} else if this == nil {
2191		return false
2192	}
2193	if this.Field6 != that1.Field6 {
2194		return false
2195	}
2196	return true
2197}
2198func (this *AllTypesOneOf_Field7) Equal(that interface{}) bool {
2199	if that == nil {
2200		return this == nil
2201	}
2202
2203	that1, ok := that.(*AllTypesOneOf_Field7)
2204	if !ok {
2205		that2, ok := that.(AllTypesOneOf_Field7)
2206		if ok {
2207			that1 = &that2
2208		} else {
2209			return false
2210		}
2211	}
2212	if that1 == nil {
2213		return this == nil
2214	} else if this == nil {
2215		return false
2216	}
2217	if this.Field7 != that1.Field7 {
2218		return false
2219	}
2220	return true
2221}
2222func (this *AllTypesOneOf_Field8) Equal(that interface{}) bool {
2223	if that == nil {
2224		return this == nil
2225	}
2226
2227	that1, ok := that.(*AllTypesOneOf_Field8)
2228	if !ok {
2229		that2, ok := that.(AllTypesOneOf_Field8)
2230		if ok {
2231			that1 = &that2
2232		} else {
2233			return false
2234		}
2235	}
2236	if that1 == nil {
2237		return this == nil
2238	} else if this == nil {
2239		return false
2240	}
2241	if this.Field8 != that1.Field8 {
2242		return false
2243	}
2244	return true
2245}
2246func (this *AllTypesOneOf_Field9) Equal(that interface{}) bool {
2247	if that == nil {
2248		return this == nil
2249	}
2250
2251	that1, ok := that.(*AllTypesOneOf_Field9)
2252	if !ok {
2253		that2, ok := that.(AllTypesOneOf_Field9)
2254		if ok {
2255			that1 = &that2
2256		} else {
2257			return false
2258		}
2259	}
2260	if that1 == nil {
2261		return this == nil
2262	} else if this == nil {
2263		return false
2264	}
2265	if this.Field9 != that1.Field9 {
2266		return false
2267	}
2268	return true
2269}
2270func (this *AllTypesOneOf_Field10) Equal(that interface{}) bool {
2271	if that == nil {
2272		return this == nil
2273	}
2274
2275	that1, ok := that.(*AllTypesOneOf_Field10)
2276	if !ok {
2277		that2, ok := that.(AllTypesOneOf_Field10)
2278		if ok {
2279			that1 = &that2
2280		} else {
2281			return false
2282		}
2283	}
2284	if that1 == nil {
2285		return this == nil
2286	} else if this == nil {
2287		return false
2288	}
2289	if this.Field10 != that1.Field10 {
2290		return false
2291	}
2292	return true
2293}
2294func (this *AllTypesOneOf_Field11) Equal(that interface{}) bool {
2295	if that == nil {
2296		return this == nil
2297	}
2298
2299	that1, ok := that.(*AllTypesOneOf_Field11)
2300	if !ok {
2301		that2, ok := that.(AllTypesOneOf_Field11)
2302		if ok {
2303			that1 = &that2
2304		} else {
2305			return false
2306		}
2307	}
2308	if that1 == nil {
2309		return this == nil
2310	} else if this == nil {
2311		return false
2312	}
2313	if this.Field11 != that1.Field11 {
2314		return false
2315	}
2316	return true
2317}
2318func (this *AllTypesOneOf_Field12) Equal(that interface{}) bool {
2319	if that == nil {
2320		return this == nil
2321	}
2322
2323	that1, ok := that.(*AllTypesOneOf_Field12)
2324	if !ok {
2325		that2, ok := that.(AllTypesOneOf_Field12)
2326		if ok {
2327			that1 = &that2
2328		} else {
2329			return false
2330		}
2331	}
2332	if that1 == nil {
2333		return this == nil
2334	} else if this == nil {
2335		return false
2336	}
2337	if this.Field12 != that1.Field12 {
2338		return false
2339	}
2340	return true
2341}
2342func (this *AllTypesOneOf_Field13) Equal(that interface{}) bool {
2343	if that == nil {
2344		return this == nil
2345	}
2346
2347	that1, ok := that.(*AllTypesOneOf_Field13)
2348	if !ok {
2349		that2, ok := that.(AllTypesOneOf_Field13)
2350		if ok {
2351			that1 = &that2
2352		} else {
2353			return false
2354		}
2355	}
2356	if that1 == nil {
2357		return this == nil
2358	} else if this == nil {
2359		return false
2360	}
2361	if this.Field13 != that1.Field13 {
2362		return false
2363	}
2364	return true
2365}
2366func (this *AllTypesOneOf_Field14) Equal(that interface{}) bool {
2367	if that == nil {
2368		return this == nil
2369	}
2370
2371	that1, ok := that.(*AllTypesOneOf_Field14)
2372	if !ok {
2373		that2, ok := that.(AllTypesOneOf_Field14)
2374		if ok {
2375			that1 = &that2
2376		} else {
2377			return false
2378		}
2379	}
2380	if that1 == nil {
2381		return this == nil
2382	} else if this == nil {
2383		return false
2384	}
2385	if this.Field14 != that1.Field14 {
2386		return false
2387	}
2388	return true
2389}
2390func (this *AllTypesOneOf_Field15) Equal(that interface{}) bool {
2391	if that == nil {
2392		return this == nil
2393	}
2394
2395	that1, ok := that.(*AllTypesOneOf_Field15)
2396	if !ok {
2397		that2, ok := that.(AllTypesOneOf_Field15)
2398		if ok {
2399			that1 = &that2
2400		} else {
2401			return false
2402		}
2403	}
2404	if that1 == nil {
2405		return this == nil
2406	} else if this == nil {
2407		return false
2408	}
2409	if !bytes.Equal(this.Field15, that1.Field15) {
2410		return false
2411	}
2412	return true
2413}
2414func (this *AllTypesOneOf_SubMessage) Equal(that interface{}) bool {
2415	if that == nil {
2416		return this == nil
2417	}
2418
2419	that1, ok := that.(*AllTypesOneOf_SubMessage)
2420	if !ok {
2421		that2, ok := that.(AllTypesOneOf_SubMessage)
2422		if ok {
2423			that1 = &that2
2424		} else {
2425			return false
2426		}
2427	}
2428	if that1 == nil {
2429		return this == nil
2430	} else if this == nil {
2431		return false
2432	}
2433	if !this.SubMessage.Equal(that1.SubMessage) {
2434		return false
2435	}
2436	return true
2437}
2438func (this *TwoOneofs) VerboseEqual(that interface{}) error {
2439	if that == nil {
2440		if this == nil {
2441			return nil
2442		}
2443		return fmt.Errorf("that == nil && this != nil")
2444	}
2445
2446	that1, ok := that.(*TwoOneofs)
2447	if !ok {
2448		that2, ok := that.(TwoOneofs)
2449		if ok {
2450			that1 = &that2
2451		} else {
2452			return fmt.Errorf("that is not of type *TwoOneofs")
2453		}
2454	}
2455	if that1 == nil {
2456		if this == nil {
2457			return nil
2458		}
2459		return fmt.Errorf("that is type *TwoOneofs but is nil && this != nil")
2460	} else if this == nil {
2461		return fmt.Errorf("that is type *TwoOneofs but is not nil && this == nil")
2462	}
2463	if that1.One == nil {
2464		if this.One != nil {
2465			return fmt.Errorf("this.One != nil && that1.One == nil")
2466		}
2467	} else if this.One == nil {
2468		return fmt.Errorf("this.One == nil && that1.One != nil")
2469	} else if err := this.One.VerboseEqual(that1.One); err != nil {
2470		return err
2471	}
2472	if that1.Two == nil {
2473		if this.Two != nil {
2474			return fmt.Errorf("this.Two != nil && that1.Two == nil")
2475		}
2476	} else if this.Two == nil {
2477		return fmt.Errorf("this.Two == nil && that1.Two != nil")
2478	} else if err := this.Two.VerboseEqual(that1.Two); err != nil {
2479		return err
2480	}
2481	if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
2482		return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
2483	}
2484	return nil
2485}
2486func (this *TwoOneofs_Field1) VerboseEqual(that interface{}) error {
2487	if that == nil {
2488		if this == nil {
2489			return nil
2490		}
2491		return fmt.Errorf("that == nil && this != nil")
2492	}
2493
2494	that1, ok := that.(*TwoOneofs_Field1)
2495	if !ok {
2496		that2, ok := that.(TwoOneofs_Field1)
2497		if ok {
2498			that1 = &that2
2499		} else {
2500			return fmt.Errorf("that is not of type *TwoOneofs_Field1")
2501		}
2502	}
2503	if that1 == nil {
2504		if this == nil {
2505			return nil
2506		}
2507		return fmt.Errorf("that is type *TwoOneofs_Field1 but is nil && this != nil")
2508	} else if this == nil {
2509		return fmt.Errorf("that is type *TwoOneofs_Field1 but is not nil && this == nil")
2510	}
2511	if this.Field1 != that1.Field1 {
2512		return fmt.Errorf("Field1 this(%v) Not Equal that(%v)", this.Field1, that1.Field1)
2513	}
2514	return nil
2515}
2516func (this *TwoOneofs_Field2) VerboseEqual(that interface{}) error {
2517	if that == nil {
2518		if this == nil {
2519			return nil
2520		}
2521		return fmt.Errorf("that == nil && this != nil")
2522	}
2523
2524	that1, ok := that.(*TwoOneofs_Field2)
2525	if !ok {
2526		that2, ok := that.(TwoOneofs_Field2)
2527		if ok {
2528			that1 = &that2
2529		} else {
2530			return fmt.Errorf("that is not of type *TwoOneofs_Field2")
2531		}
2532	}
2533	if that1 == nil {
2534		if this == nil {
2535			return nil
2536		}
2537		return fmt.Errorf("that is type *TwoOneofs_Field2 but is nil && this != nil")
2538	} else if this == nil {
2539		return fmt.Errorf("that is type *TwoOneofs_Field2 but is not nil && this == nil")
2540	}
2541	if this.Field2 != that1.Field2 {
2542		return fmt.Errorf("Field2 this(%v) Not Equal that(%v)", this.Field2, that1.Field2)
2543	}
2544	return nil
2545}
2546func (this *TwoOneofs_Field3) VerboseEqual(that interface{}) error {
2547	if that == nil {
2548		if this == nil {
2549			return nil
2550		}
2551		return fmt.Errorf("that == nil && this != nil")
2552	}
2553
2554	that1, ok := that.(*TwoOneofs_Field3)
2555	if !ok {
2556		that2, ok := that.(TwoOneofs_Field3)
2557		if ok {
2558			that1 = &that2
2559		} else {
2560			return fmt.Errorf("that is not of type *TwoOneofs_Field3")
2561		}
2562	}
2563	if that1 == nil {
2564		if this == nil {
2565			return nil
2566		}
2567		return fmt.Errorf("that is type *TwoOneofs_Field3 but is nil && this != nil")
2568	} else if this == nil {
2569		return fmt.Errorf("that is type *TwoOneofs_Field3 but is not nil && this == nil")
2570	}
2571	if this.Field3 != that1.Field3 {
2572		return fmt.Errorf("Field3 this(%v) Not Equal that(%v)", this.Field3, that1.Field3)
2573	}
2574	return nil
2575}
2576func (this *TwoOneofs_Field34) VerboseEqual(that interface{}) error {
2577	if that == nil {
2578		if this == nil {
2579			return nil
2580		}
2581		return fmt.Errorf("that == nil && this != nil")
2582	}
2583
2584	that1, ok := that.(*TwoOneofs_Field34)
2585	if !ok {
2586		that2, ok := that.(TwoOneofs_Field34)
2587		if ok {
2588			that1 = &that2
2589		} else {
2590			return fmt.Errorf("that is not of type *TwoOneofs_Field34")
2591		}
2592	}
2593	if that1 == nil {
2594		if this == nil {
2595			return nil
2596		}
2597		return fmt.Errorf("that is type *TwoOneofs_Field34 but is nil && this != nil")
2598	} else if this == nil {
2599		return fmt.Errorf("that is type *TwoOneofs_Field34 but is not nil && this == nil")
2600	}
2601	if this.Field34 != that1.Field34 {
2602		return fmt.Errorf("Field34 this(%v) Not Equal that(%v)", this.Field34, that1.Field34)
2603	}
2604	return nil
2605}
2606func (this *TwoOneofs_Field35) VerboseEqual(that interface{}) error {
2607	if that == nil {
2608		if this == nil {
2609			return nil
2610		}
2611		return fmt.Errorf("that == nil && this != nil")
2612	}
2613
2614	that1, ok := that.(*TwoOneofs_Field35)
2615	if !ok {
2616		that2, ok := that.(TwoOneofs_Field35)
2617		if ok {
2618			that1 = &that2
2619		} else {
2620			return fmt.Errorf("that is not of type *TwoOneofs_Field35")
2621		}
2622	}
2623	if that1 == nil {
2624		if this == nil {
2625			return nil
2626		}
2627		return fmt.Errorf("that is type *TwoOneofs_Field35 but is nil && this != nil")
2628	} else if this == nil {
2629		return fmt.Errorf("that is type *TwoOneofs_Field35 but is not nil && this == nil")
2630	}
2631	if !bytes.Equal(this.Field35, that1.Field35) {
2632		return fmt.Errorf("Field35 this(%v) Not Equal that(%v)", this.Field35, that1.Field35)
2633	}
2634	return nil
2635}
2636func (this *TwoOneofs_SubMessage2) VerboseEqual(that interface{}) error {
2637	if that == nil {
2638		if this == nil {
2639			return nil
2640		}
2641		return fmt.Errorf("that == nil && this != nil")
2642	}
2643
2644	that1, ok := that.(*TwoOneofs_SubMessage2)
2645	if !ok {
2646		that2, ok := that.(TwoOneofs_SubMessage2)
2647		if ok {
2648			that1 = &that2
2649		} else {
2650			return fmt.Errorf("that is not of type *TwoOneofs_SubMessage2")
2651		}
2652	}
2653	if that1 == nil {
2654		if this == nil {
2655			return nil
2656		}
2657		return fmt.Errorf("that is type *TwoOneofs_SubMessage2 but is nil && this != nil")
2658	} else if this == nil {
2659		return fmt.Errorf("that is type *TwoOneofs_SubMessage2 but is not nil && this == nil")
2660	}
2661	if !this.SubMessage2.Equal(that1.SubMessage2) {
2662		return fmt.Errorf("SubMessage2 this(%v) Not Equal that(%v)", this.SubMessage2, that1.SubMessage2)
2663	}
2664	return nil
2665}
2666func (this *TwoOneofs) Equal(that interface{}) bool {
2667	if that == nil {
2668		return this == nil
2669	}
2670
2671	that1, ok := that.(*TwoOneofs)
2672	if !ok {
2673		that2, ok := that.(TwoOneofs)
2674		if ok {
2675			that1 = &that2
2676		} else {
2677			return false
2678		}
2679	}
2680	if that1 == nil {
2681		return this == nil
2682	} else if this == nil {
2683		return false
2684	}
2685	if that1.One == nil {
2686		if this.One != nil {
2687			return false
2688		}
2689	} else if this.One == nil {
2690		return false
2691	} else if !this.One.Equal(that1.One) {
2692		return false
2693	}
2694	if that1.Two == nil {
2695		if this.Two != nil {
2696			return false
2697		}
2698	} else if this.Two == nil {
2699		return false
2700	} else if !this.Two.Equal(that1.Two) {
2701		return false
2702	}
2703	if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
2704		return false
2705	}
2706	return true
2707}
2708func (this *TwoOneofs_Field1) Equal(that interface{}) bool {
2709	if that == nil {
2710		return this == nil
2711	}
2712
2713	that1, ok := that.(*TwoOneofs_Field1)
2714	if !ok {
2715		that2, ok := that.(TwoOneofs_Field1)
2716		if ok {
2717			that1 = &that2
2718		} else {
2719			return false
2720		}
2721	}
2722	if that1 == nil {
2723		return this == nil
2724	} else if this == nil {
2725		return false
2726	}
2727	if this.Field1 != that1.Field1 {
2728		return false
2729	}
2730	return true
2731}
2732func (this *TwoOneofs_Field2) Equal(that interface{}) bool {
2733	if that == nil {
2734		return this == nil
2735	}
2736
2737	that1, ok := that.(*TwoOneofs_Field2)
2738	if !ok {
2739		that2, ok := that.(TwoOneofs_Field2)
2740		if ok {
2741			that1 = &that2
2742		} else {
2743			return false
2744		}
2745	}
2746	if that1 == nil {
2747		return this == nil
2748	} else if this == nil {
2749		return false
2750	}
2751	if this.Field2 != that1.Field2 {
2752		return false
2753	}
2754	return true
2755}
2756func (this *TwoOneofs_Field3) Equal(that interface{}) bool {
2757	if that == nil {
2758		return this == nil
2759	}
2760
2761	that1, ok := that.(*TwoOneofs_Field3)
2762	if !ok {
2763		that2, ok := that.(TwoOneofs_Field3)
2764		if ok {
2765			that1 = &that2
2766		} else {
2767			return false
2768		}
2769	}
2770	if that1 == nil {
2771		return this == nil
2772	} else if this == nil {
2773		return false
2774	}
2775	if this.Field3 != that1.Field3 {
2776		return false
2777	}
2778	return true
2779}
2780func (this *TwoOneofs_Field34) Equal(that interface{}) bool {
2781	if that == nil {
2782		return this == nil
2783	}
2784
2785	that1, ok := that.(*TwoOneofs_Field34)
2786	if !ok {
2787		that2, ok := that.(TwoOneofs_Field34)
2788		if ok {
2789			that1 = &that2
2790		} else {
2791			return false
2792		}
2793	}
2794	if that1 == nil {
2795		return this == nil
2796	} else if this == nil {
2797		return false
2798	}
2799	if this.Field34 != that1.Field34 {
2800		return false
2801	}
2802	return true
2803}
2804func (this *TwoOneofs_Field35) Equal(that interface{}) bool {
2805	if that == nil {
2806		return this == nil
2807	}
2808
2809	that1, ok := that.(*TwoOneofs_Field35)
2810	if !ok {
2811		that2, ok := that.(TwoOneofs_Field35)
2812		if ok {
2813			that1 = &that2
2814		} else {
2815			return false
2816		}
2817	}
2818	if that1 == nil {
2819		return this == nil
2820	} else if this == nil {
2821		return false
2822	}
2823	if !bytes.Equal(this.Field35, that1.Field35) {
2824		return false
2825	}
2826	return true
2827}
2828func (this *TwoOneofs_SubMessage2) Equal(that interface{}) bool {
2829	if that == nil {
2830		return this == nil
2831	}
2832
2833	that1, ok := that.(*TwoOneofs_SubMessage2)
2834	if !ok {
2835		that2, ok := that.(TwoOneofs_SubMessage2)
2836		if ok {
2837			that1 = &that2
2838		} else {
2839			return false
2840		}
2841	}
2842	if that1 == nil {
2843		return this == nil
2844	} else if this == nil {
2845		return false
2846	}
2847	if !this.SubMessage2.Equal(that1.SubMessage2) {
2848		return false
2849	}
2850	return true
2851}
2852func (this *CustomOneof) VerboseEqual(that interface{}) error {
2853	if that == nil {
2854		if this == nil {
2855			return nil
2856		}
2857		return fmt.Errorf("that == nil && this != nil")
2858	}
2859
2860	that1, ok := that.(*CustomOneof)
2861	if !ok {
2862		that2, ok := that.(CustomOneof)
2863		if ok {
2864			that1 = &that2
2865		} else {
2866			return fmt.Errorf("that is not of type *CustomOneof")
2867		}
2868	}
2869	if that1 == nil {
2870		if this == nil {
2871			return nil
2872		}
2873		return fmt.Errorf("that is type *CustomOneof but is nil && this != nil")
2874	} else if this == nil {
2875		return fmt.Errorf("that is type *CustomOneof but is not nil && this == nil")
2876	}
2877	if that1.Custom == nil {
2878		if this.Custom != nil {
2879			return fmt.Errorf("this.Custom != nil && that1.Custom == nil")
2880		}
2881	} else if this.Custom == nil {
2882		return fmt.Errorf("this.Custom == nil && that1.Custom != nil")
2883	} else if err := this.Custom.VerboseEqual(that1.Custom); err != nil {
2884		return err
2885	}
2886	if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
2887		return fmt.Errorf("XXX_unrecognized this(%v) Not Equal that(%v)", this.XXX_unrecognized, that1.XXX_unrecognized)
2888	}
2889	return nil
2890}
2891func (this *CustomOneof_Stringy) VerboseEqual(that interface{}) error {
2892	if that == nil {
2893		if this == nil {
2894			return nil
2895		}
2896		return fmt.Errorf("that == nil && this != nil")
2897	}
2898
2899	that1, ok := that.(*CustomOneof_Stringy)
2900	if !ok {
2901		that2, ok := that.(CustomOneof_Stringy)
2902		if ok {
2903			that1 = &that2
2904		} else {
2905			return fmt.Errorf("that is not of type *CustomOneof_Stringy")
2906		}
2907	}
2908	if that1 == nil {
2909		if this == nil {
2910			return nil
2911		}
2912		return fmt.Errorf("that is type *CustomOneof_Stringy but is nil && this != nil")
2913	} else if this == nil {
2914		return fmt.Errorf("that is type *CustomOneof_Stringy but is not nil && this == nil")
2915	}
2916	if this.Stringy != that1.Stringy {
2917		return fmt.Errorf("Stringy this(%v) Not Equal that(%v)", this.Stringy, that1.Stringy)
2918	}
2919	return nil
2920}
2921func (this *CustomOneof_CustomType) VerboseEqual(that interface{}) error {
2922	if that == nil {
2923		if this == nil {
2924			return nil
2925		}
2926		return fmt.Errorf("that == nil && this != nil")
2927	}
2928
2929	that1, ok := that.(*CustomOneof_CustomType)
2930	if !ok {
2931		that2, ok := that.(CustomOneof_CustomType)
2932		if ok {
2933			that1 = &that2
2934		} else {
2935			return fmt.Errorf("that is not of type *CustomOneof_CustomType")
2936		}
2937	}
2938	if that1 == nil {
2939		if this == nil {
2940			return nil
2941		}
2942		return fmt.Errorf("that is type *CustomOneof_CustomType but is nil && this != nil")
2943	} else if this == nil {
2944		return fmt.Errorf("that is type *CustomOneof_CustomType but is not nil && this == nil")
2945	}
2946	if !this.CustomType.Equal(that1.CustomType) {
2947		return fmt.Errorf("CustomType this(%v) Not Equal that(%v)", this.CustomType, that1.CustomType)
2948	}
2949	return nil
2950}
2951func (this *CustomOneof_CastType) VerboseEqual(that interface{}) error {
2952	if that == nil {
2953		if this == nil {
2954			return nil
2955		}
2956		return fmt.Errorf("that == nil && this != nil")
2957	}
2958
2959	that1, ok := that.(*CustomOneof_CastType)
2960	if !ok {
2961		that2, ok := that.(CustomOneof_CastType)
2962		if ok {
2963			that1 = &that2
2964		} else {
2965			return fmt.Errorf("that is not of type *CustomOneof_CastType")
2966		}
2967	}
2968	if that1 == nil {
2969		if this == nil {
2970			return nil
2971		}
2972		return fmt.Errorf("that is type *CustomOneof_CastType but is nil && this != nil")
2973	} else if this == nil {
2974		return fmt.Errorf("that is type *CustomOneof_CastType but is not nil && this == nil")
2975	}
2976	if this.CastType != that1.CastType {
2977		return fmt.Errorf("CastType this(%v) Not Equal that(%v)", this.CastType, that1.CastType)
2978	}
2979	return nil
2980}
2981func (this *CustomOneof_MyCustomName) VerboseEqual(that interface{}) error {
2982	if that == nil {
2983		if this == nil {
2984			return nil
2985		}
2986		return fmt.Errorf("that == nil && this != nil")
2987	}
2988
2989	that1, ok := that.(*CustomOneof_MyCustomName)
2990	if !ok {
2991		that2, ok := that.(CustomOneof_MyCustomName)
2992		if ok {
2993			that1 = &that2
2994		} else {
2995			return fmt.Errorf("that is not of type *CustomOneof_MyCustomName")
2996		}
2997	}
2998	if that1 == nil {
2999		if this == nil {
3000			return nil
3001		}
3002		return fmt.Errorf("that is type *CustomOneof_MyCustomName but is nil && this != nil")
3003	} else if this == nil {
3004		return fmt.Errorf("that is type *CustomOneof_MyCustomName but is not nil && this == nil")
3005	}
3006	if this.MyCustomName != that1.MyCustomName {
3007		return fmt.Errorf("MyCustomName this(%v) Not Equal that(%v)", this.MyCustomName, that1.MyCustomName)
3008	}
3009	return nil
3010}
3011func (this *CustomOneof) Equal(that interface{}) bool {
3012	if that == nil {
3013		return this == nil
3014	}
3015
3016	that1, ok := that.(*CustomOneof)
3017	if !ok {
3018		that2, ok := that.(CustomOneof)
3019		if ok {
3020			that1 = &that2
3021		} else {
3022			return false
3023		}
3024	}
3025	if that1 == nil {
3026		return this == nil
3027	} else if this == nil {
3028		return false
3029	}
3030	if that1.Custom == nil {
3031		if this.Custom != nil {
3032			return false
3033		}
3034	} else if this.Custom == nil {
3035		return false
3036	} else if !this.Custom.Equal(that1.Custom) {
3037		return false
3038	}
3039	if !bytes.Equal(this.XXX_unrecognized, that1.XXX_unrecognized) {
3040		return false
3041	}
3042	return true
3043}
3044func (this *CustomOneof_Stringy) Equal(that interface{}) bool {
3045	if that == nil {
3046		return this == nil
3047	}
3048
3049	that1, ok := that.(*CustomOneof_Stringy)
3050	if !ok {
3051		that2, ok := that.(CustomOneof_Stringy)
3052		if ok {
3053			that1 = &that2
3054		} else {
3055			return false
3056		}
3057	}
3058	if that1 == nil {
3059		return this == nil
3060	} else if this == nil {
3061		return false
3062	}
3063	if this.Stringy != that1.Stringy {
3064		return false
3065	}
3066	return true
3067}
3068func (this *CustomOneof_CustomType) Equal(that interface{}) bool {
3069	if that == nil {
3070		return this == nil
3071	}
3072
3073	that1, ok := that.(*CustomOneof_CustomType)
3074	if !ok {
3075		that2, ok := that.(CustomOneof_CustomType)
3076		if ok {
3077			that1 = &that2
3078		} else {
3079			return false
3080		}
3081	}
3082	if that1 == nil {
3083		return this == nil
3084	} else if this == nil {
3085		return false
3086	}
3087	if !this.CustomType.Equal(that1.CustomType) {
3088		return false
3089	}
3090	return true
3091}
3092func (this *CustomOneof_CastType) Equal(that interface{}) bool {
3093	if that == nil {
3094		return this == nil
3095	}
3096
3097	that1, ok := that.(*CustomOneof_CastType)
3098	if !ok {
3099		that2, ok := that.(CustomOneof_CastType)
3100		if ok {
3101			that1 = &that2
3102		} else {
3103			return false
3104		}
3105	}
3106	if that1 == nil {
3107		return this == nil
3108	} else if this == nil {
3109		return false
3110	}
3111	if this.CastType != that1.CastType {
3112		return false
3113	}
3114	return true
3115}
3116func (this *CustomOneof_MyCustomName) Equal(that interface{}) bool {
3117	if that == nil {
3118		return this == nil
3119	}
3120
3121	that1, ok := that.(*CustomOneof_MyCustomName)
3122	if !ok {
3123		that2, ok := that.(CustomOneof_MyCustomName)
3124		if ok {
3125			that1 = &that2
3126		} else {
3127			return false
3128		}
3129	}
3130	if that1 == nil {
3131		return this == nil
3132	} else if this == nil {
3133		return false
3134	}
3135	if this.MyCustomName != that1.MyCustomName {
3136		return false
3137	}
3138	return true
3139}
3140func (this *Subby) GoString() string {
3141	if this == nil {
3142		return "nil"
3143	}
3144	s := make([]string, 0, 5)
3145	s = append(s, "&one.Subby{")
3146	if this.Sub != nil {
3147		s = append(s, "Sub: "+valueToGoStringOne(this.Sub, "string")+",\n")
3148	}
3149	if this.XXX_unrecognized != nil {
3150		s = append(s, "XXX_unrecognized:"+fmt.Sprintf("%#v", this.XXX_unrecognized)+",\n")
3151	}
3152	s = append(s, "}")
3153	return strings.Join(s, "")
3154}
3155func (this *AllTypesOneOf) GoString() string {
3156	if this == nil {
3157		return "nil"
3158	}
3159	s := make([]string, 0, 20)
3160	s = append(s, "&one.AllTypesOneOf{")
3161	if this.TestOneof != nil {
3162		s = append(s, "TestOneof: "+fmt.Sprintf("%#v", this.TestOneof)+",\n")
3163	}
3164	if this.XXX_unrecognized != nil {
3165		s = append(s, "XXX_unrecognized:"+fmt.Sprintf("%#v", this.XXX_unrecognized)+",\n")
3166	}
3167	s = append(s, "}")
3168	return strings.Join(s, "")
3169}
3170func (this *AllTypesOneOf_Field1) GoString() string {
3171	if this == nil {
3172		return "nil"
3173	}
3174	s := strings.Join([]string{`&one.AllTypesOneOf_Field1{` +
3175		`Field1:` + fmt.Sprintf("%#v", this.Field1) + `}`}, ", ")
3176	return s
3177}
3178func (this *AllTypesOneOf_Field2) GoString() string {
3179	if this == nil {
3180		return "nil"
3181	}
3182	s := strings.Join([]string{`&one.AllTypesOneOf_Field2{` +
3183		`Field2:` + fmt.Sprintf("%#v", this.Field2) + `}`}, ", ")
3184	return s
3185}
3186func (this *AllTypesOneOf_Field3) GoString() string {
3187	if this == nil {
3188		return "nil"
3189	}
3190	s := strings.Join([]string{`&one.AllTypesOneOf_Field3{` +
3191		`Field3:` + fmt.Sprintf("%#v", this.Field3) + `}`}, ", ")
3192	return s
3193}
3194func (this *AllTypesOneOf_Field4) GoString() string {
3195	if this == nil {
3196		return "nil"
3197	}
3198	s := strings.Join([]string{`&one.AllTypesOneOf_Field4{` +
3199		`Field4:` + fmt.Sprintf("%#v", this.Field4) + `}`}, ", ")
3200	return s
3201}
3202func (this *AllTypesOneOf_Field5) GoString() string {
3203	if this == nil {
3204		return "nil"
3205	}
3206	s := strings.Join([]string{`&one.AllTypesOneOf_Field5{` +
3207		`Field5:` + fmt.Sprintf("%#v", this.Field5) + `}`}, ", ")
3208	return s
3209}
3210func (this *AllTypesOneOf_Field6) GoString() string {
3211	if this == nil {
3212		return "nil"
3213	}
3214	s := strings.Join([]string{`&one.AllTypesOneOf_Field6{` +
3215		`Field6:` + fmt.Sprintf("%#v", this.Field6) + `}`}, ", ")
3216	return s
3217}
3218func (this *AllTypesOneOf_Field7) GoString() string {
3219	if this == nil {
3220		return "nil"
3221	}
3222	s := strings.Join([]string{`&one.AllTypesOneOf_Field7{` +
3223		`Field7:` + fmt.Sprintf("%#v", this.Field7) + `}`}, ", ")
3224	return s
3225}
3226func (this *AllTypesOneOf_Field8) GoString() string {
3227	if this == nil {
3228		return "nil"
3229	}
3230	s := strings.Join([]string{`&one.AllTypesOneOf_Field8{` +
3231		`Field8:` + fmt.Sprintf("%#v", this.Field8) + `}`}, ", ")
3232	return s
3233}
3234func (this *AllTypesOneOf_Field9) GoString() string {
3235	if this == nil {
3236		return "nil"
3237	}
3238	s := strings.Join([]string{`&one.AllTypesOneOf_Field9{` +
3239		`Field9:` + fmt.Sprintf("%#v", this.Field9) + `}`}, ", ")
3240	return s
3241}
3242func (this *AllTypesOneOf_Field10) GoString() string {
3243	if this == nil {
3244		return "nil"
3245	}
3246	s := strings.Join([]string{`&one.AllTypesOneOf_Field10{` +
3247		`Field10:` + fmt.Sprintf("%#v", this.Field10) + `}`}, ", ")
3248	return s
3249}
3250func (this *AllTypesOneOf_Field11) GoString() string {
3251	if this == nil {
3252		return "nil"
3253	}
3254	s := strings.Join([]string{`&one.AllTypesOneOf_Field11{` +
3255		`Field11:` + fmt.Sprintf("%#v", this.Field11) + `}`}, ", ")
3256	return s
3257}
3258func (this *AllTypesOneOf_Field12) GoString() string {
3259	if this == nil {
3260		return "nil"
3261	}
3262	s := strings.Join([]string{`&one.AllTypesOneOf_Field12{` +
3263		`Field12:` + fmt.Sprintf("%#v", this.Field12) + `}`}, ", ")
3264	return s
3265}
3266func (this *AllTypesOneOf_Field13) GoString() string {
3267	if this == nil {
3268		return "nil"
3269	}
3270	s := strings.Join([]string{`&one.AllTypesOneOf_Field13{` +
3271		`Field13:` + fmt.Sprintf("%#v", this.Field13) + `}`}, ", ")
3272	return s
3273}
3274func (this *AllTypesOneOf_Field14) GoString() string {
3275	if this == nil {
3276		return "nil"
3277	}
3278	s := strings.Join([]string{`&one.AllTypesOneOf_Field14{` +
3279		`Field14:` + fmt.Sprintf("%#v", this.Field14) + `}`}, ", ")
3280	return s
3281}
3282func (this *AllTypesOneOf_Field15) GoString() string {
3283	if this == nil {
3284		return "nil"
3285	}
3286	s := strings.Join([]string{`&one.AllTypesOneOf_Field15{` +
3287		`Field15:` + fmt.Sprintf("%#v", this.Field15) + `}`}, ", ")
3288	return s
3289}
3290func (this *AllTypesOneOf_SubMessage) GoString() string {
3291	if this == nil {
3292		return "nil"
3293	}
3294	s := strings.Join([]string{`&one.AllTypesOneOf_SubMessage{` +
3295		`SubMessage:` + fmt.Sprintf("%#v", this.SubMessage) + `}`}, ", ")
3296	return s
3297}
3298func (this *TwoOneofs) GoString() string {
3299	if this == nil {
3300		return "nil"
3301	}
3302	s := make([]string, 0, 10)
3303	s = append(s, "&one.TwoOneofs{")
3304	if this.One != nil {
3305		s = append(s, "One: "+fmt.Sprintf("%#v", this.One)+",\n")
3306	}
3307	if this.Two != nil {
3308		s = append(s, "Two: "+fmt.Sprintf("%#v", this.Two)+",\n")
3309	}
3310	if this.XXX_unrecognized != nil {
3311		s = append(s, "XXX_unrecognized:"+fmt.Sprintf("%#v", this.XXX_unrecognized)+",\n")
3312	}
3313	s = append(s, "}")
3314	return strings.Join(s, "")
3315}
3316func (this *TwoOneofs_Field1) GoString() string {
3317	if this == nil {
3318		return "nil"
3319	}
3320	s := strings.Join([]string{`&one.TwoOneofs_Field1{` +
3321		`Field1:` + fmt.Sprintf("%#v", this.Field1) + `}`}, ", ")
3322	return s
3323}
3324func (this *TwoOneofs_Field2) GoString() string {
3325	if this == nil {
3326		return "nil"
3327	}
3328	s := strings.Join([]string{`&one.TwoOneofs_Field2{` +
3329		`Field2:` + fmt.Sprintf("%#v", this.Field2) + `}`}, ", ")
3330	return s
3331}
3332func (this *TwoOneofs_Field3) GoString() string {
3333	if this == nil {
3334		return "nil"
3335	}
3336	s := strings.Join([]string{`&one.TwoOneofs_Field3{` +
3337		`Field3:` + fmt.Sprintf("%#v", this.Field3) + `}`}, ", ")
3338	return s
3339}
3340func (this *TwoOneofs_Field34) GoString() string {
3341	if this == nil {
3342		return "nil"
3343	}
3344	s := strings.Join([]string{`&one.TwoOneofs_Field34{` +
3345		`Field34:` + fmt.Sprintf("%#v", this.Field34) + `}`}, ", ")
3346	return s
3347}
3348func (this *TwoOneofs_Field35) GoString() string {
3349	if this == nil {
3350		return "nil"
3351	}
3352	s := strings.Join([]string{`&one.TwoOneofs_Field35{` +
3353		`Field35:` + fmt.Sprintf("%#v", this.Field35) + `}`}, ", ")
3354	return s
3355}
3356func (this *TwoOneofs_SubMessage2) GoString() string {
3357	if this == nil {
3358		return "nil"
3359	}
3360	s := strings.Join([]string{`&one.TwoOneofs_SubMessage2{` +
3361		`SubMessage2:` + fmt.Sprintf("%#v", this.SubMessage2) + `}`}, ", ")
3362	return s
3363}
3364func (this *CustomOneof) GoString() string {
3365	if this == nil {
3366		return "nil"
3367	}
3368	s := make([]string, 0, 8)
3369	s = append(s, "&one.CustomOneof{")
3370	if this.Custom != nil {
3371		s = append(s, "Custom: "+fmt.Sprintf("%#v", this.Custom)+",\n")
3372	}
3373	if this.XXX_unrecognized != nil {
3374		s = append(s, "XXX_unrecognized:"+fmt.Sprintf("%#v", this.XXX_unrecognized)+",\n")
3375	}
3376	s = append(s, "}")
3377	return strings.Join(s, "")
3378}
3379func (this *CustomOneof_Stringy) GoString() string {
3380	if this == nil {
3381		return "nil"
3382	}
3383	s := strings.Join([]string{`&one.CustomOneof_Stringy{` +
3384		`Stringy:` + fmt.Sprintf("%#v", this.Stringy) + `}`}, ", ")
3385	return s
3386}
3387func (this *CustomOneof_CustomType) GoString() string {
3388	if this == nil {
3389		return "nil"
3390	}
3391	s := strings.Join([]string{`&one.CustomOneof_CustomType{` +
3392		`CustomType:` + fmt.Sprintf("%#v", this.CustomType) + `}`}, ", ")
3393	return s
3394}
3395func (this *CustomOneof_CastType) GoString() string {
3396	if this == nil {
3397		return "nil"
3398	}
3399	s := strings.Join([]string{`&one.CustomOneof_CastType{` +
3400		`CastType:` + fmt.Sprintf("%#v", this.CastType) + `}`}, ", ")
3401	return s
3402}
3403func (this *CustomOneof_MyCustomName) GoString() string {
3404	if this == nil {
3405		return "nil"
3406	}
3407	s := strings.Join([]string{`&one.CustomOneof_MyCustomName{` +
3408		`MyCustomName:` + fmt.Sprintf("%#v", this.MyCustomName) + `}`}, ", ")
3409	return s
3410}
3411func valueToGoStringOne(v interface{}, typ string) string {
3412	rv := reflect.ValueOf(v)
3413	if rv.IsNil() {
3414		return "nil"
3415	}
3416	pv := reflect.Indirect(rv).Interface()
3417	return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv)
3418}
3419func (m *Subby) Marshal() (dAtA []byte, err error) {
3420	size := m.Size()
3421	dAtA = make([]byte, size)
3422	n, err := m.MarshalTo(dAtA)
3423	if err != nil {
3424		return nil, err
3425	}
3426	return dAtA[:n], nil
3427}
3428
3429func (m *Subby) MarshalTo(dAtA []byte) (int, error) {
3430	var i int
3431	_ = i
3432	var l int
3433	_ = l
3434	if m.Sub != nil {
3435		dAtA[i] = 0xa
3436		i++
3437		i = encodeVarintOne(dAtA, i, uint64(len(*m.Sub)))
3438		i += copy(dAtA[i:], *m.Sub)
3439	}
3440	if m.XXX_unrecognized != nil {
3441		i += copy(dAtA[i:], m.XXX_unrecognized)
3442	}
3443	return i, nil
3444}
3445
3446func (m *AllTypesOneOf) Marshal() (dAtA []byte, err error) {
3447	size := m.Size()
3448	dAtA = make([]byte, size)
3449	n, err := m.MarshalTo(dAtA)
3450	if err != nil {
3451		return nil, err
3452	}
3453	return dAtA[:n], nil
3454}
3455
3456func (m *AllTypesOneOf) MarshalTo(dAtA []byte) (int, error) {
3457	var i int
3458	_ = i
3459	var l int
3460	_ = l
3461	if m.TestOneof != nil {
3462		nn1, err := m.TestOneof.MarshalTo(dAtA[i:])
3463		if err != nil {
3464			return 0, err
3465		}
3466		i += nn1
3467	}
3468	if m.XXX_unrecognized != nil {
3469		i += copy(dAtA[i:], m.XXX_unrecognized)
3470	}
3471	return i, nil
3472}
3473
3474func (m *AllTypesOneOf_Field1) MarshalTo(dAtA []byte) (int, error) {
3475	i := 0
3476	dAtA[i] = 0x9
3477	i++
3478	encoding_binary.LittleEndian.PutUint64(dAtA[i:], uint64(math.Float64bits(float64(m.Field1))))
3479	i += 8
3480	return i, nil
3481}
3482func (m *AllTypesOneOf_Field2) MarshalTo(dAtA []byte) (int, error) {
3483	i := 0
3484	dAtA[i] = 0x15
3485	i++
3486	encoding_binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.Field2))))
3487	i += 4
3488	return i, nil
3489}
3490func (m *AllTypesOneOf_Field3) MarshalTo(dAtA []byte) (int, error) {
3491	i := 0
3492	dAtA[i] = 0x18
3493	i++
3494	i = encodeVarintOne(dAtA, i, uint64(m.Field3))
3495	return i, nil
3496}
3497func (m *AllTypesOneOf_Field4) MarshalTo(dAtA []byte) (int, error) {
3498	i := 0
3499	dAtA[i] = 0x20
3500	i++
3501	i = encodeVarintOne(dAtA, i, uint64(m.Field4))
3502	return i, nil
3503}
3504func (m *AllTypesOneOf_Field5) MarshalTo(dAtA []byte) (int, error) {
3505	i := 0
3506	dAtA[i] = 0x28
3507	i++
3508	i = encodeVarintOne(dAtA, i, uint64(m.Field5))
3509	return i, nil
3510}
3511func (m *AllTypesOneOf_Field6) MarshalTo(dAtA []byte) (int, error) {
3512	i := 0
3513	dAtA[i] = 0x30
3514	i++
3515	i = encodeVarintOne(dAtA, i, uint64(m.Field6))
3516	return i, nil
3517}
3518func (m *AllTypesOneOf_Field7) MarshalTo(dAtA []byte) (int, error) {
3519	i := 0
3520	dAtA[i] = 0x38
3521	i++
3522	i = encodeVarintOne(dAtA, i, uint64((uint32(m.Field7)<<1)^uint32((m.Field7>>31))))
3523	return i, nil
3524}
3525func (m *AllTypesOneOf_Field8) MarshalTo(dAtA []byte) (int, error) {
3526	i := 0
3527	dAtA[i] = 0x40
3528	i++
3529	i = encodeVarintOne(dAtA, i, uint64((uint64(m.Field8)<<1)^uint64((m.Field8>>63))))
3530	return i, nil
3531}
3532func (m *AllTypesOneOf_Field9) MarshalTo(dAtA []byte) (int, error) {
3533	i := 0
3534	dAtA[i] = 0x4d
3535	i++
3536	encoding_binary.LittleEndian.PutUint32(dAtA[i:], uint32(m.Field9))
3537	i += 4
3538	return i, nil
3539}
3540func (m *AllTypesOneOf_Field10) MarshalTo(dAtA []byte) (int, error) {
3541	i := 0
3542	dAtA[i] = 0x55
3543	i++
3544	encoding_binary.LittleEndian.PutUint32(dAtA[i:], uint32(m.Field10))
3545	i += 4
3546	return i, nil
3547}
3548func (m *AllTypesOneOf_Field11) MarshalTo(dAtA []byte) (int, error) {
3549	i := 0
3550	dAtA[i] = 0x59
3551	i++
3552	encoding_binary.LittleEndian.PutUint64(dAtA[i:], uint64(m.Field11))
3553	i += 8
3554	return i, nil
3555}
3556func (m *AllTypesOneOf_Field12) MarshalTo(dAtA []byte) (int, error) {
3557	i := 0
3558	dAtA[i] = 0x61
3559	i++
3560	encoding_binary.LittleEndian.PutUint64(dAtA[i:], uint64(m.Field12))
3561	i += 8
3562	return i, nil
3563}
3564func (m *AllTypesOneOf_Field13) MarshalTo(dAtA []byte) (int, error) {
3565	i := 0
3566	dAtA[i] = 0x68
3567	i++
3568	if m.Field13 {
3569		dAtA[i] = 1
3570	} else {
3571		dAtA[i] = 0
3572	}
3573	i++
3574	return i, nil
3575}
3576func (m *AllTypesOneOf_Field14) MarshalTo(dAtA []byte) (int, error) {
3577	i := 0
3578	dAtA[i] = 0x72
3579	i++
3580	i = encodeVarintOne(dAtA, i, uint64(len(m.Field14)))
3581	i += copy(dAtA[i:], m.Field14)
3582	return i, nil
3583}
3584func (m *AllTypesOneOf_Field15) MarshalTo(dAtA []byte) (int, error) {
3585	i := 0
3586	if m.Field15 != nil {
3587		dAtA[i] = 0x7a
3588		i++
3589		i = encodeVarintOne(dAtA, i, uint64(len(m.Field15)))
3590		i += copy(dAtA[i:], m.Field15)
3591	}
3592	return i, nil
3593}
3594func (m *AllTypesOneOf_SubMessage) MarshalTo(dAtA []byte) (int, error) {
3595	i := 0
3596	if m.SubMessage != nil {
3597		dAtA[i] = 0x82
3598		i++
3599		dAtA[i] = 0x1
3600		i++
3601		i = encodeVarintOne(dAtA, i, uint64(m.SubMessage.Size()))
3602		n2, err := m.SubMessage.MarshalTo(dAtA[i:])
3603		if err != nil {
3604			return 0, err
3605		}
3606		i += n2
3607	}
3608	return i, nil
3609}
3610func (m *TwoOneofs) Marshal() (dAtA []byte, err error) {
3611	size := m.Size()
3612	dAtA = make([]byte, size)
3613	n, err := m.MarshalTo(dAtA)
3614	if err != nil {
3615		return nil, err
3616	}
3617	return dAtA[:n], nil
3618}
3619
3620func (m *TwoOneofs) MarshalTo(dAtA []byte) (int, error) {
3621	var i int
3622	_ = i
3623	var l int
3624	_ = l
3625	if m.One != nil {
3626		nn3, err := m.One.MarshalTo(dAtA[i:])
3627		if err != nil {
3628			return 0, err
3629		}
3630		i += nn3
3631	}
3632	if m.Two != nil {
3633		nn4, err := m.Two.MarshalTo(dAtA[i:])
3634		if err != nil {
3635			return 0, err
3636		}
3637		i += nn4
3638	}
3639	if m.XXX_unrecognized != nil {
3640		i += copy(dAtA[i:], m.XXX_unrecognized)
3641	}
3642	return i, nil
3643}
3644
3645func (m *TwoOneofs_Field1) MarshalTo(dAtA []byte) (int, error) {
3646	i := 0
3647	dAtA[i] = 0x9
3648	i++
3649	encoding_binary.LittleEndian.PutUint64(dAtA[i:], uint64(math.Float64bits(float64(m.Field1))))
3650	i += 8
3651	return i, nil
3652}
3653func (m *TwoOneofs_Field2) MarshalTo(dAtA []byte) (int, error) {
3654	i := 0
3655	dAtA[i] = 0x15
3656	i++
3657	encoding_binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.Field2))))
3658	i += 4
3659	return i, nil
3660}
3661func (m *TwoOneofs_Field3) MarshalTo(dAtA []byte) (int, error) {
3662	i := 0
3663	dAtA[i] = 0x18
3664	i++
3665	i = encodeVarintOne(dAtA, i, uint64(m.Field3))
3666	return i, nil
3667}
3668func (m *TwoOneofs_Field34) MarshalTo(dAtA []byte) (int, error) {
3669	i := 0
3670	dAtA[i] = 0x92
3671	i++
3672	dAtA[i] = 0x2
3673	i++
3674	i = encodeVarintOne(dAtA, i, uint64(len(m.Field34)))
3675	i += copy(dAtA[i:], m.Field34)
3676	return i, nil
3677}
3678func (m *TwoOneofs_Field35) MarshalTo(dAtA []byte) (int, error) {
3679	i := 0
3680	if m.Field35 != nil {
3681		dAtA[i] = 0x9a
3682		i++
3683		dAtA[i] = 0x2
3684		i++
3685		i = encodeVarintOne(dAtA, i, uint64(len(m.Field35)))
3686		i += copy(dAtA[i:], m.Field35)
3687	}
3688	return i, nil
3689}
3690func (m *TwoOneofs_SubMessage2) MarshalTo(dAtA []byte) (int, error) {
3691	i := 0
3692	if m.SubMessage2 != nil {
3693		dAtA[i] = 0xa2
3694		i++
3695		dAtA[i] = 0x2
3696		i++
3697		i = encodeVarintOne(dAtA, i, uint64(m.SubMessage2.Size()))
3698		n5, err := m.SubMessage2.MarshalTo(dAtA[i:])
3699		if err != nil {
3700			return 0, err
3701		}
3702		i += n5
3703	}
3704	return i, nil
3705}
3706func (m *CustomOneof) Marshal() (dAtA []byte, err error) {
3707	size := m.Size()
3708	dAtA = make([]byte, size)
3709	n, err := m.MarshalTo(dAtA)
3710	if err != nil {
3711		return nil, err
3712	}
3713	return dAtA[:n], nil
3714}
3715
3716func (m *CustomOneof) MarshalTo(dAtA []byte) (int, error) {
3717	var i int
3718	_ = i
3719	var l int
3720	_ = l
3721	if m.Custom != nil {
3722		nn6, err := m.Custom.MarshalTo(dAtA[i:])
3723		if err != nil {
3724			return 0, err
3725		}
3726		i += nn6
3727	}
3728	if m.XXX_unrecognized != nil {
3729		i += copy(dAtA[i:], m.XXX_unrecognized)
3730	}
3731	return i, nil
3732}
3733
3734func (m *CustomOneof_Stringy) MarshalTo(dAtA []byte) (int, error) {
3735	i := 0
3736	dAtA[i] = 0x92
3737	i++
3738	dAtA[i] = 0x2
3739	i++
3740	i = encodeVarintOne(dAtA, i, uint64(len(m.Stringy)))
3741	i += copy(dAtA[i:], m.Stringy)
3742	return i, nil
3743}
3744func (m *CustomOneof_CustomType) MarshalTo(dAtA []byte) (int, error) {
3745	i := 0
3746	dAtA[i] = 0x9a
3747	i++
3748	dAtA[i] = 0x2
3749	i++
3750	i = encodeVarintOne(dAtA, i, uint64(m.CustomType.Size()))
3751	n7, err := m.CustomType.MarshalTo(dAtA[i:])
3752	if err != nil {
3753		return 0, err
3754	}
3755	i += n7
3756	return i, nil
3757}
3758func (m *CustomOneof_CastType) MarshalTo(dAtA []byte) (int, error) {
3759	i := 0
3760	dAtA[i] = 0xa0
3761	i++
3762	dAtA[i] = 0x2
3763	i++
3764	i = encodeVarintOne(dAtA, i, uint64(m.CastType))
3765	return i, nil
3766}
3767func (m *CustomOneof_MyCustomName) MarshalTo(dAtA []byte) (int, error) {
3768	i := 0
3769	dAtA[i] = 0xa8
3770	i++
3771	dAtA[i] = 0x2
3772	i++
3773	i = encodeVarintOne(dAtA, i, uint64(m.MyCustomName))
3774	return i, nil
3775}
3776func encodeVarintOne(dAtA []byte, offset int, v uint64) int {
3777	for v >= 1<<7 {
3778		dAtA[offset] = uint8(v&0x7f | 0x80)
3779		v >>= 7
3780		offset++
3781	}
3782	dAtA[offset] = uint8(v)
3783	return offset + 1
3784}
3785func NewPopulatedSubby(r randyOne, easy bool) *Subby {
3786	this := &Subby{}
3787	if r.Intn(10) != 0 {
3788		v1 := string(randStringOne(r))
3789		this.Sub = &v1
3790	}
3791	if !easy && r.Intn(10) != 0 {
3792		this.XXX_unrecognized = randUnrecognizedOne(r, 2)
3793	}
3794	return this
3795}
3796
3797func NewPopulatedAllTypesOneOf(r randyOne, easy bool) *AllTypesOneOf {
3798	this := &AllTypesOneOf{}
3799	oneofNumber_TestOneof := []int32{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}[r.Intn(16)]
3800	switch oneofNumber_TestOneof {
3801	case 1:
3802		this.TestOneof = NewPopulatedAllTypesOneOf_Field1(r, easy)
3803	case 2:
3804		this.TestOneof = NewPopulatedAllTypesOneOf_Field2(r, easy)
3805	case 3:
3806		this.TestOneof = NewPopulatedAllTypesOneOf_Field3(r, easy)
3807	case 4:
3808		this.TestOneof = NewPopulatedAllTypesOneOf_Field4(r, easy)
3809	case 5:
3810		this.TestOneof = NewPopulatedAllTypesOneOf_Field5(r, easy)
3811	case 6:
3812		this.TestOneof = NewPopulatedAllTypesOneOf_Field6(r, easy)
3813	case 7:
3814		this.TestOneof = NewPopulatedAllTypesOneOf_Field7(r, easy)
3815	case 8:
3816		this.TestOneof = NewPopulatedAllTypesOneOf_Field8(r, easy)
3817	case 9:
3818		this.TestOneof = NewPopulatedAllTypesOneOf_Field9(r, easy)
3819	case 10:
3820		this.TestOneof = NewPopulatedAllTypesOneOf_Field10(r, easy)
3821	case 11:
3822		this.TestOneof = NewPopulatedAllTypesOneOf_Field11(r, easy)
3823	case 12:
3824		this.TestOneof = NewPopulatedAllTypesOneOf_Field12(r, easy)
3825	case 13:
3826		this.TestOneof = NewPopulatedAllTypesOneOf_Field13(r, easy)
3827	case 14:
3828		this.TestOneof = NewPopulatedAllTypesOneOf_Field14(r, easy)
3829	case 15:
3830		this.TestOneof = NewPopulatedAllTypesOneOf_Field15(r, easy)
3831	case 16:
3832		this.TestOneof = NewPopulatedAllTypesOneOf_SubMessage(r, easy)
3833	}
3834	if !easy && r.Intn(10) != 0 {
3835		this.XXX_unrecognized = randUnrecognizedOne(r, 17)
3836	}
3837	return this
3838}
3839
3840func NewPopulatedAllTypesOneOf_Field1(r randyOne, easy bool) *AllTypesOneOf_Field1 {
3841	this := &AllTypesOneOf_Field1{}
3842	this.Field1 = float64(r.Float64())
3843	if r.Intn(2) == 0 {
3844		this.Field1 *= -1
3845	}
3846	return this
3847}
3848func NewPopulatedAllTypesOneOf_Field2(r randyOne, easy bool) *AllTypesOneOf_Field2 {
3849	this := &AllTypesOneOf_Field2{}
3850	this.Field2 = float32(r.Float32())
3851	if r.Intn(2) == 0 {
3852		this.Field2 *= -1
3853	}
3854	return this
3855}
3856func NewPopulatedAllTypesOneOf_Field3(r randyOne, easy bool) *AllTypesOneOf_Field3 {
3857	this := &AllTypesOneOf_Field3{}
3858	this.Field3 = int32(r.Int31())
3859	if r.Intn(2) == 0 {
3860		this.Field3 *= -1
3861	}
3862	return this
3863}
3864func NewPopulatedAllTypesOneOf_Field4(r randyOne, easy bool) *AllTypesOneOf_Field4 {
3865	this := &AllTypesOneOf_Field4{}
3866	this.Field4 = int64(r.Int63())
3867	if r.Intn(2) == 0 {
3868		this.Field4 *= -1
3869	}
3870	return this
3871}
3872func NewPopulatedAllTypesOneOf_Field5(r randyOne, easy bool) *AllTypesOneOf_Field5 {
3873	this := &AllTypesOneOf_Field5{}
3874	this.Field5 = uint32(r.Uint32())
3875	return this
3876}
3877func NewPopulatedAllTypesOneOf_Field6(r randyOne, easy bool) *AllTypesOneOf_Field6 {
3878	this := &AllTypesOneOf_Field6{}
3879	this.Field6 = uint64(uint64(r.Uint32()))
3880	return this
3881}
3882func NewPopulatedAllTypesOneOf_Field7(r randyOne, easy bool) *AllTypesOneOf_Field7 {
3883	this := &AllTypesOneOf_Field7{}
3884	this.Field7 = int32(r.Int31())
3885	if r.Intn(2) == 0 {
3886		this.Field7 *= -1
3887	}
3888	return this
3889}
3890func NewPopulatedAllTypesOneOf_Field8(r randyOne, easy bool) *AllTypesOneOf_Field8 {
3891	this := &AllTypesOneOf_Field8{}
3892	this.Field8 = int64(r.Int63())
3893	if r.Intn(2) == 0 {
3894		this.Field8 *= -1
3895	}
3896	return this
3897}
3898func NewPopulatedAllTypesOneOf_Field9(r randyOne, easy bool) *AllTypesOneOf_Field9 {
3899	this := &AllTypesOneOf_Field9{}
3900	this.Field9 = uint32(r.Uint32())
3901	return this
3902}
3903func NewPopulatedAllTypesOneOf_Field10(r randyOne, easy bool) *AllTypesOneOf_Field10 {
3904	this := &AllTypesOneOf_Field10{}
3905	this.Field10 = int32(r.Int31())
3906	if r.Intn(2) == 0 {
3907		this.Field10 *= -1
3908	}
3909	return this
3910}
3911func NewPopulatedAllTypesOneOf_Field11(r randyOne, easy bool) *AllTypesOneOf_Field11 {
3912	this := &AllTypesOneOf_Field11{}
3913	this.Field11 = uint64(uint64(r.Uint32()))
3914	return this
3915}
3916func NewPopulatedAllTypesOneOf_Field12(r randyOne, easy bool) *AllTypesOneOf_Field12 {
3917	this := &AllTypesOneOf_Field12{}
3918	this.Field12 = int64(r.Int63())
3919	if r.Intn(2) == 0 {
3920		this.Field12 *= -1
3921	}
3922	return this
3923}
3924func NewPopulatedAllTypesOneOf_Field13(r randyOne, easy bool) *AllTypesOneOf_Field13 {
3925	this := &AllTypesOneOf_Field13{}
3926	this.Field13 = bool(bool(r.Intn(2) == 0))
3927	return this
3928}
3929func NewPopulatedAllTypesOneOf_Field14(r randyOne, easy bool) *AllTypesOneOf_Field14 {
3930	this := &AllTypesOneOf_Field14{}
3931	this.Field14 = string(randStringOne(r))
3932	return this
3933}
3934func NewPopulatedAllTypesOneOf_Field15(r randyOne, easy bool) *AllTypesOneOf_Field15 {
3935	this := &AllTypesOneOf_Field15{}
3936	v2 := r.Intn(100)
3937	this.Field15 = make([]byte, v2)
3938	for i := 0; i < v2; i++ {
3939		this.Field15[i] = byte(r.Intn(256))
3940	}
3941	return this
3942}
3943func NewPopulatedAllTypesOneOf_SubMessage(r randyOne, easy bool) *AllTypesOneOf_SubMessage {
3944	this := &AllTypesOneOf_SubMessage{}
3945	this.SubMessage = NewPopulatedSubby(r, easy)
3946	return this
3947}
3948func NewPopulatedTwoOneofs(r randyOne, easy bool) *TwoOneofs {
3949	this := &TwoOneofs{}
3950	oneofNumber_One := []int32{1, 2, 3}[r.Intn(3)]
3951	switch oneofNumber_One {
3952	case 1:
3953		this.One = NewPopulatedTwoOneofs_Field1(r, easy)
3954	case 2:
3955		this.One = NewPopulatedTwoOneofs_Field2(r, easy)
3956	case 3:
3957		this.One = NewPopulatedTwoOneofs_Field3(r, easy)
3958	}
3959	oneofNumber_Two := []int32{34, 35, 36}[r.Intn(3)]
3960	switch oneofNumber_Two {
3961	case 34:
3962		this.Two = NewPopulatedTwoOneofs_Field34(r, easy)
3963	case 35:
3964		this.Two = NewPopulatedTwoOneofs_Field35(r, easy)
3965	case 36:
3966		this.Two = NewPopulatedTwoOneofs_SubMessage2(r, easy)
3967	}
3968	if !easy && r.Intn(10) != 0 {
3969		this.XXX_unrecognized = randUnrecognizedOne(r, 37)
3970	}
3971	return this
3972}
3973
3974func NewPopulatedTwoOneofs_Field1(r randyOne, easy bool) *TwoOneofs_Field1 {
3975	this := &TwoOneofs_Field1{}
3976	this.Field1 = float64(r.Float64())
3977	if r.Intn(2) == 0 {
3978		this.Field1 *= -1
3979	}
3980	return this
3981}
3982func NewPopulatedTwoOneofs_Field2(r randyOne, easy bool) *TwoOneofs_Field2 {
3983	this := &TwoOneofs_Field2{}
3984	this.Field2 = float32(r.Float32())
3985	if r.Intn(2) == 0 {
3986		this.Field2 *= -1
3987	}
3988	return this
3989}
3990func NewPopulatedTwoOneofs_Field3(r randyOne, easy bool) *TwoOneofs_Field3 {
3991	this := &TwoOneofs_Field3{}
3992	this.Field3 = int32(r.Int31())
3993	if r.Intn(2) == 0 {
3994		this.Field3 *= -1
3995	}
3996	return this
3997}
3998func NewPopulatedTwoOneofs_Field34(r randyOne, easy bool) *TwoOneofs_Field34 {
3999	this := &TwoOneofs_Field34{}
4000	this.Field34 = string(randStringOne(r))
4001	return this
4002}
4003func NewPopulatedTwoOneofs_Field35(r randyOne, easy bool) *TwoOneofs_Field35 {
4004	this := &TwoOneofs_Field35{}
4005	v3 := r.Intn(100)
4006	this.Field35 = make([]byte, v3)
4007	for i := 0; i < v3; i++ {
4008		this.Field35[i] = byte(r.Intn(256))
4009	}
4010	return this
4011}
4012func NewPopulatedTwoOneofs_SubMessage2(r randyOne, easy bool) *TwoOneofs_SubMessage2 {
4013	this := &TwoOneofs_SubMessage2{}
4014	this.SubMessage2 = NewPopulatedSubby(r, easy)
4015	return this
4016}
4017func NewPopulatedCustomOneof(r randyOne, easy bool) *CustomOneof {
4018	this := &CustomOneof{}
4019	oneofNumber_Custom := []int32{34, 35, 36, 37}[r.Intn(4)]
4020	switch oneofNumber_Custom {
4021	case 34:
4022		this.Custom = NewPopulatedCustomOneof_Stringy(r, easy)
4023	case 35:
4024		this.Custom = NewPopulatedCustomOneof_CustomType(r, easy)
4025	case 36:
4026		this.Custom = NewPopulatedCustomOneof_CastType(r, easy)
4027	case 37:
4028		this.Custom = NewPopulatedCustomOneof_MyCustomName(r, easy)
4029	}
4030	if !easy && r.Intn(10) != 0 {
4031		this.XXX_unrecognized = randUnrecognizedOne(r, 38)
4032	}
4033	return this
4034}
4035
4036func NewPopulatedCustomOneof_Stringy(r randyOne, easy bool) *CustomOneof_Stringy {
4037	this := &CustomOneof_Stringy{}
4038	this.Stringy = string(randStringOne(r))
4039	return this
4040}
4041func NewPopulatedCustomOneof_CustomType(r randyOne, easy bool) *CustomOneof_CustomType {
4042	this := &CustomOneof_CustomType{}
4043	v4 := github_com_gogo_protobuf_test_custom.NewPopulatedUint128(r)
4044	this.CustomType = *v4
4045	return this
4046}
4047func NewPopulatedCustomOneof_CastType(r randyOne, easy bool) *CustomOneof_CastType {
4048	this := &CustomOneof_CastType{}
4049	this.CastType = github_com_gogo_protobuf_test_casttype.MyUint64Type(uint64(r.Uint32()))
4050	return this
4051}
4052func NewPopulatedCustomOneof_MyCustomName(r randyOne, easy bool) *CustomOneof_MyCustomName {
4053	this := &CustomOneof_MyCustomName{}
4054	this.MyCustomName = int64(r.Int63())
4055	if r.Intn(2) == 0 {
4056		this.MyCustomName *= -1
4057	}
4058	return this
4059}
4060
4061type randyOne interface {
4062	Float32() float32
4063	Float64() float64
4064	Int63() int64
4065	Int31() int32
4066	Uint32() uint32
4067	Intn(n int) int
4068}
4069
4070func randUTF8RuneOne(r randyOne) rune {
4071	ru := r.Intn(62)
4072	if ru < 10 {
4073		return rune(ru + 48)
4074	} else if ru < 36 {
4075		return rune(ru + 55)
4076	}
4077	return rune(ru + 61)
4078}
4079func randStringOne(r randyOne) string {
4080	v5 := r.Intn(100)
4081	tmps := make([]rune, v5)
4082	for i := 0; i < v5; i++ {
4083		tmps[i] = randUTF8RuneOne(r)
4084	}
4085	return string(tmps)
4086}
4087func randUnrecognizedOne(r randyOne, maxFieldNumber int) (dAtA []byte) {
4088	l := r.Intn(5)
4089	for i := 0; i < l; i++ {
4090		wire := r.Intn(4)
4091		if wire == 3 {
4092			wire = 5
4093		}
4094		fieldNumber := maxFieldNumber + r.Intn(100)
4095		dAtA = randFieldOne(dAtA, r, fieldNumber, wire)
4096	}
4097	return dAtA
4098}
4099func randFieldOne(dAtA []byte, r randyOne, fieldNumber int, wire int) []byte {
4100	key := uint32(fieldNumber)<<3 | uint32(wire)
4101	switch wire {
4102	case 0:
4103		dAtA = encodeVarintPopulateOne(dAtA, uint64(key))
4104		v6 := r.Int63()
4105		if r.Intn(2) == 0 {
4106			v6 *= -1
4107		}
4108		dAtA = encodeVarintPopulateOne(dAtA, uint64(v6))
4109	case 1:
4110		dAtA = encodeVarintPopulateOne(dAtA, uint64(key))
4111		dAtA = append(dAtA, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
4112	case 2:
4113		dAtA = encodeVarintPopulateOne(dAtA, uint64(key))
4114		ll := r.Intn(100)
4115		dAtA = encodeVarintPopulateOne(dAtA, uint64(ll))
4116		for j := 0; j < ll; j++ {
4117			dAtA = append(dAtA, byte(r.Intn(256)))
4118		}
4119	default:
4120		dAtA = encodeVarintPopulateOne(dAtA, uint64(key))
4121		dAtA = append(dAtA, byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)), byte(r.Intn(256)))
4122	}
4123	return dAtA
4124}
4125func encodeVarintPopulateOne(dAtA []byte, v uint64) []byte {
4126	for v >= 1<<7 {
4127		dAtA = append(dAtA, uint8(uint64(v)&0x7f|0x80))
4128		v >>= 7
4129	}
4130	dAtA = append(dAtA, uint8(v))
4131	return dAtA
4132}
4133func (m *Subby) Size() (n int) {
4134	if m == nil {
4135		return 0
4136	}
4137	var l int
4138	_ = l
4139	if m.Sub != nil {
4140		l = len(*m.Sub)
4141		n += 1 + l + sovOne(uint64(l))
4142	}
4143	if m.XXX_unrecognized != nil {
4144		n += len(m.XXX_unrecognized)
4145	}
4146	return n
4147}
4148
4149func (m *AllTypesOneOf) Size() (n int) {
4150	if m == nil {
4151		return 0
4152	}
4153	var l int
4154	_ = l
4155	if m.TestOneof != nil {
4156		n += m.TestOneof.Size()
4157	}
4158	if m.XXX_unrecognized != nil {
4159		n += len(m.XXX_unrecognized)
4160	}
4161	return n
4162}
4163
4164func (m *AllTypesOneOf_Field1) Size() (n int) {
4165	if m == nil {
4166		return 0
4167	}
4168	var l int
4169	_ = l
4170	n += 9
4171	return n
4172}
4173func (m *AllTypesOneOf_Field2) Size() (n int) {
4174	if m == nil {
4175		return 0
4176	}
4177	var l int
4178	_ = l
4179	n += 5
4180	return n
4181}
4182func (m *AllTypesOneOf_Field3) Size() (n int) {
4183	if m == nil {
4184		return 0
4185	}
4186	var l int
4187	_ = l
4188	n += 1 + sovOne(uint64(m.Field3))
4189	return n
4190}
4191func (m *AllTypesOneOf_Field4) Size() (n int) {
4192	if m == nil {
4193		return 0
4194	}
4195	var l int
4196	_ = l
4197	n += 1 + sovOne(uint64(m.Field4))
4198	return n
4199}
4200func (m *AllTypesOneOf_Field5) Size() (n int) {
4201	if m == nil {
4202		return 0
4203	}
4204	var l int
4205	_ = l
4206	n += 1 + sovOne(uint64(m.Field5))
4207	return n
4208}
4209func (m *AllTypesOneOf_Field6) Size() (n int) {
4210	if m == nil {
4211		return 0
4212	}
4213	var l int
4214	_ = l
4215	n += 1 + sovOne(uint64(m.Field6))
4216	return n
4217}
4218func (m *AllTypesOneOf_Field7) Size() (n int) {
4219	if m == nil {
4220		return 0
4221	}
4222	var l int
4223	_ = l
4224	n += 1 + sozOne(uint64(m.Field7))
4225	return n
4226}
4227func (m *AllTypesOneOf_Field8) Size() (n int) {
4228	if m == nil {
4229		return 0
4230	}
4231	var l int
4232	_ = l
4233	n += 1 + sozOne(uint64(m.Field8))
4234	return n
4235}
4236func (m *AllTypesOneOf_Field9) Size() (n int) {
4237	if m == nil {
4238		return 0
4239	}
4240	var l int
4241	_ = l
4242	n += 5
4243	return n
4244}
4245func (m *AllTypesOneOf_Field10) Size() (n int) {
4246	if m == nil {
4247		return 0
4248	}
4249	var l int
4250	_ = l
4251	n += 5
4252	return n
4253}
4254func (m *AllTypesOneOf_Field11) Size() (n int) {
4255	if m == nil {
4256		return 0
4257	}
4258	var l int
4259	_ = l
4260	n += 9
4261	return n
4262}
4263func (m *AllTypesOneOf_Field12) Size() (n int) {
4264	if m == nil {
4265		return 0
4266	}
4267	var l int
4268	_ = l
4269	n += 9
4270	return n
4271}
4272func (m *AllTypesOneOf_Field13) Size() (n int) {
4273	if m == nil {
4274		return 0
4275	}
4276	var l int
4277	_ = l
4278	n += 2
4279	return n
4280}
4281func (m *AllTypesOneOf_Field14) Size() (n int) {
4282	if m == nil {
4283		return 0
4284	}
4285	var l int
4286	_ = l
4287	l = len(m.Field14)
4288	n += 1 + l + sovOne(uint64(l))
4289	return n
4290}
4291func (m *AllTypesOneOf_Field15) Size() (n int) {
4292	if m == nil {
4293		return 0
4294	}
4295	var l int
4296	_ = l
4297	if m.Field15 != nil {
4298		l = len(m.Field15)
4299		n += 1 + l + sovOne(uint64(l))
4300	}
4301	return n
4302}
4303func (m *AllTypesOneOf_SubMessage) Size() (n int) {
4304	if m == nil {
4305		return 0
4306	}
4307	var l int
4308	_ = l
4309	if m.SubMessage != nil {
4310		l = m.SubMessage.Size()
4311		n += 2 + l + sovOne(uint64(l))
4312	}
4313	return n
4314}
4315func (m *TwoOneofs) Size() (n int) {
4316	if m == nil {
4317		return 0
4318	}
4319	var l int
4320	_ = l
4321	if m.One != nil {
4322		n += m.One.Size()
4323	}
4324	if m.Two != nil {
4325		n += m.Two.Size()
4326	}
4327	if m.XXX_unrecognized != nil {
4328		n += len(m.XXX_unrecognized)
4329	}
4330	return n
4331}
4332
4333func (m *TwoOneofs_Field1) Size() (n int) {
4334	if m == nil {
4335		return 0
4336	}
4337	var l int
4338	_ = l
4339	n += 9
4340	return n
4341}
4342func (m *TwoOneofs_Field2) Size() (n int) {
4343	if m == nil {
4344		return 0
4345	}
4346	var l int
4347	_ = l
4348	n += 5
4349	return n
4350}
4351func (m *TwoOneofs_Field3) Size() (n int) {
4352	if m == nil {
4353		return 0
4354	}
4355	var l int
4356	_ = l
4357	n += 1 + sovOne(uint64(m.Field3))
4358	return n
4359}
4360func (m *TwoOneofs_Field34) Size() (n int) {
4361	if m == nil {
4362		return 0
4363	}
4364	var l int
4365	_ = l
4366	l = len(m.Field34)
4367	n += 2 + l + sovOne(uint64(l))
4368	return n
4369}
4370func (m *TwoOneofs_Field35) Size() (n int) {
4371	if m == nil {
4372		return 0
4373	}
4374	var l int
4375	_ = l
4376	if m.Field35 != nil {
4377		l = len(m.Field35)
4378		n += 2 + l + sovOne(uint64(l))
4379	}
4380	return n
4381}
4382func (m *TwoOneofs_SubMessage2) Size() (n int) {
4383	if m == nil {
4384		return 0
4385	}
4386	var l int
4387	_ = l
4388	if m.SubMessage2 != nil {
4389		l = m.SubMessage2.Size()
4390		n += 2 + l + sovOne(uint64(l))
4391	}
4392	return n
4393}
4394func (m *CustomOneof) Size() (n int) {
4395	if m == nil {
4396		return 0
4397	}
4398	var l int
4399	_ = l
4400	if m.Custom != nil {
4401		n += m.Custom.Size()
4402	}
4403	if m.XXX_unrecognized != nil {
4404		n += len(m.XXX_unrecognized)
4405	}
4406	return n
4407}
4408
4409func (m *CustomOneof_Stringy) Size() (n int) {
4410	if m == nil {
4411		return 0
4412	}
4413	var l int
4414	_ = l
4415	l = len(m.Stringy)
4416	n += 2 + l + sovOne(uint64(l))
4417	return n
4418}
4419func (m *CustomOneof_CustomType) Size() (n int) {
4420	if m == nil {
4421		return 0
4422	}
4423	var l int
4424	_ = l
4425	l = m.CustomType.Size()
4426	n += 2 + l + sovOne(uint64(l))
4427	return n
4428}
4429func (m *CustomOneof_CastType) Size() (n int) {
4430	if m == nil {
4431		return 0
4432	}
4433	var l int
4434	_ = l
4435	n += 2 + sovOne(uint64(m.CastType))
4436	return n
4437}
4438func (m *CustomOneof_MyCustomName) Size() (n int) {
4439	if m == nil {
4440		return 0
4441	}
4442	var l int
4443	_ = l
4444	n += 2 + sovOne(uint64(m.MyCustomName))
4445	return n
4446}
4447
4448func sovOne(x uint64) (n int) {
4449	for {
4450		n++
4451		x >>= 7
4452		if x == 0 {
4453			break
4454		}
4455	}
4456	return n
4457}
4458func sozOne(x uint64) (n int) {
4459	return sovOne(uint64((x << 1) ^ uint64((int64(x) >> 63))))
4460}
4461func (this *Subby) String() string {
4462	if this == nil {
4463		return "nil"
4464	}
4465	s := strings.Join([]string{`&Subby{`,
4466		`Sub:` + valueToStringOne(this.Sub) + `,`,
4467		`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
4468		`}`,
4469	}, "")
4470	return s
4471}
4472func (this *AllTypesOneOf) String() string {
4473	if this == nil {
4474		return "nil"
4475	}
4476	s := strings.Join([]string{`&AllTypesOneOf{`,
4477		`TestOneof:` + fmt.Sprintf("%v", this.TestOneof) + `,`,
4478		`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
4479		`}`,
4480	}, "")
4481	return s
4482}
4483func (this *AllTypesOneOf_Field1) String() string {
4484	if this == nil {
4485		return "nil"
4486	}
4487	s := strings.Join([]string{`&AllTypesOneOf_Field1{`,
4488		`Field1:` + fmt.Sprintf("%v", this.Field1) + `,`,
4489		`}`,
4490	}, "")
4491	return s
4492}
4493func (this *AllTypesOneOf_Field2) String() string {
4494	if this == nil {
4495		return "nil"
4496	}
4497	s := strings.Join([]string{`&AllTypesOneOf_Field2{`,
4498		`Field2:` + fmt.Sprintf("%v", this.Field2) + `,`,
4499		`}`,
4500	}, "")
4501	return s
4502}
4503func (this *AllTypesOneOf_Field3) String() string {
4504	if this == nil {
4505		return "nil"
4506	}
4507	s := strings.Join([]string{`&AllTypesOneOf_Field3{`,
4508		`Field3:` + fmt.Sprintf("%v", this.Field3) + `,`,
4509		`}`,
4510	}, "")
4511	return s
4512}
4513func (this *AllTypesOneOf_Field4) String() string {
4514	if this == nil {
4515		return "nil"
4516	}
4517	s := strings.Join([]string{`&AllTypesOneOf_Field4{`,
4518		`Field4:` + fmt.Sprintf("%v", this.Field4) + `,`,
4519		`}`,
4520	}, "")
4521	return s
4522}
4523func (this *AllTypesOneOf_Field5) String() string {
4524	if this == nil {
4525		return "nil"
4526	}
4527	s := strings.Join([]string{`&AllTypesOneOf_Field5{`,
4528		`Field5:` + fmt.Sprintf("%v", this.Field5) + `,`,
4529		`}`,
4530	}, "")
4531	return s
4532}
4533func (this *AllTypesOneOf_Field6) String() string {
4534	if this == nil {
4535		return "nil"
4536	}
4537	s := strings.Join([]string{`&AllTypesOneOf_Field6{`,
4538		`Field6:` + fmt.Sprintf("%v", this.Field6) + `,`,
4539		`}`,
4540	}, "")
4541	return s
4542}
4543func (this *AllTypesOneOf_Field7) String() string {
4544	if this == nil {
4545		return "nil"
4546	}
4547	s := strings.Join([]string{`&AllTypesOneOf_Field7{`,
4548		`Field7:` + fmt.Sprintf("%v", this.Field7) + `,`,
4549		`}`,
4550	}, "")
4551	return s
4552}
4553func (this *AllTypesOneOf_Field8) String() string {
4554	if this == nil {
4555		return "nil"
4556	}
4557	s := strings.Join([]string{`&AllTypesOneOf_Field8{`,
4558		`Field8:` + fmt.Sprintf("%v", this.Field8) + `,`,
4559		`}`,
4560	}, "")
4561	return s
4562}
4563func (this *AllTypesOneOf_Field9) String() string {
4564	if this == nil {
4565		return "nil"
4566	}
4567	s := strings.Join([]string{`&AllTypesOneOf_Field9{`,
4568		`Field9:` + fmt.Sprintf("%v", this.Field9) + `,`,
4569		`}`,
4570	}, "")
4571	return s
4572}
4573func (this *AllTypesOneOf_Field10) String() string {
4574	if this == nil {
4575		return "nil"
4576	}
4577	s := strings.Join([]string{`&AllTypesOneOf_Field10{`,
4578		`Field10:` + fmt.Sprintf("%v", this.Field10) + `,`,
4579		`}`,
4580	}, "")
4581	return s
4582}
4583func (this *AllTypesOneOf_Field11) String() string {
4584	if this == nil {
4585		return "nil"
4586	}
4587	s := strings.Join([]string{`&AllTypesOneOf_Field11{`,
4588		`Field11:` + fmt.Sprintf("%v", this.Field11) + `,`,
4589		`}`,
4590	}, "")
4591	return s
4592}
4593func (this *AllTypesOneOf_Field12) String() string {
4594	if this == nil {
4595		return "nil"
4596	}
4597	s := strings.Join([]string{`&AllTypesOneOf_Field12{`,
4598		`Field12:` + fmt.Sprintf("%v", this.Field12) + `,`,
4599		`}`,
4600	}, "")
4601	return s
4602}
4603func (this *AllTypesOneOf_Field13) String() string {
4604	if this == nil {
4605		return "nil"
4606	}
4607	s := strings.Join([]string{`&AllTypesOneOf_Field13{`,
4608		`Field13:` + fmt.Sprintf("%v", this.Field13) + `,`,
4609		`}`,
4610	}, "")
4611	return s
4612}
4613func (this *AllTypesOneOf_Field14) String() string {
4614	if this == nil {
4615		return "nil"
4616	}
4617	s := strings.Join([]string{`&AllTypesOneOf_Field14{`,
4618		`Field14:` + fmt.Sprintf("%v", this.Field14) + `,`,
4619		`}`,
4620	}, "")
4621	return s
4622}
4623func (this *AllTypesOneOf_Field15) String() string {
4624	if this == nil {
4625		return "nil"
4626	}
4627	s := strings.Join([]string{`&AllTypesOneOf_Field15{`,
4628		`Field15:` + fmt.Sprintf("%v", this.Field15) + `,`,
4629		`}`,
4630	}, "")
4631	return s
4632}
4633func (this *AllTypesOneOf_SubMessage) String() string {
4634	if this == nil {
4635		return "nil"
4636	}
4637	s := strings.Join([]string{`&AllTypesOneOf_SubMessage{`,
4638		`SubMessage:` + strings.Replace(fmt.Sprintf("%v", this.SubMessage), "Subby", "Subby", 1) + `,`,
4639		`}`,
4640	}, "")
4641	return s
4642}
4643func (this *TwoOneofs) String() string {
4644	if this == nil {
4645		return "nil"
4646	}
4647	s := strings.Join([]string{`&TwoOneofs{`,
4648		`One:` + fmt.Sprintf("%v", this.One) + `,`,
4649		`Two:` + fmt.Sprintf("%v", this.Two) + `,`,
4650		`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
4651		`}`,
4652	}, "")
4653	return s
4654}
4655func (this *TwoOneofs_Field1) String() string {
4656	if this == nil {
4657		return "nil"
4658	}
4659	s := strings.Join([]string{`&TwoOneofs_Field1{`,
4660		`Field1:` + fmt.Sprintf("%v", this.Field1) + `,`,
4661		`}`,
4662	}, "")
4663	return s
4664}
4665func (this *TwoOneofs_Field2) String() string {
4666	if this == nil {
4667		return "nil"
4668	}
4669	s := strings.Join([]string{`&TwoOneofs_Field2{`,
4670		`Field2:` + fmt.Sprintf("%v", this.Field2) + `,`,
4671		`}`,
4672	}, "")
4673	return s
4674}
4675func (this *TwoOneofs_Field3) String() string {
4676	if this == nil {
4677		return "nil"
4678	}
4679	s := strings.Join([]string{`&TwoOneofs_Field3{`,
4680		`Field3:` + fmt.Sprintf("%v", this.Field3) + `,`,
4681		`}`,
4682	}, "")
4683	return s
4684}
4685func (this *TwoOneofs_Field34) String() string {
4686	if this == nil {
4687		return "nil"
4688	}
4689	s := strings.Join([]string{`&TwoOneofs_Field34{`,
4690		`Field34:` + fmt.Sprintf("%v", this.Field34) + `,`,
4691		`}`,
4692	}, "")
4693	return s
4694}
4695func (this *TwoOneofs_Field35) String() string {
4696	if this == nil {
4697		return "nil"
4698	}
4699	s := strings.Join([]string{`&TwoOneofs_Field35{`,
4700		`Field35:` + fmt.Sprintf("%v", this.Field35) + `,`,
4701		`}`,
4702	}, "")
4703	return s
4704}
4705func (this *TwoOneofs_SubMessage2) String() string {
4706	if this == nil {
4707		return "nil"
4708	}
4709	s := strings.Join([]string{`&TwoOneofs_SubMessage2{`,
4710		`SubMessage2:` + strings.Replace(fmt.Sprintf("%v", this.SubMessage2), "Subby", "Subby", 1) + `,`,
4711		`}`,
4712	}, "")
4713	return s
4714}
4715func (this *CustomOneof) String() string {
4716	if this == nil {
4717		return "nil"
4718	}
4719	s := strings.Join([]string{`&CustomOneof{`,
4720		`Custom:` + fmt.Sprintf("%v", this.Custom) + `,`,
4721		`XXX_unrecognized:` + fmt.Sprintf("%v", this.XXX_unrecognized) + `,`,
4722		`}`,
4723	}, "")
4724	return s
4725}
4726func (this *CustomOneof_Stringy) String() string {
4727	if this == nil {
4728		return "nil"
4729	}
4730	s := strings.Join([]string{`&CustomOneof_Stringy{`,
4731		`Stringy:` + fmt.Sprintf("%v", this.Stringy) + `,`,
4732		`}`,
4733	}, "")
4734	return s
4735}
4736func (this *CustomOneof_CustomType) String() string {
4737	if this == nil {
4738		return "nil"
4739	}
4740	s := strings.Join([]string{`&CustomOneof_CustomType{`,
4741		`CustomType:` + fmt.Sprintf("%v", this.CustomType) + `,`,
4742		`}`,
4743	}, "")
4744	return s
4745}
4746func (this *CustomOneof_CastType) String() string {
4747	if this == nil {
4748		return "nil"
4749	}
4750	s := strings.Join([]string{`&CustomOneof_CastType{`,
4751		`CastType:` + fmt.Sprintf("%v", this.CastType) + `,`,
4752		`}`,
4753	}, "")
4754	return s
4755}
4756func (this *CustomOneof_MyCustomName) String() string {
4757	if this == nil {
4758		return "nil"
4759	}
4760	s := strings.Join([]string{`&CustomOneof_MyCustomName{`,
4761		`MyCustomName:` + fmt.Sprintf("%v", this.MyCustomName) + `,`,
4762		`}`,
4763	}, "")
4764	return s
4765}
4766func valueToStringOne(v interface{}) string {
4767	rv := reflect.ValueOf(v)
4768	if rv.IsNil() {
4769		return "nil"
4770	}
4771	pv := reflect.Indirect(rv).Interface()
4772	return fmt.Sprintf("*%v", pv)
4773}
4774func (m *Subby) Unmarshal(dAtA []byte) error {
4775	l := len(dAtA)
4776	iNdEx := 0
4777	for iNdEx < l {
4778		preIndex := iNdEx
4779		var wire uint64
4780		for shift := uint(0); ; shift += 7 {
4781			if shift >= 64 {
4782				return ErrIntOverflowOne
4783			}
4784			if iNdEx >= l {
4785				return io.ErrUnexpectedEOF
4786			}
4787			b := dAtA[iNdEx]
4788			iNdEx++
4789			wire |= uint64(b&0x7F) << shift
4790			if b < 0x80 {
4791				break
4792			}
4793		}
4794		fieldNum := int32(wire >> 3)
4795		wireType := int(wire & 0x7)
4796		if wireType == 4 {
4797			return fmt.Errorf("proto: Subby: wiretype end group for non-group")
4798		}
4799		if fieldNum <= 0 {
4800			return fmt.Errorf("proto: Subby: illegal tag %d (wire type %d)", fieldNum, wire)
4801		}
4802		switch fieldNum {
4803		case 1:
4804			if wireType != 2 {
4805				return fmt.Errorf("proto: wrong wireType = %d for field Sub", wireType)
4806			}
4807			var stringLen uint64
4808			for shift := uint(0); ; shift += 7 {
4809				if shift >= 64 {
4810					return ErrIntOverflowOne
4811				}
4812				if iNdEx >= l {
4813					return io.ErrUnexpectedEOF
4814				}
4815				b := dAtA[iNdEx]
4816				iNdEx++
4817				stringLen |= uint64(b&0x7F) << shift
4818				if b < 0x80 {
4819					break
4820				}
4821			}
4822			intStringLen := int(stringLen)
4823			if intStringLen < 0 {
4824				return ErrInvalidLengthOne
4825			}
4826			postIndex := iNdEx + intStringLen
4827			if postIndex < 0 {
4828				return ErrInvalidLengthOne
4829			}
4830			if postIndex > l {
4831				return io.ErrUnexpectedEOF
4832			}
4833			s := string(dAtA[iNdEx:postIndex])
4834			m.Sub = &s
4835			iNdEx = postIndex
4836		default:
4837			iNdEx = preIndex
4838			skippy, err := skipOne(dAtA[iNdEx:])
4839			if err != nil {
4840				return err
4841			}
4842			if skippy < 0 {
4843				return ErrInvalidLengthOne
4844			}
4845			if (iNdEx + skippy) < 0 {
4846				return ErrInvalidLengthOne
4847			}
4848			if (iNdEx + skippy) > l {
4849				return io.ErrUnexpectedEOF
4850			}
4851			m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...)
4852			iNdEx += skippy
4853		}
4854	}
4855
4856	if iNdEx > l {
4857		return io.ErrUnexpectedEOF
4858	}
4859	return nil
4860}
4861func (m *AllTypesOneOf) Unmarshal(dAtA []byte) error {
4862	l := len(dAtA)
4863	iNdEx := 0
4864	for iNdEx < l {
4865		preIndex := iNdEx
4866		var wire uint64
4867		for shift := uint(0); ; shift += 7 {
4868			if shift >= 64 {
4869				return ErrIntOverflowOne
4870			}
4871			if iNdEx >= l {
4872				return io.ErrUnexpectedEOF
4873			}
4874			b := dAtA[iNdEx]
4875			iNdEx++
4876			wire |= uint64(b&0x7F) << shift
4877			if b < 0x80 {
4878				break
4879			}
4880		}
4881		fieldNum := int32(wire >> 3)
4882		wireType := int(wire & 0x7)
4883		if wireType == 4 {
4884			return fmt.Errorf("proto: AllTypesOneOf: wiretype end group for non-group")
4885		}
4886		if fieldNum <= 0 {
4887			return fmt.Errorf("proto: AllTypesOneOf: illegal tag %d (wire type %d)", fieldNum, wire)
4888		}
4889		switch fieldNum {
4890		case 1:
4891			if wireType != 1 {
4892				return fmt.Errorf("proto: wrong wireType = %d for field Field1", wireType)
4893			}
4894			var v uint64
4895			if (iNdEx + 8) > l {
4896				return io.ErrUnexpectedEOF
4897			}
4898			v = uint64(encoding_binary.LittleEndian.Uint64(dAtA[iNdEx:]))
4899			iNdEx += 8
4900			m.TestOneof = &AllTypesOneOf_Field1{float64(math.Float64frombits(v))}
4901		case 2:
4902			if wireType != 5 {
4903				return fmt.Errorf("proto: wrong wireType = %d for field Field2", wireType)
4904			}
4905			var v uint32
4906			if (iNdEx + 4) > l {
4907				return io.ErrUnexpectedEOF
4908			}
4909			v = uint32(encoding_binary.LittleEndian.Uint32(dAtA[iNdEx:]))
4910			iNdEx += 4
4911			m.TestOneof = &AllTypesOneOf_Field2{float32(math.Float32frombits(v))}
4912		case 3:
4913			if wireType != 0 {
4914				return fmt.Errorf("proto: wrong wireType = %d for field Field3", wireType)
4915			}
4916			var v int32
4917			for shift := uint(0); ; shift += 7 {
4918				if shift >= 64 {
4919					return ErrIntOverflowOne
4920				}
4921				if iNdEx >= l {
4922					return io.ErrUnexpectedEOF
4923				}
4924				b := dAtA[iNdEx]
4925				iNdEx++
4926				v |= int32(b&0x7F) << shift
4927				if b < 0x80 {
4928					break
4929				}
4930			}
4931			m.TestOneof = &AllTypesOneOf_Field3{v}
4932		case 4:
4933			if wireType != 0 {
4934				return fmt.Errorf("proto: wrong wireType = %d for field Field4", wireType)
4935			}
4936			var v int64
4937			for shift := uint(0); ; shift += 7 {
4938				if shift >= 64 {
4939					return ErrIntOverflowOne
4940				}
4941				if iNdEx >= l {
4942					return io.ErrUnexpectedEOF
4943				}
4944				b := dAtA[iNdEx]
4945				iNdEx++
4946				v |= int64(b&0x7F) << shift
4947				if b < 0x80 {
4948					break
4949				}
4950			}
4951			m.TestOneof = &AllTypesOneOf_Field4{v}
4952		case 5:
4953			if wireType != 0 {
4954				return fmt.Errorf("proto: wrong wireType = %d for field Field5", wireType)
4955			}
4956			var v uint32
4957			for shift := uint(0); ; shift += 7 {
4958				if shift >= 64 {
4959					return ErrIntOverflowOne
4960				}
4961				if iNdEx >= l {
4962					return io.ErrUnexpectedEOF
4963				}
4964				b := dAtA[iNdEx]
4965				iNdEx++
4966				v |= uint32(b&0x7F) << shift
4967				if b < 0x80 {
4968					break
4969				}
4970			}
4971			m.TestOneof = &AllTypesOneOf_Field5{v}
4972		case 6:
4973			if wireType != 0 {
4974				return fmt.Errorf("proto: wrong wireType = %d for field Field6", wireType)
4975			}
4976			var v uint64
4977			for shift := uint(0); ; shift += 7 {
4978				if shift >= 64 {
4979					return ErrIntOverflowOne
4980				}
4981				if iNdEx >= l {
4982					return io.ErrUnexpectedEOF
4983				}
4984				b := dAtA[iNdEx]
4985				iNdEx++
4986				v |= uint64(b&0x7F) << shift
4987				if b < 0x80 {
4988					break
4989				}
4990			}
4991			m.TestOneof = &AllTypesOneOf_Field6{v}
4992		case 7:
4993			if wireType != 0 {
4994				return fmt.Errorf("proto: wrong wireType = %d for field Field7", wireType)
4995			}
4996			var v int32
4997			for shift := uint(0); ; shift += 7 {
4998				if shift >= 64 {
4999					return ErrIntOverflowOne
5000				}
5001				if iNdEx >= l {
5002					return io.ErrUnexpectedEOF
5003				}
5004				b := dAtA[iNdEx]
5005				iNdEx++
5006				v |= int32(b&0x7F) << shift
5007				if b < 0x80 {
5008					break
5009				}
5010			}
5011			v = int32((uint32(v) >> 1) ^ uint32(((v&1)<<31)>>31))
5012			m.TestOneof = &AllTypesOneOf_Field7{v}
5013		case 8:
5014			if wireType != 0 {
5015				return fmt.Errorf("proto: wrong wireType = %d for field Field8", wireType)
5016			}
5017			var v uint64
5018			for shift := uint(0); ; shift += 7 {
5019				if shift >= 64 {
5020					return ErrIntOverflowOne
5021				}
5022				if iNdEx >= l {
5023					return io.ErrUnexpectedEOF
5024				}
5025				b := dAtA[iNdEx]
5026				iNdEx++
5027				v |= uint64(b&0x7F) << shift
5028				if b < 0x80 {
5029					break
5030				}
5031			}
5032			v = (v >> 1) ^ uint64((int64(v&1)<<63)>>63)
5033			m.TestOneof = &AllTypesOneOf_Field8{int64(v)}
5034		case 9:
5035			if wireType != 5 {
5036				return fmt.Errorf("proto: wrong wireType = %d for field Field9", wireType)
5037			}
5038			var v uint32
5039			if (iNdEx + 4) > l {
5040				return io.ErrUnexpectedEOF
5041			}
5042			v = uint32(encoding_binary.LittleEndian.Uint32(dAtA[iNdEx:]))
5043			iNdEx += 4
5044			m.TestOneof = &AllTypesOneOf_Field9{v}
5045		case 10:
5046			if wireType != 5 {
5047				return fmt.Errorf("proto: wrong wireType = %d for field Field10", wireType)
5048			}
5049			var v int32
5050			if (iNdEx + 4) > l {
5051				return io.ErrUnexpectedEOF
5052			}
5053			v = int32(encoding_binary.LittleEndian.Uint32(dAtA[iNdEx:]))
5054			iNdEx += 4
5055			m.TestOneof = &AllTypesOneOf_Field10{v}
5056		case 11:
5057			if wireType != 1 {
5058				return fmt.Errorf("proto: wrong wireType = %d for field Field11", wireType)
5059			}
5060			var v uint64
5061			if (iNdEx + 8) > l {
5062				return io.ErrUnexpectedEOF
5063			}
5064			v = uint64(encoding_binary.LittleEndian.Uint64(dAtA[iNdEx:]))
5065			iNdEx += 8
5066			m.TestOneof = &AllTypesOneOf_Field11{v}
5067		case 12:
5068			if wireType != 1 {
5069				return fmt.Errorf("proto: wrong wireType = %d for field Field12", wireType)
5070			}
5071			var v int64
5072			if (iNdEx + 8) > l {
5073				return io.ErrUnexpectedEOF
5074			}
5075			v = int64(encoding_binary.LittleEndian.Uint64(dAtA[iNdEx:]))
5076			iNdEx += 8
5077			m.TestOneof = &AllTypesOneOf_Field12{v}
5078		case 13:
5079			if wireType != 0 {
5080				return fmt.Errorf("proto: wrong wireType = %d for field Field13", wireType)
5081			}
5082			var v int
5083			for shift := uint(0); ; shift += 7 {
5084				if shift >= 64 {
5085					return ErrIntOverflowOne
5086				}
5087				if iNdEx >= l {
5088					return io.ErrUnexpectedEOF
5089				}
5090				b := dAtA[iNdEx]
5091				iNdEx++
5092				v |= int(b&0x7F) << shift
5093				if b < 0x80 {
5094					break
5095				}
5096			}
5097			b := bool(v != 0)
5098			m.TestOneof = &AllTypesOneOf_Field13{b}
5099		case 14:
5100			if wireType != 2 {
5101				return fmt.Errorf("proto: wrong wireType = %d for field Field14", wireType)
5102			}
5103			var stringLen uint64
5104			for shift := uint(0); ; shift += 7 {
5105				if shift >= 64 {
5106					return ErrIntOverflowOne
5107				}
5108				if iNdEx >= l {
5109					return io.ErrUnexpectedEOF
5110				}
5111				b := dAtA[iNdEx]
5112				iNdEx++
5113				stringLen |= uint64(b&0x7F) << shift
5114				if b < 0x80 {
5115					break
5116				}
5117			}
5118			intStringLen := int(stringLen)
5119			if intStringLen < 0 {
5120				return ErrInvalidLengthOne
5121			}
5122			postIndex := iNdEx + intStringLen
5123			if postIndex < 0 {
5124				return ErrInvalidLengthOne
5125			}
5126			if postIndex > l {
5127				return io.ErrUnexpectedEOF
5128			}
5129			m.TestOneof = &AllTypesOneOf_Field14{string(dAtA[iNdEx:postIndex])}
5130			iNdEx = postIndex
5131		case 15:
5132			if wireType != 2 {
5133				return fmt.Errorf("proto: wrong wireType = %d for field Field15", wireType)
5134			}
5135			var byteLen int
5136			for shift := uint(0); ; shift += 7 {
5137				if shift >= 64 {
5138					return ErrIntOverflowOne
5139				}
5140				if iNdEx >= l {
5141					return io.ErrUnexpectedEOF
5142				}
5143				b := dAtA[iNdEx]
5144				iNdEx++
5145				byteLen |= int(b&0x7F) << shift
5146				if b < 0x80 {
5147					break
5148				}
5149			}
5150			if byteLen < 0 {
5151				return ErrInvalidLengthOne
5152			}
5153			postIndex := iNdEx + byteLen
5154			if postIndex < 0 {
5155				return ErrInvalidLengthOne
5156			}
5157			if postIndex > l {
5158				return io.ErrUnexpectedEOF
5159			}
5160			v := make([]byte, postIndex-iNdEx)
5161			copy(v, dAtA[iNdEx:postIndex])
5162			m.TestOneof = &AllTypesOneOf_Field15{v}
5163			iNdEx = postIndex
5164		case 16:
5165			if wireType != 2 {
5166				return fmt.Errorf("proto: wrong wireType = %d for field SubMessage", wireType)
5167			}
5168			var msglen int
5169			for shift := uint(0); ; shift += 7 {
5170				if shift >= 64 {
5171					return ErrIntOverflowOne
5172				}
5173				if iNdEx >= l {
5174					return io.ErrUnexpectedEOF
5175				}
5176				b := dAtA[iNdEx]
5177				iNdEx++
5178				msglen |= int(b&0x7F) << shift
5179				if b < 0x80 {
5180					break
5181				}
5182			}
5183			if msglen < 0 {
5184				return ErrInvalidLengthOne
5185			}
5186			postIndex := iNdEx + msglen
5187			if postIndex < 0 {
5188				return ErrInvalidLengthOne
5189			}
5190			if postIndex > l {
5191				return io.ErrUnexpectedEOF
5192			}
5193			v := &Subby{}
5194			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
5195				return err
5196			}
5197			m.TestOneof = &AllTypesOneOf_SubMessage{v}
5198			iNdEx = postIndex
5199		default:
5200			iNdEx = preIndex
5201			skippy, err := skipOne(dAtA[iNdEx:])
5202			if err != nil {
5203				return err
5204			}
5205			if skippy < 0 {
5206				return ErrInvalidLengthOne
5207			}
5208			if (iNdEx + skippy) < 0 {
5209				return ErrInvalidLengthOne
5210			}
5211			if (iNdEx + skippy) > l {
5212				return io.ErrUnexpectedEOF
5213			}
5214			m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...)
5215			iNdEx += skippy
5216		}
5217	}
5218
5219	if iNdEx > l {
5220		return io.ErrUnexpectedEOF
5221	}
5222	return nil
5223}
5224func (m *TwoOneofs) Unmarshal(dAtA []byte) error {
5225	l := len(dAtA)
5226	iNdEx := 0
5227	for iNdEx < l {
5228		preIndex := iNdEx
5229		var wire uint64
5230		for shift := uint(0); ; shift += 7 {
5231			if shift >= 64 {
5232				return ErrIntOverflowOne
5233			}
5234			if iNdEx >= l {
5235				return io.ErrUnexpectedEOF
5236			}
5237			b := dAtA[iNdEx]
5238			iNdEx++
5239			wire |= uint64(b&0x7F) << shift
5240			if b < 0x80 {
5241				break
5242			}
5243		}
5244		fieldNum := int32(wire >> 3)
5245		wireType := int(wire & 0x7)
5246		if wireType == 4 {
5247			return fmt.Errorf("proto: TwoOneofs: wiretype end group for non-group")
5248		}
5249		if fieldNum <= 0 {
5250			return fmt.Errorf("proto: TwoOneofs: illegal tag %d (wire type %d)", fieldNum, wire)
5251		}
5252		switch fieldNum {
5253		case 1:
5254			if wireType != 1 {
5255				return fmt.Errorf("proto: wrong wireType = %d for field Field1", wireType)
5256			}
5257			var v uint64
5258			if (iNdEx + 8) > l {
5259				return io.ErrUnexpectedEOF
5260			}
5261			v = uint64(encoding_binary.LittleEndian.Uint64(dAtA[iNdEx:]))
5262			iNdEx += 8
5263			m.One = &TwoOneofs_Field1{float64(math.Float64frombits(v))}
5264		case 2:
5265			if wireType != 5 {
5266				return fmt.Errorf("proto: wrong wireType = %d for field Field2", wireType)
5267			}
5268			var v uint32
5269			if (iNdEx + 4) > l {
5270				return io.ErrUnexpectedEOF
5271			}
5272			v = uint32(encoding_binary.LittleEndian.Uint32(dAtA[iNdEx:]))
5273			iNdEx += 4
5274			m.One = &TwoOneofs_Field2{float32(math.Float32frombits(v))}
5275		case 3:
5276			if wireType != 0 {
5277				return fmt.Errorf("proto: wrong wireType = %d for field Field3", wireType)
5278			}
5279			var v int32
5280			for shift := uint(0); ; shift += 7 {
5281				if shift >= 64 {
5282					return ErrIntOverflowOne
5283				}
5284				if iNdEx >= l {
5285					return io.ErrUnexpectedEOF
5286				}
5287				b := dAtA[iNdEx]
5288				iNdEx++
5289				v |= int32(b&0x7F) << shift
5290				if b < 0x80 {
5291					break
5292				}
5293			}
5294			m.One = &TwoOneofs_Field3{v}
5295		case 34:
5296			if wireType != 2 {
5297				return fmt.Errorf("proto: wrong wireType = %d for field Field34", wireType)
5298			}
5299			var stringLen uint64
5300			for shift := uint(0); ; shift += 7 {
5301				if shift >= 64 {
5302					return ErrIntOverflowOne
5303				}
5304				if iNdEx >= l {
5305					return io.ErrUnexpectedEOF
5306				}
5307				b := dAtA[iNdEx]
5308				iNdEx++
5309				stringLen |= uint64(b&0x7F) << shift
5310				if b < 0x80 {
5311					break
5312				}
5313			}
5314			intStringLen := int(stringLen)
5315			if intStringLen < 0 {
5316				return ErrInvalidLengthOne
5317			}
5318			postIndex := iNdEx + intStringLen
5319			if postIndex < 0 {
5320				return ErrInvalidLengthOne
5321			}
5322			if postIndex > l {
5323				return io.ErrUnexpectedEOF
5324			}
5325			m.Two = &TwoOneofs_Field34{string(dAtA[iNdEx:postIndex])}
5326			iNdEx = postIndex
5327		case 35:
5328			if wireType != 2 {
5329				return fmt.Errorf("proto: wrong wireType = %d for field Field35", wireType)
5330			}
5331			var byteLen int
5332			for shift := uint(0); ; shift += 7 {
5333				if shift >= 64 {
5334					return ErrIntOverflowOne
5335				}
5336				if iNdEx >= l {
5337					return io.ErrUnexpectedEOF
5338				}
5339				b := dAtA[iNdEx]
5340				iNdEx++
5341				byteLen |= int(b&0x7F) << shift
5342				if b < 0x80 {
5343					break
5344				}
5345			}
5346			if byteLen < 0 {
5347				return ErrInvalidLengthOne
5348			}
5349			postIndex := iNdEx + byteLen
5350			if postIndex < 0 {
5351				return ErrInvalidLengthOne
5352			}
5353			if postIndex > l {
5354				return io.ErrUnexpectedEOF
5355			}
5356			v := make([]byte, postIndex-iNdEx)
5357			copy(v, dAtA[iNdEx:postIndex])
5358			m.Two = &TwoOneofs_Field35{v}
5359			iNdEx = postIndex
5360		case 36:
5361			if wireType != 2 {
5362				return fmt.Errorf("proto: wrong wireType = %d for field SubMessage2", wireType)
5363			}
5364			var msglen int
5365			for shift := uint(0); ; shift += 7 {
5366				if shift >= 64 {
5367					return ErrIntOverflowOne
5368				}
5369				if iNdEx >= l {
5370					return io.ErrUnexpectedEOF
5371				}
5372				b := dAtA[iNdEx]
5373				iNdEx++
5374				msglen |= int(b&0x7F) << shift
5375				if b < 0x80 {
5376					break
5377				}
5378			}
5379			if msglen < 0 {
5380				return ErrInvalidLengthOne
5381			}
5382			postIndex := iNdEx + msglen
5383			if postIndex < 0 {
5384				return ErrInvalidLengthOne
5385			}
5386			if postIndex > l {
5387				return io.ErrUnexpectedEOF
5388			}
5389			v := &Subby{}
5390			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
5391				return err
5392			}
5393			m.Two = &TwoOneofs_SubMessage2{v}
5394			iNdEx = postIndex
5395		default:
5396			iNdEx = preIndex
5397			skippy, err := skipOne(dAtA[iNdEx:])
5398			if err != nil {
5399				return err
5400			}
5401			if skippy < 0 {
5402				return ErrInvalidLengthOne
5403			}
5404			if (iNdEx + skippy) < 0 {
5405				return ErrInvalidLengthOne
5406			}
5407			if (iNdEx + skippy) > l {
5408				return io.ErrUnexpectedEOF
5409			}
5410			m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...)
5411			iNdEx += skippy
5412		}
5413	}
5414
5415	if iNdEx > l {
5416		return io.ErrUnexpectedEOF
5417	}
5418	return nil
5419}
5420func (m *CustomOneof) Unmarshal(dAtA []byte) error {
5421	l := len(dAtA)
5422	iNdEx := 0
5423	for iNdEx < l {
5424		preIndex := iNdEx
5425		var wire uint64
5426		for shift := uint(0); ; shift += 7 {
5427			if shift >= 64 {
5428				return ErrIntOverflowOne
5429			}
5430			if iNdEx >= l {
5431				return io.ErrUnexpectedEOF
5432			}
5433			b := dAtA[iNdEx]
5434			iNdEx++
5435			wire |= uint64(b&0x7F) << shift
5436			if b < 0x80 {
5437				break
5438			}
5439		}
5440		fieldNum := int32(wire >> 3)
5441		wireType := int(wire & 0x7)
5442		if wireType == 4 {
5443			return fmt.Errorf("proto: CustomOneof: wiretype end group for non-group")
5444		}
5445		if fieldNum <= 0 {
5446			return fmt.Errorf("proto: CustomOneof: illegal tag %d (wire type %d)", fieldNum, wire)
5447		}
5448		switch fieldNum {
5449		case 34:
5450			if wireType != 2 {
5451				return fmt.Errorf("proto: wrong wireType = %d for field Stringy", wireType)
5452			}
5453			var stringLen uint64
5454			for shift := uint(0); ; shift += 7 {
5455				if shift >= 64 {
5456					return ErrIntOverflowOne
5457				}
5458				if iNdEx >= l {
5459					return io.ErrUnexpectedEOF
5460				}
5461				b := dAtA[iNdEx]
5462				iNdEx++
5463				stringLen |= uint64(b&0x7F) << shift
5464				if b < 0x80 {
5465					break
5466				}
5467			}
5468			intStringLen := int(stringLen)
5469			if intStringLen < 0 {
5470				return ErrInvalidLengthOne
5471			}
5472			postIndex := iNdEx + intStringLen
5473			if postIndex < 0 {
5474				return ErrInvalidLengthOne
5475			}
5476			if postIndex > l {
5477				return io.ErrUnexpectedEOF
5478			}
5479			m.Custom = &CustomOneof_Stringy{string(dAtA[iNdEx:postIndex])}
5480			iNdEx = postIndex
5481		case 35:
5482			if wireType != 2 {
5483				return fmt.Errorf("proto: wrong wireType = %d for field CustomType", wireType)
5484			}
5485			var byteLen int
5486			for shift := uint(0); ; shift += 7 {
5487				if shift >= 64 {
5488					return ErrIntOverflowOne
5489				}
5490				if iNdEx >= l {
5491					return io.ErrUnexpectedEOF
5492				}
5493				b := dAtA[iNdEx]
5494				iNdEx++
5495				byteLen |= int(b&0x7F) << shift
5496				if b < 0x80 {
5497					break
5498				}
5499			}
5500			if byteLen < 0 {
5501				return ErrInvalidLengthOne
5502			}
5503			postIndex := iNdEx + byteLen
5504			if postIndex < 0 {
5505				return ErrInvalidLengthOne
5506			}
5507			if postIndex > l {
5508				return io.ErrUnexpectedEOF
5509			}
5510			var vv github_com_gogo_protobuf_test_custom.Uint128
5511			v := &vv
5512			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
5513				return err
5514			}
5515			m.Custom = &CustomOneof_CustomType{*v}
5516			iNdEx = postIndex
5517		case 36:
5518			if wireType != 0 {
5519				return fmt.Errorf("proto: wrong wireType = %d for field CastType", wireType)
5520			}
5521			var v github_com_gogo_protobuf_test_casttype.MyUint64Type
5522			for shift := uint(0); ; shift += 7 {
5523				if shift >= 64 {
5524					return ErrIntOverflowOne
5525				}
5526				if iNdEx >= l {
5527					return io.ErrUnexpectedEOF
5528				}
5529				b := dAtA[iNdEx]
5530				iNdEx++
5531				v |= github_com_gogo_protobuf_test_casttype.MyUint64Type(b&0x7F) << shift
5532				if b < 0x80 {
5533					break
5534				}
5535			}
5536			m.Custom = &CustomOneof_CastType{v}
5537		case 37:
5538			if wireType != 0 {
5539				return fmt.Errorf("proto: wrong wireType = %d for field MyCustomName", wireType)
5540			}
5541			var v int64
5542			for shift := uint(0); ; shift += 7 {
5543				if shift >= 64 {
5544					return ErrIntOverflowOne
5545				}
5546				if iNdEx >= l {
5547					return io.ErrUnexpectedEOF
5548				}
5549				b := dAtA[iNdEx]
5550				iNdEx++
5551				v |= int64(b&0x7F) << shift
5552				if b < 0x80 {
5553					break
5554				}
5555			}
5556			m.Custom = &CustomOneof_MyCustomName{v}
5557		default:
5558			iNdEx = preIndex
5559			skippy, err := skipOne(dAtA[iNdEx:])
5560			if err != nil {
5561				return err
5562			}
5563			if skippy < 0 {
5564				return ErrInvalidLengthOne
5565			}
5566			if (iNdEx + skippy) < 0 {
5567				return ErrInvalidLengthOne
5568			}
5569			if (iNdEx + skippy) > l {
5570				return io.ErrUnexpectedEOF
5571			}
5572			m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...)
5573			iNdEx += skippy
5574		}
5575	}
5576
5577	if iNdEx > l {
5578		return io.ErrUnexpectedEOF
5579	}
5580	return nil
5581}
5582func skipOne(dAtA []byte) (n int, err error) {
5583	l := len(dAtA)
5584	iNdEx := 0
5585	for iNdEx < l {
5586		var wire uint64
5587		for shift := uint(0); ; shift += 7 {
5588			if shift >= 64 {
5589				return 0, ErrIntOverflowOne
5590			}
5591			if iNdEx >= l {
5592				return 0, io.ErrUnexpectedEOF
5593			}
5594			b := dAtA[iNdEx]
5595			iNdEx++
5596			wire |= (uint64(b) & 0x7F) << shift
5597			if b < 0x80 {
5598				break
5599			}
5600		}
5601		wireType := int(wire & 0x7)
5602		switch wireType {
5603		case 0:
5604			for shift := uint(0); ; shift += 7 {
5605				if shift >= 64 {
5606					return 0, ErrIntOverflowOne
5607				}
5608				if iNdEx >= l {
5609					return 0, io.ErrUnexpectedEOF
5610				}
5611				iNdEx++
5612				if dAtA[iNdEx-1] < 0x80 {
5613					break
5614				}
5615			}
5616			return iNdEx, nil
5617		case 1:
5618			iNdEx += 8
5619			return iNdEx, nil
5620		case 2:
5621			var length int
5622			for shift := uint(0); ; shift += 7 {
5623				if shift >= 64 {
5624					return 0, ErrIntOverflowOne
5625				}
5626				if iNdEx >= l {
5627					return 0, io.ErrUnexpectedEOF
5628				}
5629				b := dAtA[iNdEx]
5630				iNdEx++
5631				length |= (int(b) & 0x7F) << shift
5632				if b < 0x80 {
5633					break
5634				}
5635			}
5636			if length < 0 {
5637				return 0, ErrInvalidLengthOne
5638			}
5639			iNdEx += length
5640			if iNdEx < 0 {
5641				return 0, ErrInvalidLengthOne
5642			}
5643			return iNdEx, nil
5644		case 3:
5645			for {
5646				var innerWire uint64
5647				var start int = iNdEx
5648				for shift := uint(0); ; shift += 7 {
5649					if shift >= 64 {
5650						return 0, ErrIntOverflowOne
5651					}
5652					if iNdEx >= l {
5653						return 0, io.ErrUnexpectedEOF
5654					}
5655					b := dAtA[iNdEx]
5656					iNdEx++
5657					innerWire |= (uint64(b) & 0x7F) << shift
5658					if b < 0x80 {
5659						break
5660					}
5661				}
5662				innerWireType := int(innerWire & 0x7)
5663				if innerWireType == 4 {
5664					break
5665				}
5666				next, err := skipOne(dAtA[start:])
5667				if err != nil {
5668					return 0, err
5669				}
5670				iNdEx = start + next
5671				if iNdEx < 0 {
5672					return 0, ErrInvalidLengthOne
5673				}
5674			}
5675			return iNdEx, nil
5676		case 4:
5677			return iNdEx, nil
5678		case 5:
5679			iNdEx += 4
5680			return iNdEx, nil
5681		default:
5682			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
5683		}
5684	}
5685	panic("unreachable")
5686}
5687
5688var (
5689	ErrInvalidLengthOne = fmt.Errorf("proto: negative length found during unmarshaling")
5690	ErrIntOverflowOne   = fmt.Errorf("proto: integer overflow")
5691)
5692