From 46533c553f60f0248795e1cea635926e8314c81e Mon Sep 17 00:00:00 2001 From: fahernandez Date: Mon, 11 Feb 2019 16:02:37 -0600 Subject: [PATCH] 863 fixing swagger generation --- .../abe/a_bit_of_everything_service_api.go | 14 +- .../abe/examplepb_a_bit_of_everything.go | 2 +- .../proto/examplepb/a_bit_of_everything.pb.go | 439 +++++++++--------- .../examplepb/a_bit_of_everything.pb.gw.go | 21 +- .../proto/examplepb/a_bit_of_everything.proto | 4 +- .../a_bit_of_everything.swagger.json | 22 +- examples/proto/examplepb/stream.swagger.json | 2 +- 7 files changed, 235 insertions(+), 269 deletions(-) diff --git a/examples/clients/abe/a_bit_of_everything_service_api.go b/examples/clients/abe/a_bit_of_everything_service_api.go index 21971cc14fc..de167d3cd16 100644 --- a/examples/clients/abe/a_bit_of_everything_service_api.go +++ b/examples/clients/abe/a_bit_of_everything_service_api.go @@ -61,16 +61,15 @@ func NewABitOfEverythingServiceApiWithBasePath(basePath string) *ABitOfEverythin * @param pathEnumValue * @param nestedPathEnumValue * @param repeatedEnumValue repeated enum value. it is comma-separated in query - * @param repeatedEnumValueAnnotation Repeated numeric enum description. * @param enumValueAnnotation Numeric enum description. * @param repeatedStringAnnotation Repeated string description. * @return *ExamplepbABitOfEverything */ -func (a ABitOfEverythingServiceApi) Create(floatValue float32, doubleValue float64, int64Value string, uint64Value string, int32Value int32, fixed64Value string, fixed32Value int64, boolValue bool, stringValue string, uint32Value int64, sfixed32Value int32, sfixed64Value string, sint32Value int32, sint64Value string, nonConventionalNameValue string, enumValue string, pathEnumValue string, nestedPathEnumValue string, repeatedEnumValue []string, repeatedEnumValueAnnotation []string, enumValueAnnotation string, repeatedStringAnnotation []string) (*ExamplepbABitOfEverything, *APIResponse, error) { +func (a ABitOfEverythingServiceApi) Create(floatValue float32, doubleValue float64, int64Value string, uint64Value string, int32Value int32, fixed64Value string, fixed32Value int64, boolValue bool, stringValue string, uint32Value int64, sfixed32Value int32, sfixed64Value string, sint32Value int32, sint64Value string, nonConventionalNameValue string, enumValue string, pathEnumValue string, nestedPathEnumValue string, repeatedEnumValue []string, enumValueAnnotation string, repeatedStringAnnotation []string) (*ExamplepbABitOfEverything, *APIResponse, error) { var localVarHttpMethod = strings.ToUpper("Post") // create path and map variables - localVarPath := a.Configuration.BasePath + "/v1/example/a_bit_of_everything/{float_value}/{double_value}/{int64_value}/separator/{uint64_value}/{int32_value}/{fixed64_value}/{fixed32_value}/{bool_value}/{string_value}/{uint32_value}/{sfixed32_value}/{sfixed64_value}/{sint32_value}/{sint64_value}/{nonConventionalNameValue}/{enum_value}/{path_enum_value}/{nested_path_enum_value}/{repeated_enum_value}/{repeated_enum_value_annotation}/{enum_value_annotation}/{repeated_string_annotation}" + localVarPath := a.Configuration.BasePath + "/v1/example/a_bit_of_everything/{float_value}/{double_value}/{int64_value}/separator/{uint64_value}/{int32_value}/{fixed64_value}/{fixed32_value}/{bool_value}/{string_value}/{uint32_value}/{sfixed32_value}/{sfixed64_value}/{sint32_value}/{sint64_value}/{nonConventionalNameValue}/{enum_value}/{path_enum_value}/{nested_path_enum_value}/{repeated_enum_value}/{enum_value_annotation}/{repeated_string_annotation}" localVarPath = strings.Replace(localVarPath, "{"+"float_value"+"}", fmt.Sprintf("%v", floatValue), -1) localVarPath = strings.Replace(localVarPath, "{"+"double_value"+"}", fmt.Sprintf("%v", doubleValue), -1) localVarPath = strings.Replace(localVarPath, "{"+"int64_value"+"}", fmt.Sprintf("%v", int64Value), -1) @@ -90,7 +89,6 @@ func (a ABitOfEverythingServiceApi) Create(floatValue float32, doubleValue float localVarPath = strings.Replace(localVarPath, "{"+"path_enum_value"+"}", fmt.Sprintf("%v", pathEnumValue), -1) localVarPath = strings.Replace(localVarPath, "{"+"nested_path_enum_value"+"}", fmt.Sprintf("%v", nestedPathEnumValue), -1) localVarPath = strings.Replace(localVarPath, "{"+"repeated_enum_value"+"}", fmt.Sprintf("%v", repeatedEnumValue), -1) - localVarPath = strings.Replace(localVarPath, "{"+"repeated_enum_value_annotation"+"}", fmt.Sprintf("%v", repeatedEnumValueAnnotation), -1) localVarPath = strings.Replace(localVarPath, "{"+"enum_value_annotation"+"}", fmt.Sprintf("%v", enumValueAnnotation), -1) localVarPath = strings.Replace(localVarPath, "{"+"repeated_string_annotation"+"}", fmt.Sprintf("%v", repeatedStringAnnotation), -1) @@ -555,7 +553,7 @@ func (a ABitOfEverythingServiceApi) GetMessageWithBody(id string, body Examplepb * @param nonConventionalNameValue * @param timestampValue * @param repeatedEnumValue repeated enum value. it is comma-separated in query. - ZERO: ZERO means 0 - ONE: ONE means 1 - * @param repeatedEnumValueAnnotation Repeated numeric enum title. Repeated numeric enum description. - ZERO: ZERO means 0 - ONE: ONE means 1 + * @param repeatedEnumAnnotation Repeated numeric enum title. Repeated numeric enum description. - ZERO: ZERO means 0 - ONE: ONE means 1 * @param enumValueAnnotation Numeric enum title. Numeric enum description. - ZERO: ZERO means 0 - ONE: ONE means 1 * @param repeatedStringAnnotation Repeated string title. Repeated string description. * @param nestedAnnotationName name is nested field. @@ -563,7 +561,7 @@ func (a ABitOfEverythingServiceApi) GetMessageWithBody(id string, body Examplepb * @param nestedAnnotationOk - FALSE: FALSE is false. - TRUE: TRUE is true. * @return *interface{} */ -func (a ABitOfEverythingServiceApi) GetQuery(uuid string, floatValue float32, singleNestedName string, singleNestedAmount int64, singleNestedOk string, doubleValue float64, int64Value string, uint64Value string, int32Value int32, fixed64Value string, fixed32Value int64, boolValue bool, stringValue string, bytesValue string, uint32Value int64, enumValue string, pathEnumValue string, nestedPathEnumValue string, sfixed32Value int32, sfixed64Value string, sint32Value int32, sint64Value string, repeatedStringValue []string, oneofString string, nonConventionalNameValue string, timestampValue time.Time, repeatedEnumValue []string, repeatedEnumValueAnnotation []string, enumValueAnnotation string, repeatedStringAnnotation []string, nestedAnnotationName string, nestedAnnotationAmount int64, nestedAnnotationOk string) (*interface{}, *APIResponse, error) { +func (a ABitOfEverythingServiceApi) GetQuery(uuid string, floatValue float32, singleNestedName string, singleNestedAmount int64, singleNestedOk string, doubleValue float64, int64Value string, uint64Value string, int32Value int32, fixed64Value string, fixed32Value int64, boolValue bool, stringValue string, bytesValue string, uint32Value int64, enumValue string, pathEnumValue string, nestedPathEnumValue string, sfixed32Value int32, sfixed64Value string, sint32Value int32, sint64Value string, repeatedStringValue []string, oneofString string, nonConventionalNameValue string, timestampValue time.Time, repeatedEnumValue []string, repeatedEnumAnnotation []string, enumValueAnnotation string, repeatedStringAnnotation []string, nestedAnnotationName string, nestedAnnotationAmount int64, nestedAnnotationOk string) (*interface{}, *APIResponse, error) { var localVarHttpMethod = strings.ToUpper("Get") // create path and map variables @@ -610,8 +608,8 @@ func (a ABitOfEverythingServiceApi) GetQuery(uuid string, floatValue float32, si var repeatedEnumValueCollectionFormat = "csv" localVarQueryParams.Add("repeated_enum_value", a.Configuration.APIClient.ParameterToString(repeatedEnumValue, repeatedEnumValueCollectionFormat)) - var repeatedEnumValueAnnotationCollectionFormat = "csv" - localVarQueryParams.Add("repeated_enum_value_annotation", a.Configuration.APIClient.ParameterToString(repeatedEnumValueAnnotation, repeatedEnumValueAnnotationCollectionFormat)) + var repeatedEnumAnnotationCollectionFormat = "csv" + localVarQueryParams.Add("repeated_enum_annotation", a.Configuration.APIClient.ParameterToString(repeatedEnumAnnotation, repeatedEnumAnnotationCollectionFormat)) localVarQueryParams.Add("enum_value_annotation", a.Configuration.APIClient.ParameterToString(enumValueAnnotation, "")) var repeatedStringAnnotationCollectionFormat = "csv" diff --git a/examples/clients/abe/examplepb_a_bit_of_everything.go b/examples/clients/abe/examplepb_a_bit_of_everything.go index 74ec2f41000..2190507a464 100644 --- a/examples/clients/abe/examplepb_a_bit_of_everything.go +++ b/examples/clients/abe/examplepb_a_bit_of_everything.go @@ -79,7 +79,7 @@ type ExamplepbABitOfEverything struct { RepeatedEnumValue []ExamplepbNumericEnum `json:"repeated_enum_value,omitempty"` // Repeated numeric enum description. - RepeatedEnumValueAnnotation []ExamplepbNumericEnum `json:"repeated_enum_value_annotation,omitempty"` + RepeatedEnumAnnotation []ExamplepbNumericEnum `json:"repeated_enum_annotation,omitempty"` // Numeric enum description. EnumValueAnnotation ExamplepbNumericEnum `json:"enum_value_annotation,omitempty"` diff --git a/examples/proto/examplepb/a_bit_of_everything.pb.go b/examples/proto/examplepb/a_bit_of_everything.pb.go index 9f5eed795a3..2e0ace34871 100644 --- a/examples/proto/examplepb/a_bit_of_everything.pb.go +++ b/examples/proto/examplepb/a_bit_of_everything.pb.go @@ -55,7 +55,7 @@ func (x NumericEnum) String() string { return proto.EnumName(NumericEnum_name, int32(x)) } func (NumericEnum) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_a_bit_of_everything_ba3a130ee49bb615, []int{0} + return fileDescriptor_a_bit_of_everything_68327cc2832b2df4, []int{0} } // DeepEnum is one or zero. @@ -81,7 +81,7 @@ func (x ABitOfEverything_Nested_DeepEnum) String() string { return proto.EnumName(ABitOfEverything_Nested_DeepEnum_name, int32(x)) } func (ABitOfEverything_Nested_DeepEnum) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_a_bit_of_everything_ba3a130ee49bb615, []int{0, 0, 0} + return fileDescriptor_a_bit_of_everything_68327cc2832b2df4, []int{0, 0, 0} } // Intentionaly complicated message type to cover many features of Protobuf. @@ -121,7 +121,7 @@ type ABitOfEverything struct { // repeated enum value. it is comma-separated in query RepeatedEnumValue []NumericEnum `protobuf:"varint,28,rep,packed,name=repeated_enum_value,json=repeatedEnumValue,proto3,enum=grpc.gateway.examples.examplepb.NumericEnum" json:"repeated_enum_value,omitempty"` // repeated numeric enum comment (This comment is overridden by the field annotation) - RepeatedEnumValueAnnotation []NumericEnum `protobuf:"varint,32,rep,packed,name=repeated_enum_value_annotation,json=repeatedEnumValueAnnotation,proto3,enum=grpc.gateway.examples.examplepb.NumericEnum" json:"repeated_enum_value_annotation,omitempty"` + RepeatedEnumAnnotation []NumericEnum `protobuf:"varint,32,rep,packed,name=repeated_enum_annotation,json=repeatedEnumAnnotation,proto3,enum=grpc.gateway.examples.examplepb.NumericEnum" json:"repeated_enum_annotation,omitempty"` // numeric enum comment (This comment is overridden by the field annotation) EnumValueAnnotation NumericEnum `protobuf:"varint,33,opt,name=enum_value_annotation,json=enumValueAnnotation,proto3,enum=grpc.gateway.examples.examplepb.NumericEnum" json:"enum_value_annotation,omitempty"` // repeated string comment (This comment is overridden by the field annotation) @@ -139,7 +139,7 @@ func (m *ABitOfEverything) Reset() { *m = ABitOfEverything{} } func (m *ABitOfEverything) String() string { return proto.CompactTextString(m) } func (*ABitOfEverything) ProtoMessage() {} func (*ABitOfEverything) Descriptor() ([]byte, []int) { - return fileDescriptor_a_bit_of_everything_ba3a130ee49bb615, []int{0} + return fileDescriptor_a_bit_of_everything_68327cc2832b2df4, []int{0} } func (m *ABitOfEverything) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ABitOfEverything.Unmarshal(m, b) @@ -392,9 +392,9 @@ func (m *ABitOfEverything) GetRepeatedEnumValue() []NumericEnum { return nil } -func (m *ABitOfEverything) GetRepeatedEnumValueAnnotation() []NumericEnum { +func (m *ABitOfEverything) GetRepeatedEnumAnnotation() []NumericEnum { if m != nil { - return m.RepeatedEnumValueAnnotation + return m.RepeatedEnumAnnotation } return nil } @@ -512,7 +512,7 @@ func (m *ABitOfEverything_Nested) Reset() { *m = ABitOfEverything_Nested func (m *ABitOfEverything_Nested) String() string { return proto.CompactTextString(m) } func (*ABitOfEverything_Nested) ProtoMessage() {} func (*ABitOfEverything_Nested) Descriptor() ([]byte, []int) { - return fileDescriptor_a_bit_of_everything_ba3a130ee49bb615, []int{0, 0} + return fileDescriptor_a_bit_of_everything_68327cc2832b2df4, []int{0, 0} } func (m *ABitOfEverything_Nested) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ABitOfEverything_Nested.Unmarshal(m, b) @@ -581,7 +581,7 @@ func (m *ABitOfEverythingRepeated) Reset() { *m = ABitOfEverythingRepeat func (m *ABitOfEverythingRepeated) String() string { return proto.CompactTextString(m) } func (*ABitOfEverythingRepeated) ProtoMessage() {} func (*ABitOfEverythingRepeated) Descriptor() ([]byte, []int) { - return fileDescriptor_a_bit_of_everything_ba3a130ee49bb615, []int{1} + return fileDescriptor_a_bit_of_everything_68327cc2832b2df4, []int{1} } func (m *ABitOfEverythingRepeated) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ABitOfEverythingRepeated.Unmarshal(m, b) @@ -724,7 +724,7 @@ func (m *Body) Reset() { *m = Body{} } func (m *Body) String() string { return proto.CompactTextString(m) } func (*Body) ProtoMessage() {} func (*Body) Descriptor() ([]byte, []int) { - return fileDescriptor_a_bit_of_everything_ba3a130ee49bb615, []int{2} + return fileDescriptor_a_bit_of_everything_68327cc2832b2df4, []int{2} } func (m *Body) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Body.Unmarshal(m, b) @@ -763,7 +763,7 @@ func (m *MessageWithBody) Reset() { *m = MessageWithBody{} } func (m *MessageWithBody) String() string { return proto.CompactTextString(m) } func (*MessageWithBody) ProtoMessage() {} func (*MessageWithBody) Descriptor() ([]byte, []int) { - return fileDescriptor_a_bit_of_everything_ba3a130ee49bb615, []int{3} + return fileDescriptor_a_bit_of_everything_68327cc2832b2df4, []int{3} } func (m *MessageWithBody) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MessageWithBody.Unmarshal(m, b) @@ -810,7 +810,7 @@ func (m *UpdateV2Request) Reset() { *m = UpdateV2Request{} } func (m *UpdateV2Request) String() string { return proto.CompactTextString(m) } func (*UpdateV2Request) ProtoMessage() {} func (*UpdateV2Request) Descriptor() ([]byte, []int) { - return fileDescriptor_a_bit_of_everything_ba3a130ee49bb615, []int{4} + return fileDescriptor_a_bit_of_everything_68327cc2832b2df4, []int{4} } func (m *UpdateV2Request) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_UpdateV2Request.Unmarshal(m, b) @@ -1574,212 +1574,213 @@ var _AnotherServiceWithNoBindings_serviceDesc = grpc.ServiceDesc{ } func init() { - proto.RegisterFile("examples/proto/examplepb/a_bit_of_everything.proto", fileDescriptor_a_bit_of_everything_ba3a130ee49bb615) -} - -var fileDescriptor_a_bit_of_everything_ba3a130ee49bb615 = []byte{ - // 3247 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x5a, 0xdb, 0x73, 0xdb, 0xc6, - 0xd5, 0x17, 0x08, 0xea, 0xb6, 0xba, 0x51, 0x2b, 0x5f, 0x24, 0x5a, 0xb6, 0xd6, 0xb4, 0x93, 0xc0, - 0x8c, 0x49, 0x48, 0x90, 0xec, 0xc8, 0xcc, 0x24, 0xfe, 0x48, 0x5d, 0x6c, 0xc5, 0xb6, 0x2c, 0xc3, - 0x8e, 0xbf, 0x8c, 0x63, 0x47, 0x03, 0x92, 0x4b, 0x11, 0x16, 0x81, 0x45, 0x80, 0x85, 0x6c, 0x7e, - 0xfc, 0xf8, 0x7d, 0xe9, 0x65, 0xd2, 0x69, 0xf3, 0xd0, 0x19, 0xa5, 0x7d, 0xe8, 0x65, 0xfa, 0x17, - 0xf4, 0xb5, 0xd3, 0x87, 0xcc, 0xf4, 0x36, 0x93, 0xe9, 0x4c, 0xfb, 0x54, 0xb7, 0xd3, 0x7f, 0xa0, - 0x7d, 0xe8, 0x5f, 0xd0, 0x99, 0xbe, 0x74, 0x3a, 0x58, 0x00, 0x24, 0x00, 0x92, 0x96, 0x69, 0x67, - 0xf2, 0x22, 0x63, 0x77, 0xcf, 0x39, 0xbf, 0xb3, 0x67, 0xcf, 0x9e, 0xcb, 0xd2, 0x40, 0xc2, 0x4f, - 0x15, 0xcd, 0xa8, 0x61, 0x4b, 0x34, 0x4c, 0x42, 0x89, 0xe8, 0x0d, 0x8d, 0xa2, 0xa8, 0xec, 0x16, - 0x55, 0xba, 0x4b, 0x2a, 0xbb, 0xf8, 0x00, 0x9b, 0x75, 0x5a, 0x55, 0xf5, 0xbd, 0x2c, 0xa3, 0x81, - 0x0b, 0x7b, 0xa6, 0x51, 0xca, 0xee, 0x29, 0x14, 0x3f, 0x51, 0xea, 0x59, 0x5f, 0x40, 0xb6, 0xc5, - 0x9a, 0x9c, 0xdf, 0x23, 0x64, 0xaf, 0x86, 0x45, 0xc5, 0x50, 0x45, 0x45, 0xd7, 0x09, 0x55, 0xa8, - 0x4a, 0x74, 0xcb, 0x65, 0x4f, 0x22, 0x6f, 0x95, 0x8d, 0x8a, 0x76, 0x45, 0xac, 0xa8, 0xb8, 0x56, - 0xde, 0xd5, 0x14, 0x6b, 0xdf, 0xa3, 0x38, 0x15, 0xa5, 0xc0, 0x9a, 0x41, 0xeb, 0xde, 0xe2, 0x99, - 0xe8, 0x62, 0xd9, 0x36, 0x99, 0x7c, 0x6f, 0xfd, 0x8d, 0xc8, 0x8e, 0x0c, 0x85, 0x56, 0xb1, 0x6e, - 0x6b, 0xec, 0x63, 0xd7, 0xf9, 0xf2, 0xf5, 0x88, 0x10, 0x5a, 0x76, 0x51, 0xd4, 0xb0, 0x65, 0x29, - 0x7b, 0xd8, 0xa3, 0x38, 0xdb, 0x49, 0x21, 0x45, 0x48, 0x16, 0xa2, 0xda, 0x50, 0x55, 0xc3, 0x16, - 0x55, 0x34, 0xc3, 0x23, 0xb8, 0xc8, 0xfe, 0x29, 0x65, 0xf6, 0xb0, 0x9e, 0xb1, 0x9e, 0x28, 0x7b, - 0x7b, 0xd8, 0x14, 0x89, 0xc1, 0xec, 0xd1, 0x69, 0x9b, 0xd4, 0xa7, 0xa7, 0x40, 0x22, 0x5f, 0x50, - 0xe9, 0xed, 0xca, 0x46, 0xcb, 0xea, 0xf0, 0x11, 0x98, 0xb0, 0x54, 0x7d, 0xaf, 0x86, 0x77, 0x75, - 0x6c, 0x51, 0x5c, 0x9e, 0x9d, 0x43, 0x9c, 0x30, 0x26, 0xad, 0x66, 0x8f, 0x38, 0x87, 0x6c, 0x54, - 0x52, 0x76, 0x9b, 0xf1, 0xcb, 0xe3, 0xae, 0x38, 0x77, 0x04, 0xab, 0x20, 0x6e, 0xdb, 0x6a, 0x79, - 0x96, 0x43, 0x9c, 0x30, 0x5a, 0xb8, 0x77, 0x98, 0xbf, 0xf3, 0x09, 0xc7, 0x7d, 0x8f, 0xbb, 0xf1, - 0xa1, 0x92, 0xa9, 0xe4, 0x33, 0x9b, 0x8b, 0x99, 0x2b, 0x8f, 0x1a, 0xab, 0xcd, 0x4c, 0x70, 0xb8, - 0xd2, 0xcf, 0x70, 0x49, 0x6a, 0xca, 0x0c, 0x01, 0xee, 0x80, 0x21, 0x6f, 0x07, 0x31, 0xc4, 0xbf, - 0xd2, 0x0e, 0x3c, 0x39, 0xf0, 0x3d, 0x30, 0x56, 0xa9, 0x11, 0x85, 0xee, 0x1e, 0x28, 0x35, 0x1b, - 0xcf, 0xf2, 0x88, 0x13, 0x62, 0x85, 0x0b, 0x87, 0xf9, 0xd7, 0xa5, 0xe9, 0x4d, 0x67, 0x1e, 0xb1, - 0x79, 0xc4, 0x3c, 0x2c, 0xc7, 0x2f, 0x66, 0xa5, 0x67, 0x5c, 0x90, 0x41, 0x06, 0x6c, 0x70, 0xdf, - 0xf9, 0x86, 0x67, 0xc1, 0x78, 0x99, 0xd8, 0xc5, 0x1a, 0xf6, 0x84, 0xc5, 0x11, 0x27, 0x70, 0xf2, - 0x98, 0x3b, 0xe7, 0x92, 0x2c, 0x80, 0x31, 0x55, 0xa7, 0x97, 0x57, 0x3c, 0x8a, 0x41, 0xc4, 0x09, - 0xbc, 0x0c, 0xd8, 0x54, 0x4b, 0x86, 0x1d, 0xa4, 0x18, 0x42, 0x9c, 0x10, 0x97, 0xc7, 0xec, 0x00, - 0x89, 0x2b, 0x63, 0x59, 0xf2, 0x28, 0x86, 0x11, 0x27, 0x0c, 0x32, 0x19, 0xcb, 0x92, 0x4b, 0x70, - 0x0e, 0x4c, 0x54, 0xd4, 0xa7, 0xb8, 0xdc, 0x12, 0x32, 0x82, 0x38, 0x61, 0x48, 0x1e, 0xf7, 0x26, - 0xc3, 0x44, 0x2d, 0x39, 0xa3, 0x88, 0x13, 0x86, 0x3d, 0x22, 0x5f, 0xd2, 0x69, 0x00, 0x8a, 0x84, - 0xd4, 0x3c, 0x0a, 0x80, 0x38, 0x61, 0x44, 0x1e, 0x75, 0x66, 0x5a, 0xca, 0x5a, 0xd4, 0x54, 0xf5, - 0x3d, 0x8f, 0x60, 0xcc, 0x71, 0x00, 0x79, 0xcc, 0x9d, 0x6b, 0x29, 0x5b, 0xac, 0x53, 0x6c, 0x79, - 0x14, 0xa7, 0x11, 0x27, 0x8c, 0xcb, 0x80, 0x4d, 0x85, 0x36, 0xdc, 0x52, 0x63, 0x02, 0x71, 0xc2, - 0x84, 0xbb, 0x61, 0x5f, 0x8b, 0x1b, 0x00, 0x38, 0xb7, 0xce, 0x23, 0x98, 0x44, 0x9c, 0x30, 0x29, - 0x5d, 0x3c, 0xf2, 0xe4, 0xb7, 0x6d, 0x0d, 0x9b, 0x6a, 0x69, 0x43, 0xb7, 0x35, 0x79, 0xd4, 0xe1, - 0x77, 0x85, 0xed, 0x80, 0xa9, 0xd6, 0x3d, 0xf6, 0x24, 0x9e, 0x61, 0x12, 0x85, 0x1e, 0x12, 0xfd, - 0xeb, 0x9f, 0xdd, 0x51, 0x68, 0x95, 0x49, 0x9b, 0x30, 0xbc, 0x2f, 0x57, 0xa2, 0x05, 0x4e, 0xb8, - 0xce, 0xb4, 0x1b, 0x15, 0xbc, 0xc0, 0x04, 0xbf, 0x7b, 0x94, 0xe0, 0x5b, 0x6e, 0x40, 0xf0, 0xe5, - 0x7b, 0x2e, 0xda, 0x82, 0x9b, 0xd1, 0x43, 0x63, 0x17, 0xf4, 0x35, 0x30, 0x69, 0x85, 0xcf, 0x6f, - 0x0a, 0x71, 0xc2, 0x94, 0x3c, 0x61, 0x85, 0x0e, 0xb0, 0x45, 0xd6, 0xf2, 0x85, 0x04, 0xe2, 0x84, - 0x84, 0x4f, 0x16, 0xf0, 0x3a, 0x2b, 0x78, 0x08, 0xd3, 0x88, 0x13, 0xa6, 0xe5, 0x31, 0x2b, 0x70, - 0x08, 0x1e, 0x49, 0x4b, 0x0e, 0x44, 0x9c, 0x00, 0x5d, 0x12, 0x5f, 0x8a, 0x04, 0x8e, 0x9b, 0xd8, - 0xc0, 0x8a, 0x63, 0x8a, 0x90, 0x5f, 0xcc, 0x20, 0x5e, 0x18, 0x95, 0x67, 0xfc, 0xc5, 0xbb, 0x01, - 0xff, 0xb8, 0x02, 0xc6, 0x88, 0x8e, 0x9d, 0x24, 0xe1, 0x44, 0xe8, 0xd9, 0x63, 0x2c, 0x30, 0x9d, - 0xc8, 0xba, 0x41, 0x31, 0xeb, 0x07, 0xc5, 0xec, 0x86, 0xb3, 0x7a, 0x7d, 0x40, 0x06, 0x8c, 0x98, - 0x8d, 0xe0, 0x39, 0x30, 0xee, 0xb2, 0xba, 0x58, 0xb3, 0xc7, 0x1d, 0xef, 0xbb, 0x3e, 0x20, 0xbb, - 0x02, 0x5d, 0x10, 0xf8, 0x10, 0x8c, 0x6a, 0x8a, 0xe1, 0xe9, 0x71, 0x82, 0x05, 0x8d, 0xab, 0xfd, - 0x07, 0x8d, 0x5b, 0x8a, 0xc1, 0xd4, 0xdd, 0xd0, 0xa9, 0x59, 0x97, 0x47, 0x34, 0x6f, 0x08, 0x9f, - 0x82, 0x19, 0x4d, 0x31, 0x8c, 0xe8, 0x7e, 0x4f, 0x32, 0x9c, 0xeb, 0x2f, 0x85, 0x63, 0x84, 0xec, - 0xe3, 0x02, 0x4e, 0x6b, 0xd1, 0xf9, 0x00, 0xb2, 0xe7, 0x7b, 0x2e, 0xf2, 0xec, 0xab, 0x21, 0xbb, - 0x9e, 0xd7, 0x89, 0x1c, 0x98, 0x87, 0x39, 0x30, 0xab, 0x13, 0x7d, 0x8d, 0xe8, 0x07, 0x58, 0x77, - 0x32, 0x8f, 0x52, 0xdb, 0x56, 0x34, 0x37, 0xbc, 0xcd, 0x26, 0x59, 0x00, 0xe8, 0xb9, 0x0e, 0xd7, - 0xc0, 0x54, 0x2b, 0xbd, 0x79, 0x1a, 0x9f, 0x62, 0x27, 0x9e, 0xec, 0x38, 0xf1, 0x7b, 0x3e, 0x9d, - 0x3c, 0xd9, 0x62, 0x71, 0x85, 0x3c, 0x04, 0x2d, 0x4f, 0x0a, 0x5e, 0xb6, 0x79, 0xc4, 0xf7, 0x1d, - 0x17, 0xa6, 0x7d, 0x41, 0xed, 0x8b, 0xf5, 0x4b, 0x0e, 0x9c, 0xe9, 0x22, 0x7e, 0xb7, 0x9d, 0x6a, - 0x67, 0x51, 0xff, 0x48, 0x85, 0xf5, 0xc3, 0x7c, 0x3e, 0x7d, 0x4a, 0xf6, 0x04, 0x23, 0xdd, 0x5d, - 0x42, 0x0e, 0x00, 0xa2, 0x2a, 0xad, 0x61, 0x29, 0xd5, 0x7d, 0xb1, 0x8c, 0xad, 0x92, 0xa9, 0xb2, - 0x7c, 0x9f, 0x95, 0x4f, 0x75, 0xe8, 0x9b, 0x6f, 0xa9, 0x05, 0x7f, 0xc0, 0x81, 0xe3, 0xdd, 0x15, - 0x3e, 0xdb, 0x7f, 0xc8, 0x2c, 0x48, 0x87, 0x79, 0x31, 0x0d, 0xb7, 0x3b, 0xf5, 0x9c, 0xdb, 0xee, - 0xa9, 0xde, 0x0c, 0xee, 0xa2, 0xd6, 0x01, 0x48, 0x46, 0xa3, 0x42, 0x40, 0xb5, 0x94, 0x13, 0x1a, - 0x0a, 0xab, 0x87, 0xf9, 0x4b, 0xe9, 0xe3, 0x2d, 0x03, 0xb8, 0x64, 0x1e, 0xde, 0x7c, 0x74, 0x3a, - 0x04, 0x39, 0x1b, 0x0e, 0x2a, 0x01, 0xdc, 0x5f, 0x71, 0x01, 0x60, 0xef, 0x92, 0x04, 0x80, 0xcf, - 0xbd, 0x5a, 0x01, 0x51, 0xd8, 0x3c, 0xcc, 0xaf, 0xa5, 0xdb, 0xba, 0xb9, 0x00, 0x88, 0x14, 0x1f, - 0xe3, 0x12, 0xf5, 0x34, 0x3f, 0xd7, 0x63, 0xb5, 0xfb, 0x06, 0x5c, 0xb9, 0x81, 0x0d, 0xfc, 0x84, - 0x03, 0xd3, 0x9d, 0x7a, 0x9f, 0x7f, 0xb5, 0xd2, 0xad, 0xb0, 0x72, 0x98, 0x5f, 0x4a, 0xcf, 0x6c, - 0x77, 0x51, 0x37, 0xb9, 0xdd, 0x5b, 0xcb, 0x84, 0x1e, 0xd1, 0x2e, 0xf9, 0x5b, 0x0e, 0x0c, 0x79, - 0xf5, 0x1f, 0x04, 0x71, 0x5d, 0xd1, 0xb0, 0x5b, 0xff, 0xc9, 0xec, 0x1b, 0x9e, 0x00, 0x43, 0x8a, - 0x46, 0x6c, 0x9d, 0xce, 0xc6, 0x58, 0x42, 0xf7, 0x46, 0xf0, 0x0e, 0x88, 0x91, 0x7d, 0x56, 0x66, - 0x4d, 0x4a, 0xf9, 0x97, 0xdd, 0x44, 0x76, 0x1d, 0x63, 0x83, 0x5d, 0xe0, 0x18, 0xd9, 0x4f, 0x2d, - 0x80, 0x11, 0x7f, 0x0c, 0x47, 0xc1, 0xe0, 0x66, 0xfe, 0xe6, 0xdd, 0x8d, 0xc4, 0x00, 0x1c, 0x01, - 0xf1, 0x7b, 0xf2, 0xfb, 0x1b, 0x09, 0x2e, 0x77, 0xf2, 0x30, 0x7f, 0x4c, 0x82, 0x30, 0xd1, 0x40, - 0x29, 0xb2, 0x9f, 0xca, 0xa1, 0x94, 0x33, 0x9f, 0x42, 0xcd, 0xa4, 0x0a, 0x26, 0x42, 0x91, 0x1d, - 0x26, 0x00, 0xbf, 0x8f, 0xeb, 0xde, 0x46, 0x9c, 0x4f, 0x58, 0x00, 0x83, 0x6e, 0x78, 0x89, 0xbd, - 0x44, 0xd9, 0xe1, 0xb2, 0xe6, 0x62, 0xab, 0x5c, 0x72, 0x1d, 0x9c, 0xe8, 0x1e, 0xdc, 0xbb, 0x60, - 0x1e, 0x0b, 0x62, 0x8e, 0x06, 0xa5, 0xfc, 0x9f, 0x2f, 0x25, 0x1a, 0xa8, 0xbb, 0x48, 0xd9, 0x0e, - 0x4a, 0x79, 0x95, 0x52, 0xb9, 0x8d, 0x9f, 0xfb, 0x51, 0xec, 0x30, 0xff, 0xc3, 0x18, 0xf8, 0x36, - 0x97, 0x9e, 0xc9, 0xa3, 0xa2, 0x4a, 0x11, 0xa9, 0xa0, 0x76, 0x77, 0x27, 0x6d, 0x6d, 0xe9, 0xd4, - 0x0f, 0xfa, 0x75, 0x54, 0x22, 0x9a, 0x51, 0x53, 0x4b, 0xec, 0x02, 0x78, 0x3d, 0x0f, 0xa2, 0x75, - 0x03, 0x23, 0x4a, 0x50, 0x89, 0x1c, 0x60, 0x13, 0x69, 0x8a, 0x5e, 0x47, 0x15, 0xac, 0x50, 0xdb, - 0xc4, 0x96, 0x23, 0x6b, 0xc7, 0x8f, 0xfe, 0xcf, 0x38, 0x56, 0xf0, 0x3f, 0xe3, 0x82, 0xe5, 0xf2, - 0x33, 0x2e, 0x54, 0x5f, 0xa7, 0xef, 0x83, 0xf3, 0x9b, 0xaa, 0x5e, 0x46, 0xc4, 0xa6, 0x48, 0x23, - 0x26, 0x46, 0x4a, 0xd1, 0xf9, 0xec, 0x68, 0x7f, 0xb2, 0x55, 0x4a, 0x0d, 0x2b, 0x27, 0x8a, 0x7b, - 0x2a, 0xad, 0xda, 0xc5, 0x6c, 0x89, 0x68, 0xa2, 0x63, 0x8c, 0x0c, 0x2e, 0x11, 0xab, 0x6e, 0x51, - 0xec, 0x0d, 0x3d, 0xdb, 0x48, 0x2b, 0x50, 0x6a, 0xa0, 0x94, 0x83, 0xef, 0x38, 0xcb, 0x62, 0xa9, - 0xb2, 0x7c, 0x79, 0x09, 0x2f, 0x65, 0x56, 0x8a, 0x2b, 0x2b, 0x99, 0x95, 0xd5, 0xe5, 0x72, 0x46, - 0x59, 0xba, 0x74, 0x25, 0x73, 0x69, 0xa5, 0xac, 0x14, 0xcb, 0x95, 0xb7, 0xf0, 0xea, 0xd2, 0x4a, - 0x0a, 0x35, 0x0b, 0x13, 0x7e, 0x25, 0xc3, 0x94, 0x4b, 0xfd, 0x7b, 0x04, 0xcc, 0x46, 0x35, 0xf1, - 0xe3, 0x01, 0xbc, 0x02, 0xe6, 0x58, 0xad, 0xd8, 0x8a, 0x4f, 0xc1, 0x1e, 0x84, 0x43, 0xbc, 0x10, - 0x93, 0x4f, 0x38, 0x04, 0x3e, 0xc3, 0x66, 0xbb, 0xc9, 0x78, 0x1b, 0x24, 0xc3, 0xac, 0xa1, 0x96, - 0xc3, 0x69, 0x8b, 0x38, 0xf9, 0x64, 0x90, 0x77, 0x3d, 0xd0, 0x7e, 0x74, 0xe0, 0x06, 0x2b, 0x3a, - 0x1e, 0xf1, 0x02, 0x1f, 0xc6, 0xdd, 0x6a, 0x17, 0x77, 0x1d, 0xb8, 0xa1, 0x36, 0x25, 0x8e, 0x78, - 0x21, 0x1e, 0xc6, 0x7d, 0x3f, 0x50, 0x19, 0x76, 0xc3, 0x6d, 0x15, 0x9b, 0x83, 0x88, 0x17, 0x06, - 0x3b, 0x70, 0xfd, 0xba, 0xf3, 0x1d, 0x70, 0x2a, 0x62, 0xaa, 0x50, 0x39, 0x3b, 0x84, 0x78, 0x61, - 0x48, 0x9e, 0x0d, 0x19, 0x2b, 0x58, 0xd9, 0x76, 0x67, 0x0f, 0x34, 0x4f, 0xbc, 0x30, 0xdc, 0x85, - 0xdd, 0x47, 0x7f, 0x0b, 0xcc, 0x86, 0xd9, 0x03, 0xed, 0xd0, 0x08, 0xe2, 0x85, 0x11, 0xf9, 0x78, - 0x90, 0xb7, 0xd0, 0x6a, 0x8d, 0x3a, 0xcc, 0x15, 0x2a, 0x10, 0x47, 0x59, 0x41, 0x1c, 0x32, 0x57, - 0xb8, 0x28, 0x8e, 0x98, 0x2b, 0xd8, 0x42, 0x01, 0xc4, 0x0b, 0xe3, 0x61, 0x73, 0x15, 0xda, 0xed, - 0x54, 0xd7, 0x63, 0x6a, 0x6d, 0x77, 0x0c, 0xf1, 0xc2, 0x44, 0xe7, 0x31, 0xf9, 0xbb, 0xc5, 0xd1, - 0xdd, 0x06, 0xca, 0xab, 0xf1, 0x97, 0x28, 0xaf, 0x42, 0xb6, 0x69, 0x97, 0x58, 0x57, 0xc1, 0x7c, - 0xc4, 0x36, 0xe1, 0x43, 0x99, 0x40, 0xbc, 0x30, 0x25, 0xcf, 0x85, 0xac, 0x13, 0xea, 0x6a, 0x7a, - 0x08, 0x68, 0x39, 0xc5, 0x24, 0xe2, 0x85, 0x44, 0x37, 0x01, 0x3d, 0x9d, 0x39, 0xd4, 0xfd, 0x4c, - 0x21, 0x5e, 0x98, 0x8e, 0x9c, 0x4e, 0xc0, 0x4a, 0x5d, 0x99, 0x03, 0xfd, 0x15, 0x2f, 0xc0, 0x4e, - 0x66, 0x0f, 0x39, 0x57, 0x3d, 0xcc, 0x63, 0xa9, 0x04, 0x95, 0x06, 0x4a, 0xf5, 0x72, 0xac, 0x54, - 0x0e, 0x7d, 0x48, 0x4d, 0x1b, 0x5f, 0x44, 0xee, 0xdf, 0x8a, 0x52, 0xb3, 0xbc, 0xc1, 0xa3, 0x8b, - 0x51, 0xb6, 0x80, 0xde, 0x0e, 0xdf, 0xd2, 0x45, 0x24, 0x5d, 0x44, 0xcb, 0x8f, 0x50, 0x33, 0x95, - 0x04, 0xf1, 0x02, 0x29, 0xd7, 0xbb, 0x65, 0xe7, 0xd4, 0x43, 0x30, 0xe5, 0x35, 0x9d, 0xff, 0xad, - 0xd2, 0x2a, 0x23, 0x9b, 0x04, 0x31, 0xff, 0x09, 0x47, 0x8e, 0xa9, 0x4e, 0x88, 0x8a, 0x97, 0x15, - 0xaa, 0x78, 0xd9, 0xe3, 0xb5, 0x23, 0xcf, 0xdd, 0x11, 0x22, 0x33, 0x96, 0xd4, 0xe7, 0x1c, 0x98, - 0x7a, 0xdf, 0x28, 0x2b, 0x14, 0xdf, 0x97, 0x64, 0xfc, 0xb1, 0x8d, 0x2d, 0x0a, 0xd7, 0x00, 0xaf, - 0x14, 0x5d, 0x25, 0xc6, 0xa4, 0xa5, 0xbe, 0x73, 0x91, 0xec, 0x70, 0xc3, 0xb7, 0xc1, 0x98, 0xcd, - 0xe4, 0xb2, 0xb7, 0x3e, 0x4f, 0xb5, 0xce, 0xd6, 0x61, 0x53, 0xc5, 0xb5, 0xf2, 0x2d, 0xc5, 0xda, - 0x97, 0x81, 0x4b, 0xee, 0x7c, 0xa7, 0x11, 0x18, 0x0b, 0xf8, 0xa6, 0x53, 0x1e, 0x3c, 0xd8, 0x90, - 0x6f, 0x27, 0x06, 0xe0, 0x30, 0xe0, 0x6f, 0x6f, 0x6f, 0x24, 0x38, 0xe9, 0xcb, 0xd3, 0xe0, 0x64, - 0x14, 0xf8, 0x2e, 0x36, 0x0f, 0xd4, 0x12, 0x86, 0xbf, 0x8b, 0x83, 0xa1, 0x35, 0xd3, 0xb1, 0x39, - 0xec, 0x5f, 0xfb, 0x64, 0xff, 0x2c, 0xa9, 0x3f, 0xf1, 0xdf, 0xfc, 0xf3, 0xdf, 0x3f, 0x8f, 0xfd, - 0x81, 0x4f, 0xfd, 0x9e, 0x17, 0x0f, 0x96, 0xfc, 0x77, 0xd5, 0x6e, 0xaf, 0xaa, 0x62, 0x23, 0x90, - 0x3e, 0x9a, 0x62, 0x23, 0x98, 0x11, 0x9a, 0x62, 0x23, 0xe0, 0x9d, 0x4d, 0xd1, 0xc2, 0x86, 0x62, - 0x2a, 0x94, 0x98, 0x62, 0xc3, 0x0e, 0x2d, 0x34, 0x02, 0x9e, 0xd4, 0x14, 0x1b, 0xa1, 0x0b, 0xe5, - 0x8f, 0x03, 0xeb, 0x6d, 0x77, 0x6d, 0x8a, 0x8d, 0x60, 0x6c, 0x7b, 0xc7, 0xa2, 0xa6, 0x61, 0xe2, - 0x8a, 0xfa, 0x54, 0x4c, 0x37, 0x5d, 0x90, 0x00, 0x9b, 0x15, 0x95, 0x63, 0x45, 0x81, 0xac, 0x08, - 0x43, 0x58, 0xc9, 0x5e, 0x9d, 0x65, 0x53, 0x6c, 0xb4, 0x63, 0x55, 0x53, 0x6c, 0x44, 0x5e, 0x62, - 0x1c, 0xce, 0xae, 0x4f, 0x34, 0x4d, 0xb1, 0xd1, 0x25, 0xd8, 0x75, 0x9f, 0x0d, 0x54, 0xe1, 0x21, - 0xb8, 0xf0, 0x7c, 0xef, 0x5e, 0xa7, 0x09, 0x7f, 0xc6, 0x01, 0xe0, 0x3a, 0x11, 0xbb, 0x72, 0x5f, - 0x8f, 0x23, 0xa5, 0x99, 0x1f, 0x9d, 0x4f, 0x2d, 0x1c, 0xe1, 0x45, 0x39, 0x2e, 0x0d, 0xff, 0x17, - 0x0c, 0xdd, 0x24, 0x64, 0xdf, 0x36, 0xe0, 0x54, 0xd6, 0xb2, 0x8b, 0x52, 0x76, 0xab, 0xec, 0xc5, - 0x89, 0x97, 0x41, 0xce, 0x32, 0x64, 0x01, 0xbe, 0x7e, 0xa4, 0xff, 0x3a, 0xb5, 0x56, 0x13, 0x7e, - 0xca, 0x81, 0x21, 0x37, 0x6e, 0xbc, 0x8c, 0x69, 0x7a, 0x3c, 0x1a, 0xa5, 0x96, 0x98, 0x16, 0x6f, - 0x26, 0x5f, 0x50, 0x0b, 0xc7, 0x0c, 0xbf, 0xe1, 0xc0, 0x88, 0x1f, 0xc0, 0xe0, 0xe2, 0x91, 0xaa, - 0x44, 0x62, 0x5d, 0x4f, 0x4d, 0x1e, 0x33, 0x4d, 0xca, 0xc9, 0xb4, 0x78, 0x20, 0x3d, 0x5f, 0x13, - 0xa5, 0x88, 0xb3, 0xae, 0x36, 0x4e, 0xdc, 0x7b, 0xb0, 0x24, 0xf5, 0xcb, 0x02, 0x7f, 0xca, 0x81, - 0xd9, 0x1d, 0x85, 0x96, 0xaa, 0x4e, 0x80, 0x6f, 0x05, 0xc4, 0x2d, 0x9d, 0x39, 0xde, 0x57, 0xb7, - 0xa5, 0xcb, 0x6c, 0x4b, 0x8b, 0xd2, 0x9b, 0xe2, 0x81, 0xa4, 0xbc, 0xa8, 0x82, 0x5c, 0x1a, 0x7e, - 0x9f, 0x03, 0x43, 0xeb, 0xb8, 0x86, 0x29, 0xee, 0xf4, 0xb4, 0x5e, 0x58, 0x0f, 0x0f, 0xf3, 0x6f, - 0x16, 0x2f, 0x80, 0x49, 0x00, 0xf2, 0x86, 0x7a, 0x03, 0xd7, 0xf3, 0x36, 0xad, 0xc2, 0x01, 0x70, - 0x12, 0x0c, 0xdd, 0x76, 0x3e, 0x25, 0x38, 0x01, 0xe2, 0x26, 0x56, 0xca, 0x60, 0xf0, 0x89, 0xa9, - 0x52, 0xec, 0x3a, 0x5f, 0xfa, 0x45, 0x9d, 0xef, 0x6f, 0x1c, 0x18, 0xb9, 0x86, 0xe9, 0x1d, 0x1b, - 0x9b, 0xf5, 0xaf, 0xd2, 0xfd, 0x3e, 0xe3, 0x0e, 0xf3, 0xf7, 0x52, 0xdb, 0x60, 0xbe, 0x5b, 0xab, - 0xd2, 0x02, 0xec, 0xb3, 0x45, 0xf9, 0x80, 0x2b, 0x0e, 0xb0, 0xfd, 0x65, 0xe1, 0xc5, 0xa3, 0xf6, - 0xf7, 0xb1, 0x03, 0xe0, 0xef, 0xf2, 0xb3, 0x41, 0x90, 0xb8, 0x86, 0xa9, 0x5f, 0x99, 0xb8, 0xe0, - 0x57, 0xfa, 0x4f, 0xc7, 0x1e, 0x7f, 0xf2, 0xe5, 0x59, 0x53, 0x9f, 0xc4, 0xd9, 0x0e, 0xfe, 0xc5, - 0xc3, 0x7f, 0x1e, 0x95, 0xe0, 0x5a, 0xe5, 0x8e, 0x17, 0xd8, 0xbb, 0xb5, 0x4d, 0xcd, 0xe8, 0x5a, - 0x24, 0x0b, 0xf6, 0xec, 0x7b, 0x3a, 0xd6, 0xec, 0xe7, 0x2d, 0x86, 0xb3, 0xd3, 0x73, 0x3a, 0x93, - 0xee, 0xab, 0x3d, 0x79, 0x43, 0xf9, 0xb4, 0x77, 0xe7, 0xd0, 0xc9, 0xd7, 0xee, 0x0c, 0xba, 0x6e, - 0xa4, 0x27, 0x60, 0x67, 0xba, 0xec, 0x51, 0x8e, 0xf7, 0x58, 0xee, 0xb9, 0x4f, 0xeb, 0x79, 0xa8, - 0xa1, 0x74, 0x0e, 0xbf, 0xe4, 0x41, 0x7c, 0xa3, 0x54, 0x25, 0xb0, 0xd7, 0x6f, 0x2f, 0x96, 0x5d, - 0xcc, 0xba, 0x8d, 0x91, 0x1f, 0x1c, 0x5e, 0x98, 0x32, 0xf5, 0x8f, 0xd8, 0x61, 0xfe, 0x1b, 0x31, - 0x30, 0x8e, 0x4b, 0x55, 0x82, 0x2c, 0xb7, 0x8c, 0x03, 0x23, 0x6c, 0x64, 0x1a, 0x25, 0x38, 0x7d, - 0xd7, 0xd6, 0x34, 0xc5, 0xac, 0xe7, 0xd0, 0x86, 0x37, 0x95, 0x4c, 0xac, 0xb7, 0x9f, 0xbc, 0xd8, - 0x6c, 0x6a, 0x1d, 0xc0, 0xf0, 0xb5, 0x65, 0xda, 0xf6, 0x79, 0x59, 0xdf, 0xbb, 0x0a, 0xf8, 0x4b, - 0x8b, 0xcb, 0x70, 0x15, 0x5c, 0x96, 0x31, 0xb5, 0x4d, 0x1d, 0x97, 0xd1, 0x93, 0x2a, 0xd6, 0x11, - 0xad, 0x62, 0x64, 0x62, 0x8b, 0xd8, 0x66, 0x09, 0x23, 0xd5, 0x42, 0x14, 0x6b, 0x06, 0x31, 0x15, - 0x53, 0xad, 0xd5, 0x91, 0xad, 0x2b, 0x07, 0x8a, 0x5a, 0x53, 0x8a, 0x35, 0x9c, 0x7d, 0xef, 0x6d, - 0xc0, 0xaf, 0x2c, 0xae, 0xc0, 0x15, 0x90, 0x7e, 0x8e, 0x80, 0x32, 0xc1, 0x16, 0xd2, 0x09, 0x45, - 0xf8, 0xa9, 0x6a, 0xd1, 0x2c, 0x1c, 0x02, 0xf1, 0x1f, 0xc7, 0x38, 0xb7, 0x8a, 0x7c, 0x74, 0x74, - 0x98, 0x70, 0x0c, 0x23, 0x36, 0xdc, 0x83, 0x79, 0x30, 0x97, 0x4a, 0x04, 0x13, 0x8e, 0xb3, 0x96, - 0x73, 0x9f, 0x81, 0x1e, 0x40, 0xd8, 0xb1, 0x04, 0x7f, 0xc1, 0x81, 0xf1, 0x75, 0x8c, 0x0d, 0xf6, - 0x13, 0x95, 0x33, 0xf1, 0xf5, 0x54, 0x36, 0x57, 0xd9, 0xde, 0xae, 0xa4, 0x56, 0x8e, 0x0c, 0xf1, - 0xa1, 0x5f, 0xbf, 0xb3, 0x4e, 0x0b, 0xc4, 0xb2, 0x50, 0x1e, 0x80, 0x6d, 0x52, 0x50, 0xf5, 0xb2, - 0xaa, 0xef, 0x59, 0x70, 0xae, 0x23, 0x82, 0xaf, 0x7b, 0xff, 0x31, 0xa0, 0x67, 0x70, 0x1f, 0x80, - 0xf7, 0xc1, 0xf0, 0x3d, 0x55, 0xc3, 0xc4, 0xa6, 0xb0, 0x07, 0x51, 0x4f, 0xe6, 0x53, 0x4c, 0xfd, - 0xe3, 0x70, 0x26, 0x68, 0x4f, 0xea, 0x09, 0xab, 0x82, 0xc4, 0x86, 0x69, 0x12, 0xd3, 0x49, 0xdf, - 0xeb, 0x98, 0x2a, 0x6a, 0xcd, 0xea, 0x1b, 0xe0, 0x3c, 0x03, 0x38, 0x03, 0xe7, 0x43, 0x07, 0xe6, - 0x48, 0x7d, 0xa2, 0xd2, 0x6a, 0xd9, 0x93, 0xfa, 0x1d, 0x0e, 0xc0, 0x6b, 0x98, 0x46, 0xfb, 0xc1, - 0xa3, 0x6b, 0x84, 0x08, 0x47, 0x4f, 0x35, 0xde, 0x60, 0x6a, 0x9c, 0x4d, 0xcd, 0x05, 0xd5, 0x70, - 0x34, 0x28, 0x92, 0x72, 0x5d, 0x6c, 0x38, 0x15, 0x01, 0xeb, 0x1b, 0xe1, 0xb7, 0x38, 0x30, 0xbd, - 0x43, 0x2c, 0xea, 0x48, 0x64, 0xac, 0x4c, 0x91, 0x17, 0x6b, 0x3d, 0x7b, 0xa2, 0x8b, 0x0c, 0xfd, - 0x42, 0xea, 0x7c, 0x10, 0xdd, 0x20, 0x16, 0x75, 0x34, 0x60, 0x3f, 0x3a, 0xba, 0x6a, 0xf8, 0x4e, - 0x91, 0xfc, 0x35, 0x77, 0x98, 0xff, 0x82, 0x83, 0x95, 0x1e, 0x9d, 0x60, 0xf0, 0x5d, 0x1c, 0x65, - 0x32, 0xe8, 0x49, 0x55, 0x2d, 0x55, 0x91, 0x55, 0x25, 0x76, 0xad, 0xcc, 0xae, 0x5f, 0x11, 0x23, - 0xdb, 0xc2, 0x65, 0xa4, 0xea, 0xc8, 0xa8, 0x29, 0x25, 0x8c, 0x48, 0x85, 0x5d, 0xd4, 0x32, 0x29, - 0xd9, 0x1a, 0xd6, 0xdd, 0x5e, 0x00, 0x95, 0x88, 0xe6, 0x0c, 0xce, 0x26, 0xef, 0x80, 0x85, 0x6e, - 0x95, 0x81, 0x73, 0x8d, 0xfc, 0xde, 0xb3, 0xdf, 0xf7, 0xcb, 0xc7, 0xe0, 0x58, 0x49, 0xd1, 0x70, - 0x6d, 0x4d, 0xb1, 0xb0, 0x27, 0xc3, 0x69, 0x94, 0xa0, 0x0c, 0x06, 0xdd, 0x5f, 0x4e, 0xfb, 0x75, - 0xa4, 0x39, 0x66, 0xc3, 0x19, 0x38, 0x1d, 0x72, 0x24, 0x67, 0x49, 0xfa, 0x08, 0xcc, 0xe7, 0x75, - 0x42, 0xab, 0xd8, 0xf4, 0x90, 0x9c, 0xc3, 0x0b, 0x5c, 0xaa, 0x77, 0x43, 0x57, 0xac, 0x5f, 0xe0, - 0x81, 0xc2, 0x17, 0xc3, 0x87, 0xf9, 0x9f, 0x0f, 0xc3, 0xbf, 0x70, 0x60, 0x26, 0x8f, 0x0a, 0xee, - 0x8b, 0x73, 0x20, 0x04, 0x7c, 0x00, 0x8e, 0xed, 0xc9, 0x3b, 0x6b, 0x99, 0x6b, 0xee, 0xd6, 0x91, - 0x61, 0x92, 0xc7, 0xb8, 0x44, 0xfb, 0x35, 0x59, 0x32, 0xa1, 0x13, 0x1d, 0xff, 0x97, 0xb7, 0x35, - 0x87, 0x3a, 0xfd, 0x11, 0x38, 0x56, 0xb8, 0xbb, 0x8e, 0x96, 0x33, 0x6b, 0x35, 0xc5, 0xb6, 0x30, - 0xba, 0xa9, 0x96, 0xb0, 0x6e, 0x61, 0xb8, 0xd9, 0x9f, 0x64, 0xb1, 0x58, 0x23, 0x45, 0x51, 0x53, - 0x2c, 0x8a, 0x4d, 0xf1, 0xe6, 0xd6, 0xda, 0xc6, 0xf6, 0xdd, 0x8d, 0x2c, 0x7d, 0x4a, 0x25, 0x7e, - 0x29, 0xbb, 0x98, 0xe6, 0xb9, 0x58, 0x5c, 0x4a, 0x28, 0x86, 0xfb, 0x4e, 0xae, 0x12, 0x5d, 0x7c, - 0x6c, 0x11, 0x5d, 0x3a, 0x11, 0x9c, 0x79, 0x9a, 0xa9, 0x10, 0x92, 0xd1, 0x54, 0x0d, 0xe7, 0x3a, - 0x28, 0x73, 0x3d, 0x28, 0xe5, 0x1d, 0x27, 0x63, 0x2c, 0xc3, 0x2d, 0x70, 0xad, 0x33, 0x63, 0xd8, - 0x16, 0x36, 0xdb, 0xd9, 0xa2, 0xaa, 0x1c, 0x60, 0x64, 0x60, 0x53, 0x53, 0x2d, 0xcb, 0x71, 0x4c, - 0x4a, 0x90, 0x52, 0x2a, 0x61, 0xcb, 0x0a, 0x65, 0x97, 0xac, 0xfc, 0x0a, 0x39, 0x68, 0x58, 0xbe, - 0x0e, 0xf8, 0x95, 0xa5, 0x55, 0x98, 0x07, 0x13, 0x5b, 0x6f, 0x68, 0x48, 0x41, 0x14, 0x2b, 0x06, - 0xa1, 0x59, 0xb8, 0x08, 0xb2, 0xc9, 0xbe, 0x9e, 0x14, 0x1f, 0x7c, 0x37, 0x06, 0xa6, 0xc0, 0x68, - 0x41, 0xb1, 0xd4, 0x12, 0xab, 0xff, 0x63, 0x23, 0x1c, 0x38, 0x1d, 0xea, 0x08, 0xa6, 0x46, 0x62, - 0xc9, 0xd1, 0x0f, 0x32, 0xf9, 0x9d, 0xad, 0xcc, 0x0d, 0x5c, 0x47, 0x31, 0xf0, 0x57, 0xae, 0xd5, - 0x21, 0xfc, 0x91, 0x1b, 0xe1, 0x85, 0xb8, 0x74, 0xce, 0x3f, 0xc3, 0xc0, 0x81, 0x8b, 0x44, 0xb1, - 0x69, 0x55, 0x74, 0xfe, 0x10, 0x53, 0xfd, 0x1f, 0x9c, 0x5b, 0xe8, 0x4d, 0x44, 0xc9, 0x3e, 0xd6, - 0x0b, 0xff, 0x0f, 0x92, 0x6e, 0xc3, 0x01, 0xe1, 0x35, 0x53, 0xd1, 0xa9, 0x85, 0x9c, 0x81, 0x67, - 0x3d, 0x30, 0xef, 0xb5, 0x21, 0x70, 0xc6, 0x5b, 0x64, 0x23, 0x7f, 0x75, 0x0d, 0x0c, 0x2a, 0x65, - 0x4d, 0xd5, 0x61, 0x2e, 0xc4, 0xaa, 0x97, 0x43, 0x64, 0xec, 0x30, 0x1c, 0x32, 0xd5, 0xa2, 0x4e, - 0x26, 0x3a, 0xc0, 0x48, 0xd5, 0x2b, 0xc4, 0xd4, 0xd8, 0x79, 0x17, 0x17, 0xc0, 0x44, 0xd0, 0x14, - 0x03, 0xd1, 0xd6, 0xa8, 0x78, 0xa1, 0x67, 0x73, 0x14, 0x25, 0x35, 0xb7, 0xc0, 0xc9, 0x5b, 0xed, - 0xe8, 0x13, 0xbc, 0x53, 0xfd, 0xde, 0xa5, 0x07, 0xa3, 0xad, 0x93, 0x2b, 0x0e, 0xb1, 0xfb, 0xbc, - 0xfc, 0x9f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x7d, 0x13, 0x85, 0x60, 0x25, 0x28, 0x00, 0x00, + proto.RegisterFile("examples/proto/examplepb/a_bit_of_everything.proto", fileDescriptor_a_bit_of_everything_68327cc2832b2df4) +} + +var fileDescriptor_a_bit_of_everything_68327cc2832b2df4 = []byte{ + // 3251 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x59, 0xcb, 0x6f, 0x1b, 0x47, + 0x9a, 0x57, 0xb3, 0xa9, 0x57, 0xe9, 0x45, 0x95, 0x6c, 0x99, 0xa2, 0xe5, 0xa8, 0x4c, 0x3b, 0x49, + 0x9b, 0x31, 0xd9, 0x52, 0x4b, 0x76, 0x64, 0x06, 0x89, 0x97, 0xd4, 0xc3, 0x56, 0x6c, 0xcb, 0x72, + 0xdb, 0xf1, 0x06, 0x8e, 0x1d, 0xa1, 0x49, 0x16, 0xc5, 0xb6, 0xd8, 0x5d, 0x9d, 0xee, 0x6a, 0xd9, + 0x5c, 0x2e, 0x77, 0xb3, 0x0f, 0xec, 0x62, 0x37, 0x87, 0x05, 0x94, 0xdd, 0xc3, 0x3e, 0xb0, 0xc0, + 0x02, 0x8b, 0x05, 0x16, 0xc8, 0x61, 0x2e, 0x73, 0x0a, 0x30, 0x8f, 0xc3, 0x9c, 0xe6, 0xe6, 0x19, + 0xcc, 0x3f, 0x30, 0x73, 0x98, 0xbf, 0x60, 0x80, 0xc1, 0x00, 0x83, 0x41, 0x57, 0x77, 0x93, 0xdd, + 0x4d, 0xd2, 0x32, 0xed, 0x20, 0x17, 0xa9, 0xab, 0xea, 0xfb, 0xbe, 0xdf, 0x57, 0x5f, 0x7d, 0xf5, + 0x3d, 0x8a, 0x40, 0xc2, 0xcf, 0x15, 0xcd, 0xa8, 0x63, 0x4b, 0x34, 0x4c, 0x42, 0x89, 0xe8, 0x0d, + 0x8d, 0x92, 0xa8, 0xec, 0x97, 0x54, 0xba, 0x4f, 0xaa, 0xfb, 0xf8, 0x08, 0x9b, 0x0d, 0x5a, 0x53, + 0xf5, 0x83, 0x1c, 0xa3, 0x81, 0x4b, 0x07, 0xa6, 0x51, 0xce, 0x1d, 0x28, 0x14, 0x3f, 0x53, 0x1a, + 0x39, 0x5f, 0x40, 0xae, 0xcd, 0x9a, 0x5a, 0x3c, 0x20, 0xe4, 0xa0, 0x8e, 0x45, 0xc5, 0x50, 0x45, + 0x45, 0xd7, 0x09, 0x55, 0xa8, 0x4a, 0x74, 0xcb, 0x65, 0x4f, 0x21, 0x6f, 0x95, 0x8d, 0x4a, 0x76, + 0x55, 0xac, 0xaa, 0xb8, 0x5e, 0xd9, 0xd7, 0x14, 0xeb, 0xd0, 0xa3, 0x38, 0x1b, 0xa5, 0xc0, 0x9a, + 0x41, 0x1b, 0xde, 0xe2, 0x5b, 0xd1, 0xc5, 0x8a, 0x6d, 0x32, 0xf9, 0xde, 0xfa, 0xbb, 0x91, 0x1d, + 0x19, 0x0a, 0xad, 0x61, 0xdd, 0xd6, 0xd8, 0xc7, 0xbe, 0xf3, 0xe5, 0xeb, 0x11, 0x21, 0xb4, 0xec, + 0x92, 0xa8, 0x61, 0xcb, 0x52, 0x0e, 0xb0, 0x47, 0x71, 0xbe, 0x9b, 0x42, 0x8a, 0x90, 0x2c, 0x45, + 0xb5, 0xa1, 0xaa, 0x86, 0x2d, 0xaa, 0x68, 0x86, 0x47, 0x70, 0x99, 0xfd, 0x2b, 0x67, 0x0f, 0xb0, + 0x9e, 0xb5, 0x9e, 0x29, 0x07, 0x07, 0xd8, 0x14, 0x89, 0xc1, 0xec, 0xd1, 0x6d, 0x9b, 0xf4, 0x1f, + 0x52, 0x20, 0x51, 0x28, 0xaa, 0xf4, 0x6e, 0x75, 0xab, 0x6d, 0x75, 0xf8, 0x04, 0x4c, 0x59, 0xaa, + 0x7e, 0x50, 0xc7, 0xfb, 0x3a, 0xb6, 0x28, 0xae, 0x24, 0x17, 0x10, 0x27, 0x4c, 0x48, 0xeb, 0xb9, + 0x13, 0xce, 0x21, 0x17, 0x95, 0x94, 0xdb, 0x65, 0xfc, 0xf2, 0xa4, 0x2b, 0xce, 0x1d, 0xc1, 0x1a, + 0x88, 0xdb, 0xb6, 0x5a, 0x49, 0x72, 0x88, 0x13, 0xc6, 0x8b, 0x0f, 0x8e, 0x0b, 0xf7, 0xbe, 0xe4, + 0xb8, 0x7f, 0xe6, 0x6e, 0x7d, 0xa6, 0x64, 0xab, 0x85, 0xec, 0xf6, 0x72, 0xf6, 0xda, 0x93, 0xe6, + 0x7a, 0x2b, 0x1b, 0x1c, 0xae, 0x0d, 0x32, 0x5c, 0x91, 0x5a, 0x32, 0x43, 0x80, 0x7b, 0x60, 0xc4, + 0xdb, 0x41, 0x0c, 0xf1, 0x6f, 0xb4, 0x03, 0x4f, 0x0e, 0xfc, 0x18, 0x4c, 0x54, 0xeb, 0x44, 0xa1, + 0xfb, 0x47, 0x4a, 0xdd, 0xc6, 0x49, 0x1e, 0x71, 0x42, 0xac, 0x78, 0xe9, 0xb8, 0xf0, 0x8e, 0x34, + 0xbb, 0xed, 0xcc, 0x23, 0x36, 0x8f, 0x98, 0x87, 0xe5, 0xf9, 0xe5, 0x9c, 0xf4, 0x82, 0x0b, 0x32, + 0xc8, 0x80, 0x0d, 0x1e, 0x3a, 0xdf, 0xf0, 0x3c, 0x98, 0xac, 0x10, 0xbb, 0x54, 0xc7, 0x9e, 0xb0, + 0x38, 0xe2, 0x04, 0x4e, 0x9e, 0x70, 0xe7, 0x5c, 0x92, 0x25, 0x30, 0xa1, 0xea, 0xf4, 0xea, 0x9a, + 0x47, 0x31, 0x8c, 0x38, 0x81, 0x97, 0x01, 0x9b, 0x6a, 0xcb, 0xb0, 0x83, 0x14, 0x23, 0x88, 0x13, + 0xe2, 0xf2, 0x84, 0x1d, 0x20, 0x71, 0x65, 0xac, 0x4a, 0x1e, 0xc5, 0x28, 0xe2, 0x84, 0x61, 0x26, + 0x63, 0x55, 0x72, 0x09, 0x2e, 0x80, 0xa9, 0xaa, 0xfa, 0x1c, 0x57, 0xda, 0x42, 0xc6, 0x10, 0x27, + 0x8c, 0xc8, 0x93, 0xde, 0x64, 0x98, 0xa8, 0x2d, 0x67, 0x1c, 0x71, 0xc2, 0xa8, 0x47, 0xe4, 0x4b, + 0x3a, 0x07, 0x40, 0x89, 0x90, 0xba, 0x47, 0x01, 0x10, 0x27, 0x8c, 0xc9, 0xe3, 0xce, 0x4c, 0x5b, + 0x59, 0x8b, 0x9a, 0xaa, 0x7e, 0xe0, 0x11, 0x4c, 0x38, 0x0e, 0x20, 0x4f, 0xb8, 0x73, 0x6d, 0x65, + 0x4b, 0x0d, 0x8a, 0x2d, 0x8f, 0xe2, 0x1c, 0xe2, 0x84, 0x49, 0x19, 0xb0, 0xa9, 0xd0, 0x86, 0xdb, + 0x6a, 0x4c, 0x21, 0x4e, 0x98, 0x72, 0x37, 0xec, 0x6b, 0x71, 0x0b, 0x00, 0xe7, 0xd6, 0x79, 0x04, + 0xd3, 0x88, 0x13, 0xa6, 0xa5, 0xcb, 0x27, 0x9e, 0xfc, 0xae, 0xad, 0x61, 0x53, 0x2d, 0x6f, 0xe9, + 0xb6, 0x26, 0x8f, 0x3b, 0xfc, 0xae, 0xb0, 0x3d, 0x30, 0xd3, 0xbe, 0xc7, 0x9e, 0xc4, 0xb7, 0x98, + 0x44, 0xa1, 0x8f, 0x44, 0xff, 0xfa, 0xe7, 0xf6, 0x14, 0x5a, 0x63, 0xd2, 0xa6, 0x0c, 0xef, 0xcb, + 0x95, 0x68, 0x81, 0x79, 0xd7, 0x99, 0xf6, 0xa3, 0x82, 0x97, 0x98, 0xe0, 0x8f, 0x4e, 0x12, 0x7c, + 0xc7, 0x0d, 0x08, 0xbe, 0x7c, 0xcf, 0x45, 0xdb, 0x70, 0x73, 0x7a, 0x68, 0xec, 0x82, 0xbe, 0x0d, + 0xa6, 0xad, 0xf0, 0xf9, 0xcd, 0x20, 0x4e, 0x98, 0x91, 0xa7, 0xac, 0xd0, 0x01, 0xb6, 0xc9, 0xda, + 0xbe, 0x90, 0x40, 0x9c, 0x90, 0xf0, 0xc9, 0x02, 0x5e, 0x67, 0x05, 0x0f, 0x61, 0x16, 0x71, 0xc2, + 0xac, 0x3c, 0x61, 0x05, 0x0e, 0xc1, 0x23, 0x69, 0xcb, 0x81, 0x88, 0x13, 0xa0, 0x4b, 0xe2, 0x4b, + 0x91, 0xc0, 0x69, 0x13, 0x1b, 0x58, 0x71, 0x4c, 0x11, 0xf2, 0x8b, 0x39, 0xc4, 0x0b, 0xe3, 0xf2, + 0x9c, 0xbf, 0x78, 0x3f, 0xe0, 0x1f, 0xd7, 0xc0, 0x04, 0xd1, 0xb1, 0x93, 0x24, 0x9c, 0x08, 0x9d, + 0x3c, 0xc5, 0x02, 0xd3, 0x7c, 0xce, 0x0d, 0x8a, 0x39, 0x3f, 0x28, 0xe6, 0xb6, 0x9c, 0xd5, 0x9b, + 0x43, 0x32, 0x60, 0xc4, 0x6c, 0x04, 0x2f, 0x80, 0x49, 0x97, 0xd5, 0xc5, 0x4a, 0x9e, 0x76, 0xbc, + 0xef, 0xe6, 0x90, 0xec, 0x0a, 0x74, 0x41, 0xe0, 0x63, 0x30, 0xae, 0x29, 0x86, 0xa7, 0xc7, 0x3c, + 0x0b, 0x1a, 0xd7, 0x07, 0x0f, 0x1a, 0x77, 0x14, 0x83, 0xa9, 0xbb, 0xa5, 0x53, 0xb3, 0x21, 0x8f, + 0x69, 0xde, 0x10, 0x3e, 0x07, 0x73, 0x9a, 0x62, 0x18, 0xd1, 0xfd, 0x9e, 0x61, 0x38, 0x37, 0x5f, + 0x0b, 0xc7, 0x08, 0xd9, 0xc7, 0x05, 0x9c, 0xd5, 0xa2, 0xf3, 0x01, 0x64, 0xcf, 0xf7, 0x5c, 0xe4, + 0xe4, 0x9b, 0x21, 0xbb, 0x9e, 0xd7, 0x8d, 0x1c, 0x98, 0x87, 0x79, 0x90, 0xd4, 0x89, 0xbe, 0x41, + 0xf4, 0x23, 0xac, 0x3b, 0x99, 0x47, 0xa9, 0xef, 0x2a, 0x9a, 0x1b, 0xde, 0x92, 0x29, 0x16, 0x00, + 0xfa, 0xae, 0xc3, 0x0d, 0x30, 0xd3, 0x4e, 0x6f, 0x9e, 0xc6, 0x67, 0xd9, 0x89, 0xa7, 0xba, 0x4e, + 0xfc, 0x81, 0x4f, 0x27, 0x4f, 0xb7, 0x59, 0x5c, 0x21, 0x8f, 0x41, 0xdb, 0x93, 0x82, 0x97, 0x6d, + 0x11, 0xf1, 0x03, 0xc7, 0x85, 0x59, 0x5f, 0x50, 0xe7, 0x62, 0x7d, 0xc3, 0x81, 0x64, 0x58, 0x7c, + 0x27, 0xc9, 0x26, 0xd1, 0xe0, 0x18, 0xc5, 0xcd, 0xe3, 0x42, 0x21, 0x73, 0x56, 0xf6, 0x44, 0x22, + 0xdd, 0x5d, 0x42, 0x8e, 0x68, 0x44, 0x55, 0x5a, 0xc7, 0x52, 0xba, 0xf7, 0x62, 0x05, 0x5b, 0x65, + 0x53, 0x65, 0x99, 0x3e, 0x27, 0xcf, 0x07, 0x35, 0x2d, 0xb4, 0x35, 0x82, 0xff, 0xca, 0x81, 0xd3, + 0x1d, 0x23, 0x04, 0x75, 0x3d, 0x3f, 0x78, 0x9c, 0x2c, 0x4a, 0xc7, 0x05, 0x31, 0x03, 0x77, 0xbb, + 0x55, 0x5c, 0xd8, 0xed, 0xab, 0xd9, 0x5c, 0x3b, 0xb6, 0x06, 0xd4, 0x3a, 0x02, 0xa9, 0x68, 0x28, + 0x08, 0xa8, 0x96, 0x76, 0xe2, 0x41, 0x71, 0xfd, 0xb8, 0x70, 0x25, 0x73, 0xba, 0xbd, 0x77, 0x97, + 0xcc, 0xc3, 0x5b, 0x8c, 0x4e, 0x87, 0x20, 0x93, 0xe1, 0x48, 0x12, 0xc0, 0xfd, 0x11, 0x17, 0x00, + 0xf6, 0x6e, 0x46, 0x00, 0xf8, 0xc2, 0x9b, 0x55, 0x0d, 0xc5, 0xed, 0xe3, 0xc2, 0x46, 0xa6, 0xa3, + 0x9b, 0x0b, 0x80, 0x48, 0xe9, 0x29, 0x2e, 0x53, 0x4f, 0xf3, 0x0b, 0x7d, 0x56, 0x7b, 0x6f, 0xc0, + 0x95, 0x1b, 0xd8, 0xc0, 0x7f, 0x72, 0x60, 0xb6, 0x5b, 0xef, 0x8b, 0x6f, 0x56, 0xaf, 0x15, 0xd7, + 0x8e, 0x0b, 0x2b, 0x99, 0xb9, 0xdd, 0x1e, 0xea, 0xa6, 0x76, 0xfb, 0x6b, 0x99, 0xd0, 0x23, 0xda, + 0xa5, 0x7e, 0xca, 0x81, 0x11, 0xaf, 0xe8, 0x83, 0x20, 0xae, 0x2b, 0x1a, 0x76, 0x8b, 0x3e, 0x99, + 0x7d, 0xc3, 0x79, 0x30, 0xa2, 0x68, 0xc4, 0xd6, 0x69, 0x32, 0xc6, 0xb2, 0xb8, 0x37, 0x82, 0xf7, + 0x40, 0x8c, 0x1c, 0xb2, 0xda, 0x6a, 0x5a, 0x2a, 0xbc, 0xee, 0x26, 0x72, 0x9b, 0x18, 0x1b, 0xec, + 0xd6, 0xc6, 0xc8, 0x61, 0x7a, 0x09, 0x8c, 0xf9, 0x63, 0x38, 0x0e, 0x86, 0xb7, 0x0b, 0xb7, 0xef, + 0x6f, 0x25, 0x86, 0xe0, 0x18, 0x88, 0x3f, 0x90, 0x3f, 0xd9, 0x4a, 0x70, 0xf9, 0x33, 0xc7, 0x85, + 0x53, 0x12, 0x84, 0x89, 0x26, 0x4a, 0x93, 0xc3, 0x74, 0x1e, 0xa5, 0x9d, 0xf9, 0x34, 0x6a, 0xa5, + 0x54, 0x30, 0x15, 0x0a, 0xe7, 0x30, 0x01, 0xf8, 0x43, 0xdc, 0xf0, 0x36, 0xe2, 0x7c, 0xc2, 0x22, + 0x18, 0x76, 0x63, 0x4a, 0xec, 0x35, 0x6a, 0x0d, 0x97, 0x35, 0x1f, 0x5b, 0xe7, 0x52, 0x9b, 0x60, + 0xbe, 0x77, 0x44, 0xef, 0x81, 0x79, 0x2a, 0x88, 0x39, 0x1e, 0x94, 0xf2, 0x57, 0xbe, 0x94, 0x68, + 0x74, 0xee, 0x21, 0x65, 0x37, 0x28, 0xe5, 0x4d, 0xea, 0xe3, 0x0e, 0x7e, 0xfe, 0xdf, 0x63, 0xc7, + 0x85, 0x7f, 0x8b, 0x81, 0xbf, 0xe7, 0x32, 0x73, 0x05, 0x54, 0x52, 0x29, 0x22, 0x55, 0xd4, 0x69, + 0xe9, 0xa4, 0x9d, 0x1d, 0x9d, 0xfa, 0x91, 0xbe, 0x81, 0xca, 0x44, 0x33, 0xea, 0x6a, 0x99, 0x5d, + 0x00, 0xaf, 0xd1, 0x41, 0xb4, 0x61, 0x60, 0x44, 0x09, 0x2a, 0x93, 0x23, 0x6c, 0x22, 0x4d, 0xd1, + 0x1b, 0xa8, 0x8a, 0x15, 0x6a, 0x9b, 0xd8, 0x72, 0x64, 0xed, 0xf9, 0x21, 0xff, 0x05, 0xc7, 0xaa, + 0xfc, 0x17, 0x5c, 0xb0, 0x46, 0x7e, 0xc1, 0x85, 0x8a, 0xea, 0xcc, 0x43, 0x70, 0x71, 0x5b, 0xd5, + 0x2b, 0x88, 0xd8, 0x14, 0x69, 0xc4, 0xc4, 0x48, 0x29, 0x39, 0x9f, 0x5d, 0x3d, 0x4f, 0xae, 0x46, + 0xa9, 0x61, 0xe5, 0x45, 0xf1, 0x40, 0xa5, 0x35, 0xbb, 0x94, 0x2b, 0x13, 0x4d, 0x74, 0x8c, 0x91, + 0xc5, 0x65, 0x62, 0x35, 0x2c, 0x8a, 0xbd, 0xa1, 0x67, 0x1b, 0x69, 0x0d, 0x4a, 0x4d, 0x94, 0x76, + 0xf0, 0x1d, 0x67, 0x59, 0x2e, 0x57, 0x57, 0xaf, 0xae, 0xe0, 0x95, 0xec, 0x5a, 0x69, 0x6d, 0x2d, + 0xbb, 0xb6, 0xbe, 0x5a, 0xc9, 0x2a, 0x2b, 0x57, 0xae, 0x65, 0xaf, 0xac, 0x55, 0x94, 0x52, 0xa5, + 0xfa, 0x3e, 0x5e, 0x5f, 0x59, 0x4b, 0xa3, 0x56, 0x71, 0xca, 0x2f, 0x5f, 0x98, 0x72, 0xe9, 0x3f, + 0x8e, 0x81, 0x64, 0x54, 0x13, 0x3f, 0x1e, 0xc0, 0x6b, 0x60, 0x81, 0x15, 0x88, 0xed, 0xf8, 0x14, + 0x6c, 0x3c, 0x38, 0xc4, 0x0b, 0x31, 0x79, 0xde, 0x21, 0xf0, 0x19, 0xb6, 0x3b, 0x9d, 0xc5, 0x07, + 0x20, 0x15, 0x66, 0x0d, 0xf5, 0x19, 0x4e, 0x2f, 0xc4, 0xc9, 0x67, 0x82, 0xbc, 0x9b, 0x81, 0x9e, + 0xa3, 0x0b, 0x37, 0x58, 0xc6, 0xf1, 0x88, 0x17, 0xf8, 0x30, 0xee, 0x4e, 0xa7, 0xa2, 0xeb, 0xc2, + 0x0d, 0xf5, 0x26, 0x71, 0xc4, 0x0b, 0xf1, 0x30, 0xee, 0x27, 0x81, 0x72, 0xb0, 0x17, 0x6e, 0xbb, + 0xc2, 0x1c, 0x46, 0xbc, 0x30, 0xdc, 0x85, 0xeb, 0x17, 0x9b, 0x1f, 0x82, 0xb3, 0x11, 0x53, 0x85, + 0x6a, 0xd8, 0x11, 0xc4, 0x0b, 0x23, 0x72, 0x32, 0x64, 0xac, 0x60, 0x39, 0xdb, 0x9b, 0x3d, 0xd0, + 0x31, 0xf1, 0xc2, 0x68, 0x0f, 0x76, 0x1f, 0xfd, 0x7d, 0x90, 0x0c, 0xb3, 0x07, 0x7a, 0xa0, 0x31, + 0xc4, 0x0b, 0x63, 0xf2, 0xe9, 0x20, 0x6f, 0xb1, 0xdd, 0x0f, 0x75, 0x99, 0x2b, 0x54, 0x15, 0x8e, + 0xb3, 0x2a, 0x38, 0x64, 0xae, 0x70, 0x25, 0x1c, 0x31, 0x57, 0xb0, 0x6f, 0x02, 0x88, 0x17, 0x26, + 0xc3, 0xe6, 0x2a, 0x76, 0x7a, 0xa8, 0x9e, 0xc7, 0xd4, 0xde, 0xee, 0x04, 0xe2, 0x85, 0xa9, 0xee, + 0x63, 0xf2, 0x77, 0x8b, 0xa3, 0xbb, 0x0d, 0xd4, 0x54, 0x93, 0xaf, 0x51, 0x53, 0x85, 0x6c, 0xd3, + 0xa9, 0xab, 0xae, 0x83, 0xc5, 0x88, 0x6d, 0xc2, 0x87, 0x32, 0x85, 0x78, 0x61, 0x46, 0x5e, 0x08, + 0x59, 0x27, 0xd4, 0xca, 0xf4, 0x11, 0xd0, 0x76, 0x8a, 0x69, 0xc4, 0x0b, 0x89, 0x5e, 0x02, 0xfa, + 0x3a, 0x73, 0xa8, 0xe5, 0x99, 0x41, 0xbc, 0x30, 0x1b, 0x39, 0x9d, 0x80, 0x95, 0x7a, 0x32, 0x07, + 0x9a, 0x2a, 0x5e, 0x80, 0xdd, 0xcc, 0x1e, 0x72, 0xbe, 0x76, 0x5c, 0xc0, 0x52, 0x19, 0x2a, 0x4d, + 0x94, 0xee, 0xe7, 0x58, 0xe9, 0x3c, 0xfa, 0x8c, 0x9a, 0x36, 0xbe, 0x8c, 0xdc, 0xbf, 0x55, 0xa5, + 0x6e, 0x79, 0x83, 0x27, 0x97, 0xa3, 0x6c, 0x01, 0xbd, 0x1d, 0xbe, 0x95, 0xcb, 0x48, 0xba, 0x8c, + 0x56, 0x9f, 0xa0, 0x56, 0x3a, 0x05, 0xe2, 0x45, 0x52, 0x69, 0xf4, 0xca, 0xce, 0xe9, 0xc7, 0x60, + 0xc6, 0xeb, 0x34, 0xff, 0x5c, 0xa5, 0x35, 0x46, 0x36, 0x0d, 0x62, 0xfe, 0xbb, 0x8d, 0x1c, 0x53, + 0x9d, 0x10, 0x15, 0xaf, 0x28, 0x54, 0xf1, 0xb2, 0xc7, 0xdb, 0x27, 0x9e, 0xbb, 0x23, 0x44, 0x66, + 0x2c, 0xe9, 0xaf, 0x39, 0x30, 0xf3, 0x89, 0x51, 0x51, 0x28, 0x7e, 0x28, 0xc9, 0xf8, 0x0b, 0x1b, + 0x5b, 0x14, 0x6e, 0x00, 0x5e, 0x29, 0xb9, 0x4a, 0x4c, 0x48, 0x2b, 0x03, 0xe7, 0x22, 0xd9, 0xe1, + 0x86, 0x1f, 0x80, 0x09, 0x9b, 0xc9, 0x65, 0x0f, 0x7c, 0x9e, 0x6a, 0xdd, 0xfd, 0xc2, 0xb6, 0x8a, + 0xeb, 0x95, 0x3b, 0x8a, 0x75, 0x28, 0x03, 0x97, 0xdc, 0xf9, 0xce, 0x20, 0x30, 0x11, 0xf0, 0x4d, + 0xa7, 0x3c, 0x78, 0xb4, 0x25, 0xdf, 0x4d, 0x0c, 0xc1, 0x51, 0xc0, 0xdf, 0xdd, 0xdd, 0x4a, 0x70, + 0xd2, 0xff, 0x9e, 0x03, 0x67, 0xa2, 0xc0, 0xf7, 0xb1, 0x79, 0xa4, 0x96, 0x31, 0xfc, 0x9f, 0x38, + 0x18, 0xd9, 0x30, 0x1d, 0x9b, 0xc3, 0xc1, 0xb5, 0x4f, 0x0d, 0xce, 0x92, 0xfe, 0x01, 0xff, 0xb7, + 0xbf, 0xf8, 0xcd, 0xd7, 0xb1, 0xff, 0xe7, 0xd3, 0xff, 0xc7, 0x8b, 0x47, 0x2b, 0xfe, 0x63, 0x6a, + 0xaf, 0xa7, 0x54, 0xb1, 0x19, 0x48, 0x1f, 0x2d, 0xb1, 0x19, 0xcc, 0x08, 0x2d, 0xb1, 0x19, 0xf0, + 0xce, 0x96, 0x68, 0x61, 0x43, 0x31, 0x15, 0x4a, 0x4c, 0xb1, 0x69, 0x87, 0x16, 0x9a, 0x01, 0x4f, + 0x6a, 0x89, 0xcd, 0xd0, 0x85, 0xf2, 0xc7, 0x81, 0xf5, 0x8e, 0xbb, 0xb6, 0xc4, 0x66, 0x30, 0xb6, + 0x7d, 0x68, 0x51, 0xd3, 0x30, 0x71, 0x55, 0x7d, 0x2e, 0x66, 0x5a, 0x2e, 0x48, 0x80, 0xcd, 0x8a, + 0xca, 0xb1, 0xa2, 0x40, 0x56, 0x84, 0x21, 0xac, 0x64, 0xbf, 0x76, 0xb2, 0x25, 0x36, 0x3b, 0xb1, + 0xaa, 0x25, 0x36, 0x23, 0xcf, 0x2f, 0x0e, 0x67, 0xcf, 0x77, 0x99, 0x96, 0xd8, 0xec, 0x11, 0xec, + 0x42, 0xd2, 0x02, 0xc5, 0x77, 0x90, 0xba, 0xab, 0x95, 0x69, 0xc1, 0xff, 0xe6, 0x00, 0x70, 0x7d, + 0x84, 0xdd, 0xa8, 0xef, 0xc7, 0x4f, 0x32, 0xcc, 0x4d, 0x2e, 0xa6, 0x97, 0x4e, 0x70, 0x92, 0x3c, + 0x97, 0x81, 0x7f, 0x09, 0x46, 0x6e, 0x13, 0x72, 0x68, 0x1b, 0x70, 0x26, 0x67, 0xd9, 0x25, 0x29, + 0xb7, 0x53, 0xf1, 0xc2, 0xc0, 0xeb, 0x20, 0xe7, 0x18, 0xb2, 0x00, 0xdf, 0x39, 0xd1, 0x3d, 0x9d, + 0x52, 0xaa, 0x05, 0xff, 0x81, 0x03, 0x23, 0x6e, 0x58, 0x78, 0x1d, 0xd3, 0xf4, 0x79, 0x08, 0x4a, + 0xaf, 0x30, 0x2d, 0xde, 0x4b, 0xbd, 0xa2, 0x16, 0x8e, 0x19, 0x7e, 0xc2, 0x81, 0x31, 0x3f, 0x3e, + 0xc1, 0xe5, 0x13, 0x55, 0x89, 0x84, 0xb2, 0xbe, 0x9a, 0x3c, 0x65, 0x9a, 0x54, 0x52, 0x19, 0xf1, + 0x48, 0x7a, 0xb9, 0x26, 0x4a, 0x09, 0xe7, 0x5c, 0x6d, 0x9c, 0xb0, 0xf6, 0x68, 0x45, 0x1a, 0x94, + 0x05, 0xfe, 0x17, 0x07, 0x92, 0x7b, 0x0a, 0x2d, 0xd7, 0x9c, 0xf8, 0xdd, 0x8e, 0x77, 0x3b, 0x3a, + 0x73, 0xbc, 0xef, 0x6e, 0x4b, 0x57, 0xd9, 0x96, 0x96, 0xa5, 0xf7, 0xc4, 0x23, 0x49, 0x79, 0x55, + 0x05, 0xb9, 0x0c, 0xfc, 0x17, 0x0e, 0x8c, 0x6c, 0xe2, 0x3a, 0xa6, 0xb8, 0xdb, 0xd3, 0xfa, 0x61, + 0x3d, 0x3e, 0x2e, 0xbc, 0x57, 0xba, 0x04, 0xa6, 0x01, 0x28, 0x18, 0xea, 0x2d, 0xdc, 0x28, 0xd8, + 0xb4, 0x06, 0x87, 0xc0, 0x19, 0x30, 0x72, 0xd7, 0xf9, 0x94, 0xe0, 0x14, 0x88, 0x9b, 0x58, 0xa9, + 0x80, 0xe1, 0x67, 0xa6, 0x4a, 0xb1, 0xeb, 0x7c, 0x99, 0x57, 0x75, 0xbe, 0x5f, 0x73, 0x60, 0xec, + 0x06, 0xa6, 0xf7, 0x6c, 0x6c, 0x36, 0xbe, 0x4b, 0xf7, 0xfb, 0x8a, 0x3b, 0x2e, 0x3c, 0x48, 0xef, + 0x82, 0xc5, 0x5e, 0x9d, 0x48, 0x1b, 0x70, 0xc0, 0x0e, 0xe4, 0x53, 0xae, 0x34, 0xc4, 0xf6, 0x97, + 0x83, 0x97, 0x4f, 0xda, 0xdf, 0x17, 0x0e, 0x80, 0xbf, 0xcb, 0xaf, 0x86, 0x41, 0xe2, 0x06, 0xa6, + 0x7e, 0xe1, 0xe1, 0x82, 0x5f, 0x1b, 0x3c, 0xdb, 0x7a, 0xfc, 0xa9, 0xd7, 0x67, 0x4d, 0x7f, 0x19, + 0x67, 0x3b, 0xf8, 0x3d, 0x0f, 0x7f, 0x77, 0x52, 0xfe, 0x6a, 0x57, 0x33, 0x5e, 0xdc, 0xee, 0xd5, + 0x15, 0xb5, 0xa2, 0x6b, 0x91, 0x24, 0xd7, 0xb7, 0xad, 0xe9, 0x5a, 0xb3, 0x5f, 0xb6, 0x18, 0x4e, + 0x3e, 0x2f, 0x69, 0x3c, 0x7a, 0xaf, 0xf6, 0xe5, 0x0d, 0xa5, 0xcb, 0xfe, 0x8d, 0x41, 0x37, 0x5f, + 0xa7, 0xf0, 0xef, 0xb9, 0x91, 0xbe, 0x80, 0xdd, 0xd9, 0xb0, 0x4f, 0xb5, 0xdd, 0x67, 0xb9, 0xef, + 0x3e, 0xad, 0x97, 0xa1, 0x86, 0xb2, 0x35, 0xfc, 0x19, 0x0f, 0xe2, 0x5b, 0xe5, 0x1a, 0x81, 0xfd, + 0x7e, 0x4f, 0xb1, 0xec, 0x52, 0xce, 0xed, 0x7b, 0xfc, 0xe0, 0xf0, 0xca, 0x94, 0xe9, 0xdf, 0xc6, + 0x8e, 0x0b, 0x7f, 0x13, 0x03, 0x93, 0xb8, 0x5c, 0x23, 0xc8, 0x72, 0xab, 0x34, 0x30, 0xc6, 0x46, + 0xa6, 0x51, 0x86, 0xb3, 0xf7, 0x6d, 0x4d, 0x53, 0xcc, 0x46, 0x1e, 0x6d, 0x79, 0x53, 0xa9, 0xc4, + 0x66, 0xe7, 0x45, 0x8b, 0xcd, 0xa6, 0x37, 0x01, 0x0c, 0x5f, 0x5b, 0xa6, 0xed, 0x80, 0x97, 0xf5, + 0xe3, 0xeb, 0x80, 0xbf, 0xb2, 0xbc, 0x0a, 0xd7, 0xc1, 0x55, 0x19, 0x53, 0xdb, 0xd4, 0x71, 0x05, + 0x3d, 0xab, 0x61, 0x1d, 0xd1, 0x1a, 0x46, 0x26, 0xb6, 0x88, 0x6d, 0x96, 0x31, 0x52, 0x2d, 0x44, + 0xb1, 0x66, 0x10, 0x53, 0x31, 0xd5, 0x7a, 0x03, 0xd9, 0xba, 0x72, 0xa4, 0xa8, 0x75, 0xa5, 0x54, + 0xc7, 0xb9, 0x8f, 0x3f, 0x00, 0xfc, 0xda, 0xf2, 0x1a, 0x5c, 0x03, 0x99, 0x97, 0x08, 0xa8, 0x10, + 0x6c, 0x21, 0x9d, 0x50, 0x84, 0x9f, 0xab, 0x16, 0xcd, 0xc1, 0x11, 0x10, 0xff, 0x8f, 0x18, 0xe7, + 0x16, 0x89, 0x4f, 0x4e, 0x0e, 0x13, 0x8e, 0x61, 0xc4, 0xa6, 0x7b, 0x30, 0x8f, 0x16, 0xd2, 0x89, + 0x60, 0xc2, 0x71, 0xd6, 0xf2, 0xee, 0x2b, 0xcf, 0x23, 0x08, 0xbb, 0x96, 0xe0, 0x0f, 0x39, 0x30, + 0xb9, 0x89, 0xb1, 0xc1, 0x7e, 0x76, 0x72, 0x26, 0xbe, 0x9f, 0xca, 0xe6, 0x3a, 0xdb, 0xdb, 0xb5, + 0xf4, 0xda, 0x89, 0x21, 0x3e, 0xf4, 0x8b, 0x76, 0xce, 0xe9, 0x70, 0x58, 0x16, 0x2a, 0x00, 0xb0, + 0x4b, 0x8a, 0xaa, 0x5e, 0x51, 0xf5, 0x03, 0x0b, 0x2e, 0x74, 0x45, 0xf0, 0x4d, 0xef, 0xc7, 0xfe, + 0xbe, 0xc1, 0x7d, 0x08, 0x3e, 0x04, 0xa3, 0x0f, 0x54, 0x0d, 0x13, 0x9b, 0xc2, 0x3e, 0x44, 0x7d, + 0x99, 0xcf, 0x32, 0xf5, 0x4f, 0xc3, 0xb9, 0xa0, 0x3d, 0xa9, 0x27, 0xac, 0x06, 0x12, 0x5b, 0xa6, + 0x49, 0x4c, 0x27, 0x7d, 0x6f, 0x62, 0xaa, 0xa8, 0x75, 0x6b, 0x60, 0x80, 0x8b, 0x0c, 0xe0, 0x2d, + 0xb8, 0x18, 0x3a, 0x30, 0x47, 0xea, 0x33, 0x95, 0xd6, 0x2a, 0x9e, 0xd4, 0x7f, 0xe4, 0x00, 0xbc, + 0x81, 0x69, 0xb4, 0xdd, 0x3b, 0xb9, 0x46, 0x88, 0x70, 0xf4, 0x55, 0xe3, 0x5d, 0xa6, 0xc6, 0xf9, + 0xf4, 0x42, 0x50, 0x0d, 0x47, 0x83, 0x12, 0xa9, 0x34, 0xc4, 0xa6, 0x53, 0x11, 0xb0, 0xb6, 0x10, + 0xfe, 0x1d, 0x07, 0x66, 0xf7, 0x88, 0x45, 0x1d, 0x89, 0x8c, 0x95, 0x29, 0xf2, 0x6a, 0x9d, 0x65, + 0x5f, 0x74, 0x91, 0xa1, 0x5f, 0x4a, 0x5f, 0x0c, 0xa2, 0x1b, 0xc4, 0xa2, 0x8e, 0x06, 0xec, 0x87, + 0x44, 0x57, 0x0d, 0xdf, 0x29, 0x52, 0x3f, 0xe6, 0x8e, 0x0b, 0xdf, 0x72, 0xb0, 0xda, 0xa7, 0xd1, + 0x0b, 0x3e, 0x7b, 0xa3, 0x6c, 0x16, 0x3d, 0xab, 0xa9, 0xe5, 0x1a, 0xb2, 0x6a, 0xc4, 0xae, 0x57, + 0xd8, 0xf5, 0x2b, 0x61, 0x64, 0x5b, 0xb8, 0x82, 0x54, 0x1d, 0x19, 0x75, 0xa5, 0x8c, 0x11, 0xa9, + 0xb2, 0x8b, 0x5a, 0x21, 0x65, 0x5b, 0xc3, 0xba, 0xdb, 0x0b, 0xa0, 0x32, 0xd1, 0x9c, 0xc1, 0xf9, + 0xd4, 0x3d, 0xb0, 0xd4, 0xab, 0x32, 0x70, 0xae, 0x91, 0xdf, 0x5a, 0x0e, 0xfa, 0x3c, 0xf9, 0x14, + 0x9c, 0x2a, 0x2b, 0x1a, 0xae, 0x6f, 0x28, 0x16, 0xf6, 0x64, 0x38, 0x7d, 0x10, 0x94, 0xc1, 0xb0, + 0xfb, 0x6b, 0xe8, 0xa0, 0x8e, 0xb4, 0xc0, 0x6c, 0x38, 0x07, 0x67, 0x43, 0x8e, 0xe4, 0x2c, 0x49, + 0x9f, 0x83, 0xc5, 0x82, 0x4e, 0x68, 0x0d, 0x9b, 0x1e, 0x92, 0x73, 0x78, 0x81, 0x4b, 0xf5, 0x51, + 0xe8, 0x8a, 0x0d, 0x0a, 0x3c, 0x54, 0xfc, 0x76, 0xf4, 0xb8, 0xf0, 0xcd, 0x28, 0xfc, 0x25, 0x07, + 0xe6, 0x0a, 0xa8, 0xe8, 0x3e, 0x28, 0x07, 0x42, 0xc0, 0xa7, 0xe0, 0xd4, 0x81, 0xbc, 0xb7, 0x91, + 0xbd, 0xe1, 0x6e, 0x1d, 0x19, 0x26, 0x79, 0x8a, 0xcb, 0x74, 0x50, 0x93, 0xa5, 0x12, 0x3a, 0xd1, + 0xf1, 0x9f, 0x79, 0x5b, 0x73, 0xa8, 0x33, 0x9f, 0x83, 0x53, 0xc5, 0xfb, 0x9b, 0x68, 0x35, 0xbb, + 0x51, 0x57, 0x6c, 0x0b, 0xa3, 0xdb, 0x6a, 0x19, 0xeb, 0x16, 0x86, 0xdb, 0x83, 0x49, 0x16, 0x4b, + 0x75, 0x52, 0x12, 0x35, 0xc5, 0xa2, 0xd8, 0x14, 0x6f, 0xef, 0x6c, 0x6c, 0xed, 0xde, 0xdf, 0xca, + 0xd1, 0xe7, 0x54, 0xe2, 0x57, 0x72, 0xcb, 0x19, 0x9e, 0x8b, 0xc5, 0xa5, 0x84, 0x62, 0xb8, 0xcf, + 0xe0, 0x2a, 0xd1, 0xc5, 0xa7, 0x16, 0xd1, 0xa5, 0xf9, 0xe0, 0xcc, 0xf3, 0x6c, 0x95, 0x90, 0xac, + 0xa6, 0x6a, 0x38, 0xdf, 0x45, 0x99, 0xef, 0x43, 0x29, 0xef, 0x39, 0x19, 0x63, 0x15, 0xee, 0x80, + 0x1b, 0xdd, 0x19, 0xc3, 0xb6, 0xb0, 0xd9, 0xc9, 0x16, 0x35, 0xe5, 0x08, 0x23, 0x03, 0x9b, 0x9a, + 0x6a, 0x59, 0x8e, 0x63, 0x52, 0x82, 0x94, 0x72, 0x19, 0x5b, 0x56, 0x28, 0xbb, 0xe4, 0xe4, 0x37, + 0xc8, 0x41, 0xa3, 0xf2, 0x4d, 0xc0, 0xaf, 0xad, 0xac, 0xc3, 0x02, 0x98, 0xda, 0x79, 0x57, 0x43, + 0x0a, 0xa2, 0x58, 0x31, 0x08, 0xcd, 0xc1, 0x65, 0x90, 0x4b, 0x0d, 0xf4, 0x62, 0xf8, 0xe8, 0x9f, + 0x62, 0x60, 0x06, 0x8c, 0x17, 0x15, 0x4b, 0x2d, 0xb3, 0xfa, 0x3f, 0x36, 0xc6, 0x81, 0x73, 0xa1, + 0x8e, 0x60, 0x66, 0x2c, 0x96, 0x1a, 0xff, 0x34, 0x5b, 0xd8, 0xdb, 0xc9, 0xde, 0xc2, 0x0d, 0x14, + 0x03, 0xbf, 0xe2, 0xda, 0x1d, 0xc2, 0xcf, 0xb9, 0x31, 0x5e, 0x88, 0x4b, 0x17, 0xfc, 0x33, 0x0c, + 0x1c, 0xb8, 0x48, 0x14, 0x9b, 0xd6, 0x44, 0xe7, 0x0f, 0x31, 0xd5, 0xbf, 0xc0, 0xf9, 0xa5, 0xfe, + 0x44, 0x94, 0x1c, 0x62, 0xbd, 0xf8, 0xd7, 0x20, 0xe5, 0x36, 0x1c, 0x10, 0xde, 0x30, 0x15, 0x9d, + 0x5a, 0xc8, 0x19, 0x78, 0xd6, 0x03, 0x8b, 0x5e, 0x1b, 0x02, 0xe7, 0xbc, 0x45, 0x36, 0xf2, 0x57, + 0x37, 0xc0, 0xb0, 0x52, 0xd1, 0x54, 0x1d, 0xe6, 0x43, 0xac, 0x7a, 0x25, 0x44, 0xc6, 0x0e, 0xc3, + 0x21, 0x53, 0x2d, 0xea, 0x64, 0xa2, 0x23, 0x8c, 0x54, 0xbd, 0x4a, 0x4c, 0x8d, 0x9d, 0x77, 0x69, + 0x09, 0x4c, 0x05, 0x4d, 0x31, 0x14, 0x6d, 0x8d, 0x4a, 0x97, 0xfa, 0x36, 0x47, 0x51, 0x52, 0x73, + 0x07, 0x9c, 0xb9, 0xd3, 0x89, 0x3e, 0xc1, 0x3b, 0x35, 0xe8, 0x5d, 0x7a, 0x34, 0xde, 0x3e, 0xb9, + 0xd2, 0x08, 0xbb, 0xcf, 0xab, 0x7f, 0x0a, 0x00, 0x00, 0xff, 0xff, 0x54, 0x0b, 0x85, 0xbe, 0xf9, + 0x27, 0x00, 0x00, } diff --git a/examples/proto/examplepb/a_bit_of_everything.pb.gw.go b/examples/proto/examplepb/a_bit_of_everything.pb.gw.go index b7e7c012e57..e9e8855f877 100644 --- a/examples/proto/examplepb/a_bit_of_everything.pb.gw.go +++ b/examples/proto/examplepb/a_bit_of_everything.pb.gw.go @@ -33,7 +33,7 @@ var _ = runtime.String var _ = utilities.NewDoubleArray var ( - filter_ABitOfEverythingService_Create_0 = &utilities.DoubleArray{Encoding: map[string]int{"float_value": 0, "double_value": 1, "int64_value": 2, "uint64_value": 3, "int32_value": 4, "fixed64_value": 5, "fixed32_value": 6, "bool_value": 7, "string_value": 8, "uint32_value": 9, "sfixed32_value": 10, "sfixed64_value": 11, "sint32_value": 12, "sint64_value": 13, "nonConventionalNameValue": 14, "enum_value": 15, "path_enum_value": 16, "nested_path_enum_value": 17, "repeated_enum_value": 18, "repeated_enum_value_annotation": 19, "enum_value_annotation": 20, "repeated_string_annotation": 21}, Base: []int{1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, Check: []int{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23}} + filter_ABitOfEverythingService_Create_0 = &utilities.DoubleArray{Encoding: map[string]int{"float_value": 0, "double_value": 1, "int64_value": 2, "uint64_value": 3, "int32_value": 4, "fixed64_value": 5, "fixed32_value": 6, "bool_value": 7, "string_value": 8, "uint32_value": 9, "sfixed32_value": 10, "sfixed64_value": 11, "sint32_value": 12, "sint64_value": 13, "nonConventionalNameValue": 14, "enum_value": 15, "path_enum_value": 16, "nested_path_enum_value": 17, "repeated_enum_value": 18, "enum_value_annotation": 19, "repeated_string_annotation": 20}, Base: []int{1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, Check: []int{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22}} ) func request_ABitOfEverythingService_Create_0(ctx context.Context, marshaler runtime.Marshaler, client ABitOfEverythingServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { @@ -270,23 +270,6 @@ func request_ABitOfEverythingService_Create_0(ctx context.Context, marshaler run } protoReq.RepeatedEnumValue = s - val, ok = pathParams["repeated_enum_value_annotation"] - if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "repeated_enum_value_annotation") - } - - es, err = runtime.EnumSlice(val, ",", NumericEnum_value) - - if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "repeated_enum_value_annotation", err) - } - - s := make([]NumericEnum, len(es)) - for i, v := range es { - s[i] = NumericEnum(v) - } - protoReq.RepeatedEnumValueAnnotation = s - val, ok = pathParams["enum_value_annotation"] if !ok { return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "enum_value_annotation") @@ -1388,7 +1371,7 @@ func RegisterABitOfEverythingServiceHandlerClient(ctx context.Context, mux *runt } var ( - pattern_ABitOfEverythingService_Create_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3, 1, 0, 4, 1, 5, 4, 1, 0, 4, 1, 5, 5, 2, 6, 1, 0, 4, 1, 5, 7, 1, 0, 4, 1, 5, 8, 1, 0, 4, 1, 5, 9, 1, 0, 4, 1, 5, 10, 1, 0, 4, 1, 5, 11, 2, 12, 1, 0, 4, 2, 5, 13, 1, 0, 4, 1, 5, 14, 1, 0, 4, 1, 5, 15, 1, 0, 4, 1, 5, 16, 1, 0, 4, 1, 5, 17, 1, 0, 4, 1, 5, 18, 1, 0, 4, 1, 5, 19, 1, 0, 4, 1, 5, 20, 1, 0, 4, 1, 5, 21, 1, 0, 4, 1, 5, 22, 1, 0, 4, 1, 5, 23, 1, 0, 4, 1, 5, 24, 1, 0, 4, 1, 5, 25, 1, 0, 4, 1, 5, 26}, []string{"v1", "example", "a_bit_of_everything", "float_value", "double_value", "int64_value", "separator", "uint64_value", "int32_value", "fixed64_value", "fixed32_value", "bool_value", "strprefix", "string_value", "uint32_value", "sfixed32_value", "sfixed64_value", "sint32_value", "sint64_value", "nonConventionalNameValue", "enum_value", "path_enum_value", "nested_path_enum_value", "repeated_enum_value", "repeated_enum_value_annotation", "enum_value_annotation", "repeated_string_annotation"}, "")) + pattern_ABitOfEverythingService_Create_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3, 1, 0, 4, 1, 5, 4, 1, 0, 4, 1, 5, 5, 2, 6, 1, 0, 4, 1, 5, 7, 1, 0, 4, 1, 5, 8, 1, 0, 4, 1, 5, 9, 1, 0, 4, 1, 5, 10, 1, 0, 4, 1, 5, 11, 2, 12, 1, 0, 4, 2, 5, 13, 1, 0, 4, 1, 5, 14, 1, 0, 4, 1, 5, 15, 1, 0, 4, 1, 5, 16, 1, 0, 4, 1, 5, 17, 1, 0, 4, 1, 5, 18, 1, 0, 4, 1, 5, 19, 1, 0, 4, 1, 5, 20, 1, 0, 4, 1, 5, 21, 1, 0, 4, 1, 5, 22, 1, 0, 4, 1, 5, 23, 1, 0, 4, 1, 5, 24, 1, 0, 4, 1, 5, 25}, []string{"v1", "example", "a_bit_of_everything", "float_value", "double_value", "int64_value", "separator", "uint64_value", "int32_value", "fixed64_value", "fixed32_value", "bool_value", "strprefix", "string_value", "uint32_value", "sfixed32_value", "sfixed64_value", "sint32_value", "sint64_value", "nonConventionalNameValue", "enum_value", "path_enum_value", "nested_path_enum_value", "repeated_enum_value", "enum_value_annotation", "repeated_string_annotation"}, "")) pattern_ABitOfEverythingService_CreateBody_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"v1", "example", "a_bit_of_everything"}, "")) diff --git a/examples/proto/examplepb/a_bit_of_everything.proto b/examples/proto/examplepb/a_bit_of_everything.proto index 82af8e0414f..1fd471575a5 100644 --- a/examples/proto/examplepb/a_bit_of_everything.proto +++ b/examples/proto/examplepb/a_bit_of_everything.proto @@ -204,7 +204,7 @@ message ABitOfEverything { repeated NumericEnum repeated_enum_value = 28; // repeated numeric enum comment (This comment is overridden by the field annotation) - repeated NumericEnum repeated_enum_value_annotation = 32 [(grpc.gateway.protoc_gen_swagger.options.openapiv2_field) = {title: "Repeated numeric enum title", description: "Repeated numeric enum description."}]; + repeated NumericEnum repeated_enum_annotation = 32 [(grpc.gateway.protoc_gen_swagger.options.openapiv2_field) = {title: "Repeated numeric enum title", description: "Repeated numeric enum description."}]; // numeric enum comment (This comment is overridden by the field annotation) NumericEnum enum_value_annotation = 33 [(grpc.gateway.protoc_gen_swagger.options.openapiv2_field) = {title: "Numeric enum title", description: "Numeric enum description."}]; @@ -285,7 +285,7 @@ service ABitOfEverythingService { // This API creates a new ABitOfEverything rpc Create(ABitOfEverything) returns (ABitOfEverything) { option (google.api.http) = { - post: "/v1/example/a_bit_of_everything/{float_value}/{double_value}/{int64_value}/separator/{uint64_value}/{int32_value}/{fixed64_value}/{fixed32_value}/{bool_value}/{string_value=strprefix/*}/{uint32_value}/{sfixed32_value}/{sfixed64_value}/{sint32_value}/{sint64_value}/{nonConventionalNameValue}/{enum_value}/{path_enum_value}/{nested_path_enum_value}/{repeated_enum_value}/{repeated_enum_value_annotation}/{enum_value_annotation}/{repeated_string_annotation}" + post: "/v1/example/a_bit_of_everything/{float_value}/{double_value}/{int64_value}/separator/{uint64_value}/{int32_value}/{fixed64_value}/{fixed32_value}/{bool_value}/{string_value=strprefix/*}/{uint32_value}/{sfixed32_value}/{sfixed64_value}/{sint32_value}/{sint64_value}/{nonConventionalNameValue}/{enum_value}/{path_enum_value}/{nested_path_enum_value}/{repeated_enum_value}/{enum_value_annotation}/{repeated_string_annotation}" }; } rpc CreateBody(ABitOfEverything) returns (ABitOfEverything) { diff --git a/examples/proto/examplepb/a_bit_of_everything.swagger.json b/examples/proto/examplepb/a_bit_of_everything.swagger.json index 48a97db32a9..af0b88fd77c 100644 --- a/examples/proto/examplepb/a_bit_of_everything.swagger.json +++ b/examples/proto/examplepb/a_bit_of_everything.swagger.json @@ -364,7 +364,7 @@ } }, { - "name": "repeated_enum_value_annotation", + "name": "repeated_enum_annotation", "description": "Repeated numeric enum title. Repeated numeric enum description.\n\n - ZERO: ZERO means 0\n - ONE: ONE means 1", "in": "query", "required": false, @@ -437,7 +437,7 @@ } } }, - "/v1/example/a_bit_of_everything/{float_value}/{double_value}/{int64_value}/separator/{uint64_value}/{int32_value}/{fixed64_value}/{fixed32_value}/{bool_value}/{string_value}/{uint32_value}/{sfixed32_value}/{sfixed64_value}/{sint32_value}/{sint64_value}/{nonConventionalNameValue}/{enum_value}/{path_enum_value}/{nested_path_enum_value}/{repeated_enum_value}/{repeated_enum_value_annotation}/{enum_value_annotation}/{repeated_string_annotation}": { + "/v1/example/a_bit_of_everything/{float_value}/{double_value}/{int64_value}/separator/{uint64_value}/{int32_value}/{fixed64_value}/{fixed32_value}/{bool_value}/{string_value}/{uint32_value}/{sfixed32_value}/{sfixed64_value}/{sint32_value}/{sint64_value}/{nonConventionalNameValue}/{enum_value}/{path_enum_value}/{nested_path_enum_value}/{repeated_enum_value}/{enum_value_annotation}/{repeated_string_annotation}": { "post": { "summary": "Create a new ABitOfEverything", "description": "This API creates a new ABitOfEverything", @@ -618,22 +618,6 @@ "collectionFormat": "csv", "minItems": 1 }, - { - "name": "repeated_enum_value_annotation", - "description": "Repeated numeric enum description.", - "in": "path", - "required": true, - "type": "array", - "items": { - "type": "string", - "enum": [ - "ZERO", - "ONE" - ] - }, - "collectionFormat": "csv", - "minItems": 1 - }, { "name": "enum_value_annotation", "description": "Numeric enum description.", @@ -1688,7 +1672,7 @@ }, "title": "repeated enum value. it is comma-separated in query" }, - "repeated_enum_value_annotation": { + "repeated_enum_annotation": { "type": "array", "items": { "$ref": "#/definitions/examplepbNumericEnum" diff --git a/examples/proto/examplepb/stream.swagger.json b/examples/proto/examplepb/stream.swagger.json index 581ae1fd2f1..4418cbb5ce3 100644 --- a/examples/proto/examplepb/stream.swagger.json +++ b/examples/proto/examplepb/stream.swagger.json @@ -261,7 +261,7 @@ }, "title": "repeated enum value. it is comma-separated in query" }, - "repeated_enum_value_annotation": { + "repeated_enum_annotation": { "type": "array", "items": { "$ref": "#/definitions/examplepbNumericEnum"