From 3e7b59867ed33179b1ebbcdd4888d642c02dfe6c Mon Sep 17 00:00:00 2001 From: marbar3778 Date: Fri, 24 Feb 2023 14:58:11 +0100 Subject: [PATCH 01/12] burnable params for gov --- api/cosmos/gov/v1/gov.pulsar.go | 266 ++++++++++++++++++++++++---- proto/cosmos/gov/v1/gov.proto | 7 + x/gov/abci.go | 9 +- x/gov/keeper/tally.go | 4 +- x/gov/migrations/v4/json.go | 3 + x/gov/migrations/v4/store.go | 10 +- x/gov/migrations/v5/store.go | 3 + x/gov/simulation/genesis.go | 2 +- x/gov/types/v1/gov.pb.go | 298 +++++++++++++++++++++++--------- x/gov/types/v1/params.go | 11 +- 10 files changed, 486 insertions(+), 127 deletions(-) diff --git a/api/cosmos/gov/v1/gov.pulsar.go b/api/cosmos/gov/v1/gov.pulsar.go index d8bd8449eccc..590fca876076 100644 --- a/api/cosmos/gov/v1/gov.pulsar.go +++ b/api/cosmos/gov/v1/gov.pulsar.go @@ -5480,6 +5480,9 @@ var ( fd_Params_expedited_voting_period protoreflect.FieldDescriptor fd_Params_expedited_threshold protoreflect.FieldDescriptor fd_Params_expedited_min_deposit protoreflect.FieldDescriptor + fd_Params_burn_vote_quorum protoreflect.FieldDescriptor + fd_Params_burn_proposal_deposit protoreflect.FieldDescriptor + fd_Params_burn_vote_veto protoreflect.FieldDescriptor ) func init() { @@ -5497,6 +5500,9 @@ func init() { fd_Params_expedited_voting_period = md_Params.Fields().ByName("expedited_voting_period") fd_Params_expedited_threshold = md_Params.Fields().ByName("expedited_threshold") fd_Params_expedited_min_deposit = md_Params.Fields().ByName("expedited_min_deposit") + fd_Params_burn_vote_quorum = md_Params.Fields().ByName("burn_vote_quorum") + fd_Params_burn_proposal_deposit = md_Params.Fields().ByName("burn_proposal_deposit") + fd_Params_burn_vote_veto = md_Params.Fields().ByName("burn_vote_veto") } var _ protoreflect.Message = (*fastReflection_Params)(nil) @@ -5636,6 +5642,24 @@ func (x *fastReflection_Params) Range(f func(protoreflect.FieldDescriptor, proto return } } + if x.BurnVoteQuorum != false { + value := protoreflect.ValueOfBool(x.BurnVoteQuorum) + if !f(fd_Params_burn_vote_quorum, value) { + return + } + } + if x.BurnProposalDeposit != false { + value := protoreflect.ValueOfBool(x.BurnProposalDeposit) + if !f(fd_Params_burn_proposal_deposit, value) { + return + } + } + if x.BurnVoteVeto != false { + value := protoreflect.ValueOfBool(x.BurnVoteVeto) + if !f(fd_Params_burn_vote_veto, value) { + return + } + } } // Has reports whether a field is populated. @@ -5675,6 +5699,12 @@ func (x *fastReflection_Params) Has(fd protoreflect.FieldDescriptor) bool { return x.ExpeditedThreshold != "" case "cosmos.gov.v1.Params.expedited_min_deposit": return len(x.ExpeditedMinDeposit) != 0 + case "cosmos.gov.v1.Params.burn_vote_quorum": + return x.BurnVoteQuorum != false + case "cosmos.gov.v1.Params.burn_proposal_deposit": + return x.BurnProposalDeposit != false + case "cosmos.gov.v1.Params.burn_vote_veto": + return x.BurnVoteVeto != false default: if fd.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.gov.v1.Params")) @@ -5715,6 +5745,12 @@ func (x *fastReflection_Params) Clear(fd protoreflect.FieldDescriptor) { x.ExpeditedThreshold = "" case "cosmos.gov.v1.Params.expedited_min_deposit": x.ExpeditedMinDeposit = nil + case "cosmos.gov.v1.Params.burn_vote_quorum": + x.BurnVoteQuorum = false + case "cosmos.gov.v1.Params.burn_proposal_deposit": + x.BurnProposalDeposit = false + case "cosmos.gov.v1.Params.burn_vote_veto": + x.BurnVoteVeto = false default: if fd.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.gov.v1.Params")) @@ -5773,6 +5809,15 @@ func (x *fastReflection_Params) Get(descriptor protoreflect.FieldDescriptor) pro } listValue := &_Params_12_list{list: &x.ExpeditedMinDeposit} return protoreflect.ValueOfList(listValue) + case "cosmos.gov.v1.Params.burn_vote_quorum": + value := x.BurnVoteQuorum + return protoreflect.ValueOfBool(value) + case "cosmos.gov.v1.Params.burn_proposal_deposit": + value := x.BurnProposalDeposit + return protoreflect.ValueOfBool(value) + case "cosmos.gov.v1.Params.burn_vote_veto": + value := x.BurnVoteVeto + return protoreflect.ValueOfBool(value) default: if descriptor.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.gov.v1.Params")) @@ -5821,6 +5866,12 @@ func (x *fastReflection_Params) Set(fd protoreflect.FieldDescriptor, value proto lv := value.List() clv := lv.(*_Params_12_list) x.ExpeditedMinDeposit = *clv.list + case "cosmos.gov.v1.Params.burn_vote_quorum": + x.BurnVoteQuorum = value.Bool() + case "cosmos.gov.v1.Params.burn_proposal_deposit": + x.BurnProposalDeposit = value.Bool() + case "cosmos.gov.v1.Params.burn_vote_veto": + x.BurnVoteVeto = value.Bool() default: if fd.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.gov.v1.Params")) @@ -5882,6 +5933,12 @@ func (x *fastReflection_Params) Mutable(fd protoreflect.FieldDescriptor) protore panic(fmt.Errorf("field proposal_cancel_dest of message cosmos.gov.v1.Params is not mutable")) case "cosmos.gov.v1.Params.expedited_threshold": panic(fmt.Errorf("field expedited_threshold of message cosmos.gov.v1.Params is not mutable")) + case "cosmos.gov.v1.Params.burn_vote_quorum": + panic(fmt.Errorf("field burn_vote_quorum of message cosmos.gov.v1.Params is not mutable")) + case "cosmos.gov.v1.Params.burn_proposal_deposit": + panic(fmt.Errorf("field burn_proposal_deposit of message cosmos.gov.v1.Params is not mutable")) + case "cosmos.gov.v1.Params.burn_vote_veto": + panic(fmt.Errorf("field burn_vote_veto of message cosmos.gov.v1.Params is not mutable")) default: if fd.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.gov.v1.Params")) @@ -5924,6 +5981,12 @@ func (x *fastReflection_Params) NewField(fd protoreflect.FieldDescriptor) protor case "cosmos.gov.v1.Params.expedited_min_deposit": list := []*v1beta1.Coin{} return protoreflect.ValueOfList(&_Params_12_list{list: &list}) + case "cosmos.gov.v1.Params.burn_vote_quorum": + return protoreflect.ValueOfBool(false) + case "cosmos.gov.v1.Params.burn_proposal_deposit": + return protoreflect.ValueOfBool(false) + case "cosmos.gov.v1.Params.burn_vote_veto": + return protoreflect.ValueOfBool(false) default: if fd.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.gov.v1.Params")) @@ -6045,6 +6108,15 @@ func (x *fastReflection_Params) ProtoMethods() *protoiface.Methods { n += 1 + l + runtime.Sov(uint64(l)) } } + if x.BurnVoteQuorum { + n += 2 + } + if x.BurnProposalDeposit { + n += 2 + } + if x.BurnVoteVeto { + n += 2 + } if x.unknownFields != nil { n += len(x.unknownFields) } @@ -6074,6 +6146,36 @@ func (x *fastReflection_Params) ProtoMethods() *protoiface.Methods { i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } + if x.BurnVoteVeto { + i-- + if x.BurnVoteVeto { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x78 + } + if x.BurnProposalDeposit { + i-- + if x.BurnProposalDeposit { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x70 + } + if x.BurnVoteQuorum { + i-- + if x.BurnVoteQuorum { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x68 + } if len(x.ExpeditedMinDeposit) > 0 { for iNdEx := len(x.ExpeditedMinDeposit) - 1; iNdEx >= 0; iNdEx-- { encoded, err := options.Marshal(x.ExpeditedMinDeposit[iNdEx]) @@ -6646,6 +6748,66 @@ func (x *fastReflection_Params) ProtoMethods() *protoiface.Methods { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err } iNdEx = postIndex + case 13: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BurnVoteQuorum", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + x.BurnVoteQuorum = bool(v != 0) + case 14: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BurnProposalDeposit", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + x.BurnProposalDeposit = bool(v != 0) + case 15: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BurnVoteVeto", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + x.BurnVoteVeto = bool(v != 0) default: iNdEx = preIndex skippy, err := runtime.Skip(dAtA[iNdEx:]) @@ -7413,6 +7575,12 @@ type Params struct { ExpeditedThreshold string `protobuf:"bytes,11,opt,name=expedited_threshold,json=expeditedThreshold,proto3" json:"expedited_threshold,omitempty"` // Minimum expedited deposit for a proposal to enter voting period. ExpeditedMinDeposit []*v1beta1.Coin `protobuf:"bytes,12,rep,name=expedited_min_deposit,json=expeditedMinDeposit,proto3" json:"expedited_min_deposit,omitempty"` + // burn deposits if a proposal does not meet qourum + BurnVoteQuorum bool `protobuf:"varint,13,opt,name=burn_vote_quorum,json=burnVoteQuorum,proto3" json:"burn_vote_quorum,omitempty"` + // burn deposits if the proposal does not get enough deposits + BurnProposalDeposit bool `protobuf:"varint,14,opt,name=burn_proposal_deposit,json=burnProposalDeposit,proto3" json:"burn_proposal_deposit,omitempty"` + // burn deposits if qourum with vote type no_veto is met + BurnVoteVeto bool `protobuf:"varint,15,opt,name=burn_vote_veto,json=burnVoteVeto,proto3" json:"burn_vote_veto,omitempty"` } func (x *Params) Reset() { @@ -7519,6 +7687,27 @@ func (x *Params) GetExpeditedMinDeposit() []*v1beta1.Coin { return nil } +func (x *Params) GetBurnVoteQuorum() bool { + if x != nil { + return x.BurnVoteQuorum + } + return false +} + +func (x *Params) GetBurnProposalDeposit() bool { + if x != nil { + return x.BurnProposalDeposit + } + return false +} + +func (x *Params) GetBurnVoteVeto() bool { + if x != nil { + return x.BurnVoteVeto + } + return false +} + var File_cosmos_gov_v1_gov_proto protoreflect.FileDescriptor var file_cosmos_gov_v1_gov_proto_rawDesc = []byte{ @@ -7654,7 +7843,7 @@ var file_cosmos_gov_v1_gov_proto_rawDesc = []byte{ 0x64, 0x12, 0x35, 0x0a, 0x0e, 0x76, 0x65, 0x74, 0x6f, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0e, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x44, 0x65, 0x63, 0x52, 0x0d, 0x76, 0x65, 0x74, 0x6f, 0x54, - 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x3a, 0x02, 0x18, 0x01, 0x22, 0xc0, 0x06, 0x0a, + 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x3a, 0x02, 0x18, 0x01, 0x22, 0xc4, 0x07, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x45, 0x0a, 0x0b, 0x6d, 0x69, 0x6e, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, @@ -7706,39 +7895,48 @@ var file_cosmos_gov_v1_gov_proto_rawDesc = []byte{ 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x13, 0x65, 0x78, 0x70, 0x65, - 0x64, 0x69, 0x74, 0x65, 0x64, 0x4d, 0x69, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x2a, - 0x89, 0x01, 0x0a, 0x0a, 0x56, 0x6f, 0x74, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, - 0x0a, 0x17, 0x56, 0x4f, 0x54, 0x45, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, - 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x56, - 0x4f, 0x54, 0x45, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x59, 0x45, 0x53, 0x10, 0x01, - 0x12, 0x17, 0x0a, 0x13, 0x56, 0x4f, 0x54, 0x45, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, - 0x41, 0x42, 0x53, 0x54, 0x41, 0x49, 0x4e, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x56, 0x4f, 0x54, - 0x45, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x10, 0x03, 0x12, 0x1c, 0x0a, - 0x18, 0x56, 0x4f, 0x54, 0x45, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x5f, - 0x57, 0x49, 0x54, 0x48, 0x5f, 0x56, 0x45, 0x54, 0x4f, 0x10, 0x04, 0x2a, 0xce, 0x01, 0x0a, 0x0e, - 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1f, - 0x0a, 0x1b, 0x50, 0x52, 0x4f, 0x50, 0x4f, 0x53, 0x41, 0x4c, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, - 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, - 0x22, 0x0a, 0x1e, 0x50, 0x52, 0x4f, 0x50, 0x4f, 0x53, 0x41, 0x4c, 0x5f, 0x53, 0x54, 0x41, 0x54, - 0x55, 0x53, 0x5f, 0x44, 0x45, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x5f, 0x50, 0x45, 0x52, 0x49, 0x4f, - 0x44, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x50, 0x52, 0x4f, 0x50, 0x4f, 0x53, 0x41, 0x4c, 0x5f, - 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x56, 0x4f, 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x50, 0x45, - 0x52, 0x49, 0x4f, 0x44, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52, 0x4f, 0x50, 0x4f, 0x53, - 0x41, 0x4c, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x50, 0x41, 0x53, 0x53, 0x45, 0x44, - 0x10, 0x03, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x50, 0x4f, 0x53, 0x41, 0x4c, 0x5f, 0x53, - 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x04, - 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52, 0x4f, 0x50, 0x4f, 0x53, 0x41, 0x4c, 0x5f, 0x53, 0x54, 0x41, - 0x54, 0x55, 0x53, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x05, 0x42, 0x99, 0x01, 0x0a, - 0x11, 0x63, 0x6f, 0x6d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x67, 0x6f, 0x76, 0x2e, - 0x76, 0x31, 0x42, 0x08, 0x47, 0x6f, 0x76, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x24, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, - 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x67, 0x6f, 0x76, 0x2f, 0x76, 0x31, 0x3b, 0x67, - 0x6f, 0x76, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x43, 0x47, 0x58, 0xaa, 0x02, 0x0d, 0x43, 0x6f, 0x73, - 0x6d, 0x6f, 0x73, 0x2e, 0x47, 0x6f, 0x76, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x0d, 0x43, 0x6f, 0x73, - 0x6d, 0x6f, 0x73, 0x5c, 0x47, 0x6f, 0x76, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x19, 0x43, 0x6f, 0x73, - 0x6d, 0x6f, 0x73, 0x5c, 0x47, 0x6f, 0x76, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x0f, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x3a, - 0x3a, 0x47, 0x6f, 0x76, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x64, 0x69, 0x74, 0x65, 0x64, 0x4d, 0x69, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x12, + 0x28, 0x0a, 0x10, 0x62, 0x75, 0x72, 0x6e, 0x5f, 0x76, 0x6f, 0x74, 0x65, 0x5f, 0x71, 0x75, 0x6f, + 0x72, 0x75, 0x6d, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x62, 0x75, 0x72, 0x6e, 0x56, + 0x6f, 0x74, 0x65, 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x12, 0x32, 0x0a, 0x15, 0x62, 0x75, 0x72, + 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, + 0x69, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x62, 0x75, 0x72, 0x6e, 0x50, 0x72, + 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x12, 0x24, 0x0a, + 0x0e, 0x62, 0x75, 0x72, 0x6e, 0x5f, 0x76, 0x6f, 0x74, 0x65, 0x5f, 0x76, 0x65, 0x74, 0x6f, 0x18, + 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x62, 0x75, 0x72, 0x6e, 0x56, 0x6f, 0x74, 0x65, 0x56, + 0x65, 0x74, 0x6f, 0x2a, 0x89, 0x01, 0x0a, 0x0a, 0x56, 0x6f, 0x74, 0x65, 0x4f, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x17, 0x56, 0x4f, 0x54, 0x45, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, + 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, + 0x13, 0x0a, 0x0f, 0x56, 0x4f, 0x54, 0x45, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x59, + 0x45, 0x53, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x56, 0x4f, 0x54, 0x45, 0x5f, 0x4f, 0x50, 0x54, + 0x49, 0x4f, 0x4e, 0x5f, 0x41, 0x42, 0x53, 0x54, 0x41, 0x49, 0x4e, 0x10, 0x02, 0x12, 0x12, 0x0a, + 0x0e, 0x56, 0x4f, 0x54, 0x45, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x10, + 0x03, 0x12, 0x1c, 0x0a, 0x18, 0x56, 0x4f, 0x54, 0x45, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, + 0x5f, 0x4e, 0x4f, 0x5f, 0x57, 0x49, 0x54, 0x48, 0x5f, 0x56, 0x45, 0x54, 0x4f, 0x10, 0x04, 0x2a, + 0xce, 0x01, 0x0a, 0x0e, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x52, 0x4f, 0x50, 0x4f, 0x53, 0x41, 0x4c, 0x5f, 0x53, + 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, + 0x44, 0x10, 0x00, 0x12, 0x22, 0x0a, 0x1e, 0x50, 0x52, 0x4f, 0x50, 0x4f, 0x53, 0x41, 0x4c, 0x5f, + 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x44, 0x45, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x5f, 0x50, + 0x45, 0x52, 0x49, 0x4f, 0x44, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x50, 0x52, 0x4f, 0x50, 0x4f, + 0x53, 0x41, 0x4c, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x56, 0x4f, 0x54, 0x49, 0x4e, + 0x47, 0x5f, 0x50, 0x45, 0x52, 0x49, 0x4f, 0x44, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52, + 0x4f, 0x50, 0x4f, 0x53, 0x41, 0x4c, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x50, 0x41, + 0x53, 0x53, 0x45, 0x44, 0x10, 0x03, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x50, 0x4f, 0x53, + 0x41, 0x4c, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, + 0x45, 0x44, 0x10, 0x04, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52, 0x4f, 0x50, 0x4f, 0x53, 0x41, 0x4c, + 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x05, + 0x42, 0x99, 0x01, 0x0a, 0x11, 0x63, 0x6f, 0x6d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, + 0x67, 0x6f, 0x76, 0x2e, 0x76, 0x31, 0x42, 0x08, 0x47, 0x6f, 0x76, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x50, 0x01, 0x5a, 0x24, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, + 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x67, 0x6f, 0x76, 0x2f, + 0x76, 0x31, 0x3b, 0x67, 0x6f, 0x76, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x43, 0x47, 0x58, 0xaa, 0x02, + 0x0d, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x47, 0x6f, 0x76, 0x2e, 0x56, 0x31, 0xca, 0x02, + 0x0d, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5c, 0x47, 0x6f, 0x76, 0x5c, 0x56, 0x31, 0xe2, 0x02, + 0x19, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5c, 0x47, 0x6f, 0x76, 0x5c, 0x56, 0x31, 0x5c, 0x47, + 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x0f, 0x43, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x3a, 0x3a, 0x47, 0x6f, 0x76, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/proto/cosmos/gov/v1/gov.proto b/proto/cosmos/gov/v1/gov.proto index 87bde2969f37..919381a31d28 100644 --- a/proto/cosmos/gov/v1/gov.proto +++ b/proto/cosmos/gov/v1/gov.proto @@ -243,4 +243,11 @@ message Params { // Minimum expedited deposit for a proposal to enter voting period. repeated cosmos.base.v1beta1.Coin expedited_min_deposit = 12 [(gogoproto.nullable) = false, (amino.dont_omitempty) = true]; + + // burn deposits if a proposal does not meet qourum + bool burn_vote_quorum = 13; + // burn deposits if the proposal does not get enough deposits + bool burn_proposal_deposit = 14; + // burn deposits if qourum with vote type no_veto is met + bool burn_vote_veto = 15; } diff --git a/x/gov/abci.go b/x/gov/abci.go index 3692cc10cbce..2b0d60a30629 100644 --- a/x/gov/abci.go +++ b/x/gov/abci.go @@ -20,7 +20,12 @@ func EndBlocker(ctx sdk.Context, keeper *keeper.Keeper) { // A proposal is dead when it's inactive and didn't get enough deposit on time to get into voting phase. keeper.IterateInactiveProposalsQueue(ctx, ctx.BlockHeader().Time, func(proposal v1.Proposal) bool { keeper.DeleteProposal(ctx, proposal.Id) - keeper.RefundAndDeleteDeposits(ctx, proposal.Id) // refund deposit if proposal got removed without getting 100% of the proposal + + if !keeper.GetParams(ctx).BurnProposalDeposit { + keeper.RefundAndDeleteDeposits(ctx, proposal.Id) // refund deposit if proposal got removed without getting 100% of the proposal + } else { + keeper.DeleteAndBurnDeposits(ctx, proposal.Id) // burn the deposit if proposal got removed without getting 100% of the proposal + } // called when proposal become inactive keeper.Hooks().AfterProposalFailedMinDeposit(ctx, proposal.Id) @@ -53,7 +58,7 @@ func EndBlocker(ctx sdk.Context, keeper *keeper.Keeper) { // If an expedited proposal fails, we do not want to update // the deposit at this point since the proposal is converted to regular. - // As a result, the deposits are either deleted or refunded in all casses + // As a result, the deposits are either deleted or refunded in all cases // EXCEPT when an expedited proposal fails. if !(proposal.Expedited && !passes) { if burnDeposits { diff --git a/x/gov/keeper/tally.go b/x/gov/keeper/tally.go index 0f1a4f0cfdd9..b2cf46d74fe1 100644 --- a/x/gov/keeper/tally.go +++ b/x/gov/keeper/tally.go @@ -102,7 +102,7 @@ func (keeper Keeper) Tally(ctx sdk.Context, proposal v1.Proposal) (passes bool, percentVoting := totalVotingPower.Quo(sdk.NewDecFromInt(keeper.sk.TotalBondedTokens(ctx))) quorum, _ := sdk.NewDecFromStr(params.Quorum) if percentVoting.LT(quorum) { - return false, false, tallyResults + return false, keeper.GetParams(ctx).BurnVoteQuorum, tallyResults } // If no one votes (everyone abstains), proposal fails @@ -113,7 +113,7 @@ func (keeper Keeper) Tally(ctx sdk.Context, proposal v1.Proposal) (passes bool, // If more than 1/3 of voters veto, proposal fails vetoThreshold, _ := sdk.NewDecFromStr(params.VetoThreshold) if results[v1.OptionNoWithVeto].Quo(totalVotingPower).GT(vetoThreshold) { - return false, true, tallyResults + return false, keeper.GetParams(ctx).BurnVoteVeto, tallyResults } // If more than 1/2 of non-abstaining voters vote Yes, proposal passes diff --git a/x/gov/migrations/v4/json.go b/x/gov/migrations/v4/json.go index b281ad237ed7..822f2666ab36 100644 --- a/x/gov/migrations/v4/json.go +++ b/x/gov/migrations/v4/json.go @@ -26,6 +26,9 @@ func MigrateJSON(oldState *v1.GenesisState) (*v1.GenesisState, error) { defaultParams.MinInitialDepositRatio, defaultParams.ProposalCancelRatio, defaultParams.ProposalCancelDest, + defaultParams.BurnProposalDeposit, + defaultParams.BurnVoteQuorum, + defaultParams.BurnVoteVeto, ) return &v1.GenesisState{ diff --git a/x/gov/migrations/v4/store.go b/x/gov/migrations/v4/store.go index c108e3ed7921..fbfaa5a38cac 100644 --- a/x/gov/migrations/v4/store.go +++ b/x/gov/migrations/v4/store.go @@ -25,19 +25,23 @@ func migrateParams(ctx sdk.Context, storeKey storetypes.StoreKey, legacySubspace legacySubspace.Get(ctx, govv1.ParamStoreKeyVotingParams, &vp) legacySubspace.Get(ctx, govv1.ParamStoreKeyTallyParams, &tp) + defaultParams := govv1.DefaultParams() params := govv1.NewParams( dp.MinDeposit, - govv1.DefaultParams().ExpeditedMinDeposit, + defaultParams.ExpeditedMinDeposit, *dp.MaxDepositPeriod, *vp.VotingPeriod, - *govv1.DefaultParams().ExpeditedVotingPeriod, + *defaultParams.ExpeditedVotingPeriod, tp.Quorum, tp.Threshold, - govv1.DefaultParams().ExpeditedThreshold, + defaultParams.ExpeditedThreshold, tp.VetoThreshold, sdk.ZeroDec().String(), sdk.ZeroDec().String(), "", + defaultParams.BurnProposalDeposit, + defaultParams.BurnVoteQuorum, + defaultParams.BurnVoteVeto, ) bz, err := cdc.Marshal(¶ms) diff --git a/x/gov/migrations/v5/store.go b/x/gov/migrations/v5/store.go index d17f93ba4722..ec7b5fae0159 100644 --- a/x/gov/migrations/v5/store.go +++ b/x/gov/migrations/v5/store.go @@ -24,6 +24,9 @@ func MigrateStore(ctx sdk.Context, storeKey storetypes.StoreKey, cdc codec.Binar params.ExpeditedMinDeposit = defaultParams.ExpeditedMinDeposit params.ExpeditedVotingPeriod = defaultParams.ExpeditedVotingPeriod params.ExpeditedThreshold = defaultParams.ExpeditedThreshold + params.BurnProposalDeposit = defaultParams.BurnProposalDeposit + params.BurnVoteQuorum = defaultParams.BurnVoteQuorum + params.BurnVoteVeto = defaultParams.BurnVoteVeto bz, err := cdc.Marshal(¶ms) if err != nil { diff --git a/x/gov/simulation/genesis.go b/x/gov/simulation/genesis.go index 384943024045..6c41b314f719 100644 --- a/x/gov/simulation/genesis.go +++ b/x/gov/simulation/genesis.go @@ -166,7 +166,7 @@ func RandomizedGenState(simState *module.SimulationState) { govGenesis := v1.NewGenesisState( startingProposalID, - v1.NewParams(minDeposit, expeditedMinDeposit, depositPeriod, votingPeriod, expeditedVotingPeriod, quorum.String(), threshold.String(), expitedVotingThreshold.String(), veto.String(), minInitialDepositRatio.String(), proposalCancelRate.String(), ""), + v1.NewParams(minDeposit, expeditedMinDeposit, depositPeriod, votingPeriod, expeditedVotingPeriod, quorum.String(), threshold.String(), expitedVotingThreshold.String(), veto.String(), minInitialDepositRatio.String(), proposalCancelRate.String(), "", false, false, true), //TODO: randomize ) bz, err := json.MarshalIndent(&govGenesis, "", " ") diff --git a/x/gov/types/v1/gov.pb.go b/x/gov/types/v1/gov.pb.go index a2c378dde67d..99da3d163b48 100644 --- a/x/gov/types/v1/gov.pb.go +++ b/x/gov/types/v1/gov.pb.go @@ -775,6 +775,12 @@ type Params struct { ExpeditedThreshold string `protobuf:"bytes,11,opt,name=expedited_threshold,json=expeditedThreshold,proto3" json:"expedited_threshold,omitempty"` // Minimum expedited deposit for a proposal to enter voting period. ExpeditedMinDeposit []types.Coin `protobuf:"bytes,12,rep,name=expedited_min_deposit,json=expeditedMinDeposit,proto3" json:"expedited_min_deposit"` + // burn deposits if a proposal does not meet qourum + BurnVoteQuorum bool `protobuf:"varint,13,opt,name=burn_vote_quorum,json=burnVoteQuorum,proto3" json:"burn_vote_quorum,omitempty"` + // burn deposits if the proposal does not get enough deposits + BurnProposalDeposit bool `protobuf:"varint,14,opt,name=burn_proposal_deposit,json=burnProposalDeposit,proto3" json:"burn_proposal_deposit,omitempty"` + // burn deposits if qourum with vote type no_veto is met + BurnVoteVeto bool `protobuf:"varint,15,opt,name=burn_vote_veto,json=burnVoteVeto,proto3" json:"burn_vote_veto,omitempty"` } func (m *Params) Reset() { *m = Params{} } @@ -894,6 +900,27 @@ func (m *Params) GetExpeditedMinDeposit() []types.Coin { return nil } +func (m *Params) GetBurnVoteQuorum() bool { + if m != nil { + return m.BurnVoteQuorum + } + return false +} + +func (m *Params) GetBurnProposalDeposit() bool { + if m != nil { + return m.BurnProposalDeposit + } + return false +} + +func (m *Params) GetBurnVoteVeto() bool { + if m != nil { + return m.BurnVoteVeto + } + return false +} + func init() { proto.RegisterEnum("cosmos.gov.v1.VoteOption", VoteOption_name, VoteOption_value) proto.RegisterEnum("cosmos.gov.v1.ProposalStatus", ProposalStatus_name, ProposalStatus_value) @@ -911,90 +938,94 @@ func init() { func init() { proto.RegisterFile("cosmos/gov/v1/gov.proto", fileDescriptor_e05cb1c0d030febb) } var fileDescriptor_e05cb1c0d030febb = []byte{ - // 1328 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x57, 0xcd, 0x73, 0xd3, 0xc6, - 0x1b, 0x8e, 0xfc, 0x15, 0xfb, 0x75, 0x6c, 0xcc, 0x26, 0x10, 0x25, 0x80, 0x1d, 0x3c, 0xbf, 0x61, - 0xf2, 0xe3, 0xc3, 0x6e, 0xa0, 0xf4, 0x50, 0x3a, 0xd3, 0xb1, 0x63, 0x51, 0x94, 0x81, 0xd8, 0x23, - 0x1b, 0x07, 0x7a, 0xd1, 0x28, 0xd6, 0xe2, 0x68, 0x6a, 0x69, 0x5d, 0xed, 0xda, 0xc4, 0x7f, 0x42, - 0x6f, 0x1c, 0x7b, 0xea, 0xf4, 0xd8, 0x63, 0x0f, 0x4c, 0xcf, 0x3d, 0x72, 0xea, 0x30, 0x5c, 0xda, - 0x4b, 0xa1, 0x43, 0x0e, 0x9d, 0xe1, 0xaf, 0xe8, 0x68, 0xb5, 0xb2, 0x6c, 0xc7, 0x6d, 0x12, 0x2e, - 0x89, 0xf4, 0xbe, 0xcf, 0xf3, 0xec, 0xbb, 0xef, 0xc7, 0xae, 0x05, 0xab, 0x1d, 0x42, 0x6d, 0x42, - 0xcb, 0x5d, 0x32, 0x2c, 0x0f, 0xb7, 0xbc, 0x7f, 0xa5, 0xbe, 0x4b, 0x18, 0x41, 0x19, 0xdf, 0x51, - 0xf2, 0x2c, 0xc3, 0xad, 0xf5, 0xbc, 0xc0, 0xed, 0x1b, 0x14, 0x97, 0x87, 0x5b, 0xfb, 0x98, 0x19, - 0x5b, 0xe5, 0x0e, 0xb1, 0x1c, 0x1f, 0xbe, 0xbe, 0xd2, 0x25, 0x5d, 0xc2, 0x1f, 0xcb, 0xde, 0x93, - 0xb0, 0x16, 0xba, 0x84, 0x74, 0x7b, 0xb8, 0xcc, 0xdf, 0xf6, 0x07, 0xcf, 0xca, 0xcc, 0xb2, 0x31, - 0x65, 0x86, 0xdd, 0x17, 0x80, 0xb5, 0x59, 0x80, 0xe1, 0x8c, 0x84, 0x2b, 0x3f, 0xeb, 0x32, 0x07, - 0xae, 0xc1, 0x2c, 0x12, 0xac, 0xb8, 0xe6, 0x47, 0xa4, 0xfb, 0x8b, 0x8a, 0x68, 0x7d, 0xd7, 0x79, - 0xc3, 0xb6, 0x1c, 0x52, 0xe6, 0x7f, 0x7d, 0x53, 0x91, 0x00, 0xda, 0xc3, 0x56, 0xf7, 0x80, 0x61, - 0xb3, 0x4d, 0x18, 0xae, 0xf7, 0x3d, 0x25, 0xb4, 0x05, 0x09, 0xc2, 0x9f, 0x64, 0x69, 0x43, 0xda, - 0xcc, 0xde, 0x5e, 0x2b, 0x4d, 0xed, 0xba, 0x14, 0x42, 0x35, 0x01, 0x44, 0xd7, 0x20, 0xf1, 0x9c, - 0x0b, 0xc9, 0x91, 0x0d, 0x69, 0x33, 0x55, 0xcd, 0xbe, 0x79, 0x79, 0x0b, 0x04, 0xab, 0x86, 0x3b, - 0x9a, 0xf0, 0x16, 0x7f, 0x94, 0x60, 0xb1, 0x86, 0xfb, 0x84, 0x5a, 0x0c, 0x15, 0x20, 0xdd, 0x77, - 0x49, 0x9f, 0x50, 0xa3, 0xa7, 0x5b, 0x26, 0x5f, 0x2b, 0xa6, 0x41, 0x60, 0x52, 0x4d, 0xf4, 0x19, - 0xa4, 0x4c, 0x1f, 0x4b, 0x5c, 0xa1, 0x2b, 0xbf, 0x79, 0x79, 0x6b, 0x45, 0xe8, 0x56, 0x4c, 0xd3, - 0xc5, 0x94, 0x36, 0x99, 0x6b, 0x39, 0x5d, 0x2d, 0x84, 0xa2, 0x2f, 0x20, 0x61, 0xd8, 0x64, 0xe0, - 0x30, 0x39, 0xba, 0x11, 0xdd, 0x4c, 0x87, 0xf1, 0x7b, 0x65, 0x2a, 0x89, 0x32, 0x95, 0xb6, 0x89, - 0xe5, 0x54, 0x53, 0xaf, 0xde, 0x16, 0x16, 0x7e, 0xfa, 0xfb, 0xe7, 0xeb, 0x92, 0x26, 0x38, 0xc5, - 0x77, 0x71, 0x48, 0x36, 0x44, 0x10, 0x28, 0x0b, 0x91, 0x71, 0x68, 0x11, 0xcb, 0x44, 0x9f, 0x40, - 0xd2, 0xc6, 0x94, 0x1a, 0x5d, 0x4c, 0xe5, 0x08, 0x17, 0x5f, 0x29, 0xf9, 0x15, 0x29, 0x05, 0x15, - 0x29, 0x55, 0x9c, 0x91, 0x36, 0x46, 0xa1, 0xbb, 0x90, 0xa0, 0xcc, 0x60, 0x03, 0x2a, 0x47, 0x79, - 0x32, 0xaf, 0xcc, 0x24, 0x33, 0x58, 0xaa, 0xc9, 0x41, 0x9a, 0x00, 0xa3, 0x07, 0x80, 0x9e, 0x59, - 0x8e, 0xd1, 0xd3, 0x99, 0xd1, 0xeb, 0x8d, 0x74, 0x17, 0xd3, 0x41, 0x8f, 0xc9, 0xb1, 0x0d, 0x69, - 0x33, 0x7d, 0x7b, 0x7d, 0x46, 0xa2, 0xe5, 0x41, 0x34, 0x8e, 0xd0, 0x72, 0x9c, 0x35, 0x61, 0x41, - 0x15, 0x48, 0xd3, 0xc1, 0xbe, 0x6d, 0x31, 0xdd, 0x6b, 0x33, 0x39, 0x2e, 0x24, 0x66, 0xa3, 0x6e, - 0x05, 0x3d, 0x58, 0x8d, 0xbd, 0x78, 0x57, 0x90, 0x34, 0xf0, 0x49, 0x9e, 0x19, 0xed, 0x40, 0x4e, - 0x64, 0x57, 0xc7, 0x8e, 0xe9, 0xeb, 0x24, 0x4e, 0xa9, 0x93, 0x15, 0x4c, 0xc5, 0x31, 0xb9, 0x96, - 0x0a, 0x19, 0x46, 0x98, 0xd1, 0xd3, 0x85, 0x5d, 0x5e, 0x3c, 0x43, 0x8d, 0x96, 0x38, 0x35, 0x68, - 0xa0, 0x87, 0x70, 0x7e, 0x48, 0x98, 0xe5, 0x74, 0x75, 0xca, 0x0c, 0x57, 0xec, 0x2f, 0x79, 0xca, - 0xb8, 0xce, 0xf9, 0xd4, 0xa6, 0xc7, 0xe4, 0x81, 0x3d, 0x00, 0x61, 0x0a, 0xf7, 0x98, 0x3a, 0xa5, - 0x56, 0xc6, 0x27, 0x06, 0x5b, 0x5c, 0xf7, 0x9a, 0x84, 0x19, 0xa6, 0xc1, 0x0c, 0x19, 0xbc, 0xb6, - 0xd5, 0xc6, 0xef, 0x68, 0x05, 0xe2, 0xcc, 0x62, 0x3d, 0x2c, 0xa7, 0xb9, 0xc3, 0x7f, 0x41, 0x32, - 0x2c, 0xd2, 0x81, 0x6d, 0x1b, 0xee, 0x48, 0x5e, 0xe2, 0xf6, 0xe0, 0x15, 0x7d, 0x0a, 0x49, 0x7f, - 0x22, 0xb0, 0x2b, 0x67, 0x4e, 0x18, 0x81, 0x31, 0x12, 0x5d, 0x86, 0x14, 0x3e, 0xec, 0x63, 0xd3, - 0x62, 0xd8, 0x94, 0xb3, 0x1b, 0xd2, 0x66, 0x52, 0x0b, 0x0d, 0xc5, 0xdf, 0x25, 0x48, 0x4f, 0x76, - 0xc8, 0x0d, 0x48, 0x8d, 0x30, 0xd5, 0x3b, 0x7c, 0x64, 0xa4, 0x63, 0xf3, 0xab, 0x3a, 0x4c, 0x4b, - 0x8e, 0x30, 0xdd, 0xf6, 0xfc, 0xe8, 0x0e, 0x64, 0x8c, 0x7d, 0xca, 0x0c, 0xcb, 0x11, 0x84, 0xc8, - 0x5c, 0xc2, 0x92, 0x00, 0xf9, 0xa4, 0xff, 0x43, 0xd2, 0x21, 0x02, 0x1f, 0x9d, 0x8b, 0x5f, 0x74, - 0x88, 0x0f, 0xbd, 0x07, 0xc8, 0x21, 0xfa, 0x73, 0x8b, 0x1d, 0xe8, 0x43, 0xcc, 0x02, 0x52, 0x6c, - 0x2e, 0xe9, 0x9c, 0x43, 0xf6, 0x2c, 0x76, 0xd0, 0xc6, 0xcc, 0x27, 0x17, 0x7f, 0x91, 0x20, 0xe6, - 0x9d, 0x4e, 0x27, 0x9f, 0x2d, 0x25, 0x88, 0x0f, 0x09, 0xc3, 0x27, 0x9f, 0x2b, 0x3e, 0x0c, 0xdd, - 0x83, 0x45, 0xff, 0xa8, 0xa3, 0x72, 0x8c, 0x37, 0xec, 0xd5, 0x99, 0x21, 0x3c, 0x7e, 0x8e, 0x6a, - 0x01, 0x63, 0xaa, 0x21, 0xe2, 0xd3, 0x0d, 0xb1, 0x13, 0x4b, 0x46, 0x73, 0xb1, 0xe2, 0x9f, 0x12, - 0x64, 0x44, 0x5b, 0x37, 0x0c, 0xd7, 0xb0, 0x29, 0x7a, 0x0a, 0x69, 0xdb, 0x72, 0xc6, 0x53, 0x22, - 0x9d, 0x34, 0x25, 0x57, 0xbc, 0x29, 0xf9, 0xf0, 0xb6, 0x70, 0x61, 0x82, 0x75, 0x93, 0xd8, 0x16, - 0xc3, 0x76, 0x9f, 0x8d, 0x34, 0xb0, 0x2d, 0x27, 0x98, 0x1b, 0x1b, 0x90, 0x6d, 0x1c, 0x06, 0x20, - 0xbd, 0x8f, 0x5d, 0x8b, 0x98, 0x3c, 0x11, 0xde, 0x0a, 0xb3, 0xcd, 0x5e, 0x13, 0x17, 0x4c, 0xf5, - 0x7f, 0x1f, 0xde, 0x16, 0x2e, 0x1f, 0x27, 0x86, 0x8b, 0x7c, 0xef, 0xcd, 0x42, 0xce, 0x36, 0x0e, - 0x83, 0x9d, 0x70, 0xff, 0xe7, 0x11, 0x59, 0x2a, 0x3e, 0x81, 0xa5, 0x36, 0x9f, 0x11, 0xb1, 0xbb, - 0x1a, 0x88, 0x99, 0x09, 0x56, 0x97, 0x4e, 0x5a, 0x3d, 0xc6, 0xd5, 0x97, 0x7c, 0xd6, 0x84, 0xf2, - 0x0f, 0x41, 0x33, 0x0b, 0xe5, 0x6b, 0x90, 0xf8, 0x76, 0x40, 0xdc, 0x81, 0x3d, 0xa7, 0x93, 0xf9, - 0x4d, 0xe4, 0x7b, 0xd1, 0x4d, 0x48, 0xb1, 0x03, 0x17, 0xd3, 0x03, 0xd2, 0x33, 0xff, 0xe5, 0xd2, - 0x0a, 0x01, 0xe8, 0x2e, 0x64, 0x79, 0x37, 0x86, 0x94, 0xe8, 0x5c, 0x4a, 0xc6, 0x43, 0xb5, 0x02, - 0x10, 0x0f, 0xf0, 0xd7, 0x04, 0x24, 0x44, 0x6c, 0xca, 0x19, 0x6b, 0x3a, 0x71, 0xf2, 0x4d, 0xd6, - 0xef, 0xd1, 0xc7, 0xd5, 0x2f, 0x36, 0xbf, 0x3e, 0xc7, 0x6b, 0x11, 0xfd, 0x88, 0x5a, 0x4c, 0xe4, - 0x3d, 0x76, 0xfa, 0xbc, 0xc7, 0xcf, 0x9e, 0xf7, 0xc4, 0x29, 0xf2, 0x8e, 0x54, 0x58, 0xf3, 0x12, - 0x6d, 0x39, 0x16, 0xb3, 0xc2, 0xab, 0x46, 0xe7, 0xe1, 0xcb, 0x8b, 0x73, 0x15, 0x2e, 0xda, 0x96, - 0xa3, 0xfa, 0x78, 0x91, 0x1e, 0xcd, 0x43, 0xa3, 0x2a, 0x5c, 0x18, 0x9f, 0x24, 0x1d, 0xc3, 0xe9, - 0xe0, 0x9e, 0x90, 0x49, 0xce, 0x95, 0x59, 0x0e, 0xc0, 0xdb, 0x1c, 0xeb, 0x6b, 0xec, 0xc0, 0xca, - 0xac, 0x86, 0x89, 0x29, 0xe3, 0xf7, 0xcb, 0x7f, 0x9d, 0x3d, 0x68, 0x5a, 0xac, 0x86, 0x29, 0x43, - 0x7b, 0xb0, 0x3a, 0x3e, 0xc9, 0xf5, 0xe9, 0xba, 0xc1, 0xe9, 0xea, 0x76, 0x61, 0xcc, 0x6f, 0x4f, - 0x16, 0xf0, 0x4b, 0x58, 0x0e, 0x85, 0xc3, 0x7c, 0xa7, 0xe7, 0x6e, 0x13, 0x8d, 0xa1, 0x61, 0xd2, - 0x9f, 0x40, 0xa8, 0xac, 0x4f, 0xf6, 0xf9, 0xd2, 0x19, 0xfa, 0x3c, 0x8c, 0xe1, 0xd1, 0xb8, 0xe1, - 0xaf, 0x7f, 0x27, 0x01, 0x4c, 0xfc, 0x3e, 0xbd, 0x04, 0xab, 0xed, 0x7a, 0x4b, 0xd1, 0xeb, 0x8d, - 0x96, 0x5a, 0xdf, 0xd5, 0x1f, 0xef, 0x36, 0x1b, 0xca, 0xb6, 0x7a, 0x5f, 0x55, 0x6a, 0xb9, 0x05, - 0xb4, 0x0c, 0xe7, 0x26, 0x9d, 0x4f, 0x95, 0x66, 0x4e, 0x42, 0xab, 0xb0, 0x3c, 0x69, 0xac, 0x54, - 0x9b, 0xad, 0x8a, 0xba, 0x9b, 0x8b, 0x20, 0x04, 0xd9, 0x49, 0xc7, 0x6e, 0x3d, 0x17, 0x45, 0x97, - 0x41, 0x9e, 0xb6, 0xe9, 0x7b, 0x6a, 0xeb, 0x81, 0xde, 0x56, 0x5a, 0xf5, 0x5c, 0xec, 0xfa, 0x6f, - 0x12, 0x64, 0xa7, 0x7f, 0xb3, 0xa1, 0x02, 0x5c, 0x6a, 0x68, 0xf5, 0x46, 0xbd, 0x59, 0x79, 0xa8, - 0x37, 0x5b, 0x95, 0xd6, 0xe3, 0xe6, 0x4c, 0x4c, 0x45, 0xc8, 0xcf, 0x02, 0x6a, 0x4a, 0xa3, 0xde, - 0x54, 0x5b, 0x7a, 0x43, 0xd1, 0xd4, 0x7a, 0x2d, 0x27, 0xa1, 0xab, 0x70, 0x65, 0x16, 0xd3, 0xae, - 0xb7, 0xd4, 0xdd, 0xaf, 0x02, 0x48, 0x04, 0xad, 0xc3, 0xc5, 0x59, 0x48, 0xa3, 0xd2, 0x6c, 0x2a, - 0x35, 0x3f, 0xe8, 0x59, 0x9f, 0xa6, 0xec, 0x28, 0xdb, 0x2d, 0xa5, 0x96, 0x8b, 0xcd, 0x63, 0xde, - 0xaf, 0xa8, 0x0f, 0x95, 0x5a, 0x2e, 0x5e, 0x55, 0x5e, 0xbd, 0xcf, 0x4b, 0xaf, 0xdf, 0xe7, 0xa5, - 0xbf, 0xde, 0xe7, 0xa5, 0x17, 0x47, 0xf9, 0x85, 0xd7, 0x47, 0xf9, 0x85, 0x3f, 0x8e, 0xf2, 0x0b, - 0x5f, 0xdf, 0xe8, 0x5a, 0xec, 0x60, 0xb0, 0x5f, 0xea, 0x10, 0x5b, 0x7c, 0x49, 0x88, 0x7f, 0xb7, - 0xa8, 0xf9, 0x4d, 0xf9, 0x90, 0x7f, 0x1d, 0xb1, 0x51, 0x1f, 0x53, 0xef, 0xd3, 0x27, 0xc1, 0xdb, - 0xed, 0xce, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x77, 0xd5, 0x45, 0x3f, 0x3b, 0x0d, 0x00, 0x00, + // 1384 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x57, 0xcb, 0x6e, 0xdb, 0x46, + 0x17, 0x36, 0x75, 0xd7, 0xd1, 0xc5, 0xca, 0xd8, 0x8e, 0x69, 0x27, 0x91, 0x1c, 0x21, 0x08, 0xfc, + 0xe7, 0x22, 0xfd, 0x4e, 0x9a, 0x2e, 0x9a, 0x02, 0x85, 0x64, 0x31, 0x0d, 0x8d, 0xc4, 0x52, 0x29, + 0x45, 0x4e, 0xba, 0x21, 0x28, 0x71, 0x22, 0x13, 0x15, 0x39, 0x2a, 0x39, 0x52, 0xac, 0x47, 0xe8, + 0x2e, 0xcb, 0xae, 0x8a, 0x2e, 0xbb, 0xec, 0x22, 0xe8, 0x13, 0x74, 0x91, 0x55, 0x11, 0x64, 0xd3, + 0x6e, 0x9a, 0x14, 0xc9, 0xa2, 0x40, 0x9e, 0xa2, 0xe0, 0x70, 0x28, 0x4a, 0xb2, 0x5a, 0xdb, 0xd9, + 0xd8, 0xe2, 0x39, 0xdf, 0xf7, 0xcd, 0x99, 0x73, 0x99, 0x21, 0x61, 0xbd, 0x4b, 0x1c, 0x93, 0x38, + 0xe5, 0x1e, 0x19, 0x95, 0x47, 0x3b, 0xee, 0xbf, 0xd2, 0xc0, 0x26, 0x94, 0xa0, 0x8c, 0xe7, 0x28, + 0xb9, 0x96, 0xd1, 0xce, 0x66, 0x9e, 0xe3, 0x3a, 0x9a, 0x83, 0xcb, 0xa3, 0x9d, 0x0e, 0xa6, 0xda, + 0x4e, 0xb9, 0x4b, 0x0c, 0xcb, 0x83, 0x6f, 0xae, 0xf6, 0x48, 0x8f, 0xb0, 0x9f, 0x65, 0xf7, 0x17, + 0xb7, 0x16, 0x7a, 0x84, 0xf4, 0xfa, 0xb8, 0xcc, 0x9e, 0x3a, 0xc3, 0xa7, 0x65, 0x6a, 0x98, 0xd8, + 0xa1, 0x9a, 0x39, 0xe0, 0x80, 0x8d, 0x79, 0x80, 0x66, 0x8d, 0xb9, 0x2b, 0x3f, 0xef, 0xd2, 0x87, + 0xb6, 0x46, 0x0d, 0xe2, 0xaf, 0xb8, 0xe1, 0x45, 0xa4, 0x7a, 0x8b, 0xf2, 0x68, 0x3d, 0xd7, 0x39, + 0xcd, 0x34, 0x2c, 0x52, 0x66, 0x7f, 0x3d, 0x53, 0x91, 0x00, 0x3a, 0xc0, 0x46, 0xef, 0x90, 0x62, + 0xbd, 0x4d, 0x28, 0xae, 0x0f, 0x5c, 0x25, 0xb4, 0x03, 0x31, 0xc2, 0x7e, 0x89, 0xc2, 0x96, 0xb0, + 0x9d, 0xbd, 0xb5, 0x51, 0x9a, 0xd9, 0x75, 0x29, 0x80, 0x2a, 0x1c, 0x88, 0xae, 0x42, 0xec, 0x19, + 0x13, 0x12, 0x43, 0x5b, 0xc2, 0x76, 0xb2, 0x9a, 0x7d, 0xfd, 0xe2, 0x26, 0x70, 0x56, 0x0d, 0x77, + 0x15, 0xee, 0x2d, 0xfe, 0x28, 0x40, 0xbc, 0x86, 0x07, 0xc4, 0x31, 0x28, 0x2a, 0x40, 0x6a, 0x60, + 0x93, 0x01, 0x71, 0xb4, 0xbe, 0x6a, 0xe8, 0x6c, 0xad, 0x88, 0x02, 0xbe, 0x49, 0xd6, 0xd1, 0xa7, + 0x90, 0xd4, 0x3d, 0x2c, 0xb1, 0xb9, 0xae, 0xf8, 0xfa, 0xc5, 0xcd, 0x55, 0xae, 0x5b, 0xd1, 0x75, + 0x1b, 0x3b, 0x4e, 0x93, 0xda, 0x86, 0xd5, 0x53, 0x02, 0x28, 0xfa, 0x1c, 0x62, 0x9a, 0x49, 0x86, + 0x16, 0x15, 0xc3, 0x5b, 0xe1, 0xed, 0x54, 0x10, 0xbf, 0x5b, 0xa6, 0x12, 0x2f, 0x53, 0x69, 0x97, + 0x18, 0x56, 0x35, 0xf9, 0xf2, 0x4d, 0x61, 0xe9, 0xa7, 0xbf, 0x7f, 0xbe, 0x26, 0x28, 0x9c, 0x53, + 0x7c, 0x1b, 0x85, 0x44, 0x83, 0x07, 0x81, 0xb2, 0x10, 0x9a, 0x84, 0x16, 0x32, 0x74, 0xf4, 0x7f, + 0x48, 0x98, 0xd8, 0x71, 0xb4, 0x1e, 0x76, 0xc4, 0x10, 0x13, 0x5f, 0x2d, 0x79, 0x15, 0x29, 0xf9, + 0x15, 0x29, 0x55, 0xac, 0xb1, 0x32, 0x41, 0xa1, 0x3b, 0x10, 0x73, 0xa8, 0x46, 0x87, 0x8e, 0x18, + 0x66, 0xc9, 0xbc, 0x34, 0x97, 0x4c, 0x7f, 0xa9, 0x26, 0x03, 0x29, 0x1c, 0x8c, 0xee, 0x03, 0x7a, + 0x6a, 0x58, 0x5a, 0x5f, 0xa5, 0x5a, 0xbf, 0x3f, 0x56, 0x6d, 0xec, 0x0c, 0xfb, 0x54, 0x8c, 0x6c, + 0x09, 0xdb, 0xa9, 0x5b, 0x9b, 0x73, 0x12, 0x2d, 0x17, 0xa2, 0x30, 0x84, 0x92, 0x63, 0xac, 0x29, + 0x0b, 0xaa, 0x40, 0xca, 0x19, 0x76, 0x4c, 0x83, 0xaa, 0x6e, 0x9b, 0x89, 0x51, 0x2e, 0x31, 0x1f, + 0x75, 0xcb, 0xef, 0xc1, 0x6a, 0xe4, 0xf9, 0xdb, 0x82, 0xa0, 0x80, 0x47, 0x72, 0xcd, 0x68, 0x0f, + 0x72, 0x3c, 0xbb, 0x2a, 0xb6, 0x74, 0x4f, 0x27, 0x76, 0x4a, 0x9d, 0x2c, 0x67, 0x4a, 0x96, 0xce, + 0xb4, 0x64, 0xc8, 0x50, 0x42, 0xb5, 0xbe, 0xca, 0xed, 0x62, 0xfc, 0x0c, 0x35, 0x4a, 0x33, 0xaa, + 0xdf, 0x40, 0x0f, 0xe0, 0xdc, 0x88, 0x50, 0xc3, 0xea, 0xa9, 0x0e, 0xd5, 0x6c, 0xbe, 0xbf, 0xc4, + 0x29, 0xe3, 0x5a, 0xf6, 0xa8, 0x4d, 0x97, 0xc9, 0x02, 0xbb, 0x0f, 0xdc, 0x14, 0xec, 0x31, 0x79, + 0x4a, 0xad, 0x8c, 0x47, 0xf4, 0xb7, 0xb8, 0xe9, 0x36, 0x09, 0xd5, 0x74, 0x8d, 0x6a, 0x22, 0xb8, + 0x6d, 0xab, 0x4c, 0x9e, 0xd1, 0x2a, 0x44, 0xa9, 0x41, 0xfb, 0x58, 0x4c, 0x31, 0x87, 0xf7, 0x80, + 0x44, 0x88, 0x3b, 0x43, 0xd3, 0xd4, 0xec, 0xb1, 0x98, 0x66, 0x76, 0xff, 0x11, 0x7d, 0x02, 0x09, + 0x6f, 0x22, 0xb0, 0x2d, 0x66, 0x4e, 0x18, 0x81, 0x09, 0x12, 0x5d, 0x84, 0x24, 0x3e, 0x1a, 0x60, + 0xdd, 0xa0, 0x58, 0x17, 0xb3, 0x5b, 0xc2, 0x76, 0x42, 0x09, 0x0c, 0xc5, 0xdf, 0x05, 0x48, 0x4d, + 0x77, 0xc8, 0x75, 0x48, 0x8e, 0xb1, 0xa3, 0x76, 0xd9, 0xc8, 0x08, 0xc7, 0xe6, 0x57, 0xb6, 0xa8, + 0x92, 0x18, 0x63, 0x67, 0xd7, 0xf5, 0xa3, 0xdb, 0x90, 0xd1, 0x3a, 0x0e, 0xd5, 0x0c, 0x8b, 0x13, + 0x42, 0x0b, 0x09, 0x69, 0x0e, 0xf2, 0x48, 0xff, 0x83, 0x84, 0x45, 0x38, 0x3e, 0xbc, 0x10, 0x1f, + 0xb7, 0x88, 0x07, 0xbd, 0x0b, 0xc8, 0x22, 0xea, 0x33, 0x83, 0x1e, 0xaa, 0x23, 0x4c, 0x7d, 0x52, + 0x64, 0x21, 0x69, 0xd9, 0x22, 0x07, 0x06, 0x3d, 0x6c, 0x63, 0xea, 0x91, 0x8b, 0xbf, 0x08, 0x10, + 0x71, 0x4f, 0xa7, 0x93, 0xcf, 0x96, 0x12, 0x44, 0x47, 0x84, 0xe2, 0x93, 0xcf, 0x15, 0x0f, 0x86, + 0xee, 0x42, 0xdc, 0x3b, 0xea, 0x1c, 0x31, 0xc2, 0x1a, 0xf6, 0xf2, 0xdc, 0x10, 0x1e, 0x3f, 0x47, + 0x15, 0x9f, 0x31, 0xd3, 0x10, 0xd1, 0xd9, 0x86, 0xd8, 0x8b, 0x24, 0xc2, 0xb9, 0x48, 0xf1, 0x4f, + 0x01, 0x32, 0xbc, 0xad, 0x1b, 0x9a, 0xad, 0x99, 0x0e, 0x7a, 0x02, 0x29, 0xd3, 0xb0, 0x26, 0x53, + 0x22, 0x9c, 0x34, 0x25, 0x97, 0xdc, 0x29, 0xf9, 0xf0, 0xa6, 0xb0, 0x36, 0xc5, 0xba, 0x41, 0x4c, + 0x83, 0x62, 0x73, 0x40, 0xc7, 0x0a, 0x98, 0x86, 0xe5, 0xcf, 0x8d, 0x09, 0xc8, 0xd4, 0x8e, 0x7c, + 0x90, 0x3a, 0xc0, 0xb6, 0x41, 0x74, 0x96, 0x08, 0x77, 0x85, 0xf9, 0x66, 0xaf, 0xf1, 0x0b, 0xa6, + 0x7a, 0xe5, 0xc3, 0x9b, 0xc2, 0xc5, 0xe3, 0xc4, 0x60, 0x91, 0xef, 0xdd, 0x59, 0xc8, 0x99, 0xda, + 0x91, 0xbf, 0x13, 0xe6, 0xff, 0x2c, 0x24, 0x0a, 0xc5, 0xc7, 0x90, 0x6e, 0xb3, 0x19, 0xe1, 0xbb, + 0xab, 0x01, 0x9f, 0x19, 0x7f, 0x75, 0xe1, 0xa4, 0xd5, 0x23, 0x4c, 0x3d, 0xed, 0xb1, 0xa6, 0x94, + 0x7f, 0xf0, 0x9b, 0x99, 0x2b, 0x5f, 0x85, 0xd8, 0xb7, 0x43, 0x62, 0x0f, 0xcd, 0x05, 0x9d, 0xcc, + 0x6e, 0x22, 0xcf, 0x8b, 0x6e, 0x40, 0x92, 0x1e, 0xda, 0xd8, 0x39, 0x24, 0x7d, 0xfd, 0x5f, 0x2e, + 0xad, 0x00, 0x80, 0xee, 0x40, 0x96, 0x75, 0x63, 0x40, 0x09, 0x2f, 0xa4, 0x64, 0x5c, 0x54, 0xcb, + 0x07, 0xb1, 0x00, 0x7f, 0x8d, 0x43, 0x8c, 0xc7, 0x26, 0x9d, 0xb1, 0xa6, 0x53, 0x27, 0xdf, 0x74, + 0xfd, 0x1e, 0x7e, 0x5c, 0xfd, 0x22, 0x8b, 0xeb, 0x73, 0xbc, 0x16, 0xe1, 0x8f, 0xa8, 0xc5, 0x54, + 0xde, 0x23, 0xa7, 0xcf, 0x7b, 0xf4, 0xec, 0x79, 0x8f, 0x9d, 0x22, 0xef, 0x48, 0x86, 0x0d, 0x37, + 0xd1, 0x86, 0x65, 0x50, 0x23, 0xb8, 0x6a, 0x54, 0x16, 0xbe, 0x18, 0x5f, 0xa8, 0x70, 0xde, 0x34, + 0x2c, 0xd9, 0xc3, 0xf3, 0xf4, 0x28, 0x2e, 0x1a, 0x55, 0x61, 0x6d, 0x72, 0x92, 0x74, 0x35, 0xab, + 0x8b, 0xfb, 0x5c, 0x26, 0xb1, 0x50, 0x66, 0xc5, 0x07, 0xef, 0x32, 0xac, 0xa7, 0xb1, 0x07, 0xab, + 0xf3, 0x1a, 0x3a, 0x76, 0x28, 0xbb, 0x5f, 0xfe, 0xeb, 0xec, 0x41, 0xb3, 0x62, 0x35, 0xec, 0x50, + 0x74, 0x00, 0xeb, 0x93, 0x93, 0x5c, 0x9d, 0xad, 0x1b, 0x9c, 0xae, 0x6e, 0x6b, 0x13, 0x7e, 0x7b, + 0xba, 0x80, 0x5f, 0xc0, 0x4a, 0x20, 0x1c, 0xe4, 0x3b, 0xb5, 0x70, 0x9b, 0x68, 0x02, 0x0d, 0x92, + 0xfe, 0x18, 0x02, 0x65, 0x75, 0xba, 0xcf, 0xd3, 0x67, 0xe8, 0xf3, 0x20, 0x86, 0x87, 0x41, 0xc3, + 0x6f, 0x43, 0xae, 0x33, 0xb4, 0x2d, 0x77, 0xbb, 0x58, 0xe5, 0x5d, 0x96, 0x61, 0xb7, 0x5a, 0xd6, + 0xb5, 0xbb, 0x47, 0xee, 0x57, 0x5e, 0x77, 0xdd, 0x82, 0x35, 0x86, 0x9c, 0xa4, 0xdb, 0x8f, 0xc1, + 0xbb, 0x04, 0x57, 0x5c, 0xa7, 0xff, 0xc6, 0xe5, 0xab, 0x5f, 0x81, 0x6c, 0xa0, 0xee, 0xf6, 0x91, + 0xb8, 0xcc, 0xc0, 0x69, 0x5f, 0xdb, 0xbd, 0x5f, 0xae, 0x7d, 0x27, 0x00, 0x4c, 0xbd, 0x23, 0x5f, + 0x80, 0xf5, 0x76, 0xbd, 0x25, 0xa9, 0xf5, 0x46, 0x4b, 0xae, 0xef, 0xab, 0x8f, 0xf6, 0x9b, 0x0d, + 0x69, 0x57, 0xbe, 0x27, 0x4b, 0xb5, 0xdc, 0x12, 0x5a, 0x81, 0xe5, 0x69, 0xe7, 0x13, 0xa9, 0x99, + 0x13, 0xd0, 0x3a, 0xac, 0x4c, 0x1b, 0x2b, 0xd5, 0x66, 0xab, 0x22, 0xef, 0xe7, 0x42, 0x08, 0x41, + 0x76, 0xda, 0xb1, 0x5f, 0xcf, 0x85, 0xd1, 0x45, 0x10, 0x67, 0x6d, 0xea, 0x81, 0xdc, 0xba, 0xaf, + 0xb6, 0xa5, 0x56, 0x3d, 0x17, 0xb9, 0xf6, 0x9b, 0x00, 0xd9, 0xd9, 0xf7, 0x46, 0x54, 0x80, 0x0b, + 0x0d, 0xa5, 0xde, 0xa8, 0x37, 0x2b, 0x0f, 0xd4, 0x66, 0xab, 0xd2, 0x7a, 0xd4, 0x9c, 0x8b, 0xa9, + 0x08, 0xf9, 0x79, 0x40, 0x4d, 0x6a, 0xd4, 0x9b, 0x72, 0x4b, 0x6d, 0x48, 0x8a, 0x5c, 0xaf, 0xe5, + 0x04, 0x74, 0x19, 0x2e, 0xcd, 0x63, 0xda, 0xf5, 0x96, 0xbc, 0xff, 0xa5, 0x0f, 0x09, 0xa1, 0x4d, + 0x38, 0x3f, 0x0f, 0x69, 0x54, 0x9a, 0x4d, 0xa9, 0xe6, 0x05, 0x3d, 0xef, 0x53, 0xa4, 0x3d, 0x69, + 0xb7, 0x25, 0xd5, 0x72, 0x91, 0x45, 0xcc, 0x7b, 0x15, 0xf9, 0x81, 0x54, 0xcb, 0x45, 0xab, 0xd2, + 0xcb, 0x77, 0x79, 0xe1, 0xd5, 0xbb, 0xbc, 0xf0, 0xd7, 0xbb, 0xbc, 0xf0, 0xfc, 0x7d, 0x7e, 0xe9, + 0xd5, 0xfb, 0xfc, 0xd2, 0x1f, 0xef, 0xf3, 0x4b, 0x5f, 0x5f, 0xef, 0x19, 0xf4, 0x70, 0xd8, 0x29, + 0x75, 0x89, 0xc9, 0xbf, 0x66, 0xf8, 0xbf, 0x9b, 0x8e, 0xfe, 0x4d, 0xf9, 0x88, 0x7d, 0xa1, 0xd1, + 0xf1, 0x00, 0x3b, 0xee, 0xe7, 0x57, 0x8c, 0xb5, 0xfc, 0xed, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, + 0x84, 0x2a, 0x1c, 0xc3, 0xbf, 0x0d, 0x00, 0x00, } func (m *WeightedVoteOption) Marshal() (dAtA []byte, err error) { @@ -1483,6 +1514,36 @@ func (m *Params) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.BurnVoteVeto { + i-- + if m.BurnVoteVeto { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x78 + } + if m.BurnProposalDeposit { + i-- + if m.BurnProposalDeposit { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x70 + } + if m.BurnVoteQuorum { + i-- + if m.BurnVoteQuorum { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x68 + } if len(m.ExpeditedMinDeposit) > 0 { for iNdEx := len(m.ExpeditedMinDeposit) - 1; iNdEx >= 0; iNdEx-- { { @@ -1870,6 +1931,15 @@ func (m *Params) Size() (n int) { n += 1 + l + sovGov(uint64(l)) } } + if m.BurnVoteQuorum { + n += 2 + } + if m.BurnProposalDeposit { + n += 2 + } + if m.BurnVoteVeto { + n += 2 + } return n } @@ -3725,6 +3795,66 @@ func (m *Params) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 13: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field BurnVoteQuorum", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGov + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.BurnVoteQuorum = bool(v != 0) + case 14: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field BurnProposalDeposit", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGov + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.BurnProposalDeposit = bool(v != 0) + case 15: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field BurnVoteVeto", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGov + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.BurnVoteVeto = bool(v != 0) default: iNdEx = preIndex skippy, err := skipGov(dAtA[iNdEx:]) diff --git a/x/gov/types/v1/params.go b/x/gov/types/v1/params.go index bd2a652ec108..e93485674742 100644 --- a/x/gov/types/v1/params.go +++ b/x/gov/types/v1/params.go @@ -27,6 +27,9 @@ var ( DefaultMinInitialDepositRatio = sdk.ZeroDec() DefaultProposalCancelRatio = sdk.MustNewDecFromStr("0.5") DefaultProposalCancelDestAddress = "" + DefaultBurnProposal = false // set to false to replicate behavior of when this change was made (0.47) + DefaultBurnVoteQuorom = false // set to false to replicate behavior of when this change was made (0.47) + DefaultBurnVoteVeto = true // set to true to replicate behavior of when this change was made (0.47) ) // Deprecated: NewDepositParams creates a new DepositParams object @@ -56,7 +59,7 @@ func NewVotingParams(votingPeriod *time.Duration) VotingParams { // NewParams creates a new Params instance with given values. func NewParams( minDeposit, expeditedminDeposit sdk.Coins, maxDepositPeriod, votingPeriod, expeditedVotingPeriod time.Duration, - quorum, threshold, expeditedThreshold, vetoThreshold, minInitialDepositRatio, proposalCancelRatio, proposalCancelDest string, + quorum, threshold, expeditedThreshold, vetoThreshold, minInitialDepositRatio, proposalCancelRatio, proposalCancelDest string, burnProposalDeposit, burnVoteQuorum, burnVoteVeto bool, ) Params { return Params{ MinDeposit: minDeposit, @@ -71,6 +74,9 @@ func NewParams( MinInitialDepositRatio: minInitialDepositRatio, ProposalCancelRatio: proposalCancelRatio, ProposalCancelDest: proposalCancelDest, + BurnProposalDeposit: burnProposalDeposit, + BurnVoteQuorum: burnVoteQuorum, + BurnVoteVeto: burnVoteVeto, } } @@ -89,6 +95,9 @@ func DefaultParams() Params { DefaultMinInitialDepositRatio.String(), DefaultProposalCancelRatio.String(), DefaultProposalCancelDestAddress, + DefaultBurnProposal, + DefaultBurnVoteQuorom, + DefaultBurnVoteVeto, ) } From e6e4f25151d4958d5f1f3335657b40966255db1a Mon Sep 17 00:00:00 2001 From: marbar3778 Date: Fri, 24 Feb 2023 16:13:58 +0100 Subject: [PATCH 02/12] fix test --- x/gov/migrations/v4/json_test.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/x/gov/migrations/v4/json_test.go b/x/gov/migrations/v4/json_test.go index 219af3ef0deb..ade18bd4fc3c 100644 --- a/x/gov/migrations/v4/json_test.go +++ b/x/gov/migrations/v4/json_test.go @@ -60,6 +60,9 @@ func TestMigrateJSON(t *testing.T) { "deposit_params": null, "deposits": [], "params": { + "burn_proposal_deposit": false, + "burn_vote_quorum": false, + "burn_vote_veto": true, "expedited_min_deposit": [ { "amount": "50000000", From 2145b001a238261403cdb3e7482a75d7e423cf75 Mon Sep 17 00:00:00 2001 From: marbar3778 Date: Fri, 24 Feb 2023 16:15:13 +0100 Subject: [PATCH 03/12] fix test --- tests/integration/gov/keeper/keeper_test.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/integration/gov/keeper/keeper_test.go b/tests/integration/gov/keeper/keeper_test.go index 18d277bef2b4..cd68f4982cdf 100644 --- a/tests/integration/gov/keeper/keeper_test.go +++ b/tests/integration/gov/keeper/keeper_test.go @@ -52,7 +52,7 @@ func initFixture(t *testing.T) *fixture { queryHelper := baseapp.NewQueryServerTestHelper(ctx, app.InterfaceRegistry()) v1.RegisterQueryServer(queryHelper, app.GovKeeper) legacyQueryHelper := baseapp.NewQueryServerTestHelper(ctx, app.InterfaceRegistry()) - v1beta1.RegisterQueryServer(legacyQueryHelper, keeper.NewLegacyQueryServer(app.GovKeeper)) + v1beta1.RegisterQueryServer(legacyQueryHelper, keeper.NewLegacyQueryServer(&app.GovKeeper)) queryClient := v1.NewQueryClient(queryHelper) legacyQueryClient := v1beta1.NewQueryClient(legacyQueryHelper) @@ -60,7 +60,7 @@ func initFixture(t *testing.T) *fixture { f.ctx = ctx f.queryClient = queryClient f.legacyQueryClient = legacyQueryClient - f.msgSrvr = keeper.NewMsgServerImpl(f.app.GovKeeper) + f.msgSrvr = keeper.NewMsgServerImpl(&f.app.GovKeeper) govAcct := f.app.GovKeeper.GetGovernanceAccount(f.ctx).GetAddress() f.legacyMsgSrvr = keeper.NewLegacyMsgServerImpl(govAcct.String(), f.msgSrvr) From fb014d8033b1d59422fee909fe0ba6a33fca4e4a Mon Sep 17 00:00:00 2001 From: marbar3778 Date: Sat, 25 Feb 2023 22:06:39 +0100 Subject: [PATCH 04/12] add since --- proto/cosmos/gov/v1/gov.proto | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/proto/cosmos/gov/v1/gov.proto b/proto/cosmos/gov/v1/gov.proto index 919381a31d28..9fad45d737be 100644 --- a/proto/cosmos/gov/v1/gov.proto +++ b/proto/cosmos/gov/v1/gov.proto @@ -245,9 +245,15 @@ message Params { repeated cosmos.base.v1beta1.Coin expedited_min_deposit = 12 [(gogoproto.nullable) = false, (amino.dont_omitempty) = true]; // burn deposits if a proposal does not meet qourum + // + // Since: cosmos-sdk 0.47 bool burn_vote_quorum = 13; // burn deposits if the proposal does not get enough deposits + // + // Since: cosmos-sdk 0.47 bool burn_proposal_deposit = 14; // burn deposits if qourum with vote type no_veto is met + // + // Since: cosmos-sdk 0.47 bool burn_vote_veto = 15; } From ea2ecfd1d3a25741a46018a9e316a66f9471adbb Mon Sep 17 00:00:00 2001 From: marbar3778 Date: Sat, 25 Feb 2023 22:12:44 +0100 Subject: [PATCH 05/12] more comments --- proto/cosmos/gov/v1/gov.proto | 6 +++--- x/gov/simulation/genesis.go | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/proto/cosmos/gov/v1/gov.proto b/proto/cosmos/gov/v1/gov.proto index 9fad45d737be..250401208afc 100644 --- a/proto/cosmos/gov/v1/gov.proto +++ b/proto/cosmos/gov/v1/gov.proto @@ -244,15 +244,15 @@ message Params { // Minimum expedited deposit for a proposal to enter voting period. repeated cosmos.base.v1beta1.Coin expedited_min_deposit = 12 [(gogoproto.nullable) = false, (amino.dont_omitempty) = true]; - // burn deposits if a proposal does not meet qourum + // burn deposits if a proposal does not meet quorum // // Since: cosmos-sdk 0.47 bool burn_vote_quorum = 13; - // burn deposits if the proposal does not get enough deposits + // burn deposits if the proposal does not enter voting period // // Since: cosmos-sdk 0.47 bool burn_proposal_deposit = 14; - // burn deposits if qourum with vote type no_veto is met + // burn deposits if quorum with vote type no_veto is met // // Since: cosmos-sdk 0.47 bool burn_vote_veto = 15; diff --git a/x/gov/simulation/genesis.go b/x/gov/simulation/genesis.go index 6c41b314f719..bd80f4927aab 100644 --- a/x/gov/simulation/genesis.go +++ b/x/gov/simulation/genesis.go @@ -166,7 +166,7 @@ func RandomizedGenState(simState *module.SimulationState) { govGenesis := v1.NewGenesisState( startingProposalID, - v1.NewParams(minDeposit, expeditedMinDeposit, depositPeriod, votingPeriod, expeditedVotingPeriod, quorum.String(), threshold.String(), expitedVotingThreshold.String(), veto.String(), minInitialDepositRatio.String(), proposalCancelRate.String(), "", false, false, true), //TODO: randomize + v1.NewParams(minDeposit, expeditedMinDeposit, depositPeriod, votingPeriod, expeditedVotingPeriod, quorum.String(), threshold.String(), expitedVotingThreshold.String(), veto.String(), minInitialDepositRatio.String(), proposalCancelRate.String(), "", simState.Rand.Intn(2) == 0, simState.Rand.Intn(2) == 0, simState.Rand.Intn(2) == 0), ) bz, err := json.MarshalIndent(&govGenesis, "", " ") From 0763b92ad61934746d4145d2a01d007c9c7bbcbc Mon Sep 17 00:00:00 2001 From: marbar3778 Date: Sat, 25 Feb 2023 22:16:38 +0100 Subject: [PATCH 06/12] add changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index c22d21ca3387..1dff23a24c5e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -78,6 +78,7 @@ Ref: https://keepachangelog.com/en/1.0.0/ * (x/bank) [#14894](https://github.com/cosmos/cosmos-sdk/pull/14894) Return a human readable denomination for IBC vouchers when querying bank balances. Added a `ResolveDenom` parameter to `types.QueryAllBalancesRequest` and `--resolve-denom` flag to `GetBalancesCmd()`. * (x/groups) [#14879](https://github.com/cosmos/cosmos-sdk/pull/14879) Add `Query/Groups` query to get all the groups. * (x/genutil,cli) [#15147](https://github.com/cosmos/cosmos-sdk/pull/15147) Add `--initial-height` flag to cli init cmd to provide `genesis.json` with user defined initial block height +* (x/gov) [#15151](https://github.com/cosmos/cosmos-sdk/pull/15151) Add `burn_vote_quorum`, `burn_proposal_deposit` and `burn_vote_veto` params to allow applications to decide if they would like to burn deposits ### Improvements From 79a6c6c14225d789efc35c9b718f5460c228a382 Mon Sep 17 00:00:00 2001 From: marbar3778 Date: Sat, 25 Feb 2023 22:20:40 +0100 Subject: [PATCH 07/12] update param to say prevote --- api/cosmos/gov/v1/gov.pulsar.go | 169 +++++----- api/cosmos/tx/v1beta1/service.pulsar.go | 425 ++++++++++++------------ proto/cosmos/gov/v1/gov.proto | 2 +- types/tx/service.pb.go | 153 ++++----- x/gov/abci.go | 2 +- x/gov/migrations/v4/json.go | 2 +- x/gov/migrations/v4/json_test.go | 2 +- x/gov/migrations/v4/store.go | 2 +- x/gov/migrations/v5/store.go | 2 +- x/gov/types/v1/gov.pb.go | 198 +++++------ x/gov/types/v1/params.go | 30 +- 11 files changed, 504 insertions(+), 483 deletions(-) diff --git a/api/cosmos/gov/v1/gov.pulsar.go b/api/cosmos/gov/v1/gov.pulsar.go index 590fca876076..4b77f83a4a37 100644 --- a/api/cosmos/gov/v1/gov.pulsar.go +++ b/api/cosmos/gov/v1/gov.pulsar.go @@ -5467,22 +5467,22 @@ func (x *_Params_12_list) IsValid() bool { } var ( - md_Params protoreflect.MessageDescriptor - fd_Params_min_deposit protoreflect.FieldDescriptor - fd_Params_max_deposit_period protoreflect.FieldDescriptor - fd_Params_voting_period protoreflect.FieldDescriptor - fd_Params_quorum protoreflect.FieldDescriptor - fd_Params_threshold protoreflect.FieldDescriptor - fd_Params_veto_threshold protoreflect.FieldDescriptor - fd_Params_min_initial_deposit_ratio protoreflect.FieldDescriptor - fd_Params_proposal_cancel_ratio protoreflect.FieldDescriptor - fd_Params_proposal_cancel_dest protoreflect.FieldDescriptor - fd_Params_expedited_voting_period protoreflect.FieldDescriptor - fd_Params_expedited_threshold protoreflect.FieldDescriptor - fd_Params_expedited_min_deposit protoreflect.FieldDescriptor - fd_Params_burn_vote_quorum protoreflect.FieldDescriptor - fd_Params_burn_proposal_deposit protoreflect.FieldDescriptor - fd_Params_burn_vote_veto protoreflect.FieldDescriptor + md_Params protoreflect.MessageDescriptor + fd_Params_min_deposit protoreflect.FieldDescriptor + fd_Params_max_deposit_period protoreflect.FieldDescriptor + fd_Params_voting_period protoreflect.FieldDescriptor + fd_Params_quorum protoreflect.FieldDescriptor + fd_Params_threshold protoreflect.FieldDescriptor + fd_Params_veto_threshold protoreflect.FieldDescriptor + fd_Params_min_initial_deposit_ratio protoreflect.FieldDescriptor + fd_Params_proposal_cancel_ratio protoreflect.FieldDescriptor + fd_Params_proposal_cancel_dest protoreflect.FieldDescriptor + fd_Params_expedited_voting_period protoreflect.FieldDescriptor + fd_Params_expedited_threshold protoreflect.FieldDescriptor + fd_Params_expedited_min_deposit protoreflect.FieldDescriptor + fd_Params_burn_vote_quorum protoreflect.FieldDescriptor + fd_Params_burn_proposal_deposit_prevote protoreflect.FieldDescriptor + fd_Params_burn_vote_veto protoreflect.FieldDescriptor ) func init() { @@ -5501,7 +5501,7 @@ func init() { fd_Params_expedited_threshold = md_Params.Fields().ByName("expedited_threshold") fd_Params_expedited_min_deposit = md_Params.Fields().ByName("expedited_min_deposit") fd_Params_burn_vote_quorum = md_Params.Fields().ByName("burn_vote_quorum") - fd_Params_burn_proposal_deposit = md_Params.Fields().ByName("burn_proposal_deposit") + fd_Params_burn_proposal_deposit_prevote = md_Params.Fields().ByName("burn_proposal_deposit_prevote") fd_Params_burn_vote_veto = md_Params.Fields().ByName("burn_vote_veto") } @@ -5648,9 +5648,9 @@ func (x *fastReflection_Params) Range(f func(protoreflect.FieldDescriptor, proto return } } - if x.BurnProposalDeposit != false { - value := protoreflect.ValueOfBool(x.BurnProposalDeposit) - if !f(fd_Params_burn_proposal_deposit, value) { + if x.BurnProposalDepositPrevote != false { + value := protoreflect.ValueOfBool(x.BurnProposalDepositPrevote) + if !f(fd_Params_burn_proposal_deposit_prevote, value) { return } } @@ -5701,8 +5701,8 @@ func (x *fastReflection_Params) Has(fd protoreflect.FieldDescriptor) bool { return len(x.ExpeditedMinDeposit) != 0 case "cosmos.gov.v1.Params.burn_vote_quorum": return x.BurnVoteQuorum != false - case "cosmos.gov.v1.Params.burn_proposal_deposit": - return x.BurnProposalDeposit != false + case "cosmos.gov.v1.Params.burn_proposal_deposit_prevote": + return x.BurnProposalDepositPrevote != false case "cosmos.gov.v1.Params.burn_vote_veto": return x.BurnVoteVeto != false default: @@ -5747,8 +5747,8 @@ func (x *fastReflection_Params) Clear(fd protoreflect.FieldDescriptor) { x.ExpeditedMinDeposit = nil case "cosmos.gov.v1.Params.burn_vote_quorum": x.BurnVoteQuorum = false - case "cosmos.gov.v1.Params.burn_proposal_deposit": - x.BurnProposalDeposit = false + case "cosmos.gov.v1.Params.burn_proposal_deposit_prevote": + x.BurnProposalDepositPrevote = false case "cosmos.gov.v1.Params.burn_vote_veto": x.BurnVoteVeto = false default: @@ -5812,8 +5812,8 @@ func (x *fastReflection_Params) Get(descriptor protoreflect.FieldDescriptor) pro case "cosmos.gov.v1.Params.burn_vote_quorum": value := x.BurnVoteQuorum return protoreflect.ValueOfBool(value) - case "cosmos.gov.v1.Params.burn_proposal_deposit": - value := x.BurnProposalDeposit + case "cosmos.gov.v1.Params.burn_proposal_deposit_prevote": + value := x.BurnProposalDepositPrevote return protoreflect.ValueOfBool(value) case "cosmos.gov.v1.Params.burn_vote_veto": value := x.BurnVoteVeto @@ -5868,8 +5868,8 @@ func (x *fastReflection_Params) Set(fd protoreflect.FieldDescriptor, value proto x.ExpeditedMinDeposit = *clv.list case "cosmos.gov.v1.Params.burn_vote_quorum": x.BurnVoteQuorum = value.Bool() - case "cosmos.gov.v1.Params.burn_proposal_deposit": - x.BurnProposalDeposit = value.Bool() + case "cosmos.gov.v1.Params.burn_proposal_deposit_prevote": + x.BurnProposalDepositPrevote = value.Bool() case "cosmos.gov.v1.Params.burn_vote_veto": x.BurnVoteVeto = value.Bool() default: @@ -5935,8 +5935,8 @@ func (x *fastReflection_Params) Mutable(fd protoreflect.FieldDescriptor) protore panic(fmt.Errorf("field expedited_threshold of message cosmos.gov.v1.Params is not mutable")) case "cosmos.gov.v1.Params.burn_vote_quorum": panic(fmt.Errorf("field burn_vote_quorum of message cosmos.gov.v1.Params is not mutable")) - case "cosmos.gov.v1.Params.burn_proposal_deposit": - panic(fmt.Errorf("field burn_proposal_deposit of message cosmos.gov.v1.Params is not mutable")) + case "cosmos.gov.v1.Params.burn_proposal_deposit_prevote": + panic(fmt.Errorf("field burn_proposal_deposit_prevote of message cosmos.gov.v1.Params is not mutable")) case "cosmos.gov.v1.Params.burn_vote_veto": panic(fmt.Errorf("field burn_vote_veto of message cosmos.gov.v1.Params is not mutable")) default: @@ -5983,7 +5983,7 @@ func (x *fastReflection_Params) NewField(fd protoreflect.FieldDescriptor) protor return protoreflect.ValueOfList(&_Params_12_list{list: &list}) case "cosmos.gov.v1.Params.burn_vote_quorum": return protoreflect.ValueOfBool(false) - case "cosmos.gov.v1.Params.burn_proposal_deposit": + case "cosmos.gov.v1.Params.burn_proposal_deposit_prevote": return protoreflect.ValueOfBool(false) case "cosmos.gov.v1.Params.burn_vote_veto": return protoreflect.ValueOfBool(false) @@ -6111,7 +6111,7 @@ func (x *fastReflection_Params) ProtoMethods() *protoiface.Methods { if x.BurnVoteQuorum { n += 2 } - if x.BurnProposalDeposit { + if x.BurnProposalDepositPrevote { n += 2 } if x.BurnVoteVeto { @@ -6156,9 +6156,9 @@ func (x *fastReflection_Params) ProtoMethods() *protoiface.Methods { i-- dAtA[i] = 0x78 } - if x.BurnProposalDeposit { + if x.BurnProposalDepositPrevote { i-- - if x.BurnProposalDeposit { + if x.BurnProposalDepositPrevote { dAtA[i] = 1 } else { dAtA[i] = 0 @@ -6770,7 +6770,7 @@ func (x *fastReflection_Params) ProtoMethods() *protoiface.Methods { x.BurnVoteQuorum = bool(v != 0) case 14: if wireType != 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BurnProposalDeposit", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BurnProposalDepositPrevote", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -6787,7 +6787,7 @@ func (x *fastReflection_Params) ProtoMethods() *protoiface.Methods { break } } - x.BurnProposalDeposit = bool(v != 0) + x.BurnProposalDepositPrevote = bool(v != 0) case 15: if wireType != 0 { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BurnVoteVeto", wireType) @@ -7575,11 +7575,17 @@ type Params struct { ExpeditedThreshold string `protobuf:"bytes,11,opt,name=expedited_threshold,json=expeditedThreshold,proto3" json:"expedited_threshold,omitempty"` // Minimum expedited deposit for a proposal to enter voting period. ExpeditedMinDeposit []*v1beta1.Coin `protobuf:"bytes,12,rep,name=expedited_min_deposit,json=expeditedMinDeposit,proto3" json:"expedited_min_deposit,omitempty"` - // burn deposits if a proposal does not meet qourum + // burn deposits if a proposal does not meet quorum + // + // Since: cosmos-sdk 0.47 BurnVoteQuorum bool `protobuf:"varint,13,opt,name=burn_vote_quorum,json=burnVoteQuorum,proto3" json:"burn_vote_quorum,omitempty"` - // burn deposits if the proposal does not get enough deposits - BurnProposalDeposit bool `protobuf:"varint,14,opt,name=burn_proposal_deposit,json=burnProposalDeposit,proto3" json:"burn_proposal_deposit,omitempty"` - // burn deposits if qourum with vote type no_veto is met + // burn deposits if the proposal does not enter voting period + // + // Since: cosmos-sdk 0.47 + BurnProposalDepositPrevote bool `protobuf:"varint,14,opt,name=burn_proposal_deposit_prevote,json=burnProposalDepositPrevote,proto3" json:"burn_proposal_deposit_prevote,omitempty"` + // burn deposits if quorum with vote type no_veto is met + // + // Since: cosmos-sdk 0.47 BurnVoteVeto bool `protobuf:"varint,15,opt,name=burn_vote_veto,json=burnVoteVeto,proto3" json:"burn_vote_veto,omitempty"` } @@ -7694,9 +7700,9 @@ func (x *Params) GetBurnVoteQuorum() bool { return false } -func (x *Params) GetBurnProposalDeposit() bool { +func (x *Params) GetBurnProposalDepositPrevote() bool { if x != nil { - return x.BurnProposalDeposit + return x.BurnProposalDepositPrevote } return false } @@ -7843,7 +7849,7 @@ var file_cosmos_gov_v1_gov_proto_rawDesc = []byte{ 0x64, 0x12, 0x35, 0x0a, 0x0e, 0x76, 0x65, 0x74, 0x6f, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0e, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x44, 0x65, 0x63, 0x52, 0x0d, 0x76, 0x65, 0x74, 0x6f, 0x54, - 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x3a, 0x02, 0x18, 0x01, 0x22, 0xc4, 0x07, 0x0a, + 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x3a, 0x02, 0x18, 0x01, 0x22, 0xd3, 0x07, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x45, 0x0a, 0x0b, 0x6d, 0x69, 0x6e, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, @@ -7898,45 +7904,46 @@ var file_cosmos_gov_v1_gov_proto_rawDesc = []byte{ 0x64, 0x69, 0x74, 0x65, 0x64, 0x4d, 0x69, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x62, 0x75, 0x72, 0x6e, 0x5f, 0x76, 0x6f, 0x74, 0x65, 0x5f, 0x71, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x62, 0x75, 0x72, 0x6e, 0x56, - 0x6f, 0x74, 0x65, 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x12, 0x32, 0x0a, 0x15, 0x62, 0x75, 0x72, + 0x6f, 0x74, 0x65, 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x12, 0x41, 0x0a, 0x1d, 0x62, 0x75, 0x72, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, - 0x69, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x62, 0x75, 0x72, 0x6e, 0x50, 0x72, - 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x12, 0x24, 0x0a, - 0x0e, 0x62, 0x75, 0x72, 0x6e, 0x5f, 0x76, 0x6f, 0x74, 0x65, 0x5f, 0x76, 0x65, 0x74, 0x6f, 0x18, - 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x62, 0x75, 0x72, 0x6e, 0x56, 0x6f, 0x74, 0x65, 0x56, - 0x65, 0x74, 0x6f, 0x2a, 0x89, 0x01, 0x0a, 0x0a, 0x56, 0x6f, 0x74, 0x65, 0x4f, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x17, 0x56, 0x4f, 0x54, 0x45, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, - 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, - 0x13, 0x0a, 0x0f, 0x56, 0x4f, 0x54, 0x45, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x59, - 0x45, 0x53, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x56, 0x4f, 0x54, 0x45, 0x5f, 0x4f, 0x50, 0x54, - 0x49, 0x4f, 0x4e, 0x5f, 0x41, 0x42, 0x53, 0x54, 0x41, 0x49, 0x4e, 0x10, 0x02, 0x12, 0x12, 0x0a, - 0x0e, 0x56, 0x4f, 0x54, 0x45, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x10, - 0x03, 0x12, 0x1c, 0x0a, 0x18, 0x56, 0x4f, 0x54, 0x45, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, - 0x5f, 0x4e, 0x4f, 0x5f, 0x57, 0x49, 0x54, 0x48, 0x5f, 0x56, 0x45, 0x54, 0x4f, 0x10, 0x04, 0x2a, - 0xce, 0x01, 0x0a, 0x0e, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x52, 0x4f, 0x50, 0x4f, 0x53, 0x41, 0x4c, 0x5f, 0x53, - 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, - 0x44, 0x10, 0x00, 0x12, 0x22, 0x0a, 0x1e, 0x50, 0x52, 0x4f, 0x50, 0x4f, 0x53, 0x41, 0x4c, 0x5f, - 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x44, 0x45, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x5f, 0x50, - 0x45, 0x52, 0x49, 0x4f, 0x44, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x50, 0x52, 0x4f, 0x50, 0x4f, - 0x53, 0x41, 0x4c, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x56, 0x4f, 0x54, 0x49, 0x4e, - 0x47, 0x5f, 0x50, 0x45, 0x52, 0x49, 0x4f, 0x44, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52, - 0x4f, 0x50, 0x4f, 0x53, 0x41, 0x4c, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x50, 0x41, - 0x53, 0x53, 0x45, 0x44, 0x10, 0x03, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x50, 0x4f, 0x53, - 0x41, 0x4c, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, - 0x45, 0x44, 0x10, 0x04, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52, 0x4f, 0x50, 0x4f, 0x53, 0x41, 0x4c, - 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x05, - 0x42, 0x99, 0x01, 0x0a, 0x11, 0x63, 0x6f, 0x6d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, - 0x67, 0x6f, 0x76, 0x2e, 0x76, 0x31, 0x42, 0x08, 0x47, 0x6f, 0x76, 0x50, 0x72, 0x6f, 0x74, 0x6f, - 0x50, 0x01, 0x5a, 0x24, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, - 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x67, 0x6f, 0x76, 0x2f, - 0x76, 0x31, 0x3b, 0x67, 0x6f, 0x76, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x43, 0x47, 0x58, 0xaa, 0x02, - 0x0d, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x47, 0x6f, 0x76, 0x2e, 0x56, 0x31, 0xca, 0x02, - 0x0d, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5c, 0x47, 0x6f, 0x76, 0x5c, 0x56, 0x31, 0xe2, 0x02, - 0x19, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5c, 0x47, 0x6f, 0x76, 0x5c, 0x56, 0x31, 0x5c, 0x47, - 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x0f, 0x43, 0x6f, 0x73, - 0x6d, 0x6f, 0x73, 0x3a, 0x3a, 0x47, 0x6f, 0x76, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x33, + 0x69, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x76, 0x6f, 0x74, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x1a, 0x62, 0x75, 0x72, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x44, 0x65, + 0x70, 0x6f, 0x73, 0x69, 0x74, 0x50, 0x72, 0x65, 0x76, 0x6f, 0x74, 0x65, 0x12, 0x24, 0x0a, 0x0e, + 0x62, 0x75, 0x72, 0x6e, 0x5f, 0x76, 0x6f, 0x74, 0x65, 0x5f, 0x76, 0x65, 0x74, 0x6f, 0x18, 0x0f, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x62, 0x75, 0x72, 0x6e, 0x56, 0x6f, 0x74, 0x65, 0x56, 0x65, + 0x74, 0x6f, 0x2a, 0x89, 0x01, 0x0a, 0x0a, 0x56, 0x6f, 0x74, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x1b, 0x0a, 0x17, 0x56, 0x4f, 0x54, 0x45, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, + 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x13, + 0x0a, 0x0f, 0x56, 0x4f, 0x54, 0x45, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x59, 0x45, + 0x53, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x56, 0x4f, 0x54, 0x45, 0x5f, 0x4f, 0x50, 0x54, 0x49, + 0x4f, 0x4e, 0x5f, 0x41, 0x42, 0x53, 0x54, 0x41, 0x49, 0x4e, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, + 0x56, 0x4f, 0x54, 0x45, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x10, 0x03, + 0x12, 0x1c, 0x0a, 0x18, 0x56, 0x4f, 0x54, 0x45, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, + 0x4e, 0x4f, 0x5f, 0x57, 0x49, 0x54, 0x48, 0x5f, 0x56, 0x45, 0x54, 0x4f, 0x10, 0x04, 0x2a, 0xce, + 0x01, 0x0a, 0x0e, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x52, 0x4f, 0x50, 0x4f, 0x53, 0x41, 0x4c, 0x5f, 0x53, 0x54, + 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, + 0x10, 0x00, 0x12, 0x22, 0x0a, 0x1e, 0x50, 0x52, 0x4f, 0x50, 0x4f, 0x53, 0x41, 0x4c, 0x5f, 0x53, + 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x44, 0x45, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x5f, 0x50, 0x45, + 0x52, 0x49, 0x4f, 0x44, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x50, 0x52, 0x4f, 0x50, 0x4f, 0x53, + 0x41, 0x4c, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x56, 0x4f, 0x54, 0x49, 0x4e, 0x47, + 0x5f, 0x50, 0x45, 0x52, 0x49, 0x4f, 0x44, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52, 0x4f, + 0x50, 0x4f, 0x53, 0x41, 0x4c, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x50, 0x41, 0x53, + 0x53, 0x45, 0x44, 0x10, 0x03, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x50, 0x4f, 0x53, 0x41, + 0x4c, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x45, + 0x44, 0x10, 0x04, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52, 0x4f, 0x50, 0x4f, 0x53, 0x41, 0x4c, 0x5f, + 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x05, 0x42, + 0x99, 0x01, 0x0a, 0x11, 0x63, 0x6f, 0x6d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x67, + 0x6f, 0x76, 0x2e, 0x76, 0x31, 0x42, 0x08, 0x47, 0x6f, 0x76, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, + 0x01, 0x5a, 0x24, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, + 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x67, 0x6f, 0x76, 0x2f, 0x76, + 0x31, 0x3b, 0x67, 0x6f, 0x76, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x43, 0x47, 0x58, 0xaa, 0x02, 0x0d, + 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x47, 0x6f, 0x76, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x0d, + 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5c, 0x47, 0x6f, 0x76, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x19, + 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5c, 0x47, 0x6f, 0x76, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, + 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x0f, 0x43, 0x6f, 0x73, 0x6d, + 0x6f, 0x73, 0x3a, 0x3a, 0x47, 0x6f, 0x76, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x33, } var ( diff --git a/api/cosmos/tx/v1beta1/service.pulsar.go b/api/cosmos/tx/v1beta1/service.pulsar.go index 0a5e51f8e3d5..af2de060d804 100644 --- a/api/cosmos/tx/v1beta1/service.pulsar.go +++ b/api/cosmos/tx/v1beta1/service.pulsar.go @@ -9148,6 +9148,8 @@ type GetTxsEventRequest struct { // events is the list of transaction event type. // Deprecated post v0.47.x: use query instead, which should contain a valid // events query. + // + // Deprecated: Do not use. Events []string `protobuf:"bytes,1,rep,name=events,proto3" json:"events,omitempty"` // pagination defines a pagination for the request. // Deprecated post v0.46.x: use page and limit instead. @@ -9163,6 +9165,8 @@ type GetTxsEventRequest struct { Limit uint64 `protobuf:"varint,5,opt,name=limit,proto3" json:"limit,omitempty"` // query defines the transaction event query that is proxied to Tendermint's // TxSearch RPC method. The query must be valid. + // + // Since Cosmos SDK 0.48 Query string `protobuf:"bytes,6,opt,name=query,proto3" json:"query,omitempty"` } @@ -9186,6 +9190,7 @@ func (*GetTxsEventRequest) Descriptor() ([]byte, []int) { return file_cosmos_tx_v1beta1_service_proto_rawDescGZIP(), []int{0} } +// Deprecated: Do not use. func (x *GetTxsEventRequest) GetEvents() []string { if x != nil { return x.Events @@ -10014,224 +10019,224 @@ var file_cosmos_tx_v1beta1_service_proto_rawDesc = []byte{ 0x1c, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x74, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x74, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, - 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xef, 0x01, 0x0a, 0x12, + 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xf3, 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x54, 0x78, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x4a, 0x0a, 0x0a, 0x70, 0x61, - 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, - 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x67, 0x65, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, - 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, - 0x62, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, - 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x72, 0x64, - 0x65, 0x72, 0x42, 0x79, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x12, 0x12, 0x0a, - 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x70, 0x61, 0x67, - 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x22, 0xea, 0x01, - 0x0a, 0x13, 0x47, 0x65, 0x74, 0x54, 0x78, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x03, 0x74, 0x78, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x4a, + 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, + 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, + 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0a, + 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x0a, 0x08, 0x6f, 0x72, + 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x63, + 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, + 0x79, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x22, 0xea, 0x01, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x54, 0x78, 0x73, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x03, 0x74, 0x78, 0x73, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, + 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x78, 0x52, 0x03, 0x74, + 0x78, 0x73, 0x12, 0x47, 0x0a, 0x0c, 0x74, 0x78, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, + 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x61, 0x62, 0x63, 0x69, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0b, + 0x74, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x73, 0x12, 0x4b, 0x0a, 0x0a, 0x70, + 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x67, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0a, 0x70, 0x61, + 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, + 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x22, 0x65, + 0x0a, 0x12, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x78, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x78, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x74, 0x78, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, + 0x34, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, + 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2e, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x52, + 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x22, 0x5c, 0x0a, 0x13, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, + 0x73, 0x74, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x0b, + 0x74, 0x78, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, + 0x61, 0x62, 0x63, 0x69, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x78, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0a, 0x74, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x57, 0x0a, 0x0f, 0x53, 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x29, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x78, 0x52, 0x03, 0x74, 0x78, 0x73, 0x12, 0x47, - 0x0a, 0x0c, 0x74, 0x78, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, - 0x73, 0x65, 0x2e, 0x61, 0x62, 0x63, 0x69, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0b, 0x74, 0x78, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x73, 0x12, 0x4b, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x63, 0x6f, - 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x22, 0x65, 0x0a, 0x12, 0x42, 0x72, - 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x78, 0x42, 0x02, 0x18, 0x01, 0x52, 0x02, 0x74, + 0x78, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x78, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x07, 0x74, 0x78, 0x42, 0x79, 0x74, 0x65, 0x73, 0x22, 0x8a, 0x01, 0x0a, + 0x10, 0x53, 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x3c, 0x0a, 0x08, 0x67, 0x61, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, + 0x65, 0x2e, 0x61, 0x62, 0x63, 0x69, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, + 0x61, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x67, 0x61, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x12, + 0x38, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x20, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x61, 0x62, + 0x63, 0x69, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x22, 0x0a, 0x0c, 0x47, 0x65, 0x74, + 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, + 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x22, 0x7d, 0x0a, + 0x0d, 0x47, 0x65, 0x74, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, + 0x0a, 0x02, 0x74, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, + 0x78, 0x52, 0x02, 0x74, 0x78, 0x12, 0x45, 0x0a, 0x0b, 0x74, 0x78, 0x5f, 0x72, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x61, 0x62, 0x63, 0x69, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x52, 0x0a, 0x74, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x78, 0x0a, 0x16, + 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x57, 0x69, 0x74, 0x68, 0x54, 0x78, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x46, + 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, + 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, + 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, + 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xf0, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x42, 0x6c, + 0x6f, 0x63, 0x6b, 0x57, 0x69, 0x74, 0x68, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x27, 0x0a, 0x03, 0x74, 0x78, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x15, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x54, 0x78, 0x52, 0x03, 0x74, 0x78, 0x73, 0x12, 0x34, 0x0a, 0x08, 0x62, + 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, + 0x74, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x74, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, + 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x49, 0x44, 0x52, 0x07, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x49, + 0x64, 0x12, 0x2d, 0x0a, 0x05, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x17, 0x2e, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x74, 0x2e, 0x74, 0x79, + 0x70, 0x65, 0x73, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x05, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x12, 0x47, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, + 0x73, 0x65, 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0a, 0x70, + 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x2c, 0x0a, 0x0f, 0x54, 0x78, 0x44, + 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, + 0x74, 0x78, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, + 0x74, 0x78, 0x42, 0x79, 0x74, 0x65, 0x73, 0x22, 0x39, 0x0a, 0x10, 0x54, 0x78, 0x44, 0x65, 0x63, + 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x02, 0x74, + 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, + 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x78, 0x52, 0x02, + 0x74, 0x78, 0x22, 0x38, 0x0a, 0x0f, 0x54, 0x78, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x25, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x78, 0x52, 0x02, 0x74, 0x78, 0x22, 0x2d, 0x0a, 0x10, + 0x54, 0x78, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x78, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0c, 0x52, 0x07, 0x74, 0x78, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x34, 0x0a, 0x04, 0x6d, - 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x63, 0x6f, 0x73, 0x6d, + 0x28, 0x0c, 0x52, 0x07, 0x74, 0x78, 0x42, 0x79, 0x74, 0x65, 0x73, 0x22, 0x35, 0x0a, 0x14, 0x54, + 0x78, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x41, 0x6d, 0x69, 0x6e, 0x6f, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x5f, 0x6a, 0x73, 0x6f, + 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x4a, 0x73, + 0x6f, 0x6e, 0x22, 0x3a, 0x0a, 0x15, 0x54, 0x78, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x41, 0x6d, + 0x69, 0x6e, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x61, + 0x6d, 0x69, 0x6e, 0x6f, 0x5f, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0c, 0x52, 0x0b, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x22, 0x39, + 0x0a, 0x14, 0x54, 0x78, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x41, 0x6d, 0x69, 0x6e, 0x6f, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x5f, + 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x61, 0x6d, + 0x69, 0x6e, 0x6f, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x22, 0x36, 0x0a, 0x15, 0x54, 0x78, 0x44, + 0x65, 0x63, 0x6f, 0x64, 0x65, 0x41, 0x6d, 0x69, 0x6e, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x5f, 0x6a, 0x73, 0x6f, 0x6e, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x4a, 0x73, 0x6f, + 0x6e, 0x2a, 0x48, 0x0a, 0x07, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x12, 0x18, 0x0a, 0x14, + 0x4f, 0x52, 0x44, 0x45, 0x52, 0x5f, 0x42, 0x59, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, + 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x4f, 0x52, 0x44, 0x45, 0x52, 0x5f, + 0x42, 0x59, 0x5f, 0x41, 0x53, 0x43, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x52, 0x44, 0x45, + 0x52, 0x5f, 0x42, 0x59, 0x5f, 0x44, 0x45, 0x53, 0x43, 0x10, 0x02, 0x2a, 0x80, 0x01, 0x0a, 0x0d, + 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1e, 0x0a, + 0x1a, 0x42, 0x52, 0x4f, 0x41, 0x44, 0x43, 0x41, 0x53, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, + 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1c, 0x0a, + 0x14, 0x42, 0x52, 0x4f, 0x41, 0x44, 0x43, 0x41, 0x53, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, + 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x10, 0x01, 0x1a, 0x02, 0x08, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x42, + 0x52, 0x4f, 0x41, 0x44, 0x43, 0x41, 0x53, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x53, 0x59, + 0x4e, 0x43, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x42, 0x52, 0x4f, 0x41, 0x44, 0x43, 0x41, 0x53, + 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x41, 0x53, 0x59, 0x4e, 0x43, 0x10, 0x03, 0x32, 0xaa, + 0x09, 0x0a, 0x07, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x7b, 0x0a, 0x08, 0x53, 0x69, + 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x22, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, + 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x69, 0x6d, 0x75, 0x6c, + 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, + 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x26, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20, 0x3a, 0x01, 0x2a, 0x22, 0x1b, 0x2f, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x2f, 0x74, 0x78, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x73, + 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x71, 0x0a, 0x05, 0x47, 0x65, 0x74, 0x54, 0x78, + 0x12, 0x1f, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x20, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x25, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x12, 0x1d, 0x2f, 0x63, 0x6f, + 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x74, 0x78, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, + 0x74, 0x78, 0x73, 0x2f, 0x7b, 0x68, 0x61, 0x73, 0x68, 0x7d, 0x12, 0x7f, 0x0a, 0x0b, 0x42, 0x72, + 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x78, 0x12, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x72, - 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6d, 0x6f, 0x64, - 0x65, 0x22, 0x5c, 0x0a, 0x13, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x78, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x0b, 0x74, 0x78, 0x5f, 0x72, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x61, 0x62, 0x63, 0x69, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x52, 0x0a, 0x74, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x57, 0x0a, 0x0f, 0x53, 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x29, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, + 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x78, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x21, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1b, + 0x3a, 0x01, 0x2a, 0x22, 0x16, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x74, 0x78, 0x2f, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x74, 0x78, 0x73, 0x12, 0x7c, 0x0a, 0x0b, 0x47, + 0x65, 0x74, 0x54, 0x78, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x25, 0x2e, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, + 0x65, 0x74, 0x54, 0x78, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x78, 0x73, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1e, 0x82, 0xd3, 0xe4, 0x93, 0x02, + 0x18, 0x12, 0x16, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x74, 0x78, 0x2f, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x74, 0x78, 0x73, 0x12, 0x97, 0x01, 0x0a, 0x0f, 0x47, 0x65, + 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x57, 0x69, 0x74, 0x68, 0x54, 0x78, 0x73, 0x12, 0x29, 0x2e, + 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x57, 0x69, 0x74, 0x68, 0x54, 0x78, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, + 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, + 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x57, 0x69, 0x74, 0x68, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x27, 0x12, 0x25, 0x2f, 0x63, + 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x74, 0x78, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2f, 0x74, 0x78, 0x73, 0x2f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2f, 0x7b, 0x68, 0x65, 0x69, 0x67, + 0x68, 0x74, 0x7d, 0x12, 0x79, 0x0a, 0x08, 0x54, 0x78, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x12, + 0x22, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x54, 0x78, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x78, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x24, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1e, + 0x3a, 0x01, 0x2a, 0x22, 0x19, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x74, 0x78, 0x2f, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x64, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x79, + 0x0a, 0x08, 0x54, 0x78, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x22, 0x2e, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, + 0x78, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x54, 0x78, 0x42, 0x02, 0x18, 0x01, 0x52, 0x02, 0x74, 0x78, 0x12, 0x19, 0x0a, - 0x08, 0x74, 0x78, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, - 0x07, 0x74, 0x78, 0x42, 0x79, 0x74, 0x65, 0x73, 0x22, 0x8a, 0x01, 0x0a, 0x10, 0x53, 0x69, 0x6d, - 0x75, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3c, 0x0a, - 0x08, 0x67, 0x61, 0x73, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x21, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x61, 0x62, - 0x63, 0x69, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x61, 0x73, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x07, 0x67, 0x61, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x38, 0x0a, 0x06, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6f, - 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x61, 0x62, 0x63, 0x69, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x22, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x54, 0x78, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x22, 0x7d, 0x0a, 0x0d, 0x47, 0x65, 0x74, - 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x02, 0x74, 0x78, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, - 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x78, 0x52, 0x02, 0x74, - 0x78, 0x12, 0x45, 0x0a, 0x0b, 0x74, 0x78, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, - 0x62, 0x61, 0x73, 0x65, 0x2e, 0x61, 0x62, 0x63, 0x69, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0a, 0x74, 0x78, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x78, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x42, - 0x6c, 0x6f, 0x63, 0x6b, 0x57, 0x69, 0x74, 0x68, 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x46, 0x0a, 0x0a, 0x70, 0x61, - 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, - 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x67, 0x65, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x22, 0xf0, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x57, - 0x69, 0x74, 0x68, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, - 0x0a, 0x03, 0x74, 0x78, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6f, + 0x61, 0x31, 0x2e, 0x54, 0x78, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x24, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1e, 0x3a, 0x01, 0x2a, 0x22, 0x19, + 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x74, 0x78, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2f, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x8e, 0x01, 0x0a, 0x0d, 0x54, 0x78, + 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x41, 0x6d, 0x69, 0x6e, 0x6f, 0x12, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x54, 0x78, 0x52, 0x03, 0x74, 0x78, 0x73, 0x12, 0x34, 0x0a, 0x08, 0x62, 0x6c, 0x6f, 0x63, 0x6b, - 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x74, 0x65, 0x6e, 0x64, - 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x74, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x42, 0x6c, 0x6f, - 0x63, 0x6b, 0x49, 0x44, 0x52, 0x07, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x49, 0x64, 0x12, 0x2d, 0x0a, - 0x05, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x74, - 0x65, 0x6e, 0x64, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x74, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, - 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x05, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x47, 0x0a, 0x0a, - 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x67, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x2c, 0x0a, 0x0f, 0x54, 0x78, 0x44, 0x65, 0x63, 0x6f, 0x64, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x78, 0x5f, 0x62, - 0x79, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x74, 0x78, 0x42, 0x79, - 0x74, 0x65, 0x73, 0x22, 0x39, 0x0a, 0x10, 0x54, 0x78, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x78, 0x52, 0x02, 0x74, 0x78, 0x22, 0x38, - 0x0a, 0x0f, 0x54, 0x78, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x25, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x54, 0x78, 0x52, 0x02, 0x74, 0x78, 0x22, 0x2d, 0x0a, 0x10, 0x54, 0x78, 0x45, 0x6e, - 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x19, 0x0a, 0x08, - 0x74, 0x78, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, - 0x74, 0x78, 0x42, 0x79, 0x74, 0x65, 0x73, 0x22, 0x35, 0x0a, 0x14, 0x54, 0x78, 0x45, 0x6e, 0x63, - 0x6f, 0x64, 0x65, 0x41, 0x6d, 0x69, 0x6e, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x1d, 0x0a, 0x0a, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x5f, 0x6a, 0x73, 0x6f, 0x6e, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x4a, 0x73, 0x6f, 0x6e, 0x22, 0x3a, - 0x0a, 0x15, 0x54, 0x78, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x41, 0x6d, 0x69, 0x6e, 0x6f, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x6d, 0x69, 0x6e, 0x6f, - 0x5f, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x61, - 0x6d, 0x69, 0x6e, 0x6f, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x22, 0x39, 0x0a, 0x14, 0x54, 0x78, - 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x41, 0x6d, 0x69, 0x6e, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x5f, 0x62, 0x69, 0x6e, 0x61, - 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x42, - 0x69, 0x6e, 0x61, 0x72, 0x79, 0x22, 0x36, 0x0a, 0x15, 0x54, 0x78, 0x44, 0x65, 0x63, 0x6f, 0x64, - 0x65, 0x41, 0x6d, 0x69, 0x6e, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, - 0x0a, 0x0a, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x5f, 0x6a, 0x73, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x09, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x4a, 0x73, 0x6f, 0x6e, 0x2a, 0x48, 0x0a, - 0x07, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x52, 0x44, 0x45, - 0x52, 0x5f, 0x42, 0x59, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, - 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x4f, 0x52, 0x44, 0x45, 0x52, 0x5f, 0x42, 0x59, 0x5f, 0x41, - 0x53, 0x43, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x52, 0x44, 0x45, 0x52, 0x5f, 0x42, 0x59, - 0x5f, 0x44, 0x45, 0x53, 0x43, 0x10, 0x02, 0x2a, 0x80, 0x01, 0x0a, 0x0d, 0x42, 0x72, 0x6f, 0x61, - 0x64, 0x63, 0x61, 0x73, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1e, 0x0a, 0x1a, 0x42, 0x52, 0x4f, - 0x41, 0x44, 0x43, 0x41, 0x53, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, - 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x14, 0x42, 0x52, 0x4f, - 0x41, 0x44, 0x43, 0x41, 0x53, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x42, 0x4c, 0x4f, 0x43, - 0x4b, 0x10, 0x01, 0x1a, 0x02, 0x08, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x42, 0x52, 0x4f, 0x41, 0x44, - 0x43, 0x41, 0x53, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x53, 0x59, 0x4e, 0x43, 0x10, 0x02, - 0x12, 0x18, 0x0a, 0x14, 0x42, 0x52, 0x4f, 0x41, 0x44, 0x43, 0x41, 0x53, 0x54, 0x5f, 0x4d, 0x4f, - 0x44, 0x45, 0x5f, 0x41, 0x53, 0x59, 0x4e, 0x43, 0x10, 0x03, 0x32, 0xaa, 0x09, 0x0a, 0x07, 0x53, - 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x7b, 0x0a, 0x08, 0x53, 0x69, 0x6d, 0x75, 0x6c, 0x61, - 0x74, 0x65, 0x12, 0x22, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, - 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x69, 0x6d, 0x75, 0x6c, - 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x26, 0x82, 0xd3, 0xe4, - 0x93, 0x02, 0x20, 0x3a, 0x01, 0x2a, 0x22, 0x1b, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, - 0x74, 0x78, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x73, 0x69, 0x6d, 0x75, 0x6c, - 0x61, 0x74, 0x65, 0x12, 0x71, 0x0a, 0x05, 0x47, 0x65, 0x74, 0x54, 0x78, 0x12, 0x1f, 0x2e, 0x63, + 0x54, 0x78, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x41, 0x6d, 0x69, 0x6e, 0x6f, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x78, 0x45, 0x6e, 0x63, 0x6f, 0x64, + 0x65, 0x41, 0x6d, 0x69, 0x6e, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2a, + 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x24, 0x3a, 0x01, 0x2a, 0x22, 0x1f, 0x2f, 0x63, 0x6f, 0x73, 0x6d, + 0x6f, 0x73, 0x2f, 0x74, 0x78, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x65, 0x6e, + 0x63, 0x6f, 0x64, 0x65, 0x2f, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x12, 0x8e, 0x01, 0x0a, 0x0d, 0x54, + 0x78, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x41, 0x6d, 0x69, 0x6e, 0x6f, 0x12, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0x2e, 0x47, 0x65, 0x74, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x25, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x12, 0x1d, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, - 0x2f, 0x74, 0x78, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x74, 0x78, 0x73, 0x2f, - 0x7b, 0x68, 0x61, 0x73, 0x68, 0x7d, 0x12, 0x7f, 0x0a, 0x0b, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, - 0x61, 0x73, 0x74, 0x54, 0x78, 0x12, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, - 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, - 0x61, 0x73, 0x74, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x63, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0x2e, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x21, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1b, 0x3a, 0x01, 0x2a, 0x22, - 0x16, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x74, 0x78, 0x2f, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2f, 0x74, 0x78, 0x73, 0x12, 0x7c, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x54, 0x78, - 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, - 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x78, - 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x78, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x18, 0x12, 0x16, 0x2f, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x74, 0x78, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2f, 0x74, 0x78, 0x73, 0x12, 0x97, 0x01, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, - 0x63, 0x6b, 0x57, 0x69, 0x74, 0x68, 0x54, 0x78, 0x73, 0x12, 0x29, 0x2e, 0x63, 0x6f, 0x73, 0x6d, - 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, - 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x57, 0x69, 0x74, 0x68, 0x54, 0x78, 0x73, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, - 0x6b, 0x57, 0x69, 0x74, 0x68, 0x54, 0x78, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x2d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x27, 0x12, 0x25, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, - 0x73, 0x2f, 0x74, 0x78, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x74, 0x78, 0x73, - 0x2f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2f, 0x7b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x7d, 0x12, - 0x79, 0x0a, 0x08, 0x54, 0x78, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x22, 0x2e, 0x63, 0x6f, - 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x54, 0x78, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x23, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2e, 0x54, 0x78, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x24, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1e, 0x3a, 0x01, 0x2a, 0x22, - 0x19, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x74, 0x78, 0x2f, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2f, 0x64, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x79, 0x0a, 0x08, 0x54, 0x78, - 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x22, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, - 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x78, 0x45, 0x6e, 0x63, - 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x63, 0x6f, 0x73, - 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, - 0x78, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x24, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1e, 0x3a, 0x01, 0x2a, 0x22, 0x19, 0x2f, 0x63, 0x6f, 0x73, - 0x6d, 0x6f, 0x73, 0x2f, 0x74, 0x78, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x65, - 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x8e, 0x01, 0x0a, 0x0d, 0x54, 0x78, 0x45, 0x6e, 0x63, 0x6f, - 0x64, 0x65, 0x41, 0x6d, 0x69, 0x6e, 0x6f, 0x12, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, - 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x78, 0x45, 0x6e, - 0x63, 0x6f, 0x64, 0x65, 0x41, 0x6d, 0x69, 0x6e, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x28, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x78, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x41, 0x6d, 0x69, - 0x6e, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2a, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x24, 0x3a, 0x01, 0x2a, 0x22, 0x1f, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x74, - 0x78, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x65, - 0x2f, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x12, 0x8e, 0x01, 0x0a, 0x0d, 0x54, 0x78, 0x44, 0x65, 0x63, - 0x6f, 0x64, 0x65, 0x41, 0x6d, 0x69, 0x6e, 0x6f, 0x12, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, - 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x78, 0x44, - 0x65, 0x63, 0x6f, 0x64, 0x65, 0x41, 0x6d, 0x69, 0x6e, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x28, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x78, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x41, 0x6d, - 0x69, 0x6e, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2a, 0x82, 0xd3, 0xe4, - 0x93, 0x02, 0x24, 0x3a, 0x01, 0x2a, 0x22, 0x1f, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, - 0x74, 0x78, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x64, 0x65, 0x63, 0x6f, 0x64, - 0x65, 0x2f, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x42, 0xb9, 0x01, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x2e, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x42, 0x0c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, - 0x01, 0x5a, 0x2c, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, - 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x74, 0x78, 0x2f, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x3b, 0x74, 0x78, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0xa2, - 0x02, 0x03, 0x43, 0x54, 0x58, 0xaa, 0x02, 0x11, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x54, - 0x78, 0x2e, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0xca, 0x02, 0x11, 0x43, 0x6f, 0x73, 0x6d, - 0x6f, 0x73, 0x5c, 0x54, 0x78, 0x5c, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0xe2, 0x02, 0x1d, + 0x2e, 0x54, 0x78, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x41, 0x6d, 0x69, 0x6e, 0x6f, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, + 0x78, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x78, 0x44, 0x65, 0x63, 0x6f, + 0x64, 0x65, 0x41, 0x6d, 0x69, 0x6e, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x2a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x24, 0x3a, 0x01, 0x2a, 0x22, 0x1f, 0x2f, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x2f, 0x74, 0x78, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x64, + 0x65, 0x63, 0x6f, 0x64, 0x65, 0x2f, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x42, 0xb9, 0x01, 0x0a, 0x15, + 0x63, 0x6f, 0x6d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x78, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x0c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2c, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, + 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x74, + 0x78, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x3b, 0x74, 0x78, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0xa2, 0x02, 0x03, 0x43, 0x54, 0x58, 0xaa, 0x02, 0x11, 0x43, 0x6f, 0x73, 0x6d, + 0x6f, 0x73, 0x2e, 0x54, 0x78, 0x2e, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0xca, 0x02, 0x11, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5c, 0x54, 0x78, 0x5c, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x13, - 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x3a, 0x3a, 0x54, 0x78, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x31, 0xe2, 0x02, 0x1d, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5c, 0x54, 0x78, 0x5c, 0x56, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0xea, 0x02, 0x13, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x3a, 0x3a, 0x54, 0x78, 0x3a, 0x3a, + 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/proto/cosmos/gov/v1/gov.proto b/proto/cosmos/gov/v1/gov.proto index 250401208afc..f3540bf6fe12 100644 --- a/proto/cosmos/gov/v1/gov.proto +++ b/proto/cosmos/gov/v1/gov.proto @@ -251,7 +251,7 @@ message Params { // burn deposits if the proposal does not enter voting period // // Since: cosmos-sdk 0.47 - bool burn_proposal_deposit = 14; + bool burn_proposal_deposit_prevote = 14; // burn deposits if quorum with vote type no_veto is met // // Since: cosmos-sdk 0.47 diff --git a/types/tx/service.pb.go b/types/tx/service.pb.go index 50c70059c831..19665631a4c4 100644 --- a/types/tx/service.pb.go +++ b/types/tx/service.pb.go @@ -110,7 +110,7 @@ type GetTxsEventRequest struct { // events is the list of transaction event type. // Deprecated post v0.47.x: use query instead, which should contain a valid // events query. - Events []string `protobuf:"bytes,1,rep,name=events,proto3" json:"events,omitempty"` + Events []string `protobuf:"bytes,1,rep,name=events,proto3" json:"events,omitempty"` // Deprecated: Do not use. // pagination defines a pagination for the request. // Deprecated post v0.46.x: use page and limit instead. Pagination *query.PageRequest `protobuf:"bytes,2,opt,name=pagination,proto3" json:"pagination,omitempty"` // Deprecated: Do not use. @@ -123,6 +123,8 @@ type GetTxsEventRequest struct { Limit uint64 `protobuf:"varint,5,opt,name=limit,proto3" json:"limit,omitempty"` // query defines the transaction event query that is proxied to Tendermint's // TxSearch RPC method. The query must be valid. + // + // Since Cosmos SDK 0.48 Query string `protobuf:"bytes,6,opt,name=query,proto3" json:"query,omitempty"` } @@ -159,6 +161,7 @@ func (m *GetTxsEventRequest) XXX_DiscardUnknown() { var xxx_messageInfo_GetTxsEventRequest proto.InternalMessageInfo +// Deprecated: Do not use. func (m *GetTxsEventRequest) GetEvents() []string { if m != nil { return m.Events @@ -1144,85 +1147,85 @@ func init() { func init() { proto.RegisterFile("cosmos/tx/v1beta1/service.proto", fileDescriptor_e0b00a618705eca7) } var fileDescriptor_e0b00a618705eca7 = []byte{ - // 1234 bytes of a gzipped FileDescriptorProto + // 1237 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x57, 0x4d, 0x4f, 0x1b, 0x47, 0x18, 0x66, 0x6d, 0x83, 0xcd, 0x6b, 0x08, 0xce, 0x40, 0xc0, 0x38, 0xc4, 0x98, 0x0d, 0x1f, 0x8e, 0x55, 0xbc, 0x0a, 0x4d, 0xaa, 0x24, 0xaa, 0x54, 0xe1, 0x8f, 0x50, 0x92, 0x26, 0x44, 0x6b, 0xaa, 0x28, 0x55, 0x25, 0x6b, 0x6d, 0x4f, 0xec, 0x6d, 0xec, 0x5d, 0xe3, 0x19, 0xd0, 0x5a, 0x14, 0xb5, 0xea, 0xb1, 0x87, 0xaa, 0x52, 0x0f, 0xfd, 0x0f, 0xfd, 0x25, 0x3d, 0x46, 0xea, 0xa5, 0xc7, 0x0a, - 0x7a, 0xea, 0xa5, 0xfd, 0x09, 0xd5, 0xce, 0x8c, 0xed, 0x5d, 0x7b, 0x17, 0x43, 0x2e, 0x30, 0x1f, - 0xcf, 0xfb, 0x3e, 0xcf, 0xbc, 0x33, 0xf3, 0xec, 0x18, 0x56, 0xab, 0x26, 0x69, 0x99, 0x44, 0xa1, - 0x96, 0x72, 0x72, 0xbf, 0x82, 0xa9, 0x76, 0x5f, 0x21, 0xb8, 0x73, 0xa2, 0x57, 0x71, 0xb6, 0xdd, - 0x31, 0xa9, 0x89, 0x6e, 0x72, 0x40, 0x96, 0x5a, 0x59, 0x01, 0x48, 0xac, 0xd4, 0x4d, 0xb3, 0xde, - 0xc4, 0x8a, 0xd6, 0xd6, 0x15, 0xcd, 0x30, 0x4c, 0xaa, 0x51, 0xdd, 0x34, 0x08, 0x0f, 0x48, 0xdc, - 0x15, 0x19, 0x2b, 0x1a, 0xc1, 0x8a, 0x56, 0xa9, 0xea, 0xfd, 0xc4, 0x76, 0x47, 0x80, 0x12, 0xa3, - 0xb4, 0xd4, 0x12, 0x73, 0x19, 0x67, 0x82, 0xa3, 0x63, 0xdc, 0xe9, 0xf6, 0x31, 0x6d, 0xad, 0xae, - 0x1b, 0x8c, 0x4d, 0x60, 0x57, 0x28, 0x36, 0x6a, 0xb8, 0xd3, 0xd2, 0x0d, 0xaa, 0xd0, 0x6e, 0x1b, - 0x13, 0xa5, 0xd2, 0x34, 0xab, 0xef, 0x7c, 0x67, 0xd9, 0x5f, 0x3e, 0x2b, 0xff, 0x2b, 0x01, 0xda, - 0xc3, 0xf4, 0xd0, 0x22, 0xc5, 0x13, 0x6c, 0x50, 0x15, 0x1f, 0x1d, 0x63, 0x42, 0xd1, 0x22, 0x4c, - 0x61, 0xbb, 0x4f, 0xe2, 0x52, 0x2a, 0x98, 0x9e, 0x56, 0x45, 0x0f, 0x3d, 0x03, 0x18, 0xd0, 0xc7, - 0x03, 0x29, 0x29, 0x1d, 0xdd, 0xd9, 0xcc, 0x8a, 0xea, 0xd8, 0x5a, 0xb3, 0x4c, 0x6b, 0xaf, 0x4a, - 0xd9, 0x57, 0x5a, 0x1d, 0x8b, 0x9c, 0xb9, 0x40, 0x5c, 0x52, 0x1d, 0xd1, 0xe8, 0x21, 0x44, 0xcc, - 0x4e, 0x0d, 0x77, 0xca, 0x95, 0x6e, 0x3c, 0x98, 0x92, 0xd2, 0x37, 0x76, 0x12, 0xd9, 0x91, 0x3a, - 0x67, 0x0f, 0x6c, 0x48, 0xae, 0xab, 0x86, 0x4d, 0xde, 0x40, 0x08, 0x42, 0x6d, 0xad, 0x8e, 0xe3, - 0xa1, 0x94, 0x94, 0x0e, 0xa9, 0xac, 0x8d, 0x16, 0x60, 0xb2, 0xa9, 0xb7, 0x74, 0x1a, 0x9f, 0x64, - 0x83, 0xbc, 0x63, 0x8f, 0x32, 0x35, 0xf1, 0xa9, 0x94, 0x94, 0x9e, 0x56, 0x79, 0x47, 0xfe, 0x47, - 0x82, 0x79, 0xd7, 0x8a, 0x49, 0xdb, 0x34, 0x08, 0x46, 0x5b, 0x10, 0xa4, 0x16, 0x5f, 0x6f, 0x74, - 0xe7, 0x96, 0x87, 0x92, 0x43, 0x4b, 0xb5, 0x11, 0x68, 0x0f, 0x66, 0xa8, 0x55, 0xee, 0x88, 0x38, - 0x12, 0x0f, 0xb0, 0x88, 0x75, 0x57, 0x15, 0xd8, 0x2e, 0x3b, 0x02, 0x05, 0x58, 0x8d, 0xd2, 0x7e, - 0x9b, 0xa0, 0xe7, 0xae, 0x62, 0x06, 0x59, 0x31, 0xb7, 0xc6, 0x16, 0x93, 0x47, 0x8f, 0x54, 0x73, - 0x01, 0x26, 0xa9, 0x49, 0xb5, 0xa6, 0xa8, 0x0b, 0xef, 0xc8, 0x18, 0x50, 0xae, 0x63, 0x6a, 0xb5, - 0xaa, 0x46, 0xa8, 0x2d, 0x83, 0xef, 0xee, 0x32, 0x44, 0xa8, 0x55, 0xae, 0x74, 0x29, 0xb6, 0xd7, - 0x2b, 0xa5, 0x67, 0xd4, 0x30, 0xb5, 0x72, 0x76, 0x17, 0x3d, 0x80, 0x50, 0xcb, 0xac, 0x61, 0xb6, - 0xb5, 0x37, 0x76, 0x52, 0x1e, 0x65, 0xe8, 0xe7, 0x7b, 0x61, 0xd6, 0xb0, 0xca, 0xd0, 0xf2, 0xd7, - 0x30, 0xef, 0xa2, 0x11, 0x25, 0x2d, 0x42, 0xd4, 0x51, 0x29, 0x46, 0x75, 0xd5, 0x42, 0xc1, 0xa0, - 0x50, 0xf2, 0x6b, 0x98, 0x2b, 0xe9, 0xad, 0xe3, 0xa6, 0x46, 0x7b, 0x67, 0x09, 0xdd, 0x83, 0x00, - 0xb5, 0x44, 0x42, 0xef, 0xbd, 0x62, 0x05, 0x0a, 0x50, 0xcb, 0xb5, 0xd8, 0x80, 0x6b, 0xb1, 0xf2, - 0x8f, 0x12, 0xc4, 0x06, 0x99, 0x85, 0xe8, 0x4f, 0x21, 0x52, 0xd7, 0x48, 0x59, 0x37, 0xde, 0x9a, - 0x82, 0x60, 0xcd, 0x5f, 0xf1, 0x9e, 0x46, 0xf6, 0x8d, 0xb7, 0xa6, 0x1a, 0xae, 0xf3, 0x06, 0x7a, - 0x04, 0x53, 0x1d, 0x4c, 0x8e, 0x9b, 0x54, 0x5c, 0x8e, 0x94, 0x7f, 0xac, 0xca, 0x70, 0xaa, 0xc0, - 0xcb, 0x32, 0xcc, 0xb0, 0x63, 0xd9, 0x5b, 0x22, 0x82, 0x50, 0x43, 0x23, 0x0d, 0xa6, 0x61, 0x5a, - 0x65, 0x6d, 0xf9, 0x0c, 0x66, 0x05, 0x46, 0x88, 0xdd, 0x18, 0x5b, 0x07, 0x56, 0x83, 0xa1, 0x8d, - 0x08, 0x7c, 0xe0, 0x46, 0x58, 0xb0, 0xb8, 0x87, 0x69, 0xce, 0x36, 0x97, 0xd7, 0x3a, 0x6d, 0x1c, - 0x5a, 0xc4, 0xe1, 0x17, 0x0d, 0xac, 0xd7, 0x1b, 0x94, 0x69, 0x09, 0xaa, 0xa2, 0x87, 0x9e, 0x7e, - 0xb8, 0x5f, 0x38, 0x4f, 0xb7, 0xfc, 0x9f, 0x04, 0x4b, 0x23, 0xd4, 0xd7, 0xbd, 0xb8, 0x0f, 0x20, - 0xc2, 0x8c, 0xb1, 0xac, 0xd7, 0x84, 0x94, 0xe5, 0xec, 0xc0, 0x1c, 0xb3, 0xdc, 0x16, 0x19, 0xc5, - 0x7e, 0x41, 0x0d, 0x33, 0xe8, 0x7e, 0x0d, 0x6d, 0xc3, 0x24, 0x6b, 0x8a, 0x0b, 0xba, 0xe4, 0x13, - 0xa2, 0x72, 0x14, 0xda, 0x73, 0xad, 0x38, 0x74, 0xad, 0x4b, 0xed, 0x5a, 0xf2, 0x47, 0x30, 0x77, - 0x68, 0x15, 0x70, 0xd5, 0xbe, 0x65, 0x63, 0xef, 0xad, 0xfc, 0x18, 0x62, 0x03, 0xf4, 0xb5, 0x0e, - 0x87, 0xfc, 0xc8, 0x26, 0x2a, 0x1a, 0x4e, 0xa2, 0x2b, 0x46, 0x6e, 0xdb, 0xa4, 0xbd, 0x48, 0x41, - 0x7a, 0x89, 0xc6, 0x87, 0xb0, 0xd0, 0x83, 0xef, 0xb6, 0x74, 0xc3, 0xec, 0xb1, 0xdd, 0x01, 0xd0, - 0xec, 0x7e, 0xf9, 0x1b, 0x62, 0x1a, 0xe2, 0xbc, 0x4f, 0xb3, 0x91, 0x67, 0xc4, 0x34, 0xe4, 0x27, - 0x70, 0x6b, 0x28, 0x4c, 0x50, 0xad, 0xc1, 0x0c, 0x8f, 0xab, 0xe8, 0x86, 0xd6, 0xe9, 0x0a, 0xba, - 0x28, 0x1b, 0xcb, 0xb1, 0x21, 0xf9, 0xb1, 0x4d, 0xc9, 0xcb, 0xe2, 0xa2, 0xbc, 0x42, 0xe8, 0x27, - 0x36, 0xad, 0x2b, 0x54, 0xd0, 0x5e, 0x2e, 0x37, 0xf3, 0x39, 0x84, 0xc5, 0x37, 0x0b, 0xc5, 0x61, - 0xe1, 0x40, 0x2d, 0x14, 0xd5, 0x72, 0xee, 0x4d, 0xf9, 0xcb, 0x97, 0xa5, 0x57, 0xc5, 0xfc, 0xfe, - 0xd3, 0xfd, 0x62, 0x21, 0x36, 0x81, 0x62, 0x30, 0xd3, 0x9f, 0xd9, 0x2d, 0xe5, 0x63, 0x12, 0xba, - 0x09, 0xb3, 0xfd, 0x91, 0x42, 0xb1, 0x94, 0x8f, 0x05, 0x32, 0xdf, 0x4b, 0x30, 0xeb, 0x72, 0x5b, - 0x94, 0x84, 0x44, 0x4e, 0x3d, 0xd8, 0x2d, 0xe4, 0x77, 0x4b, 0x87, 0xe5, 0x17, 0x07, 0x85, 0xe2, - 0x50, 0xda, 0x15, 0x58, 0x18, 0x9a, 0xcf, 0x7d, 0x71, 0x90, 0x7f, 0x1e, 0x93, 0x12, 0x81, 0x88, - 0x84, 0x96, 0x60, 0x7e, 0x68, 0xb6, 0xf4, 0xe6, 0x65, 0x3e, 0x16, 0xb0, 0x75, 0x0e, 0x4d, 0xec, - 0xb2, 0x99, 0xe0, 0xce, 0x6f, 0xd3, 0x10, 0x2e, 0xf1, 0xa7, 0x10, 0x3a, 0x85, 0x48, 0xcf, 0x2c, - 0x91, 0xec, 0x71, 0x28, 0x86, 0x3c, 0x3a, 0x71, 0xf7, 0x52, 0x8c, 0xb0, 0x94, 0xcd, 0x1f, 0xfe, - 0xf8, 0xfb, 0x97, 0x40, 0xea, 0x89, 0x94, 0x91, 0x6f, 0x2b, 0x1e, 0xcf, 0xb0, 0x1e, 0xe1, 0x11, - 0x4c, 0x32, 0xe7, 0x43, 0xab, 0x1e, 0x59, 0x9d, 0xbe, 0x99, 0x48, 0xf9, 0x03, 0x04, 0xe7, 0x06, - 0xe3, 0x5c, 0x45, 0x77, 0x14, 0xaf, 0x07, 0x18, 0x51, 0x4e, 0x6d, 0xaf, 0x3d, 0x43, 0xdf, 0x41, - 0xd4, 0xf1, 0x51, 0x43, 0x1b, 0x97, 0x7d, 0x0b, 0x07, 0xf4, 0x9b, 0xe3, 0x60, 0x42, 0xc4, 0x1a, - 0x13, 0x71, 0xdb, 0x5e, 0xf8, 0xa2, 0xb7, 0x0e, 0xf4, 0x2d, 0x44, 0x1d, 0x0f, 0x15, 0x4f, 0x01, - 0xa3, 0x4f, 0x37, 0x4f, 0x01, 0x1e, 0xef, 0x1d, 0x39, 0xc9, 0x04, 0xc4, 0x91, 0x1f, 0xfb, 0xaf, - 0x12, 0xcc, 0x0d, 0x59, 0x2e, 0xba, 0xe7, 0x9d, 0xdb, 0xe3, 0x8b, 0x90, 0xc8, 0x5c, 0x05, 0x2a, - 0xa4, 0x6c, 0x33, 0x29, 0x5b, 0x68, 0xc3, 0x67, 0x43, 0x98, 0xb3, 0x2a, 0xa7, 0xfc, 0x9b, 0x72, - 0x86, 0xba, 0x10, 0xe9, 0xdd, 0x4c, 0xcf, 0x83, 0x38, 0x64, 0x9b, 0x9e, 0x07, 0x71, 0xd8, 0x2c, - 0xe5, 0x75, 0xa6, 0x21, 0x69, 0xef, 0xc7, 0xb2, 0x87, 0x8c, 0x1a, 0xa7, 0x63, 0xd4, 0xdc, 0x8b, - 0x7c, 0xa8, 0x5d, 0x46, 0xea, 0x43, 0xed, 0xb6, 0xcc, 0x71, 0xd4, 0x98, 0xd3, 0xfd, 0x24, 0xc1, - 0xac, 0xcb, 0x07, 0xd1, 0xd6, 0x25, 0xc9, 0x9d, 0x6e, 0x97, 0x48, 0x8f, 0x07, 0x0a, 0x29, 0x19, - 0x26, 0x65, 0xdd, 0x96, 0xb2, 0xea, 0x2b, 0x45, 0x61, 0x66, 0x27, 0x04, 0x39, 0x1c, 0xd2, 0x47, - 0xd0, 0xa8, 0xfd, 0xfa, 0x08, 0xf2, 0x30, 0xdb, 0x71, 0x82, 0xf8, 0xb6, 0x70, 0x41, 0xb9, 0xcf, - 0x7e, 0x3f, 0x4f, 0x4a, 0xef, 0xcf, 0x93, 0xd2, 0x5f, 0xe7, 0x49, 0xe9, 0xe7, 0x8b, 0xe4, 0xc4, - 0xfb, 0x8b, 0xe4, 0xc4, 0x9f, 0x17, 0xc9, 0x89, 0xaf, 0x36, 0xea, 0x3a, 0x6d, 0x1c, 0x57, 0xb2, - 0x55, 0xb3, 0xd5, 0x4b, 0xc2, 0xff, 0x6d, 0x93, 0xda, 0xbb, 0xde, 0xaf, 0x22, 0xab, 0x32, 0xc5, - 0x7e, 0x13, 0x7d, 0xfc, 0x7f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x0b, 0x24, 0x1f, 0x2c, 0x10, 0x0e, - 0x00, 0x00, + 0x7a, 0xea, 0xa9, 0x52, 0xff, 0x40, 0xb5, 0x33, 0xb3, 0xb6, 0xd7, 0xde, 0xc5, 0x90, 0x0b, 0xcc, + 0xc7, 0xf3, 0xbe, 0xcf, 0x33, 0xef, 0xcc, 0x3c, 0x3b, 0x86, 0xd5, 0xaa, 0x49, 0x5a, 0x26, 0x51, + 0xa8, 0xa5, 0x9c, 0xdc, 0xaf, 0x60, 0xaa, 0xdd, 0x57, 0x08, 0xee, 0x9c, 0xe8, 0x55, 0x9c, 0x6d, + 0x77, 0x4c, 0x6a, 0xa2, 0x9b, 0x1c, 0x90, 0xa5, 0x56, 0x56, 0x00, 0x12, 0x2b, 0x75, 0xd3, 0xac, + 0x37, 0xb1, 0xa2, 0xb5, 0x75, 0x45, 0x33, 0x0c, 0x93, 0x6a, 0x54, 0x37, 0x0d, 0xc2, 0x03, 0x12, + 0x77, 0x45, 0xc6, 0x8a, 0x46, 0xb0, 0xa2, 0x55, 0xaa, 0x7a, 0x2f, 0xb1, 0xdd, 0x11, 0xa0, 0xc4, + 0x28, 0x2d, 0xb5, 0xc4, 0x5c, 0x66, 0x30, 0xc1, 0xd1, 0x31, 0xee, 0x74, 0x7b, 0x98, 0xb6, 0x56, + 0xd7, 0x0d, 0xc6, 0x26, 0xb0, 0x2b, 0x14, 0x1b, 0x35, 0xdc, 0x69, 0xe9, 0x06, 0x55, 0x68, 0xb7, + 0x8d, 0x89, 0x52, 0x69, 0x9a, 0xd5, 0x77, 0xbe, 0xb3, 0xec, 0x2f, 0x9f, 0x95, 0xff, 0x93, 0x00, + 0xed, 0x61, 0x7a, 0x68, 0x91, 0xe2, 0x09, 0x36, 0xa8, 0x8a, 0x8f, 0x8e, 0x31, 0xa1, 0x28, 0x01, + 0x53, 0xd8, 0xee, 0x93, 0xb8, 0x94, 0x0a, 0xa6, 0xa7, 0x73, 0x81, 0xb8, 0xa4, 0x8a, 0x11, 0xf4, + 0x0c, 0xa0, 0x2f, 0x21, 0x1e, 0x48, 0x49, 0xe9, 0xe8, 0xce, 0x66, 0x56, 0x54, 0xc8, 0xd6, 0x9b, + 0x65, 0x7a, 0x9d, 0x4a, 0x65, 0x5f, 0x69, 0x75, 0x2c, 0xf2, 0xb2, 0x3c, 0x03, 0xd1, 0xe8, 0x21, + 0x44, 0xcc, 0x4e, 0x0d, 0x77, 0xca, 0x95, 0x6e, 0x3c, 0x98, 0x92, 0xd2, 0x37, 0x76, 0x12, 0xd9, + 0x91, 0x5a, 0x67, 0x0f, 0x6c, 0x48, 0xae, 0xab, 0x86, 0x4d, 0xde, 0x40, 0x08, 0x42, 0x6d, 0xad, + 0x8e, 0xe3, 0xa1, 0x94, 0x94, 0x0e, 0xa9, 0xac, 0x8d, 0x16, 0x60, 0xb2, 0xa9, 0xb7, 0x74, 0x1a, + 0x9f, 0x64, 0x83, 0xbc, 0x63, 0x8f, 0x32, 0x35, 0xf1, 0xa9, 0x94, 0x94, 0x9e, 0x56, 0x79, 0x47, + 0xfe, 0x47, 0x82, 0x79, 0xd7, 0xaa, 0x49, 0xdb, 0x34, 0x08, 0x46, 0x5b, 0x10, 0xa4, 0x16, 0x5f, + 0x73, 0x74, 0xe7, 0x96, 0x87, 0x92, 0x43, 0x4b, 0xb5, 0x11, 0x68, 0x0f, 0x66, 0xa8, 0x55, 0xee, + 0x88, 0x38, 0x12, 0x0f, 0xb0, 0x88, 0x75, 0x57, 0x15, 0xd8, 0x4e, 0x0f, 0x04, 0x0a, 0xb0, 0x1a, + 0xa5, 0xbd, 0x36, 0x41, 0xcf, 0x5d, 0xc5, 0x0c, 0xb2, 0x62, 0x6e, 0x8d, 0x2d, 0x26, 0x8f, 0x1e, + 0xa9, 0xe6, 0x02, 0x4c, 0x52, 0x93, 0x6a, 0x4d, 0x51, 0x17, 0xde, 0x91, 0x31, 0xa0, 0x5c, 0xc7, + 0xd4, 0x6a, 0x55, 0x8d, 0x50, 0x5b, 0x06, 0xdf, 0xe1, 0x65, 0x88, 0x50, 0xab, 0x5c, 0xe9, 0x52, + 0x6c, 0xaf, 0x57, 0x4a, 0xcf, 0xa8, 0x61, 0x6a, 0xe5, 0xec, 0x2e, 0x7a, 0x00, 0xa1, 0x96, 0x59, + 0xc3, 0x6c, 0x6b, 0x6f, 0xec, 0xa4, 0x3c, 0xca, 0xd0, 0xcb, 0xf7, 0xc2, 0xac, 0x61, 0x95, 0xa1, + 0xe5, 0xaf, 0x61, 0xde, 0x45, 0x23, 0x4a, 0x5a, 0x84, 0xe8, 0x40, 0xa5, 0x18, 0xd5, 0x55, 0x0b, + 0x05, 0xfd, 0x42, 0xc9, 0xaf, 0x61, 0xae, 0xa4, 0xb7, 0x8e, 0x9b, 0x1a, 0x75, 0xce, 0x12, 0xba, + 0x07, 0x01, 0x6a, 0x89, 0x84, 0xde, 0x7b, 0xc5, 0x0a, 0x14, 0xa0, 0x96, 0x6b, 0xb1, 0x01, 0xd7, + 0x62, 0xe5, 0x1f, 0x25, 0x88, 0xf5, 0x33, 0x0b, 0xd1, 0x9f, 0x42, 0xa4, 0xae, 0x91, 0xb2, 0x6e, + 0xbc, 0x35, 0x05, 0xc1, 0x9a, 0xbf, 0xe2, 0x3d, 0x8d, 0xec, 0x1b, 0x6f, 0x4d, 0x35, 0x5c, 0xe7, + 0x0d, 0xf4, 0x08, 0xa6, 0x3a, 0x98, 0x1c, 0x37, 0xa9, 0xb8, 0x1c, 0x29, 0xff, 0x58, 0x95, 0xe1, + 0x54, 0x81, 0x97, 0x65, 0x98, 0x61, 0xc7, 0xd2, 0x59, 0x22, 0x82, 0x50, 0x43, 0x23, 0x0d, 0xa6, + 0x61, 0x5a, 0x65, 0x6d, 0xf9, 0x0c, 0x66, 0x05, 0x46, 0x88, 0xdd, 0x18, 0x5b, 0x07, 0x56, 0x83, + 0xa1, 0x8d, 0x08, 0x7c, 0xe0, 0x46, 0x58, 0xb0, 0xb8, 0x87, 0x69, 0xce, 0x36, 0x98, 0xd7, 0x3a, + 0x6d, 0x1c, 0x5a, 0xc4, 0x11, 0xbb, 0x08, 0x53, 0x0d, 0xac, 0xd7, 0x1b, 0x94, 0x69, 0x09, 0xaa, + 0xa2, 0x87, 0x9e, 0x7e, 0xb8, 0x5f, 0x0c, 0x9e, 0x6e, 0xf9, 0x5f, 0x09, 0x96, 0x46, 0xa8, 0xaf, + 0x7b, 0x71, 0x1f, 0x40, 0x84, 0x99, 0x63, 0x59, 0xaf, 0x09, 0x29, 0xcb, 0xd9, 0xbe, 0x41, 0x66, + 0xb9, 0x35, 0x32, 0x8a, 0xfd, 0x82, 0x1a, 0x66, 0xd0, 0xfd, 0x1a, 0xda, 0x86, 0x49, 0xd6, 0x14, + 0x17, 0x74, 0xc9, 0x27, 0x44, 0xe5, 0x28, 0xb4, 0xe7, 0x5a, 0x71, 0xe8, 0x5a, 0x97, 0xda, 0xb5, + 0xe4, 0x8f, 0x60, 0xee, 0xd0, 0x2a, 0xe0, 0xaa, 0x7d, 0xcb, 0xc6, 0xde, 0x5b, 0xf9, 0x31, 0xc4, + 0xfa, 0xe8, 0x6b, 0x1d, 0x0e, 0xf9, 0x91, 0x4d, 0x54, 0x34, 0x06, 0x89, 0xae, 0x18, 0xb9, 0x6d, + 0x93, 0x3a, 0x91, 0x82, 0xf4, 0x12, 0x8d, 0x0f, 0x61, 0xc1, 0x81, 0xef, 0xb6, 0x74, 0xc3, 0x74, + 0xd8, 0xee, 0x00, 0x68, 0x76, 0xbf, 0xfc, 0x0d, 0x31, 0x0d, 0x71, 0xde, 0xa7, 0xd9, 0xc8, 0x33, + 0x62, 0x1a, 0xf2, 0x13, 0xb8, 0x35, 0x14, 0x26, 0xa8, 0xd6, 0x60, 0x86, 0xc7, 0x55, 0x74, 0x43, + 0xeb, 0x74, 0x05, 0x5d, 0x94, 0x8d, 0xe5, 0xd8, 0x90, 0xfc, 0xd8, 0xa6, 0xe4, 0x65, 0x71, 0x51, + 0x5e, 0x21, 0xf4, 0x13, 0x9b, 0xd6, 0x15, 0x2a, 0x68, 0x2f, 0x97, 0x9b, 0xf9, 0x1c, 0xc2, 0xe2, + 0x9b, 0x85, 0xe2, 0xb0, 0x70, 0xa0, 0x16, 0x8a, 0x6a, 0x39, 0xf7, 0xa6, 0xfc, 0xe5, 0xcb, 0xd2, + 0xab, 0x62, 0x7e, 0xff, 0xe9, 0x7e, 0xb1, 0x10, 0x9b, 0x40, 0x31, 0x98, 0xe9, 0xcd, 0xec, 0x96, + 0xf2, 0x31, 0x09, 0xdd, 0x84, 0xd9, 0xde, 0x48, 0xa1, 0x58, 0xca, 0xc7, 0x02, 0x99, 0xef, 0x25, + 0x98, 0x75, 0xb9, 0x2d, 0x4a, 0x42, 0x22, 0xa7, 0x1e, 0xec, 0x16, 0xf2, 0xbb, 0xa5, 0xc3, 0xf2, + 0x8b, 0x83, 0x42, 0x71, 0x28, 0xed, 0x0a, 0x2c, 0x0c, 0xcd, 0xe7, 0xbe, 0x38, 0xc8, 0x3f, 0x8f, + 0x49, 0x89, 0x40, 0x44, 0x42, 0x4b, 0x30, 0x3f, 0x34, 0x5b, 0x7a, 0xf3, 0x32, 0x1f, 0x0b, 0xd8, + 0x3a, 0x87, 0x26, 0x76, 0xd9, 0x4c, 0x70, 0xe7, 0xb7, 0x69, 0x08, 0x97, 0xf8, 0x73, 0x08, 0x9d, + 0x42, 0xc4, 0x31, 0x4b, 0x24, 0x7b, 0x1c, 0x8a, 0x21, 0x8f, 0x4e, 0xdc, 0xbd, 0x14, 0x23, 0x2c, + 0x65, 0xf3, 0x87, 0x3f, 0xfe, 0xfe, 0x25, 0x90, 0x7a, 0x22, 0x65, 0xe4, 0xdb, 0x8a, 0xc7, 0x53, + 0xcc, 0x21, 0x3c, 0x82, 0x49, 0xe6, 0x7c, 0x68, 0xd5, 0x23, 0xeb, 0xa0, 0x6f, 0x26, 0x52, 0xfe, + 0x00, 0xc1, 0xb9, 0xc1, 0x38, 0x57, 0xd1, 0x1d, 0xc5, 0xeb, 0x11, 0x46, 0x94, 0x53, 0xdb, 0x6b, + 0xcf, 0xd0, 0x77, 0x10, 0x1d, 0xf8, 0xa8, 0xa1, 0x8d, 0xcb, 0xbe, 0x85, 0x7d, 0xfa, 0xcd, 0x71, + 0x30, 0x21, 0x62, 0x8d, 0x89, 0xb8, 0x6d, 0x2f, 0x7c, 0xd1, 0x5b, 0x07, 0xfa, 0x16, 0xa2, 0x03, + 0x0f, 0x15, 0x4f, 0x01, 0xa3, 0xcf, 0x37, 0x4f, 0x01, 0x1e, 0xef, 0x1d, 0x39, 0xc9, 0x04, 0xc4, + 0x91, 0x1f, 0xfb, 0xaf, 0x12, 0xcc, 0x0d, 0x59, 0x2e, 0xba, 0xe7, 0x9d, 0xdb, 0xe3, 0x8b, 0x90, + 0xc8, 0x5c, 0x05, 0x2a, 0xa4, 0x6c, 0x33, 0x29, 0x5b, 0x68, 0xc3, 0x67, 0x43, 0x98, 0xb3, 0x2a, + 0xa7, 0xfc, 0x9b, 0x72, 0x86, 0xba, 0x10, 0x71, 0x6e, 0xa6, 0xe7, 0x41, 0x1c, 0xb2, 0x4d, 0xcf, + 0x83, 0x38, 0x6c, 0x96, 0xf2, 0x3a, 0xd3, 0x90, 0xb4, 0xf7, 0x63, 0xd9, 0x43, 0x46, 0x8d, 0xd3, + 0x31, 0x6a, 0xee, 0x45, 0x3e, 0xd4, 0x2e, 0x23, 0xf5, 0xa1, 0x76, 0x5b, 0xe6, 0x38, 0x6a, 0xcc, + 0xe9, 0x7e, 0x92, 0x60, 0xd6, 0xe5, 0x83, 0x68, 0xeb, 0x92, 0xe4, 0x83, 0x6e, 0x97, 0x48, 0x8f, + 0x07, 0x0a, 0x29, 0x19, 0x26, 0x65, 0xdd, 0x96, 0xb2, 0xea, 0x2b, 0x45, 0x61, 0x66, 0x27, 0x04, + 0x0d, 0x38, 0xa4, 0x8f, 0xa0, 0x51, 0xfb, 0xf5, 0x11, 0xe4, 0x61, 0xb6, 0xe3, 0x04, 0xf1, 0x6d, + 0xe1, 0x82, 0x72, 0x9f, 0xfd, 0x7e, 0x9e, 0x94, 0xde, 0x9f, 0x27, 0xa5, 0xbf, 0xce, 0x93, 0xd2, + 0xcf, 0x17, 0xc9, 0x89, 0xf7, 0x17, 0xc9, 0x89, 0x3f, 0x2f, 0x92, 0x13, 0x5f, 0x6d, 0xd4, 0x75, + 0xda, 0x38, 0xae, 0x64, 0xab, 0x66, 0xcb, 0x49, 0xc2, 0xff, 0x6d, 0x93, 0xda, 0x3b, 0xe7, 0x97, + 0x91, 0x55, 0x99, 0x62, 0xbf, 0x8b, 0x3e, 0xfe, 0x3f, 0x00, 0x00, 0xff, 0xff, 0x42, 0xa8, 0xd7, + 0x97, 0x14, 0x0e, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. diff --git a/x/gov/abci.go b/x/gov/abci.go index 2b0d60a30629..8ebf6235049c 100644 --- a/x/gov/abci.go +++ b/x/gov/abci.go @@ -21,7 +21,7 @@ func EndBlocker(ctx sdk.Context, keeper *keeper.Keeper) { keeper.IterateInactiveProposalsQueue(ctx, ctx.BlockHeader().Time, func(proposal v1.Proposal) bool { keeper.DeleteProposal(ctx, proposal.Id) - if !keeper.GetParams(ctx).BurnProposalDeposit { + if !keeper.GetParams(ctx).BurnProposalDepositPrevote { keeper.RefundAndDeleteDeposits(ctx, proposal.Id) // refund deposit if proposal got removed without getting 100% of the proposal } else { keeper.DeleteAndBurnDeposits(ctx, proposal.Id) // burn the deposit if proposal got removed without getting 100% of the proposal diff --git a/x/gov/migrations/v4/json.go b/x/gov/migrations/v4/json.go index 822f2666ab36..62d7ee9bd918 100644 --- a/x/gov/migrations/v4/json.go +++ b/x/gov/migrations/v4/json.go @@ -26,7 +26,7 @@ func MigrateJSON(oldState *v1.GenesisState) (*v1.GenesisState, error) { defaultParams.MinInitialDepositRatio, defaultParams.ProposalCancelRatio, defaultParams.ProposalCancelDest, - defaultParams.BurnProposalDeposit, + defaultParams.BurnProposalDepositPrevote, defaultParams.BurnVoteQuorum, defaultParams.BurnVoteVeto, ) diff --git a/x/gov/migrations/v4/json_test.go b/x/gov/migrations/v4/json_test.go index ade18bd4fc3c..1da44080bcaf 100644 --- a/x/gov/migrations/v4/json_test.go +++ b/x/gov/migrations/v4/json_test.go @@ -60,7 +60,7 @@ func TestMigrateJSON(t *testing.T) { "deposit_params": null, "deposits": [], "params": { - "burn_proposal_deposit": false, + "burn_proposal_deposit_prevote": false, "burn_vote_quorum": false, "burn_vote_veto": true, "expedited_min_deposit": [ diff --git a/x/gov/migrations/v4/store.go b/x/gov/migrations/v4/store.go index fbfaa5a38cac..298f997dcf50 100644 --- a/x/gov/migrations/v4/store.go +++ b/x/gov/migrations/v4/store.go @@ -39,7 +39,7 @@ func migrateParams(ctx sdk.Context, storeKey storetypes.StoreKey, legacySubspace sdk.ZeroDec().String(), sdk.ZeroDec().String(), "", - defaultParams.BurnProposalDeposit, + defaultParams.BurnProposalDepositPrevote, defaultParams.BurnVoteQuorum, defaultParams.BurnVoteVeto, ) diff --git a/x/gov/migrations/v5/store.go b/x/gov/migrations/v5/store.go index ec7b5fae0159..f073fbc5c9ab 100644 --- a/x/gov/migrations/v5/store.go +++ b/x/gov/migrations/v5/store.go @@ -24,7 +24,7 @@ func MigrateStore(ctx sdk.Context, storeKey storetypes.StoreKey, cdc codec.Binar params.ExpeditedMinDeposit = defaultParams.ExpeditedMinDeposit params.ExpeditedVotingPeriod = defaultParams.ExpeditedVotingPeriod params.ExpeditedThreshold = defaultParams.ExpeditedThreshold - params.BurnProposalDeposit = defaultParams.BurnProposalDeposit + params.BurnProposalDepositPrevote = defaultParams.BurnProposalDepositPrevote params.BurnVoteQuorum = defaultParams.BurnVoteQuorum params.BurnVoteVeto = defaultParams.BurnVoteVeto diff --git a/x/gov/types/v1/gov.pb.go b/x/gov/types/v1/gov.pb.go index 99da3d163b48..2e04ef387547 100644 --- a/x/gov/types/v1/gov.pb.go +++ b/x/gov/types/v1/gov.pb.go @@ -775,11 +775,17 @@ type Params struct { ExpeditedThreshold string `protobuf:"bytes,11,opt,name=expedited_threshold,json=expeditedThreshold,proto3" json:"expedited_threshold,omitempty"` // Minimum expedited deposit for a proposal to enter voting period. ExpeditedMinDeposit []types.Coin `protobuf:"bytes,12,rep,name=expedited_min_deposit,json=expeditedMinDeposit,proto3" json:"expedited_min_deposit"` - // burn deposits if a proposal does not meet qourum + // burn deposits if a proposal does not meet quorum + // + // Since: cosmos-sdk 0.47 BurnVoteQuorum bool `protobuf:"varint,13,opt,name=burn_vote_quorum,json=burnVoteQuorum,proto3" json:"burn_vote_quorum,omitempty"` - // burn deposits if the proposal does not get enough deposits - BurnProposalDeposit bool `protobuf:"varint,14,opt,name=burn_proposal_deposit,json=burnProposalDeposit,proto3" json:"burn_proposal_deposit,omitempty"` - // burn deposits if qourum with vote type no_veto is met + // burn deposits if the proposal does not enter voting period + // + // Since: cosmos-sdk 0.47 + BurnProposalDepositPrevote bool `protobuf:"varint,14,opt,name=burn_proposal_deposit_prevote,json=burnProposalDepositPrevote,proto3" json:"burn_proposal_deposit_prevote,omitempty"` + // burn deposits if quorum with vote type no_veto is met + // + // Since: cosmos-sdk 0.47 BurnVoteVeto bool `protobuf:"varint,15,opt,name=burn_vote_veto,json=burnVoteVeto,proto3" json:"burn_vote_veto,omitempty"` } @@ -907,9 +913,9 @@ func (m *Params) GetBurnVoteQuorum() bool { return false } -func (m *Params) GetBurnProposalDeposit() bool { +func (m *Params) GetBurnProposalDepositPrevote() bool { if m != nil { - return m.BurnProposalDeposit + return m.BurnProposalDepositPrevote } return false } @@ -938,94 +944,94 @@ func init() { func init() { proto.RegisterFile("cosmos/gov/v1/gov.proto", fileDescriptor_e05cb1c0d030febb) } var fileDescriptor_e05cb1c0d030febb = []byte{ - // 1384 bytes of a gzipped FileDescriptorProto + // 1389 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x57, 0xcb, 0x6e, 0xdb, 0x46, - 0x17, 0x36, 0x75, 0xd7, 0xd1, 0xc5, 0xca, 0xd8, 0x8e, 0x69, 0x27, 0x91, 0x1c, 0x21, 0x08, 0xfc, + 0x17, 0x36, 0x75, 0xd7, 0xd1, 0xc5, 0xca, 0xd8, 0x89, 0x69, 0x27, 0x96, 0x1c, 0x21, 0x08, 0xfc, 0xe7, 0x22, 0xfd, 0x4e, 0x9a, 0x2e, 0x9a, 0x02, 0x85, 0x64, 0x31, 0x0d, 0x8d, 0xc4, 0x52, 0x29, 0x45, 0x4e, 0xba, 0x21, 0x28, 0x71, 0x22, 0x13, 0x15, 0x39, 0x2a, 0x39, 0x52, 0xac, 0x47, 0xe8, - 0x2e, 0xcb, 0xae, 0x8a, 0x2e, 0xbb, 0xec, 0x22, 0xe8, 0x13, 0x74, 0x91, 0x55, 0x11, 0x64, 0xd3, - 0x6e, 0x9a, 0x14, 0xc9, 0xa2, 0x40, 0x9e, 0xa2, 0xe0, 0x70, 0x28, 0x4a, 0xb2, 0x5a, 0xdb, 0xd9, - 0xd8, 0xe2, 0x39, 0xdf, 0xf7, 0xcd, 0x99, 0x73, 0x99, 0x21, 0x61, 0xbd, 0x4b, 0x1c, 0x93, 0x38, - 0xe5, 0x1e, 0x19, 0x95, 0x47, 0x3b, 0xee, 0xbf, 0xd2, 0xc0, 0x26, 0x94, 0xa0, 0x8c, 0xe7, 0x28, - 0xb9, 0x96, 0xd1, 0xce, 0x66, 0x9e, 0xe3, 0x3a, 0x9a, 0x83, 0xcb, 0xa3, 0x9d, 0x0e, 0xa6, 0xda, - 0x4e, 0xb9, 0x4b, 0x0c, 0xcb, 0x83, 0x6f, 0xae, 0xf6, 0x48, 0x8f, 0xb0, 0x9f, 0x65, 0xf7, 0x17, - 0xb7, 0x16, 0x7a, 0x84, 0xf4, 0xfa, 0xb8, 0xcc, 0x9e, 0x3a, 0xc3, 0xa7, 0x65, 0x6a, 0x98, 0xd8, - 0xa1, 0x9a, 0x39, 0xe0, 0x80, 0x8d, 0x79, 0x80, 0x66, 0x8d, 0xb9, 0x2b, 0x3f, 0xef, 0xd2, 0x87, - 0xb6, 0x46, 0x0d, 0xe2, 0xaf, 0xb8, 0xe1, 0x45, 0xa4, 0x7a, 0x8b, 0xf2, 0x68, 0x3d, 0xd7, 0x39, - 0xcd, 0x34, 0x2c, 0x52, 0x66, 0x7f, 0x3d, 0x53, 0x91, 0x00, 0x3a, 0xc0, 0x46, 0xef, 0x90, 0x62, - 0xbd, 0x4d, 0x28, 0xae, 0x0f, 0x5c, 0x25, 0xb4, 0x03, 0x31, 0xc2, 0x7e, 0x89, 0xc2, 0x96, 0xb0, - 0x9d, 0xbd, 0xb5, 0x51, 0x9a, 0xd9, 0x75, 0x29, 0x80, 0x2a, 0x1c, 0x88, 0xae, 0x42, 0xec, 0x19, - 0x13, 0x12, 0x43, 0x5b, 0xc2, 0x76, 0xb2, 0x9a, 0x7d, 0xfd, 0xe2, 0x26, 0x70, 0x56, 0x0d, 0x77, - 0x15, 0xee, 0x2d, 0xfe, 0x28, 0x40, 0xbc, 0x86, 0x07, 0xc4, 0x31, 0x28, 0x2a, 0x40, 0x6a, 0x60, - 0x93, 0x01, 0x71, 0xb4, 0xbe, 0x6a, 0xe8, 0x6c, 0xad, 0x88, 0x02, 0xbe, 0x49, 0xd6, 0xd1, 0xa7, - 0x90, 0xd4, 0x3d, 0x2c, 0xb1, 0xb9, 0xae, 0xf8, 0xfa, 0xc5, 0xcd, 0x55, 0xae, 0x5b, 0xd1, 0x75, - 0x1b, 0x3b, 0x4e, 0x93, 0xda, 0x86, 0xd5, 0x53, 0x02, 0x28, 0xfa, 0x1c, 0x62, 0x9a, 0x49, 0x86, - 0x16, 0x15, 0xc3, 0x5b, 0xe1, 0xed, 0x54, 0x10, 0xbf, 0x5b, 0xa6, 0x12, 0x2f, 0x53, 0x69, 0x97, - 0x18, 0x56, 0x35, 0xf9, 0xf2, 0x4d, 0x61, 0xe9, 0xa7, 0xbf, 0x7f, 0xbe, 0x26, 0x28, 0x9c, 0x53, - 0x7c, 0x1b, 0x85, 0x44, 0x83, 0x07, 0x81, 0xb2, 0x10, 0x9a, 0x84, 0x16, 0x32, 0x74, 0xf4, 0x7f, - 0x48, 0x98, 0xd8, 0x71, 0xb4, 0x1e, 0x76, 0xc4, 0x10, 0x13, 0x5f, 0x2d, 0x79, 0x15, 0x29, 0xf9, - 0x15, 0x29, 0x55, 0xac, 0xb1, 0x32, 0x41, 0xa1, 0x3b, 0x10, 0x73, 0xa8, 0x46, 0x87, 0x8e, 0x18, - 0x66, 0xc9, 0xbc, 0x34, 0x97, 0x4c, 0x7f, 0xa9, 0x26, 0x03, 0x29, 0x1c, 0x8c, 0xee, 0x03, 0x7a, - 0x6a, 0x58, 0x5a, 0x5f, 0xa5, 0x5a, 0xbf, 0x3f, 0x56, 0x6d, 0xec, 0x0c, 0xfb, 0x54, 0x8c, 0x6c, - 0x09, 0xdb, 0xa9, 0x5b, 0x9b, 0x73, 0x12, 0x2d, 0x17, 0xa2, 0x30, 0x84, 0x92, 0x63, 0xac, 0x29, - 0x0b, 0xaa, 0x40, 0xca, 0x19, 0x76, 0x4c, 0x83, 0xaa, 0x6e, 0x9b, 0x89, 0x51, 0x2e, 0x31, 0x1f, - 0x75, 0xcb, 0xef, 0xc1, 0x6a, 0xe4, 0xf9, 0xdb, 0x82, 0xa0, 0x80, 0x47, 0x72, 0xcd, 0x68, 0x0f, - 0x72, 0x3c, 0xbb, 0x2a, 0xb6, 0x74, 0x4f, 0x27, 0x76, 0x4a, 0x9d, 0x2c, 0x67, 0x4a, 0x96, 0xce, - 0xb4, 0x64, 0xc8, 0x50, 0x42, 0xb5, 0xbe, 0xca, 0xed, 0x62, 0xfc, 0x0c, 0x35, 0x4a, 0x33, 0xaa, - 0xdf, 0x40, 0x0f, 0xe0, 0xdc, 0x88, 0x50, 0xc3, 0xea, 0xa9, 0x0e, 0xd5, 0x6c, 0xbe, 0xbf, 0xc4, - 0x29, 0xe3, 0x5a, 0xf6, 0xa8, 0x4d, 0x97, 0xc9, 0x02, 0xbb, 0x0f, 0xdc, 0x14, 0xec, 0x31, 0x79, - 0x4a, 0xad, 0x8c, 0x47, 0xf4, 0xb7, 0xb8, 0xe9, 0x36, 0x09, 0xd5, 0x74, 0x8d, 0x6a, 0x22, 0xb8, - 0x6d, 0xab, 0x4c, 0x9e, 0xd1, 0x2a, 0x44, 0xa9, 0x41, 0xfb, 0x58, 0x4c, 0x31, 0x87, 0xf7, 0x80, - 0x44, 0x88, 0x3b, 0x43, 0xd3, 0xd4, 0xec, 0xb1, 0x98, 0x66, 0x76, 0xff, 0x11, 0x7d, 0x02, 0x09, - 0x6f, 0x22, 0xb0, 0x2d, 0x66, 0x4e, 0x18, 0x81, 0x09, 0x12, 0x5d, 0x84, 0x24, 0x3e, 0x1a, 0x60, - 0xdd, 0xa0, 0x58, 0x17, 0xb3, 0x5b, 0xc2, 0x76, 0x42, 0x09, 0x0c, 0xc5, 0xdf, 0x05, 0x48, 0x4d, - 0x77, 0xc8, 0x75, 0x48, 0x8e, 0xb1, 0xa3, 0x76, 0xd9, 0xc8, 0x08, 0xc7, 0xe6, 0x57, 0xb6, 0xa8, - 0x92, 0x18, 0x63, 0x67, 0xd7, 0xf5, 0xa3, 0xdb, 0x90, 0xd1, 0x3a, 0x0e, 0xd5, 0x0c, 0x8b, 0x13, - 0x42, 0x0b, 0x09, 0x69, 0x0e, 0xf2, 0x48, 0xff, 0x83, 0x84, 0x45, 0x38, 0x3e, 0xbc, 0x10, 0x1f, - 0xb7, 0x88, 0x07, 0xbd, 0x0b, 0xc8, 0x22, 0xea, 0x33, 0x83, 0x1e, 0xaa, 0x23, 0x4c, 0x7d, 0x52, - 0x64, 0x21, 0x69, 0xd9, 0x22, 0x07, 0x06, 0x3d, 0x6c, 0x63, 0xea, 0x91, 0x8b, 0xbf, 0x08, 0x10, - 0x71, 0x4f, 0xa7, 0x93, 0xcf, 0x96, 0x12, 0x44, 0x47, 0x84, 0xe2, 0x93, 0xcf, 0x15, 0x0f, 0x86, - 0xee, 0x42, 0xdc, 0x3b, 0xea, 0x1c, 0x31, 0xc2, 0x1a, 0xf6, 0xf2, 0xdc, 0x10, 0x1e, 0x3f, 0x47, - 0x15, 0x9f, 0x31, 0xd3, 0x10, 0xd1, 0xd9, 0x86, 0xd8, 0x8b, 0x24, 0xc2, 0xb9, 0x48, 0xf1, 0x4f, - 0x01, 0x32, 0xbc, 0xad, 0x1b, 0x9a, 0xad, 0x99, 0x0e, 0x7a, 0x02, 0x29, 0xd3, 0xb0, 0x26, 0x53, - 0x22, 0x9c, 0x34, 0x25, 0x97, 0xdc, 0x29, 0xf9, 0xf0, 0xa6, 0xb0, 0x36, 0xc5, 0xba, 0x41, 0x4c, - 0x83, 0x62, 0x73, 0x40, 0xc7, 0x0a, 0x98, 0x86, 0xe5, 0xcf, 0x8d, 0x09, 0xc8, 0xd4, 0x8e, 0x7c, - 0x90, 0x3a, 0xc0, 0xb6, 0x41, 0x74, 0x96, 0x08, 0x77, 0x85, 0xf9, 0x66, 0xaf, 0xf1, 0x0b, 0xa6, - 0x7a, 0xe5, 0xc3, 0x9b, 0xc2, 0xc5, 0xe3, 0xc4, 0x60, 0x91, 0xef, 0xdd, 0x59, 0xc8, 0x99, 0xda, - 0x91, 0xbf, 0x13, 0xe6, 0xff, 0x2c, 0x24, 0x0a, 0xc5, 0xc7, 0x90, 0x6e, 0xb3, 0x19, 0xe1, 0xbb, - 0xab, 0x01, 0x9f, 0x19, 0x7f, 0x75, 0xe1, 0xa4, 0xd5, 0x23, 0x4c, 0x3d, 0xed, 0xb1, 0xa6, 0x94, - 0x7f, 0xf0, 0x9b, 0x99, 0x2b, 0x5f, 0x85, 0xd8, 0xb7, 0x43, 0x62, 0x0f, 0xcd, 0x05, 0x9d, 0xcc, - 0x6e, 0x22, 0xcf, 0x8b, 0x6e, 0x40, 0x92, 0x1e, 0xda, 0xd8, 0x39, 0x24, 0x7d, 0xfd, 0x5f, 0x2e, - 0xad, 0x00, 0x80, 0xee, 0x40, 0x96, 0x75, 0x63, 0x40, 0x09, 0x2f, 0xa4, 0x64, 0x5c, 0x54, 0xcb, - 0x07, 0xb1, 0x00, 0x7f, 0x8d, 0x43, 0x8c, 0xc7, 0x26, 0x9d, 0xb1, 0xa6, 0x53, 0x27, 0xdf, 0x74, - 0xfd, 0x1e, 0x7e, 0x5c, 0xfd, 0x22, 0x8b, 0xeb, 0x73, 0xbc, 0x16, 0xe1, 0x8f, 0xa8, 0xc5, 0x54, - 0xde, 0x23, 0xa7, 0xcf, 0x7b, 0xf4, 0xec, 0x79, 0x8f, 0x9d, 0x22, 0xef, 0x48, 0x86, 0x0d, 0x37, - 0xd1, 0x86, 0x65, 0x50, 0x23, 0xb8, 0x6a, 0x54, 0x16, 0xbe, 0x18, 0x5f, 0xa8, 0x70, 0xde, 0x34, - 0x2c, 0xd9, 0xc3, 0xf3, 0xf4, 0x28, 0x2e, 0x1a, 0x55, 0x61, 0x6d, 0x72, 0x92, 0x74, 0x35, 0xab, - 0x8b, 0xfb, 0x5c, 0x26, 0xb1, 0x50, 0x66, 0xc5, 0x07, 0xef, 0x32, 0xac, 0xa7, 0xb1, 0x07, 0xab, - 0xf3, 0x1a, 0x3a, 0x76, 0x28, 0xbb, 0x5f, 0xfe, 0xeb, 0xec, 0x41, 0xb3, 0x62, 0x35, 0xec, 0x50, - 0x74, 0x00, 0xeb, 0x93, 0x93, 0x5c, 0x9d, 0xad, 0x1b, 0x9c, 0xae, 0x6e, 0x6b, 0x13, 0x7e, 0x7b, - 0xba, 0x80, 0x5f, 0xc0, 0x4a, 0x20, 0x1c, 0xe4, 0x3b, 0xb5, 0x70, 0x9b, 0x68, 0x02, 0x0d, 0x92, - 0xfe, 0x18, 0x02, 0x65, 0x75, 0xba, 0xcf, 0xd3, 0x67, 0xe8, 0xf3, 0x20, 0x86, 0x87, 0x41, 0xc3, - 0x6f, 0x43, 0xae, 0x33, 0xb4, 0x2d, 0x77, 0xbb, 0x58, 0xe5, 0x5d, 0x96, 0x61, 0xb7, 0x5a, 0xd6, - 0xb5, 0xbb, 0x47, 0xee, 0x57, 0x5e, 0x77, 0xdd, 0x82, 0x35, 0x86, 0x9c, 0xa4, 0xdb, 0x8f, 0xc1, - 0xbb, 0x04, 0x57, 0x5c, 0xa7, 0xff, 0xc6, 0xe5, 0xab, 0x5f, 0x81, 0x6c, 0xa0, 0xee, 0xf6, 0x91, - 0xb8, 0xcc, 0xc0, 0x69, 0x5f, 0xdb, 0xbd, 0x5f, 0xae, 0x7d, 0x27, 0x00, 0x4c, 0xbd, 0x23, 0x5f, - 0x80, 0xf5, 0x76, 0xbd, 0x25, 0xa9, 0xf5, 0x46, 0x4b, 0xae, 0xef, 0xab, 0x8f, 0xf6, 0x9b, 0x0d, - 0x69, 0x57, 0xbe, 0x27, 0x4b, 0xb5, 0xdc, 0x12, 0x5a, 0x81, 0xe5, 0x69, 0xe7, 0x13, 0xa9, 0x99, - 0x13, 0xd0, 0x3a, 0xac, 0x4c, 0x1b, 0x2b, 0xd5, 0x66, 0xab, 0x22, 0xef, 0xe7, 0x42, 0x08, 0x41, - 0x76, 0xda, 0xb1, 0x5f, 0xcf, 0x85, 0xd1, 0x45, 0x10, 0x67, 0x6d, 0xea, 0x81, 0xdc, 0xba, 0xaf, - 0xb6, 0xa5, 0x56, 0x3d, 0x17, 0xb9, 0xf6, 0x9b, 0x00, 0xd9, 0xd9, 0xf7, 0x46, 0x54, 0x80, 0x0b, - 0x0d, 0xa5, 0xde, 0xa8, 0x37, 0x2b, 0x0f, 0xd4, 0x66, 0xab, 0xd2, 0x7a, 0xd4, 0x9c, 0x8b, 0xa9, - 0x08, 0xf9, 0x79, 0x40, 0x4d, 0x6a, 0xd4, 0x9b, 0x72, 0x4b, 0x6d, 0x48, 0x8a, 0x5c, 0xaf, 0xe5, - 0x04, 0x74, 0x19, 0x2e, 0xcd, 0x63, 0xda, 0xf5, 0x96, 0xbc, 0xff, 0xa5, 0x0f, 0x09, 0xa1, 0x4d, - 0x38, 0x3f, 0x0f, 0x69, 0x54, 0x9a, 0x4d, 0xa9, 0xe6, 0x05, 0x3d, 0xef, 0x53, 0xa4, 0x3d, 0x69, - 0xb7, 0x25, 0xd5, 0x72, 0x91, 0x45, 0xcc, 0x7b, 0x15, 0xf9, 0x81, 0x54, 0xcb, 0x45, 0xab, 0xd2, - 0xcb, 0x77, 0x79, 0xe1, 0xd5, 0xbb, 0xbc, 0xf0, 0xd7, 0xbb, 0xbc, 0xf0, 0xfc, 0x7d, 0x7e, 0xe9, - 0xd5, 0xfb, 0xfc, 0xd2, 0x1f, 0xef, 0xf3, 0x4b, 0x5f, 0x5f, 0xef, 0x19, 0xf4, 0x70, 0xd8, 0x29, - 0x75, 0x89, 0xc9, 0xbf, 0x66, 0xf8, 0xbf, 0x9b, 0x8e, 0xfe, 0x4d, 0xf9, 0x88, 0x7d, 0xa1, 0xd1, - 0xf1, 0x00, 0x3b, 0xee, 0xe7, 0x57, 0x8c, 0xb5, 0xfc, 0xed, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, - 0x84, 0x2a, 0x1c, 0xc3, 0xbf, 0x0d, 0x00, 0x00, + 0x2e, 0xcb, 0xae, 0x8a, 0x2e, 0xbb, 0xec, 0x22, 0xe8, 0x33, 0x64, 0x55, 0x04, 0xe9, 0xa2, 0xdd, + 0x34, 0x29, 0x92, 0x45, 0x81, 0x3c, 0x45, 0xc1, 0xe1, 0x50, 0x94, 0x64, 0xb5, 0xb6, 0xb3, 0xb1, + 0xc5, 0x73, 0xbe, 0xef, 0x9b, 0x33, 0xe7, 0x32, 0x43, 0xc2, 0x5a, 0x97, 0x38, 0x26, 0x71, 0xca, + 0x3d, 0x32, 0x2a, 0x8f, 0x76, 0xdc, 0x7f, 0xa5, 0x81, 0x4d, 0x28, 0x41, 0x19, 0xcf, 0x51, 0x72, + 0x2d, 0xa3, 0x9d, 0x8d, 0x3c, 0xc7, 0x75, 0x34, 0x07, 0x97, 0x47, 0x3b, 0x1d, 0x4c, 0xb5, 0x9d, + 0x72, 0x97, 0x18, 0x96, 0x07, 0xdf, 0x58, 0xed, 0x91, 0x1e, 0x61, 0x3f, 0xcb, 0xee, 0x2f, 0x6e, + 0x2d, 0xf4, 0x08, 0xe9, 0xf5, 0x71, 0x99, 0x3d, 0x75, 0x86, 0x4f, 0xcb, 0xd4, 0x30, 0xb1, 0x43, + 0x35, 0x73, 0xc0, 0x01, 0xeb, 0xf3, 0x00, 0xcd, 0x1a, 0x73, 0x57, 0x7e, 0xde, 0xa5, 0x0f, 0x6d, + 0x8d, 0x1a, 0xc4, 0x5f, 0x71, 0xdd, 0x8b, 0x48, 0xf5, 0x16, 0xe5, 0xd1, 0x7a, 0xae, 0x73, 0x9a, + 0x69, 0x58, 0xa4, 0xcc, 0xfe, 0x7a, 0xa6, 0x22, 0x01, 0x74, 0x80, 0x8d, 0xde, 0x21, 0xc5, 0x7a, + 0x9b, 0x50, 0x5c, 0x1f, 0xb8, 0x4a, 0x68, 0x07, 0x62, 0x84, 0xfd, 0x12, 0x85, 0x2d, 0x61, 0x3b, + 0x7b, 0x6b, 0xbd, 0x34, 0xb3, 0xeb, 0x52, 0x00, 0x55, 0x38, 0x10, 0x5d, 0x85, 0xd8, 0x33, 0x26, + 0x24, 0x86, 0xb6, 0x84, 0xed, 0x64, 0x35, 0xfb, 0xfa, 0xc5, 0x4d, 0xe0, 0xac, 0x1a, 0xee, 0x2a, + 0xdc, 0x5b, 0xfc, 0x51, 0x80, 0x78, 0x0d, 0x0f, 0x88, 0x63, 0x50, 0x54, 0x80, 0xd4, 0xc0, 0x26, + 0x03, 0xe2, 0x68, 0x7d, 0xd5, 0xd0, 0xd9, 0x5a, 0x11, 0x05, 0x7c, 0x93, 0xac, 0xa3, 0x4f, 0x21, + 0xa9, 0x7b, 0x58, 0x62, 0x73, 0x5d, 0xf1, 0xf5, 0x8b, 0x9b, 0xab, 0x5c, 0xb7, 0xa2, 0xeb, 0x36, + 0x76, 0x9c, 0x26, 0xb5, 0x0d, 0xab, 0xa7, 0x04, 0x50, 0xf4, 0x39, 0xc4, 0x34, 0x93, 0x0c, 0x2d, + 0x2a, 0x86, 0xb7, 0xc2, 0xdb, 0xa9, 0x20, 0x7e, 0xb7, 0x4c, 0x25, 0x5e, 0xa6, 0xd2, 0x2e, 0x31, + 0xac, 0x6a, 0xf2, 0xe5, 0x9b, 0xc2, 0xd2, 0x4f, 0x7f, 0xff, 0x7c, 0x4d, 0x50, 0x38, 0xa7, 0xf8, + 0x36, 0x0a, 0x89, 0x06, 0x0f, 0x02, 0x65, 0x21, 0x34, 0x09, 0x2d, 0x64, 0xe8, 0xe8, 0xff, 0x90, + 0x30, 0xb1, 0xe3, 0x68, 0x3d, 0xec, 0x88, 0x21, 0x26, 0xbe, 0x5a, 0xf2, 0x2a, 0x52, 0xf2, 0x2b, + 0x52, 0xaa, 0x58, 0x63, 0x65, 0x82, 0x42, 0x77, 0x20, 0xe6, 0x50, 0x8d, 0x0e, 0x1d, 0x31, 0xcc, + 0x92, 0xb9, 0x39, 0x97, 0x4c, 0x7f, 0xa9, 0x26, 0x03, 0x29, 0x1c, 0x8c, 0xee, 0x03, 0x7a, 0x6a, + 0x58, 0x5a, 0x5f, 0xa5, 0x5a, 0xbf, 0x3f, 0x56, 0x6d, 0xec, 0x0c, 0xfb, 0x54, 0x8c, 0x6c, 0x09, + 0xdb, 0xa9, 0x5b, 0x1b, 0x73, 0x12, 0x2d, 0x17, 0xa2, 0x30, 0x84, 0x92, 0x63, 0xac, 0x29, 0x0b, + 0xaa, 0x40, 0xca, 0x19, 0x76, 0x4c, 0x83, 0xaa, 0x6e, 0x9b, 0x89, 0x51, 0x2e, 0x31, 0x1f, 0x75, + 0xcb, 0xef, 0xc1, 0x6a, 0xe4, 0xf9, 0xdb, 0x82, 0xa0, 0x80, 0x47, 0x72, 0xcd, 0x68, 0x0f, 0x72, + 0x3c, 0xbb, 0x2a, 0xb6, 0x74, 0x4f, 0x27, 0x76, 0x4a, 0x9d, 0x2c, 0x67, 0x4a, 0x96, 0xce, 0xb4, + 0x64, 0xc8, 0x50, 0x42, 0xb5, 0xbe, 0xca, 0xed, 0x62, 0xfc, 0x0c, 0x35, 0x4a, 0x33, 0xaa, 0xdf, + 0x40, 0x0f, 0xe0, 0xdc, 0x88, 0x50, 0xc3, 0xea, 0xa9, 0x0e, 0xd5, 0x6c, 0xbe, 0xbf, 0xc4, 0x29, + 0xe3, 0x5a, 0xf6, 0xa8, 0x4d, 0x97, 0xc9, 0x02, 0xbb, 0x0f, 0xdc, 0x14, 0xec, 0x31, 0x79, 0x4a, + 0xad, 0x8c, 0x47, 0xf4, 0xb7, 0xb8, 0xe1, 0x36, 0x09, 0xd5, 0x74, 0x8d, 0x6a, 0x22, 0xb8, 0x6d, + 0xab, 0x4c, 0x9e, 0xd1, 0x2a, 0x44, 0xa9, 0x41, 0xfb, 0x58, 0x4c, 0x31, 0x87, 0xf7, 0x80, 0x44, + 0x88, 0x3b, 0x43, 0xd3, 0xd4, 0xec, 0xb1, 0x98, 0x66, 0x76, 0xff, 0x11, 0x7d, 0x02, 0x09, 0x6f, + 0x22, 0xb0, 0x2d, 0x66, 0x4e, 0x18, 0x81, 0x09, 0x12, 0x5d, 0x82, 0x24, 0x3e, 0x1a, 0x60, 0xdd, + 0xa0, 0x58, 0x17, 0xb3, 0x5b, 0xc2, 0x76, 0x42, 0x09, 0x0c, 0xc5, 0xdf, 0x05, 0x48, 0x4d, 0x77, + 0xc8, 0x75, 0x48, 0x8e, 0xb1, 0xa3, 0x76, 0xd9, 0xc8, 0x08, 0xc7, 0xe6, 0x57, 0xb6, 0xa8, 0x92, + 0x18, 0x63, 0x67, 0xd7, 0xf5, 0xa3, 0xdb, 0x90, 0xd1, 0x3a, 0x0e, 0xd5, 0x0c, 0x8b, 0x13, 0x42, + 0x0b, 0x09, 0x69, 0x0e, 0xf2, 0x48, 0xff, 0x83, 0x84, 0x45, 0x38, 0x3e, 0xbc, 0x10, 0x1f, 0xb7, + 0x88, 0x07, 0xbd, 0x0b, 0xc8, 0x22, 0xea, 0x33, 0x83, 0x1e, 0xaa, 0x23, 0x4c, 0x7d, 0x52, 0x64, + 0x21, 0x69, 0xd9, 0x22, 0x07, 0x06, 0x3d, 0x6c, 0x63, 0xea, 0x91, 0x8b, 0xbf, 0x08, 0x10, 0x71, + 0x4f, 0xa7, 0x93, 0xcf, 0x96, 0x12, 0x44, 0x47, 0x84, 0xe2, 0x93, 0xcf, 0x15, 0x0f, 0x86, 0xee, + 0x42, 0xdc, 0x3b, 0xea, 0x1c, 0x31, 0xc2, 0x1a, 0xf6, 0xf2, 0xdc, 0x10, 0x1e, 0x3f, 0x47, 0x15, + 0x9f, 0x31, 0xd3, 0x10, 0xd1, 0xd9, 0x86, 0xd8, 0x8b, 0x24, 0xc2, 0xb9, 0x48, 0xf1, 0x4f, 0x01, + 0x32, 0xbc, 0xad, 0x1b, 0x9a, 0xad, 0x99, 0x0e, 0x7a, 0x02, 0x29, 0xd3, 0xb0, 0x26, 0x53, 0x22, + 0x9c, 0x34, 0x25, 0x9b, 0xee, 0x94, 0x7c, 0x78, 0x53, 0x38, 0x3f, 0xc5, 0xba, 0x41, 0x4c, 0x83, + 0x62, 0x73, 0x40, 0xc7, 0x0a, 0x98, 0x86, 0xe5, 0xcf, 0x8d, 0x09, 0xc8, 0xd4, 0x8e, 0x7c, 0x90, + 0x3a, 0xc0, 0xb6, 0x41, 0x74, 0x96, 0x08, 0x77, 0x85, 0xf9, 0x66, 0xaf, 0xf1, 0x0b, 0xa6, 0x7a, + 0xe5, 0xc3, 0x9b, 0xc2, 0xa5, 0xe3, 0xc4, 0x60, 0x91, 0xef, 0xdd, 0x59, 0xc8, 0x99, 0xda, 0x91, + 0xbf, 0x13, 0xe6, 0xff, 0x2c, 0x24, 0x0a, 0xc5, 0xc7, 0x90, 0x6e, 0xb3, 0x19, 0xe1, 0xbb, 0xab, + 0x01, 0x9f, 0x19, 0x7f, 0x75, 0xe1, 0xa4, 0xd5, 0x23, 0x4c, 0x3d, 0xed, 0xb1, 0xa6, 0x94, 0x7f, + 0xf0, 0x9b, 0x99, 0x2b, 0x5f, 0x85, 0xd8, 0xb7, 0x43, 0x62, 0x0f, 0xcd, 0x05, 0x9d, 0xcc, 0x6e, + 0x22, 0xcf, 0x8b, 0x6e, 0x40, 0x92, 0x1e, 0xda, 0xd8, 0x39, 0x24, 0x7d, 0xfd, 0x5f, 0x2e, 0xad, + 0x00, 0x80, 0xee, 0x40, 0x96, 0x75, 0x63, 0x40, 0x09, 0x2f, 0xa4, 0x64, 0x5c, 0x54, 0xcb, 0x07, + 0xb1, 0x00, 0x7f, 0x8b, 0x43, 0x8c, 0xc7, 0x26, 0x9d, 0xb1, 0xa6, 0x53, 0x27, 0xdf, 0x74, 0xfd, + 0x1e, 0x7e, 0x5c, 0xfd, 0x22, 0x8b, 0xeb, 0x73, 0xbc, 0x16, 0xe1, 0x8f, 0xa8, 0xc5, 0x54, 0xde, + 0x23, 0xa7, 0xcf, 0x7b, 0xf4, 0xec, 0x79, 0x8f, 0x9d, 0x22, 0xef, 0x48, 0x86, 0x75, 0x37, 0xd1, + 0x86, 0x65, 0x50, 0x23, 0xb8, 0x6a, 0x54, 0x16, 0xbe, 0x18, 0x5f, 0xa8, 0x70, 0xc1, 0x34, 0x2c, + 0xd9, 0xc3, 0xf3, 0xf4, 0x28, 0x2e, 0x1a, 0x55, 0xe1, 0xfc, 0xe4, 0x24, 0xe9, 0x6a, 0x56, 0x17, + 0xf7, 0xb9, 0x4c, 0x62, 0xa1, 0xcc, 0x8a, 0x0f, 0xde, 0x65, 0x58, 0x4f, 0x63, 0x0f, 0x56, 0xe7, + 0x35, 0x74, 0xec, 0x50, 0x76, 0xbf, 0xfc, 0xd7, 0xd9, 0x83, 0x66, 0xc5, 0x6a, 0xd8, 0xa1, 0xe8, + 0x00, 0xd6, 0x26, 0x27, 0xb9, 0x3a, 0x5b, 0x37, 0x38, 0x5d, 0xdd, 0xce, 0x4f, 0xf8, 0xed, 0xe9, + 0x02, 0x7e, 0x01, 0x2b, 0x81, 0x70, 0x90, 0xef, 0xd4, 0xc2, 0x6d, 0xa2, 0x09, 0x34, 0x48, 0xfa, + 0x63, 0x08, 0x94, 0xd5, 0xe9, 0x3e, 0x4f, 0x9f, 0xa1, 0xcf, 0x83, 0x18, 0x1e, 0x06, 0x0d, 0xbf, + 0x0d, 0xb9, 0xce, 0xd0, 0xb6, 0xdc, 0xed, 0x62, 0x95, 0x77, 0x59, 0x86, 0xdd, 0x6a, 0x59, 0xd7, + 0xee, 0x1e, 0xb9, 0x5f, 0x79, 0xdd, 0x55, 0x81, 0x4d, 0x86, 0x9c, 0xa4, 0x7b, 0x32, 0x24, 0x36, + 0x76, 0xd9, 0xfc, 0x32, 0xdc, 0x70, 0x41, 0xfe, 0x9b, 0x97, 0x3f, 0x0d, 0x1e, 0x02, 0x5d, 0x81, + 0x6c, 0xb0, 0x98, 0xdb, 0x56, 0xe2, 0x32, 0xe3, 0xa4, 0xfd, 0xa5, 0xdc, 0xeb, 0xe6, 0xda, 0x77, + 0x02, 0xc0, 0xd4, 0x2b, 0xf3, 0x45, 0x58, 0x6b, 0xd7, 0x5b, 0x92, 0x5a, 0x6f, 0xb4, 0xe4, 0xfa, + 0xbe, 0xfa, 0x68, 0xbf, 0xd9, 0x90, 0x76, 0xe5, 0x7b, 0xb2, 0x54, 0xcb, 0x2d, 0xa1, 0x15, 0x58, + 0x9e, 0x76, 0x3e, 0x91, 0x9a, 0x39, 0x01, 0xad, 0xc1, 0xca, 0xb4, 0xb1, 0x52, 0x6d, 0xb6, 0x2a, + 0xf2, 0x7e, 0x2e, 0x84, 0x10, 0x64, 0xa7, 0x1d, 0xfb, 0xf5, 0x5c, 0x18, 0x5d, 0x02, 0x71, 0xd6, + 0xa6, 0x1e, 0xc8, 0xad, 0xfb, 0x6a, 0x5b, 0x6a, 0xd5, 0x73, 0x91, 0x6b, 0xbf, 0x0a, 0x90, 0x9d, + 0x7d, 0x8d, 0x44, 0x05, 0xb8, 0xd8, 0x50, 0xea, 0x8d, 0x7a, 0xb3, 0xf2, 0x40, 0x6d, 0xb6, 0x2a, + 0xad, 0x47, 0xcd, 0xb9, 0x98, 0x8a, 0x90, 0x9f, 0x07, 0xd4, 0xa4, 0x46, 0xbd, 0x29, 0xb7, 0xd4, + 0x86, 0xa4, 0xc8, 0xf5, 0x5a, 0x4e, 0x40, 0x97, 0x61, 0x73, 0x1e, 0xd3, 0xae, 0xb7, 0xe4, 0xfd, + 0x2f, 0x7d, 0x48, 0x08, 0x6d, 0xc0, 0x85, 0x79, 0x48, 0xa3, 0xd2, 0x6c, 0x4a, 0x35, 0x2f, 0xe8, + 0x79, 0x9f, 0x22, 0xed, 0x49, 0xbb, 0x2d, 0xa9, 0x96, 0x8b, 0x2c, 0x62, 0xde, 0xab, 0xc8, 0x0f, + 0xa4, 0x5a, 0x2e, 0x5a, 0x95, 0x5e, 0xbe, 0xcb, 0x0b, 0xaf, 0xde, 0xe5, 0x85, 0xbf, 0xde, 0xe5, + 0x85, 0xe7, 0xef, 0xf3, 0x4b, 0xaf, 0xde, 0xe7, 0x97, 0xfe, 0x78, 0x9f, 0x5f, 0xfa, 0xfa, 0x7a, + 0xcf, 0xa0, 0x87, 0xc3, 0x4e, 0xa9, 0x4b, 0x4c, 0xfe, 0x71, 0xc3, 0xff, 0xdd, 0x74, 0xf4, 0x6f, + 0xca, 0x47, 0xec, 0x83, 0x8d, 0x8e, 0x07, 0xd8, 0x71, 0xbf, 0xc6, 0x62, 0x6c, 0x02, 0x6e, 0xff, + 0x13, 0x00, 0x00, 0xff, 0xff, 0xba, 0xe0, 0x97, 0xe3, 0xce, 0x0d, 0x00, 0x00, } func (m *WeightedVoteOption) Marshal() (dAtA []byte, err error) { @@ -1524,9 +1530,9 @@ func (m *Params) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x78 } - if m.BurnProposalDeposit { + if m.BurnProposalDepositPrevote { i-- - if m.BurnProposalDeposit { + if m.BurnProposalDepositPrevote { dAtA[i] = 1 } else { dAtA[i] = 0 @@ -1934,7 +1940,7 @@ func (m *Params) Size() (n int) { if m.BurnVoteQuorum { n += 2 } - if m.BurnProposalDeposit { + if m.BurnProposalDepositPrevote { n += 2 } if m.BurnVoteVeto { @@ -3817,7 +3823,7 @@ func (m *Params) Unmarshal(dAtA []byte) error { m.BurnVoteQuorum = bool(v != 0) case 14: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field BurnProposalDeposit", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field BurnProposalDepositPrevote", wireType) } var v int for shift := uint(0); ; shift += 7 { @@ -3834,7 +3840,7 @@ func (m *Params) Unmarshal(dAtA []byte) error { break } } - m.BurnProposalDeposit = bool(v != 0) + m.BurnProposalDepositPrevote = bool(v != 0) case 15: if wireType != 0 { return fmt.Errorf("proto: wrong wireType = %d for field BurnVoteVeto", wireType) diff --git a/x/gov/types/v1/params.go b/x/gov/types/v1/params.go index e93485674742..13e85fdef118 100644 --- a/x/gov/types/v1/params.go +++ b/x/gov/types/v1/params.go @@ -62,21 +62,21 @@ func NewParams( quorum, threshold, expeditedThreshold, vetoThreshold, minInitialDepositRatio, proposalCancelRatio, proposalCancelDest string, burnProposalDeposit, burnVoteQuorum, burnVoteVeto bool, ) Params { return Params{ - MinDeposit: minDeposit, - ExpeditedMinDeposit: expeditedminDeposit, - MaxDepositPeriod: &maxDepositPeriod, - VotingPeriod: &votingPeriod, - ExpeditedVotingPeriod: &expeditedVotingPeriod, - Quorum: quorum, - Threshold: threshold, - ExpeditedThreshold: expeditedThreshold, - VetoThreshold: vetoThreshold, - MinInitialDepositRatio: minInitialDepositRatio, - ProposalCancelRatio: proposalCancelRatio, - ProposalCancelDest: proposalCancelDest, - BurnProposalDeposit: burnProposalDeposit, - BurnVoteQuorum: burnVoteQuorum, - BurnVoteVeto: burnVoteVeto, + MinDeposit: minDeposit, + ExpeditedMinDeposit: expeditedminDeposit, + MaxDepositPeriod: &maxDepositPeriod, + VotingPeriod: &votingPeriod, + ExpeditedVotingPeriod: &expeditedVotingPeriod, + Quorum: quorum, + Threshold: threshold, + ExpeditedThreshold: expeditedThreshold, + VetoThreshold: vetoThreshold, + MinInitialDepositRatio: minInitialDepositRatio, + ProposalCancelRatio: proposalCancelRatio, + ProposalCancelDest: proposalCancelDest, + BurnProposalDepositPrevote: burnProposalDeposit, + BurnVoteQuorum: burnVoteQuorum, + BurnVoteVeto: burnVoteVeto, } } From faf666151a9b7a24543a1973d368864a40babf2e Mon Sep 17 00:00:00 2001 From: marbar3778 Date: Mon, 27 Feb 2023 19:21:59 +0100 Subject: [PATCH 08/12] address comments --- CHANGELOG.md | 2 +- x/gov/README.md | 56 ++++++++++++++++++++++++---------------- x/gov/types/v1/params.go | 4 +-- 3 files changed, 37 insertions(+), 25 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1dff23a24c5e..4adb829b5632 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -78,7 +78,7 @@ Ref: https://keepachangelog.com/en/1.0.0/ * (x/bank) [#14894](https://github.com/cosmos/cosmos-sdk/pull/14894) Return a human readable denomination for IBC vouchers when querying bank balances. Added a `ResolveDenom` parameter to `types.QueryAllBalancesRequest` and `--resolve-denom` flag to `GetBalancesCmd()`. * (x/groups) [#14879](https://github.com/cosmos/cosmos-sdk/pull/14879) Add `Query/Groups` query to get all the groups. * (x/genutil,cli) [#15147](https://github.com/cosmos/cosmos-sdk/pull/15147) Add `--initial-height` flag to cli init cmd to provide `genesis.json` with user defined initial block height -* (x/gov) [#15151](https://github.com/cosmos/cosmos-sdk/pull/15151) Add `burn_vote_quorum`, `burn_proposal_deposit` and `burn_vote_veto` params to allow applications to decide if they would like to burn deposits +* (x/gov) [#15151](https://github.com/cosmos/cosmos-sdk/pull/15151) Add `burn_vote_quorum`, `burn_proposal_deposit_prevote` and `burn_vote_veto` params to allow applications to decide if they would like to burn deposits ### Improvements diff --git a/x/gov/README.md b/x/gov/README.md index 374ae5c24ca3..d41c4dfd7fe6 100644 --- a/x/gov/README.md +++ b/x/gov/README.md @@ -53,7 +53,6 @@ staking token of the chain. * [EndBlocker](#endblocker) * [Handlers](#handlers) * [Parameters](#parameters) - * [SubKeys](#subkeys) * [Client](#client) * [CLI](#cli) * [gRPC](#grpc) @@ -260,6 +259,16 @@ new version of the software. Validators and full nodes can use an automation tool, such as [Cosmovisor](https://docs.cosmos.network/main/tooling/cosmovisor), for automatically switching version of the chain. +#### Burnable Params + +There are three parameters that define if the deposit of a proposal should be burned or returned to the depositors. + +* `BurnVoteVeto` burns the proposal deposit if the proposal gets vetoed. +* `BurnVoteQuorum` burns the proposal deposit if the proposal deposit if the vote does not reach quorum. +* `BurnProposalDepositPrevote` burns the proposal deposit if it does not enter the voting phase. + +> Note: These parameters are modifiable via governance. + ## State ### Constitution @@ -274,12 +283,12 @@ Validators and full nodes can use an automation tool, such as [Cosmovisor](https Since this is more of a social feature than a technical feature, we'll now get into some items that may have been useful to have in a genesis constitution: * What limitations on governance exist, if any? - * is it okay for the community to slash the wallet of a whale that they no longer feel that they want around? (viz: Juno Proposal 4 and 16) - * can governance "socially slash" a validator who is using unapproved MEV? (viz: commonwealth.im/osmosis) - * In the event of an economic emergency, what should validators do? - * Terra crash of May, 2022, saw validators choose to run a new binary with code that had not been approved by governance, because the governance token had been inflated to nothing. + * is it okay for the community to slash the wallet of a whale that they no longer feel that they want around? (viz: Juno Proposal 4 and 16) + * can governance "socially slash" a validator who is using unapproved MEV? (viz: commonwealth.im/osmosis) + * In the event of an economic emergency, what should validators do? + * Terra crash of May, 2022, saw validators choose to run a new binary with code that had not been approved by governance, because the governance token had been inflated to nothing. * What is the purpose of the chain, specifically? - * best example of this is the Cosmos hub, where different founding groups, have different interpertations of the purpose of the network. + * best example of this is the Cosmos hub, where different founding groups, have different interpertations of the purpose of the network. This genesis entry, "constitution" hasn't been designed for existing chains, who should likely just ratify a constitution using their governance system. Instead, this is for new chains. It will allow for validators to have a much clearer idea of purpose and the expecations placed on them while operating thier nodes. Likewise, for community members, the constitution will give them some idea of what to expect from both the "chain team" and the validators, respectively. @@ -716,7 +725,7 @@ The governance module emits the following events: ### EndBlocker | Type | Attribute Key | Attribute Value | -| ----------------- | --------------- | ---------------- | +|-------------------|-----------------|------------------| | inactive_proposal | proposal_id | {proposalID} | | inactive_proposal | proposal_result | {proposalResult} | | active_proposal | proposal_id | {proposalID} | @@ -727,7 +736,7 @@ The governance module emits the following events: #### MsgSubmitProposal | Type | Attribute Key | Attribute Value | -| ------------------- | ------------------- | --------------- | +|---------------------|---------------------|-----------------| | submit_proposal | proposal_id | {proposalID} | | submit_proposal [0] | voting_period_start | {proposalID} | | proposal_deposit | amount | {depositAmount} | @@ -741,7 +750,7 @@ The governance module emits the following events: #### MsgVote | Type | Attribute Key | Attribute Value | -| ------------- | ------------- | --------------- | +|---------------|---------------|-----------------| | proposal_vote | option | {voteOption} | | proposal_vote | proposal_id | {proposalID} | | message | module | governance | @@ -751,7 +760,7 @@ The governance module emits the following events: #### MsgVoteWeighted | Type | Attribute Key | Attribute Value | -| ------------- | ------------- | --------------------- | +|---------------|---------------|-----------------------| | proposal_vote | option | {weightedVoteOptions} | | proposal_vote | proposal_id | {proposalID} | | message | module | governance | @@ -761,7 +770,7 @@ The governance module emits the following events: #### MsgDeposit | Type | Attribute Key | Attribute Value | -| -------------------- | ------------------- | --------------- | +|----------------------|---------------------|-----------------| | proposal_deposit | amount | {depositAmount} | | proposal_deposit | proposal_id | {proposalID} | | proposal_deposit [0] | voting_period_start | {proposalID} | @@ -775,17 +784,20 @@ The governance module emits the following events: The governance module contains the following parameters: -| Key | Type | Example | -| ----------------------- | ---------------- | --------------------------------------- | -| min_deposit | array (coins) | [{"denom":"uatom","amount":"10000000"}] | -| max_deposit_period | string (time ns) | "172800000000000" (17280s) | -| voting_period | string (time ns) | "172800000000000" (17280s) | -| quorum | string (dec) | "0.334000000000000000" | -| threshold | string (dec) | "0.500000000000000000" | -| veto | string (dec) | "0.334000000000000000" | -| expedited_threshold | string (time ns) | "0.667000000000000000" | -| expedited_voting_period | string (time ns) | "86400000000000" (8600s) | -| expedited_min_deposit | array (coins) | [{"denom":"uatom","amount":"50000000"}] | +| Key | Type | Example | +|-------------------------------|------------------|-----------------------------------------| +| min_deposit | array (coins) | [{"denom":"uatom","amount":"10000000"}] | +| max_deposit_period | string (time ns) | "172800000000000" (17280s) | +| voting_period | string (time ns) | "172800000000000" (17280s) | +| quorum | string (dec) | "0.334000000000000000" | +| threshold | string (dec) | "0.500000000000000000" | +| veto | string (dec) | "0.334000000000000000" | +| expedited_threshold | string (time ns) | "0.667000000000000000" | +| expedited_voting_period | string (time ns) | "86400000000000" (8600s) | +| expedited_min_deposit | array (coins) | [{"denom":"uatom","amount":"50000000"}] | +| burn_proposal_deposit_prevote | bool | false | +| burn_vote_quorum | bool | false | +| burn_vote_veto | bool | true | **NOTE**: The governance module contains parameters that are objects unlike other modules. If only a subset of parameters are desired to be changed, only they need diff --git a/x/gov/types/v1/params.go b/x/gov/types/v1/params.go index 13e85fdef118..fbf2faef16d5 100644 --- a/x/gov/types/v1/params.go +++ b/x/gov/types/v1/params.go @@ -27,7 +27,7 @@ var ( DefaultMinInitialDepositRatio = sdk.ZeroDec() DefaultProposalCancelRatio = sdk.MustNewDecFromStr("0.5") DefaultProposalCancelDestAddress = "" - DefaultBurnProposal = false // set to false to replicate behavior of when this change was made (0.47) + DefaultBurnProposalPrevote = false // set to false to replicate behavior of when this change was made (0.47) DefaultBurnVoteQuorom = false // set to false to replicate behavior of when this change was made (0.47) DefaultBurnVoteVeto = true // set to true to replicate behavior of when this change was made (0.47) ) @@ -95,7 +95,7 @@ func DefaultParams() Params { DefaultMinInitialDepositRatio.String(), DefaultProposalCancelRatio.String(), DefaultProposalCancelDestAddress, - DefaultBurnProposal, + DefaultBurnProposalPrevote, DefaultBurnVoteQuorom, DefaultBurnVoteVeto, ) From ae82413eb1f668d0feb435a191f99452b4a5543c Mon Sep 17 00:00:00 2001 From: marbar3778 Date: Tue, 28 Feb 2023 10:40:23 +0100 Subject: [PATCH 09/12] fix integration tests --- tests/integration/gov/keeper/keeper_test.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/integration/gov/keeper/keeper_test.go b/tests/integration/gov/keeper/keeper_test.go index cd68f4982cdf..18d277bef2b4 100644 --- a/tests/integration/gov/keeper/keeper_test.go +++ b/tests/integration/gov/keeper/keeper_test.go @@ -52,7 +52,7 @@ func initFixture(t *testing.T) *fixture { queryHelper := baseapp.NewQueryServerTestHelper(ctx, app.InterfaceRegistry()) v1.RegisterQueryServer(queryHelper, app.GovKeeper) legacyQueryHelper := baseapp.NewQueryServerTestHelper(ctx, app.InterfaceRegistry()) - v1beta1.RegisterQueryServer(legacyQueryHelper, keeper.NewLegacyQueryServer(&app.GovKeeper)) + v1beta1.RegisterQueryServer(legacyQueryHelper, keeper.NewLegacyQueryServer(app.GovKeeper)) queryClient := v1.NewQueryClient(queryHelper) legacyQueryClient := v1beta1.NewQueryClient(legacyQueryHelper) @@ -60,7 +60,7 @@ func initFixture(t *testing.T) *fixture { f.ctx = ctx f.queryClient = queryClient f.legacyQueryClient = legacyQueryClient - f.msgSrvr = keeper.NewMsgServerImpl(&f.app.GovKeeper) + f.msgSrvr = keeper.NewMsgServerImpl(f.app.GovKeeper) govAcct := f.app.GovKeeper.GetGovernanceAccount(f.ctx).GetAddress() f.legacyMsgSrvr = keeper.NewLegacyMsgServerImpl(govAcct.String(), f.msgSrvr) From 167cefd738d887d96e0acd277ca8cfcd8613029c Mon Sep 17 00:00:00 2001 From: marbar3778 Date: Tue, 28 Feb 2023 10:45:45 +0100 Subject: [PATCH 10/12] fix e2e tests --- tests/e2e/gov/query.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tests/e2e/gov/query.go b/tests/e2e/gov/query.go index 9f9aeb2f82f9..5236015e59bf 100644 --- a/tests/e2e/gov/query.go +++ b/tests/e2e/gov/query.go @@ -23,7 +23,7 @@ func (s *E2ETestSuite) TestCmdParams() { { "json output", []string{fmt.Sprintf("--%s=json", flags.FlagOutput)}, - `{"voting_params":{"voting_period":"172800s"},"deposit_params":{"min_deposit":[{"denom":"stake","amount":"10000000"}],"max_deposit_period":"172800s"},"tally_params":{"quorum":"0.334000000000000000","threshold":"0.500000000000000000","veto_threshold":"0.334000000000000000"},"params":{"min_deposit":[{"denom":"stake","amount":"10000000"}],"max_deposit_period":"172800s","voting_period":"172800s","quorum":"0.334000000000000000","threshold":"0.500000000000000000","veto_threshold":"0.334000000000000000","min_initial_deposit_ratio":"0.000000000000000000","proposal_cancel_ratio":"0.500000000000000000","proposal_cancel_dest":"","expedited_voting_period":"86400s","expedited_threshold":"0.667000000000000000","expedited_min_deposit":[{"denom":"stake","amount":"50000000"}]}}`, + `{"voting_params":{"voting_period":"172800s"},"deposit_params":{"min_deposit":[{"denom":"stake","amount":"10000000"}],"max_deposit_period":"172800s"},"tally_params":{"quorum":"0.334000000000000000","threshold":"0.500000000000000000","veto_threshold":"0.334000000000000000"},"params":{"min_deposit":[{"denom":"stake","amount":"10000000"}],"max_deposit_period":"172800s","voting_period":"172800s","quorum":"0.334000000000000000","threshold":"0.500000000000000000","veto_threshold":"0.334000000000000000","min_initial_deposit_ratio":"0.000000000000000000","proposal_cancel_ratio":"0.500000000000000000","proposal_cancel_dest":"","expedited_voting_period":"86400s","expedited_threshold":"0.667000000000000000","expedited_min_deposit":[{"denom":"stake","amount":"50000000"}]},"burn_vote_quorum":false,"burn_proposal_deposit_prevote":false,"burn_vote_veto":true}}}`, }, { "text output", @@ -35,6 +35,9 @@ deposit_params: - amount: "10000000" denom: stake params: + burn_proposal_deposit_prevote: false + burn_vote_quorum: false + burn_vote_veto: true expedited_min_deposit: - amount: "50000000" denom: stake From e31d54c6696bb7aab9a8aad0412f65df6c121312 Mon Sep 17 00:00:00 2001 From: marbar3778 Date: Tue, 28 Feb 2023 11:13:02 +0100 Subject: [PATCH 11/12] fix e2e tests --- tests/e2e/gov/query.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/e2e/gov/query.go b/tests/e2e/gov/query.go index 5236015e59bf..8cdd3e3a28cc 100644 --- a/tests/e2e/gov/query.go +++ b/tests/e2e/gov/query.go @@ -23,7 +23,7 @@ func (s *E2ETestSuite) TestCmdParams() { { "json output", []string{fmt.Sprintf("--%s=json", flags.FlagOutput)}, - `{"voting_params":{"voting_period":"172800s"},"deposit_params":{"min_deposit":[{"denom":"stake","amount":"10000000"}],"max_deposit_period":"172800s"},"tally_params":{"quorum":"0.334000000000000000","threshold":"0.500000000000000000","veto_threshold":"0.334000000000000000"},"params":{"min_deposit":[{"denom":"stake","amount":"10000000"}],"max_deposit_period":"172800s","voting_period":"172800s","quorum":"0.334000000000000000","threshold":"0.500000000000000000","veto_threshold":"0.334000000000000000","min_initial_deposit_ratio":"0.000000000000000000","proposal_cancel_ratio":"0.500000000000000000","proposal_cancel_dest":"","expedited_voting_period":"86400s","expedited_threshold":"0.667000000000000000","expedited_min_deposit":[{"denom":"stake","amount":"50000000"}]},"burn_vote_quorum":false,"burn_proposal_deposit_prevote":false,"burn_vote_veto":true}}}`, + `{"voting_params":{"voting_period":"172800s"},"deposit_params":{"min_deposit":[{"denom":"stake","amount":"10000000"}],"max_deposit_period":"172800s"},"tally_params":{"quorum":"0.334000000000000000","threshold":"0.500000000000000000","veto_threshold":"0.334000000000000000"},"params":{"min_deposit":[{"denom":"stake","amount":"10000000"}],"max_deposit_period":"172800s","voting_period":"172800s","quorum":"0.334000000000000000","threshold":"0.500000000000000000","veto_threshold":"0.334000000000000000","min_initial_deposit_ratio":"0.000000000000000000","proposal_cancel_ratio":"0.500000000000000000","proposal_cancel_dest":"","expedited_voting_period":"86400s","expedited_threshold":"0.667000000000000000","expedited_min_deposit":[{"denom":"stake","amount":"50000000"}]},"burn_vote_quorum":false,"burn_proposal_deposit_prevote":false,"burn_vote_veto":true}`, }, { "text output", @@ -35,9 +35,9 @@ deposit_params: - amount: "10000000" denom: stake params: - burn_proposal_deposit_prevote: false - burn_vote_quorum: false - burn_vote_veto: true + burn_proposal_deposit_prevote: false + burn_vote_quorum: false + burn_vote_veto: true expedited_min_deposit: - amount: "50000000" denom: stake From d3f17c5bffe2c99d46acaf3d3fdd8abe28550a7b Mon Sep 17 00:00:00 2001 From: marbar3778 Date: Tue, 28 Feb 2023 17:36:32 +0100 Subject: [PATCH 12/12] fix it --- tests/e2e/gov/query.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/e2e/gov/query.go b/tests/e2e/gov/query.go index 8cdd3e3a28cc..062c93fb044b 100644 --- a/tests/e2e/gov/query.go +++ b/tests/e2e/gov/query.go @@ -23,7 +23,7 @@ func (s *E2ETestSuite) TestCmdParams() { { "json output", []string{fmt.Sprintf("--%s=json", flags.FlagOutput)}, - `{"voting_params":{"voting_period":"172800s"},"deposit_params":{"min_deposit":[{"denom":"stake","amount":"10000000"}],"max_deposit_period":"172800s"},"tally_params":{"quorum":"0.334000000000000000","threshold":"0.500000000000000000","veto_threshold":"0.334000000000000000"},"params":{"min_deposit":[{"denom":"stake","amount":"10000000"}],"max_deposit_period":"172800s","voting_period":"172800s","quorum":"0.334000000000000000","threshold":"0.500000000000000000","veto_threshold":"0.334000000000000000","min_initial_deposit_ratio":"0.000000000000000000","proposal_cancel_ratio":"0.500000000000000000","proposal_cancel_dest":"","expedited_voting_period":"86400s","expedited_threshold":"0.667000000000000000","expedited_min_deposit":[{"denom":"stake","amount":"50000000"}]},"burn_vote_quorum":false,"burn_proposal_deposit_prevote":false,"burn_vote_veto":true}`, + `{"voting_params":{"voting_period":"172800s"},"deposit_params":{"min_deposit":[{"denom":"stake","amount":"10000000"}],"max_deposit_period":"172800s"},"tally_params":{"quorum":"0.334000000000000000","threshold":"0.500000000000000000","veto_threshold":"0.334000000000000000"},"params":{"min_deposit":[{"denom":"stake","amount":"10000000"}],"max_deposit_period":"172800s","voting_period":"172800s","quorum":"0.334000000000000000","threshold":"0.500000000000000000","veto_threshold":"0.334000000000000000","min_initial_deposit_ratio":"0.000000000000000000","proposal_cancel_ratio":"0.500000000000000000","proposal_cancel_dest":"","expedited_voting_period":"86400s","expedited_threshold":"0.667000000000000000","expedited_min_deposit":[{"denom":"stake","amount":"50000000"}],"burn_vote_quorum":false,"burn_proposal_deposit_prevote":false,"burn_vote_veto":true}}`, }, { "text output",