diff --git a/proto/protovalidate-testing/buf/validate/conformance/cases/predefined_rules_proto2.proto b/proto/protovalidate-testing/buf/validate/conformance/cases/predefined_rules_proto2.proto index 6ba32b2..1233464 100644 --- a/proto/protovalidate-testing/buf/validate/conformance/cases/predefined_rules_proto2.proto +++ b/proto/protovalidate-testing/buf/validate/conformance/cases/predefined_rules_proto2.proto @@ -287,6 +287,42 @@ message PredefinedWrappedBytesRuleProto2 { optional google.protobuf.BytesValue val = 1 [(buf.validate.field).bytes.(bytes_valid_path_proto2) = true]; } +message PredefinedRepeatedWrappedFloatRuleProto2 { + repeated google.protobuf.FloatValue val = 1 [(buf.validate.field).repeated.items.float.(float_abs_range_proto2) = 1.0]; +} + +message PredefinedRepeatedWrappedDoubleRuleProto2 { + repeated google.protobuf.DoubleValue val = 1 [(buf.validate.field).repeated.items.double.(double_abs_range_proto2) = 1.0]; +} + +message PredefinedRepeatedWrappedInt32RuleProto2 { + repeated google.protobuf.Int32Value val = 1 [(buf.validate.field).repeated.items.int32.(int32_abs_in_proto2) = -2]; +} + +message PredefinedRepeatedWrappedInt64RuleProto2 { + repeated google.protobuf.Int64Value val = 1 [(buf.validate.field).repeated.items.int64.(int64_abs_in_proto2) = {value: -2}]; +} + +message PredefinedRepeatedWrappedUInt32RuleProto2 { + repeated google.protobuf.UInt32Value val = 1 [(buf.validate.field).repeated.items.uint32.(uint32_even_proto2) = true]; +} + +message PredefinedRepeatedWrappedUInt64RuleProto2 { + repeated google.protobuf.UInt64Value val = 1 [(buf.validate.field).repeated.items.uint64.(uint64_even_proto2) = true]; +} + +message PredefinedRepeatedWrappedBoolRuleProto2 { + repeated google.protobuf.BoolValue val = 1 [(buf.validate.field).repeated.items.bool.(bool_false_proto2) = true]; +} + +message PredefinedRepeatedWrappedStringRuleProto2 { + repeated google.protobuf.StringValue val = 1 [(buf.validate.field).repeated.items.string.(string_valid_path_proto2) = true]; +} + +message PredefinedRepeatedWrappedBytesRuleProto2 { + repeated google.protobuf.BytesValue val = 1 [(buf.validate.field).repeated.items.bytes.(bytes_valid_path_proto2) = true]; +} + message PredefinedAndCustomRuleProto2 { optional sint32 a = 1 [ (field).cel = { diff --git a/proto/protovalidate-testing/buf/validate/conformance/cases/predefined_rules_proto3.proto b/proto/protovalidate-testing/buf/validate/conformance/cases/predefined_rules_proto3.proto index 0f2dd08..d399bf9 100644 --- a/proto/protovalidate-testing/buf/validate/conformance/cases/predefined_rules_proto3.proto +++ b/proto/protovalidate-testing/buf/validate/conformance/cases/predefined_rules_proto3.proto @@ -143,6 +143,42 @@ message PredefinedWrappedBytesRuleProto3 { google.protobuf.BytesValue val = 1 [(buf.validate.field).bytes.(bytes_valid_path_proto2) = true]; } +message PredefinedRepeatedWrappedFloatRuleProto3 { + repeated google.protobuf.FloatValue val = 1 [(buf.validate.field).repeated.items.float.(float_abs_range_proto2) = 1.0]; +} + +message PredefinedRepeatedWrappedDoubleRuleProto3 { + repeated google.protobuf.DoubleValue val = 1 [(buf.validate.field).repeated.items.double.(double_abs_range_proto2) = 1.0]; +} + +message PredefinedRepeatedWrappedInt32RuleProto3 { + repeated google.protobuf.Int32Value val = 1 [(buf.validate.field).repeated.items.int32.(int32_abs_in_proto2) = -2]; +} + +message PredefinedRepeatedWrappedInt64RuleProto3 { + repeated google.protobuf.Int64Value val = 1 [(buf.validate.field).repeated.items.int64.(int64_abs_in_proto2) = {value: -2}]; +} + +message PredefinedRepeatedWrappedUInt32RuleProto3 { + repeated google.protobuf.UInt32Value val = 1 [(buf.validate.field).repeated.items.uint32.(uint32_even_proto2) = true]; +} + +message PredefinedRepeatedWrappedUInt64RuleProto3 { + repeated google.protobuf.UInt64Value val = 1 [(buf.validate.field).repeated.items.uint64.(uint64_even_proto2) = true]; +} + +message PredefinedRepeatedWrappedBoolRuleProto3 { + repeated google.protobuf.BoolValue val = 1 [(buf.validate.field).repeated.items.bool.(bool_false_proto2) = true]; +} + +message PredefinedRepeatedWrappedStringRuleProto3 { + repeated google.protobuf.StringValue val = 1 [(buf.validate.field).repeated.items.string.(string_valid_path_proto2) = true]; +} + +message PredefinedRepeatedWrappedBytesRuleProto3 { + repeated google.protobuf.BytesValue val = 1 [(buf.validate.field).repeated.items.bytes.(bytes_valid_path_proto2) = true]; +} + message PredefinedAndCustomRuleProto3 { sint32 a = 1 [ (field).cel = { diff --git a/proto/protovalidate-testing/buf/validate/conformance/cases/predefined_rules_proto_editions.proto b/proto/protovalidate-testing/buf/validate/conformance/cases/predefined_rules_proto_editions.proto index 664d131..7a2acbd 100644 --- a/proto/protovalidate-testing/buf/validate/conformance/cases/predefined_rules_proto_editions.proto +++ b/proto/protovalidate-testing/buf/validate/conformance/cases/predefined_rules_proto_editions.proto @@ -299,6 +299,42 @@ message PredefinedWrappedBytesRuleEdition2023 { google.protobuf.BytesValue val = 1 [(buf.validate.field).bytes.(bytes_valid_path_edition_2023) = true]; } +message PredefinedRepeatedWrappedFloatRuleEdition2023 { + repeated google.protobuf.FloatValue val = 1 [(buf.validate.field).repeated.items.float.(float_abs_range_edition_2023) = 1.0]; +} + +message PredefinedRepeatedWrappedDoubleRuleEdition2023 { + repeated google.protobuf.DoubleValue val = 1 [(buf.validate.field).repeated.items.double.(double_abs_range_edition_2023) = 1.0]; +} + +message PredefinedRepeatedWrappedInt32RuleEdition2023 { + repeated google.protobuf.Int32Value val = 1 [(buf.validate.field).repeated.items.int32.(int32_abs_in_edition_2023) = -2]; +} + +message PredefinedRepeatedWrappedInt64RuleEdition2023 { + repeated google.protobuf.Int64Value val = 1 [(buf.validate.field).repeated.items.int64.(int64_abs_in_edition_2023) = {value: -2}]; +} + +message PredefinedRepeatedWrappedUInt32RuleEdition2023 { + repeated google.protobuf.UInt32Value val = 1 [(buf.validate.field).repeated.items.uint32.(uint32_even_edition_2023) = true]; +} + +message PredefinedRepeatedWrappedUInt64RuleEdition2023 { + repeated google.protobuf.UInt64Value val = 1 [(buf.validate.field).repeated.items.uint64.(uint64_even_edition_2023) = true]; +} + +message PredefinedRepeatedWrappedBoolRuleEdition2023 { + repeated google.protobuf.BoolValue val = 1 [(buf.validate.field).repeated.items.bool.(bool_false_edition_2023) = true]; +} + +message PredefinedRepeatedWrappedStringRuleEdition2023 { + repeated google.protobuf.StringValue val = 1 [(buf.validate.field).repeated.items.string.(string_valid_path_edition_2023) = true]; +} + +message PredefinedRepeatedWrappedBytesRuleEdition2023 { + repeated google.protobuf.BytesValue val = 1 [(buf.validate.field).repeated.items.bytes.(bytes_valid_path_edition_2023) = true]; +} + message PredefinedAndCustomRuleEdition2023 { sint32 a = 1 [ (field).cel = { diff --git a/tools/internal/gen/buf/validate/conformance/cases/predefined_rules_proto2.pb.go b/tools/internal/gen/buf/validate/conformance/cases/predefined_rules_proto2.pb.go index 5dd5519..0fcd85d 100644 --- a/tools/internal/gen/buf/validate/conformance/cases/predefined_rules_proto2.pb.go +++ b/tools/internal/gen/buf/validate/conformance/cases/predefined_rules_proto2.pb.go @@ -1410,6 +1410,429 @@ func (x *PredefinedWrappedBytesRuleProto2) GetVal() *wrapperspb.BytesValue { return nil } +type PredefinedRepeatedWrappedFloatRuleProto2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.FloatValue `protobuf:"bytes,1,rep,name=val" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedFloatRuleProto2) Reset() { + *x = PredefinedRepeatedWrappedFloatRuleProto2{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[28] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedFloatRuleProto2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedFloatRuleProto2) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedFloatRuleProto2) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[28] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedFloatRuleProto2.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedFloatRuleProto2) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{28} +} + +func (x *PredefinedRepeatedWrappedFloatRuleProto2) GetVal() []*wrapperspb.FloatValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedDoubleRuleProto2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.DoubleValue `protobuf:"bytes,1,rep,name=val" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedDoubleRuleProto2) Reset() { + *x = PredefinedRepeatedWrappedDoubleRuleProto2{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[29] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedDoubleRuleProto2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedDoubleRuleProto2) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedDoubleRuleProto2) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[29] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedDoubleRuleProto2.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedDoubleRuleProto2) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{29} +} + +func (x *PredefinedRepeatedWrappedDoubleRuleProto2) GetVal() []*wrapperspb.DoubleValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedInt32RuleProto2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.Int32Value `protobuf:"bytes,1,rep,name=val" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedInt32RuleProto2) Reset() { + *x = PredefinedRepeatedWrappedInt32RuleProto2{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[30] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedInt32RuleProto2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedInt32RuleProto2) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedInt32RuleProto2) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[30] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedInt32RuleProto2.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedInt32RuleProto2) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{30} +} + +func (x *PredefinedRepeatedWrappedInt32RuleProto2) GetVal() []*wrapperspb.Int32Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedInt64RuleProto2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.Int64Value `protobuf:"bytes,1,rep,name=val" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedInt64RuleProto2) Reset() { + *x = PredefinedRepeatedWrappedInt64RuleProto2{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[31] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedInt64RuleProto2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedInt64RuleProto2) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedInt64RuleProto2) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[31] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedInt64RuleProto2.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedInt64RuleProto2) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{31} +} + +func (x *PredefinedRepeatedWrappedInt64RuleProto2) GetVal() []*wrapperspb.Int64Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedUInt32RuleProto2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.UInt32Value `protobuf:"bytes,1,rep,name=val" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedUInt32RuleProto2) Reset() { + *x = PredefinedRepeatedWrappedUInt32RuleProto2{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedUInt32RuleProto2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedUInt32RuleProto2) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedUInt32RuleProto2) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[32] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedUInt32RuleProto2.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedUInt32RuleProto2) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{32} +} + +func (x *PredefinedRepeatedWrappedUInt32RuleProto2) GetVal() []*wrapperspb.UInt32Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedUInt64RuleProto2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.UInt64Value `protobuf:"bytes,1,rep,name=val" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedUInt64RuleProto2) Reset() { + *x = PredefinedRepeatedWrappedUInt64RuleProto2{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[33] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedUInt64RuleProto2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedUInt64RuleProto2) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedUInt64RuleProto2) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[33] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedUInt64RuleProto2.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedUInt64RuleProto2) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{33} +} + +func (x *PredefinedRepeatedWrappedUInt64RuleProto2) GetVal() []*wrapperspb.UInt64Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedBoolRuleProto2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.BoolValue `protobuf:"bytes,1,rep,name=val" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedBoolRuleProto2) Reset() { + *x = PredefinedRepeatedWrappedBoolRuleProto2{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[34] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedBoolRuleProto2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedBoolRuleProto2) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedBoolRuleProto2) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[34] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedBoolRuleProto2.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedBoolRuleProto2) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{34} +} + +func (x *PredefinedRepeatedWrappedBoolRuleProto2) GetVal() []*wrapperspb.BoolValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedStringRuleProto2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.StringValue `protobuf:"bytes,1,rep,name=val" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedStringRuleProto2) Reset() { + *x = PredefinedRepeatedWrappedStringRuleProto2{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[35] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedStringRuleProto2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedStringRuleProto2) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedStringRuleProto2) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[35] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedStringRuleProto2.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedStringRuleProto2) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{35} +} + +func (x *PredefinedRepeatedWrappedStringRuleProto2) GetVal() []*wrapperspb.StringValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedBytesRuleProto2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.BytesValue `protobuf:"bytes,1,rep,name=val" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedBytesRuleProto2) Reset() { + *x = PredefinedRepeatedWrappedBytesRuleProto2{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[36] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedBytesRuleProto2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedBytesRuleProto2) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedBytesRuleProto2) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[36] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedBytesRuleProto2.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedBytesRuleProto2) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{36} +} + +func (x *PredefinedRepeatedWrappedBytesRuleProto2) GetVal() []*wrapperspb.BytesValue { + if x != nil { + return x.Val + } + return nil +} + type PredefinedAndCustomRuleProto2 struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1422,7 +1845,7 @@ type PredefinedAndCustomRuleProto2 struct { func (x *PredefinedAndCustomRuleProto2) Reset() { *x = PredefinedAndCustomRuleProto2{} if protoimpl.UnsafeEnabled { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[28] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1435,7 +1858,7 @@ func (x *PredefinedAndCustomRuleProto2) String() string { func (*PredefinedAndCustomRuleProto2) ProtoMessage() {} func (x *PredefinedAndCustomRuleProto2) ProtoReflect() protoreflect.Message { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[28] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[37] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1448,7 +1871,7 @@ func (x *PredefinedAndCustomRuleProto2) ProtoReflect() protoreflect.Message { // Deprecated: Use PredefinedAndCustomRuleProto2.ProtoReflect.Descriptor instead. func (*PredefinedAndCustomRuleProto2) Descriptor() ([]byte, []int) { - return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{28} + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{37} } func (x *PredefinedAndCustomRuleProto2) GetA() int32 { @@ -1476,7 +1899,7 @@ type StandardPredefinedAndCustomRuleProto2 struct { func (x *StandardPredefinedAndCustomRuleProto2) Reset() { *x = StandardPredefinedAndCustomRuleProto2{} if protoimpl.UnsafeEnabled { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[29] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1489,7 +1912,7 @@ func (x *StandardPredefinedAndCustomRuleProto2) String() string { func (*StandardPredefinedAndCustomRuleProto2) ProtoMessage() {} func (x *StandardPredefinedAndCustomRuleProto2) ProtoReflect() protoreflect.Message { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[29] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1502,7 +1925,7 @@ func (x *StandardPredefinedAndCustomRuleProto2) ProtoReflect() protoreflect.Mess // Deprecated: Use StandardPredefinedAndCustomRuleProto2.ProtoReflect.Descriptor instead. func (*StandardPredefinedAndCustomRuleProto2) Descriptor() ([]byte, []int) { - return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{29} + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{38} } func (x *StandardPredefinedAndCustomRuleProto2) GetA() int32 { @@ -1523,7 +1946,7 @@ type PredefinedAndCustomRuleProto2_Nested struct { func (x *PredefinedAndCustomRuleProto2_Nested) Reset() { *x = PredefinedAndCustomRuleProto2_Nested{} if protoimpl.UnsafeEnabled { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[30] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1536,7 +1959,7 @@ func (x *PredefinedAndCustomRuleProto2_Nested) String() string { func (*PredefinedAndCustomRuleProto2_Nested) ProtoMessage() {} func (x *PredefinedAndCustomRuleProto2_Nested) ProtoReflect() protoreflect.Message { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[30] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1549,7 +1972,7 @@ func (x *PredefinedAndCustomRuleProto2_Nested) ProtoReflect() protoreflect.Messa // Deprecated: Use PredefinedAndCustomRuleProto2_Nested.ProtoReflect.Descriptor instead. func (*PredefinedAndCustomRuleProto2_Nested) Descriptor() ([]byte, []int) { - return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{28, 0} + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{37, 0} } func (x *PredefinedAndCustomRuleProto2_Nested) GetC() int32 { @@ -1982,273 +2405,335 @@ var file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDesc = 0x74, 0x6f, 0x32, 0x12, 0x37, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x79, 0x74, 0x65, 0x73, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x08, 0xba, - 0x48, 0x05, 0x7a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0xbe, 0x03, 0x0a, - 0x1d, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x41, 0x6e, 0x64, 0x43, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x71, - 0x0a, 0x01, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x42, 0x63, 0xba, 0x48, 0x60, 0xba, 0x01, - 0x58, 0x0a, 0x28, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x6e, + 0x48, 0x05, 0x7a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x6b, 0x0a, 0x28, + 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, + 0x65, 0x64, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x64, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x52, 0x75, + 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x3f, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x42, 0x10, 0xba, 0x48, 0x0d, 0x92, 0x01, 0x0a, 0x22, 0x08, 0x0a, 0x06, 0xcd, 0x48, + 0x00, 0x00, 0x80, 0x3f, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x71, 0x0a, 0x29, 0x50, 0x72, 0x65, + 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x57, + 0x72, 0x61, 0x70, 0x70, 0x65, 0x64, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x52, 0x75, 0x6c, 0x65, + 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x44, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x42, 0x14, 0xba, 0x48, 0x11, 0x92, 0x01, 0x0e, 0x22, 0x0c, 0x12, 0x0a, 0xc9, 0x48, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x3f, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x71, 0x0a, 0x28, + 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, + 0x65, 0x64, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x64, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, + 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x45, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x42, 0x16, 0xba, 0x48, 0x13, 0x92, 0x01, 0x10, 0x22, 0x0e, 0x1a, 0x0c, 0xc8, 0x48, + 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, + 0x73, 0x0a, 0x28, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x70, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x64, 0x49, 0x6e, 0x74, 0x36, + 0x34, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x47, 0x0a, 0x03, 0x76, + 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x18, 0xba, 0x48, 0x15, 0x92, 0x01, 0x12, 0x22, 0x10, 0x22, + 0x0e, 0xca, 0x48, 0x0b, 0x08, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x52, + 0x03, 0x76, 0x61, 0x6c, 0x22, 0x6a, 0x0a, 0x29, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, + 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, + 0x64, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x32, 0x12, 0x3d, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0d, 0xba, 0x48, + 0x0a, 0x92, 0x01, 0x07, 0x22, 0x05, 0x2a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, + 0x22, 0x6a, 0x0a, 0x29, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, 0x65, + 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x64, 0x55, 0x49, 0x6e, + 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x3d, 0x0a, + 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, + 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0d, 0xba, 0x48, 0x0a, 0x92, 0x01, 0x07, + 0x22, 0x05, 0x32, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x66, 0x0a, 0x27, + 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, + 0x65, 0x64, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x64, 0x42, 0x6f, 0x6f, 0x6c, 0x52, 0x75, 0x6c, + 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x3b, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x42, 0x0d, 0xba, 0x48, 0x0a, 0x92, 0x01, 0x07, 0x22, 0x05, 0x6a, 0x03, 0xc8, 0x48, 0x01, 0x52, + 0x03, 0x76, 0x61, 0x6c, 0x22, 0x6a, 0x0a, 0x29, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, + 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, + 0x64, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x32, 0x12, 0x3d, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0d, 0xba, 0x48, + 0x0a, 0x92, 0x01, 0x07, 0x22, 0x05, 0x72, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, + 0x22, 0x68, 0x0a, 0x28, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, 0x65, + 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x64, 0x42, 0x79, 0x74, + 0x65, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x3c, 0x0a, 0x03, + 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x79, 0x74, 0x65, + 0x73, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0d, 0xba, 0x48, 0x0a, 0x92, 0x01, 0x07, 0x22, 0x05, + 0x7a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0xbe, 0x03, 0x0a, 0x1d, 0x50, + 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x41, 0x6e, 0x64, 0x43, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x71, 0x0a, 0x01, + 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x42, 0x63, 0xba, 0x48, 0x60, 0xba, 0x01, 0x58, 0x0a, + 0x28, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x6e, 0x64, 0x5f, + 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x73, 0x63, 0x61, 0x6c, + 0x61, 0x72, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x1a, 0x2c, 0x74, 0x68, 0x69, 0x73, 0x20, + 0x3e, 0x20, 0x32, 0x34, 0x20, 0x3f, 0x20, 0x27, 0x27, 0x20, 0x3a, 0x20, 0x27, 0x61, 0x20, 0x6d, + 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x67, 0x72, 0x65, 0x61, 0x74, 0x65, 0x72, 0x20, 0x74, + 0x68, 0x61, 0x6e, 0x20, 0x32, 0x34, 0x27, 0x3a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x01, 0x61, 0x12, + 0xb4, 0x01, 0x0a, 0x01, 0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x44, 0x2e, 0x62, 0x75, + 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, + 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, + 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x41, 0x6e, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x2e, 0x4e, 0x65, 0x73, 0x74, 0x65, + 0x64, 0x42, 0x60, 0xba, 0x48, 0x5d, 0xba, 0x01, 0x5a, 0x0a, 0x2a, 0x70, 0x72, 0x65, 0x64, 0x65, + 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64, 0x5f, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1b, 0x62, 0x2e, 0x63, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, + 0x62, 0x65, 0x20, 0x61, 0x20, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x20, 0x6f, 0x66, + 0x20, 0x33, 0x1a, 0x0f, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x63, 0x20, 0x25, 0x20, 0x33, 0x20, 0x3d, + 0x3d, 0x20, 0x30, 0x52, 0x01, 0x62, 0x1a, 0x73, 0x0a, 0x06, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, + 0x12, 0x69, 0x0a, 0x01, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x42, 0x5b, 0xba, 0x48, 0x58, + 0xba, 0x01, 0x50, 0x0a, 0x28, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, + 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, + 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x1a, 0x24, 0x74, + 0x68, 0x69, 0x73, 0x20, 0x3e, 0x20, 0x30, 0x20, 0x3f, 0x20, 0x27, 0x27, 0x20, 0x3a, 0x20, 0x27, + 0x63, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, + 0x76, 0x65, 0x27, 0x3a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x01, 0x63, 0x22, 0xa5, 0x01, 0x0a, 0x25, + 0x53, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, + 0x65, 0x64, 0x41, 0x6e, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x7c, 0x0a, 0x01, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, + 0x42, 0x6e, 0xba, 0x48, 0x6b, 0xba, 0x01, 0x61, 0x0a, 0x31, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x61, + 0x72, 0x64, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x1a, 0x2c, 0x74, 0x68, 0x69, 0x73, 0x20, 0x3e, 0x20, 0x32, 0x34, 0x20, 0x3f, 0x20, 0x27, 0x27, 0x20, 0x3a, 0x20, 0x27, 0x61, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x67, 0x72, 0x65, 0x61, 0x74, 0x65, 0x72, - 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x32, 0x34, 0x27, 0x3a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x01, - 0x61, 0x12, 0xb4, 0x01, 0x0a, 0x01, 0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x44, 0x2e, - 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, - 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, - 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x41, 0x6e, 0x64, 0x43, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x2e, 0x4e, 0x65, 0x73, - 0x74, 0x65, 0x64, 0x42, 0x60, 0xba, 0x48, 0x5d, 0xba, 0x01, 0x5a, 0x0a, 0x2a, 0x70, 0x72, 0x65, - 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64, - 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1b, 0x62, 0x2e, 0x63, 0x20, 0x6d, 0x75, 0x73, - 0x74, 0x20, 0x62, 0x65, 0x20, 0x61, 0x20, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x20, - 0x6f, 0x66, 0x20, 0x33, 0x1a, 0x0f, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x63, 0x20, 0x25, 0x20, 0x33, - 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x52, 0x01, 0x62, 0x1a, 0x73, 0x0a, 0x06, 0x4e, 0x65, 0x73, 0x74, - 0x65, 0x64, 0x12, 0x69, 0x0a, 0x01, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x42, 0x5b, 0xba, - 0x48, 0x58, 0xba, 0x01, 0x50, 0x0a, 0x28, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, - 0x64, 0x5f, 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x75, 0x6c, - 0x65, 0x5f, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x1a, - 0x24, 0x74, 0x68, 0x69, 0x73, 0x20, 0x3e, 0x20, 0x30, 0x20, 0x3f, 0x20, 0x27, 0x27, 0x20, 0x3a, - 0x20, 0x27, 0x63, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x70, 0x6f, 0x73, 0x69, - 0x74, 0x69, 0x76, 0x65, 0x27, 0x3a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x01, 0x63, 0x22, 0xa5, 0x01, - 0x0a, 0x25, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, - 0x69, 0x6e, 0x65, 0x64, 0x41, 0x6e, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x75, 0x6c, - 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x7c, 0x0a, 0x01, 0x61, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x11, 0x42, 0x6e, 0xba, 0x48, 0x6b, 0xba, 0x01, 0x61, 0x0a, 0x31, 0x73, 0x74, 0x61, 0x6e, - 0x64, 0x61, 0x72, 0x64, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, - 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, - 0x73, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x1a, 0x2c, 0x74, - 0x68, 0x69, 0x73, 0x20, 0x3e, 0x20, 0x32, 0x34, 0x20, 0x3f, 0x20, 0x27, 0x27, 0x20, 0x3a, 0x20, - 0x27, 0x61, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x67, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x72, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x32, 0x34, 0x27, 0x3a, 0x05, 0xc8, 0x48, 0x01, - 0x10, 0x38, 0x52, 0x01, 0x61, 0x3a, 0xa9, 0x01, 0x0a, 0x16, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x5f, - 0x61, 0x62, 0x73, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, - 0x12, 0x18, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, - 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, - 0x02, 0x42, 0x59, 0xc2, 0x48, 0x56, 0x0a, 0x54, 0x0a, 0x16, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x2e, - 0x61, 0x62, 0x73, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, - 0x12, 0x1b, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, - 0x20, 0x6f, 0x75, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x1a, 0x1d, 0x74, - 0x68, 0x69, 0x73, 0x20, 0x3e, 0x3d, 0x20, 0x2d, 0x72, 0x75, 0x6c, 0x65, 0x20, 0x26, 0x26, 0x20, - 0x74, 0x68, 0x69, 0x73, 0x20, 0x3c, 0x3d, 0x20, 0x72, 0x75, 0x6c, 0x65, 0x52, 0x13, 0x66, 0x6c, - 0x6f, 0x61, 0x74, 0x41, 0x62, 0x73, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, - 0x32, 0x3a, 0xae, 0x01, 0x0a, 0x17, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x5f, 0x61, 0x62, 0x73, - 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x19, 0x2e, - 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x44, 0x6f, 0x75, - 0x62, 0x6c, 0x65, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, 0x01, 0x42, - 0x5b, 0xc2, 0x48, 0x58, 0x0a, 0x56, 0x0a, 0x17, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x2e, 0x61, - 0x62, 0x73, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, - 0x1c, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, - 0x20, 0x6f, 0x75, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x1a, 0x1d, 0x74, - 0x68, 0x69, 0x73, 0x20, 0x3e, 0x3d, 0x20, 0x2d, 0x72, 0x75, 0x6c, 0x65, 0x20, 0x26, 0x26, 0x20, - 0x74, 0x68, 0x69, 0x73, 0x20, 0x3c, 0x3d, 0x20, 0x72, 0x75, 0x6c, 0x65, 0x52, 0x14, 0x64, 0x6f, - 0x75, 0x62, 0x6c, 0x65, 0x41, 0x62, 0x73, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x74, - 0x6f, 0x32, 0x3a, 0xb6, 0x01, 0x0a, 0x13, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x5f, 0x61, 0x62, 0x73, - 0x5f, 0x69, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x18, 0x2e, 0x62, 0x75, 0x66, - 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, - 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x03, 0x28, 0x05, 0x42, 0x6c, 0xc2, 0x48, 0x69, - 0x0a, 0x67, 0x0a, 0x13, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x2e, 0x61, 0x62, 0x73, 0x5f, 0x69, 0x6e, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x27, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x6d, - 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x69, 0x6e, 0x20, 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, - 0x74, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x6c, 0x69, 0x73, 0x74, - 0x1a, 0x27, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x72, 0x75, 0x6c, 0x65, 0x20, 0x7c, - 0x7c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x72, 0x75, 0x6c, 0x65, 0x2e, 0x6d, - 0x61, 0x70, 0x28, 0x6e, 0x2c, 0x20, 0x2d, 0x6e, 0x29, 0x52, 0x10, 0x69, 0x6e, 0x74, 0x33, 0x32, - 0x41, 0x62, 0x73, 0x49, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x3a, 0xd3, 0x01, 0x0a, 0x13, - 0x69, 0x6e, 0x74, 0x36, 0x34, 0x5f, 0x61, 0x62, 0x73, 0x5f, 0x69, 0x6e, 0x5f, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x32, 0x12, 0x18, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, - 0x74, 0x65, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x42, 0x6c, 0xc2, 0x48, 0x69, 0x0a, 0x67, 0x0a, 0x13, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x2e, - 0x61, 0x62, 0x73, 0x5f, 0x69, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x27, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x69, 0x6e, 0x20, - 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x6f, - 0x66, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x1a, 0x27, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x20, - 0x72, 0x75, 0x6c, 0x65, 0x20, 0x7c, 0x7c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x20, - 0x72, 0x75, 0x6c, 0x65, 0x2e, 0x6d, 0x61, 0x70, 0x28, 0x6e, 0x2c, 0x20, 0x2d, 0x6e, 0x29, 0x52, - 0x10, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x41, 0x62, 0x73, 0x49, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, - 0x32, 0x3a, 0x8e, 0x01, 0x0a, 0x12, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x5f, 0x65, 0x76, 0x65, + 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x32, 0x34, 0x27, 0x3a, 0x05, 0xc8, 0x48, 0x01, 0x10, 0x38, + 0x52, 0x01, 0x61, 0x3a, 0xa9, 0x01, 0x0a, 0x16, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x5f, 0x61, 0x62, + 0x73, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x18, + 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x46, 0x6c, + 0x6f, 0x61, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, 0x02, 0x42, + 0x59, 0xc2, 0x48, 0x56, 0x0a, 0x54, 0x0a, 0x16, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x2e, 0x61, 0x62, + 0x73, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1b, + 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6f, + 0x75, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x1a, 0x1d, 0x74, 0x68, 0x69, + 0x73, 0x20, 0x3e, 0x3d, 0x20, 0x2d, 0x72, 0x75, 0x6c, 0x65, 0x20, 0x26, 0x26, 0x20, 0x74, 0x68, + 0x69, 0x73, 0x20, 0x3c, 0x3d, 0x20, 0x72, 0x75, 0x6c, 0x65, 0x52, 0x13, 0x66, 0x6c, 0x6f, 0x61, + 0x74, 0x41, 0x62, 0x73, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x3a, + 0xae, 0x01, 0x0a, 0x17, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x5f, 0x61, 0x62, 0x73, 0x5f, 0x72, + 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x19, 0x2e, 0x62, 0x75, + 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, + 0x65, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, 0x01, 0x42, 0x5b, 0xc2, + 0x48, 0x58, 0x0a, 0x56, 0x0a, 0x17, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x2e, 0x61, 0x62, 0x73, + 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1c, 0x64, + 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6f, + 0x75, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x1a, 0x1d, 0x74, 0x68, 0x69, + 0x73, 0x20, 0x3e, 0x3d, 0x20, 0x2d, 0x72, 0x75, 0x6c, 0x65, 0x20, 0x26, 0x26, 0x20, 0x74, 0x68, + 0x69, 0x73, 0x20, 0x3c, 0x3d, 0x20, 0x72, 0x75, 0x6c, 0x65, 0x52, 0x14, 0x64, 0x6f, 0x75, 0x62, + 0x6c, 0x65, 0x41, 0x62, 0x73, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, + 0x3a, 0xb6, 0x01, 0x0a, 0x13, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x5f, 0x61, 0x62, 0x73, 0x5f, 0x69, + 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x18, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, + 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x03, 0x28, 0x05, 0x42, 0x6c, 0xc2, 0x48, 0x69, 0x0a, 0x67, + 0x0a, 0x13, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x2e, 0x61, 0x62, 0x73, 0x5f, 0x69, 0x6e, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x27, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x6d, 0x75, 0x73, + 0x74, 0x20, 0x62, 0x65, 0x20, 0x69, 0x6e, 0x20, 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x1a, 0x27, + 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x72, 0x75, 0x6c, 0x65, 0x20, 0x7c, 0x7c, 0x20, + 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x72, 0x75, 0x6c, 0x65, 0x2e, 0x6d, 0x61, 0x70, + 0x28, 0x6e, 0x2c, 0x20, 0x2d, 0x6e, 0x29, 0x52, 0x10, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x41, 0x62, + 0x73, 0x49, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x3a, 0xd3, 0x01, 0x0a, 0x13, 0x69, 0x6e, + 0x74, 0x36, 0x34, 0x5f, 0x61, 0x62, 0x73, 0x5f, 0x69, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x32, 0x12, 0x18, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, + 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, + 0x6c, 0xc2, 0x48, 0x69, 0x0a, 0x67, 0x0a, 0x13, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x2e, 0x61, 0x62, + 0x73, 0x5f, 0x69, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x27, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x69, 0x6e, 0x20, 0x61, 0x62, + 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x6f, 0x66, 0x20, + 0x6c, 0x69, 0x73, 0x74, 0x1a, 0x27, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x72, 0x75, + 0x6c, 0x65, 0x20, 0x7c, 0x7c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x72, 0x75, + 0x6c, 0x65, 0x2e, 0x6d, 0x61, 0x70, 0x28, 0x6e, 0x2c, 0x20, 0x2d, 0x6e, 0x29, 0x52, 0x10, 0x69, + 0x6e, 0x74, 0x36, 0x34, 0x41, 0x62, 0x73, 0x49, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x3a, + 0x8e, 0x01, 0x0a, 0x12, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x19, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, + 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x44, 0xc2, 0x48, 0x41, 0x0a, 0x3f, 0x0a, + 0x12, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x32, 0x12, 0x18, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x1a, 0x0f, 0x74, + 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x75, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x75, 0x52, 0x10, + 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x45, 0x76, 0x65, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, + 0x3a, 0x8e, 0x01, 0x0a, 0x12, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x5f, 0x65, 0x76, 0x65, 0x6e, + 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x19, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, + 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x44, 0xc2, 0x48, 0x41, 0x0a, 0x3f, + 0x0a, 0x12, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x18, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x1a, 0x0f, + 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x75, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x75, 0x52, + 0x10, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x45, 0x76, 0x65, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x32, 0x3a, 0x8c, 0x01, 0x0a, 0x12, 0x73, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x19, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, - 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, - 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x44, 0xc2, 0x48, 0x41, 0x0a, - 0x3f, 0x0a, 0x12, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x18, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x20, 0x76, 0x61, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, + 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x42, 0xc2, 0x48, 0x3f, 0x0a, + 0x3d, 0x0a, 0x12, 0x73, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x18, 0x73, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x1a, - 0x0f, 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x75, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x75, - 0x52, 0x10, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x45, 0x76, 0x65, 0x6e, 0x50, 0x72, 0x6f, 0x74, - 0x6f, 0x32, 0x3a, 0x8e, 0x01, 0x0a, 0x12, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x5f, 0x65, 0x76, - 0x65, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x19, 0x2e, 0x62, 0x75, 0x66, 0x2e, - 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, - 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x44, 0xc2, 0x48, 0x41, - 0x0a, 0x3f, 0x0a, 0x12, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x18, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x20, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, 0x76, 0x65, 0x6e, - 0x1a, 0x0f, 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x75, 0x20, 0x3d, 0x3d, 0x20, 0x30, - 0x75, 0x52, 0x10, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x45, 0x76, 0x65, 0x6e, 0x50, 0x72, 0x6f, - 0x74, 0x6f, 0x32, 0x3a, 0x8c, 0x01, 0x0a, 0x12, 0x73, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x5f, 0x65, - 0x76, 0x65, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x19, 0x2e, 0x62, 0x75, 0x66, - 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x49, 0x6e, 0x74, 0x33, 0x32, - 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x42, 0xc2, 0x48, - 0x3f, 0x0a, 0x3d, 0x0a, 0x12, 0x73, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x2e, 0x65, 0x76, 0x65, 0x6e, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x18, 0x73, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x20, + 0x0d, 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x52, 0x10, + 0x73, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x45, 0x76, 0x65, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, + 0x3a, 0x8c, 0x01, 0x0a, 0x12, 0x73, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x5f, 0x65, 0x76, 0x65, 0x6e, + 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x19, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, + 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x42, 0xc2, 0x48, 0x3f, 0x0a, 0x3d, + 0x0a, 0x12, 0x73, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x18, 0x73, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x1a, 0x0d, + 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x52, 0x10, 0x73, + 0x69, 0x6e, 0x74, 0x36, 0x34, 0x45, 0x76, 0x65, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x3a, + 0x93, 0x01, 0x0a, 0x13, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x5f, 0x65, 0x76, 0x65, 0x6e, + 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1a, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x46, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x52, 0x75, + 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x46, 0xc2, 0x48, 0x43, 0x0a, + 0x41, 0x0a, 0x13, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x19, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, 0x76, 0x65, + 0x6e, 0x1a, 0x0f, 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x75, 0x20, 0x3d, 0x3d, 0x20, + 0x30, 0x75, 0x52, 0x11, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x45, 0x76, 0x65, 0x6e, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x3a, 0x93, 0x01, 0x0a, 0x13, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, + 0x34, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1a, 0x2e, + 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x46, 0x69, 0x78, + 0x65, 0x64, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, 0x08, + 0x42, 0x46, 0xc2, 0x48, 0x43, 0x0a, 0x41, 0x0a, 0x13, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, + 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x19, 0x66, 0x69, + 0x78, 0x65, 0x64, 0x36, 0x34, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, + 0x6f, 0x74, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x1a, 0x0f, 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, + 0x32, 0x75, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x75, 0x52, 0x11, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, + 0x34, 0x45, 0x76, 0x65, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x3a, 0x96, 0x01, 0x0a, 0x14, + 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1b, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, + 0x61, 0x74, 0x65, 0x2e, 0x53, 0x46, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, + 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x46, 0xc2, 0x48, 0x43, 0x0a, 0x41, 0x0a, + 0x14, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1a, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x1a, 0x0d, 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x20, 0x3d, 0x3d, 0x20, 0x30, - 0x52, 0x10, 0x73, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x45, 0x76, 0x65, 0x6e, 0x50, 0x72, 0x6f, 0x74, - 0x6f, 0x32, 0x3a, 0x8c, 0x01, 0x0a, 0x12, 0x73, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x5f, 0x65, 0x76, - 0x65, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x19, 0x2e, 0x62, 0x75, 0x66, 0x2e, - 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, - 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x42, 0xc2, 0x48, 0x3f, - 0x0a, 0x3d, 0x0a, 0x12, 0x73, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x18, 0x73, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x20, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, 0x76, 0x65, 0x6e, - 0x1a, 0x0d, 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x52, - 0x10, 0x73, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x45, 0x76, 0x65, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, - 0x32, 0x3a, 0x93, 0x01, 0x0a, 0x13, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x5f, 0x65, 0x76, - 0x65, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1a, 0x2e, 0x62, 0x75, 0x66, 0x2e, - 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x46, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, - 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x46, 0xc2, 0x48, - 0x43, 0x0a, 0x41, 0x0a, 0x13, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x2e, 0x65, 0x76, 0x65, - 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x19, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, - 0x32, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, - 0x76, 0x65, 0x6e, 0x1a, 0x0f, 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x75, 0x20, 0x3d, - 0x3d, 0x20, 0x30, 0x75, 0x52, 0x11, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x45, 0x76, 0x65, - 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x3a, 0x93, 0x01, 0x0a, 0x13, 0x66, 0x69, 0x78, 0x65, - 0x64, 0x36, 0x34, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, - 0x1a, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x46, - 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, - 0x28, 0x08, 0x42, 0x46, 0xc2, 0x48, 0x43, 0x0a, 0x41, 0x0a, 0x13, 0x66, 0x69, 0x78, 0x65, 0x64, - 0x36, 0x34, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x19, - 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, - 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x1a, 0x0f, 0x74, 0x68, 0x69, 0x73, 0x20, - 0x25, 0x20, 0x32, 0x75, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x75, 0x52, 0x11, 0x66, 0x69, 0x78, 0x65, - 0x64, 0x36, 0x34, 0x45, 0x76, 0x65, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x3a, 0x96, 0x01, - 0x0a, 0x14, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1b, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, - 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x46, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x52, 0x75, - 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x46, 0xc2, 0x48, 0x43, 0x0a, - 0x41, 0x0a, 0x14, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x2e, 0x65, 0x76, 0x65, 0x6e, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1a, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, - 0x32, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, - 0x76, 0x65, 0x6e, 0x1a, 0x0d, 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x20, 0x3d, 0x3d, - 0x20, 0x30, 0x52, 0x12, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x45, 0x76, 0x65, 0x6e, - 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x3a, 0x96, 0x01, 0x0a, 0x14, 0x73, 0x66, 0x69, 0x78, 0x65, - 0x64, 0x36, 0x34, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, - 0x1b, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x53, - 0x46, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, - 0x01, 0x28, 0x08, 0x42, 0x46, 0xc2, 0x48, 0x43, 0x0a, 0x41, 0x0a, 0x14, 0x73, 0x66, 0x69, 0x78, - 0x65, 0x64, 0x36, 0x34, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, - 0x12, 0x1a, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x1a, 0x0d, 0x74, 0x68, - 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x52, 0x12, 0x73, 0x66, 0x69, - 0x78, 0x65, 0x64, 0x36, 0x34, 0x45, 0x76, 0x65, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x3a, - 0x86, 0x01, 0x0a, 0x11, 0x62, 0x6f, 0x6f, 0x6c, 0x5f, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x5f, 0x70, + 0x52, 0x12, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x45, 0x76, 0x65, 0x6e, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x32, 0x3a, 0x96, 0x01, 0x0a, 0x14, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, + 0x34, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1b, 0x2e, + 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x46, 0x69, + 0x78, 0x65, 0x64, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, + 0x08, 0x42, 0x46, 0xc2, 0x48, 0x43, 0x0a, 0x41, 0x0a, 0x14, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, + 0x36, 0x34, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1a, + 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, + 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x1a, 0x0d, 0x74, 0x68, 0x69, 0x73, + 0x20, 0x25, 0x20, 0x32, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x52, 0x12, 0x73, 0x66, 0x69, 0x78, 0x65, + 0x64, 0x36, 0x34, 0x45, 0x76, 0x65, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x3a, 0x86, 0x01, + 0x0a, 0x11, 0x62, 0x6f, 0x6f, 0x6c, 0x5f, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x5f, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x32, 0x12, 0x17, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x65, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, + 0x01, 0x28, 0x08, 0x42, 0x40, 0xc2, 0x48, 0x3d, 0x0a, 0x3b, 0x0a, 0x11, 0x62, 0x6f, 0x6f, 0x6c, + 0x2e, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x17, 0x62, + 0x6f, 0x6f, 0x6c, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, + 0x20, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x1a, 0x0d, 0x74, 0x68, 0x69, 0x73, 0x20, 0x3d, 0x3d, 0x20, + 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x0f, 0x62, 0x6f, 0x6f, 0x6c, 0x46, 0x61, 0x6c, 0x73, 0x65, + 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x3a, 0xfe, 0x01, 0x0a, 0x18, 0x73, 0x74, 0x72, 0x69, 0x6e, + 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x32, 0x12, 0x19, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x65, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, + 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0xa8, 0x01, 0xc2, 0x48, 0xa4, 0x01, 0x0a, 0xa1, 0x01, 0x0a, + 0x18, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x70, 0x61, + 0x74, 0x68, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x1a, 0x84, 0x01, 0x21, 0x74, 0x68, 0x69, + 0x73, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x28, 0x27, 0x5e, 0x28, 0x5b, 0x5e, 0x2f, + 0x2e, 0x5d, 0x5b, 0x5e, 0x2f, 0x5d, 0x3f, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x5b, 0x5e, 0x2f, 0x2e, + 0x5d, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x7b, 0x33, 0x2c, 0x7d, 0x29, 0x28, 0x2f, 0x28, 0x5b, 0x5e, + 0x2f, 0x2e, 0x5d, 0x5b, 0x5e, 0x2f, 0x5d, 0x3f, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x5b, 0x5e, 0x2f, + 0x2e, 0x5d, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x7b, 0x33, 0x2c, 0x7d, 0x29, 0x29, 0x2a, 0x24, 0x27, + 0x29, 0x20, 0x3f, 0x20, 0x27, 0x6e, 0x6f, 0x74, 0x20, 0x61, 0x20, 0x76, 0x61, 0x6c, 0x69, 0x64, + 0x20, 0x70, 0x61, 0x74, 0x68, 0x3a, 0x20, 0x60, 0x25, 0x73, 0x60, 0x27, 0x2e, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x74, 0x28, 0x5b, 0x74, 0x68, 0x69, 0x73, 0x5d, 0x29, 0x20, 0x3a, 0x20, 0x27, 0x27, + 0x52, 0x15, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x50, 0x61, 0x74, + 0x68, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x3a, 0x82, 0x02, 0x0a, 0x17, 0x62, 0x79, 0x74, 0x65, + 0x73, 0x5f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x32, 0x12, 0x18, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x65, 0x2e, 0x42, 0x79, 0x74, 0x65, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, + 0x20, 0x01, 0x28, 0x08, 0x42, 0xaf, 0x01, 0xc2, 0x48, 0xab, 0x01, 0x0a, 0xa8, 0x01, 0x0a, 0x17, + 0x62, 0x79, 0x74, 0x65, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x1a, 0x8c, 0x01, 0x21, 0x73, 0x74, 0x72, 0x69, 0x6e, + 0x67, 0x28, 0x74, 0x68, 0x69, 0x73, 0x29, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x28, + 0x27, 0x5e, 0x28, 0x5b, 0x5e, 0x2f, 0x2e, 0x5d, 0x5b, 0x5e, 0x2f, 0x5d, 0x3f, 0x7c, 0x5b, 0x5e, + 0x2f, 0x5d, 0x5b, 0x5e, 0x2f, 0x2e, 0x5d, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x7b, 0x33, 0x2c, 0x7d, + 0x29, 0x28, 0x2f, 0x28, 0x5b, 0x5e, 0x2f, 0x2e, 0x5d, 0x5b, 0x5e, 0x2f, 0x5d, 0x3f, 0x7c, 0x5b, + 0x5e, 0x2f, 0x5d, 0x5b, 0x5e, 0x2f, 0x2e, 0x5d, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x7b, 0x33, 0x2c, + 0x7d, 0x29, 0x29, 0x2a, 0x24, 0x27, 0x29, 0x20, 0x3f, 0x20, 0x27, 0x6e, 0x6f, 0x74, 0x20, 0x61, + 0x20, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x20, 0x70, 0x61, 0x74, 0x68, 0x3a, 0x20, 0x60, 0x25, 0x73, + 0x60, 0x27, 0x2e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x28, 0x5b, 0x74, 0x68, 0x69, 0x73, 0x5d, + 0x29, 0x20, 0x3a, 0x20, 0x27, 0x27, 0x52, 0x14, 0x62, 0x79, 0x74, 0x65, 0x73, 0x56, 0x61, 0x6c, + 0x69, 0x64, 0x50, 0x61, 0x74, 0x68, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x3a, 0x92, 0x01, 0x0a, + 0x14, 0x65, 0x6e, 0x75, 0x6d, 0x5f, 0x6e, 0x6f, 0x6e, 0x5f, 0x7a, 0x65, 0x72, 0x6f, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x17, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, - 0x64, 0x61, 0x74, 0x65, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, - 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x40, 0xc2, 0x48, 0x3d, 0x0a, 0x3b, 0x0a, 0x11, 0x62, 0x6f, - 0x6f, 0x6c, 0x2e, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, - 0x17, 0x62, 0x6f, 0x6f, 0x6c, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, - 0x6f, 0x74, 0x20, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x1a, 0x0d, 0x74, 0x68, 0x69, 0x73, 0x20, 0x3d, - 0x3d, 0x20, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x0f, 0x62, 0x6f, 0x6f, 0x6c, 0x46, 0x61, 0x6c, - 0x73, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x3a, 0xfe, 0x01, 0x0a, 0x18, 0x73, 0x74, 0x72, - 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x19, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, - 0x64, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x73, - 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0xa8, 0x01, 0xc2, 0x48, 0xa4, 0x01, 0x0a, 0xa1, - 0x01, 0x0a, 0x18, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, - 0x70, 0x61, 0x74, 0x68, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x1a, 0x84, 0x01, 0x21, 0x74, - 0x68, 0x69, 0x73, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x28, 0x27, 0x5e, 0x28, 0x5b, - 0x5e, 0x2f, 0x2e, 0x5d, 0x5b, 0x5e, 0x2f, 0x5d, 0x3f, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x5b, 0x5e, - 0x2f, 0x2e, 0x5d, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x7b, 0x33, 0x2c, 0x7d, 0x29, 0x28, 0x2f, 0x28, - 0x5b, 0x5e, 0x2f, 0x2e, 0x5d, 0x5b, 0x5e, 0x2f, 0x5d, 0x3f, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x5b, - 0x5e, 0x2f, 0x2e, 0x5d, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x7b, 0x33, 0x2c, 0x7d, 0x29, 0x29, 0x2a, - 0x24, 0x27, 0x29, 0x20, 0x3f, 0x20, 0x27, 0x6e, 0x6f, 0x74, 0x20, 0x61, 0x20, 0x76, 0x61, 0x6c, - 0x69, 0x64, 0x20, 0x70, 0x61, 0x74, 0x68, 0x3a, 0x20, 0x60, 0x25, 0x73, 0x60, 0x27, 0x2e, 0x66, - 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x28, 0x5b, 0x74, 0x68, 0x69, 0x73, 0x5d, 0x29, 0x20, 0x3a, 0x20, - 0x27, 0x27, 0x52, 0x15, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x50, - 0x61, 0x74, 0x68, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x3a, 0x82, 0x02, 0x0a, 0x17, 0x62, 0x79, - 0x74, 0x65, 0x73, 0x5f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x18, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, - 0x64, 0x61, 0x74, 0x65, 0x2e, 0x42, 0x79, 0x74, 0x65, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, - 0x89, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0xaf, 0x01, 0xc2, 0x48, 0xab, 0x01, 0x0a, 0xa8, 0x01, - 0x0a, 0x17, 0x62, 0x79, 0x74, 0x65, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x70, 0x61, - 0x74, 0x68, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x1a, 0x8c, 0x01, 0x21, 0x73, 0x74, 0x72, - 0x69, 0x6e, 0x67, 0x28, 0x74, 0x68, 0x69, 0x73, 0x29, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, - 0x73, 0x28, 0x27, 0x5e, 0x28, 0x5b, 0x5e, 0x2f, 0x2e, 0x5d, 0x5b, 0x5e, 0x2f, 0x5d, 0x3f, 0x7c, - 0x5b, 0x5e, 0x2f, 0x5d, 0x5b, 0x5e, 0x2f, 0x2e, 0x5d, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x7b, 0x33, - 0x2c, 0x7d, 0x29, 0x28, 0x2f, 0x28, 0x5b, 0x5e, 0x2f, 0x2e, 0x5d, 0x5b, 0x5e, 0x2f, 0x5d, 0x3f, - 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x5b, 0x5e, 0x2f, 0x2e, 0x5d, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x7b, - 0x33, 0x2c, 0x7d, 0x29, 0x29, 0x2a, 0x24, 0x27, 0x29, 0x20, 0x3f, 0x20, 0x27, 0x6e, 0x6f, 0x74, - 0x20, 0x61, 0x20, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x20, 0x70, 0x61, 0x74, 0x68, 0x3a, 0x20, 0x60, - 0x25, 0x73, 0x60, 0x27, 0x2e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x28, 0x5b, 0x74, 0x68, 0x69, - 0x73, 0x5d, 0x29, 0x20, 0x3a, 0x20, 0x27, 0x27, 0x52, 0x14, 0x62, 0x79, 0x74, 0x65, 0x73, 0x56, - 0x61, 0x6c, 0x69, 0x64, 0x50, 0x61, 0x74, 0x68, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x3a, 0x92, - 0x01, 0x0a, 0x14, 0x65, 0x6e, 0x75, 0x6d, 0x5f, 0x6e, 0x6f, 0x6e, 0x5f, 0x7a, 0x65, 0x72, 0x6f, - 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x17, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, - 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x73, - 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x47, 0xc2, 0x48, 0x44, 0x0a, 0x42, 0x0a, 0x14, - 0x65, 0x6e, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x6e, 0x5f, 0x7a, 0x65, 0x72, 0x6f, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1a, 0x65, 0x6e, 0x75, 0x6d, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6e, 0x6f, 0x6e, 0x2d, 0x7a, 0x65, 0x72, 0x6f, - 0x1a, 0x0e, 0x69, 0x6e, 0x74, 0x28, 0x74, 0x68, 0x69, 0x73, 0x29, 0x20, 0x21, 0x3d, 0x20, 0x30, - 0x52, 0x11, 0x65, 0x6e, 0x75, 0x6d, 0x4e, 0x6f, 0x6e, 0x5a, 0x65, 0x72, 0x6f, 0x50, 0x72, 0x6f, - 0x74, 0x6f, 0x32, 0x3a, 0xcc, 0x01, 0x0a, 0x1d, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, - 0x5f, 0x61, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x5f, 0x66, 0x69, 0x76, 0x65, 0x5f, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1b, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, - 0x64, 0x61, 0x74, 0x65, 0x2e, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x52, 0x75, 0x6c, - 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x6c, 0xc2, 0x48, 0x69, 0x0a, 0x67, - 0x0a, 0x1d, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x2e, 0x61, 0x74, 0x5f, 0x6c, 0x65, - 0x61, 0x73, 0x74, 0x5f, 0x66, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, - 0x2d, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x20, - 0x6d, 0x75, 0x73, 0x74, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x61, 0x74, 0x20, 0x6c, 0x65, 0x61, - 0x73, 0x74, 0x20, 0x66, 0x69, 0x76, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x1a, 0x17, - 0x75, 0x69, 0x6e, 0x74, 0x28, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x73, 0x69, 0x7a, 0x65, 0x28, 0x29, - 0x29, 0x20, 0x3e, 0x3d, 0x20, 0x35, 0x75, 0x52, 0x19, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, - 0x64, 0x41, 0x74, 0x4c, 0x65, 0x61, 0x73, 0x74, 0x46, 0x69, 0x76, 0x65, 0x50, 0x72, 0x6f, 0x74, - 0x6f, 0x32, 0x3a, 0xb9, 0x01, 0x0a, 0x18, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x74, 0x6f, 0x6f, 0x5f, 0x6c, 0x6f, 0x6e, 0x67, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, - 0x1b, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x44, - 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, - 0x01, 0x28, 0x08, 0x42, 0x62, 0xc2, 0x48, 0x5f, 0x0a, 0x5d, 0x0a, 0x18, 0x64, 0x75, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x74, 0x6f, 0x6f, 0x5f, 0x6c, 0x6f, 0x6e, 0x67, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x28, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x63, - 0x61, 0x6e, 0x27, 0x74, 0x20, 0x62, 0x65, 0x20, 0x6c, 0x6f, 0x6e, 0x67, 0x65, 0x72, 0x20, 0x74, - 0x68, 0x61, 0x6e, 0x20, 0x31, 0x30, 0x20, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x1a, 0x17, - 0x74, 0x68, 0x69, 0x73, 0x20, 0x3c, 0x3d, 0x20, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x28, 0x27, 0x31, 0x30, 0x73, 0x27, 0x29, 0x52, 0x15, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x54, 0x6f, 0x6f, 0x4c, 0x6f, 0x6e, 0x67, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x3a, 0xc8, - 0x01, 0x0a, 0x19, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x5f, 0x69, 0x6e, 0x5f, - 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1c, 0x2e, 0x62, - 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, - 0x08, 0x42, 0x6e, 0xc2, 0x48, 0x6b, 0x0a, 0x69, 0x0a, 0x1b, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x2e, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x16, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, - 0x20, 0x6f, 0x75, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x1a, 0x32, 0x69, - 0x6e, 0x74, 0x28, 0x74, 0x68, 0x69, 0x73, 0x29, 0x20, 0x3e, 0x3d, 0x20, 0x31, 0x30, 0x34, 0x39, - 0x35, 0x38, 0x37, 0x32, 0x30, 0x30, 0x20, 0x26, 0x26, 0x20, 0x69, 0x6e, 0x74, 0x28, 0x74, 0x68, - 0x69, 0x73, 0x29, 0x20, 0x3c, 0x3d, 0x20, 0x31, 0x30, 0x38, 0x30, 0x34, 0x33, 0x32, 0x30, 0x30, - 0x30, 0x52, 0x16, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x49, 0x6e, 0x52, 0x61, - 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x42, 0xb1, 0x02, 0x0a, 0x22, 0x63, 0x6f, - 0x6d, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, - 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, - 0x42, 0x1a, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, 0x75, 0x6c, 0x65, - 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x53, - 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x62, 0x75, 0x66, 0x62, 0x75, - 0x69, 0x6c, 0x64, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, - 0x65, 0x2f, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, - 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x62, 0x75, 0x66, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, - 0x65, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2f, 0x63, 0x61, - 0x73, 0x65, 0x73, 0xa2, 0x02, 0x04, 0x42, 0x56, 0x43, 0x43, 0xaa, 0x02, 0x1e, 0x42, 0x75, 0x66, - 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, - 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x43, 0x61, 0x73, 0x65, 0x73, 0xca, 0x02, 0x1e, 0x42, 0x75, - 0x66, 0x5c, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5c, 0x43, 0x6f, 0x6e, 0x66, 0x6f, - 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x5c, 0x43, 0x61, 0x73, 0x65, 0x73, 0xe2, 0x02, 0x2a, 0x42, - 0x75, 0x66, 0x5c, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5c, 0x43, 0x6f, 0x6e, 0x66, - 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x5c, 0x43, 0x61, 0x73, 0x65, 0x73, 0x5c, 0x47, 0x50, - 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x21, 0x42, 0x75, 0x66, 0x3a, - 0x3a, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x66, 0x6f, - 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x3a, 0x3a, 0x43, 0x61, 0x73, 0x65, 0x73, + 0x64, 0x61, 0x74, 0x65, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, + 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x47, 0xc2, 0x48, 0x44, 0x0a, 0x42, 0x0a, 0x14, 0x65, 0x6e, + 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x6e, 0x5f, 0x7a, 0x65, 0x72, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x32, 0x12, 0x1a, 0x65, 0x6e, 0x75, 0x6d, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, + 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6e, 0x6f, 0x6e, 0x2d, 0x7a, 0x65, 0x72, 0x6f, 0x1a, 0x0e, + 0x69, 0x6e, 0x74, 0x28, 0x74, 0x68, 0x69, 0x73, 0x29, 0x20, 0x21, 0x3d, 0x20, 0x30, 0x52, 0x11, + 0x65, 0x6e, 0x75, 0x6d, 0x4e, 0x6f, 0x6e, 0x5a, 0x65, 0x72, 0x6f, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x32, 0x3a, 0xcc, 0x01, 0x0a, 0x1d, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, + 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x5f, 0x66, 0x69, 0x76, 0x65, 0x5f, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x32, 0x12, 0x1b, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x65, 0x2e, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x52, 0x75, 0x6c, 0x65, 0x73, + 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x6c, 0xc2, 0x48, 0x69, 0x0a, 0x67, 0x0a, 0x1d, + 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x2e, 0x61, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, + 0x74, 0x5f, 0x66, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x2d, 0x72, + 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x20, 0x6d, 0x75, + 0x73, 0x74, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x61, 0x74, 0x20, 0x6c, 0x65, 0x61, 0x73, 0x74, + 0x20, 0x66, 0x69, 0x76, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x1a, 0x17, 0x75, 0x69, + 0x6e, 0x74, 0x28, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x73, 0x69, 0x7a, 0x65, 0x28, 0x29, 0x29, 0x20, + 0x3e, 0x3d, 0x20, 0x35, 0x75, 0x52, 0x19, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, + 0x74, 0x4c, 0x65, 0x61, 0x73, 0x74, 0x46, 0x69, 0x76, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, + 0x3a, 0xb9, 0x01, 0x0a, 0x18, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x6f, + 0x6f, 0x5f, 0x6c, 0x6f, 0x6e, 0x67, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1b, 0x2e, + 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x44, 0x75, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, + 0x08, 0x42, 0x62, 0xc2, 0x48, 0x5f, 0x0a, 0x5d, 0x0a, 0x18, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x74, 0x6f, 0x6f, 0x5f, 0x6c, 0x6f, 0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x32, 0x12, 0x28, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x63, 0x61, 0x6e, + 0x27, 0x74, 0x20, 0x62, 0x65, 0x20, 0x6c, 0x6f, 0x6e, 0x67, 0x65, 0x72, 0x20, 0x74, 0x68, 0x61, + 0x6e, 0x20, 0x31, 0x30, 0x20, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x1a, 0x17, 0x74, 0x68, + 0x69, 0x73, 0x20, 0x3c, 0x3d, 0x20, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x27, + 0x31, 0x30, 0x73, 0x27, 0x29, 0x52, 0x15, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, + 0x6f, 0x6f, 0x4c, 0x6f, 0x6e, 0x67, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x3a, 0xc8, 0x01, 0x0a, + 0x19, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x5f, 0x69, 0x6e, 0x5f, 0x72, 0x61, + 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1c, 0x2e, 0x62, 0x75, 0x66, + 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, + 0x61, 0x6d, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x89, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, + 0x6e, 0xc2, 0x48, 0x6b, 0x0a, 0x69, 0x0a, 0x1b, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x2e, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x32, 0x12, 0x16, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x20, 0x6f, + 0x75, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x1a, 0x32, 0x69, 0x6e, 0x74, + 0x28, 0x74, 0x68, 0x69, 0x73, 0x29, 0x20, 0x3e, 0x3d, 0x20, 0x31, 0x30, 0x34, 0x39, 0x35, 0x38, + 0x37, 0x32, 0x30, 0x30, 0x20, 0x26, 0x26, 0x20, 0x69, 0x6e, 0x74, 0x28, 0x74, 0x68, 0x69, 0x73, + 0x29, 0x20, 0x3c, 0x3d, 0x20, 0x31, 0x30, 0x38, 0x30, 0x34, 0x33, 0x32, 0x30, 0x30, 0x30, 0x52, + 0x16, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x49, 0x6e, 0x52, 0x61, 0x6e, 0x67, + 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x42, 0xb1, 0x02, 0x0a, 0x22, 0x63, 0x6f, 0x6d, 0x2e, + 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x42, 0x1a, + 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x53, 0x67, 0x69, + 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x62, 0x75, 0x66, 0x62, 0x75, 0x69, 0x6c, + 0x64, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, + 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2f, 0x67, + 0x65, 0x6e, 0x2f, 0x62, 0x75, 0x66, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, + 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2f, 0x63, 0x61, 0x73, 0x65, + 0x73, 0xa2, 0x02, 0x04, 0x42, 0x56, 0x43, 0x43, 0xaa, 0x02, 0x1e, 0x42, 0x75, 0x66, 0x2e, 0x56, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x6e, 0x63, 0x65, 0x2e, 0x43, 0x61, 0x73, 0x65, 0x73, 0xca, 0x02, 0x1e, 0x42, 0x75, 0x66, 0x5c, + 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5c, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x6e, 0x63, 0x65, 0x5c, 0x43, 0x61, 0x73, 0x65, 0x73, 0xe2, 0x02, 0x2a, 0x42, 0x75, 0x66, + 0x5c, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5c, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x5c, 0x43, 0x61, 0x73, 0x65, 0x73, 0x5c, 0x47, 0x50, 0x42, 0x4d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x21, 0x42, 0x75, 0x66, 0x3a, 0x3a, 0x56, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x6e, 0x63, 0x65, 0x3a, 0x3a, 0x43, 0x61, 0x73, 0x65, 0x73, } var ( @@ -2264,110 +2749,128 @@ func file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZ } var file_buf_validate_conformance_cases_predefined_rules_proto2_proto_enumTypes = make([]protoimpl.EnumInfo, 1) -var file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes = make([]protoimpl.MessageInfo, 31) +var file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes = make([]protoimpl.MessageInfo, 40) var file_buf_validate_conformance_cases_predefined_rules_proto2_proto_goTypes = []any{ - (PredefinedEnumRuleProto2_EnumProto2)(0), // 0: buf.validate.conformance.cases.PredefinedEnumRuleProto2.EnumProto2 - (*PredefinedFloatRuleProto2)(nil), // 1: buf.validate.conformance.cases.PredefinedFloatRuleProto2 - (*PredefinedDoubleRuleProto2)(nil), // 2: buf.validate.conformance.cases.PredefinedDoubleRuleProto2 - (*PredefinedInt32RuleProto2)(nil), // 3: buf.validate.conformance.cases.PredefinedInt32RuleProto2 - (*PredefinedInt64RuleProto2)(nil), // 4: buf.validate.conformance.cases.PredefinedInt64RuleProto2 - (*PredefinedUInt32RuleProto2)(nil), // 5: buf.validate.conformance.cases.PredefinedUInt32RuleProto2 - (*PredefinedUInt64RuleProto2)(nil), // 6: buf.validate.conformance.cases.PredefinedUInt64RuleProto2 - (*PredefinedSInt32RuleProto2)(nil), // 7: buf.validate.conformance.cases.PredefinedSInt32RuleProto2 - (*PredefinedSInt64RuleProto2)(nil), // 8: buf.validate.conformance.cases.PredefinedSInt64RuleProto2 - (*PredefinedFixed32RuleProto2)(nil), // 9: buf.validate.conformance.cases.PredefinedFixed32RuleProto2 - (*PredefinedFixed64RuleProto2)(nil), // 10: buf.validate.conformance.cases.PredefinedFixed64RuleProto2 - (*PredefinedSFixed32RuleProto2)(nil), // 11: buf.validate.conformance.cases.PredefinedSFixed32RuleProto2 - (*PredefinedSFixed64RuleProto2)(nil), // 12: buf.validate.conformance.cases.PredefinedSFixed64RuleProto2 - (*PredefinedBoolRuleProto2)(nil), // 13: buf.validate.conformance.cases.PredefinedBoolRuleProto2 - (*PredefinedStringRuleProto2)(nil), // 14: buf.validate.conformance.cases.PredefinedStringRuleProto2 - (*PredefinedBytesRuleProto2)(nil), // 15: buf.validate.conformance.cases.PredefinedBytesRuleProto2 - (*PredefinedEnumRuleProto2)(nil), // 16: buf.validate.conformance.cases.PredefinedEnumRuleProto2 - (*PredefinedRepeatedRuleProto2)(nil), // 17: buf.validate.conformance.cases.PredefinedRepeatedRuleProto2 - (*PredefinedDurationRuleProto2)(nil), // 18: buf.validate.conformance.cases.PredefinedDurationRuleProto2 - (*PredefinedTimestampRuleProto2)(nil), // 19: buf.validate.conformance.cases.PredefinedTimestampRuleProto2 - (*PredefinedWrappedFloatRuleProto2)(nil), // 20: buf.validate.conformance.cases.PredefinedWrappedFloatRuleProto2 - (*PredefinedWrappedDoubleRuleProto2)(nil), // 21: buf.validate.conformance.cases.PredefinedWrappedDoubleRuleProto2 - (*PredefinedWrappedInt32RuleProto2)(nil), // 22: buf.validate.conformance.cases.PredefinedWrappedInt32RuleProto2 - (*PredefinedWrappedInt64RuleProto2)(nil), // 23: buf.validate.conformance.cases.PredefinedWrappedInt64RuleProto2 - (*PredefinedWrappedUInt32RuleProto2)(nil), // 24: buf.validate.conformance.cases.PredefinedWrappedUInt32RuleProto2 - (*PredefinedWrappedUInt64RuleProto2)(nil), // 25: buf.validate.conformance.cases.PredefinedWrappedUInt64RuleProto2 - (*PredefinedWrappedBoolRuleProto2)(nil), // 26: buf.validate.conformance.cases.PredefinedWrappedBoolRuleProto2 - (*PredefinedWrappedStringRuleProto2)(nil), // 27: buf.validate.conformance.cases.PredefinedWrappedStringRuleProto2 - (*PredefinedWrappedBytesRuleProto2)(nil), // 28: buf.validate.conformance.cases.PredefinedWrappedBytesRuleProto2 - (*PredefinedAndCustomRuleProto2)(nil), // 29: buf.validate.conformance.cases.PredefinedAndCustomRuleProto2 - (*StandardPredefinedAndCustomRuleProto2)(nil), // 30: buf.validate.conformance.cases.StandardPredefinedAndCustomRuleProto2 - (*PredefinedAndCustomRuleProto2_Nested)(nil), // 31: buf.validate.conformance.cases.PredefinedAndCustomRuleProto2.Nested - (*durationpb.Duration)(nil), // 32: google.protobuf.Duration - (*timestamppb.Timestamp)(nil), // 33: google.protobuf.Timestamp - (*wrapperspb.FloatValue)(nil), // 34: google.protobuf.FloatValue - (*wrapperspb.DoubleValue)(nil), // 35: google.protobuf.DoubleValue - (*wrapperspb.Int32Value)(nil), // 36: google.protobuf.Int32Value - (*wrapperspb.Int64Value)(nil), // 37: google.protobuf.Int64Value - (*wrapperspb.UInt32Value)(nil), // 38: google.protobuf.UInt32Value - (*wrapperspb.UInt64Value)(nil), // 39: google.protobuf.UInt64Value - (*wrapperspb.BoolValue)(nil), // 40: google.protobuf.BoolValue - (*wrapperspb.StringValue)(nil), // 41: google.protobuf.StringValue - (*wrapperspb.BytesValue)(nil), // 42: google.protobuf.BytesValue - (*validate.FloatRules)(nil), // 43: buf.validate.FloatRules - (*validate.DoubleRules)(nil), // 44: buf.validate.DoubleRules - (*validate.Int32Rules)(nil), // 45: buf.validate.Int32Rules - (*validate.Int64Rules)(nil), // 46: buf.validate.Int64Rules - (*validate.UInt32Rules)(nil), // 47: buf.validate.UInt32Rules - (*validate.UInt64Rules)(nil), // 48: buf.validate.UInt64Rules - (*validate.SInt32Rules)(nil), // 49: buf.validate.SInt32Rules - (*validate.SInt64Rules)(nil), // 50: buf.validate.SInt64Rules - (*validate.Fixed32Rules)(nil), // 51: buf.validate.Fixed32Rules - (*validate.Fixed64Rules)(nil), // 52: buf.validate.Fixed64Rules - (*validate.SFixed32Rules)(nil), // 53: buf.validate.SFixed32Rules - (*validate.SFixed64Rules)(nil), // 54: buf.validate.SFixed64Rules - (*validate.BoolRules)(nil), // 55: buf.validate.BoolRules - (*validate.StringRules)(nil), // 56: buf.validate.StringRules - (*validate.BytesRules)(nil), // 57: buf.validate.BytesRules - (*validate.EnumRules)(nil), // 58: buf.validate.EnumRules - (*validate.RepeatedRules)(nil), // 59: buf.validate.RepeatedRules - (*validate.DurationRules)(nil), // 60: buf.validate.DurationRules - (*validate.TimestampRules)(nil), // 61: buf.validate.TimestampRules + (PredefinedEnumRuleProto2_EnumProto2)(0), // 0: buf.validate.conformance.cases.PredefinedEnumRuleProto2.EnumProto2 + (*PredefinedFloatRuleProto2)(nil), // 1: buf.validate.conformance.cases.PredefinedFloatRuleProto2 + (*PredefinedDoubleRuleProto2)(nil), // 2: buf.validate.conformance.cases.PredefinedDoubleRuleProto2 + (*PredefinedInt32RuleProto2)(nil), // 3: buf.validate.conformance.cases.PredefinedInt32RuleProto2 + (*PredefinedInt64RuleProto2)(nil), // 4: buf.validate.conformance.cases.PredefinedInt64RuleProto2 + (*PredefinedUInt32RuleProto2)(nil), // 5: buf.validate.conformance.cases.PredefinedUInt32RuleProto2 + (*PredefinedUInt64RuleProto2)(nil), // 6: buf.validate.conformance.cases.PredefinedUInt64RuleProto2 + (*PredefinedSInt32RuleProto2)(nil), // 7: buf.validate.conformance.cases.PredefinedSInt32RuleProto2 + (*PredefinedSInt64RuleProto2)(nil), // 8: buf.validate.conformance.cases.PredefinedSInt64RuleProto2 + (*PredefinedFixed32RuleProto2)(nil), // 9: buf.validate.conformance.cases.PredefinedFixed32RuleProto2 + (*PredefinedFixed64RuleProto2)(nil), // 10: buf.validate.conformance.cases.PredefinedFixed64RuleProto2 + (*PredefinedSFixed32RuleProto2)(nil), // 11: buf.validate.conformance.cases.PredefinedSFixed32RuleProto2 + (*PredefinedSFixed64RuleProto2)(nil), // 12: buf.validate.conformance.cases.PredefinedSFixed64RuleProto2 + (*PredefinedBoolRuleProto2)(nil), // 13: buf.validate.conformance.cases.PredefinedBoolRuleProto2 + (*PredefinedStringRuleProto2)(nil), // 14: buf.validate.conformance.cases.PredefinedStringRuleProto2 + (*PredefinedBytesRuleProto2)(nil), // 15: buf.validate.conformance.cases.PredefinedBytesRuleProto2 + (*PredefinedEnumRuleProto2)(nil), // 16: buf.validate.conformance.cases.PredefinedEnumRuleProto2 + (*PredefinedRepeatedRuleProto2)(nil), // 17: buf.validate.conformance.cases.PredefinedRepeatedRuleProto2 + (*PredefinedDurationRuleProto2)(nil), // 18: buf.validate.conformance.cases.PredefinedDurationRuleProto2 + (*PredefinedTimestampRuleProto2)(nil), // 19: buf.validate.conformance.cases.PredefinedTimestampRuleProto2 + (*PredefinedWrappedFloatRuleProto2)(nil), // 20: buf.validate.conformance.cases.PredefinedWrappedFloatRuleProto2 + (*PredefinedWrappedDoubleRuleProto2)(nil), // 21: buf.validate.conformance.cases.PredefinedWrappedDoubleRuleProto2 + (*PredefinedWrappedInt32RuleProto2)(nil), // 22: buf.validate.conformance.cases.PredefinedWrappedInt32RuleProto2 + (*PredefinedWrappedInt64RuleProto2)(nil), // 23: buf.validate.conformance.cases.PredefinedWrappedInt64RuleProto2 + (*PredefinedWrappedUInt32RuleProto2)(nil), // 24: buf.validate.conformance.cases.PredefinedWrappedUInt32RuleProto2 + (*PredefinedWrappedUInt64RuleProto2)(nil), // 25: buf.validate.conformance.cases.PredefinedWrappedUInt64RuleProto2 + (*PredefinedWrappedBoolRuleProto2)(nil), // 26: buf.validate.conformance.cases.PredefinedWrappedBoolRuleProto2 + (*PredefinedWrappedStringRuleProto2)(nil), // 27: buf.validate.conformance.cases.PredefinedWrappedStringRuleProto2 + (*PredefinedWrappedBytesRuleProto2)(nil), // 28: buf.validate.conformance.cases.PredefinedWrappedBytesRuleProto2 + (*PredefinedRepeatedWrappedFloatRuleProto2)(nil), // 29: buf.validate.conformance.cases.PredefinedRepeatedWrappedFloatRuleProto2 + (*PredefinedRepeatedWrappedDoubleRuleProto2)(nil), // 30: buf.validate.conformance.cases.PredefinedRepeatedWrappedDoubleRuleProto2 + (*PredefinedRepeatedWrappedInt32RuleProto2)(nil), // 31: buf.validate.conformance.cases.PredefinedRepeatedWrappedInt32RuleProto2 + (*PredefinedRepeatedWrappedInt64RuleProto2)(nil), // 32: buf.validate.conformance.cases.PredefinedRepeatedWrappedInt64RuleProto2 + (*PredefinedRepeatedWrappedUInt32RuleProto2)(nil), // 33: buf.validate.conformance.cases.PredefinedRepeatedWrappedUInt32RuleProto2 + (*PredefinedRepeatedWrappedUInt64RuleProto2)(nil), // 34: buf.validate.conformance.cases.PredefinedRepeatedWrappedUInt64RuleProto2 + (*PredefinedRepeatedWrappedBoolRuleProto2)(nil), // 35: buf.validate.conformance.cases.PredefinedRepeatedWrappedBoolRuleProto2 + (*PredefinedRepeatedWrappedStringRuleProto2)(nil), // 36: buf.validate.conformance.cases.PredefinedRepeatedWrappedStringRuleProto2 + (*PredefinedRepeatedWrappedBytesRuleProto2)(nil), // 37: buf.validate.conformance.cases.PredefinedRepeatedWrappedBytesRuleProto2 + (*PredefinedAndCustomRuleProto2)(nil), // 38: buf.validate.conformance.cases.PredefinedAndCustomRuleProto2 + (*StandardPredefinedAndCustomRuleProto2)(nil), // 39: buf.validate.conformance.cases.StandardPredefinedAndCustomRuleProto2 + (*PredefinedAndCustomRuleProto2_Nested)(nil), // 40: buf.validate.conformance.cases.PredefinedAndCustomRuleProto2.Nested + (*durationpb.Duration)(nil), // 41: google.protobuf.Duration + (*timestamppb.Timestamp)(nil), // 42: google.protobuf.Timestamp + (*wrapperspb.FloatValue)(nil), // 43: google.protobuf.FloatValue + (*wrapperspb.DoubleValue)(nil), // 44: google.protobuf.DoubleValue + (*wrapperspb.Int32Value)(nil), // 45: google.protobuf.Int32Value + (*wrapperspb.Int64Value)(nil), // 46: google.protobuf.Int64Value + (*wrapperspb.UInt32Value)(nil), // 47: google.protobuf.UInt32Value + (*wrapperspb.UInt64Value)(nil), // 48: google.protobuf.UInt64Value + (*wrapperspb.BoolValue)(nil), // 49: google.protobuf.BoolValue + (*wrapperspb.StringValue)(nil), // 50: google.protobuf.StringValue + (*wrapperspb.BytesValue)(nil), // 51: google.protobuf.BytesValue + (*validate.FloatRules)(nil), // 52: buf.validate.FloatRules + (*validate.DoubleRules)(nil), // 53: buf.validate.DoubleRules + (*validate.Int32Rules)(nil), // 54: buf.validate.Int32Rules + (*validate.Int64Rules)(nil), // 55: buf.validate.Int64Rules + (*validate.UInt32Rules)(nil), // 56: buf.validate.UInt32Rules + (*validate.UInt64Rules)(nil), // 57: buf.validate.UInt64Rules + (*validate.SInt32Rules)(nil), // 58: buf.validate.SInt32Rules + (*validate.SInt64Rules)(nil), // 59: buf.validate.SInt64Rules + (*validate.Fixed32Rules)(nil), // 60: buf.validate.Fixed32Rules + (*validate.Fixed64Rules)(nil), // 61: buf.validate.Fixed64Rules + (*validate.SFixed32Rules)(nil), // 62: buf.validate.SFixed32Rules + (*validate.SFixed64Rules)(nil), // 63: buf.validate.SFixed64Rules + (*validate.BoolRules)(nil), // 64: buf.validate.BoolRules + (*validate.StringRules)(nil), // 65: buf.validate.StringRules + (*validate.BytesRules)(nil), // 66: buf.validate.BytesRules + (*validate.EnumRules)(nil), // 67: buf.validate.EnumRules + (*validate.RepeatedRules)(nil), // 68: buf.validate.RepeatedRules + (*validate.DurationRules)(nil), // 69: buf.validate.DurationRules + (*validate.TimestampRules)(nil), // 70: buf.validate.TimestampRules } var file_buf_validate_conformance_cases_predefined_rules_proto2_proto_depIdxs = []int32{ 0, // 0: buf.validate.conformance.cases.PredefinedEnumRuleProto2.val:type_name -> buf.validate.conformance.cases.PredefinedEnumRuleProto2.EnumProto2 - 32, // 1: buf.validate.conformance.cases.PredefinedDurationRuleProto2.val:type_name -> google.protobuf.Duration - 33, // 2: buf.validate.conformance.cases.PredefinedTimestampRuleProto2.val:type_name -> google.protobuf.Timestamp - 34, // 3: buf.validate.conformance.cases.PredefinedWrappedFloatRuleProto2.val:type_name -> google.protobuf.FloatValue - 35, // 4: buf.validate.conformance.cases.PredefinedWrappedDoubleRuleProto2.val:type_name -> google.protobuf.DoubleValue - 36, // 5: buf.validate.conformance.cases.PredefinedWrappedInt32RuleProto2.val:type_name -> google.protobuf.Int32Value - 37, // 6: buf.validate.conformance.cases.PredefinedWrappedInt64RuleProto2.val:type_name -> google.protobuf.Int64Value - 38, // 7: buf.validate.conformance.cases.PredefinedWrappedUInt32RuleProto2.val:type_name -> google.protobuf.UInt32Value - 39, // 8: buf.validate.conformance.cases.PredefinedWrappedUInt64RuleProto2.val:type_name -> google.protobuf.UInt64Value - 40, // 9: buf.validate.conformance.cases.PredefinedWrappedBoolRuleProto2.val:type_name -> google.protobuf.BoolValue - 41, // 10: buf.validate.conformance.cases.PredefinedWrappedStringRuleProto2.val:type_name -> google.protobuf.StringValue - 42, // 11: buf.validate.conformance.cases.PredefinedWrappedBytesRuleProto2.val:type_name -> google.protobuf.BytesValue - 31, // 12: buf.validate.conformance.cases.PredefinedAndCustomRuleProto2.b:type_name -> buf.validate.conformance.cases.PredefinedAndCustomRuleProto2.Nested - 43, // 13: buf.validate.conformance.cases.float_abs_range_proto2:extendee -> buf.validate.FloatRules - 44, // 14: buf.validate.conformance.cases.double_abs_range_proto2:extendee -> buf.validate.DoubleRules - 45, // 15: buf.validate.conformance.cases.int32_abs_in_proto2:extendee -> buf.validate.Int32Rules - 46, // 16: buf.validate.conformance.cases.int64_abs_in_proto2:extendee -> buf.validate.Int64Rules - 47, // 17: buf.validate.conformance.cases.uint32_even_proto2:extendee -> buf.validate.UInt32Rules - 48, // 18: buf.validate.conformance.cases.uint64_even_proto2:extendee -> buf.validate.UInt64Rules - 49, // 19: buf.validate.conformance.cases.sint32_even_proto2:extendee -> buf.validate.SInt32Rules - 50, // 20: buf.validate.conformance.cases.sint64_even_proto2:extendee -> buf.validate.SInt64Rules - 51, // 21: buf.validate.conformance.cases.fixed32_even_proto2:extendee -> buf.validate.Fixed32Rules - 52, // 22: buf.validate.conformance.cases.fixed64_even_proto2:extendee -> buf.validate.Fixed64Rules - 53, // 23: buf.validate.conformance.cases.sfixed32_even_proto2:extendee -> buf.validate.SFixed32Rules - 54, // 24: buf.validate.conformance.cases.sfixed64_even_proto2:extendee -> buf.validate.SFixed64Rules - 55, // 25: buf.validate.conformance.cases.bool_false_proto2:extendee -> buf.validate.BoolRules - 56, // 26: buf.validate.conformance.cases.string_valid_path_proto2:extendee -> buf.validate.StringRules - 57, // 27: buf.validate.conformance.cases.bytes_valid_path_proto2:extendee -> buf.validate.BytesRules - 58, // 28: buf.validate.conformance.cases.enum_non_zero_proto2:extendee -> buf.validate.EnumRules - 59, // 29: buf.validate.conformance.cases.repeated_at_least_five_proto2:extendee -> buf.validate.RepeatedRules - 60, // 30: buf.validate.conformance.cases.duration_too_long_proto2:extendee -> buf.validate.DurationRules - 61, // 31: buf.validate.conformance.cases.timestamp_in_range_proto2:extendee -> buf.validate.TimestampRules - 37, // 32: buf.validate.conformance.cases.int64_abs_in_proto2:type_name -> google.protobuf.Int64Value - 33, // [33:33] is the sub-list for method output_type - 33, // [33:33] is the sub-list for method input_type - 32, // [32:33] is the sub-list for extension type_name - 13, // [13:32] is the sub-list for extension extendee - 0, // [0:13] is the sub-list for field type_name + 41, // 1: buf.validate.conformance.cases.PredefinedDurationRuleProto2.val:type_name -> google.protobuf.Duration + 42, // 2: buf.validate.conformance.cases.PredefinedTimestampRuleProto2.val:type_name -> google.protobuf.Timestamp + 43, // 3: buf.validate.conformance.cases.PredefinedWrappedFloatRuleProto2.val:type_name -> google.protobuf.FloatValue + 44, // 4: buf.validate.conformance.cases.PredefinedWrappedDoubleRuleProto2.val:type_name -> google.protobuf.DoubleValue + 45, // 5: buf.validate.conformance.cases.PredefinedWrappedInt32RuleProto2.val:type_name -> google.protobuf.Int32Value + 46, // 6: buf.validate.conformance.cases.PredefinedWrappedInt64RuleProto2.val:type_name -> google.protobuf.Int64Value + 47, // 7: buf.validate.conformance.cases.PredefinedWrappedUInt32RuleProto2.val:type_name -> google.protobuf.UInt32Value + 48, // 8: buf.validate.conformance.cases.PredefinedWrappedUInt64RuleProto2.val:type_name -> google.protobuf.UInt64Value + 49, // 9: buf.validate.conformance.cases.PredefinedWrappedBoolRuleProto2.val:type_name -> google.protobuf.BoolValue + 50, // 10: buf.validate.conformance.cases.PredefinedWrappedStringRuleProto2.val:type_name -> google.protobuf.StringValue + 51, // 11: buf.validate.conformance.cases.PredefinedWrappedBytesRuleProto2.val:type_name -> google.protobuf.BytesValue + 43, // 12: buf.validate.conformance.cases.PredefinedRepeatedWrappedFloatRuleProto2.val:type_name -> google.protobuf.FloatValue + 44, // 13: buf.validate.conformance.cases.PredefinedRepeatedWrappedDoubleRuleProto2.val:type_name -> google.protobuf.DoubleValue + 45, // 14: buf.validate.conformance.cases.PredefinedRepeatedWrappedInt32RuleProto2.val:type_name -> google.protobuf.Int32Value + 46, // 15: buf.validate.conformance.cases.PredefinedRepeatedWrappedInt64RuleProto2.val:type_name -> google.protobuf.Int64Value + 47, // 16: buf.validate.conformance.cases.PredefinedRepeatedWrappedUInt32RuleProto2.val:type_name -> google.protobuf.UInt32Value + 48, // 17: buf.validate.conformance.cases.PredefinedRepeatedWrappedUInt64RuleProto2.val:type_name -> google.protobuf.UInt64Value + 49, // 18: buf.validate.conformance.cases.PredefinedRepeatedWrappedBoolRuleProto2.val:type_name -> google.protobuf.BoolValue + 50, // 19: buf.validate.conformance.cases.PredefinedRepeatedWrappedStringRuleProto2.val:type_name -> google.protobuf.StringValue + 51, // 20: buf.validate.conformance.cases.PredefinedRepeatedWrappedBytesRuleProto2.val:type_name -> google.protobuf.BytesValue + 40, // 21: buf.validate.conformance.cases.PredefinedAndCustomRuleProto2.b:type_name -> buf.validate.conformance.cases.PredefinedAndCustomRuleProto2.Nested + 52, // 22: buf.validate.conformance.cases.float_abs_range_proto2:extendee -> buf.validate.FloatRules + 53, // 23: buf.validate.conformance.cases.double_abs_range_proto2:extendee -> buf.validate.DoubleRules + 54, // 24: buf.validate.conformance.cases.int32_abs_in_proto2:extendee -> buf.validate.Int32Rules + 55, // 25: buf.validate.conformance.cases.int64_abs_in_proto2:extendee -> buf.validate.Int64Rules + 56, // 26: buf.validate.conformance.cases.uint32_even_proto2:extendee -> buf.validate.UInt32Rules + 57, // 27: buf.validate.conformance.cases.uint64_even_proto2:extendee -> buf.validate.UInt64Rules + 58, // 28: buf.validate.conformance.cases.sint32_even_proto2:extendee -> buf.validate.SInt32Rules + 59, // 29: buf.validate.conformance.cases.sint64_even_proto2:extendee -> buf.validate.SInt64Rules + 60, // 30: buf.validate.conformance.cases.fixed32_even_proto2:extendee -> buf.validate.Fixed32Rules + 61, // 31: buf.validate.conformance.cases.fixed64_even_proto2:extendee -> buf.validate.Fixed64Rules + 62, // 32: buf.validate.conformance.cases.sfixed32_even_proto2:extendee -> buf.validate.SFixed32Rules + 63, // 33: buf.validate.conformance.cases.sfixed64_even_proto2:extendee -> buf.validate.SFixed64Rules + 64, // 34: buf.validate.conformance.cases.bool_false_proto2:extendee -> buf.validate.BoolRules + 65, // 35: buf.validate.conformance.cases.string_valid_path_proto2:extendee -> buf.validate.StringRules + 66, // 36: buf.validate.conformance.cases.bytes_valid_path_proto2:extendee -> buf.validate.BytesRules + 67, // 37: buf.validate.conformance.cases.enum_non_zero_proto2:extendee -> buf.validate.EnumRules + 68, // 38: buf.validate.conformance.cases.repeated_at_least_five_proto2:extendee -> buf.validate.RepeatedRules + 69, // 39: buf.validate.conformance.cases.duration_too_long_proto2:extendee -> buf.validate.DurationRules + 70, // 40: buf.validate.conformance.cases.timestamp_in_range_proto2:extendee -> buf.validate.TimestampRules + 46, // 41: buf.validate.conformance.cases.int64_abs_in_proto2:type_name -> google.protobuf.Int64Value + 42, // [42:42] is the sub-list for method output_type + 42, // [42:42] is the sub-list for method input_type + 41, // [41:42] is the sub-list for extension type_name + 22, // [22:41] is the sub-list for extension extendee + 0, // [0:22] is the sub-list for field type_name } func init() { file_buf_validate_conformance_cases_predefined_rules_proto2_proto_init() } @@ -2713,7 +3216,7 @@ func file_buf_validate_conformance_cases_predefined_rules_proto2_proto_init() { } } file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[28].Exporter = func(v any, i int) any { - switch v := v.(*PredefinedAndCustomRuleProto2); i { + switch v := v.(*PredefinedRepeatedWrappedFloatRuleProto2); i { case 0: return &v.state case 1: @@ -2725,7 +3228,7 @@ func file_buf_validate_conformance_cases_predefined_rules_proto2_proto_init() { } } file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[29].Exporter = func(v any, i int) any { - switch v := v.(*StandardPredefinedAndCustomRuleProto2); i { + switch v := v.(*PredefinedRepeatedWrappedDoubleRuleProto2); i { case 0: return &v.state case 1: @@ -2737,6 +3240,114 @@ func file_buf_validate_conformance_cases_predefined_rules_proto2_proto_init() { } } file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[30].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedRepeatedWrappedInt32RuleProto2); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[31].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedRepeatedWrappedInt64RuleProto2); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[32].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedRepeatedWrappedUInt32RuleProto2); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[33].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedRepeatedWrappedUInt64RuleProto2); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[34].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedRepeatedWrappedBoolRuleProto2); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[35].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedRepeatedWrappedStringRuleProto2); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[36].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedRepeatedWrappedBytesRuleProto2); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[37].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedAndCustomRuleProto2); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[38].Exporter = func(v any, i int) any { + switch v := v.(*StandardPredefinedAndCustomRuleProto2); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[39].Exporter = func(v any, i int) any { switch v := v.(*PredefinedAndCustomRuleProto2_Nested); i { case 0: return &v.state @@ -2755,7 +3366,7 @@ func file_buf_validate_conformance_cases_predefined_rules_proto2_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDesc, NumEnums: 1, - NumMessages: 31, + NumMessages: 40, NumExtensions: 19, NumServices: 0, }, diff --git a/tools/internal/gen/buf/validate/conformance/cases/predefined_rules_proto3.pb.go b/tools/internal/gen/buf/validate/conformance/cases/predefined_rules_proto3.pb.go index aeaaf91..bec28c5 100644 --- a/tools/internal/gen/buf/validate/conformance/cases/predefined_rules_proto3.pb.go +++ b/tools/internal/gen/buf/validate/conformance/cases/predefined_rules_proto3.pb.go @@ -1447,6 +1447,429 @@ func (x *PredefinedWrappedBytesRuleProto3) GetVal() *wrapperspb.BytesValue { return nil } +type PredefinedRepeatedWrappedFloatRuleProto3 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.FloatValue `protobuf:"bytes,1,rep,name=val,proto3" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedFloatRuleProto3) Reset() { + *x = PredefinedRepeatedWrappedFloatRuleProto3{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[29] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedFloatRuleProto3) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedFloatRuleProto3) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedFloatRuleProto3) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[29] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedFloatRuleProto3.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedFloatRuleProto3) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{29} +} + +func (x *PredefinedRepeatedWrappedFloatRuleProto3) GetVal() []*wrapperspb.FloatValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedDoubleRuleProto3 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.DoubleValue `protobuf:"bytes,1,rep,name=val,proto3" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedDoubleRuleProto3) Reset() { + *x = PredefinedRepeatedWrappedDoubleRuleProto3{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[30] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedDoubleRuleProto3) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedDoubleRuleProto3) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedDoubleRuleProto3) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[30] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedDoubleRuleProto3.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedDoubleRuleProto3) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{30} +} + +func (x *PredefinedRepeatedWrappedDoubleRuleProto3) GetVal() []*wrapperspb.DoubleValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedInt32RuleProto3 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.Int32Value `protobuf:"bytes,1,rep,name=val,proto3" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedInt32RuleProto3) Reset() { + *x = PredefinedRepeatedWrappedInt32RuleProto3{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[31] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedInt32RuleProto3) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedInt32RuleProto3) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedInt32RuleProto3) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[31] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedInt32RuleProto3.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedInt32RuleProto3) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{31} +} + +func (x *PredefinedRepeatedWrappedInt32RuleProto3) GetVal() []*wrapperspb.Int32Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedInt64RuleProto3 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.Int64Value `protobuf:"bytes,1,rep,name=val,proto3" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedInt64RuleProto3) Reset() { + *x = PredefinedRepeatedWrappedInt64RuleProto3{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedInt64RuleProto3) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedInt64RuleProto3) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedInt64RuleProto3) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[32] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedInt64RuleProto3.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedInt64RuleProto3) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{32} +} + +func (x *PredefinedRepeatedWrappedInt64RuleProto3) GetVal() []*wrapperspb.Int64Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedUInt32RuleProto3 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.UInt32Value `protobuf:"bytes,1,rep,name=val,proto3" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedUInt32RuleProto3) Reset() { + *x = PredefinedRepeatedWrappedUInt32RuleProto3{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[33] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedUInt32RuleProto3) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedUInt32RuleProto3) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedUInt32RuleProto3) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[33] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedUInt32RuleProto3.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedUInt32RuleProto3) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{33} +} + +func (x *PredefinedRepeatedWrappedUInt32RuleProto3) GetVal() []*wrapperspb.UInt32Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedUInt64RuleProto3 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.UInt64Value `protobuf:"bytes,1,rep,name=val,proto3" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedUInt64RuleProto3) Reset() { + *x = PredefinedRepeatedWrappedUInt64RuleProto3{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[34] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedUInt64RuleProto3) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedUInt64RuleProto3) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedUInt64RuleProto3) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[34] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedUInt64RuleProto3.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedUInt64RuleProto3) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{34} +} + +func (x *PredefinedRepeatedWrappedUInt64RuleProto3) GetVal() []*wrapperspb.UInt64Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedBoolRuleProto3 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.BoolValue `protobuf:"bytes,1,rep,name=val,proto3" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedBoolRuleProto3) Reset() { + *x = PredefinedRepeatedWrappedBoolRuleProto3{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[35] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedBoolRuleProto3) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedBoolRuleProto3) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedBoolRuleProto3) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[35] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedBoolRuleProto3.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedBoolRuleProto3) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{35} +} + +func (x *PredefinedRepeatedWrappedBoolRuleProto3) GetVal() []*wrapperspb.BoolValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedStringRuleProto3 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.StringValue `protobuf:"bytes,1,rep,name=val,proto3" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedStringRuleProto3) Reset() { + *x = PredefinedRepeatedWrappedStringRuleProto3{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[36] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedStringRuleProto3) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedStringRuleProto3) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedStringRuleProto3) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[36] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedStringRuleProto3.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedStringRuleProto3) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{36} +} + +func (x *PredefinedRepeatedWrappedStringRuleProto3) GetVal() []*wrapperspb.StringValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedBytesRuleProto3 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.BytesValue `protobuf:"bytes,1,rep,name=val,proto3" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedBytesRuleProto3) Reset() { + *x = PredefinedRepeatedWrappedBytesRuleProto3{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[37] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedBytesRuleProto3) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedBytesRuleProto3) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedBytesRuleProto3) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[37] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedBytesRuleProto3.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedBytesRuleProto3) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{37} +} + +func (x *PredefinedRepeatedWrappedBytesRuleProto3) GetVal() []*wrapperspb.BytesValue { + if x != nil { + return x.Val + } + return nil +} + type PredefinedAndCustomRuleProto3 struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1459,7 +1882,7 @@ type PredefinedAndCustomRuleProto3 struct { func (x *PredefinedAndCustomRuleProto3) Reset() { *x = PredefinedAndCustomRuleProto3{} if protoimpl.UnsafeEnabled { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[29] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1472,7 +1895,7 @@ func (x *PredefinedAndCustomRuleProto3) String() string { func (*PredefinedAndCustomRuleProto3) ProtoMessage() {} func (x *PredefinedAndCustomRuleProto3) ProtoReflect() protoreflect.Message { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[29] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1485,7 +1908,7 @@ func (x *PredefinedAndCustomRuleProto3) ProtoReflect() protoreflect.Message { // Deprecated: Use PredefinedAndCustomRuleProto3.ProtoReflect.Descriptor instead. func (*PredefinedAndCustomRuleProto3) Descriptor() ([]byte, []int) { - return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{29} + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{38} } func (x *PredefinedAndCustomRuleProto3) GetA() int32 { @@ -1513,7 +1936,7 @@ type StandardPredefinedAndCustomRuleProto3 struct { func (x *StandardPredefinedAndCustomRuleProto3) Reset() { *x = StandardPredefinedAndCustomRuleProto3{} if protoimpl.UnsafeEnabled { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[30] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1526,7 +1949,7 @@ func (x *StandardPredefinedAndCustomRuleProto3) String() string { func (*StandardPredefinedAndCustomRuleProto3) ProtoMessage() {} func (x *StandardPredefinedAndCustomRuleProto3) ProtoReflect() protoreflect.Message { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[30] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1539,7 +1962,7 @@ func (x *StandardPredefinedAndCustomRuleProto3) ProtoReflect() protoreflect.Mess // Deprecated: Use StandardPredefinedAndCustomRuleProto3.ProtoReflect.Descriptor instead. func (*StandardPredefinedAndCustomRuleProto3) Descriptor() ([]byte, []int) { - return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{30} + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{39} } func (x *StandardPredefinedAndCustomRuleProto3) GetA() int32 { @@ -1563,7 +1986,7 @@ type PredefinedRulesProto3UnusedImportBugWorkaround struct { func (x *PredefinedRulesProto3UnusedImportBugWorkaround) Reset() { *x = PredefinedRulesProto3UnusedImportBugWorkaround{} if protoimpl.UnsafeEnabled { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[31] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1576,7 +1999,7 @@ func (x *PredefinedRulesProto3UnusedImportBugWorkaround) String() string { func (*PredefinedRulesProto3UnusedImportBugWorkaround) ProtoMessage() {} func (x *PredefinedRulesProto3UnusedImportBugWorkaround) ProtoReflect() protoreflect.Message { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[31] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1589,7 +2012,7 @@ func (x *PredefinedRulesProto3UnusedImportBugWorkaround) ProtoReflect() protoref // Deprecated: Use PredefinedRulesProto3UnusedImportBugWorkaround.ProtoReflect.Descriptor instead. func (*PredefinedRulesProto3UnusedImportBugWorkaround) Descriptor() ([]byte, []int) { - return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{31} + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{40} } func (x *PredefinedRulesProto3UnusedImportBugWorkaround) GetDummy_1() *StandardPredefinedAndCustomRuleProto2 { @@ -1617,7 +2040,7 @@ type PredefinedAndCustomRuleProto3_Nested struct { func (x *PredefinedAndCustomRuleProto3_Nested) Reset() { *x = PredefinedAndCustomRuleProto3_Nested{} if protoimpl.UnsafeEnabled { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[33] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1630,7 +2053,7 @@ func (x *PredefinedAndCustomRuleProto3_Nested) String() string { func (*PredefinedAndCustomRuleProto3_Nested) ProtoMessage() {} func (x *PredefinedAndCustomRuleProto3_Nested) ProtoReflect() protoreflect.Message { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[33] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1643,7 +2066,7 @@ func (x *PredefinedAndCustomRuleProto3_Nested) ProtoReflect() protoreflect.Messa // Deprecated: Use PredefinedAndCustomRuleProto3_Nested.ProtoReflect.Descriptor instead. func (*PredefinedAndCustomRuleProto3_Nested) Descriptor() ([]byte, []int) { - return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{29, 0} + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{38, 0} } func (x *PredefinedAndCustomRuleProto3_Nested) GetC() int32 { @@ -1827,81 +2250,143 @@ var file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDesc = 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x79, 0x74, 0x65, 0x73, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x08, 0xba, 0x48, 0x05, 0x7a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, - 0x76, 0x61, 0x6c, 0x22, 0xc9, 0x03, 0x0a, 0x1d, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, - 0x65, 0x64, 0x41, 0x6e, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x50, - 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x71, 0x0a, 0x01, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, - 0x42, 0x63, 0xba, 0x48, 0x60, 0xba, 0x01, 0x58, 0x0a, 0x28, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, - 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, - 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x5f, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x33, 0x1a, 0x2c, 0x74, 0x68, 0x69, 0x73, 0x20, 0x3e, 0x20, 0x32, 0x34, 0x20, 0x3f, 0x20, - 0x27, 0x27, 0x20, 0x3a, 0x20, 0x27, 0x61, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, - 0x67, 0x72, 0x65, 0x61, 0x74, 0x65, 0x72, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x32, 0x34, 0x27, - 0x3a, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x01, 0x61, 0x12, 0xb9, 0x01, 0x0a, 0x01, 0x62, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x44, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, - 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, - 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, + 0x76, 0x61, 0x6c, 0x22, 0x6b, 0x0a, 0x28, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, + 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x64, + 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, + 0x3f, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, + 0x6c, 0x6f, 0x61, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x10, 0xba, 0x48, 0x0d, 0x92, 0x01, + 0x0a, 0x22, 0x08, 0x0a, 0x06, 0xcd, 0x48, 0x00, 0x00, 0x80, 0x3f, 0x52, 0x03, 0x76, 0x61, 0x6c, + 0x22, 0x71, 0x0a, 0x29, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, 0x65, + 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x64, 0x44, 0x6f, 0x75, + 0x62, 0x6c, 0x65, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x44, 0x0a, + 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, + 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x14, 0xba, 0x48, 0x11, 0x92, 0x01, 0x0e, + 0x22, 0x0c, 0x12, 0x0a, 0xc9, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x3f, 0x52, 0x03, + 0x76, 0x61, 0x6c, 0x22, 0x71, 0x0a, 0x28, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, + 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x64, + 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, + 0x45, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, + 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x16, 0xba, 0x48, 0x13, 0x92, 0x01, + 0x10, 0x22, 0x0e, 0x1a, 0x0c, 0xc8, 0x48, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x73, 0x0a, 0x28, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, + 0x69, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x57, 0x72, 0x61, 0x70, + 0x70, 0x65, 0x64, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, + 0x6f, 0x33, 0x12, 0x47, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x18, 0xba, 0x48, + 0x15, 0x92, 0x01, 0x12, 0x22, 0x10, 0x22, 0x0e, 0xca, 0x48, 0x0b, 0x08, 0xfe, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x6a, 0x0a, 0x29, 0x50, + 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x64, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, + 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x3d, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x42, 0x0d, 0xba, 0x48, 0x0a, 0x92, 0x01, 0x07, 0x22, 0x05, 0x2a, 0x03, 0xc8, + 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x6a, 0x0a, 0x29, 0x50, 0x72, 0x65, 0x64, 0x65, + 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x57, 0x72, 0x61, + 0x70, 0x70, 0x65, 0x64, 0x55, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x3d, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, + 0x0d, 0xba, 0x48, 0x0a, 0x92, 0x01, 0x07, 0x22, 0x05, 0x32, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, + 0x76, 0x61, 0x6c, 0x22, 0x66, 0x0a, 0x27, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, + 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x64, + 0x42, 0x6f, 0x6f, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x3b, + 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, + 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0d, 0xba, 0x48, 0x0a, 0x92, 0x01, 0x07, 0x22, + 0x05, 0x6a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x6a, 0x0a, 0x29, 0x50, + 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x64, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x75, + 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x3d, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x42, 0x0d, 0xba, 0x48, 0x0a, 0x92, 0x01, 0x07, 0x22, 0x05, 0x72, 0x03, 0xc8, + 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x68, 0x0a, 0x28, 0x50, 0x72, 0x65, 0x64, 0x65, + 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x57, 0x72, 0x61, + 0x70, 0x70, 0x65, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x33, 0x12, 0x3c, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x42, 0x79, 0x74, 0x65, 0x73, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0d, 0xba, + 0x48, 0x0a, 0x92, 0x01, 0x07, 0x22, 0x05, 0x7a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, + 0x6c, 0x22, 0xc9, 0x03, 0x0a, 0x1d, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x41, 0x6e, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, - 0x74, 0x6f, 0x33, 0x2e, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x42, 0x60, 0xba, 0x48, 0x5d, 0xba, - 0x01, 0x5a, 0x0a, 0x2a, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, - 0x6e, 0x64, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x65, - 0x6d, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x1b, - 0x62, 0x2e, 0x63, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x61, 0x20, 0x6d, 0x75, - 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x33, 0x1a, 0x0f, 0x74, 0x68, 0x69, - 0x73, 0x2e, 0x63, 0x20, 0x25, 0x20, 0x33, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x48, 0x00, 0x52, 0x01, - 0x62, 0x88, 0x01, 0x01, 0x1a, 0x73, 0x0a, 0x06, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x12, 0x69, - 0x0a, 0x01, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x42, 0x5b, 0xba, 0x48, 0x58, 0xba, 0x01, - 0x50, 0x0a, 0x28, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x6e, - 0x64, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x6e, 0x65, - 0x73, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x1a, 0x24, 0x74, 0x68, 0x69, - 0x73, 0x20, 0x3e, 0x20, 0x30, 0x20, 0x3f, 0x20, 0x27, 0x27, 0x20, 0x3a, 0x20, 0x27, 0x63, 0x20, - 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, - 0x27, 0x3a, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x01, 0x63, 0x42, 0x04, 0x0a, 0x02, 0x5f, 0x62, 0x22, - 0xa5, 0x01, 0x0a, 0x25, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x50, 0x72, 0x65, 0x64, - 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x41, 0x6e, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, - 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x7c, 0x0a, 0x01, 0x61, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x11, 0x42, 0x6e, 0xba, 0x48, 0x6b, 0xba, 0x01, 0x61, 0x0a, 0x31, 0x73, 0x74, - 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, - 0x64, 0x5f, 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x75, 0x6c, - 0x65, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x1a, - 0x2c, 0x74, 0x68, 0x69, 0x73, 0x20, 0x3e, 0x20, 0x32, 0x34, 0x20, 0x3f, 0x20, 0x27, 0x27, 0x20, - 0x3a, 0x20, 0x27, 0x61, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x67, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x72, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x32, 0x34, 0x27, 0x3a, 0x05, 0xc8, - 0x48, 0x01, 0x10, 0x38, 0x52, 0x01, 0x61, 0x22, 0xf5, 0x01, 0x0a, 0x2e, 0x50, 0x72, 0x65, 0x64, - 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, - 0x33, 0x55, 0x6e, 0x75, 0x73, 0x65, 0x64, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x42, 0x75, 0x67, - 0x57, 0x6f, 0x72, 0x6b, 0x61, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x5e, 0x0a, 0x07, 0x64, 0x75, - 0x6d, 0x6d, 0x79, 0x5f, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x45, 0x2e, 0x62, 0x75, - 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, - 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x53, 0x74, 0x61, - 0x6e, 0x64, 0x61, 0x72, 0x64, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x41, - 0x6e, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, - 0x6f, 0x32, 0x52, 0x06, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x31, 0x12, 0x63, 0x0a, 0x07, 0x64, 0x75, - 0x6d, 0x6d, 0x79, 0x5f, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4a, 0x2e, 0x62, 0x75, - 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, - 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x53, 0x74, 0x61, - 0x6e, 0x64, 0x61, 0x72, 0x64, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x41, - 0x6e, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x52, 0x06, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x32, 0x42, - 0xb1, 0x02, 0x0a, 0x22, 0x63, 0x6f, 0x6d, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, - 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, - 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x42, 0x1a, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, - 0x65, 0x64, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x50, 0x72, 0x6f, - 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x53, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, - 0x2f, 0x62, 0x75, 0x66, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x76, - 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x2f, 0x69, 0x6e, - 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x62, 0x75, 0x66, 0x2f, 0x76, - 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, - 0x6e, 0x63, 0x65, 0x2f, 0x63, 0x61, 0x73, 0x65, 0x73, 0xa2, 0x02, 0x04, 0x42, 0x56, 0x43, 0x43, - 0xaa, 0x02, 0x1e, 0x42, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, - 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x43, 0x61, 0x73, 0x65, - 0x73, 0xca, 0x02, 0x1e, 0x42, 0x75, 0x66, 0x5c, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, - 0x5c, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x5c, 0x43, 0x61, 0x73, - 0x65, 0x73, 0xe2, 0x02, 0x2a, 0x42, 0x75, 0x66, 0x5c, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, - 0x65, 0x5c, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x5c, 0x43, 0x61, - 0x73, 0x65, 0x73, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, - 0x02, 0x21, 0x42, 0x75, 0x66, 0x3a, 0x3a, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x3a, - 0x3a, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x3a, 0x3a, 0x43, 0x61, - 0x73, 0x65, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x74, 0x6f, 0x33, 0x12, 0x71, 0x0a, 0x01, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x42, 0x63, + 0xba, 0x48, 0x60, 0xba, 0x01, 0x58, 0x0a, 0x28, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, + 0x65, 0x64, 0x5f, 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x75, + 0x6c, 0x65, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x1a, 0x2c, 0x74, 0x68, 0x69, 0x73, 0x20, 0x3e, 0x20, 0x32, 0x34, 0x20, 0x3f, 0x20, 0x27, 0x27, + 0x20, 0x3a, 0x20, 0x27, 0x61, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x67, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x72, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x32, 0x34, 0x27, 0x3a, 0x03, + 0xd0, 0x48, 0x01, 0x52, 0x01, 0x61, 0x12, 0xb9, 0x01, 0x0a, 0x01, 0x62, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x44, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, + 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x41, 0x6e, + 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x33, 0x2e, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x42, 0x60, 0xba, 0x48, 0x5d, 0xba, 0x01, 0x5a, + 0x0a, 0x2a, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x6e, 0x64, + 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x65, 0x6d, 0x62, + 0x65, 0x64, 0x64, 0x65, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x1b, 0x62, 0x2e, + 0x63, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x61, 0x20, 0x6d, 0x75, 0x6c, 0x74, + 0x69, 0x70, 0x6c, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x33, 0x1a, 0x0f, 0x74, 0x68, 0x69, 0x73, 0x2e, + 0x63, 0x20, 0x25, 0x20, 0x33, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x48, 0x00, 0x52, 0x01, 0x62, 0x88, + 0x01, 0x01, 0x1a, 0x73, 0x0a, 0x06, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x12, 0x69, 0x0a, 0x01, + 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x42, 0x5b, 0xba, 0x48, 0x58, 0xba, 0x01, 0x50, 0x0a, + 0x28, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x6e, 0x64, 0x5f, + 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x6e, 0x65, 0x73, 0x74, + 0x65, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x1a, 0x24, 0x74, 0x68, 0x69, 0x73, 0x20, + 0x3e, 0x20, 0x30, 0x20, 0x3f, 0x20, 0x27, 0x27, 0x20, 0x3a, 0x20, 0x27, 0x63, 0x20, 0x6d, 0x75, + 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x27, 0x3a, + 0x03, 0xd0, 0x48, 0x01, 0x52, 0x01, 0x63, 0x42, 0x04, 0x0a, 0x02, 0x5f, 0x62, 0x22, 0xa5, 0x01, + 0x0a, 0x25, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, + 0x69, 0x6e, 0x65, 0x64, 0x41, 0x6e, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x75, 0x6c, + 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x7c, 0x0a, 0x01, 0x61, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x11, 0x42, 0x6e, 0xba, 0x48, 0x6b, 0xba, 0x01, 0x61, 0x0a, 0x31, 0x73, 0x74, 0x61, 0x6e, + 0x64, 0x61, 0x72, 0x64, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, + 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, + 0x73, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x1a, 0x2c, 0x74, + 0x68, 0x69, 0x73, 0x20, 0x3e, 0x20, 0x32, 0x34, 0x20, 0x3f, 0x20, 0x27, 0x27, 0x20, 0x3a, 0x20, + 0x27, 0x61, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x67, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x72, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x32, 0x34, 0x27, 0x3a, 0x05, 0xc8, 0x48, 0x01, + 0x10, 0x38, 0x52, 0x01, 0x61, 0x22, 0xf5, 0x01, 0x0a, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, + 0x69, 0x6e, 0x65, 0x64, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x55, + 0x6e, 0x75, 0x73, 0x65, 0x64, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x42, 0x75, 0x67, 0x57, 0x6f, + 0x72, 0x6b, 0x61, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x5e, 0x0a, 0x07, 0x64, 0x75, 0x6d, 0x6d, + 0x79, 0x5f, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x45, 0x2e, 0x62, 0x75, 0x66, 0x2e, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x53, 0x74, 0x61, 0x6e, 0x64, + 0x61, 0x72, 0x64, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x41, 0x6e, 0x64, + 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, + 0x52, 0x06, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x31, 0x12, 0x63, 0x0a, 0x07, 0x64, 0x75, 0x6d, 0x6d, + 0x79, 0x5f, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4a, 0x2e, 0x62, 0x75, 0x66, 0x2e, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x53, 0x74, 0x61, 0x6e, 0x64, + 0x61, 0x72, 0x64, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x41, 0x6e, 0x64, + 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x32, 0x30, 0x32, 0x33, 0x52, 0x06, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x32, 0x42, 0xb1, 0x02, + 0x0a, 0x22, 0x63, 0x6f, 0x6d, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, + 0x61, 0x73, 0x65, 0x73, 0x42, 0x1a, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, + 0x52, 0x75, 0x6c, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x50, 0x01, 0x5a, 0x53, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x62, + 0x75, 0x66, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x2f, 0x69, 0x6e, 0x74, 0x65, + 0x72, 0x6e, 0x61, 0x6c, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x62, 0x75, 0x66, 0x2f, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, + 0x65, 0x2f, 0x63, 0x61, 0x73, 0x65, 0x73, 0xa2, 0x02, 0x04, 0x42, 0x56, 0x43, 0x43, 0xaa, 0x02, + 0x1e, 0x42, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x43, 0x6f, + 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x43, 0x61, 0x73, 0x65, 0x73, 0xca, + 0x02, 0x1e, 0x42, 0x75, 0x66, 0x5c, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5c, 0x43, + 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x5c, 0x43, 0x61, 0x73, 0x65, 0x73, + 0xe2, 0x02, 0x2a, 0x42, 0x75, 0x66, 0x5c, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5c, + 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x5c, 0x43, 0x61, 0x73, 0x65, + 0x73, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x21, + 0x42, 0x75, 0x66, 0x3a, 0x3a, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x3a, 0x3a, 0x43, + 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x3a, 0x3a, 0x43, 0x61, 0x73, 0x65, + 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -1917,7 +2402,7 @@ func file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZ } var file_buf_validate_conformance_cases_predefined_rules_proto3_proto_enumTypes = make([]protoimpl.EnumInfo, 1) -var file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes = make([]protoimpl.MessageInfo, 34) +var file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes = make([]protoimpl.MessageInfo, 43) var file_buf_validate_conformance_cases_predefined_rules_proto3_proto_goTypes = []any{ (PredefinedEnumRuleProto3_EnumProto3)(0), // 0: buf.validate.conformance.cases.PredefinedEnumRuleProto3.EnumProto3 (*PredefinedFloatRuleProto3)(nil), // 1: buf.validate.conformance.cases.PredefinedFloatRuleProto3 @@ -1949,47 +2434,65 @@ var file_buf_validate_conformance_cases_predefined_rules_proto3_proto_goTypes = (*PredefinedWrappedBoolRuleProto3)(nil), // 27: buf.validate.conformance.cases.PredefinedWrappedBoolRuleProto3 (*PredefinedWrappedStringRuleProto3)(nil), // 28: buf.validate.conformance.cases.PredefinedWrappedStringRuleProto3 (*PredefinedWrappedBytesRuleProto3)(nil), // 29: buf.validate.conformance.cases.PredefinedWrappedBytesRuleProto3 - (*PredefinedAndCustomRuleProto3)(nil), // 30: buf.validate.conformance.cases.PredefinedAndCustomRuleProto3 - (*StandardPredefinedAndCustomRuleProto3)(nil), // 31: buf.validate.conformance.cases.StandardPredefinedAndCustomRuleProto3 - (*PredefinedRulesProto3UnusedImportBugWorkaround)(nil), // 32: buf.validate.conformance.cases.PredefinedRulesProto3UnusedImportBugWorkaround - nil, // 33: buf.validate.conformance.cases.PredefinedMapRuleProto3.ValEntry - (*PredefinedAndCustomRuleProto3_Nested)(nil), // 34: buf.validate.conformance.cases.PredefinedAndCustomRuleProto3.Nested - (*durationpb.Duration)(nil), // 35: google.protobuf.Duration - (*timestamppb.Timestamp)(nil), // 36: google.protobuf.Timestamp - (*wrapperspb.FloatValue)(nil), // 37: google.protobuf.FloatValue - (*wrapperspb.DoubleValue)(nil), // 38: google.protobuf.DoubleValue - (*wrapperspb.Int32Value)(nil), // 39: google.protobuf.Int32Value - (*wrapperspb.Int64Value)(nil), // 40: google.protobuf.Int64Value - (*wrapperspb.UInt32Value)(nil), // 41: google.protobuf.UInt32Value - (*wrapperspb.UInt64Value)(nil), // 42: google.protobuf.UInt64Value - (*wrapperspb.BoolValue)(nil), // 43: google.protobuf.BoolValue - (*wrapperspb.StringValue)(nil), // 44: google.protobuf.StringValue - (*wrapperspb.BytesValue)(nil), // 45: google.protobuf.BytesValue - (*StandardPredefinedAndCustomRuleProto2)(nil), // 46: buf.validate.conformance.cases.StandardPredefinedAndCustomRuleProto2 - (*StandardPredefinedAndCustomRuleEdition2023)(nil), // 47: buf.validate.conformance.cases.StandardPredefinedAndCustomRuleEdition2023 + (*PredefinedRepeatedWrappedFloatRuleProto3)(nil), // 30: buf.validate.conformance.cases.PredefinedRepeatedWrappedFloatRuleProto3 + (*PredefinedRepeatedWrappedDoubleRuleProto3)(nil), // 31: buf.validate.conformance.cases.PredefinedRepeatedWrappedDoubleRuleProto3 + (*PredefinedRepeatedWrappedInt32RuleProto3)(nil), // 32: buf.validate.conformance.cases.PredefinedRepeatedWrappedInt32RuleProto3 + (*PredefinedRepeatedWrappedInt64RuleProto3)(nil), // 33: buf.validate.conformance.cases.PredefinedRepeatedWrappedInt64RuleProto3 + (*PredefinedRepeatedWrappedUInt32RuleProto3)(nil), // 34: buf.validate.conformance.cases.PredefinedRepeatedWrappedUInt32RuleProto3 + (*PredefinedRepeatedWrappedUInt64RuleProto3)(nil), // 35: buf.validate.conformance.cases.PredefinedRepeatedWrappedUInt64RuleProto3 + (*PredefinedRepeatedWrappedBoolRuleProto3)(nil), // 36: buf.validate.conformance.cases.PredefinedRepeatedWrappedBoolRuleProto3 + (*PredefinedRepeatedWrappedStringRuleProto3)(nil), // 37: buf.validate.conformance.cases.PredefinedRepeatedWrappedStringRuleProto3 + (*PredefinedRepeatedWrappedBytesRuleProto3)(nil), // 38: buf.validate.conformance.cases.PredefinedRepeatedWrappedBytesRuleProto3 + (*PredefinedAndCustomRuleProto3)(nil), // 39: buf.validate.conformance.cases.PredefinedAndCustomRuleProto3 + (*StandardPredefinedAndCustomRuleProto3)(nil), // 40: buf.validate.conformance.cases.StandardPredefinedAndCustomRuleProto3 + (*PredefinedRulesProto3UnusedImportBugWorkaround)(nil), // 41: buf.validate.conformance.cases.PredefinedRulesProto3UnusedImportBugWorkaround + nil, // 42: buf.validate.conformance.cases.PredefinedMapRuleProto3.ValEntry + (*PredefinedAndCustomRuleProto3_Nested)(nil), // 43: buf.validate.conformance.cases.PredefinedAndCustomRuleProto3.Nested + (*durationpb.Duration)(nil), // 44: google.protobuf.Duration + (*timestamppb.Timestamp)(nil), // 45: google.protobuf.Timestamp + (*wrapperspb.FloatValue)(nil), // 46: google.protobuf.FloatValue + (*wrapperspb.DoubleValue)(nil), // 47: google.protobuf.DoubleValue + (*wrapperspb.Int32Value)(nil), // 48: google.protobuf.Int32Value + (*wrapperspb.Int64Value)(nil), // 49: google.protobuf.Int64Value + (*wrapperspb.UInt32Value)(nil), // 50: google.protobuf.UInt32Value + (*wrapperspb.UInt64Value)(nil), // 51: google.protobuf.UInt64Value + (*wrapperspb.BoolValue)(nil), // 52: google.protobuf.BoolValue + (*wrapperspb.StringValue)(nil), // 53: google.protobuf.StringValue + (*wrapperspb.BytesValue)(nil), // 54: google.protobuf.BytesValue + (*StandardPredefinedAndCustomRuleProto2)(nil), // 55: buf.validate.conformance.cases.StandardPredefinedAndCustomRuleProto2 + (*StandardPredefinedAndCustomRuleEdition2023)(nil), // 56: buf.validate.conformance.cases.StandardPredefinedAndCustomRuleEdition2023 } var file_buf_validate_conformance_cases_predefined_rules_proto3_proto_depIdxs = []int32{ 0, // 0: buf.validate.conformance.cases.PredefinedEnumRuleProto3.val:type_name -> buf.validate.conformance.cases.PredefinedEnumRuleProto3.EnumProto3 - 33, // 1: buf.validate.conformance.cases.PredefinedMapRuleProto3.val:type_name -> buf.validate.conformance.cases.PredefinedMapRuleProto3.ValEntry - 35, // 2: buf.validate.conformance.cases.PredefinedDurationRuleProto3.val:type_name -> google.protobuf.Duration - 36, // 3: buf.validate.conformance.cases.PredefinedTimestampRuleProto3.val:type_name -> google.protobuf.Timestamp - 37, // 4: buf.validate.conformance.cases.PredefinedWrappedFloatRuleProto3.val:type_name -> google.protobuf.FloatValue - 38, // 5: buf.validate.conformance.cases.PredefinedWrappedDoubleRuleProto3.val:type_name -> google.protobuf.DoubleValue - 39, // 6: buf.validate.conformance.cases.PredefinedWrappedInt32RuleProto3.val:type_name -> google.protobuf.Int32Value - 40, // 7: buf.validate.conformance.cases.PredefinedWrappedInt64RuleProto3.val:type_name -> google.protobuf.Int64Value - 41, // 8: buf.validate.conformance.cases.PredefinedWrappedUInt32RuleProto3.val:type_name -> google.protobuf.UInt32Value - 42, // 9: buf.validate.conformance.cases.PredefinedWrappedUInt64RuleProto3.val:type_name -> google.protobuf.UInt64Value - 43, // 10: buf.validate.conformance.cases.PredefinedWrappedBoolRuleProto3.val:type_name -> google.protobuf.BoolValue - 44, // 11: buf.validate.conformance.cases.PredefinedWrappedStringRuleProto3.val:type_name -> google.protobuf.StringValue - 45, // 12: buf.validate.conformance.cases.PredefinedWrappedBytesRuleProto3.val:type_name -> google.protobuf.BytesValue - 34, // 13: buf.validate.conformance.cases.PredefinedAndCustomRuleProto3.b:type_name -> buf.validate.conformance.cases.PredefinedAndCustomRuleProto3.Nested - 46, // 14: buf.validate.conformance.cases.PredefinedRulesProto3UnusedImportBugWorkaround.dummy_1:type_name -> buf.validate.conformance.cases.StandardPredefinedAndCustomRuleProto2 - 47, // 15: buf.validate.conformance.cases.PredefinedRulesProto3UnusedImportBugWorkaround.dummy_2:type_name -> buf.validate.conformance.cases.StandardPredefinedAndCustomRuleEdition2023 - 16, // [16:16] is the sub-list for method output_type - 16, // [16:16] is the sub-list for method input_type - 16, // [16:16] is the sub-list for extension type_name - 16, // [16:16] is the sub-list for extension extendee - 0, // [0:16] is the sub-list for field type_name + 42, // 1: buf.validate.conformance.cases.PredefinedMapRuleProto3.val:type_name -> buf.validate.conformance.cases.PredefinedMapRuleProto3.ValEntry + 44, // 2: buf.validate.conformance.cases.PredefinedDurationRuleProto3.val:type_name -> google.protobuf.Duration + 45, // 3: buf.validate.conformance.cases.PredefinedTimestampRuleProto3.val:type_name -> google.protobuf.Timestamp + 46, // 4: buf.validate.conformance.cases.PredefinedWrappedFloatRuleProto3.val:type_name -> google.protobuf.FloatValue + 47, // 5: buf.validate.conformance.cases.PredefinedWrappedDoubleRuleProto3.val:type_name -> google.protobuf.DoubleValue + 48, // 6: buf.validate.conformance.cases.PredefinedWrappedInt32RuleProto3.val:type_name -> google.protobuf.Int32Value + 49, // 7: buf.validate.conformance.cases.PredefinedWrappedInt64RuleProto3.val:type_name -> google.protobuf.Int64Value + 50, // 8: buf.validate.conformance.cases.PredefinedWrappedUInt32RuleProto3.val:type_name -> google.protobuf.UInt32Value + 51, // 9: buf.validate.conformance.cases.PredefinedWrappedUInt64RuleProto3.val:type_name -> google.protobuf.UInt64Value + 52, // 10: buf.validate.conformance.cases.PredefinedWrappedBoolRuleProto3.val:type_name -> google.protobuf.BoolValue + 53, // 11: buf.validate.conformance.cases.PredefinedWrappedStringRuleProto3.val:type_name -> google.protobuf.StringValue + 54, // 12: buf.validate.conformance.cases.PredefinedWrappedBytesRuleProto3.val:type_name -> google.protobuf.BytesValue + 46, // 13: buf.validate.conformance.cases.PredefinedRepeatedWrappedFloatRuleProto3.val:type_name -> google.protobuf.FloatValue + 47, // 14: buf.validate.conformance.cases.PredefinedRepeatedWrappedDoubleRuleProto3.val:type_name -> google.protobuf.DoubleValue + 48, // 15: buf.validate.conformance.cases.PredefinedRepeatedWrappedInt32RuleProto3.val:type_name -> google.protobuf.Int32Value + 49, // 16: buf.validate.conformance.cases.PredefinedRepeatedWrappedInt64RuleProto3.val:type_name -> google.protobuf.Int64Value + 50, // 17: buf.validate.conformance.cases.PredefinedRepeatedWrappedUInt32RuleProto3.val:type_name -> google.protobuf.UInt32Value + 51, // 18: buf.validate.conformance.cases.PredefinedRepeatedWrappedUInt64RuleProto3.val:type_name -> google.protobuf.UInt64Value + 52, // 19: buf.validate.conformance.cases.PredefinedRepeatedWrappedBoolRuleProto3.val:type_name -> google.protobuf.BoolValue + 53, // 20: buf.validate.conformance.cases.PredefinedRepeatedWrappedStringRuleProto3.val:type_name -> google.protobuf.StringValue + 54, // 21: buf.validate.conformance.cases.PredefinedRepeatedWrappedBytesRuleProto3.val:type_name -> google.protobuf.BytesValue + 43, // 22: buf.validate.conformance.cases.PredefinedAndCustomRuleProto3.b:type_name -> buf.validate.conformance.cases.PredefinedAndCustomRuleProto3.Nested + 55, // 23: buf.validate.conformance.cases.PredefinedRulesProto3UnusedImportBugWorkaround.dummy_1:type_name -> buf.validate.conformance.cases.StandardPredefinedAndCustomRuleProto2 + 56, // 24: buf.validate.conformance.cases.PredefinedRulesProto3UnusedImportBugWorkaround.dummy_2:type_name -> buf.validate.conformance.cases.StandardPredefinedAndCustomRuleEdition2023 + 25, // [25:25] is the sub-list for method output_type + 25, // [25:25] is the sub-list for method input_type + 25, // [25:25] is the sub-list for extension type_name + 25, // [25:25] is the sub-list for extension extendee + 0, // [0:25] is the sub-list for field type_name } func init() { file_buf_validate_conformance_cases_predefined_rules_proto3_proto_init() } @@ -2349,7 +2852,7 @@ func file_buf_validate_conformance_cases_predefined_rules_proto3_proto_init() { } } file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[29].Exporter = func(v any, i int) any { - switch v := v.(*PredefinedAndCustomRuleProto3); i { + switch v := v.(*PredefinedRepeatedWrappedFloatRuleProto3); i { case 0: return &v.state case 1: @@ -2361,7 +2864,7 @@ func file_buf_validate_conformance_cases_predefined_rules_proto3_proto_init() { } } file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[30].Exporter = func(v any, i int) any { - switch v := v.(*StandardPredefinedAndCustomRuleProto3); i { + switch v := v.(*PredefinedRepeatedWrappedDoubleRuleProto3); i { case 0: return &v.state case 1: @@ -2373,7 +2876,19 @@ func file_buf_validate_conformance_cases_predefined_rules_proto3_proto_init() { } } file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[31].Exporter = func(v any, i int) any { - switch v := v.(*PredefinedRulesProto3UnusedImportBugWorkaround); i { + switch v := v.(*PredefinedRepeatedWrappedInt32RuleProto3); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[32].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedRepeatedWrappedInt64RuleProto3); i { case 0: return &v.state case 1: @@ -2385,6 +2900,102 @@ func file_buf_validate_conformance_cases_predefined_rules_proto3_proto_init() { } } file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[33].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedRepeatedWrappedUInt32RuleProto3); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[34].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedRepeatedWrappedUInt64RuleProto3); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[35].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedRepeatedWrappedBoolRuleProto3); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[36].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedRepeatedWrappedStringRuleProto3); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[37].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedRepeatedWrappedBytesRuleProto3); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[38].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedAndCustomRuleProto3); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[39].Exporter = func(v any, i int) any { + switch v := v.(*StandardPredefinedAndCustomRuleProto3); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[40].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedRulesProto3UnusedImportBugWorkaround); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[42].Exporter = func(v any, i int) any { switch v := v.(*PredefinedAndCustomRuleProto3_Nested); i { case 0: return &v.state @@ -2397,14 +3008,14 @@ func file_buf_validate_conformance_cases_predefined_rules_proto3_proto_init() { } } } - file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[29].OneofWrappers = []any{} + file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[38].OneofWrappers = []any{} type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDesc, NumEnums: 1, - NumMessages: 34, + NumMessages: 43, NumExtensions: 0, NumServices: 0, }, diff --git a/tools/internal/gen/buf/validate/conformance/cases/predefined_rules_proto_editions.pb.go b/tools/internal/gen/buf/validate/conformance/cases/predefined_rules_proto_editions.pb.go index 70f9370..ce3c7bd 100644 --- a/tools/internal/gen/buf/validate/conformance/cases/predefined_rules_proto_editions.pb.go +++ b/tools/internal/gen/buf/validate/conformance/cases/predefined_rules_proto_editions.pb.go @@ -1447,6 +1447,429 @@ func (x *PredefinedWrappedBytesRuleEdition2023) GetVal() *wrapperspb.BytesValue return nil } +type PredefinedRepeatedWrappedFloatRuleEdition2023 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.FloatValue `protobuf:"bytes,1,rep,name=val" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedFloatRuleEdition2023) Reset() { + *x = PredefinedRepeatedWrappedFloatRuleEdition2023{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[29] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedFloatRuleEdition2023) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedFloatRuleEdition2023) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedFloatRuleEdition2023) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[29] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedFloatRuleEdition2023.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedFloatRuleEdition2023) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{29} +} + +func (x *PredefinedRepeatedWrappedFloatRuleEdition2023) GetVal() []*wrapperspb.FloatValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedDoubleRuleEdition2023 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.DoubleValue `protobuf:"bytes,1,rep,name=val" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedDoubleRuleEdition2023) Reset() { + *x = PredefinedRepeatedWrappedDoubleRuleEdition2023{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[30] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedDoubleRuleEdition2023) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedDoubleRuleEdition2023) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedDoubleRuleEdition2023) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[30] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedDoubleRuleEdition2023.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedDoubleRuleEdition2023) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{30} +} + +func (x *PredefinedRepeatedWrappedDoubleRuleEdition2023) GetVal() []*wrapperspb.DoubleValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedInt32RuleEdition2023 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.Int32Value `protobuf:"bytes,1,rep,name=val" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedInt32RuleEdition2023) Reset() { + *x = PredefinedRepeatedWrappedInt32RuleEdition2023{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[31] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedInt32RuleEdition2023) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedInt32RuleEdition2023) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedInt32RuleEdition2023) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[31] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedInt32RuleEdition2023.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedInt32RuleEdition2023) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{31} +} + +func (x *PredefinedRepeatedWrappedInt32RuleEdition2023) GetVal() []*wrapperspb.Int32Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedInt64RuleEdition2023 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.Int64Value `protobuf:"bytes,1,rep,name=val" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedInt64RuleEdition2023) Reset() { + *x = PredefinedRepeatedWrappedInt64RuleEdition2023{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedInt64RuleEdition2023) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedInt64RuleEdition2023) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedInt64RuleEdition2023) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[32] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedInt64RuleEdition2023.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedInt64RuleEdition2023) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{32} +} + +func (x *PredefinedRepeatedWrappedInt64RuleEdition2023) GetVal() []*wrapperspb.Int64Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedUInt32RuleEdition2023 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.UInt32Value `protobuf:"bytes,1,rep,name=val" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedUInt32RuleEdition2023) Reset() { + *x = PredefinedRepeatedWrappedUInt32RuleEdition2023{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[33] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedUInt32RuleEdition2023) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedUInt32RuleEdition2023) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedUInt32RuleEdition2023) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[33] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedUInt32RuleEdition2023.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedUInt32RuleEdition2023) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{33} +} + +func (x *PredefinedRepeatedWrappedUInt32RuleEdition2023) GetVal() []*wrapperspb.UInt32Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedUInt64RuleEdition2023 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.UInt64Value `protobuf:"bytes,1,rep,name=val" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedUInt64RuleEdition2023) Reset() { + *x = PredefinedRepeatedWrappedUInt64RuleEdition2023{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[34] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedUInt64RuleEdition2023) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedUInt64RuleEdition2023) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedUInt64RuleEdition2023) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[34] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedUInt64RuleEdition2023.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedUInt64RuleEdition2023) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{34} +} + +func (x *PredefinedRepeatedWrappedUInt64RuleEdition2023) GetVal() []*wrapperspb.UInt64Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedBoolRuleEdition2023 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.BoolValue `protobuf:"bytes,1,rep,name=val" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedBoolRuleEdition2023) Reset() { + *x = PredefinedRepeatedWrappedBoolRuleEdition2023{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[35] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedBoolRuleEdition2023) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedBoolRuleEdition2023) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedBoolRuleEdition2023) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[35] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedBoolRuleEdition2023.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedBoolRuleEdition2023) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{35} +} + +func (x *PredefinedRepeatedWrappedBoolRuleEdition2023) GetVal() []*wrapperspb.BoolValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedStringRuleEdition2023 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.StringValue `protobuf:"bytes,1,rep,name=val" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedStringRuleEdition2023) Reset() { + *x = PredefinedRepeatedWrappedStringRuleEdition2023{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[36] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedStringRuleEdition2023) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedStringRuleEdition2023) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedStringRuleEdition2023) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[36] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedStringRuleEdition2023.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedStringRuleEdition2023) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{36} +} + +func (x *PredefinedRepeatedWrappedStringRuleEdition2023) GetVal() []*wrapperspb.StringValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedRepeatedWrappedBytesRuleEdition2023 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val []*wrapperspb.BytesValue `protobuf:"bytes,1,rep,name=val" json:"val,omitempty"` +} + +func (x *PredefinedRepeatedWrappedBytesRuleEdition2023) Reset() { + *x = PredefinedRepeatedWrappedBytesRuleEdition2023{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[37] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedRepeatedWrappedBytesRuleEdition2023) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedRepeatedWrappedBytesRuleEdition2023) ProtoMessage() {} + +func (x *PredefinedRepeatedWrappedBytesRuleEdition2023) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[37] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PredefinedRepeatedWrappedBytesRuleEdition2023.ProtoReflect.Descriptor instead. +func (*PredefinedRepeatedWrappedBytesRuleEdition2023) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{37} +} + +func (x *PredefinedRepeatedWrappedBytesRuleEdition2023) GetVal() []*wrapperspb.BytesValue { + if x != nil { + return x.Val + } + return nil +} + type PredefinedAndCustomRuleEdition2023 struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1459,7 +1882,7 @@ type PredefinedAndCustomRuleEdition2023 struct { func (x *PredefinedAndCustomRuleEdition2023) Reset() { *x = PredefinedAndCustomRuleEdition2023{} if protoimpl.UnsafeEnabled { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[29] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1472,7 +1895,7 @@ func (x *PredefinedAndCustomRuleEdition2023) String() string { func (*PredefinedAndCustomRuleEdition2023) ProtoMessage() {} func (x *PredefinedAndCustomRuleEdition2023) ProtoReflect() protoreflect.Message { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[29] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1485,7 +1908,7 @@ func (x *PredefinedAndCustomRuleEdition2023) ProtoReflect() protoreflect.Message // Deprecated: Use PredefinedAndCustomRuleEdition2023.ProtoReflect.Descriptor instead. func (*PredefinedAndCustomRuleEdition2023) Descriptor() ([]byte, []int) { - return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{29} + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{38} } func (x *PredefinedAndCustomRuleEdition2023) GetA() int32 { @@ -1513,7 +1936,7 @@ type StandardPredefinedAndCustomRuleEdition2023 struct { func (x *StandardPredefinedAndCustomRuleEdition2023) Reset() { *x = StandardPredefinedAndCustomRuleEdition2023{} if protoimpl.UnsafeEnabled { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[30] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1526,7 +1949,7 @@ func (x *StandardPredefinedAndCustomRuleEdition2023) String() string { func (*StandardPredefinedAndCustomRuleEdition2023) ProtoMessage() {} func (x *StandardPredefinedAndCustomRuleEdition2023) ProtoReflect() protoreflect.Message { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[30] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1539,7 +1962,7 @@ func (x *StandardPredefinedAndCustomRuleEdition2023) ProtoReflect() protoreflect // Deprecated: Use StandardPredefinedAndCustomRuleEdition2023.ProtoReflect.Descriptor instead. func (*StandardPredefinedAndCustomRuleEdition2023) Descriptor() ([]byte, []int) { - return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{30} + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{39} } func (x *StandardPredefinedAndCustomRuleEdition2023) GetA() int32 { @@ -1560,7 +1983,7 @@ type PredefinedAndCustomRuleEdition2023_Nested struct { func (x *PredefinedAndCustomRuleEdition2023_Nested) Reset() { *x = PredefinedAndCustomRuleEdition2023_Nested{} if protoimpl.UnsafeEnabled { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[32] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1573,7 +1996,7 @@ func (x *PredefinedAndCustomRuleEdition2023_Nested) String() string { func (*PredefinedAndCustomRuleEdition2023_Nested) ProtoMessage() {} func (x *PredefinedAndCustomRuleEdition2023_Nested) ProtoReflect() protoreflect.Message { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[32] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1586,7 +2009,7 @@ func (x *PredefinedAndCustomRuleEdition2023_Nested) ProtoReflect() protoreflect. // Deprecated: Use PredefinedAndCustomRuleEdition2023_Nested.ProtoReflect.Descriptor instead. func (*PredefinedAndCustomRuleEdition2023_Nested) Descriptor() ([]byte, []int) { - return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{29, 0} + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{38, 0} } func (x *PredefinedAndCustomRuleEdition2023_Nested) GetC() int32 { @@ -2056,309 +2479,374 @@ var file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_ra 0x37, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x79, 0x74, 0x65, 0x73, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x08, 0xba, 0x48, 0x05, 0x7a, 0x03, - 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0xda, 0x03, 0x0a, 0x22, 0x50, 0x72, 0x65, - 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x41, 0x6e, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, - 0x77, 0x0a, 0x01, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x42, 0x69, 0xba, 0x48, 0x66, 0xba, - 0x01, 0x5e, 0x0a, 0x2e, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, - 0x6e, 0x64, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x73, - 0x63, 0x61, 0x6c, 0x61, 0x72, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, - 0x32, 0x33, 0x1a, 0x2c, 0x74, 0x68, 0x69, 0x73, 0x20, 0x3e, 0x20, 0x32, 0x34, 0x20, 0x3f, 0x20, - 0x27, 0x27, 0x20, 0x3a, 0x20, 0x27, 0x61, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, - 0x67, 0x72, 0x65, 0x61, 0x74, 0x65, 0x72, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x32, 0x34, 0x27, - 0x3a, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x01, 0x61, 0x12, 0xbf, 0x01, 0x0a, 0x01, 0x62, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x49, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, - 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, - 0x63, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, - 0x41, 0x6e, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x2e, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x42, - 0x66, 0xba, 0x48, 0x63, 0xba, 0x01, 0x60, 0x0a, 0x30, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, - 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, - 0x75, 0x6c, 0x65, 0x5f, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64, 0x5f, 0x65, 0x64, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1b, 0x62, 0x2e, 0x63, 0x20, 0x6d, - 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x61, 0x20, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, - 0x65, 0x20, 0x6f, 0x66, 0x20, 0x33, 0x1a, 0x0f, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x63, 0x20, 0x25, - 0x20, 0x33, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x52, 0x01, 0x62, 0x1a, 0x79, 0x0a, 0x06, 0x4e, 0x65, - 0x73, 0x74, 0x65, 0x64, 0x12, 0x6f, 0x0a, 0x01, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x42, - 0x61, 0xba, 0x48, 0x5e, 0xba, 0x01, 0x56, 0x0a, 0x2e, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, - 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, - 0x75, 0x6c, 0x65, 0x5f, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x1a, 0x24, 0x74, 0x68, 0x69, 0x73, 0x20, 0x3e, 0x20, - 0x30, 0x20, 0x3f, 0x20, 0x27, 0x27, 0x20, 0x3a, 0x20, 0x27, 0x63, 0x20, 0x6d, 0x75, 0x73, 0x74, - 0x20, 0x62, 0x65, 0x20, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x27, 0x3a, 0x03, 0xd0, - 0x48, 0x01, 0x52, 0x01, 0x63, 0x22, 0xb1, 0x01, 0x0a, 0x2a, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x61, - 0x72, 0x64, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x41, 0x6e, 0x64, 0x43, + 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x70, 0x0a, 0x2d, 0x50, 0x72, 0x65, 0x64, + 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x57, 0x72, + 0x61, 0x70, 0x70, 0x65, 0x64, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x3f, 0x0a, 0x03, 0x76, 0x61, 0x6c, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x42, 0x10, 0xba, 0x48, 0x0d, 0x92, 0x01, 0x0a, 0x22, 0x08, 0x0a, 0x06, 0xd5, + 0x48, 0x00, 0x00, 0x80, 0x3f, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x76, 0x0a, 0x2e, 0x50, 0x72, + 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x64, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x52, 0x75, 0x6c, + 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x44, 0x0a, 0x03, + 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75, 0x62, + 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x14, 0xba, 0x48, 0x11, 0x92, 0x01, 0x0e, 0x22, + 0x0c, 0x12, 0x0a, 0xd1, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x3f, 0x52, 0x03, 0x76, + 0x61, 0x6c, 0x22, 0x77, 0x0a, 0x2d, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, + 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x64, 0x49, + 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, + 0x30, 0x32, 0x33, 0x12, 0x46, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x17, 0xba, + 0x48, 0x14, 0x92, 0x01, 0x11, 0x22, 0x0f, 0x1a, 0x0d, 0xd2, 0x48, 0x0a, 0xfe, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x78, 0x0a, 0x2d, 0x50, + 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x64, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, + 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x47, 0x0a, 0x03, + 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, + 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x18, 0xba, 0x48, 0x15, 0x92, 0x01, 0x12, 0x22, 0x10, + 0x22, 0x0e, 0xd2, 0x48, 0x0b, 0x08, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, + 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x6f, 0x0a, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, + 0x6e, 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x57, 0x72, 0x61, 0x70, 0x70, + 0x65, 0x64, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x3d, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x42, 0x0d, 0xba, 0x48, 0x0a, 0x92, 0x01, 0x07, 0x22, 0x05, 0x2a, 0x03, 0xd0, 0x48, + 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x6f, 0x0a, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, + 0x69, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x57, 0x72, 0x61, 0x70, + 0x70, 0x65, 0x64, 0x55, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x3d, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x42, 0x0d, 0xba, 0x48, 0x0a, 0x92, 0x01, 0x07, 0x22, 0x05, 0x32, 0x03, 0xd0, + 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x6b, 0x0a, 0x2c, 0x50, 0x72, 0x65, 0x64, 0x65, + 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x57, 0x72, 0x61, + 0x70, 0x70, 0x65, 0x64, 0x42, 0x6f, 0x6f, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x3b, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x42, 0x0d, 0xba, 0x48, 0x0a, 0x92, 0x01, 0x07, 0x22, 0x05, 0x6a, 0x03, 0xd0, 0x48, 0x01, 0x52, + 0x03, 0x76, 0x61, 0x6c, 0x22, 0x6f, 0x0a, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, + 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, + 0x64, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x3d, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x42, 0x0d, 0xba, 0x48, 0x0a, 0x92, 0x01, 0x07, 0x22, 0x05, 0x72, 0x03, 0xd0, 0x48, 0x01, + 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x6d, 0x0a, 0x2d, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, + 0x6e, 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x57, 0x72, 0x61, 0x70, 0x70, + 0x65, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x3c, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x79, 0x74, 0x65, 0x73, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x42, 0x0d, 0xba, 0x48, 0x0a, 0x92, 0x01, 0x07, 0x22, 0x05, 0x7a, 0x03, 0xd0, 0x48, 0x01, 0x52, + 0x03, 0x76, 0x61, 0x6c, 0x22, 0xda, 0x03, 0x0a, 0x22, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, + 0x6e, 0x65, 0x64, 0x41, 0x6e, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x75, 0x6c, 0x65, + 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x77, 0x0a, 0x01, 0x61, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x42, 0x69, 0xba, 0x48, 0x66, 0xba, 0x01, 0x5e, 0x0a, 0x2e, + 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x6e, 0x64, 0x5f, 0x63, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x61, + 0x72, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x1a, 0x2c, + 0x74, 0x68, 0x69, 0x73, 0x20, 0x3e, 0x20, 0x32, 0x34, 0x20, 0x3f, 0x20, 0x27, 0x27, 0x20, 0x3a, + 0x20, 0x27, 0x61, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x67, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x72, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x32, 0x34, 0x27, 0x3a, 0x03, 0xd0, 0x48, + 0x01, 0x52, 0x01, 0x61, 0x12, 0xbf, 0x01, 0x0a, 0x01, 0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x49, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, + 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, + 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x41, 0x6e, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x32, 0x30, 0x32, 0x33, 0x12, 0x82, 0x01, 0x0a, 0x01, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, - 0x42, 0x74, 0xba, 0x48, 0x71, 0xba, 0x01, 0x67, 0x0a, 0x37, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x61, - 0x72, 0x64, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x6e, - 0x64, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x73, 0x63, - 0x61, 0x6c, 0x61, 0x72, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, - 0x33, 0x1a, 0x2c, 0x74, 0x68, 0x69, 0x73, 0x20, 0x3e, 0x20, 0x32, 0x34, 0x20, 0x3f, 0x20, 0x27, - 0x27, 0x20, 0x3a, 0x20, 0x27, 0x61, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x67, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x72, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x32, 0x34, 0x27, 0x3a, - 0x05, 0xd0, 0x48, 0x01, 0x10, 0x38, 0x52, 0x01, 0x61, 0x3a, 0xba, 0x01, 0x0a, 0x1c, 0x66, 0x6c, - 0x6f, 0x61, 0x74, 0x5f, 0x61, 0x62, 0x73, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x65, 0x64, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x18, 0x2e, 0x62, 0x75, 0x66, - 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x52, - 0x75, 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x02, 0x42, 0x5f, 0xc2, 0x48, 0x5c, - 0x0a, 0x5a, 0x0a, 0x1c, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x2e, 0x61, 0x62, 0x73, 0x5f, 0x72, 0x61, - 0x6e, 0x67, 0x65, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, - 0x12, 0x1b, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, - 0x20, 0x6f, 0x75, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x1a, 0x1d, 0x74, - 0x68, 0x69, 0x73, 0x20, 0x3e, 0x3d, 0x20, 0x2d, 0x72, 0x75, 0x6c, 0x65, 0x20, 0x26, 0x26, 0x20, - 0x74, 0x68, 0x69, 0x73, 0x20, 0x3c, 0x3d, 0x20, 0x72, 0x75, 0x6c, 0x65, 0x52, 0x18, 0x66, 0x6c, - 0x6f, 0x61, 0x74, 0x41, 0x62, 0x73, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0xbf, 0x01, 0x0a, 0x1d, 0x64, 0x6f, 0x75, 0x62, 0x6c, - 0x65, 0x5f, 0x61, 0x62, 0x73, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x65, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x19, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, - 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x52, 0x75, - 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x01, 0x42, 0x61, 0xc2, 0x48, 0x5e, 0x0a, - 0x5c, 0x0a, 0x1d, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x2e, 0x61, 0x62, 0x73, 0x5f, 0x72, 0x61, - 0x6e, 0x67, 0x65, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, - 0x12, 0x1c, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, - 0x73, 0x20, 0x6f, 0x75, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x1a, 0x1d, - 0x74, 0x68, 0x69, 0x73, 0x20, 0x3e, 0x3d, 0x20, 0x2d, 0x72, 0x75, 0x6c, 0x65, 0x20, 0x26, 0x26, - 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x3c, 0x3d, 0x20, 0x72, 0x75, 0x6c, 0x65, 0x52, 0x19, 0x64, - 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x41, 0x62, 0x73, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x45, 0x64, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0xc7, 0x01, 0x0a, 0x19, 0x69, 0x6e, 0x74, - 0x33, 0x32, 0x5f, 0x61, 0x62, 0x73, 0x5f, 0x69, 0x6e, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, + 0x32, 0x30, 0x32, 0x33, 0x2e, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x42, 0x66, 0xba, 0x48, 0x63, + 0xba, 0x01, 0x60, 0x0a, 0x30, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, + 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, + 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1b, 0x62, 0x2e, 0x63, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, + 0x62, 0x65, 0x20, 0x61, 0x20, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x20, 0x6f, 0x66, + 0x20, 0x33, 0x1a, 0x0f, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x63, 0x20, 0x25, 0x20, 0x33, 0x20, 0x3d, + 0x3d, 0x20, 0x30, 0x52, 0x01, 0x62, 0x1a, 0x79, 0x0a, 0x06, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, + 0x12, 0x6f, 0x0a, 0x01, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x42, 0x61, 0xba, 0x48, 0x5e, + 0xba, 0x01, 0x56, 0x0a, 0x2e, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, + 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, + 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, + 0x30, 0x32, 0x33, 0x1a, 0x24, 0x74, 0x68, 0x69, 0x73, 0x20, 0x3e, 0x20, 0x30, 0x20, 0x3f, 0x20, + 0x27, 0x27, 0x20, 0x3a, 0x20, 0x27, 0x63, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, + 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x27, 0x3a, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x01, + 0x63, 0x22, 0xb1, 0x01, 0x0a, 0x2a, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x50, 0x72, + 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x41, 0x6e, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, + 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, + 0x12, 0x82, 0x01, 0x0a, 0x01, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x42, 0x74, 0xba, 0x48, + 0x71, 0xba, 0x01, 0x67, 0x0a, 0x37, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x5f, 0x70, + 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x72, + 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x1a, 0x2c, 0x74, + 0x68, 0x69, 0x73, 0x20, 0x3e, 0x20, 0x32, 0x34, 0x20, 0x3f, 0x20, 0x27, 0x27, 0x20, 0x3a, 0x20, + 0x27, 0x61, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x67, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x72, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x32, 0x34, 0x27, 0x3a, 0x05, 0xd0, 0x48, 0x01, + 0x10, 0x38, 0x52, 0x01, 0x61, 0x3a, 0xba, 0x01, 0x0a, 0x1c, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x5f, + 0x61, 0x62, 0x73, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x18, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, - 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x73, - 0x18, 0x8a, 0x09, 0x20, 0x03, 0x28, 0x05, 0x42, 0x72, 0xc2, 0x48, 0x6f, 0x0a, 0x6d, 0x0a, 0x19, - 0x69, 0x6e, 0x74, 0x33, 0x32, 0x2e, 0x61, 0x62, 0x73, 0x5f, 0x69, 0x6e, 0x2e, 0x65, 0x64, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x27, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x69, 0x6e, 0x20, 0x61, 0x62, 0x73, 0x6f, - 0x6c, 0x75, 0x74, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x6c, 0x69, - 0x73, 0x74, 0x1a, 0x27, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x72, 0x75, 0x6c, 0x65, - 0x20, 0x7c, 0x7c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x72, 0x75, 0x6c, 0x65, - 0x2e, 0x6d, 0x61, 0x70, 0x28, 0x6e, 0x2c, 0x20, 0x2d, 0x6e, 0x29, 0x52, 0x15, 0x69, 0x6e, 0x74, - 0x33, 0x32, 0x41, 0x62, 0x73, 0x49, 0x6e, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, - 0x32, 0x33, 0x3a, 0xe4, 0x01, 0x0a, 0x19, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x5f, 0x61, 0x62, 0x73, - 0x5f, 0x69, 0x6e, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, - 0x12, 0x18, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, - 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x72, - 0xc2, 0x48, 0x6f, 0x0a, 0x6d, 0x0a, 0x19, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x2e, 0x61, 0x62, 0x73, - 0x5f, 0x69, 0x6e, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, - 0x12, 0x27, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, - 0x69, 0x6e, 0x20, 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x20, 0x6f, 0x66, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x1a, 0x27, 0x74, 0x68, 0x69, 0x73, 0x20, - 0x69, 0x6e, 0x20, 0x72, 0x75, 0x6c, 0x65, 0x20, 0x7c, 0x7c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, - 0x69, 0x6e, 0x20, 0x72, 0x75, 0x6c, 0x65, 0x2e, 0x6d, 0x61, 0x70, 0x28, 0x6e, 0x2c, 0x20, 0x2d, - 0x6e, 0x29, 0x52, 0x15, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x41, 0x62, 0x73, 0x49, 0x6e, 0x45, 0x64, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0x9f, 0x01, 0x0a, 0x18, 0x75, 0x69, + 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x73, + 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x02, 0x42, 0x5f, 0xc2, 0x48, 0x5c, 0x0a, 0x5a, 0x0a, 0x1c, + 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x2e, 0x61, 0x62, 0x73, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x2e, + 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1b, 0x66, 0x6c, + 0x6f, 0x61, 0x74, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6f, 0x75, 0x74, + 0x20, 0x6f, 0x66, 0x20, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x1a, 0x1d, 0x74, 0x68, 0x69, 0x73, 0x20, + 0x3e, 0x3d, 0x20, 0x2d, 0x72, 0x75, 0x6c, 0x65, 0x20, 0x26, 0x26, 0x20, 0x74, 0x68, 0x69, 0x73, + 0x20, 0x3c, 0x3d, 0x20, 0x72, 0x75, 0x6c, 0x65, 0x52, 0x18, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x41, + 0x62, 0x73, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, + 0x32, 0x33, 0x3a, 0xbf, 0x01, 0x0a, 0x1d, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x5f, 0x61, 0x62, + 0x73, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x32, 0x30, 0x32, 0x33, 0x12, 0x19, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, + 0x61, 0x74, 0x65, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, + 0x8a, 0x09, 0x20, 0x01, 0x28, 0x01, 0x42, 0x61, 0xc2, 0x48, 0x5e, 0x0a, 0x5c, 0x0a, 0x1d, 0x64, + 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x2e, 0x61, 0x62, 0x73, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x2e, + 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1c, 0x64, 0x6f, + 0x75, 0x62, 0x6c, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6f, 0x75, + 0x74, 0x20, 0x6f, 0x66, 0x20, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x1a, 0x1d, 0x74, 0x68, 0x69, 0x73, + 0x20, 0x3e, 0x3d, 0x20, 0x2d, 0x72, 0x75, 0x6c, 0x65, 0x20, 0x26, 0x26, 0x20, 0x74, 0x68, 0x69, + 0x73, 0x20, 0x3c, 0x3d, 0x20, 0x72, 0x75, 0x6c, 0x65, 0x52, 0x19, 0x64, 0x6f, 0x75, 0x62, 0x6c, + 0x65, 0x41, 0x62, 0x73, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x32, 0x30, 0x32, 0x33, 0x3a, 0xc7, 0x01, 0x0a, 0x19, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x5f, 0x61, + 0x62, 0x73, 0x5f, 0x69, 0x6e, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, + 0x32, 0x33, 0x12, 0x18, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x65, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, + 0x03, 0x28, 0x05, 0x42, 0x72, 0xc2, 0x48, 0x6f, 0x0a, 0x6d, 0x0a, 0x19, 0x69, 0x6e, 0x74, 0x33, + 0x32, 0x2e, 0x61, 0x62, 0x73, 0x5f, 0x69, 0x6e, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x27, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x6d, 0x75, 0x73, + 0x74, 0x20, 0x62, 0x65, 0x20, 0x69, 0x6e, 0x20, 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x1a, 0x27, + 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x72, 0x75, 0x6c, 0x65, 0x20, 0x7c, 0x7c, 0x20, + 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x72, 0x75, 0x6c, 0x65, 0x2e, 0x6d, 0x61, 0x70, + 0x28, 0x6e, 0x2c, 0x20, 0x2d, 0x6e, 0x29, 0x52, 0x15, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x41, 0x62, + 0x73, 0x49, 0x6e, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0xe4, + 0x01, 0x0a, 0x19, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x5f, 0x61, 0x62, 0x73, 0x5f, 0x69, 0x6e, 0x5f, + 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x18, 0x2e, 0x62, + 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x49, 0x6e, 0x74, 0x36, + 0x34, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x72, 0xc2, 0x48, 0x6f, 0x0a, + 0x6d, 0x0a, 0x19, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x2e, 0x61, 0x62, 0x73, 0x5f, 0x69, 0x6e, 0x2e, + 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x27, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x69, 0x6e, 0x20, 0x61, + 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x6f, 0x66, + 0x20, 0x6c, 0x69, 0x73, 0x74, 0x1a, 0x27, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x72, + 0x75, 0x6c, 0x65, 0x20, 0x7c, 0x7c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x72, + 0x75, 0x6c, 0x65, 0x2e, 0x6d, 0x61, 0x70, 0x28, 0x6e, 0x2c, 0x20, 0x2d, 0x6e, 0x29, 0x52, 0x15, + 0x69, 0x6e, 0x74, 0x36, 0x34, 0x41, 0x62, 0x73, 0x49, 0x6e, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0x9f, 0x01, 0x0a, 0x18, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, + 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, + 0x32, 0x33, 0x12, 0x19, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x65, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, + 0x20, 0x01, 0x28, 0x08, 0x42, 0x4a, 0xc2, 0x48, 0x47, 0x0a, 0x45, 0x0a, 0x18, 0x75, 0x69, 0x6e, + 0x74, 0x33, 0x32, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x18, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x1a, + 0x0f, 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x75, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x75, + 0x52, 0x15, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x45, 0x76, 0x65, 0x6e, 0x45, 0x64, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0x9f, 0x01, 0x0a, 0x18, 0x75, 0x69, 0x6e, 0x74, + 0x36, 0x34, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x32, 0x30, 0x32, 0x33, 0x12, 0x19, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, + 0x61, 0x74, 0x65, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, + 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x4a, 0xc2, 0x48, 0x47, 0x0a, 0x45, 0x0a, 0x18, 0x75, + 0x69, 0x6e, 0x74, 0x36, 0x34, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x18, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, 0x76, 0x65, + 0x6e, 0x1a, 0x0f, 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x75, 0x20, 0x3d, 0x3d, 0x20, + 0x30, 0x75, 0x52, 0x15, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x45, 0x76, 0x65, 0x6e, 0x45, 0x64, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0x9d, 0x01, 0x0a, 0x18, 0x73, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x19, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, - 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, - 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x4a, 0xc2, 0x48, 0x47, 0x0a, 0x45, 0x0a, - 0x18, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x65, 0x64, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x18, 0x75, 0x69, 0x6e, 0x74, 0x33, + 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, + 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x48, 0xc2, 0x48, 0x45, 0x0a, 0x43, 0x0a, + 0x18, 0x73, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x65, 0x64, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x18, 0x73, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, - 0x76, 0x65, 0x6e, 0x1a, 0x0f, 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x75, 0x20, 0x3d, - 0x3d, 0x20, 0x30, 0x75, 0x52, 0x15, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x45, 0x76, 0x65, 0x6e, - 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0x9f, 0x01, 0x0a, 0x18, - 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, 0x65, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x19, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, - 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, - 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x4a, 0xc2, 0x48, 0x47, 0x0a, - 0x45, 0x0a, 0x18, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x65, - 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x18, 0x75, 0x69, 0x6e, - 0x74, 0x36, 0x34, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, - 0x20, 0x65, 0x76, 0x65, 0x6e, 0x1a, 0x0f, 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x75, - 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x75, 0x52, 0x15, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x45, 0x76, - 0x65, 0x6e, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0x9d, 0x01, - 0x0a, 0x18, 0x73, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, 0x65, 0x64, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x19, 0x2e, 0x62, 0x75, 0x66, - 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x49, 0x6e, 0x74, 0x33, 0x32, - 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x48, 0xc2, 0x48, - 0x45, 0x0a, 0x43, 0x0a, 0x18, 0x73, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x2e, 0x65, 0x76, 0x65, 0x6e, - 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x18, 0x73, - 0x69, 0x6e, 0x74, 0x33, 0x32, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, - 0x6f, 0x74, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x1a, 0x0d, 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, - 0x32, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x52, 0x15, 0x73, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x45, 0x76, - 0x65, 0x6e, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0x9d, 0x01, - 0x0a, 0x18, 0x73, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, 0x65, 0x64, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x19, 0x2e, 0x62, 0x75, 0x66, - 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x49, 0x6e, 0x74, 0x36, 0x34, - 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x48, 0xc2, 0x48, - 0x45, 0x0a, 0x43, 0x0a, 0x18, 0x73, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x2e, 0x65, 0x76, 0x65, 0x6e, - 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x18, 0x73, - 0x69, 0x6e, 0x74, 0x36, 0x34, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, - 0x6f, 0x74, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x1a, 0x0d, 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, - 0x32, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x52, 0x15, 0x73, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x45, 0x76, - 0x65, 0x6e, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0xa4, 0x01, - 0x0a, 0x19, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, 0x65, - 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, 0x2e, 0x62, 0x75, - 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x46, 0x69, 0x78, 0x65, 0x64, - 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x4c, - 0xc2, 0x48, 0x49, 0x0a, 0x47, 0x0a, 0x19, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x2e, 0x65, - 0x76, 0x65, 0x6e, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, - 0x12, 0x19, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, - 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x1a, 0x0f, 0x74, 0x68, 0x69, - 0x73, 0x20, 0x25, 0x20, 0x32, 0x75, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x75, 0x52, 0x16, 0x66, 0x69, - 0x78, 0x65, 0x64, 0x33, 0x32, 0x45, 0x76, 0x65, 0x6e, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x32, 0x30, 0x32, 0x33, 0x3a, 0xa4, 0x01, 0x0a, 0x19, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, - 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, - 0x32, 0x33, 0x12, 0x1a, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, - 0x65, 0x2e, 0x46, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x8a, - 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x4c, 0xc2, 0x48, 0x49, 0x0a, 0x47, 0x0a, 0x19, 0x66, 0x69, + 0x76, 0x65, 0x6e, 0x1a, 0x0d, 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x20, 0x3d, 0x3d, + 0x20, 0x30, 0x52, 0x15, 0x73, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x45, 0x76, 0x65, 0x6e, 0x45, 0x64, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0x9d, 0x01, 0x0a, 0x18, 0x73, 0x69, + 0x6e, 0x74, 0x36, 0x34, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x19, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, + 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x48, 0xc2, 0x48, 0x45, 0x0a, 0x43, 0x0a, + 0x18, 0x73, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x65, 0x64, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x18, 0x73, 0x69, 0x6e, 0x74, 0x36, + 0x34, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, + 0x76, 0x65, 0x6e, 0x1a, 0x0d, 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x20, 0x3d, 0x3d, + 0x20, 0x30, 0x52, 0x15, 0x73, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x45, 0x76, 0x65, 0x6e, 0x45, 0x64, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0xa4, 0x01, 0x0a, 0x19, 0x66, 0x69, + 0x78, 0x65, 0x64, 0x33, 0x32, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x46, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x52, 0x75, + 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x4c, 0xc2, 0x48, 0x49, 0x0a, + 0x47, 0x0a, 0x19, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, + 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x19, 0x66, 0x69, + 0x78, 0x65, 0x64, 0x33, 0x32, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, + 0x6f, 0x74, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x1a, 0x0f, 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, + 0x32, 0x75, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x75, 0x52, 0x16, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, + 0x32, 0x45, 0x76, 0x65, 0x6e, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, + 0x3a, 0xa4, 0x01, 0x0a, 0x19, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x5f, 0x65, 0x76, 0x65, + 0x6e, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, + 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x46, 0x69, + 0x78, 0x65, 0x64, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, + 0x08, 0x42, 0x4c, 0xc2, 0x48, 0x49, 0x0a, 0x47, 0x0a, 0x19, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, + 0x34, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, + 0x30, 0x32, 0x33, 0x12, 0x19, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x1a, 0x0f, + 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x75, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x75, 0x52, + 0x16, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x45, 0x76, 0x65, 0x6e, 0x45, 0x64, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0xa7, 0x01, 0x0a, 0x1a, 0x73, 0x66, 0x69, 0x78, + 0x65, 0x64, 0x33, 0x32, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1b, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x46, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x52, 0x75, + 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x4c, 0xc2, 0x48, 0x49, 0x0a, + 0x47, 0x0a, 0x1a, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x2e, 0x65, 0x76, 0x65, 0x6e, + 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, 0x73, + 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, + 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x1a, 0x0d, 0x74, 0x68, 0x69, 0x73, 0x20, + 0x25, 0x20, 0x32, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x52, 0x17, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, + 0x33, 0x32, 0x45, 0x76, 0x65, 0x6e, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, + 0x33, 0x3a, 0xa7, 0x01, 0x0a, 0x1a, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x5f, 0x65, + 0x76, 0x65, 0x6e, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, + 0x12, 0x1b, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, + 0x53, 0x46, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, + 0x20, 0x01, 0x28, 0x08, 0x42, 0x4c, 0xc2, 0x48, 0x49, 0x0a, 0x47, 0x0a, 0x1a, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x19, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, - 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, 0x76, - 0x65, 0x6e, 0x1a, 0x0f, 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x75, 0x20, 0x3d, 0x3d, - 0x20, 0x30, 0x75, 0x52, 0x16, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x45, 0x76, 0x65, 0x6e, - 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0xa7, 0x01, 0x0a, 0x1a, - 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, 0x65, 0x64, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1b, 0x2e, 0x62, 0x75, 0x66, - 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x46, 0x69, 0x78, 0x65, 0x64, - 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x4c, - 0xc2, 0x48, 0x49, 0x0a, 0x47, 0x0a, 0x1a, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x2e, - 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, - 0x33, 0x12, 0x1a, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x20, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x1a, 0x0d, 0x74, - 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x52, 0x17, 0x73, 0x66, - 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x45, 0x76, 0x65, 0x6e, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0xa7, 0x01, 0x0a, 0x1a, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, - 0x36, 0x34, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x32, 0x30, 0x32, 0x33, 0x12, 0x1b, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, - 0x61, 0x74, 0x65, 0x2e, 0x53, 0x46, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, - 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x4c, 0xc2, 0x48, 0x49, 0x0a, 0x47, 0x0a, - 0x1a, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x65, - 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, 0x73, 0x66, 0x69, - 0x78, 0x65, 0x64, 0x36, 0x34, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, - 0x6f, 0x74, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x1a, 0x0d, 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, - 0x32, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x52, 0x17, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, - 0x45, 0x76, 0x65, 0x6e, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, - 0x97, 0x01, 0x0a, 0x17, 0x62, 0x6f, 0x6f, 0x6c, 0x5f, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x5f, 0x65, - 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x17, 0x2e, 0x62, 0x75, - 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x52, - 0x75, 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x46, 0xc2, 0x48, 0x43, - 0x0a, 0x41, 0x0a, 0x17, 0x62, 0x6f, 0x6f, 0x6c, 0x2e, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x2e, 0x65, - 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x17, 0x62, 0x6f, 0x6f, - 0x6c, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x66, - 0x61, 0x6c, 0x73, 0x65, 0x1a, 0x0d, 0x74, 0x68, 0x69, 0x73, 0x20, 0x3d, 0x3d, 0x20, 0x66, 0x61, - 0x6c, 0x73, 0x65, 0x52, 0x14, 0x62, 0x6f, 0x6f, 0x6c, 0x46, 0x61, 0x6c, 0x73, 0x65, 0x45, 0x64, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0x8f, 0x02, 0x0a, 0x1e, 0x73, 0x74, - 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, - 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x19, 0x2e, 0x62, - 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x74, 0x72, 0x69, - 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0xae, - 0x01, 0xc2, 0x48, 0xaa, 0x01, 0x0a, 0xa7, 0x01, 0x0a, 0x1e, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, - 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x2e, 0x65, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x1a, 0x84, 0x01, 0x21, 0x74, 0x68, 0x69, 0x73, - 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x28, 0x27, 0x5e, 0x28, 0x5b, 0x5e, 0x2f, 0x2e, - 0x5d, 0x5b, 0x5e, 0x2f, 0x5d, 0x3f, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x5b, 0x5e, 0x2f, 0x2e, 0x5d, - 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x7b, 0x33, 0x2c, 0x7d, 0x29, 0x28, 0x2f, 0x28, 0x5b, 0x5e, 0x2f, - 0x2e, 0x5d, 0x5b, 0x5e, 0x2f, 0x5d, 0x3f, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x5b, 0x5e, 0x2f, 0x2e, - 0x5d, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x7b, 0x33, 0x2c, 0x7d, 0x29, 0x29, 0x2a, 0x24, 0x27, 0x29, - 0x20, 0x3f, 0x20, 0x27, 0x6e, 0x6f, 0x74, 0x20, 0x61, 0x20, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x20, - 0x70, 0x61, 0x74, 0x68, 0x3a, 0x20, 0x60, 0x25, 0x73, 0x60, 0x27, 0x2e, 0x66, 0x6f, 0x72, 0x6d, - 0x61, 0x74, 0x28, 0x5b, 0x74, 0x68, 0x69, 0x73, 0x5d, 0x29, 0x20, 0x3a, 0x20, 0x27, 0x27, 0x52, - 0x1a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x50, 0x61, 0x74, 0x68, - 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0x93, 0x02, 0x0a, 0x1d, - 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, - 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x18, 0x2e, - 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x42, 0x79, 0x74, - 0x65, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0xb5, - 0x01, 0xc2, 0x48, 0xb1, 0x01, 0x0a, 0xae, 0x01, 0x0a, 0x1d, 0x62, 0x79, 0x74, 0x65, 0x73, 0x2e, - 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x1a, 0x8c, 0x01, 0x21, 0x73, 0x74, 0x72, 0x69, 0x6e, - 0x67, 0x28, 0x74, 0x68, 0x69, 0x73, 0x29, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x28, - 0x27, 0x5e, 0x28, 0x5b, 0x5e, 0x2f, 0x2e, 0x5d, 0x5b, 0x5e, 0x2f, 0x5d, 0x3f, 0x7c, 0x5b, 0x5e, - 0x2f, 0x5d, 0x5b, 0x5e, 0x2f, 0x2e, 0x5d, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x7b, 0x33, 0x2c, 0x7d, - 0x29, 0x28, 0x2f, 0x28, 0x5b, 0x5e, 0x2f, 0x2e, 0x5d, 0x5b, 0x5e, 0x2f, 0x5d, 0x3f, 0x7c, 0x5b, - 0x5e, 0x2f, 0x5d, 0x5b, 0x5e, 0x2f, 0x2e, 0x5d, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x7b, 0x33, 0x2c, - 0x7d, 0x29, 0x29, 0x2a, 0x24, 0x27, 0x29, 0x20, 0x3f, 0x20, 0x27, 0x6e, 0x6f, 0x74, 0x20, 0x61, - 0x20, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x20, 0x70, 0x61, 0x74, 0x68, 0x3a, 0x20, 0x60, 0x25, 0x73, - 0x60, 0x27, 0x2e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x28, 0x5b, 0x74, 0x68, 0x69, 0x73, 0x5d, - 0x29, 0x20, 0x3a, 0x20, 0x27, 0x27, 0x52, 0x19, 0x62, 0x79, 0x74, 0x65, 0x73, 0x56, 0x61, 0x6c, - 0x69, 0x64, 0x50, 0x61, 0x74, 0x68, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, - 0x33, 0x3a, 0xa3, 0x01, 0x0a, 0x1a, 0x65, 0x6e, 0x75, 0x6d, 0x5f, 0x6e, 0x6f, 0x6e, 0x5f, 0x7a, - 0x65, 0x72, 0x6f, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, - 0x12, 0x17, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, - 0x45, 0x6e, 0x75, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, - 0x42, 0x4d, 0xc2, 0x48, 0x4a, 0x0a, 0x48, 0x0a, 0x1a, 0x65, 0x6e, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, - 0x6e, 0x5f, 0x7a, 0x65, 0x72, 0x6f, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, - 0x30, 0x32, 0x33, 0x12, 0x1a, 0x65, 0x6e, 0x75, 0x6d, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, - 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6e, 0x6f, 0x6e, 0x2d, 0x7a, 0x65, 0x72, 0x6f, 0x1a, - 0x0e, 0x69, 0x6e, 0x74, 0x28, 0x74, 0x68, 0x69, 0x73, 0x29, 0x20, 0x21, 0x3d, 0x20, 0x30, 0x52, - 0x16, 0x65, 0x6e, 0x75, 0x6d, 0x4e, 0x6f, 0x6e, 0x5a, 0x65, 0x72, 0x6f, 0x45, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0xdd, 0x01, 0x0a, 0x23, 0x72, 0x65, 0x70, 0x65, - 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x5f, 0x66, 0x69, - 0x76, 0x65, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, - 0x1b, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x52, - 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, - 0x01, 0x28, 0x08, 0x42, 0x72, 0xc2, 0x48, 0x6f, 0x0a, 0x6d, 0x0a, 0x23, 0x72, 0x65, 0x70, 0x65, - 0x61, 0x74, 0x65, 0x64, 0x2e, 0x61, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x5f, 0x66, 0x69, - 0x76, 0x65, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, - 0x2d, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x20, - 0x6d, 0x75, 0x73, 0x74, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x61, 0x74, 0x20, 0x6c, 0x65, 0x61, - 0x73, 0x74, 0x20, 0x66, 0x69, 0x76, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x1a, 0x17, - 0x75, 0x69, 0x6e, 0x74, 0x28, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x73, 0x69, 0x7a, 0x65, 0x28, 0x29, - 0x29, 0x20, 0x3e, 0x3d, 0x20, 0x35, 0x75, 0x52, 0x1e, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, - 0x64, 0x41, 0x74, 0x4c, 0x65, 0x61, 0x73, 0x74, 0x46, 0x69, 0x76, 0x65, 0x45, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0xbd, 0x01, 0x0a, 0x1e, 0x6d, 0x61, 0x70, 0x5f, - 0x61, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x5f, 0x66, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x64, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x16, 0x2e, 0x62, 0x75, 0x66, - 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x4d, 0x61, 0x70, 0x52, 0x75, 0x6c, - 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x61, 0xc2, 0x48, 0x5e, 0x0a, 0x5c, - 0x0a, 0x1e, 0x6d, 0x61, 0x70, 0x2e, 0x61, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x5f, 0x66, - 0x69, 0x76, 0x65, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, - 0x12, 0x21, 0x6d, 0x61, 0x70, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, - 0x61, 0x74, 0x20, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x20, 0x66, 0x69, 0x76, 0x65, 0x20, 0x70, 0x61, - 0x69, 0x72, 0x73, 0x1a, 0x17, 0x75, 0x69, 0x6e, 0x74, 0x28, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x73, - 0x69, 0x7a, 0x65, 0x28, 0x29, 0x29, 0x20, 0x3e, 0x3d, 0x20, 0x35, 0x75, 0x52, 0x19, 0x6d, 0x61, - 0x70, 0x41, 0x74, 0x4c, 0x65, 0x61, 0x73, 0x74, 0x46, 0x69, 0x76, 0x65, 0x45, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0xca, 0x01, 0x0a, 0x1e, 0x64, 0x75, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x6f, 0x6f, 0x5f, 0x6c, 0x6f, 0x6e, 0x67, 0x5f, 0x65, 0x64, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1b, 0x2e, 0x62, 0x75, 0x66, - 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x68, - 0xc2, 0x48, 0x65, 0x0a, 0x63, 0x0a, 0x1e, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, - 0x74, 0x6f, 0x6f, 0x5f, 0x6c, 0x6f, 0x6e, 0x67, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x28, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, - 0x63, 0x61, 0x6e, 0x27, 0x74, 0x20, 0x62, 0x65, 0x20, 0x6c, 0x6f, 0x6e, 0x67, 0x65, 0x72, 0x20, - 0x74, 0x68, 0x61, 0x6e, 0x20, 0x31, 0x30, 0x20, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x1a, - 0x17, 0x74, 0x68, 0x69, 0x73, 0x20, 0x3c, 0x3d, 0x20, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x28, 0x27, 0x31, 0x30, 0x73, 0x27, 0x29, 0x52, 0x1a, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x54, 0x6f, 0x6f, 0x4c, 0x6f, 0x6e, 0x67, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x32, 0x30, 0x32, 0x33, 0x3a, 0xd9, 0x01, 0x0a, 0x1f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, - 0x6d, 0x70, 0x5f, 0x69, 0x6e, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x65, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1c, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, - 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, - 0x70, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x74, 0xc2, - 0x48, 0x71, 0x0a, 0x6f, 0x0a, 0x21, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, - 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x16, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, - 0x6d, 0x70, 0x20, 0x6f, 0x75, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x1a, - 0x32, 0x69, 0x6e, 0x74, 0x28, 0x74, 0x68, 0x69, 0x73, 0x29, 0x20, 0x3e, 0x3d, 0x20, 0x31, 0x30, - 0x34, 0x39, 0x35, 0x38, 0x37, 0x32, 0x30, 0x30, 0x20, 0x26, 0x26, 0x20, 0x69, 0x6e, 0x74, 0x28, - 0x74, 0x68, 0x69, 0x73, 0x29, 0x20, 0x3c, 0x3d, 0x20, 0x31, 0x30, 0x38, 0x30, 0x34, 0x33, 0x32, - 0x30, 0x30, 0x30, 0x52, 0x1b, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x49, 0x6e, - 0x52, 0x61, 0x6e, 0x67, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, - 0x42, 0xb8, 0x02, 0x0a, 0x22, 0x63, 0x6f, 0x6d, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, - 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, - 0x65, 0x2e, 0x63, 0x61, 0x73, 0x65, 0x73, 0x42, 0x21, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, - 0x6e, 0x65, 0x64, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x45, 0x64, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x53, 0x67, 0x69, - 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x62, 0x75, 0x66, 0x62, 0x75, 0x69, 0x6c, - 0x64, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, - 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2f, 0x67, - 0x65, 0x6e, 0x2f, 0x62, 0x75, 0x66, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, - 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2f, 0x63, 0x61, 0x73, 0x65, - 0x73, 0xa2, 0x02, 0x04, 0x42, 0x56, 0x43, 0x43, 0xaa, 0x02, 0x1e, 0x42, 0x75, 0x66, 0x2e, 0x56, - 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, - 0x6e, 0x63, 0x65, 0x2e, 0x43, 0x61, 0x73, 0x65, 0x73, 0xca, 0x02, 0x1e, 0x42, 0x75, 0x66, 0x5c, - 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5c, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, - 0x61, 0x6e, 0x63, 0x65, 0x5c, 0x43, 0x61, 0x73, 0x65, 0x73, 0xe2, 0x02, 0x2a, 0x42, 0x75, 0x66, - 0x5c, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5c, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, - 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x5c, 0x43, 0x61, 0x73, 0x65, 0x73, 0x5c, 0x47, 0x50, 0x42, 0x4d, - 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x21, 0x42, 0x75, 0x66, 0x3a, 0x3a, 0x56, - 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, - 0x61, 0x6e, 0x63, 0x65, 0x3a, 0x3a, 0x43, 0x61, 0x73, 0x65, 0x73, 0x62, 0x08, 0x65, 0x64, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x70, 0xe8, 0x07, + 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, + 0x34, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, + 0x76, 0x65, 0x6e, 0x1a, 0x0d, 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x20, 0x3d, 0x3d, + 0x20, 0x30, 0x52, 0x17, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x45, 0x76, 0x65, 0x6e, + 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0x97, 0x01, 0x0a, 0x17, + 0x62, 0x6f, 0x6f, 0x6c, 0x5f, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x17, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, + 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x46, 0xc2, 0x48, 0x43, 0x0a, 0x41, 0x0a, 0x17, + 0x62, 0x6f, 0x6f, 0x6c, 0x2e, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x17, 0x62, 0x6f, 0x6f, 0x6c, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x66, 0x61, 0x6c, 0x73, 0x65, + 0x1a, 0x0d, 0x74, 0x68, 0x69, 0x73, 0x20, 0x3d, 0x3d, 0x20, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, + 0x14, 0x62, 0x6f, 0x6f, 0x6c, 0x46, 0x61, 0x6c, 0x73, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0x8f, 0x02, 0x0a, 0x1e, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, + 0x5f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x65, 0x64, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x19, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x75, + 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0xae, 0x01, 0xc2, 0x48, 0xaa, + 0x01, 0x0a, 0xa7, 0x01, 0x0a, 0x1e, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x32, 0x30, 0x32, 0x33, 0x1a, 0x84, 0x01, 0x21, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x65, 0x73, 0x28, 0x27, 0x5e, 0x28, 0x5b, 0x5e, 0x2f, 0x2e, 0x5d, 0x5b, 0x5e, 0x2f, + 0x5d, 0x3f, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x5b, 0x5e, 0x2f, 0x2e, 0x5d, 0x7c, 0x5b, 0x5e, 0x2f, + 0x5d, 0x7b, 0x33, 0x2c, 0x7d, 0x29, 0x28, 0x2f, 0x28, 0x5b, 0x5e, 0x2f, 0x2e, 0x5d, 0x5b, 0x5e, + 0x2f, 0x5d, 0x3f, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x5b, 0x5e, 0x2f, 0x2e, 0x5d, 0x7c, 0x5b, 0x5e, + 0x2f, 0x5d, 0x7b, 0x33, 0x2c, 0x7d, 0x29, 0x29, 0x2a, 0x24, 0x27, 0x29, 0x20, 0x3f, 0x20, 0x27, + 0x6e, 0x6f, 0x74, 0x20, 0x61, 0x20, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x20, 0x70, 0x61, 0x74, 0x68, + 0x3a, 0x20, 0x60, 0x25, 0x73, 0x60, 0x27, 0x2e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x28, 0x5b, + 0x74, 0x68, 0x69, 0x73, 0x5d, 0x29, 0x20, 0x3a, 0x20, 0x27, 0x27, 0x52, 0x1a, 0x73, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x50, 0x61, 0x74, 0x68, 0x45, 0x64, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0x93, 0x02, 0x0a, 0x1d, 0x62, 0x79, 0x74, 0x65, + 0x73, 0x5f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x65, 0x64, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x18, 0x2e, 0x62, 0x75, 0x66, 0x2e, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x42, 0x79, 0x74, 0x65, 0x73, 0x52, 0x75, + 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0xb5, 0x01, 0xc2, 0x48, 0xb1, + 0x01, 0x0a, 0xae, 0x01, 0x0a, 0x1d, 0x62, 0x79, 0x74, 0x65, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x69, + 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, + 0x30, 0x32, 0x33, 0x1a, 0x8c, 0x01, 0x21, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x28, 0x74, 0x68, + 0x69, 0x73, 0x29, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x28, 0x27, 0x5e, 0x28, 0x5b, + 0x5e, 0x2f, 0x2e, 0x5d, 0x5b, 0x5e, 0x2f, 0x5d, 0x3f, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x5b, 0x5e, + 0x2f, 0x2e, 0x5d, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x7b, 0x33, 0x2c, 0x7d, 0x29, 0x28, 0x2f, 0x28, + 0x5b, 0x5e, 0x2f, 0x2e, 0x5d, 0x5b, 0x5e, 0x2f, 0x5d, 0x3f, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x5b, + 0x5e, 0x2f, 0x2e, 0x5d, 0x7c, 0x5b, 0x5e, 0x2f, 0x5d, 0x7b, 0x33, 0x2c, 0x7d, 0x29, 0x29, 0x2a, + 0x24, 0x27, 0x29, 0x20, 0x3f, 0x20, 0x27, 0x6e, 0x6f, 0x74, 0x20, 0x61, 0x20, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x20, 0x70, 0x61, 0x74, 0x68, 0x3a, 0x20, 0x60, 0x25, 0x73, 0x60, 0x27, 0x2e, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x28, 0x5b, 0x74, 0x68, 0x69, 0x73, 0x5d, 0x29, 0x20, 0x3a, 0x20, + 0x27, 0x27, 0x52, 0x19, 0x62, 0x79, 0x74, 0x65, 0x73, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x50, 0x61, + 0x74, 0x68, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0xa3, 0x01, + 0x0a, 0x1a, 0x65, 0x6e, 0x75, 0x6d, 0x5f, 0x6e, 0x6f, 0x6e, 0x5f, 0x7a, 0x65, 0x72, 0x6f, 0x5f, + 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x17, 0x2e, 0x62, + 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x45, 0x6e, 0x75, 0x6d, + 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x4d, 0xc2, 0x48, + 0x4a, 0x0a, 0x48, 0x0a, 0x1a, 0x65, 0x6e, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x6e, 0x5f, 0x7a, 0x65, + 0x72, 0x6f, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, + 0x1a, 0x65, 0x6e, 0x75, 0x6d, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, + 0x6f, 0x74, 0x20, 0x6e, 0x6f, 0x6e, 0x2d, 0x7a, 0x65, 0x72, 0x6f, 0x1a, 0x0e, 0x69, 0x6e, 0x74, + 0x28, 0x74, 0x68, 0x69, 0x73, 0x29, 0x20, 0x21, 0x3d, 0x20, 0x30, 0x52, 0x16, 0x65, 0x6e, 0x75, + 0x6d, 0x4e, 0x6f, 0x6e, 0x5a, 0x65, 0x72, 0x6f, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, + 0x30, 0x32, 0x33, 0x3a, 0xdd, 0x01, 0x0a, 0x23, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x5f, 0x61, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x5f, 0x66, 0x69, 0x76, 0x65, 0x5f, 0x65, + 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1b, 0x2e, 0x62, 0x75, + 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x52, 0x65, 0x70, 0x65, 0x61, + 0x74, 0x65, 0x64, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, + 0x72, 0xc2, 0x48, 0x6f, 0x0a, 0x6d, 0x0a, 0x23, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x2e, 0x61, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x5f, 0x66, 0x69, 0x76, 0x65, 0x2e, 0x65, + 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x2d, 0x72, 0x65, 0x70, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x20, 0x6d, 0x75, 0x73, 0x74, + 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x61, 0x74, 0x20, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x20, 0x66, + 0x69, 0x76, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x1a, 0x17, 0x75, 0x69, 0x6e, 0x74, + 0x28, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x73, 0x69, 0x7a, 0x65, 0x28, 0x29, 0x29, 0x20, 0x3e, 0x3d, + 0x20, 0x35, 0x75, 0x52, 0x1e, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x4c, + 0x65, 0x61, 0x73, 0x74, 0x46, 0x69, 0x76, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, + 0x30, 0x32, 0x33, 0x3a, 0xbd, 0x01, 0x0a, 0x1e, 0x6d, 0x61, 0x70, 0x5f, 0x61, 0x74, 0x5f, 0x6c, + 0x65, 0x61, 0x73, 0x74, 0x5f, 0x66, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x16, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x4d, 0x61, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x8a, + 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x61, 0xc2, 0x48, 0x5e, 0x0a, 0x5c, 0x0a, 0x1e, 0x6d, 0x61, + 0x70, 0x2e, 0x61, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x5f, 0x66, 0x69, 0x76, 0x65, 0x2e, + 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x21, 0x6d, 0x61, + 0x70, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x61, 0x74, 0x20, 0x6c, + 0x65, 0x61, 0x73, 0x74, 0x20, 0x66, 0x69, 0x76, 0x65, 0x20, 0x70, 0x61, 0x69, 0x72, 0x73, 0x1a, + 0x17, 0x75, 0x69, 0x6e, 0x74, 0x28, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x73, 0x69, 0x7a, 0x65, 0x28, + 0x29, 0x29, 0x20, 0x3e, 0x3d, 0x20, 0x35, 0x75, 0x52, 0x19, 0x6d, 0x61, 0x70, 0x41, 0x74, 0x4c, + 0x65, 0x61, 0x73, 0x74, 0x46, 0x69, 0x76, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, + 0x30, 0x32, 0x33, 0x3a, 0xca, 0x01, 0x0a, 0x1e, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x74, 0x6f, 0x6f, 0x5f, 0x6c, 0x6f, 0x6e, 0x67, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1b, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x75, + 0x6c, 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x68, 0xc2, 0x48, 0x65, 0x0a, + 0x63, 0x0a, 0x1e, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x74, 0x6f, 0x6f, 0x5f, + 0x6c, 0x6f, 0x6e, 0x67, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, + 0x33, 0x12, 0x28, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x63, 0x61, 0x6e, 0x27, + 0x74, 0x20, 0x62, 0x65, 0x20, 0x6c, 0x6f, 0x6e, 0x67, 0x65, 0x72, 0x20, 0x74, 0x68, 0x61, 0x6e, + 0x20, 0x31, 0x30, 0x20, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x1a, 0x17, 0x74, 0x68, 0x69, + 0x73, 0x20, 0x3c, 0x3d, 0x20, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x27, 0x31, + 0x30, 0x73, 0x27, 0x29, 0x52, 0x1a, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x6f, + 0x6f, 0x4c, 0x6f, 0x6e, 0x67, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, + 0x3a, 0xd9, 0x01, 0x0a, 0x1f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x5f, 0x69, + 0x6e, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x32, 0x30, 0x32, 0x33, 0x12, 0x1c, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, + 0x61, 0x74, 0x65, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x75, 0x6c, + 0x65, 0x73, 0x18, 0x8a, 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x74, 0xc2, 0x48, 0x71, 0x0a, 0x6f, + 0x0a, 0x21, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x74, 0x69, 0x6d, 0x65, + 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, + 0x30, 0x32, 0x33, 0x12, 0x16, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x20, 0x6f, + 0x75, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x1a, 0x32, 0x69, 0x6e, 0x74, + 0x28, 0x74, 0x68, 0x69, 0x73, 0x29, 0x20, 0x3e, 0x3d, 0x20, 0x31, 0x30, 0x34, 0x39, 0x35, 0x38, + 0x37, 0x32, 0x30, 0x30, 0x20, 0x26, 0x26, 0x20, 0x69, 0x6e, 0x74, 0x28, 0x74, 0x68, 0x69, 0x73, + 0x29, 0x20, 0x3c, 0x3d, 0x20, 0x31, 0x30, 0x38, 0x30, 0x34, 0x33, 0x32, 0x30, 0x30, 0x30, 0x52, + 0x1b, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x49, 0x6e, 0x52, 0x61, 0x6e, 0x67, + 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x42, 0xb8, 0x02, 0x0a, + 0x22, 0x63, 0x6f, 0x6d, 0x2e, 0x62, 0x75, 0x66, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x63, 0x61, + 0x73, 0x65, 0x73, 0x42, 0x21, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, + 0x75, 0x6c, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x53, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, + 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x62, 0x75, 0x66, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x2f, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x74, 0x6f, 0x6f, 0x6c, + 0x73, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x62, + 0x75, 0x66, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x63, 0x6f, 0x6e, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2f, 0x63, 0x61, 0x73, 0x65, 0x73, 0xa2, 0x02, 0x04, + 0x42, 0x56, 0x43, 0x43, 0xaa, 0x02, 0x1e, 0x42, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, + 0x61, 0x74, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x2e, + 0x43, 0x61, 0x73, 0x65, 0x73, 0xca, 0x02, 0x1e, 0x42, 0x75, 0x66, 0x5c, 0x56, 0x61, 0x6c, 0x69, + 0x64, 0x61, 0x74, 0x65, 0x5c, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, + 0x5c, 0x43, 0x61, 0x73, 0x65, 0x73, 0xe2, 0x02, 0x2a, 0x42, 0x75, 0x66, 0x5c, 0x56, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x65, 0x5c, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, + 0x65, 0x5c, 0x43, 0x61, 0x73, 0x65, 0x73, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0xea, 0x02, 0x21, 0x42, 0x75, 0x66, 0x3a, 0x3a, 0x56, 0x61, 0x6c, 0x69, 0x64, + 0x61, 0x74, 0x65, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, + 0x3a, 0x3a, 0x43, 0x61, 0x73, 0x65, 0x73, 0x62, 0x08, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x70, 0xe8, 0x07, } var ( @@ -2374,115 +2862,133 @@ func file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_r } var file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_enumTypes = make([]protoimpl.EnumInfo, 1) -var file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes = make([]protoimpl.MessageInfo, 33) +var file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes = make([]protoimpl.MessageInfo, 42) var file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_goTypes = []any{ - (PredefinedEnumRuleEdition2023_EnumEdition2023)(0), // 0: buf.validate.conformance.cases.PredefinedEnumRuleEdition2023.EnumEdition2023 - (*PredefinedFloatRuleEdition2023)(nil), // 1: buf.validate.conformance.cases.PredefinedFloatRuleEdition2023 - (*PredefinedDoubleRuleEdition2023)(nil), // 2: buf.validate.conformance.cases.PredefinedDoubleRuleEdition2023 - (*PredefinedInt32RuleEdition2023)(nil), // 3: buf.validate.conformance.cases.PredefinedInt32RuleEdition2023 - (*PredefinedInt64RuleEdition2023)(nil), // 4: buf.validate.conformance.cases.PredefinedInt64RuleEdition2023 - (*PredefinedUInt32RuleEdition2023)(nil), // 5: buf.validate.conformance.cases.PredefinedUInt32RuleEdition2023 - (*PredefinedUInt64RuleEdition2023)(nil), // 6: buf.validate.conformance.cases.PredefinedUInt64RuleEdition2023 - (*PredefinedSInt32RuleEdition2023)(nil), // 7: buf.validate.conformance.cases.PredefinedSInt32RuleEdition2023 - (*PredefinedSInt64RuleEdition2023)(nil), // 8: buf.validate.conformance.cases.PredefinedSInt64RuleEdition2023 - (*PredefinedFixed32RuleEdition2023)(nil), // 9: buf.validate.conformance.cases.PredefinedFixed32RuleEdition2023 - (*PredefinedFixed64RuleEdition2023)(nil), // 10: buf.validate.conformance.cases.PredefinedFixed64RuleEdition2023 - (*PredefinedSFixed32RuleEdition2023)(nil), // 11: buf.validate.conformance.cases.PredefinedSFixed32RuleEdition2023 - (*PredefinedSFixed64RuleEdition2023)(nil), // 12: buf.validate.conformance.cases.PredefinedSFixed64RuleEdition2023 - (*PredefinedBoolRuleEdition2023)(nil), // 13: buf.validate.conformance.cases.PredefinedBoolRuleEdition2023 - (*PredefinedStringRuleEdition2023)(nil), // 14: buf.validate.conformance.cases.PredefinedStringRuleEdition2023 - (*PredefinedBytesRuleEdition2023)(nil), // 15: buf.validate.conformance.cases.PredefinedBytesRuleEdition2023 - (*PredefinedEnumRuleEdition2023)(nil), // 16: buf.validate.conformance.cases.PredefinedEnumRuleEdition2023 - (*PredefinedRepeatedRuleEdition2023)(nil), // 17: buf.validate.conformance.cases.PredefinedRepeatedRuleEdition2023 - (*PredefinedMapRuleEdition2023)(nil), // 18: buf.validate.conformance.cases.PredefinedMapRuleEdition2023 - (*PredefinedDurationRuleEdition2023)(nil), // 19: buf.validate.conformance.cases.PredefinedDurationRuleEdition2023 - (*PredefinedTimestampRuleEdition2023)(nil), // 20: buf.validate.conformance.cases.PredefinedTimestampRuleEdition2023 - (*PredefinedWrappedFloatRuleEdition2023)(nil), // 21: buf.validate.conformance.cases.PredefinedWrappedFloatRuleEdition2023 - (*PredefinedWrappedDoubleRuleEdition2023)(nil), // 22: buf.validate.conformance.cases.PredefinedWrappedDoubleRuleEdition2023 - (*PredefinedWrappedInt32RuleEdition2023)(nil), // 23: buf.validate.conformance.cases.PredefinedWrappedInt32RuleEdition2023 - (*PredefinedWrappedInt64RuleEdition2023)(nil), // 24: buf.validate.conformance.cases.PredefinedWrappedInt64RuleEdition2023 - (*PredefinedWrappedUInt32RuleEdition2023)(nil), // 25: buf.validate.conformance.cases.PredefinedWrappedUInt32RuleEdition2023 - (*PredefinedWrappedUInt64RuleEdition2023)(nil), // 26: buf.validate.conformance.cases.PredefinedWrappedUInt64RuleEdition2023 - (*PredefinedWrappedBoolRuleEdition2023)(nil), // 27: buf.validate.conformance.cases.PredefinedWrappedBoolRuleEdition2023 - (*PredefinedWrappedStringRuleEdition2023)(nil), // 28: buf.validate.conformance.cases.PredefinedWrappedStringRuleEdition2023 - (*PredefinedWrappedBytesRuleEdition2023)(nil), // 29: buf.validate.conformance.cases.PredefinedWrappedBytesRuleEdition2023 - (*PredefinedAndCustomRuleEdition2023)(nil), // 30: buf.validate.conformance.cases.PredefinedAndCustomRuleEdition2023 - (*StandardPredefinedAndCustomRuleEdition2023)(nil), // 31: buf.validate.conformance.cases.StandardPredefinedAndCustomRuleEdition2023 - nil, // 32: buf.validate.conformance.cases.PredefinedMapRuleEdition2023.ValEntry - (*PredefinedAndCustomRuleEdition2023_Nested)(nil), // 33: buf.validate.conformance.cases.PredefinedAndCustomRuleEdition2023.Nested - (*durationpb.Duration)(nil), // 34: google.protobuf.Duration - (*timestamppb.Timestamp)(nil), // 35: google.protobuf.Timestamp - (*wrapperspb.FloatValue)(nil), // 36: google.protobuf.FloatValue - (*wrapperspb.DoubleValue)(nil), // 37: google.protobuf.DoubleValue - (*wrapperspb.Int32Value)(nil), // 38: google.protobuf.Int32Value - (*wrapperspb.Int64Value)(nil), // 39: google.protobuf.Int64Value - (*wrapperspb.UInt32Value)(nil), // 40: google.protobuf.UInt32Value - (*wrapperspb.UInt64Value)(nil), // 41: google.protobuf.UInt64Value - (*wrapperspb.BoolValue)(nil), // 42: google.protobuf.BoolValue - (*wrapperspb.StringValue)(nil), // 43: google.protobuf.StringValue - (*wrapperspb.BytesValue)(nil), // 44: google.protobuf.BytesValue - (*validate.FloatRules)(nil), // 45: buf.validate.FloatRules - (*validate.DoubleRules)(nil), // 46: buf.validate.DoubleRules - (*validate.Int32Rules)(nil), // 47: buf.validate.Int32Rules - (*validate.Int64Rules)(nil), // 48: buf.validate.Int64Rules - (*validate.UInt32Rules)(nil), // 49: buf.validate.UInt32Rules - (*validate.UInt64Rules)(nil), // 50: buf.validate.UInt64Rules - (*validate.SInt32Rules)(nil), // 51: buf.validate.SInt32Rules - (*validate.SInt64Rules)(nil), // 52: buf.validate.SInt64Rules - (*validate.Fixed32Rules)(nil), // 53: buf.validate.Fixed32Rules - (*validate.Fixed64Rules)(nil), // 54: buf.validate.Fixed64Rules - (*validate.SFixed32Rules)(nil), // 55: buf.validate.SFixed32Rules - (*validate.SFixed64Rules)(nil), // 56: buf.validate.SFixed64Rules - (*validate.BoolRules)(nil), // 57: buf.validate.BoolRules - (*validate.StringRules)(nil), // 58: buf.validate.StringRules - (*validate.BytesRules)(nil), // 59: buf.validate.BytesRules - (*validate.EnumRules)(nil), // 60: buf.validate.EnumRules - (*validate.RepeatedRules)(nil), // 61: buf.validate.RepeatedRules - (*validate.MapRules)(nil), // 62: buf.validate.MapRules - (*validate.DurationRules)(nil), // 63: buf.validate.DurationRules - (*validate.TimestampRules)(nil), // 64: buf.validate.TimestampRules + (PredefinedEnumRuleEdition2023_EnumEdition2023)(0), // 0: buf.validate.conformance.cases.PredefinedEnumRuleEdition2023.EnumEdition2023 + (*PredefinedFloatRuleEdition2023)(nil), // 1: buf.validate.conformance.cases.PredefinedFloatRuleEdition2023 + (*PredefinedDoubleRuleEdition2023)(nil), // 2: buf.validate.conformance.cases.PredefinedDoubleRuleEdition2023 + (*PredefinedInt32RuleEdition2023)(nil), // 3: buf.validate.conformance.cases.PredefinedInt32RuleEdition2023 + (*PredefinedInt64RuleEdition2023)(nil), // 4: buf.validate.conformance.cases.PredefinedInt64RuleEdition2023 + (*PredefinedUInt32RuleEdition2023)(nil), // 5: buf.validate.conformance.cases.PredefinedUInt32RuleEdition2023 + (*PredefinedUInt64RuleEdition2023)(nil), // 6: buf.validate.conformance.cases.PredefinedUInt64RuleEdition2023 + (*PredefinedSInt32RuleEdition2023)(nil), // 7: buf.validate.conformance.cases.PredefinedSInt32RuleEdition2023 + (*PredefinedSInt64RuleEdition2023)(nil), // 8: buf.validate.conformance.cases.PredefinedSInt64RuleEdition2023 + (*PredefinedFixed32RuleEdition2023)(nil), // 9: buf.validate.conformance.cases.PredefinedFixed32RuleEdition2023 + (*PredefinedFixed64RuleEdition2023)(nil), // 10: buf.validate.conformance.cases.PredefinedFixed64RuleEdition2023 + (*PredefinedSFixed32RuleEdition2023)(nil), // 11: buf.validate.conformance.cases.PredefinedSFixed32RuleEdition2023 + (*PredefinedSFixed64RuleEdition2023)(nil), // 12: buf.validate.conformance.cases.PredefinedSFixed64RuleEdition2023 + (*PredefinedBoolRuleEdition2023)(nil), // 13: buf.validate.conformance.cases.PredefinedBoolRuleEdition2023 + (*PredefinedStringRuleEdition2023)(nil), // 14: buf.validate.conformance.cases.PredefinedStringRuleEdition2023 + (*PredefinedBytesRuleEdition2023)(nil), // 15: buf.validate.conformance.cases.PredefinedBytesRuleEdition2023 + (*PredefinedEnumRuleEdition2023)(nil), // 16: buf.validate.conformance.cases.PredefinedEnumRuleEdition2023 + (*PredefinedRepeatedRuleEdition2023)(nil), // 17: buf.validate.conformance.cases.PredefinedRepeatedRuleEdition2023 + (*PredefinedMapRuleEdition2023)(nil), // 18: buf.validate.conformance.cases.PredefinedMapRuleEdition2023 + (*PredefinedDurationRuleEdition2023)(nil), // 19: buf.validate.conformance.cases.PredefinedDurationRuleEdition2023 + (*PredefinedTimestampRuleEdition2023)(nil), // 20: buf.validate.conformance.cases.PredefinedTimestampRuleEdition2023 + (*PredefinedWrappedFloatRuleEdition2023)(nil), // 21: buf.validate.conformance.cases.PredefinedWrappedFloatRuleEdition2023 + (*PredefinedWrappedDoubleRuleEdition2023)(nil), // 22: buf.validate.conformance.cases.PredefinedWrappedDoubleRuleEdition2023 + (*PredefinedWrappedInt32RuleEdition2023)(nil), // 23: buf.validate.conformance.cases.PredefinedWrappedInt32RuleEdition2023 + (*PredefinedWrappedInt64RuleEdition2023)(nil), // 24: buf.validate.conformance.cases.PredefinedWrappedInt64RuleEdition2023 + (*PredefinedWrappedUInt32RuleEdition2023)(nil), // 25: buf.validate.conformance.cases.PredefinedWrappedUInt32RuleEdition2023 + (*PredefinedWrappedUInt64RuleEdition2023)(nil), // 26: buf.validate.conformance.cases.PredefinedWrappedUInt64RuleEdition2023 + (*PredefinedWrappedBoolRuleEdition2023)(nil), // 27: buf.validate.conformance.cases.PredefinedWrappedBoolRuleEdition2023 + (*PredefinedWrappedStringRuleEdition2023)(nil), // 28: buf.validate.conformance.cases.PredefinedWrappedStringRuleEdition2023 + (*PredefinedWrappedBytesRuleEdition2023)(nil), // 29: buf.validate.conformance.cases.PredefinedWrappedBytesRuleEdition2023 + (*PredefinedRepeatedWrappedFloatRuleEdition2023)(nil), // 30: buf.validate.conformance.cases.PredefinedRepeatedWrappedFloatRuleEdition2023 + (*PredefinedRepeatedWrappedDoubleRuleEdition2023)(nil), // 31: buf.validate.conformance.cases.PredefinedRepeatedWrappedDoubleRuleEdition2023 + (*PredefinedRepeatedWrappedInt32RuleEdition2023)(nil), // 32: buf.validate.conformance.cases.PredefinedRepeatedWrappedInt32RuleEdition2023 + (*PredefinedRepeatedWrappedInt64RuleEdition2023)(nil), // 33: buf.validate.conformance.cases.PredefinedRepeatedWrappedInt64RuleEdition2023 + (*PredefinedRepeatedWrappedUInt32RuleEdition2023)(nil), // 34: buf.validate.conformance.cases.PredefinedRepeatedWrappedUInt32RuleEdition2023 + (*PredefinedRepeatedWrappedUInt64RuleEdition2023)(nil), // 35: buf.validate.conformance.cases.PredefinedRepeatedWrappedUInt64RuleEdition2023 + (*PredefinedRepeatedWrappedBoolRuleEdition2023)(nil), // 36: buf.validate.conformance.cases.PredefinedRepeatedWrappedBoolRuleEdition2023 + (*PredefinedRepeatedWrappedStringRuleEdition2023)(nil), // 37: buf.validate.conformance.cases.PredefinedRepeatedWrappedStringRuleEdition2023 + (*PredefinedRepeatedWrappedBytesRuleEdition2023)(nil), // 38: buf.validate.conformance.cases.PredefinedRepeatedWrappedBytesRuleEdition2023 + (*PredefinedAndCustomRuleEdition2023)(nil), // 39: buf.validate.conformance.cases.PredefinedAndCustomRuleEdition2023 + (*StandardPredefinedAndCustomRuleEdition2023)(nil), // 40: buf.validate.conformance.cases.StandardPredefinedAndCustomRuleEdition2023 + nil, // 41: buf.validate.conformance.cases.PredefinedMapRuleEdition2023.ValEntry + (*PredefinedAndCustomRuleEdition2023_Nested)(nil), // 42: buf.validate.conformance.cases.PredefinedAndCustomRuleEdition2023.Nested + (*durationpb.Duration)(nil), // 43: google.protobuf.Duration + (*timestamppb.Timestamp)(nil), // 44: google.protobuf.Timestamp + (*wrapperspb.FloatValue)(nil), // 45: google.protobuf.FloatValue + (*wrapperspb.DoubleValue)(nil), // 46: google.protobuf.DoubleValue + (*wrapperspb.Int32Value)(nil), // 47: google.protobuf.Int32Value + (*wrapperspb.Int64Value)(nil), // 48: google.protobuf.Int64Value + (*wrapperspb.UInt32Value)(nil), // 49: google.protobuf.UInt32Value + (*wrapperspb.UInt64Value)(nil), // 50: google.protobuf.UInt64Value + (*wrapperspb.BoolValue)(nil), // 51: google.protobuf.BoolValue + (*wrapperspb.StringValue)(nil), // 52: google.protobuf.StringValue + (*wrapperspb.BytesValue)(nil), // 53: google.protobuf.BytesValue + (*validate.FloatRules)(nil), // 54: buf.validate.FloatRules + (*validate.DoubleRules)(nil), // 55: buf.validate.DoubleRules + (*validate.Int32Rules)(nil), // 56: buf.validate.Int32Rules + (*validate.Int64Rules)(nil), // 57: buf.validate.Int64Rules + (*validate.UInt32Rules)(nil), // 58: buf.validate.UInt32Rules + (*validate.UInt64Rules)(nil), // 59: buf.validate.UInt64Rules + (*validate.SInt32Rules)(nil), // 60: buf.validate.SInt32Rules + (*validate.SInt64Rules)(nil), // 61: buf.validate.SInt64Rules + (*validate.Fixed32Rules)(nil), // 62: buf.validate.Fixed32Rules + (*validate.Fixed64Rules)(nil), // 63: buf.validate.Fixed64Rules + (*validate.SFixed32Rules)(nil), // 64: buf.validate.SFixed32Rules + (*validate.SFixed64Rules)(nil), // 65: buf.validate.SFixed64Rules + (*validate.BoolRules)(nil), // 66: buf.validate.BoolRules + (*validate.StringRules)(nil), // 67: buf.validate.StringRules + (*validate.BytesRules)(nil), // 68: buf.validate.BytesRules + (*validate.EnumRules)(nil), // 69: buf.validate.EnumRules + (*validate.RepeatedRules)(nil), // 70: buf.validate.RepeatedRules + (*validate.MapRules)(nil), // 71: buf.validate.MapRules + (*validate.DurationRules)(nil), // 72: buf.validate.DurationRules + (*validate.TimestampRules)(nil), // 73: buf.validate.TimestampRules } var file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_depIdxs = []int32{ 0, // 0: buf.validate.conformance.cases.PredefinedEnumRuleEdition2023.val:type_name -> buf.validate.conformance.cases.PredefinedEnumRuleEdition2023.EnumEdition2023 - 32, // 1: buf.validate.conformance.cases.PredefinedMapRuleEdition2023.val:type_name -> buf.validate.conformance.cases.PredefinedMapRuleEdition2023.ValEntry - 34, // 2: buf.validate.conformance.cases.PredefinedDurationRuleEdition2023.val:type_name -> google.protobuf.Duration - 35, // 3: buf.validate.conformance.cases.PredefinedTimestampRuleEdition2023.val:type_name -> google.protobuf.Timestamp - 36, // 4: buf.validate.conformance.cases.PredefinedWrappedFloatRuleEdition2023.val:type_name -> google.protobuf.FloatValue - 37, // 5: buf.validate.conformance.cases.PredefinedWrappedDoubleRuleEdition2023.val:type_name -> google.protobuf.DoubleValue - 38, // 6: buf.validate.conformance.cases.PredefinedWrappedInt32RuleEdition2023.val:type_name -> google.protobuf.Int32Value - 39, // 7: buf.validate.conformance.cases.PredefinedWrappedInt64RuleEdition2023.val:type_name -> google.protobuf.Int64Value - 40, // 8: buf.validate.conformance.cases.PredefinedWrappedUInt32RuleEdition2023.val:type_name -> google.protobuf.UInt32Value - 41, // 9: buf.validate.conformance.cases.PredefinedWrappedUInt64RuleEdition2023.val:type_name -> google.protobuf.UInt64Value - 42, // 10: buf.validate.conformance.cases.PredefinedWrappedBoolRuleEdition2023.val:type_name -> google.protobuf.BoolValue - 43, // 11: buf.validate.conformance.cases.PredefinedWrappedStringRuleEdition2023.val:type_name -> google.protobuf.StringValue - 44, // 12: buf.validate.conformance.cases.PredefinedWrappedBytesRuleEdition2023.val:type_name -> google.protobuf.BytesValue - 33, // 13: buf.validate.conformance.cases.PredefinedAndCustomRuleEdition2023.b:type_name -> buf.validate.conformance.cases.PredefinedAndCustomRuleEdition2023.Nested - 45, // 14: buf.validate.conformance.cases.float_abs_range_edition_2023:extendee -> buf.validate.FloatRules - 46, // 15: buf.validate.conformance.cases.double_abs_range_edition_2023:extendee -> buf.validate.DoubleRules - 47, // 16: buf.validate.conformance.cases.int32_abs_in_edition_2023:extendee -> buf.validate.Int32Rules - 48, // 17: buf.validate.conformance.cases.int64_abs_in_edition_2023:extendee -> buf.validate.Int64Rules - 49, // 18: buf.validate.conformance.cases.uint32_even_edition_2023:extendee -> buf.validate.UInt32Rules - 50, // 19: buf.validate.conformance.cases.uint64_even_edition_2023:extendee -> buf.validate.UInt64Rules - 51, // 20: buf.validate.conformance.cases.sint32_even_edition_2023:extendee -> buf.validate.SInt32Rules - 52, // 21: buf.validate.conformance.cases.sint64_even_edition_2023:extendee -> buf.validate.SInt64Rules - 53, // 22: buf.validate.conformance.cases.fixed32_even_edition_2023:extendee -> buf.validate.Fixed32Rules - 54, // 23: buf.validate.conformance.cases.fixed64_even_edition_2023:extendee -> buf.validate.Fixed64Rules - 55, // 24: buf.validate.conformance.cases.sfixed32_even_edition_2023:extendee -> buf.validate.SFixed32Rules - 56, // 25: buf.validate.conformance.cases.sfixed64_even_edition_2023:extendee -> buf.validate.SFixed64Rules - 57, // 26: buf.validate.conformance.cases.bool_false_edition_2023:extendee -> buf.validate.BoolRules - 58, // 27: buf.validate.conformance.cases.string_valid_path_edition_2023:extendee -> buf.validate.StringRules - 59, // 28: buf.validate.conformance.cases.bytes_valid_path_edition_2023:extendee -> buf.validate.BytesRules - 60, // 29: buf.validate.conformance.cases.enum_non_zero_edition_2023:extendee -> buf.validate.EnumRules - 61, // 30: buf.validate.conformance.cases.repeated_at_least_five_edition_2023:extendee -> buf.validate.RepeatedRules - 62, // 31: buf.validate.conformance.cases.map_at_least_five_edition_2023:extendee -> buf.validate.MapRules - 63, // 32: buf.validate.conformance.cases.duration_too_long_edition_2023:extendee -> buf.validate.DurationRules - 64, // 33: buf.validate.conformance.cases.timestamp_in_range_edition_2023:extendee -> buf.validate.TimestampRules - 39, // 34: buf.validate.conformance.cases.int64_abs_in_edition_2023:type_name -> google.protobuf.Int64Value - 35, // [35:35] is the sub-list for method output_type - 35, // [35:35] is the sub-list for method input_type - 34, // [34:35] is the sub-list for extension type_name - 14, // [14:34] is the sub-list for extension extendee - 0, // [0:14] is the sub-list for field type_name + 41, // 1: buf.validate.conformance.cases.PredefinedMapRuleEdition2023.val:type_name -> buf.validate.conformance.cases.PredefinedMapRuleEdition2023.ValEntry + 43, // 2: buf.validate.conformance.cases.PredefinedDurationRuleEdition2023.val:type_name -> google.protobuf.Duration + 44, // 3: buf.validate.conformance.cases.PredefinedTimestampRuleEdition2023.val:type_name -> google.protobuf.Timestamp + 45, // 4: buf.validate.conformance.cases.PredefinedWrappedFloatRuleEdition2023.val:type_name -> google.protobuf.FloatValue + 46, // 5: buf.validate.conformance.cases.PredefinedWrappedDoubleRuleEdition2023.val:type_name -> google.protobuf.DoubleValue + 47, // 6: buf.validate.conformance.cases.PredefinedWrappedInt32RuleEdition2023.val:type_name -> google.protobuf.Int32Value + 48, // 7: buf.validate.conformance.cases.PredefinedWrappedInt64RuleEdition2023.val:type_name -> google.protobuf.Int64Value + 49, // 8: buf.validate.conformance.cases.PredefinedWrappedUInt32RuleEdition2023.val:type_name -> google.protobuf.UInt32Value + 50, // 9: buf.validate.conformance.cases.PredefinedWrappedUInt64RuleEdition2023.val:type_name -> google.protobuf.UInt64Value + 51, // 10: buf.validate.conformance.cases.PredefinedWrappedBoolRuleEdition2023.val:type_name -> google.protobuf.BoolValue + 52, // 11: buf.validate.conformance.cases.PredefinedWrappedStringRuleEdition2023.val:type_name -> google.protobuf.StringValue + 53, // 12: buf.validate.conformance.cases.PredefinedWrappedBytesRuleEdition2023.val:type_name -> google.protobuf.BytesValue + 45, // 13: buf.validate.conformance.cases.PredefinedRepeatedWrappedFloatRuleEdition2023.val:type_name -> google.protobuf.FloatValue + 46, // 14: buf.validate.conformance.cases.PredefinedRepeatedWrappedDoubleRuleEdition2023.val:type_name -> google.protobuf.DoubleValue + 47, // 15: buf.validate.conformance.cases.PredefinedRepeatedWrappedInt32RuleEdition2023.val:type_name -> google.protobuf.Int32Value + 48, // 16: buf.validate.conformance.cases.PredefinedRepeatedWrappedInt64RuleEdition2023.val:type_name -> google.protobuf.Int64Value + 49, // 17: buf.validate.conformance.cases.PredefinedRepeatedWrappedUInt32RuleEdition2023.val:type_name -> google.protobuf.UInt32Value + 50, // 18: buf.validate.conformance.cases.PredefinedRepeatedWrappedUInt64RuleEdition2023.val:type_name -> google.protobuf.UInt64Value + 51, // 19: buf.validate.conformance.cases.PredefinedRepeatedWrappedBoolRuleEdition2023.val:type_name -> google.protobuf.BoolValue + 52, // 20: buf.validate.conformance.cases.PredefinedRepeatedWrappedStringRuleEdition2023.val:type_name -> google.protobuf.StringValue + 53, // 21: buf.validate.conformance.cases.PredefinedRepeatedWrappedBytesRuleEdition2023.val:type_name -> google.protobuf.BytesValue + 42, // 22: buf.validate.conformance.cases.PredefinedAndCustomRuleEdition2023.b:type_name -> buf.validate.conformance.cases.PredefinedAndCustomRuleEdition2023.Nested + 54, // 23: buf.validate.conformance.cases.float_abs_range_edition_2023:extendee -> buf.validate.FloatRules + 55, // 24: buf.validate.conformance.cases.double_abs_range_edition_2023:extendee -> buf.validate.DoubleRules + 56, // 25: buf.validate.conformance.cases.int32_abs_in_edition_2023:extendee -> buf.validate.Int32Rules + 57, // 26: buf.validate.conformance.cases.int64_abs_in_edition_2023:extendee -> buf.validate.Int64Rules + 58, // 27: buf.validate.conformance.cases.uint32_even_edition_2023:extendee -> buf.validate.UInt32Rules + 59, // 28: buf.validate.conformance.cases.uint64_even_edition_2023:extendee -> buf.validate.UInt64Rules + 60, // 29: buf.validate.conformance.cases.sint32_even_edition_2023:extendee -> buf.validate.SInt32Rules + 61, // 30: buf.validate.conformance.cases.sint64_even_edition_2023:extendee -> buf.validate.SInt64Rules + 62, // 31: buf.validate.conformance.cases.fixed32_even_edition_2023:extendee -> buf.validate.Fixed32Rules + 63, // 32: buf.validate.conformance.cases.fixed64_even_edition_2023:extendee -> buf.validate.Fixed64Rules + 64, // 33: buf.validate.conformance.cases.sfixed32_even_edition_2023:extendee -> buf.validate.SFixed32Rules + 65, // 34: buf.validate.conformance.cases.sfixed64_even_edition_2023:extendee -> buf.validate.SFixed64Rules + 66, // 35: buf.validate.conformance.cases.bool_false_edition_2023:extendee -> buf.validate.BoolRules + 67, // 36: buf.validate.conformance.cases.string_valid_path_edition_2023:extendee -> buf.validate.StringRules + 68, // 37: buf.validate.conformance.cases.bytes_valid_path_edition_2023:extendee -> buf.validate.BytesRules + 69, // 38: buf.validate.conformance.cases.enum_non_zero_edition_2023:extendee -> buf.validate.EnumRules + 70, // 39: buf.validate.conformance.cases.repeated_at_least_five_edition_2023:extendee -> buf.validate.RepeatedRules + 71, // 40: buf.validate.conformance.cases.map_at_least_five_edition_2023:extendee -> buf.validate.MapRules + 72, // 41: buf.validate.conformance.cases.duration_too_long_edition_2023:extendee -> buf.validate.DurationRules + 73, // 42: buf.validate.conformance.cases.timestamp_in_range_edition_2023:extendee -> buf.validate.TimestampRules + 48, // 43: buf.validate.conformance.cases.int64_abs_in_edition_2023:type_name -> google.protobuf.Int64Value + 44, // [44:44] is the sub-list for method output_type + 44, // [44:44] is the sub-list for method input_type + 43, // [43:44] is the sub-list for extension type_name + 23, // [23:43] is the sub-list for extension extendee + 0, // [0:23] is the sub-list for field type_name } func init() { file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_init() } @@ -2840,7 +3346,7 @@ func file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_i } } file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[29].Exporter = func(v any, i int) any { - switch v := v.(*PredefinedAndCustomRuleEdition2023); i { + switch v := v.(*PredefinedRepeatedWrappedFloatRuleEdition2023); i { case 0: return &v.state case 1: @@ -2852,7 +3358,19 @@ func file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_i } } file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[30].Exporter = func(v any, i int) any { - switch v := v.(*StandardPredefinedAndCustomRuleEdition2023); i { + switch v := v.(*PredefinedRepeatedWrappedDoubleRuleEdition2023); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[31].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedRepeatedWrappedInt32RuleEdition2023); i { case 0: return &v.state case 1: @@ -2864,6 +3382,102 @@ func file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_i } } file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[32].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedRepeatedWrappedInt64RuleEdition2023); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[33].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedRepeatedWrappedUInt32RuleEdition2023); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[34].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedRepeatedWrappedUInt64RuleEdition2023); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[35].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedRepeatedWrappedBoolRuleEdition2023); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[36].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedRepeatedWrappedStringRuleEdition2023); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[37].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedRepeatedWrappedBytesRuleEdition2023); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[38].Exporter = func(v any, i int) any { + switch v := v.(*PredefinedAndCustomRuleEdition2023); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[39].Exporter = func(v any, i int) any { + switch v := v.(*StandardPredefinedAndCustomRuleEdition2023); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[41].Exporter = func(v any, i int) any { switch v := v.(*PredefinedAndCustomRuleEdition2023_Nested); i { case 0: return &v.state @@ -2882,7 +3496,7 @@ func file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_i GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDesc, NumEnums: 1, - NumMessages: 33, + NumMessages: 42, NumExtensions: 20, NumServices: 0, }, diff --git a/tools/protovalidate-conformance/internal/cases/cases_predefined.go b/tools/protovalidate-conformance/internal/cases/cases_predefined.go index 28977ea..abb56bd 100644 --- a/tools/protovalidate-conformance/internal/cases/cases_predefined.go +++ b/tools/protovalidate-conformance/internal/cases/cases_predefined.go @@ -423,6 +423,168 @@ func predefinedSuite() suites.Suite { }, ), }, + "proto2/repeated/wrapped/float/valid": { + Message: &cases.PredefinedRepeatedWrappedFloatRuleProto2{ + Val: []*wrapperspb.FloatValue{wrapperspb.Float(1.0)}, + }, + Expected: results.Success(true), + }, + "proto2/repeated/wrapped/float/invalid": { + Message: &cases.PredefinedRepeatedWrappedFloatRuleProto2{ + Val: []*wrapperspb.FloatValue{wrapperspb.Float(1.0), wrapperspb.Float(-2.0)}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("float.abs_range.proto2"), + Message: proto.String("float value is out of range"), + }, + ), + }, + "proto2/repeated/wrapped/double/valid": { + Message: &cases.PredefinedRepeatedWrappedDoubleRuleProto2{ + Val: []*wrapperspb.DoubleValue{wrapperspb.Double(1.0)}, + }, + Expected: results.Success(true), + }, + "proto2/repeated/wrapped/double/invalid": { + Message: &cases.PredefinedRepeatedWrappedDoubleRuleProto2{ + Val: []*wrapperspb.DoubleValue{wrapperspb.Double(1.0), wrapperspb.Double(-2.0)}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("double.abs_range.proto2"), + Message: proto.String("double value is out of range"), + }, + ), + }, + "proto2/repeated/wrapped/int32/valid": { + Message: &cases.PredefinedRepeatedWrappedInt32RuleProto2{ + Val: []*wrapperspb.Int32Value{wrapperspb.Int32(2)}, + }, + Expected: results.Success(true), + }, + "proto2/repeated/wrapped/int32/invalid": { + Message: &cases.PredefinedRepeatedWrappedInt32RuleProto2{ + Val: []*wrapperspb.Int32Value{wrapperspb.Int32(2), wrapperspb.Int32(3)}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("int32.abs_in.proto2"), + Message: proto.String("value must be in absolute value of list"), + }, + ), + }, + "proto2/repeated/wrapped/int64/valid": { + Message: &cases.PredefinedRepeatedWrappedInt64RuleProto2{ + Val: []*wrapperspb.Int64Value{wrapperspb.Int64(2)}, + }, + Expected: results.Success(true), + }, + "proto2/repeated/wrapped/int64/invalid": { + Message: &cases.PredefinedRepeatedWrappedInt64RuleProto2{ + Val: []*wrapperspb.Int64Value{wrapperspb.Int64(2), wrapperspb.Int64(3)}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("int64.abs_in.proto2"), + Message: proto.String("value must be in absolute value of list"), + }, + ), + }, + "proto2/repeated/wrapped/uint32/valid": { + Message: &cases.PredefinedRepeatedWrappedUInt32RuleProto2{ + Val: []*wrapperspb.UInt32Value{wrapperspb.UInt32(2)}, + }, + Expected: results.Success(true), + }, + "proto2/repeated/wrapped/uint32/invalid": { + Message: &cases.PredefinedRepeatedWrappedUInt32RuleProto2{ + Val: []*wrapperspb.UInt32Value{wrapperspb.UInt32(2), wrapperspb.UInt32(3)}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("uint32.even.proto2"), + Message: proto.String("uint32 value is not even"), + }, + ), + }, + "proto2/repeated/wrapped/uint64/valid": { + Message: &cases.PredefinedRepeatedWrappedUInt64RuleProto2{ + Val: []*wrapperspb.UInt64Value{wrapperspb.UInt64(2)}, + }, + Expected: results.Success(true), + }, + "proto2/repeated/wrapped/uint64/invalid": { + Message: &cases.PredefinedRepeatedWrappedUInt64RuleProto2{ + Val: []*wrapperspb.UInt64Value{wrapperspb.UInt64(2), wrapperspb.UInt64(3)}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("uint64.even.proto2"), + Message: proto.String("uint64 value is not even"), + }, + ), + }, + "proto2/repeated/wrapped/bool/valid": { + Message: &cases.PredefinedRepeatedWrappedBoolRuleProto2{ + Val: []*wrapperspb.BoolValue{wrapperspb.Bool(false)}, + }, + Expected: results.Success(true), + }, + "proto2/repeated/wrapped/bool/invalid": { + Message: &cases.PredefinedRepeatedWrappedBoolRuleProto2{ + Val: []*wrapperspb.BoolValue{wrapperspb.Bool(false), wrapperspb.Bool(true)}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("bool.false.proto2"), + Message: proto.String("bool value is not false"), + }, + ), + }, + "proto2/repeated/wrapped/string/valid": { + Message: &cases.PredefinedRepeatedWrappedStringRuleProto2{ + Val: []*wrapperspb.StringValue{wrapperspb.String("valid/file.proto")}, + }, + Expected: results.Success(true), + }, + "proto2/repeated/wrapped/string/invalid": { + Message: &cases.PredefinedRepeatedWrappedStringRuleProto2{ + Val: []*wrapperspb.StringValue{wrapperspb.String("valid/file.proto"), wrapperspb.String("../invalid/path")}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("string.valid_path.proto2"), + Message: proto.String("not a valid path: `../invalid/path`"), + }, + ), + }, + "proto2/repeated/wrapped/bytes/valid": { + Message: &cases.PredefinedRepeatedWrappedBytesRuleProto2{ + Val: []*wrapperspb.BytesValue{wrapperspb.Bytes([]byte("valid/file.proto"))}, + }, + Expected: results.Success(true), + }, + "proto2/repeated/wrapped/bytes/invalid": { + Message: &cases.PredefinedRepeatedWrappedBytesRuleProto2{ + Val: []*wrapperspb.BytesValue{wrapperspb.Bytes([]byte("valid/file.proto")), wrapperspb.Bytes([]byte("../invalid/path"))}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("bytes.valid_path.proto2"), + Message: proto.String("not a valid path: `../invalid/path`"), + }, + ), + }, "proto2/predefined_and_custom/valid": { Message: &cases.PredefinedAndCustomRuleProto2{ A: proto.Int32(26), @@ -917,6 +1079,168 @@ func predefinedSuite() suites.Suite { }, ), }, + "proto3/repeated/wrapped/float/valid": { + Message: &cases.PredefinedRepeatedWrappedFloatRuleProto3{ + Val: []*wrapperspb.FloatValue{wrapperspb.Float(1.0)}, + }, + Expected: results.Success(true), + }, + "proto3/repeated/wrapped/float/invalid": { + Message: &cases.PredefinedRepeatedWrappedFloatRuleProto3{ + Val: []*wrapperspb.FloatValue{wrapperspb.Float(1.0), wrapperspb.Float(-2.0)}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("float.abs_range.proto2"), + Message: proto.String("float value is out of range"), + }, + ), + }, + "proto3/repeated/wrapped/double/valid": { + Message: &cases.PredefinedRepeatedWrappedDoubleRuleProto3{ + Val: []*wrapperspb.DoubleValue{wrapperspb.Double(1.0)}, + }, + Expected: results.Success(true), + }, + "proto3/repeated/wrapped/double/invalid": { + Message: &cases.PredefinedRepeatedWrappedDoubleRuleProto3{ + Val: []*wrapperspb.DoubleValue{wrapperspb.Double(1.0), wrapperspb.Double(-2.0)}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("double.abs_range.proto2"), + Message: proto.String("double value is out of range"), + }, + ), + }, + "proto3/repeated/wrapped/int32/valid": { + Message: &cases.PredefinedRepeatedWrappedInt32RuleProto3{ + Val: []*wrapperspb.Int32Value{wrapperspb.Int32(2)}, + }, + Expected: results.Success(true), + }, + "proto3/repeated/wrapped/int32/invalid": { + Message: &cases.PredefinedRepeatedWrappedInt32RuleProto3{ + Val: []*wrapperspb.Int32Value{wrapperspb.Int32(2), wrapperspb.Int32(3)}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("int32.abs_in.proto2"), + Message: proto.String("value must be in absolute value of list"), + }, + ), + }, + "proto3/repeated/wrapped/int64/valid": { + Message: &cases.PredefinedRepeatedWrappedInt64RuleProto3{ + Val: []*wrapperspb.Int64Value{wrapperspb.Int64(2)}, + }, + Expected: results.Success(true), + }, + "proto3/repeated/wrapped/int64/invalid": { + Message: &cases.PredefinedRepeatedWrappedInt64RuleProto3{ + Val: []*wrapperspb.Int64Value{wrapperspb.Int64(2), wrapperspb.Int64(3)}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("int64.abs_in.proto2"), + Message: proto.String("value must be in absolute value of list"), + }, + ), + }, + "proto3/repeated/wrapped/uint32/valid": { + Message: &cases.PredefinedRepeatedWrappedUInt32RuleProto3{ + Val: []*wrapperspb.UInt32Value{wrapperspb.UInt32(2)}, + }, + Expected: results.Success(true), + }, + "proto3/repeated/wrapped/uint32/invalid": { + Message: &cases.PredefinedRepeatedWrappedUInt32RuleProto3{ + Val: []*wrapperspb.UInt32Value{wrapperspb.UInt32(2), wrapperspb.UInt32(3)}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("uint32.even.proto2"), + Message: proto.String("uint32 value is not even"), + }, + ), + }, + "proto3/repeated/wrapped/uint64/valid": { + Message: &cases.PredefinedRepeatedWrappedUInt64RuleProto3{ + Val: []*wrapperspb.UInt64Value{wrapperspb.UInt64(2)}, + }, + Expected: results.Success(true), + }, + "proto3/repeated/wrapped/uint64/invalid": { + Message: &cases.PredefinedRepeatedWrappedUInt64RuleProto3{ + Val: []*wrapperspb.UInt64Value{wrapperspb.UInt64(2), wrapperspb.UInt64(3)}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("uint64.even.proto2"), + Message: proto.String("uint64 value is not even"), + }, + ), + }, + "proto3/repeated/wrapped/bool/valid": { + Message: &cases.PredefinedRepeatedWrappedBoolRuleProto3{ + Val: []*wrapperspb.BoolValue{wrapperspb.Bool(false)}, + }, + Expected: results.Success(true), + }, + "proto3/repeated/wrapped/bool/invalid": { + Message: &cases.PredefinedRepeatedWrappedBoolRuleProto3{ + Val: []*wrapperspb.BoolValue{wrapperspb.Bool(false), wrapperspb.Bool(true)}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("bool.false.proto2"), + Message: proto.String("bool value is not false"), + }, + ), + }, + "proto3/repeated/wrapped/string/valid": { + Message: &cases.PredefinedRepeatedWrappedStringRuleProto3{ + Val: []*wrapperspb.StringValue{wrapperspb.String("valid/file.proto")}, + }, + Expected: results.Success(true), + }, + "proto3/repeated/wrapped/string/invalid": { + Message: &cases.PredefinedRepeatedWrappedStringRuleProto3{ + Val: []*wrapperspb.StringValue{wrapperspb.String("valid/file.proto"), wrapperspb.String("../invalid/path")}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("string.valid_path.proto2"), + Message: proto.String("not a valid path: `../invalid/path`"), + }, + ), + }, + "proto3/repeated/wrapped/bytes/valid": { + Message: &cases.PredefinedRepeatedWrappedBytesRuleProto3{ + Val: []*wrapperspb.BytesValue{wrapperspb.Bytes([]byte("valid/file.proto"))}, + }, + Expected: results.Success(true), + }, + "proto3/repeated/wrapped/bytes/invalid": { + Message: &cases.PredefinedRepeatedWrappedBytesRuleProto3{ + Val: []*wrapperspb.BytesValue{wrapperspb.Bytes([]byte("valid/file.proto")), wrapperspb.Bytes([]byte("../invalid/path"))}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("bytes.valid_path.proto2"), + Message: proto.String("not a valid path: `../invalid/path`"), + }, + ), + }, "proto3/predefined_and_custom/valid": { Message: &cases.PredefinedAndCustomRuleProto3{ A: 26, @@ -1411,6 +1735,168 @@ func predefinedSuite() suites.Suite { }, ), }, + "proto/2023/repeated/wrapped/float/valid": { + Message: &cases.PredefinedRepeatedWrappedFloatRuleEdition2023{ + Val: []*wrapperspb.FloatValue{wrapperspb.Float(1.0)}, + }, + Expected: results.Success(true), + }, + "proto/2023/repeated/wrapped/float/invalid": { + Message: &cases.PredefinedRepeatedWrappedFloatRuleEdition2023{ + Val: []*wrapperspb.FloatValue{wrapperspb.Float(1.0), wrapperspb.Float(-2.0)}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("float.abs_range.edition_2023"), + Message: proto.String("float value is out of range"), + }, + ), + }, + "proto/2023/repeated/wrapped/double/valid": { + Message: &cases.PredefinedRepeatedWrappedDoubleRuleEdition2023{ + Val: []*wrapperspb.DoubleValue{wrapperspb.Double(1.0)}, + }, + Expected: results.Success(true), + }, + "proto/2023/repeated/wrapped/double/invalid": { + Message: &cases.PredefinedRepeatedWrappedDoubleRuleEdition2023{ + Val: []*wrapperspb.DoubleValue{wrapperspb.Double(1.0), wrapperspb.Double(-2.0)}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("double.abs_range.edition_2023"), + Message: proto.String("double value is out of range"), + }, + ), + }, + "proto/2023/repeated/wrapped/int32/valid": { + Message: &cases.PredefinedRepeatedWrappedInt32RuleEdition2023{ + Val: []*wrapperspb.Int32Value{wrapperspb.Int32(2)}, + }, + Expected: results.Success(true), + }, + "proto/2023/repeated/wrapped/int32/invalid": { + Message: &cases.PredefinedRepeatedWrappedInt32RuleEdition2023{ + Val: []*wrapperspb.Int32Value{wrapperspb.Int32(2), wrapperspb.Int32(3)}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("int32.abs_in.edition_2023"), + Message: proto.String("value must be in absolute value of list"), + }, + ), + }, + "proto/2023/repeated/wrapped/int64/valid": { + Message: &cases.PredefinedRepeatedWrappedInt64RuleEdition2023{ + Val: []*wrapperspb.Int64Value{wrapperspb.Int64(2)}, + }, + Expected: results.Success(true), + }, + "proto/2023/repeated/wrapped/int64/invalid": { + Message: &cases.PredefinedRepeatedWrappedInt64RuleEdition2023{ + Val: []*wrapperspb.Int64Value{wrapperspb.Int64(2), wrapperspb.Int64(3)}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("int64.abs_in.edition_2023"), + Message: proto.String("value must be in absolute value of list"), + }, + ), + }, + "proto/2023/repeated/wrapped/uint32/valid": { + Message: &cases.PredefinedRepeatedWrappedUInt32RuleEdition2023{ + Val: []*wrapperspb.UInt32Value{wrapperspb.UInt32(2)}, + }, + Expected: results.Success(true), + }, + "proto/2023/repeated/wrapped/uint32/invalid": { + Message: &cases.PredefinedRepeatedWrappedUInt32RuleEdition2023{ + Val: []*wrapperspb.UInt32Value{wrapperspb.UInt32(2), wrapperspb.UInt32(3)}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("uint32.even.edition_2023"), + Message: proto.String("uint32 value is not even"), + }, + ), + }, + "proto/2023/repeated/wrapped/uint64/valid": { + Message: &cases.PredefinedRepeatedWrappedUInt64RuleEdition2023{ + Val: []*wrapperspb.UInt64Value{wrapperspb.UInt64(2)}, + }, + Expected: results.Success(true), + }, + "proto/2023/repeated/wrapped/uint64/invalid": { + Message: &cases.PredefinedRepeatedWrappedUInt64RuleEdition2023{ + Val: []*wrapperspb.UInt64Value{wrapperspb.UInt64(2), wrapperspb.UInt64(3)}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("uint64.even.edition_2023"), + Message: proto.String("uint64 value is not even"), + }, + ), + }, + "proto/2023/repeated/wrapped/bool/valid": { + Message: &cases.PredefinedRepeatedWrappedBoolRuleEdition2023{ + Val: []*wrapperspb.BoolValue{wrapperspb.Bool(false)}, + }, + Expected: results.Success(true), + }, + "proto/2023/repeated/wrapped/bool/invalid": { + Message: &cases.PredefinedRepeatedWrappedBoolRuleEdition2023{ + Val: []*wrapperspb.BoolValue{wrapperspb.Bool(false), wrapperspb.Bool(true)}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("bool.false.edition_2023"), + Message: proto.String("bool value is not false"), + }, + ), + }, + "proto/2023/repeated/wrapped/string/valid": { + Message: &cases.PredefinedRepeatedWrappedStringRuleEdition2023{ + Val: []*wrapperspb.StringValue{wrapperspb.String("valid/file.proto")}, + }, + Expected: results.Success(true), + }, + "proto/2023/repeated/wrapped/string/invalid": { + Message: &cases.PredefinedRepeatedWrappedStringRuleEdition2023{ + Val: []*wrapperspb.StringValue{wrapperspb.String("valid/file.proto"), wrapperspb.String("../invalid/path")}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("string.valid_path.edition_2023"), + Message: proto.String("not a valid path: `../invalid/path`"), + }, + ), + }, + "proto/2023/repeated/wrapped/bytes/valid": { + Message: &cases.PredefinedRepeatedWrappedBytesRuleEdition2023{ + Val: []*wrapperspb.BytesValue{wrapperspb.Bytes([]byte("valid/file.proto"))}, + }, + Expected: results.Success(true), + }, + "proto/2023/repeated/wrapped/bytes/invalid": { + Message: &cases.PredefinedRepeatedWrappedBytesRuleEdition2023{ + Val: []*wrapperspb.BytesValue{wrapperspb.Bytes([]byte("valid/file.proto")), wrapperspb.Bytes([]byte("../invalid/path"))}, + }, + Expected: results.Violations( + &validate.Violation{ + FieldPath: proto.String("val[1]"), + ConstraintId: proto.String("bytes.valid_path.edition_2023"), + Message: proto.String("not a valid path: `../invalid/path`"), + }, + ), + }, "proto/2023/predefined_and_custom/valid": { Message: &cases.PredefinedAndCustomRuleEdition2023{ A: proto.Int32(26),