1// Copyright 2018 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// Code generated by protoc-gen-go. DO NOT EDIT.
6// source: internal/testprotos/test3/test_extension.proto
7
8package test3
9
10import (
11	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
12	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
13	descriptorpb "google.golang.org/protobuf/types/descriptorpb"
14	reflect "reflect"
15)
16
17var file_internal_testprotos_test3_test_extension_proto_extTypes = []protoimpl.ExtensionInfo{
18	{
19		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
20		ExtensionType: (*int32)(nil),
21		Field:         1001,
22		Name:          "goproto.proto.test3.optional_int32",
23		Tag:           "varint,1001,opt,name=optional_int32",
24		Filename:      "internal/testprotos/test3/test_extension.proto",
25	},
26	{
27		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
28		ExtensionType: (*int64)(nil),
29		Field:         1002,
30		Name:          "goproto.proto.test3.optional_int64",
31		Tag:           "varint,1002,opt,name=optional_int64",
32		Filename:      "internal/testprotos/test3/test_extension.proto",
33	},
34	{
35		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
36		ExtensionType: (*uint32)(nil),
37		Field:         1003,
38		Name:          "goproto.proto.test3.optional_uint32",
39		Tag:           "varint,1003,opt,name=optional_uint32",
40		Filename:      "internal/testprotos/test3/test_extension.proto",
41	},
42	{
43		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
44		ExtensionType: (*uint64)(nil),
45		Field:         1004,
46		Name:          "goproto.proto.test3.optional_uint64",
47		Tag:           "varint,1004,opt,name=optional_uint64",
48		Filename:      "internal/testprotos/test3/test_extension.proto",
49	},
50	{
51		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
52		ExtensionType: (*int32)(nil),
53		Field:         1005,
54		Name:          "goproto.proto.test3.optional_sint32",
55		Tag:           "zigzag32,1005,opt,name=optional_sint32",
56		Filename:      "internal/testprotos/test3/test_extension.proto",
57	},
58	{
59		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
60		ExtensionType: (*int64)(nil),
61		Field:         1006,
62		Name:          "goproto.proto.test3.optional_sint64",
63		Tag:           "zigzag64,1006,opt,name=optional_sint64",
64		Filename:      "internal/testprotos/test3/test_extension.proto",
65	},
66	{
67		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
68		ExtensionType: (*uint32)(nil),
69		Field:         1007,
70		Name:          "goproto.proto.test3.optional_fixed32",
71		Tag:           "fixed32,1007,opt,name=optional_fixed32",
72		Filename:      "internal/testprotos/test3/test_extension.proto",
73	},
74	{
75		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
76		ExtensionType: (*uint64)(nil),
77		Field:         1008,
78		Name:          "goproto.proto.test3.optional_fixed64",
79		Tag:           "fixed64,1008,opt,name=optional_fixed64",
80		Filename:      "internal/testprotos/test3/test_extension.proto",
81	},
82	{
83		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
84		ExtensionType: (*int32)(nil),
85		Field:         1009,
86		Name:          "goproto.proto.test3.optional_sfixed32",
87		Tag:           "fixed32,1009,opt,name=optional_sfixed32",
88		Filename:      "internal/testprotos/test3/test_extension.proto",
89	},
90	{
91		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
92		ExtensionType: (*int64)(nil),
93		Field:         1010,
94		Name:          "goproto.proto.test3.optional_sfixed64",
95		Tag:           "fixed64,1010,opt,name=optional_sfixed64",
96		Filename:      "internal/testprotos/test3/test_extension.proto",
97	},
98	{
99		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
100		ExtensionType: (*float32)(nil),
101		Field:         1011,
102		Name:          "goproto.proto.test3.optional_float",
103		Tag:           "fixed32,1011,opt,name=optional_float",
104		Filename:      "internal/testprotos/test3/test_extension.proto",
105	},
106	{
107		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
108		ExtensionType: (*float64)(nil),
109		Field:         1012,
110		Name:          "goproto.proto.test3.optional_double",
111		Tag:           "fixed64,1012,opt,name=optional_double",
112		Filename:      "internal/testprotos/test3/test_extension.proto",
113	},
114	{
115		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
116		ExtensionType: (*bool)(nil),
117		Field:         1013,
118		Name:          "goproto.proto.test3.optional_bool",
119		Tag:           "varint,1013,opt,name=optional_bool",
120		Filename:      "internal/testprotos/test3/test_extension.proto",
121	},
122	{
123		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
124		ExtensionType: (*string)(nil),
125		Field:         1014,
126		Name:          "goproto.proto.test3.optional_string",
127		Tag:           "bytes,1014,opt,name=optional_string",
128		Filename:      "internal/testprotos/test3/test_extension.proto",
129	},
130	{
131		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
132		ExtensionType: ([]byte)(nil),
133		Field:         1015,
134		Name:          "goproto.proto.test3.optional_bytes",
135		Tag:           "bytes,1015,opt,name=optional_bytes",
136		Filename:      "internal/testprotos/test3/test_extension.proto",
137	},
138	{
139		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
140		ExtensionType: (*ForeignMessage)(nil),
141		Field:         1016,
142		Name:          "goproto.proto.test3.optional_foreign_message",
143		Tag:           "bytes,1016,opt,name=optional_foreign_message",
144		Filename:      "internal/testprotos/test3/test_extension.proto",
145	},
146	{
147		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
148		ExtensionType: (*ForeignEnum)(nil),
149		Field:         1017,
150		Name:          "goproto.proto.test3.optional_foreign_enum",
151		Tag:           "varint,1017,opt,name=optional_foreign_enum,enum=goproto.proto.test3.ForeignEnum",
152		Filename:      "internal/testprotos/test3/test_extension.proto",
153	},
154	{
155		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
156		ExtensionType: (*int32)(nil),
157		Field:         2001,
158		Name:          "goproto.proto.test3.optional_optional_int32",
159		Tag:           "varint,2001,opt,name=optional_optional_int32",
160		Filename:      "internal/testprotos/test3/test_extension.proto",
161	},
162	{
163		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
164		ExtensionType: (*int64)(nil),
165		Field:         2002,
166		Name:          "goproto.proto.test3.optional_optional_int64",
167		Tag:           "varint,2002,opt,name=optional_optional_int64",
168		Filename:      "internal/testprotos/test3/test_extension.proto",
169	},
170	{
171		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
172		ExtensionType: (*uint32)(nil),
173		Field:         2003,
174		Name:          "goproto.proto.test3.optional_optional_uint32",
175		Tag:           "varint,2003,opt,name=optional_optional_uint32",
176		Filename:      "internal/testprotos/test3/test_extension.proto",
177	},
178	{
179		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
180		ExtensionType: (*uint64)(nil),
181		Field:         2004,
182		Name:          "goproto.proto.test3.optional_optional_uint64",
183		Tag:           "varint,2004,opt,name=optional_optional_uint64",
184		Filename:      "internal/testprotos/test3/test_extension.proto",
185	},
186	{
187		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
188		ExtensionType: (*int32)(nil),
189		Field:         2005,
190		Name:          "goproto.proto.test3.optional_optional_sint32",
191		Tag:           "zigzag32,2005,opt,name=optional_optional_sint32",
192		Filename:      "internal/testprotos/test3/test_extension.proto",
193	},
194	{
195		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
196		ExtensionType: (*int64)(nil),
197		Field:         2006,
198		Name:          "goproto.proto.test3.optional_optional_sint64",
199		Tag:           "zigzag64,2006,opt,name=optional_optional_sint64",
200		Filename:      "internal/testprotos/test3/test_extension.proto",
201	},
202	{
203		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
204		ExtensionType: (*uint32)(nil),
205		Field:         2007,
206		Name:          "goproto.proto.test3.optional_optional_fixed32",
207		Tag:           "fixed32,2007,opt,name=optional_optional_fixed32",
208		Filename:      "internal/testprotos/test3/test_extension.proto",
209	},
210	{
211		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
212		ExtensionType: (*uint64)(nil),
213		Field:         2008,
214		Name:          "goproto.proto.test3.optional_optional_fixed64",
215		Tag:           "fixed64,2008,opt,name=optional_optional_fixed64",
216		Filename:      "internal/testprotos/test3/test_extension.proto",
217	},
218	{
219		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
220		ExtensionType: (*int32)(nil),
221		Field:         2009,
222		Name:          "goproto.proto.test3.optional_optional_sfixed32",
223		Tag:           "fixed32,2009,opt,name=optional_optional_sfixed32",
224		Filename:      "internal/testprotos/test3/test_extension.proto",
225	},
226	{
227		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
228		ExtensionType: (*int64)(nil),
229		Field:         2010,
230		Name:          "goproto.proto.test3.optional_optional_sfixed64",
231		Tag:           "fixed64,2010,opt,name=optional_optional_sfixed64",
232		Filename:      "internal/testprotos/test3/test_extension.proto",
233	},
234	{
235		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
236		ExtensionType: (*float32)(nil),
237		Field:         2011,
238		Name:          "goproto.proto.test3.optional_optional_float",
239		Tag:           "fixed32,2011,opt,name=optional_optional_float",
240		Filename:      "internal/testprotos/test3/test_extension.proto",
241	},
242	{
243		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
244		ExtensionType: (*float64)(nil),
245		Field:         2012,
246		Name:          "goproto.proto.test3.optional_optional_double",
247		Tag:           "fixed64,2012,opt,name=optional_optional_double",
248		Filename:      "internal/testprotos/test3/test_extension.proto",
249	},
250	{
251		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
252		ExtensionType: (*bool)(nil),
253		Field:         2013,
254		Name:          "goproto.proto.test3.optional_optional_bool",
255		Tag:           "varint,2013,opt,name=optional_optional_bool",
256		Filename:      "internal/testprotos/test3/test_extension.proto",
257	},
258	{
259		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
260		ExtensionType: (*string)(nil),
261		Field:         2014,
262		Name:          "goproto.proto.test3.optional_optional_string",
263		Tag:           "bytes,2014,opt,name=optional_optional_string",
264		Filename:      "internal/testprotos/test3/test_extension.proto",
265	},
266	{
267		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
268		ExtensionType: ([]byte)(nil),
269		Field:         2015,
270		Name:          "goproto.proto.test3.optional_optional_bytes",
271		Tag:           "bytes,2015,opt,name=optional_optional_bytes",
272		Filename:      "internal/testprotos/test3/test_extension.proto",
273	},
274	{
275		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
276		ExtensionType: (*ForeignMessage)(nil),
277		Field:         2016,
278		Name:          "goproto.proto.test3.optional_optional_foreign_message",
279		Tag:           "bytes,2016,opt,name=optional_optional_foreign_message",
280		Filename:      "internal/testprotos/test3/test_extension.proto",
281	},
282	{
283		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
284		ExtensionType: (*ForeignEnum)(nil),
285		Field:         2017,
286		Name:          "goproto.proto.test3.optional_optional_foreign_enum",
287		Tag:           "varint,2017,opt,name=optional_optional_foreign_enum,enum=goproto.proto.test3.ForeignEnum",
288		Filename:      "internal/testprotos/test3/test_extension.proto",
289	},
290}
291
292// Extension fields to descriptorpb.MessageOptions.
293var (
294	// optional int32 optional_int32 = 1001;
295	E_OptionalInt32 = &file_internal_testprotos_test3_test_extension_proto_extTypes[0]
296	// optional int64 optional_int64 = 1002;
297	E_OptionalInt64 = &file_internal_testprotos_test3_test_extension_proto_extTypes[1]
298	// optional uint32 optional_uint32 = 1003;
299	E_OptionalUint32 = &file_internal_testprotos_test3_test_extension_proto_extTypes[2]
300	// optional uint64 optional_uint64 = 1004;
301	E_OptionalUint64 = &file_internal_testprotos_test3_test_extension_proto_extTypes[3]
302	// optional sint32 optional_sint32 = 1005;
303	E_OptionalSint32 = &file_internal_testprotos_test3_test_extension_proto_extTypes[4]
304	// optional sint64 optional_sint64 = 1006;
305	E_OptionalSint64 = &file_internal_testprotos_test3_test_extension_proto_extTypes[5]
306	// optional fixed32 optional_fixed32 = 1007;
307	E_OptionalFixed32 = &file_internal_testprotos_test3_test_extension_proto_extTypes[6]
308	// optional fixed64 optional_fixed64 = 1008;
309	E_OptionalFixed64 = &file_internal_testprotos_test3_test_extension_proto_extTypes[7]
310	// optional sfixed32 optional_sfixed32 = 1009;
311	E_OptionalSfixed32 = &file_internal_testprotos_test3_test_extension_proto_extTypes[8]
312	// optional sfixed64 optional_sfixed64 = 1010;
313	E_OptionalSfixed64 = &file_internal_testprotos_test3_test_extension_proto_extTypes[9]
314	// optional float optional_float = 1011;
315	E_OptionalFloat = &file_internal_testprotos_test3_test_extension_proto_extTypes[10]
316	// optional double optional_double = 1012;
317	E_OptionalDouble = &file_internal_testprotos_test3_test_extension_proto_extTypes[11]
318	// optional bool optional_bool = 1013;
319	E_OptionalBool = &file_internal_testprotos_test3_test_extension_proto_extTypes[12]
320	// optional string optional_string = 1014;
321	E_OptionalString = &file_internal_testprotos_test3_test_extension_proto_extTypes[13]
322	// optional bytes optional_bytes = 1015;
323	E_OptionalBytes = &file_internal_testprotos_test3_test_extension_proto_extTypes[14]
324	// optional goproto.proto.test3.ForeignMessage optional_foreign_message = 1016;
325	E_OptionalForeignMessage = &file_internal_testprotos_test3_test_extension_proto_extTypes[15]
326	// optional goproto.proto.test3.ForeignEnum optional_foreign_enum = 1017;
327	E_OptionalForeignEnum = &file_internal_testprotos_test3_test_extension_proto_extTypes[16]
328	// optional int32 optional_optional_int32 = 2001;
329	E_OptionalOptionalInt32 = &file_internal_testprotos_test3_test_extension_proto_extTypes[17]
330	// optional int64 optional_optional_int64 = 2002;
331	E_OptionalOptionalInt64 = &file_internal_testprotos_test3_test_extension_proto_extTypes[18]
332	// optional uint32 optional_optional_uint32 = 2003;
333	E_OptionalOptionalUint32 = &file_internal_testprotos_test3_test_extension_proto_extTypes[19]
334	// optional uint64 optional_optional_uint64 = 2004;
335	E_OptionalOptionalUint64 = &file_internal_testprotos_test3_test_extension_proto_extTypes[20]
336	// optional sint32 optional_optional_sint32 = 2005;
337	E_OptionalOptionalSint32 = &file_internal_testprotos_test3_test_extension_proto_extTypes[21]
338	// optional sint64 optional_optional_sint64 = 2006;
339	E_OptionalOptionalSint64 = &file_internal_testprotos_test3_test_extension_proto_extTypes[22]
340	// optional fixed32 optional_optional_fixed32 = 2007;
341	E_OptionalOptionalFixed32 = &file_internal_testprotos_test3_test_extension_proto_extTypes[23]
342	// optional fixed64 optional_optional_fixed64 = 2008;
343	E_OptionalOptionalFixed64 = &file_internal_testprotos_test3_test_extension_proto_extTypes[24]
344	// optional sfixed32 optional_optional_sfixed32 = 2009;
345	E_OptionalOptionalSfixed32 = &file_internal_testprotos_test3_test_extension_proto_extTypes[25]
346	// optional sfixed64 optional_optional_sfixed64 = 2010;
347	E_OptionalOptionalSfixed64 = &file_internal_testprotos_test3_test_extension_proto_extTypes[26]
348	// optional float optional_optional_float = 2011;
349	E_OptionalOptionalFloat = &file_internal_testprotos_test3_test_extension_proto_extTypes[27]
350	// optional double optional_optional_double = 2012;
351	E_OptionalOptionalDouble = &file_internal_testprotos_test3_test_extension_proto_extTypes[28]
352	// optional bool optional_optional_bool = 2013;
353	E_OptionalOptionalBool = &file_internal_testprotos_test3_test_extension_proto_extTypes[29]
354	// optional string optional_optional_string = 2014;
355	E_OptionalOptionalString = &file_internal_testprotos_test3_test_extension_proto_extTypes[30]
356	// optional bytes optional_optional_bytes = 2015;
357	E_OptionalOptionalBytes = &file_internal_testprotos_test3_test_extension_proto_extTypes[31]
358	// optional goproto.proto.test3.ForeignMessage optional_optional_foreign_message = 2016;
359	E_OptionalOptionalForeignMessage = &file_internal_testprotos_test3_test_extension_proto_extTypes[32]
360	// optional goproto.proto.test3.ForeignEnum optional_optional_foreign_enum = 2017;
361	E_OptionalOptionalForeignEnum = &file_internal_testprotos_test3_test_extension_proto_extTypes[33]
362)
363
364var File_internal_testprotos_test3_test_extension_proto protoreflect.FileDescriptor
365
366var file_internal_testprotos_test3_test_extension_proto_rawDesc = []byte{
367	0x0a, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x70,
368	0x72, 0x6f, 0x74, 0x6f, 0x73, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x33, 0x2f, 0x74, 0x65, 0x73, 0x74,
369	0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
370	0x12, 0x13, 0x67, 0x6f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e,
371	0x74, 0x65, 0x73, 0x74, 0x33, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72,
372	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f,
373	0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x24, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61,
374	0x6c, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x2f, 0x74, 0x65, 0x73,
375	0x74, 0x33, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x3a, 0x47, 0x0a,
376	0x0e, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x12,
377	0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
378	0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
379	0x18, 0xe9, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61,
380	0x6c, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x3a, 0x47, 0x0a, 0x0e, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
381	0x61, 0x6c, 0x5f, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
382	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61,
383	0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xea, 0x07, 0x20, 0x01, 0x28, 0x03,
384	0x52, 0x0d, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x3a,
385	0x49, 0x0a, 0x0f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x75, 0x69, 0x6e, 0x74,
386	0x33, 0x32, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
387	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69,
388	0x6f, 0x6e, 0x73, 0x18, 0xeb, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6f, 0x70, 0x74, 0x69,
389	0x6f, 0x6e, 0x61, 0x6c, 0x55, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x3a, 0x49, 0x0a, 0x0f, 0x6f, 0x70,
390	0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x12, 0x1f, 0x2e,
391	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
392	0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xec,
393	0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x55,
394	0x69, 0x6e, 0x74, 0x36, 0x34, 0x3a, 0x49, 0x0a, 0x0f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61,
395	0x6c, 0x5f, 0x73, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
396	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61,
397	0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xed, 0x07, 0x20, 0x01, 0x28, 0x11,
398	0x52, 0x0e, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x69, 0x6e, 0x74, 0x33, 0x32,
399	0x3a, 0x49, 0x0a, 0x0f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x6e,
400	0x74, 0x36, 0x34, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
401	0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74,
402	0x69, 0x6f, 0x6e, 0x73, 0x18, 0xee, 0x07, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0e, 0x6f, 0x70, 0x74,
403	0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x3a, 0x4b, 0x0a, 0x10, 0x6f,
404	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x12,
405	0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
406	0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
407	0x18, 0xef, 0x07, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61,
408	0x6c, 0x46, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x3a, 0x4b, 0x0a, 0x10, 0x6f, 0x70, 0x74, 0x69,
409	0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x12, 0x1f, 0x2e, 0x67,
410	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d,
411	0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xf0, 0x07,
412	0x20, 0x01, 0x28, 0x06, 0x52, 0x0f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x46, 0x69,
413	0x78, 0x65, 0x64, 0x36, 0x34, 0x3a, 0x4d, 0x0a, 0x11, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61,
414	0x6c, 0x5f, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f,
415	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73,
416	0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xf1, 0x07, 0x20, 0x01,
417	0x28, 0x0f, 0x52, 0x10, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x66, 0x69, 0x78,
418	0x65, 0x64, 0x33, 0x32, 0x3a, 0x4d, 0x0a, 0x11, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c,
419	0x5f, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
420	0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73,
421	0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xf2, 0x07, 0x20, 0x01, 0x28,
422	0x10, 0x52, 0x10, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x66, 0x69, 0x78, 0x65,
423	0x64, 0x36, 0x34, 0x3a, 0x47, 0x0a, 0x0e, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f,
424	0x66, 0x6c, 0x6f, 0x61, 0x74, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
425	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f,
426	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xf3, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x6f,
427	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x3a, 0x49, 0x0a, 0x0f,
428	0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x12,
429	0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
430	0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
431	0x18, 0xf4, 0x07, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0e, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61,
432	0x6c, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x3a, 0x45, 0x0a, 0x0d, 0x6f, 0x70, 0x74, 0x69, 0x6f,
433	0x6e, 0x61, 0x6c, 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
434	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61,
435	0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xf5, 0x07, 0x20, 0x01, 0x28, 0x08,
436	0x52, 0x0c, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x42, 0x6f, 0x6f, 0x6c, 0x3a, 0x49,
437	0x0a, 0x0f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e,
438	0x67, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
439	0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f,
440	0x6e, 0x73, 0x18, 0xf6, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x70, 0x74, 0x69, 0x6f,
441	0x6e, 0x61, 0x6c, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x3a, 0x47, 0x0a, 0x0e, 0x6f, 0x70, 0x74,
442	0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x1f, 0x2e, 0x67, 0x6f,
443	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65,
444	0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xf7, 0x07, 0x20,
445	0x01, 0x28, 0x0c, 0x52, 0x0d, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x42, 0x79, 0x74,
446	0x65, 0x73, 0x3a, 0x7f, 0x0a, 0x18, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x66,
447	0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1f,
448	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
449	0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18,
450	0xf8, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x70, 0x72, 0x6f, 0x74, 0x6f,
451	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x33, 0x2e, 0x46, 0x6f, 0x72,
452	0x65, 0x69, 0x67, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x16, 0x6f, 0x70, 0x74,
453	0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x4d, 0x65, 0x73, 0x73,
454	0x61, 0x67, 0x65, 0x3a, 0x76, 0x0a, 0x15, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f,
455	0x66, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x5f, 0x65, 0x6e, 0x75, 0x6d, 0x12, 0x1f, 0x2e, 0x67,
456	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d,
457	0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xf9, 0x07,
458	0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x70,
459	0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x33, 0x2e, 0x46, 0x6f, 0x72, 0x65, 0x69,
460	0x67, 0x6e, 0x45, 0x6e, 0x75, 0x6d, 0x52, 0x13, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c,
461	0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x45, 0x6e, 0x75, 0x6d, 0x3a, 0x5b, 0x0a, 0x17, 0x6f,
462	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c,
463	0x5f, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
464	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
465	0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xd1, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x15,
466	0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c,
467	0x49, 0x6e, 0x74, 0x33, 0x32, 0x88, 0x01, 0x01, 0x3a, 0x5b, 0x0a, 0x17, 0x6f, 0x70, 0x74, 0x69,
468	0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x69, 0x6e,
469	0x74, 0x36, 0x34, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
470	0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74,
471	0x69, 0x6f, 0x6e, 0x73, 0x18, 0xd2, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x15, 0x6f, 0x70, 0x74,
472	0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x49, 0x6e, 0x74,
473	0x36, 0x34, 0x88, 0x01, 0x01, 0x3a, 0x5d, 0x0a, 0x18, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61,
474	0x6c, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x75, 0x69, 0x6e, 0x74, 0x33,
475	0x32, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
476	0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f,
477	0x6e, 0x73, 0x18, 0xd3, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x16, 0x6f, 0x70, 0x74, 0x69, 0x6f,
478	0x6e, 0x61, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x55, 0x69, 0x6e, 0x74, 0x33,
479	0x32, 0x88, 0x01, 0x01, 0x3a, 0x5d, 0x0a, 0x18, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c,
480	0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34,
481	0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
482	0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
483	0x73, 0x18, 0xd4, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x52, 0x16, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
484	0x61, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x55, 0x69, 0x6e, 0x74, 0x36, 0x34,
485	0x88, 0x01, 0x01, 0x3a, 0x5d, 0x0a, 0x18, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f,
486	0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x12,
487	0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
488	0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
489	0x18, 0xd5, 0x0f, 0x20, 0x01, 0x28, 0x11, 0x52, 0x16, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61,
490	0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x88,
491	0x01, 0x01, 0x3a, 0x5d, 0x0a, 0x18, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6f,
492	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x12, 0x1f,
493	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
494	0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18,
495	0xd6, 0x0f, 0x20, 0x01, 0x28, 0x12, 0x52, 0x16, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c,
496	0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x88, 0x01,
497	0x01, 0x3a, 0x5f, 0x0a, 0x19, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6f, 0x70,
498	0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x12, 0x1f,
499	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
500	0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18,
501	0xd7, 0x0f, 0x20, 0x01, 0x28, 0x07, 0x52, 0x17, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c,
502	0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x46, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x88,
503	0x01, 0x01, 0x3a, 0x5f, 0x0a, 0x19, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6f,
504	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x12,
505	0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
506	0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
507	0x18, 0xd8, 0x0f, 0x20, 0x01, 0x28, 0x06, 0x52, 0x17, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61,
508	0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x46, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34,
509	0x88, 0x01, 0x01, 0x3a, 0x61, 0x0a, 0x1a, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f,
510	0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33,
511	0x32, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
512	0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f,
513	0x6e, 0x73, 0x18, 0xd9, 0x0f, 0x20, 0x01, 0x28, 0x0f, 0x52, 0x18, 0x6f, 0x70, 0x74, 0x69, 0x6f,
514	0x6e, 0x61, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x66, 0x69, 0x78, 0x65,
515	0x64, 0x33, 0x32, 0x88, 0x01, 0x01, 0x3a, 0x61, 0x0a, 0x1a, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
516	0x61, 0x6c, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x73, 0x66, 0x69, 0x78,
517	0x65, 0x64, 0x36, 0x34, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
518	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70,
519	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xda, 0x0f, 0x20, 0x01, 0x28, 0x10, 0x52, 0x18, 0x6f, 0x70,
520	0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x66,
521	0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x88, 0x01, 0x01, 0x3a, 0x5b, 0x0a, 0x17, 0x6f, 0x70, 0x74,
522	0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x66,
523	0x6c, 0x6f, 0x61, 0x74, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
524	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70,
525	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xdb, 0x0f, 0x20, 0x01, 0x28, 0x02, 0x52, 0x15, 0x6f, 0x70,
526	0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x46, 0x6c,
527	0x6f, 0x61, 0x74, 0x88, 0x01, 0x01, 0x3a, 0x5d, 0x0a, 0x18, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
528	0x61, 0x6c, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x64, 0x6f, 0x75, 0x62,
529	0x6c, 0x65, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
530	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69,
531	0x6f, 0x6e, 0x73, 0x18, 0xdc, 0x0f, 0x20, 0x01, 0x28, 0x01, 0x52, 0x16, 0x6f, 0x70, 0x74, 0x69,
532	0x6f, 0x6e, 0x61, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x44, 0x6f, 0x75, 0x62,
533	0x6c, 0x65, 0x88, 0x01, 0x01, 0x3a, 0x59, 0x0a, 0x16, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61,
534	0x6c, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x12,
535	0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
536	0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
537	0x18, 0xdd, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61,
538	0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x42, 0x6f, 0x6f, 0x6c, 0x88, 0x01, 0x01,
539	0x3a, 0x5d, 0x0a, 0x18, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6f, 0x70, 0x74,
540	0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x1f, 0x2e, 0x67,
541	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d,
542	0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xde, 0x0f,
543	0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4f, 0x70,
544	0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x3a,
545	0x5b, 0x0a, 0x17, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6f, 0x70, 0x74, 0x69,
546	0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f,
547	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73,
548	0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xdf, 0x0f, 0x20, 0x01,
549	0x28, 0x0c, 0x52, 0x15, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4f, 0x70, 0x74, 0x69,
550	0x6f, 0x6e, 0x61, 0x6c, 0x42, 0x79, 0x74, 0x65, 0x73, 0x88, 0x01, 0x01, 0x3a, 0x93, 0x01, 0x0a,
551	0x21, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
552	0x61, 0x6c, 0x5f, 0x66, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61,
553	0x67, 0x65, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
554	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69,
555	0x6f, 0x6e, 0x73, 0x18, 0xe0, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x70,
556	0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x33,
557	0x2e, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52,
558	0x1e, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61,
559	0x6c, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x88,
560	0x01, 0x01, 0x3a, 0x8a, 0x01, 0x0a, 0x1e, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f,
561	0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x66, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e,
562	0x5f, 0x65, 0x6e, 0x75, 0x6d, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
563	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f,
564	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xe1, 0x0f, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e,
565	0x67, 0x6f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x74, 0x65,
566	0x73, 0x74, 0x33, 0x2e, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x45, 0x6e, 0x75, 0x6d, 0x52,
567	0x1b, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61,
568	0x6c, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x45, 0x6e, 0x75, 0x6d, 0x88, 0x01, 0x01, 0x42,
569	0x36, 0x5a, 0x34, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67,
570	0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x69, 0x6e,
571	0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f,
572	0x73, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x33, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
573}
574
575var file_internal_testprotos_test3_test_extension_proto_goTypes = []interface{}{
576	(*descriptorpb.MessageOptions)(nil), // 0: google.protobuf.MessageOptions
577	(*ForeignMessage)(nil),              // 1: goproto.proto.test3.ForeignMessage
578	(ForeignEnum)(0),                    // 2: goproto.proto.test3.ForeignEnum
579}
580var file_internal_testprotos_test3_test_extension_proto_depIdxs = []int32{
581	0,  // 0: goproto.proto.test3.optional_int32:extendee -> google.protobuf.MessageOptions
582	0,  // 1: goproto.proto.test3.optional_int64:extendee -> google.protobuf.MessageOptions
583	0,  // 2: goproto.proto.test3.optional_uint32:extendee -> google.protobuf.MessageOptions
584	0,  // 3: goproto.proto.test3.optional_uint64:extendee -> google.protobuf.MessageOptions
585	0,  // 4: goproto.proto.test3.optional_sint32:extendee -> google.protobuf.MessageOptions
586	0,  // 5: goproto.proto.test3.optional_sint64:extendee -> google.protobuf.MessageOptions
587	0,  // 6: goproto.proto.test3.optional_fixed32:extendee -> google.protobuf.MessageOptions
588	0,  // 7: goproto.proto.test3.optional_fixed64:extendee -> google.protobuf.MessageOptions
589	0,  // 8: goproto.proto.test3.optional_sfixed32:extendee -> google.protobuf.MessageOptions
590	0,  // 9: goproto.proto.test3.optional_sfixed64:extendee -> google.protobuf.MessageOptions
591	0,  // 10: goproto.proto.test3.optional_float:extendee -> google.protobuf.MessageOptions
592	0,  // 11: goproto.proto.test3.optional_double:extendee -> google.protobuf.MessageOptions
593	0,  // 12: goproto.proto.test3.optional_bool:extendee -> google.protobuf.MessageOptions
594	0,  // 13: goproto.proto.test3.optional_string:extendee -> google.protobuf.MessageOptions
595	0,  // 14: goproto.proto.test3.optional_bytes:extendee -> google.protobuf.MessageOptions
596	0,  // 15: goproto.proto.test3.optional_foreign_message:extendee -> google.protobuf.MessageOptions
597	0,  // 16: goproto.proto.test3.optional_foreign_enum:extendee -> google.protobuf.MessageOptions
598	0,  // 17: goproto.proto.test3.optional_optional_int32:extendee -> google.protobuf.MessageOptions
599	0,  // 18: goproto.proto.test3.optional_optional_int64:extendee -> google.protobuf.MessageOptions
600	0,  // 19: goproto.proto.test3.optional_optional_uint32:extendee -> google.protobuf.MessageOptions
601	0,  // 20: goproto.proto.test3.optional_optional_uint64:extendee -> google.protobuf.MessageOptions
602	0,  // 21: goproto.proto.test3.optional_optional_sint32:extendee -> google.protobuf.MessageOptions
603	0,  // 22: goproto.proto.test3.optional_optional_sint64:extendee -> google.protobuf.MessageOptions
604	0,  // 23: goproto.proto.test3.optional_optional_fixed32:extendee -> google.protobuf.MessageOptions
605	0,  // 24: goproto.proto.test3.optional_optional_fixed64:extendee -> google.protobuf.MessageOptions
606	0,  // 25: goproto.proto.test3.optional_optional_sfixed32:extendee -> google.protobuf.MessageOptions
607	0,  // 26: goproto.proto.test3.optional_optional_sfixed64:extendee -> google.protobuf.MessageOptions
608	0,  // 27: goproto.proto.test3.optional_optional_float:extendee -> google.protobuf.MessageOptions
609	0,  // 28: goproto.proto.test3.optional_optional_double:extendee -> google.protobuf.MessageOptions
610	0,  // 29: goproto.proto.test3.optional_optional_bool:extendee -> google.protobuf.MessageOptions
611	0,  // 30: goproto.proto.test3.optional_optional_string:extendee -> google.protobuf.MessageOptions
612	0,  // 31: goproto.proto.test3.optional_optional_bytes:extendee -> google.protobuf.MessageOptions
613	0,  // 32: goproto.proto.test3.optional_optional_foreign_message:extendee -> google.protobuf.MessageOptions
614	0,  // 33: goproto.proto.test3.optional_optional_foreign_enum:extendee -> google.protobuf.MessageOptions
615	1,  // 34: goproto.proto.test3.optional_foreign_message:type_name -> goproto.proto.test3.ForeignMessage
616	2,  // 35: goproto.proto.test3.optional_foreign_enum:type_name -> goproto.proto.test3.ForeignEnum
617	1,  // 36: goproto.proto.test3.optional_optional_foreign_message:type_name -> goproto.proto.test3.ForeignMessage
618	2,  // 37: goproto.proto.test3.optional_optional_foreign_enum:type_name -> goproto.proto.test3.ForeignEnum
619	38, // [38:38] is the sub-list for method output_type
620	38, // [38:38] is the sub-list for method input_type
621	34, // [34:38] is the sub-list for extension type_name
622	0,  // [0:34] is the sub-list for extension extendee
623	0,  // [0:0] is the sub-list for field type_name
624}
625
626func init() { file_internal_testprotos_test3_test_extension_proto_init() }
627func file_internal_testprotos_test3_test_extension_proto_init() {
628	if File_internal_testprotos_test3_test_extension_proto != nil {
629		return
630	}
631	file_internal_testprotos_test3_test_proto_init()
632	type x struct{}
633	out := protoimpl.TypeBuilder{
634		File: protoimpl.DescBuilder{
635			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
636			RawDescriptor: file_internal_testprotos_test3_test_extension_proto_rawDesc,
637			NumEnums:      0,
638			NumMessages:   0,
639			NumExtensions: 34,
640			NumServices:   0,
641		},
642		GoTypes:           file_internal_testprotos_test3_test_extension_proto_goTypes,
643		DependencyIndexes: file_internal_testprotos_test3_test_extension_proto_depIdxs,
644		ExtensionInfos:    file_internal_testprotos_test3_test_extension_proto_extTypes,
645	}.Build()
646	File_internal_testprotos_test3_test_extension_proto = out.File
647	file_internal_testprotos_test3_test_extension_proto_rawDesc = nil
648	file_internal_testprotos_test3_test_extension_proto_goTypes = nil
649	file_internal_testprotos_test3_test_extension_proto_depIdxs = nil
650}
651