OSDN Git Service

Hulk did something
[bytom/vapor.git] / vendor / github.com / golang / protobuf / protoc-gen-go / descriptor / descriptor.pb.go
1 // Code generated by protoc-gen-go. DO NOT EDIT.
2 // source: google/protobuf/descriptor.proto
3
4 /*
5 Package descriptor is a generated protocol buffer package.
6
7 It is generated from these files:
8         google/protobuf/descriptor.proto
9
10 It has these top-level messages:
11         FileDescriptorSet
12         FileDescriptorProto
13         DescriptorProto
14         ExtensionRangeOptions
15         FieldDescriptorProto
16         OneofDescriptorProto
17         EnumDescriptorProto
18         EnumValueDescriptorProto
19         ServiceDescriptorProto
20         MethodDescriptorProto
21         FileOptions
22         MessageOptions
23         FieldOptions
24         OneofOptions
25         EnumOptions
26         EnumValueOptions
27         ServiceOptions
28         MethodOptions
29         UninterpretedOption
30         SourceCodeInfo
31         GeneratedCodeInfo
32 */
33 package descriptor
34
35 import proto "github.com/golang/protobuf/proto"
36 import fmt "fmt"
37 import math "math"
38
39 // Reference imports to suppress errors if they are not otherwise used.
40 var _ = proto.Marshal
41 var _ = fmt.Errorf
42 var _ = math.Inf
43
44 // This is a compile-time assertion to ensure that this generated file
45 // is compatible with the proto package it is being compiled against.
46 // A compilation error at this line likely means your copy of the
47 // proto package needs to be updated.
48 const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
49
50 type FieldDescriptorProto_Type int32
51
52 const (
53         // 0 is reserved for errors.
54         // Order is weird for historical reasons.
55         FieldDescriptorProto_TYPE_DOUBLE FieldDescriptorProto_Type = 1
56         FieldDescriptorProto_TYPE_FLOAT  FieldDescriptorProto_Type = 2
57         // Not ZigZag encoded.  Negative numbers take 10 bytes.  Use TYPE_SINT64 if
58         // negative values are likely.
59         FieldDescriptorProto_TYPE_INT64  FieldDescriptorProto_Type = 3
60         FieldDescriptorProto_TYPE_UINT64 FieldDescriptorProto_Type = 4
61         // Not ZigZag encoded.  Negative numbers take 10 bytes.  Use TYPE_SINT32 if
62         // negative values are likely.
63         FieldDescriptorProto_TYPE_INT32   FieldDescriptorProto_Type = 5
64         FieldDescriptorProto_TYPE_FIXED64 FieldDescriptorProto_Type = 6
65         FieldDescriptorProto_TYPE_FIXED32 FieldDescriptorProto_Type = 7
66         FieldDescriptorProto_TYPE_BOOL    FieldDescriptorProto_Type = 8
67         FieldDescriptorProto_TYPE_STRING  FieldDescriptorProto_Type = 9
68         // Tag-delimited aggregate.
69         // Group type is deprecated and not supported in proto3. However, Proto3
70         // implementations should still be able to parse the group wire format and
71         // treat group fields as unknown fields.
72         FieldDescriptorProto_TYPE_GROUP   FieldDescriptorProto_Type = 10
73         FieldDescriptorProto_TYPE_MESSAGE FieldDescriptorProto_Type = 11
74         // New in version 2.
75         FieldDescriptorProto_TYPE_BYTES    FieldDescriptorProto_Type = 12
76         FieldDescriptorProto_TYPE_UINT32   FieldDescriptorProto_Type = 13
77         FieldDescriptorProto_TYPE_ENUM     FieldDescriptorProto_Type = 14
78         FieldDescriptorProto_TYPE_SFIXED32 FieldDescriptorProto_Type = 15
79         FieldDescriptorProto_TYPE_SFIXED64 FieldDescriptorProto_Type = 16
80         FieldDescriptorProto_TYPE_SINT32   FieldDescriptorProto_Type = 17
81         FieldDescriptorProto_TYPE_SINT64   FieldDescriptorProto_Type = 18
82 )
83
84 var FieldDescriptorProto_Type_name = map[int32]string{
85         1:  "TYPE_DOUBLE",
86         2:  "TYPE_FLOAT",
87         3:  "TYPE_INT64",
88         4:  "TYPE_UINT64",
89         5:  "TYPE_INT32",
90         6:  "TYPE_FIXED64",
91         7:  "TYPE_FIXED32",
92         8:  "TYPE_BOOL",
93         9:  "TYPE_STRING",
94         10: "TYPE_GROUP",
95         11: "TYPE_MESSAGE",
96         12: "TYPE_BYTES",
97         13: "TYPE_UINT32",
98         14: "TYPE_ENUM",
99         15: "TYPE_SFIXED32",
100         16: "TYPE_SFIXED64",
101         17: "TYPE_SINT32",
102         18: "TYPE_SINT64",
103 }
104 var FieldDescriptorProto_Type_value = map[string]int32{
105         "TYPE_DOUBLE":   1,
106         "TYPE_FLOAT":    2,
107         "TYPE_INT64":    3,
108         "TYPE_UINT64":   4,
109         "TYPE_INT32":    5,
110         "TYPE_FIXED64":  6,
111         "TYPE_FIXED32":  7,
112         "TYPE_BOOL":     8,
113         "TYPE_STRING":   9,
114         "TYPE_GROUP":    10,
115         "TYPE_MESSAGE":  11,
116         "TYPE_BYTES":    12,
117         "TYPE_UINT32":   13,
118         "TYPE_ENUM":     14,
119         "TYPE_SFIXED32": 15,
120         "TYPE_SFIXED64": 16,
121         "TYPE_SINT32":   17,
122         "TYPE_SINT64":   18,
123 }
124
125 func (x FieldDescriptorProto_Type) Enum() *FieldDescriptorProto_Type {
126         p := new(FieldDescriptorProto_Type)
127         *p = x
128         return p
129 }
130 func (x FieldDescriptorProto_Type) String() string {
131         return proto.EnumName(FieldDescriptorProto_Type_name, int32(x))
132 }
133 func (x *FieldDescriptorProto_Type) UnmarshalJSON(data []byte) error {
134         value, err := proto.UnmarshalJSONEnum(FieldDescriptorProto_Type_value, data, "FieldDescriptorProto_Type")
135         if err != nil {
136                 return err
137         }
138         *x = FieldDescriptorProto_Type(value)
139         return nil
140 }
141 func (FieldDescriptorProto_Type) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{4, 0} }
142
143 type FieldDescriptorProto_Label int32
144
145 const (
146         // 0 is reserved for errors
147         FieldDescriptorProto_LABEL_OPTIONAL FieldDescriptorProto_Label = 1
148         FieldDescriptorProto_LABEL_REQUIRED FieldDescriptorProto_Label = 2
149         FieldDescriptorProto_LABEL_REPEATED FieldDescriptorProto_Label = 3
150 )
151
152 var FieldDescriptorProto_Label_name = map[int32]string{
153         1: "LABEL_OPTIONAL",
154         2: "LABEL_REQUIRED",
155         3: "LABEL_REPEATED",
156 }
157 var FieldDescriptorProto_Label_value = map[string]int32{
158         "LABEL_OPTIONAL": 1,
159         "LABEL_REQUIRED": 2,
160         "LABEL_REPEATED": 3,
161 }
162
163 func (x FieldDescriptorProto_Label) Enum() *FieldDescriptorProto_Label {
164         p := new(FieldDescriptorProto_Label)
165         *p = x
166         return p
167 }
168 func (x FieldDescriptorProto_Label) String() string {
169         return proto.EnumName(FieldDescriptorProto_Label_name, int32(x))
170 }
171 func (x *FieldDescriptorProto_Label) UnmarshalJSON(data []byte) error {
172         value, err := proto.UnmarshalJSONEnum(FieldDescriptorProto_Label_value, data, "FieldDescriptorProto_Label")
173         if err != nil {
174                 return err
175         }
176         *x = FieldDescriptorProto_Label(value)
177         return nil
178 }
179 func (FieldDescriptorProto_Label) EnumDescriptor() ([]byte, []int) {
180         return fileDescriptor0, []int{4, 1}
181 }
182
183 // Generated classes can be optimized for speed or code size.
184 type FileOptions_OptimizeMode int32
185
186 const (
187         FileOptions_SPEED FileOptions_OptimizeMode = 1
188         // etc.
189         FileOptions_CODE_SIZE    FileOptions_OptimizeMode = 2
190         FileOptions_LITE_RUNTIME FileOptions_OptimizeMode = 3
191 )
192
193 var FileOptions_OptimizeMode_name = map[int32]string{
194         1: "SPEED",
195         2: "CODE_SIZE",
196         3: "LITE_RUNTIME",
197 }
198 var FileOptions_OptimizeMode_value = map[string]int32{
199         "SPEED":        1,
200         "CODE_SIZE":    2,
201         "LITE_RUNTIME": 3,
202 }
203
204 func (x FileOptions_OptimizeMode) Enum() *FileOptions_OptimizeMode {
205         p := new(FileOptions_OptimizeMode)
206         *p = x
207         return p
208 }
209 func (x FileOptions_OptimizeMode) String() string {
210         return proto.EnumName(FileOptions_OptimizeMode_name, int32(x))
211 }
212 func (x *FileOptions_OptimizeMode) UnmarshalJSON(data []byte) error {
213         value, err := proto.UnmarshalJSONEnum(FileOptions_OptimizeMode_value, data, "FileOptions_OptimizeMode")
214         if err != nil {
215                 return err
216         }
217         *x = FileOptions_OptimizeMode(value)
218         return nil
219 }
220 func (FileOptions_OptimizeMode) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{10, 0} }
221
222 type FieldOptions_CType int32
223
224 const (
225         // Default mode.
226         FieldOptions_STRING       FieldOptions_CType = 0
227         FieldOptions_CORD         FieldOptions_CType = 1
228         FieldOptions_STRING_PIECE FieldOptions_CType = 2
229 )
230
231 var FieldOptions_CType_name = map[int32]string{
232         0: "STRING",
233         1: "CORD",
234         2: "STRING_PIECE",
235 }
236 var FieldOptions_CType_value = map[string]int32{
237         "STRING":       0,
238         "CORD":         1,
239         "STRING_PIECE": 2,
240 }
241
242 func (x FieldOptions_CType) Enum() *FieldOptions_CType {
243         p := new(FieldOptions_CType)
244         *p = x
245         return p
246 }
247 func (x FieldOptions_CType) String() string {
248         return proto.EnumName(FieldOptions_CType_name, int32(x))
249 }
250 func (x *FieldOptions_CType) UnmarshalJSON(data []byte) error {
251         value, err := proto.UnmarshalJSONEnum(FieldOptions_CType_value, data, "FieldOptions_CType")
252         if err != nil {
253                 return err
254         }
255         *x = FieldOptions_CType(value)
256         return nil
257 }
258 func (FieldOptions_CType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{12, 0} }
259
260 type FieldOptions_JSType int32
261
262 const (
263         // Use the default type.
264         FieldOptions_JS_NORMAL FieldOptions_JSType = 0
265         // Use JavaScript strings.
266         FieldOptions_JS_STRING FieldOptions_JSType = 1
267         // Use JavaScript numbers.
268         FieldOptions_JS_NUMBER FieldOptions_JSType = 2
269 )
270
271 var FieldOptions_JSType_name = map[int32]string{
272         0: "JS_NORMAL",
273         1: "JS_STRING",
274         2: "JS_NUMBER",
275 }
276 var FieldOptions_JSType_value = map[string]int32{
277         "JS_NORMAL": 0,
278         "JS_STRING": 1,
279         "JS_NUMBER": 2,
280 }
281
282 func (x FieldOptions_JSType) Enum() *FieldOptions_JSType {
283         p := new(FieldOptions_JSType)
284         *p = x
285         return p
286 }
287 func (x FieldOptions_JSType) String() string {
288         return proto.EnumName(FieldOptions_JSType_name, int32(x))
289 }
290 func (x *FieldOptions_JSType) UnmarshalJSON(data []byte) error {
291         value, err := proto.UnmarshalJSONEnum(FieldOptions_JSType_value, data, "FieldOptions_JSType")
292         if err != nil {
293                 return err
294         }
295         *x = FieldOptions_JSType(value)
296         return nil
297 }
298 func (FieldOptions_JSType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{12, 1} }
299
300 // Is this method side-effect-free (or safe in HTTP parlance), or idempotent,
301 // or neither? HTTP based RPC implementation may choose GET verb for safe
302 // methods, and PUT verb for idempotent methods instead of the default POST.
303 type MethodOptions_IdempotencyLevel int32
304
305 const (
306         MethodOptions_IDEMPOTENCY_UNKNOWN MethodOptions_IdempotencyLevel = 0
307         MethodOptions_NO_SIDE_EFFECTS     MethodOptions_IdempotencyLevel = 1
308         MethodOptions_IDEMPOTENT          MethodOptions_IdempotencyLevel = 2
309 )
310
311 var MethodOptions_IdempotencyLevel_name = map[int32]string{
312         0: "IDEMPOTENCY_UNKNOWN",
313         1: "NO_SIDE_EFFECTS",
314         2: "IDEMPOTENT",
315 }
316 var MethodOptions_IdempotencyLevel_value = map[string]int32{
317         "IDEMPOTENCY_UNKNOWN": 0,
318         "NO_SIDE_EFFECTS":     1,
319         "IDEMPOTENT":          2,
320 }
321
322 func (x MethodOptions_IdempotencyLevel) Enum() *MethodOptions_IdempotencyLevel {
323         p := new(MethodOptions_IdempotencyLevel)
324         *p = x
325         return p
326 }
327 func (x MethodOptions_IdempotencyLevel) String() string {
328         return proto.EnumName(MethodOptions_IdempotencyLevel_name, int32(x))
329 }
330 func (x *MethodOptions_IdempotencyLevel) UnmarshalJSON(data []byte) error {
331         value, err := proto.UnmarshalJSONEnum(MethodOptions_IdempotencyLevel_value, data, "MethodOptions_IdempotencyLevel")
332         if err != nil {
333                 return err
334         }
335         *x = MethodOptions_IdempotencyLevel(value)
336         return nil
337 }
338 func (MethodOptions_IdempotencyLevel) EnumDescriptor() ([]byte, []int) {
339         return fileDescriptor0, []int{17, 0}
340 }
341
342 // The protocol compiler can output a FileDescriptorSet containing the .proto
343 // files it parses.
344 type FileDescriptorSet struct {
345         File             []*FileDescriptorProto `protobuf:"bytes,1,rep,name=file" json:"file,omitempty"`
346         XXX_unrecognized []byte                 `json:"-"`
347 }
348
349 func (m *FileDescriptorSet) Reset()                    { *m = FileDescriptorSet{} }
350 func (m *FileDescriptorSet) String() string            { return proto.CompactTextString(m) }
351 func (*FileDescriptorSet) ProtoMessage()               {}
352 func (*FileDescriptorSet) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }
353
354 func (m *FileDescriptorSet) GetFile() []*FileDescriptorProto {
355         if m != nil {
356                 return m.File
357         }
358         return nil
359 }
360
361 // Describes a complete .proto file.
362 type FileDescriptorProto struct {
363         Name    *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
364         Package *string `protobuf:"bytes,2,opt,name=package" json:"package,omitempty"`
365         // Names of files imported by this file.
366         Dependency []string `protobuf:"bytes,3,rep,name=dependency" json:"dependency,omitempty"`
367         // Indexes of the public imported files in the dependency list above.
368         PublicDependency []int32 `protobuf:"varint,10,rep,name=public_dependency,json=publicDependency" json:"public_dependency,omitempty"`
369         // Indexes of the weak imported files in the dependency list.
370         // For Google-internal migration only. Do not use.
371         WeakDependency []int32 `protobuf:"varint,11,rep,name=weak_dependency,json=weakDependency" json:"weak_dependency,omitempty"`
372         // All top-level definitions in this file.
373         MessageType []*DescriptorProto        `protobuf:"bytes,4,rep,name=message_type,json=messageType" json:"message_type,omitempty"`
374         EnumType    []*EnumDescriptorProto    `protobuf:"bytes,5,rep,name=enum_type,json=enumType" json:"enum_type,omitempty"`
375         Service     []*ServiceDescriptorProto `protobuf:"bytes,6,rep,name=service" json:"service,omitempty"`
376         Extension   []*FieldDescriptorProto   `protobuf:"bytes,7,rep,name=extension" json:"extension,omitempty"`
377         Options     *FileOptions              `protobuf:"bytes,8,opt,name=options" json:"options,omitempty"`
378         // This field contains optional information about the original source code.
379         // You may safely remove this entire field without harming runtime
380         // functionality of the descriptors -- the information is needed only by
381         // development tools.
382         SourceCodeInfo *SourceCodeInfo `protobuf:"bytes,9,opt,name=source_code_info,json=sourceCodeInfo" json:"source_code_info,omitempty"`
383         // The syntax of the proto file.
384         // The supported values are "proto2" and "proto3".
385         Syntax           *string `protobuf:"bytes,12,opt,name=syntax" json:"syntax,omitempty"`
386         XXX_unrecognized []byte  `json:"-"`
387 }
388
389 func (m *FileDescriptorProto) Reset()                    { *m = FileDescriptorProto{} }
390 func (m *FileDescriptorProto) String() string            { return proto.CompactTextString(m) }
391 func (*FileDescriptorProto) ProtoMessage()               {}
392 func (*FileDescriptorProto) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} }
393
394 func (m *FileDescriptorProto) GetName() string {
395         if m != nil && m.Name != nil {
396                 return *m.Name
397         }
398         return ""
399 }
400
401 func (m *FileDescriptorProto) GetPackage() string {
402         if m != nil && m.Package != nil {
403                 return *m.Package
404         }
405         return ""
406 }
407
408 func (m *FileDescriptorProto) GetDependency() []string {
409         if m != nil {
410                 return m.Dependency
411         }
412         return nil
413 }
414
415 func (m *FileDescriptorProto) GetPublicDependency() []int32 {
416         if m != nil {
417                 return m.PublicDependency
418         }
419         return nil
420 }
421
422 func (m *FileDescriptorProto) GetWeakDependency() []int32 {
423         if m != nil {
424                 return m.WeakDependency
425         }
426         return nil
427 }
428
429 func (m *FileDescriptorProto) GetMessageType() []*DescriptorProto {
430         if m != nil {
431                 return m.MessageType
432         }
433         return nil
434 }
435
436 func (m *FileDescriptorProto) GetEnumType() []*EnumDescriptorProto {
437         if m != nil {
438                 return m.EnumType
439         }
440         return nil
441 }
442
443 func (m *FileDescriptorProto) GetService() []*ServiceDescriptorProto {
444         if m != nil {
445                 return m.Service
446         }
447         return nil
448 }
449
450 func (m *FileDescriptorProto) GetExtension() []*FieldDescriptorProto {
451         if m != nil {
452                 return m.Extension
453         }
454         return nil
455 }
456
457 func (m *FileDescriptorProto) GetOptions() *FileOptions {
458         if m != nil {
459                 return m.Options
460         }
461         return nil
462 }
463
464 func (m *FileDescriptorProto) GetSourceCodeInfo() *SourceCodeInfo {
465         if m != nil {
466                 return m.SourceCodeInfo
467         }
468         return nil
469 }
470
471 func (m *FileDescriptorProto) GetSyntax() string {
472         if m != nil && m.Syntax != nil {
473                 return *m.Syntax
474         }
475         return ""
476 }
477
478 // Describes a message type.
479 type DescriptorProto struct {
480         Name           *string                           `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
481         Field          []*FieldDescriptorProto           `protobuf:"bytes,2,rep,name=field" json:"field,omitempty"`
482         Extension      []*FieldDescriptorProto           `protobuf:"bytes,6,rep,name=extension" json:"extension,omitempty"`
483         NestedType     []*DescriptorProto                `protobuf:"bytes,3,rep,name=nested_type,json=nestedType" json:"nested_type,omitempty"`
484         EnumType       []*EnumDescriptorProto            `protobuf:"bytes,4,rep,name=enum_type,json=enumType" json:"enum_type,omitempty"`
485         ExtensionRange []*DescriptorProto_ExtensionRange `protobuf:"bytes,5,rep,name=extension_range,json=extensionRange" json:"extension_range,omitempty"`
486         OneofDecl      []*OneofDescriptorProto           `protobuf:"bytes,8,rep,name=oneof_decl,json=oneofDecl" json:"oneof_decl,omitempty"`
487         Options        *MessageOptions                   `protobuf:"bytes,7,opt,name=options" json:"options,omitempty"`
488         ReservedRange  []*DescriptorProto_ReservedRange  `protobuf:"bytes,9,rep,name=reserved_range,json=reservedRange" json:"reserved_range,omitempty"`
489         // Reserved field names, which may not be used by fields in the same message.
490         // A given name may only be reserved once.
491         ReservedName     []string `protobuf:"bytes,10,rep,name=reserved_name,json=reservedName" json:"reserved_name,omitempty"`
492         XXX_unrecognized []byte   `json:"-"`
493 }
494
495 func (m *DescriptorProto) Reset()                    { *m = DescriptorProto{} }
496 func (m *DescriptorProto) String() string            { return proto.CompactTextString(m) }
497 func (*DescriptorProto) ProtoMessage()               {}
498 func (*DescriptorProto) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} }
499
500 func (m *DescriptorProto) GetName() string {
501         if m != nil && m.Name != nil {
502                 return *m.Name
503         }
504         return ""
505 }
506
507 func (m *DescriptorProto) GetField() []*FieldDescriptorProto {
508         if m != nil {
509                 return m.Field
510         }
511         return nil
512 }
513
514 func (m *DescriptorProto) GetExtension() []*FieldDescriptorProto {
515         if m != nil {
516                 return m.Extension
517         }
518         return nil
519 }
520
521 func (m *DescriptorProto) GetNestedType() []*DescriptorProto {
522         if m != nil {
523                 return m.NestedType
524         }
525         return nil
526 }
527
528 func (m *DescriptorProto) GetEnumType() []*EnumDescriptorProto {
529         if m != nil {
530                 return m.EnumType
531         }
532         return nil
533 }
534
535 func (m *DescriptorProto) GetExtensionRange() []*DescriptorProto_ExtensionRange {
536         if m != nil {
537                 return m.ExtensionRange
538         }
539         return nil
540 }
541
542 func (m *DescriptorProto) GetOneofDecl() []*OneofDescriptorProto {
543         if m != nil {
544                 return m.OneofDecl
545         }
546         return nil
547 }
548
549 func (m *DescriptorProto) GetOptions() *MessageOptions {
550         if m != nil {
551                 return m.Options
552         }
553         return nil
554 }
555
556 func (m *DescriptorProto) GetReservedRange() []*DescriptorProto_ReservedRange {
557         if m != nil {
558                 return m.ReservedRange
559         }
560         return nil
561 }
562
563 func (m *DescriptorProto) GetReservedName() []string {
564         if m != nil {
565                 return m.ReservedName
566         }
567         return nil
568 }
569
570 type DescriptorProto_ExtensionRange struct {
571         Start            *int32                 `protobuf:"varint,1,opt,name=start" json:"start,omitempty"`
572         End              *int32                 `protobuf:"varint,2,opt,name=end" json:"end,omitempty"`
573         Options          *ExtensionRangeOptions `protobuf:"bytes,3,opt,name=options" json:"options,omitempty"`
574         XXX_unrecognized []byte                 `json:"-"`
575 }
576
577 func (m *DescriptorProto_ExtensionRange) Reset()         { *m = DescriptorProto_ExtensionRange{} }
578 func (m *DescriptorProto_ExtensionRange) String() string { return proto.CompactTextString(m) }
579 func (*DescriptorProto_ExtensionRange) ProtoMessage()    {}
580 func (*DescriptorProto_ExtensionRange) Descriptor() ([]byte, []int) {
581         return fileDescriptor0, []int{2, 0}
582 }
583
584 func (m *DescriptorProto_ExtensionRange) GetStart() int32 {
585         if m != nil && m.Start != nil {
586                 return *m.Start
587         }
588         return 0
589 }
590
591 func (m *DescriptorProto_ExtensionRange) GetEnd() int32 {
592         if m != nil && m.End != nil {
593                 return *m.End
594         }
595         return 0
596 }
597
598 func (m *DescriptorProto_ExtensionRange) GetOptions() *ExtensionRangeOptions {
599         if m != nil {
600                 return m.Options
601         }
602         return nil
603 }
604
605 // Range of reserved tag numbers. Reserved tag numbers may not be used by
606 // fields or extension ranges in the same message. Reserved ranges may
607 // not overlap.
608 type DescriptorProto_ReservedRange struct {
609         Start            *int32 `protobuf:"varint,1,opt,name=start" json:"start,omitempty"`
610         End              *int32 `protobuf:"varint,2,opt,name=end" json:"end,omitempty"`
611         XXX_unrecognized []byte `json:"-"`
612 }
613
614 func (m *DescriptorProto_ReservedRange) Reset()         { *m = DescriptorProto_ReservedRange{} }
615 func (m *DescriptorProto_ReservedRange) String() string { return proto.CompactTextString(m) }
616 func (*DescriptorProto_ReservedRange) ProtoMessage()    {}
617 func (*DescriptorProto_ReservedRange) Descriptor() ([]byte, []int) {
618         return fileDescriptor0, []int{2, 1}
619 }
620
621 func (m *DescriptorProto_ReservedRange) GetStart() int32 {
622         if m != nil && m.Start != nil {
623                 return *m.Start
624         }
625         return 0
626 }
627
628 func (m *DescriptorProto_ReservedRange) GetEnd() int32 {
629         if m != nil && m.End != nil {
630                 return *m.End
631         }
632         return 0
633 }
634
635 type ExtensionRangeOptions struct {
636         // The parser stores options it doesn't recognize here. See above.
637         UninterpretedOption          []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"`
638         proto.XXX_InternalExtensions `json:"-"`
639         XXX_unrecognized             []byte `json:"-"`
640 }
641
642 func (m *ExtensionRangeOptions) Reset()                    { *m = ExtensionRangeOptions{} }
643 func (m *ExtensionRangeOptions) String() string            { return proto.CompactTextString(m) }
644 func (*ExtensionRangeOptions) ProtoMessage()               {}
645 func (*ExtensionRangeOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} }
646
647 var extRange_ExtensionRangeOptions = []proto.ExtensionRange{
648         {1000, 536870911},
649 }
650
651 func (*ExtensionRangeOptions) ExtensionRangeArray() []proto.ExtensionRange {
652         return extRange_ExtensionRangeOptions
653 }
654
655 func (m *ExtensionRangeOptions) GetUninterpretedOption() []*UninterpretedOption {
656         if m != nil {
657                 return m.UninterpretedOption
658         }
659         return nil
660 }
661
662 // Describes a field within a message.
663 type FieldDescriptorProto struct {
664         Name   *string                     `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
665         Number *int32                      `protobuf:"varint,3,opt,name=number" json:"number,omitempty"`
666         Label  *FieldDescriptorProto_Label `protobuf:"varint,4,opt,name=label,enum=google.protobuf.FieldDescriptorProto_Label" json:"label,omitempty"`
667         // If type_name is set, this need not be set.  If both this and type_name
668         // are set, this must be one of TYPE_ENUM, TYPE_MESSAGE or TYPE_GROUP.
669         Type *FieldDescriptorProto_Type `protobuf:"varint,5,opt,name=type,enum=google.protobuf.FieldDescriptorProto_Type" json:"type,omitempty"`
670         // For message and enum types, this is the name of the type.  If the name
671         // starts with a '.', it is fully-qualified.  Otherwise, C++-like scoping
672         // rules are used to find the type (i.e. first the nested types within this
673         // message are searched, then within the parent, on up to the root
674         // namespace).
675         TypeName *string `protobuf:"bytes,6,opt,name=type_name,json=typeName" json:"type_name,omitempty"`
676         // For extensions, this is the name of the type being extended.  It is
677         // resolved in the same manner as type_name.
678         Extendee *string `protobuf:"bytes,2,opt,name=extendee" json:"extendee,omitempty"`
679         // For numeric types, contains the original text representation of the value.
680         // For booleans, "true" or "false".
681         // For strings, contains the default text contents (not escaped in any way).
682         // For bytes, contains the C escaped value.  All bytes >= 128 are escaped.
683         // TODO(kenton):  Base-64 encode?
684         DefaultValue *string `protobuf:"bytes,7,opt,name=default_value,json=defaultValue" json:"default_value,omitempty"`
685         // If set, gives the index of a oneof in the containing type's oneof_decl
686         // list.  This field is a member of that oneof.
687         OneofIndex *int32 `protobuf:"varint,9,opt,name=oneof_index,json=oneofIndex" json:"oneof_index,omitempty"`
688         // JSON name of this field. The value is set by protocol compiler. If the
689         // user has set a "json_name" option on this field, that option's value
690         // will be used. Otherwise, it's deduced from the field's name by converting
691         // it to camelCase.
692         JsonName         *string       `protobuf:"bytes,10,opt,name=json_name,json=jsonName" json:"json_name,omitempty"`
693         Options          *FieldOptions `protobuf:"bytes,8,opt,name=options" json:"options,omitempty"`
694         XXX_unrecognized []byte        `json:"-"`
695 }
696
697 func (m *FieldDescriptorProto) Reset()                    { *m = FieldDescriptorProto{} }
698 func (m *FieldDescriptorProto) String() string            { return proto.CompactTextString(m) }
699 func (*FieldDescriptorProto) ProtoMessage()               {}
700 func (*FieldDescriptorProto) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} }
701
702 func (m *FieldDescriptorProto) GetName() string {
703         if m != nil && m.Name != nil {
704                 return *m.Name
705         }
706         return ""
707 }
708
709 func (m *FieldDescriptorProto) GetNumber() int32 {
710         if m != nil && m.Number != nil {
711                 return *m.Number
712         }
713         return 0
714 }
715
716 func (m *FieldDescriptorProto) GetLabel() FieldDescriptorProto_Label {
717         if m != nil && m.Label != nil {
718                 return *m.Label
719         }
720         return FieldDescriptorProto_LABEL_OPTIONAL
721 }
722
723 func (m *FieldDescriptorProto) GetType() FieldDescriptorProto_Type {
724         if m != nil && m.Type != nil {
725                 return *m.Type
726         }
727         return FieldDescriptorProto_TYPE_DOUBLE
728 }
729
730 func (m *FieldDescriptorProto) GetTypeName() string {
731         if m != nil && m.TypeName != nil {
732                 return *m.TypeName
733         }
734         return ""
735 }
736
737 func (m *FieldDescriptorProto) GetExtendee() string {
738         if m != nil && m.Extendee != nil {
739                 return *m.Extendee
740         }
741         return ""
742 }
743
744 func (m *FieldDescriptorProto) GetDefaultValue() string {
745         if m != nil && m.DefaultValue != nil {
746                 return *m.DefaultValue
747         }
748         return ""
749 }
750
751 func (m *FieldDescriptorProto) GetOneofIndex() int32 {
752         if m != nil && m.OneofIndex != nil {
753                 return *m.OneofIndex
754         }
755         return 0
756 }
757
758 func (m *FieldDescriptorProto) GetJsonName() string {
759         if m != nil && m.JsonName != nil {
760                 return *m.JsonName
761         }
762         return ""
763 }
764
765 func (m *FieldDescriptorProto) GetOptions() *FieldOptions {
766         if m != nil {
767                 return m.Options
768         }
769         return nil
770 }
771
772 // Describes a oneof.
773 type OneofDescriptorProto struct {
774         Name             *string       `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
775         Options          *OneofOptions `protobuf:"bytes,2,opt,name=options" json:"options,omitempty"`
776         XXX_unrecognized []byte        `json:"-"`
777 }
778
779 func (m *OneofDescriptorProto) Reset()                    { *m = OneofDescriptorProto{} }
780 func (m *OneofDescriptorProto) String() string            { return proto.CompactTextString(m) }
781 func (*OneofDescriptorProto) ProtoMessage()               {}
782 func (*OneofDescriptorProto) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
783
784 func (m *OneofDescriptorProto) GetName() string {
785         if m != nil && m.Name != nil {
786                 return *m.Name
787         }
788         return ""
789 }
790
791 func (m *OneofDescriptorProto) GetOptions() *OneofOptions {
792         if m != nil {
793                 return m.Options
794         }
795         return nil
796 }
797
798 // Describes an enum type.
799 type EnumDescriptorProto struct {
800         Name             *string                     `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
801         Value            []*EnumValueDescriptorProto `protobuf:"bytes,2,rep,name=value" json:"value,omitempty"`
802         Options          *EnumOptions                `protobuf:"bytes,3,opt,name=options" json:"options,omitempty"`
803         XXX_unrecognized []byte                      `json:"-"`
804 }
805
806 func (m *EnumDescriptorProto) Reset()                    { *m = EnumDescriptorProto{} }
807 func (m *EnumDescriptorProto) String() string            { return proto.CompactTextString(m) }
808 func (*EnumDescriptorProto) ProtoMessage()               {}
809 func (*EnumDescriptorProto) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }
810
811 func (m *EnumDescriptorProto) GetName() string {
812         if m != nil && m.Name != nil {
813                 return *m.Name
814         }
815         return ""
816 }
817
818 func (m *EnumDescriptorProto) GetValue() []*EnumValueDescriptorProto {
819         if m != nil {
820                 return m.Value
821         }
822         return nil
823 }
824
825 func (m *EnumDescriptorProto) GetOptions() *EnumOptions {
826         if m != nil {
827                 return m.Options
828         }
829         return nil
830 }
831
832 // Describes a value within an enum.
833 type EnumValueDescriptorProto struct {
834         Name             *string           `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
835         Number           *int32            `protobuf:"varint,2,opt,name=number" json:"number,omitempty"`
836         Options          *EnumValueOptions `protobuf:"bytes,3,opt,name=options" json:"options,omitempty"`
837         XXX_unrecognized []byte            `json:"-"`
838 }
839
840 func (m *EnumValueDescriptorProto) Reset()                    { *m = EnumValueDescriptorProto{} }
841 func (m *EnumValueDescriptorProto) String() string            { return proto.CompactTextString(m) }
842 func (*EnumValueDescriptorProto) ProtoMessage()               {}
843 func (*EnumValueDescriptorProto) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }
844
845 func (m *EnumValueDescriptorProto) GetName() string {
846         if m != nil && m.Name != nil {
847                 return *m.Name
848         }
849         return ""
850 }
851
852 func (m *EnumValueDescriptorProto) GetNumber() int32 {
853         if m != nil && m.Number != nil {
854                 return *m.Number
855         }
856         return 0
857 }
858
859 func (m *EnumValueDescriptorProto) GetOptions() *EnumValueOptions {
860         if m != nil {
861                 return m.Options
862         }
863         return nil
864 }
865
866 // Describes a service.
867 type ServiceDescriptorProto struct {
868         Name             *string                  `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
869         Method           []*MethodDescriptorProto `protobuf:"bytes,2,rep,name=method" json:"method,omitempty"`
870         Options          *ServiceOptions          `protobuf:"bytes,3,opt,name=options" json:"options,omitempty"`
871         XXX_unrecognized []byte                   `json:"-"`
872 }
873
874 func (m *ServiceDescriptorProto) Reset()                    { *m = ServiceDescriptorProto{} }
875 func (m *ServiceDescriptorProto) String() string            { return proto.CompactTextString(m) }
876 func (*ServiceDescriptorProto) ProtoMessage()               {}
877 func (*ServiceDescriptorProto) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} }
878
879 func (m *ServiceDescriptorProto) GetName() string {
880         if m != nil && m.Name != nil {
881                 return *m.Name
882         }
883         return ""
884 }
885
886 func (m *ServiceDescriptorProto) GetMethod() []*MethodDescriptorProto {
887         if m != nil {
888                 return m.Method
889         }
890         return nil
891 }
892
893 func (m *ServiceDescriptorProto) GetOptions() *ServiceOptions {
894         if m != nil {
895                 return m.Options
896         }
897         return nil
898 }
899
900 // Describes a method of a service.
901 type MethodDescriptorProto struct {
902         Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
903         // Input and output type names.  These are resolved in the same way as
904         // FieldDescriptorProto.type_name, but must refer to a message type.
905         InputType  *string        `protobuf:"bytes,2,opt,name=input_type,json=inputType" json:"input_type,omitempty"`
906         OutputType *string        `protobuf:"bytes,3,opt,name=output_type,json=outputType" json:"output_type,omitempty"`
907         Options    *MethodOptions `protobuf:"bytes,4,opt,name=options" json:"options,omitempty"`
908         // Identifies if client streams multiple client messages
909         ClientStreaming *bool `protobuf:"varint,5,opt,name=client_streaming,json=clientStreaming,def=0" json:"client_streaming,omitempty"`
910         // Identifies if server streams multiple server messages
911         ServerStreaming  *bool  `protobuf:"varint,6,opt,name=server_streaming,json=serverStreaming,def=0" json:"server_streaming,omitempty"`
912         XXX_unrecognized []byte `json:"-"`
913 }
914
915 func (m *MethodDescriptorProto) Reset()                    { *m = MethodDescriptorProto{} }
916 func (m *MethodDescriptorProto) String() string            { return proto.CompactTextString(m) }
917 func (*MethodDescriptorProto) ProtoMessage()               {}
918 func (*MethodDescriptorProto) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} }
919
920 const Default_MethodDescriptorProto_ClientStreaming bool = false
921 const Default_MethodDescriptorProto_ServerStreaming bool = false
922
923 func (m *MethodDescriptorProto) GetName() string {
924         if m != nil && m.Name != nil {
925                 return *m.Name
926         }
927         return ""
928 }
929
930 func (m *MethodDescriptorProto) GetInputType() string {
931         if m != nil && m.InputType != nil {
932                 return *m.InputType
933         }
934         return ""
935 }
936
937 func (m *MethodDescriptorProto) GetOutputType() string {
938         if m != nil && m.OutputType != nil {
939                 return *m.OutputType
940         }
941         return ""
942 }
943
944 func (m *MethodDescriptorProto) GetOptions() *MethodOptions {
945         if m != nil {
946                 return m.Options
947         }
948         return nil
949 }
950
951 func (m *MethodDescriptorProto) GetClientStreaming() bool {
952         if m != nil && m.ClientStreaming != nil {
953                 return *m.ClientStreaming
954         }
955         return Default_MethodDescriptorProto_ClientStreaming
956 }
957
958 func (m *MethodDescriptorProto) GetServerStreaming() bool {
959         if m != nil && m.ServerStreaming != nil {
960                 return *m.ServerStreaming
961         }
962         return Default_MethodDescriptorProto_ServerStreaming
963 }
964
965 type FileOptions struct {
966         // Sets the Java package where classes generated from this .proto will be
967         // placed.  By default, the proto package is used, but this is often
968         // inappropriate because proto packages do not normally start with backwards
969         // domain names.
970         JavaPackage *string `protobuf:"bytes,1,opt,name=java_package,json=javaPackage" json:"java_package,omitempty"`
971         // If set, all the classes from the .proto file are wrapped in a single
972         // outer class with the given name.  This applies to both Proto1
973         // (equivalent to the old "--one_java_file" option) and Proto2 (where
974         // a .proto always translates to a single class, but you may want to
975         // explicitly choose the class name).
976         JavaOuterClassname *string `protobuf:"bytes,8,opt,name=java_outer_classname,json=javaOuterClassname" json:"java_outer_classname,omitempty"`
977         // If set true, then the Java code generator will generate a separate .java
978         // file for each top-level message, enum, and service defined in the .proto
979         // file.  Thus, these types will *not* be nested inside the outer class
980         // named by java_outer_classname.  However, the outer class will still be
981         // generated to contain the file's getDescriptor() method as well as any
982         // top-level extensions defined in the file.
983         JavaMultipleFiles *bool `protobuf:"varint,10,opt,name=java_multiple_files,json=javaMultipleFiles,def=0" json:"java_multiple_files,omitempty"`
984         // This option does nothing.
985         JavaGenerateEqualsAndHash *bool `protobuf:"varint,20,opt,name=java_generate_equals_and_hash,json=javaGenerateEqualsAndHash" json:"java_generate_equals_and_hash,omitempty"`
986         // If set true, then the Java2 code generator will generate code that
987         // throws an exception whenever an attempt is made to assign a non-UTF-8
988         // byte sequence to a string field.
989         // Message reflection will do the same.
990         // However, an extension field still accepts non-UTF-8 byte sequences.
991         // This option has no effect on when used with the lite runtime.
992         JavaStringCheckUtf8 *bool                     `protobuf:"varint,27,opt,name=java_string_check_utf8,json=javaStringCheckUtf8,def=0" json:"java_string_check_utf8,omitempty"`
993         OptimizeFor         *FileOptions_OptimizeMode `protobuf:"varint,9,opt,name=optimize_for,json=optimizeFor,enum=google.protobuf.FileOptions_OptimizeMode,def=1" json:"optimize_for,omitempty"`
994         // Sets the Go package where structs generated from this .proto will be
995         // placed. If omitted, the Go package will be derived from the following:
996         //   - The basename of the package import path, if provided.
997         //   - Otherwise, the package statement in the .proto file, if present.
998         //   - Otherwise, the basename of the .proto file, without extension.
999         GoPackage *string `protobuf:"bytes,11,opt,name=go_package,json=goPackage" json:"go_package,omitempty"`
1000         // Should generic services be generated in each language?  "Generic" services
1001         // are not specific to any particular RPC system.  They are generated by the
1002         // main code generators in each language (without additional plugins).
1003         // Generic services were the only kind of service generation supported by
1004         // early versions of google.protobuf.
1005         //
1006         // Generic services are now considered deprecated in favor of using plugins
1007         // that generate code specific to your particular RPC system.  Therefore,
1008         // these default to false.  Old code which depends on generic services should
1009         // explicitly set them to true.
1010         CcGenericServices   *bool `protobuf:"varint,16,opt,name=cc_generic_services,json=ccGenericServices,def=0" json:"cc_generic_services,omitempty"`
1011         JavaGenericServices *bool `protobuf:"varint,17,opt,name=java_generic_services,json=javaGenericServices,def=0" json:"java_generic_services,omitempty"`
1012         PyGenericServices   *bool `protobuf:"varint,18,opt,name=py_generic_services,json=pyGenericServices,def=0" json:"py_generic_services,omitempty"`
1013         PhpGenericServices  *bool `protobuf:"varint,42,opt,name=php_generic_services,json=phpGenericServices,def=0" json:"php_generic_services,omitempty"`
1014         // Is this file deprecated?
1015         // Depending on the target platform, this can emit Deprecated annotations
1016         // for everything in the file, or it will be completely ignored; in the very
1017         // least, this is a formalization for deprecating files.
1018         Deprecated *bool `protobuf:"varint,23,opt,name=deprecated,def=0" json:"deprecated,omitempty"`
1019         // Enables the use of arenas for the proto messages in this file. This applies
1020         // only to generated classes for C++.
1021         CcEnableArenas *bool `protobuf:"varint,31,opt,name=cc_enable_arenas,json=ccEnableArenas,def=0" json:"cc_enable_arenas,omitempty"`
1022         // Sets the objective c class prefix which is prepended to all objective c
1023         // generated classes from this .proto. There is no default.
1024         ObjcClassPrefix *string `protobuf:"bytes,36,opt,name=objc_class_prefix,json=objcClassPrefix" json:"objc_class_prefix,omitempty"`
1025         // Namespace for generated classes; defaults to the package.
1026         CsharpNamespace *string `protobuf:"bytes,37,opt,name=csharp_namespace,json=csharpNamespace" json:"csharp_namespace,omitempty"`
1027         // By default Swift generators will take the proto package and CamelCase it
1028         // replacing '.' with underscore and use that to prefix the types/symbols
1029         // defined. When this options is provided, they will use this value instead
1030         // to prefix the types/symbols defined.
1031         SwiftPrefix *string `protobuf:"bytes,39,opt,name=swift_prefix,json=swiftPrefix" json:"swift_prefix,omitempty"`
1032         // Sets the php class prefix which is prepended to all php generated classes
1033         // from this .proto. Default is empty.
1034         PhpClassPrefix *string `protobuf:"bytes,40,opt,name=php_class_prefix,json=phpClassPrefix" json:"php_class_prefix,omitempty"`
1035         // Use this option to change the namespace of php generated classes. Default
1036         // is empty. When this option is empty, the package name will be used for
1037         // determining the namespace.
1038         PhpNamespace *string `protobuf:"bytes,41,opt,name=php_namespace,json=phpNamespace" json:"php_namespace,omitempty"`
1039         // The parser stores options it doesn't recognize here. See above.
1040         UninterpretedOption          []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"`
1041         proto.XXX_InternalExtensions `json:"-"`
1042         XXX_unrecognized             []byte `json:"-"`
1043 }
1044
1045 func (m *FileOptions) Reset()                    { *m = FileOptions{} }
1046 func (m *FileOptions) String() string            { return proto.CompactTextString(m) }
1047 func (*FileOptions) ProtoMessage()               {}
1048 func (*FileOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} }
1049
1050 var extRange_FileOptions = []proto.ExtensionRange{
1051         {1000, 536870911},
1052 }
1053
1054 func (*FileOptions) ExtensionRangeArray() []proto.ExtensionRange {
1055         return extRange_FileOptions
1056 }
1057
1058 const Default_FileOptions_JavaMultipleFiles bool = false
1059 const Default_FileOptions_JavaStringCheckUtf8 bool = false
1060 const Default_FileOptions_OptimizeFor FileOptions_OptimizeMode = FileOptions_SPEED
1061 const Default_FileOptions_CcGenericServices bool = false
1062 const Default_FileOptions_JavaGenericServices bool = false
1063 const Default_FileOptions_PyGenericServices bool = false
1064 const Default_FileOptions_PhpGenericServices bool = false
1065 const Default_FileOptions_Deprecated bool = false
1066 const Default_FileOptions_CcEnableArenas bool = false
1067
1068 func (m *FileOptions) GetJavaPackage() string {
1069         if m != nil && m.JavaPackage != nil {
1070                 return *m.JavaPackage
1071         }
1072         return ""
1073 }
1074
1075 func (m *FileOptions) GetJavaOuterClassname() string {
1076         if m != nil && m.JavaOuterClassname != nil {
1077                 return *m.JavaOuterClassname
1078         }
1079         return ""
1080 }
1081
1082 func (m *FileOptions) GetJavaMultipleFiles() bool {
1083         if m != nil && m.JavaMultipleFiles != nil {
1084                 return *m.JavaMultipleFiles
1085         }
1086         return Default_FileOptions_JavaMultipleFiles
1087 }
1088
1089 func (m *FileOptions) GetJavaGenerateEqualsAndHash() bool {
1090         if m != nil && m.JavaGenerateEqualsAndHash != nil {
1091                 return *m.JavaGenerateEqualsAndHash
1092         }
1093         return false
1094 }
1095
1096 func (m *FileOptions) GetJavaStringCheckUtf8() bool {
1097         if m != nil && m.JavaStringCheckUtf8 != nil {
1098                 return *m.JavaStringCheckUtf8
1099         }
1100         return Default_FileOptions_JavaStringCheckUtf8
1101 }
1102
1103 func (m *FileOptions) GetOptimizeFor() FileOptions_OptimizeMode {
1104         if m != nil && m.OptimizeFor != nil {
1105                 return *m.OptimizeFor
1106         }
1107         return Default_FileOptions_OptimizeFor
1108 }
1109
1110 func (m *FileOptions) GetGoPackage() string {
1111         if m != nil && m.GoPackage != nil {
1112                 return *m.GoPackage
1113         }
1114         return ""
1115 }
1116
1117 func (m *FileOptions) GetCcGenericServices() bool {
1118         if m != nil && m.CcGenericServices != nil {
1119                 return *m.CcGenericServices
1120         }
1121         return Default_FileOptions_CcGenericServices
1122 }
1123
1124 func (m *FileOptions) GetJavaGenericServices() bool {
1125         if m != nil && m.JavaGenericServices != nil {
1126                 return *m.JavaGenericServices
1127         }
1128         return Default_FileOptions_JavaGenericServices
1129 }
1130
1131 func (m *FileOptions) GetPyGenericServices() bool {
1132         if m != nil && m.PyGenericServices != nil {
1133                 return *m.PyGenericServices
1134         }
1135         return Default_FileOptions_PyGenericServices
1136 }
1137
1138 func (m *FileOptions) GetPhpGenericServices() bool {
1139         if m != nil && m.PhpGenericServices != nil {
1140                 return *m.PhpGenericServices
1141         }
1142         return Default_FileOptions_PhpGenericServices
1143 }
1144
1145 func (m *FileOptions) GetDeprecated() bool {
1146         if m != nil && m.Deprecated != nil {
1147                 return *m.Deprecated
1148         }
1149         return Default_FileOptions_Deprecated
1150 }
1151
1152 func (m *FileOptions) GetCcEnableArenas() bool {
1153         if m != nil && m.CcEnableArenas != nil {
1154                 return *m.CcEnableArenas
1155         }
1156         return Default_FileOptions_CcEnableArenas
1157 }
1158
1159 func (m *FileOptions) GetObjcClassPrefix() string {
1160         if m != nil && m.ObjcClassPrefix != nil {
1161                 return *m.ObjcClassPrefix
1162         }
1163         return ""
1164 }
1165
1166 func (m *FileOptions) GetCsharpNamespace() string {
1167         if m != nil && m.CsharpNamespace != nil {
1168                 return *m.CsharpNamespace
1169         }
1170         return ""
1171 }
1172
1173 func (m *FileOptions) GetSwiftPrefix() string {
1174         if m != nil && m.SwiftPrefix != nil {
1175                 return *m.SwiftPrefix
1176         }
1177         return ""
1178 }
1179
1180 func (m *FileOptions) GetPhpClassPrefix() string {
1181         if m != nil && m.PhpClassPrefix != nil {
1182                 return *m.PhpClassPrefix
1183         }
1184         return ""
1185 }
1186
1187 func (m *FileOptions) GetPhpNamespace() string {
1188         if m != nil && m.PhpNamespace != nil {
1189                 return *m.PhpNamespace
1190         }
1191         return ""
1192 }
1193
1194 func (m *FileOptions) GetUninterpretedOption() []*UninterpretedOption {
1195         if m != nil {
1196                 return m.UninterpretedOption
1197         }
1198         return nil
1199 }
1200
1201 type MessageOptions struct {
1202         // Set true to use the old proto1 MessageSet wire format for extensions.
1203         // This is provided for backwards-compatibility with the MessageSet wire
1204         // format.  You should not use this for any other reason:  It's less
1205         // efficient, has fewer features, and is more complicated.
1206         //
1207         // The message must be defined exactly as follows:
1208         //   message Foo {
1209         //     option message_set_wire_format = true;
1210         //     extensions 4 to max;
1211         //   }
1212         // Note that the message cannot have any defined fields; MessageSets only
1213         // have extensions.
1214         //
1215         // All extensions of your type must be singular messages; e.g. they cannot
1216         // be int32s, enums, or repeated messages.
1217         //
1218         // Because this is an option, the above two restrictions are not enforced by
1219         // the protocol compiler.
1220         MessageSetWireFormat *bool `protobuf:"varint,1,opt,name=message_set_wire_format,json=messageSetWireFormat,def=0" json:"message_set_wire_format,omitempty"`
1221         // Disables the generation of the standard "descriptor()" accessor, which can
1222         // conflict with a field of the same name.  This is meant to make migration
1223         // from proto1 easier; new code should avoid fields named "descriptor".
1224         NoStandardDescriptorAccessor *bool `protobuf:"varint,2,opt,name=no_standard_descriptor_accessor,json=noStandardDescriptorAccessor,def=0" json:"no_standard_descriptor_accessor,omitempty"`
1225         // Is this message deprecated?
1226         // Depending on the target platform, this can emit Deprecated annotations
1227         // for the message, or it will be completely ignored; in the very least,
1228         // this is a formalization for deprecating messages.
1229         Deprecated *bool `protobuf:"varint,3,opt,name=deprecated,def=0" json:"deprecated,omitempty"`
1230         // Whether the message is an automatically generated map entry type for the
1231         // maps field.
1232         //
1233         // For maps fields:
1234         //     map<KeyType, ValueType> map_field = 1;
1235         // The parsed descriptor looks like:
1236         //     message MapFieldEntry {
1237         //         option map_entry = true;
1238         //         optional KeyType key = 1;
1239         //         optional ValueType value = 2;
1240         //     }
1241         //     repeated MapFieldEntry map_field = 1;
1242         //
1243         // Implementations may choose not to generate the map_entry=true message, but
1244         // use a native map in the target language to hold the keys and values.
1245         // The reflection APIs in such implementions still need to work as
1246         // if the field is a repeated message field.
1247         //
1248         // NOTE: Do not set the option in .proto files. Always use the maps syntax
1249         // instead. The option should only be implicitly set by the proto compiler
1250         // parser.
1251         MapEntry *bool `protobuf:"varint,7,opt,name=map_entry,json=mapEntry" json:"map_entry,omitempty"`
1252         // The parser stores options it doesn't recognize here. See above.
1253         UninterpretedOption          []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"`
1254         proto.XXX_InternalExtensions `json:"-"`
1255         XXX_unrecognized             []byte `json:"-"`
1256 }
1257
1258 func (m *MessageOptions) Reset()                    { *m = MessageOptions{} }
1259 func (m *MessageOptions) String() string            { return proto.CompactTextString(m) }
1260 func (*MessageOptions) ProtoMessage()               {}
1261 func (*MessageOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} }
1262
1263 var extRange_MessageOptions = []proto.ExtensionRange{
1264         {1000, 536870911},
1265 }
1266
1267 func (*MessageOptions) ExtensionRangeArray() []proto.ExtensionRange {
1268         return extRange_MessageOptions
1269 }
1270
1271 const Default_MessageOptions_MessageSetWireFormat bool = false
1272 const Default_MessageOptions_NoStandardDescriptorAccessor bool = false
1273 const Default_MessageOptions_Deprecated bool = false
1274
1275 func (m *MessageOptions) GetMessageSetWireFormat() bool {
1276         if m != nil && m.MessageSetWireFormat != nil {
1277                 return *m.MessageSetWireFormat
1278         }
1279         return Default_MessageOptions_MessageSetWireFormat
1280 }
1281
1282 func (m *MessageOptions) GetNoStandardDescriptorAccessor() bool {
1283         if m != nil && m.NoStandardDescriptorAccessor != nil {
1284                 return *m.NoStandardDescriptorAccessor
1285         }
1286         return Default_MessageOptions_NoStandardDescriptorAccessor
1287 }
1288
1289 func (m *MessageOptions) GetDeprecated() bool {
1290         if m != nil && m.Deprecated != nil {
1291                 return *m.Deprecated
1292         }
1293         return Default_MessageOptions_Deprecated
1294 }
1295
1296 func (m *MessageOptions) GetMapEntry() bool {
1297         if m != nil && m.MapEntry != nil {
1298                 return *m.MapEntry
1299         }
1300         return false
1301 }
1302
1303 func (m *MessageOptions) GetUninterpretedOption() []*UninterpretedOption {
1304         if m != nil {
1305                 return m.UninterpretedOption
1306         }
1307         return nil
1308 }
1309
1310 type FieldOptions struct {
1311         // The ctype option instructs the C++ code generator to use a different
1312         // representation of the field than it normally would.  See the specific
1313         // options below.  This option is not yet implemented in the open source
1314         // release -- sorry, we'll try to include it in a future version!
1315         Ctype *FieldOptions_CType `protobuf:"varint,1,opt,name=ctype,enum=google.protobuf.FieldOptions_CType,def=0" json:"ctype,omitempty"`
1316         // The packed option can be enabled for repeated primitive fields to enable
1317         // a more efficient representation on the wire. Rather than repeatedly
1318         // writing the tag and type for each element, the entire array is encoded as
1319         // a single length-delimited blob. In proto3, only explicit setting it to
1320         // false will avoid using packed encoding.
1321         Packed *bool `protobuf:"varint,2,opt,name=packed" json:"packed,omitempty"`
1322         // The jstype option determines the JavaScript type used for values of the
1323         // field.  The option is permitted only for 64 bit integral and fixed types
1324         // (int64, uint64, sint64, fixed64, sfixed64).  A field with jstype JS_STRING
1325         // is represented as JavaScript string, which avoids loss of precision that
1326         // can happen when a large value is converted to a floating point JavaScript.
1327         // Specifying JS_NUMBER for the jstype causes the generated JavaScript code to
1328         // use the JavaScript "number" type.  The behavior of the default option
1329         // JS_NORMAL is implementation dependent.
1330         //
1331         // This option is an enum to permit additional types to be added, e.g.
1332         // goog.math.Integer.
1333         Jstype *FieldOptions_JSType `protobuf:"varint,6,opt,name=jstype,enum=google.protobuf.FieldOptions_JSType,def=0" json:"jstype,omitempty"`
1334         // Should this field be parsed lazily?  Lazy applies only to message-type
1335         // fields.  It means that when the outer message is initially parsed, the
1336         // inner message's contents will not be parsed but instead stored in encoded
1337         // form.  The inner message will actually be parsed when it is first accessed.
1338         //
1339         // This is only a hint.  Implementations are free to choose whether to use
1340         // eager or lazy parsing regardless of the value of this option.  However,
1341         // setting this option true suggests that the protocol author believes that
1342         // using lazy parsing on this field is worth the additional bookkeeping
1343         // overhead typically needed to implement it.
1344         //
1345         // This option does not affect the public interface of any generated code;
1346         // all method signatures remain the same.  Furthermore, thread-safety of the
1347         // interface is not affected by this option; const methods remain safe to
1348         // call from multiple threads concurrently, while non-const methods continue
1349         // to require exclusive access.
1350         //
1351         //
1352         // Note that implementations may choose not to check required fields within
1353         // a lazy sub-message.  That is, calling IsInitialized() on the outer message
1354         // may return true even if the inner message has missing required fields.
1355         // This is necessary because otherwise the inner message would have to be
1356         // parsed in order to perform the check, defeating the purpose of lazy
1357         // parsing.  An implementation which chooses not to check required fields
1358         // must be consistent about it.  That is, for any particular sub-message, the
1359         // implementation must either *always* check its required fields, or *never*
1360         // check its required fields, regardless of whether or not the message has
1361         // been parsed.
1362         Lazy *bool `protobuf:"varint,5,opt,name=lazy,def=0" json:"lazy,omitempty"`
1363         // Is this field deprecated?
1364         // Depending on the target platform, this can emit Deprecated annotations
1365         // for accessors, or it will be completely ignored; in the very least, this
1366         // is a formalization for deprecating fields.
1367         Deprecated *bool `protobuf:"varint,3,opt,name=deprecated,def=0" json:"deprecated,omitempty"`
1368         // For Google-internal migration only. Do not use.
1369         Weak *bool `protobuf:"varint,10,opt,name=weak,def=0" json:"weak,omitempty"`
1370         // The parser stores options it doesn't recognize here. See above.
1371         UninterpretedOption          []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"`
1372         proto.XXX_InternalExtensions `json:"-"`
1373         XXX_unrecognized             []byte `json:"-"`
1374 }
1375
1376 func (m *FieldOptions) Reset()                    { *m = FieldOptions{} }
1377 func (m *FieldOptions) String() string            { return proto.CompactTextString(m) }
1378 func (*FieldOptions) ProtoMessage()               {}
1379 func (*FieldOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} }
1380
1381 var extRange_FieldOptions = []proto.ExtensionRange{
1382         {1000, 536870911},
1383 }
1384
1385 func (*FieldOptions) ExtensionRangeArray() []proto.ExtensionRange {
1386         return extRange_FieldOptions
1387 }
1388
1389 const Default_FieldOptions_Ctype FieldOptions_CType = FieldOptions_STRING
1390 const Default_FieldOptions_Jstype FieldOptions_JSType = FieldOptions_JS_NORMAL
1391 const Default_FieldOptions_Lazy bool = false
1392 const Default_FieldOptions_Deprecated bool = false
1393 const Default_FieldOptions_Weak bool = false
1394
1395 func (m *FieldOptions) GetCtype() FieldOptions_CType {
1396         if m != nil && m.Ctype != nil {
1397                 return *m.Ctype
1398         }
1399         return Default_FieldOptions_Ctype
1400 }
1401
1402 func (m *FieldOptions) GetPacked() bool {
1403         if m != nil && m.Packed != nil {
1404                 return *m.Packed
1405         }
1406         return false
1407 }
1408
1409 func (m *FieldOptions) GetJstype() FieldOptions_JSType {
1410         if m != nil && m.Jstype != nil {
1411                 return *m.Jstype
1412         }
1413         return Default_FieldOptions_Jstype
1414 }
1415
1416 func (m *FieldOptions) GetLazy() bool {
1417         if m != nil && m.Lazy != nil {
1418                 return *m.Lazy
1419         }
1420         return Default_FieldOptions_Lazy
1421 }
1422
1423 func (m *FieldOptions) GetDeprecated() bool {
1424         if m != nil && m.Deprecated != nil {
1425                 return *m.Deprecated
1426         }
1427         return Default_FieldOptions_Deprecated
1428 }
1429
1430 func (m *FieldOptions) GetWeak() bool {
1431         if m != nil && m.Weak != nil {
1432                 return *m.Weak
1433         }
1434         return Default_FieldOptions_Weak
1435 }
1436
1437 func (m *FieldOptions) GetUninterpretedOption() []*UninterpretedOption {
1438         if m != nil {
1439                 return m.UninterpretedOption
1440         }
1441         return nil
1442 }
1443
1444 type OneofOptions struct {
1445         // The parser stores options it doesn't recognize here. See above.
1446         UninterpretedOption          []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"`
1447         proto.XXX_InternalExtensions `json:"-"`
1448         XXX_unrecognized             []byte `json:"-"`
1449 }
1450
1451 func (m *OneofOptions) Reset()                    { *m = OneofOptions{} }
1452 func (m *OneofOptions) String() string            { return proto.CompactTextString(m) }
1453 func (*OneofOptions) ProtoMessage()               {}
1454 func (*OneofOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{13} }
1455
1456 var extRange_OneofOptions = []proto.ExtensionRange{
1457         {1000, 536870911},
1458 }
1459
1460 func (*OneofOptions) ExtensionRangeArray() []proto.ExtensionRange {
1461         return extRange_OneofOptions
1462 }
1463
1464 func (m *OneofOptions) GetUninterpretedOption() []*UninterpretedOption {
1465         if m != nil {
1466                 return m.UninterpretedOption
1467         }
1468         return nil
1469 }
1470
1471 type EnumOptions struct {
1472         // Set this option to true to allow mapping different tag names to the same
1473         // value.
1474         AllowAlias *bool `protobuf:"varint,2,opt,name=allow_alias,json=allowAlias" json:"allow_alias,omitempty"`
1475         // Is this enum deprecated?
1476         // Depending on the target platform, this can emit Deprecated annotations
1477         // for the enum, or it will be completely ignored; in the very least, this
1478         // is a formalization for deprecating enums.
1479         Deprecated *bool `protobuf:"varint,3,opt,name=deprecated,def=0" json:"deprecated,omitempty"`
1480         // The parser stores options it doesn't recognize here. See above.
1481         UninterpretedOption          []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"`
1482         proto.XXX_InternalExtensions `json:"-"`
1483         XXX_unrecognized             []byte `json:"-"`
1484 }
1485
1486 func (m *EnumOptions) Reset()                    { *m = EnumOptions{} }
1487 func (m *EnumOptions) String() string            { return proto.CompactTextString(m) }
1488 func (*EnumOptions) ProtoMessage()               {}
1489 func (*EnumOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{14} }
1490
1491 var extRange_EnumOptions = []proto.ExtensionRange{
1492         {1000, 536870911},
1493 }
1494
1495 func (*EnumOptions) ExtensionRangeArray() []proto.ExtensionRange {
1496         return extRange_EnumOptions
1497 }
1498
1499 const Default_EnumOptions_Deprecated bool = false
1500
1501 func (m *EnumOptions) GetAllowAlias() bool {
1502         if m != nil && m.AllowAlias != nil {
1503                 return *m.AllowAlias
1504         }
1505         return false
1506 }
1507
1508 func (m *EnumOptions) GetDeprecated() bool {
1509         if m != nil && m.Deprecated != nil {
1510                 return *m.Deprecated
1511         }
1512         return Default_EnumOptions_Deprecated
1513 }
1514
1515 func (m *EnumOptions) GetUninterpretedOption() []*UninterpretedOption {
1516         if m != nil {
1517                 return m.UninterpretedOption
1518         }
1519         return nil
1520 }
1521
1522 type EnumValueOptions struct {
1523         // Is this enum value deprecated?
1524         // Depending on the target platform, this can emit Deprecated annotations
1525         // for the enum value, or it will be completely ignored; in the very least,
1526         // this is a formalization for deprecating enum values.
1527         Deprecated *bool `protobuf:"varint,1,opt,name=deprecated,def=0" json:"deprecated,omitempty"`
1528         // The parser stores options it doesn't recognize here. See above.
1529         UninterpretedOption          []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"`
1530         proto.XXX_InternalExtensions `json:"-"`
1531         XXX_unrecognized             []byte `json:"-"`
1532 }
1533
1534 func (m *EnumValueOptions) Reset()                    { *m = EnumValueOptions{} }
1535 func (m *EnumValueOptions) String() string            { return proto.CompactTextString(m) }
1536 func (*EnumValueOptions) ProtoMessage()               {}
1537 func (*EnumValueOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15} }
1538
1539 var extRange_EnumValueOptions = []proto.ExtensionRange{
1540         {1000, 536870911},
1541 }
1542
1543 func (*EnumValueOptions) ExtensionRangeArray() []proto.ExtensionRange {
1544         return extRange_EnumValueOptions
1545 }
1546
1547 const Default_EnumValueOptions_Deprecated bool = false
1548
1549 func (m *EnumValueOptions) GetDeprecated() bool {
1550         if m != nil && m.Deprecated != nil {
1551                 return *m.Deprecated
1552         }
1553         return Default_EnumValueOptions_Deprecated
1554 }
1555
1556 func (m *EnumValueOptions) GetUninterpretedOption() []*UninterpretedOption {
1557         if m != nil {
1558                 return m.UninterpretedOption
1559         }
1560         return nil
1561 }
1562
1563 type ServiceOptions struct {
1564         // Is this service deprecated?
1565         // Depending on the target platform, this can emit Deprecated annotations
1566         // for the service, or it will be completely ignored; in the very least,
1567         // this is a formalization for deprecating services.
1568         Deprecated *bool `protobuf:"varint,33,opt,name=deprecated,def=0" json:"deprecated,omitempty"`
1569         // The parser stores options it doesn't recognize here. See above.
1570         UninterpretedOption          []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"`
1571         proto.XXX_InternalExtensions `json:"-"`
1572         XXX_unrecognized             []byte `json:"-"`
1573 }
1574
1575 func (m *ServiceOptions) Reset()                    { *m = ServiceOptions{} }
1576 func (m *ServiceOptions) String() string            { return proto.CompactTextString(m) }
1577 func (*ServiceOptions) ProtoMessage()               {}
1578 func (*ServiceOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{16} }
1579
1580 var extRange_ServiceOptions = []proto.ExtensionRange{
1581         {1000, 536870911},
1582 }
1583
1584 func (*ServiceOptions) ExtensionRangeArray() []proto.ExtensionRange {
1585         return extRange_ServiceOptions
1586 }
1587
1588 const Default_ServiceOptions_Deprecated bool = false
1589
1590 func (m *ServiceOptions) GetDeprecated() bool {
1591         if m != nil && m.Deprecated != nil {
1592                 return *m.Deprecated
1593         }
1594         return Default_ServiceOptions_Deprecated
1595 }
1596
1597 func (m *ServiceOptions) GetUninterpretedOption() []*UninterpretedOption {
1598         if m != nil {
1599                 return m.UninterpretedOption
1600         }
1601         return nil
1602 }
1603
1604 type MethodOptions struct {
1605         // Is this method deprecated?
1606         // Depending on the target platform, this can emit Deprecated annotations
1607         // for the method, or it will be completely ignored; in the very least,
1608         // this is a formalization for deprecating methods.
1609         Deprecated       *bool                           `protobuf:"varint,33,opt,name=deprecated,def=0" json:"deprecated,omitempty"`
1610         IdempotencyLevel *MethodOptions_IdempotencyLevel `protobuf:"varint,34,opt,name=idempotency_level,json=idempotencyLevel,enum=google.protobuf.MethodOptions_IdempotencyLevel,def=0" json:"idempotency_level,omitempty"`
1611         // The parser stores options it doesn't recognize here. See above.
1612         UninterpretedOption          []*UninterpretedOption `protobuf:"bytes,999,rep,name=uninterpreted_option,json=uninterpretedOption" json:"uninterpreted_option,omitempty"`
1613         proto.XXX_InternalExtensions `json:"-"`
1614         XXX_unrecognized             []byte `json:"-"`
1615 }
1616
1617 func (m *MethodOptions) Reset()                    { *m = MethodOptions{} }
1618 func (m *MethodOptions) String() string            { return proto.CompactTextString(m) }
1619 func (*MethodOptions) ProtoMessage()               {}
1620 func (*MethodOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{17} }
1621
1622 var extRange_MethodOptions = []proto.ExtensionRange{
1623         {1000, 536870911},
1624 }
1625
1626 func (*MethodOptions) ExtensionRangeArray() []proto.ExtensionRange {
1627         return extRange_MethodOptions
1628 }
1629
1630 const Default_MethodOptions_Deprecated bool = false
1631 const Default_MethodOptions_IdempotencyLevel MethodOptions_IdempotencyLevel = MethodOptions_IDEMPOTENCY_UNKNOWN
1632
1633 func (m *MethodOptions) GetDeprecated() bool {
1634         if m != nil && m.Deprecated != nil {
1635                 return *m.Deprecated
1636         }
1637         return Default_MethodOptions_Deprecated
1638 }
1639
1640 func (m *MethodOptions) GetIdempotencyLevel() MethodOptions_IdempotencyLevel {
1641         if m != nil && m.IdempotencyLevel != nil {
1642                 return *m.IdempotencyLevel
1643         }
1644         return Default_MethodOptions_IdempotencyLevel
1645 }
1646
1647 func (m *MethodOptions) GetUninterpretedOption() []*UninterpretedOption {
1648         if m != nil {
1649                 return m.UninterpretedOption
1650         }
1651         return nil
1652 }
1653
1654 // A message representing a option the parser does not recognize. This only
1655 // appears in options protos created by the compiler::Parser class.
1656 // DescriptorPool resolves these when building Descriptor objects. Therefore,
1657 // options protos in descriptor objects (e.g. returned by Descriptor::options(),
1658 // or produced by Descriptor::CopyTo()) will never have UninterpretedOptions
1659 // in them.
1660 type UninterpretedOption struct {
1661         Name []*UninterpretedOption_NamePart `protobuf:"bytes,2,rep,name=name" json:"name,omitempty"`
1662         // The value of the uninterpreted option, in whatever type the tokenizer
1663         // identified it as during parsing. Exactly one of these should be set.
1664         IdentifierValue  *string  `protobuf:"bytes,3,opt,name=identifier_value,json=identifierValue" json:"identifier_value,omitempty"`
1665         PositiveIntValue *uint64  `protobuf:"varint,4,opt,name=positive_int_value,json=positiveIntValue" json:"positive_int_value,omitempty"`
1666         NegativeIntValue *int64   `protobuf:"varint,5,opt,name=negative_int_value,json=negativeIntValue" json:"negative_int_value,omitempty"`
1667         DoubleValue      *float64 `protobuf:"fixed64,6,opt,name=double_value,json=doubleValue" json:"double_value,omitempty"`
1668         StringValue      []byte   `protobuf:"bytes,7,opt,name=string_value,json=stringValue" json:"string_value,omitempty"`
1669         AggregateValue   *string  `protobuf:"bytes,8,opt,name=aggregate_value,json=aggregateValue" json:"aggregate_value,omitempty"`
1670         XXX_unrecognized []byte   `json:"-"`
1671 }
1672
1673 func (m *UninterpretedOption) Reset()                    { *m = UninterpretedOption{} }
1674 func (m *UninterpretedOption) String() string            { return proto.CompactTextString(m) }
1675 func (*UninterpretedOption) ProtoMessage()               {}
1676 func (*UninterpretedOption) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{18} }
1677
1678 func (m *UninterpretedOption) GetName() []*UninterpretedOption_NamePart {
1679         if m != nil {
1680                 return m.Name
1681         }
1682         return nil
1683 }
1684
1685 func (m *UninterpretedOption) GetIdentifierValue() string {
1686         if m != nil && m.IdentifierValue != nil {
1687                 return *m.IdentifierValue
1688         }
1689         return ""
1690 }
1691
1692 func (m *UninterpretedOption) GetPositiveIntValue() uint64 {
1693         if m != nil && m.PositiveIntValue != nil {
1694                 return *m.PositiveIntValue
1695         }
1696         return 0
1697 }
1698
1699 func (m *UninterpretedOption) GetNegativeIntValue() int64 {
1700         if m != nil && m.NegativeIntValue != nil {
1701                 return *m.NegativeIntValue
1702         }
1703         return 0
1704 }
1705
1706 func (m *UninterpretedOption) GetDoubleValue() float64 {
1707         if m != nil && m.DoubleValue != nil {
1708                 return *m.DoubleValue
1709         }
1710         return 0
1711 }
1712
1713 func (m *UninterpretedOption) GetStringValue() []byte {
1714         if m != nil {
1715                 return m.StringValue
1716         }
1717         return nil
1718 }
1719
1720 func (m *UninterpretedOption) GetAggregateValue() string {
1721         if m != nil && m.AggregateValue != nil {
1722                 return *m.AggregateValue
1723         }
1724         return ""
1725 }
1726
1727 // The name of the uninterpreted option.  Each string represents a segment in
1728 // a dot-separated name.  is_extension is true iff a segment represents an
1729 // extension (denoted with parentheses in options specs in .proto files).
1730 // E.g.,{ ["foo", false], ["bar.baz", true], ["qux", false] } represents
1731 // "foo.(bar.baz).qux".
1732 type UninterpretedOption_NamePart struct {
1733         NamePart         *string `protobuf:"bytes,1,req,name=name_part,json=namePart" json:"name_part,omitempty"`
1734         IsExtension      *bool   `protobuf:"varint,2,req,name=is_extension,json=isExtension" json:"is_extension,omitempty"`
1735         XXX_unrecognized []byte  `json:"-"`
1736 }
1737
1738 func (m *UninterpretedOption_NamePart) Reset()         { *m = UninterpretedOption_NamePart{} }
1739 func (m *UninterpretedOption_NamePart) String() string { return proto.CompactTextString(m) }
1740 func (*UninterpretedOption_NamePart) ProtoMessage()    {}
1741 func (*UninterpretedOption_NamePart) Descriptor() ([]byte, []int) {
1742         return fileDescriptor0, []int{18, 0}
1743 }
1744
1745 func (m *UninterpretedOption_NamePart) GetNamePart() string {
1746         if m != nil && m.NamePart != nil {
1747                 return *m.NamePart
1748         }
1749         return ""
1750 }
1751
1752 func (m *UninterpretedOption_NamePart) GetIsExtension() bool {
1753         if m != nil && m.IsExtension != nil {
1754                 return *m.IsExtension
1755         }
1756         return false
1757 }
1758
1759 // Encapsulates information about the original source file from which a
1760 // FileDescriptorProto was generated.
1761 type SourceCodeInfo struct {
1762         // A Location identifies a piece of source code in a .proto file which
1763         // corresponds to a particular definition.  This information is intended
1764         // to be useful to IDEs, code indexers, documentation generators, and similar
1765         // tools.
1766         //
1767         // For example, say we have a file like:
1768         //   message Foo {
1769         //     optional string foo = 1;
1770         //   }
1771         // Let's look at just the field definition:
1772         //   optional string foo = 1;
1773         //   ^       ^^     ^^  ^  ^^^
1774         //   a       bc     de  f  ghi
1775         // We have the following locations:
1776         //   span   path               represents
1777         //   [a,i)  [ 4, 0, 2, 0 ]     The whole field definition.
1778         //   [a,b)  [ 4, 0, 2, 0, 4 ]  The label (optional).
1779         //   [c,d)  [ 4, 0, 2, 0, 5 ]  The type (string).
1780         //   [e,f)  [ 4, 0, 2, 0, 1 ]  The name (foo).
1781         //   [g,h)  [ 4, 0, 2, 0, 3 ]  The number (1).
1782         //
1783         // Notes:
1784         // - A location may refer to a repeated field itself (i.e. not to any
1785         //   particular index within it).  This is used whenever a set of elements are
1786         //   logically enclosed in a single code segment.  For example, an entire
1787         //   extend block (possibly containing multiple extension definitions) will
1788         //   have an outer location whose path refers to the "extensions" repeated
1789         //   field without an index.
1790         // - Multiple locations may have the same path.  This happens when a single
1791         //   logical declaration is spread out across multiple places.  The most
1792         //   obvious example is the "extend" block again -- there may be multiple
1793         //   extend blocks in the same scope, each of which will have the same path.
1794         // - A location's span is not always a subset of its parent's span.  For
1795         //   example, the "extendee" of an extension declaration appears at the
1796         //   beginning of the "extend" block and is shared by all extensions within
1797         //   the block.
1798         // - Just because a location's span is a subset of some other location's span
1799         //   does not mean that it is a descendent.  For example, a "group" defines
1800         //   both a type and a field in a single declaration.  Thus, the locations
1801         //   corresponding to the type and field and their components will overlap.
1802         // - Code which tries to interpret locations should probably be designed to
1803         //   ignore those that it doesn't understand, as more types of locations could
1804         //   be recorded in the future.
1805         Location         []*SourceCodeInfo_Location `protobuf:"bytes,1,rep,name=location" json:"location,omitempty"`
1806         XXX_unrecognized []byte                     `json:"-"`
1807 }
1808
1809 func (m *SourceCodeInfo) Reset()                    { *m = SourceCodeInfo{} }
1810 func (m *SourceCodeInfo) String() string            { return proto.CompactTextString(m) }
1811 func (*SourceCodeInfo) ProtoMessage()               {}
1812 func (*SourceCodeInfo) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{19} }
1813
1814 func (m *SourceCodeInfo) GetLocation() []*SourceCodeInfo_Location {
1815         if m != nil {
1816                 return m.Location
1817         }
1818         return nil
1819 }
1820
1821 type SourceCodeInfo_Location struct {
1822         // Identifies which part of the FileDescriptorProto was defined at this
1823         // location.
1824         //
1825         // Each element is a field number or an index.  They form a path from
1826         // the root FileDescriptorProto to the place where the definition.  For
1827         // example, this path:
1828         //   [ 4, 3, 2, 7, 1 ]
1829         // refers to:
1830         //   file.message_type(3)  // 4, 3
1831         //       .field(7)         // 2, 7
1832         //       .name()           // 1
1833         // This is because FileDescriptorProto.message_type has field number 4:
1834         //   repeated DescriptorProto message_type = 4;
1835         // and DescriptorProto.field has field number 2:
1836         //   repeated FieldDescriptorProto field = 2;
1837         // and FieldDescriptorProto.name has field number 1:
1838         //   optional string name = 1;
1839         //
1840         // Thus, the above path gives the location of a field name.  If we removed
1841         // the last element:
1842         //   [ 4, 3, 2, 7 ]
1843         // this path refers to the whole field declaration (from the beginning
1844         // of the label to the terminating semicolon).
1845         Path []int32 `protobuf:"varint,1,rep,packed,name=path" json:"path,omitempty"`
1846         // Always has exactly three or four elements: start line, start column,
1847         // end line (optional, otherwise assumed same as start line), end column.
1848         // These are packed into a single field for efficiency.  Note that line
1849         // and column numbers are zero-based -- typically you will want to add
1850         // 1 to each before displaying to a user.
1851         Span []int32 `protobuf:"varint,2,rep,packed,name=span" json:"span,omitempty"`
1852         // If this SourceCodeInfo represents a complete declaration, these are any
1853         // comments appearing before and after the declaration which appear to be
1854         // attached to the declaration.
1855         //
1856         // A series of line comments appearing on consecutive lines, with no other
1857         // tokens appearing on those lines, will be treated as a single comment.
1858         //
1859         // leading_detached_comments will keep paragraphs of comments that appear
1860         // before (but not connected to) the current element. Each paragraph,
1861         // separated by empty lines, will be one comment element in the repeated
1862         // field.
1863         //
1864         // Only the comment content is provided; comment markers (e.g. //) are
1865         // stripped out.  For block comments, leading whitespace and an asterisk
1866         // will be stripped from the beginning of each line other than the first.
1867         // Newlines are included in the output.
1868         //
1869         // Examples:
1870         //
1871         //   optional int32 foo = 1;  // Comment attached to foo.
1872         //   // Comment attached to bar.
1873         //   optional int32 bar = 2;
1874         //
1875         //   optional string baz = 3;
1876         //   // Comment attached to baz.
1877         //   // Another line attached to baz.
1878         //
1879         //   // Comment attached to qux.
1880         //   //
1881         //   // Another line attached to qux.
1882         //   optional double qux = 4;
1883         //
1884         //   // Detached comment for corge. This is not leading or trailing comments
1885         //   // to qux or corge because there are blank lines separating it from
1886         //   // both.
1887         //
1888         //   // Detached comment for corge paragraph 2.
1889         //
1890         //   optional string corge = 5;
1891         //   /* Block comment attached
1892         //    * to corge.  Leading asterisks
1893         //    * will be removed. */
1894         //   /* Block comment attached to
1895         //    * grault. */
1896         //   optional int32 grault = 6;
1897         //
1898         //   // ignored detached comments.
1899         LeadingComments         *string  `protobuf:"bytes,3,opt,name=leading_comments,json=leadingComments" json:"leading_comments,omitempty"`
1900         TrailingComments        *string  `protobuf:"bytes,4,opt,name=trailing_comments,json=trailingComments" json:"trailing_comments,omitempty"`
1901         LeadingDetachedComments []string `protobuf:"bytes,6,rep,name=leading_detached_comments,json=leadingDetachedComments" json:"leading_detached_comments,omitempty"`
1902         XXX_unrecognized        []byte   `json:"-"`
1903 }
1904
1905 func (m *SourceCodeInfo_Location) Reset()                    { *m = SourceCodeInfo_Location{} }
1906 func (m *SourceCodeInfo_Location) String() string            { return proto.CompactTextString(m) }
1907 func (*SourceCodeInfo_Location) ProtoMessage()               {}
1908 func (*SourceCodeInfo_Location) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{19, 0} }
1909
1910 func (m *SourceCodeInfo_Location) GetPath() []int32 {
1911         if m != nil {
1912                 return m.Path
1913         }
1914         return nil
1915 }
1916
1917 func (m *SourceCodeInfo_Location) GetSpan() []int32 {
1918         if m != nil {
1919                 return m.Span
1920         }
1921         return nil
1922 }
1923
1924 func (m *SourceCodeInfo_Location) GetLeadingComments() string {
1925         if m != nil && m.LeadingComments != nil {
1926                 return *m.LeadingComments
1927         }
1928         return ""
1929 }
1930
1931 func (m *SourceCodeInfo_Location) GetTrailingComments() string {
1932         if m != nil && m.TrailingComments != nil {
1933                 return *m.TrailingComments
1934         }
1935         return ""
1936 }
1937
1938 func (m *SourceCodeInfo_Location) GetLeadingDetachedComments() []string {
1939         if m != nil {
1940                 return m.LeadingDetachedComments
1941         }
1942         return nil
1943 }
1944
1945 // Describes the relationship between generated code and its original source
1946 // file. A GeneratedCodeInfo message is associated with only one generated
1947 // source file, but may contain references to different source .proto files.
1948 type GeneratedCodeInfo struct {
1949         // An Annotation connects some span of text in generated code to an element
1950         // of its generating .proto file.
1951         Annotation       []*GeneratedCodeInfo_Annotation `protobuf:"bytes,1,rep,name=annotation" json:"annotation,omitempty"`
1952         XXX_unrecognized []byte                          `json:"-"`
1953 }
1954
1955 func (m *GeneratedCodeInfo) Reset()                    { *m = GeneratedCodeInfo{} }
1956 func (m *GeneratedCodeInfo) String() string            { return proto.CompactTextString(m) }
1957 func (*GeneratedCodeInfo) ProtoMessage()               {}
1958 func (*GeneratedCodeInfo) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{20} }
1959
1960 func (m *GeneratedCodeInfo) GetAnnotation() []*GeneratedCodeInfo_Annotation {
1961         if m != nil {
1962                 return m.Annotation
1963         }
1964         return nil
1965 }
1966
1967 type GeneratedCodeInfo_Annotation struct {
1968         // Identifies the element in the original source .proto file. This field
1969         // is formatted the same as SourceCodeInfo.Location.path.
1970         Path []int32 `protobuf:"varint,1,rep,packed,name=path" json:"path,omitempty"`
1971         // Identifies the filesystem path to the original source .proto.
1972         SourceFile *string `protobuf:"bytes,2,opt,name=source_file,json=sourceFile" json:"source_file,omitempty"`
1973         // Identifies the starting offset in bytes in the generated code
1974         // that relates to the identified object.
1975         Begin *int32 `protobuf:"varint,3,opt,name=begin" json:"begin,omitempty"`
1976         // Identifies the ending offset in bytes in the generated code that
1977         // relates to the identified offset. The end offset should be one past
1978         // the last relevant byte (so the length of the text = end - begin).
1979         End              *int32 `protobuf:"varint,4,opt,name=end" json:"end,omitempty"`
1980         XXX_unrecognized []byte `json:"-"`
1981 }
1982
1983 func (m *GeneratedCodeInfo_Annotation) Reset()         { *m = GeneratedCodeInfo_Annotation{} }
1984 func (m *GeneratedCodeInfo_Annotation) String() string { return proto.CompactTextString(m) }
1985 func (*GeneratedCodeInfo_Annotation) ProtoMessage()    {}
1986 func (*GeneratedCodeInfo_Annotation) Descriptor() ([]byte, []int) {
1987         return fileDescriptor0, []int{20, 0}
1988 }
1989
1990 func (m *GeneratedCodeInfo_Annotation) GetPath() []int32 {
1991         if m != nil {
1992                 return m.Path
1993         }
1994         return nil
1995 }
1996
1997 func (m *GeneratedCodeInfo_Annotation) GetSourceFile() string {
1998         if m != nil && m.SourceFile != nil {
1999                 return *m.SourceFile
2000         }
2001         return ""
2002 }
2003
2004 func (m *GeneratedCodeInfo_Annotation) GetBegin() int32 {
2005         if m != nil && m.Begin != nil {
2006                 return *m.Begin
2007         }
2008         return 0
2009 }
2010
2011 func (m *GeneratedCodeInfo_Annotation) GetEnd() int32 {
2012         if m != nil && m.End != nil {
2013                 return *m.End
2014         }
2015         return 0
2016 }
2017
2018 func init() {
2019         proto.RegisterType((*FileDescriptorSet)(nil), "google.protobuf.FileDescriptorSet")
2020         proto.RegisterType((*FileDescriptorProto)(nil), "google.protobuf.FileDescriptorProto")
2021         proto.RegisterType((*DescriptorProto)(nil), "google.protobuf.DescriptorProto")
2022         proto.RegisterType((*DescriptorProto_ExtensionRange)(nil), "google.protobuf.DescriptorProto.ExtensionRange")
2023         proto.RegisterType((*DescriptorProto_ReservedRange)(nil), "google.protobuf.DescriptorProto.ReservedRange")
2024         proto.RegisterType((*ExtensionRangeOptions)(nil), "google.protobuf.ExtensionRangeOptions")
2025         proto.RegisterType((*FieldDescriptorProto)(nil), "google.protobuf.FieldDescriptorProto")
2026         proto.RegisterType((*OneofDescriptorProto)(nil), "google.protobuf.OneofDescriptorProto")
2027         proto.RegisterType((*EnumDescriptorProto)(nil), "google.protobuf.EnumDescriptorProto")
2028         proto.RegisterType((*EnumValueDescriptorProto)(nil), "google.protobuf.EnumValueDescriptorProto")
2029         proto.RegisterType((*ServiceDescriptorProto)(nil), "google.protobuf.ServiceDescriptorProto")
2030         proto.RegisterType((*MethodDescriptorProto)(nil), "google.protobuf.MethodDescriptorProto")
2031         proto.RegisterType((*FileOptions)(nil), "google.protobuf.FileOptions")
2032         proto.RegisterType((*MessageOptions)(nil), "google.protobuf.MessageOptions")
2033         proto.RegisterType((*FieldOptions)(nil), "google.protobuf.FieldOptions")
2034         proto.RegisterType((*OneofOptions)(nil), "google.protobuf.OneofOptions")
2035         proto.RegisterType((*EnumOptions)(nil), "google.protobuf.EnumOptions")
2036         proto.RegisterType((*EnumValueOptions)(nil), "google.protobuf.EnumValueOptions")
2037         proto.RegisterType((*ServiceOptions)(nil), "google.protobuf.ServiceOptions")
2038         proto.RegisterType((*MethodOptions)(nil), "google.protobuf.MethodOptions")
2039         proto.RegisterType((*UninterpretedOption)(nil), "google.protobuf.UninterpretedOption")
2040         proto.RegisterType((*UninterpretedOption_NamePart)(nil), "google.protobuf.UninterpretedOption.NamePart")
2041         proto.RegisterType((*SourceCodeInfo)(nil), "google.protobuf.SourceCodeInfo")
2042         proto.RegisterType((*SourceCodeInfo_Location)(nil), "google.protobuf.SourceCodeInfo.Location")
2043         proto.RegisterType((*GeneratedCodeInfo)(nil), "google.protobuf.GeneratedCodeInfo")
2044         proto.RegisterType((*GeneratedCodeInfo_Annotation)(nil), "google.protobuf.GeneratedCodeInfo.Annotation")
2045         proto.RegisterEnum("google.protobuf.FieldDescriptorProto_Type", FieldDescriptorProto_Type_name, FieldDescriptorProto_Type_value)
2046         proto.RegisterEnum("google.protobuf.FieldDescriptorProto_Label", FieldDescriptorProto_Label_name, FieldDescriptorProto_Label_value)
2047         proto.RegisterEnum("google.protobuf.FileOptions_OptimizeMode", FileOptions_OptimizeMode_name, FileOptions_OptimizeMode_value)
2048         proto.RegisterEnum("google.protobuf.FieldOptions_CType", FieldOptions_CType_name, FieldOptions_CType_value)
2049         proto.RegisterEnum("google.protobuf.FieldOptions_JSType", FieldOptions_JSType_name, FieldOptions_JSType_value)
2050         proto.RegisterEnum("google.protobuf.MethodOptions_IdempotencyLevel", MethodOptions_IdempotencyLevel_name, MethodOptions_IdempotencyLevel_value)
2051 }
2052
2053 func init() { proto.RegisterFile("google/protobuf/descriptor.proto", fileDescriptor0) }
2054
2055 var fileDescriptor0 = []byte{
2056         // 2519 bytes of a gzipped FileDescriptorProto
2057         0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x59, 0xdd, 0x6e, 0x1b, 0xc7,
2058         0x15, 0x0e, 0x7f, 0x45, 0x1e, 0x52, 0xd4, 0x68, 0xa4, 0xd8, 0x6b, 0xe5, 0xc7, 0x32, 0xf3, 0x63,
2059         0xd9, 0x69, 0xa8, 0x40, 0xb1, 0x1d, 0x47, 0x29, 0xd2, 0x52, 0xe4, 0x5a, 0xa1, 0x4a, 0x91, 0xec,
2060         0x92, 0x6a, 0x7e, 0x6e, 0x16, 0xa3, 0xdd, 0x21, 0xb9, 0xf6, 0x72, 0x77, 0xb3, 0xbb, 0xb4, 0xad,
2061         0xa0, 0x17, 0x06, 0x7a, 0x55, 0xa0, 0x0f, 0x50, 0x14, 0x45, 0x2f, 0x72, 0x13, 0xa0, 0x0f, 0x50,
2062         0x20, 0x77, 0x7d, 0x82, 0x02, 0x79, 0x83, 0xa2, 0x28, 0xd0, 0x3e, 0x46, 0x31, 0x33, 0xbb, 0xcb,
2063         0x5d, 0xfe, 0xc4, 0x6a, 0x80, 0x38, 0x57, 0xe4, 0x7c, 0xe7, 0x3b, 0x67, 0xce, 0x9c, 0x39, 0x33,
2064         0x73, 0x66, 0x16, 0x76, 0x47, 0xb6, 0x3d, 0x32, 0xe9, 0xbe, 0xe3, 0xda, 0xbe, 0x7d, 0x3e, 0x1d,
2065         0xee, 0xeb, 0xd4, 0xd3, 0x5c, 0xc3, 0xf1, 0x6d, 0xb7, 0xc6, 0x31, 0xbc, 0x21, 0x18, 0xb5, 0x90,
2066         0x51, 0x3d, 0x85, 0xcd, 0x07, 0x86, 0x49, 0x9b, 0x11, 0xb1, 0x4f, 0x7d, 0x7c, 0x1f, 0xb2, 0x43,
2067         0xc3, 0xa4, 0x52, 0x6a, 0x37, 0xb3, 0x57, 0x3a, 0x78, 0xb3, 0x36, 0xa7, 0x54, 0x4b, 0x6a, 0xf4,
2068         0x18, 0xac, 0x70, 0x8d, 0xea, 0xbf, 0xb3, 0xb0, 0xb5, 0x44, 0x8a, 0x31, 0x64, 0x2d, 0x32, 0x61,
2069         0x16, 0x53, 0x7b, 0x45, 0x85, 0xff, 0xc7, 0x12, 0xac, 0x39, 0x44, 0x7b, 0x44, 0x46, 0x54, 0x4a,
2070         0x73, 0x38, 0x6c, 0xe2, 0xd7, 0x01, 0x74, 0xea, 0x50, 0x4b, 0xa7, 0x96, 0x76, 0x21, 0x65, 0x76,
2071         0x33, 0x7b, 0x45, 0x25, 0x86, 0xe0, 0x77, 0x60, 0xd3, 0x99, 0x9e, 0x9b, 0x86, 0xa6, 0xc6, 0x68,
2072         0xb0, 0x9b, 0xd9, 0xcb, 0x29, 0x48, 0x08, 0x9a, 0x33, 0xf2, 0x4d, 0xd8, 0x78, 0x42, 0xc9, 0xa3,
2073         0x38, 0xb5, 0xc4, 0xa9, 0x15, 0x06, 0xc7, 0x88, 0x0d, 0x28, 0x4f, 0xa8, 0xe7, 0x91, 0x11, 0x55,
2074         0xfd, 0x0b, 0x87, 0x4a, 0x59, 0x3e, 0xfa, 0xdd, 0x85, 0xd1, 0xcf, 0x8f, 0xbc, 0x14, 0x68, 0x0d,
2075         0x2e, 0x1c, 0x8a, 0xeb, 0x50, 0xa4, 0xd6, 0x74, 0x22, 0x2c, 0xe4, 0x56, 0xc4, 0x4f, 0xb6, 0xa6,
2076         0x93, 0x79, 0x2b, 0x05, 0xa6, 0x16, 0x98, 0x58, 0xf3, 0xa8, 0xfb, 0xd8, 0xd0, 0xa8, 0x94, 0xe7,
2077         0x06, 0x6e, 0x2e, 0x18, 0xe8, 0x0b, 0xf9, 0xbc, 0x8d, 0x50, 0x0f, 0x37, 0xa0, 0x48, 0x9f, 0xfa,
2078         0xd4, 0xf2, 0x0c, 0xdb, 0x92, 0xd6, 0xb8, 0x91, 0xb7, 0x96, 0xcc, 0x22, 0x35, 0xf5, 0x79, 0x13,
2079         0x33, 0x3d, 0x7c, 0x0f, 0xd6, 0x6c, 0xc7, 0x37, 0x6c, 0xcb, 0x93, 0x0a, 0xbb, 0xa9, 0xbd, 0xd2,
2080         0xc1, 0xab, 0x4b, 0x13, 0xa1, 0x2b, 0x38, 0x4a, 0x48, 0xc6, 0x2d, 0x40, 0x9e, 0x3d, 0x75, 0x35,
2081         0xaa, 0x6a, 0xb6, 0x4e, 0x55, 0xc3, 0x1a, 0xda, 0x52, 0x91, 0x1b, 0xb8, 0xbe, 0x38, 0x10, 0x4e,
2082         0x6c, 0xd8, 0x3a, 0x6d, 0x59, 0x43, 0x5b, 0xa9, 0x78, 0x89, 0x36, 0xbe, 0x02, 0x79, 0xef, 0xc2,
2083         0xf2, 0xc9, 0x53, 0xa9, 0xcc, 0x33, 0x24, 0x68, 0x55, 0xbf, 0xcd, 0xc3, 0xc6, 0x65, 0x52, 0xec,
2084         0x23, 0xc8, 0x0d, 0xd9, 0x28, 0xa5, 0xf4, 0xff, 0x13, 0x03, 0xa1, 0x93, 0x0c, 0x62, 0xfe, 0x07,
2085         0x06, 0xb1, 0x0e, 0x25, 0x8b, 0x7a, 0x3e, 0xd5, 0x45, 0x46, 0x64, 0x2e, 0x99, 0x53, 0x20, 0x94,
2086         0x16, 0x53, 0x2a, 0xfb, 0x83, 0x52, 0xea, 0x33, 0xd8, 0x88, 0x5c, 0x52, 0x5d, 0x62, 0x8d, 0xc2,
2087         0xdc, 0xdc, 0x7f, 0x9e, 0x27, 0x35, 0x39, 0xd4, 0x53, 0x98, 0x9a, 0x52, 0xa1, 0x89, 0x36, 0x6e,
2088         0x02, 0xd8, 0x16, 0xb5, 0x87, 0xaa, 0x4e, 0x35, 0x53, 0x2a, 0xac, 0x88, 0x52, 0x97, 0x51, 0x16,
2089         0xa2, 0x64, 0x0b, 0x54, 0x33, 0xf1, 0x87, 0xb3, 0x54, 0x5b, 0x5b, 0x91, 0x29, 0xa7, 0x62, 0x91,
2090         0x2d, 0x64, 0xdb, 0x19, 0x54, 0x5c, 0xca, 0xf2, 0x9e, 0xea, 0xc1, 0xc8, 0x8a, 0xdc, 0x89, 0xda,
2091         0x73, 0x47, 0xa6, 0x04, 0x6a, 0x62, 0x60, 0xeb, 0x6e, 0xbc, 0x89, 0xdf, 0x80, 0x08, 0x50, 0x79,
2092         0x5a, 0x01, 0xdf, 0x85, 0xca, 0x21, 0xd8, 0x21, 0x13, 0xba, 0xf3, 0x15, 0x54, 0x92, 0xe1, 0xc1,
2093         0xdb, 0x90, 0xf3, 0x7c, 0xe2, 0xfa, 0x3c, 0x0b, 0x73, 0x8a, 0x68, 0x60, 0x04, 0x19, 0x6a, 0xe9,
2094         0x7c, 0x97, 0xcb, 0x29, 0xec, 0x2f, 0xfe, 0xe5, 0x6c, 0xc0, 0x19, 0x3e, 0xe0, 0xb7, 0x17, 0x67,
2095         0x34, 0x61, 0x79, 0x7e, 0xdc, 0x3b, 0x1f, 0xc0, 0x7a, 0x62, 0x00, 0x97, 0xed, 0xba, 0xfa, 0x5b,
2096         0x78, 0x79, 0xa9, 0x69, 0xfc, 0x19, 0x6c, 0x4f, 0x2d, 0xc3, 0xf2, 0xa9, 0xeb, 0xb8, 0x94, 0x65,
2097         0xac, 0xe8, 0x4a, 0xfa, 0xcf, 0xda, 0x8a, 0x9c, 0x3b, 0x8b, 0xb3, 0x85, 0x15, 0x65, 0x6b, 0xba,
2098         0x08, 0xde, 0x2e, 0x16, 0xfe, 0xbb, 0x86, 0x9e, 0x3d, 0x7b, 0xf6, 0x2c, 0x5d, 0xfd, 0x63, 0x1e,
2099         0xb6, 0x97, 0xad, 0x99, 0xa5, 0xcb, 0xf7, 0x0a, 0xe4, 0xad, 0xe9, 0xe4, 0x9c, 0xba, 0x3c, 0x48,
2100         0x39, 0x25, 0x68, 0xe1, 0x3a, 0xe4, 0x4c, 0x72, 0x4e, 0x4d, 0x29, 0xbb, 0x9b, 0xda, 0xab, 0x1c,
2101         0xbc, 0x73, 0xa9, 0x55, 0x59, 0x6b, 0x33, 0x15, 0x45, 0x68, 0xe2, 0x8f, 0x21, 0x1b, 0x6c, 0xd1,
2102         0xcc, 0xc2, 0xed, 0xcb, 0x59, 0x60, 0x6b, 0x49, 0xe1, 0x7a, 0xf8, 0x15, 0x28, 0xb2, 0x5f, 0x91,
2103         0x1b, 0x79, 0xee, 0x73, 0x81, 0x01, 0x2c, 0x2f, 0xf0, 0x0e, 0x14, 0xf8, 0x32, 0xd1, 0x69, 0x78,
2104         0xb4, 0x45, 0x6d, 0x96, 0x58, 0x3a, 0x1d, 0x92, 0xa9, 0xe9, 0xab, 0x8f, 0x89, 0x39, 0xa5, 0x3c,
2105         0xe1, 0x8b, 0x4a, 0x39, 0x00, 0x7f, 0xc3, 0x30, 0x7c, 0x1d, 0x4a, 0x62, 0x55, 0x19, 0x96, 0x4e,
2106         0x9f, 0xf2, 0xdd, 0x33, 0xa7, 0x88, 0x85, 0xd6, 0x62, 0x08, 0xeb, 0xfe, 0xa1, 0x67, 0x5b, 0x61,
2107         0x6a, 0xf2, 0x2e, 0x18, 0xc0, 0xbb, 0xff, 0x60, 0x7e, 0xe3, 0x7e, 0x6d, 0xf9, 0xf0, 0xe6, 0x73,
2108         0xaa, 0xfa, 0xb7, 0x34, 0x64, 0xf9, 0x7e, 0xb1, 0x01, 0xa5, 0xc1, 0xe7, 0x3d, 0x59, 0x6d, 0x76,
2109         0xcf, 0x8e, 0xda, 0x32, 0x4a, 0xe1, 0x0a, 0x00, 0x07, 0x1e, 0xb4, 0xbb, 0xf5, 0x01, 0x4a, 0x47,
2110         0xed, 0x56, 0x67, 0x70, 0xef, 0x0e, 0xca, 0x44, 0x0a, 0x67, 0x02, 0xc8, 0xc6, 0x09, 0xef, 0x1f,
2111         0xa0, 0x1c, 0x46, 0x50, 0x16, 0x06, 0x5a, 0x9f, 0xc9, 0xcd, 0x7b, 0x77, 0x50, 0x3e, 0x89, 0xbc,
2112         0x7f, 0x80, 0xd6, 0xf0, 0x3a, 0x14, 0x39, 0x72, 0xd4, 0xed, 0xb6, 0x51, 0x21, 0xb2, 0xd9, 0x1f,
2113         0x28, 0xad, 0xce, 0x31, 0x2a, 0x46, 0x36, 0x8f, 0x95, 0xee, 0x59, 0x0f, 0x41, 0x64, 0xe1, 0x54,
2114         0xee, 0xf7, 0xeb, 0xc7, 0x32, 0x2a, 0x45, 0x8c, 0xa3, 0xcf, 0x07, 0x72, 0x1f, 0x95, 0x13, 0x6e,
2115         0xbd, 0x7f, 0x80, 0xd6, 0xa3, 0x2e, 0xe4, 0xce, 0xd9, 0x29, 0xaa, 0xe0, 0x4d, 0x58, 0x17, 0x5d,
2116         0x84, 0x4e, 0x6c, 0xcc, 0x41, 0xf7, 0xee, 0x20, 0x34, 0x73, 0x44, 0x58, 0xd9, 0x4c, 0x00, 0xf7,
2117         0xee, 0x20, 0x5c, 0x6d, 0x40, 0x8e, 0x67, 0x17, 0xc6, 0x50, 0x69, 0xd7, 0x8f, 0xe4, 0xb6, 0xda,
2118         0xed, 0x0d, 0x5a, 0xdd, 0x4e, 0xbd, 0x8d, 0x52, 0x33, 0x4c, 0x91, 0x7f, 0x7d, 0xd6, 0x52, 0xe4,
2119         0x26, 0x4a, 0xc7, 0xb1, 0x9e, 0x5c, 0x1f, 0xc8, 0x4d, 0x94, 0xa9, 0x6a, 0xb0, 0xbd, 0x6c, 0x9f,
2120         0x5c, 0xba, 0x32, 0x62, 0x53, 0x9c, 0x5e, 0x31, 0xc5, 0xdc, 0xd6, 0xc2, 0x14, 0x7f, 0x9d, 0x82,
2121         0xad, 0x25, 0x67, 0xc5, 0xd2, 0x4e, 0x7e, 0x01, 0x39, 0x91, 0xa2, 0xe2, 0xf4, 0xbc, 0xb5, 0xf4,
2122         0xd0, 0xe1, 0x09, 0xbb, 0x70, 0x82, 0x72, 0xbd, 0x78, 0x05, 0x91, 0x59, 0x51, 0x41, 0x30, 0x13,
2123         0x0b, 0x4e, 0xfe, 0x2e, 0x05, 0xd2, 0x2a, 0xdb, 0xcf, 0xd9, 0x28, 0xd2, 0x89, 0x8d, 0xe2, 0xa3,
2124         0x79, 0x07, 0x6e, 0xac, 0x1e, 0xc3, 0x82, 0x17, 0xdf, 0xa4, 0xe0, 0xca, 0xf2, 0x42, 0x6b, 0xa9,
2125         0x0f, 0x1f, 0x43, 0x7e, 0x42, 0xfd, 0xb1, 0x1d, 0x16, 0x1b, 0x6f, 0x2f, 0x39, 0xc2, 0x98, 0x78,
2126         0x3e, 0x56, 0x81, 0x56, 0xfc, 0x0c, 0xcc, 0xac, 0xaa, 0x96, 0x84, 0x37, 0x0b, 0x9e, 0xfe, 0x3e,
2127         0x0d, 0x2f, 0x2f, 0x35, 0xbe, 0xd4, 0xd1, 0xd7, 0x00, 0x0c, 0xcb, 0x99, 0xfa, 0xa2, 0xa0, 0x10,
2128         0xfb, 0x53, 0x91, 0x23, 0x7c, 0xed, 0xb3, 0xbd, 0x67, 0xea, 0x47, 0xf2, 0x0c, 0x97, 0x83, 0x80,
2129         0x38, 0xe1, 0xfe, 0xcc, 0xd1, 0x2c, 0x77, 0xf4, 0xf5, 0x15, 0x23, 0x5d, 0x38, 0xab, 0xdf, 0x03,
2130         0xa4, 0x99, 0x06, 0xb5, 0x7c, 0xd5, 0xf3, 0x5d, 0x4a, 0x26, 0x86, 0x35, 0xe2, 0x1b, 0x70, 0xe1,
2131         0x30, 0x37, 0x24, 0xa6, 0x47, 0x95, 0x0d, 0x21, 0xee, 0x87, 0x52, 0xa6, 0xc1, 0xcf, 0x38, 0x37,
2132         0xa6, 0x91, 0x4f, 0x68, 0x08, 0x71, 0xa4, 0x51, 0xfd, 0xb6, 0x00, 0xa5, 0x58, 0x59, 0x8a, 0x6f,
2133         0x40, 0xf9, 0x21, 0x79, 0x4c, 0xd4, 0xf0, 0xaa, 0x21, 0x22, 0x51, 0x62, 0x58, 0x2f, 0xb8, 0x6e,
2134         0xbc, 0x07, 0xdb, 0x9c, 0x62, 0x4f, 0x7d, 0xea, 0xaa, 0x9a, 0x49, 0x3c, 0x8f, 0x07, 0xad, 0xc0,
2135         0xa9, 0x98, 0xc9, 0xba, 0x4c, 0xd4, 0x08, 0x25, 0xf8, 0x2e, 0x6c, 0x71, 0x8d, 0xc9, 0xd4, 0xf4,
2136         0x0d, 0xc7, 0xa4, 0x2a, 0xbb, 0xfc, 0x78, 0x7c, 0x23, 0x8e, 0x3c, 0xdb, 0x64, 0x8c, 0xd3, 0x80,
2137         0xc0, 0x3c, 0xf2, 0x70, 0x13, 0x5e, 0xe3, 0x6a, 0x23, 0x6a, 0x51, 0x97, 0xf8, 0x54, 0xa5, 0x5f,
2138         0x4e, 0x89, 0xe9, 0xa9, 0xc4, 0xd2, 0xd5, 0x31, 0xf1, 0xc6, 0xd2, 0x36, 0x33, 0x70, 0x94, 0x96,
2139         0x52, 0xca, 0x35, 0x46, 0x3c, 0x0e, 0x78, 0x32, 0xa7, 0xd5, 0x2d, 0xfd, 0x13, 0xe2, 0x8d, 0xf1,
2140         0x21, 0x5c, 0xe1, 0x56, 0x3c, 0xdf, 0x35, 0xac, 0x91, 0xaa, 0x8d, 0xa9, 0xf6, 0x48, 0x9d, 0xfa,
2141         0xc3, 0xfb, 0xd2, 0x2b, 0xf1, 0xfe, 0xb9, 0x87, 0x7d, 0xce, 0x69, 0x30, 0xca, 0x99, 0x3f, 0xbc,
2142         0x8f, 0xfb, 0x50, 0x66, 0x93, 0x31, 0x31, 0xbe, 0xa2, 0xea, 0xd0, 0x76, 0xf9, 0xc9, 0x52, 0x59,
2143         0xb2, 0xb2, 0x63, 0x11, 0xac, 0x75, 0x03, 0x85, 0x53, 0x5b, 0xa7, 0x87, 0xb9, 0x7e, 0x4f, 0x96,
2144         0x9b, 0x4a, 0x29, 0xb4, 0xf2, 0xc0, 0x76, 0x59, 0x42, 0x8d, 0xec, 0x28, 0xc0, 0x25, 0x91, 0x50,
2145         0x23, 0x3b, 0x0c, 0xef, 0x5d, 0xd8, 0xd2, 0x34, 0x31, 0x66, 0x43, 0x53, 0x83, 0x2b, 0x8a, 0x27,
2146         0xa1, 0x44, 0xb0, 0x34, 0xed, 0x58, 0x10, 0x82, 0x1c, 0xf7, 0xf0, 0x87, 0xf0, 0xf2, 0x2c, 0x58,
2147         0x71, 0xc5, 0xcd, 0x85, 0x51, 0xce, 0xab, 0xde, 0x85, 0x2d, 0xe7, 0x62, 0x51, 0x11, 0x27, 0x7a,
2148         0x74, 0x2e, 0xe6, 0xd5, 0x3e, 0x80, 0x6d, 0x67, 0xec, 0x2c, 0xea, 0xdd, 0x8e, 0xeb, 0x61, 0x67,
2149         0xec, 0xcc, 0x2b, 0xbe, 0xc5, 0xef, 0xab, 0x2e, 0xd5, 0x88, 0x4f, 0x75, 0xe9, 0x6a, 0x9c, 0x1e,
2150         0x13, 0xe0, 0x7d, 0x40, 0x9a, 0xa6, 0x52, 0x8b, 0x9c, 0x9b, 0x54, 0x25, 0x2e, 0xb5, 0x88, 0x27,
2151         0x5d, 0x8f, 0x93, 0x2b, 0x9a, 0x26, 0x73, 0x69, 0x9d, 0x0b, 0xf1, 0x6d, 0xd8, 0xb4, 0xcf, 0x1f,
2152         0x6a, 0x22, 0x25, 0x55, 0xc7, 0xa5, 0x43, 0xe3, 0xa9, 0xf4, 0x26, 0x8f, 0xef, 0x06, 0x13, 0xf0,
2153         0x84, 0xec, 0x71, 0x18, 0xdf, 0x02, 0xa4, 0x79, 0x63, 0xe2, 0x3a, 0xbc, 0x26, 0xf0, 0x1c, 0xa2,
2154         0x51, 0xe9, 0x2d, 0x41, 0x15, 0x78, 0x27, 0x84, 0xd9, 0x92, 0xf0, 0x9e, 0x18, 0x43, 0x3f, 0xb4,
2155         0x78, 0x53, 0x2c, 0x09, 0x8e, 0x05, 0xd6, 0xf6, 0x00, 0xb1, 0x50, 0x24, 0x3a, 0xde, 0xe3, 0xb4,
2156         0x8a, 0x33, 0x76, 0xe2, 0xfd, 0xbe, 0x01, 0xeb, 0x8c, 0x39, 0xeb, 0xf4, 0x96, 0xa8, 0x67, 0x9c,
2157         0x71, 0xac, 0xc7, 0x1f, 0xad, 0xb4, 0xac, 0x1e, 0x42, 0x39, 0x9e, 0x9f, 0xb8, 0x08, 0x22, 0x43,
2158         0x51, 0x8a, 0x9d, 0xf5, 0x8d, 0x6e, 0x93, 0x9d, 0xd2, 0x5f, 0xc8, 0x28, 0xcd, 0xaa, 0x85, 0x76,
2159         0x6b, 0x20, 0xab, 0xca, 0x59, 0x67, 0xd0, 0x3a, 0x95, 0x51, 0x26, 0x56, 0x96, 0x9e, 0x64, 0x0b,
2160         0x6f, 0xa3, 0x9b, 0xd5, 0xef, 0xd2, 0x50, 0x49, 0xde, 0x33, 0xf0, 0xcf, 0xe1, 0x6a, 0xf8, 0x28,
2161         0xe0, 0x51, 0x5f, 0x7d, 0x62, 0xb8, 0x7c, 0xe1, 0x4c, 0x88, 0xa8, 0xb3, 0xa3, 0xa9, 0xdb, 0x0e,
2162         0x58, 0x7d, 0xea, 0x7f, 0x6a, 0xb8, 0x6c, 0x59, 0x4c, 0x88, 0x8f, 0xdb, 0x70, 0xdd, 0xb2, 0x55,
2163         0xcf, 0x27, 0x96, 0x4e, 0x5c, 0x5d, 0x9d, 0x3d, 0xc7, 0xa8, 0x44, 0xd3, 0xa8, 0xe7, 0xd9, 0xe2,
2164         0xc0, 0x8a, 0xac, 0xbc, 0x6a, 0xd9, 0xfd, 0x80, 0x3c, 0xdb, 0xc9, 0xeb, 0x01, 0x75, 0x2e, 0xcd,
2165         0x32, 0xab, 0xd2, 0xec, 0x15, 0x28, 0x4e, 0x88, 0xa3, 0x52, 0xcb, 0x77, 0x2f, 0x78, 0x75, 0x59,
2166         0x50, 0x0a, 0x13, 0xe2, 0xc8, 0xac, 0xfd, 0x42, 0x8a, 0xfc, 0x93, 0x6c, 0xa1, 0x80, 0x8a, 0x27,
2167         0xd9, 0x42, 0x11, 0x41, 0xf5, 0x5f, 0x19, 0x28, 0xc7, 0xab, 0x4d, 0x56, 0xbc, 0x6b, 0xfc, 0x64,
2168         0x49, 0xf1, 0xbd, 0xe7, 0x8d, 0xef, 0xad, 0x4d, 0x6b, 0x0d, 0x76, 0xe4, 0x1c, 0xe6, 0x45, 0x0d,
2169         0xa8, 0x08, 0x4d, 0x76, 0xdc, 0xb3, 0xdd, 0x86, 0x8a, 0x7b, 0x4d, 0x41, 0x09, 0x5a, 0xf8, 0x18,
2170         0xf2, 0x0f, 0x3d, 0x6e, 0x3b, 0xcf, 0x6d, 0xbf, 0xf9, 0xfd, 0xb6, 0x4f, 0xfa, 0xdc, 0x78, 0xf1,
2171         0xa4, 0xaf, 0x76, 0xba, 0xca, 0x69, 0xbd, 0xad, 0x04, 0xea, 0xf8, 0x1a, 0x64, 0x4d, 0xf2, 0xd5,
2172         0x45, 0xf2, 0x70, 0xe2, 0xd0, 0x65, 0x27, 0xe1, 0x1a, 0x64, 0x9f, 0x50, 0xf2, 0x28, 0x79, 0x24,
2173         0x70, 0xe8, 0x47, 0x5c, 0x0c, 0xfb, 0x90, 0xe3, 0xf1, 0xc2, 0x00, 0x41, 0xc4, 0xd0, 0x4b, 0xb8,
2174         0x00, 0xd9, 0x46, 0x57, 0x61, 0x0b, 0x02, 0x41, 0x59, 0xa0, 0x6a, 0xaf, 0x25, 0x37, 0x64, 0x94,
2175         0xae, 0xde, 0x85, 0xbc, 0x08, 0x02, 0x5b, 0x2c, 0x51, 0x18, 0xd0, 0x4b, 0x41, 0x33, 0xb0, 0x91,
2176         0x0a, 0xa5, 0x67, 0xa7, 0x47, 0xb2, 0x82, 0xd2, 0xc9, 0xa9, 0xce, 0xa2, 0x5c, 0xd5, 0x83, 0x72,
2177         0xbc, 0xdc, 0x7c, 0x31, 0x57, 0xc9, 0xbf, 0xa7, 0xa0, 0x14, 0x2b, 0x1f, 0x59, 0xe1, 0x42, 0x4c,
2178         0xd3, 0x7e, 0xa2, 0x12, 0xd3, 0x20, 0x5e, 0x90, 0x1a, 0xc0, 0xa1, 0x3a, 0x43, 0x2e, 0x3b, 0x75,
2179         0x2f, 0x68, 0x89, 0xe4, 0x50, 0xbe, 0xfa, 0x97, 0x14, 0xa0, 0xf9, 0x02, 0x74, 0xce, 0xcd, 0xd4,
2180         0x4f, 0xe9, 0x66, 0xf5, 0xcf, 0x29, 0xa8, 0x24, 0xab, 0xce, 0x39, 0xf7, 0x6e, 0xfc, 0xa4, 0xee,
2181         0xfd, 0x33, 0x0d, 0xeb, 0x89, 0x5a, 0xf3, 0xb2, 0xde, 0x7d, 0x09, 0x9b, 0x86, 0x4e, 0x27, 0x8e,
2182         0xed, 0x53, 0x4b, 0xbb, 0x50, 0x4d, 0xfa, 0x98, 0x9a, 0x52, 0x95, 0x6f, 0x1a, 0xfb, 0xdf, 0x5f,
2183         0xcd, 0xd6, 0x5a, 0x33, 0xbd, 0x36, 0x53, 0x3b, 0xdc, 0x6a, 0x35, 0xe5, 0xd3, 0x5e, 0x77, 0x20,
2184         0x77, 0x1a, 0x9f, 0xab, 0x67, 0x9d, 0x5f, 0x75, 0xba, 0x9f, 0x76, 0x14, 0x64, 0xcc, 0xd1, 0x7e,
2185         0xc4, 0x65, 0xdf, 0x03, 0x34, 0xef, 0x14, 0xbe, 0x0a, 0xcb, 0xdc, 0x42, 0x2f, 0xe1, 0x2d, 0xd8,
2186         0xe8, 0x74, 0xd5, 0x7e, 0xab, 0x29, 0xab, 0xf2, 0x83, 0x07, 0x72, 0x63, 0xd0, 0x17, 0xd7, 0xfb,
2187         0x88, 0x3d, 0x48, 0x2c, 0xf0, 0xea, 0x9f, 0x32, 0xb0, 0xb5, 0xc4, 0x13, 0x5c, 0x0f, 0x6e, 0x16,
2188         0xe2, 0xb2, 0xf3, 0xee, 0x65, 0xbc, 0xaf, 0xb1, 0x82, 0xa0, 0x47, 0x5c, 0x3f, 0xb8, 0x88, 0xdc,
2189         0x02, 0x16, 0x25, 0xcb, 0x37, 0x86, 0x06, 0x75, 0x83, 0xd7, 0x10, 0x71, 0xdd, 0xd8, 0x98, 0xe1,
2190         0xe2, 0x41, 0xe4, 0x67, 0x80, 0x1d, 0xdb, 0x33, 0x7c, 0xe3, 0x31, 0x55, 0x0d, 0x2b, 0x7c, 0x3a,
2191         0x61, 0xd7, 0x8f, 0xac, 0x82, 0x42, 0x49, 0xcb, 0xf2, 0x23, 0xb6, 0x45, 0x47, 0x64, 0x8e, 0xcd,
2192         0x36, 0xf3, 0x8c, 0x82, 0x42, 0x49, 0xc4, 0xbe, 0x01, 0x65, 0xdd, 0x9e, 0xb2, 0x9a, 0x4c, 0xf0,
2193         0xd8, 0xd9, 0x91, 0x52, 0x4a, 0x02, 0x8b, 0x28, 0x41, 0xb5, 0x3d, 0x7b, 0xb3, 0x29, 0x2b, 0x25,
2194         0x81, 0x09, 0xca, 0x4d, 0xd8, 0x20, 0xa3, 0x91, 0xcb, 0x8c, 0x87, 0x86, 0xc4, 0xfd, 0xa1, 0x12,
2195         0xc1, 0x9c, 0xb8, 0x73, 0x02, 0x85, 0x30, 0x0e, 0xec, 0xa8, 0x66, 0x91, 0x50, 0x1d, 0xf1, 0x6e,
2196         0x97, 0xde, 0x2b, 0x2a, 0x05, 0x2b, 0x14, 0xde, 0x80, 0xb2, 0xe1, 0xa9, 0xb3, 0x27, 0xe8, 0xf4,
2197         0x6e, 0x7a, 0xaf, 0xa0, 0x94, 0x0c, 0x2f, 0x7a, 0xbe, 0xab, 0x7e, 0x93, 0x86, 0x4a, 0xf2, 0x09,
2198         0x1d, 0x37, 0xa1, 0x60, 0xda, 0x1a, 0xe1, 0xa9, 0x25, 0xbe, 0xdf, 0xec, 0x3d, 0xe7, 0xd5, 0xbd,
2199         0xd6, 0x0e, 0xf8, 0x4a, 0xa4, 0xb9, 0xf3, 0x8f, 0x14, 0x14, 0x42, 0x18, 0x5f, 0x81, 0xac, 0x43,
2200         0xfc, 0x31, 0x37, 0x97, 0x3b, 0x4a, 0xa3, 0x94, 0xc2, 0xdb, 0x0c, 0xf7, 0x1c, 0x62, 0xf1, 0x14,
2201         0x08, 0x70, 0xd6, 0x66, 0xf3, 0x6a, 0x52, 0xa2, 0xf3, 0xcb, 0x89, 0x3d, 0x99, 0x50, 0xcb, 0xf7,
2202         0xc2, 0x79, 0x0d, 0xf0, 0x46, 0x00, 0xe3, 0x77, 0x60, 0xd3, 0x77, 0x89, 0x61, 0x26, 0xb8, 0x59,
2203         0xce, 0x45, 0xa1, 0x20, 0x22, 0x1f, 0xc2, 0xb5, 0xd0, 0xae, 0x4e, 0x7d, 0xa2, 0x8d, 0xa9, 0x3e,
2204         0x53, 0xca, 0xf3, 0xf7, 0xd9, 0xab, 0x01, 0xa1, 0x19, 0xc8, 0x43, 0xdd, 0xea, 0x77, 0x29, 0xd8,
2205         0x0c, 0xaf, 0x53, 0x7a, 0x14, 0xac, 0x53, 0x00, 0x62, 0x59, 0xb6, 0x1f, 0x0f, 0xd7, 0x62, 0x2a,
2206         0x2f, 0xe8, 0xd5, 0xea, 0x91, 0x92, 0x12, 0x33, 0xb0, 0x33, 0x01, 0x98, 0x49, 0x56, 0x86, 0xed,
2207         0x3a, 0x94, 0x82, 0xef, 0x23, 0xfc, 0x23, 0x9b, 0xb8, 0x80, 0x83, 0x80, 0xd8, 0xbd, 0x0b, 0x6f,
2208         0x43, 0xee, 0x9c, 0x8e, 0x0c, 0x2b, 0x78, 0xf5, 0x14, 0x8d, 0xf0, 0x25, 0x37, 0x1b, 0xbd, 0xe4,
2209         0x1e, 0xfd, 0x21, 0x05, 0x5b, 0x9a, 0x3d, 0x99, 0xf7, 0xf7, 0x08, 0xcd, 0xbd, 0x02, 0x78, 0x9f,
2210         0xa4, 0xbe, 0xf8, 0x78, 0x64, 0xf8, 0xe3, 0xe9, 0x79, 0x4d, 0xb3, 0x27, 0xfb, 0x23, 0xdb, 0x24,
2211         0xd6, 0x68, 0xf6, 0x95, 0x90, 0xff, 0xd1, 0xde, 0x1d, 0x51, 0xeb, 0xdd, 0x91, 0x1d, 0xfb, 0x66,
2212         0xf8, 0xd1, 0xec, 0xef, 0xd7, 0xe9, 0xcc, 0x71, 0xef, 0xe8, 0xaf, 0xe9, 0x9d, 0x63, 0xd1, 0x57,
2213         0x2f, 0x8c, 0x8d, 0x42, 0x87, 0x26, 0xd5, 0xd8, 0x78, 0xff, 0x17, 0x00, 0x00, 0xff, 0xff, 0x0c,
2214         0xab, 0xb6, 0x37, 0x7e, 0x1c, 0x00, 0x00,
2215 }