diff --git a/Makefile b/Makefile index 3ddcc33..1ab5f63 100644 --- a/Makefile +++ b/Makefile @@ -16,7 +16,7 @@ GOLANGCI_LINT_VERSION ?= v1.60.1 # Set to use a different version of protovalidate-conformance. # Should be kept in sync with the version referenced in proto/buf.lock and # 'buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go' in go.mod. -CONFORMANCE_VERSION ?= v0.8.1 +CONFORMANCE_VERSION ?= v0.8.2 .PHONY: help help: ## Describe useful make targets diff --git a/internal/constraints/cache.go b/internal/constraints/cache.go index 43df841..1c1768a 100644 --- a/internal/constraints/cache.go +++ b/internal/constraints/cache.go @@ -75,8 +75,8 @@ func (c *Cache) Build( fieldEnv, compileErr := env.Extend( cel.Constant( "rule", - celext.ProtoFieldToCELType(desc, true, forItems), - celext.ProtoFieldToCELValue(desc, rule, forItems), + celext.ProtoFieldToCELType(desc, true, false), + celext.ProtoFieldToCELValue(desc, rule, false), ), ) if compileErr != nil { diff --git a/internal/gen/buf/validate/conformance/cases/predefined_rules_proto2.pb.go b/internal/gen/buf/validate/conformance/cases/predefined_rules_proto2.pb.go index 5aa120f..83bfdb4 100644 --- a/internal/gen/buf/validate/conformance/cases/predefined_rules_proto2.pb.go +++ b/internal/gen/buf/validate/conformance/cases/predefined_rules_proto2.pb.go @@ -26,6 +26,7 @@ import ( protoimpl "google.golang.org/protobuf/runtime/protoimpl" durationpb "google.golang.org/protobuf/types/known/durationpb" timestamppb "google.golang.org/protobuf/types/known/timestamppb" + wrapperspb "google.golang.org/protobuf/types/known/wrapperspb" reflect "reflect" sync "sync" ) @@ -986,19 +987,865 @@ func (x *PredefinedTimestampRuleProto2) GetVal() *timestamppb.Timestamp { return nil } +type PredefinedWrappedFloatRuleProto2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.FloatValue `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *PredefinedWrappedFloatRuleProto2) Reset() { + *x = PredefinedWrappedFloatRuleProto2{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedFloatRuleProto2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedFloatRuleProto2) ProtoMessage() {} + +func (x *PredefinedWrappedFloatRuleProto2) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[19] + 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 PredefinedWrappedFloatRuleProto2.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedFloatRuleProto2) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{19} +} + +func (x *PredefinedWrappedFloatRuleProto2) GetVal() *wrapperspb.FloatValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedDoubleRuleProto2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.DoubleValue `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *PredefinedWrappedDoubleRuleProto2) Reset() { + *x = PredefinedWrappedDoubleRuleProto2{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[20] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedDoubleRuleProto2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedDoubleRuleProto2) ProtoMessage() {} + +func (x *PredefinedWrappedDoubleRuleProto2) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[20] + 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 PredefinedWrappedDoubleRuleProto2.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedDoubleRuleProto2) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{20} +} + +func (x *PredefinedWrappedDoubleRuleProto2) GetVal() *wrapperspb.DoubleValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedInt32RuleProto2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.Int32Value `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *PredefinedWrappedInt32RuleProto2) Reset() { + *x = PredefinedWrappedInt32RuleProto2{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[21] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedInt32RuleProto2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedInt32RuleProto2) ProtoMessage() {} + +func (x *PredefinedWrappedInt32RuleProto2) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[21] + 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 PredefinedWrappedInt32RuleProto2.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedInt32RuleProto2) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{21} +} + +func (x *PredefinedWrappedInt32RuleProto2) GetVal() *wrapperspb.Int32Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedInt64RuleProto2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.Int64Value `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *PredefinedWrappedInt64RuleProto2) Reset() { + *x = PredefinedWrappedInt64RuleProto2{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[22] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedInt64RuleProto2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedInt64RuleProto2) ProtoMessage() {} + +func (x *PredefinedWrappedInt64RuleProto2) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[22] + 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 PredefinedWrappedInt64RuleProto2.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedInt64RuleProto2) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{22} +} + +func (x *PredefinedWrappedInt64RuleProto2) GetVal() *wrapperspb.Int64Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedUInt32RuleProto2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.UInt32Value `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *PredefinedWrappedUInt32RuleProto2) Reset() { + *x = PredefinedWrappedUInt32RuleProto2{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[23] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedUInt32RuleProto2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedUInt32RuleProto2) ProtoMessage() {} + +func (x *PredefinedWrappedUInt32RuleProto2) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[23] + 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 PredefinedWrappedUInt32RuleProto2.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedUInt32RuleProto2) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{23} +} + +func (x *PredefinedWrappedUInt32RuleProto2) GetVal() *wrapperspb.UInt32Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedUInt64RuleProto2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.UInt64Value `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *PredefinedWrappedUInt64RuleProto2) Reset() { + *x = PredefinedWrappedUInt64RuleProto2{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedUInt64RuleProto2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedUInt64RuleProto2) ProtoMessage() {} + +func (x *PredefinedWrappedUInt64RuleProto2) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[24] + 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 PredefinedWrappedUInt64RuleProto2.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedUInt64RuleProto2) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{24} +} + +func (x *PredefinedWrappedUInt64RuleProto2) GetVal() *wrapperspb.UInt64Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedBoolRuleProto2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.BoolValue `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *PredefinedWrappedBoolRuleProto2) Reset() { + *x = PredefinedWrappedBoolRuleProto2{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedBoolRuleProto2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedBoolRuleProto2) ProtoMessage() {} + +func (x *PredefinedWrappedBoolRuleProto2) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[25] + 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 PredefinedWrappedBoolRuleProto2.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedBoolRuleProto2) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{25} +} + +func (x *PredefinedWrappedBoolRuleProto2) GetVal() *wrapperspb.BoolValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedStringRuleProto2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.StringValue `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *PredefinedWrappedStringRuleProto2) Reset() { + *x = PredefinedWrappedStringRuleProto2{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[26] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedStringRuleProto2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedStringRuleProto2) ProtoMessage() {} + +func (x *PredefinedWrappedStringRuleProto2) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[26] + 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 PredefinedWrappedStringRuleProto2.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedStringRuleProto2) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{26} +} + +func (x *PredefinedWrappedStringRuleProto2) GetVal() *wrapperspb.StringValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedBytesRuleProto2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.BytesValue `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *PredefinedWrappedBytesRuleProto2) Reset() { + *x = PredefinedWrappedBytesRuleProto2{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[27] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedBytesRuleProto2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedBytesRuleProto2) ProtoMessage() {} + +func (x *PredefinedWrappedBytesRuleProto2) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[27] + 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 PredefinedWrappedBytesRuleProto2.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedBytesRuleProto2) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{27} +} + +func (x *PredefinedWrappedBytesRuleProto2) GetVal() *wrapperspb.BytesValue { + if x != nil { + return x.Val + } + 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 unknownFields protoimpl.UnknownFields - A *int32 `protobuf:"varint,1,opt,name=a" json:"a,omitempty"` + A *int32 `protobuf:"zigzag32,1,opt,name=a" json:"a,omitempty"` B *PredefinedAndCustomRuleProto2_Nested `protobuf:"bytes,2,opt,name=b" json:"b,omitempty"` } func (x *PredefinedAndCustomRuleProto2) Reset() { *x = PredefinedAndCustomRuleProto2{} if protoimpl.UnsafeEnabled { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[19] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1011,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[19] + 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 { @@ -1024,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{19} + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{37} } func (x *PredefinedAndCustomRuleProto2) GetA() int32 { @@ -1046,13 +1893,13 @@ type StandardPredefinedAndCustomRuleProto2 struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - A *int32 `protobuf:"varint,1,opt,name=a" json:"a,omitempty"` + A *int32 `protobuf:"zigzag32,1,opt,name=a" json:"a,omitempty"` } func (x *StandardPredefinedAndCustomRuleProto2) Reset() { *x = StandardPredefinedAndCustomRuleProto2{} if protoimpl.UnsafeEnabled { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[20] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1065,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[20] + 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 { @@ -1078,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{20} + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{38} } func (x *StandardPredefinedAndCustomRuleProto2) GetA() int32 { @@ -1093,13 +1940,13 @@ type PredefinedAndCustomRuleProto2_Nested struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - C *int32 `protobuf:"varint,1,opt,name=c" json:"c,omitempty"` + C *int32 `protobuf:"zigzag32,1,opt,name=c" json:"c,omitempty"` } func (x *PredefinedAndCustomRuleProto2_Nested) Reset() { *x = PredefinedAndCustomRuleProto2_Nested{} if protoimpl.UnsafeEnabled { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[21] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1112,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[21] + 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 { @@ -1125,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{19, 0} + return file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDescGZIP(), []int{37, 0} } func (x *PredefinedAndCustomRuleProto2_Nested) GetC() int32 { @@ -1154,18 +2001,18 @@ var file_buf_validate_conformance_cases_predefined_rules_proto2_proto_extTypes = }, { ExtendedType: (*validate.Int32Rules)(nil), - ExtensionType: (*bool)(nil), + ExtensionType: ([]int32)(nil), Field: 1161, - Name: "buf.validate.conformance.cases.int32_even_proto2", - Tag: "varint,1161,opt,name=int32_even_proto2", + Name: "buf.validate.conformance.cases.int32_abs_in_proto2", + Tag: "varint,1161,rep,name=int32_abs_in_proto2", Filename: "buf/validate/conformance/cases/predefined_rules_proto2.proto", }, { ExtendedType: (*validate.Int64Rules)(nil), - ExtensionType: (*bool)(nil), + ExtensionType: ([]*wrapperspb.Int64Value)(nil), Field: 1161, - Name: "buf.validate.conformance.cases.int64_even_proto2", - Tag: "varint,1161,opt,name=int64_even_proto2", + Name: "buf.validate.conformance.cases.int64_abs_in_proto2", + Tag: "bytes,1161,rep,name=int64_abs_in_proto2", Filename: "buf/validate/conformance/cases/predefined_rules_proto2.proto", }, { @@ -1304,14 +2151,14 @@ var ( // Extension fields to validate.Int32Rules. var ( - // optional bool int32_even_proto2 = 1161; - E_Int32EvenProto2 = &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_extTypes[2] + // repeated int32 int32_abs_in_proto2 = 1161; + E_Int32AbsInProto2 = &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_extTypes[2] ) // Extension fields to validate.Int64Rules. var ( - // optional bool int64_even_proto2 = 1161; - E_Int64EvenProto2 = &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_extTypes[3] + // repeated google.protobuf.Int64Value int64_abs_in_proto2 = 1161; + E_Int64AbsInProto2 = &file_buf_validate_conformance_cases_predefined_rules_proto2_proto_extTypes[3] ) // Extension fields to validate.UInt32Rules. @@ -1418,7 +2265,9 @@ var file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDesc = 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, - 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x3a, 0x0a, 0x19, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, + 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x3a, 0x0a, 0x19, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1d, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x42, 0x0b, 0xba, 0x48, 0x08, 0x0a, 0x06, 0xcd, 0x48, 0x00, @@ -1426,265 +2275,374 @@ var file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDesc = 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x21, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x42, 0x0f, 0xba, 0x48, 0x0c, 0x12, 0x0a, 0xc9, 0x48, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xf0, 0x3f, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x37, 0x0a, 0x19, 0x50, 0x72, 0x65, + 0x00, 0x00, 0xf0, 0x3f, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x40, 0x0a, 0x19, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, - 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x42, 0x08, 0xba, 0x48, 0x05, 0x1a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, - 0x61, 0x6c, 0x22, 0x37, 0x0a, 0x19, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, - 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, - 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x08, 0xba, 0x48, - 0x05, 0x22, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x38, 0x0a, 0x1a, 0x50, - 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, - 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x08, 0xba, 0x48, 0x05, 0x2a, 0x03, 0xc8, 0x48, 0x01, - 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x38, 0x0a, 0x1a, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, - 0x6e, 0x65, 0x64, 0x55, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, - 0x74, 0x6f, 0x32, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, - 0x42, 0x08, 0xba, 0x48, 0x05, 0x32, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, - 0x38, 0x0a, 0x1a, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x53, 0x49, 0x6e, + 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x23, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x42, 0x11, 0xba, 0x48, 0x0e, 0x1a, 0x0c, 0xc8, 0x48, 0xfe, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x42, 0x0a, 0x19, 0x50, + 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, + 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x25, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x13, 0xba, 0x48, 0x10, 0x22, 0x0e, 0xca, 0x48, 0x0b, 0x08, + 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, + 0x38, 0x0a, 0x1a, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1a, 0x0a, - 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x42, 0x08, 0xba, 0x48, 0x05, 0x3a, + 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x08, 0xba, 0x48, 0x05, 0x2a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x38, 0x0a, 0x1a, 0x50, 0x72, 0x65, - 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x53, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, + 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x55, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x12, 0x42, 0x08, 0xba, 0x48, 0x05, 0x42, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, - 0x76, 0x61, 0x6c, 0x22, 0x39, 0x0a, 0x1b, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, - 0x64, 0x46, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, - 0x6f, 0x32, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x42, - 0x08, 0xba, 0x48, 0x05, 0x4a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x39, - 0x0a, 0x1b, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x46, 0x69, 0x78, 0x65, - 0x64, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1a, 0x0a, - 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x42, 0x08, 0xba, 0x48, 0x05, 0x52, + 0x20, 0x01, 0x28, 0x04, 0x42, 0x08, 0xba, 0x48, 0x05, 0x32, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, + 0x76, 0x61, 0x6c, 0x22, 0x38, 0x0a, 0x1a, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, + 0x64, 0x53, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x32, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x42, 0x08, + 0xba, 0x48, 0x05, 0x3a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x38, 0x0a, + 0x1a, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x53, 0x49, 0x6e, 0x74, 0x36, + 0x34, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1a, 0x0a, 0x03, 0x76, + 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x12, 0x42, 0x08, 0xba, 0x48, 0x05, 0x42, 0x03, 0xc8, + 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x39, 0x0a, 0x1b, 0x50, 0x72, 0x65, 0x64, 0x65, + 0x66, 0x69, 0x6e, 0x65, 0x64, 0x46, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, + 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x07, 0x42, 0x08, 0xba, 0x48, 0x05, 0x4a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, + 0x61, 0x6c, 0x22, 0x39, 0x0a, 0x1b, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, + 0x46, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x32, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x42, 0x08, + 0xba, 0x48, 0x05, 0x52, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3a, 0x0a, + 0x1c, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x53, 0x46, 0x69, 0x78, 0x65, + 0x64, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1a, 0x0a, + 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0f, 0x42, 0x08, 0xba, 0x48, 0x05, 0x5a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3a, 0x0a, 0x1c, 0x50, 0x72, 0x65, - 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x53, 0x46, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x52, + 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x53, 0x46, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0f, 0x42, 0x08, 0xba, 0x48, 0x05, 0x5a, 0x03, 0xc8, 0x48, 0x01, - 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3a, 0x0a, 0x1c, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, - 0x6e, 0x65, 0x64, 0x53, 0x46, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x50, - 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x10, 0x42, 0x08, 0xba, 0x48, 0x05, 0x62, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, - 0x6c, 0x22, 0x36, 0x0a, 0x18, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x42, - 0x6f, 0x6f, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1a, 0x0a, - 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x42, 0x08, 0xba, 0x48, 0x05, 0x6a, - 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x38, 0x0a, 0x1a, 0x50, 0x72, 0x65, - 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c, - 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, - 0x76, 0x61, 0x6c, 0x22, 0x37, 0x0a, 0x19, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, - 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, - 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x08, 0xba, - 0x48, 0x05, 0x7a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0xc1, 0x01, 0x0a, - 0x18, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x45, 0x6e, 0x75, 0x6d, 0x52, - 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x60, 0x0a, 0x03, 0x76, 0x61, 0x6c, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x43, 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, 0x45, 0x6e, 0x75, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, - 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x42, 0x09, 0xba, 0x48, 0x06, - 0x82, 0x01, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x43, 0x0a, 0x0a, 0x45, - 0x6e, 0x75, 0x6d, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x20, 0x0a, 0x1c, 0x45, 0x4e, 0x55, - 0x4d, 0x5f, 0x50, 0x52, 0x4f, 0x54, 0x4f, 0x32, 0x5f, 0x5a, 0x45, 0x52, 0x4f, 0x5f, 0x55, 0x4e, - 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x45, - 0x4e, 0x55, 0x4d, 0x5f, 0x50, 0x52, 0x4f, 0x54, 0x4f, 0x32, 0x5f, 0x4f, 0x4e, 0x45, 0x10, 0x01, - 0x22, 0x3b, 0x0a, 0x1c, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, 0x65, - 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, - 0x12, 0x1b, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04, 0x42, 0x09, 0xba, - 0x48, 0x06, 0x92, 0x01, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x56, 0x0a, - 0x1c, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x44, 0x75, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x36, 0x0a, - 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x09, 0xba, 0x48, 0x06, 0xaa, 0x01, 0x03, 0xc8, 0x48, 0x01, - 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x58, 0x0a, 0x1d, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, - 0x6e, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x75, 0x6c, 0x65, - 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x37, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, - 0x09, 0xba, 0x48, 0x06, 0xb2, 0x01, 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, 0x05, 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, 0x1a, 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, 0x05, - 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, 0x1a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x01, 0x63, - 0x22, 0xa5, 0x01, 0x0a, 0x25, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x50, 0x72, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x10, 0x42, 0x08, 0xba, 0x48, 0x05, 0x62, 0x03, 0xc8, 0x48, 0x01, + 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x36, 0x0a, 0x18, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, + 0x6e, 0x65, 0x64, 0x42, 0x6f, 0x6f, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x32, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x42, 0x08, + 0xba, 0x48, 0x05, 0x6a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x38, 0x0a, + 0x1a, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x53, 0x74, 0x72, 0x69, 0x6e, + 0x67, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1a, 0x0a, 0x03, 0x76, + 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0xc8, + 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x37, 0x0a, 0x19, 0x50, 0x72, 0x65, 0x64, 0x65, + 0x66, 0x69, 0x6e, 0x65, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0c, 0x42, 0x08, 0xba, 0x48, 0x05, 0x7a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, + 0x22, 0xc1, 0x01, 0x0a, 0x18, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x45, + 0x6e, 0x75, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x60, 0x0a, + 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x43, 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, 0x45, 0x6e, 0x75, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x32, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x42, + 0x09, 0xba, 0x48, 0x06, 0x82, 0x01, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, + 0x43, 0x0a, 0x0a, 0x45, 0x6e, 0x75, 0x6d, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x20, 0x0a, + 0x1c, 0x45, 0x4e, 0x55, 0x4d, 0x5f, 0x50, 0x52, 0x4f, 0x54, 0x4f, 0x32, 0x5f, 0x5a, 0x45, 0x52, + 0x4f, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, + 0x13, 0x0a, 0x0f, 0x45, 0x4e, 0x55, 0x4d, 0x5f, 0x50, 0x52, 0x4f, 0x54, 0x4f, 0x32, 0x5f, 0x4f, + 0x4e, 0x45, 0x10, 0x01, 0x22, 0x3b, 0x0a, 0x1c, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, + 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x1b, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x04, 0x42, 0x09, 0xba, 0x48, 0x06, 0x92, 0x01, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, + 0x6c, 0x22, 0x56, 0x0a, 0x1c, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x44, + 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x32, 0x12, 0x36, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x09, 0xba, 0x48, 0x06, 0xaa, 0x01, + 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x58, 0x0a, 0x1d, 0x50, 0x72, 0x65, + 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, + 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x37, 0x0a, 0x03, 0x76, 0x61, + 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, + 0x61, 0x6d, 0x70, 0x42, 0x09, 0xba, 0x48, 0x06, 0xb2, 0x01, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, + 0x76, 0x61, 0x6c, 0x22, 0x5e, 0x0a, 0x20, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 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, 0x3a, 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, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x42, 0x0b, 0xba, 0x48, 0x08, 0x0a, 0x06, 0xcd, 0x48, 0x00, 0x00, 0x80, 0x3f, 0x52, 0x03, + 0x76, 0x61, 0x6c, 0x22, 0x64, 0x0a, 0x21, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 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, 0x3f, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, + 0x01, 0x20, 0x01, 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, 0x0f, 0xba, 0x48, 0x0c, 0x12, 0x0a, 0xc9, 0x48, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xf0, 0x3f, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x64, 0x0a, 0x20, 0x50, 0x72, 0x65, + 0x64, 0x65, 0x66, 0x69, 0x6e, 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, 0x40, 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, 0x49, 0x6e, 0x74, + 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x11, 0xba, 0x48, 0x0e, 0x1a, 0x0c, 0xc8, 0x48, + 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, + 0x66, 0x0a, 0x20, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 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, 0x42, 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, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x13, 0xba, + 0x48, 0x10, 0x22, 0x0e, 0xca, 0x48, 0x0b, 0x08, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x5d, 0x0a, 0x21, 0x50, 0x72, 0x65, 0x64, 0x65, + 0x66, 0x69, 0x6e, 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, 0x38, 0x0a, 0x03, + 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 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, 0x08, 0xba, 0x48, 0x05, 0x2a, 0x03, 0xc8, 0x48, + 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x5d, 0x0a, 0x21, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, + 0x69, 0x6e, 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, 0x38, 0x0a, 0x03, 0x76, + 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 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, 0x08, 0xba, 0x48, 0x05, 0x32, 0x03, 0xc8, 0x48, 0x01, + 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x59, 0x0a, 0x1f, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, + 0x6e, 0x65, 0x64, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x64, 0x42, 0x6f, 0x6f, 0x6c, 0x52, 0x75, + 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x36, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, + 0x01, 0x20, 0x01, 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, 0x08, 0xba, 0x48, 0x05, 0x6a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, + 0x22, 0x5d, 0x0a, 0x21, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 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, 0x38, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, + 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, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, + 0x5b, 0x0a, 0x20, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 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, 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, 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, 0x12, 0x7c, 0x0a, 0x01, 0x61, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 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, 0x1a, 0x05, - 0xc8, 0x48, 0x01, 0x10, 0x1c, 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, 0x87, 0x01, 0x0a, 0x11, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x5f, - 0x65, 0x76, 0x65, 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, 0x01, 0x28, 0x08, 0x42, 0x40, 0xc2, 0x48, - 0x3d, 0x0a, 0x3b, 0x0a, 0x11, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x17, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x20, 0x76, 0x61, + 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, 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, 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, - 0x0d, 0x74, 0x68, 0x69, 0x73, 0x20, 0x25, 0x20, 0x32, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x52, 0x0f, - 0x69, 0x6e, 0x74, 0x33, 0x32, 0x45, 0x76, 0x65, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x3a, - 0x87, 0x01, 0x0a, 0x11, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x5f, 0x65, 0x76, 0x65, 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, 0x01, 0x28, 0x08, 0x42, 0x40, 0xc2, 0x48, 0x3d, 0x0a, 0x3b, 0x0a, 0x11, 0x69, - 0x6e, 0x74, 0x36, 0x34, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, - 0x12, 0x17, 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, 0x0f, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x45, - 0x76, 0x65, 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, 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, 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, + 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, 0x36, 0x34, 0x52, 0x75, + 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, 0x36, 0x34, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x12, 0x19, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x20, + 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, 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, 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, + 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, 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, @@ -1692,74 +2650,90 @@ var file_buf_validate_conformance_cases_predefined_rules_proto2_proto_rawDesc = 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, 0xae, 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, 0x50, 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, 0x2d, 0x67, 0x6f, 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, + 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, 0xae, 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, 0x50, 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, 0x2d, + 0x67, 0x6f, 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 ( @@ -1775,82 +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, 22) +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 = []interface{}{ - (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 - (*PredefinedAndCustomRuleProto2)(nil), // 20: buf.validate.conformance.cases.PredefinedAndCustomRuleProto2 - (*StandardPredefinedAndCustomRuleProto2)(nil), // 21: buf.validate.conformance.cases.StandardPredefinedAndCustomRuleProto2 - (*PredefinedAndCustomRuleProto2_Nested)(nil), // 22: buf.validate.conformance.cases.PredefinedAndCustomRuleProto2.Nested - (*durationpb.Duration)(nil), // 23: google.protobuf.Duration - (*timestamppb.Timestamp)(nil), // 24: google.protobuf.Timestamp - (*validate.FloatRules)(nil), // 25: buf.validate.FloatRules - (*validate.DoubleRules)(nil), // 26: buf.validate.DoubleRules - (*validate.Int32Rules)(nil), // 27: buf.validate.Int32Rules - (*validate.Int64Rules)(nil), // 28: buf.validate.Int64Rules - (*validate.UInt32Rules)(nil), // 29: buf.validate.UInt32Rules - (*validate.UInt64Rules)(nil), // 30: buf.validate.UInt64Rules - (*validate.SInt32Rules)(nil), // 31: buf.validate.SInt32Rules - (*validate.SInt64Rules)(nil), // 32: buf.validate.SInt64Rules - (*validate.Fixed32Rules)(nil), // 33: buf.validate.Fixed32Rules - (*validate.Fixed64Rules)(nil), // 34: buf.validate.Fixed64Rules - (*validate.SFixed32Rules)(nil), // 35: buf.validate.SFixed32Rules - (*validate.SFixed64Rules)(nil), // 36: buf.validate.SFixed64Rules - (*validate.BoolRules)(nil), // 37: buf.validate.BoolRules - (*validate.StringRules)(nil), // 38: buf.validate.StringRules - (*validate.BytesRules)(nil), // 39: buf.validate.BytesRules - (*validate.EnumRules)(nil), // 40: buf.validate.EnumRules - (*validate.RepeatedRules)(nil), // 41: buf.validate.RepeatedRules - (*validate.DurationRules)(nil), // 42: buf.validate.DurationRules - (*validate.TimestampRules)(nil), // 43: 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 - 23, // 1: buf.validate.conformance.cases.PredefinedDurationRuleProto2.val:type_name -> google.protobuf.Duration - 24, // 2: buf.validate.conformance.cases.PredefinedTimestampRuleProto2.val:type_name -> google.protobuf.Timestamp - 22, // 3: buf.validate.conformance.cases.PredefinedAndCustomRuleProto2.b:type_name -> buf.validate.conformance.cases.PredefinedAndCustomRuleProto2.Nested - 25, // 4: buf.validate.conformance.cases.float_abs_range_proto2:extendee -> buf.validate.FloatRules - 26, // 5: buf.validate.conformance.cases.double_abs_range_proto2:extendee -> buf.validate.DoubleRules - 27, // 6: buf.validate.conformance.cases.int32_even_proto2:extendee -> buf.validate.Int32Rules - 28, // 7: buf.validate.conformance.cases.int64_even_proto2:extendee -> buf.validate.Int64Rules - 29, // 8: buf.validate.conformance.cases.uint32_even_proto2:extendee -> buf.validate.UInt32Rules - 30, // 9: buf.validate.conformance.cases.uint64_even_proto2:extendee -> buf.validate.UInt64Rules - 31, // 10: buf.validate.conformance.cases.sint32_even_proto2:extendee -> buf.validate.SInt32Rules - 32, // 11: buf.validate.conformance.cases.sint64_even_proto2:extendee -> buf.validate.SInt64Rules - 33, // 12: buf.validate.conformance.cases.fixed32_even_proto2:extendee -> buf.validate.Fixed32Rules - 34, // 13: buf.validate.conformance.cases.fixed64_even_proto2:extendee -> buf.validate.Fixed64Rules - 35, // 14: buf.validate.conformance.cases.sfixed32_even_proto2:extendee -> buf.validate.SFixed32Rules - 36, // 15: buf.validate.conformance.cases.sfixed64_even_proto2:extendee -> buf.validate.SFixed64Rules - 37, // 16: buf.validate.conformance.cases.bool_false_proto2:extendee -> buf.validate.BoolRules - 38, // 17: buf.validate.conformance.cases.string_valid_path_proto2:extendee -> buf.validate.StringRules - 39, // 18: buf.validate.conformance.cases.bytes_valid_path_proto2:extendee -> buf.validate.BytesRules - 40, // 19: buf.validate.conformance.cases.enum_non_zero_proto2:extendee -> buf.validate.EnumRules - 41, // 20: buf.validate.conformance.cases.repeated_at_least_five_proto2:extendee -> buf.validate.RepeatedRules - 42, // 21: buf.validate.conformance.cases.duration_too_long_proto2:extendee -> buf.validate.DurationRules - 43, // 22: buf.validate.conformance.cases.timestamp_in_range_proto2:extendee -> buf.validate.TimestampRules - 23, // [23:23] is the sub-list for method output_type - 23, // [23:23] is the sub-list for method input_type - 23, // [23:23] is the sub-list for extension type_name - 4, // [4:23] is the sub-list for extension extendee - 0, // [0:4] 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() } @@ -2088,7 +3108,7 @@ func file_buf_validate_conformance_cases_predefined_rules_proto2_proto_init() { } } file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PredefinedAndCustomRuleProto2); i { + switch v := v.(*PredefinedWrappedFloatRuleProto2); i { case 0: return &v.state case 1: @@ -2100,7 +3120,7 @@ func file_buf_validate_conformance_cases_predefined_rules_proto2_proto_init() { } } file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StandardPredefinedAndCustomRuleProto2); i { + switch v := v.(*PredefinedWrappedDoubleRuleProto2); i { case 0: return &v.state case 1: @@ -2112,6 +3132,222 @@ func file_buf_validate_conformance_cases_predefined_rules_proto2_proto_init() { } } file_buf_validate_conformance_cases_predefined_rules_proto2_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedWrappedInt32RuleProto2); 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[22].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedWrappedInt64RuleProto2); 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[23].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedWrappedUInt32RuleProto2); 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[24].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedWrappedUInt64RuleProto2); 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[25].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedWrappedBoolRuleProto2); 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[26].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedWrappedStringRuleProto2); 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[27].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedWrappedBytesRuleProto2); 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[28].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedRepeatedWrappedFloatRuleProto2); 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[29].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedRepeatedWrappedDoubleRuleProto2); 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[30].Exporter = func(v interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { switch v := v.(*PredefinedAndCustomRuleProto2_Nested); i { case 0: return &v.state @@ -2130,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: 22, + NumMessages: 40, NumExtensions: 19, NumServices: 0, }, diff --git a/internal/gen/buf/validate/conformance/cases/predefined_rules_proto3.pb.go b/internal/gen/buf/validate/conformance/cases/predefined_rules_proto3.pb.go index 1d0f8ec..9978b58 100644 --- a/internal/gen/buf/validate/conformance/cases/predefined_rules_proto3.pb.go +++ b/internal/gen/buf/validate/conformance/cases/predefined_rules_proto3.pb.go @@ -26,6 +26,7 @@ import ( protoimpl "google.golang.org/protobuf/runtime/protoimpl" durationpb "google.golang.org/protobuf/types/known/durationpb" timestamppb "google.golang.org/protobuf/types/known/timestamppb" + wrapperspb "google.golang.org/protobuf/types/known/wrapperspb" reflect "reflect" sync "sync" ) @@ -1023,19 +1024,865 @@ func (x *PredefinedTimestampRuleProto3) GetVal() *timestamppb.Timestamp { return nil } +type PredefinedWrappedFloatRuleProto3 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.FloatValue `protobuf:"bytes,1,opt,name=val,proto3" json:"val,omitempty"` +} + +func (x *PredefinedWrappedFloatRuleProto3) Reset() { + *x = PredefinedWrappedFloatRuleProto3{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[20] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedFloatRuleProto3) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedFloatRuleProto3) ProtoMessage() {} + +func (x *PredefinedWrappedFloatRuleProto3) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[20] + 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 PredefinedWrappedFloatRuleProto3.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedFloatRuleProto3) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{20} +} + +func (x *PredefinedWrappedFloatRuleProto3) GetVal() *wrapperspb.FloatValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedDoubleRuleProto3 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.DoubleValue `protobuf:"bytes,1,opt,name=val,proto3" json:"val,omitempty"` +} + +func (x *PredefinedWrappedDoubleRuleProto3) Reset() { + *x = PredefinedWrappedDoubleRuleProto3{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[21] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedDoubleRuleProto3) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedDoubleRuleProto3) ProtoMessage() {} + +func (x *PredefinedWrappedDoubleRuleProto3) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[21] + 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 PredefinedWrappedDoubleRuleProto3.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedDoubleRuleProto3) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{21} +} + +func (x *PredefinedWrappedDoubleRuleProto3) GetVal() *wrapperspb.DoubleValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedInt32RuleProto3 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.Int32Value `protobuf:"bytes,1,opt,name=val,proto3" json:"val,omitempty"` +} + +func (x *PredefinedWrappedInt32RuleProto3) Reset() { + *x = PredefinedWrappedInt32RuleProto3{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[22] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedInt32RuleProto3) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedInt32RuleProto3) ProtoMessage() {} + +func (x *PredefinedWrappedInt32RuleProto3) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[22] + 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 PredefinedWrappedInt32RuleProto3.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedInt32RuleProto3) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{22} +} + +func (x *PredefinedWrappedInt32RuleProto3) GetVal() *wrapperspb.Int32Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedInt64RuleProto3 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.Int64Value `protobuf:"bytes,1,opt,name=val,proto3" json:"val,omitempty"` +} + +func (x *PredefinedWrappedInt64RuleProto3) Reset() { + *x = PredefinedWrappedInt64RuleProto3{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[23] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedInt64RuleProto3) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedInt64RuleProto3) ProtoMessage() {} + +func (x *PredefinedWrappedInt64RuleProto3) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[23] + 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 PredefinedWrappedInt64RuleProto3.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedInt64RuleProto3) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{23} +} + +func (x *PredefinedWrappedInt64RuleProto3) GetVal() *wrapperspb.Int64Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedUInt32RuleProto3 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.UInt32Value `protobuf:"bytes,1,opt,name=val,proto3" json:"val,omitempty"` +} + +func (x *PredefinedWrappedUInt32RuleProto3) Reset() { + *x = PredefinedWrappedUInt32RuleProto3{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedUInt32RuleProto3) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedUInt32RuleProto3) ProtoMessage() {} + +func (x *PredefinedWrappedUInt32RuleProto3) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[24] + 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 PredefinedWrappedUInt32RuleProto3.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedUInt32RuleProto3) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{24} +} + +func (x *PredefinedWrappedUInt32RuleProto3) GetVal() *wrapperspb.UInt32Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedUInt64RuleProto3 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.UInt64Value `protobuf:"bytes,1,opt,name=val,proto3" json:"val,omitempty"` +} + +func (x *PredefinedWrappedUInt64RuleProto3) Reset() { + *x = PredefinedWrappedUInt64RuleProto3{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedUInt64RuleProto3) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedUInt64RuleProto3) ProtoMessage() {} + +func (x *PredefinedWrappedUInt64RuleProto3) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[25] + 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 PredefinedWrappedUInt64RuleProto3.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedUInt64RuleProto3) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{25} +} + +func (x *PredefinedWrappedUInt64RuleProto3) GetVal() *wrapperspb.UInt64Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedBoolRuleProto3 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.BoolValue `protobuf:"bytes,1,opt,name=val,proto3" json:"val,omitempty"` +} + +func (x *PredefinedWrappedBoolRuleProto3) Reset() { + *x = PredefinedWrappedBoolRuleProto3{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[26] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedBoolRuleProto3) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedBoolRuleProto3) ProtoMessage() {} + +func (x *PredefinedWrappedBoolRuleProto3) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[26] + 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 PredefinedWrappedBoolRuleProto3.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedBoolRuleProto3) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{26} +} + +func (x *PredefinedWrappedBoolRuleProto3) GetVal() *wrapperspb.BoolValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedStringRuleProto3 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.StringValue `protobuf:"bytes,1,opt,name=val,proto3" json:"val,omitempty"` +} + +func (x *PredefinedWrappedStringRuleProto3) Reset() { + *x = PredefinedWrappedStringRuleProto3{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[27] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedStringRuleProto3) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedStringRuleProto3) ProtoMessage() {} + +func (x *PredefinedWrappedStringRuleProto3) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[27] + 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 PredefinedWrappedStringRuleProto3.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedStringRuleProto3) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{27} +} + +func (x *PredefinedWrappedStringRuleProto3) GetVal() *wrapperspb.StringValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedBytesRuleProto3 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.BytesValue `protobuf:"bytes,1,opt,name=val,proto3" json:"val,omitempty"` +} + +func (x *PredefinedWrappedBytesRuleProto3) Reset() { + *x = PredefinedWrappedBytesRuleProto3{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[28] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedBytesRuleProto3) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedBytesRuleProto3) ProtoMessage() {} + +func (x *PredefinedWrappedBytesRuleProto3) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_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 PredefinedWrappedBytesRuleProto3.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedBytesRuleProto3) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{28} +} + +func (x *PredefinedWrappedBytesRuleProto3) GetVal() *wrapperspb.BytesValue { + if x != nil { + return x.Val + } + 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 unknownFields protoimpl.UnknownFields - A int32 `protobuf:"varint,1,opt,name=a,proto3" json:"a,omitempty"` + A int32 `protobuf:"zigzag32,1,opt,name=a,proto3" json:"a,omitempty"` B *PredefinedAndCustomRuleProto3_Nested `protobuf:"bytes,2,opt,name=b,proto3,oneof" json:"b,omitempty"` } func (x *PredefinedAndCustomRuleProto3) Reset() { *x = PredefinedAndCustomRuleProto3{} if protoimpl.UnsafeEnabled { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[20] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1048,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[20] + 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 { @@ -1061,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{20} + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{38} } func (x *PredefinedAndCustomRuleProto3) GetA() int32 { @@ -1083,13 +1930,13 @@ type StandardPredefinedAndCustomRuleProto3 struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - A int32 `protobuf:"varint,1,opt,name=a,proto3" json:"a,omitempty"` + A int32 `protobuf:"zigzag32,1,opt,name=a,proto3" json:"a,omitempty"` } func (x *StandardPredefinedAndCustomRuleProto3) Reset() { *x = StandardPredefinedAndCustomRuleProto3{} if protoimpl.UnsafeEnabled { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[21] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1102,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[21] + 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 { @@ -1115,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{21} + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{39} } func (x *StandardPredefinedAndCustomRuleProto3) GetA() int32 { @@ -1139,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[22] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1152,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[22] + 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 { @@ -1165,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{22} + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{40} } func (x *PredefinedRulesProto3UnusedImportBugWorkaround) GetDummy_1() *StandardPredefinedAndCustomRuleProto2 { @@ -1187,13 +2034,13 @@ type PredefinedAndCustomRuleProto3_Nested struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - C int32 `protobuf:"varint,1,opt,name=c,proto3" json:"c,omitempty"` + C int32 `protobuf:"zigzag32,1,opt,name=c,proto3" json:"c,omitempty"` } func (x *PredefinedAndCustomRuleProto3_Nested) Reset() { *x = PredefinedAndCustomRuleProto3_Nested{} if protoimpl.UnsafeEnabled { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[24] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1206,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[24] + 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 { @@ -1219,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{20, 0} + return file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDescGZIP(), []int{38, 0} } func (x *PredefinedAndCustomRuleProto3_Nested) GetC() int32 { @@ -1252,6 +2099,8 @@ var file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDesc = 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x3a, 0x0a, 0x19, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x1d, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x42, 0x0b, 0xba, 0x48, 0x08, 0x0a, @@ -1259,167 +2108,285 @@ var file_buf_validate_conformance_cases_predefined_rules_proto3_proto_rawDesc = 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x21, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x42, 0x0f, 0xba, 0x48, 0x0c, 0x12, 0x0a, 0xc9, 0x48, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x3f, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x37, 0x0a, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x3f, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x40, 0x0a, 0x19, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x49, 0x6e, 0x74, 0x33, 0x32, - 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, - 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x42, 0x08, 0xba, 0x48, 0x05, 0x1a, 0x03, 0xc8, 0x48, - 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x37, 0x0a, 0x19, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, - 0x69, 0x6e, 0x65, 0x64, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, - 0x74, 0x6f, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, - 0x42, 0x08, 0xba, 0x48, 0x05, 0x22, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, - 0x38, 0x0a, 0x1a, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x55, 0x49, 0x6e, - 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x1a, 0x0a, - 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x08, 0xba, 0x48, 0x05, 0x2a, - 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x38, 0x0a, 0x1a, 0x50, 0x72, 0x65, - 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x55, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, - 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x04, 0x42, 0x08, 0xba, 0x48, 0x05, 0x32, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, + 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x23, 0x0a, 0x03, 0x76, 0x61, + 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x42, 0x11, 0xba, 0x48, 0x0e, 0x1a, 0x0c, 0xc8, 0x48, + 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, + 0x42, 0x0a, 0x19, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x49, 0x6e, 0x74, + 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x25, 0x0a, 0x03, + 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x13, 0xba, 0x48, 0x10, 0x22, 0x0e, + 0xd2, 0x48, 0x0b, 0x08, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x38, 0x0a, 0x1a, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, - 0x64, 0x53, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, - 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x42, 0x08, - 0xba, 0x48, 0x05, 0x3a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x38, 0x0a, - 0x1a, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x53, 0x49, 0x6e, 0x74, 0x36, + 0x64, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x08, + 0xba, 0x48, 0x05, 0x2a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x38, 0x0a, + 0x1a, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x55, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, - 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x12, 0x42, 0x08, 0xba, 0x48, 0x05, 0x42, 0x03, 0xc8, - 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x39, 0x0a, 0x1b, 0x50, 0x72, 0x65, 0x64, 0x65, - 0x66, 0x69, 0x6e, 0x65, 0x64, 0x46, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, - 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x07, 0x42, 0x08, 0xba, 0x48, 0x05, 0x4a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, - 0x61, 0x6c, 0x22, 0x39, 0x0a, 0x1b, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, - 0x46, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, - 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x42, 0x08, - 0xba, 0x48, 0x05, 0x52, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3a, 0x0a, + 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x08, 0xba, 0x48, 0x05, 0x32, 0x03, 0xc8, + 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x38, 0x0a, 0x1a, 0x50, 0x72, 0x65, 0x64, 0x65, + 0x66, 0x69, 0x6e, 0x65, 0x64, 0x53, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x11, 0x42, 0x08, 0xba, 0x48, 0x05, 0x3a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, + 0x6c, 0x22, 0x38, 0x0a, 0x1a, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x53, + 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, + 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x12, 0x42, 0x08, 0xba, 0x48, + 0x05, 0x42, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x39, 0x0a, 0x1b, 0x50, + 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x46, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, + 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, + 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x42, 0x08, 0xba, 0x48, 0x05, 0x4a, 0x03, 0xc8, 0x48, + 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x39, 0x0a, 0x1b, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, + 0x69, 0x6e, 0x65, 0x64, 0x46, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x06, 0x42, 0x08, 0xba, 0x48, 0x05, 0x52, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, + 0x6c, 0x22, 0x3a, 0x0a, 0x1c, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x53, + 0x46, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0f, 0x42, 0x08, + 0xba, 0x48, 0x05, 0x5a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3a, 0x0a, 0x1c, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x53, 0x46, 0x69, 0x78, 0x65, - 0x64, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x1a, 0x0a, - 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0f, 0x42, 0x08, 0xba, 0x48, 0x05, 0x5a, - 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3a, 0x0a, 0x1c, 0x50, 0x72, 0x65, - 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x53, 0x46, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x52, - 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x10, 0x42, 0x08, 0xba, 0x48, 0x05, 0x62, 0x03, 0xc8, 0x48, 0x01, - 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x36, 0x0a, 0x18, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, - 0x6e, 0x65, 0x64, 0x42, 0x6f, 0x6f, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, - 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x42, 0x08, - 0xba, 0x48, 0x05, 0x6a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x38, 0x0a, - 0x1a, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x53, 0x74, 0x72, 0x69, 0x6e, - 0x67, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, - 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0xc8, - 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x37, 0x0a, 0x19, 0x50, 0x72, 0x65, 0x64, 0x65, - 0x66, 0x69, 0x6e, 0x65, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, - 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0c, 0x42, 0x08, 0xba, 0x48, 0x05, 0x7a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, - 0x22, 0xc1, 0x01, 0x0a, 0x18, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x45, - 0x6e, 0x75, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x60, 0x0a, - 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x43, 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, 0x45, 0x6e, 0x75, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, - 0x6f, 0x74, 0x6f, 0x33, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x42, - 0x09, 0xba, 0x48, 0x06, 0x82, 0x01, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, - 0x43, 0x0a, 0x0a, 0x45, 0x6e, 0x75, 0x6d, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x20, 0x0a, - 0x1c, 0x45, 0x4e, 0x55, 0x4d, 0x5f, 0x50, 0x52, 0x4f, 0x54, 0x4f, 0x33, 0x5f, 0x5a, 0x45, 0x52, - 0x4f, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, - 0x13, 0x0a, 0x0f, 0x45, 0x4e, 0x55, 0x4d, 0x5f, 0x50, 0x52, 0x4f, 0x54, 0x4f, 0x33, 0x5f, 0x4f, - 0x4e, 0x45, 0x10, 0x01, 0x22, 0xb0, 0x01, 0x0a, 0x17, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, - 0x6e, 0x65, 0x64, 0x4d, 0x61, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, - 0x12, 0x5d, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, 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, 0x4d, 0x61, 0x70, 0x52, 0x75, 0x6c, 0x65, - 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x2e, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, - 0x09, 0xba, 0x48, 0x06, 0x9a, 0x01, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, - 0x36, 0x0a, 0x08, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, - 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x3b, 0x0a, 0x1c, 0x50, 0x72, 0x65, 0x64, 0x65, - 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x52, 0x75, 0x6c, - 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x1b, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x04, 0x42, 0x09, 0xba, 0x48, 0x06, 0x92, 0x01, 0x03, 0xc8, 0x48, 0x01, 0x52, - 0x03, 0x76, 0x61, 0x6c, 0x22, 0x56, 0x0a, 0x1c, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, - 0x65, 0x64, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, - 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x36, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x09, 0xba, 0x48, - 0x06, 0xaa, 0x01, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x58, 0x0a, 0x1d, - 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x37, 0x0a, - 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, - 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x09, 0xba, 0x48, 0x06, 0xb2, 0x01, 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, 0x05, 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, 0x1a, 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, 0x05, 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, 0x1a, 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, 0x05, 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, - 0x1a, 0x05, 0xc8, 0x48, 0x01, 0x10, 0x1c, 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, + 0x64, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x1a, 0x0a, + 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x10, 0x42, 0x08, 0xba, 0x48, 0x05, 0x62, + 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x36, 0x0a, 0x18, 0x50, 0x72, 0x65, + 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x42, 0x6f, 0x6f, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x08, 0x42, 0x08, 0xba, 0x48, 0x05, 0x6a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, + 0x6c, 0x22, 0x38, 0x0a, 0x1a, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x53, + 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, + 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, + 0x05, 0x72, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x37, 0x0a, 0x19, 0x50, + 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, 0x52, 0x75, + 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x08, 0xba, 0x48, 0x05, 0x7a, 0x03, 0xc8, 0x48, 0x01, 0x52, + 0x03, 0x76, 0x61, 0x6c, 0x22, 0xc1, 0x01, 0x0a, 0x18, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, + 0x6e, 0x65, 0x64, 0x45, 0x6e, 0x75, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x33, 0x12, 0x60, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x43, 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, 0xae, 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, 0x50, 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, 0x2d, 0x67, 0x6f, 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, + 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x45, 0x6e, 0x75, 0x6d, 0x52, 0x75, + 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x33, 0x42, 0x09, 0xba, 0x48, 0x06, 0x82, 0x01, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, + 0x76, 0x61, 0x6c, 0x22, 0x43, 0x0a, 0x0a, 0x45, 0x6e, 0x75, 0x6d, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x33, 0x12, 0x20, 0x0a, 0x1c, 0x45, 0x4e, 0x55, 0x4d, 0x5f, 0x50, 0x52, 0x4f, 0x54, 0x4f, 0x33, + 0x5f, 0x5a, 0x45, 0x52, 0x4f, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, + 0x44, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x45, 0x4e, 0x55, 0x4d, 0x5f, 0x50, 0x52, 0x4f, 0x54, + 0x4f, 0x33, 0x5f, 0x4f, 0x4e, 0x45, 0x10, 0x01, 0x22, 0xb0, 0x01, 0x0a, 0x17, 0x50, 0x72, 0x65, + 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x4d, 0x61, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x5d, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x40, 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, 0x4d, 0x61, 0x70, + 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x2e, 0x56, 0x61, 0x6c, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x42, 0x09, 0xba, 0x48, 0x06, 0x9a, 0x01, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, + 0x76, 0x61, 0x6c, 0x1a, 0x36, 0x0a, 0x08, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, + 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x6b, 0x65, + 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x3b, 0x0a, 0x1c, 0x50, + 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x1b, 0x0a, 0x03, 0x76, + 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04, 0x42, 0x09, 0xba, 0x48, 0x06, 0x92, 0x01, 0x03, + 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x56, 0x0a, 0x1c, 0x50, 0x72, 0x65, 0x64, + 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x75, + 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, 0x36, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x42, 0x09, 0xba, 0x48, 0x06, 0xaa, 0x01, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, + 0x22, 0x58, 0x0a, 0x1d, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x54, 0x69, + 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x33, 0x12, 0x37, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x09, 0xba, 0x48, 0x06, 0xb2, + 0x01, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x5e, 0x0a, 0x20, 0x50, 0x72, + 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 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, 0x3a, + 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, 0x46, 0x6c, + 0x6f, 0x61, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0b, 0xba, 0x48, 0x08, 0x0a, 0x06, 0xcd, + 0x48, 0x00, 0x00, 0x80, 0x3f, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x64, 0x0a, 0x21, 0x50, 0x72, + 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 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, + 0x3f, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 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, 0x0f, 0xba, 0x48, 0x0c, 0x12, + 0x0a, 0xc9, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x3f, 0x52, 0x03, 0x76, 0x61, 0x6c, + 0x22, 0x64, 0x0a, 0x20, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 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, 0x40, 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, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x11, + 0xba, 0x48, 0x0e, 0x1a, 0x0c, 0xc8, 0x48, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x66, 0x0a, 0x20, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, + 0x69, 0x6e, 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, 0x42, 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, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x42, 0x13, 0xba, 0x48, 0x10, 0x22, 0x0e, 0xca, 0x48, 0x0b, 0x08, 0xfe, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x5d, + 0x0a, 0x21, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 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, 0x38, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 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, 0x08, + 0xba, 0x48, 0x05, 0x2a, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x5d, 0x0a, + 0x21, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 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, 0x38, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 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, 0x08, 0xba, + 0x48, 0x05, 0x32, 0x03, 0xc8, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x59, 0x0a, 0x1f, + 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, + 0x64, 0x42, 0x6f, 0x6f, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x12, + 0x36, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 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, 0x08, 0xba, 0x48, 0x05, 0x6a, 0x03, 0xc8, + 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x5d, 0x0a, 0x21, 0x50, 0x72, 0x65, 0x64, 0x65, + 0x66, 0x69, 0x6e, 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, 0x38, 0x0a, 0x03, + 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 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, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0xc8, 0x48, + 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x5b, 0x0a, 0x20, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, + 0x69, 0x6e, 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, 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, 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, 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, 0xae, 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, 0x50, 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, 0x2d, 0x67, 0x6f, 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 ( @@ -1435,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, 25) +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 = []interface{}{ (PredefinedEnumRuleProto3_EnumProto3)(0), // 0: buf.validate.conformance.cases.PredefinedEnumRuleProto3.EnumProto3 (*PredefinedFloatRuleProto3)(nil), // 1: buf.validate.conformance.cases.PredefinedFloatRuleProto3 @@ -1458,29 +2425,74 @@ var file_buf_validate_conformance_cases_predefined_rules_proto3_proto_goTypes = (*PredefinedRepeatedRuleProto3)(nil), // 18: buf.validate.conformance.cases.PredefinedRepeatedRuleProto3 (*PredefinedDurationRuleProto3)(nil), // 19: buf.validate.conformance.cases.PredefinedDurationRuleProto3 (*PredefinedTimestampRuleProto3)(nil), // 20: buf.validate.conformance.cases.PredefinedTimestampRuleProto3 - (*PredefinedAndCustomRuleProto3)(nil), // 21: buf.validate.conformance.cases.PredefinedAndCustomRuleProto3 - (*StandardPredefinedAndCustomRuleProto3)(nil), // 22: buf.validate.conformance.cases.StandardPredefinedAndCustomRuleProto3 - (*PredefinedRulesProto3UnusedImportBugWorkaround)(nil), // 23: buf.validate.conformance.cases.PredefinedRulesProto3UnusedImportBugWorkaround - nil, // 24: buf.validate.conformance.cases.PredefinedMapRuleProto3.ValEntry - (*PredefinedAndCustomRuleProto3_Nested)(nil), // 25: buf.validate.conformance.cases.PredefinedAndCustomRuleProto3.Nested - (*durationpb.Duration)(nil), // 26: google.protobuf.Duration - (*timestamppb.Timestamp)(nil), // 27: google.protobuf.Timestamp - (*StandardPredefinedAndCustomRuleProto2)(nil), // 28: buf.validate.conformance.cases.StandardPredefinedAndCustomRuleProto2 - (*StandardPredefinedAndCustomRuleEdition2023)(nil), // 29: buf.validate.conformance.cases.StandardPredefinedAndCustomRuleEdition2023 + (*PredefinedWrappedFloatRuleProto3)(nil), // 21: buf.validate.conformance.cases.PredefinedWrappedFloatRuleProto3 + (*PredefinedWrappedDoubleRuleProto3)(nil), // 22: buf.validate.conformance.cases.PredefinedWrappedDoubleRuleProto3 + (*PredefinedWrappedInt32RuleProto3)(nil), // 23: buf.validate.conformance.cases.PredefinedWrappedInt32RuleProto3 + (*PredefinedWrappedInt64RuleProto3)(nil), // 24: buf.validate.conformance.cases.PredefinedWrappedInt64RuleProto3 + (*PredefinedWrappedUInt32RuleProto3)(nil), // 25: buf.validate.conformance.cases.PredefinedWrappedUInt32RuleProto3 + (*PredefinedWrappedUInt64RuleProto3)(nil), // 26: buf.validate.conformance.cases.PredefinedWrappedUInt64RuleProto3 + (*PredefinedWrappedBoolRuleProto3)(nil), // 27: buf.validate.conformance.cases.PredefinedWrappedBoolRuleProto3 + (*PredefinedWrappedStringRuleProto3)(nil), // 28: buf.validate.conformance.cases.PredefinedWrappedStringRuleProto3 + (*PredefinedWrappedBytesRuleProto3)(nil), // 29: buf.validate.conformance.cases.PredefinedWrappedBytesRuleProto3 + (*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 - 24, // 1: buf.validate.conformance.cases.PredefinedMapRuleProto3.val:type_name -> buf.validate.conformance.cases.PredefinedMapRuleProto3.ValEntry - 26, // 2: buf.validate.conformance.cases.PredefinedDurationRuleProto3.val:type_name -> google.protobuf.Duration - 27, // 3: buf.validate.conformance.cases.PredefinedTimestampRuleProto3.val:type_name -> google.protobuf.Timestamp - 25, // 4: buf.validate.conformance.cases.PredefinedAndCustomRuleProto3.b:type_name -> buf.validate.conformance.cases.PredefinedAndCustomRuleProto3.Nested - 28, // 5: buf.validate.conformance.cases.PredefinedRulesProto3UnusedImportBugWorkaround.dummy_1:type_name -> buf.validate.conformance.cases.StandardPredefinedAndCustomRuleProto2 - 29, // 6: buf.validate.conformance.cases.PredefinedRulesProto3UnusedImportBugWorkaround.dummy_2:type_name -> buf.validate.conformance.cases.StandardPredefinedAndCustomRuleEdition2023 - 7, // [7:7] is the sub-list for method output_type - 7, // [7:7] is the sub-list for method input_type - 7, // [7:7] is the sub-list for extension type_name - 7, // [7:7] is the sub-list for extension extendee - 0, // [0:7] 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() } @@ -1732,7 +2744,7 @@ func file_buf_validate_conformance_cases_predefined_rules_proto3_proto_init() { } } file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PredefinedAndCustomRuleProto3); i { + switch v := v.(*PredefinedWrappedFloatRuleProto3); i { case 0: return &v.state case 1: @@ -1744,7 +2756,7 @@ func file_buf_validate_conformance_cases_predefined_rules_proto3_proto_init() { } } file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StandardPredefinedAndCustomRuleProto3); i { + switch v := v.(*PredefinedWrappedDoubleRuleProto3); i { case 0: return &v.state case 1: @@ -1756,7 +2768,19 @@ func file_buf_validate_conformance_cases_predefined_rules_proto3_proto_init() { } } file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PredefinedRulesProto3UnusedImportBugWorkaround); i { + switch v := v.(*PredefinedWrappedInt32RuleProto3); 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[23].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedWrappedInt64RuleProto3); i { case 0: return &v.state case 1: @@ -1768,6 +2792,210 @@ func file_buf_validate_conformance_cases_predefined_rules_proto3_proto_init() { } } file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedWrappedUInt32RuleProto3); 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[25].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedWrappedUInt64RuleProto3); 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[26].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedWrappedBoolRuleProto3); 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[27].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedWrappedStringRuleProto3); 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[28].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedWrappedBytesRuleProto3); 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[29].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedRepeatedWrappedFloatRuleProto3); 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[30].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedRepeatedWrappedDoubleRuleProto3); 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[31].Exporter = func(v interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + switch v := v.(*PredefinedRepeatedWrappedInt64RuleProto3); 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[33].Exporter = func(v interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { switch v := v.(*PredefinedAndCustomRuleProto3_Nested); i { case 0: return &v.state @@ -1780,14 +3008,14 @@ func file_buf_validate_conformance_cases_predefined_rules_proto3_proto_init() { } } } - file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[20].OneofWrappers = []interface{}{} + file_buf_validate_conformance_cases_predefined_rules_proto3_proto_msgTypes[38].OneofWrappers = []interface{}{} 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: 25, + NumMessages: 43, NumExtensions: 0, NumServices: 0, }, diff --git a/internal/gen/buf/validate/conformance/cases/predefined_rules_proto_editions.pb.go b/internal/gen/buf/validate/conformance/cases/predefined_rules_proto_editions.pb.go index c192f3b..dafc026 100644 --- a/internal/gen/buf/validate/conformance/cases/predefined_rules_proto_editions.pb.go +++ b/internal/gen/buf/validate/conformance/cases/predefined_rules_proto_editions.pb.go @@ -26,6 +26,7 @@ import ( protoimpl "google.golang.org/protobuf/runtime/protoimpl" durationpb "google.golang.org/protobuf/types/known/durationpb" timestamppb "google.golang.org/protobuf/types/known/timestamppb" + wrapperspb "google.golang.org/protobuf/types/known/wrapperspb" reflect "reflect" sync "sync" ) @@ -1023,19 +1024,865 @@ func (x *PredefinedTimestampRuleEdition2023) GetVal() *timestamppb.Timestamp { return nil } +type PredefinedWrappedFloatRuleEdition2023 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.FloatValue `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *PredefinedWrappedFloatRuleEdition2023) Reset() { + *x = PredefinedWrappedFloatRuleEdition2023{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[20] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedFloatRuleEdition2023) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedFloatRuleEdition2023) ProtoMessage() {} + +func (x *PredefinedWrappedFloatRuleEdition2023) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[20] + 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 PredefinedWrappedFloatRuleEdition2023.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedFloatRuleEdition2023) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{20} +} + +func (x *PredefinedWrappedFloatRuleEdition2023) GetVal() *wrapperspb.FloatValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedDoubleRuleEdition2023 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.DoubleValue `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *PredefinedWrappedDoubleRuleEdition2023) Reset() { + *x = PredefinedWrappedDoubleRuleEdition2023{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[21] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedDoubleRuleEdition2023) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedDoubleRuleEdition2023) ProtoMessage() {} + +func (x *PredefinedWrappedDoubleRuleEdition2023) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[21] + 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 PredefinedWrappedDoubleRuleEdition2023.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedDoubleRuleEdition2023) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{21} +} + +func (x *PredefinedWrappedDoubleRuleEdition2023) GetVal() *wrapperspb.DoubleValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedInt32RuleEdition2023 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.Int32Value `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *PredefinedWrappedInt32RuleEdition2023) Reset() { + *x = PredefinedWrappedInt32RuleEdition2023{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[22] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedInt32RuleEdition2023) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedInt32RuleEdition2023) ProtoMessage() {} + +func (x *PredefinedWrappedInt32RuleEdition2023) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[22] + 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 PredefinedWrappedInt32RuleEdition2023.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedInt32RuleEdition2023) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{22} +} + +func (x *PredefinedWrappedInt32RuleEdition2023) GetVal() *wrapperspb.Int32Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedInt64RuleEdition2023 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.Int64Value `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *PredefinedWrappedInt64RuleEdition2023) Reset() { + *x = PredefinedWrappedInt64RuleEdition2023{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[23] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedInt64RuleEdition2023) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedInt64RuleEdition2023) ProtoMessage() {} + +func (x *PredefinedWrappedInt64RuleEdition2023) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[23] + 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 PredefinedWrappedInt64RuleEdition2023.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedInt64RuleEdition2023) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{23} +} + +func (x *PredefinedWrappedInt64RuleEdition2023) GetVal() *wrapperspb.Int64Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedUInt32RuleEdition2023 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.UInt32Value `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *PredefinedWrappedUInt32RuleEdition2023) Reset() { + *x = PredefinedWrappedUInt32RuleEdition2023{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedUInt32RuleEdition2023) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedUInt32RuleEdition2023) ProtoMessage() {} + +func (x *PredefinedWrappedUInt32RuleEdition2023) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[24] + 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 PredefinedWrappedUInt32RuleEdition2023.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedUInt32RuleEdition2023) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{24} +} + +func (x *PredefinedWrappedUInt32RuleEdition2023) GetVal() *wrapperspb.UInt32Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedUInt64RuleEdition2023 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.UInt64Value `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *PredefinedWrappedUInt64RuleEdition2023) Reset() { + *x = PredefinedWrappedUInt64RuleEdition2023{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedUInt64RuleEdition2023) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedUInt64RuleEdition2023) ProtoMessage() {} + +func (x *PredefinedWrappedUInt64RuleEdition2023) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[25] + 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 PredefinedWrappedUInt64RuleEdition2023.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedUInt64RuleEdition2023) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{25} +} + +func (x *PredefinedWrappedUInt64RuleEdition2023) GetVal() *wrapperspb.UInt64Value { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedBoolRuleEdition2023 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.BoolValue `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *PredefinedWrappedBoolRuleEdition2023) Reset() { + *x = PredefinedWrappedBoolRuleEdition2023{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[26] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedBoolRuleEdition2023) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedBoolRuleEdition2023) ProtoMessage() {} + +func (x *PredefinedWrappedBoolRuleEdition2023) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[26] + 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 PredefinedWrappedBoolRuleEdition2023.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedBoolRuleEdition2023) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{26} +} + +func (x *PredefinedWrappedBoolRuleEdition2023) GetVal() *wrapperspb.BoolValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedStringRuleEdition2023 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.StringValue `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *PredefinedWrappedStringRuleEdition2023) Reset() { + *x = PredefinedWrappedStringRuleEdition2023{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[27] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedStringRuleEdition2023) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedStringRuleEdition2023) ProtoMessage() {} + +func (x *PredefinedWrappedStringRuleEdition2023) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[27] + 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 PredefinedWrappedStringRuleEdition2023.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedStringRuleEdition2023) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{27} +} + +func (x *PredefinedWrappedStringRuleEdition2023) GetVal() *wrapperspb.StringValue { + if x != nil { + return x.Val + } + return nil +} + +type PredefinedWrappedBytesRuleEdition2023 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Val *wrapperspb.BytesValue `protobuf:"bytes,1,opt,name=val" json:"val,omitempty"` +} + +func (x *PredefinedWrappedBytesRuleEdition2023) Reset() { + *x = PredefinedWrappedBytesRuleEdition2023{} + if protoimpl.UnsafeEnabled { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[28] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PredefinedWrappedBytesRuleEdition2023) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PredefinedWrappedBytesRuleEdition2023) ProtoMessage() {} + +func (x *PredefinedWrappedBytesRuleEdition2023) ProtoReflect() protoreflect.Message { + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_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 PredefinedWrappedBytesRuleEdition2023.ProtoReflect.Descriptor instead. +func (*PredefinedWrappedBytesRuleEdition2023) Descriptor() ([]byte, []int) { + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{28} +} + +func (x *PredefinedWrappedBytesRuleEdition2023) GetVal() *wrapperspb.BytesValue { + if x != nil { + return x.Val + } + 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 unknownFields protoimpl.UnknownFields - A *int32 `protobuf:"varint,1,opt,name=a" json:"a,omitempty"` + A *int32 `protobuf:"zigzag32,1,opt,name=a" json:"a,omitempty"` B *PredefinedAndCustomRuleEdition2023_Nested `protobuf:"bytes,2,opt,name=b" json:"b,omitempty"` } func (x *PredefinedAndCustomRuleEdition2023) Reset() { *x = PredefinedAndCustomRuleEdition2023{} if protoimpl.UnsafeEnabled { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[20] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1048,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[20] + 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 { @@ -1061,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{20} + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{38} } func (x *PredefinedAndCustomRuleEdition2023) GetA() int32 { @@ -1083,13 +1930,13 @@ type StandardPredefinedAndCustomRuleEdition2023 struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - A *int32 `protobuf:"varint,1,opt,name=a" json:"a,omitempty"` + A *int32 `protobuf:"zigzag32,1,opt,name=a" json:"a,omitempty"` } func (x *StandardPredefinedAndCustomRuleEdition2023) Reset() { *x = StandardPredefinedAndCustomRuleEdition2023{} if protoimpl.UnsafeEnabled { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[21] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1102,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[21] + 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 { @@ -1115,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{21} + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{39} } func (x *StandardPredefinedAndCustomRuleEdition2023) GetA() int32 { @@ -1130,13 +1977,13 @@ type PredefinedAndCustomRuleEdition2023_Nested struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - C *int32 `protobuf:"varint,1,opt,name=c" json:"c,omitempty"` + C *int32 `protobuf:"zigzag32,1,opt,name=c" json:"c,omitempty"` } func (x *PredefinedAndCustomRuleEdition2023_Nested) Reset() { *x = PredefinedAndCustomRuleEdition2023_Nested{} if protoimpl.UnsafeEnabled { - mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[23] + mi := &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1149,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[23] + 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 { @@ -1162,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{20, 0} + return file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_rawDescGZIP(), []int{38, 0} } func (x *PredefinedAndCustomRuleEdition2023_Nested) GetC() int32 { @@ -1191,18 +2038,18 @@ var file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_ex }, { ExtendedType: (*validate.Int32Rules)(nil), - ExtensionType: (*bool)(nil), + ExtensionType: ([]int32)(nil), Field: 1162, - Name: "buf.validate.conformance.cases.int32_even_edition_2023", - Tag: "varint,1162,opt,name=int32_even_edition_2023", + Name: "buf.validate.conformance.cases.int32_abs_in_edition_2023", + Tag: "varint,1162,rep,packed,name=int32_abs_in_edition_2023", Filename: "buf/validate/conformance/cases/predefined_rules_proto_editions.proto", }, { ExtendedType: (*validate.Int64Rules)(nil), - ExtensionType: (*bool)(nil), + ExtensionType: ([]*wrapperspb.Int64Value)(nil), Field: 1162, - Name: "buf.validate.conformance.cases.int64_even_edition_2023", - Tag: "varint,1162,opt,name=int64_even_edition_2023", + Name: "buf.validate.conformance.cases.int64_abs_in_edition_2023", + Tag: "bytes,1162,rep,name=int64_abs_in_edition_2023", Filename: "buf/validate/conformance/cases/predefined_rules_proto_editions.proto", }, { @@ -1349,14 +2196,14 @@ var ( // Extension fields to validate.Int32Rules. var ( - // optional bool int32_even_edition_2023 = 1162; - E_Int32EvenEdition_2023 = &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_extTypes[2] + // repeated int32 int32_abs_in_edition_2023 = 1162; + E_Int32AbsInEdition_2023 = &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_extTypes[2] ) // Extension fields to validate.Int64Rules. var ( - // optional bool int64_even_edition_2023 = 1162; - E_Int64EvenEdition_2023 = &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_extTypes[3] + // repeated google.protobuf.Int64Value int64_abs_in_edition_2023 = 1162; + E_Int64AbsInEdition_2023 = &file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_extTypes[3] ) // Extension fields to validate.UInt32Rules. @@ -1470,6 +2317,8 @@ var file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_ra 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x3f, 0x0a, 0x1e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1d, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, @@ -1478,394 +2327,526 @@ var file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_ra 0x6e, 0x65, 0x64, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x21, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x42, 0x0f, 0xba, 0x48, 0x0c, 0x12, 0x0a, 0xd1, 0x48, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0xf0, 0x3f, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3c, 0x0a, 0x1e, 0x50, + 0x00, 0x00, 0x00, 0x00, 0xf0, 0x3f, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x46, 0x0a, 0x1e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, + 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x24, 0x0a, + 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x42, 0x12, 0xba, 0x48, 0x0f, 0x1a, + 0x0d, 0xd2, 0x48, 0x0a, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x52, 0x03, + 0x76, 0x61, 0x6c, 0x22, 0x47, 0x0a, 0x1e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, + 0x64, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x25, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x03, 0x42, 0x13, 0xba, 0x48, 0x10, 0x22, 0x0e, 0xd2, 0x48, 0x0b, 0x08, 0xfe, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3d, 0x0a, 0x1f, + 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, + 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, + 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x08, 0xba, 0x48, + 0x05, 0x2a, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3d, 0x0a, 0x1f, 0x50, + 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x55, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, + 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, + 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x08, 0xba, 0x48, 0x05, + 0x32, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3d, 0x0a, 0x1f, 0x50, 0x72, + 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x53, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, 0x0a, - 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x42, 0x08, 0xba, 0x48, 0x05, 0x1a, - 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3c, 0x0a, 0x1e, 0x50, 0x72, 0x65, - 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, + 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x42, 0x08, 0xba, 0x48, 0x05, 0x3a, + 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3d, 0x0a, 0x1f, 0x50, 0x72, 0x65, + 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x53, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, + 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, 0x0a, 0x03, + 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x12, 0x42, 0x08, 0xba, 0x48, 0x05, 0x42, 0x03, + 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3e, 0x0a, 0x20, 0x50, 0x72, 0x65, 0x64, + 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x46, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x52, 0x75, 0x6c, + 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, 0x0a, 0x03, + 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x42, 0x08, 0xba, 0x48, 0x05, 0x4a, 0x03, + 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3e, 0x0a, 0x20, 0x50, 0x72, 0x65, 0x64, + 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x46, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x52, 0x75, 0x6c, + 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, 0x0a, 0x03, + 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x42, 0x08, 0xba, 0x48, 0x05, 0x52, 0x03, + 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3f, 0x0a, 0x21, 0x50, 0x72, 0x65, 0x64, + 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x53, 0x46, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x52, 0x75, + 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, 0x0a, + 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0f, 0x42, 0x08, 0xba, 0x48, 0x05, 0x5a, + 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3f, 0x0a, 0x21, 0x50, 0x72, 0x65, + 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x53, 0x46, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x52, + 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, + 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x10, 0x42, 0x08, 0xba, 0x48, 0x05, + 0x62, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3b, 0x0a, 0x1d, 0x50, 0x72, + 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x42, 0x6f, 0x6f, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, - 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x08, 0xba, 0x48, 0x05, 0x22, 0x03, 0xd0, + 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x42, 0x08, 0xba, 0x48, 0x05, 0x6a, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3d, 0x0a, 0x1f, 0x50, 0x72, 0x65, 0x64, 0x65, - 0x66, 0x69, 0x6e, 0x65, 0x64, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x45, + 0x66, 0x69, 0x6e, 0x65, 0x64, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, - 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x08, 0xba, 0x48, 0x05, 0x2a, 0x03, 0xd0, 0x48, - 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3d, 0x0a, 0x1f, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, - 0x69, 0x6e, 0x65, 0x64, 0x55, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x08, 0xba, 0x48, 0x05, 0x32, 0x03, 0xd0, 0x48, 0x01, - 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3d, 0x0a, 0x1f, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, - 0x6e, 0x65, 0x64, 0x53, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x11, 0x42, 0x08, 0xba, 0x48, 0x05, 0x3a, 0x03, 0xd0, 0x48, 0x01, 0x52, - 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3d, 0x0a, 0x1f, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, - 0x65, 0x64, 0x53, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x12, 0x42, 0x08, 0xba, 0x48, 0x05, 0x42, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, - 0x76, 0x61, 0x6c, 0x22, 0x3e, 0x0a, 0x20, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, - 0x64, 0x46, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x07, 0x42, 0x08, 0xba, 0x48, 0x05, 0x4a, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, - 0x76, 0x61, 0x6c, 0x22, 0x3e, 0x0a, 0x20, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, - 0x64, 0x46, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x06, 0x42, 0x08, 0xba, 0x48, 0x05, 0x52, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, - 0x76, 0x61, 0x6c, 0x22, 0x3f, 0x0a, 0x21, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, - 0x64, 0x53, 0x46, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, + 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0xd0, 0x48, + 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3c, 0x0a, 0x1e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, + 0x69, 0x6e, 0x65, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0f, 0x42, 0x08, 0xba, 0x48, 0x05, 0x5a, 0x03, 0xd0, 0x48, 0x01, 0x52, - 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3f, 0x0a, 0x21, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, - 0x65, 0x64, 0x53, 0x46, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x10, 0x42, 0x08, 0xba, 0x48, 0x05, 0x62, 0x03, 0xd0, 0x48, 0x01, - 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x3b, 0x0a, 0x1d, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, - 0x6e, 0x65, 0x64, 0x42, 0x6f, 0x6f, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x08, 0x42, 0x08, 0xba, 0x48, 0x05, 0x6a, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, - 0x61, 0x6c, 0x22, 0x3d, 0x0a, 0x1f, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, - 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, - 0x6c, 0x22, 0x3c, 0x0a, 0x1e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x42, - 0x79, 0x74, 0x65, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, - 0x30, 0x32, 0x33, 0x12, 0x1a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, - 0x42, 0x08, 0xba, 0x48, 0x05, 0x7a, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, - 0xdf, 0x01, 0x0a, 0x1d, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x45, 0x6e, - 0x75, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, - 0x33, 0x12, 0x6a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x4d, - 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, 0x45, 0x6e, 0x75, 0x6d, 0x52, 0x75, - 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x2e, 0x45, 0x6e, - 0x75, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x42, 0x09, 0xba, - 0x48, 0x06, 0x82, 0x01, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x52, 0x0a, - 0x0f, 0x45, 0x6e, 0x75, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, - 0x12, 0x25, 0x0a, 0x21, 0x45, 0x4e, 0x55, 0x4d, 0x5f, 0x45, 0x44, 0x49, 0x54, 0x49, 0x4f, 0x4e, - 0x32, 0x30, 0x32, 0x33, 0x5f, 0x5a, 0x45, 0x52, 0x4f, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, - 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x45, 0x4e, 0x55, 0x4d, 0x5f, - 0x45, 0x44, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x32, 0x30, 0x32, 0x33, 0x5f, 0x4f, 0x4e, 0x45, 0x10, - 0x01, 0x22, 0x40, 0x0a, 0x21, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x52, - 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1b, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x04, 0x42, 0x09, 0xba, 0x48, 0x06, 0x92, 0x01, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, - 0x76, 0x61, 0x6c, 0x22, 0xba, 0x01, 0x0a, 0x1c, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, + 0x01, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x08, 0xba, 0x48, 0x05, 0x7a, 0x03, 0xd0, 0x48, 0x01, 0x52, + 0x03, 0x76, 0x61, 0x6c, 0x22, 0xdf, 0x01, 0x0a, 0x1d, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, + 0x6e, 0x65, 0x64, 0x45, 0x6e, 0x75, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x6a, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x4d, 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, 0x45, + 0x6e, 0x75, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, + 0x32, 0x33, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, + 0x32, 0x33, 0x42, 0x09, 0xba, 0x48, 0x06, 0x82, 0x01, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, + 0x61, 0x6c, 0x22, 0x52, 0x0a, 0x0f, 0x45, 0x6e, 0x75, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x25, 0x0a, 0x21, 0x45, 0x4e, 0x55, 0x4d, 0x5f, 0x45, 0x44, + 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x32, 0x30, 0x32, 0x33, 0x5f, 0x5a, 0x45, 0x52, 0x4f, 0x5f, 0x55, + 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, + 0x45, 0x4e, 0x55, 0x4d, 0x5f, 0x45, 0x44, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x32, 0x30, 0x32, 0x33, + 0x5f, 0x4f, 0x4e, 0x45, 0x10, 0x01, 0x22, 0x40, 0x0a, 0x21, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, + 0x69, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x52, 0x75, 0x6c, 0x65, + 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x1b, 0x0a, 0x03, 0x76, + 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04, 0x42, 0x09, 0xba, 0x48, 0x06, 0x92, 0x01, 0x03, + 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0xba, 0x01, 0x0a, 0x1c, 0x50, 0x72, 0x65, + 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x4d, 0x61, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x62, 0x0a, 0x03, 0x76, 0x61, 0x6c, + 0x18, 0x01, 0x20, 0x03, 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, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x4d, 0x61, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x32, 0x30, 0x32, 0x33, 0x12, 0x62, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x03, 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, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x4d, 0x61, 0x70, - 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x2e, - 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x09, 0xba, 0x48, 0x06, 0x9a, 0x01, 0x03, - 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x36, 0x0a, 0x08, 0x56, 0x61, 0x6c, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, - 0x22, 0x5b, 0x0a, 0x21, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x44, 0x75, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x36, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x09, 0xba, - 0x48, 0x06, 0xaa, 0x01, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x5d, 0x0a, - 0x22, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x73, - 0x74, 0x61, 0x6d, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, - 0x30, 0x32, 0x33, 0x12, 0x37, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x09, 0xba, 0x48, - 0x06, 0xb2, 0x01, 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, 0x05, 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, 0x1a, 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, 0x05, 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, 0x1a, 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, 0x05, 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, 0x1a, 0x05, 0xd0, 0x48, 0x01, 0x10, 0x1c, 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, 0x98, 0x01, 0x0a, - 0x17, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x5f, 0x65, 0x76, 0x65, 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, 0x01, 0x28, 0x08, 0x42, 0x46, 0xc2, 0x48, 0x43, 0x0a, 0x41, - 0x0a, 0x17, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x65, 0x64, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x12, 0x17, 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, 0x14, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x45, 0x76, 0x65, 0x6e, 0x45, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x3a, 0x98, 0x01, 0x0a, 0x17, 0x69, 0x6e, 0x74, 0x36, - 0x34, 0x5f, 0x65, 0x76, 0x65, 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, 0x01, 0x28, 0x08, 0x42, 0x46, 0xc2, 0x48, 0x43, 0x0a, 0x41, 0x0a, 0x17, 0x69, 0x6e, 0x74, - 0x36, 0x34, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x32, 0x30, 0x32, 0x33, 0x12, 0x17, 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, 0x14, 0x69, 0x6e, - 0x74, 0x36, 0x34, 0x45, 0x76, 0x65, 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, + 0x32, 0x30, 0x32, 0x33, 0x2e, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x09, 0xba, + 0x48, 0x06, 0x9a, 0x01, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x1a, 0x36, 0x0a, + 0x08, 0x56, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x5b, 0x0a, 0x21, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, + 0x6e, 0x65, 0x64, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x75, 0x6c, 0x65, 0x45, + 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x36, 0x0a, 0x03, 0x76, 0x61, + 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x42, 0x09, 0xba, 0x48, 0x06, 0xaa, 0x01, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, + 0x61, 0x6c, 0x22, 0x5d, 0x0a, 0x22, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, + 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x45, 0x64, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x32, 0x30, 0x32, 0x33, 0x12, 0x37, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x42, 0x09, 0xba, 0x48, 0x06, 0xb2, 0x01, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, + 0x6c, 0x22, 0x63, 0x0a, 0x25, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 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, 0x3a, 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, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0b, 0xba, 0x48, 0x08, 0x0a, 0x06, 0xd5, 0x48, 0x00, 0x00, 0x80, + 0x3f, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x69, 0x0a, 0x26, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, + 0x69, 0x6e, 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, 0x3f, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 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, 0x0f, 0xba, 0x48, 0x0c, + 0x12, 0x0a, 0xd1, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x3f, 0x52, 0x03, 0x76, 0x61, + 0x6c, 0x22, 0x6a, 0x0a, 0x25, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 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, 0x41, 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, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x42, 0x12, 0xba, 0x48, 0x0f, 0x1a, 0x0d, 0xd2, 0x48, 0x0a, 0xfe, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x6b, 0x0a, + 0x25, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 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, 0x42, 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, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x42, 0x13, 0xba, 0x48, 0x10, 0x22, 0x0e, 0xd2, 0x48, 0x0b, 0x08, 0xfe, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x62, 0x0a, 0x26, 0x50, 0x72, + 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 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, 0x38, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 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, + 0x08, 0xba, 0x48, 0x05, 0x2a, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x62, + 0x0a, 0x26, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 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, 0x38, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, + 0x01, 0x20, 0x01, 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, 0x08, 0xba, 0x48, 0x05, 0x32, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, + 0x61, 0x6c, 0x22, 0x5e, 0x0a, 0x24, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 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, 0x36, 0x0a, 0x03, 0x76, 0x61, + 0x6c, 0x18, 0x01, 0x20, 0x01, 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, 0x08, 0xba, 0x48, 0x05, 0x6a, 0x03, 0xd0, 0x48, 0x01, 0x52, 0x03, 0x76, + 0x61, 0x6c, 0x22, 0x62, 0x0a, 0x26, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 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, 0x38, 0x0a, 0x03, + 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 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, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0xd0, 0x48, + 0x01, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x60, 0x0a, 0x25, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, + 0x69, 0x6e, 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, + 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, 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, 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, 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, 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, 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, - 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, 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, 0xb5, 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, 0x50, 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, 0x2d, 0x67, 0x6f, 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, + 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, 0xb5, 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, 0x50, 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, 0x2d, 0x67, 0x6f, 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 ( @@ -1881,87 +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, 24) +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 = []interface{}{ - (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 - (*PredefinedAndCustomRuleEdition2023)(nil), // 21: buf.validate.conformance.cases.PredefinedAndCustomRuleEdition2023 - (*StandardPredefinedAndCustomRuleEdition2023)(nil), // 22: buf.validate.conformance.cases.StandardPredefinedAndCustomRuleEdition2023 - nil, // 23: buf.validate.conformance.cases.PredefinedMapRuleEdition2023.ValEntry - (*PredefinedAndCustomRuleEdition2023_Nested)(nil), // 24: buf.validate.conformance.cases.PredefinedAndCustomRuleEdition2023.Nested - (*durationpb.Duration)(nil), // 25: google.protobuf.Duration - (*timestamppb.Timestamp)(nil), // 26: google.protobuf.Timestamp - (*validate.FloatRules)(nil), // 27: buf.validate.FloatRules - (*validate.DoubleRules)(nil), // 28: buf.validate.DoubleRules - (*validate.Int32Rules)(nil), // 29: buf.validate.Int32Rules - (*validate.Int64Rules)(nil), // 30: buf.validate.Int64Rules - (*validate.UInt32Rules)(nil), // 31: buf.validate.UInt32Rules - (*validate.UInt64Rules)(nil), // 32: buf.validate.UInt64Rules - (*validate.SInt32Rules)(nil), // 33: buf.validate.SInt32Rules - (*validate.SInt64Rules)(nil), // 34: buf.validate.SInt64Rules - (*validate.Fixed32Rules)(nil), // 35: buf.validate.Fixed32Rules - (*validate.Fixed64Rules)(nil), // 36: buf.validate.Fixed64Rules - (*validate.SFixed32Rules)(nil), // 37: buf.validate.SFixed32Rules - (*validate.SFixed64Rules)(nil), // 38: buf.validate.SFixed64Rules - (*validate.BoolRules)(nil), // 39: buf.validate.BoolRules - (*validate.StringRules)(nil), // 40: buf.validate.StringRules - (*validate.BytesRules)(nil), // 41: buf.validate.BytesRules - (*validate.EnumRules)(nil), // 42: buf.validate.EnumRules - (*validate.RepeatedRules)(nil), // 43: buf.validate.RepeatedRules - (*validate.MapRules)(nil), // 44: buf.validate.MapRules - (*validate.DurationRules)(nil), // 45: buf.validate.DurationRules - (*validate.TimestampRules)(nil), // 46: 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 - 23, // 1: buf.validate.conformance.cases.PredefinedMapRuleEdition2023.val:type_name -> buf.validate.conformance.cases.PredefinedMapRuleEdition2023.ValEntry - 25, // 2: buf.validate.conformance.cases.PredefinedDurationRuleEdition2023.val:type_name -> google.protobuf.Duration - 26, // 3: buf.validate.conformance.cases.PredefinedTimestampRuleEdition2023.val:type_name -> google.protobuf.Timestamp - 24, // 4: buf.validate.conformance.cases.PredefinedAndCustomRuleEdition2023.b:type_name -> buf.validate.conformance.cases.PredefinedAndCustomRuleEdition2023.Nested - 27, // 5: buf.validate.conformance.cases.float_abs_range_edition_2023:extendee -> buf.validate.FloatRules - 28, // 6: buf.validate.conformance.cases.double_abs_range_edition_2023:extendee -> buf.validate.DoubleRules - 29, // 7: buf.validate.conformance.cases.int32_even_edition_2023:extendee -> buf.validate.Int32Rules - 30, // 8: buf.validate.conformance.cases.int64_even_edition_2023:extendee -> buf.validate.Int64Rules - 31, // 9: buf.validate.conformance.cases.uint32_even_edition_2023:extendee -> buf.validate.UInt32Rules - 32, // 10: buf.validate.conformance.cases.uint64_even_edition_2023:extendee -> buf.validate.UInt64Rules - 33, // 11: buf.validate.conformance.cases.sint32_even_edition_2023:extendee -> buf.validate.SInt32Rules - 34, // 12: buf.validate.conformance.cases.sint64_even_edition_2023:extendee -> buf.validate.SInt64Rules - 35, // 13: buf.validate.conformance.cases.fixed32_even_edition_2023:extendee -> buf.validate.Fixed32Rules - 36, // 14: buf.validate.conformance.cases.fixed64_even_edition_2023:extendee -> buf.validate.Fixed64Rules - 37, // 15: buf.validate.conformance.cases.sfixed32_even_edition_2023:extendee -> buf.validate.SFixed32Rules - 38, // 16: buf.validate.conformance.cases.sfixed64_even_edition_2023:extendee -> buf.validate.SFixed64Rules - 39, // 17: buf.validate.conformance.cases.bool_false_edition_2023:extendee -> buf.validate.BoolRules - 40, // 18: buf.validate.conformance.cases.string_valid_path_edition_2023:extendee -> buf.validate.StringRules - 41, // 19: buf.validate.conformance.cases.bytes_valid_path_edition_2023:extendee -> buf.validate.BytesRules - 42, // 20: buf.validate.conformance.cases.enum_non_zero_edition_2023:extendee -> buf.validate.EnumRules - 43, // 21: buf.validate.conformance.cases.repeated_at_least_five_edition_2023:extendee -> buf.validate.RepeatedRules - 44, // 22: buf.validate.conformance.cases.map_at_least_five_edition_2023:extendee -> buf.validate.MapRules - 45, // 23: buf.validate.conformance.cases.duration_too_long_edition_2023:extendee -> buf.validate.DurationRules - 46, // 24: buf.validate.conformance.cases.timestamp_in_range_edition_2023:extendee -> buf.validate.TimestampRules - 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 - 5, // [5:25] is the sub-list for extension extendee - 0, // [0:5] 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() } @@ -2211,7 +3238,7 @@ func file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_i } } file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PredefinedAndCustomRuleEdition2023); i { + switch v := v.(*PredefinedWrappedFloatRuleEdition2023); i { case 0: return &v.state case 1: @@ -2223,7 +3250,19 @@ func file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_i } } file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StandardPredefinedAndCustomRuleEdition2023); i { + switch v := v.(*PredefinedWrappedDoubleRuleEdition2023); 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[22].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedWrappedInt32RuleEdition2023); i { case 0: return &v.state case 1: @@ -2235,6 +3274,210 @@ func file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_i } } file_buf_validate_conformance_cases_predefined_rules_proto_editions_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedWrappedInt64RuleEdition2023); 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[24].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedWrappedUInt32RuleEdition2023); 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[25].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedWrappedUInt64RuleEdition2023); 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[26].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedWrappedBoolRuleEdition2023); 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[27].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedWrappedStringRuleEdition2023); 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[28].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedWrappedBytesRuleEdition2023); 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[29].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PredefinedRepeatedWrappedFloatRuleEdition2023); 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[30].Exporter = func(v interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + switch v := v.(*PredefinedRepeatedWrappedInt32RuleEdition2023); 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[32].Exporter = func(v interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { + 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 interface{}, i int) interface{} { switch v := v.(*PredefinedAndCustomRuleEdition2023_Nested); i { case 0: return &v.state @@ -2253,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: 24, + NumMessages: 42, NumExtensions: 20, NumServices: 0, },